@nizza/devkit 0.1.0-alpha.0 → 0.1.0-alpha.10
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/README.md +2 -6
- package/dist/cjs/executors/deploy/helpers.cjs +26 -0
- package/dist/cjs/executors/deploy/helpers.d.cts +4 -0
- package/dist/cjs/executors/deploy/index.cjs +22 -0
- package/dist/cjs/executors/deploy/index.d.cts +11 -0
- package/dist/cjs/executors/environments/helpers.cjs +62 -0
- package/dist/{src/executors/environments/helpers.d.ts → cjs/executors/environments/helpers.d.cts} +9 -5
- package/dist/cjs/executors/environments/index.cjs +60 -0
- package/dist/{src/executors/environments/executor.d.ts → cjs/executors/environments/index.d.cts} +5 -5
- package/dist/cjs/executors/publish/helpers.cjs +51 -0
- package/dist/{src/executors/publish/helpers.d.ts → cjs/executors/publish/helpers.d.cts} +3 -3
- package/dist/cjs/executors/publish/index.cjs +53 -0
- package/dist/cjs/executors/publish/index.d.cts +12 -0
- package/dist/cjs/executors/shared/utils.cjs +67 -0
- package/dist/cjs/executors/shared/utils.d.cts +27 -0
- package/dist/cjs/executors/update-executors-file/helpers.cjs +64 -0
- package/dist/cjs/executors/update-executors-file/helpers.d.cts +17 -0
- package/dist/cjs/executors/update-executors-file/index.cjs +38 -0
- package/dist/{src/executors/update-executors-file/executor.d.ts → cjs/executors/update-executors-file/index.d.cts} +5 -5
- package/dist/cjs/executors/vtex-link/constants.cjs +9 -0
- package/dist/cjs/executors/vtex-link/constants.d.cts +4 -0
- package/dist/cjs/executors/vtex-link/helpers.cjs +206 -0
- package/dist/{src/executors/vtex-link/helpers.d.ts → cjs/executors/vtex-link/helpers.d.cts} +15 -15
- package/dist/cjs/executors/vtex-link/index.cjs +30 -0
- package/dist/cjs/executors/vtex-link/index.d.cts +5 -0
- package/dist/cjs/index-0ce2daf7.d.ts +2 -0
- package/dist/cjs/index-17143e35.d.ts +2 -0
- package/dist/cjs/index-3080371d.d.ts +3 -0
- package/dist/cjs/index-f6330edc.d.ts +2 -0
- package/dist/cjs/index.cjs +71 -0
- package/dist/cjs/index.d.cts +10 -0
- package/dist/cjs/index.d.cts.map +1 -0
- package/dist/cjs/scripts/changeset-pre-mode.cjs +41 -0
- package/dist/cjs/scripts/changeset-pre-mode.d.cts +2 -0
- package/dist/cjs/scripts/index.cjs +7 -0
- package/dist/cjs/scripts/index.d.cts +1 -0
- package/dist/cjs/shared/logger.cjs +98 -0
- package/dist/{src/logger.d.ts → cjs/shared/logger.d.cts} +5 -6
- package/dist/cjs/shared/utils.cjs +64 -0
- package/dist/cjs/shared/utils.d.cts +19 -0
- package/dist/{src/executors/vtex-link/types.d.ts → cjs/types-1282e639.d.ts} +3 -3
- package/dist/cjs/types-7377dcc9.d.ts +4 -0
- package/dist/cjs/types-763439e4.d.ts +14 -0
- package/dist/cjs/vite/config-builder/configs/app.cjs +13 -0
- package/dist/cjs/vite/config-builder/configs/app.d.cts +4 -0
- package/dist/cjs/vite/config-builder/configs/base.cjs +58 -0
- package/dist/cjs/vite/config-builder/configs/base.d.cts +4 -0
- package/dist/cjs/vite/config-builder/configs/index.cjs +36 -0
- package/dist/cjs/vite/config-builder/configs/index.d.cts +7 -0
- package/dist/cjs/vite/config-builder/configs/lib.cjs +57 -0
- package/dist/cjs/vite/config-builder/configs/lib.d.cts +4 -0
- package/dist/cjs/vite/config-builder/configs/script.cjs +46 -0
- package/dist/cjs/vite/config-builder/configs/script.d.cts +4 -0
- package/dist/cjs/vite/config-builder/main.cjs +42 -0
- package/dist/cjs/vite/config-builder/main.d.cts +10 -0
- package/dist/cjs/vite/config-builder/plugins.cjs +93 -0
- package/dist/{src/vite/config-builder/plugins.d.ts → cjs/vite/config-builder/plugins.d.cts} +7 -7
- package/dist/cjs/vite/config-builder/shared/types.cjs +33 -0
- package/dist/{src/vite/config-builder/shared/types.d.ts → cjs/vite/config-builder/shared/types.d.cts} +17 -17
- package/dist/cjs/vite/config-builder/shared/utils/helpers.cjs +115 -0
- package/dist/{src/vite/config-builder/shared/utils/helpers.d.ts → cjs/vite/config-builder/shared/utils/helpers.d.cts} +9 -19
- package/dist/cjs/vite/config-builder/shared/utils/projectConfig.cjs +114 -0
- package/dist/{src/vite/config-builder/shared/utils/projectConfig.d.ts → cjs/vite/config-builder/shared/utils/projectConfig.d.cts} +8 -8
- package/dist/cjs/vite/config-builder/shared/utils/viteCommand.cjs +59 -0
- package/dist/{src/vite/config-builder/shared/utils/viteCommand.d.ts → cjs/vite/config-builder/shared/utils/viteCommand.d.cts} +4 -4
- package/dist/{src/vite/plugins/shadow-dom-inject-css/index.js → cjs/vite/plugins/shadow-dom-inject-css/index.cjs} +4 -19
- package/dist/cjs/vite/plugins/shadow-dom-inject-css/index.d.cts +7 -0
- package/dist/{src/vite/plugins/third-party-css-inject/main.js → cjs/vite/plugins/third-party-css-inject/main.cjs} +13 -14
- package/dist/cjs/vite/plugins/third-party-css-inject/main.d.cts +17 -0
- package/dist/{src/vite/plugins/third-party-css-inject/utils.js → cjs/vite/plugins/third-party-css-inject/utils.cjs} +8 -20
- package/dist/cjs/vite/plugins/third-party-css-inject/utils.d.cts +5 -0
- package/dist/esm/executors/deploy/helpers.d.mts +4 -0
- package/dist/esm/executors/deploy/helpers.mjs +22 -0
- package/dist/esm/executors/deploy/index.d.mts +11 -0
- package/dist/esm/executors/deploy/index.mjs +20 -0
- package/dist/esm/executors/deploy/schema.json +41 -0
- package/dist/esm/executors/environments/helpers.d.mts +25 -0
- package/dist/esm/executors/environments/helpers.mjs +58 -0
- package/dist/esm/executors/environments/index.d.mts +16 -0
- package/dist/esm/executors/environments/index.mjs +58 -0
- package/dist/esm/executors/environments/schema.json +9 -0
- package/dist/esm/executors/publish/helpers.d.mts +19 -0
- package/dist/esm/executors/publish/helpers.mjs +48 -0
- package/dist/esm/executors/publish/index.d.mts +12 -0
- package/dist/esm/executors/publish/index.mjs +51 -0
- package/dist/esm/executors/publish/schema.json +19 -0
- package/dist/esm/executors/shared/utils.d.mts +27 -0
- package/dist/esm/executors/shared/utils.mjs +62 -0
- package/dist/esm/executors/update-executors-file/helpers.d.mts +17 -0
- package/dist/esm/executors/update-executors-file/helpers.mjs +59 -0
- package/dist/esm/executors/update-executors-file/index.d.mts +12 -0
- package/dist/esm/executors/update-executors-file/index.mjs +36 -0
- package/dist/esm/executors/update-executors-file/schema.json +9 -0
- package/dist/esm/executors/vtex-link/constants.d.mts +4 -0
- package/dist/esm/executors/vtex-link/constants.mjs +5 -0
- package/dist/esm/executors/vtex-link/helpers.d.mts +77 -0
- package/dist/esm/executors/vtex-link/helpers.mjs +192 -0
- package/dist/esm/executors/vtex-link/index.d.mts +5 -0
- package/dist/esm/executors/vtex-link/index.mjs +28 -0
- package/dist/esm/executors/vtex-link/schema.json +25 -0
- package/dist/esm/index-0ce2daf7.d.ts +2 -0
- package/dist/esm/index-17143e35.d.ts +2 -0
- package/dist/esm/index-3080371d.d.ts +3 -0
- package/dist/esm/index-f6330edc.d.ts +2 -0
- package/dist/esm/index.d.mts +10 -0
- package/dist/esm/index.d.mts.map +1 -0
- package/dist/esm/index.mjs +14 -0
- package/dist/esm/scripts/changeset-pre-mode.d.mts +2 -0
- package/dist/esm/scripts/changeset-pre-mode.mjs +39 -0
- package/dist/esm/scripts/index.d.mts +1 -0
- package/dist/esm/scripts/index.mjs +1 -0
- package/dist/esm/shared/logger.d.mts +33 -0
- package/dist/{src/logger.js → esm/shared/logger.mjs} +28 -39
- package/dist/esm/shared/utils.d.mts +19 -0
- package/dist/esm/shared/utils.mjs +60 -0
- package/dist/esm/types-1282e639.d.ts +12 -0
- package/dist/esm/types-7377dcc9.d.ts +4 -0
- package/dist/esm/types-763439e4.d.ts +14 -0
- package/dist/esm/vite/config-builder/configs/app.d.mts +4 -0
- package/dist/esm/vite/config-builder/configs/app.mjs +11 -0
- package/dist/esm/vite/config-builder/configs/base.d.mts +4 -0
- package/dist/{src/vite/config-builder/configs/base.js → esm/vite/config-builder/configs/base.mjs} +23 -22
- package/dist/esm/vite/config-builder/configs/index.d.mts +7 -0
- package/dist/esm/vite/config-builder/configs/index.mjs +30 -0
- package/dist/esm/vite/config-builder/configs/lib.d.mts +4 -0
- package/dist/{src/vite/config-builder/configs/lib.js → esm/vite/config-builder/configs/lib.mjs} +16 -18
- package/dist/esm/vite/config-builder/configs/script.d.mts +4 -0
- package/dist/esm/vite/config-builder/configs/script.mjs +44 -0
- package/dist/esm/vite/config-builder/main.d.mts +10 -0
- package/dist/esm/vite/config-builder/main.mjs +40 -0
- package/dist/esm/vite/config-builder/plugins.d.mts +30 -0
- package/dist/esm/vite/config-builder/plugins.mjs +87 -0
- package/dist/esm/vite/config-builder/shared/types.d.mts +155 -0
- package/dist/{src/vite/config-builder/shared/types.js → esm/vite/config-builder/shared/types.mjs} +2 -27
- package/dist/esm/vite/config-builder/shared/utils/helpers.d.mts +71 -0
- package/dist/esm/vite/config-builder/shared/utils/helpers.mjs +90 -0
- package/dist/esm/vite/config-builder/shared/utils/projectConfig.d.mts +60 -0
- package/dist/esm/vite/config-builder/shared/utils/projectConfig.mjs +109 -0
- package/dist/esm/vite/config-builder/shared/utils/viteCommand.d.mts +24 -0
- package/dist/esm/vite/config-builder/shared/utils/viteCommand.mjs +56 -0
- package/dist/esm/vite/plugins/shadow-dom-inject-css/index.d.mts +7 -0
- package/dist/esm/vite/plugins/shadow-dom-inject-css/index.mjs +27 -0
- package/dist/esm/vite/plugins/third-party-css-inject/main.d.mts +17 -0
- package/dist/esm/vite/plugins/third-party-css-inject/main.mjs +45 -0
- package/dist/esm/vite/plugins/third-party-css-inject/utils.d.mts +5 -0
- package/dist/esm/vite/plugins/third-party-css-inject/utils.mjs +97 -0
- package/dist/executors.json +29 -0
- package/executors.json +29 -0
- package/package.json +52 -6
- package/dist/package.json +0 -13
- package/dist/src/executors/deploy/executor.d.ts +0 -11
- package/dist/src/executors/deploy/executor.d.ts.map +0 -1
- package/dist/src/executors/deploy/executor.js +0 -27
- package/dist/src/executors/deploy/helpers.d.ts +0 -4
- package/dist/src/executors/deploy/helpers.d.ts.map +0 -1
- package/dist/src/executors/deploy/helpers.js +0 -40
- package/dist/src/executors/environments/executor.d.ts.map +0 -1
- package/dist/src/executors/environments/executor.js +0 -59
- package/dist/src/executors/environments/helpers.d.ts.map +0 -1
- package/dist/src/executors/environments/helpers.js +0 -63
- package/dist/src/executors/publish/executor.d.ts +0 -12
- package/dist/src/executors/publish/executor.d.ts.map +0 -1
- package/dist/src/executors/publish/executor.js +0 -57
- package/dist/src/executors/publish/helpers.d.ts.map +0 -1
- package/dist/src/executors/publish/helpers.js +0 -52
- package/dist/src/executors/shared/index.d.ts +0 -3
- package/dist/src/executors/shared/index.d.ts.map +0 -1
- package/dist/src/executors/shared/index.js +0 -7
- package/dist/src/executors/shared/types.d.ts +0 -4
- package/dist/src/executors/shared/types.d.ts.map +0 -1
- package/dist/src/executors/shared/types.js +0 -4
- package/dist/src/executors/shared/utils.d.ts +0 -34
- package/dist/src/executors/shared/utils.d.ts.map +0 -1
- package/dist/src/executors/shared/utils.js +0 -74
- package/dist/src/executors/update-executors-file/executor.d.ts.map +0 -1
- package/dist/src/executors/update-executors-file/executor.js +0 -46
- package/dist/src/executors/update-executors-file/helpers.d.ts +0 -24
- package/dist/src/executors/update-executors-file/helpers.d.ts.map +0 -1
- package/dist/src/executors/update-executors-file/helpers.js +0 -70
- package/dist/src/executors/update-executors-file/types.d.ts +0 -14
- package/dist/src/executors/update-executors-file/types.d.ts.map +0 -1
- package/dist/src/executors/update-executors-file/types.js +0 -4
- package/dist/src/executors/vtex-link/constants.d.ts +0 -4
- package/dist/src/executors/vtex-link/constants.d.ts.map +0 -1
- package/dist/src/executors/vtex-link/constants.js +0 -24
- package/dist/src/executors/vtex-link/executor.d.ts +0 -5
- package/dist/src/executors/vtex-link/executor.d.ts.map +0 -1
- package/dist/src/executors/vtex-link/executor.js +0 -35
- package/dist/src/executors/vtex-link/helpers.d.ts.map +0 -1
- package/dist/src/executors/vtex-link/helpers.js +0 -187
- package/dist/src/executors/vtex-link/types.d.ts.map +0 -1
- package/dist/src/executors/vtex-link/types.js +0 -4
- package/dist/src/index.d.ts +0 -2
- package/dist/src/index.d.ts.map +0 -1
- package/dist/src/index.js +0 -6
- package/dist/src/logger.d.ts.map +0 -1
- package/dist/src/scripts/changeset-pre-mode.d.ts +0 -2
- package/dist/src/scripts/changeset-pre-mode.d.ts.map +0 -1
- package/dist/src/scripts/changeset-pre-mode.js +0 -41
- package/dist/src/shared/index.d.ts +0 -2
- package/dist/src/shared/index.d.ts.map +0 -1
- package/dist/src/shared/index.js +0 -6
- package/dist/src/shared/utils.d.ts +0 -11
- package/dist/src/shared/utils.d.ts.map +0 -1
- package/dist/src/shared/utils.js +0 -22
- package/dist/src/vite/config-builder/configs/app.d.ts +0 -4
- package/dist/src/vite/config-builder/configs/app.d.ts.map +0 -1
- package/dist/src/vite/config-builder/configs/app.js +0 -19
- package/dist/src/vite/config-builder/configs/base.d.ts +0 -4
- package/dist/src/vite/config-builder/configs/base.d.ts.map +0 -1
- package/dist/src/vite/config-builder/configs/index.d.ts +0 -7
- package/dist/src/vite/config-builder/configs/index.d.ts.map +0 -1
- package/dist/src/vite/config-builder/configs/index.js +0 -28
- package/dist/src/vite/config-builder/configs/lib.d.ts +0 -4
- package/dist/src/vite/config-builder/configs/lib.d.ts.map +0 -1
- package/dist/src/vite/config-builder/configs/script.d.ts +0 -4
- package/dist/src/vite/config-builder/configs/script.d.ts.map +0 -1
- package/dist/src/vite/config-builder/configs/script.js +0 -42
- package/dist/src/vite/config-builder/index.d.ts +0 -3
- package/dist/src/vite/config-builder/index.d.ts.map +0 -1
- package/dist/src/vite/config-builder/index.js +0 -7
- package/dist/src/vite/config-builder/main.d.ts +0 -10
- package/dist/src/vite/config-builder/main.d.ts.map +0 -1
- package/dist/src/vite/config-builder/main.js +0 -37
- package/dist/src/vite/config-builder/plugins.d.ts.map +0 -1
- package/dist/src/vite/config-builder/plugins.js +0 -88
- package/dist/src/vite/config-builder/shared/index.d.ts +0 -3
- package/dist/src/vite/config-builder/shared/index.d.ts.map +0 -1
- package/dist/src/vite/config-builder/shared/index.js +0 -7
- package/dist/src/vite/config-builder/shared/types.d.ts.map +0 -1
- package/dist/src/vite/config-builder/shared/utils/helpers.d.ts.map +0 -1
- package/dist/src/vite/config-builder/shared/utils/helpers.js +0 -61
- package/dist/src/vite/config-builder/shared/utils/index.d.ts +0 -4
- package/dist/src/vite/config-builder/shared/utils/index.d.ts.map +0 -1
- package/dist/src/vite/config-builder/shared/utils/index.js +0 -8
- package/dist/src/vite/config-builder/shared/utils/projectConfig.d.ts.map +0 -1
- package/dist/src/vite/config-builder/shared/utils/projectConfig.js +0 -85
- package/dist/src/vite/config-builder/shared/utils/viteCommand.d.ts.map +0 -1
- package/dist/src/vite/config-builder/shared/utils/viteCommand.js +0 -54
- package/dist/src/vite/index.d.ts +0 -3
- package/dist/src/vite/index.d.ts.map +0 -1
- package/dist/src/vite/index.js +0 -7
- package/dist/src/vite/plugins/index.d.ts +0 -3
- package/dist/src/vite/plugins/index.d.ts.map +0 -1
- package/dist/src/vite/plugins/index.js +0 -7
- package/dist/src/vite/plugins/shadow-dom-inject-css/index.d.ts +0 -8
- package/dist/src/vite/plugins/shadow-dom-inject-css/index.d.ts.map +0 -1
- package/dist/src/vite/plugins/third-party-css-inject/index.d.ts +0 -4
- package/dist/src/vite/plugins/third-party-css-inject/index.d.ts.map +0 -1
- package/dist/src/vite/plugins/third-party-css-inject/index.js +0 -13
- package/dist/src/vite/plugins/third-party-css-inject/main.d.ts +0 -17
- package/dist/src/vite/plugins/third-party-css-inject/main.d.ts.map +0 -1
- package/dist/src/vite/plugins/third-party-css-inject/utils.d.ts +0 -5
- package/dist/src/vite/plugins/third-party-css-inject/utils.d.ts.map +0 -1
- /package/dist/{src → cjs}/executors/deploy/schema.json +0 -0
- /package/dist/{src → cjs}/executors/environments/schema.json +0 -0
- /package/dist/{src → cjs}/executors/publish/schema.json +0 -0
- /package/dist/{src → cjs}/executors/update-executors-file/schema.json +0 -0
- /package/dist/{src → cjs}/executors/vtex-link/schema.json +0 -0
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { removeLinkStyleSheets, buildCSSInjectionCode } from './utils.mjs';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Inject the CSS compiled with JS.
|
|
5
|
+
*
|
|
6
|
+
* @return {Plugin}
|
|
7
|
+
*/ function thirdPartyCssInjectPlugin({ topExecutionPriority, execute } = {
|
|
8
|
+
topExecutionPriority: true,
|
|
9
|
+
execute: []
|
|
10
|
+
}) {
|
|
11
|
+
//Globally so we can add it to legacy and non-legacy bundle.
|
|
12
|
+
let config;
|
|
13
|
+
return {
|
|
14
|
+
apply: 'build',
|
|
15
|
+
enforce: 'post',
|
|
16
|
+
name: 'nizza:third-party-css-inject',
|
|
17
|
+
configResolved (_config) {
|
|
18
|
+
config = _config;
|
|
19
|
+
},
|
|
20
|
+
async generateBundle (opts, bundle) {
|
|
21
|
+
if (config.build.ssr) {
|
|
22
|
+
return;
|
|
23
|
+
}
|
|
24
|
+
const htmlFiles = Object.keys(bundle).filter((i)=>i.endsWith('.html'));
|
|
25
|
+
const cssAssets = Object.keys(bundle).filter((i)=>bundle[i]?.type == 'asset' && bundle[i]?.fileName.endsWith('.css'));
|
|
26
|
+
const jsAssets = Object.keys(bundle).filter((i)=>bundle[i]?.type == 'chunk' && bundle[i]?.fileName.match(/.[cm]?js$/) != null && !bundle[i]?.fileName.includes('polyfill'));
|
|
27
|
+
for (const name of htmlFiles){
|
|
28
|
+
const htmlChunk = bundle[name];
|
|
29
|
+
let replacedHtml = htmlChunk.source;
|
|
30
|
+
cssAssets.forEach((cssName)=>{
|
|
31
|
+
replacedHtml = removeLinkStyleSheets(replacedHtml, cssName);
|
|
32
|
+
htmlChunk.source = replacedHtml;
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
const jsAsset = bundle[jsAssets[0]];
|
|
36
|
+
const cssInjectionCode = await buildCSSInjectionCode(execute);
|
|
37
|
+
const appCode = jsAsset.code;
|
|
38
|
+
jsAsset.code = topExecutionPriority ? '' : appCode;
|
|
39
|
+
jsAsset.code += cssInjectionCode ? cssInjectionCode.code : '';
|
|
40
|
+
jsAsset.code += !topExecutionPriority ? '' : appCode;
|
|
41
|
+
}
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
export { thirdPartyCssInjectPlugin };
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { OutputChunk } from 'rollup';
|
|
2
|
+
import { Execute } from "../../../index-3080371d.js";
|
|
3
|
+
declare function buildCSSInjectionCode(execute?: Execute[]): Promise<OutputChunk | null | any>;
|
|
4
|
+
declare function removeLinkStyleSheets(html: string, cssFileName: string): string;
|
|
5
|
+
export { buildCSSInjectionCode, removeLinkStyleSheets };
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import { build } from 'vite';
|
|
2
|
+
|
|
3
|
+
const cssInjectedByJsId = '\0vite/all-css';
|
|
4
|
+
const waitForElement = (selector, observerElementName = 'body')=>{
|
|
5
|
+
const getElement = (selector)=>document.querySelector(selector);
|
|
6
|
+
return new Promise((resolve)=>{
|
|
7
|
+
if (getElement(selector)) return resolve(getElement(selector));
|
|
8
|
+
const observer = new MutationObserver(()=>{
|
|
9
|
+
if (getElement(selector)) {
|
|
10
|
+
resolve(getElement(selector));
|
|
11
|
+
observer.disconnect();
|
|
12
|
+
}
|
|
13
|
+
});
|
|
14
|
+
let observerElement = document.body;
|
|
15
|
+
switch(observerElementName){
|
|
16
|
+
case 'body':
|
|
17
|
+
observerElement = document.body;
|
|
18
|
+
break;
|
|
19
|
+
case 'head':
|
|
20
|
+
observerElement = document.head;
|
|
21
|
+
break;
|
|
22
|
+
default:
|
|
23
|
+
observerElement = document.body;
|
|
24
|
+
break;
|
|
25
|
+
}
|
|
26
|
+
observer.observe(observerElement, {
|
|
27
|
+
childList: true,
|
|
28
|
+
subtree: true
|
|
29
|
+
});
|
|
30
|
+
});
|
|
31
|
+
};
|
|
32
|
+
async function buildCSSInjectionCode(execute) {
|
|
33
|
+
const res = await build({
|
|
34
|
+
root: '',
|
|
35
|
+
configFile: false,
|
|
36
|
+
logLevel: 'error',
|
|
37
|
+
plugins: [
|
|
38
|
+
injectionCSSCodePlugin(execute)
|
|
39
|
+
],
|
|
40
|
+
build: {
|
|
41
|
+
write: false,
|
|
42
|
+
target: 'es2015',
|
|
43
|
+
minify: 'esbuild',
|
|
44
|
+
assetsDir: '',
|
|
45
|
+
rollupOptions: {
|
|
46
|
+
input: {
|
|
47
|
+
'all-css': cssInjectedByJsId
|
|
48
|
+
},
|
|
49
|
+
output: {
|
|
50
|
+
format: 'iife',
|
|
51
|
+
manualChunks: undefined
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
});
|
|
56
|
+
const _cssChunk = Array.isArray(res) ? res[0] : res;
|
|
57
|
+
if (!('output' in _cssChunk)) return null;
|
|
58
|
+
return _cssChunk.output[0];
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* @param {string} cssToInject
|
|
62
|
+
* @param {string|null} styleId
|
|
63
|
+
* @return {Plugin}
|
|
64
|
+
*/ function injectionCSSCodePlugin(execute) {
|
|
65
|
+
return {
|
|
66
|
+
name: 'vite:third-party-css-inject',
|
|
67
|
+
// @ts-ignore
|
|
68
|
+
resolveId (id) {
|
|
69
|
+
if (id == cssInjectedByJsId) {
|
|
70
|
+
return id;
|
|
71
|
+
}
|
|
72
|
+
},
|
|
73
|
+
// @ts-ignore
|
|
74
|
+
load (id) {
|
|
75
|
+
if (id == cssInjectedByJsId) {
|
|
76
|
+
let executeJs = [];
|
|
77
|
+
if (execute?.length) {
|
|
78
|
+
executeJs = execute.map((executeData, index)=>{
|
|
79
|
+
return `waitForElement('${executeData.observer}', '${executeData.listen}').then((elm)=>{
|
|
80
|
+
const extra${index}=${executeData.function};extra${index}(elm)
|
|
81
|
+
});`;
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
return `try{if(typeof document != 'undefined'){
|
|
85
|
+
const waitForElement=${waitForElement.toString()};
|
|
86
|
+
${executeJs.join(' ')}
|
|
87
|
+
}}catch(e){console.error('vite-third-party-css-inject-plugin', e);}`;
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
};
|
|
91
|
+
}
|
|
92
|
+
function removeLinkStyleSheets(html, cssFileName) {
|
|
93
|
+
const removeCSS = new RegExp(`<link rel=".*"[^>]*?href=".*/?${cssFileName}"[^>]*?>`);
|
|
94
|
+
return html.replace(removeCSS, '');
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
export { buildCSSInjectionCode, removeLinkStyleSheets };
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
{
|
|
2
|
+
"executors": {
|
|
3
|
+
"environments": {
|
|
4
|
+
"implementation": "./dist/cjs/executors/environments/index.cjs",
|
|
5
|
+
"schema": "./dist/cjs/executors/environments/schema.json",
|
|
6
|
+
"description": "Configure project with custom environments"
|
|
7
|
+
},
|
|
8
|
+
"vtex-link": {
|
|
9
|
+
"implementation": "./dist/cjs/executors/vtex-link/index.cjs",
|
|
10
|
+
"schema": "./dist/cjs/executors/vtex-link/schema.json",
|
|
11
|
+
"description": "Links a package to a VTEX project."
|
|
12
|
+
},
|
|
13
|
+
"publish": {
|
|
14
|
+
"implementation": "./dist/cjs/executors/publish/index.cjs",
|
|
15
|
+
"schema": "./dist/cjs/executors/publish/schema.json",
|
|
16
|
+
"description": "publish executor"
|
|
17
|
+
},
|
|
18
|
+
"update-executors-file": {
|
|
19
|
+
"implementation": "./dist/cjs/executors/update-executors-file/index.cjs",
|
|
20
|
+
"schema": "./dist/cjs/executors/update-executors-file/schema.json",
|
|
21
|
+
"description": "update-executors-file executor"
|
|
22
|
+
},
|
|
23
|
+
"deploy": {
|
|
24
|
+
"implementation": "./dist/cjs/executors/deploy/index.cjs",
|
|
25
|
+
"schema": "./dist/cjs/executors/deploy/schema.json",
|
|
26
|
+
"description": "deploy executor"
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
}
|
package/executors.json
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
{
|
|
2
|
+
"executors": {
|
|
3
|
+
"environments": {
|
|
4
|
+
"implementation": "./dist/cjs/executors/environments/index.cjs",
|
|
5
|
+
"schema": "./dist/cjs/executors/environments/schema.json",
|
|
6
|
+
"description": "Configure project with custom environments"
|
|
7
|
+
},
|
|
8
|
+
"vtex-link": {
|
|
9
|
+
"implementation": "./dist/cjs/executors/vtex-link/index.cjs",
|
|
10
|
+
"schema": "./dist/cjs/executors/vtex-link/schema.json",
|
|
11
|
+
"description": "Links a package to a VTEX project."
|
|
12
|
+
},
|
|
13
|
+
"publish": {
|
|
14
|
+
"implementation": "./dist/cjs/executors/publish/index.cjs",
|
|
15
|
+
"schema": "./dist/cjs/executors/publish/schema.json",
|
|
16
|
+
"description": "publish executor"
|
|
17
|
+
},
|
|
18
|
+
"update-executors-file": {
|
|
19
|
+
"implementation": "./dist/cjs/executors/update-executors-file/index.cjs",
|
|
20
|
+
"schema": "./dist/cjs/executors/update-executors-file/schema.json",
|
|
21
|
+
"description": "update-executors-file executor"
|
|
22
|
+
},
|
|
23
|
+
"deploy": {
|
|
24
|
+
"implementation": "./dist/cjs/executors/deploy/index.cjs",
|
|
25
|
+
"schema": "./dist/cjs/executors/deploy/schema.json",
|
|
26
|
+
"description": "deploy executor"
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
}
|
package/package.json
CHANGED
|
@@ -1,12 +1,58 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nizza/devkit",
|
|
3
|
-
"version": "0.1.0-alpha.
|
|
3
|
+
"version": "0.1.0-alpha.10",
|
|
4
|
+
"type": "module",
|
|
5
|
+
"main": "dist/cjs/index.cjs",
|
|
6
|
+
"module": "dist/esm/index.mjs",
|
|
4
7
|
"source": "src/index.ts",
|
|
5
|
-
"
|
|
6
|
-
"
|
|
8
|
+
"types": "dist/esm/index.d.ts",
|
|
9
|
+
"exports": {
|
|
10
|
+
"./package.json": "./package.json",
|
|
11
|
+
".": {
|
|
12
|
+
"import": "./dist/esm/index.mjs",
|
|
13
|
+
"require": "./dist/cjs/index.cjs"
|
|
14
|
+
},
|
|
15
|
+
"./import": {
|
|
16
|
+
"types": "./dist/esm/index.d.mts",
|
|
17
|
+
"default": "./dist/esm/index.mjs"
|
|
18
|
+
},
|
|
19
|
+
"./require": {
|
|
20
|
+
"types": "./dist/cjs/index.d.cts",
|
|
21
|
+
"default": "./dist/cjs/index.cjs"
|
|
22
|
+
}
|
|
23
|
+
},
|
|
7
24
|
"files": [
|
|
8
|
-
"dist"
|
|
25
|
+
"dist",
|
|
26
|
+
"executors.json"
|
|
9
27
|
],
|
|
10
|
-
"
|
|
11
|
-
"
|
|
28
|
+
"executors": "./executors.json",
|
|
29
|
+
"dependencies": {
|
|
30
|
+
"chalk": "^4",
|
|
31
|
+
"minimatch": "^9.0.3",
|
|
32
|
+
"mri": "^1.2.0",
|
|
33
|
+
"ramda": "^0.29.1",
|
|
34
|
+
"semver": "^7.5.4"
|
|
35
|
+
},
|
|
36
|
+
"devDependencies": {
|
|
37
|
+
"@rollup/plugin-commonjs": "^25.0.7",
|
|
38
|
+
"@rollup/plugin-json": "^6.0.1",
|
|
39
|
+
"@rollup/plugin-node-resolve": "^15.2.3",
|
|
40
|
+
"@types/semver": "^7.5.0",
|
|
41
|
+
"rollup": "^4.2.0",
|
|
42
|
+
"rollup-plugin-copy": "^3.5.0",
|
|
43
|
+
"rollup-plugin-delete": "^2.0.0",
|
|
44
|
+
"rollup-plugin-swc3": "^0.10.3",
|
|
45
|
+
"rollup-plugin-ts": "^3.4.5"
|
|
46
|
+
},
|
|
47
|
+
"peerDependencies": {
|
|
48
|
+
"@nx/devkit": "17.0.2",
|
|
49
|
+
"@originjs/vite-plugin-commonjs": "^1.0.3",
|
|
50
|
+
"@rollup/plugin-graphql": "^2.0.4",
|
|
51
|
+
"@vitejs/plugin-react-swc": "^3.4.1",
|
|
52
|
+
"rollup-plugin-visualizer": "^5.9.2",
|
|
53
|
+
"vite": "^4.5.0",
|
|
54
|
+
"vite-plugin-css-injected-by-js": "^3.3.0",
|
|
55
|
+
"vite-plugin-dts": "^3.6.3",
|
|
56
|
+
"vite-tsconfig-paths": "^4.2.1"
|
|
57
|
+
}
|
|
12
58
|
}
|
package/dist/package.json
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "@nizza/devkit",
|
|
3
|
-
"version": "0.1.0-alpha.0",
|
|
4
|
-
"source": "src/index.ts",
|
|
5
|
-
"main": "./src/index.js",
|
|
6
|
-
"types": "dist/index.d.ts",
|
|
7
|
-
"files": [
|
|
8
|
-
"dist"
|
|
9
|
-
],
|
|
10
|
-
"dependencies": {},
|
|
11
|
-
"executors": "./executors.json",
|
|
12
|
-
"type": "commonjs"
|
|
13
|
-
}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { type ExecutorContext } from '@nx/devkit';
|
|
2
|
-
import { type ExecutorResponse } from '../shared';
|
|
3
|
-
export interface ExecutorOptions {
|
|
4
|
-
s3BucketPath: string;
|
|
5
|
-
cloudFrontDistributionId: string;
|
|
6
|
-
cloudFrontInvalidationPaths: string[];
|
|
7
|
-
buildTarget: string;
|
|
8
|
-
skipBuild?: boolean;
|
|
9
|
-
}
|
|
10
|
-
export default function deployExecutor(opts: ExecutorOptions, ctx: ExecutorContext): Promise<ExecutorResponse>;
|
|
11
|
-
//# sourceMappingURL=executor.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../../../src/executors/deploy/executor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,EAKL,KAAK,gBAAgB,EACtB,MAAM,WAAW,CAAC;AAOnB,MAAM,WAAW,eAAe;IAC9B,YAAY,EAAE,MAAM,CAAC;IACrB,wBAAwB,EAAE,MAAM,CAAC;IACjC,2BAA2B,EAAE,MAAM,EAAE,CAAC;IACtC,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,wBAA8B,cAAc,CAC1C,IAAI,EAAE,eAAe,EACrB,GAAG,EAAE,eAAe,GACnB,OAAO,CAAC,gBAAgB,CAAC,CAyB3B"}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
Object.defineProperty(exports, "default", {
|
|
6
|
-
enumerable: true,
|
|
7
|
-
get: function() {
|
|
8
|
-
return deployExecutor;
|
|
9
|
-
}
|
|
10
|
-
});
|
|
11
|
-
const _shared = require("../shared");
|
|
12
|
-
const _helpers = require("./helpers");
|
|
13
|
-
async function deployExecutor(opts, ctx) {
|
|
14
|
-
try {
|
|
15
|
-
const { root, name } = (0, _shared.getProjectConfig)(ctx);
|
|
16
|
-
const { s3BucketPath, cloudFrontDistributionId, cloudFrontInvalidationPaths, skipBuild = false } = opts;
|
|
17
|
-
const buildTarget = `${name}:${opts.buildTarget}`;
|
|
18
|
-
if (!skipBuild) await (0, _shared.runCommand)(`nx run ${buildTarget}`);
|
|
19
|
-
await (0, _helpers.cleanS3Bucket)(s3BucketPath);
|
|
20
|
-
await (0, _helpers.copyAssetsToS3)(s3BucketPath, root);
|
|
21
|
-
await (0, _helpers.createCloudFrontInvalidation)(cloudFrontDistributionId, cloudFrontInvalidationPaths);
|
|
22
|
-
const now = new Date().toLocaleString();
|
|
23
|
-
return (0, _shared.ok)(`✨ Build completed successfully on ${now}`);
|
|
24
|
-
} catch (error) {
|
|
25
|
-
return (0, _shared.err)(error, '❌ Error when executing deploy command');
|
|
26
|
-
}
|
|
27
|
-
}
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
export declare function cleanS3Bucket(s3BucketPath: string): Promise<void>;
|
|
2
|
-
export declare function copyAssetsToS3(s3BucketPath: string, projectRoot: string): Promise<void>;
|
|
3
|
-
export declare function createCloudFrontInvalidation(distributionId: string, invalidationPaths: string[]): Promise<void>;
|
|
4
|
-
//# sourceMappingURL=helpers.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../../src/executors/deploy/helpers.ts"],"names":[],"mappings":"AAGA,wBAAsB,aAAa,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAIvE;AAED,wBAAsB,cAAc,CAClC,YAAY,EAAE,MAAM,EACpB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,IAAI,CAAC,CAIf;AAED,wBAAsB,4BAA4B,CAChD,cAAc,EAAE,MAAM,EACtB,iBAAiB,EAAE,MAAM,EAAE,GAC1B,OAAO,CAAC,IAAI,CAAC,CAOf"}
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
function _export(target, all) {
|
|
6
|
-
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
-
enumerable: true,
|
|
8
|
-
get: all[name]
|
|
9
|
-
});
|
|
10
|
-
}
|
|
11
|
-
_export(exports, {
|
|
12
|
-
cleanS3Bucket: function() {
|
|
13
|
-
return cleanS3Bucket;
|
|
14
|
-
},
|
|
15
|
-
copyAssetsToS3: function() {
|
|
16
|
-
return copyAssetsToS3;
|
|
17
|
-
},
|
|
18
|
-
createCloudFrontInvalidation: function() {
|
|
19
|
-
return createCloudFrontInvalidation;
|
|
20
|
-
}
|
|
21
|
-
});
|
|
22
|
-
const _devkit = require("@nx/devkit");
|
|
23
|
-
const _shared = require("../shared");
|
|
24
|
-
async function cleanS3Bucket(s3BucketPath) {
|
|
25
|
-
_devkit.logger.info('🧹 Cleaning S3 bucket...');
|
|
26
|
-
await (0, _shared.runCommand)(`aws s3 rm ${s3BucketPath} --recursive`);
|
|
27
|
-
_devkit.logger.info('✅ S3 bucket cleared.');
|
|
28
|
-
}
|
|
29
|
-
async function copyAssetsToS3(s3BucketPath, projectRoot) {
|
|
30
|
-
_devkit.logger.info('📦 Copying assets to S3 bucket...');
|
|
31
|
-
await (0, _shared.runCommand)(`aws s3 cp ${projectRoot}/dist ${s3BucketPath} --recursive`);
|
|
32
|
-
_devkit.logger.info('🚚 Assets files copied.');
|
|
33
|
-
}
|
|
34
|
-
async function createCloudFrontInvalidation(distributionId, invalidationPaths) {
|
|
35
|
-
const pathsString = invalidationPaths.map((path)=>`"${path}"`).join(' ');
|
|
36
|
-
const command = `aws cloudfront create-invalidation --distribution-id ${distributionId} --paths ${pathsString}`;
|
|
37
|
-
_devkit.logger.info('🔃 Creating invalidation for CloudFront...');
|
|
38
|
-
await (0, _shared.runCommand)(command);
|
|
39
|
-
_devkit.logger.info('🔄 CloudFront invalidation created.');
|
|
40
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../../../src/executors/environments/executor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAElD,OAAO,EAA6B,KAAK,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAqB7E,MAAM,WAAW,eAAe;CAAG;AAEnC;;;;;;;;;GASG;AACH,wBAA8B,WAAW,CACvC,KAAK,EAAE,eAAe,EACtB,GAAG,EAAE,eAAe,GACnB,OAAO,CAAC,gBAAgB,CAAC,CAiB3B"}
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
Object.defineProperty(exports, /**
|
|
6
|
-
* The executor function to create environment files.
|
|
7
|
-
* Ensures that the directory for the environment files exists and creates the files
|
|
8
|
-
* if they do not exist already. Files created are 'environment.ts', 'environment.prod.ts',
|
|
9
|
-
* and 'environment.staging.ts'.
|
|
10
|
-
*
|
|
11
|
-
* @param {ExecutorOptions} _opts - Executor options, currently not used but provided for future extensibility.
|
|
12
|
-
* @param {ExecutorContext} ctx - The executor context, providing access to the project configuration.
|
|
13
|
-
* @returns {Promise<ExecutorResponse>} The result object with a success or error status.
|
|
14
|
-
*/ "default", {
|
|
15
|
-
enumerable: true,
|
|
16
|
-
get: function() {
|
|
17
|
-
return runExecutor;
|
|
18
|
-
}
|
|
19
|
-
});
|
|
20
|
-
const _path = require("path");
|
|
21
|
-
const _shared = require("../shared");
|
|
22
|
-
const _helpers = require("./helpers");
|
|
23
|
-
const ENV_DIR = 'src/environments';
|
|
24
|
-
const ENV_DEV_FILE = 'environment.ts';
|
|
25
|
-
const ENV_LOCAL_FILE = 'environment.local.ts';
|
|
26
|
-
const ENV_PROD_FILE = 'environment.prod.ts';
|
|
27
|
-
const ENV_STAGING_FILE = 'environment.staging.ts';
|
|
28
|
-
const environmentFiles = [
|
|
29
|
-
ENV_DEV_FILE,
|
|
30
|
-
ENV_LOCAL_FILE,
|
|
31
|
-
ENV_PROD_FILE,
|
|
32
|
-
ENV_STAGING_FILE
|
|
33
|
-
];
|
|
34
|
-
async function runExecutor(_opts, ctx) {
|
|
35
|
-
try {
|
|
36
|
-
const projectConfig = (0, _shared.getProjectConfig)(ctx);
|
|
37
|
-
const environmentsDir = (0, _path.join)(projectConfig.root, ENV_DIR);
|
|
38
|
-
await (0, _helpers.ensureDirectoryExists)(environmentsDir);
|
|
39
|
-
for (const envFileName of environmentFiles){
|
|
40
|
-
const { key, path } = getEnvPath(envFileName);
|
|
41
|
-
const content = await (0, _helpers.createEnvironmentFileContent)(path);
|
|
42
|
-
await (0, _helpers.writeFilesIfNotExist)(environmentsDir, {
|
|
43
|
-
[key]: content
|
|
44
|
-
});
|
|
45
|
-
}
|
|
46
|
-
return (0, _shared.ok)();
|
|
47
|
-
} catch (error) {
|
|
48
|
-
return (0, _shared.err)(error, `Failed to create environment files:`);
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
function getEnvPath(fileName) {
|
|
52
|
-
const isLocal = fileName.includes('.local');
|
|
53
|
-
const baseFileName = isLocal ? ENV_DEV_FILE : fileName;
|
|
54
|
-
const key = isLocal ? ENV_LOCAL_FILE : fileName;
|
|
55
|
-
return {
|
|
56
|
-
key,
|
|
57
|
-
path: `@nizza/core/envs/${baseFileName.replace('.ts', '')}`
|
|
58
|
-
};
|
|
59
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../../src/executors/environments/helpers.ts"],"names":[],"mappings":"AAMA;;;;;GAKG;AACH,wBAAsB,4BAA4B,CAChD,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,MAAM,CAAC,CAYjB;AAED;;;;GAIG;AACH,wBAAsB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAStE;AAED;;;;;GAKG;AACH,wBAAsB,oBAAoB,CACxC,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC5B,OAAO,CAAC,IAAI,CAAC,CAcf"}
|
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
function _export(target, all) {
|
|
6
|
-
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
-
enumerable: true,
|
|
8
|
-
get: all[name]
|
|
9
|
-
});
|
|
10
|
-
}
|
|
11
|
-
_export(exports, {
|
|
12
|
-
createEnvironmentFileContent: function() {
|
|
13
|
-
return createEnvironmentFileContent;
|
|
14
|
-
},
|
|
15
|
-
ensureDirectoryExists: function() {
|
|
16
|
-
return ensureDirectoryExists;
|
|
17
|
-
},
|
|
18
|
-
writeFilesIfNotExist: function() {
|
|
19
|
-
return writeFilesIfNotExist;
|
|
20
|
-
}
|
|
21
|
-
});
|
|
22
|
-
const _fs = require("fs");
|
|
23
|
-
const _path = require("path");
|
|
24
|
-
const _devkit = require("@nx/devkit");
|
|
25
|
-
const { mkdir, writeFile, access } = _fs.promises;
|
|
26
|
-
async function createEnvironmentFileContent(coreEnvPath) {
|
|
27
|
-
return `
|
|
28
|
-
import { Environment } from '@nizza/core';
|
|
29
|
-
import coreEnvs from '${coreEnvPath}';
|
|
30
|
-
|
|
31
|
-
const config = {
|
|
32
|
-
...coreEnvs,
|
|
33
|
-
};
|
|
34
|
-
|
|
35
|
-
export const environment: Environment<typeof config> = config;
|
|
36
|
-
export default environment;
|
|
37
|
-
`;
|
|
38
|
-
}
|
|
39
|
-
async function ensureDirectoryExists(dir) {
|
|
40
|
-
try {
|
|
41
|
-
await access(dir);
|
|
42
|
-
_devkit.logger.info('✅ Directory exists.');
|
|
43
|
-
} catch {
|
|
44
|
-
_devkit.logger.info('📁 Directory does not exist. Creating...');
|
|
45
|
-
await mkdir(dir, {
|
|
46
|
-
recursive: true
|
|
47
|
-
});
|
|
48
|
-
_devkit.logger.info('📁 Directory created.');
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
async function writeFilesIfNotExist(basePath, files) {
|
|
52
|
-
await Promise.all(Object.entries(files).map(async ([filename, content])=>{
|
|
53
|
-
const filePath = (0, _path.join)(basePath, filename);
|
|
54
|
-
try {
|
|
55
|
-
await access(filePath);
|
|
56
|
-
_devkit.logger.info(`✅ The file "${filename}" already exists.`);
|
|
57
|
-
} catch {
|
|
58
|
-
_devkit.logger.warn(`📝 The file "${filename}" does not exist. Creating...`);
|
|
59
|
-
await writeFile(filePath, content);
|
|
60
|
-
_devkit.logger.info(`🎉 The file "${filename}" has been created.`);
|
|
61
|
-
}
|
|
62
|
-
}));
|
|
63
|
-
}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { type ExecutorContext } from '@nx/devkit';
|
|
2
|
-
import { type ExecutorResponse } from '../shared';
|
|
3
|
-
export interface ExecutorOptions {
|
|
4
|
-
tag: string;
|
|
5
|
-
dryRun?: boolean;
|
|
6
|
-
}
|
|
7
|
-
/**
|
|
8
|
-
* This is a minimal script to publish package to "npm".
|
|
9
|
-
* Need to authenticate with NPM before running this script.
|
|
10
|
-
*/
|
|
11
|
-
export default function runExecutor(opts: ExecutorOptions, ctx: ExecutorContext): Promise<ExecutorResponse>;
|
|
12
|
-
//# sourceMappingURL=executor.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../../../src/executors/publish/executor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,KAAK,eAAe,EAAE,MAAM,YAAY,CAAC;AAG1D,OAAO,EAKL,KAAK,gBAAgB,EACtB,MAAM,WAAW,CAAC;AAGnB,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;;GAGG;AACH,wBAA8B,WAAW,CACvC,IAAI,EAAE,eAAe,EACrB,GAAG,EAAE,eAAe,GACnB,OAAO,CAAC,gBAAgB,CAAC,CA6D3B"}
|
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
Object.defineProperty(exports, /**
|
|
6
|
-
* This is a minimal script to publish package to "npm".
|
|
7
|
-
* Need to authenticate with NPM before running this script.
|
|
8
|
-
*/ "default", {
|
|
9
|
-
enumerable: true,
|
|
10
|
-
get: function() {
|
|
11
|
-
return runExecutor;
|
|
12
|
-
}
|
|
13
|
-
});
|
|
14
|
-
const _interop_require_default = require("@swc/helpers/_/_interop_require_default");
|
|
15
|
-
const _devkit = require("@nx/devkit");
|
|
16
|
-
const _semver = /*#__PURE__*/ _interop_require_default._(require("semver"));
|
|
17
|
-
const _shared = require("../../shared");
|
|
18
|
-
const _shared1 = require("../shared");
|
|
19
|
-
const _helpers = require("./helpers");
|
|
20
|
-
async function runExecutor(opts, ctx) {
|
|
21
|
-
try {
|
|
22
|
-
const { tag, dryRun: isDryRun } = opts;
|
|
23
|
-
const { root: projectRoot } = (0, _shared1.getProjectConfig)(ctx);
|
|
24
|
-
// Read the package.json file and extract the name and version.
|
|
25
|
-
const packageJson = (0, _shared.getPkgJson)(projectRoot);
|
|
26
|
-
const { name: packageName, version: packageVersion } = packageJson;
|
|
27
|
-
// Check if the package has been previously published and get the published version.
|
|
28
|
-
const { publishedVersion, isFirstVersion } = await (0, _helpers.checkPublishedVersion)(packageName);
|
|
29
|
-
let greaterThanTagVersion, greaterThanLatestVersion;
|
|
30
|
-
if (!isFirstVersion) {
|
|
31
|
-
// Check if the package version is greater than the latest published version for the specified tag.
|
|
32
|
-
greaterThanTagVersion = publishedVersion?.[tag] ? _semver.default.gt(packageVersion, publishedVersion?.[tag]) : true;
|
|
33
|
-
// Check if the package version is greater than the latest published version.
|
|
34
|
-
greaterThanLatestVersion = _semver.default.gt(packageVersion, publishedVersion.latest);
|
|
35
|
-
console.log(`🔎 package.json version: ${packageVersion}`);
|
|
36
|
-
console.log('🔺 published versions:');
|
|
37
|
-
Object.entries(publishedVersion).forEach(([k, v])=>console.log(` * ${k}: ${v}`));
|
|
38
|
-
console.log('\n');
|
|
39
|
-
}
|
|
40
|
-
// Publish the package if it's the first version or if it's a new version.
|
|
41
|
-
const needsPublish = isFirstVersion || greaterThanLatestVersion && greaterThanTagVersion;
|
|
42
|
-
if (needsPublish) {
|
|
43
|
-
const dryRun = isDryRun ? '--dry-run' : '';
|
|
44
|
-
const commandToPublish = `pnpm publish --access public --tag ${tag} --no-git-checks ${dryRun}`;
|
|
45
|
-
isDryRun && _devkit.logger.info('👀 Skip publish (dry run) \n');
|
|
46
|
-
_devkit.logger.info(`${commandToPublish} \n`);
|
|
47
|
-
// Execute the command to publish the package.
|
|
48
|
-
await (0, _shared1.runCommand)(commandToPublish);
|
|
49
|
-
_devkit.logger.info(`\n🚀 Successfully published ${packageName}@${packageVersion}`);
|
|
50
|
-
} else {
|
|
51
|
-
_devkit.logger.warn(`👻 Package version "${packageVersion}" is invalid.`);
|
|
52
|
-
}
|
|
53
|
-
return (0, _shared1.ok)();
|
|
54
|
-
} catch (error) {
|
|
55
|
-
return (0, _shared1.err)(error, '❌ Error when publishing the package');
|
|
56
|
-
}
|
|
57
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../../src/executors/publish/helpers.ts"],"names":[],"mappings":"AAOA;;;;;;GAMG;AACH,wBAAsB,0BAA0B,CAC9C,WAAW,EAAE,MAAM,EACnB,GAAG,CAAC,EAAE,MAAM,gBAab;AAED;;;;;GAKG;AACH,wBAAsB,qBAAqB,CAAC,WAAW,EAAE,MAAM;;;GAmB9D"}
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
function _export(target, all) {
|
|
6
|
-
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
-
enumerable: true,
|
|
8
|
-
get: all[name]
|
|
9
|
-
});
|
|
10
|
-
}
|
|
11
|
-
_export(exports, {
|
|
12
|
-
checkPublishedVersion: function() {
|
|
13
|
-
return checkPublishedVersion;
|
|
14
|
-
},
|
|
15
|
-
getPublishedPackageVersion: function() {
|
|
16
|
-
return getPublishedPackageVersion;
|
|
17
|
-
}
|
|
18
|
-
});
|
|
19
|
-
const _devkit = require("@nx/devkit");
|
|
20
|
-
const _child_process = require("child_process");
|
|
21
|
-
const _util = require("util");
|
|
22
|
-
const execAsync = (0, _util.promisify)(_child_process.exec);
|
|
23
|
-
async function getPublishedPackageVersion(packageName, tag) {
|
|
24
|
-
const withTag = tag ? `.${tag}` : ' --json';
|
|
25
|
-
const command = `npm view ${packageName} dist-tags${withTag}`;
|
|
26
|
-
const { stdout, stderr } = await execAsync(command);
|
|
27
|
-
if (stderr) {
|
|
28
|
-
_devkit.logger.error(stderr.trim());
|
|
29
|
-
process.exit(1);
|
|
30
|
-
}
|
|
31
|
-
const published = stdout.trim();
|
|
32
|
-
return tag ? published : JSON.parse(published);
|
|
33
|
-
}
|
|
34
|
-
async function checkPublishedVersion(packageName) {
|
|
35
|
-
let publishedVersion;
|
|
36
|
-
let isFirstVersion = false;
|
|
37
|
-
try {
|
|
38
|
-
publishedVersion = await getPublishedPackageVersion(packageName);
|
|
39
|
-
} catch (err) {
|
|
40
|
-
if (err?.message.includes('code E404')) {
|
|
41
|
-
isFirstVersion = true;
|
|
42
|
-
_devkit.logger.info(`🏁 This is the first version of "${packageName}" package. \n`);
|
|
43
|
-
} else {
|
|
44
|
-
_devkit.logger.error('❌ Error when checking the last published versions \n');
|
|
45
|
-
throw err;
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
return {
|
|
49
|
-
publishedVersion,
|
|
50
|
-
isFirstVersion
|
|
51
|
-
};
|
|
52
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/executors/shared/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC"}
|