@pepperi-addons/ngx-composite-lib 0.4.2-beta.5 → 0.4.2-beta.51
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/core/common/services/dimx.service.d.ts +4 -0
- package/esm2020/core/common/services/dimx.service.mjs +1 -1
- package/esm2020/flow-picker-button/flow-picker-button.component.mjs +88 -0
- package/esm2020/flow-picker-button/flow-picker-button.module.mjs +36 -0
- package/esm2020/flow-picker-button/flow-picker-button.service.mjs +21 -0
- package/esm2020/flow-picker-button/pepperi-addons-ngx-composite-lib-flow-picker-button.mjs +5 -0
- package/esm2020/flow-picker-button/public-api.mjs +6 -0
- package/esm2020/generic-form/generic-form.component.mjs +3 -3
- package/esm2020/generic-list/generic-list.component.mjs +53 -7
- package/esm2020/generic-list/generic-list.service.mjs +6 -2
- package/esm2020/group-buttons-settings/group-buttons-settings.component.mjs +12 -5
- package/esm2020/group-buttons-settings/group-buttons-settings.model.mjs +1 -1
- package/esm2020/icon-picker/icon-picker.component.mjs +76 -0
- package/esm2020/icon-picker/icon-picker.module.mjs +44 -0
- package/esm2020/icon-picker/icon-picker.service.mjs +17 -0
- package/esm2020/icon-picker/pepperi-addons-ngx-composite-lib-icon-picker.mjs +5 -0
- package/esm2020/icon-picker/public-api.mjs +6 -0
- package/esm2020/manage-parameters/manage-parameter/manage-parameter.component.mjs +82 -0
- package/esm2020/manage-parameters/manage-parameters.component.mjs +153 -0
- package/esm2020/manage-parameters/manage-parameters.model.mjs +24 -0
- package/esm2020/manage-parameters/manage-parameters.module.mjs +45 -0
- package/esm2020/manage-parameters/manage-parameters.service.mjs +142 -0
- package/esm2020/manage-parameters/pepperi-addons-ngx-composite-lib-manage-parameters.mjs +5 -0
- package/esm2020/manage-parameters/public-api.mjs +8 -0
- package/esm2020/rich-text/pepperi-addons-ngx-composite-lib-rich-text.mjs +5 -0
- package/esm2020/rich-text/public-api.mjs +6 -0
- package/esm2020/rich-text/rich-text.component.mjs +154 -0
- package/esm2020/rich-text/rich-text.module.mjs +52 -0
- package/esm2020/rich-text/rich-text.service.mjs +21 -0
- package/esm2020/show-if-badge/pepperi-addons-ngx-composite-lib-show-if-badge.mjs +5 -0
- package/esm2020/show-if-badge/public-api.mjs +6 -0
- package/esm2020/show-if-badge/show-if-badge.component.mjs +44 -0
- package/esm2020/show-if-badge/show-if-badge.module.mjs +50 -0
- package/fesm2015/pepperi-addons-ngx-composite-lib-flow-picker-button.mjs +155 -0
- package/fesm2015/pepperi-addons-ngx-composite-lib-flow-picker-button.mjs.map +1 -0
- package/fesm2015/pepperi-addons-ngx-composite-lib-generic-form.mjs +2 -2
- package/fesm2015/pepperi-addons-ngx-composite-lib-generic-form.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-composite-lib-generic-list.mjs +59 -7
- package/fesm2015/pepperi-addons-ngx-composite-lib-generic-list.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-composite-lib-group-buttons-settings.mjs +11 -4
- package/fesm2015/pepperi-addons-ngx-composite-lib-group-buttons-settings.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-composite-lib-icon-picker.mjs +143 -0
- package/fesm2015/pepperi-addons-ngx-composite-lib-icon-picker.mjs.map +1 -0
- package/fesm2015/pepperi-addons-ngx-composite-lib-manage-parameters.mjs +441 -0
- package/fesm2015/pepperi-addons-ngx-composite-lib-manage-parameters.mjs.map +1 -0
- package/fesm2015/pepperi-addons-ngx-composite-lib-rich-text.mjs +234 -0
- package/fesm2015/pepperi-addons-ngx-composite-lib-rich-text.mjs.map +1 -0
- package/fesm2015/pepperi-addons-ngx-composite-lib-show-if-badge.mjs +100 -0
- package/fesm2015/pepperi-addons-ngx-composite-lib-show-if-badge.mjs.map +1 -0
- package/fesm2015/pepperi-addons-ngx-composite-lib.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-composite-lib-flow-picker-button.mjs +149 -0
- package/fesm2020/pepperi-addons-ngx-composite-lib-flow-picker-button.mjs.map +1 -0
- package/fesm2020/pepperi-addons-ngx-composite-lib-generic-form.mjs +2 -2
- package/fesm2020/pepperi-addons-ngx-composite-lib-generic-form.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-composite-lib-generic-list.mjs +57 -7
- package/fesm2020/pepperi-addons-ngx-composite-lib-generic-list.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-composite-lib-group-buttons-settings.mjs +11 -4
- package/fesm2020/pepperi-addons-ngx-composite-lib-group-buttons-settings.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-composite-lib-icon-picker.mjs +142 -0
- package/fesm2020/pepperi-addons-ngx-composite-lib-icon-picker.mjs.map +1 -0
- package/fesm2020/pepperi-addons-ngx-composite-lib-manage-parameters.mjs +438 -0
- package/fesm2020/pepperi-addons-ngx-composite-lib-manage-parameters.mjs.map +1 -0
- package/fesm2020/pepperi-addons-ngx-composite-lib-rich-text.mjs +230 -0
- package/fesm2020/pepperi-addons-ngx-composite-lib-rich-text.mjs.map +1 -0
- package/fesm2020/pepperi-addons-ngx-composite-lib-show-if-badge.mjs +100 -0
- package/fesm2020/pepperi-addons-ngx-composite-lib-show-if-badge.mjs.map +1 -0
- package/fesm2020/pepperi-addons-ngx-composite-lib.mjs.map +1 -1
- package/flow-picker-button/flow-picker-button.component.d.ts +23 -0
- package/flow-picker-button/flow-picker-button.module.d.ts +11 -0
- package/flow-picker-button/flow-picker-button.service.d.ts +9 -0
- package/flow-picker-button/index.d.ts +5 -0
- package/flow-picker-button/public-api.d.ts +2 -0
- package/generic-list/generic-list.component.d.ts +15 -5
- package/generic-list/generic-list.service.d.ts +2 -1
- package/group-buttons-settings/group-buttons-settings.component.d.ts +1 -1
- package/group-buttons-settings/group-buttons-settings.model.d.ts +1 -1
- package/icon-picker/icon-picker.component.d.ts +22 -0
- package/icon-picker/icon-picker.module.d.ts +13 -0
- package/icon-picker/icon-picker.service.d.ts +8 -0
- package/icon-picker/index.d.ts +5 -0
- package/icon-picker/public-api.d.ts +2 -0
- package/manage-parameters/index.d.ts +5 -0
- package/manage-parameters/manage-parameter/manage-parameter.component.d.ts +28 -0
- package/manage-parameters/manage-parameters.component.d.ts +33 -0
- package/manage-parameters/manage-parameters.model.d.ts +21 -0
- package/manage-parameters/manage-parameters.module.d.ts +14 -0
- package/manage-parameters/manage-parameters.service.d.ts +16 -0
- package/manage-parameters/public-api.d.ts +3 -0
- package/package.json +42 -2
- package/rich-text/index.d.ts +5 -0
- package/rich-text/public-api.d.ts +2 -0
- package/rich-text/rich-text.component.d.ts +43 -0
- package/rich-text/rich-text.module.d.ts +16 -0
- package/rich-text/rich-text.service.d.ts +9 -0
- package/show-if-badge/index.d.ts +5 -0
- package/show-if-badge/public-api.d.ts +2 -0
- package/show-if-badge/show-if-badge.component.d.ts +20 -0
- package/show-if-badge/show-if-badge.module.d.ts +16 -0
- package/src/assets/i18n/en.ngx-composite-lib.json +33 -0
- package/src/assets/images/brand-leaf-full@1x.png +0 -0
- package/src/assets/images/brand-leaf-full@2x.png +0 -0
- package/src/assets/images/brand-leaf-round.png +0 -0
- package/src/assets/images/brand-leaf-round@2x.png +0 -0
- package/src/assets/images/brand-leaf-skiny@1x.png +0 -0
- package/src/assets/images/brand-leaf-skiny@2x.png +0 -0
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
// import { AddonDataScheme, FlowParam, FormDataView, NgComponentRelation } from "@pepperi-addons/papi-sdk";
|
|
2
|
+
// import { IAddonBlockLoaderDialogOptions } from "@pepperi-addons/ngx-lib/remote-loader";
|
|
3
|
+
export {};
|
|
4
|
+
// export interface FlowDraggableItem extends IPepDraggableItem {
|
|
5
|
+
// data: {
|
|
6
|
+
// key: string;
|
|
7
|
+
// addonUUID: string;
|
|
8
|
+
// blockExecutionRelativeURL: string;
|
|
9
|
+
// moduleName: string;
|
|
10
|
+
// componentName: string;
|
|
11
|
+
// }
|
|
12
|
+
// }
|
|
13
|
+
// export interface FlowPickerData {
|
|
14
|
+
// runFlowData?: FlowObject
|
|
15
|
+
// fields?: AddonDataScheme['Fields']
|
|
16
|
+
// }
|
|
17
|
+
// export interface PageTitleButton {
|
|
18
|
+
// Key: string;
|
|
19
|
+
// Title: string;
|
|
20
|
+
// StyleType: PepStyleType;
|
|
21
|
+
// Disabled: boolean
|
|
22
|
+
// }
|
|
23
|
+
// export type PollResultCallback = (status: DebugFlowResult)=> void;
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFuYWdlLXBhcmFtZXRlcnMubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtY29tcG9zaXRlLWxpYi9tYW5hZ2UtcGFyYW1ldGVycy9tYW5hZ2UtcGFyYW1ldGVycy5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSw0R0FBNEc7QUFDNUcsMEZBQTBGOztBQXNEMUYsaUVBQWlFO0FBQ2pFLGNBQWM7QUFDZCx1QkFBdUI7QUFDdkIsNkJBQTZCO0FBQzdCLDZDQUE2QztBQUM3Qyw4QkFBOEI7QUFDOUIsaUNBQWlDO0FBQ2pDLFFBQVE7QUFDUixJQUFJO0FBRUosb0NBQW9DO0FBQ3BDLCtCQUErQjtBQUMvQix5Q0FBeUM7QUFDekMsSUFBSTtBQUVKLHFDQUFxQztBQUNyQyxtQkFBbUI7QUFDbkIscUJBQXFCO0FBQ3JCLCtCQUErQjtBQUMvQix3QkFBd0I7QUFDeEIsSUFBSTtBQUVKLHFFQUFxRSIsInNvdXJjZXNDb250ZW50IjpbIi8vIGltcG9ydCB7IEFkZG9uRGF0YVNjaGVtZSwgRmxvd1BhcmFtLCBGb3JtRGF0YVZpZXcsIE5nQ29tcG9uZW50UmVsYXRpb24gfSBmcm9tIFwiQHBlcHBlcmktYWRkb25zL3BhcGktc2RrXCI7XHJcbi8vIGltcG9ydCB7IElBZGRvbkJsb2NrTG9hZGVyRGlhbG9nT3B0aW9ucyB9IGZyb20gXCJAcGVwcGVyaS1hZGRvbnMvbmd4LWxpYi9yZW1vdGUtbG9hZGVyXCI7XHJcblxyXG5pbXBvcnQgeyBEYXRhVmlld0ZpZWxkVHlwZSwgU2NoZW1lRmllbGRUeXBlIH0gZnJvbSBcIkBwZXBwZXJpLWFkZG9ucy9wYXBpLXNka1wiO1xyXG5cclxuLy8gaW1wb3J0IHsgRGVidWdGbG93UmVzdWx0LCBGbG93T2JqZWN0LCBMb2dpY0Jsb2NrIH0gZnJvbSBcInNoYXJlZFwiO1xyXG4vLyBpbXBvcnQgeyBJUGVwRHJhZ2dhYmxlSXRlbSB9IGZyb20gXCJAcGVwcGVyaS1hZGRvbnMvbmd4LWxpYi9kcmFnZ2FibGUtaXRlbXNcIjtcclxuLy8gaW1wb3J0IHsgUGVwU3R5bGVUeXBlIH0gZnJvbSBcIkBwZXBwZXJpLWFkZG9ucy9uZ3gtbGliXCI7XHJcblxyXG4vLyBleHBvcnQgaW50ZXJmYWNlIExvZ2ljQmxvY2tFZGl0b3JPcHRpb25zIGV4dGVuZHMgSUFkZG9uQmxvY2tMb2FkZXJEaWFsb2dPcHRpb25zIHtcclxuLy8gICAgIGJsb2NrOiBMb2dpY0Jsb2NrO1xyXG4vLyB9XHJcblxyXG4vLyBleHBvcnQgaW50ZXJmYWNlIExvZ2ljQmxvY2tSZWxhdGlvbiBleHRlbmRzIE5nQ29tcG9uZW50UmVsYXRpb24ge1xyXG4vLyAgICAgQmxvY2tFeGVjdXRpb25SZWxhdGl2ZVVSTDogc3RyaW5nO1xyXG4vLyB9XHJcblxyXG4vLyBleHBvcnQgdHlwZSBBY3Rpb25UeXBlID0gJ0FkZCcgfCAnRWRpdCcgfCAnRGVsZXRlJyB8ICdEdXBsaWNhdGUnIHwgJ0xvZ3MnIHwgJ1Rlc3QnO1xyXG5cclxuLy8gZXhwb3J0IGludGVyZmFjZSBBY3Rpb25DbGlja2VkRXZlbnREYXRhIHtcclxuLy8gICAgIEFjdGlvblR5cGU6IEFjdGlvblR5cGUsXHJcbi8vICAgICBJdGVtS2V5Pzogc3RyaW5nXHJcbi8vIH1cclxuXHJcbi8vIGV4cG9ydCBjb25zdCBHTF9QQUdFX1NJWkUgPSAzMDtcclxuLy8gZXhwb3J0IGNvbnN0IEFQSV9QQUdFX1NJWkUgPSAxMDA7XHJcbi8vIGV4cG9ydCBjb25zdCBTRUxFQ1RJT05fRklFTERfUFJFRklYID0gJ1ZhbHVlU2VsZWN0aW9uVHlwZV8nO1xyXG5cclxuLy8gZXhwb3J0IGNvbnN0IFNFQ09ORCA9IDEwMDA7XHJcbi8vIGV4cG9ydCBjb25zdCBNSU5VVEUgPSA2MCAqIFNFQ09ORDtcclxuXHJcbmV4cG9ydCB0eXBlIFBhcmFtZXRlckZvcm1UeXBlID0gJ2FkZCcgfCAnZWRpdCc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIElQYXJhbWV0ZXJzQ29sdW1uIHtcclxuICAgIEtleTogc3RyaW5nOyAvLyBUaGlzIGlzIHRoZSBwcm9wZXJ0eSBuYW1lIG9mIHRoZSBwYXJhbWV0ZXIuXHJcbiAgICBUaXRsZTogc3RyaW5nO1xyXG4gICAgVHlwZTogRGF0YVZpZXdGaWVsZFR5cGUsXHJcbiAgICBXaWR0aDogbnVtYmVyO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIElQYXJhbWVtZXRlciB7XHJcbiAgICBLZXk6IHN0cmluZztcclxuICAgIFR5cGU6IFNjaGVtZUZpZWxkVHlwZTtcclxuICAgIERlc2NyaXB0aW9uPzogc3RyaW5nO1xyXG4gICAgRGVmYXVsdFZhbHVlOiBhbnk7XHJcbiAgICBba2V5OiBzdHJpbmddOiBhbnk7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSVBhcmFtZXRlckZvcm1EYXRhIHtcclxuICAgIE1vZGU6IFBhcmFtZXRlckZvcm1UeXBlO1xyXG4gICAgUGFyYW1ldGVyOiBJUGFyYW1lbWV0ZXI7XHJcbiAgICBTaG93VHlwZT86IGJvb2xlYW47XHJcbiAgICBTaG93QWNjZXNzaWJpbGl0eT86IGJvb2xlYW47XHJcbn1cclxuXHJcbi8vIGV4cG9ydCBpbnRlcmZhY2UgRmxvd0RyYWdnYWJsZUl0ZW0gZXh0ZW5kcyBJUGVwRHJhZ2dhYmxlSXRlbSB7XHJcbi8vICAgICBkYXRhOiB7XHJcbi8vICAgICAgICAga2V5OiBzdHJpbmc7XHJcbi8vICAgICAgICAgYWRkb25VVUlEOiBzdHJpbmc7XHJcbi8vICAgICAgICAgYmxvY2tFeGVjdXRpb25SZWxhdGl2ZVVSTDogc3RyaW5nO1xyXG4vLyAgICAgICAgIG1vZHVsZU5hbWU6IHN0cmluZztcclxuLy8gICAgICAgICBjb21wb25lbnROYW1lOiBzdHJpbmc7XHJcbi8vICAgICB9XHJcbi8vIH1cclxuXHJcbi8vIGV4cG9ydCBpbnRlcmZhY2UgRmxvd1BpY2tlckRhdGEge1xyXG4vLyAgICAgcnVuRmxvd0RhdGE/OiBGbG93T2JqZWN0XHJcbi8vICAgICBmaWVsZHM/OiBBZGRvbkRhdGFTY2hlbWVbJ0ZpZWxkcyddXHJcbi8vIH1cclxuXHJcbi8vIGV4cG9ydCBpbnRlcmZhY2UgUGFnZVRpdGxlQnV0dG9uIHtcclxuLy8gICAgIEtleTogc3RyaW5nO1xyXG4vLyAgICAgVGl0bGU6IHN0cmluZztcclxuLy8gICAgIFN0eWxlVHlwZTogUGVwU3R5bGVUeXBlO1xyXG4vLyAgICAgRGlzYWJsZWQ6IGJvb2xlYW5cclxuLy8gfVxyXG5cclxuLy8gZXhwb3J0IHR5cGUgUG9sbFJlc3VsdENhbGxiYWNrID0gKHN0YXR1czogRGVidWdGbG93UmVzdWx0KT0+IHZvaWQ7Il19
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { PepNgxLibModule } from '@pepperi-addons/ngx-lib';
|
|
4
|
+
import { ManageParametersComponent } from './manage-parameters.component';
|
|
5
|
+
import { ManageParameterComponent } from './manage-parameter/manage-parameter.component';
|
|
6
|
+
import { PepDialogModule } from '@pepperi-addons/ngx-lib/dialog';
|
|
7
|
+
import { PepGenericListModule } from '@pepperi-addons/ngx-composite-lib/generic-list';
|
|
8
|
+
import { PepGenericFormModule } from '@pepperi-addons/ngx-composite-lib/generic-form';
|
|
9
|
+
import { PepButtonModule } from '@pepperi-addons/ngx-lib/button';
|
|
10
|
+
import { ManageParametersService } from './manage-parameters.service';
|
|
11
|
+
import * as i0 from "@angular/core";
|
|
12
|
+
export class PepManageParametersModule {
|
|
13
|
+
}
|
|
14
|
+
PepManageParametersModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PepManageParametersModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
15
|
+
PepManageParametersModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.2", ngImport: i0, type: PepManageParametersModule, declarations: [ManageParametersComponent, ManageParameterComponent], imports: [CommonModule,
|
|
16
|
+
PepNgxLibModule,
|
|
17
|
+
PepDialogModule,
|
|
18
|
+
PepButtonModule,
|
|
19
|
+
PepGenericListModule,
|
|
20
|
+
PepGenericFormModule], exports: [ManageParametersComponent] });
|
|
21
|
+
PepManageParametersModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PepManageParametersModule, providers: [ManageParametersService], imports: [CommonModule,
|
|
22
|
+
PepNgxLibModule,
|
|
23
|
+
PepDialogModule,
|
|
24
|
+
PepButtonModule,
|
|
25
|
+
PepGenericListModule,
|
|
26
|
+
PepGenericFormModule] });
|
|
27
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PepManageParametersModule, decorators: [{
|
|
28
|
+
type: NgModule,
|
|
29
|
+
args: [{
|
|
30
|
+
declarations: [
|
|
31
|
+
ManageParametersComponent, ManageParameterComponent
|
|
32
|
+
],
|
|
33
|
+
imports: [
|
|
34
|
+
CommonModule,
|
|
35
|
+
PepNgxLibModule,
|
|
36
|
+
PepDialogModule,
|
|
37
|
+
PepButtonModule,
|
|
38
|
+
PepGenericListModule,
|
|
39
|
+
PepGenericFormModule
|
|
40
|
+
],
|
|
41
|
+
providers: [ManageParametersService],
|
|
42
|
+
exports: [ManageParametersComponent],
|
|
43
|
+
}]
|
|
44
|
+
}] });
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFuYWdlLXBhcmFtZXRlcnMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWNvbXBvc2l0ZS1saWIvbWFuYWdlLXBhcmFtZXRlcnMvbWFuYWdlLXBhcmFtZXRlcnMubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUMxRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQztBQUN6RixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDakUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDdEYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDdEYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ2pFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDOztBQWlCdEUsTUFBTSxPQUFPLHlCQUF5Qjs7c0hBQXpCLHlCQUF5Qjt1SEFBekIseUJBQXlCLGlCQWI5Qix5QkFBeUIsRUFBRSx3QkFBd0IsYUFHbkQsWUFBWTtRQUNaLGVBQWU7UUFDZixlQUFlO1FBQ2YsZUFBZTtRQUNmLG9CQUFvQjtRQUNwQixvQkFBb0IsYUFHZCx5QkFBeUI7dUhBRTFCLHlCQUF5QixhQUh2QixDQUFDLHVCQUF1QixDQUFDLFlBUGhDLFlBQVk7UUFDWixlQUFlO1FBQ2YsZUFBZTtRQUNmLGVBQWU7UUFDZixvQkFBb0I7UUFDcEIsb0JBQW9COzJGQUtmLHlCQUF5QjtrQkFmckMsUUFBUTttQkFBQztvQkFDTixZQUFZLEVBQUU7d0JBQ1YseUJBQXlCLEVBQUUsd0JBQXdCO3FCQUN0RDtvQkFDRCxPQUFPLEVBQUU7d0JBQ0wsWUFBWTt3QkFDWixlQUFlO3dCQUNmLGVBQWU7d0JBQ2YsZUFBZTt3QkFDZixvQkFBb0I7d0JBQ3BCLG9CQUFvQjtxQkFDdkI7b0JBQ0QsU0FBUyxFQUFFLENBQUMsdUJBQXVCLENBQUM7b0JBQ3BDLE9BQU8sRUFBRSxDQUFDLHlCQUF5QixDQUFDO2lCQUN2QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgUGVwTmd4TGliTW9kdWxlIH0gZnJvbSAnQHBlcHBlcmktYWRkb25zL25neC1saWInO1xuaW1wb3J0IHsgTWFuYWdlUGFyYW1ldGVyc0NvbXBvbmVudCB9IGZyb20gJy4vbWFuYWdlLXBhcmFtZXRlcnMuY29tcG9uZW50JztcbmltcG9ydCB7IE1hbmFnZVBhcmFtZXRlckNvbXBvbmVudCB9IGZyb20gJy4vbWFuYWdlLXBhcmFtZXRlci9tYW5hZ2UtcGFyYW1ldGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQZXBEaWFsb2dNb2R1bGUgfSBmcm9tICdAcGVwcGVyaS1hZGRvbnMvbmd4LWxpYi9kaWFsb2cnO1xuaW1wb3J0IHsgUGVwR2VuZXJpY0xpc3RNb2R1bGUgfSBmcm9tICdAcGVwcGVyaS1hZGRvbnMvbmd4LWNvbXBvc2l0ZS1saWIvZ2VuZXJpYy1saXN0JztcbmltcG9ydCB7IFBlcEdlbmVyaWNGb3JtTW9kdWxlIH0gZnJvbSAnQHBlcHBlcmktYWRkb25zL25neC1jb21wb3NpdGUtbGliL2dlbmVyaWMtZm9ybSc7XG5pbXBvcnQgeyBQZXBCdXR0b25Nb2R1bGUgfSBmcm9tICdAcGVwcGVyaS1hZGRvbnMvbmd4LWxpYi9idXR0b24nO1xuaW1wb3J0IHsgTWFuYWdlUGFyYW1ldGVyc1NlcnZpY2UgfSBmcm9tICcuL21hbmFnZS1wYXJhbWV0ZXJzLnNlcnZpY2UnO1xuXG5ATmdNb2R1bGUoe1xuICAgIGRlY2xhcmF0aW9uczogW1xuICAgICAgICBNYW5hZ2VQYXJhbWV0ZXJzQ29tcG9uZW50LCBNYW5hZ2VQYXJhbWV0ZXJDb21wb25lbnRcbiAgICBdLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICBQZXBOZ3hMaWJNb2R1bGUsXG4gICAgICAgIFBlcERpYWxvZ01vZHVsZSxcbiAgICAgICAgUGVwQnV0dG9uTW9kdWxlLFxuICAgICAgICBQZXBHZW5lcmljTGlzdE1vZHVsZSxcbiAgICAgICAgUGVwR2VuZXJpY0Zvcm1Nb2R1bGVcbiAgICBdLFxuICAgIHByb3ZpZGVyczogW01hbmFnZVBhcmFtZXRlcnNTZXJ2aWNlXSxcbiAgICBleHBvcnRzOiBbTWFuYWdlUGFyYW1ldGVyc0NvbXBvbmVudF0sXG59KVxuZXhwb3J0IGNsYXNzIFBlcE1hbmFnZVBhcmFtZXRlcnNNb2R1bGUgeyB9XG4iXX0=
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
import { Injectable } from "@angular/core";
|
|
2
|
+
import { SchemeFieldTypes } from "@pepperi-addons/papi-sdk";
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@ngx-translate/core";
|
|
5
|
+
export class ManageParametersService {
|
|
6
|
+
constructor(translate) {
|
|
7
|
+
this.translate = translate;
|
|
8
|
+
}
|
|
9
|
+
getAvailableTypes() {
|
|
10
|
+
const types = SchemeFieldTypes.filter(type => ['Array', 'DateTime', 'Resource', 'ContainedResource', 'DynamicResource', 'ContainedDynamicResource', 'MultipleStringValues'].includes(type) === false);
|
|
11
|
+
return types.map(type => {
|
|
12
|
+
return {
|
|
13
|
+
Key: type,
|
|
14
|
+
Value: type
|
|
15
|
+
};
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
convertParamsTypeToDVType(paramType) {
|
|
19
|
+
let res = 'TextBox';
|
|
20
|
+
switch (paramType) {
|
|
21
|
+
case 'Bool': {
|
|
22
|
+
res = 'Boolean';
|
|
23
|
+
break;
|
|
24
|
+
}
|
|
25
|
+
case 'Integer': {
|
|
26
|
+
res = 'NumberInteger';
|
|
27
|
+
break;
|
|
28
|
+
}
|
|
29
|
+
case 'Double': {
|
|
30
|
+
res = 'NumberReal';
|
|
31
|
+
break;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
return res;
|
|
35
|
+
}
|
|
36
|
+
getDataViewField(fieldId, type, title, mandatory, readOnly, optionalValues = undefined, additionalProps = undefined, layout = undefined) {
|
|
37
|
+
const res = {
|
|
38
|
+
FieldID: fieldId,
|
|
39
|
+
Type: type,
|
|
40
|
+
Title: title,
|
|
41
|
+
Mandatory: mandatory,
|
|
42
|
+
ReadOnly: readOnly
|
|
43
|
+
};
|
|
44
|
+
if (optionalValues) {
|
|
45
|
+
res['OptionalValues'] = optionalValues;
|
|
46
|
+
}
|
|
47
|
+
if (additionalProps) {
|
|
48
|
+
res['AdditionalProps'] = additionalProps;
|
|
49
|
+
}
|
|
50
|
+
if (layout) {
|
|
51
|
+
res['Layout'] = layout;
|
|
52
|
+
}
|
|
53
|
+
return res;
|
|
54
|
+
}
|
|
55
|
+
getParametersListDataView(parametersColumns, showType, showAccessibility) {
|
|
56
|
+
let fields;
|
|
57
|
+
let columns;
|
|
58
|
+
// If columns are defined, use them. Otherwise, use the default columns.
|
|
59
|
+
if (parametersColumns.length > 0) {
|
|
60
|
+
fields = parametersColumns.map(column => {
|
|
61
|
+
return this.getDataViewField(column.Key, column.Type, column.Title, false, true, [], {});
|
|
62
|
+
});
|
|
63
|
+
columns = parametersColumns.map(column => {
|
|
64
|
+
return { Width: column.Width };
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
else {
|
|
68
|
+
// Add Key and Description fields.
|
|
69
|
+
fields = [
|
|
70
|
+
this.getDataViewField('Key', 'Link', this.translate.instant('MANAGE_PARAMETERS.KEY_TITLE'), false, true),
|
|
71
|
+
this.getDataViewField('Description', 'TextBox', this.translate.instant('MANAGE_PARAMETERS.DESCRIPTION_TITLE'), false, true),
|
|
72
|
+
];
|
|
73
|
+
// Add Type field only if showType is true.
|
|
74
|
+
if (showType) {
|
|
75
|
+
fields.push(this.getDataViewField('Type', 'TextBox', this.translate.instant('MANAGE_PARAMETERS.TYPE_TITLE'), false, true));
|
|
76
|
+
}
|
|
77
|
+
// Add DefaultValue field.
|
|
78
|
+
fields.push(this.getDataViewField('DefaultValue', 'TextBox', this.translate.instant('MANAGE_PARAMETERS.DEFAULT_VALUE_TITLE'), false, true));
|
|
79
|
+
// Add Internal field.
|
|
80
|
+
if (showAccessibility) {
|
|
81
|
+
fields.push(this.getDataViewField('Internal', 'Boolean', this.translate.instant('MANAGE_PARAMETERS.INTERNAL_TITLE'), false, true));
|
|
82
|
+
}
|
|
83
|
+
columns = fields.map(field => {
|
|
84
|
+
return { Width: 100 / fields.length };
|
|
85
|
+
});
|
|
86
|
+
}
|
|
87
|
+
return {
|
|
88
|
+
Context: {
|
|
89
|
+
Name: '',
|
|
90
|
+
Profile: { InternalID: 0 },
|
|
91
|
+
ScreenSize: 'Landscape'
|
|
92
|
+
},
|
|
93
|
+
Type: 'Grid',
|
|
94
|
+
Title: '',
|
|
95
|
+
Fields: fields,
|
|
96
|
+
Columns: columns,
|
|
97
|
+
FrozenColumnsCount: 0,
|
|
98
|
+
MinimumColumnWidth: 0
|
|
99
|
+
};
|
|
100
|
+
}
|
|
101
|
+
getParameterFormDataView(formMode, paramType, showType, showAccessibility) {
|
|
102
|
+
const fieldTypes = this.getAvailableTypes();
|
|
103
|
+
const noEmptyOption = { emptyOption: false };
|
|
104
|
+
// Add Key and Description fields.
|
|
105
|
+
const fields = [
|
|
106
|
+
this.getDataViewField('Key', 'TextBox', this.translate.instant('MANAGE_PARAMETERS.KEY_TITLE'), formMode === 'add', formMode != 'add', [], { regex: '^([a-zA-Z0-9-_])*$', regexError: this.translate.instant('MANAGE_PARAMETERS.KEY_REGEX_ERROR') }),
|
|
107
|
+
this.getDataViewField('Description', 'TextArea', this.translate.instant('MANAGE_PARAMETERS.DESCRIPTION_TITLE'), false, false, [], {}, { Size: { Width: 1, Height: 2 } })
|
|
108
|
+
];
|
|
109
|
+
// Add Type field only if showType is true.
|
|
110
|
+
if (showType) {
|
|
111
|
+
this.getDataViewField('Type', 'ComboBox', this.translate.instant('MANAGE_PARAMETERS.TYPE_TITLE'), false, formMode != 'add', fieldTypes, noEmptyOption);
|
|
112
|
+
}
|
|
113
|
+
// Add DefaultValue field.
|
|
114
|
+
fields.push(this.getDataViewField('DefaultValue', this.convertParamsTypeToDVType(paramType), this.translate.instant('MANAGE_PARAMETERS.DEFAULT_VALUE_TITLE'), false, false, [], {}));
|
|
115
|
+
// Add Internal and Accessibility_Description fields.
|
|
116
|
+
if (showAccessibility) {
|
|
117
|
+
const accessibilityDescAdditionalProps = { renderTitle: false, renderEnlargeButton: false };
|
|
118
|
+
const accessibilityDescLayout = { Size: { Height: 0, Width: 1 } };
|
|
119
|
+
fields.push(this.getDataViewField('Accessibility_Description', 'RichTextHTML', this.translate.instant('MANAGE_PARAMETERS.INTERNAL_DESCRIPTION'), false, true, [], accessibilityDescAdditionalProps, accessibilityDescLayout));
|
|
120
|
+
const accessibilityOptionalValues = [{ Key: 'Internal', Value: 'Internal' }, { Key: 'External', Value: 'External' }];
|
|
121
|
+
fields.push(this.getDataViewField('Accessibility', 'ComboBox', this.translate.instant('MANAGE_PARAMETERS.ACCESSIBILITY_TITLE'), false, false, accessibilityOptionalValues, noEmptyOption));
|
|
122
|
+
}
|
|
123
|
+
return {
|
|
124
|
+
Type: 'Form',
|
|
125
|
+
Fields: fields,
|
|
126
|
+
Context: {
|
|
127
|
+
Name: '',
|
|
128
|
+
Profile: {},
|
|
129
|
+
ScreenSize: 'Tablet'
|
|
130
|
+
}
|
|
131
|
+
};
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
ManageParametersService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: ManageParametersService, deps: [{ token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
135
|
+
ManageParametersService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: ManageParametersService, providedIn: 'root' });
|
|
136
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: ManageParametersService, decorators: [{
|
|
137
|
+
type: Injectable,
|
|
138
|
+
args: [{
|
|
139
|
+
providedIn: 'root'
|
|
140
|
+
}]
|
|
141
|
+
}], ctorParameters: function () { return [{ type: i1.TranslateService }]; } });
|
|
142
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFuYWdlLXBhcmFtZXRlcnMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1jb21wb3NpdGUtbGliL21hbmFnZS1wYXJhbWV0ZXJzL21hbmFnZS1wYXJhbWV0ZXJzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUkzQyxPQUFPLEVBQW9ELGdCQUFnQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7OztBQU05RyxNQUFNLE9BQU8sdUJBQXVCO0lBRWhDLFlBQXFCLFNBQTJCO1FBQTNCLGNBQVMsR0FBVCxTQUFTLENBQWtCO0lBRWhELENBQUM7SUFFTyxpQkFBaUI7UUFDckIsTUFBTSxLQUFLLEdBQUcsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxtQkFBbUIsRUFBRSxpQkFBaUIsRUFBRSwwQkFBMEIsRUFBRSxzQkFBc0IsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxLQUFLLENBQUMsQ0FBQztRQUN0TSxPQUFPLEtBQUssQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDcEIsT0FBTztnQkFDSCxHQUFHLEVBQUUsSUFBSTtnQkFDVCxLQUFLLEVBQUUsSUFBSTthQUNkLENBQUE7UUFDTCxDQUFDLENBQUMsQ0FBQTtJQUNOLENBQUM7SUFFTyx5QkFBeUIsQ0FBQyxTQUEwQjtRQUN4RCxJQUFJLEdBQUcsR0FBc0IsU0FBUyxDQUFDO1FBQ3ZDLFFBQVEsU0FBUyxFQUFFO1lBQ2YsS0FBSyxNQUFNLENBQUMsQ0FBQztnQkFDVCxHQUFHLEdBQUcsU0FBUyxDQUFDO2dCQUNoQixNQUFNO2FBQ1Q7WUFDRCxLQUFLLFNBQVMsQ0FBQyxDQUFDO2dCQUNaLEdBQUcsR0FBRyxlQUFlLENBQUM7Z0JBQ3RC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Q0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLHdDQUF3QyxDQUFDLEVBQy9JLEtBQUssRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLGdDQUFnQyxFQUFFLHVCQUF1QixDQUFDLENBQzFFLENBQUM7WUFFRixNQUFNLDJCQUEyQixHQUFHLENBQUMsRUFBRSxHQUFHLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsRUFBRSxFQUFFLEdBQUcsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUM7WUFDckgsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsZUFBZSxFQUFFLFVBQVUsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyx1Q0FBdUMsQ0FBQyxFQUMxSCxLQUFLLEVBQUUsS0FBSyxFQUFFLDJCQUEyQixFQUFFLGFBQWEsQ0FBQyxDQUM1RCxDQUFDO1NBQ0w7UUFFRCxPQUFPO1lBQ0gsSUFBSSxFQUFFLE1BQU07WUFDWixNQUFNLEVBQUUsTUFBTTtZQUNkLE9BQU8sRUFBRTtnQkFDTCxJQUFJLEVBQUUsRUFBRTtnQkFDUixPQUFPLEVBQUUsRUFBRztnQkFDWixVQUFVLEVBQUUsUUFBUTthQUN2QjtTQUNKLENBQUM7SUFDTixDQUFDOztvSEFqS1EsdUJBQXVCO3dIQUF2Qix1QkFBdUIsY0FGckIsTUFBTTsyRkFFUix1QkFBdUI7a0JBSG5DLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFDLE1BQU07aUJBQ3BCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSBcIkBuZ3gtdHJhbnNsYXRlL2NvcmVcIjtcbmltcG9ydCB7IElQZXBHZW5lcmljRm9ybURhdGFWaWV3IH0gZnJvbSBcIkBwZXBwZXJpLWFkZG9ucy9uZ3gtY29tcG9zaXRlLWxpYi9nZW5lcmljLWZvcm1cIjtcbmltcG9ydCB7IEtleVZhbHVlUGFpciB9IGZyb20gXCJAcGVwcGVyaS1hZGRvbnMvbmd4LWxpYlwiO1xuaW1wb3J0IHsgRGF0YVZpZXdGaWVsZFR5cGUsIEdyaWREYXRhVmlldywgU2NoZW1lRmllbGRUeXBlLCBTY2hlbWVGaWVsZFR5cGVzIH0gZnJvbSBcIkBwZXBwZXJpLWFkZG9ucy9wYXBpLXNka1wiO1xuaW1wb3J0IHsgSVBhcmFtZXRlcnNDb2x1bW4sIFBhcmFtZXRlckZvcm1UeXBlIH0gZnJvbSBcIi4vbWFuYWdlLXBhcmFtZXRlcnMubW9kZWxcIjtcblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46J3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIE1hbmFnZVBhcmFtZXRlcnNTZXJ2aWNlIHtcbiAgICBcbiAgICBjb25zdHJ1Y3RvciAocHJpdmF0ZSB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UpIHtcblxuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0QXZhaWxhYmxlVHlwZXMoKTogS2V5VmFsdWVQYWlyPHN0cmluZz5bXSB7XG4gICAgICAgIGNvbnN0IHR5cGVzID0gU2NoZW1lRmllbGRUeXBlcy5maWx0ZXIodHlwZSA9PiBbJ0FycmF5JywgJ0RhdGVUaW1lJywgJ1Jlc291cmNlJywgJ0NvbnRhaW5lZFJlc291cmNlJywgJ0R5bmFtaWNSZXNvdXJjZScsICdDb250YWluZWREeW5hbWljUmVzb3VyY2UnLCAnTXVsdGlwbGVTdHJpbmdWYWx1ZXMnXS5pbmNsdWRlcyh0eXBlKSA9PT0gZmFsc2UpO1xuICAgICAgICByZXR1cm4gdHlwZXMubWFwKHR5cGUgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICBLZXk6IHR5cGUsXG4gICAgICAgICAgICAgICAgVmFsdWU6IHR5cGVcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICB9XG5cbiAgICBwcml2YXRlIGNvbnZlcnRQYXJhbXNUeXBlVG9EVlR5cGUocGFyYW1UeXBlOiBTY2hlbWVGaWVsZFR5cGUpOiBEYXRhVmlld0ZpZWxkVHlwZSB7XG4gICAgICAgIGxldCByZXM6IERhdGFWaWV3RmllbGRUeXBlID0gJ1RleHRCb3gnO1xuICAgICAgICBzd2l0Y2ggKHBhcmFtVHlwZSkge1xuICAgICAgICAgICAgY2FzZSAnQm9vbCc6IHtcbiAgICAgICAgICAgICAgICByZXMgPSAnQm9vbGVhbic7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjYXNlICdJbnRlZ2VyJzoge1xuICAgICAgICAgICAgICAgIHJlcyA9ICdOdW1iZXJJbnRlZ2VyJztcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNhc2UgJ0RvdWJsZSc6IHtcbiAgICAgICAgICAgICAgICByZXMgPSAnTnVtYmVyUmVhbCc7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlcztcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldERhdGFWaWV3RmllbGQoZmllbGRJZDogc3RyaW5nLCB0eXBlOiBEYXRhVmlld0ZpZWxkVHlwZSwgdGl0bGU6IHN0cmluZywgbWFuZGF0b3J5OiBib29sZWFuLCByZWFkT25seTogYm9vbGVhbiwgXG4gICAgICAgIG9wdGlvbmFsVmFsdWVzOiBhbnlbXSB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZCwgYWRkaXRpb25hbFByb3BzOiBhbnkgPSB1bmRlZmluZWQsIGxheW91dDogYW55ID0gdW5kZWZpbmVkKTogYW55IHtcblxuICAgICAgICBjb25zdCByZXM6IGFueSA9IHtcbiAgICAgICAgICAgIEZpZWxkSUQ6IGZpZWxkSWQsXG4gICAgICAgICAgICBUeXBlOiB0eXBlLFxuICAgICAgICAgICAgVGl0bGU6IHRpdGxlLFxuICAgICAgICAgICAgTWFuZGF0b3J5OiBtYW5kYXRvcnksXG4gICAgICAgICAgICBSZWFkT25seTogcmVhZE9ubHlcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChvcHRpb25hbFZhbHVlcykge1xuICAgICAgICAgICAgcmVzWydPcHRpb25hbFZhbHVlcyddID0gb3B0aW9uYWxWYWx1ZXM7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoYWRkaXRpb25hbFByb3BzKSB7XG4gICAgICAgICAgICByZXNbJ0FkZGl0aW9uYWxQcm9wcyddID0gYWRkaXRpb25hbFByb3BzO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGxheW91dCkge1xuICAgICAgICAgICAgcmVzWydMYXlvdXQnXSA9IGxheW91dDtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiByZXM7XG4gICAgfVxuXG4gICAgZ2V0UGFyYW1ldGVyc0xpc3REYXRhVmlldyhwYXJhbWV0ZXJzQ29sdW1uczogSVBhcmFtZXRlcnNDb2x1bW5bXSwgc2hvd1R5cGU6IGJvb2xlYW4sIHNob3dBY2Nlc3NpYmlsaXR5OiBib29sZWFuKTogR3JpZERhdGFWaWV3IHtcbiAgICAgICAgbGV0IGZpZWxkcztcbiAgICAgICAgbGV0IGNvbHVtbnM7XG5cbiAgICAgICAgLy8gSWYgY29sdW1ucyBhcmUgZGVmaW5lZCwgdXNlIHRoZW0uIE90aGVyd2lzZSwgdXNlIHRoZSBkZWZhdWx0IGNvbHVtbnMuXG4gICAgICAgIGlmIChwYXJhbWV0ZXJzQ29sdW1ucy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICBmaWVsZHMgPSBwYXJhbWV0ZXJzQ29sdW1ucy5tYXAoY29sdW1uID0+IHtcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5nZXREYXRhVmlld0ZpZWxkKGNvbHVtbi5LZXksIGNvbHVtbi5UeXBlLCBjb2x1bW4uVGl0bGUsIGZhbHNlLCB0cnVlLCBbXSwge30pO1xuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgIGNvbHVtbnMgPSBwYXJhbWV0ZXJzQ29sdW1ucy5tYXAoY29sdW1uID0+IHtcbiAgICAgICAgICAgICAgICByZXR1cm4geyBXaWR0aDogY29sdW1uLldpZHRoIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgLy8gQWRkIEtleSBhbmQgRGVzY3JpcHRpb24gZmllbGRzLlxuICAgICAgICAgICAgZmllbGRzID0gW1xuICAgICAgICAgICAgICAgIHRoaXMuZ2V0RGF0YVZpZXdGaWVsZCgnS2V5JywgJ0xpbmsnLCB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdNQU5BR0VfUEFSQU1FVEVSUy5LRVlfVElUTEUnKSwgZmFsc2UsIHRydWUpLFxuICAgICAgICAgICAgICAgIHRoaXMuZ2V0RGF0YVZpZXdGaWVsZCgnRGVzY3JpcHRpb24nLCAnVGV4dEJveCcsIHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ01BTkFHRV9QQVJBTUVURVJTLkRFU0NSSVBUSU9OX1RJVExFJyksIGZhbHNlLCB0cnVlKSxcbiAgICAgICAgICAgIF07XG5cbiAgICAgICAgICAgIC8vIEFkZCBUeXBlIGZpZWxkIG9ubHkgaWYgc2hvd1R5cGUgaXMgdHJ1ZS5cbiAgICAgICAgICAgIGlmIChzaG93VHlwZSkge1xuICAgICAgICAgICAgICAgIGZpZWxkcy5wdXNoKHRoaXMuZ2V0RGF0YVZpZXdGaWVsZCgnVHlwZScsICdUZXh0Qm94JywgdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnTUFOQUdFX1BBUkFNRVRFUlMuVFlQRV9USVRMRScpLCBmYWxzZSwgdHJ1ZSkpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBBZGQgRGVmYXVsdFZhbHVlIGZpZWxkLlxuICAgICAgICAgICAgZmllbGRzLnB1c2godGhpcy5nZXREYXRhVmlld0ZpZWxkKCdEZWZhdWx0VmFsdWUnLCAnVGV4dEJveCcsIHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ01BTkFHRV9QQVJBTUVURVJTLkRFRkFVTFRfVkFMVUVfVElUTEUnKSwgZmFsc2UsIHRydWUpKTtcblxuICAgICAgICAgICAgLy8gQWRkIEludGVybmFsIGZpZWxkLlxuICAgICAgICAgICAgaWYgKHNob3dBY2Nlc3NpYmlsaXR5KSB7XG4gICAgICAgICAgICAgICAgZmllbGRzLnB1c2godGhpcy5nZXREYXRhVmlld0ZpZWxkKCdJbnRlcm5hbCcsICdCb29sZWFuJywgdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnTUFOQUdFX1BBUkFNRVRFUlMuSU5URVJOQUxfVElUTEUnKSwgZmFsc2UsIHRydWUpKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgY29sdW1ucyA9IGZpZWxkcy5tYXAoZmllbGQgPT4ge1xuICAgICAgICAgICAgICAgIHJldHVybiB7IFdpZHRoOiAxMDAgLyBmaWVsZHMubGVuZ3RoIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIENvbnRleHQ6IHtcbiAgICAgICAgICAgICAgICBOYW1lOiAnJyxcbiAgICAgICAgICAgICAgICBQcm9maWxlOiB7IEludGVybmFsSUQ6IDAgfSxcbiAgICAgICAgICAgICAgICBTY3JlZW5TaXplOiAnTGFuZHNjYXBlJ1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIFR5cGU6ICdHcmlkJyxcbiAgICAgICAgICAgIFRpdGxlOiAnJyxcbiAgICAgICAgICAgIEZpZWxkczogZmllbGRzLFxuICAgICAgICAgICAgQ29sdW1uczogY29sdW1ucyxcbiAgICAgICAgICAgIEZyb3plbkNvbHVtbnNDb3VudDogMCxcbiAgICAgICAgICAgIE1pbmltdW1Db2x1bW5XaWR0aDogMFxuICAgICAgICB9XG4gICAgfVxuXG4gICAgZ2V0UGFyYW1ldGVyRm9ybURhdGFWaWV3KGZvcm1Nb2RlOiBQYXJhbWV0ZXJGb3JtVHlwZSwgcGFyYW1UeXBlOiBTY2hlbWVGaWVsZFR5cGUsIHNob3dUeXBlOiBib29sZWFuLCBzaG93QWNjZXNzaWJpbGl0eTogYm9vbGVhbik6IElQZXBHZW5lcmljRm9ybURhdGFWaWV3IHtcbiAgICAgICAgY29uc3QgZmllbGRUeXBlcyA9IHRoaXMuZ2V0QXZhaWxhYmxlVHlwZXMoKTtcbiAgICAgICAgY29uc3Qgbm9FbXB0eU9wdGlvbiA9IHsgZW1wdHlPcHRpb246IGZhbHNlIH07XG5cbiAgICAgICAgLy8gQWRkIEtleSBhbmQgRGVzY3JpcHRpb24gZmllbGRzLlxuICAgICAgICBjb25zdCBmaWVsZHMgPSBbXG4gICAgICAgICAgICB0aGlzLmdldERhdGFWaWV3RmllbGQoJ0tleScsICdUZXh0Qm94JywgdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnTUFOQUdFX1BBUkFNRVRFUlMuS0VZX1RJVExFJyksIGZvcm1Nb2RlID09PSAnYWRkJywgZm9ybU1vZGUgIT0gJ2FkZCcsIFtdLCBcbiAgICAgICAgICAgICAgICB7IHJlZ2V4OiAnXihbYS16QS1aMC05LV9dKSokJywgcmVnZXhFcnJvcjogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnTUFOQUdFX1BBUkFNRVRFUlMuS0VZX1JFR0VYX0VSUk9SJyl9XG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgdGhpcy5nZXREYXRhVmlld0ZpZWxkKCdEZXNjcmlwdGlvbicsICdUZXh0QXJlYScsIHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ01BTkFHRV9QQVJBTUVURVJTLkRFU0NSSVBUSU9OX1RJVExFJyksIGZhbHNlLCBmYWxzZSwgW10sIHt9LCBcbiAgICAgICAgICAgICAgICB7IFNpemU6IHsgV2lkdGg6MSwgSGVpZ2h0OjIgfSB9XG4gICAgICAgICAgICApXG4gICAgICAgIF07XG5cbiAgICAgICAgLy8gQWRkIFR5cGUgZmllbGQgb25seSBpZiBzaG93VHlwZSBpcyB0cnVlLlxuICAgICAgICBpZiAoc2hvd1R5cGUpIHtcbiAgICAgICAgICAgIHRoaXMuZ2V0RGF0YVZpZXdGaWVsZCgnVHlwZScsICdDb21ib0JveCcsIHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ01BTkFHRV9QQVJBTUVURVJTLlRZUEVfVElUTEUnKSwgZmFsc2UsIGZvcm1Nb2RlICE9ICdhZGQnLCBmaWVsZFR5cGVzLCBub0VtcHR5T3B0aW9uKTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLy8gQWRkIERlZmF1bHRWYWx1ZSBmaWVsZC5cbiAgICAgICAgZmllbGRzLnB1c2godGhpcy5nZXREYXRhVmlld0ZpZWxkKCdEZWZhdWx0VmFsdWUnLCB0aGlzLmNvbnZlcnRQYXJhbXNUeXBlVG9EVlR5cGUocGFyYW1UeXBlKSwgdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnTUFOQUdFX1BBUkFNRVRFUlMuREVGQVVMVF9WQUxVRV9USVRMRScpLCBcbiAgICAgICAgICAgIGZhbHNlLCBmYWxzZSwgW10sIHt9KSlcbiAgICAgICAgICAgIFxuICAgICAgICAvLyBBZGQgSW50ZXJuYWwgYW5kIEFjY2Vzc2liaWxpdHlfRGVzY3JpcHRpb24gZmllbGRzLlxuICAgICAgICBpZiAoc2hvd0FjY2Vzc2liaWxpdHkpIHtcbiAgICAgICAgICAgIGNvbnN0IGFjY2Vzc2liaWxpdHlEZXNjQWRkaXRpb25hbFByb3BzID0geyByZW5kZXJUaXRsZTogZmFsc2UsIHJlbmRlckVubGFyZ2VCdXR0b246IGZhbHNlIH07XG4gICAgICAgICAgICBjb25zdCBhY2Nlc3NpYmlsaXR5RGVzY0xheW91dCA9IHsgU2l6ZTogeyBIZWlnaHQ6IDAsIFdpZHRoOiAxIH0gfTtcblxuICAgICAgICAgICAgZmllbGRzLnB1c2godGhpcy5nZXREYXRhVmlld0ZpZWxkKCdBY2Nlc3NpYmlsaXR5X0Rlc2NyaXB0aW9uJywgJ1JpY2hUZXh0SFRNTCcsIHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ01BTkFHRV9QQVJBTUVURVJTLklOVEVSTkFMX0RFU0NSSVBUSU9OJyksIFxuICAgICAgICAgICAgZmFsc2UsIHRydWUsIFtdLCBhY2Nlc3NpYmlsaXR5RGVzY0FkZGl0aW9uYWxQcm9wcywgYWNjZXNzaWJpbGl0eURlc2NMYXlvdXQpXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgY29uc3QgYWNjZXNzaWJpbGl0eU9wdGlvbmFsVmFsdWVzID0gW3sgS2V5OiAnSW50ZXJuYWwnLCBWYWx1ZTogJ0ludGVybmFsJyB9LCB7IEtleTogJ0V4dGVybmFsJywgVmFsdWU6ICdFeHRlcm5hbCcgfV07XG4gICAgICAgICAgICBmaWVsZHMucHVzaCh0aGlzLmdldERhdGFWaWV3RmllbGQoJ0FjY2Vzc2liaWxpdHknLCAnQ29tYm9Cb3gnLCB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdNQU5BR0VfUEFSQU1FVEVSUy5BQ0NFU1NJQklMSVRZX1RJVExFJyksIFxuICAgICAgICAgICAgICAgIGZhbHNlLCBmYWxzZSwgYWNjZXNzaWJpbGl0eU9wdGlvbmFsVmFsdWVzLCBub0VtcHR5T3B0aW9uKVxuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBUeXBlOiAnRm9ybScsXG4gICAgICAgICAgICBGaWVsZHM6IGZpZWxkcyxcbiAgICAgICAgICAgIENvbnRleHQ6IHtcbiAgICAgICAgICAgICAgICBOYW1lOiAnJyxcbiAgICAgICAgICAgICAgICBQcm9maWxlOiB7IH0sXG4gICAgICAgICAgICAgICAgU2NyZWVuU2l6ZTogJ1RhYmxldCdcbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcbiAgICB9XG59Il19
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './public-api';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVwcGVyaS1hZGRvbnMtbmd4LWNvbXBvc2l0ZS1saWItbWFuYWdlLXBhcmFtZXRlcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtY29tcG9zaXRlLWxpYi9tYW5hZ2UtcGFyYW1ldGVycy9wZXBwZXJpLWFkZG9ucy1uZ3gtY29tcG9zaXRlLWxpYi1tYW5hZ2UtcGFyYW1ldGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuIl19
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Public API Surface of ngx-composite-lib/manage-parameters
|
|
3
|
+
*/
|
|
4
|
+
export * from './manage-parameters.module';
|
|
5
|
+
export * from './manage-parameters.component';
|
|
6
|
+
// export * from './manage-parameter/manage-parameter.component';
|
|
7
|
+
export * from './manage-parameters.model';
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1jb21wb3NpdGUtbGliL21hbmFnZS1wYXJhbWV0ZXJzL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFDSCxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsK0JBQStCLENBQUM7QUFDOUMsaUVBQWlFO0FBQ2pFLGNBQWMsMkJBQTJCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIG5neC1jb21wb3NpdGUtbGliL21hbmFnZS1wYXJhbWV0ZXJzXG4gKi9cbmV4cG9ydCAqIGZyb20gJy4vbWFuYWdlLXBhcmFtZXRlcnMubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbWFuYWdlLXBhcmFtZXRlcnMuY29tcG9uZW50Jztcbi8vIGV4cG9ydCAqIGZyb20gJy4vbWFuYWdlLXBhcmFtZXRlci9tYW5hZ2UtcGFyYW1ldGVyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL21hbmFnZS1wYXJhbWV0ZXJzLm1vZGVsJztcbiJdfQ==
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './public-api';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVwcGVyaS1hZGRvbnMtbmd4LWNvbXBvc2l0ZS1saWItcmljaC10ZXh0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWNvbXBvc2l0ZS1saWIvcmljaC10ZXh0L3BlcHBlcmktYWRkb25zLW5neC1jb21wb3NpdGUtbGliLXJpY2gtdGV4dC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuIl19
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Public API Surface of ngx-composite-lib/flow-picker-button
|
|
3
|
+
*/
|
|
4
|
+
export * from './rich-text.module';
|
|
5
|
+
export * from './rich-text.component';
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1jb21wb3NpdGUtbGliL3JpY2gtdGV4dC9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLHVCQUF1QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBuZ3gtY29tcG9zaXRlLWxpYi9mbG93LXBpY2tlci1idXR0b25cbiAqL1xuZXhwb3J0ICogZnJvbSAnLi9yaWNoLXRleHQubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vcmljaC10ZXh0LmNvbXBvbmVudCc7XG4iXX0=
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
+
import { DEFAULT_HORIZONTAL_ALIGNMENT } from '@pepperi-addons/ngx-lib';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@pepperi-addons/ngx-lib/remote-loader";
|
|
5
|
+
import * as i2 from "./rich-text.service";
|
|
6
|
+
import * as i3 from "@pepperi-addons/ngx-lib/button";
|
|
7
|
+
import * as i4 from "@pepperi-addons/ngx-lib/rich-html-textarea";
|
|
8
|
+
export class RichTextComponent {
|
|
9
|
+
constructor(viewContainerRef, addonBlockLoaderService, RichTextService) {
|
|
10
|
+
this.viewContainerRef = viewContainerRef;
|
|
11
|
+
this.addonBlockLoaderService = addonBlockLoaderService;
|
|
12
|
+
this.RichTextService = RichTextService;
|
|
13
|
+
this.key = '';
|
|
14
|
+
this.value = '';
|
|
15
|
+
this.label = '';
|
|
16
|
+
this.mandatory = false;
|
|
17
|
+
this.disabled = false;
|
|
18
|
+
this.readonly = false;
|
|
19
|
+
this.maxFieldCharacters = 300;
|
|
20
|
+
this.xAlignment = DEFAULT_HORIZONTAL_ALIGNMENT;
|
|
21
|
+
this.sanitize = true;
|
|
22
|
+
this.rowSpan = 1;
|
|
23
|
+
this.visible = true;
|
|
24
|
+
this.isActive = false;
|
|
25
|
+
this.showTitle = true;
|
|
26
|
+
this.renderTitle = true;
|
|
27
|
+
this.renderEnlargeButton = true;
|
|
28
|
+
this.layoutType = 'form';
|
|
29
|
+
this.inlineMode = false;
|
|
30
|
+
this.useAssetsForImages = true;
|
|
31
|
+
this._toolbarOptions = this.getDefaultToolbarOptions();
|
|
32
|
+
this.valueChange = new EventEmitter();
|
|
33
|
+
this.toolbarOptions = this.getDefaultToolbarOptions();
|
|
34
|
+
}
|
|
35
|
+
get toolbarOptions() {
|
|
36
|
+
return this._toolbarOptions;
|
|
37
|
+
}
|
|
38
|
+
set toolbarOptions(options) {
|
|
39
|
+
if (options) {
|
|
40
|
+
this._toolbarOptions = options;
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
ngOnInit() {
|
|
44
|
+
// Do nothing.
|
|
45
|
+
}
|
|
46
|
+
getDefaultToolbarOptions() {
|
|
47
|
+
return {
|
|
48
|
+
font: false,
|
|
49
|
+
size: false,
|
|
50
|
+
header: true,
|
|
51
|
+
bold: true,
|
|
52
|
+
italic: true,
|
|
53
|
+
underline: true,
|
|
54
|
+
strike: false,
|
|
55
|
+
link: true,
|
|
56
|
+
image: { useAssetsABI: true },
|
|
57
|
+
ordered: true,
|
|
58
|
+
bullet: true,
|
|
59
|
+
color: true,
|
|
60
|
+
background: false,
|
|
61
|
+
align: true
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
onEditorOpen(editor) {
|
|
65
|
+
this.quillEditor = editor;
|
|
66
|
+
if (this.useAssetsForImages) {
|
|
67
|
+
const imageButton = document.querySelector('.ql-image');
|
|
68
|
+
const newButton = document.querySelector('.quill-editor-image-btn')?.cloneNode(true);
|
|
69
|
+
if (imageButton && newButton) {
|
|
70
|
+
newButton.addEventListener("click", () => { this.openAssetsPickerDialog(); });
|
|
71
|
+
//newButton.addEventListener("click", () => { this.insertAssets('https://pfs.pepperi.com/50d42a3f-f21d-40fa-8c24-a1359b04dbb7/ad909780-0c23-401e-8e8e-f514cc4f6aa2/Assets/logo.jpg');});
|
|
72
|
+
imageButton.parentNode?.appendChild(newButton);
|
|
73
|
+
imageButton.setAttribute('style', 'display:none');
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
openAssetsPickerDialog() {
|
|
78
|
+
const dialogRef = this.addonBlockLoaderService.loadAddonBlockInDialog({
|
|
79
|
+
container: this.viewContainerRef,
|
|
80
|
+
name: 'AssetPicker',
|
|
81
|
+
hostObject: {
|
|
82
|
+
selectionType: 'single',
|
|
83
|
+
allowedAssetsTypes: 'images',
|
|
84
|
+
inDialog: true
|
|
85
|
+
},
|
|
86
|
+
size: 'full-screen',
|
|
87
|
+
hostEventsCallback: async (event) => {
|
|
88
|
+
if (event?.action === 'on-save') {
|
|
89
|
+
if (event.url) {
|
|
90
|
+
this.insertAssets(event.url);
|
|
91
|
+
}
|
|
92
|
+
dialogRef?.close();
|
|
93
|
+
}
|
|
94
|
+
else if (event.action === 'on-cancel') {
|
|
95
|
+
dialogRef?.close();
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
insertAssets(assetUrl) {
|
|
101
|
+
const range = this.quillEditor.getSelection() || { index: 0, length: 0 };
|
|
102
|
+
this.quillEditor.insertEmbed(range.index, 'image', assetUrl);
|
|
103
|
+
}
|
|
104
|
+
valueChanged(event) {
|
|
105
|
+
this.valueChange.emit(event);
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
RichTextComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: RichTextComponent, deps: [{ token: i0.ViewContainerRef }, { token: i1.PepAddonBlockLoaderService }, { token: i2.RichTextService }], target: i0.ɵɵFactoryTarget.Component });
|
|
109
|
+
RichTextComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: RichTextComponent, selector: "pep-rich-text", inputs: { key: "key", value: "value", label: "label", mandatory: "mandatory", disabled: "disabled", readonly: "readonly", maxFieldCharacters: "maxFieldCharacters", xAlignment: "xAlignment", sanitize: "sanitize", rowSpan: "rowSpan", visible: "visible", isActive: "isActive", showTitle: "showTitle", renderTitle: "renderTitle", renderEnlargeButton: "renderEnlargeButton", layoutType: "layoutType", inlineMode: "inlineMode", useAssetsForImages: "useAssetsForImages", toolbarOptions: "toolbarOptions" }, outputs: { valueChange: "valueChange" }, ngImport: i0, template: "<pep-rich-html-textarea [key]=\"key\" \n [value]=\"value\"\n [label]=\"label\" \n [mandatory]=\"mandatory\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [maxFieldCharacters]=\"maxFieldCharacters\" \n [xAlignment]=\"xAlignment\" \n [toolbarOptions]=\"toolbarOptions\"\n [rowSpan]=\"rowSpan\" \n [visible]=\"visible\"\n \n [isActive]=\"isActive\"\n [showTitle]=\"showTitle\"\n [renderTitle]=\"renderTitle\"\n [renderEnlargeButton]=\"renderEnlargeButton\"\n [layoutType]=\"layoutType\"\n [inlineMode]=\"inlineMode\"\n (editorCreated)=\"onEditorOpen($event)\"\n (valueChange)=\"valueChanged($event)\">\n</pep-rich-html-textarea>\n<pep-button [sizeType]=\"'sm'\" [classNames]=\"'pep-spacing-element quill-editor-image-btn'\" \n [iconName]=\"'system_image'\" (buttonClick)=\"openAssetsPickerDialog()\">\n</pep-button>", styles: ["::ng-deep .quill-editor-image-btn{display:none;width:2.5rem!important}\n"], dependencies: [{ kind: "component", type: i3.PepButtonComponent, selector: "pep-button", inputs: ["key", "value", "styleType", "styleStateType", "sizeType", "classNames", "disabled", "iconName", "iconPosition", "visible"], outputs: ["buttonClick"] }, { kind: "component", type: i4.PepRichHtmlTextareaComponent, selector: "pep-rich-html-textarea", inputs: ["key", "value", "label", "mandatory", "disabled", "readonly", "maxFieldCharacters", "xAlignment", "sanitize", "rowSpan", "visible", "form", "isActive", "showTitle", "renderTitle", "renderEnlargeButton", "layoutType", "inlineMode", "toolbarOptions"], outputs: ["valueChange", "editorCreated"] }] });
|
|
110
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: RichTextComponent, decorators: [{
|
|
111
|
+
type: Component,
|
|
112
|
+
args: [{ selector: 'pep-rich-text', template: "<pep-rich-html-textarea [key]=\"key\" \n [value]=\"value\"\n [label]=\"label\" \n [mandatory]=\"mandatory\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [maxFieldCharacters]=\"maxFieldCharacters\" \n [xAlignment]=\"xAlignment\" \n [toolbarOptions]=\"toolbarOptions\"\n [rowSpan]=\"rowSpan\" \n [visible]=\"visible\"\n \n [isActive]=\"isActive\"\n [showTitle]=\"showTitle\"\n [renderTitle]=\"renderTitle\"\n [renderEnlargeButton]=\"renderEnlargeButton\"\n [layoutType]=\"layoutType\"\n [inlineMode]=\"inlineMode\"\n (editorCreated)=\"onEditorOpen($event)\"\n (valueChange)=\"valueChanged($event)\">\n</pep-rich-html-textarea>\n<pep-button [sizeType]=\"'sm'\" [classNames]=\"'pep-spacing-element quill-editor-image-btn'\" \n [iconName]=\"'system_image'\" (buttonClick)=\"openAssetsPickerDialog()\">\n</pep-button>", styles: ["::ng-deep .quill-editor-image-btn{display:none;width:2.5rem!important}\n"] }]
|
|
113
|
+
}], ctorParameters: function () { return [{ type: i0.ViewContainerRef }, { type: i1.PepAddonBlockLoaderService }, { type: i2.RichTextService }]; }, propDecorators: { key: [{
|
|
114
|
+
type: Input
|
|
115
|
+
}], value: [{
|
|
116
|
+
type: Input
|
|
117
|
+
}], label: [{
|
|
118
|
+
type: Input
|
|
119
|
+
}], mandatory: [{
|
|
120
|
+
type: Input
|
|
121
|
+
}], disabled: [{
|
|
122
|
+
type: Input
|
|
123
|
+
}], readonly: [{
|
|
124
|
+
type: Input
|
|
125
|
+
}], maxFieldCharacters: [{
|
|
126
|
+
type: Input
|
|
127
|
+
}], xAlignment: [{
|
|
128
|
+
type: Input
|
|
129
|
+
}], sanitize: [{
|
|
130
|
+
type: Input
|
|
131
|
+
}], rowSpan: [{
|
|
132
|
+
type: Input
|
|
133
|
+
}], visible: [{
|
|
134
|
+
type: Input
|
|
135
|
+
}], isActive: [{
|
|
136
|
+
type: Input
|
|
137
|
+
}], showTitle: [{
|
|
138
|
+
type: Input
|
|
139
|
+
}], renderTitle: [{
|
|
140
|
+
type: Input
|
|
141
|
+
}], renderEnlargeButton: [{
|
|
142
|
+
type: Input
|
|
143
|
+
}], layoutType: [{
|
|
144
|
+
type: Input
|
|
145
|
+
}], inlineMode: [{
|
|
146
|
+
type: Input
|
|
147
|
+
}], useAssetsForImages: [{
|
|
148
|
+
type: Input
|
|
149
|
+
}], toolbarOptions: [{
|
|
150
|
+
type: Input
|
|
151
|
+
}], valueChange: [{
|
|
152
|
+
type: Output
|
|
153
|
+
}] } });
|
|
154
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmljaC10ZXh0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1jb21wb3NpdGUtbGliL3JpY2gtdGV4dC9yaWNoLXRleHQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWNvbXBvc2l0ZS1saWIvcmljaC10ZXh0L3JpY2gtdGV4dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWlCLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBb0IsTUFBTSxlQUFlLENBQUM7QUFHaEgsT0FBTyxFQUFFLDRCQUE0QixFQUF5QyxNQUFNLHlCQUF5QixDQUFDOzs7Ozs7QUFVOUcsTUFBTSxPQUFPLGlCQUFpQjtJQW9DMUIsWUFDWSxnQkFBa0MsRUFDbEMsdUJBQW1ELEVBQ25ELGVBQWdDO1FBRmhDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsNEJBQXVCLEdBQXZCLHVCQUF1QixDQUE0QjtRQUNuRCxvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7UUFyQ25DLFFBQUcsR0FBRyxFQUFFLENBQUM7UUFDVCxVQUFLLEdBQUcsRUFBRSxDQUFDO1FBQ1gsVUFBSyxHQUFHLEVBQUUsQ0FBQztRQUNYLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFDbEIsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUNqQixhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ2pCLHVCQUFrQixHQUFHLEdBQUcsQ0FBQztRQUN6QixlQUFVLEdBQTJCLDRCQUE0QixDQUFDO1FBQ2xFLGFBQVEsR0FBRyxJQUFJLENBQUM7UUFDaEIsWUFBTyxHQUFHLENBQUMsQ0FBQztRQUNaLFlBQU8sR0FBRyxJQUFJLENBQUM7UUFDZixhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ2pCLGNBQVMsR0FBRyxJQUFJLENBQUM7UUFDakIsZ0JBQVcsR0FBRyxJQUFJLENBQUM7UUFDbkIs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ImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQsIFZpZXdDb250YWluZXJSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFBlcEFkZG9uQmxvY2tMb2FkZXJTZXJ2aWNlIH0gZnJvbSAnQHBlcHBlcmktYWRkb25zL25neC1saWIvcmVtb3RlLWxvYWRlcic7XG5pbXBvcnQgeyBSaWNoVGV4dFNlcnZpY2UgfSBmcm9tICcuL3JpY2gtdGV4dC5zZXJ2aWNlJztcbmltcG9ydCB7IERFRkFVTFRfSE9SSVpPTlRBTF9BTElHTk1FTlQsIFBlcEhvcml6b250YWxBbGlnbm1lbnQsIFBlcExheW91dFR5cGUgfSBmcm9tICdAcGVwcGVyaS1hZGRvbnMvbmd4LWxpYic7XG5pbXBvcnQgeyBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBJUGVwUmljaEh0bWxUZXh0YXJlYVRvb2xiYXJPcHRpb25zIH0gZnJvbSAnQHBlcHBlcmktYWRkb25zL25neC1saWIvcmljaC1odG1sLXRleHRhcmVhJztcbmltcG9ydCBRdWlsbCBmcm9tICdxdWlsbCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAncGVwLXJpY2gtdGV4dCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3JpY2gtdGV4dC5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vcmljaC10ZXh0LmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgUmljaFRleHRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gICAgQElucHV0KCkga2V5ID0gJyc7XG4gICAgQElucHV0KCkgdmFsdWUgPSAnJztcbiAgICBASW5wdXQoKSBsYWJlbCA9ICcnO1xuICAgIEBJbnB1dCgpIG1hbmRhdG9yeSA9IGZhbHNlO1xuICAgIEBJbnB1dCgpIGRpc2FibGVkID0gZmFsc2U7XG4gICAgQElucHV0KCkgcmVhZG9ubHkgPSBmYWxzZTtcbiAgICBASW5wdXQoKSBtYXhGaWVsZENoYXJhY3RlcnMgPSAzMDA7XG4gICAgQElucHV0KCkgeEFsaWdubWVudDogUGVwSG9yaXpvbnRhbEFsaWdubWVudCA9IERFRkFVTFRfSE9SSVpPTlRBTF9BTElHTk1FTlQ7XG4gICAgQElucHV0KCkgc2FuaXRpemUgPSB0cnVlO1xuICAgIEBJbnB1dCgpIHJvd1NwYW4gPSAxO1xuICAgIEBJbnB1dCgpIHZpc2libGUgPSB0cnVlO1xuICAgIEBJbnB1dCgpIGlzQWN0aXZlID0gZmFsc2U7XG4gICAgQElucHV0KCkgc2hvd1RpdGxlID0gdHJ1ZTtcbiAgICBASW5wdXQoKSByZW5kZXJUaXRsZSA9IHRydWU7XG4gICAgQElucHV0KCkgcmVuZGVyRW5sYXJnZUJ1dHRvbiA9IHRydWU7XG4gICAgQElucHV0KCkgbGF5b3V0VHlwZTogUGVwTGF5b3V0VHlwZSA9ICdmb3JtJztcbiAgICBASW5wdXQoKSBpbmxpbmVNb2RlID0gZmFsc2U7XG4gICAgQElucHV0KCkgdXNlQXNzZXRzRm9ySW1hZ2VzID0gdHJ1ZTtcbiAgICBcbiAgICBwcml2YXRlIHF1aWxsRWRpdG9yOiBhbnk7XG4gICAgcHJvdGVjdGVkIF90b29sYmFyT3B0aW9uczogSVBlcFJpY2hIdG1sVGV4dGFyZWFUb29sYmFyT3B0aW9ucyA9IHRoaXMuZ2V0RGVmYXVsdFRvb2xiYXJPcHRpb25zKCk7XG4gICAgQElucHV0KClcbiAgICBnZXQgdG9vbGJhck9wdGlvbnMoKTogSVBlcFJpY2hIdG1sVGV4dGFyZWFUb29sYmFyT3B0aW9ucyB7XG4gICAgICAgIHJldHVybiB0aGlzLl90b29sYmFyT3B0aW9ucztcbiAgICB9XG4gICAgc2V0IHRvb2xiYXJPcHRpb25zKG9wdGlvbnM6IElQZXBSaWNoSHRtbFRleHRhcmVhVG9vbGJhck9wdGlvbnMpIHtcbiAgICAgICAgaWYgKG9wdGlvbnMpIHtcbiAgICAgICAgICAgIHRoaXMuX3Rvb2xiYXJPcHRpb25zID0gb3B0aW9ucztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBPdXRwdXQoKVxuICAgICAgICB2YWx1ZUNoYW5nZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIHZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYsXG4gICAgICAgIHByaXZhdGUgYWRkb25CbG9ja0xvYWRlclNlcnZpY2U6IFBlcEFkZG9uQmxvY2tMb2FkZXJTZXJ2aWNlLCBcbiAgICAgICAgcHJpdmF0ZSBSaWNoVGV4dFNlcnZpY2U6IFJpY2hUZXh0U2VydmljZSkgeyBcbiAgICAgICAgICAgIHRoaXMudG9vbGJhck9wdGlvbnMgPSB0aGlzLmdldERlZmF1bHRUb29sYmFyT3B0aW9ucygpO1xuICAgICAgICB9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgLy8gRG8gbm90aGluZy5cbiAgICAgICAgXG4gICAgfVxuXG5cbiAgICBnZXREZWZhdWx0VG9vbGJhck9wdGlvbnMoKTogSVBlcFJpY2hIdG1sVGV4dGFyZWFUb29sYmFyT3B0aW9ucyB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBmb250OiBmYWxzZSxcbiAgICAgICAgICAgIHNpemU6IGZhbHNlLFxuICAgICAgICAgICAgaGVhZGVyOiB0cnVlLFxuICAgICAgICAgICAgYm9sZDogdHJ1ZSxcbiAgICAgICAgICAgIGl0YWxpYzogdHJ1ZSxcbiAgICAgICAgICAgIHVuZGVybGluZTogdHJ1ZSxcbiAgICAgICAgICAgIHN0cmlrZTogZmFsc2UsXG4gICAgICAgICAgICBsaW5rOiB0cnVlLFxuICAgICAgICAgICAgaW1hZ2U6IHsgdXNlQXNzZXRzQUJJIDogdHJ1ZSB9LFxuICAgICAgICAgICAgb3JkZXJlZDogdHJ1ZSxcbiAgICAgICAgICAgIGJ1bGxldDogdHJ1ZSxcbiAgICAgICAgICAgIGNvbG9yOiB0cnVlLFxuICAgICAgICAgICAgYmFja2dyb3VuZDogZmFsc2UsXG4gICAgICAgICAgICBhbGlnbjogdHJ1ZVxuICAgICAgICB9O1xuICAgIH1cblxuICAgIG9uRWRpdG9yT3BlbihlZGl0b3I6IGFueSl7XG4gICAgICAgIHRoaXMucXVpbGxFZGl0b3IgPSBlZGl0b3I7XG5cbiAgICAgICAgaWYodGhpcy51c2VBc3NldHNGb3JJbWFnZXMpe1xuICAgICAgICAgICAgY29uc3QgaW1hZ2VCdXR0b24gPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcucWwtaW1hZ2UnKTtcbiAgICAgICAgICAgIGNvbnN0IG5ld0J1dHRvbiA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJy5xdWlsbC1lZGl0b3ItaW1hZ2UtYnRuJyk/LmNsb25lTm9kZSh0cnVlKTtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgaWYoaW1hZ2VCdXR0b24gJiYgbmV3QnV0dG9uKXtcbiAgICAgICAgICAgICAgICBuZXdCdXR0b24uYWRkRXZlbnRMaXN0ZW5lcihcImNsaWNrXCIsICgpID0+IHsgdGhpcy5vcGVuQXNzZXRzUGlja2VyRGlhbG9nKCk7fSk7XG4gICAgICAgICAgICAgICAgLy9uZXdCdXR0b24uYWRkRXZlbnRMaXN0ZW5lcihcImNsaWNrXCIsICgpID0+IHsgdGhpcy5pbnNlcnRBc3NldHMoJ2h0dHBzOi8vcGZzLnBlcHBlcmkuY29tLzUwZDQyYTNmLWYyMWQtNDBmYS04YzI0LWExMzU5YjA0ZGJiNy9hZDkwOTc4MC0wYzIzLTQwMWUtOGU4ZS1mNTE0Y2M0ZjZhYTIvQXNzZXRzL2xvZ28uanBnJyk7fSk7XG4gICAgICAgICAgICAgICAgaW1hZ2VCdXR0b24ucGFyZW50Tm9kZT8uYXBwZW5kQ2hpbGQobmV3QnV0dG9uKTtcbiAgICAgICAgICAgICAgICBpbWFnZUJ1dHRvbi5zZXRBdHRyaWJ1dGUoJ3N0eWxlJywnZGlzcGxheTpub25lJyk7ICAgIFxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIG9wZW5Bc3NldHNQaWNrZXJEaWFsb2coKSB7XG4gICAgICAgIGNvbnN0IGRpYWxvZ1JlZiA9IHRoaXMuYWRkb25CbG9ja0xvYWRlclNlcnZpY2UubG9hZEFkZG9uQmxvY2tJbkRpYWxvZyh7XG4gICAgICAgICAgICBjb250YWluZXI6IHRoaXMudmlld0NvbnRhaW5lclJlZixcbiAgICAgICAgICAgIG5hbWU6ICdBc3NldFBpY2tlcicsXG4gICAgICAgICAgICBob3N0T2JqZWN0OiB7XG4gICAgICAgICAgICAgICAgc2VsZWN0aW9uVHlwZTogJ3NpbmdsZScsXG4gICAgICAgICAgICAgICAgYWxsb3dlZEFzc2V0c1R5cGVzOiAnaW1hZ2VzJyxcbiAgICAgICAgICAgICAgICBpbkRpYWxvZzogdHJ1ZVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHNpemU6ICdmdWxsLXNjcmVlbicsXG4gICAgICAgICAgICBob3N0RXZlbnRzQ2FsbGJhY2s6IGFzeW5jIChldmVudCkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChldmVudD8uYWN0aW9uID09PSAnb24tc2F2ZScpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYoZXZlbnQudXJsKXtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuaW5zZXJ0QXNzZXRzKGV2ZW50LnVybCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgZGlhbG9nUmVmPy5jbG9zZSgpO1xuICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoZXZlbnQuYWN0aW9uID09PSAnb24tY2FuY2VsJykge1xuICAgICAgICAgICAgICAgICAgICBkaWFsb2dSZWY/LmNsb3NlKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBpbnNlcnRBc3NldHMoYXNzZXRVcmw6IHN0cmluZyl7XG4gICAgICAgIGNvbnN0IHJhbmdlID0gdGhpcy5xdWlsbEVkaXRvci5nZXRTZWxlY3Rpb24oKSB8fCB7IGluZGV4OiAwLCBsZW5ndGg6IDB9O1xuICAgICAgICB0aGlzLnF1aWxsRWRpdG9yLmluc2VydEVtYmVkKHJhbmdlLmluZGV4LCAnaW1hZ2UnLCBhc3NldFVybCk7XG4gICAgfVxuXG4gICAgdmFsdWVDaGFuZ2VkKGV2ZW50OiBhbnkpe1xuICAgICAgICB0aGlzLnZhbHVlQ2hhbmdlLmVtaXQoZXZlbnQpO1xuICAgIH1cbn1cbiIsIjxwZXAtcmljaC1odG1sLXRleHRhcmVhIFtrZXldPVwia2V5XCIgXG4gICAgICAgICAgICAgICAgICAgICAgICBbdmFsdWVdPVwidmFsdWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cImxhYmVsXCIgXG4gICAgICAgICAgICAgICAgICAgICAgICBbbWFuZGF0b3J5XT1cIm1hbmRhdG9yeVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFttYXhGaWVsZENoYXJhY3RlcnNdPVwibWF4RmllbGRDaGFyYWN0ZXJzXCIgXG4gICAgICAgICAgICAgICAgICAgICAgICBbeEFsaWdubWVudF09XCJ4QWxpZ25tZW50XCIgXG4gICAgICAgICAgICAgICAgICAgICAgICBbdG9vbGJhck9wdGlvbnNdPVwidG9vbGJhck9wdGlvbnNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW3Jvd1NwYW5dPVwicm93U3BhblwiIFxuICAgICAgICAgICAgICAgICAgICAgICAgW3Zpc2libGVdPVwidmlzaWJsZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgIFtpc0FjdGl2ZV09XCJpc0FjdGl2ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbc2hvd1RpdGxlXT1cInNob3dUaXRsZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbcmVuZGVyVGl0bGVdPVwicmVuZGVyVGl0bGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW3JlbmRlckVubGFyZ2VCdXR0b25dPVwicmVuZGVyRW5sYXJnZUJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbbGF5b3V0VHlwZV09XCJsYXlvdXRUeXBlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtpbmxpbmVNb2RlXT1cImlubGluZU1vZGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgKGVkaXRvckNyZWF0ZWQpPVwib25FZGl0b3JPcGVuKCRldmVudClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgKHZhbHVlQ2hhbmdlKT1cInZhbHVlQ2hhbmdlZCgkZXZlbnQpXCI+XG48L3BlcC1yaWNoLWh0bWwtdGV4dGFyZWE+XG48cGVwLWJ1dHRvbiBbc2l6ZVR5cGVdPVwiJ3NtJ1wiIFtjbGFzc05hbWVzXT1cIidwZXAtc3BhY2luZy1lbGVtZW50IHF1aWxsLWVkaXRvci1pbWFnZS1idG4nXCIgXG4gICAgICAgICAgICAgICAgW2ljb25OYW1lXT1cIidzeXN0ZW1faW1hZ2UnXCIgKGJ1dHRvbkNsaWNrKT1cIm9wZW5Bc3NldHNQaWNrZXJEaWFsb2coKVwiPlxuPC9wZXAtYnV0dG9uPiJdfQ==
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { PepNgxLibModule } from '@pepperi-addons/ngx-lib';
|
|
4
|
+
import { PepRichHtmlTextareaModule } from '@pepperi-addons/ngx-lib/rich-html-textarea';
|
|
5
|
+
import { PepRemoteLoaderModule } from '@pepperi-addons/ngx-lib/remote-loader';
|
|
6
|
+
import { PepButtonModule } from '@pepperi-addons/ngx-lib/button';
|
|
7
|
+
import { RichTextComponent } from './rich-text.component';
|
|
8
|
+
import { RichTextService } from './rich-text.service';
|
|
9
|
+
import { PepIconModule, pepIconSystemImage } from '@pepperi-addons/ngx-lib/icon';
|
|
10
|
+
import * as i0 from "@angular/core";
|
|
11
|
+
import * as i1 from "@pepperi-addons/ngx-lib/icon";
|
|
12
|
+
const pepIcons = [
|
|
13
|
+
pepIconSystemImage
|
|
14
|
+
];
|
|
15
|
+
export class PepRichTextModule {
|
|
16
|
+
constructor(pepIconRegistry) {
|
|
17
|
+
this.pepIconRegistry = pepIconRegistry;
|
|
18
|
+
this.pepIconRegistry.registerIcons(pepIcons);
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
PepRichTextModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PepRichTextModule, deps: [{ token: i1.PepIconRegistry }], target: i0.ɵɵFactoryTarget.NgModule });
|
|
22
|
+
PepRichTextModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.2", ngImport: i0, type: PepRichTextModule, declarations: [RichTextComponent], imports: [CommonModule,
|
|
23
|
+
PepNgxLibModule,
|
|
24
|
+
PepIconModule,
|
|
25
|
+
PepButtonModule,
|
|
26
|
+
PepRichHtmlTextareaModule,
|
|
27
|
+
PepRemoteLoaderModule], exports: [RichTextComponent] });
|
|
28
|
+
PepRichTextModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PepRichTextModule, providers: [RichTextService], imports: [CommonModule,
|
|
29
|
+
PepNgxLibModule,
|
|
30
|
+
PepIconModule,
|
|
31
|
+
PepButtonModule,
|
|
32
|
+
PepRichHtmlTextareaModule,
|
|
33
|
+
PepRemoteLoaderModule] });
|
|
34
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PepRichTextModule, decorators: [{
|
|
35
|
+
type: NgModule,
|
|
36
|
+
args: [{
|
|
37
|
+
declarations: [
|
|
38
|
+
RichTextComponent
|
|
39
|
+
],
|
|
40
|
+
imports: [
|
|
41
|
+
CommonModule,
|
|
42
|
+
PepNgxLibModule,
|
|
43
|
+
PepIconModule,
|
|
44
|
+
PepButtonModule,
|
|
45
|
+
PepRichHtmlTextareaModule,
|
|
46
|
+
PepRemoteLoaderModule
|
|
47
|
+
],
|
|
48
|
+
providers: [RichTextService],
|
|
49
|
+
exports: [RichTextComponent],
|
|
50
|
+
}]
|
|
51
|
+
}], ctorParameters: function () { return [{ type: i1.PepIconRegistry }]; } });
|
|
52
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmljaC10ZXh0Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1jb21wb3NpdGUtbGliL3JpY2gtdGV4dC9yaWNoLXRleHQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUN2RixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUM5RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDakUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFDSCxhQUFhLEVBRWIsa0JBQWtCLEVBQ3JCLE1BQU0sOEJBQThCLENBQUM7OztBQUV0QyxNQUFNLFFBQVEsR0FBRztJQUNiLGtCQUFrQjtDQUNyQixDQUFDO0FBaUJGLE1BQU0sT0FBTyxpQkFBaUI7SUFDMUIsWUFBb0IsZUFBZ0M7UUFBaEMsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBQ2hELElBQUksQ0FBQyxlQUFlLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ2pELENBQUM7OzhHQUhRLGlCQUFpQjsrR0FBakIsaUJBQWlCLGlCQWJ0QixpQkFBaUIsYUFHakIsWUFBWTtRQUNaLGVBQWU7UUFDZixhQUFhO1FBQ2IsZUFBZTtRQUNmLHlCQUF5QjtRQUN6QixxQkFBcUIsYUFHZixpQkFBaUI7K0dBRWxCLGlCQUFpQixhQUhmLENBQUMsZUFBZSxDQUFDLFlBUHhCLFlBQVk7UUFDWixlQUFlO1FBQ2YsYUFBYTtRQUNiLGVBQWU7UUFDZix5QkFBeUI7UUFDekIscUJBQXFCOzJGQUtoQixpQkFBaUI7a0JBZjdCLFFBQVE7bUJBQUM7b0JBQ04sWUFBWSxFQUFFO3dCQUNWLGlCQUFpQjtxQkFDcEI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNMLFlBQVk7d0JBQ1osZUFBZTt3QkFDZixhQUFhO3dCQUNiLGVBQWU7d0JBQ2YseUJBQXlCO3dCQUN6QixxQkFBcUI7cUJBQ3hCO29CQUNELFNBQVMsRUFBRSxDQUFDLGVBQWUsQ0FBQztvQkFDNUIsT0FBTyxFQUFFLENBQUMsaUJBQWlCLENBQUM7aUJBQy9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBQZXBOZ3hMaWJNb2R1bGUgfSBmcm9tICdAcGVwcGVyaS1hZGRvbnMvbmd4LWxpYic7XG5pbXBvcnQgeyBQZXBSaWNoSHRtbFRleHRhcmVhTW9kdWxlIH0gZnJvbSAnQHBlcHBlcmktYWRkb25zL25neC1saWIvcmljaC1odG1sLXRleHRhcmVhJztcbmltcG9ydCB7IFBlcFJlbW90ZUxvYWRlck1vZHVsZSB9IGZyb20gJ0BwZXBwZXJpLWFkZG9ucy9uZ3gtbGliL3JlbW90ZS1sb2FkZXInO1xuaW1wb3J0IHsgUGVwQnV0dG9uTW9kdWxlIH0gZnJvbSAnQHBlcHBlcmktYWRkb25zL25neC1saWIvYnV0dG9uJztcbmltcG9ydCB7IFJpY2hUZXh0Q29tcG9uZW50IH0gZnJvbSAnLi9yaWNoLXRleHQuY29tcG9uZW50JztcbmltcG9ydCB7IFJpY2hUZXh0U2VydmljZSB9IGZyb20gJy4vcmljaC10ZXh0LnNlcnZpY2UnO1xuaW1wb3J0IHsgXG4gICAgUGVwSWNvbk1vZHVsZSxcbiAgICBQZXBJY29uUmVnaXN0cnksXG4gICAgcGVwSWNvblN5c3RlbUltYWdlXG59IGZyb20gJ0BwZXBwZXJpLWFkZG9ucy9uZ3gtbGliL2ljb24nO1xuXG5jb25zdCBwZXBJY29ucyA9IFtcbiAgICBwZXBJY29uU3lzdGVtSW1hZ2Vcbl07XG5cbkBOZ01vZHVsZSh7XG4gICAgZGVjbGFyYXRpb25zOiBbXG4gICAgICAgIFJpY2hUZXh0Q29tcG9uZW50XG4gICAgXSxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgUGVwTmd4TGliTW9kdWxlLFxuICAgICAgICBQZXBJY29uTW9kdWxlLFxuICAgICAgICBQZXBCdXR0b25Nb2R1bGUsXG4gICAgICAgIFBlcFJpY2hIdG1sVGV4dGFyZWFNb2R1bGUsXG4gICAgICAgIFBlcFJlbW90ZUxvYWRlck1vZHVsZVxuICAgIF0sXG4gICAgcHJvdmlkZXJzOiBbUmljaFRleHRTZXJ2aWNlXSxcbiAgICBleHBvcnRzOiBbUmljaFRleHRDb21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBQZXBSaWNoVGV4dE1vZHVsZSB7XG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBwZXBJY29uUmVnaXN0cnk6IFBlcEljb25SZWdpc3RyeSkge1xuICAgICAgICB0aGlzLnBlcEljb25SZWdpc3RyeS5yZWdpc3Rlckljb25zKHBlcEljb25zKTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Injectable } from "@angular/core";
|
|
2
|
+
import { lastValueFrom } from "rxjs";
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@pepperi-addons/ngx-lib";
|
|
5
|
+
export class RichTextService {
|
|
6
|
+
constructor(httpService) {
|
|
7
|
+
this.httpService = httpService;
|
|
8
|
+
}
|
|
9
|
+
async searchFlows(flowKey) {
|
|
10
|
+
return lastValueFrom(await this.httpService.postPapiApiCall('/user_defined_flows/search', { KeyList: [flowKey], Fields: ['Key', 'Name'] }));
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
RichTextService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: RichTextService, deps: [{ token: i1.PepHttpService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
14
|
+
RichTextService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: RichTextService, providedIn: 'root' });
|
|
15
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: RichTextService, decorators: [{
|
|
16
|
+
type: Injectable,
|
|
17
|
+
args: [{
|
|
18
|
+
providedIn: 'root',
|
|
19
|
+
}]
|
|
20
|
+
}], ctorParameters: function () { return [{ type: i1.PepHttpService }]; } });
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmljaC10ZXh0LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtY29tcG9zaXRlLWxpYi9yaWNoLXRleHQvcmljaC10ZXh0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7QUFLckMsTUFBTSxPQUFPLGVBQWU7SUFFeEIsWUFDWSxXQUEyQjtRQUEzQixnQkFBVyxHQUFYLFdBQVcsQ0FBZ0I7SUFFdkMsQ0FBQztJQUVELEtBQUssQ0FBQyxXQUFXLENBQUMsT0FBZTtRQUM3QixPQUFPLGFBQWEsQ0FBQyxNQUFNLElBQUksQ0FBQyxXQUFXLENBQUMsZUFBZSxDQUFDLDRCQUE0QixFQUFFLEVBQUUsT0FBTyxFQUFFLENBQUMsT0FBTyxDQUFDLEVBQUUsTUFBTSxFQUFFLENBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxFQUFDLENBQUMsQ0FBQyxDQUFDO0lBQy9JLENBQUM7OzRHQVRRLGVBQWU7Z0hBQWYsZUFBZSxjQUZaLE1BQU07MkZBRVQsZUFBZTtrQkFIM0IsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IFBlcEh0dHBTZXJ2aWNlLCBQZXBTZXNzaW9uU2VydmljZSB9IGZyb20gJ0BwZXBwZXJpLWFkZG9ucy9uZ3gtbGliJztcbmltcG9ydCB7IGxhc3RWYWx1ZUZyb20gfSBmcm9tIFwicnhqc1wiO1xuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBSaWNoVGV4dFNlcnZpY2Uge1xuICAgIFxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIGh0dHBTZXJ2aWNlOiBQZXBIdHRwU2VydmljZVxuICAgICAgICApIHtcbiAgICB9XG4gICAgXG4gICAgYXN5bmMgc2VhcmNoRmxvd3MoZmxvd0tleTogc3RyaW5nKTogUHJvbWlzZTxhbnk+IHtcbiAgICAgICAgcmV0dXJuIGxhc3RWYWx1ZUZyb20oYXdhaXQgdGhpcy5odHRwU2VydmljZS5wb3N0UGFwaUFwaUNhbGwoJy91c2VyX2RlZmluZWRfZmxvd3Mvc2VhcmNoJywgeyBLZXlMaXN0OiBbZmxvd0tleV0sIEZpZWxkczogWydLZXknLCAnTmFtZSddfSkpO1xuICAgIH1cbn0iXX0=
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './public-api';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVwcGVyaS1hZGRvbnMtbmd4LWNvbXBvc2l0ZS1saWItc2hvdy1pZi1iYWRnZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1jb21wb3NpdGUtbGliL3Nob3ctaWYtYmFkZ2UvcGVwcGVyaS1hZGRvbnMtbmd4LWNvbXBvc2l0ZS1saWItc2hvdy1pZi1iYWRnZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuIl19
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Public API Surface of ngx-composite-lib/flow-picker-button
|
|
3
|
+
*/
|
|
4
|
+
export * from './show-if-badge.module';
|
|
5
|
+
export * from './show-if-badge.component';
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1jb21wb3NpdGUtbGliL3Nob3ctaWYtYmFkZ2UvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUNILGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYywyQkFBMkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2Ygbmd4LWNvbXBvc2l0ZS1saWIvZmxvdy1waWNrZXItYnV0dG9uXG4gKi9cbmV4cG9ydCAqIGZyb20gJy4vc2hvdy1pZi1iYWRnZS5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9zaG93LWlmLWJhZGdlLmNvbXBvbmVudCc7XG4iXX0=
|