keycloakify 11.6.1 → 11.7.0
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/bin/{653.index.js → 288.index.js} +221 -201
- package/bin/313.index.js +377 -0
- package/bin/{174.index.js → 33.index.js} +37 -2
- package/bin/{615.index.js → 355.index.js} +353 -102
- package/bin/363.index.js +1537 -0
- package/bin/453.index.js +6 -42
- package/bin/{503.index.js → 678.index.js} +577 -53
- package/bin/{921.index.js → 780.index.js} +54 -45
- package/bin/880.index.js +206 -21
- package/bin/9.index.js +850 -0
- package/bin/{525.index.js → 911.index.js} +1302 -2
- package/bin/930.index.js +164 -0
- package/bin/946.index.js +20 -0
- package/bin/{153.index.js → 947.index.js} +22 -797
- package/bin/main.js +61 -19
- package/bin/{eject-file.d.ts → own.d.ts} +2 -1
- package/bin/shared/{addPostinstallScriptIfNotPresent.d.ts → initializeSpa/addSyncExtensionsToPostinstallScript.d.ts} +1 -1
- package/bin/shared/initializeSpa/index.d.ts +1 -0
- package/bin/shared/initializeSpa/initializeSpa.d.ts +9 -0
- package/bin/{postinstall/uiModuleMeta.d.ts → sync-extensions/extensionModuleMeta.d.ts} +5 -5
- package/bin/sync-extensions/getExtensionModuleFileSourceCodeReadyToBeCopied.d.ts +12 -0
- package/bin/sync-extensions/index.d.ts +1 -0
- package/bin/{postinstall/installUiModulesPeerDependencies.d.ts → sync-extensions/installExtensionModulesPeerDependencies.d.ts} +3 -3
- package/bin/{postinstall → sync-extensions}/managedGitignoreFile.d.ts +4 -4
- package/bin/tools/getInstalledModuleDirPath.d.ts +0 -1
- package/bin/tools/isKnownByGit.d.ts +3 -0
- package/bin/tools/isRootPath.d.ts +1 -0
- package/bin/tools/listInstalledModules.d.ts +0 -1
- package/package.json +41 -63
- package/src/bin/eject-page.ts +8 -84
- package/src/bin/initialize-account-theme/initialize-account-theme.ts +15 -14
- package/src/bin/initialize-admin-theme.ts +17 -124
- package/src/bin/initialize-email-theme.ts +10 -34
- package/src/bin/keycloakify/generateResources/generateResources.ts +49 -21
- package/src/bin/main.ts +61 -16
- package/src/bin/own.ts +208 -0
- package/src/bin/shared/{addPostinstallScriptIfNotPresent.ts → initializeSpa/addSyncExtensionsToPostinstallScript.ts} +4 -4
- package/src/bin/shared/initializeSpa/index.ts +1 -0
- package/src/bin/shared/initializeSpa/initializeSpa.ts +149 -0
- package/src/bin/{postinstall/uiModuleMeta.ts → sync-extensions/extensionModuleMeta.ts} +48 -43
- package/src/bin/{postinstall/getUiModuleFileSourceCodeReadyToBeCopied.ts → sync-extensions/getExtensionModuleFileSourceCodeReadyToBeCopied.ts} +32 -21
- package/src/bin/sync-extensions/index.ts +1 -0
- package/src/bin/{postinstall/installUiModulesPeerDependencies.ts → sync-extensions/installExtensionModulesPeerDependencies.ts} +15 -13
- package/src/bin/{postinstall → sync-extensions}/managedGitignoreFile.ts +18 -18
- package/src/bin/{postinstall/postinstall.ts → sync-extensions/sync-extension.ts} +14 -26
- package/src/bin/tools/getInstalledModuleDirPath.ts +24 -22
- package/src/bin/tools/isKnownByGit.ts +45 -0
- package/src/bin/tools/isRootPath.ts +22 -0
- package/src/bin/tools/listInstalledModules.ts +4 -6
- package/src/bin/tools/npmInstall.ts +1 -1
- package/src/bin/tools/untrackFromGit.ts +19 -3
- package/src/bin/tsconfig.json +1 -1
- package/bin/300.index.js +0 -770
- package/bin/375.index.js +0 -4089
- package/bin/490.index.js +0 -1108
- package/bin/568.index.js +0 -1867
- package/bin/735.index.js +0 -907
- package/bin/743.index.js +0 -69
- package/bin/854.index.js +0 -68
- package/bin/initialize-account-theme/copyBoilerplate.d.ts +0 -4
- package/bin/initialize-account-theme/initializeAccountTheme_multiPage.d.ts +0 -3
- package/bin/initialize-account-theme/initializeAccountTheme_singlePage.d.ts +0 -11
- package/bin/postinstall/getUiModuleFileSourceCodeReadyToBeCopied.d.ts +0 -12
- package/bin/postinstall/index.d.ts +0 -1
- package/bin/shared/getLatestsSemVersionedTag.d.ts +0 -15
- package/bin/shared/promptKeycloakVersion.d.ts +0 -10
- package/bin/tools/OptionalIfCanBeUndefined.d.ts +0 -14
- package/bin/tools/crc32.d.ts +0 -9
- package/bin/tools/deflate.d.ts +0 -24
- package/bin/tools/isTrackedByGit.d.ts +0 -3
- package/bin/tools/octokit-addons/getLatestsSemVersionedTag.d.ts +0 -15
- package/bin/tools/octokit-addons/listTags.d.ts +0 -13
- package/bin/tools/tee.d.ts +0 -3
- package/bin/tools/trimIndent.d.ts +0 -5
- package/src/bin/eject-file.ts +0 -68
- package/src/bin/initialize-account-theme/copyBoilerplate.ts +0 -32
- package/src/bin/initialize-account-theme/initializeAccountTheme_multiPage.ts +0 -21
- package/src/bin/initialize-account-theme/initializeAccountTheme_singlePage.ts +0 -142
- package/src/bin/initialize-account-theme/src/single-page/KcContext.ts +0 -7
- package/src/bin/initialize-account-theme/src/single-page/KcPage.tsx +0 -11
- package/src/bin/postinstall/index.ts +0 -1
- package/src/bin/shared/getLatestsSemVersionedTag.ts +0 -201
- package/src/bin/shared/promptKeycloakVersion.ts +0 -72
- package/src/bin/tools/OptionalIfCanBeUndefined.ts +0 -12
- package/src/bin/tools/crc32.ts +0 -73
- package/src/bin/tools/deflate.ts +0 -61
- package/src/bin/tools/isTrackedByGit.ts +0 -29
- package/src/bin/tools/octokit-addons/getLatestsSemVersionedTag.ts +0 -47
- package/src/bin/tools/octokit-addons/listTags.ts +0 -60
- package/src/bin/tools/tee.ts +0 -39
- package/src/bin/tools/trimIndent.ts +0 -49
- /package/bin/{postinstall/postinstall.d.ts → sync-extensions/sync-extension.d.ts} +0 -0
- /package/src/bin/initialize-account-theme/{src/multi-page → multi-page-boilerplate}/KcContext.ts +0 -0
- /package/src/bin/initialize-account-theme/{src/multi-page → multi-page-boilerplate}/KcPage.tsx +0 -0
- /package/src/bin/initialize-account-theme/{src/multi-page → multi-page-boilerplate}/KcPageStory.tsx +0 -0
- /package/src/bin/initialize-account-theme/{src/multi-page → multi-page-boilerplate}/i18n.ts +0 -0
package/bin/9.index.js
ADDED
@@ -0,0 +1,850 @@
|
|
1
|
+
"use strict";
|
2
|
+
exports.id = 9;
|
3
|
+
exports.ids = [9];
|
4
|
+
exports.modules = {
|
5
|
+
|
6
|
+
/***/ 28434:
|
7
|
+
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
8
|
+
|
9
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
10
|
+
/* harmony export */ "z": () => (/* binding */ getSupportedDockerImageTags)
|
11
|
+
/* harmony export */ });
|
12
|
+
/* harmony import */ var make_fetch_happen__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(9525);
|
13
|
+
/* harmony import */ var make_fetch_happen__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(make_fetch_happen__WEBPACK_IMPORTED_MODULE_0__);
|
14
|
+
/* harmony import */ var tsafe_assert__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(29041);
|
15
|
+
/* harmony import */ var tsafe_id__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(38469);
|
16
|
+
/* harmony import */ var zod__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(52300);
|
17
|
+
/* harmony import */ var _tools_SemVer__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(12171);
|
18
|
+
/* harmony import */ var tsafe_exclude__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(83101);
|
19
|
+
/* harmony import */ var _realmConfig_defaultConfig__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(88984);
|
20
|
+
/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(71017);
|
21
|
+
/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(path__WEBPACK_IMPORTED_MODULE_4__);
|
22
|
+
/* harmony import */ var fs_promises__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(73292);
|
23
|
+
/* harmony import */ var fs_promises__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(fs_promises__WEBPACK_IMPORTED_MODULE_5__);
|
24
|
+
/* harmony import */ var _tools_fs_existsAsync__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(43765);
|
25
|
+
/* harmony import */ var _tools_readThisNpmPackageVersion__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(64795);
|
26
|
+
|
27
|
+
|
28
|
+
|
29
|
+
|
30
|
+
|
31
|
+
|
32
|
+
|
33
|
+
|
34
|
+
|
35
|
+
|
36
|
+
|
37
|
+
tsafe_assert__WEBPACK_IMPORTED_MODULE_1__/* .assert */ .h;
|
38
|
+
async function getSupportedDockerImageTags(params) {
|
39
|
+
const { buildContext } = params;
|
40
|
+
{
|
41
|
+
const result = await getCachedValue({ cacheDirPath: buildContext.cacheDirPath });
|
42
|
+
if (result !== undefined) {
|
43
|
+
return result;
|
44
|
+
}
|
45
|
+
}
|
46
|
+
const tags_queryResponse = [];
|
47
|
+
await (async function callee(url) {
|
48
|
+
const r = await make_fetch_happen__WEBPACK_IMPORTED_MODULE_0___default()(url, buildContext.fetchOptions);
|
49
|
+
await Promise.all([
|
50
|
+
(async () => {
|
51
|
+
tags_queryResponse.push(...zod__WEBPACK_IMPORTED_MODULE_8__.z.object({
|
52
|
+
tags: zod__WEBPACK_IMPORTED_MODULE_8__.z.array(zod__WEBPACK_IMPORTED_MODULE_8__.z.string())
|
53
|
+
})
|
54
|
+
.parse(await r.json()).tags);
|
55
|
+
})(),
|
56
|
+
(async () => {
|
57
|
+
const link = r.headers.get("link");
|
58
|
+
if (link === null) {
|
59
|
+
return;
|
60
|
+
}
|
61
|
+
const split = link.split(";").map(s => s.trim());
|
62
|
+
(0,tsafe_assert__WEBPACK_IMPORTED_MODULE_1__/* .assert */ .h)(split.length === 2);
|
63
|
+
(0,tsafe_assert__WEBPACK_IMPORTED_MODULE_1__/* .assert */ .h)(split[1] === 'rel="next"');
|
64
|
+
const match = split[0].match(/^<(.+)>$/);
|
65
|
+
(0,tsafe_assert__WEBPACK_IMPORTED_MODULE_1__/* .assert */ .h)(match !== null);
|
66
|
+
const nextUrl = new URL(url).origin + match[1];
|
67
|
+
await callee(nextUrl);
|
68
|
+
})()
|
69
|
+
]);
|
70
|
+
})("https://quay.io/v2/keycloak/keycloak/tags/list");
|
71
|
+
const supportedKeycloakMajorVersions = (0,_realmConfig_defaultConfig__WEBPACK_IMPORTED_MODULE_3__/* .getSupportedKeycloakMajorVersions */ .Z)();
|
72
|
+
const allSupportedTags_withVersion = tags_queryResponse
|
73
|
+
.map(tag => ({
|
74
|
+
tag,
|
75
|
+
version: (() => {
|
76
|
+
if (tag.includes("-")) {
|
77
|
+
return undefined;
|
78
|
+
}
|
79
|
+
let version;
|
80
|
+
try {
|
81
|
+
version = _tools_SemVer__WEBPACK_IMPORTED_MODULE_2__/* .SemVer.parse */ .h.parse(tag);
|
82
|
+
}
|
83
|
+
catch (_a) {
|
84
|
+
return undefined;
|
85
|
+
}
|
86
|
+
if (tag.split(".").length !== 3) {
|
87
|
+
return undefined;
|
88
|
+
}
|
89
|
+
if (!supportedKeycloakMajorVersions.includes(version.major)) {
|
90
|
+
return undefined;
|
91
|
+
}
|
92
|
+
return version;
|
93
|
+
})()
|
94
|
+
}))
|
95
|
+
.map(({ tag, version }) => (version === undefined ? undefined : { tag, version }))
|
96
|
+
.filter((0,tsafe_exclude__WEBPACK_IMPORTED_MODULE_9__/* .exclude */ .D)(undefined))
|
97
|
+
.sort(({ version: a }, { version: b }) => _tools_SemVer__WEBPACK_IMPORTED_MODULE_2__/* .SemVer.compare */ .h.compare(b, a));
|
98
|
+
const latestTagByMajor = {};
|
99
|
+
for (const { version } of allSupportedTags_withVersion) {
|
100
|
+
const version_current = latestTagByMajor[version.major];
|
101
|
+
if (version_current === undefined ||
|
102
|
+
_tools_SemVer__WEBPACK_IMPORTED_MODULE_2__/* .SemVer.compare */ .h.compare(version_current, version) === -1) {
|
103
|
+
latestTagByMajor[version.major] = version;
|
104
|
+
}
|
105
|
+
}
|
106
|
+
const latestMajorTags = Object.entries(latestTagByMajor)
|
107
|
+
.sort(([a], [b]) => parseInt(b) - parseInt(a))
|
108
|
+
.map(([, version]) => version)
|
109
|
+
.map(version => {
|
110
|
+
(0,tsafe_assert__WEBPACK_IMPORTED_MODULE_1__/* .assert */ .h)(version !== undefined);
|
111
|
+
if (!supportedKeycloakMajorVersions.includes(version.major)) {
|
112
|
+
return undefined;
|
113
|
+
}
|
114
|
+
return _tools_SemVer__WEBPACK_IMPORTED_MODULE_2__/* .SemVer.stringify */ .h.stringify(version);
|
115
|
+
})
|
116
|
+
.filter((0,tsafe_exclude__WEBPACK_IMPORTED_MODULE_9__/* .exclude */ .D)(undefined));
|
117
|
+
const allSupportedTags = allSupportedTags_withVersion.map(({ tag }) => tag);
|
118
|
+
const result = {
|
119
|
+
latestMajorTags,
|
120
|
+
allSupportedTags
|
121
|
+
};
|
122
|
+
await setCachedValue({ cacheDirPath: buildContext.cacheDirPath, result });
|
123
|
+
return result;
|
124
|
+
}
|
125
|
+
const { getCachedValue, setCachedValue } = (() => {
|
126
|
+
const zResult = (() => {
|
127
|
+
const zTargetType = zod__WEBPACK_IMPORTED_MODULE_8__.z.object({
|
128
|
+
allSupportedTags: zod__WEBPACK_IMPORTED_MODULE_8__.z.array(zod__WEBPACK_IMPORTED_MODULE_8__.z.string()),
|
129
|
+
latestMajorTags: zod__WEBPACK_IMPORTED_MODULE_8__.z.array(zod__WEBPACK_IMPORTED_MODULE_8__.z.string())
|
130
|
+
});
|
131
|
+
tsafe_assert__WEBPACK_IMPORTED_MODULE_1__/* .assert */ .h;
|
132
|
+
return (0,tsafe_id__WEBPACK_IMPORTED_MODULE_10__.id)(zTargetType);
|
133
|
+
})();
|
134
|
+
const zCache = (() => {
|
135
|
+
const zTargetType = zod__WEBPACK_IMPORTED_MODULE_8__.z.object({
|
136
|
+
keycloakifyVersion: zod__WEBPACK_IMPORTED_MODULE_8__.z.string(),
|
137
|
+
time: zod__WEBPACK_IMPORTED_MODULE_8__.z.number(),
|
138
|
+
result: zResult
|
139
|
+
});
|
140
|
+
tsafe_assert__WEBPACK_IMPORTED_MODULE_1__/* .assert */ .h;
|
141
|
+
return (0,tsafe_id__WEBPACK_IMPORTED_MODULE_10__.id)(zTargetType);
|
142
|
+
})();
|
143
|
+
let inMemoryCachedResult = undefined;
|
144
|
+
function getCacheFilePath(params) {
|
145
|
+
const { cacheDirPath } = params;
|
146
|
+
return (0,path__WEBPACK_IMPORTED_MODULE_4__.join)(cacheDirPath, "supportedDockerImageTags.json");
|
147
|
+
}
|
148
|
+
async function getCachedValue(params) {
|
149
|
+
const { cacheDirPath } = params;
|
150
|
+
if (inMemoryCachedResult !== undefined) {
|
151
|
+
return inMemoryCachedResult;
|
152
|
+
}
|
153
|
+
const cacheFilePath = getCacheFilePath({ cacheDirPath });
|
154
|
+
if (!(await (0,_tools_fs_existsAsync__WEBPACK_IMPORTED_MODULE_6__/* .existsAsync */ .o)(cacheFilePath))) {
|
155
|
+
return undefined;
|
156
|
+
}
|
157
|
+
let cache;
|
158
|
+
try {
|
159
|
+
cache = zCache.parse(JSON.parse(await fs_promises__WEBPACK_IMPORTED_MODULE_5__.readFile(cacheFilePath, "utf8")));
|
160
|
+
}
|
161
|
+
catch (_a) {
|
162
|
+
return undefined;
|
163
|
+
}
|
164
|
+
if (cache.keycloakifyVersion !== (0,_tools_readThisNpmPackageVersion__WEBPACK_IMPORTED_MODULE_7__/* .readThisNpmPackageVersion */ .K)()) {
|
165
|
+
return undefined;
|
166
|
+
}
|
167
|
+
if (Date.now() - cache.time > 3600 * 24) {
|
168
|
+
return undefined;
|
169
|
+
}
|
170
|
+
inMemoryCachedResult = cache.result;
|
171
|
+
return cache.result;
|
172
|
+
}
|
173
|
+
async function setCachedValue(params) {
|
174
|
+
const { cacheDirPath, result } = params;
|
175
|
+
inMemoryCachedResult = result;
|
176
|
+
const cacheFilePath = getCacheFilePath({ cacheDirPath });
|
177
|
+
{
|
178
|
+
const dirPath = (0,path__WEBPACK_IMPORTED_MODULE_4__.dirname)(cacheFilePath);
|
179
|
+
if (!(await (0,_tools_fs_existsAsync__WEBPACK_IMPORTED_MODULE_6__/* .existsAsync */ .o)(dirPath))) {
|
180
|
+
await fs_promises__WEBPACK_IMPORTED_MODULE_5__.mkdir(dirPath, { recursive: true });
|
181
|
+
}
|
182
|
+
}
|
183
|
+
await fs_promises__WEBPACK_IMPORTED_MODULE_5__.writeFile(cacheFilePath, JSON.stringify(zCache.parse({
|
184
|
+
keycloakifyVersion: (0,_tools_readThisNpmPackageVersion__WEBPACK_IMPORTED_MODULE_7__/* .readThisNpmPackageVersion */ .K)(),
|
185
|
+
time: Date.now(),
|
186
|
+
result
|
187
|
+
}), null, 2));
|
188
|
+
}
|
189
|
+
return {
|
190
|
+
getCachedValue,
|
191
|
+
setCachedValue
|
192
|
+
};
|
193
|
+
})();
|
194
|
+
//# sourceMappingURL=getSupportedDockerImageTags.js.map
|
195
|
+
|
196
|
+
/***/ }),
|
197
|
+
|
198
|
+
/***/ 96709:
|
199
|
+
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
200
|
+
|
201
|
+
|
202
|
+
// EXPORTS
|
203
|
+
__webpack_require__.d(__webpack_exports__, {
|
204
|
+
"X": () => (/* binding */ readRealmJsonFile)
|
205
|
+
});
|
206
|
+
|
207
|
+
// EXTERNAL MODULE: ./node_modules/tsafe/esm/assert.mjs + 1 modules
|
208
|
+
var assert = __webpack_require__(29041);
|
209
|
+
// EXTERNAL MODULE: ./node_modules/tsafe/esm/is.mjs
|
210
|
+
var is = __webpack_require__(16453);
|
211
|
+
// EXTERNAL MODULE: external "fs"
|
212
|
+
var external_fs_ = __webpack_require__(57147);
|
213
|
+
// EXTERNAL MODULE: ./node_modules/zod/lib/index.mjs
|
214
|
+
var lib = __webpack_require__(52300);
|
215
|
+
// EXTERNAL MODULE: ./node_modules/tsafe/esm/id.mjs
|
216
|
+
var id = __webpack_require__(38469);
|
217
|
+
;// CONCATENATED MODULE: ./dist/bin/start-keycloak/realmConfig/ParsedRealmJson/ParsedRealmJson.js
|
218
|
+
|
219
|
+
|
220
|
+
|
221
|
+
const zParsedRealmJson = (() => {
|
222
|
+
const zTargetType = lib.z.object({
|
223
|
+
realm: lib.z.string(),
|
224
|
+
loginTheme: lib.z.string().optional(),
|
225
|
+
accountTheme: lib.z.string().optional(),
|
226
|
+
adminTheme: lib.z.string().optional(),
|
227
|
+
emailTheme: lib.z.string().optional(),
|
228
|
+
eventsListeners: lib.z.array(lib.z.string()),
|
229
|
+
users: lib.z.array(lib.z.object({
|
230
|
+
id: lib.z.string(),
|
231
|
+
email: lib.z.string(),
|
232
|
+
username: lib.z.string(),
|
233
|
+
credentials: lib.z.array(lib.z.object({
|
234
|
+
type: lib.z.string()
|
235
|
+
})),
|
236
|
+
clientRoles: lib.z.record(lib.z.array(lib.z.string())).optional()
|
237
|
+
})),
|
238
|
+
roles: lib.z.object({
|
239
|
+
client: lib.z.record(lib.z.array(lib.z.object({
|
240
|
+
name: lib.z.string(),
|
241
|
+
containerId: lib.z.string()
|
242
|
+
})))
|
243
|
+
}),
|
244
|
+
clients: lib.z.array(lib.z.object({
|
245
|
+
id: lib.z.string(),
|
246
|
+
clientId: lib.z.string(),
|
247
|
+
baseUrl: lib.z.string().optional(),
|
248
|
+
redirectUris: lib.z.array(lib.z.string()).optional(),
|
249
|
+
webOrigins: lib.z.array(lib.z.string()).optional(),
|
250
|
+
attributes: lib.z.object({
|
251
|
+
"post.logout.redirect.uris": lib.z.string().optional()
|
252
|
+
})
|
253
|
+
.optional(),
|
254
|
+
protocol: lib.z.string().optional(),
|
255
|
+
protocolMappers: lib.z.array(lib.z.object({
|
256
|
+
id: lib.z.string(),
|
257
|
+
name: lib.z.string(),
|
258
|
+
protocol: lib.z.string(),
|
259
|
+
protocolMapper: lib.z.string(),
|
260
|
+
consentRequired: lib.z.boolean(),
|
261
|
+
config: lib.z.record(lib.z.string()).optional()
|
262
|
+
}))
|
263
|
+
.optional()
|
264
|
+
}))
|
265
|
+
});
|
266
|
+
assert/* assert */.h;
|
267
|
+
return (0,id.id)(zTargetType);
|
268
|
+
})();
|
269
|
+
//# sourceMappingURL=ParsedRealmJson.js.map
|
270
|
+
;// CONCATENATED MODULE: ./dist/bin/start-keycloak/realmConfig/ParsedRealmJson/readRealmJsonFile.js
|
271
|
+
|
272
|
+
|
273
|
+
|
274
|
+
|
275
|
+
function readRealmJsonFile(params) {
|
276
|
+
const { realmJsonFilePath } = params;
|
277
|
+
const parsedRealmJson = JSON.parse(external_fs_.readFileSync(realmJsonFilePath).toString("utf8"));
|
278
|
+
zParsedRealmJson.parse(parsedRealmJson);
|
279
|
+
(0,assert/* assert */.h)((0,is.is)(parsedRealmJson));
|
280
|
+
return parsedRealmJson;
|
281
|
+
}
|
282
|
+
//# sourceMappingURL=readRealmJsonFile.js.map
|
283
|
+
|
284
|
+
/***/ }),
|
285
|
+
|
286
|
+
/***/ 88984:
|
287
|
+
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
288
|
+
|
289
|
+
|
290
|
+
// EXPORTS
|
291
|
+
__webpack_require__.d(__webpack_exports__, {
|
292
|
+
"_": () => (/* reexport */ getDefaultConfig),
|
293
|
+
"Z": () => (/* reexport */ getSupportedKeycloakMajorVersions)
|
294
|
+
});
|
295
|
+
|
296
|
+
// EXTERNAL MODULE: external "path"
|
297
|
+
var external_path_ = __webpack_require__(71017);
|
298
|
+
// EXTERNAL MODULE: ./dist/bin/tools/getThisCodebaseRootDirPath.js
|
299
|
+
var getThisCodebaseRootDirPath = __webpack_require__(58822);
|
300
|
+
// EXTERNAL MODULE: external "fs"
|
301
|
+
var external_fs_ = __webpack_require__(57147);
|
302
|
+
// EXTERNAL MODULE: ./node_modules/tsafe/esm/exclude.mjs
|
303
|
+
var exclude = __webpack_require__(83101);
|
304
|
+
// EXTERNAL MODULE: ./node_modules/tsafe/esm/assert.mjs + 1 modules
|
305
|
+
var assert = __webpack_require__(29041);
|
306
|
+
// EXTERNAL MODULE: ./dist/bin/start-keycloak/realmConfig/ParsedRealmJson/readRealmJsonFile.js + 1 modules
|
307
|
+
var readRealmJsonFile = __webpack_require__(96709);
|
308
|
+
;// CONCATENATED MODULE: ./dist/bin/start-keycloak/realmConfig/defaultConfig/defaultConfig.js
|
309
|
+
|
310
|
+
|
311
|
+
|
312
|
+
|
313
|
+
|
314
|
+
|
315
|
+
function getDefaultRealmJsonFilePath(params) {
|
316
|
+
const { keycloakMajorVersionNumber } = params;
|
317
|
+
return (0,external_path_.join)((0,getThisCodebaseRootDirPath/* getThisCodebaseRootDirPath */.e)(), "src", "bin", "start-keycloak", "realmConfig", "defaultConfig", `realm-kc-${keycloakMajorVersionNumber}.json`);
|
318
|
+
}
|
319
|
+
const { getSupportedKeycloakMajorVersions } = (() => {
|
320
|
+
let cache = undefined;
|
321
|
+
function getSupportedKeycloakMajorVersions() {
|
322
|
+
if (cache !== undefined) {
|
323
|
+
return cache;
|
324
|
+
}
|
325
|
+
cache = external_fs_.readdirSync((0,external_path_.dirname)(getDefaultRealmJsonFilePath({ keycloakMajorVersionNumber: 0 })))
|
326
|
+
.map(fileBasename => {
|
327
|
+
const match = fileBasename.match(/^realm-kc-(\d+)\.json$/);
|
328
|
+
if (match === null) {
|
329
|
+
return undefined;
|
330
|
+
}
|
331
|
+
const n = parseInt(match[1]);
|
332
|
+
(0,assert/* assert */.h)(!isNaN(n));
|
333
|
+
return n;
|
334
|
+
})
|
335
|
+
.filter((0,exclude/* exclude */.D)(undefined))
|
336
|
+
.sort((a, b) => b - a);
|
337
|
+
return cache;
|
338
|
+
}
|
339
|
+
return { getSupportedKeycloakMajorVersions };
|
340
|
+
})();
|
341
|
+
function getDefaultConfig(params) {
|
342
|
+
const { keycloakMajorVersionNumber } = params;
|
343
|
+
(0,assert/* assert */.h)(getSupportedKeycloakMajorVersions().includes(keycloakMajorVersionNumber), `We do not have a default config for Keycloak ${keycloakMajorVersionNumber}`);
|
344
|
+
return (0,readRealmJsonFile/* readRealmJsonFile */.X)({
|
345
|
+
realmJsonFilePath: getDefaultRealmJsonFilePath({
|
346
|
+
keycloakMajorVersionNumber
|
347
|
+
})
|
348
|
+
});
|
349
|
+
}
|
350
|
+
//# sourceMappingURL=defaultConfig.js.map
|
351
|
+
;// CONCATENATED MODULE: ./dist/bin/start-keycloak/realmConfig/defaultConfig/index.js
|
352
|
+
|
353
|
+
//# sourceMappingURL=index.js.map
|
354
|
+
|
355
|
+
/***/ }),
|
356
|
+
|
357
|
+
/***/ 12171:
|
358
|
+
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
359
|
+
|
360
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
361
|
+
/* harmony export */ "h": () => (/* binding */ SemVer)
|
362
|
+
/* harmony export */ });
|
363
|
+
var SemVer;
|
364
|
+
(function (SemVer) {
|
365
|
+
const bumpTypes = ["major", "minor", "patch", "rc", "no bump"];
|
366
|
+
function parse(versionStr) {
|
367
|
+
const match = versionStr.match(/^v?([0-9]+)\.([0-9]+)(?:\.([0-9]+))?(?:-rc.([0-9]+))?$/);
|
368
|
+
if (!match) {
|
369
|
+
throw new Error(`${versionStr} is not a valid semantic version`);
|
370
|
+
}
|
371
|
+
const semVer = Object.assign({ major: parseInt(match[1]), minor: parseInt(match[2]), patch: (() => {
|
372
|
+
const str = match[3];
|
373
|
+
return str === undefined ? 0 : parseInt(str);
|
374
|
+
})() }, (() => {
|
375
|
+
const str = match[4];
|
376
|
+
return str === undefined ? {} : { rc: parseInt(str) };
|
377
|
+
})());
|
378
|
+
const initialStr = stringify(semVer);
|
379
|
+
Object.defineProperty(semVer, "parsedFrom", {
|
380
|
+
enumerable: true,
|
381
|
+
get: function () {
|
382
|
+
const currentStr = stringify(this);
|
383
|
+
if (currentStr !== initialStr) {
|
384
|
+
throw new Error(`SemVer.parsedFrom can't be read anymore, the version have been modified from ${initialStr} to ${currentStr}`);
|
385
|
+
}
|
386
|
+
return versionStr;
|
387
|
+
}
|
388
|
+
});
|
389
|
+
return semVer;
|
390
|
+
}
|
391
|
+
SemVer.parse = parse;
|
392
|
+
function stringify(v) {
|
393
|
+
return `${v.major}.${v.minor}.${v.patch}${v.rc === undefined ? "" : `-rc.${v.rc}`}`;
|
394
|
+
}
|
395
|
+
SemVer.stringify = stringify;
|
396
|
+
/**
|
397
|
+
*
|
398
|
+
* v1 < v2 => -1
|
399
|
+
* v1 === v2 => 0
|
400
|
+
* v1 > v2 => 1
|
401
|
+
*
|
402
|
+
*/
|
403
|
+
function compare(v1, v2) {
|
404
|
+
const sign = (diff) => (diff === 0 ? 0 : diff < 0 ? -1 : 1);
|
405
|
+
const noUndefined = (n) => n !== null && n !== void 0 ? n : Infinity;
|
406
|
+
for (const level of ["major", "minor", "patch", "rc"]) {
|
407
|
+
if (noUndefined(v1[level]) !== noUndefined(v2[level])) {
|
408
|
+
return sign(noUndefined(v1[level]) - noUndefined(v2[level]));
|
409
|
+
}
|
410
|
+
}
|
411
|
+
return 0;
|
412
|
+
}
|
413
|
+
SemVer.compare = compare;
|
414
|
+
/*
|
415
|
+
console.log(compare(parse("3.0.0-rc.3"), parse("3.0.0")) === -1 )
|
416
|
+
console.log(compare(parse("3.0.0-rc.3"), parse("3.0.0-rc.4")) === -1 )
|
417
|
+
console.log(compare(parse("3.0.0-rc.3"), parse("4.0.0")) === -1 )
|
418
|
+
*/
|
419
|
+
function bumpType(params) {
|
420
|
+
const versionAhead = typeof params.versionAhead === "string"
|
421
|
+
? parse(params.versionAhead)
|
422
|
+
: params.versionAhead;
|
423
|
+
const versionBehind = typeof params.versionBehind === "string"
|
424
|
+
? parse(params.versionBehind)
|
425
|
+
: params.versionBehind;
|
426
|
+
if (compare(versionBehind, versionAhead) === 1) {
|
427
|
+
throw new Error(`Version regression ${stringify(versionBehind)} -> ${stringify(versionAhead)}`);
|
428
|
+
}
|
429
|
+
for (const level of ["major", "minor", "patch", "rc"]) {
|
430
|
+
if (versionBehind[level] !== versionAhead[level]) {
|
431
|
+
return level;
|
432
|
+
}
|
433
|
+
}
|
434
|
+
return "no bump";
|
435
|
+
}
|
436
|
+
SemVer.bumpType = bumpType;
|
437
|
+
})(SemVer || (SemVer = {}));
|
438
|
+
//# sourceMappingURL=SemVer.js.map
|
439
|
+
|
440
|
+
/***/ }),
|
441
|
+
|
442
|
+
/***/ 38367:
|
443
|
+
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
444
|
+
|
445
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
446
|
+
/* harmony export */ "I": () => (/* binding */ downloadAndExtractArchive)
|
447
|
+
/* harmony export */ });
|
448
|
+
/* harmony import */ var make_fetch_happen__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(9525);
|
449
|
+
/* harmony import */ var make_fetch_happen__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(make_fetch_happen__WEBPACK_IMPORTED_MODULE_0__);
|
450
|
+
/* harmony import */ var fs_promises__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(73292);
|
451
|
+
/* harmony import */ var fs_promises__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(fs_promises__WEBPACK_IMPORTED_MODULE_1__);
|
452
|
+
/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(71017);
|
453
|
+
/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(path__WEBPACK_IMPORTED_MODULE_2__);
|
454
|
+
/* harmony import */ var tsafe_assert__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(29041);
|
455
|
+
/* harmony import */ var _extractArchive__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(29121);
|
456
|
+
/* harmony import */ var _fs_existsAsync__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(43765);
|
457
|
+
/* harmony import */ var crypto__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(6113);
|
458
|
+
/* harmony import */ var crypto__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(crypto__WEBPACK_IMPORTED_MODULE_6__);
|
459
|
+
/* harmony import */ var _fs_rm__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(8699);
|
460
|
+
|
461
|
+
|
462
|
+
|
463
|
+
|
464
|
+
|
465
|
+
|
466
|
+
|
467
|
+
|
468
|
+
async function downloadAndExtractArchive(params) {
|
469
|
+
var _a;
|
470
|
+
const { url, uniqueIdOfOnArchiveFile, onArchiveFile, cacheDirPath, fetchOptions } = params;
|
471
|
+
const archiveFileBasename = url.split("?")[0].split("/").reverse()[0];
|
472
|
+
const archiveFilePath = (0,path__WEBPACK_IMPORTED_MODULE_2__.join)(cacheDirPath, archiveFileBasename);
|
473
|
+
download: {
|
474
|
+
await (0,fs_promises__WEBPACK_IMPORTED_MODULE_1__.mkdir)((0,path__WEBPACK_IMPORTED_MODULE_2__.dirname)(archiveFilePath), { recursive: true });
|
475
|
+
if (await (0,_fs_existsAsync__WEBPACK_IMPORTED_MODULE_5__/* .existsAsync */ .o)(archiveFilePath)) {
|
476
|
+
const isDownloaded = await SuccessTracker.getIsDownloaded({
|
477
|
+
cacheDirPath,
|
478
|
+
archiveFileBasename
|
479
|
+
});
|
480
|
+
if (isDownloaded) {
|
481
|
+
break download;
|
482
|
+
}
|
483
|
+
await (0,fs_promises__WEBPACK_IMPORTED_MODULE_1__.unlink)(archiveFilePath);
|
484
|
+
await SuccessTracker.removeFromDownloaded({
|
485
|
+
cacheDirPath,
|
486
|
+
archiveFileBasename
|
487
|
+
});
|
488
|
+
}
|
489
|
+
const response = await make_fetch_happen__WEBPACK_IMPORTED_MODULE_0___default()(url, fetchOptions);
|
490
|
+
(_a = response.body) === null || _a === void 0 ? void 0 : _a.setMaxListeners(Number.MAX_VALUE);
|
491
|
+
(0,tsafe_assert__WEBPACK_IMPORTED_MODULE_3__/* .assert */ .h)(typeof response.body !== "undefined" && response.body != null);
|
492
|
+
await (0,fs_promises__WEBPACK_IMPORTED_MODULE_1__.writeFile)(archiveFilePath, response.body);
|
493
|
+
await SuccessTracker.markAsDownloaded({
|
494
|
+
cacheDirPath,
|
495
|
+
archiveFileBasename
|
496
|
+
});
|
497
|
+
}
|
498
|
+
const extractDirBasename = `${archiveFileBasename.replace(/\.([^.]+)$/, (...[, ext]) => `_${ext}`)}_${uniqueIdOfOnArchiveFile}_${crypto__WEBPACK_IMPORTED_MODULE_6__.createHash("sha256")
|
499
|
+
.update(onArchiveFile.toString())
|
500
|
+
.digest("hex")
|
501
|
+
.substring(0, 5)}`;
|
502
|
+
await Promise.all((await (0,fs_promises__WEBPACK_IMPORTED_MODULE_1__.readdir)(cacheDirPath))
|
503
|
+
.filter((() => {
|
504
|
+
const prefix = extractDirBasename
|
505
|
+
.split("_")
|
506
|
+
.reverse()
|
507
|
+
.slice(1)
|
508
|
+
.reverse()
|
509
|
+
.join("_");
|
510
|
+
return basename => basename !== extractDirBasename && basename.startsWith(prefix);
|
511
|
+
})())
|
512
|
+
.map(async (extractDirBasename) => {
|
513
|
+
await (0,_fs_rm__WEBPACK_IMPORTED_MODULE_7__.rm)((0,path__WEBPACK_IMPORTED_MODULE_2__.join)(cacheDirPath, extractDirBasename), {
|
514
|
+
recursive: true
|
515
|
+
});
|
516
|
+
await SuccessTracker.removeFromExtracted({
|
517
|
+
cacheDirPath,
|
518
|
+
extractDirBasename
|
519
|
+
});
|
520
|
+
}));
|
521
|
+
const extractedDirPath = (0,path__WEBPACK_IMPORTED_MODULE_2__.join)(cacheDirPath, extractDirBasename);
|
522
|
+
extract_and_transform: {
|
523
|
+
if (await (0,_fs_existsAsync__WEBPACK_IMPORTED_MODULE_5__/* .existsAsync */ .o)(extractedDirPath)) {
|
524
|
+
const isExtracted = await SuccessTracker.getIsExtracted({
|
525
|
+
cacheDirPath,
|
526
|
+
extractDirBasename
|
527
|
+
});
|
528
|
+
if (isExtracted) {
|
529
|
+
break extract_and_transform;
|
530
|
+
}
|
531
|
+
await (0,_fs_rm__WEBPACK_IMPORTED_MODULE_7__.rm)(extractedDirPath, { recursive: true });
|
532
|
+
await SuccessTracker.removeFromExtracted({
|
533
|
+
cacheDirPath,
|
534
|
+
extractDirBasename
|
535
|
+
});
|
536
|
+
}
|
537
|
+
await (0,_extractArchive__WEBPACK_IMPORTED_MODULE_4__/* .extractArchive */ .N)({
|
538
|
+
archiveFilePath,
|
539
|
+
onArchiveFile: async ({ relativeFilePathInArchive, readFile, writeFile }) => onArchiveFile({
|
540
|
+
fileRelativePath: relativeFilePathInArchive,
|
541
|
+
readFile,
|
542
|
+
writeFile: ({ fileRelativePath, modifiedData }) => writeFile({
|
543
|
+
filePath: (0,path__WEBPACK_IMPORTED_MODULE_2__.join)(extractedDirPath, fileRelativePath),
|
544
|
+
modifiedData
|
545
|
+
})
|
546
|
+
})
|
547
|
+
});
|
548
|
+
await SuccessTracker.markAsExtracted({
|
549
|
+
cacheDirPath,
|
550
|
+
extractDirBasename
|
551
|
+
});
|
552
|
+
}
|
553
|
+
return { extractedDirPath, archiveFilePath };
|
554
|
+
}
|
555
|
+
var SuccessTracker;
|
556
|
+
(function (SuccessTracker) {
|
557
|
+
async function read(params) {
|
558
|
+
const { cacheDirPath } = params;
|
559
|
+
const filePath = (0,path__WEBPACK_IMPORTED_MODULE_2__.join)(cacheDirPath, "downloadAndExtractArchive.json");
|
560
|
+
if (!(await (0,_fs_existsAsync__WEBPACK_IMPORTED_MODULE_5__/* .existsAsync */ .o)(filePath))) {
|
561
|
+
return { archiveFileBasenames: [], extractDirBasenames: [] };
|
562
|
+
}
|
563
|
+
return JSON.parse((await (0,fs_promises__WEBPACK_IMPORTED_MODULE_1__.readFile)(filePath)).toString("utf8"));
|
564
|
+
}
|
565
|
+
async function write(params) {
|
566
|
+
const { cacheDirPath, successTracker } = params;
|
567
|
+
const filePath = (0,path__WEBPACK_IMPORTED_MODULE_2__.join)(cacheDirPath, "downloadAndExtractArchive.json");
|
568
|
+
{
|
569
|
+
const dirPath = (0,path__WEBPACK_IMPORTED_MODULE_2__.dirname)(filePath);
|
570
|
+
if (!(await (0,_fs_existsAsync__WEBPACK_IMPORTED_MODULE_5__/* .existsAsync */ .o)(dirPath))) {
|
571
|
+
await (0,fs_promises__WEBPACK_IMPORTED_MODULE_1__.mkdir)(dirPath, { recursive: true });
|
572
|
+
}
|
573
|
+
}
|
574
|
+
await (0,fs_promises__WEBPACK_IMPORTED_MODULE_1__.writeFile)(filePath, JSON.stringify(successTracker));
|
575
|
+
}
|
576
|
+
async function markAsDownloaded(params) {
|
577
|
+
const { cacheDirPath, archiveFileBasename } = params;
|
578
|
+
const successTracker = await read({ cacheDirPath });
|
579
|
+
successTracker.archiveFileBasenames.push(archiveFileBasename);
|
580
|
+
await write({ cacheDirPath, successTracker });
|
581
|
+
}
|
582
|
+
SuccessTracker.markAsDownloaded = markAsDownloaded;
|
583
|
+
async function getIsDownloaded(params) {
|
584
|
+
const { cacheDirPath, archiveFileBasename } = params;
|
585
|
+
const successTracker = await read({ cacheDirPath });
|
586
|
+
return successTracker.archiveFileBasenames.includes(archiveFileBasename);
|
587
|
+
}
|
588
|
+
SuccessTracker.getIsDownloaded = getIsDownloaded;
|
589
|
+
async function removeFromDownloaded(params) {
|
590
|
+
const { cacheDirPath, archiveFileBasename } = params;
|
591
|
+
const successTracker = await read({ cacheDirPath });
|
592
|
+
successTracker.archiveFileBasenames = successTracker.archiveFileBasenames.filter(basename => basename !== archiveFileBasename);
|
593
|
+
await write({ cacheDirPath, successTracker });
|
594
|
+
}
|
595
|
+
SuccessTracker.removeFromDownloaded = removeFromDownloaded;
|
596
|
+
async function markAsExtracted(params) {
|
597
|
+
const { cacheDirPath, extractDirBasename } = params;
|
598
|
+
const successTracker = await read({ cacheDirPath });
|
599
|
+
successTracker.extractDirBasenames.push(extractDirBasename);
|
600
|
+
await write({ cacheDirPath, successTracker });
|
601
|
+
}
|
602
|
+
SuccessTracker.markAsExtracted = markAsExtracted;
|
603
|
+
async function getIsExtracted(params) {
|
604
|
+
const { cacheDirPath, extractDirBasename } = params;
|
605
|
+
const successTracker = await read({ cacheDirPath });
|
606
|
+
return successTracker.extractDirBasenames.includes(extractDirBasename);
|
607
|
+
}
|
608
|
+
SuccessTracker.getIsExtracted = getIsExtracted;
|
609
|
+
async function removeFromExtracted(params) {
|
610
|
+
const { cacheDirPath, extractDirBasename } = params;
|
611
|
+
const successTracker = await read({ cacheDirPath });
|
612
|
+
successTracker.extractDirBasenames = successTracker.extractDirBasenames.filter(basename => basename !== extractDirBasename);
|
613
|
+
await write({ cacheDirPath, successTracker });
|
614
|
+
}
|
615
|
+
SuccessTracker.removeFromExtracted = removeFromExtracted;
|
616
|
+
})(SuccessTracker || (SuccessTracker = {}));
|
617
|
+
//# sourceMappingURL=downloadAndExtractArchive.js.map
|
618
|
+
|
619
|
+
/***/ }),
|
620
|
+
|
621
|
+
/***/ 29121:
|
622
|
+
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
623
|
+
|
624
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
625
|
+
/* harmony export */ "N": () => (/* binding */ extractArchive)
|
626
|
+
/* harmony export */ });
|
627
|
+
/* harmony import */ var fs_promises__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(73292);
|
628
|
+
/* harmony import */ var fs_promises__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(fs_promises__WEBPACK_IMPORTED_MODULE_0__);
|
629
|
+
/* harmony import */ var fs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(57147);
|
630
|
+
/* harmony import */ var fs__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(fs__WEBPACK_IMPORTED_MODULE_1__);
|
631
|
+
/* harmony import */ var yauzl__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(78781);
|
632
|
+
/* harmony import */ var stream__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(12781);
|
633
|
+
/* harmony import */ var stream__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(stream__WEBPACK_IMPORTED_MODULE_3__);
|
634
|
+
/* harmony import */ var evt_tools_Deferred__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(50689);
|
635
|
+
/* harmony import */ var evt_tools_Deferred__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(evt_tools_Deferred__WEBPACK_IMPORTED_MODULE_4__);
|
636
|
+
/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(71017);
|
637
|
+
/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(path__WEBPACK_IMPORTED_MODULE_5__);
|
638
|
+
/* harmony import */ var _fs_existsAsync__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(43765);
|
639
|
+
|
640
|
+
|
641
|
+
|
642
|
+
|
643
|
+
|
644
|
+
|
645
|
+
|
646
|
+
async function extractArchive(params) {
|
647
|
+
const { archiveFilePath, onArchiveFile } = params;
|
648
|
+
const zipFile = await new Promise((resolve, reject) => {
|
649
|
+
yauzl__WEBPACK_IMPORTED_MODULE_2__.open(archiveFilePath, { lazyEntries: true }, async (error, zipFile) => {
|
650
|
+
if (error) {
|
651
|
+
reject(error);
|
652
|
+
return;
|
653
|
+
}
|
654
|
+
resolve(zipFile);
|
655
|
+
});
|
656
|
+
});
|
657
|
+
const dDone = new evt_tools_Deferred__WEBPACK_IMPORTED_MODULE_4__.Deferred();
|
658
|
+
zipFile.once("end", () => {
|
659
|
+
zipFile.close();
|
660
|
+
dDone.resolve();
|
661
|
+
});
|
662
|
+
const writeFile = async (entry, params) => {
|
663
|
+
const { filePath, modifiedData } = params;
|
664
|
+
{
|
665
|
+
const dirPath = (0,path__WEBPACK_IMPORTED_MODULE_5__.dirname)(filePath);
|
666
|
+
if (!(await (0,_fs_existsAsync__WEBPACK_IMPORTED_MODULE_6__/* .existsAsync */ .o)(dirPath))) {
|
667
|
+
await fs_promises__WEBPACK_IMPORTED_MODULE_0___default().mkdir(dirPath, { recursive: true });
|
668
|
+
}
|
669
|
+
}
|
670
|
+
if (modifiedData !== undefined) {
|
671
|
+
await fs_promises__WEBPACK_IMPORTED_MODULE_0___default().writeFile(filePath, modifiedData);
|
672
|
+
return;
|
673
|
+
}
|
674
|
+
const readStream = await new Promise(resolve => zipFile.openReadStream(entry, async (error, readStream) => {
|
675
|
+
if (error) {
|
676
|
+
dDone.reject(error);
|
677
|
+
return;
|
678
|
+
}
|
679
|
+
resolve(readStream);
|
680
|
+
}));
|
681
|
+
const dDoneWithFile = new evt_tools_Deferred__WEBPACK_IMPORTED_MODULE_4__.Deferred();
|
682
|
+
stream__WEBPACK_IMPORTED_MODULE_3___default().pipeline(readStream, fs__WEBPACK_IMPORTED_MODULE_1___default().createWriteStream(filePath), error => {
|
683
|
+
if (error) {
|
684
|
+
dDone.reject(error);
|
685
|
+
return;
|
686
|
+
}
|
687
|
+
dDoneWithFile.resolve();
|
688
|
+
});
|
689
|
+
await dDoneWithFile.pr;
|
690
|
+
};
|
691
|
+
const readFile = (entry) => new Promise(resolve => zipFile.openReadStream(entry, async (error, readStream) => {
|
692
|
+
if (error) {
|
693
|
+
dDone.reject(error);
|
694
|
+
return;
|
695
|
+
}
|
696
|
+
const chunks = [];
|
697
|
+
readStream.on("data", chunk => {
|
698
|
+
chunks.push(chunk);
|
699
|
+
});
|
700
|
+
readStream.on("end", () => {
|
701
|
+
resolve(Buffer.concat(chunks));
|
702
|
+
});
|
703
|
+
readStream.on("error", error => {
|
704
|
+
dDone.reject(error);
|
705
|
+
});
|
706
|
+
}));
|
707
|
+
zipFile.on("entry", async (entry) => {
|
708
|
+
handle_file: {
|
709
|
+
// NOTE: Skip directories
|
710
|
+
if (entry.fileName.endsWith("/")) {
|
711
|
+
break handle_file;
|
712
|
+
}
|
713
|
+
let hasEarlyExitBeenCalled = false;
|
714
|
+
await onArchiveFile({
|
715
|
+
relativeFilePathInArchive: entry.fileName.split("/").join(path__WEBPACK_IMPORTED_MODULE_5__.sep),
|
716
|
+
readFile: () => readFile(entry),
|
717
|
+
writeFile: params => writeFile(entry, params),
|
718
|
+
earlyExit: () => {
|
719
|
+
hasEarlyExitBeenCalled = true;
|
720
|
+
}
|
721
|
+
});
|
722
|
+
if (hasEarlyExitBeenCalled) {
|
723
|
+
zipFile.close();
|
724
|
+
dDone.resolve();
|
725
|
+
return;
|
726
|
+
}
|
727
|
+
}
|
728
|
+
zipFile.readEntry();
|
729
|
+
});
|
730
|
+
zipFile.readEntry();
|
731
|
+
await dDone.pr;
|
732
|
+
}
|
733
|
+
//# sourceMappingURL=extractArchive.js.map
|
734
|
+
|
735
|
+
/***/ }),
|
736
|
+
|
737
|
+
/***/ 43765:
|
738
|
+
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
739
|
+
|
740
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
741
|
+
/* harmony export */ "o": () => (/* binding */ existsAsync)
|
742
|
+
/* harmony export */ });
|
743
|
+
/* harmony import */ var fs_promises__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(73292);
|
744
|
+
/* harmony import */ var fs_promises__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(fs_promises__WEBPACK_IMPORTED_MODULE_0__);
|
745
|
+
|
746
|
+
async function existsAsync(path) {
|
747
|
+
try {
|
748
|
+
await fs_promises__WEBPACK_IMPORTED_MODULE_0__.stat(path);
|
749
|
+
return true;
|
750
|
+
}
|
751
|
+
catch (error) {
|
752
|
+
if (error.code === "ENOENT")
|
753
|
+
return false;
|
754
|
+
throw error;
|
755
|
+
}
|
756
|
+
}
|
757
|
+
//# sourceMappingURL=fs.existsAsync.js.map
|
758
|
+
|
759
|
+
/***/ }),
|
760
|
+
|
761
|
+
/***/ 8699:
|
762
|
+
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
763
|
+
|
764
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
765
|
+
/* harmony export */ "rm": () => (/* binding */ rm)
|
766
|
+
/* harmony export */ });
|
767
|
+
/* harmony import */ var fs_promises__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(73292);
|
768
|
+
/* harmony import */ var fs_promises__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(fs_promises__WEBPACK_IMPORTED_MODULE_0__);
|
769
|
+
/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(71017);
|
770
|
+
/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(path__WEBPACK_IMPORTED_MODULE_1__);
|
771
|
+
/* harmony import */ var _SemVer__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(12171);
|
772
|
+
|
773
|
+
|
774
|
+
|
775
|
+
/**
|
776
|
+
* Polyfill of fs.rm(dirPath, { "recursive": true })
|
777
|
+
* For older version of Node
|
778
|
+
*/
|
779
|
+
async function rm(dirPath, options) {
|
780
|
+
if (_SemVer__WEBPACK_IMPORTED_MODULE_2__/* .SemVer.compare */ .h.compare(_SemVer__WEBPACK_IMPORTED_MODULE_2__/* .SemVer.parse */ .h.parse(process.version), _SemVer__WEBPACK_IMPORTED_MODULE_2__/* .SemVer.parse */ .h.parse("14.14.0")) > 0) {
|
781
|
+
return fs_promises__WEBPACK_IMPORTED_MODULE_0__.rm(dirPath, options);
|
782
|
+
}
|
783
|
+
const { force = true } = options;
|
784
|
+
if (force && !(await checkDirExists(dirPath))) {
|
785
|
+
return;
|
786
|
+
}
|
787
|
+
const removeDir_rec = async (dirPath) => Promise.all((await fs_promises__WEBPACK_IMPORTED_MODULE_0__.readdir(dirPath)).map(async (basename) => {
|
788
|
+
const fileOrDirpath = (0,path__WEBPACK_IMPORTED_MODULE_1__.join)(dirPath, basename);
|
789
|
+
if ((await fs_promises__WEBPACK_IMPORTED_MODULE_0__.lstat(fileOrDirpath)).isDirectory()) {
|
790
|
+
await removeDir_rec(fileOrDirpath);
|
791
|
+
}
|
792
|
+
else {
|
793
|
+
await fs_promises__WEBPACK_IMPORTED_MODULE_0__.unlink(fileOrDirpath);
|
794
|
+
}
|
795
|
+
}));
|
796
|
+
await removeDir_rec(dirPath);
|
797
|
+
}
|
798
|
+
async function checkDirExists(dirPath) {
|
799
|
+
try {
|
800
|
+
await fs_promises__WEBPACK_IMPORTED_MODULE_0__.access(dirPath, fs_promises__WEBPACK_IMPORTED_MODULE_0__.constants.F_OK);
|
801
|
+
return true;
|
802
|
+
}
|
803
|
+
catch (_a) {
|
804
|
+
return false;
|
805
|
+
}
|
806
|
+
}
|
807
|
+
//# sourceMappingURL=fs.rm.js.map
|
808
|
+
|
809
|
+
/***/ }),
|
810
|
+
|
811
|
+
/***/ 73776:
|
812
|
+
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
813
|
+
|
814
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
815
|
+
/* harmony export */ "K": () => (/* binding */ getNodeModulesBinDirPath)
|
816
|
+
/* harmony export */ });
|
817
|
+
/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(71017);
|
818
|
+
/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(path__WEBPACK_IMPORTED_MODULE_0__);
|
819
|
+
|
820
|
+
let cache = undefined;
|
821
|
+
function getNodeModulesBinDirPath() {
|
822
|
+
if (cache !== undefined) {
|
823
|
+
return cache;
|
824
|
+
}
|
825
|
+
const binPath = process.argv[1];
|
826
|
+
const segments = [".bin"];
|
827
|
+
let foundNodeModules = false;
|
828
|
+
for (const segment of binPath.split(path__WEBPACK_IMPORTED_MODULE_0__.sep).reverse()) {
|
829
|
+
skip_segment: {
|
830
|
+
if (foundNodeModules) {
|
831
|
+
break skip_segment;
|
832
|
+
}
|
833
|
+
if (segment === "node_modules") {
|
834
|
+
foundNodeModules = true;
|
835
|
+
break skip_segment;
|
836
|
+
}
|
837
|
+
continue;
|
838
|
+
}
|
839
|
+
segments.unshift(segment);
|
840
|
+
}
|
841
|
+
const nodeModulesBinDirPath = segments.join(path__WEBPACK_IMPORTED_MODULE_0__.sep);
|
842
|
+
cache = nodeModulesBinDirPath;
|
843
|
+
return nodeModulesBinDirPath;
|
844
|
+
}
|
845
|
+
//# sourceMappingURL=nodeModulesBinDirPath.js.map
|
846
|
+
|
847
|
+
/***/ })
|
848
|
+
|
849
|
+
};
|
850
|
+
;
|