@raisenow/tamaro-cli 1.7.0-dev.0 → 1.7.0-dev.2
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/.eslintignore +7 -0
- package/.eslintrc.cjs +148 -0
- 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-ALQDGTID.js → .history/dist/chunk-FICM3HUI_20230912201610.js} +45 -150
- 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 -0
- package/.prettierignore +8 -0
- package/.prettierrc.cjs +19 -0
- package/bitbucket-pipelines.yml +47 -0
- package/dist/cli.js +768 -1461
- package/dist/env-Bx5mwt8E.js +254 -0
- package/dist/webpack.config.js +308 -443
- package/package.json +28 -39
- package/renovate.json +3 -0
- package/tsdown.config.ts +13 -0
- package/vitest.config.ts +20 -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";
|
|
@@ -74,7 +45,6 @@ import { basename, dirname, join, relative, resolve } from "path";
|
|
|
74
45
|
import chalk2 from "chalk";
|
|
75
46
|
import stripIndent2 from "strip-indent";
|
|
76
47
|
import { getIfUtils } from "webpack-config-utils";
|
|
77
|
-
import { z } from "zod";
|
|
78
48
|
var require2 = createRequire(import.meta.url);
|
|
79
49
|
var moduleFileExtensions = ["ts", "tsx", "js", "jsx"];
|
|
80
50
|
var extensions = moduleFileExtensions.map((v) => `.${v}`);
|
|
@@ -92,24 +62,6 @@ var resolveModule = (resolveFn, filePath) => {
|
|
|
92
62
|
}
|
|
93
63
|
return resolveFn(`${filePath}.js`);
|
|
94
64
|
};
|
|
95
|
-
var resolveEslintPluginConfig = (paths) => {
|
|
96
|
-
try {
|
|
97
|
-
const opts = { paths: [paths.appNodeModules] };
|
|
98
|
-
const eslintPath = require2.resolve("eslint", opts);
|
|
99
|
-
const pkg = require2(require2.resolve("eslint/package.json", opts));
|
|
100
|
-
const version = pkg.version;
|
|
101
|
-
const configType = version.startsWith("8.") ? "eslintrc" : "flat";
|
|
102
|
-
return {
|
|
103
|
-
extensions: moduleFileExtensions,
|
|
104
|
-
eslintPath,
|
|
105
|
-
cwd: paths.app,
|
|
106
|
-
configType
|
|
107
|
-
};
|
|
108
|
-
} catch (error) {
|
|
109
|
-
console.error(error);
|
|
110
|
-
return void 0;
|
|
111
|
-
}
|
|
112
|
-
};
|
|
113
65
|
var resolveBin = (name) => {
|
|
114
66
|
const pkgPath = require2.resolve(`${name}/package.json`);
|
|
115
67
|
const { bin } = require2(pkgPath);
|
|
@@ -140,7 +92,6 @@ var getPaths = (ifCore) => {
|
|
|
140
92
|
appTsConfig: resolveApp("tsconfig.json"),
|
|
141
93
|
appHtml: resolveApp("*.html"),
|
|
142
94
|
appEnv: resolveApp(".env*"),
|
|
143
|
-
configYml: resolveApp("config.yml"),
|
|
144
95
|
appTailwindConfig: void 0
|
|
145
96
|
}
|
|
146
97
|
);
|
|
@@ -154,19 +105,14 @@ var getRelativePaths = (paths) => {
|
|
|
154
105
|
}
|
|
155
106
|
return relativePaths;
|
|
156
107
|
};
|
|
157
|
-
var getIfCoreFns = ({
|
|
158
|
-
allowArchived = false
|
|
159
|
-
} = {}) => {
|
|
108
|
+
var getIfCoreFns = () => {
|
|
160
109
|
const corePkgPath = resolveApp("package.json");
|
|
161
110
|
const configsPkgPath = resolveApp("../../package.json");
|
|
162
|
-
const archivedConfigsPkgPath = resolveApp("../../../package.json");
|
|
163
111
|
let packageName;
|
|
164
112
|
if (existsSync(corePkgPath)) {
|
|
165
113
|
packageName = require2(corePkgPath).name;
|
|
166
114
|
} else if (existsSync(configsPkgPath)) {
|
|
167
115
|
packageName = require2(configsPkgPath).name;
|
|
168
|
-
} else if (allowArchived && existsSync(archivedConfigsPkgPath)) {
|
|
169
|
-
packageName = require2(archivedConfigsPkgPath).name;
|
|
170
116
|
}
|
|
171
117
|
if (packageName) {
|
|
172
118
|
return getIfUtils({ core: TAMARO_CORE_PACKAGE_NAMES.includes(packageName) }, [
|
|
@@ -187,74 +133,36 @@ var getIfCoreFns = ({
|
|
|
187
133
|
);
|
|
188
134
|
process.exit(1);
|
|
189
135
|
};
|
|
190
|
-
var resolveAccountUuidFromConfig = (rawConfig, field) => {
|
|
191
|
-
const epmsConfig = z.object({
|
|
192
|
-
[field]: z.record(z.string(), z.unknown())
|
|
193
|
-
}).safeParse(rawConfig);
|
|
194
|
-
if (!epmsConfig.success) {
|
|
195
|
-
return void 0;
|
|
196
|
-
}
|
|
197
|
-
const configContent = epmsConfig.data[field];
|
|
198
|
-
const accountUuid = configContent.account_mapping ?? configContent.account_uuid;
|
|
199
|
-
const accountUuidValidation = z.uuid().safeParse(accountUuid);
|
|
200
|
-
if (!accountUuidValidation.success) {
|
|
201
|
-
halt(
|
|
202
|
-
stripIndent2(
|
|
203
|
-
`Could not extract EPMS account UUID(s) from config.yml. Please ensure that the "${field}" field is correctly formatted. Expected formats:
|
|
204
|
-
1. ${field}:
|
|
205
|
-
account_uuid: <UUID>
|
|
206
|
-
|
|
207
|
-
2. ${field}:
|
|
208
|
-
account_mapping: <UUID>
|
|
209
|
-
`
|
|
210
|
-
)
|
|
211
|
-
);
|
|
212
|
-
}
|
|
213
|
-
return accountUuidValidation.data;
|
|
214
|
-
};
|
|
215
|
-
var TAMARO_VERSION_IN_URL_REGEX = /tamaro-core\/(.*)\/index.js/;
|
|
216
|
-
var extractTamaroVersionFromUrl = (url) => {
|
|
217
|
-
const match = url.match(TAMARO_VERSION_IN_URL_REGEX);
|
|
218
|
-
if (match) {
|
|
219
|
-
return match[1].toString();
|
|
220
|
-
}
|
|
221
|
-
};
|
|
222
|
-
var resolveCoreVersion = () => {
|
|
223
|
-
if (process.env.CORE_VERSION) {
|
|
224
|
-
return process.env.CORE_VERSION;
|
|
225
|
-
}
|
|
226
|
-
if (process.env.CORE_URL) {
|
|
227
|
-
return extractTamaroVersionFromUrl(process.env.CORE_URL);
|
|
228
|
-
}
|
|
229
|
-
return void 0;
|
|
230
|
-
};
|
|
231
|
-
|
|
232
|
-
// src/lib/constants.ts
|
|
233
|
-
import envPaths from "env-paths";
|
|
234
|
-
var DEFAULT_TAG = "latest";
|
|
235
|
-
var DEFAULT_PORT = 1234;
|
|
236
|
-
var AWS_S3_BUCKET_TAMARO = "tamaro.raisenow.com";
|
|
237
|
-
var AWS_S3_BUCKET_TAMARO_EMAIL_CONFIG_STAGE = "rnw-stage-email-service";
|
|
238
|
-
var AWS_S3_BUCKET_TAMARO_EMAIL_CONFIG_PROD = "rnw-email-service";
|
|
239
|
-
var EPMS_API_BASE_URL_STAGE = "https://api.stage.mesos.raisenow.net";
|
|
240
|
-
var EPMS_API_BASE_URL_PROD = "https://api.raisenow.io";
|
|
241
|
-
var CORE_CONFIG_NAME = "tamaro-core";
|
|
242
|
-
var AWS_CLOUDFRONT_DISTRIBUTION_ID = "EHJ1OM458YQ0I";
|
|
243
|
-
var HTTPS_CRT_FILE = "localhost.crt";
|
|
244
|
-
var HTTPS_KEY_FILE = "localhost.key";
|
|
245
|
-
var CACHE_DIR = envPaths("tamaro-cli", { suffix: "" }).cache;
|
|
246
136
|
|
|
247
137
|
// src/lib/env.ts
|
|
248
138
|
import { createRequire as createRequire2 } from "module";
|
|
249
139
|
import { basename as basename2 } from "path";
|
|
250
140
|
import { config as dotenvConfig } from "dotenv";
|
|
141
|
+
import { expand as dotenvExpand } from "dotenv-expand";
|
|
251
142
|
import { globSync } from "glob";
|
|
252
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
|
|
253
161
|
var require3 = createRequire2(import.meta.url);
|
|
254
162
|
var getEnvVars = (files, ifMin, ifCore, ifLocalCore, ifHttps) => {
|
|
255
163
|
const filePath = files.find((file) => basename2(file) === ".env");
|
|
256
164
|
if (filePath) {
|
|
257
|
-
dotenvConfig({ path: filePath });
|
|
165
|
+
dotenvExpand(dotenvConfig({ path: filePath }));
|
|
258
166
|
}
|
|
259
167
|
process.env.NODE_ENV ??= ifMin("production", "development");
|
|
260
168
|
process.env.BABEL_ENV ??= ifMin("production", "development");
|
|
@@ -281,11 +189,7 @@ var getEnvVars = (files, ifMin, ifCore, ifLocalCore, ifHttps) => {
|
|
|
281
189
|
} else {
|
|
282
190
|
let version = process.env.CORE_VERSION;
|
|
283
191
|
version = version ? `@${version}` : "";
|
|
284
|
-
process.env.
|
|
285
|
-
process.env.CORE_URL ??= process.env.CORE_URL_PATTERN.replace(
|
|
286
|
-
"{{version}}",
|
|
287
|
-
version
|
|
288
|
-
);
|
|
192
|
+
process.env.CORE_URL ??= `https://cdn.jsdelivr.net/npm/@raisenow/tamaro-core${version}/dist/index.js`;
|
|
289
193
|
}
|
|
290
194
|
}
|
|
291
195
|
const varNames = [
|
|
@@ -303,10 +207,8 @@ var getEnvVars = (files, ifMin, ifCore, ifLocalCore, ifHttps) => {
|
|
|
303
207
|
// config
|
|
304
208
|
"WIDGET_UUID",
|
|
305
209
|
"CORE_URL",
|
|
306
|
-
"CORE_URL_PATTERN",
|
|
307
210
|
"CORE_VERSION",
|
|
308
211
|
// should be explicitly specified in each config
|
|
309
|
-
"DISABLE_URL_VERSION_OVERRIDE",
|
|
310
212
|
// epik (obsolete since Tamaro v2.5.0)
|
|
311
213
|
"EPP_API_KEY_DEFAULT",
|
|
312
214
|
"EPP_API_URL_STAGE",
|
|
@@ -365,42 +267,35 @@ var applyEnv = (env) => {
|
|
|
365
267
|
const files = globSync(paths.appEnv);
|
|
366
268
|
const filePath = files.find((file) => basename2(file) === `.env.${env}`);
|
|
367
269
|
if (filePath) {
|
|
368
|
-
dotenvConfig({ path: filePath });
|
|
270
|
+
dotenvExpand(dotenvConfig({ path: filePath }));
|
|
369
271
|
}
|
|
370
272
|
};
|
|
371
273
|
|
|
372
274
|
export {
|
|
373
275
|
logTitle,
|
|
374
276
|
logError,
|
|
375
|
-
logSuccess,
|
|
376
277
|
logCommand,
|
|
377
278
|
logDataTable,
|
|
378
279
|
halt,
|
|
379
280
|
runCommandSync,
|
|
380
|
-
|
|
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,
|
|
381
291
|
extensions,
|
|
382
292
|
resolveApp,
|
|
383
293
|
resolveOwn,
|
|
384
|
-
resolveEslintPluginConfig,
|
|
385
294
|
resolveBin,
|
|
386
295
|
getWidgetUuid,
|
|
387
296
|
getPaths,
|
|
388
297
|
getRelativePaths,
|
|
389
298
|
getIfCoreFns,
|
|
390
|
-
resolveAccountUuidFromConfig,
|
|
391
|
-
resolveCoreVersion,
|
|
392
|
-
DEFAULT_TAG,
|
|
393
|
-
DEFAULT_PORT,
|
|
394
|
-
AWS_S3_BUCKET_TAMARO,
|
|
395
|
-
AWS_S3_BUCKET_TAMARO_EMAIL_CONFIG_STAGE,
|
|
396
|
-
AWS_S3_BUCKET_TAMARO_EMAIL_CONFIG_PROD,
|
|
397
|
-
EPMS_API_BASE_URL_STAGE,
|
|
398
|
-
EPMS_API_BASE_URL_PROD,
|
|
399
|
-
CORE_CONFIG_NAME,
|
|
400
|
-
AWS_CLOUDFRONT_DISTRIBUTION_ID,
|
|
401
|
-
HTTPS_CRT_FILE,
|
|
402
|
-
HTTPS_KEY_FILE,
|
|
403
|
-
CACHE_DIR,
|
|
404
299
|
getEnvVars,
|
|
405
300
|
assertEnvValid,
|
|
406
301
|
applyEnv
|