@ztwoint/z-ui 0.1.45 → 0.1.46

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (58) hide show
  1. package/dist/components/table/components/pagination/index.d.ts +1 -0
  2. package/dist/components/table/components/pagination/pagination.hook.d.ts +1 -1
  3. package/dist/components/table/components/pagination/pagination.hook.js +20 -16
  4. package/dist/components/table/components/table-filter/filters/checkbox.js +35 -51
  5. package/dist/components/table/components/table-filter/filters/text.js +41 -39
  6. package/dist/components/table/components/table-filter/index.d.ts +4 -1
  7. package/dist/components/table/components/table-filter/selected-filters-display/index.d.ts +2 -0
  8. package/dist/components/table/components/table-filter/selected-filters-display/selected-filters-display.d.ts +3 -0
  9. package/dist/components/table/components/table-filter/selected-filters-display/selected-filters-display.js +30 -0
  10. package/dist/components/table/components/table-filter/selected-filters-display/selected-filters-display.type.d.ts +12 -0
  11. package/dist/components/table/components/table-filter/selected-filters-display/selected-filters-display.utils.d.ts +6 -0
  12. package/dist/components/table/components/table-filter/selected-filters-display/selected-filters-display.utils.js +26 -0
  13. package/dist/components/table/components/table-filter/table-filter-button.d.ts +2 -0
  14. package/dist/components/table/components/table-filter/table-filter-button.js +103 -0
  15. package/dist/components/table/components/table-filter/table-filter-column-button.d.ts +3 -0
  16. package/dist/components/table/components/table-filter/table-filter-column-button.js +78 -0
  17. package/dist/components/table/components/table-filter/table-filter-column-button.type.d.ts +3 -0
  18. package/dist/components/table/components/table-filter/table-filter-provider.d.ts +14 -0
  19. package/dist/components/table/components/table-filter/table-filter-provider.js +32 -0
  20. package/dist/components/table/components/table-filter/table-filter.context.d.ts +21 -0
  21. package/dist/components/table/components/table-filter/table-filter.context.js +13 -0
  22. package/dist/components/table/components/table-filter/table-filter.hook.d.ts +1 -2
  23. package/dist/components/table/components/table-filter/table-filter.hook.js +39 -37
  24. package/dist/components/table/index.d.ts +1 -2
  25. package/dist/components/table/table-provider.d.ts +1 -1
  26. package/dist/components/table/table-provider.js +13 -13
  27. package/dist/components/table/table.type.d.ts +2 -0
  28. package/dist/components/table/table.utils.d.ts +0 -1
  29. package/dist/components/table/table.utils.js +5 -3
  30. package/dist/components/table-card/table-card.js +69 -64
  31. package/dist/components/table-card/table-card.type.d.ts +7 -7
  32. package/dist/css/styles/tailwind.css +1 -1
  33. package/dist/hooks/useClickOutside.d.ts +1 -0
  34. package/dist/hooks/useClickOutside.js +14 -0
  35. package/dist/index.js +107 -110
  36. package/dist/types/components/table/components/pagination/index.d.ts +1 -0
  37. package/dist/types/components/table/components/pagination/pagination.hook.d.ts +1 -1
  38. package/dist/types/components/table/components/table-filter/index.d.ts +4 -1
  39. package/dist/types/components/table/components/table-filter/selected-filters-display/index.d.ts +2 -0
  40. package/dist/types/components/table/components/table-filter/selected-filters-display/selected-filters-display.d.ts +3 -0
  41. package/dist/types/components/table/components/table-filter/selected-filters-display/selected-filters-display.type.d.ts +12 -0
  42. package/dist/types/components/table/components/table-filter/selected-filters-display/selected-filters-display.utils.d.ts +6 -0
  43. package/dist/types/components/table/components/table-filter/table-filter-button.d.ts +2 -0
  44. package/dist/types/components/table/components/table-filter/table-filter-column-button.d.ts +3 -0
  45. package/dist/types/components/table/components/table-filter/table-filter-column-button.type.d.ts +3 -0
  46. package/dist/types/components/table/components/table-filter/table-filter-provider.d.ts +14 -0
  47. package/dist/types/components/table/components/table-filter/table-filter.context.d.ts +21 -0
  48. package/dist/types/components/table/components/table-filter/table-filter.hook.d.ts +1 -2
  49. package/dist/types/components/table/index.d.ts +1 -2
  50. package/dist/types/components/table/table-provider.d.ts +1 -1
  51. package/dist/types/components/table/table.type.d.ts +2 -0
  52. package/dist/types/components/table/table.utils.d.ts +0 -1
  53. package/dist/types/components/table-card/table-card.type.d.ts +7 -7
  54. package/dist/types/hooks/useClickOutside.d.ts +1 -0
  55. package/package.json +2 -1
  56. package/dist/components/table/components/table-filter/table-filter.d.ts +0 -9
  57. package/dist/components/table/components/table-filter/table-filter.js +0 -120
  58. package/dist/types/components/table/components/table-filter/table-filter.d.ts +0 -9
@@ -1,120 +0,0 @@
1
- import { jsxs as l, jsx as t } from "react/jsx-runtime";
2
- import { Button as i } from "../../../button/button.js";
3
- import T from "./table-filter.hook.js";
4
- import C from "./filters/text.js";
5
- import j from "./filters/boolean.js";
6
- import z from "./filters/number/number.js";
7
- import A from "./filters/checkbox.js";
8
- import O from "../../../assets/icons/circle-check-filled.js";
9
- const E = ({
10
- filterComponents: n = {},
11
- schema: d,
12
- filter: o
13
- }) => {
14
- const {
15
- selectedColumn: r,
16
- setSelectedColumn: p,
17
- getFilterForColumn: x,
18
- hasFilterForColumn: b,
19
- updateColumnFilter: f,
20
- clearAllFilters: v,
21
- applyFilters: k,
22
- hasActiveFilters: s,
23
- isOpen: m,
24
- setIsOpen: u,
25
- filterableFields: y
26
- } = T({ schema: d, filter: o || { value: [], onChange: () => {
27
- } } });
28
- if (!o)
29
- return null;
30
- const N = () => {
31
- if (!r) return null;
32
- const e = d.find((c) => c.key === r), F = {
33
- boolean: j,
34
- text: C,
35
- number: z,
36
- checkbox: A
37
- }, h = (n == null ? void 0 : n[(e == null ? void 0 : e.cellType) || ""]) || F[(e == null ? void 0 : e.cellType) || "text"];
38
- if (!h)
39
- return console.warn(
40
- `No filter component found for column "${e == null ? void 0 : e.key}" with cellType "${e == null ? void 0 : e.cellType}". Provide a custom filter component or use supported types: "text", "number", "boolean", "checkbox".`
41
- ), null;
42
- const a = x(r), g = {
43
- condition: (a == null ? void 0 : a.condition) || "",
44
- value: (a == null ? void 0 : a.value) || ""
45
- };
46
- return /* @__PURE__ */ t("div", { className: "flex-1", children: /* @__PURE__ */ t("div", { className: "mb-4", children: /* @__PURE__ */ t("div", { className: "", children: /* @__PURE__ */ t(
47
- h,
48
- {
49
- value: g,
50
- onChange: ({ condition: c, value: w }) => f(r, c, w),
51
- filterOptions: e == null ? void 0 : e.filterOptions
52
- },
53
- e == null ? void 0 : e.key
54
- ) }) }) });
55
- };
56
- return /* @__PURE__ */ l("div", { className: "relative", children: [
57
- /* @__PURE__ */ l(
58
- i,
59
- {
60
- onClick: () => u(!m),
61
- variant: s ? "filled" : "stroke",
62
- shade: s ? "brand" : "neutral",
63
- size: "small",
64
- children: [
65
- "Filter ",
66
- s && `(${o.value.length})`
67
- ]
68
- }
69
- ),
70
- m && /* @__PURE__ */ l("div", { className: "absolute top-full left-0 mt-2 min-w-[600px] bg-surface-neutral-default border border-stroke-solid-medium rounded-md shadow-default z-10", children: [
71
- /* @__PURE__ */ l("div", { className: "flex min-h-[300px]", children: [
72
- /* @__PURE__ */ l("div", { className: "w-48 border-r border-stroke-solid-medium", children: [
73
- /* @__PURE__ */ t("div", { className: "p-3 border-b border-stroke-solid-medium", children: /* @__PURE__ */ t("h3", { className: "text-sm font-medium text-text-neutral-primary", children: "Columns" }) }),
74
- /* @__PURE__ */ t("div", { className: "py-2", children: y.map((e) => /* @__PURE__ */ l(
75
- "button",
76
- {
77
- onClick: () => p(e.key),
78
- className: `w-full text-left px-3 py-2 text-sm flex items-center justify-between hover:bg-surface-neutral-hovered transition-colors ${r === e.key ? "bg-surface-brand-subtle text-text-brand-primary" : "text-text-neutral-primary"}`,
79
- children: [
80
- /* @__PURE__ */ t("span", { className: "truncate", children: e.title }),
81
- b(e.key) && /* @__PURE__ */ t(O, { className: "w-4 h-4 text-icon-brand-primary flex-shrink-0 ml-2" })
82
- ]
83
- },
84
- e.key
85
- )) })
86
- ] }),
87
- /* @__PURE__ */ t("div", { className: "flex-1 flex flex-col", children: r ? N() : /* @__PURE__ */ t("div", { className: "flex-1 flex items-center justify-center text-text-neutral-muted", children: "Select a column to configure its filter" }) })
88
- ] }),
89
- /* @__PURE__ */ l("div", { className: "flex justify-between items-center p-4 border-t border-stroke-solid-medium", children: [
90
- /* @__PURE__ */ t(
91
- i,
92
- {
93
- onClick: v,
94
- variant: "ghost",
95
- shade: "neutral",
96
- size: "small",
97
- disabled: !s,
98
- children: "Clear All"
99
- }
100
- ),
101
- /* @__PURE__ */ l("div", { className: "flex gap-2", children: [
102
- /* @__PURE__ */ t(
103
- i,
104
- {
105
- onClick: () => u(!1),
106
- variant: "stroke",
107
- shade: "neutral",
108
- size: "small",
109
- children: "Cancel"
110
- }
111
- ),
112
- /* @__PURE__ */ t(i, { onClick: k, variant: "filled", shade: "neutral", size: "small", children: "Apply" })
113
- ] })
114
- ] })
115
- ] })
116
- ] });
117
- };
118
- export {
119
- E as TableFilter
120
- };
@@ -1,9 +0,0 @@
1
- import * as React from 'react';
2
- import { FilterComponentType } from './table-filter.type';
3
- import { TableSchema, TableFilter as TableFilterType } from '../../table.type';
4
- export interface TableFilterProps {
5
- filterComponents?: Record<string, FilterComponentType>;
6
- schema: TableSchema;
7
- filter?: TableFilterType;
8
- }
9
- export declare const TableFilter: React.FC<TableFilterProps>;