@powerhousedao/document-engineering 1.34.0 → 1.35.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (67) hide show
  1. package/dist/src/table/components/default-cell-editors/aid-editor.d.ts +1 -1
  2. package/dist/src/table/components/default-cell-editors/aid-editor.d.ts.map +1 -1
  3. package/dist/src/table/components/default-cell-editors/aid-editor.js +9 -2
  4. package/dist/src/table/components/default-cell-editors/aid-editor.js.map +1 -1
  5. package/dist/src/table/components/default-cell-editors/email-editor.js +1 -1
  6. package/dist/src/table/components/default-cell-editors/email-editor.js.map +1 -1
  7. package/dist/src/table/components/default-cell-editors/enum-editor.d.ts +1 -1
  8. package/dist/src/table/components/default-cell-editors/enum-editor.d.ts.map +1 -1
  9. package/dist/src/table/components/default-cell-editors/enum-editor.js +9 -2
  10. package/dist/src/table/components/default-cell-editors/enum-editor.js.map +1 -1
  11. package/dist/src/table/components/default-cell-editors/index.d.ts +13 -0
  12. package/dist/src/table/components/default-cell-editors/index.d.ts.map +1 -1
  13. package/dist/src/table/components/default-cell-editors/index.js +13 -0
  14. package/dist/src/table/components/default-cell-editors/index.js.map +1 -1
  15. package/dist/src/table/components/default-cell-renderers/url-render.d.ts.map +1 -1
  16. package/dist/src/table/components/default-cell-renderers/url-render.js +1 -1
  17. package/dist/src/table/components/default-cell-renderers/url-render.js.map +1 -1
  18. package/dist/src/table/components/header.d.ts.map +1 -1
  19. package/dist/src/table/components/header.js +4 -1
  20. package/dist/src/table/components/header.js.map +1 -1
  21. package/dist/src/table/components/rows/render-row.d.ts.map +1 -1
  22. package/dist/src/table/components/rows/render-row.js +6 -1
  23. package/dist/src/table/components/rows/render-row.js.map +1 -1
  24. package/dist/src/table/components/table-focus-trap.d.ts.map +1 -1
  25. package/dist/src/table/components/table-focus-trap.js +5 -2
  26. package/dist/src/table/components/table-focus-trap.js.map +1 -1
  27. package/dist/src/table/examples/custom-cell-editors/custom-cell-editors.d.ts +5 -0
  28. package/dist/src/table/examples/custom-cell-editors/custom-cell-editors.d.ts.map +1 -0
  29. package/dist/src/table/examples/custom-cell-editors/custom-cell-editors.js +173 -0
  30. package/dist/src/table/examples/custom-cell-editors/custom-cell-editors.js.map +1 -0
  31. package/dist/src/table/examples/row-reordering/row-reordering.d.ts +5 -0
  32. package/dist/src/table/examples/row-reordering/row-reordering.d.ts.map +1 -0
  33. package/dist/src/table/examples/row-reordering/row-reordering.js +65 -0
  34. package/dist/src/table/examples/row-reordering/row-reordering.js.map +1 -0
  35. package/dist/src/table/hooks/useRowDrag.d.ts +9 -0
  36. package/dist/src/table/hooks/useRowDrag.d.ts.map +1 -0
  37. package/dist/src/table/hooks/useRowDrag.js +78 -0
  38. package/dist/src/table/hooks/useRowDrag.js.map +1 -0
  39. package/dist/src/table/logic/selection-manager.d.ts.map +1 -1
  40. package/dist/src/table/logic/selection-manager.js +6 -0
  41. package/dist/src/table/logic/selection-manager.js.map +1 -1
  42. package/dist/src/table/logic/table-api.d.ts.map +1 -1
  43. package/dist/src/table/logic/table-api.js +1 -4
  44. package/dist/src/table/logic/table-api.js.map +1 -1
  45. package/dist/src/table/table/object-set-table.d.ts +1 -0
  46. package/dist/src/table/table/object-set-table.d.ts.map +1 -1
  47. package/dist/src/table/table/object-set-table.js +5 -0
  48. package/dist/src/table/table/object-set-table.js.map +1 -1
  49. package/dist/src/table/table/types.d.ts +7 -0
  50. package/dist/src/table/table/types.d.ts.map +1 -1
  51. package/dist/src/ui/components/data-entry/phone-number-input/phone-number-input.d.ts.map +1 -1
  52. package/dist/src/ui/components/data-entry/phone-number-input/phone-number-input.js +8 -4
  53. package/dist/src/ui/components/data-entry/phone-number-input/phone-number-input.js.map +1 -1
  54. package/dist/src/ui/components/data-entry/phone-number-input/subcomponents/phone-number-diff.d.ts.map +1 -1
  55. package/dist/src/ui/components/data-entry/phone-number-input/subcomponents/phone-number-diff.js +8 -3
  56. package/dist/src/ui/components/data-entry/phone-number-input/subcomponents/phone-number-diff.js.map +1 -1
  57. package/dist/src/ui/components/data-entry/phone-number-input/use-phone-number-input.d.ts +6 -4
  58. package/dist/src/ui/components/data-entry/phone-number-input/use-phone-number-input.d.ts.map +1 -1
  59. package/dist/src/ui/components/data-entry/phone-number-input/use-phone-number-input.js +84 -55
  60. package/dist/src/ui/components/data-entry/phone-number-input/use-phone-number-input.js.map +1 -1
  61. package/dist/src/ui/components/data-entry/phone-number-input/utils.d.ts +10 -0
  62. package/dist/src/ui/components/data-entry/phone-number-input/utils.d.ts.map +1 -0
  63. package/dist/src/ui/components/data-entry/phone-number-input/utils.js +72 -0
  64. package/dist/src/ui/components/data-entry/phone-number-input/utils.js.map +1 -0
  65. package/dist/style.css +44 -10
  66. package/dist/tsconfig.lib.tsbuildinfo +1 -1
  67. package/package.json +1 -1
@@ -1,4 +1,4 @@
1
1
  import type { AIDFieldProps } from '../../../scalars/components/aid-field/types.js';
2
2
  import type { CellContext, DataType } from '../../table/types.js';
3
- export declare const buildAidCellEditor: <T extends DataType>(aidFieldProps: Omit<AIDFieldProps, "name" | "value" | "onChange" | "autoComplete" | "fetchOptionsCallback" | "fetchSelectedOptionCallback" | "previewPlaceholder">) => (value: unknown, onChange: (newValue: unknown) => void, context: CellContext<T>) => import("react/jsx-runtime").JSX.Element;
3
+ export declare const buildAidCellEditor: <T extends DataType>(aidFieldProps: Omit<AIDFieldProps, "name" | "value" | "onChange">) => (value: unknown, onChange: (newValue: unknown) => void, context: CellContext<T>) => import("react/jsx-runtime").JSX.Element;
4
4
  //# sourceMappingURL=aid-editor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"aid-editor.d.ts","sourceRoot":"","sources":["../../../../../src/table/components/default-cell-editors/aid-editor.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gDAAgD,CAAA;AACnF,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAEjE,eAAO,MAAM,kBAAkB,GAAI,CAAC,SAAS,QAAQ,EACnD,eAAe,IAAI,CACjB,aAAa,EACX,MAAM,GACN,OAAO,GACP,UAAU,GACV,cAAc,GACd,sBAAsB,GACtB,6BAA6B,GAC7B,oBAAoB,CACvB,aAE6B,OAAO,YAAY,CAAC,QAAQ,EAAE,OAAO,KAAK,IAAI,WAAW,WAAW,CAAC,CAAC,CAAC,4CAmBtG,CAAA"}
1
+ {"version":3,"file":"aid-editor.d.ts","sourceRoot":"","sources":["../../../../../src/table/components/default-cell-editors/aid-editor.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gDAAgD,CAAA;AACnF,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAEjE,eAAO,MAAM,kBAAkB,GAAI,CAAC,SAAS,QAAQ,EACnD,eAAe,IAAI,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,GAAG,UAAU,CAAC,aAEnC,OAAO,YAAY,CAAC,QAAQ,EAAE,OAAO,KAAK,IAAI,WAAW,WAAW,CAAC,CAAC,CAAC,4CA6CtG,CAAA"}
@@ -2,8 +2,15 @@ import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { AIDField } from '../../../scalars/components/aid-field/aid-field.js';
3
3
  export const buildAidCellEditor = (aidFieldProps) => {
4
4
  const AidCellEditor = (value, onChange, context) => {
5
- const aidValue = typeof value === 'string' ? value : String(value ?? '');
6
- return (_jsx(AIDField, { name: context.column.field, className: "max-w-full", autoFocus: true, autoComplete: false, ...aidFieldProps, value: aidValue, onChange: (value) => {
5
+ const aidValue = typeof value === 'string' ? value : (value?.toString() ?? '');
6
+ if (aidFieldProps.autoComplete !== false && aidFieldProps.fetchOptionsCallback) {
7
+ const { autoComplete: _, fetchOptionsCallback, ...restProps } = aidFieldProps;
8
+ return (_jsx(AIDField, { name: context.column.field, className: "max-w-full", autoFocus: true, fetchOptionsCallback: fetchOptionsCallback, ...restProps, value: aidValue, onChange: (value) => {
9
+ onChange(value);
10
+ } }));
11
+ }
12
+ const { autoComplete: _1, fetchOptionsCallback: _2, fetchSelectedOptionCallback: _3, previewPlaceholder: _4, ...restProps } = aidFieldProps;
13
+ return (_jsx(AIDField, { name: context.column.field, className: "max-w-full", autoFocus: true, autoComplete: false, ...restProps, value: aidValue, onChange: (value) => {
7
14
  onChange(value);
8
15
  } }));
9
16
  };
@@ -1 +1 @@
1
- {"version":3,"file":"aid-editor.js","sourceRoot":"","sources":["../../../../../src/table/components/default-cell-editors/aid-editor.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oDAAoD,CAAA;AAI7E,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAChC,aASC,EACD,EAAE;IACF,MAAM,aAAa,GAAG,CAAC,KAAc,EAAE,QAAqC,EAAE,OAAuB,EAAE,EAAE;QACvG,MAAM,QAAQ,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAA;QAExE,OAAO,CACL,KAAC,QAAQ,IACP,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,KAAK,EAC1B,SAAS,EAAC,YAAY,EACtB,SAAS,QACT,YAAY,EAAE,KAAK,KACf,aAAa,EACjB,KAAK,EAAE,QAAQ,EACf,QAAQ,EAAE,CAAC,KAAa,EAAE,EAAE;gBAC1B,QAAQ,CAAC,KAAK,CAAC,CAAA;YACjB,CAAC,GACD,CACH,CAAA;IACH,CAAC,CAAA;IAED,OAAO,aAAa,CAAA;AACtB,CAAC,CAAA"}
1
+ {"version":3,"file":"aid-editor.js","sourceRoot":"","sources":["../../../../../src/table/components/default-cell-editors/aid-editor.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oDAAoD,CAAA;AAI7E,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAChC,aAAiE,EACjE,EAAE;IACF,MAAM,aAAa,GAAG,CAAC,KAAc,EAAE,QAAqC,EAAE,OAAuB,EAAE,EAAE;QACvG,MAAM,QAAQ,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAA;QAE9E,IAAI,aAAa,CAAC,YAAY,KAAK,KAAK,IAAI,aAAa,CAAC,oBAAoB,EAAE,CAAC;YAC/E,MAAM,EAAE,YAAY,EAAE,CAAC,EAAE,oBAAoB,EAAE,GAAG,SAAS,EAAE,GAAG,aAAa,CAAA;YAE7E,OAAO,CACL,KAAC,QAAQ,IACP,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,KAAK,EAC1B,SAAS,EAAC,YAAY,EACtB,SAAS,QACT,oBAAoB,EAAE,oBAAoB,KACtC,SAAS,EACb,KAAK,EAAE,QAAQ,EACf,QAAQ,EAAE,CAAC,KAAa,EAAE,EAAE;oBAC1B,QAAQ,CAAC,KAAK,CAAC,CAAA;gBACjB,CAAC,GACD,CACH,CAAA;QACH,CAAC;QAED,MAAM,EACJ,YAAY,EAAE,EAAE,EAChB,oBAAoB,EAAE,EAAE,EACxB,2BAA2B,EAAE,EAAE,EAC/B,kBAAkB,EAAE,EAAE,EACtB,GAAG,SAAS,EACb,GAAG,aAAa,CAAA;QAEjB,OAAO,CACL,KAAC,QAAQ,IACP,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,KAAK,EAC1B,SAAS,EAAC,YAAY,EACtB,SAAS,QACT,YAAY,EAAE,KAAK,KACf,SAAS,EACb,KAAK,EAAE,QAAQ,EACf,QAAQ,EAAE,CAAC,KAAa,EAAE,EAAE;gBAC1B,QAAQ,CAAC,KAAK,CAAC,CAAA;YACjB,CAAC,GACD,CACH,CAAA;IACH,CAAC,CAAA;IAED,OAAO,aAAa,CAAA;AACtB,CAAC,CAAA"}
@@ -2,7 +2,7 @@ import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { EmailField } from '../../../scalars/components/email-field/email-field.js';
3
3
  export const buildEmailCellEditor = (emailFieldProps) => {
4
4
  const EmailCellEditor = (value, onChange, context) => {
5
- const emailValue = typeof value === 'string' ? value : String(value ?? '');
5
+ const emailValue = typeof value === 'string' ? value : (value?.toString() ?? '');
6
6
  return (_jsx(EmailField, { name: context.column.field, className: "max-w-full", autoFocus: true, ...emailFieldProps, value: emailValue, onChange: (e) => {
7
7
  onChange(e.target.value);
8
8
  } }));
@@ -1 +1 @@
1
- {"version":3,"file":"email-editor.js","sourceRoot":"","sources":["../../../../../src/table/components/default-cell-editors/email-editor.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAwB,MAAM,wDAAwD,CAAA;AAGzG,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAClC,eAAqE,EACrE,EAAE;IACF,MAAM,eAAe,GAAG,CAAC,KAAc,EAAE,QAAqC,EAAE,OAAuB,EAAE,EAAE;QACzG,MAAM,UAAU,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAA;QAE1E,OAAO,CACL,KAAC,UAAU,IACT,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,KAAK,EAC1B,SAAS,EAAC,YAAY,EACtB,SAAS,WACL,eAAe,EACnB,KAAK,EAAE,UAAU,EACjB,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;gBACd,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;YAC1B,CAAC,GACD,CACH,CAAA;IACH,CAAC,CAAA;IAED,OAAO,eAAe,CAAA;AACxB,CAAC,CAAA"}
1
+ {"version":3,"file":"email-editor.js","sourceRoot":"","sources":["../../../../../src/table/components/default-cell-editors/email-editor.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAwB,MAAM,wDAAwD,CAAA;AAGzG,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAClC,eAAqE,EACrE,EAAE;IACF,MAAM,eAAe,GAAG,CAAC,KAAc,EAAE,QAAqC,EAAE,OAAuB,EAAE,EAAE;QACzG,MAAM,UAAU,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAA;QAEhF,OAAO,CACL,KAAC,UAAU,IACT,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,KAAK,EAC1B,SAAS,EAAC,YAAY,EACtB,SAAS,WACL,eAAe,EACnB,KAAK,EAAE,UAAU,EACjB,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;gBACd,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;YAC1B,CAAC,GACD,CACH,CAAA;IACH,CAAC,CAAA;IAED,OAAO,eAAe,CAAA;AACxB,CAAC,CAAA"}
@@ -1,4 +1,4 @@
1
1
  import { type SelectFieldProps } from '../../../scalars/components/fragments/select-field/index.js';
2
2
  import type { CellContext, DataType } from '../../table/types.js';
3
- export declare const buildEnumCellEditor: <T extends DataType>(selectFieldProps: Omit<SelectFieldProps, "name" | "value" | "onChange" | "selectionIcon" | "selectionIconPosition">) => (value: unknown, onChange: (newValue: unknown) => void, context: CellContext<T>) => import("react/jsx-runtime").JSX.Element;
3
+ export declare const buildEnumCellEditor: <T extends DataType>(selectFieldProps: Omit<SelectFieldProps, "name" | "value" | "onChange">) => (value: unknown, onChange: (newValue: unknown) => void, context: CellContext<T>) => import("react/jsx-runtime").JSX.Element;
4
4
  //# sourceMappingURL=enum-editor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"enum-editor.d.ts","sourceRoot":"","sources":["../../../../../src/table/components/default-cell-editors/enum-editor.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAe,KAAK,gBAAgB,EAAE,MAAM,6DAA6D,CAAA;AAChH,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAEjE,eAAO,MAAM,mBAAmB,GAAI,CAAC,SAAS,QAAQ,EACpD,kBAAkB,IAAI,CAAC,gBAAgB,EAAE,MAAM,GAAG,OAAO,GAAG,UAAU,GAAG,eAAe,GAAG,uBAAuB,CAAC,aAEpF,OAAO,YAAY,CAAC,QAAQ,EAAE,OAAO,KAAK,IAAI,WAAW,WAAW,CAAC,CAAC,CAAC,4CAkBvG,CAAA"}
1
+ {"version":3,"file":"enum-editor.d.ts","sourceRoot":"","sources":["../../../../../src/table/components/default-cell-editors/enum-editor.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAe,KAAK,gBAAgB,EAAE,MAAM,6DAA6D,CAAA;AAChH,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAEjE,eAAO,MAAM,mBAAmB,GAAI,CAAC,SAAS,QAAQ,EACpD,kBAAkB,IAAI,CAAC,gBAAgB,EAAE,MAAM,GAAG,OAAO,GAAG,UAAU,CAAC,aAExC,OAAO,YAAY,CAAC,QAAQ,EAAE,OAAO,KAAK,IAAI,WAAW,WAAW,CAAC,CAAC,CAAC,4CAuCvG,CAAA"}
@@ -2,8 +2,15 @@ import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { SelectField } from '../../../scalars/components/fragments/select-field/index.js';
3
3
  export const buildEnumCellEditor = (selectFieldProps) => {
4
4
  const EnumCellEditor = (value, onChange, context) => {
5
- const enumValue = typeof value === 'string' ? value : String(value ?? '');
6
- return (_jsx(SelectField, { name: context.column.field, className: "max-w-full", autoFocus: true, ...selectFieldProps, value: enumValue, onChange: (newValue) => {
5
+ const enumValue = typeof value === 'string' ? value : (value?.toString() ?? '');
6
+ if (selectFieldProps.selectionIcon === 'checkmark') {
7
+ const { selectionIcon: _, selectionIconPosition, ...restProps } = selectFieldProps;
8
+ return (_jsx(SelectField, { name: context.column.field, className: "max-w-full", autoFocus: true, selectionIcon: "checkmark", selectionIconPosition: selectionIconPosition, ...restProps, value: enumValue, onChange: (newValue) => {
9
+ onChange(newValue);
10
+ } }));
11
+ }
12
+ const { selectionIcon: _1, selectionIconPosition: _2, ...restProps } = selectFieldProps;
13
+ return (_jsx(SelectField, { name: context.column.field, className: "max-w-full", autoFocus: true, ...restProps, value: enumValue, onChange: (newValue) => {
7
14
  onChange(newValue);
8
15
  } }));
9
16
  };
@@ -1 +1 @@
1
- {"version":3,"file":"enum-editor.js","sourceRoot":"","sources":["../../../../../src/table/components/default-cell-editors/enum-editor.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAyB,MAAM,6DAA6D,CAAA;AAGhH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CACjC,gBAAmH,EACnH,EAAE;IACF,MAAM,cAAc,GAAG,CAAC,KAAc,EAAE,QAAqC,EAAE,OAAuB,EAAE,EAAE;QACxG,MAAM,SAAS,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAA;QAEzE,OAAO,CACL,KAAC,WAAW,IACV,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,KAAK,EAC1B,SAAS,EAAC,YAAY,EACtB,SAAS,WACL,gBAAgB,EACpB,KAAK,EAAE,SAAS,EAChB,QAAQ,EAAE,CAAC,QAAQ,EAAE,EAAE;gBACrB,QAAQ,CAAC,QAAQ,CAAC,CAAA;YACpB,CAAC,GACD,CACH,CAAA;IACH,CAAC,CAAA;IAED,OAAO,cAAc,CAAA;AACvB,CAAC,CAAA"}
1
+ {"version":3,"file":"enum-editor.js","sourceRoot":"","sources":["../../../../../src/table/components/default-cell-editors/enum-editor.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAyB,MAAM,6DAA6D,CAAA;AAGhH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CACjC,gBAAuE,EACvE,EAAE;IACF,MAAM,cAAc,GAAG,CAAC,KAAc,EAAE,QAAqC,EAAE,OAAuB,EAAE,EAAE;QACxG,MAAM,SAAS,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAA;QAE/E,IAAI,gBAAgB,CAAC,aAAa,KAAK,WAAW,EAAE,CAAC;YACnD,MAAM,EAAE,aAAa,EAAE,CAAC,EAAE,qBAAqB,EAAE,GAAG,SAAS,EAAE,GAAG,gBAAgB,CAAA;YAElF,OAAO,CACL,KAAC,WAAW,IACV,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,KAAK,EAC1B,SAAS,EAAC,YAAY,EACtB,SAAS,QACT,aAAa,EAAC,WAAW,EACzB,qBAAqB,EAAE,qBAAqB,KACxC,SAAS,EACb,KAAK,EAAE,SAAS,EAChB,QAAQ,EAAE,CAAC,QAAQ,EAAE,EAAE;oBACrB,QAAQ,CAAC,QAAQ,CAAC,CAAA;gBACpB,CAAC,GACD,CACH,CAAA;QACH,CAAC;QAED,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE,qBAAqB,EAAE,EAAE,EAAE,GAAG,SAAS,EAAE,GAAG,gBAAgB,CAAA;QAEvF,OAAO,CACL,KAAC,WAAW,IACV,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,KAAK,EAC1B,SAAS,EAAC,YAAY,EACtB,SAAS,WACL,SAAS,EACb,KAAK,EAAE,SAAS,EAChB,QAAQ,EAAE,CAAC,QAAQ,EAAE,EAAE;gBACrB,QAAQ,CAAC,QAAQ,CAAC,CAAA;YACpB,CAAC,GACD,CACH,CAAA;IACH,CAAC,CAAA;IAED,OAAO,cAAc,CAAA;AACvB,CAAC,CAAA"}
@@ -1,4 +1,17 @@
1
+ export { buildAidCellEditor } from './aid-editor.js';
2
+ export { buildAmountCellEditor } from './amount-editor.js';
1
3
  export { buildBooleanCellEditor } from './boolean-editor.js';
4
+ export { buildCountryCellEditor } from './country-editor.js';
5
+ export { buildCurrencyCellEditor } from './currency-editor.js';
6
+ export { buildDateCellEditor } from './date-editor.js';
7
+ export { buildDateTimeCellEditor } from './datetime-editor.js';
8
+ export { buildEmailCellEditor } from './email-editor.js';
9
+ export { buildEnumCellEditor } from './enum-editor.js';
2
10
  export { buildNumberCellEditor } from './number-editor.js';
11
+ export { buildOidCellEditor } from './oid-editor.js';
12
+ export { buildPhidCellEditor } from './phid-editor.js';
3
13
  export { buildStringCellEditor } from './string-editor.js';
14
+ export { buildTimeCellEditor } from './time-editor.js';
15
+ export { buildUrlCellEditor } from './url-editor.js';
16
+ export { getCellEditorFn } from './get-cell-editor-fn.js';
4
17
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/table/components/default-cell-editors/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAA;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAA;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/table/components/default-cell-editors/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AACpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAA;AAC1D,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAA;AAC5D,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAA;AAC5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAA;AAC9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;AACtD,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAA;AAC9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAA;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;AACtD,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAA;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;AACtD,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAA;AAC1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA"}
@@ -1,4 +1,17 @@
1
+ export { buildAidCellEditor } from './aid-editor.js';
2
+ export { buildAmountCellEditor } from './amount-editor.js';
1
3
  export { buildBooleanCellEditor } from './boolean-editor.js';
4
+ export { buildCountryCellEditor } from './country-editor.js';
5
+ export { buildCurrencyCellEditor } from './currency-editor.js';
6
+ export { buildDateCellEditor } from './date-editor.js';
7
+ export { buildDateTimeCellEditor } from './datetime-editor.js';
8
+ export { buildEmailCellEditor } from './email-editor.js';
9
+ export { buildEnumCellEditor } from './enum-editor.js';
2
10
  export { buildNumberCellEditor } from './number-editor.js';
11
+ export { buildOidCellEditor } from './oid-editor.js';
12
+ export { buildPhidCellEditor } from './phid-editor.js';
3
13
  export { buildStringCellEditor } from './string-editor.js';
14
+ export { buildTimeCellEditor } from './time-editor.js';
15
+ export { buildUrlCellEditor } from './url-editor.js';
16
+ export { getCellEditorFn } from './get-cell-editor-fn.js';
4
17
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/table/components/default-cell-editors/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAA;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAA;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/table/components/default-cell-editors/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AACpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAA;AAC1D,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAA;AAC5D,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAA;AAC5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAA;AAC9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;AACtD,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAA;AAC9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAA;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;AACtD,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAA;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;AACtD,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAA;AAC1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"url-render.d.ts","sourceRoot":"","sources":["../../../../../src/table/components/default-cell-renderers/url-render.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAEjE,QAAA,MAAM,aAAa,GAAI,CAAC,SAAS,QAAQ,GAAG,QAAQ,EAAE,OAAO,OAAO,EAAE,SAAS,WAAW,CAAC,CAAC,CAAC,4CAoB5F,CAAA;AAED,OAAO,EAAE,aAAa,EAAE,CAAA"}
1
+ {"version":3,"file":"url-render.d.ts","sourceRoot":"","sources":["../../../../../src/table/components/default-cell-renderers/url-render.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAEjE,QAAA,MAAM,aAAa,GAAI,CAAC,SAAS,QAAQ,GAAG,QAAQ,EAAE,OAAO,OAAO,EAAE,SAAS,WAAW,CAAC,CAAC,CAAC,4CAyB5F,CAAA;AAED,OAAO,EAAE,aAAa,EAAE,CAAA"}
@@ -6,7 +6,7 @@ const renderUrlCell = (value, context) => {
6
6
  'text-right': context.column.align === 'right',
7
7
  'text-center': context.column.align === 'center',
8
8
  'text-left': context.column.align === 'left' || !context.column.align,
9
- }), children: url ? (_jsx("a", { href: url, target: "_blank", rel: "noopener noreferrer", className: "text-blue-600 hover:text-blue-800 underline", children: url })) : ('') }));
9
+ }), children: url ? (_jsx("a", { href: url, target: "_blank", rel: "noopener noreferrer", className: "text-blue-900 hover:underline focus-visible:outline-none", children: url })) : ('') }));
10
10
  };
11
11
  export { renderUrlCell };
12
12
  //# sourceMappingURL=url-render.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"url-render.js","sourceRoot":"","sources":["../../../../../src/table/components/default-cell-renderers/url-render.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,+BAA+B,CAAA;AAGlD,MAAM,aAAa,GAAG,CAAgC,KAAc,EAAE,OAAuB,EAAE,EAAE;IAC/F,MAAM,GAAG,GAAG,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAA;IAEnC,OAAO,CACL,cACE,SAAS,EAAE,EAAE,CAAC;YACZ,YAAY,EAAE,OAAO,CAAC,MAAM,CAAC,KAAK,KAAK,OAAO;YAC9C,aAAa,EAAE,OAAO,CAAC,MAAM,CAAC,KAAK,KAAK,QAAQ;YAChD,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC,KAAK,KAAK,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK;SACtE,CAAC,YAED,GAAG,CAAC,CAAC,CAAC,CACL,YAAG,IAAI,EAAE,GAAG,EAAE,MAAM,EAAC,QAAQ,EAAC,GAAG,EAAC,qBAAqB,EAAC,SAAS,EAAC,6CAA6C,YAC5G,GAAG,GACF,CACL,CAAC,CAAC,CAAC,CACF,EAAE,CACH,GACG,CACP,CAAA;AACH,CAAC,CAAA;AAED,OAAO,EAAE,aAAa,EAAE,CAAA"}
1
+ {"version":3,"file":"url-render.js","sourceRoot":"","sources":["../../../../../src/table/components/default-cell-renderers/url-render.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,+BAA+B,CAAA;AAGlD,MAAM,aAAa,GAAG,CAAgC,KAAc,EAAE,OAAuB,EAAE,EAAE;IAC/F,MAAM,GAAG,GAAG,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAA;IAEnC,OAAO,CACL,cACE,SAAS,EAAE,EAAE,CAAC;YACZ,YAAY,EAAE,OAAO,CAAC,MAAM,CAAC,KAAK,KAAK,OAAO;YAC9C,aAAa,EAAE,OAAO,CAAC,MAAM,CAAC,KAAK,KAAK,QAAQ;YAChD,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC,KAAK,KAAK,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK;SACtE,CAAC,YAED,GAAG,CAAC,CAAC,CAAC,CACL,YACE,IAAI,EAAE,GAAG,EACT,MAAM,EAAC,QAAQ,EACf,GAAG,EAAC,qBAAqB,EACzB,SAAS,EAAC,0DAA0D,YAEnE,GAAG,GACF,CACL,CAAC,CAAC,CAAC,CACF,EAAE,CACH,GACG,CACP,CAAA;AACH,CAAC,CAAA;AAED,OAAO,EAAE,aAAa,EAAE,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"header.d.ts","sourceRoot":"","sources":["../../../../src/table/components/header.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAe,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAK/D,UAAU,gBAAgB;IACxB,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAA;CAC/B;AAED,QAAA,MAAM,WAAW,GAAI,aAAa,gBAAgB,4CAiEjD,CAAA;AAED,OAAO,EAAE,WAAW,EAAE,CAAA"}
1
+ {"version":3,"file":"header.d.ts","sourceRoot":"","sources":["../../../../src/table/components/header.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAe,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAM/D,UAAU,gBAAgB;IACxB,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAA;CAC/B;AAID,QAAA,MAAM,WAAW,GAAI,aAAa,gBAAgB,4CA2EjD,CAAA;AAED,OAAO,EAAE,WAAW,EAAE,CAAA"}
@@ -4,6 +4,8 @@ import { cn } from '../../scalars/lib/utils.js';
4
4
  import { getColumnTitle } from '../table/utils.js';
5
5
  import { HeaderNumberTd } from './header/header-number-td.js';
6
6
  import { useInternalTableState } from './table-provider/table-provider.js';
7
+ import { useRowDrag } from '../hooks/useRowDrag.js';
8
+ const HEADER_ROW_INDEX = -1;
7
9
  const TableHeader = ({ columns }) => {
8
10
  const { config, state: { selectedRowIndexes }, api, } = useInternalTableState();
9
11
  const handleSelectAllRows = useCallback(() => {
@@ -41,7 +43,8 @@ const TableHeader = ({ columns }) => {
41
43
  return (_jsx("th", { className: cn('group/header-cell', column.sortable ? 'cursor-pointer' : ''), style: style, onClick: onSort, children: column.renderHeader(getColumnTitle(column), cellContext) }, column.field));
42
44
  });
43
45
  }, [api, columns, config]);
44
- return (_jsx("thead", { children: _jsxs("tr", { className: cn('border-gray-300', !selectedRowIndexes.includes(0) && 'border-b'), children: [_jsx(HeaderNumberTd, { isAllRowsSelected: isAllRowsSelected, handleSelectAllRows: handleSelectAllRows }), columnHeaders] }) }));
46
+ const { draggingOver, onDragOver, onDragLeave, onDrop } = useRowDrag(HEADER_ROW_INDEX);
47
+ return (_jsx("thead", { children: _jsxs("tr", { className: cn(!selectedRowIndexes.includes(0) && 'border-b', draggingOver ? 'border-b-1 border-blue-500' : 'border-gray-300'), onDragOver: onDragOver, onDragLeave: onDragLeave, onDrop: onDrop, children: [_jsx(HeaderNumberTd, { isAllRowsSelected: isAllRowsSelected, handleSelectAllRows: handleSelectAllRows }), columnHeaders] }) }));
45
48
  };
46
49
  export { TableHeader };
47
50
  //# sourceMappingURL=header.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"header.js","sourceRoot":"","sources":["../../../../src/table/components/header.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"header.js","sourceRoot":"","sources":["../../../../src/table/components/header.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"render-row.d.ts","sourceRoot":"","sources":["../../../../../src/table/components/rows/render-row.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAQjE,UAAU,cAAc,CAAC,CAAC,SAAS,QAAQ;IACzC,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,CAAA;IACpB,QAAQ,EAAE,MAAM,CAAA;IAChB,IAAI,CAAC,EAAE,SAAS,GAAG,WAAW,GAAG,OAAO,CAAA;CACzC;AAED,QAAA,MAAM,SAAS,GAAI,CAAC,SAAS,QAAQ,EAAE,0BAAsC,cAAc,CAAC,CAAC,CAAC,4CAsJ7F,CAAA;AAED,OAAO,EAAE,SAAS,EAAE,CAAA"}
1
+ {"version":3,"file":"render-row.d.ts","sourceRoot":"","sources":["../../../../../src/table/components/rows/render-row.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAUjE,UAAU,cAAc,CAAC,CAAC,SAAS,QAAQ;IACzC,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,CAAA;IACpB,QAAQ,EAAE,MAAM,CAAA;IAChB,IAAI,CAAC,EAAE,SAAS,GAAG,WAAW,GAAG,OAAO,CAAA;CACzC;AAED,QAAA,MAAM,SAAS,GAAI,CAAC,SAAS,QAAQ,EAAE,0BAAsC,cAAc,CAAC,CAAC,CAAC,4CA4J7F,CAAA;AAED,OAAO,EAAE,SAAS,EAAE,CAAA"}
@@ -6,6 +6,8 @@ import { TableRow } from './table-row.js';
6
6
  import { RenderCell } from '../cells/render-cell/render-cell.js';
7
7
  import { InformationCell } from '../cells/information-cell.js';
8
8
  import { RowActions } from './row-actions.js';
9
+ import { useRowDrag } from '../../hooks/useRowDrag.js';
10
+ import { cn } from '../../../scalars/index.js';
9
11
  const RenderRow = ({ item, rowIndex, mode = 'default' }) => {
10
12
  const { config, state: { selectedRowIndexes, selectedCellIndex, selectedRowErrors }, api, } = useInternalTableState();
11
13
  const { allowRowSelection } = config;
@@ -90,7 +92,10 @@ const RenderRow = ({ item, rowIndex, mode = 'default' }) => {
90
92
  const handleSecondaryActionsClose = useCallback(() => {
91
93
  setIsSecondaryActionsOpen(false);
92
94
  }, []);
93
- return (_jsxs(TableRow, { ref: rowRef, index: rowIndex, onClick: createAddSelectedRowHandler(rowIndex), onMouseDown: handleMouseDown, onMouseEnter: handleRowMouseEnter, onMouseLeave: handleRowMouseLeave, children: [_jsx(RowNumberCell, { index: mode === 'default' ? item.__index + 1 : rowIndex + 1, handleSelectRowOnClick: createSelectRowOnClickHandler(rowIndex), selected: selectedRowIndexes.includes(rowIndex) || selectedCellIndex?.row === rowIndex, hasErrors: hasErrors }), config.columns.map((column, columnIndex) => {
95
+ const { canDrag, draggingOver, ...eventHandlers } = useRowDrag(rowIndex);
96
+ return (_jsxs(TableRow, { ref: rowRef, index: rowIndex, onClick: createAddSelectedRowHandler(rowIndex), onMouseDown: handleMouseDown, onMouseEnter: handleRowMouseEnter, onMouseLeave: handleRowMouseLeave,
97
+ // rows drag and drop handlers
98
+ draggable: canDrag, ...eventHandlers, className: cn(draggingOver === rowIndex && canDrag && 'border-b-1 border-blue-900'), children: [_jsx(RowNumberCell, { index: mode === 'default' ? item.__index + 1 : rowIndex + 1, handleSelectRowOnClick: createSelectRowOnClickHandler(rowIndex), selected: selectedRowIndexes.includes(rowIndex) || selectedCellIndex?.row === rowIndex, hasErrors: hasErrors }), config.columns.map((column, columnIndex) => {
94
99
  return (_jsx(RenderCell, { rowItem: item, column: column, rowIndex: rowIndex, columnIndex: columnIndex, renderEmptyCell: mode === 'empty' }, column.field));
95
100
  }), (api.isEditable() || api.canDelete()) && _jsx(InformationCell, { rowIndex: rowIndex }), canShowActions && (_jsx(RowActions, { data: item, open: actionsOpen, rowIndex: rowIndex, rowRef: rowRef, primaryAction: config.actions?.primary, secondaryActions: config.actions?.secondary, isSecondaryActionsOpen: isSecondaryActionsOpen, handleSecondaryActionsOpen: handleSecondaryActionsOpen, handleSecondaryActionsClose: handleSecondaryActionsClose }))] }));
96
101
  };
@@ -1 +1 @@
1
- {"version":3,"file":"render-row.js","sourceRoot":"","sources":["../../../../../src/table/components/rows/render-row.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"render-row.js","sourceRoot":"","sources":["../../../../../src/table/components/rows/render-row.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"table-focus-trap.d.ts","sourceRoot":"","sources":["../../../../src/table/components/table-focus-trap.tsx"],"names":[],"mappings":"AAKA,QAAA,MAAM,cAAc,GAAI,cAAc;IAAE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,4CAoClE,CAAA;AAED,OAAO,EAAE,cAAc,EAAE,CAAA"}
1
+ {"version":3,"file":"table-focus-trap.d.ts","sourceRoot":"","sources":["../../../../src/table/components/table-focus-trap.tsx"],"names":[],"mappings":"AAKA,QAAA,MAAM,cAAc,GAAI,cAAc;IAAE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,4CA0ClE,CAAA;AAED,OAAO,EAAE,cAAc,EAAE,CAAA"}
@@ -18,14 +18,17 @@ const TableFocusTrap = ({ children }) => {
18
18
  }
19
19
  if (api.selection.haveSelectedCells()) {
20
20
  if (api.isEditing()) {
21
+ event.preventDefault();
21
22
  void api.exitCellEditMode(true);
22
23
  return; // do not clear the cell selection
23
24
  }
24
25
  api.selection.clearCellSelection();
25
26
  }
26
27
  });
27
- // return children;
28
- return (_jsx("div", { ref: ref, children: _jsx(FocusTrap, { active: !!selectedCellIndex, focusTrapOptions: { allowOutsideClick: true }, children: children }) }));
28
+ return (_jsx("div", { ref: ref, children: _jsx(FocusTrap, { active: !!selectedCellIndex, focusTrapOptions: {
29
+ allowOutsideClick: true,
30
+ escapeDeactivates: false,
31
+ }, children: children }) }));
29
32
  };
30
33
  export { TableFocusTrap };
31
34
  //# sourceMappingURL=table-focus-trap.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"table-focus-trap.js","sourceRoot":"","sources":["../../../../src/table/components/table-focus-trap.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAC/C,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAA;AAE1E,MAAM,cAAc,GAAG,CAAC,EAAE,QAAQ,EAAiC,EAAE,EAAE;IACrE,MAAM,EACJ,KAAK,EAAE,EAAE,iBAAiB,EAAE,EAC5B,GAAG,GACJ,GAAG,qBAAqB,EAAE,CAAA;IAC3B,MAAM,GAAG,GAAG,MAAM,CAAmB,IAAI,CAAC,CAAA;IAE1C,iBAAiB,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,EAAE;QAC/B,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,GAAI,KAAK,CAAC,MAAsB,CAAC,qBAAqB,EAAE,CAAA;QAEtE,kEAAkE;QAClE,wGAAwG;QACxG,MAAM,SAAS,GAAG,GAAG,CAAC,OAAO,EAAE,qBAAqB,EAAE,CAAA;QACtD,IAAI,SAAS,EAAE,CAAC;YACd,IAAI,CAAC,IAAI,SAAS,CAAC,IAAI,IAAI,CAAC,IAAI,SAAS,CAAC,KAAK,IAAI,CAAC,IAAI,SAAS,CAAC,GAAG,IAAI,CAAC,IAAI,SAAS,CAAC,MAAM,EAAE,CAAC;gBAC/F,OAAM;YACR,CAAC;QACH,CAAC;QAED,IAAI,GAAG,CAAC,SAAS,CAAC,iBAAiB,EAAE,EAAE,CAAC;YACtC,IAAI,GAAG,CAAC,SAAS,EAAE,EAAE,CAAC;gBACpB,KAAK,GAAG,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAA;gBAC/B,OAAM,CAAC,kCAAkC;YAC3C,CAAC;YACD,GAAG,CAAC,SAAS,CAAC,kBAAkB,EAAE,CAAA;QACpC,CAAC;IACH,CAAC,CAAC,CAAA;IAEF,qBAAqB;IACrB,OAAO,CACL,cAAK,GAAG,EAAE,GAAG,YACX,KAAC,SAAS,IAAC,MAAM,EAAE,CAAC,CAAC,iBAAiB,EAAE,gBAAgB,EAAE,EAAE,iBAAiB,EAAE,IAAI,EAAE,YAClF,QAAQ,GACC,GACR,CACP,CAAA;AACH,CAAC,CAAA;AAED,OAAO,EAAE,cAAc,EAAE,CAAA"}
1
+ {"version":3,"file":"table-focus-trap.js","sourceRoot":"","sources":["../../../../src/table/components/table-focus-trap.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAC/C,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAA;AAE1E,MAAM,cAAc,GAAG,CAAC,EAAE,QAAQ,EAAiC,EAAE,EAAE;IACrE,MAAM,EACJ,KAAK,EAAE,EAAE,iBAAiB,EAAE,EAC5B,GAAG,GACJ,GAAG,qBAAqB,EAAE,CAAA;IAC3B,MAAM,GAAG,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAA;IAExC,iBAAiB,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,EAAE;QAC/B,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,GAAI,KAAK,CAAC,MAAsB,CAAC,qBAAqB,EAAE,CAAA;QAEtE,kEAAkE;QAClE,wGAAwG;QACxG,MAAM,SAAS,GAAG,GAAG,CAAC,OAAO,EAAE,qBAAqB,EAAE,CAAA;QACtD,IAAI,SAAS,EAAE,CAAC;YACd,IAAI,CAAC,IAAI,SAAS,CAAC,IAAI,IAAI,CAAC,IAAI,SAAS,CAAC,KAAK,IAAI,CAAC,IAAI,SAAS,CAAC,GAAG,IAAI,CAAC,IAAI,SAAS,CAAC,MAAM,EAAE,CAAC;gBAC/F,OAAM;YACR,CAAC;QACH,CAAC;QAED,IAAI,GAAG,CAAC,SAAS,CAAC,iBAAiB,EAAE,EAAE,CAAC;YACtC,IAAI,GAAG,CAAC,SAAS,EAAE,EAAE,CAAC;gBACpB,KAAK,CAAC,cAAc,EAAE,CAAA;gBACtB,KAAK,GAAG,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAA;gBAC/B,OAAM,CAAC,kCAAkC;YAC3C,CAAC;YACD,GAAG,CAAC,SAAS,CAAC,kBAAkB,EAAE,CAAA;QACpC,CAAC;IACH,CAAC,CAAC,CAAA;IAEF,OAAO,CACL,cAAK,GAAG,EAAE,GAAG,YACX,KAAC,SAAS,IACR,MAAM,EAAE,CAAC,CAAC,iBAAiB,EAC3B,gBAAgB,EAAE;gBAChB,iBAAiB,EAAE,IAAI;gBACvB,iBAAiB,EAAE,KAAK;aACzB,YAEA,QAAQ,GACC,GACR,CACP,CAAA;AACH,CAAC,CAAA;AAED,OAAO,EAAE,cAAc,EAAE,CAAA"}
@@ -0,0 +1,5 @@
1
+ import { type MockedPerson } from '../../table/mock-data.js';
2
+ import type { ObjectSetTableConfig } from '../../table/types.js';
3
+ declare const CustomCellEditorsExample: (props: Omit<ObjectSetTableConfig<MockedPerson>, "columns" | "data">) => import("react/jsx-runtime").JSX.Element;
4
+ export default CustomCellEditorsExample;
5
+ //# sourceMappingURL=custom-cell-editors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"custom-cell-editors.d.ts","sourceRoot":"","sources":["../../../../../src/table/examples/custom-cell-editors/custom-cell-editors.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAY,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAEtE,OAAO,KAAK,EAA0B,oBAAoB,EAAE,MAAM,sBAAsB,CAAA;AA6GxF,QAAA,MAAM,wBAAwB,GAAI,OAAO,IAAI,CAAC,oBAAoB,CAAC,YAAY,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC,4CA+IpG,CAAA;AAED,eAAe,wBAAwB,CAAA"}
@@ -0,0 +1,173 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useMemo, useState } from 'react';
3
+ import { useFormContext } from 'react-hook-form';
4
+ import { cn } from '../../../scalars/lib/utils.js';
5
+ import { mockData } from '../../table/mock-data.js';
6
+ import { ObjectSetTable } from '../../table/object-set-table.js';
7
+ import { buildStringCellEditor } from '../../components/default-cell-editors/string-editor.js';
8
+ const CustomTextInputEditor = ({ value, onChange, context, placeholder, maxLength, }) => {
9
+ const { register } = useFormContext();
10
+ const inputValue = typeof value === 'string' ? value : (value?.toString() ?? '');
11
+ return (_jsx("input", { ...register(context.column.field, {
12
+ value: inputValue,
13
+ onChange,
14
+ validate: (value) => {
15
+ if (typeof value === 'string' && value.length > 10) {
16
+ return 'Custom validation: Value must be less than 10 characters';
17
+ }
18
+ return true;
19
+ },
20
+ }), type: "text", placeholder: placeholder, maxLength: maxLength, autoFocus: true, className: cn('w-full px-2 py-1 text-sm border border-gray-300 rounded-md', 'focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-transparent', 'bg-white text-gray-900 placeholder-gray-500') }));
21
+ };
22
+ CustomTextInputEditor.displayName = 'CustomTextInputEditor';
23
+ const CustomEmailInputEditor = ({ value, onChange, context, }) => {
24
+ const { register } = useFormContext();
25
+ const emailValue = typeof value === 'string' ? value : (value?.toString() ?? '');
26
+ return (_jsx("input", { ...register(context.column.field, {
27
+ value: emailValue,
28
+ onChange,
29
+ pattern: {
30
+ value: /^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,}$/i,
31
+ message: 'Invalid email address',
32
+ },
33
+ }), type: "email", placeholder: "Enter email address...", autoFocus: true, className: cn('w-full px-2 py-1 text-sm border border-gray-300 rounded-md', 'focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-transparent', 'bg-white text-gray-900 placeholder-gray-500', 'invalid:border-red-500 invalid:ring-red-500') }));
34
+ };
35
+ CustomEmailInputEditor.displayName = 'CustomEmailInputEditor';
36
+ // The Editors can be created using the CellEditor signature directly, but creating builders for them gives you the
37
+ // flexibility to reuse them with different parameters.
38
+ const buildCustomHTMLInputEditor = (placeholder, maxLength) => {
39
+ const editor = (value, onChange, context) => {
40
+ return (_jsx(CustomTextInputEditor, { value: value, onChange: onChange, context: context, placeholder: placeholder, maxLength: maxLength }));
41
+ };
42
+ editor.displayName = 'CustomHTMLInputEditor';
43
+ return editor;
44
+ };
45
+ const buildCustomEmailEditor = () => {
46
+ const editor = (value, onChange, context) => {
47
+ return _jsx(CustomEmailInputEditor, { value: value, onChange: onChange, context: context });
48
+ };
49
+ editor.displayName = 'CustomEmailEditor';
50
+ return editor;
51
+ };
52
+ const CustomCellEditorsExample = (props) => {
53
+ const [data, setData] = useState(mockData);
54
+ const columns = useMemo(() => [
55
+ {
56
+ field: 'firstName',
57
+ title: 'First Name',
58
+ editable: true,
59
+ width: 160,
60
+ onSave: (value, context) => {
61
+ if (typeof value === 'string' && value.trim().length > 0) {
62
+ setData((prevData) => {
63
+ const newData = [...prevData];
64
+ newData[context.rowIndex].firstName = value.trim();
65
+ return newData;
66
+ });
67
+ return true;
68
+ }
69
+ return false;
70
+ },
71
+ // Using custom HTML input editor instead of built-in StringField
72
+ renderCellEditor: buildCustomHTMLInputEditor('Enter first name...', 50),
73
+ },
74
+ {
75
+ field: 'email',
76
+ title: 'Email',
77
+ editable: true,
78
+ width: 200,
79
+ type: 'email',
80
+ onSave: (value, context) => {
81
+ if (typeof value === 'string' && /^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(value)) {
82
+ setData((prevData) => {
83
+ const newData = [...prevData];
84
+ newData[context.rowIndex].email = value;
85
+ return newData;
86
+ });
87
+ return true;
88
+ }
89
+ return false;
90
+ },
91
+ // Using custom email input with validation
92
+ renderCellEditor: buildCustomEmailEditor(),
93
+ },
94
+ {
95
+ field: 'walletAddress',
96
+ title: 'Wallet Address',
97
+ editable: true,
98
+ width: 200,
99
+ onSave: (value, context) => {
100
+ if (typeof value === 'string' && value.trim().length > 0) {
101
+ setData((prevData) => {
102
+ const newData = [...prevData];
103
+ newData[context.rowIndex].walletAddress = value.trim();
104
+ return newData;
105
+ });
106
+ return true;
107
+ }
108
+ return false;
109
+ },
110
+ // Mixed: Using built-in scalar editor for comparison
111
+ renderCellEditor: buildStringCellEditor({
112
+ placeholder: 'Enter wallet address...',
113
+ className: 'font-mono text-xs',
114
+ }),
115
+ },
116
+ {
117
+ field: 'payment',
118
+ title: 'Payment',
119
+ width: 120,
120
+ type: 'number',
121
+ editable: true,
122
+ align: 'right',
123
+ onSave: (value, context) => {
124
+ const numValue = Number(value);
125
+ if (!isNaN(numValue) && numValue >= 0) {
126
+ setData((prevData) => {
127
+ const newData = [...prevData];
128
+ newData[context.rowIndex].payment = numValue;
129
+ return newData;
130
+ });
131
+ return true;
132
+ }
133
+ return false;
134
+ },
135
+ renderCell: (value) => {
136
+ return value !== undefined ? _jsxs("span", { className: "font-mono", children: ["$", value.toLocaleString()] }) : null;
137
+ },
138
+ // Using built-in number editor for simplicity
139
+ renderCellEditor: buildStringCellEditor({
140
+ placeholder: 'Enter amount...',
141
+ className: 'text-right font-mono',
142
+ }),
143
+ },
144
+ ], []);
145
+ return (_jsxs("div", { className: "space-y-4", children: [_jsxs("div", { className: "bg-blue-50 border border-blue-200 rounded-lg p-4", children: [_jsx("h3", { className: "font-semibold text-blue-900 mb-2", children: "Custom Cell Editors Example" }), _jsx("p", { className: "text-blue-800 text-sm", children: "This example demonstrates custom cell editors using HTML inputs with react-hook-form's register() function. Compare the custom HTML inputs (First Name, Email) with the built-in scalar editor (Wallet Address)." })] }), _jsx(ObjectSetTable, { columns: columns, data: data, minRowCount: 5, maxRowCount: 10, ...props, onDelete: (rows) => {
146
+ setData((prevData) => {
147
+ const newData = [...prevData];
148
+ const filteredData = newData.filter((row) => !rows.some((person) => person.id === row.id));
149
+ return filteredData;
150
+ });
151
+ }, onAdd: (data) => {
152
+ const newPerson = {
153
+ id: crypto.randomUUID(),
154
+ firstName: '',
155
+ status: 'inactive',
156
+ payment: 0,
157
+ isActive: false,
158
+ walletAddress: '',
159
+ email: '',
160
+ address: {
161
+ addressLine1: '',
162
+ addressLine2: '',
163
+ city: '',
164
+ state: '',
165
+ zip: '',
166
+ },
167
+ ...data,
168
+ };
169
+ setData((prevData) => [...prevData, newPerson]);
170
+ } })] }));
171
+ };
172
+ export default CustomCellEditorsExample;
173
+ //# sourceMappingURL=custom-cell-editors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"custom-cell-editors.js","sourceRoot":"","sources":["../../../../../src/table/examples/custom-cell-editors/custom-cell-editors.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import { type MockedPerson } from '../../table/mock-data.js';
2
+ import type { ObjectSetTableConfig } from '../../table/types.js';
3
+ declare const RowReorderingExample: (props: Omit<ObjectSetTableConfig<MockedPerson>, "columns" | "data">) => import("react/jsx-runtime").JSX.Element;
4
+ export default RowReorderingExample;
5
+ //# sourceMappingURL=row-reordering.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"row-reordering.d.ts","sourceRoot":"","sources":["../../../../../src/table/examples/row-reordering/row-reordering.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAY,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAEtE,OAAO,KAAK,EAAa,oBAAoB,EAAE,MAAM,sBAAsB,CAAA;AAG3E,QAAA,MAAM,oBAAoB,GAAI,OAAO,IAAI,CAAC,oBAAoB,CAAC,YAAY,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC,4CA8FhG,CAAA;AAED,eAAe,oBAAoB,CAAA"}
@@ -0,0 +1,65 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useMemo, useState } from 'react';
3
+ import { cn } from '../../../scalars/index.js';
4
+ import { mockData } from '../../table/mock-data.js';
5
+ import { ObjectSetTable } from '../../table/object-set-table.js';
6
+ import { Icon } from '../../../ui/components/icon/icon.js';
7
+ const RowReorderingExample = (props) => {
8
+ const [data, setData] = useState(mockData.slice(0, 6)); // Use fewer rows for better demo
9
+ const columns = useMemo(() => [
10
+ {
11
+ field: 'firstName',
12
+ title: 'Name',
13
+ width: 140,
14
+ renderCell: (value) => (_jsxs("div", { className: "flex items-center gap-2", children: [_jsx(Icon, { name: "Person", size: 16, className: "text-gray-500" }), _jsx("span", { className: "font-medium", children: value })] })),
15
+ },
16
+ {
17
+ field: 'email',
18
+ width: 200,
19
+ renderCell: (value) => _jsx("span", { className: "text-gray-600", children: value }),
20
+ },
21
+ {
22
+ field: 'status',
23
+ width: 120,
24
+ renderCell: (value) => (_jsxs("div", { className: "flex items-center gap-2", children: [_jsx("div", { className: cn('h-2 w-2 rounded-full', value === 'active' ? 'bg-green-500' : 'bg-red-500') }), _jsx("span", { className: cn('text-xs font-medium', value === 'active' ? 'text-green-700' : 'text-red-700'), children: value.charAt(0).toUpperCase() + value.slice(1) })] })),
25
+ },
26
+ {
27
+ field: 'payment',
28
+ width: 120,
29
+ type: 'number',
30
+ },
31
+ ], []);
32
+ /**
33
+ * Reorder the rows in the table.
34
+ *
35
+ * @param rows - The rows part of the `data` array to reorder.
36
+ * @param targetRowIndex - The index (0-based) to reorder the rows to, this index is relative to the original array.
37
+ *
38
+ * @example
39
+ * ```
40
+ * data = [1,2,3,4,5]
41
+ * handleReorder([1,2], 3)
42
+ * data = [4,3,1,2,5]
43
+ * ```
44
+ */
45
+ const handleReorder = (rows, targetRowIndex) => {
46
+ setData((prevData) => {
47
+ const left = [];
48
+ const right = [];
49
+ prevData.forEach((row, index) => {
50
+ if (!rows.some((incomingRow) => incomingRow.id === row.id)) {
51
+ if (index <= targetRowIndex) {
52
+ left.push(row);
53
+ }
54
+ else {
55
+ right.push(row);
56
+ }
57
+ }
58
+ });
59
+ return [...left, ...rows, ...right];
60
+ });
61
+ };
62
+ return (_jsxs("div", { className: "flex flex-col gap-4", children: [_jsxs("div", { className: "p-4 bg-blue-50 border border-blue-200 rounded-md", children: [_jsx("h3", { className: "text-sm font-medium text-blue-900 mb-2", children: "Row Reordering Demo" }), _jsx("p", { className: "text-sm text-blue-700", children: "Drag and drop rows to reorder them. The table data will update automatically." })] }), _jsx(ObjectSetTable, { columns: columns, data: data, onReorder: handleReorder, allowRowSelection: true, showRowNumbers: true, minRowCount: 10, ...props })] }));
63
+ };
64
+ export default RowReorderingExample;
65
+ //# sourceMappingURL=row-reordering.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"row-reordering.js","sourceRoot":"","sources":["../../../../../src/table/examples/row-reordering/row-reordering.tsx"],"names":[],"mappings":"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"}