@medyat/react-data-table 0.0.0-stage → 0.1.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.
@@ -0,0 +1,298 @@
1
+ import { h as e, n as t, s as n, t as r } from "./bottom-sheet-NHUT908D.js";
2
+ import { n as ee } from "./provider-CTTHEpE3.js";
3
+ import { c as te, i, n as ne, s as re, t as ie } from "./model-RkRyfM7C.js";
4
+ import { c as ae } from "react/compiler-runtime";
5
+ import { useRef as oe, useState as a } from "react";
6
+ import { Fragment as o, jsx as s, jsxs as c } from "react/jsx-runtime";
7
+ import { ArrowDownIcon as se, ArrowUpIcon as ce, CaretDownIcon as le, CaretLeftIcon as ue, CaretRightIcon as de, MagnifyingGlassIcon as fe, PlusIcon as pe, XIcon as me } from "@phosphor-icons/react";
8
+ import { Toggle as he } from "@base-ui/react/toggle";
9
+ import { ToggleGroup as ge } from "@base-ui/react/toggle-group";
10
+ // src/core/filters/filters-sheet.tsx
11
+ function l(e) {
12
+ let l = ae(45), { open: u, onOpenChange: d, column: f, columns: p, chips: m, sort: be, rows: xe, labels: Se, summaryOf: Ce, currenciesOf: we, onApply: h } = e, { i18n: g } = ee(), _;
13
+ l[0] === p ? _ = l[1] : (_ = (e) => p.find((t) => t.id === e), l[0] = p, l[1] = _);
14
+ let v = _, y;
15
+ l[2] === v ? y = l[3] : (y = (e) => v(e)?.header ?? e, l[2] = v, l[3] = y);
16
+ let b = y, x;
17
+ l[4] === v ? x = l[5] : (x = (e, t) => {
18
+ let n = v(t);
19
+ if (!n) return {
20
+ draft: e,
21
+ editing: null
22
+ };
23
+ let r = e.find((e) => e.column === t);
24
+ return n.type === "boolean" ? {
25
+ draft: r ? e.map((e) => e === r ? {
26
+ ...e,
27
+ value: e.value !== !0
28
+ } : e) : [...e, {
29
+ column: t,
30
+ op: ne(n),
31
+ value: !0
32
+ }],
33
+ editing: null
34
+ } : {
35
+ draft: r ? e : [...e, {
36
+ column: t,
37
+ op: ne(n)
38
+ }],
39
+ editing: t
40
+ };
41
+ }, l[4] = v, l[5] = x);
42
+ let S = x, C;
43
+ l[6] !== m || l[7] !== f || l[8] !== S ? (C = () => f ? S(m, f) : {
44
+ draft: m,
45
+ editing: null
46
+ }, l[6] = m, l[7] = f, l[8] = S, l[9] = C) : C = l[9];
47
+ let [w] = a(C), [T, E] = a(w.draft), [D, Te] = a(be[0] ?? null), [O, Ee] = a(w.editing), [k, A] = a(w.editing ? "editor" : "main"), [j, De] = a(""), Oe = oe(null), ke = p.filter(ye), Ae = p.filter(ve), M;
48
+ l[10] === T ? M = l[11] : (M = (e) => T.some((t) => t.column === e), l[10] = T, l[11] = M);
49
+ let N = M, P;
50
+ l[12] === N ? P = l[13] : (P = (e) => e.suggested && !N(e.id), l[12] = N, l[13] = P);
51
+ let je = ke.filter(P), Me = j.toLocaleLowerCase(), Ne = ke.filter((e) => !N(e.id) && (!j || e.header.toLocaleLowerCase().includes(Me))), F = T.find((e) => e.column === O) ?? null, I = O ? v(O) : void 0, L;
52
+ l[14] !== T || l[15] !== S ? (L = (e) => {
53
+ let t = S(T, e);
54
+ E(t.draft), t.editing && (Ee(t.editing), A("editor"));
55
+ }, l[14] = T, l[15] = S, l[16] = L) : L = l[16];
56
+ let R = L, z;
57
+ l[17] === Symbol.for("react.memo_cache_sentinel") ? (z = (e) => E((t) => t.map((t) => t.column === e.column ? e : t)), l[17] = z) : z = l[17];
58
+ let B = z, V;
59
+ l[18] === Symbol.for("react.memo_cache_sentinel") ? (V = (e) => E((t) => t.filter((t) => t.column !== e)), l[18] = V) : V = l[18];
60
+ let Pe = V, H = () => {
61
+ I && E((e) => e.filter((e) => e.column !== O || i(e, I.type))), Ee(null), A("main");
62
+ }, U;
63
+ l[19] !== v || l[20] !== T || l[21] !== D || l[22] !== h || l[23] !== d ? (U = () => {
64
+ h(T.filter((e) => i(e, v(e.column).type)), D ? [D] : []), d(!1);
65
+ }, l[19] = v, l[20] = T, l[21] = D, l[22] = h, l[23] = d, l[24] = U) : U = l[24];
66
+ let W = U, G = k === "main" ? g.t("mobile.filters") : k === "picker" ? g.t("filter.addFilter") : I?.header ?? "", Fe = Array.isArray(F?.value) ? F.value.length : 1, K = r, q;
67
+ l[25] !== H || l[26] !== g || l[27] !== k ? (q = k !== "main" && /* @__PURE__ */ s("button", {
68
+ type: "button",
69
+ className: "dt-bsheet-back",
70
+ "aria-label": g.t("mobile.backToFilters"),
71
+ onClick: H,
72
+ children: /* @__PURE__ */ s(ue, {
73
+ size: 20,
74
+ "aria-hidden": "true"
75
+ })
76
+ }), l[25] = H, l[26] = g, l[27] = k, l[28] = q) : q = l[28];
77
+ let J = k === "main" ? /* @__PURE__ */ s("button", {
78
+ type: "button",
79
+ className: "dt-bsheet-action",
80
+ onClick: () => E([]),
81
+ children: g.t("filter.clearAll")
82
+ }) : k === "editor" && /* @__PURE__ */ s("button", {
83
+ type: "button",
84
+ className: "dt-bsheet-action",
85
+ disabled: F?.value === void 0,
86
+ onClick: () => {
87
+ Oe.current?.querySelector("input, textarea, button")?.focus(), F && B({
88
+ ...F,
89
+ value: void 0
90
+ });
91
+ },
92
+ children: g.t("common.clear")
93
+ }), Y;
94
+ l[29] !== W || l[30] !== H || l[31] !== g || l[32] !== k ? (Y = k === "editor" ? /* @__PURE__ */ s("button", {
95
+ type: "button",
96
+ className: "dt-bsheet-primary",
97
+ onClick: H,
98
+ children: g.t("common.done")
99
+ }) : /* @__PURE__ */ s("button", {
100
+ type: "button",
101
+ className: "dt-bsheet-primary",
102
+ onClick: W,
103
+ children: g.t("mobile.showResults")
104
+ }), l[29] = W, l[30] = H, l[31] = g, l[32] = k, l[33] = Y) : Y = l[33];
105
+ let X = k === "main" && /* @__PURE__ */ c(o, { children: [
106
+ T.map((e) => /* @__PURE__ */ c("div", {
107
+ className: "dt-bsheet-row is-split",
108
+ children: [/* @__PURE__ */ c("button", {
109
+ type: "button",
110
+ className: "dt-bsheet-row-main",
111
+ onClick: () => R(e.column),
112
+ children: [/* @__PURE__ */ s("span", {
113
+ className: "dt-bsheet-field",
114
+ children: b(e.column)
115
+ }), /* @__PURE__ */ s("span", {
116
+ className: "dt-bsheet-value is-strong",
117
+ children: Ce(e).text
118
+ })]
119
+ }), /* @__PURE__ */ s("button", {
120
+ type: "button",
121
+ className: "dt-bsheet-x",
122
+ "aria-label": g.t("filter.removeAria", { column: b(e.column) }),
123
+ onClick: () => Pe(e.column),
124
+ children: /* @__PURE__ */ s(me, {
125
+ size: 16,
126
+ "aria-hidden": "true"
127
+ })
128
+ })]
129
+ }, e.column)),
130
+ je.length > 0 && /* @__PURE__ */ c(o, { children: [/* @__PURE__ */ s("div", {
131
+ className: "dt-bsheet-label",
132
+ children: g.t("picker.suggested")
133
+ }), je.map((e) => /* @__PURE__ */ c("button", {
134
+ type: "button",
135
+ className: "dt-bsheet-row",
136
+ onClick: () => R(e.id),
137
+ children: [
138
+ /* @__PURE__ */ s("span", {
139
+ className: "dt-bsheet-field",
140
+ children: e.header
141
+ }),
142
+ /* @__PURE__ */ s("span", {
143
+ className: "dt-bsheet-value",
144
+ children: g.t("common.any")
145
+ }),
146
+ /* @__PURE__ */ s(de, {
147
+ size: 16,
148
+ "aria-hidden": "true"
149
+ })
150
+ ]
151
+ }, e.id))] }),
152
+ /* @__PURE__ */ c("button", {
153
+ type: "button",
154
+ className: "dt-bsheet-row is-accent",
155
+ onClick: () => A("picker"),
156
+ children: [/* @__PURE__ */ s(pe, {
157
+ size: 18,
158
+ "aria-hidden": "true"
159
+ }), g.t("filter.addFilter")]
160
+ }),
161
+ /* @__PURE__ */ s("div", { className: "dt-bsheet-sep" }),
162
+ /* @__PURE__ */ s("div", {
163
+ className: "dt-bsheet-label",
164
+ children: g.t("mobile.sort")
165
+ }),
166
+ /* @__PURE__ */ c("div", {
167
+ className: "dt-bsheet-row is-sort",
168
+ children: [/* @__PURE__ */ c("label", {
169
+ className: "dt-select dt-bsheet-select",
170
+ children: [/* @__PURE__ */ c("select", {
171
+ value: D?.column ?? "",
172
+ "aria-label": g.t("mobile.sort"),
173
+ onChange: (e) => Te(e.target.value ? {
174
+ column: e.target.value,
175
+ dir: D?.dir ?? "asc"
176
+ } : null),
177
+ children: [/* @__PURE__ */ s("option", {
178
+ value: "",
179
+ children: g.t("common.empty")
180
+ }), Ae.map(_e)]
181
+ }), /* @__PURE__ */ s(le, {
182
+ size: 14,
183
+ "aria-hidden": "true"
184
+ })]
185
+ }), /* @__PURE__ */ s(ge, {
186
+ className: "dt-seg dt-bsheet-dir",
187
+ value: D ? [D.dir] : [],
188
+ disabled: !D,
189
+ onValueChange: (e) => {
190
+ let t = e[0];
191
+ (t === "asc" || t === "desc") && D && Te({
192
+ ...D,
193
+ dir: t
194
+ });
195
+ },
196
+ children: ["asc", "desc"].map((e) => /* @__PURE__ */ s(he, {
197
+ className: "dt-seg-item",
198
+ value: e,
199
+ "data-state": D?.dir === e ? "on" : "off",
200
+ "aria-label": g.t(e === "asc" ? "header.sortAsc" : "header.sortDesc"),
201
+ children: s(e === "asc" ? ce : se, {
202
+ size: 16,
203
+ "aria-hidden": "true"
204
+ })
205
+ }, e))
206
+ })]
207
+ })
208
+ ] }), Z = k === "picker" && /* @__PURE__ */ c(o, { children: [
209
+ /* @__PURE__ */ c("label", {
210
+ className: "dt-input has-icon dt-bsheet-search",
211
+ children: [/* @__PURE__ */ s("span", {
212
+ className: "dt-input-icon",
213
+ children: /* @__PURE__ */ s(fe, {
214
+ size: 16,
215
+ "aria-hidden": "true"
216
+ })
217
+ }), /* @__PURE__ */ s("input", {
218
+ type: "search",
219
+ value: j,
220
+ placeholder: g.t("picker.search"),
221
+ "aria-label": g.t("picker.search"),
222
+ onChange: (e) => De(e.target.value)
223
+ })]
224
+ }),
225
+ Ne.map((e) => {
226
+ let t = n[e.type];
227
+ return /* @__PURE__ */ c("button", {
228
+ type: "button",
229
+ className: "dt-bsheet-row",
230
+ onClick: () => R(e.id),
231
+ children: [/* @__PURE__ */ s(t, {
232
+ size: 16,
233
+ className: "dt-bsheet-icon",
234
+ "aria-hidden": "true"
235
+ }), e.header]
236
+ }, e.id);
237
+ }),
238
+ Ne.length === 0 && /* @__PURE__ */ s("div", {
239
+ className: "dt-options-empty",
240
+ children: g.t("picker.noMatch")
241
+ })
242
+ ] }), Q = k === "editor" && F && I && /* @__PURE__ */ c("div", {
243
+ ref: Oe,
244
+ className: "dt-bsheet-editor",
245
+ children: [/* @__PURE__ */ c("label", {
246
+ className: "dt-select dt-bsheet-select",
247
+ children: [/* @__PURE__ */ s("select", {
248
+ value: F.op,
249
+ "aria-label": g.t("mobile.operator"),
250
+ onChange: (e) => B(ie(F, e.target.value, I.type)),
251
+ children: te(I).map((e) => /* @__PURE__ */ s("option", {
252
+ value: e,
253
+ children: re(g, e, I.type, Fe)
254
+ }, e))
255
+ }), /* @__PURE__ */ s(le, {
256
+ size: 14,
257
+ "aria-hidden": "true"
258
+ })]
259
+ }), /* @__PURE__ */ s(t, {
260
+ chip: F,
261
+ column: I,
262
+ rows: xe,
263
+ labels: Se,
264
+ currencies: we(I),
265
+ onChange: B,
266
+ onDone: H
267
+ })]
268
+ }), $;
269
+ return l[34] !== K || l[35] !== d || l[36] !== u || l[37] !== q || l[38] !== J || l[39] !== Y || l[40] !== X || l[41] !== Z || l[42] !== Q || l[43] !== G ? ($ = /* @__PURE__ */ c(K, {
270
+ open: u,
271
+ onOpenChange: d,
272
+ title: G,
273
+ className: "dt-filters-sheet",
274
+ headStart: q,
275
+ headEnd: J,
276
+ foot: Y,
277
+ children: [
278
+ X,
279
+ Z,
280
+ Q
281
+ ]
282
+ }), l[34] = K, l[35] = d, l[36] = u, l[37] = q, l[38] = J, l[39] = Y, l[40] = X, l[41] = Z, l[42] = Q, l[43] = G, l[44] = $) : $ = l[44], $;
283
+ }
284
+ function _e(e) {
285
+ return /* @__PURE__ */ s("option", {
286
+ value: e.id,
287
+ children: e.header
288
+ }, e.id);
289
+ }
290
+ function ve(t) {
291
+ return t.sortable ?? e[t.type].sortable;
292
+ }
293
+ function ye(t) {
294
+ return t.filterable ?? e[t.type].filterable;
295
+ }
296
+ export { l as FiltersSheet };
297
+
298
+ //# sourceMappingURL=filters-sheet-CWzMaMFo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filters-sheet-CWzMaMFo.js","names":["Toggle","ToggleGroup","ArrowDownIcon","ArrowUpIcon","CaretDownIcon","CaretLeftIcon","CaretRightIcon","MagnifyingGlassIcon","PlusIcon","XIcon","useRef","useState","ColumnDef","FilterOp","SortRule","RemoteLabels","TYPE_SPECS","useDataTableContext","BottomSheet","changeOperator","defaultOperator","isComplete","opLabel","operatorsOf","Chip","Summary","TYPE_ICONS","ValueEditor","Level","FiltersSheet","t0","$","_c","open","onOpenChange","column","columns","chips","sort","rows","labels","summaryOf","currenciesOf","onApply","i18n","t1","id","find","c","defOf","t2","id_0","header","headerOf","t3","list","id_1","def","draft","editing","existing","c_0","type","map","c_1","value","op","editIn","t4","start","setDraft","draftSort","setDraftSort","setEditing","level","setLevel","q","setQ","editor","filterable","filter","_temp","sortable","_temp2","t5","id_2","some","c_4","drafted","t6","c_5","suggested","needle","toLocaleLowerCase","pickable","c_6","includes","chip","c_7","chipDef","undefined","t7","id_3","next","edit","t8","Symbol","for","next_0","d","c_8","replace","t9","id_4","d_0","c_9","remove","back","d_1","c_10","t10","c_11","apply","title","t","count","Array","isArray","length","T0","t11","t12","t13","current","querySelector","focus","t14","t15","c_12","text","c_13","e","target","dir","_temp3","v","const","d_2","t16","e_0","c_15","Icon","t17","e_1","t18","c_14","c_3","c_2","_c","_Fragment","TYPE_SPECS","ValueEditor","TYPE_ICONS","BottomSheet","useDataTableContext","operatorsOf","defaultOperator","opLabel","changeOperator","Fragment$1","FiltersSheet","$","c","t0","t1","columns","id","defOf","t2","id_0","headerOf","t3","def","id_1","list","existing","c_0","c_1","editIn","t4","chips","column","start","useState","draft","setDraft","draftSort","setDraftSort","sort","editing","setEditing","level","setLevel","q","setQ","editor","useRef","filterable","_temp","sortable","_temp2","t5","c_4","id_2","drafted","t6","c_5","suggested","needle","pickable","c_6","chip","c_7","chipDef","t7","next","id_3","edit","t8","d","c_8","next_0","replace","t9","d_0","c_9","id_4","remove","back","d_1","c_10","isComplete","t10","onApply","onOpenChange","c_11","apply","title","i18n","count","T0","t12","CaretLeftIcon","t13","t14","t15","c_12","summaryOf","XIcon","c_13","CaretRightIcon","PlusIcon","_temp3","CaretDownIcon","ToggleGroup","dir","v","Toggle","d_2","jsx","ArrowUpIcon","ArrowDownIcon","t16","MagnifyingGlassIcon","e_0","Icon","c_15","t17","e_1","op","currenciesOf","t18","open","c_14","c_3","c_2"],"sources":["../src/core/filters/filters-sheet.tsx"],"sourcesContent":["// Telefon Filters alt sayfası (04 §9, handoff 04 §6.1–6.2, T13-04/05): uygulanmış filtreler · Suggested · Add filter · Sort ·\n// Show results. Değişiklikler taslakta birikir ve Show results'la tek seferde uygulanır (masaüstündeki anında uygulamadan\n// farklı). Değer editörü ve sütun seçici aynı sayfanın alt seviyeleridir (geri okuyla döner). Her açılışta yeniden kurulur\n// (`key`): taslak o anki çiplerden ve sıralamadan başlar.\nimport { Toggle } from '@base-ui/react/toggle'\nimport { ToggleGroup } from '@base-ui/react/toggle-group'\nimport {\n ArrowDownIcon,\n ArrowUpIcon,\n CaretDownIcon,\n CaretLeftIcon,\n CaretRightIcon,\n MagnifyingGlassIcon,\n PlusIcon,\n XIcon,\n} from '@phosphor-icons/react'\nimport { useRef, useState } from 'react'\nimport type { ColumnDef } from '../../types/columns'\nimport type { FilterOp, SortRule } from '../../types/query'\nimport type { RemoteLabels } from '../cells/remote-labels'\nimport { TYPE_SPECS } from '../cells/specs'\nimport { useDataTableContext } from '../provider'\nimport { BottomSheet } from '../ui/bottom-sheet'\nimport { changeOperator, defaultOperator, isComplete, opLabel, operatorsOf, type Chip, type Summary } from './model'\nimport { TYPE_ICONS } from './type-icons'\nimport { ValueEditor } from './value-editor'\n\ntype Level = 'main' | 'editor' | 'picker'\n\nexport function FiltersSheet({\n open,\n onOpenChange,\n column,\n columns,\n chips,\n sort,\n rows,\n labels,\n summaryOf,\n currenciesOf,\n onApply,\n}: {\n open: boolean\n onOpenChange: (open: boolean) => void\n /** Verilirse doğrudan o sütunun editörüyle açılır (çip, header hunisi, picker). */\n column?: string\n columns: ColumnDef[]\n chips: Chip[]\n sort: SortRule[]\n rows: object[]\n labels: RemoteLabels\n summaryOf: (chip: Chip) => Summary\n currenciesOf: (def: ColumnDef) => string[]\n onApply: (chips: Chip[], sort: SortRule[]) => void\n}) {\n const { i18n } = useDataTableContext()\n const defOf = (id: string) => columns.find((c) => c.id === id)\n const headerOf = (id: string) => defOf(id)?.header ?? id\n\n /** Var olan taslak çipi açar, yoksa varsayılan operatörle oluşturur. boolean'ın editörü yok: dokunuş Yes ↔ No. */\n const editIn = (list: Chip[], id: string): { draft: Chip[]; editing: string | null } => {\n const def = defOf(id)\n if (!def) return { draft: list, editing: null }\n const existing = list.find((c) => c.column === id)\n if (def.type === 'boolean')\n return {\n draft: existing\n ? list.map((c) => (c === existing ? { ...c, value: c.value !== true } : c))\n : [...list, { column: id, op: defaultOperator(def), value: true }],\n editing: null,\n }\n return { draft: existing ? list : [...list, { column: id, op: defaultOperator(def) }], editing: id }\n }\n const [start] = useState(() => (column ? editIn(chips, column) : { draft: chips, editing: null }))\n const [draft, setDraft] = useState<Chip[]>(start.draft)\n // shortcut: telefonda tek sıralama kuralı; çoklu sıralama masaüstünde (ikincil kurallar Show results'ta düşer).\n const [draftSort, setDraftSort] = useState<SortRule | null>(sort[0] ?? null)\n const [editing, setEditing] = useState<string | null>(start.editing)\n const [level, setLevel] = useState<Level>(start.editing ? 'editor' : 'main')\n const [q, setQ] = useState('')\n const editor = useRef<HTMLDivElement>(null)\n\n const filterable = columns.filter((c) => c.filterable ?? TYPE_SPECS[c.type].filterable)\n const sortable = columns.filter((c) => c.sortable ?? TYPE_SPECS[c.type].sortable)\n const drafted = (id: string) => draft.some((c) => c.column === id)\n const suggested = filterable.filter((c) => c.suggested && !drafted(c.id as string))\n const needle = q.toLocaleLowerCase()\n const pickable = filterable.filter(\n (c) => !drafted(c.id as string) && (!q || c.header.toLocaleLowerCase().includes(needle)),\n )\n const chip = draft.find((c) => c.column === editing) ?? null\n const chipDef = editing ? defOf(editing) : undefined\n\n const edit = (id: string) => {\n const next = editIn(draft, id)\n setDraft(next.draft)\n if (!next.editing) return\n setEditing(next.editing)\n setLevel('editor')\n }\n // Updater'lar: metin editörü Enter'da aynı olayda önce değeri yazar sonra Done der; `back` güncel taslağı görmeli.\n const replace = (next: Chip) => setDraft((d) => d.map((c) => (c.column === next.column ? next : c)))\n const remove = (id: string) => setDraft((d) => d.filter((c) => c.column !== id))\n /** Geri / Done: değer seçilmemiş çip taslaktan düşer (04 §1). */\n const back = () => {\n if (chipDef) setDraft((d) => d.filter((c) => c.column !== editing || isComplete(c, chipDef.type)))\n setEditing(null)\n setLevel('main')\n }\n const apply = () => {\n onApply(\n draft.filter((c) => isComplete(c, defOf(c.column)!.type)),\n draftSort ? [draftSort] : [],\n )\n onOpenChange(false)\n }\n const title =\n level === 'main'\n ? i18n.t('mobile.filters')\n : level === 'picker'\n ? i18n.t('filter.addFilter')\n : (chipDef?.header ?? '')\n const count = Array.isArray(chip?.value) ? chip.value.length : 1\n\n return (\n <BottomSheet\n open={open}\n onOpenChange={onOpenChange}\n title={title}\n className=\"dt-filters-sheet\"\n headStart={\n level !== 'main' && (\n <button type=\"button\" className=\"dt-bsheet-back\" aria-label={i18n.t('mobile.backToFilters')} onClick={back}>\n <CaretLeftIcon size={20} aria-hidden=\"true\" />\n </button>\n )\n }\n headEnd={\n level === 'main' ? (\n <button type=\"button\" className=\"dt-bsheet-action\" onClick={() => setDraft([])}>\n {i18n.t('filter.clearAll')}\n </button>\n ) : (\n level === 'editor' && (\n <button\n type=\"button\"\n className=\"dt-bsheet-action\"\n disabled={chip?.value === undefined}\n onClick={() => {\n // Devre dışı kalacak düğmeden odak body'ye düşmesin: değer alanına (operatör seçicisi hariç).\n editor.current?.querySelector<HTMLElement>('input, textarea, button')?.focus()\n if (chip) replace({ ...chip, value: undefined })\n }}\n >\n {i18n.t('common.clear')}\n </button>\n )\n )\n }\n foot={\n level === 'editor' ? (\n <button type=\"button\" className=\"dt-bsheet-primary\" onClick={back}>\n {i18n.t('common.done')}\n </button>\n ) : (\n <button type=\"button\" className=\"dt-bsheet-primary\" onClick={apply}>\n {i18n.t('mobile.showResults')}\n </button>\n )\n }\n >\n {level === 'main' && (\n <>\n {draft.map((c) => (\n <div key={c.column} className=\"dt-bsheet-row is-split\">\n <button type=\"button\" className=\"dt-bsheet-row-main\" onClick={() => edit(c.column)}>\n <span className=\"dt-bsheet-field\">{headerOf(c.column)}</span>\n <span className=\"dt-bsheet-value is-strong\">{summaryOf(c).text}</span>\n </button>\n <button\n type=\"button\"\n className=\"dt-bsheet-x\"\n aria-label={i18n.t('filter.removeAria', { column: headerOf(c.column) })}\n onClick={() => remove(c.column)}\n >\n <XIcon size={16} aria-hidden=\"true\" />\n </button>\n </div>\n ))}\n {suggested.length > 0 && (\n <>\n <div className=\"dt-bsheet-label\">{i18n.t('picker.suggested')}</div>\n {suggested.map((c) => (\n <button key={c.id} type=\"button\" className=\"dt-bsheet-row\" onClick={() => edit(c.id as string)}>\n <span className=\"dt-bsheet-field\">{c.header}</span>\n <span className=\"dt-bsheet-value\">{i18n.t('common.any')}</span>\n <CaretRightIcon size={16} aria-hidden=\"true\" />\n </button>\n ))}\n </>\n )}\n <button type=\"button\" className=\"dt-bsheet-row is-accent\" onClick={() => setLevel('picker')}>\n <PlusIcon size={18} aria-hidden=\"true\" />\n {i18n.t('filter.addFilter')}\n </button>\n <div className=\"dt-bsheet-sep\" />\n <div className=\"dt-bsheet-label\">{i18n.t('mobile.sort')}</div>\n <div className=\"dt-bsheet-row is-sort\">\n <label className=\"dt-select dt-bsheet-select\">\n <select\n value={draftSort?.column ?? ''}\n aria-label={i18n.t('mobile.sort')}\n onChange={(e) =>\n setDraftSort(e.target.value ? { column: e.target.value, dir: draftSort?.dir ?? 'asc' } : null)\n }\n >\n <option value=\"\">{i18n.t('common.empty')}</option>\n {sortable.map((c) => (\n <option key={c.id} value={c.id}>\n {c.header}\n </option>\n ))}\n </select>\n <CaretDownIcon size={14} aria-hidden=\"true\" />\n </label>\n <ToggleGroup\n className=\"dt-seg dt-bsheet-dir\"\n value={draftSort ? [draftSort.dir] : []}\n disabled={!draftSort}\n onValueChange={(v) => {\n const dir = v[0]\n if ((dir === 'asc' || dir === 'desc') && draftSort) setDraftSort({ ...draftSort, dir })\n }}\n >\n {(['asc', 'desc'] as const).map((d) => (\n <Toggle\n key={d}\n className=\"dt-seg-item\"\n value={d}\n data-state={draftSort?.dir === d ? 'on' : 'off'}\n aria-label={i18n.t(d === 'asc' ? 'header.sortAsc' : 'header.sortDesc')}\n >\n {d === 'asc' ? (\n <ArrowUpIcon size={16} aria-hidden=\"true\" />\n ) : (\n <ArrowDownIcon size={16} aria-hidden=\"true\" />\n )}\n </Toggle>\n ))}\n </ToggleGroup>\n </div>\n </>\n )}\n\n {level === 'picker' && (\n <>\n <label className=\"dt-input has-icon dt-bsheet-search\">\n <span className=\"dt-input-icon\">\n <MagnifyingGlassIcon size={16} aria-hidden=\"true\" />\n </span>\n <input\n type=\"search\"\n value={q}\n placeholder={i18n.t('picker.search')}\n aria-label={i18n.t('picker.search')}\n onChange={(e) => setQ(e.target.value)}\n />\n </label>\n {pickable.map((c) => {\n const Icon = TYPE_ICONS[c.type]\n return (\n <button key={c.id} type=\"button\" className=\"dt-bsheet-row\" onClick={() => edit(c.id as string)}>\n <Icon size={16} className=\"dt-bsheet-icon\" aria-hidden=\"true\" />\n {c.header}\n </button>\n )\n })}\n {pickable.length === 0 && <div className=\"dt-options-empty\">{i18n.t('picker.noMatch')}</div>}\n </>\n )}\n\n {level === 'editor' && chip && chipDef && (\n <div ref={editor} className=\"dt-bsheet-editor\">\n <label className=\"dt-select dt-bsheet-select\">\n <select\n value={chip.op}\n aria-label={i18n.t('mobile.operator')}\n onChange={(e) => replace(changeOperator(chip, e.target.value as FilterOp, chipDef.type))}\n >\n {operatorsOf(chipDef).map((op) => (\n <option key={op} value={op}>\n {opLabel(i18n, op, chipDef.type, count)}\n </option>\n ))}\n </select>\n <CaretDownIcon size={14} aria-hidden=\"true\" />\n </label>\n <ValueEditor\n chip={chip}\n column={chipDef}\n rows={rows}\n labels={labels}\n currencies={currenciesOf(chipDef)}\n onChange={replace}\n onDone={back}\n />\n </div>\n )}\n </BottomSheet>\n )\n}\n"],"mappings":"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"}