@decaf-ts/for-angular 0.0.4 → 0.0.5
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/LICENSE.md +646 -144
- package/README.md +37 -242
- package/dist/lib/README.md +92 -0
- package/dist/lib/assets/i18n/en.json +131 -0
- package/dist/lib/assets/images/angular-logo.svg +45 -0
- package/dist/lib/assets/images/decaf-logo-black.svg +22 -0
- package/dist/lib/assets/images/decaf-logo-lw.svg +50 -0
- package/dist/lib/assets/images/decaf-logo-white.svg +22 -0
- package/dist/lib/assets/images/decaf-logo.svg +54 -0
- package/dist/lib/components/component-renderer/component-renderer.component.d.ts +267 -0
- package/dist/lib/components/crud-field/crud-field.component.d.ts +447 -0
- package/dist/{for-angular/components/decaf-crud-form → lib/components/crud-form}/constants.d.ts +0 -0
- package/dist/lib/components/crud-form/crud-form.component.d.ts +102 -0
- package/dist/{for-angular/components/decaf-crud-form → lib/components/crud-form}/types.d.ts +0 -0
- package/dist/lib/components/model-renderer/model-renderer.component.d.ts +97 -0
- package/dist/lib/engine/DynamicModule.d.ts +17 -0
- package/dist/{for-angular → lib}/engine/NgxCrudFormField.d.ts +22 -14
- package/dist/lib/engine/NgxFormService.d.ts +167 -0
- package/dist/lib/engine/NgxRenderingEngine.d.ts +128 -0
- package/dist/lib/engine/NgxRenderingEngine2.d.ts +251 -0
- package/dist/lib/engine/ValidatorFactory.d.ts +15 -0
- package/dist/lib/engine/constants.d.ts +151 -0
- package/dist/lib/engine/decorators.d.ts +25 -0
- package/dist/lib/engine/index.d.ts +15 -0
- package/dist/lib/engine/types.d.ts +293 -0
- package/dist/lib/esm2022/components/component-renderer/component-renderer.component.mjs +309 -0
- package/dist/lib/esm2022/components/crud-field/crud-field.component.mjs +288 -0
- package/dist/lib/esm2022/components/crud-form/constants.mjs +14 -0
- package/dist/lib/esm2022/components/crud-form/crud-form.component.mjs +140 -0
- package/dist/lib/esm2022/components/crud-form/types.mjs +2 -0
- package/dist/lib/esm2022/components/model-renderer/model-renderer.component.mjs +137 -0
- package/dist/{for-angular → lib}/esm2022/decaf-ts-for-angular.mjs +0 -0
- package/dist/lib/esm2022/engine/DynamicModule.mjs +18 -0
- package/dist/lib/esm2022/engine/NgxCrudFormField.mjs +117 -0
- package/dist/lib/esm2022/engine/NgxFormService.mjs +315 -0
- package/dist/lib/esm2022/engine/NgxRenderingEngine.mjs +194 -0
- package/dist/lib/esm2022/engine/NgxRenderingEngine2.mjs +333 -0
- package/dist/lib/esm2022/engine/ValidatorFactory.mjs +102 -0
- package/dist/lib/esm2022/engine/constants.mjs +160 -0
- package/dist/lib/esm2022/engine/decorators.mjs +38 -0
- package/dist/lib/esm2022/engine/index.mjs +16 -0
- package/dist/lib/esm2022/engine/types.mjs +2 -0
- package/dist/lib/esm2022/for-angular.module.mjs +118 -0
- package/dist/lib/esm2022/interfaces.mjs +2 -0
- package/dist/lib/esm2022/public-apis.mjs +13 -0
- package/dist/lib/fesm2022/decaf-ts-for-angular.mjs +2138 -0
- package/dist/lib/fesm2022/decaf-ts-for-angular.mjs.map +1 -0
- package/dist/lib/for-angular.module.d.ts +44 -0
- package/dist/{for-angular → lib}/index.d.ts +0 -0
- package/dist/lib/interfaces.d.ts +28 -0
- package/dist/lib/public-apis.d.ts +12 -0
- package/package.json +73 -26
- package/dist/for-angular/README.md +0 -297
- package/dist/for-angular/assets/i18n/en.json +0 -21
- package/dist/for-angular/components/decaf-crud-field/decaf-crud-field.component.d.ts +0 -49
- package/dist/for-angular/components/decaf-crud-form/decaf-crud-form.component.d.ts +0 -28
- package/dist/for-angular/components/decaf-model-renderer/decaf-model-renderer.component.d.ts +0 -20
- package/dist/for-angular/engine/DynamicModule.d.ts +0 -2
- package/dist/for-angular/engine/NgxFormService.d.ts +0 -119
- package/dist/for-angular/engine/NgxRenderingEngine.d.ts +0 -18
- package/dist/for-angular/engine/ValidatorFactory.d.ts +0 -4
- package/dist/for-angular/engine/constants.d.ts +0 -13
- package/dist/for-angular/engine/decorators.d.ts +0 -1
- package/dist/for-angular/engine/index.d.ts +0 -5
- package/dist/for-angular/engine/types.d.ts +0 -44
- package/dist/for-angular/esm2022/components/decaf-crud-field/decaf-crud-field.component.mjs +0 -129
- package/dist/for-angular/esm2022/components/decaf-crud-form/constants.mjs +0 -14
- package/dist/for-angular/esm2022/components/decaf-crud-form/decaf-crud-form.component.mjs +0 -80
- package/dist/for-angular/esm2022/components/decaf-crud-form/types.mjs +0 -2
- package/dist/for-angular/esm2022/components/decaf-model-renderer/decaf-model-renderer.component.mjs +0 -47
- package/dist/for-angular/esm2022/engine/DynamicModule.mjs +0 -3
- package/dist/for-angular/esm2022/engine/NgxCrudFormField.mjs +0 -115
- package/dist/for-angular/esm2022/engine/NgxFormService.mjs +0 -235
- package/dist/for-angular/esm2022/engine/NgxRenderingEngine.mjs +0 -84
- package/dist/for-angular/esm2022/engine/ValidatorFactory.mjs +0 -48
- package/dist/for-angular/esm2022/engine/constants.mjs +0 -15
- package/dist/for-angular/esm2022/engine/decorators.mjs +0 -14
- package/dist/for-angular/esm2022/engine/index.mjs +0 -6
- package/dist/for-angular/esm2022/engine/types.mjs +0 -2
- package/dist/for-angular/esm2022/interfaces.mjs +0 -2
- package/dist/for-angular/esm2022/public-apis.mjs +0 -6
- package/dist/for-angular/fesm2022/decaf-ts-for-angular.mjs +0 -759
- package/dist/for-angular/fesm2022/decaf-ts-for-angular.mjs.map +0 -1
- package/dist/for-angular/interfaces.d.ts +0 -8
- package/dist/for-angular/public-apis.d.ts +0 -5
|
@@ -1,119 +0,0 @@
|
|
|
1
|
-
import { FieldProperties } from '@decaf-ts/ui-decorators';
|
|
2
|
-
import { AngularFieldDefinition, FieldUpdateMode } from './types';
|
|
3
|
-
import { FormGroup } from '@angular/forms';
|
|
4
|
-
import { FormElement } from '../interfaces';
|
|
5
|
-
/**
|
|
6
|
-
* @summary Service for managing Angular forms and form controls.
|
|
7
|
-
* @description
|
|
8
|
-
* The NgxFormService provides utility methods for handling form initialization,
|
|
9
|
-
* validation, data retrieval, and form control management in Angular applications.
|
|
10
|
-
* It offers a centralized way to manage form controls, perform validations, and
|
|
11
|
-
* handle form-related operations.
|
|
12
|
-
*/
|
|
13
|
-
export declare class NgxFormService {
|
|
14
|
-
/**
|
|
15
|
-
* @summary Storage for form controls.
|
|
16
|
-
* @description
|
|
17
|
-
* A static object that stores form controls indexed by form ID and field name.
|
|
18
|
-
* @type {Record<string, Record<string, { control: FormGroup; props: AngularFieldDefinition }>>}
|
|
19
|
-
*/
|
|
20
|
-
private static controls;
|
|
21
|
-
private constructor();
|
|
22
|
-
/**
|
|
23
|
-
* Initializes the form after the view has been initialized.
|
|
24
|
-
* This method sets up the form controls and creates a FormGroup.
|
|
25
|
-
*
|
|
26
|
-
* @param el - The form element to initialize.
|
|
27
|
-
* @param formId - The unique identifier for the form.
|
|
28
|
-
* @param formUpdateMode - The update mode for the form. Defaults to 'blur'.
|
|
29
|
-
*/
|
|
30
|
-
/**
|
|
31
|
-
* @summary Initializes the form after view initialization.
|
|
32
|
-
* @description
|
|
33
|
-
* Sets up form controls and creates a FormGroup for the given form element.
|
|
34
|
-
*
|
|
35
|
-
* @param {FormElement} el - The form element to initialize.
|
|
36
|
-
* @param {string} formId - The unique identifier for the form.
|
|
37
|
-
* @param {FieldUpdateMode} [formUpdateMode='blur'] - The update mode for the form.
|
|
38
|
-
*/
|
|
39
|
-
static formAfterViewInit(el: FormElement, formId: string, formUpdateMode?: FieldUpdateMode): void;
|
|
40
|
-
/**
|
|
41
|
-
* @summary Handles form component destruction.
|
|
42
|
-
* @description
|
|
43
|
-
* Unregisters the form from the service when the component is destroyed.
|
|
44
|
-
*
|
|
45
|
-
* @param {FormElement} el - The form element being destroyed.
|
|
46
|
-
* @param {string} formId - The unique identifier of the form to unregister.
|
|
47
|
-
*/
|
|
48
|
-
static forOnDestroy(el: FormElement, formId: string): void;
|
|
49
|
-
/**
|
|
50
|
-
* @summary Retrieves form data for a given form ID.
|
|
51
|
-
* @description
|
|
52
|
-
* Processes form controls and returns their values as an object.
|
|
53
|
-
*
|
|
54
|
-
* @param {string} formId - The unique identifier of the form to retrieve data from.
|
|
55
|
-
* @returns {Record<string, unknown>} An object containing the form data.
|
|
56
|
-
* @throws {Error} If the form with the given ID is not found.
|
|
57
|
-
*/
|
|
58
|
-
static getFormData(formId: string): Record<string, unknown>;
|
|
59
|
-
/**
|
|
60
|
-
* @summary Validates form fields.
|
|
61
|
-
* @description
|
|
62
|
-
* Validates either a specific field or all fields in the form group.
|
|
63
|
-
*
|
|
64
|
-
* @param {FormGroup} formGroup - The FormGroup to validate.
|
|
65
|
-
* @param {string} [fieldName] - Optional name of a specific field to validate.
|
|
66
|
-
* @returns {boolean} Indicates whether the validation passed (true) or failed (false).
|
|
67
|
-
*/
|
|
68
|
-
static validateFields(formGroup: FormGroup, fieldName?: string): boolean;
|
|
69
|
-
/**
|
|
70
|
-
* @summary Creates a FormGroup from field properties.
|
|
71
|
-
* @description
|
|
72
|
-
* Generates a new FormGroup instance based on the provided field definition and update mode.
|
|
73
|
-
*
|
|
74
|
-
* @param {AngularFieldDefinition} props - The Angular field definition properties.
|
|
75
|
-
* @param {FieldUpdateMode} updateMode - The update mode for the form group.
|
|
76
|
-
* @returns {FormGroup} A new FormGroup instance.
|
|
77
|
-
*/
|
|
78
|
-
static fromProps(props: FieldProperties, updateMode: FieldUpdateMode): FormGroup;
|
|
79
|
-
/**
|
|
80
|
-
* Retrieves a form by its ID from the stored controls.
|
|
81
|
-
*
|
|
82
|
-
* @param id - The unique identifier of the form to retrieve.
|
|
83
|
-
* @returns The form controls associated with the given ID.
|
|
84
|
-
* @throws Error if the form with the given ID is not found.
|
|
85
|
-
*/
|
|
86
|
-
private static getFormById;
|
|
87
|
-
/**
|
|
88
|
-
* Retrieves a specific field from a form by its name.
|
|
89
|
-
*
|
|
90
|
-
* @param formId - The unique identifier of the form.
|
|
91
|
-
* @param name - The name of the field to retrieve.
|
|
92
|
-
* @returns The field control and properties.
|
|
93
|
-
* @throws Error if the field is not found in the form.
|
|
94
|
-
*/
|
|
95
|
-
private static getFieldByName;
|
|
96
|
-
/**
|
|
97
|
-
* Generates an array of validator functions from the provided field properties.
|
|
98
|
-
*
|
|
99
|
-
* @param props - The field properties containing validation rules.
|
|
100
|
-
* @returns An array of ValidatorFn instances.
|
|
101
|
-
*/
|
|
102
|
-
private static validatorsFromProps;
|
|
103
|
-
/**
|
|
104
|
-
*
|
|
105
|
-
* @param el
|
|
106
|
-
* @param tag
|
|
107
|
-
*
|
|
108
|
-
* @throws {Error} when no parent exists with the provided tag
|
|
109
|
-
*/
|
|
110
|
-
static getParentEl(el: HTMLElement, tag: string): HTMLElement;
|
|
111
|
-
static register(formId: string, control: FormGroup, props: AngularFieldDefinition): void;
|
|
112
|
-
/**
|
|
113
|
-
* Unregisters a form or a specific field from the service.
|
|
114
|
-
*
|
|
115
|
-
* @param formId - The unique identifier of the form.
|
|
116
|
-
* @param field - Optional. The specific field to unregister. If not provided, the entire form is unregistered.
|
|
117
|
-
*/
|
|
118
|
-
static unregister(formId: string, field?: HTMLElement): void;
|
|
119
|
-
}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { RenderingEngine } from '@decaf-ts/ui-decorators';
|
|
2
|
-
import { AngularDynamicOutput, AngularFieldDefinition } from './types';
|
|
3
|
-
import { Constructor, Model } from '@decaf-ts/decorator-validation';
|
|
4
|
-
import { Injector, TemplateRef, ViewContainerRef } from '@angular/core';
|
|
5
|
-
export declare class NgxRenderingEngine extends RenderingEngine<AngularFieldDefinition, AngularDynamicOutput> {
|
|
6
|
-
private static _components;
|
|
7
|
-
constructor();
|
|
8
|
-
private fromFieldDefinition;
|
|
9
|
-
render<M extends Model>(model: M, globalProps: Record<string, unknown>, vcr: ViewContainerRef, injector: Injector, tpl: TemplateRef<any>): AngularDynamicOutput;
|
|
10
|
-
initialize(...args: any[]): Promise<void>;
|
|
11
|
-
static registerComponent(name: string, constructor: Constructor<unknown>): void;
|
|
12
|
-
static components(selector?: string): {
|
|
13
|
-
constructor: Constructor<unknown>;
|
|
14
|
-
} | {
|
|
15
|
-
constructor: Constructor<unknown>;
|
|
16
|
-
}[];
|
|
17
|
-
static key(key: string): string;
|
|
18
|
-
}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
export declare const AngularEngineKeys: {
|
|
2
|
-
REFLECT: string;
|
|
3
|
-
DYNAMIC: string;
|
|
4
|
-
ANNOTATIONS: string;
|
|
5
|
-
ECMP: string;
|
|
6
|
-
NG_REFLECT: string;
|
|
7
|
-
RENDERED: string;
|
|
8
|
-
RENDERED_ID: string;
|
|
9
|
-
};
|
|
10
|
-
export declare const FormConstants: {
|
|
11
|
-
VALID: string;
|
|
12
|
-
INVALID: string;
|
|
13
|
-
};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare function Dynamic(): (target: object, propertyKey?: string | symbol | unknown, descriptor?: PropertyDescriptor) => void;
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
import { IonCheckbox, IonInput, IonSelect, IonTextarea } from '@ionic/angular';
|
|
2
|
-
import { TextFieldTypes } from '@ionic/core';
|
|
3
|
-
import { Injector, Type } from '@angular/core';
|
|
4
|
-
export type FieldUpdateMode = 'change' | 'blur' | 'submit';
|
|
5
|
-
export interface ComponentMetadata {
|
|
6
|
-
changeDetection: number;
|
|
7
|
-
selector: string;
|
|
8
|
-
standalone: boolean;
|
|
9
|
-
imports: (new (...args: unknown[]) => unknown)[];
|
|
10
|
-
template: string;
|
|
11
|
-
styles: string[];
|
|
12
|
-
}
|
|
13
|
-
export type AngularDynamicOutput = {
|
|
14
|
-
component: Type<unknown>;
|
|
15
|
-
rendererId?: string;
|
|
16
|
-
inputs?: Record<string, unknown>;
|
|
17
|
-
injector?: Injector;
|
|
18
|
-
content?: Node[][];
|
|
19
|
-
children?: AngularDynamicOutput[];
|
|
20
|
-
};
|
|
21
|
-
export interface RenderedModel {
|
|
22
|
-
rendererId?: string;
|
|
23
|
-
}
|
|
24
|
-
export type PossibleInputTypes = 'checkbox' | 'radio' | 'select' | TextFieldTypes | 'textarea';
|
|
25
|
-
export type AngularFieldDefinition = Omit<IonInput, 'ionInput' | 'ionFocus' | 'ionChange' | 'ionBlur' | 'getInputElement' | 'setFocus' | 'label' | 'el' | 'z' | 'type'> & Pick<IonSelect, 'cancelText' | 'interface' | 'selectedText' | 'interfaceOptions'> & Pick<IonTextarea, 'rows' | 'cols'> & Pick<IonCheckbox, 'alignment' | 'justify' | 'checked'> & {
|
|
26
|
-
type: PossibleInputTypes;
|
|
27
|
-
className: string | string[];
|
|
28
|
-
} & Record<string, unknown>;
|
|
29
|
-
export type StringOrBoolean = 'true' | 'false' | boolean;
|
|
30
|
-
export type SelectOption = InputOption & {
|
|
31
|
-
selected?: boolean;
|
|
32
|
-
};
|
|
33
|
-
export type CheckboxOption = RadioOption;
|
|
34
|
-
export type RadioOption = InputOption & {
|
|
35
|
-
checked?: boolean;
|
|
36
|
-
};
|
|
37
|
-
export interface InputOption {
|
|
38
|
-
text: string;
|
|
39
|
-
value: string | number;
|
|
40
|
-
disabled?: StringOrBoolean;
|
|
41
|
-
className?: string;
|
|
42
|
-
icon?: string;
|
|
43
|
-
}
|
|
44
|
-
export type HTMLFormTarget = '_blank' | '_self' | '_parent' | '_top' | string;
|
|
@@ -1,129 +0,0 @@
|
|
|
1
|
-
import { __decorate } from "tslib";
|
|
2
|
-
import { Component, CUSTOM_ELEMENTS_SCHEMA, ElementRef, Input, NO_ERRORS_SCHEMA, ViewChild, } from '@angular/core';
|
|
3
|
-
import { FormGroup, ReactiveFormsModule } from '@angular/forms';
|
|
4
|
-
import { IonCheckbox, IonInput, IonItem, IonRadio, IonRadioGroup, IonSelect, IonSelectOption, IonTextarea, } from '@ionic/angular/standalone';
|
|
5
|
-
import { TranslatePipe } from '@ngx-translate/core';
|
|
6
|
-
import { NgxCrudFormField } from '../../engine/NgxCrudFormField';
|
|
7
|
-
import { Dynamic } from '../../engine/decorators';
|
|
8
|
-
import * as i0 from "@angular/core";
|
|
9
|
-
import * as i1 from "@angular/forms";
|
|
10
|
-
let DecafCrudFieldComponent = class DecafCrudFieldComponent extends NgxCrudFormField {
|
|
11
|
-
constructor() {
|
|
12
|
-
super(...arguments);
|
|
13
|
-
this.value = '';
|
|
14
|
-
this.spellcheck = false;
|
|
15
|
-
this.inputmode = 'none';
|
|
16
|
-
this.autocomplete = 'off';
|
|
17
|
-
this.fill = 'outline';
|
|
18
|
-
this.labelPlacement = 'stacked';
|
|
19
|
-
// Component
|
|
20
|
-
this.updateOn = 'change';
|
|
21
|
-
this.translatable = true;
|
|
22
|
-
}
|
|
23
|
-
ngAfterViewInit() {
|
|
24
|
-
super.afterViewInit();
|
|
25
|
-
}
|
|
26
|
-
ngOnDestroy() {
|
|
27
|
-
this.onDestroy();
|
|
28
|
-
}
|
|
29
|
-
ngOnInit() {
|
|
30
|
-
super.onInit(this.updateOn);
|
|
31
|
-
}
|
|
32
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DecafCrudFieldComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
33
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: DecafCrudFieldComponent, isStandalone: true, selector: "decaf-crud-field", inputs: { operation: "operation", name: "name", type: "type", value: "value", disabled: "disabled", label: "label", placeholder: "placeholder", format: "format", hidden: "hidden", max: "max", maxlength: "maxlength", min: "min", minlength: "minlength", pattern: "pattern", readonly: "readonly", required: "required", step: "step", cols: "cols", rows: "rows", alignment: "alignment", checked: "checked", justify: "justify", cancelText: "cancelText", interface: "interface", options: "options", mode: "mode", spellcheck: "spellcheck", inputmode: "inputmode", autocomplete: "autocomplete", fill: "fill", labelPlacement: "labelPlacement", updateOn: "updateOn", formGroup: "formGroup", translatable: "translatable" }, viewQueries: [{ propertyName: "component", first: true, predicate: ["component"], descendants: true, read: ElementRef }], usesInheritance: true, ngImport: i0, template: "<ng-container #component [formGroup]=\"formGroup\">\n @if(type === 'textarea') {\n <ion-item>\n <ion-textarea\n [mode]=\"mode\"\n [hidden]=\"hidden\"\n [required]=\"required !== undefined ? required : null\"\n [minlength]=\"minlength !== undefined ? minlength : null\"\n [maxlength]=\"maxlength !== undefined ? maxlength : null\"\n [readonly]=\"readonly !== undefined ? readonly : null\"\n [inputmode]=\"inputmode\"\n [spellcheck]=\"spellcheck\"\n [rows]=\"rows\"\n [labelPlacement]=\"labelPlacement\"\n [value]=\"value\"\n [fill]=\"fill\"\n [placeholder]=\"translatable ? (placeholder | translate) : placeholder\"\n [formControlName]=\"name\"\n [label]=\"translatable ? (label | translate) : label\">\n </ion-textarea>\n </ion-item>\n }\n @if(type === 'checkbox') {\n <ion-item [formControlName]=\"name\">\n <ion-checkbox\n #checkboxElement\n [name]=\"name\"\n [mode]=\"mode\"\n [hidden]=\"hidden\"\n [labelPlacement]=\"labelPlacement\"\n [justify]=\"justify\"\n [disabled]=\"disabled || readonly\"\n [value]=\"value\"\n [checked]=\"checked\"\n (ionChange)=\"checked = !checked\"\n [formControlName]=\"name\">\n <span [innerHTML]=\"label | translate\"></span>\n </ion-checkbox>\n </ion-item>\n }\n @else if(type === 'radio') {\n <ion-radio-group [formControlName]=\"name\" [name]=\"name\" [value]=\"value\">\n <label class=\"radio-group-label\">{{label | translate}}</label>\n @for(option of options; track option.value) {\n <ion-item>\n <ion-radio\n [mode]=\"mode\"\n [hidden]=\"hidden\"\n [disabled]=\"readonly || disabled\"\n [labelPlacement]=\"labelPlacement\"\n [alignment]=\"alignment\"\n [justify]=\"justify\"\n [value]=\"option.value\"\n >{{ option.text | translate }}</ion-radio>\n </ion-item>\n }\n </ion-radio-group>\n }\n @else if(type === 'select') {\n <ion-item>\n <ion-select\n [name]=\"name\"\n [mode]=\"mode\"\n [hidden]=\"hidden\"\n [labelPlacement]=\"labelPlacement\"\n [cancelText]=\"cancelText | translate\"\n [label]=\"translatable ? (label | translate) : label\"\n [value]=\"value\"\n [fill]=\"fill\"\n [disabled]=\"readonly || disabled\"\n [placeholder]=\"placeholder | translate\"\n [formControlName]=\"name\"\n [interface]=\"interface\">\n @for(option of options; track option.value) {\n <ion-select-option [value]=\"option.value\">\n {{ translatable ? (option.text | translate) : option.text }}\n </ion-select-option>\n }\n </ion-select>\n </ion-item>\n }\n @else {\n <ion-item>\n <ion-input\n [type]=\"type\"\n [mode]=\"mode\"\n [hidden]=\"hidden\"\n [inputmode]=\"inputmode\"\n [autocomplete]=\"autocomplete\"\n [spellcheck]=\"spellcheck\"\n [labelPlacement]=\"labelPlacement\"\n [required]=\"required !== undefined ? required : false\"\n [minlength]=\"minlength !== undefined ? minlength : null\"\n [maxlength]=\"maxlength !== undefined ? maxlength : null\"\n [readonly]=\"readonly !== undefined ? readonly : null\"\n [max]=\"max !== undefined ? max : null\"\n [min]=\"min !== undefined ? min : null\"\n [pattern]=\"pattern !== undefined ? pattern : null\"\n [step]=\"step !== undefined ? step : null\"\n [value]=\"value\"\n [fill]=\"fill\"\n [placeholder]=\"placeholder | translate\"\n [formControlName]=\"name\"\n [label]=\"label | translate\">\n </ion-input>\n </ion-item>\n }\n @if((!formGroup.pristine || formGroup.touched) && !formGroup.valid) {\n <div class=\"error uk-flex uk-flex-top\">\n @for(item of getErrors(); track item.key) {\n <p>\n <span color=\"danger\" class=\"ti ti-alert-triangle\"></span>\n <span>{{item.key}} - {{ sf((\"errors.\" + item.message) | translate, this[item.key]) }}</span>\n </p>\n }\n </div>\n }\n</ng-container>\n", styles: [".disabled{opacity:.7;pointer-events:none;touch-action:none}.disabled *{pointer-events:none;touch-action:none}.proccessing,.proccessing *{pointer-events:none;touch-action:none;cursor:text}ion-item{--border-color: transparent;--padding-start: .75rem;--background: transparent;--background-hover-opacity: .1;--background-hover: var(--ion-color-primary);--background-activated-opacity: .15;--background-focused: var(--ion-color-primary);--background-focused-opacity: .15}ion-textarea textarea{scrollbar-width:thin!important;margin-bottom:.5rem!important}ion-select.select-label-placement-floating::part(label){line-height:1.2rem!important}.radio-group-label{margin-left:.5rem}.radio-group-label+ion-item{margin-top:.5rem}ion-checkbox{--size: 1.5rem;--checkbox-background-checked: var(--ion-color-primary);--checkmark-width: 2px}ion-checkbox::part(container){border-radius:50%;border:2px solid var(--ion-color-primary);padding:3px}ion-item+.helper,ion-radio-group+.helper{padding-left:.75rem;position:relative}\n"], dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.MinLengthValidator, selector: "[minlength][formControlName],[minlength][formControl],[minlength][ngModel]", inputs: ["minlength"] }, { kind: "directive", type: i1.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: IonInput, selector: "ion-input", inputs: ["accept", "autocapitalize", "autocomplete", "autocorrect", "autofocus", "clearInput", "clearOnEdit", "color", "counter", "counterFormatter", "debounce", "disabled", "enterkeyhint", "errorText", "fill", "helperText", "inputmode", "label", "labelPlacement", "max", "maxlength", "min", "minlength", "mode", "multiple", "name", "pattern", "placeholder", "readonly", "required", "shape", "size", "spellcheck", "step", "type", "value"] }, { kind: "component", type: IonItem, selector: "ion-item", inputs: ["button", "color", "detail", "detailIcon", "disabled", "download", "href", "lines", "mode", "rel", "routerAnimation", "routerDirection", "target", "type"] }, { kind: "component", type: IonCheckbox, selector: "ion-checkbox", inputs: ["checked", "color", "disabled", "indeterminate", "justify", "labelPlacement", "mode", "name", "value"] }, { kind: "component", type: IonRadioGroup, selector: "ion-radio-group", inputs: ["allowEmptySelection", "compareWith", "name", "value"] }, { kind: "component", type: IonRadio, selector: "ion-radio", inputs: ["alignment", "color", "disabled", "justify", "labelPlacement", "mode", "name", "value"] }, { kind: "component", type: IonSelect, selector: "ion-select", inputs: ["cancelText", "color", "compareWith", "disabled", "expandedIcon", "fill", "interface", "interfaceOptions", "justify", "label", "labelPlacement", "mode", "multiple", "name", "okText", "placeholder", "selectedText", "shape", "toggleIcon", "value"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "component", type: IonSelectOption, selector: "ion-select-option", inputs: ["disabled", "value"] }, { kind: "component", type: IonTextarea, selector: "ion-textarea", inputs: ["autoGrow", "autocapitalize", "autofocus", "clearOnEdit", "color", "cols", "counter", "counterFormatter", "debounce", "disabled", "enterkeyhint", "errorText", "fill", "helperText", "inputmode", "label", "labelPlacement", "maxlength", "minlength", "mode", "name", "placeholder", "readonly", "required", "rows", "shape", "spellcheck", "value", "wrap"] }] }); }
|
|
34
|
-
};
|
|
35
|
-
DecafCrudFieldComponent = __decorate([
|
|
36
|
-
Dynamic()
|
|
37
|
-
], DecafCrudFieldComponent);
|
|
38
|
-
export { DecafCrudFieldComponent };
|
|
39
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DecafCrudFieldComponent, decorators: [{
|
|
40
|
-
type: Component,
|
|
41
|
-
args: [{ standalone: true, imports: [
|
|
42
|
-
ReactiveFormsModule,
|
|
43
|
-
IonInput,
|
|
44
|
-
IonItem,
|
|
45
|
-
IonCheckbox,
|
|
46
|
-
IonRadioGroup,
|
|
47
|
-
IonRadio,
|
|
48
|
-
IonSelect,
|
|
49
|
-
TranslatePipe,
|
|
50
|
-
IonSelectOption,
|
|
51
|
-
IonTextarea,
|
|
52
|
-
], schemas: [CUSTOM_ELEMENTS_SCHEMA, NO_ERRORS_SCHEMA], selector: 'decaf-crud-field', template: "<ng-container #component [formGroup]=\"formGroup\">\n @if(type === 'textarea') {\n <ion-item>\n <ion-textarea\n [mode]=\"mode\"\n [hidden]=\"hidden\"\n [required]=\"required !== undefined ? required : null\"\n [minlength]=\"minlength !== undefined ? minlength : null\"\n [maxlength]=\"maxlength !== undefined ? maxlength : null\"\n [readonly]=\"readonly !== undefined ? readonly : null\"\n [inputmode]=\"inputmode\"\n [spellcheck]=\"spellcheck\"\n [rows]=\"rows\"\n [labelPlacement]=\"labelPlacement\"\n [value]=\"value\"\n [fill]=\"fill\"\n [placeholder]=\"translatable ? (placeholder | translate) : placeholder\"\n [formControlName]=\"name\"\n [label]=\"translatable ? (label | translate) : label\">\n </ion-textarea>\n </ion-item>\n }\n @if(type === 'checkbox') {\n <ion-item [formControlName]=\"name\">\n <ion-checkbox\n #checkboxElement\n [name]=\"name\"\n [mode]=\"mode\"\n [hidden]=\"hidden\"\n [labelPlacement]=\"labelPlacement\"\n [justify]=\"justify\"\n [disabled]=\"disabled || readonly\"\n [value]=\"value\"\n [checked]=\"checked\"\n (ionChange)=\"checked = !checked\"\n [formControlName]=\"name\">\n <span [innerHTML]=\"label | translate\"></span>\n </ion-checkbox>\n </ion-item>\n }\n @else if(type === 'radio') {\n <ion-radio-group [formControlName]=\"name\" [name]=\"name\" [value]=\"value\">\n <label class=\"radio-group-label\">{{label | translate}}</label>\n @for(option of options; track option.value) {\n <ion-item>\n <ion-radio\n [mode]=\"mode\"\n [hidden]=\"hidden\"\n [disabled]=\"readonly || disabled\"\n [labelPlacement]=\"labelPlacement\"\n [alignment]=\"alignment\"\n [justify]=\"justify\"\n [value]=\"option.value\"\n >{{ option.text | translate }}</ion-radio>\n </ion-item>\n }\n </ion-radio-group>\n }\n @else if(type === 'select') {\n <ion-item>\n <ion-select\n [name]=\"name\"\n [mode]=\"mode\"\n [hidden]=\"hidden\"\n [labelPlacement]=\"labelPlacement\"\n [cancelText]=\"cancelText | translate\"\n [label]=\"translatable ? (label | translate) : label\"\n [value]=\"value\"\n [fill]=\"fill\"\n [disabled]=\"readonly || disabled\"\n [placeholder]=\"placeholder | translate\"\n [formControlName]=\"name\"\n [interface]=\"interface\">\n @for(option of options; track option.value) {\n <ion-select-option [value]=\"option.value\">\n {{ translatable ? (option.text | translate) : option.text }}\n </ion-select-option>\n }\n </ion-select>\n </ion-item>\n }\n @else {\n <ion-item>\n <ion-input\n [type]=\"type\"\n [mode]=\"mode\"\n [hidden]=\"hidden\"\n [inputmode]=\"inputmode\"\n [autocomplete]=\"autocomplete\"\n [spellcheck]=\"spellcheck\"\n [labelPlacement]=\"labelPlacement\"\n [required]=\"required !== undefined ? required : false\"\n [minlength]=\"minlength !== undefined ? minlength : null\"\n [maxlength]=\"maxlength !== undefined ? maxlength : null\"\n [readonly]=\"readonly !== undefined ? readonly : null\"\n [max]=\"max !== undefined ? max : null\"\n [min]=\"min !== undefined ? min : null\"\n [pattern]=\"pattern !== undefined ? pattern : null\"\n [step]=\"step !== undefined ? step : null\"\n [value]=\"value\"\n [fill]=\"fill\"\n [placeholder]=\"placeholder | translate\"\n [formControlName]=\"name\"\n [label]=\"label | translate\">\n </ion-input>\n </ion-item>\n }\n @if((!formGroup.pristine || formGroup.touched) && !formGroup.valid) {\n <div class=\"error uk-flex uk-flex-top\">\n @for(item of getErrors(); track item.key) {\n <p>\n <span color=\"danger\" class=\"ti ti-alert-triangle\"></span>\n <span>{{item.key}} - {{ sf((\"errors.\" + item.message) | translate, this[item.key]) }}</span>\n </p>\n }\n </div>\n }\n</ng-container>\n", styles: [".disabled{opacity:.7;pointer-events:none;touch-action:none}.disabled *{pointer-events:none;touch-action:none}.proccessing,.proccessing *{pointer-events:none;touch-action:none;cursor:text}ion-item{--border-color: transparent;--padding-start: .75rem;--background: transparent;--background-hover-opacity: .1;--background-hover: var(--ion-color-primary);--background-activated-opacity: .15;--background-focused: var(--ion-color-primary);--background-focused-opacity: .15}ion-textarea textarea{scrollbar-width:thin!important;margin-bottom:.5rem!important}ion-select.select-label-placement-floating::part(label){line-height:1.2rem!important}.radio-group-label{margin-left:.5rem}.radio-group-label+ion-item{margin-top:.5rem}ion-checkbox{--size: 1.5rem;--checkbox-background-checked: var(--ion-color-primary);--checkmark-width: 2px}ion-checkbox::part(container){border-radius:50%;border:2px solid var(--ion-color-primary);padding:3px}ion-item+.helper,ion-radio-group+.helper{padding-left:.75rem;position:relative}\n"] }]
|
|
53
|
-
}], propDecorators: { operation: [{
|
|
54
|
-
type: Input,
|
|
55
|
-
args: [{ required: true }]
|
|
56
|
-
}], name: [{
|
|
57
|
-
type: Input,
|
|
58
|
-
args: [{ required: true }]
|
|
59
|
-
}], type: [{
|
|
60
|
-
type: Input,
|
|
61
|
-
args: [{ required: true }]
|
|
62
|
-
}], value: [{
|
|
63
|
-
type: Input
|
|
64
|
-
}], disabled: [{
|
|
65
|
-
type: Input
|
|
66
|
-
}], label: [{
|
|
67
|
-
type: Input,
|
|
68
|
-
args: [{ required: true }]
|
|
69
|
-
}], placeholder: [{
|
|
70
|
-
type: Input
|
|
71
|
-
}], format: [{
|
|
72
|
-
type: Input
|
|
73
|
-
}], hidden: [{
|
|
74
|
-
type: Input
|
|
75
|
-
}], max: [{
|
|
76
|
-
type: Input
|
|
77
|
-
}], maxlength: [{
|
|
78
|
-
type: Input
|
|
79
|
-
}], min: [{
|
|
80
|
-
type: Input
|
|
81
|
-
}], minlength: [{
|
|
82
|
-
type: Input
|
|
83
|
-
}], pattern: [{
|
|
84
|
-
type: Input
|
|
85
|
-
}], readonly: [{
|
|
86
|
-
type: Input
|
|
87
|
-
}], required: [{
|
|
88
|
-
type: Input
|
|
89
|
-
}], step: [{
|
|
90
|
-
type: Input
|
|
91
|
-
}], cols: [{
|
|
92
|
-
type: Input
|
|
93
|
-
}], rows: [{
|
|
94
|
-
type: Input
|
|
95
|
-
}], alignment: [{
|
|
96
|
-
type: Input
|
|
97
|
-
}], checked: [{
|
|
98
|
-
type: Input
|
|
99
|
-
}], justify: [{
|
|
100
|
-
type: Input
|
|
101
|
-
}], cancelText: [{
|
|
102
|
-
type: Input
|
|
103
|
-
}], interface: [{
|
|
104
|
-
type: Input
|
|
105
|
-
}], options: [{
|
|
106
|
-
type: Input
|
|
107
|
-
}], mode: [{
|
|
108
|
-
type: Input
|
|
109
|
-
}], spellcheck: [{
|
|
110
|
-
type: Input
|
|
111
|
-
}], inputmode: [{
|
|
112
|
-
type: Input
|
|
113
|
-
}], autocomplete: [{
|
|
114
|
-
type: Input
|
|
115
|
-
}], fill: [{
|
|
116
|
-
type: Input
|
|
117
|
-
}], labelPlacement: [{
|
|
118
|
-
type: Input
|
|
119
|
-
}], updateOn: [{
|
|
120
|
-
type: Input
|
|
121
|
-
}], component: [{
|
|
122
|
-
type: ViewChild,
|
|
123
|
-
args: ['component', { read: ElementRef }]
|
|
124
|
-
}], formGroup: [{
|
|
125
|
-
type: Input
|
|
126
|
-
}], translatable: [{
|
|
127
|
-
type: Input
|
|
128
|
-
}] } });
|
|
129
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVjYWYtY3J1ZC1maWVsZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvZGVjYWYtY3J1ZC1maWVsZC9kZWNhZi1jcnVkLWZpZWxkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9kZWNhZi1jcnVkLWZpZWxkL2RlY2FmLWNydWQtZmllbGQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFFTCxTQUFTLEVBQ1Qsc0JBQXNCLEVBQ3RCLFVBQVUsRUFDVixLQUFLLEVBQ0wsZ0JBQWdCLEVBR2hCLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsU0FBUyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEUsT0FBTyxFQUNMLFdBQVcsRUFDWCxRQUFRLEVBQ1IsT0FBTyxFQUNQLFFBQVEsRUFDUixhQUFhLEVBQ2IsU0FBUyxFQUNULGVBQWUsRUFDZixXQUFXLEdBQ1osTUFBTSwyQkFBMkIsQ0FBQztBQVFuQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDcEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDakUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHlCQUF5QixDQUFDOzs7QUE0QjNDLElBQU0sdUJBQXVCLEdBQTdCLE1BQU0sdUJBQ1gsU0FBUSxnQkFBZ0I7SUFEbkI7O1FBY0ksVUFBSyxHQUEyQixFQUFFLENBQUM7UUFrRTVDLGVBQVUsR0FBWSxLQUFLLENBQUM7UUFHNUIsY0FBUyxHQVFNLE1BQU0sQ0FBQztRQUd0QixpQkFBWSxHQUFzQixLQUFLLENBQUM7UUFHeEMsU0FBSSxHQUF3QixTQUFTLENBQUM7UUFHdEMsbUJBQWMsR0FDWixTQUFTLENBQUM7UUFFWixZQUFZO1FBR1osYUFBUSxHQUFvQixRQUFRLENBQUM7UUFTckMsaUJBQVksR0FBb0IsSUFBSSxDQUFDO0tBYXRDO0lBWEMsZUFBZTtRQUNiLEtBQUssQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBRUQsUUFBUTtRQUNOLEtBQUssQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzlCLENBQUM7K0dBL0hVLHVCQUF1QjttR0FBdkIsdUJBQXVCLHUyQkE0R0YsVUFBVSxvREN4SzVDLHVzSUFzSEEsd2lDRDNFSSxtQkFBbUIsZ3hDQUNuQixRQUFRLDhlQUNSLE9BQU8sME5BQ1AsV0FBVywwS0FDWCxhQUFhLDZIQUNiLFFBQVEsd0pBQ1IsU0FBUyxrVEFDVCxhQUFhLGtEQUNiLGVBQWUsNkZBQ2YsV0FBVzs7QUFRRix1QkFBdUI7SUFyQm5DLE9BQU8sRUFBRTtHQXFCRyx1QkFBdUIsQ0FnSW5DOzs0RkFoSVksdUJBQXVCO2tCQXBCbkMsU0FBUztpQ0FDSSxJQUFJLFdBQ1A7d0JBQ1AsbUJBQW1CO3dCQUNuQixRQUFRO3dCQUNSLE9BQU87d0JBQ1AsV0FBVzt3QkFDWCxhQUFhO3dCQUNiLFFBQVE7d0JBQ1IsU0FBUzt3QkFDVCxhQUFhO3dCQUNiLGVBQWU7d0JBQ2YsV0FBVztxQkFDWixXQUNRLENBQUMsc0JBQXNCLEVBQUUsZ0JBQWdCLENBQUMsWUFFekMsa0JBQWtCOzhCQVNuQixTQUFTO3NCQURqQixLQUFLO3VCQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRTtnQkFJaEIsSUFBSTtzQkFEWixLQUFLO3VCQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRTtnQkFJaEIsSUFBSTtzQkFEWixLQUFLO3VCQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRTtnQkFJaEIsS0FBSztzQkFEYixLQUFLO2dCQUlHLFFBQVE7c0JBRGhCLEtBQUs7Z0JBSU4sS0FBSztzQkFESixLQUFLO3VCQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRTtnQkFJekIsV0FBVztzQkFEVixLQUFLO2dCQU1HLE1BQU07c0JBRGQsS0FBSztnQkFHRyxNQUFNO3NCQURkLEtBQUs7Z0JBR0csR0FBRztzQkFEWCxLQUFLO2dCQUdHLFNBQVM7c0JBRGpCLEtBQUs7Z0JBR0csR0FBRztzQkFEWCxLQUFLO2dCQUdHLFNBQVM7c0JBRGpCLEtBQUs7Z0JBR0csT0FBTztzQkFEZixLQUFLO2dCQUdHLFFBQVE7c0JBRGhCLEtBQUs7Z0JBR0csUUFBUTtzQkFEaEIsS0FBSztnQkFHRyxJQUFJO3NCQURaLEtBQUs7Z0JBTU4sSUFBSTtzQkFESCxLQUFLO2dCQUlOLElBQUk7c0JBREgsS0FBSztnQkFJTixTQUFTO3NCQURSLEtBQUs7Z0JBSU4sT0FBTztzQkFETixLQUFLO2dCQUlOLE9BQU87c0JBRE4sS0FBSztnQkFJTixVQUFVO3NCQURULEtBQUs7Z0JBSU4sU0FBUztzQkFEUixLQUFLO2dCQUlOLE9BQU87c0JBRE4sS0FBSztnQkFNTixJQUFJO3NCQURILEtBQUs7Z0JBSU4sVUFBVTtzQkFEVCxLQUFLO2dCQUlOLFNBQVM7c0JBRFIsS0FBSztnQkFZTixZQUFZO3NCQURYLEtBQUs7Z0JBSU4sSUFBSTtzQkFESCxLQUFLO2dCQUlOLGNBQWM7c0JBRGIsS0FBSztnQkFPTixRQUFRO3NCQURQLEtBQUs7Z0JBSUcsU0FBUztzQkFEakIsU0FBUzt1QkFBQyxXQUFXLEVBQUUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFO2dCQUluQyxTQUFTO3NCQURqQixLQUFLO2dCQUlOLFlBQVk7c0JBRFgsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENvbXBvbmVudCxcbiAgQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQSxcbiAgRWxlbWVudFJlZixcbiAgSW5wdXQsXG4gIE5PX0VSUk9SU19TQ0hFTUEsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ3J1ZE9wZXJhdGlvbnMgfSBmcm9tICdAZGVjYWYtdHMvZGItZGVjb3JhdG9ycyc7XG5pbXBvcnQgeyBGb3JtR3JvdXAsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge1xuICBJb25DaGVja2JveCxcbiAgSW9uSW5wdXQsXG4gIElvbkl0ZW0sXG4gIElvblJhZGlvLFxuICBJb25SYWRpb0dyb3VwLFxuICBJb25TZWxlY3QsXG4gIElvblNlbGVjdE9wdGlvbixcbiAgSW9uVGV4dGFyZWEsXG59IGZyb20gJ0Bpb25pYy9hbmd1bGFyL3N0YW5kYWxvbmUnO1xuaW1wb3J0IHtcbiAgRmllbGRVcGRhdGVNb2RlLFxuICBQb3NzaWJsZUlucHV0VHlwZXMsXG4gIFJhZGlvT3B0aW9uLFxuICBTZWxlY3RPcHRpb24sXG4gIFN0cmluZ09yQm9vbGVhbixcbn0gZnJvbSAnLi4vLi4vZW5naW5lL3R5cGVzJztcbmltcG9ydCB7IFRyYW5zbGF0ZVBpcGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IE5neENydWRGb3JtRmllbGQgfSBmcm9tICcuLi8uLi9lbmdpbmUvTmd4Q3J1ZEZvcm1GaWVsZCc7XG5pbXBvcnQgeyBEeW5hbWljIH0gZnJvbSAnLi4vLi4vZW5naW5lL2RlY29yYXRvcnMnO1xuaW1wb3J0IHtcbiAgQXV0b2NvbXBsZXRlVHlwZXMsXG4gIFNlbGVjdEludGVyZmFjZSxcbiAgVGV4dEZpZWxkVHlwZXMsXG59IGZyb20gJ0Bpb25pYy9jb3JlJztcblxuQER5bmFtaWMoKVxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIElvbklucHV0LFxuICAgIElvbkl0ZW0sXG4gICAgSW9uQ2hlY2tib3gsXG4gICAgSW9uUmFkaW9Hcm91cCxcbiAgICBJb25SYWRpbyxcbiAgICBJb25TZWxlY3QsXG4gICAgVHJhbnNsYXRlUGlwZSxcbiAgICBJb25TZWxlY3RPcHRpb24sXG4gICAgSW9uVGV4dGFyZWEsXG4gIF0sXG4gIHNjaGVtYXM6IFtDVVNUT01fRUxFTUVOVFNfU0NIRU1BLCBOT19FUlJPUlNfU0NIRU1BXSxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9jb21wb25lbnQtc2VsZWN0b3JcbiAgc2VsZWN0b3I6ICdkZWNhZi1jcnVkLWZpZWxkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2RlY2FmLWNydWQtZmllbGQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vZGVjYWYtY3J1ZC1maWVsZC5jb21wb25lbnQuc2NzcycsXG59KVxuZXhwb3J0IGNsYXNzIERlY2FmQ3J1ZEZpZWxkQ29tcG9uZW50XG4gIGV4dGVuZHMgTmd4Q3J1ZEZvcm1GaWVsZFxuICBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBBZnRlclZpZXdJbml0XG57XG4gIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pXG4gIG92ZXJyaWRlIG9wZXJhdGlvbiE6IENydWRPcGVyYXRpb25zO1xuXG4gIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pXG4gIG92ZXJyaWRlIG5hbWUhOiBzdHJpbmc7XG5cbiAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSlcbiAgb3ZlcnJpZGUgdHlwZSE6IFBvc3NpYmxlSW5wdXRUeXBlcztcblxuICBASW5wdXQoKVxuICBvdmVycmlkZSB2YWx1ZTogc3RyaW5nIHwgbnVtYmVyIHwgRGF0ZSA9ICcnO1xuXG4gIEBJbnB1dCgpXG4gIG92ZXJyaWRlIGRpc2FibGVkPzogYm9vbGVhbjtcblxuICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KVxuICBsYWJlbCE6IHN0cmluZztcblxuICBASW5wdXQoKVxuICBwbGFjZWhvbGRlciE6IHN0cmluZztcblxuICAvLyBWYWxpZGF0aW9uXG5cbiAgQElucHV0KClcbiAgb3ZlcnJpZGUgZm9ybWF0Pzogc3RyaW5nO1xuICBASW5wdXQoKVxuICBvdmVycmlkZSBoaWRkZW4/OiBib29sZWFuO1xuICBASW5wdXQoKVxuICBvdmVycmlkZSBtYXg/OiBudW1iZXIgfCBEYXRlO1xuICBASW5wdXQoKVxuICBvdmVycmlkZSBtYXhsZW5ndGg/OiBudW1iZXI7XG4gIEBJbnB1dCgpXG4gIG92ZXJyaWRlIG1pbj86IG51bWJlciB8IERhdGU7XG4gIEBJbnB1dCgpXG4gIG92ZXJyaWRlIG1pbmxlbmd0aD86IG51bWJlcjtcbiAgQElucHV0KClcbiAgb3ZlcnJpZGUgcGF0dGVybj86IHN0cmluZztcbiAgQElucHV0KClcbiAgb3ZlcnJpZGUgcmVhZG9ubHk/OiBib29sZWFuO1xuICBASW5wdXQoKVxuICBvdmVycmlkZSByZXF1aXJlZD86IGJvb2xlYW47XG4gIEBJbnB1dCgpXG4gIG92ZXJyaWRlIHN0ZXA/OiBudW1iZXI7XG5cbiAgLy8gdHlwZSBzcGVjaWZpYyBvcHRpb25zXG5cbiAgQElucHV0KClcbiAgY29scz86IG51bWJlcjtcblxuICBASW5wdXQoKVxuICByb3dzPzogbnVtYmVyO1xuXG4gIEBJbnB1dCgpXG4gIGFsaWdubWVudD86ICdzdGFydCcgfCAnY2VudGVyJztcblxuICBASW5wdXQoKVxuICBjaGVja2VkPzogYm9vbGVhbjtcblxuICBASW5wdXQoKVxuICBqdXN0aWZ5PzogJ3N0YXJ0JyB8ICdlbmQnIHwgJ3NwYWNlLWJldHdlZW4nO1xuXG4gIEBJbnB1dCgpXG4gIGNhbmNlbFRleHQ/OiBzdHJpbmc7XG5cbiAgQElucHV0KClcbiAgaW50ZXJmYWNlPzogU2VsZWN0SW50ZXJmYWNlO1xuXG4gIEBJbnB1dCgpXG4gIG9wdGlvbnMhOiBTZWxlY3RPcHRpb25bXSB8IFJhZGlvT3B0aW9uW107XG5cbiAgLy8gZW5naW5lIHNwZWNpZmljIHByb3BlcnRpZXNcblxuICBASW5wdXQoKVxuICBtb2RlPzogJ2lvcycgfCAnbWQnO1xuXG4gIEBJbnB1dCgpXG4gIHNwZWxsY2hlY2s6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBASW5wdXQoKVxuICBpbnB1dG1vZGU6XG4gICAgfCAnbm9uZSdcbiAgICB8ICd0ZXh0J1xuICAgIHwgJ3RlbCdcbiAgICB8ICd1cmwnXG4gICAgfCAnZW1haWwnXG4gICAgfCAnbnVtZXJpYydcbiAgICB8ICdkZWNpbWFsJ1xuICAgIHwgJ3NlYXJjaCcgPSAnbm9uZSc7XG5cbiAgQElucHV0KClcbiAgYXV0b2NvbXBsZXRlOiBBdXRvY29tcGxldGVUeXBlcyA9ICdvZmYnO1xuXG4gIEBJbnB1dCgpXG4gIGZpbGw6ICdvdXRsaW5lJyB8ICdzb2xpZCcgPSAnb3V0bGluZSc7XG5cbiAgQElucHV0KClcbiAgbGFiZWxQbGFjZW1lbnQ6ICdzdGFydCcgfCAnZW5kJyB8ICdmbG9hdGluZycgfCAnc3RhY2tlZCcgfCAnZml4ZWQnID1cbiAgICAnc3RhY2tlZCc7XG5cbiAgLy8gQ29tcG9uZW50XG5cbiAgQElucHV0KClcbiAgdXBkYXRlT246IEZpZWxkVXBkYXRlTW9kZSA9ICdjaGFuZ2UnO1xuXG4gIEBWaWV3Q2hpbGQoJ2NvbXBvbmVudCcsIHsgcmVhZDogRWxlbWVudFJlZiB9KVxuICBvdmVycmlkZSBjb21wb25lbnQhOiBFbGVtZW50UmVmO1xuXG4gIEBJbnB1dCgpXG4gIG92ZXJyaWRlIGZvcm1Hcm91cCE6IEZvcm1Hcm91cDtcblxuICBASW5wdXQoKVxuICB0cmFuc2xhdGFibGU6IFN0cmluZ09yQm9vbGVhbiA9IHRydWU7XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIHN1cGVyLmFmdGVyVmlld0luaXQoKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMub25EZXN0cm95KCk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBzdXBlci5vbkluaXQodGhpcy51cGRhdGVPbik7XG4gIH1cbn1cbiIsIjxuZy1jb250YWluZXIgI2NvbXBvbmVudCBbZm9ybUdyb3VwXT1cImZvcm1Hcm91cFwiPlxuICBAaWYodHlwZSA9PT0gJ3RleHRhcmVhJykge1xuICAgIDxpb24taXRlbT5cbiAgICAgIDxpb24tdGV4dGFyZWFcbiAgICAgICAgW21vZGVdPVwibW9kZVwiXG4gICAgICAgIFtoaWRkZW5dPVwiaGlkZGVuXCJcbiAgICAgICAgW3JlcXVpcmVkXT1cInJlcXVpcmVkICE9PSB1bmRlZmluZWQgPyByZXF1aXJlZCA6IG51bGxcIlxuICAgICAgICBbbWlubGVuZ3RoXT1cIm1pbmxlbmd0aCAhPT0gdW5kZWZpbmVkID8gbWlubGVuZ3RoIDogbnVsbFwiXG4gICAgICAgIFttYXhsZW5ndGhdPVwibWF4bGVuZ3RoICE9PSB1bmRlZmluZWQgPyBtYXhsZW5ndGggOiBudWxsXCJcbiAgICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5ICE9PSB1bmRlZmluZWQgPyByZWFkb25seSA6IG51bGxcIlxuICAgICAgICBbaW5wdXRtb2RlXT1cImlucHV0bW9kZVwiXG4gICAgICAgIFtzcGVsbGNoZWNrXT1cInNwZWxsY2hlY2tcIlxuICAgICAgICBbcm93c109XCJyb3dzXCJcbiAgICAgICAgW2xhYmVsUGxhY2VtZW50XT1cImxhYmVsUGxhY2VtZW50XCJcbiAgICAgICAgW3ZhbHVlXT1cInZhbHVlXCJcbiAgICAgICAgW2ZpbGxdPVwiZmlsbFwiXG4gICAgICAgIFtwbGFjZWhvbGRlcl09XCJ0cmFuc2xhdGFibGUgPyAocGxhY2Vob2xkZXIgfCB0cmFuc2xhdGUpIDogcGxhY2Vob2xkZXJcIlxuICAgICAgICBbZm9ybUNvbnRyb2xOYW1lXT1cIm5hbWVcIlxuICAgICAgICBbbGFiZWxdPVwidHJhbnNsYXRhYmxlID8gKGxhYmVsIHwgdHJhbnNsYXRlKSA6IGxhYmVsXCI+XG4gICAgICA8L2lvbi10ZXh0YXJlYT5cbiAgICA8L2lvbi1pdGVtPlxuICB9XG4gIEBpZih0eXBlID09PSAnY2hlY2tib3gnKSB7XG4gICAgPGlvbi1pdGVtIFtmb3JtQ29udHJvbE5hbWVdPVwibmFtZVwiPlxuICAgICAgPGlvbi1jaGVja2JveFxuICAgICAgICAjY2hlY2tib3hFbGVtZW50XG4gICAgICAgIFtuYW1lXT1cIm5hbWVcIlxuICAgICAgICBbbW9kZV09XCJtb2RlXCJcbiAgICAgICAgW2hpZGRlbl09XCJoaWRkZW5cIlxuICAgICAgICBbbGFiZWxQbGFjZW1lbnRdPVwibGFiZWxQbGFjZW1lbnRcIlxuICAgICAgICBbanVzdGlmeV09XCJqdXN0aWZ5XCJcbiAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkIHx8IHJlYWRvbmx5XCJcbiAgICAgICAgW3ZhbHVlXT1cInZhbHVlXCJcbiAgICAgICAgW2NoZWNrZWRdPVwiY2hlY2tlZFwiXG4gICAgICAgIChpb25DaGFuZ2UpPVwiY2hlY2tlZCA9ICFjaGVja2VkXCJcbiAgICAgICAgW2Zvcm1Db250cm9sTmFtZV09XCJuYW1lXCI+XG4gICAgICAgIDxzcGFuIFtpbm5lckhUTUxdPVwibGFiZWwgfCB0cmFuc2xhdGVcIj48L3NwYW4+XG4gICAgICA8L2lvbi1jaGVja2JveD5cbiAgICA8L2lvbi1pdGVtPlxuICB9XG4gIEBlbHNlIGlmKHR5cGUgPT09ICdyYWRpbycpIHtcbiAgICA8aW9uLXJhZGlvLWdyb3VwIFtmb3JtQ29udHJvbE5hbWVdPVwibmFtZVwiIFtuYW1lXT1cIm5hbWVcIiBbdmFsdWVdPVwidmFsdWVcIj5cbiAgICAgIDxsYWJlbCBjbGFzcz1cInJhZGlvLWdyb3VwLWxhYmVsXCI+e3tsYWJlbCB8IHRyYW5zbGF0ZX19PC9sYWJlbD5cbiAgICAgIEBmb3Iob3B0aW9uIG9mIG9wdGlvbnM7IHRyYWNrIG9wdGlvbi52YWx1ZSkge1xuICAgICAgICA8aW9uLWl0ZW0+XG4gICAgICAgICAgPGlvbi1yYWRpb1xuICAgICAgICAgICAgW21vZGVdPVwibW9kZVwiXG4gICAgICAgICAgICBbaGlkZGVuXT1cImhpZGRlblwiXG4gICAgICAgICAgICBbZGlzYWJsZWRdPVwicmVhZG9ubHkgfHwgZGlzYWJsZWRcIlxuICAgICAgICAgICAgW2xhYmVsUGxhY2VtZW50XT1cImxhYmVsUGxhY2VtZW50XCJcbiAgICAgICAgICAgIFthbGlnbm1lbnRdPVwiYWxpZ25tZW50XCJcbiAgICAgICAgICAgIFtqdXN0aWZ5XT1cImp1c3RpZnlcIlxuICAgICAgICAgICAgW3ZhbHVlXT1cIm9wdGlvbi52YWx1ZVwiXG4gICAgICAgICAgPnt7IG9wdGlvbi50ZXh0IHwgdHJhbnNsYXRlIH19PC9pb24tcmFkaW8+XG4gICAgICAgIDwvaW9uLWl0ZW0+XG4gICAgICB9XG4gICAgPC9pb24tcmFkaW8tZ3JvdXA+XG4gIH1cbiAgQGVsc2UgaWYodHlwZSA9PT0gJ3NlbGVjdCcpIHtcbiAgICA8aW9uLWl0ZW0+XG4gICAgICA8aW9uLXNlbGVjdFxuICAgICAgICBbbmFtZV09XCJuYW1lXCJcbiAgICAgICAgW21vZGVdPVwibW9kZVwiXG4gICAgICAgIFtoaWRkZW5dPVwiaGlkZGVuXCJcbiAgICAgICAgW2xhYmVsUGxhY2VtZW50XT1cImxhYmVsUGxhY2VtZW50XCJcbiAgICAgICAgW2NhbmNlbFRleHRdPVwiY2FuY2VsVGV4dCB8ICB0cmFuc2xhdGVcIlxuICAgICAgICBbbGFiZWxdPVwidHJhbnNsYXRhYmxlID8gKGxhYmVsIHwgdHJhbnNsYXRlKSA6IGxhYmVsXCJcbiAgICAgICAgW3ZhbHVlXT1cInZhbHVlXCJcbiAgICAgICAgW2ZpbGxdPVwiZmlsbFwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJyZWFkb25seSB8fCBkaXNhYmxlZFwiXG4gICAgICAgIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlciB8IHRyYW5zbGF0ZVwiXG4gICAgICAgIFtmb3JtQ29udHJvbE5hbWVdPVwibmFtZVwiXG4gICAgICAgIFtpbnRlcmZhY2VdPVwiaW50ZXJmYWNlXCI+XG4gICAgICAgIEBmb3Iob3B0aW9uIG9mIG9wdGlvbnM7IHRyYWNrIG9wdGlvbi52YWx1ZSkge1xuICAgICAgICAgIDxpb24tc2VsZWN0LW9wdGlvbiBbdmFsdWVdPVwib3B0aW9uLnZhbHVlXCI+XG4gICAgICAgICAgICB7eyB0cmFuc2xhdGFibGUgPyAob3B0aW9uLnRleHQgfCB0cmFuc2xhdGUpIDogb3B0aW9uLnRleHQgfX1cbiAgICAgICAgICA8L2lvbi1zZWxlY3Qtb3B0aW9uPlxuICAgICAgICB9XG4gICAgICA8L2lvbi1zZWxlY3Q+XG4gICAgPC9pb24taXRlbT5cbiAgfVxuICBAZWxzZSB7XG4gICAgPGlvbi1pdGVtPlxuICAgICAgPGlvbi1pbnB1dFxuICAgICAgICBbdHlwZV09XCJ0eXBlXCJcbiAgICAgICAgW21vZGVdPVwibW9kZVwiXG4gICAgICAgIFtoaWRkZW5dPVwiaGlkZGVuXCJcbiAgICAgICAgW2lucHV0bW9kZV09XCJpbnB1dG1vZGVcIlxuICAgICAgICBbYXV0b2NvbXBsZXRlXT1cImF1dG9jb21wbGV0ZVwiXG4gICAgICAgIFtzcGVsbGNoZWNrXT1cInNwZWxsY2hlY2tcIlxuICAgICAgICBbbGFiZWxQbGFjZW1lbnRdPVwibGFiZWxQbGFjZW1lbnRcIlxuICAgICAgICBbcmVxdWlyZWRdPVwicmVxdWlyZWQgIT09IHVuZGVmaW5lZCA/IHJlcXVpcmVkIDogZmFsc2VcIlxuICAgICAgICBbbWlubGVuZ3RoXT1cIm1pbmxlbmd0aCAhPT0gdW5kZWZpbmVkID8gbWlubGVuZ3RoIDogbnVsbFwiXG4gICAgICAgIFttYXhsZW5ndGhdPVwibWF4bGVuZ3RoICE9PSB1bmRlZmluZWQgPyBtYXhsZW5ndGggOiBudWxsXCJcbiAgICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5ICE9PSB1bmRlZmluZWQgPyByZWFkb25seSA6IG51bGxcIlxuICAgICAgICBbbWF4XT1cIm1heCAhPT0gdW5kZWZpbmVkID8gbWF4IDogbnVsbFwiXG4gICAgICAgIFttaW5dPVwibWluICE9PSB1bmRlZmluZWQgPyBtaW4gOiBudWxsXCJcbiAgICAgICAgW3BhdHRlcm5dPVwicGF0dGVybiAhPT0gdW5kZWZpbmVkID8gcGF0dGVybiA6IG51bGxcIlxuICAgICAgICBbc3RlcF09XCJzdGVwICE9PSB1bmRlZmluZWQgPyBzdGVwIDogbnVsbFwiXG4gICAgICAgIFt2YWx1ZV09XCJ2YWx1ZVwiXG4gICAgICAgIFtmaWxsXT1cImZpbGxcIlxuICAgICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXIgfCB0cmFuc2xhdGVcIlxuICAgICAgICBbZm9ybUNvbnRyb2xOYW1lXT1cIm5hbWVcIlxuICAgICAgICBbbGFiZWxdPVwibGFiZWwgfCB0cmFuc2xhdGVcIj5cbiAgICAgIDwvaW9uLWlucHV0PlxuICAgIDwvaW9uLWl0ZW0+XG4gIH1cbiAgQGlmKCghZm9ybUdyb3VwLnByaXN0aW5lIHx8IGZvcm1Hcm91cC50b3VjaGVkKSAmJiAhZm9ybUdyb3VwLnZhbGlkKSB7XG4gICAgPGRpdiBjbGFzcz1cImVycm9yIHVrLWZsZXggdWstZmxleC10b3BcIj5cbiAgICAgIEBmb3IoaXRlbSBvZiBnZXRFcnJvcnMoKTsgdHJhY2sgaXRlbS5rZXkpIHtcbiAgICAgICAgPHA+XG4gICAgICAgICAgPHNwYW4gY29sb3I9XCJkYW5nZXJcIiBjbGFzcz1cInRpIHRpLWFsZXJ0LXRyaWFuZ2xlXCI+PC9zcGFuPlxuICAgICAgICAgIDxzcGFuPnt7aXRlbS5rZXl9fSAtIHt7IHNmKChcImVycm9ycy5cIiArIGl0ZW0ubWVzc2FnZSkgfCB0cmFuc2xhdGUsIHRoaXNbaXRlbS5rZXldKSB9fTwvc3Bhbj5cbiAgICAgICAgPC9wPlxuICAgICAgfVxuICAgIDwvZGl2PlxuICB9XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
export const CssClasses = {
|
|
2
|
-
BUTTONS_CONTAINER: 'buttons-container',
|
|
3
|
-
};
|
|
4
|
-
export const DefaultFormReactiveOptions = {
|
|
5
|
-
buttons: {
|
|
6
|
-
submit: {
|
|
7
|
-
text: 'Submit',
|
|
8
|
-
},
|
|
9
|
-
clear: {
|
|
10
|
-
text: 'Clear',
|
|
11
|
-
},
|
|
12
|
-
},
|
|
13
|
-
};
|
|
14
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL2RlY2FmLWNydWQtZm9ybS9jb25zdGFudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHO0lBQ3hCLGlCQUFpQixFQUFFLG1CQUFtQjtDQUN2QyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sMEJBQTBCLEdBQW9CO0lBQ3pELE9BQU8sRUFBRTtRQUNQLE1BQU0sRUFBRTtZQUNOLElBQUksRUFBRSxRQUFRO1NBQ2Y7UUFDRCxLQUFLLEVBQUU7WUFDTCxJQUFJLEVBQUUsT0FBTztTQUNkO0tBQ0Y7Q0FDRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ3J1ZEZvcm1PcHRpb25zIH0gZnJvbSAnLi90eXBlcyc7XG5cbmV4cG9ydCBjb25zdCBDc3NDbGFzc2VzID0ge1xuICBCVVRUT05TX0NPTlRBSU5FUjogJ2J1dHRvbnMtY29udGFpbmVyJyxcbn07XG5cbmV4cG9ydCBjb25zdCBEZWZhdWx0Rm9ybVJlYWN0aXZlT3B0aW9uczogQ3J1ZEZvcm1PcHRpb25zID0ge1xuICBidXR0b25zOiB7XG4gICAgc3VibWl0OiB7XG4gICAgICB0ZXh0OiAnU3VibWl0JyxcbiAgICB9LFxuICAgIGNsZWFyOiB7XG4gICAgICB0ZXh0OiAnQ2xlYXInLFxuICAgIH0sXG4gIH0sXG59O1xuIl19
|
|
@@ -1,80 +0,0 @@
|
|
|
1
|
-
import { __decorate } from "tslib";
|
|
2
|
-
import { Component, ElementRef, ViewChild, Input, Output, EventEmitter, } from '@angular/core';
|
|
3
|
-
import { FormGroup, ReactiveFormsModule } from '@angular/forms';
|
|
4
|
-
import { NgxFormService } from '../../engine/NgxFormService';
|
|
5
|
-
import { IonicModule } from '@ionic/angular';
|
|
6
|
-
import { Dynamic, } from '../../engine';
|
|
7
|
-
import { DefaultFormReactiveOptions } from './constants';
|
|
8
|
-
import * as i0 from "@angular/core";
|
|
9
|
-
import * as i1 from "@ionic/angular";
|
|
10
|
-
import * as i2 from "@angular/forms";
|
|
11
|
-
let DecafCrudFormComponent = class DecafCrudFormComponent {
|
|
12
|
-
constructor() {
|
|
13
|
-
this.updateOn = 'change';
|
|
14
|
-
this.target = '_self';
|
|
15
|
-
this.method = 'event';
|
|
16
|
-
this.formGroup = new FormGroup({});
|
|
17
|
-
this.submitEvent = new EventEmitter();
|
|
18
|
-
}
|
|
19
|
-
ngAfterViewInit() {
|
|
20
|
-
NgxFormService.formAfterViewInit(this, this.rendererId);
|
|
21
|
-
}
|
|
22
|
-
ngOnInit() {
|
|
23
|
-
this.options = Object.assign({}, DefaultFormReactiveOptions, this.options || {});
|
|
24
|
-
}
|
|
25
|
-
ngOnDestroy() {
|
|
26
|
-
NgxFormService.forOnDestroy(this, this.rendererId);
|
|
27
|
-
}
|
|
28
|
-
/**
|
|
29
|
-
* @param {Event} event
|
|
30
|
-
*/
|
|
31
|
-
submit(event) {
|
|
32
|
-
event.preventDefault();
|
|
33
|
-
event.stopImmediatePropagation();
|
|
34
|
-
event.stopPropagation();
|
|
35
|
-
if (!this.formGroup.valid)
|
|
36
|
-
return NgxFormService.validateFields(this.formGroup);
|
|
37
|
-
console.log('onSubmit');
|
|
38
|
-
// fix para valores de campos radio e check
|
|
39
|
-
const data = NgxFormService.getFormData(this.rendererId);
|
|
40
|
-
const submitEvent = {
|
|
41
|
-
data: data,
|
|
42
|
-
};
|
|
43
|
-
if (this.action)
|
|
44
|
-
return this.component.nativeElement.dispatchEvent(new CustomEvent('submit', data));
|
|
45
|
-
this.submitEvent.emit(submitEvent);
|
|
46
|
-
}
|
|
47
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DecafCrudFormComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
48
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: DecafCrudFormComponent, isStandalone: true, selector: "decaf-crud-form", inputs: { updateOn: "updateOn", target: "target", method: "method", options: "options", action: "action", operation: "operation", formGroup: "formGroup", rendererId: "rendererId" }, outputs: { submitEvent: "submitEvent" }, viewQueries: [{ propertyName: "component", first: true, predicate: ["reactiveForm"], descendants: true, read: ElementRef }], ngImport: i0, template: "<form #reactiveForm [id]=\"rendererId\" [formGroup]=\"formGroup\" (submit)=\"submit($event)\" [target]=\"target\">\n <ng-content #formContent></ng-content>\n <div class=\"buttons-container\">\n <ion-button\n type=\"submit\">\n<!-- [shape]=\"buttons?.submit?.shape || 'round'\"-->\n<!-- [color]=\"buttons?.submit?.color || 'primary'\"-->\n<!-- [size]=\"buttons?.submit?.size || 'default'\"-->\n<!-- [fill]=\"buttons?.submit?.fill || 'solid'\"-->\n<!-- [disabled]=\"buttons?.submit?.disabled || false\"-->\n<!-- expand=\"block\"-->\n<!-- [disabled]=\"disableSubmitButtonWhenInvalid ? !form.valid : false\"-->\n @if(options.buttons.submit.icon) {\n <ion-icon [slot]=\"options.buttons.submit.iconSlot\" [name]=\"options.buttons.submit.icon\"></ion-icon>\n }\n {{options.buttons.submit.text}}\n </ion-button>\n @if(options.buttons.clear) {\n <ion-button>\n<!-- type=\"clear\"-->\n<!-- (click)=\"clear($event)\"-->\n<!-- [shape]=\"buttons?.clear?.shape || 'round'\"-->\n<!-- [color]=\"buttons?.clear?.color || 'primary'\"-->\n<!-- [size]=\"buttons?.clear?.size || 'default'\"-->\n<!-- [fill]=\"buttons?.clear?.fill || 'clear'\"-->\n<!-- [disabled]=\"buttons?.clear?.disabled || false\"-->\n<!-- expand=\"block\"-->\n @if(options.buttons.clear?.icon) {\n <ion-icon [slot]=\"options.buttons.clear?.iconSlot\" [name]=\"options.buttons.clear?.icon\"></ion-icon>\n }\n {{options.buttons.clear?.text}}\n </ion-button>\n }\n </div>\n</form>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: IonicModule }, { kind: "component", type: i1.IonButton, selector: "ion-button", inputs: ["buttonType", "color", "disabled", "download", "expand", "fill", "form", "href", "mode", "rel", "routerAnimation", "routerDirection", "shape", "size", "strong", "target", "type"] }, { kind: "component", type: i1.IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }] }); }
|
|
49
|
-
};
|
|
50
|
-
DecafCrudFormComponent = __decorate([
|
|
51
|
-
Dynamic()
|
|
52
|
-
], DecafCrudFormComponent);
|
|
53
|
-
export { DecafCrudFormComponent };
|
|
54
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DecafCrudFormComponent, decorators: [{
|
|
55
|
-
type: Component,
|
|
56
|
-
args: [{ standalone: true, selector: 'decaf-crud-form', imports: [IonicModule, ReactiveFormsModule], template: "<form #reactiveForm [id]=\"rendererId\" [formGroup]=\"formGroup\" (submit)=\"submit($event)\" [target]=\"target\">\n <ng-content #formContent></ng-content>\n <div class=\"buttons-container\">\n <ion-button\n type=\"submit\">\n<!-- [shape]=\"buttons?.submit?.shape || 'round'\"-->\n<!-- [color]=\"buttons?.submit?.color || 'primary'\"-->\n<!-- [size]=\"buttons?.submit?.size || 'default'\"-->\n<!-- [fill]=\"buttons?.submit?.fill || 'solid'\"-->\n<!-- [disabled]=\"buttons?.submit?.disabled || false\"-->\n<!-- expand=\"block\"-->\n<!-- [disabled]=\"disableSubmitButtonWhenInvalid ? !form.valid : false\"-->\n @if(options.buttons.submit.icon) {\n <ion-icon [slot]=\"options.buttons.submit.iconSlot\" [name]=\"options.buttons.submit.icon\"></ion-icon>\n }\n {{options.buttons.submit.text}}\n </ion-button>\n @if(options.buttons.clear) {\n <ion-button>\n<!-- type=\"clear\"-->\n<!-- (click)=\"clear($event)\"-->\n<!-- [shape]=\"buttons?.clear?.shape || 'round'\"-->\n<!-- [color]=\"buttons?.clear?.color || 'primary'\"-->\n<!-- [size]=\"buttons?.clear?.size || 'default'\"-->\n<!-- [fill]=\"buttons?.clear?.fill || 'clear'\"-->\n<!-- [disabled]=\"buttons?.clear?.disabled || false\"-->\n<!-- expand=\"block\"-->\n @if(options.buttons.clear?.icon) {\n <ion-icon [slot]=\"options.buttons.clear?.iconSlot\" [name]=\"options.buttons.clear?.icon\"></ion-icon>\n }\n {{options.buttons.clear?.text}}\n </ion-button>\n }\n </div>\n</form>\n" }]
|
|
57
|
-
}], propDecorators: { updateOn: [{
|
|
58
|
-
type: Input
|
|
59
|
-
}], component: [{
|
|
60
|
-
type: ViewChild,
|
|
61
|
-
args: ['reactiveForm', { static: false, read: ElementRef }]
|
|
62
|
-
}], target: [{
|
|
63
|
-
type: Input
|
|
64
|
-
}], method: [{
|
|
65
|
-
type: Input
|
|
66
|
-
}], options: [{
|
|
67
|
-
type: Input
|
|
68
|
-
}], action: [{
|
|
69
|
-
type: Input
|
|
70
|
-
}], operation: [{
|
|
71
|
-
type: Input,
|
|
72
|
-
args: [{ required: true }]
|
|
73
|
-
}], formGroup: [{
|
|
74
|
-
type: Input
|
|
75
|
-
}], rendererId: [{
|
|
76
|
-
type: Input
|
|
77
|
-
}], submitEvent: [{
|
|
78
|
-
type: Output
|
|
79
|
-
}] } });
|
|
80
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVjYWYtY3J1ZC1mb3JtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9kZWNhZi1jcnVkLWZvcm0vZGVjYWYtY3J1ZC1mb3JtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9kZWNhZi1jcnVkLWZvcm0vZGVjYWYtY3J1ZC1mb3JtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFVBQVUsRUFFVixTQUFTLEVBRVQsS0FBSyxFQUNMLE1BQU0sRUFDTixZQUFZLEdBRWIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFNBQVMsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWhFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUNMLE9BQU8sR0FJUixNQUFNLGNBQWMsQ0FBQztBQUd0QixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxhQUFhLENBQUM7Ozs7QUFXbEQsSUFBTSxzQkFBc0IsR0FBNUIsTUFBTSxzQkFBc0I7SUFBNUI7UUFJTCxhQUFRLEdBQW9CLFFBQVEsQ0FBQztRQU1yQyxXQUFNLEdBQW1CLE9BQU8sQ0FBQztRQUdqQyxXQUFNLEdBQTZCLE9BQU8sQ0FBQztRQVkzQyxjQUFTLEdBQWMsSUFBSSxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUM7UUFNekMsZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBMkIsQ0FBQztLQTRDM0Q7SUExQ0MsZUFBZTtRQUNiLGNBQWMsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQzFELENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUMxQixFQUFFLEVBQ0YsMEJBQTBCLEVBQzFCLElBQUksQ0FBQyxPQUFPLElBQUksRUFBRSxDQUNuQixDQUFDO0lBQ0osQ0FBQztJQUVELFdBQVc7UUFDVCxjQUFjLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDckQsQ0FBQztJQUVEOztPQUVHO0lBQ0gsTUFBTSxDQUFDLEtBQWtCO1FBQ3ZCLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN2QixLQUFLLENBQUMsd0JBQXdCLEVBQUUsQ0FBQztRQUNqQyxLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7UUFFeEIsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSztZQUN2QixPQUFPLGNBQWMsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ3ZELE9BQU8sQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUM7UUFFeEIsMkNBQTJDO1FBQzNDLE1BQU0sSUFBSSxHQUFHLGNBQWMsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBRXpELE1BQU0sV0FBVyxHQUE0QjtZQUMzQyxJQUFJLEVBQUUsSUFBSTtTQUNYLENBQUM7UUFFRixJQUFJLElBQUksQ0FBQyxNQUFNO1lBQ2IsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQy9DLElBQUksV0FBVyxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsQ0FDaEMsQ0FBQztRQUVKLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3JDLENBQUM7K0dBMUVVLHNCQUFzQjttR0FBdEIsc0JBQXNCLGdZQU1pQixVQUFVLDZCQ3hDOUQsZ21EQW1DQSx5RERIWSxXQUFXLG1jQUFFLG1CQUFtQjs7QUFFL0Isc0JBQXNCO0lBVGxDLE9BQU8sRUFBRTtHQVNHLHNCQUFzQixDQTJFbEM7OzRGQTNFWSxzQkFBc0I7a0JBUmxDLFNBQVM7aUNBQ0ksSUFBSSxZQUVOLGlCQUFpQixXQUdsQixDQUFDLFdBQVcsRUFBRSxtQkFBbUIsQ0FBQzs4QkFNM0MsUUFBUTtzQkFEUCxLQUFLO2dCQUlOLFNBQVM7c0JBRFIsU0FBUzt1QkFBQyxjQUFjLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUU7Z0JBSTlELE1BQU07c0JBREwsS0FBSztnQkFJTixNQUFNO3NCQURMLEtBQUs7Z0JBSU4sT0FBTztzQkFETixLQUFLO2dCQUlOLE1BQU07c0JBREwsS0FBSztnQkFJTixTQUFTO3NCQURSLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQUl6QixTQUFTO3NCQURSLEtBQUs7Z0JBSU4sVUFBVTtzQkFEVCxLQUFLO2dCQUlOLFdBQVc7c0JBRFYsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgT25Jbml0LFxuICBWaWV3Q2hpbGQsXG4gIEFmdGVyVmlld0luaXQsXG4gIElucHV0LFxuICBPdXRwdXQsXG4gIEV2ZW50RW1pdHRlcixcbiAgT25EZXN0cm95LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1Hcm91cCwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEZvcm1FbGVtZW50IH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBOZ3hGb3JtU2VydmljZSB9IGZyb20gJy4uLy4uL2VuZ2luZS9OZ3hGb3JtU2VydmljZSc7XG5pbXBvcnQgeyBJb25pY01vZHVsZSB9IGZyb20gJ0Bpb25pYy9hbmd1bGFyJztcbmltcG9ydCB7XG4gIER5bmFtaWMsXG4gIEZpZWxkVXBkYXRlTW9kZSxcbiAgSFRNTEZvcm1UYXJnZXQsXG4gIFJlbmRlcmVkTW9kZWwsXG59IGZyb20gJy4uLy4uL2VuZ2luZSc7XG5pbXBvcnQgeyBDcnVkRm9ybU9wdGlvbnMsIEZvcm1SZWFjdGl2ZVN1Ym1pdEV2ZW50IH0gZnJvbSAnLi90eXBlcyc7XG5pbXBvcnQgeyBDcnVkT3BlcmF0aW9ucyB9IGZyb20gJ0BkZWNhZi10cy9kYi1kZWNvcmF0b3JzJztcbmltcG9ydCB7IERlZmF1bHRGb3JtUmVhY3RpdmVPcHRpb25zIH0gZnJvbSAnLi9jb25zdGFudHMnO1xuXG5ARHluYW1pYygpXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9jb21wb25lbnQtc2VsZWN0b3JcbiAgc2VsZWN0b3I6ICdkZWNhZi1jcnVkLWZvcm0nLFxuICB0ZW1wbGF0ZVVybDogJy4vZGVjYWYtY3J1ZC1mb3JtLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZGVjYWYtY3J1ZC1mb3JtLmNvbXBvbmVudC5zY3NzJ10sXG4gIGltcG9ydHM6IFtJb25pY01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZV0sXG59KVxuZXhwb3J0IGNsYXNzIERlY2FmQ3J1ZEZvcm1Db21wb25lbnRcbiAgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQsIEZvcm1FbGVtZW50LCBPbkRlc3Ryb3ksIFJlbmRlcmVkTW9kZWxcbntcbiAgQElucHV0KClcbiAgdXBkYXRlT246IEZpZWxkVXBkYXRlTW9kZSA9ICdjaGFuZ2UnO1xuXG4gIEBWaWV3Q2hpbGQoJ3JlYWN0aXZlRm9ybScsIHsgc3RhdGljOiBmYWxzZSwgcmVhZDogRWxlbWVudFJlZiB9KVxuICBjb21wb25lbnQhOiBFbGVtZW50UmVmO1xuXG4gIEBJbnB1dCgpXG4gIHRhcmdldDogSFRNTEZvcm1UYXJnZXQgPSAnX3NlbGYnO1xuXG4gIEBJbnB1dCgpXG4gIG1ldGhvZDogJ2dldCcgfCAncG9zdCcgfCAnZXZlbnQnID0gJ2V2ZW50JztcblxuICBASW5wdXQoKVxuICBvcHRpb25zITogQ3J1ZEZvcm1PcHRpb25zO1xuXG4gIEBJbnB1dCgpXG4gIGFjdGlvbj86IHN0cmluZztcblxuICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KVxuICBvcGVyYXRpb24hOiBDcnVkT3BlcmF0aW9ucztcblxuICBASW5wdXQoKVxuICBmb3JtR3JvdXA6IEZvcm1Hcm91cCA9IG5ldyBGb3JtR3JvdXAoe30pO1xuXG4gIEBJbnB1dCgpXG4gIHJlbmRlcmVySWQhOiBzdHJpbmc7XG5cbiAgQE91dHB1dCgpXG4gIHN1Ym1pdEV2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcjxGb3JtUmVhY3RpdmVTdWJtaXRFdmVudD4oKTtcblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgTmd4Rm9ybVNlcnZpY2UuZm9ybUFmdGVyVmlld0luaXQodGhpcywgdGhpcy5yZW5kZXJlcklkKTtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMub3B0aW9ucyA9IE9iamVjdC5hc3NpZ24oXG4gICAgICB7fSxcbiAgICAgIERlZmF1bHRGb3JtUmVhY3RpdmVPcHRpb25zLFxuICAgICAgdGhpcy5vcHRpb25zIHx8IHt9LFxuICAgICk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICBOZ3hGb3JtU2VydmljZS5mb3JPbkRlc3Ryb3kodGhpcywgdGhpcy5yZW5kZXJlcklkKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0gIHtFdmVudH0gZXZlbnRcbiAgICovXG4gIHN1Ym1pdChldmVudDogU3VibWl0RXZlbnQpIHtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIGV2ZW50LnN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbigpO1xuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gICAgaWYgKCF0aGlzLmZvcm1Hcm91cC52YWxpZClcbiAgICAgIHJldHVybiBOZ3hGb3JtU2VydmljZS52YWxpZGF0ZUZpZWxkcyh0aGlzLmZvcm1Hcm91cCk7XG4gICAgY29uc29sZS5sb2coJ29uU3VibWl0Jyk7XG5cbiAgICAvLyBmaXggcGFyYSB2YWxvcmVzIGRlIGNhbXBvcyByYWRpbyBlIGNoZWNrXG4gICAgY29uc3QgZGF0YSA9IE5neEZvcm1TZXJ2aWNlLmdldEZvcm1EYXRhKHRoaXMucmVuZGVyZXJJZCk7XG5cbiAgICBjb25zdCBzdWJtaXRFdmVudDogRm9ybVJlYWN0aXZlU3VibWl0RXZlbnQgPSB7XG4gICAgICBkYXRhOiBkYXRhLFxuICAgIH07XG5cbiAgICBpZiAodGhpcy5hY3Rpb24pXG4gICAgICByZXR1cm4gdGhpcy5jb21wb25lbnQubmF0aXZlRWxlbWVudC5kaXNwYXRjaEV2ZW50KFxuICAgICAgICBuZXcgQ3VzdG9tRXZlbnQoJ3N1Ym1pdCcsIGRhdGEpLFxuICAgICAgKTtcblxuICAgIHRoaXMuc3VibWl0RXZlbnQuZW1pdChzdWJtaXRFdmVudCk7XG4gIH1cbn1cbiIsIjxmb3JtICNyZWFjdGl2ZUZvcm0gW2lkXT1cInJlbmRlcmVySWRcIiBbZm9ybUdyb3VwXT1cImZvcm1Hcm91cFwiIChzdWJtaXQpPVwic3VibWl0KCRldmVudClcIiBbdGFyZ2V0XT1cInRhcmdldFwiPlxuICA8bmctY29udGVudCAjZm9ybUNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICA8ZGl2IGNsYXNzPVwiYnV0dG9ucy1jb250YWluZXJcIj5cbiAgICA8aW9uLWJ1dHRvblxuICAgICAgdHlwZT1cInN1Ym1pdFwiPlxuPCEtLSAgICAgIFtzaGFwZV09XCJidXR0b25zPy5zdWJtaXQ/LnNoYXBlIHx8ICdyb3VuZCdcIi0tPlxuPCEtLSAgICAgIFtjb2xvcl09XCJidXR0b25zPy5zdWJtaXQ/LmNvbG9yIHx8ICdwcmltYXJ5J1wiLS0+XG48IS0tICAgICAgW3NpemVdPVwiYnV0dG9ucz8uc3VibWl0Py5zaXplIHx8ICdkZWZhdWx0J1wiLS0+XG48IS0tICAgICAgW2ZpbGxdPVwiYnV0dG9ucz8uc3VibWl0Py5maWxsIHx8ICdzb2xpZCdcIi0tPlxuPCEtLSAgICAgIFtkaXNhYmxlZF09XCJidXR0b25zPy5zdWJtaXQ/LmRpc2FibGVkIHx8IGZhbHNlXCItLT5cbjwhLS0gICAgICBleHBhbmQ9XCJibG9ja1wiLS0+XG48IS0tICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVTdWJtaXRCdXR0b25XaGVuSW52YWxpZCA/ICFmb3JtLnZhbGlkIDogZmFsc2VcIi0tPlxuICAgICAgQGlmKG9wdGlvbnMuYnV0dG9ucy5zdWJtaXQuaWNvbikge1xuICAgICAgICA8aW9uLWljb24gW3Nsb3RdPVwib3B0aW9ucy5idXR0b25zLnN1Ym1pdC5pY29uU2xvdFwiIFtuYW1lXT1cIm9wdGlvbnMuYnV0dG9ucy5zdWJtaXQuaWNvblwiPjwvaW9uLWljb24+XG4gICAgICB9XG4gICAgICB7e29wdGlvbnMuYnV0dG9ucy5zdWJtaXQudGV4dH19XG4gICAgPC9pb24tYnV0dG9uPlxuICAgIEBpZihvcHRpb25zLmJ1dHRvbnMuY2xlYXIpIHtcbiAgICAgIDxpb24tYnV0dG9uPlxuPCEtLSAgICAgICAgdHlwZT1cImNsZWFyXCItLT5cbjwhLS0gICAgICAgICAgICAoY2xpY2spPVwiY2xlYXIoJGV2ZW50KVwiLS0+XG48IS0tICAgICAgICAgICAgW3NoYXBlXT1cImJ1dHRvbnM/LmNsZWFyPy5zaGFwZSB8fCAncm91bmQnXCItLT5cbjwhLS0gICAgICAgICAgICBbY29sb3JdPVwiYnV0dG9ucz8uY2xlYXI/LmNvbG9yIHx8ICdwcmltYXJ5J1wiLS0+XG48IS0tICAgICAgICAgICAgW3NpemVdPVwiYnV0dG9ucz8uY2xlYXI/LnNpemUgfHwgJ2RlZmF1bHQnXCItLT5cbjwhLS0gICAgICAgICAgICBbZmlsbF09XCJidXR0b25zPy5jbGVhcj8uZmlsbCB8fCAnY2xlYXInXCItLT5cbjwhLS0gICAgICAgICAgICBbZGlzYWJsZWRdPVwiYnV0dG9ucz8uY2xlYXI/LmRpc2FibGVkIHx8IGZhbHNlXCItLT5cbjwhLS0gICAgICAgICAgICBleHBhbmQ9XCJibG9ja1wiLS0+XG4gICAgICAgIEBpZihvcHRpb25zLmJ1dHRvbnMuY2xlYXI/Lmljb24pIHtcbiAgICAgICAgICA8aW9uLWljb24gW3Nsb3RdPVwib3B0aW9ucy5idXR0b25zLmNsZWFyPy5pY29uU2xvdFwiIFtuYW1lXT1cIm9wdGlvbnMuYnV0dG9ucy5jbGVhcj8uaWNvblwiPjwvaW9uLWljb24+XG4gICAgICAgIH1cbiAgICAgICAge3tvcHRpb25zLmJ1dHRvbnMuY2xlYXI/LnRleHR9fVxuICAgICAgPC9pb24tYnV0dG9uPlxuICAgIH1cbiAgPC9kaXY+XG48L2Zvcm0+XG4iXX0=
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvZGVjYWYtY3J1ZC1mb3JtL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIEZvcm1SZWFjdGl2ZVN1Ym1pdEV2ZW50IHtcbiAgZGF0YTogUmVjb3JkPHN0cmluZywgdW5rbm93bj47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ3J1ZEZvcm1PcHRpb25zIHtcbiAgYnV0dG9uczoge1xuICAgIHN1Ym1pdDoge1xuICAgICAgaWNvbj86IHN0cmluZztcbiAgICAgIGljb25TbG90PzogJ3N0YXJ0JyB8ICdlbmQnO1xuICAgICAgdGV4dD86IHN0cmluZztcbiAgICB9O1xuICAgIGNsZWFyPzoge1xuICAgICAgaWNvbj86IHN0cmluZztcbiAgICAgIGljb25TbG90PzogJ3N0YXJ0JyB8ICdlbmQnO1xuICAgICAgdGV4dD86IHN0cmluZztcbiAgICB9O1xuICB9O1xufVxuIl19
|
package/dist/for-angular/esm2022/components/decaf-model-renderer/decaf-model-renderer.component.mjs
DELETED
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import { Component, Injector, Input, TemplateRef, ViewChild, ViewContainerRef, } from '@angular/core';
|
|
2
|
-
import { Model, sf } from '@decaf-ts/decorator-validation';
|
|
3
|
-
import { NgComponentOutlet } from '@angular/common';
|
|
4
|
-
import { AngularEngineKeys, } from '../../engine';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
export class DecafModelRendererComponent {
|
|
7
|
-
constructor(vcr, injector) {
|
|
8
|
-
this.vcr = vcr;
|
|
9
|
-
this.injector = injector;
|
|
10
|
-
this.JSON = JSON;
|
|
11
|
-
}
|
|
12
|
-
refresh(model) {
|
|
13
|
-
model =
|
|
14
|
-
typeof model === 'string'
|
|
15
|
-
? Model.build({}, JSON.parse(model))
|
|
16
|
-
: model;
|
|
17
|
-
this.output = model.render(this.globals || {}, this.vcr, this.injector, this.inner);
|
|
18
|
-
this.rendererId = sf(AngularEngineKeys.RENDERED_ID, this.output.inputs['rendererId']);
|
|
19
|
-
}
|
|
20
|
-
ngOnChanges(changes) {
|
|
21
|
-
if (changes['model']) {
|
|
22
|
-
const { currentValue, previousValue, firstChange } = changes['model'];
|
|
23
|
-
this.refresh(currentValue);
|
|
24
|
-
}
|
|
25
|
-
// this.refresh();
|
|
26
|
-
}
|
|
27
|
-
ngOnDestroy() {
|
|
28
|
-
this.output = undefined;
|
|
29
|
-
}
|
|
30
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DecafModelRendererComponent, deps: [{ token: i0.ViewContainerRef }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
31
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: DecafModelRendererComponent, isStandalone: true, selector: "decaf-model-renderer", inputs: { model: "model", globals: "globals", rendererId: "rendererId" }, viewQueries: [{ propertyName: "inner", first: true, predicate: ["inner"], descendants: true, read: (TemplateRef), static: true }], usesOnChanges: true, ngImport: i0, template: "<div #renderer>\n <ng-container #outer *ngComponentOutlet=\"output?.component;\n inputs: output?.inputs;\n content: output?.content;\">\n </ng-container>\n <ng-template #inner>\n <div [id]=\"rendererId || null\">\n @for (child of output?.children; track child.inputs.name) {\n <ng-container *ngComponentOutlet=\"child.component;\n injector: child.injector;\n inputs: child.inputs\n content: child.content\">\n </ng-container>\n }\n </div>\n </ng-template>\n</div>\n\n\n", styles: [""], dependencies: [{ kind: "directive", type: NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"] }] }); }
|
|
32
|
-
}
|
|
33
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DecafModelRendererComponent, decorators: [{
|
|
34
|
-
type: Component,
|
|
35
|
-
args: [{ standalone: true, imports: [NgComponentOutlet], selector: 'decaf-model-renderer', template: "<div #renderer>\n <ng-container #outer *ngComponentOutlet=\"output?.component;\n inputs: output?.inputs;\n content: output?.content;\">\n </ng-container>\n <ng-template #inner>\n <div [id]=\"rendererId || null\">\n @for (child of output?.children; track child.inputs.name) {\n <ng-container *ngComponentOutlet=\"child.component;\n injector: child.injector;\n inputs: child.inputs\n content: child.content\">\n </ng-container>\n }\n </div>\n </ng-template>\n</div>\n\n\n" }]
|
|
36
|
-
}], ctorParameters: () => [{ type: i0.ViewContainerRef }, { type: i0.Injector }], propDecorators: { model: [{
|
|
37
|
-
type: Input,
|
|
38
|
-
args: [{ required: true }]
|
|
39
|
-
}], globals: [{
|
|
40
|
-
type: Input
|
|
41
|
-
}], inner: [{
|
|
42
|
-
type: ViewChild,
|
|
43
|
-
args: ['inner', { read: (TemplateRef), static: true }]
|
|
44
|
-
}], rendererId: [{
|
|
45
|
-
type: Input
|
|
46
|
-
}] } });
|
|
47
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVjYWYtbW9kZWwtcmVuZGVyZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL2RlY2FmLW1vZGVsLXJlbmRlcmVyL2RlY2FmLW1vZGVsLXJlbmRlcmVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9kZWNhZi1tb2RlbC1yZW5kZXJlci9kZWNhZi1tb2RlbC1yZW5kZXJlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFFBQVEsRUFDUixLQUFLLEVBR0wsV0FBVyxFQUNYLFNBQVMsRUFDVCxnQkFBZ0IsR0FDakIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUMzRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNwRCxPQUFPLEVBRUwsaUJBQWlCLEdBRWxCLE1BQU0sY0FBYyxDQUFDOztBQVV0QixNQUFNLE9BQU8sMkJBQTJCO0lBaUJ0QyxZQUNVLEdBQXFCLEVBQ3JCLFFBQWtCO1FBRGxCLFFBQUcsR0FBSCxHQUFHLENBQWtCO1FBQ3JCLGFBQVEsR0FBUixRQUFRLENBQVU7UUFrQ1QsU0FBSSxHQUFHLElBQUksQ0FBQztJQWpDNUIsQ0FBQztJQUVJLE9BQU8sQ0FBQyxLQUFpQjtRQUMvQixLQUFLO1lBQ0gsT0FBTyxLQUFLLEtBQUssUUFBUTtnQkFDdkIsQ0FBQyxDQUFFLEtBQUssQ0FBQyxLQUFLLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQU87Z0JBQzNDLENBQUMsQ0FBQyxLQUFLLENBQUM7UUFFWixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQ3hCLElBQUksQ0FBQyxPQUFPLElBQUksRUFBRSxFQUNsQixJQUFJLENBQUMsR0FBRyxFQUNSLElBQUksQ0FBQyxRQUFRLEVBQ2IsSUFBSSxDQUFDLEtBQUssQ0FDWCxDQUFDO1FBQ0YsSUFBSSxDQUFDLFVBQVUsR0FBRyxFQUFFLENBQ2xCLGlCQUFpQixDQUFDLFdBQVcsRUFDNUIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUE4QixDQUFDLFlBQVksQ0FBVyxDQUNwRSxDQUFDO0lBQ0osQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxJQUFJLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1lBQ3JCLE1BQU0sRUFBRSxZQUFZLEVBQUUsYUFBYSxFQUFFLFdBQVcsRUFBRSxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUN0RSxJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQzdCLENBQUM7UUFFRCxrQkFBa0I7SUFDcEIsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsTUFBTSxHQUFHLFNBQVMsQ0FBQztJQUMxQixDQUFDOytHQW5EVSwyQkFBMkI7bUdBQTNCLDJCQUEyQixxT0FTVixDQUFBLFdBQWdCLENBQUEsZ0VDbkM5QyxvcUJBbUJBLDBERENZLGlCQUFpQjs7NEZBTWhCLDJCQUEyQjtrQkFSdkMsU0FBUztpQ0FDSSxJQUFJLFdBQ1AsQ0FBQyxpQkFBaUIsQ0FBQyxZQUVsQixzQkFBc0I7NEdBUWhDLEtBQUs7c0JBREosS0FBSzt1QkFBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUU7Z0JBSXpCLE9BQU87c0JBRE4sS0FBSztnQkFJTixLQUFLO3NCQURKLFNBQVM7dUJBQUMsT0FBTyxFQUFFLEVBQUUsSUFBSSxFQUFFLENBQUEsV0FBZ0IsQ0FBQSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBTTVELFVBQVU7c0JBRFQsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgSW5qZWN0b3IsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIFNpbXBsZUNoYW5nZXMsXG4gIFRlbXBsYXRlUmVmLFxuICBWaWV3Q2hpbGQsXG4gIFZpZXdDb250YWluZXJSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTW9kZWwsIHNmIH0gZnJvbSAnQGRlY2FmLXRzL2RlY29yYXRvci12YWxpZGF0aW9uJztcbmltcG9ydCB7IE5nQ29tcG9uZW50T3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIEFuZ3VsYXJEeW5hbWljT3V0cHV0LFxuICBBbmd1bGFyRW5naW5lS2V5cyxcbiAgUmVuZGVyZWRNb2RlbCxcbn0gZnJvbSAnLi4vLi4vZW5naW5lJztcblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtOZ0NvbXBvbmVudE91dGxldF0sXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvY29tcG9uZW50LXNlbGVjdG9yXG4gIHNlbGVjdG9yOiAnZGVjYWYtbW9kZWwtcmVuZGVyZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vZGVjYWYtbW9kZWwtcmVuZGVyZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vZGVjYWYtbW9kZWwtcmVuZGVyZXIuY29tcG9uZW50LnNjc3MnLFxufSlcbmV4cG9ydCBjbGFzcyBEZWNhZk1vZGVsUmVuZGVyZXJDb21wb25lbnQ8TSBleHRlbmRzIE1vZGVsPlxuICBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgUmVuZGVyZWRNb2RlbFxue1xuICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KVxuICBtb2RlbCE6IE0gfCBzdHJpbmc7XG5cbiAgQElucHV0KClcbiAgZ2xvYmFscz86IFJlY29yZDxzdHJpbmcsIHVua25vd24+O1xuXG4gIEBWaWV3Q2hpbGQoJ2lubmVyJywgeyByZWFkOiBUZW1wbGF0ZVJlZjxhbnk+LCBzdGF0aWM6IHRydWUgfSlcbiAgaW5uZXI/OiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gIG91dHB1dD86IEFuZ3VsYXJEeW5hbWljT3V0cHV0O1xuXG4gIEBJbnB1dCgpXG4gIHJlbmRlcmVySWQ/OiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSB2Y3I6IFZpZXdDb250YWluZXJSZWYsXG4gICAgcHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IsXG4gICkge31cblxuICBwcml2YXRlIHJlZnJlc2gobW9kZWw6IHN0cmluZyB8IE0pIHtcbiAgICBtb2RlbCA9XG4gICAgICB0eXBlb2YgbW9kZWwgPT09ICdzdHJpbmcnXG4gICAgICAgID8gKE1vZGVsLmJ1aWxkKHt9LCBKU09OLnBhcnNlKG1vZGVsKSkgYXMgTSlcbiAgICAgICAgOiBtb2RlbDtcblxuICAgIHRoaXMub3V0cHV0ID0gbW9kZWwucmVuZGVyPEFuZ3VsYXJEeW5hbWljT3V0cHV0PihcbiAgICAgIHRoaXMuZ2xvYmFscyB8fCB7fSxcbiAgICAgIHRoaXMudmNyLFxuICAgICAgdGhpcy5pbmplY3RvcixcbiAgICAgIHRoaXMuaW5uZXIsXG4gICAgKTtcbiAgICB0aGlzLnJlbmRlcmVySWQgPSBzZihcbiAgICAgIEFuZ3VsYXJFbmdpbmVLZXlzLlJFTkRFUkVEX0lELFxuICAgICAgKHRoaXMub3V0cHV0LmlucHV0cyBhcyBSZWNvcmQ8c3RyaW5nLCBhbnk+KVsncmVuZGVyZXJJZCddIGFzIHN0cmluZyxcbiAgICApO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIGlmIChjaGFuZ2VzWydtb2RlbCddKSB7XG4gICAgICBjb25zdCB7IGN1cnJlbnRWYWx1ZSwgcHJldmlvdXNWYWx1ZSwgZmlyc3RDaGFuZ2UgfSA9IGNoYW5nZXNbJ21vZGVsJ107XG4gICAgICB0aGlzLnJlZnJlc2goY3VycmVudFZhbHVlKTtcbiAgICB9XG5cbiAgICAvLyB0aGlzLnJlZnJlc2goKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMub3V0cHV0ID0gdW5kZWZpbmVkO1xuICB9XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IEpTT04gPSBKU09OO1xufVxuIiwiPGRpdiAjcmVuZGVyZXI+XG4gIDxuZy1jb250YWluZXIgI291dGVyICpuZ0NvbXBvbmVudE91dGxldD1cIm91dHB1dD8uY29tcG9uZW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlucHV0czogb3V0cHV0Py5pbnB1dHM7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogb3V0cHV0Py5jb250ZW50O1wiPlxuICA8L25nLWNvbnRhaW5lcj5cbiAgPG5nLXRlbXBsYXRlICNpbm5lcj5cbiAgICA8ZGl2IFtpZF09XCJyZW5kZXJlcklkIHx8IG51bGxcIj5cbiAgICAgIEBmb3IgKGNoaWxkIG9mIG91dHB1dD8uY2hpbGRyZW47IHRyYWNrIGNoaWxkLmlucHV0cy5uYW1lKSB7XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nQ29tcG9uZW50T3V0bGV0PVwiY2hpbGQuY29tcG9uZW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5qZWN0b3I6IGNoaWxkLmluamVjdG9yO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5wdXRzOiBjaGlsZC5pbnB1dHNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IGNoaWxkLmNvbnRlbnRcIj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICB9XG4gICAgPC9kaXY+XG4gIDwvbmctdGVtcGxhdGU+XG48L2Rpdj5cblxuXG4iXX0=
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
export class DynamicModule {
|
|
2
|
-
}
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRHluYW1pY01vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvZW5naW5lL0R5bmFtaWNNb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFnQixhQUFhO0NBQUciLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgYWJzdHJhY3QgY2xhc3MgRHluYW1pY01vZHVsZSB7fVxuIl19
|