@keycloakify/angular 0.2.2 → 0.2.4

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/index.js ADDED
@@ -0,0 +1,479 @@
1
+ #!/usr/bin/env node
2
+ import * as __WEBPACK_EXTERNAL_MODULE_prettier__ from "prettier";
3
+ import { createRequire as __WEBPACK_EXTERNAL_createRequire } from "module";
4
+ /******/ var __webpack_modules__ = ({
5
+
6
+ /***/ 316:
7
+ /***/ ((__unused_webpack_module, __webpack_exports__, __nccwpck_require__) => {
8
+
9
+ /* harmony export */ __nccwpck_require__.d(__webpack_exports__, {
10
+ /* harmony export */ Hp: () => (/* binding */ ACCOUNT_THEME_PAGE_IDS),
11
+ /* harmony export */ hz: () => (/* binding */ LOGIN_THEME_PAGE_IDS),
12
+ /* harmony export */ qA: () => (/* binding */ THEME_TYPES),
13
+ /* harmony export */ yp: () => (/* binding */ CUSTOM_HANDLER_ENV_NAMES)
14
+ /* harmony export */ });
15
+ /* unused harmony exports WELL_KNOWN_DIRECTORY_BASE_NAME, VITE_PLUGIN_SUB_SCRIPTS_ENV_NAMES, BUILD_FOR_KEYCLOAK_MAJOR_VERSION_ENV_NAME, CONTAINER_NAME, FALLBACK_LANGUAGE_TAG, KEYCLOAK_THEME */
16
+ const WELL_KNOWN_DIRECTORY_BASE_NAME = {
17
+ KEYCLOAKIFY_DEV_RESOURCES: "keycloakify-dev-resources",
18
+ RESOURCES_COMMON: "resources-common",
19
+ DIST: "dist"
20
+ };
21
+ const THEME_TYPES = ["login", "account", "admin"];
22
+ const VITE_PLUGIN_SUB_SCRIPTS_ENV_NAMES = {
23
+ RUN_POST_BUILD_SCRIPT: "KEYCLOAKIFY_RUN_POST_BUILD_SCRIPT",
24
+ RESOLVE_VITE_CONFIG: "KEYCLOAKIFY_RESOLVE_VITE_CONFIG"
25
+ };
26
+ const BUILD_FOR_KEYCLOAK_MAJOR_VERSION_ENV_NAME = "KEYCLOAKIFY_BUILD_FOR_KEYCLOAK_MAJOR_VERSION";
27
+ const LOGIN_THEME_PAGE_IDS = [
28
+ "login.ftl",
29
+ "login-username.ftl",
30
+ "login-password.ftl",
31
+ "webauthn-authenticate.ftl",
32
+ "webauthn-register.ftl",
33
+ "register.ftl",
34
+ "info.ftl",
35
+ "error.ftl",
36
+ "login-reset-password.ftl",
37
+ "login-verify-email.ftl",
38
+ "terms.ftl",
39
+ "login-oauth2-device-verify-user-code.ftl",
40
+ "login-oauth-grant.ftl",
41
+ "login-otp.ftl",
42
+ "login-update-profile.ftl",
43
+ "login-update-password.ftl",
44
+ "login-idp-link-confirm.ftl",
45
+ "login-idp-link-email.ftl",
46
+ "login-page-expired.ftl",
47
+ "login-config-totp.ftl",
48
+ "logout-confirm.ftl",
49
+ "idp-review-user-profile.ftl",
50
+ "update-email.ftl",
51
+ "select-authenticator.ftl",
52
+ "saml-post-form.ftl",
53
+ "delete-credential.ftl",
54
+ "code.ftl",
55
+ "delete-account-confirm.ftl",
56
+ "frontchannel-logout.ftl",
57
+ "login-recovery-authn-code-config.ftl",
58
+ "login-recovery-authn-code-input.ftl",
59
+ "login-reset-otp.ftl",
60
+ "login-x509-info.ftl",
61
+ "webauthn-error.ftl",
62
+ "login-passkeys-conditional-authenticate.ftl",
63
+ "login-idp-link-confirm-override.ftl"
64
+ ];
65
+ const ACCOUNT_THEME_PAGE_IDS = [
66
+ "password.ftl",
67
+ "account.ftl",
68
+ "sessions.ftl",
69
+ "totp.ftl",
70
+ "applications.ftl",
71
+ "log.ftl",
72
+ "federatedIdentity.ftl"
73
+ ];
74
+ const CONTAINER_NAME = "keycloak-keycloakify";
75
+ const FALLBACK_LANGUAGE_TAG = "en";
76
+ const CUSTOM_HANDLER_ENV_NAMES = {
77
+ COMMAND_NAME: "KEYCLOAKIFY_COMMAND_NAME",
78
+ BUILD_CONTEXT: "KEYCLOAKIFY_BUILD_CONTEXT"
79
+ };
80
+ const KEYCLOAK_THEME = "keycloak-theme";
81
+ //# sourceMappingURL=constants.js.map
82
+
83
+ /***/ }),
84
+
85
+ /***/ 166:
86
+ /***/ ((module) => {
87
+
88
+ module.exports = __WEBPACK_EXTERNAL_MODULE_prettier__;
89
+
90
+ /***/ }),
91
+
92
+ /***/ 317:
93
+ /***/ ((module) => {
94
+
95
+ module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("child_process");
96
+
97
+ /***/ }),
98
+
99
+ /***/ 982:
100
+ /***/ ((module) => {
101
+
102
+ module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("crypto");
103
+
104
+ /***/ }),
105
+
106
+ /***/ 896:
107
+ /***/ ((module) => {
108
+
109
+ module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("fs");
110
+
111
+ /***/ }),
112
+
113
+ /***/ 943:
114
+ /***/ ((module) => {
115
+
116
+ module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("fs/promises");
117
+
118
+ /***/ }),
119
+
120
+ /***/ 161:
121
+ /***/ ((module) => {
122
+
123
+ module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("node:os");
124
+
125
+ /***/ }),
126
+
127
+ /***/ 708:
128
+ /***/ ((module) => {
129
+
130
+ module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("node:process");
131
+
132
+ /***/ }),
133
+
134
+ /***/ 66:
135
+ /***/ ((module) => {
136
+
137
+ module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("node:tty");
138
+
139
+ /***/ }),
140
+
141
+ /***/ 928:
142
+ /***/ ((module) => {
143
+
144
+ module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("path");
145
+
146
+ /***/ }),
147
+
148
+ /***/ 785:
149
+ /***/ ((module) => {
150
+
151
+ module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("readline");
152
+
153
+ /***/ }),
154
+
155
+ /***/ 966:
156
+ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __nccwpck_require__) => {
157
+
158
+
159
+ // EXPORTS
160
+ __nccwpck_require__.d(__webpack_exports__, {
161
+ v: () => (/* binding */ assert),
162
+ is: () => (/* binding */ is)
163
+ });
164
+
165
+ // UNUSED EXPORTS: AssertionError
166
+
167
+ ;// CONCATENATED MODULE: ./node_modules/tsafe/esm/lab/overwriteReadonlyProp.mjs
168
+ /**
169
+ * Assign a value to a property even if the object is freezed or if the property is not writable
170
+ * Throw if the assignation fail ( for example if the property is non configurable write: false )
171
+ * */
172
+ const overwriteReadonlyProp = (obj, propertyName, value) => {
173
+ try {
174
+ obj[propertyName] = value;
175
+ }
176
+ catch { }
177
+ if (obj[propertyName] === value) {
178
+ return value;
179
+ }
180
+ let errorDefineProperty = undefined;
181
+ const propertyDescriptor = Object.getOwnPropertyDescriptor(obj, propertyName) || {
182
+ "enumerable": true,
183
+ "configurable": true,
184
+ };
185
+ if (!!propertyDescriptor.get) {
186
+ throw new Error(`Probably a wrong ides to overwrite ${String(propertyName)} getter`);
187
+ }
188
+ try {
189
+ Object.defineProperty(obj, propertyName, {
190
+ ...propertyDescriptor,
191
+ value,
192
+ });
193
+ }
194
+ catch (error) {
195
+ errorDefineProperty = error;
196
+ }
197
+ if (obj[propertyName] !== value) {
198
+ throw errorDefineProperty || new Error("Can't assign");
199
+ }
200
+ return value;
201
+ };
202
+
203
+
204
+ //# sourceMappingURL=overwriteReadonlyProp.mjs.map
205
+
206
+ ;// CONCATENATED MODULE: ./node_modules/tsafe/esm/assert.mjs
207
+
208
+
209
+ /** https://docs.tsafe.dev/assert#error-thrown */
210
+ class AssertionError extends Error {
211
+ constructor(msg) {
212
+ super(`Wrong assertion encountered` + (!msg ? "" : `: "${msg}"`));
213
+ this.originalMessage = msg;
214
+ Object.setPrototypeOf(this, new.target.prototype);
215
+ if (!this.stack) {
216
+ return;
217
+ }
218
+ try {
219
+ overwriteReadonlyProp(this, "stack", this.stack
220
+ .split("\n")
221
+ .filter((...[, i]) => i !== 1 && i !== 2)
222
+ .join("\n"));
223
+ }
224
+ catch { }
225
+ }
226
+ }
227
+ let refOfIs = undefined;
228
+ /** https://docs.tsafe.dev/assert */
229
+ function assert(condition, msg) {
230
+ if (arguments.length === 0) {
231
+ condition = true;
232
+ }
233
+ if (refOfIs !== undefined) {
234
+ refOfIs = undefined;
235
+ return;
236
+ }
237
+ if (!condition) {
238
+ throw new AssertionError(typeof msg === "function" ? msg() : msg);
239
+ }
240
+ }
241
+ const errorMessage = "Wrong usage of the `is` function refer to https://docs.tsafe.dev/is";
242
+ /** https://docs.tsafe.dev/is */
243
+ function is(value) {
244
+ const ref = {};
245
+ if (refOfIs !== undefined) {
246
+ refOfIs = undefined;
247
+ throw new Error(errorMessage);
248
+ }
249
+ refOfIs = ref;
250
+ Promise.resolve().then(() => {
251
+ if (refOfIs === ref) {
252
+ throw new Error(errorMessage);
253
+ }
254
+ });
255
+ return null;
256
+ }
257
+
258
+
259
+ //# sourceMappingURL=assert.mjs.map
260
+
261
+
262
+ /***/ })
263
+
264
+ /******/ });
265
+ /************************************************************************/
266
+ /******/ // The module cache
267
+ /******/ var __webpack_module_cache__ = {};
268
+ /******/
269
+ /******/ // The require function
270
+ /******/ function __nccwpck_require__(moduleId) {
271
+ /******/ // Check if module is in cache
272
+ /******/ var cachedModule = __webpack_module_cache__[moduleId];
273
+ /******/ if (cachedModule !== undefined) {
274
+ /******/ return cachedModule.exports;
275
+ /******/ }
276
+ /******/ // Create a new module (and put it into the cache)
277
+ /******/ var module = __webpack_module_cache__[moduleId] = {
278
+ /******/ // no module.id needed
279
+ /******/ // no module.loaded needed
280
+ /******/ exports: {}
281
+ /******/ };
282
+ /******/
283
+ /******/ // Execute the module function
284
+ /******/ var threw = true;
285
+ /******/ try {
286
+ /******/ __webpack_modules__[moduleId](module, module.exports, __nccwpck_require__);
287
+ /******/ threw = false;
288
+ /******/ } finally {
289
+ /******/ if(threw) delete __webpack_module_cache__[moduleId];
290
+ /******/ }
291
+ /******/
292
+ /******/ // Return the exports of the module
293
+ /******/ return module.exports;
294
+ /******/ }
295
+ /******/
296
+ /******/ // expose the modules object (__webpack_modules__)
297
+ /******/ __nccwpck_require__.m = __webpack_modules__;
298
+ /******/
299
+ /************************************************************************/
300
+ /******/ /* webpack/runtime/compat get default export */
301
+ /******/ (() => {
302
+ /******/ // getDefaultExport function for compatibility with non-harmony modules
303
+ /******/ __nccwpck_require__.n = (module) => {
304
+ /******/ var getter = module && module.__esModule ?
305
+ /******/ () => (module['default']) :
306
+ /******/ () => (module);
307
+ /******/ __nccwpck_require__.d(getter, { a: getter });
308
+ /******/ return getter;
309
+ /******/ };
310
+ /******/ })();
311
+ /******/
312
+ /******/ /* webpack/runtime/define property getters */
313
+ /******/ (() => {
314
+ /******/ // define getter functions for harmony exports
315
+ /******/ __nccwpck_require__.d = (exports, definition) => {
316
+ /******/ for(var key in definition) {
317
+ /******/ if(__nccwpck_require__.o(definition, key) && !__nccwpck_require__.o(exports, key)) {
318
+ /******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
319
+ /******/ }
320
+ /******/ }
321
+ /******/ };
322
+ /******/ })();
323
+ /******/
324
+ /******/ /* webpack/runtime/ensure chunk */
325
+ /******/ (() => {
326
+ /******/ __nccwpck_require__.f = {};
327
+ /******/ // This file contains only the entry chunk.
328
+ /******/ // The chunk loading function for additional chunks
329
+ /******/ __nccwpck_require__.e = (chunkId) => {
330
+ /******/ return Promise.all(Object.keys(__nccwpck_require__.f).reduce((promises, key) => {
331
+ /******/ __nccwpck_require__.f[key](chunkId, promises);
332
+ /******/ return promises;
333
+ /******/ }, []));
334
+ /******/ };
335
+ /******/ })();
336
+ /******/
337
+ /******/ /* webpack/runtime/get javascript chunk filename */
338
+ /******/ (() => {
339
+ /******/ // This function allow to reference async chunks
340
+ /******/ __nccwpck_require__.u = (chunkId) => {
341
+ /******/ // return url for filenames based on template
342
+ /******/ return "" + chunkId + ".index.js";
343
+ /******/ };
344
+ /******/ })();
345
+ /******/
346
+ /******/ /* webpack/runtime/hasOwnProperty shorthand */
347
+ /******/ (() => {
348
+ /******/ __nccwpck_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
349
+ /******/ })();
350
+ /******/
351
+ /******/ /* webpack/runtime/compat */
352
+ /******/
353
+ /******/ if (typeof __nccwpck_require__ !== 'undefined') __nccwpck_require__.ab = new URL('.', import.meta.url).pathname.slice(import.meta.url.match(/^file:\/\/\/\w:/) ? 1 : 0, -1) + "/";
354
+ /******/
355
+ /******/ /* webpack/runtime/import chunk loading */
356
+ /******/ (() => {
357
+ /******/ // no baseURI
358
+ /******/
359
+ /******/ // object to store loaded and loading chunks
360
+ /******/ // undefined = chunk not loaded, null = chunk preloaded/prefetched
361
+ /******/ // [resolve, Promise] = chunk loading, 0 = chunk loaded
362
+ /******/ var installedChunks = {
363
+ /******/ 792: 0
364
+ /******/ };
365
+ /******/
366
+ /******/ var installChunk = (data) => {
367
+ /******/ var {ids, modules, runtime} = data;
368
+ /******/ // add "modules" to the modules object,
369
+ /******/ // then flag all "ids" as loaded and fire callback
370
+ /******/ var moduleId, chunkId, i = 0;
371
+ /******/ for(moduleId in modules) {
372
+ /******/ if(__nccwpck_require__.o(modules, moduleId)) {
373
+ /******/ __nccwpck_require__.m[moduleId] = modules[moduleId];
374
+ /******/ }
375
+ /******/ }
376
+ /******/ if(runtime) runtime(__nccwpck_require__);
377
+ /******/ for(;i < ids.length; i++) {
378
+ /******/ chunkId = ids[i];
379
+ /******/ if(__nccwpck_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {
380
+ /******/ installedChunks[chunkId][0]();
381
+ /******/ }
382
+ /******/ installedChunks[ids[i]] = 0;
383
+ /******/ }
384
+ /******/
385
+ /******/ }
386
+ /******/
387
+ /******/ __nccwpck_require__.f.j = (chunkId, promises) => {
388
+ /******/ // import() chunk loading for javascript
389
+ /******/ var installedChunkData = __nccwpck_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;
390
+ /******/ if(installedChunkData !== 0) { // 0 means "already installed".
391
+ /******/
392
+ /******/ // a Promise means "currently loading".
393
+ /******/ if(installedChunkData) {
394
+ /******/ promises.push(installedChunkData[1]);
395
+ /******/ } else {
396
+ /******/ if(true) { // all chunks have JS
397
+ /******/ // setup Promise in chunk cache
398
+ /******/ var promise = import("./" + __nccwpck_require__.u(chunkId)).then(installChunk, (e) => {
399
+ /******/ if(installedChunks[chunkId] !== 0) installedChunks[chunkId] = undefined;
400
+ /******/ throw e;
401
+ /******/ });
402
+ /******/ var promise = Promise.race([promise, new Promise((resolve) => (installedChunkData = installedChunks[chunkId] = [resolve]))])
403
+ /******/ promises.push(installedChunkData[1] = promise);
404
+ /******/ }
405
+ /******/ }
406
+ /******/ }
407
+ /******/ };
408
+ /******/
409
+ /******/ // no prefetching
410
+ /******/
411
+ /******/ // no preloaded
412
+ /******/
413
+ /******/ // no external install chunk
414
+ /******/
415
+ /******/ // no on chunks loaded
416
+ /******/ })();
417
+ /******/
418
+ /************************************************************************/
419
+ var __webpack_exports__ = {};
420
+
421
+ // EXTERNAL MODULE: ./node_modules/tsafe/esm/assert.mjs + 1 modules
422
+ var assert = __nccwpck_require__(966);
423
+ // EXTERNAL MODULE: ./node_modules/keycloakify/bin/shared/constants.js
424
+ var constants = __nccwpck_require__(316);
425
+ ;// CONCATENATED MODULE: ./node_modules/keycloakify/bin/shared/customHandler.js
426
+
427
+
428
+ const BIN_NAME = "_keycloakify-custom-handler";
429
+ const NOT_IMPLEMENTED_EXIT_CODE = 78;
430
+ function readParams(params) {
431
+ const { apiVersion } = params;
432
+ (0,assert/* assert */.v)(apiVersion === "v1");
433
+ const commandName = (() => {
434
+ const envValue = process.env[constants/* CUSTOM_HANDLER_ENV_NAMES */.yp.COMMAND_NAME];
435
+ (0,assert/* assert */.v)(envValue !== undefined);
436
+ return envValue;
437
+ })();
438
+ const buildContext = (() => {
439
+ const envValue = process.env[constants/* CUSTOM_HANDLER_ENV_NAMES */.yp.BUILD_CONTEXT];
440
+ (0,assert/* assert */.v)(envValue !== undefined);
441
+ return JSON.parse(envValue);
442
+ })();
443
+ return { commandName, buildContext };
444
+ }
445
+ //# sourceMappingURL=customHandler.js.map
446
+ ;// CONCATENATED MODULE: ./dist/bin/main.ts
447
+
448
+ const { buildContext, commandName } = readParams({ apiVersion: 'v1' });
449
+ (async () => {
450
+ switch (commandName) {
451
+ case 'add-story':
452
+ {
453
+ const { command } = await Promise.all(/* import() */[__nccwpck_require__.e(986), __nccwpck_require__.e(942)]).then(__nccwpck_require__.bind(__nccwpck_require__, 942));
454
+ command({ buildContext });
455
+ }
456
+ return;
457
+ case 'eject-page':
458
+ {
459
+ const { command } = await Promise.all(/* import() */[__nccwpck_require__.e(986), __nccwpck_require__.e(671)]).then(__nccwpck_require__.bind(__nccwpck_require__, 671));
460
+ command({ buildContext });
461
+ }
462
+ return;
463
+ case 'update-kc-gen':
464
+ {
465
+ const { command } = await __nccwpck_require__.e(/* import() */ 476).then(__nccwpck_require__.bind(__nccwpck_require__, 476));
466
+ command({ buildContext });
467
+ }
468
+ return;
469
+ case 'initialize-account-theme':
470
+ {
471
+ const { command } = await Promise.all(/* import() */[__nccwpck_require__.e(811), __nccwpck_require__.e(187)]).then(__nccwpck_require__.bind(__nccwpck_require__, 187));
472
+ command({ buildContext });
473
+ }
474
+ return;
475
+ default:
476
+ process.exit(NOT_IMPLEMENTED_EXIT_CODE);
477
+ }
478
+ })();
479
+
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@keycloakify/angular",
3
3
  "type": "module",
4
- "version": "0.2.2",
4
+ "version": "0.2.4",
5
5
  "peerDependencies": {
6
6
  "keycloakify": "^11.3.16",
7
7
  "@angular/core": "^18.0.0",
@@ -405,6 +405,6 @@
405
405
  },
406
406
  "homepage": "https://www.keycloakify.dev",
407
407
  "bin": {
408
- "_keycloakify-custom-handler": "bin/main.js"
408
+ "_keycloakify-custom-handler": "bin/index.js"
409
409
  }
410
410
  }
package/src/bin/core.ts CHANGED
@@ -1,10 +1,14 @@
1
- export * from 'keycloakify/bin/shared/customHandler';
2
1
  export type { BuildContext } from 'keycloakify/bin/shared/buildContext';
3
2
  export {
4
- LOGIN_THEME_PAGE_IDS,
5
3
  ACCOUNT_THEME_PAGE_IDS,
6
- type LoginThemePageId,
7
- type AccountThemePageId,
4
+ LOGIN_THEME_PAGE_IDS,
8
5
  THEME_TYPES,
6
+ type AccountThemePageId,
7
+ type LoginThemePageId,
9
8
  type ThemeType
10
9
  } from 'keycloakify/bin/shared/constants';
10
+ export {
11
+ BIN_NAME,
12
+ NOT_IMPLEMENTED_EXIT_CODE,
13
+ readParams
14
+ } from 'keycloakify/bin/shared/customHandler';
@@ -16,5 +16,8 @@
16
16
  "moduleResolution": "node"
17
17
  },
18
18
  "include": ["**/*.ts"],
19
- "exclude": ["initialize-account-theme/boilerplate"]
19
+ "exclude": ["initialize-account-theme/boilerplate"],
20
+ "ts-node": {
21
+ "esm": true
22
+ }
20
23
  }
package/bin/197.index.js DELETED
@@ -1,13 +0,0 @@
1
- export const id = 197;
2
- export const ids = [197];
3
- export const modules = {
4
-
5
- /***/ 197:
6
- /***/ ((module) => {
7
-
8
- module.exports = eval("require")("./add-story");
9
-
10
-
11
- /***/ })
12
-
13
- };
package/bin/381.index.js DELETED
@@ -1,13 +0,0 @@
1
- export const id = 381;
2
- export const ids = [381];
3
- export const modules = {
4
-
5
- /***/ 381:
6
- /***/ ((module) => {
7
-
8
- module.exports = eval("require")("./eject-page");
9
-
10
-
11
- /***/ })
12
-
13
- };
package/bin/504.index.js DELETED
@@ -1,13 +0,0 @@
1
- export const id = 504;
2
- export const ids = [504];
3
- export const modules = {
4
-
5
- /***/ 504:
6
- /***/ ((module) => {
7
-
8
- module.exports = eval("require")("./initialize-account-theme");
9
-
10
-
11
- /***/ })
12
-
13
- };
package/bin/87.index.js DELETED
@@ -1,13 +0,0 @@
1
- export const id = 87;
2
- export const ids = [87];
3
- export const modules = {
4
-
5
- /***/ 87:
6
- /***/ ((module) => {
7
-
8
- module.exports = eval("require")("./update-kc-gen");
9
-
10
-
11
- /***/ })
12
-
13
- };