tungsten 0.1.59 → 0.1.60
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/AnyComponent.d.ts.map +1 -1
- package/dist/ComponentInstance.d.ts +1 -2
- package/dist/ComponentInstance.d.ts.map +1 -1
- package/dist/ComponentInstance.js +4 -1
- package/dist/ComponentRenderInfo.type.d.ts +6 -0
- package/dist/ComponentRenderInfo.type.d.ts.map +1 -0
- package/dist/ComponentRenderInfo.type.js +1 -0
- package/dist/Components.d.ts +4 -2
- package/dist/Components.d.ts.map +1 -1
- package/dist/Components.js +10 -4
- package/dist/ContentNode.d.ts +3 -1
- package/dist/ContentNode.d.ts.map +1 -1
- package/dist/ContentNode.js +1 -0
- package/dist/Framework.d.ts +1 -1
- package/dist/Framework.d.ts.map +1 -1
- package/dist/Framework.js +42 -25
- package/dist/FrameworkConfig.d.ts +20 -4
- package/dist/FrameworkConfig.d.ts.map +1 -1
- package/dist/FunctionComponent.d.ts +2 -0
- package/dist/FunctionComponent.d.ts.map +1 -1
- package/dist/FunctionComponentStandIn.d.ts +4 -4
- package/dist/FunctionComponentStandIn.d.ts.map +1 -1
- package/dist/FunctionComponentStandIn.js +4 -2
- package/dist/Instance/InstanceConfig.d.ts +2 -0
- package/dist/Instance/InstanceConfig.d.ts.map +1 -1
- package/dist/RenderedContentNode.d.ts +1 -1
- package/dist/RenderedContentNode.d.ts.map +1 -1
- package/dist/RenderedContentNode.js +2 -2
- package/dist/RenderingNode.d.ts +23 -8
- package/dist/RenderingNode.d.ts.map +1 -1
- package/dist/RenderingNode.js +39 -8
- package/dist/Servers/DevServer.d.ts.map +1 -1
- package/dist/Servers/DevServer.js +74 -25
- package/dist/Servers/ProdServer.d.ts +5 -1
- package/dist/Servers/ProdServer.d.ts.map +1 -1
- package/dist/Servers/ProdServer.js +49 -33
- package/dist/TungstenElement.d.ts +3 -0
- package/dist/TungstenElement.d.ts.map +1 -0
- package/dist/TungstenElement.js +1 -0
- package/dist/_client/client.d.ts +4 -1
- package/dist/_client/client.d.ts.map +1 -1
- package/dist/_client/client.js +16 -9
- package/dist/babelPlugins/BabelTransformCjsToEsm.d.ts +1 -1
- package/dist/babelPlugins/BabelTransformCjsToEsm.d.ts.map +1 -1
- package/dist/babelPlugins/BabelTransformCjsToFunction.d.ts +1 -1
- package/dist/babelPlugins/BabelTransformCjsToFunction.d.ts.map +1 -1
- package/dist/babelPlugins/BabelTransformCjsToFunction2.d.ts +1 -1
- package/dist/babelPlugins/BabelTransformCjsToFunction2.d.ts.map +1 -1
- package/dist/babelPlugins/{BabelTransformCssImport.d.ts → BabelTransformCssImports.d.ts} +3 -2
- package/dist/babelPlugins/BabelTransformCssImports.d.ts.map +1 -0
- package/dist/babelPlugins/{BabelTransformCssImport.js → BabelTransformCssImports.js} +27 -5
- package/dist/babelPlugins/BabelTransformPackageImports.d.ts.map +1 -1
- package/dist/babelPlugins/BabelTransformPackageImports.js +75 -37
- package/dist/babelPlugins/BabelTransformRemoveServerBlocks.d.ts.map +1 -1
- package/dist/babelPlugins/BabelTransformRemoveServerBlocks.js +5 -0
- package/dist/babelPlugins/BabelTransformRemoveServerCode.d.ts +2 -0
- package/dist/babelPlugins/BabelTransformRemoveServerCode.d.ts.map +1 -0
- package/dist/babelPlugins/BabelTransformRemoveServerCode.js +1 -0
- package/dist/babelPlugins/fixImportsInSassErrorMessage.d.ts.map +1 -1
- package/dist/babelPlugins/{BabelTransformDependencyImportsCjs.d.ts → transformPackageImports/BabelTransformDependencyImportsCjs.d.ts} +1 -1
- package/dist/babelPlugins/transformPackageImports/BabelTransformDependencyImportsCjs.d.ts.map +1 -0
- package/dist/babelPlugins/{BabelTransformDependencyImportsCjs.js → transformPackageImports/BabelTransformDependencyImportsCjs.js} +12 -3
- package/dist/babelPlugins/{BabelTransformDependencyImportsEsm.d.ts → transformPackageImports/BabelTransformDependencyImportsEsm.d.ts} +1 -1
- package/dist/babelPlugins/transformPackageImports/BabelTransformDependencyImportsEsm.d.ts.map +1 -0
- package/dist/babelPlugins/transformPackageImports/BabelTransformDependencyImportsEsm.js +112 -0
- package/dist/bin/commands/compileSimplePackage.d.ts +2 -0
- package/dist/bin/commands/compileSimplePackage.d.ts.map +1 -0
- package/dist/bin/commands/compileSimplePackage.js +51 -0
- package/dist/bin/commands/static.js +2 -2
- package/dist/bin/index.d.ts.map +1 -1
- package/dist/bin/index.js +5 -0
- package/dist/build/babel.user.common.config.js +9 -3
- package/dist/build/bundle.d.ts +1 -2
- package/dist/build/bundle.d.ts.map +1 -1
- package/dist/build/bundle.js +7 -4
- package/dist/build/compileJavascript.d.ts.map +1 -1
- package/dist/build/compileJavascript.js +22 -11
- package/dist/build/compilePackages.d.ts +0 -5
- package/dist/build/compilePackages.d.ts.map +1 -1
- package/dist/build/compilePackages.js +89 -82
- package/dist/build/compileUserApp.d.ts.map +1 -1
- package/dist/build/copyPackageModulesToPackagesFolder.d.ts.map +1 -1
- package/dist/build/copyPackageModulesToPackagesFolder.js +3 -1
- package/dist/build/createClientFiles.d.ts.map +1 -1
- package/dist/build/createClientFiles.js +43 -52
- package/dist/build/createInstanceConfigFile.d.ts +4 -0
- package/dist/build/createInstanceConfigFile.d.ts.map +1 -0
- package/dist/build/{createAppConfig.js → createInstanceConfigFile.js} +2 -2
- package/dist/build/makeBabelUserDevConfig.d.ts.map +1 -1
- package/dist/build/makeBabelUserDevConfig.js +3 -2
- package/dist/build/makeBabelUserProdConfig.js +3 -2
- package/dist/components/Stylesheet.d.ts +1 -0
- package/dist/components/Stylesheet.d.ts.map +1 -1
- package/dist/components/Stylesheet.js +24 -3
- package/dist/createRef.d.ts +4 -2
- package/dist/createRef.d.ts.map +1 -1
- package/dist/createRef.js +5 -2
- package/dist/defaultConfig.d.ts +1 -0
- package/dist/defaultConfig.d.ts.map +1 -1
- package/dist/defaultConfig.js +1 -0
- package/dist/findUserConfig.d.ts.map +1 -1
- package/dist/findUserConfig.js +1 -1
- package/dist/frameworkConfigSchema.d.ts +188 -0
- package/dist/frameworkConfigSchema.d.ts.map +1 -0
- package/dist/frameworkConfigSchema.js +65 -0
- package/dist/getConfig.d.ts +1 -15
- package/dist/getConfig.d.ts.map +1 -1
- package/dist/getConfig.js +12 -11
- package/dist/getRoutes.d.ts.map +1 -1
- package/dist/getRoutes.js +20 -15
- package/dist/getUserConfig.d.ts +3 -0
- package/dist/getUserConfig.d.ts.map +1 -0
- package/dist/getUserConfig.js +25 -0
- package/dist/hooks/getCurrentComponent.d.ts +4 -0
- package/dist/hooks/getCurrentComponent.d.ts.map +1 -1
- package/dist/hooks/getCurrentComponent.js +8 -2
- package/dist/hooks/globalType.d.ts +2 -0
- package/dist/hooks/globalType.d.ts.map +1 -0
- package/dist/hooks/globalType.js +1 -0
- package/dist/hooks/useState.d.ts +1 -1
- package/dist/hooks/useState.d.ts.map +1 -1
- package/dist/hooks/useState.js +5 -5
- package/dist/hydrate/hydrate.d.ts +1 -1
- package/dist/hydrate/hydrate.d.ts.map +1 -1
- package/dist/hydrate/hydrate.js +192 -53
- package/dist/jsx-runtime.d.ts +2 -0
- package/dist/jsx-runtime.d.ts.map +1 -0
- package/dist/jsx-runtime.js +1 -0
- package/dist/jsxRuntime.d.ts.map +1 -1
- package/dist/jsxRuntime.js +5 -1
- package/dist/makeFinalConfig.d.ts.map +1 -1
- package/dist/makeInstanceConfigFromFrameworkConfig.d.ts +4 -0
- package/dist/makeInstanceConfigFromFrameworkConfig.d.ts.map +1 -0
- package/dist/makeInstanceConfigFromFrameworkConfig.js +12 -0
- package/dist/render/componentNodeToRenderingTree.d.ts +6 -0
- package/dist/render/componentNodeToRenderingTree.d.ts.map +1 -0
- package/dist/render/componentNodeToRenderingTree.js +41 -0
- package/dist/render/contentToHtml.d.ts +9 -0
- package/dist/render/contentToHtml.d.ts.map +1 -0
- package/dist/render/contentToHtml.js +44 -0
- package/dist/render/contentToHtmlDev.d.ts +9 -0
- package/dist/render/contentToHtmlDev.d.ts.map +1 -0
- package/dist/render/contentToHtmlDev.js +4 -0
- package/dist/render/contentTreeToRenderingTree.d.ts.map +1 -1
- package/dist/render/contentTreeToRenderingTree.js +8 -8
- package/dist/render/functionComponentNodeToRenderingTree.d.ts.map +1 -1
- package/dist/render/functionComponentNodeToRenderingTree.js +4 -2
- package/dist/render/instantiateClassComponent.d.ts +2 -2
- package/dist/render/instantiateClassComponent.d.ts.map +1 -1
- package/dist/render/instantiateClassComponent.js +1 -1
- package/dist/render/instantiateComponent.d.ts.map +1 -1
- package/dist/render/processProps.d.ts.map +1 -1
- package/dist/render/processProps.js +1 -1
- package/dist/render/renderingTreeToHtml.d.ts.map +1 -1
- package/dist/render/renderingTreeToHtml.js +42 -8
- package/dist/render/rootToHtml.d.ts +2 -1
- package/dist/render/rootToHtml.d.ts.map +1 -1
- package/dist/render/rootToHtml.js +12 -6
- package/dist/render/rootToHtmlDev.d.ts +4 -3
- package/dist/render/rootToHtmlDev.d.ts.map +1 -1
- package/dist/render/rootToHtmlDev.js +2 -2
- package/dist/routing/MatchedRoute.d.ts.map +1 -1
- package/dist/routing/MatchedRoute.js +0 -3
- package/dist/routing/runContentFunction.d.ts +2 -0
- package/dist/routing/runContentFunction.d.ts.map +1 -0
- package/dist/routing/runContentFunction.js +13 -0
- package/dist/staticGen/getAppRoutes.d.ts.map +1 -1
- package/dist/staticGen/getAppRoutes.js +7 -6
- package/dist/staticGen/staticGen.d.ts.map +1 -1
- package/dist/staticGen/staticGen.js +9 -1
- package/dist/update/integrateUpdateVdom.d.ts +13 -1
- package/dist/update/integrateUpdateVdom.d.ts.map +1 -1
- package/dist/update/integrateUpdateVdom.js +112 -49
- package/dist/validChildren.d.ts +4 -2
- package/dist/validChildren.d.ts.map +1 -1
- package/dist/validChildren.js +4 -0
- package/package.json +11 -10
- package/types/jsx/jsx.d.ts +10 -7
- package/dist/babelPlugins/BabelTransformCssImport.d.ts.map +0 -1
- package/dist/babelPlugins/BabelTransformDependencyImportsCjs.d.ts.map +0 -1
- package/dist/babelPlugins/BabelTransformDependencyImportsEsm.d.ts.map +0 -1
- package/dist/babelPlugins/BabelTransformDependencyImportsEsm.js +0 -85
- package/dist/build/compileEnv.d.ts +0 -2
- package/dist/build/compileEnv.d.ts.map +0 -1
- package/dist/build/compileEnv.js +0 -132
- package/dist/build/createAppConfig.d.ts +0 -4
- package/dist/build/createAppConfig.d.ts.map +0 -1
- package/dist/build/webpack.user.prod.config.d.ts +0 -2
- package/dist/build/webpack.user.prod.config.d.ts.map +0 -1
- package/dist/build/webpack.user.prod.config.js +0 -337
- package/dist/createInstanceConfigFromFrameworkConfig.d.ts +0 -4
- package/dist/createInstanceConfigFromFrameworkConfig.d.ts.map +0 -1
- package/dist/createInstanceConfigFromFrameworkConfig.js +0 -9
- package/dist/getAppConfig.d.ts +0 -3
- package/dist/getAppConfig.d.ts.map +0 -1
- package/dist/getAppConfig.js +0 -12
- package/dist/render/componentNodeToRenderingToTree.d.ts +0 -6
- package/dist/render/componentNodeToRenderingToTree.d.ts.map +0 -1
- package/dist/render/componentNodeToRenderingToTree.js +0 -15
- package/dist/render/componentNodeToTree.d.ts +0 -5
- package/dist/render/componentNodeToTree.d.ts.map +0 -1
- package/dist/render/componentNodeToTree.js +0 -16
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BabelTransformCjsToFunction.d.ts","sourceRoot":"","sources":["../../src/babelPlugins/BabelTransformCjsToFunction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAC3C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AAa5C,KAAK,IAAI,GAAG;IACR,YAAY,EAAE,MAAM,EAAE,CAAA;CACzB,CAAA;AAED,wBAAgB,+BAA+B,CAAC,IAAI,EAAE,IAAI,WACH,KAAK;eASrC,
|
|
1
|
+
{"version":3,"file":"BabelTransformCjsToFunction.d.ts","sourceRoot":"","sources":["../../src/babelPlugins/BabelTransformCjsToFunction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAC3C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AAa5C,KAAK,IAAI,GAAG;IACR,YAAY,EAAE,MAAM,EAAE,CAAA;CACzB,CAAA;AAED,wBAAgB,+BAA+B,CAAC,IAAI,EAAE,IAAI,WACH,KAAK;eASrC,OAAO;;yBAkBG,QAAQ,CAAC,UAAU,CAAC;wBAMrB,QAAQ,CAAC,SAAS,CAAC;;gBAM3B,GAAG;EA4B1B"}
|
|
@@ -10,7 +10,7 @@ export declare function MakeBabelTransformCjsToFunction(opts: Opts): (babel: any
|
|
|
10
10
|
Identifier(path: NodePath<Identifier>): void;
|
|
11
11
|
Directive(path: NodePath<Directive>): void;
|
|
12
12
|
};
|
|
13
|
-
post(state:
|
|
13
|
+
post(state: unknown): void;
|
|
14
14
|
};
|
|
15
15
|
export {};
|
|
16
16
|
//# sourceMappingURL=BabelTransformCjsToFunction2.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BabelTransformCjsToFunction2.d.ts","sourceRoot":"","sources":["../../src/babelPlugins/BabelTransformCjsToFunction2.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AACtC,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AA6DnE,KAAK,IAAI,GAAG;IACR,YAAY,EAAE,MAAM,EAAE,CAAA;CACzB,CAAA;AAED,wBAAgB,+BAA+B,CAAC,IAAI,EAAE,IAAI;eAcnC,GAAG;;6BAqCW,QAAQ,CAAC,cAAc,CAAC;yBAgC5B,QAAQ,CAAC,UAAU,CAAC;wBAerB,QAAQ,CAAC,SAAS,CAAC;;gBAM3B,
|
|
1
|
+
{"version":3,"file":"BabelTransformCjsToFunction2.d.ts","sourceRoot":"","sources":["../../src/babelPlugins/BabelTransformCjsToFunction2.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AACtC,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AA6DnE,KAAK,IAAI,GAAG;IACR,YAAY,EAAE,MAAM,EAAE,CAAA;CACzB,CAAA;AAED,wBAAgB,+BAA+B,CAAC,IAAI,EAAE,IAAI;eAcnC,GAAG;;6BAqCW,QAAQ,CAAC,cAAc,CAAC;yBAgC5B,QAAQ,CAAC,UAAU,CAAC;wBAerB,QAAQ,CAAC,SAAS,CAAC;;gBAM3B,OAAO;EAuI9B"}
|
|
@@ -2,13 +2,14 @@ import { Babel, NodePath } from './BabelTypes.js';
|
|
|
2
2
|
import type { ImportDeclaration } from 'babel-types';
|
|
3
3
|
import { BabelState } from './BabelState.type.js';
|
|
4
4
|
type Opts = {
|
|
5
|
+
absSourceDir: string;
|
|
5
6
|
absCodeDir: string;
|
|
6
7
|
};
|
|
7
|
-
export declare function
|
|
8
|
+
export declare function MakeBabelTransformCssImports(opts: Opts): (babel: Babel) => {
|
|
8
9
|
pre: (state: BabelState) => void;
|
|
9
10
|
visitor: {
|
|
10
11
|
ImportDeclaration: (path: NodePath<ImportDeclaration>) => void;
|
|
11
12
|
};
|
|
12
13
|
};
|
|
13
14
|
export {};
|
|
14
|
-
//# sourceMappingURL=
|
|
15
|
+
//# sourceMappingURL=BabelTransformCssImports.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BabelTransformCssImports.d.ts","sourceRoot":"","sources":["../../src/babelPlugins/BabelTransformCssImports.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAc,MAAM,iBAAiB,CAAA;AAE7D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAOjD,KAAK,IAAI,GAAG;IACR,YAAY,EAAE,MAAM,CAAA;IACpB,UAAU,EAAE,MAAM,CAAA;CACrB,CAAA;AACD,wBAAgB,4BAA4B,CAAC,IAAI,EAAE,IAAI,WACH,KAAK;iBAKvB,UAAU;;kCAIO,QAAQ,CAAC,iBAAiB,CAAC;;EAiH7E"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
//
|
|
1
|
+
// BabelTransformCssImports
|
|
2
2
|
// exports MakeBabelTransformComponentStyles (function)
|
|
3
3
|
//
|
|
4
4
|
// Converts imports of raw CSS files into a variable declaration
|
|
@@ -10,8 +10,11 @@
|
|
|
10
10
|
// that stylesheet
|
|
11
11
|
import { dirname } from 'path';
|
|
12
12
|
import slash from 'slash';
|
|
13
|
-
|
|
14
|
-
|
|
13
|
+
import { cliError } from 'tungsten/cliOutput.js';
|
|
14
|
+
import { throwError } from 'tungsten/throwError.js';
|
|
15
|
+
import { existsSync } from 'fs';
|
|
16
|
+
export function MakeBabelTransformCssImports(opts) {
|
|
17
|
+
return function BabelTransformCssImports(babel) {
|
|
15
18
|
const t = babel.types;
|
|
16
19
|
//let projectDir
|
|
17
20
|
let filename;
|
|
@@ -21,7 +24,8 @@ export function MakeBabelTransformCssImport(opts) {
|
|
|
21
24
|
},
|
|
22
25
|
visitor: {
|
|
23
26
|
ImportDeclaration: function (path /*, state*/) {
|
|
24
|
-
|
|
27
|
+
const importTarget = path.node.source.value;
|
|
28
|
+
let location = importTarget;
|
|
25
29
|
//.slice(2) // remove ./
|
|
26
30
|
if (location.endsWith('.css') || location.endsWith('.scss') || location.endsWith('.sass')) {
|
|
27
31
|
//console.log('found a css import in', filename)
|
|
@@ -39,7 +43,25 @@ export function MakeBabelTransformCssImport(opts) {
|
|
|
39
43
|
if (fileRelDir === '/') fileRelDir = '';
|
|
40
44
|
location = fileRelDir + '/' + location;
|
|
41
45
|
}
|
|
42
|
-
|
|
46
|
+
//console.log('found stylesheet import', location)
|
|
47
|
+
const cssPath = opts.absSourceDir + location;
|
|
48
|
+
//console.log('BabelTransformCssImports searching for css file', cssPath)
|
|
49
|
+
if (!existsSync(cssPath)) {
|
|
50
|
+
throwError('Stylesheet', `Could not find stylesheet '${importTarget}'`);
|
|
51
|
+
}
|
|
52
|
+
//console.log('css import path.node.specifiers', path.node.specifiers)
|
|
53
|
+
const specifiers = path.node.specifiers;
|
|
54
|
+
const firstSpecifier = specifiers[0];
|
|
55
|
+
// !!! guard
|
|
56
|
+
if (firstSpecifier === undefined) {
|
|
57
|
+
cliError('Tungsten BabelTransformCssImports Error: ' + `CSS file '${location}' is not being imported to a variable.` + '\nCSS files should be imported like ' + '`import globalStyles from \'./style/global.css\'`' + '\nThen used in a <Stylesheet> component like ' + '`<Stylesheet>{globalStyles}</Stylesheet>`');
|
|
58
|
+
return;
|
|
59
|
+
}
|
|
60
|
+
if (specifiers.length >= 2) {
|
|
61
|
+
cliError('Tungsten BabelTransformCssImports Error: ' + `The import of CSS file '${location}' has too any specifiers.` + '\nOnly 1 specifier should be used, e.g. ' + '`import globalStyles from \'./style/global.css\'`');
|
|
62
|
+
return;
|
|
63
|
+
}
|
|
64
|
+
const varName = firstSpecifier.local.name;
|
|
43
65
|
const locationWithCssExt = location.slice(0, location.lastIndexOf('.')) + '.css';
|
|
44
66
|
const assignment = t.variableDeclaration('const', [t.variableDeclarator(t.identifier(varName), t.objectExpression([t.objectProperty(t.identifier('href'), t.stringLiteral(locationWithCssExt))]))]);
|
|
45
67
|
path.replaceWith(assignment);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BabelTransformPackageImports.d.ts","sourceRoot":"","sources":["../../src/babelPlugins/BabelTransformPackageImports.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,iBAAiB,
|
|
1
|
+
{"version":3,"file":"BabelTransformPackageImports.d.ts","sourceRoot":"","sources":["../../src/babelPlugins/BabelTransformPackageImports.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAQpD,OAAO,EAGH,QAAQ,EACX,MAAM,aAAa,CAAA;AA4BpB,MAAM,MAAM,QAAQ,GAAG,KAAK,GAAG,KAAK,GAAG,SAAS,GAAG,SAAS,GAAG,MAAM,CAAA;AAErE,MAAM,MAAM,QAAQ,GAAG;IACnB,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,cAAc,EAAE,MAAM,CAAA;IACtB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,MAAM,CAAA;IACnB,IAAI,EAAE,QAAQ,CAAA;IACd,WAAW,EAAE,WAAW,CAAA;CAC3B,CAAA;AAED,MAAM,MAAM,WAAW,GAAG,KAAK,GAAG,KAAK,GAAG,SAAS,CAAA;AAEnD,MAAM,MAAM,WAAW,GAAG;IACtB,UAAU,EAAE,MAAM,CAAA;IAClB,WAAW,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAA;IACtC,WAAW,EAAE,MAAM,CAAA;IACnB,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,WAAW,CAAA;IACjB,iBAAiB,EAAE,MAAM,CAAA;IACzB,aAAa,EAAE,MAAM,CAAA;IACrB,aAAa,EAAE,MAAM,CAAA;CACxB,CAAA;AAGD,MAAM,MAAM,WAAW,GAAG;IACtB,CAAC,GAAG,EAAC,MAAM,GAAG,WAAW,CAAA;CAC5B,CAAA;AAED,MAAM,MAAM,cAAc,GAAG,WAAW,GAAG;IACvC,KAAK,EAAE,MAAM,EAAE,CAAA;CAClB,CAAA;AAED,MAAM,MAAM,cAAc,GAAG;IACzB,CAAC,GAAG,EAAC,MAAM,GAAG,cAAc,CAAA;CAC/B,CAAA;AAED,MAAM,MAAM,mBAAmB,GAAG;IAC9B,IAAI,EAAE,QAAQ,CAAA;IACd,gBAAgB,EAAE,MAAM,CAAA;IACxB,aAAa,EAAE,MAAM,CAAA;IACrB,aAAa,EAAE,MAAM,CAAA;IACrB,YAAY,CAAC,EAAE,YAAY,CAAA;CAC9B,CAAA;AAED,MAAM,MAAM,iCAAiC,GAAG,mBAAmB,GAAG;IAClE,cAAc,EAAE,MAAM,CAAA;CACzB,CAAA;AAED,MAAM,MAAM,eAAe,GAAG;IAC1B,CAAC,GAAG,EAAE,MAAM,GAAG,mBAAmB,CAAA;CACrC,CAAA;AAED,MAAM,MAAM,YAAY,GAAG,MAAM,EAAE,CAAA;AAEnC,KAAK,IAAI,GAAG;IACR,UAAU,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,MAAM,CAAA;IACf,kBAAkB,EAAE,eAAe,CAAA;IACnC,eAAe,EAAE,eAAe,CAAA;IAChC,aAAa,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAA;IAGxC,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAA;CAC3B,CAAA;AAED,MAAM,MAAM,oBAAoB,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAA;AAC3D,MAAM,MAAM,qBAAqB,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,WAAW,CAAA;AACjE,MAAM,MAAM,oCAAoC,GAC1C,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,KAAK,MAAM,CAAA;AACpG,MAAM,MAAM,kCAAkC,GACxC,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAmC,MAAM,CAAA;AAChF,MAAM,MAAM,uCAAuC,GAC7C,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAmC,MAAM,CAAA;AAChF,MAAM,MAAM,oBAAoB,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,KAAK,MAAM,CAAA;AACrF,MAAM,MAAM,gBAAgB,GAAG,CAAC,UAAU,EAAE,MAAM,EAAE,kBAAkB,EAAE,MAAM,KAAK,MAAM,CAAA;AAoBzF,wBAAgB,gCAAgC,CAAC,IAAI,EAAE,IAAI;eAovBpC,OAAO;;kCAWqB,QAAQ,CAAC,iBAAiB,CAAC;;;EA4G7E"}
|
|
@@ -8,6 +8,7 @@
|
|
|
8
8
|
import { join, dirname, relative } from 'path';
|
|
9
9
|
import slash from 'slash';
|
|
10
10
|
import precinct from 'precinct';
|
|
11
|
+
//import sxyPrecinct from 'sxy-precinct'
|
|
11
12
|
import cabinet from 'sxy-filing-cabinet';
|
|
12
13
|
import { existsSync, mkdirSync, promises as fsPromises, readFileSync, writeFileSync } from 'fs';
|
|
13
14
|
import { createRequire } from 'module';
|
|
@@ -18,8 +19,8 @@ const babelPluginSyntaxImportAssertions = babelPluginSyntaxImportAssertionsModul
|
|
|
18
19
|
import { init as lexerInit, parse as lexerParse } from 'cjs-module-lexer';
|
|
19
20
|
lexerInit();
|
|
20
21
|
import { MakeBabelTransformCjsToFunction } from "./BabelTransformCjsToFunction.js";
|
|
21
|
-
import { MakeBabelTransformDependencyImportsEsm } from "./BabelTransformDependencyImportsEsm.js";
|
|
22
|
-
import { MakeBabelTransformDependencyImportsCjs } from "./BabelTransformDependencyImportsCjs.js";
|
|
22
|
+
import { MakeBabelTransformDependencyImportsEsm } from "./transformPackageImports/BabelTransformDependencyImportsEsm.js";
|
|
23
|
+
import { MakeBabelTransformDependencyImportsCjs } from "./transformPackageImports/BabelTransformDependencyImportsCjs.js";
|
|
23
24
|
import { devBuildFolder, frameworkDistFolder, packageName as frameworkPackageName, packageName, packagesCacheFolder, packagesFolder /*, packagesCacheInfoName*/ } from "../settings.js";
|
|
24
25
|
import { findProjectDir } from "../findProjectDir.js";
|
|
25
26
|
import { cliError, cliWarn, cliNote } from "../cliOutput.js";
|
|
@@ -33,6 +34,7 @@ function debug(...texts) {
|
|
|
33
34
|
//console.log(...texts)
|
|
34
35
|
}
|
|
35
36
|
export function MakeBabelTransformPackageImports(opts) {
|
|
37
|
+
//console.log('making BabelTransformPackageImports')
|
|
36
38
|
const buildLocation = join(opts.projectDir, devBuildFolder);
|
|
37
39
|
const packagesLocation = join(buildLocation, packagesFolder);
|
|
38
40
|
// get info about the packages cache
|
|
@@ -44,7 +46,7 @@ export function MakeBabelTransformPackageImports(opts) {
|
|
|
44
46
|
if (location.startsWith('./') || location.startsWith('../')) {
|
|
45
47
|
throw new TungstenError(`applyImportAliases() error: received a relative import, expected a bare import: ${location}`);
|
|
46
48
|
}
|
|
47
|
-
const segments = location.split('/');
|
|
49
|
+
const segments = location.split('/'); // as [string, string, ...string[]]
|
|
48
50
|
const [packageName, remaining] = location.startsWith('@') ? [segments[0] + '/' + segments[1], segments.slice(2).join('/')] : [segments[0], segments.slice(1).join('/')];
|
|
49
51
|
if (packageName === 'react') {
|
|
50
52
|
const sxyFrameworkBase = fileType === 'esm' ? 'tungsten/' : 'tungsten/sync/';
|
|
@@ -63,9 +65,18 @@ export function MakeBabelTransformPackageImports(opts) {
|
|
|
63
65
|
} else {
|
|
64
66
|
// aliases - at this point just redirecting react imports to tungsten
|
|
65
67
|
location = applyImportAliases(location, fileType);
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
68
|
+
//cliNews(`trying to resolve ${location} from ${sourcePackageDir}`)
|
|
69
|
+
//cliOut(`sourceFile: ${sourceFile}`)
|
|
70
|
+
//cliInfo(`while processing: `)
|
|
71
|
+
let fullLocation;
|
|
72
|
+
try {
|
|
73
|
+
fullLocation = require.resolve(location, {
|
|
74
|
+
paths: [sourcePackageDir]
|
|
75
|
+
});
|
|
76
|
+
} catch (e) {
|
|
77
|
+
cliError(`BabelTransformPackageImports Error, failed to resolve ${location} from ${sourcePackageDir}`);
|
|
78
|
+
throw e;
|
|
79
|
+
}
|
|
69
80
|
if (fullLocation === location) {
|
|
70
81
|
return fullLocation;
|
|
71
82
|
}
|
|
@@ -87,8 +98,9 @@ export function MakeBabelTransformPackageImports(opts) {
|
|
|
87
98
|
};
|
|
88
99
|
const cjsRequireCache = {};
|
|
89
100
|
function getCjsRequire(file) {
|
|
90
|
-
|
|
91
|
-
|
|
101
|
+
const r = cjsRequireCache[file];
|
|
102
|
+
if (r !== undefined) {
|
|
103
|
+
return r;
|
|
92
104
|
} else {
|
|
93
105
|
return cjsRequireCache[file] = createRequire(file);
|
|
94
106
|
}
|
|
@@ -135,7 +147,7 @@ export function MakeBabelTransformPackageImports(opts) {
|
|
|
135
147
|
if (f === '') throw new TungstenError(`resolvePrecinctDependencies() err: cabinet returned empty string for ${dep} in ${packageDir}`);
|
|
136
148
|
out.push(f);
|
|
137
149
|
} catch (error) {
|
|
138
|
-
errorOut(`dependency lookup failed for dependency "${dep}" in file "${file}" originating in file ${sourceFilename}`);
|
|
150
|
+
errorOut(`dependency lookup failed for dependency "${dep}"` + ` in file "${file}" originating in file ${sourceFilename}`);
|
|
139
151
|
throw error;
|
|
140
152
|
}
|
|
141
153
|
}
|
|
@@ -172,7 +184,9 @@ export function MakeBabelTransformPackageImports(opts) {
|
|
|
172
184
|
}
|
|
173
185
|
}
|
|
174
186
|
const getPackageDirForFile = function getPackageDirForFile(file) {
|
|
175
|
-
|
|
187
|
+
const dir = getPackageDirForDir(dirname(file));
|
|
188
|
+
if (dir === undefined) throw new TungstenError(`MakeBabelTransformPackageImports Error: could not find package dir for file ${file}`);
|
|
189
|
+
return dir;
|
|
176
190
|
};
|
|
177
191
|
function packageIsEsm(packageJson) {
|
|
178
192
|
return packageJson.type === 'module';
|
|
@@ -180,8 +194,9 @@ export function MakeBabelTransformPackageImports(opts) {
|
|
|
180
194
|
const importedPackageLocations = {};
|
|
181
195
|
function getPackageInfo(packageDir) {
|
|
182
196
|
//console.log('getPackageInfo', packageDir)
|
|
183
|
-
|
|
184
|
-
|
|
197
|
+
const packageInfo = importedPackageLocations[packageDir];
|
|
198
|
+
if (packageInfo !== undefined) {
|
|
199
|
+
return packageInfo;
|
|
185
200
|
} else {
|
|
186
201
|
const packageJson = require(join(packageDir, 'package.json'));
|
|
187
202
|
const packageName = packageJson.name;
|
|
@@ -201,9 +216,10 @@ export function MakeBabelTransformPackageImports(opts) {
|
|
|
201
216
|
finalLocation
|
|
202
217
|
//dependencyPackagesInfo
|
|
203
218
|
};
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
219
|
+
const packageLogItem = packages[packageIdentifier];
|
|
220
|
+
if (packageLogItem !== undefined) {
|
|
221
|
+
if (packageLogItem.packageDir !== packageDir) {
|
|
222
|
+
cliWarn(`BabelTransformPackageImports found the same package in 2 different locations:` + `\n${packageLogItem.packageDir}` + `\nand\n${packageDir}`);
|
|
207
223
|
}
|
|
208
224
|
}
|
|
209
225
|
if (!(packageIdentifier in packages)) {
|
|
@@ -253,7 +269,7 @@ export function MakeBabelTransformPackageImports(opts) {
|
|
|
253
269
|
throw new TungstenError(`BabelTransformPackageImports error: sub file babel transform (1) returned null: ${file}`);
|
|
254
270
|
}
|
|
255
271
|
if (result.code === null || result.code === undefined) {
|
|
256
|
-
throw new TungstenError(`BabelTransformPackageImports error: sub file babel transform (1) returned code was null or undefined: ${typeof result.code}, ${file}`);
|
|
272
|
+
throw new TungstenError(`BabelTransformPackageImports error: sub file babel transform (1)` + ` returned code was null or undefined: ${typeof result.code}, ${file}`);
|
|
257
273
|
}
|
|
258
274
|
return result.code;
|
|
259
275
|
}
|
|
@@ -287,22 +303,24 @@ export function MakeBabelTransformPackageImports(opts) {
|
|
|
287
303
|
throw new TungstenError(`BabelTransformPackageImports error: sub file babel transform (2) returned null: ${file}`);
|
|
288
304
|
}
|
|
289
305
|
if (result.code === null || result.code === undefined) {
|
|
290
|
-
throw new TungstenError(`BabelTransformPackageImports error: sub file babel transform (2) returned code was null or undefined: ${typeof result.code}, ${file}`);
|
|
306
|
+
throw new TungstenError(`BabelTransformPackageImports error: sub file babel transform (2)` + ` returned code was null or undefined: ${typeof result.code}, ${file}`);
|
|
291
307
|
}
|
|
292
308
|
const intermedCacheLocation = getFileEsmGenIntermediateCacheLocation(file, packageInfo);
|
|
293
309
|
await fsPromises.mkdir(dirname(intermedCacheLocation), {
|
|
294
310
|
recursive: true
|
|
295
311
|
});
|
|
312
|
+
//console.log('writing file', intermedCacheLocation)
|
|
296
313
|
await fsPromises.writeFile(intermedCacheLocation, result.code); // rel contains the slash at start
|
|
297
314
|
result = await babelTransformAsync(result.code, {
|
|
298
315
|
filename: file,
|
|
299
316
|
...makeModifyImportsCjsBabelOptions(nonEsmDepsWebPath)
|
|
300
317
|
});
|
|
301
318
|
if (result === null) {
|
|
302
|
-
throw new TungstenError(`BabelTransformPackageImports error: sub file babel transform (3) returned null: ${file}
|
|
319
|
+
throw new TungstenError(`BabelTransformPackageImports error: sub file babel transform (3) returned null: ${file}
|
|
320
|
+
`);
|
|
303
321
|
}
|
|
304
322
|
if (result.code === null || result.code === undefined) {
|
|
305
|
-
throw new TungstenError(`BabelTransformPackageImports error: sub file babel transform (3) returned code was null or undefined: ${typeof result.code}, ${file}`);
|
|
323
|
+
throw new TungstenError(`BabelTransformPackageImports error: sub file babel transform (3)` + ` returned code was null or undefined: ${typeof result.code}, ${file}`);
|
|
306
324
|
}
|
|
307
325
|
//if (file.includes('domexception')) console.log('transformed imports', code)
|
|
308
326
|
return result.code;
|
|
@@ -369,16 +387,30 @@ export function MakeBabelTransformPackageImports(opts) {
|
|
|
369
387
|
});
|
|
370
388
|
//if (file.endsWith('index.cjs')) console.log('checking type for *index.cjs file:', packageInfo.type)
|
|
371
389
|
if (packageInfo.type === 'esm' && file.endsWith('.js') || file.endsWith('.mjs')) {
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
390
|
+
try {
|
|
391
|
+
const code = await babelFileEsm(file /*, packageInfo*/, nonEsmDependenciesFull);
|
|
392
|
+
//console.log('writing file', cacheDest)
|
|
393
|
+
//console.log('writing file', finalDest)
|
|
394
|
+
await fsPromises.writeFile(cacheDest, code); // rel contains the slash at start
|
|
395
|
+
await fsPromises.writeFile(finalDest, code); // rel contains the slash at start
|
|
396
|
+
} catch (e) {
|
|
397
|
+
cliError(`Error transforming file '${file}' with bableFileEsm`);
|
|
398
|
+
throw e;
|
|
399
|
+
}
|
|
375
400
|
} else {
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
401
|
+
try {
|
|
402
|
+
//if (file.endsWith('index.cjs')) console.log('trying to transform a *index.cjs file:', file)
|
|
403
|
+
const code = await babelFileCjs(file, cacheDest, finalDest, packageInfo, nonEsmDependenciesFull);
|
|
404
|
+
//console.log('writing file', cacheDest)
|
|
405
|
+
//console.log('writing file', finalDest)
|
|
406
|
+
//if (file.endsWith('index.cjs')) console.log('writing a transformed *index.cjs file to cache:', cacheDest)
|
|
407
|
+
await fsPromises.writeFile(cacheDest, code); // rel contains the slash at start
|
|
408
|
+
//if (file.endsWith('index.cjs')) console.log('writing a transformed *index.cjs file to final:', finalDest)
|
|
409
|
+
await fsPromises.writeFile(finalDest, code); // rel contains the slash at start
|
|
410
|
+
} catch (e) {
|
|
411
|
+
cliError(`Error transforming file '${file}' with babelFileCjs`);
|
|
412
|
+
throw e;
|
|
413
|
+
}
|
|
382
414
|
}
|
|
383
415
|
const dependenciesFileIndentifiers = dependenciesFull.map(d => d.fileIdentifier);
|
|
384
416
|
addToDependencyGraphFromFileInfo(fileInfo, dependenciesFileIndentifiers);
|
|
@@ -405,14 +437,15 @@ export function MakeBabelTransformPackageImports(opts) {
|
|
|
405
437
|
}
|
|
406
438
|
async function processCacheDependencies(dependencies) {
|
|
407
439
|
for (const dep of dependencies) {
|
|
408
|
-
|
|
440
|
+
const cacheNode = opts.oldDependencyGraph[dep];
|
|
441
|
+
if (cacheNode === undefined) {
|
|
409
442
|
throw new TungstenError(`processCacheDependencies() Error: ${dep} not found in existing dependency graph`);
|
|
410
443
|
}
|
|
411
|
-
const cacheNode = opts.oldDependencyGraph[dep]
|
|
444
|
+
//const cacheNode = opts.oldDependencyGraph[dep]
|
|
412
445
|
if (existsSync(cacheNode.originalLocation)) {
|
|
413
446
|
await copyFileFromCache(dep, cacheNode);
|
|
414
447
|
} else {
|
|
415
|
-
throw new TungstenError(`processCacheDependencies() Error: source file ${cacheNode.originalLocation} for ${dep} does not exist
|
|
448
|
+
throw new TungstenError(`processCacheDependencies() Error: source file ${cacheNode.originalLocation}` + ` for ${dep} does not exist.` + ` Perhaps the package version was increased, and we need to process anew`);
|
|
416
449
|
// find the import/require specification
|
|
417
450
|
// resolve with sxy-filing-cabinet
|
|
418
451
|
// resolveFile
|
|
@@ -508,8 +541,9 @@ export function MakeBabelTransformPackageImports(opts) {
|
|
|
508
541
|
const lexInnerCache = {};
|
|
509
542
|
function lexInternal(file) {
|
|
510
543
|
const cache = lexInnerCache;
|
|
511
|
-
|
|
512
|
-
|
|
544
|
+
const result = cache[file];
|
|
545
|
+
if (result !== undefined) {
|
|
546
|
+
return result;
|
|
513
547
|
} else {
|
|
514
548
|
const code = readFileSync(file, 'utf8');
|
|
515
549
|
const {
|
|
@@ -532,8 +566,9 @@ export function MakeBabelTransformPackageImports(opts) {
|
|
|
532
566
|
const makeCjsEntryFile = function makeCjsEntryFile(orginalFile, newLocationSiteRel) {
|
|
533
567
|
//console.log('makeCjsEntryFile', 'orginalFile', orginalFile, 'newLocationSiteRel', newLocationSiteRel)
|
|
534
568
|
const cache = makeCjsEntryFileCache;
|
|
535
|
-
|
|
536
|
-
|
|
569
|
+
const result = cache[newLocationSiteRel];
|
|
570
|
+
if (result !== undefined) {
|
|
571
|
+
return result;
|
|
537
572
|
} else {
|
|
538
573
|
const entryFile = newLocationSiteRel.slice(0, newLocationSiteRel.lastIndexOf('.')) + '.sxy-entry.js';
|
|
539
574
|
const entryFileAbs = join(buildLocation, entryFile);
|
|
@@ -587,7 +622,7 @@ export function MakeBabelTransformPackageImports(opts) {
|
|
|
587
622
|
return {
|
|
588
623
|
pre(state) {
|
|
589
624
|
filename = slash(state.opts.filename);
|
|
590
|
-
//
|
|
625
|
+
//cliWarn('BabelTransformPackageImports on', filename)
|
|
591
626
|
const relativeFilename = filename.slice(opts.codeDir.length + 1);
|
|
592
627
|
destinationFilename = join(buildLocation, relativeFilename);
|
|
593
628
|
//console.log('filename', filename, 'destinationFilename', destinationFilename)
|
|
@@ -640,7 +675,9 @@ export function MakeBabelTransformPackageImports(opts) {
|
|
|
640
675
|
//// location relative to this file
|
|
641
676
|
// relative assumes to source to be a dir, so use only the dirname not the full path
|
|
642
677
|
let newLocationRelative = relative(dirname(destinationFilename), finalDest);
|
|
643
|
-
if (!newLocationRelative.startsWith('../'))
|
|
678
|
+
if (!newLocationRelative.startsWith('../')) {
|
|
679
|
+
newLocationRelative = './' + newLocationRelative;
|
|
680
|
+
}
|
|
644
681
|
//console.log('bare import type', type)
|
|
645
682
|
if (type === 'esm') {
|
|
646
683
|
addImportAlias(location, webLocation);
|
|
@@ -668,6 +705,7 @@ export function MakeBabelTransformPackageImports(opts) {
|
|
|
668
705
|
// }
|
|
669
706
|
},
|
|
670
707
|
post() {
|
|
708
|
+
//cliWarn('Finished BabelTransformPackageImports on', filename)
|
|
671
709
|
//promises.push(destinationFilename)
|
|
672
710
|
//console.log(promises)
|
|
673
711
|
//setTimeout(() => console.log('post'), 0)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BabelTransformRemoveServerBlocks.d.ts","sourceRoot":"","sources":["../../src/babelPlugins/BabelTransformRemoveServerBlocks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AACtC,OAAO,KAAK,EAAE,qBAAqB,EAAc,WAAW,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"BabelTransformRemoveServerBlocks.d.ts","sourceRoot":"","sources":["../../src/babelPlugins/BabelTransformRemoveServerBlocks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AACtC,OAAO,KAAK,EAAE,qBAAqB,EAAc,WAAW,EAAE,MAAM,aAAa,CAAA;AASjF,wBAAgB,oCAAoC;;0BAgBlB,QAAQ,CAAC,WAAW,CAAC;oCAWX,QAAQ,CAAC,qBAAqB,CAAC;;EAS1E"}
|
|
@@ -1,3 +1,8 @@
|
|
|
1
|
+
//////////////////////////////////////
|
|
2
|
+
//////////////////////////////////////
|
|
3
|
+
// TODO: Remove serverInit functions
|
|
4
|
+
//////////////////////////////////////
|
|
5
|
+
//////////////////////////////////////
|
|
1
6
|
export function MakeBabelTransformRemoveServerBlocks() {
|
|
2
7
|
return function BabelTransformRemoveServerBlocks(/*babel*/
|
|
3
8
|
) {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BabelTransformRemoveServerCode.d.ts","sourceRoot":"","sources":["../../src/babelPlugins/BabelTransformRemoveServerCode.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fixImportsInSassErrorMessage.d.ts","sourceRoot":"","sources":["../../src/babelPlugins/fixImportsInSassErrorMessage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAA;AAazE,KAAK,kCAAkC,GAAG;IACtC,OAAO,EAAE,MAAM,CAAC;IAChB,gBAAgB,EAAE,OAAO,CAAA;CAC5B,CAAA;AAED,wBAAgB,4BAA4B,
|
|
1
|
+
{"version":3,"file":"fixImportsInSassErrorMessage.d.ts","sourceRoot":"","sources":["../../src/babelPlugins/fixImportsInSassErrorMessage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAA;AAazE,KAAK,kCAAkC,GAAG;IACtC,OAAO,EAAE,MAAM,CAAC;IAChB,gBAAgB,EAAE,OAAO,CAAA;CAC5B,CAAA;AAED,wBAAgB,4BAA4B,CACxC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,oBAAoB,EAAE,GAC7C,kCAAkC,CAsFpC"}
|
|
@@ -2,7 +2,7 @@ import type * as BabelCore from '@babel/core';
|
|
|
2
2
|
import { NodePath } from '@babel/core';
|
|
3
3
|
type Babel = typeof BabelCore;
|
|
4
4
|
import { ExportAllDeclaration, ExportNamedDeclaration, type CallExpression, type ImportDeclaration } from 'babel-types';
|
|
5
|
-
import type { GetPackageDirForFile, GetPackageInfoForFile, GetExternalImportFinalImportLocation, GetCjsRelativeImportFinalImportLocation, GetFileFinalLocation } from '
|
|
5
|
+
import type { GetPackageDirForFile, GetPackageInfoForFile, GetExternalImportFinalImportLocation, GetCjsRelativeImportFinalImportLocation, GetFileFinalLocation } from '../BabelTransformPackageImports.js';
|
|
6
6
|
type Opts = {
|
|
7
7
|
nonEsmDeps: string[];
|
|
8
8
|
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BabelTransformDependencyImportsCjs.d.ts","sourceRoot":"","sources":["../../../src/babelPlugins/transformPackageImports/BabelTransformDependencyImportsCjs.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,KAAK,SAAS,MAAM,aAAa,CAAA;AAC7C,OAAO,EAAE,QAAQ,EAAc,MAAM,aAAa,CAAA;AAClD,KAAK,KAAK,GAAG,OAAO,SAAS,CAAC;AAM9B,OAAO,EAAE,oBAAoB,EAAE,sBAAsB,EAA0B,KAAK,cAAc,EAAmB,KAAK,iBAAiB,EAAsB,MAAM,aAAa,CAAA;AAIpL,OAAO,KAAK,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,oCAAoC,EAAE,uCAAuC,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAA;AAU1M,KAAK,IAAI,GAAG;IACR,UAAU,EAAE,MAAM,EAAE,CAAA;CACvB,CAAA;AAED,KAAK,KAAK,GAAG;IACT,oBAAoB,EAAE,oBAAoB,CAAA;IAC1C,qBAAqB,EAAE,qBAAqB,CAAA;IAC5C,oCAAoC,EAAE,oCAAoC,CAAA;IAC1E,uCAAuC,EAAE,uCAAuC,CAAA;IAChF,oBAAoB,EAAE,oBAAoB,CAAA;CAC7C,CAAA;AAED,wBAAgB,sCAAsC,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,WACjB,KAAK;eAsC5C,GAAG;;kCAQyB,QAAQ,CAAC,iBAAiB,CAAC;uCAKtB,QAAQ,CAAC,sBAAsB,CAAC;qCAOlC,QAAQ,CAAC,oBAAoB,CAAC;6BAO/C,QAAQ,CAAC,cAAc,CAAC;;EAgE5D"}
|
|
@@ -9,9 +9,10 @@
|
|
|
9
9
|
// }
|
|
10
10
|
import { dirname, relative } from 'path';
|
|
11
11
|
import slash from 'slash';
|
|
12
|
-
import { isBareImport } from "
|
|
13
|
-
import { cliWarn } from "
|
|
14
|
-
import { warn } from "
|
|
12
|
+
import { isBareImport } from "../isBareImport.js";
|
|
13
|
+
import { cliNews, cliOut, cliWarn } from "../../cliOutput.js";
|
|
14
|
+
import { warn } from "../../output.js";
|
|
15
|
+
import { TungstenError } from 'tungsten/TungstenError.js';
|
|
15
16
|
export function MakeBabelTransformDependencyImportsCjs(opts, funcs) {
|
|
16
17
|
return function BabelTransformDependencyImportsCjs(babel) {
|
|
17
18
|
const t = babel.types;
|
|
@@ -22,6 +23,8 @@ export function MakeBabelTransformDependencyImportsCjs(opts, funcs) {
|
|
|
22
23
|
//console.log('MakeBabelTransformDependencyImportsCjs', 'getNewLocation', location)
|
|
23
24
|
if (isBareImport(location)) {
|
|
24
25
|
//console.log('***')
|
|
26
|
+
cliNews('BabelTransformDependencyImportsCjs');
|
|
27
|
+
cliOut(filename);
|
|
25
28
|
const final = funcs.getExternalImportFinalImportLocation(location, filename, packageDir, 'cjs');
|
|
26
29
|
if (final === location) {
|
|
27
30
|
// perhaps a node module
|
|
@@ -82,6 +85,9 @@ export function MakeBabelTransformDependencyImportsCjs(opts, funcs) {
|
|
|
82
85
|
//console.log('import call ex', path.node)
|
|
83
86
|
const arg0 = path.node.arguments[0];
|
|
84
87
|
//console.log('first arg', arg0)
|
|
88
|
+
if (arg0 === undefined) {
|
|
89
|
+
throw new TungstenError(`BabelTransformDependencyImportsCjs Error: no arg0 of CallExpression`);
|
|
90
|
+
}
|
|
85
91
|
if (arg0.type === 'StringLiteral') {
|
|
86
92
|
const location = arg0.value;
|
|
87
93
|
const [transform, newLocation] = getNewLocation(location);
|
|
@@ -96,6 +102,9 @@ export function MakeBabelTransformDependencyImportsCjs(opts, funcs) {
|
|
|
96
102
|
//console.log('require call ex', path.node)
|
|
97
103
|
const arg0 = path.node.arguments[0];
|
|
98
104
|
//console.log('first arg', arg0)
|
|
105
|
+
if (arg0 === undefined) {
|
|
106
|
+
throw new TungstenError(`BabelTransformDependencyImportsCjs Error: no arg0 of CallExpression`);
|
|
107
|
+
}
|
|
99
108
|
if (arg0.type === 'StringLiteral') {
|
|
100
109
|
const location = arg0.value;
|
|
101
110
|
//console.log(chalk.red`found a require`, location)
|
|
@@ -2,7 +2,7 @@ import type * as BabelCore from '@babel/core';
|
|
|
2
2
|
import { NodePath } from '@babel/core';
|
|
3
3
|
type Babel = typeof BabelCore;
|
|
4
4
|
import { CallExpression, ExportAllDeclaration, ExportNamedDeclaration, ImportDeclaration } from '@babel/types';
|
|
5
|
-
import type { GetPackageDirForFile, GetPackageInfoForFile, GetExternalImportFinalImportLocation, GetFileFinalLocation, MakeCjsEntryFile } from '
|
|
5
|
+
import type { GetPackageDirForFile, GetPackageInfoForFile, GetExternalImportFinalImportLocation, GetFileFinalLocation, MakeCjsEntryFile } from '../BabelTransformPackageImports.js';
|
|
6
6
|
type Opts = {
|
|
7
7
|
nonEsmDeps: string[];
|
|
8
8
|
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BabelTransformDependencyImportsEsm.d.ts","sourceRoot":"","sources":["../../../src/babelPlugins/transformPackageImports/BabelTransformDependencyImportsEsm.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,KAAK,SAAS,MAAM,aAAa,CAAA;AAC7C,OAAO,EAAE,QAAQ,EAAc,MAAM,aAAa,CAAA;AAClD,KAAK,KAAK,GAAG,OAAO,SAAS,CAAC;AAO9B,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA;AAI9G,OAAO,KAAK,EACR,oBAAoB,EAAE,qBAAqB,EAAE,oCAAoC,EACjF,oBAAoB,EAAE,gBAAgB,EACzC,MAAM,oCAAoC,CAAA;AAM3C,KAAK,IAAI,GAAG;IACR,UAAU,EAAE,MAAM,EAAE,CAAA;CACvB,CAAA;AAED,KAAK,KAAK,GAAG;IACT,oBAAoB,EAAE,oBAAoB,CAAA;IAC1C,qBAAqB,EAAE,qBAAqB,CAAA;IAC5C,oCAAoC,EAAE,oCAAoC,CAAA;IAC1E,oBAAoB,EAAE,oBAAoB,CAAA;IAC1C,gBAAgB,EAAE,gBAAgB,CAAA;CACrC,CAAA;AAED,wBAAgB,sCAAsC,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,WACjB,KAAK;eA0B5C,GAAG;;gCAOc,QAAQ,CAAC,iBAAiB,CAAC;uCAYX,QAAQ,CAAC,sBAAsB,CAAC;qCAalC,QAAQ,CAAC,oBAAoB,CAAC;6BAa/C,QAAQ,CAAC,cAAc,CAAC;;EAiC5D"}
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
// BabelTransformDependencyImportsEsm
|
|
2
|
+
// exports MakeBabelTransformDependencyImportsEsm (function)/
|
|
3
|
+
// Arg 1: opts {
|
|
4
|
+
// nonEsmDeps: string[] (should it be an obj?) -- a list of CJS/presumed CJS direct dependencies to let us switch between ESM (defualt) and CJS handling
|
|
5
|
+
// }
|
|
6
|
+
// Arg 2: funcs {
|
|
7
|
+
// funcs from the parent to do various things.
|
|
8
|
+
// passed in from the parent because this allows them to use a central cache
|
|
9
|
+
// }
|
|
10
|
+
import { dirname, relative } from 'path';
|
|
11
|
+
import slash from 'slash';
|
|
12
|
+
import { isBareImport } from "../isBareImport.js";
|
|
13
|
+
import { throwError } from 'tungsten/throwError.js';
|
|
14
|
+
import { cliError, cliOut } from 'tungsten/cliOutput.js';
|
|
15
|
+
export function MakeBabelTransformDependencyImportsEsm(opts, funcs) {
|
|
16
|
+
return function BabelTransformDependencyImportsEsm(babel) {
|
|
17
|
+
const t = babel.types;
|
|
18
|
+
let filename;
|
|
19
|
+
let futureFilename;
|
|
20
|
+
let packageDir;
|
|
21
|
+
function getNewLocation(location) {
|
|
22
|
+
//console.log('BabelTransformDependencyImportsEsm', 'getNewLocation', location, filename)
|
|
23
|
+
if (isBareImport(location)) {
|
|
24
|
+
//cliNews('BabelTransformDependencyImportsEsm')
|
|
25
|
+
//cliOut(filename)
|
|
26
|
+
const final = funcs.getExternalImportFinalImportLocation(location, filename, packageDir, 'esm');
|
|
27
|
+
if (final === location) {
|
|
28
|
+
// do we need this anymore?
|
|
29
|
+
//cliNote('calculated final location is the same as the original', location)
|
|
30
|
+
// perhaps a node module
|
|
31
|
+
return [false];
|
|
32
|
+
}
|
|
33
|
+
let rel = slash(relative(dirname(futureFilename), final));
|
|
34
|
+
if (!rel.startsWith('../')) rel = './' + rel;
|
|
35
|
+
return [true, rel];
|
|
36
|
+
} else {
|
|
37
|
+
return [false];
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
return {
|
|
41
|
+
pre(state) {
|
|
42
|
+
filename = state.opts.filename;
|
|
43
|
+
const packageInfo = funcs.getPackageInfoForFile(filename);
|
|
44
|
+
packageDir = packageInfo.packageDir;
|
|
45
|
+
futureFilename = funcs.getFileFinalLocation(filename, packageInfo);
|
|
46
|
+
},
|
|
47
|
+
visitor: {
|
|
48
|
+
ImportDeclaration(path) {
|
|
49
|
+
try {
|
|
50
|
+
const location = path.node.source.value;
|
|
51
|
+
//console.log('BabelTransformDependencyImportsEsm', 'ImportDeclaration', path.node)
|
|
52
|
+
const [transform, newLocation] = getNewLocation(location);
|
|
53
|
+
if (transform) path.node.source.value = newLocation;
|
|
54
|
+
} catch (e) {
|
|
55
|
+
cliError(`Error in BabelTransformDependencyImportsEsm->ImportDeclaration`);
|
|
56
|
+
cliOut(e.stack);
|
|
57
|
+
throw e;
|
|
58
|
+
}
|
|
59
|
+
},
|
|
60
|
+
ExportNamedDeclaration: function (path) {
|
|
61
|
+
try {
|
|
62
|
+
if (path.node.source) {
|
|
63
|
+
const location = path.node.source.value;
|
|
64
|
+
const [transform, newLocation] = getNewLocation(location);
|
|
65
|
+
if (transform) path.node.source.value = newLocation;
|
|
66
|
+
}
|
|
67
|
+
} catch (e) {
|
|
68
|
+
cliError(`Error in BabelTransformDependencyImportsEsm->ExportNamedDeclaration`);
|
|
69
|
+
cliOut(e.stack);
|
|
70
|
+
throw e;
|
|
71
|
+
}
|
|
72
|
+
},
|
|
73
|
+
ExportAllDeclaration: function (path) {
|
|
74
|
+
try {
|
|
75
|
+
if (path.node.source) {
|
|
76
|
+
const location = path.node.source.value;
|
|
77
|
+
const [transform, newLocation] = getNewLocation(location);
|
|
78
|
+
if (transform) path.node.source.value = newLocation;
|
|
79
|
+
}
|
|
80
|
+
} catch (e) {
|
|
81
|
+
cliError(`Error in BabelTransformDependencyImportsEsm->ExportAllDeclaration`);
|
|
82
|
+
cliOut(e.stack);
|
|
83
|
+
throw e;
|
|
84
|
+
}
|
|
85
|
+
},
|
|
86
|
+
CallExpression(path) {
|
|
87
|
+
try {
|
|
88
|
+
if (path.node.callee.type === 'Import') {
|
|
89
|
+
const firstArg = path.node.arguments[0];
|
|
90
|
+
if (firstArg) {
|
|
91
|
+
if (firstArg.type === 'StringLiteral') {
|
|
92
|
+
const location = firstArg.value;
|
|
93
|
+
//console.log('BabelTransformDependencyImportsEsm', 'CallExpression', path.node)
|
|
94
|
+
const [transform, newLocation] = getNewLocation(location);
|
|
95
|
+
if (transform) path.node.arguments[0] = t.stringLiteral(newLocation);
|
|
96
|
+
} else {
|
|
97
|
+
throwError(`BabelTransformDependencyImportsEsm`, `The first argument passed to an import call in file ${filename}` + ` was a ${firstArg.type}, we we were expecting a StringLiteral.` + ` Only static imports can be processed. This file was found in the` + ` dependency chain of your Tungsten app, was this a mistake?`);
|
|
98
|
+
}
|
|
99
|
+
} else {
|
|
100
|
+
throwError(`BabelTransformDependencyImportsEsm`, `No args were passed to an import call being processed in file ${filename}`);
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
} catch (e) {
|
|
104
|
+
cliError(`Error in BabelTransformDependencyImportsEsm->CallExpression`);
|
|
105
|
+
cliOut(e.stack);
|
|
106
|
+
throw e;
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
};
|
|
111
|
+
};
|
|
112
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"compileSimplePackage.d.ts","sourceRoot":"","sources":["../../../src/bin/commands/compileSimplePackage.ts"],"names":[],"mappings":""}
|