@raybase/datasheet-grid 0.0.2 → 0.1.2

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 (53) hide show
  1. package/LICENSE +21 -0
  2. package/LICENSE-react-datasheet-grid +21 -0
  3. package/README.md +32 -1
  4. package/dist/adapter.d.ts +34 -0
  5. package/dist/adapter.d.ts.map +1 -0
  6. package/dist/adapter.js +2 -0
  7. package/dist/adapter.js.map +1 -0
  8. package/dist/cells.d.ts +111 -0
  9. package/dist/cells.d.ts.map +1 -0
  10. package/dist/cells.js +800 -0
  11. package/dist/cells.js.map +1 -0
  12. package/dist/colors.d.ts +10 -0
  13. package/dist/colors.d.ts.map +1 -0
  14. package/dist/colors.js +42 -0
  15. package/dist/colors.js.map +1 -0
  16. package/dist/engine.d.ts +3 -0
  17. package/dist/engine.d.ts.map +1 -0
  18. package/dist/engine.js +2 -0
  19. package/dist/engine.js.map +1 -0
  20. package/dist/filter-bar.d.ts +33 -0
  21. package/dist/filter-bar.d.ts.map +1 -0
  22. package/dist/filter-bar.js +304 -0
  23. package/dist/filter-bar.js.map +1 -0
  24. package/dist/index.d.ts +8 -0
  25. package/dist/index.d.ts.map +1 -0
  26. package/dist/index.js +6 -0
  27. package/dist/index.js.map +1 -0
  28. package/dist/popover.d.ts +22 -0
  29. package/dist/popover.d.ts.map +1 -0
  30. package/dist/popover.js +67 -0
  31. package/dist/popover.js.map +1 -0
  32. package/dist/record-panel.d.ts +20 -0
  33. package/dist/record-panel.d.ts.map +1 -0
  34. package/dist/record-panel.js +193 -0
  35. package/dist/record-panel.js.map +1 -0
  36. package/dist/styles.css +2 -0
  37. package/dist/types.d.ts +28 -0
  38. package/dist/types.d.ts.map +1 -0
  39. package/dist/types.js +2 -0
  40. package/dist/types.js.map +1 -0
  41. package/dist/ui.d.ts +28 -0
  42. package/dist/ui.d.ts.map +1 -0
  43. package/dist/ui.js +108 -0
  44. package/dist/ui.js.map +1 -0
  45. package/dist/utils.d.ts +16 -0
  46. package/dist/utils.d.ts.map +1 -0
  47. package/dist/utils.js +79 -0
  48. package/dist/utils.js.map +1 -0
  49. package/dist/view.d.ts +5 -0
  50. package/dist/view.d.ts.map +1 -0
  51. package/dist/view.js +85 -0
  52. package/dist/view.js.map +1 -0
  53. package/package.json +55 -10
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cells.js","sourceRoot":"","sources":["../src/cells.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ /** Pill used for linked records, matching Airtable's light-blue chips. */
2
+ export declare const referencePill = "bg-sky-100 text-sky-900";
3
+ /**
4
+ * Color classes for a select/tag value. When the full option list is known
5
+ * (enums) colors follow option order so they stay stable and collision-free;
6
+ * free-form tags fall back to hashing.
7
+ */
8
+ export declare function pillColor(value: string, options?: string[]): string;
9
+ export declare const pillBase = "inline-flex max-w-full items-center rounded-full px-2 py-0.5 text-xs font-medium leading-5";
10
+ //# sourceMappingURL=colors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"colors.d.ts","sourceRoot":"","sources":["../src/colors.ts"],"names":[],"mappings":"AAmBA,0EAA0E;AAC1E,eAAO,MAAM,aAAa,4BAA4B,CAAC;AAUvD;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM,CAMnE;AAED,eAAO,MAAM,QAAQ,+FAA+F,CAAC"}
package/dist/colors.js ADDED
@@ -0,0 +1,42 @@
1
+ /**
2
+ * Airtable-style pastel pill palette. Class strings must stay literal so
3
+ * Tailwind's source scan picks them up.
4
+ */
5
+ const palette = [
6
+ "bg-sky-100 text-sky-900",
7
+ "bg-emerald-100 text-emerald-900",
8
+ "bg-amber-100 text-amber-900",
9
+ "bg-violet-100 text-violet-900",
10
+ "bg-rose-100 text-rose-900",
11
+ "bg-cyan-100 text-cyan-900",
12
+ "bg-orange-100 text-orange-900",
13
+ "bg-lime-100 text-lime-900",
14
+ "bg-fuchsia-100 text-fuchsia-900",
15
+ "bg-teal-100 text-teal-900",
16
+ "bg-indigo-100 text-indigo-900",
17
+ "bg-zinc-200 text-zinc-700"
18
+ ];
19
+ /** Pill used for linked records, matching Airtable's light-blue chips. */
20
+ export const referencePill = "bg-sky-100 text-sky-900";
21
+ function hashString(value) {
22
+ let hash = 0;
23
+ for (let i = 0; i < value.length; i++) {
24
+ hash = (hash * 31 + value.charCodeAt(i)) | 0;
25
+ }
26
+ return Math.abs(hash);
27
+ }
28
+ /**
29
+ * Color classes for a select/tag value. When the full option list is known
30
+ * (enums) colors follow option order so they stay stable and collision-free;
31
+ * free-form tags fall back to hashing.
32
+ */
33
+ export function pillColor(value, options) {
34
+ if (options) {
35
+ const index = options.indexOf(value);
36
+ if (index >= 0)
37
+ return palette[index % palette.length];
38
+ }
39
+ return palette[hashString(value) % palette.length];
40
+ }
41
+ export const pillBase = "inline-flex max-w-full items-center rounded-full px-2 py-0.5 text-xs font-medium leading-5";
42
+ //# sourceMappingURL=colors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"colors.js","sourceRoot":"","sources":["../src/colors.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,OAAO,GAAG;IACd,yBAAyB;IACzB,iCAAiC;IACjC,6BAA6B;IAC7B,+BAA+B;IAC/B,2BAA2B;IAC3B,2BAA2B;IAC3B,+BAA+B;IAC/B,2BAA2B;IAC3B,iCAAiC;IACjC,2BAA2B;IAC3B,+BAA+B;IAC/B,2BAA2B;CAC5B,CAAC;AAEF,0EAA0E;AAC1E,MAAM,CAAC,MAAM,aAAa,GAAG,yBAAyB,CAAC;AAEvD,SAAS,UAAU,CAAC,KAAa;IAC/B,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,IAAI,GAAG,CAAC,IAAI,GAAG,EAAE,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAC/C,CAAC;IACD,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AACxB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,SAAS,CAAC,KAAa,EAAE,OAAkB;IACzD,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACrC,IAAI,KAAK,IAAI,CAAC;YAAE,OAAO,OAAO,CAAC,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACzD,CAAC;IACD,OAAO,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;AACrD,CAAC;AAED,MAAM,CAAC,MAAM,QAAQ,GAAG,4FAA4F,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { checkboxColumn, createTextColumn, DataSheetGrid, DynamicDataSheetGrid, floatColumn, intColumn, isoDateColumn, keyColumn, percentColumn, renderContextMenuItem, textColumn } from "@raybase/react-datasheet-grid";
2
+ export type { AddRowsComponentProps, CellProps, Column, ContextMenuComponentProps, DataSheetGridProps, DataSheetGridRef } from "@raybase/react-datasheet-grid";
3
+ //# sourceMappingURL=engine.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../src/engine.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,aAAa,EACb,oBAAoB,EACpB,WAAW,EACX,SAAS,EACT,aAAa,EACb,SAAS,EACT,aAAa,EACb,qBAAqB,EACrB,UAAU,EACX,MAAM,+BAA+B,CAAC;AAEvC,YAAY,EACV,qBAAqB,EACrB,SAAS,EACT,MAAM,EACN,yBAAyB,EACzB,kBAAkB,EAClB,gBAAgB,EACjB,MAAM,+BAA+B,CAAC"}
package/dist/engine.js ADDED
@@ -0,0 +1,2 @@
1
+ export { checkboxColumn, createTextColumn, DataSheetGrid, DynamicDataSheetGrid, floatColumn, intColumn, isoDateColumn, keyColumn, percentColumn, renderContextMenuItem, textColumn } from "@raybase/react-datasheet-grid";
2
+ //# sourceMappingURL=engine.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"engine.js","sourceRoot":"","sources":["../src/engine.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,aAAa,EACb,oBAAoB,EACpB,WAAW,EACX,SAAS,EACT,aAAa,EACb,SAAS,EACT,aAAa,EACb,qBAAqB,EACrB,UAAU,EACX,MAAM,+BAA+B,CAAC"}
@@ -0,0 +1,33 @@
1
+ import React from "react";
2
+ import type { BackendFilterCondition, ColumnMeta, ReferenceOption, TableMeta } from "./types.js";
3
+ /** UI-level operators; compiled per column kind into backend filter conditions. */
4
+ export type FilterOpId = "is" | "isNot" | "contains" | "notContains" | "startsWith" | "endsWith" | "gt" | "gte" | "lt" | "lte" | "isEmpty" | "notEmpty" | "hasTag";
5
+ export type FilterDef = {
6
+ id: number;
7
+ column: string;
8
+ op: FilterOpId;
9
+ value: string;
10
+ };
11
+ type OpChoice = {
12
+ id: FilterOpId;
13
+ label: string;
14
+ };
15
+ export declare function operatorChoices(column: ColumnMeta, jsonMode?: "tags" | "json"): OpChoice[];
16
+ export declare function defaultOp(column: ColumnMeta, jsonMode?: "tags" | "json"): FilterOpId;
17
+ /** A filter only takes effect once it has everything it needs. */
18
+ export declare function isCompleteFilter(table: TableMeta, filter: FilterDef): boolean;
19
+ /** Compile complete filters into the API's `filter` JSON shape, grouped by column. */
20
+ export declare function compileFilters(table: TableMeta, filters: FilterDef[]): Record<string, BackendFilterCondition[]>;
21
+ export declare function FilterBar({ table, references, jsonModes, tagSuggestions, filters, onFiltersChange, search, onSearchChange, disabled }: {
22
+ table: TableMeta;
23
+ references: Record<string, ReferenceOption[]>;
24
+ jsonModes: Record<string, "tags" | "json">;
25
+ tagSuggestions: Record<string, string[]>;
26
+ filters: FilterDef[];
27
+ onFiltersChange: (next: FilterDef[]) => void;
28
+ search: string;
29
+ onSearchChange: (next: string) => void;
30
+ disabled?: boolean;
31
+ }): React.JSX.Element;
32
+ export {};
33
+ //# sourceMappingURL=filter-bar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filter-bar.d.ts","sourceRoot":"","sources":["../src/filter-bar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsC,MAAM,OAAO,CAAC;AAE3D,OAAO,KAAK,EAAE,sBAAsB,EAAE,UAAU,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAIjG,mFAAmF;AACnF,MAAM,MAAM,UAAU,GAClB,IAAI,GACJ,OAAO,GACP,UAAU,GACV,aAAa,GACb,YAAY,GACZ,UAAU,GACV,IAAI,GACJ,KAAK,GACL,IAAI,GACJ,KAAK,GACL,SAAS,GACT,UAAU,GACV,QAAQ,CAAC;AAEb,MAAM,MAAM,SAAS,GAAG;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,EAAE,EAAE,UAAU,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,KAAK,QAAQ,GAAG;IAAE,EAAE,EAAE,UAAU,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAkBlD,wBAAgB,eAAe,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ,EAAE,CAmD1F;AAED,wBAAgB,SAAS,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,UAAU,CAEpF;AAED,kEAAkE;AAClE,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,GAAG,OAAO,CAQ7E;AAuDD,sFAAsF;AACtF,wBAAgB,cAAc,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,sBAAsB,EAAE,CAAC,CAU/G;AA8ID,wBAAgB,SAAS,CAAC,EACxB,KAAK,EACL,UAAU,EACV,SAAS,EACT,cAAc,EACd,OAAO,EACP,eAAe,EACf,MAAM,EACN,cAAc,EACd,QAAQ,EACT,EAAE;IACD,KAAK,EAAE,SAAS,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,EAAE,CAAC,CAAC;IAC9C,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;IAC3C,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACzC,OAAO,EAAE,SAAS,EAAE,CAAC;IACrB,eAAe,EAAE,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,IAAI,CAAC;IAC7C,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,qBA4KA"}
@@ -0,0 +1,304 @@
1
+ import React, { useEffect, useRef, useState } from "react";
2
+ import { formatDate } from "./utils.js";
3
+ import { cx, fieldBase, icons, selectBase } from "./ui.js";
4
+ import { Popover } from "./popover.js";
5
+ const emptyOps = [
6
+ { id: "isEmpty", label: "is empty" },
7
+ { id: "notEmpty", label: "is not empty" }
8
+ ];
9
+ function opNeedsValue(op) {
10
+ return op !== "isEmpty" && op !== "notEmpty";
11
+ }
12
+ /** Empty checks make sense unless the column can never be empty. */
13
+ function showEmptyOps(column) {
14
+ if (column.primaryKey)
15
+ return false;
16
+ // Required text can still hold "", so keep the empty checks for it.
17
+ return !column.required || column.kind === "text" || column.kind === "longText";
18
+ }
19
+ export function operatorChoices(column, jsonMode) {
20
+ const withEmpty = (ops) => (showEmptyOps(column) ? [...ops, ...emptyOps] : ops);
21
+ if (column.enumValues?.length || column.kind === "ref") {
22
+ return withEmpty([
23
+ { id: "is", label: "is" },
24
+ { id: "isNot", label: "is not" }
25
+ ]);
26
+ }
27
+ switch (column.kind) {
28
+ case "id":
29
+ return [
30
+ { id: "is", label: "is" },
31
+ { id: "contains", label: "contains" },
32
+ { id: "startsWith", label: "starts with" }
33
+ ];
34
+ case "boolean":
35
+ return withEmpty([{ id: "is", label: "is" }]);
36
+ case "integer":
37
+ case "real":
38
+ return withEmpty([
39
+ { id: "is", label: "=" },
40
+ { id: "isNot", label: "≠" },
41
+ { id: "gt", label: ">" },
42
+ { id: "gte", label: "≥" },
43
+ { id: "lt", label: "<" },
44
+ { id: "lte", label: "≤" }
45
+ ]);
46
+ case "date":
47
+ case "datetime":
48
+ return withEmpty([
49
+ { id: "is", label: "is" },
50
+ { id: "lt", label: "is before" },
51
+ { id: "gt", label: "is after" },
52
+ { id: "lte", label: "is on or before" },
53
+ { id: "gte", label: "is on or after" }
54
+ ]);
55
+ case "json":
56
+ return withEmpty(jsonMode === "json" ? [{ id: "contains", label: "contains" }] : [{ id: "hasTag", label: "has tag" }]);
57
+ case "secret":
58
+ // The server only answers "is it set?" for a secret column.
59
+ return emptyOps;
60
+ default:
61
+ return withEmpty([
62
+ { id: "contains", label: "contains" },
63
+ { id: "notContains", label: "doesn't contain" },
64
+ { id: "is", label: "is" },
65
+ { id: "isNot", label: "is not" },
66
+ { id: "startsWith", label: "starts with" },
67
+ { id: "endsWith", label: "ends with" }
68
+ ]);
69
+ }
70
+ }
71
+ export function defaultOp(column, jsonMode) {
72
+ return operatorChoices(column, jsonMode)[0]?.id ?? "is";
73
+ }
74
+ /** A filter only takes effect once it has everything it needs. */
75
+ export function isCompleteFilter(table, filter) {
76
+ const column = table.columns[filter.column];
77
+ if (!column)
78
+ return false;
79
+ if (!opNeedsValue(filter.op))
80
+ return true;
81
+ const value = filter.value.trim();
82
+ if (!value)
83
+ return false;
84
+ if ((column.kind === "integer" || column.kind === "real") && Number.isNaN(Number(value)))
85
+ return false;
86
+ return true;
87
+ }
88
+ const comparisonOps = { is: "eq", isNot: "neq", gt: "gt", gte: "gte", lt: "lt", lte: "lte" };
89
+ /**
90
+ * Datetimes are stored as text ("YYYY-MM-DDTHH:MM:SSZ" or SQLite's
91
+ * "YYYY-MM-DD HH:MM:SS"), so day-granularity comparisons work lexically:
92
+ * `day` sorts before every timestamp on that day and `day + "~"` after
93
+ * ("~" ranks above every datetime character), giving inclusive day bounds.
94
+ */
95
+ function datetimeCondition(op, day) {
96
+ switch (op) {
97
+ case "is":
98
+ return { op: "startsWith", value: day };
99
+ case "lt":
100
+ return { op: "lt", value: day };
101
+ case "gt":
102
+ return { op: "gt", value: `${day}~` };
103
+ case "lte":
104
+ return { op: "lt", value: `${day}~` };
105
+ case "gte":
106
+ return { op: "gte", value: day };
107
+ default:
108
+ return null;
109
+ }
110
+ }
111
+ function compileFilter(column, filter) {
112
+ const raw = filter.value.trim();
113
+ switch (filter.op) {
114
+ case "isEmpty":
115
+ case "notEmpty":
116
+ return { op: filter.op };
117
+ case "hasTag":
118
+ // Tags live in JSON arrays, so match the quoted JSON encoding of the tag.
119
+ return { op: "contains", value: JSON.stringify(raw) };
120
+ case "contains":
121
+ case "notContains":
122
+ case "startsWith":
123
+ case "endsWith":
124
+ return { op: filter.op, value: raw };
125
+ default:
126
+ break;
127
+ }
128
+ if (column.kind === "datetime")
129
+ return datetimeCondition(filter.op, raw);
130
+ const backendOp = comparisonOps[filter.op];
131
+ if (!backendOp)
132
+ return null;
133
+ if (column.kind === "integer" || column.kind === "real") {
134
+ const value = Number(raw);
135
+ return Number.isNaN(value) ? null : { op: backendOp, value };
136
+ }
137
+ if (column.kind === "boolean")
138
+ return { op: backendOp, value: raw === "true" };
139
+ return { op: backendOp, value: raw };
140
+ }
141
+ /** Compile complete filters into the API's `filter` JSON shape, grouped by column. */
142
+ export function compileFilters(table, filters) {
143
+ const grouped = {};
144
+ for (const filter of filters) {
145
+ const column = table.columns[filter.column];
146
+ if (!column || !isCompleteFilter(table, filter))
147
+ continue;
148
+ const condition = compileFilter(column, filter);
149
+ if (!condition)
150
+ continue;
151
+ (grouped[filter.column] ??= []).push(condition);
152
+ }
153
+ return grouped;
154
+ }
155
+ function filterValueLabel(column, filter, references) {
156
+ if (!opNeedsValue(filter.op))
157
+ return "";
158
+ if (column.kind === "ref") {
159
+ return references[filter.column]?.find((option) => option.id === filter.value)?.label ?? filter.value;
160
+ }
161
+ if (column.kind === "date" || column.kind === "datetime")
162
+ return formatDate(filter.value) || filter.value;
163
+ return filter.value;
164
+ }
165
+ function SearchInput({ value, onChange, disabled, disabledTitle }) {
166
+ return (React.createElement("div", { className: "relative", title: disabled ? disabledTitle : undefined },
167
+ React.createElement("span", { className: "pointer-events-none absolute inset-y-0 left-3 flex items-center text-zinc-400" }, icons.search),
168
+ React.createElement("input", { type: "search", className: cx(fieldBase, "w-56 pl-9 pr-8 [&::-webkit-search-cancel-button]:hidden"), placeholder: "Search records\u2026", value: value, disabled: disabled, onChange: (event) => onChange(event.target.value), onKeyDown: (event) => {
169
+ if (event.key === "Escape" && value) {
170
+ event.stopPropagation();
171
+ onChange("");
172
+ }
173
+ } }),
174
+ value && !disabled ? (React.createElement("button", { type: "button", className: "absolute inset-y-0 right-1.5 my-auto flex h-6 w-6 items-center justify-center rounded-md text-zinc-400 transition-colors hover:bg-zinc-100 hover:text-zinc-900", title: "Clear search", onClick: () => onChange("") }, icons.closeSmall)) : null));
175
+ }
176
+ function FilterValueInput({ column, columnKey, op, value, references, tagSuggestions, onChange, onCommit }) {
177
+ const inputRef = useRef(null);
178
+ // The popover starts hidden while it measures, so autoFocus would silently
179
+ // fail; focus once it is visible instead.
180
+ useEffect(() => {
181
+ const raf = requestAnimationFrame(() => inputRef.current?.focus());
182
+ return () => cancelAnimationFrame(raf);
183
+ }, [columnKey, op]);
184
+ const onKeyDown = (event) => {
185
+ if (event.key === "Enter")
186
+ onCommit();
187
+ };
188
+ if (column.enumValues?.length || column.kind === "ref" || column.kind === "boolean") {
189
+ const options = column.kind === "boolean"
190
+ ? [
191
+ { id: "true", label: "True" },
192
+ { id: "false", label: "False" }
193
+ ]
194
+ : column.kind === "ref"
195
+ ? references[columnKey] ?? []
196
+ : (column.enumValues ?? []).map((entry) => ({ id: entry, label: entry }));
197
+ return (React.createElement("select", { ref: inputRef, className: cx(selectBase, "w-full"), value: value, onChange: (event) => onChange(event.target.value), onKeyDown: onKeyDown },
198
+ React.createElement("option", { value: "", disabled: true }, "Select\u2026"),
199
+ options.map((option) => (React.createElement("option", { key: option.id, value: option.id }, option.label)))));
200
+ }
201
+ if (column.kind === "date" || column.kind === "datetime") {
202
+ return React.createElement("input", { ref: inputRef, type: "date", className: cx(fieldBase, "w-full"), value: value, onChange: (event) => onChange(event.target.value), onKeyDown: onKeyDown });
203
+ }
204
+ if (column.kind === "integer" || column.kind === "real") {
205
+ return (React.createElement("input", { ref: inputRef, type: "number", step: column.kind === "integer" ? 1 : "any", className: cx(fieldBase, "w-full"), placeholder: "Value", value: value, onChange: (event) => onChange(event.target.value), onKeyDown: onKeyDown }));
206
+ }
207
+ const suggestions = op === "hasTag" ? tagSuggestions[columnKey] ?? [] : [];
208
+ const datalistId = suggestions.length ? `rb-filter-tags-${columnKey}` : undefined;
209
+ return (React.createElement(React.Fragment, null,
210
+ React.createElement("input", { ref: inputRef, className: cx(fieldBase, "w-full"), placeholder: op === "hasTag" ? "Tag" : "Value", value: value, list: datalistId, onChange: (event) => onChange(event.target.value), onKeyDown: onKeyDown }),
211
+ datalistId ? (React.createElement("datalist", { id: datalistId }, suggestions.map((tag) => (React.createElement("option", { key: tag, value: tag }))))) : null));
212
+ }
213
+ export function FilterBar({ table, references, jsonModes, tagSuggestions, filters, onFiltersChange, search, onSearchChange, disabled }) {
214
+ const [editingId, setEditingId] = useState(null);
215
+ const [anchor, setAnchor] = useState(null);
216
+ const nextFilterId = useRef(1);
217
+ const disabledTitle = "Save or discard changes to filter";
218
+ const editingFilter = editingId !== null ? filters.find((filter) => filter.id === editingId) : undefined;
219
+ const updateFilter = (id, patch) => {
220
+ onFiltersChange(filters.map((filter) => (filter.id === id ? { ...filter, ...patch } : filter)));
221
+ };
222
+ const removeFilter = (id) => {
223
+ if (editingId === id) {
224
+ setEditingId(null);
225
+ setAnchor(null);
226
+ }
227
+ onFiltersChange(filters.filter((filter) => filter.id !== id));
228
+ };
229
+ const closeEditor = () => {
230
+ // Filters apply live while editing; closing just discards incomplete ones.
231
+ const current = editingId !== null ? filters.find((filter) => filter.id === editingId) : undefined;
232
+ setEditingId(null);
233
+ setAnchor(null);
234
+ if (current && !isCompleteFilter(table, current)) {
235
+ onFiltersChange(filters.filter((filter) => filter.id !== current.id));
236
+ }
237
+ };
238
+ const addFilter = () => {
239
+ const columnKey = Object.keys(table.columns).find((key) => !table.columns[key].primaryKey) ?? Object.keys(table.columns)[0];
240
+ if (!columnKey)
241
+ return;
242
+ const column = table.columns[columnKey];
243
+ const filter = {
244
+ id: nextFilterId.current++,
245
+ column: columnKey,
246
+ op: defaultOp(column, jsonModes[columnKey]),
247
+ value: column.kind === "boolean" ? "true" : ""
248
+ };
249
+ setAnchor(null);
250
+ onFiltersChange([...filters, filter]);
251
+ setEditingId(filter.id);
252
+ };
253
+ const changeColumn = (filter, columnKey) => {
254
+ const column = table.columns[columnKey];
255
+ if (!column)
256
+ return;
257
+ updateFilter(filter.id, {
258
+ column: columnKey,
259
+ op: defaultOp(column, jsonModes[columnKey]),
260
+ // Booleans are complete the moment they are picked; everything else starts blank.
261
+ value: column.kind === "boolean" ? "true" : ""
262
+ });
263
+ };
264
+ const changeOp = (filter, op) => {
265
+ updateFilter(filter.id, { op, value: opNeedsValue(op) ? filter.value : "" });
266
+ };
267
+ const editorColumn = editingFilter ? table.columns[editingFilter.column] : undefined;
268
+ return (React.createElement("div", { className: "flex min-w-0 flex-1 flex-wrap items-center gap-2" },
269
+ React.createElement(SearchInput, { value: search, onChange: onSearchChange, disabled: disabled, disabledTitle: disabledTitle }),
270
+ filters.map((filter) => {
271
+ const column = table.columns[filter.column];
272
+ if (!column)
273
+ return null;
274
+ const opLabel = operatorChoices(column, jsonModes[filter.column]).find((choice) => choice.id === filter.op)?.label ?? filter.op;
275
+ const valueLabel = filterValueLabel(column, filter, references);
276
+ return (React.createElement("div", { key: filter.id, className: cx("inline-flex h-9 shrink-0 items-center overflow-hidden rounded-lg border bg-white text-sm transition-colors", editingId === filter.id ? "border-zinc-400 ring-2 ring-zinc-400/30" : "border-zinc-200") },
277
+ React.createElement("button", { type: "button", ref: (element) => {
278
+ if (element && editingId === filter.id && anchor !== element)
279
+ setAnchor(element);
280
+ }, className: "flex h-full min-w-0 items-center gap-1.5 pl-3 pr-2 transition-colors hover:bg-zinc-50 disabled:pointer-events-none disabled:opacity-50", disabled: disabled, title: disabled ? disabledTitle : "Edit filter", onClick: (event) => {
281
+ setAnchor(event.currentTarget);
282
+ setEditingId(filter.id);
283
+ } },
284
+ React.createElement("span", { className: "shrink-0 font-medium text-zinc-700" }, column.label),
285
+ React.createElement("span", { className: "shrink-0 text-zinc-400" }, opLabel),
286
+ opNeedsValue(filter.op) ? (valueLabel ? (React.createElement("span", { className: "max-w-44 truncate font-medium text-zinc-900" }, valueLabel)) : (React.createElement("span", { className: "italic text-zinc-300" }, "value\u2026"))) : null),
287
+ React.createElement("button", { type: "button", className: "flex h-full items-center border-l border-zinc-100 px-1.5 text-zinc-400 transition-colors hover:bg-zinc-50 hover:text-zinc-900 disabled:pointer-events-none disabled:opacity-50", disabled: disabled, title: disabled ? disabledTitle : "Remove filter", onClick: () => removeFilter(filter.id) }, icons.closeSmall)));
288
+ }),
289
+ React.createElement("button", { type: "button", className: "inline-flex h-9 shrink-0 items-center gap-1.5 rounded-lg border border-dashed border-zinc-300 px-3 text-sm font-medium text-zinc-500 transition-colors hover:border-zinc-400 hover:bg-zinc-50 hover:text-zinc-900 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-zinc-400/70 disabled:pointer-events-none disabled:opacity-50", disabled: disabled, title: disabled ? disabledTitle : undefined, onClick: addFilter },
290
+ icons.filter,
291
+ "Filter"),
292
+ (filters.length || search) && !disabled ? (React.createElement("button", { type: "button", className: "inline-flex h-9 shrink-0 items-center rounded-lg px-2.5 text-sm font-medium text-zinc-400 transition-colors hover:bg-zinc-100 hover:text-zinc-900", onClick: () => {
293
+ setEditingId(null);
294
+ setAnchor(null);
295
+ onFiltersChange([]);
296
+ onSearchChange("");
297
+ } }, "Clear all")) : null,
298
+ editingFilter && editorColumn && anchor ? (React.createElement(Popover, { anchor: anchor, onClose: closeEditor, minWidth: 264, maxWidth: 320 },
299
+ React.createElement("div", { className: "grid gap-2 p-3", onKeyDown: (event) => event.stopPropagation() },
300
+ React.createElement("select", { className: cx(selectBase, "w-full"), value: editingFilter.column, onChange: (event) => changeColumn(editingFilter, event.target.value) }, Object.entries(table.columns).map(([key, column]) => (React.createElement("option", { key: key, value: key }, column.label)))),
301
+ React.createElement("select", { className: cx(selectBase, "w-full"), value: editingFilter.op, onChange: (event) => changeOp(editingFilter, event.target.value) }, operatorChoices(editorColumn, jsonModes[editingFilter.column]).map((choice) => (React.createElement("option", { key: choice.id, value: choice.id }, choice.label)))),
302
+ opNeedsValue(editingFilter.op) ? (React.createElement(FilterValueInput, { column: editorColumn, columnKey: editingFilter.column, op: editingFilter.op, value: editingFilter.value, references: references, tagSuggestions: tagSuggestions, onChange: (next) => updateFilter(editingFilter.id, { value: next }), onCommit: closeEditor })) : null))) : null));
303
+ }
304
+ //# sourceMappingURL=filter-bar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filter-bar.js","sourceRoot":"","sources":["../src/filter-bar.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ export { DatasheetGridView } from "./view.js";
2
+ export type { DatasheetGridAdapter, DatasheetGridMode, DatasheetGridViewProps, ListInput } from "./adapter.js";
3
+ export type { BackendFilterCondition, GridColumnMeta, GridRow, GridTableMeta, ReferenceOption } from "./types.js";
4
+ export { buildGridColumns, type BuildGridColumnsInput, type ColumnResizeHandlers, type HeaderSortHandlers } from "./cells.js";
5
+ export { compileFilters, defaultOp, FilterBar, type FilterDef, isCompleteFilter, operatorChoices } from "./filter-bar.js";
6
+ export { RecordPanel, type RecordPanelProps } from "./record-panel.js";
7
+ export { collectTagSuggestions, defaultRecordTitle, formatDate, formatDateTime, isNullValue, isPrimitiveArray, jsonColumnMode, parseStoredDate, parseTypedDate, toIsoDate } from "./utils.js";
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAC9C,YAAY,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC/G,YAAY,EAAE,sBAAsB,EAAE,cAAc,EAAE,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAClH,OAAO,EACL,gBAAgB,EAChB,KAAK,qBAAqB,EAC1B,KAAK,oBAAoB,EACzB,KAAK,kBAAkB,EACxB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,cAAc,EACd,SAAS,EACT,SAAS,EACT,KAAK,SAAS,EACd,gBAAgB,EAChB,eAAe,EAChB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,WAAW,EAAE,KAAK,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACvE,OAAO,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,UAAU,EAAE,cAAc,EAAE,WAAW,EAAE,gBAAgB,EAAE,cAAc,EAAE,eAAe,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,6 @@
1
+ export { DatasheetGridView } from "./view.js";
2
+ export { buildGridColumns } from "./cells.js";
3
+ export { compileFilters, defaultOp, FilterBar, isCompleteFilter, operatorChoices } from "./filter-bar.js";
4
+ export { RecordPanel } from "./record-panel.js";
5
+ export { collectTagSuggestions, defaultRecordTitle, formatDate, formatDateTime, isNullValue, isPrimitiveArray, jsonColumnMode, parseStoredDate, parseTypedDate, toIsoDate } from "./utils.js";
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAG9C,OAAO,EACL,gBAAgB,EAIjB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,cAAc,EACd,SAAS,EACT,SAAS,EAET,gBAAgB,EAChB,eAAe,EAChB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,WAAW,EAAyB,MAAM,mBAAmB,CAAC;AACvE,OAAO,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,UAAU,EAAE,cAAc,EAAE,WAAW,EAAE,gBAAgB,EAAE,cAAc,EAAE,eAAe,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC"}
@@ -0,0 +1,22 @@
1
+ import React from "react";
2
+ /** Why the popover closed: Escape cancels, anything else means "confirm". */
3
+ export type PopoverCloseReason = "escape" | "outside";
4
+ type PopoverProps = {
5
+ /** Element the popover is anchored to (usually the cell or a trigger button). */
6
+ anchor: HTMLElement | null;
7
+ onClose: (reason: PopoverCloseReason) => void;
8
+ children: React.ReactNode;
9
+ /** Minimum width; the popover also grows to at least the anchor's width. */
10
+ minWidth?: number;
11
+ maxWidth?: number;
12
+ className?: string;
13
+ /** Align to the anchor's left edge (default) or stretch to match its width. */
14
+ matchAnchorWidth?: boolean;
15
+ };
16
+ /**
17
+ * Anchored floating panel rendered into document.body. Closes on outside
18
+ * pointer-down, Escape, window resize, and scrolling outside the popover.
19
+ */
20
+ export declare function Popover({ anchor, onClose, children, minWidth, maxWidth, className, matchAnchorWidth }: PopoverProps): React.ReactPortal;
21
+ export {};
22
+ //# sourceMappingURL=popover.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"popover.d.ts","sourceRoot":"","sources":["../src/popover.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAuD,MAAM,OAAO,CAAC;AAI5E,6EAA6E;AAC7E,MAAM,MAAM,kBAAkB,GAAG,QAAQ,GAAG,SAAS,CAAC;AAEtD,KAAK,YAAY,GAAG;IAClB,iFAAiF;IACjF,MAAM,EAAE,WAAW,GAAG,IAAI,CAAC;IAC3B,OAAO,EAAE,CAAC,MAAM,EAAE,kBAAkB,KAAK,IAAI,CAAC;IAC9C,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,4EAA4E;IAC5E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,+EAA+E;IAC/E,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B,CAAC;AAEF;;;GAGG;AACH,wBAAgB,OAAO,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAc,EAAE,QAAc,EAAE,SAAS,EAAE,gBAAgB,EAAE,EAAE,YAAY,qBAkE/H"}