@intlify/vue-i18n-extensions 6.1.0 → 6.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -394,18 +394,21 @@ function generateTranslationCode(context, mode, params, translationSignatures) {
394
394
  return mode === "composition" ? generateComposableCode(context, params, translationSignatures) : generateLegacyCode(context, params);
395
395
  }
396
396
  function generateTranslationCallableSignatures(context, translationSignatures) {
397
- const { prefixIdentifiers, bindingMetadata, inline } = context;
397
+ const baseResolver = (context2, signature) => {
398
+ const { prefixIdentifiers, bindingMetadata, inline } = context2;
399
+ if (inline && signature !== GLOBAL_TRANSLATE_SIGNATURE) {
400
+ return signature;
401
+ }
402
+ const type = shared.hasOwn(bindingMetadata, signature) && bindingMetadata[signature];
403
+ const bindingContext = prefixIdentifiers ? type && type.startsWith("setup") || type === compilerDom.BindingTypes.LITERAL_CONST ? "$setup." : "_ctx." : "";
404
+ return `${bindingContext}${signature}`;
405
+ };
398
406
  return translationSignatures.map((signatureOrResolver) => {
399
407
  if (shared.isFunction(signatureOrResolver)) {
400
- return signatureOrResolver(context);
408
+ return signatureOrResolver(context, baseResolver);
401
409
  }
402
- if (inline && signatureOrResolver !== GLOBAL_TRANSLATE_SIGNATURE) {
403
- return signatureOrResolver;
404
- }
405
- const type = shared.hasOwn(bindingMetadata, signatureOrResolver) && bindingMetadata[signatureOrResolver];
406
- const bindingContext = prefixIdentifiers ? type && type.startsWith("setup") || type === compilerDom.BindingTypes.LITERAL_CONST ? "$setup." : "_ctx." : "";
407
- return `${bindingContext}${signatureOrResolver}`;
408
- }).join(" || ");
410
+ return baseResolver(context, signatureOrResolver);
411
+ }).filter(Boolean).join(" || ");
409
412
  }
410
413
  function generateComposableCode(context, params, translationSignatures) {
411
414
  const baseCode = `(${generateTranslationCallableSignatures(context, translationSignatures)})`;
package/dist/index.d.cts CHANGED
@@ -1,4 +1,4 @@
1
- import { DirectiveTransform, TransformContext } from '@vue/compiler-dom';
1
+ import { TransformContext, DirectiveTransform } from '@vue/compiler-dom';
2
2
  import { I18n, I18nMode } from 'vue-i18n';
3
3
 
4
4
  /**
@@ -7,6 +7,8 @@ import { I18n, I18nMode } from 'vue-i18n';
7
7
  * @remarks
8
8
  * This resolver is used at {@link TransformVTDirectiveOptions | 'translationSignatures' option}
9
9
  *
10
+ * @public
11
+ *
10
12
  * @example
11
13
  * ```js
12
14
  * import { compile } from '@vue/compiler-dom'
@@ -34,7 +36,7 @@ import { I18n, I18nMode } from 'vue-i18n';
34
36
  * })
35
37
  * ```
36
38
  */
37
- type TranslationSignatureResolver = (context: TransformContext) => string;
39
+ type TranslationSignatureResolver = (context: TransformContext, baseResolver: (context: TransformContext, signature: string) => string | undefined) => string | undefined;
38
40
  /**
39
41
  * Transform options for `v-t` custom directive
40
42
  *
@@ -126,4 +128,4 @@ DateTimeFormats extends Record<string, unknown> = {}, // eslint-disable-line @ty
126
128
  NumberFormats extends Record<string, unknown> = {}, // eslint-disable-line @typescript-eslint/ban-types -- TODO: fix this
127
129
  Legacy extends boolean = true>(options?: TransformVTDirectiveOptions<Messages, DateTimeFormats, NumberFormats, Legacy>): DirectiveTransform;
128
130
 
129
- export { type TransformVTDirectiveOptions, transformVTDirective };
131
+ export { type TransformVTDirectiveOptions, type TranslationSignatureResolver, transformVTDirective };
package/dist/index.d.mts CHANGED
@@ -1,4 +1,4 @@
1
- import { DirectiveTransform, TransformContext } from '@vue/compiler-dom';
1
+ import { TransformContext, DirectiveTransform } from '@vue/compiler-dom';
2
2
  import { I18n, I18nMode } from 'vue-i18n';
3
3
 
4
4
  /**
@@ -7,6 +7,8 @@ import { I18n, I18nMode } from 'vue-i18n';
7
7
  * @remarks
8
8
  * This resolver is used at {@link TransformVTDirectiveOptions | 'translationSignatures' option}
9
9
  *
10
+ * @public
11
+ *
10
12
  * @example
11
13
  * ```js
12
14
  * import { compile } from '@vue/compiler-dom'
@@ -34,7 +36,7 @@ import { I18n, I18nMode } from 'vue-i18n';
34
36
  * })
35
37
  * ```
36
38
  */
37
- type TranslationSignatureResolver = (context: TransformContext) => string;
39
+ type TranslationSignatureResolver = (context: TransformContext, baseResolver: (context: TransformContext, signature: string) => string | undefined) => string | undefined;
38
40
  /**
39
41
  * Transform options for `v-t` custom directive
40
42
  *
@@ -126,4 +128,4 @@ DateTimeFormats extends Record<string, unknown> = {}, // eslint-disable-line @ty
126
128
  NumberFormats extends Record<string, unknown> = {}, // eslint-disable-line @typescript-eslint/ban-types -- TODO: fix this
127
129
  Legacy extends boolean = true>(options?: TransformVTDirectiveOptions<Messages, DateTimeFormats, NumberFormats, Legacy>): DirectiveTransform;
128
130
 
129
- export { type TransformVTDirectiveOptions, transformVTDirective };
131
+ export { type TransformVTDirectiveOptions, type TranslationSignatureResolver, transformVTDirective };
package/dist/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { DirectiveTransform, TransformContext } from '@vue/compiler-dom';
1
+ import { TransformContext, DirectiveTransform } from '@vue/compiler-dom';
2
2
  import { I18n, I18nMode } from 'vue-i18n';
3
3
 
4
4
  /**
@@ -7,6 +7,8 @@ import { I18n, I18nMode } from 'vue-i18n';
7
7
  * @remarks
8
8
  * This resolver is used at {@link TransformVTDirectiveOptions | 'translationSignatures' option}
9
9
  *
10
+ * @public
11
+ *
10
12
  * @example
11
13
  * ```js
12
14
  * import { compile } from '@vue/compiler-dom'
@@ -34,7 +36,7 @@ import { I18n, I18nMode } from 'vue-i18n';
34
36
  * })
35
37
  * ```
36
38
  */
37
- type TranslationSignatureResolver = (context: TransformContext) => string;
39
+ type TranslationSignatureResolver = (context: TransformContext, baseResolver: (context: TransformContext, signature: string) => string | undefined) => string | undefined;
38
40
  /**
39
41
  * Transform options for `v-t` custom directive
40
42
  *
@@ -126,4 +128,4 @@ DateTimeFormats extends Record<string, unknown> = {}, // eslint-disable-line @ty
126
128
  NumberFormats extends Record<string, unknown> = {}, // eslint-disable-line @typescript-eslint/ban-types -- TODO: fix this
127
129
  Legacy extends boolean = true>(options?: TransformVTDirectiveOptions<Messages, DateTimeFormats, NumberFormats, Legacy>): DirectiveTransform;
128
130
 
129
- export { type TransformVTDirectiveOptions, transformVTDirective };
131
+ export { type TransformVTDirectiveOptions, type TranslationSignatureResolver, transformVTDirective };
package/dist/index.mjs CHANGED
@@ -392,18 +392,21 @@ function generateTranslationCode(context, mode, params, translationSignatures) {
392
392
  return mode === "composition" ? generateComposableCode(context, params, translationSignatures) : generateLegacyCode(context, params);
393
393
  }
394
394
  function generateTranslationCallableSignatures(context, translationSignatures) {
395
- const { prefixIdentifiers, bindingMetadata, inline } = context;
395
+ const baseResolver = (context2, signature) => {
396
+ const { prefixIdentifiers, bindingMetadata, inline } = context2;
397
+ if (inline && signature !== GLOBAL_TRANSLATE_SIGNATURE) {
398
+ return signature;
399
+ }
400
+ const type = hasOwn(bindingMetadata, signature) && bindingMetadata[signature];
401
+ const bindingContext = prefixIdentifiers ? type && type.startsWith("setup") || type === BindingTypes.LITERAL_CONST ? "$setup." : "_ctx." : "";
402
+ return `${bindingContext}${signature}`;
403
+ };
396
404
  return translationSignatures.map((signatureOrResolver) => {
397
405
  if (isFunction(signatureOrResolver)) {
398
- return signatureOrResolver(context);
406
+ return signatureOrResolver(context, baseResolver);
399
407
  }
400
- if (inline && signatureOrResolver !== GLOBAL_TRANSLATE_SIGNATURE) {
401
- return signatureOrResolver;
402
- }
403
- const type = hasOwn(bindingMetadata, signatureOrResolver) && bindingMetadata[signatureOrResolver];
404
- const bindingContext = prefixIdentifiers ? type && type.startsWith("setup") || type === BindingTypes.LITERAL_CONST ? "$setup." : "_ctx." : "";
405
- return `${bindingContext}${signatureOrResolver}`;
406
- }).join(" || ");
408
+ return baseResolver(context, signatureOrResolver);
409
+ }).filter(Boolean).join(" || ");
407
410
  }
408
411
  function generateComposableCode(context, params, translationSignatures) {
409
412
  const baseCode = `(${generateTranslationCallableSignatures(context, translationSignatures)})`;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@intlify/vue-i18n-extensions",
3
3
  "description": "vue-i18n extensions",
4
- "version": "6.1.0",
4
+ "version": "6.2.0",
5
5
  "author": {
6
6
  "name": "kazuya kawaguchi",
7
7
  "email": "kawakazu80@gmail.com"