@wuchale/svelte 0.10.0 → 0.10.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -1,2 +1,3 @@
1
- export { adapter } from './adapter.js';
1
+ import type { Adapter, AdapterArgs } from 'wuchale/adapters';
2
+ export declare const adapter: (args?: AdapterArgs) => Adapter;
2
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAER,OAAO,EACP,WAAW,EAEd,MAAM,kBAAkB,CAAA;AA4CzB,eAAO,MAAM,OAAO,GAAI,OAAM,WAAyB,KAAG,OAoCzD,CAAA"}
package/dist/index.js CHANGED
@@ -1,2 +1,70 @@
1
- export { adapter } from './adapter.js';
1
+ import { glob } from "tinyglobby";
2
+ import { defaultGenerateLoadID, defaultHeuristic } from 'wuchale/adapters';
3
+ import { deepMergeObjects } from 'wuchale/config';
4
+ import { dataModuleHotUpdate } from 'wuchale/adapter-vanilla';
5
+ import { SvelteTransformer } from "./transformer.js";
6
+ const topLevelDeclarationsInside = ['$derived', '$derived.by'];
7
+ const ignoreElements = ['style', 'path'];
8
+ const dataModuleDev = ({ loadID, eventSend, eventReceive, compiled, plural }) => `
9
+ import { ReactiveArray } from '@wuchale/svelte/reactive'
10
+ export const p = ${plural}
11
+ export const c = new ReactiveArray(...${compiled})
12
+ ${dataModuleHotUpdate(loadID, eventSend, eventReceive)}
13
+ `;
14
+ const svelteHeuristic = (text, details) => {
15
+ if (!defaultHeuristic(text, details)) {
16
+ return false;
17
+ }
18
+ if (ignoreElements.includes(details.element)) {
19
+ return false;
20
+ }
21
+ if (details.scope !== 'script') {
22
+ return true;
23
+ }
24
+ if (details.declaring === 'variable' && !topLevelDeclarationsInside.includes(details.topLevelCall)) {
25
+ return false;
26
+ }
27
+ if (details.call === '$inspect') {
28
+ return false;
29
+ }
30
+ return true;
31
+ };
32
+ const defaultArgs = {
33
+ files: ['src/**/*.svelte', 'src/**/*.svelte.{js,ts}'],
34
+ catalog: './src/locales/{locale}',
35
+ pluralsFunc: 'plural',
36
+ heuristic: svelteHeuristic,
37
+ granularLoad: false,
38
+ bundleLoad: false,
39
+ generateLoadID: defaultGenerateLoadID,
40
+ writeFiles: {},
41
+ initInsideFunc: false,
42
+ };
43
+ export const adapter = (args = defaultArgs) => {
44
+ const { heuristic, pluralsFunc, files, catalog, granularLoad, bundleLoad, generateLoadID, writeFiles, initInsideFunc, } = deepMergeObjects(args, defaultArgs);
45
+ return {
46
+ transform: ({ content, filename, index, header }) => {
47
+ const transformer = new SvelteTransformer(content, filename, index, heuristic, pluralsFunc, initInsideFunc ? header.expr : null);
48
+ return transformer.transformSv(header);
49
+ },
50
+ files,
51
+ catalog,
52
+ granularLoad,
53
+ bundleLoad,
54
+ generateLoadID,
55
+ loaderExts: ['.svelte.js', '.svelte.ts'],
56
+ dataModuleDev,
57
+ writeFiles,
58
+ defaultLoaders: async () => {
59
+ const available = ['default', 'kit'];
60
+ if ((await glob('svelte.config.js')).length) {
61
+ available.reverse();
62
+ }
63
+ return available;
64
+ },
65
+ defaultLoaderPath: (loader) => {
66
+ return new URL(`../src/loaders/${loader}.svelte.js`, import.meta.url).pathname;
67
+ },
68
+ };
69
+ };
2
70
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ import type { AnyNode } from "acorn";
2
2
  import { type AST } from "svelte/compiler";
3
3
  import { NestText } from 'wuchale/adapters';
4
4
  import { Transformer } from 'wuchale/adapter-vanilla';
5
- import type { IndexTracker, HeuristicFunc, TransformOutput, Adapter, AdapterArgs, CommentDirectives, TransformHeader } from 'wuchale/adapters';
5
+ import type { IndexTracker, HeuristicFunc, TransformOutput, CommentDirectives, TransformHeader } from 'wuchale/adapters';
6
6
  export declare class SvelteTransformer extends Transformer {
7
7
  currentElement?: string;
8
8
  inCompoundText: boolean;
@@ -34,5 +34,4 @@ export declare class SvelteTransformer extends Transformer {
34
34
  visitSv: (node: AST.SvelteNode | AnyNode) => NestText[];
35
35
  transformSv: (header: TransformHeader) => TransformOutput;
36
36
  }
37
- export declare const adapter: (args?: AdapterArgs) => Adapter;
38
- //# sourceMappingURL=adapter.d.ts.map
37
+ //# sourceMappingURL=transformer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transformer.d.ts","sourceRoot":"","sources":["../src/transformer.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAW,OAAO,EAAE,MAAM,OAAO,CAAA;AAC7C,OAAO,EAAS,KAAK,GAAG,EAAE,MAAM,iBAAiB,CAAA;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAC3C,OAAO,EAAE,WAAW,EAA6B,MAAM,yBAAyB,CAAA;AAChF,OAAO,KAAK,EACR,YAAY,EACZ,aAAa,EACb,eAAe,EACf,iBAAiB,EACjB,eAAe,EAClB,MAAM,kBAAkB,CAAA;AASzB,qBAAa,iBAAkB,SAAQ,WAAW;IAG9C,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,cAAc,EAAE,OAAO,CAAQ;IAC/B,sBAAsB,EAAE,iBAAiB,EAAE,CAAK;IAChD,kBAAkB,EAAE,OAAO,CAAQ;IACnC,cAAc,EAAE,MAAM,CAAI;gBAEd,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,EAAE,kBAAkB,EAAE,MAAM,GAAG,IAAI;IAIpJ,kBAAkB,GAAI,MAAM,GAAG,CAAC,aAAa,KAAG,QAAQ,EAAE,CAA+B;IAEzF,iBAAiB,GAAI,MAAM,GAAG,CAAC,IAAI,KAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAM7D;IAED,uBAAuB,GAAI,MAAM,GAAG,CAAC,QAAQ,KAAG,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAmCtF;IAED,aAAa,GAAI,MAAM,GAAG,CAAC,QAAQ,KAAG,QAAQ,EAAE,CAoI/C;IAED,mBAAmB,GAAI,MAAM,GAAG,CAAC,WAAW,KAAG,QAAQ,EAAE,CAUxD;IAED,cAAc,SAZe,GAAG,CAAC,WAAW,KAAG,QAAQ,EAAE,CAYhB;IAEzC,SAAS,GAAI,MAAM,GAAG,CAAC,IAAI,KAAG,QAAQ,EAAE,CAWvC;IAED,oBAAoB,GAAI,MAAM,GAAG,CAAC,eAAe,KAAG,QAAQ,EAAE,CAA+B;IAE7F,cAAc,GAAI,MAAM,GAAG,CAAC,SAAS,KAAG,QAAQ,EAAE,CAmCjD;IAED,iBAAiB,GAAI,MAAM,GAAG,CAAC,YAAY,KAAG,QAAQ,EAAE,CAAiC;IAEzF,YAAY,GAAI,MAAM,GAAG,CAAC,OAAO,KAAG,QAAQ,EAAE,CAO7C;IAED,cAAc,GAAI,MAAM,GAAG,CAAC,SAAS,KAAG,QAAQ,EAAE,CAYjD;IAED,aAAa,GAAI,MAAM,GAAG,CAAC,QAAQ,KAAG,QAAQ,EAAE,CAK/C;IAED,eAAe,GAAI,MAAM,GAAG,CAAC,UAAU,KAAG,QAAQ,EAAE,CAYnD;IAED,eAAe,GAAI,MAAM,GAAG,CAAC,UAAU,KAAG,QAAQ,EAAE,CAA4C;IAEhG,mBAAmB,GAAI,MAAM,GAAG,CAAC,cAAc,KAAG,QAAQ,EAAE,CAA4C;IAExG,kBAAkB,GAAI,MAAM,GAAG,CAAC,aAAa,KAAG,QAAQ,EAAE,CAA4C;IAEtG,mBAAmB,GAAI,MAAM,GAAG,CAAC,cAAc,KAAG,QAAQ,EAAE,CAG3D;IAED,eAAe,GAAI,MAAM,GAAG,CAAC,UAAU,KAAG,QAAQ,EAAE,CAA+B;IAEnF,iBAAiB,GAAI,MAAM,GAAG,CAAC,YAAY,KAAG,QAAQ,EAAE,CAA4C;IAEpG,SAAS,GAAI,MAAM,GAAG,CAAC,IAAI,KAAG,QAAQ,EAAE,CAavC;IAED,OAAO,GAAI,MAAM,GAAG,CAAC,UAAU,GAAG,OAAO,KAAG,QAAQ,EAAE,CAsBrD;IAED,WAAW,GAAI,QAAQ,eAAe,KAAG,eAAe,CAkCvD;CACJ"}
@@ -1,30 +1,8 @@
1
1
  import MagicString from "magic-string";
2
- import { glob } from "tinyglobby";
3
2
  import { parse } from "svelte/compiler";
4
- import { defaultGenerateLoadID, defaultHeuristic, NestText } from 'wuchale/adapters';
5
- import { deepMergeObjects } from 'wuchale/config';
6
- import { Transformer, parseScript, dataModuleHotUpdate, runtimeConst } from 'wuchale/adapter-vanilla';
3
+ import { NestText } from 'wuchale/adapters';
4
+ import { Transformer, parseScript, runtimeConst } from 'wuchale/adapter-vanilla';
7
5
  const nodesWithChildren = ['RegularElement', 'Component'];
8
- const topLevelDeclarationsInside = ['$derived', '$derived.by'];
9
- const ignoreElements = ['style', 'path'];
10
- const svelteHeuristic = (text, details) => {
11
- if (!defaultHeuristic(text, details)) {
12
- return false;
13
- }
14
- if (ignoreElements.includes(details.element)) {
15
- return false;
16
- }
17
- if (details.scope !== 'script') {
18
- return true;
19
- }
20
- if (details.declaring === 'variable' && !topLevelDeclarationsInside.includes(details.topLevelCall)) {
21
- return false;
22
- }
23
- if (details.call === '$inspect') {
24
- return false;
25
- }
26
- return true;
27
- };
28
6
  const rtComponent = 'WuchaleTrans';
29
7
  const snipPrefix = 'wuchaleSnippet';
30
8
  const rtFuncCtx = `${runtimeConst}.cx`;
@@ -382,7 +360,9 @@ export class SvelteTransformer extends Transformer {
382
360
  ast = parse(this.content, { modern: true });
383
361
  }
384
362
  else {
385
- ast = parseScript(this.content);
363
+ const [pAst, comments] = parseScript(this.content);
364
+ ast = pAst;
365
+ this.comments = comments;
386
366
  }
387
367
  this.mstr = new MagicString(this.content);
388
368
  const txts = this.visitSv(ast);
@@ -412,48 +392,4 @@ export class SvelteTransformer extends Transformer {
412
392
  return this.finalize(txts);
413
393
  };
414
394
  }
415
- const dataModuleDev = ({ loadID, eventSend, eventReceive, compiled, plural }) => `
416
- import { ReactiveArray } from '@wuchale/svelte/reactive'
417
- export const p = ${plural}
418
- export const c = new ReactiveArray(...${compiled})
419
- ${dataModuleHotUpdate(loadID, eventSend, eventReceive)}
420
- `;
421
- const defaultArgs = {
422
- files: ['src/**/*.svelte', 'src/**/*.svelte.{js,ts}'],
423
- catalog: './src/locales/{locale}',
424
- pluralsFunc: 'plural',
425
- heuristic: svelteHeuristic,
426
- granularLoad: false,
427
- bundleLoad: false,
428
- generateLoadID: defaultGenerateLoadID,
429
- writeFiles: {},
430
- initInsideFunc: false,
431
- };
432
- export const adapter = (args = defaultArgs) => {
433
- const { heuristic, pluralsFunc, files, catalog, granularLoad, bundleLoad, generateLoadID, writeFiles, initInsideFunc, } = deepMergeObjects(args, defaultArgs);
434
- return {
435
- transform: ({ content, filename, index, header }) => {
436
- const transformer = new SvelteTransformer(content, filename, index, heuristic, pluralsFunc, initInsideFunc ? header.expr : null);
437
- return transformer.transformSv(header);
438
- },
439
- files,
440
- catalog,
441
- granularLoad,
442
- bundleLoad,
443
- generateLoadID,
444
- loaderExts: ['.svelte.js', '.svelte.ts'],
445
- dataModuleDev,
446
- writeFiles,
447
- defaultLoaders: async () => {
448
- const available = ['default', 'kit'];
449
- if ((await glob('svelte.config.js')).length) {
450
- available.reverse();
451
- }
452
- return available;
453
- },
454
- defaultLoaderPath: (loader) => {
455
- return new URL(`../src/loaders/${loader}.svelte.js`, import.meta.url).pathname;
456
- },
457
- };
458
- };
459
- //# sourceMappingURL=adapter.js.map
395
+ //# sourceMappingURL=transformer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transformer.js","sourceRoot":"","sources":["../src/transformer.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wuchale/svelte",
3
- "version": "0.10.0",
3
+ "version": "0.10.2",
4
4
  "description": "Protobuf-like i18n from normal code",
5
5
  "scripts": {
6
6
  "dev": "tsc --watch",
@@ -32,7 +32,7 @@
32
32
  ],
33
33
  "files": [
34
34
  "dist",
35
- "src"
35
+ "src/runtime.svelte"
36
36
  ],
37
37
  "exports": {
38
38
  ".": {
@@ -56,9 +56,10 @@
56
56
  "dependencies": {
57
57
  "svelte": "^5.37.0",
58
58
  "tinyglobby": "^0.2.14",
59
- "wuchale": "^0.10.0"
59
+ "wuchale": "^0.11.1"
60
60
  },
61
61
  "devDependencies": {
62
+ "acorn": "^8.15.0",
62
63
  "typescript": "^5.8.3"
63
64
  },
64
65
  "type": "module"
@@ -1 +0,0 @@
1
- {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"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"}
package/src/adapter.ts DELETED
@@ -1,497 +0,0 @@
1
- import MagicString from "magic-string"
2
- import type { Program, AnyNode } from "acorn"
3
- import { glob } from "tinyglobby"
4
- import { parse, type AST } from "svelte/compiler"
5
- import { defaultGenerateLoadID, defaultHeuristic, NestText } from 'wuchale/adapters'
6
- import { deepMergeObjects } from 'wuchale/config'
7
- import { Transformer, parseScript, dataModuleHotUpdate, runtimeConst } from 'wuchale/adapter-vanilla'
8
- import type {
9
- IndexTracker,
10
- HeuristicFunc,
11
- TransformOutput,
12
- Adapter,
13
- AdapterArgs,
14
- CommentDirectives,
15
- DataModuleFunc,
16
- TransformHeader
17
- } from 'wuchale/adapters'
18
-
19
- const nodesWithChildren = ['RegularElement', 'Component']
20
- const topLevelDeclarationsInside = ['$derived', '$derived.by']
21
- const ignoreElements = ['style', 'path']
22
-
23
- const svelteHeuristic: HeuristicFunc = (text, details) => {
24
- if (!defaultHeuristic(text, details)) {
25
- return false
26
- }
27
- if (ignoreElements.includes(details.element)) {
28
- return false
29
- }
30
- if (details.scope !== 'script') {
31
- return true
32
- }
33
- if (details.declaring === 'variable' && !topLevelDeclarationsInside.includes(details.topLevelCall)) {
34
- return false
35
- }
36
- if (details.call === '$inspect') {
37
- return false
38
- }
39
- return true
40
- }
41
-
42
- const rtComponent = 'WuchaleTrans'
43
- const snipPrefix = 'wuchaleSnippet'
44
- const rtFuncCtx = `${runtimeConst}.cx`
45
- const rtFuncCtxTrans = `${runtimeConst}.tx`
46
-
47
- export class SvelteTransformer extends Transformer {
48
-
49
- // state
50
- currentElement?: string
51
- inCompoundText: boolean = false
52
- commentDirectivesStack: CommentDirectives[] = []
53
- lastVisitIsComment: boolean = false
54
- currentSnippet: number = 0
55
-
56
- constructor(content: string, filename: string, index: IndexTracker, heuristic: HeuristicFunc, pluralsFunc: string, initInsideFuncExpr: string | null) {
57
- super(content, filename, index, heuristic, pluralsFunc, initInsideFuncExpr)
58
- }
59
-
60
- visitExpressionTag = (node: AST.ExpressionTag): NestText[] => this.visit(node.expression)
61
-
62
- nonWhitespaceText = (node: AST.Text): [number, string, number] => {
63
- let trimmedS = node.data.trimStart()
64
- const startWh = node.data.length - trimmedS.length
65
- let trimmed = trimmedS.trimEnd()
66
- const endWh = trimmedS.length - trimmed.length
67
- return [startWh, trimmed, endWh]
68
- }
69
-
70
- separatelyVisitChildren = (node: AST.Fragment): [boolean, boolean, boolean, NestText[]] => {
71
- let hasTextChild = false
72
- let hasNonTextChild = false
73
- let heurTxt = ''
74
- let hasCommentDirectives = false
75
- for (const child of node.nodes) {
76
- if (child.type === 'Text') {
77
- const txt = child.data.trim()
78
- if (!txt) {
79
- continue
80
- }
81
- hasTextChild = true
82
- heurTxt += child.data + ' '
83
- } else if (child.type === 'Comment') {
84
- if (child.data.trim().startsWith('@wc-')) {
85
- hasCommentDirectives = true
86
- }
87
- } else {
88
- hasNonTextChild = true
89
- heurTxt += `# `
90
- }
91
- }
92
- heurTxt = heurTxt.trimEnd()
93
- const [passHeuristic] = this.checkHeuristic(heurTxt, { scope: 'markup', element: this.currentElement })
94
- let hasCompoundText = hasTextChild && hasNonTextChild
95
- const visitAsOne = passHeuristic && !hasCommentDirectives
96
- if (this.inCompoundText || hasCompoundText && visitAsOne) {
97
- return [false, hasTextChild, hasCompoundText, []]
98
- }
99
- const txts = []
100
- // can't be extracted as one; visitSv each separately
101
- for (const child of node.nodes) {
102
- txts.push(...this.visitSv(child))
103
- }
104
- return [true, false, false, txts]
105
- }
106
-
107
- visitFragment = (node: AST.Fragment): NestText[] => {
108
- if (node.nodes.length === 0) {
109
- return []
110
- }
111
- const [visitedSeparately, hasTextChild, hasCompoundText, separateTxts] = this.separatelyVisitChildren(node)
112
- if (visitedSeparately) {
113
- return separateTxts
114
- }
115
- let txt = ''
116
- let iArg = 0
117
- let iTag = 0
118
- const lastChildEnd = node.nodes.slice(-1)[0].end
119
- const childrenForSnippets: [number, number, boolean][] = []
120
- let hasTextDescendants = false
121
- const txts = []
122
- for (const child of node.nodes) {
123
- if (child.type === 'Comment') {
124
- continue
125
- }
126
- if (child.type === 'Text') {
127
- const [startWh, trimmed, endWh] = this.nonWhitespaceText(child)
128
- const nTxt = new NestText(trimmed, 'markup', this.commentDirectives.context)
129
- if (startWh && !txt.endsWith(' ')) {
130
- txt += ' '
131
- }
132
- if (!trimmed) { // whitespace
133
- continue
134
- }
135
- txt += nTxt.text
136
- if (endWh) {
137
- txt += ' '
138
- }
139
- this.mstr.remove(child.start, child.end)
140
- continue
141
- }
142
- if (child.type === 'ExpressionTag') {
143
- txts.push(...this.visitExpressionTag(child))
144
- if (!hasCompoundText) {
145
- continue
146
- }
147
- txt += `{${iArg}}`
148
- let moveStart = child.start
149
- if (iArg > 0) {
150
- this.mstr.update(child.start, child.start + 1, ', ')
151
- } else {
152
- moveStart++
153
- this.mstr.remove(child.start, child.start + 1)
154
- }
155
- this.mstr.move(moveStart, child.end - 1, lastChildEnd)
156
- this.mstr.remove(child.end - 1, child.end)
157
- iArg++
158
- continue
159
- }
160
- // elements, components and other things as well
161
- const nestedTextSupported = nodesWithChildren.includes(child.type)
162
- const inCompoundTextPrev = this.inCompoundText
163
- this.inCompoundText = nestedTextSupported
164
- const childTxts = this.visitSv(child)
165
- this.inCompoundText = inCompoundTextPrev // restore
166
- let snippNeedsCtx = false
167
- let chTxt = ''
168
- for (const txt of childTxts) {
169
- if (nodesWithChildren.includes(child.type) && txt.scope === 'markup') {
170
- chTxt += txt.text[0]
171
- hasTextDescendants = true
172
- snippNeedsCtx = true
173
- } else { // attributes, blocks
174
- txts.push(txt)
175
- }
176
- }
177
- childrenForSnippets.push([child.start, child.end, snippNeedsCtx])
178
- if (nodesWithChildren.includes(child.type) && chTxt) {
179
- chTxt = `<${iTag}>${chTxt}</${iTag}>`
180
- } else {
181
- // childless elements and everything else
182
- chTxt = `<${iTag}/>`
183
- }
184
- iTag++
185
- txt += chTxt
186
- }
187
- txt = txt.trim()
188
- if (!txt) {
189
- return txts
190
- }
191
- const nTxt = new NestText(txt, 'markup', this.commentDirectives.context)
192
- if (hasTextChild || hasTextDescendants) {
193
- txts.push(nTxt)
194
- } else {
195
- return txts
196
- }
197
- if (childrenForSnippets.length) {
198
- const snippets = []
199
- // create and reference snippets
200
- for (const [childStart, childEnd, haveCtx] of childrenForSnippets) {
201
- const snippetName = `${snipPrefix}${this.currentSnippet}`
202
- snippets.push(snippetName)
203
- this.currentSnippet++
204
- const snippetBegin = `\n{#snippet ${snippetName}(${haveCtx ? 'ctx' : ''})}\n`
205
- this.mstr.appendRight(childStart, snippetBegin)
206
- this.mstr.prependLeft(childEnd, '\n{/snippet}')
207
- }
208
- let begin = `\n<${rtComponent} tags={[${snippets.join(', ')}]} ctx=`
209
- if (this.inCompoundText) {
210
- begin += `{ctx} nest`
211
- } else {
212
- const index = this.index.get(nTxt.toKey())
213
- begin += `{${rtFuncCtx}(${index})}`
214
- }
215
- let end = ' />\n'
216
- if (iArg > 0) {
217
- begin += ' args={['
218
- end = ']}' + end
219
- }
220
- this.mstr.appendLeft(lastChildEnd, begin)
221
- this.mstr.appendRight(lastChildEnd, end)
222
- } else if (hasTextChild) {
223
- // no need for component use
224
- let begin = '{'
225
- let end = ')}'
226
- if (this.inCompoundText) {
227
- begin += `${rtFuncCtxTrans}(ctx`
228
- } else {
229
- begin += `${this.rtFunc}(${this.index.get(nTxt.toKey())}`
230
- }
231
- if (iArg) {
232
- begin += ', ['
233
- end = ']' + end
234
- }
235
- this.mstr.appendLeft(lastChildEnd, begin)
236
- this.mstr.appendRight(lastChildEnd, end)
237
- }
238
- return txts
239
- }
240
-
241
- visitRegularElement = (node: AST.ElementLike): NestText[] => {
242
- const currentElement = this.currentElement
243
- this.currentElement = node.name
244
- const txts: NestText[] = []
245
- for (const attrib of node.attributes) {
246
- txts.push(...this.visitSv(attrib))
247
- }
248
- txts.push(...this.visitFragment(node.fragment))
249
- this.currentElement = currentElement
250
- return txts
251
- }
252
-
253
- visitComponent = this.visitRegularElement
254
-
255
- visitText = (node: AST.Text): NestText[] => {
256
- const [startWh, trimmed, endWh] = this.nonWhitespaceText(node)
257
- const [pass, txt] = this.checkHeuristic(trimmed, {
258
- scope: 'markup',
259
- element: this.currentElement,
260
- })
261
- if (!pass) {
262
- return []
263
- }
264
- this.mstr.update(node.start + startWh, node.end - endWh, `{${this.rtFunc}(${this.index.get(txt.toKey())})}`)
265
- return [txt]
266
- }
267
-
268
- visitSpreadAttribute = (node: AST.SpreadAttribute): NestText[] => this.visit(node.expression)
269
-
270
- visitAttribute = (node: AST.Attribute): NestText[] => {
271
- if (node.value === true) {
272
- return []
273
- }
274
- const txts = []
275
- let values: (AST.ExpressionTag | AST.Text)[]
276
- if (Array.isArray(node.value)) {
277
- values = node.value
278
- } else {
279
- values = [node.value]
280
- }
281
- for (const value of values) {
282
- if (value.type !== 'Text') { // ExpressionTag
283
- txts.push(...this.visitSv(value))
284
- continue
285
- }
286
- // Text
287
- const { start, end } = value
288
- const [pass, txt] = this.checkHeuristic(value.data, {
289
- scope: 'attribute',
290
- element: this.currentElement,
291
- attribute: node.name,
292
- })
293
- if (!pass) {
294
- continue
295
- }
296
- txts.push(txt)
297
- this.mstr.update(value.start, value.end, `{${this.rtFunc}(${this.index.get(txt.toKey())})}`)
298
- if (!`'"`.includes(this.content[start - 1])) {
299
- continue
300
- }
301
- this.mstr.remove(start - 1, start)
302
- this.mstr.remove(end, end + 1)
303
- }
304
- return txts
305
- }
306
-
307
- visitSnippetBlock = (node: AST.SnippetBlock): NestText[] => this.visitFragment(node.body)
308
-
309
- visitIfBlock = (node: AST.IfBlock): NestText[] => {
310
- const txts = this.visit(node.test)
311
- txts.push(...this.visitSv(node.consequent))
312
- if (node.alternate) {
313
- txts.push(...this.visitSv(node.alternate))
314
- }
315
- return txts
316
- }
317
-
318
- visitEachBlock = (node: AST.EachBlock): NestText[] => {
319
- const txts = [
320
- ...this.visit(node.expression),
321
- ...this.visitSv(node.body),
322
- ]
323
- if (node.key) {
324
- txts.push(...this.visit(node.key))
325
- }
326
- if (node.fallback) {
327
- txts.push(...this.visitSv(node.fallback))
328
- }
329
- return txts
330
- }
331
-
332
- visitKeyBlock = (node: AST.KeyBlock): NestText[] => {
333
- return [
334
- ...this.visit(node.expression),
335
- ...this.visitSv(node.fragment),
336
- ]
337
- }
338
-
339
- visitAwaitBlock = (node: AST.AwaitBlock): NestText[] => {
340
- const txts = [
341
- ...this.visit(node.expression),
342
- ...this.visitFragment(node.then),
343
- ]
344
- if (node.pending) {
345
- txts.push(...this.visitFragment(node.pending),)
346
- }
347
- if (node.catch) {
348
- txts.push(...this.visitFragment(node.catch),)
349
- }
350
- return txts
351
- }
352
-
353
- visitSvelteBody = (node: AST.SvelteBody): NestText[] => node.attributes.map(this.visitSv).flat()
354
-
355
- visitSvelteDocument = (node: AST.SvelteDocument): NestText[] => node.attributes.map(this.visitSv).flat()
356
-
357
- visitSvelteElement = (node: AST.SvelteElement): NestText[] => node.attributes.map(this.visitSv).flat()
358
-
359
- visitSvelteBoundary = (node: AST.SvelteBoundary): NestText[] => [
360
- ...node.attributes.map(this.visitSv).flat(),
361
- ...this.visitSv(node.fragment),
362
- ]
363
-
364
- visitSvelteHead = (node: AST.SvelteHead): NestText[] => this.visitSv(node.fragment)
365
-
366
- visitSvelteWindow = (node: AST.SvelteWindow): NestText[] => node.attributes.map(this.visitSv).flat()
367
-
368
- visitRoot = (node: AST.Root): NestText[] => {
369
- const txts = this.visitFragment(node.fragment)
370
- if (node.instance) {
371
- this.commentDirectives = {} // reset
372
- txts.push(...this.visitProgram(node.instance.content))
373
- }
374
- // @ts-ignore: module is a reserved keyword, not sure how to specify the type
375
- if (node.module) {
376
- this.commentDirectives = {} // reset
377
- // @ts-ignore
378
- txts.push(...this.visitProgram(node.module.content))
379
- }
380
- return txts
381
- }
382
-
383
- visitSv = (node: AST.SvelteNode | AnyNode): NestText[] => {
384
- if (node.type === 'Comment') {
385
- const directives = this.processCommentDirectives(node.data.trim())
386
- if (this.lastVisitIsComment) {
387
- this.commentDirectivesStack[this.commentDirectivesStack.length - 1] = directives
388
- } else {
389
- this.commentDirectivesStack.push(directives)
390
- }
391
- this.lastVisitIsComment = true
392
- return []
393
- }
394
- let txts = []
395
- const commentDirectivesPrev = this.commentDirectives
396
- if (this.lastVisitIsComment) {
397
- this.commentDirectives = this.commentDirectivesStack.pop()
398
- }
399
- if (this.commentDirectives.forceInclude !== false) {
400
- txts = this.visit(node)
401
- }
402
- this.commentDirectives = commentDirectivesPrev
403
- this.lastVisitIsComment = false
404
- return txts
405
- }
406
-
407
- transformSv = (header: TransformHeader): TransformOutput => {
408
- const isComponent = this.filename.endsWith('.svelte')
409
- let ast: AST.Root | Program
410
- if (isComponent) {
411
- ast = parse(this.content, { modern: true })
412
- } else {
413
- ast = parseScript(this.content)
414
- }
415
- this.mstr = new MagicString(this.content)
416
- const txts = this.visitSv(ast)
417
- if (!txts.length) {
418
- return this.finalize(txts)
419
- }
420
- const headerFin = [
421
- `\nimport ${rtComponent} from "@wuchale/svelte/runtime.svelte"`,
422
- header.head,
423
- `const ${runtimeConst} = $derived(${header.expr})\n`,
424
- ].join('\n')
425
- if (ast.type === 'Program') {
426
- this.mstr.appendRight(0, headerFin + '\n')
427
- return this.finalize(txts)
428
- }
429
- if (ast.module) {
430
- // @ts-ignore
431
- this.mstr.appendRight(ast.module.content.start, headerFin)
432
- } else if (ast.instance) {
433
- // @ts-ignore
434
- this.mstr.appendRight(ast.instance.content.start, headerFin)
435
- } else {
436
- this.mstr.prepend(`<script>${headerFin}</script>\n`)
437
- }
438
- return this.finalize(txts)
439
- }
440
- }
441
-
442
- const dataModuleDev: DataModuleFunc = ({ loadID, eventSend, eventReceive, compiled, plural }) => `
443
- import { ReactiveArray } from '@wuchale/svelte/reactive'
444
- export const p = ${plural}
445
- export const c = new ReactiveArray(...${compiled})
446
- ${dataModuleHotUpdate(loadID, eventSend, eventReceive)}
447
- `
448
-
449
- const defaultArgs: AdapterArgs = {
450
- files: ['src/**/*.svelte', 'src/**/*.svelte.{js,ts}'],
451
- catalog: './src/locales/{locale}',
452
- pluralsFunc: 'plural',
453
- heuristic: svelteHeuristic,
454
- granularLoad: false,
455
- bundleLoad: false,
456
- generateLoadID: defaultGenerateLoadID,
457
- writeFiles: {},
458
- initInsideFunc: false,
459
- }
460
-
461
- export const adapter = (args: AdapterArgs = defaultArgs): Adapter => {
462
- const {
463
- heuristic,
464
- pluralsFunc,
465
- files,
466
- catalog,
467
- granularLoad,
468
- bundleLoad,
469
- generateLoadID,
470
- writeFiles,
471
- initInsideFunc,
472
- } = deepMergeObjects(args, defaultArgs)
473
- return {
474
- transform: ({ content, filename, index, header }) => {
475
- const transformer = new SvelteTransformer(content, filename, index, heuristic, pluralsFunc, initInsideFunc ? header.expr : null)
476
- return transformer.transformSv(header)
477
- },
478
- files,
479
- catalog,
480
- granularLoad,
481
- bundleLoad,
482
- generateLoadID,
483
- loaderExts: ['.svelte.js', '.svelte.ts'],
484
- dataModuleDev,
485
- writeFiles,
486
- defaultLoaders: async () => {
487
- const available = ['default', 'kit']
488
- if ((await glob('svelte.config.js')).length) {
489
- available.reverse()
490
- }
491
- return available
492
- },
493
- defaultLoaderPath: (loader: string) => {
494
- return new URL(`../src/loaders/${loader}.svelte.js`, import.meta.url).pathname
495
- },
496
- }
497
- }
package/src/index.ts DELETED
@@ -1 +0,0 @@
1
- export { adapter } from './adapter.js'
@@ -1,11 +0,0 @@
1
- // This is just the default loader.
2
- // You can customize it however you want, it will not be overwritten once it exists and is not empty.
3
-
4
- /// <reference types="wuchale/virtual" />
5
-
6
- import { loadCatalog, loadIDs, key } from 'virtual:wuchale/proxy' // or /proxy/sync
7
- import { registerLoaders } from 'wuchale/run-client'
8
-
9
- const catalogs = $state({})
10
-
11
- export default registerLoaders(key, loadCatalog, loadIDs, catalogs)
@@ -1,14 +0,0 @@
1
- // This is just the default loader.
2
- // You can customize it however you want, it will not be overwritten once it exists and is not empty.
3
-
4
- /// <reference types="wuchale/virtual" />
5
-
6
- import { loadCatalog, loadIDs } from 'virtual:wuchale/proxy' // or /proxy/sync
7
- import { page } from '$app/state'
8
- import { Runtime } from 'wuchale/runtime'
9
-
10
- export {loadIDs, loadCatalog}
11
-
12
- export default (/** @type {string} */ loadID) => {
13
- return page.data.catalogs?.[loadID] ?? new Runtime()
14
- }
package/src/reactive.ts DELETED
@@ -1,28 +0,0 @@
1
- import { createSubscriber } from "svelte/reactivity"
2
-
3
- /**
4
- * This is a way to bypass svelte's reactivity restriction
5
- * outside .svelte.js files The purpose is dev mode HMR
6
- * without invalidating whole trees
7
- */
8
- export class ReactiveArray extends Array {
9
- constructor(...args: number[]) {
10
- super(...args)
11
- let update: () => void
12
- const subscribe = createSubscriber((updateArg: () => void) => {
13
- update = updateArg
14
- })
15
- return new Proxy(this, {
16
- get(target, prop, receiver) {
17
- subscribe()
18
- return Reflect.get(target, prop, receiver)
19
- },
20
- set(target, prop, value, receiver) {
21
- target[prop] = value
22
- update?.()
23
- return Reflect.set(target, prop, value, receiver)
24
- },
25
- })
26
- }
27
- static from = (array: number[]) => new ReactiveArray(...array)
28
- }