@bolttech/form-engine-core 0.0.1-beta.35 → 0.0.1-beta.37
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/index.esm.js +27 -11
- package/package.json +1 -1
- package/src/managers/form.d.ts +8 -0
- package/src/types/event.d.ts +2 -2
package/index.esm.js
CHANGED
|
@@ -730,10 +730,11 @@ const custom = (value, masks) => {
|
|
|
730
730
|
if (!masks.custom || !value) return value;
|
|
731
731
|
let mask = '';
|
|
732
732
|
let index = 0;
|
|
733
|
+
let convertedValue = value.replace(/[^\w\s]/gi, '');
|
|
733
734
|
for (let i = 0; i < masks.custom.length; i++) {
|
|
734
735
|
if (masks.custom[i] === '#') {
|
|
735
|
-
if (index <
|
|
736
|
-
mask +=
|
|
736
|
+
if (index < convertedValue.length) {
|
|
737
|
+
mask += convertedValue[index];
|
|
737
738
|
index++;
|
|
738
739
|
} else {
|
|
739
740
|
break;
|
|
@@ -3343,7 +3344,7 @@ class FormCore {
|
|
|
3343
3344
|
/*
|
|
3344
3345
|
* check with João the need for a global mount event for the form
|
|
3345
3346
|
* to avoid not displaying this message in some cases (AsFormField)
|
|
3346
|
-
*
|
|
3347
|
+
* suggestion: create subscriber to targetField.ON_FIELD_MOUNT
|
|
3347
3348
|
*/
|
|
3348
3349
|
console.warn(`failed to update visibility onto field ${field}`);
|
|
3349
3350
|
} else {
|
|
@@ -3380,6 +3381,27 @@ class FormCore {
|
|
|
3380
3381
|
});
|
|
3381
3382
|
});
|
|
3382
3383
|
}
|
|
3384
|
+
/**
|
|
3385
|
+
* @internal
|
|
3386
|
+
* Update field value and emit change and cleared event.
|
|
3387
|
+
*
|
|
3388
|
+
* @param {string} key - Field name to be updated.
|
|
3389
|
+
* @param {unknown} value - Value to be inserted into field.
|
|
3390
|
+
*/
|
|
3391
|
+
setResetFieldValue(key, value) {
|
|
3392
|
+
if (!this.fields.has(key)) {
|
|
3393
|
+
console.warn(`failed to reset value onto field ${key}`);
|
|
3394
|
+
} else {
|
|
3395
|
+
const field = this.fields.get(key);
|
|
3396
|
+
field.emitValue({
|
|
3397
|
+
value: value,
|
|
3398
|
+
event: 'ON_FIELD_CHANGE'
|
|
3399
|
+
});
|
|
3400
|
+
field.emitEvents({
|
|
3401
|
+
event: 'ON_FIELD_CLEARED'
|
|
3402
|
+
});
|
|
3403
|
+
}
|
|
3404
|
+
}
|
|
3383
3405
|
/**
|
|
3384
3406
|
* Resets field values based on reset conditions defined in the schema.
|
|
3385
3407
|
*
|
|
@@ -3402,16 +3424,10 @@ class FormCore {
|
|
|
3402
3424
|
if (Array.isArray(structElement.fields)) {
|
|
3403
3425
|
structElement.fields.forEach((fieldKey, index) => {
|
|
3404
3426
|
const resettledValue = Array.isArray(structElement.resettledValue) ? structElement.resettledValue[index] : structElement.resettledValue;
|
|
3405
|
-
|
|
3406
|
-
value: resettledValue,
|
|
3407
|
-
event: 'ON_FIELD_CHANGE'
|
|
3408
|
-
});
|
|
3427
|
+
this.setResetFieldValue(fieldKey, resettledValue);
|
|
3409
3428
|
});
|
|
3410
3429
|
} else if (structElement.fields) {
|
|
3411
|
-
|
|
3412
|
-
value: structElement.resettledValue,
|
|
3413
|
-
event: 'ON_FIELD_CHANGE'
|
|
3414
|
-
});
|
|
3430
|
+
this.setResetFieldValue(structElement.fields, structElement.resettledValue);
|
|
3415
3431
|
}
|
|
3416
3432
|
}
|
|
3417
3433
|
});
|
package/package.json
CHANGED
package/src/managers/form.d.ts
CHANGED
|
@@ -160,6 +160,14 @@ declare class FormCore {
|
|
|
160
160
|
event: TEvents;
|
|
161
161
|
key: string;
|
|
162
162
|
}): void;
|
|
163
|
+
/**
|
|
164
|
+
* @internal
|
|
165
|
+
* Update field value and emit change and cleared event.
|
|
166
|
+
*
|
|
167
|
+
* @param {string} key - Field name to be updated.
|
|
168
|
+
* @param {unknown} value - Value to be inserted into field.
|
|
169
|
+
*/
|
|
170
|
+
private setResetFieldValue;
|
|
163
171
|
/**
|
|
164
172
|
* Resets field values based on reset conditions defined in the schema.
|
|
165
173
|
*
|
package/src/types/event.d.ts
CHANGED
|
@@ -8,7 +8,7 @@ import { IFormField } from '../managers';
|
|
|
8
8
|
* const event: TEvents = 'ON_FIELD_CHANGE';
|
|
9
9
|
* ```
|
|
10
10
|
*/
|
|
11
|
-
type TEvents = 'ON_FIELD_MOUNT' | 'ON_FIELD_CHANGE' | 'ON_FIELD_BLUR' | 'ON_FIELD_FOCUS' | 'ON_FIELD_CLICK' | 'ON_FIELD_KEYUP' | 'ON_FIELD_KEYDOWN' | 'ON_FORM_SUBMIT' | 'ON_FORM_MOUNT' | 'ON_API_FIELD_RESPONSE';
|
|
11
|
+
type TEvents = 'ON_FIELD_MOUNT' | 'ON_FIELD_CHANGE' | 'ON_FIELD_BLUR' | 'ON_FIELD_FOCUS' | 'ON_FIELD_CLICK' | 'ON_FIELD_KEYUP' | 'ON_FIELD_KEYDOWN' | 'ON_FIELD_CLEARED' | 'ON_FORM_SUBMIT' | 'ON_FORM_MOUNT' | 'ON_API_FIELD_RESPONSE';
|
|
12
12
|
/**
|
|
13
13
|
* @type TMutationEvents
|
|
14
14
|
* Represents the different types of events that can occur internally that triggers templating.
|
|
@@ -46,4 +46,4 @@ type TFieldEvent = {
|
|
|
46
46
|
fieldName: string;
|
|
47
47
|
fieldInstance?: IFormField;
|
|
48
48
|
};
|
|
49
|
-
export { TEvents, TMutationEvents, TMutationEnum, TValueChangeEvent, TFieldEvent };
|
|
49
|
+
export { TEvents, TMutationEvents, TMutationEnum, TValueChangeEvent, TFieldEvent, };
|