@wuchale/jsx 0.2.0 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -1,3 +1,7 @@
1
- import type { Adapter, AdapterArgs } from 'wuchale/adapters';
2
- export declare const adapter: (args?: AdapterArgs) => Adapter;
1
+ import type { Adapter, AdapterArgs } from 'wuchale';
2
+ type JSXArgs = AdapterArgs & {
3
+ variant?: "default" | "solidjs";
4
+ };
5
+ export declare const adapter: (args?: JSXArgs) => Adapter;
6
+ export {};
3
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAER,OAAO,EACP,WAAW,EACd,MAAM,kBAAkB,CAAA;AAiCzB,eAAO,MAAM,OAAO,GAAI,OAAM,WAAyB,KAAG,OAgCzD,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAER,OAAO,EACP,WAAW,EAGd,MAAM,SAAS,CAAA;AAqBhB,KAAK,OAAO,GAAG,WAAW,GAAG;IACzB,OAAO,CAAC,EAAE,SAAS,GAAG,SAAS,CAAA;CAClC,CAAA;AAoBD,eAAO,MAAM,OAAO,GAAI,OAAM,OAAqB,KAAG,OAqCrD,CAAA"}
package/dist/index.js CHANGED
@@ -1,5 +1,5 @@
1
- import { defaultGenerateLoadID, defaultHeuristic } from 'wuchale/adapters';
2
- import { deepMergeObjects } from 'wuchale/config';
1
+ import { defaultGenerateLoadID, defaultHeuristic, deepMergeObjects } from 'wuchale';
2
+ import { adapter as vanillaAdapter } from 'wuchale/adapter-vanilla';
3
3
  import { JSXTransformer } from "./transformer.js";
4
4
  const ignoreElements = ['style', 'path'];
5
5
  const jsxHeuristic = (text, details) => {
@@ -26,29 +26,36 @@ const defaultArgs = {
26
26
  bundleLoad: false,
27
27
  generateLoadID: defaultGenerateLoadID,
28
28
  writeFiles: {},
29
- initInsideFunc: true,
29
+ importName: '_w_load_',
30
+ runtime: {
31
+ initInScope: ({ funcName }) => funcName != null,
32
+ wrapInit: init => init,
33
+ wrapExpr: expr => expr,
34
+ },
35
+ variant: 'default',
30
36
  };
31
37
  export const adapter = (args = defaultArgs) => {
32
- const { heuristic, pluralsFunc, files, catalog, granularLoad, bundleLoad, generateLoadID, writeFiles, initInsideFunc, } = deepMergeObjects(args, defaultArgs);
38
+ const { heuristic, pluralsFunc, runtime, variant, ...rest } = deepMergeObjects(args, defaultArgs);
33
39
  return {
34
- transform: ({ content, filename, index, header }) => {
35
- const transformer = new JSXTransformer(content, filename, index, heuristic, pluralsFunc, initInsideFunc ? header.expr : null);
36
- return transformer.transformJx(header);
37
- },
38
- files,
39
- catalog,
40
- granularLoad,
41
- bundleLoad,
42
- generateLoadID,
40
+ transform: ({ content, filename, index, header }) => new JSXTransformer(content, filename, index, heuristic, pluralsFunc, runtime, header.expr).transformJx(header, variant === 'solidjs'),
43
41
  loaderExts: ['.js', '.ts'],
44
- writeFiles,
45
- defaultLoaders: async () => {
46
- const available = ['default'];
47
- return available;
42
+ defaultLoaders: dependencies => {
43
+ const loaders = ['default'];
44
+ if (dependencies.has('react') || dependencies.has('preact')) {
45
+ loaders.unshift('react');
46
+ }
47
+ // if (dependencies.has('solid-js')) {
48
+ // loaders.unshift('solidjs')
49
+ // }
50
+ return loaders;
48
51
  },
49
52
  defaultLoaderPath: (loader) => {
53
+ if (loader === 'default') {
54
+ return vanillaAdapter().defaultLoaderPath('vite');
55
+ }
50
56
  return new URL(`../src/loaders/${loader}.js`, import.meta.url).pathname;
51
57
  },
58
+ ...rest
52
59
  };
53
60
  };
54
61
  //# 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,qBAAqB,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AAC1E,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AAMjD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAEjD,MAAM,cAAc,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;AAExC,MAAM,YAAY,GAAkB,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE;IAClD,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC;QACnC,OAAO,KAAK,CAAA;IAChB,CAAC;IACD,IAAI,cAAc,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QAC3C,OAAO,KAAK,CAAA;IAChB,CAAC;IACD,IAAI,OAAO,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC7B,OAAO,IAAI,CAAA;IACf,CAAC;IACD,IAAI,OAAO,CAAC,SAAS,KAAK,UAAU,EAAE,CAAC;QACnC,OAAO,KAAK,CAAA;IAChB,CAAC;IACD,OAAO,IAAI,CAAA;AACf,CAAC,CAAA;AAED,MAAM,WAAW,GAAgB;IAC7B,KAAK,EAAE,EAAE,OAAO,EAAE,0BAA0B,EAAE,MAAM,EAAE,WAAW,EAAE;IACnE,OAAO,EAAE,wBAAwB;IACjC,WAAW,EAAE,QAAQ;IACrB,SAAS,EAAE,YAAY;IACvB,YAAY,EAAE,KAAK;IACnB,UAAU,EAAE,KAAK;IACjB,cAAc,EAAE,qBAAqB;IACrC,UAAU,EAAE,EAAE;IACd,cAAc,EAAE,IAAI;CACvB,CAAA;AAED,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,OAAoB,WAAW,EAAW,EAAE;IAChE,MAAM,EACF,SAAS,EACT,WAAW,EACX,KAAK,EACL,OAAO,EACP,YAAY,EACZ,UAAU,EACV,cAAc,EACd,UAAU,EACV,cAAc,GACjB,GAAG,gBAAgB,CAAC,IAAI,EAAE,WAAW,CAAC,CAAA;IACvC,OAAO;QACH,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE;YAChD,MAAM,WAAW,GAAG,IAAI,cAAc,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;YAC7H,OAAO,WAAW,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;QAC1C,CAAC;QACD,KAAK;QACL,OAAO;QACP,YAAY;QACZ,UAAU;QACV,cAAc;QACd,UAAU,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC;QAC1B,UAAU;QACV,cAAc,EAAE,KAAK,IAAI,EAAE;YACvB,MAAM,SAAS,GAAG,CAAC,SAAS,CAAC,CAAA;YAC7B,OAAO,SAAS,CAAA;QACpB,CAAC;QACD,iBAAiB,EAAE,CAAC,MAAc,EAAE,EAAE;YAClC,OAAO,IAAI,GAAG,CAAC,kBAAkB,MAAM,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAA;QAC3E,CAAC;KACJ,CAAA;AACL,CAAC,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AACnF,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,yBAAyB,CAAA;AAQnE,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAEjD,MAAM,cAAc,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;AAExC,MAAM,YAAY,GAAkB,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE;IAClD,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC;QACnC,OAAO,KAAK,CAAA;IAChB,CAAC;IACD,IAAI,cAAc,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QAC3C,OAAO,KAAK,CAAA;IAChB,CAAC;IACD,IAAI,OAAO,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC7B,OAAO,IAAI,CAAA;IACf,CAAC;IACD,IAAI,OAAO,CAAC,SAAS,KAAK,UAAU,EAAE,CAAC;QACnC,OAAO,KAAK,CAAA;IAChB,CAAC;IACD,OAAO,IAAI,CAAA;AACf,CAAC,CAAA;AAMD,MAAM,WAAW,GAAY;IACzB,KAAK,EAAE,EAAE,OAAO,EAAE,0BAA0B,EAAE,MAAM,EAAE,WAAW,EAAE;IACnE,OAAO,EAAE,wBAAwB;IACjC,WAAW,EAAE,QAAQ;IACrB,SAAS,EAAE,YAAY;IACvB,YAAY,EAAE,KAAK;IACnB,UAAU,EAAE,KAAK;IACjB,cAAc,EAAE,qBAAqB;IACrC,UAAU,EAAE,EAAE;IACd,UAAU,EAAE,UAAU;IACtB,OAAO,EAAE;QACL,WAAW,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,QAAQ,IAAI,IAAI;QAC/C,QAAQ,EAAE,IAAI,CAAC,EAAE,CAAC,IAAI;QACtB,QAAQ,EAAE,IAAI,CAAC,EAAE,CAAC,IAAI;KACzB;IACD,OAAO,EAAE,SAAS;CACrB,CAAA;AAED,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,OAAgB,WAAW,EAAW,EAAE;IAC5D,MAAM,EACF,SAAS,EACT,WAAW,EACX,OAAO,EACP,OAAO,EACP,GAAG,IAAI,EACV,GAAG,gBAAgB,CAAC,IAAI,EAAE,WAAW,CAAC,CAAA;IACvC,OAAO;QACH,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,IAAI,cAAc,CACnE,OAAO,EACP,QAAQ,EACR,KAAK,EACL,SAAS,EACT,WAAW,EACX,OAAyB,EACzB,MAAM,CAAC,IAAI,CACd,CAAC,WAAW,CAAC,MAAM,EAAE,OAAO,KAAK,SAAS,CAAC;QAC5C,UAAU,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC;QAC1B,cAAc,EAAE,YAAY,CAAC,EAAE;YAC3B,MAAM,OAAO,GAAG,CAAC,SAAS,CAAC,CAAA;YAC3B,IAAI,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC1D,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;YAC5B,CAAC;YACD,sCAAsC;YACtC,iCAAiC;YACjC,IAAI;YACJ,OAAO,OAAO,CAAA;QAClB,CAAC;QACD,iBAAiB,EAAE,CAAC,MAAc,EAAE,EAAE;YAClC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBACvB,OAAO,cAAc,EAAE,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAA;YACrD,CAAC;YACD,OAAO,IAAI,GAAG,CAAC,kBAAkB,MAAM,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAA;QAC3E,CAAC;QACD,GAAG,IAA2B;KACjC,CAAA;AACL,CAAC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAEhD,KAAK,qBAAqB,GAAG;IACzB,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,GAAG,EAAE,SAAS,CAAA;IACd,IAAI,EAAE,QAAQ,CAAA;IACd,IAAI,EAAE,GAAG,EAAE,CAAA;CACd,CAAA;AAED,wBAAgB,cAAc,CAAC,EAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAC,EAAE,qBAAqB,EAAE,CAAC,EAAE,MAAM,OAevF;AAED,MAAM,CAAC,OAAO,UAAU,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,SAEpE"}
1
+ {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAE/C,MAAM,MAAM,qBAAqB,GAAG;IAChC,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,GAAG,EAAE,SAAS,CAAA;IACd,IAAI,EAAE,QAAQ,CAAA;IACd,IAAI,EAAE,GAAG,EAAE,CAAA;CACd,CAAA;AAED,wBAAgB,cAAc,CAAC,EAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAC,EAAE,qBAAqB,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,KAAK,GAAG,SAAS,CAepH;yBAEe,OAAO,qBAAqB;AAA5C,wBAEC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime.solid.d.ts","sourceRoot":"","sources":["../src/runtime.solid.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,qBAAqB,EAAkB,MAAM,eAAe,CAAA;yBAG1D,OAAO,qBAAqB;AAA5C,wBAIC"}
@@ -1,9 +1,9 @@
1
1
  import { type Program } from "acorn";
2
- import { NestText } from 'wuchale/adapters';
2
+ import { NestText } from 'wuchale';
3
3
  import type * as JX from 'estree-jsx';
4
4
  import { Transformer } from 'wuchale/adapter-vanilla';
5
- import type { IndexTracker, HeuristicFunc, TransformOutput, CommentDirectives, TransformHeader } from 'wuchale/adapters';
6
- import { type VisitForNested, type WrapNestedFunc } from "wuchale/adapter-utils/mixed-element.js";
5
+ import type { IndexTracker, HeuristicFunc, TransformOutput, CommentDirectives, TransformHeader, RuntimeOptions } from 'wuchale';
6
+ import { MixedVisitor } from "wuchale/adapter-utils";
7
7
  export declare function parseScript(content: string): [Program, JX.Comment[][]];
8
8
  type MixedNodesTypes = JX.JSXElement | JX.JSXFragment | JX.JSXText | JX.JSXExpressionContainer | JX.JSXSpreadChild;
9
9
  export declare class JSXTransformer extends Transformer {
@@ -12,10 +12,9 @@ export declare class JSXTransformer extends Transformer {
12
12
  commentDirectivesStack: CommentDirectives[];
13
13
  lastVisitIsComment: boolean;
14
14
  currentElementI: number;
15
- constructor(content: string, filename: string, index: IndexTracker, heuristic: HeuristicFunc, pluralsFunc: string, initInsideFuncExpr: string | null);
16
- visitChildrenJd: (node: JX.JSXElement | JX.JSXFragment) => NestText[];
17
- visitForNested: VisitForNested<MixedNodesTypes>;
18
- wrapNested: WrapNestedFunc;
15
+ mixedVisitor: MixedVisitor<MixedNodesTypes>;
16
+ constructor(content: string, filename: string, index: IndexTracker, heuristic: HeuristicFunc, pluralsFunc: string, runtimeOpts: RuntimeOptions, initRuntimeExpr: string | null);
17
+ initMixedVisitor: () => MixedVisitor<MixedNodesTypes>;
19
18
  visitChildrenJ: (node: JX.JSXElement | JX.JSXFragment) => NestText[];
20
19
  visitNameJSXNamespacedName: (node: JX.JSXNamespacedName) => string;
21
20
  visitNameJSXMemberExpression: (node: JX.JSXMemberExpression) => string;
@@ -30,7 +29,7 @@ export declare class JSXTransformer extends Transformer {
30
29
  visitJSXSpreadAttribute: (node: JX.JSXSpreadAttribute) => NestText[];
31
30
  visitJSXEmptyExpression: (node: JX.JSXEmptyExpression) => NestText[];
32
31
  visitJx: (node: JX.Node | JX.JSXSpreadChild | Program) => NestText[];
33
- transformJx: (header: TransformHeader) => TransformOutput;
32
+ transformJx: (header: TransformHeader, solidVariant: boolean) => TransformOutput;
34
33
  }
35
34
  export {};
36
35
  //# sourceMappingURL=transformer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"transformer.d.ts","sourceRoot":"","sources":["../src/transformer.ts"],"names":[],"mappings":"AACA,OAAO,EAAU,KAAK,OAAO,EAAE,MAAM,OAAO,CAAA;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAE3C,OAAO,KAAK,KAAK,EAAE,MAAM,YAAY,CAAA;AAErC,OAAO,EAAE,WAAW,EAAkC,MAAM,yBAAyB,CAAA;AACrF,OAAO,KAAK,EACR,YAAY,EACZ,aAAa,EACb,eAAe,EACf,iBAAiB,EACjB,eAAe,EAClB,MAAM,kBAAkB,CAAA;AAEzB,OAAO,EAAqB,KAAK,cAAc,EAAE,KAAK,cAAc,EAAE,MAAM,wCAAwC,CAAA;AAIpH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,CAGtE;AAKD,KAAK,eAAe,GAAG,EAAE,CAAC,UAAU,GAAG,EAAE,CAAC,WAAW,GAAG,EAAE,CAAC,OAAO,GAAG,EAAE,CAAC,sBAAsB,GAAG,EAAE,CAAC,cAAc,CAAA;AAElH,qBAAa,cAAe,SAAQ,WAAW;IAG3C,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,cAAc,EAAE,OAAO,CAAQ;IAC/B,sBAAsB,EAAE,iBAAiB,EAAE,CAAK;IAChD,kBAAkB,EAAE,OAAO,CAAQ;IACnC,eAAe,SAAI;gBAEP,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,eAAe,GAAI,MAAM,EAAE,CAAC,UAAU,GAAG,EAAE,CAAC,WAAW,KAAG,QAAQ,EAAE,CAMnE;IAED,cAAc,EAAE,cAAc,CAAC,eAAe,CAAC,CAM9C;IAED,UAAU,EAAE,cAAc,CAwBzB;IAED,cAAc,GAAI,MAAM,EAAE,CAAC,UAAU,GAAG,EAAE,CAAC,WAAW,KAAG,QAAQ,EAAE,CAyBjE;IAEF,0BAA0B,GAAI,MAAM,EAAE,CAAC,iBAAiB,KAAG,MAAM,CAEhE;IAED,4BAA4B,GAAI,MAAM,EAAE,CAAC,mBAAmB,KAAG,MAAM,CAEpE;IAED,sBAAsB,GAAI,MAAM,EAAE,CAAC,aAAa,KAAG,MAAM,CAAa;IAEtE,SAAS,GAAI,MAAM,EAAE,CAAC,aAAa,GAAG,EAAE,CAAC,mBAAmB,GAAG,EAAE,CAAC,iBAAiB,KAAG,MAAM,CAE3F;IAED,eAAe,GAAI,MAAM,EAAE,CAAC,UAAU,KAAG,QAAQ,EAAE,CAgBlD;IAED,YAAY,GAAI,MAAM,EAAE,CAAC,OAAO,KAAG,QAAQ,EAAE,CAiB5C;IAED,gBAAgB,GAAI,MAAM,EAAE,CAAC,WAAW,KAAG,QAAQ,EAAE,CAA6B;IAElF,oBAAoB,GAAI,MAAM,EAAE,CAAC,kBAAkB,KAAG,MAAM,CAO3D;IAED,2BAA2B,GAAI,MAAM,EAAE,CAAC,sBAAsB,KAAG,QAAQ,EAAE,CAE1E;IAED,iBAAiB,GAAI,MAAM,EAAE,CAAC,YAAY,KAAG,QAAQ,EAAE,CA8BtD;IAED,uBAAuB,GAAI,MAAM,EAAE,CAAC,kBAAkB,KAAG,QAAQ,EAAE,CAA6B;IAEhG,uBAAuB,GAAI,MAAM,EAAE,CAAC,kBAAkB,KAAG,QAAQ,EAAE,CAalE;IAED,OAAO,GAAI,MAAM,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC,cAAc,GAAG,OAAO,KAAG,QAAQ,EAAE,CAkBlE;IAED,WAAW,GAAI,QAAQ,eAAe,KAAG,eAAe,CAevD;CACJ"}
1
+ {"version":3,"file":"transformer.d.ts","sourceRoot":"","sources":["../src/transformer.ts"],"names":[],"mappings":"AACA,OAAO,EAAU,KAAK,OAAO,EAAE,MAAM,OAAO,CAAA;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAElC,OAAO,KAAK,KAAK,EAAE,MAAM,YAAY,CAAA;AAErC,OAAO,EAAE,WAAW,EAAkC,MAAM,yBAAyB,CAAA;AACrF,OAAO,KAAK,EACR,YAAY,EACZ,aAAa,EACb,eAAe,EACf,iBAAiB,EACjB,eAAe,EACf,cAAc,EACjB,MAAM,SAAS,CAAA;AAChB,OAAO,EAAqB,YAAY,EAAE,MAAM,uBAAuB,CAAA;AAIvE,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,CAGtE;AAKD,KAAK,eAAe,GAAG,EAAE,CAAC,UAAU,GAAG,EAAE,CAAC,WAAW,GAAG,EAAE,CAAC,OAAO,GAAG,EAAE,CAAC,sBAAsB,GAAG,EAAE,CAAC,cAAc,CAAA;AAElH,qBAAa,cAAe,SAAQ,WAAW;IAG3C,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,cAAc,EAAE,OAAO,CAAQ;IAC/B,sBAAsB,EAAE,iBAAiB,EAAE,CAAK;IAChD,kBAAkB,EAAE,OAAO,CAAQ;IACnC,eAAe,SAAI;IAEnB,YAAY,EAAE,YAAY,CAAC,eAAe,CAAC,CAAA;gBAE/B,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,GAAG,IAAI;IAI9K,gBAAgB,sCAqDd;IAEF,cAAc,GAAI,MAAM,EAAE,CAAC,UAAU,GAAG,EAAE,CAAC,WAAW,KAAG,QAAQ,EAAE,CAIjE;IAEF,0BAA0B,GAAI,MAAM,EAAE,CAAC,iBAAiB,KAAG,MAAM,CAEhE;IAED,4BAA4B,GAAI,MAAM,EAAE,CAAC,mBAAmB,KAAG,MAAM,CAEpE;IAED,sBAAsB,GAAI,MAAM,EAAE,CAAC,aAAa,KAAG,MAAM,CAAa;IAEtE,SAAS,GAAI,MAAM,EAAE,CAAC,aAAa,GAAG,EAAE,CAAC,mBAAmB,GAAG,EAAE,CAAC,iBAAiB,KAAG,MAAM,CAE3F;IAED,eAAe,GAAI,MAAM,EAAE,CAAC,UAAU,KAAG,QAAQ,EAAE,CAgBlD;IAED,YAAY,GAAI,MAAM,EAAE,CAAC,OAAO,KAAG,QAAQ,EAAE,CAiB5C;IAED,gBAAgB,GAAI,MAAM,EAAE,CAAC,WAAW,KAAG,QAAQ,EAAE,CAA6B;IAElF,oBAAoB,GAAI,MAAM,EAAE,CAAC,kBAAkB,KAAG,MAAM,CAO3D;IAED,2BAA2B,GAAI,MAAM,EAAE,CAAC,sBAAsB,KAAG,QAAQ,EAAE,CAE1E;IAED,iBAAiB,GAAI,MAAM,EAAE,CAAC,YAAY,KAAG,QAAQ,EAAE,CA8BtD;IAED,uBAAuB,GAAI,MAAM,EAAE,CAAC,kBAAkB,KAAG,QAAQ,EAAE,CAA6B;IAEhG,uBAAuB,GAAI,MAAM,EAAE,CAAC,kBAAkB,KAAG,QAAQ,EAAE,CAalE;IAED,OAAO,GAAI,MAAM,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC,cAAc,GAAG,OAAO,KAAG,QAAQ,EAAE,CAkBlE;IAED,WAAW,GAAI,QAAQ,eAAe,EAAE,cAAc,OAAO,KAAG,eAAe,CAgB9E;CACJ"}
@@ -1,11 +1,10 @@
1
1
  import MagicString from "magic-string";
2
2
  import { Parser } from "acorn";
3
- import { NestText } from 'wuchale/adapters';
3
+ import { NestText } from 'wuchale';
4
4
  import { tsPlugin } from '@sveltejs/acorn-typescript';
5
5
  import jsx from 'acorn-jsx';
6
6
  import { Transformer, scriptParseOptionsWithComments } from 'wuchale/adapter-vanilla';
7
- import { nonWhitespaceText, varNames } from "wuchale/adapter-utils/utils.js";
8
- import { visitMixedContent } from "wuchale/adapter-utils/mixed-element.js";
7
+ import { nonWhitespaceText, MixedVisitor } from "wuchale/adapter-utils";
9
8
  const JsxParser = Parser.extend(tsPlugin(), jsx());
10
9
  export function parseScript(content) {
11
10
  const [opts, comments] = scriptParseOptionsWithComments();
@@ -20,75 +19,70 @@ export class JSXTransformer extends Transformer {
20
19
  commentDirectivesStack = [];
21
20
  lastVisitIsComment = false;
22
21
  currentElementI = 0;
23
- constructor(content, filename, index, heuristic, pluralsFunc, initInsideFuncExpr) {
24
- super(content, filename, index, heuristic, pluralsFunc, initInsideFuncExpr);
22
+ mixedVisitor;
23
+ constructor(content, filename, index, heuristic, pluralsFunc, runtimeOpts, initRuntimeExpr) {
24
+ super(content, filename, index, heuristic, pluralsFunc, runtimeOpts, initRuntimeExpr);
25
25
  }
26
- visitChildrenJd = (node) => {
27
- const txt = [];
28
- for (const child of node.children) {
29
- txt.push(...this.visitJx(child));
30
- }
31
- return txt;
32
- };
33
- visitForNested = (child, inCompoundText) => {
34
- const inCompoundTextPrev = this.inCompoundText;
35
- this.inCompoundText = inCompoundText;
36
- const childTxts = this.visitJx(child);
37
- this.inCompoundText = inCompoundTextPrev; // restore
38
- return childTxts;
39
- };
40
- wrapNested = (txt, hasExprs, nestedRanges, lastChildEnd) => {
41
- for (const [i, [childStart, _, haveCtx]] of nestedRanges.entries()) {
42
- let toAppend;
43
- if (i === 0) {
44
- toAppend = `<${rtComponent} tags={[`;
45
- }
46
- else {
47
- toAppend = ', ';
48
- }
49
- this.mstr.appendRight(childStart, `${toAppend}${haveCtx ? varNames.nestCtx : '()'} => `);
50
- }
51
- let begin = `]} ctx=`;
52
- if (this.inCompoundText) {
53
- begin += `{${varNames.nestCtx}} nest`;
54
- }
55
- else {
56
- const index = this.index.get(txt.toKey());
57
- begin += `{${varNames.rtCtx}(${index})}`;
58
- }
59
- let end = ' />';
60
- if (hasExprs) {
61
- begin += ' args={[';
62
- end = ']}' + end;
63
- }
64
- this.mstr.appendLeft(lastChildEnd, begin);
65
- this.mstr.appendRight(lastChildEnd, end);
66
- };
67
- visitChildrenJ = (node) => visitMixedContent({
68
- children: node.children,
26
+ initMixedVisitor = () => new MixedVisitor({
69
27
  mstr: this.mstr,
28
+ vars: this.vars,
70
29
  getRange: node => ({
71
30
  // @ts-expect-error
72
31
  start: node.start,
73
32
  // @ts-expect-error
74
33
  end: node.end
75
34
  }),
76
- isComment: child => child.type === 'JSXExpressionContainer'
77
- && child.expression.type === 'JSXEmptyExpression'
35
+ isComment: node => node.type === 'JSXExpressionContainer'
36
+ && node.expression.type === 'JSXEmptyExpression'
78
37
  // @ts-expect-error
79
- && child.expression.end > child.expression.start,
80
- isText: child => child.type === 'JSXText',
81
- isExpression: child => child.type === 'JSXExpressionContainer',
82
- getTextContent: (child) => child.value,
83
- getCommentData: (child) => this.getMarkupCommentBody(child.expression),
38
+ && node.expression.end > node.expression.start,
39
+ isText: node => node.type === 'JSXText',
40
+ isExpression: node => node.type === 'JSXExpressionContainer',
41
+ getTextContent: (node) => node.value,
42
+ getCommentData: (node) => this.getMarkupCommentBody(node.expression),
84
43
  canHaveChildren: node => nodesWithChildren.includes(node.type),
85
- commentDirectives: this.commentDirectives,
86
- inCompoundText: this.inCompoundText,
87
- visit: this.visitForNested,
44
+ visitFunc: (child, inCompoundText) => {
45
+ const inCompoundTextPrev = this.inCompoundText;
46
+ this.inCompoundText = inCompoundText;
47
+ const childTxts = this.visitJx(child);
48
+ this.inCompoundText = inCompoundTextPrev; // restore
49
+ return childTxts;
50
+ },
88
51
  visitExpressionTag: this.visitJSXExpressionContainer,
89
52
  checkHeuristic: txt => this.checkHeuristic(txt, { scope: 'markup', element: this.currentElement })[0],
90
53
  index: this.index,
91
- wrapNested: this.wrapNested,
54
+ wrapNested: (txt, hasExprs, nestedRanges, lastChildEnd) => {
55
+ for (const [i, [childStart, _, haveCtx]] of nestedRanges.entries()) {
56
+ let toAppend;
57
+ if (i === 0) {
58
+ toAppend = `<${rtComponent} tags={[`;
59
+ }
60
+ else {
61
+ toAppend = ', ';
62
+ }
63
+ this.mstr.appendRight(childStart, `${toAppend}${haveCtx ? this.vars.nestCtx : '()'} => `);
64
+ }
65
+ let begin = `]} ctx=`;
66
+ if (this.inCompoundText) {
67
+ begin += `{${this.vars.nestCtx}} nest`;
68
+ }
69
+ else {
70
+ const index = this.index.get(txt.toKey());
71
+ begin += `{${this.vars.rtCtx}(${index})}`;
72
+ }
73
+ let end = ' />';
74
+ if (hasExprs) {
75
+ begin += ' args={[';
76
+ end = ']}' + end;
77
+ }
78
+ this.mstr.appendLeft(lastChildEnd, begin);
79
+ this.mstr.appendRight(lastChildEnd, end);
80
+ },
81
+ });
82
+ visitChildrenJ = (node) => this.mixedVisitor.visit({
83
+ children: node.children,
84
+ commentDirectives: this.commentDirectives,
85
+ inCompoundText: this.inCompoundText,
92
86
  });
93
87
  visitNameJSXNamespacedName = (node) => {
94
88
  return `${this.visitName(node.namespace)}:${this.visitName(node.name)}`;
@@ -128,7 +122,7 @@ export class JSXTransformer extends Transformer {
128
122
  // @ts-expect-error
129
123
  node.start + startWh,
130
124
  // @ts-expect-error
131
- node.end - endWh, `{${varNames.rtTrans}(${this.index.get(txt.toKey())})}`);
125
+ node.end - endWh, `{${this.vars.rtTrans}(${this.index.get(txt.toKey())})}`);
132
126
  return [txt];
133
127
  };
134
128
  visitJSXFragment = (node) => this.visitChildrenJ(node);
@@ -170,7 +164,7 @@ export class JSXTransformer extends Transformer {
170
164
  // @ts-expect-error
171
165
  value.start,
172
166
  // @ts-expect-error
173
- value.end, `{${varNames.rtTrans}(${this.index.get(txt.toKey())})}`);
167
+ value.end, `{${this.vars.rtTrans}(${this.index.get(txt.toKey())})}`);
174
168
  return [txt];
175
169
  };
176
170
  visitJSXSpreadAttribute = (node) => this.visit(node.argument);
@@ -208,18 +202,19 @@ export class JSXTransformer extends Transformer {
208
202
  this.commentDirectives = commentDirectivesPrev;
209
203
  return txts;
210
204
  };
211
- transformJx = (header) => {
205
+ transformJx = (header, solidVariant) => {
212
206
  const [ast, comments] = parseScript(this.content);
213
207
  this.comments = comments;
214
208
  this.mstr = new MagicString(this.content);
209
+ this.mixedVisitor = this.initMixedVisitor();
215
210
  const txts = this.visitJx(ast);
216
211
  if (!txts.length) {
217
212
  return this.finalize(txts);
218
213
  }
219
214
  const headerFin = [
220
- `import ${rtComponent} from "@wuchale/jsx/runtime.jsx"`,
215
+ `import ${rtComponent} from "@wuchale/jsx/runtime${solidVariant ? '.solid' : ''}.jsx"`,
221
216
  header.head,
222
- `const ${varNames.rtConst} = ${header.expr}\n`,
217
+ this.runtimeOpts.initInScope({ funcName: null, file: this.filename }) ? `const ${this.vars.rtConst} = ${header.expr}\n` : '',
223
218
  ].join('\n');
224
219
  this.mstr.appendRight(0, headerFin + '\n');
225
220
  return this.finalize(txts);
@@ -1 +1 @@
1
- {"version":3,"file":"transformer.js","sourceRoot":"","sources":["../src/transformer.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/jsx",
3
- "version": "0.2.0",
3
+ "version": "0.4.0",
4
4
  "description": "Protobuf-like i18n from normal code for JSX",
5
5
  "scripts": {
6
6
  "dev": "tsc --watch",
@@ -42,6 +42,10 @@
42
42
  "./runtime.jsx": {
43
43
  "types": "./dist/runtime.d.ts",
44
44
  "default": "./dist/runtime.jsx"
45
+ },
46
+ "./runtime.solid.jsx": {
47
+ "types": "./dist/runtime.solid.d.ts",
48
+ "default": "./dist/runtime.solid.jsx"
45
49
  }
46
50
  },
47
51
  "repository": {
@@ -52,11 +56,23 @@
52
56
  "bugs": "https://github.com/wuchalejs/wuchale/issues",
53
57
  "author": "K1DV5",
54
58
  "license": "MIT",
59
+ "peerDependencies": {
60
+ "react": "^19.1.1",
61
+ "solid-js": "^1.9.9"
62
+ },
63
+ "peerDependenciesMeta": {
64
+ "solid-js": {
65
+ "optional": true
66
+ },
67
+ "react": {
68
+ "optional": true
69
+ }
70
+ },
55
71
  "dependencies": {
56
72
  "@sveltejs/acorn-typescript": "^1.0.5",
57
73
  "acorn": "^8.15.0",
58
74
  "acorn-jsx": "^5.3.2",
59
- "wuchale": "^0.11.0"
75
+ "wuchale": "^0.13.0"
60
76
  },
61
77
  "devDependencies": {
62
78
  "@types/estree-jsx": "^1.0.5",
@@ -0,0 +1,28 @@
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/load-utils'
8
+ import { Runtime } from 'wuchale/runtime'
9
+ import { useState, useEffect } from 'react'
10
+
11
+ const callbacks = {}
12
+
13
+ const collection = {
14
+ get: () => null, // not needed, using useState
15
+ set: (loadID, catalog) => {
16
+ callbacks[loadID]?.(catalog)
17
+ }
18
+ }
19
+
20
+ registerLoaders(key, loadCatalog, loadIDs, collection)
21
+
22
+ export default loadID => {
23
+ const [runtime, setRuntime] = useState(new Runtime())
24
+ useEffect(() => {
25
+ callbacks[loadID] = catalog => setRuntime(new Runtime(catalog))
26
+ })
27
+ return runtime
28
+ }
@@ -0,0 +1,15 @@
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/load-utils'
8
+ import { createStore } from 'solid-js/store'
9
+
10
+ const [store, setStore] = createStore({})
11
+
12
+ export default registerLoaders(key, loadCatalog, loadIDs, {
13
+ get: loadID => store[loadID],
14
+ set: setStore,
15
+ })
package/dist/runtime.d.ts DELETED
@@ -1,11 +0,0 @@
1
- import type { Composite } from 'wuchale/runtime';
2
- type WuchaleComponentProps = {
3
- nest?: boolean;
4
- ctx: Composite;
5
- tags: Function;
6
- args: any[];
7
- };
8
- export declare function selectFragment({ nest, ctx, tags, args }: WuchaleComponentProps, i: number): any;
9
- export default function WuchaleComponent(props: WuchaleComponentProps): any[];
10
- export {};
11
- //# sourceMappingURL=runtime.d.ts.map
package/dist/runtime.jsx DELETED
@@ -1,23 +0,0 @@
1
- export function selectFragment({ nest, ctx, tags, args }, i) {
2
- if (typeof ctx === 'string') {
3
- return ctx;
4
- }
5
- if (typeof ctx === 'number') {
6
- if (!nest || i > 0) {
7
- return args[ctx];
8
- }
9
- }
10
- else {
11
- const tag = tags[ctx[0]];
12
- if (tag == null) {
13
- return 'i18n-404:tag';
14
- }
15
- else {
16
- return tag(ctx);
17
- }
18
- }
19
- }
20
- export default function WuchaleComponent(props) {
21
- return props.ctx.map((fragment, i) => selectFragment({ ...props, ctx: fragment }, i));
22
- }
23
- //# sourceMappingURL=runtime.jsx.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"runtime.jsx","sourceRoot":"","sources":["../src/runtime.tsx"],"names":[],"mappings":"AASA,MAAM,UAAU,cAAc,CAAC,EAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAwB,EAAE,CAAS;IACpF,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC1B,OAAO,GAAG,CAAA;IACd,CAAC;IAAC,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC5B,IAAI,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YACjB,OAAO,IAAI,CAAC,GAAG,CAAC,CAAA;QACpB,CAAC;IACL,CAAC;SAAM,CAAC;QACJ,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAW,CAAC,CAAA;QAClC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;YACd,OAAO,cAAc,CAAA;QACzB,CAAC;aAAM,CAAC;YACJ,OAAO,GAAG,CAAC,GAAG,CAAC,CAAA;QACnB,CAAC;IACL,CAAC;AACL,CAAC;AAED,MAAM,CAAC,OAAO,UAAU,gBAAgB,CAAC,KAA4B;IACjE,OAAO,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC,cAAc,CAAC,EAAC,GAAG,KAAK,EAAE,GAAG,EAAE,QAAqB,EAAC,EAAE,CAAC,CAAC,CAAC,CAAA;AACpG,CAAC"}
@@ -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 = {}
10
-
11
- export default registerLoaders(key, loadCatalog, loadIDs, catalogs)