@veloceapps/sdk 2.0.0 → 2.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 (84) hide show
  1. package/bundles/veloce-sdk-cms.umd.js +279 -83
  2. package/bundles/veloce-sdk-cms.umd.js.map +1 -1
  3. package/bundles/veloce-sdk-runtime.umd.js +146 -146
  4. package/bundles/veloce-sdk-runtime.umd.js.map +1 -1
  5. package/bundles/veloce-sdk.umd.js.map +1 -1
  6. package/cms/components/federated/federated.component.d.ts +36 -0
  7. package/cms/components/federated/federated.module.d.ts +7 -0
  8. package/cms/injection-tokens.d.ts +1 -0
  9. package/cms/plugins/script.plugin.d.ts +2 -0
  10. package/cms/utils/element.utils.d.ts +1 -0
  11. package/cms/utils/elements-resolver.d.ts +1 -0
  12. package/cms/utils/federated.util.d.ts +6 -0
  13. package/esm2015/cms/components/element-children/element-children.component.js +3 -3
  14. package/esm2015/cms/components/element-children/element-children.module.js +4 -4
  15. package/esm2015/cms/components/element-renderer/element-renderer.component.js +3 -3
  16. package/esm2015/cms/components/element-renderer/element-renderer.module.js +4 -4
  17. package/esm2015/cms/components/federated/federated.component.js +81 -0
  18. package/esm2015/cms/components/federated/federated.module.js +16 -0
  19. package/esm2015/cms/components/plugin.component.js +3 -3
  20. package/esm2015/cms/components/preview/preview.component.js +3 -3
  21. package/esm2015/cms/components/preview/preview.module.js +4 -4
  22. package/esm2015/cms/directives/custom-template.directive.js +3 -3
  23. package/esm2015/cms/injection-tokens.js +2 -1
  24. package/esm2015/cms/launcher.module.js +4 -4
  25. package/esm2015/cms/modules/configuration/configuration.module.js +4 -4
  26. package/esm2015/cms/modules/configuration/services/configuration.service.js +3 -3
  27. package/esm2015/cms/plugins/configuration.plugin.js +3 -3
  28. package/esm2015/cms/plugins/io.plugin.js +3 -3
  29. package/esm2015/cms/plugins/script.plugin.js +31 -24
  30. package/esm2015/cms/services/dynamic-module.service.js +3 -3
  31. package/esm2015/cms/services/element-context.service.js +3 -3
  32. package/esm2015/cms/services/io-provider.service.js +3 -3
  33. package/esm2015/cms/services/launcher.service.js +6 -5
  34. package/esm2015/cms/services/templates.service.js +3 -3
  35. package/esm2015/cms/utils/element.utils.js +22 -1
  36. package/esm2015/cms/utils/elements-resolver.js +13 -6
  37. package/esm2015/cms/utils/federated.util.js +37 -0
  38. package/esm2015/runtime/components/component-preview/component-preview.component.js +3 -3
  39. package/esm2015/runtime/components/section-renderer/section-renderer.component.js +3 -3
  40. package/esm2015/runtime/components/ui-runtime/runtime.component.js +3 -3
  41. package/esm2015/runtime/components/ui-runtime-preview/runtime-preview.component.js +3 -3
  42. package/esm2015/runtime/execution/components/children-placeholder/children-placeholder.component.js +6 -6
  43. package/esm2015/runtime/execution/components/context-provider/context-provider.component.js +3 -3
  44. package/esm2015/runtime/execution/components/execution-section-renderer/execution-section-renderer.component.js +3 -3
  45. package/esm2015/runtime/execution/components/federated/federated.component.js +3 -3
  46. package/esm2015/runtime/execution/components/velo-attribute/velo-attribute.component.js +3 -3
  47. package/esm2015/runtime/execution/components/velo-multiselect/velo-multiselect.component.js +3 -3
  48. package/esm2015/runtime/execution/components/velo-port-checkbox/velo-port-checkbox.component.js +3 -3
  49. package/esm2015/runtime/execution/components/velo-port-dropdown/velo-port-dropdown.component.js +3 -3
  50. package/esm2015/runtime/execution/components/velo-port-radio/velo-port-radio.component.js +3 -3
  51. package/esm2015/runtime/execution/components/velo-type/velo-type.component.js +3 -3
  52. package/esm2015/runtime/execution/directives/section-script.directive.js +3 -3
  53. package/esm2015/runtime/execution/directives/sf-query.directive.js +3 -3
  54. package/esm2015/runtime/execution/directives/velo-attribute.directive.js +3 -3
  55. package/esm2015/runtime/execution/directives/velo-port.directive.js +18 -18
  56. package/esm2015/runtime/execution/directives/vl-approval.directive.js +3 -3
  57. package/esm2015/runtime/execution/directives/vl-document-attachments.directive.js +3 -3
  58. package/esm2015/runtime/execution/directives/vl-document-templates.directive.js +3 -3
  59. package/esm2015/runtime/execution/directives/vl-quote.directive.js +3 -3
  60. package/esm2015/runtime/execution/directives/vl-ramp.directive.js +3 -3
  61. package/esm2015/runtime/execution/runtime-execution.module.js +4 -4
  62. package/esm2015/runtime/runtime.module.js +4 -4
  63. package/esm2015/runtime/services/cart.service.js +3 -3
  64. package/esm2015/runtime/services/collapsible-state.service.js +3 -3
  65. package/esm2015/runtime/services/configuration.service.js +3 -3
  66. package/esm2015/runtime/services/context.service.js +3 -3
  67. package/esm2015/runtime/services/current-state.service.js +3 -3
  68. package/esm2015/runtime/services/flow.service.js +3 -3
  69. package/esm2015/runtime/services/form-scope.service.js +3 -3
  70. package/esm2015/runtime/services/product-model-cache.service.js +3 -3
  71. package/esm2015/runtime/services/quote.service.js +3 -3
  72. package/esm2015/runtime/services/runtime-context.service.js +3 -3
  73. package/esm2015/runtime/services/runtime-form.service.js +3 -3
  74. package/esm2015/runtime/services/runtime.service.js +3 -3
  75. package/esm2015/runtime/services/section-helper.service.js +3 -3
  76. package/esm2015/runtime/services/section-scope.service.js +3 -3
  77. package/esm2015/runtime/services/section-store.service.js +3 -3
  78. package/esm2015/runtime/services/section.service.js +6 -6
  79. package/fesm2015/veloce-sdk-cms.js +251 -86
  80. package/fesm2015/veloce-sdk-cms.js.map +1 -1
  81. package/fesm2015/veloce-sdk-runtime.js +146 -146
  82. package/fesm2015/veloce-sdk-runtime.js.map +1 -1
  83. package/fesm2015/veloce-sdk.js.map +1 -1
  84. package/package.json +1 -1
@@ -354,6 +354,7 @@
354
354
  var DEFAULT_PLUGINS_TOKEN = new i0.InjectionToken('DEFAULT_PLUGINS_TOKEN');
355
355
  var UI_DEFINITION_METADATA = new i0.InjectionToken('UI_DEFINITION_METADATA_TOKEN');
356
356
  var ELEMENT_METADATA = new i0.InjectionToken('ELEMENT_METADATA_TOKEN');
357
+ var SHARED_ELEMENT_METADATA = new i0.InjectionToken('SHARED_ELEMENT_METADATA_TOKEN');
357
358
  var ELEMENT_CONFIG = new i0.InjectionToken('ELEMENT_CONFIG_TOKEN');
358
359
 
359
360
  var vlInjectionTokens = /*#__PURE__*/Object.freeze({
@@ -361,6 +362,7 @@
361
362
  DEFAULT_PLUGINS_TOKEN: DEFAULT_PLUGINS_TOKEN,
362
363
  UI_DEFINITION_METADATA: UI_DEFINITION_METADATA,
363
364
  ELEMENT_METADATA: ELEMENT_METADATA,
365
+ SHARED_ELEMENT_METADATA: SHARED_ELEMENT_METADATA,
364
366
  ELEMENT_CONFIG: ELEMENT_CONFIG
365
367
  });
366
368
 
@@ -674,9 +676,9 @@
674
676
  };
675
677
  return ConfigurationService;
676
678
  }());
677
- ConfigurationService.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: ConfigurationService, deps: [{ token: i1__namespace.ConfigurationApiService }, { token: i2__namespace.ContextService }, { token: i1__namespace.ConfigurationApiService }, { token: i3__namespace.MessageService }], target: i0__namespace.ɵɵFactoryTarget.Injectable });
678
- ConfigurationService.ɵprov = i0__namespace.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: ConfigurationService });
679
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: ConfigurationService, decorators: [{
679
+ ConfigurationService.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: ConfigurationService, deps: [{ token: i1__namespace.ConfigurationApiService }, { token: i2__namespace.ContextService }, { token: i1__namespace.ConfigurationApiService }, { token: i3__namespace.MessageService }], target: i0__namespace.ɵɵFactoryTarget.Injectable });
680
+ ConfigurationService.ɵprov = i0__namespace.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: ConfigurationService });
681
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: ConfigurationService, decorators: [{
680
682
  type: i0.Injectable
681
683
  }], ctorParameters: function () { return [{ type: i1__namespace.ConfigurationApiService }, { type: i2__namespace.ContextService }, { type: i1__namespace.ConfigurationApiService }, { type: i3__namespace.MessageService }]; } });
682
684
 
@@ -777,9 +779,9 @@
777
779
  };
778
780
  return DynamicModuleService;
779
781
  }());
780
- DynamicModuleService.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: DynamicModuleService, deps: [], target: i0__namespace.ɵɵFactoryTarget.Injectable });
781
- DynamicModuleService.ɵprov = i0__namespace.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: DynamicModuleService });
782
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: DynamicModuleService, decorators: [{
782
+ DynamicModuleService.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: DynamicModuleService, deps: [], target: i0__namespace.ɵɵFactoryTarget.Injectable });
783
+ DynamicModuleService.ɵprov = i0__namespace.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: DynamicModuleService });
784
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: DynamicModuleService, decorators: [{
783
785
  type: i0.Injectable
784
786
  }] });
785
787
 
@@ -819,9 +821,9 @@
819
821
  };
820
822
  return IOProviderService;
821
823
  }());
822
- IOProviderService.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: IOProviderService, deps: [{ token: DynamicModuleService }], target: i0__namespace.ɵɵFactoryTarget.Injectable });
823
- IOProviderService.ɵprov = i0__namespace.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: IOProviderService });
824
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: IOProviderService, decorators: [{
824
+ IOProviderService.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: IOProviderService, deps: [{ token: DynamicModuleService }], target: i0__namespace.ɵɵFactoryTarget.Injectable });
825
+ IOProviderService.ɵprov = i0__namespace.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: IOProviderService });
826
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: IOProviderService, decorators: [{
825
827
  type: i0.Injectable
826
828
  }], ctorParameters: function () { return [{ type: DynamicModuleService }]; } });
827
829
 
@@ -837,9 +839,9 @@
837
839
  };
838
840
  return TemplatesService;
839
841
  }());
840
- TemplatesService.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: TemplatesService, deps: [], target: i0__namespace.ɵɵFactoryTarget.Injectable });
841
- TemplatesService.ɵprov = i0__namespace.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: TemplatesService });
842
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: TemplatesService, decorators: [{
842
+ TemplatesService.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: TemplatesService, deps: [], target: i0__namespace.ɵɵFactoryTarget.Injectable });
843
+ TemplatesService.ɵprov = i0__namespace.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: TemplatesService });
844
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: TemplatesService, decorators: [{
843
845
  type: i0.Injectable
844
846
  }] });
845
847
 
@@ -858,6 +860,30 @@
858
860
  var path = (parentPath ? parentPath + '/' : '') + elementMetadata.name;
859
861
  return Object.assign(Object.assign({}, elementMetadata), { path: path, script: script === null || script === void 0 ? void 0 : script.replace(METADATA_DECORATOR_REGEX, 'export class'), template: template, styles: styles, children: el.children.map(function (child) { return elementToMetadata(child, path); }) });
860
862
  };
863
+ var metadataToElement = function (metadata) {
864
+ var elMetadata = {
865
+ name: metadata.name,
866
+ type: metadata.type,
867
+ model: metadata.model,
868
+ module: metadata.module,
869
+ inputs: metadata.inputs,
870
+ outputs: metadata.outputs,
871
+ children: metadata.children.map(function (_b) {
872
+ var name = _b.name;
873
+ return name;
874
+ }),
875
+ };
876
+ var script = metadata.script &&
877
+ window.btoa(metadata.script.replace(EXPORTED_CLASS_REGEX, "@ElementDefinition(" + JSON.stringify(elMetadata) + ") export class Script "));
878
+ var template = metadata.template && window.btoa(metadata.template);
879
+ var styles = metadata.styles && window.btoa(metadata.styles);
880
+ return {
881
+ script: script,
882
+ template: template,
883
+ styles: styles,
884
+ children: metadata.children.map(function (meta) { return metadataToElement(meta); }),
885
+ };
886
+ };
861
887
  var extractElementMetadata = function (script) {
862
888
  var _a;
863
889
  var metadataString = ((_a = METADATA_DECORATOR_REGEX.exec(script)) !== null && _a !== void 0 ? _a : [])[1];
@@ -882,9 +908,9 @@
882
908
  }
883
909
  return ElementContextService;
884
910
  }());
885
- ElementContextService.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: ElementContextService, deps: [], target: i0__namespace.ɵɵFactoryTarget.Injectable });
886
- ElementContextService.ɵprov = i0__namespace.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: ElementContextService });
887
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: ElementContextService, decorators: [{
911
+ ElementContextService.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: ElementContextService, deps: [], target: i0__namespace.ɵɵFactoryTarget.Injectable });
912
+ ElementContextService.ɵprov = i0__namespace.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: ElementContextService });
913
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: ElementContextService, decorators: [{
888
914
  type: i0.Injectable
889
915
  }] });
890
916
 
@@ -1009,9 +1035,9 @@
1009
1035
  };
1010
1036
  return ElementRendererComponent;
1011
1037
  }());
1012
- ElementRendererComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: ElementRendererComponent, deps: [{ token: i0__namespace.Injector, skipSelf: true }, { token: DynamicModuleService }, { token: ElementContextService }, { token: IOProviderService }, { token: ConfigurationService }, { token: i0__namespace.ElementRef }, { token: i0__namespace.ChangeDetectorRef }], target: i0__namespace.ɵɵFactoryTarget.Component });
1013
- ElementRendererComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: ElementRendererComponent, selector: "vl-cms-element-renderer", inputs: { meta: "meta" }, providers: [ElementContextService], viewQueries: [{ propertyName: "el", first: true, predicate: ["el"], descendants: true, read: i0.ViewContainerRef, static: true }], ngImport: i0__namespace, template: "<ng-template #el></ng-template>\n", styles: [":host{display:contents}\n"], changeDetection: i0__namespace.ChangeDetectionStrategy.OnPush });
1014
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: ElementRendererComponent, decorators: [{
1038
+ ElementRendererComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: ElementRendererComponent, deps: [{ token: i0__namespace.Injector, skipSelf: true }, { token: DynamicModuleService }, { token: ElementContextService }, { token: IOProviderService }, { token: ConfigurationService }, { token: i0__namespace.ElementRef }, { token: i0__namespace.ChangeDetectorRef }], target: i0__namespace.ɵɵFactoryTarget.Component });
1039
+ ElementRendererComponent.ɵcmp = i0__namespace.ɵɵ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: i0.ViewContainerRef, static: true }], ngImport: i0__namespace, template: "<ng-template #el></ng-template>\n", styles: [":host{display:contents}\n"], changeDetection: i0__namespace.ChangeDetectionStrategy.OnPush });
1040
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: ElementRendererComponent, decorators: [{
1015
1041
  type: i0.Component,
1016
1042
  args: [{
1017
1043
  selector: 'vl-cms-element-renderer',
@@ -1038,9 +1064,9 @@
1038
1064
  }
1039
1065
  return ElementChildrenComponent;
1040
1066
  }());
1041
- ElementChildrenComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: ElementChildrenComponent, deps: [{ token: ElementContextService }], target: i0__namespace.ɵɵFactoryTarget.Component });
1042
- ElementChildrenComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: ElementChildrenComponent, selector: "element-children", ngImport: i0__namespace, 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: ElementRendererComponent, selector: "vl-cms-element-renderer", inputs: ["meta"] }], changeDetection: i0__namespace.ChangeDetectionStrategy.OnPush });
1043
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: ElementChildrenComponent, decorators: [{
1067
+ ElementChildrenComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: ElementChildrenComponent, deps: [{ token: ElementContextService }], target: i0__namespace.ɵɵFactoryTarget.Component });
1068
+ ElementChildrenComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: ElementChildrenComponent, selector: "element-children", ngImport: i0__namespace, 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: ElementRendererComponent, selector: "vl-cms-element-renderer", inputs: ["meta"] }], changeDetection: i0__namespace.ChangeDetectionStrategy.OnPush });
1069
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: ElementChildrenComponent, decorators: [{
1044
1070
  type: i0.Component,
1045
1071
  args: [{
1046
1072
  // eslint-disable-next-line @angular-eslint/component-selector
@@ -1065,9 +1091,9 @@
1065
1091
  };
1066
1092
  return CustomTemplateDirective;
1067
1093
  }());
1068
- CustomTemplateDirective.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: CustomTemplateDirective, deps: [{ token: i0__namespace.TemplateRef }, { token: TemplatesService }], target: i0__namespace.ɵɵFactoryTarget.Directive });
1069
- CustomTemplateDirective.ɵdir = i0__namespace.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: CustomTemplateDirective, selector: "[customTemplate]", inputs: { customTemplate: "customTemplate" }, ngImport: i0__namespace });
1070
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: CustomTemplateDirective, decorators: [{
1094
+ CustomTemplateDirective.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: CustomTemplateDirective, deps: [{ token: i0__namespace.TemplateRef }, { token: TemplatesService }], target: i0__namespace.ɵɵFactoryTarget.Directive });
1095
+ CustomTemplateDirective.ɵdir = i0__namespace.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.15", type: CustomTemplateDirective, selector: "[customTemplate]", inputs: { customTemplate: "customTemplate" }, ngImport: i0__namespace });
1096
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: CustomTemplateDirective, decorators: [{
1071
1097
  type: i0.Directive,
1072
1098
  args: [{ selector: '[customTemplate]' }]
1073
1099
  }], ctorParameters: function () { return [{ type: i0__namespace.TemplateRef }, { type: TemplatesService }]; }, propDecorators: { customTemplate: [{
@@ -1176,9 +1202,9 @@
1176
1202
  });
1177
1203
  return ConfigurationPlugin;
1178
1204
  }());
1179
- ConfigurationPlugin.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: ConfigurationPlugin, deps: "invalid", target: i0__namespace.ɵɵFactoryTarget.Directive });
1180
- ConfigurationPlugin.ɵdir = i0__namespace.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: ConfigurationPlugin, ngImport: i0__namespace });
1181
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: ConfigurationPlugin, decorators: [{
1205
+ ConfigurationPlugin.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: ConfigurationPlugin, deps: "invalid", target: i0__namespace.ɵɵFactoryTarget.Directive });
1206
+ ConfigurationPlugin.ɵdir = i0__namespace.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.15", type: ConfigurationPlugin, ngImport: i0__namespace });
1207
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: ConfigurationPlugin, decorators: [{
1182
1208
  type: i0.Directive
1183
1209
  }], ctorParameters: function () { return [{ type: undefined }]; } });
1184
1210
 
@@ -1191,6 +1217,7 @@
1191
1217
  var vlCmsUtils = /*#__PURE__*/Object.freeze({
1192
1218
  __proto__: null,
1193
1219
  elementToMetadata: elementToMetadata,
1220
+ metadataToElement: metadataToElement,
1194
1221
  extractElementMetadata: extractElementMetadata,
1195
1222
  extendElementMetadata: extendElementMetadata,
1196
1223
  parseBoundPath: parseBoundPath,
@@ -1223,34 +1250,41 @@
1223
1250
  var ScriptPlugin = /** @class */ (function () {
1224
1251
  function ScriptPlugin(host) {
1225
1252
  this.host = host;
1226
- var document = this.host.injector.get(i6.DOCUMENT);
1253
+ this.document = this.host.injector.get(i6.DOCUMENT);
1227
1254
  var elementMetadata = this.host.injector.get(ELEMENT_METADATA);
1255
+ var sharedElementMetadata = this.host.injector.get(SHARED_ELEMENT_METADATA);
1256
+ if (sharedElementMetadata === null || sharedElementMetadata === void 0 ? void 0 : sharedElementMetadata.script) {
1257
+ this.addScript(sharedElementMetadata.script);
1258
+ }
1228
1259
  if (elementMetadata.script) {
1229
- var id = btoa(core.UUID.UUID());
1230
- var script = document.createElement('script');
1231
- script.type = "text/javascript";
1232
- var scriptContent = normalizeImports(elementMetadata.script);
1233
- var classMatch = /export class (\S+)/.exec(scriptContent);
1234
- var className = classMatch === null || classMatch === void 0 ? void 0 : classMatch[1];
1235
- if (!classMatch || !className) {
1236
- console.error("Script doesn't have exported class");
1237
- return;
1238
- }
1239
- scriptContent = scriptContent.replace(classMatch[0], "class " + className);
1240
- script.text = "var " + id + " = function(vendor) {" + scriptContent + "\n return " + className + "; };";
1241
- document.body.appendChild(script);
1242
- var ScriptClass = window[id](vendorMap);
1243
- if (ScriptClass instanceof Object) {
1244
- this.host.registerPlugin(new ScriptClass(this.host));
1245
- }
1246
- document.body.removeChild(script);
1260
+ this.addScript(elementMetadata.script);
1247
1261
  }
1248
1262
  }
1263
+ ScriptPlugin.prototype.addScript = function (scriptStr) {
1264
+ var id = btoa(core.UUID.UUID());
1265
+ var script = this.document.createElement('script');
1266
+ script.type = "text/javascript";
1267
+ var scriptContent = normalizeImports(scriptStr);
1268
+ var classMatch = /export class (\S+)/.exec(scriptContent);
1269
+ var className = classMatch === null || classMatch === void 0 ? void 0 : classMatch[1];
1270
+ if (!classMatch || !className) {
1271
+ console.error("Script doesn't have exported class");
1272
+ return;
1273
+ }
1274
+ scriptContent = scriptContent.replace(classMatch[0], "class " + className);
1275
+ script.text = "var " + id + " = function(vendor) {" + scriptContent + "\n return " + className + "; };";
1276
+ this.document.body.appendChild(script);
1277
+ var ScriptClass = window[id](vendorMap);
1278
+ if (ScriptClass instanceof Object) {
1279
+ this.host.registerPlugin(new ScriptClass(this.host));
1280
+ }
1281
+ this.document.body.removeChild(script);
1282
+ };
1249
1283
  return ScriptPlugin;
1250
1284
  }());
1251
- ScriptPlugin.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: ScriptPlugin, deps: [{ token: exports.ElementComponent }], target: i0__namespace.ɵɵFactoryTarget.Directive });
1252
- ScriptPlugin.ɵdir = i0__namespace.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: ScriptPlugin, ngImport: i0__namespace });
1253
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: ScriptPlugin, decorators: [{
1285
+ ScriptPlugin.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: ScriptPlugin, deps: [{ token: exports.ElementComponent }], target: i0__namespace.ɵɵFactoryTarget.Directive });
1286
+ ScriptPlugin.ɵdir = i0__namespace.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.15", type: ScriptPlugin, ngImport: i0__namespace });
1287
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: ScriptPlugin, decorators: [{
1254
1288
  type: i0.Directive
1255
1289
  }], ctorParameters: function () { return [{ type: exports.ElementComponent }]; } });
1256
1290
 
@@ -1289,9 +1323,9 @@
1289
1323
  }
1290
1324
  return IOPlugin;
1291
1325
  }());
1292
- IOPlugin.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: IOPlugin, deps: [{ token: exports.ElementComponent }], target: i0__namespace.ɵɵFactoryTarget.Directive });
1293
- IOPlugin.ɵdir = i0__namespace.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: IOPlugin, ngImport: i0__namespace });
1294
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: IOPlugin, decorators: [{
1326
+ IOPlugin.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: IOPlugin, deps: [{ token: exports.ElementComponent }], target: i0__namespace.ɵɵFactoryTarget.Directive });
1327
+ IOPlugin.ɵdir = i0__namespace.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.15", type: IOPlugin, ngImport: i0__namespace });
1328
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: IOPlugin, decorators: [{
1295
1329
  type: i0.Directive
1296
1330
  }], ctorParameters: function () { return [{ type: exports.ElementComponent }]; } });
1297
1331
 
@@ -1365,19 +1399,25 @@
1365
1399
  ElementsResolver.prototype.isSharedElement = function (el) {
1366
1400
  return Boolean(el.reference) && el.type !== 'REFERENCE';
1367
1401
  };
1368
- ElementsResolver.prototype.processElementMetadata = function (element) {
1402
+ ElementsResolver.prototype.getSharedElement = function (element) {
1403
+ if (element.type !== 'REFERENCE') {
1404
+ return;
1405
+ }
1406
+ return this.sharedElements.find(function (el) { return element.reference === el.name; });
1407
+ };
1408
+ ElementsResolver.prototype.processElementMetadata = function (element, sharedElement) {
1369
1409
  if (element.type === 'REFERENCE') {
1370
- var sharedElement = this.sharedElements.find(function (el) { return element.reference === el.name; });
1371
1410
  if (!sharedElement) {
1372
1411
  console.warn("Shared element \"" + element.reference + "\" not found");
1373
1412
  return;
1374
1413
  }
1375
- return Object.assign(Object.assign({}, element), { type: sharedElement.type, template: sharedElement.template, script: sharedElement.script, styles: sharedElement.styles, inputs: Object.assign(Object.assign({}, sharedElement.inputs), element.inputs), outputs: Object.assign(Object.assign({}, sharedElement.outputs), element.outputs) });
1414
+ return Object.assign(Object.assign({}, element), { type: sharedElement.type, template: sharedElement.template, styles: sharedElement.styles, inputs: Object.assign(Object.assign({}, sharedElement.inputs), element.inputs), outputs: Object.assign(Object.assign({}, sharedElement.outputs), element.outputs) });
1376
1415
  }
1377
1416
  return element;
1378
1417
  };
1379
1418
  ElementsResolver.prototype.resolveElement = function (sourceElement) {
1380
- var element = this.processElementMetadata(sourceElement);
1419
+ var sharedElement = this.getSharedElement(sourceElement);
1420
+ var element = this.processElementMetadata(sourceElement, sharedElement);
1381
1421
  if (!element) {
1382
1422
  return;
1383
1423
  }
@@ -1391,6 +1431,7 @@
1391
1431
  { provide: DEFAULT_PLUGINS_TOKEN, useValue: defaultPlugins },
1392
1432
  { provide: UI_DEFINITION_METADATA, useValue: this.uiDef },
1393
1433
  { provide: ELEMENT_METADATA, useValue: element },
1434
+ { provide: SHARED_ELEMENT_METADATA, useValue: sharedElement },
1394
1435
  { provide: ELEMENT_CONFIG, useValue: config },
1395
1436
  ] });
1396
1437
  var cmp = i0.Component(component)(/** @class */ (function (_super) {
@@ -1410,6 +1451,159 @@
1410
1451
  return ElementsResolver;
1411
1452
  }());
1412
1453
 
1454
+ var moduleMap = {};
1455
+ function loadRemoteEntry(remoteEntry) {
1456
+ return new Promise(function (resolve, reject) {
1457
+ if (moduleMap[remoteEntry]) {
1458
+ resolve();
1459
+ return;
1460
+ }
1461
+ var script = document.createElement('script');
1462
+ script.src = remoteEntry;
1463
+ script.onerror = reject;
1464
+ script.onload = function () {
1465
+ moduleMap[remoteEntry] = true;
1466
+ resolve(); // window is the global namespace
1467
+ };
1468
+ document.body.append(script);
1469
+ });
1470
+ }
1471
+ function lookupExposedModule(remoteName, exposedModule) {
1472
+ return __awaiter(this, void 0, void 0, function () {
1473
+ var container, factory, Module;
1474
+ return __generator(this, function (_a) {
1475
+ switch (_a.label) {
1476
+ case 0:
1477
+ // Initializes the share scope. This fills it with known provided modules from this build and all remotes
1478
+ return [4 /*yield*/, __webpack_init_sharing__('default')];
1479
+ case 1:
1480
+ // Initializes the share scope. This fills it with known provided modules from this build and all remotes
1481
+ _a.sent();
1482
+ container = window[remoteName];
1483
+ // Initialize the container, it may provide shared modules
1484
+ return [4 /*yield*/, container.init(__webpack_share_scopes__.default)];
1485
+ case 2:
1486
+ // Initialize the container, it may provide shared modules
1487
+ _a.sent();
1488
+ return [4 /*yield*/, container.get(exposedModule)];
1489
+ case 3:
1490
+ factory = _a.sent();
1491
+ Module = factory();
1492
+ return [2 /*return*/, Module];
1493
+ }
1494
+ });
1495
+ });
1496
+ }
1497
+ function loadRemoteModule(options) {
1498
+ return __awaiter(this, void 0, void 0, function () {
1499
+ return __generator(this, function (_a) {
1500
+ switch (_a.label) {
1501
+ case 0: return [4 /*yield*/, loadRemoteEntry(options.remoteEntry)];
1502
+ case 1:
1503
+ _a.sent();
1504
+ return [4 /*yield*/, lookupExposedModule(options.remoteName, options.exposedModule)];
1505
+ case 2: return [2 /*return*/, _a.sent()];
1506
+ }
1507
+ });
1508
+ });
1509
+ }
1510
+
1511
+ var IntegrationEvent;
1512
+ (function (IntegrationEvent) {
1513
+ IntegrationEvent["Init"] = "Init";
1514
+ })(IntegrationEvent || (IntegrationEvent = {}));
1515
+ var FederatedComponent = /** @class */ (function () {
1516
+ function FederatedComponent(injector, compiler, appRef, renderer) {
1517
+ this.injector = injector;
1518
+ this.compiler = compiler;
1519
+ this.appRef = appRef;
1520
+ this.renderer = renderer;
1521
+ this.integrationEvent = new i0.EventEmitter();
1522
+ this.moduleReady = false;
1523
+ }
1524
+ FederatedComponent.prototype.ngAfterViewInit = function () {
1525
+ var _this = this;
1526
+ if (!this.remoteEntry || !this.remoteName || !this.exposedModule) {
1527
+ return;
1528
+ }
1529
+ loadRemoteModule({
1530
+ remoteEntry: this.remoteEntry,
1531
+ remoteName: this.remoteName,
1532
+ exposedModule: this.exposedModule,
1533
+ }).then(function (federated) {
1534
+ _this.compiler.compileModuleAsync(federated[_this.exposedModule]).then(function (moduleFactory) {
1535
+ var _a;
1536
+ var rootModuleRef = moduleFactory.create(_this.injector);
1537
+ var rootComponentFactory = rootModuleRef.componentFactoryResolver.resolveComponentFactory(federated[_this.exposedModule].rootComponent);
1538
+ var node = document.createElement('div');
1539
+ var _b = rootComponentFactory.create(_this.injector, [], node), instance = _b.instance, hostView = _b.hostView;
1540
+ _this.instance = instance;
1541
+ _this.instance.data = _this.data;
1542
+ _this.instance.eventData = _this.eventData;
1543
+ _this.instance.integrationEvent = _this.integrationEvent;
1544
+ _this.renderer.appendChild((_a = _this.moduleHostRef) === null || _a === void 0 ? void 0 : _a.nativeElement, node);
1545
+ _this.appRef.attachView(hostView);
1546
+ });
1547
+ });
1548
+ };
1549
+ FederatedComponent.prototype.ngOnChanges = function (changes) {
1550
+ if (!this.instance) {
1551
+ return;
1552
+ }
1553
+ this.instance.ngOnChanges(changes);
1554
+ };
1555
+ return FederatedComponent;
1556
+ }());
1557
+ FederatedComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FederatedComponent, deps: [{ token: i0__namespace.Injector }, { token: i0__namespace.Compiler }, { token: i0__namespace.ApplicationRef }, { token: i0__namespace.Renderer2 }], target: i0__namespace.ɵɵFactoryTarget.Component });
1558
+ FederatedComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: FederatedComponent, selector: "veloce-host-federated", inputs: { remoteEntry: "remoteEntry", remoteName: "remoteName", exposedModule: "exposedModule", data: "data", eventData: "eventData" }, outputs: { integrationEvent: "integrationEvent" }, viewQueries: [{ propertyName: "federatedComponent", first: true, predicate: ["federatedComponent"], descendants: true, read: i0.ViewContainerRef }, { propertyName: "foo", first: true, predicate: ["foo"], descendants: true, read: i0.TemplateRef }, { propertyName: "moduleHostRef", first: true, predicate: ["moduleHost"], descendants: true }], usesOnChanges: true, ngImport: i0__namespace, template: "<div #moduleHost></div>\n", styles: [":host{display:block}div{height:100%}\n"], changeDetection: i0__namespace.ChangeDetectionStrategy.OnPush });
1559
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FederatedComponent, decorators: [{
1560
+ type: i0.Component,
1561
+ args: [{
1562
+ // eslint-disable-next-line @angular-eslint/component-selector
1563
+ selector: 'veloce-host-federated',
1564
+ templateUrl: './federated.component.html',
1565
+ styleUrls: ['./federated.component.scss'],
1566
+ changeDetection: i0.ChangeDetectionStrategy.OnPush,
1567
+ }]
1568
+ }], ctorParameters: function () { return [{ type: i0__namespace.Injector }, { type: i0__namespace.Compiler }, { type: i0__namespace.ApplicationRef }, { type: i0__namespace.Renderer2 }]; }, propDecorators: { federatedComponent: [{
1569
+ type: i0.ViewChild,
1570
+ args: ['federatedComponent', { read: i0.ViewContainerRef }]
1571
+ }], foo: [{
1572
+ type: i0.ViewChild,
1573
+ args: ['foo', { read: i0.TemplateRef }]
1574
+ }], moduleHostRef: [{
1575
+ type: i0.ViewChild,
1576
+ args: ['moduleHost', { static: false }]
1577
+ }], remoteEntry: [{
1578
+ type: i0.Input
1579
+ }], remoteName: [{
1580
+ type: i0.Input
1581
+ }], exposedModule: [{
1582
+ type: i0.Input
1583
+ }], data: [{
1584
+ type: i0.Input
1585
+ }], eventData: [{
1586
+ type: i0.Input
1587
+ }], integrationEvent: [{
1588
+ type: i0.Output
1589
+ }] } });
1590
+
1591
+ var FederatedModule = /** @class */ (function () {
1592
+ function FederatedModule() {
1593
+ }
1594
+ return FederatedModule;
1595
+ }());
1596
+ FederatedModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FederatedModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
1597
+ FederatedModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FederatedModule, declarations: [FederatedComponent], exports: [FederatedComponent] });
1598
+ FederatedModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FederatedModule });
1599
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FederatedModule, decorators: [{
1600
+ type: i0.NgModule,
1601
+ args: [{
1602
+ declarations: [FederatedComponent],
1603
+ exports: [FederatedComponent],
1604
+ }]
1605
+ }] });
1606
+
1413
1607
  var LauncherService = /** @class */ (function () {
1414
1608
  function LauncherService(compiler, dynamicModuleService) {
1415
1609
  this.compiler = compiler;
@@ -1444,7 +1638,7 @@
1444
1638
  }());
1445
1639
  DynamicModule = __decorate([
1446
1640
  i0.NgModule({
1447
- imports: [i6.CommonModule, angularForms.ReactiveFormsModule],
1641
+ imports: [i6.CommonModule, angularForms.ReactiveFormsModule, FederatedModule],
1448
1642
  declarations: __spreadArray(__spreadArray([], __read(staticComponents)), __read(elementsResolver.getNgComponents())),
1449
1643
  jit: true,
1450
1644
  })
@@ -1453,9 +1647,9 @@
1453
1647
  };
1454
1648
  return LauncherService;
1455
1649
  }());
1456
- LauncherService.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: LauncherService, deps: [{ token: i0__namespace.Compiler }, { token: DynamicModuleService }], target: i0__namespace.ɵɵFactoryTarget.Injectable });
1457
- LauncherService.ɵprov = i0__namespace.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: LauncherService });
1458
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: LauncherService, decorators: [{
1650
+ LauncherService.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: LauncherService, deps: [{ token: i0__namespace.Compiler }, { token: DynamicModuleService }], target: i0__namespace.ɵɵFactoryTarget.Injectable });
1651
+ LauncherService.ɵprov = i0__namespace.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: LauncherService });
1652
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: LauncherService, decorators: [{
1459
1653
  type: i0.Injectable
1460
1654
  }], ctorParameters: function () { return [{ type: i0__namespace.Compiler }, { type: DynamicModuleService }]; } });
1461
1655
 
@@ -1505,9 +1699,9 @@
1505
1699
  };
1506
1700
  return PreviewComponent;
1507
1701
  }());
1508
- PreviewComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: PreviewComponent, deps: [{ token: LauncherService }, { token: ConfigurationService }, { token: i3__namespace.MessageService }], target: i0__namespace.ɵɵFactoryTarget.Component });
1509
- PreviewComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: PreviewComponent, selector: "vl-cms-preview", inputs: { modelId: "modelId", uiDefinition: "uiDefinition" }, providers: [IOProviderService, ConfigurationService, TemplatesService], ngImport: i0__namespace, template: "<ng-container *ngIf=\"state$ | async as state\">\n <vl-loader *ngIf=\"state.loading; else content\" [label]=\"'Loading UI'\"></vl-loader>\n\n <ng-template #content>\n <ng-container *ngIf=\"!state.failure\">\n <vl-cms-element-renderer *ngFor=\"let el of elements\" [meta]=\"el\"></vl-cms-element-renderer>\n </ng-container>\n </ng-template>\n</ng-container>\n", styles: [":host{flex-grow:1;display:flex;flex-direction:column;height:100%;all:unset}\n"], components: [{ type: i4__namespace.LoaderComponent, selector: "vl-loader", inputs: ["label"] }, { type: ElementRendererComponent, selector: "vl-cms-element-renderer", inputs: ["meta"] }], directives: [{ type: i6__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6__namespace.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "async": i6__namespace.AsyncPipe }, changeDetection: i0__namespace.ChangeDetectionStrategy.OnPush });
1510
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: PreviewComponent, decorators: [{
1702
+ PreviewComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: PreviewComponent, deps: [{ token: LauncherService }, { token: ConfigurationService }, { token: i3__namespace.MessageService }], target: i0__namespace.ɵɵFactoryTarget.Component });
1703
+ PreviewComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: PreviewComponent, selector: "vl-cms-preview", inputs: { modelId: "modelId", uiDefinition: "uiDefinition" }, providers: [IOProviderService, ConfigurationService, TemplatesService], ngImport: i0__namespace, template: "<ng-container *ngIf=\"state$ | async as state\">\n <vl-loader *ngIf=\"state.loading; else content\" [label]=\"'Loading UI'\"></vl-loader>\n\n <ng-template #content>\n <ng-container *ngIf=\"!state.failure\">\n <vl-cms-element-renderer *ngFor=\"let el of elements\" [meta]=\"el\"></vl-cms-element-renderer>\n </ng-container>\n </ng-template>\n</ng-container>\n", styles: [":host{flex-grow:1;display:flex;flex-direction:column;height:100%}\n"], components: [{ type: i4__namespace.LoaderComponent, selector: "vl-loader", inputs: ["label"] }, { type: ElementRendererComponent, selector: "vl-cms-element-renderer", inputs: ["meta"] }], directives: [{ type: i6__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6__namespace.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "async": i6__namespace.AsyncPipe }, changeDetection: i0__namespace.ChangeDetectionStrategy.OnPush });
1704
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: PreviewComponent, decorators: [{
1511
1705
  type: i0.Component,
1512
1706
  args: [{
1513
1707
  selector: 'vl-cms-preview',
@@ -1527,10 +1721,10 @@
1527
1721
  }
1528
1722
  return ElementRendererModule;
1529
1723
  }());
1530
- ElementRendererModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: ElementRendererModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
1531
- ElementRendererModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: ElementRendererModule, declarations: [ElementRendererComponent], exports: [ElementRendererComponent] });
1532
- ElementRendererModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: ElementRendererModule });
1533
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: ElementRendererModule, decorators: [{
1724
+ ElementRendererModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: ElementRendererModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
1725
+ ElementRendererModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: ElementRendererModule, declarations: [ElementRendererComponent], exports: [ElementRendererComponent] });
1726
+ ElementRendererModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: ElementRendererModule });
1727
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: ElementRendererModule, decorators: [{
1534
1728
  type: i0.NgModule,
1535
1729
  args: [{
1536
1730
  declarations: [ElementRendererComponent],
@@ -1543,10 +1737,10 @@
1543
1737
  }
1544
1738
  return ElementChildrenModule;
1545
1739
  }());
1546
- ElementChildrenModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: ElementChildrenModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
1547
- ElementChildrenModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: ElementChildrenModule, declarations: [ElementChildrenComponent], imports: [ElementRendererModule], exports: [ElementChildrenComponent] });
1548
- ElementChildrenModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: ElementChildrenModule, imports: [[ElementRendererModule]] });
1549
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: ElementChildrenModule, decorators: [{
1740
+ ElementChildrenModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: ElementChildrenModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
1741
+ ElementChildrenModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: ElementChildrenModule, declarations: [ElementChildrenComponent], imports: [ElementRendererModule], exports: [ElementChildrenComponent] });
1742
+ ElementChildrenModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: ElementChildrenModule, imports: [[ElementRendererModule]] });
1743
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: ElementChildrenModule, decorators: [{
1550
1744
  type: i0.NgModule,
1551
1745
  args: [{
1552
1746
  declarations: [ElementChildrenComponent],
@@ -1560,10 +1754,10 @@
1560
1754
  }
1561
1755
  return PreviewModule;
1562
1756
  }());
1563
- PreviewModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: PreviewModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
1564
- PreviewModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: PreviewModule, declarations: [PreviewComponent], imports: [i6.CommonModule, i4.LoaderModule, ElementRendererModule, ElementChildrenModule], exports: [PreviewComponent] });
1565
- PreviewModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: PreviewModule, imports: [[i6.CommonModule, i4.LoaderModule, ElementRendererModule, ElementChildrenModule]] });
1566
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: PreviewModule, decorators: [{
1757
+ PreviewModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: PreviewModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
1758
+ PreviewModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: PreviewModule, declarations: [PreviewComponent], imports: [i6.CommonModule, i4.LoaderModule, ElementRendererModule, ElementChildrenModule], exports: [PreviewComponent] });
1759
+ PreviewModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: PreviewModule, imports: [[i6.CommonModule, i4.LoaderModule, ElementRendererModule, ElementChildrenModule]] });
1760
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: PreviewModule, decorators: [{
1567
1761
  type: i0.NgModule,
1568
1762
  args: [{
1569
1763
  declarations: [PreviewComponent],
@@ -1583,10 +1777,10 @@
1583
1777
  }
1584
1778
  return ConfigurationModule;
1585
1779
  }());
1586
- ConfigurationModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: ConfigurationModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
1587
- ConfigurationModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: ConfigurationModule });
1588
- ConfigurationModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: ConfigurationModule, providers: [i2.ContextService, i1.ContextApiService, i1.ProductModelApiService, i1.ConfigurationApiService] });
1589
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: ConfigurationModule, decorators: [{
1780
+ ConfigurationModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: ConfigurationModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
1781
+ ConfigurationModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: ConfigurationModule });
1782
+ ConfigurationModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: ConfigurationModule, providers: [i2.ContextService, i1.ContextApiService, i1.ProductModelApiService, i1.ConfigurationApiService] });
1783
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: ConfigurationModule, decorators: [{
1590
1784
  type: i0.NgModule,
1591
1785
  args: [{
1592
1786
  providers: [i2.ContextService, i1.ContextApiService, i1.ProductModelApiService, i1.ConfigurationApiService],
@@ -1598,10 +1792,10 @@
1598
1792
  }
1599
1793
  return LauncherModule;
1600
1794
  }());
1601
- LauncherModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: LauncherModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
1602
- LauncherModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: LauncherModule, imports: [i6.CommonModule, core.CoreModule, ConfigurationModule] });
1603
- LauncherModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: LauncherModule, providers: [LauncherService, DynamicModuleService], imports: [[i6.CommonModule, core.CoreModule, ConfigurationModule]] });
1604
- i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: LauncherModule, decorators: [{
1795
+ LauncherModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: LauncherModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
1796
+ LauncherModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: LauncherModule, imports: [i6.CommonModule, core.CoreModule, ConfigurationModule] });
1797
+ LauncherModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: LauncherModule, providers: [LauncherService, DynamicModuleService], imports: [[i6.CommonModule, core.CoreModule, ConfigurationModule]] });
1798
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: LauncherModule, decorators: [{
1605
1799
  type: i0.NgModule,
1606
1800
  args: [{
1607
1801
  imports: [i6.CommonModule, core.CoreModule, ConfigurationModule],
@@ -1623,6 +1817,7 @@
1623
1817
  exports.LineItemWorker = LineItemWorker;
1624
1818
  exports.PreviewComponent = PreviewComponent;
1625
1819
  exports.PreviewModule = PreviewModule;
1820
+ exports.SHARED_ELEMENT_METADATA = SHARED_ELEMENT_METADATA;
1626
1821
  exports.TemplatesService = TemplatesService;
1627
1822
  exports.UI_DEFINITION_METADATA = UI_DEFINITION_METADATA;
1628
1823
  exports.elementToMetadata = elementToMetadata;
@@ -1636,6 +1831,7 @@
1636
1831
  exports.getRecommendedPrices = getRecommendedPrices;
1637
1832
  exports.insertLineItem = insertLineItem;
1638
1833
  exports.mapAttributes = mapAttributes;
1834
+ exports.metadataToElement = metadataToElement;
1639
1835
  exports.parseBoundPath = parseBoundPath;
1640
1836
  exports.patchAttributes = patchAttributes;
1641
1837
  exports.removeLineItem = removeLineItem;