@servicetitan/table 41.0.0 → 41.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/demo/column-hiding/products.d.ts +1 -1
- package/dist/demo/column-hiding/products.d.ts.map +1 -1
- package/dist/demo/column-hiding/products.js.map +1 -1
- package/dist/demo/column-hiding/table.d.ts +1 -1
- package/dist/demo/column-hiding/table.d.ts.map +1 -1
- package/dist/demo/column-hiding/table.js.map +1 -1
- package/dist/demo/column-hiding/table.store.d.ts +3 -2
- package/dist/demo/column-hiding/table.store.d.ts.map +1 -1
- package/dist/demo/column-hiding/table.store.js.map +1 -1
- package/dist/demo/filters/async-select-filter.d.ts +1 -1
- package/dist/demo/filters/async-select-filter.d.ts.map +1 -1
- package/dist/demo/filters/async-select-filter.js.map +1 -1
- package/dist/demo/filters/categories.d.ts +2 -2
- package/dist/demo/filters/categories.d.ts.map +1 -1
- package/dist/demo/filters/categories.js.map +1 -1
- package/dist/demo/filters/multiselect-filter.d.ts +1 -1
- package/dist/demo/filters/multiselect-filter.d.ts.map +1 -1
- package/dist/demo/filters/multiselect-filter.js.map +1 -1
- package/dist/demo/filters/range-filter.d.ts +1 -1
- package/dist/demo/filters/range-filter.d.ts.map +1 -1
- package/dist/demo/filters/range-filter.js.map +1 -1
- package/dist/demo/filters/select-filter.d.ts +2 -2
- package/dist/demo/filters/select-filter.d.ts.map +1 -1
- package/dist/demo/filters/select-filter.js.map +1 -1
- package/dist/demo/filters/single-select-filter.d.ts +1 -1
- package/dist/demo/filters/single-select-filter.d.ts.map +1 -1
- package/dist/demo/filters/single-select-filter.js.map +1 -1
- package/dist/demo/filters/table.store.d.ts +3 -2
- package/dist/demo/filters/table.store.d.ts.map +1 -1
- package/dist/demo/filters/table.store.js.map +1 -1
- package/dist/demo/footer-page-size/table.d.ts +1 -1
- package/dist/demo/footer-page-size/table.d.ts.map +1 -1
- package/dist/demo/footer-page-size/table.js.map +1 -1
- package/dist/demo/master-detail/detail-table.d.ts +2 -2
- package/dist/demo/master-detail/detail-table.d.ts.map +1 -1
- package/dist/demo/master-detail/detail-table.js.map +1 -1
- package/dist/demo/master-detail/detail-table.store.d.ts.map +1 -1
- package/dist/demo/master-detail/detail-table.store.js.map +1 -1
- package/dist/demo/master-detail/master-table.store.d.ts +2 -2
- package/dist/demo/master-detail/master-table.store.d.ts.map +1 -1
- package/dist/demo/master-detail/master-table.store.js.map +1 -1
- package/dist/demo/master-detail/product-details.d.ts +1 -1
- package/dist/demo/master-detail/product-details.d.ts.map +1 -1
- package/dist/demo/master-detail/product-details.js.map +1 -1
- package/dist/demo/master-detail/products.d.ts +1 -1
- package/dist/demo/master-detail/products.d.ts.map +1 -1
- package/dist/demo/master-detail/products.js.map +1 -1
- package/dist/demo/master-detail/table-master-detail.d.ts +1 -1
- package/dist/demo/master-detail/table-master-detail.d.ts.map +1 -1
- package/dist/demo/master-detail/table-master-detail.js.map +1 -1
- package/dist/demo/overview/actions-cell.d.ts +2 -2
- package/dist/demo/overview/actions-cell.d.ts.map +1 -1
- package/dist/demo/overview/actions-cell.js.map +1 -1
- package/dist/demo/overview/products.d.ts +1 -1
- package/dist/demo/overview/products.d.ts.map +1 -1
- package/dist/demo/overview/products.js.map +1 -1
- package/dist/demo/overview/table.d.ts +2 -2
- package/dist/demo/overview/table.d.ts.map +1 -1
- package/dist/demo/overview/table.js.map +1 -1
- package/dist/demo/overview/table.store.d.ts +1 -1
- package/dist/demo/overview/table.store.d.ts.map +1 -1
- package/dist/demo/overview/table.store.js.map +1 -1
- package/dist/demo/row-details/row-details-table.d.ts +1 -1
- package/dist/demo/row-details/row-details-table.d.ts.map +1 -1
- package/dist/demo/row-details/row-details-table.js.map +1 -1
- package/dist/demo/row-details/row-details-table.store.d.ts +1 -1
- package/dist/demo/row-details/row-details-table.store.d.ts.map +1 -1
- package/dist/demo/row-details/row-details-table.store.js.map +1 -1
- package/dist/demo/state-caching/beverages.d.ts +1 -1
- package/dist/demo/state-caching/beverages.d.ts.map +1 -1
- package/dist/demo/state-caching/beverages.js.map +1 -1
- package/dist/demo/state-caching/products.d.ts +1 -1
- package/dist/demo/state-caching/products.d.ts.map +1 -1
- package/dist/demo/state-caching/products.js.map +1 -1
- package/dist/demo/state-caching/state-caching-table.d.ts +1 -1
- package/dist/demo/state-caching/state-caching-table.d.ts.map +1 -1
- package/dist/demo/state-caching/state-caching-table.js.map +1 -1
- package/dist/demo/state-caching/state-caching-table.store.d.ts +2 -2
- package/dist/demo/state-caching/state-caching-table.store.d.ts.map +1 -1
- package/dist/demo/state-caching/state-caching-table.store.js.map +1 -1
- package/dist/details/expand-column.d.ts +2 -2
- package/dist/details/expand-column.d.ts.map +1 -1
- package/dist/details/expand-column.js.map +1 -1
- package/dist/editable-cell/boolean-editable-cell.d.ts.map +1 -1
- package/dist/editable-cell/boolean-editable-cell.js.map +1 -1
- package/dist/editable-cell/get-action-cell.d.ts +3 -3
- package/dist/editable-cell/get-action-cell.d.ts.map +1 -1
- package/dist/editable-cell/get-action-cell.js.map +1 -1
- package/dist/editable-cell/get-editable-cell.d.ts +4 -4
- package/dist/editable-cell/get-editable-cell.d.ts.map +1 -1
- package/dist/editable-cell/get-editable-cell.js.map +1 -1
- package/dist/editable-cell/get-select-editable-cell.d.ts +3 -3
- package/dist/editable-cell/get-select-editable-cell.d.ts.map +1 -1
- package/dist/editable-cell/get-select-editable-cell.js.map +1 -1
- package/dist/editable-cell/text-editable-cell.d.ts.map +1 -1
- package/dist/editable-cell/text-editable-cell.js.map +1 -1
- package/dist/export/export.d.ts +1 -1
- package/dist/export/export.d.ts.map +1 -1
- package/dist/export/export.js.map +1 -1
- package/dist/filters/async-select/async-select-filter.d.ts +3 -3
- package/dist/filters/async-select/async-select-filter.d.ts.map +1 -1
- package/dist/filters/async-select/async-select-filter.js.map +1 -1
- package/dist/filters/column-menu-filters.d.ts +2 -2
- package/dist/filters/column-menu-filters.d.ts.map +1 -1
- package/dist/filters/column-menu-filters.js.map +1 -1
- package/dist/filters/datetime-filter/datetime-filter.js.map +1 -1
- package/dist/filters/field-values-filter.d.ts +1 -1
- package/dist/filters/field-values-filter.d.ts.map +1 -1
- package/dist/filters/field-values-filter.js.map +1 -1
- package/dist/filters/multiselect-filter/multiselect-filter.d.ts +2 -2
- package/dist/filters/multiselect-filter/multiselect-filter.d.ts.map +1 -1
- package/dist/filters/multiselect-filter/multiselect-filter.js.map +1 -1
- package/dist/filters/numeric-filter-extended/numeric-filter-extended.d.ts.map +1 -1
- package/dist/filters/numeric-filter-extended/numeric-filter-extended.js.map +1 -1
- package/dist/filters/range-filter/range-filter.d.ts.map +1 -1
- package/dist/filters/range-filter/range-filter.js.map +1 -1
- package/dist/filters/select-filter/operators.d.ts +1 -1
- package/dist/filters/select-filter/operators.d.ts.map +1 -1
- package/dist/filters/select-filter/operators.js.map +1 -1
- package/dist/filters/select-filter/select-filter.d.ts +3 -3
- package/dist/filters/select-filter/select-filter.d.ts.map +1 -1
- package/dist/filters/select-filter/select-filter.js.map +1 -1
- package/dist/filters/select-filter/value-getter.d.ts +1 -1
- package/dist/filters/select-filter/value-getter.d.ts.map +1 -1
- package/dist/filters/select-filter/value-getter.js.map +1 -1
- package/dist/filters/single-select/single-select-filter.d.ts +3 -3
- package/dist/filters/single-select/single-select-filter.d.ts.map +1 -1
- package/dist/filters/single-select/single-select-filter.js.map +1 -1
- package/dist/filters/standard-filter-with-multiselect/filter-cell-ext.d.ts +3 -3
- package/dist/filters/standard-filter-with-multiselect/filter-cell-ext.d.ts.map +1 -1
- package/dist/filters/standard-filter-with-multiselect/filter-cell-ext.js.map +1 -1
- package/dist/filters/standard-filter-with-multiselect/standard-filter-with-multiselect.d.ts +4 -4
- package/dist/filters/standard-filter-with-multiselect/standard-filter-with-multiselect.d.ts.map +1 -1
- package/dist/filters/standard-filter-with-multiselect/standard-filter-with-multiselect.js.map +1 -1
- package/dist/filters/standard-filter-with-multiselect/table-column-menu-filter-ext.d.ts +1 -1
- package/dist/filters/standard-filter-with-multiselect/table-column-menu-filter-ext.d.ts.map +1 -1
- package/dist/filters/standard-filter-with-multiselect/table-column-menu-filter-ext.js.map +1 -1
- package/dist/filters/time-filter/time-filter.d.ts.map +1 -1
- package/dist/filters/time-filter/time-filter.js.map +1 -1
- package/dist/select-cell/select-cell.d.ts +2 -2
- package/dist/select-cell/select-cell.d.ts.map +1 -1
- package/dist/select-cell/select-cell.js.map +1 -1
- package/dist/table-state.d.ts +6 -5
- package/dist/table-state.d.ts.map +1 -1
- package/dist/table-state.js.map +1 -1
- package/dist/table.d.ts +5 -4
- package/dist/table.d.ts.map +1 -1
- package/dist/table.js.map +1 -1
- package/dist/use-observing-table-state/demo/components/use-observing-table-state-demo.d.ts +2 -2
- package/dist/use-observing-table-state/demo/components/use-observing-table-state-demo.d.ts.map +1 -1
- package/dist/use-observing-table-state/demo/components/use-observing-table-state-demo.js.map +1 -1
- package/dist/use-observing-table-state/use-observing-table-state.d.ts +3 -2
- package/dist/use-observing-table-state/use-observing-table-state.d.ts.map +1 -1
- package/dist/use-observing-table-state/use-observing-table-state.js.map +1 -1
- package/dist/use-observing-table-state/use-observing-table-state.stories.d.ts +1 -1
- package/dist/use-observing-table-state/use-observing-table-state.stories.d.ts.map +1 -1
- package/dist/utils/filters.d.ts +1 -1
- package/dist/utils/filters.d.ts.map +1 -1
- package/dist/utils/filters.js.map +1 -1
- package/dist/utils/use-td-props.d.ts +2 -2
- package/dist/utils/use-td-props.d.ts.map +1 -1
- package/dist/utils/use-td-props.js.map +1 -1
- package/package.json +9 -9
- package/src/demo/column-hiding/products.ts +2 -1
- package/src/demo/column-hiding/table.store.ts +4 -2
- package/src/demo/column-hiding/table.tsx +4 -2
- package/src/demo/filters/async-select-filter.tsx +2 -1
- package/src/demo/filters/categories.tsx +2 -2
- package/src/demo/filters/multiselect-filter.tsx +2 -1
- package/src/demo/filters/range-filter.tsx +2 -1
- package/src/demo/filters/select-filter.tsx +5 -3
- package/src/demo/filters/single-select-filter.tsx +2 -1
- package/src/demo/filters/table.store.ts +4 -7
- package/src/demo/footer-page-size/table.tsx +2 -1
- package/src/demo/master-detail/detail-table.store.ts +2 -1
- package/src/demo/master-detail/detail-table.tsx +6 -3
- package/src/demo/master-detail/master-table.store.ts +4 -3
- package/src/demo/master-detail/product-details.ts +1 -1
- package/src/demo/master-detail/products.ts +2 -1
- package/src/demo/master-detail/table-master-detail.tsx +4 -2
- package/src/demo/overview/actions-cell.tsx +4 -3
- package/src/demo/overview/products.ts +2 -1
- package/src/demo/overview/table.store.ts +2 -1
- package/src/demo/overview/table.tsx +5 -4
- package/src/demo/row-details/row-details-table.store.ts +1 -1
- package/src/demo/row-details/row-details-table.tsx +4 -3
- package/src/demo/state-caching/beverages.ts +1 -1
- package/src/demo/state-caching/products.ts +1 -1
- package/src/demo/state-caching/state-caching-table.store.ts +2 -2
- package/src/demo/state-caching/state-caching-table.tsx +2 -1
- package/src/details/expand-column.tsx +4 -2
- package/src/editable-cell/boolean-editable-cell.tsx +3 -2
- package/src/editable-cell/get-action-cell.tsx +3 -3
- package/src/editable-cell/get-editable-cell.tsx +4 -4
- package/src/editable-cell/get-select-editable-cell.tsx +7 -5
- package/src/editable-cell/text-editable-cell.tsx +5 -3
- package/src/export/export.tsx +1 -1
- package/src/filters/async-select/async-select-filter.tsx +7 -14
- package/src/filters/column-menu-filters.tsx +4 -7
- package/src/filters/datetime-filter/datetime-filter.tsx +4 -4
- package/src/filters/field-values-filter.tsx +5 -3
- package/src/filters/multiselect-filter/multiselect-filter.tsx +6 -6
- package/src/filters/numeric-filter-extended/numeric-filter-extended.tsx +6 -4
- package/src/filters/range-filter/range-filter.tsx +5 -3
- package/src/filters/select-filter/operators.ts +1 -1
- package/src/filters/select-filter/select-filter.tsx +9 -16
- package/src/filters/select-filter/value-getter.ts +1 -1
- package/src/filters/single-select/single-select-filter.tsx +7 -7
- package/src/filters/standard-filter-with-multiselect/filter-cell-ext.tsx +4 -5
- package/src/filters/standard-filter-with-multiselect/standard-filter-with-multiselect.tsx +7 -6
- package/src/filters/standard-filter-with-multiselect/table-column-menu-filter-ext.tsx +1 -1
- package/src/filters/time-filter/time-filter.tsx +4 -2
- package/src/select-cell/select-cell.tsx +3 -3
- package/src/table-state.ts +6 -9
- package/src/table.tsx +10 -24
- package/src/use-observing-table-state/demo/components/use-observing-table-state-demo.tsx +4 -2
- package/src/use-observing-table-state/use-observing-table-state.stories.tsx +1 -1
- package/src/use-observing-table-state/use-observing-table-state.ts +4 -2
- package/src/utils/__tests__/filters.test.ts +1 -1
- package/src/utils/filters.ts +2 -6
- package/src/utils/use-td-props.ts +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/utils/use-td-props.ts"],"sourcesContent":["import { TableCellProps } from '@servicetitan/design-system';\nimport { useTableKeyboardNavigation } from '@progress/kendo-react-data-tools';\nimport { GRID_COL_INDEX_ATTRIBUTE } from '@progress/kendo-react-grid';\nimport { ComponentProps } from 'react';\n\nconst useTdProps = ({\n id,\n colSpan,\n ariaColumnIndex,\n isSelected,\n columnIndex,\n}: TableCellProps): ComponentProps<'td'> & {\n [GRID_COL_INDEX_ATTRIBUTE]?: number;\n} => {\n const navigationAttributes = useTableKeyboardNavigation(id);\n return {\n colSpan,\n 'role': 'gridcell',\n 'aria-colindex': ariaColumnIndex,\n 'aria-selected': isSelected,\n [GRID_COL_INDEX_ATTRIBUTE]: columnIndex,\n ...navigationAttributes,\n };\n};\n\nexport { useTdProps };\n"],"names":["useTableKeyboardNavigation","GRID_COL_INDEX_ATTRIBUTE","useTdProps","id","colSpan","ariaColumnIndex","isSelected","columnIndex","navigationAttributes"],"mappings":"AACA,SAASA,0BAA0B,QAAQ,mCAAmC;AAC9E,SAASC,wBAAwB,QAAQ,6BAA6B;AAGtE,MAAMC,aAAa,CAAC,EAChBC,EAAE,EACFC,OAAO,EACPC,eAAe,EACfC,UAAU,EACVC,WAAW,EACE;IAGb,MAAMC,uBAAuBR,2BAA2BG;IACxD,OAAO;QACHC;QACA,QAAQ;QACR,iBAAiBC;QACjB,iBAAiBC;QACjB,CAACL,yBAAyB,EAAEM;QAC5B,GAAGC,oBAAoB;IAC3B;AACJ;AAEA,SAASN,UAAU,GAAG"}
|
|
1
|
+
{"version":3,"sources":["../../src/utils/use-td-props.ts"],"sourcesContent":["import type { TableCellProps } from '@servicetitan/design-system';\nimport { useTableKeyboardNavigation } from '@progress/kendo-react-data-tools';\nimport { GRID_COL_INDEX_ATTRIBUTE } from '@progress/kendo-react-grid';\nimport type { ComponentProps } from 'react';\n\nconst useTdProps = ({\n id,\n colSpan,\n ariaColumnIndex,\n isSelected,\n columnIndex,\n}: TableCellProps): ComponentProps<'td'> & {\n [GRID_COL_INDEX_ATTRIBUTE]?: number;\n} => {\n const navigationAttributes = useTableKeyboardNavigation(id);\n return {\n colSpan,\n 'role': 'gridcell',\n 'aria-colindex': ariaColumnIndex,\n 'aria-selected': isSelected,\n [GRID_COL_INDEX_ATTRIBUTE]: columnIndex,\n ...navigationAttributes,\n };\n};\n\nexport { useTdProps };\n"],"names":["useTableKeyboardNavigation","GRID_COL_INDEX_ATTRIBUTE","useTdProps","id","colSpan","ariaColumnIndex","isSelected","columnIndex","navigationAttributes"],"mappings":"AACA,SAASA,0BAA0B,QAAQ,mCAAmC;AAC9E,SAASC,wBAAwB,QAAQ,6BAA6B;AAGtE,MAAMC,aAAa,CAAC,EAChBC,EAAE,EACFC,OAAO,EACPC,eAAe,EACfC,UAAU,EACVC,WAAW,EACE;IAGb,MAAMC,uBAAuBR,2BAA2BG;IACxD,OAAO;QACHC;QACA,QAAQ;QACR,iBAAiBC;QACjB,iBAAiBC;QACjB,CAACL,yBAAyB,EAAEM;QAC5B,GAAGC,oBAAoB;IAC3B;AACJ;AAEA,SAASN,UAAU,GAAG"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@servicetitan/table",
|
|
3
|
-
"version": "41.
|
|
3
|
+
"version": "41.2.0",
|
|
4
4
|
"description": "",
|
|
5
5
|
"homepage": "https://docs.st.dev/docs/frontend/table",
|
|
6
6
|
"repository": {
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
"dependencies": {
|
|
19
19
|
"@progress/kendo-ooxml": "~1.6.2",
|
|
20
20
|
"@progress/kendo-react-excel-export": "~5.5.0",
|
|
21
|
-
"@servicetitan/react-hooks": "^7.
|
|
21
|
+
"@servicetitan/react-hooks": "^7.7.0",
|
|
22
22
|
"classnames": "^2.3.1",
|
|
23
23
|
"memoize-one": "~6.0.0"
|
|
24
24
|
},
|
|
@@ -29,11 +29,11 @@
|
|
|
29
29
|
"@progress/kendo-react-grid": "~5.5.0",
|
|
30
30
|
"@progress/kendo-react-inputs": "~5.5.0",
|
|
31
31
|
"@progress/kendo-react-pdf": "~5.5.0",
|
|
32
|
-
"@servicetitan/data-query": "^41.
|
|
32
|
+
"@servicetitan/data-query": "^41.2.0",
|
|
33
33
|
"@servicetitan/design-system": "~14.5.1",
|
|
34
|
-
"@servicetitan/form": "^41.
|
|
35
|
-
"@servicetitan/react-ioc": "^
|
|
36
|
-
"@servicetitan/suppress-warnings": "^
|
|
34
|
+
"@servicetitan/form": "^41.2.0",
|
|
35
|
+
"@servicetitan/react-ioc": "^38.0.0",
|
|
36
|
+
"@servicetitan/suppress-warnings": "^38.0.0",
|
|
37
37
|
"@types/accounting": "~0.4.2",
|
|
38
38
|
"@types/react": "~18.2.55",
|
|
39
39
|
"accounting": "~0.4.1",
|
|
@@ -51,9 +51,9 @@
|
|
|
51
51
|
"@progress/kendo-react-grid": "~5.5.0",
|
|
52
52
|
"@progress/kendo-react-inputs": "~5.5.0",
|
|
53
53
|
"@progress/kendo-react-pdf": "~5.5.0",
|
|
54
|
-
"@servicetitan/data-query": "^41.
|
|
54
|
+
"@servicetitan/data-query": "^41.2.0",
|
|
55
55
|
"@servicetitan/design-system": ">=13.2.1",
|
|
56
|
-
"@servicetitan/form": "^41.
|
|
56
|
+
"@servicetitan/form": "^41.2.0",
|
|
57
57
|
"@servicetitan/react-ioc": ">21.0.0",
|
|
58
58
|
"@servicetitan/suppress-warnings": ">21.0.0",
|
|
59
59
|
"accounting": "~0.4.1",
|
|
@@ -70,5 +70,5 @@
|
|
|
70
70
|
"cli": {
|
|
71
71
|
"webpack": false
|
|
72
72
|
},
|
|
73
|
-
"gitHead": "
|
|
73
|
+
"gitHead": "a27c08d5c4a695eb24110ec1477fa23ccf28a148"
|
|
74
74
|
}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { injectable } from '@servicetitan/react-ioc';
|
|
2
|
-
import { IdType
|
|
3
|
-
import {
|
|
2
|
+
import type { IdType } from '../..';
|
|
3
|
+
import { InMemoryDataSource, TableState } from '../..';
|
|
4
|
+
import type { Product } from './product';
|
|
5
|
+
import { UserRole, Supplier } from './product';
|
|
4
6
|
import { products } from './products';
|
|
5
7
|
|
|
6
8
|
@injectable()
|
|
@@ -1,8 +1,10 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { FC, ChangeEvent } from 'react';
|
|
2
|
+
import { Fragment, memo, useCallback, useState } from 'react';
|
|
2
3
|
import { provide, useDependencies } from '@servicetitan/react-ioc';
|
|
3
4
|
import { observer } from 'mobx-react';
|
|
4
5
|
|
|
5
|
-
import {
|
|
6
|
+
import type { TableCellProps } from '../..';
|
|
7
|
+
import { Table, TableColumn } from '../..';
|
|
6
8
|
import { TableStore } from './table.store';
|
|
7
9
|
import { Supplier } from './product';
|
|
8
10
|
import { TableCell } from '@servicetitan/design-system';
|
|
@@ -1,13 +1,15 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { FC } from 'react';
|
|
2
|
+
import { useMemo, Fragment } from 'react';
|
|
2
3
|
import { observer } from 'mobx-react';
|
|
3
4
|
import { Banner } from '@servicetitan/design-system';
|
|
4
5
|
import { provide, useDependencies } from '@servicetitan/react-ioc';
|
|
5
6
|
|
|
6
|
-
import {
|
|
7
|
+
import type { TableCellProps } from '../..';
|
|
8
|
+
import { Table, TableColumn, selectColumnMenuFilter } from '../..';
|
|
7
9
|
|
|
8
10
|
import { TableStore } from './table.store';
|
|
9
11
|
import { categories, CategoryCell } from './categories';
|
|
10
|
-
import { Product } from '../overview/product';
|
|
12
|
+
import type { Product } from '../overview/product';
|
|
11
13
|
|
|
12
14
|
export const PackageCell: FC<TableCellProps> = ({ dataItem, tdProps }) => (
|
|
13
15
|
<td {...tdProps}>{dataItem?.Package?.PackageName}</td>
|
|
@@ -1,13 +1,10 @@
|
|
|
1
1
|
import { injectable } from '@servicetitan/react-ioc';
|
|
2
2
|
|
|
3
|
-
import {
|
|
4
|
-
|
|
5
|
-
TableState,
|
|
6
|
-
AsyncSelectFilterDataFetcher,
|
|
7
|
-
SelectFilterDataFetcher,
|
|
8
|
-
} from '../..';
|
|
3
|
+
import type { AsyncSelectFilterDataFetcher, SelectFilterDataFetcher } from '../..';
|
|
4
|
+
import { InMemoryDataSource, TableState } from '../..';
|
|
9
5
|
import { products } from '../overview/products';
|
|
10
|
-
import {
|
|
6
|
+
import type { Category } from './categories';
|
|
7
|
+
import { categories } from './categories';
|
|
11
8
|
|
|
12
9
|
@injectable()
|
|
13
10
|
export class TableStore {
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { injectable, inject } from '@servicetitan/react-ioc';
|
|
2
2
|
|
|
3
|
-
import {
|
|
3
|
+
import type { Lambda } from 'mobx';
|
|
4
|
+
import { observable, action, observe, computed, makeObservable } from 'mobx';
|
|
4
5
|
|
|
5
6
|
import { TableState } from '../..';
|
|
6
7
|
|
|
@@ -1,12 +1,15 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { FC } from 'react';
|
|
2
|
+
import { useEffect } from 'react';
|
|
2
3
|
|
|
3
4
|
import { provide, useDependencies } from '@servicetitan/react-ioc';
|
|
4
5
|
|
|
5
6
|
import { observer } from 'mobx-react';
|
|
6
7
|
|
|
7
|
-
import {
|
|
8
|
+
import type { CheckboxProps } from '@servicetitan/design-system';
|
|
9
|
+
import { Icon, Checkbox } from '@servicetitan/design-system';
|
|
8
10
|
|
|
9
|
-
import {
|
|
11
|
+
import type { TableDetailRowProps } from '../..';
|
|
12
|
+
import { Table, TableColumn } from '../..';
|
|
10
13
|
|
|
11
14
|
import { DetailTableStore } from './detail-table.store';
|
|
12
15
|
|
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
import { injectable } from '@servicetitan/react-ioc';
|
|
2
2
|
|
|
3
|
-
import {
|
|
3
|
+
import type { Lambda } from 'mobx';
|
|
4
|
+
import { computed, observe, makeObservable } from 'mobx';
|
|
4
5
|
|
|
5
6
|
import { InMemoryDataSource, TableState } from '../..';
|
|
6
7
|
|
|
7
|
-
import { Product } from './product';
|
|
8
|
+
import type { Product } from './product';
|
|
8
9
|
import { products } from './products';
|
|
9
10
|
|
|
10
|
-
import { ProductDetail } from './product-detail';
|
|
11
|
+
import type { ProductDetail } from './product-detail';
|
|
11
12
|
import { productDetails } from './product-details';
|
|
12
13
|
|
|
13
14
|
@injectable()
|
|
@@ -1,10 +1,12 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { FC } from 'react';
|
|
2
|
+
import { useEffect } from 'react';
|
|
2
3
|
|
|
3
4
|
import { provide, useDependencies } from '@servicetitan/react-ioc';
|
|
4
5
|
|
|
5
6
|
import { Button } from '@servicetitan/design-system';
|
|
6
7
|
|
|
7
|
-
import {
|
|
8
|
+
import type { TableCellProps, TableExpandChangeEvent } from '../..';
|
|
9
|
+
import { Table, TableColumn } from '../..';
|
|
8
10
|
|
|
9
11
|
import { MasterTableStore } from './master-table.store';
|
|
10
12
|
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import { FC } from 'react';
|
|
1
|
+
import type { FC } from 'react';
|
|
2
2
|
|
|
3
3
|
import { Button, Icon, Stack } from '@servicetitan/design-system';
|
|
4
4
|
|
|
5
|
-
import { TableCellProps,
|
|
5
|
+
import type { TableCellProps, EditActionProps } from '../..';
|
|
6
|
+
import { getActionCell } from '../..';
|
|
6
7
|
|
|
7
|
-
import { Product } from './product';
|
|
8
|
+
import type { Product } from './product';
|
|
8
9
|
|
|
9
10
|
const ViewAction: FC<TableCellProps<Product>> = ({ tableState, dataItem, tdProps }) => {
|
|
10
11
|
if (!tableState) {
|
|
@@ -7,7 +7,8 @@ import { InMemoryDataSource, TableState } from '../..';
|
|
|
7
7
|
import { setFormStateValues, FormValidators } from '@servicetitan/form';
|
|
8
8
|
import { FormState, FieldState } from 'formstate';
|
|
9
9
|
|
|
10
|
-
import { Product
|
|
10
|
+
import type { Product } from './product';
|
|
11
|
+
import { UserRole, Supplier } from './product';
|
|
11
12
|
import { products } from './products';
|
|
12
13
|
|
|
13
14
|
@injectable()
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { FC, ReactElement } from 'react';
|
|
2
|
+
import { useMemo, cloneElement, Fragment } from 'react';
|
|
2
3
|
|
|
3
4
|
import { provide, useDependencies } from '@servicetitan/react-ioc';
|
|
4
5
|
|
|
@@ -6,11 +7,11 @@ import { observer } from 'mobx-react';
|
|
|
6
7
|
|
|
7
8
|
import { Stack, ButtonGroup, Button, Tag, DatePicker } from '@servicetitan/design-system';
|
|
8
9
|
|
|
10
|
+
import type { TableCellProps, EditorProps } from '../..';
|
|
9
11
|
import {
|
|
10
12
|
Table,
|
|
11
13
|
TableColumn,
|
|
12
14
|
TableCell,
|
|
13
|
-
TableCellProps,
|
|
14
15
|
TextEditableCell,
|
|
15
16
|
BooleanEditableCell,
|
|
16
17
|
getSelectEditableCell,
|
|
@@ -20,7 +21,6 @@ import {
|
|
|
20
21
|
multiSelectColumnMenuFilter,
|
|
21
22
|
CurrencyRangeColumnMenuFilter,
|
|
22
23
|
getEditableCell,
|
|
23
|
-
EditorProps,
|
|
24
24
|
} from '../..';
|
|
25
25
|
import { Export } from '../../export';
|
|
26
26
|
|
|
@@ -29,7 +29,8 @@ import { TableStore } from './table.store';
|
|
|
29
29
|
import { ActionsCell } from './actions-cell';
|
|
30
30
|
|
|
31
31
|
import { NumberInput, enumToOptions, getEnumKeys } from '@servicetitan/form';
|
|
32
|
-
import { Product
|
|
32
|
+
import type { Product } from './product';
|
|
33
|
+
import { UserRole, Supplier } from './product';
|
|
33
34
|
|
|
34
35
|
const UserRoleColumnMenuFilter = multiSelectColumnMenuFilter(getEnumKeys(UserRole), userRole => (
|
|
35
36
|
<Tag compact color={UserRole[userRole] === UserRole.Owner ? 'success' : 'default'}>
|
|
@@ -2,7 +2,7 @@ import { injectable } from '@servicetitan/react-ioc';
|
|
|
2
2
|
|
|
3
3
|
import { InMemoryDataSource, TableState } from '../..';
|
|
4
4
|
|
|
5
|
-
import { Product } from '../overview/product';
|
|
5
|
+
import type { Product } from '../overview/product';
|
|
6
6
|
import { products } from '../overview/products';
|
|
7
7
|
|
|
8
8
|
@injectable()
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import { Stack } from '@servicetitan/design-system';
|
|
2
2
|
import { provide, useDependencies } from '@servicetitan/react-ioc';
|
|
3
3
|
import { observer } from 'mobx-react';
|
|
4
|
-
import { FC } from 'react';
|
|
4
|
+
import type { FC } from 'react';
|
|
5
5
|
|
|
6
|
-
import {
|
|
6
|
+
import type { TableDetailRowProps } from '../..';
|
|
7
|
+
import { Table, TableColumn, useRowExpandColumn } from '../..';
|
|
7
8
|
|
|
8
|
-
import { Product } from '../overview/product';
|
|
9
|
+
import type { Product } from '../overview/product';
|
|
9
10
|
import { RowDetailsTableStore } from './row-details-table.store';
|
|
10
11
|
|
|
11
12
|
const DetailsRow: FC<TableDetailRowProps> = ({ dataItem }) => {
|
|
@@ -3,8 +3,8 @@ import { InMemoryDataSource, TableState } from '../..';
|
|
|
3
3
|
|
|
4
4
|
import { products } from './products';
|
|
5
5
|
import { beverages } from './beverages';
|
|
6
|
-
import { Product } from './product';
|
|
7
|
-
import { TableStateModel } from '../../table-state';
|
|
6
|
+
import type { Product } from './product';
|
|
7
|
+
import type { TableStateModel } from '../../table-state';
|
|
8
8
|
|
|
9
9
|
@injectable()
|
|
10
10
|
export class TableStore {
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { FC } from 'react';
|
|
2
|
+
import { Fragment } from 'react';
|
|
2
3
|
import { provide, useDependencies } from '@servicetitan/react-ioc';
|
|
3
4
|
import { observer } from 'mobx-react';
|
|
4
5
|
import { ButtonGroup, Button } from '@servicetitan/design-system';
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { Button } from '@servicetitan/design-system';
|
|
2
|
-
import { FC, SyntheticEvent
|
|
3
|
-
import {
|
|
2
|
+
import type { FC, SyntheticEvent } from 'react';
|
|
3
|
+
import { useCallback, useMemo } from 'react';
|
|
4
|
+
import type { TableCellProps } from '../index';
|
|
5
|
+
import { TableColumn } from '../index';
|
|
4
6
|
|
|
5
7
|
export const RowExpandCell: FC<TableCellProps> = ({
|
|
6
8
|
dataItem,
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import { FC } from 'react';
|
|
1
|
+
import type { FC } from 'react';
|
|
2
2
|
import { observer } from 'mobx-react';
|
|
3
3
|
|
|
4
4
|
import { Checkbox } from '@servicetitan/design-system';
|
|
5
5
|
|
|
6
|
-
import {
|
|
6
|
+
import type { EditorProps } from './get-editable-cell';
|
|
7
|
+
import { getEditableCell } from './get-editable-cell';
|
|
7
8
|
|
|
8
9
|
const Editor = observer<FC<EditorProps<boolean>>>(
|
|
9
10
|
({ fieldState: { value, onChange }, className, tdProps }) => {
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { ComponentType } from 'react';
|
|
1
|
+
import type { ComponentType } from 'react';
|
|
2
2
|
|
|
3
3
|
import { TableCell } from '@servicetitan/design-system';
|
|
4
|
-
import { TableCellProps } from '../table';
|
|
4
|
+
import type { TableCellProps } from '../table';
|
|
5
5
|
|
|
6
|
-
import { PossibleFormState } from '../table-state';
|
|
6
|
+
import type { PossibleFormState } from '../table-state';
|
|
7
7
|
|
|
8
8
|
export interface EditActionProps<T> extends TableCellProps<T> {
|
|
9
9
|
formState: PossibleFormState<T>;
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { ComponentType } from 'react';
|
|
1
|
+
import type { ComponentType } from 'react';
|
|
2
2
|
|
|
3
|
-
import { FieldState } from 'formstate';
|
|
3
|
+
import type { FieldState } from 'formstate';
|
|
4
4
|
|
|
5
5
|
import { TableCell } from '@servicetitan/design-system';
|
|
6
|
-
import { TableCellProps } from '../table';
|
|
7
|
-
import { PossibleFormState } from '../table-state';
|
|
6
|
+
import type { TableCellProps } from '../table';
|
|
7
|
+
import type { PossibleFormState } from '../table-state';
|
|
8
8
|
|
|
9
9
|
export interface EditorProps<T, TRow = unknown> extends TableCellProps<any> {
|
|
10
10
|
fieldState: FieldState<T>;
|
|
@@ -1,13 +1,15 @@
|
|
|
1
|
-
import { ComponentType, FC } from 'react';
|
|
1
|
+
import type { ComponentType, FC } from 'react';
|
|
2
2
|
|
|
3
3
|
import { observer } from 'mobx-react';
|
|
4
4
|
|
|
5
|
-
import {
|
|
5
|
+
import type { DropDownListChangeEvent } from '@progress/kendo-react-dropdowns';
|
|
6
|
+
import { DropDownList } from '@progress/kendo-react-dropdowns';
|
|
6
7
|
|
|
7
|
-
import { TableCellProps } from '../table';
|
|
8
|
-
import {
|
|
8
|
+
import type { TableCellProps } from '../table';
|
|
9
|
+
import type { EditorProps } from './get-editable-cell';
|
|
10
|
+
import { getEditableCell } from './get-editable-cell';
|
|
9
11
|
|
|
10
|
-
import { Option } from '@servicetitan/form';
|
|
12
|
+
import type { Option } from '@servicetitan/form';
|
|
11
13
|
|
|
12
14
|
import classNames from 'classnames';
|
|
13
15
|
|
|
@@ -1,10 +1,12 @@
|
|
|
1
|
-
import { FC } from 'react';
|
|
1
|
+
import type { FC } from 'react';
|
|
2
2
|
|
|
3
3
|
import { observer } from 'mobx-react';
|
|
4
4
|
|
|
5
|
-
import {
|
|
5
|
+
import type { InputChangeEvent } from '@progress/kendo-react-inputs';
|
|
6
|
+
import { Input } from '@progress/kendo-react-inputs';
|
|
6
7
|
|
|
7
|
-
import {
|
|
8
|
+
import type { EditorProps } from './get-editable-cell';
|
|
9
|
+
import { getEditableCell } from './get-editable-cell';
|
|
8
10
|
|
|
9
11
|
import { Label } from '@servicetitan/form';
|
|
10
12
|
|
package/src/export/export.tsx
CHANGED
|
@@ -1,19 +1,12 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { SyntheticEvent, ReactNode, KeyboardEvent, FC } from 'react';
|
|
2
|
+
import { Component, Fragment } from 'react';
|
|
2
3
|
|
|
3
|
-
import {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
Radio,
|
|
7
|
-
Input,
|
|
8
|
-
Spinner,
|
|
9
|
-
BodyText,
|
|
10
|
-
} from '@servicetitan/design-system';
|
|
11
|
-
import { IdType } from '@servicetitan/data-query';
|
|
4
|
+
import type { TableFilterCellProps } from '@servicetitan/design-system';
|
|
5
|
+
import { Checkbox, Radio, Input, Spinner, BodyText } from '@servicetitan/design-system';
|
|
6
|
+
import type { IdType } from '@servicetitan/data-query';
|
|
12
7
|
|
|
13
|
-
import {
|
|
14
|
-
|
|
15
|
-
renderCustomColumnMenuFilter,
|
|
16
|
-
} from '../column-menu-filters';
|
|
8
|
+
import type { CustomColumnMenuFilterSingleOpts } from '../column-menu-filters';
|
|
9
|
+
import { renderCustomColumnMenuFilter } from '../column-menu-filters';
|
|
17
10
|
import { makeObservable, observable, runInAction } from 'mobx';
|
|
18
11
|
import { observer } from 'mobx-react';
|
|
19
12
|
|
|
@@ -1,10 +1,7 @@
|
|
|
1
|
-
import { ComponentType, CSSProperties, FC } from 'react';
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
TableFilterCellProps,
|
|
6
|
-
} from '@servicetitan/design-system';
|
|
7
|
-
import { TableColumnMenuFilterUIProps } from '..';
|
|
1
|
+
import type { ComponentType, CSSProperties, FC } from 'react';
|
|
2
|
+
import type { TableColumnMenuProps, TableFilterCellProps } from '@servicetitan/design-system';
|
|
3
|
+
import { TableColumnMenuFilter } from '@servicetitan/design-system';
|
|
4
|
+
import type { TableColumnMenuFilterUIProps } from '..';
|
|
8
5
|
import { DropDownList } from '@progress/kendo-react-dropdowns';
|
|
9
6
|
|
|
10
7
|
export const StandardColumnMenuFilter = (props: TableColumnMenuProps) => (
|
|
@@ -3,13 +3,13 @@ import { Component, Fragment } from 'react';
|
|
|
3
3
|
import { observer } from 'mobx-react';
|
|
4
4
|
import { observable, action, makeObservable } from 'mobx';
|
|
5
5
|
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
|
|
6
|
+
import type { DropDownListChangeEvent } from '@progress/kendo-react-dropdowns';
|
|
7
|
+
import { DropDownList } from '@progress/kendo-react-dropdowns';
|
|
8
|
+
import type {
|
|
9
9
|
DatePickerChangeEvent,
|
|
10
|
-
TimePicker,
|
|
11
10
|
TimePickerChangeEvent,
|
|
12
11
|
} from '@progress/kendo-react-dateinputs';
|
|
12
|
+
import { DatePicker, TimePicker } from '@progress/kendo-react-dateinputs';
|
|
13
13
|
|
|
14
14
|
import {
|
|
15
15
|
IsUnaryFilter,
|
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
import type { TableFilterCellProps } from '@servicetitan/design-system';
|
|
2
2
|
import { Checkbox } from '@servicetitan/design-system';
|
|
3
|
-
import {
|
|
3
|
+
import type { FormEvent } from 'react';
|
|
4
|
+
import { Component, Fragment } from 'react';
|
|
4
5
|
|
|
5
6
|
import { observer } from 'mobx-react';
|
|
6
7
|
import { observable, computed, runInAction, action, makeObservable } from 'mobx';
|
|
7
8
|
|
|
8
|
-
import {
|
|
9
|
+
import type { InputChangeEvent } from '@progress/kendo-react-inputs';
|
|
10
|
+
import { Input } from '@progress/kendo-react-inputs';
|
|
9
11
|
|
|
10
|
-
import { DataSource, IdType } from '@servicetitan/data-query';
|
|
12
|
+
import type { DataSource, IdType } from '@servicetitan/data-query';
|
|
11
13
|
import { TableState } from '../table-state';
|
|
12
14
|
import { renderCustomColumnMenuFilter } from './column-menu-filters';
|
|
13
15
|
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { SyntheticEvent, ReactNode, FC } from 'react';
|
|
2
|
+
import { Component } from 'react';
|
|
2
3
|
|
|
3
|
-
import { TableFilterCellProps
|
|
4
|
+
import type { TableFilterCellProps } from '@servicetitan/design-system';
|
|
5
|
+
import { Checkbox } from '@servicetitan/design-system';
|
|
4
6
|
|
|
5
|
-
import {
|
|
6
|
-
|
|
7
|
-
renderCustomColumnMenuFilter,
|
|
8
|
-
} from '../column-menu-filters';
|
|
7
|
+
import type { CustomColumnMenuFilterSingleOpts } from '../column-menu-filters';
|
|
8
|
+
import { renderCustomColumnMenuFilter } from '../column-menu-filters';
|
|
9
9
|
|
|
10
10
|
interface SelectorProps<T> {
|
|
11
11
|
options: T[];
|
|
@@ -1,9 +1,11 @@
|
|
|
1
|
-
import { FC, SyntheticEvent } from 'react';
|
|
1
|
+
import type { FC, SyntheticEvent } from 'react';
|
|
2
2
|
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
3
|
+
import type { NumericTextBoxChangeEvent } from '@progress/kendo-react-inputs';
|
|
4
|
+
import { NumericTextBox } from '@progress/kendo-react-inputs';
|
|
5
|
+
import type { DropDownListChangeEvent } from '@progress/kendo-react-dropdowns';
|
|
6
|
+
import { DropDownList } from '@progress/kendo-react-dropdowns';
|
|
5
7
|
|
|
6
|
-
import { GridColumnMenuFilterCellProps as TableColumnMenuFilterCellProps } from '@progress/kendo-react-grid/dist/npm/columnMenu/GridColumnMenuFilterCell';
|
|
8
|
+
import type { GridColumnMenuFilterCellProps as TableColumnMenuFilterCellProps } from '@progress/kendo-react-grid/dist/npm/columnMenu/GridColumnMenuFilterCell';
|
|
7
9
|
import {
|
|
8
10
|
IsUnaryFilter,
|
|
9
11
|
cellOperatorChange,
|