@adobe-commerce/aio-experience-kit 1.0.2 → 1.0.4
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 +117 -0
- package/README.md +590 -2
- package/dist/cjs/components/DataForm/ButtonContainer/index.js +158 -0
- package/dist/cjs/components/DataForm/ButtonContainer/index.js.map +1 -0
- package/dist/cjs/components/DataForm/FieldBuilder/index.js +3 -2
- package/dist/cjs/components/DataForm/FieldBuilder/index.js.map +1 -1
- package/dist/cjs/components/DataForm/FormBuilder/index.js +178 -65
- package/dist/cjs/components/DataForm/FormBuilder/index.js.map +1 -1
- package/dist/cjs/components/DataForm/FormBuilder/types.js.map +1 -1
- package/dist/cjs/components/DataForm/index.js +6 -3
- package/dist/cjs/components/DataForm/index.js.map +1 -1
- package/dist/cjs/components/DataTable/GridBuilder/index.js +72 -58
- package/dist/cjs/components/DataTable/GridBuilder/index.js.map +1 -1
- package/dist/cjs/components/DataTable/SearchBar/index.js +184 -0
- package/dist/cjs/components/DataTable/SearchBar/index.js.map +1 -0
- package/dist/cjs/components/DataTable/index.js +53 -33
- package/dist/cjs/components/DataTable/index.js.map +1 -1
- package/dist/cjs/components/DataTable/types.js.map +1 -1
- package/dist/cjs/components/FileUpload/index.js +12 -2
- package/dist/cjs/components/FileUpload/index.js.map +1 -1
- package/dist/esm/components/DataForm/ButtonContainer/index.js +154 -0
- package/dist/esm/components/DataForm/ButtonContainer/index.js.map +1 -0
- package/dist/esm/components/DataForm/FieldBuilder/index.js +3 -2
- package/dist/esm/components/DataForm/FieldBuilder/index.js.map +1 -1
- package/dist/esm/components/DataForm/FormBuilder/index.js +180 -67
- package/dist/esm/components/DataForm/FormBuilder/index.js.map +1 -1
- package/dist/esm/components/DataForm/FormBuilder/types.js.map +1 -1
- package/dist/esm/components/DataForm/index.js +7 -4
- package/dist/esm/components/DataForm/index.js.map +1 -1
- package/dist/esm/components/DataTable/GridBuilder/index.js +74 -60
- package/dist/esm/components/DataTable/GridBuilder/index.js.map +1 -1
- package/dist/esm/components/DataTable/SearchBar/index.js +180 -0
- package/dist/esm/components/DataTable/SearchBar/index.js.map +1 -0
- package/dist/esm/components/DataTable/index.js +53 -33
- package/dist/esm/components/DataTable/index.js.map +1 -1
- package/dist/esm/components/DataTable/types.js.map +1 -1
- package/dist/esm/components/FileUpload/index.js +13 -3
- package/dist/esm/components/FileUpload/index.js.map +1 -1
- package/dist/esm/types/components/DataForm/ButtonContainer/index.d.ts +12 -0
- package/dist/esm/types/components/DataForm/ButtonContainer/index.d.ts.map +1 -0
- package/dist/esm/types/components/DataForm/ButtonContainer/types.d.ts +82 -0
- package/dist/esm/types/components/DataForm/ButtonContainer/types.d.ts.map +1 -0
- package/dist/esm/types/components/DataForm/FieldBuilder/index.d.ts.map +1 -1
- package/dist/esm/types/components/DataForm/FormBuilder/index.d.ts.map +1 -1
- package/dist/esm/types/components/DataForm/FormBuilder/types.d.ts +40 -0
- package/dist/esm/types/components/DataForm/FormBuilder/types.d.ts.map +1 -1
- package/dist/esm/types/components/DataForm/index.d.ts.map +1 -1
- package/dist/esm/types/components/DataForm/types.d.ts +2 -0
- package/dist/esm/types/components/DataForm/types.d.ts.map +1 -1
- package/dist/esm/types/components/DataTable/GridBuilder/index.d.ts +1 -1
- package/dist/esm/types/components/DataTable/GridBuilder/index.d.ts.map +1 -1
- package/dist/esm/types/components/DataTable/GridBuilder/types.d.ts +1 -0
- package/dist/esm/types/components/DataTable/GridBuilder/types.d.ts.map +1 -1
- package/dist/esm/types/components/DataTable/SearchBar/index.d.ts +11 -0
- package/dist/esm/types/components/DataTable/SearchBar/index.d.ts.map +1 -0
- package/dist/esm/types/components/DataTable/index.d.ts +1 -1
- package/dist/esm/types/components/DataTable/index.d.ts.map +1 -1
- package/dist/esm/types/components/DataTable/types.d.ts +38 -0
- package/dist/esm/types/components/DataTable/types.d.ts.map +1 -1
- package/dist/esm/types/components/FileUpload/index.d.ts +2 -3
- package/dist/esm/types/components/FileUpload/index.d.ts.map +1 -1
- package/dist/esm/types/components/FileUpload/types.d.ts +14 -0
- package/dist/esm/types/components/FileUpload/types.d.ts.map +1 -1
- package/dist/esm/types/components/index.d.ts +2 -1
- package/dist/esm/types/components/index.d.ts.map +1 -1
- package/package.json +6 -6
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../../../src/components/DataForm/FieldBuilder/index.tsx"],"sourcesContent":["/**\n * <license header>\n */\n\nimport React, { useState } from 'react';\nimport {\n Picker,\n Item,\n TextField,\n View,\n Checkbox,\n CheckboxGroup,\n LabeledValue,\n Switch,\n Flex,\n} from '@adobe/react-spectrum';\nimport { FieldBuilderProps } from './types';\nimport { FieldType } from '../FormBuilder/types';\n\nconst FieldBuilder: React.FC<FieldBuilderProps> = ({\n field,\n editItem,\n onFieldChange,\n usePlaceholder = true,\n}) => {\n const envName = field.db_field + '-env';\n\n const [isChecked, setIsChecked] = useState<boolean>(editItem[envName] ?? false);\n const [value, setValue] = useState<any>(() => {\n const initialValue = editItem[field.db_field] ?? field.value;\n const defaultValue = initialValue ?? (field.type === FieldType.TOGGLE ? '0' : null);\n\n // Call onFieldChange for TOGGLE fields with default value\n if (field.type === FieldType.TOGGLE && !initialValue && defaultValue === '0') {\n // Use setTimeout to avoid calling during render\n setTimeout(async () => {\n await onFieldChange(field.code, field.db_field, '0');\n }, 0);\n }\n\n return defaultValue;\n });\n\n return (\n <View>\n {((): React.ReactElement => {\n switch (field.type) {\n case FieldType.SELECT:\n return (\n <View marginBottom={'size-100'}>\n <Picker\n key={field.code}\n label={field.label}\n items={field.options || []}\n isRequired={field.required ?? false}\n isDisabled={isChecked || (field.disabled ?? false)}\n contextualHelp={field.contextualHelp ?? null}\n defaultSelectedKey={value}\n width=\"100%\"\n onSelectionChange={async (value: any) => {\n setValue(value);\n await onFieldChange(field.code, field.db_field, value);\n }}\n >\n {item => <Item key={item.value}>{item.label}</Item>}\n </Picker>\n {field.use_env_var !== undefined && field.use_env_var ? (\n <Checkbox\n key={envName}\n name={envName}\n value={'1'}\n isRequired={false}\n defaultSelected={isChecked}\n onChange={async (checked: boolean) => {\n setIsChecked(checked);\n await onFieldChange(envName, envName, checked);\n }}\n >\n Use value as environment variable: {value}\n </Checkbox>\n ) : null}\n </View>\n );\n case FieldType.MULTISELECT:\n return (\n <View marginBottom={'size-100'}>\n <CheckboxGroup\n key={field.code}\n label={field.label}\n width={'size-6000'}\n isRequired={field.required ?? false}\n isDisabled={isChecked || (field.disabled ?? false)}\n contextualHelp={field.contextualHelp ?? null}\n value={Array.isArray(value) ? value : []}\n onChange={async (selectedValues: string[]) => {\n setValue(selectedValues);\n await onFieldChange(field.code, field.db_field, selectedValues);\n }}\n >\n <View\n borderWidth={'thin'}\n borderColor={'gray-600'}\n borderRadius={'medium'}\n padding={'size-100'}\n backgroundColor={'static-white'}\n >\n <View maxHeight={'size-2400'} overflow={'auto'}>\n {(field.options || []).map((option, index) => (\n <Checkbox\n key={`${field.code}-${index}`}\n width={'100%'}\n value={option.value}\n >\n {option.label}\n </Checkbox>\n ))}\n </View>\n </View>\n </CheckboxGroup>\n {field.use_env_var !== undefined && field.use_env_var ? (\n <Checkbox\n key={envName}\n name={envName}\n value={'1'}\n isRequired={false}\n defaultSelected={isChecked}\n onChange={async (checked: boolean) => {\n setIsChecked(checked);\n await onFieldChange(envName, envName, checked);\n }}\n >\n Use value as environment variable:{' '}\n {Array.isArray(value) ? value.join(', ') : value}\n </Checkbox>\n ) : null}\n </View>\n );\n case FieldType.TOGGLE:\n return (\n <View marginBottom={'size-100'}>\n <Flex gap=\"size-100\" alignItems=\"start\">\n <Switch\n key={field.code}\n isDisabled={isChecked || (field.disabled ?? false)}\n isSelected={value === '1'}\n onChange={async (selected: boolean) => {\n const toggleValue = selected ? '1' : '0';\n setValue(toggleValue);\n await onFieldChange(field.code, field.db_field, toggleValue);\n }}\n >\n {field.label}\n </Switch>\n {field.contextualHelp ?? null}\n </Flex>\n {field.use_env_var !== undefined && field.use_env_var ? (\n <Checkbox\n key={envName}\n name={envName}\n value={'1'}\n isRequired={false}\n defaultSelected={isChecked}\n onChange={async (checked: boolean) => {\n setIsChecked(checked);\n await onFieldChange(envName, envName, checked);\n }}\n >\n Use value as environment variable: {value}\n </Checkbox>\n ) : null}\n </View>\n );\n case FieldType.LABEL:\n return (\n <View marginBottom={'size-100'}>\n <LabeledValue\n key={field.code}\n label={field.label}\n value={value}\n contextualHelp={field.contextualHelp ?? null}\n />\n </View>\n );\n case FieldType.TEXT:\n case FieldType.EMAIL:\n case FieldType.PASSWORD:\n case FieldType.NUMBER:\n case FieldType.URL:\n case FieldType.TEL:\n case FieldType.SEARCH:\n default:\n return (\n <View marginBottom={'size-100'}>\n <TextField\n type={field.type}\n key={field.code}\n label={field.label}\n placeholder={usePlaceholder ? field.label : ''}\n isRequired={field.required ?? false}\n isDisabled={isChecked || (field.disabled ?? false)}\n defaultValue={value}\n contextualHelp={field.contextualHelp ?? null}\n width=\"100%\"\n onChange={async (value: any) => {\n setValue(value);\n await onFieldChange(field.code, field.db_field, value);\n }}\n />\n {field.use_env_var !== undefined && field.use_env_var ? (\n <Checkbox\n key={envName}\n name={envName}\n value={'1'}\n isRequired={false}\n defaultSelected={isChecked}\n onChange={async (checked: boolean) => {\n setIsChecked(checked);\n await onFieldChange(envName, envName, checked);\n }}\n >\n Use value as environment variable: {value}\n </Checkbox>\n ) : null}\n </View>\n );\n }\n })()}\n </View>\n );\n};\n\nexport default FieldBuilder;\n"],"names":["FieldBuilder","_ref","_editItem$envName","field","editItem","onFieldChange","_ref$usePlaceholder","usePlaceholder","envName","db_field","_useState","useState","_useState2","_slicedToArray","isChecked","setIsChecked","_useState3","_editItem$field$db_fi","initialValue","value","defaultValue","type","FieldType","TOGGLE","setTimeout","_asyncToGenerator","_regenerator","m","_callee","w","_context","n","code","a","_useState4","setValue","_jsx","View","children","_field$required","_field$disabled","_field$contextualHelp","_field$required2","_field$disabled2","_field$contextualHelp2","_field$disabled3","_field$contextualHelp3","_field$contextualHelp4","_field$required3","_field$disabled4","_field$contextualHelp5","SELECT","_jsxs","marginBottom","Picker","label","items","options","isRequired","required","isDisabled","disabled","contextualHelp","defaultSelectedKey","width","onSelectionChange","_onSelectionChange","_callee2","_context2","_x","apply","arguments","item","Item","use_env_var","undefined","Checkbox","name","defaultSelected","onChange","_onChange","_callee3","checked","_context3","_x2","MULTISELECT","CheckboxGroup","Array","isArray","_onChange2","_callee4","selectedValues","_context4","_x3","borderWidth","borderColor","borderRadius","padding","backgroundColor","maxHeight","overflow","map","option","index","concat","_onChange3","_callee5","_context5","_x4","join","Flex","gap","alignItems","Switch","isSelected","_onChange4","_callee6","selected","toggleValue","_context6","_x5","_onChange5","_callee7","_context7","_x6","LABEL","LabeledValue","TEXT","EMAIL","PASSWORD","NUMBER","URL","TEL","SEARCH","TextField","placeholder","_onChange6","_callee8","_context8","_x7","_onChange7","_callee9","_context9","_x8"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../../../src/components/DataForm/FieldBuilder/index.tsx"],"sourcesContent":["/**\n * <license header>\n */\n\nimport React, { useState } from 'react';\nimport {\n Picker,\n Item,\n TextField,\n View,\n Checkbox,\n CheckboxGroup,\n LabeledValue,\n Switch,\n Flex,\n} from '@adobe/react-spectrum';\nimport { FieldBuilderProps } from './types';\nimport { FieldType } from '../FormBuilder/types';\n\nconst FieldBuilder: React.FC<FieldBuilderProps> = ({\n field,\n editItem,\n onFieldChange,\n usePlaceholder = true,\n}) => {\n const envName = field.db_field + '-env';\n\n const [isChecked, setIsChecked] = useState<boolean>(editItem[envName] ?? false);\n const [value, setValue] = useState<any>(() => {\n const initialValue = editItem[field.db_field] ?? field.value;\n const defaultValue = initialValue ?? (field.type === FieldType.TOGGLE ? '0' : null);\n\n // Call onFieldChange for TOGGLE fields with default value\n if (field.type === FieldType.TOGGLE && !initialValue && defaultValue === '0') {\n // Use setTimeout to avoid calling during render\n setTimeout(async () => {\n await onFieldChange(field.code, field.db_field, '0');\n }, 0);\n }\n\n return defaultValue;\n });\n\n return (\n <View>\n {((): React.ReactElement => {\n switch (field.type) {\n case FieldType.SELECT:\n return (\n <View marginBottom={'size-100'}>\n <Picker\n key={field.code}\n label={field.label}\n items={field.options || []}\n isRequired={field.required ?? false}\n isDisabled={isChecked || (field.disabled ?? false)}\n contextualHelp={field.contextualHelp ?? null}\n defaultSelectedKey={value}\n width=\"100%\"\n onSelectionChange={async (value: any) => {\n setValue(value);\n await onFieldChange(field.code, field.db_field, value);\n }}\n >\n {(item: { value: string; label: string }) => (\n <Item key={item.value}>{item.label}</Item>\n )}\n </Picker>\n {field.use_env_var !== undefined && field.use_env_var ? (\n <Checkbox\n key={envName}\n name={envName}\n value={'1'}\n isRequired={false}\n defaultSelected={isChecked}\n onChange={async (checked: boolean) => {\n setIsChecked(checked);\n await onFieldChange(envName, envName, checked);\n }}\n >\n Use value as environment variable: {value}\n </Checkbox>\n ) : null}\n </View>\n );\n case FieldType.MULTISELECT:\n return (\n <View marginBottom={'size-100'}>\n <CheckboxGroup\n key={field.code}\n label={field.label}\n width={'size-6000'}\n isRequired={field.required ?? false}\n isDisabled={isChecked || (field.disabled ?? false)}\n contextualHelp={field.contextualHelp ?? null}\n value={Array.isArray(value) ? value : []}\n onChange={async (selectedValues: string[]) => {\n setValue(selectedValues);\n await onFieldChange(field.code, field.db_field, selectedValues);\n }}\n >\n <View\n borderWidth={'thin'}\n borderColor={'gray-600'}\n borderRadius={'medium'}\n padding={'size-100'}\n backgroundColor={'static-white'}\n >\n <View maxHeight={'size-2400'} overflow={'auto'}>\n {(field.options || []).map((option, index) => (\n <Checkbox\n key={`${field.code}-${index}`}\n width={'100%'}\n value={option.value}\n >\n {option.label}\n </Checkbox>\n ))}\n </View>\n </View>\n </CheckboxGroup>\n {field.use_env_var !== undefined && field.use_env_var ? (\n <Checkbox\n key={envName}\n name={envName}\n value={'1'}\n isRequired={false}\n defaultSelected={isChecked}\n onChange={async (checked: boolean) => {\n setIsChecked(checked);\n await onFieldChange(envName, envName, checked);\n }}\n >\n Use value as environment variable:{' '}\n {Array.isArray(value) ? value.join(', ') : value}\n </Checkbox>\n ) : null}\n </View>\n );\n case FieldType.TOGGLE:\n return (\n <View marginBottom={'size-100'}>\n <Flex gap=\"size-0\" alignItems=\"center\">\n <Switch\n key={field.code}\n isDisabled={isChecked || (field.disabled ?? false)}\n isSelected={value === '1'}\n marginEnd=\"size-0\"\n onChange={async (selected: boolean) => {\n const toggleValue = selected ? '1' : '0';\n setValue(toggleValue);\n await onFieldChange(field.code, field.db_field, toggleValue);\n }}\n >\n {field.label}\n </Switch>\n {field.contextualHelp ?? null}\n </Flex>\n {field.use_env_var !== undefined && field.use_env_var ? (\n <Checkbox\n key={envName}\n name={envName}\n value={'1'}\n isRequired={false}\n defaultSelected={isChecked}\n onChange={async (checked: boolean) => {\n setIsChecked(checked);\n await onFieldChange(envName, envName, checked);\n }}\n >\n Use value as environment variable: {value}\n </Checkbox>\n ) : null}\n </View>\n );\n case FieldType.LABEL:\n return (\n <View marginBottom={'size-100'}>\n <LabeledValue\n key={field.code}\n label={field.label}\n value={value}\n contextualHelp={field.contextualHelp ?? null}\n />\n </View>\n );\n case FieldType.TEXT:\n case FieldType.EMAIL:\n case FieldType.PASSWORD:\n case FieldType.NUMBER:\n case FieldType.URL:\n case FieldType.TEL:\n case FieldType.SEARCH:\n default:\n return (\n <View marginBottom={'size-100'}>\n <TextField\n type={field.type}\n key={field.code}\n label={field.label}\n placeholder={usePlaceholder ? field.label : ''}\n isRequired={field.required ?? false}\n isDisabled={isChecked || (field.disabled ?? false)}\n defaultValue={value}\n contextualHelp={field.contextualHelp ?? null}\n width=\"100%\"\n onChange={async (value: any) => {\n setValue(value);\n await onFieldChange(field.code, field.db_field, value);\n }}\n />\n {field.use_env_var !== undefined && field.use_env_var ? (\n <Checkbox\n key={envName}\n name={envName}\n value={'1'}\n isRequired={false}\n defaultSelected={isChecked}\n onChange={async (checked: boolean) => {\n setIsChecked(checked);\n await onFieldChange(envName, envName, checked);\n }}\n >\n Use value as environment variable: {value}\n </Checkbox>\n ) : null}\n </View>\n );\n }\n })()}\n </View>\n );\n};\n\nexport default FieldBuilder;\n"],"names":["FieldBuilder","_ref","_editItem$envName","field","editItem","onFieldChange","_ref$usePlaceholder","usePlaceholder","envName","db_field","_useState","useState","_useState2","_slicedToArray","isChecked","setIsChecked","_useState3","_editItem$field$db_fi","initialValue","value","defaultValue","type","FieldType","TOGGLE","setTimeout","_asyncToGenerator","_regenerator","m","_callee","w","_context","n","code","a","_useState4","setValue","_jsx","View","children","_field$required","_field$disabled","_field$contextualHelp","_field$required2","_field$disabled2","_field$contextualHelp2","_field$disabled3","_field$contextualHelp3","_field$contextualHelp4","_field$required3","_field$disabled4","_field$contextualHelp5","SELECT","_jsxs","marginBottom","Picker","label","items","options","isRequired","required","isDisabled","disabled","contextualHelp","defaultSelectedKey","width","onSelectionChange","_onSelectionChange","_callee2","_context2","_x","apply","arguments","item","Item","use_env_var","undefined","Checkbox","name","defaultSelected","onChange","_onChange","_callee3","checked","_context3","_x2","MULTISELECT","CheckboxGroup","Array","isArray","_onChange2","_callee4","selectedValues","_context4","_x3","borderWidth","borderColor","borderRadius","padding","backgroundColor","maxHeight","overflow","map","option","index","concat","_onChange3","_callee5","_context5","_x4","join","Flex","gap","alignItems","Switch","isSelected","marginEnd","_onChange4","_callee6","selected","toggleValue","_context6","_x5","_onChange5","_callee7","_context7","_x6","LABEL","LabeledValue","TEXT","EMAIL","PASSWORD","NUMBER","URL","TEL","SEARCH","TextField","placeholder","_onChange6","_callee8","_context8","_x7","_onChange7","_callee9","_context9","_x8"],"mappings":";;;;;;AAmBA,IAAMA,YAAY,GAAgC,SAA5CA,YAAYA,CAAAC,IAAA,EAKb;AAAA,EAAA,IAAAC,iBAAA;AAAA,EAAA,IAJHC,KAAK,GAAAF,IAAA,CAALE,KAAK;IACLC,QAAQ,GAAAH,IAAA,CAARG,QAAQ;IACRC,aAAa,GAAAJ,IAAA,CAAbI,aAAa;IAAAC,mBAAA,GAAAL,IAAA,CACbM,cAAc;AAAdA,IAAAA,cAAc,GAAAD,mBAAA,KAAA,MAAA,GAAG,IAAI,GAAAA,mBAAA;AAErB,EAAA,IAAME,OAAO,GAAGL,KAAK,CAACM,QAAQ,GAAG,MAAM;AAEvC,EAAA,IAAAC,SAAA,GAAkCC,QAAQ,CAAA,CAAAT,iBAAA,GAAUE,QAAQ,CAACI,OAAO,CAAC,cAAAN,iBAAA,KAAA,MAAA,GAAAA,iBAAA,GAAI,KAAK,CAAC;IAAAU,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAAxEI,IAAAA,SAAS,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,YAAY,GAAAH,UAAA,CAAA,CAAA,CAAA;AAC9B,EAAA,IAAAI,UAAA,GAA0BL,QAAQ,CAAM,YAAK;AAAA,MAAA,IAAAM,qBAAA;AAC3C,MAAA,IAAMC,YAAY,GAAA,CAAAD,qBAAA,GAAGb,QAAQ,CAACD,KAAK,CAACM,QAAQ,CAAC,cAAAQ,qBAAA,KAAA,MAAA,GAAAA,qBAAA,GAAId,KAAK,CAACgB,KAAK;AAC5D,MAAA,IAAMC,YAAY,GAAGF,YAAY,aAAZA,YAAY,KAAA,MAAA,GAAZA,YAAY,GAAKf,KAAK,CAACkB,IAAI,KAAKC,SAAS,CAACC,MAAM,GAAG,GAAG,GAAG,IAAK;AAEnF;AACA,MAAA,IAAIpB,KAAK,CAACkB,IAAI,KAAKC,SAAS,CAACC,MAAM,IAAI,CAACL,YAAY,IAAIE,YAAY,KAAK,GAAG,EAAE;AAC5E;QACAI,UAAU,cAAAC,iBAAA,cAAAC,YAAA,GAAAC,CAAA,CAAC,SAAAC,OAAAA,GAAA;AAAA,UAAA,OAAAF,YAAA,EAAA,CAAAG,CAAA,CAAA,UAAAC,QAAA,EAAA;YAAA,OAAA,CAAA,EAAA,QAAAA,QAAA,CAAAC,CAAA;AAAA,cAAA,KAAA,CAAA;AAAAD,gBAAAA,QAAA,CAAAC,CAAA,GAAA,CAAA;gBAAA,OACH1B,aAAa,CAACF,KAAK,CAAC6B,IAAI,EAAE7B,KAAK,CAACM,QAAQ,EAAE,GAAG,CAAC;AAAA,cAAA,KAAA,CAAA;gBAAA,OAAAqB,QAAA,CAAAG,CAAA,CAAA,CAAA,CAAA;AAAA;AAAA,UAAA,CAAA,EAAAL,OAAA,CAAA;QAAA,CACrD,CAAA,CAAA,EAAE,CAAC,CAAC;AACP,MAAA;AAEA,MAAA,OAAOR,YAAY;AACrB,IAAA,CAAC,CAAC;IAAAc,UAAA,GAAArB,cAAA,CAAAG,UAAA,EAAA,CAAA,CAAA;AAbKG,IAAAA,KAAK,GAAAe,UAAA,CAAA,CAAA,CAAA;AAAEC,IAAAA,QAAQ,GAAAD,UAAA,CAAA,CAAA,CAAA;EAetB,OACEE,GAAA,CAACC,IAAI,EAAA;IAAAC,QAAA,EACD,UAAAC,eAAA,EAAAC,eAAA,EAAAC,qBAAA,EAAAC,gBAAA,EAAAC,gBAAA,EAAAC,sBAAA,EAAAC,gBAAA,EAAAC,sBAAA,EAAAC,sBAAA,EAAAC,gBAAA,EAAAC,gBAAA,EAAAC,sBAAA,EAAyB;MACzB,QAAQ/C,KAAK,CAACkB,IAAI;QAChB,KAAKC,SAAS,CAAC6B,MAAM;UACnB,OACEC,IAAA,CAACf,IAAI,EAAA;AAACgB,YAAAA,YAAY,EAAE,UAAU;AAAAf,YAAAA,QAAA,EAAA,CAC5BF,GAAA,CAACkB,MAAM,EAAA;cAELC,KAAK,EAAEpD,KAAK,CAACoD,KAAK;AAClBC,cAAAA,KAAK,EAAErD,KAAK,CAACsD,OAAO,IAAI,EAAE;cAC1BC,UAAU,EAAA,CAAAnB,eAAA,GAAEpC,KAAK,CAACwD,QAAQ,MAAA,IAAA,IAAApB,eAAA,KAAA,MAAA,GAAAA,eAAA,GAAI,KAAK;AACnCqB,cAAAA,UAAU,EAAE9C,SAAS,KAAA,CAAA0B,eAAA,GAAKrC,KAAK,CAAC0D,QAAQ,MAAA,IAAA,IAAArB,eAAA,KAAA,MAAA,GAAAA,eAAA,GAAI,KAAK,CAAC;cAClDsB,cAAc,EAAA,CAAArB,qBAAA,GAAEtC,KAAK,CAAC2D,cAAc,MAAA,IAAA,IAAArB,qBAAA,KAAA,MAAA,GAAAA,qBAAA,GAAI,IAAI;AAC5CsB,cAAAA,kBAAkB,EAAE5C,KAAK;AACzB6C,cAAAA,KAAK,EAAC,MAAM;cACZC,iBAAiB,EAAA,YAAA;gBAAA,IAAAC,kBAAA,GAAAzC,iBAAA,cAAAC,YAAA,GAAAC,CAAA,CAAE,SAAAwC,QAAAA,CAAOhD,KAAU,EAAA;AAAA,kBAAA,OAAAO,YAAA,EAAA,CAAAG,CAAA,CAAA,UAAAuC,SAAA,EAAA;oBAAA,OAAA,CAAA,EAAA,QAAAA,SAAA,CAAArC,CAAA;AAAA,sBAAA,KAAA,CAAA;wBAClCI,QAAQ,CAAChB,KAAK,CAAC;AAACiD,wBAAAA,SAAA,CAAArC,CAAA,GAAA,CAAA;wBAAA,OACV1B,aAAa,CAACF,KAAK,CAAC6B,IAAI,EAAE7B,KAAK,CAACM,QAAQ,EAAEU,KAAK,CAAC;AAAA,sBAAA,KAAA,CAAA;wBAAA,OAAAiD,SAAA,CAAAnC,CAAA,CAAA,CAAA,CAAA;AAAA;AAAA,kBAAA,CAAA,EAAAkC,QAAA,CAAA;gBAAA,CACvD,CAAA,CAAA;gBAAA,SAHDF,iBAAiBA,CAAAI,EAAA,EAAA;AAAA,kBAAA,OAAAH,kBAAA,CAAAI,KAAA,CAAA,IAAA,EAAAC,SAAA,CAAA;AAAA,gBAAA;AAAA,gBAAA,OAAjBN,iBAAiB;cAAA,CAAA,EAGhB;AAAA3B,cAAAA,QAAA,EAEA,SAFAA,QAAAA,CAECkC,IAAsC,EAAA;gBAAA,OACtCpC,GAAA,CAACqC,IAAI,EAAA;kBAAAnC,QAAA,EAAmBkC,IAAI,CAACjB;AAAK,iBAAA,EAAvBiB,IAAI,CAACrD,KAAK,CAAqB;AAAA,cAAA;AAC3C,aAAA,EAfIhB,KAAK,CAAC6B,IAAI,CAgBR,EACR7B,KAAK,CAACuE,WAAW,KAAKC,SAAS,IAAIxE,KAAK,CAACuE,WAAW,GACnDtB,IAAA,CAACwB,QAAQ,EAAA;AAEPC,cAAAA,IAAI,EAAErE,OAAO;AACbW,cAAAA,KAAK,EAAE,GAAG;AACVuC,cAAAA,UAAU,EAAE,KAAK;AACjBoB,cAAAA,eAAe,EAAEhE,SAAS;cAC1BiE,QAAQ,EAAA,YAAA;gBAAA,IAAAC,SAAA,GAAAvD,iBAAA,cAAAC,YAAA,GAAAC,CAAA,CAAE,SAAAsD,QAAAA,CAAOC,OAAgB,EAAA;AAAA,kBAAA,OAAAxD,YAAA,EAAA,CAAAG,CAAA,CAAA,UAAAsD,SAAA,EAAA;oBAAA,OAAA,CAAA,EAAA,QAAAA,SAAA,CAAApD,CAAA;AAAA,sBAAA,KAAA,CAAA;wBAC/BhB,YAAY,CAACmE,OAAO,CAAC;AAACC,wBAAAA,SAAA,CAAApD,CAAA,GAAA,CAAA;AAAA,wBAAA,OAChB1B,aAAa,CAACG,OAAO,EAAEA,OAAO,EAAE0E,OAAO,CAAC;AAAA,sBAAA,KAAA,CAAA;wBAAA,OAAAC,SAAA,CAAAlD,CAAA,CAAA,CAAA,CAAA;AAAA;AAAA,kBAAA,CAAA,EAAAgD,QAAA,CAAA;gBAAA,CAC/C,CAAA,CAAA;gBAAA,SAHDF,QAAQA,CAAAK,GAAA,EAAA;AAAA,kBAAA,OAAAJ,SAAA,CAAAV,KAAA,CAAA,IAAA,EAAAC,SAAA,CAAA;AAAA,gBAAA;AAAA,gBAAA,OAARQ,QAAQ;cAAA,CAAA,EAGP;AAAAzC,cAAAA,QAAA,EAAA,CAAA,qCAAA,EAEmCnB,KAAK;AAAA,aAAA,EAVpCX,OAAO,CAWH,GACT,IAAI;AAAA,WAAA,CACH;QAEX,KAAKc,SAAS,CAAC+D,WAAW;UACxB,OACEjC,IAAA,CAACf,IAAI,EAAA;AAACgB,YAAAA,YAAY,EAAE,UAAU;AAAAf,YAAAA,QAAA,EAAA,CAC5BF,GAAA,CAACkD,aAAa,EAAA;cAEZ/B,KAAK,EAAEpD,KAAK,CAACoD,KAAK;AAClBS,cAAAA,KAAK,EAAE,WAAW;cAClBN,UAAU,EAAA,CAAAhB,gBAAA,GAAEvC,KAAK,CAACwD,QAAQ,MAAA,IAAA,IAAAjB,gBAAA,KAAA,MAAA,GAAAA,gBAAA,GAAI,KAAK;AACnCkB,cAAAA,UAAU,EAAE9C,SAAS,KAAA,CAAA6B,gBAAA,GAAKxC,KAAK,CAAC0D,QAAQ,MAAA,IAAA,IAAAlB,gBAAA,KAAA,MAAA,GAAAA,gBAAA,GAAI,KAAK,CAAC;cAClDmB,cAAc,EAAA,CAAAlB,sBAAA,GAAEzC,KAAK,CAAC2D,cAAc,MAAA,IAAA,IAAAlB,sBAAA,KAAA,MAAA,GAAAA,sBAAA,GAAI,IAAI;cAC5CzB,KAAK,EAAEoE,KAAK,CAACC,OAAO,CAACrE,KAAK,CAAC,GAAGA,KAAK,GAAG,EAAE;cACxC4D,QAAQ,EAAA,YAAA;gBAAA,IAAAU,UAAA,GAAAhE,iBAAA,cAAAC,YAAA,GAAAC,CAAA,CAAE,SAAA+D,QAAAA,CAAOC,cAAwB,EAAA;AAAA,kBAAA,OAAAjE,YAAA,EAAA,CAAAG,CAAA,CAAA,UAAA+D,SAAA,EAAA;oBAAA,OAAA,CAAA,EAAA,QAAAA,SAAA,CAAA7D,CAAA;AAAA,sBAAA,KAAA,CAAA;wBACvCI,QAAQ,CAACwD,cAAc,CAAC;AAACC,wBAAAA,SAAA,CAAA7D,CAAA,GAAA,CAAA;wBAAA,OACnB1B,aAAa,CAACF,KAAK,CAAC6B,IAAI,EAAE7B,KAAK,CAACM,QAAQ,EAAEkF,cAAc,CAAC;AAAA,sBAAA,KAAA,CAAA;wBAAA,OAAAC,SAAA,CAAA3D,CAAA,CAAA,CAAA,CAAA;AAAA;AAAA,kBAAA,CAAA,EAAAyD,QAAA,CAAA;gBAAA,CAChE,CAAA,CAAA;gBAAA,SAHDX,QAAQA,CAAAc,GAAA,EAAA;AAAA,kBAAA,OAAAJ,UAAA,CAAAnB,KAAA,CAAA,IAAA,EAAAC,SAAA,CAAA;AAAA,gBAAA;AAAA,gBAAA,OAARQ,QAAQ;cAAA,CAAA,EAGP;AAAAzC,cAAAA,QAAA,EAEDF,GAAA,CAACC,IAAI,EAAA;AACHyD,gBAAAA,WAAW,EAAE,MAAM;AACnBC,gBAAAA,WAAW,EAAE,UAAU;AACvBC,gBAAAA,YAAY,EAAE,QAAQ;AACtBC,gBAAAA,OAAO,EAAE,UAAU;AACnBC,gBAAAA,eAAe,EAAE,cAAc;AAAA5D,gBAAAA,QAAA,EAE/BF,GAAA,CAACC,IAAI,EAAA;AAAC8D,kBAAAA,SAAS,EAAE,WAAW;AAAEC,kBAAAA,QAAQ,EAAE,MAAM;AAAA9D,kBAAAA,QAAA,EAC3C,CAACnC,KAAK,CAACsD,OAAO,IAAI,EAAE,EAAE4C,GAAG,CAAC,UAACC,MAAM,EAAEC,KAAK,EAAA;oBAAA,OACvCnE,GAAA,CAACwC,QAAQ,EAAA;AAEPZ,sBAAAA,KAAK,EAAE,MAAM;sBACb7C,KAAK,EAAEmF,MAAM,CAACnF,KAAK;sBAAAmB,QAAA,EAElBgE,MAAM,CAAC/C;qBAAK,EAAA,EAAA,CAAAiD,MAAA,CAJLrG,KAAK,CAAC6B,IAAI,EAAA,GAAA,CAAA,CAAAwE,MAAA,CAAID,KAAK,CAAE,CAKpB;kBAAA,CACZ;iBAAC;eACG;AACF,aAAA,EA9BFpG,KAAK,CAAC6B,IAAI,CA+BD,EACf7B,KAAK,CAACuE,WAAW,KAAKC,SAAS,IAAIxE,KAAK,CAACuE,WAAW,GACnDtB,IAAA,CAACwB,QAAQ,EAAA;AAEPC,cAAAA,IAAI,EAAErE,OAAO;AACbW,cAAAA,KAAK,EAAE,GAAG;AACVuC,cAAAA,UAAU,EAAE,KAAK;AACjBoB,cAAAA,eAAe,EAAEhE,SAAS;cAC1BiE,QAAQ,EAAA,YAAA;gBAAA,IAAA0B,UAAA,GAAAhF,iBAAA,cAAAC,YAAA,GAAAC,CAAA,CAAE,SAAA+E,QAAAA,CAAOxB,OAAgB,EAAA;AAAA,kBAAA,OAAAxD,YAAA,EAAA,CAAAG,CAAA,CAAA,UAAA8E,SAAA,EAAA;oBAAA,OAAA,CAAA,EAAA,QAAAA,SAAA,CAAA5E,CAAA;AAAA,sBAAA,KAAA,CAAA;wBAC/BhB,YAAY,CAACmE,OAAO,CAAC;AAACyB,wBAAAA,SAAA,CAAA5E,CAAA,GAAA,CAAA;AAAA,wBAAA,OAChB1B,aAAa,CAACG,OAAO,EAAEA,OAAO,EAAE0E,OAAO,CAAC;AAAA,sBAAA,KAAA,CAAA;wBAAA,OAAAyB,SAAA,CAAA1E,CAAA,CAAA,CAAA,CAAA;AAAA;AAAA,kBAAA,CAAA,EAAAyE,QAAA,CAAA;gBAAA,CAC/C,CAAA,CAAA;gBAAA,SAHD3B,QAAQA,CAAA6B,GAAA,EAAA;AAAA,kBAAA,OAAAH,UAAA,CAAAnC,KAAA,CAAA,IAAA,EAAAC,SAAA,CAAA;AAAA,gBAAA;AAAA,gBAAA,OAARQ,QAAQ;cAAA,CAAA,EAGP;cAAAzC,QAAA,EAAA,CAAA,oCAAA,EAEkC,GAAG,EACrCiD,KAAK,CAACC,OAAO,CAACrE,KAAK,CAAC,GAAGA,KAAK,CAAC0F,IAAI,CAAC,IAAI,CAAC,GAAG1F,KAAK;eAX3CX,OAAO,CAYH,GACT,IAAI;AAAA,WAAA,CACH;QAEX,KAAKc,SAAS,CAACC,MAAM;UACnB,OACE6B,KAACf,IAAI,EAAA;AAACgB,YAAAA,YAAY,EAAE,UAAU;AAAAf,YAAAA,QAAA,EAAA,CAC5Bc,IAAA,CAAC0D,IAAI,EAAA;AAACC,cAAAA,GAAG,EAAC,QAAQ;AAACC,cAAAA,UAAU,EAAC,QAAQ;yBACpC5E,GAAA,CAAC6E,MAAM,EAAA;AAELrD,gBAAAA,UAAU,EAAE9C,SAAS,KAAA,CAAA+B,gBAAA,GAAK1C,KAAK,CAAC0D,QAAQ,MAAA,IAAA,IAAAhB,gBAAA,KAAA,MAAA,GAAAA,gBAAA,GAAI,KAAK,CAAC;gBAClDqE,UAAU,EAAE/F,KAAK,KAAK,GAAG;AACzBgG,gBAAAA,SAAS,EAAC,QAAQ;gBAClBpC,QAAQ,EAAA,YAAA;kBAAA,IAAAqC,UAAA,GAAA3F,iBAAA,cAAAC,YAAA,GAAAC,CAAA,CAAE,SAAA0F,QAAAA,CAAOC,QAAiB,EAAA;AAAA,oBAAA,IAAAC,WAAA;AAAA,oBAAA,OAAA7F,YAAA,EAAA,CAAAG,CAAA,CAAA,UAAA2F,SAAA,EAAA;sBAAA,OAAA,CAAA,EAAA,QAAAA,SAAA,CAAAzF,CAAA;AAAA,wBAAA,KAAA,CAAA;AAC1BwF,0BAAAA,WAAW,GAAGD,QAAQ,GAAG,GAAG,GAAG,GAAG;0BACxCnF,QAAQ,CAACoF,WAAW,CAAC;AAACC,0BAAAA,SAAA,CAAAzF,CAAA,GAAA,CAAA;0BAAA,OAChB1B,aAAa,CAACF,KAAK,CAAC6B,IAAI,EAAE7B,KAAK,CAACM,QAAQ,EAAE8G,WAAW,CAAC;AAAA,wBAAA,KAAA,CAAA;0BAAA,OAAAC,SAAA,CAAAvF,CAAA,CAAA,CAAA,CAAA;AAAA;AAAA,oBAAA,CAAA,EAAAoF,QAAA,CAAA;kBAAA,CAC7D,CAAA,CAAA;kBAAA,SAJDtC,QAAQA,CAAA0C,GAAA,EAAA;AAAA,oBAAA,OAAAL,UAAA,CAAA9C,KAAA,CAAA,IAAA,EAAAC,SAAA,CAAA;AAAA,kBAAA;AAAA,kBAAA,OAARQ,QAAQ;gBAAA,CAAA,EAIP;gBAAAzC,QAAA,EAEAnC,KAAK,CAACoD;AAAK,eAAA,EAVPpD,KAAK,CAAC6B,IAAI,CAWR,GAAAc,sBAAA,GACR3C,KAAK,CAAC2D,cAAc,MAAA,IAAA,IAAAhB,sBAAA,KAAA,MAAA,GAAAA,sBAAA,GAAI,IAAI;AAAA,aAAA,CACxB,EACN3C,KAAK,CAACuE,WAAW,KAAKC,SAAS,IAAIxE,KAAK,CAACuE,WAAW,GACnDtB,IAAA,CAACwB,QAAQ,EAAA;AAEPC,cAAAA,IAAI,EAAErE,OAAO;AACbW,cAAAA,KAAK,EAAE,GAAG;AACVuC,cAAAA,UAAU,EAAE,KAAK;AACjBoB,cAAAA,eAAe,EAAEhE,SAAS;cAC1BiE,QAAQ,EAAA,YAAA;gBAAA,IAAA2C,UAAA,GAAAjG,iBAAA,cAAAC,YAAA,GAAAC,CAAA,CAAE,SAAAgG,QAAAA,CAAOzC,OAAgB,EAAA;AAAA,kBAAA,OAAAxD,YAAA,EAAA,CAAAG,CAAA,CAAA,UAAA+F,SAAA,EAAA;oBAAA,OAAA,CAAA,EAAA,QAAAA,SAAA,CAAA7F,CAAA;AAAA,sBAAA,KAAA,CAAA;wBAC/BhB,YAAY,CAACmE,OAAO,CAAC;AAAC0C,wBAAAA,SAAA,CAAA7F,CAAA,GAAA,CAAA;AAAA,wBAAA,OAChB1B,aAAa,CAACG,OAAO,EAAEA,OAAO,EAAE0E,OAAO,CAAC;AAAA,sBAAA,KAAA,CAAA;wBAAA,OAAA0C,SAAA,CAAA3F,CAAA,CAAA,CAAA,CAAA;AAAA;AAAA,kBAAA,CAAA,EAAA0F,QAAA,CAAA;gBAAA,CAC/C,CAAA,CAAA;gBAAA,SAHD5C,QAAQA,CAAA8C,GAAA,EAAA;AAAA,kBAAA,OAAAH,UAAA,CAAApD,KAAA,CAAA,IAAA,EAAAC,SAAA,CAAA;AAAA,gBAAA;AAAA,gBAAA,OAARQ,QAAQ;cAAA,CAAA,EAGP;AAAAzC,cAAAA,QAAA,EAAA,CAAA,qCAAA,EAEmCnB,KAAK;AAAA,aAAA,EAVpCX,OAAO,CAWH,GACT,IAAI;AAAA,WAAA,CACH;QAEX,KAAKc,SAAS,CAACwG,KAAK;UAClB,OACE1F,GAAA,CAACC,IAAI,EAAA;AAACgB,YAAAA,YAAY,EAAE,UAAU;AAAAf,YAAAA,QAAA,EAC5BF,GAAA,CAAC2F,YAAY,EAAA;cAEXxE,KAAK,EAAEpD,KAAK,CAACoD,KAAK;AAClBpC,cAAAA,KAAK,EAAEA,KAAK;cACZ2C,cAAc,EAAA,CAAAf,sBAAA,GAAE5C,KAAK,CAAC2D,cAAc,MAAA,IAAA,IAAAf,sBAAA,KAAA,MAAA,GAAAA,sBAAA,GAAI;aAAI,EAHvC5C,KAAK,CAAC6B,IAAI;AAIf,WAAA,CACG;QAEX,KAAKV,SAAS,CAAC0G,IAAI;QACnB,KAAK1G,SAAS,CAAC2G,KAAK;QACpB,KAAK3G,SAAS,CAAC4G,QAAQ;QACvB,KAAK5G,SAAS,CAAC6G,MAAM;QACrB,KAAK7G,SAAS,CAAC8G,GAAG;QAClB,KAAK9G,SAAS,CAAC+G,GAAG;QAClB,KAAK/G,SAAS,CAACgH,MAAM;AACrB,QAAA;UACE,OACElF,IAAA,CAACf,IAAI,EAAA;AAACgB,YAAAA,YAAY,EAAE,UAAU;AAAAf,YAAAA,QAAA,EAAA,CAC5BF,GAAA,CAACmG,SAAS;cACRlH,IAAI,EAAElB,KAAK,CAACkB,IAAI;cAEhBkC,KAAK,EAAEpD,KAAK,CAACoD,KAAK;AAClBiF,cAAAA,WAAW,EAAEjI,cAAc,GAAGJ,KAAK,CAACoD,KAAK,GAAG,EAAE;cAC9CG,UAAU,EAAA,CAAAV,gBAAA,GAAE7C,KAAK,CAACwD,QAAQ,MAAA,IAAA,IAAAX,gBAAA,KAAA,MAAA,GAAAA,gBAAA,GAAI,KAAK;AACnCY,cAAAA,UAAU,EAAE9C,SAAS,KAAA,CAAAmC,gBAAA,GAAK9C,KAAK,CAAC0D,QAAQ,MAAA,IAAA,IAAAZ,gBAAA,KAAA,MAAA,GAAAA,gBAAA,GAAI,KAAK,CAAC;AAClD7B,cAAAA,YAAY,EAAED,KAAK;cACnB2C,cAAc,EAAA,CAAAZ,sBAAA,GAAE/C,KAAK,CAAC2D,cAAc,MAAA,IAAA,IAAAZ,sBAAA,KAAA,MAAA,GAAAA,sBAAA,GAAI,IAAI;AAC5Cc,cAAAA,KAAK,EAAC,MAAM;cACZe,QAAQ,EAAA,YAAA;gBAAA,IAAA0D,UAAA,GAAAhH,iBAAA,cAAAC,YAAA,GAAAC,CAAA,CAAE,SAAA+G,QAAAA,CAAOvH,KAAU,EAAA;AAAA,kBAAA,OAAAO,YAAA,EAAA,CAAAG,CAAA,CAAA,UAAA8G,SAAA,EAAA;oBAAA,OAAA,CAAA,EAAA,QAAAA,SAAA,CAAA5G,CAAA;AAAA,sBAAA,KAAA,CAAA;wBACzBI,QAAQ,CAAChB,KAAK,CAAC;AAACwH,wBAAAA,SAAA,CAAA5G,CAAA,GAAA,CAAA;wBAAA,OACV1B,aAAa,CAACF,KAAK,CAAC6B,IAAI,EAAE7B,KAAK,CAACM,QAAQ,EAAEU,KAAK,CAAC;AAAA,sBAAA,KAAA,CAAA;wBAAA,OAAAwH,SAAA,CAAA1G,CAAA,CAAA,CAAA,CAAA;AAAA;AAAA,kBAAA,CAAA,EAAAyG,QAAA,CAAA;gBAAA,CACvD,CAAA,CAAA;gBAAA,SAHD3D,QAAQA,CAAA6D,GAAA,EAAA;AAAA,kBAAA,OAAAH,UAAA,CAAAnE,KAAA,CAAA,IAAA,EAAAC,SAAA,CAAA;AAAA,gBAAA;AAAA,gBAAA,OAARQ,QAAQ;AAAA,cAAA,CAAA;AAGP,aAAA,EAXI5E,KAAK,CAAC6B,IAAI,CAYf,EACD7B,KAAK,CAACuE,WAAW,KAAKC,SAAS,IAAIxE,KAAK,CAACuE,WAAW,GACnDtB,KAACwB,QAAQ,EAAA;AAEPC,cAAAA,IAAI,EAAErE,OAAO;AACbW,cAAAA,KAAK,EAAE,GAAG;AACVuC,cAAAA,UAAU,EAAE,KAAK;AACjBoB,cAAAA,eAAe,EAAEhE,SAAS;cAC1BiE,QAAQ,EAAA,YAAA;gBAAA,IAAA8D,UAAA,GAAApH,iBAAA,cAAAC,YAAA,GAAAC,CAAA,CAAE,SAAAmH,QAAAA,CAAO5D,OAAgB,EAAA;AAAA,kBAAA,OAAAxD,YAAA,EAAA,CAAAG,CAAA,CAAA,UAAAkH,SAAA,EAAA;oBAAA,OAAA,CAAA,EAAA,QAAAA,SAAA,CAAAhH,CAAA;AAAA,sBAAA,KAAA,CAAA;wBAC/BhB,YAAY,CAACmE,OAAO,CAAC;AAAC6D,wBAAAA,SAAA,CAAAhH,CAAA,GAAA,CAAA;AAAA,wBAAA,OAChB1B,aAAa,CAACG,OAAO,EAAEA,OAAO,EAAE0E,OAAO,CAAC;AAAA,sBAAA,KAAA,CAAA;wBAAA,OAAA6D,SAAA,CAAA9G,CAAA,CAAA,CAAA,CAAA;AAAA;AAAA,kBAAA,CAAA,EAAA6G,QAAA,CAAA;gBAAA,CAC/C,CAAA,CAAA;gBAAA,SAHD/D,QAAQA,CAAAiE,GAAA,EAAA;AAAA,kBAAA,OAAAH,UAAA,CAAAvE,KAAA,CAAA,IAAA,EAAAC,SAAA,CAAA;AAAA,gBAAA;AAAA,gBAAA,OAARQ,QAAQ;cAAA,CAAA,EAGP;AAAAzC,cAAAA,QAAA,EAAA,CAAA,qCAAA,EAEmCnB,KAAK;AAAA,aAAA,EAVpCX,OAAO,CAWH,GACT,IAAI;AAAA,WAAA,CACH;AAEb;AACF,IAAA,CAAC;AAAG,GAAA,CACC;AAEX;;;;"}
|
|
@@ -1,12 +1,43 @@
|
|
|
1
|
-
import { slicedToArray as _slicedToArray,
|
|
2
|
-
import {
|
|
3
|
-
import { useState } from 'react';
|
|
4
|
-
import { Form, Flex, Heading
|
|
1
|
+
import { slicedToArray as _slicedToArray, objectSpread2 as _objectSpread2, asyncToGenerator as _asyncToGenerator, regenerator as _regenerator, defineProperty as _defineProperty } from '../../../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
|
+
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
3
|
+
import { useState, useMemo, useCallback } from 'react';
|
|
4
|
+
import { Form, Flex, Heading } from '@adobe/react-spectrum';
|
|
5
5
|
import FieldBuilder from '../FieldBuilder/index.js';
|
|
6
|
-
import
|
|
7
|
-
import Back from '@spectrum-icons/workflow/Back';
|
|
6
|
+
import ButtonContainer from '../ButtonContainer/index.js';
|
|
8
7
|
|
|
8
|
+
/**
|
|
9
|
+
* Evaluates whether a dependency condition is met
|
|
10
|
+
* @param condition The dependency condition to evaluate
|
|
11
|
+
* @param value The current value of the dependency field
|
|
12
|
+
* @param allValues All form values for custom validators
|
|
13
|
+
* @returns true if condition is met, false otherwise
|
|
14
|
+
*/
|
|
15
|
+
var evaluateDependencyCondition = function evaluateDependencyCondition(condition, value, allValues) {
|
|
16
|
+
switch (condition.type) {
|
|
17
|
+
case 'equals':
|
|
18
|
+
return value === condition.value;
|
|
19
|
+
case 'notEquals':
|
|
20
|
+
return value !== condition.value;
|
|
21
|
+
case 'in':
|
|
22
|
+
return condition.values.indexOf(value) !== -1;
|
|
23
|
+
case 'notIn':
|
|
24
|
+
return condition.values.indexOf(value) === -1;
|
|
25
|
+
case 'greaterThan':
|
|
26
|
+
return typeof value === 'number' && value > condition.value;
|
|
27
|
+
case 'lessThan':
|
|
28
|
+
return typeof value === 'number' && value < condition.value;
|
|
29
|
+
case 'truthy':
|
|
30
|
+
return !!value && value !== '0' && value !== 'false';
|
|
31
|
+
case 'falsy':
|
|
32
|
+
return !value || value === '0' || value === 'false';
|
|
33
|
+
case 'custom':
|
|
34
|
+
return condition.validator(value, allValues);
|
|
35
|
+
default:
|
|
36
|
+
return true;
|
|
37
|
+
}
|
|
38
|
+
};
|
|
9
39
|
var FormBuilder = function FormBuilder(_ref) {
|
|
40
|
+
var _buttonConfig$positio;
|
|
10
41
|
var _ref$components = _ref.components,
|
|
11
42
|
components = _ref$components === void 0 ? {
|
|
12
43
|
groups: []
|
|
@@ -14,7 +45,7 @@ var FormBuilder = function FormBuilder(_ref) {
|
|
|
14
45
|
_ref$editItem = _ref.editItem,
|
|
15
46
|
editItem = _ref$editItem === void 0 ? {} : _ref$editItem,
|
|
16
47
|
_ref$onFieldChange = _ref.onFieldChange,
|
|
17
|
-
|
|
48
|
+
onFieldChange = _ref$onFieldChange === void 0 ? function () {
|
|
18
49
|
return Promise.resolve();
|
|
19
50
|
} : _ref$onFieldChange,
|
|
20
51
|
_ref$onFormSubmit = _ref.onFormSubmit,
|
|
@@ -30,7 +61,8 @@ var FormBuilder = function FormBuilder(_ref) {
|
|
|
30
61
|
_ref$isProcessing = _ref.isProcessing,
|
|
31
62
|
isProcessing = _ref$isProcessing === void 0 ? false : _ref$isProcessing,
|
|
32
63
|
_ref$usePlaceholder = _ref.usePlaceholder,
|
|
33
|
-
usePlaceholder = _ref$usePlaceholder === void 0 ? true : _ref$usePlaceholder
|
|
64
|
+
usePlaceholder = _ref$usePlaceholder === void 0 ? true : _ref$usePlaceholder,
|
|
65
|
+
buttonConfig = _ref.buttonConfig;
|
|
34
66
|
var _useState = useState(false),
|
|
35
67
|
_useState2 = _slicedToArray(_useState, 2),
|
|
36
68
|
isSubmitting = _useState2[0],
|
|
@@ -39,44 +71,158 @@ var FormBuilder = function FormBuilder(_ref) {
|
|
|
39
71
|
_useState4 = _slicedToArray(_useState3, 2),
|
|
40
72
|
values = _useState4[0],
|
|
41
73
|
setValues = _useState4[1];
|
|
42
|
-
|
|
74
|
+
// Initialize form values with editItem values for proper dependency evaluation
|
|
75
|
+
var initializedValues = useMemo(function () {
|
|
76
|
+
var mergedValues = {};
|
|
77
|
+
components.groups.forEach(function (group) {
|
|
78
|
+
group.fields.forEach(function (field) {
|
|
79
|
+
// Set both code and db_field for consistency
|
|
80
|
+
if (editItem[field.db_field] !== undefined) {
|
|
81
|
+
mergedValues[field.code] = editItem[field.db_field];
|
|
82
|
+
mergedValues[field.db_field] = editItem[field.db_field];
|
|
83
|
+
} else if (field.value !== undefined) {
|
|
84
|
+
mergedValues[field.code] = field.value;
|
|
85
|
+
mergedValues[field.db_field] = field.value;
|
|
86
|
+
}
|
|
87
|
+
});
|
|
88
|
+
});
|
|
89
|
+
return mergedValues;
|
|
90
|
+
}, [editItem, components]);
|
|
91
|
+
// Combine initial values with current form values
|
|
92
|
+
var allValues = useMemo(function () {
|
|
93
|
+
return _objectSpread2(_objectSpread2({}, initializedValues), values);
|
|
94
|
+
}, [initializedValues, values]);
|
|
95
|
+
/**
|
|
96
|
+
* Evaluates whether a field should be visible based on its dependencies
|
|
97
|
+
* @param field The field to evaluate
|
|
98
|
+
* @returns true if field should be visible, false otherwise
|
|
99
|
+
*/
|
|
100
|
+
var isFieldVisible = useCallback(function (field) {
|
|
101
|
+
if (!field.dependsOn) {
|
|
102
|
+
return true;
|
|
103
|
+
}
|
|
104
|
+
var dependencyValue = allValues[field.dependsOn.field];
|
|
105
|
+
return evaluateDependencyCondition(field.dependsOn.condition, dependencyValue, allValues);
|
|
106
|
+
}, [allValues]);
|
|
107
|
+
/**
|
|
108
|
+
* Get all visible fields with memoization for performance
|
|
109
|
+
*/
|
|
110
|
+
var visibleFieldsByGroup = useMemo(function () {
|
|
111
|
+
var result = new Map();
|
|
112
|
+
components.groups.forEach(function (group) {
|
|
113
|
+
var visibleFields = group.fields.filter(function (field) {
|
|
114
|
+
return isFieldVisible(field);
|
|
115
|
+
});
|
|
116
|
+
result.set(group.code, visibleFields);
|
|
117
|
+
});
|
|
118
|
+
return result;
|
|
119
|
+
}, [components.groups, isFieldVisible]);
|
|
120
|
+
// Determine button position (default: 'after')
|
|
121
|
+
var buttonPosition = (_buttonConfig$positio = buttonConfig === null || buttonConfig === void 0 ? void 0 : buttonConfig.position) !== null && _buttonConfig$positio !== void 0 ? _buttonConfig$positio : 'after';
|
|
122
|
+
/**
|
|
123
|
+
* Handle field changes with dependency awareness
|
|
124
|
+
*/
|
|
125
|
+
var handleFieldChange = useCallback(/*#__PURE__*/function () {
|
|
126
|
+
var _ref2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(code, db_field, value) {
|
|
127
|
+
return _regenerator().w(function (_context) {
|
|
128
|
+
while (1) switch (_context.n) {
|
|
129
|
+
case 0:
|
|
130
|
+
setValues(function (prevValues) {
|
|
131
|
+
var newValues = _objectSpread2(_objectSpread2({}, prevValues), {}, _defineProperty(_defineProperty({}, code, value), db_field, value));
|
|
132
|
+
// Check if any fields depend on this field and clear their values if they become hidden
|
|
133
|
+
components.groups.forEach(function (group) {
|
|
134
|
+
group.fields.forEach(function (field) {
|
|
135
|
+
var _field$dependsOn;
|
|
136
|
+
if (((_field$dependsOn = field.dependsOn) === null || _field$dependsOn === void 0 ? void 0 : _field$dependsOn.field) === code && field.dependsOn.clearValueOnHide !== false) {
|
|
137
|
+
// Evaluate if the dependent field will be visible with the new value
|
|
138
|
+
var tempValues = _objectSpread2(_objectSpread2({}, allValues), {}, _defineProperty({}, code, value));
|
|
139
|
+
var willBeVisible = evaluateDependencyCondition(field.dependsOn.condition, value, tempValues);
|
|
140
|
+
// If field will be hidden, clear its value
|
|
141
|
+
if (!willBeVisible) {
|
|
142
|
+
delete newValues[field.code];
|
|
143
|
+
delete newValues[field.db_field];
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
});
|
|
147
|
+
});
|
|
148
|
+
return newValues;
|
|
149
|
+
});
|
|
150
|
+
_context.n = 1;
|
|
151
|
+
return onFieldChange(code, value);
|
|
152
|
+
case 1:
|
|
153
|
+
return _context.a(2);
|
|
154
|
+
}
|
|
155
|
+
}, _callee);
|
|
156
|
+
}));
|
|
157
|
+
return function (_x, _x2, _x3) {
|
|
158
|
+
return _ref2.apply(this, arguments);
|
|
159
|
+
};
|
|
160
|
+
}(), [allValues, components.groups, onFieldChange]);
|
|
161
|
+
// Button container component
|
|
162
|
+
var buttonContainerElement = jsx(ButtonContainer, _objectSpread2(_objectSpread2({}, buttonConfig !== undefined && {
|
|
163
|
+
buttonConfig: buttonConfig
|
|
164
|
+
}), {}, {
|
|
165
|
+
isSubmitting: isSubmitting,
|
|
166
|
+
isProcessing: isProcessing,
|
|
167
|
+
onBackPress: onBackPress
|
|
168
|
+
}));
|
|
169
|
+
return jsx(Form, {
|
|
43
170
|
isRequired: true,
|
|
44
171
|
isDisabled: isSubmitting || isProcessing,
|
|
45
172
|
width: "size-6000",
|
|
46
173
|
validationBehavior: "native",
|
|
47
174
|
onSubmit: function () {
|
|
48
|
-
var _onSubmit = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function
|
|
49
|
-
var submissionValues, key;
|
|
50
|
-
return _regenerator().w(function (
|
|
51
|
-
while (1) switch (
|
|
175
|
+
var _onSubmit = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(e) {
|
|
176
|
+
var submissionValues, visibleFieldCodes, key;
|
|
177
|
+
return _regenerator().w(function (_context2) {
|
|
178
|
+
while (1) switch (_context2.n) {
|
|
52
179
|
case 0:
|
|
53
180
|
e.preventDefault();
|
|
54
181
|
// Create a new object instead of mutating the existing values
|
|
55
|
-
submissionValues = _objectSpread2({}, values);
|
|
182
|
+
submissionValues = _objectSpread2({}, values); // Only include values from visible fields
|
|
183
|
+
visibleFieldCodes = new Set();
|
|
184
|
+
components.groups.forEach(function (group) {
|
|
185
|
+
var visibleFields = visibleFieldsByGroup.get(group.code) || [];
|
|
186
|
+
visibleFields.forEach(function (field) {
|
|
187
|
+
visibleFieldCodes.add(field.db_field);
|
|
188
|
+
});
|
|
189
|
+
});
|
|
190
|
+
// Filter out hidden field values
|
|
191
|
+
Object.keys(submissionValues).forEach(function (key) {
|
|
192
|
+
if (!visibleFieldCodes.has(key)) {
|
|
193
|
+
delete submissionValues[key];
|
|
194
|
+
}
|
|
195
|
+
});
|
|
196
|
+
// Add editItem values for fields not changed
|
|
56
197
|
for (key in editItem) {
|
|
57
|
-
if (!Object.prototype.hasOwnProperty.call(submissionValues, key)) {
|
|
198
|
+
if (!Object.prototype.hasOwnProperty.call(submissionValues, key) && visibleFieldCodes.has(key)) {
|
|
58
199
|
submissionValues[key] = editItem[key];
|
|
59
200
|
}
|
|
60
201
|
}
|
|
61
202
|
setSubmitting(true);
|
|
62
|
-
|
|
203
|
+
_context2.n = 1;
|
|
63
204
|
return onFormSubmit(submissionValues);
|
|
64
205
|
case 1:
|
|
65
206
|
setSubmitting(false);
|
|
66
|
-
|
|
207
|
+
_context2.n = 2;
|
|
67
208
|
return onPostFormSubmit();
|
|
68
209
|
case 2:
|
|
69
|
-
return
|
|
210
|
+
return _context2.a(2);
|
|
70
211
|
}
|
|
71
|
-
},
|
|
212
|
+
}, _callee2);
|
|
72
213
|
}));
|
|
73
|
-
function onSubmit(
|
|
214
|
+
function onSubmit(_x4) {
|
|
74
215
|
return _onSubmit.apply(this, arguments);
|
|
75
216
|
}
|
|
76
217
|
return onSubmit;
|
|
77
218
|
}(),
|
|
78
|
-
children:
|
|
79
|
-
children: components.groups.map(function (group) {
|
|
219
|
+
children: jsxs(Fragment, {
|
|
220
|
+
children: [buttonPosition === 'before' && buttonContainerElement, components.groups.map(function (group) {
|
|
221
|
+
var visibleFields = visibleFieldsByGroup.get(group.code) || [];
|
|
222
|
+
// Only render group if it has visible fields
|
|
223
|
+
if (visibleFields.length === 0) {
|
|
224
|
+
return null;
|
|
225
|
+
}
|
|
80
226
|
return jsxs(Flex, {
|
|
81
227
|
direction: "column",
|
|
82
228
|
marginBottom: "size-200",
|
|
@@ -85,66 +231,33 @@ var FormBuilder = function FormBuilder(_ref) {
|
|
|
85
231
|
level: 4,
|
|
86
232
|
marginTop: 0,
|
|
87
233
|
children: group.label
|
|
88
|
-
}),
|
|
234
|
+
}), visibleFields.map(function (field) {
|
|
89
235
|
return jsx(FieldBuilder, {
|
|
90
236
|
field: field,
|
|
91
237
|
editItem: editItem,
|
|
92
238
|
usePlaceholder: usePlaceholder,
|
|
93
239
|
onFieldChange: function () {
|
|
94
|
-
var
|
|
95
|
-
return _regenerator().w(function (
|
|
96
|
-
while (1) switch (
|
|
240
|
+
var _onFieldChange = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3(code, db_field, value) {
|
|
241
|
+
return _regenerator().w(function (_context3) {
|
|
242
|
+
while (1) switch (_context3.n) {
|
|
97
243
|
case 0:
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
});
|
|
101
|
-
_context2.n = 1;
|
|
102
|
-
return _onFieldChange(code, value);
|
|
244
|
+
_context3.n = 1;
|
|
245
|
+
return handleFieldChange(code, db_field, value);
|
|
103
246
|
case 1:
|
|
104
|
-
return
|
|
247
|
+
return _context3.a(2);
|
|
105
248
|
}
|
|
106
|
-
},
|
|
249
|
+
}, _callee3);
|
|
107
250
|
}));
|
|
108
|
-
function onFieldChange(
|
|
109
|
-
return
|
|
251
|
+
function onFieldChange(_x5, _x6, _x7) {
|
|
252
|
+
return _onFieldChange.apply(this, arguments);
|
|
110
253
|
}
|
|
111
254
|
return onFieldChange;
|
|
112
255
|
}()
|
|
113
256
|
}, field.db_field);
|
|
114
257
|
})]
|
|
115
258
|
}, group.code);
|
|
116
|
-
})
|
|
117
|
-
})
|
|
118
|
-
width: "100%",
|
|
119
|
-
alignItems: "center",
|
|
120
|
-
marginTop: 'size-100',
|
|
121
|
-
children: [(isSubmitting || isProcessing) && jsx(ProgressCircle, {
|
|
122
|
-
size: "M",
|
|
123
|
-
marginEnd: 'size-250',
|
|
124
|
-
"aria-label": "Submitting..",
|
|
125
|
-
isIndeterminate: true
|
|
126
|
-
}), jsxs(ActionButton, {
|
|
127
|
-
marginEnd: 'size-100',
|
|
128
|
-
type: "submit",
|
|
129
|
-
isDisabled: isSubmitting || isProcessing,
|
|
130
|
-
staticColor: "black",
|
|
131
|
-
children: [jsx(SaveFloppy, {
|
|
132
|
-
size: 'M'
|
|
133
|
-
}), jsx(Text, {
|
|
134
|
-
children: "Save"
|
|
135
|
-
})]
|
|
136
|
-
}), jsxs(ActionButton, {
|
|
137
|
-
type: "button",
|
|
138
|
-
staticColor: "black",
|
|
139
|
-
isDisabled: isSubmitting || isProcessing,
|
|
140
|
-
onPress: onBackPress,
|
|
141
|
-
children: [jsx(Back, {
|
|
142
|
-
size: 'M'
|
|
143
|
-
}), jsx(Text, {
|
|
144
|
-
children: "Back"
|
|
145
|
-
})]
|
|
146
|
-
})]
|
|
147
|
-
})]
|
|
259
|
+
}), buttonPosition === 'after' && buttonContainerElement]
|
|
260
|
+
})
|
|
148
261
|
});
|
|
149
262
|
};
|
|
150
263
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../../../src/components/DataForm/FormBuilder/index.tsx"],"sourcesContent":["/**\n * <license header>\n */\n\nimport React, { useState } from 'react';\nimport { Form, Flex, ProgressCircle, Heading, ActionButton, Text } from '@adobe/react-spectrum';\nimport { FormBuilderProps } from './types';\nimport FieldBuilder from '../FieldBuilder';\nimport SaveFloppy from '@spectrum-icons/workflow/SaveFloppy';\nimport Back from '@spectrum-icons/workflow/Back';\n\nconst FormBuilder: React.FC<FormBuilderProps> = ({\n components = { groups: [] },\n editItem = {},\n onFieldChange = (): Promise<void> => Promise.resolve(),\n onFormSubmit = (): Promise<void> => Promise.resolve(),\n onPostFormSubmit = (): Promise<void> => Promise.resolve(),\n onBackPress = (): void => {},\n isProcessing = false,\n usePlaceholder = true,\n}) => {\n const [isSubmitting, setSubmitting] = useState(false);\n const [values, setValues] = useState<Record<string, any>>({});\n\n return (\n <Form\n isRequired\n isDisabled={isSubmitting || isProcessing}\n width=\"size-6000\"\n validationBehavior=\"native\"\n onSubmit={async e => {\n e.preventDefault();\n // Create a new object instead of mutating the existing values\n const submissionValues = { ...values };\n for (const key in editItem) {\n if (!Object.prototype.hasOwnProperty.call(submissionValues, key)) {\n submissionValues[key] = editItem[key];\n }\n }\n setSubmitting(true);\n await onFormSubmit(submissionValues);\n setSubmitting(false);\n await onPostFormSubmit();\n }}\n >\n <>\n {components.groups.map(group => (\n <Flex key={group.code} direction=\"column\" marginBottom=\"size-200\">\n <Heading id={group.code} level={4} marginTop={0}>\n {group.label}\n </Heading>\n {group.fields.map(field => (\n <FieldBuilder\n key={field.db_field}\n field={field}\n editItem={editItem}\n usePlaceholder={usePlaceholder}\n onFieldChange={async (code, db_field, value) => {\n setValues(prevValues => ({\n ...prevValues,\n [db_field]: value,\n }));\n await onFieldChange(code, value);\n }}\n />\n ))}\n </Flex>\n ))}\n </>\n <Flex width=\"100%\" alignItems=\"center\" marginTop={'size-100'}>\n {(isSubmitting || isProcessing) && (\n <ProgressCircle\n size=\"M\"\n marginEnd={'size-250'}\n aria-label=\"Submitting..\"\n isIndeterminate\n />\n )}\n <ActionButton\n marginEnd={'size-100'}\n type=\"submit\"\n isDisabled={isSubmitting || isProcessing}\n staticColor=\"black\"\n >\n <SaveFloppy size={'M'} />\n <Text>Save</Text>\n </ActionButton>\n <ActionButton\n type=\"button\"\n staticColor=\"black\"\n isDisabled={isSubmitting || isProcessing}\n onPress={onBackPress}\n >\n <Back size={'M'} />\n <Text>Back</Text>\n </ActionButton>\n </Flex>\n </Form>\n );\n};\n\nexport default FormBuilder;\n"],"names":["FormBuilder","_ref","_ref$components","components","groups","_ref$editItem","editItem","_ref$onFieldChange","onFieldChange","Promise","resolve","_ref$onFormSubmit","onFormSubmit","_ref$onPostFormSubmit","onPostFormSubmit","_ref$onBackPress","onBackPress","_ref$isProcessing","isProcessing","_ref$usePlaceholder","usePlaceholder","_useState","useState","_useState2","_slicedToArray","isSubmitting","setSubmitting","_useState3","_useState4","values","setValues","_jsxs","Form","isRequired","isDisabled","width","validationBehavior","onSubmit","_onSubmit","_asyncToGenerator","_regenerator","m","_callee","e","submissionValues","key","w","_context","n","preventDefault","_objectSpread","Object","prototype","hasOwnProperty","call","a","_x","apply","arguments","_jsx","_Fragment","children","map","group","Flex","direction","marginBottom","Heading","id","code","level","marginTop","label","fields","field","FieldBuilder","_onFieldChange2","_callee2","db_field","value","_context2","prevValues","_defineProperty","_x2","_x3","_x4","alignItems","ProgressCircle","size","marginEnd","isIndeterminate","ActionButton","type","staticColor","SaveFloppy","Text","onPress","Back"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../../../src/components/DataForm/FormBuilder/index.tsx"],"sourcesContent":["/**\n * <license header>\n */\n\nimport React, { useState, useMemo, useCallback } from 'react';\nimport { Form, Flex, Heading } from '@adobe/react-spectrum';\nimport { FormBuilderProps, FormBuilderField, DependencyCondition } from './types';\nimport FieldBuilder from '../FieldBuilder';\nimport ButtonContainer from '../ButtonContainer';\n\n/**\n * Evaluates whether a dependency condition is met\n * @param condition The dependency condition to evaluate\n * @param value The current value of the dependency field\n * @param allValues All form values for custom validators\n * @returns true if condition is met, false otherwise\n */\nconst evaluateDependencyCondition = (\n condition: DependencyCondition,\n value: any,\n allValues: Record<string, any>\n): boolean => {\n switch (condition.type) {\n case 'equals':\n return value === condition.value;\n case 'notEquals':\n return value !== condition.value;\n case 'in':\n return condition.values.indexOf(value) !== -1;\n case 'notIn':\n return condition.values.indexOf(value) === -1;\n case 'greaterThan':\n return typeof value === 'number' && value > condition.value;\n case 'lessThan':\n return typeof value === 'number' && value < condition.value;\n case 'truthy':\n return !!value && value !== '0' && value !== 'false';\n case 'falsy':\n return !value || value === '0' || value === 'false';\n case 'custom':\n return condition.validator(value, allValues);\n default:\n return true;\n }\n};\n\nconst FormBuilder: React.FC<FormBuilderProps> = ({\n components = { groups: [] },\n editItem = {},\n onFieldChange = (): Promise<void> => Promise.resolve(),\n onFormSubmit = (): Promise<void> => Promise.resolve(),\n onPostFormSubmit = (): Promise<void> => Promise.resolve(),\n onBackPress = (): void => {},\n isProcessing = false,\n usePlaceholder = true,\n buttonConfig,\n}) => {\n const [isSubmitting, setSubmitting] = useState(false);\n const [values, setValues] = useState<Record<string, any>>({});\n\n // Initialize form values with editItem values for proper dependency evaluation\n const initializedValues = useMemo(() => {\n const mergedValues: Record<string, any> = {};\n components.groups.forEach(group => {\n group.fields.forEach(field => {\n // Set both code and db_field for consistency\n if (editItem[field.db_field] !== undefined) {\n mergedValues[field.code] = editItem[field.db_field];\n mergedValues[field.db_field] = editItem[field.db_field];\n } else if (field.value !== undefined) {\n mergedValues[field.code] = field.value;\n mergedValues[field.db_field] = field.value;\n }\n });\n });\n return mergedValues;\n }, [editItem, components]);\n\n // Combine initial values with current form values\n const allValues = useMemo(() => {\n return { ...initializedValues, ...values };\n }, [initializedValues, values]);\n\n /**\n * Evaluates whether a field should be visible based on its dependencies\n * @param field The field to evaluate\n * @returns true if field should be visible, false otherwise\n */\n const isFieldVisible = useCallback(\n (field: FormBuilderField): boolean => {\n if (!field.dependsOn) {\n return true;\n }\n\n const dependencyValue = allValues[field.dependsOn.field];\n return evaluateDependencyCondition(field.dependsOn.condition, dependencyValue, allValues);\n },\n [allValues]\n );\n\n /**\n * Get all visible fields with memoization for performance\n */\n const visibleFieldsByGroup = useMemo(() => {\n const result: Map<string, FormBuilderField[]> = new Map();\n\n components.groups.forEach(group => {\n const visibleFields = group.fields.filter(field => isFieldVisible(field));\n result.set(group.code, visibleFields);\n });\n\n return result;\n }, [components.groups, isFieldVisible]);\n\n // Determine button position (default: 'after')\n const buttonPosition = buttonConfig?.position ?? 'after';\n\n /**\n * Handle field changes with dependency awareness\n */\n const handleFieldChange = useCallback(\n async (code: string, db_field: string, value: any) => {\n setValues(prevValues => {\n const newValues = {\n ...prevValues,\n [code]: value,\n [db_field]: value,\n };\n\n // Check if any fields depend on this field and clear their values if they become hidden\n components.groups.forEach(group => {\n group.fields.forEach(field => {\n if (field.dependsOn?.field === code && field.dependsOn.clearValueOnHide !== false) {\n // Evaluate if the dependent field will be visible with the new value\n const tempValues = { ...allValues, [code]: value };\n const willBeVisible = evaluateDependencyCondition(\n field.dependsOn.condition,\n value,\n tempValues\n );\n\n // If field will be hidden, clear its value\n if (!willBeVisible) {\n delete newValues[field.code];\n delete newValues[field.db_field];\n }\n }\n });\n });\n\n return newValues;\n });\n\n await onFieldChange(code, value);\n },\n [allValues, components.groups, onFieldChange]\n );\n\n // Button container component\n const buttonContainerElement = (\n <ButtonContainer\n {...(buttonConfig !== undefined && { buttonConfig })}\n isSubmitting={isSubmitting}\n isProcessing={isProcessing}\n onBackPress={onBackPress}\n />\n );\n\n return (\n <Form\n isRequired\n isDisabled={isSubmitting || isProcessing}\n width=\"size-6000\"\n validationBehavior=\"native\"\n onSubmit={async (e: React.FormEvent<HTMLFormElement>) => {\n e.preventDefault();\n // Create a new object instead of mutating the existing values\n const submissionValues = { ...values };\n\n // Only include values from visible fields\n const visibleFieldCodes = new Set<string>();\n components.groups.forEach(group => {\n const visibleFields = visibleFieldsByGroup.get(group.code) || [];\n visibleFields.forEach(field => {\n visibleFieldCodes.add(field.db_field);\n });\n });\n\n // Filter out hidden field values\n Object.keys(submissionValues).forEach(key => {\n if (!visibleFieldCodes.has(key)) {\n delete submissionValues[key];\n }\n });\n\n // Add editItem values for fields not changed\n for (const key in editItem) {\n if (\n !Object.prototype.hasOwnProperty.call(submissionValues, key) &&\n visibleFieldCodes.has(key)\n ) {\n submissionValues[key] = editItem[key];\n }\n }\n\n setSubmitting(true);\n await onFormSubmit(submissionValues);\n setSubmitting(false);\n await onPostFormSubmit();\n }}\n >\n <>\n {/* Render buttons before form if position is 'before' */}\n {buttonPosition === 'before' && buttonContainerElement}\n\n {/* Render form fields */}\n {components.groups.map(group => {\n const visibleFields = visibleFieldsByGroup.get(group.code) || [];\n\n // Only render group if it has visible fields\n if (visibleFields.length === 0) {\n return null;\n }\n\n return (\n <Flex key={group.code} direction=\"column\" marginBottom=\"size-200\">\n <Heading id={group.code} level={4} marginTop={0}>\n {group.label}\n </Heading>\n {visibleFields.map(field => (\n <FieldBuilder\n key={field.db_field}\n field={field}\n editItem={editItem}\n usePlaceholder={usePlaceholder}\n onFieldChange={async (code, db_field, value) => {\n await handleFieldChange(code, db_field, value);\n }}\n />\n ))}\n </Flex>\n );\n })}\n\n {/* Render buttons after form if position is 'after' (default) */}\n {buttonPosition === 'after' && buttonContainerElement}\n </>\n </Form>\n );\n};\n\nexport default FormBuilder;\n"],"names":["evaluateDependencyCondition","condition","value","allValues","type","values","indexOf","validator","FormBuilder","_ref","_buttonConfig$positio","_ref$components","components","groups","_ref$editItem","editItem","_ref$onFieldChange","onFieldChange","Promise","resolve","_ref$onFormSubmit","onFormSubmit","_ref$onPostFormSubmit","onPostFormSubmit","_ref$onBackPress","onBackPress","_ref$isProcessing","isProcessing","_ref$usePlaceholder","usePlaceholder","buttonConfig","_useState","useState","_useState2","_slicedToArray","isSubmitting","setSubmitting","_useState3","_useState4","setValues","initializedValues","useMemo","mergedValues","forEach","group","fields","field","db_field","undefined","code","_objectSpread","isFieldVisible","useCallback","dependsOn","dependencyValue","visibleFieldsByGroup","result","Map","visibleFields","filter","set","buttonPosition","position","handleFieldChange","_ref2","_asyncToGenerator","_regenerator","m","_callee","w","_context","n","prevValues","newValues","_defineProperty","_field$dependsOn","clearValueOnHide","tempValues","willBeVisible","a","_x","_x2","_x3","apply","arguments","buttonContainerElement","_jsx","ButtonContainer","Form","isRequired","isDisabled","width","validationBehavior","onSubmit","_onSubmit","_callee2","e","submissionValues","visibleFieldCodes","key","_context2","preventDefault","Set","get","add","Object","keys","has","prototype","hasOwnProperty","call","_x4","_jsxs","_Fragment","children","map","length","Flex","direction","marginBottom","Heading","id","level","marginTop","label","FieldBuilder","_onFieldChange","_callee3","_context3","_x5","_x6","_x7"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sources":["../../../../../../src/components/DataForm/FormBuilder/types.ts"],"sourcesContent":["/**\n * <license header>\n */\nimport React from 'react';\n\nexport enum FieldType {\n TEXT = 'text',\n EMAIL = 'email',\n PASSWORD = 'password',\n NUMBER = 'number',\n URL = 'url',\n TEL = 'tel',\n SEARCH = 'search',\n SELECT = 'select',\n MULTISELECT = 'multiselect',\n TOGGLE = 'toggle',\n LABEL = 'label',\n}\n\nexport interface FormBuilderProps {\n components: FormBuilderComponents;\n editItem?: Record<string, any>;\n onFieldChange?: (field: string, value: any) => Promise<void>;\n onFormSubmit?: (values: Record<string, any>) => Promise<void>;\n onPostFormSubmit?: () => Promise<void>;\n onBackPress?: () => void;\n isProcessing?: boolean;\n usePlaceholder?: boolean;\n}\n\nexport interface FormBuilderComponents {\n groups: FormBuilderGroup[];\n}\n\nexport interface FormBuilderGroup {\n code: string;\n label: string;\n fields: FormBuilderField[];\n}\n\nexport interface FormBuilderField {\n label: string;\n code: string;\n db_field: string;\n type: FieldType;\n required: boolean;\n disabled: boolean;\n use_env_var?: boolean;\n value?: string;\n options?: FormBuilderOption[];\n contextualHelp?: React.ReactNode;\n onFieldChange?: (value: any) => void;\n}\n\nexport interface FormBuilderOption {\n value: string;\n label: string;\n}\n"],"names":["FieldType"],"mappings":"
|
|
1
|
+
{"version":3,"file":"types.js","sources":["../../../../../../src/components/DataForm/FormBuilder/types.ts"],"sourcesContent":["/**\n * <license header>\n */\nimport React from 'react';\nimport { FormButtonConfig } from '../ButtonContainer/types';\n\nexport enum FieldType {\n TEXT = 'text',\n EMAIL = 'email',\n PASSWORD = 'password',\n NUMBER = 'number',\n URL = 'url',\n TEL = 'tel',\n SEARCH = 'search',\n SELECT = 'select',\n MULTISELECT = 'multiselect',\n TOGGLE = 'toggle',\n LABEL = 'label',\n}\n\n/**\n * Dependency condition types for field visibility\n */\nexport type DependencyCondition =\n | { type: 'equals'; value: any }\n | { type: 'notEquals'; value: any }\n | { type: 'in'; values: any[] }\n | { type: 'notIn'; values: any[] }\n | { type: 'greaterThan'; value: number }\n | { type: 'lessThan'; value: number }\n | { type: 'truthy' }\n | { type: 'falsy' }\n | { type: 'custom'; validator: (value: any, formValues: Record<string, any>) => boolean };\n\n/**\n * Field dependency configuration\n */\nexport interface FieldDependency {\n field: string; // The code of the field this depends on\n condition: DependencyCondition;\n clearValueOnHide?: boolean; // Whether to clear the field value when hidden (default: false)\n}\n\nexport interface FormBuilderProps {\n components: FormBuilderComponents;\n editItem?: Record<string, any>;\n onFieldChange?: (field: string, value: any) => Promise<void>;\n onFormSubmit?: (values: Record<string, any>) => Promise<void>;\n onPostFormSubmit?: () => Promise<void>;\n onBackPress?: () => void;\n isProcessing?: boolean;\n usePlaceholder?: boolean;\n buttonConfig?: FormButtonConfig;\n}\n\nexport interface FormBuilderComponents {\n groups: FormBuilderGroup[];\n}\n\nexport interface FormBuilderGroup {\n code: string;\n label: string;\n fields: FormBuilderField[];\n}\n\nexport interface FormBuilderField {\n label: string;\n code: string;\n db_field: string;\n type: FieldType;\n required: boolean;\n disabled: boolean;\n use_env_var?: boolean;\n value?: string;\n options?: FormBuilderOption[];\n contextualHelp?: React.ReactNode;\n onFieldChange?: (value: any) => void;\n dependsOn?: FieldDependency; // Dependency configuration for conditional visibility\n}\n\nexport interface FormBuilderOption {\n value: string;\n label: string;\n}\n"],"names":["FieldType"],"mappings":"IAMYA;AAAZ,CAAA,UAAYA,SAAS,EAAA;AACnBA,EAAAA,SAAA,CAAA,MAAA,CAAA,GAAA,MAAa;AACbA,EAAAA,SAAA,CAAA,OAAA,CAAA,GAAA,OAAe;AACfA,EAAAA,SAAA,CAAA,UAAA,CAAA,GAAA,UAAqB;AACrBA,EAAAA,SAAA,CAAA,QAAA,CAAA,GAAA,QAAiB;AACjBA,EAAAA,SAAA,CAAA,KAAA,CAAA,GAAA,KAAW;AACXA,EAAAA,SAAA,CAAA,KAAA,CAAA,GAAA,KAAW;AACXA,EAAAA,SAAA,CAAA,QAAA,CAAA,GAAA,QAAiB;AACjBA,EAAAA,SAAA,CAAA,QAAA,CAAA,GAAA,QAAiB;AACjBA,EAAAA,SAAA,CAAA,aAAA,CAAA,GAAA,aAA2B;AAC3BA,EAAAA,SAAA,CAAA,QAAA,CAAA,GAAA,QAAiB;AACjBA,EAAAA,SAAA,CAAA,OAAA,CAAA,GAAA,OAAe;AACjB,CAAC,EAZWA,SAAS,KAATA,SAAS,GAAA,EAAA,CAAA,CAAA;;;;"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { slicedToArray as _slicedToArray, asyncToGenerator as _asyncToGenerator, regenerator as _regenerator } from '../../_virtual/_rollupPluginBabelHelpers.js';
|
|
1
|
+
import { slicedToArray as _slicedToArray, asyncToGenerator as _asyncToGenerator, regenerator as _regenerator, objectSpread2 as _objectSpread2 } from '../../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
2
|
import { jsx } from 'react/jsx-runtime';
|
|
3
3
|
import { useState, useRef, useEffect, useCallback } from 'react';
|
|
4
4
|
import { Provider, defaultTheme, Flex, ProgressCircle, View } from '@adobe/react-spectrum';
|
|
@@ -31,7 +31,8 @@ var DataForm = function DataForm(_ref) {
|
|
|
31
31
|
_ref$isProcessing = _ref.isProcessing,
|
|
32
32
|
isProcessing = _ref$isProcessing === void 0 ? false : _ref$isProcessing,
|
|
33
33
|
_ref$usePlaceholder = _ref.usePlaceholder,
|
|
34
|
-
usePlaceholder = _ref$usePlaceholder === void 0 ? true : _ref$usePlaceholder
|
|
34
|
+
usePlaceholder = _ref$usePlaceholder === void 0 ? true : _ref$usePlaceholder,
|
|
35
|
+
buttonConfig = _ref.buttonConfig;
|
|
35
36
|
var _useState = useState(true),
|
|
36
37
|
_useState2 = _slicedToArray(_useState, 2),
|
|
37
38
|
isLoading = _useState2[0],
|
|
@@ -73,7 +74,7 @@ var DataForm = function DataForm(_ref) {
|
|
|
73
74
|
isIndeterminate: true
|
|
74
75
|
}) : jsx(View, {
|
|
75
76
|
width: "100%",
|
|
76
|
-
children: jsx(FormBuilder, {
|
|
77
|
+
children: jsx(FormBuilder, _objectSpread2({
|
|
77
78
|
components: components,
|
|
78
79
|
editItem: editItem,
|
|
79
80
|
onFieldChange: onFieldChange,
|
|
@@ -82,7 +83,9 @@ var DataForm = function DataForm(_ref) {
|
|
|
82
83
|
onPostFormSubmit: onPostFormSubmit,
|
|
83
84
|
isProcessing: isProcessing,
|
|
84
85
|
usePlaceholder: usePlaceholder
|
|
85
|
-
}
|
|
86
|
+
}, buttonConfig !== undefined && {
|
|
87
|
+
buttonConfig: buttonConfig
|
|
88
|
+
}))
|
|
86
89
|
})
|
|
87
90
|
})
|
|
88
91
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../../src/components/DataForm/index.tsx"],"sourcesContent":["/**\n * <license header>\n */\n\nimport React, { useEffect, useState, useCallback, useRef } from 'react';\nimport { defaultTheme, Provider, Flex, ProgressCircle, View } from '@adobe/react-spectrum';\nimport { DataFormProps } from './types';\nimport FormBuilder from './FormBuilder';\n\nconst DataForm: React.FC<DataFormProps> = ({\n components = { groups: [] },\n editItem,\n onFieldChange = (): Promise<void> => Promise.resolve(),\n onFormLoad = (): Promise<void> => Promise.resolve(),\n onFormSubmit = (): Promise<void> => Promise.resolve(),\n onPostFormSubmit = (): Promise<void> => Promise.resolve(),\n onBackPress = (): void => {},\n isProcessing = false,\n usePlaceholder = true,\n}) => {\n const [isLoading, setLoading] = useState<boolean>(true);\n\n // Stable reference to onFormLoad to prevent infinite loops\n const onFormLoadRef = useRef(onFormLoad);\n\n // Update ref in useEffect instead of during render\n useEffect(() => {\n onFormLoadRef.current = onFormLoad;\n }, [onFormLoad]);\n\n // Stable callback that won't change on every render\n const stableOnFormLoad = useCallback(() => {\n return onFormLoadRef.current();\n }, []);\n\n useEffect(() => {\n (async (): Promise<void> => {\n await stableOnFormLoad();\n setLoading(false);\n })();\n }, [stableOnFormLoad]);\n\n return (\n <Provider theme={defaultTheme} colorScheme={'light'}>\n <Flex width=\"100%\" alignItems=\"center\">\n {isLoading ? (\n <ProgressCircle size=\"L\" aria-label=\"Loading...\" isIndeterminate />\n ) : (\n <View width=\"100%\">\n <FormBuilder\n components={components}\n editItem={editItem}\n onFieldChange={onFieldChange}\n onBackPress={onBackPress}\n onFormSubmit={onFormSubmit}\n onPostFormSubmit={onPostFormSubmit}\n isProcessing={isProcessing}\n usePlaceholder={usePlaceholder}\n />\n </View>\n )}\n </Flex>\n </Provider>\n );\n};\n\nexport default DataForm;\n"],"names":["DataForm","_ref","_ref$components","components","groups","editItem","_ref$onFieldChange","onFieldChange","Promise","resolve","_ref$onFormLoad","onFormLoad","_ref$onFormSubmit","onFormSubmit","_ref$onPostFormSubmit","onPostFormSubmit","_ref$onBackPress","onBackPress","_ref$isProcessing","isProcessing","_ref$usePlaceholder","usePlaceholder","_useState","useState","_useState2","_slicedToArray","isLoading","setLoading","onFormLoadRef","useRef","useEffect","current","stableOnFormLoad","useCallback","_asyncToGenerator","_regenerator","m","_callee","w","_context","n","a","_jsx","Provider","theme","defaultTheme","colorScheme","
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../../src/components/DataForm/index.tsx"],"sourcesContent":["/**\n * <license header>\n */\n\nimport React, { useEffect, useState, useCallback, useRef } from 'react';\nimport { defaultTheme, Provider, Flex, ProgressCircle, View } from '@adobe/react-spectrum';\nimport { DataFormProps } from './types';\nimport FormBuilder from './FormBuilder';\n\nconst DataForm: React.FC<DataFormProps> = ({\n components = { groups: [] },\n editItem,\n onFieldChange = (): Promise<void> => Promise.resolve(),\n onFormLoad = (): Promise<void> => Promise.resolve(),\n onFormSubmit = (): Promise<void> => Promise.resolve(),\n onPostFormSubmit = (): Promise<void> => Promise.resolve(),\n onBackPress = (): void => {},\n isProcessing = false,\n usePlaceholder = true,\n buttonConfig,\n}) => {\n const [isLoading, setLoading] = useState<boolean>(true);\n\n // Stable reference to onFormLoad to prevent infinite loops\n const onFormLoadRef = useRef(onFormLoad);\n\n // Update ref in useEffect instead of during render\n useEffect(() => {\n onFormLoadRef.current = onFormLoad;\n }, [onFormLoad]);\n\n // Stable callback that won't change on every render\n const stableOnFormLoad = useCallback(() => {\n return onFormLoadRef.current();\n }, []);\n\n useEffect(() => {\n (async (): Promise<void> => {\n await stableOnFormLoad();\n setLoading(false);\n })();\n }, [stableOnFormLoad]);\n\n return (\n <Provider theme={defaultTheme} colorScheme={'light'}>\n <Flex width=\"100%\" alignItems=\"center\">\n {isLoading ? (\n <ProgressCircle size=\"L\" aria-label=\"Loading...\" isIndeterminate />\n ) : (\n <View width=\"100%\">\n <FormBuilder\n components={components}\n editItem={editItem}\n onFieldChange={onFieldChange}\n onBackPress={onBackPress}\n onFormSubmit={onFormSubmit}\n onPostFormSubmit={onPostFormSubmit}\n isProcessing={isProcessing}\n usePlaceholder={usePlaceholder}\n {...(buttonConfig !== undefined && { buttonConfig })}\n />\n </View>\n )}\n </Flex>\n </Provider>\n );\n};\n\nexport default DataForm;\n"],"names":["DataForm","_ref","_ref$components","components","groups","editItem","_ref$onFieldChange","onFieldChange","Promise","resolve","_ref$onFormLoad","onFormLoad","_ref$onFormSubmit","onFormSubmit","_ref$onPostFormSubmit","onPostFormSubmit","_ref$onBackPress","onBackPress","_ref$isProcessing","isProcessing","_ref$usePlaceholder","usePlaceholder","buttonConfig","_useState","useState","_useState2","_slicedToArray","isLoading","setLoading","onFormLoadRef","useRef","useEffect","current","stableOnFormLoad","useCallback","_asyncToGenerator","_regenerator","m","_callee","w","_context","n","a","_jsx","Provider","theme","defaultTheme","colorScheme","Flex","width","alignItems","children","ProgressCircle","size","isIndeterminate","View","FormBuilder","_objectSpread","undefined"],"mappings":"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"}
|