@alauda-fe/crd-form 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (95) hide show
  1. package/esm2022/alauda-fe-crd-form.mjs +5 -0
  2. package/esm2022/lib/abstract/base-array.mjs +117 -0
  3. package/esm2022/lib/crd-form/component.mjs +334 -0
  4. package/esm2022/lib/crd-form/helper.mjs +32 -0
  5. package/esm2022/lib/crd-form.module.mjs +117 -0
  6. package/esm2022/lib/field-controls/expressions/expression-core.mjs +2 -0
  7. package/esm2022/lib/field-controls/expressions/props-expression.mjs +58 -0
  8. package/esm2022/lib/field-controls/form-item.component.mjs +121 -0
  9. package/esm2022/lib/field-controls/index.mjs +8 -0
  10. package/esm2022/lib/field-controls/module.mjs +141 -0
  11. package/esm2022/lib/field-controls/operand-advanced-field-group.component.mjs +80 -0
  12. package/esm2022/lib/field-controls/operand-array-field-group.component.mjs +112 -0
  13. package/esm2022/lib/field-controls/operand-field-group.component.mjs +98 -0
  14. package/esm2022/lib/field-controls/operand-field.component.mjs +870 -0
  15. package/esm2022/lib/field-controls/widgets/array-table/component.mjs +109 -0
  16. package/esm2022/lib/field-controls/widgets/basic-auth-secret/component.mjs +116 -0
  17. package/esm2022/lib/field-controls/widgets/basic-auth-secret/create/component.mjs +211 -0
  18. package/esm2022/lib/field-controls/widgets/basic-auth-secret/type.mjs +2 -0
  19. package/esm2022/lib/field-controls/widgets/index.mjs +8 -0
  20. package/esm2022/lib/field-controls/widgets/k8s-resource-prefix/component.mjs +169 -0
  21. package/esm2022/lib/field-controls/widgets/k8s-resource-prefix/util.mjs +40 -0
  22. package/esm2022/lib/field-controls/widgets/link/component.mjs +68 -0
  23. package/esm2022/lib/field-controls/widgets/resource-requirements/resource-requirements.component.mjs +524 -0
  24. package/esm2022/lib/field-controls/widgets/utils.mjs +73 -0
  25. package/esm2022/lib/field-controls/widgets/yaml-editor/yaml-editor.component.mjs +94 -0
  26. package/esm2022/lib/field-widgets/htpasswd/component.mjs +35 -0
  27. package/esm2022/lib/field-widgets/htpasswd/form.mjs +171 -0
  28. package/esm2022/lib/field-widgets/htpasswd/index.mjs +4 -0
  29. package/esm2022/lib/field-widgets/htpasswd/module.mjs +54 -0
  30. package/esm2022/lib/field-widgets/index.mjs +2 -0
  31. package/esm2022/lib/remote-widgets/constants.mjs +4 -0
  32. package/esm2022/lib/remote-widgets/index.mjs +4 -0
  33. package/esm2022/lib/remote-widgets/remote-widget.service.mjs +42 -0
  34. package/esm2022/lib/remote-widgets/token.mjs +7 -0
  35. package/esm2022/lib/spec-descriptors/capability/capability.component.mjs +139 -0
  36. package/esm2022/lib/spec-descriptors/capability-list/capability-list.component.mjs +189 -0
  37. package/esm2022/lib/spec-descriptors/index.mjs +4 -0
  38. package/esm2022/lib/spec-descriptors/util.mjs +13 -0
  39. package/esm2022/lib/types/index.mjs +73 -0
  40. package/esm2022/lib/utils/capability.mjs +295 -0
  41. package/esm2022/lib/utils/constant.mjs +22 -0
  42. package/esm2022/lib/utils/directives.mjs +19 -0
  43. package/esm2022/lib/utils/helper.mjs +201 -0
  44. package/esm2022/lib/utils/index.mjs +7 -0
  45. package/esm2022/lib/utils/service-model.mjs +12 -0
  46. package/esm2022/lib/utils/util.mjs +310 -0
  47. package/esm2022/public-api.mjs +13 -0
  48. package/index.d.ts +5 -0
  49. package/lib/abstract/base-array.d.ts +31 -0
  50. package/lib/crd-form/component.d.ts +61 -0
  51. package/lib/crd-form/helper.d.ts +7 -0
  52. package/lib/crd-form.module.d.ts +16 -0
  53. package/lib/field-controls/expressions/expression-core.d.ts +6 -0
  54. package/lib/field-controls/expressions/props-expression.d.ts +36 -0
  55. package/lib/field-controls/form-item.component.d.ts +11 -0
  56. package/lib/field-controls/index.d.ts +7 -0
  57. package/lib/field-controls/module.d.ts +23 -0
  58. package/lib/field-controls/operand-advanced-field-group.component.d.ts +16 -0
  59. package/lib/field-controls/operand-array-field-group.component.d.ts +8 -0
  60. package/lib/field-controls/operand-field-group.component.d.ts +24 -0
  61. package/lib/field-controls/operand-field.component.d.ts +110 -0
  62. package/lib/field-controls/widgets/array-table/component.d.ts +8 -0
  63. package/lib/field-controls/widgets/basic-auth-secret/component.d.ts +26 -0
  64. package/lib/field-controls/widgets/basic-auth-secret/create/component.d.ts +45 -0
  65. package/lib/field-controls/widgets/basic-auth-secret/type.d.ts +11 -0
  66. package/lib/field-controls/widgets/index.d.ts +7 -0
  67. package/lib/field-controls/widgets/k8s-resource-prefix/component.d.ts +35 -0
  68. package/lib/field-controls/widgets/k8s-resource-prefix/util.d.ts +3 -0
  69. package/lib/field-controls/widgets/link/component.d.ts +20 -0
  70. package/lib/field-controls/widgets/resource-requirements/resource-requirements.component.d.ts +88 -0
  71. package/lib/field-controls/widgets/utils.d.ts +17 -0
  72. package/lib/field-controls/widgets/yaml-editor/yaml-editor.component.d.ts +36 -0
  73. package/lib/field-widgets/htpasswd/component.d.ts +9 -0
  74. package/lib/field-widgets/htpasswd/form.d.ts +32 -0
  75. package/lib/field-widgets/htpasswd/index.d.ts +3 -0
  76. package/lib/field-widgets/htpasswd/module.d.ts +13 -0
  77. package/lib/field-widgets/index.d.ts +1 -0
  78. package/lib/remote-widgets/constants.d.ts +3 -0
  79. package/lib/remote-widgets/index.d.ts +3 -0
  80. package/lib/remote-widgets/remote-widget.service.d.ts +28 -0
  81. package/lib/remote-widgets/token.d.ts +3 -0
  82. package/lib/spec-descriptors/capability/capability.component.d.ts +20 -0
  83. package/lib/spec-descriptors/capability-list/capability-list.component.d.ts +34 -0
  84. package/lib/spec-descriptors/index.d.ts +3 -0
  85. package/lib/spec-descriptors/util.d.ts +4 -0
  86. package/lib/types/index.d.ts +122 -0
  87. package/lib/utils/capability.d.ts +54 -0
  88. package/lib/utils/constant.d.ts +12 -0
  89. package/lib/utils/directives.d.ts +9 -0
  90. package/lib/utils/helper.d.ts +61 -0
  91. package/lib/utils/index.d.ts +6 -0
  92. package/lib/utils/service-model.d.ts +44 -0
  93. package/lib/utils/util.d.ts +48 -0
  94. package/package.json +30 -0
  95. package/public-api.d.ts +9 -0
@@ -0,0 +1,73 @@
1
+ import { parseJson } from '@alauda-fe/common';
2
+ import { escapeRegExp } from 'lodash-es';
3
+ import { SpecCapability } from '../../types';
4
+ function getConfigurations(specCapability, part) {
5
+ const regExp = new RegExp(`^${escapeRegExp(part)}(.*)$`);
6
+ const [_, config] = regExp.exec(specCapability) || [];
7
+ return config;
8
+ }
9
+ // urn:alm:descriptor:com.tectonic.ui:resourceRequirements:required
10
+ // urn:alm:descriptor:com.tectonic.ui:resourceRequirements:required:limit-memory&limit-cpu&request-memory&request-cpu
11
+ // urn:alm:descriptor:com.tectonic.ui:resourceRequirements:required:limit&request-memory
12
+ export function resolveRequirementsRequiredOptions(field) {
13
+ if (!field) {
14
+ return null;
15
+ }
16
+ const options = field.capabilities.filter(descriptor => descriptor.startsWith(SpecCapability.resourceRequirements));
17
+ const allRequired = options.includes(`${SpecCapability.resourceRequirements}:required`);
18
+ if (allRequired) {
19
+ return {
20
+ required: {
21
+ limit: ['cpu', 'memory'],
22
+ request: ['cpu', 'memory'],
23
+ },
24
+ };
25
+ }
26
+ const requiredMap = options.reduce((prev, curr) => {
27
+ const partsStr = curr.split(`${SpecCapability.resourceRequirements}:required:`)?.[1];
28
+ partsStr?.split('&')?.forEach(optionStr => {
29
+ const options = optionStr?.split('-');
30
+ if (options.length === 1) {
31
+ prev[options[0]].add('memory').add('cpu');
32
+ }
33
+ if (options.length > 1) {
34
+ prev[options[0]].add(options[1]);
35
+ }
36
+ });
37
+ return prev;
38
+ }, {
39
+ limit: new Set(),
40
+ request: new Set(),
41
+ });
42
+ return {
43
+ required: {
44
+ limit: Array.from(requiredMap.limit),
45
+ request: Array.from(requiredMap.request),
46
+ },
47
+ };
48
+ }
49
+ // urn:alm:descriptor:com.tectonic.ui:resourceRequirements:min:{"limits": {"cpu":"2c", "memory":"500Mi"}, "requests":{"cpu":"100m", "memory":"250Mi"}}
50
+ // urn:alm:descriptor:com.tectonic.ui:resourceRequirements:max:{"limits": {"cpu":"4c", "memory":"500Mi"}, "requests":{"cpu":"4c", "memory":"500Mi"}}
51
+ export function resolveRequirementsMinOrMaxOptions(field) {
52
+ if (!field) {
53
+ return null;
54
+ }
55
+ const options = field.capabilities.filter(descriptor => descriptor.startsWith(SpecCapability.resourceRequirements));
56
+ const getConfigurationMap = (option, capability) => {
57
+ const configuration = getConfigurations(option, capability);
58
+ const { limits, requests } = parseJson(configuration, {
59
+ limits: { cpu: null, memory: null },
60
+ requests: { cpu: null, memory: null },
61
+ });
62
+ return { limits, requests };
63
+ };
64
+ const getResourceMinOrMaxMap = (suffix) => {
65
+ const option = options.find(option => option.includes(`${SpecCapability.resourceRequirements}:${suffix}:`));
66
+ return getConfigurationMap(option, `${SpecCapability.resourceRequirements}:${suffix}:`);
67
+ };
68
+ return {
69
+ min: getResourceMinOrMaxMap('min'),
70
+ max: getResourceMinOrMaxMap('max'),
71
+ };
72
+ }
73
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NyZC1mb3JtL3NyYy9saWIvZmllbGQtY29udHJvbHMvd2lkZ2V0cy91dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDOUMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUV6QyxPQUFPLEVBQWdCLGNBQWMsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUUzRCxTQUFTLGlCQUFpQixDQUFDLGNBQXNCLEVBQUUsSUFBWTtJQUM3RCxNQUFNLE1BQU0sR0FBRyxJQUFJLE1BQU0sQ0FBQyxJQUFJLFlBQVksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDekQsTUFBTSxDQUFDLENBQUMsRUFBRSxNQUFNLENBQUMsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN0RCxPQUFPLE1BQU0sQ0FBQztBQUNoQixDQUFDO0FBRUQsbUVBQW1FO0FBQ25FLHFIQUFxSDtBQUNySCx3RkFBd0Y7QUFDeEYsTUFBTSxVQUFVLGtDQUFrQyxDQUFDLEtBQW1CO0lBQ3BFLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNYLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUNELE1BQU0sT0FBTyxHQUFHLEtBQUssQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQ3JELFVBQVUsQ0FBQyxVQUFVLENBQUMsY0FBYyxDQUFDLG9CQUFvQixDQUFDLENBQy9DLENBQUM7SUFDZCxNQUFNLFdBQVcsR0FBRyxPQUFPLENBQUMsUUFBUSxDQUNsQyxHQUFHLGNBQWMsQ0FBQyxvQkFBb0IsV0FBVyxDQUNsRCxDQUFDO0lBQ0YsSUFBSSxXQUFXLEVBQUUsQ0FBQztRQUNoQixPQUFPO1lBQ0wsUUFBUSxF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QixDQUN4QixNQUFNLEVBQ04sR0FBRyxjQUFjLENBQUMsb0JBQW9CLElBQUksTUFBTSxHQUFHLENBQ3BELENBQUM7SUFDSixDQUFDLENBQUM7SUFFRixPQUFPO1FBQ0wsR0FBRyxFQUFFLHNCQUFzQixDQUFDLEtBQUssQ0FBQztRQUNsQyxHQUFHLEVBQUUsc0JBQXNCLENBQUMsS0FBSyxDQUFDO0tBQ25DLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcGFyc2VKc29uIH0gZnJvbSAnQGFsYXVkYS1mZS9jb21tb24nO1xuaW1wb3J0IHsgZXNjYXBlUmVnRXhwIH0gZnJvbSAnbG9kYXNoLWVzJztcblxuaW1wb3J0IHsgT3BlcmFuZEZpZWxkLCBTcGVjQ2FwYWJpbGl0eSB9IGZyb20gJy4uLy4uL3R5cGVzJztcblxuZnVuY3Rpb24gZ2V0Q29uZmlndXJhdGlvbnMoc3BlY0NhcGFiaWxpdHk6IHN0cmluZywgcGFydDogc3RyaW5nKSB7XG4gIGNvbnN0IHJlZ0V4cCA9IG5ldyBSZWdFeHAoYF4ke2VzY2FwZVJlZ0V4cChwYXJ0KX0oLiopJGApO1xuICBjb25zdCBbXywgY29uZmlnXSA9IHJlZ0V4cC5leGVjKHNwZWNDYXBhYmlsaXR5KSB8fCBbXTtcbiAgcmV0dXJuIGNvbmZpZztcbn1cblxuLy8gdXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTpyZXNvdXJjZVJlcXVpcmVtZW50czpyZXF1aXJlZFxuLy8gdXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTpyZXNvdXJjZVJlcXVpcmVtZW50czpyZXF1aXJlZDpsaW1pdC1tZW1vcnkmbGltaXQtY3B1JnJlcXVlc3QtbWVtb3J5JnJlcXVlc3QtY3B1XG4vLyB1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOnJlc291cmNlUmVxdWlyZW1lbnRzOnJlcXVpcmVkOmxpbWl0JnJlcXVlc3QtbWVtb3J5XG5leHBvcnQgZnVuY3Rpb24gcmVzb2x2ZVJlcXVpcmVtZW50c1JlcXVpcmVkT3B0aW9ucyhmaWVsZDogT3BlcmFuZEZpZWxkKSB7XG4gIGlmICghZmllbGQpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuICBjb25zdCBvcHRpb25zID0gZmllbGQuY2FwYWJpbGl0aWVzLmZpbHRlcihkZXNjcmlwdG9yID0+XG4gICAgZGVzY3JpcHRvci5zdGFydHNXaXRoKFNwZWNDYXBhYmlsaXR5LnJlc291cmNlUmVxdWlyZW1lbnRzKSxcbiAgKSBhcyBzdHJpbmdbXTtcbiAgY29uc3QgYWxsUmVxdWlyZWQgPSBvcHRpb25zLmluY2x1ZGVzKFxuICAgIGAke1NwZWNDYXBhYmlsaXR5LnJlc291cmNlUmVxdWlyZW1lbnRzfTpyZXF1aXJlZGAsXG4gICk7XG4gIGlmIChhbGxSZXF1aXJlZCkge1xuICAgIHJldHVybiB7XG4gICAgICByZXF1aXJlZDoge1xuICAgICAgICBsaW1pdDogWydjcHUnLCAnbWVtb3J5J10sXG4gICAgICAgIHJlcXVlc3Q6IFsnY3B1JywgJ21lbW9yeSddLFxuICAgICAgfSxcbiAgICB9O1xuICB9XG4gIGNvbnN0IHJlcXVpcmVkTWFwID0gb3B0aW9ucy5yZWR1Y2UoXG4gICAgKHByZXYsIGN1cnIpID0+IHtcbiAgICAgIGNvbnN0IHBhcnRzU3RyID0gY3Vyci5zcGxpdChcbiAgICAgICAgYCR7U3BlY0NhcGFiaWxpdHkucmVzb3VyY2VSZXF1aXJlbWVudHN9OnJlcXVpcmVkOmAsXG4gICAgICApPy5bMV07XG4gICAgICBwYXJ0c1N0cj8uc3BsaXQoJyYnKT8uZm9yRWFjaChvcHRpb25TdHIgPT4ge1xuICAgICAgICBjb25zdCBvcHRpb25zID0gb3B0aW9uU3RyPy5zcGxpdCgnLScpO1xuICAgICAgICBpZiAob3B0aW9ucy5sZW5ndGggPT09IDEpIHtcbiAgICAgICAgICBwcmV2W29wdGlvbnNbMF0gYXMgJ2xpbWl0JyB8ICdyZXF1ZXN0J10uYWRkKCdtZW1vcnknKS5hZGQoJ2NwdScpO1xuICAgICAgICB9XG4gICAgICAgIGlmIChvcHRpb25zLmxlbmd0aCA+IDEpIHtcbiAgICAgICAgICBwcmV2W29wdGlvbnNbMF0gYXMgJ2xpbWl0JyB8ICdyZXF1ZXN0J10uYWRkKG9wdGlvbnNbMV0pO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICAgIHJldHVybiBwcmV2O1xuICAgIH0sXG4gICAge1xuICAgICAgbGltaXQ6IG5ldyBTZXQ8c3RyaW5nPigpLFxuICAgICAgcmVxdWVzdDogbmV3IFNldDxzdHJpbmc+KCksXG4gICAgfSxcbiAgKTtcblxuICByZXR1cm4ge1xuICAgIHJlcXVpcmVkOiB7XG4gICAgICBsaW1pdDogQXJyYXkuZnJvbShyZXF1aXJlZE1hcC5saW1pdCksXG4gICAgICByZXF1ZXN0OiBBcnJheS5mcm9tKHJlcXVpcmVkTWFwLnJlcXVlc3QpLFxuICAgIH0sXG4gIH07XG59XG5cbi8vIHVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6cmVzb3VyY2VSZXF1aXJlbWVudHM6bWluOntcImxpbWl0c1wiOiB7XCJjcHVcIjpcIjJjXCIsIFwibWVtb3J5XCI6XCI1MDBNaVwifSwgXCJyZXF1ZXN0c1wiOntcImNwdVwiOlwiMTAwbVwiLCBcIm1lbW9yeVwiOlwiMjUwTWlcIn19XG4vLyB1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOnJlc291cmNlUmVxdWlyZW1lbnRzOm1heDp7XCJsaW1pdHNcIjoge1wiY3B1XCI6XCI0Y1wiLCBcIm1lbW9yeVwiOlwiNTAwTWlcIn0sIFwicmVxdWVzdHNcIjp7XCJjcHVcIjpcIjRjXCIsIFwibWVtb3J5XCI6XCI1MDBNaVwifX1cbmV4cG9ydCBmdW5jdGlvbiByZXNvbHZlUmVxdWlyZW1lbnRzTWluT3JNYXhPcHRpb25zKGZpZWxkOiBPcGVyYW5kRmllbGQpIHtcbiAgaWYgKCFmaWVsZCkge1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgY29uc3Qgb3B0aW9ucyA9IGZpZWxkLmNhcGFiaWxpdGllcy5maWx0ZXIoZGVzY3JpcHRvciA9PlxuICAgIGRlc2NyaXB0b3Iuc3RhcnRzV2l0aChTcGVjQ2FwYWJpbGl0eS5yZXNvdXJjZVJlcXVpcmVtZW50cyksXG4gICkgYXMgc3RyaW5nW107XG5cbiAgY29uc3QgZ2V0Q29uZmlndXJhdGlvbk1hcCA9IChvcHRpb246IHN0cmluZywgY2FwYWJpbGl0eTogc3RyaW5nKSA9PiB7XG4gICAgY29uc3QgY29uZmlndXJhdGlvbiA9IGdldENvbmZpZ3VyYXRpb25zKG9wdGlvbiwgY2FwYWJpbGl0eSk7XG4gICAgY29uc3QgeyBsaW1pdHMsIHJlcXVlc3RzIH0gPSBwYXJzZUpzb248e1xuICAgICAgbGltaXRzOiB7IGNwdTogc3RyaW5nOyBtZW1vcnk6IHN0cmluZyB9O1xuICAgICAgcmVxdWVzdHM6IHsgY3B1OiBzdHJpbmc7IG1lbW9yeTogc3RyaW5nIH07XG4gICAgfT4oY29uZmlndXJhdGlvbiwge1xuICAgICAgbGltaXRzOiB7IGNwdTogbnVsbCwgbWVtb3J5OiBudWxsIH0sXG4gICAgICByZXF1ZXN0czogeyBjcHU6IG51bGwsIG1lbW9yeTogbnVsbCB9LFxuICAgIH0pO1xuXG4gICAgcmV0dXJuIHsgbGltaXRzLCByZXF1ZXN0cyB9O1xuICB9O1xuXG4gIGNvbnN0IGdldFJlc291cmNlTWluT3JNYXhNYXAgPSAoc3VmZml4OiBzdHJpbmcpID0+IHtcbiAgICBjb25zdCBvcHRpb24gPSBvcHRpb25zLmZpbmQob3B0aW9uID0+XG4gICAgICBvcHRpb24uaW5jbHVkZXMoYCR7U3BlY0NhcGFiaWxpdHkucmVzb3VyY2VSZXF1aXJlbWVudHN9OiR7c3VmZml4fTpgKSxcbiAgICApO1xuICAgIHJldHVybiBnZXRDb25maWd1cmF0aW9uTWFwKFxuICAgICAgb3B0aW9uLFxuICAgICAgYCR7U3BlY0NhcGFiaWxpdHkucmVzb3VyY2VSZXF1aXJlbWVudHN9OiR7c3VmZml4fTpgLFxuICAgICk7XG4gIH07XG5cbiAgcmV0dXJuIHtcbiAgICBtaW46IGdldFJlc291cmNlTWluT3JNYXhNYXAoJ21pbicpLFxuICAgIG1heDogZ2V0UmVzb3VyY2VNaW5Pck1heE1hcCgnbWF4JyksXG4gIH07XG59XG4iXX0=
@@ -0,0 +1,94 @@
1
+ import { stringify, parse } from '@alauda-fe/common';
2
+ import { ChangeDetectionStrategy, Component, Injector, Input, } from '@angular/core';
3
+ import { BaseResourceFormGroupComponent } from 'ng-resource-form-util';
4
+ import { SpecCapability } from '../../../types';
5
+ import { OperandFieldComponent } from '../../operand-field.component';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "../../operand-field.component";
8
+ import * as i2 from "@angular/forms";
9
+ import * as i3 from "@alauda/ui";
10
+ import * as i4 from "@alauda/code-editor";
11
+ import * as i5 from "@alauda-fe/common";
12
+ export class YamlEditorComponent extends BaseResourceFormGroupComponent {
13
+ constructor(injector, fieldComponent) {
14
+ super(injector);
15
+ this.fieldComponent = fieldComponent;
16
+ this.disabledActionsConfig = {};
17
+ this.resultFormat = 'json';
18
+ this.disabledActionsConfig = this.getDisabledActionsConfig(this.fieldComponent?.field);
19
+ this.resultFormat = this.getResultFormat(this.fieldComponent?.field);
20
+ }
21
+ getResultFormat(field) {
22
+ return (field?.capabilities
23
+ .find(c => c.startsWith(SpecCapability.yamlResult))
24
+ ?.split(SpecCapability.yamlResult)?.[1] || 'json');
25
+ }
26
+ createForm() {
27
+ return this.fb.group({
28
+ yaml: null,
29
+ });
30
+ }
31
+ getDisabledActionsConfig(field) {
32
+ const disabledActions = field?.capabilities
33
+ .find(c => c.startsWith(SpecCapability.yamlActionsDisabled))
34
+ ?.split(SpecCapability.yamlActionsDisabled)?.[1]
35
+ ?.split(',') || [];
36
+ return disabledActions.reduce((acc, cur) => ({ ...acc, [cur]: false }), {});
37
+ }
38
+ adaptResourceModel(resource) {
39
+ try {
40
+ return {
41
+ yaml: resource
42
+ ? stringify(this.resultFormat === 'json'
43
+ ? resource
44
+ : JSON.parse(resource))
45
+ : '',
46
+ };
47
+ }
48
+ catch (e) {
49
+ console.error(e);
50
+ return {
51
+ yaml: '',
52
+ };
53
+ }
54
+ }
55
+ adaptFormModel(formModel) {
56
+ try {
57
+ const parsedYaml = parse(formModel.yaml);
58
+ return this.resultFormat === 'json'
59
+ ? parsedYaml
60
+ : parsedYaml
61
+ ? JSON.stringify(parsedYaml)
62
+ : '';
63
+ }
64
+ catch { }
65
+ return null;
66
+ }
67
+ getActionsConfig(defaultActions, disabledActions) {
68
+ return {
69
+ ...defaultActions,
70
+ ...disabledActions,
71
+ };
72
+ }
73
+ static { this.ɵfac = function YamlEditorComponent_Factory(t) { return new (t || YamlEditorComponent)(i0.ɵɵdirectiveInject(i0.Injector), i0.ɵɵdirectiveInject(i1.OperandFieldComponent)); }; }
74
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: YamlEditorComponent, selectors: [["acl-crd-yaml-editor"]], inputs: { actionsConfig: "actionsConfig", options: "options" }, features: [i0.ɵɵInheritDefinitionFeature], decls: 3, vars: 7, consts: [["aui-form", "", 3, "formGroup"], ["auiFormItemControl", "", "formControlName", "yaml", 3, "actionsConfig", "options"]], template: function YamlEditorComponent_Template(rf, ctx) { if (rf & 1) {
75
+ i0.ɵɵelementStart(0, "form", 0);
76
+ i0.ɵɵelement(1, "aui-code-editor", 1);
77
+ i0.ɵɵpipe(2, "pure");
78
+ i0.ɵɵelementEnd();
79
+ } if (rf & 2) {
80
+ i0.ɵɵproperty("formGroup", ctx.form);
81
+ i0.ɵɵadvance();
82
+ i0.ɵɵproperty("actionsConfig", i0.ɵɵpipeBind3(2, 3, ctx.actionsConfig, ctx.getActionsConfig, ctx.disabledActionsConfig))("options", ctx.options);
83
+ } }, dependencies: [i2.ɵNgNoValidate, i2.NgControlStatus, i2.NgControlStatusGroup, i2.FormGroupDirective, i2.FormControlName, i3.FormItemControlDirective, i4.CodeEditorComponent, i5.PurePipe], styles: ["[_nghost-%COMP%]{width:100%}[_nghost-%COMP%] form[_ngcontent-%COMP%]{width:100%}"], changeDetection: 0 }); }
84
+ }
85
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(YamlEditorComponent, [{
86
+ type: Component,
87
+ args: [{ selector: 'acl-crd-yaml-editor', changeDetection: ChangeDetectionStrategy.OnPush, template: "<form\n aui-form\n [formGroup]=\"form\"\n>\n <aui-code-editor\n auiFormItemControl\n formControlName=\"yaml\"\n [actionsConfig]=\"\n actionsConfig | pure: getActionsConfig:disabledActionsConfig\n \"\n [options]=\"options\"\n ></aui-code-editor>\n</form>\n", styles: [":host{width:100%}:host form{width:100%}\n"] }]
88
+ }], () => [{ type: i0.Injector }, { type: i1.OperandFieldComponent }], { actionsConfig: [{
89
+ type: Input
90
+ }], options: [{
91
+ type: Input
92
+ }] }); })();
93
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(YamlEditorComponent, { className: "YamlEditorComponent", filePath: "lib/field-controls/widgets/yaml-editor/yaml-editor.component.ts", lineNumber: 27 }); })();
94
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWFtbC1lZGl0b3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jcmQtZm9ybS9zcmMvbGliL2ZpZWxkLWNvbnRyb2xzL3dpZGdldHMveWFtbC1lZGl0b3IveWFtbC1lZGl0b3IuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jcmQtZm9ybS9zcmMvbGliL2ZpZWxkLWNvbnRyb2xzL3dpZGdldHMveWFtbC1lZGl0b3IveWFtbC1lZGl0b3IuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNyRCxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxRQUFRLEVBQ1IsS0FBSyxHQUNOLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRXZFLE9BQU8sRUFBZ0IsY0FBYyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDOUQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sK0JBQStCLENBQUM7Ozs7Ozs7QUFZdEUsTUFBTSxPQUFPLG1CQUFvQixTQUFRLDhCQUd4QztJQVVDLFlBQ0UsUUFBa0IsRUFDRCxjQUFxQztRQUV0RCxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7UUFGQyxtQkFBYyxHQUFkLGNBQWMsQ0FBdUI7UUFMeEQsMEJBQXFCLEdBQTRCLEVBQUUsQ0FBQztRQUNwRCxpQkFBWSxHQUFHLE1BQU0sQ0FBQztRQU9wQixJQUFJLENBQUMscUJBQXFCLEdBQUcsSUFBSSxDQUFDLHdCQUF3QixDQUN4RCxJQUFJLENBQUMsY0FBYyxFQUFFLEtBQUssQ0FDM0IsQ0FBQztRQUNGLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMs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e1xuICBDb2RlRWRpdG9yQWN0aW9uc0NvbmZpZyxcbiAgTW9uYWNvRWRpdG9yT3B0aW9ucyxcbn0gZnJvbSAnQGFsYXVkYS9jb2RlLWVkaXRvcic7XG5pbXBvcnQgeyBzdHJpbmdpZnksIHBhcnNlIH0gZnJvbSAnQGFsYXVkYS1mZS9jb21tb24nO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgSW5qZWN0b3IsXG4gIElucHV0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJhc2VSZXNvdXJjZUZvcm1Hcm91cENvbXBvbmVudCB9IGZyb20gJ25nLXJlc291cmNlLWZvcm0tdXRpbCc7XG5cbmltcG9ydCB7IE9wZXJhbmRGaWVsZCwgU3BlY0NhcGFiaWxpdHkgfSBmcm9tICcuLi8uLi8uLi90eXBlcyc7XG5pbXBvcnQgeyBPcGVyYW5kRmllbGRDb21wb25lbnQgfSBmcm9tICcuLi8uLi9vcGVyYW5kLWZpZWxkLmNvbXBvbmVudCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgWWFtbEVkaXRvckZvcm1Nb2RlbCB7XG4gIHlhbWw6IHN0cmluZztcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYWNsLWNyZC15YW1sLWVkaXRvcicsXG4gIHRlbXBsYXRlVXJsOiAnLi95YW1sLWVkaXRvci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3lhbWwtZWRpdG9yLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBZYW1sRWRpdG9yQ29tcG9uZW50IGV4dGVuZHMgQmFzZVJlc291cmNlRm9ybUdyb3VwQ29tcG9uZW50PFxuICB1bmtub3duLFxuICBZYW1sRWRpdG9yRm9ybU1vZGVsXG4+IHtcbiAgQElucHV0KClcbiAgYWN0aW9uc0NvbmZpZzogQ29kZUVkaXRvckFjdGlvbnNDb25maWc7XG5cbiAgQElucHV0KClcbiAgb3B0aW9uczogTW9uYWNvRWRpdG9yT3B0aW9ucztcblxuICBkaXNhYmxlZEFjdGlvbnNDb25maWc6IENvZGVFZGl0b3JBY3Rpb25zQ29uZmlnID0ge307XG4gIHJlc3VsdEZvcm1hdCA9ICdqc29uJztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgcHJpdmF0ZSByZWFkb25seSBmaWVsZENvbXBvbmVudDogT3BlcmFuZEZpZWxkQ29tcG9uZW50LFxuICApIHtcbiAgICBzdXBlcihpbmplY3Rvcik7XG4gICAgdGhpcy5kaXNhYmxlZEFjdGlvbnNDb25maWcgPSB0aGlzLmdldERpc2FibGVkQWN0aW9uc0NvbmZpZyhcbiAgICAgIHRoaXMuZmllbGRDb21wb25lbnQ/LmZpZWxkLFxuICAgICk7XG4gICAgdGhpcy5yZXN1bHRGb3JtYXQgPSB0aGlzLmdldFJlc3VsdEZvcm1hdCh0aGlzLmZpZWxkQ29tcG9uZW50Py5maWVsZCk7XG4gIH1cblxuICBwcml2YXRlIGdldFJlc3VsdEZvcm1hdChmaWVsZDogT3BlcmFuZEZpZWxkKSB7XG4gICAgcmV0dXJuIChcbiAgICAgIGZpZWxkPy5jYXBhYmlsaXRpZXNcbiAgICAgICAgLmZpbmQoYyA9PiBjLnN0YXJ0c1dpdGgoU3BlY0NhcGFiaWxpdHkueWFtbFJlc3VsdCkpXG4gICAgICAgID8uc3BsaXQoU3BlY0NhcGFiaWxpdHkueWFtbFJlc3VsdCk/LlsxXSB8fCAnanNvbidcbiAgICApO1xuICB9XG5cbiAgY3JlYXRlRm9ybSgpIHtcbiAgICByZXR1cm4gdGhpcy5mYi5ncm91cCh7XG4gICAgICB5YW1sOiBudWxsLFxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXREaXNhYmxlZEFjdGlvbnNDb25maWcoXG4gICAgZmllbGQ6IE9wZXJhbmRGaWVsZCxcbiAgKTogQ29kZUVkaXRvckFjdGlvbnNDb25maWcge1xuICAgIGNvbnN0IGRpc2FibGVkQWN0aW9ucyA9XG4gICAgICBmaWVsZD8uY2FwYWJpbGl0aWVzXG4gICAgICAgIC5maW5kKGMgPT4gYy5zdGFydHNXaXRoKFNwZWNDYXBhYmlsaXR5LnlhbWxBY3Rpb25zRGlzYWJsZWQpKVxuICAgICAgICA/LnNwbGl0KFNwZWNDYXBhYmlsaXR5LnlhbWxBY3Rpb25zRGlzYWJsZWQpPy5bMV1cbiAgICAgICAgPy5zcGxpdCgnLCcpIHx8IFtdO1xuICAgIHJldHVybiBkaXNhYmxlZEFjdGlvbnMucmVkdWNlKChhY2MsIGN1cikgPT4gKHsgLi4uYWNjLCBbY3VyXTogZmFsc2UgfSksIHt9KTtcbiAgfVxuXG4gIG92ZXJyaWRlIGFkYXB0UmVzb3VyY2VNb2RlbChyZXNvdXJjZTogdW5rbm93bik6IFlhbWxFZGl0b3JGb3JtTW9kZWwge1xuICAgIHRyeSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICB5YW1sOiByZXNvdXJjZVxuICAgICAgICAgID8gc3RyaW5naWZ5KFxuICAgICAgICAgICAgICB0aGlzLnJlc3VsdEZvcm1hdCA9PT0gJ2pzb24nXG4gICAgICAgICAgICAgICAgPyByZXNvdXJjZVxuICAgICAgICAgICAgICAgIDogSlNPTi5wYXJzZShyZXNvdXJjZSBhcyBzdHJpbmcpLFxuICAgICAgICAgICAgKVxuICAgICAgICAgIDogJycsXG4gICAgICB9O1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoZSk7XG4gICAgICByZXR1cm4ge1xuICAgICAgICB5YW1sOiAnJyxcbiAgICAgIH07XG4gICAgfVxuICB9XG5cbiAgb3ZlcnJpZGUgYWRhcHRGb3JtTW9kZWwoZm9ybU1vZGVsOiBZYW1sRWRpdG9yRm9ybU1vZGVsKSB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHBhcnNlZFlhbWwgPSBwYXJzZTxZYW1sRWRpdG9yRm9ybU1vZGVsPihmb3JtTW9kZWwueWFtbCk7XG4gICAgICByZXR1cm4gdGhpcy5yZXN1bHRGb3JtYXQgPT09ICdqc29uJ1xuICAgICAgICA/IHBhcnNlZFlhbWxcbiAgICAgICAgOiBwYXJzZWRZYW1sXG4gICAgICAgID8gSlNPTi5zdHJpbmdpZnkocGFyc2VkWWFtbClcbiAgICAgICAgOiAnJztcbiAgICB9IGNhdGNoIHt9XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBnZXRBY3Rpb25zQ29uZmlnKFxuICAgIGRlZmF1bHRBY3Rpb25zOiBDb2RlRWRpdG9yQWN0aW9uc0NvbmZpZyxcbiAgICBkaXNhYmxlZEFjdGlvbnM6IENvZGVFZGl0b3JBY3Rpb25zQ29uZmlnLFxuICApIHtcbiAgICByZXR1cm4ge1xuICAgICAgLi4uZGVmYXVsdEFjdGlvbnMsXG4gICAgICAuLi5kaXNhYmxlZEFjdGlvbnMsXG4gICAgfTtcbiAgfVxufVxuIiwiPGZvcm1cbiAgYXVpLWZvcm1cbiAgW2Zvcm1Hcm91cF09XCJmb3JtXCJcbj5cbiAgPGF1aS1jb2RlLWVkaXRvclxuICAgIGF1aUZvcm1JdGVtQ29udHJvbFxuICAgIGZvcm1Db250cm9sTmFtZT1cInlhbWxcIlxuICAgIFthY3Rpb25zQ29uZmlnXT1cIlxuICAgICAgYWN0aW9uc0NvbmZpZyB8IHB1cmU6IGdldEFjdGlvbnNDb25maWc6ZGlzYWJsZWRBY3Rpb25zQ29uZmlnXG4gICAgXCJcbiAgICBbb3B0aW9uc109XCJvcHRpb25zXCJcbiAgPjwvYXVpLWNvZGUtZWRpdG9yPlxuPC9mb3JtPlxuIl19
@@ -0,0 +1,35 @@
1
+ import { ChangeDetectionStrategy, Component } from '@angular/core';
2
+ import { OperandFieldComponent } from '../../field-controls';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "../../field-controls";
5
+ import * as i2 from "@angular/forms";
6
+ import * as i3 from "@alauda-fe/common";
7
+ import * as i4 from "./form";
8
+ export class HtpasswdComponent {
9
+ constructor(fieldComponent) {
10
+ this.fieldComponent = fieldComponent;
11
+ this.isUpdate =
12
+ !!fieldComponent.control.value && !fieldComponent.control.dirty;
13
+ }
14
+ static { this.ɵfac = function HtpasswdComponent_Factory(t) { return new (t || HtpasswdComponent)(i0.ɵɵdirectiveInject(i1.OperandFieldComponent)); }; }
15
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: HtpasswdComponent, selectors: [["ng-component"]], decls: 1, vars: 5, consts: [[3, "hidden", "formControl", "field", "required", "isUpdate"]], template: function HtpasswdComponent_Template(rf, ctx) { if (rf & 1) {
16
+ i0.ɵɵelement(0, "acl-htpasswd-form", 0);
17
+ } if (rf & 2) {
18
+ i0.ɵɵproperty("hidden", ctx.fieldComponent.isDisabled)("formControl", ctx.fieldComponent.control)("field", ctx.fieldComponent.field)("required", ctx.fieldComponent.isRequired)("isUpdate", ctx.isUpdate);
19
+ } }, dependencies: [i2.NgControlStatus, i2.RequiredValidator, i2.FormControlDirective, i3.ValidatorsDirective, i4.HtpasswdFormComponent], encapsulation: 2, changeDetection: 0 }); }
20
+ }
21
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(HtpasswdComponent, [{
22
+ type: Component,
23
+ args: [{
24
+ template: `<acl-htpasswd-form
25
+ [hidden]="fieldComponent.isDisabled"
26
+ [formControl]="fieldComponent.control"
27
+ [field]="fieldComponent.field"
28
+ [required]="fieldComponent.isRequired"
29
+ [isUpdate]="isUpdate"
30
+ ></acl-htpasswd-form>`,
31
+ changeDetection: ChangeDetectionStrategy.OnPush,
32
+ }]
33
+ }], () => [{ type: i1.OperandFieldComponent }], null); })();
34
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(HtpasswdComponent, { className: "HtpasswdComponent", filePath: "lib/field-widgets/htpasswd/component.ts", lineNumber: 15 }); })();
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jcmQtZm9ybS9zcmMvbGliL2ZpZWxkLXdpZGdldHMvaHRwYXNzd2QvY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFbkUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7Ozs7OztBQVk3RCxNQUFNLE9BQU8saUJBQWlCO0lBRzVCLFlBQW1CLGNBQXFDO1FBQXJDLG1CQUFjLEdBQWQsY0FBYyxDQUF1QjtRQUN0RCxJQUFJLENBQUMsUUFBUTtZQUNYLENBQUMsQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLEtBQUssSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDO0lBQ3BFLENBQUM7a0ZBTlUsaUJBQWlCO29FQUFqQixpQkFBaUI7WUFUakIsdUNBTVU7O1lBRG5CLEFBREEsQUFEQSxBQURBLEFBREEsc0RBQW9DLDJDQUNFLG1DQUNSLDJDQUNRLDBCQUNqQjs7O2lGQUlaLGlCQUFpQjtjQVY3QixTQUFTO2VBQUM7Z0JBQ1QsUUFBUSxFQUFFOzs7Ozs7d0JBTVk7Z0JBQ3RCLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2FBQ2hEOztrRkFDWSxpQkFBaUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IE9wZXJhbmRGaWVsZENvbXBvbmVudCB9IGZyb20gJy4uLy4uL2ZpZWxkLWNvbnRyb2xzJztcblxuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlOiBgPGFjbC1odHBhc3N3ZC1mb3JtXG4gICAgW2hpZGRlbl09XCJmaWVsZENvbXBvbmVudC5pc0Rpc2FibGVkXCJcbiAgICBbZm9ybUNvbnRyb2xdPVwiZmllbGRDb21wb25lbnQuY29udHJvbFwiXG4gICAgW2ZpZWxkXT1cImZpZWxkQ29tcG9uZW50LmZpZWxkXCJcbiAgICBbcmVxdWlyZWRdPVwiZmllbGRDb21wb25lbnQuaXNSZXF1aXJlZFwiXG4gICAgW2lzVXBkYXRlXT1cImlzVXBkYXRlXCJcbiAgPjwvYWNsLWh0cGFzc3dkLWZvcm0+YCxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEh0cGFzc3dkQ29tcG9uZW50IHtcbiAgaXNVcGRhdGU6IGJvb2xlYW47XG5cbiAgY29uc3RydWN0b3IocHVibGljIGZpZWxkQ29tcG9uZW50OiBPcGVyYW5kRmllbGRDb21wb25lbnQpIHtcbiAgICB0aGlzLmlzVXBkYXRlID1cbiAgICAgICEhZmllbGRDb21wb25lbnQuY29udHJvbC52YWx1ZSAmJiAhZmllbGRDb21wb25lbnQuY29udHJvbC5kaXJ0eTtcbiAgfVxufVxuIl19
@@ -0,0 +1,171 @@
1
+ import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
2
+ import { hashSync } from 'bcryptjs';
3
+ import { BaseResourceFormComponent } from 'ng-resource-form-util';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/common";
6
+ import * as i2 from "@angular/forms";
7
+ import * as i3 from "@alauda/ui";
8
+ import * as i4 from "@alauda-fe/common";
9
+ function HtpasswdFormComponent_aui_form_item_1_Template(rf, ctx) { if (rf & 1) {
10
+ i0.ɵɵelementStart(0, "aui-form-item", 4)(1, "label", 5);
11
+ i0.ɵɵtext(2);
12
+ i0.ɵɵelementEnd();
13
+ i0.ɵɵelement(3, "input", 6)(4, "div", 7, 0);
14
+ i0.ɵɵelementStart(6, "div", 8);
15
+ i0.ɵɵtext(7);
16
+ i0.ɵɵelementEnd()();
17
+ } if (rf & 2) {
18
+ const label_r1 = ctx.ngIf;
19
+ const usernameError_r2 = i0.ɵɵreference(5);
20
+ const ctx_r2 = i0.ɵɵnextContext();
21
+ i0.ɵɵadvance(2);
22
+ i0.ɵɵtextInterpolate(label_r1);
23
+ i0.ɵɵadvance();
24
+ i0.ɵɵproperty("required", ctx_r2.required)("aclErrorsMapperOutlet", usernameError_r2);
25
+ i0.ɵɵadvance(4);
26
+ i0.ɵɵtextInterpolate(label_r1);
27
+ } }
28
+ function HtpasswdFormComponent_aui_form_item_4_Template(rf, ctx) { if (rf & 1) {
29
+ i0.ɵɵelementStart(0, "aui-form-item", 4)(1, "label", 5);
30
+ i0.ɵɵtext(2);
31
+ i0.ɵɵelementEnd();
32
+ i0.ɵɵelement(3, "input", 9)(4, "div", 7, 1);
33
+ i0.ɵɵelementStart(6, "div", 8);
34
+ i0.ɵɵtext(7);
35
+ i0.ɵɵelementEnd()();
36
+ } if (rf & 2) {
37
+ const label_r4 = ctx.ngIf;
38
+ const passwordError_r5 = i0.ɵɵreference(5);
39
+ const ctx_r2 = i0.ɵɵnextContext();
40
+ i0.ɵɵadvance(2);
41
+ i0.ɵɵtextInterpolate(label_r4);
42
+ i0.ɵɵadvance();
43
+ i0.ɵɵproperty("required", (!ctx_r2.isUpdate || ctx_r2.originalUsername !== ctx_r2.form.get("username").value) && ctx_r2.required)("aclErrorsMapperOutlet", passwordError_r5);
44
+ i0.ɵɵadvance(4);
45
+ i0.ɵɵtextInterpolate(label_r4);
46
+ } }
47
+ export class HtpasswdFormComponent extends BaseResourceFormComponent {
48
+ constructor() {
49
+ super(...arguments);
50
+ // `null` is required because the default value is `null`,
51
+ // if it is `undefined` here, it will cause form value change event unexpectedly...
52
+ this.originalResource = null;
53
+ }
54
+ createForm() {
55
+ return this.fb.group({
56
+ username: '',
57
+ password: '',
58
+ });
59
+ }
60
+ adaptResourceModel(resource) {
61
+ let username = '';
62
+ if (resource) {
63
+ const parts = resource.split(':');
64
+ parts.pop();
65
+ username = parts.join(':');
66
+ if (!this.originalUsername) {
67
+ this.originalUsername = username;
68
+ this.originalResource = resource;
69
+ }
70
+ }
71
+ return {
72
+ username,
73
+ password: '',
74
+ };
75
+ }
76
+ adaptFormModel({ username, password, }) {
77
+ if (!username || !password || !this.form.get('password').dirty) {
78
+ return this.originalResource;
79
+ }
80
+ return [username, hashSync(password)].join(':');
81
+ }
82
+ getLabel(field, type) {
83
+ const capabilities = field.capabilities;
84
+ const enCapability = `urn:alm:descriptor:${type}:label:en:`;
85
+ const zhCapability = `urn:alm:descriptor:${type}:label:zh:`;
86
+ const en = capabilities
87
+ ?.find(c => c.startsWith(enCapability))
88
+ ?.split(enCapability)[1];
89
+ const zh = capabilities
90
+ ?.find(c => c.startsWith(zhCapability))
91
+ ?.split(zhCapability)[1];
92
+ return zh ? { en, zh } : type;
93
+ }
94
+ static { this.ɵfac = /*@__PURE__*/ (() => { let ɵHtpasswdFormComponent_BaseFactory; return function HtpasswdFormComponent_Factory(t) { return (ɵHtpasswdFormComponent_BaseFactory || (ɵHtpasswdFormComponent_BaseFactory = i0.ɵɵgetInheritedFactory(HtpasswdFormComponent)))(t || HtpasswdFormComponent); }; })(); }
95
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: HtpasswdFormComponent, selectors: [["acl-htpasswd-form"]], inputs: { field: "field", required: "required", isUpdate: "isUpdate" }, features: [i0.ɵɵInheritDefinitionFeature], decls: 7, vars: 15, consts: [["usernameError", ""], ["passwordError", ""], [3, "formGroup"], ["width", "large", 4, "ngIf"], ["width", "large"], ["auiFormItemLabel", ""], ["aui-input", "", "auiFormItemControl", "", "formControlName", "username", "aclErrorsMapper", "", 3, "required", "aclErrorsMapperOutlet"], ["auiFormItemError", ""], ["auiFormItemHint", ""], ["aui-input", "", "type", "password", "auiFormItemControl", "", "formControlName", "password", "aclStrongPassword", "", "aclErrorsMapper", "", 3, "required", "aclErrorsMapperOutlet"]], template: function HtpasswdFormComponent_Template(rf, ctx) { if (rf & 1) {
96
+ i0.ɵɵelementContainerStart(0, 2);
97
+ i0.ɵɵtemplate(1, HtpasswdFormComponent_aui_form_item_1_Template, 8, 4, "aui-form-item", 3);
98
+ i0.ɵɵpipe(2, "pure");
99
+ i0.ɵɵpipe(3, "translate");
100
+ i0.ɵɵtemplate(4, HtpasswdFormComponent_aui_form_item_4_Template, 8, 4, "aui-form-item", 3);
101
+ i0.ɵɵpipe(5, "pure");
102
+ i0.ɵɵpipe(6, "translate");
103
+ i0.ɵɵelementContainerEnd();
104
+ } if (rf & 2) {
105
+ i0.ɵɵproperty("formGroup", ctx.form);
106
+ i0.ɵɵadvance();
107
+ i0.ɵɵproperty("ngIf", i0.ɵɵpipeBind1(3, 7, i0.ɵɵpipeBind3(2, 3, ctx.field, ctx.getLabel, "username")));
108
+ i0.ɵɵadvance(3);
109
+ i0.ɵɵproperty("ngIf", i0.ɵɵpipeBind1(6, 13, i0.ɵɵpipeBind3(5, 9, ctx.field, ctx.getLabel, "password")));
110
+ } }, dependencies: [i1.NgIf, i2.DefaultValueAccessor, i2.NgControlStatus, i2.NgControlStatusGroup, i2.RequiredValidator, i2.FormGroupDirective, i2.FormControlName, i3.FormItemComponent, i3.FormItemErrorDirective, i3.FormItemHintDirective, i3.FormItemLabelDirective, i3.FormItemControlDirective, i3.InputComponent, i4.ErrorsMapperDirective, i4.StrongPasswordDirective, i4.ValidatorsDirective, i4.TranslatePipe, i4.PurePipe], encapsulation: 2, changeDetection: 0 }); }
111
+ }
112
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(HtpasswdFormComponent, [{
113
+ type: Component,
114
+ args: [{
115
+ selector: 'acl-htpasswd-form',
116
+ template: `<ng-container [formGroup]="form">
117
+ <aui-form-item
118
+ width="large"
119
+ *ngIf="field | pure: getLabel:'username' | translate as label"
120
+ >
121
+ <label auiFormItemLabel>{{ label }}</label>
122
+ <input
123
+ aui-input
124
+ auiFormItemControl
125
+ formControlName="username"
126
+ [required]="required"
127
+ aclErrorsMapper
128
+ [aclErrorsMapperOutlet]="usernameError"
129
+ />
130
+ <div
131
+ #usernameError
132
+ auiFormItemError
133
+ ></div>
134
+ <div auiFormItemHint>{{ label }}</div>
135
+ </aui-form-item>
136
+ <aui-form-item
137
+ width="large"
138
+ *ngIf="field | pure: getLabel:'password' | translate as label"
139
+ >
140
+ <label auiFormItemLabel>{{ label }}</label>
141
+ <input
142
+ aui-input
143
+ type="password"
144
+ auiFormItemControl
145
+ formControlName="password"
146
+ [required]="
147
+ (!isUpdate || originalUsername !== form.get('username').value) &&
148
+ required
149
+ "
150
+ aclStrongPassword
151
+ aclErrorsMapper
152
+ [aclErrorsMapperOutlet]="passwordError"
153
+ />
154
+ <div
155
+ #passwordError
156
+ auiFormItemError
157
+ ></div>
158
+ <div auiFormItemHint>{{ label }}</div>
159
+ </aui-form-item>
160
+ </ng-container> `,
161
+ changeDetection: ChangeDetectionStrategy.OnPush,
162
+ }]
163
+ }], null, { field: [{
164
+ type: Input
165
+ }], required: [{
166
+ type: Input
167
+ }], isUpdate: [{
168
+ type: Input
169
+ }] }); })();
170
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(HtpasswdFormComponent, { className: "HtpasswdFormComponent", filePath: "lib/field-widgets/htpasswd/form.ts", lineNumber: 57 }); })();
171
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY3JkLWZvcm0vc3JjL2xpYi9maWVsZC13aWRnZXRzL2h0cGFzc3dkL2Zvcm0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFMUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUNwQyxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7Ozs7OztJQVc1RCxBQUpGLHdDQUdDLGVBQ3lCO0lBQUEsWUFBVztJQUFBLGlCQUFRO0lBUzNDLEFBUkEsMkJBT0UsZ0JBSUs7SUFDUCw4QkFBcUI7SUFBQSxZQUFXO0lBQ2xDLEFBRGtDLGlCQUFNLEVBQ3hCOzs7OztJQWRVLGVBQVc7SUFBWCw4QkFBVztJQUtqQyxjQUFxQjtJQUVyQixBQUZBLDBDQUFxQiwyQ0FFa0I7SUFNcEIsZUFBVztJQUFYLDhCQUFXOzs7SUFNaEMsQUFKRix3Q0FHQyxlQUN5QjtJQUFBLFlBQVc7SUFBQSxpQkFBUTtJQWMzQyxBQWJBLDJCQVlFLGdCQUlLO0lBQ1AsOEJBQXFCO0lBQUEsWUFBVztJQUNsQyxBQURrQyxpQkFBTSxFQUN4Qjs7Ozs7SUFuQlUsZUFBVztJQUFYLDhCQUFXO0lBTWpDLGNBR0M7SUFHRCxBQU5BLGlJQUdDLDJDQUdzQztJQU1wQixlQUFXO0lBQVgsOEJBQVc7O0FBS3RDLE1BQU0sT0FBTyxxQkFBc0IsU0FBUSx5QkFJMUM7SUFyREQ7O1FBZ0VFLDBEQUEwRDtRQUMxRCxtRkFBbUY7UUFDbkYscUJBQWdCLEdBQVcsSUFBSSxDQUFDO0tBd0RqQztJQXREQyxVQUFVO1FBQ1IsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQztZQUNuQixRQUFRLEVBQUUsRUFBRTtZQUNaLFFBQVEsRUFBRSxFQUFFO1NBQ2IsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVRLGtCQUFrQixDQUFDLFFBQWdCO1FBSTFDLElBQUksUUFBUSxHQUFHLEVBQUUsQ0FBQztRQUNsQixJQUFJLFFBQVEsRUFBRSxDQUFDO1lBQ2IsTUFBTSxLQUFLLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNsQyxLQUFLLENBQUMsR0FBRyxFQUFFLENBQUM7WUFDWixRQUFRLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUMzQixJQUFJLENBQUMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7Z0JBQzNCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxRQUFRLENBQUM7Z0JBQ2pDLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxRQUFRLENBQUM7WUFDbkMsQ0FBQztRQUNILENBQUM7UUFFRCxPQUFPO1lBQ0wsUUFBUTtZQUNSLFFBQVEsRUFBRSxFQUFFO1NBQ2IsQ0FBQztJQUNKLENBQUM7SUFFUSxjQUFjLENBQUMsRUFDdEIsUUFBUSxFQUNSLFFBQVEsR0FJVDtRQUNDLElBQUksQ0FBQyxRQUFRLElBQUksQ0FBQyxRQUFRLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUMvRCxPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQztRQUMvQixDQUFDO1FBRUQsT0FBTyxDQUFDLFFBQVEsRUFBRSxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUVELFFBQVEsQ0FBQyxLQUFtQixFQUFFLElBQTZCO1FBQ3pELE1BQU0sWUFBWSxHQUFHLEtBQUssQ0FBQyxZQUFZLENBQUM7UUFDeEMsTUFBTSxZQUFZLEdBQUcsc0JBQXNCLElBQUksWUFBWSxDQUFDO1FBQzVELE1BQU0sWUFBWSxHQUFHLHNCQUFzQixJQUFJLFlBQVksQ0FBQztRQUM1RCxNQUFNLEVBQUUsR0FBRyxZQUFZO1lBQ3JCLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxZQUFZLENBQUMsQ0FBQztZQUN2QyxFQUFFLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMzQixNQUFNLEVBQUUsR0FBRyxZQUFZO1lBQ3JCLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxZQUFZLENBQUMsQ0FBQztZQUN2QyxFQUFFLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMzQixPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUNoQyxDQUFDO3dQQXhFVSxxQkFBcUIsU0FBckIscUJBQXFCO29FQUFyQixxQkFBcUI7WUEvQ3JCLGdDQUFpQztZQUMxQywwRkFHQzs7O1lBZ0JELDBGQUdDOzs7OztZQXZCc0Isb0NBQWtCO1lBR3RDLGNBQW9EO1lBQXBELHNHQUFvRDtZQW1CcEQsZUFBb0Q7WUFBcEQsdUdBQW9EOzs7aUZBeUI5QyxxQkFBcUI7Y0FqRGpDLFNBQVM7ZUFBQztnQkFDVCxRQUFRLEVBQUUsbUJBQW1CO2dCQUM3QixRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O21CQTRDTztnQkFDakIsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07YUFDaEQ7Z0JBT0MsS0FBSztrQkFESixLQUFLO1lBSU4sUUFBUTtrQkFEUCxLQUFLO1lBSU4sUUFBUTtrQkFEUCxLQUFLOztrRkFYSyxxQkFBcUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgaGFzaFN5bmMgfSBmcm9tICdiY3J5cHRqcyc7XG5pbXBvcnQgeyBCYXNlUmVzb3VyY2VGb3JtQ29tcG9uZW50IH0gZnJvbSAnbmctcmVzb3VyY2UtZm9ybS11dGlsJztcblxuaW1wb3J0IHsgT3BlcmFuZEZpZWxkIH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhY2wtaHRwYXNzd2QtZm9ybScsXG4gIHRlbXBsYXRlOiBgPG5nLWNvbnRhaW5lciBbZm9ybUdyb3VwXT1cImZvcm1cIj5cbiAgICA8YXVpLWZvcm0taXRlbVxuICAgICAgd2lkdGg9XCJsYXJnZVwiXG4gICAgICAqbmdJZj1cImZpZWxkIHwgcHVyZTogZ2V0TGFiZWw6J3VzZXJuYW1lJyB8IHRyYW5zbGF0ZSBhcyBsYWJlbFwiXG4gICAgPlxuICAgICAgPGxhYmVsIGF1aUZvcm1JdGVtTGFiZWw+e3sgbGFiZWwgfX08L2xhYmVsPlxuICAgICAgPGlucHV0XG4gICAgICAgIGF1aS1pbnB1dFxuICAgICAgICBhdWlGb3JtSXRlbUNvbnRyb2xcbiAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwidXNlcm5hbWVcIlxuICAgICAgICBbcmVxdWlyZWRdPVwicmVxdWlyZWRcIlxuICAgICAgICBhY2xFcnJvcnNNYXBwZXJcbiAgICAgICAgW2FjbEVycm9yc01hcHBlck91dGxldF09XCJ1c2VybmFtZUVycm9yXCJcbiAgICAgIC8+XG4gICAgICA8ZGl2XG4gICAgICAgICN1c2VybmFtZUVycm9yXG4gICAgICAgIGF1aUZvcm1JdGVtRXJyb3JcbiAgICAgID48L2Rpdj5cbiAgICAgIDxkaXYgYXVpRm9ybUl0ZW1IaW50Pnt7IGxhYmVsIH19PC9kaXY+XG4gICAgPC9hdWktZm9ybS1pdGVtPlxuICAgIDxhdWktZm9ybS1pdGVtXG4gICAgICB3aWR0aD1cImxhcmdlXCJcbiAgICAgICpuZ0lmPVwiZmllbGQgfCBwdXJlOiBnZXRMYWJlbDoncGFzc3dvcmQnIHwgdHJhbnNsYXRlIGFzIGxhYmVsXCJcbiAgICA+XG4gICAgICA8bGFiZWwgYXVpRm9ybUl0ZW1MYWJlbD57eyBsYWJlbCB9fTwvbGFiZWw+XG4gICAgICA8aW5wdXRcbiAgICAgICAgYXVpLWlucHV0XG4gICAgICAgIHR5cGU9XCJwYXNzd29yZFwiXG4gICAgICAgIGF1aUZvcm1JdGVtQ29udHJvbFxuICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJwYXNzd29yZFwiXG4gICAgICAgIFtyZXF1aXJlZF09XCJcbiAgICAgICAgICAoIWlzVXBkYXRlIHx8IG9yaWdpbmFsVXNlcm5hbWUgIT09IGZvcm0uZ2V0KCd1c2VybmFtZScpLnZhbHVlKSAmJlxuICAgICAgICAgIHJlcXVpcmVkXG4gICAgICAgIFwiXG4gICAgICAgIGFjbFN0cm9uZ1Bhc3N3b3JkXG4gICAgICAgIGFjbEVycm9yc01hcHBlclxuICAgICAgICBbYWNsRXJyb3JzTWFwcGVyT3V0bGV0XT1cInBhc3N3b3JkRXJyb3JcIlxuICAgICAgLz5cbiAgICAgIDxkaXZcbiAgICAgICAgI3Bhc3N3b3JkRXJyb3JcbiAgICAgICAgYXVpRm9ybUl0ZW1FcnJvclxuICAgICAgPjwvZGl2PlxuICAgICAgPGRpdiBhdWlGb3JtSXRlbUhpbnQ+e3sgbGFiZWwgfX08L2Rpdj5cbiAgICA8L2F1aS1mb3JtLWl0ZW0+XG4gIDwvbmctY29udGFpbmVyPiBgLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgSHRwYXNzd2RGb3JtQ29tcG9uZW50IGV4dGVuZHMgQmFzZVJlc291cmNlRm9ybUNvbXBvbmVudDxcbiAgc3RyaW5nLFxuICB7IHVzZXJuYW1lOiBzdHJpbmc7IHBhc3N3b3JkOiBzdHJpbmcgfSxcbiAgRm9ybUdyb3VwXG4+IHtcbiAgQElucHV0KClcbiAgZmllbGQ6IE9wZXJhbmRGaWVsZDtcblxuICBASW5wdXQoKVxuICByZXF1aXJlZDogYm9vbGVhbjtcblxuICBASW5wdXQoKVxuICBpc1VwZGF0ZTogYm9vbGVhbjtcblxuICBvcmlnaW5hbFVzZXJuYW1lOiBzdHJpbmc7XG4gIC8vIGBudWxsYCBpcyByZXF1aXJlZCBiZWNhdXNlIHRoZSBkZWZhdWx0IHZhbHVlIGlzIGBudWxsYCxcbiAgLy8gaWYgaXQgaXMgYHVuZGVmaW5lZGAgaGVyZSwgaXQgd2lsbCBjYXVzZSBmb3JtIHZhbHVlIGNoYW5nZSBldmVudCB1bmV4cGVjdGVkbHkuLi5cbiAgb3JpZ2luYWxSZXNvdXJjZTogc3RyaW5nID0gbnVsbDtcblxuICBjcmVhdGVGb3JtKCkge1xuICAgIHJldHVybiB0aGlzLmZiLmdyb3VwKHtcbiAgICAgIHVzZXJuYW1lOiAnJyxcbiAgICAgIHBhc3N3b3JkOiAnJyxcbiAgICB9KTtcbiAgfVxuXG4gIG92ZXJyaWRlIGFkYXB0UmVzb3VyY2VNb2RlbChyZXNvdXJjZTogc3RyaW5nKToge1xuICAgIHVzZXJuYW1lOiBzdHJpbmc7XG4gICAgcGFzc3dvcmQ6IHN0cmluZztcbiAgfSB7XG4gICAgbGV0IHVzZXJuYW1lID0gJyc7XG4gICAgaWYgKHJlc291cmNlKSB7XG4gICAgICBjb25zdCBwYXJ0cyA9IHJlc291cmNlLnNwbGl0KCc6Jyk7XG4gICAgICBwYXJ0cy5wb3AoKTtcbiAgICAgIHVzZXJuYW1lID0gcGFydHMuam9pbignOicpO1xuICAgICAgaWYgKCF0aGlzLm9yaWdpbmFsVXNlcm5hbWUpIHtcbiAgICAgICAgdGhpcy5vcmlnaW5hbFVzZXJuYW1lID0gdXNlcm5hbWU7XG4gICAgICAgIHRoaXMub3JpZ2luYWxSZXNvdXJjZSA9IHJlc291cmNlO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICB1c2VybmFtZSxcbiAgICAgIHBhc3N3b3JkOiAnJyxcbiAgICB9O1xuICB9XG5cbiAgb3ZlcnJpZGUgYWRhcHRGb3JtTW9kZWwoe1xuICAgIHVzZXJuYW1lLFxuICAgIHBhc3N3b3JkLFxuICB9OiB7XG4gICAgdXNlcm5hbWU6IHN0cmluZztcbiAgICBwYXNzd29yZDogc3RyaW5nO1xuICB9KTogc3RyaW5nIHtcbiAgICBpZiAoIXVzZXJuYW1lIHx8ICFwYXNzd29yZCB8fCAhdGhpcy5mb3JtLmdldCgncGFzc3dvcmQnKS5kaXJ0eSkge1xuICAgICAgcmV0dXJuIHRoaXMub3JpZ2luYWxSZXNvdXJjZTtcbiAgICB9XG5cbiAgICByZXR1cm4gW3VzZXJuYW1lLCBoYXNoU3luYyhwYXNzd29yZCldLmpvaW4oJzonKTtcbiAgfVxuXG4gIGdldExhYmVsKGZpZWxkOiBPcGVyYW5kRmllbGQsIHR5cGU6ICd1c2VybmFtZScgfCAncGFzc3dvcmQnKSB7XG4gICAgY29uc3QgY2FwYWJpbGl0aWVzID0gZmllbGQuY2FwYWJpbGl0aWVzO1xuICAgIGNvbnN0IGVuQ2FwYWJpbGl0eSA9IGB1cm46YWxtOmRlc2NyaXB0b3I6JHt0eXBlfTpsYWJlbDplbjpgO1xuICAgIGNvbnN0IHpoQ2FwYWJpbGl0eSA9IGB1cm46YWxtOmRlc2NyaXB0b3I6JHt0eXBlfTpsYWJlbDp6aDpgO1xuICAgIGNvbnN0IGVuID0gY2FwYWJpbGl0aWVzXG4gICAgICA/LmZpbmQoYyA9PiBjLnN0YXJ0c1dpdGgoZW5DYXBhYmlsaXR5KSlcbiAgICAgID8uc3BsaXQoZW5DYXBhYmlsaXR5KVsxXTtcbiAgICBjb25zdCB6aCA9IGNhcGFiaWxpdGllc1xuICAgICAgPy5maW5kKGMgPT4gYy5zdGFydHNXaXRoKHpoQ2FwYWJpbGl0eSkpXG4gICAgICA/LnNwbGl0KHpoQ2FwYWJpbGl0eSlbMV07XG4gICAgcmV0dXJuIHpoID8geyBlbiwgemggfSA6IHR5cGU7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,4 @@
1
+ export * from './component';
2
+ export * from './form';
3
+ export * from './module';
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NyZC1mb3JtL3NyYy9saWIvZmllbGQtd2lkZ2V0cy9odHBhc3N3ZC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLFFBQVEsQ0FBQztBQUN2QixjQUFjLFVBQVUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vZm9ybSc7XG5leHBvcnQgKiBmcm9tICcuL21vZHVsZSc7XG4iXX0=
@@ -0,0 +1,54 @@
1
+ import { FormModule, InputModule } from '@alauda/ui';
2
+ import { ErrorsMapperModule, TranslateModule, CoreModule, StrongPasswordValidatorModule, } from '@alauda-fe/common';
3
+ import { CommonModule } from '@angular/common';
4
+ import { NgModule } from '@angular/core';
5
+ import { FormsModule, ReactiveFormsModule } from '@angular/forms';
6
+ import { FieldControlsModule } from '../../field-controls';
7
+ import { HtpasswdComponent } from './component';
8
+ import { HtpasswdFormComponent } from './form';
9
+ import * as i0 from "@angular/core";
10
+ const COMPONENTS = [HtpasswdComponent, HtpasswdFormComponent];
11
+ export class HtpasswdModule {
12
+ static { this.ɵfac = function HtpasswdModule_Factory(t) { return new (t || HtpasswdModule)(); }; }
13
+ static { this.ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: HtpasswdModule }); }
14
+ static { this.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [CommonModule,
15
+ FormsModule,
16
+ ReactiveFormsModule,
17
+ FormModule,
18
+ InputModule,
19
+ ErrorsMapperModule,
20
+ StrongPasswordValidatorModule,
21
+ TranslateModule,
22
+ CoreModule,
23
+ FieldControlsModule] }); }
24
+ }
25
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(HtpasswdModule, [{
26
+ type: NgModule,
27
+ args: [{
28
+ imports: [
29
+ CommonModule,
30
+ FormsModule,
31
+ ReactiveFormsModule,
32
+ FormModule,
33
+ InputModule,
34
+ ErrorsMapperModule,
35
+ StrongPasswordValidatorModule,
36
+ TranslateModule,
37
+ CoreModule,
38
+ FieldControlsModule,
39
+ ],
40
+ declarations: COMPONENTS,
41
+ exports: COMPONENTS,
42
+ }]
43
+ }], null, null); })();
44
+ (function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(HtpasswdModule, { declarations: [HtpasswdComponent, HtpasswdFormComponent], imports: [CommonModule,
45
+ FormsModule,
46
+ ReactiveFormsModule,
47
+ FormModule,
48
+ InputModule,
49
+ ErrorsMapperModule,
50
+ StrongPasswordValidatorModule,
51
+ TranslateModule,
52
+ CoreModule,
53
+ FieldControlsModule], exports: [HtpasswdComponent, HtpasswdFormComponent] }); })();
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jcmQtZm9ybS9zcmMvbGliL2ZpZWxkLXdpZGdldHMvaHRwYXNzd2QvbW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ3JELE9BQU8sRUFDTCxrQkFBa0IsRUFDbEIsZUFBZSxFQUNmLFVBQVUsRUFDViw2QkFBNkIsR0FDOUIsTUFBTSxtQkFBbUIsQ0FBQztBQUMzQixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFbEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFM0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ2hELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLFFBQVEsQ0FBQzs7QUFFL0MsTUFBTSxVQUFVLEdBQUcsQ0FBQyxpQkFBaUIsRUFBRSxxQkFBcUIsQ0FBQyxDQUFDO0FBc0I5RCxNQUFNLE9BQU8sY0FBYzsrRUFBZCxjQUFjO21FQUFkLGNBQWM7dUVBbEJ2QixZQUFZO1lBRVosV0FBVztZQUNYLG1CQUFtQjtZQUVuQixVQUFVO1lBQ1YsV0FBVztZQUVYLGtCQUFrQjtZQUNsQiw2QkFBNkI7WUFDN0IsZUFBZTtZQUNmLFVBQVU7WUFFVixtQkFBbUI7O2lGQUtWLGNBQWM7Y0FwQjFCLFFBQVE7ZUFBQztnQkFDUixPQUFPLEVBQUU7b0JBQ1AsWUFBWTtvQkFFWixXQUFXO29CQUNYLG1CQUFtQjtvQkFFbkIsVUFBVTtvQkFDVixXQUFXO29CQUVYLGtCQUFrQjtvQkFDbEIsNkJBQTZCO29CQUM3QixlQUFlO29CQUNmLFVBQVU7b0JBRVYsbUJBQW1CO2lCQUNwQjtnQkFDRCxZQUFZLEVBQUUsVUFBVTtnQkFDeEIsT0FBTyxFQUFFLFVBQVU7YUFDcEI7O3dGQUNZLGNBQWMsbUJBdEJQLGlCQUFpQixFQUFFLHFCQUFxQixhQUl4RCxZQUFZO1FBRVosV0FBVztRQUNYLG1CQUFtQjtRQUVuQixVQUFVO1FBQ1YsV0FBVztRQUVYLGtCQUFrQjtRQUNsQiw2QkFBNkI7UUFDN0IsZUFBZTtRQUNmLFVBQVU7UUFFVixtQkFBbUIsYUFqQkgsaUJBQWlCLEVBQUUscUJBQXFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRm9ybU1vZHVsZSwgSW5wdXRNb2R1bGUgfSBmcm9tICdAYWxhdWRhL3VpJztcbmltcG9ydCB7XG4gIEVycm9yc01hcHBlck1vZHVsZSxcbiAgVHJhbnNsYXRlTW9kdWxlLFxuICBDb3JlTW9kdWxlLFxuICBTdHJvbmdQYXNzd29yZFZhbGlkYXRvck1vZHVsZSxcbn0gZnJvbSAnQGFsYXVkYS1mZS9jb21tb24nO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHsgRmllbGRDb250cm9sc01vZHVsZSB9IGZyb20gJy4uLy4uL2ZpZWxkLWNvbnRyb2xzJztcblxuaW1wb3J0IHsgSHRwYXNzd2RDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudCc7XG5pbXBvcnQgeyBIdHBhc3N3ZEZvcm1Db21wb25lbnQgfSBmcm9tICcuL2Zvcm0nO1xuXG5jb25zdCBDT01QT05FTlRTID0gW0h0cGFzc3dkQ29tcG9uZW50LCBIdHBhc3N3ZEZvcm1Db21wb25lbnRdO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcblxuICAgIEZvcm1Nb2R1bGUsXG4gICAgSW5wdXRNb2R1bGUsXG5cbiAgICBFcnJvcnNNYXBwZXJNb2R1bGUsXG4gICAgU3Ryb25nUGFzc3dvcmRWYWxpZGF0b3JNb2R1bGUsXG4gICAgVHJhbnNsYXRlTW9kdWxlLFxuICAgIENvcmVNb2R1bGUsXG5cbiAgICBGaWVsZENvbnRyb2xzTW9kdWxlLFxuICBdLFxuICBkZWNsYXJhdGlvbnM6IENPTVBPTkVOVFMsXG4gIGV4cG9ydHM6IENPTVBPTkVOVFMsXG59KVxuZXhwb3J0IGNsYXNzIEh0cGFzc3dkTW9kdWxlIHt9XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export * from './htpasswd';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NyZC1mb3JtL3NyYy9saWIvZmllbGQtd2lkZ2V0cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLFlBQVksQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vaHRwYXNzd2QnO1xuIl19
@@ -0,0 +1,4 @@
1
+ export const DEFAULT_REMOTE_MFE_MANIFEST = {
2
+ remotis: 'http://localhost:4211/',
3
+ };
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jcmQtZm9ybS9zcmMvbGliL3JlbW90ZS13aWRnZXRzL2NvbnN0YW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSwyQkFBMkIsR0FBRztJQUN6QyxPQUFPLEVBQUUsd0JBQXdCO0NBQ2xDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgREVGQVVMVF9SRU1PVEVfTUZFX01BTklGRVNUID0ge1xuICByZW1vdGlzOiAnaHR0cDovL2xvY2FsaG9zdDo0MjExLycsXG59O1xuIl19
@@ -0,0 +1,4 @@
1
+ export * from './constants';
2
+ export * from './remote-widget.service';
3
+ export * from './token';
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NyZC1mb3JtL3NyYy9saWIvcmVtb3RlLXdpZGdldHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY29uc3RhbnRzJztcbmV4cG9ydCAqIGZyb20gJy4vcmVtb3RlLXdpZGdldC5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vdG9rZW4nO1xuIl19
@@ -0,0 +1,42 @@
1
+ import { K8sApiService, skipError, } from '@alauda-fe/common';
2
+ import { Inject, Injectable, isDevMode } from '@angular/core';
3
+ import { loadRemoteModule, setRemoteDefinitions } from '@nx/angular/mf';
4
+ import { tap, map, of, switchMap, shareReplay, Subject, takeUntil } from 'rxjs';
5
+ import { REMOTE_MFE_MANIFEST } from './token';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "@alauda-fe/common";
8
+ export class RemoteWidgetsService {
9
+ constructor(k8sApi, manifest) {
10
+ this.k8sApi = k8sApi;
11
+ this.manifest = manifest;
12
+ this.destroy$$ = new Subject();
13
+ this.remoteModule$ = (isDevMode()
14
+ ? of(this.manifest)
15
+ : this.k8sApi
16
+ .getGlobalResource({
17
+ definition: { type: 'configmaps' },
18
+ name: 'af-remote-entry-definition',
19
+ namespaced: true,
20
+ })
21
+ .pipe(map(({ data }) => data), skipError())).pipe(tap(setRemoteDefinitions), switchMap(() => loadRemoteModule('remotis', './CrdFormRemoteWidgets')), map((remoteModule) => ({
22
+ module: remoteModule[remoteModule.REMOTE_MODULE],
23
+ components: remoteModule.REMOTE_WIDGETS,
24
+ })), skipError(), takeUntil(this.destroy$$), shareReplay(1));
25
+ }
26
+ ngOnDestroy() {
27
+ this.destroy$$.next();
28
+ this.destroy$$.complete();
29
+ }
30
+ static { this.ɵfac = function RemoteWidgetsService_Factory(t) { return new (t || RemoteWidgetsService)(i0.ɵɵinject(i1.K8sApiService), i0.ɵɵinject(REMOTE_MFE_MANIFEST)); }; }
31
+ static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: RemoteWidgetsService, factory: RemoteWidgetsService.ɵfac, providedIn: 'root' }); }
32
+ }
33
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(RemoteWidgetsService, [{
34
+ type: Injectable,
35
+ args: [{
36
+ providedIn: 'root',
37
+ }]
38
+ }], () => [{ type: i1.K8sApiService }, { type: undefined, decorators: [{
39
+ type: Inject,
40
+ args: [REMOTE_MFE_MANIFEST]
41
+ }] }], null); })();
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVtb3RlLXdpZGdldC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jcmQtZm9ybS9zcmMvbGliL3JlbW90ZS13aWRnZXRzL3JlbW90ZS13aWRnZXQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsYUFBYSxFQUViLFNBQVMsR0FFVixNQUFNLG1CQUFtQixDQUFDO0FBQzNCLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBbUIsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxFQUFFLGdCQUFnQixFQUFFLG9CQUFvQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEUsT0FBTyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsRUFBRSxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVoRixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxTQUFTLENBQUM7OztBQXVCOUMsTUFBTSxPQUFPLG9CQUFvQjtJQThCL0IsWUFDbUIsTUFBcUIsRUFFckIsUUFBbUI7UUFGbkIsV0FBTSxHQUFOLE1BQU0sQ0FBZTtRQUVyQixhQUFRLEdBQVIsUUFBUSxDQUFXO1FBaENyQixjQUFTLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQUV4QyxrQkFBYSxHQUFHLENBQUMsU0FBUyxFQUFFO1lBQ25DLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztZQUNuQixDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU07aUJBQ1IsaUJBQWlCLENBQVk7Z0JBQzVCLFVBQVUsRUFBRSxFQUFFLElBQUksRUFBRSxZQUFZLEVBQUU7Z0JBQ2xDLElBQUksRUFBRSw0QkFBNEI7Z0JBQ2xDLFVBQVUsRUFBRSxJQUFJO2FBQ2pCLENBQUM7aUJBQ0QsSUFBSSxDQUNILEdBQUcsQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxFQUN2QixTQUFTLEVBQUUsQ0FDWixDQUNOLENBQUMsSUFBSSxDQUNKLEdBQUcsQ0FBQyxvQkFBb0IsQ0FBQyxFQUN6QixTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxFQUFFLHdCQUF3QixDQUFDLENBQUMsRUFDdEUsR0FBRyxDQUNELENBQUMsWUFBcUMsRUFBRSxFQUFFLENBQ3hDLENBQUM7WUFDQyxNQUFNLEVBQUUsWUFBWSxDQUFDLFlBQVksQ0FBQyxhQUF1QixDQUFDO1lBQzFELFVBQVUsRUFBRSxZQUFZLENBQUMsY0FBZ0M7U0FDekIsQ0FBQSxDQUNyQyxFQUNELFNBQVMsRUFBRSxFQUNYLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEVBQ3pCLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FDZixDQUFDO0lBTUMsQ0FBQztJQUVKLFdBQVc7UUFDVCxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDNUIsQ0FBQztxRkF2Q1Usb0JBQW9CLDZDQWdDckIsbUJBQW1CO3VFQWhDbEIsb0JBQW9CLFdBQXBCLG9CQUFvQixtQkFGbkIsTUFBTTs7aUZBRVAsb0JBQW9CO2NBSGhDLFVBQVU7ZUFBQztnQkFDVixVQUFVLEVBQUUsTUFBTTthQUNuQjs7c0JBaUNJLE1BQU07dUJBQUMsbUJBQW1CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgSzhzQXBpU2VydmljZSxcbiAgS3ViZXJuZXRlc1Jlc291cmNlLFxuICBza2lwRXJyb3IsXG4gIFN0cmluZ01hcCxcbn0gZnJvbSAnQGFsYXVkYS1mZS9jb21tb24nO1xuaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlLCBpc0Rldk1vZGUsIE9uRGVzdHJveSwgVHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgbG9hZFJlbW90ZU1vZHVsZSwgc2V0UmVtb3RlRGVmaW5pdGlvbnMgfSBmcm9tICdAbngvYW5ndWxhci9tZic7XG5pbXBvcnQgeyB0YXAsIG1hcCwgb2YsIHN3aXRjaE1hcCwgc2hhcmVSZXBsYXksIFN1YmplY3QsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBSRU1PVEVfTUZFX01BTklGRVNUIH0gZnJvbSAnLi90b2tlbic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29uZmlnTWFwPFQgPSBTdHJpbmdNYXA+IGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlIHtcbiAgZGF0YT86IFQ7XG4gIGJpbmFyeURhdGE/OiBTdHJpbmdNYXA7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmVtb3RlV2lkZ2V0IHtcbiAgZGVzY3JpcHRvcjogc3RyaW5nO1xuICBjb21wb25lbnQ6IFR5cGU8dW5rbm93bj47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmVtb3RlV2lkZ2V0TW9kdWxlRGVmaW5pdGlvbiB7XG4gIGNvbXBvbmVudHM6IEFycmF5PHtcbiAgICBkZXNjcmlwdG9yOiBzdHJpbmc7XG4gICAgY29tcG9uZW50OiBUeXBlPHVua25vd24+O1xuICB9PjtcbiAgbW9kdWxlOiBUeXBlPHVua25vd24+O1xufVxuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgUmVtb3RlV2lkZ2V0c1NlcnZpY2UgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3kkJCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgcmVhZG9ubHkgcmVtb3RlTW9kdWxlJCA9IChpc0Rldk1vZGUoKVxuICAgID8gb2YodGhpcy5tYW5pZmVzdClcbiAgICA6IHRoaXMuazhzQXBpXG4gICAgICAgIC5nZXRHbG9iYWxSZXNvdXJjZTxDb25maWdNYXA+KHtcbiAgICAgICAgICBkZWZpbml0aW9uOiB7IHR5cGU6ICdjb25maWdtYXBzJyB9LFxuICAgICAgICAgIG5hbWU6ICdhZi1yZW1vdGUtZW50cnktZGVmaW5pdGlvbicsXG4gICAgICAgICAgbmFtZXNwYWNlZDogdHJ1ZSxcbiAgICAgICAgfSlcbiAgICAgICAgLnBpcGUoXG4gICAgICAgICAgbWFwKCh7IGRhdGEgfSkgPT4gZGF0YSksXG4gICAgICAgICAgc2tpcEVycm9yKCksXG4gICAgICAgIClcbiAgKS5waXBlKFxuICAgIHRhcChzZXRSZW1vdGVEZWZpbml0aW9ucyksXG4gICAgc3dpdGNoTWFwKCgpID0+IGxvYWRSZW1vdGVNb2R1bGUoJ3JlbW90aXMnLCAnLi9DcmRGb3JtUmVtb3RlV2lkZ2V0cycpKSxcbiAgICBtYXAoXG4gICAgICAocmVtb3RlTW9kdWxlOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPikgPT5cbiAgICAgICAgKHtcbiAgICAgICAgICBtb2R1bGU6IHJlbW90ZU1vZHVsZVtyZW1vdGVNb2R1bGUuUkVNT1RFX01PRFVMRSBhcyBzdHJpbmddLFxuICAgICAgICAgIGNvbXBvbmVudHM6IHJlbW90ZU1vZHVsZS5SRU1PVEVfV0lER0VUUyBhcyBSZW1vdGVXaWRnZXRbXSxcbiAgICAgICAgfSBhcyBSZW1vdGVXaWRnZXRNb2R1bGVEZWZpbml0aW9uKSxcbiAgICApLFxuICAgIHNraXBFcnJvcigpLFxuICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkJCksXG4gICAgc2hhcmVSZXBsYXkoMSksXG4gICk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBrOHNBcGk6IEs4c0FwaVNlcnZpY2UsXG4gICAgQEluamVjdChSRU1PVEVfTUZFX01BTklGRVNUKVxuICAgIHByaXZhdGUgcmVhZG9ubHkgbWFuaWZlc3Q6IFN0cmluZ01hcCxcbiAgKSB7fVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuZGVzdHJveSQkLm5leHQoKTtcbiAgICB0aGlzLmRlc3Ryb3kkJC5jb21wbGV0ZSgpO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,7 @@
1
+ import { InjectionToken } from '@angular/core';
2
+ import { DEFAULT_REMOTE_MFE_MANIFEST } from './constants';
3
+ export const REMOTE_MFE_MANIFEST = new InjectionToken('mock mfe config', {
4
+ providedIn: 'root',
5
+ factory: () => DEFAULT_REMOTE_MFE_MANIFEST,
6
+ });
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NyZC1mb3JtL3NyYy9saWIvcmVtb3RlLXdpZGdldHMvdG9rZW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUvQyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFMUQsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsSUFBSSxjQUFjLENBQ25ELGlCQUFpQixFQUNqQjtJQUNFLFVBQVUsRUFBRSxNQUFNO0lBQ2xCLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQywyQkFBMkI7Q0FDM0MsQ0FDRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU3RyaW5nTWFwIH0gZnJvbSAnQGFsYXVkYS1mZS9jb21tb24nO1xuaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgREVGQVVMVF9SRU1PVEVfTUZFX01BTklGRVNUIH0gZnJvbSAnLi9jb25zdGFudHMnO1xuXG5leHBvcnQgY29uc3QgUkVNT1RFX01GRV9NQU5JRkVTVCA9IG5ldyBJbmplY3Rpb25Ub2tlbjxTdHJpbmdNYXA+KFxuICAnbW9jayBtZmUgY29uZmlnJyxcbiAge1xuICAgIHByb3ZpZGVkSW46ICdyb290JyxcbiAgICBmYWN0b3J5OiAoKSA9PiBERUZBVUxUX1JFTU9URV9NRkVfTUFOSUZFU1QsXG4gIH0sXG4pO1xuIl19