@bsol-oss/react-datatable5 12.0.0-beta.87 → 12.0.0-beta.88

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/index.d.ts CHANGED
@@ -853,7 +853,7 @@ interface FormRootProps<TData extends FieldValues> {
853
853
  idPickerLabels?: IdPickerLabels;
854
854
  enumPickerLabels?: EnumPickerLabels;
855
855
  filePickerLabels?: FilePickerLabels;
856
- comboboxInDialog?: boolean;
856
+ insideDialog?: boolean;
857
857
  }
858
858
  interface CustomJSONSchema7Definition extends JSONSchema7 {
859
859
  variant: string;
@@ -870,7 +870,7 @@ declare const idPickerSanityCheck: (column: string, foreign_key?: {
870
870
  column?: string | undefined;
871
871
  display_column?: string | undefined;
872
872
  } | undefined) => void;
873
- declare const FormRoot: <TData extends FieldValues>({ schema, idMap, setIdMap, form, serverUrl, translate, children, order, ignore, include, onSubmit, rowNumber, requestOptions, getUpdatedData, customErrorRenderer, customSuccessRenderer, displayConfig, requireConfirmation, dateTimePickerLabels, idPickerLabels, enumPickerLabels, filePickerLabels, comboboxInDialog, }: FormRootProps<TData>) => react_jsx_runtime.JSX.Element;
873
+ declare const FormRoot: <TData extends FieldValues>({ schema, idMap, setIdMap, form, serverUrl, translate, children, order, ignore, include, onSubmit, rowNumber, requestOptions, getUpdatedData, customErrorRenderer, customSuccessRenderer, displayConfig, requireConfirmation, dateTimePickerLabels, idPickerLabels, enumPickerLabels, filePickerLabels, insideDialog, }: FormRootProps<TData>) => react_jsx_runtime.JSX.Element;
874
874
 
875
875
  interface DefaultFormProps<TData extends FieldValues> {
876
876
  formConfig: Omit<FormRootProps<TData>, "children">;
package/dist/index.js CHANGED
@@ -3627,7 +3627,7 @@ const FormRoot = ({ schema, idMap, setIdMap, form, serverUrl, translate, childre
3627
3627
  showSubmitButton: true,
3628
3628
  showResetButton: true,
3629
3629
  showTitle: true,
3630
- }, requireConfirmation = false, dateTimePickerLabels, idPickerLabels, enumPickerLabels, filePickerLabels, comboboxInDialog = false, }) => {
3630
+ }, requireConfirmation = false, dateTimePickerLabels, idPickerLabels, enumPickerLabels, filePickerLabels, insideDialog = false, }) => {
3631
3631
  const [isSuccess, setIsSuccess] = React.useState(false);
3632
3632
  const [isError, setIsError] = React.useState(false);
3633
3633
  const [isSubmiting, setIsSubmiting] = React.useState(false);
@@ -3718,7 +3718,7 @@ const FormRoot = ({ schema, idMap, setIdMap, form, serverUrl, translate, childre
3718
3718
  enumPickerLabels,
3719
3719
  filePickerLabels,
3720
3720
  ajvResolver: ajvResolver(schema),
3721
- comboboxInDialog,
3721
+ insideDialog,
3722
3722
  }, children: jsxRuntime.jsx(reactHookForm.FormProvider, { ...form, children: children }) }));
3723
3723
  };
3724
3724
 
@@ -4179,7 +4179,7 @@ const DateRangePicker = ({ column, schema, prefix, }) => {
4179
4179
 
4180
4180
  const EnumPicker = ({ column, isMultiple = false, schema, prefix, showTotalAndLimit = false, }) => {
4181
4181
  const { watch, formState: { errors }, setValue, } = reactHookForm.useFormContext();
4182
- const { enumPickerLabels, comboboxInDialog } = useSchemaContext();
4182
+ const { enumPickerLabels, insideDialog } = useSchemaContext();
4183
4183
  const formI18n = useFormI18n(column, prefix);
4184
4184
  const { required, variant } = schema;
4185
4185
  const isRequired = required?.some((columnId) => columnId === column);
@@ -4248,11 +4248,11 @@ const EnumPicker = ({ column, isMultiple = false, schema, prefix, showTotalAndLi
4248
4248
  }, children: !!renderDisplay === true
4249
4249
  ? renderDisplay(enumValue)
4250
4250
  : formI18n.t(enumValue) }, enumValue));
4251
- }) })), jsxRuntime.jsxs(react.Combobox.Root, { collection: collection, value: currentValue, onValueChange: handleValueChange, onInputValueChange: handleInputValueChange, multiple: isMultiple, closeOnSelect: !isMultiple, openOnClick: true, invalid: !!errors[colLabel], width: "100%", positioning: comboboxInDialog
4251
+ }) })), jsxRuntime.jsxs(react.Combobox.Root, { collection: collection, value: currentValue, onValueChange: handleValueChange, onInputValueChange: handleInputValueChange, multiple: isMultiple, closeOnSelect: !isMultiple, openOnClick: true, invalid: !!errors[colLabel], width: "100%", positioning: insideDialog
4252
4252
  ? { strategy: 'fixed', hideWhenDetached: true }
4253
4253
  : undefined, children: [jsxRuntime.jsxs(react.Combobox.Control, { children: [jsxRuntime.jsx(react.Combobox.Input, { placeholder: enumPickerLabels?.typeToSearch ?? formI18n.t('type_to_search') }), jsxRuntime.jsxs(react.Combobox.IndicatorGroup, { children: [!isMultiple && currentValue.length > 0 && (jsxRuntime.jsx(react.Combobox.ClearTrigger, { onClick: () => {
4254
4254
  setValue(colLabel, '');
4255
- } })), jsxRuntime.jsx(react.Combobox.Trigger, {})] })] }), comboboxInDialog ? (jsxRuntime.jsx(react.Combobox.Positioner, { children: jsxRuntime.jsxs(react.Combobox.Content, { children: [showTotalAndLimit && (jsxRuntime.jsx(react.Text, { p: 2, fontSize: "sm", color: "fg.muted", children: `${enumPickerLabels?.total ?? formI18n.t('total')}: ${collection.items.length}` })), collection.items.length === 0 ? (jsxRuntime.jsx(react.Combobox.Empty, { children: enumPickerLabels?.emptySearchResult ??
4255
+ } })), jsxRuntime.jsx(react.Combobox.Trigger, {})] })] }), insideDialog ? (jsxRuntime.jsx(react.Combobox.Positioner, { children: jsxRuntime.jsxs(react.Combobox.Content, { children: [showTotalAndLimit && (jsxRuntime.jsx(react.Text, { p: 2, fontSize: "sm", color: "fg.muted", children: `${enumPickerLabels?.total ?? formI18n.t('total')}: ${collection.items.length}` })), collection.items.length === 0 ? (jsxRuntime.jsx(react.Combobox.Empty, { children: enumPickerLabels?.emptySearchResult ??
4256
4256
  formI18n.t('empty_search_result') })) : (jsxRuntime.jsx(jsxRuntime.Fragment, { children: collection.items.map((item, index) => (jsxRuntime.jsxs(react.Combobox.Item, { item: item, children: [jsxRuntime.jsx(react.Combobox.ItemText, { children: item.label }), jsxRuntime.jsx(react.Combobox.ItemIndicator, {})] }, item.value ?? `item-${index}`))) }))] }) })) : (jsxRuntime.jsx(react.Portal, { children: jsxRuntime.jsx(react.Combobox.Positioner, { children: jsxRuntime.jsxs(react.Combobox.Content, { children: [showTotalAndLimit && (jsxRuntime.jsx(react.Text, { p: 2, fontSize: "sm", color: "fg.muted", children: `${enumPickerLabels?.total ?? formI18n.t('total')}: ${collection.items.length}` })), collection.items.length === 0 ? (jsxRuntime.jsx(react.Combobox.Empty, { children: enumPickerLabels?.emptySearchResult ??
4257
4257
  formI18n.t('empty_search_result') })) : (jsxRuntime.jsx(jsxRuntime.Fragment, { children: collection.items.map((item, index) => (jsxRuntime.jsxs(react.Combobox.Item, { item: item, children: [jsxRuntime.jsx(react.Combobox.ItemText, { children: item.label }), jsxRuntime.jsx(react.Combobox.ItemIndicator, {})] }, item.value ?? `item-${index}`))) }))] }) }) }))] })] }));
4258
4258
  };
@@ -5043,7 +5043,7 @@ const getTableData = async ({ serverUrl, in_table, searching = "", where = [], l
5043
5043
 
5044
5044
  const IdPicker = ({ column, schema, prefix, isMultiple = false, }) => {
5045
5045
  const { watch, getValues, formState: { errors }, setValue, } = reactHookForm.useFormContext();
5046
- const { serverUrl, idMap, setIdMap, schema: parentSchema, idPickerLabels, comboboxInDialog, } = useSchemaContext();
5046
+ const { serverUrl, idMap, setIdMap, idPickerLabels, insideDialog } = useSchemaContext();
5047
5047
  const formI18n = useFormI18n(column, prefix);
5048
5048
  const { required, gridColumn = 'span 12', gridRow = 'span 1', renderDisplay, foreign_key, } = schema;
5049
5049
  const isRequired = required?.some((columnId) => columnId === column);
@@ -5120,60 +5120,6 @@ const IdPicker = ({ column, schema, prefix, isMultiple = false, }) => {
5120
5120
  enabled: true, // Always enabled for combobox
5121
5121
  staleTime: 300000,
5122
5122
  });
5123
- // Query for currently selected items (to display them properly)
5124
- // This query is needed for side effects (populating idMap) even though the result isn't directly used
5125
- reactQuery.useQuery({
5126
- queryKey: [
5127
- `idpicker-default`,
5128
- {
5129
- form: parentSchema.title,
5130
- column,
5131
- id: isMultiple ? currentIds : currentId,
5132
- },
5133
- ],
5134
- queryFn: async () => {
5135
- const queryId = currentId;
5136
- const queryIds = currentIds;
5137
- if (customQueryFn) {
5138
- const { data, idMap } = await customQueryFn({
5139
- searching: '',
5140
- limit: isMultiple ? queryIds.length : 1,
5141
- offset: 0,
5142
- where: [{ id: column_ref, value: isMultiple ? queryIds : queryId }],
5143
- });
5144
- setIdMap((state) => {
5145
- return { ...state, ...idMap };
5146
- });
5147
- return data;
5148
- }
5149
- if (!queryId && (!queryIds || queryIds.length === 0)) {
5150
- return { data: [] };
5151
- }
5152
- const data = await getTableData({
5153
- serverUrl,
5154
- searching: '',
5155
- in_table: table,
5156
- where: [{ id: column_ref, value: isMultiple ? queryIds : queryId }],
5157
- limit: isMultiple ? queryIds.length : 1,
5158
- offset: 0,
5159
- });
5160
- const newMap = Object.fromEntries((data ?? { data: [] }).data.map((item) => {
5161
- return [
5162
- item[column_ref],
5163
- {
5164
- ...item,
5165
- },
5166
- ];
5167
- }));
5168
- setIdMap((state) => {
5169
- return { ...state, ...newMap };
5170
- });
5171
- return data;
5172
- },
5173
- enabled: isMultiple
5174
- ? Array.isArray(currentIds) && currentIds.length > 0
5175
- : !!currentId,
5176
- });
5177
5123
  const { isLoading, isFetching, data, isPending, isError } = query;
5178
5124
  const dataList = data?.data ?? [];
5179
5125
  // Check if we're currently searching (user typed but debounce hasn't fired yet)
@@ -5236,11 +5182,11 @@ const IdPicker = ({ column, schema, prefix, isMultiple = false, }) => {
5236
5182
  }, children: !!renderDisplay === true
5237
5183
  ? renderDisplay(item)
5238
5184
  : item[display_column] }, id));
5239
- }) })), jsxRuntime.jsxs(react.Combobox.Root, { collection: collection, value: currentValue, onValueChange: handleValueChange, onInputValueChange: handleInputValueChange, multiple: isMultiple, closeOnSelect: !isMultiple, openOnClick: true, invalid: !!errors[colLabel], width: "100%", positioning: comboboxInDialog
5185
+ }) })), jsxRuntime.jsxs(react.Combobox.Root, { collection: collection, value: currentValue, onValueChange: handleValueChange, onInputValueChange: handleInputValueChange, multiple: isMultiple, closeOnSelect: !isMultiple, openOnClick: true, invalid: !!errors[colLabel], width: "100%", positioning: insideDialog
5240
5186
  ? { strategy: 'fixed', hideWhenDetached: true }
5241
5187
  : undefined, children: [jsxRuntime.jsxs(react.Combobox.Control, { children: [jsxRuntime.jsx(react.Combobox.Input, { placeholder: idPickerLabels?.typeToSearch ?? formI18n.t('type_to_search') }), jsxRuntime.jsxs(react.Combobox.IndicatorGroup, { children: [(isFetching || isLoading || isPending) && jsxRuntime.jsx(react.Spinner, { size: "xs" }), isError && (jsxRuntime.jsx(react.Icon, { color: "fg.error", children: jsxRuntime.jsx(bi.BiError, {}) })), !isMultiple && currentValue.length > 0 && (jsxRuntime.jsx(react.Combobox.ClearTrigger, { onClick: () => {
5242
5188
  setValue(colLabel, '');
5243
- } })), jsxRuntime.jsx(react.Combobox.Trigger, {})] })] }), comboboxInDialog ? (jsxRuntime.jsx(react.Combobox.Positioner, { children: jsxRuntime.jsx(react.Combobox.Content, { children: isError ? (jsxRuntime.jsx(react.Text, { p: 2, color: "fg.error", fontSize: "sm", children: formI18n.t('loading_failed') })) : isFetching || isLoading || isPending || isSearching ? (
5189
+ } })), jsxRuntime.jsx(react.Combobox.Trigger, {})] })] }), insideDialog ? (jsxRuntime.jsx(react.Combobox.Positioner, { children: jsxRuntime.jsx(react.Combobox.Content, { children: isError ? (jsxRuntime.jsx(react.Text, { p: 2, color: "fg.error", fontSize: "sm", children: formI18n.t('loading_failed') })) : isFetching || isLoading || isPending || isSearching ? (
5244
5190
  // Show skeleton items to prevent UI shift
5245
5191
  jsxRuntime.jsx(jsxRuntime.Fragment, { children: Array.from({ length: 5 }).map((_, index) => (jsxRuntime.jsx(react.Flex, { p: 2, align: "center", gap: 2, children: jsxRuntime.jsx(react.Skeleton, { height: "20px", flex: "1" }) }, `skeleton-${index}`))) })) : collection.items.length === 0 ? (jsxRuntime.jsx(react.Combobox.Empty, { children: searchText
5246
5192
  ? idPickerLabels?.emptySearchResult ??
package/dist/index.mjs CHANGED
@@ -3607,7 +3607,7 @@ const FormRoot = ({ schema, idMap, setIdMap, form, serverUrl, translate, childre
3607
3607
  showSubmitButton: true,
3608
3608
  showResetButton: true,
3609
3609
  showTitle: true,
3610
- }, requireConfirmation = false, dateTimePickerLabels, idPickerLabels, enumPickerLabels, filePickerLabels, comboboxInDialog = false, }) => {
3610
+ }, requireConfirmation = false, dateTimePickerLabels, idPickerLabels, enumPickerLabels, filePickerLabels, insideDialog = false, }) => {
3611
3611
  const [isSuccess, setIsSuccess] = useState(false);
3612
3612
  const [isError, setIsError] = useState(false);
3613
3613
  const [isSubmiting, setIsSubmiting] = useState(false);
@@ -3698,7 +3698,7 @@ const FormRoot = ({ schema, idMap, setIdMap, form, serverUrl, translate, childre
3698
3698
  enumPickerLabels,
3699
3699
  filePickerLabels,
3700
3700
  ajvResolver: ajvResolver(schema),
3701
- comboboxInDialog,
3701
+ insideDialog,
3702
3702
  }, children: jsx(FormProvider, { ...form, children: children }) }));
3703
3703
  };
3704
3704
 
@@ -4159,7 +4159,7 @@ const DateRangePicker = ({ column, schema, prefix, }) => {
4159
4159
 
4160
4160
  const EnumPicker = ({ column, isMultiple = false, schema, prefix, showTotalAndLimit = false, }) => {
4161
4161
  const { watch, formState: { errors }, setValue, } = useFormContext();
4162
- const { enumPickerLabels, comboboxInDialog } = useSchemaContext();
4162
+ const { enumPickerLabels, insideDialog } = useSchemaContext();
4163
4163
  const formI18n = useFormI18n(column, prefix);
4164
4164
  const { required, variant } = schema;
4165
4165
  const isRequired = required?.some((columnId) => columnId === column);
@@ -4228,11 +4228,11 @@ const EnumPicker = ({ column, isMultiple = false, schema, prefix, showTotalAndLi
4228
4228
  }, children: !!renderDisplay === true
4229
4229
  ? renderDisplay(enumValue)
4230
4230
  : formI18n.t(enumValue) }, enumValue));
4231
- }) })), jsxs(Combobox.Root, { collection: collection, value: currentValue, onValueChange: handleValueChange, onInputValueChange: handleInputValueChange, multiple: isMultiple, closeOnSelect: !isMultiple, openOnClick: true, invalid: !!errors[colLabel], width: "100%", positioning: comboboxInDialog
4231
+ }) })), jsxs(Combobox.Root, { collection: collection, value: currentValue, onValueChange: handleValueChange, onInputValueChange: handleInputValueChange, multiple: isMultiple, closeOnSelect: !isMultiple, openOnClick: true, invalid: !!errors[colLabel], width: "100%", positioning: insideDialog
4232
4232
  ? { strategy: 'fixed', hideWhenDetached: true }
4233
4233
  : undefined, children: [jsxs(Combobox.Control, { children: [jsx(Combobox.Input, { placeholder: enumPickerLabels?.typeToSearch ?? formI18n.t('type_to_search') }), jsxs(Combobox.IndicatorGroup, { children: [!isMultiple && currentValue.length > 0 && (jsx(Combobox.ClearTrigger, { onClick: () => {
4234
4234
  setValue(colLabel, '');
4235
- } })), jsx(Combobox.Trigger, {})] })] }), comboboxInDialog ? (jsx(Combobox.Positioner, { children: jsxs(Combobox.Content, { children: [showTotalAndLimit && (jsx(Text, { p: 2, fontSize: "sm", color: "fg.muted", children: `${enumPickerLabels?.total ?? formI18n.t('total')}: ${collection.items.length}` })), collection.items.length === 0 ? (jsx(Combobox.Empty, { children: enumPickerLabels?.emptySearchResult ??
4235
+ } })), jsx(Combobox.Trigger, {})] })] }), insideDialog ? (jsx(Combobox.Positioner, { children: jsxs(Combobox.Content, { children: [showTotalAndLimit && (jsx(Text, { p: 2, fontSize: "sm", color: "fg.muted", children: `${enumPickerLabels?.total ?? formI18n.t('total')}: ${collection.items.length}` })), collection.items.length === 0 ? (jsx(Combobox.Empty, { children: enumPickerLabels?.emptySearchResult ??
4236
4236
  formI18n.t('empty_search_result') })) : (jsx(Fragment, { children: collection.items.map((item, index) => (jsxs(Combobox.Item, { item: item, children: [jsx(Combobox.ItemText, { children: item.label }), jsx(Combobox.ItemIndicator, {})] }, item.value ?? `item-${index}`))) }))] }) })) : (jsx(Portal, { children: jsx(Combobox.Positioner, { children: jsxs(Combobox.Content, { children: [showTotalAndLimit && (jsx(Text, { p: 2, fontSize: "sm", color: "fg.muted", children: `${enumPickerLabels?.total ?? formI18n.t('total')}: ${collection.items.length}` })), collection.items.length === 0 ? (jsx(Combobox.Empty, { children: enumPickerLabels?.emptySearchResult ??
4237
4237
  formI18n.t('empty_search_result') })) : (jsx(Fragment, { children: collection.items.map((item, index) => (jsxs(Combobox.Item, { item: item, children: [jsx(Combobox.ItemText, { children: item.label }), jsx(Combobox.ItemIndicator, {})] }, item.value ?? `item-${index}`))) }))] }) }) }))] })] }));
4238
4238
  };
@@ -5023,7 +5023,7 @@ const getTableData = async ({ serverUrl, in_table, searching = "", where = [], l
5023
5023
 
5024
5024
  const IdPicker = ({ column, schema, prefix, isMultiple = false, }) => {
5025
5025
  const { watch, getValues, formState: { errors }, setValue, } = useFormContext();
5026
- const { serverUrl, idMap, setIdMap, schema: parentSchema, idPickerLabels, comboboxInDialog, } = useSchemaContext();
5026
+ const { serverUrl, idMap, setIdMap, idPickerLabels, insideDialog } = useSchemaContext();
5027
5027
  const formI18n = useFormI18n(column, prefix);
5028
5028
  const { required, gridColumn = 'span 12', gridRow = 'span 1', renderDisplay, foreign_key, } = schema;
5029
5029
  const isRequired = required?.some((columnId) => columnId === column);
@@ -5100,60 +5100,6 @@ const IdPicker = ({ column, schema, prefix, isMultiple = false, }) => {
5100
5100
  enabled: true, // Always enabled for combobox
5101
5101
  staleTime: 300000,
5102
5102
  });
5103
- // Query for currently selected items (to display them properly)
5104
- // This query is needed for side effects (populating idMap) even though the result isn't directly used
5105
- useQuery({
5106
- queryKey: [
5107
- `idpicker-default`,
5108
- {
5109
- form: parentSchema.title,
5110
- column,
5111
- id: isMultiple ? currentIds : currentId,
5112
- },
5113
- ],
5114
- queryFn: async () => {
5115
- const queryId = currentId;
5116
- const queryIds = currentIds;
5117
- if (customQueryFn) {
5118
- const { data, idMap } = await customQueryFn({
5119
- searching: '',
5120
- limit: isMultiple ? queryIds.length : 1,
5121
- offset: 0,
5122
- where: [{ id: column_ref, value: isMultiple ? queryIds : queryId }],
5123
- });
5124
- setIdMap((state) => {
5125
- return { ...state, ...idMap };
5126
- });
5127
- return data;
5128
- }
5129
- if (!queryId && (!queryIds || queryIds.length === 0)) {
5130
- return { data: [] };
5131
- }
5132
- const data = await getTableData({
5133
- serverUrl,
5134
- searching: '',
5135
- in_table: table,
5136
- where: [{ id: column_ref, value: isMultiple ? queryIds : queryId }],
5137
- limit: isMultiple ? queryIds.length : 1,
5138
- offset: 0,
5139
- });
5140
- const newMap = Object.fromEntries((data ?? { data: [] }).data.map((item) => {
5141
- return [
5142
- item[column_ref],
5143
- {
5144
- ...item,
5145
- },
5146
- ];
5147
- }));
5148
- setIdMap((state) => {
5149
- return { ...state, ...newMap };
5150
- });
5151
- return data;
5152
- },
5153
- enabled: isMultiple
5154
- ? Array.isArray(currentIds) && currentIds.length > 0
5155
- : !!currentId,
5156
- });
5157
5103
  const { isLoading, isFetching, data, isPending, isError } = query;
5158
5104
  const dataList = data?.data ?? [];
5159
5105
  // Check if we're currently searching (user typed but debounce hasn't fired yet)
@@ -5216,11 +5162,11 @@ const IdPicker = ({ column, schema, prefix, isMultiple = false, }) => {
5216
5162
  }, children: !!renderDisplay === true
5217
5163
  ? renderDisplay(item)
5218
5164
  : item[display_column] }, id));
5219
- }) })), jsxs(Combobox.Root, { collection: collection, value: currentValue, onValueChange: handleValueChange, onInputValueChange: handleInputValueChange, multiple: isMultiple, closeOnSelect: !isMultiple, openOnClick: true, invalid: !!errors[colLabel], width: "100%", positioning: comboboxInDialog
5165
+ }) })), jsxs(Combobox.Root, { collection: collection, value: currentValue, onValueChange: handleValueChange, onInputValueChange: handleInputValueChange, multiple: isMultiple, closeOnSelect: !isMultiple, openOnClick: true, invalid: !!errors[colLabel], width: "100%", positioning: insideDialog
5220
5166
  ? { strategy: 'fixed', hideWhenDetached: true }
5221
5167
  : undefined, children: [jsxs(Combobox.Control, { children: [jsx(Combobox.Input, { placeholder: idPickerLabels?.typeToSearch ?? formI18n.t('type_to_search') }), jsxs(Combobox.IndicatorGroup, { children: [(isFetching || isLoading || isPending) && jsx(Spinner, { size: "xs" }), isError && (jsx(Icon, { color: "fg.error", children: jsx(BiError, {}) })), !isMultiple && currentValue.length > 0 && (jsx(Combobox.ClearTrigger, { onClick: () => {
5222
5168
  setValue(colLabel, '');
5223
- } })), jsx(Combobox.Trigger, {})] })] }), comboboxInDialog ? (jsx(Combobox.Positioner, { children: jsx(Combobox.Content, { children: isError ? (jsx(Text, { p: 2, color: "fg.error", fontSize: "sm", children: formI18n.t('loading_failed') })) : isFetching || isLoading || isPending || isSearching ? (
5169
+ } })), jsx(Combobox.Trigger, {})] })] }), insideDialog ? (jsx(Combobox.Positioner, { children: jsx(Combobox.Content, { children: isError ? (jsx(Text, { p: 2, color: "fg.error", fontSize: "sm", children: formI18n.t('loading_failed') })) : isFetching || isLoading || isPending || isSearching ? (
5224
5170
  // Show skeleton items to prevent UI shift
5225
5171
  jsx(Fragment, { children: Array.from({ length: 5 }).map((_, index) => (jsx(Flex, { p: 2, align: "center", gap: 2, children: jsx(Skeleton, { height: "20px", flex: "1" }) }, `skeleton-${index}`))) })) : collection.items.length === 0 ? (jsx(Combobox.Empty, { children: searchText
5226
5172
  ? idPickerLabels?.emptySearchResult ??
@@ -45,6 +45,6 @@ export interface SchemaFormContext<TData extends FieldValues> {
45
45
  enumPickerLabels?: EnumPickerLabels;
46
46
  filePickerLabels?: FilePickerLabels;
47
47
  ajvResolver: Resolver<FieldValues>;
48
- comboboxInDialog?: boolean;
48
+ insideDialog?: boolean;
49
49
  }
50
50
  export declare const SchemaFormContext: import("react").Context<SchemaFormContext<unknown>>;
@@ -33,7 +33,7 @@ export interface FormRootProps<TData extends FieldValues> {
33
33
  idPickerLabels?: IdPickerLabels;
34
34
  enumPickerLabels?: EnumPickerLabels;
35
35
  filePickerLabels?: FilePickerLabels;
36
- comboboxInDialog?: boolean;
36
+ insideDialog?: boolean;
37
37
  }
38
38
  export interface CustomJSONSchema7Definition extends JSONSchema7 {
39
39
  variant: string;
@@ -50,4 +50,4 @@ export declare const idPickerSanityCheck: (column: string, foreign_key?: {
50
50
  column?: string | undefined;
51
51
  display_column?: string | undefined;
52
52
  } | undefined) => void;
53
- export declare const FormRoot: <TData extends FieldValues>({ schema, idMap, setIdMap, form, serverUrl, translate, children, order, ignore, include, onSubmit, rowNumber, requestOptions, getUpdatedData, customErrorRenderer, customSuccessRenderer, displayConfig, requireConfirmation, dateTimePickerLabels, idPickerLabels, enumPickerLabels, filePickerLabels, comboboxInDialog, }: FormRootProps<TData>) => import("react/jsx-runtime").JSX.Element;
53
+ export declare const FormRoot: <TData extends FieldValues>({ schema, idMap, setIdMap, form, serverUrl, translate, children, order, ignore, include, onSubmit, rowNumber, requestOptions, getUpdatedData, customErrorRenderer, customSuccessRenderer, displayConfig, requireConfirmation, dateTimePickerLabels, idPickerLabels, enumPickerLabels, filePickerLabels, insideDialog, }: FormRootProps<TData>) => import("react/jsx-runtime").JSX.Element;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bsol-oss/react-datatable5",
3
- "version": "12.0.0-beta.87",
3
+ "version": "12.0.0-beta.88",
4
4
  "type": "module",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.mjs",