@dereekb/dbx-form 2.1.0 → 4.0.1

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.
Files changed (113) hide show
  1. package/esm2020/lib/form/action/form.action.directive.mjs +8 -8
  2. package/esm2020/lib/form/action/form.action.module.mjs +4 -4
  3. package/esm2020/lib/form/action/transition/form.action.transition.module.mjs +4 -4
  4. package/esm2020/lib/form/action/transition/form.action.transition.safety.directive.mjs +3 -3
  5. package/esm2020/lib/form/form.mjs +10 -1
  6. package/esm2020/lib/form/form.module.mjs +4 -4
  7. package/esm2020/lib/form/io/form.changes.directive.mjs +18 -7
  8. package/esm2020/lib/form/io/form.input.directive.mjs +36 -18
  9. package/esm2020/lib/form/io/form.io.module.mjs +4 -4
  10. package/esm2020/lib/form/io/form.loading.directive.mjs +27 -17
  11. package/esm2020/lib/form.module.mjs +4 -4
  12. package/esm2020/lib/formly/config/validation.mjs +3 -3
  13. package/esm2020/lib/formly/field/checklist/checklist.item.field.component.mjs +8 -8
  14. package/esm2020/lib/formly/field/checklist/checklist.item.field.content.default.component.mjs +3 -3
  15. package/esm2020/lib/formly/field/checklist/checklist.item.field.module.mjs +13 -13
  16. package/esm2020/lib/formly/field/component/component.field.component.mjs +7 -7
  17. package/esm2020/lib/formly/field/component/component.field.module.mjs +9 -9
  18. package/esm2020/lib/formly/field/form.field.module.mjs +4 -4
  19. package/esm2020/lib/formly/field/selection/pickable/pickable.chip.field.component.mjs +7 -7
  20. package/esm2020/lib/formly/field/selection/pickable/pickable.field.directive.mjs +8 -6
  21. package/esm2020/lib/formly/field/selection/pickable/pickable.field.mjs +2 -2
  22. package/esm2020/lib/formly/field/selection/pickable/pickable.field.module.mjs +13 -13
  23. package/esm2020/lib/formly/field/selection/pickable/pickable.list.field.component.mjs +28 -21
  24. package/esm2020/lib/formly/field/selection/searchable/searchable.chip.field.component.mjs +4 -4
  25. package/esm2020/lib/formly/field/selection/searchable/searchable.field.autocomplete.item.component.mjs +13 -13
  26. package/esm2020/lib/formly/field/selection/searchable/searchable.field.directive.mjs +7 -8
  27. package/esm2020/lib/formly/field/selection/searchable/searchable.field.module.mjs +13 -13
  28. package/esm2020/lib/formly/field/selection/searchable/searchable.mjs +1 -1
  29. package/esm2020/lib/formly/field/selection/searchable/searchable.text.field.component.mjs +3 -3
  30. package/esm2020/lib/formly/field/selection/selection.module.mjs +4 -4
  31. package/esm2020/lib/formly/field/texteditor/texteditor.field.component.mjs +4 -5
  32. package/esm2020/lib/formly/field/texteditor/texteditor.field.module.mjs +4 -4
  33. package/esm2020/lib/formly/field/value/array/array.field.component.mjs +6 -6
  34. package/esm2020/lib/formly/field/value/array/array.field.module.mjs +4 -4
  35. package/esm2020/lib/formly/field/value/boolean/boolean.field.module.mjs +4 -4
  36. package/esm2020/lib/formly/field/value/date/date.field.module.mjs +4 -4
  37. package/esm2020/lib/formly/field/value/date/datetime.field.component.mjs +7 -6
  38. package/esm2020/lib/formly/field/value/enum/enum.field.module.mjs +4 -4
  39. package/esm2020/lib/formly/field/value/phone/phone.field.component.mjs +3 -3
  40. package/esm2020/lib/formly/field/value/phone/phone.field.module.mjs +4 -4
  41. package/esm2020/lib/formly/field/value/text/text.additional.field.mjs +15 -18
  42. package/esm2020/lib/formly/field/value/text/text.address.field.mjs +2 -2
  43. package/esm2020/lib/formly/field/value/text/text.field.mjs +3 -2
  44. package/esm2020/lib/formly/field/value/text/text.field.module.mjs +4 -4
  45. package/esm2020/lib/formly/field/value/value.module.mjs +4 -4
  46. package/esm2020/lib/formly/field/wrapper/autotouch.wrapper.component.mjs +3 -3
  47. package/esm2020/lib/formly/field/wrapper/expandable.wrapper.component.mjs +3 -3
  48. package/esm2020/lib/formly/field/wrapper/expandable.wrapper.delegate.mjs +3 -3
  49. package/esm2020/lib/formly/field/wrapper/flex.wrapper.component.mjs +3 -3
  50. package/esm2020/lib/formly/field/wrapper/form.wrapper.module.mjs +18 -10
  51. package/esm2020/lib/formly/field/wrapper/index.mjs +2 -1
  52. package/esm2020/lib/formly/field/wrapper/info.wrapper.component.mjs +3 -3
  53. package/esm2020/lib/formly/field/wrapper/section.wrapper.component.mjs +3 -3
  54. package/esm2020/lib/formly/field/wrapper/style.wrapper.component.mjs +4 -4
  55. package/esm2020/lib/formly/field/wrapper/subsection.wrapper.component.mjs +3 -3
  56. package/esm2020/lib/formly/field/wrapper/toggle.wrapper.component.mjs +3 -3
  57. package/esm2020/lib/formly/field/wrapper/working.wrapper.component.mjs +45 -0
  58. package/esm2020/lib/formly/field/wrapper/wrapper.mjs +7 -1
  59. package/esm2020/lib/formly/formly.context.directive.mjs +3 -3
  60. package/esm2020/lib/formly/formly.context.mjs +2 -2
  61. package/esm2020/lib/formly/formly.directive.mjs +12 -12
  62. package/esm2020/lib/formly/formly.form.component.mjs +15 -8
  63. package/esm2020/lib/formly/formly.module.mjs +9 -6
  64. package/esm2020/lib/formly/index.mjs +2 -1
  65. package/esm2020/lib/formly/template/available.mjs +16 -0
  66. package/esm2020/lib/formly/template/index.mjs +3 -0
  67. package/esm2020/lib/formly/template/login.mjs +90 -0
  68. package/esm2020/lib/layout/form.layout.module.mjs +4 -4
  69. package/esm2020/lib/layout/form.spacer.component.mjs +3 -3
  70. package/esm2020/lib/validator/available.mjs +32 -0
  71. package/esm2020/lib/validator/field.mjs +31 -0
  72. package/esm2020/lib/validator/index.mjs +3 -1
  73. package/fesm2015/dereekb-dbx-form.mjs +607 -352
  74. package/fesm2015/dereekb-dbx-form.mjs.map +1 -1
  75. package/fesm2020/dereekb-dbx-form.mjs +624 -349
  76. package/fesm2020/dereekb-dbx-form.mjs.map +1 -1
  77. package/lib/form/action/form.action.directive.d.ts +3 -3
  78. package/lib/form/form.d.ts +11 -0
  79. package/lib/form/io/form.changes.directive.d.ts +7 -3
  80. package/lib/form/io/form.input.directive.d.ts +18 -7
  81. package/lib/form/io/form.loading.directive.d.ts +8 -2
  82. package/lib/formly/field/checklist/checklist.item.field.component.d.ts +2 -2
  83. package/lib/formly/field/checklist/checklist.item.field.module.d.ts +1 -1
  84. package/lib/formly/field/component/component.field.component.d.ts +3 -3
  85. package/lib/formly/field/component/component.field.module.d.ts +1 -1
  86. package/lib/formly/field/selection/pickable/pickable.field.directive.d.ts +8 -3
  87. package/lib/formly/field/selection/pickable/pickable.field.module.d.ts +1 -1
  88. package/lib/formly/field/selection/pickable/pickable.list.field.component.d.ts +8 -6
  89. package/lib/formly/field/selection/searchable/searchable.chip.field.component.d.ts +2 -1
  90. package/lib/formly/field/selection/searchable/searchable.d.ts +3 -3
  91. package/lib/formly/field/selection/searchable/searchable.field.autocomplete.item.component.d.ts +2 -2
  92. package/lib/formly/field/selection/searchable/searchable.field.directive.d.ts +4 -4
  93. package/lib/formly/field/selection/searchable/searchable.field.module.d.ts +1 -1
  94. package/lib/formly/field/value/array/array.field.component.d.ts +2 -2
  95. package/lib/formly/field/value/date/datetime.field.component.d.ts +1 -1
  96. package/lib/formly/field/value/text/text.additional.field.d.ts +1 -1
  97. package/lib/formly/field/value/text/text.field.d.ts +2 -0
  98. package/lib/formly/field/wrapper/form.wrapper.module.d.ts +9 -8
  99. package/lib/formly/field/wrapper/index.d.ts +1 -0
  100. package/lib/formly/field/wrapper/style.wrapper.component.d.ts +3 -3
  101. package/lib/formly/field/wrapper/working.wrapper.component.d.ts +22 -0
  102. package/lib/formly/field/wrapper/wrapper.d.ts +3 -0
  103. package/lib/formly/formly.context.d.ts +1 -1
  104. package/lib/formly/index.d.ts +1 -0
  105. package/lib/formly/template/available.d.ts +7 -0
  106. package/lib/formly/template/index.d.ts +2 -0
  107. package/lib/formly/template/login.d.ts +59 -0
  108. package/lib/validator/available.d.ts +30 -0
  109. package/lib/validator/field.d.ts +32 -0
  110. package/lib/validator/index.d.ts +2 -0
  111. package/package.json +5 -31
  112. package/lib/formly/field/fields_TODO.scss +0 -4
  113. package/lib/formly/form_TODO.scss +0 -153
@@ -0,0 +1,32 @@
1
+ import { first, switchMap } from 'rxjs/operators';
2
+ import { map, of, catchError } from 'rxjs';
3
+ import { asyncPusherCache } from '@dereekb/rxjs';
4
+ export const FIELD_VALUE_IS_AVAILABLE_VALIDATION_KEY = 'fieldValueIsAvailable';
5
+ export const FIELD_VALUE_IS_AVAILABLE_ERROR_VALIDATION_KEY = 'fieldValueIsAvailableError';
6
+ /**
7
+ * Validator for validating all values within an object.
8
+ *
9
+ * This is useful for validating a control group where two or more values are expected to be the same, such as a password and a password verification field.
10
+ *
11
+ * @param config
12
+ * @returns
13
+ */
14
+ export function fieldValueIsAvailableValidator(config) {
15
+ const { throttle = 400, checkValueIsAvailable, message = 'This value is not available.' } = config;
16
+ const pusher = asyncPusherCache({
17
+ throttle
18
+ });
19
+ return (control) => pusher(control.valueChanges)(control.value).pipe(switchMap((x) => checkValueIsAvailable(x)), map((isAvailable) => {
20
+ if (isAvailable) {
21
+ return null;
22
+ }
23
+ else {
24
+ return {
25
+ [FIELD_VALUE_IS_AVAILABLE_VALIDATION_KEY]: { message }
26
+ };
27
+ }
28
+ }), catchError(() => of({
29
+ [FIELD_VALUE_IS_AVAILABLE_ERROR_VALIDATION_KEY]: { message: 'An error occured.' }
30
+ })), first());
31
+ }
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXZhaWxhYmxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWZvcm0vc3JjL2xpYi92YWxpZGF0b3IvYXZhaWxhYmxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEQsT0FBTyxFQUFFLEdBQUcsRUFBYyxFQUFFLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRXZELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVqRCxNQUFNLENBQUMsTUFBTSx1Q0FBdUMsR0FBRyx1QkFBdUIsQ0FBQztBQUMvRSxNQUFNLENBQUMsTUFBTSw2Q0FBNkMsR0FBRyw0QkFBNEIsQ0FBQztBQXlCMUY7Ozs7Ozs7R0FPRztBQUNILE1BQU0sVUFBVSw4QkFBOEIsQ0FBSSxNQUErQztJQUMvRixNQUFNLEVBQ0osUUFBUSxHQUFHLEdBQUcsRUFDZCxxQkFBcUIsRUFDckIsT0FBTyxHQUFHLDhCQUE4QixFQUN6QyxHQUFHLE1BQU0sQ0FBQztJQUVYLE1BQU0sTUFBTSxHQUFHLGdCQUFnQixDQUFJO1FBQ2pDLFFBQVE7S0FDVCxDQUFDLENBQUM7SUFFSCxPQUFPLENBQUMsT0FBd0IsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQyxPQUFPLENBQUMsS0FBVSxDQUFDLENBQUMsSUFBSSxDQUN4RixTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLHFCQUFxQixDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQzFDLEdBQUcsQ0FBQyxDQUFDLFdBQVcsRUFBRSxFQUFFO1FBQ2xCLElBQUksV0FBVyxFQUFFO1lBQ2YsT0FBTyxJQUFJLENBQUM7U0FDYjthQUFNO1lBQ0wsT0FBTztnQkFDTCxDQUFDLHVDQUF1QyxDQUFDLEVBQUUsRUFBRSxPQUFPLEVBQUU7YUFDdkQsQ0FBQztTQUNIO0lBQ0gsQ0FBQyxDQUFDLEVBQ0YsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQztRQUNsQixDQUFDLDZDQUE2QyxDQUFDLEVBQUUsRUFBRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUU7S0FDbEYsQ0FBQyxDQUFDLEVBQ0gsS0FBSyxFQUFFLENBQ1IsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBmaXJzdCwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgbWFwLCBPYnNlcnZhYmxlLCBvZiwgY2F0Y2hFcnJvciB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBBc3luY1ZhbGlkYXRvckZuIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XG5pbXBvcnQgeyBhc3luY1B1c2hlckNhY2hlIH0gZnJvbSAnQGRlcmVla2Ivcnhqcyc7XG5cbmV4cG9ydCBjb25zdCBGSUVMRF9WQUxVRV9JU19BVkFJTEFCTEVfVkFMSURBVElPTl9LRVkgPSAnZmllbGRWYWx1ZUlzQXZhaWxhYmxlJztcbmV4cG9ydCBjb25zdCBGSUVMRF9WQUxVRV9JU19BVkFJTEFCTEVfRVJST1JfVkFMSURBVElPTl9LRVkgPSAnZmllbGRWYWx1ZUlzQXZhaWxhYmxlRXJyb3InO1xuXG5leHBvcnQgdHlwZSBGaWVsZFZhbHVlSXNBdmFpbGFibGVWYWxpZGF0b3JGdW5jdGlvbjxUPiA9ICh2YWx1ZTogVCkgPT4gT2JzZXJ2YWJsZTxib29sZWFuPjtcblxuZXhwb3J0IGludGVyZmFjZSBGaWVsZFZhbHVlSXNBdmFpbGFibGVWYWxpZGF0b3JDb25maWc8VD4ge1xuXG4gIC8qKlxuICAgKiBIb3cgbG9uZyB0byB3YWl0IGluIGJldHdlZW4gdmFsdWUgY2hhbmdlcy5cbiAgICovXG4gIHRocm90dGxlPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBSZXR1cm5zIGFuIG9ic2VydmFibGUgdGhhdCBjaGVja3Mgd2hldGhlciBvciBub3QgdGhlIHZhbHVlIGlzIGN1cnJlbnRseSBhdmFpbGFibGUuXG4gICAqIFxuICAgKiBAcGFyYW0gdmFsdWUgXG4gICAqL1xuICByZWFkb25seSBjaGVja1ZhbHVlSXNBdmFpbGFibGU6IEZpZWxkVmFsdWVJc0F2YWlsYWJsZVZhbGlkYXRvckZ1bmN0aW9uPFQ+O1xuXG4gIC8qKlxuICAgKiBDdXN0b20gbWVzc2FnZSBmb3IgdGhpcyB2YWxpZGF0b3IuXG4gICAqL1xuICBtZXNzYWdlPzogc3RyaW5nO1xuXG59XG5cbi8qKlxuICogVmFsaWRhdG9yIGZvciB2YWxpZGF0aW5nIGFsbCB2YWx1ZXMgd2l0aGluIGFuIG9iamVjdC4gXG4gKiBcbiAqIFRoaXMgaXMgdXNlZnVsIGZvciB2YWxpZGF0aW5nIGEgY29udHJvbCBncm91cCB3aGVyZSB0d28gb3IgbW9yZSB2YWx1ZXMgYXJlIGV4cGVjdGVkIHRvIGJlIHRoZSBzYW1lLCBzdWNoIGFzIGEgcGFzc3dvcmQgYW5kIGEgcGFzc3dvcmQgdmVyaWZpY2F0aW9uIGZpZWxkLlxuICogXG4gKiBAcGFyYW0gY29uZmlnIFxuICogQHJldHVybnMgXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmaWVsZFZhbHVlSXNBdmFpbGFibGVWYWxpZGF0b3I8VD4oY29uZmlnOiBGaWVsZFZhbHVlSXNBdmFpbGFibGVWYWxpZGF0b3JDb25maWc8VD4pOiBBc3luY1ZhbGlkYXRvckZuIHtcbiAgY29uc3Qge1xuICAgIHRocm90dGxlID0gNDAwLFxuICAgIGNoZWNrVmFsdWVJc0F2YWlsYWJsZSxcbiAgICBtZXNzYWdlID0gJ1RoaXMgdmFsdWUgaXMgbm90IGF2YWlsYWJsZS4nXG4gIH0gPSBjb25maWc7XG5cbiAgY29uc3QgcHVzaGVyID0gYXN5bmNQdXNoZXJDYWNoZTxUPih7XG4gICAgdGhyb3R0bGVcbiAgfSk7XG5cbiAgcmV0dXJuIChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpID0+IHB1c2hlcihjb250cm9sLnZhbHVlQ2hhbmdlcykoY29udHJvbC52YWx1ZSBhcyBUKS5waXBlKFxuICAgIHN3aXRjaE1hcCgoeCkgPT4gY2hlY2tWYWx1ZUlzQXZhaWxhYmxlKHgpKSxcbiAgICBtYXAoKGlzQXZhaWxhYmxlKSA9PiB7XG4gICAgICBpZiAoaXNBdmFpbGFibGUpIHtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIFtGSUVMRF9WQUxVRV9JU19BVkFJTEFCTEVfVkFMSURBVElPTl9LRVldOiB7IG1lc3NhZ2UgfVxuICAgICAgICB9O1xuICAgICAgfVxuICAgIH0pLFxuICAgIGNhdGNoRXJyb3IoKCkgPT4gb2Yoe1xuICAgICAgW0ZJRUxEX1ZBTFVFX0lTX0FWQUlMQUJMRV9FUlJPUl9WQUxJREFUSU9OX0tFWV06IHsgbWVzc2FnZTogJ0FuIGVycm9yIG9jY3VyZWQuJyB9XG4gICAgfSkpLFxuICAgIGZpcnN0KClcbiAgKTtcbn1cbiJdfQ==
@@ -0,0 +1,31 @@
1
+ import { allObjectsAreEqual, KeyValueTypleValueFilter, valuesFromPOJO } from "@dereekb/util";
2
+ export const FIELD_VALUES_ARE_EQUAL_VALIDATION_KEY = 'fieldValuesAreEqual';
3
+ /**
4
+ * Validator for validating all values within an object.
5
+ *
6
+ * This is useful for validating a control group where two or more values are expected to be the same, such as a password and a password verification field.
7
+ *
8
+ * @param config
9
+ * @returns
10
+ */
11
+ export function fieldValuesAreEqualValidator(config = {}) {
12
+ const { keysFilter, valuesFilter: inputValuesFilter, isEqual = ((a, b) => a === b), message = 'Field values are not equal.' } = config;
13
+ const valuesFilter = inputValuesFilter ?? {
14
+ valueFilter: KeyValueTypleValueFilter.NONE,
15
+ keysFilter
16
+ };
17
+ return (control) => {
18
+ const object = control.value;
19
+ const values = valuesFromPOJO(object, valuesFilter);
20
+ const isValid = allObjectsAreEqual(values, isEqual);
21
+ if (isValid) {
22
+ return null;
23
+ }
24
+ else {
25
+ return {
26
+ [FIELD_VALUES_ARE_EQUAL_VALIDATION_KEY]: { message }
27
+ };
28
+ }
29
+ };
30
+ }
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtZm9ybS9zcmMvbGliL3ZhbGlkYXRvci9maWVsZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQXVCLGtCQUFrQixFQUFtQix3QkFBd0IsRUFBYSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFOUksTUFBTSxDQUFDLE1BQU0scUNBQXFDLEdBQUcscUJBQXFCLENBQUM7QUE0QjNFOzs7Ozs7O0dBT0c7QUFDSCxNQUFNLFVBQVUsNEJBQTRCLENBQXlCLFNBQWdELEVBQUU7SUFDckgsTUFBTSxFQUNKLFVBQVUsRUFDVixZQUFZLEVBQUUsaUJBQWlCLEVBQy9CLE9BQU8sR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUM3QixPQUFPLEdBQUcsNkJBQTZCLEVBQ3hDLEdBQUcsTUFBTSxDQUFDO0lBRVgsTUFBTSxZQUFZLEdBQWdDLGlCQUFpQixJQUFJO1FBQ3JFLFdBQVcsRUFBRSx3QkFBd0IsQ0FBQyxJQUFJO1FBQzFDLFVBQVU7S0FDWCxDQUFDO0lBRUYsT0FBTyxDQUFDLE9BQXdCLEVBQUUsRUFBRTtRQUNsQyxNQUFNLE1BQU0sR0FBaUIsT0FBTyxDQUFDLEtBQUssQ0FBQztRQUMzQyxNQUFNLE1BQU0sR0FBUSxjQUFjLENBQUMsTUFBTSxFQUFFLFlBQVksQ0FBQyxDQUFDO1FBQ3pELE1BQU0sT0FBTyxHQUFHLGtCQUFrQixDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQztRQUVwRCxJQUFJLE9BQU8sRUFBRTtZQUNYLE9BQU8sSUFBSSxDQUFDO1NBQ2I7YUFBTTtZQUNMLE9BQU87Z0JBQ0wsQ0FBQyxxQ0FBcUMsQ0FBQyxFQUFFLEVBQUUsT0FBTyxFQUFFO2FBQ3JELENBQUM7U0FDSDtJQUNILENBQUMsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIFZhbGlkYXRvckZuIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XG5pbXBvcnQgeyBLZXlWYWx1ZVR1cGxlRmlsdGVyLCBhbGxPYmplY3RzQXJlRXF1YWwsIElzRXF1YWxGdW5jdGlvbiwgS2V5VmFsdWVUeXBsZVZhbHVlRmlsdGVyLCBPYmplY3RNYXAsIHZhbHVlc0Zyb21QT0pPIH0gZnJvbSBcIkBkZXJlZWtiL3V0aWxcIjtcblxuZXhwb3J0IGNvbnN0IEZJRUxEX1ZBTFVFU19BUkVfRVFVQUxfVkFMSURBVElPTl9LRVkgPSAnZmllbGRWYWx1ZXNBcmVFcXVhbCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRmllbGRWYWx1ZXNBcmVFcXVhbFZhbGlkYXRvckNvbmZpZzxUIGV4dGVuZHMgb2JqZWN0ID0gYW55PiB7XG5cbiAgLyoqXG4gICAqIEtleXMgb2YgdGhlIHZhbHVlIHRvIG1hdGNoIG9uLiBcbiAgICogXG4gICAqIElmIG5vbmUgYXJlIGRlZmluZWQsIHRoZW4gYWxsIGZpZWxkcyBmcm9tIHRoZSBjb250cm9sIGFyZSBtYXRjaGVkLlxuICAgKi9cbiAga2V5c0ZpbHRlcj86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBGdWxsIGZpbHRlciB0byB1c2UsIGlmIGRlZmluZWQuXG4gICAqL1xuICB2YWx1ZXNGaWx0ZXI/OiBLZXlWYWx1ZVR1cGxlRmlsdGVyPFQsIGFueT47XG5cbiAgLyoqXG4gICAqIE9wdGlvbmFsIGVxdWl2YWxlbmNlIGNvbXBhcmF0b3IuXG4gICAqL1xuICBpc0VxdWFsPzogSXNFcXVhbEZ1bmN0aW9uPFQ+O1xuXG4gIC8qKlxuICAgKiBDdXN0b20gbWVzc2FnZSBmb3IgdGhpcyB2YWxpZGF0b3IuXG4gICAqL1xuICBtZXNzYWdlPzogc3RyaW5nO1xuXG59XG5cbi8qKlxuICogVmFsaWRhdG9yIGZvciB2YWxpZGF0aW5nIGFsbCB2YWx1ZXMgd2l0aGluIGFuIG9iamVjdC4gXG4gKiBcbiAqIFRoaXMgaXMgdXNlZnVsIGZvciB2YWxpZGF0aW5nIGEgY29udHJvbCBncm91cCB3aGVyZSB0d28gb3IgbW9yZSB2YWx1ZXMgYXJlIGV4cGVjdGVkIHRvIGJlIHRoZSBzYW1lLCBzdWNoIGFzIGEgcGFzc3dvcmQgYW5kIGEgcGFzc3dvcmQgdmVyaWZpY2F0aW9uIGZpZWxkLlxuICogXG4gKiBAcGFyYW0gY29uZmlnIFxuICogQHJldHVybnMgXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmaWVsZFZhbHVlc0FyZUVxdWFsVmFsaWRhdG9yPFQgZXh0ZW5kcyBvYmplY3QgPSBhbnk+KGNvbmZpZzogRmllbGRWYWx1ZXNBcmVFcXVhbFZhbGlkYXRvckNvbmZpZzxUPiA9IHt9KTogVmFsaWRhdG9yRm4ge1xuICBjb25zdCB7XG4gICAga2V5c0ZpbHRlcixcbiAgICB2YWx1ZXNGaWx0ZXI6IGlucHV0VmFsdWVzRmlsdGVyLFxuICAgIGlzRXF1YWwgPSAoKGEsIGIpID0+IGEgPT09IGIpLFxuICAgIG1lc3NhZ2UgPSAnRmllbGQgdmFsdWVzIGFyZSBub3QgZXF1YWwuJ1xuICB9ID0gY29uZmlnO1xuXG4gIGNvbnN0IHZhbHVlc0ZpbHRlcjogS2V5VmFsdWVUdXBsZUZpbHRlcjxULCBhbnk+ID0gaW5wdXRWYWx1ZXNGaWx0ZXIgPz8ge1xuICAgIHZhbHVlRmlsdGVyOiBLZXlWYWx1ZVR5cGxlVmFsdWVGaWx0ZXIuTk9ORSwgLy8ga2VlcCBhbGwgdmFsdWVzLiBOdWxsL3VuZGVmaW5lZCBzaG91bGQgYmUgcHJvY2Vzc2VkLlxuICAgIGtleXNGaWx0ZXJcbiAgfTtcblxuICByZXR1cm4gKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCkgPT4ge1xuICAgIGNvbnN0IG9iamVjdDogT2JqZWN0TWFwPFQ+ID0gY29udHJvbC52YWx1ZTtcbiAgICBjb25zdCB2YWx1ZXM6IFRbXSA9IHZhbHVlc0Zyb21QT0pPKG9iamVjdCwgdmFsdWVzRmlsdGVyKTtcbiAgICBjb25zdCBpc1ZhbGlkID0gYWxsT2JqZWN0c0FyZUVxdWFsKHZhbHVlcywgaXNFcXVhbCk7XG5cbiAgICBpZiAoaXNWYWxpZCkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIFtGSUVMRF9WQUxVRVNfQVJFX0VRVUFMX1ZBTElEQVRJT05fS0VZXTogeyBtZXNzYWdlIH1cbiAgICAgIH07XG4gICAgfVxuICB9O1xufVxuIl19
@@ -1,4 +1,6 @@
1
1
  export * from './boolean';
2
2
  export * from './email';
3
+ export * from './field';
3
4
  export * from './number';
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtZm9ybS9zcmMvbGliL3ZhbGlkYXRvci9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLFdBQVcsQ0FBQztBQUMxQixjQUFjLFNBQVMsQ0FBQztBQUN4QixjQUFjLFVBQVUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vYm9vbGVhbic7XG5leHBvcnQgKiBmcm9tICcuL2VtYWlsJztcbmV4cG9ydCAqIGZyb20gJy4vbnVtYmVyJztcbiJdfQ==
5
+ export * from './available';
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtZm9ybS9zcmMvbGliL3ZhbGlkYXRvci9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLFdBQVcsQ0FBQztBQUMxQixjQUFjLFNBQVMsQ0FBQztBQUN4QixjQUFjLFNBQVMsQ0FBQztBQUN4QixjQUFjLFVBQVUsQ0FBQztBQUN6QixjQUFjLGFBQWEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vYm9vbGVhbic7XG5leHBvcnQgKiBmcm9tICcuL2VtYWlsJztcbmV4cG9ydCAqIGZyb20gJy4vZmllbGQnO1xuZXhwb3J0ICogZnJvbSAnLi9udW1iZXInO1xuZXhwb3J0ICogZnJvbSAnLi9hdmFpbGFibGUnO1xuIl19