@backtickjs/compiler 0.2.1 → 0.2.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.
@@ -5,7 +5,13 @@ export declare function isClientImportDeclaration(ts: typeof import("typescript"
5
5
  };
6
6
  export declare function virtualClientImport(ts: typeof import("typescript"), sourceFile: ts.SourceFile, declaration: ts.ImportDeclaration): Segment[];
7
7
  export declare function packageOf(specifier: string): string;
8
- export declare function installedVersion(ts: typeof import("typescript"), specifier: string, fileName: string): string | undefined;
8
+ export declare function installedModule(ts: typeof import("typescript"), specifier: string, fileName: string): {
9
+ from: string;
10
+ version: string;
11
+ } | undefined;
9
12
  export declare function runtimeClientImport(ts: typeof import("typescript"), declaration: ts.ImportDeclaration & {
10
13
  moduleSpecifier: ts.StringLiteral;
11
- }, version: string): ts.Statement[];
14
+ }, { from, version }: {
15
+ from: string;
16
+ version: string;
17
+ }): ts.Statement[];
@@ -101,19 +101,23 @@ export function packageOf(specifier) {
101
101
  const segments = specifier.split("/");
102
102
  return segments.slice(0, specifier.startsWith("@") ? 2 : 1).join("/");
103
103
  }
104
- // The version of its package a client import is typed against: as installed
105
- // where the importing file finds it, up its directories as `tsc` finds a config.
106
- export function installedVersion(ts, specifier, fileName) {
107
- const manifest = ts.findConfigFile(ts.sys.resolvePath(fileName), ts.sys.fileExists, `node_modules/${packageOf(specifier)}/package.json`);
104
+ // The module a client import is of, and the version of its package it's typed
105
+ // against: as installed where the importing file finds it, up its directories
106
+ // as `tsc` finds a config. Named by its package's own name, so an alias,
107
+ // `"acme-ui-2": "npm:acme-ui@2"`, imports from `acme-ui`, as clients name it.
108
+ export function installedModule(ts, specifier, fileName) {
109
+ const installed = packageOf(specifier);
110
+ const manifest = ts.findConfigFile(ts.sys.resolvePath(fileName), ts.sys.fileExists, `node_modules/${installed}/package.json`);
108
111
  if (manifest === undefined)
109
112
  return undefined;
110
- const { version } = JSON.parse(ts.sys.readFile(manifest));
111
- return version;
113
+ // A linked folder may not name itself: the folder's name is the module's.
114
+ const { name = installed, version } = JSON.parse(ts.sys.readFile(manifest));
115
+ return { from: name + specifier.slice(installed.length), version };
112
116
  }
113
117
  // For the runtime, a constant per value it names, in the declaration's place:
114
118
  // `const View = { "@backtickjs": "ClientImport", name: "View", from:
115
119
  // "react-native", version: "0.86.3" }`, core's `ClientImport`.
116
- export function runtimeClientImport(ts, declaration, version) {
120
+ export function runtimeClientImport(ts, declaration, { from, version }) {
117
121
  const f = ts.factory;
118
122
  const property = (key, value) => f.createPropertyAssignment(key, f.createStringLiteral(value));
119
123
  return bindingsOf(ts, declaration)
@@ -124,7 +128,7 @@ export function runtimeClientImport(ts, declaration, version) {
124
128
  f.createVariableDeclaration(local.text, undefined, undefined, f.createObjectLiteralExpression([
125
129
  property(f.createStringLiteral("@backtickjs"), "ClientImport"),
126
130
  property("name", name),
127
- property("from", declaration.moduleSpecifier.text),
131
+ property("from", from),
128
132
  property("version", version),
129
133
  ])),
130
134
  ], ts.NodeFlags.Const)), declaration));
@@ -1 +1 @@
1
- {"version":3,"file":"clientImports.js","sourceRoot":"","sources":["../src/clientImports.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"clientImports.js","sourceRoot":"","sources":["../src/clientImports.ts"],"names":[],"mappings":"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"}
package/dist/transform.js CHANGED
@@ -1,4 +1,4 @@
1
- import { isClientImportDeclaration, packageOf, runtimeClientImport, installedVersion, } from "./clientImports.js";
1
+ import { isClientImportDeclaration, packageOf, runtimeClientImport, installedModule, } from "./clientImports.js";
2
2
  import { compileScript } from "./compileScript.js";
3
3
  import { parseSourceFile } from "./parseFile.js";
4
4
  import { rewriteFile } from "./rewriteFile.js";
@@ -43,8 +43,8 @@ export function transform(ts, addDiagnostic, { sourceName = (fileName) => fileNa
43
43
  // installed.
44
44
  if (isClientImportDeclaration(ts, node)) {
45
45
  const { moduleSpecifier } = node;
46
- const version = installedVersion(ts, moduleSpecifier.text, sourceFile.fileName);
47
- if (version === undefined) {
46
+ const installed = installedModule(ts, moduleSpecifier.text, sourceFile.fileName);
47
+ if (installed === undefined) {
48
48
  addDiagnostic?.({
49
49
  file: sourceFile,
50
50
  start: moduleSpecifier.getStart(sourceFile),
@@ -56,7 +56,7 @@ export function transform(ts, addDiagnostic, { sourceName = (fileName) => fileNa
56
56
  });
57
57
  return undefined;
58
58
  }
59
- return runtimeClientImport(ts, node, version);
59
+ return runtimeClientImport(ts, node, installed);
60
60
  }
61
61
  if (ts.isTaggedTemplateExpression(node) &&
62
62
  ts.isIdentifier(node.tag) &&
@@ -1 +1 @@
1
- {"version":3,"file":"transform.js","sourceRoot":"","sources":["../src/transform.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transform.js","sourceRoot":"","sources":["../src/transform.ts"],"names":[],"mappings":"AACA,OAAO,EACL,yBAAyB,EACzB,SAAS,EACT,mBAAmB,EACnB,eAAe,GAChB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,aAAa,EAAe,MAAM,oBAAoB,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAiBnE,MAAM,UAAU,SAAS,CACvB,EAA+B,EAC/B,aAAmD,EACnD,EAAE,UAAU,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,EAAE,OAAO,GAAG,EAAE,KAAuB,EAAE;IAE5E,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,UAAU,EAAE,EAAE;QACjC,MAAM,UAAU,GAAG,eAAe,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;QACnD,IACE,UAAU,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC;YAC/B,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CACxC,yBAAyB,CAAC,EAAE,EAAE,SAAS,CAAC,CACzC,EACD,CAAC;YACD,OAAO,UAAU,CAAC;QACpB,CAAC;QAED,MAAM,aAAa,GAAG,WAAW,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;QAElD,IAAI,aAAa,EAAE,CAAC;YAClB,KAAK,MAAM,UAAU,IAAI,aAAa,CAAC,WAAW,EAAE,CAAC;gBACnD,aAAa,CAAC;oBACZ,IAAI,EAAE,UAAU;oBAChB,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC,KAAK;oBAC7B,MAAM,EAAE,UAAU,CAAC,KAAK,CAAC,GAAG,GAAG,UAAU,CAAC,KAAK,CAAC,KAAK;oBACrD,WAAW,EAAE,UAAU,CAAC,OAAO;oBAC/B,QAAQ,EAAE,UAAU,CAAC,QAAQ;oBAC7B,IAAI,EAAE,UAAU,CAAC,IAAI;oBACrB,MAAM,EAAE,UAAU;iBACnB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,wEAAwE;QACxE,uDAAuD;QACvD,MAAM,IAAI,GAAG,UAAU,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QAC7C,MAAM,OAAO,GAAmB,EAAE,CAAC;QACnC,MAAM,OAAO,GAAG,IAAI,GAAG,EAAmB,CAAC;QAC3C,KAAK,MAAM,CAAC,QAAQ,EAAE,EAAE,OAAO,EAAE,CAAC,IAAI,aAAa,CAAC,OAAO,EAAE,CAAC;YAC5D,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;gBACrB,MAAM,QAAQ,GAAG,aAAa,CAAC,EAAE,EAAE,OAAO,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;gBACnE,MAAM,UAAU,GAAG,UAAU,OAAO,CAAC,MAAM,EAAE,CAAC;gBAC9C,OAAO,CAAC,IAAI,CAAC,iBAAiB,CAAC,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC;gBACnE,OAAO,CAAC,GAAG,CACT,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAAC,UAAU,CAAC,EAC3C,UAAU,CAAC,EAAE,EAAE,UAAU,EAAE,OAAO,CAAC,CACpC,CAAC;YACJ,CAAC;QACH,CAAC;QAED,MAAM,KAAK,GAAe,CAAC,IAAI,EAAE,EAAE;YACjC,sEAAsE;YACtE,wEAAwE;YACxE,aAAa;YACb,IAAI,yBAAyB,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC;gBACxC,MAAM,EAAE,eAAe,EAAE,GAAG,IAAI,CAAC;gBACjC,MAAM,SAAS,GAAG,eAAe,CAC/B,EAAE,EACF,eAAe,CAAC,IAAI,EACpB,UAAU,CAAC,QAAQ,CACpB,CAAC;gBACF,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;oBAC5B,aAAa,EAAE,CAAC;wBACd,IAAI,EAAE,UAAU;wBAChB,KAAK,EAAE,eAAe,CAAC,QAAQ,CAAC,UAAU,CAAC;wBAC3C,MAAM,EAAE,eAAe,CAAC,QAAQ,CAAC,UAAU,CAAC;wBAC5C,WAAW,EAAE,GAAG,SAAS,CAAC,eAAe,CAAC,IAAI,CAAC,0FAA0F;wBACzI,QAAQ,EAAE,EAAE,CAAC,kBAAkB,CAAC,KAAK;wBACrC,IAAI,EAAE,CAAC;wBACP,MAAM,EAAE,UAAU;qBACnB,CAAC,CAAC;oBACH,OAAO,SAAS,CAAC;gBACnB,CAAC;gBACD,OAAO,mBAAmB,CAAC,EAAE,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;YAClD,CAAC;YACD,IACE,EAAE,CAAC,0BAA0B,CAAC,IAAI,CAAC;gBACnC,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC;gBACzB,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,IAAI;gBACtB,IAAI,CAAC,GAAG,IAAI,CAAC,EACb,CAAC;gBACD,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,CAAC;gBACrE,IAAI,OAAO,EAAE,CAAC;oBACZ,OAAO,EAAE,CAAC,cAAc,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;gBACpD,CAAC;YACH,CAAC;YACD,OAAO,EAAE,CAAC,cAAc,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;QACjD,CAAC,CAAC;QACF,MAAM,OAAO,GAAG,EAAE,CAAC,SAAS,CAC1B,UAAU,EACV,KAAK,EACL,EAAE,CAAC,YAAY,CACC,CAAC;QACnB,qEAAqE;QACrE,sBAAsB;QACtB,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,SAAS,CAC1C,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,mBAAmB,CAAC,EAAE,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,CACtE,CAAC;QACF,MAAM,EAAE,GAAG,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;QAChE,OAAO,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,EAAE;YAC/C,GAAG,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;YAClC,GAAG,OAAO;YACV,GAAG,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;SAChC,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@backtickjs/compiler",
3
- "version": "0.2.1",
3
+ "version": "0.2.2",
4
4
  "description": "Internal: the compiler for Backtick client scripts, used by the build plugins, backtick-tsc and the editor tooling",
5
5
  "keywords": [
6
6
  "backtick",
@@ -46,7 +46,7 @@
46
46
  "@jridgewell/trace-mapping": "^0.3.31"
47
47
  },
48
48
  "devDependencies": {
49
- "@backtickjs/core": "^0.2.1",
49
+ "@backtickjs/core": "^0.2.2",
50
50
  "prettier": "^3.6.2",
51
51
  "typescript": "^6.0.3"
52
52
  },
@@ -135,23 +135,27 @@ export function packageOf(specifier: string): string {
135
135
  return segments.slice(0, specifier.startsWith("@") ? 2 : 1).join("/");
136
136
  }
137
137
 
138
- // The version of its package a client import is typed against: as installed
139
- // where the importing file finds it, up its directories as `tsc` finds a config.
140
- export function installedVersion(
138
+ // The module a client import is of, and the version of its package it's typed
139
+ // against: as installed where the importing file finds it, up its directories
140
+ // as `tsc` finds a config. Named by its package's own name, so an alias,
141
+ // `"acme-ui-2": "npm:acme-ui@2"`, imports from `acme-ui`, as clients name it.
142
+ export function installedModule(
141
143
  ts: typeof import("typescript"),
142
144
  specifier: string,
143
145
  fileName: string,
144
- ): string | undefined {
146
+ ): { from: string; version: string } | undefined {
147
+ const installed = packageOf(specifier);
145
148
  const manifest = ts.findConfigFile(
146
149
  ts.sys.resolvePath(fileName),
147
150
  ts.sys.fileExists,
148
- `node_modules/${packageOf(specifier)}/package.json`,
151
+ `node_modules/${installed}/package.json`,
149
152
  );
150
153
  if (manifest === undefined) return undefined;
151
- const { version } = JSON.parse(ts.sys.readFile(manifest)!) as {
152
- version: string;
153
- };
154
- return version;
154
+ // A linked folder may not name itself: the folder's name is the module's.
155
+ const { name = installed, version } = JSON.parse(
156
+ ts.sys.readFile(manifest)!,
157
+ ) as { name?: string; version: string };
158
+ return { from: name + specifier.slice(installed.length), version };
155
159
  }
156
160
 
157
161
  // For the runtime, a constant per value it names, in the declaration's place:
@@ -160,7 +164,7 @@ export function installedVersion(
160
164
  export function runtimeClientImport(
161
165
  ts: typeof import("typescript"),
162
166
  declaration: ts.ImportDeclaration & { moduleSpecifier: ts.StringLiteral },
163
- version: string,
167
+ { from, version }: { from: string; version: string },
164
168
  ): ts.Statement[] {
165
169
  const f = ts.factory;
166
170
  const property = (key: string | ts.PropertyName, value: string) =>
@@ -184,7 +188,7 @@ export function runtimeClientImport(
184
188
  "ClientImport",
185
189
  ),
186
190
  property("name", name),
187
- property("from", declaration.moduleSpecifier.text),
191
+ property("from", from),
188
192
  property("version", version),
189
193
  ]),
190
194
  ),
package/src/transform.ts CHANGED
@@ -3,7 +3,7 @@ import {
3
3
  isClientImportDeclaration,
4
4
  packageOf,
5
5
  runtimeClientImport,
6
- installedVersion,
6
+ installedModule,
7
7
  } from "./clientImports.js";
8
8
  import { compileScript, type Plugin } from "./compileScript.js";
9
9
  import { parseSourceFile } from "./parseFile.js";
@@ -80,12 +80,12 @@ export function transform(
80
80
  // installed.
81
81
  if (isClientImportDeclaration(ts, node)) {
82
82
  const { moduleSpecifier } = node;
83
- const version = installedVersion(
83
+ const installed = installedModule(
84
84
  ts,
85
85
  moduleSpecifier.text,
86
86
  sourceFile.fileName,
87
87
  );
88
- if (version === undefined) {
88
+ if (installed === undefined) {
89
89
  addDiagnostic?.({
90
90
  file: sourceFile,
91
91
  start: moduleSpecifier.getStart(sourceFile),
@@ -97,7 +97,7 @@ export function transform(
97
97
  });
98
98
  return undefined;
99
99
  }
100
- return runtimeClientImport(ts, node, version);
100
+ return runtimeClientImport(ts, node, installed);
101
101
  }
102
102
  if (
103
103
  ts.isTaggedTemplateExpression(node) &&