@economic/taco 2.7.5 → 2.8.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (62) hide show
  1. package/dist/components/Icon/components/CircleInformation.d.ts +3 -0
  2. package/dist/components/Icon/components/CircleQuestionmark.d.ts +3 -0
  3. package/dist/components/Icon/components/CircleWarning.d.ts +3 -0
  4. package/dist/components/Icon/components/index.d.ts +1 -1
  5. package/dist/components/Input/Input.d.ts +1 -1
  6. package/dist/components/Menu/components/Item.d.ts +1 -1
  7. package/dist/components/Menu/components/Link.d.ts +1 -1
  8. package/dist/components/Navigation2/components/Link.d.ts +1 -1
  9. package/dist/components/Select2/Select2.d.ts +1 -0
  10. package/dist/components/Select2/components/Option.d.ts +1 -1
  11. package/dist/components/Select2/components/Search.d.ts +1 -1
  12. package/dist/components/Select2/components/Trigger.d.ts +1 -0
  13. package/dist/components/Table3/components/columns/footer/Summary.d.ts +1 -0
  14. package/dist/components/Tag/Tag.d.ts +1 -1
  15. package/dist/esm/index.css +14 -1
  16. package/dist/esm/packages/taco/src/components/Dialog/components/Content.js +0 -9
  17. package/dist/esm/packages/taco/src/components/Dialog/components/Content.js.map +1 -1
  18. package/dist/esm/packages/taco/src/components/Icon/components/CircleInformation.js +19 -0
  19. package/dist/esm/packages/taco/src/components/Icon/components/CircleInformation.js.map +1 -0
  20. package/dist/esm/packages/taco/src/components/Icon/components/CircleQuestionmark.js +19 -0
  21. package/dist/esm/packages/taco/src/components/Icon/components/CircleQuestionmark.js.map +1 -0
  22. package/dist/esm/packages/taco/src/components/Icon/components/CircleWarning.js +19 -0
  23. package/dist/esm/packages/taco/src/components/Icon/components/CircleWarning.js.map +1 -0
  24. package/dist/esm/packages/taco/src/components/Icon/components/index.js +6 -0
  25. package/dist/esm/packages/taco/src/components/Icon/components/index.js.map +1 -1
  26. package/dist/esm/packages/taco/src/components/Provider/Localization.js +1 -1
  27. package/dist/esm/packages/taco/src/components/Provider/Localization.js.map +1 -1
  28. package/dist/esm/packages/taco/src/components/Select2/Select2.js +3 -1
  29. package/dist/esm/packages/taco/src/components/Select2/Select2.js.map +1 -1
  30. package/dist/esm/packages/taco/src/components/Select2/components/Trigger.js +28 -7
  31. package/dist/esm/packages/taco/src/components/Select2/components/Trigger.js.map +1 -1
  32. package/dist/esm/packages/taco/src/components/Table/hooks/useTableKeyboardNavigation.js +2 -2
  33. package/dist/esm/packages/taco/src/components/Table/hooks/useTableKeyboardNavigation.js.map +1 -1
  34. package/dist/esm/packages/taco/src/components/Table3/Table3.js +11 -2
  35. package/dist/esm/packages/taco/src/components/Table3/Table3.js.map +1 -1
  36. package/dist/esm/packages/taco/src/components/Table3/components/columns/cell/EditingControl.js +13 -3
  37. package/dist/esm/packages/taco/src/components/Table3/components/columns/cell/EditingControl.js.map +1 -1
  38. package/dist/esm/packages/taco/src/components/Table3/components/columns/footer/Summary.js +12 -2
  39. package/dist/esm/packages/taco/src/components/Table3/components/columns/footer/Summary.js.map +1 -1
  40. package/dist/esm/packages/taco/src/components/Table3/components/columns/header/Header.js +4 -1
  41. package/dist/esm/packages/taco/src/components/Table3/components/columns/header/Header.js.map +1 -1
  42. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/EditButton.js +0 -9
  43. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/EditButton.js.map +1 -1
  44. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/Filter/filters/Filters.js +2 -1
  45. package/dist/esm/packages/taco/src/components/Table3/components/toolbar/Filter/filters/Filters.js.map +1 -1
  46. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useEditing.js +15 -8
  47. package/dist/esm/packages/taco/src/components/Table3/hooks/features/useEditing.js.map +1 -1
  48. package/dist/esm/packages/taco/src/hooks/useGlobalKeyDown.js +2 -2
  49. package/dist/esm/packages/taco/src/hooks/useGlobalKeyDown.js.map +1 -1
  50. package/dist/esm/packages/taco/src/index.js +1 -1
  51. package/dist/esm/packages/taco/src/primitives/Button.js +5 -0
  52. package/dist/esm/packages/taco/src/primitives/Button.js.map +1 -1
  53. package/dist/esm/packages/taco/src/utils/keyboard.js +24 -19
  54. package/dist/esm/packages/taco/src/utils/keyboard.js.map +1 -1
  55. package/dist/index.css +14 -1
  56. package/dist/taco.cjs.development.js +168 -65
  57. package/dist/taco.cjs.development.js.map +1 -1
  58. package/dist/taco.cjs.production.min.js +1 -1
  59. package/dist/taco.cjs.production.min.js.map +1 -1
  60. package/dist/utils/keyboard.d.ts +2 -1
  61. package/package.json +2 -2
  62. package/types.json +17769 -11837
@@ -1 +1 @@
1
- {"version":3,"file":"keyboard.js","sources":["../../../../../../src/utils/keyboard.ts"],"sourcesContent":["import React from 'react';\n\nexport type KeyDownHandlerOptions = { key: string; meta?: boolean; shift?: boolean };\n\nexport function isEventTriggeredOnInteractiveElement(eventTarget: EventTarget | null) {\n const element = eventTarget as HTMLElement;\n\n return (\n ['A', 'BUTTON', 'INPUT', 'TEXTAREA', 'SELECT'].includes(element.tagName) &&\n !element.hidden &&\n !(element as HTMLInputElement | HTMLTextAreaElement | HTMLSelectElement | HTMLButtonElement).disabled &&\n !(element as HTMLInputElement | HTMLTextAreaElement).readOnly\n );\n}\n\nexport function createShortcutKeyDownHandler<T = Element>(\n key: string | KeyDownHandlerOptions,\n handler: (event: KeyboardEvent | React.KeyboardEvent<T>) => void\n) {\n return function (event: KeyboardEvent | React.KeyboardEvent<T>) {\n const keyOptions: KeyDownHandlerOptions = typeof key === 'string' ? { key, meta: false, shift: false } : key;\n\n if (event.target !== event.currentTarget && isEventTriggeredOnInteractiveElement(event.target as HTMLElement)) {\n return;\n }\n\n if (\n (keyOptions.meta && (isMacOs() ? !event.metaKey : !event.ctrlKey)) ||\n (!keyOptions.meta && (isMacOs() ? event.metaKey : event.ctrlKey))\n ) {\n return;\n }\n\n if ((keyOptions.shift && !event.shiftKey) || (keyOptions.shift === false && event.shiftKey)) {\n return;\n }\n\n const condition = event.key.toLowerCase() === keyOptions.key.toLowerCase();\n\n if (condition) {\n // stops react handlers bubbling up to global\n event.stopPropagation();\n // stops global handlers bubbling up to other global\n (event as KeyboardEvent).stopImmediatePropagation?.();\n handler(event);\n }\n };\n}\n\nexport const isMacOs = () => window?.navigator.userAgent.includes('Mac');\n"],"names":["isEventTriggeredOnInteractiveElement","eventTarget","element","includes","tagName","hidden","disabled","readOnly","createShortcutKeyDownHandler","key","handler","event","keyOptions","meta","shift","target","currentTarget","isMacOs","metaKey","ctrlKey","shiftKey","condition","toLowerCase","_event$stopImmediateP","stopPropagation","stopImmediatePropagation","call","_window","window","navigator","userAgent"],"mappings":"SAIgBA,oCAAoCA,CAACC,WAA+B;EAChF,MAAMC,OAAO,GAAGD,WAA0B;EAE1C,OACI,CAAC,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,CAAC,CAACE,QAAQ,CAACD,OAAO,CAACE,OAAO,CAAC,IACxE,CAACF,OAAO,CAACG,MAAM,IACf,CAAEH,OAA0F,CAACI,QAAQ,IACrG,CAAEJ,OAAkD,CAACK,QAAQ;AAErE;SAEgBC,4BAA4BA,CACxCC,GAAmC,EACnCC,OAAgE;EAEhE,OAAO,UAAUC,KAA6C;IAC1D,MAAMC,UAAU,GAA0B,OAAOH,GAAG,KAAK,QAAQ,GAAG;MAAEA,GAAG;MAAEI,IAAI,EAAE,KAAK;MAAEC,KAAK,EAAE;KAAO,GAAGL,GAAG;IAE5G,IAAIE,KAAK,CAACI,MAAM,KAAKJ,KAAK,CAACK,aAAa,IAAIhB,oCAAoC,CAACW,KAAK,CAACI,MAAqB,CAAC,EAAE;MAC3G;;IAGJ,IACKH,UAAU,CAACC,IAAI,KAAKI,OAAO,EAAE,GAAG,CAACN,KAAK,CAACO,OAAO,GAAG,CAACP,KAAK,CAACQ,OAAO,CAAC,IAChE,CAACP,UAAU,CAACC,IAAI,KAAKI,OAAO,EAAE,GAAGN,KAAK,CAACO,OAAO,GAAGP,KAAK,CAACQ,OAAO,CAAE,EACnE;MACE;;IAGJ,IAAKP,UAAU,CAACE,KAAK,IAAI,CAACH,KAAK,CAACS,QAAQ,IAAMR,UAAU,CAACE,KAAK,KAAK,KAAK,IAAIH,KAAK,CAACS,QAAS,EAAE;MACzF;;IAGJ,MAAMC,SAAS,GAAGV,KAAK,CAACF,GAAG,CAACa,WAAW,EAAE,KAAKV,UAAU,CAACH,GAAG,CAACa,WAAW,EAAE;IAE1E,IAAID,SAAS,EAAE;MAAA,IAAAE,qBAAA;;MAEXZ,KAAK,CAACa,eAAe,EAAE;;MAEtB,CAAAD,qBAAA,GAAAZ,KAAuB,CAACc,wBAAwB,cAAAF,qBAAA,uBAAhDA,qBAAA,CAAAG,IAAA,CAAAf,MAAoD;MACrDD,OAAO,CAACC,KAAK,CAAC;;GAErB;AACL;MAEaM,OAAO,GAAGA;EAAA,IAAAU,OAAA;EAAA,QAAAA,OAAA,GAAMC,MAAM,cAAAD,OAAA,uBAANA,OAAA,CAAQE,SAAS,CAACC,SAAS,CAAC3B,QAAQ,CAAC,KAAK,CAAC;AAAA;;;;"}
1
+ {"version":3,"file":"keyboard.js","sources":["../../../../../../src/utils/keyboard.ts"],"sourcesContent":["import React from 'react';\n\nexport type KeyDownHandlerOptions = { key: string; meta?: boolean; shift?: boolean };\n\nexport function isEventTriggeredOnInteractiveElement(eventTarget: EventTarget | null) {\n const element = eventTarget as HTMLElement;\n\n return (\n ['A', 'BUTTON', 'INPUT', 'TEXTAREA', 'SELECT'].includes(element.tagName) &&\n !element.hidden &&\n !(element as HTMLInputElement | HTMLTextAreaElement | HTMLSelectElement | HTMLButtonElement).disabled &&\n !(element as HTMLInputElement | HTMLTextAreaElement).readOnly\n );\n}\n\nexport function shouldTriggerShortcut<T = Element>(\n event: KeyboardEvent | React.KeyboardEvent<T>,\n key: string | KeyDownHandlerOptions\n) {\n const keyOptions: KeyDownHandlerOptions = typeof key === 'string' ? { key, meta: false, shift: false } : key;\n\n if (\n (keyOptions.meta && (isMacOs() ? !event.metaKey : !event.ctrlKey)) ||\n (!keyOptions.meta && (isMacOs() ? event.metaKey : event.ctrlKey))\n ) {\n return false;\n }\n\n if ((keyOptions.shift && !event.shiftKey) || (keyOptions.shift === false && event.shiftKey)) {\n return false;\n }\n\n return event.key.toLowerCase() === keyOptions.key.toLowerCase();\n}\n\nexport function createShortcutKeyDownHandler<T = Element>(\n key: string | KeyDownHandlerOptions,\n handler: (event: KeyboardEvent | React.KeyboardEvent<T>) => void,\n stopPropagation = true\n) {\n return function (event: KeyboardEvent | React.KeyboardEvent<T>) {\n if (event.target !== event.currentTarget && isEventTriggeredOnInteractiveElement(event.target as HTMLElement)) {\n return;\n }\n\n const condition = shouldTriggerShortcut(event, key);\n\n if (condition) {\n if (stopPropagation) {\n // stops react handlers bubbling up to global\n event.stopPropagation();\n // stops global handlers bubbling up to other global\n (event as KeyboardEvent).stopImmediatePropagation?.();\n }\n\n handler(event);\n }\n };\n}\n\nexport const isMacOs = () => window?.navigator.userAgent.includes('Mac');\n"],"names":["isEventTriggeredOnInteractiveElement","eventTarget","element","includes","tagName","hidden","disabled","readOnly","shouldTriggerShortcut","event","key","keyOptions","meta","shift","isMacOs","metaKey","ctrlKey","shiftKey","toLowerCase","createShortcutKeyDownHandler","handler","stopPropagation","target","currentTarget","condition","_event$stopImmediateP","stopImmediatePropagation","call","_window","window","navigator","userAgent"],"mappings":"SAIgBA,oCAAoCA,CAACC,WAA+B;EAChF,MAAMC,OAAO,GAAGD,WAA0B;EAE1C,OACI,CAAC,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,CAAC,CAACE,QAAQ,CAACD,OAAO,CAACE,OAAO,CAAC,IACxE,CAACF,OAAO,CAACG,MAAM,IACf,CAAEH,OAA0F,CAACI,QAAQ,IACrG,CAAEJ,OAAkD,CAACK,QAAQ;AAErE;SAEgBC,qBAAqBA,CACjCC,KAA6C,EAC7CC,GAAmC;EAEnC,MAAMC,UAAU,GAA0B,OAAOD,GAAG,KAAK,QAAQ,GAAG;IAAEA,GAAG;IAAEE,IAAI,EAAE,KAAK;IAAEC,KAAK,EAAE;GAAO,GAAGH,GAAG;EAE5G,IACKC,UAAU,CAACC,IAAI,KAAKE,OAAO,EAAE,GAAG,CAACL,KAAK,CAACM,OAAO,GAAG,CAACN,KAAK,CAACO,OAAO,CAAC,IAChE,CAACL,UAAU,CAACC,IAAI,KAAKE,OAAO,EAAE,GAAGL,KAAK,CAACM,OAAO,GAAGN,KAAK,CAACO,OAAO,CAAE,EACnE;IACE,OAAO,KAAK;;EAGhB,IAAKL,UAAU,CAACE,KAAK,IAAI,CAACJ,KAAK,CAACQ,QAAQ,IAAMN,UAAU,CAACE,KAAK,KAAK,KAAK,IAAIJ,KAAK,CAACQ,QAAS,EAAE;IACzF,OAAO,KAAK;;EAGhB,OAAOR,KAAK,CAACC,GAAG,CAACQ,WAAW,EAAE,KAAKP,UAAU,CAACD,GAAG,CAACQ,WAAW,EAAE;AACnE;SAEgBC,4BAA4BA,CACxCT,GAAmC,EACnCU,OAAgE,EAChEC,eAAe,GAAG,IAAI;EAEtB,OAAO,UAAUZ,KAA6C;IAC1D,IAAIA,KAAK,CAACa,MAAM,KAAKb,KAAK,CAACc,aAAa,IAAIvB,oCAAoC,CAACS,KAAK,CAACa,MAAqB,CAAC,EAAE;MAC3G;;IAGJ,MAAME,SAAS,GAAGhB,qBAAqB,CAACC,KAAK,EAAEC,GAAG,CAAC;IAEnD,IAAIc,SAAS,EAAE;MACX,IAAIH,eAAe,EAAE;QAAA,IAAAI,qBAAA;;QAEjBhB,KAAK,CAACY,eAAe,EAAE;;QAEtB,CAAAI,qBAAA,GAAAhB,KAAuB,CAACiB,wBAAwB,cAAAD,qBAAA,uBAAhDA,qBAAA,CAAAE,IAAA,CAAAlB,MAAoD;;MAGzDW,OAAO,CAACX,KAAK,CAAC;;GAErB;AACL;MAEaK,OAAO,GAAGA;EAAA,IAAAc,OAAA;EAAA,QAAAA,OAAA,GAAMC,MAAM,cAAAD,OAAA,uBAANA,OAAA,CAAQE,SAAS,CAACC,SAAS,CAAC5B,QAAQ,CAAC,KAAK,CAAC;AAAA;;;;"}
package/dist/index.css CHANGED
@@ -640,7 +640,8 @@
640
640
 
641
641
  /* cells */
642
642
  [role='cell'],
643
- [role='columnheader'] {
643
+ [role='columnheader'],
644
+ [data-taco='table2-footer-summary'] {
644
645
  @apply border-grey-300;
645
646
  }
646
647
 
@@ -649,6 +650,12 @@
649
650
  @apply flex px-4;
650
651
  }
651
652
 
653
+ /* In cases where row height might differ from default one (example: textarea without truncate or changing of font size or row height),
654
+ we need to prevent editing controls to take all available space */
655
+ [role='cell']:not([data-highlighted='true']) {
656
+ @apply items-start;
657
+ }
658
+
652
659
  [role='cell'][data-align='left'],
653
660
  [role='columnheader'][data-align='left'] {
654
661
  @apply justify-start text-left;
@@ -668,6 +675,12 @@
668
675
  @apply border-b;
669
676
  }
670
677
 
678
+ /* Removes a pixel space between the row and spacer div, so that the spacer div's top border appears like
679
+ bottom border of the cells */
680
+ [role='row']:last-child [role='cell'] {
681
+ @apply -mb-px;
682
+ }
683
+
671
684
  /* row/cell backgrounds */
672
685
 
673
686
  [role='columnheader'] {
@@ -761,6 +761,21 @@ function IconCircleClose(props, svgRef) {
761
761
  }
762
762
  var CircleClose = /*#__PURE__*/React.forwardRef(IconCircleClose);
763
763
 
764
+ function IconCircleInformation(props, svgRef) {
765
+ return /*#__PURE__*/React.createElement("svg", Object.assign({
766
+ fill: "none",
767
+ xmlns: "http://www.w3.org/2000/svg",
768
+ viewBox: "0 0 24 24",
769
+ ref: svgRef
770
+ }, props), /*#__PURE__*/React.createElement("path", {
771
+ fillRule: "evenodd",
772
+ clipRule: "evenodd",
773
+ d: "M12 2c5.523 0 10 4.477 10 10s-4.477 10-10 10S2 17.523 2 12 6.477 2 12 2zm0 1.5a8.5 8.5 0 100 17 8.5 8.5 0 000-17zm-.267 5.753a1 1 0 10-.001-2.001 1 1 0 00.001 2.001zM14 16.754a.75.75 0 000-1.502h-1.267V11.5a.752.752 0 00-.75-.751H10a.75.75 0 000 1.502h1.233v3H10a.75.75 0 000 1.503h4z",
774
+ fill: "currentColor"
775
+ }));
776
+ }
777
+ var CircleInformation = /*#__PURE__*/React.forwardRef(IconCircleInformation);
778
+
764
779
  function IconCircleMinus(props, svgRef) {
765
780
  return /*#__PURE__*/React.createElement("svg", Object.assign({
766
781
  xmlns: "http://www.w3.org/2000/svg",
@@ -787,6 +802,21 @@ function IconCirclePlus(props, svgRef) {
787
802
  }
788
803
  var CirclePlus = /*#__PURE__*/React.forwardRef(IconCirclePlus);
789
804
 
805
+ function IconCircleQuestionmark(props, svgRef) {
806
+ return /*#__PURE__*/React.createElement("svg", Object.assign({
807
+ fill: "none",
808
+ xmlns: "http://www.w3.org/2000/svg",
809
+ viewBox: "0 0 24 24",
810
+ ref: svgRef
811
+ }, props), /*#__PURE__*/React.createElement("path", {
812
+ fillRule: "evenodd",
813
+ clipRule: "evenodd",
814
+ d: "M12 2c5.523 0 10 4.477 10 10s-4.477 10-10 10S2 17.523 2 12 6.477 2 12 2zm0 1.5a8.5 8.5 0 100 17 8.5 8.5 0 000-17zm.58 10.15a.71.71 0 00.226-.543v-1.272a.306.306 0 01.045-.143.522.522 0 01.136-.133 3.91 3.91 0 01.285-.18l.028-.016c.112-.066.242-.143.387-.237.706-.454 1.156-1.012 1.156-1.838 0-.673-.37-1.19-.887-1.53-.513-.336-1.183-.508-1.845-.508-.552 0-1.234.096-1.79.317a2.441 2.441 0 00-.574.315c-.09.069-.174.146-.245.232a1.15 1.15 0 00-.154.238 1.474 1.474 0 00-.148.625c0 .075.01.118.02.167.036.159.12.3.254.401a.77.77 0 00.47.147.768.768 0 00.745-.517l.004-.013c.053-.17.226-.306.517-.4.282-.09.611-.116.852-.116.267 0 .575.078.809.213.241.139.345.298.345.44 0 .188-.051.32-.152.444-.11.136-.285.27-.55.444h-.002l-.136.091h-.001c-.232.153-.49.322-.695.513-.252.234-.467.537-.467.938v1.38c0 .226.087.421.248.556.155.13.357.185.56.185.21 0 .41-.064.558-.2zm-.559 3.1c.504 0 .924-.4.924-.904 0-.512-.423-.9-.924-.9a.908.908 0 00-.92.9c0 .504.42.904.92.904z",
815
+ fill: "currentColor"
816
+ }));
817
+ }
818
+ var CircleQuestionmark = /*#__PURE__*/React.forwardRef(IconCircleQuestionmark);
819
+
790
820
  function IconCircleTick(props, svgRef) {
791
821
  return /*#__PURE__*/React.createElement("svg", Object.assign({
792
822
  xmlns: "http://www.w3.org/2000/svg",
@@ -800,6 +830,21 @@ function IconCircleTick(props, svgRef) {
800
830
  }
801
831
  var CircleTick = /*#__PURE__*/React.forwardRef(IconCircleTick);
802
832
 
833
+ function IconCircleWarning(props, svgRef) {
834
+ return /*#__PURE__*/React.createElement("svg", Object.assign({
835
+ fill: "none",
836
+ xmlns: "http://www.w3.org/2000/svg",
837
+ viewBox: "0 0 24 24",
838
+ ref: svgRef
839
+ }, props), /*#__PURE__*/React.createElement("path", {
840
+ fillRule: "evenodd",
841
+ clipRule: "evenodd",
842
+ d: "M12 2c5.523 0 10 4.477 10 10s-4.477 10-10 10S2 17.523 2 12 6.477 2 12 2zm0 1.5a8.5 8.5 0 100 17 8.5 8.5 0 000-17zm0 3.75a.97.97 0 00-.974.989L11.2 12.5c.01.417.352.749.771.749a.768.768 0 00.77-.74l.23-4.26a.97.97 0 00-.97-1zm0 9.5a1 1 0 100-2 1 1 0 000 2z",
843
+ fill: "currentColor"
844
+ }));
845
+ }
846
+ var CircleWarning = /*#__PURE__*/React.forwardRef(IconCircleWarning);
847
+
803
848
  function IconClampOpen(props, svgRef) {
804
849
  return /*#__PURE__*/React.createElement("svg", Object.assign({
805
850
  xmlns: "http://www.w3.org/2000/svg",
@@ -3249,9 +3294,12 @@ const icons = {
3249
3294
  'chevron-up-solid': ChevronUpSolid,
3250
3295
  'chevron-up': ChevronUp,
3251
3296
  'circle-close': CircleClose,
3297
+ 'circle-information': CircleInformation,
3252
3298
  'circle-minus': CircleMinus,
3253
3299
  'circle-plus': CirclePlus,
3300
+ 'circle-questionmark': CircleQuestionmark,
3254
3301
  'circle-tick': CircleTick,
3302
+ 'circle-warning': CircleWarning,
3255
3303
  'clamp-open': ClampOpen,
3256
3304
  clamp: Clamp,
3257
3305
  close: Close,
@@ -3837,29 +3885,34 @@ function isEventTriggeredOnInteractiveElement(eventTarget) {
3837
3885
  const element = eventTarget;
3838
3886
  return ['A', 'BUTTON', 'INPUT', 'TEXTAREA', 'SELECT'].includes(element.tagName) && !element.hidden && !element.disabled && !element.readOnly;
3839
3887
  }
3840
- function createShortcutKeyDownHandler(key, handler) {
3888
+ function shouldTriggerShortcut(event, key) {
3889
+ const keyOptions = typeof key === 'string' ? {
3890
+ key,
3891
+ meta: false,
3892
+ shift: false
3893
+ } : key;
3894
+ if (keyOptions.meta && (isMacOs() ? !event.metaKey : !event.ctrlKey) || !keyOptions.meta && (isMacOs() ? event.metaKey : event.ctrlKey)) {
3895
+ return false;
3896
+ }
3897
+ if (keyOptions.shift && !event.shiftKey || keyOptions.shift === false && event.shiftKey) {
3898
+ return false;
3899
+ }
3900
+ return event.key.toLowerCase() === keyOptions.key.toLowerCase();
3901
+ }
3902
+ function createShortcutKeyDownHandler(key, handler, stopPropagation = true) {
3841
3903
  return function (event) {
3842
- const keyOptions = typeof key === 'string' ? {
3843
- key,
3844
- meta: false,
3845
- shift: false
3846
- } : key;
3847
3904
  if (event.target !== event.currentTarget && isEventTriggeredOnInteractiveElement(event.target)) {
3848
3905
  return;
3849
3906
  }
3850
- if (keyOptions.meta && (isMacOs() ? !event.metaKey : !event.ctrlKey) || !keyOptions.meta && (isMacOs() ? event.metaKey : event.ctrlKey)) {
3851
- return;
3852
- }
3853
- if (keyOptions.shift && !event.shiftKey || keyOptions.shift === false && event.shiftKey) {
3854
- return;
3855
- }
3856
- const condition = event.key.toLowerCase() === keyOptions.key.toLowerCase();
3907
+ const condition = shouldTriggerShortcut(event, key);
3857
3908
  if (condition) {
3858
- var _event$stopImmediateP;
3859
- // stops react handlers bubbling up to global
3860
- event.stopPropagation();
3861
- // stops global handlers bubbling up to other global
3862
- (_event$stopImmediateP = event.stopImmediatePropagation) === null || _event$stopImmediateP === void 0 ? void 0 : _event$stopImmediateP.call(event);
3909
+ if (stopPropagation) {
3910
+ var _event$stopImmediateP;
3911
+ // stops react handlers bubbling up to global
3912
+ event.stopPropagation();
3913
+ // stops global handlers bubbling up to other global
3914
+ (_event$stopImmediateP = event.stopImmediatePropagation) === null || _event$stopImmediateP === void 0 ? void 0 : _event$stopImmediateP.call(event);
3915
+ }
3863
3916
  handler(event);
3864
3917
  }
3865
3918
  };
@@ -3873,7 +3926,7 @@ const useGlobalKeyDown = (shortcut, handler) => {
3873
3926
  React__default.useEffect(() => {
3874
3927
  let handleKeyDown;
3875
3928
  if (shortcut) {
3876
- handleKeyDown = createShortcutKeyDownHandler(shortcut, handler);
3929
+ handleKeyDown = createShortcutKeyDownHandler(shortcut, handler, false);
3877
3930
  document.addEventListener('keydown', handleKeyDown);
3878
3931
  }
3879
3932
  return () => {
@@ -3881,7 +3934,7 @@ const useGlobalKeyDown = (shortcut, handler) => {
3881
3934
  document.removeEventListener('keydown', handleKeyDown);
3882
3935
  }
3883
3936
  };
3884
- }, [shortcut]);
3937
+ }, [shortcut, handler]);
3885
3938
  };
3886
3939
 
3887
3940
  const Button = /*#__PURE__*/React.forwardRef(function Button(props, ref) {
@@ -3895,6 +3948,11 @@ const Button = /*#__PURE__*/React.forwardRef(function Button(props, ref) {
3895
3948
  const internalRef = useMergedRef(ref);
3896
3949
  useGlobalKeyDown(shortcut, () => {
3897
3950
  var _internalRef$current;
3951
+ const dialog = document.querySelector('[role="dialog"]');
3952
+ // Don't trigger the click on the button if it is outside of the dialog
3953
+ if (dialog && !(dialog !== null && dialog !== void 0 && dialog.contains(internalRef.current))) {
3954
+ return;
3955
+ }
3898
3956
  (_internalRef$current = internalRef.current) === null || _internalRef$current === void 0 ? void 0 : _internalRef$current.click();
3899
3957
  });
3900
3958
  const Tag = props.href ? 'a' : 'button';
@@ -4367,7 +4425,7 @@ const defaultLocalisationTexts = {
4367
4425
  }
4368
4426
  },
4369
4427
  search: {
4370
- excludeUnmatchedResults: 'Hide unmatched records',
4428
+ excludeUnmatchedResults: 'Show only search results',
4371
4429
  placeholder: 'Search...'
4372
4430
  },
4373
4431
  shortcuts: {
@@ -6151,8 +6209,6 @@ const Content$4 = /*#__PURE__*/React.forwardRef(function DialogContent(props, re
6151
6209
  } else if (dialog.onClose) {
6152
6210
  dialog.onClose();
6153
6211
  }
6154
- // Stops event from propogating outside the dialog.
6155
- event.stopPropagation();
6156
6212
  };
6157
6213
  // the chosen behaviour in taco is that outside clicks do not close the dialog
6158
6214
  const handleInteractOutside = event => event.preventDefault();
@@ -6166,19 +6222,12 @@ const Content$4 = /*#__PURE__*/React.forwardRef(function DialogContent(props, re
6166
6222
  } else {
6167
6223
  output = props.children;
6168
6224
  }
6169
- const onKeyDown = event => {
6170
- if (event.key !== 'Escape') {
6171
- // Stops event from propogating outside the dialog.
6172
- event.stopPropagation();
6173
- }
6174
- };
6175
6225
  return /*#__PURE__*/React.createElement(DialogPrimitive.Portal, null, /*#__PURE__*/React.createElement(DialogPrimitive.Overlay, {
6176
6226
  asChild: true
6177
6227
  }, /*#__PURE__*/React.createElement(Backdrop, null, /*#__PURE__*/React.createElement(DialogPrimitive.Content, Object.assign({}, props, {
6178
6228
  className: className,
6179
6229
  onEscapeKeyDown: handleEscapeKeyDown,
6180
6230
  onInteractOutside: handleInteractOutside,
6181
- onKeyDown: onKeyDown,
6182
6231
  ref: internalRef,
6183
6232
  style: {
6184
6233
  ...props.style,
@@ -9925,6 +9974,7 @@ const Single = /*#__PURE__*/React__default.forwardRef(function Select2TriggerSin
9925
9974
  children,
9926
9975
  emptyValue,
9927
9976
  value,
9977
+ placeholder,
9928
9978
  ...buttonProps
9929
9979
  } = props;
9930
9980
  const {
@@ -9935,7 +9985,14 @@ const Single = /*#__PURE__*/React__default.forwardRef(function Select2TriggerSin
9935
9985
  const contentClassName = cn('truncate items-center gap-1');
9936
9986
  const currentValue = children.find(matchesValue(value));
9937
9987
  let output;
9938
- if (currentValue) {
9988
+ if (placeholder && currentValue === undefined) {
9989
+ output = /*#__PURE__*/React__default.createElement("div", {
9990
+ className: cn({
9991
+ 'text-grey-700': disabled,
9992
+ 'text-grey-500': !disabled
9993
+ })
9994
+ }, placeholder);
9995
+ } else if (currentValue) {
9939
9996
  if (tags && emptyValue !== undefined && emptyValue !== value) {
9940
9997
  output = /*#__PURE__*/React__default.createElement(Tag$1, {
9941
9998
  className: "truncate",
@@ -9962,6 +10019,7 @@ const Multiple = /*#__PURE__*/React__default.forwardRef(function Select2TriggerM
9962
10019
  children,
9963
10020
  emptyValue: _,
9964
10021
  values = [],
10022
+ placeholder,
9965
10023
  ...buttonProps
9966
10024
  } = props;
9967
10025
  const {
@@ -9983,7 +10041,12 @@ const Multiple = /*#__PURE__*/React__default.forwardRef(function Select2TriggerM
9983
10041
  className: "my-1 flex max-h-[5.5rem] flex-col"
9984
10042
  }, /*#__PURE__*/React__default.createElement("div", {
9985
10043
  className: "flex flex-wrap gap-1"
9986
- }, valuesAsChildren.map(child => /*#__PURE__*/React__default.createElement(Tag$1, {
10044
+ }, valuesAsChildren.length === 0 ? /*#__PURE__*/React__default.createElement("div", {
10045
+ className: cn({
10046
+ 'text-grey-700': disabled,
10047
+ 'text-grey-500': !disabled
10048
+ })
10049
+ }, placeholder) : valuesAsChildren.map(child => /*#__PURE__*/React__default.createElement(Tag$1, {
9987
10050
  key: String(child.props.value),
9988
10051
  className: "truncate",
9989
10052
  color: tags ? child.props.color : undefined,
@@ -10001,7 +10064,8 @@ const Multiple = /*#__PURE__*/React__default.forwardRef(function Select2TriggerM
10001
10064
  } else {
10002
10065
  content = /*#__PURE__*/React__default.createElement(MultipleValue, {
10003
10066
  key: String(open),
10004
- valuesAsChildren: valuesAsChildren
10067
+ valuesAsChildren: valuesAsChildren,
10068
+ placeholder: placeholder
10005
10069
  });
10006
10070
  }
10007
10071
  return /*#__PURE__*/React__default.createElement("div", {
@@ -10017,7 +10081,8 @@ const Multiple = /*#__PURE__*/React__default.forwardRef(function Select2TriggerM
10017
10081
  }), content));
10018
10082
  });
10019
10083
  const MultipleValue = ({
10020
- valuesAsChildren
10084
+ valuesAsChildren,
10085
+ placeholder
10021
10086
  }) => {
10022
10087
  const {
10023
10088
  disabled,
@@ -10040,9 +10105,14 @@ const MultipleValue = ({
10040
10105
  }, /*#__PURE__*/React__default.createElement("div", {
10041
10106
  className: "flex gap-1 truncate",
10042
10107
  ref: el => setContentRef(el)
10043
- }, valuesAsChildren.map((child, index) => {
10108
+ }, valuesAsChildren.length === 0 ? /*#__PURE__*/React__default.createElement("div", {
10109
+ className: cn({
10110
+ 'text-grey-700': disabled,
10111
+ 'text-grey-500': !disabled
10112
+ })
10113
+ }, placeholder) : valuesAsChildren.map((child, index) => {
10044
10114
  const tag = /*#__PURE__*/React__default.createElement(Tag$1, {
10045
- key: child.props.value,
10115
+ key: String(child.props.value),
10046
10116
  className: cn('cursor-pointer', {
10047
10117
  truncate: index === boundaryIndex,
10048
10118
  hidden: boundaryIndex !== undefined && boundaryIndex !== null ? index > boundaryIndex : false
@@ -10055,7 +10125,7 @@ const MultipleValue = ({
10055
10125
  }, child.props.children);
10056
10126
  if (index === boundaryIndex) {
10057
10127
  return /*#__PURE__*/React__default.createElement(Tooltip, {
10058
- key: child.props.value,
10128
+ key: String(child.props.value),
10059
10129
  title: String(child.props.children)
10060
10130
  }, tag);
10061
10131
  }
@@ -10382,6 +10452,7 @@ const Select2 = /*#__PURE__*/React__default.forwardRef(function Select2(props, r
10382
10452
  defaultValue: defaultProp,
10383
10453
  disabled = false,
10384
10454
  emptyValue = undefined,
10455
+ placeholder,
10385
10456
  highlighted = false,
10386
10457
  invalid = false,
10387
10458
  multiple = false,
@@ -10527,7 +10598,8 @@ const Select2 = /*#__PURE__*/React__default.forwardRef(function Select2(props, r
10527
10598
  emptyValue: emptyValue,
10528
10599
  onBlur: handleBlur,
10529
10600
  onKeyDown: handleKeyDown,
10530
- ref: internalRef
10601
+ ref: internalRef,
10602
+ placeholder: placeholder
10531
10603
  }), flattenedChildren)), /*#__PURE__*/React__default.createElement(PopoverPrimitive.Portal, null, /*#__PURE__*/React__default.createElement(PopoverPrimitive.Content, {
10532
10604
  asChild: true,
10533
10605
  align: "start",
@@ -11209,9 +11281,9 @@ const useTableKeyboardNavigation = (props, rows, rowProps, ref) => {
11209
11281
  }
11210
11282
  });
11211
11283
  const onKeyDown = event => {
11212
- var _document$activeEleme;
11284
+ var _document$activeEleme, _document$activeEleme2;
11213
11285
  const isModifierKeyPressed = event.metaKey || event.ctrlKey || event.altKey || event.shiftKey;
11214
- if (useGlobalKeyboardNavigation && document.activeElement !== ref.current && ((_document$activeEleme = document.activeElement) === null || _document$activeEleme === void 0 ? void 0 : _document$activeEleme.getAttribute('type')) !== 'search' && document.activeElement !== document.body) {
11286
+ if (useGlobalKeyboardNavigation && document.activeElement !== ref.current && ((_document$activeEleme = document.activeElement) === null || _document$activeEleme === void 0 ? void 0 : _document$activeEleme.getAttribute('type')) !== 'search' && document.activeElement !== document.body && ((_document$activeEleme2 = document.activeElement) === null || _document$activeEleme2 === void 0 ? void 0 : _document$activeEleme2.getAttribute('role')) !== 'dialog') {
11215
11287
  return;
11216
11288
  }
11217
11289
  // abort key handling if other elements inside table are focused and we don't use global keyboard navigation
@@ -16139,7 +16211,10 @@ const MemoedHeader = /*#__PURE__*/React__default.memo(function MemoedHeader(prop
16139
16211
  }) : null, hasMenu ? /*#__PURE__*/React__default.createElement(Menu$3, {
16140
16212
  canFreeze: canFreeze,
16141
16213
  canHide: canHide,
16142
- className: "ml-auto hidden group-hover/column:flex aria-expanded:!flex",
16214
+ className: cn('hidden group-hover/column:flex aria-expanded:!flex', {
16215
+ 'ml-auto': align !== 'right',
16216
+ 'ml-2': align === 'right'
16217
+ }),
16143
16218
  index: index,
16144
16219
  menu: meta.menu,
16145
16220
  onGoto: handleGoto,
@@ -17178,14 +17253,20 @@ function useEditing(isEnabled, onSave) {
17178
17253
  if (event.defaultPrevented) {
17179
17254
  return;
17180
17255
  }
17181
- if (event.ctrlKey || event.metaKey) {
17182
- if (event.key === 'e') {
17183
- setIsEditing(editing => !editing);
17184
- } else if (event.key === 's') {
17185
- // Prevent default browser save
17186
- event.preventDefault();
17187
- saveChangesIfNeeded();
17188
- }
17256
+ if (shouldTriggerShortcut(event, {
17257
+ key: 'e',
17258
+ meta: true,
17259
+ shift: false
17260
+ })) {
17261
+ setIsEditing(editing => !editing);
17262
+ } else if (shouldTriggerShortcut(event, {
17263
+ key: 's',
17264
+ meta: true,
17265
+ shift: false
17266
+ })) {
17267
+ // Prevent default browser save
17268
+ event.preventDefault();
17269
+ saveChangesIfNeeded();
17189
17270
  }
17190
17271
  }, [isEditing]);
17191
17272
  const handleBlur = React__default.useCallback(event => {
@@ -17739,16 +17820,26 @@ const EditingControl = /*#__PURE__*/React__default.forwardRef(function Control(p
17739
17820
  const columnMeta = column.columnDef.meta;
17740
17821
  const controlRenderer = columnMeta === null || columnMeta === void 0 ? void 0 : columnMeta.control;
17741
17822
  const isCellInDetailMode = tableMeta.editing.detailModeEditing && (ref === null || ref === void 0 ? void 0 : (_ref$current = ref.current) === null || _ref$current === void 0 ? void 0 : _ref$current.contains(document.activeElement));
17742
- // Revert to initial value if escape was pressed
17743
17823
  const handleKeyDown = event => {
17824
+ // For some reason keydown event handler is not propogated to the table when input or other control element is
17825
+ // in focus so we need to check for shortcut that toggles the editing.
17826
+ if (shouldTriggerShortcut(event, {
17827
+ key: 'e',
17828
+ meta: true,
17829
+ shift: false
17830
+ })) {
17831
+ tableMeta.editing.toggleEditing(false);
17832
+ return;
17833
+ }
17744
17834
  const target = event.target;
17745
17835
  if (target.readOnly) {
17746
17836
  return;
17747
17837
  }
17748
- // prevent row arrow shortcuts triggering when in detail mode
17838
+ // Prevent row arrow shortcuts triggering when in detail mode
17749
17839
  if (tableMeta.editing.detailModeEditing && (event.key === 'ArrowUp' || event.key === 'ArrowDown')) {
17750
17840
  event.stopPropagation();
17751
17841
  }
17842
+ // Revert to initial value if escape was pressed
17752
17843
  if (event.key === 'Escape') {
17753
17844
  event.preventDefault();
17754
17845
  if (tableMeta.editing.detailModeEditing) {
@@ -17794,7 +17885,6 @@ const EditingControl = /*#__PURE__*/React__default.forwardRef(function Control(p
17794
17885
  // Switching to editing mode, when key pressed any alphabetical character or number
17795
17886
  if (/^[a-z0-9]$/i.test(event.key)) {
17796
17887
  tableMeta.editing.setDetailModeEditing(true);
17797
- return;
17798
17888
  }
17799
17889
  };
17800
17890
  const handleDatepickerChange = event => {
@@ -19748,6 +19838,7 @@ function Filters(props) {
19748
19838
  table
19749
19839
  } = props;
19750
19840
  const {
19841
+ locale,
19751
19842
  texts
19752
19843
  } = useLocalization();
19753
19844
  const ref = React__default.useRef(null);
@@ -19828,7 +19919,7 @@ function Filters(props) {
19828
19919
  className: "mb-0 inline-flex"
19829
19920
  }, texts.table3.filters.button), /*#__PURE__*/React__default.createElement("p", {
19830
19921
  className: "text-grey-700 mb-0 mr-auto mt-px inline-flex"
19831
- }, texts.table3.filters.total.replace('[CURRENT]', String(table.getFilteredRowModel().rows.length)).replace('[TOTAL]', String(total))))), /*#__PURE__*/React__default.createElement("div", {
19922
+ }, texts.table3.filters.total.replace('[CURRENT]', new Intl.NumberFormat(locale).format(table.getFilteredRowModel().rows.length)).replace('[TOTAL]', new Intl.NumberFormat(locale).format(total))))), /*#__PURE__*/React__default.createElement("div", {
19832
19923
  className: "flex flex-col gap-2"
19833
19924
  }, filters.map((filter, index) => /*#__PURE__*/React__default.createElement(Filter$1, {
19834
19925
  key: `filter_${index}`,
@@ -19969,14 +20060,6 @@ function EditButton(props) {
19969
20060
  '!wcag-blue-100': tableMeta.editing.isEditing
19970
20061
  });
19971
20062
  const handleClick = () => tableMeta.editing.toggleEditing(!tableMeta.editing.isEditing);
19972
- useGlobalKeyDown({
19973
- key: 'e',
19974
- meta: true,
19975
- shift: false
19976
- }, event => {
19977
- event.preventDefault();
19978
- tableMeta.editing.toggleEditing(!tableMeta.editing.isEditing);
19979
- });
19980
20063
  return /*#__PURE__*/React__default.createElement(Button$1, {
19981
20064
  "aria-pressed": tableMeta.editing.isEditing,
19982
20065
  className: className,
@@ -20510,10 +20593,13 @@ function useTableRefInstanceSetup(table, ref) {
20510
20593
  }
20511
20594
 
20512
20595
  function Summary$1(props) {
20596
+ var _table$getState$colum;
20513
20597
  const {
20598
+ currentLength,
20514
20599
  length,
20515
20600
  table
20516
20601
  } = props;
20602
+ const tableMeta = table.options.meta;
20517
20603
  const {
20518
20604
  locale,
20519
20605
  texts
@@ -20524,13 +20610,20 @@ function Summary$1(props) {
20524
20610
  const rowsSelectedLength = table.getIsAllRowsSelected() ? length : table.getSelectedRowModel().rows.length;
20525
20611
  if (rowsSelectedLength > 0) {
20526
20612
  label = texts.table3.footer.summary.selected;
20527
- count = /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement("strong", null, new Intl.NumberFormat(locale).format(rowsSelectedLength)), "\u00A0", texts.table3.footer.summary.count, "\u00A0", /*#__PURE__*/React__default.createElement("strong", null, length));
20613
+ count = /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement("strong", null, new Intl.NumberFormat(locale).format(rowsSelectedLength)), "\u00A0", texts.table3.footer.summary.count, "\u00A0", /*#__PURE__*/React__default.createElement("strong", null, new Intl.NumberFormat(locale).format(length)));
20614
+ } else if ((_table$getState$colum = table.getState().columnFilters) !== null && _table$getState$colum !== void 0 && _table$getState$colum.length ||
20615
+ // filtered data
20616
+ !!table.getState().globalFilter && tableMeta.search.excludeUnmatchedResults // search with hide enabled
20617
+ ) {
20618
+ label = texts.table3.footer.summary.records;
20619
+ count = /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement("strong", null, currentLength), "\u00A0", texts.table3.footer.summary.count, "\u00A0", /*#__PURE__*/React__default.createElement("strong", null, new Intl.NumberFormat(locale).format(length)));
20528
20620
  } else {
20529
20621
  label = texts.table3.footer.summary.records;
20530
20622
  count = /*#__PURE__*/React__default.createElement("strong", null, new Intl.NumberFormat(locale).format(length));
20531
20623
  }
20532
20624
  return /*#__PURE__*/React__default.createElement("div", {
20533
- className: "sticky bottom-0 left-0 z-40 -mt-10 flex h-10 w-fit items-center whitespace-nowrap bg-white px-4 !pr-3 shadow-[6px_0px_6px_theme(colors.white)]"
20625
+ className: "sticky bottom-0 left-0 z-40 -mt-10 flex h-10 w-fit items-center whitespace-nowrap bg-white px-4 !pr-3 shadow-[6px_0px_6px_theme(colors.white)]",
20626
+ "data-taco": "table2-footer-summary"
20534
20627
  }, label, "\u00A0", count);
20535
20628
  }
20536
20629
 
@@ -20750,6 +20843,14 @@ const Table$1 = /*#__PURE__*/fixedForwardRef(function Table3(props, ref) {
20750
20843
  const bodyRef = React__default.useRef(null);
20751
20844
  React__default.useEffect(() => {
20752
20845
  const handleKeyDown = event => {
20846
+ const target = event.target;
20847
+ const dialog = target.closest('[role="dialog"]');
20848
+ const eventOriginatedFromCombobox = !!target.closest('[role="combobox"]');
20849
+ // Don't trigger global shortcuts on the table if event originated from a combobox or if table is
20850
+ // outside the dialog
20851
+ if (eventOriginatedFromCombobox || dialog && !(dialog !== null && dialog !== void 0 && dialog.contains(internalRef.current))) {
20852
+ return;
20853
+ }
20753
20854
  tableMeta.hoverState.handleKeyDown(event);
20754
20855
  tableMeta.currentRow.handleKeyDown(event, table.getRowModel().rows.length, scrollToIndex);
20755
20856
  tableMeta.rowClick.handleKeyDown(event, table);
@@ -20764,7 +20865,7 @@ const Table$1 = /*#__PURE__*/fixedForwardRef(function Table3(props, ref) {
20764
20865
  // See https://github.com/e-conomic/taco/blob/dev/packages/taco/src/components/Table3/strategies/virtualised.tsx#L143
20765
20866
  // scrollToIndex function changes when row count changes, so it is important to update handlers with new
20766
20867
  // scrollToIndex function.
20767
- [scrollToIndex]);
20868
+ [scrollToIndex, internalRef.current]);
20768
20869
  const handleBlur = event => {
20769
20870
  tableMeta.editing.handleBlur(event);
20770
20871
  };
@@ -20838,7 +20939,7 @@ const Table$1 = /*#__PURE__*/fixedForwardRef(function Table3(props, ref) {
20838
20939
  role: "rowgroup",
20839
20940
  ref: bodyRef
20840
20941
  }, renderBody())), /*#__PURE__*/React__default.createElement("div", {
20841
- className: "border-grey-300 col-span-full -mt-px border-t"
20942
+ className: "border-grey-300 col-span-full translate-y-px border-t"
20842
20943
  }), tableMeta.enableFooter ? /*#__PURE__*/React__default.createElement("div", {
20843
20944
  className: "group/footer contents",
20844
20945
  "data-taco": "table2-footer",
@@ -20850,6 +20951,7 @@ const Table$1 = /*#__PURE__*/fixedForwardRef(function Table3(props, ref) {
20850
20951
  }, footerGroup.headers.map(footer => /*#__PURE__*/React__default.createElement(React__default.Fragment, {
20851
20952
  key: footer.id
20852
20953
  }, reactTable$1.flexRender(footer.column.columnDef.footer, footer.getContext()))))), length ? /*#__PURE__*/React__default.createElement(Summary$1, {
20954
+ currentLength: table.getRowModel().rows.length,
20853
20955
  length: length,
20854
20956
  table: table
20855
20957
  }) : null) : null) : /*#__PURE__*/React__default.createElement("div", {
@@ -21907,6 +22009,7 @@ exports.parseFromCustomString = parseFromCustomString;
21907
22009
  exports.parseFromISOString = parseFromISOString;
21908
22010
  exports.removeChildTableRow = removeChildTableRow;
21909
22011
  exports.setByRowIndexPath = setByRowIndexPath;
22012
+ exports.shouldTriggerShortcut = shouldTriggerShortcut;
21910
22013
  exports.useBoundaryOverflowDetection = useBoundaryOverflowDetection;
21911
22014
  exports.useBoundingClientRectListener = useBoundingClientRectListener;
21912
22015
  exports.useDropTarget = useDropTarget;