diff --git a/_app/immutable/chunks/BbXH6iBM.js b/_app/immutable/chunks/BbXH6iBM.js deleted file mode 100644 index 7ac494896..000000000 --- a/_app/immutable/chunks/BbXH6iBM.js +++ /dev/null @@ -1 +0,0 @@ -var s;const e=((s=globalThis.__sveltekit_tihjtd)==null?void 0:s.base)??"/svelte-fluent";var t;const a=((t=globalThis.__sveltekit_tihjtd)==null?void 0:t.assets)??e;export{a,e as b}; diff --git a/_app/immutable/chunks/BtymlV4B.js b/_app/immutable/chunks/BtymlV4B.js new file mode 100644 index 000000000..2c5fe49d5 --- /dev/null +++ b/_app/immutable/chunks/BtymlV4B.js @@ -0,0 +1 @@ +var s;const t=((s=globalThis.__sveltekit_1dcp7n8)==null?void 0:s.base)??"/svelte-fluent";var e;const a=((e=globalThis.__sveltekit_1dcp7n8)==null?void 0:e.assets)??t;export{a,t as b}; diff --git a/_app/immutable/chunks/BLiMFxIK.js b/_app/immutable/chunks/BulkGmrm.js similarity index 96% rename from _app/immutable/chunks/BLiMFxIK.js rename to _app/immutable/chunks/BulkGmrm.js index ee2a52e89..9dc19a2be 100644 --- a/_app/immutable/chunks/BLiMFxIK.js +++ b/_app/immutable/chunks/BulkGmrm.js @@ -1 +1 @@ -import{t as i,a as d}from"./DU7dP48_.js";import"./C4cq9Azi.js";import{f as c,s as t,c as p,at as o,r as h}from"./HSyAO-bR.js";import{h as f}from"./CfcRz03H.js";import{R as m}from"./BbHEq2Iy.js";const g={title:"SvelteFluent"},{title:u}=g;var v=i('

The SvelteFluent object provides methods and properties for localization with svelte-fluent.

You can create the SvelteFluent object with the function.

SvelteFluent.localize

Localize a fluent message.

Parameters

NameTypeDescription
idstringIdentifier of the fluent message
argsRecord<string, FluentVariable>Interpolation arguments for the message

Return value

The localized message as a string.

',1);function F(s){var a=v(),l=c(a);l.textContent=u;var e=t(l,4),n=t(p(e),3);m(n,{name:"createSvelteFluent"}),o(),h(e);var r=t(e,6);f(r,()=>`
fluent.localize('example-message', { name: 'Example' });
`),o(8),d(s,a)}export{F as _,g as m}; +import{t as i,a as d}from"./DU7dP48_.js";import"./C4cq9Azi.js";import{f as c,s as t,c as p,at as o,r as h}from"./HSyAO-bR.js";import{h as f}from"./CfcRz03H.js";import{R as m}from"./CSU6ZshI.js";const g={title:"SvelteFluent"},{title:u}=g;var v=i('

The SvelteFluent object provides methods and properties for localization with svelte-fluent.

You can create the SvelteFluent object with the function.

SvelteFluent.localize

Localize a fluent message.

Parameters

NameTypeDescription
idstringIdentifier of the fluent message
argsRecord<string, FluentVariable>Interpolation arguments for the message

Return value

The localized message as a string.

',1);function F(s){var a=v(),l=c(a);l.textContent=u;var e=t(l,4),n=t(p(e),3);m(n,{name:"createSvelteFluent"}),o(),h(e);var r=t(e,6);f(r,()=>`
fluent.localize('example-message', { name: 'Example' });
`),o(8),d(s,a)}export{F as _,g as m}; diff --git a/_app/immutable/chunks/DYfHKpLH.js b/_app/immutable/chunks/BzgXux7P.js similarity index 96% rename from _app/immutable/chunks/DYfHKpLH.js rename to _app/immutable/chunks/BzgXux7P.js index eba800e7d..ce0583c12 100644 --- a/_app/immutable/chunks/DYfHKpLH.js +++ b/_app/immutable/chunks/BzgXux7P.js @@ -1 +1 @@ -import{t as h,a as u}from"./DU7dP48_.js";import"./C4cq9Azi.js";import{f as m,s as e,c as o,at as r,r as d}from"./HSyAO-bR.js";import{h as D}from"./CfcRz03H.js";import{R as p}from"./BbHEq2Iy.js";const v={title:"createSvelteFluent"},{title:g}=v;var b=h('

Create a new object using the specified fluent bundles.

Parameters

NameTypeDescription
bundlesFluentBundle[]Defines the fluent bundles to be be used for localization
options{onError: (msg: string) => void}Options

Return value

The object.

',1);function k(i){var a=b(),l=m(a);l.textContent=g;var t=e(l,2),c=e(o(t));p(c,{name:"SvelteFluent"}),r(),d(t);var n=e(t,2);D(n,()=>'
const fluent = createSvelteFluent(bundles, options);
');var s=e(n,8),f=e(o(s));p(f,{name:"SvelteFluent"}),r(),d(s),u(i,a)}export{k as _,v as m}; +import{t as h,a as u}from"./DU7dP48_.js";import"./C4cq9Azi.js";import{f as m,s as e,c as o,at as r,r as d}from"./HSyAO-bR.js";import{h as D}from"./CfcRz03H.js";import{R as p}from"./CSU6ZshI.js";const v={title:"createSvelteFluent"},{title:g}=v;var b=h('

Create a new object using the specified fluent bundles.

Parameters

NameTypeDescription
bundlesFluentBundle[]Defines the fluent bundles to be be used for localization
options{onError: (msg: string) => void}Options

Return value

The object.

',1);function k(i){var a=b(),l=m(a);l.textContent=g;var t=e(l,2),c=e(o(t));p(c,{name:"SvelteFluent"}),r(),d(t);var n=e(t,2);D(n,()=>'
const fluent = createSvelteFluent(bundles, options);
');var s=e(n,8),f=e(o(s));p(f,{name:"SvelteFluent"}),r(),d(s),u(i,a)}export{k as _,v as m}; diff --git a/_app/immutable/chunks/BbHEq2Iy.js b/_app/immutable/chunks/CSU6ZshI.js similarity index 82% rename from _app/immutable/chunks/BbHEq2Iy.js rename to _app/immutable/chunks/CSU6ZshI.js index 8d2cfcd52..7d024295a 100644 --- a/_app/immutable/chunks/BbHEq2Iy.js +++ b/_app/immutable/chunks/CSU6ZshI.js @@ -1 +1 @@ -import{t as m,a as s}from"./DU7dP48_.js";import{t as o,c as f,r as c}from"./HSyAO-bR.js";import{s as i}from"./Bba2NgsV.js";import{s as n}from"./CVILMKYO.js";import{b as p}from"./BbXH6iBM.js";var l=m(" ");function _(a,t){var e=l(),r=f(e,!0);c(e),o(()=>{n(e,"href",p+"/docs/"+(t.legacy?"legacy":"reference")+"/"+t.name),i(r,t.name)}),s(a,e)}export{_ as R}; +import{t as m,a as s}from"./DU7dP48_.js";import{t as o,c as f,r as c}from"./HSyAO-bR.js";import{s as i}from"./Bba2NgsV.js";import{s as n}from"./CVILMKYO.js";import{b as p}from"./BtymlV4B.js";var l=m(" ");function _(a,t){var e=l(),r=f(e,!0);c(e),o(()=>{n(e,"href",p+"/docs/"+(t.legacy?"legacy":"reference")+"/"+t.name),i(r,t.name)}),s(a,e)}export{_ as R}; diff --git a/_app/immutable/chunks/BunBbhm2.js b/_app/immutable/chunks/C_DsgZuw.js similarity index 76% rename from _app/immutable/chunks/BunBbhm2.js rename to _app/immutable/chunks/C_DsgZuw.js index 5f13e720b..a1f20926e 100644 --- a/_app/immutable/chunks/BunBbhm2.js +++ b/_app/immutable/chunks/C_DsgZuw.js @@ -1 +1 @@ -import{m as i}from"./tAksebgW.js";import{m as l}from"./DyVZAf8R.js";import{b as o}from"./BbXH6iBM.js";const c=(s,e)=>s.startsWith(e)?s.slice(e.length):s,n=(s,e)=>s.endsWith(e)?s.slice(0,-e.length):s,r=Object.fromEntries(Object.entries(Object.assign({"./Localized/+page.svelte.md":i,"./Overlay/+page.svelte.md":l})).map(([s,e])=>[n(c(s,"./"),"/+page.svelte.md"),e])),t=Object.entries(r).map(([s,e])=>({text:(e==null?void 0:e.menuTitle)??(e==null?void 0:e.title),title:e==null?void 0:e.title,href:o+"/docs/legacy/"+s}));export{t as s}; +import{m as i}from"./D18bs-Pz.js";import{m as l}from"./mu4nSBiY.js";import{b as o}from"./BtymlV4B.js";const c=(s,e)=>s.startsWith(e)?s.slice(e.length):s,n=(s,e)=>s.endsWith(e)?s.slice(0,-e.length):s,r=Object.fromEntries(Object.entries(Object.assign({"./Localized/+page.svelte.md":i,"./Overlay/+page.svelte.md":l})).map(([s,e])=>[n(c(s,"./"),"/+page.svelte.md"),e])),t=Object.entries(r).map(([s,e])=>({text:(e==null?void 0:e.menuTitle)??(e==null?void 0:e.title),title:e==null?void 0:e.title,href:o+"/docs/legacy/"+s}));export{t as s}; diff --git a/_app/immutable/chunks/De7Wx6Lc.js b/_app/immutable/chunks/ChO4W963.js similarity index 73% rename from _app/immutable/chunks/De7Wx6Lc.js rename to _app/immutable/chunks/ChO4W963.js index d7832e951..f6e66b67a 100644 --- a/_app/immutable/chunks/De7Wx6Lc.js +++ b/_app/immutable/chunks/ChO4W963.js @@ -1 +1 @@ -import{m as s}from"./AiDXwOfh.js";import{m}from"./lAnBkW51.js";import{m as o}from"./CodjaLSH.js";import{m as r}from"./BPazXxgC.js";import{m as i}from"./BLiMFxIK.js";import{m as l}from"./DYfHKpLH.js";import{m as n}from"./C9gjURsn.js";import{m as p}from"./CKnkVSe3.js";import{b as c}from"./BbXH6iBM.js";const g=(t,e)=>t.startsWith(e)?t.slice(e.length):t,v=(t,e)=>t.endsWith(e)?t.slice(0,-e.length):t,f=Object.fromEntries(Object.entries(Object.assign({"./FluentContext/+page.svelte.md":s,"./FluentProvider/+page.svelte.md":m,"./Localized/+page.svelte.md":o,"./Overlay/+page.svelte.md":r,"./SvelteFluent/+page.svelte.md":i,"./createSvelteFluent/+page.svelte.md":l,"./getFluentContext/+page.svelte.md":n,"./initFluentContext/+page.svelte.md":p})).map(([t,e])=>[v(g(t,"./"),"/+page.svelte.md"),e])),j=Object.entries(f).map(([t,e])=>({text:(e==null?void 0:e.menuTitle)??(e==null?void 0:e.title),title:e==null?void 0:e.title,href:c+"/docs/reference/"+t}));export{j as s}; +import{m as s}from"./D8B_DDTW.js";import{m}from"./lAnBkW51.js";import{m as o}from"./CodjaLSH.js";import{m as r}from"./BPazXxgC.js";import{m as i}from"./BulkGmrm.js";import{m as l}from"./BzgXux7P.js";import{m as n}from"./fxJuOqUj.js";import{m as p}from"./DBZ0V8io.js";import{b as c}from"./BtymlV4B.js";const g=(t,e)=>t.startsWith(e)?t.slice(e.length):t,v=(t,e)=>t.endsWith(e)?t.slice(0,-e.length):t,f=Object.fromEntries(Object.entries(Object.assign({"./FluentContext/+page.svelte.md":s,"./FluentProvider/+page.svelte.md":m,"./Localized/+page.svelte.md":o,"./Overlay/+page.svelte.md":r,"./SvelteFluent/+page.svelte.md":i,"./createSvelteFluent/+page.svelte.md":l,"./getFluentContext/+page.svelte.md":n,"./initFluentContext/+page.svelte.md":p})).map(([t,e])=>[v(g(t,"./"),"/+page.svelte.md"),e])),j=Object.entries(f).map(([t,e])=>({text:(e==null?void 0:e.menuTitle)??(e==null?void 0:e.title),title:e==null?void 0:e.title,href:c+"/docs/reference/"+t}));export{j as s}; diff --git a/_app/immutable/chunks/Bf6Zvjcp.js b/_app/immutable/chunks/CtiUiiFr.js similarity index 99% rename from _app/immutable/chunks/Bf6Zvjcp.js rename to _app/immutable/chunks/CtiUiiFr.js index 67c41bb95..efaf4c19b 100644 --- a/_app/immutable/chunks/Bf6Zvjcp.js +++ b/_app/immutable/chunks/CtiUiiFr.js @@ -1,4 +1,4 @@ -import{t as x,a as L}from"./DU7dP48_.js";import"./C4cq9Azi.js";import{X as E,Z as F,f as B,c as i,s as c,r as C,g as b,I,t as O,a0 as P,a1 as M,a2 as H,at as S}from"./HSyAO-bR.js";import{s as K}from"./CVILMKYO.js";import{b as N}from"./BbXH6iBM.js";import{R as w}from"./BbHEq2Iy.js";import{F as g,a as U,b as m,L as d,c as h,E as A,x as q,y as T,z as Y,A as _,B as J,D as V,G,H as X,I as Z,J as Q}from"./C6LsEgJM.js";import{i as k}from"./QfER5Q5a.js";import{b as ss}from"./DNh6f7hg.js";import{p as ns,s as as}from"./DJCR0f5C.js";function ls(o,s){E(s,!1);const n="hello = Hello, world!",a=new g("en");a.addResource(new U(n)),m(()=>h([a])),k(),d(o,{id:"hello"}),F()}const os=`
<script>
+import{t as x,a as L}from"./DU7dP48_.js";import"./C4cq9Azi.js";import{X as E,Z as F,f as B,c as i,s as c,r as C,g as b,I,t as O,a0 as P,a1 as M,a2 as H,at as S}from"./HSyAO-bR.js";import{s as K}from"./CVILMKYO.js";import{b as N}from"./BtymlV4B.js";import{R as w}from"./CSU6ZshI.js";import{F as g,a as U,b as m,L as d,c as h,E as A,x as q,y as T,z as Y,A as _,B as J,D as V,G,H as X,I as Z,J as Q}from"./C6LsEgJM.js";import{i as k}from"./QfER5Q5a.js";import{b as ss}from"./DNh6f7hg.js";import{p as ns,s as as}from"./DJCR0f5C.js";function ls(o,s){E(s,!1);const n="hello = Hello, world!",a=new g("en");a.addResource(new U(n)),m(()=>h([a])),k(),d(o,{id:"hello"}),F()}const os=`
<script>
 	import { FluentBundle, FluentResource } from '@fluent/bundle';
 	import { createSvelteFluent, initFluentContext, Localized } from '@nubolab-ffwd/svelte-fluent';
 
diff --git a/_app/immutable/chunks/tAksebgW.js b/_app/immutable/chunks/D18bs-Pz.js
similarity index 99%
rename from _app/immutable/chunks/tAksebgW.js
rename to _app/immutable/chunks/D18bs-Pz.js
index 80616ea52..f95a99367 100644
--- a/_app/immutable/chunks/tAksebgW.js
+++ b/_app/immutable/chunks/D18bs-Pz.js
@@ -1,4 +1,4 @@
-import{t as c,a as r}from"./DU7dP48_.js";import"./C4cq9Azi.js";import{X as d,Z as i,f as y,s as n,c as D,at as C,r as f}from"./HSyAO-bR.js";import{h as u}from"./CfcRz03H.js";import{R as h}from"./BbHEq2Iy.js";import{F as m,r as g,b as E,C as b,c as x,E as v}from"./C6LsEgJM.js";import{i as k}from"./QfER5Q5a.js";function F(l,s){d(s,!1);const a=new m("en");a.addResource(g),E(()=>x([a])),k(),b(l),i()}const L=`
<script>
+import{t as c,a as r}from"./DU7dP48_.js";import"./C4cq9Azi.js";import{X as d,Z as i,f as y,s as n,c as D,at as C,r as f}from"./HSyAO-bR.js";import{h as u}from"./CfcRz03H.js";import{R as h}from"./CSU6ZshI.js";import{F as m,r as g,b as E,C as b,c as x,E as v}from"./C6LsEgJM.js";import{i as k}from"./QfER5Q5a.js";function F(l,s){d(s,!1);const a=new m("en");a.addResource(g),E(()=>x([a])),k(),b(l),i()}const L=`
<script>
 	import { Localized } from '@nubolab-ffwd/svelte-fluent/legacy';
 </script>
 
diff --git a/_app/immutable/chunks/AiDXwOfh.js b/_app/immutable/chunks/D8B_DDTW.js
similarity index 99%
rename from _app/immutable/chunks/AiDXwOfh.js
rename to _app/immutable/chunks/D8B_DDTW.js
index bb54b5384..3f81dff6e 100644
--- a/_app/immutable/chunks/AiDXwOfh.js
+++ b/_app/immutable/chunks/D8B_DDTW.js
@@ -1,4 +1,4 @@
-import{t as w,a as z}from"./DU7dP48_.js";import"./C4cq9Azi.js";import{X as r,Z as D,f as $,s as e,c as p,at as g,r as c}from"./HSyAO-bR.js";import{h as _}from"./CfcRz03H.js";import{R as l}from"./BbHEq2Iy.js";import{F as i,d as S,b as y,f as R,c as d,E as C,g as T,h as q,j as L,k as P}from"./C6LsEgJM.js";import{i as u}from"./QfER5Q5a.js";function B(a,s){r(s,!1);const n=new i("en");n.addResource(S),y(()=>d([n])),u(),R(a,{}),D()}const I=`
<script>
+import{t as w,a as z}from"./DU7dP48_.js";import"./C4cq9Azi.js";import{X as r,Z as D,f as $,s as e,c as p,at as g,r as c}from"./HSyAO-bR.js";import{h as _}from"./CfcRz03H.js";import{R as l}from"./CSU6ZshI.js";import{F as i,d as S,b as y,f as R,c as d,E as C,g as T,h as q,j as L,k as P}from"./C6LsEgJM.js";import{i as u}from"./QfER5Q5a.js";function B(a,s){r(s,!1);const n=new i("en");n.addResource(S),y(()=>d([n])),u(),R(a,{}),D()}const I=`
<script>
 	import { getFluentContext } from '@nubolab-ffwd/svelte-fluent';
 	const { localize } = getFluentContext();
 </script>
diff --git a/_app/immutable/chunks/CKnkVSe3.js b/_app/immutable/chunks/DBZ0V8io.js
similarity index 95%
rename from _app/immutable/chunks/CKnkVSe3.js
rename to _app/immutable/chunks/DBZ0V8io.js
index a21d820f8..660093133 100644
--- a/_app/immutable/chunks/CKnkVSe3.js
+++ b/_app/immutable/chunks/DBZ0V8io.js
@@ -1,2 +1,2 @@
-import{t as y,a as C}from"./DU7dP48_.js";import"./C4cq9Azi.js";import{f as x,s as t,c as e,at as o,r as a}from"./HSyAO-bR.js";import{h as _}from"./CfcRz03H.js";import{R as n}from"./BbHEq2Iy.js";const F={title:"initFluentContext"},{title:k}=F;var E=y(`

Initializes a new with the given object +import{t as y,a as C}from"./DU7dP48_.js";import"./C4cq9Azi.js";import{f as x,s as t,c as e,at as o,r as a}from"./HSyAO-bR.js";import{h as _}from"./CfcRz03H.js";import{R as n}from"./CSU6ZshI.js";const F={title:"initFluentContext"},{title:k}=F;var E=y(`

Initializes a new with the given object and adds it to the svelte context.

Parameters

NameTypeDescription
fn() => SvelteFluentDefines the object to be used

Return value

The object.

`,1);function T(u){var s=E(),i=x(s);i.textContent=k;var r=t(i,2),d=t(e(r));n(d,{name:"FluentContext"});var D=t(d,2);n(D,{name:"SvelteFluent"}),o(),a(r);var p=t(r,2);_(p,()=>'
initFluentContext(() => fluent);
');var l=t(p,4),c=e(l),h=t(e(c)),v=e(h),m=t(e(v),2),b=t(e(m));n(b,{name:"SvelteFluent"}),o(),a(m),a(v),a(h),a(c),a(l);var f=t(l,4),g=t(e(f));n(g,{name:"FluentContext"}),o(),a(f),C(u,s)}export{T as _,F as m}; diff --git a/_app/immutable/chunks/Bdc8bdGj.js b/_app/immutable/chunks/Dj54AaxL.js similarity index 99% rename from _app/immutable/chunks/Bdc8bdGj.js rename to _app/immutable/chunks/Dj54AaxL.js index 286d6d9ff..d1da7eeb7 100644 --- a/_app/immutable/chunks/Bdc8bdGj.js +++ b/_app/immutable/chunks/Dj54AaxL.js @@ -1,4 +1,4 @@ -import{t as Z,a as G}from"./DU7dP48_.js";import"./C4cq9Azi.js";import{X as J,s,f as Q,Z as V,c as n,at as o,r as l}from"./HSyAO-bR.js";import{h as a}from"./CfcRz03H.js";import{s as p}from"./CVILMKYO.js";import{i as ss}from"./QfER5Q5a.js";import{R as e}from"./BbHEq2Iy.js";const as=`
<!-- src/routes/+layout.svelte -->
+import{t as Z,a as G}from"./DU7dP48_.js";import"./C4cq9Azi.js";import{X as J,s,f as Q,Z as V,c as n,at as o,r as l}from"./HSyAO-bR.js";import{h as a}from"./CfcRz03H.js";import{s as p}from"./CVILMKYO.js";import{i as ss}from"./QfER5Q5a.js";import{R as e}from"./CSU6ZshI.js";const as=`
<!-- src/routes/+layout.svelte -->
 
 <script lang="ts">
 	import { initFluentContext } from '@nubolab-ffwd/svelte-fluent';
diff --git a/_app/immutable/chunks/DKXcWinK.js b/_app/immutable/chunks/RYRP6iBn.js
similarity index 99%
rename from _app/immutable/chunks/DKXcWinK.js
rename to _app/immutable/chunks/RYRP6iBn.js
index 119924081..9f9076360 100644
--- a/_app/immutable/chunks/DKXcWinK.js
+++ b/_app/immutable/chunks/RYRP6iBn.js
@@ -1,4 +1,4 @@
-import{t as j,a as I}from"./DU7dP48_.js";import"./C4cq9Azi.js";import{s,f as W,c as a,at as e,r as o}from"./HSyAO-bR.js";import{h as n}from"./CfcRz03H.js";import{s as z}from"./CVILMKYO.js";import{b as _}from"./BbXH6iBM.js";import{R as l}from"./BbHEq2Iy.js";const N=[{rank:1,text:"Version 1",id:"version-1"},{rank:2,text:"What’s new?",id:"whats-new"},{rank:3,text:"Svelte 5 support",id:"svelte-5-support"},{rank:3,text:"Server-side localizations",id:"server-side-localizations"},{rank:3,text:"Loading .ftl files",id:"loading-ftl-files"},{rank:2,text:"Breaking changes",id:"breaking-changes"},{rank:2,text:"Migration Guide",id:"migration-guide"},{rank:3,text:"$localized store",id:"localized-store"},{rank:3,text:"FluentProvider deprecation",id:"fluentprovider-deprecation"},{rank:3,text:"Replace Localize/Overlay slots with snippets",id:"replace-localizeoverlay-slots-with-snippets"},{rank:3,text:"Continue using Localize/Overlay components with slots",id:"continue-using-localizeoverlay-components-with-slots"},{rank:3,text:"vite/rollup plugin import paths",id:"viterollup-plugin-import-paths"},{rank:3,text:"Ftl file loading",id:"ftl-file-loading"}];var G=j(`

Version 1

What’s new?

Svelte 5 support

Svelte 5 is now fully supported by svelte-fluent.

Server-side localizations

In previous versions, svelte-fluent could only be used inside of components. With the introduction +import{t as j,a as I}from"./DU7dP48_.js";import"./C4cq9Azi.js";import{s,f as W,c as a,at as e,r as o}from"./HSyAO-bR.js";import{h as n}from"./CfcRz03H.js";import{s as z}from"./CVILMKYO.js";import{b as _}from"./BtymlV4B.js";import{R as l}from"./CSU6ZshI.js";const N=[{rank:1,text:"Version 1",id:"version-1"},{rank:2,text:"What’s new?",id:"whats-new"},{rank:3,text:"Svelte 5 support",id:"svelte-5-support"},{rank:3,text:"Server-side localizations",id:"server-side-localizations"},{rank:3,text:"Loading .ftl files",id:"loading-ftl-files"},{rank:2,text:"Breaking changes",id:"breaking-changes"},{rank:2,text:"Migration Guide",id:"migration-guide"},{rank:3,text:"$localized store",id:"localized-store"},{rank:3,text:"FluentProvider deprecation",id:"fluentprovider-deprecation"},{rank:3,text:"Replace Localize/Overlay slots with snippets",id:"replace-localizeoverlay-slots-with-snippets"},{rank:3,text:"Continue using Localize/Overlay components with slots",id:"continue-using-localizeoverlay-components-with-slots"},{rank:3,text:"vite/rollup plugin import paths",id:"viterollup-plugin-import-paths"},{rank:3,text:"Ftl file loading",id:"ftl-file-loading"}];var G=j(`

Version 1

What’s new?

Svelte 5 support

Svelte 5 is now fully supported by svelte-fluent.

Server-side localizations

In previous versions, svelte-fluent could only be used inside of components. With the introduction of the object in version 1, you can now use svelte-fluent anywhere you want.

For an example how to integrate it with SvelteKit .server.js files and form actions, check out the SvelteKit integration guide.

Loading .ftl files

The bundler plugin of svelte-fluent now allows you to directly import your .ftl files. Previous versions relied on loading the .ftl files as raw strings either via vite’s ?raw import or adding rollup-plugin-string.

Breaking changes