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.
Files changed (202) hide show
  1. package/dist/AnyComponent.d.ts.map +1 -1
  2. package/dist/ComponentInstance.d.ts +1 -2
  3. package/dist/ComponentInstance.d.ts.map +1 -1
  4. package/dist/ComponentInstance.js +4 -1
  5. package/dist/ComponentRenderInfo.type.d.ts +6 -0
  6. package/dist/ComponentRenderInfo.type.d.ts.map +1 -0
  7. package/dist/ComponentRenderInfo.type.js +1 -0
  8. package/dist/Components.d.ts +4 -2
  9. package/dist/Components.d.ts.map +1 -1
  10. package/dist/Components.js +10 -4
  11. package/dist/ContentNode.d.ts +3 -1
  12. package/dist/ContentNode.d.ts.map +1 -1
  13. package/dist/ContentNode.js +1 -0
  14. package/dist/Framework.d.ts +1 -1
  15. package/dist/Framework.d.ts.map +1 -1
  16. package/dist/Framework.js +42 -25
  17. package/dist/FrameworkConfig.d.ts +20 -4
  18. package/dist/FrameworkConfig.d.ts.map +1 -1
  19. package/dist/FunctionComponent.d.ts +2 -0
  20. package/dist/FunctionComponent.d.ts.map +1 -1
  21. package/dist/FunctionComponentStandIn.d.ts +4 -4
  22. package/dist/FunctionComponentStandIn.d.ts.map +1 -1
  23. package/dist/FunctionComponentStandIn.js +4 -2
  24. package/dist/Instance/InstanceConfig.d.ts +2 -0
  25. package/dist/Instance/InstanceConfig.d.ts.map +1 -1
  26. package/dist/RenderedContentNode.d.ts +1 -1
  27. package/dist/RenderedContentNode.d.ts.map +1 -1
  28. package/dist/RenderedContentNode.js +2 -2
  29. package/dist/RenderingNode.d.ts +23 -8
  30. package/dist/RenderingNode.d.ts.map +1 -1
  31. package/dist/RenderingNode.js +39 -8
  32. package/dist/Servers/DevServer.d.ts.map +1 -1
  33. package/dist/Servers/DevServer.js +74 -25
  34. package/dist/Servers/ProdServer.d.ts +5 -1
  35. package/dist/Servers/ProdServer.d.ts.map +1 -1
  36. package/dist/Servers/ProdServer.js +49 -33
  37. package/dist/TungstenElement.d.ts +3 -0
  38. package/dist/TungstenElement.d.ts.map +1 -0
  39. package/dist/TungstenElement.js +1 -0
  40. package/dist/_client/client.d.ts +4 -1
  41. package/dist/_client/client.d.ts.map +1 -1
  42. package/dist/_client/client.js +16 -9
  43. package/dist/babelPlugins/BabelTransformCjsToEsm.d.ts +1 -1
  44. package/dist/babelPlugins/BabelTransformCjsToEsm.d.ts.map +1 -1
  45. package/dist/babelPlugins/BabelTransformCjsToFunction.d.ts +1 -1
  46. package/dist/babelPlugins/BabelTransformCjsToFunction.d.ts.map +1 -1
  47. package/dist/babelPlugins/BabelTransformCjsToFunction2.d.ts +1 -1
  48. package/dist/babelPlugins/BabelTransformCjsToFunction2.d.ts.map +1 -1
  49. package/dist/babelPlugins/{BabelTransformCssImport.d.ts → BabelTransformCssImports.d.ts} +3 -2
  50. package/dist/babelPlugins/BabelTransformCssImports.d.ts.map +1 -0
  51. package/dist/babelPlugins/{BabelTransformCssImport.js → BabelTransformCssImports.js} +27 -5
  52. package/dist/babelPlugins/BabelTransformPackageImports.d.ts.map +1 -1
  53. package/dist/babelPlugins/BabelTransformPackageImports.js +75 -37
  54. package/dist/babelPlugins/BabelTransformRemoveServerBlocks.d.ts.map +1 -1
  55. package/dist/babelPlugins/BabelTransformRemoveServerBlocks.js +5 -0
  56. package/dist/babelPlugins/BabelTransformRemoveServerCode.d.ts +2 -0
  57. package/dist/babelPlugins/BabelTransformRemoveServerCode.d.ts.map +1 -0
  58. package/dist/babelPlugins/BabelTransformRemoveServerCode.js +1 -0
  59. package/dist/babelPlugins/fixImportsInSassErrorMessage.d.ts.map +1 -1
  60. package/dist/babelPlugins/{BabelTransformDependencyImportsCjs.d.ts → transformPackageImports/BabelTransformDependencyImportsCjs.d.ts} +1 -1
  61. package/dist/babelPlugins/transformPackageImports/BabelTransformDependencyImportsCjs.d.ts.map +1 -0
  62. package/dist/babelPlugins/{BabelTransformDependencyImportsCjs.js → transformPackageImports/BabelTransformDependencyImportsCjs.js} +12 -3
  63. package/dist/babelPlugins/{BabelTransformDependencyImportsEsm.d.ts → transformPackageImports/BabelTransformDependencyImportsEsm.d.ts} +1 -1
  64. package/dist/babelPlugins/transformPackageImports/BabelTransformDependencyImportsEsm.d.ts.map +1 -0
  65. package/dist/babelPlugins/transformPackageImports/BabelTransformDependencyImportsEsm.js +112 -0
  66. package/dist/bin/commands/compileSimplePackage.d.ts +2 -0
  67. package/dist/bin/commands/compileSimplePackage.d.ts.map +1 -0
  68. package/dist/bin/commands/compileSimplePackage.js +51 -0
  69. package/dist/bin/commands/static.js +2 -2
  70. package/dist/bin/index.d.ts.map +1 -1
  71. package/dist/bin/index.js +5 -0
  72. package/dist/build/babel.user.common.config.js +9 -3
  73. package/dist/build/bundle.d.ts +1 -2
  74. package/dist/build/bundle.d.ts.map +1 -1
  75. package/dist/build/bundle.js +7 -4
  76. package/dist/build/compileJavascript.d.ts.map +1 -1
  77. package/dist/build/compileJavascript.js +22 -11
  78. package/dist/build/compilePackages.d.ts +0 -5
  79. package/dist/build/compilePackages.d.ts.map +1 -1
  80. package/dist/build/compilePackages.js +89 -82
  81. package/dist/build/compileUserApp.d.ts.map +1 -1
  82. package/dist/build/copyPackageModulesToPackagesFolder.d.ts.map +1 -1
  83. package/dist/build/copyPackageModulesToPackagesFolder.js +3 -1
  84. package/dist/build/createClientFiles.d.ts.map +1 -1
  85. package/dist/build/createClientFiles.js +43 -52
  86. package/dist/build/createInstanceConfigFile.d.ts +4 -0
  87. package/dist/build/createInstanceConfigFile.d.ts.map +1 -0
  88. package/dist/build/{createAppConfig.js → createInstanceConfigFile.js} +2 -2
  89. package/dist/build/makeBabelUserDevConfig.d.ts.map +1 -1
  90. package/dist/build/makeBabelUserDevConfig.js +3 -2
  91. package/dist/build/makeBabelUserProdConfig.js +3 -2
  92. package/dist/components/Stylesheet.d.ts +1 -0
  93. package/dist/components/Stylesheet.d.ts.map +1 -1
  94. package/dist/components/Stylesheet.js +24 -3
  95. package/dist/createRef.d.ts +4 -2
  96. package/dist/createRef.d.ts.map +1 -1
  97. package/dist/createRef.js +5 -2
  98. package/dist/defaultConfig.d.ts +1 -0
  99. package/dist/defaultConfig.d.ts.map +1 -1
  100. package/dist/defaultConfig.js +1 -0
  101. package/dist/findUserConfig.d.ts.map +1 -1
  102. package/dist/findUserConfig.js +1 -1
  103. package/dist/frameworkConfigSchema.d.ts +188 -0
  104. package/dist/frameworkConfigSchema.d.ts.map +1 -0
  105. package/dist/frameworkConfigSchema.js +65 -0
  106. package/dist/getConfig.d.ts +1 -15
  107. package/dist/getConfig.d.ts.map +1 -1
  108. package/dist/getConfig.js +12 -11
  109. package/dist/getRoutes.d.ts.map +1 -1
  110. package/dist/getRoutes.js +20 -15
  111. package/dist/getUserConfig.d.ts +3 -0
  112. package/dist/getUserConfig.d.ts.map +1 -0
  113. package/dist/getUserConfig.js +25 -0
  114. package/dist/hooks/getCurrentComponent.d.ts +4 -0
  115. package/dist/hooks/getCurrentComponent.d.ts.map +1 -1
  116. package/dist/hooks/getCurrentComponent.js +8 -2
  117. package/dist/hooks/globalType.d.ts +2 -0
  118. package/dist/hooks/globalType.d.ts.map +1 -0
  119. package/dist/hooks/globalType.js +1 -0
  120. package/dist/hooks/useState.d.ts +1 -1
  121. package/dist/hooks/useState.d.ts.map +1 -1
  122. package/dist/hooks/useState.js +5 -5
  123. package/dist/hydrate/hydrate.d.ts +1 -1
  124. package/dist/hydrate/hydrate.d.ts.map +1 -1
  125. package/dist/hydrate/hydrate.js +192 -53
  126. package/dist/jsx-runtime.d.ts +2 -0
  127. package/dist/jsx-runtime.d.ts.map +1 -0
  128. package/dist/jsx-runtime.js +1 -0
  129. package/dist/jsxRuntime.d.ts.map +1 -1
  130. package/dist/jsxRuntime.js +5 -1
  131. package/dist/makeFinalConfig.d.ts.map +1 -1
  132. package/dist/makeInstanceConfigFromFrameworkConfig.d.ts +4 -0
  133. package/dist/makeInstanceConfigFromFrameworkConfig.d.ts.map +1 -0
  134. package/dist/makeInstanceConfigFromFrameworkConfig.js +12 -0
  135. package/dist/render/componentNodeToRenderingTree.d.ts +6 -0
  136. package/dist/render/componentNodeToRenderingTree.d.ts.map +1 -0
  137. package/dist/render/componentNodeToRenderingTree.js +41 -0
  138. package/dist/render/contentToHtml.d.ts +9 -0
  139. package/dist/render/contentToHtml.d.ts.map +1 -0
  140. package/dist/render/contentToHtml.js +44 -0
  141. package/dist/render/contentToHtmlDev.d.ts +9 -0
  142. package/dist/render/contentToHtmlDev.d.ts.map +1 -0
  143. package/dist/render/contentToHtmlDev.js +4 -0
  144. package/dist/render/contentTreeToRenderingTree.d.ts.map +1 -1
  145. package/dist/render/contentTreeToRenderingTree.js +8 -8
  146. package/dist/render/functionComponentNodeToRenderingTree.d.ts.map +1 -1
  147. package/dist/render/functionComponentNodeToRenderingTree.js +4 -2
  148. package/dist/render/instantiateClassComponent.d.ts +2 -2
  149. package/dist/render/instantiateClassComponent.d.ts.map +1 -1
  150. package/dist/render/instantiateClassComponent.js +1 -1
  151. package/dist/render/instantiateComponent.d.ts.map +1 -1
  152. package/dist/render/processProps.d.ts.map +1 -1
  153. package/dist/render/processProps.js +1 -1
  154. package/dist/render/renderingTreeToHtml.d.ts.map +1 -1
  155. package/dist/render/renderingTreeToHtml.js +42 -8
  156. package/dist/render/rootToHtml.d.ts +2 -1
  157. package/dist/render/rootToHtml.d.ts.map +1 -1
  158. package/dist/render/rootToHtml.js +12 -6
  159. package/dist/render/rootToHtmlDev.d.ts +4 -3
  160. package/dist/render/rootToHtmlDev.d.ts.map +1 -1
  161. package/dist/render/rootToHtmlDev.js +2 -2
  162. package/dist/routing/MatchedRoute.d.ts.map +1 -1
  163. package/dist/routing/MatchedRoute.js +0 -3
  164. package/dist/routing/runContentFunction.d.ts +2 -0
  165. package/dist/routing/runContentFunction.d.ts.map +1 -0
  166. package/dist/routing/runContentFunction.js +13 -0
  167. package/dist/staticGen/getAppRoutes.d.ts.map +1 -1
  168. package/dist/staticGen/getAppRoutes.js +7 -6
  169. package/dist/staticGen/staticGen.d.ts.map +1 -1
  170. package/dist/staticGen/staticGen.js +9 -1
  171. package/dist/update/integrateUpdateVdom.d.ts +13 -1
  172. package/dist/update/integrateUpdateVdom.d.ts.map +1 -1
  173. package/dist/update/integrateUpdateVdom.js +112 -49
  174. package/dist/validChildren.d.ts +4 -2
  175. package/dist/validChildren.d.ts.map +1 -1
  176. package/dist/validChildren.js +4 -0
  177. package/package.json +11 -10
  178. package/types/jsx/jsx.d.ts +10 -7
  179. package/dist/babelPlugins/BabelTransformCssImport.d.ts.map +0 -1
  180. package/dist/babelPlugins/BabelTransformDependencyImportsCjs.d.ts.map +0 -1
  181. package/dist/babelPlugins/BabelTransformDependencyImportsEsm.d.ts.map +0 -1
  182. package/dist/babelPlugins/BabelTransformDependencyImportsEsm.js +0 -85
  183. package/dist/build/compileEnv.d.ts +0 -2
  184. package/dist/build/compileEnv.d.ts.map +0 -1
  185. package/dist/build/compileEnv.js +0 -132
  186. package/dist/build/createAppConfig.d.ts +0 -4
  187. package/dist/build/createAppConfig.d.ts.map +0 -1
  188. package/dist/build/webpack.user.prod.config.d.ts +0 -2
  189. package/dist/build/webpack.user.prod.config.d.ts.map +0 -1
  190. package/dist/build/webpack.user.prod.config.js +0 -337
  191. package/dist/createInstanceConfigFromFrameworkConfig.d.ts +0 -4
  192. package/dist/createInstanceConfigFromFrameworkConfig.d.ts.map +0 -1
  193. package/dist/createInstanceConfigFromFrameworkConfig.js +0 -9
  194. package/dist/getAppConfig.d.ts +0 -3
  195. package/dist/getAppConfig.d.ts.map +0 -1
  196. package/dist/getAppConfig.js +0 -12
  197. package/dist/render/componentNodeToRenderingToTree.d.ts +0 -6
  198. package/dist/render/componentNodeToRenderingToTree.d.ts.map +0 -1
  199. package/dist/render/componentNodeToRenderingToTree.js +0 -15
  200. package/dist/render/componentNodeToTree.d.ts +0 -5
  201. package/dist/render/componentNodeToTree.d.ts.map +0 -1
  202. package/dist/render/componentNodeToTree.js +0 -16
@@ -0,0 +1,51 @@
1
+ import { findProjectDir } from "../../findProjectDir.js";
2
+ import { cliInfo, cliLog } from "../../cliOutput.js";
3
+ cliInfo('tungsten compile-simple-package is not ready yet');
4
+ process.exit(2);
5
+ const projectDir = process.cwd();
6
+ const frameworkDir = findProjectDir(import.meta.url);
7
+ const args = process.argv.slice(3);
8
+ const source = args[0];
9
+ const dest = args[1];
10
+ console.log(typeof source, source);
11
+ console.log(typeof dest, dest);
12
+ if (typeof dest === 'undefined') {
13
+ cliInfo(`Usage: tungsten compile-simple-package <sourceFolder> <destFolder>`);
14
+ process.exit(1);
15
+ }
16
+ import babelPresetReactModule from '@babel/preset-react';
17
+ const babelPresetReact = babelPresetReactModule.default;
18
+ // const babelConfig: TransformOptions = {
19
+ // presets: [
20
+ // [babelPresetReact, {
21
+ // 'runtime': 'automatic',
22
+ // 'importSource': 'tungsten',
23
+ // }],
24
+ // ],
25
+ // plugins: [
26
+ // [babelPluginSxyModuleResolve, {
27
+ // 'alias': {
28
+ // 'tungsten/jsx-runtime': 'tungsten/jsxRuntime.js' // fix the import location created by @babel/preset-react
29
+ // }
30
+ // }],
31
+ // MakeBabelTransformJsxExtensionsToJs(),
32
+ // [babelPluginCassToJs],
33
+ // [babelPluginProposalClassProperties],
34
+ // ],
35
+ // 'env': {
36
+ // 'production': {
37
+ // 'plugins': ['transform-react-remove-prop-types']
38
+ // }
39
+ // }
40
+ // }
41
+ const command = 'cross-env NODE_ENV=production babel js/lib --config-file ./build.babel.config.json --out-dir dist-react --copy-files';
42
+ cliLog('compile command:', command);
43
+ // const subProcess = spawnShellCommand(command, { cwd: projectDir /*cwd: projectDir*//*, stdio: 'inherit'*/ })
44
+ // subProcess.on('data', (data) => cliLog(data))
45
+ // subProcess.on('close', (code, message) => {
46
+ // if (code === 0) {
47
+ // cliLog('Compilation complete')
48
+ // } else {
49
+ // cliError(`Compilation process failed with code ${code}, message "${message}"`)
50
+ // }
51
+ // })
@@ -1,6 +1,6 @@
1
1
  import open from 'open';
2
- import { getAppConfig } from 'tungsten/getAppConfig.js';
2
+ import { getUserConfig } from "../../getUserConfig.js";
3
3
  import { StaticSiteServer } from "../../Servers/StaticSiteServer.js";
4
- const staticServer = new StaticSiteServer(await getAppConfig());
4
+ const staticServer = new StaticSiteServer(await getUserConfig());
5
5
  const staticServerLocation = await staticServer.start();
6
6
  open(staticServerLocation);
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/bin/index.ts"],"names":[],"mappings":"AA0CA,OAAO,EAAE,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/bin/index.ts"],"names":[],"mappings":"AA8CA,OAAO,EAAE,CAAA"}
package/dist/bin/index.js CHANGED
@@ -34,6 +34,11 @@ switch (command) {
34
34
  await import("./commands/clean.js");
35
35
  break;
36
36
  }
37
+ case 'compile-simple-package':
38
+ {
39
+ await import("./commands/compileSimplePackage.js");
40
+ break;
41
+ }
37
42
  default:
38
43
  {
39
44
  if (!command) {
@@ -1,5 +1,11 @@
1
1
  // may retire this
2
+ //import { join } from "path"
3
+ //import { MakeBabelTransformCssImports } from "../babelPlugins/BabelTransformCssImports.js"
2
4
  import { MakeBabelTransformJsxExtensionsToJs } from "../babelPlugins/BabelTransformJsxExtensionsToJs.js";
5
+ //import { MakeBabelTransformComponentStyles } from "./babelPlugins/BabelTransformComponentStyles.js"
6
+ //import { MakeBabelTransformBindDirect } from "../babelPlugins/BabelTransformBindDirect.js"
7
+ //import { MakeBabelTransformBindVar } from "../babelPlugins/BabelTransformBindVar.js"
8
+ //import { MakeBabelTransformDeproxyState } from "../babelPlugins/BabelTransformDeproxyState.js"
3
9
  //import { MakeBabelTransformDependencyImports } from "../babelPlugins/BabelTransformDependencyImportsOld.js"
4
10
  //const aliases = require('../tools/processAliases.cjs')
5
11
  //import { MakeBabelTransformRemoveBlocks } from "../babelPlugins/BabelTransformRemoveBlocks.js"
@@ -7,7 +13,7 @@ import { buildFolder } from "../settings.js";
7
13
  import babelPresetReactModule from "@babel/preset-react";
8
14
  const babelPresetReact = babelPresetReactModule.default;
9
15
  import babelPluginSxyModuleResolve from "babel-plugin-sxy-module-resolver";
10
- import babelPluginCassToJs from "babel-plugin-css-to-js";
16
+ import babelPluginCssToJs from "babel-plugin-css-to-js";
11
17
  import babelPluginProposalClassPropertiesModule from "@babel/plugin-transform-class-properties";
12
18
  const babelPluginProposalClassProperties = babelPluginProposalClassPropertiesModule.default;
13
19
  // function requireEnv(envName: string): string {
@@ -52,7 +58,7 @@ const userCommonConfig = {
52
58
  // so that path can then be passed to a <Stylesheet> component.
53
59
  // compileStyles function in the build process copies the css file
54
60
  // to the build dir
55
- //MakeBabelTransformCssImport(),
61
+ //MakeBabelTransformCssImports(),
56
62
  MakeBabelTransformJsxExtensionsToJs(),
57
63
  // MakeBabelTransformComponentStyles({
58
64
  // projectCodeBase: ABS_CODE_BASE,
@@ -68,7 +74,7 @@ const userCommonConfig = {
68
74
  //MakeBabelTransformSxyFrameworkImports(),
69
75
  //TransformBind(),
70
76
  //TransformCssProp(),
71
- [babelPluginCassToJs],
77
+ [babelPluginCssToJs],
72
78
  //["babel-plugin-css-to-js"],
73
79
  //["@babel/plugin-proposal-decorators", {
74
80
  // legacy: true
@@ -1,3 +1,2 @@
1
- import type { FrameworkConfigComplete } from '../FrameworkConfig.js';
2
- export declare function bundle(projectDir: string, appConfig: FrameworkConfigComplete): Promise<unknown>;
1
+ export declare function bundle(projectDir: string): Promise<unknown>;
3
2
  //# sourceMappingURL=bundle.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"bundle.d.ts","sourceRoot":"","sources":["../../src/build/bundle.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAA;AAQpE,wBAAsB,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,uBAAuB,oBAsClF"}
1
+ {"version":3,"file":"bundle.d.ts","sourceRoot":"","sources":["../../src/build/bundle.ts"],"names":[],"mappings":"AAUA,wBAAsB,MAAM,CAAC,UAAU,EAAE,MAAM,oBAyC9C"}
@@ -1,17 +1,20 @@
1
1
  import { join } from 'path';
2
+ //import type { FrameworkConfigComplete } from '../FrameworkConfig.js'
2
3
  import { findProjectDir } from "../findProjectDir.js";
3
4
  import { spawnShellCommand } from "../spawnShellCommand.js";
4
5
  import { prodBuildFolder, bundleFolder, frameworkDistFolder, clientFolder } from "../settings.js";
5
6
  import { errorOut } from "../output.js";
6
7
  import { cliLog, cliOut } from "../cliOutput.js";
7
- export async function bundle(projectDir, appConfig) {
8
+ export async function bundle(projectDir /*, appConfig: FrameworkConfigComplete*/) {
8
9
  return new Promise((resolve, reject) => {
9
10
  cliOut('Bundling application');
10
11
  const frameworkDir = findProjectDir(import.meta.url);
11
- let rootComponent = appConfig.rootComponent;
12
- if (rootComponent.endsWith('.jsx')) rootComponent = rootComponent.slice(0, -1);
12
+ // if (appConfig.useRootComponent) {
13
+ // let rootComponent = appConfig.rootComponent as string
14
+ // if (rootComponent.endsWith('.jsx')) rootComponent = rootComponent.slice(0, -1)
15
+ // }
13
16
  const externalModules = ['node-fetch'];
14
- const command = `cd ${frameworkDir} && npx rollup --input "${join(projectDir, prodBuildFolder, clientFolder, 'client.js')}"` + ` --file "${join(projectDir, bundleFolder, 'client.js')}"` + ` --config "${join(frameworkDir, frameworkDistFolder, 'build/rollup.user.prod.config.js')}"` + (externalModules.length > 0 ? ` --external ${externalModules.join(',')}` : ``) + ` --inlineDynamicImports --format iife`;
17
+ const command = `cd ${frameworkDir} && npx rollup` + ` --input "${join(projectDir, prodBuildFolder, clientFolder, 'client.js')}"` + ` --file "${join(projectDir, bundleFolder, 'client.js')}"` + ` --config "${join(frameworkDir, frameworkDistFolder, 'build/rollup.user.prod.config.js')}"` + (externalModules.length > 0 ? ` --external ${externalModules.join(',')}` : ``) + ` --inlineDynamicImports --format iife`;
15
18
  cliLog('bundle command:', command);
16
19
  const subProcess = spawnShellCommand(command, {
17
20
  cwd: frameworkDir /*cwd: projectDir*/ /*, stdio: 'inherit'*/
@@ -1 +1 @@
1
- {"version":3,"file":"compileJavascript.d.ts","sourceRoot":"","sources":["../../src/build/compileJavascript.ts"],"names":[],"mappings":"AAEA,OAAO,QAAQ,MAAM,UAAU,CAAA;AAM/B,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAA;AACpE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AACvD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAA;AAiBtC,KAAK,uBAAuB,GAAG;IAC3B,OAAO,EAAE,QAAQ,CAAC,SAAS,CAAA;IAC3B,WAAW,EAAE,QAAQ,CAAC,SAAS,GAAG,IAAI,CAAA;IACtC,aAAa,EAAE,aAAa,CAAA;CAC/B,CAAA;AAKD,wBAAsB,iBAAiB,CACnC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,uBAAuB,EACtD,YAAY,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EACrE,aAAa,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,GAClC,OAAO,CAAC,uBAAuB,CAAC,CAkMlC"}
1
+ {"version":3,"file":"compileJavascript.d.ts","sourceRoot":"","sources":["../../src/build/compileJavascript.ts"],"names":[],"mappings":"AAEA,OAAO,QAAQ,MAAM,UAAU,CAAA;AAO/B,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAA;AACpE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AACvD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAA;AAetC,KAAK,uBAAuB,GAAG;IAC3B,OAAO,EAAE,QAAQ,CAAC,SAAS,CAAA;IAC3B,WAAW,EAAE,QAAQ,CAAC,SAAS,GAAG,IAAI,CAAA;IACtC,aAAa,EAAE,aAAa,CAAA;CAC/B,CAAA;AAKD,wBAAsB,iBAAiB,CACnC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,uBAAuB,EACtD,YAAY,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EACrE,aAAa,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,GAClC,OAAO,CAAC,uBAAuB,CAAC,CAwNlC"}
@@ -4,12 +4,11 @@ import { transformFileAsync as babeltransformFileAsync } from '@babel/core';
4
4
  import fs, { promises as fsPromises } from 'fs';
5
5
  import slash from 'slash';
6
6
  import serializeJavascript from 'serialize-javascript';
7
+ import { globby } from 'globby';
7
8
  import { packagesCacheFolder } from "../settings.js";
8
- //import babelUserDevConfig from './babel.user.dev.config.js'
9
- //import babelUserProdConfig from './babel.user.dev.config.js'
10
9
  import { makeBabelUserDevConfig } from "./makeBabelUserDevConfig.js";
11
10
  import { makeBabelUserProdConfig } from "./makeBabelUserProdConfig.js";
12
- import { cliOut, cliError } from "../cliOutput.js"; // eslint-disable-line @typescript-eslint/no-unused-vars
11
+ import { cliOut, cliLog, cliError } from "../cliOutput.js"; // eslint-disable-line @typescript-eslint/no-unused-vars
13
12
  import { TungstenError } from "../TungstenError.js";
14
13
  import { getFrameworkDir } from "../getFrameworkDir.js";
15
14
  ///// needs work to work in prod mode
@@ -48,7 +47,9 @@ export async function compileJavascript(projectDir, appConfig, codeLocation, sou
48
47
  const {
49
48
  code
50
49
  } = result;
51
- if (code === null || code === undefined) throw new TungstenError(`Err: code from babel transform on file ${file} was null or undefined: ${typeof code}`);
50
+ if (code === null || code === undefined) {
51
+ throw new TungstenError(`Err: code from babel transform on file ${file} was null or undefined: ${typeof code}`);
52
+ }
52
53
  await fsPromises.mkdir(dirname(dest), {
53
54
  recursive: true
54
55
  });
@@ -56,8 +57,8 @@ export async function compileJavascript(projectDir, appConfig, codeLocation, sou
56
57
  //await fsPromises.writeFile(dest, code)
57
58
  fs.writeFileSync(dest, code);
58
59
  } catch (e) {
59
- cliError(`Error transforming file ${file}`);
60
- cliError(e);
60
+ cliError(`Tungsten: Error transforming file ${file}`);
61
+ cliLog(e);
61
62
  //throw new TungstenError(`compileJavascript() error: error when compiling application file ${e}`)
62
63
  }
63
64
  }
@@ -72,7 +73,7 @@ export async function compileJavascript(projectDir, appConfig, codeLocation, sou
72
73
  //// Using the sync version here, because the promise version keeps bugging out - node bug?
73
74
  await fsPromises.copyFile(file, dest);
74
75
  } catch (e) {
75
- cliError(`Error transforming file ${file}`);
76
+ cliError(`Tungsten: Error copying file ${file}`);
76
77
  cliError(e);
77
78
  //throw new TungstenError(`compileJavascript() error: error when compiling application file ${e}`)
78
79
  }
@@ -84,7 +85,7 @@ export async function compileJavascript(projectDir, appConfig, codeLocation, sou
84
85
  const dest = join(buildLocation, rel);
85
86
  await fsPromises.unlink(dest);
86
87
  } catch (e) {
87
- cliError(`Error transforming file ${file}`);
88
+ cliError(`Tungsten: Error deleting file ${file}`);
88
89
  cliError(e);
89
90
  //throw new TungstenError(`compileJavascript() error: error when compiling application file ${e}`)
90
91
  }
@@ -92,7 +93,9 @@ export async function compileJavascript(projectDir, appConfig, codeLocation, sou
92
93
  // get a list of files
93
94
  const watchGlob = slash(`${codeLocation}/**/*.js{,x}`);
94
95
  const ignored = [];
95
- if (appConfig.ignoreDirs) ignored.push(...appConfig.ignoreDirs.map(folder => slash(`${codeLocation}/${folder}/**`)));
96
+ if (appConfig.ignoreDirs) {
97
+ ignored.push(...appConfig.ignoreDirs.map(folder => slash(`${codeLocation}/${folder}/**`)));
98
+ }
96
99
  if (appConfig.ignorePatterns) {
97
100
  if (Array.isArray(appConfig.ignorePatterns)) {
98
101
  for (const pattern of appConfig.ignorePatterns) {
@@ -105,6 +108,14 @@ export async function compileJavascript(projectDir, appConfig, codeLocation, sou
105
108
  if (appConfig.exclude !== undefined) ignored.push(slash(`${codeLocation}/${appConfig.exclude}`));
106
109
  //console.log('appConfig', appConfig)
107
110
  //console.log('ignored', ignored)
111
+ /// need to do an initial build before watching
112
+ //console.log('glob for', watchGlob)
113
+ const paths = await globby(watchGlob);
114
+ //console.log(paths)
115
+ paths.forEach(file => {
116
+ transformPromises.push(transformFile(file));
117
+ });
118
+ await Promise.all(transformPromises);
108
119
  const watcher = chokidar.watch(watchGlob, {
109
120
  ignored
110
121
  //useFsEvents: false
@@ -112,10 +123,10 @@ export async function compileJavascript(projectDir, appConfig, codeLocation, sou
112
123
  watcher.on('all', async (event, file) => {
113
124
  file = slash(file);
114
125
  if (event === 'add') {
115
- transformPromises.push(transformFile(file));
126
+ transformFile(file);
116
127
  }
117
128
  if (event === 'change') {
118
- transformPromises.push(transformFile(file));
129
+ transformFile(file);
119
130
  }
120
131
  });
121
132
  let copyWatcher = null;
@@ -1,7 +1,2 @@
1
- import type { ProcessPackageResults } from './ProcessPackageResults.js';
2
- type CompilePackagesResult = {
3
- packages: ProcessPackageResults;
4
- };
5
- export declare function compilePackages(/*projectDir, config, codeLocation, */ projectDir: string, buildLocation: string): Promise<CompilePackagesResult>;
6
1
  export {};
7
2
  //# sourceMappingURL=compilePackages.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"compilePackages.d.ts","sourceRoot":"","sources":["../../src/build/compilePackages.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AAQvE,KAAK,qBAAqB,GAAG;IACzB,QAAQ,EAAE,qBAAqB,CAAA;CAClC,CAAA;AAID,wBAAgB,eAAe,CAAC,sCAAsC,CAAA,UAAU,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAwF/I"}
1
+ {"version":3,"file":"compilePackages.d.ts","sourceRoot":"","sources":["../../src/build/compilePackages.ts"],"names":[],"mappings":""}
@@ -1,82 +1,89 @@
1
- import dependencyTree from 'sxy-dependency-tree';
2
- import { globby } from 'globby';
3
- import slash from 'slash';
4
- import { existsSync, promises as fsPromises } from 'fs';
5
- import { join } from 'path';
6
- import { createRequire } from 'module';
7
- import { processPackage } from "./processPackage.js";
8
- import { packagesCacheFolder, packagesCacheInfoName, assetsFolder, componentCssFolder, packagesFolder, staticFolder } from "../settings.js";
9
- import { cliError } from "../cliOutput.js";
10
- const require = createRequire(import.meta.url);
11
- //// UNUSED
12
- export function compilePackages(/*projectDir, config, codeLocation, */projectDir, buildLocation) {
13
- return new Promise((resolve, reject) => {
14
- // should we clear out the packages folders, to remove any packages that are no longer used?
15
- //or should we check at the end, removing any excess?
16
- projectDir = slash(projectDir); // convert backslashes on windows to forward slashes
17
- // create a .packages folder if it doesn't already exist??
18
- const packagesLocation = `${buildLocation}/${packagesFolder}`;
19
- if (!existsSync(packagesLocation)) fsPromises.mkdir(packagesLocation);
20
- // get info about the packages cache
21
- const packagesCacheInfoLocation = join(projectDir, packagesCacheFolder, packagesCacheInfoName);
22
- let packagesCacheInfo;
23
- try {
24
- packagesCacheInfo = require(packagesCacheInfoLocation);
25
- } catch (e) {
26
- cliError('error loading package cache info', e);
27
- packagesCacheInfo = {};
28
- }
29
- buildLocation = slash(buildLocation); // convert backslashes on windows to forward slashes
30
- const glob = [`${buildLocation}/**/*.js`, `!${buildLocation}/${assetsFolder}/**/*`,
31
- // these folders are already ignored unless dot is set to true
32
- `!${buildLocation}/${componentCssFolder}/**/*`,
33
- //
34
- `!${buildLocation}/${packagesFolder}/**/*`,
35
- //
36
- `!${buildLocation}/${staticFolder}/**/*` //
37
- ];
38
- //console.log('searching in ', glob)
39
- globby(glob, {
40
- dot: true
41
- }).then(async matches => {
42
- const projectNodeModulesLocation = `${projectDir}/node_modules/`;
43
- const projectNodeModulesLocationLength = projectNodeModulesLocation.length;
44
- const packageDependencies = [];
45
- for (const file of matches) {
46
- const nonExistent = [];
47
- const dependencies = dependencyTree.toList({
48
- filename: file,
49
- directory: projectDir,
50
- nonExistent
51
- });
52
- for (let dependency of dependencies) {
53
- dependency = slash(dependency); // convert backslashes on windows to forward slashes
54
- if (dependency.startsWith(projectNodeModulesLocation)) {
55
- if (!packageDependencies.includes(dependency)) {
56
- packageDependencies.push(dependency);
57
- }
58
- }
59
- }
60
- }
61
- const packages = [];
62
- for (const pDependency of packageDependencies) {
63
- const endPart = pDependency.slice(projectNodeModulesLocationLength);
64
- const packageName = endPart.split('/')[0];
65
- if (packageName === 'tungsten') continue;
66
- if (!packages.includes(packageName)) {
67
- packages.push(packageName);
68
- }
69
- }
70
- const results = [];
71
- for (const p of packages) {
72
- results.push(await processPackage(projectDir, packagesCacheInfo, p, buildLocation));
73
- }
74
- const packagesLocation = `${buildLocation}/${packagesFolder}`;
75
- fsPromises.writeFile(join(packagesLocation, '.sxy-packages-stats'), JSON.stringify(results));
76
- fsPromises.writeFile(packagesCacheInfoLocation, JSON.stringify(packagesCacheInfo));
77
- resolve({
78
- packages: results
79
- });
80
- });
81
- });
82
- }
1
+ // import dependencyTree from 'sxy-dependency-tree'
2
+ // import { globby } from 'globby'
3
+ // import slash from 'slash'
4
+ // import { existsSync, promises as fsPromises } from 'fs'
5
+ // import { join } from 'path'
6
+ // import { createRequire } from 'module'
7
+ export {};
8
+ // import type { ProcessPackageResults } from './ProcessPackageResults.js'
9
+ // import type { PackagesCacheInfo } from './PackagesCacheInfo.js'
10
+ // import { processPackage } from './processPackage.js'
11
+ // import {
12
+ // packagesCacheFolder, packagesCacheInfoName, assetsFolder, componentCssFolder, packagesFolder, staticFolder
13
+ // } from '../settings.js'
14
+ // import { cliError } from '../cliOutput.js'
15
+ // const require = createRequire(import.meta.url)
16
+ // type CompilePackagesResult = {
17
+ // packages: ProcessPackageResults
18
+ // }
19
+ // //// UNUSED
20
+ // export function compilePackages(projectDir: string, buildLocation: string): Promise<CompilePackagesResult> {
21
+ // return new Promise( (resolve, reject) => {
22
+ // console.log('start compiling packages')
23
+ // // should we clear out the packages folders, to remove any packages that are no longer used?
24
+ // //or should we check at the end, removing any excess?
25
+ // projectDir = slash(projectDir) // convert backslashes on windows to forward slashes
26
+ // // create a .packages folder if it doesn't already exist??
27
+ // const packagesLocation = `${buildLocation}/${packagesFolder}`
28
+ // if ( ! existsSync(packagesLocation) ) fsPromises.mkdir(packagesLocation)
29
+ // // get info about the packages cache
30
+ // const packagesCacheInfoLocation = join(projectDir, packagesCacheFolder, packagesCacheInfoName)
31
+ // let packagesCacheInfo: PackagesCacheInfo
32
+ // try {
33
+ // packagesCacheInfo = require(packagesCacheInfoLocation)
34
+ // } catch (e) {
35
+ // cliError('error loading package cache info', e)
36
+ // packagesCacheInfo = {}
37
+ // }
38
+ // buildLocation = slash(buildLocation) // convert backslashes on windows to forward slashes
39
+ // const glob = [
40
+ // `${buildLocation}/**/*.js`,
41
+ // `!${buildLocation}/${assetsFolder}/**/*`, // these folders are already ignored unless dot is set to true
42
+ // `!${buildLocation}/${componentCssFolder}/**/*`, //
43
+ // `!${buildLocation}/${packagesFolder}/**/*`, //
44
+ // `!${buildLocation}/${staticFolder}/**/*` //
45
+ // ]
46
+ // //console.log('searching in ', glob)
47
+ // globby(glob, { dot: true }).then( async (matches) => {
48
+ // const projectNodeModulesLocation = `${projectDir}/node_modules/`
49
+ // const projectNodeModulesLocationLength = projectNodeModulesLocation.length
50
+ // const packageDependencies: string[] = []
51
+ // for ( const file of matches ) {
52
+ // const nonExistent: string[] = []
53
+ // const dependencies = dependencyTree.toList({
54
+ // filename: file,
55
+ // directory: projectDir,
56
+ // nonExistent,
57
+ // })
58
+ // for ( let dependency of dependencies ) {
59
+ // dependency = slash(dependency) // convert backslashes on windows to forward slashes
60
+ // if (dependency.startsWith(projectNodeModulesLocation)) {
61
+ // if ( ! packageDependencies.includes(dependency) ) {
62
+ // packageDependencies.push(dependency)
63
+ // }
64
+ // }
65
+ // }
66
+ // }
67
+ // const packages: string[] = []
68
+ // for ( const pDependency of packageDependencies) {
69
+ // const endPart = pDependency.slice(projectNodeModulesLocationLength)
70
+ // const packageName = endPart.split('/')[0]!
71
+ // if (packageName === 'tungsten') continue
72
+ // if ( ! packages.includes(packageName) ) {
73
+ // packages.push(packageName)
74
+ // }
75
+ // }
76
+ // const results: ProcessPackageResults = []
77
+ // for (const p of packages) {
78
+ // results.push( await processPackage(projectDir, packagesCacheInfo, p, buildLocation) )
79
+ // }
80
+ // const packagesLocation = `${buildLocation}/${packagesFolder}`
81
+ // fsPromises.writeFile(join(packagesLocation, '.sxy-packages-stats'), JSON.stringify(results))
82
+ // fsPromises.writeFile(packagesCacheInfoLocation, JSON.stringify(packagesCacheInfo))
83
+ // console.log('finishing compiling packages')
84
+ // resolve( {
85
+ // packages: results
86
+ // } )
87
+ // } )
88
+ // })
89
+ // }
@@ -1 +1 @@
1
- {"version":3,"file":"compileUserApp.d.ts","sourceRoot":"","sources":["../../src/build/compileUserApp.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAC3D,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAA;AACpE,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAA;AAUtC,wBAAsB,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,uBAAuB,EAAE,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,eAAe,CAAC,CAgCjI"}
1
+ {"version":3,"file":"compileUserApp.d.ts","sourceRoot":"","sources":["../../src/build/compileUserApp.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAC3D,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAA;AACpE,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAA;AAUtC,wBAAsB,cAAc,CAChC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,uBAAuB,EAAE,IAAI,EAAE,IAAI,GACnE,OAAO,CAAC,eAAe,CAAC,CAiC1B"}
@@ -1 +1 @@
1
- {"version":3,"file":"copyPackageModulesToPackagesFolder.d.ts","sourceRoot":"","sources":["../../src/build/copyPackageModulesToPackagesFolder.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAA;AAItC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAKrC,wBAAsB,kCAAkC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI,kBAkBrF"}
1
+ {"version":3,"file":"copyPackageModulesToPackagesFolder.d.ts","sourceRoot":"","sources":["../../src/build/copyPackageModulesToPackagesFolder.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAA;AAItC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAQrC,wBAAsB,kCAAkC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI,kBAkBrF"}
@@ -5,9 +5,11 @@ import { findProjectDir } from "../findProjectDir.js";
5
5
  import { devBuildFolder, prodBuildFolder, packagesFolder } from "../settings.js";
6
6
  import { MakeBabelTransformDependencyImports } from "../babelPlugins/BabelTransformDependencyImportsOld.js";
7
7
  import { TungstenError } from "../TungstenError.js";
8
+ import { cliWarn } from 'tungsten/cliOutput.js';
8
9
  const frameworkDir = findProjectDir(import.meta.url);
10
+ // unused!
9
11
  export async function copyPackageModulesToPackagesFolder(modules, mode) {
10
- //console.log(chalk.red`modules to copy to packages`, modules)
12
+ cliWarn(`modules to copy to packages`, modules);
11
13
  const promises = [];
12
14
  for (const module of modules) {
13
15
  const target = join(process.cwd(), mode === 'dev' ? devBuildFolder : prodBuildFolder, packagesFolder, 'tungsten',
@@ -1 +1 @@
1
- {"version":3,"file":"createClientFiles.d.ts","sourceRoot":"","sources":["../../src/build/createClientFiles.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAA;AAItC,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAA;AAG/D,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,uBAAuB,EAAE,IAAI,EAAE,IAAI,iBAqFlF"}
1
+ {"version":3,"file":"createClientFiles.d.ts","sourceRoot":"","sources":["../../src/build/createClientFiles.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAA;AAItC,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAA;AAG/D,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,uBAAuB,EAAE,IAAI,EAAE,IAAI,iBA6ElF"}
@@ -4,66 +4,57 @@ import { devBuildFolder, prodBuildFolder, clientFolder, frameworkDistFolder, fra
4
4
  import { fixExtension } from "../fixExtension.js";
5
5
  import { findProjectDir } from "../findProjectDir.js";
6
6
  export async function createClientFiles(config, mode) {
7
- // change .jsx to .js if needed
8
- //if (rootComponentRelFilePath.endsWith('.jsx')) rootComponentRelFilePath = rootComponentRelFilePath.slice(0, -1)
9
7
  //console.log('creating entry file')
10
8
  const specificBuildFolder = mode === 'dev' ? devBuildFolder : prodBuildFolder;
11
- // I don't think this file is being used
12
- // await fsPromises.writeFile(
13
- // join(process.cwd(), specificBuildFolder, packagesFolder, packageName, frameworkDistFolder, 'client/entry.js'),
14
- // `export * from '../../../../${rootComponentRelFilePath}'`
15
- // )
16
- // await fsPromises.writeFile(
17
- // join(process.cwd(), specificBuildFolder, packagesFolder, packageName, frameworkDistFolder, 'client/rootComponent.js'),
18
- // `export const rootComponent = '${fixExtension(rootComponentRelFilePath)}'`
19
- // )
20
- // // await fsPromises.writeFile(
21
- // // join(process.cwd(), specificBuildFolder, packagesFolder, packageName, frameworkDistFolder, frameworkClientFolder, 'rootComponent.js'),
22
- // // `export * from '../../../../${fixExtension(rootComponentRelFilePath)}'`
23
- // // )
24
- // // await fsPromises.writeFile(
25
- // // join(process.cwd(), specificBuildFolder, packagesFolder, packageName, frameworkDistFolder, frameworkClientFolder, 'rootComponentRelFilePath.js'),
26
- // // `export const rootComponentRelFilePath = '${fixExtension(rootComponentRelFilePath)}'`
27
- // // )
28
9
  const frameworkDir = findProjectDir(import.meta.url);
10
+ const routesLocation = config.routesLocation;
11
+ //if (routesLocation !== null) {
12
+ const [routeFilePath, routesExportName] = routesLocation;
13
+ const promises = [
29
14
  // ensure the folder exists
30
- await fsPromises.mkdir(join(process.cwd(), specificBuildFolder, `${clientFolder}`), {
15
+ fsPromises.mkdir(join(process.cwd(), specificBuildFolder, `${clientFolder}`), {
31
16
  recursive: true
32
- });
33
- // // app config
34
- // await fsPromises.writeFile(
35
- // join(process.cwd(), specificBuildFolder, '.tungsten.config.js'), // to
36
- // `export default { clientSideNav: ${config.clientSideNav.toString()}, };` // content
37
- // )
17
+ }),
38
18
  // client.js file
39
- await fsPromises.copyFile(join(frameworkDir, frameworkDistFolder, frameworkClientFolder, 'client.js'),
19
+ fsPromises.copyFile(join(frameworkDir, frameworkDistFolder, frameworkClientFolder, 'client.js'),
40
20
  // from
41
- join(process.cwd(), specificBuildFolder, `${clientFolder}/client.js`));
21
+ join(process.cwd(), specificBuildFolder, `${clientFolder}/client.js`)),
42
22
  // cjsHelpers.js file
43
- await fsPromises.copyFile(join(frameworkDir, frameworkDistFolder, frameworkClientFolder, 'cjsHelpers.js'),
23
+ fsPromises.copyFile(join(frameworkDir, frameworkDistFolder, frameworkClientFolder, 'cjsHelpers.js'),
44
24
  // from
45
- join(process.cwd(), specificBuildFolder, `${clientFolder}/cjsHelpers.js`));
46
- const [routeFilePath, routesExportName] = config.routesLocation;
47
- const rootComponentRelFilePath = config.rootComponent;
48
- const rcFile = rootComponentRelFilePath.split('/').pop();
49
- const possibleRootComponentExportName = rcFile.slice(0, rcFile.lastIndexOf('.'));
25
+ join(process.cwd(), specificBuildFolder, `${clientFolder}/cjsHelpers.js`)),
50
26
  // app routes stuff
51
- const routesPromise = fsPromises.writeFile(join(process.cwd(), specificBuildFolder, clientFolder, 'routes.js'), `export { ${routesExportName} as routes } from '../${fixExtension(routeFilePath)}'`);
52
- // rootComponent.js file - interface to the root component
53
- const rootComponentPromise = fsPromises.writeFile(join(process.cwd(), specificBuildFolder, clientFolder, 'RootComponent.js'),
54
- // to
55
- //`import * as mod from '../${fixExtension(rootComponentRelFilePath)}'; export const RootComponent = ('default' in mod) ? mod['default'] : mod['${possibleRootComponentExportName}']` // content
56
- `export * as module from '../${fixExtension(rootComponentRelFilePath)}'; export const filename = '${possibleRootComponentExportName}'`);
57
- // // rootComponent.js file - interface to the root component
58
- // const rootComponentPromise = fsPromises.writeFile(
59
- // join(process.cwd(), specificBuildFolder, clientFolder, 'RootComponent.js'), // to
60
- // `export * from '../${fixExtension(rootComponentRelFilePath)}'` // content
61
- // )
62
- // // rootComponentRelFilePath.js file - provides the location of the root component,
63
- // // not sure where this is used
64
- // const rootComponentRelFilePathPromise = await fsPromises.writeFile(
65
- // join(process.cwd(), specificBuildFolder, clientFolder, 'rootComponentRelFilePath.js'), // to
66
- // `export const rootComponentRelFilePath = '${fixExtension(rootComponentRelFilePath)}'` // content
67
- // )
68
- await Promise.all([routesPromise, rootComponentPromise]);
27
+ fsPromises.writeFile(join(process.cwd(), specificBuildFolder, clientFolder, 'routes.js'), `export { ${routesExportName} as routes } from '../${fixExtension(routeFilePath)}'`)];
28
+ const clientRootComponentFileLocation = join(process.cwd(), specificBuildFolder, clientFolder, 'RootComponent.js');
29
+ if (config.useRootComponent) {
30
+ const rootComponentRelFilePath = config.rootComponent;
31
+ const rcFile = rootComponentRelFilePath.split('/').pop();
32
+ const possibleRootComponentExportName = rcFile.slice(0, rcFile.lastIndexOf('.'));
33
+ const rootComponentPromise = fsPromises.writeFile(clientRootComponentFileLocation,
34
+ // to
35
+ `export * as module from '../${fixExtension(rootComponentRelFilePath)}'; export const filename = '${possibleRootComponentExportName}'` // eslint-disable-line max-len
36
+ );
37
+ promises.push(rootComponentPromise);
38
+ } else {
39
+ const rootComponentPromise = fsPromises.writeFile(clientRootComponentFileLocation,
40
+ // to
41
+ `export default null` // eslint-disable-line max-len
42
+ );
43
+ promises.push(rootComponentPromise);
44
+ }
45
+ // if (config.useRootComponent) {
46
+ // const rootComponentRelFilePath = config.rootComponent
47
+ // const rcFile = rootComponentRelFilePath.split('/').pop() as string
48
+ // const possibleRootComponentExportName = rcFile.slice(0, rcFile.lastIndexOf('.'))
49
+ // // rootComponent.js file - interface to the root component
50
+ // const rootComponentPromise = fsPromises.writeFile(
51
+ // join(process.cwd(), specificBuildFolder, clientFolder, 'RootComponent.js'), // to
52
+ // `export * as module from '../${fixExtension(rootComponentRelFilePath)}'; export const filename = '${possibleRootComponentExportName}'` // eslint-disable-line max-len
53
+ // )
54
+ // await Promise.all([routesPromise, rootComponentPromise])
55
+ // } else {
56
+ // // do we need to do anything here???
57
+ // await routesPromise
58
+ // }
59
+ await Promise.all(promises);
69
60
  }
@@ -0,0 +1,4 @@
1
+ import type { Mode } from '../Mode.js';
2
+ import { FrameworkConfigComplete } from '../FrameworkConfig.js';
3
+ export declare function createInstanceConfigFile(config: FrameworkConfigComplete, mode: Mode): Promise<void>;
4
+ //# sourceMappingURL=createInstanceConfigFile.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createInstanceConfigFile.d.ts","sourceRoot":"","sources":["../../src/build/createInstanceConfigFile.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAA;AAEtC,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAA;AAI/D,wBAAsB,wBAAwB,CAAC,MAAM,EAAE,uBAAuB,EAAE,IAAI,EAAE,IAAI,iBA2BzF"}