@abp/ng.theme.shared 5.0.1 → 5.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (210) hide show
  1. package/README.md +3 -3
  2. package/abp-ng.theme.shared.d.ts +5 -5
  3. package/bundles/abp-ng.theme.shared-extensions.umd.js +1749 -1748
  4. package/bundles/abp-ng.theme.shared-extensions.umd.js.map +1 -1
  5. package/bundles/abp-ng.theme.shared-testing.umd.js +41 -41
  6. package/bundles/abp-ng.theme.shared-testing.umd.js.map +1 -1
  7. package/bundles/abp-ng.theme.shared.umd.js +2316 -2316
  8. package/bundles/abp-ng.theme.shared.umd.js.map +1 -1
  9. package/esm2015/abp-ng.theme.shared.js +4 -4
  10. package/esm2015/extensions/abp-ng.theme.shared-extensions.js +4 -4
  11. package/esm2015/extensions/lib/adapters/date-time.adapter.js +34 -34
  12. package/esm2015/extensions/lib/adapters/date.adapter.js +41 -41
  13. package/esm2015/extensions/lib/adapters/time.adapter.js +36 -36
  14. package/esm2015/extensions/lib/components/abstract-actions/abstract-actions.component.js +25 -25
  15. package/esm2015/extensions/lib/components/date-time-picker/date-time-picker.component.js +109 -109
  16. package/esm2015/extensions/lib/components/extensible-form/extensible-form-prop.component.js +164 -164
  17. package/esm2015/extensions/lib/components/extensible-form/extensible-form.component.js +70 -70
  18. package/esm2015/extensions/lib/components/extensible-table/extensible-table.component.js +134 -134
  19. package/esm2015/extensions/lib/components/grid-actions/grid-actions.component.js +45 -45
  20. package/esm2015/extensions/lib/components/page-toolbar/page-toolbar.component.js +46 -46
  21. package/esm2015/extensions/lib/constants/extra-properties.js +2 -2
  22. package/esm2015/extensions/lib/directives/disabled.directive.js +29 -29
  23. package/esm2015/extensions/lib/directives/prop-data.directive.js +41 -41
  24. package/esm2015/extensions/lib/enums/props.enum.js +2 -2
  25. package/esm2015/extensions/lib/models/actions.js +46 -46
  26. package/esm2015/extensions/lib/models/entity-actions.js +29 -29
  27. package/esm2015/extensions/lib/models/entity-props.js +36 -34
  28. package/esm2015/extensions/lib/models/form-props.js +52 -52
  29. package/esm2015/extensions/lib/models/internal/object-extensions.js +2 -2
  30. package/esm2015/extensions/lib/models/object-extensions.js +3 -3
  31. package/esm2015/extensions/lib/models/props.js +50 -50
  32. package/esm2015/extensions/lib/models/toolbar-actions.js +41 -41
  33. package/esm2015/extensions/lib/services/extensions.service.js +24 -24
  34. package/esm2015/extensions/lib/tokens/extensions.token.js +7 -7
  35. package/esm2015/extensions/lib/ui-extensions.module.js +92 -92
  36. package/esm2015/extensions/lib/utils/actions.util.js +9 -9
  37. package/esm2015/extensions/lib/utils/enum.util.js +42 -42
  38. package/esm2015/extensions/lib/utils/factory.util.js +4 -4
  39. package/esm2015/extensions/lib/utils/form-props.util.js +51 -51
  40. package/esm2015/extensions/lib/utils/localization.util.js +13 -13
  41. package/esm2015/extensions/lib/utils/props.util.js +14 -14
  42. package/esm2015/extensions/lib/utils/state.util.js +124 -124
  43. package/esm2015/extensions/lib/utils/typeahead.util.js +52 -52
  44. package/esm2015/extensions/lib/utils/validation.util.js +11 -11
  45. package/esm2015/extensions/public-api.js +28 -28
  46. package/esm2015/lib/animations/bounce.animations.js +17 -17
  47. package/esm2015/lib/animations/collapse.animations.js +50 -50
  48. package/esm2015/lib/animations/fade.animations.js +38 -38
  49. package/esm2015/lib/animations/index.js +7 -7
  50. package/esm2015/lib/animations/modal.animations.js +11 -11
  51. package/esm2015/lib/animations/slide.animations.js +8 -8
  52. package/esm2015/lib/animations/toast.animations.js +13 -13
  53. package/esm2015/lib/components/breadcrumb/breadcrumb.component.js +49 -49
  54. package/esm2015/lib/components/breadcrumb-items/breadcrumb-items.component.js +22 -22
  55. package/esm2015/lib/components/button/button.component.js +98 -98
  56. package/esm2015/lib/components/confirmation/confirmation.component.js +40 -40
  57. package/esm2015/lib/components/http-error-wrapper/http-error-wrapper.component.js +65 -65
  58. package/esm2015/lib/components/index.js +13 -13
  59. package/esm2015/lib/components/loader-bar/loader-bar.component.js +126 -126
  60. package/esm2015/lib/components/loading/loading.component.js +47 -47
  61. package/esm2015/lib/components/modal/modal-close.directive.js +28 -28
  62. package/esm2015/lib/components/modal/modal-ref.service.js +26 -26
  63. package/esm2015/lib/components/modal/modal.component.js +188 -188
  64. package/esm2015/lib/components/toast/toast.component.js +61 -61
  65. package/esm2015/lib/components/toast-container/toast-container.component.js +49 -49
  66. package/esm2015/lib/constants/styles.js +182 -182
  67. package/esm2015/lib/constants/validation.js +15 -15
  68. package/esm2015/lib/directives/ellipsis.directive.js +63 -63
  69. package/esm2015/lib/directives/index.js +5 -5
  70. package/esm2015/lib/directives/loading.directive.js +90 -90
  71. package/esm2015/lib/directives/ngx-datatable-default.directive.js +75 -75
  72. package/esm2015/lib/directives/ngx-datatable-list.directive.js +94 -94
  73. package/esm2015/lib/enums/index.js +2 -2
  74. package/esm2015/lib/enums/route-names.js +2 -2
  75. package/esm2015/lib/handlers/document-dir.handler.js +33 -33
  76. package/esm2015/lib/handlers/error.handler.js +292 -292
  77. package/esm2015/lib/handlers/index.js +3 -3
  78. package/esm2015/lib/models/common.js +2 -2
  79. package/esm2015/lib/models/confirmation.js +10 -10
  80. package/esm2015/lib/models/index.js +6 -6
  81. package/esm2015/lib/models/nav-item.js +7 -7
  82. package/esm2015/lib/models/statistics.js +2 -2
  83. package/esm2015/lib/models/toaster.js +2 -2
  84. package/esm2015/lib/providers/index.js +3 -3
  85. package/esm2015/lib/providers/ng-bootstrap-config.provider.js +17 -17
  86. package/esm2015/lib/providers/route.provider.js +18 -18
  87. package/esm2015/lib/services/confirmation.service.js +68 -68
  88. package/esm2015/lib/services/index.js +5 -5
  89. package/esm2015/lib/services/nav-items.service.js +51 -51
  90. package/esm2015/lib/services/page-alert.service.js +26 -26
  91. package/esm2015/lib/services/toaster.service.js +103 -103
  92. package/esm2015/lib/theme-shared.module.js +165 -165
  93. package/esm2015/lib/tokens/append-content.token.js +11 -11
  94. package/esm2015/lib/tokens/http-error.token.js +10 -10
  95. package/esm2015/lib/tokens/index.js +5 -5
  96. package/esm2015/lib/tokens/ngx-datatable-messages.token.js +8 -8
  97. package/esm2015/lib/tokens/suppress-unsaved-changes-warning.token.js +3 -3
  98. package/esm2015/lib/utils/date-parser-formatter.js +59 -59
  99. package/esm2015/lib/utils/index.js +3 -3
  100. package/esm2015/lib/utils/validation-utils.js +33 -33
  101. package/esm2015/public-api.js +16 -16
  102. package/esm2015/testing/abp-ng.theme.shared-testing.js +4 -4
  103. package/esm2015/testing/lib/models/config.js +2 -2
  104. package/esm2015/testing/lib/models/index.js +2 -2
  105. package/esm2015/testing/lib/theme-shared-testing.module.js +43 -43
  106. package/esm2015/testing/public-api.js +4 -4
  107. package/extensions/abp-ng.theme.shared-extensions.d.ts +5 -5
  108. package/extensions/lib/adapters/date-time.adapter.d.ts +11 -11
  109. package/extensions/lib/adapters/date.adapter.d.ts +9 -9
  110. package/extensions/lib/adapters/time.adapter.d.ts +8 -8
  111. package/extensions/lib/components/abstract-actions/abstract-actions.component.d.ts +14 -14
  112. package/extensions/lib/components/date-time-picker/date-time-picker.component.d.ts +16 -16
  113. package/extensions/lib/components/extensible-form/extensible-form-prop.component.d.ts +37 -37
  114. package/extensions/lib/components/extensible-form/extensible-form.component.d.ts +24 -24
  115. package/extensions/lib/components/extensible-table/extensible-table.component.d.ts +35 -35
  116. package/extensions/lib/components/grid-actions/grid-actions.component.d.ts +13 -13
  117. package/extensions/lib/components/page-toolbar/page-toolbar.component.d.ts +12 -12
  118. package/extensions/lib/constants/extra-properties.d.ts +1 -1
  119. package/extensions/lib/directives/disabled.directive.d.ts +11 -11
  120. package/extensions/lib/directives/prop-data.directive.d.ts +19 -19
  121. package/extensions/lib/enums/props.enum.d.ts +15 -15
  122. package/extensions/lib/models/actions.d.ts +35 -35
  123. package/extensions/lib/models/entity-actions.d.ts +22 -22
  124. package/extensions/lib/models/entity-props.d.ts +29 -29
  125. package/extensions/lib/models/form-props.d.ts +42 -42
  126. package/extensions/lib/models/internal/object-extensions.d.ts +85 -85
  127. package/extensions/lib/models/object-extensions.d.ts +2 -2
  128. package/extensions/lib/models/props.d.ts +39 -39
  129. package/extensions/lib/models/toolbar-actions.d.ts +29 -29
  130. package/extensions/lib/services/extensions.service.d.ts +14 -14
  131. package/extensions/lib/tokens/extensions.token.d.ts +14 -14
  132. package/extensions/lib/ui-extensions.module.d.ts +23 -23
  133. package/extensions/lib/utils/actions.util.d.ts +7 -7
  134. package/extensions/lib/utils/enum.util.d.ts +7 -7
  135. package/extensions/lib/utils/factory.util.d.ts +1 -1
  136. package/extensions/lib/utils/form-props.util.d.ts +3 -3
  137. package/extensions/lib/utils/localization.util.d.ts +3 -3
  138. package/extensions/lib/utils/props.util.d.ts +8 -8
  139. package/extensions/lib/utils/state.util.d.ts +5 -5
  140. package/extensions/lib/utils/typeahead.util.d.ts +11 -11
  141. package/extensions/lib/utils/validation.util.d.ts +3 -3
  142. package/extensions/public-api.d.ts +27 -27
  143. package/fesm2015/abp-ng.theme.shared-extensions.js +1263 -1262
  144. package/fesm2015/abp-ng.theme.shared-extensions.js.map +1 -1
  145. package/fesm2015/abp-ng.theme.shared-testing.js +37 -37
  146. package/fesm2015/abp-ng.theme.shared-testing.js.map +1 -1
  147. package/fesm2015/abp-ng.theme.shared.js +2117 -2117
  148. package/fesm2015/abp-ng.theme.shared.js.map +1 -1
  149. package/lib/animations/bounce.animations.d.ts +1 -1
  150. package/lib/animations/collapse.animations.d.ts +9 -9
  151. package/lib/animations/fade.animations.d.ts +10 -10
  152. package/lib/animations/index.d.ts +6 -6
  153. package/lib/animations/modal.animations.d.ts +2 -2
  154. package/lib/animations/slide.animations.d.ts +1 -1
  155. package/lib/animations/toast.animations.d.ts +1 -1
  156. package/lib/components/breadcrumb/breadcrumb.component.d.ts +16 -16
  157. package/lib/components/breadcrumb-items/breadcrumb-items.component.d.ts +7 -7
  158. package/lib/components/button/button.component.d.ts +25 -25
  159. package/lib/components/confirmation/confirmation.component.d.ts +14 -14
  160. package/lib/components/http-error-wrapper/http-error-wrapper.component.d.ts +27 -27
  161. package/lib/components/index.d.ts +12 -12
  162. package/lib/components/loader-bar/loader-bar.component.d.ts +33 -33
  163. package/lib/components/loading/loading.component.d.ts +5 -5
  164. package/lib/components/modal/modal-close.directive.d.ts +9 -9
  165. package/lib/components/modal/modal-ref.service.d.ts +13 -13
  166. package/lib/components/modal/modal.component.d.ts +50 -50
  167. package/lib/components/toast/toast.component.d.ts +14 -14
  168. package/lib/components/toast-container/toast-container.component.d.ts +18 -18
  169. package/lib/constants/styles.d.ts +2 -2
  170. package/lib/constants/validation.d.ts +14 -14
  171. package/lib/directives/ellipsis.directive.d.ts +21 -21
  172. package/lib/directives/index.d.ts +4 -4
  173. package/lib/directives/loading.directive.d.ts +25 -25
  174. package/lib/directives/ngx-datatable-default.directive.d.ts +30 -30
  175. package/lib/directives/ngx-datatable-list.directive.d.ts +24 -24
  176. package/lib/enums/index.d.ts +1 -1
  177. package/lib/enums/route-names.d.ts +3 -3
  178. package/lib/handlers/document-dir.handler.d.ts +13 -13
  179. package/lib/handlers/error.handler.d.ts +82 -82
  180. package/lib/handlers/index.d.ts +2 -2
  181. package/lib/models/common.d.ts +19 -19
  182. package/lib/models/confirmation.d.ts +25 -25
  183. package/lib/models/index.d.ts +5 -5
  184. package/lib/models/nav-item.d.ts +11 -11
  185. package/lib/models/statistics.d.ts +12 -12
  186. package/lib/models/toaster.d.ts +30 -30
  187. package/lib/providers/index.d.ts +2 -2
  188. package/lib/providers/ng-bootstrap-config.provider.d.ts +8 -8
  189. package/lib/providers/route.provider.d.ts +8 -8
  190. package/lib/services/confirmation.service.d.ts +21 -21
  191. package/lib/services/index.d.ts +4 -4
  192. package/lib/services/nav-items.service.d.ts +13 -13
  193. package/lib/services/page-alert.service.d.ts +18 -18
  194. package/lib/services/toaster.service.d.ts +60 -60
  195. package/lib/theme-shared.module.d.ts +33 -33
  196. package/lib/tokens/append-content.token.d.ts +2 -2
  197. package/lib/tokens/http-error.token.d.ts +5 -5
  198. package/lib/tokens/index.d.ts +4 -4
  199. package/lib/tokens/ngx-datatable-messages.token.d.ts +12 -12
  200. package/lib/tokens/suppress-unsaved-changes-warning.token.d.ts +2 -2
  201. package/lib/utils/date-parser-formatter.d.ts +12 -12
  202. package/lib/utils/index.d.ts +2 -2
  203. package/lib/utils/validation-utils.d.ts +3 -3
  204. package/package.json +2 -2
  205. package/public-api.d.ts +12 -12
  206. package/testing/abp-ng.theme.shared-testing.d.ts +5 -5
  207. package/testing/lib/models/config.d.ts +4 -4
  208. package/testing/lib/models/index.d.ts +1 -1
  209. package/testing/lib/theme-shared-testing.module.d.ts +14 -14
  210. package/testing/public-api.d.ts +3 -3
@@ -1,124 +1,124 @@
1
- import { pipe, zip } from 'rxjs';
2
- import { filter, map, switchMap, take } from 'rxjs/operators';
3
- import { EntityProp } from '../models/entity-props';
4
- import { FormProp } from '../models/form-props';
5
- import { createEnum, createEnumOptions, createEnumValueResolver } from './enum.util';
6
- import { createDisplayNameLocalizationPipeKeyGenerator } from './localization.util';
7
- import { createExtraPropertyValueResolver } from './props.util';
8
- import { createTypeaheadDisplayNameGenerator, createTypeaheadOptions, getTypeaheadType, hasTypeaheadTextSuffix, } from './typeahead.util';
9
- import { getValidatorsFromProperty } from './validation.util';
10
- function selectObjectExtensions(configState) {
11
- return configState.getOne$('objectExtensions');
12
- }
13
- function selectLocalization(configState) {
14
- return configState.getOne$('localization');
15
- }
16
- function selectEnums(configState) {
17
- return selectObjectExtensions(configState).pipe(map((extensions) => Object.keys(extensions.enums).reduce((acc, key) => {
18
- const { fields, localizationResource } = extensions.enums[key];
19
- acc[key] = {
20
- fields,
21
- localizationResource,
22
- transformed: createEnum(fields),
23
- };
24
- return acc;
25
- }, {})));
26
- }
27
- export function getObjectExtensionEntitiesFromStore(configState, moduleKey) {
28
- return selectObjectExtensions(configState).pipe(map(extensions => {
29
- if (!extensions)
30
- return null;
31
- return (extensions.modules[moduleKey] || {})
32
- .entities;
33
- }), map(entities => (isUndefined(entities) ? {} : entities)), filter(Boolean), take(1));
34
- }
35
- export function mapEntitiesToContributors(configState, resource) {
36
- return pipe(switchMap((entities) => zip(selectLocalization(configState), selectEnums(configState)).pipe(map(([localization, enums]) => {
37
- const generateDisplayName = createDisplayNameLocalizationPipeKeyGenerator(localization);
38
- return Object.keys(entities).reduce((acc, key) => {
39
- acc.prop[key] = [];
40
- acc.createForm[key] = [];
41
- acc.editForm[key] = [];
42
- const entity = entities[key];
43
- if (!entity)
44
- return acc;
45
- const properties = entity.properties;
46
- if (!properties)
47
- return acc;
48
- const mapPropertiesToContributors = createPropertiesToContributorsMapper(generateDisplayName, resource, enums);
49
- return mapPropertiesToContributors(properties, acc, key);
50
- }, {
51
- prop: {},
52
- createForm: {},
53
- editForm: {},
54
- });
55
- }))), take(1));
56
- }
57
- function createPropertiesToContributorsMapper(generateDisplayName, resource, enums) {
58
- return (properties, contributors, key) => {
59
- const isExtra = true;
60
- const generateTypeaheadDisplayName = createTypeaheadDisplayNameGenerator(generateDisplayName, properties);
61
- Object.keys(properties).forEach((name) => {
62
- const property = properties[name];
63
- const propName = name;
64
- const lookup = property.ui.lookup || {};
65
- const type = getTypeaheadType(lookup, name) || getTypeFromProperty(property);
66
- const generateDN = hasTypeaheadTextSuffix(name)
67
- ? generateTypeaheadDisplayName
68
- : generateDisplayName;
69
- const displayName = generateDN(property.displayName, { name, resource });
70
- if (property.ui.onTable.isVisible) {
71
- const sortable = Boolean(property.ui.onTable.isSortable);
72
- const columnWidth = type === "boolean" /* Boolean */ ? 150 : 250;
73
- const valueResolver = type === "enum" /* Enum */
74
- ? createEnumValueResolver(property.type, enums[property.type], propName)
75
- : createExtraPropertyValueResolver(propName);
76
- const entityProp = new EntityProp({
77
- type,
78
- name: propName,
79
- displayName,
80
- sortable,
81
- columnWidth,
82
- valueResolver,
83
- isExtra,
84
- });
85
- const contributor = (propList) => propList.addTail(entityProp);
86
- contributors.prop[key].push(contributor);
87
- }
88
- const isOnCreateForm = property.ui.onCreateForm.isVisible;
89
- const isOnEditForm = property.ui.onEditForm.isVisible;
90
- if (isOnCreateForm || isOnEditForm) {
91
- const defaultValue = property.defaultValue;
92
- const validators = () => getValidatorsFromProperty(property);
93
- let options;
94
- if (type === "enum" /* Enum */)
95
- options = createEnumOptions(propName, enums[property.type || '']);
96
- else if (type === "typeahead" /* Typeahead */)
97
- options = createTypeaheadOptions(lookup);
98
- const formProp = new FormProp({
99
- type,
100
- name: propName,
101
- displayName,
102
- options,
103
- defaultValue,
104
- validators,
105
- isExtra,
106
- });
107
- const formContributor = (propList) => propList.addTail(formProp);
108
- if (isOnCreateForm)
109
- contributors.createForm[key].push(formContributor);
110
- if (isOnEditForm)
111
- contributors.editForm[key].push(formContributor);
112
- }
113
- });
114
- return contributors;
115
- };
116
- }
117
- function getTypeFromProperty(property) {
118
- var _a;
119
- return (_a = property === null || property === void 0 ? void 0 : property.typeSimple) === null || _a === void 0 ? void 0 : _a.replace(/\?$/, '');
120
- }
121
- function isUndefined(obj) {
122
- return typeof obj === 'undefined';
123
- }
124
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdGUudXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3RoZW1lLXNoYXJlZC9leHRlbnNpb25zL3NyYy9saWIvdXRpbHMvc3RhdGUudXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFNQSxPQUFPLEVBQWMsSUFBSSxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM3QyxPQUFPLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFOUQsT0FBTyxFQUFFLFVBQVUsRUFBa0IsTUFBTSx3QkFBd0IsQ0FBQztBQUNwRSxPQUFPLEVBQUUsUUFBUSxFQUFnQixNQUFNLHNCQUFzQixDQUFDO0FBRzlELE9BQU8sRUFBRSxVQUFVLEVBQUUsaUJBQWlCLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDckYsT0FBTyxFQUFFLDZDQUE2QyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDcEYsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ2hFLE9BQU8sRUFDTCxtQ0FBbUMsRUFDbkMsc0JBQXNCLEVBQ3RCLGdCQUFnQixFQUNoQixzQkFBc0IsR0FDdkIsTUFBTSxrQkFBa0IsQ0FBQztBQUMxQixPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUU5RCxTQUFTLHNCQUFzQixDQUM3QixXQUErQjtJQUUvQixPQUFPLFdBQVcsQ0FBQyxPQUFPLENBQUMsa0JBQWtCLENBQUMsQ0FBQztBQUNqRCxDQUFDO0FBRUQsU0FBUyxrQkFBa0IsQ0FDekIsV0FBK0I7SUFFL0IsT0FBTyxXQUFXLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxDQUFDO0FBQzdDLENBQUM7QUFFRCxTQUFTLFdBQVcsQ0FDbEIsV0FBK0I7SUFFL0IsT0FBTyxzQkFBc0IsQ0FBQyxXQUFXLENBQUMs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LHNCQUFzQixDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUVoRixNQUFNLFFBQVEsR0FBRyxJQUFJLFFBQVEsQ0FBQztvQkFDNUIsSUFBSTtvQkFDSixJQUFJLEVBQUUsUUFBUTtvQkFDZCxXQUFXO29CQUNYLE9BQU87b0JBQ1AsWUFBWTtvQkFDWixVQUFVO29CQUNWLE9BQU87aUJBQ1IsQ0FBQyxDQUFDO2dCQUVILE1BQU0sZUFBZSxHQUFHLENBQUMsUUFBeUIsRUFBRSxFQUFFLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFFbEYsSUFBSSxjQUFjO29CQUFFLFlBQVksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO2dCQUN2RSxJQUFJLFlBQVk7b0JBQUUsWUFBWSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7YUFDcEU7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUVILE9BQU8sWUFBWSxDQUFDO0lBQ3RCLENBQUMsQ0FBQztBQUNKLENBQUM7QUFFRCxTQUFTLG1CQUFtQixDQUFDLFFBQStDOztJQUMxRSxPQUFPLE1BQUEsUUFBUSxhQUFSLFFBQVEsdUJBQVIsUUFBUSxDQUFFLFVBQVUsMENBQUUsT0FBTyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQXdCLENBQUM7QUFDekUsQ0FBQztBQUVELFNBQVMsV0FBVyxDQUFDLEdBQVE7SUFDM0IsT0FBTyxPQUFPLEdBQUcsS0FBSyxXQUFXLENBQUM7QUFDcEMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQUJQLFxyXG4gIEFwcGxpY2F0aW9uTG9jYWxpemF0aW9uQ29uZmlndXJhdGlvbkR0byxcclxuICBDb25maWdTdGF0ZVNlcnZpY2UsXHJcbiAgRXh0ZW5zaW9uUHJvcGVydHlVaUxvb2t1cER0byxcclxufSBmcm9tICdAYWJwL25nLmNvcmUnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBwaXBlLCB6aXAgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgZmlsdGVyLCBtYXAsIHN3aXRjaE1hcCwgdGFrZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgZVByb3BUeXBlIH0gZnJvbSAnLi4vZW51bXMvcHJvcHMuZW51bSc7XHJcbmltcG9ydCB7IEVudGl0eVByb3AsIEVudGl0eVByb3BMaXN0IH0gZnJvbSAnLi4vbW9kZWxzL2VudGl0eS1wcm9wcyc7XHJcbmltcG9ydCB7IEZvcm1Qcm9wLCBGb3JtUHJvcExpc3QgfSBmcm9tICcuLi9tb2RlbHMvZm9ybS1wcm9wcyc7XHJcbmltcG9ydCB7IE9iamVjdEV4dGVuc2lvbnMgfSBmcm9tICcuLi9tb2RlbHMvb2JqZWN0LWV4dGVuc2lvbnMnO1xyXG5pbXBvcnQgeyBQcm9wQ2FsbGJhY2sgfSBmcm9tICcuLi9tb2RlbHMvcHJvcHMnO1xyXG5pbXBvcnQgeyBjcmVhdGVFbnVtLCBjcmVhdGVFbnVtT3B0aW9ucywgY3JlYXRlRW51bVZhbHVlUmVzb2x2ZXIgfSBmcm9tICcuL2VudW0udXRpbCc7XHJcbmltcG9ydCB7IGNyZWF0ZURpc3BsYXlOYW1lTG9jYWxpemF0aW9uUGlwZUtleUdlbmVyYXRvciB9IGZyb20gJy4vbG9jYWxpemF0aW9uLnV0aWwnO1xyXG5pbXBvcnQgeyBjcmVhdGVFeHRyYVByb3BlcnR5VmFsdWVSZXNvbHZlciB9IGZyb20gJy4vcHJvcHMudXRpbCc7XHJcbmltcG9ydCB7XHJcbiAgY3JlYXRlVHlwZWFoZWFkRGlzcGxheU5hbWVHZW5lcmF0b3IsXHJcbiAgY3JlYXRlVHlwZWFoZWFkT3B0aW9ucyxcclxuICBnZXRUeXBlYWhlYWRUeXBlLFxyXG4gIGhhc1R5cGVhaGVhZFRleHRTdWZmaXgsXHJcbn0gZnJvbSAnLi90eXBlYWhlYWQudXRpbCc7XHJcbmltcG9ydCB7IGdldFZhbGlkYXRvcnNGcm9tUHJvcGVydHkgfSBmcm9tICcuL3ZhbGlkYXRpb24udXRpbCc7XHJcblxyXG5mdW5jdGlvbiBzZWxlY3RPYmplY3RFeHRlbnNpb25zKFxyXG4gIGNvbmZpZ1N0YXRlOiBDb25maWdTdGF0ZVNlcnZpY2UsXHJcbik6IE9ic2VydmFibGU8T2JqZWN0RXh0ZW5zaW9ucy5PYmplY3RFeHRlbnNpb25zRHRvPiB7XHJcbiAgcmV0dXJuIGNvbmZpZ1N0YXRlLmdldE9uZSQoJ29iamVjdEV4dGVuc2lvbnMnKTtcclxufVxyXG5cclxuZnVuY3Rpb24gc2VsZWN0TG9jYWxpemF0aW9uKFxyXG4gIGNvbmZpZ1N0YXRlOiBDb25maWdTdGF0ZVNlcnZpY2UsXHJcbik6IE9ic2VydmFibGU8QXBwbGljYXRpb25Mb2NhbGl6YXRpb25Db25maWd1cmF0aW9uRHRvPiB7XHJcbiAgcmV0dXJuIGNvbmZpZ1N0YXRlLmdldE9uZSQoJ2xvY2FsaXphdGlvbicpO1xyXG59XHJcblxyXG5mdW5jdGlvbiBzZWxlY3RFbnVtcyhcclxuICBjb25maWdTdGF0ZTogQ29uZmlnU3RhdGVTZXJ2aWNlLFxyXG4pOiBPYnNlcnZhYmxlPFJlY29yZDxzdHJpbmcsIE9iamVjdEV4dGVuc2lvbnMuRXh0ZW5zaW9uRW51bUR0bz4+IHtcclxuICByZXR1cm4gc2VsZWN0T2JqZWN0RXh0ZW5zaW9ucyhjb25maWdTdGF0ZSkucGlwZShcclxuICAgIG1hcCgoZXh0ZW5zaW9uczogT2JqZWN0RXh0ZW5zaW9ucy5PYmplY3RFeHRlbnNpb25zRHRvKSA9PlxyXG4gICAgICBPYmplY3Qua2V5cyhleHRlbnNpb25zLmVudW1zKS5yZWR1Y2UoKGFjYywga2V5KSA9PiB7XHJcbiAgICAgICAgY29uc3QgeyBmaWVsZHMsIGxvY2FsaXphdGlvblJlc291cmNlIH0gPSBleHRlbnNpb25zLmVudW1zW2tleV07XHJcbiAgICAgICAgYWNjW2tleV0gPSB7XHJcbiAgICAgICAgICBmaWVsZHMsXHJcbiAgICAgICAgICBsb2NhbGl6YXRpb25SZXNvdXJjZSxcclxuICAgICAgICAgIHRyYW5zZm9ybWVkOiBjcmVhdGVFbnVtKGZpZWxkcyksXHJcbiAgICAgICAgfTtcclxuICAgICAgICByZXR1cm4gYWNjO1xyXG4gICAgICB9LCB7fSBhcyBSZWNvcmQ8c3RyaW5nLCBPYmplY3RFeHRlbnNpb25zLkV4dGVuc2lvbkVudW1EdG8+KSxcclxuICAgICksXHJcbiAgKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGdldE9iamVjdEV4dGVuc2lvbkVudGl0aWVzRnJvbVN0b3JlKFxyXG4gIGNvbmZpZ1N0YXRlOiBDb25maWdTdGF0ZVNlcnZpY2UsXHJcbiAgbW9kdWxlS2V5OiBzdHJpbmcsXHJcbikge1xyXG4gIHJldHVybiBzZWxlY3RPYmplY3RFeHRlbnNpb25zKGNvbmZpZ1N0YXRlKS5waXBlKFxyXG4gICAgbWFwKGV4dGVuc2lvbnMgPT4ge1xyXG4gICAgICBpZiAoIWV4dGVuc2lvbnMpIHJldHVybiBudWxsO1xyXG5cclxuICAgICAgcmV0dXJuIChleHRlbnNpb25zLm1vZHVsZXNbbW9kdWxlS2V5XSB8fCAoe30gYXMgT2JqZWN0RXh0ZW5zaW9ucy5Nb2R1bGVFeHRlbnNpb25EdG8pKVxyXG4gICAgICAgIC5lbnRpdGllcztcclxuICAgIH0pLFxyXG4gICAgbWFwKGVudGl0aWVzID0+IChpc1VuZGVmaW5lZChlbnRpdGllcykgPyB7fSA6IGVudGl0aWVzKSksXHJcbiAgICBmaWx0ZXI8T2JqZWN0RXh0ZW5zaW9ucy5FbnRpdHlFeHRlbnNpb25zPihCb29sZWFuKSxcclxuICAgIHRha2UoMSksXHJcbiAgKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIG1hcEVudGl0aWVzVG9Db250cmlidXRvcnM8VCA9IGFueT4oXHJcbiAgY29uZmlnU3RhdGU6IENvbmZpZ1N0YXRlU2VydmljZSxcclxuICByZXNvdXJjZTogc3RyaW5nLFxyXG4pIHtcclxuICByZXR1cm4gcGlwZShcclxuICAgIHN3aXRjaE1hcCgoZW50aXRpZXM6IGFueSkgPT5cclxuICAgICAgemlwKHNlbGVjdExvY2FsaXphdGlvbihjb25maWdTdGF0ZSksIHNlbGVjdEVudW1zKGNvbmZpZ1N0YXRlKSkucGlwZShcclxuICAgICAgICBtYXAoKFtsb2NhbGl6YXRpb24sIGVudW1zXSkgPT4ge1xyXG4gICAgICAgICAgY29uc3QgZ2VuZXJhdGVEaXNwbGF5TmFtZSA9IGNyZWF0ZURpc3BsYXlOYW1lTG9jYWxpemF0aW9uUGlwZUtleUdlbmVyYXRvcihsb2NhbGl6YXRpb24pO1xyXG5cclxuICAgICAgICAgIHJldHVybiBPYmplY3Qua2V5cyhlbnRpdGllcykucmVkdWNlKFxyXG4gICAgICAgICAgICAoYWNjLCBrZXk6IGtleW9mIE9iamVjdEV4dGVuc2lvbnMuRW50aXR5RXh0ZW5zaW9ucykgPT4ge1xyXG4gICAgICAgICAgICAgIGFjYy5wcm9wW2tleV0gPSBbXTtcclxuICAgICAgICAgICAgICBhY2MuY3JlYXRlRm9ybVtrZXldID0gW107XHJcbiAgICAgICAgICAgICAgYWNjLmVkaXRGb3JtW2tleV0gPSBbXTtcclxuXHJcbiAgICAgICAgICAgICAgY29uc3QgZW50aXR5OiBPYmplY3RFeHRlbnNpb25zLkVudGl0eUV4dGVuc2lvbkR0byA9IGVudGl0aWVzW2tleV07XHJcbiAgICAgICAgICAgICAgaWYgKCFlbnRpdHkpIHJldHVybiBhY2M7XHJcblxyXG4gICAgICAgICAgICAgIGNvbnN0IHByb3BlcnRpZXMgPSBlbnRpdHkucHJvcGVydGllcztcclxuICAgICAgICAgICAgICBpZiAoIXByb3BlcnRpZXMpIHJldHVybiBhY2M7XHJcblxyXG4gICAgICAgICAgICAgIGNvbnN0IG1hcFByb3BlcnRpZXNUb0NvbnRyaWJ1dG9ycyA9IGNyZWF0ZVByb3BlcnRpZXNUb0NvbnRyaWJ1dG9yc01hcHBlcjxUPihcclxuICAgICAgICAgICAgICAgIGdlbmVyYXRlRGlzcGxheU5hbWUsXHJcbiAgICAgICAgICAgICAgICByZXNvdXJjZSxcclxuICAgICAgICAgICAgICAgIGVudW1zLFxyXG4gICAgICAgICAgICAgICk7XHJcblxyXG4gICAgICAgICAgICAgIHJldHVybiBtYXBQcm9wZXJ0aWVzVG9Db250cmlidXRvcnMocHJvcGVydGllcywgYWNjLCBrZXkpO1xyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgcHJvcDoge30sXHJcbiAgICAgICAgICAgICAgY3JlYXRlRm9ybToge30sXHJcbiAgICAgICAgICAgICAgZWRpdEZvcm06IHt9LFxyXG4gICAgICAgICAgICB9IGFzIE9iamVjdEV4dGVuc2lvbnMuUHJvcENvbnRyaWJ1dG9ycyxcclxuICAgICAgICAgICk7XHJcbiAgICAgICAgfSksXHJcbiAgICAgICksXHJcbiAgICApLFxyXG4gICAgdGFrZSgxKSxcclxuICApO1xyXG59XHJcblxyXG5mdW5jdGlvbiBjcmVhdGVQcm9wZXJ0aWVzVG9Db250cmlidXRvcnNNYXBwZXI8VCA9IGFueT4oXHJcbiAgZ2VuZXJhdGVEaXNwbGF5TmFtZTogT2JqZWN0RXh0ZW5zaW9ucy5EaXNwbGF5TmFtZUdlbmVyYXRvckZuLFxyXG4gIHJlc291cmNlOiBzdHJpbmcsXHJcbiAgZW51bXM6IFJlY29yZDxzdHJpbmcsIE9iamVjdEV4dGVuc2lvbnMuRXh0ZW5zaW9uRW51bUR0bz4sXHJcbikge1xyXG4gIHJldHVybiAoXHJcbiAgICBwcm9wZXJ0aWVzOiBPYmplY3RFeHRlbnNpb25zLkVudGl0eUV4dGVuc2lvblByb3BlcnRpZXMsXHJcbiAgICBjb250cmlidXRvcnM6IE9iamVjdEV4dGVuc2lvbnMuUHJvcENvbnRyaWJ1dG9yczxUPixcclxuICAgIGtleTogc3RyaW5nLFxyXG4gICkgPT4ge1xyXG4gICAgY29uc3QgaXNFeHRyYSA9IHRydWU7XHJcbiAgICBjb25zdCBnZW5lcmF0ZVR5cGVhaGVhZERpc3BsYXlOYW1lID0gY3JlYXRlVHlwZWFoZWFkRGlzcGxheU5hbWVHZW5lcmF0b3IoXHJcbiAgICAgIGdlbmVyYXRlRGlzcGxheU5hbWUsXHJcbiAgICAgIHByb3BlcnRpZXMsXHJcbiAgICApO1xyXG5cclxuICAgIE9iamVjdC5rZXlzKHByb3BlcnRpZXMpLmZvckVhY2goKG5hbWU6IHN0cmluZykgPT4ge1xyXG4gICAgICBjb25zdCBwcm9wZXJ0eSA9IHByb3BlcnRpZXNbbmFtZV07XHJcbiAgICAgIGNvbnN0IHByb3BOYW1lID0gbmFtZTtcclxuICAgICAgY29uc3QgbG9va3VwID0gcHJvcGVydHkudWkubG9va3VwIHx8ICh7fSBhcyBFeHRlbnNpb25Qcm9wZXJ0eVVpTG9va3VwRHRvKTtcclxuICAgICAgY29uc3QgdHlwZSA9IGdldFR5cGVhaGVhZFR5cGUobG9va3VwLCBuYW1lKSB8fCBnZXRUeXBlRnJvbVByb3BlcnR5KHByb3BlcnR5KTtcclxuICAgICAgY29uc3QgZ2VuZXJhdGVETiA9IGhhc1R5cGVhaGVhZFRleHRTdWZmaXgobmFtZSlcclxuICAgICAgICA/IGdlbmVyYXRlVHlwZWFoZWFkRGlzcGxheU5hbWVcclxuICAgICAgICA6IGdlbmVyYXRlRGlzcGxheU5hbWU7XHJcbiAgICAgIGNvbnN0IGRpc3BsYXlOYW1lID0gZ2VuZXJhdGVETihwcm9wZXJ0eS5kaXNwbGF5TmFtZSwgeyBuYW1lLCByZXNvdXJjZSB9KTtcclxuXHJcbiAgICAgIGlmIChwcm9wZXJ0eS51aS5vblRhYmxlLmlzVmlzaWJsZSkge1xyXG4gICAgICAgIGNvbnN0IHNvcnRhYmxlID0gQm9vbGVhbihwcm9wZXJ0eS51aS5vblRhYmxlLmlzU29ydGFibGUpO1xyXG4gICAgICAgIGNvbnN0IGNvbHVtbldpZHRoID0gdHlwZSA9PT0gZVByb3BUeXBlLkJvb2xlYW4gPyAxNTAgOiAyNTA7XHJcbiAgICAgICAgY29uc3QgdmFsdWVSZXNvbHZlciA9XHJcbiAgICAgICAgICB0eXBlID09PSBlUHJvcFR5cGUuRW51bVxyXG4gICAgICAgICAgICA/IGNyZWF0ZUVudW1WYWx1ZVJlc29sdmVyKHByb3BlcnR5LnR5cGUsIGVudW1zW3Byb3BlcnR5LnR5cGVdLCBwcm9wTmFtZSlcclxuICAgICAgICAgICAgOiBjcmVhdGVFeHRyYVByb3BlcnR5VmFsdWVSZXNvbHZlcjxUPihwcm9wTmFtZSk7XHJcblxyXG4gICAgICAgIGNvbnN0IGVudGl0eVByb3AgPSBuZXcgRW50aXR5UHJvcDxUPih7XHJcbiAgICAgICAgICB0eXBlLFxyXG4gICAgICAgICAgbmFtZTogcHJvcE5hbWUsXHJcbiAgICAgICAgICBkaXNwbGF5TmFtZSxcclxuICAgICAgICAgIHNvcnRhYmxlLFxyXG4gICAgICAgICAgY29sdW1uV2lkdGgsXHJcbiAgICAgICAgICB2YWx1ZVJlc29sdmVyLFxyXG4gICAgICAgICAgaXNFeHRyYSxcclxuICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgY29uc3QgY29udHJpYnV0b3IgPSAocHJvcExpc3Q6IEVudGl0eVByb3BMaXN0PFQ+KSA9PiBwcm9wTGlzdC5hZGRUYWlsKGVudGl0eVByb3ApO1xyXG4gICAgICAgIGNvbnRyaWJ1dG9ycy5wcm9wW2tleV0ucHVzaChjb250cmlidXRvcik7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGNvbnN0IGlzT25DcmVhdGVGb3JtID0gcHJvcGVydHkudWkub25DcmVhdGVGb3JtLmlzVmlzaWJsZTtcclxuICAgICAgY29uc3QgaXNPbkVkaXRGb3JtID0gcHJvcGVydHkudWkub25FZGl0Rm9ybS5pc1Zpc2libGU7XHJcblxyXG4gICAgICBpZiAoaXNPbkNyZWF0ZUZvcm0gfHwgaXNPbkVkaXRGb3JtKSB7XHJcbiAgICAgICAgY29uc3QgZGVmYXVsdFZhbHVlID0gcHJvcGVydHkuZGVmYXVsdFZhbHVlO1xyXG4gICAgICAgIGNvbnN0IHZhbGlkYXRvcnMgPSAoKSA9PiBnZXRWYWxpZGF0b3JzRnJvbVByb3BlcnR5KHByb3BlcnR5KTtcclxuICAgICAgICBsZXQgb3B0aW9uczogUHJvcENhbGxiYWNrPGFueSwgT2JzZXJ2YWJsZTxBQlAuT3B0aW9uPGFueT5bXT4+IHwgdW5kZWZpbmVkO1xyXG4gICAgICAgIGlmICh0eXBlID09PSBlUHJvcFR5cGUuRW51bSlcclxuICAgICAgICAgIG9wdGlvbnMgPSBjcmVhdGVFbnVtT3B0aW9ucyhwcm9wTmFtZSwgZW51bXNbcHJvcGVydHkudHlwZSB8fCAnJ10pO1xyXG4gICAgICAgIGVsc2UgaWYgKHR5cGUgPT09IGVQcm9wVHlwZS5UeXBlYWhlYWQpIG9wdGlvbnMgPSBjcmVhdGVUeXBlYWhlYWRPcHRpb25zKGxvb2t1cCk7XHJcblxyXG4gICAgICAgIGNvbnN0IGZvcm1Qcm9wID0gbmV3IEZvcm1Qcm9wKHtcclxuICAgICAgICAgIHR5cGUsXHJcbiAgICAgICAgICBuYW1lOiBwcm9wTmFtZSxcclxuICAgICAgICAgIGRpc3BsYXlOYW1lLFxyXG4gICAgICAgICAgb3B0aW9ucyxcclxuICAgICAgICAgIGRlZmF1bHRWYWx1ZSxcclxuICAgICAgICAgIHZhbGlkYXRvcnMsXHJcbiAgICAgICAgICBpc0V4dHJhLFxyXG4gICAgICAgIH0pO1xyXG5cclxuICAgICAgICBjb25zdCBmb3JtQ29udHJpYnV0b3IgPSAocHJvcExpc3Q6IEZvcm1Qcm9wTGlzdDxUPikgPT4gcHJvcExpc3QuYWRkVGFpbChmb3JtUHJvcCk7XHJcblxyXG4gICAgICAgIGlmIChpc09uQ3JlYXRlRm9ybSkgY29udHJpYnV0b3JzLmNyZWF0ZUZvcm1ba2V5XS5wdXNoKGZvcm1Db250cmlidXRvcik7XHJcbiAgICAgICAgaWYgKGlzT25FZGl0Rm9ybSkgY29udHJpYnV0b3JzLmVkaXRGb3JtW2tleV0ucHVzaChmb3JtQ29udHJpYnV0b3IpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuXHJcbiAgICByZXR1cm4gY29udHJpYnV0b3JzO1xyXG4gIH07XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGdldFR5cGVGcm9tUHJvcGVydHkocHJvcGVydHk6IE9iamVjdEV4dGVuc2lvbnMuRXh0ZW5zaW9uUHJvcGVydHlEdG8pOiBlUHJvcFR5cGUge1xyXG4gIHJldHVybiBwcm9wZXJ0eT8udHlwZVNpbXBsZT8ucmVwbGFjZSgvXFw/JC8sICcnKSBhcyBzdHJpbmcgYXMgZVByb3BUeXBlO1xyXG59XHJcblxyXG5mdW5jdGlvbiBpc1VuZGVmaW5lZChvYmo6IGFueSk6IG9iaiBpcyB1bmRlZmluZWQge1xyXG4gIHJldHVybiB0eXBlb2Ygb2JqID09PSAndW5kZWZpbmVkJztcclxufVxyXG4iXX0=
1
+ import { pipe, zip } from 'rxjs';
2
+ import { filter, map, switchMap, take } from 'rxjs/operators';
3
+ import { EntityProp } from '../models/entity-props';
4
+ import { FormProp } from '../models/form-props';
5
+ import { createEnum, createEnumOptions, createEnumValueResolver } from './enum.util';
6
+ import { createDisplayNameLocalizationPipeKeyGenerator } from './localization.util';
7
+ import { createExtraPropertyValueResolver } from './props.util';
8
+ import { createTypeaheadDisplayNameGenerator, createTypeaheadOptions, getTypeaheadType, hasTypeaheadTextSuffix, } from './typeahead.util';
9
+ import { getValidatorsFromProperty } from './validation.util';
10
+ function selectObjectExtensions(configState) {
11
+ return configState.getOne$('objectExtensions');
12
+ }
13
+ function selectLocalization(configState) {
14
+ return configState.getOne$('localization');
15
+ }
16
+ function selectEnums(configState) {
17
+ return selectObjectExtensions(configState).pipe(map((extensions) => Object.keys(extensions.enums).reduce((acc, key) => {
18
+ const { fields, localizationResource } = extensions.enums[key];
19
+ acc[key] = {
20
+ fields,
21
+ localizationResource,
22
+ transformed: createEnum(fields),
23
+ };
24
+ return acc;
25
+ }, {})));
26
+ }
27
+ export function getObjectExtensionEntitiesFromStore(configState, moduleKey) {
28
+ return selectObjectExtensions(configState).pipe(map(extensions => {
29
+ if (!extensions)
30
+ return null;
31
+ return (extensions.modules[moduleKey] || {})
32
+ .entities;
33
+ }), map(entities => (isUndefined(entities) ? {} : entities)), filter(Boolean), take(1));
34
+ }
35
+ export function mapEntitiesToContributors(configState, resource) {
36
+ return pipe(switchMap((entities) => zip(selectLocalization(configState), selectEnums(configState)).pipe(map(([localization, enums]) => {
37
+ const generateDisplayName = createDisplayNameLocalizationPipeKeyGenerator(localization);
38
+ return Object.keys(entities).reduce((acc, key) => {
39
+ acc.prop[key] = [];
40
+ acc.createForm[key] = [];
41
+ acc.editForm[key] = [];
42
+ const entity = entities[key];
43
+ if (!entity)
44
+ return acc;
45
+ const properties = entity.properties;
46
+ if (!properties)
47
+ return acc;
48
+ const mapPropertiesToContributors = createPropertiesToContributorsMapper(generateDisplayName, resource, enums);
49
+ return mapPropertiesToContributors(properties, acc, key);
50
+ }, {
51
+ prop: {},
52
+ createForm: {},
53
+ editForm: {},
54
+ });
55
+ }))), take(1));
56
+ }
57
+ function createPropertiesToContributorsMapper(generateDisplayName, resource, enums) {
58
+ return (properties, contributors, key) => {
59
+ const isExtra = true;
60
+ const generateTypeaheadDisplayName = createTypeaheadDisplayNameGenerator(generateDisplayName, properties);
61
+ Object.keys(properties).forEach((name) => {
62
+ const property = properties[name];
63
+ const propName = name;
64
+ const lookup = property.ui.lookup || {};
65
+ const type = getTypeaheadType(lookup, name) || getTypeFromProperty(property);
66
+ const generateDN = hasTypeaheadTextSuffix(name)
67
+ ? generateTypeaheadDisplayName
68
+ : generateDisplayName;
69
+ const displayName = generateDN(property.displayName, { name, resource });
70
+ if (property.ui.onTable.isVisible) {
71
+ const sortable = Boolean(property.ui.onTable.isSortable);
72
+ const columnWidth = type === "boolean" /* Boolean */ ? 150 : 250;
73
+ const valueResolver = type === "enum" /* Enum */
74
+ ? createEnumValueResolver(property.type, enums[property.type], propName)
75
+ : createExtraPropertyValueResolver(propName);
76
+ const entityProp = new EntityProp({
77
+ type,
78
+ name: propName,
79
+ displayName,
80
+ sortable,
81
+ columnWidth,
82
+ valueResolver,
83
+ isExtra,
84
+ });
85
+ const contributor = (propList) => propList.addTail(entityProp);
86
+ contributors.prop[key].push(contributor);
87
+ }
88
+ const isOnCreateForm = property.ui.onCreateForm.isVisible;
89
+ const isOnEditForm = property.ui.onEditForm.isVisible;
90
+ if (isOnCreateForm || isOnEditForm) {
91
+ const defaultValue = property.defaultValue;
92
+ const validators = () => getValidatorsFromProperty(property);
93
+ let options;
94
+ if (type === "enum" /* Enum */)
95
+ options = createEnumOptions(propName, enums[property.type || '']);
96
+ else if (type === "typeahead" /* Typeahead */)
97
+ options = createTypeaheadOptions(lookup);
98
+ const formProp = new FormProp({
99
+ type,
100
+ name: propName,
101
+ displayName,
102
+ options,
103
+ defaultValue,
104
+ validators,
105
+ isExtra,
106
+ });
107
+ const formContributor = (propList) => propList.addTail(formProp);
108
+ if (isOnCreateForm)
109
+ contributors.createForm[key].push(formContributor);
110
+ if (isOnEditForm)
111
+ contributors.editForm[key].push(formContributor);
112
+ }
113
+ });
114
+ return contributors;
115
+ };
116
+ }
117
+ function getTypeFromProperty(property) {
118
+ var _a;
119
+ return (_a = property === null || property === void 0 ? void 0 : property.typeSimple) === null || _a === void 0 ? void 0 : _a.replace(/\?$/, '');
120
+ }
121
+ function isUndefined(obj) {
122
+ return typeof obj === 'undefined';
123
+ }
124
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdGUudXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3RoZW1lLXNoYXJlZC9leHRlbnNpb25zL3NyYy9saWIvdXRpbHMvc3RhdGUudXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFNQSxPQUFPLEVBQWMsSUFBSSxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM3QyxPQUFPLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFOUQsT0FBTyxFQUFFLFVBQVUsRUFBa0IsTUFBTSx3QkFBd0IsQ0FBQztBQUNwRSxPQUFPLEVBQUUsUUFBUSxFQUFnQixNQUFNLHNCQUFzQixDQUFDO0FBRzlELE9BQU8sRUFBRSxVQUFVLEVBQUUsaUJBQWlCLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDckYsT0FBTyxFQUFFLDZDQUE2QyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDcEYsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ2hFLE9BQU8sRUFDTCxtQ0FBbUMsRUFDbkMsc0JBQXNCLEVBQ3RCLGdCQUFnQixFQUNoQixzQkFBc0IsR0FDdkIsTUFBTSxrQkFBa0IsQ0FBQztBQUMxQixPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUU5RCxTQUFTLHNCQUFzQixDQUM3QixXQUErQjtJQUUvQixPQUFPLFdBQVcsQ0FBQyxPQUFPLENBQUMsa0JBQWtCLENBQUMsQ0FBQztBQUNqRCxDQUFDO0FBRUQsU0FBUyxrQkFBa0IsQ0FDekIsV0FBK0I7SUFFL0IsT0FBTyxXQUFXLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxDQUFDO0FBQzdDLENBQUM7QUFFRCxTQUFTLFdBQVcsQ0FDbEIsV0FBK0I7SUFFL0IsT0FBTyxzQkFBc0IsQ0FBQyxXQUFXLENBQUMs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LHNCQUFzQixDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUVoRixNQUFNLFFBQVEsR0FBRyxJQUFJLFFBQVEsQ0FBQztvQkFDNUIsSUFBSTtvQkFDSixJQUFJLEVBQUUsUUFBUTtvQkFDZCxXQUFXO29CQUNYLE9BQU87b0JBQ1AsWUFBWTtvQkFDWixVQUFVO29CQUNWLE9BQU87aUJBQ1IsQ0FBQyxDQUFDO2dCQUVILE1BQU0sZUFBZSxHQUFHLENBQUMsUUFBeUIsRUFBRSxFQUFFLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFFbEYsSUFBSSxjQUFjO29CQUFFLFlBQVksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO2dCQUN2RSxJQUFJLFlBQVk7b0JBQUUsWUFBWSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7YUFDcEU7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUVILE9BQU8sWUFBWSxDQUFDO0lBQ3RCLENBQUMsQ0FBQztBQUNKLENBQUM7QUFFRCxTQUFTLG1CQUFtQixDQUFDLFFBQStDOztJQUMxRSxPQUFPLE1BQUEsUUFBUSxhQUFSLFFBQVEsdUJBQVIsUUFBUSxDQUFFLFVBQVUsMENBQUUsT0FBTyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQXdCLENBQUM7QUFDekUsQ0FBQztBQUVELFNBQVMsV0FBVyxDQUFDLEdBQVE7SUFDM0IsT0FBTyxPQUFPLEdBQUcsS0FBSyxXQUFXLENBQUM7QUFDcEMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFCUCxcbiAgQXBwbGljYXRpb25Mb2NhbGl6YXRpb25Db25maWd1cmF0aW9uRHRvLFxuICBDb25maWdTdGF0ZVNlcnZpY2UsXG4gIEV4dGVuc2lvblByb3BlcnR5VWlMb29rdXBEdG8sXG59IGZyb20gJ0BhYnAvbmcuY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBwaXBlLCB6aXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGZpbHRlciwgbWFwLCBzd2l0Y2hNYXAsIHRha2UgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBlUHJvcFR5cGUgfSBmcm9tICcuLi9lbnVtcy9wcm9wcy5lbnVtJztcbmltcG9ydCB7IEVudGl0eVByb3AsIEVudGl0eVByb3BMaXN0IH0gZnJvbSAnLi4vbW9kZWxzL2VudGl0eS1wcm9wcyc7XG5pbXBvcnQgeyBGb3JtUHJvcCwgRm9ybVByb3BMaXN0IH0gZnJvbSAnLi4vbW9kZWxzL2Zvcm0tcHJvcHMnO1xuaW1wb3J0IHsgT2JqZWN0RXh0ZW5zaW9ucyB9IGZyb20gJy4uL21vZGVscy9vYmplY3QtZXh0ZW5zaW9ucyc7XG5pbXBvcnQgeyBQcm9wQ2FsbGJhY2sgfSBmcm9tICcuLi9tb2RlbHMvcHJvcHMnO1xuaW1wb3J0IHsgY3JlYXRlRW51bSwgY3JlYXRlRW51bU9wdGlvbnMsIGNyZWF0ZUVudW1WYWx1ZVJlc29sdmVyIH0gZnJvbSAnLi9lbnVtLnV0aWwnO1xuaW1wb3J0IHsgY3JlYXRlRGlzcGxheU5hbWVMb2NhbGl6YXRpb25QaXBlS2V5R2VuZXJhdG9yIH0gZnJvbSAnLi9sb2NhbGl6YXRpb24udXRpbCc7XG5pbXBvcnQgeyBjcmVhdGVFeHRyYVByb3BlcnR5VmFsdWVSZXNvbHZlciB9IGZyb20gJy4vcHJvcHMudXRpbCc7XG5pbXBvcnQge1xuICBjcmVhdGVUeXBlYWhlYWREaXNwbGF5TmFtZUdlbmVyYXRvcixcbiAgY3JlYXRlVHlwZWFoZWFkT3B0aW9ucyxcbiAgZ2V0VHlwZWFoZWFkVHlwZSxcbiAgaGFzVHlwZWFoZWFkVGV4dFN1ZmZpeCxcbn0gZnJvbSAnLi90eXBlYWhlYWQudXRpbCc7XG5pbXBvcnQgeyBnZXRWYWxpZGF0b3JzRnJvbVByb3BlcnR5IH0gZnJvbSAnLi92YWxpZGF0aW9uLnV0aWwnO1xuXG5mdW5jdGlvbiBzZWxlY3RPYmplY3RFeHRlbnNpb25zKFxuICBjb25maWdTdGF0ZTogQ29uZmlnU3RhdGVTZXJ2aWNlLFxuKTogT2JzZXJ2YWJsZTxPYmplY3RFeHRlbnNpb25zLk9iamVjdEV4dGVuc2lvbnNEdG8+IHtcbiAgcmV0dXJuIGNvbmZpZ1N0YXRlLmdldE9uZSQoJ29iamVjdEV4dGVuc2lvbnMnKTtcbn1cblxuZnVuY3Rpb24gc2VsZWN0TG9jYWxpemF0aW9uKFxuICBjb25maWdTdGF0ZTogQ29uZmlnU3RhdGVTZXJ2aWNlLFxuKTogT2JzZXJ2YWJsZTxBcHBsaWNhdGlvbkxvY2FsaXphdGlvbkNvbmZpZ3VyYXRpb25EdG8+IHtcbiAgcmV0dXJuIGNvbmZpZ1N0YXRlLmdldE9uZSQoJ2xvY2FsaXphdGlvbicpO1xufVxuXG5mdW5jdGlvbiBzZWxlY3RFbnVtcyhcbiAgY29uZmlnU3RhdGU6IENvbmZpZ1N0YXRlU2VydmljZSxcbik6IE9ic2VydmFibGU8UmVjb3JkPHN0cmluZywgT2JqZWN0RXh0ZW5zaW9ucy5FeHRlbnNpb25FbnVtRHRvPj4ge1xuICByZXR1cm4gc2VsZWN0T2JqZWN0RXh0ZW5zaW9ucyhjb25maWdTdGF0ZSkucGlwZShcbiAgICBtYXAoKGV4dGVuc2lvbnM6IE9iamVjdEV4dGVuc2lvbnMuT2JqZWN0RXh0ZW5zaW9uc0R0bykgPT5cbiAgICAgIE9iamVjdC5rZXlzKGV4dGVuc2lvbnMuZW51bXMpLnJlZHVjZSgoYWNjLCBrZXkpID0+IHtcbiAgICAgICAgY29uc3QgeyBmaWVsZHMsIGxvY2FsaXphdGlvblJlc291cmNlIH0gPSBleHRlbnNpb25zLmVudW1zW2tleV07XG4gICAgICAgIGFjY1trZXldID0ge1xuICAgICAgICAgIGZpZWxkcyxcbiAgICAgICAgICBsb2NhbGl6YXRpb25SZXNvdXJjZSxcbiAgICAgICAgICB0cmFuc2Zvcm1lZDogY3JlYXRlRW51bShmaWVsZHMpLFxuICAgICAgICB9O1xuICAgICAgICByZXR1cm4gYWNjO1xuICAgICAgfSwge30gYXMgUmVjb3JkPHN0cmluZywgT2JqZWN0RXh0ZW5zaW9ucy5FeHRlbnNpb25FbnVtRHRvPiksXG4gICAgKSxcbiAgKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldE9iamVjdEV4dGVuc2lvbkVudGl0aWVzRnJvbVN0b3JlKFxuICBjb25maWdTdGF0ZTogQ29uZmlnU3RhdGVTZXJ2aWNlLFxuICBtb2R1bGVLZXk6IHN0cmluZyxcbikge1xuICByZXR1cm4gc2VsZWN0T2JqZWN0RXh0ZW5zaW9ucyhjb25maWdTdGF0ZSkucGlwZShcbiAgICBtYXAoZXh0ZW5zaW9ucyA9PiB7XG4gICAgICBpZiAoIWV4dGVuc2lvbnMpIHJldHVybiBudWxsO1xuXG4gICAgICByZXR1cm4gKGV4dGVuc2lvbnMubW9kdWxlc1ttb2R1bGVLZXldIHx8ICh7fSBhcyBPYmplY3RFeHRlbnNpb25zLk1vZHVsZUV4dGVuc2lvbkR0bykpXG4gICAgICAgIC5lbnRpdGllcztcbiAgICB9KSxcbiAgICBtYXAoZW50aXRpZXMgPT4gKGlzVW5kZWZpbmVkKGVudGl0aWVzKSA/IHt9IDogZW50aXRpZXMpKSxcbiAgICBmaWx0ZXI8T2JqZWN0RXh0ZW5zaW9ucy5FbnRpdHlFeHRlbnNpb25zPihCb29sZWFuKSxcbiAgICB0YWtlKDEpLFxuICApO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbWFwRW50aXRpZXNUb0NvbnRyaWJ1dG9yczxUID0gYW55PihcbiAgY29uZmlnU3RhdGU6IENvbmZpZ1N0YXRlU2VydmljZSxcbiAgcmVzb3VyY2U6IHN0cmluZyxcbikge1xuICByZXR1cm4gcGlwZShcbiAgICBzd2l0Y2hNYXAoKGVudGl0aWVzOiBhbnkpID0+XG4gICAgICB6aXAoc2VsZWN0TG9jYWxpemF0aW9uKGNvbmZpZ1N0YXRlKSwgc2VsZWN0RW51bXMoY29uZmlnU3RhdGUpKS5waXBlKFxuICAgICAgICBtYXAoKFtsb2NhbGl6YXRpb24sIGVudW1zXSkgPT4ge1xuICAgICAgICAgIGNvbnN0IGdlbmVyYXRlRGlzcGxheU5hbWUgPSBjcmVhdGVEaXNwbGF5TmFtZUxvY2FsaXphdGlvblBpcGVLZXlHZW5lcmF0b3IobG9jYWxpemF0aW9uKTtcblxuICAgICAgICAgIHJldHVybiBPYmplY3Qua2V5cyhlbnRpdGllcykucmVkdWNlKFxuICAgICAgICAgICAgKGFjYywga2V5OiBrZXlvZiBPYmplY3RFeHRlbnNpb25zLkVudGl0eUV4dGVuc2lvbnMpID0+IHtcbiAgICAgICAgICAgICAgYWNjLnByb3Bba2V5XSA9IFtdO1xuICAgICAgICAgICAgICBhY2MuY3JlYXRlRm9ybVtrZXldID0gW107XG4gICAgICAgICAgICAgIGFjYy5lZGl0Rm9ybVtrZXldID0gW107XG5cbiAgICAgICAgICAgICAgY29uc3QgZW50aXR5OiBPYmplY3RFeHRlbnNpb25zLkVudGl0eUV4dGVuc2lvbkR0byA9IGVudGl0aWVzW2tleV07XG4gICAgICAgICAgICAgIGlmICghZW50aXR5KSByZXR1cm4gYWNjO1xuXG4gICAgICAgICAgICAgIGNvbnN0IHByb3BlcnRpZXMgPSBlbnRpdHkucHJvcGVydGllcztcbiAgICAgICAgICAgICAgaWYgKCFwcm9wZXJ0aWVzKSByZXR1cm4gYWNjO1xuXG4gICAgICAgICAgICAgIGNvbnN0IG1hcFByb3BlcnRpZXNUb0NvbnRyaWJ1dG9ycyA9IGNyZWF0ZVByb3BlcnRpZXNUb0NvbnRyaWJ1dG9yc01hcHBlcjxUPihcbiAgICAgICAgICAgICAgICBnZW5lcmF0ZURpc3BsYXlOYW1lLFxuICAgICAgICAgICAgICAgIHJlc291cmNlLFxuICAgICAgICAgICAgICAgIGVudW1zLFxuICAgICAgICAgICAgICApO1xuXG4gICAgICAgICAgICAgIHJldHVybiBtYXBQcm9wZXJ0aWVzVG9Db250cmlidXRvcnMocHJvcGVydGllcywgYWNjLCBrZXkpO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgcHJvcDoge30sXG4gICAgICAgICAgICAgIGNyZWF0ZUZvcm06IHt9LFxuICAgICAgICAgICAgICBlZGl0Rm9ybToge30sXG4gICAgICAgICAgICB9IGFzIE9iamVjdEV4dGVuc2lvbnMuUHJvcENvbnRyaWJ1dG9ycyxcbiAgICAgICAgICApO1xuICAgICAgICB9KSxcbiAgICAgICksXG4gICAgKSxcbiAgICB0YWtlKDEpLFxuICApO1xufVxuXG5mdW5jdGlvbiBjcmVhdGVQcm9wZXJ0aWVzVG9Db250cmlidXRvcnNNYXBwZXI8VCA9IGFueT4oXG4gIGdlbmVyYXRlRGlzcGxheU5hbWU6IE9iamVjdEV4dGVuc2lvbnMuRGlzcGxheU5hbWVHZW5lcmF0b3JGbixcbiAgcmVzb3VyY2U6IHN0cmluZyxcbiAgZW51bXM6IFJlY29yZDxzdHJpbmcsIE9iamVjdEV4dGVuc2lvbnMuRXh0ZW5zaW9uRW51bUR0bz4sXG4pIHtcbiAgcmV0dXJuIChcbiAgICBwcm9wZXJ0aWVzOiBPYmplY3RFeHRlbnNpb25zLkVudGl0eUV4dGVuc2lvblByb3BlcnRpZXMsXG4gICAgY29udHJpYnV0b3JzOiBPYmplY3RFeHRlbnNpb25zLlByb3BDb250cmlidXRvcnM8VD4sXG4gICAga2V5OiBzdHJpbmcsXG4gICkgPT4ge1xuICAgIGNvbnN0IGlzRXh0cmEgPSB0cnVlO1xuICAgIGNvbnN0IGdlbmVyYXRlVHlwZWFoZWFkRGlzcGxheU5hbWUgPSBjcmVhdGVUeXBlYWhlYWREaXNwbGF5TmFtZUdlbmVyYXRvcihcbiAgICAgIGdlbmVyYXRlRGlzcGxheU5hbWUsXG4gICAgICBwcm9wZXJ0aWVzLFxuICAgICk7XG5cbiAgICBPYmplY3Qua2V5cyhwcm9wZXJ0aWVzKS5mb3JFYWNoKChuYW1lOiBzdHJpbmcpID0+IHtcbiAgICAgIGNvbnN0IHByb3BlcnR5ID0gcHJvcGVydGllc1tuYW1lXTtcbiAgICAgIGNvbnN0IHByb3BOYW1lID0gbmFtZTtcbiAgICAgIGNvbnN0IGxvb2t1cCA9IHByb3BlcnR5LnVpLmxvb2t1cCB8fCAoe30gYXMgRXh0ZW5zaW9uUHJvcGVydHlVaUxvb2t1cER0byk7XG4gICAgICBjb25zdCB0eXBlID0gZ2V0VHlwZWFoZWFkVHlwZShsb29rdXAsIG5hbWUpIHx8IGdldFR5cGVGcm9tUHJvcGVydHkocHJvcGVydHkpO1xuICAgICAgY29uc3QgZ2VuZXJhdGVETiA9IGhhc1R5cGVhaGVhZFRleHRTdWZmaXgobmFtZSlcbiAgICAgICAgPyBnZW5lcmF0ZVR5cGVhaGVhZERpc3BsYXlOYW1lXG4gICAgICAgIDogZ2VuZXJhdGVEaXNwbGF5TmFtZTtcbiAgICAgIGNvbnN0IGRpc3BsYXlOYW1lID0gZ2VuZXJhdGVETihwcm9wZXJ0eS5kaXNwbGF5TmFtZSwgeyBuYW1lLCByZXNvdXJjZSB9KTtcblxuICAgICAgaWYgKHByb3BlcnR5LnVpLm9uVGFibGUuaXNWaXNpYmxlKSB7XG4gICAgICAgIGNvbnN0IHNvcnRhYmxlID0gQm9vbGVhbihwcm9wZXJ0eS51aS5vblRhYmxlLmlzU29ydGFibGUpO1xuICAgICAgICBjb25zdCBjb2x1bW5XaWR0aCA9IHR5cGUgPT09IGVQcm9wVHlwZS5Cb29sZWFuID8gMTUwIDogMjUwO1xuICAgICAgICBjb25zdCB2YWx1ZVJlc29sdmVyID1cbiAgICAgICAgICB0eXBlID09PSBlUHJvcFR5cGUuRW51bVxuICAgICAgICAgICAgPyBjcmVhdGVFbnVtVmFsdWVSZXNvbHZlcihwcm9wZXJ0eS50eXBlLCBlbnVtc1twcm9wZXJ0eS50eXBlXSwgcHJvcE5hbWUpXG4gICAgICAgICAgICA6IGNyZWF0ZUV4dHJhUHJvcGVydHlWYWx1ZVJlc29sdmVyPFQ+KHByb3BOYW1lKTtcblxuICAgICAgICBjb25zdCBlbnRpdHlQcm9wID0gbmV3IEVudGl0eVByb3A8VD4oe1xuICAgICAgICAgIHR5cGUsXG4gICAgICAgICAgbmFtZTogcHJvcE5hbWUsXG4gICAgICAgICAgZGlzcGxheU5hbWUsXG4gICAgICAgICAgc29ydGFibGUsXG4gICAgICAgICAgY29sdW1uV2lkdGgsXG4gICAgICAgICAgdmFsdWVSZXNvbHZlcixcbiAgICAgICAgICBpc0V4dHJhLFxuICAgICAgICB9KTtcblxuICAgICAgICBjb25zdCBjb250cmlidXRvciA9IChwcm9wTGlzdDogRW50aXR5UHJvcExpc3Q8VD4pID0+IHByb3BMaXN0LmFkZFRhaWwoZW50aXR5UHJvcCk7XG4gICAgICAgIGNvbnRyaWJ1dG9ycy5wcm9wW2tleV0ucHVzaChjb250cmlidXRvcik7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGlzT25DcmVhdGVGb3JtID0gcHJvcGVydHkudWkub25DcmVhdGVGb3JtLmlzVmlzaWJsZTtcbiAgICAgIGNvbnN0IGlzT25FZGl0Rm9ybSA9IHByb3BlcnR5LnVpLm9uRWRpdEZvcm0uaXNWaXNpYmxlO1xuXG4gICAgICBpZiAoaXNPbkNyZWF0ZUZvcm0gfHwgaXNPbkVkaXRGb3JtKSB7XG4gICAgICAgIGNvbnN0IGRlZmF1bHRWYWx1ZSA9IHByb3BlcnR5LmRlZmF1bHRWYWx1ZTtcbiAgICAgICAgY29uc3QgdmFsaWRhdG9ycyA9ICgpID0+IGdldFZhbGlkYXRvcnNGcm9tUHJvcGVydHkocHJvcGVydHkpO1xuICAgICAgICBsZXQgb3B0aW9uczogUHJvcENhbGxiYWNrPGFueSwgT2JzZXJ2YWJsZTxBQlAuT3B0aW9uPGFueT5bXT4+IHwgdW5kZWZpbmVkO1xuICAgICAgICBpZiAodHlwZSA9PT0gZVByb3BUeXBlLkVudW0pXG4gICAgICAgICAgb3B0aW9ucyA9IGNyZWF0ZUVudW1PcHRpb25zKHByb3BOYW1lLCBlbnVtc1twcm9wZXJ0eS50eXBlIHx8ICcnXSk7XG4gICAgICAgIGVsc2UgaWYgKHR5cGUgPT09IGVQcm9wVHlwZS5UeXBlYWhlYWQpIG9wdGlvbnMgPSBjcmVhdGVUeXBlYWhlYWRPcHRpb25zKGxvb2t1cCk7XG5cbiAgICAgICAgY29uc3QgZm9ybVByb3AgPSBuZXcgRm9ybVByb3Aoe1xuICAgICAgICAgIHR5cGUsXG4gICAgICAgICAgbmFtZTogcHJvcE5hbWUsXG4gICAgICAgICAgZGlzcGxheU5hbWUsXG4gICAgICAgICAgb3B0aW9ucyxcbiAgICAgICAgICBkZWZhdWx0VmFsdWUsXG4gICAgICAgICAgdmFsaWRhdG9ycyxcbiAgICAgICAgICBpc0V4dHJhLFxuICAgICAgICB9KTtcblxuICAgICAgICBjb25zdCBmb3JtQ29udHJpYnV0b3IgPSAocHJvcExpc3Q6IEZvcm1Qcm9wTGlzdDxUPikgPT4gcHJvcExpc3QuYWRkVGFpbChmb3JtUHJvcCk7XG5cbiAgICAgICAgaWYgKGlzT25DcmVhdGVGb3JtKSBjb250cmlidXRvcnMuY3JlYXRlRm9ybVtrZXldLnB1c2goZm9ybUNvbnRyaWJ1dG9yKTtcbiAgICAgICAgaWYgKGlzT25FZGl0Rm9ybSkgY29udHJpYnV0b3JzLmVkaXRGb3JtW2tleV0ucHVzaChmb3JtQ29udHJpYnV0b3IpO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgcmV0dXJuIGNvbnRyaWJ1dG9ycztcbiAgfTtcbn1cblxuZnVuY3Rpb24gZ2V0VHlwZUZyb21Qcm9wZXJ0eShwcm9wZXJ0eTogT2JqZWN0RXh0ZW5zaW9ucy5FeHRlbnNpb25Qcm9wZXJ0eUR0byk6IGVQcm9wVHlwZSB7XG4gIHJldHVybiBwcm9wZXJ0eT8udHlwZVNpbXBsZT8ucmVwbGFjZSgvXFw/JC8sICcnKSBhcyBzdHJpbmcgYXMgZVByb3BUeXBlO1xufVxuXG5mdW5jdGlvbiBpc1VuZGVmaW5lZChvYmo6IGFueSk6IG9iaiBpcyB1bmRlZmluZWQge1xuICByZXR1cm4gdHlwZW9mIG9iaiA9PT0gJ3VuZGVmaW5lZCc7XG59XG4iXX0=
@@ -1,52 +1,52 @@
1
- import { RestService } from '@abp/ng.core';
2
- import { of } from 'rxjs';
3
- import { map } from 'rxjs/operators';
4
- const TYPEAHEAD_TEXT_SUFFIX = '_Text';
5
- const TYPEAHEAD_TEXT_SUFFIX_REGEX = /_Text$/;
6
- export function createTypeaheadOptions(lookup) {
7
- return (data, searchText) => searchText && data
8
- ? data
9
- .getInjected(RestService)
10
- .request({
11
- method: 'GET',
12
- url: lookup.url || '',
13
- params: {
14
- [lookup.filterParamName || '']: searchText,
15
- },
16
- }, { apiName: 'Default' })
17
- .pipe(map((response) => {
18
- const list = response[lookup.resultListPropertyName || ''];
19
- const mapToOption = (item) => ({
20
- key: item[lookup.displayPropertyName || ''],
21
- value: item[lookup.valuePropertyName || ''],
22
- });
23
- return list.map(mapToOption);
24
- }))
25
- : of([]);
26
- }
27
- export function getTypeaheadType(lookup, name) {
28
- return Boolean(lookup.url)
29
- ? "typeahead" /* Typeahead */
30
- : name.endsWith(TYPEAHEAD_TEXT_SUFFIX)
31
- ? "hidden" /* Hidden */
32
- : undefined;
33
- }
34
- export function createTypeaheadDisplayNameGenerator(displayNameGeneratorFn, properties) {
35
- return (displayName, fallback) => {
36
- const name = removeTypeaheadTextSuffix(fallback.name || '');
37
- return displayNameGeneratorFn(displayName || properties[name].displayName, {
38
- name,
39
- resource: fallback.resource,
40
- });
41
- };
42
- }
43
- export function addTypeaheadTextSuffix(name) {
44
- return name + TYPEAHEAD_TEXT_SUFFIX;
45
- }
46
- export function hasTypeaheadTextSuffix(name) {
47
- return TYPEAHEAD_TEXT_SUFFIX_REGEX.test(name);
48
- }
49
- export function removeTypeaheadTextSuffix(name) {
50
- return name.replace(TYPEAHEAD_TEXT_SUFFIX_REGEX, '');
51
- }
52
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZWFoZWFkLnV0aWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy90aGVtZS1zaGFyZWQvZXh0ZW5zaW9ucy9zcmMvbGliL3V0aWxzL3R5cGVhaGVhZC51dGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBcUMsV0FBVyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzlFLE9BQU8sRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdEMsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBS3JDLE1BQU0scUJBQXFCLEdBQUcsT0FBTyxDQUFDO0FBQ3RDLE1BQU0sMkJBQTJCLEdBQUcsUUFBUSxDQUFDO0FBRTdDLE1BQU0sVUFBVSxzQkFBc0IsQ0FDcEMsTUFBb0M7SUFFcEMsT0FBTyxDQUFDLElBQUksRUFBRSxVQUFVLEVBQUUsRUFBRSxDQUMxQixVQUFVLElBQUksSUFBSTtRQUNoQixDQUFDLENBQUMsSUFBSTthQUNELFdBQVcsQ0FBQyxXQUFXLENBQUM7YUFDeEIsT0FBTyxDQUNOO1lBQ0UsTUFBTSxFQUFFLEtBQUs7WUFDYixHQUFHLEVBQUUsTUFBTSxDQUFDLEdBQUcsSUFBSSxFQUFFO1lBQ3JCLE1BQU0sRUFBRTtnQkFDTixDQUFDLE1BQU0sQ0FBQyxlQUFlLElBQUksRUFBRSxDQUFDLEVBQUUsVUFBVTthQUMzQztTQUNGLEVBQ0QsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLENBQ3ZCO2FBQ0EsSUFBSSxDQUNILEdBQUcsQ0FBQyxDQUFDLFFBQWEsRUFBRSxFQUFFO1lBQ3BCLE1BQU0sSUFBSSxHQUFHLFFBQVEsQ0FBQyxNQUFNLENBQUMsc0JBQXNCLElBQUksRUFBRSxDQUFDLENBQUM7WUFDM0QsTUFBTSxXQUFXLEdBQUcsQ0FBQyxJQUFTLEVBQUUsRUFBRSxDQUFDLENBQUM7Z0JBQ2xDLEdBQUcsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLG1CQUFtQixJQUFJLEVBQUUsQ0FBQztnQkFDM0MsS0FBSyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsaUJBQWlCLElBQUksRUFBRSxDQUFDO2FBQzVDLENBQUMsQ0FBQztZQUNILE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUMvQixDQUFDLENBQUMsQ0FDSDtRQUNMLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7QUFDZixDQUFDO0FBRUQsTUFBTSxVQUFVLGdCQUFnQixDQUFDLE1BQW9DLEVBQUUsSUFBWTtJQUNqRixPQUFPLE9BQU8sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDO1FBQ3hCLENBQUM7UUFDRCxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxxQkFBcUIsQ0FBQztZQUN0QyxDQUFDO1lBQ0QsQ0FBQyxDQUFDLFNBQVMsQ0FBQztBQUNoQixDQUFDO0FBRUQsTUFBTSxVQUFVLG1DQUFtQyxDQUNqRCxzQkFBK0QsRUFDL0QsVUFBc0Q7SUFFdEQsT0FBTyxDQUFDLFdBQVcsRUFBRSxRQUFRLEVBQUUsRUFBRTtRQUMvQixNQUFNLElBQUksR0FBRyx5QkFBeUIsQ0FBQyxRQUFRLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQzVELE9BQU8sc0JBQXNCLENBQUMsV0FBVyxJQUFJLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxXQUFXLEVBQUU7WUFDekUsSUFBSTtZQUNKLFFBQVEsRUFBRSxRQUFRLENBQUMsUUFBUTtTQUM1QixDQUFDLENBQUM7SUFDTCxDQUFDLENBQUM7QUFDSixDQUFDO0FBRUQsTUFBTSxVQUFVLHNCQUFzQixDQUFDLElBQVk7SUFDakQsT0FBTyxJQUFJLEdBQUcscUJBQXFCLENBQUM7QUFDdEMsQ0FBQztBQUVELE1BQU0sVUFBVSxzQkFBc0IsQ0FBQyxJQUFZO0lBQ2pELE9BQU8sMkJBQTJCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0FBQ2hELENBQUM7QUFFRCxNQUFNLFVBQVUseUJBQXlCLENBQUMsSUFBWTtJQUNwRCxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsMkJBQTJCLEVBQUUsRUFBRSxDQUFDLENBQUM7QUFDdkQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFCUCwgRXh0ZW5zaW9uUHJvcGVydHlVaUxvb2t1cER0bywgUmVzdFNlcnZpY2UgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IGVQcm9wVHlwZSB9IGZyb20gJy4uL2VudW1zL3Byb3BzLmVudW0nO1xyXG5pbXBvcnQgeyBPYmplY3RFeHRlbnNpb25zIH0gZnJvbSAnLi4vbW9kZWxzL29iamVjdC1leHRlbnNpb25zJztcclxuaW1wb3J0IHsgUHJvcENhbGxiYWNrIH0gZnJvbSAnLi4vbW9kZWxzL3Byb3BzJztcclxuXHJcbmNvbnN0IFRZUEVBSEVBRF9URVhUX1NVRkZJWCA9ICdfVGV4dCc7XHJcbmNvbnN0IFRZUEVBSEVBRF9URVhUX1NVRkZJWF9SRUdFWCA9IC9fVGV4dCQvO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZVR5cGVhaGVhZE9wdGlvbnMoXHJcbiAgbG9va3VwOiBFeHRlbnNpb25Qcm9wZXJ0eVVpTG9va3VwRHRvLFxyXG4pOiBQcm9wQ2FsbGJhY2s8YW55LCBPYnNlcnZhYmxlPEFCUC5PcHRpb248YW55PltdPj4ge1xyXG4gIHJldHVybiAoZGF0YSwgc2VhcmNoVGV4dCkgPT5cclxuICAgIHNlYXJjaFRleHQgJiYgZGF0YVxyXG4gICAgICA/IGRhdGFcclxuICAgICAgICAgIC5nZXRJbmplY3RlZChSZXN0U2VydmljZSlcclxuICAgICAgICAgIC5yZXF1ZXN0KFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgbWV0aG9kOiAnR0VUJyxcclxuICAgICAgICAgICAgICB1cmw6IGxvb2t1cC51cmwgfHwgJycsXHJcbiAgICAgICAgICAgICAgcGFyYW1zOiB7XHJcbiAgICAgICAgICAgICAgICBbbG9va3VwLmZpbHRlclBhcmFtTmFtZSB8fCAnJ106IHNlYXJjaFRleHQsXHJcbiAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgeyBhcGlOYW1lOiAnRGVmYXVsdCcgfSxcclxuICAgICAgICAgIClcclxuICAgICAgICAgIC5waXBlKFxyXG4gICAgICAgICAgICBtYXAoKHJlc3BvbnNlOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgICBjb25zdCBsaXN0ID0gcmVzcG9uc2VbbG9va3VwLnJlc3VsdExpc3RQcm9wZXJ0eU5hbWUgfHwgJyddO1xyXG4gICAgICAgICAgICAgIGNvbnN0IG1hcFRvT3B0aW9uID0gKGl0ZW06IGFueSkgPT4gKHtcclxuICAgICAgICAgICAgICAgIGtleTogaXRlbVtsb29rdXAuZGlzcGxheVByb3BlcnR5TmFtZSB8fCAnJ10sXHJcbiAgICAgICAgICAgICAgICB2YWx1ZTogaXRlbVtsb29rdXAudmFsdWVQcm9wZXJ0eU5hbWUgfHwgJyddLFxyXG4gICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgIHJldHVybiBsaXN0Lm1hcChtYXBUb09wdGlvbik7XHJcbiAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICAgKVxyXG4gICAgICA6IG9mKFtdKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGdldFR5cGVhaGVhZFR5cGUobG9va3VwOiBFeHRlbnNpb25Qcm9wZXJ0eVVpTG9va3VwRHRvLCBuYW1lOiBzdHJpbmcpIHtcclxuICByZXR1cm4gQm9vbGVhbihsb29rdXAudXJsKVxyXG4gICAgPyBlUHJvcFR5cGUuVHlwZWFoZWFkXHJcbiAgICA6IG5hbWUuZW5kc1dpdGgoVFlQRUFIRUFEX1RFWFRfU1VGRklYKVxyXG4gICAgPyBlUHJvcFR5cGUuSGlkZGVuXHJcbiAgICA6IHVuZGVmaW5lZDtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZVR5cGVhaGVhZERpc3BsYXlOYW1lR2VuZXJhdG9yKFxyXG4gIGRpc3BsYXlOYW1lR2VuZXJhdG9yRm46IE9iamVjdEV4dGVuc2lvbnMuRGlzcGxheU5hbWVHZW5lcmF0b3JGbixcclxuICBwcm9wZXJ0aWVzOiBPYmplY3RFeHRlbnNpb25zLkVudGl0eUV4dGVuc2lvblByb3BlcnRpZXMsXHJcbik6IE9iamVjdEV4dGVuc2lvbnMuRGlzcGxheU5hbWVHZW5lcmF0b3JGbiB7XHJcbiAgcmV0dXJuIChkaXNwbGF5TmFtZSwgZmFsbGJhY2spID0+IHtcclxuICAgIGNvbnN0IG5hbWUgPSByZW1vdmVUeXBlYWhlYWRUZXh0U3VmZml4KGZhbGxiYWNrLm5hbWUgfHwgJycpO1xyXG4gICAgcmV0dXJuIGRpc3BsYXlOYW1lR2VuZXJhdG9yRm4oZGlzcGxheU5hbWUgfHwgcHJvcGVydGllc1tuYW1lXS5kaXNwbGF5TmFtZSwge1xyXG4gICAgICBuYW1lLFxyXG4gICAgICByZXNvdXJjZTogZmFsbGJhY2sucmVzb3VyY2UsXHJcbiAgICB9KTtcclxuICB9O1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gYWRkVHlwZWFoZWFkVGV4dFN1ZmZpeChuYW1lOiBzdHJpbmcpIHtcclxuICByZXR1cm4gbmFtZSArIFRZUEVBSEVBRF9URVhUX1NVRkZJWDtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGhhc1R5cGVhaGVhZFRleHRTdWZmaXgobmFtZTogc3RyaW5nKSB7XHJcbiAgcmV0dXJuIFRZUEVBSEVBRF9URVhUX1NVRkZJWF9SRUdFWC50ZXN0KG5hbWUpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gcmVtb3ZlVHlwZWFoZWFkVGV4dFN1ZmZpeChuYW1lOiBzdHJpbmcpIHtcclxuICByZXR1cm4gbmFtZS5yZXBsYWNlKFRZUEVBSEVBRF9URVhUX1NVRkZJWF9SRUdFWCwgJycpO1xyXG59XHJcbiJdfQ==
1
+ import { RestService } from '@abp/ng.core';
2
+ import { of } from 'rxjs';
3
+ import { map } from 'rxjs/operators';
4
+ const TYPEAHEAD_TEXT_SUFFIX = '_Text';
5
+ const TYPEAHEAD_TEXT_SUFFIX_REGEX = /_Text$/;
6
+ export function createTypeaheadOptions(lookup) {
7
+ return (data, searchText) => searchText && data
8
+ ? data
9
+ .getInjected(RestService)
10
+ .request({
11
+ method: 'GET',
12
+ url: lookup.url || '',
13
+ params: {
14
+ [lookup.filterParamName || '']: searchText,
15
+ },
16
+ }, { apiName: 'Default' })
17
+ .pipe(map((response) => {
18
+ const list = response[lookup.resultListPropertyName || ''];
19
+ const mapToOption = (item) => ({
20
+ key: item[lookup.displayPropertyName || ''],
21
+ value: item[lookup.valuePropertyName || ''],
22
+ });
23
+ return list.map(mapToOption);
24
+ }))
25
+ : of([]);
26
+ }
27
+ export function getTypeaheadType(lookup, name) {
28
+ return Boolean(lookup.url)
29
+ ? "typeahead" /* Typeahead */
30
+ : name.endsWith(TYPEAHEAD_TEXT_SUFFIX)
31
+ ? "hidden" /* Hidden */
32
+ : undefined;
33
+ }
34
+ export function createTypeaheadDisplayNameGenerator(displayNameGeneratorFn, properties) {
35
+ return (displayName, fallback) => {
36
+ const name = removeTypeaheadTextSuffix(fallback.name || '');
37
+ return displayNameGeneratorFn(displayName || properties[name].displayName, {
38
+ name,
39
+ resource: fallback.resource,
40
+ });
41
+ };
42
+ }
43
+ export function addTypeaheadTextSuffix(name) {
44
+ return name + TYPEAHEAD_TEXT_SUFFIX;
45
+ }
46
+ export function hasTypeaheadTextSuffix(name) {
47
+ return TYPEAHEAD_TEXT_SUFFIX_REGEX.test(name);
48
+ }
49
+ export function removeTypeaheadTextSuffix(name) {
50
+ return name.replace(TYPEAHEAD_TEXT_SUFFIX_REGEX, '');
51
+ }
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZWFoZWFkLnV0aWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy90aGVtZS1zaGFyZWQvZXh0ZW5zaW9ucy9zcmMvbGliL3V0aWxzL3R5cGVhaGVhZC51dGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBcUMsV0FBVyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzlFLE9BQU8sRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdEMsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBS3JDLE1BQU0scUJBQXFCLEdBQUcsT0FBTyxDQUFDO0FBQ3RDLE1BQU0sMkJBQTJCLEdBQUcsUUFBUSxDQUFDO0FBRTdDLE1BQU0sVUFBVSxzQkFBc0IsQ0FDcEMsTUFBb0M7SUFFcEMsT0FBTyxDQUFDLElBQUksRUFBRSxVQUFVLEVBQUUsRUFBRSxDQUMxQixVQUFVLElBQUksSUFBSTtRQUNoQixDQUFDLENBQUMsSUFBSTthQUNELFdBQVcsQ0FBQyxXQUFXLENBQUM7YUFDeEIsT0FBTyxDQUNOO1lBQ0UsTUFBTSxFQUFFLEtBQUs7WUFDYixHQUFHLEVBQUUsTUFBTSxDQUFDLEdBQUcsSUFBSSxFQUFFO1lBQ3JCLE1BQU0sRUFBRTtnQkFDTixDQUFDLE1BQU0sQ0FBQyxlQUFlLElBQUksRUFBRSxDQUFDLEVBQUUsVUFBVTthQUMzQztTQUNGLEVBQ0QsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLENBQ3ZCO2FBQ0EsSUFBSSxDQUNILEdBQUcsQ0FBQyxDQUFDLFFBQWEsRUFBRSxFQUFFO1lBQ3BCLE1BQU0sSUFBSSxHQUFHLFFBQVEsQ0FBQyxNQUFNLENBQUMsc0JBQXNCLElBQUksRUFBRSxDQUFDLENBQUM7WUFDM0QsTUFBTSxXQUFXLEdBQUcsQ0FBQyxJQUFTLEVBQUUsRUFBRSxDQUFDLENBQUM7Z0JBQ2xDLEdBQUcsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLG1CQUFtQixJQUFJLEVBQUUsQ0FBQztnQkFDM0MsS0FBSyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsaUJBQWlCLElBQUksRUFBRSxDQUFDO2FBQzVDLENBQUMsQ0FBQztZQUNILE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUMvQixDQUFDLENBQUMsQ0FDSDtRQUNMLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7QUFDZixDQUFDO0FBRUQsTUFBTSxVQUFVLGdCQUFnQixDQUFDLE1BQW9DLEVBQUUsSUFBWTtJQUNqRixPQUFPLE9BQU8sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDO1FBQ3hCLENBQUM7UUFDRCxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxxQkFBcUIsQ0FBQztZQUN0QyxDQUFDO1lBQ0QsQ0FBQyxDQUFDLFNBQVMsQ0FBQztBQUNoQixDQUFDO0FBRUQsTUFBTSxVQUFVLG1DQUFtQyxDQUNqRCxzQkFBK0QsRUFDL0QsVUFBc0Q7SUFFdEQsT0FBTyxDQUFDLFdBQVcsRUFBRSxRQUFRLEVBQUUsRUFBRTtRQUMvQixNQUFNLElBQUksR0FBRyx5QkFBeUIsQ0FBQyxRQUFRLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQzVELE9BQU8sc0JBQXNCLENBQUMsV0FBVyxJQUFJLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxXQUFXLEVBQUU7WUFDekUsSUFBSTtZQUNKLFFBQVEsRUFBRSxRQUFRLENBQUMsUUFBUTtTQUM1QixDQUFDLENBQUM7SUFDTCxDQUFDLENBQUM7QUFDSixDQUFDO0FBRUQsTUFBTSxVQUFVLHNCQUFzQixDQUFDLElBQVk7SUFDakQsT0FBTyxJQUFJLEdBQUcscUJBQXFCLENBQUM7QUFDdEMsQ0FBQztBQUVELE1BQU0sVUFBVSxzQkFBc0IsQ0FBQyxJQUFZO0lBQ2pELE9BQU8sMkJBQTJCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0FBQ2hELENBQUM7QUFFRCxNQUFNLFVBQVUseUJBQXlCLENBQUMsSUFBWTtJQUNwRCxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsMkJBQTJCLEVBQUUsRUFBRSxDQUFDLENBQUM7QUFDdkQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFCUCwgRXh0ZW5zaW9uUHJvcGVydHlVaUxvb2t1cER0bywgUmVzdFNlcnZpY2UgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IGVQcm9wVHlwZSB9IGZyb20gJy4uL2VudW1zL3Byb3BzLmVudW0nO1xuaW1wb3J0IHsgT2JqZWN0RXh0ZW5zaW9ucyB9IGZyb20gJy4uL21vZGVscy9vYmplY3QtZXh0ZW5zaW9ucyc7XG5pbXBvcnQgeyBQcm9wQ2FsbGJhY2sgfSBmcm9tICcuLi9tb2RlbHMvcHJvcHMnO1xuXG5jb25zdCBUWVBFQUhFQURfVEVYVF9TVUZGSVggPSAnX1RleHQnO1xuY29uc3QgVFlQRUFIRUFEX1RFWFRfU1VGRklYX1JFR0VYID0gL19UZXh0JC87XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVUeXBlYWhlYWRPcHRpb25zKFxuICBsb29rdXA6IEV4dGVuc2lvblByb3BlcnR5VWlMb29rdXBEdG8sXG4pOiBQcm9wQ2FsbGJhY2s8YW55LCBPYnNlcnZhYmxlPEFCUC5PcHRpb248YW55PltdPj4ge1xuICByZXR1cm4gKGRhdGEsIHNlYXJjaFRleHQpID0+XG4gICAgc2VhcmNoVGV4dCAmJiBkYXRhXG4gICAgICA/IGRhdGFcbiAgICAgICAgICAuZ2V0SW5qZWN0ZWQoUmVzdFNlcnZpY2UpXG4gICAgICAgICAgLnJlcXVlc3QoXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG1ldGhvZDogJ0dFVCcsXG4gICAgICAgICAgICAgIHVybDogbG9va3VwLnVybCB8fCAnJyxcbiAgICAgICAgICAgICAgcGFyYW1zOiB7XG4gICAgICAgICAgICAgICAgW2xvb2t1cC5maWx0ZXJQYXJhbU5hbWUgfHwgJyddOiBzZWFyY2hUZXh0LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHsgYXBpTmFtZTogJ0RlZmF1bHQnIH0sXG4gICAgICAgICAgKVxuICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgbWFwKChyZXNwb25zZTogYW55KSA9PiB7XG4gICAgICAgICAgICAgIGNvbnN0IGxpc3QgPSByZXNwb25zZVtsb29rdXAucmVzdWx0TGlzdFByb3BlcnR5TmFtZSB8fCAnJ107XG4gICAgICAgICAgICAgIGNvbnN0IG1hcFRvT3B0aW9uID0gKGl0ZW06IGFueSkgPT4gKHtcbiAgICAgICAgICAgICAgICBrZXk6IGl0ZW1bbG9va3VwLmRpc3BsYXlQcm9wZXJ0eU5hbWUgfHwgJyddLFxuICAgICAgICAgICAgICAgIHZhbHVlOiBpdGVtW2xvb2t1cC52YWx1ZVByb3BlcnR5TmFtZSB8fCAnJ10sXG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICByZXR1cm4gbGlzdC5tYXAobWFwVG9PcHRpb24pO1xuICAgICAgICAgICAgfSksXG4gICAgICAgICAgKVxuICAgICAgOiBvZihbXSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRUeXBlYWhlYWRUeXBlKGxvb2t1cDogRXh0ZW5zaW9uUHJvcGVydHlVaUxvb2t1cER0bywgbmFtZTogc3RyaW5nKSB7XG4gIHJldHVybiBCb29sZWFuKGxvb2t1cC51cmwpXG4gICAgPyBlUHJvcFR5cGUuVHlwZWFoZWFkXG4gICAgOiBuYW1lLmVuZHNXaXRoKFRZUEVBSEVBRF9URVhUX1NVRkZJWClcbiAgICA/IGVQcm9wVHlwZS5IaWRkZW5cbiAgICA6IHVuZGVmaW5lZDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZVR5cGVhaGVhZERpc3BsYXlOYW1lR2VuZXJhdG9yKFxuICBkaXNwbGF5TmFtZUdlbmVyYXRvckZuOiBPYmplY3RFeHRlbnNpb25zLkRpc3BsYXlOYW1lR2VuZXJhdG9yRm4sXG4gIHByb3BlcnRpZXM6IE9iamVjdEV4dGVuc2lvbnMuRW50aXR5RXh0ZW5zaW9uUHJvcGVydGllcyxcbik6IE9iamVjdEV4dGVuc2lvbnMuRGlzcGxheU5hbWVHZW5lcmF0b3JGbiB7XG4gIHJldHVybiAoZGlzcGxheU5hbWUsIGZhbGxiYWNrKSA9PiB7XG4gICAgY29uc3QgbmFtZSA9IHJlbW92ZVR5cGVhaGVhZFRleHRTdWZmaXgoZmFsbGJhY2submFtZSB8fCAnJyk7XG4gICAgcmV0dXJuIGRpc3BsYXlOYW1lR2VuZXJhdG9yRm4oZGlzcGxheU5hbWUgfHwgcHJvcGVydGllc1tuYW1lXS5kaXNwbGF5TmFtZSwge1xuICAgICAgbmFtZSxcbiAgICAgIHJlc291cmNlOiBmYWxsYmFjay5yZXNvdXJjZSxcbiAgICB9KTtcbiAgfTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGFkZFR5cGVhaGVhZFRleHRTdWZmaXgobmFtZTogc3RyaW5nKSB7XG4gIHJldHVybiBuYW1lICsgVFlQRUFIRUFEX1RFWFRfU1VGRklYO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaGFzVHlwZWFoZWFkVGV4dFN1ZmZpeChuYW1lOiBzdHJpbmcpIHtcbiAgcmV0dXJuIFRZUEVBSEVBRF9URVhUX1NVRkZJWF9SRUdFWC50ZXN0KG5hbWUpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcmVtb3ZlVHlwZWFoZWFkVGV4dFN1ZmZpeChuYW1lOiBzdHJpbmcpIHtcbiAgcmV0dXJuIG5hbWUucmVwbGFjZShUWVBFQUhFQURfVEVYVF9TVUZGSVhfUkVHRVgsICcnKTtcbn1cbiJdfQ==
@@ -1,11 +1,11 @@
1
- import { AbpValidators } from '@abp/ng.core';
2
- export function getValidatorsFromProperty(property) {
3
- const validators = [];
4
- property.attributes.forEach(attr => {
5
- if (attr.typeSimple && attr.typeSimple in AbpValidators) {
6
- validators.push(AbpValidators[attr.typeSimple](attr.config));
7
- }
8
- });
9
- return validators;
10
- }
11
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGlvbi51dGlsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvdGhlbWUtc2hhcmVkL2V4dGVuc2lvbnMvc3JjL2xpYi91dGlscy92YWxpZGF0aW9uLnV0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUk3QyxNQUFNLFVBQVUseUJBQXlCLENBQ3ZDLFFBQStDO0lBRS9DLE1BQU0sVUFBVSxHQUFrQixFQUFFLENBQUM7SUFFckMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUU7UUFDakMsSUFBSSxJQUFJLENBQUMsVUFBVSxJQUFJLElBQUksQ0FBQyxVQUFVLElBQUksYUFBYSxFQUFFO1lBQ3ZELFVBQVUsQ0FBQyxJQUFJLENBQUUsYUFBcUIsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7U0FDdkU7SUFDSCxDQUFDLENBQUMsQ0FBQztJQUVILE9BQU8sVUFBVSxDQUFDO0FBQ3BCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBYnBWYWxpZGF0b3JzIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcclxuaW1wb3J0IHsgVmFsaWRhdG9yRm4gfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IE9iamVjdEV4dGVuc2lvbnMgfSBmcm9tICcuLi9tb2RlbHMvb2JqZWN0LWV4dGVuc2lvbnMnO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGdldFZhbGlkYXRvcnNGcm9tUHJvcGVydHkoXHJcbiAgcHJvcGVydHk6IE9iamVjdEV4dGVuc2lvbnMuRXh0ZW5zaW9uUHJvcGVydHlEdG8sXHJcbik6IFZhbGlkYXRvckZuW10ge1xyXG4gIGNvbnN0IHZhbGlkYXRvcnM6IFZhbGlkYXRvckZuW10gPSBbXTtcclxuXHJcbiAgcHJvcGVydHkuYXR0cmlidXRlcy5mb3JFYWNoKGF0dHIgPT4ge1xyXG4gICAgaWYgKGF0dHIudHlwZVNpbXBsZSAmJiBhdHRyLnR5cGVTaW1wbGUgaW4gQWJwVmFsaWRhdG9ycykge1xyXG4gICAgICB2YWxpZGF0b3JzLnB1c2goKEFicFZhbGlkYXRvcnMgYXMgYW55KVthdHRyLnR5cGVTaW1wbGVdKGF0dHIuY29uZmlnKSk7XHJcbiAgICB9XHJcbiAgfSk7XHJcblxyXG4gIHJldHVybiB2YWxpZGF0b3JzO1xyXG59XHJcbiJdfQ==
1
+ import { AbpValidators } from '@abp/ng.core';
2
+ export function getValidatorsFromProperty(property) {
3
+ const validators = [];
4
+ property.attributes.forEach(attr => {
5
+ if (attr.typeSimple && attr.typeSimple in AbpValidators) {
6
+ validators.push(AbpValidators[attr.typeSimple](attr.config));
7
+ }
8
+ });
9
+ return validators;
10
+ }
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGlvbi51dGlsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvdGhlbWUtc2hhcmVkL2V4dGVuc2lvbnMvc3JjL2xpYi91dGlscy92YWxpZGF0aW9uLnV0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUk3QyxNQUFNLFVBQVUseUJBQXlCLENBQ3ZDLFFBQStDO0lBRS9DLE1BQU0sVUFBVSxHQUFrQixFQUFFLENBQUM7SUFFckMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUU7UUFDakMsSUFBSSxJQUFJLENBQUMsVUFBVSxJQUFJLElBQUksQ0FBQyxVQUFVLElBQUksYUFBYSxFQUFFO1lBQ3ZELFVBQVUsQ0FBQyxJQUFJLENBQUUsYUFBcUIsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7U0FDdkU7SUFDSCxDQUFDLENBQUMsQ0FBQztJQUVILE9BQU8sVUFBVSxDQUFDO0FBQ3BCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBYnBWYWxpZGF0b3JzIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcbmltcG9ydCB7IFZhbGlkYXRvckZuIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgT2JqZWN0RXh0ZW5zaW9ucyB9IGZyb20gJy4uL21vZGVscy9vYmplY3QtZXh0ZW5zaW9ucyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRWYWxpZGF0b3JzRnJvbVByb3BlcnR5KFxuICBwcm9wZXJ0eTogT2JqZWN0RXh0ZW5zaW9ucy5FeHRlbnNpb25Qcm9wZXJ0eUR0byxcbik6IFZhbGlkYXRvckZuW10ge1xuICBjb25zdCB2YWxpZGF0b3JzOiBWYWxpZGF0b3JGbltdID0gW107XG5cbiAgcHJvcGVydHkuYXR0cmlidXRlcy5mb3JFYWNoKGF0dHIgPT4ge1xuICAgIGlmIChhdHRyLnR5cGVTaW1wbGUgJiYgYXR0ci50eXBlU2ltcGxlIGluIEFicFZhbGlkYXRvcnMpIHtcbiAgICAgIHZhbGlkYXRvcnMucHVzaCgoQWJwVmFsaWRhdG9ycyBhcyBhbnkpW2F0dHIudHlwZVNpbXBsZV0oYXR0ci5jb25maWcpKTtcbiAgICB9XG4gIH0pO1xuXG4gIHJldHVybiB2YWxpZGF0b3JzO1xufVxuIl19
@@ -1,28 +1,28 @@
1
- export * from './lib/adapters/date-time.adapter';
2
- export * from './lib/adapters/date.adapter';
3
- export * from './lib/adapters/time.adapter';
4
- export * from './lib/components/date-time-picker/date-time-picker.component';
5
- export * from './lib/components/extensible-form/extensible-form-prop.component';
6
- export * from './lib/components/extensible-form/extensible-form.component';
7
- export * from './lib/components/extensible-table/extensible-table.component';
8
- export * from './lib/components/grid-actions/grid-actions.component';
9
- export * from './lib/components/page-toolbar/page-toolbar.component';
10
- export * from './lib/constants/extra-properties';
11
- export * from './lib/directives/disabled.directive';
12
- export * from './lib/directives/prop-data.directive';
13
- export * from './lib/enums/props.enum';
14
- export { ActionList, } from './lib/models/actions';
15
- export { EntityAction, EntityActionList, EntityActions, EntityActionsFactory, } from './lib/models/entity-actions';
16
- export { EntityProp, EntityPropList, EntityProps, EntityPropsFactory, } from './lib/models/entity-props';
17
- export { CreateFormPropsFactory, EditFormPropsFactory, FormProp, FormPropData, FormPropList, FormProps, } from './lib/models/form-props';
18
- export * from './lib/models/object-extensions';
19
- export { PropList, } from './lib/models/props';
20
- export { ToolbarAction, ToolbarActionList, ToolbarActions, ToolbarActionsFactory, ToolbarComponent, } from './lib/models/toolbar-actions';
21
- export * from './lib/services/extensions.service';
22
- export * from './lib/tokens/extensions.token';
23
- export * from './lib/ui-extensions.module';
24
- export * from './lib/utils/actions.util';
25
- export * from './lib/utils/form-props.util';
26
- export * from './lib/utils/props.util';
27
- export * from './lib/utils/state.util';
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3RoZW1lLXNoYXJlZC9leHRlbnNpb25zL3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsOERBQThELENBQUM7QUFDN0UsY0FBYyxpRUFBaUUsQ0FBQztBQUNoRixjQUFjLDREQUE0RCxDQUFDO0FBQzNFLGNBQWMsOERBQThELENBQUM7QUFDN0UsY0FBYyxzREFBc0QsQ0FBQztBQUNyRSxjQUFjLHNEQUFzRCxDQUFDO0FBQ3JFLGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsT0FBTyxFQUVMLFVBQVUsR0FHWCxNQUFNLHNCQUFzQixDQUFDO0FBQzlCLE9BQU8sRUFDTCxZQUFZLEVBRVosZ0JBQWdCLEVBRWhCLGFBQWEsRUFDYixvQkFBb0IsR0FDckIsTUFBTSw2QkFBNkIsQ0FBQztBQUNyQyxPQUFPLEVBQ0wsVUFBVSxFQUVWLGNBQWMsRUFFZCxXQUFXLEVBQ1gsa0JBQWtCLEdBQ25CLE1BQU0sMkJBQTJCLENBQUM7QUFDbkMsT0FBTyxFQUVMLHNCQUFzQixFQUV0QixvQkFBb0IsRUFDcEIsUUFBUSxFQUNSLFlBQVksRUFDWixZQUFZLEVBRVosU0FBUyxHQUNWLE1BQU0seUJBQXlCLENBQUM7QUFDakMsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxPQUFPLEVBRUwsUUFBUSxHQUdULE1BQU0sb0JBQW9CLENBQUM7QUFDNUIsT0FBTyxFQUNMLGFBQWEsRUFFYixpQkFBaUIsRUFFakIsY0FBYyxFQUNkLHFCQUFxQixFQUNyQixnQkFBZ0IsR0FFakIsTUFBTSw4QkFBOEIsQ0FBQztBQUN0QyxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLHdCQUF3QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9saWIvYWRhcHRlcnMvZGF0ZS10aW1lLmFkYXB0ZXInO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hZGFwdGVycy9kYXRlLmFkYXB0ZXInO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hZGFwdGVycy90aW1lLmFkYXB0ZXInO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2RhdGUtdGltZS1waWNrZXIvZGF0ZS10aW1lLXBpY2tlci5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2V4dGVuc2libGUtZm9ybS9leHRlbnNpYmxlLWZvcm0tcHJvcC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2V4dGVuc2libGUtZm9ybS9leHRlbnNpYmxlLWZvcm0uY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9leHRlbnNpYmxlLXRhYmxlL2V4dGVuc2libGUtdGFibGUuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9ncmlkLWFjdGlvbnMvZ3JpZC1hY3Rpb25zLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvcGFnZS10b29sYmFyL3BhZ2UtdG9vbGJhci5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb25zdGFudHMvZXh0cmEtcHJvcGVydGllcyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvZGlzYWJsZWQuZGlyZWN0aXZlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlyZWN0aXZlcy9wcm9wLWRhdGEuZGlyZWN0aXZlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvZW51bXMvcHJvcHMuZW51bSc7XHJcbmV4cG9ydCB7XHJcbiAgQWN0aW9uQ2FsbGJhY2ssXHJcbiAgQWN0aW9uTGlzdCxcclxuICBBY3Rpb25QcmVkaWNhdGUsXHJcbiAgUmVhZG9ubHlBY3Rpb25EYXRhIGFzIEFjdGlvbkRhdGEsXHJcbn0gZnJvbSAnLi9saWIvbW9kZWxzL2FjdGlvbnMnO1xyXG5leHBvcnQge1xyXG4gIEVudGl0eUFjdGlvbixcclxuICBFbnRpdHlBY3Rpb25Db250cmlidXRvckNhbGxiYWNrLFxyXG4gIEVudGl0eUFjdGlvbkxpc3QsXHJcbiAgRW50aXR5QWN0aW9uT3B0aW9ucyxcclxuICBFbnRpdHlBY3Rpb25zLFxyXG4gIEVudGl0eUFjdGlvbnNGYWN0b3J5LFxyXG59IGZyb20gJy4vbGliL21vZGVscy9lbnRpdHktYWN0aW9ucyc7XHJcbmV4cG9ydCB7XHJcbiAgRW50aXR5UHJvcCxcclxuICBFbnRpdHlQcm9wQ29udHJpYnV0b3JDYWxsYmFjayxcclxuICBFbnRpdHlQcm9wTGlzdCxcclxuICBFbnRpdHlQcm9wT3B0aW9ucyxcclxuICBFbnRpdHlQcm9wcyxcclxuICBFbnRpdHlQcm9wc0ZhY3RvcnksXHJcbn0gZnJvbSAnLi9saWIvbW9kZWxzL2VudGl0eS1wcm9wcyc7XHJcbmV4cG9ydCB7XHJcbiAgQ3JlYXRlRm9ybVByb3BDb250cmlidXRvckNhbGxiYWNrLFxyXG4gIENyZWF0ZUZvcm1Qcm9wc0ZhY3RvcnksXHJcbiAgRWRpdEZvcm1Qcm9wQ29udHJpYnV0b3JDYWxsYmFjayxcclxuICBFZGl0Rm9ybVByb3BzRmFjdG9yeSxcclxuICBGb3JtUHJvcCxcclxuICBGb3JtUHJvcERhdGEsXHJcbiAgRm9ybVByb3BMaXN0LFxyXG4gIEZvcm1Qcm9wT3B0aW9ucyxcclxuICBGb3JtUHJvcHMsXHJcbn0gZnJvbSAnLi9saWIvbW9kZWxzL2Zvcm0tcHJvcHMnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvb2JqZWN0LWV4dGVuc2lvbnMnO1xyXG5leHBvcnQge1xyXG4gIFByb3BDYWxsYmFjayxcclxuICBQcm9wTGlzdCxcclxuICBQcm9wUHJlZGljYXRlLFxyXG4gIFJlYWRvbmx5UHJvcERhdGEgYXMgUHJvcERhdGEsXHJcbn0gZnJvbSAnLi9saWIvbW9kZWxzL3Byb3BzJztcclxuZXhwb3J0IHtcclxuICBUb29sYmFyQWN0aW9uLFxyXG4gIFRvb2xiYXJBY3Rpb25Db250cmlidXRvckNhbGxiYWNrLFxyXG4gIFRvb2xiYXJBY3Rpb25MaXN0LFxyXG4gIFRvb2xiYXJBY3Rpb25PcHRpb25zLFxyXG4gIFRvb2xiYXJBY3Rpb25zLFxyXG4gIFRvb2xiYXJBY3Rpb25zRmFjdG9yeSxcclxuICBUb29sYmFyQ29tcG9uZW50LFxyXG4gIFRvb2xiYXJDb21wb25lbnRPcHRpb25zLFxyXG59IGZyb20gJy4vbGliL21vZGVscy90b29sYmFyLWFjdGlvbnMnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9leHRlbnNpb25zLnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi90b2tlbnMvZXh0ZW5zaW9ucy50b2tlbic7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3VpLWV4dGVuc2lvbnMubW9kdWxlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdXRpbHMvYWN0aW9ucy51dGlsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdXRpbHMvZm9ybS1wcm9wcy51dGlsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdXRpbHMvcHJvcHMudXRpbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3V0aWxzL3N0YXRlLnV0aWwnO1xyXG4iXX0=
1
+ export * from './lib/adapters/date-time.adapter';
2
+ export * from './lib/adapters/date.adapter';
3
+ export * from './lib/adapters/time.adapter';
4
+ export * from './lib/components/date-time-picker/date-time-picker.component';
5
+ export * from './lib/components/extensible-form/extensible-form-prop.component';
6
+ export * from './lib/components/extensible-form/extensible-form.component';
7
+ export * from './lib/components/extensible-table/extensible-table.component';
8
+ export * from './lib/components/grid-actions/grid-actions.component';
9
+ export * from './lib/components/page-toolbar/page-toolbar.component';
10
+ export * from './lib/constants/extra-properties';
11
+ export * from './lib/directives/disabled.directive';
12
+ export * from './lib/directives/prop-data.directive';
13
+ export * from './lib/enums/props.enum';
14
+ export { ActionList, } from './lib/models/actions';
15
+ export { EntityAction, EntityActionList, EntityActions, EntityActionsFactory, } from './lib/models/entity-actions';
16
+ export { EntityProp, EntityPropList, EntityProps, EntityPropsFactory, } from './lib/models/entity-props';
17
+ export { CreateFormPropsFactory, EditFormPropsFactory, FormProp, FormPropData, FormPropList, FormProps, } from './lib/models/form-props';
18
+ export * from './lib/models/object-extensions';
19
+ export { PropList, } from './lib/models/props';
20
+ export { ToolbarAction, ToolbarActionList, ToolbarActions, ToolbarActionsFactory, ToolbarComponent, } from './lib/models/toolbar-actions';
21
+ export * from './lib/services/extensions.service';
22
+ export * from './lib/tokens/extensions.token';
23
+ export * from './lib/ui-extensions.module';
24
+ export * from './lib/utils/actions.util';
25
+ export * from './lib/utils/form-props.util';
26
+ export * from './lib/utils/props.util';
27
+ export * from './lib/utils/state.util';
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3RoZW1lLXNoYXJlZC9leHRlbnNpb25zL3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsOERBQThELENBQUM7QUFDN0UsY0FBYyxpRUFBaUUsQ0FBQztBQUNoRixjQUFjLDREQUE0RCxDQUFDO0FBQzNFLGNBQWMsOERBQThELENBQUM7QUFDN0UsY0FBYyxzREFBc0QsQ0FBQztBQUNyRSxjQUFjLHNEQUFzRCxDQUFDO0FBQ3JFLGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsT0FBTyxFQUVMLFVBQVUsR0FHWCxNQUFNLHNCQUFzQixDQUFDO0FBQzlCLE9BQU8sRUFDTCxZQUFZLEVBRVosZ0JBQWdCLEVBRWhCLGFBQWEsRUFDYixvQkFBb0IsR0FDckIsTUFBTSw2QkFBNkIsQ0FBQztBQUNyQyxPQUFPLEVBQ0wsVUFBVSxFQUVWLGNBQWMsRUFFZCxXQUFXLEVBQ1gsa0JBQWtCLEdBQ25CLE1BQU0sMkJBQTJCLENBQUM7QUFDbkMsT0FBTyxFQUVMLHNCQUFzQixFQUV0QixvQkFBb0IsRUFDcEIsUUFBUSxFQUNSLFlBQVksRUFDWixZQUFZLEVBRVosU0FBUyxHQUNWLE1BQU0seUJBQXlCLENBQUM7QUFDakMsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxPQUFPLEVBRUwsUUFBUSxHQUdULE1BQU0sb0JBQW9CLENBQUM7QUFDNUIsT0FBTyxFQUNMLGFBQWEsRUFFYixpQkFBaUIsRUFFakIsY0FBYyxFQUNkLHFCQUFxQixFQUNyQixnQkFBZ0IsR0FFakIsTUFBTSw4QkFBOEIsQ0FBQztBQUN0QyxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLHdCQUF3QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9saWIvYWRhcHRlcnMvZGF0ZS10aW1lLmFkYXB0ZXInO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYWRhcHRlcnMvZGF0ZS5hZGFwdGVyJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FkYXB0ZXJzL3RpbWUuYWRhcHRlcic7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2RhdGUtdGltZS1waWNrZXIvZGF0ZS10aW1lLXBpY2tlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9leHRlbnNpYmxlLWZvcm0vZXh0ZW5zaWJsZS1mb3JtLXByb3AuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvZXh0ZW5zaWJsZS1mb3JtL2V4dGVuc2libGUtZm9ybS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9leHRlbnNpYmxlLXRhYmxlL2V4dGVuc2libGUtdGFibGUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvZ3JpZC1hY3Rpb25zL2dyaWQtYWN0aW9ucy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9wYWdlLXRvb2xiYXIvcGFnZS10b29sYmFyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb25zdGFudHMvZXh0cmEtcHJvcGVydGllcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL2Rpc2FibGVkLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL3Byb3AtZGF0YS5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZW51bXMvcHJvcHMuZW51bSc7XG5leHBvcnQge1xuICBBY3Rpb25DYWxsYmFjayxcbiAgQWN0aW9uTGlzdCxcbiAgQWN0aW9uUHJlZGljYXRlLFxuICBSZWFkb25seUFjdGlvbkRhdGEgYXMgQWN0aW9uRGF0YSxcbn0gZnJvbSAnLi9saWIvbW9kZWxzL2FjdGlvbnMnO1xuZXhwb3J0IHtcbiAgRW50aXR5QWN0aW9uLFxuICBFbnRpdHlBY3Rpb25Db250cmlidXRvckNhbGxiYWNrLFxuICBFbnRpdHlBY3Rpb25MaXN0LFxuICBFbnRpdHlBY3Rpb25PcHRpb25zLFxuICBFbnRpdHlBY3Rpb25zLFxuICBFbnRpdHlBY3Rpb25zRmFjdG9yeSxcbn0gZnJvbSAnLi9saWIvbW9kZWxzL2VudGl0eS1hY3Rpb25zJztcbmV4cG9ydCB7XG4gIEVudGl0eVByb3AsXG4gIEVudGl0eVByb3BDb250cmlidXRvckNhbGxiYWNrLFxuICBFbnRpdHlQcm9wTGlzdCxcbiAgRW50aXR5UHJvcE9wdGlvbnMsXG4gIEVudGl0eVByb3BzLFxuICBFbnRpdHlQcm9wc0ZhY3RvcnksXG59IGZyb20gJy4vbGliL21vZGVscy9lbnRpdHktcHJvcHMnO1xuZXhwb3J0IHtcbiAgQ3JlYXRlRm9ybVByb3BDb250cmlidXRvckNhbGxiYWNrLFxuICBDcmVhdGVGb3JtUHJvcHNGYWN0b3J5LFxuICBFZGl0Rm9ybVByb3BDb250cmlidXRvckNhbGxiYWNrLFxuICBFZGl0Rm9ybVByb3BzRmFjdG9yeSxcbiAgRm9ybVByb3AsXG4gIEZvcm1Qcm9wRGF0YSxcbiAgRm9ybVByb3BMaXN0LFxuICBGb3JtUHJvcE9wdGlvbnMsXG4gIEZvcm1Qcm9wcyxcbn0gZnJvbSAnLi9saWIvbW9kZWxzL2Zvcm0tcHJvcHMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL29iamVjdC1leHRlbnNpb25zJztcbmV4cG9ydCB7XG4gIFByb3BDYWxsYmFjayxcbiAgUHJvcExpc3QsXG4gIFByb3BQcmVkaWNhdGUsXG4gIFJlYWRvbmx5UHJvcERhdGEgYXMgUHJvcERhdGEsXG59IGZyb20gJy4vbGliL21vZGVscy9wcm9wcyc7XG5leHBvcnQge1xuICBUb29sYmFyQWN0aW9uLFxuICBUb29sYmFyQWN0aW9uQ29udHJpYnV0b3JDYWxsYmFjayxcbiAgVG9vbGJhckFjdGlvbkxpc3QsXG4gIFRvb2xiYXJBY3Rpb25PcHRpb25zLFxuICBUb29sYmFyQWN0aW9ucyxcbiAgVG9vbGJhckFjdGlvbnNGYWN0b3J5LFxuICBUb29sYmFyQ29tcG9uZW50LFxuICBUb29sYmFyQ29tcG9uZW50T3B0aW9ucyxcbn0gZnJvbSAnLi9saWIvbW9kZWxzL3Rvb2xiYXItYWN0aW9ucyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9leHRlbnNpb25zLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdG9rZW5zL2V4dGVuc2lvbnMudG9rZW4nO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdWktZXh0ZW5zaW9ucy5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdXRpbHMvYWN0aW9ucy51dGlsJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3V0aWxzL2Zvcm0tcHJvcHMudXRpbCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi91dGlscy9wcm9wcy51dGlsJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3V0aWxzL3N0YXRlLnV0aWwnO1xuIl19
@@ -1,17 +1,17 @@
1
- import { animate, animation, keyframes, style } from '@angular/animations';
2
- export const bounceIn = animation([
3
- style({ opacity: '0', display: '{{ display }}' }),
4
- animate('{{ time}} {{ easing }}', keyframes([
5
- style({ opacity: '0', transform: '{{ transform }} scale(0.0)', offset: 0 }),
6
- style({ opacity: '0', transform: '{{ transform }} scale(0.8)', offset: 0.5 }),
7
- style({ opacity: '1', transform: '{{ transform }} scale(1.0)', offset: 1 }),
8
- ])),
9
- ], {
10
- params: {
11
- time: '350ms',
12
- easing: 'cubic-bezier(.7,.31,.72,1.47)',
13
- display: 'block',
14
- transform: 'translate(-50%, -50%)',
15
- },
16
- });
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm91bmNlLmFuaW1hdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy90aGVtZS1zaGFyZWQvc3JjL2xpYi9hbmltYXRpb25zL2JvdW5jZS5hbmltYXRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUUzRSxNQUFNLENBQUMsTUFBTSxRQUFRLEdBQUcsU0FBUyxDQUMvQjtJQUNFLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxDQUFDO0lBQ2pELE9BQU8sQ0FDTCx3QkFBd0IsRUFDeEIsU0FBUyxDQUFDO1FBQ1IsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDO1FBQzNFLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsQ0FBQztRQUM3RSxLQUFLLENBQUMsRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSw0QkFBNEIsRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUM7S0FDNUUsQ0FBQyxDQUNIO0NBQ0YsRUFDRDtJQUNFLE1BQU0sRUFBRTtRQUNOLElBQUksRUFBRSxPQUFPO1FBQ2IsTUFBTSxFQUFFLCtCQUErQjtRQUN2QyxPQUFPLEVBQUUsT0FBTztRQUNoQixTQUFTLEVBQUUsdUJBQXVCO0tBQ25DO0NBQ0YsQ0FDRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYW5pbWF0ZSwgYW5pbWF0aW9uLCBrZXlmcmFtZXMsIHN0eWxlIH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XHJcblxyXG5leHBvcnQgY29uc3QgYm91bmNlSW4gPSBhbmltYXRpb24oXHJcbiAgW1xyXG4gICAgc3R5bGUoeyBvcGFjaXR5OiAnMCcsIGRpc3BsYXk6ICd7eyBkaXNwbGF5IH19JyB9KSxcclxuICAgIGFuaW1hdGUoXHJcbiAgICAgICd7eyB0aW1lfX0ge3sgZWFzaW5nIH19JyxcclxuICAgICAga2V5ZnJhbWVzKFtcclxuICAgICAgICBzdHlsZSh7IG9wYWNpdHk6ICcwJywgdHJhbnNmb3JtOiAne3sgdHJhbnNmb3JtIH19IHNjYWxlKDAuMCknLCBvZmZzZXQ6IDAgfSksXHJcbiAgICAgICAgc3R5bGUoeyBvcGFjaXR5OiAnMCcsIHRyYW5zZm9ybTogJ3t7IHRyYW5zZm9ybSB9fSBzY2FsZSgwLjgpJywgb2Zmc2V0OiAwLjUgfSksXHJcbiAgICAgICAgc3R5bGUoeyBvcGFjaXR5OiAnMScsIHRyYW5zZm9ybTogJ3t7IHRyYW5zZm9ybSB9fSBzY2FsZSgxLjApJywgb2Zmc2V0OiAxIH0pLFxyXG4gICAgICBdKSxcclxuICAgICksXHJcbiAgXSxcclxuICB7XHJcbiAgICBwYXJhbXM6IHtcclxuICAgICAgdGltZTogJzM1MG1zJyxcclxuICAgICAgZWFzaW5nOiAnY3ViaWMtYmV6aWVyKC43LC4zMSwuNzIsMS40NyknLFxyXG4gICAgICBkaXNwbGF5OiAnYmxvY2snLFxyXG4gICAgICB0cmFuc2Zvcm06ICd0cmFuc2xhdGUoLTUwJSwgLTUwJSknLFxyXG4gICAgfSxcclxuICB9LFxyXG4pO1xyXG4iXX0=
1
+ import { animate, animation, keyframes, style } from '@angular/animations';
2
+ export const bounceIn = animation([
3
+ style({ opacity: '0', display: '{{ display }}' }),
4
+ animate('{{ time}} {{ easing }}', keyframes([
5
+ style({ opacity: '0', transform: '{{ transform }} scale(0.0)', offset: 0 }),
6
+ style({ opacity: '0', transform: '{{ transform }} scale(0.8)', offset: 0.5 }),
7
+ style({ opacity: '1', transform: '{{ transform }} scale(1.0)', offset: 1 }),
8
+ ])),
9
+ ], {
10
+ params: {
11
+ time: '350ms',
12
+ easing: 'cubic-bezier(.7,.31,.72,1.47)',
13
+ display: 'block',
14
+ transform: 'translate(-50%, -50%)',
15
+ },
16
+ });
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm91bmNlLmFuaW1hdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy90aGVtZS1zaGFyZWQvc3JjL2xpYi9hbmltYXRpb25zL2JvdW5jZS5hbmltYXRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUUzRSxNQUFNLENBQUMsTUFBTSxRQUFRLEdBQUcsU0FBUyxDQUMvQjtJQUNFLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxDQUFDO0lBQ2pELE9BQU8sQ0FDTCx3QkFBd0IsRUFDeEIsU0FBUyxDQUFDO1FBQ1IsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDO1FBQzNFLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsQ0FBQztRQUM3RSxLQUFLLENBQUMsRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSw0QkFBNEIsRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUM7S0FDNUUsQ0FBQyxDQUNIO0NBQ0YsRUFDRDtJQUNFLE1BQU0sRUFBRTtRQUNOLElBQUksRUFBRSxPQUFPO1FBQ2IsTUFBTSxFQUFFLCtCQUErQjtRQUN2QyxPQUFPLEVBQUUsT0FBTztRQUNoQixTQUFTLEVBQUUsdUJBQXVCO0tBQ25DO0NBQ0YsQ0FDRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYW5pbWF0ZSwgYW5pbWF0aW9uLCBrZXlmcmFtZXMsIHN0eWxlIH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XG5cbmV4cG9ydCBjb25zdCBib3VuY2VJbiA9IGFuaW1hdGlvbihcbiAgW1xuICAgIHN0eWxlKHsgb3BhY2l0eTogJzAnLCBkaXNwbGF5OiAne3sgZGlzcGxheSB9fScgfSksXG4gICAgYW5pbWF0ZShcbiAgICAgICd7eyB0aW1lfX0ge3sgZWFzaW5nIH19JyxcbiAgICAgIGtleWZyYW1lcyhbXG4gICAgICAgIHN0eWxlKHsgb3BhY2l0eTogJzAnLCB0cmFuc2Zvcm06ICd7eyB0cmFuc2Zvcm0gfX0gc2NhbGUoMC4wKScsIG9mZnNldDogMCB9KSxcbiAgICAgICAgc3R5bGUoeyBvcGFjaXR5OiAnMCcsIHRyYW5zZm9ybTogJ3t7IHRyYW5zZm9ybSB9fSBzY2FsZSgwLjgpJywgb2Zmc2V0OiAwLjUgfSksXG4gICAgICAgIHN0eWxlKHsgb3BhY2l0eTogJzEnLCB0cmFuc2Zvcm06ICd7eyB0cmFuc2Zvcm0gfX0gc2NhbGUoMS4wKScsIG9mZnNldDogMSB9KSxcbiAgICAgIF0pLFxuICAgICksXG4gIF0sXG4gIHtcbiAgICBwYXJhbXM6IHtcbiAgICAgIHRpbWU6ICczNTBtcycsXG4gICAgICBlYXNpbmc6ICdjdWJpYy1iZXppZXIoLjcsLjMxLC43MiwxLjQ3KScsXG4gICAgICBkaXNwbGF5OiAnYmxvY2snLFxuICAgICAgdHJhbnNmb3JtOiAndHJhbnNsYXRlKC01MCUsIC01MCUpJyxcbiAgICB9LFxuICB9LFxuKTtcbiJdfQ==