@veloceapps/sdk 6.0.0-6 → 6.0.0-61

Sign up to get free protection for your applications and to get access to all the features.
Files changed (221) hide show
  1. package/bundles/veloceapps-sdk-cms.umd.js +1248 -830
  2. package/bundles/veloceapps-sdk-cms.umd.js.map +1 -1
  3. package/bundles/veloceapps-sdk-core.umd.js +803 -696
  4. package/bundles/veloceapps-sdk-core.umd.js.map +1 -1
  5. package/bundles/veloceapps-sdk-runtime.umd.js +209 -142
  6. package/bundles/veloceapps-sdk-runtime.umd.js.map +1 -1
  7. package/bundles/veloceapps-sdk.umd.js +371 -299
  8. package/bundles/veloceapps-sdk.umd.js.map +1 -1
  9. package/cms/cms.actions.d.ts +2 -4
  10. package/cms/components/element-children/element-children.component.d.ts +13 -3
  11. package/cms/components/element-children/element-children.module.d.ts +4 -2
  12. package/cms/components/element-drop-handle/element-drop-handle.component.d.ts +12 -0
  13. package/cms/components/element-drop-handle/element-drop-handle.module.d.ts +9 -0
  14. package/cms/components/element-renderer/element-renderer.component.d.ts +3 -3
  15. package/cms/components/preview/index.d.ts +1 -0
  16. package/cms/components/preview/preview.component.d.ts +9 -8
  17. package/cms/components/preview/preview.module.d.ts +2 -1
  18. package/cms/components/preview/preview.types.d.ts +11 -0
  19. package/cms/index.d.ts +2 -0
  20. package/cms/launcher.module.d.ts +3 -1
  21. package/cms/modules/migrations/index.d.ts +2 -0
  22. package/cms/modules/migrations/migrations.d.ts +2 -0
  23. package/cms/modules/migrations/migrations.module.d.ts +6 -0
  24. package/cms/modules/migrations/services/migrations.service.d.ts +10 -0
  25. package/cms/modules/migrations/types/migrations.types.d.ts +2 -0
  26. package/cms/modules/runtime/index.d.ts +2 -0
  27. package/cms/modules/runtime/runtime.module.d.ts +8 -0
  28. package/cms/modules/runtime/services/compilation.service.d.ts +18 -0
  29. package/cms/modules/runtime/services/runtime-editor.service.d.ts +18 -0
  30. package/cms/modules/runtime/services/runtime.service.d.ts +27 -0
  31. package/cms/modules/runtime/tokens.d.ts +3 -0
  32. package/cms/{types → modules/runtime/types}/compilation.types.d.ts +1 -1
  33. package/cms/modules/runtime/types/runtime.actions.d.ts +9 -0
  34. package/cms/services/index.d.ts +0 -1
  35. package/cms/services/io-provider.service.d.ts +3 -3
  36. package/cms/types/common.types.d.ts +1 -1
  37. package/cms/types/configuration.types.d.ts +1 -0
  38. package/cms/types/index.d.ts +1 -1
  39. package/cms/utils/elements-resolver.d.ts +3 -2
  40. package/cms/utils/index.d.ts +1 -0
  41. package/cms/utils/path.utils.d.ts +0 -1
  42. package/cms/utils/ui-definition.utils.d.ts +6 -0
  43. package/cms/vendor-map.d.ts +40 -26
  44. package/core/modules/configuration/services/configuration-runtime.service.d.ts +2 -4
  45. package/core/modules/configuration/services/configuration.service.d.ts +6 -4
  46. package/core/modules/configuration/types/configuration-runtime.types.d.ts +0 -2
  47. package/core/modules/flow-configuration/services/flow-configuration.service.d.ts +3 -2
  48. package/core/services/metric-calculation/metric-calculation.service.d.ts +5 -1
  49. package/core/services/quote-draft.service.d.ts +2 -2
  50. package/core/types/index.d.ts +0 -1
  51. package/core/types/ui-definition.types.d.ts +19 -4
  52. package/core/utils/index.d.ts +1 -0
  53. package/core/utils/line-item.utils.d.ts +2 -0
  54. package/core/utils/ui-definition.utils.d.ts +2 -0
  55. package/esm2015/cms/cms.actions.js +1 -6
  56. package/esm2015/cms/components/element-children/element-children.component.js +24 -8
  57. package/esm2015/cms/components/element-children/element-children.module.js +8 -6
  58. package/esm2015/cms/components/element-drop-handle/element-drop-handle.component.js +32 -0
  59. package/esm2015/cms/components/element-drop-handle/element-drop-handle.module.js +19 -0
  60. package/esm2015/cms/components/element-renderer/element-renderer.component.js +9 -9
  61. package/esm2015/cms/components/element-renderer/element-renderer.module.js +4 -4
  62. package/esm2015/cms/components/plugin.component.js +3 -3
  63. package/esm2015/cms/components/preview/index.js +2 -1
  64. package/esm2015/cms/components/preview/preview.component.js +21 -36
  65. package/esm2015/cms/components/preview/preview.module.js +7 -6
  66. package/esm2015/cms/components/preview/preview.types.js +2 -0
  67. package/esm2015/cms/directives/custom-template.directive.js +3 -3
  68. package/esm2015/cms/index.js +3 -1
  69. package/esm2015/cms/launcher.module.js +10 -9
  70. package/esm2015/cms/modules/federated/federated.component.js +3 -3
  71. package/esm2015/cms/modules/federated/federated.module.js +4 -4
  72. package/esm2015/cms/modules/migrations/index.js +3 -0
  73. package/esm2015/cms/modules/migrations/migrations.js +11 -0
  74. package/esm2015/cms/modules/migrations/migrations.module.js +15 -0
  75. package/esm2015/cms/modules/migrations/services/migrations.service.js +43 -0
  76. package/esm2015/cms/modules/migrations/types/migrations.types.js +2 -0
  77. package/esm2015/cms/modules/runtime/index.js +3 -0
  78. package/esm2015/cms/modules/runtime/runtime.module.js +32 -0
  79. package/esm2015/cms/modules/runtime/services/compilation.service.js +84 -0
  80. package/esm2015/cms/modules/runtime/services/runtime-editor.service.js +27 -0
  81. package/esm2015/cms/modules/runtime/services/runtime.service.js +74 -0
  82. package/esm2015/cms/modules/runtime/tokens.js +3 -0
  83. package/esm2015/cms/modules/runtime/types/compilation.types.js +2 -0
  84. package/esm2015/cms/modules/runtime/types/runtime.actions.js +2 -0
  85. package/esm2015/cms/plugins/configuration.plugin.js +12 -4
  86. package/esm2015/cms/plugins/io.plugin.js +3 -3
  87. package/esm2015/cms/plugins/script.plugin.js +3 -3
  88. package/esm2015/cms/services/element-context.service.js +3 -3
  89. package/esm2015/cms/services/index.js +1 -2
  90. package/esm2015/cms/services/integration.state.js +3 -3
  91. package/esm2015/cms/services/io-provider.service.js +9 -9
  92. package/esm2015/cms/services/templates.service.js +3 -3
  93. package/esm2015/cms/types/common.types.js +1 -1
  94. package/esm2015/cms/types/configuration.types.js +1 -1
  95. package/esm2015/cms/types/index.js +2 -2
  96. package/esm2015/cms/utils/elements-resolver.js +18 -8
  97. package/esm2015/cms/utils/index.js +2 -1
  98. package/esm2015/cms/utils/path.utils.js +2 -13
  99. package/esm2015/cms/utils/ui-definition.utils.js +82 -0
  100. package/esm2015/cms/vendor-map.js +21 -10
  101. package/esm2015/core/core.module.js +4 -4
  102. package/esm2015/core/modules/configuration/configuration.module.js +4 -4
  103. package/esm2015/core/modules/configuration/services/configuration-runtime.service.js +5 -10
  104. package/esm2015/core/modules/configuration/services/configuration.service.js +27 -24
  105. package/esm2015/core/modules/configuration/services/runtime-context.service.js +3 -3
  106. package/esm2015/core/modules/configuration/types/configuration-runtime.types.js +1 -1
  107. package/esm2015/core/modules/flow-configuration/flow-configuration.module.js +4 -4
  108. package/esm2015/core/modules/flow-configuration/services/flow-configuration.service.js +10 -9
  109. package/esm2015/core/modules/flow-configuration/services/flow-update.service.js +3 -3
  110. package/esm2015/core/services/context.service.js +3 -3
  111. package/esm2015/core/services/metric-calculation/metric-calculation.service.js +18 -9
  112. package/esm2015/core/services/product-images.service.js +3 -3
  113. package/esm2015/core/services/quote-draft.service.js +7 -7
  114. package/esm2015/core/types/index.js +1 -2
  115. package/esm2015/core/types/ui-definition.types.js +2 -2
  116. package/esm2015/core/utils/index.js +2 -1
  117. package/esm2015/core/utils/line-item.utils.js +27 -11
  118. package/esm2015/core/utils/ui-definition.utils.js +9 -0
  119. package/esm2015/runtime/components/component-preview/component-preview.component.js +4 -4
  120. package/esm2015/runtime/components/section-renderer/section-renderer.component.js +3 -3
  121. package/esm2015/runtime/components/ui-runtime/runtime.component.js +3 -3
  122. package/esm2015/runtime/components/ui-runtime-preview/runtime-preview.component.js +3 -3
  123. package/esm2015/runtime/execution/components/children-placeholder/children-placeholder.component.js +6 -6
  124. package/esm2015/runtime/execution/components/context-provider/context-provider.component.js +3 -3
  125. package/esm2015/runtime/execution/components/execution-section-renderer/execution-section-renderer.component.js +3 -3
  126. package/esm2015/runtime/execution/components/federated/federated.component.js +3 -3
  127. package/esm2015/runtime/execution/components/velo-attribute/velo-attribute.component.js +3 -3
  128. package/esm2015/runtime/execution/components/velo-multiselect/velo-multiselect.component.js +3 -3
  129. package/esm2015/runtime/execution/components/velo-port-checkbox/velo-port-checkbox.component.js +3 -3
  130. package/esm2015/runtime/execution/components/velo-port-dropdown/velo-port-dropdown.component.js +3 -3
  131. package/esm2015/runtime/execution/components/velo-port-radio/velo-port-radio.component.js +3 -3
  132. package/esm2015/runtime/execution/components/velo-type/velo-type.component.js +3 -3
  133. package/esm2015/runtime/execution/directives/section-script.directive.js +3 -3
  134. package/esm2015/runtime/execution/directives/sf-query.directive.js +3 -3
  135. package/esm2015/runtime/execution/directives/velo-attribute.directive.js +3 -3
  136. package/esm2015/runtime/execution/directives/velo-port.directive.js +18 -18
  137. package/esm2015/runtime/execution/directives/vl-approval.directive.js +3 -3
  138. package/esm2015/runtime/execution/directives/vl-document-attachments.directive.js +3 -3
  139. package/esm2015/runtime/execution/directives/vl-document-templates.directive.js +3 -3
  140. package/esm2015/runtime/execution/directives/vl-quote.directive.js +4 -4
  141. package/esm2015/runtime/execution/directives/vl-ramp.directive.js +3 -3
  142. package/esm2015/runtime/execution/runtime-execution.module.js +4 -4
  143. package/esm2015/runtime/runtime.module.js +4 -4
  144. package/esm2015/runtime/services/cart.service.js +3 -3
  145. package/esm2015/runtime/services/collapsible-state.service.js +3 -3
  146. package/esm2015/runtime/services/configuration.service.js +4 -4
  147. package/esm2015/runtime/services/current-state.service.js +3 -3
  148. package/esm2015/runtime/services/form-scope.service.js +3 -3
  149. package/esm2015/runtime/services/product-model-cache.service.js +3 -3
  150. package/esm2015/runtime/services/runtime-context.service.js +3 -3
  151. package/esm2015/runtime/services/runtime-form.service.js +3 -3
  152. package/esm2015/runtime/services/runtime.service.js +4 -4
  153. package/esm2015/runtime/services/section-helper.service.js +3 -3
  154. package/esm2015/runtime/services/section-scope.service.js +3 -3
  155. package/esm2015/runtime/services/section-store.service.js +3 -3
  156. package/esm2015/runtime/services/section.service.js +6 -6
  157. package/esm2015/runtime/types/index.js +2 -1
  158. package/esm2015/runtime/types/quote-states.types.js +2 -0
  159. package/esm2015/src/components/dialog/dialog.component.js +3 -3
  160. package/esm2015/src/components/dialog/dialog.module.js +4 -4
  161. package/esm2015/src/components/doc-gen/doc-gen.component.js +3 -3
  162. package/esm2015/src/components/doc-gen/doc-gen.module.js +4 -4
  163. package/esm2015/src/components/header/cart-overlay/cart-preview.component.js +3 -3
  164. package/esm2015/src/components/header/cart-overlay/cart-preview.module.js +4 -4
  165. package/esm2015/src/components/header/header.component.js +20 -12
  166. package/esm2015/src/components/header/header.module.js +4 -4
  167. package/esm2015/src/components/header/metrics/metrics.component.js +79 -67
  168. package/esm2015/src/components/header/metrics/metrics.definitions.js +1 -8
  169. package/esm2015/src/components/header/metrics/metrics.module.js +4 -4
  170. package/esm2015/src/flow-routing.module.js +4 -4
  171. package/esm2015/src/flow.component.js +3 -3
  172. package/esm2015/src/flow.module.js +4 -4
  173. package/esm2015/src/guards/context.guard.js +3 -3
  174. package/esm2015/src/guards/product-unload.guard.js +3 -3
  175. package/esm2015/src/guards/root.guard.js +3 -3
  176. package/esm2015/src/pages/catalog/catalog.component.js +3 -3
  177. package/esm2015/src/pages/catalog/catalog.module.js +4 -4
  178. package/esm2015/src/pages/debug/debug.component.js +3 -3
  179. package/esm2015/src/pages/debug/debug.module.js +4 -4
  180. package/esm2015/src/pages/empty-account/empty-account.component.js +3 -3
  181. package/esm2015/src/pages/empty-account/empty-account.module.js +4 -4
  182. package/esm2015/src/pages/legacy-product/legacy-product.component.js +4 -4
  183. package/esm2015/src/pages/legacy-product/legacy-product.module.js +4 -4
  184. package/esm2015/src/pages/product/product.component.js +5 -12
  185. package/esm2015/src/pages/product/product.module.js +4 -4
  186. package/esm2015/src/pages/record-not-found/record-not-found.component.js +3 -3
  187. package/esm2015/src/pages/record-not-found/record-not-found.module.js +4 -4
  188. package/esm2015/src/pages/remote/remote.component.js +5 -8
  189. package/esm2015/src/pages/remote/remote.module.js +4 -4
  190. package/esm2015/src/pages/shopping-cart/shopping-cart.component.js +3 -3
  191. package/esm2015/src/pages/shopping-cart/shopping-cart.module.js +4 -4
  192. package/esm2015/src/resolvers/flow.resolver.js +3 -3
  193. package/esm2015/src/resolvers/quote.resolver.js +8 -8
  194. package/esm2015/src/services/doc-gen.service.js +3 -3
  195. package/esm2015/src/services/flow-dialog.service.js +3 -3
  196. package/esm2015/src/services/flow-router.service.js +3 -3
  197. package/esm2015/src/services/flow.service.js +3 -3
  198. package/esm2015/src/utils/flow.utils.js +3 -3
  199. package/fesm2015/veloceapps-sdk-cms.js +1041 -737
  200. package/fesm2015/veloceapps-sdk-cms.js.map +1 -1
  201. package/fesm2015/veloceapps-sdk-core.js +554 -521
  202. package/fesm2015/veloceapps-sdk-core.js.map +1 -1
  203. package/fesm2015/veloceapps-sdk-runtime.js +138 -138
  204. package/fesm2015/veloceapps-sdk-runtime.js.map +1 -1
  205. package/fesm2015/veloceapps-sdk.js +256 -252
  206. package/fesm2015/veloceapps-sdk.js.map +1 -1
  207. package/package.json +5 -3
  208. package/runtime/services/configuration.service.d.ts +2 -1
  209. package/runtime/services/runtime.service.d.ts +2 -1
  210. package/runtime/types/index.d.ts +1 -0
  211. package/src/components/header/header.component.d.ts +4 -2
  212. package/src/components/header/metrics/metrics.component.d.ts +15 -6
  213. package/src/components/header/metrics/metrics.definitions.d.ts +0 -3
  214. package/src/pages/product/product.component.d.ts +0 -1
  215. package/cms/services/dynamic-module.service.d.ts +0 -15
  216. package/cms/services/launcher.service.d.ts +0 -18
  217. package/esm2015/cms/services/dynamic-module.service.js +0 -33
  218. package/esm2015/cms/services/launcher.service.js +0 -58
  219. package/esm2015/cms/types/compilation.types.js +0 -2
  220. package/esm2015/core/types/quote-states.types.js +0 -2
  221. /package/{core → runtime}/types/quote-states.types.d.ts +0 -0
@@ -1,7 +1,7 @@
1
1
  import { ConfigurationApiService } from '@veloceapps/api';
2
- import { LineItem, RuntimeModel } from '@veloceapps/core';
2
+ import { RuntimeModel } from '@veloceapps/core';
3
3
  import { Observable } from 'rxjs';
4
- import { ContextService } from '../../../services';
4
+ import { ContextService } from '../../../services/context.service';
5
5
  import { RuntimeContext, UIDefinition, UIDefinitionProps } from '../../../types';
6
6
  import { RuntimeInitializationProps } from '../types/configuration-runtime.types';
7
7
  import { RuntimeContextService } from './runtime-context.service';
@@ -11,7 +11,6 @@ export declare class ConfigurationRuntimeService {
11
11
  private contextService;
12
12
  private runtimeContextService;
13
13
  private _runtimeContext?;
14
- private _assets?;
15
14
  private _isInitialized;
16
15
  initializationProps?: RuntimeInitializationProps;
17
16
  uiDefinitionProperties: UIDefinitionProps;
@@ -20,7 +19,6 @@ export declare class ConfigurationRuntimeService {
20
19
  initTestMode(modelId: string, uiDefinition: UIDefinition): any;
21
20
  init(props: RuntimeInitializationProps): Observable<RuntimeContext | undefined>;
22
21
  private id15to18;
23
- getAsset(lineItem: LineItem): LineItem | undefined;
24
22
  get isInitialized(): boolean;
25
23
  get runtimeModel(): RuntimeModel | undefined;
26
24
  get runtimeContext(): RuntimeContext | undefined;
@@ -4,8 +4,9 @@ import { Dictionary } from 'lodash';
4
4
  import { MessageService } from 'primeng/api';
5
5
  import { DialogService } from 'primeng/dynamicdialog';
6
6
  import { Observable } from 'rxjs';
7
- import { ContextService, QuoteDraftService } from '../../../services';
8
- import { QuoteStates, RuntimeContext } from '../../../types';
7
+ import { ContextService } from '../../../services/context.service';
8
+ import { QuoteDraftService } from '../../../services/quote-draft.service';
9
+ import { RuntimeContext } from '../../../types';
9
10
  import { ConfigurationRuntimeService } from './configuration-runtime.service';
10
11
  import * as i0 from "@angular/core";
11
12
  export declare class ConfigurationService {
@@ -16,7 +17,7 @@ export declare class ConfigurationService {
16
17
  private messageService;
17
18
  private dialogService;
18
19
  private mode;
19
- private states;
20
+ private configurableRamp;
20
21
  private lineItem;
21
22
  private charges;
22
23
  private pricePlans;
@@ -25,7 +26,7 @@ export declare class ConfigurationService {
25
26
  reset(): void;
26
27
  patch$(lineItem: LineItem): Observable<LineItem>;
27
28
  patch(lineItem: LineItem): void;
28
- updateCurrentStates(update: Partial<QuoteStates>): void;
29
+ setConfigurableRamp(lineItem: LineItem): void;
29
30
  get(): Observable<LineItem | undefined>;
30
31
  getSnapshot(): LineItem | undefined;
31
32
  getRuntimeModel(): RuntimeModel | undefined;
@@ -40,6 +41,7 @@ export declare class ConfigurationService {
40
41
  configureExternal$(productId: string, qty?: number): Observable<LineItem>;
41
42
  private createRequest;
42
43
  private showInactiveProductsConfirmation;
44
+ private getAsset;
43
45
  static ɵfac: i0.ɵɵFactoryDeclaration<ConfigurationService, never>;
44
46
  static ɵprov: i0.ɵɵInjectableDeclaration<ConfigurationService>;
45
47
  }
@@ -1,7 +1,5 @@
1
- import { LineItem } from '@veloceapps/core';
2
1
  export interface RuntimeInitializationProps {
3
2
  productId: string;
4
3
  offeringId?: string;
5
- assets?: LineItem[];
6
4
  defaultQty?: number;
7
5
  }
@@ -2,8 +2,9 @@ import { ProceduresApiService } from '@veloceapps/api';
2
2
  import { Charge, CompiledPricePlan, ConfigurationContext, LineItem, MetricRule, QuoteDraft } from '@veloceapps/core';
3
3
  import { Dictionary } from 'lodash';
4
4
  import { Observable } from 'rxjs';
5
- import { ContextService, QuoteDraftService } from '../../../services';
6
- import { ConfigurationService } from '../../configuration';
5
+ import { ContextService } from '../../../services/context.service';
6
+ import { QuoteDraftService } from '../../../services/quote-draft.service';
7
+ import { ConfigurationService } from '../../configuration/services/configuration.service';
7
8
  import { FlowUpdateParams } from '../types/update.types';
8
9
  import { FlowUpdateService } from './flow-update.service';
9
10
  import * as i0 from "@angular/core";
@@ -1,21 +1,25 @@
1
1
  import { ConfigurationSettingsApiService } from '@veloceapps/api';
2
2
  import { Observable } from 'rxjs';
3
+ import { FlowConfigurationService } from '../../modules/flow-configuration/services/flow-configuration.service';
3
4
  import { QuoteDraftService } from '../quote-draft.service';
4
5
  import * as i0 from "@angular/core";
5
6
  export declare class MetricsCalculationService {
6
7
  private quoteDraftService;
8
+ private flowConfiguration;
7
9
  private settingsService;
8
10
  get onMetricsUpdate$(): Observable<void>;
9
11
  private metricsUpdated$;
10
12
  private quoteMetricsSettings;
11
13
  private metricsCalculationMethodMap;
12
14
  private metricsData;
13
- constructor(quoteDraftService: QuoteDraftService, settingsService: ConfigurationSettingsApiService);
15
+ private activeMetricRules;
16
+ constructor(quoteDraftService: QuoteDraftService, flowConfiguration: FlowConfigurationService, settingsService: ConfigurationSettingsApiService);
14
17
  getMetricValue(metric: string): number;
15
18
  private updateMetrics;
16
19
  private calculateMetric;
17
20
  private buildMetricsCalculationMethods;
18
21
  private collectMetricKeys;
22
+ private getMetricRuleByTotalMetricName;
19
23
  static ɵfac: i0.ɵɵFactoryDeclaration<MetricsCalculationService, never>;
20
24
  static ɵprov: i0.ɵɵInjectableDeclaration<MetricsCalculationService>;
21
25
  }
@@ -17,8 +17,8 @@ export declare class QuoteDraftService {
17
17
  set isInitialized(value: boolean);
18
18
  get hasUnsavedChanges(): boolean;
19
19
  set hasUnsavedChanges(value: boolean);
20
- get hasAssets$(): Observable<boolean>;
21
- get hasAssets(): boolean;
20
+ get hasProducts$(): Observable<boolean>;
21
+ get hasProducts(): boolean;
22
22
  allPriceLists: PriceList[];
23
23
  assetPriceLists: PriceList[];
24
24
  reset$: Observable<boolean>;
@@ -1,3 +1,2 @@
1
- export * from './quote-states.types';
2
1
  export * from './runtime.types';
3
2
  export * from './ui-definition.types';
@@ -1,5 +1,5 @@
1
1
  export declare type UIDefinitionType = 'DEFAULT' | 'CONFIGURATION';
2
- export declare type UIDefinitionMetadata = Omit<UIDefinition, 'children'>;
2
+ export declare const UI_DEFINITION_VERSION = 3;
3
3
  export declare type UIExternalsType = Record<string, string | number | boolean>;
4
4
  export interface UIDefinitionProps {
5
5
  suppressToastMessages?: boolean;
@@ -8,15 +8,30 @@ export interface UIDefinitionProps {
8
8
  priceList?: string;
9
9
  productId?: string;
10
10
  }
11
- export interface UIDefinition {
11
+ export interface UIDefinitionMetadata {
12
12
  name: string;
13
13
  type: UIDefinitionType;
14
- children: UIElement[];
15
14
  properties?: UIDefinitionProps;
16
15
  primary: boolean;
17
- version: number;
18
16
  createdTimestamp: number;
19
17
  externals?: UIExternalsType;
18
+ version: number;
19
+ }
20
+ export interface UIDefinition extends UIDefinitionMetadata {
21
+ /**
22
+ * `children` is for simple previews only.
23
+ * For applications use `pages` property instead
24
+ */
25
+ children?: UIElement[];
26
+ /**
27
+ * The page is an Element with `type: 'PAGE'`
28
+ */
29
+ pages?: UIElement[];
30
+ /**
31
+ * Shared components
32
+ * These are not rendered on the screen, and only used by REFERENCE type elements
33
+ */
34
+ components?: UIElement[];
20
35
  }
21
36
  export interface UIElement {
22
37
  children: UIElement[];
@@ -1,2 +1,3 @@
1
1
  export * from './line-item.utils';
2
2
  export * from './line-item.worker';
3
+ export * from './ui-definition.utils';
@@ -5,6 +5,8 @@ export declare const findLineItemWithComparator: (lineItems: LineItem[], compara
5
5
  export declare const insertLineItem: (lineItem: LineItem, parentId: string, toInsert: LineItem) => LineItem;
6
6
  export declare const removeLineItem: (lineItem: LineItem, idToRemove: string) => LineItem;
7
7
  export declare const replaceLineItem: (lineItem: LineItem, replaceTo: LineItem) => LineItem;
8
+ export declare const calculateCardinalityVariables: (lineItems: LineItem[]) => Map<string, number>;
9
+ export declare const recalculateCardinalityVariables: (original: LineItem, updated: LineItem) => LineItem;
8
10
  export declare const mapAttributes: (attributes: Attribute[]) => Dictionary<any>;
9
11
  export declare const getAttributes: (attributes: Attribute[], names?: string[]) => Attribute[];
10
12
  export declare const upsertAttributes: (originalAttributes: Attribute[], attributesToUpsert: {
@@ -0,0 +1,2 @@
1
+ import { UIDefinition, UIDefinitionMetadata } from '../types';
2
+ export declare function extractMetadata(uiDefinition: UIDefinition): UIDefinitionMetadata;
@@ -9,7 +9,6 @@ export var FlowAction;
9
9
  FlowAction["FLOW_SWITCH_OBJECT"] = "FLOW_SWITCH_OBJECT";
10
10
  FlowAction["REMOTE_APPLY"] = "REMOTE_APPLY";
11
11
  FlowAction["REMOTE_CANCEL"] = "REMOTE_CANCEL";
12
- FlowAction["SET_DEFAULT_METRICS"] = "SET_DEFAULT_METRICS";
13
12
  })(FlowAction || (FlowAction = {}));
14
13
  export const ConfigureProductAction = ({ lineItemId, productId, }) => ({
15
14
  type: FlowAction.FLOW_CONFIGURE_PRODUCT,
@@ -40,8 +39,4 @@ export const SwitchObjectAction = (payload) => ({
40
39
  type: FlowAction.FLOW_SWITCH_OBJECT,
41
40
  payload,
42
41
  });
43
- export const SetDefaultMetrics = (metrics) => ({
44
- type: FlowAction.SET_DEFAULT_METRICS,
45
- payload: { metrics },
46
- });
47
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY21zLmFjdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL3Nkay9jbXMvY21zLmFjdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxDQUFOLElBQVksVUFXWDtBQVhELFdBQVksVUFBVTtJQUNwQiwrREFBaUQsQ0FBQTtJQUNqRCx1REFBeUMsQ0FBQTtJQUN6QyxtRUFBcUQsQ0FBQTtJQUNyRCxtRkFBcUUsQ0FBQTtJQUNyRSxxREFBdUMsQ0FBQTtJQUN2Qyx1REFBeUMsQ0FBQTtJQUN6Qyx1REFBeUMsQ0FBQTtJQUN6QywyQ0FBNkIsQ0FBQTtJQUM3Qiw2Q0FBK0IsQ0FBQTtJQUMvQix5REFBMkMsQ0FBQTtBQUM3QyxDQUFDLEVBWFcsVUFBVSxLQUFWLFVBQVUsUUFXckI7QUFFRCxNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FBRyxDQUFDLEVBQ3JDLFVBQVUsRUFDVixTQUFTLEdBSVYsRUFBcUIsRUFBRSxDQUFDLENBQUM7SUFDeEIsSUFBSSxFQUFFLFVBQVUsQ0FBQyxzQkFBc0I7SUFDdkMsT0FBTyxFQUFFLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRTtDQUNuQyxDQUFDLENBQUM7QUFFSCxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxHQUFzQixFQUFFLENBQUMsQ0FBQztJQUMxRCxJQUFJLEVBQUUsVUFBVSxDQUFDLGtCQUFrQjtDQUNwQyxDQUFDLENBQUM7QUFFSCxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBRyxHQUFzQixFQUFFLENBQUMsQ0FBQztJQUMvRCxJQUFJLEVBQUUsVUFBVSxDQUFDLHdCQUF3QjtDQUMxQyxDQUFDLENBQUM7QUFFSCxNQUFNLENBQUMsTUFBTSwrQkFBK0IsR0FBRyxHQUFzQixFQUFFLENBQUMsQ0FBQztJQUN2RSxJQUFJLEVBQUUsVUFBVSxDQUFDLGdDQUFnQztDQUNsRCxDQUFDLENBQUM7QUFFSCxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxHQUFzQixFQUFFLENBQUMsQ0FBQztJQUN4RCxJQUFJLEVBQUUsVUFBVSxDQUFDLGlCQUFpQjtDQUNuQyxDQUFDLENBQUM7QUFFSCxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxHQUFzQixFQUFFLENBQUMsQ0FBQztJQUN6RCxJQUFJLEVBQUUsVUFBVSxDQUFDLGtCQUFrQjtDQUNwQyxDQUFDLENBQUM7QUFFSCxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxHQUFzQixFQUFFLENBQUMsQ0FBQztJQUN6RCxJQUFJLEVBQUUsVUFBVSxDQUFDLFlBQVk7Q0FDOUIsQ0FBQyxDQUFDO0FBRUgsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsR0FBc0IsRUFBRSxDQUFDLENBQUM7SUFDMUQsSUFBSSxFQUFFLFVBQVUsQ0FBQyxhQUFhO0NBQy9CLENBQUMsQ0FBQztBQUVILE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLENBQUMsT0FBdUIsRUFBcUIsRUFBRSxDQUFDLENBQUM7SUFDakYsSUFBSSxFQUFFLFVBQVUsQ0FBQyxrQkFBa0I7SUFDbkMsT0FBTztDQUNSLENBQUMsQ0FBQztBQUVILE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLENBQUMsT0FBaUIsRUFBcUIsRUFBRSxDQUFDLENBQUM7SUFDMUUsSUFBSSxFQUFFLFVBQVUsQ0FBQyxtQkFBbUI7SUFDcEMsT0FBTyxFQUFFLEVBQUUsT0FBTyxFQUFFO0NBQ3JCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEludGVncmF0aW9uQWN0aW9uLCBNZXRyaWMgfSBmcm9tICcuL3R5cGVzJztcblxuZXhwb3J0IGVudW0gRmxvd0FjdGlvbiB7XG4gIEZMT1dfQ09ORklHVVJFX1BST0RVQ1QgPSAnRkxPV19DT05GSUdVUkVfUFJPRFVDVCcsXG4gIEZMT1dfTkFWSUdBVEVfQkFDSyA9ICdGTE9XX05BVklHQVRFX0JBQ0snLFxuICBGTE9XX05BVklHQVRFX1RPX0NBVEFMT0cgPSAnRkxPV19OQVZJR0FURV9UT19DQVRBTE9HJyxcbiAgRkxPV19BUFBMWV9QUk9EVUNUX0NPTkZJR1VSQVRJT04gPSAnRkxPV19BUFBMWV9QUk9EVUNUX0NPTkZJR1VSQVRJT04nLFxuICBGTE9XX09QRU5fRE9DX0dFTiA9ICdGTE9XX09QRU5fRE9DX0dFTicsXG4gIEZMT1dfQ0xPU0VfRE9DX0dFTiA9ICdGTE9XX0NMT1NFX0RPQ19HRU4nLFxuICBGTE9XX1NXSVRDSF9PQkpFQ1QgPSAnRkxPV19TV0lUQ0hfT0JKRUNUJyxcbiAgUkVNT1RFX0FQUExZID0gJ1JFTU9URV9BUFBMWScsXG4gIFJFTU9URV9DQU5DRUwgPSAnUkVNT1RFX0NBTkNFTCcsXG4gIFNFVF9ERUZBVUxUX01FVFJJQ1MgPSAnU0VUX0RFRkFVTFRfTUVUUklDUycsXG59XG5cbmV4cG9ydCBjb25zdCBDb25maWd1cmVQcm9kdWN0QWN0aW9uID0gKHtcbiAgbGluZUl0ZW1JZCxcbiAgcHJvZHVjdElkLFxufToge1xuICBsaW5lSXRlbUlkPzogc3RyaW5nO1xuICBwcm9kdWN0SWQ/OiBzdHJpbmc7XG59KTogSW50ZWdyYXRpb25BY3Rpb24gPT4gKHtcbiAgdHlwZTogRmxvd0FjdGlvbi5GTE9XX0NPTkZJR1VSRV9QUk9EVUNULFxuICBwYXlsb2FkOiB7IGxpbmVJdGVtSWQsIHByb2R1Y3RJZCB9LFxufSk7XG5cbmV4cG9ydCBjb25zdCBOYXZpZ2F0ZUJhY2tBY3Rpb24gPSAoKTogSW50ZWdyYXRpb25BY3Rpb24gPT4gKHtcbiAgdHlwZTogRmxvd0FjdGlvbi5GTE9XX05BVklHQVRFX0JBQ0ssXG59KTtcblxuZXhwb3J0IGNvbnN0IE5hdmlnYXRlVG9DYXRhbG9nQWN0aW9uID0gKCk6IEludGVncmF0aW9uQWN0aW9uID0+ICh7XG4gIHR5cGU6IEZsb3dBY3Rpb24uRkxPV19OQVZJR0FURV9UT19DQVRBTE9HLFxufSk7XG5cbmV4cG9ydCBjb25zdCBBcHBseVByb2R1Y3RDb25maWd1cmF0aW9uQWN0aW9uID0gKCk6IEludGVncmF0aW9uQWN0aW9uID0+ICh7XG4gIHR5cGU6IEZsb3dBY3Rpb24uRkxPV19BUFBMWV9QUk9EVUNUX0NPTkZJR1VSQVRJT04sXG59KTtcblxuZXhwb3J0IGNvbnN0IE9wZW5Eb2NHZW5BY3Rpb24gPSAoKTogSW50ZWdyYXRpb25BY3Rpb24gPT4gKHtcbiAgdHlwZTogRmxvd0FjdGlvbi5GTE9XX09QRU5fRE9DX0dFTixcbn0pO1xuXG5leHBvcnQgY29uc3QgQ2xvc2VEb2NHZW5BY3Rpb24gPSAoKTogSW50ZWdyYXRpb25BY3Rpb24gPT4gKHtcbiAgdHlwZTogRmxvd0FjdGlvbi5GTE9XX0NMT1NFX0RPQ19HRU4sXG59KTtcblxuZXhwb3J0IGNvbnN0IFJlbW90ZUFwcGx5QWN0aW9uID0gKCk6IEludGVncmF0aW9uQWN0aW9uID0+ICh7XG4gIHR5cGU6IEZsb3dBY3Rpb24uUkVNT1RFX0FQUExZLFxufSk7XG5cbmV4cG9ydCBjb25zdCBSZW1vdGVDYW5jZWxBY3Rpb24gPSAoKTogSW50ZWdyYXRpb25BY3Rpb24gPT4gKHtcbiAgdHlwZTogRmxvd0FjdGlvbi5SRU1PVEVfQ0FOQ0VMLFxufSk7XG5cbmV4cG9ydCBjb25zdCBTd2l0Y2hPYmplY3RBY3Rpb24gPSAocGF5bG9hZDogeyBpZDogc3RyaW5nIH0pOiBJbnRlZ3JhdGlvbkFjdGlvbiA9PiAoe1xuICB0eXBlOiBGbG93QWN0aW9uLkZMT1dfU1dJVENIX09CSkVDVCxcbiAgcGF5bG9hZCxcbn0pO1xuXG5leHBvcnQgY29uc3QgU2V0RGVmYXVsdE1ldHJpY3MgPSAobWV0cmljczogTWV0cmljW10pOiBJbnRlZ3JhdGlvbkFjdGlvbiA9PiAoe1xuICB0eXBlOiBGbG93QWN0aW9uLlNFVF9ERUZBVUxUX01FVFJJQ1MsXG4gIHBheWxvYWQ6IHsgbWV0cmljcyB9LFxufSk7XG4iXX0=
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY21zLmFjdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL3Nkay9jbXMvY21zLmFjdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxDQUFOLElBQVksVUFVWDtBQVZELFdBQVksVUFBVTtJQUNwQiwrREFBaUQsQ0FBQTtJQUNqRCx1REFBeUMsQ0FBQTtJQUN6QyxtRUFBcUQsQ0FBQTtJQUNyRCxtRkFBcUUsQ0FBQTtJQUNyRSxxREFBdUMsQ0FBQTtJQUN2Qyx1REFBeUMsQ0FBQTtJQUN6Qyx1REFBeUMsQ0FBQTtJQUN6QywyQ0FBNkIsQ0FBQTtJQUM3Qiw2Q0FBK0IsQ0FBQTtBQUNqQyxDQUFDLEVBVlcsVUFBVSxLQUFWLFVBQVUsUUFVckI7QUFFRCxNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FBRyxDQUFDLEVBQ3JDLFVBQVUsRUFDVixTQUFTLEdBSVYsRUFBcUIsRUFBRSxDQUFDLENBQUM7SUFDeEIsSUFBSSxFQUFFLFVBQVUsQ0FBQyxzQkFBc0I7SUFDdkMsT0FBTyxFQUFFLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRTtDQUNuQyxDQUFDLENBQUM7QUFFSCxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxHQUFzQixFQUFFLENBQUMsQ0FBQztJQUMxRCxJQUFJLEVBQUUsVUFBVSxDQUFDLGtCQUFrQjtDQUNwQyxDQUFDLENBQUM7QUFFSCxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBRyxHQUFzQixFQUFFLENBQUMsQ0FBQztJQUMvRCxJQUFJLEVBQUUsVUFBVSxDQUFDLHdCQUF3QjtDQUMxQyxDQUFDLENBQUM7QUFFSCxNQUFNLENBQUMsTUFBTSwrQkFBK0IsR0FBRyxHQUFzQixFQUFFLENBQUMsQ0FBQztJQUN2RSxJQUFJLEVBQUUsVUFBVSxDQUFDLGdDQUFnQztDQUNsRCxDQUFDLENBQUM7QUFFSCxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxHQUFzQixFQUFFLENBQUMsQ0FBQztJQUN4RCxJQUFJLEVBQUUsVUFBVSxDQUFDLGlCQUFpQjtDQUNuQyxDQUFDLENBQUM7QUFFSCxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxHQUFzQixFQUFFLENBQUMsQ0FBQztJQUN6RCxJQUFJLEVBQUUsVUFBVSxDQUFDLGtCQUFrQjtDQUNwQyxDQUFDLENBQUM7QUFFSCxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxHQUFzQixFQUFFLENBQUMsQ0FBQztJQUN6RCxJQUFJLEVBQUUsVUFBVSxDQUFDLFlBQVk7Q0FDOUIsQ0FBQyxDQUFDO0FBRUgsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsR0FBc0IsRUFBRSxDQUFDLENBQUM7SUFDMUQsSUFBSSxFQUFFLFVBQVUsQ0FBQyxhQUFhO0NBQy9CLENBQUMsQ0FBQztBQUVILE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLENBQUMsT0FBdUIsRUFBcUIsRUFBRSxDQUFDLENBQUM7SUFDakYsSUFBSSxFQUFFLFVBQVUsQ0FBQyxrQkFBa0I7SUFDbkMsT0FBTztDQUNSLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEludGVncmF0aW9uQWN0aW9uIH0gZnJvbSAnLi90eXBlcyc7XG5cbmV4cG9ydCBlbnVtIEZsb3dBY3Rpb24ge1xuICBGTE9XX0NPTkZJR1VSRV9QUk9EVUNUID0gJ0ZMT1dfQ09ORklHVVJFX1BST0RVQ1QnLFxuICBGTE9XX05BVklHQVRFX0JBQ0sgPSAnRkxPV19OQVZJR0FURV9CQUNLJyxcbiAgRkxPV19OQVZJR0FURV9UT19DQVRBTE9HID0gJ0ZMT1dfTkFWSUdBVEVfVE9fQ0FUQUxPRycsXG4gIEZMT1dfQVBQTFlfUFJPRFVDVF9DT05GSUdVUkFUSU9OID0gJ0ZMT1dfQVBQTFlfUFJPRFVDVF9DT05GSUdVUkFUSU9OJyxcbiAgRkxPV19PUEVOX0RPQ19HRU4gPSAnRkxPV19PUEVOX0RPQ19HRU4nLFxuICBGTE9XX0NMT1NFX0RPQ19HRU4gPSAnRkxPV19DTE9TRV9ET0NfR0VOJyxcbiAgRkxPV19TV0lUQ0hfT0JKRUNUID0gJ0ZMT1dfU1dJVENIX09CSkVDVCcsXG4gIFJFTU9URV9BUFBMWSA9ICdSRU1PVEVfQVBQTFknLFxuICBSRU1PVEVfQ0FOQ0VMID0gJ1JFTU9URV9DQU5DRUwnLFxufVxuXG5leHBvcnQgY29uc3QgQ29uZmlndXJlUHJvZHVjdEFjdGlvbiA9ICh7XG4gIGxpbmVJdGVtSWQsXG4gIHByb2R1Y3RJZCxcbn06IHtcbiAgbGluZUl0ZW1JZD86IHN0cmluZztcbiAgcHJvZHVjdElkPzogc3RyaW5nO1xufSk6IEludGVncmF0aW9uQWN0aW9uID0+ICh7XG4gIHR5cGU6IEZsb3dBY3Rpb24uRkxPV19DT05GSUdVUkVfUFJPRFVDVCxcbiAgcGF5bG9hZDogeyBsaW5lSXRlbUlkLCBwcm9kdWN0SWQgfSxcbn0pO1xuXG5leHBvcnQgY29uc3QgTmF2aWdhdGVCYWNrQWN0aW9uID0gKCk6IEludGVncmF0aW9uQWN0aW9uID0+ICh7XG4gIHR5cGU6IEZsb3dBY3Rpb24uRkxPV19OQVZJR0FURV9CQUNLLFxufSk7XG5cbmV4cG9ydCBjb25zdCBOYXZpZ2F0ZVRvQ2F0YWxvZ0FjdGlvbiA9ICgpOiBJbnRlZ3JhdGlvbkFjdGlvbiA9PiAoe1xuICB0eXBlOiBGbG93QWN0aW9uLkZMT1dfTkFWSUdBVEVfVE9fQ0FUQUxPRyxcbn0pO1xuXG5leHBvcnQgY29uc3QgQXBwbHlQcm9kdWN0Q29uZmlndXJhdGlvbkFjdGlvbiA9ICgpOiBJbnRlZ3JhdGlvbkFjdGlvbiA9PiAoe1xuICB0eXBlOiBGbG93QWN0aW9uLkZMT1dfQVBQTFlfUFJPRFVDVF9DT05GSUdVUkFUSU9OLFxufSk7XG5cbmV4cG9ydCBjb25zdCBPcGVuRG9jR2VuQWN0aW9uID0gKCk6IEludGVncmF0aW9uQWN0aW9uID0+ICh7XG4gIHR5cGU6IEZsb3dBY3Rpb24uRkxPV19PUEVOX0RPQ19HRU4sXG59KTtcblxuZXhwb3J0IGNvbnN0IENsb3NlRG9jR2VuQWN0aW9uID0gKCk6IEludGVncmF0aW9uQWN0aW9uID0+ICh7XG4gIHR5cGU6IEZsb3dBY3Rpb24uRkxPV19DTE9TRV9ET0NfR0VOLFxufSk7XG5cbmV4cG9ydCBjb25zdCBSZW1vdGVBcHBseUFjdGlvbiA9ICgpOiBJbnRlZ3JhdGlvbkFjdGlvbiA9PiAoe1xuICB0eXBlOiBGbG93QWN0aW9uLlJFTU9URV9BUFBMWSxcbn0pO1xuXG5leHBvcnQgY29uc3QgUmVtb3RlQ2FuY2VsQWN0aW9uID0gKCk6IEludGVncmF0aW9uQWN0aW9uID0+ICh7XG4gIHR5cGU6IEZsb3dBY3Rpb24uUkVNT1RFX0NBTkNFTCxcbn0pO1xuXG5leHBvcnQgY29uc3QgU3dpdGNoT2JqZWN0QWN0aW9uID0gKHBheWxvYWQ6IHsgaWQ6IHN0cmluZyB9KTogSW50ZWdyYXRpb25BY3Rpb24gPT4gKHtcbiAgdHlwZTogRmxvd0FjdGlvbi5GTE9XX1NXSVRDSF9PQkpFQ1QsXG4gIHBheWxvYWQsXG59KTtcbiJdfQ==
@@ -1,16 +1,32 @@
1
1
  import { ChangeDetectionStrategy, Component } from '@angular/core';
2
+ import { combineLatest, map, of, Subject, takeUntil } from 'rxjs';
2
3
  import * as i0 from "@angular/core";
3
4
  import * as i1 from "../../services/element-context.service";
4
- import * as i2 from "../element-renderer/element-renderer.component";
5
+ import * as i2 from "../../modules/runtime/services/runtime.service";
6
+ import * as i3 from "../../modules/runtime/services/runtime-editor.service";
7
+ import * as i4 from "../element-drop-handle/element-drop-handle.component";
8
+ import * as i5 from "../element-renderer/element-renderer.component";
5
9
  export class ElementChildrenComponent {
6
- constructor(elementContext) {
10
+ constructor(elementContext, runtimeService, runtimeEditorService, cdr) {
11
+ var _a, _b;
7
12
  this.elementContext = elementContext;
8
- this.metadata = this.elementContext.metadata;
13
+ this.runtimeService = runtimeService;
14
+ this.runtimeEditorService = runtimeEditorService;
15
+ this.cdr = cdr;
16
+ this.destroyed$ = new Subject();
17
+ const path = (_b = (_a = this.elementContext) === null || _a === void 0 ? void 0 : _a.metadata) === null || _b === void 0 ? void 0 : _b.path;
18
+ this.metadata$ = path ? this.runtimeService.getCompiledElement$(path) : of(undefined);
19
+ this.dragMode$ = combineLatest([this.runtimeEditorService.editorMode$, this.runtimeEditorService.dragMode$]).pipe(map(flags => flags.every(Boolean)));
20
+ this.runtimeService.updated$.pipe(takeUntil(this.destroyed$)).subscribe(() => this.cdr.detectChanges());
21
+ }
22
+ ngOnDestroy() {
23
+ this.destroyed$.next();
24
+ this.destroyed$.complete();
9
25
  }
10
26
  }
11
- ElementChildrenComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ElementChildrenComponent, deps: [{ token: i1.ElementContextService }], target: i0.ɵɵFactoryTarget.Component });
12
- ElementChildrenComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: ElementChildrenComponent, selector: "element-children", ngImport: i0, template: "<ng-container *ngIf=\"metadata?.children.length\">\n <ng-container *ngFor=\"let child of metadata.children\">\n <vl-cms-element-renderer [meta]=\"child\"></vl-cms-element-renderer>\n </ng-container>\n</ng-container>\n", styles: [":host{display:contents}\n"], components: [{ type: i2.ElementRendererComponent, selector: "vl-cms-element-renderer", inputs: ["meta"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
13
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ElementChildrenComponent, decorators: [{
27
+ ElementChildrenComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ElementChildrenComponent, deps: [{ token: i1.ElementContextService }, { token: i2.RuntimeService }, { token: i3.RuntimeEditorService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
28
+ ElementChildrenComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: ElementChildrenComponent, selector: "element-children", ngImport: i0, template: "<ng-container *ngIf=\"metadata$ | async as metadata\">\n <vl-element-drop-handle *ngIf=\"dragMode$ | async\" [index]=\"0\" [parentPath]=\"metadata.path\"></vl-element-drop-handle>\n <ng-container *ngFor=\"let child of metadata.children; let i = index\">\n <vl-cms-element-renderer [meta]=\"child\"></vl-cms-element-renderer>\n <vl-element-drop-handle\n *ngIf=\"dragMode$ | async\"\n [index]=\"i + 1\"\n [parentPath]=\"metadata.path\"\n ></vl-element-drop-handle>\n </ng-container>\n</ng-container>\n", styles: [":host{display:contents}\n"], components: [{ type: i4.ElementDropHandleComponent, selector: "vl-element-drop-handle", inputs: ["index", "parentPath"] }, { type: i5.ElementRendererComponent, selector: "vl-cms-element-renderer", inputs: ["meta"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
29
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ElementChildrenComponent, decorators: [{
14
30
  type: Component,
15
31
  args: [{
16
32
  // eslint-disable-next-line @angular-eslint/component-selector
@@ -19,5 +35,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImpo
19
35
  styleUrls: ['./element-children.component.scss'],
20
36
  changeDetection: ChangeDetectionStrategy.OnPush,
21
37
  }]
22
- }], ctorParameters: function () { return [{ type: i1.ElementContextService }]; } });
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxlbWVudC1jaGlsZHJlbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3Nkay9jbXMvY29tcG9uZW50cy9lbGVtZW50LWNoaWxkcmVuL2VsZW1lbnQtY2hpbGRyZW4uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zZGsvY21zL2NvbXBvbmVudHMvZWxlbWVudC1jaGlsZHJlbi9lbGVtZW50LWNoaWxkcmVuLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7QUFXbkUsTUFBTSxPQUFPLHdCQUF3QjtJQUduQyxZQUFvQixjQUFxQztRQUFyQyxtQkFBYyxHQUFkLGNBQWMsQ0FBdUI7UUFDdkQsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQztJQUMvQyxDQUFDOztzSEFMVSx3QkFBd0I7MEdBQXhCLHdCQUF3Qix3RENYckMsZ09BS0E7NEZETWEsd0JBQXdCO2tCQVBwQyxTQUFTO21CQUFDO29CQUNULDhEQUE4RDtvQkFDOUQsUUFBUSxFQUFFLGtCQUFrQjtvQkFDNUIsV0FBVyxFQUFFLGlDQUFpQztvQkFDOUMsU0FBUyxFQUFFLENBQUMsbUNBQW1DLENBQUM7b0JBQ2hELGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2lCQUNoRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEVsZW1lbnRDb250ZXh0U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2VsZW1lbnQtY29udGV4dC5zZXJ2aWNlJztcbmltcG9ydCB7IEVsZW1lbnRNZXRhZGF0YSB9IGZyb20gJy4uLy4uL3R5cGVzL2NvbW1vbi50eXBlcyc7XG5cbkBDb21wb25lbnQoe1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2NvbXBvbmVudC1zZWxlY3RvclxuICBzZWxlY3RvcjogJ2VsZW1lbnQtY2hpbGRyZW4nLFxuICB0ZW1wbGF0ZVVybDogJ2VsZW1lbnQtY2hpbGRyZW4uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9lbGVtZW50LWNoaWxkcmVuLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBFbGVtZW50Q2hpbGRyZW5Db21wb25lbnQge1xuICBwdWJsaWMgbWV0YWRhdGE/OiBFbGVtZW50TWV0YWRhdGE7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBlbGVtZW50Q29udGV4dDogRWxlbWVudENvbnRleHRTZXJ2aWNlKSB7XG4gICAgdGhpcy5tZXRhZGF0YSA9IHRoaXMuZWxlbWVudENvbnRleHQubWV0YWRhdGE7XG4gIH1cbn1cbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJtZXRhZGF0YT8uY2hpbGRyZW4ubGVuZ3RoXCI+XG4gIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGNoaWxkIG9mIG1ldGFkYXRhLmNoaWxkcmVuXCI+XG4gICAgPHZsLWNtcy1lbGVtZW50LXJlbmRlcmVyIFttZXRhXT1cImNoaWxkXCI+PC92bC1jbXMtZWxlbWVudC1yZW5kZXJlcj5cbiAgPC9uZy1jb250YWluZXI+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
38
+ }], ctorParameters: function () { return [{ type: i1.ElementContextService }, { type: i2.RuntimeService }, { type: i3.RuntimeEditorService }, { type: i0.ChangeDetectorRef }]; } });
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxlbWVudC1jaGlsZHJlbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3Nkay9jbXMvY29tcG9uZW50cy9lbGVtZW50LWNoaWxkcmVuL2VsZW1lbnQtY2hpbGRyZW4uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zZGsvY21zL2NvbXBvbmVudHMvZWxlbWVudC1jaGlsZHJlbi9lbGVtZW50LWNoaWxkcmVuLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBcUIsU0FBUyxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQ2pHLE9BQU8sRUFBRSxhQUFhLEVBQUUsR0FBRyxFQUFjLEVBQUUsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7Ozs7O0FBYTlFLE1BQU0sT0FBTyx3QkFBd0I7SUFNbkMsWUFDVSxjQUFxQyxFQUNyQyxjQUE4QixFQUM5QixvQkFBMEMsRUFDMUMsR0FBc0I7O1FBSHRCLG1CQUFjLEdBQWQsY0FBYyxDQUF1QjtRQUNyQyxtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDOUIseUJBQW9CLEdBQXBCLG9CQUFvQixDQUFzQjtRQUMxQyxRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQU54QixlQUFVLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQVF2QyxNQUFNLElBQUksR0FBRyxNQUFBLE1BQUEsSUFBSSxDQUFDLGNBQWMsMENBQUUsUUFBUSwwQ0FBRSxJQUFJLENBQUM7UUFDakQsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUV0RixJQUFJLENBQUMsU0FBUyxHQUFHLGFBQWEsQ0FBQyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLG9CQUFvQixDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUMvRyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQ25DLENBQUM7UUFDRixJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxDQUFDLENBQUM7SUFDMUcsQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUN2QixJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzdCLENBQUM7O3NIQXhCVSx3QkFBd0I7MEdBQXhCLHdCQUF3Qix3RENkckMsZ2hCQVdBOzRGREdhLHdCQUF3QjtrQkFQcEMsU0FBUzttQkFBQztvQkFDVCw4REFBOEQ7b0JBQzlELFFBQVEsRUFBRSxrQkFBa0I7b0JBQzVCLFdBQVcsRUFBRSxpQ0FBaUM7b0JBQzlDLFNBQVMsRUFBRSxDQUFDLG1DQUFtQyxDQUFDO29CQUNoRCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtpQkFDaEQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBjb21iaW5lTGF0ZXN0LCBtYXAsIE9ic2VydmFibGUsIG9mLCBTdWJqZWN0LCB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFJ1bnRpbWVFZGl0b3JTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vbW9kdWxlcy9ydW50aW1lL3NlcnZpY2VzL3J1bnRpbWUtZWRpdG9yLnNlcnZpY2UnO1xuaW1wb3J0IHsgUnVudGltZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9tb2R1bGVzL3J1bnRpbWUvc2VydmljZXMvcnVudGltZS5zZXJ2aWNlJztcbmltcG9ydCB7IEVsZW1lbnRDb250ZXh0U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2VsZW1lbnQtY29udGV4dC5zZXJ2aWNlJztcbmltcG9ydCB7IEVsZW1lbnRNZXRhZGF0YSB9IGZyb20gJy4uLy4uL3R5cGVzL2NvbW1vbi50eXBlcyc7XG5cbkBDb21wb25lbnQoe1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2NvbXBvbmVudC1zZWxlY3RvclxuICBzZWxlY3RvcjogJ2VsZW1lbnQtY2hpbGRyZW4nLFxuICB0ZW1wbGF0ZVVybDogJ2VsZW1lbnQtY2hpbGRyZW4uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9lbGVtZW50LWNoaWxkcmVuLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBFbGVtZW50Q2hpbGRyZW5Db21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICBwdWJsaWMgbWV0YWRhdGEkOiBPYnNlcnZhYmxlPEVsZW1lbnRNZXRhZGF0YSB8IHVuZGVmaW5lZD47XG4gIHB1YmxpYyBkcmFnTW9kZSQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG5cbiAgcHJpdmF0ZSBkZXN0cm95ZWQkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGVsZW1lbnRDb250ZXh0OiBFbGVtZW50Q29udGV4dFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBydW50aW1lU2VydmljZTogUnVudGltZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBydW50aW1lRWRpdG9yU2VydmljZTogUnVudGltZUVkaXRvclNlcnZpY2UsXG4gICAgcHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICApIHtcbiAgICBjb25zdCBwYXRoID0gdGhpcy5lbGVtZW50Q29udGV4dD8ubWV0YWRhdGE/LnBhdGg7XG4gICAgdGhpcy5tZXRhZGF0YSQgPSBwYXRoID8gdGhpcy5ydW50aW1lU2VydmljZS5nZXRDb21waWxlZEVsZW1lbnQkKHBhdGgpIDogb2YodW5kZWZpbmVkKTtcblxuICAgIHRoaXMuZHJhZ01vZGUkID0gY29tYmluZUxhdGVzdChbdGhpcy5ydW50aW1lRWRpdG9yU2VydmljZS5lZGl0b3JNb2RlJCwgdGhpcy5ydW50aW1lRWRpdG9yU2VydmljZS5kcmFnTW9kZSRdKS5waXBlKFxuICAgICAgbWFwKGZsYWdzID0+IGZsYWdzLmV2ZXJ5KEJvb2xlYW4pKSxcbiAgICApO1xuICAgIHRoaXMucnVudGltZVNlcnZpY2UudXBkYXRlZCQucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95ZWQkKSkuc3Vic2NyaWJlKCgpID0+IHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKSk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5kZXN0cm95ZWQkLm5leHQoKTtcbiAgICB0aGlzLmRlc3Ryb3llZCQuY29tcGxldGUoKTtcbiAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cIm1ldGFkYXRhJCB8IGFzeW5jIGFzIG1ldGFkYXRhXCI+XG4gIDx2bC1lbGVtZW50LWRyb3AtaGFuZGxlICpuZ0lmPVwiZHJhZ01vZGUkIHwgYXN5bmNcIiBbaW5kZXhdPVwiMFwiIFtwYXJlbnRQYXRoXT1cIm1ldGFkYXRhLnBhdGhcIj48L3ZsLWVsZW1lbnQtZHJvcC1oYW5kbGU+XG4gIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGNoaWxkIG9mIG1ldGFkYXRhLmNoaWxkcmVuOyBsZXQgaSA9IGluZGV4XCI+XG4gICAgPHZsLWNtcy1lbGVtZW50LXJlbmRlcmVyIFttZXRhXT1cImNoaWxkXCI+PC92bC1jbXMtZWxlbWVudC1yZW5kZXJlcj5cbiAgICA8dmwtZWxlbWVudC1kcm9wLWhhbmRsZVxuICAgICAgKm5nSWY9XCJkcmFnTW9kZSQgfCBhc3luY1wiXG4gICAgICBbaW5kZXhdPVwiaSArIDFcIlxuICAgICAgW3BhcmVudFBhdGhdPVwibWV0YWRhdGEucGF0aFwiXG4gICAgPjwvdmwtZWxlbWVudC1kcm9wLWhhbmRsZT5cbiAgPC9uZy1jb250YWluZXI+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
@@ -1,18 +1,20 @@
1
1
  import { NgModule } from '@angular/core';
2
+ import { LetDirectiveModule } from '@veloceapps/components';
3
+ import { ElementDropHandleModule } from '../element-drop-handle/element-drop-handle.module';
2
4
  import { ElementRendererModule } from '../element-renderer/element-renderer.module';
3
5
  import { ElementChildrenComponent } from './element-children.component';
4
6
  import * as i0 from "@angular/core";
5
7
  export class ElementChildrenModule {
6
8
  }
7
- ElementChildrenModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ElementChildrenModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
8
- ElementChildrenModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ElementChildrenModule, declarations: [ElementChildrenComponent], imports: [ElementRendererModule], exports: [ElementChildrenComponent] });
9
- ElementChildrenModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ElementChildrenModule, imports: [[ElementRendererModule]] });
10
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ElementChildrenModule, decorators: [{
9
+ ElementChildrenModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ElementChildrenModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
10
+ ElementChildrenModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ElementChildrenModule, declarations: [ElementChildrenComponent], imports: [LetDirectiveModule, ElementRendererModule, ElementDropHandleModule], exports: [ElementChildrenComponent] });
11
+ ElementChildrenModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ElementChildrenModule, imports: [[LetDirectiveModule, ElementRendererModule, ElementDropHandleModule]] });
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ElementChildrenModule, decorators: [{
11
13
  type: NgModule,
12
14
  args: [{
13
15
  declarations: [ElementChildrenComponent],
14
- imports: [ElementRendererModule],
16
+ imports: [LetDirectiveModule, ElementRendererModule, ElementDropHandleModule],
15
17
  exports: [ElementChildrenComponent],
16
18
  }]
17
19
  }] });
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxlbWVudC1jaGlsZHJlbi5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3Nkay9jbXMvY29tcG9uZW50cy9lbGVtZW50LWNoaWxkcmVuL2VsZW1lbnQtY2hpbGRyZW4ubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDcEYsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sOEJBQThCLENBQUM7O0FBT3hFLE1BQU0sT0FBTyxxQkFBcUI7O21IQUFyQixxQkFBcUI7b0hBQXJCLHFCQUFxQixpQkFKakIsd0JBQXdCLGFBQzdCLHFCQUFxQixhQUNyQix3QkFBd0I7b0hBRXZCLHFCQUFxQixZQUh2QixDQUFDLHFCQUFxQixDQUFDOzRGQUdyQixxQkFBcUI7a0JBTGpDLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUMsd0JBQXdCLENBQUM7b0JBQ3hDLE9BQU8sRUFBRSxDQUFDLHFCQUFxQixDQUFDO29CQUNoQyxPQUFPLEVBQUUsQ0FBQyx3QkFBd0IsQ0FBQztpQkFDcEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRWxlbWVudFJlbmRlcmVyTW9kdWxlIH0gZnJvbSAnLi4vZWxlbWVudC1yZW5kZXJlci9lbGVtZW50LXJlbmRlcmVyLm1vZHVsZSc7XG5pbXBvcnQgeyBFbGVtZW50Q2hpbGRyZW5Db21wb25lbnQgfSBmcm9tICcuL2VsZW1lbnQtY2hpbGRyZW4uY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbRWxlbWVudENoaWxkcmVuQ29tcG9uZW50XSxcbiAgaW1wb3J0czogW0VsZW1lbnRSZW5kZXJlck1vZHVsZV0sXG4gIGV4cG9ydHM6IFtFbGVtZW50Q2hpbGRyZW5Db21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBFbGVtZW50Q2hpbGRyZW5Nb2R1bGUge31cbiJdfQ==
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxlbWVudC1jaGlsZHJlbi5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3Nkay9jbXMvY29tcG9uZW50cy9lbGVtZW50LWNoaWxkcmVuL2VsZW1lbnQtY2hpbGRyZW4ubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDNUQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFDNUYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDcEYsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sOEJBQThCLENBQUM7O0FBT3hFLE1BQU0sT0FBTyxxQkFBcUI7O21IQUFyQixxQkFBcUI7b0hBQXJCLHFCQUFxQixpQkFKakIsd0JBQXdCLGFBQzdCLGtCQUFrQixFQUFFLHFCQUFxQixFQUFFLHVCQUF1QixhQUNsRSx3QkFBd0I7b0hBRXZCLHFCQUFxQixZQUh2QixDQUFDLGtCQUFrQixFQUFFLHFCQUFxQixFQUFFLHVCQUF1QixDQUFDOzRGQUdsRSxxQkFBcUI7a0JBTGpDLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUMsd0JBQXdCLENBQUM7b0JBQ3hDLE9BQU8sRUFBRSxDQUFDLGtCQUFrQixFQUFFLHFCQUFxQixFQUFFLHVCQUF1QixDQUFDO29CQUM3RSxPQUFPLEVBQUUsQ0FBQyx3QkFBd0IsQ0FBQztpQkFDcEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTGV0RGlyZWN0aXZlTW9kdWxlIH0gZnJvbSAnQHZlbG9jZWFwcHMvY29tcG9uZW50cyc7XG5pbXBvcnQgeyBFbGVtZW50RHJvcEhhbmRsZU1vZHVsZSB9IGZyb20gJy4uL2VsZW1lbnQtZHJvcC1oYW5kbGUvZWxlbWVudC1kcm9wLWhhbmRsZS5tb2R1bGUnO1xuaW1wb3J0IHsgRWxlbWVudFJlbmRlcmVyTW9kdWxlIH0gZnJvbSAnLi4vZWxlbWVudC1yZW5kZXJlci9lbGVtZW50LXJlbmRlcmVyLm1vZHVsZSc7XG5pbXBvcnQgeyBFbGVtZW50Q2hpbGRyZW5Db21wb25lbnQgfSBmcm9tICcuL2VsZW1lbnQtY2hpbGRyZW4uY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbRWxlbWVudENoaWxkcmVuQ29tcG9uZW50XSxcbiAgaW1wb3J0czogW0xldERpcmVjdGl2ZU1vZHVsZSwgRWxlbWVudFJlbmRlcmVyTW9kdWxlLCBFbGVtZW50RHJvcEhhbmRsZU1vZHVsZV0sXG4gIGV4cG9ydHM6IFtFbGVtZW50Q2hpbGRyZW5Db21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBFbGVtZW50Q2hpbGRyZW5Nb2R1bGUge31cbiJdfQ==
@@ -0,0 +1,32 @@
1
+ import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "../../modules/runtime/services/runtime-editor.service";
4
+ import * as i2 from "ngx-drag-drop";
5
+ export class ElementDropHandleComponent {
6
+ constructor(runtimeService) {
7
+ this.runtimeService = runtimeService;
8
+ }
9
+ handleDrop(e) {
10
+ this.runtimeService.elementDropped$.next({
11
+ element: e.data,
12
+ index: this.index,
13
+ path: this.parentPath,
14
+ });
15
+ }
16
+ }
17
+ ElementDropHandleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ElementDropHandleComponent, deps: [{ token: i1.RuntimeEditorService }], target: i0.ɵɵFactoryTarget.Component });
18
+ ElementDropHandleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: ElementDropHandleComponent, selector: "vl-element-drop-handle", inputs: { index: "index", parentPath: "parentPath" }, ngImport: i0, template: "<div class=\"container\" dndDropzone (dndDrop)=\"handleDrop($event)\">\n <div class=\"handle\"></div>\n</div>\n", styles: [":host{width:0;position:relative}.container{width:40px;height:100%;position:absolute;transform:translate(-50%);display:flex;justify-content:center;align-items:center}.handle{display:none;background:red;height:calc(100% - 10px);width:2px;pointer-events:none}.container.dndDragover .handle{display:block}\n"], directives: [{ type: i2.DndDropzoneDirective, selector: "[dndDropzone]", inputs: ["dndDropzone", "dndEffectAllowed", "dndAllowExternal", "dndHorizontal", "dndDragoverClass", "dndDropzoneDisabledClass", "dndDisableIf", "dndDisableDropIf"], outputs: ["dndDragover", "dndDrop"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
19
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ElementDropHandleComponent, decorators: [{
20
+ type: Component,
21
+ args: [{
22
+ selector: 'vl-element-drop-handle',
23
+ templateUrl: './element-drop-handle.component.html',
24
+ styleUrls: ['./element-drop-handle.component.scss'],
25
+ changeDetection: ChangeDetectionStrategy.OnPush,
26
+ }]
27
+ }], ctorParameters: function () { return [{ type: i1.RuntimeEditorService }]; }, propDecorators: { index: [{
28
+ type: Input
29
+ }], parentPath: [{
30
+ type: Input
31
+ }] } });
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxlbWVudC1kcm9wLWhhbmRsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3Nkay9jbXMvY29tcG9uZW50cy9lbGVtZW50LWRyb3AtaGFuZGxlL2VsZW1lbnQtZHJvcC1oYW5kbGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zZGsvY21zL2NvbXBvbmVudHMvZWxlbWVudC1kcm9wLWhhbmRsZS9lbGVtZW50LWRyb3AtaGFuZGxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7O0FBVzFFLE1BQU0sT0FBTywwQkFBMEI7SUFJckMsWUFBb0IsY0FBb0M7UUFBcEMsbUJBQWMsR0FBZCxjQUFjLENBQXNCO0lBQUcsQ0FBQztJQUVyRCxVQUFVLENBQUMsQ0FBZTtRQUMvQixJQUFJLENBQUMsY0FBYyxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUM7WUFDdkMsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUF1QjtZQUNsQyxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7WUFDakIsSUFBSSxFQUFFLElBQUksQ0FBQyxVQUFVO1NBQ3RCLENBQUMsQ0FBQztJQUNMLENBQUM7O3dIQVpVLDBCQUEwQjs0R0FBMUIsMEJBQTBCLG9IQ1h2QyxrSEFHQTs0RkRRYSwwQkFBMEI7a0JBTnRDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHdCQUF3QjtvQkFDbEMsV0FBVyxFQUFFLHNDQUFzQztvQkFDbkQsU0FBUyxFQUFFLENBQUMsc0NBQXNDLENBQUM7b0JBQ25ELGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2lCQUNoRDsyR0FFaUIsS0FBSztzQkFBcEIsS0FBSztnQkFDVSxVQUFVO3NCQUF6QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERuZERyb3BFdmVudCB9IGZyb20gJ25neC1kcmFnLWRyb3AnO1xuaW1wb3J0IHsgUnVudGltZUVkaXRvclNlcnZpY2UgfSBmcm9tICcuLi8uLi9tb2R1bGVzL3J1bnRpbWUvc2VydmljZXMvcnVudGltZS1lZGl0b3Iuc2VydmljZSc7XG5pbXBvcnQgeyBFbGVtZW50TWV0YWRhdGEgfSBmcm9tICcuLi8uLi90eXBlcy9jb21tb24udHlwZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2bC1lbGVtZW50LWRyb3AtaGFuZGxlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2VsZW1lbnQtZHJvcC1oYW5kbGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9lbGVtZW50LWRyb3AtaGFuZGxlLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBFbGVtZW50RHJvcEhhbmRsZUNvbXBvbmVudCB7XG4gIEBJbnB1dCgpIHB1YmxpYyBpbmRleCE6IG51bWJlcjtcbiAgQElucHV0KCkgcHVibGljIHBhcmVudFBhdGghOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBydW50aW1lU2VydmljZTogUnVudGltZUVkaXRvclNlcnZpY2UpIHt9XG5cbiAgcHVibGljIGhhbmRsZURyb3AoZTogRG5kRHJvcEV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5ydW50aW1lU2VydmljZS5lbGVtZW50RHJvcHBlZCQubmV4dCh7XG4gICAgICBlbGVtZW50OiBlLmRhdGEgYXMgRWxlbWVudE1ldGFkYXRhLFxuICAgICAgaW5kZXg6IHRoaXMuaW5kZXgsXG4gICAgICBwYXRoOiB0aGlzLnBhcmVudFBhdGgsXG4gICAgfSk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJjb250YWluZXJcIiBkbmREcm9wem9uZSAoZG5kRHJvcCk9XCJoYW5kbGVEcm9wKCRldmVudClcIj5cbiAgPGRpdiBjbGFzcz1cImhhbmRsZVwiPjwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -0,0 +1,19 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { NgModule } from '@angular/core';
3
+ import { DndModule } from 'ngx-drag-drop';
4
+ import { ElementDropHandleComponent } from './element-drop-handle.component';
5
+ import * as i0 from "@angular/core";
6
+ export class ElementDropHandleModule {
7
+ }
8
+ ElementDropHandleModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ElementDropHandleModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
+ ElementDropHandleModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ElementDropHandleModule, declarations: [ElementDropHandleComponent], imports: [CommonModule, DndModule], exports: [ElementDropHandleComponent] });
10
+ ElementDropHandleModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ElementDropHandleModule, imports: [[CommonModule, DndModule]] });
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ElementDropHandleModule, decorators: [{
12
+ type: NgModule,
13
+ args: [{
14
+ declarations: [ElementDropHandleComponent],
15
+ imports: [CommonModule, DndModule],
16
+ exports: [ElementDropHandleComponent],
17
+ }]
18
+ }] });
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxlbWVudC1kcm9wLWhhbmRsZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3Nkay9jbXMvY29tcG9uZW50cy9lbGVtZW50LWRyb3AtaGFuZGxlL2VsZW1lbnQtZHJvcC1oYW5kbGUubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0saUNBQWlDLENBQUM7O0FBTzdFLE1BQU0sT0FBTyx1QkFBdUI7O3FIQUF2Qix1QkFBdUI7c0hBQXZCLHVCQUF1QixpQkFKbkIsMEJBQTBCLGFBQy9CLFlBQVksRUFBRSxTQUFTLGFBQ3ZCLDBCQUEwQjtzSEFFekIsdUJBQXVCLFlBSHpCLENBQUMsWUFBWSxFQUFFLFNBQVMsQ0FBQzs0RkFHdkIsdUJBQXVCO2tCQUxuQyxRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLDBCQUEwQixDQUFDO29CQUMxQyxPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsU0FBUyxDQUFDO29CQUNsQyxPQUFPLEVBQUUsQ0FBQywwQkFBMEIsQ0FBQztpQkFDdEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERuZE1vZHVsZSB9IGZyb20gJ25neC1kcmFnLWRyb3AnO1xuaW1wb3J0IHsgRWxlbWVudERyb3BIYW5kbGVDb21wb25lbnQgfSBmcm9tICcuL2VsZW1lbnQtZHJvcC1oYW5kbGUuY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbRWxlbWVudERyb3BIYW5kbGVDb21wb25lbnRdLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBEbmRNb2R1bGVdLFxuICBleHBvcnRzOiBbRWxlbWVudERyb3BIYW5kbGVDb21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBFbGVtZW50RHJvcEhhbmRsZU1vZHVsZSB7fVxuIl19
@@ -5,14 +5,14 @@ import { map, Subject, takeUntil } from 'rxjs';
5
5
  import { ElementContextService } from '../../services/element-context.service';
6
6
  import { parseBoundPath } from '../../utils/path.utils';
7
7
  import * as i0 from "@angular/core";
8
- import * as i1 from "../../services/dynamic-module.service";
8
+ import * as i1 from "../../modules/runtime/services/runtime.service";
9
9
  import * as i2 from "../../services/element-context.service";
10
10
  import * as i3 from "../../services/io-provider.service";
11
11
  import * as i4 from "@veloceapps/sdk/core";
12
12
  export class ElementRendererComponent {
13
- constructor(parentInjector, dynamicModuleService, elementContext, ioProviderService, configurationService, elementRef, cdr) {
13
+ constructor(parentInjector, runtimeService, elementContext, ioProviderService, configurationService, elementRef, cdr) {
14
14
  this.parentInjector = parentInjector;
15
- this.dynamicModuleService = dynamicModuleService;
15
+ this.runtimeService = runtimeService;
16
16
  this.elementContext = elementContext;
17
17
  this.ioProviderService = ioProviderService;
18
18
  this.configurationService = configurationService;
@@ -23,7 +23,7 @@ export class ElementRendererComponent {
23
23
  }
24
24
  ngOnInit() {
25
25
  this.elementContext.metadata = this.meta;
26
- this.factory = this.dynamicModuleService.getComponentFactory(this.meta);
26
+ this.factory = this.meta.path ? this.runtimeService.componentFactories[this.meta.path] : undefined;
27
27
  this.createComponents();
28
28
  }
29
29
  ngOnDestroy() {
@@ -147,9 +147,9 @@ export class ElementRendererComponent {
147
147
  this.refs = {};
148
148
  }
149
149
  }
150
- ElementRendererComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ElementRendererComponent, deps: [{ token: i0.Injector, skipSelf: true }, { token: i1.DynamicModuleService }, { token: i2.ElementContextService }, { token: i3.IOProviderService }, { token: i4.ConfigurationService }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
151
- ElementRendererComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: ElementRendererComponent, selector: "vl-cms-element-renderer", inputs: { meta: "meta" }, providers: [ElementContextService], viewQueries: [{ propertyName: "el", first: true, predicate: ["el"], descendants: true, read: ViewContainerRef, static: true }], ngImport: i0, template: "<ng-template #el></ng-template>\n", styles: [":host{display:contents}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
152
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ElementRendererComponent, decorators: [{
150
+ ElementRendererComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ElementRendererComponent, deps: [{ token: i0.Injector, skipSelf: true }, { token: i1.RuntimeService }, { token: i2.ElementContextService }, { token: i3.IOProviderService }, { token: i4.ConfigurationService }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
151
+ ElementRendererComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: ElementRendererComponent, selector: "vl-cms-element-renderer", inputs: { meta: "meta" }, providers: [ElementContextService], viewQueries: [{ propertyName: "el", first: true, predicate: ["el"], descendants: true, read: ViewContainerRef, static: true }], ngImport: i0, template: "<ng-template #el></ng-template>\n", styles: [":host{display:contents}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
152
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ElementRendererComponent, decorators: [{
153
153
  type: Component,
154
154
  args: [{
155
155
  selector: 'vl-cms-element-renderer',
@@ -160,10 +160,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImpo
160
160
  }]
161
161
  }], ctorParameters: function () { return [{ type: i0.Injector, decorators: [{
162
162
  type: SkipSelf
163
- }] }, { type: i1.DynamicModuleService }, { type: i2.ElementContextService }, { type: i3.IOProviderService }, { type: i4.ConfigurationService }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { el: [{
163
+ }] }, { type: i1.RuntimeService }, { type: i2.ElementContextService }, { type: i3.IOProviderService }, { type: i4.ConfigurationService }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { el: [{
164
164
  type: ViewChild,
165
165
  args: ['el', { read: ViewContainerRef, static: true }]
166
166
  }], meta: [{
167
167
  type: Input
168
168
  }] } });
169
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxlbWVudC1yZW5kZXJlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3Nkay9jbXMvY29tcG9uZW50cy9lbGVtZW50LXJlbmRlcmVyL2VsZW1lbnQtcmVuZGVyZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zZGsvY21zL2NvbXBvbmVudHMvZWxlbWVudC1yZW5kZXJlci9lbGVtZW50LXJlbmRlcmVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFFdkIsU0FBUyxFQUtULEtBQUssRUFHTCxRQUFRLEVBQ1IsU0FBUyxFQUNULGdCQUFnQixHQUNqQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQVksSUFBSSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFbEQsT0FBTyxFQUFjLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFDbkQsT0FBTyxFQUFFLEdBQUcsRUFBYyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTNELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBRy9FLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7Ozs7O0FBU3hELE1BQU0sT0FBTyx3QkFBd0I7SUFTbkMsWUFDc0IsY0FBd0IsRUFDcEMsb0JBQTBDLEVBQzFDLGNBQXFDLEVBQ3JDLGlCQUFvQyxFQUNwQyxvQkFBMEMsRUFDMUMsVUFBc0IsRUFDdEIsR0FBc0I7UUFOVixtQkFBYyxHQUFkLGNBQWMsQ0FBVTtRQUNwQyx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO1FBQzFDLG1CQUFjLEdBQWQsY0FBYyxDQUF1QjtRQUNyQyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQ3BDLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FB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ImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBDb21wb25lbnRGYWN0b3J5LFxuICBDb21wb25lbnRSZWYsXG4gIEVsZW1lbnRSZWYsXG4gIEluamVjdG9yLFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIFNraXBTZWxmLFxuICBWaWV3Q2hpbGQsXG4gIFZpZXdDb250YWluZXJSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTGluZUl0ZW0sIFVVSUQgfSBmcm9tICdAdmVsb2NlYXBwcy9jb3JlJztcbmltcG9ydCB7IENvbmZpZ3VyYXRpb25TZXJ2aWNlIH0gZnJvbSAnQHZlbG9jZWFwcHMvc2RrL2NvcmUnO1xuaW1wb3J0IHsgRGljdGlvbmFyeSwgaXNBcnJheSwgcHVsbCB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgeyBtYXAsIE9ic2VydmFibGUsIFN1YmplY3QsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRHluYW1pY01vZHVsZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9keW5hbWljLW1vZHVsZS5zZXJ2aWNlJztcbmltcG9ydCB7IEVsZW1lbnRDb250ZXh0U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2VsZW1lbnQtY29udGV4dC5zZXJ2aWNlJztcbmltcG9ydCB7IElPUHJvdmlkZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvaW8tcHJvdmlkZXIuc2VydmljZSc7XG5pbXBvcnQgeyBFbGVtZW50TWV0YWRhdGEgfSBmcm9tICcuLi8uLi90eXBlcy9jb21tb24udHlwZXMnO1xuaW1wb3J0IHsgcGFyc2VCb3VuZFBhdGggfSBmcm9tICcuLi8uLi91dGlscy9wYXRoLnV0aWxzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmwtY21zLWVsZW1lbnQtcmVuZGVyZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vZWxlbWVudC1yZW5kZXJlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2VsZW1lbnQtcmVuZGVyZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHByb3ZpZGVyczogW0VsZW1lbnRDb250ZXh0U2VydmljZV0sXG59KVxuZXhwb3J0IGNsYXNzIEVsZW1lbnRSZW5kZXJlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgQFZpZXdDaGlsZCgnZWwnLCB7IHJlYWQ6IFZpZXdDb250YWluZXJSZWYsIHN0YXRpYzogdHJ1ZSB9KSBwdWJsaWMgZWw/OiBWaWV3Q29udGFpbmVyUmVmO1xuXG4gIEBJbnB1dCgpIHB1YmxpYyBtZXRhITogRWxlbWVudE1ldGFkYXRhO1xuXG4gIHByaXZhdGUgZmFjdG9yeT86IENvbXBvbmVudEZhY3Rvcnk8YW55PjtcbiAgcHJpdmF0ZSByZWZzOiBEaWN0aW9uYXJ5PENvbXBvbmVudFJlZjxhbnk+IHwgdW5kZWZpbmVkPiA9IHt9O1xuICBwcml2YXRlIGRlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBAU2tpcFNlbGYoKSBwcml2YXRlIHBhcmVudEluamVjdG9yOiBJbmplY3RvcixcbiAgICBwcml2YXRlIGR5bmFtaWNNb2R1bGVTZXJ2aWNlOiBEeW5hbWljTW9kdWxlU2VydmljZSxcbiAgICBwcml2YXRlIGVsZW1lbnRDb250ZXh0OiBFbGVtZW50Q29udGV4dFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBpb1Byb3ZpZGVyU2VydmljZTogSU9Qcm92aWRlclNlcnZpY2UsXG4gICAgcHJpdmF0ZSBjb25maWd1cmF0aW9uU2VydmljZTogQ29uZmlndXJhdGlvblNlcnZpY2UsXG4gICAgcHJpdmF0ZSBlbGVtZW50UmVmOiBFbGVtZW50UmVmLFxuICAgIHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgKSB7fVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmVsZW1lbnRDb250ZXh0Lm1ldGFkYXRhID0gdGhpcy5tZXRhO1xuICAgIHRoaXMuZmFjdG9yeSA9IHRoaXMuZHluYW1pY01vZHVsZVNlcnZpY2UuZ2V0Q29tcG9uZW50RmFjdG9yeSh0aGlzLm1ldGEpO1xuXG4gICAgdGhpcy5jcmVhdGVDb21wb25lbnRzKCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5kZXN0cm95Q29tcG9uZW50cygpO1xuICAgIHRoaXMuZGVzdHJveSQubmV4dCgpO1xuICAgIHRoaXMuZGVzdHJveSQuY29tcGxldGUoKTtcbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlQ29tcG9uZW50cygpOiB2b2lkIHtcbiAgICBjb25zdCBtb2RlbE1ldGEgPSB0aGlzLm1ldGEubW9kZWw7XG5cbiAgICBpZiAoIW1vZGVsTWV0YSkge1xuICAgICAgdGhpcy5yZWZzW1VVSUQuVVVJRCgpXSA9IHRoaXMuY3JlYXRlQ29tcG9uZW50KCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKG1vZGVsTWV0YS5saW5lSXRlbSkge1xuICAgICAgdGhpcy5jcmVhdGVGcm9tTGluZUl0ZW0obW9kZWxNZXRhLmxpbmVJdGVtKTtcbiAgICB9IGVsc2UgaWYgKG1vZGVsTWV0YS5wYXRoKSB7XG4gICAgICB0aGlzLmNyZWF0ZUZyb21QYXRoKG1vZGVsTWV0YS5wYXRoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZUZyb21QYXRoKHBhdGg6IHN0cmluZyk6IHZvaWQge1xuICAgIGNvbnN0IGFycmF5JCA9IHRoaXMuaW9Qcm92aWRlclNlcnZpY2UuY29ubmVjdCh0aGlzLm1ldGEsICdjaGlsZHJlbiQnLCBwYXRoKTtcblxuICAgIGFycmF5JD8ucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZShjaGlsZHJlbiA9PiB7XG4gICAgICBpZiAoIWlzQXJyYXkoY2hpbGRyZW4pKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgdGhpcy5wcm9jZXNzQ2hpbGRyZW4oY2hpbGRyZW4pO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRNb2RlbENvbXBvbmVudCgpOiBFbGVtZW50UmVuZGVyZXJDb21wb25lbnQgfCBudWxsIHtcbiAgICBsZXQgY29tcG9uZW50OiBFbGVtZW50UmVuZGVyZXJDb21wb25lbnQgfCBudWxsID0gbnVsbDtcbiAgICBsZXQgaW5qZWN0b3IgPSB0aGlzLnBhcmVudEluamVjdG9yO1xuXG4gICAgd2hpbGUgKCFjb21wb25lbnQpIHtcbiAgICAgIGNvbnN0IHBhcmVudENvbXAgPSBpbmplY3Rvci5nZXQoRWxlbWVudFJlbmRlcmVyQ29tcG9uZW50LCBudWxsKTtcblxuICAgICAgaWYgKHBhcmVudENvbXA/Lm1ldGEubW9kZWwpIHtcbiAgICAgICAgY29tcG9uZW50ID0gcGFyZW50Q29tcDtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG5cbiAgICAgIGlmIChwYXJlbnRDb21wKSB7XG4gICAgICAgIGluamVjdG9yID0gcGFyZW50Q29tcC5wYXJlbnRJbmplY3RvcjtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBjb21wb25lbnQ7XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZUZyb21MaW5lSXRlbShwYXRoOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBjb25zdCBwYXJlbnRDb21wID0gdGhpcy5nZXRNb2RlbENvbXBvbmVudCgpO1xuICAgIGNvbnN0IHBhcmVudFBhdGggPSBwYXJlbnRDb21wPy5tZXRhLm1vZGVsPy5saW5lSXRlbTtcblxuICAgIGNvbnN0IHBhdGhCbG9ja3MgPSBwYXJzZUJvdW5kUGF0aChwYXRoKS5yZXZlcnNlKCk7XG4gICAgY29uc3QgeyBwcm9wZXJ0eSwgbmFtZSB9ID0gcGF0aEJsb2Nrc1sxXSA/PyB7fTtcbiAgICBjb25zdCBmaW5hbFBhdGggPSBwYXRoQmxvY2tzWzBdO1xuXG4gICAgY29uc3QgY2hpbGRyZW4kID0gdGhpcy5nZXRQYXJlbnRMaW5lSXRlbSQocGFyZW50Q29tcCkucGlwZShcbiAgICAgIG1hcChtb2RlbCA9PiB7XG4gICAgICAgIGlmICghbW9kZWwpIHtcbiAgICAgICAgICByZXR1cm4gW107XG4gICAgICAgIH1cblxuICAgICAgICBpZiAocHJvcGVydHkgPT09ICdwb3J0cycgJiYgIWZpbmFsUGF0aC5wcm9wZXJ0eSAmJiBwYXJlbnRQYXRoICE9PSBwYXRoKSB7XG4gICAgICAgICAgcmV0dXJuIG1vZGVsLmxpbmVJdGVtcy5maWx0ZXIoKHsgcG9ydCB9KSA9PiBwb3J0ID09PSBuYW1lKSA/PyBbXTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBbbW9kZWxdO1xuICAgICAgfSksXG4gICAgKTtcblxuICAgIGNoaWxkcmVuJC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKGNoaWxkcmVuID0+IHtcbiAgICAgIHRoaXMucHJvY2Vzc0NoaWxkcmVuKGNoaWxkcmVuKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgcHJvY2Vzc0NoaWxkcmVuKGNoaWxkcmVuOiBhbnlbXSk6IHZvaWQge1xuICAgIGNvbnN0IHJlZnMgPSBjaGlsZHJlbi5yZWR1Y2UoKGFjYywgZGF0YSwgaW5kZXgpID0+IHtcbiAgICAgIGNvbnN0IGtleSA9IFN0cmluZyhkYXRhPy5pZCA/PyBVVUlELlVVSUQoKSk7XG4gICAgICBjb25zdCBleGlzdGluZ1JlZiA9IHRoaXMucmVmc1trZXldO1xuXG4gICAgICBjb25zdCByZWYgPSBleGlzdGluZ1JlZiA/PyB0aGlzLmNyZWF0ZUNvbXBvbmVudChkYXRhLCBpbmRleCk7XG4gICAgICBpZiAoZXhpc3RpbmdSZWYpIHtcbiAgICAgICAgdGhpcy51cGRhdGVDb21wb25lbnQoZXhpc3RpbmdSZWYsIGRhdGEsIGluZGV4KTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHJlZiA/IHsgLi4uYWNjLCBba2V5XTogcmVmIH0gOiBhY2M7XG4gICAgfSwge30gYXMgRGljdGlvbmFyeTxDb21wb25lbnRSZWY8YW55Pj4pO1xuXG4gICAgY29uc3QgZXhpc3RpbmdLZXlzID0gT2JqZWN0LmtleXModGhpcy5yZWZzKTtcbiAgICBjb25zdCBuZXdLZXlzID0gT2JqZWN0LmtleXMocmVmcyk7XG5cbiAgICBwdWxsKGV4aXN0aW5nS2V5cywgLi4ubmV3S2V5cykuZm9yRWFjaChrZXkgPT4ge1xuICAgICAgdGhpcy5kZXN0cm95Q29tcG9uZW50KGtleSk7XG4gICAgfSk7XG5cbiAgICB0aGlzLnJlZnMgPSByZWZzO1xuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0UGFyZW50TGluZUl0ZW0kKHBhcmVudENvbXA6IEVsZW1lbnRSZW5kZXJlckNvbXBvbmVudCB8IG51bGwpOiBPYnNlcnZhYmxlPExpbmVJdGVtIHwgdW5kZWZpbmVkPiB7XG4gICAgY29uc3QgcGFyZW50UmVmcyA9IE9iamVjdC52YWx1ZXMocGFyZW50Q29tcD8ucmVmcyA/PyB7fSk7XG4gICAgY29uc3QgcGFyZW50UmVmID0gcGFyZW50UmVmcy5maW5kKHJlZiA9PlxuICAgICAgKHJlZj8ubG9jYXRpb24ubmF0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudCk/LmNvbnRhaW5zKHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50KSxcbiAgICApO1xuXG4gICAgY29uc3QgcGFyZW50TW9kZWwkID0gcGFyZW50UmVmPy5pbnN0YW5jZS5tb2RlbCQ7XG5cbiAgICByZXR1cm4gcGFyZW50TW9kZWwkID8/IHRoaXMuY29uZmlndXJhdGlvblNlcnZpY2UuZ2V0KCk7XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZUNvbXBvbmVudChkYXRhPzogYW55LCBpbmRleD86IG51bWJlcik6IENvbXBvbmVudFJlZjxhbnk+IHwgdW5kZWZpbmVkIHtcbiAgICBpZiAoIXRoaXMuZmFjdG9yeSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGNvbXBvbmVudFJlZiA9IHRoaXMuZWw/LmNyZWF0ZUNvbXBvbmVudCh0aGlzLmZhY3RvcnksIGluZGV4KTtcblxuICAgIGlmIChjb21wb25lbnRSZWYpIHtcbiAgICAgIGNvbXBvbmVudFJlZi5sb2NhdGlvbi5uYXRpdmVFbGVtZW50LnNldEF0dHJpYnV0ZSgnbmFtZScsIHRoaXMubWV0YS5uYW1lKTtcbiAgICAgIGNvbXBvbmVudFJlZi5sb2NhdGlvbi5uYXRpdmVFbGVtZW50LnNldEF0dHJpYnV0ZSgncGF0aCcsIHRoaXMubWV0YS5wYXRoKTtcbiAgICAgIGNvbXBvbmVudFJlZi5pbnN0YW5jZT8ubW9kZWwkLm5leHQoZGF0YSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGNvbXBvbmVudFJlZjtcbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlQ29tcG9uZW50KHJlZjogQ29tcG9uZW50UmVmPGFueT4sIGRhdGE6IGFueSwgaW5kZXg6IG51bWJlcik6IHZvaWQge1xuICAgIHJlZi5pbnN0YW5jZS5tb2RlbCQubmV4dChkYXRhKTtcblxuICAgIGlmICh0aGlzLmVsICYmIHRoaXMuZWwuaW5kZXhPZihyZWYuaG9zdFZpZXcpICE9PSBpbmRleCkge1xuICAgICAgdGhpcy5lbC5tb3ZlKHJlZi5ob3N0VmlldywgaW5kZXgpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZGVzdHJveUNvbXBvbmVudChrZXk6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMucmVmc1trZXldPy5kZXN0cm95KCk7XG4gICAgZGVsZXRlIHRoaXMucmVmc1trZXldO1xuICB9XG5cbiAgcHJpdmF0ZSBkZXN0cm95Q29tcG9uZW50cygpOiB2b2lkIHtcbiAgICBPYmplY3QudmFsdWVzKHRoaXMucmVmcykuZm9yRWFjaChyZWYgPT4gcmVmPy5kZXN0cm95KCkpO1xuICAgIHRoaXMucmVmcyA9IHt9O1xuICB9XG59XG4iLCI8bmctdGVtcGxhdGUgI2VsPjwvbmctdGVtcGxhdGU+XG4iXX0=
169
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxlbWVudC1yZW5kZXJlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3Nkay9jbXMvY29tcG9uZW50cy9lbGVtZW50LXJlbmRlcmVyL2VsZW1lbnQtcmVuZGVyZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zZGsvY21zL2NvbXBvbmVudHMvZWxlbWVudC1yZW5kZXJlci9lbGVtZW50LXJlbmRlcmVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFFdkIsU0FBUyxFQUtULEtBQUssRUFHTCxRQUFRLEVBQ1IsU0FBUyxFQUNULGdCQUFnQixHQUNqQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQVksSUFBSSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFbEQsT0FBTyxFQUFjLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFDbkQsT0FBTyxFQUFFLEdBQUcsRUFBYyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTNELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBRy9FLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7Ozs7O0FBU3hELE1BQU0sT0FBTyx3QkFBd0I7SUFTbkMsWUFDc0IsY0FBd0IsRUFDcEMsY0FBOEIsRUFDOUIsY0FBcUMsRUFDckMsaUJBQW9DLEVBQ3BDLG9CQUEwQyxFQUMxQyxVQUFzQixFQUN0QixHQUFzQjtRQU5WLG1CQUFjLEdBQWQsY0FBYyxDQUFVO1FBQ3BDLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUM5QixtQkFBYyxHQUFkLGNBQWMsQ0FBdUI7UUFDckMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUNwQyx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO1FB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TUFBTSxFQUFFLElBQUksRUFBRTtnQkFFekMsSUFBSTtzQkFBbkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBDb21wb25lbnRGYWN0b3J5LFxuICBDb21wb25lbnRSZWYsXG4gIEVsZW1lbnRSZWYsXG4gIEluamVjdG9yLFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIFNraXBTZWxmLFxuICBWaWV3Q2hpbGQsXG4gIFZpZXdDb250YWluZXJSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTGluZUl0ZW0sIFVVSUQgfSBmcm9tICdAdmVsb2NlYXBwcy9jb3JlJztcbmltcG9ydCB7IENvbmZpZ3VyYXRpb25TZXJ2aWNlIH0gZnJvbSAnQHZlbG9jZWFwcHMvc2RrL2NvcmUnO1xuaW1wb3J0IHsgRGljdGlvbmFyeSwgaXNBcnJheSwgcHVsbCB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgeyBtYXAsIE9ic2VydmFibGUsIFN1YmplY3QsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgUnVudGltZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9tb2R1bGVzL3J1bnRpbWUvc2VydmljZXMvcnVudGltZS5zZXJ2aWNlJztcbmltcG9ydCB7IEVsZW1lbnRDb250ZXh0U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2VsZW1lbnQtY29udGV4dC5zZXJ2aWNlJztcbmltcG9ydCB7IElPUHJvdmlkZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvaW8tcHJvdmlkZXIuc2VydmljZSc7XG5pbXBvcnQgeyBFbGVtZW50TWV0YWRhdGEgfSBmcm9tICcuLi8uLi90eXBlcy9jb21tb24udHlwZXMnO1xuaW1wb3J0IHsgcGFyc2VCb3VuZFBhdGggfSBmcm9tICcuLi8uLi91dGlscy9wYXRoLnV0aWxzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmwtY21zLWVsZW1lbnQtcmVuZGVyZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vZWxlbWVudC1yZW5kZXJlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2VsZW1lbnQtcmVuZGVyZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHByb3ZpZGVyczogW0VsZW1lbnRDb250ZXh0U2VydmljZV0sXG59KVxuZXhwb3J0IGNsYXNzIEVsZW1lbnRSZW5kZXJlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgQFZpZXdDaGlsZCgnZWwnLCB7IHJlYWQ6IFZpZXdDb250YWluZXJSZWYsIHN0YXRpYzogdHJ1ZSB9KSBwdWJsaWMgZWw/OiBWaWV3Q29udGFpbmVyUmVmO1xuXG4gIEBJbnB1dCgpIHB1YmxpYyBtZXRhITogRWxlbWVudE1ldGFkYXRhO1xuXG4gIHByaXZhdGUgZmFjdG9yeT86IENvbXBvbmVudEZhY3Rvcnk8YW55PjtcbiAgcHJpdmF0ZSByZWZzOiBEaWN0aW9uYXJ5PENvbXBvbmVudFJlZjxhbnk+IHwgdW5kZWZpbmVkPiA9IHt9O1xuICBwcml2YXRlIGRlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBAU2tpcFNlbGYoKSBwcml2YXRlIHBhcmVudEluamVjdG9yOiBJbmplY3RvcixcbiAgICBwcml2YXRlIHJ1bnRpbWVTZXJ2aWNlOiBSdW50aW1lU2VydmljZSxcbiAgICBwcml2YXRlIGVsZW1lbnRDb250ZXh0OiBFbGVtZW50Q29udGV4dFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBpb1Byb3ZpZGVyU2VydmljZTogSU9Qcm92aWRlclNlcnZpY2UsXG4gICAgcHJpdmF0ZSBjb25maWd1cmF0aW9uU2VydmljZTogQ29uZmlndXJhdGlvblNlcnZpY2UsXG4gICAgcHJpdmF0ZSBlbGVtZW50UmVmOiBFbGVtZW50UmVmLFxuICAgIHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgKSB7fVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmVsZW1lbnRDb250ZXh0Lm1ldGFkYXRhID0gdGhpcy5tZXRhO1xuICAgIHRoaXMuZmFjdG9yeSA9IHRoaXMubWV0YS5wYXRoID8gdGhpcy5ydW50aW1lU2VydmljZS5jb21wb25lbnRGYWN0b3JpZXNbdGhpcy5tZXRhLnBhdGhdIDogdW5kZWZpbmVkO1xuXG4gICAgdGhpcy5jcmVhdGVDb21wb25lbnRzKCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5kZXN0cm95Q29tcG9uZW50cygpO1xuICAgIHRoaXMuZGVzdHJveSQubmV4dCgpO1xuICAgIHRoaXMuZGVzdHJveSQuY29tcGxldGUoKTtcbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlQ29tcG9uZW50cygpOiB2b2lkIHtcbiAgICBjb25zdCBtb2RlbE1ldGEgPSB0aGlzLm1ldGEubW9kZWw7XG5cbiAgICBpZiAoIW1vZGVsTWV0YSkge1xuICAgICAgdGhpcy5yZWZzW1VVSUQuVVVJRCgpXSA9IHRoaXMuY3JlYXRlQ29tcG9uZW50KCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKG1vZGVsTWV0YS5saW5lSXRlbSkge1xuICAgICAgdGhpcy5jcmVhdGVGcm9tTGluZUl0ZW0obW9kZWxNZXRhLmxpbmVJdGVtKTtcbiAgICB9IGVsc2UgaWYgKG1vZGVsTWV0YS5wYXRoKSB7XG4gICAgICB0aGlzLmNyZWF0ZUZyb21QYXRoKG1vZGVsTWV0YS5wYXRoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZUZyb21QYXRoKHBhdGg6IHN0cmluZyk6IHZvaWQge1xuICAgIGNvbnN0IGFycmF5JCA9IHRoaXMuaW9Qcm92aWRlclNlcnZpY2UuY29ubmVjdCh0aGlzLm1ldGEsICdjaGlsZHJlbiQnLCBwYXRoKTtcblxuICAgIGFycmF5JD8ucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZShjaGlsZHJlbiA9PiB7XG4gICAgICBpZiAoIWlzQXJyYXkoY2hpbGRyZW4pKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgdGhpcy5wcm9jZXNzQ2hpbGRyZW4oY2hpbGRyZW4pO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRNb2RlbENvbXBvbmVudCgpOiBFbGVtZW50UmVuZGVyZXJDb21wb25lbnQgfCBudWxsIHtcbiAgICBsZXQgY29tcG9uZW50OiBFbGVtZW50UmVuZGVyZXJDb21wb25lbnQgfCBudWxsID0gbnVsbDtcbiAgICBsZXQgaW5qZWN0b3IgPSB0aGlzLnBhcmVudEluamVjdG9yO1xuXG4gICAgd2hpbGUgKCFjb21wb25lbnQpIHtcbiAgICAgIGNvbnN0IHBhcmVudENvbXAgPSBpbmplY3Rvci5nZXQoRWxlbWVudFJlbmRlcmVyQ29tcG9uZW50LCBudWxsKTtcblxuICAgICAgaWYgKHBhcmVudENvbXA/Lm1ldGEubW9kZWwpIHtcbiAgICAgICAgY29tcG9uZW50ID0gcGFyZW50Q29tcDtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG5cbiAgICAgIGlmIChwYXJlbnRDb21wKSB7XG4gICAgICAgIGluamVjdG9yID0gcGFyZW50Q29tcC5wYXJlbnRJbmplY3RvcjtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBjb21wb25lbnQ7XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZUZyb21MaW5lSXRlbShwYXRoOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBjb25zdCBwYXJlbnRDb21wID0gdGhpcy5nZXRNb2RlbENvbXBvbmVudCgpO1xuICAgIGNvbnN0IHBhcmVudFBhdGggPSBwYXJlbnRDb21wPy5tZXRhLm1vZGVsPy5saW5lSXRlbTtcblxuICAgIGNvbnN0IHBhdGhCbG9ja3MgPSBwYXJzZUJvdW5kUGF0aChwYXRoKS5yZXZlcnNlKCk7XG4gICAgY29uc3QgeyBwcm9wZXJ0eSwgbmFtZSB9ID0gcGF0aEJsb2Nrc1sxXSA/PyB7fTtcbiAgICBjb25zdCBmaW5hbFBhdGggPSBwYXRoQmxvY2tzWzBdO1xuXG4gICAgY29uc3QgY2hpbGRyZW4kID0gdGhpcy5nZXRQYXJlbnRMaW5lSXRlbSQocGFyZW50Q29tcCkucGlwZShcbiAgICAgIG1hcChtb2RlbCA9PiB7XG4gICAgICAgIGlmICghbW9kZWwpIHtcbiAgICAgICAgICByZXR1cm4gW107XG4gICAgICAgIH1cblxuICAgICAgICBpZiAocHJvcGVydHkgPT09ICdwb3J0cycgJiYgIWZpbmFsUGF0aC5wcm9wZXJ0eSAmJiBwYXJlbnRQYXRoICE9PSBwYXRoKSB7XG4gICAgICAgICAgcmV0dXJuIG1vZGVsLmxpbmVJdGVtcy5maWx0ZXIoKHsgcG9ydCB9KSA9PiBwb3J0ID09PSBuYW1lKSA/PyBbXTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBbbW9kZWxdO1xuICAgICAgfSksXG4gICAgKTtcblxuICAgIGNoaWxkcmVuJC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKGNoaWxkcmVuID0+IHtcbiAgICAgIHRoaXMucHJvY2Vzc0NoaWxkcmVuKGNoaWxkcmVuKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgcHJvY2Vzc0NoaWxkcmVuKGNoaWxkcmVuOiBhbnlbXSk6IHZvaWQge1xuICAgIGNvbnN0IHJlZnMgPSBjaGlsZHJlbi5yZWR1Y2UoKGFjYywgZGF0YSwgaW5kZXgpID0+IHtcbiAgICAgIGNvbnN0IGtleSA9IFN0cmluZyhkYXRhPy5pZCA/PyBVVUlELlVVSUQoKSk7XG4gICAgICBjb25zdCBleGlzdGluZ1JlZiA9IHRoaXMucmVmc1trZXldO1xuXG4gICAgICBjb25zdCByZWYgPSBleGlzdGluZ1JlZiA/PyB0aGlzLmNyZWF0ZUNvbXBvbmVudChkYXRhLCBpbmRleCk7XG4gICAgICBpZiAoZXhpc3RpbmdSZWYpIHtcbiAgICAgICAgdGhpcy51cGRhdGVDb21wb25lbnQoZXhpc3RpbmdSZWYsIGRhdGEsIGluZGV4KTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHJlZiA/IHsgLi4uYWNjLCBba2V5XTogcmVmIH0gOiBhY2M7XG4gICAgfSwge30gYXMgRGljdGlvbmFyeTxDb21wb25lbnRSZWY8YW55Pj4pO1xuXG4gICAgY29uc3QgZXhpc3RpbmdLZXlzID0gT2JqZWN0LmtleXModGhpcy5yZWZzKTtcbiAgICBjb25zdCBuZXdLZXlzID0gT2JqZWN0LmtleXMocmVmcyk7XG5cbiAgICBwdWxsKGV4aXN0aW5nS2V5cywgLi4ubmV3S2V5cykuZm9yRWFjaChrZXkgPT4ge1xuICAgICAgdGhpcy5kZXN0cm95Q29tcG9uZW50KGtleSk7XG4gICAgfSk7XG5cbiAgICB0aGlzLnJlZnMgPSByZWZzO1xuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0UGFyZW50TGluZUl0ZW0kKHBhcmVudENvbXA6IEVsZW1lbnRSZW5kZXJlckNvbXBvbmVudCB8IG51bGwpOiBPYnNlcnZhYmxlPExpbmVJdGVtIHwgdW5kZWZpbmVkPiB7XG4gICAgY29uc3QgcGFyZW50UmVmcyA9IE9iamVjdC52YWx1ZXMocGFyZW50Q29tcD8ucmVmcyA/PyB7fSk7XG4gICAgY29uc3QgcGFyZW50UmVmID0gcGFyZW50UmVmcy5maW5kKHJlZiA9PlxuICAgICAgKHJlZj8ubG9jYXRpb24ubmF0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudCk/LmNvbnRhaW5zKHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50KSxcbiAgICApO1xuXG4gICAgY29uc3QgcGFyZW50TW9kZWwkID0gcGFyZW50UmVmPy5pbnN0YW5jZS5tb2RlbCQ7XG5cbiAgICByZXR1cm4gcGFyZW50TW9kZWwkID8/IHRoaXMuY29uZmlndXJhdGlvblNlcnZpY2UuZ2V0KCk7XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZUNvbXBvbmVudChkYXRhPzogYW55LCBpbmRleD86IG51bWJlcik6IENvbXBvbmVudFJlZjxhbnk+IHwgdW5kZWZpbmVkIHtcbiAgICBpZiAoIXRoaXMuZmFjdG9yeSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGNvbXBvbmVudFJlZiA9IHRoaXMuZWw/LmNyZWF0ZUNvbXBvbmVudCh0aGlzLmZhY3RvcnksIGluZGV4KTtcblxuICAgIGlmIChjb21wb25lbnRSZWYpIHtcbiAgICAgIGNvbXBvbmVudFJlZi5sb2NhdGlvbi5uYXRpdmVFbGVtZW50LnNldEF0dHJpYnV0ZSgnbmFtZScsIHRoaXMubWV0YS5uYW1lKTtcbiAgICAgIGNvbXBvbmVudFJlZi5sb2NhdGlvbi5uYXRpdmVFbGVtZW50LnNldEF0dHJpYnV0ZSgncGF0aCcsIHRoaXMubWV0YS5wYXRoKTtcbiAgICAgIGNvbXBvbmVudFJlZi5pbnN0YW5jZT8ubW9kZWwkLm5leHQoZGF0YSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGNvbXBvbmVudFJlZjtcbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlQ29tcG9uZW50KHJlZjogQ29tcG9uZW50UmVmPGFueT4sIGRhdGE6IGFueSwgaW5kZXg6IG51bWJlcik6IHZvaWQge1xuICAgIHJlZi5pbnN0YW5jZS5tb2RlbCQubmV4dChkYXRhKTtcblxuICAgIGlmICh0aGlzLmVsICYmIHRoaXMuZWwuaW5kZXhPZihyZWYuaG9zdFZpZXcpICE9PSBpbmRleCkge1xuICAgICAgdGhpcy5lbC5tb3ZlKHJlZi5ob3N0VmlldywgaW5kZXgpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZGVzdHJveUNvbXBvbmVudChrZXk6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMucmVmc1trZXldPy5kZXN0cm95KCk7XG4gICAgZGVsZXRlIHRoaXMucmVmc1trZXldO1xuICB9XG5cbiAgcHJpdmF0ZSBkZXN0cm95Q29tcG9uZW50cygpOiB2b2lkIHtcbiAgICBPYmplY3QudmFsdWVzKHRoaXMucmVmcykuZm9yRWFjaChyZWYgPT4gcmVmPy5kZXN0cm95KCkpO1xuICAgIHRoaXMucmVmcyA9IHt9O1xuICB9XG59XG4iLCI8bmctdGVtcGxhdGUgI2VsPjwvbmctdGVtcGxhdGU+XG4iXX0=
@@ -3,10 +3,10 @@ import { ElementRendererComponent } from './element-renderer.component';
3
3
  import * as i0 from "@angular/core";
4
4
  export class ElementRendererModule {
5
5
  }
6
- ElementRendererModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ElementRendererModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
7
- ElementRendererModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ElementRendererModule, declarations: [ElementRendererComponent], exports: [ElementRendererComponent] });
8
- ElementRendererModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ElementRendererModule });
9
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ElementRendererModule, decorators: [{
6
+ ElementRendererModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ElementRendererModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
7
+ ElementRendererModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ElementRendererModule, declarations: [ElementRendererComponent], exports: [ElementRendererComponent] });
8
+ ElementRendererModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ElementRendererModule });
9
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ElementRendererModule, decorators: [{
10
10
  type: NgModule,
11
11
  args: [{
12
12
  declarations: [ElementRendererComponent],
@@ -8,9 +8,9 @@ export class PluginComponent extends Plugin {
8
8
  this.host = host;
9
9
  }
10
10
  }
11
- PluginComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PluginComponent, deps: [{ token: i1.ElementComponent }], target: i0.ɵɵFactoryTarget.Directive });
12
- PluginComponent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.15", type: PluginComponent, usesInheritance: true, ngImport: i0 });
13
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PluginComponent, decorators: [{
11
+ PluginComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PluginComponent, deps: [{ token: i1.ElementComponent }], target: i0.ɵɵFactoryTarget.Directive });
12
+ PluginComponent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: PluginComponent, usesInheritance: true, ngImport: i0 });
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PluginComponent, decorators: [{
14
14
  type: Directive
15
15
  }], ctorParameters: function () { return [{ type: i1.ElementComponent }]; } });
16
16
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGx1Z2luLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvc2RrL2Ntcy9jb21wb25lbnRzL3BsdWdpbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUtMLFNBQVMsR0FLVixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0seUJBQXlCLENBQUM7OztBQWdCakQsTUFBTSxPQUFPLGVBQWdCLFNBQVEsTUFBTTtJQUN6QyxZQUE0QixJQUFzQjtRQUNoRCxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7UUFEYyxTQUFJLEdBQUosSUFBSSxDQUFrQjtJQUVsRCxDQUFDOzs2R0FIVSxlQUFlO2lHQUFmLGVBQWU7NEZBQWYsZUFBZTtrQkFEM0IsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyQ29udGVudENoZWNrZWQsXG4gIEFmdGVyQ29udGVudEluaXQsXG4gIEFmdGVyVmlld0NoZWNrZWQsXG4gIEFmdGVyVmlld0luaXQsXG4gIERpcmVjdGl2ZSxcbiAgRG9DaGVjayxcbiAgT25DaGFuZ2VzLFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBFbGVtZW50Q29tcG9uZW50IH0gZnJvbSAnLic7XG5pbXBvcnQgeyBQbHVnaW4gfSBmcm9tICcuLi9lbmdpbmUvbW9kZWxzL3BsdWdpbic7XG5cbnR5cGUgQW5ndWxhckhvb2tzID0gT25DaGFuZ2VzICZcbiAgT25Jbml0ICZcbiAgRG9DaGVjayAmXG4gIEFmdGVyQ29udGVudEluaXQgJlxuICBBZnRlckNvbnRlbnRDaGVja2VkICZcbiAgQWZ0ZXJWaWV3SW5pdCAmXG4gIEFmdGVyVmlld0NoZWNrZWQgJlxuICBPbkRlc3Ryb3k7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVBsdWdpbkNvbXBvbmVudCBleHRlbmRzIFBhcnRpYWw8QW5ndWxhckhvb2tzPiB7XG4gIGhvc3Q6IEVsZW1lbnRDb21wb25lbnQ7XG59XG5cbkBEaXJlY3RpdmUoKVxuZXhwb3J0IGNsYXNzIFBsdWdpbkNvbXBvbmVudCBleHRlbmRzIFBsdWdpbiBpbXBsZW1lbnRzIElQbHVnaW5Db21wb25lbnQge1xuICBjb25zdHJ1Y3RvcihwdWJsaWMgcmVhZG9ubHkgaG9zdDogRWxlbWVudENvbXBvbmVudCkge1xuICAgIHN1cGVyKGhvc3QpO1xuICB9XG59XG4iXX0=
@@ -1,3 +1,4 @@
1
1
  export * from './preview.component';
2
2
  export * from './preview.module';
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3Nkay9jbXMvY29tcG9uZW50cy9wcmV2aWV3L2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyxrQkFBa0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vcHJldmlldy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9wcmV2aWV3Lm1vZHVsZSc7XG4iXX0=
3
+ export * from './preview.types';
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3Nkay9jbXMvY29tcG9uZW50cy9wcmV2aWV3L2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLGlCQUFpQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9wcmV2aWV3LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3ByZXZpZXcubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vcHJldmlldy50eXBlcyc7XG4iXX0=