mstate-angular 0.2.8 → 0.2.9
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/README.md +39 -39
- package/esm2022/lib/action-form/action-form.component.mjs +14 -5
- package/esm2022/lib/common/constant.mjs +1 -1
- package/esm2022/lib/common/enum.mjs +1 -1
- package/esm2022/lib/components/action-card/action-card.component.mjs +3 -3
- package/esm2022/lib/components/button/button.component.mjs +3 -3
- package/esm2022/lib/components/dropdown/dropdown.component.mjs +3 -3
- package/esm2022/lib/components/error-card/error-card.component.mjs +3 -3
- package/esm2022/lib/components/input-field/input-field.component.mjs +3 -3
- package/esm2022/lib/components/loader/loader.component.mjs +3 -3
- package/esm2022/lib/components/select/select.component.mjs +3 -3
- package/esm2022/lib/components/text-area/text-area.component.mjs +3 -3
- package/esm2022/lib/components/workflow-end-card/workflow-end-card.component.mjs +3 -3
- package/esm2022/lib/input-selector/input-selector.component.mjs +3 -3
- package/esm2022/lib/interfaces/api.interface.mjs +1 -1
- package/esm2022/lib/interfaces/interface.mjs +1 -1
- package/esm2022/lib/mstate-angular/mstate-angular.component.mjs +3 -3
- package/esm2022/lib/mstate-angular.helper.mjs +1 -1
- package/esm2022/lib/mstate-angular.module.mjs +1 -1
- package/esm2022/lib/mstate-angular.service.mjs +1 -1
- package/esm2022/public-api.mjs +1 -1
- package/fesm2022/mstate-angular.mjs +36 -27
- package/fesm2022/mstate-angular.mjs.map +1 -1
- package/lib/action-form/action-form.component.d.ts +1 -0
- package/package.json +1 -1
package/README.md
CHANGED
@@ -1,39 +1,39 @@
|
|
1
|
-
MState is a library designed to automate workflows by managing state transitions and actions efficiently. It enables developers to create state machines, which are useful for defining and controlling the various states an object or process can pass through, especially in complex workflows.
|
2
|
-
|
3
|
-
```ts
|
4
|
-
interface MStateProps {
|
5
|
-
token: string;
|
6
|
-
workflow: string;
|
7
|
-
start?: boolean; // default true
|
8
|
-
who?: string;
|
9
|
-
instanceID?: string;
|
10
|
-
onInstanceChange?: (value: string) => void;
|
11
|
-
handleCustomField?: (key: string) => any;
|
12
|
-
onSuccess?: (actionName: string) => void;
|
13
|
-
onError?: (errors: any[]) => void;
|
14
|
-
}
|
15
|
-
```
|
16
|
-
|
17
|
-
Once the package is installed, you can import the library using import or require approach:
|
18
|
-
|
19
|
-
```ts
|
20
|
-
import { Mstate } from 'mstate-angular';
|
21
|
-
```
|
22
|
-
|
23
|
-
You can also use the default export, since the named export is just a re-export from the Axios factory:
|
24
|
-
|
25
|
-
```ts
|
26
|
-
import Mstate from 'mstate-angular';
|
27
|
-
```
|
28
|
-
|
29
|
-
## Example
|
30
|
-
|
31
|
-
```ts
|
32
|
-
import Mstate from 'mstate-angular';
|
33
|
-
|
34
|
-
<Mstate
|
35
|
-
token="your-secret-key"
|
36
|
-
instanceID="instance-id"
|
37
|
-
workflow="workflow-name-with-path"
|
38
|
-
/>;
|
39
|
-
```
|
1
|
+
MState is a library designed to automate workflows by managing state transitions and actions efficiently. It enables developers to create state machines, which are useful for defining and controlling the various states an object or process can pass through, especially in complex workflows.
|
2
|
+
|
3
|
+
```ts
|
4
|
+
interface MStateProps {
|
5
|
+
token: string;
|
6
|
+
workflow: string;
|
7
|
+
start?: boolean; // default true
|
8
|
+
who?: string;
|
9
|
+
instanceID?: string;
|
10
|
+
onInstanceChange?: (value: string) => void;
|
11
|
+
handleCustomField?: (key: string) => any;
|
12
|
+
onSuccess?: (actionName: string) => void;
|
13
|
+
onError?: (errors: any[]) => void;
|
14
|
+
}
|
15
|
+
```
|
16
|
+
|
17
|
+
Once the package is installed, you can import the library using import or require approach:
|
18
|
+
|
19
|
+
```ts
|
20
|
+
import { Mstate } from 'mstate-angular';
|
21
|
+
```
|
22
|
+
|
23
|
+
You can also use the default export, since the named export is just a re-export from the Axios factory:
|
24
|
+
|
25
|
+
```ts
|
26
|
+
import Mstate from 'mstate-angular';
|
27
|
+
```
|
28
|
+
|
29
|
+
## Example
|
30
|
+
|
31
|
+
```ts
|
32
|
+
import Mstate from 'mstate-angular';
|
33
|
+
|
34
|
+
<Mstate
|
35
|
+
token="your-secret-key"
|
36
|
+
instanceID="instance-id"
|
37
|
+
workflow="workflow-name-with-path"
|
38
|
+
/>;
|
39
|
+
```
|
@@ -28,6 +28,7 @@ export class ActionFormComponent {
|
|
28
28
|
this.onSuccess = new EventEmitter();
|
29
29
|
this.isLoading = false;
|
30
30
|
this.nonUserInputField = {};
|
31
|
+
this.customKeys = [];
|
31
32
|
this.handleStepConfigFilter = () => {
|
32
33
|
const keyForAPISet = new Set();
|
33
34
|
this.config.steps = this.config?.steps?.filter((stepConfig) => {
|
@@ -35,6 +36,7 @@ export class ActionFormComponent {
|
|
35
36
|
switch (step?.module) {
|
36
37
|
case ManualStepModule.CUSTOM_FIELD: {
|
37
38
|
if (this.updateCustomFieldValue) {
|
39
|
+
this.customKeys.push(step?.context?.key);
|
38
40
|
this.nonUserInputField[step?.context?.as] =
|
39
41
|
this.updateCustomFieldValue.emit(step?.context?.key);
|
40
42
|
}
|
@@ -64,14 +66,20 @@ export class ActionFormComponent {
|
|
64
66
|
handleExecuteAction() {
|
65
67
|
if (this.form.status === 'VALID') {
|
66
68
|
this.isLoading = true;
|
69
|
+
let customConfig = {};
|
70
|
+
if (this.updateCustomFieldValue) {
|
71
|
+
for (const key of this.customKeys) {
|
72
|
+
customConfig[key] = this.updateCustomFieldValue.emit(key);
|
73
|
+
}
|
74
|
+
}
|
67
75
|
this.mstateAngularService
|
68
76
|
.executeAction({
|
69
77
|
action: {
|
70
78
|
name: this.config.name,
|
71
|
-
payload: {
|
79
|
+
payload: Object.assign({
|
72
80
|
...this.form.value,
|
73
81
|
...this.nonUserInputField,
|
74
|
-
},
|
82
|
+
}, customConfig),
|
75
83
|
},
|
76
84
|
token: this.token,
|
77
85
|
workflow: this.workflow,
|
@@ -84,6 +92,7 @@ export class ActionFormComponent {
|
|
84
92
|
throw e;
|
85
93
|
}), finalize(() => {
|
86
94
|
this.isLoading = false;
|
95
|
+
this.customKeys = [];
|
87
96
|
}))
|
88
97
|
.subscribe((data) => {
|
89
98
|
this.onExecuteAction.emit({
|
@@ -120,7 +129,7 @@ export class ActionFormComponent {
|
|
120
129
|
this.form = this.fb.group(validators);
|
121
130
|
}
|
122
131
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ActionFormComponent, deps: [{ token: i1.FormBuilder }, { token: i2.MstateAngularService }, { token: i3.MstateAngularHelper }], target: i0.ɵɵFactoryTarget.Component }); }
|
123
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: ActionFormComponent, isStandalone: true, selector: "lib-action-form", inputs: { token: "token", workflow: "workflow", config: "config", instanceID: "instanceID" }, outputs: { onExecuteAction: "onExecuteAction", updateCustomFieldValue: "updateCustomFieldValue", onSuccess: "onSuccess" }, providers: [MstateAngularService, MstateAngularHelper], ngImport: i0, template: "<div>\n <p style=\"font-size: 2rem; text-align: center\">\n {{ config.meta?.title ?? config.name }}\n </p>\n\n <form [formGroup]=\"form\" (ngSubmit)=\"handleExecuteAction()\">\n @for (step of config.steps; track $index) {\n <mobi-office-input-selector [step]=\"step\" [mstateModel]=\"form\" />\n }\n\n <div style=\"margin-top: 10px\">\n <mobi-office-button type=\"submit\">\n @if (isLoading) {\n <div style=\"width: 25px\">\n <mobi-office-loader></mobi-office-loader>\n </div>\n } @else {\n Submit\n }\n </mobi-office-button>\n </div>\n </form>\n</div>\n", styles: ["form{display:flex;flex-direction:column}label{margin-bottom:5px}\n"], dependencies: [{ kind: "component", type: InputSelectorComponent, selector: "mobi-office-input-selector", inputs: ["step", "mstateModel"] }, { kind: "component", type: ButtonComponent, selector: "mobi-office-button", inputs: ["type", "onClick"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: LoaderComponent, selector: "mobi-office-loader" }] }); }
|
132
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: ActionFormComponent, isStandalone: true, selector: "lib-action-form", inputs: { token: "token", workflow: "workflow", config: "config", instanceID: "instanceID" }, outputs: { onExecuteAction: "onExecuteAction", updateCustomFieldValue: "updateCustomFieldValue", onSuccess: "onSuccess" }, providers: [MstateAngularService, MstateAngularHelper], ngImport: i0, template: "<div>\r\n <p style=\"font-size: 2rem; text-align: center\">\r\n {{ config.meta?.title ?? config.name }}\r\n </p>\r\n\r\n <form [formGroup]=\"form\" (ngSubmit)=\"handleExecuteAction()\">\r\n @for (step of config.steps; track $index) {\r\n <mobi-office-input-selector [step]=\"step\" [mstateModel]=\"form\" />\r\n }\r\n\r\n <div style=\"margin-top: 10px\">\r\n <mobi-office-button type=\"submit\">\r\n @if (isLoading) {\r\n <div style=\"width: 25px\">\r\n <mobi-office-loader></mobi-office-loader>\r\n </div>\r\n } @else {\r\n Submit\r\n }\r\n </mobi-office-button>\r\n </div>\r\n </form>\r\n</div>\r\n", styles: ["form{display:flex;flex-direction:column}label{margin-bottom:5px}\n"], dependencies: [{ kind: "component", type: InputSelectorComponent, selector: "mobi-office-input-selector", inputs: ["step", "mstateModel"] }, { kind: "component", type: ButtonComponent, selector: "mobi-office-button", inputs: ["type", "onClick"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: LoaderComponent, selector: "mobi-office-loader" }] }); }
|
124
133
|
}
|
125
134
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ActionFormComponent, decorators: [{
|
126
135
|
type: Component,
|
@@ -129,7 +138,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
129
138
|
ButtonComponent,
|
130
139
|
ReactiveFormsModule,
|
131
140
|
LoaderComponent,
|
132
|
-
], providers: [MstateAngularService, MstateAngularHelper], template: "<div>\n <p style=\"font-size: 2rem; text-align: center\">\n {{ config.meta?.title ?? config.name }}\n </p>\n\n <form [formGroup]=\"form\" (ngSubmit)=\"handleExecuteAction()\">\n @for (step of config.steps; track $index) {\n <mobi-office-input-selector [step]=\"step\" [mstateModel]=\"form\" />\n }\n\n <div style=\"margin-top: 10px\">\n <mobi-office-button type=\"submit\">\n @if (isLoading) {\n <div style=\"width: 25px\">\n <mobi-office-loader></mobi-office-loader>\n </div>\n } @else {\n Submit\n }\n </mobi-office-button>\n </div>\n </form>\n</div>\n", styles: ["form{display:flex;flex-direction:column}label{margin-bottom:5px}\n"] }]
|
141
|
+
], providers: [MstateAngularService, MstateAngularHelper], template: "<div>\r\n <p style=\"font-size: 2rem; text-align: center\">\r\n {{ config.meta?.title ?? config.name }}\r\n </p>\r\n\r\n <form [formGroup]=\"form\" (ngSubmit)=\"handleExecuteAction()\">\r\n @for (step of config.steps; track $index) {\r\n <mobi-office-input-selector [step]=\"step\" [mstateModel]=\"form\" />\r\n }\r\n\r\n <div style=\"margin-top: 10px\">\r\n <mobi-office-button type=\"submit\">\r\n @if (isLoading) {\r\n <div style=\"width: 25px\">\r\n <mobi-office-loader></mobi-office-loader>\r\n </div>\r\n } @else {\r\n Submit\r\n }\r\n </mobi-office-button>\r\n </div>\r\n </form>\r\n</div>\r\n", styles: ["form{display:flex;flex-direction:column}label{margin-bottom:5px}\n"] }]
|
133
142
|
}], ctorParameters: () => [{ type: i1.FormBuilder }, { type: i2.MstateAngularService }, { type: i3.MstateAngularHelper }], propDecorators: { token: [{
|
134
143
|
type: Input,
|
135
144
|
args: [{ required: true }]
|
@@ -148,4 +157,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
148
157
|
}], onSuccess: [{
|
149
158
|
type: Output
|
150
159
|
}] } });
|
151
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLWZvcm0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXN0YXRlLWFuZ3VsYXIvc3JjL2xpYi9hY3Rpb24tZm9ybS9hY3Rpb24tZm9ybS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tc3RhdGUtYW5ndWxhci9zcmMvbGliL2FjdGlvbi1mb3JtL2FjdGlvbi1mb3JtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDakUsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFHNUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzlELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQ3BGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUN4RSxPQUFPLEVBR0wsbUJBQW1CLEVBQ25CLFVBQVUsR0FDWCxNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQy9ELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQzs7Ozs7QUFleEUsTUFBTSxPQUFPLG1CQUFtQjtJQXNCOUIsWUFDVSxFQUFlLEVBQ2Ysb0JBQTBDLEVBQzFDLFlBQWlDO1FBRmpDLE9BQUUsR0FBRixFQUFFLENBQWE7UUFDZix5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO1FBQzFDLGlCQUFZLEdBQVosWUFBWSxDQUFxQjtRQXhCaEIsVUFBSyxHQUFXLEVBQUUs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LG9CQUFvQixFQUFFLG1CQUFtQixDQUFDO3FKQUszQixLQUFLO3NCQUEvQixLQUFLO3VCQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRTtnQkFDRSxRQUFRO3NCQUFsQyxLQUFLO3VCQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRTtnQkFDRSxNQUFNO3NCQUFoQyxLQUFLO3VCQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRTtnQkFLZixlQUFlO3NCQUF4QixNQUFNO2dCQUlHLHNCQUFzQjtzQkFBL0IsTUFBTTtnQkFFRSxVQUFVO3NCQUFsQixLQUFLO2dCQUNJLFNBQVM7c0JBQWxCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNc3RhdGVBbmd1bGFyU2VydmljZSB9IGZyb20gJy4uL21zdGF0ZS1hbmd1bGFyLnNlcnZpY2UnO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciwgZmluYWxpemUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEFjdGlvbkNvbmZpZywgVXNlcklucHV0IH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9pbnRlcmZhY2UnO1xuaW1wb3J0IHsgRXZhbHVhdGVkQWN0aW9uIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9hcGkuaW50ZXJmYWNlJztcbmltcG9ydCB7IEFjdGlvblR5cGUsIE1hbnVhbFN0ZXBNb2R1bGUgfSBmcm9tICcuLi9jb21tb24vZW51bSc7XG5pbXBvcnQgeyBJbnB1dFNlbGVjdG9yQ29tcG9uZW50IH0gZnJvbSAnLi4vaW5wdXQtc2VsZWN0b3IvaW5wdXQtc2VsZWN0b3IuY29tcG9uZW50JztcbmltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4uL2NvbXBvbmVudHMvYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHtcbiAgRm9ybUJ1aWxkZXIsXG4gIEZvcm1Hcm91cCxcbiAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgVmFsaWRhdG9ycyxcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTXN0YXRlQW5ndWxhckhlbHBlciB9IGZyb20gJy4uL21zdGF0ZS1hbmd1bGFyLmhlbHBlcic7XG5pbXBvcnQgeyBMb2FkZXJDb21wb25lbnQgfSBmcm9tICcuLi9jb21wb25lbnRzL2xvYWRlci9sb2FkZXIuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbGliLWFjdGlvbi1mb3JtJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIElucHV0U2VsZWN0b3JDb21wb25lbnQsXG4gICAgQnV0dG9uQ29tcG9uZW50LFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgTG9hZGVyQ29tcG9uZW50LFxuICBdLFxuICBwcm92aWRlcnM6IFtNc3RhdGVBbmd1bGFyU2VydmljZSwgTXN0YXRlQW5ndWxhckhlbHBlcl0sXG4gIHRlbXBsYXRlVXJsOiAnLi9hY3Rpb24tZm9ybS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9hY3Rpb24tZm9ybS5jb21wb25lbnQuc2NzcycsXG59KVxuZXhwb3J0IGNsYXNzIEFjdGlvbkZvcm1Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KSB0b2tlbjogc3RyaW5nID0gJyc7XG4gIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pIHdvcmtmbG93OiBzdHJpbmcgPSAnJztcbiAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSkgY29uZmlnOiBBY3Rpb25Db25maWcgfCBFdmFsdWF0ZWRBY3Rpb24gPSB7XG4gICAgbmFtZTogJycsXG4gICAgdHlwZTogQWN0aW9uVHlwZS5NQU5VQUwsXG4gICAgc3RlcHM6IFtdLFxuICB9O1xuICBAT3V0cHV0KCkgb25FeGVjdXRlQWN0aW9uID0gbmV3IEV2ZW50RW1pdHRlcjx7XG4gICAgdmFsdWU6IGFueTtcbiAgICBlcnJvcnM/OiBzdHJpbmdbXTtcbiAgfT4oKTtcbiAgQE91dHB1dCgpIHVwZGF0ZUN1c3RvbUZpZWxkVmFsdWUgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcblxuICBASW5wdXQoKSBpbnN0YW5jZUlEPzogc3RyaW5nO1xuICBAT3V0cHV0KCkgb25TdWNjZXNzID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG5cbiAgLy8jcmVnaW9uIEN1c3RvbSBEZWNsYXJhdGlvblxuICBwcm90ZWN0ZWQgZm9ybSE6IEZvcm1Hcm91cDtcbiAgcHJvdGVjdGVkIGlzTG9hZGluZyA9IGZhbHNlO1xuICBwcm90ZWN0ZWQgbm9uVXNlcklucHV0RmllbGQ6IGFueSA9IHt9O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZmI6IEZvcm1CdWlsZGVyLFxuICAgIHByaXZhdGUgbXN0YXRlQW5ndWxhclNlcnZpY2U6IE1zdGF0ZUFuZ3VsYXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgbXN0YXRlSGVscGVyOiBNc3RhdGVBbmd1bGFySGVscGVyLFxuICApIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgaWYgKEJvb2xlYW4odGhpcy5jb25maWc/LnN0ZXBzPy5sZW5ndGgpID09PSBmYWxzZSkge1xuICAgICAgdGhpcy5oYW5kbGVFeGVjdXRlQWN0aW9uKCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5hc3NpZ25Gb3JtQnVpbGRlcigpO1xuICAgIHRoaXMuaGFuZGxlU3RlcENvbmZpZ0ZpbHRlcigpO1xuICB9XG5cbiAgLy8jcmVnaW9uIGhhbmRsZXJzXG5cbiAgcHJvdGVjdGVkIGhhbmRsZUV4ZWN1dGVBY3Rpb24oKSB7XG4gICAgaWYgKHRoaXMuZm9ybS5zdGF0dXMgPT09ICdWQUxJRCcpIHtcbiAgICAgIHRoaXMuaXNMb2FkaW5nID0gdHJ1ZTtcblxuICAgICAgdGhpcy5tc3RhdGVBbmd1bGFyU2VydmljZVxuICAgICAgICAuZXhlY3V0ZUFjdGlvbih7XG4gICAgICAgICAgYWN0aW9uOiB7XG4gICAgICAgICAgICBuYW1lOiB0aGlzLmNvbmZpZy5uYW1lLFxuICAgICAgICAgICAgcGF5bG9hZDoge1xuICAgICAgICAgICAgICAuLi50aGlzLmZvcm0udmFsdWUsXG4gICAgICAgICAgICAgIC4uLnRoaXMubm9uVXNlcklucHV0RmllbGQsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgICAgdG9rZW46IHRoaXMudG9rZW4sXG4gICAgICAgICAgd29ya2Zsb3c6IHRoaXMud29ya2Zsb3csXG4gICAgICAgIH0pXG4gICAgICAgIC5waXBlKFxuICAgICAgICAgIGNhdGNoRXJyb3IoKGUpID0+IHtcbiAgICAgICAgICAgIHRoaXMub25FeGVjdXRlQWN0aW9uLmVtaXQoe1xuICAgICAgICAgICAgICB2YWx1ZToge30sXG4gICAgICAgICAgICAgIGVycm9yczogZS5lcnJvcj8uZXJyb3JzID8/IFtdLFxuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgIHRocm93IGU7XG4gICAgICAgICAgfSksXG4gICAgICAgICAgZmluYWxpemUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgICB9KSxcbiAgICAgICAgKVxuICAgICAgICAuc3Vic2NyaWJlKChkYXRhKSA9PiB7XG4gICAgICAgICAgdGhpcy5vbkV4ZWN1dGVBY3Rpb24uZW1pdCh7XG4gICAgICAgICAgICB2YWx1ZTogZGF0YS5kYXRhLFxuICAgICAgICAgICAgZXJyb3JzOiBbXSxcbiAgICAgICAgICB9KTtcbiAgICAgICAgICBpZiAodGhpcy5vblN1Y2Nlc3MpIHtcbiAgICAgICAgICAgIHRoaXMub25TdWNjZXNzLmVtaXQodGhpcy5jb25maWcubmFtZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5tYXJrQWxsQXNUb3VjaGVkKHRoaXMuZm9ybSk7XG4gICAgfVxuICB9XG4gIHByaXZhdGUgbWFya0FsbEFzVG91Y2hlZChmb3JtR3JvdXA6IEZvcm1Hcm91cCk6IHZvaWQge1xuICAgIE9iamVjdC5rZXlzKGZvcm1Hcm91cC5jb250cm9scykuZm9yRWFjaCgoa2V5KSA9PiB7XG4gICAgICBjb25zdCBjb250cm9sID0gZm9ybUdyb3VwLmdldChrZXkpO1xuICAgICAgaWYgKGNvbnRyb2w/Lm1hcmtBc1RvdWNoZWQpIHtcbiAgICAgICAgY29udHJvbD8ubWFya0FzVG91Y2hlZCgpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVTdGVwQ29uZmlnRmlsdGVyID0gKCkgPT4ge1xuICAgIGNvbnN0IGtleUZvckFQSVNldCA9IG5ldyBTZXQoKTtcblxuICAgIHRoaXMuY29uZmlnLnN0ZXBzID0gdGhpcy5jb25maWc/LnN0ZXBzPy5maWx0ZXIoKHN0ZXBDb25maWcpID0+IHtcbiAgICAgIGNvbnN0IHN0ZXAgPSBzdGVwQ29uZmlnIGFzIFVzZXJJbnB1dDtcblxuICAgICAgc3dpdGNoIChzdGVwPy5tb2R1bGUpIHtcbiAgICAgICAgY2FzZSBNYW51YWxTdGVwTW9kdWxlLkNVU1RPTV9GSUVMRDoge1xuICAgICAgICAgIGlmICh0aGlzLnVwZGF0ZUN1c3RvbUZpZWxkVmFsdWUpIHtcbiAgICAgICAgICAgIHRoaXMubm9uVXNlcklucHV0RmllbGRbc3RlcD8uY29udGV4dD8uYXNdID1cbiAgICAgICAgICAgICAgdGhpcy51cGRhdGVDdXN0b21GaWVsZFZhbHVlLmVtaXQoc3RlcD8uY29udGV4dD8ua2V5KTtcbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cblxuICAgICAgICBjYXNlIE1hbnVhbFN0ZXBNb2R1bGUuQ09OVEVYVF9GSUVMRDpcbiAgICAgICAgICB0aGlzLm5vblVzZXJJbnB1dEZpZWxkW3N0ZXA/LmNvbnRleHQ/LmFzXSA9IHN0ZXA/LmNvbnRleHQ/LnZhbHVlO1xuICAgICAgICAgIHJldHVybiB0cnVlO1xuXG4gICAgICAgIGRlZmF1bHQ6IHtcbiAgICAgICAgICBjb25zdCBpc0R1cGxpY2F0ZSA9IGtleUZvckFQSVNldC5oYXMoc3RlcD8uZmllbGQ/LmtleUZvckFQSSk7XG4gICAgICAgICAga2V5Rm9yQVBJU2V0LmFkZChzdGVwPy5maWVsZD8ua2V5Rm9yQVBJKTtcbiAgICAgICAgICByZXR1cm4gaXNEdXBsaWNhdGUgPT09IGZhbHNlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSkgYXMgVXNlcklucHV0W107XG4gIH07XG5cbiAgcHJpdmF0ZSBhc3NpZ25Gb3JtQnVpbGRlcigpIHtcbiAgICBjb25zdCB2YWxpZGF0b3JzID0gdGhpcy5jb25maWcuc3RlcHMucmVkdWNlKFxuICAgICAgKGFjYywgZGF0YSkgPT5cbiAgICAgICAgT2JqZWN0LmFzc2lnbihcbiAgICAgICAgICBhY2MsXG4gICAgICAgICAgdGhpcy5tc3RhdGVIZWxwZXIuY2hlY2tJc1N0ZXAoZGF0YSkgPT09IGZhbHNlICYmXG4gICAgICAgICAgICB0aGlzLm1zdGF0ZUhlbHBlci5jaGVja0lzSGFuZGxlZFN0ZXAoZGF0YS5maWVsZFR5cGUpXG4gICAgICAgICAgICA/IHtcbiAgICAgICAgICAgICAgICBbZGF0YT8uZmllbGQ/LmtleUZvckFQSV06IFtcbiAgICAgICAgICAgICAgICAgIGRhdGE/LmZpZWxkLm11bHRpcGxlID8gW10gOiBudWxsLFxuICAgICAgICAgICAgICAgICAgZGF0YT8uZmllbGQ/LmlzUmVxdWlyZWQgPyBbVmFsaWRhdG9ycy5yZXF1aXJlZF0gOiB1bmRlZmluZWQsXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgOiB7fSxcbiAgICAgICAgKSxcbiAgICAgIHt9LFxuICAgICk7XG4gICAgdGhpcy5mb3JtID0gdGhpcy5mYi5ncm91cCh2YWxpZGF0b3JzKTtcbiAgfVxuXG4gIC8vI2VuZHJlZ2lvblxufVxuIiwiPGRpdj5cbiAgPHAgc3R5bGU9XCJmb250LXNpemU6IDJyZW07IHRleHQtYWxpZ246IGNlbnRlclwiPlxuICAgIHt7IGNvbmZpZy5tZXRhPy50aXRsZSA/PyBjb25maWcubmFtZSB9fVxuICA8L3A+XG5cbiAgPGZvcm0gW2Zvcm1Hcm91cF09XCJmb3JtXCIgKG5nU3VibWl0KT1cImhhbmRsZUV4ZWN1dGVBY3Rpb24oKVwiPlxuICAgIEBmb3IgKHN0ZXAgb2YgY29uZmlnLnN0ZXBzOyB0cmFjayAkaW5kZXgpIHtcbiAgICAgIDxtb2JpLW9mZmljZS1pbnB1dC1zZWxlY3RvciBbc3RlcF09XCJzdGVwXCIgW21zdGF0ZU1vZGVsXT1cImZvcm1cIiAvPlxuICAgIH1cblxuICAgIDxkaXYgc3R5bGU9XCJtYXJnaW4tdG9wOiAxMHB4XCI+XG4gICAgICA8bW9iaS1vZmZpY2UtYnV0dG9uIHR5cGU9XCJzdWJtaXRcIj5cbiAgICAgICAgQGlmIChpc0xvYWRpbmcpIHtcbiAgICAgICAgICA8ZGl2IHN0eWxlPVwid2lkdGg6IDI1cHhcIj5cbiAgICAgICAgICAgIDxtb2JpLW9mZmljZS1sb2FkZXI+PC9tb2JpLW9mZmljZS1sb2FkZXI+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgIFN1Ym1pdFxuICAgICAgICB9XG4gICAgICA8L21vYmktb2ZmaWNlLWJ1dHRvbj5cbiAgICA8L2Rpdj5cbiAgPC9mb3JtPlxuPC9kaXY+XG4iXX0=
|
160
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLWZvcm0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXN0YXRlLWFuZ3VsYXIvc3JjL2xpYi9hY3Rpb24tZm9ybS9hY3Rpb24tZm9ybS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tc3RhdGUtYW5ndWxhci9zcmMvbGliL2FjdGlvbi1mb3JtL2FjdGlvbi1mb3JtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDakUsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFHNUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzlELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQ3BGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUN4RSxPQUFPLEVBR0wsbUJBQW1CLEVBQ25CLFVBQVUsR0FDWCxNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQy9ELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQzs7Ozs7QUFleEUsTUFBTSxPQUFPLG1CQUFtQjtJQXVCOUIsWUFDVSxFQUFlLEVBQ2Ysb0JBQTBDLEVBQzFDLFlBQWlDO1FBRmpDLE9BQUUsR0FBRixFQUFFLENBQWE7UUFDZix5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO1FBQzFDLGlCQUFZLEdBQVosWUFBWSxDQUFxQjtRQXpCaEIsVUFBSyxHQUFXLEVBQUUs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QUFTO2lCQUM1RDthQUNGO1lBQ0gsQ0FBQyxDQUFDLEVBQUUsQ0FDUCxFQUNILEVBQUUsQ0FDSCxDQUFDO1FBQ0YsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUN4QyxDQUFDOytHQXRKVSxtQkFBbUI7bUdBQW5CLG1CQUFtQix1UkFKbkIsQ0FBQyxvQkFBb0IsRUFBRSxtQkFBbUIsQ0FBQywwQkMxQnhELHVyQkF1QkEsNEhERkksc0JBQXNCLHdHQUN0QixlQUFlLDJGQUNmLG1CQUFtQixxYkFDbkIsZUFBZTs7NEZBTU4sbUJBQW1CO2tCQWIvQixTQUFTOytCQUNFLGlCQUFpQixjQUNmLElBQUksV0FDUDt3QkFDUCxzQkFBc0I7d0JBQ3RCLGVBQWU7d0JBQ2YsbUJBQW1CO3dCQUNuQixlQUFlO3FCQUNoQixhQUNVLENBQUMsb0JBQW9CLEVBQUUsbUJBQW1CLENBQUM7cUpBSzNCLEtBQUs7c0JBQS9CLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQUNFLFFBQVE7c0JBQWxDLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQUNFLE1BQU07c0JBQWhDLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQUtmLGVBQWU7c0JBQXhCLE1BQU07Z0JBSUcsc0JBQXNCO3NCQUEvQixNQUFNO2dCQUVFLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0ksU0FBUztzQkFBbEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTXN0YXRlQW5ndWxhclNlcnZpY2UgfSBmcm9tICcuLi9tc3RhdGUtYW5ndWxhci5zZXJ2aWNlJztcclxuaW1wb3J0IHsgY2F0Y2hFcnJvciwgZmluYWxpemUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgQWN0aW9uQ29uZmlnLCBVc2VySW5wdXQgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2ludGVyZmFjZSc7XHJcbmltcG9ydCB7IEV2YWx1YXRlZEFjdGlvbiB9IGZyb20gJy4uL2ludGVyZmFjZXMvYXBpLmludGVyZmFjZSc7XHJcbmltcG9ydCB7IEFjdGlvblR5cGUsIE1hbnVhbFN0ZXBNb2R1bGUgfSBmcm9tICcuLi9jb21tb24vZW51bSc7XHJcbmltcG9ydCB7IElucHV0U2VsZWN0b3JDb21wb25lbnQgfSBmcm9tICcuLi9pbnB1dC1zZWxlY3Rvci9pbnB1dC1zZWxlY3Rvci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBCdXR0b25Db21wb25lbnQgfSBmcm9tICcuLi9jb21wb25lbnRzL2J1dHRvbi9idXR0b24uY29tcG9uZW50JztcclxuaW1wb3J0IHtcclxuICBGb3JtQnVpbGRlcixcclxuICBGb3JtR3JvdXAsXHJcbiAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcclxuICBWYWxpZGF0b3JzLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgTXN0YXRlQW5ndWxhckhlbHBlciB9IGZyb20gJy4uL21zdGF0ZS1hbmd1bGFyLmhlbHBlcic7XHJcbmltcG9ydCB7IExvYWRlckNvbXBvbmVudCB9IGZyb20gJy4uL2NvbXBvbmVudHMvbG9hZGVyL2xvYWRlci5jb21wb25lbnQnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItYWN0aW9uLWZvcm0nLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW1xyXG4gICAgSW5wdXRTZWxlY3RvckNvbXBvbmVudCxcclxuICAgIEJ1dHRvbkNvbXBvbmVudCxcclxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXHJcbiAgICBMb2FkZXJDb21wb25lbnQsXHJcbiAgXSxcclxuICBwcm92aWRlcnM6IFtNc3RhdGVBbmd1bGFyU2VydmljZSwgTXN0YXRlQW5ndWxhckhlbHBlcl0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2FjdGlvbi1mb3JtLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4vYWN0aW9uLWZvcm0uY29tcG9uZW50LnNjc3MnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQWN0aW9uRm9ybUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSkgdG9rZW46IHN0cmluZyA9ICcnO1xyXG4gIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pIHdvcmtmbG93OiBzdHJpbmcgPSAnJztcclxuICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KSBjb25maWc6IEFjdGlvbkNvbmZpZyB8IEV2YWx1YXRlZEFjdGlvbiA9IHtcclxuICAgIG5hbWU6ICcnLFxyXG4gICAgdHlwZTogQWN0aW9uVHlwZS5NQU5VQUwsXHJcbiAgICBzdGVwczogW10sXHJcbiAgfTtcclxuICBAT3V0cHV0KCkgb25FeGVjdXRlQWN0aW9uID0gbmV3IEV2ZW50RW1pdHRlcjx7XHJcbiAgICB2YWx1ZTogYW55O1xyXG4gICAgZXJyb3JzPzogc3RyaW5nW107XHJcbiAgfT4oKTtcclxuICBAT3V0cHV0KCkgdXBkYXRlQ3VzdG9tRmllbGRWYWx1ZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xyXG5cclxuICBASW5wdXQoKSBpbnN0YW5jZUlEPzogc3RyaW5nO1xyXG4gIEBPdXRwdXQoKSBvblN1Y2Nlc3MgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcclxuXHJcbiAgLy8jcmVnaW9uIEN1c3RvbSBEZWNsYXJhdGlvblxyXG4gIHByb3RlY3RlZCBmb3JtITogRm9ybUdyb3VwO1xyXG4gIHByb3RlY3RlZCBpc0xvYWRpbmcgPSBmYWxzZTtcclxuICBwcm90ZWN0ZWQgbm9uVXNlcklucHV0RmllbGQ6IGFueSA9IHt9O1xyXG4gIHByb3RlY3RlZCBjdXN0b21LZXlzOiBzdHJpbmdbXSA9IFtdO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgZmI6IEZvcm1CdWlsZGVyLFxyXG4gICAgcHJpdmF0ZSBtc3RhdGVBbmd1bGFyU2VydmljZTogTXN0YXRlQW5ndWxhclNlcnZpY2UsXHJcbiAgICBwcml2YXRlIG1zdGF0ZUhlbHBlcjogTXN0YXRlQW5ndWxhckhlbHBlcixcclxuICApIHt9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgaWYgKEJvb2xlYW4odGhpcy5jb25maWc/LnN0ZXBzPy5sZW5ndGgpID09PSBmYWxzZSkge1xyXG4gICAgICB0aGlzLmhhbmRsZUV4ZWN1dGVBY3Rpb24oKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuYXNzaWduRm9ybUJ1aWxkZXIoKTtcclxuICAgIHRoaXMuaGFuZGxlU3RlcENvbmZpZ0ZpbHRlcigpO1xyXG4gIH1cclxuXHJcbiAgLy8jcmVnaW9uIGhhbmRsZXJzXHJcblxyXG4gIHByb3RlY3RlZCBoYW5kbGVFeGVjdXRlQWN0aW9uKCkge1xyXG4gICAgaWYgKHRoaXMuZm9ybS5zdGF0dXMgPT09ICdWQUxJRCcpIHtcclxuICAgICAgdGhpcy5pc0xvYWRpbmcgPSB0cnVlO1xyXG5cclxuICAgICAgbGV0IGN1c3RvbUNvbmZpZzogYW55ID0ge307XHJcbiAgICAgIGlmICh0aGlzLnVwZGF0ZUN1c3RvbUZpZWxkVmFsdWUpIHtcclxuICAgICAgICBmb3IgKGNvbnN0IGtleSBvZiB0aGlzLmN1c3RvbUtleXMpIHtcclxuICAgICAgICAgIGN1c3RvbUNvbmZpZ1trZXldID0gdGhpcy51cGRhdGVDdXN0b21GaWVsZFZhbHVlLmVtaXQoa2V5KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRoaXMubXN0YXRlQW5ndWxhclNlcnZpY2VcclxuICAgICAgICAuZXhlY3V0ZUFjdGlvbih7XHJcbiAgICAgICAgICBhY3Rpb246IHtcclxuICAgICAgICAgICAgbmFtZTogdGhpcy5jb25maWcubmFtZSxcclxuICAgICAgICAgICAgcGF5bG9hZDogT2JqZWN0LmFzc2lnbihcclxuICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAuLi50aGlzLmZvcm0udmFsdWUsXHJcbiAgICAgICAgICAgICAgICAuLi50aGlzLm5vblVzZXJJbnB1dEZpZWxkLFxyXG4gICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgY3VzdG9tQ29uZmlnLFxyXG4gICAgICAgICAgICApLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIHRva2VuOiB0aGlzLnRva2VuLFxyXG4gICAgICAgICAgd29ya2Zsb3c6IHRoaXMud29ya2Zsb3csXHJcbiAgICAgICAgfSlcclxuICAgICAgICAucGlwZShcclxuICAgICAgICAgIGNhdGNoRXJyb3IoKGUpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5vbkV4ZWN1dGVBY3Rpb24uZW1pdCh7XHJcbiAgICAgICAgICAgICAgdmFsdWU6IHt9LFxyXG4gICAgICAgICAgICAgIGVycm9yczogZS5lcnJvcj8uZXJyb3JzID8/IFtdLFxyXG4gICAgICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgICAgIHRocm93IGU7XHJcbiAgICAgICAgICB9KSxcclxuICAgICAgICAgIGZpbmFsaXplKCgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgdGhpcy5jdXN0b21LZXlzID0gW107XHJcbiAgICAgICAgICB9KSxcclxuICAgICAgICApXHJcbiAgICAgICAgLnN1YnNjcmliZSgoZGF0YSkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5vbkV4ZWN1dGVBY3Rpb24uZW1pdCh7XHJcbiAgICAgICAgICAgIHZhbHVlOiBkYXRhLmRhdGEsXHJcbiAgICAgICAgICAgIGVycm9yczogW10sXHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICAgIGlmICh0aGlzLm9uU3VjY2Vzcykge1xyXG4gICAgICAgICAgICB0aGlzLm9uU3VjY2Vzcy5lbWl0KHRoaXMuY29uZmlnLm5hbWUpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5tYXJrQWxsQXNUb3VjaGVkKHRoaXMuZm9ybSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIHByaXZhdGUgbWFya0FsbEFzVG91Y2hlZChmb3JtR3JvdXA6IEZvcm1Hcm91cCk6IHZvaWQge1xyXG4gICAgT2JqZWN0LmtleXMoZm9ybUdyb3VwLmNvbnRyb2xzKS5mb3JFYWNoKChrZXkpID0+IHtcclxuICAgICAgY29uc3QgY29udHJvbCA9IGZvcm1Hcm91cC5nZXQoa2V5KTtcclxuICAgICAgaWYgKGNvbnRyb2w/Lm1hcmtBc1RvdWNoZWQpIHtcclxuICAgICAgICBjb250cm9sPy5tYXJrQXNUb3VjaGVkKCk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBoYW5kbGVTdGVwQ29uZmlnRmlsdGVyID0gKCkgPT4ge1xyXG4gICAgY29uc3Qga2V5Rm9yQVBJU2V0ID0gbmV3IFNldCgpO1xyXG5cclxuICAgIHRoaXMuY29uZmlnLnN0ZXBzID0gdGhpcy5jb25maWc/LnN0ZXBzPy5maWx0ZXIoKHN0ZXBDb25maWcpID0+IHtcclxuICAgICAgY29uc3Qgc3RlcCA9IHN0ZXBDb25maWcgYXMgVXNlcklucHV0O1xyXG5cclxuICAgICAgc3dpdGNoIChzdGVwPy5tb2R1bGUpIHtcclxuICAgICAgICBjYXNlIE1hbnVhbFN0ZXBNb2R1bGUuQ1VTVE9NX0ZJRUxEOiB7XHJcbiAgICAgICAgICBpZiAodGhpcy51cGRhdGVDdXN0b21GaWVsZFZhbHVlKSB7XHJcbiAgICAgICAgICAgIHRoaXMuY3VzdG9tS2V5cy5wdXNoKHN0ZXA/LmNvbnRleHQ/LmtleSk7XHJcbiAgICAgICAgICAgIHRoaXMubm9uVXNlcklucHV0RmllbGRbc3RlcD8uY29udGV4dD8uYXNdID1cclxuICAgICAgICAgICAgICB0aGlzLnVwZGF0ZUN1c3RvbUZpZWxkVmFsdWUuZW1pdChzdGVwPy5jb250ZXh0Py5rZXkpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBjYXNlIE1hbnVhbFN0ZXBNb2R1bGUuQ09OVEVYVF9GSUVMRDpcclxuICAgICAgICAgIHRoaXMubm9uVXNlcklucHV0RmllbGRbc3RlcD8uY29udGV4dD8uYXNdID0gc3RlcD8uY29udGV4dD8udmFsdWU7XHJcbiAgICAgICAgICByZXR1cm4gdHJ1ZTtcclxuXHJcbiAgICAgICAgZGVmYXVsdDoge1xyXG4gICAgICAgICAgY29uc3QgaXNEdXBsaWNhdGUgPSBrZXlGb3JBUElTZXQuaGFzKHN0ZXA/LmZpZWxkPy5rZXlGb3JBUEkpO1xyXG4gICAgICAgICAga2V5Rm9yQVBJU2V0LmFkZChzdGVwPy5maWVsZD8ua2V5Rm9yQVBJKTtcclxuICAgICAgICAgIHJldHVybiBpc0R1cGxpY2F0ZSA9PT0gZmFsc2U7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9KSBhcyBVc2VySW5wdXRbXTtcclxuICB9O1xyXG5cclxuICBwcml2YXRlIGFzc2lnbkZvcm1CdWlsZGVyKCkge1xyXG4gICAgY29uc3QgdmFsaWRhdG9ycyA9IHRoaXMuY29uZmlnLnN0ZXBzLnJlZHVjZShcclxuICAgICAgKGFjYywgZGF0YSkgPT5cclxuICAgICAgICBPYmplY3QuYXNzaWduKFxyXG4gICAgICAgICAgYWNjLFxyXG4gICAgICAgICAgdGhpcy5tc3RhdGVIZWxwZXIuY2hlY2tJc1N0ZXAoZGF0YSkgPT09IGZhbHNlICYmXHJcbiAgICAgICAgICAgIHRoaXMubXN0YXRlSGVscGVyLmNoZWNrSXNIYW5kbGVkU3RlcChkYXRhLmZpZWxkVHlwZSlcclxuICAgICAgICAgICAgPyB7XHJcbiAgICAgICAgICAgICAgICBbZGF0YT8uZmllbGQ/LmtleUZvckFQSV06IFtcclxuICAgICAgICAgICAgICAgICAgZGF0YT8uZmllbGQubXVsdGlwbGUgPyBbXSA6IG51bGwsXHJcbiAgICAgICAgICAgICAgICAgIGRhdGE/LmZpZWxkPy5pc1JlcXVpcmVkID8gW1ZhbGlkYXRvcnMucmVxdWlyZWRdIDogdW5kZWZpbmVkLFxyXG4gICAgICAgICAgICAgICAgXSxcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIDoge30sXHJcbiAgICAgICAgKSxcclxuICAgICAge30sXHJcbiAgICApO1xyXG4gICAgdGhpcy5mb3JtID0gdGhpcy5mYi5ncm91cCh2YWxpZGF0b3JzKTtcclxuICB9XHJcblxyXG4gIC8vI2VuZHJlZ2lvblxyXG59XHJcbiIsIjxkaXY+XHJcbiAgPHAgc3R5bGU9XCJmb250LXNpemU6IDJyZW07IHRleHQtYWxpZ246IGNlbnRlclwiPlxyXG4gICAge3sgY29uZmlnLm1ldGE/LnRpdGxlID8/IGNvbmZpZy5uYW1lIH19XHJcbiAgPC9wPlxyXG5cclxuICA8Zm9ybSBbZm9ybUdyb3VwXT1cImZvcm1cIiAobmdTdWJtaXQpPVwiaGFuZGxlRXhlY3V0ZUFjdGlvbigpXCI+XHJcbiAgICBAZm9yIChzdGVwIG9mIGNvbmZpZy5zdGVwczsgdHJhY2sgJGluZGV4KSB7XHJcbiAgICAgIDxtb2JpLW9mZmljZS1pbnB1dC1zZWxlY3RvciBbc3RlcF09XCJzdGVwXCIgW21zdGF0ZU1vZGVsXT1cImZvcm1cIiAvPlxyXG4gICAgfVxyXG5cclxuICAgIDxkaXYgc3R5bGU9XCJtYXJnaW4tdG9wOiAxMHB4XCI+XHJcbiAgICAgIDxtb2JpLW9mZmljZS1idXR0b24gdHlwZT1cInN1Ym1pdFwiPlxyXG4gICAgICAgIEBpZiAoaXNMb2FkaW5nKSB7XHJcbiAgICAgICAgICA8ZGl2IHN0eWxlPVwid2lkdGg6IDI1cHhcIj5cclxuICAgICAgICAgICAgPG1vYmktb2ZmaWNlLWxvYWRlcj48L21vYmktb2ZmaWNlLWxvYWRlcj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIH0gQGVsc2Uge1xyXG4gICAgICAgICAgU3VibWl0XHJcbiAgICAgICAgfVxyXG4gICAgICA8L21vYmktb2ZmaWNlLWJ1dHRvbj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZm9ybT5cclxuPC9kaXY+XHJcbiJdfQ==
|
@@ -2,4 +2,4 @@
|
|
2
2
|
// export const MSTATE_URL = 'http://localhost:3000/api';
|
3
3
|
export const MSTATE_URL = 'https://api.mstate.mobioffice.io/api';
|
4
4
|
export const TOKEN_KEY = 'secret-key';
|
5
|
-
//# sourceMappingURL=data:application/json;base64,
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tc3RhdGUtYW5ndWxhci9zcmMvbGliL2NvbW1vbi9jb25zdGFudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSw0RUFBNEU7QUFDNUUseURBQXlEO0FBQ3pELE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBVyxzQ0FBc0MsQ0FBQztBQUN6RSxNQUFNLENBQUMsTUFBTSxTQUFTLEdBQVcsWUFBWSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gZXhwb3J0IGNvbnN0IE1TVEFURV9VUkw6IHN0cmluZyA9ICdodHRwczovL2Rldi5tc3RhdGUubW9iaW9mZmljZS5pby9hcGknO1xyXG4vLyBleHBvcnQgY29uc3QgTVNUQVRFX1VSTCA9ICdodHRwOi8vbG9jYWxob3N0OjMwMDAvYXBpJztcclxuZXhwb3J0IGNvbnN0IE1TVEFURV9VUkw6IHN0cmluZyA9ICdodHRwczovL2FwaS5tc3RhdGUubW9iaW9mZmljZS5pby9hcGknO1xyXG5leHBvcnQgY29uc3QgVE9LRU5fS0VZOiBzdHJpbmcgPSAnc2VjcmV0LWtleSc7XHJcbiJdfQ==
|
@@ -45,4 +45,4 @@ export var ActionType;
|
|
45
45
|
ActionType["AUTO"] = "AUTO";
|
46
46
|
ActionType["CHAINED"] = "CHAINED";
|
47
47
|
})(ActionType || (ActionType = {}));
|
48
|
-
//# sourceMappingURL=data:application/json;base64,
|
48
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW51bS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21zdGF0ZS1hbmd1bGFyL3NyYy9saWIvY29tbW9uL2VudW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksS0FLWDtBQUxELFdBQVksS0FBSztJQUNmLCtDQUFzQyxDQUFBO0lBQ3RDLGdEQUF1QyxDQUFBO0lBQ3ZDLHFFQUE0RCxDQUFBO0lBQzVELCtEQUFzRCxDQUFBO0FBQ3hELENBQUMsRUFMVyxLQUFLLEtBQUwsS0FBSyxRQUtoQjtBQUVELE1BQU0sQ0FBTixJQUFZLFNBV1g7QUFYRCxXQUFZLFNBQVM7SUFDbkIsdUNBQTBCLENBQUE7SUFDMUIsdUNBQTBCLENBQUE7SUFDMUIsdUNBQTBCLENBQUE7SUFDMUIsbUNBQXNCLENBQUE7SUFDdEIsa0NBQXFCLENBQUE7SUFDckIscUNBQXdCLENBQUE7SUFDeEIsbUNBQXNCLENBQUE7SUFDdEIsZ0NBQW1CLENBQUE7SUFDbkIsNENBQStCLENBQUE7SUFDL0IsMENBQTZCLENBQUE7QUFDL0IsQ0FBQyxFQVhXLFNBQVMsS0FBVCxTQUFTLFFBV3BCO0FBRUQsTUFBTSxDQUFOLElBQVksZ0JBSVg7QUFKRCxXQUFZLGdCQUFnQjtJQUMxQixtREFBK0IsQ0FBQTtJQUMvQixpREFBNkIsQ0FBQTtJQUM3Qiw2Q0FBeUIsQ0FBQTtBQUMzQixDQUFDLEVBSlcsZ0JBQWdCLEtBQWhCLGdCQUFnQixRQUkzQjtBQUVELE1BQU0sQ0FBTixJQUFZLEtBSVg7QUFKRCxXQUFZLEtBQUs7SUFDZixzQkFBYSxDQUFBO0lBQ2Isd0JBQWUsQ0FBQTtJQUNmLDBCQUFpQixDQUFBO0FBQ25CLENBQUMsRUFKVyxLQUFLLEtBQUwsS0FBSyxRQUloQjtBQUVELE1BQU0sQ0FBTixJQUFZLFFBT1g7QUFQRCxXQUFZLFFBQVE7SUFDbEIsaUNBQXFCLENBQUE7SUFDckIsMkJBQWUsQ0FBQTtJQUNmLHNDQUEwQixDQUFBO0lBQzFCLDJCQUFlLENBQUE7SUFDZiwwQ0FBOEIsQ0FBQTtJQUM5Qiw2QkFBaUIsQ0FBQTtBQUNuQixDQUFDLEVBUFcsUUFBUSxLQUFSLFFBQVEsUUFPbkI7QUFFRCxNQUFNLENBQU4sSUFBWSxVQUlYO0FBSkQsV0FBWSxVQUFVO0lBQ3BCLCtCQUFpQixDQUFBO0lBQ2pCLDJCQUFhLENBQUE7SUFDYixpQ0FBbUIsQ0FBQTtBQUNyQixDQUFDLEVBSlcsVUFBVSxLQUFWLFVBQVUsUUFJckIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBSb3V0ZSB7XHJcbiAgRVhFQ1VURV9BQ1RJT04gPSAnd29ya2Zsb3cvdjIvZXhlY3V0ZScsXHJcbiAgR0VUX1dPUktGTE9XX0NPTkZJRyA9ICd3b3JrZmxvdy9jb25maWcnLFxyXG4gIEdFVF9DVVJSRU5UX0FDVElPTlNfV0lUSE9VVF9JTlNUQU5DRSA9ICd3b3JrZmxvdy92Mi9hY3Rpb25zJyxcclxuICBHRVRfQ1VSUkVOVF9BQ1RJT05TX1dJVEhfSU5TVEFOQ0UgPSAnd29ya2Zsb3cvYWN0aW9ucycsXHJcbn1cclxuXHJcbmV4cG9ydCBlbnVtIEZpZWxkVHlwZSB7XHJcbiAgREFURV9QSUNLRVIgPSAnZGF0ZVBpY2tlcicsXHJcbiAgVElNRV9QSUNLRVIgPSAndGltZVBpY2tlcicsXHJcbiAgSU5QVVRfRklFTEQgPSAnaW5wdXRGaWVsZCcsXHJcbiAgVEVYVF9BUkVBID0gJ3RleHRBcmVhJyxcclxuICBDSEVDS0JPWCA9ICdjaGVja0JveCcsXHJcbiAgUkFESU9fTElTVCA9ICdyYWRpb0xpc3QnLFxyXG4gIERST1BfRE9XTiA9ICdkcm9wRG93bicsXHJcbiAgU1VNTUFSWSA9ICdzdW1tYXJ5JyxcclxuICBDT05URVhUX0ZJRUxEID0gJ0NPTlRFWFRfRklFTEQnLFxyXG4gIENVU1RPTV9GSUVMRCA9ICdDVVNUT01fRklFTEQnLFxyXG59XHJcblxyXG5leHBvcnQgZW51bSBNYW51YWxTdGVwTW9kdWxlIHtcclxuICBDT05URVhUX0ZJRUxEID0gJ0NPTlRFWFRfRklFTEQnLFxyXG4gIENVU1RPTV9GSUVMRCA9ICdDVVNUT01fRklFTEQnLFxyXG4gIFVTRVJfSU5QVVQgPSAnVVNFUl9JTlBVVCcsXHJcbn1cclxuXHJcbmV4cG9ydCBlbnVtIFRoZW1lIHtcclxuICBEQVJLID0gJ2RhcmsnLFxyXG4gIExJR0hUID0gJ2xpZ2h0JyxcclxuICBTWVNURU0gPSAnc3lzdGVtJyxcclxufVxyXG5cclxuZXhwb3J0IGVudW0gVmFyaWFibGUge1xyXG4gIFdPUktGTE9XID0gJ3dvcmtmbG93JyxcclxuICBUT0tFTiA9ICd0b2tlbicsXHJcbiAgSU5TVEFOQ0VfSUQgPSAnaW5zdGFuY2VJRCcsXHJcbiAgU1RBUlQgPSAnc3RhcnQnLFxyXG4gIFRSSUdHRVJfQUdBSU4gPSAndHJpZ2dlckFnYWluJyxcclxuICBFUlJPUlMgPSAnZXJyb3JzJyxcclxufVxyXG5cclxuZXhwb3J0IGVudW0gQWN0aW9uVHlwZSB7XHJcbiAgTUFOVUFMID0gJ01BTlVBTCcsXHJcbiAgQVVUTyA9ICdBVVRPJyxcclxuICBDSEFJTkVEID0gJ0NIQUlORUQnLFxyXG59XHJcbiJdfQ==
|
@@ -10,15 +10,15 @@ export class ActionCardComponent {
|
|
10
10
|
this.executeAction.emit(this.config);
|
11
11
|
}
|
12
12
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ActionCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
13
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: ActionCardComponent, isStandalone: true, selector: "mobi-office-action-card", inputs: { config: "config" }, outputs: { executeAction: "executeAction" }, ngImport: i0, template: "<div class=\"card\" (click)=\"triggerExecuteAction()\">\n <img\n src=\"https://docs.mstate.ai/img/mymobioffice_logo.png\"\n alt=\"Card Image\"\n class=\"card-image\"\n />\n <div class=\"card-content\">\n <h3 class=\"card-title\">\n {{ config?.name }}\n </h3>\n <p class=\"card-description\">\n {{ config?.meta?.desc ?? 'Click card to execute' }}\n </p>\n </div>\n <div class=\"card-footer\">\n <button class=\"card-button\">Execute</button>\n </div>\n</div>\n", styles: [".card{width:240px;background-color:#fff;border-radius:10px;box-shadow:0 4px 8px #0000001a;overflow:hidden;cursor:pointer;transition:transform .2s,box-shadow .2s}.card:hover{transform:translateY(-5px);box-shadow:0 8px 16px #0003}.card-image{width:auto;margin:5px;height:150px;display:block;margin-inline:auto;border-radius:10px}.card-content{padding:15px}.card-title{margin:0 0 10px;font-size:18px;font-weight:700;color:#333}.card-description{margin:0;font-size:14px;color:#666;line-height:1.5}.card-footer{padding:10px 15px;background-color:#f9f9f9;text-align:right}.card-button{background-color:#007bff;color:#fff;border:none;padding:8px 15px;border-radius:5px;cursor:pointer;font-size:14px;transition:background-color .2s}.card-button:hover{background-color:#0056b3}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }] }); }
|
13
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: ActionCardComponent, isStandalone: true, selector: "mobi-office-action-card", inputs: { config: "config" }, outputs: { executeAction: "executeAction" }, ngImport: i0, template: "<div class=\"card\" (click)=\"triggerExecuteAction()\">\r\n <img\r\n src=\"https://docs.mstate.ai/img/mymobioffice_logo.png\"\r\n alt=\"Card Image\"\r\n class=\"card-image\"\r\n />\r\n <div class=\"card-content\">\r\n <h3 class=\"card-title\">\r\n {{ config?.name }}\r\n </h3>\r\n <p class=\"card-description\">\r\n {{ config?.meta?.desc ?? 'Click card to execute' }}\r\n </p>\r\n </div>\r\n <div class=\"card-footer\">\r\n <button class=\"card-button\">Execute</button>\r\n </div>\r\n</div>\r\n", styles: [".card{width:240px;background-color:#fff;border-radius:10px;box-shadow:0 4px 8px #0000001a;overflow:hidden;cursor:pointer;transition:transform .2s,box-shadow .2s}.card:hover{transform:translateY(-5px);box-shadow:0 8px 16px #0003}.card-image{width:auto;margin:5px;height:150px;display:block;margin-inline:auto;border-radius:10px}.card-content{padding:15px}.card-title{margin:0 0 10px;font-size:18px;font-weight:700;color:#333}.card-description{margin:0;font-size:14px;color:#666;line-height:1.5}.card-footer{padding:10px 15px;background-color:#f9f9f9;text-align:right}.card-button{background-color:#007bff;color:#fff;border:none;padding:8px 15px;border-radius:5px;cursor:pointer;font-size:14px;transition:background-color .2s}.card-button:hover{background-color:#0056b3}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }] }); }
|
14
14
|
}
|
15
15
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ActionCardComponent, decorators: [{
|
16
16
|
type: Component,
|
17
|
-
args: [{ selector: 'mobi-office-action-card', standalone: true, imports: [CommonModule, ButtonComponent], template: "<div class=\"card\" (click)=\"triggerExecuteAction()\">\n <img\n src=\"https://docs.mstate.ai/img/mymobioffice_logo.png\"\n alt=\"Card Image\"\n class=\"card-image\"\n />\n <div class=\"card-content\">\n <h3 class=\"card-title\">\n {{ config?.name }}\n </h3>\n <p class=\"card-description\">\n {{ config?.meta?.desc ?? 'Click card to execute' }}\n </p>\n </div>\n <div class=\"card-footer\">\n <button class=\"card-button\">Execute</button>\n </div>\n</div>\n", styles: [".card{width:240px;background-color:#fff;border-radius:10px;box-shadow:0 4px 8px #0000001a;overflow:hidden;cursor:pointer;transition:transform .2s,box-shadow .2s}.card:hover{transform:translateY(-5px);box-shadow:0 8px 16px #0003}.card-image{width:auto;margin:5px;height:150px;display:block;margin-inline:auto;border-radius:10px}.card-content{padding:15px}.card-title{margin:0 0 10px;font-size:18px;font-weight:700;color:#333}.card-description{margin:0;font-size:14px;color:#666;line-height:1.5}.card-footer{padding:10px 15px;background-color:#f9f9f9;text-align:right}.card-button{background-color:#007bff;color:#fff;border:none;padding:8px 15px;border-radius:5px;cursor:pointer;font-size:14px;transition:background-color .2s}.card-button:hover{background-color:#0056b3}\n"] }]
|
17
|
+
args: [{ selector: 'mobi-office-action-card', standalone: true, imports: [CommonModule, ButtonComponent], template: "<div class=\"card\" (click)=\"triggerExecuteAction()\">\r\n <img\r\n src=\"https://docs.mstate.ai/img/mymobioffice_logo.png\"\r\n alt=\"Card Image\"\r\n class=\"card-image\"\r\n />\r\n <div class=\"card-content\">\r\n <h3 class=\"card-title\">\r\n {{ config?.name }}\r\n </h3>\r\n <p class=\"card-description\">\r\n {{ config?.meta?.desc ?? 'Click card to execute' }}\r\n </p>\r\n </div>\r\n <div class=\"card-footer\">\r\n <button class=\"card-button\">Execute</button>\r\n </div>\r\n</div>\r\n", styles: [".card{width:240px;background-color:#fff;border-radius:10px;box-shadow:0 4px 8px #0000001a;overflow:hidden;cursor:pointer;transition:transform .2s,box-shadow .2s}.card:hover{transform:translateY(-5px);box-shadow:0 8px 16px #0003}.card-image{width:auto;margin:5px;height:150px;display:block;margin-inline:auto;border-radius:10px}.card-content{padding:15px}.card-title{margin:0 0 10px;font-size:18px;font-weight:700;color:#333}.card-description{margin:0;font-size:14px;color:#666;line-height:1.5}.card-footer{padding:10px 15px;background-color:#f9f9f9;text-align:right}.card-button{background-color:#007bff;color:#fff;border:none;padding:8px 15px;border-radius:5px;cursor:pointer;font-size:14px;transition:background-color .2s}.card-button:hover{background-color:#0056b3}\n"] }]
|
18
18
|
}], propDecorators: { config: [{
|
19
19
|
type: Input,
|
20
20
|
args: [{ required: true }]
|
21
21
|
}], executeAction: [{
|
22
22
|
type: Output
|
23
23
|
}] } });
|
24
|
-
//# sourceMappingURL=data:application/json;base64,
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLWNhcmQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXN0YXRlLWFuZ3VsYXIvc3JjL2xpYi9jb21wb25lbnRzL2FjdGlvbi1jYXJkL2FjdGlvbi1jYXJkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21zdGF0ZS1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9hY3Rpb24tY2FyZC9hY3Rpb24tY2FyZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUcvQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7O0FBUzdELE1BQU0sT0FBTyxtQkFBbUI7SUFQaEM7UUFTWSxrQkFBYSxHQUFHLElBQUksWUFBWSxFQUFrQyxDQUFDO0tBSzlFO0lBSEMsb0JBQW9CO1FBQ2xCLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN2QyxDQUFDOytHQU5VLG1CQUFtQjttR0FBbkIsbUJBQW1CLDhKQ2JoQyx5aEJBa0JBLDJ6QkRUWSxZQUFZOzs0RkFJWCxtQkFBbUI7a0JBUC9CLFNBQVM7K0JBQ0UseUJBQXlCLGNBQ3ZCLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxlQUFlLENBQUM7OEJBS2IsTUFBTTtzQkFBaEMsS0FBSzt1QkFBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUU7Z0JBQ2YsYUFBYTtzQkFBdEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IEV2YWx1YXRlZEFjdGlvbiB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvYXBpLmludGVyZmFjZSc7XHJcbmltcG9ydCB7IEFjdGlvbkNvbmZpZyB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi4vYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdtb2JpLW9mZmljZS1hY3Rpb24tY2FyZCcsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBCdXR0b25Db21wb25lbnRdLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9hY3Rpb24tY2FyZC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmw6ICcuL2FjdGlvbi1jYXJkLmNvbXBvbmVudC5zY3NzJyxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFjdGlvbkNhcmRDb21wb25lbnQge1xyXG4gIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pIGNvbmZpZz86IEV2YWx1YXRlZEFjdGlvbiB8IEFjdGlvbkNvbmZpZztcclxuICBAT3V0cHV0KCkgZXhlY3V0ZUFjdGlvbiA9IG5ldyBFdmVudEVtaXR0ZXI8RXZhbHVhdGVkQWN0aW9uIHwgQWN0aW9uQ29uZmlnPigpO1xyXG5cclxuICB0cmlnZ2VyRXhlY3V0ZUFjdGlvbigpIHtcclxuICAgIHRoaXMuZXhlY3V0ZUFjdGlvbi5lbWl0KHRoaXMuY29uZmlnKTtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cImNhcmRcIiAoY2xpY2spPVwidHJpZ2dlckV4ZWN1dGVBY3Rpb24oKVwiPlxyXG4gIDxpbWdcclxuICAgIHNyYz1cImh0dHBzOi8vZG9jcy5tc3RhdGUuYWkvaW1nL215bW9iaW9mZmljZV9sb2dvLnBuZ1wiXHJcbiAgICBhbHQ9XCJDYXJkIEltYWdlXCJcclxuICAgIGNsYXNzPVwiY2FyZC1pbWFnZVwiXHJcbiAgLz5cclxuICA8ZGl2IGNsYXNzPVwiY2FyZC1jb250ZW50XCI+XHJcbiAgICA8aDMgY2xhc3M9XCJjYXJkLXRpdGxlXCI+XHJcbiAgICAgIHt7IGNvbmZpZz8ubmFtZSB9fVxyXG4gICAgPC9oMz5cclxuICAgIDxwIGNsYXNzPVwiY2FyZC1kZXNjcmlwdGlvblwiPlxyXG4gICAgICB7eyBjb25maWc/Lm1ldGE/LmRlc2MgPz8gJ0NsaWNrIGNhcmQgdG8gZXhlY3V0ZScgfX1cclxuICAgIDwvcD5cclxuICA8L2Rpdj5cclxuICA8ZGl2IGNsYXNzPVwiY2FyZC1mb290ZXJcIj5cclxuICAgIDxidXR0b24gY2xhc3M9XCJjYXJkLWJ1dHRvblwiPkV4ZWN1dGU8L2J1dHRvbj5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcbiJdfQ==
|
@@ -7,14 +7,14 @@ export class ButtonComponent {
|
|
7
7
|
this.onClick = () => { };
|
8
8
|
}
|
9
9
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
10
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: ButtonComponent, isStandalone: true, selector: "mobi-office-button", inputs: { type: "type", onClick: "onClick" }, ngImport: i0, template: "<button [type]=\"type\" (click)=\"onClick()\" class=\"btn\">\n <ng-content></ng-content>\n</button>\n", styles: [".btn{width:100%;display:flex;align-items:center;justify-content:center;background-color:#007bff;color:#fff;border:1px solid #007bff;padding:10px 20px;font-size:16px;border-radius:4px;text-align:center;cursor:pointer;transition:all .3s ease}.btn:hover{background-color:#0056b3;border-color:#0056b3}.btn:focus{outline:none;box-shadow:0 0 0 .2rem #007bff40}.btn:active{background-color:#004085;border-color:#036}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }] }); }
|
10
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: ButtonComponent, isStandalone: true, selector: "mobi-office-button", inputs: { type: "type", onClick: "onClick" }, ngImport: i0, template: "<button [type]=\"type\" (click)=\"onClick()\" class=\"btn\">\r\n <ng-content></ng-content>\r\n</button>\r\n", styles: [".btn{width:100%;display:flex;align-items:center;justify-content:center;background-color:#007bff;color:#fff;border:1px solid #007bff;padding:10px 20px;font-size:16px;border-radius:4px;text-align:center;cursor:pointer;transition:all .3s ease}.btn:hover{background-color:#0056b3;border-color:#0056b3}.btn:focus{outline:none;box-shadow:0 0 0 .2rem #007bff40}.btn:active{background-color:#004085;border-color:#036}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }] }); }
|
11
11
|
}
|
12
12
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ButtonComponent, decorators: [{
|
13
13
|
type: Component,
|
14
|
-
args: [{ selector: 'mobi-office-button', standalone: true, imports: [CommonModule], template: "<button [type]=\"type\" (click)=\"onClick()\" class=\"btn\">\n <ng-content></ng-content>\n</button>\n", styles: [".btn{width:100%;display:flex;align-items:center;justify-content:center;background-color:#007bff;color:#fff;border:1px solid #007bff;padding:10px 20px;font-size:16px;border-radius:4px;text-align:center;cursor:pointer;transition:all .3s ease}.btn:hover{background-color:#0056b3;border-color:#0056b3}.btn:focus{outline:none;box-shadow:0 0 0 .2rem #007bff40}.btn:active{background-color:#004085;border-color:#036}\n"] }]
|
14
|
+
args: [{ selector: 'mobi-office-button', standalone: true, imports: [CommonModule], template: "<button [type]=\"type\" (click)=\"onClick()\" class=\"btn\">\r\n <ng-content></ng-content>\r\n</button>\r\n", styles: [".btn{width:100%;display:flex;align-items:center;justify-content:center;background-color:#007bff;color:#fff;border:1px solid #007bff;padding:10px 20px;font-size:16px;border-radius:4px;text-align:center;cursor:pointer;transition:all .3s ease}.btn:hover{background-color:#0056b3;border-color:#0056b3}.btn:focus{outline:none;box-shadow:0 0 0 .2rem #007bff40}.btn:active{background-color:#004085;border-color:#036}\n"] }]
|
15
15
|
}], propDecorators: { type: [{
|
16
16
|
type: Input
|
17
17
|
}], onClick: [{
|
18
18
|
type: Input
|
19
19
|
}] } });
|
20
|
-
//# sourceMappingURL=data:application/json;base64,
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21zdGF0ZS1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9idXR0b24vYnV0dG9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21zdGF0ZS1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9idXR0b24vYnV0dG9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7QUFTL0MsTUFBTSxPQUFPLGVBQWU7SUFQNUI7UUFRVyxTQUFJLEdBQTJDLFFBQVEsQ0FBQztRQUN4RCxZQUFPLEdBQWUsR0FBRyxFQUFFLEdBQUUsQ0FBQyxDQUFDO0tBQ3pDOytHQUhZLGVBQWU7bUdBQWYsZUFBZSw0SENWNUIsOEdBR0Esb2RER1ksWUFBWTs7NEZBSVgsZUFBZTtrQkFQM0IsU0FBUzsrQkFDRSxvQkFBb0IsY0FDbEIsSUFBSSxXQUNQLENBQUMsWUFBWSxDQUFDOzhCQUtkLElBQUk7c0JBQVosS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ21vYmktb2ZmaWNlLWJ1dHRvbicsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlXSxcclxuICB0ZW1wbGF0ZVVybDogJy4vYnV0dG9uLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4vYnV0dG9uLmNvbXBvbmVudC5zY3NzJyxcclxufSlcclxuZXhwb3J0IGNsYXNzIEJ1dHRvbkNvbXBvbmVudCB7XHJcbiAgQElucHV0KCkgdHlwZTogJ3N1Ym1pdCcgfCAnbWVudScgfCAncmVzZXQnIHwgJ2J1dHRvbicgPSAnc3VibWl0JztcclxuICBASW5wdXQoKSBvbkNsaWNrOiAoKSA9PiB2b2lkID0gKCkgPT4ge307XHJcbn1cclxuIiwiPGJ1dHRvbiBbdHlwZV09XCJ0eXBlXCIgKGNsaWNrKT1cIm9uQ2xpY2soKVwiIGNsYXNzPVwiYnRuXCI+XHJcbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG48L2J1dHRvbj5cclxuIl19
|
@@ -35,11 +35,11 @@ export class DropdownComponent {
|
|
35
35
|
return this.mstateHelper.checkInputError(form, key);
|
36
36
|
}
|
37
37
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DropdownComponent, deps: [{ token: i1.MstateAngularService }, { token: i2.MstateAngularHelper }], target: i0.ɵɵFactoryTarget.Component }); }
|
38
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: DropdownComponent, isStandalone: true, selector: "mobi-office-dropdown", inputs: { config: "config", mstateModel: "mstateModel" }, providers: [MstateAngularService], ngImport: i0, template: "<div class=\"form-group\" [formGroup]=\"mstateModel\">\n <label>{{ config.label }}</label>\n\n <ng-select\n [items]=\"list\"\n [multiple]=\"false\"\n [bindLabel]=\"this.config.field.mapper?.label ?? 'label'\"\n [placeholder]=\"config.field.placeholder\"\n [formControlName]=\"config.field.keyForAPI\"\n [required]=\"config.field.isRequired || false\"\n >\n </ng-select>\n\n @if (checkInputError(mstateModel, config.field.keyForAPI).isError) {\n <small>{{\n checkInputError(mstateModel, config.field.keyForAPI).message\n }}</small>\n }\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: NgSelectModule }, { kind: "component", type: i4.NgSelectComponent, selector: "ng-select", inputs: ["bindLabel", "bindValue", "markFirst", "placeholder", "notFoundText", "typeToSearchText", "addTagText", "loadingText", "clearAllText", "appearance", "dropdownPosition", "appendTo", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "openOnEnter", "maxSelectedItems", "groupBy", "groupValue", "bufferAmount", "virtualScroll", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "tabIndex", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "keyDownFn", "typeahead", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd", "deselectOnClick"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }, { kind: "ngmodule", type: CommonModule }] }); }
|
38
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: DropdownComponent, isStandalone: true, selector: "mobi-office-dropdown", inputs: { config: "config", mstateModel: "mstateModel" }, providers: [MstateAngularService], ngImport: i0, template: "<div class=\"form-group\" [formGroup]=\"mstateModel\">\r\n <label>{{ config.label }}</label>\r\n\r\n <ng-select\r\n [items]=\"list\"\r\n [multiple]=\"false\"\r\n [bindLabel]=\"this.config.field.mapper?.label ?? 'label'\"\r\n [placeholder]=\"config.field.placeholder\"\r\n [formControlName]=\"config.field.keyForAPI\"\r\n [required]=\"config.field.isRequired || false\"\r\n >\r\n </ng-select>\r\n\r\n @if (checkInputError(mstateModel, config.field.keyForAPI).isError) {\r\n <small>{{\r\n checkInputError(mstateModel, config.field.keyForAPI).message\r\n }}</small>\r\n }\r\n</div>\r\n", styles: [""], dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: NgSelectModule }, { kind: "component", type: i4.NgSelectComponent, selector: "ng-select", inputs: ["bindLabel", "bindValue", "markFirst", "placeholder", "notFoundText", "typeToSearchText", "addTagText", "loadingText", "clearAllText", "appearance", "dropdownPosition", "appendTo", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "openOnEnter", "maxSelectedItems", "groupBy", "groupValue", "bufferAmount", "virtualScroll", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "tabIndex", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "keyDownFn", "typeahead", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd", "deselectOnClick"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }, { kind: "ngmodule", type: CommonModule }] }); }
|
39
39
|
}
|
40
40
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DropdownComponent, decorators: [{
|
41
41
|
type: Component,
|
42
|
-
args: [{ selector: 'mobi-office-dropdown', standalone: true, imports: [ReactiveFormsModule, NgSelectModule, CommonModule], providers: [MstateAngularService], template: "<div class=\"form-group\" [formGroup]=\"mstateModel\">\n <label>{{ config.label }}</label>\n\n <ng-select\n [items]=\"list\"\n [multiple]=\"false\"\n [bindLabel]=\"this.config.field.mapper?.label ?? 'label'\"\n [placeholder]=\"config.field.placeholder\"\n [formControlName]=\"config.field.keyForAPI\"\n [required]=\"config.field.isRequired || false\"\n >\n </ng-select>\n\n @if (checkInputError(mstateModel, config.field.keyForAPI).isError) {\n <small>{{\n checkInputError(mstateModel, config.field.keyForAPI).message\n }}</small>\n }\n</div>\n" }]
|
42
|
+
args: [{ selector: 'mobi-office-dropdown', standalone: true, imports: [ReactiveFormsModule, NgSelectModule, CommonModule], providers: [MstateAngularService], template: "<div class=\"form-group\" [formGroup]=\"mstateModel\">\r\n <label>{{ config.label }}</label>\r\n\r\n <ng-select\r\n [items]=\"list\"\r\n [multiple]=\"false\"\r\n [bindLabel]=\"this.config.field.mapper?.label ?? 'label'\"\r\n [placeholder]=\"config.field.placeholder\"\r\n [formControlName]=\"config.field.keyForAPI\"\r\n [required]=\"config.field.isRequired || false\"\r\n >\r\n </ng-select>\r\n\r\n @if (checkInputError(mstateModel, config.field.keyForAPI).isError) {\r\n <small>{{\r\n checkInputError(mstateModel, config.field.keyForAPI).message\r\n }}</small>\r\n }\r\n</div>\r\n" }]
|
43
43
|
}], ctorParameters: () => [{ type: i1.MstateAngularService }, { type: i2.MstateAngularHelper }], propDecorators: { config: [{
|
44
44
|
type: Input,
|
45
45
|
args: [{ required: true }]
|
@@ -47,4 +47,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
47
47
|
type: Input,
|
48
48
|
args: [{ required: true }]
|
49
49
|
}] } });
|
50
|
-
//# sourceMappingURL=data:application/json;base64,
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXN0YXRlLWFuZ3VsYXIvc3JjL2xpYi9jb21wb25lbnRzL2Ryb3Bkb3duL2Ryb3Bkb3duLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21zdGF0ZS1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9kcm9wZG93bi9kcm9wZG93bi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUN6RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFL0MsT0FBTyxFQUFhLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFFcEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7Ozs7QUFVdEQsTUFBTSxPQUFPLGlCQUFpQjtJQUk1QixZQUNVLGFBQW1DLEVBQ25DLFlBQWlDO1FBRGpDLGtCQUFhLEdBQWIsYUFBYSxDQUFzQjtRQUNuQyxpQkFBWSxHQUFaLFlBQVksQ0FBcUI7UUFHakMsU0FBSSxHQUFVLEVBQUUsQ0FBQztJQUZ4QixDQUFDO0lBSUosUUFBUTtRQUNOLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxJQUFJLEVBQUUsQ0FBQztRQUV0QyxJQUFJLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNsQixJQUFJLENBQUMsYUFBYTtpQkFDZixpQkFBaUIsQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxJQUFJLEVBQUUsQ0FBQztpQkFDN0QsSUFBSSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7Z0JBQ2IsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7WUFDbkIsQ0FBQyxDQUFDO2lCQUNELEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2xDLENBQUM7YUFBTSxDQUFDO1lBQ04sSUFBSSxDQUFDLElBQUksR0FBRyxLQUFLLENBQUMsUUFBUSxJQUFJLEVBQUUsQ0FBQztRQUNuQyxDQUFDO0lBQ0gsQ0FBQztJQUVELGNBQWMsQ0FBQyxHQUFRLEVBQUUsTUFBYztRQUNyQyxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsY0FBYyxDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBRUQsZUFBZSxDQUFDLElBQWUsRUFBRSxHQUFXO1FBQzFDLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxlQUFlLENBQUMsSUFBSSxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ3RELENBQUM7K0dBaENVLGlCQUFpQjttR0FBakIsaUJBQWlCLDZIQUpqQixDQUFDLG9CQUFvQixDQUFDLDBCQ1puQyxxbUJBbUJBLHlERFJZLG1CQUFtQixnekJBQUUsY0FBYyxvNUJBQUUsWUFBWTs7NEZBS2hELGlCQUFpQjtrQkFSN0IsU0FBUzsrQkFDRSxzQkFBc0IsY0FDcEIsSUFBSSxXQUNQLENBQUMsbUJBQW1CLEVBQUUsY0FBYyxFQUFFLFlBQVksQ0FBQyxhQUNqRCxDQUFDLG9CQUFvQixDQUFDOzJIQUtOLE1BQU07c0JBQWhDLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQUNFLFdBQVc7c0JBQXJDLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IFVzZXJJbnB1dCB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgRm9ybUdyb3VwLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBNc3RhdGVBbmd1bGFyU2VydmljZSB9IGZyb20gJy4uLy4uL21zdGF0ZS1hbmd1bGFyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBNc3RhdGVBbmd1bGFySGVscGVyIH0gZnJvbSAnLi4vLi4vbXN0YXRlLWFuZ3VsYXIuaGVscGVyJztcclxuaW1wb3J0IHsgTmdTZWxlY3RNb2R1bGUgfSBmcm9tICdAbmctc2VsZWN0L25nLXNlbGVjdCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ21vYmktb2ZmaWNlLWRyb3Bkb3duJyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtSZWFjdGl2ZUZvcm1zTW9kdWxlLCBOZ1NlbGVjdE1vZHVsZSwgQ29tbW9uTW9kdWxlXSxcclxuICBwcm92aWRlcnM6IFtNc3RhdGVBbmd1bGFyU2VydmljZV0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2Ryb3Bkb3duLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4vZHJvcGRvd24uY29tcG9uZW50LnNjc3MnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRHJvcGRvd25Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pIGNvbmZpZyE6IFVzZXJJbnB1dDtcclxuICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KSBtc3RhdGVNb2RlbCE6IEZvcm1Hcm91cDtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIG1zdGF0ZVNlcnZpY2U6IE1zdGF0ZUFuZ3VsYXJTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBtc3RhdGVIZWxwZXI6IE1zdGF0ZUFuZ3VsYXJIZWxwZXJcclxuICApIHt9XHJcblxyXG4gIHByb3RlY3RlZCBsaXN0OiBhbnlbXSA9IFtdO1xyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIGNvbnN0IGZpZWxkID0gdGhpcy5jb25maWcuZmllbGQgPz8ge307XHJcblxyXG4gICAgaWYgKGZpZWxkLnJlcXVlc3QpIHtcclxuICAgICAgdGhpcy5tc3RhdGVTZXJ2aWNlXHJcbiAgICAgICAgLmhhbmRsZURyb3Bkb3duQVBJKGZpZWxkLnJlcXVlc3QsIGZpZWxkPy5tYXBwZXI/LnRhcmdldCA/PyAnJylcclxuICAgICAgICAudGhlbigoZGF0YSkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5saXN0ID0gZGF0YTtcclxuICAgICAgICB9KVxyXG4gICAgICAgIC5jYXRjaCgoZSkgPT4gY29uc29sZS5sb2coZSkpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5saXN0ID0gZmllbGQuaXRlbUxpc3QgPz8gW107XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBnZXRPYmplY3RWYWx1ZShvYmo6IGFueSwgdGFyZ2V0OiBzdHJpbmcpIHtcclxuICAgIHJldHVybiB0aGlzLm1zdGF0ZUhlbHBlci5nZXRPYmplY3RWYWx1ZShvYmosIHRhcmdldCk7XHJcbiAgfVxyXG5cclxuICBjaGVja0lucHV0RXJyb3IoZm9ybTogRm9ybUdyb3VwLCBrZXk6IHN0cmluZykge1xyXG4gICAgcmV0dXJuIHRoaXMubXN0YXRlSGVscGVyLmNoZWNrSW5wdXRFcnJvcihmb3JtLCBrZXkpO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cFwiIFtmb3JtR3JvdXBdPVwibXN0YXRlTW9kZWxcIj5cclxuICA8bGFiZWw+e3sgY29uZmlnLmxhYmVsIH19PC9sYWJlbD5cclxuXHJcbiAgPG5nLXNlbGVjdFxyXG4gICAgW2l0ZW1zXT1cImxpc3RcIlxyXG4gICAgW211bHRpcGxlXT1cImZhbHNlXCJcclxuICAgIFtiaW5kTGFiZWxdPVwidGhpcy5jb25maWcuZmllbGQubWFwcGVyPy5sYWJlbCA/PyAnbGFiZWwnXCJcclxuICAgIFtwbGFjZWhvbGRlcl09XCJjb25maWcuZmllbGQucGxhY2Vob2xkZXJcIlxyXG4gICAgW2Zvcm1Db250cm9sTmFtZV09XCJjb25maWcuZmllbGQua2V5Rm9yQVBJXCJcclxuICAgIFtyZXF1aXJlZF09XCJjb25maWcuZmllbGQuaXNSZXF1aXJlZCB8fCBmYWxzZVwiXHJcbiAgPlxyXG4gIDwvbmctc2VsZWN0PlxyXG5cclxuICBAaWYgKGNoZWNrSW5wdXRFcnJvcihtc3RhdGVNb2RlbCwgY29uZmlnLmZpZWxkLmtleUZvckFQSSkuaXNFcnJvcikge1xyXG4gIDxzbWFsbD57e1xyXG4gICAgY2hlY2tJbnB1dEVycm9yKG1zdGF0ZU1vZGVsLCBjb25maWcuZmllbGQua2V5Rm9yQVBJKS5tZXNzYWdlXHJcbiAgfX08L3NtYWxsPlxyXG4gIH1cclxuPC9kaXY+XHJcbiJdfQ==
|
@@ -9,15 +9,15 @@ export class ErrorCardComponent {
|
|
9
9
|
this.retry.emit();
|
10
10
|
}
|
11
11
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ErrorCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
12
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: ErrorCardComponent, isStandalone: true, selector: "lib-error-card", inputs: { errors: "errors" }, outputs: { retry: "retry" }, ngImport: i0, template: "<div class=\"error\">\n <p style=\"font-size: 2rem; text-align: center\">Error</p>\n\n @for (message of errors; track message) {\n <p style=\"color: red; font-size: 1rem; text-align: center\">\n {{ message }}\n </p>\n }\n <mobi-office-button (click)=\"handleRetryError()\">Retry</mobi-office-button>\n</div>\n", styles: [""], dependencies: [{ kind: "component", type: ButtonComponent, selector: "mobi-office-button", inputs: ["type", "onClick"] }] }); }
|
12
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: ErrorCardComponent, isStandalone: true, selector: "lib-error-card", inputs: { errors: "errors" }, outputs: { retry: "retry" }, ngImport: i0, template: "<div class=\"error\">\r\n <p style=\"font-size: 2rem; text-align: center\">Error</p>\r\n\r\n @for (message of errors; track message) {\r\n <p style=\"color: red; font-size: 1rem; text-align: center\">\r\n {{ message }}\r\n </p>\r\n }\r\n <mobi-office-button (click)=\"handleRetryError()\">Retry</mobi-office-button>\r\n</div>\r\n", styles: [""], dependencies: [{ kind: "component", type: ButtonComponent, selector: "mobi-office-button", inputs: ["type", "onClick"] }] }); }
|
13
13
|
}
|
14
14
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ErrorCardComponent, decorators: [{
|
15
15
|
type: Component,
|
16
|
-
args: [{ selector: 'lib-error-card', standalone: true, imports: [ButtonComponent], template: "<div class=\"error\">\n <p style=\"font-size: 2rem; text-align: center\">Error</p>\n\n @for (message of errors; track message) {\n <p style=\"color: red; font-size: 1rem; text-align: center\">\n {{ message }}\n </p>\n }\n <mobi-office-button (click)=\"handleRetryError()\">Retry</mobi-office-button>\n</div>\n" }]
|
16
|
+
args: [{ selector: 'lib-error-card', standalone: true, imports: [ButtonComponent], template: "<div class=\"error\">\r\n <p style=\"font-size: 2rem; text-align: center\">Error</p>\r\n\r\n @for (message of errors; track message) {\r\n <p style=\"color: red; font-size: 1rem; text-align: center\">\r\n {{ message }}\r\n </p>\r\n }\r\n <mobi-office-button (click)=\"handleRetryError()\">Retry</mobi-office-button>\r\n</div>\r\n" }]
|
17
17
|
}], propDecorators: { errors: [{
|
18
18
|
type: Input,
|
19
19
|
args: [{ required: true }]
|
20
20
|
}], retry: [{
|
21
21
|
type: Output
|
22
22
|
}] } });
|
23
|
-
//# sourceMappingURL=data:application/json;base64,
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3ItY2FyZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tc3RhdGUtYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvZXJyb3ItY2FyZC9lcnJvci1jYXJkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21zdGF0ZS1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9lcnJvci1jYXJkL2Vycm9yLWNhcmQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7O0FBUzdELE1BQU0sT0FBTyxrQkFBa0I7SUFQL0I7UUFTWSxVQUFLLEdBQUcsSUFBSSxZQUFZLEVBQWEsQ0FBQztLQUtqRDtJQUhXLGdCQUFnQjtRQUN4QixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3BCLENBQUM7K0dBTlUsa0JBQWtCO21HQUFsQixrQkFBa0IscUlDVi9CLDBWQVVBLDBEREpZLGVBQWU7OzRGQUlkLGtCQUFrQjtrQkFQOUIsU0FBUzsrQkFDRSxnQkFBZ0IsY0FDZCxJQUFJLFdBQ1AsQ0FBQyxlQUFlLENBQUM7OEJBS0MsTUFBTTtzQkFBaEMsS0FBSzt1QkFBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUU7Z0JBQ2YsS0FBSztzQkFBZCxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi4vYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItZXJyb3ItY2FyZCcsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbQnV0dG9uQ29tcG9uZW50XSxcclxuICB0ZW1wbGF0ZVVybDogJy4vZXJyb3ItY2FyZC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmw6ICcuL2Vycm9yLWNhcmQuY29tcG9uZW50LnNjc3MnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRXJyb3JDYXJkQ29tcG9uZW50IHtcclxuICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KSBlcnJvcnMhOiBzdHJpbmdbXTtcclxuICBAT3V0cHV0KCkgcmV0cnkgPSBuZXcgRXZlbnRFbWl0dGVyPHVuZGVmaW5lZD4oKTtcclxuXHJcbiAgcHJvdGVjdGVkIGhhbmRsZVJldHJ5RXJyb3IoKSB7XHJcbiAgICB0aGlzLnJldHJ5LmVtaXQoKTtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cImVycm9yXCI+XHJcbiAgPHAgc3R5bGU9XCJmb250LXNpemU6IDJyZW07IHRleHQtYWxpZ246IGNlbnRlclwiPkVycm9yPC9wPlxyXG5cclxuICBAZm9yIChtZXNzYWdlIG9mIGVycm9yczsgdHJhY2sgbWVzc2FnZSkge1xyXG4gICAgPHAgc3R5bGU9XCJjb2xvcjogcmVkOyBmb250LXNpemU6IDFyZW07IHRleHQtYWxpZ246IGNlbnRlclwiPlxyXG4gICAgICB7eyBtZXNzYWdlIH19XHJcbiAgICA8L3A+XHJcbiAgfVxyXG4gIDxtb2JpLW9mZmljZS1idXR0b24gKGNsaWNrKT1cImhhbmRsZVJldHJ5RXJyb3IoKVwiPlJldHJ5PC9tb2JpLW9mZmljZS1idXR0b24+XHJcbjwvZGl2PlxyXG4iXX0=
|
@@ -12,11 +12,11 @@ export class InputFieldComponent {
|
|
12
12
|
return this.mstateHelper.checkInputError(form, key);
|
13
13
|
}
|
14
14
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: InputFieldComponent, deps: [{ token: i1.MstateAngularHelper }], target: i0.ɵɵFactoryTarget.Component }); }
|
15
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: InputFieldComponent, isStandalone: true, selector: "mobi-office-input-field", inputs: { config: "config", mstateModel: "mstateModel" }, ngImport: i0, template: "<div\n class=\"form-group\"\n [formGroup]=\"mstateModel\"\n style=\"display: flex; flex-direction: column\"\n>\n <label>{{ config.label }}</label>\n <input\n style=\"flex: 1\"\n [required]=\"config.field.isRequired || false\"\n [type]=\"config.inputType\"\n [name]=\"config.field.keyForAPI\"\n [placeholder]=\"config.field.placeholder\"\n [formControlName]=\"config.field.keyForAPI\"\n class=\"form-control\"\n />\n @if (checkInputError(mstateModel, config.field.keyForAPI).isError) {\n <small>{{\n checkInputError(mstateModel, config.field.keyForAPI).message\n }}</small>\n }\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }] }); }
|
15
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: InputFieldComponent, isStandalone: true, selector: "mobi-office-input-field", inputs: { config: "config", mstateModel: "mstateModel" }, ngImport: i0, template: "<div\r\n class=\"form-group\"\r\n [formGroup]=\"mstateModel\"\r\n style=\"display: flex; flex-direction: column\"\r\n>\r\n <label>{{ config.label }}</label>\r\n <input\r\n style=\"flex: 1\"\r\n [required]=\"config.field.isRequired || false\"\r\n [type]=\"config.inputType\"\r\n [name]=\"config.field.keyForAPI\"\r\n [placeholder]=\"config.field.placeholder\"\r\n [formControlName]=\"config.field.keyForAPI\"\r\n class=\"form-control\"\r\n />\r\n @if (checkInputError(mstateModel, config.field.keyForAPI).isError) {\r\n <small>{{\r\n checkInputError(mstateModel, config.field.keyForAPI).message\r\n }}</small>\r\n }\r\n</div>\r\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }] }); }
|
16
16
|
}
|
17
17
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: InputFieldComponent, decorators: [{
|
18
18
|
type: Component,
|
19
|
-
args: [{ selector: 'mobi-office-input-field', standalone: true, imports: [CommonModule, ReactiveFormsModule], template: "<div\n class=\"form-group\"\n [formGroup]=\"mstateModel\"\n style=\"display: flex; flex-direction: column\"\n>\n <label>{{ config.label }}</label>\n <input\n style=\"flex: 1\"\n [required]=\"config.field.isRequired || false\"\n [type]=\"config.inputType\"\n [name]=\"config.field.keyForAPI\"\n [placeholder]=\"config.field.placeholder\"\n [formControlName]=\"config.field.keyForAPI\"\n class=\"form-control\"\n />\n @if (checkInputError(mstateModel, config.field.keyForAPI).isError) {\n <small>{{\n checkInputError(mstateModel, config.field.keyForAPI).message\n }}</small>\n }\n</div>\n" }]
|
19
|
+
args: [{ selector: 'mobi-office-input-field', standalone: true, imports: [CommonModule, ReactiveFormsModule], template: "<div\r\n class=\"form-group\"\r\n [formGroup]=\"mstateModel\"\r\n style=\"display: flex; flex-direction: column\"\r\n>\r\n <label>{{ config.label }}</label>\r\n <input\r\n style=\"flex: 1\"\r\n [required]=\"config.field.isRequired || false\"\r\n [type]=\"config.inputType\"\r\n [name]=\"config.field.keyForAPI\"\r\n [placeholder]=\"config.field.placeholder\"\r\n [formControlName]=\"config.field.keyForAPI\"\r\n class=\"form-control\"\r\n />\r\n @if (checkInputError(mstateModel, config.field.keyForAPI).isError) {\r\n <small>{{\r\n checkInputError(mstateModel, config.field.keyForAPI).message\r\n }}</small>\r\n }\r\n</div>\r\n" }]
|
20
20
|
}], ctorParameters: () => [{ type: i1.MstateAngularHelper }], propDecorators: { config: [{
|
21
21
|
type: Input,
|
22
22
|
args: [{ required: true }]
|
@@ -24,4 +24,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
24
24
|
type: Input,
|
25
25
|
args: [{ required: true }]
|
26
26
|
}] } });
|
27
|
-
//# sourceMappingURL=data:application/json;base64,
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtZmllbGQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXN0YXRlLWFuZ3VsYXIvc3JjL2xpYi9jb21wb25lbnRzL2lucHV0LWZpZWxkL2lucHV0LWZpZWxkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21zdGF0ZS1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9pbnB1dC1maWVsZC9pbnB1dC1maWVsZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFL0MsT0FBTyxFQUFhLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7QUFVaEUsTUFBTSxPQUFPLG1CQUFtQjtJQUk5QixZQUFvQixZQUFpQztRQUFqQyxpQkFBWSxHQUFaLFlBQVksQ0FBcUI7SUFBRyxDQUFDO0lBRXpELGVBQWUsQ0FBQyxJQUFlLEVBQUUsR0FBVztRQUMxQyxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsZUFBZSxDQUFDLElBQUksRUFBRSxHQUFHLENBQUMsQ0FBQztJQUN0RCxDQUFDOytHQVJVLG1CQUFtQjttR0FBbkIsbUJBQW1CLDZJQ2JoQyx3cEJBcUJBLHlERFpZLFlBQVksOEJBQUUsbUJBQW1COzs0RkFJaEMsbUJBQW1CO2tCQVAvQixTQUFTOytCQUNFLHlCQUF5QixjQUN2QixJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsbUJBQW1CLENBQUM7d0ZBS2pCLE1BQU07c0JBQWhDLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQUNFLFdBQVc7c0JBQXJDLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBVc2VySW5wdXQgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2ludGVyZmFjZSc7XHJcbmltcG9ydCB7IEZvcm1Hcm91cCwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgTXN0YXRlQW5ndWxhckhlbHBlciB9IGZyb20gJy4uLy4uL21zdGF0ZS1hbmd1bGFyLmhlbHBlcic7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ21vYmktb2ZmaWNlLWlucHV0LWZpZWxkJyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGVdLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9pbnB1dC1maWVsZC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmw6ICcuL2lucHV0LWZpZWxkLmNvbXBvbmVudC5zY3NzJyxcclxufSlcclxuZXhwb3J0IGNsYXNzIElucHV0RmllbGRDb21wb25lbnQge1xyXG4gIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pIGNvbmZpZyE6IFVzZXJJbnB1dDtcclxuICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KSBtc3RhdGVNb2RlbCE6IEZvcm1Hcm91cDtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBtc3RhdGVIZWxwZXI6IE1zdGF0ZUFuZ3VsYXJIZWxwZXIpIHt9XHJcblxyXG4gIGNoZWNrSW5wdXRFcnJvcihmb3JtOiBGb3JtR3JvdXAsIGtleTogc3RyaW5nKSB7XHJcbiAgICByZXR1cm4gdGhpcy5tc3RhdGVIZWxwZXIuY2hlY2tJbnB1dEVycm9yKGZvcm0sIGtleSk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXZcclxuICBjbGFzcz1cImZvcm0tZ3JvdXBcIlxyXG4gIFtmb3JtR3JvdXBdPVwibXN0YXRlTW9kZWxcIlxyXG4gIHN0eWxlPVwiZGlzcGxheTogZmxleDsgZmxleC1kaXJlY3Rpb246IGNvbHVtblwiXHJcbj5cclxuICA8bGFiZWw+e3sgY29uZmlnLmxhYmVsIH19PC9sYWJlbD5cclxuICA8aW5wdXRcclxuICAgIHN0eWxlPVwiZmxleDogMVwiXHJcbiAgICBbcmVxdWlyZWRdPVwiY29uZmlnLmZpZWxkLmlzUmVxdWlyZWQgfHwgZmFsc2VcIlxyXG4gICAgW3R5cGVdPVwiY29uZmlnLmlucHV0VHlwZVwiXHJcbiAgICBbbmFtZV09XCJjb25maWcuZmllbGQua2V5Rm9yQVBJXCJcclxuICAgIFtwbGFjZWhvbGRlcl09XCJjb25maWcuZmllbGQucGxhY2Vob2xkZXJcIlxyXG4gICAgW2Zvcm1Db250cm9sTmFtZV09XCJjb25maWcuZmllbGQua2V5Rm9yQVBJXCJcclxuICAgIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcclxuICAvPlxyXG4gIEBpZiAoY2hlY2tJbnB1dEVycm9yKG1zdGF0ZU1vZGVsLCBjb25maWcuZmllbGQua2V5Rm9yQVBJKS5pc0Vycm9yKSB7XHJcbiAgPHNtYWxsPnt7XHJcbiAgICBjaGVja0lucHV0RXJyb3IobXN0YXRlTW9kZWwsIGNvbmZpZy5maWVsZC5rZXlGb3JBUEkpLm1lc3NhZ2VcclxuICB9fTwvc21hbGw+XHJcbiAgfVxyXG48L2Rpdj5cclxuIl19
|
@@ -3,10 +3,10 @@ import { CommonModule } from '@angular/common';
|
|
3
3
|
import * as i0 from "@angular/core";
|
4
4
|
export class LoaderComponent {
|
5
5
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: LoaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
6
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: LoaderComponent, isStandalone: true, selector: "mobi-office-loader", ngImport: i0, template: "<img\n class=\"loader\"\n src=\"https://cdn.dribbble.com/users/10743/screenshots/2098959/ezgif.com-crop.gif\"\n alt=\"loading\"\n/>\n", styles: [".loader{width:100%;max-width:300px;aspect-ratio:1/1;border-radius:50%}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }] }); }
|
6
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: LoaderComponent, isStandalone: true, selector: "mobi-office-loader", ngImport: i0, template: "<img\r\n class=\"loader\"\r\n src=\"https://cdn.dribbble.com/users/10743/screenshots/2098959/ezgif.com-crop.gif\"\r\n alt=\"loading\"\r\n/>\r\n", styles: [".loader{width:100%;max-width:300px;aspect-ratio:1/1;border-radius:50%}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }] }); }
|
7
7
|
}
|
8
8
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: LoaderComponent, decorators: [{
|
9
9
|
type: Component,
|
10
|
-
args: [{ selector: 'mobi-office-loader', standalone: true, imports: [CommonModule], template: "<img\n class=\"loader\"\n src=\"https://cdn.dribbble.com/users/10743/screenshots/2098959/ezgif.com-crop.gif\"\n alt=\"loading\"\n/>\n", styles: [".loader{width:100%;max-width:300px;aspect-ratio:1/1;border-radius:50%}\n"] }]
|
10
|
+
args: [{ selector: 'mobi-office-loader', standalone: true, imports: [CommonModule], template: "<img\r\n class=\"loader\"\r\n src=\"https://cdn.dribbble.com/users/10743/screenshots/2098959/ezgif.com-crop.gif\"\r\n alt=\"loading\"\r\n/>\r\n", styles: [".loader{width:100%;max-width:300px;aspect-ratio:1/1;border-radius:50%}\n"] }]
|
11
11
|
}] });
|
12
|
-
//# sourceMappingURL=data:application/json;base64,
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21zdGF0ZS1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9sb2FkZXIvbG9hZGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21zdGF0ZS1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9sb2FkZXIvbG9hZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDOztBQVMvQyxNQUFNLE9BQU8sZUFBZTsrR0FBZixlQUFlO21HQUFmLGVBQWUsOEVDVjVCLG9KQUtBLGlJRENZLFlBQVk7OzRGQUlYLGVBQWU7a0JBUDNCLFNBQVM7K0JBQ0Usb0JBQW9CLGNBQ2xCLElBQUksV0FDUCxDQUFDLFlBQVksQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdtb2JpLW9mZmljZS1sb2FkZXInLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2xvYWRlci5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmw6ICcuL2xvYWRlci5jb21wb25lbnQuc2NzcycsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBMb2FkZXJDb21wb25lbnQge31cclxuIiwiPGltZ1xyXG4gIGNsYXNzPVwibG9hZGVyXCJcclxuICBzcmM9XCJodHRwczovL2Nkbi5kcmliYmJsZS5jb20vdXNlcnMvMTA3NDMvc2NyZWVuc2hvdHMvMjA5ODk1OS9lemdpZi5jb20tY3JvcC5naWZcIlxyXG4gIGFsdD1cImxvYWRpbmdcIlxyXG4vPlxyXG4iXX0=
|
@@ -35,11 +35,11 @@ export class SelectComponent {
|
|
35
35
|
return this.mstateHelper.checkInputError(form, key);
|
36
36
|
}
|
37
37
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SelectComponent, deps: [{ token: i1.MstateAngularService }, { token: i2.MstateAngularHelper }], target: i0.ɵɵFactoryTarget.Component }); }
|
38
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: SelectComponent, isStandalone: true, selector: "mobi-office-select", inputs: { config: "config", mstateModel: "mstateModel" }, providers: [MstateAngularService], ngImport: i0, template: "<div class=\"form-group\" [formGroup]=\"mstateModel\">\n <label>{{ config.label }}</label>\n\n <ng-select\n [required]=\"config.field.isRequired || false\"\n [items]=\"list\"\n [multiple]=\"true\"\n [bindLabel]=\"this.config.field.mapper?.label ?? 'label'\"\n [placeholder]=\"config.field.placeholder\"\n [formControlName]=\"config.field.keyForAPI\"\n >\n </ng-select>\n\n @if (checkInputError(mstateModel, config.field.keyForAPI).isError) {\n <small>{{\n checkInputError(mstateModel, config.field.keyForAPI).message\n }}</small>\n }\n</div>\n", styles: [".dropdown{position:relative;width:300px}.search-input{width:100%;padding:8px;border:1px solid #ccc;border-radius:4px}.dropdown-menu{position:absolute;width:100%;max-height:150px;overflow-y:auto;background:#fff;border:1px solid #ccc;border-radius:4px;margin-top:5px;z-index:10}.dropdown-item{padding:8px;cursor:pointer}.dropdown-item:hover{background-color:#f0f0f0}.no-results{padding:8px;color:#888;text-align:center}.selected-option{margin-top:10px;font-weight:700}\n"], dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: NgSelectModule }, { kind: "component", type: i4.NgSelectComponent, selector: "ng-select", inputs: ["bindLabel", "bindValue", "markFirst", "placeholder", "notFoundText", "typeToSearchText", "addTagText", "loadingText", "clearAllText", "appearance", "dropdownPosition", "appendTo", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "openOnEnter", "maxSelectedItems", "groupBy", "groupValue", "bufferAmount", "virtualScroll", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "tabIndex", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "keyDownFn", "typeahead", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd", "deselectOnClick"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }, { kind: "ngmodule", type: CommonModule }] }); }
|
38
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: SelectComponent, isStandalone: true, selector: "mobi-office-select", inputs: { config: "config", mstateModel: "mstateModel" }, providers: [MstateAngularService], ngImport: i0, template: "<div class=\"form-group\" [formGroup]=\"mstateModel\">\r\n <label>{{ config.label }}</label>\r\n\r\n <ng-select\r\n [required]=\"config.field.isRequired || false\"\r\n [items]=\"list\"\r\n [multiple]=\"true\"\r\n [bindLabel]=\"this.config.field.mapper?.label ?? 'label'\"\r\n [placeholder]=\"config.field.placeholder\"\r\n [formControlName]=\"config.field.keyForAPI\"\r\n >\r\n </ng-select>\r\n\r\n @if (checkInputError(mstateModel, config.field.keyForAPI).isError) {\r\n <small>{{\r\n checkInputError(mstateModel, config.field.keyForAPI).message\r\n }}</small>\r\n }\r\n</div>\r\n", styles: [".dropdown{position:relative;width:300px}.search-input{width:100%;padding:8px;border:1px solid #ccc;border-radius:4px}.dropdown-menu{position:absolute;width:100%;max-height:150px;overflow-y:auto;background:#fff;border:1px solid #ccc;border-radius:4px;margin-top:5px;z-index:10}.dropdown-item{padding:8px;cursor:pointer}.dropdown-item:hover{background-color:#f0f0f0}.no-results{padding:8px;color:#888;text-align:center}.selected-option{margin-top:10px;font-weight:700}\n"], dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: NgSelectModule }, { kind: "component", type: i4.NgSelectComponent, selector: "ng-select", inputs: ["bindLabel", "bindValue", "markFirst", "placeholder", "notFoundText", "typeToSearchText", "addTagText", "loadingText", "clearAllText", "appearance", "dropdownPosition", "appendTo", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "openOnEnter", "maxSelectedItems", "groupBy", "groupValue", "bufferAmount", "virtualScroll", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "tabIndex", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "keyDownFn", "typeahead", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd", "deselectOnClick"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }, { kind: "ngmodule", type: CommonModule }] }); }
|
39
39
|
}
|
40
40
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SelectComponent, decorators: [{
|
41
41
|
type: Component,
|
42
|
-
args: [{ selector: 'mobi-office-select', standalone: true, imports: [ReactiveFormsModule, NgSelectModule, CommonModule], providers: [MstateAngularService], template: "<div class=\"form-group\" [formGroup]=\"mstateModel\">\n <label>{{ config.label }}</label>\n\n <ng-select\n [required]=\"config.field.isRequired || false\"\n [items]=\"list\"\n [multiple]=\"true\"\n [bindLabel]=\"this.config.field.mapper?.label ?? 'label'\"\n [placeholder]=\"config.field.placeholder\"\n [formControlName]=\"config.field.keyForAPI\"\n >\n </ng-select>\n\n @if (checkInputError(mstateModel, config.field.keyForAPI).isError) {\n <small>{{\n checkInputError(mstateModel, config.field.keyForAPI).message\n }}</small>\n }\n</div>\n", styles: [".dropdown{position:relative;width:300px}.search-input{width:100%;padding:8px;border:1px solid #ccc;border-radius:4px}.dropdown-menu{position:absolute;width:100%;max-height:150px;overflow-y:auto;background:#fff;border:1px solid #ccc;border-radius:4px;margin-top:5px;z-index:10}.dropdown-item{padding:8px;cursor:pointer}.dropdown-item:hover{background-color:#f0f0f0}.no-results{padding:8px;color:#888;text-align:center}.selected-option{margin-top:10px;font-weight:700}\n"] }]
|
42
|
+
args: [{ selector: 'mobi-office-select', standalone: true, imports: [ReactiveFormsModule, NgSelectModule, CommonModule], providers: [MstateAngularService], template: "<div class=\"form-group\" [formGroup]=\"mstateModel\">\r\n <label>{{ config.label }}</label>\r\n\r\n <ng-select\r\n [required]=\"config.field.isRequired || false\"\r\n [items]=\"list\"\r\n [multiple]=\"true\"\r\n [bindLabel]=\"this.config.field.mapper?.label ?? 'label'\"\r\n [placeholder]=\"config.field.placeholder\"\r\n [formControlName]=\"config.field.keyForAPI\"\r\n >\r\n </ng-select>\r\n\r\n @if (checkInputError(mstateModel, config.field.keyForAPI).isError) {\r\n <small>{{\r\n checkInputError(mstateModel, config.field.keyForAPI).message\r\n }}</small>\r\n }\r\n</div>\r\n", styles: [".dropdown{position:relative;width:300px}.search-input{width:100%;padding:8px;border:1px solid #ccc;border-radius:4px}.dropdown-menu{position:absolute;width:100%;max-height:150px;overflow-y:auto;background:#fff;border:1px solid #ccc;border-radius:4px;margin-top:5px;z-index:10}.dropdown-item{padding:8px;cursor:pointer}.dropdown-item:hover{background-color:#f0f0f0}.no-results{padding:8px;color:#888;text-align:center}.selected-option{margin-top:10px;font-weight:700}\n"] }]
|
43
43
|
}], ctorParameters: () => [{ type: i1.MstateAngularService }, { type: i2.MstateAngularHelper }], propDecorators: { config: [{
|
44
44
|
type: Input,
|
45
45
|
args: [{ required: true }]
|
@@ -47,4 +47,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
47
47
|
type: Input,
|
48
48
|
args: [{ required: true }]
|
49
49
|
}] } });
|
50
|
-
//# sourceMappingURL=data:application/json;base64,
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21zdGF0ZS1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9zZWxlY3Qvc2VsZWN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21zdGF0ZS1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9zZWxlY3Qvc2VsZWN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxPQUFPLEVBQWEsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNoRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUVwRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7Ozs7OztBQVV0RCxNQUFNLE9BQU8sZUFBZTtJQUkxQixZQUNVLGFBQW1DLEVBQ25DLFlBQWlDO1FBRGpDLGtCQUFhLEdBQWIsYUFBYSxDQUFzQjtRQUNuQyxpQkFBWSxHQUFaLFlBQVksQ0FBcUI7UUFHakMsU0FBSSxHQUFVLEVBQUUsQ0FBQztJQUZ4QixDQUFDO0lBSUosUUFBUTtRQUNOLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxJQUFJLEVBQUUsQ0FBQztRQUV0QyxJQUFJLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNsQixJQUFJLENBQUMsYUFBYTtpQkFDZixpQkFBaUIsQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxJQUFJLEVBQUUsQ0FBQztpQkFDN0QsSUFBSSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7Z0JBQ2IsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7WUFDbkIsQ0FBQyxDQUFDO2lCQUNELEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2xDLENBQUM7YUFBTSxDQUFDO1lBQ04sSUFBSSxDQUFDLElBQUksR0FBRyxLQUFLLENBQUMsUUFBUSxJQUFJLEVBQUUsQ0FBQztRQUNuQyxDQUFDO0lBQ0gsQ0FBQztJQUVELGNBQWMsQ0FBQyxHQUFRLEVBQUUsTUFBYztRQUNyQyxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsY0FBYyxDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBRUQsZUFBZSxDQUFDLElBQWUsRUFBRSxHQUFXO1FBQzFDLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxlQUFlLENBQUMsSUFBSSxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ3RELENBQUM7K0dBaENVLGVBQWU7bUdBQWYsZUFBZSwySEFKZixDQUFDLG9CQUFvQixDQUFDLDBCQ1puQyxvbUJBbUJBLDZnQkRSWSxtQkFBbUIsZ3pCQUFFLGNBQWMsbzVCQUFFLFlBQVk7OzRGQUtoRCxlQUFlO2tCQVIzQixTQUFTOytCQUNFLG9CQUFvQixjQUNsQixJQUFJLFdBQ1AsQ0FBQyxtQkFBbUIsRUFBRSxjQUFjLEVBQUUsWUFBWSxDQUFDLGFBQ2pELENBQUMsb0JBQW9CLENBQUM7MkhBS04sTUFBTTtzQkFBaEMsS0FBSzt1QkFBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUU7Z0JBQ0UsV0FBVztzQkFBckMsS0FBSzt1QkFBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgVXNlcklucHV0IH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBGb3JtR3JvdXAsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IE1zdGF0ZUFuZ3VsYXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vbXN0YXRlLWFuZ3VsYXIuc2VydmljZSc7XHJcbmltcG9ydCB7IE1zdGF0ZUFuZ3VsYXJIZWxwZXIgfSBmcm9tICcuLi8uLi9tc3RhdGUtYW5ndWxhci5oZWxwZXInO1xyXG5pbXBvcnQgeyBOZ1NlbGVjdE1vZHVsZSB9IGZyb20gJ0BuZy1zZWxlY3Qvbmctc2VsZWN0JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbW9iaS1vZmZpY2Utc2VsZWN0JyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtSZWFjdGl2ZUZvcm1zTW9kdWxlLCBOZ1NlbGVjdE1vZHVsZSwgQ29tbW9uTW9kdWxlXSxcclxuICBwcm92aWRlcnM6IFtNc3RhdGVBbmd1bGFyU2VydmljZV0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3NlbGVjdC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmw6ICcuL3NlbGVjdC5jb21wb25lbnQuc2NzcycsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTZWxlY3RDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pIGNvbmZpZyE6IFVzZXJJbnB1dDtcclxuICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KSBtc3RhdGVNb2RlbCE6IEZvcm1Hcm91cDtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIG1zdGF0ZVNlcnZpY2U6IE1zdGF0ZUFuZ3VsYXJTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBtc3RhdGVIZWxwZXI6IE1zdGF0ZUFuZ3VsYXJIZWxwZXJcclxuICApIHt9XHJcblxyXG4gIHByb3RlY3RlZCBsaXN0OiBhbnlbXSA9IFtdO1xyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIGNvbnN0IGZpZWxkID0gdGhpcy5jb25maWcuZmllbGQgPz8ge307XHJcblxyXG4gICAgaWYgKGZpZWxkLnJlcXVlc3QpIHtcclxuICAgICAgdGhpcy5tc3RhdGVTZXJ2aWNlXHJcbiAgICAgICAgLmhhbmRsZURyb3Bkb3duQVBJKGZpZWxkLnJlcXVlc3QsIGZpZWxkPy5tYXBwZXI/LnRhcmdldCA/PyAnJylcclxuICAgICAgICAudGhlbigoZGF0YSkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5saXN0ID0gZGF0YTtcclxuICAgICAgICB9KVxyXG4gICAgICAgIC5jYXRjaCgoZSkgPT4gY29uc29sZS5sb2coZSkpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5saXN0ID0gZmllbGQuaXRlbUxpc3QgPz8gW107XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBnZXRPYmplY3RWYWx1ZShvYmo6IGFueSwgdGFyZ2V0OiBzdHJpbmcpIHtcclxuICAgIHJldHVybiB0aGlzLm1zdGF0ZUhlbHBlci5nZXRPYmplY3RWYWx1ZShvYmosIHRhcmdldCk7XHJcbiAgfVxyXG5cclxuICBjaGVja0lucHV0RXJyb3IoZm9ybTogRm9ybUdyb3VwLCBrZXk6IHN0cmluZykge1xyXG4gICAgcmV0dXJuIHRoaXMubXN0YXRlSGVscGVyLmNoZWNrSW5wdXRFcnJvcihmb3JtLCBrZXkpO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cFwiIFtmb3JtR3JvdXBdPVwibXN0YXRlTW9kZWxcIj5cclxuICA8bGFiZWw+e3sgY29uZmlnLmxhYmVsIH19PC9sYWJlbD5cclxuXHJcbiAgPG5nLXNlbGVjdFxyXG4gICAgW3JlcXVpcmVkXT1cImNvbmZpZy5maWVsZC5pc1JlcXVpcmVkIHx8IGZhbHNlXCJcclxuICAgIFtpdGVtc109XCJsaXN0XCJcclxuICAgIFttdWx0aXBsZV09XCJ0cnVlXCJcclxuICAgIFtiaW5kTGFiZWxdPVwidGhpcy5jb25maWcuZmllbGQubWFwcGVyPy5sYWJlbCA/PyAnbGFiZWwnXCJcclxuICAgIFtwbGFjZWhvbGRlcl09XCJjb25maWcuZmllbGQucGxhY2Vob2xkZXJcIlxyXG4gICAgW2Zvcm1Db250cm9sTmFtZV09XCJjb25maWcuZmllbGQua2V5Rm9yQVBJXCJcclxuICA+XHJcbiAgPC9uZy1zZWxlY3Q+XHJcblxyXG4gIEBpZiAoY2hlY2tJbnB1dEVycm9yKG1zdGF0ZU1vZGVsLCBjb25maWcuZmllbGQua2V5Rm9yQVBJKS5pc0Vycm9yKSB7XHJcbiAgPHNtYWxsPnt7XHJcbiAgICBjaGVja0lucHV0RXJyb3IobXN0YXRlTW9kZWwsIGNvbmZpZy5maWVsZC5rZXlGb3JBUEkpLm1lc3NhZ2VcclxuICB9fTwvc21hbGw+XHJcbiAgfVxyXG48L2Rpdj5cclxuIl19
|