@yourself.create/ngx-form-designer 0.0.10 → 0.0.12
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/fesm2022/uch-web-ngx-form-designer.mjs +58 -21
- package/fesm2022/uch-web-ngx-form-designer.mjs.map +1 -1
- package/lib/form-designer/designer-state.service.d.ts +1 -1
- package/lib/form-designer/form-preview.component.d.ts +1 -1
- package/lib/form-designer/layout-canvas.component.d.ts +1 -1
- package/lib/form-renderer/form-journey-viewer.component.d.ts +3 -2
- package/lib/form-renderer/form-viewer/form-viewer.component.d.ts +3 -2
- package/lib/form-renderer/json-form-renderer.component.d.ts +5 -1
- package/lib/website/website-preview-shell.component.d.ts +1 -1
- package/lib/widgets/page-widgets/inline-quill-editor.component.d.ts +1 -0
- package/package.json +1 -1
|
@@ -62,7 +62,7 @@ export declare class DesignerStateService {
|
|
|
62
62
|
readonly activeBreakpoint: import("@angular/core").WritableSignal<"xs" | "sm" | "md" | "lg" | "xl" | "2xl">;
|
|
63
63
|
readonly isPreviewMode: import("@angular/core").WritableSignal<boolean>;
|
|
64
64
|
readonly isLeftPanelCollapsed: import("@angular/core").WritableSignal<boolean>;
|
|
65
|
-
readonly activeDevice: import("@angular/core").Signal<"
|
|
65
|
+
readonly activeDevice: import("@angular/core").Signal<"desktop" | "mobile">;
|
|
66
66
|
readonly activeThemeId: import("@angular/core").WritableSignal<string>;
|
|
67
67
|
readonly isReadOnly: import("@angular/core").WritableSignal<boolean>;
|
|
68
68
|
readonly clipboard: import("@angular/core").WritableSignal<{
|
|
@@ -21,7 +21,7 @@ export declare class FormPreviewComponent {
|
|
|
21
21
|
pageSelect: EventEmitter<string>;
|
|
22
22
|
breakpoints: readonly ["xs", "sm", "md", "lg", "xl", "2xl"];
|
|
23
23
|
breakpoint: import("@angular/core").WritableSignal<"xs" | "sm" | "md" | "lg" | "xl" | "2xl">;
|
|
24
|
-
activeDevice: import("@angular/core").Signal<"
|
|
24
|
+
activeDevice: import("@angular/core").Signal<"desktop" | "mobile">;
|
|
25
25
|
formData: any;
|
|
26
26
|
combinedFormData: any;
|
|
27
27
|
constructor(state: DesignerStateService);
|
|
@@ -13,7 +13,7 @@ export declare class LayoutCanvasComponent implements AfterViewInit {
|
|
|
13
13
|
breakpoints: readonly ["xs", "sm", "md", "lg", "xl", "2xl"];
|
|
14
14
|
constructor(state: DesignerStateService);
|
|
15
15
|
get schema(): import("@angular/core").WritableSignal<import("@uch-web/ngx-form-designer").FormSchema>;
|
|
16
|
-
get device(): "
|
|
16
|
+
get device(): "desktop" | "mobile";
|
|
17
17
|
get breakpoint(): "xs" | "sm" | "md" | "lg" | "xl" | "2xl";
|
|
18
18
|
readonly zoom: import("@angular/core").WritableSignal<number>;
|
|
19
19
|
readonly showLayoutGuides: import("@angular/core").WritableSignal<boolean>;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { EventEmitter, SimpleChanges } from '@angular/core';
|
|
2
|
-
import { JsonFormRendererComponent, FormValidationResult, FormValueMap, FormSubmitResult } from './json-form-renderer.component';
|
|
2
|
+
import { JsonFormRendererComponent, FormValidationResult, FormValueMap, FormSubmitResult, type SeverityEvaluationMode } from './json-form-renderer.component';
|
|
3
3
|
import type { DesignerEventApiDefinition, FieldDisplayLabel, UploadedFileRef, WidgetEventApiExecutor } from '../form-core/models';
|
|
4
4
|
import type { FormJourneyProject } from '../form-core/form-journey.models';
|
|
5
5
|
import { type FieldDataAccessMap, type RuntimeFieldDataAccessApi } from '../data/runtime-field-data-access-registry.service';
|
|
@@ -8,6 +8,7 @@ export type JourneyFormDataByPage = Record<string, FormValueMap>;
|
|
|
8
8
|
export declare class FormJourneyViewerComponent {
|
|
9
9
|
journey: FormJourneyProject;
|
|
10
10
|
viewOnly: boolean;
|
|
11
|
+
severityEvaluationMode: SeverityEvaluationMode;
|
|
11
12
|
eventApis: DesignerEventApiDefinition[];
|
|
12
13
|
eventApiExecutor?: WidgetEventApiExecutor;
|
|
13
14
|
initialValues?: Record<string, unknown>;
|
|
@@ -47,5 +48,5 @@ export declare class FormJourneyViewerComponent {
|
|
|
47
48
|
private toJourneyValueMapByPage;
|
|
48
49
|
private flattenJourneyValueMapByPage;
|
|
49
50
|
static ɵfac: i0.ɵɵFactoryDeclaration<FormJourneyViewerComponent, never>;
|
|
50
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<FormJourneyViewerComponent, "app-form-journey-viewer", never, { "journey": { "alias": "journey"; "required": true; }; "viewOnly": { "alias": "viewOnly"; "required": false; }; "eventApis": { "alias": "eventApis"; "required": false; }; "eventApiExecutor": { "alias": "eventApiExecutor"; "required": false; }; "initialValues": { "alias": "initialValues"; "required": false; }; "initialFieldLabels": { "alias": "initialFieldLabels"; "required": false; }; "fieldDataAccessMap": { "alias": "fieldDataAccessMap"; "required": false; }; "fieldDataAccessApi": { "alias": "fieldDataAccessApi"; "required": false; }; "formContentId": { "alias": "formContentId"; "required": false; }; "formContentVersion": { "alias": "formContentVersion"; "required": false; }; }, { "formDataChange": "formDataChange"; "formDataByPageChange": "formDataByPageChange"; "formValidationChange": "formValidationChange"; "uploadedFilesChange": "uploadedFilesChange"; "submit": "submit"; "activePageIdChange": "activePageIdChange"; }, never, never, true, never>;
|
|
51
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<FormJourneyViewerComponent, "app-form-journey-viewer", never, { "journey": { "alias": "journey"; "required": true; }; "viewOnly": { "alias": "viewOnly"; "required": false; }; "severityEvaluationMode": { "alias": "severityEvaluationMode"; "required": false; }; "eventApis": { "alias": "eventApis"; "required": false; }; "eventApiExecutor": { "alias": "eventApiExecutor"; "required": false; }; "initialValues": { "alias": "initialValues"; "required": false; }; "initialFieldLabels": { "alias": "initialFieldLabels"; "required": false; }; "fieldDataAccessMap": { "alias": "fieldDataAccessMap"; "required": false; }; "fieldDataAccessApi": { "alias": "fieldDataAccessApi"; "required": false; }; "formContentId": { "alias": "formContentId"; "required": false; }; "formContentVersion": { "alias": "formContentVersion"; "required": false; }; }, { "formDataChange": "formDataChange"; "formDataByPageChange": "formDataByPageChange"; "formValidationChange": "formValidationChange"; "uploadedFilesChange": "uploadedFilesChange"; "submit": "submit"; "activePageIdChange": "activePageIdChange"; }, never, never, true, never>;
|
|
51
52
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { EventEmitter, OnDestroy, OnInit } from '@angular/core';
|
|
2
2
|
import { DesignerEventApiDefinition, FieldDisplayLabel, FormSchema, UploadedFileRef, WidgetEventApiExecutor } from '../../form-core/models';
|
|
3
|
-
import { JsonFormRendererComponent, FormSubmitResult, FormValidationResult, FormValueMap, GroupedFormValues, CombinedFormValues } from '../json-form-renderer.component';
|
|
3
|
+
import { JsonFormRendererComponent, FormSubmitResult, FormValidationResult, FormValueMap, GroupedFormValues, CombinedFormValues, type SeverityEvaluationMode } from '../json-form-renderer.component';
|
|
4
4
|
import { FormJourneyViewerComponent, type JourneyFormDataByPage } from '../form-journey-viewer.component';
|
|
5
5
|
import { type FieldDataAccessMap, type RuntimeFieldDataAccessApi } from '../../data/runtime-field-data-access-registry.service';
|
|
6
6
|
import type { FormJourneyProject } from '../../form-core/form-journey.models';
|
|
@@ -20,6 +20,7 @@ export declare class FormViewerComponent implements OnInit, OnDestroy {
|
|
|
20
20
|
get dataUsesFieldNameKeys(): boolean;
|
|
21
21
|
options: FormViewerOptions;
|
|
22
22
|
viewOnly: boolean;
|
|
23
|
+
severityEvaluationMode: SeverityEvaluationMode;
|
|
23
24
|
eventApis: DesignerEventApiDefinition[];
|
|
24
25
|
eventApiExecutor?: WidgetEventApiExecutor;
|
|
25
26
|
fieldDataAccessMap?: FieldDataAccessMap;
|
|
@@ -74,5 +75,5 @@ export declare class FormViewerComponent implements OnInit, OnDestroy {
|
|
|
74
75
|
private isFieldIdValue;
|
|
75
76
|
private isRecord;
|
|
76
77
|
static ɵfac: i0.ɵɵFactoryDeclaration<FormViewerComponent, never>;
|
|
77
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<FormViewerComponent, "app-form-viewer", never, { "schema": { "alias": "schema"; "required": false; }; "journey": { "alias": "journey"; "required": false; }; "data": { "alias": "data"; "required": false; }; "dataUsesFieldNameKeys": { "alias": "dataUsesFieldNameKeys"; "required": false; }; "options": { "alias": "options"; "required": false; }; "viewOnly": { "alias": "viewOnly"; "required": false; }; "eventApis": { "alias": "eventApis"; "required": false; }; "eventApiExecutor": { "alias": "eventApiExecutor"; "required": false; }; "fieldDataAccessMap": { "alias": "fieldDataAccessMap"; "required": false; }; "fieldDataAccessApi": { "alias": "fieldDataAccessApi"; "required": false; }; "formContentId": { "alias": "formContentId"; "required": false; }; "formContentVersion": { "alias": "formContentVersion"; "required": false; }; }, { "formDataChange": "formDataChange"; "formDataByPageChange": "formDataByPageChange"; "formValidationChange": "formValidationChange"; "uploadedFilesChange": "uploadedFilesChange"; "submit": "submit"; "activePageIdChange": "activePageIdChange"; }, never, never, true, never>;
|
|
78
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<FormViewerComponent, "app-form-viewer", never, { "schema": { "alias": "schema"; "required": false; }; "journey": { "alias": "journey"; "required": false; }; "data": { "alias": "data"; "required": false; }; "dataUsesFieldNameKeys": { "alias": "dataUsesFieldNameKeys"; "required": false; }; "options": { "alias": "options"; "required": false; }; "viewOnly": { "alias": "viewOnly"; "required": false; }; "severityEvaluationMode": { "alias": "severityEvaluationMode"; "required": false; }; "eventApis": { "alias": "eventApis"; "required": false; }; "eventApiExecutor": { "alias": "eventApiExecutor"; "required": false; }; "fieldDataAccessMap": { "alias": "fieldDataAccessMap"; "required": false; }; "fieldDataAccessApi": { "alias": "fieldDataAccessApi"; "required": false; }; "formContentId": { "alias": "formContentId"; "required": false; }; "formContentVersion": { "alias": "formContentVersion"; "required": false; }; }, { "formDataChange": "formDataChange"; "formDataByPageChange": "formDataByPageChange"; "formValidationChange": "formValidationChange"; "uploadedFilesChange": "uploadedFilesChange"; "submit": "submit"; "activePageIdChange": "activePageIdChange"; }, never, never, true, never>;
|
|
78
79
|
}
|
|
@@ -15,6 +15,7 @@ export interface FormFieldValue {
|
|
|
15
15
|
export type FormValueMap = Record<string, FormFieldValue>;
|
|
16
16
|
export type GroupedFormValues = Record<string, FormValueMap>;
|
|
17
17
|
export type CombinedFormValues = Record<string, FormFieldValue | FormValueMap>;
|
|
18
|
+
export type SeverityEvaluationMode = 'rule-failed' | 'rule-matched';
|
|
18
19
|
export interface FormValidationResult {
|
|
19
20
|
errors: Record<string, string[]>;
|
|
20
21
|
isValid: boolean;
|
|
@@ -37,6 +38,7 @@ export interface FormFieldValidatorState {
|
|
|
37
38
|
source: 'required' | 'html5' | 'rule';
|
|
38
39
|
active: boolean;
|
|
39
40
|
valid: boolean;
|
|
41
|
+
isSeverityTriggered?: boolean;
|
|
40
42
|
value?: unknown;
|
|
41
43
|
message?: string;
|
|
42
44
|
severity?: RuleSeverity;
|
|
@@ -68,6 +70,7 @@ export declare class JsonFormRendererComponent implements OnInit, OnChanges, OnD
|
|
|
68
70
|
reason?: string;
|
|
69
71
|
}>;
|
|
70
72
|
uploadOnSubmit: boolean;
|
|
73
|
+
severityEvaluationMode: SeverityEvaluationMode;
|
|
71
74
|
fieldDataAccessMap?: FieldDataAccessMap;
|
|
72
75
|
fieldDataAccessApi?: RuntimeFieldDataAccessApi;
|
|
73
76
|
formContentId?: string;
|
|
@@ -107,6 +110,7 @@ export declare class JsonFormRendererComponent implements OnInit, OnChanges, OnD
|
|
|
107
110
|
private buildFieldValidationState;
|
|
108
111
|
private describeFieldValidators;
|
|
109
112
|
private hasRequiredValidation;
|
|
113
|
+
private isRuleSeverityTriggered;
|
|
110
114
|
private getRuleOutcomes;
|
|
111
115
|
private describeRuleName;
|
|
112
116
|
private getRuleValidationMessage;
|
|
@@ -136,5 +140,5 @@ export declare class JsonFormRendererComponent implements OnInit, OnChanges, OnD
|
|
|
136
140
|
private isGroupValue;
|
|
137
141
|
private isUploadedFileRef;
|
|
138
142
|
static ɵfac: i0.ɵɵFactoryDeclaration<JsonFormRendererComponent, never>;
|
|
139
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<JsonFormRendererComponent, "app-json-form-renderer", never, { "schema": { "alias": "schema"; "required": false; }; "initialValues": { "alias": "initialValues"; "required": false; }; "initialFieldLabels": { "alias": "initialFieldLabels"; "required": false; }; "mode": { "alias": "mode"; "required": false; }; "device": { "alias": "device"; "required": false; }; "showLayoutGuides": { "alias": "showLayoutGuides"; "required": false; }; "breakpoint": { "alias": "breakpoint"; "required": false; }; "eventLogger": { "alias": "eventLogger"; "required": false; }; "eventApis": { "alias": "eventApis"; "required": false; }; "eventApiExecutor": { "alias": "eventApiExecutor"; "required": false; }; "navigateToPage": { "alias": "navigateToPage"; "required": false; }; "uploadOnSubmit": { "alias": "uploadOnSubmit"; "required": false; }; "fieldDataAccessMap": { "alias": "fieldDataAccessMap"; "required": false; }; "fieldDataAccessApi": { "alias": "fieldDataAccessApi"; "required": false; }; "formContentId": { "alias": "formContentId"; "required": false; }; "formContentVersion": { "alias": "formContentVersion"; "required": false; }; }, { "valueChange": "valueChange"; "groupedValueChange": "groupedValueChange"; "combinedValueChange": "combinedValueChange"; "validationChange": "validationChange"; "uploadedFilesChange": "uploadedFilesChange"; "formSubmit": "formSubmit"; }, never, never, true, never>;
|
|
143
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<JsonFormRendererComponent, "app-json-form-renderer", never, { "schema": { "alias": "schema"; "required": false; }; "initialValues": { "alias": "initialValues"; "required": false; }; "initialFieldLabels": { "alias": "initialFieldLabels"; "required": false; }; "mode": { "alias": "mode"; "required": false; }; "device": { "alias": "device"; "required": false; }; "showLayoutGuides": { "alias": "showLayoutGuides"; "required": false; }; "breakpoint": { "alias": "breakpoint"; "required": false; }; "eventLogger": { "alias": "eventLogger"; "required": false; }; "eventApis": { "alias": "eventApis"; "required": false; }; "eventApiExecutor": { "alias": "eventApiExecutor"; "required": false; }; "navigateToPage": { "alias": "navigateToPage"; "required": false; }; "uploadOnSubmit": { "alias": "uploadOnSubmit"; "required": false; }; "severityEvaluationMode": { "alias": "severityEvaluationMode"; "required": false; }; "fieldDataAccessMap": { "alias": "fieldDataAccessMap"; "required": false; }; "fieldDataAccessApi": { "alias": "fieldDataAccessApi"; "required": false; }; "formContentId": { "alias": "formContentId"; "required": false; }; "formContentVersion": { "alias": "formContentVersion"; "required": false; }; }, { "valueChange": "valueChange"; "groupedValueChange": "groupedValueChange"; "combinedValueChange": "combinedValueChange"; "validationChange": "validationChange"; "uploadedFilesChange": "uploadedFilesChange"; "formSubmit": "formSubmit"; }, never, never, true, never>;
|
|
140
144
|
}
|
|
@@ -6,7 +6,7 @@ export declare class WebsitePreviewShellComponent {
|
|
|
6
6
|
readonly pages: import("@angular/core").Signal<import("@uch-web/ngx-form-designer").WebsitePage[]>;
|
|
7
7
|
readonly breakpoints: readonly ["xs", "sm", "md", "lg", "xl", "2xl"];
|
|
8
8
|
readonly breakpoint: import("@angular/core").WritableSignal<"xs" | "sm" | "md" | "lg" | "xl" | "2xl">;
|
|
9
|
-
readonly activeDevice: import("@angular/core").Signal<"
|
|
9
|
+
readonly activeDevice: import("@angular/core").Signal<"desktop" | "mobile">;
|
|
10
10
|
private readonly url;
|
|
11
11
|
readonly activePage: import("@angular/core").Signal<import("@uch-web/ngx-form-designer").WebsitePage | null>;
|
|
12
12
|
setBreakpoint(bp: 'xs' | 'sm' | 'md' | 'lg' | 'xl' | '2xl'): void;
|
|
@@ -26,6 +26,7 @@ export declare class InlineQuillEditorComponent implements AfterViewInit, OnChan
|
|
|
26
26
|
private applyEditorAppearance;
|
|
27
27
|
private focusToEnd;
|
|
28
28
|
onEditorMouseDown(event: MouseEvent): void;
|
|
29
|
+
onEditorClick(event: MouseEvent): void;
|
|
29
30
|
onEditorPointerDown(event: PointerEvent): void;
|
|
30
31
|
onEditorTouchStart(event: TouchEvent): void;
|
|
31
32
|
onEditorDragStart(event: DragEvent): void;
|