@websolutespa/bom-mixer-ui 1.2.2 → 1.3.0
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/CHANGELOG.md +7 -0
- package/dist/cjs/index.js +443 -211
- package/dist/cjs/index.js.map +1 -1
- package/dist/esm/accessibility/index.js +13 -0
- package/dist/esm/accessibility/index.js.map +1 -0
- package/dist/esm/components/breakpoint/breakpoint.js +2 -1
- package/dist/esm/components/breakpoint/breakpoint.js.map +1 -1
- package/dist/esm/components/media/media-image.js +6 -7
- package/dist/esm/components/media/media-image.js.map +1 -1
- package/dist/esm/components/media/media.js +15 -5
- package/dist/esm/components/media/media.js.map +1 -1
- package/dist/esm/fields/field-accept.js +22 -8
- package/dist/esm/fields/field-accept.js.map +1 -1
- package/dist/esm/fields/field-autocomplete.js +19 -13
- package/dist/esm/fields/field-autocomplete.js.map +1 -1
- package/dist/esm/fields/field-card.js +7 -4
- package/dist/esm/fields/field-card.js.map +1 -1
- package/dist/esm/fields/field-checkbox.js +7 -4
- package/dist/esm/fields/field-checkbox.js.map +1 -1
- package/dist/esm/fields/field-collection.js +44 -35
- package/dist/esm/fields/field-collection.js.map +1 -1
- package/dist/esm/fields/field-error.variants.js +8 -7
- package/dist/esm/fields/field-error.variants.js.map +1 -1
- package/dist/esm/fields/field-password.js +12 -6
- package/dist/esm/fields/field-password.js.map +1 -1
- package/dist/esm/fields/field-select.js +15 -8
- package/dist/esm/fields/field-select.js.map +1 -1
- package/dist/esm/fields/field-text.js +16 -8
- package/dist/esm/fields/field-text.js.map +1 -1
- package/dist/esm/fields/field-textarea.js +92 -0
- package/dist/esm/fields/field-textarea.js.map +1 -0
- package/dist/esm/fields/fields.js +5 -0
- package/dist/esm/fields/fields.js.map +1 -1
- package/dist/esm/forms/autocomplete/autocomplete.js +17 -11
- package/dist/esm/forms/autocomplete/autocomplete.js.map +1 -1
- package/dist/esm/forms/custom-select/custom-select-input.js +15 -13
- package/dist/esm/forms/custom-select/custom-select-input.js.map +1 -1
- package/dist/esm/forms/custom-select/custom-select.js +8 -5
- package/dist/esm/forms/custom-select/custom-select.js.map +1 -1
- package/dist/esm/forms/field/field.js +3 -2
- package/dist/esm/forms/field/field.js.map +1 -1
- package/dist/esm/forms/field/field.variants.js +24 -3
- package/dist/esm/forms/field/field.variants.js.map +1 -1
- package/dist/esm/forms/form/form.js +0 -22
- package/dist/esm/forms/form/form.js.map +1 -1
- package/dist/esm/forms/form-error/form-error.variants.js +14 -2
- package/dist/esm/forms/form-error/form-error.variants.js.map +1 -1
- package/dist/esm/forms/form-tester/form-tester.variants.js +1 -1
- package/dist/esm/forms/form-tester/form-tester.variants.js.map +1 -1
- package/dist/esm/forms/input/input.js +6 -2
- package/dist/esm/forms/input/input.js.map +1 -1
- package/dist/esm/forms/input/input.variants.js +4 -3
- package/dist/esm/forms/input/input.variants.js.map +1 -1
- package/dist/esm/forms/input-group/input-group.js +4 -3
- package/dist/esm/forms/input-group/input-group.js.map +1 -1
- package/dist/esm/forms/label/label.variants.js +3 -1
- package/dist/esm/forms/label/label.variants.js.map +1 -1
- package/dist/esm/forms/select/select.js +1 -1
- package/dist/esm/forms/select/select.js.map +1 -1
- package/dist/esm/forms/textarea/textarea.js +21 -3
- package/dist/esm/forms/textarea/textarea.js.map +1 -1
- package/dist/esm/forms/textarea/textarea.variants.js +1 -1
- package/dist/esm/forms/textarea/textarea.variants.js.map +1 -1
- package/dist/esm/forms/utils/utils.js +3 -2
- package/dist/esm/forms/utils/utils.js.map +1 -1
- package/dist/esm/index.js +2 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/layouts/layout-default/layout-default.js +2 -1
- package/dist/esm/layouts/layout-default/layout-default.js.map +1 -1
- package/dist/esm/lazy/carousel-1/carousel-1.js +1 -1
- package/dist/esm/lazy/carousel-1/carousel-1.js.map +1 -1
- package/dist/esm/lazy/download-1/download-1.js +1 -1
- package/dist/esm/lazy/download-1/download-1.js.map +1 -1
- package/dist/esm/lazy/lazy-loader/lazy-loader.js +11 -6
- package/dist/esm/lazy/lazy-loader/lazy-loader.js.map +1 -1
- package/dist/esm/lazy/media-full-1/media-full-1.js +1 -1
- package/dist/esm/lazy/media-full-1/media-full-1.js.map +1 -1
- package/dist/esm/lazy/media-full-2/media-full-2.js +1 -1
- package/dist/esm/lazy/media-full-2/media-full-2.js.map +1 -1
- package/dist/esm/lazy/media-media-1/media-media-1.js +1 -1
- package/dist/esm/lazy/media-media-1/media-media-1.js.map +1 -1
- package/dist/esm/lazy/related-1/related-1.js +1 -1
- package/dist/esm/lazy/related-1/related-1.js.map +1 -1
- package/dist/esm/lazy/sizes-colors-1/sizes-colors-1.js +1 -1
- package/dist/esm/lazy/sizes-colors-1/sizes-colors-1.js.map +1 -1
- package/dist/esm/lazy/text-1/text-1.js +1 -1
- package/dist/esm/lazy/text-1/text-1.js.map +1 -1
- package/dist/esm/lazy/text-aside-1/text-aside-1.js +1 -1
- package/dist/esm/lazy/text-aside-1/text-aside-1.js.map +1 -1
- package/dist/esm/lazy/text-media-1/text-media-1.js +1 -1
- package/dist/esm/lazy/text-media-1/text-media-1.js.map +1 -1
- package/dist/esm/lazy/text-text-1/text-text-1.js +1 -1
- package/dist/esm/lazy/text-text-1/text-text-1.js.map +1 -1
- package/dist/esm/sections/auth/auth-change-password.js +2 -1
- package/dist/esm/sections/auth/auth-change-password.js.map +1 -1
- package/dist/esm/sections/auth/auth-forgot.js +2 -1
- package/dist/esm/sections/auth/auth-forgot.js.map +1 -1
- package/dist/esm/sections/auth/auth-login.js +2 -1
- package/dist/esm/sections/auth/auth-login.js.map +1 -1
- package/dist/esm/sections/auth/auth-register.js +2 -1
- package/dist/esm/sections/auth/auth-register.js.map +1 -1
- package/dist/esm/sections/auth/auth-update.js +2 -1
- package/dist/esm/sections/auth/auth-update.js.map +1 -1
- package/dist/esm/sections/checkout/checkout-delivery.js +2 -1
- package/dist/esm/sections/checkout/checkout-delivery.js.map +1 -1
- package/dist/esm/sections/checkout/checkout-discount.js +2 -1
- package/dist/esm/sections/checkout/checkout-discount.js.map +1 -1
- package/dist/esm/sections/checkout/checkout-payment.js +2 -1
- package/dist/esm/sections/checkout/checkout-payment.js.map +1 -1
- package/dist/esm/sections/checkout/checkout-review.js +2 -1
- package/dist/esm/sections/checkout/checkout-review.js.map +1 -1
- package/dist/esm/sections/footer/footer.js +1 -0
- package/dist/esm/sections/footer/footer.js.map +1 -1
- package/dist/esm/sections/magazine-related/magazine-related.js +1 -1
- package/dist/esm/sections/magazine-related/magazine-related.js.map +1 -1
- package/dist/esm/sections/products-detail-download/products-detail-download.js +1 -1
- package/dist/esm/sections/products-detail-download/products-detail-download.js.map +1 -1
- package/dist/esm/sections/products-detail-related/products-detail-related.js +1 -1
- package/dist/esm/sections/products-detail-related/products-detail-related.js.map +1 -1
- package/dist/esm/sections/products-detail-size-color/products-detail-size-color.js +1 -1
- package/dist/esm/sections/products-detail-size-color/products-detail-size-color.js.map +1 -1
- package/dist/esm/sections/shop-detail-related/shop-detail-related.js +1 -1
- package/dist/esm/sections/shop-detail-related/shop-detail-related.js.map +1 -1
- package/dist/esm/theme/global.vars.js +34 -7
- package/dist/esm/theme/global.vars.js.map +1 -1
- package/dist/esm/theme/theme.json.js +26 -5
- package/dist/esm/theme/theme.json.js.map +1 -1
- package/dist/types/accessibility/index.d.ts +3 -0
- package/dist/types/accessibility/index.d.ts.map +1 -0
- package/dist/types/components/breakpoint/breakpoint.d.ts.map +1 -1
- package/dist/types/components/media/media-image.d.ts +1 -1
- package/dist/types/components/media/media-image.d.ts.map +1 -1
- package/dist/types/components/media/media.d.ts +17 -0
- package/dist/types/components/media/media.d.ts.map +1 -1
- package/dist/types/fields/field-accept.d.ts +2 -2
- package/dist/types/fields/field-accept.d.ts.map +1 -1
- package/dist/types/fields/field-autocomplete.d.ts +2 -2
- package/dist/types/fields/field-autocomplete.d.ts.map +1 -1
- package/dist/types/fields/field-card.d.ts +2 -2
- package/dist/types/fields/field-card.d.ts.map +1 -1
- package/dist/types/fields/field-checkbox.d.ts +2 -2
- package/dist/types/fields/field-checkbox.d.ts.map +1 -1
- package/dist/types/fields/field-collection.d.ts +4 -2
- package/dist/types/fields/field-collection.d.ts.map +1 -1
- package/dist/types/fields/field-error.variants.d.ts.map +1 -1
- package/dist/types/fields/field-password.d.ts +2 -2
- package/dist/types/fields/field-password.d.ts.map +1 -1
- package/dist/types/fields/field-select.d.ts +2 -2
- package/dist/types/fields/field-select.d.ts.map +1 -1
- package/dist/types/fields/field-text.d.ts +2 -2
- package/dist/types/fields/field-text.d.ts.map +1 -1
- package/dist/types/fields/field-textarea.d.ts +8 -0
- package/dist/types/fields/field-textarea.d.ts.map +1 -0
- package/dist/types/fields/fields.d.ts +1 -1
- package/dist/types/fields/fields.d.ts.map +1 -1
- package/dist/types/fields/index.d.ts +1 -0
- package/dist/types/fields/index.d.ts.map +1 -1
- package/dist/types/forms/autocomplete/autocomplete.d.ts.map +1 -1
- package/dist/types/forms/custom-select/custom-select-input.d.ts.map +1 -1
- package/dist/types/forms/custom-select/custom-select.d.ts.map +1 -1
- package/dist/types/forms/field/field.d.ts +2 -0
- package/dist/types/forms/field/field.d.ts.map +1 -1
- package/dist/types/forms/field/field.variants.d.ts.map +1 -1
- package/dist/types/forms/form/form.d.ts.map +1 -1
- package/dist/types/forms/form-error/form-error.variants.d.ts.map +1 -1
- package/dist/types/forms/input/input.d.ts.map +1 -1
- package/dist/types/forms/input/input.variants.d.ts.map +1 -1
- package/dist/types/forms/input-group/input-group.d.ts.map +1 -1
- package/dist/types/forms/label/label.variants.d.ts.map +1 -1
- package/dist/types/forms/textarea/textarea.d.ts.map +1 -1
- package/dist/types/forms/utils/utils.d.ts.map +1 -1
- package/dist/types/index.d.ts +1 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/lazy/carousel-1/carousel-1.d.ts +4 -8
- package/dist/types/lazy/carousel-1/carousel-1.d.ts.map +1 -1
- package/dist/types/lazy/download-1/download-1.d.ts +4 -8
- package/dist/types/lazy/download-1/download-1.d.ts.map +1 -1
- package/dist/types/lazy/lazy-loader/lazy-loader-client.d.ts +5 -2
- package/dist/types/lazy/lazy-loader/lazy-loader-client.d.ts.map +1 -1
- package/dist/types/lazy/lazy-loader/lazy-loader.d.ts +5 -3
- package/dist/types/lazy/lazy-loader/lazy-loader.d.ts.map +1 -1
- package/dist/types/lazy/media-full-1/media-full-1.d.ts +4 -8
- package/dist/types/lazy/media-full-1/media-full-1.d.ts.map +1 -1
- package/dist/types/lazy/media-full-2/media-full-2.d.ts +4 -8
- package/dist/types/lazy/media-full-2/media-full-2.d.ts.map +1 -1
- package/dist/types/lazy/media-media-1/media-media-1.d.ts +4 -7
- package/dist/types/lazy/media-media-1/media-media-1.d.ts.map +1 -1
- package/dist/types/lazy/not-found/not-found.d.ts +4 -8
- package/dist/types/lazy/not-found/not-found.d.ts.map +1 -1
- package/dist/types/lazy/related-1/related-1-card.d.ts +1 -2
- package/dist/types/lazy/related-1/related-1-card.d.ts.map +1 -1
- package/dist/types/lazy/related-1/related-1.d.ts +4 -8
- package/dist/types/lazy/related-1/related-1.d.ts.map +1 -1
- package/dist/types/lazy/sizes-colors-1/sizes-colors-1.d.ts +4 -7
- package/dist/types/lazy/sizes-colors-1/sizes-colors-1.d.ts.map +1 -1
- package/dist/types/lazy/text-1/text-1.d.ts +4 -7
- package/dist/types/lazy/text-1/text-1.d.ts.map +1 -1
- package/dist/types/lazy/text-aside-1/text-aside-1.d.ts +4 -8
- package/dist/types/lazy/text-aside-1/text-aside-1.d.ts.map +1 -1
- package/dist/types/lazy/text-media-1/text-media-1.d.ts +4 -8
- package/dist/types/lazy/text-media-1/text-media-1.d.ts.map +1 -1
- package/dist/types/lazy/text-text-1/text-text-1.d.ts +4 -8
- package/dist/types/lazy/text-text-1/text-text-1.d.ts.map +1 -1
- package/dist/types/sections/magazine-related/magazine-related.d.ts +4 -8
- package/dist/types/sections/magazine-related/magazine-related.d.ts.map +1 -1
- package/dist/types/sections/products-detail-download/products-detail-download.d.ts +6 -9
- package/dist/types/sections/products-detail-download/products-detail-download.d.ts.map +1 -1
- package/dist/types/sections/products-detail-related/products-detail-related.d.ts +6 -9
- package/dist/types/sections/products-detail-related/products-detail-related.d.ts.map +1 -1
- package/dist/types/sections/products-detail-size-color/products-detail-size-color.d.ts +6 -9
- package/dist/types/sections/products-detail-size-color/products-detail-size-color.d.ts.map +1 -1
- package/dist/types/sections/shop-detail-related/shop-detail-related.d.ts +6 -9
- package/dist/types/sections/shop-detail-related/shop-detail-related.d.ts.map +1 -1
- package/dist/types/theme/global.vars.d.ts.map +1 -1
- package/dist/types/theme/types.d.ts +11 -2
- package/dist/types/theme/types.d.ts.map +1 -1
- package/package.json +2 -1
- package/src/accessibility/index.ts +10 -0
- package/src/components/breakpoint/breakpoint.tsx +1 -0
- package/src/components/media/media-image.tsx +6 -3
- package/src/components/media/media.tsx +36 -13
- package/src/fields/field-accept.tsx +18 -8
- package/src/fields/field-autocomplete.tsx +15 -15
- package/src/fields/field-card.tsx +4 -8
- package/src/fields/field-checkbox.tsx +4 -8
- package/src/fields/field-collection.tsx +42 -27
- package/src/fields/field-error.variants.ts +8 -7
- package/src/fields/field-password.tsx +9 -9
- package/src/fields/field-select.tsx +12 -13
- package/src/fields/field-text.tsx +11 -12
- package/src/fields/field-textarea.tsx +62 -0
- package/src/fields/fields.tsx +3 -1
- package/src/fields/index.ts +1 -0
- package/src/forms/autocomplete/autocomplete.tsx +24 -10
- package/src/forms/custom-select/custom-select-input.tsx +16 -14
- package/src/forms/custom-select/custom-select.tsx +12 -5
- package/src/forms/field/field.tsx +4 -1
- package/src/forms/field/field.variants.ts +24 -3
- package/src/forms/form/form.tsx +0 -22
- package/src/forms/form-error/form-error.variants.ts +14 -2
- package/src/forms/form-tester/form-tester.variants.ts +1 -1
- package/src/forms/input/input.tsx +3 -1
- package/src/forms/input/input.variants.ts +4 -3
- package/src/forms/input-group/input-group.tsx +4 -3
- package/src/forms/label/label.variants.ts +3 -1
- package/src/forms/select/select.tsx +1 -1
- package/src/forms/textarea/textarea.tsx +19 -3
- package/src/forms/textarea/textarea.variants.ts +1 -1
- package/src/forms/utils/utils.tsx +3 -2
- package/src/index.ts +1 -0
- package/src/lazy/carousel-1/carousel-1.tsx +5 -10
- package/src/lazy/download-1/download-1.tsx +5 -10
- package/src/lazy/lazy-loader/lazy-loader-client.tsx +13 -17
- package/src/lazy/lazy-loader/lazy-loader.tsx +13 -9
- package/src/lazy/media-full-1/media-full-1.tsx +5 -10
- package/src/lazy/media-full-2/media-full-2.tsx +5 -10
- package/src/lazy/media-media-1/media-media-1.tsx +5 -9
- package/src/lazy/not-found/not-found.tsx +4 -9
- package/src/lazy/related-1/related-1-card.tsx +1 -1
- package/src/lazy/related-1/related-1.tsx +5 -9
- package/src/lazy/sizes-colors-1/sizes-colors-1.tsx +5 -9
- package/src/lazy/text-1/text-1.tsx +5 -9
- package/src/lazy/text-aside-1/text-aside-1.tsx +5 -10
- package/src/lazy/text-media-1/text-media-1.tsx +5 -10
- package/src/lazy/text-text-1/text-text-1.tsx +5 -10
- package/src/sections/footer/footer.tsx +1 -1
- package/src/sections/magazine-related/magazine-related.tsx +5 -10
- package/src/sections/products-detail-download/products-detail-download.tsx +5 -11
- package/src/sections/products-detail-related/products-detail-related.tsx +5 -11
- package/src/sections/products-detail-size-color/products-detail-size-color.tsx +5 -11
- package/src/sections/shop-detail-related/shop-detail-related.tsx +5 -11
- package/src/theme/global.vars.scss +34 -7
- package/src/theme/global.vars.ts +34 -7
- package/src/theme/theme.json +26 -5
- package/src/theme/types.ts +12 -2
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
|
|
2
2
|
import { FormGroup, FormArray } from '@websolutespa/bom-mixer-forms';
|
|
3
3
|
import { useLabel } from '@websolutespa/bom-mixer-hooks';
|
|
4
|
+
import { useMemo } from 'react';
|
|
5
|
+
import styled from 'styled-components';
|
|
4
6
|
import '../components/accordion/accordion.js';
|
|
5
7
|
import '../components/accordion/accordion-base.js';
|
|
6
8
|
import '../components/badge/badge.js';
|
|
@@ -50,71 +52,78 @@ import '../components/tabs/tabs.js';
|
|
|
50
52
|
import '../components/text/text.js';
|
|
51
53
|
import '../components/tooltip/tooltip.js';
|
|
52
54
|
import '../components/transition/transition.js';
|
|
53
|
-
import 'react';
|
|
54
|
-
import 'styled-components';
|
|
55
55
|
import '../components/css.js';
|
|
56
56
|
import { FIELDS } from './fields.js';
|
|
57
57
|
|
|
58
|
-
|
|
58
|
+
const StyledGrid = styled(Grid)`
|
|
59
|
+
flex-direction: column;
|
|
60
|
+
align-items: flex-start;
|
|
61
|
+
`;
|
|
62
|
+
function FieldCollection(_ref) {
|
|
63
|
+
let {
|
|
64
|
+
collection,
|
|
65
|
+
fields,
|
|
66
|
+
uid
|
|
67
|
+
} = _ref;
|
|
59
68
|
const label = useLabel();
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
69
|
+
const controls = useMemo(() => {
|
|
70
|
+
return collection instanceof FormGroup ? Object.keys(collection.controls).map(key => {
|
|
71
|
+
return {
|
|
72
|
+
key,
|
|
73
|
+
control: collection.controls[key]
|
|
74
|
+
};
|
|
75
|
+
}) : collection.controls.map((control, i) => {
|
|
76
|
+
return {
|
|
77
|
+
key: i,
|
|
78
|
+
control
|
|
79
|
+
};
|
|
80
|
+
});
|
|
81
|
+
}, [collection]);
|
|
82
|
+
const customFields = useMemo(() => {
|
|
83
|
+
return Object.assign(Object.assign({}, FIELDS), fields);
|
|
84
|
+
}, [fields]);
|
|
85
|
+
let uniqueId = uid || 0;
|
|
72
86
|
function resolveField(item) {
|
|
73
87
|
const {
|
|
74
88
|
control,
|
|
75
89
|
key
|
|
76
90
|
} = item;
|
|
77
|
-
++
|
|
91
|
+
++uniqueId;
|
|
78
92
|
if (control instanceof FormGroup || control instanceof FormArray) {
|
|
79
93
|
return jsx(FieldCollection, {
|
|
80
94
|
collection: control,
|
|
81
|
-
|
|
82
|
-
|
|
95
|
+
fields: fields,
|
|
96
|
+
uid: uniqueId
|
|
97
|
+
}, getFieldUID(uniqueId, control.name));
|
|
83
98
|
} else {
|
|
84
|
-
if (control.schema in
|
|
85
|
-
return
|
|
99
|
+
if (control.schema in customFields) {
|
|
100
|
+
return customFields[control.schema](control, uniqueId);
|
|
86
101
|
} else {
|
|
87
|
-
return
|
|
102
|
+
return customFields.text(control, uniqueId);
|
|
88
103
|
}
|
|
89
104
|
}
|
|
90
105
|
}
|
|
91
106
|
return jsxs(Fragment, {
|
|
92
|
-
children: [
|
|
107
|
+
children: [collection.label && jsx(Grid, {
|
|
93
108
|
xs: 12,
|
|
94
109
|
children: jsx(Divider, {
|
|
95
|
-
children: label(
|
|
110
|
+
children: label(collection.label)
|
|
96
111
|
})
|
|
97
|
-
}, getFieldUID(++
|
|
112
|
+
}, getFieldUID(++uniqueId, collection.name)), controls.length > 0 && controls.map(item => {
|
|
98
113
|
const control = item.control;
|
|
99
114
|
if (!control) {
|
|
100
115
|
return;
|
|
101
116
|
}
|
|
102
|
-
if (control
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
return;
|
|
106
|
-
}
|
|
117
|
+
if (control.state.hidden) {
|
|
118
|
+
return;
|
|
119
|
+
} else if (control instanceof FormGroup || control instanceof FormArray) {
|
|
107
120
|
return resolveField(item);
|
|
108
121
|
} else {
|
|
109
|
-
return jsx(
|
|
122
|
+
return jsx(StyledGrid, {
|
|
110
123
|
xs: 12,
|
|
111
124
|
sm: ['checkbox', 'accept'].includes(control.schema) ? 12 : 6,
|
|
112
|
-
style: {
|
|
113
|
-
flexDirection: 'column',
|
|
114
|
-
alignItems: 'flex-start'
|
|
115
|
-
},
|
|
116
125
|
children: resolveField(item)
|
|
117
|
-
}, getFieldUID(++
|
|
126
|
+
}, getFieldUID(++uniqueId, item.key));
|
|
118
127
|
}
|
|
119
128
|
})]
|
|
120
129
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"field-collection.js","sources":["../../../src/fields/field-collection.tsx"],"sourcesContent":["import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { FormArray, FormGroup } from '@websolutespa/bom-mixer-forms';\nimport { useLabel } from '@websolutespa/bom-mixer-hooks';\nimport { Divider, Grid } from '../components';\nimport { FIELDS } from './fields';\nexport function FieldCollection(
|
|
1
|
+
{"version":3,"file":"field-collection.js","sources":["../../../src/fields/field-collection.tsx"],"sourcesContent":["import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { FormArray, FormGroup } from '@websolutespa/bom-mixer-forms';\nimport { useLabel } from '@websolutespa/bom-mixer-hooks';\nimport { useMemo } from 'react';\nimport styled from 'styled-components';\nimport { Divider, Grid } from '../components';\nimport { FIELDS } from './fields';\nconst StyledGrid = styled(Grid) `\r\n flex-direction: column;\r\n align-items: flex-start;\r\n`;\nexport function FieldCollection({ collection, fields, uid }) {\n const label = useLabel();\n const controls = useMemo(() => {\n return (collection instanceof FormGroup) ?\n Object.keys(collection.controls).map(key => {\n return { key, control: collection.controls[key] };\n }) :\n collection.controls.map((control, i) => {\n return { key: i, control };\n });\n }, [collection]);\n const customFields = useMemo(() => {\n return Object.assign(Object.assign({}, FIELDS), fields);\n }, [fields]);\n let uniqueId = uid || 0;\n function resolveField(item) {\n const { control, key } = item;\n ++uniqueId;\n if (control instanceof FormGroup || control instanceof FormArray) {\n return _jsx(FieldCollection, { collection: control, fields: fields, uid: uniqueId }, getFieldUID(uniqueId, control.name));\n }\n else {\n if (control.schema in customFields) {\n return customFields[control.schema](control, uniqueId);\n }\n else {\n return customFields.text(control, uniqueId);\n }\n }\n }\n return (_jsxs(_Fragment, { children: [collection.label &&\n _jsx(Grid, { xs: 12, children: _jsx(Divider, { children: label(collection.label) }) }, getFieldUID(++uniqueId, collection.name)), controls.length > 0 && controls.map(item => {\n const control = item.control;\n if (!control) {\n return;\n }\n if (control.state.hidden) {\n return;\n }\n else if (control instanceof FormGroup || control instanceof FormArray) {\n return resolveField(item);\n }\n else {\n return _jsx(StyledGrid, { xs: 12, sm: ['checkbox', 'accept'].includes(control.schema) ? 12 : 6, children: resolveField(item) }, getFieldUID(++uniqueId, item.key));\n }\n })] }));\n}\nfunction getFieldUID(uid, key = 'none') {\n const fieldUID = `${++uid}-${key}`;\n return fieldUID;\n}\n//# sourceMappingURL=field-collection.js.map"],"names":["StyledGrid","styled","Grid","FieldCollection","_ref","collection","fields","uid","label","useLabel","controls","useMemo","FormGroup","Object","keys","map","key","control","i","customFields","assign","FIELDS","uniqueId","resolveField","item","FormArray","_jsx","getFieldUID","name","schema","text","_jsxs","_Fragment","children","xs","Divider","length","state","hidden","sm","includes","fieldUID"],"mappings":"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"}
|
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
import { css } from 'styled-components';
|
|
2
2
|
|
|
3
3
|
const CssFieldErrorDefault = css`
|
|
4
|
-
margin: 0.5em 0;
|
|
5
|
-
padding: 0.2em 0.
|
|
6
|
-
font-size: var(--
|
|
7
|
-
font-weight: 500;
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
4
|
+
margin: var(--form-error-margin, 0.5em 0);
|
|
5
|
+
padding: var(--form-error-padding, 0.2em 0.4em);
|
|
6
|
+
font-size: var(--form-error-font-size, 0.9rem);
|
|
7
|
+
font-weight: var(--form-error-font-weight, 500);
|
|
8
|
+
line-height: var(--form-error-line-height, 1.2);
|
|
9
|
+
border: var(--form-error-border, none);
|
|
10
|
+
background: var(--form-error-background-color, transparent);
|
|
11
|
+
color: var(--form-error-color, transparent);
|
|
11
12
|
`;
|
|
12
13
|
const fieldErrorVariants = {
|
|
13
14
|
default: CssFieldErrorDefault
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"field-error.variants.js","sources":["../../../src/fields/field-error.variants.ts"],"sourcesContent":["import { css } from 'styled-components';\nexport const CssFieldErrorDefault = css `\r\n margin: 0.5em 0;\r\n padding: 0.2em 0.
|
|
1
|
+
{"version":3,"file":"field-error.variants.js","sources":["../../../src/fields/field-error.variants.ts"],"sourcesContent":["import { css } from 'styled-components';\nexport const CssFieldErrorDefault = css `\r\n margin: var(--form-error-margin, 0.5em 0);\r\n padding: var(--form-error-padding, 0.2em 0.4em);\r\n font-size: var(--form-error-font-size, 0.9rem);\r\n font-weight: var(--form-error-font-weight, 500);\r\n line-height: var(--form-error-line-height, 1.2);\r\n border: var(--form-error-border, none);\r\n background: var(--form-error-background-color, transparent);\r\n color: var(--form-error-color, transparent);\r\n`;\nexport const fieldErrorVariants = {\n default: CssFieldErrorDefault,\n};\n//# sourceMappingURL=field-error.variants.js.map"],"names":["CssFieldErrorDefault","css","fieldErrorVariants","default"],"mappings":";;AACO,MAAMA,oBAAoB,GAAGC,GAAK,CAAA;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAC;AACM,MAAMC,kBAAkB,GAAG;AAC9BC,EAAAA,OAAO,EAAEH,oBAAAA;AACb;;;;"}
|
|
@@ -42,14 +42,18 @@ import '../forms/textarea/textarea.variants.js';
|
|
|
42
42
|
import '../forms/utils/utils.js';
|
|
43
43
|
import { FieldError } from './field-error.js';
|
|
44
44
|
|
|
45
|
-
function FieldPassword(
|
|
45
|
+
function FieldPassword(_ref) {
|
|
46
|
+
let {
|
|
47
|
+
control,
|
|
48
|
+
uid = 0
|
|
49
|
+
} = _ref;
|
|
46
50
|
const label = useLabel();
|
|
47
|
-
const uniqueName = `${
|
|
48
|
-
const [state, setValue, setTouched] = useControl(
|
|
51
|
+
const uniqueName = `${control.name}-${uid}`;
|
|
52
|
+
const [state, setValue, setTouched] = useControl(control);
|
|
49
53
|
const onChange = event => {
|
|
50
54
|
// console.log('FieldPassword', event.target.value);
|
|
51
55
|
setValue(event.target.value);
|
|
52
|
-
//
|
|
56
|
+
// control.value = event.target.value;
|
|
53
57
|
};
|
|
54
58
|
|
|
55
59
|
const [focus, setFocus] = useState(false);
|
|
@@ -68,13 +72,15 @@ function FieldPassword(props) {
|
|
|
68
72
|
type: "hidden",
|
|
69
73
|
value: state.value || ''
|
|
70
74
|
}) : jsxs(Field, {
|
|
75
|
+
state: state,
|
|
71
76
|
children: [jsx(Label, {
|
|
72
|
-
|
|
77
|
+
htmlFor: uniqueName,
|
|
78
|
+
children: control.label && label(control.label)
|
|
73
79
|
}), jsx(Input, {
|
|
74
80
|
id: uniqueName,
|
|
75
81
|
name: uniqueName,
|
|
76
82
|
type: type,
|
|
77
|
-
placeholder: label(
|
|
83
|
+
placeholder: label(control.placeholder || control.label || ''),
|
|
78
84
|
value: state.value || '',
|
|
79
85
|
onChange: onChange,
|
|
80
86
|
onBlur: onBlur,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"field-password.js","sources":["../../../src/fields/field-password.tsx"],"sourcesContent":["import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { useControl } from '@websolutespa/bom-mixer-forms';\nimport { useLabel } from '@websolutespa/bom-mixer-hooks';\nimport { IconEye } from '@websolutespa/bom-mixer-icons';\nimport { useState } from 'react';\nimport { Field, Input, Label } from '../forms';\nimport { FieldError } from './field-error';\nexport function FieldPassword(
|
|
1
|
+
{"version":3,"file":"field-password.js","sources":["../../../src/fields/field-password.tsx"],"sourcesContent":["import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { useControl } from '@websolutespa/bom-mixer-forms';\nimport { useLabel } from '@websolutespa/bom-mixer-hooks';\nimport { IconEye } from '@websolutespa/bom-mixer-icons';\nimport { useState } from 'react';\nimport { Field, Input, Label } from '../forms';\nimport { FieldError } from './field-error';\nexport function FieldPassword({ control, uid = 0 }) {\n const label = useLabel();\n const uniqueName = `${control.name}-${uid}`;\n const [state, setValue, setTouched] = useControl(control);\n const onChange = (event) => {\n // console.log('FieldPassword', event.target.value);\n setValue(event.target.value);\n // control.value = event.target.value;\n };\n const [focus, setFocus] = useState(false);\n const [type, setType] = useState('password');\n const onBlur = (_) => {\n setTouched();\n setFocus(false);\n };\n const onFocus = (_) => {\n setFocus(true);\n };\n const onToggle = () => {\n setType(type === 'password' ? 'text' : 'password');\n };\n return (state.flags.hidden ? (_jsx(\"input\", { type: \"hidden\", value: state.value || '' })) : (_jsxs(Field, { state: state, children: [_jsx(Label, { htmlFor: uniqueName, children: control.label && label(control.label) }), _jsx(Input, { id: uniqueName, name: uniqueName, type: type, placeholder: label(control.placeholder || control.label || ''), value: state.value || '', onChange: onChange, onBlur: onBlur, onFocus: onFocus, disabled: state.flags.disabled, readOnly: state.flags.readonly, width: \"100%\", after: _jsx(IconEye, { color: type === 'password' ? 'var(--color-neutral-400)' : 'var(--color-primary-500)', onClick: () => onToggle() }) }), _jsx(FieldError, { state: state })] })));\n}\n//# sourceMappingURL=field-password.js.map"],"names":["FieldPassword","_ref","control","uid","label","useLabel","uniqueName","name","state","setValue","setTouched","useControl","onChange","event","target","value","focus","setFocus","useState","type","setType","onBlur","_","onFocus","onToggle","flags","hidden","_jsx","_jsxs","Field","children","Label","htmlFor","Input","id","placeholder","disabled","readOnly","readonly","width","after","IconEye","color","onClick","FieldError"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOO,SAASA,aAAaA,CAAAC,IAAA,EAAuB;EAAA,IAAtB;IAAEC,OAAO;AAAEC,IAAAA,GAAG,GAAG,CAAA;AAAE,GAAC,GAAAF,IAAA,CAAA;AAC9C,EAAA,MAAMG,KAAK,GAAGC,QAAQ,EAAE,CAAA;EACxB,MAAMC,UAAU,GAAI,CAAEJ,EAAAA,OAAO,CAACK,IAAK,CAAA,CAAA,EAAGJ,GAAI,CAAC,CAAA,CAAA;EAC3C,MAAM,CAACK,KAAK,EAAEC,QAAQ,EAAEC,UAAU,CAAC,GAAGC,UAAU,CAACT,OAAO,CAAC,CAAA;EACzD,MAAMU,QAAQ,GAAIC,KAAK,IAAK;AACxB;AACAJ,IAAAA,QAAQ,CAACI,KAAK,CAACC,MAAM,CAACC,KAAK,CAAC,CAAA;AAC5B;GACH,CAAA;;EACD,MAAM,CAACC,KAAK,EAAEC,QAAQ,CAAC,GAAGC,QAAQ,CAAC,KAAK,CAAC,CAAA;EACzC,MAAM,CAACC,IAAI,EAAEC,OAAO,CAAC,GAAGF,QAAQ,CAAC,UAAU,CAAC,CAAA;EAC5C,MAAMG,MAAM,GAAIC,CAAC,IAAK;AAClBZ,IAAAA,UAAU,EAAE,CAAA;IACZO,QAAQ,CAAC,KAAK,CAAC,CAAA;GAClB,CAAA;EACD,MAAMM,OAAO,GAAID,CAAC,IAAK;IACnBL,QAAQ,CAAC,IAAI,CAAC,CAAA;GACjB,CAAA;EACD,MAAMO,QAAQ,GAAGA,MAAM;IACnBJ,OAAO,CAACD,IAAI,KAAK,UAAU,GAAG,MAAM,GAAG,UAAU,CAAC,CAAA;GACrD,CAAA;EACD,OAAQX,KAAK,CAACiB,KAAK,CAACC,MAAM,GAAIC,GAAI,CAAC,OAAO,EAAE;AAAER,IAAAA,IAAI,EAAE,QAAQ;AAAEJ,IAAAA,KAAK,EAAEP,KAAK,CAACO,KAAK,IAAI,EAAA;AAAG,GAAC,CAAC,GAAKa,IAAK,CAACC,KAAK,EAAE;AAAErB,IAAAA,KAAK,EAAEA,KAAK;AAAEsB,IAAAA,QAAQ,EAAE,CAACH,GAAI,CAACI,KAAK,EAAE;AAAEC,MAAAA,OAAO,EAAE1B,UAAU;MAAEwB,QAAQ,EAAE5B,OAAO,CAACE,KAAK,IAAIA,KAAK,CAACF,OAAO,CAACE,KAAK,CAAA;AAAE,KAAC,CAAC,EAAEuB,GAAI,CAACM,KAAK,EAAE;AAAEC,MAAAA,EAAE,EAAE5B,UAAU;AAAEC,MAAAA,IAAI,EAAED,UAAU;AAAEa,MAAAA,IAAI,EAAEA,IAAI;AAAEgB,MAAAA,WAAW,EAAE/B,KAAK,CAACF,OAAO,CAACiC,WAAW,IAAIjC,OAAO,CAACE,KAAK,IAAI,EAAE,CAAC;AAAEW,MAAAA,KAAK,EAAEP,KAAK,CAACO,KAAK,IAAI,EAAE;AAAEH,MAAAA,QAAQ,EAAEA,QAAQ;AAAES,MAAAA,MAAM,EAAEA,MAAM;AAAEE,MAAAA,OAAO,EAAEA,OAAO;AAAEa,MAAAA,QAAQ,EAAE5B,KAAK,CAACiB,KAAK,CAACW,QAAQ;AAAEC,MAAAA,QAAQ,EAAE7B,KAAK,CAACiB,KAAK,CAACa,QAAQ;AAAEC,MAAAA,KAAK,EAAE,MAAM;AAAEC,MAAAA,KAAK,EAAEb,GAAI,CAACc,OAAO,EAAE;AAAEC,QAAAA,KAAK,EAAEvB,IAAI,KAAK,UAAU,GAAG,0BAA0B,GAAG,0BAA0B;AAAEwB,QAAAA,OAAO,EAAEA,MAAMnB,QAAQ,EAAC;OAAG,CAAA;AAAE,KAAC,CAAC,EAAEG,GAAI,CAACiB,UAAU,EAAE;AAAEpC,MAAAA,KAAK,EAAEA,KAAAA;AAAM,KAAC,CAAC,CAAA;AAAE,GAAC,CAAE,CAAA;AACjrB;;;;"}
|
|
@@ -41,12 +41,16 @@ import '../forms/textarea/textarea.variants.js';
|
|
|
41
41
|
import '../forms/utils/utils.js';
|
|
42
42
|
import { FieldError } from './field-error.js';
|
|
43
43
|
|
|
44
|
-
function FieldSelect(
|
|
44
|
+
function FieldSelect(_ref) {
|
|
45
|
+
let {
|
|
46
|
+
control,
|
|
47
|
+
uid = 0
|
|
48
|
+
} = _ref;
|
|
45
49
|
const label = useLabel();
|
|
46
|
-
const uniqueName = `${
|
|
47
|
-
const [state, setValue, setTouched] = useControl(
|
|
50
|
+
const uniqueName = `${control.name}-${uid}`;
|
|
51
|
+
const [state, setValue, setTouched] = useControl(control);
|
|
48
52
|
const onChange = value => {
|
|
49
|
-
const valueOrValues = stringToValue(value,
|
|
53
|
+
const valueOrValues = stringToValue(value, control.options, control.optionsExtra);
|
|
50
54
|
setValue(valueOrValues);
|
|
51
55
|
};
|
|
52
56
|
const [focus, setFocus] = useState(false);
|
|
@@ -61,18 +65,21 @@ function FieldSelect(props) {
|
|
|
61
65
|
type: "hidden",
|
|
62
66
|
value: valueToString(state.value)
|
|
63
67
|
}) : jsxs(Field, {
|
|
64
|
-
|
|
65
|
-
|
|
68
|
+
state: state,
|
|
69
|
+
children: [jsx(Label, {
|
|
70
|
+
htmlFor: uniqueName,
|
|
71
|
+
children: control.label && label(control.label)
|
|
66
72
|
}), jsx(CustomSelect, {
|
|
67
73
|
id: uniqueName,
|
|
68
|
-
|
|
74
|
+
name: uniqueName,
|
|
75
|
+
placeholder: label(control.placeholder || control.label || ''),
|
|
69
76
|
value: valueToString(state.value),
|
|
70
77
|
onChange: onChange,
|
|
71
78
|
onBlur: onBlur,
|
|
72
79
|
onFocus: onFocus,
|
|
73
80
|
disabled: state.flags.disabled || state.flags.readonly,
|
|
74
81
|
width: "100%",
|
|
75
|
-
children:
|
|
82
|
+
children: control.options && control.options.map((option, i) => jsx(CustomSelect.Option, {
|
|
76
83
|
value: option.id.toString(),
|
|
77
84
|
children: option.name
|
|
78
85
|
}, i))
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"field-select.js","sources":["../../../src/fields/field-select.tsx"],"sourcesContent":["import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { stringToValue, useControl, valueToString } from '@websolutespa/bom-mixer-forms';\nimport { useLabel } from '@websolutespa/bom-mixer-hooks';\nimport { useState } from 'react';\nimport { CustomSelect, Field, Label } from '../forms';\nimport { FieldError } from './field-error';\nexport function FieldSelect(
|
|
1
|
+
{"version":3,"file":"field-select.js","sources":["../../../src/fields/field-select.tsx"],"sourcesContent":["import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { stringToValue, useControl, valueToString } from '@websolutespa/bom-mixer-forms';\nimport { useLabel } from '@websolutespa/bom-mixer-hooks';\nimport { useState } from 'react';\nimport { CustomSelect, Field, Label } from '../forms';\nimport { FieldError } from './field-error';\nexport function FieldSelect({ control, uid = 0 }) {\n const label = useLabel();\n const uniqueName = `${control.name}-${uid}`;\n const [state, setValue, setTouched] = useControl(control);\n const onChange = (value) => {\n const valueOrValues = stringToValue(value, control.options, control.optionsExtra);\n setValue(valueOrValues);\n };\n const [focus, setFocus] = useState(false);\n const onBlur = (_) => {\n setTouched();\n setFocus(false);\n };\n const onFocus = (_) => {\n setFocus(true);\n };\n return (state.flags.hidden ? (_jsx(\"input\", { type: \"hidden\", value: valueToString(state.value) })) : (_jsxs(Field, { state: state, children: [_jsx(Label, { htmlFor: uniqueName, children: control.label && label(control.label) }), _jsx(CustomSelect, { id: uniqueName, name: uniqueName, placeholder: label(control.placeholder || control.label || ''), value: valueToString(state.value), onChange: onChange, onBlur: onBlur, onFocus: onFocus, disabled: state.flags.disabled || state.flags.readonly, width: \"100%\", children: control.options && control.options.map((option, i) => (_jsx(CustomSelect.Option, { value: option.id.toString(), children: option.name }, i))) }), _jsx(FieldError, { state: state })] })));\n}\n//# sourceMappingURL=field-select.js.map"],"names":["FieldSelect","_ref","control","uid","label","useLabel","uniqueName","name","state","setValue","setTouched","useControl","onChange","value","valueOrValues","stringToValue","options","optionsExtra","focus","setFocus","useState","onBlur","_","onFocus","flags","hidden","_jsx","type","valueToString","_jsxs","Field","children","Label","htmlFor","CustomSelect","id","placeholder","disabled","readonly","width","map","option","i","Option","toString","FieldError"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMO,SAASA,WAAWA,CAAAC,IAAA,EAAuB;EAAA,IAAtB;IAAEC,OAAO;AAAEC,IAAAA,GAAG,GAAG,CAAA;AAAE,GAAC,GAAAF,IAAA,CAAA;AAC5C,EAAA,MAAMG,KAAK,GAAGC,QAAQ,EAAE,CAAA;EACxB,MAAMC,UAAU,GAAI,CAAEJ,EAAAA,OAAO,CAACK,IAAK,CAAA,CAAA,EAAGJ,GAAI,CAAC,CAAA,CAAA;EAC3C,MAAM,CAACK,KAAK,EAAEC,QAAQ,EAAEC,UAAU,CAAC,GAAGC,UAAU,CAACT,OAAO,CAAC,CAAA;EACzD,MAAMU,QAAQ,GAAIC,KAAK,IAAK;AACxB,IAAA,MAAMC,aAAa,GAAGC,aAAa,CAACF,KAAK,EAAEX,OAAO,CAACc,OAAO,EAAEd,OAAO,CAACe,YAAY,CAAC,CAAA;IACjFR,QAAQ,CAACK,aAAa,CAAC,CAAA;GAC1B,CAAA;EACD,MAAM,CAACI,KAAK,EAAEC,QAAQ,CAAC,GAAGC,QAAQ,CAAC,KAAK,CAAC,CAAA;EACzC,MAAMC,MAAM,GAAIC,CAAC,IAAK;AAClBZ,IAAAA,UAAU,EAAE,CAAA;IACZS,QAAQ,CAAC,KAAK,CAAC,CAAA;GAClB,CAAA;EACD,MAAMI,OAAO,GAAID,CAAC,IAAK;IACnBH,QAAQ,CAAC,IAAI,CAAC,CAAA;GACjB,CAAA;EACD,OAAQX,KAAK,CAACgB,KAAK,CAACC,MAAM,GAAIC,GAAI,CAAC,OAAO,EAAE;AAAEC,IAAAA,IAAI,EAAE,QAAQ;AAAEd,IAAAA,KAAK,EAAEe,aAAa,CAACpB,KAAK,CAACK,KAAK,CAAA;AAAE,GAAC,CAAC,GAAKgB,IAAK,CAACC,KAAK,EAAE;AAAEtB,IAAAA,KAAK,EAAEA,KAAK;AAAEuB,IAAAA,QAAQ,EAAE,CAACL,GAAI,CAACM,KAAK,EAAE;AAAEC,MAAAA,OAAO,EAAE3B,UAAU;MAAEyB,QAAQ,EAAE7B,OAAO,CAACE,KAAK,IAAIA,KAAK,CAACF,OAAO,CAACE,KAAK,CAAA;AAAE,KAAC,CAAC,EAAEsB,GAAI,CAACQ,YAAY,EAAE;AAAEC,MAAAA,EAAE,EAAE7B,UAAU;AAAEC,MAAAA,IAAI,EAAED,UAAU;AAAE8B,MAAAA,WAAW,EAAEhC,KAAK,CAACF,OAAO,CAACkC,WAAW,IAAIlC,OAAO,CAACE,KAAK,IAAI,EAAE,CAAC;AAAES,MAAAA,KAAK,EAAEe,aAAa,CAACpB,KAAK,CAACK,KAAK,CAAC;AAAED,MAAAA,QAAQ,EAAEA,QAAQ;AAAES,MAAAA,MAAM,EAAEA,MAAM;AAAEE,MAAAA,OAAO,EAAEA,OAAO;MAAEc,QAAQ,EAAE7B,KAAK,CAACgB,KAAK,CAACa,QAAQ,IAAI7B,KAAK,CAACgB,KAAK,CAACc,QAAQ;AAAEC,MAAAA,KAAK,EAAE,MAAM;MAAER,QAAQ,EAAE7B,OAAO,CAACc,OAAO,IAAId,OAAO,CAACc,OAAO,CAACwB,GAAG,CAAC,CAACC,MAAM,EAAEC,CAAC,KAAMhB,GAAI,CAACQ,YAAY,CAACS,MAAM,EAAE;AAAE9B,QAAAA,KAAK,EAAE4B,MAAM,CAACN,EAAE,CAACS,QAAQ,EAAE;QAAEb,QAAQ,EAAEU,MAAM,CAAClC,IAAAA;OAAM,EAAEmC,CAAC,CAAE,CAAA;AAAE,KAAC,CAAC,EAAEhB,GAAI,CAACmB,UAAU,EAAE;AAAErC,MAAAA,KAAK,EAAEA,KAAAA;AAAM,KAAC,CAAC,CAAA;AAAE,GAAC,CAAE,CAAA;AACpsB;;;;"}
|
|
@@ -41,14 +41,20 @@ import '../forms/textarea/textarea.variants.js';
|
|
|
41
41
|
import '../forms/utils/utils.js';
|
|
42
42
|
import { FieldError } from './field-error.js';
|
|
43
43
|
|
|
44
|
-
function FieldText(
|
|
44
|
+
function FieldText(_ref) {
|
|
45
|
+
let {
|
|
46
|
+
control,
|
|
47
|
+
uid = 0,
|
|
48
|
+
before,
|
|
49
|
+
after
|
|
50
|
+
} = _ref;
|
|
45
51
|
const label = useLabel();
|
|
46
|
-
const uniqueName = `${
|
|
47
|
-
const [state, setValue, setTouched] = useControl(
|
|
52
|
+
const uniqueName = `${control.name}-${uid}`;
|
|
53
|
+
const [state, setValue, setTouched] = useControl(control);
|
|
48
54
|
const onChange = event => {
|
|
49
55
|
// console.log('FieldText', event.target.value);
|
|
50
56
|
setValue(event.target.value);
|
|
51
|
-
//
|
|
57
|
+
// control.value = event.target.value;
|
|
52
58
|
};
|
|
53
59
|
|
|
54
60
|
const [focus, setFocus] = useState(false);
|
|
@@ -63,20 +69,22 @@ function FieldText(props) {
|
|
|
63
69
|
type: "hidden",
|
|
64
70
|
value: state.value || ''
|
|
65
71
|
}) : jsxs(Field, {
|
|
72
|
+
state: state,
|
|
66
73
|
children: [jsx(Label, {
|
|
67
|
-
|
|
74
|
+
htmlFor: uniqueName,
|
|
75
|
+
children: control.label && label(control.label)
|
|
68
76
|
}), jsx(Input, {
|
|
69
77
|
id: uniqueName,
|
|
70
78
|
name: uniqueName,
|
|
71
|
-
placeholder: label(
|
|
79
|
+
placeholder: label(control.placeholder || control.label || ''),
|
|
72
80
|
value: state.value || '',
|
|
73
81
|
onChange: onChange,
|
|
74
82
|
onBlur: onBlur,
|
|
75
83
|
onFocus: onFocus,
|
|
76
84
|
disabled: state.flags.disabled,
|
|
77
85
|
readOnly: state.flags.readonly,
|
|
78
|
-
before:
|
|
79
|
-
after:
|
|
86
|
+
before: before,
|
|
87
|
+
after: after,
|
|
80
88
|
width: "100%"
|
|
81
89
|
}), jsx(FieldError, {
|
|
82
90
|
state: state
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"field-text.js","sources":["../../../src/fields/field-text.tsx"],"sourcesContent":["import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { useControl } from '@websolutespa/bom-mixer-forms';\nimport { useLabel } from '@websolutespa/bom-mixer-hooks';\nimport { useState } from 'react';\nimport { Field, Input, Label } from '../forms';\nimport { FieldError } from './field-error';\nexport function FieldText(
|
|
1
|
+
{"version":3,"file":"field-text.js","sources":["../../../src/fields/field-text.tsx"],"sourcesContent":["import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { useControl } from '@websolutespa/bom-mixer-forms';\nimport { useLabel } from '@websolutespa/bom-mixer-hooks';\nimport { useState } from 'react';\nimport { Field, Input, Label } from '../forms';\nimport { FieldError } from './field-error';\nexport function FieldText({ control, uid = 0, before, after }) {\n const label = useLabel();\n const uniqueName = `${control.name}-${uid}`;\n const [state, setValue, setTouched] = useControl(control);\n const onChange = (event) => {\n // console.log('FieldText', event.target.value);\n setValue(event.target.value);\n // control.value = event.target.value;\n };\n const [focus, setFocus] = useState(false);\n const onBlur = (_) => {\n setTouched();\n setFocus(false);\n };\n const onFocus = (_) => {\n setFocus(true);\n };\n return (state.flags.hidden ? (_jsx(\"input\", { type: \"hidden\", value: state.value || '' })) : (_jsxs(Field, { state: state, children: [_jsx(Label, { htmlFor: uniqueName, children: control.label && label(control.label) }), _jsx(Input, { id: uniqueName, name: uniqueName, placeholder: label(control.placeholder || control.label || ''), value: state.value || '', onChange: onChange, onBlur: onBlur, onFocus: onFocus, disabled: state.flags.disabled, readOnly: state.flags.readonly, before: before, after: after, width: \"100%\" }), _jsx(FieldError, { state: state })] })));\n}\n//# sourceMappingURL=field-text.js.map"],"names":["FieldText","_ref","control","uid","before","after","label","useLabel","uniqueName","name","state","setValue","setTouched","useControl","onChange","event","target","value","focus","setFocus","useState","onBlur","_","onFocus","flags","hidden","_jsx","type","_jsxs","Field","children","Label","htmlFor","Input","id","placeholder","disabled","readOnly","readonly","width","FieldError"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMO,SAASA,SAASA,CAAAC,IAAA,EAAsC;EAAA,IAArC;IAAEC,OAAO;AAAEC,IAAAA,GAAG,GAAG,CAAC;IAAEC,MAAM;AAAEC,IAAAA,KAAAA;AAAM,GAAC,GAAAJ,IAAA,CAAA;AACzD,EAAA,MAAMK,KAAK,GAAGC,QAAQ,EAAE,CAAA;EACxB,MAAMC,UAAU,GAAI,CAAEN,EAAAA,OAAO,CAACO,IAAK,CAAA,CAAA,EAAGN,GAAI,CAAC,CAAA,CAAA;EAC3C,MAAM,CAACO,KAAK,EAAEC,QAAQ,EAAEC,UAAU,CAAC,GAAGC,UAAU,CAACX,OAAO,CAAC,CAAA;EACzD,MAAMY,QAAQ,GAAIC,KAAK,IAAK;AACxB;AACAJ,IAAAA,QAAQ,CAACI,KAAK,CAACC,MAAM,CAACC,KAAK,CAAC,CAAA;AAC5B;GACH,CAAA;;EACD,MAAM,CAACC,KAAK,EAAEC,QAAQ,CAAC,GAAGC,QAAQ,CAAC,KAAK,CAAC,CAAA;EACzC,MAAMC,MAAM,GAAIC,CAAC,IAAK;AAClBV,IAAAA,UAAU,EAAE,CAAA;IACZO,QAAQ,CAAC,KAAK,CAAC,CAAA;GAClB,CAAA;EACD,MAAMI,OAAO,GAAID,CAAC,IAAK;IACnBH,QAAQ,CAAC,IAAI,CAAC,CAAA;GACjB,CAAA;EACD,OAAQT,KAAK,CAACc,KAAK,CAACC,MAAM,GAAIC,GAAI,CAAC,OAAO,EAAE;AAAEC,IAAAA,IAAI,EAAE,QAAQ;AAAEV,IAAAA,KAAK,EAAEP,KAAK,CAACO,KAAK,IAAI,EAAA;AAAG,GAAC,CAAC,GAAKW,IAAK,CAACC,KAAK,EAAE;AAAEnB,IAAAA,KAAK,EAAEA,KAAK;AAAEoB,IAAAA,QAAQ,EAAE,CAACJ,GAAI,CAACK,KAAK,EAAE;AAAEC,MAAAA,OAAO,EAAExB,UAAU;MAAEsB,QAAQ,EAAE5B,OAAO,CAACI,KAAK,IAAIA,KAAK,CAACJ,OAAO,CAACI,KAAK,CAAA;AAAE,KAAC,CAAC,EAAEoB,GAAI,CAACO,KAAK,EAAE;AAAEC,MAAAA,EAAE,EAAE1B,UAAU;AAAEC,MAAAA,IAAI,EAAED,UAAU;AAAE2B,MAAAA,WAAW,EAAE7B,KAAK,CAACJ,OAAO,CAACiC,WAAW,IAAIjC,OAAO,CAACI,KAAK,IAAI,EAAE,CAAC;AAAEW,MAAAA,KAAK,EAAEP,KAAK,CAACO,KAAK,IAAI,EAAE;AAAEH,MAAAA,QAAQ,EAAEA,QAAQ;AAAEO,MAAAA,MAAM,EAAEA,MAAM;AAAEE,MAAAA,OAAO,EAAEA,OAAO;AAAEa,MAAAA,QAAQ,EAAE1B,KAAK,CAACc,KAAK,CAACY,QAAQ;AAAEC,MAAAA,QAAQ,EAAE3B,KAAK,CAACc,KAAK,CAACc,QAAQ;AAAElC,MAAAA,MAAM,EAAEA,MAAM;AAAEC,MAAAA,KAAK,EAAEA,KAAK;AAAEkC,MAAAA,KAAK,EAAE,MAAA;AAAO,KAAC,CAAC,EAAEb,GAAI,CAACc,UAAU,EAAE;AAAE9B,MAAAA,KAAK,EAAEA,KAAAA;AAAM,KAAC,CAAC,CAAA;AAAE,GAAC,CAAE,CAAA;AACxjB;;;;"}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
2
|
+
import { useControl } from '@websolutespa/bom-mixer-forms';
|
|
3
|
+
import { useLabel } from '@websolutespa/bom-mixer-hooks';
|
|
4
|
+
import { useState } from 'react';
|
|
5
|
+
import '../forms/autocomplete/autocomplete.js';
|
|
6
|
+
import '../forms/autocomplete/autocomplete.variants.js';
|
|
7
|
+
import '../forms/checkbox/checkbox.js';
|
|
8
|
+
import '../forms/checkbox/checkbox.variants.js';
|
|
9
|
+
import '../forms/custom-select/custom-select.js';
|
|
10
|
+
import { Field } from '../forms/field/field.js';
|
|
11
|
+
import '../forms/field/field.variants.js';
|
|
12
|
+
import '../forms/form-error/form-error.js';
|
|
13
|
+
import '../forms/form-error/form-error.variants.js';
|
|
14
|
+
import '../forms/form-tester/form-tester.js';
|
|
15
|
+
import '../forms/form-tester/form-tester.variants.js';
|
|
16
|
+
import '../forms/form-tester/useFormTester.js';
|
|
17
|
+
import '../forms/form/form.js';
|
|
18
|
+
import '../forms/input-group/input-group.js';
|
|
19
|
+
import '../forms/input/input.js';
|
|
20
|
+
import '../forms/input/input.variants.js';
|
|
21
|
+
import { Label } from '../forms/label/label.js';
|
|
22
|
+
import '../forms/label/label.variants.js';
|
|
23
|
+
import '../forms/radio-card/radio-card.js';
|
|
24
|
+
import '../forms/radio-card/radio-card-base.js';
|
|
25
|
+
import '../forms/radio-card/radio-card.variants.js';
|
|
26
|
+
import '../forms/radio-color/radio-color.js';
|
|
27
|
+
import '../forms/radio-color/radio-color-base.js';
|
|
28
|
+
import '../forms/radio-color/radio-color.variants.js';
|
|
29
|
+
import '../forms/radio-option/radio-option.js';
|
|
30
|
+
import '../forms/radio-option/radio-option-base.js';
|
|
31
|
+
import '../forms/radio-option/radio-option.variants.js';
|
|
32
|
+
import '../forms/radio/radio.js';
|
|
33
|
+
import '../forms/radio/radio-base.js';
|
|
34
|
+
import '../forms/radio/radio.variants.js';
|
|
35
|
+
import '../forms/rating/rating.js';
|
|
36
|
+
import '../forms/rating/rating.variants.js';
|
|
37
|
+
import '../forms/select/select.js';
|
|
38
|
+
import '../forms/select/select.variants.js';
|
|
39
|
+
import { TextArea } from '../forms/textarea/textarea.js';
|
|
40
|
+
import '../forms/textarea/textarea.variants.js';
|
|
41
|
+
import '../forms/utils/utils.js';
|
|
42
|
+
import { FieldError } from './field-error.js';
|
|
43
|
+
|
|
44
|
+
function FieldTextArea(_ref) {
|
|
45
|
+
let {
|
|
46
|
+
control,
|
|
47
|
+
uid = 0
|
|
48
|
+
} = _ref;
|
|
49
|
+
const label = useLabel();
|
|
50
|
+
const uniqueName = `${control.name}-${uid}`;
|
|
51
|
+
const [state, setValue, setTouched] = useControl(control);
|
|
52
|
+
const onChange = event => {
|
|
53
|
+
// console.log('FieldTextArea', event.target.value);
|
|
54
|
+
setValue(event.target.value);
|
|
55
|
+
// control.value = event.target.value;
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
const [focus, setFocus] = useState(false);
|
|
59
|
+
const onBlur = _ => {
|
|
60
|
+
setTouched();
|
|
61
|
+
setFocus(false);
|
|
62
|
+
};
|
|
63
|
+
const onFocus = _ => {
|
|
64
|
+
setFocus(true);
|
|
65
|
+
};
|
|
66
|
+
return state.flags.hidden ? jsx("input", {
|
|
67
|
+
type: "hidden",
|
|
68
|
+
value: state.value || ''
|
|
69
|
+
}) : jsxs(Field, {
|
|
70
|
+
state: state,
|
|
71
|
+
children: [jsx(Label, {
|
|
72
|
+
htmlFor: uniqueName,
|
|
73
|
+
children: control.label && label(control.label)
|
|
74
|
+
}), jsx(TextArea, {
|
|
75
|
+
id: uniqueName,
|
|
76
|
+
name: uniqueName,
|
|
77
|
+
placeholder: label(control.placeholder || control.label || ''),
|
|
78
|
+
value: state.value || '',
|
|
79
|
+
onChange: onChange,
|
|
80
|
+
onBlur: onBlur,
|
|
81
|
+
onFocus: onFocus,
|
|
82
|
+
disabled: state.flags.disabled,
|
|
83
|
+
readOnly: state.flags.readonly,
|
|
84
|
+
width: "100%"
|
|
85
|
+
}), jsx(FieldError, {
|
|
86
|
+
state: state
|
|
87
|
+
})]
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
export { FieldTextArea };
|
|
92
|
+
//# sourceMappingURL=field-textarea.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"field-textarea.js","sources":["../../../src/fields/field-textarea.tsx"],"sourcesContent":["import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { useControl } from '@websolutespa/bom-mixer-forms';\nimport { useLabel } from '@websolutespa/bom-mixer-hooks';\nimport { useState } from 'react';\nimport { Field, Label, TextArea } from '../forms';\nimport { FieldError } from './field-error';\nexport function FieldTextArea({ control, uid = 0 }) {\n const label = useLabel();\n const uniqueName = `${control.name}-${uid}`;\n const [state, setValue, setTouched] = useControl(control);\n const onChange = (event) => {\n // console.log('FieldTextArea', event.target.value);\n setValue(event.target.value);\n // control.value = event.target.value;\n };\n const [focus, setFocus] = useState(false);\n const onBlur = (_) => {\n setTouched();\n setFocus(false);\n };\n const onFocus = (_) => {\n setFocus(true);\n };\n return (state.flags.hidden ? (_jsx(\"input\", { type: \"hidden\", value: state.value || '' })) : (_jsxs(Field, { state: state, children: [_jsx(Label, { htmlFor: uniqueName, children: control.label && label(control.label) }), _jsx(TextArea, { id: uniqueName, name: uniqueName, placeholder: label(control.placeholder || control.label || ''), value: state.value || '', onChange: onChange, onBlur: onBlur, onFocus: onFocus, disabled: state.flags.disabled, readOnly: state.flags.readonly, width: \"100%\" }), _jsx(FieldError, { state: state })] })));\n}\n//# sourceMappingURL=field-textarea.js.map"],"names":["FieldTextArea","_ref","control","uid","label","useLabel","uniqueName","name","state","setValue","setTouched","useControl","onChange","event","target","value","focus","setFocus","useState","onBlur","_","onFocus","flags","hidden","_jsx","type","_jsxs","Field","children","Label","htmlFor","TextArea","id","placeholder","disabled","readOnly","readonly","width","FieldError"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMO,SAASA,aAAaA,CAAAC,IAAA,EAAuB;EAAA,IAAtB;IAAEC,OAAO;AAAEC,IAAAA,GAAG,GAAG,CAAA;AAAE,GAAC,GAAAF,IAAA,CAAA;AAC9C,EAAA,MAAMG,KAAK,GAAGC,QAAQ,EAAE,CAAA;EACxB,MAAMC,UAAU,GAAI,CAAEJ,EAAAA,OAAO,CAACK,IAAK,CAAA,CAAA,EAAGJ,GAAI,CAAC,CAAA,CAAA;EAC3C,MAAM,CAACK,KAAK,EAAEC,QAAQ,EAAEC,UAAU,CAAC,GAAGC,UAAU,CAACT,OAAO,CAAC,CAAA;EACzD,MAAMU,QAAQ,GAAIC,KAAK,IAAK;AACxB;AACAJ,IAAAA,QAAQ,CAACI,KAAK,CAACC,MAAM,CAACC,KAAK,CAAC,CAAA;AAC5B;GACH,CAAA;;EACD,MAAM,CAACC,KAAK,EAAEC,QAAQ,CAAC,GAAGC,QAAQ,CAAC,KAAK,CAAC,CAAA;EACzC,MAAMC,MAAM,GAAIC,CAAC,IAAK;AAClBV,IAAAA,UAAU,EAAE,CAAA;IACZO,QAAQ,CAAC,KAAK,CAAC,CAAA;GAClB,CAAA;EACD,MAAMI,OAAO,GAAID,CAAC,IAAK;IACnBH,QAAQ,CAAC,IAAI,CAAC,CAAA;GACjB,CAAA;EACD,OAAQT,KAAK,CAACc,KAAK,CAACC,MAAM,GAAIC,GAAI,CAAC,OAAO,EAAE;AAAEC,IAAAA,IAAI,EAAE,QAAQ;AAAEV,IAAAA,KAAK,EAAEP,KAAK,CAACO,KAAK,IAAI,EAAA;AAAG,GAAC,CAAC,GAAKW,IAAK,CAACC,KAAK,EAAE;AAAEnB,IAAAA,KAAK,EAAEA,KAAK;AAAEoB,IAAAA,QAAQ,EAAE,CAACJ,GAAI,CAACK,KAAK,EAAE;AAAEC,MAAAA,OAAO,EAAExB,UAAU;MAAEsB,QAAQ,EAAE1B,OAAO,CAACE,KAAK,IAAIA,KAAK,CAACF,OAAO,CAACE,KAAK,CAAA;AAAE,KAAC,CAAC,EAAEoB,GAAI,CAACO,QAAQ,EAAE;AAAEC,MAAAA,EAAE,EAAE1B,UAAU;AAAEC,MAAAA,IAAI,EAAED,UAAU;AAAE2B,MAAAA,WAAW,EAAE7B,KAAK,CAACF,OAAO,CAAC+B,WAAW,IAAI/B,OAAO,CAACE,KAAK,IAAI,EAAE,CAAC;AAAEW,MAAAA,KAAK,EAAEP,KAAK,CAACO,KAAK,IAAI,EAAE;AAAEH,MAAAA,QAAQ,EAAEA,QAAQ;AAAEO,MAAAA,MAAM,EAAEA,MAAM;AAAEE,MAAAA,OAAO,EAAEA,OAAO;AAAEa,MAAAA,QAAQ,EAAE1B,KAAK,CAACc,KAAK,CAACY,QAAQ;AAAEC,MAAAA,QAAQ,EAAE3B,KAAK,CAACc,KAAK,CAACc,QAAQ;AAAEC,MAAAA,KAAK,EAAE,MAAA;AAAO,KAAC,CAAC,EAAEb,GAAI,CAACc,UAAU,EAAE;AAAE9B,MAAAA,KAAK,EAAEA,KAAAA;AAAM,KAAC,CAAC,CAAA;AAAE,GAAC,CAAE,CAAA;AAC7hB;;;;"}
|
|
@@ -6,6 +6,7 @@ import { FieldCheckbox } from './field-checkbox.js';
|
|
|
6
6
|
import { FieldPassword } from './field-password.js';
|
|
7
7
|
import { FieldSelect } from './field-select.js';
|
|
8
8
|
import { FieldText } from './field-text.js';
|
|
9
|
+
import { FieldTextArea } from './field-textarea.js';
|
|
9
10
|
|
|
10
11
|
/*
|
|
11
12
|
* Here we define the types of form fields.
|
|
@@ -15,6 +16,10 @@ const FIELDS = {
|
|
|
15
16
|
control: control,
|
|
16
17
|
uid: uid
|
|
17
18
|
}, uid),
|
|
19
|
+
textarea: (control, uid) => jsx(FieldTextArea, {
|
|
20
|
+
control: control,
|
|
21
|
+
uid: uid
|
|
22
|
+
}, uid),
|
|
18
23
|
password: (control, uid) => jsx(FieldPassword, {
|
|
19
24
|
control: control,
|
|
20
25
|
uid: uid
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fields.js","sources":["../../../src/fields/fields.tsx"],"sourcesContent":["import { jsx as _jsx } from \"react/jsx-runtime\";\nimport { FieldAccept } from './field-accept';\nimport { FieldAutocomplete } from './field-autocomplete';\nimport { FieldCard } from './field-card';\nimport { FieldCheckbox } from './field-checkbox';\nimport { FieldPassword } from './field-password';\nimport { FieldSelect } from './field-select';\nimport { FieldText } from './field-text';\n/*\n * Here we define the types of form fields.\n*/\nexport const FIELDS = {\n text: (control, uid) => _jsx(FieldText, { control: control, uid: uid }, uid),\n password: (control, uid) => _jsx(FieldPassword, { control: control, uid: uid }, uid),\n select: (control, uid) => _jsx(FieldSelect, { control: control, uid: uid }, uid),\n autocomplete: (control, uid) => _jsx(FieldAutocomplete, { control: control, uid: uid }, uid),\n checkbox: (control, uid) => _jsx(FieldCheckbox, { control: control, uid: uid }, uid),\n radio: (control, uid) => _jsx(FieldCheckbox, { control: control, uid: uid }, uid),\n accept: (control, uid) => _jsx(FieldAccept, { control: control, uid: uid }, uid),\n card: (control, uid) => _jsx(FieldCard, { control: control, uid: uid }, uid),\n};\n//# sourceMappingURL=fields.js.map"],"names":["FIELDS","text","control","uid","_jsx","FieldText","password","FieldPassword","select","FieldSelect","autocomplete","FieldAutocomplete","checkbox","FieldCheckbox","radio","accept","FieldAccept","card","FieldCard"],"mappings":"
|
|
1
|
+
{"version":3,"file":"fields.js","sources":["../../../src/fields/fields.tsx"],"sourcesContent":["import { jsx as _jsx } from \"react/jsx-runtime\";\nimport { FieldAccept } from './field-accept';\nimport { FieldAutocomplete } from './field-autocomplete';\nimport { FieldCard } from './field-card';\nimport { FieldCheckbox } from './field-checkbox';\nimport { FieldPassword } from './field-password';\nimport { FieldSelect } from './field-select';\nimport { FieldText } from './field-text';\nimport { FieldTextArea } from './field-textarea';\n/*\n * Here we define the types of form fields.\n*/\nexport const FIELDS = {\n text: (control, uid) => _jsx(FieldText, { control: control, uid: uid }, uid),\n textarea: (control, uid) => _jsx(FieldTextArea, { control: control, uid: uid }, uid),\n password: (control, uid) => _jsx(FieldPassword, { control: control, uid: uid }, uid),\n select: (control, uid) => _jsx(FieldSelect, { control: control, uid: uid }, uid),\n autocomplete: (control, uid) => _jsx(FieldAutocomplete, { control: control, uid: uid }, uid),\n checkbox: (control, uid) => _jsx(FieldCheckbox, { control: control, uid: uid }, uid),\n radio: (control, uid) => _jsx(FieldCheckbox, { control: control, uid: uid }, uid),\n accept: (control, uid) => _jsx(FieldAccept, { control: control, uid: uid }, uid),\n card: (control, uid) => _jsx(FieldCard, { control: control, uid: uid }, uid),\n};\n//# sourceMappingURL=fields.js.map"],"names":["FIELDS","text","control","uid","_jsx","FieldText","textarea","FieldTextArea","password","FieldPassword","select","FieldSelect","autocomplete","FieldAutocomplete","checkbox","FieldCheckbox","radio","accept","FieldAccept","card","FieldCard"],"mappings":";;;;;;;;;;AASA;AACA;AACA;AACO,MAAMA,MAAM,GAAG;EAClBC,IAAI,EAAEA,CAACC,OAAO,EAAEC,GAAG,KAAKC,GAAI,CAACC,SAAS,EAAE;AAAEH,IAAAA,OAAO,EAAEA,OAAO;AAAEC,IAAAA,GAAG,EAAEA,GAAAA;GAAK,EAAEA,GAAG,CAAC;EAC5EG,QAAQ,EAAEA,CAACJ,OAAO,EAAEC,GAAG,KAAKC,GAAI,CAACG,aAAa,EAAE;AAAEL,IAAAA,OAAO,EAAEA,OAAO;AAAEC,IAAAA,GAAG,EAAEA,GAAAA;GAAK,EAAEA,GAAG,CAAC;EACpFK,QAAQ,EAAEA,CAACN,OAAO,EAAEC,GAAG,KAAKC,GAAI,CAACK,aAAa,EAAE;AAAEP,IAAAA,OAAO,EAAEA,OAAO;AAAEC,IAAAA,GAAG,EAAEA,GAAAA;GAAK,EAAEA,GAAG,CAAC;EACpFO,MAAM,EAAEA,CAACR,OAAO,EAAEC,GAAG,KAAKC,GAAI,CAACO,WAAW,EAAE;AAAET,IAAAA,OAAO,EAAEA,OAAO;AAAEC,IAAAA,GAAG,EAAEA,GAAAA;GAAK,EAAEA,GAAG,CAAC;EAChFS,YAAY,EAAEA,CAACV,OAAO,EAAEC,GAAG,KAAKC,GAAI,CAACS,iBAAiB,EAAE;AAAEX,IAAAA,OAAO,EAAEA,OAAO;AAAEC,IAAAA,GAAG,EAAEA,GAAAA;GAAK,EAAEA,GAAG,CAAC;EAC5FW,QAAQ,EAAEA,CAACZ,OAAO,EAAEC,GAAG,KAAKC,GAAI,CAACW,aAAa,EAAE;AAAEb,IAAAA,OAAO,EAAEA,OAAO;AAAEC,IAAAA,GAAG,EAAEA,GAAAA;GAAK,EAAEA,GAAG,CAAC;EACpFa,KAAK,EAAEA,CAACd,OAAO,EAAEC,GAAG,KAAKC,GAAI,CAACW,aAAa,EAAE;AAAEb,IAAAA,OAAO,EAAEA,OAAO;AAAEC,IAAAA,GAAG,EAAEA,GAAAA;GAAK,EAAEA,GAAG,CAAC;EACjFc,MAAM,EAAEA,CAACf,OAAO,EAAEC,GAAG,KAAKC,GAAI,CAACc,WAAW,EAAE;AAAEhB,IAAAA,OAAO,EAAEA,OAAO;AAAEC,IAAAA,GAAG,EAAEA,GAAAA;GAAK,EAAEA,GAAG,CAAC;EAChFgB,IAAI,EAAEA,CAACjB,OAAO,EAAEC,GAAG,KAAKC,GAAI,CAACgB,SAAS,EAAE;AAAElB,IAAAA,OAAO,EAAEA,OAAO;AAAEC,IAAAA,GAAG,EAAEA,GAAAA;AAAI,GAAC,EAAEA,GAAG,CAAA;AAC/E;;;;"}
|
|
@@ -12,9 +12,10 @@ import { autocompleteHighligth } from './autocomplete-highlight.js';
|
|
|
12
12
|
const StyledAutocompleteItem = styled.div`
|
|
13
13
|
display: block;
|
|
14
14
|
width: 100%;
|
|
15
|
-
padding: var(--form-padding);
|
|
16
|
-
font-size: var(--form-font-size);
|
|
17
|
-
|
|
15
|
+
padding: var(--form-control-padding);
|
|
16
|
+
font-size: var(--form-control-font-size);
|
|
17
|
+
font-weight: var(--form-control-font-weight);
|
|
18
|
+
line-height: var(--form-control-line-height);
|
|
18
19
|
color: inherit;
|
|
19
20
|
background-color: transparent;
|
|
20
21
|
border-color: var(--color-neutral-200);
|
|
@@ -59,8 +60,8 @@ const StyledAutocompleteContainer = styled.div`
|
|
|
59
60
|
&>.button {
|
|
60
61
|
line-height: inherit;
|
|
61
62
|
font-size: inherit;
|
|
62
|
-
padding-top: var(--form-padding);
|
|
63
|
-
padding-bottom: var(--form-padding);
|
|
63
|
+
padding-top: var(--form-control-padding);
|
|
64
|
+
padding-bottom: var(--form-control-padding);
|
|
64
65
|
margin: -2px;
|
|
65
66
|
}
|
|
66
67
|
|
|
@@ -81,16 +82,17 @@ const StyledAutocompleteContainer = styled.div`
|
|
|
81
82
|
const StyledAutocomplete = styled.div`
|
|
82
83
|
display: block;
|
|
83
84
|
appearance: none;
|
|
84
|
-
padding: var(--form-padding);
|
|
85
|
-
font-size: var(--form-font-size);
|
|
86
|
-
|
|
85
|
+
padding: var(--form-control-padding);
|
|
86
|
+
font-size: var(--form-control-font-size);
|
|
87
|
+
font-weight: var(--form-control-font-weight);
|
|
88
|
+
line-height: var(--form-control-line-height);
|
|
87
89
|
color: inherit;
|
|
88
90
|
background-color: transparent;
|
|
89
91
|
border: none;
|
|
90
92
|
outline: none;
|
|
91
93
|
|
|
92
94
|
&:not(:first-child) {
|
|
93
|
-
padding-left: calc(var(--form-padding) * 0.5);
|
|
95
|
+
padding-left: calc(var(--form-control-padding) * 0.5);
|
|
94
96
|
}
|
|
95
97
|
|
|
96
98
|
${props => getCssResponsive(props)}
|
|
@@ -105,9 +107,11 @@ const Autocomplete = /*#__PURE__*/forwardRef((_a, ref) => {
|
|
|
105
107
|
onFocus,
|
|
106
108
|
onBlur,
|
|
107
109
|
onDropdownVisibleChange = () => {},
|
|
108
|
-
onAutocomplete
|
|
110
|
+
onAutocomplete,
|
|
111
|
+
id,
|
|
112
|
+
name
|
|
109
113
|
} = _a,
|
|
110
|
-
props = __rest(_a, ["className", "initialValue", "before", "after", "source", "onFocus", "onBlur", "onDropdownVisibleChange", "onAutocomplete"]);
|
|
114
|
+
props = __rest(_a, ["className", "initialValue", "before", "after", "source", "onFocus", "onBlur", "onDropdownVisibleChange", "onAutocomplete", "id", "name"]);
|
|
111
115
|
const innerRef = useRef(null);
|
|
112
116
|
const dropdownRef = useRef(null);
|
|
113
117
|
useImperativeHandle(ref, () => innerRef.current);
|
|
@@ -191,6 +195,8 @@ const Autocomplete = /*#__PURE__*/forwardRef((_a, ref) => {
|
|
|
191
195
|
ref: innerRef,
|
|
192
196
|
as: "input",
|
|
193
197
|
type: "text",
|
|
198
|
+
id: id,
|
|
199
|
+
name: name,
|
|
194
200
|
onFocus: onFocus_,
|
|
195
201
|
onBlur: onBlur_,
|
|
196
202
|
onChange: onChange_
|