angular-intlayer 5.5.9 → 5.5.11
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/README.md +44 -11
- package/dist/cjs/UI/ContentSelector.component.cjs +141 -0
- package/dist/cjs/UI/ContentSelector.component.cjs.map +1 -0
- package/dist/cjs/client/index.cjs +13 -27
- package/dist/cjs/client/index.cjs.map +1 -1
- package/dist/cjs/client/installIntlayer.cjs +72 -0
- package/dist/cjs/client/installIntlayer.cjs.map +1 -0
- package/dist/cjs/client/{getDictionary.cjs → useDictionary.cjs} +15 -19
- package/dist/cjs/client/useDictionary.cjs.map +1 -0
- package/dist/cjs/client/useDictionaryDynamic.cjs +42 -0
- package/dist/cjs/client/useDictionaryDynamic.cjs.map +1 -0
- package/dist/cjs/client/{getBrowserLocale.cjs → useIntlayer.cjs} +17 -11
- package/dist/cjs/client/useIntlayer.cjs.map +1 -0
- package/dist/cjs/client/{intlayer.service.cjs → useLoadDynamic.cjs} +21 -19
- package/dist/cjs/client/useLoadDynamic.cjs.map +1 -0
- package/dist/cjs/client/useLocale.cjs +69 -0
- package/dist/cjs/client/useLocale.cjs.map +1 -0
- package/dist/cjs/client/useLocaleCookie.cjs +60 -0
- package/dist/cjs/client/useLocaleCookie.cjs.map +1 -0
- package/dist/cjs/editor/ContentSelectorWrapper.component.cjs +73 -0
- package/dist/cjs/editor/ContentSelectorWrapper.component.cjs.map +1 -0
- package/dist/cjs/editor/EditedContentRenderer.component.cjs +77 -0
- package/dist/cjs/editor/EditedContentRenderer.component.cjs.map +1 -0
- package/dist/cjs/editor/EditorSelectorRenderer.component.cjs +58 -0
- package/dist/cjs/editor/EditorSelectorRenderer.component.cjs.map +1 -0
- package/dist/cjs/editor/changedContent.cjs +62 -0
- package/dist/cjs/editor/changedContent.cjs.map +1 -0
- package/dist/cjs/editor/communicator.cjs +82 -0
- package/dist/cjs/editor/communicator.cjs.map +1 -0
- package/dist/cjs/editor/configuration.cjs +57 -0
- package/dist/cjs/editor/configuration.cjs.map +1 -0
- package/dist/cjs/editor/createSharedComposable.cjs +68 -0
- package/dist/cjs/editor/createSharedComposable.cjs.map +1 -0
- package/dist/cjs/editor/dictionariesRecord.cjs +83 -0
- package/dist/cjs/editor/dictionariesRecord.cjs.map +1 -0
- package/dist/cjs/editor/editedContent.cjs +77 -0
- package/dist/cjs/editor/editedContent.cjs.map +1 -0
- package/dist/cjs/editor/editorEnabled.cjs +76 -0
- package/dist/cjs/editor/editorEnabled.cjs.map +1 -0
- package/dist/cjs/editor/editorLocale.cjs +47 -0
- package/dist/cjs/editor/editorLocale.cjs.map +1 -0
- package/dist/cjs/editor/focusDictionary.cjs +80 -0
- package/dist/cjs/editor/focusDictionary.cjs.map +1 -0
- package/dist/cjs/editor/index.cjs +38 -0
- package/dist/cjs/editor/index.cjs.map +1 -0
- package/dist/cjs/editor/installIntlayerEditor.cjs +72 -0
- package/dist/cjs/editor/installIntlayerEditor.cjs.map +1 -0
- package/dist/cjs/editor/useCrossFrameMessageListener.cjs +83 -0
- package/dist/cjs/editor/useCrossFrameMessageListener.cjs.map +1 -0
- package/dist/cjs/editor/useCrossFrameState.cjs +95 -0
- package/dist/cjs/editor/useCrossFrameState.cjs.map +1 -0
- package/dist/cjs/editor/useCrossURLPathState.cjs +72 -0
- package/dist/cjs/editor/useCrossURLPathState.cjs.map +1 -0
- package/dist/cjs/editor/useEditedContentRenderer.cjs +58 -0
- package/dist/cjs/editor/useEditedContentRenderer.cjs.map +1 -0
- package/dist/cjs/editor/useEditor.cjs +46 -0
- package/dist/cjs/editor/useEditor.cjs.map +1 -0
- package/dist/cjs/editor/useIframeClickInterceptor.cjs +62 -0
- package/dist/cjs/editor/useIframeClickInterceptor.cjs.map +1 -0
- package/dist/cjs/getDictionary.cjs +15 -2
- package/dist/cjs/getDictionary.cjs.map +1 -1
- package/dist/cjs/getIntlayer.cjs +9 -2
- package/dist/cjs/getIntlayer.cjs.map +1 -1
- package/dist/cjs/markdown/index.cjs +3 -16
- package/dist/cjs/markdown/index.cjs.map +1 -1
- package/dist/cjs/markdown/installIntlayerMarkdown.cjs +66 -0
- package/dist/cjs/markdown/installIntlayerMarkdown.cjs.map +1 -0
- package/dist/cjs/plugins.cjs +27 -18
- package/dist/cjs/plugins.cjs.map +1 -1
- package/dist/cjs/renderIntlayerNode.cjs +58 -0
- package/dist/cjs/renderIntlayerNode.cjs.map +1 -0
- package/dist/cjs/{client/getLocale.cjs → webpack/index.cjs} +6 -14
- package/dist/cjs/webpack/index.cjs.map +1 -0
- package/dist/cjs/webpack/mergeConfig.cjs +83 -0
- package/dist/cjs/webpack/mergeConfig.cjs.map +1 -0
- package/dist/esm/UI/ContentSelector.component.mjs +126 -0
- package/dist/esm/UI/ContentSelector.component.mjs.map +1 -0
- package/dist/esm/client/index.mjs +6 -16
- package/dist/esm/client/index.mjs.map +1 -1
- package/dist/esm/client/installIntlayer.mjs +35 -0
- package/dist/esm/client/installIntlayer.mjs.map +1 -0
- package/dist/esm/client/useDictionary.mjs +15 -0
- package/dist/esm/client/useDictionary.mjs.map +1 -0
- package/dist/esm/client/useDictionaryDynamic.mjs +18 -0
- package/dist/esm/client/useDictionaryDynamic.mjs.map +1 -0
- package/dist/esm/client/useIntlayer.mjs +15 -0
- package/dist/esm/client/useIntlayer.mjs.map +1 -0
- package/dist/esm/client/useLoadDynamic.mjs +21 -0
- package/dist/esm/client/useLoadDynamic.mjs.map +1 -0
- package/dist/esm/client/useLocale.mjs +35 -0
- package/dist/esm/client/useLocale.mjs.map +1 -0
- package/dist/esm/client/useLocaleCookie.mjs +24 -0
- package/dist/esm/client/useLocaleCookie.mjs.map +1 -0
- package/dist/esm/editor/ContentSelectorWrapper.component.mjs +49 -0
- package/dist/esm/editor/ContentSelectorWrapper.component.mjs.map +1 -0
- package/dist/esm/editor/EditedContentRenderer.component.mjs +53 -0
- package/dist/esm/editor/EditedContentRenderer.component.mjs.map +1 -0
- package/dist/esm/editor/EditorSelectorRenderer.component.mjs +34 -0
- package/dist/esm/editor/EditorSelectorRenderer.component.mjs.map +1 -0
- package/dist/esm/editor/changedContent.mjs +36 -0
- package/dist/esm/editor/changedContent.mjs.map +1 -0
- package/dist/esm/editor/communicator.mjs +46 -0
- package/dist/esm/editor/communicator.mjs.map +1 -0
- package/dist/esm/editor/configuration.mjs +23 -0
- package/dist/esm/editor/configuration.mjs.map +1 -0
- package/dist/esm/editor/createSharedComposable.mjs +43 -0
- package/dist/esm/editor/createSharedComposable.mjs.map +1 -0
- package/dist/esm/editor/dictionariesRecord.mjs +47 -0
- package/dist/esm/editor/dictionariesRecord.mjs.map +1 -0
- package/dist/esm/editor/editedContent.mjs +51 -0
- package/dist/esm/editor/editedContent.mjs.map +1 -0
- package/dist/esm/editor/editorEnabled.mjs +50 -0
- package/dist/esm/editor/editorEnabled.mjs.map +1 -0
- package/dist/esm/editor/editorLocale.mjs +23 -0
- package/dist/esm/editor/editorLocale.mjs.map +1 -0
- package/dist/esm/editor/focusDictionary.mjs +54 -0
- package/dist/esm/editor/focusDictionary.mjs.map +1 -0
- package/dist/esm/editor/index.mjs +10 -0
- package/dist/esm/editor/index.mjs.map +1 -0
- package/dist/esm/editor/installIntlayerEditor.mjs +38 -0
- package/dist/esm/editor/installIntlayerEditor.mjs.map +1 -0
- package/dist/esm/editor/useCrossFrameMessageListener.mjs +59 -0
- package/dist/esm/editor/useCrossFrameMessageListener.mjs.map +1 -0
- package/dist/esm/editor/useCrossFrameState.mjs +71 -0
- package/dist/esm/editor/useCrossFrameState.mjs.map +1 -0
- package/dist/esm/editor/useCrossURLPathState.mjs +47 -0
- package/dist/esm/editor/useCrossURLPathState.mjs.map +1 -0
- package/dist/esm/editor/useEditedContentRenderer.mjs +37 -0
- package/dist/esm/editor/useEditedContentRenderer.mjs.map +1 -0
- package/dist/esm/editor/useEditor.mjs +22 -0
- package/dist/esm/editor/useEditor.mjs.map +1 -0
- package/dist/esm/editor/useIframeClickInterceptor.mjs +37 -0
- package/dist/esm/editor/useIframeClickInterceptor.mjs.map +1 -0
- package/dist/esm/getDictionary.mjs +19 -1
- package/dist/esm/getDictionary.mjs.map +1 -1
- package/dist/esm/getIntlayer.mjs +14 -2
- package/dist/esm/getIntlayer.mjs.map +1 -1
- package/dist/esm/markdown/index.mjs +1 -10
- package/dist/esm/markdown/index.mjs.map +1 -1
- package/dist/esm/markdown/installIntlayerMarkdown.mjs +39 -0
- package/dist/esm/markdown/installIntlayerMarkdown.mjs.map +1 -0
- package/dist/esm/plugins.mjs +27 -17
- package/dist/esm/plugins.mjs.map +1 -1
- package/dist/esm/renderIntlayerNode.mjs +34 -0
- package/dist/esm/renderIntlayerNode.mjs.map +1 -0
- package/dist/esm/webpack/index.mjs +2 -0
- package/dist/esm/webpack/index.mjs.map +1 -0
- package/dist/esm/webpack/mergeConfig.mjs +49 -0
- package/dist/esm/webpack/mergeConfig.mjs.map +1 -0
- package/dist/types/UI/ContentSelector.component.d.ts +32 -0
- package/dist/types/UI/ContentSelector.component.d.ts.map +1 -0
- package/dist/types/client/index.d.ts +6 -7
- package/dist/types/client/index.d.ts.map +1 -1
- package/dist/types/client/installIntlayer.d.ts +17 -0
- package/dist/types/client/installIntlayer.d.ts.map +1 -0
- package/dist/types/client/useDictionary.d.ts +5 -0
- package/dist/types/client/useDictionary.d.ts.map +1 -0
- package/dist/types/client/useDictionaryDynamic.d.ts +9 -0
- package/dist/types/client/useDictionaryDynamic.d.ts.map +1 -0
- package/dist/types/client/useIntlayer.d.ts +10 -0
- package/dist/types/client/useIntlayer.d.ts.map +1 -0
- package/dist/types/client/useLoadDynamic.d.ts +8 -0
- package/dist/types/client/useLoadDynamic.d.ts.map +1 -0
- package/dist/types/client/useLocale.d.ts +15 -0
- package/dist/types/client/useLocale.d.ts.map +1 -0
- package/dist/types/client/useLocaleCookie.d.ts +17 -0
- package/dist/types/client/useLocaleCookie.d.ts.map +1 -0
- package/dist/types/editor/ContentSelectorWrapper.component.d.ts +19 -0
- package/dist/types/editor/ContentSelectorWrapper.component.d.ts.map +1 -0
- package/dist/types/editor/EditedContentRenderer.component.d.ts +19 -0
- package/dist/types/editor/EditedContentRenderer.component.d.ts.map +1 -0
- package/dist/types/editor/EditorSelectorRenderer.component.d.ts +13 -0
- package/dist/types/editor/EditorSelectorRenderer.component.d.ts.map +1 -0
- package/dist/types/editor/changedContent.d.ts +14 -0
- package/dist/types/editor/changedContent.d.ts.map +1 -0
- package/dist/types/editor/communicator.d.ts +28 -0
- package/dist/types/editor/communicator.d.ts.map +1 -0
- package/dist/types/editor/configuration.d.ts +2 -0
- package/dist/types/editor/configuration.d.ts.map +1 -0
- package/dist/types/editor/createSharedComposable.d.ts +14 -0
- package/dist/types/editor/createSharedComposable.d.ts.map +1 -0
- package/dist/types/editor/dictionariesRecord.d.ts +16 -0
- package/dist/types/editor/dictionariesRecord.d.ts.map +1 -0
- package/dist/types/editor/editedContent.d.ts +19 -0
- package/dist/types/editor/editedContent.d.ts.map +1 -0
- package/dist/types/editor/editorEnabled.d.ts +16 -0
- package/dist/types/editor/editorEnabled.d.ts.map +1 -0
- package/dist/types/editor/editorLocale.d.ts +3 -0
- package/dist/types/editor/editorLocale.d.ts.map +1 -0
- package/dist/types/editor/focusDictionary.d.ts +24 -0
- package/dist/types/editor/focusDictionary.d.ts.map +1 -0
- package/dist/types/editor/index.d.ts +5 -0
- package/dist/types/editor/index.d.ts.map +1 -0
- package/dist/types/editor/installIntlayerEditor.d.ts +18 -0
- package/dist/types/editor/installIntlayerEditor.d.ts.map +1 -0
- package/dist/types/editor/useCrossFrameMessageListener.d.ts +11 -0
- package/dist/types/editor/useCrossFrameMessageListener.d.ts.map +1 -0
- package/dist/types/editor/useCrossFrameState.d.ts +24 -0
- package/dist/types/editor/useCrossFrameState.d.ts.map +1 -0
- package/dist/types/editor/useCrossURLPathState.d.ts +16 -0
- package/dist/types/editor/useCrossURLPathState.d.ts.map +1 -0
- package/dist/types/editor/useEditedContentRenderer.d.ts +17 -0
- package/dist/types/editor/useEditedContentRenderer.d.ts.map +1 -0
- package/dist/types/editor/useEditor.d.ts +2 -0
- package/dist/types/editor/useEditor.d.ts.map +1 -0
- package/dist/types/editor/useIframeClickInterceptor.d.ts +11 -0
- package/dist/types/editor/useIframeClickInterceptor.d.ts.map +1 -0
- package/dist/types/getDictionary.d.ts +4 -1
- package/dist/types/getDictionary.d.ts.map +1 -1
- package/dist/types/getIntlayer.d.ts +4 -6
- package/dist/types/getIntlayer.d.ts.map +1 -1
- package/dist/types/markdown/index.d.ts +1 -4
- package/dist/types/markdown/index.d.ts.map +1 -1
- package/dist/types/markdown/installIntlayerMarkdown.d.ts +26 -0
- package/dist/types/markdown/installIntlayerMarkdown.d.ts.map +1 -0
- package/dist/types/plugins.d.ts +0 -9
- package/dist/types/plugins.d.ts.map +1 -1
- package/dist/types/renderIntlayerNode.d.ts +13 -0
- package/dist/types/renderIntlayerNode.d.ts.map +1 -0
- package/dist/types/webpack/index.d.ts +2 -0
- package/dist/types/webpack/index.d.ts.map +1 -0
- package/dist/types/webpack/mergeConfig.d.ts +3 -0
- package/dist/types/webpack/mergeConfig.d.ts.map +1 -0
- package/package.json +27 -11
- package/dist/cjs/client/dictionary.service.cjs +0 -70
- package/dist/cjs/client/dictionary.service.cjs.map +0 -1
- package/dist/cjs/client/getBrowserLocale.cjs.map +0 -1
- package/dist/cjs/client/getDictionary.cjs.map +0 -1
- package/dist/cjs/client/getLocale.cjs.map +0 -1
- package/dist/cjs/client/intlayer.service.cjs.map +0 -1
- package/dist/cjs/client/locale.service.cjs +0 -66
- package/dist/cjs/client/locale.service.cjs.map +0 -1
- package/dist/cjs/client/t.cjs +0 -32
- package/dist/cjs/client/t.cjs.map +0 -1
- package/dist/esm/client/dictionary.service.mjs +0 -46
- package/dist/esm/client/dictionary.service.mjs.map +0 -1
- package/dist/esm/client/getBrowserLocale.mjs +0 -10
- package/dist/esm/client/getBrowserLocale.mjs.map +0 -1
- package/dist/esm/client/getDictionary.mjs +0 -25
- package/dist/esm/client/getDictionary.mjs.map +0 -1
- package/dist/esm/client/getLocale.mjs +0 -7
- package/dist/esm/client/getLocale.mjs.map +0 -1
- package/dist/esm/client/intlayer.service.mjs +0 -19
- package/dist/esm/client/intlayer.service.mjs.map +0 -1
- package/dist/esm/client/locale.service.mjs +0 -42
- package/dist/esm/client/locale.service.mjs.map +0 -1
- package/dist/esm/client/t.mjs +0 -8
- package/dist/esm/client/t.mjs.map +0 -1
- package/dist/types/client/dictionary.service.d.ts +0 -21
- package/dist/types/client/dictionary.service.d.ts.map +0 -1
- package/dist/types/client/getBrowserLocale.d.ts +0 -6
- package/dist/types/client/getBrowserLocale.d.ts.map +0 -1
- package/dist/types/client/getDictionary.d.ts +0 -8
- package/dist/types/client/getDictionary.d.ts.map +0 -1
- package/dist/types/client/getLocale.d.ts +0 -7
- package/dist/types/client/getLocale.d.ts.map +0 -1
- package/dist/types/client/intlayer.service.d.ts +0 -8
- package/dist/types/client/intlayer.service.d.ts.map +0 -1
- package/dist/types/client/locale.service.d.ts +0 -12
- package/dist/types/client/locale.service.d.ts.map +0 -1
- package/dist/types/client/t.d.ts +0 -8
- package/dist/types/client/t.d.ts.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/markdown/index.ts"],"sourcesContent":["
|
|
1
|
+
{"version":3,"sources":["../../../src/markdown/index.ts"],"sourcesContent":["export * from './installIntlayerMarkdown';\n"],"mappings":"AAAA,cAAc;","names":[]}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { inject, Injectable, InjectionToken } from "@angular/core";
|
|
2
|
+
const INTLAYER_MARKDOWN_TOKEN = new InjectionToken("intlayerMarkdown");
|
|
3
|
+
const defaultMarkdownRenderer = (markdown) => markdown;
|
|
4
|
+
const createIntlayerMarkdownProvider = (renderMarkdown = defaultMarkdownRenderer) => ({
|
|
5
|
+
provide: INTLAYER_MARKDOWN_TOKEN,
|
|
6
|
+
useValue: {
|
|
7
|
+
renderMarkdown
|
|
8
|
+
}
|
|
9
|
+
});
|
|
10
|
+
@Injectable({
|
|
11
|
+
providedIn: "root"
|
|
12
|
+
})
|
|
13
|
+
class IntlayerMarkdownService {
|
|
14
|
+
markdownProvider = inject(INTLAYER_MARKDOWN_TOKEN, {
|
|
15
|
+
optional: true
|
|
16
|
+
});
|
|
17
|
+
renderMarkdown(markdown) {
|
|
18
|
+
if (!this.markdownProvider) {
|
|
19
|
+
return markdown;
|
|
20
|
+
}
|
|
21
|
+
return this.markdownProvider.renderMarkdown(markdown);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
const useMarkdown = () => {
|
|
25
|
+
const markdownProvider = inject(INTLAYER_MARKDOWN_TOKEN, { optional: true });
|
|
26
|
+
if (!markdownProvider) {
|
|
27
|
+
return {
|
|
28
|
+
renderMarkdown: defaultMarkdownRenderer
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
return markdownProvider;
|
|
32
|
+
};
|
|
33
|
+
export {
|
|
34
|
+
INTLAYER_MARKDOWN_TOKEN,
|
|
35
|
+
IntlayerMarkdownService,
|
|
36
|
+
createIntlayerMarkdownProvider,
|
|
37
|
+
useMarkdown
|
|
38
|
+
};
|
|
39
|
+
//# sourceMappingURL=installIntlayerMarkdown.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/markdown/installIntlayerMarkdown.ts"],"sourcesContent":["import { inject, Injectable, InjectionToken, TemplateRef } from '@angular/core';\n\nexport const INTLAYER_MARKDOWN_TOKEN =\n new InjectionToken<IntlayerMarkdownProvider>('intlayerMarkdown');\n\ntype RenderMarkdownFunction = (markdown: string) => string | TemplateRef<any>;\n\nexport type IntlayerMarkdownProvider = {\n renderMarkdown: RenderMarkdownFunction;\n};\n\n/**\n * Default markdown renderer that returns the markdown as is\n */\nconst defaultMarkdownRenderer: RenderMarkdownFunction = (markdown: string) =>\n markdown;\n\n/**\n * Create IntlayerMarkdown provider configuration\n */\nexport const createIntlayerMarkdownProvider = (\n renderMarkdown: RenderMarkdownFunction = defaultMarkdownRenderer\n) => ({\n provide: INTLAYER_MARKDOWN_TOKEN,\n useValue: {\n renderMarkdown,\n } as IntlayerMarkdownProvider,\n});\n\n/**\n * Injectable service for markdown rendering\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class IntlayerMarkdownService {\n private markdownProvider = inject(INTLAYER_MARKDOWN_TOKEN, {\n optional: true,\n });\n\n renderMarkdown(markdown: string): string | TemplateRef<any> {\n if (!this.markdownProvider) {\n return markdown; // Fallback to returning markdown as is\n }\n return this.markdownProvider.renderMarkdown(markdown);\n }\n}\n\n/**\n * Function to inject markdown provider\n */\nexport const useMarkdown = (): IntlayerMarkdownProvider => {\n const markdownProvider = inject(INTLAYER_MARKDOWN_TOKEN, { optional: true });\n\n if (!markdownProvider) {\n return {\n renderMarkdown: defaultMarkdownRenderer,\n };\n }\n\n return markdownProvider;\n};\n"],"mappings":"AAAA,SAAS,QAAQ,YAAY,sBAAmC;AAEzD,MAAM,0BACX,IAAI,eAAyC,kBAAkB;AAWjE,MAAM,0BAAkD,CAAC,aACvD;AAKK,MAAM,iCAAiC,CAC5C,iBAAyC,6BACrC;AAAA,EACJ,SAAS;AAAA,EACT,UAAU;AAAA,IACR;AAAA,EACF;AACF;AAKA,CAAC,WAAW;AAAA,EACV,YAAY;AACd,CAAC;AACM,MAAM,wBAAwB;AAAA,EAC3B,mBAAmB,OAAO,yBAAyB;AAAA,IACzD,UAAU;AAAA,EACZ,CAAC;AAAA,EAED,eAAe,UAA6C;AAC1D,QAAI,CAAC,KAAK,kBAAkB;AAC1B,aAAO;AAAA,IACT;AACA,WAAO,KAAK,iBAAiB,eAAe,QAAQ;AAAA,EACtD;AACF;AAKO,MAAM,cAAc,MAAgC;AACzD,QAAM,mBAAmB,OAAO,yBAAyB,EAAE,UAAU,KAAK,CAAC;AAE3E,MAAI,CAAC,kBAAkB;AACrB,WAAO;AAAA,MACL,gBAAgB;AAAA,IAClB;AAAA,EACF;AAEA,SAAO;AACT;","names":[]}
|
package/dist/esm/plugins.mjs
CHANGED
|
@@ -2,22 +2,23 @@ import {
|
|
|
2
2
|
getMarkdownMetadata,
|
|
3
3
|
NodeType
|
|
4
4
|
} from "@intlayer/core";
|
|
5
|
+
import { ContentSelectorWrapperComponent } from "./editor/index.mjs";
|
|
6
|
+
import { useMarkdown } from "./markdown/installIntlayerMarkdown.mjs";
|
|
7
|
+
import { renderIntlayerNode } from "./renderIntlayerNode.mjs";
|
|
5
8
|
const intlayerNodePlugins = {
|
|
6
9
|
id: "intlayer-node-plugin",
|
|
7
10
|
canHandle: (node) => typeof node === "bigint" || typeof node === "string" || typeof node === "number",
|
|
8
|
-
transform: (_node, { children, ...rest }) => ({
|
|
11
|
+
transform: (_node, { children, ...rest }) => renderIntlayerNode({
|
|
9
12
|
...rest,
|
|
10
13
|
value: children,
|
|
11
|
-
children
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
value: "[[angular-template]]",
|
|
20
|
-
children: node
|
|
14
|
+
children: () => ({
|
|
15
|
+
component: ContentSelectorWrapperComponent,
|
|
16
|
+
props: {
|
|
17
|
+
dictionaryKey: rest.dictionaryKey,
|
|
18
|
+
keyPath: rest.keyPath
|
|
19
|
+
},
|
|
20
|
+
children
|
|
21
|
+
})
|
|
21
22
|
})
|
|
22
23
|
};
|
|
23
24
|
const markdownStringPlugin = {
|
|
@@ -26,14 +27,14 @@ const markdownStringPlugin = {
|
|
|
26
27
|
transform: (node, props, deepTransformNode) => {
|
|
27
28
|
const {
|
|
28
29
|
plugins,
|
|
29
|
-
// Removed to avoid
|
|
30
|
+
// Removed to avoid next error - Functions cannot be passed directly to Client Components
|
|
30
31
|
...rest
|
|
31
32
|
} = props;
|
|
32
33
|
const metadata = getMarkdownMetadata(node);
|
|
33
34
|
const metadataPlugins = {
|
|
34
35
|
id: "markdown-metadata-plugin",
|
|
35
36
|
canHandle: (metadataNode) => typeof metadataNode === "string" || typeof metadataNode === "number" || typeof metadataNode === "boolean" || !metadataNode,
|
|
36
|
-
transform: (metadataNode, props2) => ({
|
|
37
|
+
transform: (metadataNode, props2) => renderIntlayerNode({
|
|
37
38
|
...props2,
|
|
38
39
|
value: metadataNode,
|
|
39
40
|
children: node
|
|
@@ -44,14 +45,24 @@ const markdownStringPlugin = {
|
|
|
44
45
|
dictionaryKey: rest.dictionaryKey,
|
|
45
46
|
keyPath: []
|
|
46
47
|
});
|
|
47
|
-
return {
|
|
48
|
+
return renderIntlayerNode({
|
|
48
49
|
...props,
|
|
49
50
|
value: node,
|
|
50
|
-
children:
|
|
51
|
+
children: () => ({
|
|
52
|
+
component: ContentSelectorWrapperComponent,
|
|
53
|
+
props: {
|
|
54
|
+
dictionaryKey: rest.dictionaryKey,
|
|
55
|
+
keyPath: rest.keyPath
|
|
56
|
+
},
|
|
57
|
+
children: () => {
|
|
58
|
+
const { renderMarkdown } = useMarkdown();
|
|
59
|
+
return renderMarkdown(node);
|
|
60
|
+
}
|
|
61
|
+
}),
|
|
51
62
|
additionalProps: {
|
|
52
63
|
metadata: metadataNodes
|
|
53
64
|
}
|
|
54
|
-
};
|
|
65
|
+
});
|
|
55
66
|
}
|
|
56
67
|
};
|
|
57
68
|
const markdownPlugin = {
|
|
@@ -74,7 +85,6 @@ const markdownPlugin = {
|
|
|
74
85
|
}
|
|
75
86
|
};
|
|
76
87
|
export {
|
|
77
|
-
angularTemplatePlugin,
|
|
78
88
|
intlayerNodePlugins,
|
|
79
89
|
markdownPlugin,
|
|
80
90
|
markdownStringPlugin
|
package/dist/esm/plugins.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/plugins.ts"],"sourcesContent":["import
|
|
1
|
+
{"version":3,"sources":["../../src/plugins.ts"],"sourcesContent":["import {\n getMarkdownMetadata,\n KeyPath,\n MarkdownContent,\n NodeType,\n type DeepTransformContent as DeepTransformContentCore,\n type IInterpreterPluginState as IInterpreterPluginStateCore,\n type Plugins,\n} from '@intlayer/core';\nimport { ContentSelectorWrapperComponent } from './editor';\nimport { useMarkdown } from './markdown/installIntlayerMarkdown';\nimport { renderIntlayerNode } from './renderIntlayerNode';\n\n/** ---------------------------------------------\n * INTLAYER NODE PLUGIN\n * --------------------------------------------- */\n\nexport type IntlayerNodeCond<T> = T extends number | string\n ? IntlayerNode<T>\n : never;\n\nexport interface IntlayerNode<T, P = {}> {\n value: T;\n children?: any;\n additionalProps?: P;\n}\n\n/** Translation plugin. Replaces node with a locale string if nodeType = Translation. */\nexport const intlayerNodePlugins: Plugins = {\n id: 'intlayer-node-plugin',\n canHandle: (node) =>\n typeof node === 'bigint' ||\n typeof node === 'string' ||\n typeof node === 'number',\n transform: (_node, { children, ...rest }) =>\n renderIntlayerNode({\n ...rest,\n value: children,\n children: () => ({\n component: ContentSelectorWrapperComponent,\n props: {\n dictionaryKey: rest.dictionaryKey,\n keyPath: rest.keyPath,\n },\n children: children,\n }),\n }),\n};\n\n/**\n * MARKDOWN PLUGIN\n */\n\nexport type MarkdownStringCond<T> = T extends string\n ? IntlayerNode<string, { metadata: DeepTransformContent<string> }>\n : never;\n\n/** Markdown string plugin. Replaces string node with a component that render the markdown. */\nexport const markdownStringPlugin: Plugins = {\n id: 'markdown-string-plugin',\n canHandle: (node) => typeof node === 'string',\n transform: (node: string, props, deepTransformNode) => {\n const {\n plugins, // Removed to avoid next error - Functions cannot be passed directly to Client Components\n ...rest\n } = props;\n\n const metadata = getMarkdownMetadata(node);\n\n const metadataPlugins: Plugins = {\n id: 'markdown-metadata-plugin',\n canHandle: (metadataNode) =>\n typeof metadataNode === 'string' ||\n typeof metadataNode === 'number' ||\n typeof metadataNode === 'boolean' ||\n !metadataNode,\n transform: (metadataNode, props) =>\n renderIntlayerNode({\n ...props,\n value: metadataNode,\n children: node,\n }),\n };\n\n // Transform metadata while keeping the same structure\n const metadataNodes = deepTransformNode(metadata, {\n plugins: [metadataPlugins],\n dictionaryKey: rest.dictionaryKey,\n keyPath: [],\n });\n\n return renderIntlayerNode({\n ...props,\n value: node,\n children: () => ({\n component: ContentSelectorWrapperComponent,\n props: {\n dictionaryKey: rest.dictionaryKey,\n keyPath: rest.keyPath,\n },\n children: () => {\n const { renderMarkdown } = useMarkdown();\n return renderMarkdown(node);\n },\n }),\n additionalProps: {\n metadata: metadataNodes,\n },\n });\n },\n};\n\nexport type MarkdownCond<T> = T extends {\n nodeType: NodeType | string;\n [NodeType.Markdown]: infer M;\n metadata?: infer U;\n}\n ? IntlayerNode<DeepTransformContent<M>, { metadata: DeepTransformContent<U> }>\n : never;\n\nexport const markdownPlugin: Plugins = {\n id: 'markdown-plugin',\n canHandle: (node) =>\n typeof node === 'object' && node?.nodeType === NodeType.Markdown,\n transform: (node: MarkdownContent, props, deepTransformNode) => {\n const newKeyPath: KeyPath[] = [\n ...props.keyPath,\n {\n type: NodeType.Markdown,\n },\n ];\n\n const children = node[NodeType.Markdown];\n\n return deepTransformNode(children, {\n ...props,\n children,\n keyPath: newKeyPath,\n plugins: [markdownStringPlugin, ...(props.plugins ?? [])],\n });\n },\n};\n\n/** ---------------------------------------------\n * PLUGINS RESULT\n * --------------------------------------------- */\n\nexport interface IInterpreterPluginAngular<T> {\n intlayerNode: IntlayerNodeCond<T>;\n markdown: MarkdownCond<T>;\n}\n\n/**\n * Insert this type as param of `DeepTransformContent` to avoid `intlayer` package pollution.\n *\n * Otherwise the the `angular-intlayer` plugins will override the types of `intlayer` functions.\n */\nexport type IInterpreterPluginState = IInterpreterPluginStateCore & {\n intlayerNode: true;\n markdown: true;\n};\n\nexport type DeepTransformContent<T> = DeepTransformContentCore<\n T,\n IInterpreterPluginState\n>;\n"],"mappings":"AAAA;AAAA,EACE;AAAA,EAGA;AAAA,OAIK;AACP,SAAS,uCAAuC;AAChD,SAAS,mBAAmB;AAC5B,SAAS,0BAA0B;AAiB5B,MAAM,sBAA+B;AAAA,EAC1C,IAAI;AAAA,EACJ,WAAW,CAAC,SACV,OAAO,SAAS,YAChB,OAAO,SAAS,YAChB,OAAO,SAAS;AAAA,EAClB,WAAW,CAAC,OAAO,EAAE,UAAU,GAAG,KAAK,MACrC,mBAAmB;AAAA,IACjB,GAAG;AAAA,IACH,OAAO;AAAA,IACP,UAAU,OAAO;AAAA,MACf,WAAW;AAAA,MACX,OAAO;AAAA,QACL,eAAe,KAAK;AAAA,QACpB,SAAS,KAAK;AAAA,MAChB;AAAA,MACA;AAAA,IACF;AAAA,EACF,CAAC;AACL;AAWO,MAAM,uBAAgC;AAAA,EAC3C,IAAI;AAAA,EACJ,WAAW,CAAC,SAAS,OAAO,SAAS;AAAA,EACrC,WAAW,CAAC,MAAc,OAAO,sBAAsB;AACrD,UAAM;AAAA,MACJ;AAAA;AAAA,MACA,GAAG;AAAA,IACL,IAAI;AAEJ,UAAM,WAAW,oBAAoB,IAAI;AAEzC,UAAM,kBAA2B;AAAA,MAC/B,IAAI;AAAA,MACJ,WAAW,CAAC,iBACV,OAAO,iBAAiB,YACxB,OAAO,iBAAiB,YACxB,OAAO,iBAAiB,aACxB,CAAC;AAAA,MACH,WAAW,CAAC,cAAcA,WACxB,mBAAmB;AAAA,QACjB,GAAGA;AAAA,QACH,OAAO;AAAA,QACP,UAAU;AAAA,MACZ,CAAC;AAAA,IACL;AAGA,UAAM,gBAAgB,kBAAkB,UAAU;AAAA,MAChD,SAAS,CAAC,eAAe;AAAA,MACzB,eAAe,KAAK;AAAA,MACpB,SAAS,CAAC;AAAA,IACZ,CAAC;AAED,WAAO,mBAAmB;AAAA,MACxB,GAAG;AAAA,MACH,OAAO;AAAA,MACP,UAAU,OAAO;AAAA,QACf,WAAW;AAAA,QACX,OAAO;AAAA,UACL,eAAe,KAAK;AAAA,UACpB,SAAS,KAAK;AAAA,QAChB;AAAA,QACA,UAAU,MAAM;AACd,gBAAM,EAAE,eAAe,IAAI,YAAY;AACvC,iBAAO,eAAe,IAAI;AAAA,QAC5B;AAAA,MACF;AAAA,MACA,iBAAiB;AAAA,QACf,UAAU;AAAA,MACZ;AAAA,IACF,CAAC;AAAA,EACH;AACF;AAUO,MAAM,iBAA0B;AAAA,EACrC,IAAI;AAAA,EACJ,WAAW,CAAC,SACV,OAAO,SAAS,YAAY,MAAM,aAAa,SAAS;AAAA,EAC1D,WAAW,CAAC,MAAuB,OAAO,sBAAsB;AAC9D,UAAM,aAAwB;AAAA,MAC5B,GAAG,MAAM;AAAA,MACT;AAAA,QACE,MAAM,SAAS;AAAA,MACjB;AAAA,IACF;AAEA,UAAM,WAAW,KAAK,SAAS,QAAQ;AAEvC,WAAO,kBAAkB,UAAU;AAAA,MACjC,GAAG;AAAA,MACH;AAAA,MACA,SAAS;AAAA,MACT,SAAS,CAAC,sBAAsB,GAAI,MAAM,WAAW,CAAC,CAAE;AAAA,IAC1D,CAAC;AAAA,EACH;AACF;","names":["props"]}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
const renderIntlayerNode = ({
|
|
2
|
+
children,
|
|
3
|
+
value,
|
|
4
|
+
additionalProps = {}
|
|
5
|
+
}) => {
|
|
6
|
+
if (children == null) {
|
|
7
|
+
return new Proxy({}, {
|
|
8
|
+
get(target, prop, receiver) {
|
|
9
|
+
if (prop === "value") {
|
|
10
|
+
return value;
|
|
11
|
+
}
|
|
12
|
+
if (additionalProps && Object.keys(additionalProps).includes(prop)) {
|
|
13
|
+
return additionalProps[prop];
|
|
14
|
+
}
|
|
15
|
+
return Reflect.get(target, prop, receiver);
|
|
16
|
+
}
|
|
17
|
+
});
|
|
18
|
+
}
|
|
19
|
+
return new Proxy(children, {
|
|
20
|
+
get(target, prop, receiver) {
|
|
21
|
+
if (prop === "value") {
|
|
22
|
+
return value;
|
|
23
|
+
}
|
|
24
|
+
if (additionalProps && Object.keys(additionalProps).includes(prop)) {
|
|
25
|
+
return additionalProps[prop];
|
|
26
|
+
}
|
|
27
|
+
return Reflect.get(target, prop, receiver);
|
|
28
|
+
}
|
|
29
|
+
});
|
|
30
|
+
};
|
|
31
|
+
export {
|
|
32
|
+
renderIntlayerNode
|
|
33
|
+
};
|
|
34
|
+
//# sourceMappingURL=renderIntlayerNode.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/renderIntlayerNode.ts"],"sourcesContent":["export type IntlayerNode<T = string, AdditionalProps = {}> = any & {\n value: T;\n} & AdditionalProps;\n\ntype RenderIntlayerNodeProps<T> = {\n value: T;\n children: any;\n additionalProps?: { [key: string]: any };\n};\n\nexport const renderIntlayerNode = <\n T extends number | string | boolean | undefined | null,\n>({\n children,\n value,\n additionalProps = {},\n}: RenderIntlayerNodeProps<T>): IntlayerNode<T> => {\n // If children is null or undefined, return a simple object with the value\n if (children == null) {\n return new Proxy({} as any, {\n get(target, prop, receiver) {\n if (prop === 'value') {\n return value;\n }\n\n if (\n additionalProps &&\n Object.keys(additionalProps).includes(prop as string)\n ) {\n return additionalProps[prop as keyof typeof additionalProps];\n }\n\n return Reflect.get(target, prop, receiver);\n },\n }) as IntlayerNode<T>;\n }\n\n // Return a Proxy that pretends to be the original content\n // but also has a .value getter and additional props.\n return new Proxy(children, {\n get(target, prop, receiver) {\n if (prop === 'value') {\n return value;\n }\n\n if (\n additionalProps &&\n Object.keys(additionalProps).includes(prop as string)\n ) {\n return additionalProps[prop as keyof typeof additionalProps];\n }\n\n return Reflect.get(target, prop, receiver);\n },\n }) as IntlayerNode<T>;\n};\n"],"mappings":"AAUO,MAAM,qBAAqB,CAEhC;AAAA,EACA;AAAA,EACA;AAAA,EACA,kBAAkB,CAAC;AACrB,MAAmD;AAEjD,MAAI,YAAY,MAAM;AACpB,WAAO,IAAI,MAAM,CAAC,GAAU;AAAA,MAC1B,IAAI,QAAQ,MAAM,UAAU;AAC1B,YAAI,SAAS,SAAS;AACpB,iBAAO;AAAA,QACT;AAEA,YACE,mBACA,OAAO,KAAK,eAAe,EAAE,SAAS,IAAc,GACpD;AACA,iBAAO,gBAAgB,IAAoC;AAAA,QAC7D;AAEA,eAAO,QAAQ,IAAI,QAAQ,MAAM,QAAQ;AAAA,MAC3C;AAAA,IACF,CAAC;AAAA,EACH;AAIA,SAAO,IAAI,MAAM,UAAU;AAAA,IACzB,IAAI,QAAQ,MAAM,UAAU;AAC1B,UAAI,SAAS,SAAS;AACpB,eAAO;AAAA,MACT;AAEA,UACE,mBACA,OAAO,KAAK,eAAe,EAAE,SAAS,IAAc,GACpD;AACA,eAAO,gBAAgB,IAAoC;AAAA,MAC7D;AAEA,aAAO,QAAQ,IAAI,QAAQ,MAAM,QAAQ;AAAA,IAC3C;AAAA,EACF,CAAC;AACH;","names":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/webpack/index.ts"],"sourcesContent":["export * from './mergeConfig';\n"],"mappings":"AAAA,cAAc;","names":[]}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { getConfiguration } from "@intlayer/config";
|
|
2
|
+
import { IntlayerPlugin } from "@intlayer/webpack";
|
|
3
|
+
import merge from "deepmerge";
|
|
4
|
+
import { join, relative, resolve } from "path";
|
|
5
|
+
const mergeConfig = (baseConfig) => {
|
|
6
|
+
const intlayerConfig = getConfiguration();
|
|
7
|
+
const { mainDir, configDir, baseDir } = intlayerConfig.content;
|
|
8
|
+
const dictionariesPath = join(mainDir, "dictionaries.mjs");
|
|
9
|
+
const relativeDictionariesPath = relative(baseDir, dictionariesPath);
|
|
10
|
+
const unmergedDictionariesPath = join(mainDir, "unmerged_dictionaries.mjs");
|
|
11
|
+
const relativeUnmergedDictionariesPath = relative(
|
|
12
|
+
baseDir,
|
|
13
|
+
unmergedDictionariesPath
|
|
14
|
+
);
|
|
15
|
+
const configurationPath = join(configDir, "configuration.json");
|
|
16
|
+
const relativeConfigurationPath = relative(baseDir, configurationPath);
|
|
17
|
+
const config = {
|
|
18
|
+
resolve: {
|
|
19
|
+
alias: {
|
|
20
|
+
"@intlayer/dictionaries-entry": resolve(relativeDictionariesPath),
|
|
21
|
+
"@intlayer/unmerged-dictionaries-entry": resolve(
|
|
22
|
+
relativeUnmergedDictionariesPath
|
|
23
|
+
),
|
|
24
|
+
"@intlayer/config/built": resolve(relativeConfigurationPath)
|
|
25
|
+
}
|
|
26
|
+
},
|
|
27
|
+
externals: {
|
|
28
|
+
esbuild: "esbuild",
|
|
29
|
+
module: "module",
|
|
30
|
+
fs: "fs",
|
|
31
|
+
chokidar: "chokidar",
|
|
32
|
+
fsevents: "fsevents"
|
|
33
|
+
},
|
|
34
|
+
module: {
|
|
35
|
+
rules: [
|
|
36
|
+
{
|
|
37
|
+
test: /\.node$/,
|
|
38
|
+
loader: "node-loader"
|
|
39
|
+
}
|
|
40
|
+
]
|
|
41
|
+
},
|
|
42
|
+
plugins: [new IntlayerPlugin()]
|
|
43
|
+
};
|
|
44
|
+
return merge(baseConfig, config);
|
|
45
|
+
};
|
|
46
|
+
export {
|
|
47
|
+
mergeConfig
|
|
48
|
+
};
|
|
49
|
+
//# sourceMappingURL=mergeConfig.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/webpack/mergeConfig.ts"],"sourcesContent":["import { getConfiguration } from '@intlayer/config';\nimport { IntlayerPlugin } from '@intlayer/webpack'; // adjust path if needed\nimport merge from 'deepmerge';\nimport { join, relative, resolve } from 'path';\nimport type { Configuration as WebpackConfig } from 'webpack';\n\nexport const mergeConfig = (baseConfig: WebpackConfig): WebpackConfig => {\n const intlayerConfig = getConfiguration();\n\n // Format all configuration values as environment variables\n const { mainDir, configDir, baseDir } = intlayerConfig.content;\n\n const dictionariesPath = join(mainDir, 'dictionaries.mjs');\n const relativeDictionariesPath = relative(baseDir, dictionariesPath);\n\n const unmergedDictionariesPath = join(mainDir, 'unmerged_dictionaries.mjs');\n const relativeUnmergedDictionariesPath = relative(\n baseDir,\n unmergedDictionariesPath\n );\n\n const configurationPath = join(configDir, 'configuration.json');\n const relativeConfigurationPath = relative(baseDir, configurationPath);\n\n const config = {\n resolve: {\n alias: {\n '@intlayer/dictionaries-entry': resolve(relativeDictionariesPath),\n '@intlayer/unmerged-dictionaries-entry': resolve(\n relativeUnmergedDictionariesPath\n ),\n '@intlayer/config/built': resolve(relativeConfigurationPath),\n },\n },\n externals: {\n esbuild: 'esbuild',\n module: 'module',\n fs: 'fs',\n chokidar: 'chokidar',\n fsevents: 'fsevents',\n },\n module: {\n rules: [\n {\n test: /\\.node$/,\n loader: 'node-loader',\n },\n ],\n },\n plugins: [new IntlayerPlugin()],\n };\n\n return merge(baseConfig, config);\n};\n"],"mappings":"AAAA,SAAS,wBAAwB;AACjC,SAAS,sBAAsB;AAC/B,OAAO,WAAW;AAClB,SAAS,MAAM,UAAU,eAAe;AAGjC,MAAM,cAAc,CAAC,eAA6C;AACvE,QAAM,iBAAiB,iBAAiB;AAGxC,QAAM,EAAE,SAAS,WAAW,QAAQ,IAAI,eAAe;AAEvD,QAAM,mBAAmB,KAAK,SAAS,kBAAkB;AACzD,QAAM,2BAA2B,SAAS,SAAS,gBAAgB;AAEnE,QAAM,2BAA2B,KAAK,SAAS,2BAA2B;AAC1E,QAAM,mCAAmC;AAAA,IACvC;AAAA,IACA;AAAA,EACF;AAEA,QAAM,oBAAoB,KAAK,WAAW,oBAAoB;AAC9D,QAAM,4BAA4B,SAAS,SAAS,iBAAiB;AAErE,QAAM,SAAS;AAAA,IACb,SAAS;AAAA,MACP,OAAO;AAAA,QACL,gCAAgC,QAAQ,wBAAwB;AAAA,QAChE,yCAAyC;AAAA,UACvC;AAAA,QACF;AAAA,QACA,0BAA0B,QAAQ,yBAAyB;AAAA,MAC7D;AAAA,IACF;AAAA,IACA,WAAW;AAAA,MACT,SAAS;AAAA,MACT,QAAQ;AAAA,MACR,IAAI;AAAA,MACJ,UAAU;AAAA,MACV,UAAU;AAAA,IACZ;AAAA,IACA,QAAQ;AAAA,MACN,OAAO;AAAA,QACL;AAAA,UACE,MAAM;AAAA,UACN,QAAQ;AAAA,QACV;AAAA,MACF;AAAA,IACF;AAAA,IACA,SAAS,CAAC,IAAI,eAAe,CAAC;AAAA,EAChC;AAEA,SAAO,MAAM,YAAY,MAAM;AACjC;","names":[]}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { ChangeDetectorRef, ElementRef, EventEmitter, OnDestroy, OnInit } from '@angular/core';
|
|
2
|
+
export declare class ContentSelectorComponent implements OnInit, OnDestroy {
|
|
3
|
+
private cdr;
|
|
4
|
+
onClickOutside?: () => void;
|
|
5
|
+
pressDuration?: number;
|
|
6
|
+
isSelecting?: boolean;
|
|
7
|
+
click: EventEmitter<MouseEvent>;
|
|
8
|
+
press: EventEmitter<void>;
|
|
9
|
+
containerRef: ElementRef<HTMLSpanElement>;
|
|
10
|
+
private isHovered;
|
|
11
|
+
private isSelectingState;
|
|
12
|
+
private pressTimerRef;
|
|
13
|
+
private readonly isSelectingComputed;
|
|
14
|
+
private readonly isStringSlot;
|
|
15
|
+
constructor(cdr: ChangeDetectorRef);
|
|
16
|
+
ngOnInit(): void;
|
|
17
|
+
ngOnDestroy(): void;
|
|
18
|
+
onDocumentMouseDown(event: MouseEvent): void;
|
|
19
|
+
private handleOnLongPress;
|
|
20
|
+
private startPressTimer;
|
|
21
|
+
private clearPressTimer;
|
|
22
|
+
handleMouseDown(): void;
|
|
23
|
+
handleMouseUp(): void;
|
|
24
|
+
private handleClickOutside;
|
|
25
|
+
handleClick(e: MouseEvent): void;
|
|
26
|
+
handleBlur(): void;
|
|
27
|
+
onMouseEnter(): void;
|
|
28
|
+
getContainerStyle(): {
|
|
29
|
+
[key: string]: any;
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=ContentSelector.component.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ContentSelector.component.d.ts","sourceRoot":"","sources":["../../../src/UI/ContentSelector.component.ts"],"names":[],"mappings":"AACA,OAAO,EACL,iBAAiB,EAGjB,UAAU,EACV,YAAY,EAGZ,SAAS,EACT,MAAM,EAIP,MAAM,eAAe,CAAC;AAIvB,qBAwBa,wBAAyB,YAAW,MAAM,EAAE,SAAS;IAyBpD,OAAO,CAAC,GAAG;IAxBd,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,OAAO,CAAC;IAErB,KAAK,2BAAkC;IACvC,KAAK,qBAA4B;IAG3C,YAAY,EAAG,UAAU,CAAC,eAAe,CAAC,CAAC;IAE3C,OAAO,CAAC,SAAS,CAAiB;IAClC,OAAO,CAAC,gBAAgB,CAAiB;IACzC,OAAO,CAAC,aAAa,CAA8C;IAEnE,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAElC;IAEF,OAAO,CAAC,QAAQ,CAAC,YAAY,CAI1B;gBAEiB,GAAG,EAAE,iBAAiB;IAE1C,QAAQ,IAAI,IAAI;IAIhB,WAAW,IAAI,IAAI;IAKnB,mBAAmB,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;IAI5C,OAAO,CAAC,iBAAiB;IAKzB,OAAO,CAAC,eAAe;IAMvB,OAAO,CAAC,eAAe;IAOvB,eAAe,IAAI,IAAI;IAKvB,aAAa,IAAI,IAAI;IAKrB,OAAO,CAAC,kBAAkB;IAU1B,WAAW,CAAC,CAAC,EAAE,UAAU,GAAG,IAAI;IAQhC,UAAU,IAAI,IAAI;IAIlB,YAAY,IAAI,IAAI;IAIpB,iBAAiB,IAAI;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE;CAgB5C"}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
export
|
|
2
|
-
export
|
|
3
|
-
export
|
|
4
|
-
export
|
|
5
|
-
export
|
|
6
|
-
export
|
|
7
|
-
export { t } from './t';
|
|
1
|
+
export * from './installIntlayer';
|
|
2
|
+
export * from './useDictionary';
|
|
3
|
+
export * from './useDictionaryDynamic';
|
|
4
|
+
export * from './useIntlayer';
|
|
5
|
+
export * from './useLoadDynamic';
|
|
6
|
+
export * from './useLocale';
|
|
8
7
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { InjectionToken, Signal } from '@angular/core';
|
|
2
|
+
import type { Locales, LocalesValues } from '@intlayer/config/client';
|
|
3
|
+
export declare const INTLAYER_TOKEN: InjectionToken<IntlayerProvider>;
|
|
4
|
+
export declare class IntlayerProvider {
|
|
5
|
+
private _locale;
|
|
6
|
+
readonly locale: Signal<Locales>;
|
|
7
|
+
setLocale: (locale: LocalesValues) => void;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Create and return a single IntlayerProvider instance
|
|
11
|
+
*/
|
|
12
|
+
export declare const createIntlayerClient: (locale?: LocalesValues) => IntlayerProvider;
|
|
13
|
+
/**
|
|
14
|
+
* Helper to install the Intlayer provider
|
|
15
|
+
*/
|
|
16
|
+
export declare const installIntlayer: (locale?: LocalesValues) => IntlayerProvider;
|
|
17
|
+
//# sourceMappingURL=installIntlayer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"installIntlayer.d.ts","sourceRoot":"","sources":["../../../src/client/installIntlayer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,cAAc,EAAU,MAAM,EAAE,MAAM,eAAe,CAAC;AAE3E,OAAO,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAEtE,eAAO,MAAM,cAAc,kCAAmD,CAAC;AAO/E,qBAGa,gBAAgB;IAC3B,OAAO,CAAC,OAAO,CAEb;IAEF,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,CAA6B;IAE7D,SAAS,GAAI,QAAQ,aAAa,UAEhC;CACH;AAED;;GAEG;AACH,eAAO,MAAM,oBAAoB,GAC/B,SAAS,aAAa,KACrB,gBAUF,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,eAAe,GAAI,SAAS,aAAa,qBAOrD,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { LocalesValues } from '@intlayer/config/client';
|
|
2
|
+
import { type Dictionary } from '@intlayer/core';
|
|
3
|
+
import { DeepTransformContent } from '../plugins';
|
|
4
|
+
export declare const useDictionary: <T extends Dictionary>(dictionary: T, locale?: LocalesValues) => DeepTransformContent<T["content"]>;
|
|
5
|
+
//# sourceMappingURL=useDictionary.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useDictionary.d.ts","sourceRoot":"","sources":["../../../src/client/useDictionary.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEjD,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAGlD,eAAO,MAAM,aAAa,GAAI,CAAC,SAAS,UAAU,EAChD,YAAY,CAAC,EACb,SAAS,aAAa,KACrB,oBAAoB,CAAC,CAAC,CAAC,SAAS,CAAC,CAWnC,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { LocalesValues } from '@intlayer/config/client';
|
|
2
|
+
import type { Dictionary, DictionaryKeys, LanguageContent } from '@intlayer/core';
|
|
3
|
+
/**
|
|
4
|
+
* On the server side, Hook that transform a dictionary and return the content
|
|
5
|
+
*
|
|
6
|
+
* If the locale is not provided, it will use the locale from the client context
|
|
7
|
+
*/
|
|
8
|
+
export declare const useDictionaryDynamic: <T extends Dictionary, K extends DictionaryKeys>(dictionaryPromise: LanguageContent<() => Promise<T>>, key: K, locale?: LocalesValues) => import("@intlayer/core").DeepTransformContent<T["content"], import("..").IInterpreterPluginState>;
|
|
9
|
+
//# sourceMappingURL=useDictionaryDynamic.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useDictionaryDynamic.d.ts","sourceRoot":"","sources":["../../../src/client/useDictionaryDynamic.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,KAAK,EACV,UAAU,EACV,cAAc,EACd,eAAe,EAChB,MAAM,gBAAgB,CAAC;AAKxB;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,GAC/B,CAAC,SAAS,UAAU,EACpB,CAAC,SAAS,cAAc,EAExB,mBAAmB,eAAe,CAAC,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC,EACpD,KAAK,CAAC,EACN,SAAS,aAAa,sGAYvB,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { LocalesValues } from '@intlayer/config/client';
|
|
2
|
+
import { DictionaryKeys } from '@intlayer/core';
|
|
3
|
+
import type { IntlayerDictionaryTypesConnector } from 'intlayer';
|
|
4
|
+
import { DeepTransformContent } from '../plugins';
|
|
5
|
+
/** guard utility — true only for objects generated by `renderIntlayerNode()` */
|
|
6
|
+
export declare const isUpdatableNode: (val: unknown) => val is {
|
|
7
|
+
__update: (n: unknown) => void;
|
|
8
|
+
};
|
|
9
|
+
export declare const useIntlayer: <T extends DictionaryKeys>(key: T, locale?: LocalesValues) => DeepTransformContent<IntlayerDictionaryTypesConnector[T]["content"]>;
|
|
10
|
+
//# sourceMappingURL=useIntlayer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useIntlayer.d.ts","sourceRoot":"","sources":["../../../src/client/useIntlayer.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEhD,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,UAAU,CAAC;AAEjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAGlD,gFAAgF;AAChF,eAAO,MAAM,eAAe,GAC1B,KAAK,OAAO,KACX,GAAG,IAAI;IAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI,CAAA;CAGG,CAAC;AAE9C,eAAO,MAAM,WAAW,GAAI,CAAC,SAAS,cAAc,EAClD,KAAK,CAAC,EACN,SAAS,aAAa,KACrB,oBAAoB,CAAC,gCAAgC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAYrE,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A "synchronous" loader for a dynamically‐imported JSON (or anything).
|
|
3
|
+
*
|
|
4
|
+
* - Immediately returns a reactive signal so that Angular can properly track changes.
|
|
5
|
+
* - When the Promise resolves, it replaces the signal's value with the real data.
|
|
6
|
+
*/
|
|
7
|
+
export declare const useLoadDynamic: <T extends Record<string, any>>(key: string, promise: Promise<T>) => T;
|
|
8
|
+
//# sourceMappingURL=useLoadDynamic.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useLoadDynamic.d.ts","sourceRoot":"","sources":["../../../src/client/useLoadDynamic.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AACH,eAAO,MAAM,cAAc,GAAI,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC1D,KAAK,MAAM,EACX,SAAS,OAAO,CAAC,CAAC,CAAC,KAClB,CA0BF,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { LocalesValues } from '@intlayer/config/client';
|
|
2
|
+
type useLocaleProps = {
|
|
3
|
+
onLocaleChange?: (locale: LocalesValues) => void;
|
|
4
|
+
};
|
|
5
|
+
/**
|
|
6
|
+
* On the client side, composable to get the current locale and all related fields
|
|
7
|
+
*/
|
|
8
|
+
export declare const useLocale: ({ onLocaleChange }?: useLocaleProps) => {
|
|
9
|
+
locale: import("@angular/core").Signal<import("intlayer").Locales>;
|
|
10
|
+
defaultLocale: import("intlayer").Locales;
|
|
11
|
+
availableLocales: import("intlayer").Locales[];
|
|
12
|
+
setLocale: (newLocale: LocalesValues) => void;
|
|
13
|
+
};
|
|
14
|
+
export {};
|
|
15
|
+
//# sourceMappingURL=useLocale.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useLocale.d.ts","sourceRoot":"","sources":["../../../src/client/useLocale.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAI7D,KAAK,cAAc,GAAG;IACpB,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,CAAC;CAClD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,SAAS,GAAI,qBAAoB,cAAmB;;;;2BASjC,aAAa;CAmB5C,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { LocalesValues } from '@intlayer/config/client';
|
|
2
|
+
/**
|
|
3
|
+
* Get the locale cookie
|
|
4
|
+
*/
|
|
5
|
+
export declare const localeCookie: LocalesValues | undefined;
|
|
6
|
+
/**
|
|
7
|
+
* Set the locale cookie
|
|
8
|
+
*/
|
|
9
|
+
export declare const setLocaleCookie: (locale: LocalesValues) => void;
|
|
10
|
+
/**
|
|
11
|
+
* Hook that provides the locale cookie and a function to set it
|
|
12
|
+
*/
|
|
13
|
+
export declare const useLocaleCookie: () => {
|
|
14
|
+
localeCookie: LocalesValues;
|
|
15
|
+
setLocaleCookie: (locale: LocalesValues) => void;
|
|
16
|
+
};
|
|
17
|
+
//# sourceMappingURL=useLocaleCookie.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useLocaleCookie.d.ts","sourceRoot":"","sources":["../../../src/client/useLocaleCookie.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAc7D;;GAEG;AACH,eAAO,MAAM,YAAY,EACrB,aAAa,GACb,SAAS,CAAC;AAEd;;GAEG;AACH,eAAO,MAAM,eAAe,GAAI,QAAQ,aAAa,SAEpD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,eAAe;;8BAPY,aAAa;CAUnD,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { type NodeProps } from '@intlayer/core';
|
|
2
|
+
/**
|
|
3
|
+
* Combine your NodeProps (which include dictionaryKey & keyPath)
|
|
4
|
+
* with any other div-like attributes.
|
|
5
|
+
*/
|
|
6
|
+
export interface ContentSelectorWrapperProps extends NodeProps {
|
|
7
|
+
[key: string]: any;
|
|
8
|
+
}
|
|
9
|
+
export declare class ContentSelectorWrapperComponent {
|
|
10
|
+
dictionaryKey: string;
|
|
11
|
+
keyPath: any[];
|
|
12
|
+
private focusDictionary;
|
|
13
|
+
private editorEnabled;
|
|
14
|
+
constructor();
|
|
15
|
+
isSelected: import("@angular/core").Signal<boolean>;
|
|
16
|
+
enabled: import("@angular/core").Signal<boolean>;
|
|
17
|
+
handleSelect(): void;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=ContentSelectorWrapper.component.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ContentSelectorWrapper.component.d.ts","sourceRoot":"","sources":["../../../src/editor/ContentSelectorWrapper.component.ts"],"names":[],"mappings":"AAEA,OAAO,EAAiB,KAAK,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAM/D;;;GAGG;AACH,MAAM,WAAW,2BAA4B,SAAQ,SAAS;IAC5D,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB;AAED,qBAea,+BAA+B;IACjC,aAAa,EAAG,MAAM,CAAC;IACvB,OAAO,EAAG,GAAG,EAAE,CAAC;IAGzB,OAAO,CAAC,eAAe,CAAwB;IAC/C,OAAO,CAAC,aAAa,CAAsB;;IAO3C,UAAU,0CAOP;IAEH,OAAO,0CAAgD;IAGvD,YAAY;CAMb"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { Locales } from '@intlayer/config/client';
|
|
2
|
+
import { type KeyPath } from '@intlayer/core';
|
|
3
|
+
export interface EditedContentRendererProps {
|
|
4
|
+
dictionaryKey: string;
|
|
5
|
+
keyPath: KeyPath[];
|
|
6
|
+
locale?: Locales;
|
|
7
|
+
}
|
|
8
|
+
export declare class EditedContentRendererComponent {
|
|
9
|
+
dictionaryKey: string;
|
|
10
|
+
keyPath: KeyPath[];
|
|
11
|
+
locale?: Locales;
|
|
12
|
+
private fallback;
|
|
13
|
+
private rawContent;
|
|
14
|
+
/**
|
|
15
|
+
* Object → getContent → string, same as the React version.
|
|
16
|
+
*/
|
|
17
|
+
renderedContent: import("@angular/core").Signal<string>;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=EditedContentRenderer.component.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EditedContentRenderer.component.d.ts","sourceRoot":"","sources":["../../../src/editor/EditedContentRenderer.component.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAA2B,KAAK,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAGvE,MAAM,WAAW,0BAA0B;IACzC,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,OAAO,EAAE,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,qBAMa,8BAA8B;IAChC,aAAa,EAAG,MAAM,CAAC;IACvB,OAAO,EAAG,OAAO,EAAE,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;IAE1B,OAAO,CAAC,QAAQ,CAAc;IAE9B,OAAO,CAAC,UAAU,CAMf;IAEH;;OAEG;IACH,eAAe,yCAyBZ;CACJ"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { type NodeProps } from '@intlayer/core';
|
|
2
|
+
/**
|
|
3
|
+
* Combine your NodeProps (which include dictionaryKey & keyPath)
|
|
4
|
+
* with any other div-like attributes.
|
|
5
|
+
*/
|
|
6
|
+
export interface EditorSelectorRendererProps extends NodeProps {
|
|
7
|
+
[key: string]: any;
|
|
8
|
+
}
|
|
9
|
+
export declare class EditorSelectorRendererComponent {
|
|
10
|
+
dictionaryKey: string;
|
|
11
|
+
keyPath: any[];
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=EditorSelectorRenderer.component.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EditorSelectorRenderer.component.d.ts","sourceRoot":"","sources":["../../../src/editor/EditorSelectorRenderer.component.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAIhD;;;GAGG;AACH,MAAM,WAAW,2BAA4B,SAAQ,SAAS;IAC5D,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB;AAED,qBAsBa,+BAA+B;IACjC,aAAa,EAAG,MAAM,CAAC;IACvB,OAAO,EAAG,GAAG,EAAE,CAAC;CAC1B"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Injector } from '@angular/core';
|
|
2
|
+
import type { Dictionary } from '@intlayer/core';
|
|
3
|
+
type ChangedContent = {
|
|
4
|
+
content: Record<Dictionary['key'], Dictionary>;
|
|
5
|
+
setContent: (key: Dictionary['key'], newValue: Dictionary['content']) => void;
|
|
6
|
+
};
|
|
7
|
+
export declare const createChangedContentClient: () => ChangedContent;
|
|
8
|
+
/**
|
|
9
|
+
* Helper to install the Intlayer provider into the injector
|
|
10
|
+
*/
|
|
11
|
+
export declare const installChangedContent: (injector: Injector) => void;
|
|
12
|
+
export declare const useChangedContent: () => ChangedContent;
|
|
13
|
+
export {};
|
|
14
|
+
//# sourceMappingURL=changedContent.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"changedContent.d.ts","sourceRoot":"","sources":["../../../src/editor/changedContent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAU,MAAM,eAAe,CAAC;AACjD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AASjD,KAAK,cAAc,GAAG;IACpB,OAAO,EAAE,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC,CAAC;IAC/C,UAAU,EAAE,CAAC,GAAG,EAAE,UAAU,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,UAAU,CAAC,SAAS,CAAC,KAAK,IAAI,CAAC;CAC/E,CAAC;AAEF,eAAO,MAAM,0BAA0B,sBAgCtC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,qBAAqB,GAAI,UAAU,QAAQ,SAKvD,CAAC;AAEF,eAAO,MAAM,iBAAiB,sBAE7B,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { Injector } from '@angular/core';
|
|
2
|
+
/**
|
|
3
|
+
* Interface defining a cross-frame communicator
|
|
4
|
+
*/
|
|
5
|
+
export type Communicator = {
|
|
6
|
+
postMessage: typeof window.postMessage;
|
|
7
|
+
allowedOrigins?: string[];
|
|
8
|
+
senderId: string;
|
|
9
|
+
};
|
|
10
|
+
/**
|
|
11
|
+
* Configuration options for the communicator
|
|
12
|
+
*/
|
|
13
|
+
export type CommunicatorOptions = Omit<Communicator, 'senderId'>;
|
|
14
|
+
/**
|
|
15
|
+
* Creates a communicator client
|
|
16
|
+
* @param options - Options for configuring the communicator
|
|
17
|
+
*/
|
|
18
|
+
export declare const createCommunicator: (options?: CommunicatorOptions) => Communicator;
|
|
19
|
+
/**
|
|
20
|
+
* Helper to install the Intlayer communicator into the injector
|
|
21
|
+
*/
|
|
22
|
+
export declare const installCommunicator: (injector: Injector, options?: CommunicatorOptions) => void;
|
|
23
|
+
/**
|
|
24
|
+
* Hook to access the communicator
|
|
25
|
+
* @returns The communicator instance
|
|
26
|
+
*/
|
|
27
|
+
export declare const useCommunicator: () => Communicator;
|
|
28
|
+
//# sourceMappingURL=communicator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"communicator.d.ts","sourceRoot":"","sources":["../../../src/editor/communicator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAIzC;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB,WAAW,EAAE,OAAO,MAAM,CAAC,WAAW,CAAC;IACvC,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG,IAAI,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;AAwBjE;;;GAGG;AACH,eAAO,MAAM,kBAAkB,GAC7B,UAAS,mBAAiD,iBAW3D,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,mBAAmB,GAC9B,UAAU,QAAQ,EAClB,UAAS,mBAAiD,SAM3D,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,eAAe,QAAO,YAalC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"configuration.d.ts","sourceRoot":"","sources":["../../../src/editor/configuration.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,gBAAgB,YAoB5B,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
type AnyFn = (...args: any[]) => any;
|
|
2
|
+
export type SharedComposableReturn<T extends AnyFn = AnyFn> = T;
|
|
3
|
+
/**
|
|
4
|
+
* Angular replacement for Vue's tryOnScopeDispose
|
|
5
|
+
* Uses Angular's DestroyRef to handle cleanup when the injection context is destroyed
|
|
6
|
+
*/
|
|
7
|
+
export declare function tryOnScopeDispose(fn: () => void): boolean;
|
|
8
|
+
/**
|
|
9
|
+
* Angular equivalent of Vue's createSharedComposable
|
|
10
|
+
* Creates a singleton pattern for services/composables
|
|
11
|
+
*/
|
|
12
|
+
export declare const createSharedComposable: <Fn extends AnyFn>(composable: Fn) => SharedComposableReturn<Fn>;
|
|
13
|
+
export {};
|
|
14
|
+
//# sourceMappingURL=createSharedComposable.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createSharedComposable.d.ts","sourceRoot":"","sources":["../../../src/editor/createSharedComposable.ts"],"names":[],"mappings":"AAEA,KAAK,KAAK,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC;AAErC,MAAM,MAAM,sBAAsB,CAAC,CAAC,SAAS,KAAK,GAAG,KAAK,IAAI,CAAC,CAAC;AAEhE;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,MAAM,IAAI,WAY/C;AAED;;;GAGG;AACH,eAAO,MAAM,sBAAsB,GAAI,EAAE,SAAS,KAAK,EACrD,YAAY,EAAE,KACb,sBAAsB,CAAC,EAAE,CA4B3B,CAAC"}
|