vue-intlayer 8.11.1 → 8.11.2

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.
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./installIntlayerMarkdown.cjs");let t=require("vue");var n=async(e,{components:t,wrapper:n,forceBlock:r,forceInline:i,preserveFrontmatter:a,tagfilter:o}={})=>{let s={components:t,forceBlock:r,forceInline:i,wrapper:n,forceWrapper:!!n,preserveFrontmatter:a,tagfilter:o},{compileMarkdown:c}=await Promise.resolve().then(()=>require("./compiler.cjs"));return c(e,s)},r=({components:t,wrapper:r,forceBlock:i,forceInline:a,preserveFrontmatter:o,tagfilter:s}={})=>{try{let{renderMarkdown:n,components:c}=e.useMarkdown();return e=>n(e,{forceBlock:i,forceInline:a,preserveFrontmatter:o,tagfilter:s},{...c??{},...t??{}},r)}catch{return e=>n(e,{components:t,wrapper:r,forceBlock:i,forceInline:a,preserveFrontmatter:o,tagfilter:s})}},i=(0,t.defineComponent)({name:`Markdown`,props:{content:{type:String,default:``},components:{type:Object,default:void 0},wrapper:{type:[String,Object,Function],default:void 0},forceBlock:{type:Boolean,default:void 0},forceInline:{type:Boolean,default:void 0},preserveFrontmatter:{type:Boolean,default:void 0},tagfilter:{type:Boolean,default:void 0},renderMarkdown:{type:Function,default:void 0}},setup(e){let{renderMarkdown:t}=e;if(t)return()=>t(e.content,{forceBlock:e.forceBlock,forceInline:e.forceInline,preserveFrontmatter:e.preserveFrontmatter,tagfilter:e.tagfilter},e.components,e.wrapper);try{let t=r({components:e.components,wrapper:e.wrapper,forceBlock:e.forceBlock,forceInline:e.forceInline,preserveFrontmatter:e.preserveFrontmatter,tagfilter:e.tagfilter});return()=>t(e.content)}catch{return()=>n(e.content,{components:e.components,wrapper:e.wrapper,forceBlock:e.forceBlock,forceInline:e.forceInline,preserveFrontmatter:e.preserveFrontmatter,tagfilter:e.tagfilter})}}});exports.MarkdownRenderer=i,exports.renderMarkdown=n,exports.useMarkdownRenderer=r;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./installIntlayerMarkdown.cjs");let t=require("vue");var n=async(e,{components:t,wrapper:n,forceBlock:r,forceInline:i,preserveFrontmatter:a,tagfilter:o}={})=>{let s={components:t,forceBlock:r,forceInline:i,wrapper:n,forceWrapper:!!n,preserveFrontmatter:a,tagfilter:o},{compileMarkdown:c}=await Promise.resolve().then(()=>require("./compiler.cjs"));return c(e,s)},r=({components:t,wrapper:r,forceBlock:i,forceInline:a,preserveFrontmatter:o,tagfilter:s}={})=>{try{let{renderMarkdown:n,components:c}=e.useMarkdown();return e=>n(e,{forceBlock:i,forceInline:a,preserveFrontmatter:o,tagfilter:s},{...c??{},...t??{}},r)}catch{return e=>n(e,{components:t,wrapper:r,forceBlock:i,forceInline:a,preserveFrontmatter:o,tagfilter:s})}},i=(0,t.defineComponent)({name:`Markdown`,props:{content:{type:[String,Object],default:``},components:{type:Object,default:void 0},wrapper:{type:[String,Object,Function],default:void 0},forceBlock:{type:Boolean,default:void 0},forceInline:{type:Boolean,default:void 0},preserveFrontmatter:{type:Boolean,default:void 0},tagfilter:{type:Boolean,default:void 0},renderMarkdown:{type:Function,default:void 0}},setup(e){let{renderMarkdown:t}=e;if(t)return()=>t(e.content,{forceBlock:e.forceBlock,forceInline:e.forceInline,preserveFrontmatter:e.preserveFrontmatter,tagfilter:e.tagfilter},e.components,e.wrapper);try{let t=r({components:e.components,wrapper:e.wrapper,forceBlock:e.forceBlock,forceInline:e.forceInline,preserveFrontmatter:e.preserveFrontmatter,tagfilter:e.tagfilter});return()=>t(e.content)}catch{return()=>n(e.content,{components:e.components,wrapper:e.wrapper,forceBlock:e.forceBlock,forceInline:e.forceInline,preserveFrontmatter:e.preserveFrontmatter,tagfilter:e.tagfilter})}}});exports.MarkdownRenderer=i,exports.renderMarkdown=n,exports.useMarkdownRenderer=r;
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./runtime.cjs");let t=require("@intlayer/core/markdown");var n=(n=``,r={})=>(0,t.compileWithOptions)(n,e.default,r),r=n,i=n;exports.RuleType=t.RuleType,exports.compile=i,exports.compileMarkdown=n,exports.compiler=r,exports.sanitizer=t.sanitizer,exports.slugify=t.slugify;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./runtime.cjs");let t=require("@intlayer/core/markdown");var n=(n=``,r={})=>{let{components:i,namedCodesToUnicode:a,sanitizer:o,slugify:s,...c}=r;return(0,t.parseMarkdown)(n,{runtime:e.default,components:i,namedCodesToUnicode:a,sanitizer:o,slugify:s},c)},r=(n=``,r={})=>{if(typeof n==`string`)return(0,t.compileWithOptions)(n,e.default,r);let{components:i,namedCodesToUnicode:a,sanitizer:o,slugify:s,...c}=r;return(0,t.renderMarkdownAst)(n,{runtime:e.default,components:i,namedCodesToUnicode:a,sanitizer:o,slugify:s},c)},i=r,a=r;exports.RuleType=t.RuleType,exports.compile=a,exports.compileMarkdown=r,exports.compiler=i,exports.parseMarkdown=n,exports.sanitizer=t.sanitizer,exports.slugify=t.slugify;
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./installIntlayerMarkdown.cjs"),t=require("./MarkdownRenderer.cjs");exports.MarkdownRenderer=t.MarkdownRenderer,exports.installIntlayerMarkdown=e.installIntlayerMarkdown,exports.intlayerMarkdown=e.intlayerMarkdown,exports.renderMarkdown=t.renderMarkdown,exports.useMarkdown=e.useMarkdown,exports.useMarkdownRenderer=t.useMarkdownRenderer;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./compiler.cjs"),t=require("./installIntlayerMarkdown.cjs"),n=require("./MarkdownRenderer.cjs");let r=require("@intlayer/core/markdown");exports.MarkdownRenderer=n.MarkdownRenderer,exports.RuleType=r.RuleType,exports.compile=e.compile,exports.compileMarkdown=e.compileMarkdown,exports.compiler=e.compiler,exports.installIntlayerMarkdown=t.installIntlayerMarkdown,exports.intlayerMarkdown=t.intlayerMarkdown,exports.parseMarkdown=e.parseMarkdown,exports.renderMarkdown=n.renderMarkdown,exports.sanitizer=r.sanitizer,exports.slugify=r.slugify,exports.useMarkdown=t.useMarkdown,exports.useMarkdownRenderer=n.useMarkdownRenderer;
@@ -38,7 +38,7 @@ var n = async (e, { components: t, wrapper: n, forceBlock: r, forceInline: i, pr
38
38
  name: "Markdown",
39
39
  props: {
40
40
  content: {
41
- type: String,
41
+ type: [String, Object],
42
42
  default: ""
43
43
  },
44
44
  components: {
@@ -1,6 +1,25 @@
1
1
  import e from "./runtime.mjs";
2
- import { RuleType as t, compileWithOptions as n, sanitizer as r, slugify as i } from "@intlayer/core/markdown";
2
+ import { RuleType as t, compileWithOptions as n, parseMarkdown as r, renderMarkdownAst as i, sanitizer as a, slugify as o } from "@intlayer/core/markdown";
3
3
  //#region src/markdown/compiler.ts
4
- var a = (t = "", r = {}) => n(t, e, r), o = a, s = a;
4
+ var s = (t = "", n = {}) => {
5
+ let { components: i, namedCodesToUnicode: a, sanitizer: o, slugify: s, ...c } = n;
6
+ return r(t, {
7
+ runtime: e,
8
+ components: i,
9
+ namedCodesToUnicode: a,
10
+ sanitizer: o,
11
+ slugify: s
12
+ }, c);
13
+ }, c = (t = "", r = {}) => {
14
+ if (typeof t == "string") return n(t, e, r);
15
+ let { components: a, namedCodesToUnicode: o, sanitizer: s, slugify: c, ...l } = r;
16
+ return i(t, {
17
+ runtime: e,
18
+ components: a,
19
+ namedCodesToUnicode: o,
20
+ sanitizer: s,
21
+ slugify: c
22
+ }, l);
23
+ }, l = c, u = c;
5
24
  //#endregion
6
- export { t as RuleType, s as compile, a as compileMarkdown, o as compiler, r as sanitizer, i as slugify };
25
+ export { t as RuleType, u as compile, c as compileMarkdown, l as compiler, s as parseMarkdown, a as sanitizer, o as slugify };
@@ -1,3 +1,4 @@
1
- import { installIntlayerMarkdown as e, intlayerMarkdown as t, useMarkdown as n } from "./installIntlayerMarkdown.mjs";
2
- import { MarkdownRenderer as r, renderMarkdown as i, useMarkdownRenderer as a } from "./MarkdownRenderer.mjs";
3
- export { r as MarkdownRenderer, e as installIntlayerMarkdown, t as intlayerMarkdown, i as renderMarkdown, n as useMarkdown, a as useMarkdownRenderer };
1
+ import { RuleType as e, compile as t, compileMarkdown as n, compiler as r, parseMarkdown as i, sanitizer as a, slugify as o } from "./compiler.mjs";
2
+ import { installIntlayerMarkdown as s, intlayerMarkdown as c, useMarkdown as l } from "./installIntlayerMarkdown.mjs";
3
+ import { MarkdownRenderer as u, renderMarkdown as d, useMarkdownRenderer as f } from "./MarkdownRenderer.mjs";
4
+ export { u as MarkdownRenderer, e as RuleType, t as compile, n as compileMarkdown, r as compiler, s as installIntlayerMarkdown, c as intlayerMarkdown, i as parseMarkdown, d as renderMarkdown, a as sanitizer, o as slugify, l as useMarkdown, f as useMarkdownRenderer };
@@ -17,4 +17,4 @@ export declare const toComponent: (getter: () => any) => import('vue').Raw<impor
17
17
  * - Passes through other IntlayerNode properties (render, toString, etc.)
18
18
  */
19
19
  export declare const createIntlayerLeafProxy: (leafRef: ComputedRef<any>) => any;
20
- export declare const useDictionary: <T extends Dictionary, L extends LocalesValues = DeclaredLocales>(dictionary: MaybeRefOrGetter<T>, locale?: MaybeRefOrGetter<L>) => DeepTransformContent<T["content"], L>;
20
+ export declare const useDictionary: <const T extends Dictionary, const L extends LocalesValues = DeclaredLocales>(dictionary: MaybeRefOrGetter<T>, locale?: MaybeRefOrGetter<L>) => DeepTransformContent<T["content"], L>;
@@ -6,4 +6,4 @@ import { MaybeRefOrGetter } from 'vue';
6
6
  *
7
7
  * If the locale is not provided, it will use the locale from the client context
8
8
  */
9
- export declare const useDictionaryAsync: <T extends Dictionary>(dictionaryPromise: StrictModeLocaleMap<() => Promise<T>>, locale?: MaybeRefOrGetter<LocalesValues>) => Promise<any>;
9
+ export declare const useDictionaryAsync: <const T extends Dictionary>(dictionaryPromise: StrictModeLocaleMap<() => Promise<T>>, locale?: MaybeRefOrGetter<LocalesValues>) => Promise<any>;
@@ -6,4 +6,4 @@ import { MaybeRefOrGetter } from 'vue';
6
6
  *
7
7
  * If the locale is not provided, it will use the locale from the client context
8
8
  */
9
- export declare const useDictionaryDynamic: <T extends Dictionary, K extends DictionaryKeys>(dictionaryPromise: StrictModeLocaleMap<() => Promise<T>>, _key: K, locale?: MaybeRefOrGetter<LocalesValues>) => Promise<any>;
9
+ export declare const useDictionaryDynamic: <const T extends Dictionary, const K extends DictionaryKeys>(dictionaryPromise: StrictModeLocaleMap<() => Promise<T>>, _key: K, locale?: MaybeRefOrGetter<LocalesValues>) => Promise<any>;
@@ -24,4 +24,4 @@ import { DeepTransformContent } from '../plugins';
24
24
  * </template>
25
25
  * ```
26
26
  */
27
- export declare const useIntlayer: <T extends DictionaryKeys>(key: T, locale?: MaybeRefOrGetter<LocalesValues | null | undefined>) => DeepTransformContent<DictionaryRegistryContent<T>>;
27
+ export declare const useIntlayer: <const T extends DictionaryKeys>(key: T, locale?: MaybeRefOrGetter<LocalesValues | null | undefined>) => DeepTransformContent<DictionaryRegistryContent<T>>;
@@ -1,4 +1,4 @@
1
1
  import { Dictionary } from '@intlayer/types/dictionary';
2
2
  import { DeclaredLocales, LocalesValues } from '@intlayer/types/module_augmentation';
3
3
  import { DeepTransformContent } from './plugins';
4
- export declare const getDictionary: <T extends Dictionary, L extends LocalesValues = DeclaredLocales>(dictionary: T, locale?: L) => DeepTransformContent<T["content"], L>;
4
+ export declare const getDictionary: <const T extends Dictionary, const L extends LocalesValues = DeclaredLocales>(dictionary: T, locale?: L) => DeepTransformContent<T["content"], L>;
@@ -1,3 +1,3 @@
1
1
  import { DeclaredLocales, DictionaryKeys, DictionaryRegistryContent, LocalesValues } from '@intlayer/types/module_augmentation';
2
2
  import { DeepTransformContent } from './plugins';
3
- export declare const getIntlayer: <T extends DictionaryKeys, L extends LocalesValues = DeclaredLocales>(key: T, locale?: L) => DeepTransformContent<DictionaryRegistryContent<T>, L>;
3
+ export declare const getIntlayer: <const T extends DictionaryKeys, const L extends LocalesValues = DeclaredLocales>(key: T, locale?: L) => DeepTransformContent<DictionaryRegistryContent<T>, L>;
@@ -1,5 +1,6 @@
1
1
  import { Component, PropType, VNodeChild } from 'vue';
2
2
  import { HTMLComponents } from '../html/types';
3
+ import { ParsedMarkdown } from './compiler';
3
4
  import { MarkdownPluginOptions, RenderMarkdownFunction } from './installIntlayerMarkdown';
4
5
  /**
5
6
  * Props for rendering markdown content.
@@ -16,21 +17,21 @@ export type RenderMarkdownProps = MarkdownPluginOptions & {
16
17
  * This function does not use context from MarkdownProvider. Use `useMarkdownRenderer`
17
18
  * hook if you want to leverage provider context.
18
19
  */
19
- export declare const renderMarkdown: (content: string, { components, wrapper, forceBlock, forceInline, preserveFrontmatter, tagfilter, }?: RenderMarkdownProps) => Promise<VNodeChild>;
20
+ export declare const renderMarkdown: (content: string | ParsedMarkdown, { components, wrapper, forceBlock, forceInline, preserveFrontmatter, tagfilter, }?: RenderMarkdownProps) => Promise<VNodeChild>;
20
21
  /**
21
22
  * Hook that returns a function to render markdown content.
22
23
  *
23
24
  * This hook considers the configuration from the `MarkdownProvider` context if available,
24
25
  * falling back to the provided props or default behavior.
25
26
  */
26
- export declare const useMarkdownRenderer: ({ components, wrapper, forceBlock, forceInline, preserveFrontmatter, tagfilter, }?: RenderMarkdownProps) => (content: string) => VNodeChild | Promise<VNodeChild>;
27
+ export declare const useMarkdownRenderer: ({ components, wrapper, forceBlock, forceInline, preserveFrontmatter, tagfilter, }?: RenderMarkdownProps) => (content: string | ParsedMarkdown) => VNodeChild | Promise<VNodeChild>;
27
28
  export type MarkdownRendererProps = RenderMarkdownProps & {
28
- content?: string;
29
+ content?: string | ParsedMarkdown;
29
30
  renderMarkdown?: RenderMarkdownFunction;
30
31
  };
31
32
  export declare const MarkdownRenderer: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
32
33
  content: {
33
- type: StringConstructor;
34
+ type: PropType<string | ParsedMarkdown>;
34
35
  default: string;
35
36
  };
36
37
  components: {
@@ -63,7 +64,7 @@ export declare const MarkdownRenderer: import('vue').DefineComponent<import('vue
63
64
  };
64
65
  }>, () => VNodeChild | Promise<VNodeChild>, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
65
66
  content: {
66
- type: StringConstructor;
67
+ type: PropType<string | ParsedMarkdown>;
67
68
  default: string;
68
69
  };
69
70
  components: {
@@ -401,7 +402,7 @@ export declare const MarkdownRenderer: import('vue').DefineComponent<import('vue
401
402
  children?: any;
402
403
  }) => import('vue').VNode | import('vue').VNode[];
403
404
  };
404
- content: string;
405
+ content: string | ParsedMarkdown;
405
406
  forceBlock: boolean;
406
407
  forceInline: boolean;
407
408
  wrapper: string | Component;
@@ -1,10 +1,12 @@
1
- import { CompileOptions, sanitizer as defaultSanitizer, slugify as defaultSlugify, RuleType } from '@intlayer/core/markdown';
1
+ import { CompileOptions, sanitizer as defaultSanitizer, slugify as defaultSlugify, ParsedMarkdown, RuleType } from '@intlayer/core/markdown';
2
2
  export { defaultSanitizer as sanitizer, defaultSlugify as slugify, RuleType };
3
3
  export type MarkdownCompilerOptions = CompileOptions;
4
4
  /**
5
5
  * Compile markdown to Vue VNodes.
6
6
  * This is the primary export - use this for new code.
7
7
  */
8
- export declare const compileMarkdown: (markdown?: string, options?: MarkdownCompilerOptions) => unknown;
9
- export declare const compiler: (markdown?: string, options?: MarkdownCompilerOptions) => unknown;
10
- export declare const compile: (markdown?: string, options?: MarkdownCompilerOptions) => unknown;
8
+ export type { ParsedMarkdown };
9
+ export declare const parseMarkdown: (markdown?: string, options?: MarkdownCompilerOptions) => ParsedMarkdown;
10
+ export declare const compileMarkdown: (input?: string | ParsedMarkdown, options?: MarkdownCompilerOptions) => unknown;
11
+ export declare const compiler: (input?: string | ParsedMarkdown, options?: MarkdownCompilerOptions) => unknown;
12
+ export declare const compile: (input?: string | ParsedMarkdown, options?: MarkdownCompilerOptions) => unknown;
@@ -1,2 +1,3 @@
1
+ export * from './compiler';
1
2
  export { type IntlayerMarkdownPluginOptions, type IntlayerMarkdownProvider, installIntlayerMarkdown, intlayerMarkdown, type MarkdownProviderOptions, type RenderMarkdownFunction, useMarkdown, } from './installIntlayerMarkdown';
2
3
  export { MarkdownRenderer, type MarkdownRendererProps, type RenderMarkdownProps, renderMarkdown, useMarkdownRenderer, } from './MarkdownRenderer';
@@ -1,5 +1,6 @@
1
1
  import { App, Component, VNodeChild } from 'vue';
2
2
  import { HTMLComponents } from '../html/types';
3
+ import { ParsedMarkdown } from './compiler';
3
4
  export declare const INTLAYER_MARKDOWN_SYMBOL: unique symbol;
4
5
  export type MarkdownProviderOptions = {
5
6
  /** Forces the compiler to always output content with a block-level wrapper. */
@@ -15,7 +16,7 @@ export type RenderMarkdownOptions = MarkdownProviderOptions & {
15
16
  components?: HTMLComponents<'permissive', {}>;
16
17
  wrapper?: Component | string;
17
18
  };
18
- export type RenderMarkdownFunction = (markdown: string, options?: MarkdownProviderOptions, components?: HTMLComponents<'permissive', {}>, wrapper?: Component | string) => VNodeChild | Promise<VNodeChild>;
19
+ export type RenderMarkdownFunction = (markdown: string | ParsedMarkdown, options?: MarkdownProviderOptions, components?: HTMLComponents<'permissive', {}>, wrapper?: Component | string) => VNodeChild | Promise<VNodeChild>;
19
20
  export type IntlayerMarkdownProvider = {
20
21
  components?: HTMLComponents<'permissive', {}>;
21
22
  renderMarkdown: RenderMarkdownFunction;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vue-intlayer",
3
- "version": "8.11.1",
3
+ "version": "8.11.2",
4
4
  "private": false,
5
5
  "description": "Easily internationalize i18n your Vue applications with type-safe multilingual content management.",
6
6
  "keywords": [
@@ -102,11 +102,11 @@
102
102
  "typecheck": "vue-tsc --noEmit --project tsconfig.types.json"
103
103
  },
104
104
  "dependencies": {
105
- "@intlayer/api": "8.11.1",
106
- "@intlayer/config": "8.11.1",
107
- "@intlayer/core": "8.11.1",
108
- "@intlayer/editor": "8.11.1",
109
- "@intlayer/types": "8.11.1"
105
+ "@intlayer/api": "8.11.2",
106
+ "@intlayer/config": "8.11.2",
107
+ "@intlayer/core": "8.11.2",
108
+ "@intlayer/editor": "8.11.2",
109
+ "@intlayer/types": "8.11.2"
110
110
  },
111
111
  "devDependencies": {
112
112
  "@types/node": "25.9.1",
@@ -117,7 +117,7 @@
117
117
  "ajv": "8.18.0",
118
118
  "fast-glob": "3.3.3",
119
119
  "rimraf": "6.1.3",
120
- "tsdown": "0.22.00",
120
+ "tsdown": "0.22.1",
121
121
  "typescript": "6.0.3",
122
122
  "vite": "8.0.14",
123
123
  "vite-plugin-dts": "5.0.1",
@@ -125,7 +125,7 @@
125
125
  "vue-tsc": "3.1.8"
126
126
  },
127
127
  "peerDependencies": {
128
- "intlayer": "8.11.1",
128
+ "intlayer": "8.11.2",
129
129
  "vue": ">=3.0.0"
130
130
  },
131
131
  "peerDependenciesMeta": {