@raisenow/tamaro-cli 1.6.1 → 1.7.0-dev.1
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/.history/.eslintignore_20220609190420 +4 -0
- package/.history/.eslintignore_20230911190227 +6 -0
- package/.history/.eslintignore_20230911211247 +7 -0
- package/.history/.eslintignore_20230911211250 +7 -0
- package/.history/.eslintrc_20230911201601.js +49 -0
- package/.history/.eslintrc_20230911201643.js +49 -0
- package/.history/.eslintrc_20230911201735.js +49 -0
- package/.history/.eslintrc_20230911201913.js +64 -0
- package/.history/.eslintrc_20230911202002.js +62 -0
- package/.history/.eslintrc_20230911202138.js +133 -0
- package/.history/.eslintrc_20230911202140.js +133 -0
- package/.history/.eslintrc_20230911202145.js +133 -0
- package/.history/.eslintrc_20230911202147.js +133 -0
- package/.history/.eslintrc_20230911202406.js +133 -0
- package/.history/.eslintrc_20230911202447.js +133 -0
- package/.history/.eslintrc_20230911202453.js +133 -0
- package/.history/.eslintrc_20230911202511.js +133 -0
- package/.history/.eslintrc_20230911202527.js +133 -0
- package/.history/.eslintrc_20230911202639.js +125 -0
- package/.history/.eslintrc_20230911202721.js +149 -0
- package/.history/.eslintrc_20230911202746.js +149 -0
- package/.history/.eslintrc_20240423125702.cjs +148 -0
- package/.history/.gitignore_20220609190420 +14 -0
- package/.history/.gitignore_20230911185959 +4 -0
- package/.history/.gitignore_20230911190006 +4 -0
- package/.history/.gitignore_20230911190007 +4 -0
- package/.history/.nmprc_20241004144025 +0 -0
- package/.history/.nmprc_20241004144041 +1 -0
- package/.history/.npmrc_20241004144040 +1 -0
- package/.history/.npmrc_20241004144152 +1 -0
- package/.history/.npmrc_20241004145639 +2 -0
- package/.history/.npmrc_20241004145649 +1 -0
- package/.history/.nvmrc_20250729181039 +1 -0
- package/.history/.prettierignore_20220609190420 +5 -0
- package/.history/.prettierignore_20230911190242 +7 -0
- package/.history/.prettierignore_20230911190245 +7 -0
- package/.history/.prettierignore_20230911211301 +8 -0
- package/.history/CHANGELOG_20250729195139.md +28 -0
- package/.history/CHANGELOG_20250729195148.md +29 -0
- package/.history/CHANGELOG_20250729195156.md +28 -0
- package/.history/CHANGELOG_20250729195218.md +29 -0
- package/.history/CHANGELOG_20250729195223.md +27 -0
- package/.history/CHANGELOG_20250729195506.md +29 -0
- package/.history/CHANGELOG_20250729224404.md +30 -0
- package/.history/CHANGELOG_20250729224411.md +30 -0
- package/.history/CHANGELOG_20250730124538.md +41 -0
- package/.history/CHANGELOG_20250730124603.md +38 -0
- package/.history/CHANGELOG_20250730124627.md +36 -0
- package/.history/CHANGELOG_20250730124638.md +36 -0
- package/.history/CHANGELOG_20250730124640.md +36 -0
- package/.history/README_20230911145033.md +245 -0
- package/.history/README_20230911151749.md +245 -0
- package/.history/README_20230911151844.md +245 -0
- package/.history/README_20230911153040.md +245 -0
- package/.history/README_20230911202959.md +245 -0
- package/.history/bitbucket-pipelines_20250729111540.yml +46 -0
- package/.history/bitbucket-pipelines_20250729210338.yml +46 -0
- package/.history/bitbucket-pipelines_20250729210340.yml +46 -0
- package/.history/bitbucket-pipelines_20250729210342.yml +46 -0
- package/.history/bitbucket-pipelines_20250729222234.yml +47 -0
- package/.history/bitbucket-pipelines_20250729222554.yml +47 -0
- package/.history/bitbucket-pipelines_20250729222555.yml +47 -0
- package/.history/bitbucket-pipelines_20250729223022.yml +46 -0
- package/.history/bitbucket-pipelines_20250729223024.yml +46 -0
- package/.history/cli_20241005014539 +3 -0
- package/.history/cli_20241005014542 +3 -0
- package/.history/cli_20241005014848 +3 -0
- package/.history/dist/chunk-FICM3HUI_20230912183408.js +302 -0
- package/{dist/chunk-5D6F3T2J.js → .history/dist/chunk-FICM3HUI_20230912201610.js} +45 -98
- package/.history/package_20250729182417.json +111 -0
- package/.history/package_20250729182419.json +111 -0
- package/.history/package_20250729182618.json +110 -0
- package/.history/package_20250729182834.json +110 -0
- package/.history/package_20250729183032.json +110 -0
- package/.history/package_20250729183033.json +110 -0
- package/.history/package_20250729185750.json +110 -0
- package/.history/package_20250729185815.json +110 -0
- package/.history/package_20250729185846.json +110 -0
- package/.history/package_20250729185854.json +110 -0
- package/.history/package_20250729185943.json +110 -0
- package/.history/package_20250729190645.json +110 -0
- package/.history/package_20250729195934.json +110 -0
- package/.history/package_20250729200013.json +110 -0
- package/.history/package_20250729200056.json +110 -0
- package/.history/package_20250729200434.json +110 -0
- package/.history/package_20250729200808.json +110 -0
- package/.history/package_20250729200944.json +110 -0
- package/.history/package_20250729214420.json +114 -0
- package/.history/package_20250729223112.json +110 -0
- package/.history/package_20250729223127.json +110 -0
- package/.history/package_20250729223134.json +110 -0
- package/.history/package_20250730124647.json +114 -0
- package/.history/tsconfig_20241005001442.json +34 -0
- package/.history/tsconfig_20241005001500.json +34 -0
- package/.history/tsconfig_20241005001540.json +34 -0
- package/.history/tsconfig_20241005014429.json +42 -0
- package/.history/tsconfig_20241005014436.json +42 -0
- package/.history/tsconfig_20241005014439.json +38 -0
- package/.history/tsconfig_20241005014455.json +38 -0
- package/.history/tsconfig_20241005014521.json +38 -0
- package/.history/vitest.config_20250729214539.ts +0 -0
- package/.history/vitest.config_20250729214659.ts +24 -0
- package/.history/vitest.config_20250729214748.ts +21 -0
- package/.history/vitest.config_20250729214825.ts +21 -0
- package/.history/vitest.config_20250729214902.ts +21 -0
- package/.history/vitest.config_20250729222125.ts +20 -0
- package/.history/vitest.config_20250729222213.ts +20 -0
- package/.idea/codeStyles/Project.xml +131 -0
- package/.idea/codeStyles/codeStyleConfig.xml +5 -0
- package/.idea/inspectionProfiles/Project_Default.xml +6 -0
- package/.idea/misc.xml +17 -0
- package/.idea/modules.xml +8 -0
- package/.idea/prettier.xml +6 -0
- package/.idea/tamaro-cli.iml +12 -0
- package/.idea/vcs.xml +6 -0
- package/.nvmrc +1 -1
- package/bitbucket-pipelines.yml +1 -1
- package/dist/cli.js +754 -1160
- package/dist/env-C_Jkayak.js +261 -0
- package/dist/webpack.config.js +310 -441
- package/package.json +18 -22
- package/tsdown.config.ts +11 -0
|
@@ -0,0 +1,302 @@
|
|
|
1
|
+
// node_modules/.pnpm/tsup@7.2.0_postcss@8.4.29_typescript@5.2.2/node_modules/tsup/assets/esm_shims.js
|
|
2
|
+
import { fileURLToPath } from "url";
|
|
3
|
+
import path from "path";
|
|
4
|
+
var getFilename = () => fileURLToPath(import.meta.url);
|
|
5
|
+
var getDirname = () => path.dirname(getFilename());
|
|
6
|
+
var __dirname = /* @__PURE__ */ getDirname();
|
|
7
|
+
|
|
8
|
+
// src/lib/logging.ts
|
|
9
|
+
import chalk from "chalk";
|
|
10
|
+
import columnify from "columnify";
|
|
11
|
+
import stripIndent from "strip-indent";
|
|
12
|
+
var logTitle = (title) => {
|
|
13
|
+
console.log(`${chalk.bold(title)}`);
|
|
14
|
+
};
|
|
15
|
+
var logError = (message) => {
|
|
16
|
+
if (message) {
|
|
17
|
+
console.log(chalk.red(message));
|
|
18
|
+
}
|
|
19
|
+
};
|
|
20
|
+
var logCommand = (cmd) => {
|
|
21
|
+
console.log(`
|
|
22
|
+
${chalk.dim(stripIndent(cmd).trim())}
|
|
23
|
+
`);
|
|
24
|
+
};
|
|
25
|
+
var logDataTable = (data) => {
|
|
26
|
+
console.log(columnify(data, { showHeaders: false }));
|
|
27
|
+
console.log("");
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
// src/lib/constants.ts
|
|
31
|
+
var DEFAULT_TAG = "latest";
|
|
32
|
+
var DEFAULT_PORT = 1234;
|
|
33
|
+
var AWS_S3_EMAIL_CONFIG_PROD_BUCKET = "rnw-email-service";
|
|
34
|
+
var AWS_S3_EMAIL_CONFIG_STAGE_BUCKET = "rnw-stage-email-service";
|
|
35
|
+
var AWS_S3_BUCKET = "tamaro.raisenow.com";
|
|
36
|
+
var CORE_CONFIG_NAME = "tamaro-core";
|
|
37
|
+
var AWS_CLOUDFRONT_DISTRIBUTION_ID = "EHJ1OM458YQ0I";
|
|
38
|
+
var HTTPS_CRT_FILE = "localhost.crt";
|
|
39
|
+
var HTTPS_KEY_FILE = "localhost.key";
|
|
40
|
+
|
|
41
|
+
// src/lib/resolve.ts
|
|
42
|
+
import { existsSync, realpathSync } from "fs";
|
|
43
|
+
import { createRequire } from "module";
|
|
44
|
+
import { basename, dirname, join, relative, resolve } from "path";
|
|
45
|
+
import chalk2 from "chalk";
|
|
46
|
+
import stripIndent2 from "strip-indent";
|
|
47
|
+
import { getIfUtils } from "webpack-config-utils";
|
|
48
|
+
var require2 = createRequire(import.meta.url);
|
|
49
|
+
var moduleFileExtensions = ["ts", "tsx", "js", "jsx"];
|
|
50
|
+
var extensions = moduleFileExtensions.map((v) => `.${v}`);
|
|
51
|
+
var TAMARO_CORE_PACKAGE_NAMES = ["@raisenow/tamaro-core"];
|
|
52
|
+
var TAMARO_CONFIGURATIONS_PACKAGE_NAMES = ["@raisenow/tamaro-configurations"];
|
|
53
|
+
var TAMARO_SELF_SERVICE_PACKAGE_NAMES = ["@raisenow/tamaro-self-service"];
|
|
54
|
+
var resolveApp = (relativePath) => resolve(realpathSync(process.cwd()), relativePath);
|
|
55
|
+
var resolveOwn = (relativePath) => resolve(__dirname, "..", relativePath);
|
|
56
|
+
var resolveModule = (resolveFn, filePath) => {
|
|
57
|
+
const extension = moduleFileExtensions.find(
|
|
58
|
+
(extension2) => existsSync(resolveFn(`${filePath}.${extension2}`))
|
|
59
|
+
);
|
|
60
|
+
if (extension) {
|
|
61
|
+
return resolveFn(`${filePath}.${extension}`);
|
|
62
|
+
}
|
|
63
|
+
return resolveFn(`${filePath}.js`);
|
|
64
|
+
};
|
|
65
|
+
var resolveBin = (name) => {
|
|
66
|
+
const pkgPath = require2.resolve(`${name}/package.json`);
|
|
67
|
+
const { bin } = require2(pkgPath);
|
|
68
|
+
const dir = dirname(pkgPath);
|
|
69
|
+
const binPath = typeof bin === "object" ? bin[name] : bin;
|
|
70
|
+
return join(dir, binPath);
|
|
71
|
+
};
|
|
72
|
+
var getWidgetUuid = () => basename(resolveApp("."));
|
|
73
|
+
var getPaths = (ifCore) => {
|
|
74
|
+
return ifCore(
|
|
75
|
+
{
|
|
76
|
+
root: resolveApp("."),
|
|
77
|
+
app: resolveApp("."),
|
|
78
|
+
appEntry: resolveModule(resolveApp, "src/index"),
|
|
79
|
+
appDist: resolveApp("dist"),
|
|
80
|
+
appNodeModules: resolveApp("node_modules"),
|
|
81
|
+
appTsConfig: resolveApp("tsconfig.json"),
|
|
82
|
+
appHtml: resolveApp("src/*.html"),
|
|
83
|
+
appEnv: resolveApp(".env*"),
|
|
84
|
+
appTailwindConfig: resolveApp("tailwind.config.js")
|
|
85
|
+
},
|
|
86
|
+
{
|
|
87
|
+
root: resolveApp("../.."),
|
|
88
|
+
app: resolveApp("."),
|
|
89
|
+
appEntry: resolveModule(resolveApp, "widget"),
|
|
90
|
+
appDist: resolveApp(`../../dist/${getWidgetUuid()}`),
|
|
91
|
+
appNodeModules: resolveApp("../../node_modules"),
|
|
92
|
+
appTsConfig: resolveApp("tsconfig.json"),
|
|
93
|
+
appHtml: resolveApp("*.html"),
|
|
94
|
+
appEnv: resolveApp(".env*"),
|
|
95
|
+
appTailwindConfig: void 0
|
|
96
|
+
}
|
|
97
|
+
);
|
|
98
|
+
};
|
|
99
|
+
var getRelativePaths = (paths) => {
|
|
100
|
+
const relativePaths = {};
|
|
101
|
+
for (const [type, absPath] of Object.entries(paths)) {
|
|
102
|
+
if (absPath) {
|
|
103
|
+
relativePaths[type] = relative("./", absPath) || ".";
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
return relativePaths;
|
|
107
|
+
};
|
|
108
|
+
var getIfCoreFns = () => {
|
|
109
|
+
const corePkgPath = resolveApp("package.json");
|
|
110
|
+
const configsPkgPath = resolveApp("../../package.json");
|
|
111
|
+
let packageName;
|
|
112
|
+
if (existsSync(corePkgPath)) {
|
|
113
|
+
packageName = require2(corePkgPath).name;
|
|
114
|
+
} else if (existsSync(configsPkgPath)) {
|
|
115
|
+
packageName = require2(configsPkgPath).name;
|
|
116
|
+
}
|
|
117
|
+
if (packageName) {
|
|
118
|
+
return getIfUtils({ core: TAMARO_CORE_PACKAGE_NAMES.includes(packageName) }, [
|
|
119
|
+
"core"
|
|
120
|
+
]);
|
|
121
|
+
}
|
|
122
|
+
logError(
|
|
123
|
+
stripIndent2(` You must run "npx @raisenow/tamaro-cli" commands from:
|
|
124
|
+
1. Root of "${chalk2.bold(TAMARO_CORE_PACKAGE_NAMES[0])}" package folder.
|
|
125
|
+
2. Root of particular customer configuration folder of "${chalk2.bold(
|
|
126
|
+
TAMARO_CONFIGURATIONS_PACKAGE_NAMES[0]
|
|
127
|
+
)}" package.
|
|
128
|
+
3. "src/self-service" folder of "${chalk2.bold(
|
|
129
|
+
TAMARO_SELF_SERVICE_PACKAGE_NAMES[0]
|
|
130
|
+
)}" package.
|
|
131
|
+
You are currently in "${chalk2.bold(realpathSync(process.cwd()))}".
|
|
132
|
+
`)
|
|
133
|
+
);
|
|
134
|
+
process.exit(1);
|
|
135
|
+
};
|
|
136
|
+
|
|
137
|
+
// src/lib/env.ts
|
|
138
|
+
import { createRequire as createRequire2 } from "module";
|
|
139
|
+
import { basename as basename2 } from "path";
|
|
140
|
+
import { config as dotenvConfig } from "dotenv";
|
|
141
|
+
import { expand as dotenvExpand } from "dotenv-expand";
|
|
142
|
+
import { globSync } from "glob";
|
|
143
|
+
import stripIndent3 from "strip-indent";
|
|
144
|
+
|
|
145
|
+
// src/lib/command.ts
|
|
146
|
+
import {
|
|
147
|
+
execaCommandSync
|
|
148
|
+
} from "execa";
|
|
149
|
+
var halt = (message, exitCode = 1) => {
|
|
150
|
+
logError(message);
|
|
151
|
+
process.exit(exitCode);
|
|
152
|
+
};
|
|
153
|
+
var prepareCommand = (cmd) => {
|
|
154
|
+
return cmd.replace(/\n/gm, " ").replace(/[ \t]{2,}/gm, " ").trim();
|
|
155
|
+
};
|
|
156
|
+
var runCommandSync = (cmd, options) => {
|
|
157
|
+
return execaCommandSync(prepareCommand(cmd), options);
|
|
158
|
+
};
|
|
159
|
+
|
|
160
|
+
// src/lib/env.ts
|
|
161
|
+
var require3 = createRequire2(import.meta.url);
|
|
162
|
+
var getEnvVars = (files, ifMin, ifCore, ifLocalCore, ifHttps) => {
|
|
163
|
+
const filePath = files.find((file) => basename2(file) === ".env");
|
|
164
|
+
if (filePath) {
|
|
165
|
+
dotenvExpand(dotenvConfig({ path: filePath }));
|
|
166
|
+
}
|
|
167
|
+
process.env.NODE_ENV ??= ifMin("production", "development");
|
|
168
|
+
process.env.BABEL_ENV ??= ifMin("production", "development");
|
|
169
|
+
process.env.EXPOSE_VAR ??= ifCore("rnw.tamaroCore", "rnw.tamaro");
|
|
170
|
+
process.env.ELEMENT_ATTRIBUTE_DATA_WIDGET ??= ifCore(
|
|
171
|
+
"rnw-tamaro-core",
|
|
172
|
+
"rnw-tamaro"
|
|
173
|
+
);
|
|
174
|
+
process.env.WEBPACK_UNIQUE_NAME ??= ifCore("RnwTamaroCore", "RnwTamaro");
|
|
175
|
+
process.env.BUILD_DATE = (/* @__PURE__ */ new Date()).toISOString();
|
|
176
|
+
process.env.PUBLIC_URL ??= "";
|
|
177
|
+
process.env.HMR_ENABLED ??= ifMin("false", "true");
|
|
178
|
+
if (ifCore()) {
|
|
179
|
+
process.env.PRODUCT_NAME = "tamaro";
|
|
180
|
+
const corePkgPath = resolveApp("package.json");
|
|
181
|
+
const { version } = require3(corePkgPath);
|
|
182
|
+
process.env.PRODUCT_VERSION = version;
|
|
183
|
+
}
|
|
184
|
+
if (!ifCore()) {
|
|
185
|
+
process.env.WIDGET_UUID = getWidgetUuid();
|
|
186
|
+
if (ifLocalCore()) {
|
|
187
|
+
const protocol = ifHttps() ? "https" : "http";
|
|
188
|
+
process.env.CORE_URL = `${protocol}://0.0.0.0:1234/index.js`;
|
|
189
|
+
} else {
|
|
190
|
+
let version = process.env.CORE_VERSION;
|
|
191
|
+
version = version ? `@${version}` : "";
|
|
192
|
+
process.env.CORE_URL ??= `https://cdn.jsdelivr.net/npm/@raisenow/tamaro-core${version}/dist/index.js`;
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
const varNames = [
|
|
196
|
+
// common
|
|
197
|
+
"NODE_ENV",
|
|
198
|
+
"BABEL_ENV",
|
|
199
|
+
"EXPOSE_VAR",
|
|
200
|
+
"ELEMENT_ATTRIBUTE_DATA_WIDGET",
|
|
201
|
+
"WEBPACK_UNIQUE_NAME",
|
|
202
|
+
"BUILD_DATE",
|
|
203
|
+
"PUBLIC_URL",
|
|
204
|
+
// core
|
|
205
|
+
"PRODUCT_NAME",
|
|
206
|
+
"PRODUCT_VERSION",
|
|
207
|
+
// config
|
|
208
|
+
"WIDGET_UUID",
|
|
209
|
+
"CORE_URL",
|
|
210
|
+
"CORE_VERSION",
|
|
211
|
+
// should be explicitly specified in each config
|
|
212
|
+
// epik (obsolete since Tamaro v2.5.0)
|
|
213
|
+
"EPP_API_KEY_DEFAULT",
|
|
214
|
+
"EPP_API_URL_STAGE",
|
|
215
|
+
"EPP_API_URL_PROD",
|
|
216
|
+
"EPMS_API_URL_STAGE",
|
|
217
|
+
"EPMS_API_URL_PROD",
|
|
218
|
+
"EPP_PROXY_URL_STAGE",
|
|
219
|
+
"EPP_PROXY_URL_PROD",
|
|
220
|
+
"EPMS_PROXY_URL_STAGE",
|
|
221
|
+
"EPMS_PROXY_URL_PROD",
|
|
222
|
+
"EPMS_TWINT_CHECKOUT_URL_STAGE",
|
|
223
|
+
"EPMS_TWINT_CHECKOUT_URL_PROD"
|
|
224
|
+
];
|
|
225
|
+
const raw = Object.keys(process.env).filter((key) => key.startsWith("PUBLIC_") || varNames.includes(key)).reduce((env, key) => {
|
|
226
|
+
env[key] = process.env[key];
|
|
227
|
+
return env;
|
|
228
|
+
}, {});
|
|
229
|
+
const stringified = {
|
|
230
|
+
"process.env": Object.keys(raw).reduce((env, key) => {
|
|
231
|
+
env[key] = JSON.stringify(raw[key]);
|
|
232
|
+
return env;
|
|
233
|
+
}, {})
|
|
234
|
+
};
|
|
235
|
+
return { raw, stringified };
|
|
236
|
+
};
|
|
237
|
+
var assertEnvValid = (env) => {
|
|
238
|
+
const { ifCore } = getIfCoreFns();
|
|
239
|
+
const paths = getPaths(ifCore);
|
|
240
|
+
const files = globSync(paths.appEnv);
|
|
241
|
+
const envs = files.map((file) => basename2(file).replace(/^\.env\./, "")).map((file) => basename2(file).replace(/^\.env$/, "")).filter((v) => !!v);
|
|
242
|
+
if (envs.length === 0) {
|
|
243
|
+
if (env) {
|
|
244
|
+
console.log('Flag "--env" is ignored.');
|
|
245
|
+
}
|
|
246
|
+
}
|
|
247
|
+
if (envs.length !== 0) {
|
|
248
|
+
if (!env) {
|
|
249
|
+
halt('Flag "--env" is required.');
|
|
250
|
+
}
|
|
251
|
+
if (env && !envs.includes(env)) {
|
|
252
|
+
halt(
|
|
253
|
+
stripIndent3(`
|
|
254
|
+
Flag "--env" has wrong value.
|
|
255
|
+
Available values are: ${envs.map((v) => `"${v}"`).join(", ")}.
|
|
256
|
+
`)
|
|
257
|
+
);
|
|
258
|
+
}
|
|
259
|
+
}
|
|
260
|
+
};
|
|
261
|
+
var applyEnv = (env) => {
|
|
262
|
+
if (!env) {
|
|
263
|
+
return;
|
|
264
|
+
}
|
|
265
|
+
const { ifCore } = getIfCoreFns();
|
|
266
|
+
const paths = getPaths(ifCore);
|
|
267
|
+
const files = globSync(paths.appEnv);
|
|
268
|
+
const filePath = files.find((file) => basename2(file) === `.env.${env}`);
|
|
269
|
+
if (filePath) {
|
|
270
|
+
dotenvExpand(dotenvConfig({ path: filePath }));
|
|
271
|
+
}
|
|
272
|
+
};
|
|
273
|
+
|
|
274
|
+
export {
|
|
275
|
+
logTitle,
|
|
276
|
+
logError,
|
|
277
|
+
logCommand,
|
|
278
|
+
logDataTable,
|
|
279
|
+
halt,
|
|
280
|
+
runCommandSync,
|
|
281
|
+
DEFAULT_TAG,
|
|
282
|
+
DEFAULT_PORT,
|
|
283
|
+
AWS_S3_EMAIL_CONFIG_PROD_BUCKET,
|
|
284
|
+
AWS_S3_EMAIL_CONFIG_STAGE_BUCKET,
|
|
285
|
+
AWS_S3_BUCKET,
|
|
286
|
+
CORE_CONFIG_NAME,
|
|
287
|
+
AWS_CLOUDFRONT_DISTRIBUTION_ID,
|
|
288
|
+
HTTPS_CRT_FILE,
|
|
289
|
+
HTTPS_KEY_FILE,
|
|
290
|
+
moduleFileExtensions,
|
|
291
|
+
extensions,
|
|
292
|
+
resolveApp,
|
|
293
|
+
resolveOwn,
|
|
294
|
+
resolveBin,
|
|
295
|
+
getWidgetUuid,
|
|
296
|
+
getPaths,
|
|
297
|
+
getRelativePaths,
|
|
298
|
+
getIfCoreFns,
|
|
299
|
+
getEnvVars,
|
|
300
|
+
assertEnvValid,
|
|
301
|
+
applyEnv
|
|
302
|
+
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
// node_modules/.pnpm/tsup@
|
|
2
|
-
import path from "path";
|
|
1
|
+
// node_modules/.pnpm/tsup@7.2.0_postcss@8.4.29_typescript@5.2.2/node_modules/tsup/assets/esm_shims.js
|
|
3
2
|
import { fileURLToPath } from "url";
|
|
3
|
+
import path from "path";
|
|
4
4
|
var getFilename = () => fileURLToPath(import.meta.url);
|
|
5
5
|
var getDirname = () => path.dirname(getFilename());
|
|
6
6
|
var __dirname = /* @__PURE__ */ getDirname();
|
|
@@ -10,18 +10,13 @@ import chalk from "chalk";
|
|
|
10
10
|
import columnify from "columnify";
|
|
11
11
|
import stripIndent from "strip-indent";
|
|
12
12
|
var logTitle = (title) => {
|
|
13
|
-
console.log(chalk.bold(title));
|
|
13
|
+
console.log(`${chalk.bold(title)}`);
|
|
14
14
|
};
|
|
15
15
|
var logError = (message) => {
|
|
16
16
|
if (message) {
|
|
17
17
|
console.log(chalk.red(message));
|
|
18
18
|
}
|
|
19
19
|
};
|
|
20
|
-
var logSuccess = (message) => {
|
|
21
|
-
if (message) {
|
|
22
|
-
console.log(chalk.green(message));
|
|
23
|
-
}
|
|
24
|
-
};
|
|
25
20
|
var logCommand = (cmd) => {
|
|
26
21
|
console.log(`
|
|
27
22
|
${chalk.dim(stripIndent(cmd).trim())}
|
|
@@ -32,40 +27,16 @@ var logDataTable = (data) => {
|
|
|
32
27
|
console.log("");
|
|
33
28
|
};
|
|
34
29
|
|
|
35
|
-
// src/lib/
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
var
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
var
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
var runCommandSync = (cmd, options) => {
|
|
46
|
-
return execaCommandSync(prepareCommand(cmd), options);
|
|
47
|
-
};
|
|
48
|
-
var promptConfirmation = async (message, skipConfirmation) => {
|
|
49
|
-
if (skipConfirmation) {
|
|
50
|
-
return;
|
|
51
|
-
}
|
|
52
|
-
const { confirmed } = await prompts(
|
|
53
|
-
[
|
|
54
|
-
{
|
|
55
|
-
type: "confirm",
|
|
56
|
-
name: "confirmed",
|
|
57
|
-
message,
|
|
58
|
-
initial: false
|
|
59
|
-
}
|
|
60
|
-
],
|
|
61
|
-
{
|
|
62
|
-
onCancel: () => halt()
|
|
63
|
-
}
|
|
64
|
-
);
|
|
65
|
-
if (!confirmed) {
|
|
66
|
-
halt("Operation cancelled.");
|
|
67
|
-
}
|
|
68
|
-
};
|
|
30
|
+
// src/lib/constants.ts
|
|
31
|
+
var DEFAULT_TAG = "latest";
|
|
32
|
+
var DEFAULT_PORT = 1234;
|
|
33
|
+
var AWS_S3_EMAIL_CONFIG_PROD_BUCKET = "rnw-email-service";
|
|
34
|
+
var AWS_S3_EMAIL_CONFIG_STAGE_BUCKET = "rnw-stage-email-service";
|
|
35
|
+
var AWS_S3_BUCKET = "tamaro.raisenow.com";
|
|
36
|
+
var CORE_CONFIG_NAME = "tamaro-core";
|
|
37
|
+
var AWS_CLOUDFRONT_DISTRIBUTION_ID = "EHJ1OM458YQ0I";
|
|
38
|
+
var HTTPS_CRT_FILE = "localhost.crt";
|
|
39
|
+
var HTTPS_KEY_FILE = "localhost.key";
|
|
69
40
|
|
|
70
41
|
// src/lib/resolve.ts
|
|
71
42
|
import { existsSync, realpathSync } from "fs";
|
|
@@ -91,24 +62,6 @@ var resolveModule = (resolveFn, filePath) => {
|
|
|
91
62
|
}
|
|
92
63
|
return resolveFn(`${filePath}.js`);
|
|
93
64
|
};
|
|
94
|
-
var resolveEslintPluginConfig = (paths) => {
|
|
95
|
-
try {
|
|
96
|
-
const opts = { paths: [paths.appNodeModules] };
|
|
97
|
-
const eslintPath = require2.resolve("eslint", opts);
|
|
98
|
-
const pkg = require2(require2.resolve("eslint/package.json", opts));
|
|
99
|
-
const version = pkg.version;
|
|
100
|
-
const configType = version.startsWith("8.") ? "eslintrc" : "flat";
|
|
101
|
-
return {
|
|
102
|
-
extensions: moduleFileExtensions,
|
|
103
|
-
eslintPath,
|
|
104
|
-
cwd: paths.app,
|
|
105
|
-
configType
|
|
106
|
-
};
|
|
107
|
-
} catch (error) {
|
|
108
|
-
console.error(error);
|
|
109
|
-
return void 0;
|
|
110
|
-
}
|
|
111
|
-
};
|
|
112
65
|
var resolveBin = (name) => {
|
|
113
66
|
const pkgPath = require2.resolve(`${name}/package.json`);
|
|
114
67
|
const { bin } = require2(pkgPath);
|
|
@@ -152,19 +105,14 @@ var getRelativePaths = (paths) => {
|
|
|
152
105
|
}
|
|
153
106
|
return relativePaths;
|
|
154
107
|
};
|
|
155
|
-
var getIfCoreFns = ({
|
|
156
|
-
allowArchived = false
|
|
157
|
-
} = {}) => {
|
|
108
|
+
var getIfCoreFns = () => {
|
|
158
109
|
const corePkgPath = resolveApp("package.json");
|
|
159
110
|
const configsPkgPath = resolveApp("../../package.json");
|
|
160
|
-
const archivedConfigsPkgPath = resolveApp("../../../package.json");
|
|
161
111
|
let packageName;
|
|
162
112
|
if (existsSync(corePkgPath)) {
|
|
163
113
|
packageName = require2(corePkgPath).name;
|
|
164
114
|
} else if (existsSync(configsPkgPath)) {
|
|
165
115
|
packageName = require2(configsPkgPath).name;
|
|
166
|
-
} else if (allowArchived && existsSync(archivedConfigsPkgPath)) {
|
|
167
|
-
packageName = require2(archivedConfigsPkgPath).name;
|
|
168
116
|
}
|
|
169
117
|
if (packageName) {
|
|
170
118
|
return getIfUtils({ core: TAMARO_CORE_PACKAGE_NAMES.includes(packageName) }, [
|
|
@@ -186,28 +134,35 @@ var getIfCoreFns = ({
|
|
|
186
134
|
process.exit(1);
|
|
187
135
|
};
|
|
188
136
|
|
|
189
|
-
// src/lib/constants.ts
|
|
190
|
-
var DEFAULT_TAG = "latest";
|
|
191
|
-
var DEFAULT_PORT = 1234;
|
|
192
|
-
var AWS_S3_BUCKET_TAMARO = "tamaro.raisenow.com";
|
|
193
|
-
var AWS_S3_BUCKET_TAMARO_EMAIL_CONFIG_STAGE = "rnw-stage-email-service";
|
|
194
|
-
var AWS_S3_BUCKET_TAMARO_EMAIL_CONFIG_PROD = "rnw-email-service";
|
|
195
|
-
var CORE_CONFIG_NAME = "tamaro-core";
|
|
196
|
-
var AWS_CLOUDFRONT_DISTRIBUTION_ID = "EHJ1OM458YQ0I";
|
|
197
|
-
var HTTPS_CRT_FILE = "localhost.crt";
|
|
198
|
-
var HTTPS_KEY_FILE = "localhost.key";
|
|
199
|
-
|
|
200
137
|
// src/lib/env.ts
|
|
201
138
|
import { createRequire as createRequire2 } from "module";
|
|
202
139
|
import { basename as basename2 } from "path";
|
|
203
140
|
import { config as dotenvConfig } from "dotenv";
|
|
141
|
+
import { expand as dotenvExpand } from "dotenv-expand";
|
|
204
142
|
import { globSync } from "glob";
|
|
205
143
|
import stripIndent3 from "strip-indent";
|
|
144
|
+
|
|
145
|
+
// src/lib/command.ts
|
|
146
|
+
import {
|
|
147
|
+
execaCommandSync
|
|
148
|
+
} from "execa";
|
|
149
|
+
var halt = (message, exitCode = 1) => {
|
|
150
|
+
logError(message);
|
|
151
|
+
process.exit(exitCode);
|
|
152
|
+
};
|
|
153
|
+
var prepareCommand = (cmd) => {
|
|
154
|
+
return cmd.replace(/\n/gm, " ").replace(/[ \t]{2,}/gm, " ").trim();
|
|
155
|
+
};
|
|
156
|
+
var runCommandSync = (cmd, options) => {
|
|
157
|
+
return execaCommandSync(prepareCommand(cmd), options);
|
|
158
|
+
};
|
|
159
|
+
|
|
160
|
+
// src/lib/env.ts
|
|
206
161
|
var require3 = createRequire2(import.meta.url);
|
|
207
162
|
var getEnvVars = (files, ifMin, ifCore, ifLocalCore, ifHttps) => {
|
|
208
163
|
const filePath = files.find((file) => basename2(file) === ".env");
|
|
209
164
|
if (filePath) {
|
|
210
|
-
dotenvConfig({ path: filePath });
|
|
165
|
+
dotenvExpand(dotenvConfig({ path: filePath }));
|
|
211
166
|
}
|
|
212
167
|
process.env.NODE_ENV ??= ifMin("production", "development");
|
|
213
168
|
process.env.BABEL_ENV ??= ifMin("production", "development");
|
|
@@ -234,11 +189,7 @@ var getEnvVars = (files, ifMin, ifCore, ifLocalCore, ifHttps) => {
|
|
|
234
189
|
} else {
|
|
235
190
|
let version = process.env.CORE_VERSION;
|
|
236
191
|
version = version ? `@${version}` : "";
|
|
237
|
-
process.env.
|
|
238
|
-
process.env.CORE_URL ??= process.env.CORE_URL_PATTERN.replace(
|
|
239
|
-
"{{version}}",
|
|
240
|
-
version
|
|
241
|
-
);
|
|
192
|
+
process.env.CORE_URL ??= `https://cdn.jsdelivr.net/npm/@raisenow/tamaro-core${version}/dist/index.js`;
|
|
242
193
|
}
|
|
243
194
|
}
|
|
244
195
|
const varNames = [
|
|
@@ -256,10 +207,8 @@ var getEnvVars = (files, ifMin, ifCore, ifLocalCore, ifHttps) => {
|
|
|
256
207
|
// config
|
|
257
208
|
"WIDGET_UUID",
|
|
258
209
|
"CORE_URL",
|
|
259
|
-
"CORE_URL_PATTERN",
|
|
260
210
|
"CORE_VERSION",
|
|
261
211
|
// should be explicitly specified in each config
|
|
262
|
-
"DISABLE_URL_VERSION_OVERRIDE",
|
|
263
212
|
// epik (obsolete since Tamaro v2.5.0)
|
|
264
213
|
"EPP_API_KEY_DEFAULT",
|
|
265
214
|
"EPP_API_URL_STAGE",
|
|
@@ -318,37 +267,35 @@ var applyEnv = (env) => {
|
|
|
318
267
|
const files = globSync(paths.appEnv);
|
|
319
268
|
const filePath = files.find((file) => basename2(file) === `.env.${env}`);
|
|
320
269
|
if (filePath) {
|
|
321
|
-
dotenvConfig({ path: filePath });
|
|
270
|
+
dotenvExpand(dotenvConfig({ path: filePath }));
|
|
322
271
|
}
|
|
323
272
|
};
|
|
324
273
|
|
|
325
274
|
export {
|
|
326
275
|
logTitle,
|
|
327
276
|
logError,
|
|
328
|
-
logSuccess,
|
|
329
277
|
logCommand,
|
|
330
278
|
logDataTable,
|
|
331
279
|
halt,
|
|
332
280
|
runCommandSync,
|
|
333
|
-
|
|
281
|
+
DEFAULT_TAG,
|
|
282
|
+
DEFAULT_PORT,
|
|
283
|
+
AWS_S3_EMAIL_CONFIG_PROD_BUCKET,
|
|
284
|
+
AWS_S3_EMAIL_CONFIG_STAGE_BUCKET,
|
|
285
|
+
AWS_S3_BUCKET,
|
|
286
|
+
CORE_CONFIG_NAME,
|
|
287
|
+
AWS_CLOUDFRONT_DISTRIBUTION_ID,
|
|
288
|
+
HTTPS_CRT_FILE,
|
|
289
|
+
HTTPS_KEY_FILE,
|
|
290
|
+
moduleFileExtensions,
|
|
334
291
|
extensions,
|
|
335
292
|
resolveApp,
|
|
336
293
|
resolveOwn,
|
|
337
|
-
resolveEslintPluginConfig,
|
|
338
294
|
resolveBin,
|
|
339
295
|
getWidgetUuid,
|
|
340
296
|
getPaths,
|
|
341
297
|
getRelativePaths,
|
|
342
298
|
getIfCoreFns,
|
|
343
|
-
DEFAULT_TAG,
|
|
344
|
-
DEFAULT_PORT,
|
|
345
|
-
AWS_S3_BUCKET_TAMARO,
|
|
346
|
-
AWS_S3_BUCKET_TAMARO_EMAIL_CONFIG_STAGE,
|
|
347
|
-
AWS_S3_BUCKET_TAMARO_EMAIL_CONFIG_PROD,
|
|
348
|
-
CORE_CONFIG_NAME,
|
|
349
|
-
AWS_CLOUDFRONT_DISTRIBUTION_ID,
|
|
350
|
-
HTTPS_CRT_FILE,
|
|
351
|
-
HTTPS_KEY_FILE,
|
|
352
299
|
getEnvVars,
|
|
353
300
|
assertEnvValid,
|
|
354
301
|
applyEnv
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@raisenow/tamaro-cli",
|
|
3
|
+
"version": "1.2.0",
|
|
4
|
+
"author": {
|
|
5
|
+
"name": "RaiseNow",
|
|
6
|
+
"email": "development@raisenow.com"
|
|
7
|
+
},
|
|
8
|
+
"type": "module",
|
|
9
|
+
"bin": "dist/cli.js",
|
|
10
|
+
"packageManager": "pnpm@9.14.2",
|
|
11
|
+
"engines": {
|
|
12
|
+
"node": ">=20",
|
|
13
|
+
"pnpm": ">= 9.12",
|
|
14
|
+
"npm": "please-use-pnpm",
|
|
15
|
+
"yarn": "please-use-pnpm"
|
|
16
|
+
},
|
|
17
|
+
"scripts": {
|
|
18
|
+
"prepare": "pnpm build",
|
|
19
|
+
"tscheck": "tsc --noEmit",
|
|
20
|
+
"build": "tsup src/cli.ts src/webpack.config.ts --clean --shims --format esm",
|
|
21
|
+
"build:watch": "pnpm build --watch --ignore-watch .history --ignore-watch .idea",
|
|
22
|
+
"readme": "pnpx http-server . --cors -o /readme.html",
|
|
23
|
+
"lint": "DEBUG=eslint:cli-engine eslint .",
|
|
24
|
+
"lint:fix": "DEBUG=eslint:cli-engine eslint --fix .",
|
|
25
|
+
"format": "prettier --write ."
|
|
26
|
+
},
|
|
27
|
+
"dependencies": {
|
|
28
|
+
"@babel/cli": "^7.28.0",
|
|
29
|
+
"@babel/core": "^7.28.0",
|
|
30
|
+
"@babel/plugin-proposal-decorators": "^7.28.0",
|
|
31
|
+
"@babel/plugin-syntax-dynamic-import": "^7.8.3",
|
|
32
|
+
"@babel/plugin-transform-runtime": "^7.28.0",
|
|
33
|
+
"@babel/preset-env": "^7.28.0",
|
|
34
|
+
"@babel/preset-react": "^7.27.1",
|
|
35
|
+
"@babel/preset-typescript": "^7.27.1",
|
|
36
|
+
"@babel/runtime-corejs3": "^7.28.2",
|
|
37
|
+
"@pmmmwh/react-refresh-webpack-plugin": "^0.5.17",
|
|
38
|
+
"@statoscope/webpack-plugin": "^5.29.0",
|
|
39
|
+
"@types/columnify": "^1.5.4",
|
|
40
|
+
"@types/handlebars-helpers": "^0.5.6",
|
|
41
|
+
"@types/lodash": "^4.17.20",
|
|
42
|
+
"@types/node": "^22.17.0",
|
|
43
|
+
"@types/node-notifier": "^8.0.5",
|
|
44
|
+
"@types/prompts": "^2.4.9",
|
|
45
|
+
"@types/resolve-bin": "^0.4.3",
|
|
46
|
+
"@types/webpack-config-utils": "^2.3.4",
|
|
47
|
+
"@typescript-eslint/eslint-plugin": "^7.18.0",
|
|
48
|
+
"@typescript-eslint/parser": "^7.18.0",
|
|
49
|
+
"autoprefixer": "^10.4.21",
|
|
50
|
+
"babel-loader": "^10.0.0",
|
|
51
|
+
"babel-plugin-istanbul": "^7.0.0",
|
|
52
|
+
"babel-plugin-lodash": "^3.3.4",
|
|
53
|
+
"chalk": "^5.4.1",
|
|
54
|
+
"clean-webpack-plugin": "^4.0.0",
|
|
55
|
+
"columnify": "^1.6.0",
|
|
56
|
+
"commander": "^12.1.0",
|
|
57
|
+
"copy-webpack-plugin": "^12.0.2",
|
|
58
|
+
"core-js": "^3.39.0",
|
|
59
|
+
"css-loader": "^7.1.2",
|
|
60
|
+
"css-minimizer-webpack-plugin": "^7.0.0",
|
|
61
|
+
"dotenv": "^16.4.5",
|
|
62
|
+
"escape-string-regexp": "^5.0.0",
|
|
63
|
+
"eslint": "^8.57.1",
|
|
64
|
+
"eslint-config-prettier": "^9.1.0",
|
|
65
|
+
"eslint-import-resolver-typescript": "^3.6.3",
|
|
66
|
+
"eslint-plugin-deprecation": "^3.0.0",
|
|
67
|
+
"eslint-plugin-import": "^2.31.0",
|
|
68
|
+
"eslint-plugin-markdownlint": "^0.6.0",
|
|
69
|
+
"eslint-plugin-promise": "^7.1.0",
|
|
70
|
+
"eslint-plugin-unused-imports": "^3.2.0",
|
|
71
|
+
"eslint-plugin-yml": "^1.15.0",
|
|
72
|
+
"eslint-webpack-plugin": "^4.2.0",
|
|
73
|
+
"execa": "^9.5.1",
|
|
74
|
+
"file-loader": "^6.2.0",
|
|
75
|
+
"fork-ts-checker-webpack-plugin": "^9.0.2",
|
|
76
|
+
"glob": "^11.0.0",
|
|
77
|
+
"handlebars": "^4.7.8",
|
|
78
|
+
"handlebars-helpers": "^0.10.0",
|
|
79
|
+
"html-loader": "^5.1.0",
|
|
80
|
+
"html-webpack-plugin": "^5.6.3",
|
|
81
|
+
"json-loader": "^0.5.7",
|
|
82
|
+
"lodash": "^4.17.21",
|
|
83
|
+
"mini-css-extract-plugin": "^2.9.2",
|
|
84
|
+
"node-notifier": "^10.0.1",
|
|
85
|
+
"portfinder": "^1.0.32",
|
|
86
|
+
"postcss": "^8.4.49",
|
|
87
|
+
"postcss-custom-properties": "^14.0.4",
|
|
88
|
+
"postcss-import": "^16.1.1",
|
|
89
|
+
"postcss-loader": "^8.1.1",
|
|
90
|
+
"postcss-nested": "^7.0.2",
|
|
91
|
+
"prettier": "^3.3.3",
|
|
92
|
+
"prompts": "^2.4.2",
|
|
93
|
+
"react-refresh": "^0.14.2",
|
|
94
|
+
"resolve-url-loader": "^5.0.0",
|
|
95
|
+
"sass": "^1.81.0",
|
|
96
|
+
"sass-loader": "^16.0.3",
|
|
97
|
+
"source-map-loader": "^5.0.0",
|
|
98
|
+
"strip-indent": "^4.0.0",
|
|
99
|
+
"style-loader": "^4.0.0",
|
|
100
|
+
"tsconfig-paths-webpack-plugin": "^4.2.0",
|
|
101
|
+
"tsup": "^8.3.5",
|
|
102
|
+
"typescript": "^5.7.2",
|
|
103
|
+
"url-loader": "^4.1.1",
|
|
104
|
+
"vitest": "^3.2.4",
|
|
105
|
+
"webpack": "^5.96.1",
|
|
106
|
+
"webpack-cli": "^5.1.4",
|
|
107
|
+
"webpack-config-utils": "^2.3.1",
|
|
108
|
+
"webpack-dev-server": "^5.1.0",
|
|
109
|
+
"yaml-loader": "^0.8.1"
|
|
110
|
+
}
|
|
111
|
+
}
|