@economic/taco 2.45.0-alpha.5 → 2.45.0-alpha.8
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/components/Alert/Alert.d.ts +1 -1
- package/dist/components/Banner/util.d.ts +0 -1
- package/dist/components/Calendar/Calendar.d.ts +1 -0
- package/dist/components/Icon/components/Autopay.d.ts +3 -0
- package/dist/components/Icon/components/AutopayPaused.d.ts +3 -0
- package/dist/components/Icon/components/Experiment.d.ts +3 -0
- package/dist/components/Icon/components/Person.d.ts +3 -0
- package/dist/components/Icon/components/PersonSolid.d.ts +3 -0
- package/dist/components/Icon/components/Wallet.d.ts +3 -0
- package/dist/components/Icon/components/index.d.ts +1 -1
- package/dist/components/Input/Input.d.ts +1 -1
- package/dist/components/Menu/components/Item.d.ts +1 -1
- package/dist/components/Menu/components/Link.d.ts +1 -1
- package/dist/components/Navigation2/components/Link.d.ts +1 -1
- package/dist/components/Pagination/PageNumbers.d.ts +0 -1
- package/dist/components/Report/Report.d.ts +1 -1
- package/dist/components/Select2/components/Option.d.ts +4 -4
- package/dist/components/Select2/components/Search.d.ts +1 -1
- package/dist/components/Table3/components/Columns/Cell/EditingDisplayCell.d.ts +0 -1
- package/dist/components/Table3/components/Row/Editing/CreateNewRow.d.ts +1 -2
- package/dist/components/Table3/components/Row/Editing/TemporaryRow.d.ts +1 -0
- package/dist/components/Table3/features/useEditingState.d.ts +1 -1
- package/dist/components/Table3/features/useTableEditing.d.ts +2 -2
- package/dist/components/Table3/util/editing.d.ts +3 -0
- package/dist/components/Tag/Tag.d.ts +1 -1
- package/dist/esm/index.css +23 -6
- package/dist/esm/packages/taco/src/charts/utils/color.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Alert/Alert.js +2 -0
- package/dist/esm/packages/taco/src/components/Alert/Alert.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Badge/Badge.js +9 -6
- package/dist/esm/packages/taco/src/components/Badge/Badge.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Banner/util.js +5 -0
- package/dist/esm/packages/taco/src/components/Banner/util.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Button/Button.js +2 -1
- package/dist/esm/packages/taco/src/components/Button/Button.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Calendar/Calendar.js +11 -10
- package/dist/esm/packages/taco/src/components/Calendar/Calendar.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Combobox/useCombobox.js +8 -5
- package/dist/esm/packages/taco/src/components/Combobox/useCombobox.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Datepicker/useDatepicker.js +13 -6
- package/dist/esm/packages/taco/src/components/Datepicker/useDatepicker.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Icon/components/Autopay.js +19 -0
- package/dist/esm/packages/taco/src/components/Icon/components/Autopay.js.map +1 -0
- package/dist/esm/packages/taco/src/components/Icon/components/AutopayPaused.js +19 -0
- package/dist/esm/packages/taco/src/components/Icon/components/AutopayPaused.js.map +1 -0
- package/dist/esm/packages/taco/src/components/Icon/components/Experiment.js +20 -0
- package/dist/esm/packages/taco/src/components/Icon/components/Experiment.js.map +1 -0
- package/dist/esm/packages/taco/src/components/Icon/components/Person.js +19 -0
- package/dist/esm/packages/taco/src/components/Icon/components/Person.js.map +1 -0
- package/dist/esm/packages/taco/src/components/Icon/components/PersonSolid.js +19 -0
- package/dist/esm/packages/taco/src/components/Icon/components/PersonSolid.js.map +1 -0
- package/dist/esm/packages/taco/src/components/Icon/components/Wallet.js +19 -0
- package/dist/esm/packages/taco/src/components/Icon/components/Wallet.js.map +1 -0
- package/dist/esm/packages/taco/src/components/Icon/components/index.js +12 -0
- package/dist/esm/packages/taco/src/components/Icon/components/index.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Menu/components/Content.js +1 -1
- package/dist/esm/packages/taco/src/components/Menu/components/Content.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Select2/components/Option.js +7 -5
- package/dist/esm/packages/taco/src/components/Select2/components/Option.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Select2/components/Trigger.js +56 -19
- package/dist/esm/packages/taco/src/components/Select2/components/Trigger.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Shortcut/Shortcut.js +1 -1
- package/dist/esm/packages/taco/src/components/Shortcut/Shortcut.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Table3/Table3.js +15 -7
- package/dist/esm/packages/taco/src/components/Table3/Table3.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/EditingControlCell.js +10 -4
- package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/EditingControlCell.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Table3/components/Editing/Alert.js +3 -1
- package/dist/esm/packages/taco/src/components/Table3/components/Editing/Alert.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Table3/components/Row/Editing/CreateNewRow.js +2 -4
- package/dist/esm/packages/taco/src/components/Table3/components/Row/Editing/CreateNewRow.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Table3/components/Row/Editing/TemporaryRow.js +3 -3
- package/dist/esm/packages/taco/src/components/Table3/components/Row/Editing/TemporaryRow.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Table3/features/useEditingState.js +16 -8
- package/dist/esm/packages/taco/src/components/Table3/features/useEditingState.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Table3/features/useTableEditing.js +41 -25
- package/dist/esm/packages/taco/src/components/Table3/features/useTableEditing.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Table3/listeners/useTableEditingListener.js +5 -8
- package/dist/esm/packages/taco/src/components/Table3/listeners/useTableEditingListener.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Table3/useTable3.js +3 -4
- package/dist/esm/packages/taco/src/components/Table3/useTable3.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Table3/util/editing.js +9 -1
- package/dist/esm/packages/taco/src/components/Table3/util/editing.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Tag/Tag.js +6 -4
- package/dist/esm/packages/taco/src/components/Tag/Tag.js.map +1 -1
- package/dist/esm/packages/taco/src/hooks/useGlobalKeyDown.js +2 -2
- package/dist/esm/packages/taco/src/hooks/useGlobalKeyDown.js.map +1 -1
- package/dist/esm/packages/taco/src/hooks/useLazyEffect.js +1 -1
- package/dist/esm/packages/taco/src/hooks/useLazyEffect.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/BubbleSelect.js +1 -1
- package/dist/esm/packages/taco/src/primitives/BubbleSelect.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Button.js +1 -6
- package/dist/esm/packages/taco/src/primitives/Button.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/Table.js +2 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/Table.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Body/EmptyStateBody.js +9 -2
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Body/EmptyStateBody.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Internal/Expansion.js +4 -0
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Internal/Expansion.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Footer/Footer.js +7 -2
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Footer/Footer.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/FilterContext.js +6 -0
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/FilterContext.js.map +1 -0
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/ManageFiltersPopover.js +5 -3
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/ManageFiltersPopover.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/components/Filter.js +0 -2
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/components/Filter.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/components/FilterColumn.js +2 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/components/FilterColumn.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/components/FilterValue.js +3 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/components/FilterValue.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/types.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowExpansion.js +2 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowExpansion.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableServerLoading.js +1 -0
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableServerLoading.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableFontSizeListener.js +2 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableFontSizeListener.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/useTableManager.js +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/useTableManager.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/dataTypes.js +6 -2
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/dataTypes.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/presets.js +7 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/presets.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/search.js +7 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/search.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/setup.js +8 -3
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/setup.js.map +1 -1
- package/dist/esm/packages/taco/src/types.js.map +1 -1
- package/dist/esm/packages/taco/src/utils/dom.js +12 -1
- package/dist/esm/packages/taco/src/utils/dom.js.map +1 -1
- package/dist/esm/packages/taco/src/utils/keyboard.js +5 -2
- package/dist/esm/packages/taco/src/utils/keyboard.js.map +1 -1
- package/dist/esm/packages/taco/src/utils/tailwind.js +2 -0
- package/dist/esm/packages/taco/src/utils/tailwind.js.map +1 -1
- package/dist/hooks/useGlobalKeyDown.d.ts +1 -1
- package/dist/index.css +23 -6
- package/dist/primitives/Table/Core/Table.d.ts +1 -0
- package/dist/primitives/Table/Core/components/Body/util.d.ts +4 -4
- package/dist/primitives/Table/Core/components/Toolbar/components/Filters/FilterContext.d.ts +3 -0
- package/dist/primitives/Table/Core/components/Toolbar/components/Filters/components/Filter.d.ts +0 -1
- package/dist/primitives/Table/Core/components/Toolbar/components/Filters/components/FilterColumn.d.ts +0 -3
- package/dist/primitives/Table/types.d.ts +2 -1
- package/dist/primitives/Table/useTableManager/features/useTableRowExpansion.d.ts +2 -1
- package/dist/primitives/Table/useTableManager/types.d.ts +0 -1
- package/dist/primitives/Table/useTableManager/util/dataTypes.d.ts +1 -1
- package/dist/taco.cjs.development.js +412 -157
- package/dist/taco.cjs.development.js.map +1 -1
- package/dist/taco.cjs.production.min.js +1 -1
- package/dist/taco.cjs.production.min.js.map +1 -1
- package/dist/types.d.ts +1 -1
- package/dist/utils/keyboard.d.ts +1 -1
- package/package.json +4 -5
@@ -59,6 +59,8 @@ const getColorByState = state => {
|
|
59
59
|
return 'yellow';
|
60
60
|
case 'error':
|
61
61
|
return 'red';
|
62
|
+
case 'experiment':
|
63
|
+
return 'purple';
|
62
64
|
case 'success':
|
63
65
|
return 'green';
|
64
66
|
default:
|
@@ -391,6 +393,36 @@ function IconAttach(props, svgRef) {
|
|
391
393
|
}
|
392
394
|
var Attach = /*#__PURE__*/React.forwardRef(IconAttach);
|
393
395
|
|
396
|
+
function IconAutopayPaused(props, svgRef) {
|
397
|
+
return /*#__PURE__*/React.createElement("svg", Object.assign({
|
398
|
+
fill: "none",
|
399
|
+
xmlns: "http://www.w3.org/2000/svg",
|
400
|
+
viewBox: "0 0 24 24",
|
401
|
+
ref: svgRef
|
402
|
+
}, props), /*#__PURE__*/React.createElement("path", {
|
403
|
+
fillRule: "evenodd",
|
404
|
+
clipRule: "evenodd",
|
405
|
+
d: "M9.356 2.503a.743.743 0 10.449 1.417 9.323 9.323 0 011.909-.391 8.998 8.998 0 011.883.013.743.743 0 10.168-1.476 10.484 10.484 0 00-2.195-.016 10.81 10.81 0 00-2.214.453zM7.46 5.037a.743.743 0 10-.817-1.241c-.628.413-1.215.893-1.747 1.433-.52.528-.978 1.103-1.366 1.712a.743.743 0 101.253.798 8.928 8.928 0 011.17-1.467A9.28 9.28 0 017.46 5.037zm9.14-2.22a.743.743 0 00-.59 1.363 7.904 7.904 0 011.611.935c.484.363.914.776 1.287 1.229a.743.743 0 001.147-.945 9.004 9.004 0 00-1.54-1.472 9.387 9.387 0 00-1.915-1.11zM3.767 10.008a.743.743 0 10-1.432-.396A9.316 9.316 0 002 11.795a.743.743 0 101.485.048 7.83 7.83 0 01.282-1.835zm17.716-2.152a.743.743 0 10-1.389.529c.21.549.353 1.126.425 1.723a.743.743 0 101.476-.18 8.81 8.81 0 00-.512-2.072zm-9.28-.732c-.26 0-.527.127-.527.505v.406c-1.567.145-2.577 1.085-2.577 2.426 0 1.125.639 1.862 1.907 2.182l1.296.285c.836.18 1.167.435 1.167.87 0 .558-.441.923-1.26.923-.586 0-1.154-.244-1.67-.714-.332-.278-.54-.36-.796-.36-.412 0-.743.256-.743.709 0 .348.186.684.51.98.482.447 1.26.72 2.143.796v.354c0 .371.272.505.533.505.262 0 .529-.134.529-.505v-.366c1.625-.191 2.64-1.143 2.64-2.519 0-1.133-.652-1.845-1.978-2.156l-1.3-.27c-.738-.145-1.075-.424-1.075-.859 0-.488.436-.876 1.12-.876.581 0 .999.185 1.492.655.29.25.528.36.842.36.366 0 .667-.267.667-.65 0-.325-.174-.667-.499-.975-.43-.418-1.12-.685-1.892-.783v-.418c0-.372-.267-.505-.528-.505zm8.802 8.025a.743.743 0 00-.946.457 7.718 7.718 0 01-2.763 3.704 8.23 8.23 0 01-4.48 1.548 8.628 8.628 0 01-4.69-1.152c-.906-.524-1.649-1.03-2.262-1.749l.79.276a.743.743 0 10.49-1.404l-2.732-.952a.743.743 0 00-.946.458l-.997 2.86a.743.743 0 101.403.49l.45-1.294c.84 1.193 1.88 1.918 3.06 2.601a10.114 10.114 0 005.5 1.35 9.715 9.715 0 005.287-1.83 9.204 9.204 0 003.293-4.417.743.743 0 00-.457-.946z",
|
406
|
+
fill: "currentColor"
|
407
|
+
}));
|
408
|
+
}
|
409
|
+
var AutopayPaused = /*#__PURE__*/React.forwardRef(IconAutopayPaused);
|
410
|
+
|
411
|
+
function IconAutopay(props, svgRef) {
|
412
|
+
return /*#__PURE__*/React.createElement("svg", Object.assign({
|
413
|
+
fill: "none",
|
414
|
+
xmlns: "http://www.w3.org/2000/svg",
|
415
|
+
viewBox: "0 0 24 24",
|
416
|
+
ref: svgRef
|
417
|
+
}, props), /*#__PURE__*/React.createElement("path", {
|
418
|
+
fillRule: "evenodd",
|
419
|
+
clipRule: "evenodd",
|
420
|
+
d: "M1.367 6.142a.734.734 0 011.003.269l.83 1.438a9.885 9.885 0 017.774-5.769 9.993 9.993 0 015.73.975 10.135 10.135 0 014.249 4.002.734.734 0 01-1.272.734 8.667 8.667 0 00-3.633-3.422 8.525 8.525 0 00-4.888-.832 8.417 8.417 0 00-6.355 4.376l.749-.433a.734.734 0 01.734 1.271l-2.56 1.479a.734.734 0 01-1.004-.269L1.098 7.145a.734.734 0 01.27-1.003zm2.895 10.273a.734.734 0 011.003.269 7.627 7.627 0 003.384 3.09 8.195 8.195 0 004.668.668 8.64 8.64 0 004.376-2.005c.792-.684 1.427-1.318 1.895-2.138l-.731.422a.734.734 0 01-.734-1.27l2.495-1.442a.734.734 0 011.003.27l1.501 2.6a.734.734 0 01-1.271.734l-.683-1.183c-.6 1.326-1.485 2.229-2.516 3.118a10.107 10.107 0 01-5.122 2.346 9.664 9.664 0 01-5.504-.79 9.095 9.095 0 01-4.032-3.686.734.734 0 01.268-1.003zm7.382-8.75c0-.372.264-.498.522-.498s.521.132.521.499v.413c.763.097 1.446.361 1.87.774.321.304.493.642.493.963 0 .379-.298.643-.66.643-.309 0-.544-.11-.83-.356-.488-.464-.901-.648-1.475-.648-.676 0-1.107.384-1.107.866 0 .43.333.706 1.062.849l1.285.267c1.31.307 1.955 1.01 1.955 2.13 0 1.36-1.004 2.3-2.61 2.489v.361c0 .367-.264.5-.522.5s-.527-.133-.527-.5v-.35c-.872-.074-1.64-.344-2.116-.785-.322-.293-.505-.625-.505-.97 0-.447.327-.7.734-.7.252 0 .459.081.786.357.51.464 1.072.705 1.651.705.809 0 1.245-.361 1.245-.912 0-.43-.327-.682-1.153-.86l-1.281-.282c-1.253-.316-1.885-1.044-1.885-2.155 0-1.325.998-2.254 2.547-2.398v-.401z",
|
421
|
+
fill: "currentColor"
|
422
|
+
}));
|
423
|
+
}
|
424
|
+
var Autopay = /*#__PURE__*/React.forwardRef(IconAutopay);
|
425
|
+
|
394
426
|
function IconAutotextInsert(props, svgRef) {
|
395
427
|
return /*#__PURE__*/React.createElement("svg", Object.assign({
|
396
428
|
xmlns: "http://www.w3.org/2000/svg",
|
@@ -1585,6 +1617,22 @@ function IconExpenses(props, svgRef) {
|
|
1585
1617
|
}
|
1586
1618
|
var Expenses = /*#__PURE__*/React.forwardRef(IconExpenses);
|
1587
1619
|
|
1620
|
+
function IconExperiment(props, svgRef) {
|
1621
|
+
return /*#__PURE__*/React.createElement("svg", Object.assign({
|
1622
|
+
fill: "none",
|
1623
|
+
xmlns: "http://www.w3.org/2000/svg",
|
1624
|
+
viewBox: "0 0 20 20",
|
1625
|
+
ref: svgRef
|
1626
|
+
}, props), /*#__PURE__*/React.createElement("path", {
|
1627
|
+
fillRule: "evenodd",
|
1628
|
+
clipRule: "evenodd",
|
1629
|
+
d: "M8.962 9.26V5.313h2.843V9.28c0 .376.796 1.24 1.049 1.511L14.5 12.5c-.507.218-3.166-1.19-4.341-.211C7.159 14.789 6 13 6.5 12c.316-.632 2.462-1.803 2.462-2.74zm.24-4.469a.762.762 0 00-.752.772v3.696a.61.61 0 01-.177.43l-2.592 2.6c-.911.913-.281 2.502.992 2.502h7.154c1.25 0 1.89-1.538 1.027-2.466l-2.446-2.63a.61.61 0 01-.162-.415V5.563a.762.762 0 00-.752-.772H9.202z",
|
1630
|
+
fill: "currentColor",
|
1631
|
+
stroke: "currentColor"
|
1632
|
+
}));
|
1633
|
+
}
|
1634
|
+
var Experiment = /*#__PURE__*/React.forwardRef(IconExperiment);
|
1635
|
+
|
1588
1636
|
function IconExportToExcel(props, svgRef) {
|
1589
1637
|
return /*#__PURE__*/React.createElement("svg", Object.assign({
|
1590
1638
|
xmlns: "http://www.w3.org/2000/svg",
|
@@ -2626,6 +2674,21 @@ function IconPersonPlus(props, svgRef) {
|
|
2626
2674
|
}
|
2627
2675
|
var PersonPlus = /*#__PURE__*/React.forwardRef(IconPersonPlus);
|
2628
2676
|
|
2677
|
+
function IconPersonSolid(props, svgRef) {
|
2678
|
+
return /*#__PURE__*/React.createElement("svg", Object.assign({
|
2679
|
+
fill: "none",
|
2680
|
+
xmlns: "http://www.w3.org/2000/svg",
|
2681
|
+
viewBox: "0 0 24 24",
|
2682
|
+
ref: svgRef
|
2683
|
+
}, props), /*#__PURE__*/React.createElement("path", {
|
2684
|
+
fillRule: "evenodd",
|
2685
|
+
clipRule: "evenodd",
|
2686
|
+
d: "M12 11.5c4.553 0 7.21 2.43 7.969 7.29.24 1.537-.928 2.962-2.608 3.182-.144.018-.29.028-.435.028H7.074C5.376 22 4 20.74 4 19.187c0-.133.01-.266.03-.398C4.79 13.93 7.448 11.5 12 11.5zM12 2c2.112 0 3.825 1.903 3.825 4.25S14.112 10.5 12 10.5c-2.113 0-3.825-1.903-3.825-4.25S9.887 2 12 2z",
|
2687
|
+
fill: "currentColor"
|
2688
|
+
}));
|
2689
|
+
}
|
2690
|
+
var PersonSolid = /*#__PURE__*/React.forwardRef(IconPersonSolid);
|
2691
|
+
|
2629
2692
|
function IconPersonTick(props, svgRef) {
|
2630
2693
|
return /*#__PURE__*/React.createElement("svg", Object.assign({
|
2631
2694
|
xmlns: "http://www.w3.org/2000/svg",
|
@@ -2639,6 +2702,21 @@ function IconPersonTick(props, svgRef) {
|
|
2639
2702
|
}
|
2640
2703
|
var PersonTick = /*#__PURE__*/React.forwardRef(IconPersonTick);
|
2641
2704
|
|
2705
|
+
function IconPerson(props, svgRef) {
|
2706
|
+
return /*#__PURE__*/React.createElement("svg", Object.assign({
|
2707
|
+
fill: "none",
|
2708
|
+
xmlns: "http://www.w3.org/2000/svg",
|
2709
|
+
viewBox: "0 0 24 24",
|
2710
|
+
ref: svgRef
|
2711
|
+
}, props), /*#__PURE__*/React.createElement("path", {
|
2712
|
+
fillRule: "evenodd",
|
2713
|
+
clipRule: "evenodd",
|
2714
|
+
d: "M12 11.5c4.553 0 7.21 2.43 7.969 7.29.24 1.537-.928 2.962-2.608 3.182-.144.018-.29.028-.435.028H7.074C5.376 22 4 20.74 4 19.187c0-.133.01-.266.03-.398C4.79 13.93 7.448 11.5 12 11.5zm0 1.5c-3.684 0-5.696 1.84-6.346 6.002-.01.061-.015.123-.015.186 0 .68.565 1.238 1.288 1.305l.147.007h9.852c.068 0 .136-.004.203-.013.784-.103 1.329-.768 1.217-1.485C17.696 14.84 15.684 13 12 13zm0-11c2.112 0 3.825 1.903 3.825 4.25S14.112 10.5 12 10.5c-2.113 0-3.825-1.903-3.825-4.25S9.887 2 12 2zm0 1.5c-1.13 0-2.186 1.174-2.186 2.75S10.87 9 12 9s2.186-1.174 2.186-2.75S13.129 3.5 12 3.5z",
|
2715
|
+
fill: "currentColor"
|
2716
|
+
}));
|
2717
|
+
}
|
2718
|
+
var Person = /*#__PURE__*/React.forwardRef(IconPerson);
|
2719
|
+
|
2642
2720
|
function IconPhoneSolid(props, svgRef) {
|
2643
2721
|
return /*#__PURE__*/React.createElement("svg", Object.assign({
|
2644
2722
|
fill: "none",
|
@@ -3408,6 +3486,21 @@ function IconUnreconciled(props, svgRef) {
|
|
3408
3486
|
}
|
3409
3487
|
var Unreconciled = /*#__PURE__*/React.forwardRef(IconUnreconciled);
|
3410
3488
|
|
3489
|
+
function IconWallet(props, svgRef) {
|
3490
|
+
return /*#__PURE__*/React.createElement("svg", Object.assign({
|
3491
|
+
fill: "none",
|
3492
|
+
xmlns: "http://www.w3.org/2000/svg",
|
3493
|
+
viewBox: "0 0 24 24",
|
3494
|
+
ref: svgRef
|
3495
|
+
}, props), /*#__PURE__*/React.createElement("path", {
|
3496
|
+
fillRule: "evenodd",
|
3497
|
+
clipRule: "evenodd",
|
3498
|
+
d: "M4.75 4.5h14.5a.25.25 0 01.25.25V7H16a5 5 0 000 10h3.5v2.25a.25.25 0 01-.25.25H4.75a.25.25 0 01-.25-.25V4.75a.25.25 0 01.25-.25zM22 7h-1V4.75A1.75 1.75 0 0019.25 3H4.75A1.75 1.75 0 003 4.75v14.5c0 .966.784 1.75 1.75 1.75h14.5A1.75 1.75 0 0021 19.25V17h1a1 1 0 001-1V8a1 1 0 00-1-1zm-.5 1.5H16a3.5 3.5 0 100 7h5.5v-7zm-5.5 5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z",
|
3499
|
+
fill: "currentColor"
|
3500
|
+
}));
|
3501
|
+
}
|
3502
|
+
var Wallet = /*#__PURE__*/React.forwardRef(IconWallet);
|
3503
|
+
|
3411
3504
|
function IconWarning(props, svgRef) {
|
3412
3505
|
return /*#__PURE__*/React.createElement("svg", Object.assign({
|
3413
3506
|
fill: "none",
|
@@ -3505,6 +3598,8 @@ const icons = {
|
|
3505
3598
|
'attach-cancel': AttachCancel,
|
3506
3599
|
'attach-warning': AttachWarning,
|
3507
3600
|
attach: Attach,
|
3601
|
+
'autopay-paused': AutopayPaused,
|
3602
|
+
autopay: Autopay,
|
3508
3603
|
'autotext-insert': AutotextInsert,
|
3509
3604
|
autotext: Autotext,
|
3510
3605
|
'basic-tabs': BasicTabs,
|
@@ -3595,6 +3690,7 @@ const icons = {
|
|
3595
3690
|
envelope: Envelope,
|
3596
3691
|
'expand-view': ExpandView,
|
3597
3692
|
expenses: Expenses,
|
3693
|
+
experiment: Experiment,
|
3598
3694
|
'export-to-excel': ExportToExcel,
|
3599
3695
|
'export-to-pdf': ExportToPdf,
|
3600
3696
|
export: Export,
|
@@ -3671,7 +3767,9 @@ const icons = {
|
|
3671
3767
|
'person-change': PersonChange,
|
3672
3768
|
'person-minus': PersonMinus,
|
3673
3769
|
'person-plus': PersonPlus,
|
3770
|
+
'person-solid': PersonSolid,
|
3674
3771
|
'person-tick': PersonTick,
|
3772
|
+
person: Person,
|
3675
3773
|
'phone-solid': PhoneSolid,
|
3676
3774
|
phone: Phone,
|
3677
3775
|
play: Play,
|
@@ -3730,6 +3828,7 @@ const icons = {
|
|
3730
3828
|
undo: Undo,
|
3731
3829
|
undock: Undock,
|
3732
3830
|
unreconciled: Unreconciled,
|
3831
|
+
wallet: Wallet,
|
3733
3832
|
warning: Warning,
|
3734
3833
|
webshop: Webshop,
|
3735
3834
|
website: Website,
|
@@ -3799,6 +3898,8 @@ const getIconName = state => {
|
|
3799
3898
|
return 'warning';
|
3800
3899
|
case 'error':
|
3801
3900
|
return 'close';
|
3901
|
+
case 'experiment':
|
3902
|
+
return 'experiment';
|
3802
3903
|
case 'success':
|
3803
3904
|
return 'tick';
|
3804
3905
|
default:
|
@@ -4083,10 +4184,10 @@ const Badge = /*#__PURE__*/React.forwardRef(function Badge(props, ref) {
|
|
4083
4184
|
...otherProps
|
4084
4185
|
} = props;
|
4085
4186
|
const isTransparent = color === 'transparent';
|
4086
|
-
const className = cn('rounded-full border overflow-hidden whitespace-nowrap inline-flex items-center justify-center', {
|
4187
|
+
const className = cn('rounded-full border box-border overflow-hidden whitespace-nowrap inline-flex items-center justify-center', {
|
4087
4188
|
[`border ${getOutlineColorShadeClasses(color)}`]: outline,
|
4088
|
-
[`border-
|
4089
|
-
[`border-
|
4189
|
+
[`border-none font-normal ${getSubtleColorShadeClasses(color)}`]: subtle,
|
4190
|
+
[`border-none ${getColorShadeClasses(color)}`]: !outline && !subtle,
|
4090
4191
|
'h-4 min-w-0 py-0 px-1 text-xs': small,
|
4091
4192
|
'h-2 w-2 min-w-0': compact,
|
4092
4193
|
'font-bold': outline || !subtle,
|
@@ -4098,12 +4199,15 @@ const Badge = /*#__PURE__*/React.forwardRef(function Badge(props, ref) {
|
|
4098
4199
|
if (compact) {
|
4099
4200
|
return /*#__PURE__*/React.createElement(VisuallyHidden, null, children);
|
4100
4201
|
}
|
4202
|
+
const contentToRender = typeof children === 'string' ? /*#__PURE__*/React.createElement("span", {
|
4203
|
+
className: "items-center truncate"
|
4204
|
+
}, children) : children;
|
4101
4205
|
if (status) {
|
4102
4206
|
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
|
4103
|
-
className: cn('mr-1 h-2 w-2 rounded-full', getColorShadeClasses(color))
|
4104
|
-
}),
|
4207
|
+
className: cn('mr-1 h-2 w-2 shrink-0 rounded-full', getColorShadeClasses(color))
|
4208
|
+
}), contentToRender);
|
4105
4209
|
}
|
4106
|
-
return
|
4210
|
+
return contentToRender;
|
4107
4211
|
};
|
4108
4212
|
return /*#__PURE__*/React.createElement("span", Object.assign({}, otherProps, {
|
4109
4213
|
"aria-atomic": "true",
|
@@ -4131,6 +4235,11 @@ const getBannerIcon = type => {
|
|
4131
4235
|
icon: "close",
|
4132
4236
|
color: "red"
|
4133
4237
|
});
|
4238
|
+
case 'experiment':
|
4239
|
+
return /*#__PURE__*/React__default.createElement(BadgeIcon, {
|
4240
|
+
icon: "experiment",
|
4241
|
+
color: "purple"
|
4242
|
+
});
|
4134
4243
|
case 'warning':
|
4135
4244
|
return /*#__PURE__*/React__default.createElement(BadgeIcon, {
|
4136
4245
|
icon: "warning",
|
@@ -4223,6 +4332,9 @@ function isElementTriggeredFromContainer(element, container) {
|
|
4223
4332
|
return true;
|
4224
4333
|
}
|
4225
4334
|
const elementInDocument = document.querySelector(escapedSelector);
|
4335
|
+
if (elementInDocument === container) {
|
4336
|
+
return true;
|
4337
|
+
}
|
4226
4338
|
// if the element does exist, see if it is itself connected to somethng that was triggered from the container
|
4227
4339
|
if (elementInDocument) {
|
4228
4340
|
return isElementTriggeredFromContainer(elementInDocument, container);
|
@@ -4245,7 +4357,15 @@ function isElementInteractive(element) {
|
|
4245
4357
|
if (!element) {
|
4246
4358
|
return false;
|
4247
4359
|
}
|
4248
|
-
|
4360
|
+
const interactiveElements = ['A', 'BUTTON', 'INPUT', 'TEXTAREA', 'SELECT', 'LABEL', 'OPTION'];
|
4361
|
+
const isInteractive = interactiveElements.includes(element.tagName) && !element.hidden && !element.disabled && !element.readOnly;
|
4362
|
+
// sometimes buttons contain content like an icon, and we can't rely on pointer events being disabled
|
4363
|
+
// so search for a focusable parent
|
4364
|
+
if (!isInteractive) {
|
4365
|
+
const focusableParent = element.closest(FOCUSABLE_ELEMENTS.join(','));
|
4366
|
+
return focusableParent ? interactiveElements.includes(focusableParent.tagName) : false;
|
4367
|
+
}
|
4368
|
+
return isInteractive;
|
4249
4369
|
}
|
4250
4370
|
function isElementInsideTable3OrReport(element) {
|
4251
4371
|
return !!(element !== null && element !== void 0 && element.closest('[data-taco^=table]'));
|
@@ -4276,9 +4396,12 @@ function shouldTriggerShortcut(event, key) {
|
|
4276
4396
|
}
|
4277
4397
|
return event.key.toLowerCase() === keyOptions.key.toLowerCase();
|
4278
4398
|
}
|
4279
|
-
function createShortcutKeyDownHandler(key, handler, stopPropagation = true) {
|
4399
|
+
function createShortcutKeyDownHandler(key, handler, stopPropagation = true, element) {
|
4280
4400
|
return function (event) {
|
4281
|
-
|
4401
|
+
const dialog = document.querySelector('[role="dialog"]');
|
4402
|
+
const isOutsideDialog = element && dialog && !dialog.contains(element);
|
4403
|
+
if (event.target !== event.currentTarget && isElementInteractive(event.target) && !isPressingMetaKey(event) || isOutsideDialog // Avoid triggering shortcut if dialog is open and element is outside the dialog
|
4404
|
+
) {
|
4282
4405
|
return;
|
4283
4406
|
}
|
4284
4407
|
const condition = shouldTriggerShortcut(event, key);
|
@@ -4299,11 +4422,11 @@ const isMacOs = () => {
|
|
4299
4422
|
return (_window = window) === null || _window === void 0 ? void 0 : _window.navigator.userAgent.includes('Mac');
|
4300
4423
|
};
|
4301
4424
|
|
4302
|
-
const useGlobalKeyDown = (shortcut, handler) => {
|
4425
|
+
const useGlobalKeyDown = (shortcut, handler, element) => {
|
4303
4426
|
React__default.useEffect(() => {
|
4304
4427
|
let handleKeyDown;
|
4305
4428
|
if (shortcut) {
|
4306
|
-
handleKeyDown = createShortcutKeyDownHandler(shortcut, handler, false);
|
4429
|
+
handleKeyDown = createShortcutKeyDownHandler(shortcut, handler, false, element);
|
4307
4430
|
document.addEventListener('keydown', handleKeyDown);
|
4308
4431
|
}
|
4309
4432
|
return () => {
|
@@ -4326,13 +4449,8 @@ const Button = /*#__PURE__*/React.forwardRef(function Button(props, ref) {
|
|
4326
4449
|
useGlobalKeyDown(shortcut, event => {
|
4327
4450
|
var _internalRef$current;
|
4328
4451
|
event === null || event === void 0 ? void 0 : event.preventDefault();
|
4329
|
-
const dialog = document.querySelector('[role="dialog"]');
|
4330
|
-
// Don't trigger the click on the button if it is outside of the dialog
|
4331
|
-
if (dialog && !(dialog !== null && dialog !== void 0 && dialog.contains(internalRef.current))) {
|
4332
|
-
return;
|
4333
|
-
}
|
4334
4452
|
(_internalRef$current = internalRef.current) === null || _internalRef$current === void 0 ? void 0 : _internalRef$current.click();
|
4335
|
-
});
|
4453
|
+
}, internalRef.current);
|
4336
4454
|
const Tag = props.href ? 'a' : 'button';
|
4337
4455
|
return /*#__PURE__*/React.createElement(Tag, Object.assign({}, otherProps, {
|
4338
4456
|
href: disabled ? undefined : props.href,
|
@@ -4859,7 +4977,8 @@ const Base$1 = /*#__PURE__*/React.forwardRef(function ButtonBase(props, ref) {
|
|
4859
4977
|
}, props.className);
|
4860
4978
|
return createButtonWithTooltip({
|
4861
4979
|
...otherProps,
|
4862
|
-
'data-taco': 'button'
|
4980
|
+
'data-taco': 'button',
|
4981
|
+
'data-appearance': appearance
|
4863
4982
|
}, className, ref);
|
4864
4983
|
});
|
4865
4984
|
const Button$1 = /*#__PURE__*/React.forwardRef(function Button(props, ref) {
|
@@ -4982,22 +5101,23 @@ const TodayButton = ({
|
|
4982
5101
|
}, texts.calendar.actions.today);
|
4983
5102
|
};
|
4984
5103
|
const Calendar$1 = props => {
|
5104
|
+
var _ref;
|
4985
5105
|
const {
|
4986
5106
|
onChange: handleChange,
|
4987
5107
|
value,
|
4988
5108
|
disabledDays,
|
5109
|
+
visibleMonth,
|
4989
5110
|
...otherProps
|
4990
5111
|
} = props;
|
4991
|
-
const [
|
5112
|
+
const [internalVisibleMonth, setInternalVisibleMonth] = React.useState((_ref = visibleMonth !== null && visibleMonth !== void 0 ? visibleMonth : value) !== null && _ref !== void 0 ? _ref : new Date());
|
4992
5113
|
const {
|
4993
5114
|
texts
|
4994
5115
|
} = useLocalization();
|
4995
5116
|
React.useEffect(() => {
|
4996
|
-
if (visibleMonth !==
|
4997
|
-
|
5117
|
+
if (visibleMonth && visibleMonth !== internalVisibleMonth) {
|
5118
|
+
setInternalVisibleMonth(visibleMonth);
|
4998
5119
|
}
|
4999
|
-
|
5000
|
-
}, [value]);
|
5120
|
+
}, [visibleMonth]);
|
5001
5121
|
const handleDayClick = (date, modifiers, event) => {
|
5002
5122
|
if (modifiers.outside || modifiers.disabled) {
|
5003
5123
|
return;
|
@@ -5011,13 +5131,13 @@ const Calendar$1 = props => {
|
|
5011
5131
|
className: className,
|
5012
5132
|
captionLayout: "dropdown-buttons",
|
5013
5133
|
weekStartsOn: 1,
|
5014
|
-
month:
|
5134
|
+
month: internalVisibleMonth,
|
5015
5135
|
numberOfMonths: 1,
|
5016
5136
|
components: {
|
5017
|
-
Caption: props => /*#__PURE__*/React.createElement(Navbar, Object.assign({}, props, {
|
5018
|
-
onMonthChange:
|
5019
|
-
value:
|
5020
|
-
})),
|
5137
|
+
Caption: props => (/*#__PURE__*/React.createElement(Navbar, Object.assign({}, props, {
|
5138
|
+
onMonthChange: setInternalVisibleMonth,
|
5139
|
+
value: internalVisibleMonth
|
5140
|
+
}))),
|
5021
5141
|
Footer: () => (/*#__PURE__*/React.createElement("tfoot", null, /*#__PURE__*/React.createElement("tr", null, /*#__PURE__*/React.createElement("td", {
|
5022
5142
|
colSpan: 7,
|
5023
5143
|
className: "text-center"
|
@@ -5943,7 +6063,6 @@ const useCombobox = ({
|
|
5943
6063
|
}, [open]);
|
5944
6064
|
// event handlers
|
5945
6065
|
const handleInputBlur = event => {
|
5946
|
-
event.persist();
|
5947
6066
|
if (listRef.current && event.relatedTarget === listRef.current) {
|
5948
6067
|
event.preventDefault();
|
5949
6068
|
return;
|
@@ -5956,7 +6075,14 @@ const useCombobox = ({
|
|
5956
6075
|
if (parents !== null && parents.length > 0) {
|
5957
6076
|
event.detail.parents = parents;
|
5958
6077
|
}
|
5959
|
-
|
6078
|
+
const isComboboxChangeEvent = event => {
|
6079
|
+
return !event.isTrusted; // this makes sure we only take our own custom event, and not the browser default blur on tab.
|
6080
|
+
};
|
6081
|
+
// Only trigger onChange if this is our custom event (not a browser blur event)
|
6082
|
+
// or if the input was cleared.
|
6083
|
+
if (isComboboxChangeEvent(event) || event.target.value === '' && !inline) {
|
6084
|
+
onChange(event);
|
6085
|
+
}
|
5960
6086
|
}
|
5961
6087
|
if (props.onBlur) {
|
5962
6088
|
props.onBlur(event);
|
@@ -5970,12 +6096,10 @@ const useCombobox = ({
|
|
5970
6096
|
setOpen(true);
|
5971
6097
|
}
|
5972
6098
|
if (onClick) {
|
5973
|
-
event.persist();
|
5974
6099
|
onClick(event);
|
5975
6100
|
}
|
5976
6101
|
};
|
5977
6102
|
const handleInputKeyDown = event => {
|
5978
|
-
event.persist();
|
5979
6103
|
if (!event.ctrlKey && !event.metaKey) {
|
5980
6104
|
switch (event.key) {
|
5981
6105
|
case 'Backspace':
|
@@ -6044,7 +6168,6 @@ const useCombobox = ({
|
|
6044
6168
|
}
|
6045
6169
|
}
|
6046
6170
|
if (!event.isDefaultPrevented() && onKeyDown) {
|
6047
|
-
event.persist();
|
6048
6171
|
onKeyDown(event);
|
6049
6172
|
}
|
6050
6173
|
};
|
@@ -6272,14 +6395,18 @@ const useDatepicker = ({
|
|
6272
6395
|
} = useLocalization();
|
6273
6396
|
const [internalValue, setInternalValue] = React.useState((_format = format(value, formatting.date)) !== null && _format !== void 0 ? _format : '');
|
6274
6397
|
const originalValueAsDate = parse(value);
|
6275
|
-
//
|
6398
|
+
// Track the current view date (month/year) in the calendar
|
6399
|
+
const [calendarViewDate, setCalendarViewDate] = React.useState(originalValueAsDate || new Date());
|
6276
6400
|
React.useEffect(() => {
|
6277
|
-
|
6278
|
-
|
6279
|
-
|
6401
|
+
// Only update the internal value when the input is not focused
|
6402
|
+
// This prevents the input value from being reset while user is typing
|
6403
|
+
if (inputRef.current !== document.activeElement) {
|
6404
|
+
const formattedValue = format(value, formatting.date);
|
6405
|
+
if (formattedValue !== internalValue) {
|
6406
|
+
setInternalValue(formattedValue !== null && formattedValue !== void 0 ? formattedValue : '');
|
6407
|
+
}
|
6280
6408
|
}
|
6281
6409
|
}, [value]);
|
6282
|
-
// event handlers
|
6283
6410
|
const handleInputBlur = event => {
|
6284
6411
|
event.persist();
|
6285
6412
|
const valueAsDate = parseFromCustomString(event.target.value, 'dd.mm.yy', originalValueAsDate === null || originalValueAsDate === void 0 ? void 0 : originalValueAsDate.getMonth(), originalValueAsDate === null || originalValueAsDate === void 0 ? void 0 : originalValueAsDate.getFullYear());
|
@@ -6300,6 +6427,8 @@ const useDatepicker = ({
|
|
6300
6427
|
setInternalValue(event.target.value);
|
6301
6428
|
};
|
6302
6429
|
const handleChange = date => {
|
6430
|
+
// Update both the input value and calendar view date when selecting a date
|
6431
|
+
setCalendarViewDate(date);
|
6303
6432
|
setInputValueByRef(inputRef.current, format(date, formatting.date), 'focusout');
|
6304
6433
|
};
|
6305
6434
|
const handleKeyDown = event => {
|
@@ -6325,7 +6454,8 @@ const useDatepicker = ({
|
|
6325
6454
|
const calendarProps = {
|
6326
6455
|
...calendar,
|
6327
6456
|
onChange: handleChange,
|
6328
|
-
value: originalValueAsDate
|
6457
|
+
value: originalValueAsDate,
|
6458
|
+
visibleMonth: calendarViewDate
|
6329
6459
|
};
|
6330
6460
|
return {
|
6331
6461
|
input: inputProps,
|
@@ -8214,7 +8344,7 @@ const Content$8 = /*#__PURE__*/React.forwardRef(function MenuContent(props, ref)
|
|
8214
8344
|
var _childrenRefs$current, _childrenRefs$current2;
|
8215
8345
|
return (_childrenRefs$current = childrenRefs.current[index]) === null || _childrenRefs$current === void 0 ? void 0 : (_childrenRefs$current2 = _childrenRefs$current.current) === null || _childrenRefs$current2 === void 0 ? void 0 : _childrenRefs$current2.click();
|
8216
8346
|
}, 1);
|
8217
|
-
}));
|
8347
|
+
}, true, childrenRefs.current[index].current));
|
8218
8348
|
}
|
8219
8349
|
});
|
8220
8350
|
shortcuts.forEach(handler => document.addEventListener('keydown', handler));
|
@@ -8283,7 +8413,7 @@ const Shortcut = ({
|
|
8283
8413
|
className: className
|
8284
8414
|
}), texts.map(key => (/*#__PURE__*/React__default.createElement("kbd", {
|
8285
8415
|
key: key,
|
8286
|
-
className: "font-display text-grey-700 [[data-taco=tooltip]_&]:bg-grey-300/[0.25] rounded-sm bg-black/[0.09] px-1 text-center font-bold [[data-taco=tooltip]_&]:text-white"
|
8416
|
+
className: "font-display text-grey-700 [[data-taco=tooltip]_&]:bg-grey-300/[0.25] rounded-sm bg-black/[0.09] px-1 text-center font-bold [[data-appearance=danger]_&]:text-white [[data-appearance=primary]_&]:text-white [[data-taco=tooltip]_&]:text-white"
|
8287
8417
|
}, key))));
|
8288
8418
|
};
|
8289
8419
|
|
@@ -9865,9 +9995,13 @@ const dataTypes = {
|
|
9865
9995
|
if (value === undefined) {
|
9866
9996
|
return '';
|
9867
9997
|
}
|
9868
|
-
|
9998
|
+
const formatter = new Intl.NumberFormat(options === null || options === void 0 ? void 0 : (_options$localization2 = options.localization) === null || _options$localization2 === void 0 ? void 0 : _options$localization2.locale, {
|
9869
9999
|
minimumFractionDigits: 2
|
9870
|
-
})
|
10000
|
+
});
|
10001
|
+
const decimalSeperator = formatter.format(1.1).substring(1, 2);
|
10002
|
+
const localisedValue = formatter.format(Number(value));
|
10003
|
+
const localisedValueWithoutThousandsSeperator = decimalSeperator === '.' ? localisedValue.replace(',', '') : localisedValue.replace('.', '');
|
10004
|
+
return [localisedValue, localisedValueWithoutThousandsSeperator];
|
9871
10005
|
}
|
9872
10006
|
}
|
9873
10007
|
};
|
@@ -10015,7 +10149,13 @@ function isMatched(searchQuery, cellValue, dataType, localization) {
|
|
10015
10149
|
const cellDisplayValue = dataTypeProperties.getDisplayValue(cellValue, {
|
10016
10150
|
localization
|
10017
10151
|
});
|
10018
|
-
if (
|
10152
|
+
if (Array.isArray(cellDisplayValue)) {
|
10153
|
+
for (const displayValue of cellDisplayValue) {
|
10154
|
+
if (isWeakContains(displayValue, searchQuery)) {
|
10155
|
+
return true;
|
10156
|
+
}
|
10157
|
+
}
|
10158
|
+
} else if (cellDisplayValue !== undefined && isWeakContains(cellDisplayValue, searchQuery)) {
|
10019
10159
|
return true;
|
10020
10160
|
}
|
10021
10161
|
}
|
@@ -10313,10 +10453,15 @@ function processChildren(child, columns, defaultSizing, defaultSorting, defaultV
|
|
10313
10453
|
column.cell = info => renderer(info.getValue(), info.row.original);
|
10314
10454
|
} else if (dataTypeProperties.getDisplayValue) {
|
10315
10455
|
const dataTypeRenderer = value => {
|
10316
|
-
var _dataTypeProperties$g
|
10317
|
-
|
10456
|
+
var _dataTypeProperties$g;
|
10457
|
+
const displayValue = (_dataTypeProperties$g = dataTypeProperties.getDisplayValue) === null || _dataTypeProperties$g === void 0 ? void 0 : _dataTypeProperties$g.call(dataTypeProperties, value, {
|
10318
10458
|
localization
|
10319
|
-
})
|
10459
|
+
});
|
10460
|
+
if (Array.isArray(displayValue)) {
|
10461
|
+
var _displayValue$;
|
10462
|
+
return (_displayValue$ = displayValue[0]) !== null && _displayValue$ !== void 0 ? _displayValue$ : value;
|
10463
|
+
}
|
10464
|
+
return displayValue !== null && displayValue !== void 0 ? displayValue : value;
|
10320
10465
|
};
|
10321
10466
|
column.cell = info => dataTypeRenderer(info.getValue());
|
10322
10467
|
column.meta.renderer = dataTypeRenderer;
|
@@ -10526,6 +10671,7 @@ const DEFAULT_PRESET = {
|
|
10526
10671
|
enableColumnHiding: false,
|
10527
10672
|
enableColumnResizing: false,
|
10528
10673
|
enableRowExpansion: false,
|
10674
|
+
enableRowExpansionAll: true,
|
10529
10675
|
enableRowSelection: false,
|
10530
10676
|
// custom -- common between all table types
|
10531
10677
|
enableColumnOrdering: false,
|
@@ -10552,6 +10698,7 @@ const presets = {
|
|
10552
10698
|
enableColumnHiding: true,
|
10553
10699
|
enableColumnResizing: true,
|
10554
10700
|
enableRowExpansion: true,
|
10701
|
+
enableRowExpansionAll: true,
|
10555
10702
|
enableRowSelection: true,
|
10556
10703
|
// custom -- common between all table types
|
10557
10704
|
enableColumnOrdering: true,
|
@@ -10577,6 +10724,7 @@ const presets = {
|
|
10577
10724
|
enableColumnHiding: false,
|
10578
10725
|
enableColumnResizing: false,
|
10579
10726
|
enableRowExpansion: true,
|
10727
|
+
enableRowExpansionAll: true,
|
10580
10728
|
enableRowSelection: true,
|
10581
10729
|
// custom -- common between all table types
|
10582
10730
|
enableColumnOrdering: false,
|
@@ -10602,6 +10750,7 @@ const presets = {
|
|
10602
10750
|
enableColumnHiding: false,
|
10603
10751
|
enableColumnResizing: false,
|
10604
10752
|
enableRowExpansion: true,
|
10753
|
+
enableRowExpansionAll: true,
|
10605
10754
|
enableRowSelection: false,
|
10606
10755
|
// custom -- common between all table types
|
10607
10756
|
enableColumnOrdering: false,
|
@@ -10619,7 +10768,7 @@ const presets = {
|
|
10619
10768
|
}
|
10620
10769
|
};
|
10621
10770
|
function getTableFeaturePreset(props) {
|
10622
|
-
var _props$enableRowActio, _props$enableRowClick, _props$enableRowDrag, _props$enableRowDrop, _props$enableRowGoto, _props$enableRowExpan, _props$enableRowSelec, _props$enableFilterin, _props$enableSearch, _props$enableSorting, _props$enableColumnFr, _props$enableColumnHi, _props$enableColumnRe, _props$enableColumnOr, _props$enableFontSize, _props$enableFooter, _props$enablePrinting, _props$enableRowActiv, _props$rowActions, _props$enableRowHeigh, _props$enableSaveSett;
|
10771
|
+
var _props$enableRowActio, _props$enableRowClick, _props$enableRowDrag, _props$enableRowDrop, _props$enableRowGoto, _props$enableRowExpan, _props$enableRowExpan2, _props$enableRowSelec, _props$enableFilterin, _props$enableSearch, _props$enableSorting, _props$enableColumnFr, _props$enableColumnHi, _props$enableColumnRe, _props$enableColumnOr, _props$enableFontSize, _props$enableFooter, _props$enablePrinting, _props$enableRowActiv, _props$rowActions, _props$enableRowHeigh, _props$enableSaveSett;
|
10623
10772
|
const presetOptions = props.preset ? presets[props.preset] : DEFAULT_PRESET;
|
10624
10773
|
const enableRowActions = (_props$enableRowActio = props.enableRowActions) !== null && _props$enableRowActio !== void 0 ? _props$enableRowActio : presetOptions.enableRowActions;
|
10625
10774
|
const enableRowClick = (_props$enableRowClick = props.enableRowClick) !== null && _props$enableRowClick !== void 0 ? _props$enableRowClick : presetOptions.enableRowClick;
|
@@ -10627,6 +10776,7 @@ function getTableFeaturePreset(props) {
|
|
10627
10776
|
const enableRowDrop = (_props$enableRowDrop = props.enableRowDrop) !== null && _props$enableRowDrop !== void 0 ? _props$enableRowDrop : presetOptions.enableRowDrop;
|
10628
10777
|
const enableRowGoto = (_props$enableRowGoto = props.enableRowGoto) !== null && _props$enableRowGoto !== void 0 ? _props$enableRowGoto : presetOptions.enableRowGoto;
|
10629
10778
|
const enableRowExpansion = (_props$enableRowExpan = props.enableRowExpansion) !== null && _props$enableRowExpan !== void 0 ? _props$enableRowExpan : presetOptions.enableRowExpansion;
|
10779
|
+
const enableRowExpansionAll = (_props$enableRowExpan2 = props.enableRowExpansionAll) !== null && _props$enableRowExpan2 !== void 0 ? _props$enableRowExpan2 : presetOptions.enableRowExpansionAll;
|
10630
10780
|
const enableRowSelection = (_props$enableRowSelec = props.enableRowSelection) !== null && _props$enableRowSelec !== void 0 ? _props$enableRowSelec : presetOptions.enableRowSelection;
|
10631
10781
|
return {
|
10632
10782
|
// react-table built-in
|
@@ -10651,6 +10801,7 @@ function getTableFeaturePreset(props) {
|
|
10651
10801
|
enableRowDrag: enableRowDrag && !!props.onRowDrag,
|
10652
10802
|
enableRowDrop: enableRowDrop && !!props.onRowDrop,
|
10653
10803
|
enableRowGoto: enableRowGoto && !!props.onRowGoto,
|
10804
|
+
enableRowExpansionAll: enableRowExpansion && enableRowExpansionAll && !!props.rowExpansionRenderer,
|
10654
10805
|
enableRowHeight: (_props$enableRowHeigh = props.enableRowHeight) !== null && _props$enableRowHeigh !== void 0 ? _props$enableRowHeigh : presetOptions.enableRowHeight,
|
10655
10806
|
enableSaveSettings: (_props$enableSaveSett = props.enableSaveSettings) !== null && _props$enableSaveSett !== void 0 ? _props$enableSaveSett : presetOptions.enableSaveSettings
|
10656
10807
|
};
|
@@ -10895,9 +11046,10 @@ function useTableRowClick(isEnabled = false, onRowClick) {
|
|
10895
11046
|
};
|
10896
11047
|
}
|
10897
11048
|
|
10898
|
-
function useTableRowExpansion(isEnabled = false, rowExpansionRenderer) {
|
11049
|
+
function useTableRowExpansion(isEnabled = false, canExpandAll = true, rowExpansionRenderer) {
|
10899
11050
|
return {
|
10900
11051
|
isEnabled,
|
11052
|
+
canExpandAll,
|
10901
11053
|
rowExpansionRenderer: isEnabled ? rowExpansionRenderer : undefined
|
10902
11054
|
};
|
10903
11055
|
}
|
@@ -11361,6 +11513,7 @@ function useTableServerLoading(loadPage, loadAll, pageSize = DEFAULT_PAGE_SIZE)
|
|
11361
11513
|
const _temp = function () {
|
11362
11514
|
if (typeof loadPage === 'function') {
|
11363
11515
|
return Promise.resolve(loadPage(...args)).then(function () {
|
11516
|
+
setLoadedStatus(exports.TableServerLoadAllState.Incomplete);
|
11364
11517
|
setReady(true);
|
11365
11518
|
});
|
11366
11519
|
}
|
@@ -11481,7 +11634,7 @@ function useLazyEffect(effect, deps) {
|
|
11481
11634
|
const readyRef = React__default.useRef(false);
|
11482
11635
|
React__default.useEffect(() => {
|
11483
11636
|
if (readyRef.current) {
|
11484
|
-
effect();
|
11637
|
+
return effect();
|
11485
11638
|
} else {
|
11486
11639
|
readyRef.current = true;
|
11487
11640
|
}
|
@@ -11523,7 +11676,8 @@ function useTableFontSizeListener(table) {
|
|
11523
11676
|
table.setColumnSizing(sizes => {
|
11524
11677
|
return Object.fromEntries(Object.entries(sizes).map(([columnName, prevColumnSize]) => {
|
11525
11678
|
var _column$columnDef$min;
|
11526
|
-
|
11679
|
+
// table.getColumn(columName) throw error in strict dev mode. Related thread: https://github.com/TanStack/table/discussions/5505
|
11680
|
+
const column = table.getAllColumns().find(x => x.id === columnName);
|
11527
11681
|
if (isInternalColumn(columnName)) {
|
11528
11682
|
var _column$getSize;
|
11529
11683
|
return [columnName, (_column$getSize = column === null || column === void 0 ? void 0 : column.getSize()) !== null && _column$getSize !== void 0 ? _column$getSize : prevColumnSize];
|
@@ -11738,7 +11892,7 @@ function useTableManager(props, meta, internalColumns) {
|
|
11738
11892
|
const rowClick = useTableRowClick(options.enableRowClick, props.onRowClick);
|
11739
11893
|
const rowDrag = useTableRowDrag(options.enableRowDrag && !(meta !== null && meta !== void 0 && (_meta$editing = meta.editing) !== null && _meta$editing !== void 0 && _meta$editing.isEditing), props.onRowDrag);
|
11740
11894
|
const rowDrop = useTableRowDrop(options.enableRowDrop, props.onRowDrop);
|
11741
|
-
const rowExpansion = useTableRowExpansion(options.enableRowExpansion, props.rowExpansionRenderer);
|
11895
|
+
const rowExpansion = useTableRowExpansion(options.enableRowExpansion, options.enableRowExpansionAll, props.rowExpansionRenderer);
|
11742
11896
|
const rowGoto = useTableRowGoto(options.enableRowGoto, props.onRowGoto);
|
11743
11897
|
const rowGroups = useTableRowGroups(props.rowActionsForGroup);
|
11744
11898
|
const rowHeight = useTableRowHeight(options.enableRowHeight, settings.rowHeight);
|
@@ -12480,6 +12634,10 @@ function Header$3(context) {
|
|
12480
12634
|
const {
|
12481
12635
|
table
|
12482
12636
|
} = context;
|
12637
|
+
const tableMeta = table.options.meta;
|
12638
|
+
if (!tableMeta.rowExpansion.canExpandAll) {
|
12639
|
+
return null;
|
12640
|
+
}
|
12483
12641
|
const isSomeRowsExpanded = table.getIsSomeRowsExpanded();
|
12484
12642
|
const handleClick = event => {
|
12485
12643
|
event.stopPropagation();
|
@@ -13786,8 +13944,13 @@ function Summary(props) {
|
|
13786
13944
|
}
|
13787
13945
|
|
13788
13946
|
function Foot(props) {
|
13789
|
-
const
|
13790
|
-
|
13947
|
+
const {
|
13948
|
+
children,
|
13949
|
+
table,
|
13950
|
+
...attributes
|
13951
|
+
} = props;
|
13952
|
+
const nonGroupedHeaders = table.getFooterGroups()[0].headers.filter(header => !header.column.getIsGrouped());
|
13953
|
+
return /*#__PURE__*/React__default.createElement("tfoot", Object.assign({}, attributes), children, /*#__PURE__*/React__default.createElement("tr", null, nonGroupedHeaders.map((header, index) => (/*#__PURE__*/React__default.createElement(Footer$3, {
|
13791
13954
|
key: header.id,
|
13792
13955
|
header: header,
|
13793
13956
|
index: index
|
@@ -13835,22 +13998,29 @@ const MemoedFooter = /*#__PURE__*/React__default.memo(function MemoedFooter(prop
|
|
13835
13998
|
});
|
13836
13999
|
|
13837
14000
|
function EmptyStateBody(props) {
|
14001
|
+
var _ref$current, _ref$current$parentNo;
|
13838
14002
|
const {
|
13839
14003
|
emptyState: Placeholder,
|
13840
14004
|
isReady,
|
13841
14005
|
reason,
|
13842
14006
|
...attributes
|
13843
14007
|
} = props;
|
14008
|
+
const ref = React__default.useRef(null);
|
13844
14009
|
if (!isReady) {
|
13845
14010
|
return /*#__PURE__*/React__default.createElement("tbody", Object.assign({}, attributes, {
|
13846
14011
|
className: "!auto-rows-fr"
|
13847
14012
|
}));
|
13848
14013
|
}
|
13849
14014
|
return /*#__PURE__*/React__default.createElement("tbody", Object.assign({}, attributes, {
|
13850
|
-
|
14015
|
+
ref: ref,
|
14016
|
+
className: "!auto-rows-fr",
|
14017
|
+
"data-taco": "empty-state"
|
13851
14018
|
}), /*#__PURE__*/React__default.createElement("tr", {
|
13852
|
-
className: "!auto-rows-fr"
|
14019
|
+
className: "!auto-rows-fr "
|
13853
14020
|
}, /*#__PURE__*/React__default.createElement("td", {
|
14021
|
+
style: {
|
14022
|
+
maxWidth: ref === null || ref === void 0 ? void 0 : (_ref$current = ref.current) === null || _ref$current === void 0 ? void 0 : (_ref$current$parentNo = _ref$current.parentNode) === null || _ref$current$parentNo === void 0 ? void 0 : _ref$current$parentNo.clientWidth
|
14023
|
+
},
|
13854
14024
|
className: "col-span-full !border-0 !p-0 hover:!bg-white"
|
13855
14025
|
}, Placeholder ? /*#__PURE__*/React__default.createElement(Placeholder, {
|
13856
14026
|
reason: reason
|
@@ -14817,14 +14987,16 @@ const Tag$1 = /*#__PURE__*/React__default.forwardRef((props, ref) => {
|
|
14817
14987
|
ref: ref,
|
14818
14988
|
"data-taco": "tag"
|
14819
14989
|
}), /*#__PURE__*/React__default.createElement("span", {
|
14820
|
-
className: "truncate px-2",
|
14990
|
+
className: "flex items-center truncate px-2",
|
14821
14991
|
ref: textRef
|
14822
14992
|
}, icon ? typeof icon === 'string' ? (/*#__PURE__*/React__default.createElement(Icon, {
|
14823
14993
|
name: icon,
|
14824
|
-
className: "-ml-1
|
14994
|
+
className: "-ml-1 mr-1 !h-5 !w-5"
|
14825
14995
|
})) : (/*#__PURE__*/React__default.cloneElement(icon, {
|
14826
|
-
className: 'mr-1 -ml-1
|
14827
|
-
})) : null,
|
14996
|
+
className: 'mr-1 -ml-1 !h-5 !w-5'
|
14997
|
+
})) : null, /*#__PURE__*/React__default.createElement("span", {
|
14998
|
+
className: "truncate"
|
14999
|
+
}, children)), onDelete ? (/*#__PURE__*/React__default.createElement(Icon, {
|
14828
15000
|
name: "close",
|
14829
15001
|
onClick: onDelete,
|
14830
15002
|
className: "-ml-1.5 !h-6 !w-5 flex-shrink-0 cursor-pointer rounded-r p-0.5 hover:bg-black/5"
|
@@ -15101,12 +15273,13 @@ const Option$1 = /*#__PURE__*/React__default.forwardRef(function Select2Option(p
|
|
15101
15273
|
}), hasValue ? (/*#__PURE__*/React__default.createElement(Icon, {
|
15102
15274
|
name: "tick",
|
15103
15275
|
className: "pointer-events-none invisible -mx-0.5 !h-4 !w-4 group-aria-selected:visible"
|
15104
|
-
})) : null, isTag ? (/*#__PURE__*/React__default.createElement(Tag$1, {
|
15276
|
+
})) : null, typeof children !== 'string' ? (/*#__PURE__*/React__default.createElement("span", null, children)) : isTag ? (/*#__PURE__*/React__default.createElement(Tag$1, {
|
15105
15277
|
className: "pointer-events-none my-1",
|
15106
15278
|
color: color,
|
15107
15279
|
icon: prefix
|
15108
15280
|
}, children)) : (/*#__PURE__*/React__default.createElement(React__default.Fragment, null, prefix ? typeof prefix === 'string' ? /*#__PURE__*/React__default.createElement(Icon, {
|
15109
|
-
name: prefix
|
15281
|
+
name: prefix,
|
15282
|
+
className: "!h-5 !w-5"
|
15110
15283
|
}) : prefix : null, /*#__PURE__*/React__default.createElement("span", {
|
15111
15284
|
className: "flex w-full justify-between"
|
15112
15285
|
}, /*#__PURE__*/React__default.createElement("span", {
|
@@ -15115,9 +15288,10 @@ const Option$1 = /*#__PURE__*/React__default.forwardRef(function Select2Option(p
|
|
15115
15288
|
className: "text-grey-700 -mt-1.5 mb-1.5 text-xs"
|
15116
15289
|
}, description) : null), /*#__PURE__*/React__default.createElement("span", {
|
15117
15290
|
className: "flex flex-col self-center"
|
15118
|
-
}, postfix ? typeof postfix === 'string' ? /*#__PURE__*/React__default.createElement(Icon, {
|
15119
|
-
name: postfix
|
15120
|
-
|
15291
|
+
}, postfix ? typeof postfix === 'string' ? (/*#__PURE__*/React__default.createElement(Icon, {
|
15292
|
+
name: postfix,
|
15293
|
+
className: "!h-5 !w-5"
|
15294
|
+
})) : postfix : null)))), popover ? (/*#__PURE__*/React__default.createElement(IconButton, {
|
15121
15295
|
icon: "ellipsis-vertical",
|
15122
15296
|
appearance: "discrete",
|
15123
15297
|
className: cn('group-aria-current:visible invisible -mr-1 ml-auto !h-5 min-h-[theme(spacing.6)] !w-5 min-w-[theme(spacing.6)] hover:!bg-black/[.08] focus:!shadow-none group-hover:visible', {
|
@@ -15283,7 +15457,7 @@ const Single = /*#__PURE__*/React__default.forwardRef(function Select2TriggerSin
|
|
15283
15457
|
readOnly,
|
15284
15458
|
tags
|
15285
15459
|
} = useSelect2Context();
|
15286
|
-
const contentClassName = cn('truncate items-center gap-1');
|
15460
|
+
const contentClassName = cn('truncate flex items-center gap-1');
|
15287
15461
|
const currentValue = children.find(matchesValue(value));
|
15288
15462
|
let output;
|
15289
15463
|
if (placeholder && currentValue === undefined) {
|
@@ -15293,13 +15467,13 @@ const Single = /*#__PURE__*/React__default.forwardRef(function Select2TriggerSin
|
|
15293
15467
|
}, placeholder);
|
15294
15468
|
} else if (currentValue) {
|
15295
15469
|
if (tags && emptyValue !== value) {
|
15296
|
-
output = /*#__PURE__*/React__default.createElement(Tag$1, {
|
15470
|
+
if (typeof currentValue.props.children === 'string') output = /*#__PURE__*/React__default.createElement(Tag$1, {
|
15297
15471
|
className: "truncate",
|
15298
15472
|
color: currentValue.props.color,
|
15299
15473
|
disabled: disabled,
|
15300
15474
|
icon: currentValue.props.prefix,
|
15301
15475
|
readOnly: readOnly
|
15302
|
-
}, currentValue.props.children);
|
15476
|
+
}, currentValue.props.children);else output = currentValue.props.children;
|
15303
15477
|
} else {
|
15304
15478
|
output = /*#__PURE__*/React__default.createElement(React__default.Fragment, null, currentValue.props.prefix ? typeof currentValue.props.prefix === 'string' ? (/*#__PURE__*/React__default.createElement(Icon, {
|
15305
15479
|
name: currentValue.props.prefix,
|
@@ -15350,7 +15524,7 @@ const Multiple = /*#__PURE__*/React__default.forwardRef(function Select2TriggerM
|
|
15350
15524
|
}, valuesAsChildren.length === 0 ? (/*#__PURE__*/React__default.createElement(Placeholder, {
|
15351
15525
|
disabled: disabled,
|
15352
15526
|
readOnly: readOnly
|
15353
|
-
}, placeholder)) : valuesAsChildren.map(child => (/*#__PURE__*/React__default.createElement(Tag$1, {
|
15527
|
+
}, placeholder)) : valuesAsChildren.map(child => typeof child.props.children === 'string' ? (/*#__PURE__*/React__default.createElement(Tag$1, {
|
15354
15528
|
key: String(child.props.value),
|
15355
15529
|
className: "truncate",
|
15356
15530
|
color: tags ? child.props.color : undefined,
|
@@ -15364,7 +15538,23 @@ const Multiple = /*#__PURE__*/React__default.forwardRef(function Select2TriggerM
|
|
15364
15538
|
}
|
15365
15539
|
},
|
15366
15540
|
readOnly: readOnly
|
15367
|
-
}, child.props.children))
|
15541
|
+
}, child.props.children)) : (/*#__PURE__*/React__default.cloneElement(child.props.children, {
|
15542
|
+
key: String(child.props.value),
|
15543
|
+
className: '!pr-0 !pl-1.5',
|
15544
|
+
children: (/*#__PURE__*/React__default.createElement("span", {
|
15545
|
+
className: "flex items-center"
|
15546
|
+
}, child.props.children.props.children, /*#__PURE__*/React__default.createElement(Icon, {
|
15547
|
+
name: "close",
|
15548
|
+
onClick: event => {
|
15549
|
+
event === null || event === void 0 ? void 0 : event.stopPropagation();
|
15550
|
+
event === null || event === void 0 ? void 0 : event.preventDefault();
|
15551
|
+
if (!disabled && !readOnly) {
|
15552
|
+
setValue(child.props.value);
|
15553
|
+
}
|
15554
|
+
},
|
15555
|
+
className: "ml-0.5 !h-5 !w-5 shrink-0 cursor-pointer rounded-r p-0.5 hover:bg-black/5"
|
15556
|
+
})))
|
15557
|
+
})))));
|
15368
15558
|
} else {
|
15369
15559
|
content = /*#__PURE__*/React__default.createElement(MultipleValue, {
|
15370
15560
|
onClick: forwardClick,
|
@@ -15395,6 +15585,18 @@ const MultipleValue = ({
|
|
15395
15585
|
} = useSelect2Context();
|
15396
15586
|
const [contentRef, setContentRef] = React__default.useState(null);
|
15397
15587
|
const boundaryIndex = contentRef ? getIndexOfFirstChildOverflowingParent(contentRef, 30) : undefined;
|
15588
|
+
// Retrieves the relevant text content from any JSX.Element passed as a select option, handling nested elements, arrays, and direct text
|
15589
|
+
const getTooltipTitle = child => {
|
15590
|
+
const children = child.props.children;
|
15591
|
+
if (typeof children === 'string') return children;
|
15592
|
+
if (typeof children.props.children === 'string') {
|
15593
|
+
return children.props.children;
|
15594
|
+
}
|
15595
|
+
if (Array.isArray(children.props.children)) {
|
15596
|
+
return children.props.children.filter(item => typeof item === 'string');
|
15597
|
+
}
|
15598
|
+
return '';
|
15599
|
+
};
|
15398
15600
|
return /*#__PURE__*/React__default.createElement("div", {
|
15399
15601
|
className: "relative flex w-full items-center gap-1 overflow-hidden",
|
15400
15602
|
onClick: onClick
|
@@ -15405,26 +15607,35 @@ const MultipleValue = ({
|
|
15405
15607
|
disabled: disabled,
|
15406
15608
|
readOnly: readOnly
|
15407
15609
|
}, placeholder)) : valuesAsChildren.map((child, index) => {
|
15408
|
-
const
|
15409
|
-
|
15610
|
+
const classNames = {
|
15611
|
+
truncate: index === boundaryIndex,
|
15612
|
+
hidden: boundaryIndex !== undefined && boundaryIndex !== null ? index > boundaryIndex : false
|
15613
|
+
};
|
15614
|
+
let output;
|
15615
|
+
if (typeof child.props.children === 'string') {
|
15616
|
+
output = /*#__PURE__*/React__default.createElement(Tag$1, {
|
15617
|
+
key: String(child.props.value),
|
15618
|
+
className: cn('cursor-pointer', classNames),
|
15619
|
+
color: tags ? child.props.color : undefined,
|
15620
|
+
disabled: disabled,
|
15621
|
+
icon: child.props.prefix,
|
15622
|
+
readOnly: readOnly
|
15623
|
+
}, child.props.children);
|
15624
|
+
} else output = /*#__PURE__*/React__default.cloneElement(child.props.children, {
|
15410
15625
|
className: cn('cursor-pointer', {
|
15411
|
-
|
15412
|
-
|
15413
|
-
|
15414
|
-
|
15415
|
-
disabled: disabled,
|
15416
|
-
icon: child.props.prefix,
|
15417
|
-
readOnly: readOnly
|
15418
|
-
}, child.props.children);
|
15626
|
+
'shrink-0': index !== boundaryIndex
|
15627
|
+
}, classNames),
|
15628
|
+
key: String(child.props.value)
|
15629
|
+
});
|
15419
15630
|
if (index === boundaryIndex) {
|
15420
15631
|
return /*#__PURE__*/React__default.createElement(Tooltip, {
|
15421
15632
|
key: String(child.props.value),
|
15422
|
-
title: String(child
|
15423
|
-
},
|
15633
|
+
title: String(getTooltipTitle(child))
|
15634
|
+
}, output);
|
15424
15635
|
}
|
15425
|
-
return
|
15636
|
+
return output;
|
15426
15637
|
})), boundaryIndex !== undefined && boundaryIndex !== null && boundaryIndex < valuesAsChildren.length - 1 ? (/*#__PURE__*/React__default.createElement(Tooltip, {
|
15427
|
-
title: valuesAsChildren.slice(boundaryIndex + 1).map(child => child ? String(child
|
15638
|
+
title: valuesAsChildren.slice(boundaryIndex + 1).map(child => child ? String(getTooltipTitle(child)) : '').join(', ')
|
15428
15639
|
}, /*#__PURE__*/React__default.createElement(Badge, {
|
15429
15640
|
className: "flex-shrink-0"
|
15430
15641
|
}, "+", valuesAsChildren.length - (boundaryIndex + 1)))) : null);
|
@@ -15489,7 +15700,7 @@ const BubbleSelect = props => {
|
|
15489
15700
|
if (prevValue !== value && setValue) {
|
15490
15701
|
if (Array.isArray(value)) {
|
15491
15702
|
value.forEach(v => {
|
15492
|
-
const option = select.querySelector(`option[value='${v}']`);
|
15703
|
+
const option = select.querySelector(`option[value='${CSS.escape(v)}']`);
|
15493
15704
|
if (option) {
|
15494
15705
|
option.selected = true;
|
15495
15706
|
}
|
@@ -16299,10 +16510,11 @@ function guessComparatorsBasedOnControl(column) {
|
|
16299
16510
|
return getDataTypeProperties(columnMeta.dataType).filterComparators;
|
16300
16511
|
}
|
16301
16512
|
|
16513
|
+
const FilterContext = /*#__PURE__*/React__default.createContext([]);
|
16514
|
+
|
16302
16515
|
const FilterColumn = /*#__PURE__*/React__default.forwardRef((props, ref) => {
|
16303
16516
|
const {
|
16304
16517
|
allColumns,
|
16305
|
-
filters,
|
16306
16518
|
onChange: handleChange,
|
16307
16519
|
value = null,
|
16308
16520
|
...attributes
|
@@ -16310,6 +16522,7 @@ const FilterColumn = /*#__PURE__*/React__default.forwardRef((props, ref) => {
|
|
16310
16522
|
const {
|
16311
16523
|
texts
|
16312
16524
|
} = useLocalization();
|
16525
|
+
const filters = React__default.useContext(FilterContext);
|
16313
16526
|
const selectedColumn = allColumns.find(column => column.id === value);
|
16314
16527
|
const warning = selectedColumn && !selectedColumn.getIsVisible();
|
16315
16528
|
return /*#__PURE__*/React__default.createElement("div", {
|
@@ -16475,6 +16688,7 @@ function Control(props) {
|
|
16475
16688
|
} = props;
|
16476
16689
|
const controlRenderer = column === null || column === void 0 ? void 0 : (_column$columnDef$met2 = column.columnDef.meta) === null || _column$columnDef$met2 === void 0 ? void 0 : _column$columnDef$met2.control;
|
16477
16690
|
const dataType = column === null || column === void 0 ? void 0 : (_column$columnDef$met3 = column.columnDef.meta) === null || _column$columnDef$met3 === void 0 ? void 0 : _column$columnDef$met3.dataType;
|
16691
|
+
const filters = React__default.useContext(FilterContext);
|
16478
16692
|
const ref = React__default.useRef(null);
|
16479
16693
|
React.useEffect(() => {
|
16480
16694
|
// Set value to false only after first render of the control (when it's undefined) after setting the FilterColumn value, because we don't want to change then the value every time filter is opened
|
@@ -16488,7 +16702,7 @@ function Control(props) {
|
|
16488
16702
|
setValue: value => onChange(value),
|
16489
16703
|
value,
|
16490
16704
|
ref
|
16491
|
-
}), {
|
16705
|
+
}, undefined, filters), {
|
16492
16706
|
['data-query-selector']: querySelector,
|
16493
16707
|
className: 'focus:yt-focus'
|
16494
16708
|
});
|
@@ -16530,7 +16744,6 @@ function Filter$1(props) {
|
|
16530
16744
|
const {
|
16531
16745
|
allColumns,
|
16532
16746
|
filter,
|
16533
|
-
filters,
|
16534
16747
|
onChange: handleChange,
|
16535
16748
|
onRemove,
|
16536
16749
|
position
|
@@ -16605,7 +16818,6 @@ function Filter$1(props) {
|
|
16605
16818
|
className: "flex min-h-[theme(spacing.8)] w-14 flex-shrink-0 items-center justify-end pr-2 text-right"
|
16606
16819
|
}, position > 0 ? texts.table.filters.conditions.and : texts.table.filters.conditions.where), /*#__PURE__*/React__default.createElement(FilterColumn, {
|
16607
16820
|
allColumns: allColumns,
|
16608
|
-
filters: filters,
|
16609
16821
|
onChange: handleChangeColumn,
|
16610
16822
|
value: id,
|
16611
16823
|
ref: ref
|
@@ -16709,7 +16921,9 @@ function ManageFiltersPopover(props) {
|
|
16709
16921
|
};
|
16710
16922
|
return /*#__PURE__*/React__default.createElement(Popover, Object.assign({}, popoverProps, {
|
16711
16923
|
onChange: handleClose
|
16712
|
-
}), /*#__PURE__*/React__default.createElement(Popover.Content, null, /*#__PURE__*/React__default.createElement(
|
16924
|
+
}), /*#__PURE__*/React__default.createElement(Popover.Content, null, /*#__PURE__*/React__default.createElement(FilterContext.Provider, {
|
16925
|
+
value: filters
|
16926
|
+
}, /*#__PURE__*/React__default.createElement("div", {
|
16713
16927
|
className: "flex w-[40rem] flex-col gap-4"
|
16714
16928
|
}, /*#__PURE__*/React__default.createElement("div", {
|
16715
16929
|
className: "flex h-8"
|
@@ -16725,7 +16939,6 @@ function ManageFiltersPopover(props) {
|
|
16725
16939
|
key: `filter_${index}`,
|
16726
16940
|
allColumns: allColumns,
|
16727
16941
|
filter: filter,
|
16728
|
-
filters: filters,
|
16729
16942
|
position: index,
|
16730
16943
|
onChange: handleChangeFilter,
|
16731
16944
|
onRemove: filters.length > 0 && filters.some(f => f.id) || filters.length > 1 ? handleRemoveFilter : undefined
|
@@ -16741,7 +16954,7 @@ function ManageFiltersPopover(props) {
|
|
16741
16954
|
}, texts.table.filters.buttons.clear), /*#__PURE__*/React__default.createElement(Button$1, {
|
16742
16955
|
appearance: "primary",
|
16743
16956
|
onClick: handleApply
|
16744
|
-
}, texts.table.filters.buttons.apply)))));
|
16957
|
+
}, texts.table.filters.buttons.apply))))));
|
16745
16958
|
}
|
16746
16959
|
|
16747
16960
|
function Filters(props) {
|
@@ -16861,6 +17074,7 @@ function TableGrid(props) {
|
|
16861
17074
|
var _table$state$grouping;
|
16862
17075
|
const {
|
16863
17076
|
enableHorizontalArrowKeyNavigation,
|
17077
|
+
footerRows,
|
16864
17078
|
table,
|
16865
17079
|
...attributes
|
16866
17080
|
} = props;
|
@@ -16907,7 +17121,7 @@ function TableGrid(props) {
|
|
16907
17121
|
} : table.renderer.style
|
16908
17122
|
}, table.renderer.rows, props.children), table.meta.footer.isEnabled ? /*#__PURE__*/React__default.createElement(Foot, {
|
16909
17123
|
table: table.instance
|
16910
|
-
}) : null)))));
|
17124
|
+
}, footerRows) : null)))));
|
16911
17125
|
}
|
16912
17126
|
|
16913
17127
|
function Column$1(_) {
|
@@ -18500,20 +18714,25 @@ const shortcut = {
|
|
18500
18714
|
meta: true,
|
18501
18715
|
shift: false
|
18502
18716
|
};
|
18717
|
+
function isTableScrolled(ref) {
|
18718
|
+
if (ref.current) {
|
18719
|
+
var _ref$current, _ref$current$querySel, _ref$current2, _ref$current2$querySe;
|
18720
|
+
const height = parseFloat(((_ref$current = ref.current) === null || _ref$current === void 0 ? void 0 : (_ref$current$querySel = _ref$current.querySelector('tbody')) === null || _ref$current$querySel === void 0 ? void 0 : _ref$current$querySel.style.height) || '0') + parseFloat(((_ref$current2 = ref.current) === null || _ref$current2 === void 0 ? void 0 : (_ref$current2$querySe = _ref$current2.querySelector('tbody')) === null || _ref$current2$querySe === void 0 ? void 0 : _ref$current2$querySe.style.paddingBottom) || '0');
|
18721
|
+
return height > ref.current.scrollHeight;
|
18722
|
+
}
|
18723
|
+
return false;
|
18724
|
+
}
|
18503
18725
|
|
18504
18726
|
function useTableEditingListener(table, tableRef, scrollToIndex) {
|
18505
18727
|
const tableMeta = table.options.meta;
|
18506
18728
|
const localization = useLocalization();
|
18507
|
-
// save when the row changes
|
18508
|
-
// store the last row active index, otherwise everytime tableMeta.editing.saveChanges changes the hook runs again
|
18509
|
-
const lastRowActiveIndexRef = React__default.useRef(tableMeta.rowActive.rowActiveIndex);
|
18510
18729
|
useLazyEffect(() => {
|
18511
|
-
|
18512
|
-
|
18513
|
-
|
18514
|
-
tableMeta.editing.saveChanges(table);
|
18730
|
+
return () => {
|
18731
|
+
if (tableMeta.editing.isEditing && tableMeta.rowActive.rowActiveIndex !== undefined) {
|
18732
|
+
var _table$getRowModel$ro;
|
18733
|
+
tableMeta.editing.saveChanges(table, (_table$getRowModel$ro = table.getRowModel().rows[tableMeta.rowActive.rowActiveIndex]) === null || _table$getRowModel$ro === void 0 ? void 0 : _table$getRowModel$ro.id);
|
18515
18734
|
}
|
18516
|
-
}
|
18735
|
+
};
|
18517
18736
|
}, [tableMeta.rowActive.rowActiveIndex]);
|
18518
18737
|
// show a warning if the user navigates away without triggering save, such as using the browser back/forward button
|
18519
18738
|
const hasChanges = tableMeta.editing.hasChanges();
|
@@ -18728,6 +18947,7 @@ function usePendingChangesState(handleSave, handleChange, rowIdentityAccessor, v
|
|
18728
18947
|
const _temp9 = _forOf(Object.keys(changes), function (rowId) {
|
18729
18948
|
const status = getRowStatus(rowId);
|
18730
18949
|
return _catch(function () {
|
18950
|
+
var _changes$rowId;
|
18731
18951
|
function _temp8(_result) {
|
18732
18952
|
return _exit ? _result : Promise.resolve(handleSave(changeSet)).then(function () {
|
18733
18953
|
// cleanup changes, we don't need them after saving
|
@@ -18739,14 +18959,15 @@ function usePendingChangesState(handleSave, handleChange, rowIdentityAccessor, v
|
|
18739
18959
|
}, DELAY_BEFORE_REMOVING_SAVE_STATUS);
|
18740
18960
|
});
|
18741
18961
|
}
|
18962
|
+
const rowChanges = (_changes$rowId = changes[rowId]) !== null && _changes$rowId !== void 0 ? _changes$rowId : {};
|
18742
18963
|
// don't try to save if - already saving, or there are known errors
|
18743
|
-
if (status === 'saving' || status === 'errored') {
|
18964
|
+
if (!Object.keys(rowChanges).length || status === 'saving' || status === 'errored') {
|
18744
18965
|
return;
|
18745
18966
|
}
|
18746
18967
|
setRowStatus(rowId, 'saving');
|
18747
18968
|
const changeSet = {
|
18748
18969
|
...state.changes.originals[rowId],
|
18749
|
-
...
|
18970
|
+
...rowChanges
|
18750
18971
|
};
|
18751
18972
|
// if we had to create a temporary id, delete it first - it's our data, not theirs
|
18752
18973
|
if (isTemporaryRow(changeSet[rowIdentityAccessor])) {
|
@@ -18809,7 +19030,7 @@ function usePendingChangesState(handleSave, handleChange, rowIdentityAccessor, v
|
|
18809
19030
|
return Promise.reject(e);
|
18810
19031
|
}
|
18811
19032
|
};
|
18812
|
-
const onCellChanged = function (cell, rowIndex, shouldRunUpdaters = true) {
|
19033
|
+
const onCellChanged = function (cell, rowIndex, nextValue, shouldRunUpdaters = true) {
|
18813
19034
|
try {
|
18814
19035
|
function _temp6() {
|
18815
19036
|
var _state$changes$errors11;
|
@@ -18851,7 +19072,7 @@ function usePendingChangesState(handleSave, handleChange, rowIdentityAccessor, v
|
|
18851
19072
|
}
|
18852
19073
|
// create a projection of the next state, so we can act against it
|
18853
19074
|
const nextChanges = {
|
18854
|
-
...
|
19075
|
+
...changes,
|
18855
19076
|
...updatesForOtherCells
|
18856
19077
|
};
|
18857
19078
|
const nextMoveReasons = {
|
@@ -18860,10 +19081,11 @@ function usePendingChangesState(handleSave, handleChange, rowIdentityAccessor, v
|
|
18860
19081
|
const nextCellErrors = {
|
18861
19082
|
...((_state$changes$errors11 = state.changes.errors[cell.row.id]) === null || _state$changes$errors11 === void 0 ? void 0 : _state$changes$errors11.cells)
|
18862
19083
|
};
|
18863
|
-
// run validation
|
19084
|
+
// run validation - if there are changes, and if there is an original stored
|
18864
19085
|
let validationErrors = {};
|
18865
19086
|
const _temp3 = function () {
|
18866
|
-
if (validator) {
|
19087
|
+
if (validator && Object.keys(nextChanges).length && state.changes.originals[cell.row.id]) {
|
19088
|
+
// merge with the original so we get a full row
|
18867
19089
|
const nextRowValue = {
|
18868
19090
|
...state.changes.originals[cell.row.id],
|
18869
19091
|
...changes,
|
@@ -18876,8 +19098,13 @@ function usePendingChangesState(handleSave, handleChange, rowIdentityAccessor, v
|
|
18876
19098
|
}();
|
18877
19099
|
return _temp3 && _temp3.then ? _temp3.then(_temp4) : _temp4(_temp3);
|
18878
19100
|
}
|
18879
|
-
const changes =
|
18880
|
-
|
19101
|
+
const changes = nextValue !== undefined ? {
|
19102
|
+
...state.changes.rows[cell.row.id],
|
19103
|
+
[cell.column.id]: nextValue
|
19104
|
+
} : {
|
19105
|
+
...state.changes.rows[cell.row.id]
|
19106
|
+
};
|
19107
|
+
if (!Object.keys(changes).length) {
|
18881
19108
|
return Promise.resolve();
|
18882
19109
|
}
|
18883
19110
|
let updatesForOtherCells = {};
|
@@ -19089,30 +19316,44 @@ function usePendingChangesState(handleSave, handleChange, rowIdentityAccessor, v
|
|
19089
19316
|
function useTableEditing(isEnabled = false, handleSave, handleChange, handleCreate, rowIdentityAccessor, validator) {
|
19090
19317
|
const createRow = function (table, scrollToIndex, row) {
|
19091
19318
|
try {
|
19092
|
-
|
19093
|
-
|
19094
|
-
|
19095
|
-
const tableMeta = table.options.meta;
|
19096
|
-
return Promise.resolve(tableMeta.editing.saveChanges(table)).then(function (saved) {
|
19097
|
-
if (!saved) {
|
19098
|
-
return;
|
19099
|
-
}
|
19319
|
+
let _exit = false;
|
19320
|
+
function _temp2(_result) {
|
19321
|
+
if (_exit) return _result;
|
19100
19322
|
const changeset = row !== null && row !== void 0 ? row : handleCreate();
|
19101
19323
|
try {
|
19102
19324
|
if (changeset) {
|
19103
|
-
const
|
19104
|
-
|
19325
|
+
const newRowId = pendingChangesFns.insertTemporaryRow(changeset);
|
19326
|
+
// reset before changing row otherwise the cell changes and validation might run
|
19327
|
+
setLastFocusedCellIndex(undefined);
|
19105
19328
|
// set the active row to the new row before toggling editing on
|
19106
19329
|
const temporaryRows = tableMeta.editing.temporaryRows;
|
19107
19330
|
const nextRowIndex = temporaryRows.length ? tableMeta.length + 1 : tableMeta.length;
|
19108
19331
|
tableMeta.rowActive.setRowActiveIndex(nextRowIndex);
|
19109
|
-
|
19110
|
-
|
19332
|
+
// wait until set states have run
|
19333
|
+
requestAnimationFrame(() => {
|
19334
|
+
toggleEditing(true, table, scrollToIndex, false);
|
19335
|
+
table.getRow(newRowId).pin('bottom');
|
19336
|
+
});
|
19111
19337
|
}
|
19112
19338
|
} catch (error) {
|
19113
19339
|
console.error(error);
|
19114
19340
|
}
|
19115
|
-
}
|
19341
|
+
}
|
19342
|
+
if (!handleCreate) {
|
19343
|
+
return Promise.resolve();
|
19344
|
+
}
|
19345
|
+
const tableMeta = table.options.meta;
|
19346
|
+
const _temp = function () {
|
19347
|
+
if (tableMeta.rowActive.rowActiveIndex !== undefined) {
|
19348
|
+
var _table$getRowModel$ro2;
|
19349
|
+
return Promise.resolve(tableMeta.editing.saveChanges(table, (_table$getRowModel$ro2 = table.getRowModel().rows[tableMeta.rowActive.rowActiveIndex]) === null || _table$getRowModel$ro2 === void 0 ? void 0 : _table$getRowModel$ro2.id)).then(function (saved) {
|
19350
|
+
if (!saved) {
|
19351
|
+
_exit = true;
|
19352
|
+
}
|
19353
|
+
});
|
19354
|
+
}
|
19355
|
+
}();
|
19356
|
+
return Promise.resolve(_temp && _temp.then ? _temp.then(_temp2) : _temp2(_temp));
|
19116
19357
|
} catch (e) {
|
19117
19358
|
return Promise.reject(e);
|
19118
19359
|
}
|
@@ -19126,24 +19367,26 @@ function useTableEditing(isEnabled = false, handleSave, handleChange, handleCrea
|
|
19126
19367
|
// store the last focused cell, so that up/down arrow key navigation remains in the same column
|
19127
19368
|
const [lastFocusedCellIndex, setLastFocusedCellIndex] = React__default.useState(undefined);
|
19128
19369
|
const pendingChangesFns = usePendingChangesState(handleSave, handleChange, rowIdentityAccessor, validator);
|
19129
|
-
function toggleEditing(enabled, table, scrollToIndex) {
|
19130
|
-
|
19131
|
-
if (
|
19132
|
-
|
19133
|
-
|
19370
|
+
function toggleEditing(enabled, table, scrollToIndex, doSave = true) {
|
19371
|
+
const tableMeta = table.options.meta;
|
19372
|
+
if (enabled) {
|
19373
|
+
var _tableMeta$rowActive$, _table$getRowModel$ro;
|
19374
|
+
const index = (_tableMeta$rowActive$ = tableMeta.rowActive.rowActiveIndex) !== null && _tableMeta$rowActive$ !== void 0 ? _tableMeta$rowActive$ : 0;
|
19375
|
+
if (tableMeta.rowActive.rowActiveIndex === undefined) {
|
19376
|
+
tableMeta.rowActive.setRowActiveIndex(index);
|
19377
|
+
}
|
19378
|
+
if (!isTemporaryRow((_table$getRowModel$ro = table.getRowModel().rows[index]) === null || _table$getRowModel$ro === void 0 ? void 0 : _table$getRowModel$ro.id)) {
|
19379
|
+
scrollToIndex(index);
|
19380
|
+
}
|
19381
|
+
} else if (!enabled) {
|
19134
19382
|
// reset detailed mode
|
19135
19383
|
toggleDetailedMode(false);
|
19136
19384
|
// reset the last index back to the first focusable element, when editing gets turned off
|
19137
19385
|
setLastFocusedCellIndex(undefined);
|
19138
19386
|
}
|
19139
|
-
const tableMeta = table.options.meta;
|
19140
|
-
const index = (_tableMeta$rowActive$ = tableMeta.rowActive.rowActiveIndex) !== null && _tableMeta$rowActive$ !== void 0 ? _tableMeta$rowActive$ : 0;
|
19141
|
-
if (tableMeta.rowActive.rowActiveIndex === undefined) {
|
19142
|
-
tableMeta.rowActive.setRowActiveIndex(index);
|
19143
|
-
}
|
19144
19387
|
setEditing(enabled);
|
19145
|
-
if (
|
19146
|
-
|
19388
|
+
if (doSave) {
|
19389
|
+
pendingChangesFns.saveChanges(table);
|
19147
19390
|
}
|
19148
19391
|
}
|
19149
19392
|
return {
|
@@ -19415,20 +19658,26 @@ function EditingControlCell(props) {
|
|
19415
19658
|
if (nextValue !== value) {
|
19416
19659
|
tableMeta.editing.setCellValue(cell, nextValue);
|
19417
19660
|
if (hasNonTextControl) {
|
19418
|
-
tableMeta.editing.onCellChanged(cell, rowIndex);
|
19661
|
+
requestAnimationFrame(() => tableMeta.editing.onCellChanged(cell, rowIndex, nextValue));
|
19419
19662
|
}
|
19420
19663
|
}
|
19421
19664
|
};
|
19422
|
-
|
19665
|
+
function blur() {
|
19423
19666
|
tableMeta.editing.toggleDetailedMode(false);
|
19424
|
-
tableMeta.editing.onCellChanged(cell, rowIndex, !hasNonTextControl);
|
19667
|
+
tableMeta.editing.onCellChanged(cell, rowIndex, undefined, !hasNonTextControl);
|
19668
|
+
}
|
19669
|
+
const handleBlur = event => {
|
19670
|
+
if (isElementInsideOrTriggeredFromContainer(event.relatedTarget, event.currentTarget)) {
|
19671
|
+
return;
|
19672
|
+
}
|
19673
|
+
blur();
|
19425
19674
|
};
|
19426
19675
|
// ensure that blur runs when the cell gets unmounted (when vertically arrow key navigating)
|
19427
19676
|
React__default.useEffect(() => {
|
19428
19677
|
const ref = cellRef.current;
|
19429
19678
|
return () => {
|
19430
19679
|
if (document.activeElement === ref || isElementInsideOrTriggeredFromContainer(document.activeElement, ref)) {
|
19431
|
-
|
19680
|
+
blur();
|
19432
19681
|
}
|
19433
19682
|
};
|
19434
19683
|
}, []);
|
@@ -19852,14 +20101,13 @@ function useTable3(props, ref) {
|
|
19852
20101
|
hasChanges: editing.hasChanges(rowId),
|
19853
20102
|
hasErrors: editing.hasRowErrors(rowId),
|
19854
20103
|
onDiscard: () => {
|
20104
|
+
editing.discardChanges(rowId, table);
|
19855
20105
|
if (editing.temporaryRows.length) {
|
19856
|
-
|
19857
|
-
setTimeout(() => {
|
20106
|
+
requestAnimationFrame(() => {
|
19858
20107
|
var _editing$createRowBut;
|
19859
20108
|
return (_editing$createRowBut = editing.createRowButtonRef.current) === null || _editing$createRowBut === void 0 ? void 0 : _editing$createRowBut.focus();
|
19860
|
-
}
|
20109
|
+
});
|
19861
20110
|
}
|
19862
|
-
editing.discardChanges(rowId, table);
|
19863
20111
|
},
|
19864
20112
|
onEditingSave: function () {
|
19865
20113
|
try {
|
@@ -19925,7 +20173,9 @@ function Alert$1(props) {
|
|
19925
20173
|
// generate links to each invalid row, to go into the error message
|
19926
20174
|
const links = [];
|
19927
20175
|
const visibleColumns = table.getVisibleFlatColumns().map(c => c.id);
|
19928
|
-
const rowIdentityColumn = tableMeta.rowIdentityAccessor && visibleColumns.includes(String(tableMeta.rowIdentityAccessor)) ?
|
20176
|
+
const rowIdentityColumn = tableMeta.rowIdentityAccessor && visibleColumns.includes(String(tableMeta.rowIdentityAccessor)) ?
|
20177
|
+
// table.getColumn(columName) throw error in strict dev mode. Related thread: https://github.com/TanStack/table/discussions/5505
|
20178
|
+
table.getAllColumns().find(x => x.id === String(tableMeta.rowIdentityAccessor)) : undefined;
|
19929
20179
|
pendingChangesWithErrors.forEach((pendingChangeWithError, index) => {
|
19930
20180
|
// if appropriate, concatenate the item with the text "and"
|
19931
20181
|
if (pendingChangesWithErrors.length > 1 && index === pendingChangesWithErrors.length - 1) {
|
@@ -20047,10 +20297,10 @@ function CreateNewRow(props) {
|
|
20047
20297
|
var _temporaryRows$0$tabl, _temporaryRows$, _table$getState$colum;
|
20048
20298
|
const {
|
20049
20299
|
buttonRef,
|
20300
|
+
isScrolled,
|
20050
20301
|
scrollToIndex,
|
20051
20302
|
table,
|
20052
|
-
tableMeta
|
20053
|
-
tableRef
|
20303
|
+
tableMeta
|
20054
20304
|
} = props;
|
20055
20305
|
const {
|
20056
20306
|
texts
|
@@ -20083,11 +20333,9 @@ function CreateNewRow(props) {
|
|
20083
20333
|
keys: shortcut
|
20084
20334
|
});
|
20085
20335
|
}
|
20086
|
-
const isScrolled = tableRef.current ? tableRef.current.scrollHeight > tableRef.current.clientHeight : false;
|
20087
20336
|
const className = cn('group/row border-grey-300 !sticky z-[21]', {
|
20088
20337
|
'bottom-10': tableMeta.footer.isEnabled,
|
20089
20338
|
'bottom-0': !tableMeta.footer.isEnabled,
|
20090
|
-
'border-t-2': isScrolled,
|
20091
20339
|
'border-b': !isScrolled
|
20092
20340
|
});
|
20093
20341
|
return /*#__PURE__*/React__default.createElement("tr", {
|
@@ -20112,6 +20360,7 @@ function CreateNewRow(props) {
|
|
20112
20360
|
function TemporaryRow(props) {
|
20113
20361
|
const {
|
20114
20362
|
createRowButtonRef,
|
20363
|
+
isScrolled,
|
20115
20364
|
table,
|
20116
20365
|
tableMeta,
|
20117
20366
|
tableRef
|
@@ -20174,10 +20423,9 @@ function TemporaryRow(props) {
|
|
20174
20423
|
}
|
20175
20424
|
}
|
20176
20425
|
};
|
20177
|
-
const isScrolled = tableRef.current ? tableRef.current.scrollHeight > tableRef.current.clientHeight : false;
|
20178
20426
|
const className = cn('group/row border-grey-300 !sticky z-[22]', {
|
20179
|
-
'bottom-[calc(5rem_+
|
20180
|
-
'bottom-[calc(2.5rem_+
|
20427
|
+
'bottom-[calc(5rem_+_2px)] data-[row-editing-move]:bottom-[calc(5rem_+_2px)]': tableMeta.footer.isEnabled,
|
20428
|
+
'bottom-[calc(2.5rem_+_2px)] data-[row-editing-move]:bottom-[calc(2.5rem_+_2px)]': !tableMeta.footer.isEnabled,
|
20181
20429
|
'border-t-2 shadow-[0px_-5px_20px_0px_rgba(0,0,0,0.1)] [&>td]:!border-b-0': isScrolled
|
20182
20430
|
});
|
20183
20431
|
return /*#__PURE__*/React__default.createElement(React__default.Fragment, null, table.getBottomRows().map(row => (/*#__PURE__*/React__default.createElement(Row, {
|
@@ -20213,6 +20461,17 @@ const BaseTable3 = /*#__PURE__*/fixedForwardRef(function BaseTable3(props, ref)
|
|
20213
20461
|
};
|
20214
20462
|
const hasAlertErrors = table3.meta.editing.getErrorsShownInAlert().length;
|
20215
20463
|
const hasCreateWorkflow = table3.meta.editing.isEnabled && props.onEditingCreate;
|
20464
|
+
const isScrolled = isTableScrolled(table3.ref);
|
20465
|
+
let createWorkflow;
|
20466
|
+
if (hasCreateWorkflow) {
|
20467
|
+
createWorkflow = /*#__PURE__*/React__default.createElement(CreateNewRow, {
|
20468
|
+
buttonRef: table3.meta.editing.createRowButtonRef,
|
20469
|
+
isScrolled: isScrolled,
|
20470
|
+
scrollToIndex: table3.renderer.scrollToIndex,
|
20471
|
+
table: table3.instance,
|
20472
|
+
tableMeta: table3.meta
|
20473
|
+
});
|
20474
|
+
}
|
20216
20475
|
return /*#__PURE__*/React__default.createElement(Table, null, /*#__PURE__*/React__default.createElement(Table.Toolbar, {
|
20217
20476
|
table: table3
|
20218
20477
|
}, table3.meta.editing.isEnabled ? (/*#__PURE__*/React__default.createElement(Editing, {
|
@@ -20225,19 +20484,15 @@ const BaseTable3 = /*#__PURE__*/fixedForwardRef(function BaseTable3(props, ref)
|
|
20225
20484
|
tableRef: table3.ref
|
20226
20485
|
})) : null, /*#__PURE__*/React__default.createElement(Table.Grid, Object.assign({}, gridAttributes, {
|
20227
20486
|
"data-taco": "table3",
|
20487
|
+
footerRows: hasCreateWorkflow && isScrolled ? createWorkflow : undefined,
|
20228
20488
|
table: table3
|
20229
20489
|
}), hasCreateWorkflow ? (/*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement(TemporaryRow, {
|
20230
20490
|
createRowButtonRef: table3.meta.editing.createRowButtonRef,
|
20491
|
+
isScrolled: isScrolled,
|
20231
20492
|
table: table3.instance,
|
20232
20493
|
tableMeta: table3.meta,
|
20233
20494
|
tableRef: table3.ref
|
20234
|
-
}),
|
20235
|
-
buttonRef: table3.meta.editing.createRowButtonRef,
|
20236
|
-
scrollToIndex: table3.renderer.scrollToIndex,
|
20237
|
-
table: table3.instance,
|
20238
|
-
tableMeta: table3.meta,
|
20239
|
-
tableRef: table3.ref
|
20240
|
-
}))) : null));
|
20495
|
+
}), !isScrolled ? createWorkflow : null)) : null));
|
20241
20496
|
});
|
20242
20497
|
const Table3 = /*#__PURE__*/fixedForwardRef(function Table3(props, ref) {
|
20243
20498
|
const stringifiedChildren = String(props.children);
|