From b1880a7db77887abd7ae9dda19f6c8b0e1a3530c Mon Sep 17 00:00:00 2001 From: vvakame Date: Mon, 28 Mar 2016 23:42:45 +0900 Subject: [PATCH] improve i18next-sprintf-postprocessor/i18next-sprintf-postprocessor.d.ts --- .../i18next-sprintf-postprocessor-tests.ts | 21 +++++++++--- .../i18next-sprintf-postprocessor.d.ts | 33 ++++++++++--------- i18next/i18next-2.0.17.d.ts | 3 -- 3 files changed, 35 insertions(+), 22 deletions(-) diff --git a/i18next-sprintf-postprocessor/i18next-sprintf-postprocessor-tests.ts b/i18next-sprintf-postprocessor/i18next-sprintf-postprocessor-tests.ts index b2bdf3b8d..36a948d62 100644 --- a/i18next-sprintf-postprocessor/i18next-sprintf-postprocessor-tests.ts +++ b/i18next-sprintf-postprocessor/i18next-sprintf-postprocessor-tests.ts @@ -1,10 +1,23 @@ -/// +/// import * as i18next from "i18next"; -import sprintf from "i18next-sprintf-postprocessor"; +import * as sprintfA from "i18next-sprintf-postprocessor"; +import sprintfB from "i18next-sprintf-postprocessor/dist/commonjs"; function initTest() { const i18nextOptions = {}; - i18next.use(sprintf).init(i18nextOptions); - i18next.init({ overloadTranslationOptionHandler: sprintf.overloadTranslationOptionHandler }); + i18next + .use(sprintfA) + .use(sprintfB) + .init(i18nextOptions); + i18next + .init({ overloadTranslationOptionHandler: sprintfA.overloadTranslationOptionHandler }); + i18next + .init({ overloadTranslationOptionHandler: sprintfB.overloadTranslationOptionHandler }); +} + +function tTest() { + i18next.t('interpolationTest1', 'a', 'b', 'c', 'd'); + i18next.t('interpolationTest3', 'z'); + i18next.t('interpolationTest4', 0); } diff --git a/i18next-sprintf-postprocessor/i18next-sprintf-postprocessor.d.ts b/i18next-sprintf-postprocessor/i18next-sprintf-postprocessor.d.ts index a069e45ff..1c0cf25ab 100644 --- a/i18next-sprintf-postprocessor/i18next-sprintf-postprocessor.d.ts +++ b/i18next-sprintf-postprocessor/i18next-sprintf-postprocessor.d.ts @@ -3,29 +3,32 @@ // Definitions by: Cyril Schumacher // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped -/// -/// +/// declare namespace I18next { - interface I18nextOptions extends i18nextSprintfPostProcessor.I18nextOptions {} -} - -declare namespace i18nextSprintfPostProcessor { - interface I18nextOptions { - overloadTranslationOptionHandler?(args: Array): void; - process?(value: any, key: string, options: Object): void; - } + interface I18n { + t(key: string, ...args: any[]): string; + } } declare module "i18next-sprintf-postprocessor" { import i18next = require("i18next"); - interface i18nextSprintfPostProcessor { - (): any; - process(value: any, key: string, options: Object): void; - overloadTranslationOptionHandler(args: Array): void; + interface I18nextSprintfPostProcessor { + name: string; + type: string; + process(value: any, key: string, options: any): any; + overloadTranslationOptionHandler(args: string[]): { + postProcess: "sprintf", + sprintf: string[] + }; } - var sprintf: i18nextSprintfPostProcessor; + var sprintf: I18nextSprintfPostProcessor; + export = sprintf; +} + +declare module "i18next-sprintf-postprocessor/dist/commonjs" { + import sprintf = require("i18next-sprintf-postprocessor"); export default sprintf; } diff --git a/i18next/i18next-2.0.17.d.ts b/i18next/i18next-2.0.17.d.ts index c8f803f05..61cff428a 100644 --- a/i18next/i18next-2.0.17.d.ts +++ b/i18next/i18next-2.0.17.d.ts @@ -5,10 +5,7 @@ // Sources: https://github.com/jamuhl/i18next/ -/// /// -/// -/// declare namespace I18next { export interface I18nextStatic {}