@solidxai/core-ui 0.1.9-beta.3 → 0.1.9-beta.5
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/dist/components/core/form/SolidFormFooter.d.ts.map +1 -1
- package/dist/components/core/form/SolidFormFooter.js +7 -6
- package/dist/components/core/form/SolidFormFooter.js.map +1 -1
- package/dist/components/core/form/SolidFormFooter.tsx +6 -5
- package/dist/components/core/form/SolidFormView.js +2 -2
- package/dist/components/core/form/SolidFormView.js.map +1 -1
- package/dist/components/core/form/SolidFormView.tsx +1 -1
- package/dist/components/core/form/fields/SolidBooleanField.d.ts.map +1 -1
- package/dist/components/core/form/fields/SolidBooleanField.js +10 -1
- package/dist/components/core/form/fields/SolidBooleanField.js.map +1 -1
- package/dist/components/core/form/fields/SolidBooleanField.tsx +13 -1
- package/dist/components/core/form/fields/SolidDecimalField.d.ts.map +1 -1
- package/dist/components/core/form/fields/SolidDecimalField.js +7 -1
- package/dist/components/core/form/fields/SolidDecimalField.js.map +1 -1
- package/dist/components/core/form/fields/SolidDecimalField.tsx +10 -1
- package/dist/components/core/form/fields/SolidIntegerField.d.ts.map +1 -1
- package/dist/components/core/form/fields/SolidIntegerField.js +14 -2
- package/dist/components/core/form/fields/SolidIntegerField.js.map +1 -1
- package/dist/components/core/form/fields/SolidIntegerField.tsx +20 -2
- package/dist/components/core/form/fields/SolidJsonField.d.ts.map +1 -1
- package/dist/components/core/form/fields/SolidJsonField.js +9 -1
- package/dist/components/core/form/fields/SolidJsonField.js.map +1 -1
- package/dist/components/core/form/fields/SolidJsonField.tsx +12 -1
- package/dist/components/core/form/fields/SolidLongTextField.d.ts.map +1 -1
- package/dist/components/core/form/fields/SolidLongTextField.js +23 -3
- package/dist/components/core/form/fields/SolidLongTextField.js.map +1 -1
- package/dist/components/core/form/fields/SolidLongTextField.tsx +32 -3
- package/dist/components/core/form/fields/SolidMediaMultipleField.d.ts.map +1 -1
- package/dist/components/core/form/fields/SolidMediaMultipleField.js +15 -2
- package/dist/components/core/form/fields/SolidMediaMultipleField.js.map +1 -1
- package/dist/components/core/form/fields/SolidMediaMultipleField.tsx +20 -4
- package/dist/components/core/form/fields/SolidMediaSingleField.d.ts.map +1 -1
- package/dist/components/core/form/fields/SolidMediaSingleField.js +21 -3
- package/dist/components/core/form/fields/SolidMediaSingleField.js.map +1 -1
- package/dist/components/core/form/fields/SolidMediaSingleField.tsx +30 -3
- package/dist/components/core/form/fields/SolidPasswordField.d.ts.map +1 -1
- package/dist/components/core/form/fields/SolidPasswordField.js +2 -1
- package/dist/components/core/form/fields/SolidPasswordField.js.map +1 -1
- package/dist/components/core/form/fields/SolidPasswordField.tsx +13 -1
- package/dist/components/core/form/fields/SolidRichTextField.d.ts.map +1 -1
- package/dist/components/core/form/fields/SolidRichTextField.js +9 -1
- package/dist/components/core/form/fields/SolidRichTextField.js.map +1 -1
- package/dist/components/core/form/fields/SolidRichTextField.tsx +12 -1
- package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.d.ts.map +1 -1
- package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.js +2 -2
- package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.js.map +1 -1
- package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.tsx +8 -2
- package/dist/components/core/form/fields/widgets/SolidIconEditWidget.d.ts.map +1 -1
- package/dist/components/core/form/fields/widgets/SolidIconEditWidget.js +14 -3
- package/dist/components/core/form/fields/widgets/SolidIconEditWidget.js.map +1 -1
- package/dist/components/core/form/fields/widgets/SolidIconEditWidget.tsx +20 -3
- package/dist/components/core/list/SolidListView.d.ts.map +1 -1
- package/dist/components/core/list/SolidListView.js +66 -2
- package/dist/components/core/list/SolidListView.js.map +1 -1
- package/dist/components/core/list/SolidListView.tsx +67 -2
- package/dist/routes/SolidRouteMetadataBoundary.js +1 -1
- package/dist/routes/SolidRouteMetadataBoundary.js.map +1 -1
- package/dist/routes/SolidRouteMetadataBoundary.tsx +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SolidJsonField.js","sourceRoot":"","sources":["../../../../../src/components/core/form/fields/SolidJsonField.tsx"],"names":[],"mappings":"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","sourcesContent":["\nimport { SolidMessage } from \"../../../shad-cn-ui/SolidMessage\";\nimport * as Yup from 'yup';\nimport { FormikObject, ISolidField, SolidFieldProps } from \"./ISolidField\";\nimport { getExtensionComponent } from \"../../../../helpers/registry\";\nimport { SolidFormFieldWidgetProps } from \"../../../../types/solid-core\";\nimport { SolidFieldTooltip } from \"../../../../components/common/SolidFieldTooltip\";\nimport { ERROR_MESSAGES } from \"../../../../constants/error-messages\";\nimport { SolidCodeEditor } from \"../../../shad-cn-ui\";\nimport styles from \"./solidFields.module.css\";\nexport class SolidJsonField implements ISolidField {\n\n private fieldContext: SolidFieldProps;\n\n constructor(fieldContext: SolidFieldProps) {\n this.fieldContext = fieldContext;\n }\n\n updateFormData(value: any, formData: FormData): any {\n const fieldLayoutInfo = this.fieldContext.field;\n if (value !== undefined && value !== null) {\n formData.append(fieldLayoutInfo.attrs.name, value);\n }\n }\n\n initialValue(): any {\n return this.fieldContext.data[this.fieldContext.field.attrs.name] ?? '';\n }\n\n validationSchema(): Yup.Schema {\n let schema: Yup.StringSchema<string | null | undefined> = Yup.string();\n\n const fieldMetadata = this.fieldContext.fieldMetadata;\n const fieldLayoutInfo = this.fieldContext.field;\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n\n // 1. required \n if (fieldMetadata.required) {\n schema = schema.required(ERROR_MESSAGES.FIELD_REUQIRED(fieldLabel));\n } else {\n schema = schema.nullable(); // Allow null when not required\n }\n return schema;\n }\n\n render(formik: FormikObject) {\n const fieldMetadata = this.fieldContext.fieldMetadata;\n const fieldLayoutInfo = this.fieldContext.field;\n const solidFormViewMetaData = this.fieldContext.solidFormViewMetaData;\n const className = fieldLayoutInfo.attrs?.className || 'field col-12';\n\n const isFormFieldValid = (formik: any, fieldName: string) => formik.touched[fieldName] && formik.errors[fieldName];\n\n let viewWidget = fieldLayoutInfo.attrs.viewWidget;\n let editWidget = fieldLayoutInfo.attrs.editWidget;\n if (!editWidget) {\n editWidget = 'DefaultJsonFormEditWidget';\n }\n if (!viewWidget) {\n viewWidget = 'DefaultJsonFormViewWidget';\n }\n const viewMode: string = this.fieldContext.viewMode;\n return (\n <>\n <div className={className}>\n {viewMode === \"view\" &&\n this.renderExtensionRenderMode(viewWidget, formik)\n }\n {viewMode === \"edit\" && (\n <>\n {editWidget &&\n this.renderExtensionRenderMode(editWidget, formik)\n }\n </>\n )\n }\n </div>\n </>\n );\n }\n\n renderExtensionRenderMode(widget: string, formik: FormikObject) {\n let DynamicWidget = getExtensionComponent(widget);\n const widgetProps: SolidFormFieldWidgetProps = {\n formik: formik,\n fieldContext: this.fieldContext,\n }\n return (\n <>\n {DynamicWidget && <DynamicWidget {...widgetProps} />}\n </>\n )\n }\n}\n\n\nexport const DefaultJsonFormEditWidget = ({ formik, fieldContext }: SolidFormFieldWidgetProps) => {\n\n const fieldMetadata = fieldContext.fieldMetadata;\n const fieldLayoutInfo = fieldContext.field;\n const className = fieldLayoutInfo.attrs?.className || 'field col-12';\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n const fieldDescription = fieldLayoutInfo.attrs.description ?? fieldMetadata.description;\n const solidFormViewMetaData = fieldContext.solidFormViewMetaData;\n const showFieldLabel = fieldLayoutInfo?.attrs?.showLabel;\n const readOnlyPermission = fieldContext.readOnly;\n\n const isFormFieldValid = (formik: any, fieldName: string) => formik.touched[fieldName] && formik.errors[fieldName];\n\n const fieldReadonly = fieldLayoutInfo.attrs?.readonly;\n const formReadonly = solidFormViewMetaData.data.solidView?.layout?.attrs?.readonly;\n\n return (\n <div className=\"relative\">\n <div className={styles.fieldWrapper}>\n {showFieldLabel != false &&\n <label htmlFor={fieldLayoutInfo.attrs.name} className={`${styles.fieldLabel} form-field-label`}>{fieldLabel}\n {fieldMetadata.required && <span className=\"text-red-500\"> *</span>}\n <SolidFieldTooltip fieldContext={fieldContext} />\n {/* {fieldDescription && <span className=\"form_field_help\">({fieldDescription}) </span>} */}\n </label>\n }\n <SolidCodeEditor\n value={(() => {\n const val = formik.values[fieldLayoutInfo.attrs.name];\n if (val == null) return \"\";\n if (typeof val === \"string\") return val;\n return JSON.stringify(val, null, 2);\n })()}\n onChange={(next) => formik.setFieldValue(fieldLayoutInfo.attrs.name, next)}\n height={fieldLayoutInfo.attrs?.height}\n fontSize={fieldLayoutInfo.attrs?.fontSize}\n readOnly={formReadonly || fieldReadonly || readOnlyPermission}\n language=\"json\"\n />\n </div>\n {isFormFieldValid(formik, fieldLayoutInfo.attrs.name) && (\n <div className=\"absolute mt-1\">\n <SolidMessage severity=\"error\" text={formik?.errors[fieldLayoutInfo.attrs.name]?.toString()} />\n </div>\n )}\n </div>\n );\n}\n\n\n\nexport const DefaultJsonFormViewWidget = ({ formik, fieldContext }: SolidFormFieldWidgetProps) => {\n\n const fieldMetadata = fieldContext.fieldMetadata;\n const fieldLayoutInfo = fieldContext.field;\n const className = fieldLayoutInfo.attrs?.className || 'field col-12';\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n const fieldDescription = fieldLayoutInfo.attrs.description ?? fieldMetadata.description;\n const showFieldLabel = fieldLayoutInfo?.attrs?.showLabel;\n\n const solidFormViewMetaData = fieldContext.solidFormViewMetaData;\n let code;\n const value = formik.values[fieldLayoutInfo.attrs.name];\n\n if (value == null) {\n // null or undefined → empty string\n code = \"\";\n } else if (typeof value === \"string\") {\n code = value;\n } else {\n code = JSON.stringify(value, null, 2);\n }\n\n return (\n\n\n <div className={styles.fieldViewWrapper}>\n {showFieldLabel != false &&\n <p className={`${styles.fieldViewLabel} form-field-label`}>{fieldLabel}</p>\n }\n <SolidCodeEditor\n value={code}\n height={fieldLayoutInfo.attrs?.height ?? '300px'}\n fontSize={fieldLayoutInfo.attrs?.fontSize ?? '10px'}\n readOnly={true}\n language=\"json\"\n />\n </div>\n );\n}\n"]}
|
|
1
|
+
{"version":3,"file":"SolidJsonField.js","sourceRoot":"","sources":["../../../../../src/components/core/form/fields/SolidJsonField.tsx"],"names":[],"mappings":"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","sourcesContent":["\nimport { SolidMessage } from \"../../../shad-cn-ui/SolidMessage\";\nimport * as Yup from 'yup';\nimport { FormikObject, ISolidField, SolidFieldProps } from \"./ISolidField\";\nimport { getExtensionComponent } from \"../../../../helpers/registry\";\nimport { SolidFormFieldWidgetProps } from \"../../../../types/solid-core\";\nimport { SolidFieldTooltip } from \"../../../../components/common/SolidFieldTooltip\";\nimport { ERROR_MESSAGES } from \"../../../../constants/error-messages\";\nimport { SolidCodeEditor } from \"../../../shad-cn-ui\";\nimport styles from \"./solidFields.module.css\";\nexport class SolidJsonField implements ISolidField {\n\n private fieldContext: SolidFieldProps;\n\n constructor(fieldContext: SolidFieldProps) {\n this.fieldContext = fieldContext;\n }\n\n updateFormData(value: any, formData: FormData): any {\n const fieldLayoutInfo = this.fieldContext.field;\n if (value !== undefined && value !== null) {\n formData.append(fieldLayoutInfo.attrs.name, value);\n }\n }\n\n initialValue(): any {\n return this.fieldContext.data[this.fieldContext.field.attrs.name] ?? '';\n }\n\n validationSchema(): Yup.Schema {\n let schema: Yup.StringSchema<string | null | undefined> = Yup.string();\n\n const fieldMetadata = this.fieldContext.fieldMetadata;\n const fieldLayoutInfo = this.fieldContext.field;\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n\n // 1. required \n if (fieldMetadata.required) {\n schema = schema.required(ERROR_MESSAGES.FIELD_REUQIRED(fieldLabel));\n } else {\n schema = schema.nullable(); // Allow null when not required\n }\n return schema;\n }\n\n render(formik: FormikObject) {\n const fieldMetadata = this.fieldContext.fieldMetadata;\n const fieldLayoutInfo = this.fieldContext.field;\n const solidFormViewMetaData = this.fieldContext.solidFormViewMetaData;\n const className = fieldLayoutInfo.attrs?.className || 'field col-12';\n\n const isFormFieldValid = (formik: any, fieldName: string) => formik.touched[fieldName] && formik.errors[fieldName];\n\n let viewWidget = fieldLayoutInfo.attrs.viewWidget;\n let editWidget = fieldLayoutInfo.attrs.editWidget;\n if (!editWidget) {\n editWidget = 'DefaultJsonFormEditWidget';\n }\n if (!viewWidget) {\n viewWidget = 'DefaultJsonFormViewWidget';\n }\n const viewMode: string = this.fieldContext.viewMode;\n return (\n <>\n <div className={className}>\n {viewMode === \"view\" &&\n this.renderExtensionRenderMode(viewWidget, formik)\n }\n {viewMode === \"edit\" && (\n <>\n {editWidget &&\n this.renderExtensionRenderMode(editWidget, formik)\n }\n </>\n )\n }\n </div>\n </>\n );\n }\n\n renderExtensionRenderMode(widget: string, formik: FormikObject) {\n let DynamicWidget = getExtensionComponent(widget);\n const widgetProps: SolidFormFieldWidgetProps = {\n formik: formik,\n fieldContext: this.fieldContext,\n }\n return (\n <>\n {DynamicWidget && <DynamicWidget {...widgetProps} />}\n </>\n )\n }\n}\n\n\nexport const DefaultJsonFormEditWidget = ({ formik, fieldContext }: SolidFormFieldWidgetProps) => {\n\n const fieldMetadata = fieldContext.fieldMetadata;\n const fieldLayoutInfo = fieldContext.field;\n const className = fieldLayoutInfo.attrs?.className || 'field col-12';\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n const fieldDescription = fieldLayoutInfo.attrs.description ?? fieldMetadata.description;\n const solidFormViewMetaData = fieldContext.solidFormViewMetaData;\n const showFieldLabel = fieldLayoutInfo?.attrs?.showLabel;\n const readOnlyPermission = fieldContext.readOnly;\n\n const isFormFieldValid = (formik: any, fieldName: string) => formik.touched[fieldName] && formik.errors[fieldName];\n\n const fieldReadonly = fieldLayoutInfo.attrs?.readonly;\n const formReadonly = solidFormViewMetaData.data.solidView?.layout?.attrs?.readonly;\n\n return (\n <div className=\"relative\">\n <div className={styles.fieldWrapper}>\n {showFieldLabel != false &&\n <label htmlFor={fieldLayoutInfo.attrs.name} className={`${styles.fieldLabel} form-field-label`}>{fieldLabel}\n {fieldMetadata.required && <span className=\"text-red-500\"> *</span>}\n <SolidFieldTooltip fieldContext={fieldContext} />\n {/* {fieldDescription && <span className=\"form_field_help\">({fieldDescription}) </span>} */}\n </label>\n }\n <SolidCodeEditor\n value={(() => {\n const val = formik.values[fieldLayoutInfo.attrs.name];\n if (val == null) return \"\";\n if (typeof val === \"string\") return val;\n return JSON.stringify(val, null, 2);\n })()}\n onChange={(next) => {\n fieldContext.onChange(\n {\n target: {\n name: fieldLayoutInfo.attrs.name,\n value: next,\n type: \"text\",\n },\n } as any,\n \"onFieldChange\"\n );\n }}\n height={fieldLayoutInfo.attrs?.height}\n fontSize={fieldLayoutInfo.attrs?.fontSize}\n readOnly={formReadonly || fieldReadonly || readOnlyPermission}\n language=\"json\"\n />\n </div>\n {isFormFieldValid(formik, fieldLayoutInfo.attrs.name) && (\n <div className=\"absolute mt-1\">\n <SolidMessage severity=\"error\" text={formik?.errors[fieldLayoutInfo.attrs.name]?.toString()} />\n </div>\n )}\n </div>\n );\n}\n\n\n\nexport const DefaultJsonFormViewWidget = ({ formik, fieldContext }: SolidFormFieldWidgetProps) => {\n\n const fieldMetadata = fieldContext.fieldMetadata;\n const fieldLayoutInfo = fieldContext.field;\n const className = fieldLayoutInfo.attrs?.className || 'field col-12';\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n const fieldDescription = fieldLayoutInfo.attrs.description ?? fieldMetadata.description;\n const showFieldLabel = fieldLayoutInfo?.attrs?.showLabel;\n\n const solidFormViewMetaData = fieldContext.solidFormViewMetaData;\n let code;\n const value = formik.values[fieldLayoutInfo.attrs.name];\n\n if (value == null) {\n // null or undefined → empty string\n code = \"\";\n } else if (typeof value === \"string\") {\n code = value;\n } else {\n code = JSON.stringify(value, null, 2);\n }\n\n return (\n\n\n <div className={styles.fieldViewWrapper}>\n {showFieldLabel != false &&\n <p className={`${styles.fieldViewLabel} form-field-label`}>{fieldLabel}</p>\n }\n <SolidCodeEditor\n value={code}\n height={fieldLayoutInfo.attrs?.height ?? '300px'}\n fontSize={fieldLayoutInfo.attrs?.fontSize ?? '10px'}\n readOnly={true}\n language=\"json\"\n />\n </div>\n );\n}\n"]}
|
|
@@ -127,7 +127,18 @@ export const DefaultJsonFormEditWidget = ({ formik, fieldContext }: SolidFormFie
|
|
|
127
127
|
if (typeof val === "string") return val;
|
|
128
128
|
return JSON.stringify(val, null, 2);
|
|
129
129
|
})()}
|
|
130
|
-
onChange={(next) =>
|
|
130
|
+
onChange={(next) => {
|
|
131
|
+
fieldContext.onChange(
|
|
132
|
+
{
|
|
133
|
+
target: {
|
|
134
|
+
name: fieldLayoutInfo.attrs.name,
|
|
135
|
+
value: next,
|
|
136
|
+
type: "text",
|
|
137
|
+
},
|
|
138
|
+
} as any,
|
|
139
|
+
"onFieldChange"
|
|
140
|
+
);
|
|
141
|
+
}}
|
|
131
142
|
height={fieldLayoutInfo.attrs?.height}
|
|
132
143
|
fontSize={fieldLayoutInfo.attrs?.fontSize}
|
|
133
144
|
readOnly={formReadonly || fieldReadonly || readOnlyPermission}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SolidLongTextField.d.ts","sourceRoot":"","sources":["../../../../../src/components/core/form/fields/SolidLongTextField.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,GAAG,MAAM,KAAK,CAAC;AAE3B,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAG3E,OAAO,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAC;AAQzE,qBAAa,kBAAmB,YAAW,WAAW;IAElD,OAAO,CAAC,YAAY,CAAkB;gBAE1B,YAAY,EAAE,eAAe;IAIzC,cAAc,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,QAAQ,GAAG,GAAG;IAOnD,YAAY,IAAI,GAAG;IASnB,gBAAgB,IAAI,GAAG,CAAC,MAAM;IA6B9B,MAAM,CAAC,MAAM,EAAE,YAAY;IAmC3B,yBAAyB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY;CAajE;AAED,eAAO,MAAM,6BAA6B,6BAA8B,yBAAyB,4CAyChG,CAAA;AAED,eAAO,MAAM,+BAA+B,6BAA8B,yBAAyB,4CAiHlG,CAAA;AAED,eAAO,MAAM,+BAA+B,6BAA8B,yBAAyB,
|
|
1
|
+
{"version":3,"file":"SolidLongTextField.d.ts","sourceRoot":"","sources":["../../../../../src/components/core/form/fields/SolidLongTextField.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,GAAG,MAAM,KAAK,CAAC;AAE3B,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAG3E,OAAO,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAC;AAQzE,qBAAa,kBAAmB,YAAW,WAAW;IAElD,OAAO,CAAC,YAAY,CAAkB;gBAE1B,YAAY,EAAE,eAAe;IAIzC,cAAc,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,QAAQ,GAAG,GAAG;IAOnD,YAAY,IAAI,GAAG;IASnB,gBAAgB,IAAI,GAAG,CAAC,MAAM;IA6B9B,MAAM,CAAC,MAAM,EAAE,YAAY;IAmC3B,yBAAyB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY;CAajE;AAED,eAAO,MAAM,6BAA6B,6BAA8B,yBAAyB,4CAyChG,CAAA;AAED,eAAO,MAAM,+BAA+B,6BAA8B,yBAAyB,4CAiHlG,CAAA;AAED,eAAO,MAAM,+BAA+B,6BAA8B,yBAAyB,4CAgMlG,CAAC;AAEF,eAAO,MAAM,wBAAwB,6BAA8B,yBAAyB,4CAqD3F,CAAC;AAEF,eAAO,MAAM,gCAAgC,8BAG1C,yBAAyB,4CA0F3B,CAAC"}
|
|
@@ -250,7 +250,13 @@ export var DynamicJsonEditorFormEditWidget = function (_a) {
|
|
|
250
250
|
var _h = useState(JSON.parse(value || '[]')), data = _h[0], setData = _h[1];
|
|
251
251
|
var handleAllChange = function (updated) {
|
|
252
252
|
setData(updated);
|
|
253
|
-
|
|
253
|
+
fieldContext.onChange({
|
|
254
|
+
target: {
|
|
255
|
+
name: fieldLayoutInfo.attrs.name,
|
|
256
|
+
value: JSON.stringify(updated),
|
|
257
|
+
type: "text",
|
|
258
|
+
},
|
|
259
|
+
}, "onFieldChange");
|
|
254
260
|
};
|
|
255
261
|
var handleChange = function (index, key, value) {
|
|
256
262
|
var updated = __spreadArray([], data, true);
|
|
@@ -316,7 +322,15 @@ export var CodeEditorFormEditWidget = function (_a) {
|
|
|
316
322
|
var isFormFieldValid = function (formik, fieldName) {
|
|
317
323
|
return formik.touched[fieldName] && formik.errors[fieldName];
|
|
318
324
|
};
|
|
319
|
-
return (_jsxs("div", { className: "mt-4", children: [((_e = fieldLayoutInfo === null || fieldLayoutInfo === void 0 ? void 0 : fieldLayoutInfo.attrs) === null || _e === void 0 ? void 0 : _e.showLabel) !== false && (_jsxs("label", { className: "".concat(styles.fieldLabel, " form-field-label mb-10"), children: [fieldLabel, fieldMetadata.required && _jsx("span", { className: "text-red-500", children: " *" }), _jsx(SolidFieldTooltip, { fieldContext: fieldContext })] })), _jsx("div", { className: "border border-gray-300 rounded overflow-hidden", children: _jsx(SolidCodeEditor, { value: value, onChange: function (val) {
|
|
325
|
+
return (_jsxs("div", { className: "mt-4", children: [((_e = fieldLayoutInfo === null || fieldLayoutInfo === void 0 ? void 0 : fieldLayoutInfo.attrs) === null || _e === void 0 ? void 0 : _e.showLabel) !== false && (_jsxs("label", { className: "".concat(styles.fieldLabel, " form-field-label mb-10"), children: [fieldLabel, fieldMetadata.required && _jsx("span", { className: "text-red-500", children: " *" }), _jsx(SolidFieldTooltip, { fieldContext: fieldContext })] })), _jsx("div", { className: "border border-gray-300 rounded overflow-hidden", children: _jsx(SolidCodeEditor, { value: value, onChange: function (val) {
|
|
326
|
+
fieldContext.onChange({
|
|
327
|
+
target: {
|
|
328
|
+
name: fieldLayoutInfo.attrs.name,
|
|
329
|
+
value: val,
|
|
330
|
+
type: "text",
|
|
331
|
+
},
|
|
332
|
+
}, "onFieldChange");
|
|
333
|
+
}, height: (_g = (_f = fieldLayoutInfo.attrs) === null || _f === void 0 ? void 0 : _f.height) !== null && _g !== void 0 ? _g : "200px", fontSize: (_j = (_h = fieldLayoutInfo.attrs) === null || _h === void 0 ? void 0 : _h.fontSize) !== null && _j !== void 0 ? _j : "14px", readOnly: readOnly || disabled, language: codeLanguage }) }), isFormFieldValid(formik, fieldLayoutInfo.attrs.name) && (_jsx("div", { className: "mt-1", children: _jsx(SolidMessage, { text: (_k = formik.errors[fieldLayoutInfo.attrs.name]) === null || _k === void 0 ? void 0 : _k.toString() }) }))] }));
|
|
320
334
|
};
|
|
321
335
|
export var DynamicSelectionStaticEditWidget = function (_a) {
|
|
322
336
|
var _b, _c;
|
|
@@ -332,7 +346,13 @@ export var DynamicSelectionStaticEditWidget = function (_a) {
|
|
|
332
346
|
var _a;
|
|
333
347
|
var updated = __assign(__assign({}, data), (_a = {}, _a[key] = value, _a));
|
|
334
348
|
setData(updated);
|
|
335
|
-
|
|
349
|
+
fieldContext.onChange({
|
|
350
|
+
target: {
|
|
351
|
+
name: name,
|
|
352
|
+
value: JSON.stringify(updated),
|
|
353
|
+
type: "text",
|
|
354
|
+
},
|
|
355
|
+
}, "onFieldChange");
|
|
336
356
|
};
|
|
337
357
|
var renderInput = function (key) {
|
|
338
358
|
var meta = fieldJsonSchema[key];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SolidLongTextField.js","sourceRoot":"","sources":["../../../../../src/components/core/form/fields/SolidLongTextField.tsx"],"names":[],"mappings":"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","sourcesContent":["\nimport * as Yup from 'yup';\nimport styles from './solidFields.module.css';\nimport { FormikObject, ISolidField, SolidFieldProps } from \"./ISolidField\";\nimport { useEffect, useRef, useState } from \"react\";\nimport { getExtensionComponent } from \"../../../../helpers/registry\";\nimport { SolidFormFieldWidgetProps } from \"../../../../types/solid-core\";\nimport { SolidFieldTooltip } from \"../../../../components/common/SolidFieldTooltip\";\nimport { ERROR_MESSAGES } from \"../../../../constants/error-messages\";\nimport { SolidButton, SolidDatePicker, SolidSelect, SolidInput, SolidCodeEditor, SolidIcon, SolidTextarea } from \"../../../shad-cn-ui\";\nimport { parseSolidIconMeta } from \"../../../shad-cn-ui/SolidIcon\";\nimport { SolidMessage } from \"../../../shad-cn-ui/SolidMessage\";\n\n\nexport class SolidLongTextField implements ISolidField {\n\n private fieldContext: SolidFieldProps;\n\n constructor(fieldContext: SolidFieldProps) {\n this.fieldContext = fieldContext;\n }\n\n updateFormData(value: any, formData: FormData): any {\n const fieldLayoutInfo = this.fieldContext.field;\n if (value !== undefined && value !== null) {\n formData.append(fieldLayoutInfo.attrs.name, value);\n }\n }\n\n initialValue(): any {\n const fieldName = this.fieldContext.field.attrs.name;\n const fieldDefaultValue = this.fieldContext?.fieldMetadata?.defaultValue;\n\n const existingValue = this.fieldContext.data[fieldName];\n\n return existingValue !== undefined && existingValue !== null ? existingValue : fieldDefaultValue || '';\n }\n\n validationSchema(): Yup.Schema {\n let schema: Yup.StringSchema<string | null | undefined> = Yup.string();\n\n const fieldMetadata = this.fieldContext.fieldMetadata;\n const fieldLayoutInfo = this.fieldContext.field;\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n\n // 1. required \n if (fieldMetadata.required) {\n schema = schema.required(ERROR_MESSAGES.FIELD_REUQIRED(fieldLabel));\n } else {\n schema = schema.nullable(); // Allow null when not required\n }\n // 2. length (min/max)\n if (fieldMetadata.min && fieldMetadata.min > 0) {\n schema = schema.min(fieldMetadata.min, ERROR_MESSAGES.FIELD_MINIMUM_CHARACTER(fieldLabel, fieldMetadata.min));\n }\n if (fieldMetadata.max && fieldMetadata.max > 0) {\n schema = schema.max(fieldMetadata.max, ERROR_MESSAGES.FIELD_MAXIMUM_CHARACTER(fieldLabel, fieldMetadata.max));\n }\n // 3. regular expression\n if (fieldMetadata.regexPattern) {\n const regexPatternNotMatchingErrorMsg = fieldMetadata.regexPatternNotMatchingErrorMsg ?? `${fieldLabel} has invalid data.`\n schema = schema.matches(fieldMetadata.regexPattern, regexPatternNotMatchingErrorMsg);\n }\n\n return schema;\n }\n\n render(formik: FormikObject) {\n const fieldLayoutInfo = this.fieldContext.field;\n const className = fieldLayoutInfo.attrs?.className || 'field col-12';\n const isFormFieldValid = (formik: any, fieldName: string) => formik.touched[fieldName] && formik.errors[fieldName];\n\n let viewWidget = fieldLayoutInfo.attrs.viewWidget;\n let editWidget = fieldLayoutInfo.attrs.editWidget;\n if (!editWidget) {\n editWidget = 'DefaultLongTextFormEditWidget';\n }\n if (!viewWidget) {\n viewWidget = 'DefaultShortTextFormViewWidget';\n }\n const viewMode: string = this.fieldContext.viewMode;\n\n return (\n <>\n <div className={className}>\n\n {viewMode === \"view\" &&\n this.renderExtensionRenderMode(viewWidget, formik)\n }\n {viewMode === \"edit\" && (\n <>\n {editWidget &&\n this.renderExtensionRenderMode(editWidget, formik)\n }\n </>\n )\n }\n </div>\n </>\n );\n }\n\n renderExtensionRenderMode(widget: string, formik: FormikObject) {\n let DynamicWidget = getExtensionComponent(widget);\n const widgetProps: SolidFormFieldWidgetProps = {\n formik: formik,\n fieldContext: this.fieldContext,\n }\n return (\n <>\n {DynamicWidget && <DynamicWidget {...widgetProps} />}\n </>\n )\n }\n\n}\n\nexport const DefaultLongTextFormEditWidget = ({ formik, fieldContext }: SolidFormFieldWidgetProps) => {\n\n const fieldMetadata = fieldContext.fieldMetadata;\n const fieldLayoutInfo = fieldContext.field;\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n const solidFormViewMetaData = fieldContext.solidFormViewMetaData;\n const showFieldLabel = fieldLayoutInfo?.attrs?.showLabel;\n const readOnlyPermission = fieldContext.readOnly;\n\n\n const fieldDisabled = fieldLayoutInfo.attrs?.disabled;\n const fieldReadonly = fieldLayoutInfo.attrs?.readonly;\n\n const formDisabled = solidFormViewMetaData.data.solidView?.layout?.attrs?.disabled;\n const formReadonly = solidFormViewMetaData.data.solidView?.layout?.attrs?.readonly;\n const isFormFieldValid = (formik: any, fieldName: string) => formik.touched[fieldName] && formik.errors[fieldName];\n\n return (\n <div className={styles.fieldWrapper}>\n {showFieldLabel != false &&\n <label htmlFor={fieldLayoutInfo.attrs.name} className={styles.fieldLabel}>\n {fieldLabel}\n {fieldMetadata.required && <span className=\"text-red-500\">*</span>}\n <SolidFieldTooltip fieldContext={fieldContext} />\n </label>\n }\n <SolidTextarea\n readOnly={formReadonly || fieldReadonly || readOnlyPermission}\n disabled={formDisabled || fieldDisabled}\n id={fieldLayoutInfo.attrs.name}\n aria-describedby={`${fieldLayoutInfo.attrs.name}-help`}\n onChange={(e: React.ChangeEvent<HTMLTextAreaElement>) => fieldContext.onChange(e, 'onFieldChange')}\n value={formik.values[fieldLayoutInfo.attrs.name] || ''}\n rows={5}\n className={styles.fieldTextarea}\n />\n {isFormFieldValid(formik, fieldLayoutInfo.attrs.name) && (\n <p className={styles.fieldError}>{formik?.errors[fieldLayoutInfo.attrs.name]?.toString()}</p>\n )}\n </div>\n );\n}\n\nexport const DynamicJsonEditorFormViewWidget = ({ formik, fieldContext }: SolidFormFieldWidgetProps) => {\n const fieldMetadata = fieldContext.fieldMetadata;\n const fieldLayoutInfo = fieldContext.field;\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n\n const readOnly = fieldLayoutInfo.attrs?.readonly || fieldContext.readOnly;\n const disabled = fieldLayoutInfo.attrs?.disabled;\n const value = formik.values[fieldLayoutInfo.attrs.name] || '';\n const codeLanguage = fieldLayoutInfo.attrs.editorLanguage || 'ts';\n\n const isFormFieldValid = (formik: any, fieldName: string) =>\n formik.touched[fieldName] && formik.errors[fieldName];\n\n // Sample schema, this comes from the metadata...\n // {\n // key1: {\n // required: true,\n // type: \"string\",\n // },\n // key2: {\n // required: true,\n // type: \"selectionStatic\",\n // allowedValues: [\n // \"selection static val 1\",\n // \"selection static val 2\",\n // \"selection static val 3\",\n // \"selection static val 4\",\n // ],\n // },\n // };\n const fieldJsonSchema = fieldLayoutInfo.attrs?.jsonSchema;\n if (!fieldJsonSchema) {\n return <SolidMessage severity=\"error\" text=\"Field Layout Attributes are missing jsonSchema, cannot render with widget jsonEditor without specifying the schema\" />\n }\n const [data, setData] = useState(JSON.parse(value || '[]'));\n\n const renderInput = (value: any, key: string, index: number) => {\n // @ts-ignore\n const meta: any = fieldJsonSchema[key];\n if (!meta) return null;\n\n if (meta.type === \"string\" || meta.type === \"shortText\") {\n return <SolidInput value={value} readOnly disabled />;\n }\n if (meta.type === \"longText\") {\n return (\n <SolidTextarea value={value} rows={10} cols={100} readOnly className={styles.fieldTextarea} />\n );\n }\n if (meta.type === \"date\" || meta.type === \"datetime\") {\n return (\n <SolidDatePicker\n selected={value ? new Date(value) : null}\n onChange={() => { }}\n showTimeSelect={meta.type === \"datetime\"}\n disabled\n />\n );\n }\n\n if (meta.type === \"selectionStatic\") {\n return (\n <SolidSelect\n value={value}\n // @ts-ignore\n options={meta.allowedValues.map((v) => ({ label: v, value: v }))}\n placeholder=\"Select.\"\n disabled\n />\n );\n }\n\n return null;\n };\n\n return (\n <div className=\"mt-4\">\n {fieldLayoutInfo?.attrs?.showLabel !== false && (\n <label className={`${styles.fieldLabel} form-field-label mb-10`}>\n {fieldLabel}\n {fieldMetadata.required && <span className=\"text-red-500\"> *</span>}\n <SolidFieldTooltip fieldContext={fieldContext} />\n </label>\n )}\n\n <div className=\"p-4 border-round surface-card shadow-1\">\n\n <div className=\"flex flex-column gap-2\">\n {\n // @ts-ignore\n data.map((row, idx) => (\n <div\n key={idx}\n className={`flex ${fieldLayoutInfo.attrs?.className ? `flex-${fieldLayoutInfo.attrs?.className}` : 'flex-row'} border-1 border-round p-3 gap-2`}\n >\n {Object.keys(fieldJsonSchema).map((key) => (\n <div key={key} className=\"flex flex-column gap-1\">\n <label>{key.charAt(0).toUpperCase() + key.slice(1)}</label>\n {\n // @ts-ignore\n renderInput(row[key], key, idx)\n }\n </div>\n ))}\n\n </div>\n ))\n }\n </div>\n\n </div>\n </div>\n );\n}\n\nexport const DynamicJsonEditorFormEditWidget = ({ formik, fieldContext }: SolidFormFieldWidgetProps) => {\n const fieldMetadata = fieldContext.fieldMetadata;\n const fieldLayoutInfo = fieldContext.field;\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n\n const readOnly = fieldLayoutInfo.attrs?.readonly || fieldContext.readOnly;\n const disabled = fieldLayoutInfo.attrs?.disabled;\n\n const value = formik.values[fieldLayoutInfo.attrs.name] || '';\n\n const isFormFieldValid = (formik: any, fieldName: string) =>\n formik.touched[fieldName] && formik.errors[fieldName];\n\n // Sample schema, this comes from the metadata...\n // {\n // key1: {\n // required: true,\n // type: \"string\",\n // },\n // key2: {\n // required: true,\n // type: \"selectionStatic\",\n // allowedValues: [\n // \"selection static val 1\",\n // \"selection static val 2\",\n // \"selection static val 3\",\n // \"selection static val 4\",\n // ],\n // },\n // };\n const fieldJsonSchema = fieldLayoutInfo.attrs?.jsonSchema;\n if (!fieldJsonSchema) {\n return <SolidMessage severity=\"error\" text=\"Field Layout Attributes are missing jsonSchema, cannot render with widget jsonEditor without specifying the schema\" />\n }\n const [data, setData] = useState(JSON.parse(value || '[]'));\n\n const handleAllChange = (updated: any) => {\n setData(updated);\n formik.setFieldValue(fieldLayoutInfo.attrs.name, JSON.stringify(updated));\n }\n\n const handleChange = (index: number, key: string, value: any) => {\n const updated = [...data];\n // @ts-ignore\n updated[index][key] = value;\n handleAllChange(updated);\n };\n\n const handleAdd = () => {\n const newItem = {};\n Object.keys(fieldJsonSchema).forEach((key) => {\n // @ts-ignore\n newItem[key] = \"\";\n });\n // @ts-ignore\n handleAllChange([...data, newItem]);\n };\n\n const handleRemove = (index: number) => {\n const updated = [...data];\n updated.splice(index, 1);\n handleAllChange(updated);\n };\n\n const renderInput = (value: any, key: string, index: number) => {\n // @ts-ignore\n const meta: any = fieldJsonSchema[key];\n if (!meta) return null;\n\n if (meta.type === \"string\" || meta.type === \"shortText\") {\n return (\n <SolidInput\n value={value}\n onChange={(e) => handleChange(index, key, e.target.value)}\n disabled={!!disabled}\n readOnly={!!readOnly}\n />\n );\n }\n\n if (meta.type === \"longText\") {\n return (\n <SolidTextarea\n onChange={(e) => handleChange(index, key, e.target.value)}\n value={value}\n rows={10}\n cols={100}\n className={styles.fieldTextarea}\n />\n );\n }\n\n if (meta.type === \"date\" || meta.type === \"datetime\") {\n return (\n <SolidDatePicker\n selected={value ? new Date(value) : null}\n onChange={(date: Date | null) => handleChange(index, key, date)}\n showTimeSelect={meta.type === \"datetime\"}\n disabled={!!disabled}\n />\n );\n }\n\n if (meta.type === \"selectionStatic\") {\n return (\n <SolidSelect\n value={value}\n // @ts-ignore\n options={meta.allowedValues.map((v) => ({ label: v, value: v }))}\n onChange={(e) => handleChange(index, key, e.value)}\n placeholder=\"Select.\"\n disabled={!!disabled}\n />\n );\n }\n\n return null;\n };\n\n return (\n <div className=\"mt-4\">\n {fieldLayoutInfo?.attrs?.showLabel !== false && (\n <label className={`${styles.fieldLabel} form-field-label mb-10`}>\n {fieldLabel}\n {fieldMetadata.required && <span className=\"text-red-500\"> *</span>}\n <SolidFieldTooltip fieldContext={fieldContext} />\n </label>\n )}\n\n <div className=\"p-4 border-round surface-card shadow-1\">\n <div className=\"flex justify-content-between align-items-center mb-3\">\n {!disabled && !readOnly ? (\n <SolidButton\n type=\"button\"\n leftIcon={<SolidIcon name=\"si-plus\" aria-hidden />}\n onClick={handleAdd}\n >\n Add\n </SolidButton>\n ) : null}\n </div>\n\n <div className=\"flex flex-column gap-2\">\n {\n // @ts-ignore\n data.map((row, idx) => (\n <div\n key={idx}\n className={`flex ${fieldLayoutInfo.attrs?.className ? `flex-${fieldLayoutInfo.attrs?.className}` : 'flex-row'} border-1 border-round p-3 gap-2`}\n >\n <div className=\"flex gap-3 align-items-center\">\n {Object.keys(fieldJsonSchema).map((key) => (\n <div key={key} className=\"flex flex-column gap-1\">\n <label>{key.charAt(0).toUpperCase() + key.slice(1)}</label>\n {\n // @ts-ignore\n renderInput(row[key], key, idx)\n }\n </div>\n ))}\n </div>\n {!disabled && !readOnly ? (\n <SolidButton\n type=\"button\"\n leftIcon={<SolidIcon name=\"si-minus\" aria-hidden />}\n className=\"ml-2 h-2rem w-2rem rounded-circle\"\n onClick={() => handleRemove(idx)}\n />\n ) : null}\n </div>\n ))\n }\n </div>\n\n {\n fieldLayoutInfo.attrs?.jsonSchemaShowPreview &&\n <pre className=\"mt-4 bg-gray-100 p-3 border-round overflow-auto\">\n {JSON.stringify(data, null, 2)}\n </pre>\n }\n </div>\n </div>\n );\n};\n\nexport const CodeEditorFormEditWidget = ({ formik, fieldContext }: SolidFormFieldWidgetProps) => {\n const fieldMetadata = fieldContext.fieldMetadata;\n const fieldLayoutInfo = fieldContext.field;\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n\n const readOnly = fieldLayoutInfo.attrs?.readonly || fieldContext.readOnly;\n const disabled = fieldLayoutInfo.attrs?.disabled;\n const codeLanguage = fieldLayoutInfo.attrs.editorLanguage || 'ts';\n\n const value = formik.values[fieldLayoutInfo.attrs.name] || '';\n\n const isFormFieldValid = (formik: any, fieldName: string) =>\n formik.touched[fieldName] && formik.errors[fieldName];\n\n return (\n <div className=\"mt-4\">\n {fieldLayoutInfo?.attrs?.showLabel !== false && (\n <label className={`${styles.fieldLabel} form-field-label mb-10`}>\n {fieldLabel}\n {fieldMetadata.required && <span className=\"text-red-500\"> *</span>}\n <SolidFieldTooltip fieldContext={fieldContext} />\n </label>\n )}\n\n <div className=\"border border-gray-300 rounded overflow-hidden\">\n <SolidCodeEditor\n value={value}\n onChange={(val) => formik.setFieldValue(fieldLayoutInfo.attrs.name, val)}\n height={fieldLayoutInfo.attrs?.height ?? \"200px\"}\n fontSize={fieldLayoutInfo.attrs?.fontSize ?? \"14px\"}\n readOnly={readOnly || disabled}\n language={codeLanguage}\n />\n </div>\n\n {isFormFieldValid(formik, fieldLayoutInfo.attrs.name) && (\n <div className=\"mt-1\">\n <SolidMessage text={formik.errors[fieldLayoutInfo.attrs.name]?.toString()} />\n </div>\n )}\n </div>\n );\n};\n\nexport const DynamicSelectionStaticEditWidget = ({\n formik,\n fieldContext,\n}: SolidFormFieldWidgetProps) => {\n const fieldLayoutInfo = fieldContext.field;\n const fieldJsonSchema = fieldLayoutInfo.attrs.jsonSchema;\n const name = fieldLayoutInfo.attrs.name;\n const readOnly = fieldLayoutInfo.attrs?.readonly || fieldContext.readOnly;\n const disabled = fieldLayoutInfo.attrs?.disabled;\n\n const value = formik.values[name] || \"{}\";\n const [data, setData] = useState(JSON.parse(value || \"{}\"));\n\n const handleChange = (key: string, value: any) => {\n const updated = { ...data, [key]: value };\n setData(updated);\n formik.setFieldValue(name, JSON.stringify(updated));\n };\n\n const renderInput = (key: string) => {\n const meta: any = fieldJsonSchema[key];\n const val = data[key];\n\n if (meta?.type === \"selectionStatic\") {\n return (\n <SolidSelect\n value={val}\n options={meta.allowedValues.map((v: any) => ({\n label: v,\n value: v,\n }))}\n onChange={(e) => handleChange(key, e.value)}\n placeholder={meta.placeHolder || \"Select.\"}\n disabled={!!disabled}\n className=\"w-full\"\n />\n );\n }\n\n return null;\n };\n const shouldShowField = (key: string) => {\n const meta = fieldJsonSchema[key];\n\n if (!meta?.visibility) return true; // default show\n\n if (meta.visibility === \"parent\") {\n const parentKey = Object.keys(fieldJsonSchema)[0]; // assume first field is parent\n return !!data[parentKey]; // show only if parent has value\n }\n\n return true;\n };\n\n return (\n <div className=\"flex gap-3 align-items-center\">\n {Object.keys(fieldJsonSchema).map((key) => {\n const meta: any = fieldJsonSchema[key];\n if (!shouldShowField(key)) return null;\n return (\n <div key={key} className={\"flex flex-column gap-2 \" + (meta.className || '')}>\n {/*load prime header icon and headerText */}\n {(meta.headerText || meta.headerIcon) && (\n <div className=\"flex align-items-center gap-2\">\n {meta.headerIcon && (() => { const m = parseSolidIconMeta(meta.headerIcon); return m ? <SolidIcon name={m.name} spin={m.spin} /> : <i className={meta.headerIcon}></i>; })()}\n <span className=\"font-semibold form-field-label font-medium\">\n {meta.headerText ?? key}\n </span>\n </div>\n )}\n {/* Notes below input */}\n {meta.noteText && (\n <small className=\"text-secondary mt-2\">{meta.noteText}</small>\n )}\n {/*load note here */}\n <label className=\"form-field-label font-medium\">{key.charAt(0).toUpperCase() + key.slice(1)} {meta.required && <span className=\"text-red-500\">*</span>}</label>\n <div className=\"w-full mt-1 flex flex-row gap-2\">\n {renderInput(key)}\n </div>\n </div>\n );\n })}\n </div>\n );\n};\n"]}
|
|
1
|
+
{"version":3,"file":"SolidLongTextField.js","sourceRoot":"","sources":["../../../../../src/components/core/form/fields/SolidLongTextField.tsx"],"names":[],"mappings":"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","sourcesContent":["\nimport * as Yup from 'yup';\nimport styles from './solidFields.module.css';\nimport { FormikObject, ISolidField, SolidFieldProps } from \"./ISolidField\";\nimport { useEffect, useRef, useState } from \"react\";\nimport { getExtensionComponent } from \"../../../../helpers/registry\";\nimport { SolidFormFieldWidgetProps } from \"../../../../types/solid-core\";\nimport { SolidFieldTooltip } from \"../../../../components/common/SolidFieldTooltip\";\nimport { ERROR_MESSAGES } from \"../../../../constants/error-messages\";\nimport { SolidButton, SolidDatePicker, SolidSelect, SolidInput, SolidCodeEditor, SolidIcon, SolidTextarea } from \"../../../shad-cn-ui\";\nimport { parseSolidIconMeta } from \"../../../shad-cn-ui/SolidIcon\";\nimport { SolidMessage } from \"../../../shad-cn-ui/SolidMessage\";\n\n\nexport class SolidLongTextField implements ISolidField {\n\n private fieldContext: SolidFieldProps;\n\n constructor(fieldContext: SolidFieldProps) {\n this.fieldContext = fieldContext;\n }\n\n updateFormData(value: any, formData: FormData): any {\n const fieldLayoutInfo = this.fieldContext.field;\n if (value !== undefined && value !== null) {\n formData.append(fieldLayoutInfo.attrs.name, value);\n }\n }\n\n initialValue(): any {\n const fieldName = this.fieldContext.field.attrs.name;\n const fieldDefaultValue = this.fieldContext?.fieldMetadata?.defaultValue;\n\n const existingValue = this.fieldContext.data[fieldName];\n\n return existingValue !== undefined && existingValue !== null ? existingValue : fieldDefaultValue || '';\n }\n\n validationSchema(): Yup.Schema {\n let schema: Yup.StringSchema<string | null | undefined> = Yup.string();\n\n const fieldMetadata = this.fieldContext.fieldMetadata;\n const fieldLayoutInfo = this.fieldContext.field;\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n\n // 1. required \n if (fieldMetadata.required) {\n schema = schema.required(ERROR_MESSAGES.FIELD_REUQIRED(fieldLabel));\n } else {\n schema = schema.nullable(); // Allow null when not required\n }\n // 2. length (min/max)\n if (fieldMetadata.min && fieldMetadata.min > 0) {\n schema = schema.min(fieldMetadata.min, ERROR_MESSAGES.FIELD_MINIMUM_CHARACTER(fieldLabel, fieldMetadata.min));\n }\n if (fieldMetadata.max && fieldMetadata.max > 0) {\n schema = schema.max(fieldMetadata.max, ERROR_MESSAGES.FIELD_MAXIMUM_CHARACTER(fieldLabel, fieldMetadata.max));\n }\n // 3. regular expression\n if (fieldMetadata.regexPattern) {\n const regexPatternNotMatchingErrorMsg = fieldMetadata.regexPatternNotMatchingErrorMsg ?? `${fieldLabel} has invalid data.`\n schema = schema.matches(fieldMetadata.regexPattern, regexPatternNotMatchingErrorMsg);\n }\n\n return schema;\n }\n\n render(formik: FormikObject) {\n const fieldLayoutInfo = this.fieldContext.field;\n const className = fieldLayoutInfo.attrs?.className || 'field col-12';\n const isFormFieldValid = (formik: any, fieldName: string) => formik.touched[fieldName] && formik.errors[fieldName];\n\n let viewWidget = fieldLayoutInfo.attrs.viewWidget;\n let editWidget = fieldLayoutInfo.attrs.editWidget;\n if (!editWidget) {\n editWidget = 'DefaultLongTextFormEditWidget';\n }\n if (!viewWidget) {\n viewWidget = 'DefaultShortTextFormViewWidget';\n }\n const viewMode: string = this.fieldContext.viewMode;\n\n return (\n <>\n <div className={className}>\n\n {viewMode === \"view\" &&\n this.renderExtensionRenderMode(viewWidget, formik)\n }\n {viewMode === \"edit\" && (\n <>\n {editWidget &&\n this.renderExtensionRenderMode(editWidget, formik)\n }\n </>\n )\n }\n </div>\n </>\n );\n }\n\n renderExtensionRenderMode(widget: string, formik: FormikObject) {\n let DynamicWidget = getExtensionComponent(widget);\n const widgetProps: SolidFormFieldWidgetProps = {\n formik: formik,\n fieldContext: this.fieldContext,\n }\n return (\n <>\n {DynamicWidget && <DynamicWidget {...widgetProps} />}\n </>\n )\n }\n\n}\n\nexport const DefaultLongTextFormEditWidget = ({ formik, fieldContext }: SolidFormFieldWidgetProps) => {\n\n const fieldMetadata = fieldContext.fieldMetadata;\n const fieldLayoutInfo = fieldContext.field;\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n const solidFormViewMetaData = fieldContext.solidFormViewMetaData;\n const showFieldLabel = fieldLayoutInfo?.attrs?.showLabel;\n const readOnlyPermission = fieldContext.readOnly;\n\n\n const fieldDisabled = fieldLayoutInfo.attrs?.disabled;\n const fieldReadonly = fieldLayoutInfo.attrs?.readonly;\n\n const formDisabled = solidFormViewMetaData.data.solidView?.layout?.attrs?.disabled;\n const formReadonly = solidFormViewMetaData.data.solidView?.layout?.attrs?.readonly;\n const isFormFieldValid = (formik: any, fieldName: string) => formik.touched[fieldName] && formik.errors[fieldName];\n\n return (\n <div className={styles.fieldWrapper}>\n {showFieldLabel != false &&\n <label htmlFor={fieldLayoutInfo.attrs.name} className={styles.fieldLabel}>\n {fieldLabel}\n {fieldMetadata.required && <span className=\"text-red-500\">*</span>}\n <SolidFieldTooltip fieldContext={fieldContext} />\n </label>\n }\n <SolidTextarea\n readOnly={formReadonly || fieldReadonly || readOnlyPermission}\n disabled={formDisabled || fieldDisabled}\n id={fieldLayoutInfo.attrs.name}\n aria-describedby={`${fieldLayoutInfo.attrs.name}-help`}\n onChange={(e: React.ChangeEvent<HTMLTextAreaElement>) => fieldContext.onChange(e, 'onFieldChange')}\n value={formik.values[fieldLayoutInfo.attrs.name] || ''}\n rows={5}\n className={styles.fieldTextarea}\n />\n {isFormFieldValid(formik, fieldLayoutInfo.attrs.name) && (\n <p className={styles.fieldError}>{formik?.errors[fieldLayoutInfo.attrs.name]?.toString()}</p>\n )}\n </div>\n );\n}\n\nexport const DynamicJsonEditorFormViewWidget = ({ formik, fieldContext }: SolidFormFieldWidgetProps) => {\n const fieldMetadata = fieldContext.fieldMetadata;\n const fieldLayoutInfo = fieldContext.field;\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n\n const readOnly = fieldLayoutInfo.attrs?.readonly || fieldContext.readOnly;\n const disabled = fieldLayoutInfo.attrs?.disabled;\n const value = formik.values[fieldLayoutInfo.attrs.name] || '';\n const codeLanguage = fieldLayoutInfo.attrs.editorLanguage || 'ts';\n\n const isFormFieldValid = (formik: any, fieldName: string) =>\n formik.touched[fieldName] && formik.errors[fieldName];\n\n // Sample schema, this comes from the metadata...\n // {\n // key1: {\n // required: true,\n // type: \"string\",\n // },\n // key2: {\n // required: true,\n // type: \"selectionStatic\",\n // allowedValues: [\n // \"selection static val 1\",\n // \"selection static val 2\",\n // \"selection static val 3\",\n // \"selection static val 4\",\n // ],\n // },\n // };\n const fieldJsonSchema = fieldLayoutInfo.attrs?.jsonSchema;\n if (!fieldJsonSchema) {\n return <SolidMessage severity=\"error\" text=\"Field Layout Attributes are missing jsonSchema, cannot render with widget jsonEditor without specifying the schema\" />\n }\n const [data, setData] = useState(JSON.parse(value || '[]'));\n\n const renderInput = (value: any, key: string, index: number) => {\n // @ts-ignore\n const meta: any = fieldJsonSchema[key];\n if (!meta) return null;\n\n if (meta.type === \"string\" || meta.type === \"shortText\") {\n return <SolidInput value={value} readOnly disabled />;\n }\n if (meta.type === \"longText\") {\n return (\n <SolidTextarea value={value} rows={10} cols={100} readOnly className={styles.fieldTextarea} />\n );\n }\n if (meta.type === \"date\" || meta.type === \"datetime\") {\n return (\n <SolidDatePicker\n selected={value ? new Date(value) : null}\n onChange={() => { }}\n showTimeSelect={meta.type === \"datetime\"}\n disabled\n />\n );\n }\n\n if (meta.type === \"selectionStatic\") {\n return (\n <SolidSelect\n value={value}\n // @ts-ignore\n options={meta.allowedValues.map((v) => ({ label: v, value: v }))}\n placeholder=\"Select.\"\n disabled\n />\n );\n }\n\n return null;\n };\n\n return (\n <div className=\"mt-4\">\n {fieldLayoutInfo?.attrs?.showLabel !== false && (\n <label className={`${styles.fieldLabel} form-field-label mb-10`}>\n {fieldLabel}\n {fieldMetadata.required && <span className=\"text-red-500\"> *</span>}\n <SolidFieldTooltip fieldContext={fieldContext} />\n </label>\n )}\n\n <div className=\"p-4 border-round surface-card shadow-1\">\n\n <div className=\"flex flex-column gap-2\">\n {\n // @ts-ignore\n data.map((row, idx) => (\n <div\n key={idx}\n className={`flex ${fieldLayoutInfo.attrs?.className ? `flex-${fieldLayoutInfo.attrs?.className}` : 'flex-row'} border-1 border-round p-3 gap-2`}\n >\n {Object.keys(fieldJsonSchema).map((key) => (\n <div key={key} className=\"flex flex-column gap-1\">\n <label>{key.charAt(0).toUpperCase() + key.slice(1)}</label>\n {\n // @ts-ignore\n renderInput(row[key], key, idx)\n }\n </div>\n ))}\n\n </div>\n ))\n }\n </div>\n\n </div>\n </div>\n );\n}\n\nexport const DynamicJsonEditorFormEditWidget = ({ formik, fieldContext }: SolidFormFieldWidgetProps) => {\n const fieldMetadata = fieldContext.fieldMetadata;\n const fieldLayoutInfo = fieldContext.field;\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n\n const readOnly = fieldLayoutInfo.attrs?.readonly || fieldContext.readOnly;\n const disabled = fieldLayoutInfo.attrs?.disabled;\n\n const value = formik.values[fieldLayoutInfo.attrs.name] || '';\n\n const isFormFieldValid = (formik: any, fieldName: string) =>\n formik.touched[fieldName] && formik.errors[fieldName];\n\n // Sample schema, this comes from the metadata...\n // {\n // key1: {\n // required: true,\n // type: \"string\",\n // },\n // key2: {\n // required: true,\n // type: \"selectionStatic\",\n // allowedValues: [\n // \"selection static val 1\",\n // \"selection static val 2\",\n // \"selection static val 3\",\n // \"selection static val 4\",\n // ],\n // },\n // };\n const fieldJsonSchema = fieldLayoutInfo.attrs?.jsonSchema;\n if (!fieldJsonSchema) {\n return <SolidMessage severity=\"error\" text=\"Field Layout Attributes are missing jsonSchema, cannot render with widget jsonEditor without specifying the schema\" />\n }\n const [data, setData] = useState(JSON.parse(value || '[]'));\n\n const handleAllChange = (updated: any) => {\n setData(updated);\n fieldContext.onChange(\n {\n target: {\n name: fieldLayoutInfo.attrs.name,\n value: JSON.stringify(updated),\n type: \"text\",\n },\n } as any,\n \"onFieldChange\"\n );\n }\n\n const handleChange = (index: number, key: string, value: any) => {\n const updated = [...data];\n // @ts-ignore\n updated[index][key] = value;\n handleAllChange(updated);\n };\n\n const handleAdd = () => {\n const newItem = {};\n Object.keys(fieldJsonSchema).forEach((key) => {\n // @ts-ignore\n newItem[key] = \"\";\n });\n // @ts-ignore\n handleAllChange([...data, newItem]);\n };\n\n const handleRemove = (index: number) => {\n const updated = [...data];\n updated.splice(index, 1);\n handleAllChange(updated);\n };\n\n const renderInput = (value: any, key: string, index: number) => {\n // @ts-ignore\n const meta: any = fieldJsonSchema[key];\n if (!meta) return null;\n\n if (meta.type === \"string\" || meta.type === \"shortText\") {\n return (\n <SolidInput\n value={value}\n onChange={(e) => handleChange(index, key, e.target.value)}\n disabled={!!disabled}\n readOnly={!!readOnly}\n />\n );\n }\n\n if (meta.type === \"longText\") {\n return (\n <SolidTextarea\n onChange={(e) => handleChange(index, key, e.target.value)}\n value={value}\n rows={10}\n cols={100}\n className={styles.fieldTextarea}\n />\n );\n }\n\n if (meta.type === \"date\" || meta.type === \"datetime\") {\n return (\n <SolidDatePicker\n selected={value ? new Date(value) : null}\n onChange={(date: Date | null) => handleChange(index, key, date)}\n showTimeSelect={meta.type === \"datetime\"}\n disabled={!!disabled}\n />\n );\n }\n\n if (meta.type === \"selectionStatic\") {\n return (\n <SolidSelect\n value={value}\n // @ts-ignore\n options={meta.allowedValues.map((v) => ({ label: v, value: v }))}\n onChange={(e) => handleChange(index, key, e.value)}\n placeholder=\"Select.\"\n disabled={!!disabled}\n />\n );\n }\n\n return null;\n };\n\n return (\n <div className=\"mt-4\">\n {fieldLayoutInfo?.attrs?.showLabel !== false && (\n <label className={`${styles.fieldLabel} form-field-label mb-10`}>\n {fieldLabel}\n {fieldMetadata.required && <span className=\"text-red-500\"> *</span>}\n <SolidFieldTooltip fieldContext={fieldContext} />\n </label>\n )}\n\n <div className=\"p-4 border-round surface-card shadow-1\">\n <div className=\"flex justify-content-between align-items-center mb-3\">\n {!disabled && !readOnly ? (\n <SolidButton\n type=\"button\"\n leftIcon={<SolidIcon name=\"si-plus\" aria-hidden />}\n onClick={handleAdd}\n >\n Add\n </SolidButton>\n ) : null}\n </div>\n\n <div className=\"flex flex-column gap-2\">\n {\n // @ts-ignore\n data.map((row, idx) => (\n <div\n key={idx}\n className={`flex ${fieldLayoutInfo.attrs?.className ? `flex-${fieldLayoutInfo.attrs?.className}` : 'flex-row'} border-1 border-round p-3 gap-2`}\n >\n <div className=\"flex gap-3 align-items-center\">\n {Object.keys(fieldJsonSchema).map((key) => (\n <div key={key} className=\"flex flex-column gap-1\">\n <label>{key.charAt(0).toUpperCase() + key.slice(1)}</label>\n {\n // @ts-ignore\n renderInput(row[key], key, idx)\n }\n </div>\n ))}\n </div>\n {!disabled && !readOnly ? (\n <SolidButton\n type=\"button\"\n leftIcon={<SolidIcon name=\"si-minus\" aria-hidden />}\n className=\"ml-2 h-2rem w-2rem rounded-circle\"\n onClick={() => handleRemove(idx)}\n />\n ) : null}\n </div>\n ))\n }\n </div>\n\n {\n fieldLayoutInfo.attrs?.jsonSchemaShowPreview &&\n <pre className=\"mt-4 bg-gray-100 p-3 border-round overflow-auto\">\n {JSON.stringify(data, null, 2)}\n </pre>\n }\n </div>\n </div>\n );\n};\n\nexport const CodeEditorFormEditWidget = ({ formik, fieldContext }: SolidFormFieldWidgetProps) => {\n const fieldMetadata = fieldContext.fieldMetadata;\n const fieldLayoutInfo = fieldContext.field;\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n\n const readOnly = fieldLayoutInfo.attrs?.readonly || fieldContext.readOnly;\n const disabled = fieldLayoutInfo.attrs?.disabled;\n const codeLanguage = fieldLayoutInfo.attrs.editorLanguage || 'ts';\n\n const value = formik.values[fieldLayoutInfo.attrs.name] || '';\n\n const isFormFieldValid = (formik: any, fieldName: string) =>\n formik.touched[fieldName] && formik.errors[fieldName];\n\n return (\n <div className=\"mt-4\">\n {fieldLayoutInfo?.attrs?.showLabel !== false && (\n <label className={`${styles.fieldLabel} form-field-label mb-10`}>\n {fieldLabel}\n {fieldMetadata.required && <span className=\"text-red-500\"> *</span>}\n <SolidFieldTooltip fieldContext={fieldContext} />\n </label>\n )}\n\n <div className=\"border border-gray-300 rounded overflow-hidden\">\n <SolidCodeEditor\n value={value}\n onChange={(val) => {\n fieldContext.onChange(\n {\n target: {\n name: fieldLayoutInfo.attrs.name,\n value: val,\n type: \"text\",\n },\n } as any,\n \"onFieldChange\"\n );\n }}\n height={fieldLayoutInfo.attrs?.height ?? \"200px\"}\n fontSize={fieldLayoutInfo.attrs?.fontSize ?? \"14px\"}\n readOnly={readOnly || disabled}\n language={codeLanguage}\n />\n </div>\n\n {isFormFieldValid(formik, fieldLayoutInfo.attrs.name) && (\n <div className=\"mt-1\">\n <SolidMessage text={formik.errors[fieldLayoutInfo.attrs.name]?.toString()} />\n </div>\n )}\n </div>\n );\n};\n\nexport const DynamicSelectionStaticEditWidget = ({\n formik,\n fieldContext,\n}: SolidFormFieldWidgetProps) => {\n const fieldLayoutInfo = fieldContext.field;\n const fieldJsonSchema = fieldLayoutInfo.attrs.jsonSchema;\n const name = fieldLayoutInfo.attrs.name;\n const readOnly = fieldLayoutInfo.attrs?.readonly || fieldContext.readOnly;\n const disabled = fieldLayoutInfo.attrs?.disabled;\n\n const value = formik.values[name] || \"{}\";\n const [data, setData] = useState(JSON.parse(value || \"{}\"));\n\n const handleChange = (key: string, value: any) => {\n const updated = { ...data, [key]: value };\n setData(updated);\n fieldContext.onChange(\n {\n target: {\n name,\n value: JSON.stringify(updated),\n type: \"text\",\n },\n } as any,\n \"onFieldChange\"\n );\n };\n\n const renderInput = (key: string) => {\n const meta: any = fieldJsonSchema[key];\n const val = data[key];\n\n if (meta?.type === \"selectionStatic\") {\n return (\n <SolidSelect\n value={val}\n options={meta.allowedValues.map((v: any) => ({\n label: v,\n value: v,\n }))}\n onChange={(e) => handleChange(key, e.value)}\n placeholder={meta.placeHolder || \"Select.\"}\n disabled={!!disabled}\n className=\"w-full\"\n />\n );\n }\n\n return null;\n };\n const shouldShowField = (key: string) => {\n const meta = fieldJsonSchema[key];\n\n if (!meta?.visibility) return true; // default show\n\n if (meta.visibility === \"parent\") {\n const parentKey = Object.keys(fieldJsonSchema)[0]; // assume first field is parent\n return !!data[parentKey]; // show only if parent has value\n }\n\n return true;\n };\n\n return (\n <div className=\"flex gap-3 align-items-center\">\n {Object.keys(fieldJsonSchema).map((key) => {\n const meta: any = fieldJsonSchema[key];\n if (!shouldShowField(key)) return null;\n return (\n <div key={key} className={\"flex flex-column gap-2 \" + (meta.className || '')}>\n {/*load prime header icon and headerText */}\n {(meta.headerText || meta.headerIcon) && (\n <div className=\"flex align-items-center gap-2\">\n {meta.headerIcon && (() => { const m = parseSolidIconMeta(meta.headerIcon); return m ? <SolidIcon name={m.name} spin={m.spin} /> : <i className={meta.headerIcon}></i>; })()}\n <span className=\"font-semibold form-field-label font-medium\">\n {meta.headerText ?? key}\n </span>\n </div>\n )}\n {/* Notes below input */}\n {meta.noteText && (\n <small className=\"text-secondary mt-2\">{meta.noteText}</small>\n )}\n {/*load note here */}\n <label className=\"form-field-label font-medium\">{key.charAt(0).toUpperCase() + key.slice(1)} {meta.required && <span className=\"text-red-500\">*</span>}</label>\n <div className=\"w-full mt-1 flex flex-row gap-2\">\n {renderInput(key)}\n </div>\n </div>\n );\n })}\n </div>\n );\n};\n"]}
|
|
@@ -311,7 +311,16 @@ export const DynamicJsonEditorFormEditWidget = ({ formik, fieldContext }: SolidF
|
|
|
311
311
|
|
|
312
312
|
const handleAllChange = (updated: any) => {
|
|
313
313
|
setData(updated);
|
|
314
|
-
|
|
314
|
+
fieldContext.onChange(
|
|
315
|
+
{
|
|
316
|
+
target: {
|
|
317
|
+
name: fieldLayoutInfo.attrs.name,
|
|
318
|
+
value: JSON.stringify(updated),
|
|
319
|
+
type: "text",
|
|
320
|
+
},
|
|
321
|
+
} as any,
|
|
322
|
+
"onFieldChange"
|
|
323
|
+
);
|
|
315
324
|
}
|
|
316
325
|
|
|
317
326
|
const handleChange = (index: number, key: string, value: any) => {
|
|
@@ -485,7 +494,18 @@ export const CodeEditorFormEditWidget = ({ formik, fieldContext }: SolidFormFiel
|
|
|
485
494
|
<div className="border border-gray-300 rounded overflow-hidden">
|
|
486
495
|
<SolidCodeEditor
|
|
487
496
|
value={value}
|
|
488
|
-
onChange={(val) =>
|
|
497
|
+
onChange={(val) => {
|
|
498
|
+
fieldContext.onChange(
|
|
499
|
+
{
|
|
500
|
+
target: {
|
|
501
|
+
name: fieldLayoutInfo.attrs.name,
|
|
502
|
+
value: val,
|
|
503
|
+
type: "text",
|
|
504
|
+
},
|
|
505
|
+
} as any,
|
|
506
|
+
"onFieldChange"
|
|
507
|
+
);
|
|
508
|
+
}}
|
|
489
509
|
height={fieldLayoutInfo.attrs?.height ?? "200px"}
|
|
490
510
|
fontSize={fieldLayoutInfo.attrs?.fontSize ?? "14px"}
|
|
491
511
|
readOnly={readOnly || disabled}
|
|
@@ -518,7 +538,16 @@ export const DynamicSelectionStaticEditWidget = ({
|
|
|
518
538
|
const handleChange = (key: string, value: any) => {
|
|
519
539
|
const updated = { ...data, [key]: value };
|
|
520
540
|
setData(updated);
|
|
521
|
-
|
|
541
|
+
fieldContext.onChange(
|
|
542
|
+
{
|
|
543
|
+
target: {
|
|
544
|
+
name,
|
|
545
|
+
value: JSON.stringify(updated),
|
|
546
|
+
type: "text",
|
|
547
|
+
},
|
|
548
|
+
} as any,
|
|
549
|
+
"onFieldChange"
|
|
550
|
+
);
|
|
522
551
|
};
|
|
523
552
|
|
|
524
553
|
const renderInput = (key: string) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SolidMediaMultipleField.d.ts","sourceRoot":"","sources":["../../../../../src/components/core/form/fields/SolidMediaMultipleField.tsx"],"names":[],"mappings":"AAkBA,OAAO,KAAK,GAAG,MAAM,KAAK,CAAC;AAC3B,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAK3E,OAAO,EAA6B,8BAA8B,EAAE,MAAM,8BAA8B,CAAC;AAKzG,qBAAa,uBAAwB,YAAW,WAAW;IAEvD,OAAO,CAAC,YAAY,CAAkB;IACtC,OAAO,CAAC,eAAe,CAAC,CAAyD;IACjF,OAAO,CAAC,eAAe,CAAC,CAA0B;gBACtC,YAAY,EAAE,eAAe,EAAE,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,EAAE,KAAK,IAAI,EAC/G,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI;IAM7C,cAAc,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,QAAQ,GAAG,GAAG;IAYnD,YAAY,IAAI,GAAG;IAKnB,gBAAgB,IAAI,GAAG,CAAC,MAAM;IAiD9B,MAAM,CAAC,MAAM,EAAE,YAAY;IAmC3B,yBAAyB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY;CAcjE;AAGD,eAAO,MAAM,kCAAkC,+DAAgE,8BAA8B,
|
|
1
|
+
{"version":3,"file":"SolidMediaMultipleField.d.ts","sourceRoot":"","sources":["../../../../../src/components/core/form/fields/SolidMediaMultipleField.tsx"],"names":[],"mappings":"AAkBA,OAAO,KAAK,GAAG,MAAM,KAAK,CAAC;AAC3B,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAK3E,OAAO,EAA6B,8BAA8B,EAAE,MAAM,8BAA8B,CAAC;AAKzG,qBAAa,uBAAwB,YAAW,WAAW;IAEvD,OAAO,CAAC,YAAY,CAAkB;IACtC,OAAO,CAAC,eAAe,CAAC,CAAyD;IACjF,OAAO,CAAC,eAAe,CAAC,CAA0B;gBACtC,YAAY,EAAE,eAAe,EAAE,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,EAAE,KAAK,IAAI,EAC/G,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI;IAM7C,cAAc,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,QAAQ,GAAG,GAAG;IAYnD,YAAY,IAAI,GAAG;IAKnB,gBAAgB,IAAI,GAAG,CAAC,MAAM;IAiD9B,MAAM,CAAC,MAAM,EAAE,YAAY;IAmC3B,yBAAyB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY;CAcjE;AAGD,eAAO,MAAM,kCAAkC,+DAAgE,8BAA8B,4CA4V5I,CAAA;AAED,eAAO,MAAM,kCAAkC,+DAAgE,8BAA8B,4CAwL5I,CAAA"}
|
|
@@ -240,7 +240,13 @@ export var DefaultMediaMultipleFormEditWidget = function (_a) {
|
|
|
240
240
|
reader.readAsDataURL(file);
|
|
241
241
|
});
|
|
242
242
|
setFileDetails(newFileDetails);
|
|
243
|
-
|
|
243
|
+
fieldContext.onChange({
|
|
244
|
+
target: {
|
|
245
|
+
name: fieldLayoutInfo.attrs.name,
|
|
246
|
+
value: acceptedFiles,
|
|
247
|
+
type: "text",
|
|
248
|
+
},
|
|
249
|
+
}, "onFieldChange");
|
|
244
250
|
};
|
|
245
251
|
var confirmDeleteFile = function (fileId, deleteId) {
|
|
246
252
|
setSelectedFileId(fileId);
|
|
@@ -255,7 +261,14 @@ export var DefaultMediaMultipleFormEditWidget = function (_a) {
|
|
|
255
261
|
.unwrap()
|
|
256
262
|
.then(function () {
|
|
257
263
|
// Update form state
|
|
258
|
-
|
|
264
|
+
var nextValue = fileDetails.filter(function (file) { return "".concat(file.name, "-").concat(file.size) !== selectedFileId; });
|
|
265
|
+
fieldContext.onChange({
|
|
266
|
+
target: {
|
|
267
|
+
name: fieldLayoutInfo.attrs.name,
|
|
268
|
+
value: nextValue,
|
|
269
|
+
type: "text",
|
|
270
|
+
},
|
|
271
|
+
}, "onFieldChange");
|
|
259
272
|
})
|
|
260
273
|
.catch(function (error) {
|
|
261
274
|
console.error(ERROR_MESSAGES.ERROR_DELETING_FILE, error);
|