svelte-intlayer 8.4.10 → 8.5.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/html/context.d.ts +1 -0
- package/dist/html/context.js +1 -0
- package/dist/html/index.d.ts +2 -2
- package/dist/html/index.js +3 -3
- package/dist/index.d.ts +0 -5
- package/dist/index.js +0 -5
- package/dist/markdown/MarkdownProvider.svelte +5 -5
- package/dist/markdown/MarkdownProvider.svelte.d.ts +3 -3
- package/dist/markdown/MarkdownRenderer.svelte +3 -1
- package/dist/markdown/context.d.ts +3 -2
- package/dist/markdown/context.js +1 -1
- package/dist/markdown/index.d.ts +5 -6
- package/dist/markdown/index.js +5 -8
- package/dist/plugins.js +19 -6
- package/package.json +12 -7
package/dist/html/context.d.ts
CHANGED
|
@@ -6,4 +6,5 @@ export type HTMLContextValue = {
|
|
|
6
6
|
renderHTML: (html: string, overrides?: HTMLComponents<'permissive', {}> | RenderHTMLOptions) => string;
|
|
7
7
|
};
|
|
8
8
|
export declare const setHTMLContext: (value: HTMLContextValue) => void;
|
|
9
|
+
export { setHTMLContext as setIntlayerHTML };
|
|
9
10
|
export declare const getHTMLContext: () => HTMLContextValue;
|
package/dist/html/context.js
CHANGED
|
@@ -3,6 +3,7 @@ const INTLAYER_HTML_CONTEXT_KEY = Symbol('intlayer-html-context');
|
|
|
3
3
|
export const setHTMLContext = (value) => {
|
|
4
4
|
setContext(INTLAYER_HTML_CONTEXT_KEY, value);
|
|
5
5
|
};
|
|
6
|
+
export { setHTMLContext as setIntlayerHTML };
|
|
6
7
|
export const getHTMLContext = () => {
|
|
7
8
|
const context = getContext(INTLAYER_HTML_CONTEXT_KEY);
|
|
8
9
|
return (context || {
|
package/dist/html/index.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
|
|
1
|
+
import { type RenderHTMLOptions } from './context';
|
|
2
|
+
export { getHTMLContext, type HTMLContext, type RenderHTMLOptions, setHTMLContext, setHTMLContext as setIntlayerHTML, } from './context';
|
|
2
3
|
export { default as HTMLProvider } from './HTMLProvider.svelte';
|
|
3
4
|
export { default as HTMLRenderer } from './HTMLRenderer.svelte';
|
|
4
|
-
import { type RenderHTMLOptions } from './context';
|
|
5
5
|
export type RenderHTMLProps = RenderHTMLOptions;
|
|
6
6
|
export declare const renderHTML: (html: string, options?: RenderHTMLProps) => any;
|
|
7
7
|
export declare const useHTMLRenderer: (options?: RenderHTMLProps) => (html: string) => string;
|
package/dist/html/index.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
export * from './context';
|
|
2
|
-
export { default as HTMLProvider } from './HTMLProvider.svelte';
|
|
3
|
-
export { default as HTMLRenderer } from './HTMLRenderer.svelte';
|
|
4
1
|
import { getHTML } from '@intlayer/core/interpreter';
|
|
5
2
|
import { getHTMLContext } from './context';
|
|
3
|
+
export { getHTMLContext, setHTMLContext, setHTMLContext as setIntlayerHTML, } from './context';
|
|
4
|
+
export { default as HTMLProvider } from './HTMLProvider.svelte';
|
|
5
|
+
export { default as HTMLRenderer } from './HTMLRenderer.svelte';
|
|
6
6
|
export const renderHTML = (html, options = {}) => {
|
|
7
7
|
return getHTML(html, (options.components || {}));
|
|
8
8
|
};
|
package/dist/index.d.ts
CHANGED
|
@@ -7,9 +7,4 @@ declare module '@intlayer/core/interpreter' {
|
|
|
7
7
|
export * from './client';
|
|
8
8
|
export * from './getDictionary';
|
|
9
9
|
export * from './getIntlayer';
|
|
10
|
-
export * from './html';
|
|
11
|
-
export * from './markdown';
|
|
12
10
|
export * from './plugins';
|
|
13
|
-
import { setHTMLContext } from './html';
|
|
14
|
-
import { setMarkdownContext } from './markdown';
|
|
15
|
-
export { setHTMLContext as setIntlayerHTML, setMarkdownContext as setIntlayerMarkdown, };
|
package/dist/index.js
CHANGED
|
@@ -1,9 +1,4 @@
|
|
|
1
1
|
export * from './client';
|
|
2
2
|
export * from './getDictionary';
|
|
3
3
|
export * from './getIntlayer';
|
|
4
|
-
export * from './html';
|
|
5
|
-
export * from './markdown';
|
|
6
4
|
export * from './plugins';
|
|
7
|
-
import { setHTMLContext } from './html';
|
|
8
|
-
import { setMarkdownContext } from './markdown';
|
|
9
|
-
export { setHTMLContext as setIntlayerHTML, setMarkdownContext as setIntlayerMarkdown, };
|
|
@@ -5,7 +5,7 @@ import { setMarkdownContext } from './context';
|
|
|
5
5
|
|
|
6
6
|
export const components: HTMLComponents<'permissive', {}> | undefined =
|
|
7
7
|
undefined;
|
|
8
|
-
export const wrapper:
|
|
8
|
+
export const wrapper: string | import('svelte').ComponentType | undefined = undefined;
|
|
9
9
|
export const forceBlock: boolean | undefined = undefined;
|
|
10
10
|
export const forceInline: boolean | undefined = undefined;
|
|
11
11
|
export const preserveFrontmatter: boolean | undefined = undefined;
|
|
@@ -16,8 +16,8 @@ let customRenderMarkdown:
|
|
|
16
16
|
markdown: string,
|
|
17
17
|
options?: any,
|
|
18
18
|
components?: HTMLComponents<'permissive', {}>,
|
|
19
|
-
wrapper?:
|
|
20
|
-
) => string)
|
|
19
|
+
wrapper?: string | import('svelte').ComponentType
|
|
20
|
+
) => string | Promise<string>)
|
|
21
21
|
| undefined;
|
|
22
22
|
export { customRenderMarkdown as renderMarkdown };
|
|
23
23
|
|
|
@@ -39,7 +39,7 @@ const internalRenderMarkdown = (
|
|
|
39
39
|
tagfilter?: boolean;
|
|
40
40
|
},
|
|
41
41
|
componentsOverride?: HTMLComponents<'permissive', {}>,
|
|
42
|
-
wrapperOverride?:
|
|
42
|
+
wrapperOverride?: string | import('svelte').ComponentType
|
|
43
43
|
) => {
|
|
44
44
|
if (typeof customRenderMarkdown === 'function') {
|
|
45
45
|
return customRenderMarkdown(
|
|
@@ -56,7 +56,7 @@ const internalRenderMarkdown = (
|
|
|
56
56
|
preserveFrontmatter:
|
|
57
57
|
options?.preserveFrontmatter ?? baseOptions.preserveFrontmatter,
|
|
58
58
|
tagfilter: options?.tagfilter ?? baseOptions.tagfilter,
|
|
59
|
-
wrapper: wrapperOverride || baseOptions.wrapper,
|
|
59
|
+
wrapper: (wrapperOverride || baseOptions.wrapper) as string,
|
|
60
60
|
forceWrapper: !!(wrapperOverride || baseOptions.wrapper),
|
|
61
61
|
components: {
|
|
62
62
|
...baseOptions.components,
|
|
@@ -19,12 +19,12 @@ type $$__sveltets_2_PropsWithChildren<Props, Slots> = Props & (Slots extends {
|
|
|
19
19
|
} : {});
|
|
20
20
|
declare const MarkdownProvider: $$__sveltets_2_IsomorphicComponent<$$__sveltets_2_PropsWithChildren<{
|
|
21
21
|
components?: HTMLComponents<"permissive", {}> | undefined;
|
|
22
|
-
wrapper?:
|
|
22
|
+
wrapper?: string | import("svelte").ComponentType | undefined;
|
|
23
23
|
forceBlock?: boolean | undefined;
|
|
24
24
|
forceInline?: boolean | undefined;
|
|
25
25
|
preserveFrontmatter?: boolean | undefined;
|
|
26
26
|
tagfilter?: boolean | undefined;
|
|
27
|
-
renderMarkdown: ((markdown: string, options?: any, components?: HTMLComponents<"permissive", {}>, wrapper?:
|
|
27
|
+
renderMarkdown: ((markdown: string, options?: any, components?: HTMLComponents<"permissive", {}>, wrapper?: string | import("svelte").ComponentType) => string | Promise<string>) | undefined;
|
|
28
28
|
}, {
|
|
29
29
|
default: {};
|
|
30
30
|
}>, {
|
|
@@ -33,7 +33,7 @@ declare const MarkdownProvider: $$__sveltets_2_IsomorphicComponent<$$__sveltets_
|
|
|
33
33
|
default: {};
|
|
34
34
|
}, {
|
|
35
35
|
components: HTMLComponents<"permissive", {}> | undefined;
|
|
36
|
-
wrapper:
|
|
36
|
+
wrapper: string | import("svelte").ComponentType | undefined;
|
|
37
37
|
forceBlock: boolean | undefined;
|
|
38
38
|
forceInline: boolean | undefined;
|
|
39
39
|
preserveFrontmatter: boolean | undefined;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { type ComponentType } from 'svelte';
|
|
1
2
|
import type { HTMLComponents } from '../html/types';
|
|
2
3
|
export declare const MARKDOWN_CONTEXT_KEY: unique symbol;
|
|
3
4
|
export type MarkdownProviderOptions = {
|
|
@@ -8,11 +9,11 @@ export type MarkdownProviderOptions = {
|
|
|
8
9
|
};
|
|
9
10
|
export type RenderMarkdownOptions = MarkdownProviderOptions & {
|
|
10
11
|
components?: HTMLComponents<'permissive', {}>;
|
|
11
|
-
wrapper?:
|
|
12
|
+
wrapper?: string | ComponentType;
|
|
12
13
|
};
|
|
13
14
|
export interface MarkdownContext {
|
|
14
15
|
components?: HTMLComponents<'permissive', {}>;
|
|
15
|
-
renderMarkdown: (markdown: string, options?: MarkdownProviderOptions, components?: HTMLComponents<'permissive', {}>, wrapper?:
|
|
16
|
+
renderMarkdown: (markdown: string, options?: MarkdownProviderOptions, components?: HTMLComponents<'permissive', {}>, wrapper?: string | ComponentType) => string | Promise<string>;
|
|
16
17
|
}
|
|
17
18
|
export declare const getMarkdownContext: () => MarkdownContext;
|
|
18
19
|
export declare const setMarkdownContext: (context: MarkdownContext) => void;
|
package/dist/markdown/context.js
CHANGED
package/dist/markdown/index.d.ts
CHANGED
|
@@ -1,10 +1,9 @@
|
|
|
1
|
-
export
|
|
2
|
-
export
|
|
1
|
+
export { compileMarkdown } from './compiler';
|
|
2
|
+
export { getMarkdownContext, type MarkdownContext, type RenderMarkdownOptions, setMarkdownContext, setMarkdownContext as setIntlayerMarkdown, } from './context';
|
|
3
|
+
import { type RenderMarkdownOptions } from './context';
|
|
3
4
|
export { default as MarkdownMetadataRenderer } from './MarkdownMetadataRenderer.svelte';
|
|
4
5
|
export { default as MarkdownProvider } from './MarkdownProvider.svelte';
|
|
5
6
|
export { default as MarkdownRenderer } from './MarkdownRenderer.svelte';
|
|
6
|
-
export * from './runtime';
|
|
7
|
-
import { type RenderMarkdownOptions } from './context';
|
|
8
7
|
export type RenderMarkdownProps = RenderMarkdownOptions;
|
|
9
|
-
export declare const renderMarkdown: (
|
|
10
|
-
export declare const useMarkdownRenderer: (options?: RenderMarkdownProps) => (content: string) => string
|
|
8
|
+
export declare const renderMarkdown: (markdown?: string, options?: any) => unknown;
|
|
9
|
+
export declare const useMarkdownRenderer: (options?: RenderMarkdownProps) => (content: string) => string | Promise<string>;
|
package/dist/markdown/index.js
CHANGED
|
@@ -1,14 +1,11 @@
|
|
|
1
|
-
export
|
|
2
|
-
export
|
|
1
|
+
export { compileMarkdown } from './compiler';
|
|
2
|
+
export { getMarkdownContext, setMarkdownContext, setMarkdownContext as setIntlayerMarkdown, } from './context';
|
|
3
|
+
import { compileMarkdown } from './compiler';
|
|
4
|
+
import { getMarkdownContext } from './context';
|
|
3
5
|
export { default as MarkdownMetadataRenderer } from './MarkdownMetadataRenderer.svelte';
|
|
4
6
|
export { default as MarkdownProvider } from './MarkdownProvider.svelte';
|
|
5
7
|
export { default as MarkdownRenderer } from './MarkdownRenderer.svelte';
|
|
6
|
-
export
|
|
7
|
-
import { compileMarkdown } from './compiler';
|
|
8
|
-
import { getMarkdownContext } from './context';
|
|
9
|
-
export const renderMarkdown = (content, options = {}) => {
|
|
10
|
-
return compileMarkdown(content, options);
|
|
11
|
-
};
|
|
8
|
+
export const renderMarkdown = compileMarkdown;
|
|
12
9
|
export const useMarkdownRenderer = (options = {}) => {
|
|
13
10
|
const context = getMarkdownContext();
|
|
14
11
|
return (content) => context.renderMarkdown(content, options);
|
package/dist/plugins.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import configuration from '@intlayer/config/built';
|
|
2
2
|
import { conditionPlugin, enumerationPlugin, filePlugin, genderPlugin, getHTML, nestedPlugin, translationPlugin, } from '@intlayer/core/interpreter';
|
|
3
3
|
import { HTML_TAGS, } from '@intlayer/core/transpiler';
|
|
4
|
+
import { isEnabled } from '@intlayer/editor/isEnabled';
|
|
4
5
|
import * as NodeTypes from '@intlayer/types/nodeType';
|
|
5
6
|
import { default as ContentSelector } from './editor/ContentSelector.svelte';
|
|
6
7
|
import { renderIntlayerNode } from './renderIntlayerNode';
|
|
@@ -34,9 +35,7 @@ export const intlayerNodePlugins = {
|
|
|
34
35
|
typeof node === 'number',
|
|
35
36
|
transform: (node, { children, ...rest }) => renderIntlayerNode({
|
|
36
37
|
value: children ?? node,
|
|
37
|
-
component:
|
|
38
|
-
? ContentSelector
|
|
39
|
-
: (children ?? node),
|
|
38
|
+
component: isEnabled ? ContentSelector : (children ?? node),
|
|
40
39
|
props: rest,
|
|
41
40
|
}),
|
|
42
41
|
};
|
|
@@ -128,12 +127,26 @@ export const insertionPlugin = {
|
|
|
128
127
|
};
|
|
129
128
|
},
|
|
130
129
|
};
|
|
131
|
-
|
|
130
|
+
const result = deepTransformNode(children, {
|
|
132
131
|
...props,
|
|
133
132
|
children,
|
|
134
133
|
keyPath: newKeyPath,
|
|
135
134
|
plugins: [insertionStringPlugin, ...(props.plugins ?? [])],
|
|
136
135
|
});
|
|
136
|
+
if (typeof children === 'object' &&
|
|
137
|
+
children !== null &&
|
|
138
|
+
'nodeType' in children &&
|
|
139
|
+
[NodeTypes.ENUMERATION, NodeTypes.CONDITION].includes(children.nodeType)) {
|
|
140
|
+
return (values) => (arg) => {
|
|
141
|
+
const func = result;
|
|
142
|
+
const inner = func(arg);
|
|
143
|
+
if (typeof inner === 'function') {
|
|
144
|
+
return inner(values);
|
|
145
|
+
}
|
|
146
|
+
return inner;
|
|
147
|
+
};
|
|
148
|
+
}
|
|
149
|
+
return result;
|
|
137
150
|
},
|
|
138
151
|
};
|
|
139
152
|
/** Markdown string plugin. Replaces string node with a component that render the markdown. */
|
|
@@ -151,7 +164,7 @@ export const markdownStringPlugin = {
|
|
|
151
164
|
!metadataNode,
|
|
152
165
|
transform: (metadataNode, props) => renderIntlayerNode({
|
|
153
166
|
value: metadataNode,
|
|
154
|
-
component:
|
|
167
|
+
component: isEnabled
|
|
155
168
|
? (_MarkdownMetadataWithSelector ?? _MarkdownMetadataRenderer)
|
|
156
169
|
: _MarkdownMetadataRenderer,
|
|
157
170
|
props: {
|
|
@@ -170,7 +183,7 @@ export const markdownStringPlugin = {
|
|
|
170
183
|
const render = (components) => {
|
|
171
184
|
const nodeResult = renderIntlayerNode({
|
|
172
185
|
value: node,
|
|
173
|
-
component:
|
|
186
|
+
component: isEnabled
|
|
174
187
|
? (_MarkdownWithSelector ?? _MarkdownRenderer)
|
|
175
188
|
: _MarkdownRenderer,
|
|
176
189
|
props: {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "svelte-intlayer",
|
|
3
|
-
"version": "8.
|
|
3
|
+
"version": "8.5.0",
|
|
4
4
|
"description": "Easily internationalize i18n your Svelte applications with type-safe multilingual content management.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"intlayer",
|
|
@@ -44,6 +44,11 @@
|
|
|
44
44
|
"svelte": "./dist/markdown/index.js",
|
|
45
45
|
"default": "./dist/markdown/index.js"
|
|
46
46
|
},
|
|
47
|
+
"./html": {
|
|
48
|
+
"types": "./dist/html/index.d.ts",
|
|
49
|
+
"svelte": "./dist/html/index.js",
|
|
50
|
+
"default": "./dist/html/index.js"
|
|
51
|
+
},
|
|
47
52
|
"./package.json": "./package.json"
|
|
48
53
|
},
|
|
49
54
|
"main": "dist/index.js",
|
|
@@ -72,11 +77,11 @@
|
|
|
72
77
|
"typecheck": "tsc --noEmit --project tsconfig.types.json"
|
|
73
78
|
},
|
|
74
79
|
"dependencies": {
|
|
75
|
-
"@intlayer/api": "8.
|
|
76
|
-
"@intlayer/config": "8.
|
|
77
|
-
"@intlayer/core": "8.
|
|
78
|
-
"@intlayer/editor": "8.
|
|
79
|
-
"@intlayer/types": "8.
|
|
80
|
+
"@intlayer/api": "8.5.0",
|
|
81
|
+
"@intlayer/config": "8.5.0",
|
|
82
|
+
"@intlayer/core": "8.5.0",
|
|
83
|
+
"@intlayer/editor": "8.5.0",
|
|
84
|
+
"@intlayer/types": "8.5.0"
|
|
80
85
|
},
|
|
81
86
|
"devDependencies": {
|
|
82
87
|
"@sveltejs/adapter-auto": "7.0.1",
|
|
@@ -87,7 +92,7 @@
|
|
|
87
92
|
"@utils/ts-config-types": "1.0.4",
|
|
88
93
|
"@utils/tsdown-config": "1.0.4",
|
|
89
94
|
"rimraf": "6.1.3",
|
|
90
|
-
"svelte": "5.
|
|
95
|
+
"svelte": "5.55.0",
|
|
91
96
|
"svelte-check": "4.4.5",
|
|
92
97
|
"tsdown": "0.21.4",
|
|
93
98
|
"typescript": "6.0.2",
|