datasync-dynamic-form 1.1.17 → 1.1.19

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.
@@ -0,0 +1,155 @@
1
+ import React, { Component, ChangeEvent } from 'react';
2
+
3
+ interface Field {
4
+ name: string;
5
+ input_type: string;
6
+ placeholder?: string;
7
+ title?: string;
8
+ required?: boolean;
9
+ min_length?: number;
10
+ max_length?: number;
11
+ combo_list?: string[];
12
+ rows?: number;
13
+ hidden?: boolean;
14
+ width?: number;
15
+ height?: number;
16
+ maxWidth?: number;
17
+ maxHeight?: number;
18
+ reduceImage?: boolean;
19
+ name_day?: string;
20
+ name_month?: string;
21
+ name_year?: string;
22
+ name_hour?: string;
23
+ name_min?: string;
24
+ }
25
+ interface Col {
26
+ Fields: Field[];
27
+ }
28
+ interface Row {
29
+ Cols: Col[];
30
+ }
31
+ interface Form {
32
+ Rows: Row[];
33
+ }
34
+ interface DataTier {
35
+ [key: string]: any;
36
+ }
37
+ interface DataBlob {
38
+ data_tier: DataTier;
39
+ }
40
+ interface DatasyncObject {
41
+ data_guid: string;
42
+ createstamp: string;
43
+ }
44
+ interface ButtonsOptions {
45
+ cancel_button_hidden?: boolean;
46
+ cancel_button_caption?: string;
47
+ submit_button_hidden?: boolean;
48
+ submit_button_caption?: string;
49
+ }
50
+ interface EventObject {
51
+ event: ChangeEvent<HTMLInputElement | HTMLTextAreaElement>;
52
+ fieldObject: Field;
53
+ }
54
+ interface DatePickerEventObject {
55
+ fieldObject: Field;
56
+ sub_field_name: string;
57
+ value: string;
58
+ }
59
+ interface TimePickerEventObject {
60
+ fieldObject: Field;
61
+ sub_field_name: string;
62
+ value: string;
63
+ }
64
+ interface DateObject {
65
+ day: number;
66
+ month: number;
67
+ year: number;
68
+ }
69
+ interface ConvertedDate {
70
+ asString: string;
71
+ asDate: DateObject;
72
+ }
73
+ interface DsDynamicFormProps {
74
+ data_blob?: DataBlob;
75
+ form?: Form;
76
+ read_only?: boolean;
77
+ foreign_keys?: DataTier;
78
+ onFormChange?: (data: DataTier) => void;
79
+ onFormSubmit?: (data: DataBlob) => void;
80
+ onFormSaved?: (blob: DataBlob) => void;
81
+ onFormUpdated?: (blob: DataBlob) => void;
82
+ onFormFailed?: (error: string) => void;
83
+ clearOnSave?: boolean;
84
+ clearOnUpdate?: boolean;
85
+ onTerminated?: () => void;
86
+ datasync_url?: string;
87
+ datasync_object?: DatasyncObject;
88
+ company_guid?: string;
89
+ table_guid?: string;
90
+ buttons_options?: ButtonsOptions;
91
+ custom_button_caption?: string;
92
+ custom_button_handler?: (form: Form) => void;
93
+ custom_button_caption2?: string;
94
+ custom_button_handler2?: (form: Form) => void;
95
+ show_hidden?: boolean;
96
+ }
97
+ interface DsDynamicFormState {
98
+ form: Form;
99
+ fieldError?: {
100
+ [key: string]: string;
101
+ };
102
+ captcha1?: number;
103
+ captcha2?: number;
104
+ }
105
+ declare class DsDynamicForm extends Component<DsDynamicFormProps, DsDynamicFormState> {
106
+ private local_data_blob;
107
+ constructor(props: DsDynamicFormProps);
108
+ componentDidMount: () => void;
109
+ componentDidUpdate(prevProps: DsDynamicFormProps): void;
110
+ /**
111
+ * Prototype : clearForm
112
+ */
113
+ clearForm: () => void;
114
+ getFieldData: (fieldName: string) => string;
115
+ setFieldData: (fieldName: string, value: string) => void;
116
+ setFieldError: (pFieldObject: Field, value: string) => void;
117
+ getFieldError: (pFieldObject: Field) => string;
118
+ _error_label: (field: Field) => JSX.Element;
119
+ getFieldLabelTitle: (pFieldObject: Field) => JSX.Element;
120
+ getCaptchaFieldLabelTitle: (pFieldObject: Field) => JSX.Element;
121
+ getFieldPrompt: (pFieldObject: Field) => string;
122
+ _numeric_field_with_add_on: (field: Field, fa_symbol: string) => JSX.Element;
123
+ _captcha_field: (field: Field, fa_symbol?: string) => JSX.Element;
124
+ _text_field: (field: Field) => JSX.Element;
125
+ _email_field: (field: Field) => JSX.Element;
126
+ _memo_field: (field: Field) => JSX.Element;
127
+ _combo_field: (field: Field) => JSX.Element;
128
+ _multi_field: (field: Field) => JSX.Element;
129
+ _date_field: (field: Field) => JSX.Element;
130
+ _time_field: (field: Field) => JSX.Element;
131
+ saveFormToDatasyncProcess: () => void;
132
+ /** Form Handlers */
133
+ onClickSubmitFormHandler: (event?: React.MouseEvent<HTMLButtonElement>) => Promise<boolean>;
134
+ onFormSavedLocalHandler: (blob: DataBlob) => void;
135
+ onFormUpdatedLocalHandler: (blob: DataBlob) => void;
136
+ onFormFailedLocalHandler: (err: string) => void;
137
+ checkValidation: (pFieldObject: Field) => boolean;
138
+ dynamicInputTextChangeHandler: (eventObject: EventObject) => void;
139
+ dynamicInputNumericChangeHandler: (eventObject: EventObject) => void;
140
+ convertDate: (p_o_day_month_year: DateObject) => ConvertedDate;
141
+ OLD_handle_date_picker: (eventObject: {
142
+ selection: Date;
143
+ fieldObject: Field;
144
+ }) => void;
145
+ handle_date_picker: (eventObject: DatePickerEventObject) => void;
146
+ handle_time_picker: (eventObject: TimePickerEventObject) => void;
147
+ _rowRendering: (row: Row) => JSX.Element;
148
+ _colRendering: (col: Col) => JSX.Element;
149
+ _fieldRendering: (field: Field, ii: number) => JSX.Element;
150
+ _cancelButton: () => JSX.Element;
151
+ _submitButton: () => JSX.Element;
152
+ render: () => JSX.Element;
153
+ }
154
+
155
+ export { DsDynamicForm };
@@ -0,0 +1,155 @@
1
+ import React, { Component, ChangeEvent } from 'react';
2
+
3
+ interface Field {
4
+ name: string;
5
+ input_type: string;
6
+ placeholder?: string;
7
+ title?: string;
8
+ required?: boolean;
9
+ min_length?: number;
10
+ max_length?: number;
11
+ combo_list?: string[];
12
+ rows?: number;
13
+ hidden?: boolean;
14
+ width?: number;
15
+ height?: number;
16
+ maxWidth?: number;
17
+ maxHeight?: number;
18
+ reduceImage?: boolean;
19
+ name_day?: string;
20
+ name_month?: string;
21
+ name_year?: string;
22
+ name_hour?: string;
23
+ name_min?: string;
24
+ }
25
+ interface Col {
26
+ Fields: Field[];
27
+ }
28
+ interface Row {
29
+ Cols: Col[];
30
+ }
31
+ interface Form {
32
+ Rows: Row[];
33
+ }
34
+ interface DataTier {
35
+ [key: string]: any;
36
+ }
37
+ interface DataBlob {
38
+ data_tier: DataTier;
39
+ }
40
+ interface DatasyncObject {
41
+ data_guid: string;
42
+ createstamp: string;
43
+ }
44
+ interface ButtonsOptions {
45
+ cancel_button_hidden?: boolean;
46
+ cancel_button_caption?: string;
47
+ submit_button_hidden?: boolean;
48
+ submit_button_caption?: string;
49
+ }
50
+ interface EventObject {
51
+ event: ChangeEvent<HTMLInputElement | HTMLTextAreaElement>;
52
+ fieldObject: Field;
53
+ }
54
+ interface DatePickerEventObject {
55
+ fieldObject: Field;
56
+ sub_field_name: string;
57
+ value: string;
58
+ }
59
+ interface TimePickerEventObject {
60
+ fieldObject: Field;
61
+ sub_field_name: string;
62
+ value: string;
63
+ }
64
+ interface DateObject {
65
+ day: number;
66
+ month: number;
67
+ year: number;
68
+ }
69
+ interface ConvertedDate {
70
+ asString: string;
71
+ asDate: DateObject;
72
+ }
73
+ interface DsDynamicFormProps {
74
+ data_blob?: DataBlob;
75
+ form?: Form;
76
+ read_only?: boolean;
77
+ foreign_keys?: DataTier;
78
+ onFormChange?: (data: DataTier) => void;
79
+ onFormSubmit?: (data: DataBlob) => void;
80
+ onFormSaved?: (blob: DataBlob) => void;
81
+ onFormUpdated?: (blob: DataBlob) => void;
82
+ onFormFailed?: (error: string) => void;
83
+ clearOnSave?: boolean;
84
+ clearOnUpdate?: boolean;
85
+ onTerminated?: () => void;
86
+ datasync_url?: string;
87
+ datasync_object?: DatasyncObject;
88
+ company_guid?: string;
89
+ table_guid?: string;
90
+ buttons_options?: ButtonsOptions;
91
+ custom_button_caption?: string;
92
+ custom_button_handler?: (form: Form) => void;
93
+ custom_button_caption2?: string;
94
+ custom_button_handler2?: (form: Form) => void;
95
+ show_hidden?: boolean;
96
+ }
97
+ interface DsDynamicFormState {
98
+ form: Form;
99
+ fieldError?: {
100
+ [key: string]: string;
101
+ };
102
+ captcha1?: number;
103
+ captcha2?: number;
104
+ }
105
+ declare class DsDynamicForm extends Component<DsDynamicFormProps, DsDynamicFormState> {
106
+ private local_data_blob;
107
+ constructor(props: DsDynamicFormProps);
108
+ componentDidMount: () => void;
109
+ componentDidUpdate(prevProps: DsDynamicFormProps): void;
110
+ /**
111
+ * Prototype : clearForm
112
+ */
113
+ clearForm: () => void;
114
+ getFieldData: (fieldName: string) => string;
115
+ setFieldData: (fieldName: string, value: string) => void;
116
+ setFieldError: (pFieldObject: Field, value: string) => void;
117
+ getFieldError: (pFieldObject: Field) => string;
118
+ _error_label: (field: Field) => JSX.Element;
119
+ getFieldLabelTitle: (pFieldObject: Field) => JSX.Element;
120
+ getCaptchaFieldLabelTitle: (pFieldObject: Field) => JSX.Element;
121
+ getFieldPrompt: (pFieldObject: Field) => string;
122
+ _numeric_field_with_add_on: (field: Field, fa_symbol: string) => JSX.Element;
123
+ _captcha_field: (field: Field, fa_symbol?: string) => JSX.Element;
124
+ _text_field: (field: Field) => JSX.Element;
125
+ _email_field: (field: Field) => JSX.Element;
126
+ _memo_field: (field: Field) => JSX.Element;
127
+ _combo_field: (field: Field) => JSX.Element;
128
+ _multi_field: (field: Field) => JSX.Element;
129
+ _date_field: (field: Field) => JSX.Element;
130
+ _time_field: (field: Field) => JSX.Element;
131
+ saveFormToDatasyncProcess: () => void;
132
+ /** Form Handlers */
133
+ onClickSubmitFormHandler: (event?: React.MouseEvent<HTMLButtonElement>) => Promise<boolean>;
134
+ onFormSavedLocalHandler: (blob: DataBlob) => void;
135
+ onFormUpdatedLocalHandler: (blob: DataBlob) => void;
136
+ onFormFailedLocalHandler: (err: string) => void;
137
+ checkValidation: (pFieldObject: Field) => boolean;
138
+ dynamicInputTextChangeHandler: (eventObject: EventObject) => void;
139
+ dynamicInputNumericChangeHandler: (eventObject: EventObject) => void;
140
+ convertDate: (p_o_day_month_year: DateObject) => ConvertedDate;
141
+ OLD_handle_date_picker: (eventObject: {
142
+ selection: Date;
143
+ fieldObject: Field;
144
+ }) => void;
145
+ handle_date_picker: (eventObject: DatePickerEventObject) => void;
146
+ handle_time_picker: (eventObject: TimePickerEventObject) => void;
147
+ _rowRendering: (row: Row) => JSX.Element;
148
+ _colRendering: (col: Col) => JSX.Element;
149
+ _fieldRendering: (field: Field, ii: number) => JSX.Element;
150
+ _cancelButton: () => JSX.Element;
151
+ _submitButton: () => JSX.Element;
152
+ render: () => JSX.Element;
153
+ }
154
+
155
+ export { DsDynamicForm };