solid-intlayer 8.12.2 → 8.12.4-canary.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.
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});var e=({children:e,value:t,additionalProps:n})=>{let r=[e];if(r.value=t,n)for(let e in n)r[e]=n[e];return new Proxy(r,{get(e,n,r){if(n===`value`)return t;if(n===Symbol.toPrimitive)return e=>e===`number`?Number(t):t??``;if(n===`toString`)return()=>String(t??``);if(n===`valueOf`)return()=>t;if(t!=null&&typeof n==`string`&&n!==`constructor`&&n!==`length`&&!/^\d+$/.test(n)){let e=Object(t);if(n in e){let r=e[n];return typeof r==`function`?r.bind(t):r}}return Reflect.get(e,n,r)}})};exports.renderIntlayerNode=e;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./proxyKeys.cjs");var t=({children:t,value:n,additionalProps:r})=>{let i=[t];if(i.value=n,r)for(let e in r)i[e]=r[e];return new Proxy(i,{get(t,r,i){if(r===e.PROXY_RESERVED_KEYS.value)return n;if(r===Symbol.toPrimitive)return e=>e===`number`?Number(n):n??``;if(r===e.PROXY_RESERVED_KEYS.toString)return()=>String(n??``);if(r===e.PROXY_RESERVED_KEYS.valueOf)return()=>n;if(r===e.PROXY_RESERVED_KEYS.slice)return Reflect.get(t,r,i);if(n!=null&&typeof r==`string`&&r!==e.PROXY_RESERVED_KEYS.constructor&&r!==e.PROXY_RESERVED_KEYS.length&&!e.isArrayIndexProperty(r)){let e=Object(n);if(r in e){let t=Reflect.get(e,r);return typeof t==`function`?t.bind(n):t}}return Reflect.get(t,r,i)}})};exports.renderIntlayerNode=t;
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./useLoadDynamic.cjs"),t=require("./IntlayerProvider.cjs"),n=require("./useDictionary.cjs");let r=require("@intlayer/config/built"),i=require("solid-js");var a=(a,o,s)=>{let{locale:c}=(0,i.useContext)(t.IntlayerClientContext)??{},l=r.internationalization.defaultLocale,u=s??c?.()??l;return n.useDictionary(e.useLoadDynamic(`${String(o)}.${u}`,a[u]?.()),u)};exports.useDictionaryDynamic=a;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./useLoadDynamic.cjs"),t=require("./IntlayerProvider.cjs"),n=require("./useDictionary.cjs");let r=require("@intlayer/config/built"),i=require("solid-js");var a=(a,o,s)=>{let{locale:c}=(0,i.useContext)(t.IntlayerClientContext)??{},l=r.internationalization.defaultLocale,u=a,d=String(o),f=()=>s??c?.()??l;return n.useDictionary(e.useLoadDynamic(()=>{let e=f();return{cacheKey:`${d}.${e}`,locale:e}},({locale:e})=>{let t=u[e];return t?t():Promise.reject(Error(`No dynamic dictionary loader found for key "${String(o)}" and locale "${e}".`))}),s)};exports.useDictionaryDynamic=a;
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});var e=e=>{let t=`pending`,n,r=e.then(e=>{t=`success`,n=e},e=>{t=`error`,n=e});return{read(){if(t===`pending`)throw r;if(t===`error`)throw n;return n}}},t=new Map,n=(n,r)=>(t.has(n)||t.set(n,e(r)),t.get(n).read());exports.useLoadDynamic=n;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../proxyKeys.cjs");let t=require("solid-js");var n=Symbol(`NO_PENDING_PRIMITIVE_FALLBACK`),r=new Map,i=e=>typeof e==`string`?e:e.cacheKey,a=(e,t)=>t.reduce((e,t)=>{if(e!=null)return Reflect.get(Object(e),t)},e),o=(e,t)=>typeof e==`function`?e(t):e,s=(e,t)=>{let n=i(e),a=r.get(n);if(a?.status===`success`)return a.value;if(a?.status===`pending`)return a.promise;let s=o(t,e).then(e=>(r.set(n,{status:`success`,value:e}),e),e=>{throw r.delete(n),e});return r.set(n,{status:`pending`,promise:s}),s},c=(e,t)=>typeof t==`function`?t.bind(e):t,l=t=>t===Symbol.toPrimitive||t===e.PROXY_RESERVED_KEYS.toString?()=>``:t===e.PROXY_RESERVED_KEYS.valueOf?()=>void 0:t===e.PROXY_RESERVED_KEYS.value?``:n,u=t=>{let r=i=>new Proxy(()=>void 0,{get(o,s){if(s===e.PROXY_RESERVED_KEYS.promiseThen)return;let u=a(t(),i);if(u!=null)return s===Symbol.toPrimitive?()=>u:c(u,Reflect.get(Object(u),s));let d=l(s);return d===n?r([...i,s]):d},apply(e,n,o){let s=a(t(),i);return typeof s==`function`?Reflect.apply(s,n,o):o.length===0?``:r(i)}});return r([])},d=(e,n)=>{let[r]=(0,t.createResource)(()=>typeof e==`function`?e():e,e=>s(e,n));return u(()=>r())};exports.useLoadDynamic=d;
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./runtime.cjs");var t=async(t=``,n={})=>{let{parseMarkdown:r}=await import(`@intlayer/core/markdown`),{components:i,namedCodesToUnicode:a,sanitizer:o,slugify:s,...c}=n;return r(t,{runtime:e.default,components:i,namedCodesToUnicode:a,sanitizer:o,slugify:s},c)},n=async(t=``,n={})=>{if(typeof t==`string`){let{compileWithOptions:r}=await import(`@intlayer/core/markdown`);return r(t,e.default,n)}let{renderMarkdownAst:r}=await import(`@intlayer/core/markdown`),{components:i,namedCodesToUnicode:a,sanitizer:o,slugify:s,...c}=n;return r(t,{runtime:e.default,components:i,namedCodesToUnicode:a,sanitizer:o,slugify:s},c)},r=n,i=n;exports.compile=i,exports.compileMarkdown=n,exports.compiler=r,exports.parseMarkdown=t;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./runtime.cjs");var t=async(t=``,n={})=>{let{parseMarkdown:r}=await import(`@intlayer/core/markdown`),{components:i,namedCodesToUnicode:a,sanitizer:o,slugify:s,...c}=n;return r(t,{runtime:e.default,components:i,namedCodesToUnicode:a,sanitizer:o,slugify:s},c)},n=async(t=``,n={})=>{if(typeof t==`string`){let{compileWithOptions:r}=await import(`@intlayer/core/markdown`);return r(t,e.default,n)}let{renderMarkdownAst:r}=await import(`@intlayer/core/markdown`),{components:i,namedCodesToUnicode:a,sanitizer:o,slugify:s,...c}=n;return r(t,{runtime:e.default,components:i,namedCodesToUnicode:a,sanitizer:o,slugify:s},c)};exports.compileMarkdown=n,exports.parseMarkdown=t;
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./compiler.cjs"),t=require("./MarkdownProvider.cjs"),n=require("./MarkdownRenderer.cjs");exports.MarkdownProvider=t.MarkdownProvider,exports.MarkdownRenderer=n.MarkdownRenderer,exports.compile=e.compile,exports.compileMarkdown=e.compileMarkdown,exports.compiler=e.compiler,exports.parseMarkdown=e.parseMarkdown,exports.renderMarkdown=n.renderMarkdown,exports.useMarkdown=t.useMarkdown,exports.useMarkdownRenderer=n.useMarkdownRenderer;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./compiler.cjs"),t=require("./MarkdownProvider.cjs"),n=require("./MarkdownRenderer.cjs");exports.MarkdownContext=t.MarkdownContext,exports.MarkdownMetadataRenderer=n.MarkdownMetadataRenderer,exports.MarkdownProvider=t.MarkdownProvider,exports.MarkdownRenderer=n.MarkdownRenderer,exports.compileMarkdown=e.compileMarkdown,exports.parseMarkdown=e.parseMarkdown,exports.renderMarkdown=n.renderMarkdown,exports.useMarkdown=t.useMarkdown,exports.useMarkdownRenderer=n.useMarkdownRenderer;
@@ -0,0 +1 @@
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});var e={constructor:`constructor`,length:`length`,slice:`slice`,promiseThen:`then`,toString:`toString`,valueOf:`valueOf`,value:`value`},t=e=>typeof e==`string`&&/^\d+$/.test(e);exports.PROXY_RESERVED_KEYS=e,exports.isArrayIndexProperty=t;
@@ -1,21 +1,23 @@
1
+ import { PROXY_RESERVED_KEYS as e, isArrayIndexProperty as t } from "./proxyKeys.mjs";
1
2
  //#region src/IntlayerNode.tsx
2
- var e = ({ children: e, value: t, additionalProps: n }) => {
3
- let r = [e];
4
- if (r.value = t, n) for (let e in n) r[e] = n[e];
5
- return new Proxy(r, { get(e, n, r) {
6
- if (n === "value") return t;
7
- if (n === Symbol.toPrimitive) return (e) => e === "number" ? Number(t) : t ?? "";
8
- if (n === "toString") return () => String(t ?? "");
9
- if (n === "valueOf") return () => t;
10
- if (t != null && typeof n == "string" && n !== "constructor" && n !== "length" && !/^\d+$/.test(n)) {
11
- let e = Object(t);
12
- if (n in e) {
13
- let r = e[n];
14
- return typeof r == "function" ? r.bind(t) : r;
3
+ var n = ({ children: n, value: r, additionalProps: i }) => {
4
+ let a = [n];
5
+ if (a.value = r, i) for (let e in i) a[e] = i[e];
6
+ return new Proxy(a, { get(n, i, a) {
7
+ if (i === e.value) return r;
8
+ if (i === Symbol.toPrimitive) return (e) => e === "number" ? Number(r) : r ?? "";
9
+ if (i === e.toString) return () => String(r ?? "");
10
+ if (i === e.valueOf) return () => r;
11
+ if (i === e.slice) return Reflect.get(n, i, a);
12
+ if (r != null && typeof i == "string" && i !== e.constructor && i !== e.length && !t(i)) {
13
+ let e = Object(r);
14
+ if (i in e) {
15
+ let t = Reflect.get(e, i);
16
+ return typeof t == "function" ? t.bind(r) : t;
15
17
  }
16
18
  }
17
- return Reflect.get(e, n, r);
19
+ return Reflect.get(n, i, a);
18
20
  } });
19
21
  };
20
22
  //#endregion
21
- export { e as renderIntlayerNode };
23
+ export { n as renderIntlayerNode };
@@ -5,8 +5,17 @@ import { internationalization as r } from "@intlayer/config/built";
5
5
  import { useContext as i } from "solid-js";
6
6
  //#region src/client/useDictionaryDynamic.ts
7
7
  var a = (a, o, s) => {
8
- let { locale: c } = i(t) ?? {}, l = r.defaultLocale, u = s ?? c?.() ?? l;
9
- return n(e(`${String(o)}.${u}`, a[u]?.()), u);
8
+ let { locale: c } = i(t) ?? {}, l = r.defaultLocale, u = a, d = String(o), f = () => s ?? c?.() ?? l;
9
+ return n(e(() => {
10
+ let e = f();
11
+ return {
12
+ cacheKey: `${d}.${e}`,
13
+ locale: e
14
+ };
15
+ }, ({ locale: e }) => {
16
+ let t = u[e];
17
+ return t ? t() : Promise.reject(/* @__PURE__ */ Error(`No dynamic dictionary loader found for key "${String(o)}" and locale "${e}".`));
18
+ }), s);
10
19
  };
11
20
  //#endregion
12
21
  export { a as useDictionaryDynamic };
@@ -1,15 +1,40 @@
1
+ import { PROXY_RESERVED_KEYS as e } from "../proxyKeys.mjs";
2
+ import { createResource as t } from "solid-js";
1
3
  //#region src/client/useLoadDynamic.ts
2
- var e = (e) => {
3
- let t = "pending", n, r = e.then((e) => {
4
- t = "success", n = e;
5
- }, (e) => {
6
- t = "error", n = e;
4
+ var n = Symbol("NO_PENDING_PRIMITIVE_FALLBACK"), r = /* @__PURE__ */ new Map(), i = (e) => typeof e == "string" ? e : e.cacheKey, a = (e, t) => t.reduce((e, t) => {
5
+ if (e != null) return Reflect.get(Object(e), t);
6
+ }, e), o = (e, t) => typeof e == "function" ? e(t) : e, s = (e, t) => {
7
+ let n = i(e), a = r.get(n);
8
+ if (a?.status === "success") return a.value;
9
+ if (a?.status === "pending") return a.promise;
10
+ let s = o(t, e).then((e) => (r.set(n, {
11
+ status: "success",
12
+ value: e
13
+ }), e), (e) => {
14
+ throw r.delete(n), e;
7
15
  });
8
- return { read() {
9
- if (t === "pending") throw r;
10
- if (t === "error") throw n;
11
- return n;
12
- } };
13
- }, t = /* @__PURE__ */ new Map(), n = (n, r) => (t.has(n) || t.set(n, e(r)), t.get(n).read());
16
+ return r.set(n, {
17
+ status: "pending",
18
+ promise: s
19
+ }), s;
20
+ }, c = (e, t) => typeof t == "function" ? t.bind(e) : t, l = (t) => t === Symbol.toPrimitive || t === e.toString ? () => "" : t === e.valueOf ? () => void 0 : t === e.value ? "" : n, u = (t) => {
21
+ let r = (i) => new Proxy(() => void 0, {
22
+ get(o, s) {
23
+ if (s === e.promiseThen) return;
24
+ let u = a(t(), i);
25
+ if (u != null) return s === Symbol.toPrimitive ? () => u : c(u, Reflect.get(Object(u), s));
26
+ let d = l(s);
27
+ return d === n ? r([...i, s]) : d;
28
+ },
29
+ apply(e, n, o) {
30
+ let s = a(t(), i);
31
+ return typeof s == "function" ? Reflect.apply(s, n, o) : o.length === 0 ? "" : r(i);
32
+ }
33
+ });
34
+ return r([]);
35
+ }, d = (e, n) => {
36
+ let [r] = t(() => typeof e == "function" ? e() : e, (e) => s(e, n));
37
+ return u(() => r());
38
+ };
14
39
  //#endregion
15
- export { n as useLoadDynamic };
40
+ export { d as useLoadDynamic };
@@ -22,6 +22,6 @@ var t = async (t = "", n = {}) => {
22
22
  sanitizer: o,
23
23
  slugify: s
24
24
  }, c);
25
- }, r = n, i = n;
25
+ };
26
26
  //#endregion
27
- export { i as compile, n as compileMarkdown, r as compiler, t as parseMarkdown };
27
+ export { n as compileMarkdown, t as parseMarkdown };
@@ -1,4 +1,4 @@
1
- import { compile as e, compileMarkdown as t, compiler as n, parseMarkdown as r } from "./compiler.mjs";
2
- import { MarkdownProvider as i, useMarkdown as a } from "./MarkdownProvider.mjs";
3
- import { MarkdownRenderer as o, renderMarkdown as s, useMarkdownRenderer as c } from "./MarkdownRenderer.mjs";
4
- export { i as MarkdownProvider, o as MarkdownRenderer, e as compile, t as compileMarkdown, n as compiler, r as parseMarkdown, s as renderMarkdown, a as useMarkdown, c as useMarkdownRenderer };
1
+ import { compileMarkdown as e, parseMarkdown as t } from "./compiler.mjs";
2
+ import { MarkdownContext as n, MarkdownProvider as r, useMarkdown as i } from "./MarkdownProvider.mjs";
3
+ import { MarkdownMetadataRenderer as a, MarkdownRenderer as o, renderMarkdown as s, useMarkdownRenderer as c } from "./MarkdownRenderer.mjs";
4
+ export { n as MarkdownContext, a as MarkdownMetadataRenderer, r as MarkdownProvider, o as MarkdownRenderer, e as compileMarkdown, t as parseMarkdown, s as renderMarkdown, i as useMarkdown, c as useMarkdownRenderer };
@@ -0,0 +1,12 @@
1
+ //#region src/proxyKeys.ts
2
+ var e = {
3
+ constructor: "constructor",
4
+ length: "length",
5
+ slice: "slice",
6
+ promiseThen: "then",
7
+ toString: "toString",
8
+ valueOf: "valueOf",
9
+ value: "value"
10
+ }, t = (e) => typeof e == "string" && /^\d+$/.test(e);
11
+ //#endregion
12
+ export { e as PROXY_RESERVED_KEYS, t as isArrayIndexProperty };
@@ -7,9 +7,7 @@ export type IntlayerNode<T = NodeProps['children'], AdditionalProps = Record<str
7
7
  type RenderIntlayerNodeProps<T> = ParentProps<{
8
8
  value: T;
9
9
  children: JSX.Element;
10
- additionalProps?: {
11
- [key: string]: any;
12
- };
10
+ additionalProps?: Record<string, unknown>;
13
11
  }>;
14
12
  export declare const renderIntlayerNode: <T>({ children, value, additionalProps, }: RenderIntlayerNodeProps<T>) => IntlayerNode<T>;
15
13
  export {};
@@ -1,7 +1,7 @@
1
1
  import { Dictionary } from '@intlayer/types/dictionary';
2
2
  import { DictionaryKeys, LocalesValues, StrictModeLocaleMap } from '@intlayer/types/module_augmentation';
3
3
  /**
4
- * On the server side, Hook that transform a dictionary and return the content
4
+ * On the client side, Hook that transform a dictionary and return the content
5
5
  *
6
6
  * If the locale is not provided, it will use the locale from the client context
7
7
  */
@@ -1 +1,14 @@
1
- export declare const useLoadDynamic: <T>(key: string, promise: Promise<T>) => T;
1
+ type DynamicSource = string | {
2
+ cacheKey: string;
3
+ };
4
+ type DynamicKey<T extends DynamicSource> = T | (() => T);
5
+ type DynamicLoader<T, Source extends DynamicSource> = Promise<T> | ((source: Source) => Promise<T>);
6
+ /**
7
+ * Loads a dynamic value through Solid's resource system so SSR can serialize it
8
+ * and hydration can read it synchronously. A function source is reactive and
9
+ * lets Solid refetch when tracked dependencies change. The return is
10
+ * proxy-backed (not a plain accessor) because Intlayer content is read
11
+ * synchronously.
12
+ */
13
+ export declare const useLoadDynamic: <T, Source extends DynamicSource = string>(key: DynamicKey<Source>, loader: DynamicLoader<T, Source>) => T;
14
+ export {};
@@ -1,14 +1,43 @@
1
1
  import { CompileOptions, ParsedMarkdown } from '@intlayer/core/markdown';
2
2
  import { JSX } from 'solid-js';
3
3
  /**
4
- * Compile markdown to Solid JSX elements.
5
- * Lazily imports the heavy markdown library to enable code splitting.
4
+ * Intermediate AST produced by `parseMarkdown`.
5
+ * Pass this to `compileMarkdown` to skip re-parsing when the same content is
6
+ * rendered multiple times.
6
7
  */
7
8
  export type { ParsedMarkdown };
9
+ /**
10
+ * **Step 1 of 2 — parse only (async).**
11
+ * Lazily imports the markdown library (enabling code splitting), then converts
12
+ * a raw markdown string into a `ParsedMarkdown` AST without rendering any Solid
13
+ * JSX. Use this when you need to:
14
+ * - Cache the parsed result and render it several times with different options.
15
+ * - Inspect or transform the AST before rendering.
16
+ * - Defer the render step to a later point.
17
+ *
18
+ * @param markdown - The markdown source string.
19
+ * @param options - Options that affect parsing (sanitizer, slugify, …).
20
+ * @returns A promise resolving to a `ParsedMarkdown` AST.
21
+ *
22
+ * @example
23
+ * ```ts
24
+ * const ast = await parseMarkdown('# Hello **world**');
25
+ * const element = await compileMarkdown(ast, { forceBlock: true });
26
+ * ```
27
+ */
8
28
  export declare const parseMarkdown: (markdown?: string, options?: CompileOptions) => Promise<ParsedMarkdown>;
9
- export declare const compileMarkdown: (input?: string | ParsedMarkdown, options?: CompileOptions) => Promise<JSX.Element>;
10
29
  /**
11
- * Solid component that renders markdown to JSX.
30
+ * **Steps 1 + 2 parse and render in one shot (async).**
31
+ * Lazily imports the markdown library, then accepts a raw markdown string or a
32
+ * pre-parsed `ParsedMarkdown` AST and returns a Solid JSX element.
33
+ *
34
+ * @param input - Markdown string or pre-parsed AST.
35
+ * @param options - Rendering options (custom components, sanitizer, slugify, …).
36
+ * @returns A promise resolving to a Solid JSX element.
37
+ *
38
+ * @example
39
+ * ```ts
40
+ * const element = await compileMarkdown('# Hello **world**');
41
+ * ```
12
42
  */
13
- export declare const compiler: (input?: string | ParsedMarkdown, options?: CompileOptions) => Promise<JSX.Element>;
14
- export declare const compile: (input?: string | ParsedMarkdown, options?: CompileOptions) => Promise<JSX.Element>;
43
+ export declare const compileMarkdown: (input?: string | ParsedMarkdown, options?: CompileOptions) => Promise<JSX.Element>;
@@ -1,3 +1,3 @@
1
- export * from './compiler';
2
- export { MarkdownProvider, type MarkdownProviderOptions, useMarkdown, } from './MarkdownProvider';
3
- export { MarkdownRenderer, type MarkdownRendererProps, renderMarkdown, useMarkdownRenderer, } from './MarkdownRenderer';
1
+ export { compileMarkdown, type ParsedMarkdown, parseMarkdown, } from './compiler';
2
+ export { MarkdownContext, MarkdownProvider, type MarkdownProviderOptions, type MarkdownProviderProps, useMarkdown, } from './MarkdownProvider';
3
+ export { MarkdownMetadataRenderer, type MarkdownMetadataRendererProps, MarkdownRenderer, type MarkdownRendererProps, type RenderMarkdownOptions, renderMarkdown, useMarkdownRenderer, } from './MarkdownRenderer';
@@ -0,0 +1,18 @@
1
+ /**
2
+ * String property keys the Intlayer content proxies special-case instead of
3
+ * delegating to the wrapped value. `Symbol.toPrimitive` is also reserved but,
4
+ * being a symbol, is handled inline in each proxy.
5
+ */
6
+ export declare const PROXY_RESERVED_KEYS: {
7
+ readonly constructor: "constructor";
8
+ readonly length: "length";
9
+ readonly slice: "slice";
10
+ readonly promiseThen: "then";
11
+ readonly toString: "toString";
12
+ readonly valueOf: "valueOf";
13
+ readonly value: "value";
14
+ };
15
+ /**
16
+ * Returns whether a proxy property is a stringified array index.
17
+ */
18
+ export declare const isArrayIndexProperty: (property: PropertyKey) => boolean;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "solid-intlayer",
3
- "version": "8.12.2",
3
+ "version": "8.12.4-canary.0",
4
4
  "private": false,
5
5
  "description": "Easily internationalize i18n your Solid applications with type-safe multilingual content management.",
6
6
  "keywords": [
@@ -104,26 +104,26 @@
104
104
  "typecheck": "tsc --noEmit --project tsconfig.types.json"
105
105
  },
106
106
  "dependencies": {
107
- "@intlayer/api": "8.12.2",
108
- "@intlayer/config": "8.12.2",
109
- "@intlayer/core": "8.12.2",
110
- "@intlayer/editor": "8.12.2",
111
- "@intlayer/types": "8.12.2"
107
+ "@intlayer/api": "8.12.4-canary.0",
108
+ "@intlayer/config": "8.12.4-canary.0",
109
+ "@intlayer/core": "8.12.4-canary.0",
110
+ "@intlayer/editor": "8.12.4-canary.0",
111
+ "@intlayer/types": "8.12.4-canary.0"
112
112
  },
113
113
  "devDependencies": {
114
114
  "@solidjs/testing-library": "0.8.10",
115
115
  "@testing-library/jest-dom": "6.9.1",
116
116
  "@testing-library/user-event": "14.6.1",
117
- "@types/node": "25.9.1",
117
+ "@types/node": "25.9.2",
118
118
  "@utils/ts-config": "1.0.4",
119
119
  "@utils/ts-config-types": "1.0.4",
120
120
  "@utils/tsdown-config": "1.0.4",
121
121
  "jsdom": "29.1.1",
122
122
  "rimraf": "6.1.3",
123
- "tsdown": "0.22.1",
123
+ "tsdown": "0.21.10",
124
124
  "typescript": "6.0.3",
125
125
  "vite": "8.0.16",
126
- "vite-plugin-dts": "5.0.1",
126
+ "vite-plugin-dts": "5.0.2",
127
127
  "vite-plugin-solid": "2.11.12",
128
128
  "vitest": "4.1.8"
129
129
  },