@bsol-oss/react-datatable5 12.0.0-beta.23 → 12.0.0-beta.25

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
@@ -469,6 +469,7 @@ interface CustomJSONSchema7 extends JSONSchema7 {
469
469
  prefix: string;
470
470
  formContext: UseFormReturn;
471
471
  }) => ReactNode;
472
+ dateFormat?: string;
472
473
  }
473
474
 
474
475
  interface FormRootProps<TData extends FieldValues> {
package/dist/index.js CHANGED
@@ -3793,7 +3793,7 @@ const PopoverTrigger = react.Popover.Trigger;
3793
3793
  const DatePicker = ({ column, schema, prefix }) => {
3794
3794
  const { watch, formState: { errors }, setValue, } = reactHookForm.useFormContext();
3795
3795
  const { translate } = useSchemaContext();
3796
- const { required, gridColumn, gridRow } = schema;
3796
+ const { required, gridColumn, gridRow, dateFormat = "YYYY-MM-DD[T]HH:mm:ss[Z]", } = schema;
3797
3797
  const isRequired = required?.some((columnId) => columnId === column);
3798
3798
  const colLabel = `${prefix}${column}`;
3799
3799
  const [open, setOpen] = React.useState(false);
@@ -3809,7 +3809,7 @@ const DatePicker = ({ column, schema, prefix }) => {
3809
3809
  selected: new Date(selectedDate),
3810
3810
  // @ts-expect-error TODO: find appropriate types
3811
3811
  onDateSelected: ({ date }) => {
3812
- setValue(colLabel, dayjs(date).format("YYYY-MM-DD"));
3812
+ setValue(colLabel, dayjs(date).format(dateFormat));
3813
3813
  setOpen(false);
3814
3814
  } })] }) })] }), errors[`${column}`] && (jsxRuntime.jsx(react.Text, { color: "red.400", children: translate.t(removeIndex(`${colLabel}.field_required`)) }))] }));
3815
3815
  };
@@ -4381,6 +4381,9 @@ const IdPicker = ({ column, schema, prefix, isMultiple = false, }) => {
4381
4381
  if (record === undefined) {
4382
4382
  return "";
4383
4383
  }
4384
+ if (!!renderDisplay === true) {
4385
+ return renderDisplay(record);
4386
+ }
4384
4387
  return record[display_column];
4385
4388
  };
4386
4389
  return (jsxRuntime.jsxs(Field, { label: `${translate.t(removeIndex(removeIndex(`${column}.field_label`)))}`, required: isRequired, alignItems: "stretch", gridColumn,
@@ -4398,7 +4401,7 @@ const IdPicker = ({ column, schema, prefix, isMultiple = false, }) => {
4398
4401
  setOpenSearchResult(true);
4399
4402
  }, children: translate.t(removeIndex(`${colLabel}.add_more`)) })] })), !isMultiple && (jsxRuntime.jsx(Button, { variant: "outline", onClick: () => {
4400
4403
  setOpenSearchResult(true);
4401
- }, justifyContent: "start", children: getPickedValue() })), jsxRuntime.jsxs(PopoverRoot, { open: openSearchResult, onOpenChange: (e) => setOpenSearchResult(e.open), closeOnInteractOutside: true, initialFocusEl: () => ref.current, positioning: { placement: "bottom-start", strategy: "fixed" }, children: [jsxRuntime.jsx(PopoverTrigger, {}), jsxRuntime.jsx(PopoverContent, { children: jsxRuntime.jsxs(PopoverBody, { display: "grid", gap: 1, children: [jsxRuntime.jsx(react.Input, { placeholder: translate.t(removeIndex(`${colLabel}.typeToSearch`)), onChange: (event) => {
4404
+ }, justifyContent: "start", children: getPickedValue() })), jsxRuntime.jsxs(PopoverRoot, { open: openSearchResult, onOpenChange: (e) => setOpenSearchResult(e.open), closeOnInteractOutside: true, initialFocusEl: () => ref.current, positioning: { placement: "bottom-start", strategy: "fixed" }, children: [jsxRuntime.jsx(PopoverTrigger, {}), jsxRuntime.jsx(PopoverContent, { children: jsxRuntime.jsxs(PopoverBody, { display: "grid", gap: 1, children: [jsxRuntime.jsx(react.Input, { placeholder: translate.t(removeIndex(`${colLabel}.type_to_search`)), onChange: (event) => {
4402
4405
  onSearchChange(event);
4403
4406
  setOpenSearchResult(true);
4404
4407
  }, autoComplete: "off", ref: ref }), jsxRuntime.jsx(PopoverTitle, {}), (searchText?.length ?? 0) > 0 && (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [isFetching && jsxRuntime.jsx(jsxRuntime.Fragment, { children: "isFetching" }), isLoading && jsxRuntime.jsx(jsxRuntime.Fragment, { children: "isLoading" }), isPending && jsxRuntime.jsx(jsxRuntime.Fragment, { children: "isPending" }), (isFetching || isLoading || isPending) && jsxRuntime.jsx(react.Spinner, {}), isError && (jsxRuntime.jsx(react.Icon, { color: "red.400", children: jsxRuntime.jsx(bi.BiError, {}) })), jsxRuntime.jsx(react.Text, { justifySelf: "center", children: `${translate.t(removeIndex(`${colLabel}.total`))} ${count}, ${translate.t(removeIndex(`${colLabel}.showing`))} ${limit}` }), jsxRuntime.jsxs(react.Grid, { gridTemplateColumns: "repeat(auto-fit, minmax(15rem, 1fr))", overflow: "auto", maxHeight: "50vh", children: [jsxRuntime.jsx(react.Flex, { flexFlow: "column wrap", children:
package/dist/index.mjs CHANGED
@@ -3773,7 +3773,7 @@ const PopoverTrigger = Popover.Trigger;
3773
3773
  const DatePicker = ({ column, schema, prefix }) => {
3774
3774
  const { watch, formState: { errors }, setValue, } = useFormContext();
3775
3775
  const { translate } = useSchemaContext();
3776
- const { required, gridColumn, gridRow } = schema;
3776
+ const { required, gridColumn, gridRow, dateFormat = "YYYY-MM-DD[T]HH:mm:ss[Z]", } = schema;
3777
3777
  const isRequired = required?.some((columnId) => columnId === column);
3778
3778
  const colLabel = `${prefix}${column}`;
3779
3779
  const [open, setOpen] = useState(false);
@@ -3789,7 +3789,7 @@ const DatePicker = ({ column, schema, prefix }) => {
3789
3789
  selected: new Date(selectedDate),
3790
3790
  // @ts-expect-error TODO: find appropriate types
3791
3791
  onDateSelected: ({ date }) => {
3792
- setValue(colLabel, dayjs(date).format("YYYY-MM-DD"));
3792
+ setValue(colLabel, dayjs(date).format(dateFormat));
3793
3793
  setOpen(false);
3794
3794
  } })] }) })] }), errors[`${column}`] && (jsx(Text, { color: "red.400", children: translate.t(removeIndex(`${colLabel}.field_required`)) }))] }));
3795
3795
  };
@@ -4361,6 +4361,9 @@ const IdPicker = ({ column, schema, prefix, isMultiple = false, }) => {
4361
4361
  if (record === undefined) {
4362
4362
  return "";
4363
4363
  }
4364
+ if (!!renderDisplay === true) {
4365
+ return renderDisplay(record);
4366
+ }
4364
4367
  return record[display_column];
4365
4368
  };
4366
4369
  return (jsxs(Field, { label: `${translate.t(removeIndex(removeIndex(`${column}.field_label`)))}`, required: isRequired, alignItems: "stretch", gridColumn,
@@ -4378,7 +4381,7 @@ const IdPicker = ({ column, schema, prefix, isMultiple = false, }) => {
4378
4381
  setOpenSearchResult(true);
4379
4382
  }, children: translate.t(removeIndex(`${colLabel}.add_more`)) })] })), !isMultiple && (jsx(Button, { variant: "outline", onClick: () => {
4380
4383
  setOpenSearchResult(true);
4381
- }, justifyContent: "start", children: getPickedValue() })), jsxs(PopoverRoot, { open: openSearchResult, onOpenChange: (e) => setOpenSearchResult(e.open), closeOnInteractOutside: true, initialFocusEl: () => ref.current, positioning: { placement: "bottom-start", strategy: "fixed" }, children: [jsx(PopoverTrigger, {}), jsx(PopoverContent, { children: jsxs(PopoverBody, { display: "grid", gap: 1, children: [jsx(Input, { placeholder: translate.t(removeIndex(`${colLabel}.typeToSearch`)), onChange: (event) => {
4384
+ }, justifyContent: "start", children: getPickedValue() })), jsxs(PopoverRoot, { open: openSearchResult, onOpenChange: (e) => setOpenSearchResult(e.open), closeOnInteractOutside: true, initialFocusEl: () => ref.current, positioning: { placement: "bottom-start", strategy: "fixed" }, children: [jsx(PopoverTrigger, {}), jsx(PopoverContent, { children: jsxs(PopoverBody, { display: "grid", gap: 1, children: [jsx(Input, { placeholder: translate.t(removeIndex(`${colLabel}.type_to_search`)), onChange: (event) => {
4382
4385
  onSearchChange(event);
4383
4386
  setOpenSearchResult(true);
4384
4387
  }, autoComplete: "off", ref: ref }), jsx(PopoverTitle, {}), (searchText?.length ?? 0) > 0 && (jsxs(Fragment, { children: [isFetching && jsx(Fragment, { children: "isFetching" }), isLoading && jsx(Fragment, { children: "isLoading" }), isPending && jsx(Fragment, { children: "isPending" }), (isFetching || isLoading || isPending) && jsx(Spinner, {}), isError && (jsx(Icon, { color: "red.400", children: jsx(BiError, {}) })), jsx(Text, { justifySelf: "center", children: `${translate.t(removeIndex(`${colLabel}.total`))} ${count}, ${translate.t(removeIndex(`${colLabel}.showing`))} ${limit}` }), jsxs(Grid, { gridTemplateColumns: "repeat(auto-fit, minmax(15rem, 1fr))", overflow: "auto", maxHeight: "50vh", children: [jsx(Flex, { flexFlow: "column wrap", children:
@@ -20,6 +20,7 @@ export interface CustomJSONSchema7 extends JSONSchema7 {
20
20
  prefix: string;
21
21
  formContext: UseFormReturn;
22
22
  }) => ReactNode;
23
+ dateFormat?: string;
23
24
  }
24
25
  export interface TagPickerProps {
25
26
  column: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bsol-oss/react-datatable5",
3
- "version": "12.0.0-beta.23",
3
+ "version": "12.0.0-beta.25",
4
4
  "type": "module",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.mjs",