tungsten 0.3.3 → 0.3.5
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/.build-complete +1 -1
- package/dist/Components.d.ts +6 -1
- package/dist/Components.d.ts.map +1 -1
- package/dist/Components.js +103 -40
- package/dist/DomPointer.d.ts +11 -0
- package/dist/DomPointer.d.ts.map +1 -1
- package/dist/DomPointer.js +15 -0
- package/dist/DomRegion.d.ts +2 -0
- package/dist/DomRegion.d.ts.map +1 -1
- package/dist/DomRegion.js +23 -3
- package/dist/Framework.d.ts.map +1 -1
- package/dist/Framework.js +28 -6
- package/dist/FrameworkConfig.d.ts +2 -0
- package/dist/FrameworkConfig.d.ts.map +1 -1
- package/dist/Instance/Instance.d.ts +1 -1
- package/dist/Instance/Instance.d.ts.map +1 -1
- package/dist/Servers/DevServer.d.ts.map +1 -1
- package/dist/Servers/DevServer.js +3 -3
- package/dist/Servers/ProdServer.d.ts +1 -1
- package/dist/Servers/ProdServer.d.ts.map +1 -1
- package/dist/Servers/ProdServer.js +13 -3
- package/dist/Servers/loadEnvsDev.d.ts.map +1 -1
- package/dist/Servers/loadEnvsDev.js +17 -6
- package/dist/babelPlugins/BabelExtractComponentStylesheet.d.ts +13 -0
- package/dist/babelPlugins/BabelExtractComponentStylesheet.d.ts.map +1 -0
- package/dist/babelPlugins/BabelExtractComponentStylesheet.js +24 -0
- package/dist/babelPlugins/BabelTransformComponentStyles.d.ts +2 -0
- package/dist/babelPlugins/BabelTransformComponentStyles.d.ts.map +1 -1
- package/dist/babelPlugins/BabelTransformComponentStyles.js +21 -5
- package/dist/babelPlugins/BabelTransformPackageImports.d.ts +1 -0
- package/dist/babelPlugins/BabelTransformPackageImports.d.ts.map +1 -1
- package/dist/babelPlugins/BabelTransformPackageImports.js +21 -9
- package/dist/bin/commands/build.d.ts.map +1 -1
- package/dist/bin/commands/build.js +9 -2
- package/dist/bin/commands/compile.d.ts.map +1 -1
- package/dist/bin/commands/compile.js +7 -2
- package/dist/build/CompilationInfo.d.ts +1 -0
- package/dist/build/CompilationInfo.d.ts.map +1 -1
- package/dist/build/combineComponentCss.d.ts +1 -1
- package/dist/build/combineComponentCss.d.ts.map +1 -1
- package/dist/build/combineComponentCss.js +3 -3
- package/dist/build/compileJavascript.d.ts.map +1 -1
- package/dist/build/compileJavascript.js +2 -2
- package/dist/build/compileUserApp.d.ts.map +1 -1
- package/dist/build/compileUserApp.js +14 -5
- package/dist/build/frameworkStylesheets.d.ts +5 -0
- package/dist/build/frameworkStylesheets.d.ts.map +1 -0
- package/dist/build/frameworkStylesheets.js +49 -0
- package/dist/build/getPackageDirForFile.d.ts +2 -0
- package/dist/build/getPackageDirForFile.d.ts.map +1 -0
- package/dist/build/getPackageDirForFile.js +11 -0
- package/dist/build/getSxyClientPackageAliases.d.ts.map +1 -1
- package/dist/build/getSxyClientPackageAliases.js +3 -1
- package/dist/build/makeBabelUserDevConfig.d.ts +1 -1
- package/dist/build/makeBabelUserDevConfig.d.ts.map +1 -1
- package/dist/build/makeBabelUserDevConfig.js +3 -2
- package/dist/build/makeBabelUserProdConfig.d.ts +1 -1
- package/dist/build/makeBabelUserProdConfig.d.ts.map +1 -1
- package/dist/build/makeBabelUserProdConfig.js +4 -2
- package/dist/build/rollup.user.prod.config.d.ts.map +1 -1
- package/dist/build/rollup.user.prod.config.js +4 -1
- package/dist/build/rollupExtractComponentStylesheets.d.ts +12 -0
- package/dist/build/rollupExtractComponentStylesheets.d.ts.map +1 -0
- package/dist/build/rollupExtractComponentStylesheets.js +35 -0
- package/dist/compat/context.d.ts +1 -1
- package/dist/compat/context.d.ts.map +1 -1
- package/dist/componentCss/i/T-components-library-RichTextEditor-RichTextEditor.css +115 -0
- package/dist/componentCss/i/T-components-library-__StatefulMessage-StatefulMessage.css +25 -0
- package/dist/componentCss/tungsten.css +2 -0
- package/dist/componentProxyHandlers.d.ts +2 -1
- package/dist/componentProxyHandlers.d.ts.map +1 -1
- package/dist/componentProxyHandlers.js +45 -9
- package/dist/components/GoToComponent.d.ts +1 -1
- package/dist/components/GoToComponent.d.ts.map +1 -1
- package/dist/components/_GoToComponent.d.ts +10 -0
- package/dist/components/_GoToComponent.d.ts.map +1 -0
- package/dist/components/_GoToComponent.js +13 -0
- package/dist/components/library/RichTextEditor/RichTextEditor.d.ts +50 -0
- package/dist/components/library/RichTextEditor/RichTextEditor.d.ts.map +1 -0
- package/dist/components/library/RichTextEditor/RichTextEditor.js +458 -0
- package/dist/components/library/RichTextEditor/StoredContentNode.d.ts +5 -0
- package/dist/components/library/RichTextEditor/StoredContentNode.d.ts.map +1 -0
- package/dist/components/library/RichTextEditor/StoredContentNode.js +1 -0
- package/dist/components/library/RichTextEditor/activeFormats.d.ts +20 -0
- package/dist/components/library/RichTextEditor/activeFormats.d.ts.map +1 -0
- package/dist/components/library/RichTextEditor/activeFormats.js +48 -0
- package/dist/components/library/RichTextEditor/contentTree.d.ts +30 -0
- package/dist/components/library/RichTextEditor/contentTree.d.ts.map +1 -0
- package/dist/components/library/RichTextEditor/contentTree.js +81 -0
- package/dist/components/library/RichTextEditor/sanitizeAuthoredHtml.d.ts +30 -0
- package/dist/components/library/RichTextEditor/sanitizeAuthoredHtml.d.ts.map +1 -0
- package/dist/components/library/RichTextEditor/sanitizeAuthoredHtml.js +97 -0
- package/dist/components/library/__StatefulMessage/MessageData.d.ts +7 -0
- package/dist/components/library/__StatefulMessage/MessageData.d.ts.map +1 -0
- package/dist/components/library/__StatefulMessage/MessageData.js +1 -0
- package/dist/components/library/__StatefulMessage/StatefulMessage.d.ts +22 -0
- package/dist/components/library/__StatefulMessage/StatefulMessage.d.ts.map +1 -0
- package/dist/components/library/__StatefulMessage/StatefulMessage.js +88 -0
- package/dist/components/library/index.d.ts +5 -0
- package/dist/components/library/index.d.ts.map +1 -0
- package/dist/components/library/index.js +7 -0
- package/dist/defaultConfig.d.ts +1 -0
- package/dist/defaultConfig.d.ts.map +1 -1
- package/dist/defaultConfig.js +1 -0
- package/dist/env/addToEnv.d.ts +2 -0
- package/dist/env/addToEnv.d.ts.map +1 -0
- package/dist/env/addToEnv.js +19 -0
- package/dist/findUserConfig.d.ts +1 -1
- package/dist/indexInner.d.ts +5 -5
- package/dist/indexInner.d.ts.map +1 -1
- package/dist/indexInner.js +2 -1
- package/dist/postcssPlugins/TransformCssNames.d.ts.map +1 -1
- package/dist/postcssPlugins/TransformCssNames.js +10 -2
- package/dist/propsAreEqual.d.ts +8 -0
- package/dist/propsAreEqual.d.ts.map +1 -0
- package/dist/propsAreEqual.js +97 -0
- package/dist/render/HeadData.d.ts +1 -0
- package/dist/render/HeadData.d.ts.map +1 -1
- package/dist/render/contentToHtml.d.ts.map +1 -1
- package/dist/render/contentToHtml.js +1 -0
- package/dist/render/instantiateClassComponent.d.ts.map +1 -1
- package/dist/render/instantiateClassComponent.js +4 -0
- package/dist/render/processHead.d.ts.map +1 -1
- package/dist/render/processHead.js +14 -1
- package/dist/settings.d.ts +2 -0
- package/dist/settings.d.ts.map +1 -1
- package/dist/settings.js +3 -0
- package/dist/stateTracking.d.ts +47 -0
- package/dist/stateTracking.d.ts.map +1 -0
- package/dist/stateTracking.js +83 -0
- package/dist/staticGen/staticGen.d.ts.map +1 -1
- package/dist/staticGen/staticGen.js +117 -107
- package/dist/testing/installTestStyleProcessors.d.ts +2 -0
- package/dist/testing/installTestStyleProcessors.d.ts.map +1 -0
- package/dist/testing/installTestStyleProcessors.js +21 -0
- package/dist/testing/temp/componentPackageMock.d.ts +18 -0
- package/dist/testing/temp/componentPackageMock.d.ts.map +1 -0
- package/dist/testing/temp/componentPackageMock.js +37 -0
- package/dist/testing/temp/contentHtmlElements.d.ts +3 -0
- package/dist/testing/temp/contentHtmlElements.d.ts.map +1 -0
- package/dist/testing/temp/contentHtmlElements.js +12 -0
- package/dist/update/integrateUpdateVdom.d.ts.map +1 -1
- package/dist/update/integrateUpdateVdom.js +160 -51
- package/dist/update/pendingMounts.d.ts +25 -0
- package/dist/update/pendingMounts.d.ts.map +1 -0
- package/dist/update/pendingMounts.js +55 -0
- package/package.json +4 -2
- package/dist/env/injectEnv.d.ts +0 -2
- package/dist/env/injectEnv.d.ts.map +0 -1
- package/dist/env/injectEnv.js +0 -9
- package/dist/env/parseEnv.d.ts +0 -2
- package/dist/env/parseEnv.d.ts.map +0 -1
- package/dist/env/parseEnv.js +0 -14
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FrameworkConfig.d.ts","sourceRoot":"","sources":["../src/FrameworkConfig.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,IAAI,kBAAkB,EAAE,MAAM,eAAe,CAAA;AACnE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAA;AACjE,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAInD,KAAK,WAAW,GAAG,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;AAC5C,KAAK,cAAc,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;AACtC,KAAK,kBAAkB,GAAG,MAAM,CAAA;AAEhC,MAAM,MAAM,oBAAoB,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,CAAA;AAenF,MAAM,MAAM,mBAAmB,GAAG;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,eAAe,CAAC,EAAE,MAAM,CAAA;IAExB,YAAY,CAAC,EAAE,YAAY,CAAA;IAC3B,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,UAAU,CAAC,EAAE,OAAO,CAAA;IAMpB,cAAc,CAAC,EAAE,cAAc,CAAA;IAC/B,kBAAkB,CAAC,EAAE,kBAAkB,CAAA;IACvC,YAAY,CAAC,EAAE,kBAAkB,CAAA;IACjC,aAAa,CAAC,EAAE,UAAU,GAAG,SAAS,CAAA;IACtC,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;IAC9B,cAAc,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;IAClC,sBAAsB,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;IAC1C,gBAAgB,CAAC,EAAE,oBAAoB,CAAA;IACvC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,CAAA;IAEhB,qBAAqB,CAAC,EAAE,OAAO,CAAA;IAC/B,6BAA6B,CAAC,EAAE,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"FrameworkConfig.d.ts","sourceRoot":"","sources":["../src/FrameworkConfig.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { InstanceConfig } from '
|
|
1
|
+
import type { InstanceConfig } from './InstanceConfig.js';
|
|
2
2
|
import type { ReqRes } from '../ReqRes.js';
|
|
3
3
|
import type { AppRoutes } from '../routing/AppRoutes.js';
|
|
4
4
|
import type { GlobalData } from '../routing/registerGlobalData.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Instance.d.ts","sourceRoot":"","sources":["../../src/Instance/Instance.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM
|
|
1
|
+
{"version":3,"file":"Instance.d.ts","sourceRoot":"","sources":["../../src/Instance/Instance.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DevServer.d.ts","sourceRoot":"","sources":["../../src/Servers/DevServer.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAA;AAClC,OAAO,OAA4D,MAAM,SAAS,CAAA;AAGlF,OAAO,sBAAsB,CAAA;AAE7B,OAAO,KAAK,EAAE,uBAAuB,EAAwB,MAAM,uBAAuB,CAAA;AAC1F,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAA;AAClE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAMpD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAW3C,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAKrC,OAAO,EAAE,UAAU,EAAkB,kBAAkB,EAAE,MAAM,kCAAkC,CAAA;AAEjG,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAqBrD,qBAAa,SAAU,SAAQ,cAAc;IACzC,SAAS,EAAE,SAAS,CAAA;IACpB,MAAM,EAAE,uBAAuB,CAAA;IAC/B,eAAe,EAAE,eAAe,CAAA;IAChC,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAO;IAC9B,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACzC,GAAG,EAAE,OAAO,CAAC,WAAW,CAAA;IAExB,SAAS,CAAC,EAAE,SAAS,CAAA;IACrB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,EAAE,OAAO,CAAO;IAC3B,cAAc,EAAE,MAAM,CAAI;IAC1B,oBAAoB,EAAE,MAAM,CAAI;IAChC,OAAO,CAAC,iBAAiB,CAA2B;IACpD,OAAO,CAAC,iBAAiB,CAA4B;IAIrD,OAAO,CAAC,MAAM,CAA2C;gBAErD,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,uBAAuB,EAAE,eAAe,EAAE,eAAe,EACvF,iBAAiB,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAM;
|
|
1
|
+
{"version":3,"file":"DevServer.d.ts","sourceRoot":"","sources":["../../src/Servers/DevServer.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAA;AAClC,OAAO,OAA4D,MAAM,SAAS,CAAA;AAGlF,OAAO,sBAAsB,CAAA;AAE7B,OAAO,KAAK,EAAE,uBAAuB,EAAwB,MAAM,uBAAuB,CAAA;AAC1F,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAA;AAClE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAMpD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAW3C,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAKrC,OAAO,EAAE,UAAU,EAAkB,kBAAkB,EAAE,MAAM,kCAAkC,CAAA;AAEjG,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAqBrD,qBAAa,SAAU,SAAQ,cAAc;IACzC,SAAS,EAAE,SAAS,CAAA;IACpB,MAAM,EAAE,uBAAuB,CAAA;IAC/B,eAAe,EAAE,eAAe,CAAA;IAChC,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAO;IAC9B,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACzC,GAAG,EAAE,OAAO,CAAC,WAAW,CAAA;IAExB,SAAS,CAAC,EAAE,SAAS,CAAA;IACrB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,EAAE,OAAO,CAAO;IAC3B,cAAc,EAAE,MAAM,CAAI;IAC1B,oBAAoB,EAAE,MAAM,CAAI;IAChC,OAAO,CAAC,iBAAiB,CAA2B;IACpD,OAAO,CAAC,iBAAiB,CAA4B;IAIrD,OAAO,CAAC,MAAM,CAA2C;gBAErD,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,uBAAuB,EAAE,eAAe,EAAE,eAAe,EACvF,iBAAiB,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAM;IAiIlD,OAAO,CAAC,mBAAmB,CAyE1B;IAKD,OAAO,CAAC,sBAAsB,CAQ7B;IACD,OAAO,CAAC,mBAAmB,CAA8B;IACzD,OAAO,CAAC,iBAAiB,CAA+B;IACxD,OAAO,CAAC,kBAAkB,CAAyB;IACnD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAAM;IAC9C,OAAO,CAAC,oBAAoB,CAwB3B;IACD,OAAO,CAAC,mBAAmB,CAO1B;IACD,OAAO,CAAC,gBAAgB,CAcvB;IAED,OAAO,CAAC,aAAa,CA+NpB;IAaD,OAAO,CAAC,mBAAmB,CAsC1B;IAID,aAAa,GAAU,MAAM,kBAAkB,EAAE,QAAQ,MAAM,yBAQ9D;IACD,QAAQ,GAAI,OAAO,OAAO,UAIzB;IACD,SAAS,GAAI,OAAO,OAAO,EAAE,YAAY,MAAM,EAAE,YAiBhD;IACD,KAAK,QAAO,OAAO,CAAC,MAAM,CAAC,CAO1B;IACD,IAAI,aAMH;CAGJ"}
|
|
@@ -6,7 +6,7 @@ import { join, relative } from 'path';
|
|
|
6
6
|
import slash from 'slash';
|
|
7
7
|
import "../moduleReloader.js"; // V important ES module cache control
|
|
8
8
|
import { allObj as promiseAllObj } from 'sxy-lib/promises.js';
|
|
9
|
-
import { staticFolder, assetsFolder, publicFolder, packagesFolder, clientFolder, componentCssFolder } from "../settings.js";
|
|
9
|
+
import { staticFolder, assetsFolder, publicFolder, packagesFolder, clientFolder, componentCssFolder, frameworkCssFolder } from "../settings.js";
|
|
10
10
|
import { rootToHtmlDev as renderRootToHtmlDev } from "../render/rootToHtmlDev.js";
|
|
11
11
|
import { Instance } from "../Instance/Instance.js";
|
|
12
12
|
import { TungstenError } from "../TungstenError.js";
|
|
@@ -236,7 +236,6 @@ export class DevServer extends TungstenServer {
|
|
|
236
236
|
}
|
|
237
237
|
globalDataFunc.value = undefined;
|
|
238
238
|
//const load = await createLoad(import.meta.url, sxyLoaderConfig)
|
|
239
|
-
//await loadEnvsDev(this.config, load, this.initialProcessEnv, false)
|
|
240
239
|
await loadEnvsDev(this.config, iteration, this.initialProcessEnv, false);
|
|
241
240
|
// we are delaying instance creation until after we load the app code, to lets things initialise?
|
|
242
241
|
const reqRes = {
|
|
@@ -539,7 +538,8 @@ export class DevServer extends TungstenServer {
|
|
|
539
538
|
this.app.use(`/.tungsten.config.js`, express.static(join(this.compilationInfo.buildLocation, '.tungsten.config.js'))); // compiled packages
|
|
540
539
|
this.app.use(`/${packagesFolder}/`, express.static(join(this.compilationInfo.buildLocation, packagesFolder))); // compiled packages
|
|
541
540
|
this.app.use(`/${clientFolder}/`, express.static(join(this.compilationInfo.buildLocation, clientFolder))); // compiled packages
|
|
542
|
-
this.app.use(`/${componentCssFolder}/`, express.static(join(this.compilationInfo.buildLocation, componentCssFolder))); //
|
|
541
|
+
this.app.use(`/${componentCssFolder}/`, express.static(join(this.compilationInfo.buildLocation, componentCssFolder))); // user component css
|
|
542
|
+
this.app.use(`/${frameworkCssFolder}/`, express.static(join(this.compilationInfo.buildLocation, frameworkCssFolder))); // framework component css
|
|
543
543
|
this.app.use(express.static(join(this.compilationInfo.buildLocation, staticFolder))); // compiled stylesheets? -- etag: false to disable caching
|
|
544
544
|
const publicLocation = join(this.compilationInfo.buildLocation, publicFolder);
|
|
545
545
|
if (existsSync(publicLocation)) this.app.use(express.static(publicLocation)); // files from public folder
|
|
@@ -25,6 +25,6 @@ export declare class ProdServer extends TungstenServer {
|
|
|
25
25
|
private tryRenderErrorRoute;
|
|
26
26
|
errorPage: () => string;
|
|
27
27
|
start(portOverride?: number | null, mute?: boolean): Promise<string>;
|
|
28
|
-
stop(): void
|
|
28
|
+
stop(): Promise<void>;
|
|
29
29
|
}
|
|
30
30
|
//# sourceMappingURL=ProdServer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProdServer.d.ts","sourceRoot":"","sources":["../../src/Servers/ProdServer.ts"],"names":[],"mappings":"AAEA,OAAO,OAAO,MAAM,SAAS,CAAA;AAC7B,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAA;AAI7B,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAA;AACpE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAA;AAClE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAQpD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAM3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AAKnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAWrD,qBAAa,UAAW,SAAQ,cAAc;IAC1C,SAAS,EAAE,SAAS,CAAA;IACpB,MAAM,EAAE,uBAAuB,CAAA;IAC/B,eAAe,EAAE,eAAe,CAAA;IAChC,SAAS,EAAE,SAAS,CAAA;IACpB,mBAAmB,EAAE,gBAAgB,GAAG,IAAI,CAAA;IAK5C,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAO;IAC9B,GAAG,EAAE,OAAO,CAAC,WAAW,CAAA;IACxB,gBAAgB,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,CAAA;IACrC,SAAS,CAAC,EAAE,SAAS,CAAA;IACrB,MAAM,CAAC,EAAE,MAAM,CAAA;gBAEX,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,uBAAuB,EAC/B,eAAe,EAAE,eAAe,EAChC,SAAS,EAAE,SAAS,EACpB,mBAAmB,EAAE,gBAAgB,GAAG,IAAI,EAC5C,gBAAgB,EAAE,gBAAgB,GAAG,IAAI;
|
|
1
|
+
{"version":3,"file":"ProdServer.d.ts","sourceRoot":"","sources":["../../src/Servers/ProdServer.ts"],"names":[],"mappings":"AAEA,OAAO,OAAO,MAAM,SAAS,CAAA;AAC7B,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAA;AAI7B,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAA;AACpE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAA;AAClE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAQpD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAM3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AAKnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAWrD,qBAAa,UAAW,SAAQ,cAAc;IAC1C,SAAS,EAAE,SAAS,CAAA;IACpB,MAAM,EAAE,uBAAuB,CAAA;IAC/B,eAAe,EAAE,eAAe,CAAA;IAChC,SAAS,EAAE,SAAS,CAAA;IACpB,mBAAmB,EAAE,gBAAgB,GAAG,IAAI,CAAA;IAK5C,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAO;IAC9B,GAAG,EAAE,OAAO,CAAC,WAAW,CAAA;IACxB,gBAAgB,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,CAAA;IACrC,SAAS,CAAC,EAAE,SAAS,CAAA;IACrB,MAAM,CAAC,EAAE,MAAM,CAAA;gBAEX,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,uBAAuB,EAC/B,eAAe,EAAE,eAAe,EAChC,SAAS,EAAE,SAAS,EACpB,mBAAmB,EAAE,gBAAgB,GAAG,IAAI,EAC5C,gBAAgB,EAAE,gBAAgB,GAAG,IAAI;IAkI7C,OAAO,CAAC,gBAAgB,CAgBvB;IACD,aAAa,GAAU,KAAK,OAAO,CAAC,OAAO,EAAE,KAAK,OAAO,CAAC,QAAQ,KAAG,OAAO,CAAC,IAAI,CAAC,CA2HjF;IASD,OAAO,CAAC,mBAAmB,CA+C1B;IACD,SAAS,eASR;IAMD,KAAK,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,EAAE,IAAI,UAAQ,GAAG,OAAO,CAAC,MAAM,CAAC;IA0B5D,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAY9B"}
|
|
@@ -4,7 +4,7 @@ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e =
|
|
|
4
4
|
import express from 'express';
|
|
5
5
|
import { join } from 'path';
|
|
6
6
|
import { existsSync } from 'fs';
|
|
7
|
-
import { staticFolder, assetsFolder, packageNameCapitalized, publicFolder, componentCssFolder } from "../settings.js";
|
|
7
|
+
import { staticFolder, assetsFolder, packageNameCapitalized, publicFolder, componentCssFolder, frameworkCssFolder } from "../settings.js";
|
|
8
8
|
import { rootToHtml as renderRootToHtml } from "../render/rootToHtml.js";
|
|
9
9
|
import { contentToHtml as renderContentToHtml } from "../render/contentToHtml.js";
|
|
10
10
|
import { Instance } from "../Instance/Instance.js";
|
|
@@ -314,6 +314,7 @@ export class ProdServer extends TungstenServer {
|
|
|
314
314
|
}
|
|
315
315
|
this.app.use('/bundle', express.static(this.compilationInfo.bundleLocation));
|
|
316
316
|
this.app.use(`/${componentCssFolder}/`, express.static(join(this.compilationInfo.buildLocation, componentCssFolder)));
|
|
317
|
+
this.app.use(`/${frameworkCssFolder}/`, express.static(join(this.compilationInfo.buildLocation, frameworkCssFolder)));
|
|
317
318
|
const publicLocation = join(this.compilationInfo.buildLocation, publicFolder);
|
|
318
319
|
//console.log('publicLocation', publicLocation, existsSync(publicLocation))
|
|
319
320
|
if (existsSync(publicLocation)) this.app.use(express.static(publicLocation)); // files from public folder
|
|
@@ -357,7 +358,16 @@ export class ProdServer extends TungstenServer {
|
|
|
357
358
|
});
|
|
358
359
|
});
|
|
359
360
|
}
|
|
360
|
-
|
|
361
|
-
|
|
361
|
+
// close() alone only stops new connections arriving - keep-alive sockets (fetch/undici
|
|
362
|
+
// holds them open) keep the handle, and so the event loop, alive until they time out
|
|
363
|
+
async stop() {
|
|
364
|
+
const server = this.server;
|
|
365
|
+
if (server === undefined) return;
|
|
366
|
+
await new Promise((resolve, reject) => {
|
|
367
|
+
server.close(error => error === undefined ? resolve() : reject(error));
|
|
368
|
+
server.closeAllConnections();
|
|
369
|
+
});
|
|
370
|
+
delete this.server;
|
|
371
|
+
this.location = null;
|
|
362
372
|
}
|
|
363
373
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loadEnvsDev.d.ts","sourceRoot":"","sources":["../../src/Servers/loadEnvsDev.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAA;
|
|
1
|
+
{"version":3,"file":"loadEnvsDev.d.ts","sourceRoot":"","sources":["../../src/Servers/loadEnvsDev.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAA;AAUpE,KAAK,UAAU,GAAG;IACd,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IAChC,EAAE,CAAC,EAAE,MAAM,CAAC;CACf,CAAA;AAED,wBAAsB,WAAW,CAC7B,MAAM,EAAE,uBAAuB,EAE/B,SAAS,EAAE,MAAM,EACjB,iBAAiB,EAAE,UAAU,EAC7B,UAAU,EAAE,OAAO,EACnB,eAAe,UAAQ,iBAkI1B"}
|
|
@@ -4,9 +4,11 @@ import { remap as objectRemap, filter as objectFilter } from 'sxy-lib/objects.js
|
|
|
4
4
|
import { getEnvSchemasDev } from "../env/getEnvSchemas.js";
|
|
5
5
|
import dotenv from 'dotenv';
|
|
6
6
|
import { cliLog, cliOut } from "../cliOutput.js";
|
|
7
|
-
import {
|
|
7
|
+
import { addToEnv } from "../env/addToEnv.js";
|
|
8
8
|
import { throwError } from 'tungsten/throwError.js';
|
|
9
9
|
import { tungstenCorePrivateEnvSchema } from "./tungstenCorePrivateEnvSchema.js";
|
|
10
|
+
import { tungstenCorePublicEnvSchema } from "./tungstenCorePublicEnvSchema.js";
|
|
11
|
+
import z from 'zod';
|
|
10
12
|
export async function loadEnvsDev(config,
|
|
11
13
|
//load: Load,
|
|
12
14
|
iteration, initialProcessEnv, _firstLoad, useTestEnvFiles = false) {
|
|
@@ -42,7 +44,7 @@ iteration, initialProcessEnv, _firstLoad, useTestEnvFiles = false) {
|
|
|
42
44
|
someEnvLoaded = true;
|
|
43
45
|
if (_firstLoad) cliOut(`${fileName} loaded from ${filePath}`);
|
|
44
46
|
//cliOut(fileName, JSON.stringify(env, null, 4))
|
|
45
|
-
|
|
47
|
+
addToEnv(env, tempEnv, prefix, initialProcessEnv, config.suppressEnvOverwriteWarnings);
|
|
46
48
|
//if (_firstLoad) console.log('loaded env file', fileName)
|
|
47
49
|
} catch (e) {
|
|
48
50
|
if (e !== null && typeof e === 'object' && 'errno' in e && e.errno === -4058) {
|
|
@@ -65,7 +67,7 @@ iteration, initialProcessEnv, _firstLoad, useTestEnvFiles = false) {
|
|
|
65
67
|
// global.tungstenPrivateEnv = envSchemas.privateEnvSchema.parse(process.env)
|
|
66
68
|
const result = envSchemas.privateEnvSchema.safeParse(tempEnv);
|
|
67
69
|
if (!result.success) {
|
|
68
|
-
throwError('Your environment variables failed your privateEnvSchema validation', '\n' + JSON.stringify(result.error
|
|
70
|
+
throwError('Your environment variables failed your privateEnvSchema validation', '\n' + JSON.stringify(z.treeifyError(result.error), null, 4) + '\nenv: ' + JSON.stringify(tempEnv, null, 4)
|
|
69
71
|
//+ '\nparsed env ' + JSON.stringify(tempEnv, null, 4)
|
|
70
72
|
);
|
|
71
73
|
}
|
|
@@ -74,7 +76,7 @@ iteration, initialProcessEnv, _firstLoad, useTestEnvFiles = false) {
|
|
|
74
76
|
if (!coreResult.success) {
|
|
75
77
|
throwError('Your private environment variables don\'t meet the Tungsten requirements. Ensure your .env and privateEnvSchema provide an output meeting these requirements. You may need to coerce data to the correct type.',
|
|
76
78
|
// eslint-disable-line max-len
|
|
77
|
-
'\n' + JSON.stringify(coreResult.error
|
|
79
|
+
'\n' + JSON.stringify(z.treeifyError(coreResult.error), null, 4) + '\nenv: ' + JSON.stringify(tempEnv, null, 4)
|
|
78
80
|
//+ '\nparsed env ' + JSON.stringify(tempEnv, null, 4)
|
|
79
81
|
);
|
|
80
82
|
}
|
|
@@ -89,9 +91,18 @@ iteration, initialProcessEnv, _firstLoad, useTestEnvFiles = false) {
|
|
|
89
91
|
});
|
|
90
92
|
const result = envSchemas.publicEnvSchema.safeParse(tempPublicEnv);
|
|
91
93
|
if (!result.success) {
|
|
92
|
-
throwError('Public Env failed schema validation', '\n' + JSON.stringify(result.error
|
|
94
|
+
throwError('Public Env failed schema validation', '\n' + JSON.stringify(z.treeifyError(result.error), null, 4) + '\nenv: ' + JSON.stringify(tempEnv, null, 4) + '\nparsed public env ' + JSON.stringify(tempPublicEnv, null, 4));
|
|
93
95
|
}
|
|
94
|
-
|
|
96
|
+
const coreResult = tungstenCorePublicEnvSchema.safeParse(result.data);
|
|
97
|
+
//console.log('coreResult', coreResult)
|
|
98
|
+
if (!coreResult.success) {
|
|
99
|
+
throwError('Your private environment variables don\'t meet the Tungsten requirements. Ensure your .env and privateEnvSchema provide an output meeting these requirements. You may need to coerce data to the correct type.',
|
|
100
|
+
// eslint-disable-line max-len
|
|
101
|
+
'\n' + JSON.stringify(z.treeifyError(coreResult.error), null, 4) + '\nenv: ' + JSON.stringify(tempEnv, null, 4)
|
|
102
|
+
//+ '\nparsed env ' + JSON.stringify(tempEnv, null, 4)
|
|
103
|
+
);
|
|
104
|
+
}
|
|
105
|
+
global.tungstenPublicEnv = coreResult.data;
|
|
95
106
|
//console.log('global.tungstenPublicEnv', global.tungstenPublicEnv)
|
|
96
107
|
if (_firstLoad) cliOut('tungsten public env loaded and passed schema validation'); // save this so that we can show all messages about loading .env files first
|
|
97
108
|
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { ClassProperty } from '@babel/types';
|
|
2
|
+
import type { Babel, NodePath, PluginPass } from './BabelTypes.js';
|
|
3
|
+
type Opts = {
|
|
4
|
+
onStylesheet: (rel: string, sourceFile: string) => void;
|
|
5
|
+
};
|
|
6
|
+
export declare function MakeBabelExtractComponentStylesheet(opts: Opts): (_babel: Babel) => {
|
|
7
|
+
name: string;
|
|
8
|
+
visitor: {
|
|
9
|
+
ClassProperty(path: NodePath<ClassProperty>, state: PluginPass): void;
|
|
10
|
+
};
|
|
11
|
+
};
|
|
12
|
+
export {};
|
|
13
|
+
//# sourceMappingURL=BabelExtractComponentStylesheet.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BabelExtractComponentStylesheet.d.ts","sourceRoot":"","sources":["../../src/babelPlugins/BabelExtractComponentStylesheet.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AACjD,OAAO,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAElE,KAAK,IAAI,GAAG;IACR,YAAY,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,KAAK,IAAI,CAAA;CAC1D,CAAA;AAKD,wBAAgB,mCAAmC,CAAC,IAAI,EAAE,IAAI,IACV,QAAQ,KAAK;;;4BAI7B,QAAQ,CAAC,aAAa,CAAC,SAAS,UAAU;;EAc7E"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
// Reads and erases the `$stylesheet` static emitted by BabelTransformComponentStyles. The value
|
|
2
|
+
// names a css file inside the package; it is extracted here so the file can be copied into the
|
|
3
|
+
// build, and removed so it never reaches the browser.
|
|
4
|
+
export function MakeBabelExtractComponentStylesheet(opts) {
|
|
5
|
+
return function BabelExtractComponentStylesheet(_babel) {
|
|
6
|
+
return {
|
|
7
|
+
name: 'extract-component-stylesheet',
|
|
8
|
+
visitor: {
|
|
9
|
+
ClassProperty(path, state) {
|
|
10
|
+
const {
|
|
11
|
+
key,
|
|
12
|
+
value
|
|
13
|
+
} = path.node;
|
|
14
|
+
if (key.type !== 'Identifier' || key.name !== '$stylesheet') return;
|
|
15
|
+
if (value === null || value === undefined || value.type !== 'StringLiteral') return;
|
|
16
|
+
const sourceFile = state.filename;
|
|
17
|
+
if (typeof sourceFile !== 'string') return;
|
|
18
|
+
opts.onStylesheet(value.value, sourceFile);
|
|
19
|
+
path.remove();
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
};
|
|
24
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BabelTransformComponentStyles.d.ts","sourceRoot":"","sources":["../../src/babelPlugins/BabelTransformComponentStyles.ts"],"names":[],"mappings":"AAwCA,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAc,MAAM,iBAAiB,CAAA;AAa7D,OAAO,EAAE,wBAAwB,EAAE,MAAM,cAAc,CAAA;AAmPvD,KAAK,IAAI,GAAG;IACR,iBAAiB,EAAE,MAAM,CAAA;IACzB,mBAAmB,EAAE,MAAM,CAAA;IAC3B,wBAAwB,EAAE,MAAM,CAAA;IAChC,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,aAAa,CAAC,EAAE,MAAM,EAAE,CAAA;
|
|
1
|
+
{"version":3,"file":"BabelTransformComponentStyles.d.ts","sourceRoot":"","sources":["../../src/babelPlugins/BabelTransformComponentStyles.ts"],"names":[],"mappings":"AAwCA,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAc,MAAM,iBAAiB,CAAA;AAa7D,OAAO,EAAE,wBAAwB,EAAE,MAAM,cAAc,CAAA;AAmPvD,KAAK,IAAI,GAAG;IACR,iBAAiB,EAAE,MAAM,CAAA;IACzB,mBAAmB,EAAE,MAAM,CAAA;IAC3B,wBAAwB,EAAE,MAAM,CAAA;IAChC,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,aAAa,CAAC,EAAE,MAAM,EAAE,CAAA;IAKxB,YAAY,CAAC,EAAE,MAAM,CAAA;IAIrB,KAAK,CAAC,EAAE,OAAO,CAAA;CAClB,CAAA;AAID,wBAAgB,iCAAiC,CAAC,IAAI,EAAE,IAAI,IAkMV,OAAO,KAAK;;;;6BAMjC,MAAM;;mBAIZ,MAAM;;;uCAkBkB,QAAQ,CAAC,wBAAwB,CAAC;sBAf3D,MAAM;kBACV;gBACF,IAAI;qCATS,MAAM;kBASL;aACjB;+BACkB,MAAM;;;EAsLpC"}
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
// that can be applied to component output at runtime
|
|
7
7
|
// (I think)
|
|
8
8
|
import fs from 'fs';
|
|
9
|
-
import { join, dirname, basename,
|
|
9
|
+
import { join, dirname, basename, relative } from 'path';
|
|
10
10
|
import * as sass from 'sass';
|
|
11
11
|
import postcss from 'postcss';
|
|
12
12
|
import { mapToArray as objectMapToArray } from 'sxy-lib/objects.js';
|
|
@@ -195,7 +195,7 @@ export function MakeBabelTransformComponentStyles(opts) {
|
|
|
195
195
|
'ReactZoneScss': ReactZoneScss
|
|
196
196
|
//'Less': Less,
|
|
197
197
|
};
|
|
198
|
-
const watchStyles = opts.cssOutputFile || opts.cssModulesOutputDir;
|
|
198
|
+
const watchStyles = opts.watch !== false && (opts.cssOutputFile !== '' || opts.cssModulesOutputDir !== '');
|
|
199
199
|
// should this code be moved to babel - pre?
|
|
200
200
|
// prepare the css file by creating a blank file or clearing the existing file
|
|
201
201
|
if (opts.cssOutputFile) {
|
|
@@ -259,14 +259,19 @@ export function MakeBabelTransformComponentStyles(opts) {
|
|
|
259
259
|
if (name === undefined) {
|
|
260
260
|
throwError('BabelTransformComponentStyles', `could not derive a module name from ${relFilePath}`);
|
|
261
261
|
}
|
|
262
|
-
|
|
262
|
+
// Forward slash, not `sep`: relFilePath is sliced from a path that
|
|
263
|
+
// slash() has already normalised, so on Windows splitting by `\` gave
|
|
264
|
+
// a single part and every module name collapsed to its bare filename —
|
|
265
|
+
// platform-dependent class names, and two components sharing a filename
|
|
266
|
+
// scoped identically.
|
|
267
|
+
const parts = relFilePath.split('/');
|
|
263
268
|
if (name === 'index') {
|
|
264
269
|
parts.pop();
|
|
265
270
|
} else {
|
|
266
271
|
parts[parts.length - 1] = name;
|
|
267
272
|
}
|
|
268
273
|
if (index > 1) parts.push(index);
|
|
269
|
-
const moduleName = parts.join('-');
|
|
274
|
+
const moduleName = (opts.modulePrefix ?? '') + parts.join('-');
|
|
270
275
|
return moduleName;
|
|
271
276
|
}
|
|
272
277
|
function writeOutIfNeeded(css, names, opts) {
|
|
@@ -409,8 +414,19 @@ export function MakeBabelTransformComponentStyles(opts) {
|
|
|
409
414
|
names,
|
|
410
415
|
transformedCss
|
|
411
416
|
} = tagName === 'ReactZoneScss' ? cssToReactZoneStyles(css, fullFilePath, moduleName) : cssToLocalClassNames(css, fullFilePath, moduleName);
|
|
412
|
-
|
|
417
|
+
// `#` is a fragment delimiter in the `@import "i/….css"`
|
|
418
|
+
// the manifest is built from, so it cannot survive into
|
|
419
|
+
// a filename. The prefix's trailing `-` keeps the result
|
|
420
|
+
// readable and distinct.
|
|
421
|
+
stylesheets[moduleName] = moduleName.replaceAll('#', '') + '.css';
|
|
413
422
|
writeOutIfNeeded(transformedCss, names, opts);
|
|
423
|
+
// Kept out of the style object, which ships to the browser: a separate
|
|
424
|
+
// static the build can extract and then erase.
|
|
425
|
+
const classBody = path.findParent(parent => parent.isClassBody());
|
|
426
|
+
if (classBody !== null && classBody.isClassBody()) {
|
|
427
|
+
classBody.node.body.push(t.classProperty(t.identifier('$stylesheet'), t.stringLiteral(`${individualFolderName}/${stylesheets[moduleName]}`), null, null, false, true // static
|
|
428
|
+
));
|
|
429
|
+
}
|
|
414
430
|
// increment for the next one
|
|
415
431
|
state.__stylesheetIndex++;
|
|
416
432
|
state.file.opts.stylesheetIndex++;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BabelTransformPackageImports.d.ts","sourceRoot":"","sources":["../../src/babelPlugins/BabelTransformPackageImports.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA;AAOrD,OAAO,EAGH,QAAQ,EACX,MAAM,aAAa,CAAA;AACpB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"BabelTransformPackageImports.d.ts","sourceRoot":"","sources":["../../src/babelPlugins/BabelTransformPackageImports.ts"],"names":[],"mappings":"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"}
|
|
@@ -21,6 +21,8 @@ const babelPluginSyntaxImportAssertions = babelPluginSyntaxImportAssertionsModul
|
|
|
21
21
|
import { init as lexerInit, parse as lexerParse } from 'cjs-module-lexer';
|
|
22
22
|
lexerInit();
|
|
23
23
|
import { MakeBabelTransformCjsToFunction } from "./BabelTransformCjsToFunction.js";
|
|
24
|
+
import { MakeBabelExtractComponentStylesheet } from "./BabelExtractComponentStylesheet.js";
|
|
25
|
+
import { recordFrameworkStylesheet } from "../build/frameworkStylesheets.js";
|
|
24
26
|
import { MakeBabelTransformDependencyImportsEsm } from "./transformPackageImports/BabelTransformDependencyImportsEsm.js";
|
|
25
27
|
import { MakeBabelTransformDependencyImportsCjs } from "./transformPackageImports/BabelTransformDependencyImportsCjs.js";
|
|
26
28
|
import { frameworkDistFolder, packageName as frameworkPackageName, packageName, packagesFolder /*, packagesCacheInfoName*/ } from "../settings.js";
|
|
@@ -325,7 +327,7 @@ export function MakeBabelTransformPackageImports(opts) {
|
|
|
325
327
|
//console.log('packageDir', packageDir)
|
|
326
328
|
return getPackageInfo(packageDir);
|
|
327
329
|
};
|
|
328
|
-
function makeModifyImportsEsmBabelOptions(nonEsmDeps) {
|
|
330
|
+
function makeModifyImportsEsmBabelOptions(nonEsmDeps, onStylesheet) {
|
|
329
331
|
return {
|
|
330
332
|
plugins: [babelPluginSyntaxImportAssertions, MakeBabelTransformDependencyImportsEsm({
|
|
331
333
|
nonEsmDeps
|
|
@@ -335,11 +337,13 @@ export function MakeBabelTransformPackageImports(opts) {
|
|
|
335
337
|
getExternalImportFinalImportLocation,
|
|
336
338
|
getFileFinalLocation,
|
|
337
339
|
makeCjsEntryFile
|
|
340
|
+
}), MakeBabelExtractComponentStylesheet({
|
|
341
|
+
onStylesheet
|
|
338
342
|
})]
|
|
339
343
|
};
|
|
340
344
|
}
|
|
341
|
-
async function babelFileEsm(file /*, packageInfo*/, nonEsmDeps) {
|
|
342
|
-
const result = await babelTransformFileAsync(file, makeModifyImportsEsmBabelOptions(nonEsmDeps.map(d => d.webLocation)));
|
|
345
|
+
async function babelFileEsm(file /*, packageInfo*/, nonEsmDeps, onStylesheet) {
|
|
346
|
+
const result = await babelTransformFileAsync(file, makeModifyImportsEsmBabelOptions(nonEsmDeps.map(d => d.webLocation), onStylesheet));
|
|
343
347
|
if (result === null) {
|
|
344
348
|
throw new TungstenError(`BabelTransformPackageImports error: sub file babel transform (1) returned null: ${file}`);
|
|
345
349
|
}
|
|
@@ -400,14 +404,14 @@ export function MakeBabelTransformPackageImports(opts) {
|
|
|
400
404
|
//if (file.includes('domexception')) console.log('transformed imports', code)
|
|
401
405
|
return result.code;
|
|
402
406
|
}
|
|
403
|
-
function addToDependencyGraphFromFileInfo(fileInfo, dependencies) {
|
|
404
|
-
return addToDependencyGraph(fileInfo.fileIdentifier, fileInfo.file, fileInfo.cacheDest, fileInfo.finalDest, fileInfo.packageInfo.type, dependencies);
|
|
407
|
+
function addToDependencyGraphFromFileInfo(fileInfo, dependencies, stylesheet) {
|
|
408
|
+
return addToDependencyGraph(fileInfo.fileIdentifier, fileInfo.file, fileInfo.cacheDest, fileInfo.finalDest, fileInfo.packageInfo.type, dependencies, stylesheet);
|
|
405
409
|
}
|
|
406
410
|
function addToDependencyGraphFromCacheNode(fileIdentifier, cacheNode, dependencies) {
|
|
407
411
|
//throw new TungstenError(`addToDependencyGraphFromCacheNode() not implemented yet`)
|
|
408
|
-
return addToDependencyGraph(fileIdentifier, cacheNode.originalLocation, cacheNode.cacheLocation, cacheNode.finalLocation, cacheNode.type, dependencies);
|
|
412
|
+
return addToDependencyGraph(fileIdentifier, cacheNode.originalLocation, cacheNode.cacheLocation, cacheNode.finalLocation, cacheNode.type, dependencies, cacheNode.stylesheet);
|
|
409
413
|
}
|
|
410
|
-
function addToDependencyGraph(fileIdentifier, file, cacheLocation, finalLocation, fileType, dependencies) {
|
|
414
|
+
function addToDependencyGraph(fileIdentifier, file, cacheLocation, finalLocation, fileType, dependencies, stylesheet) {
|
|
411
415
|
//console.log('addToDependencyGraph')
|
|
412
416
|
//console.log(type, file, dependencies.length)
|
|
413
417
|
opts.dependencyGraph[fileIdentifier] = {
|
|
@@ -417,6 +421,11 @@ export function MakeBabelTransformPackageImports(opts) {
|
|
|
417
421
|
finalLocation: finalLocation
|
|
418
422
|
};
|
|
419
423
|
if (dependencies) opts.dependencyGraph[fileIdentifier].dependencies = dependencies;
|
|
424
|
+
// both paths land here, so a restored file contributes its css as a transformed one does
|
|
425
|
+
if (stylesheet !== undefined) {
|
|
426
|
+
opts.dependencyGraph[fileIdentifier].stylesheet = stylesheet;
|
|
427
|
+
recordFrameworkStylesheet(getPackageDirForFile(file), stylesheet);
|
|
428
|
+
}
|
|
420
429
|
}
|
|
421
430
|
function resolveFile(file) {
|
|
422
431
|
//console.log('resolve file', file)
|
|
@@ -447,6 +456,7 @@ export function MakeBabelTransformPackageImports(opts) {
|
|
|
447
456
|
finalDest,
|
|
448
457
|
packageInfo
|
|
449
458
|
} = fileInfo;
|
|
459
|
+
let stylesheet;
|
|
450
460
|
//try {
|
|
451
461
|
const dependencies = getFileDependencies(fileInfo, sourceFilename, history);
|
|
452
462
|
// cliInfo(`deps for ${file}`)
|
|
@@ -464,7 +474,9 @@ export function MakeBabelTransformPackageImports(opts) {
|
|
|
464
474
|
if (hasJavascriptFileExtension(file)) {
|
|
465
475
|
if (getModuleFormatForFile(file) === 'esm' && file.endsWith('.js') || file.endsWith('.mjs')) {
|
|
466
476
|
try {
|
|
467
|
-
const code = await babelFileEsm(file /*, packageInfo*/, nonEsmDependenciesFull
|
|
477
|
+
const code = await babelFileEsm(file /*, packageInfo*/, nonEsmDependenciesFull, rel => {
|
|
478
|
+
stylesheet = rel;
|
|
479
|
+
});
|
|
468
480
|
//console.log('writing file', cacheDest)
|
|
469
481
|
//console.log('writing file', finalDest)
|
|
470
482
|
await fsPromises.writeFile(cacheDest, code); // rel contains the slash at start
|
|
@@ -494,7 +506,7 @@ export function MakeBabelTransformPackageImports(opts) {
|
|
|
494
506
|
await fsPromises.copyFile(file, finalDest);
|
|
495
507
|
}
|
|
496
508
|
const dependenciesFileIndentifiers = dependenciesFull.map(d => d.fileIdentifier);
|
|
497
|
-
addToDependencyGraphFromFileInfo(fileInfo, dependenciesFileIndentifiers);
|
|
509
|
+
addToDependencyGraphFromFileInfo(fileInfo, dependenciesFileIndentifiers, stylesheet);
|
|
498
510
|
// add deps to dependencyGraph
|
|
499
511
|
// returns the deps
|
|
500
512
|
await processDependencies(dependenciesFull, sourceFilename, [...history, file]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../../src/bin/commands/build.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../../src/bin/commands/build.ts"],"names":[],"mappings":"AAqDA,OAAO,EAAE,CAAA"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// build
|
|
2
2
|
import chalk from 'chalk-extensions';
|
|
3
3
|
import { Framework } from "../../Framework.js";
|
|
4
|
-
import { cliOut, cliNews } from "../../cliOutput.js";
|
|
4
|
+
import { cliOut, cliNews, cliWarn } from "../../cliOutput.js";
|
|
5
5
|
import { staticSiteFolder } from "../../settings.js";
|
|
6
6
|
import { createTimeProfiler } from "../../timeProfiler.js";
|
|
7
7
|
const profile = process.argv.slice(3).includes('--profile');
|
|
@@ -27,4 +27,11 @@ if (sxyFramework.config.staticSite) {
|
|
|
27
27
|
} else {
|
|
28
28
|
cliNews(`Production build complete`);
|
|
29
29
|
}
|
|
30
|
-
|
|
30
|
+
// The build no longer holds anything open, so it ends by draining the event loop - hard-exiting
|
|
31
|
+
// here used to abort the process outright when an fs-extra copy still had a chmod in flight
|
|
32
|
+
// (libuv `!(handle->flags & UV_HANDLE_CLOSING)`). Safety net only, in case a future change
|
|
33
|
+
// leaks a handle again: unref'd, so a clean build still exits the moment it is done.
|
|
34
|
+
setTimeout(() => {
|
|
35
|
+
cliWarn(`Build finished but something is still holding the process open - exiting anyway.`);
|
|
36
|
+
process.exit(0);
|
|
37
|
+
}, 10_000).unref();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compile.d.ts","sourceRoot":"","sources":["../../../src/bin/commands/compile.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"compile.d.ts","sourceRoot":"","sources":["../../../src/bin/commands/compile.ts"],"names":[],"mappings":"AAuRA,OAAO,EAAE,CAAA"}
|
|
@@ -3,12 +3,13 @@ import { promises as fsPromises } from 'fs';
|
|
|
3
3
|
import { removeRecursive } from "../../removeRecursive.js";
|
|
4
4
|
import { compileJavascript } from "../../build/compileJavascript.js";
|
|
5
5
|
import { compileStyles } from "../../build/compileStyles.js";
|
|
6
|
+
import { writeFrameworkCss } from "../../build/frameworkStylesheets.js";
|
|
6
7
|
import { copyAssets } from "../../build/copyAssets.js";
|
|
7
8
|
import { copyPublicFiles } from "../../build/copyPublicFiles.js";
|
|
8
9
|
import { createClientFiles } from "../../build/createClientFiles.js";
|
|
9
10
|
import { createInstanceConfigFile } from "../../build/createInstanceConfigFile.js";
|
|
10
11
|
import { getUserConfig } from "../../getUserConfig.js";
|
|
11
|
-
import { buildCodeSubPath, assetsFolder, clientFolder, componentCssFolder, devBuildOuterFolder, packagesCacheFolder, packagesFolder, publicFolder, staticFolder } from "../../settings.js";
|
|
12
|
+
import { buildCodeSubPath, assetsFolder, clientFolder, componentCssFolder, devBuildOuterFolder, frameworkCssFolder, packagesCacheFolder, packagesFolder, publicFolder, staticFolder } from "../../settings.js";
|
|
12
13
|
import { cliError, cliNews, cliOut } from "../../cliOutput.js";
|
|
13
14
|
const targetOptions = {
|
|
14
15
|
'--js': 'js',
|
|
@@ -121,7 +122,9 @@ async function markReady() {
|
|
|
121
122
|
await clearReadyFile();
|
|
122
123
|
const cleanTasks = [];
|
|
123
124
|
if (clean && targets.has('js')) {
|
|
124
|
-
cleanTasks.push(removeRecursive(buildCodeLocation), removeRecursive(join(buildLocation, componentCssFolder)),
|
|
125
|
+
cleanTasks.push(removeRecursive(buildCodeLocation), removeRecursive(join(buildLocation, componentCssFolder)),
|
|
126
|
+
// else a component the app no longer imports keeps its stale stylesheet linked
|
|
127
|
+
removeRecursive(join(buildLocation, frameworkCssFolder)), removeRecursive(join(buildLocation, packagesFolder)), removeRecursive(packagesCacheLocation));
|
|
125
128
|
}
|
|
126
129
|
if (clean && targets.has('css')) {
|
|
127
130
|
cleanTasks.push(removeRecursive(join(buildLocation, staticFolder)));
|
|
@@ -171,6 +174,8 @@ if (targets.has('public')) {
|
|
|
171
174
|
compilationTasks.push(copyPublicFiles(projectDir, config, buildLocation, watch));
|
|
172
175
|
}
|
|
173
176
|
const compilationResults = await Promise.allSettled(compilationTasks);
|
|
177
|
+
// after the js task: the package walk that records the stylesheets runs inside it
|
|
178
|
+
if (targets.has('js')) await writeFrameworkCss(buildLocation);
|
|
174
179
|
const failures = compilationResults.filter(result => result.status === 'rejected').map(result => result.reason);
|
|
175
180
|
const initialSuccess = failures.length === 0 && javascriptInitialSuccess;
|
|
176
181
|
if (initialSuccess) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CompilationInfo.d.ts","sourceRoot":"","sources":["../../src/build/CompilationInfo.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAEvD,MAAM,MAAM,eAAe,GAAG;IAC1B,IAAI,EAAE,SAAS,CAAA;IACf,UAAU,EAAE,MAAM,CAAA;IAClB,YAAY,EAAE,MAAM,CAAA;IACpB,aAAa,EAAE,MAAM,CAAA;IACrB,WAAW,EAAE,MAAM,CAAA;IACnB,iBAAiB,EAAE,MAAM,CAAA;IACzB,QAAQ,EAAE,MAAM,CAAA;IAChB,cAAc,CAAC,EAAE,MAAM,CAAA;IAEvB,aAAa,EAAE,aAAa,CAAA;CAC/B,CAAA"}
|
|
1
|
+
{"version":3,"file":"CompilationInfo.d.ts","sourceRoot":"","sources":["../../src/build/CompilationInfo.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAEvD,MAAM,MAAM,eAAe,GAAG;IAC1B,IAAI,EAAE,SAAS,CAAA;IACf,UAAU,EAAE,MAAM,CAAA;IAClB,YAAY,EAAE,MAAM,CAAA;IACpB,aAAa,EAAE,MAAM,CAAA;IACrB,WAAW,EAAE,MAAM,CAAA;IACnB,iBAAiB,EAAE,MAAM,CAAA;IACzB,QAAQ,EAAE,MAAM,CAAA;IAChB,cAAc,CAAC,EAAE,MAAM,CAAA;IAEvB,YAAY,CAAC,EAAE,MAAM,CAAA;IAErB,aAAa,EAAE,aAAa,CAAA;CAC/B,CAAA"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare function combineComponentCss(buildLocation: string): Promise<void>;
|
|
1
|
+
export declare function combineComponentCss(buildLocation: string, folder?: string, file?: string): Promise<void>;
|
|
2
2
|
//# sourceMappingURL=combineComponentCss.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"combineComponentCss.d.ts","sourceRoot":"","sources":["../../src/build/combineComponentCss.ts"],"names":[],"mappings":"AAuBA,wBAAsB,mBAAmB,
|
|
1
|
+
{"version":3,"file":"combineComponentCss.d.ts","sourceRoot":"","sources":["../../src/build/combineComponentCss.ts"],"names":[],"mappings":"AAuBA,wBAAsB,mBAAmB,CACrC,aAAa,EAAE,MAAM,EAAE,MAAM,GAAE,MAA2B,EAAE,IAAI,GAAE,MAAyB,GAC5F,OAAO,CAAC,IAAI,CAAC,CAqCf"}
|
|
@@ -13,9 +13,9 @@ function validateCharset(css, file) {
|
|
|
13
13
|
}
|
|
14
14
|
return charsets.length > 0;
|
|
15
15
|
}
|
|
16
|
-
export async function combineComponentCss(buildLocation) {
|
|
17
|
-
const outputDirectory = join(buildLocation,
|
|
18
|
-
const outputFile = join(outputDirectory,
|
|
16
|
+
export async function combineComponentCss(buildLocation, folder = componentCssFolder, file = componentCssFile) {
|
|
17
|
+
const outputDirectory = join(buildLocation, folder);
|
|
18
|
+
const outputFile = join(outputDirectory, file);
|
|
19
19
|
const individualDirectory = resolve(outputDirectory, 'i');
|
|
20
20
|
const manifest = await fsPromises.readFile(outputFile, 'utf8');
|
|
21
21
|
const importPaths = [...manifest.matchAll(componentImportPattern)].map(match => match[1]).filter(importPath => importPath !== undefined);
|
|
@@ -1 +1 @@
|
|
|
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,GAAG,IAAI,CAAA;IAClC,WAAW,EAAE,QAAQ,CAAC,SAAS,GAAG,IAAI,CAAA;IACtC,aAAa,EAAE,aAAa,CAAA;IAC5B,cAAc,EAAE,OAAO,CAAA;CAC1B,CAAA;AAED,MAAM,MAAM,0BAA0B,GAAG;IACrC,OAAO,EAAE,OAAO,CAAA;IAChB,IAAI,CAAC,EAAE,MAAM,CAAA;CAChB,CAAA;AAED,MAAM,MAAM,wBAAwB,GAAG;IACnC,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,qBAAqB,CAAC,EAAE,MAAM,CAAA;IAC9B,eAAe,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,0BAA0B,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,SAAS,CAAA;CAC9F,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,iBAAiB,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,UAAO,EAC1E,OAAO,GAAE,wBAA6B,GACvC,OAAO,CAAC,uBAAuB,CAAC,
|
|
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,GAAG,IAAI,CAAA;IAClC,WAAW,EAAE,QAAQ,CAAC,SAAS,GAAG,IAAI,CAAA;IACtC,aAAa,EAAE,aAAa,CAAA;IAC5B,cAAc,EAAE,OAAO,CAAA;CAC1B,CAAA;AAED,MAAM,MAAM,0BAA0B,GAAG;IACrC,OAAO,EAAE,OAAO,CAAA;IAChB,IAAI,CAAC,EAAE,MAAM,CAAA;CAChB,CAAA;AAED,MAAM,MAAM,wBAAwB,GAAG;IACnC,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,qBAAqB,CAAC,EAAE,MAAM,CAAA;IAC9B,eAAe,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,0BAA0B,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,SAAS,CAAA;CAC9F,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,iBAAiB,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,UAAO,EAC1E,OAAO,GAAE,wBAA6B,GACvC,OAAO,CAAC,uBAAuB,CAAC,CA8YlC"}
|
|
@@ -40,9 +40,9 @@ export async function compileJavascript(projectDir, appConfig, codeLocation, sou
|
|
|
40
40
|
dependencyGraph = {};
|
|
41
41
|
importAliases = {};
|
|
42
42
|
promises = [];
|
|
43
|
-
config = makeBabelUserDevConfig(projectDir, codeLocation, sourceLocation, styleImportBase, buildLocation, buildCodeLocation, dependencyGraphDir, skipPackageCompilationFiles, oldDependencyGraph, dependencyGraph, importAliases, promises);
|
|
43
|
+
config = makeBabelUserDevConfig(projectDir, codeLocation, sourceLocation, styleImportBase, buildLocation, buildCodeLocation, dependencyGraphDir, skipPackageCompilationFiles, oldDependencyGraph, dependencyGraph, importAliases, promises, watch);
|
|
44
44
|
} else {
|
|
45
|
-
config = makeBabelUserProdConfig(projectDir, codeLocation, sourceLocation, styleImportBase);
|
|
45
|
+
config = makeBabelUserProdConfig(projectDir, codeLocation, sourceLocation, styleImportBase, watch);
|
|
46
46
|
}
|
|
47
47
|
config.root = getFrameworkDir();
|
|
48
48
|
// compile with the API
|
|
@@ -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;
|
|
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;AAWtC,OAAO,EAAsB,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAI1E,wBAAsB,cAAc,CAChC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,uBAAuB,EAAE,IAAI,EAAE,IAAI,EAClE,QAAQ,GAAE,YAAwC,GACnD,OAAO,CAAC,eAAe,CAAC,CAsE1B"}
|