schummar-table 0.33.0 → 0.34.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/cjs/index.js +215 -168
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/mui4Theme.js +3 -3
- package/dist/cjs/mui5Theme.js +3 -3
- package/dist/cjs/tableTheme.js +478 -18
- package/dist/cjs/tableTheme.js.map +1 -1
- package/dist/es/index.js +119 -72
- package/dist/es/index.js.map +1 -1
- package/dist/es/mui4Theme.js +1 -1
- package/dist/es/mui5Theme.js +1 -1
- package/dist/es/tableTheme.js +465 -5
- package/dist/es/tableTheme.js.map +1 -1
- package/dist/types/components/dateFilter.d.ts +2 -2
- package/dist/types/components/datePicker.d.ts +6 -1
- package/dist/types/types.d.ts +1 -0
- package/package.json +19 -19
package/dist/es/mui4Theme.js
CHANGED
|
@@ -4,7 +4,7 @@ import { useMemo } from "react";
|
|
|
4
4
|
import { P as Popover, m as mergeThemes, T as TableThemeContext } from "./tableTheme.js";
|
|
5
5
|
import "react-dom";
|
|
6
6
|
import "@emotion/react";
|
|
7
|
-
import "
|
|
7
|
+
import "immer";
|
|
8
8
|
function _EMOTION_STRINGIFIED_CSS_ERROR__() {
|
|
9
9
|
return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop).";
|
|
10
10
|
}
|
package/dist/es/mui5Theme.js
CHANGED
|
@@ -4,7 +4,7 @@ import { useMemo } from "react";
|
|
|
4
4
|
import { P as Popover, m as mergeThemes, T as TableThemeContext } from "./tableTheme.js";
|
|
5
5
|
import "react-dom";
|
|
6
6
|
import "@emotion/react";
|
|
7
|
-
import "
|
|
7
|
+
import "immer";
|
|
8
8
|
function _EMOTION_STRINGIFIED_CSS_ERROR__() {
|
|
9
9
|
return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop).";
|
|
10
10
|
}
|
package/dist/es/tableTheme.js
CHANGED
|
@@ -1,8 +1,466 @@
|
|
|
1
1
|
import { jsxs, Fragment, jsx } from "@emotion/react/jsx-runtime";
|
|
2
|
-
import { useRef, useState, useLayoutEffect
|
|
2
|
+
import React, { useCallback, useDebugValue, useMemo, createContext, useContext, useRef, useState, useLayoutEffect } from "react";
|
|
3
3
|
import { createPortal } from "react-dom";
|
|
4
4
|
import { css } from "@emotion/react";
|
|
5
|
-
import {
|
|
5
|
+
import { freeze, enableMapSet, enablePatches, produce, applyPatches } from "immer";
|
|
6
|
+
var react = function equal(a, b) {
|
|
7
|
+
if (a === b)
|
|
8
|
+
return true;
|
|
9
|
+
if (a && b && typeof a == "object" && typeof b == "object") {
|
|
10
|
+
if (a.constructor !== b.constructor)
|
|
11
|
+
return false;
|
|
12
|
+
var length, i, keys;
|
|
13
|
+
if (Array.isArray(a)) {
|
|
14
|
+
length = a.length;
|
|
15
|
+
if (length != b.length)
|
|
16
|
+
return false;
|
|
17
|
+
for (i = length; i-- !== 0; )
|
|
18
|
+
if (!equal(a[i], b[i]))
|
|
19
|
+
return false;
|
|
20
|
+
return true;
|
|
21
|
+
}
|
|
22
|
+
if (a instanceof Map && b instanceof Map) {
|
|
23
|
+
if (a.size !== b.size)
|
|
24
|
+
return false;
|
|
25
|
+
for (i of a.entries())
|
|
26
|
+
if (!b.has(i[0]))
|
|
27
|
+
return false;
|
|
28
|
+
for (i of a.entries())
|
|
29
|
+
if (!equal(i[1], b.get(i[0])))
|
|
30
|
+
return false;
|
|
31
|
+
return true;
|
|
32
|
+
}
|
|
33
|
+
if (a instanceof Set && b instanceof Set) {
|
|
34
|
+
if (a.size !== b.size)
|
|
35
|
+
return false;
|
|
36
|
+
for (i of a.entries())
|
|
37
|
+
if (!b.has(i[0]))
|
|
38
|
+
return false;
|
|
39
|
+
return true;
|
|
40
|
+
}
|
|
41
|
+
if (ArrayBuffer.isView(a) && ArrayBuffer.isView(b)) {
|
|
42
|
+
length = a.length;
|
|
43
|
+
if (length != b.length)
|
|
44
|
+
return false;
|
|
45
|
+
for (i = length; i-- !== 0; )
|
|
46
|
+
if (a[i] !== b[i])
|
|
47
|
+
return false;
|
|
48
|
+
return true;
|
|
49
|
+
}
|
|
50
|
+
if (a.constructor === RegExp)
|
|
51
|
+
return a.source === b.source && a.flags === b.flags;
|
|
52
|
+
if (a.valueOf !== Object.prototype.valueOf)
|
|
53
|
+
return a.valueOf() === b.valueOf();
|
|
54
|
+
if (a.toString !== Object.prototype.toString)
|
|
55
|
+
return a.toString() === b.toString();
|
|
56
|
+
keys = Object.keys(a);
|
|
57
|
+
length = keys.length;
|
|
58
|
+
if (length !== Object.keys(b).length)
|
|
59
|
+
return false;
|
|
60
|
+
for (i = length; i-- !== 0; )
|
|
61
|
+
if (!Object.prototype.hasOwnProperty.call(b, keys[i]))
|
|
62
|
+
return false;
|
|
63
|
+
for (i = length; i-- !== 0; ) {
|
|
64
|
+
var key = keys[i];
|
|
65
|
+
if (key === "_owner" && a.$$typeof) {
|
|
66
|
+
continue;
|
|
67
|
+
}
|
|
68
|
+
if (!equal(a[key], b[key]))
|
|
69
|
+
return false;
|
|
70
|
+
}
|
|
71
|
+
return true;
|
|
72
|
+
}
|
|
73
|
+
return a !== a && b !== b;
|
|
74
|
+
};
|
|
75
|
+
function createSelector(stringSelector) {
|
|
76
|
+
const parts = stringSelector.split(".");
|
|
77
|
+
return (state) => parts.reduce((v2, p2) => v2 instanceof Object && p2 in v2 ? v2[p2] : void 0, state);
|
|
78
|
+
}
|
|
79
|
+
function setWithSelector(state, stringSelector, value) {
|
|
80
|
+
const parts = stringSelector.split(".");
|
|
81
|
+
const prefix = parts.slice(0, -1);
|
|
82
|
+
const last = parts[parts.length - 1];
|
|
83
|
+
for (const part of prefix) {
|
|
84
|
+
if (state instanceof Object && part in state) {
|
|
85
|
+
state = state[part];
|
|
86
|
+
} else {
|
|
87
|
+
throw Error(`Could not set ${stringSelector} because path ${stringSelector} doesn't exist`);
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
if (state instanceof Object) {
|
|
91
|
+
state[last] = value;
|
|
92
|
+
} else {
|
|
93
|
+
throw Error(`Could not set ${stringSelector} because path ${stringSelector} doesn't exist`);
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
function throttle(fn, ms) {
|
|
97
|
+
let last = 0;
|
|
98
|
+
let lastArgs;
|
|
99
|
+
let timeout;
|
|
100
|
+
function run() {
|
|
101
|
+
const args = lastArgs;
|
|
102
|
+
last = Date.now();
|
|
103
|
+
lastArgs = void 0;
|
|
104
|
+
timeout = void 0;
|
|
105
|
+
fn(...args);
|
|
106
|
+
}
|
|
107
|
+
return function(...args) {
|
|
108
|
+
const now = Date.now();
|
|
109
|
+
lastArgs = args;
|
|
110
|
+
if (timeout)
|
|
111
|
+
;
|
|
112
|
+
else if (now < last + ms) {
|
|
113
|
+
timeout = setTimeout(run, last + ms - now);
|
|
114
|
+
} else {
|
|
115
|
+
run();
|
|
116
|
+
}
|
|
117
|
+
};
|
|
118
|
+
}
|
|
119
|
+
const RESTART_UPDATE = Symbol("RESTART_UPDATE");
|
|
120
|
+
let Store$1 = class Store {
|
|
121
|
+
constructor(state, { log = (...data) => console.error(...data) } = {}) {
|
|
122
|
+
this.state = state;
|
|
123
|
+
this.subscriptions = /* @__PURE__ */ new Set();
|
|
124
|
+
this.batchCounter = 0;
|
|
125
|
+
this.reactions = /* @__PURE__ */ new Set();
|
|
126
|
+
this.patches = new Array();
|
|
127
|
+
freeze(state, true);
|
|
128
|
+
enableMapSet();
|
|
129
|
+
enablePatches();
|
|
130
|
+
this.options = {
|
|
131
|
+
log
|
|
132
|
+
};
|
|
133
|
+
}
|
|
134
|
+
getState() {
|
|
135
|
+
return this.state;
|
|
136
|
+
}
|
|
137
|
+
update(update) {
|
|
138
|
+
this.checkLock();
|
|
139
|
+
this.state = produce(this.state, (draft) => update(draft, this.state), (patches) => this.patches.push(...patches));
|
|
140
|
+
this.notify();
|
|
141
|
+
}
|
|
142
|
+
set(state) {
|
|
143
|
+
this.checkLock();
|
|
144
|
+
this.state = produce(this.state, () => state, (patches) => this.patches.push(...patches));
|
|
145
|
+
this.notify();
|
|
146
|
+
}
|
|
147
|
+
applyPatches(patches) {
|
|
148
|
+
this.checkLock();
|
|
149
|
+
this.state = applyPatches(this.state, patches);
|
|
150
|
+
this.patches.push(...patches);
|
|
151
|
+
this.notify();
|
|
152
|
+
}
|
|
153
|
+
batchUpdates(fn) {
|
|
154
|
+
try {
|
|
155
|
+
this.batchCounter++;
|
|
156
|
+
fn();
|
|
157
|
+
} finally {
|
|
158
|
+
this.batchCounter--;
|
|
159
|
+
if (this.batchCounter === 0) {
|
|
160
|
+
this.notify();
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
subscribe(...args) {
|
|
165
|
+
let selector, listener, options;
|
|
166
|
+
if (args[1] instanceof Function) {
|
|
167
|
+
[selector, listener, options] = args;
|
|
168
|
+
if (typeof selector === "string") {
|
|
169
|
+
selector = createSelector(selector);
|
|
170
|
+
}
|
|
171
|
+
} else {
|
|
172
|
+
[selector, listener, options] = [(x) => x, ...args];
|
|
173
|
+
}
|
|
174
|
+
const { runNow = true, throttle: throttle$1 = 0, compare = react } = options != null ? options : {};
|
|
175
|
+
const throttledListener = throttle$1 ? throttle(listener, throttle$1) : listener;
|
|
176
|
+
let value = selector(this.state);
|
|
177
|
+
const internalListener = (state, _patches, init) => {
|
|
178
|
+
try {
|
|
179
|
+
const oldValue = value;
|
|
180
|
+
value = selector(state);
|
|
181
|
+
if (!init && compare(value, oldValue))
|
|
182
|
+
return;
|
|
183
|
+
(init ? listener : throttledListener)(value, oldValue, this.state);
|
|
184
|
+
} catch (e2) {
|
|
185
|
+
this.options.log("Failed to execute listener:", e2);
|
|
186
|
+
}
|
|
187
|
+
};
|
|
188
|
+
this.subscriptions.add(internalListener);
|
|
189
|
+
if (runNow)
|
|
190
|
+
internalListener(this.state, [], true);
|
|
191
|
+
return () => {
|
|
192
|
+
this.subscriptions.delete(internalListener);
|
|
193
|
+
};
|
|
194
|
+
}
|
|
195
|
+
addReaction(...args) {
|
|
196
|
+
let selector, reaction, options;
|
|
197
|
+
if (args[1] instanceof Function) {
|
|
198
|
+
[selector, reaction, options] = args;
|
|
199
|
+
if (typeof selector === "string") {
|
|
200
|
+
selector = createSelector(selector);
|
|
201
|
+
}
|
|
202
|
+
} else {
|
|
203
|
+
[selector, reaction, options] = [(x) => x, ...args];
|
|
204
|
+
}
|
|
205
|
+
const { runNow = true, compare = react } = options != null ? options : {};
|
|
206
|
+
let value = selector(this.state);
|
|
207
|
+
const internalListener = (init) => {
|
|
208
|
+
let hasChanged = false;
|
|
209
|
+
try {
|
|
210
|
+
this.lock = "reaction";
|
|
211
|
+
const oldValue = value;
|
|
212
|
+
value = selector(this.state);
|
|
213
|
+
if (!init && compare(value, oldValue))
|
|
214
|
+
return;
|
|
215
|
+
this.state = produce(this.state, (draft) => reaction(value, draft, this.state, oldValue), (patches) => {
|
|
216
|
+
hasChanged = true;
|
|
217
|
+
this.patches.push(...patches);
|
|
218
|
+
});
|
|
219
|
+
} catch (e2) {
|
|
220
|
+
this.options.log("Failed to execute reaction:", e2);
|
|
221
|
+
} finally {
|
|
222
|
+
delete this.lock;
|
|
223
|
+
}
|
|
224
|
+
if (hasChanged && !init)
|
|
225
|
+
throw RESTART_UPDATE;
|
|
226
|
+
if (hasChanged && init)
|
|
227
|
+
this.notify();
|
|
228
|
+
};
|
|
229
|
+
this.reactions.add(internalListener);
|
|
230
|
+
if (runNow)
|
|
231
|
+
internalListener(true);
|
|
232
|
+
return () => {
|
|
233
|
+
this.reactions.delete(internalListener);
|
|
234
|
+
};
|
|
235
|
+
}
|
|
236
|
+
subscribePatches(listener) {
|
|
237
|
+
const internalListener = (_state, patches) => {
|
|
238
|
+
try {
|
|
239
|
+
listener(patches);
|
|
240
|
+
} catch (e2) {
|
|
241
|
+
this.options.log("Failed to execute patch listener:", e2);
|
|
242
|
+
}
|
|
243
|
+
};
|
|
244
|
+
this.subscriptions.add(internalListener);
|
|
245
|
+
return () => {
|
|
246
|
+
this.subscriptions.delete(internalListener);
|
|
247
|
+
};
|
|
248
|
+
}
|
|
249
|
+
checkLock() {
|
|
250
|
+
if (this.lock === "reaction") {
|
|
251
|
+
throw Error("You cannot call update from within a reaction. Use the passed draft instead.");
|
|
252
|
+
}
|
|
253
|
+
}
|
|
254
|
+
notify() {
|
|
255
|
+
if (this.batchCounter > 0 || this.patches.length === 0)
|
|
256
|
+
return;
|
|
257
|
+
try {
|
|
258
|
+
for (const reaction of this.reactions) {
|
|
259
|
+
reaction();
|
|
260
|
+
}
|
|
261
|
+
} catch (e2) {
|
|
262
|
+
return this.notify();
|
|
263
|
+
}
|
|
264
|
+
const patches = this.patches;
|
|
265
|
+
this.patches = [];
|
|
266
|
+
this.batchUpdates(() => {
|
|
267
|
+
for (const subscription of this.subscriptions) {
|
|
268
|
+
subscription(this.state, patches);
|
|
269
|
+
}
|
|
270
|
+
});
|
|
271
|
+
}
|
|
272
|
+
};
|
|
273
|
+
var __defProp = Object.defineProperty;
|
|
274
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
275
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
276
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
277
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
278
|
+
var __spreadValues = (a2, b) => {
|
|
279
|
+
for (var prop in b || (b = {}))
|
|
280
|
+
if (__hasOwnProp.call(b, prop))
|
|
281
|
+
__defNormalProp(a2, prop, b[prop]);
|
|
282
|
+
if (__getOwnPropSymbols)
|
|
283
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
|
284
|
+
if (__propIsEnum.call(b, prop))
|
|
285
|
+
__defNormalProp(a2, prop, b[prop]);
|
|
286
|
+
}
|
|
287
|
+
return a2;
|
|
288
|
+
};
|
|
289
|
+
var withSelector = { exports: {} };
|
|
290
|
+
var withSelector_production_min = {};
|
|
291
|
+
var shim = { exports: {} };
|
|
292
|
+
var useSyncExternalStoreShim_production_min = {};
|
|
293
|
+
/** @license React vundefined
|
|
294
|
+
* use-sync-external-store-shim.production.min.js
|
|
295
|
+
*
|
|
296
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
297
|
+
*
|
|
298
|
+
* This source code is licensed under the MIT license found in the
|
|
299
|
+
* LICENSE file in the root directory of this source tree.
|
|
300
|
+
*/
|
|
301
|
+
var e = React;
|
|
302
|
+
function h$1(a2, b) {
|
|
303
|
+
return a2 === b && (a2 !== 0 || 1 / a2 === 1 / b) || a2 !== a2 && b !== b;
|
|
304
|
+
}
|
|
305
|
+
var k = typeof Object.is === "function" ? Object.is : h$1, l = e.useState, m = e.useEffect, n$1 = e.useLayoutEffect, p$1 = e.useDebugValue;
|
|
306
|
+
function q$1(a2, b) {
|
|
307
|
+
var d = b(), f = l({ inst: { value: d, getSnapshot: b } }), c = f[0].inst, g = f[1];
|
|
308
|
+
n$1(function() {
|
|
309
|
+
c.value = d;
|
|
310
|
+
c.getSnapshot = b;
|
|
311
|
+
r$1(c) && g({ inst: c });
|
|
312
|
+
}, [a2, d, b]);
|
|
313
|
+
m(function() {
|
|
314
|
+
r$1(c) && g({ inst: c });
|
|
315
|
+
return a2(function() {
|
|
316
|
+
r$1(c) && g({ inst: c });
|
|
317
|
+
});
|
|
318
|
+
}, [a2]);
|
|
319
|
+
p$1(d);
|
|
320
|
+
return d;
|
|
321
|
+
}
|
|
322
|
+
function r$1(a2) {
|
|
323
|
+
var b = a2.getSnapshot;
|
|
324
|
+
a2 = a2.value;
|
|
325
|
+
try {
|
|
326
|
+
var d = b();
|
|
327
|
+
return !k(a2, d);
|
|
328
|
+
} catch (f) {
|
|
329
|
+
return true;
|
|
330
|
+
}
|
|
331
|
+
}
|
|
332
|
+
function t$1(a2, b) {
|
|
333
|
+
return b();
|
|
334
|
+
}
|
|
335
|
+
var u$1 = typeof window === "undefined" || typeof window.document === "undefined" || typeof window.document.createElement === "undefined" ? t$1 : q$1;
|
|
336
|
+
useSyncExternalStoreShim_production_min.useSyncExternalStore = e.useSyncExternalStore !== void 0 ? e.useSyncExternalStore : u$1;
|
|
337
|
+
{
|
|
338
|
+
shim.exports = useSyncExternalStoreShim_production_min;
|
|
339
|
+
}
|
|
340
|
+
/** @license React vundefined
|
|
341
|
+
* use-sync-external-store-shim/with-selector.production.min.js
|
|
342
|
+
*
|
|
343
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
344
|
+
*
|
|
345
|
+
* This source code is licensed under the MIT license found in the
|
|
346
|
+
* LICENSE file in the root directory of this source tree.
|
|
347
|
+
*/
|
|
348
|
+
var h = React, n = shim.exports;
|
|
349
|
+
function p(a2, b) {
|
|
350
|
+
return a2 === b && (a2 !== 0 || 1 / a2 === 1 / b) || a2 !== a2 && b !== b;
|
|
351
|
+
}
|
|
352
|
+
var q = typeof Object.is === "function" ? Object.is : p, r = n.useSyncExternalStore, t = h.useRef, u = h.useEffect, v = h.useMemo, w = h.useDebugValue;
|
|
353
|
+
withSelector_production_min.useSyncExternalStoreWithSelector = function(a2, b, e2, l2, g) {
|
|
354
|
+
var c = t(null);
|
|
355
|
+
if (c.current === null) {
|
|
356
|
+
var f = { hasValue: false, value: null };
|
|
357
|
+
c.current = f;
|
|
358
|
+
} else
|
|
359
|
+
f = c.current;
|
|
360
|
+
c = v(function() {
|
|
361
|
+
function a3(a4) {
|
|
362
|
+
if (!c2) {
|
|
363
|
+
c2 = true;
|
|
364
|
+
d2 = a4;
|
|
365
|
+
a4 = l2(a4);
|
|
366
|
+
if (g !== void 0 && f.hasValue) {
|
|
367
|
+
var b2 = f.value;
|
|
368
|
+
if (g(b2, a4))
|
|
369
|
+
return k2 = b2;
|
|
370
|
+
}
|
|
371
|
+
return k2 = a4;
|
|
372
|
+
}
|
|
373
|
+
b2 = k2;
|
|
374
|
+
if (q(d2, a4))
|
|
375
|
+
return b2;
|
|
376
|
+
var e3 = l2(a4);
|
|
377
|
+
if (g !== void 0 && g(b2, e3))
|
|
378
|
+
return b2;
|
|
379
|
+
d2 = a4;
|
|
380
|
+
return k2 = e3;
|
|
381
|
+
}
|
|
382
|
+
var c2 = false, d2, k2, m2 = e2 === void 0 ? null : e2;
|
|
383
|
+
return [function() {
|
|
384
|
+
return a3(b());
|
|
385
|
+
}, m2 === null ? void 0 : function() {
|
|
386
|
+
return a3(m2());
|
|
387
|
+
}];
|
|
388
|
+
}, [b, e2, l2, g]);
|
|
389
|
+
var d = r(a2, c[0], c[1]);
|
|
390
|
+
u(function() {
|
|
391
|
+
f.hasValue = true;
|
|
392
|
+
f.value = d;
|
|
393
|
+
}, [d]);
|
|
394
|
+
w(d);
|
|
395
|
+
return d;
|
|
396
|
+
};
|
|
397
|
+
{
|
|
398
|
+
withSelector.exports = withSelector_production_min;
|
|
399
|
+
}
|
|
400
|
+
function useStoreState(store, ...args) {
|
|
401
|
+
var _a, _b, _c, _d;
|
|
402
|
+
let selector, options;
|
|
403
|
+
if (args[0] instanceof Function) {
|
|
404
|
+
selector = args[0];
|
|
405
|
+
options = (_a = args[1]) != null ? _a : {};
|
|
406
|
+
} else if (typeof args[0] === "string") {
|
|
407
|
+
selector = createSelector(args[0]);
|
|
408
|
+
options = (_b = args[1]) != null ? _b : {};
|
|
409
|
+
} else {
|
|
410
|
+
selector = (x) => x;
|
|
411
|
+
options = (_c = args[0]) != null ? _c : {};
|
|
412
|
+
}
|
|
413
|
+
const subscribe = useCallback((listener) => {
|
|
414
|
+
return store.subscribe((x) => x, listener, {
|
|
415
|
+
throttle: options.throttle,
|
|
416
|
+
runNow: false,
|
|
417
|
+
compare: (a2, b) => a2 === b
|
|
418
|
+
});
|
|
419
|
+
}, [store, options.throttle]);
|
|
420
|
+
const getSnapshot = useCallback(() => store.getState(), [store]);
|
|
421
|
+
const value = withSelector.exports.useSyncExternalStoreWithSelector(subscribe, getSnapshot, getSnapshot, selector, (_d = options.compare) != null ? _d : react);
|
|
422
|
+
useDebugValue(value);
|
|
423
|
+
return value;
|
|
424
|
+
}
|
|
425
|
+
function useStoreProp(store, selector) {
|
|
426
|
+
const value = useStoreState(store, selector);
|
|
427
|
+
const update = (value2) => store.update((state) => setWithSelector(state, selector, value2));
|
|
428
|
+
return [value, update];
|
|
429
|
+
}
|
|
430
|
+
class Store2 extends Store$1 {
|
|
431
|
+
useState(...args) {
|
|
432
|
+
return useStoreState(this, ...args);
|
|
433
|
+
}
|
|
434
|
+
useProp(selector) {
|
|
435
|
+
return useStoreProp(this, selector);
|
|
436
|
+
}
|
|
437
|
+
}
|
|
438
|
+
class StoreScope {
|
|
439
|
+
constructor(defaultValue) {
|
|
440
|
+
this.defaultValue = defaultValue;
|
|
441
|
+
this.Provider = ({ children, store }) => {
|
|
442
|
+
const _store = useMemo(() => store != null ? store : new Store2(this.defaultValue), [store]);
|
|
443
|
+
return /* @__PURE__ */ React.createElement(this.context.Provider, {
|
|
444
|
+
value: _store
|
|
445
|
+
}, children);
|
|
446
|
+
};
|
|
447
|
+
this.withScope = (Component) => {
|
|
448
|
+
return (args) => /* @__PURE__ */ React.createElement(this.Provider, null, /* @__PURE__ */ React.createElement(Component, __spreadValues({}, args)));
|
|
449
|
+
};
|
|
450
|
+
this.context = createContext(new Store2(defaultValue));
|
|
451
|
+
}
|
|
452
|
+
useStore() {
|
|
453
|
+
return useContext(this.context);
|
|
454
|
+
}
|
|
455
|
+
useState(...args) {
|
|
456
|
+
const store = this.useStore();
|
|
457
|
+
return useStoreState(store, ...args);
|
|
458
|
+
}
|
|
459
|
+
useProp(selector) {
|
|
460
|
+
const store = this.useStore();
|
|
461
|
+
return useStoreProp(store, selector);
|
|
462
|
+
}
|
|
463
|
+
}
|
|
6
464
|
function _EMOTION_STRINGIFIED_CSS_ERROR__$1() {
|
|
7
465
|
return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop).";
|
|
8
466
|
}
|
|
@@ -228,7 +686,7 @@ const Popover = ({
|
|
|
228
686
|
] }), document.body)
|
|
229
687
|
] });
|
|
230
688
|
};
|
|
231
|
-
const globalTableTheme = new
|
|
689
|
+
const globalTableTheme = new Store2({});
|
|
232
690
|
function configureTableTheme(tableTheme) {
|
|
233
691
|
globalTableTheme.set(tableTheme);
|
|
234
692
|
}
|
|
@@ -261,12 +719,14 @@ function mergeThemes(...themes) {
|
|
|
261
719
|
}
|
|
262
720
|
export {
|
|
263
721
|
Popover as P,
|
|
722
|
+
Store2 as S,
|
|
264
723
|
TableThemeContext as T,
|
|
265
724
|
gray as a,
|
|
266
725
|
defaultClasses as b,
|
|
267
|
-
|
|
726
|
+
StoreScope as c,
|
|
268
727
|
darkGray as d,
|
|
269
|
-
|
|
728
|
+
configureTableTheme as e,
|
|
729
|
+
TableThemeProvider as f,
|
|
270
730
|
globalTableTheme as g,
|
|
271
731
|
lightGray as l,
|
|
272
732
|
mergeThemes as m
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tableTheme.js","sources":["../../src/theme/defaultTheme/defaultClasses.ts","../../src/theme/defaultTheme/popover.tsx","../../src/theme/tableTheme.tsx"],"sourcesContent":["import { css } from '@emotion/react';\n\nexport const white = '#ffffff';\nexport const lightGray = '#eeeeee';\nexport const gray = '#bdbdbd';\nexport const darkGray = '#777';\n\nconst cell = css({\n padding: `calc(var(--spacing) * 0.1) calc(2 * var(--spacing))`,\n display: 'flex',\n alignItems: 'center',\n borderBottom: `1px solid #dfe2e9`,\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n background: 'white',\n});\n\nexport const defaultClasses = {\n table: css({\n position: 'relative',\n display: 'grid',\n }),\n\n cell,\n\n cellFill: css({\n borderBottom: `1px solid ${lightGray}`,\n }),\n\n headerCell: css(cell, {\n padding: `var(--spacing) 0 var(--spacing) calc(2 * var(--spacing))`,\n borderBottom: `1px solid #c9cfda`,\n }),\n\n footerCell: css(cell, {\n padding: `var(--spacing) calc(2 * var(--spacing))`,\n borderTop: `1px solid #c9cfda`,\n borderBottom: 'none',\n }),\n\n firstCell: css({\n justifyContent: 'start',\n }),\n\n sticky: css({\n position: 'sticky',\n top: 0,\n zIndex: 2,\n }),\n\n stickyBottom: css({\n position: 'sticky',\n bottom: 0,\n zIndex: 2,\n }),\n\n headerFill: css({\n borderBottom: `1px solid #c9cfda`,\n background: white,\n }),\n\n footerFill: css({\n borderTop: `1px solid #c9cfda`,\n background: white,\n }),\n\n text: css({\n minWidth: 0,\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n }),\n\n card: css({\n borderRadius: 4,\n boxShadow: '0px 3px 14px 2px rgb(0 0 0 / 12%)',\n background: 'white',\n }),\n\n clearFiltersButton: css({\n padding: `0 calc(2 * var(--spacing))`,\n fontWeight: 'bold',\n position: 'sticky',\n left: 0,\n maxWidth: 'fit-content',\n gridColumn: '2/-1',\n button: {\n color: 'var(--primaryMain) !important',\n border: 'solid 1px',\n borderColor: 'var(--primaryMain) !important',\n margin: 'var(--spacing)',\n },\n }),\n\n details: css(cell, {\n gridColumn: '1 / -1',\n whiteSpace: 'normal',\n }),\n};\n","import { useLayoutEffect, useRef, useState } from 'react';\nimport { createPortal } from 'react-dom';\nimport type { TableTheme } from '../../types';\nimport { defaultClasses } from './defaultClasses';\n\nconst MARGIN = 10;\nconst MAX_OFFSET = 20;\n\nexport const Popover: TableTheme['components']['Popover'] = ({\n anchorEl,\n open,\n hidden,\n onClose,\n children,\n className,\n backdropClassName,\n align,\n}) => {\n const popper = useRef<HTMLDivElement>(null);\n const [position, setPosition] = useState<{ left: number; top: number }>();\n const [maxHeight, setMaxHeight] = useState(document.documentElement.clientHeight - 2 * MARGIN);\n const [zIndex, setZIndex] = useState(1);\n\n useLayoutEffect(() => {\n if (!anchorEl || !open) {\n setPosition(undefined);\n return;\n }\n\n let last: { left: number; top: number } | undefined;\n\n function check() {\n if (!anchorEl) return;\n const {\n left: anchorLeft,\n bottom: anchorBottom,\n width: anchorWidth,\n } = anchorEl.getBoundingClientRect();\n const { width: popperWidth = 0 } = popper.current?.getBoundingClientRect() ?? {};\n const viewportWidth = document.documentElement.clientWidth;\n const viewportHeight = document.documentElement.clientHeight;\n\n const next = {\n left:\n align === 'center'\n ? anchorLeft + anchorWidth / 2 - popperWidth / 2\n : anchorLeft -\n Math.min(popperWidth ? popperWidth / 2 : Number.POSITIVE_INFINITY, MAX_OFFSET),\n top: anchorBottom,\n };\n\n if (next.left < MARGIN) {\n next.left = MARGIN;\n }\n if (next.left + popperWidth > viewportWidth - MARGIN) {\n next.left = viewportWidth - MARGIN - popperWidth;\n }\n if (next.top < MARGIN) {\n next.top = MARGIN;\n }\n\n if (next.left !== last?.left || next.top !== last?.top) {\n setPosition(next);\n }\n\n setMaxHeight(viewportHeight - MARGIN - next.top);\n\n last = next;\n }\n check();\n\n const handle = setInterval(check, 16);\n return () => {\n clearInterval(handle);\n };\n }, [anchorEl, open, align]);\n\n function updateZIndex(div: HTMLDivElement | null) {\n const ancestors = [];\n for (let node = div?.parentElement; node; node = node.parentElement) {\n ancestors.push(node);\n }\n\n for (const node of ancestors.reverse()) {\n const value = document.defaultView?.getComputedStyle(node).getPropertyValue('z-index');\n\n if (value && !Number.isNaN(Number(value))) {\n setZIndex(Number(value) + 1);\n return;\n }\n }\n }\n\n if (!open) return null;\n\n return (\n <>\n <div\n ref={updateZIndex}\n css={{\n display: 'none',\n }}\n />\n\n {createPortal(\n <>\n <div\n className={backdropClassName}\n css={[\n {\n position: 'fixed',\n left: 0,\n right: 0,\n top: 0,\n bottom: 0,\n zIndex,\n },\n hidden && { display: 'none' },\n ]}\n onClick={() => onClose()}\n />\n\n <div\n ref={popper}\n className={className}\n css={[\n defaultClasses.card,\n {\n position: 'fixed',\n maxWidth: document.documentElement.clientWidth - 2 * MARGIN,\n maxHeight,\n ...position,\n zIndex: zIndex + 1,\n overflowY: 'auto',\n },\n hidden && { display: 'none' },\n !position && { visibility: 'hidden' },\n ]}\n >\n {children}\n </div>\n </>,\n document.body,\n )}\n </>\n );\n};\n","import type { ReactNode } from 'react';\nimport { createContext } from 'react';\nimport { Store } from 'schummar-state/react';\nimport type { PartialTableTheme } from '../types';\n\nexport const globalTableTheme = new Store<PartialTableTheme>({});\n\nexport function configureTableTheme(tableTheme: PartialTableTheme) {\n globalTableTheme.set(tableTheme);\n}\n\nexport const TableThemeContext = createContext<PartialTableTheme>({});\n\nexport function TableThemeProvider({\n theme,\n children,\n}: {\n theme: PartialTableTheme;\n children?: ReactNode;\n}) {\n return <TableThemeContext.Provider value={theme}>{children}</TableThemeContext.Provider>;\n}\n\nexport function mergeThemes<T>(...themes: PartialTableTheme<T>[]): PartialTableTheme<T> {\n return {\n text: Object.assign({}, ...themes.map((theme) => theme.text)),\n classes: Object.assign({}, ...themes.map((theme) => theme.classes)),\n styles: Object.assign({}, ...themes.map((theme) => theme.styles)),\n components: Object.assign({}, ...themes.map((theme) => theme.components)),\n icons: Object.assign({}, ...themes.map((theme) => theme.icons)),\n colors: {\n primary: Object.assign({}, ...themes.map((theme) => theme.colors?.primary)),\n secondary: Object.assign({}, ...themes.map((theme) => theme.colors?.secondary)),\n },\n spacing: themes\n .map((theme) => theme.spacing)\n .reverse()\n .find((x) => x !== undefined),\n };\n}\n"],"names":["white","lightGray","gray","darkGray","cell","padding","display","alignItems","borderBottom","whiteSpace","overflow","background","process","env","NODE_ENV","defaultClasses","table","name","styles","map","toString","_EMOTION_STRINGIFIED_CSS_ERROR__","cellFill","headerCell","footerCell","borderTop","firstCell","sticky","stickyBottom","headerFill","footerFill","text","card","clearFiltersButton","fontWeight","position","left","maxWidth","gridColumn","button","color","border","borderColor","margin","details","css","MARGIN","MAX_OFFSET","_ref","Popover","anchorEl","open","hidden","onClose","children","className","backdropClassName","align","popper","useRef","setPosition","useState","maxHeight","setMaxHeight","document","documentElement","clientHeight","zIndex","setZIndex","useLayoutEffect","undefined","last","check","anchorLeft","bottom","anchorBottom","width","anchorWidth","getBoundingClientRect","popperWidth","current","viewportWidth","clientWidth","viewportHeight","next","Math","min","Number","POSITIVE_INFINITY","top","handle","setInterval","clearInterval","updateZIndex","div","ancestors","node","parentElement","push","reverse","value","defaultView","getComputedStyle","getPropertyValue","isNaN","createPortal","right","overflowY","visibility","body","globalTableTheme","Store","configureTableTheme","tableTheme","set","TableThemeContext","createContext","TableThemeProvider","theme","mergeThemes","themes","Object","assign","classes","components","icons","colors","primary","secondary","spacing","find","x"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tableTheme.js","sources":["../../node_modules/schummar-state/dist/es/store.js","../../node_modules/schummar-state/dist/es/react.js","../../src/theme/defaultTheme/defaultClasses.ts","../../src/theme/defaultTheme/popover.tsx","../../src/theme/tableTheme.tsx"],"sourcesContent":["var __defProp = Object.defineProperty;\nvar __getOwnPropSymbols = Object.getOwnPropertySymbols;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __propIsEnum = Object.prototype.propertyIsEnumerable;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __spreadValues = (a, b) => {\n for (var prop in b || (b = {}))\n if (__hasOwnProp.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n if (__getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(b)) {\n if (__propIsEnum.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n }\n return a;\n};\nvar __restKey = (key) => typeof key === \"symbol\" ? key : key + \"\";\nvar __objRest = (source, exclude) => {\n var target = {};\n for (var prop in source)\n if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)\n target[prop] = source[prop];\n if (source != null && __getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(source)) {\n if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))\n target[prop] = source[prop];\n }\n return target;\n};\nimport { freeze, enableMapSet, enablePatches, produce, applyPatches } from \"immer\";\nconst isAncestor = (ancestor, path) => {\n return ancestor.length <= path.length && ancestor.every((v, i) => v === \"*\" || path[i] === \"*\" || String(v) === String(path[i]));\n};\nconst get = (value, path) => {\n for (const part of path) {\n if (value instanceof Object && part in value)\n value = value[part];\n else {\n value = void 0;\n break;\n }\n }\n return value;\n};\nconst split = (value, path) => {\n const [first, ...rest] = path;\n if (first === void 0)\n return [value, []];\n if (rest.length === 0) {\n if (first === \"*\")\n return [{}, Object.entries(value).map(([k, v]) => ({ path: [k], value: v }))];\n if (!(first in value))\n return [value, []];\n const _a = value, { [first]: subValue } = _a, newValue2 = __objRest(_a, [__restKey(first)]);\n return [newValue2, [{ path: [first], value: subValue }]];\n }\n const newValue = __spreadValues({}, value);\n const subValues = new Array();\n for (const key of first === \"*\" ? Object.keys(value) : [first]) {\n if (!(newValue[key] instanceof Object))\n return [value, []];\n const result = split(newValue[key], rest);\n newValue[key] = result[0];\n subValues.push(...result[1].map((s) => ({ path: [key, ...s.path], value: s.value })));\n }\n return [newValue, subValues];\n};\nclass StorePersist {\n constructor(store, storage, options = {}) {\n this.store = store;\n this.storage = storage;\n this.options = options;\n this.replayPatches = new Array();\n this.isInitialized = false;\n this.whenInitialized = this.load();\n this.isStopped = false;\n this.saveQueue = new Array();\n this.isSaving = false;\n if (!options.paths) {\n this.paths = [{ path: [], throttleMs: options.throttleMs }];\n } else {\n this.paths = options.paths.map((p) => {\n var _a;\n return {\n path: (typeof p === \"object\" ? p.path : p).split(\".\"),\n throttleMs: (_a = typeof p === \"object\" ? p.throttleMs : void 0) != null ? _a : options.throttleMs\n };\n });\n }\n this.paths.sort((a, b) => b.path.length - a.path.length);\n this.watch();\n }\n async load() {\n var _a;\n try {\n const storage = this.storage;\n let keys;\n if (\"keys\" in storage) {\n keys = await storage.keys();\n } else {\n const length = storage.length instanceof Function ? await storage.length() : storage.length;\n keys = new Array();\n for (let i = 0; i < length; i++) {\n const key = await storage.key(i);\n if (key !== null)\n keys.push(key);\n }\n }\n keys.sort((a, b) => a.length - b.length);\n const patches = new Array();\n for (const key of keys) {\n const value = await storage.getItem(key);\n if (value) {\n patches.push({\n path: key.split(\".\"),\n op: \"replace\",\n value: value === \"undefined\" ? void 0 : JSON.parse(value),\n persist: this\n });\n }\n }\n if (this.isStopped) {\n return false;\n }\n if (patches.length > 0) {\n this.store.applyPatches(patches);\n }\n this.isInitialized = true;\n if (this.replayPatches.length > 0) {\n this.store.applyPatches(this.replayPatches);\n this.replayPatches = [];\n }\n return true;\n } catch (e) {\n ((_a = this.options.log) != null ? _a : console.error)(\"Failed to load storePersist:\", e);\n return false;\n }\n }\n watch() {\n this.sub = this.store.subscribePatches((patches) => {\n for (const patch of patches) {\n if (patch.persist === this) {\n continue;\n } else if (this.isInitialized === true) {\n this.addToSaveQueue(patch.path);\n } else {\n this.replayPatches.push(patch);\n }\n }\n });\n }\n addToSaveQueue(path) {\n var _a;\n const match = this.paths.find((p) => isAncestor(p.path, path));\n if (!match)\n return;\n path = path.slice(0, match.path.length);\n const t = Date.now() + ((_a = match.throttleMs) != null ? _a : 0);\n if (this.saveQueue.some((i) => i.t <= t && isAncestor(i.path, path)))\n return;\n this.saveQueue.push({ path, t });\n this.saveQueue.sort((a, b) => a.t - b.t);\n this.run();\n }\n async run() {\n if (this.saveTimeout)\n clearTimeout(this.saveTimeout);\n const next = this.saveQueue[0];\n if (!next)\n return;\n if (next.t > Date.now()) {\n this.saveTimeout = setTimeout(() => this.run(), next.t - Date.now());\n return;\n }\n try {\n this.isSaving = true;\n this.saveQueue.shift();\n await this.save(next.path);\n } finally {\n this.isSaving = false;\n this.run();\n }\n }\n async save(path) {\n var _a, _b;\n const { store, storage } = this;\n let value = get(store.getState(), path);\n const subPaths = this.paths.filter((p) => isAncestor(path, p.path) && p.path.length > path.length).map((p) => p.path.slice(path.length));\n const subValues = new Array();\n for (const subPath of subPaths) {\n const result2 = split(value, subPath);\n value = result2[0];\n subValues.push(...result2[1].map((s) => ({ path: [...path, ...s.path], value: s.value })));\n }\n const result = storage.setItem(path.join(\".\"), (_a = JSON.stringify(value)) != null ? _a : \"undefined\");\n if (result instanceof Promise)\n await result;\n for (const { path: path2, value: value2 } of subValues) {\n const result2 = storage.setItem(path2.join(\".\"), (_b = JSON.stringify(value2)) != null ? _b : \"undefined\");\n if (result2 instanceof Promise)\n await result2;\n }\n }\n stop() {\n var _a;\n this.isStopped = true;\n (_a = this.sub) == null ? void 0 : _a.call(this);\n }\n}\nfunction hash(arg) {\n return JSON.stringify({ arg }, (_key, value) => {\n if (value instanceof Object && !(value instanceof Array)) {\n const obj = {};\n for (const key of Object.keys(value).sort()) {\n obj[key] = value[key];\n }\n return obj;\n }\n return value;\n });\n}\nvar react = function equal(a, b) {\n if (a === b)\n return true;\n if (a && b && typeof a == \"object\" && typeof b == \"object\") {\n if (a.constructor !== b.constructor)\n return false;\n var length, i, keys;\n if (Array.isArray(a)) {\n length = a.length;\n if (length != b.length)\n return false;\n for (i = length; i-- !== 0; )\n if (!equal(a[i], b[i]))\n return false;\n return true;\n }\n if (a instanceof Map && b instanceof Map) {\n if (a.size !== b.size)\n return false;\n for (i of a.entries())\n if (!b.has(i[0]))\n return false;\n for (i of a.entries())\n if (!equal(i[1], b.get(i[0])))\n return false;\n return true;\n }\n if (a instanceof Set && b instanceof Set) {\n if (a.size !== b.size)\n return false;\n for (i of a.entries())\n if (!b.has(i[0]))\n return false;\n return true;\n }\n if (ArrayBuffer.isView(a) && ArrayBuffer.isView(b)) {\n length = a.length;\n if (length != b.length)\n return false;\n for (i = length; i-- !== 0; )\n if (a[i] !== b[i])\n return false;\n return true;\n }\n if (a.constructor === RegExp)\n return a.source === b.source && a.flags === b.flags;\n if (a.valueOf !== Object.prototype.valueOf)\n return a.valueOf() === b.valueOf();\n if (a.toString !== Object.prototype.toString)\n return a.toString() === b.toString();\n keys = Object.keys(a);\n length = keys.length;\n if (length !== Object.keys(b).length)\n return false;\n for (i = length; i-- !== 0; )\n if (!Object.prototype.hasOwnProperty.call(b, keys[i]))\n return false;\n for (i = length; i-- !== 0; ) {\n var key = keys[i];\n if (key === \"_owner\" && a.$$typeof) {\n continue;\n }\n if (!equal(a[key], b[key]))\n return false;\n }\n return true;\n }\n return a !== a && b !== b;\n};\nfunction createSelector(stringSelector) {\n const parts = stringSelector.split(\".\");\n return (state) => parts.reduce((v, p) => v instanceof Object && p in v ? v[p] : void 0, state);\n}\nfunction setWithSelector(state, stringSelector, value) {\n const parts = stringSelector.split(\".\");\n const prefix = parts.slice(0, -1);\n const last = parts[parts.length - 1];\n for (const part of prefix) {\n if (state instanceof Object && part in state) {\n state = state[part];\n } else {\n throw Error(`Could not set ${stringSelector} because path ${stringSelector} doesn't exist`);\n }\n }\n if (state instanceof Object) {\n state[last] = value;\n } else {\n throw Error(`Could not set ${stringSelector} because path ${stringSelector} doesn't exist`);\n }\n}\nfunction throttle(fn, ms) {\n let last = 0;\n let lastArgs;\n let timeout;\n function run() {\n const args = lastArgs;\n last = Date.now();\n lastArgs = void 0;\n timeout = void 0;\n fn(...args);\n }\n return function(...args) {\n const now = Date.now();\n lastArgs = args;\n if (timeout)\n ;\n else if (now < last + ms) {\n timeout = setTimeout(run, last + ms - now);\n } else {\n run();\n }\n };\n}\nconst RESTART_UPDATE = Symbol(\"RESTART_UPDATE\");\nclass Store {\n constructor(state, { log = (...data) => console.error(...data) } = {}) {\n this.state = state;\n this.subscriptions = new Set();\n this.batchCounter = 0;\n this.reactions = new Set();\n this.patches = new Array();\n freeze(state, true);\n enableMapSet();\n enablePatches();\n this.options = {\n log\n };\n }\n getState() {\n return this.state;\n }\n update(update) {\n this.checkLock();\n this.state = produce(this.state, (draft) => update(draft, this.state), (patches) => this.patches.push(...patches));\n this.notify();\n }\n set(state) {\n this.checkLock();\n this.state = produce(this.state, () => state, (patches) => this.patches.push(...patches));\n this.notify();\n }\n applyPatches(patches) {\n this.checkLock();\n this.state = applyPatches(this.state, patches);\n this.patches.push(...patches);\n this.notify();\n }\n batchUpdates(fn) {\n try {\n this.batchCounter++;\n fn();\n } finally {\n this.batchCounter--;\n if (this.batchCounter === 0) {\n this.notify();\n }\n }\n }\n subscribe(...args) {\n let selector, listener, options;\n if (args[1] instanceof Function) {\n [selector, listener, options] = args;\n if (typeof selector === \"string\") {\n selector = createSelector(selector);\n }\n } else {\n [selector, listener, options] = [(x) => x, ...args];\n }\n const { runNow = true, throttle: throttle$1 = 0, compare = react } = options != null ? options : {};\n const throttledListener = throttle$1 ? throttle(listener, throttle$1) : listener;\n let value = selector(this.state);\n const internalListener = (state, _patches, init) => {\n try {\n const oldValue = value;\n value = selector(state);\n if (!init && compare(value, oldValue))\n return;\n (init ? listener : throttledListener)(value, oldValue, this.state);\n } catch (e) {\n this.options.log(\"Failed to execute listener:\", e);\n }\n };\n this.subscriptions.add(internalListener);\n if (runNow)\n internalListener(this.state, [], true);\n return () => {\n this.subscriptions.delete(internalListener);\n };\n }\n addReaction(...args) {\n let selector, reaction, options;\n if (args[1] instanceof Function) {\n [selector, reaction, options] = args;\n if (typeof selector === \"string\") {\n selector = createSelector(selector);\n }\n } else {\n [selector, reaction, options] = [(x) => x, ...args];\n }\n const { runNow = true, compare = react } = options != null ? options : {};\n let value = selector(this.state);\n const internalListener = (init) => {\n let hasChanged = false;\n try {\n this.lock = \"reaction\";\n const oldValue = value;\n value = selector(this.state);\n if (!init && compare(value, oldValue))\n return;\n this.state = produce(this.state, (draft) => reaction(value, draft, this.state, oldValue), (patches) => {\n hasChanged = true;\n this.patches.push(...patches);\n });\n } catch (e) {\n this.options.log(\"Failed to execute reaction:\", e);\n } finally {\n delete this.lock;\n }\n if (hasChanged && !init)\n throw RESTART_UPDATE;\n if (hasChanged && init)\n this.notify();\n };\n this.reactions.add(internalListener);\n if (runNow)\n internalListener(true);\n return () => {\n this.reactions.delete(internalListener);\n };\n }\n subscribePatches(listener) {\n const internalListener = (_state, patches) => {\n try {\n listener(patches);\n } catch (e) {\n this.options.log(\"Failed to execute patch listener:\", e);\n }\n };\n this.subscriptions.add(internalListener);\n return () => {\n this.subscriptions.delete(internalListener);\n };\n }\n checkLock() {\n if (this.lock === \"reaction\") {\n throw Error(\"You cannot call update from within a reaction. Use the passed draft instead.\");\n }\n }\n notify() {\n if (this.batchCounter > 0 || this.patches.length === 0)\n return;\n try {\n for (const reaction of this.reactions) {\n reaction();\n }\n } catch (e) {\n return this.notify();\n }\n const patches = this.patches;\n this.patches = [];\n this.batchUpdates(() => {\n for (const subscription of this.subscriptions) {\n subscription(this.state, patches);\n }\n });\n }\n}\nexport { Store as S, StorePersist as a, createSelector as c, hash as h, react as r, setWithSelector as s };\n//# sourceMappingURL=store.js.map\n","var __defProp = Object.defineProperty;\nvar __getOwnPropSymbols = Object.getOwnPropertySymbols;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __propIsEnum = Object.prototype.propertyIsEnumerable;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __spreadValues = (a2, b) => {\n for (var prop in b || (b = {}))\n if (__hasOwnProp.call(b, prop))\n __defNormalProp(a2, prop, b[prop]);\n if (__getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(b)) {\n if (__propIsEnum.call(b, prop))\n __defNormalProp(a2, prop, b[prop]);\n }\n return a2;\n};\nimport { c as createSelector, r as react, s as setWithSelector, S as Store$1, h as hash } from \"./store.js\";\nexport { a as StorePersist } from \"./store.js\";\nimport React, { useCallback, useDebugValue, useMemo, createContext, useContext, useEffect } from \"react\";\nimport \"immer\";\nvar withSelector = { exports: {} };\nvar withSelector_production_min = {};\nvar shim = { exports: {} };\nvar useSyncExternalStoreShim_production_min = {};\n/** @license React vundefined\n * use-sync-external-store-shim.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\nvar e = React;\nfunction h$1(a2, b) {\n return a2 === b && (a2 !== 0 || 1 / a2 === 1 / b) || a2 !== a2 && b !== b;\n}\nvar k = typeof Object.is === \"function\" ? Object.is : h$1, l = e.useState, m = e.useEffect, n$1 = e.useLayoutEffect, p$1 = e.useDebugValue;\nfunction q$1(a2, b) {\n var d = b(), f = l({ inst: { value: d, getSnapshot: b } }), c = f[0].inst, g = f[1];\n n$1(function() {\n c.value = d;\n c.getSnapshot = b;\n r$1(c) && g({ inst: c });\n }, [a2, d, b]);\n m(function() {\n r$1(c) && g({ inst: c });\n return a2(function() {\n r$1(c) && g({ inst: c });\n });\n }, [a2]);\n p$1(d);\n return d;\n}\nfunction r$1(a2) {\n var b = a2.getSnapshot;\n a2 = a2.value;\n try {\n var d = b();\n return !k(a2, d);\n } catch (f) {\n return true;\n }\n}\nfunction t$1(a2, b) {\n return b();\n}\nvar u$1 = typeof window === \"undefined\" || typeof window.document === \"undefined\" || typeof window.document.createElement === \"undefined\" ? t$1 : q$1;\nuseSyncExternalStoreShim_production_min.useSyncExternalStore = e.useSyncExternalStore !== void 0 ? e.useSyncExternalStore : u$1;\n{\n shim.exports = useSyncExternalStoreShim_production_min;\n}\n/** @license React vundefined\n * use-sync-external-store-shim/with-selector.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\nvar h = React, n = shim.exports;\nfunction p(a2, b) {\n return a2 === b && (a2 !== 0 || 1 / a2 === 1 / b) || a2 !== a2 && b !== b;\n}\nvar q = typeof Object.is === \"function\" ? Object.is : p, r = n.useSyncExternalStore, t = h.useRef, u = h.useEffect, v = h.useMemo, w = h.useDebugValue;\nwithSelector_production_min.useSyncExternalStoreWithSelector = function(a2, b, e2, l2, g) {\n var c = t(null);\n if (c.current === null) {\n var f = { hasValue: false, value: null };\n c.current = f;\n } else\n f = c.current;\n c = v(function() {\n function a3(a4) {\n if (!c2) {\n c2 = true;\n d2 = a4;\n a4 = l2(a4);\n if (g !== void 0 && f.hasValue) {\n var b2 = f.value;\n if (g(b2, a4))\n return k2 = b2;\n }\n return k2 = a4;\n }\n b2 = k2;\n if (q(d2, a4))\n return b2;\n var e3 = l2(a4);\n if (g !== void 0 && g(b2, e3))\n return b2;\n d2 = a4;\n return k2 = e3;\n }\n var c2 = false, d2, k2, m2 = e2 === void 0 ? null : e2;\n return [function() {\n return a3(b());\n }, m2 === null ? void 0 : function() {\n return a3(m2());\n }];\n }, [b, e2, l2, g]);\n var d = r(a2, c[0], c[1]);\n u(function() {\n f.hasValue = true;\n f.value = d;\n }, [d]);\n w(d);\n return d;\n};\n{\n withSelector.exports = withSelector_production_min;\n}\nfunction useStoreState(store, ...args) {\n var _a, _b, _c, _d;\n let selector, options;\n if (args[0] instanceof Function) {\n selector = args[0];\n options = (_a = args[1]) != null ? _a : {};\n } else if (typeof args[0] === \"string\") {\n selector = createSelector(args[0]);\n options = (_b = args[1]) != null ? _b : {};\n } else {\n selector = (x) => x;\n options = (_c = args[0]) != null ? _c : {};\n }\n const subscribe = useCallback((listener) => {\n return store.subscribe((x) => x, listener, {\n throttle: options.throttle,\n runNow: false,\n compare: (a2, b) => a2 === b\n });\n }, [store, options.throttle]);\n const getSnapshot = useCallback(() => store.getState(), [store]);\n const value = withSelector.exports.useSyncExternalStoreWithSelector(subscribe, getSnapshot, getSnapshot, selector, (_d = options.compare) != null ? _d : react);\n useDebugValue(value);\n return value;\n}\nfunction useStoreProp(store, selector) {\n const value = useStoreState(store, selector);\n const update = (value2) => store.update((state) => setWithSelector(state, selector, value2));\n return [value, update];\n}\nclass Store extends Store$1 {\n useState(...args) {\n return useStoreState(this, ...args);\n }\n useProp(selector) {\n return useStoreProp(this, selector);\n }\n}\nclass StoreScope {\n constructor(defaultValue) {\n this.defaultValue = defaultValue;\n this.Provider = ({ children, store }) => {\n const _store = useMemo(() => store != null ? store : new Store(this.defaultValue), [store]);\n return /* @__PURE__ */ React.createElement(this.context.Provider, {\n value: _store\n }, children);\n };\n this.withScope = (Component) => {\n return (args) => /* @__PURE__ */ React.createElement(this.Provider, null, /* @__PURE__ */ React.createElement(Component, __spreadValues({}, args)));\n };\n this.context = createContext(new Store(defaultValue));\n }\n useStore() {\n return useContext(this.context);\n }\n useState(...args) {\n const store = this.useStore();\n return useStoreState(store, ...args);\n }\n useProp(selector) {\n const store = this.useStore();\n return useStoreProp(store, selector);\n }\n}\nfunction useResource(resource, options) {\n const { compare, dormant, throttle, updateOnMount, watchOnly } = options != null ? options : {};\n useEffect(() => {\n if (updateOnMount && !dormant) {\n resource.invalidateCache();\n }\n }, []);\n const subscribe = useCallback((listener) => {\n if (dormant)\n return () => {\n };\n return resource.subscribe(listener, {\n watchOnly,\n throttle,\n runNow: false,\n compare\n });\n }, [resource.id, watchOnly, dormant, throttle]);\n const getSnapshot = useCallback(() => resource.getCache(), [resource.id]);\n let value = withSelector.exports.useSyncExternalStoreWithSelector(subscribe, getSnapshot, getSnapshot, (x) => x, react);\n if (dormant) {\n value = { state: \"empty\", isLoading: false };\n }\n useDebugValue(value);\n return value;\n}\nfunction useReadResource(resource, options) {\n const info = useResource(resource, options);\n if (info.state === \"error\") {\n throw info.error;\n }\n if (info.state === \"empty\") {\n throw resource.get();\n }\n useDebugValue(info.value);\n return info.value;\n}\nfunction combineResources(...resources) {\n return {\n id: hash(resources.map((resource) => resource.id)),\n invalidateCache() {\n for (const resource of resources) {\n resource.invalidateCache();\n }\n },\n subscribe(listener, options) {\n const handles = resources.map((resource) => resource.subscribe(listener, options));\n return () => {\n for (const handle of handles) {\n handle();\n }\n };\n },\n getCache() {\n var _a;\n const caches = resources.map((resource) => resource.getCache());\n const isStale = caches.some((cache) => cache.isStale);\n const isLoading = caches.some((cache) => cache.isLoading);\n if (caches.some((resource) => resource.state === \"error\")) {\n const error = (_a = caches.find((cache) => cache.error !== void 0)) == null ? void 0 : _a.error;\n return { state: \"error\", error, isStale, isLoading };\n }\n if (caches.every((resource) => resource.state === \"value\")) {\n const value = caches.map((cache) => cache.value);\n return { state: \"value\", value, isStale, isLoading };\n }\n return { state: \"empty\", isLoading };\n },\n get() {\n return Promise.all(resources.map((resource) => resource.get()));\n }\n };\n}\nexport { Store, StoreScope, combineResources, useReadResource, useResource, useStoreState };\n//# sourceMappingURL=react.js.map\n","import { css } from '@emotion/react';\n\nexport const white = '#ffffff';\nexport const lightGray = '#eeeeee';\nexport const gray = '#bdbdbd';\nexport const darkGray = '#777';\n\nconst cell = css({\n padding: `calc(var(--spacing) * 0.1) calc(2 * var(--spacing))`,\n display: 'flex',\n alignItems: 'center',\n borderBottom: `1px solid #dfe2e9`,\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n background: 'white',\n});\n\nexport const defaultClasses = {\n table: css({\n position: 'relative',\n display: 'grid',\n }),\n\n cell,\n\n cellFill: css({\n borderBottom: `1px solid ${lightGray}`,\n }),\n\n headerCell: css(cell, {\n padding: `var(--spacing) 0 var(--spacing) calc(2 * var(--spacing))`,\n borderBottom: `1px solid #c9cfda`,\n }),\n\n footerCell: css(cell, {\n padding: `var(--spacing) calc(2 * var(--spacing))`,\n borderTop: `1px solid #c9cfda`,\n borderBottom: 'none',\n }),\n\n firstCell: css({\n justifyContent: 'start',\n }),\n\n sticky: css({\n position: 'sticky',\n top: 0,\n zIndex: 2,\n }),\n\n stickyBottom: css({\n position: 'sticky',\n bottom: 0,\n zIndex: 2,\n }),\n\n headerFill: css({\n borderBottom: `1px solid #c9cfda`,\n background: white,\n }),\n\n footerFill: css({\n borderTop: `1px solid #c9cfda`,\n background: white,\n }),\n\n text: css({\n minWidth: 0,\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n }),\n\n card: css({\n borderRadius: 4,\n boxShadow: '0px 3px 14px 2px rgb(0 0 0 / 12%)',\n background: 'white',\n }),\n\n clearFiltersButton: css({\n padding: `0 calc(2 * var(--spacing))`,\n fontWeight: 'bold',\n position: 'sticky',\n left: 0,\n maxWidth: 'fit-content',\n gridColumn: '2/-1',\n button: {\n color: 'var(--primaryMain) !important',\n border: 'solid 1px',\n borderColor: 'var(--primaryMain) !important',\n margin: 'var(--spacing)',\n },\n }),\n\n details: css(cell, {\n gridColumn: '1 / -1',\n whiteSpace: 'normal',\n }),\n};\n","import { useLayoutEffect, useRef, useState } from 'react';\nimport { createPortal } from 'react-dom';\nimport type { TableTheme } from '../../types';\nimport { defaultClasses } from './defaultClasses';\n\nconst MARGIN = 10;\nconst MAX_OFFSET = 20;\n\nexport const Popover: TableTheme['components']['Popover'] = ({\n anchorEl,\n open,\n hidden,\n onClose,\n children,\n className,\n backdropClassName,\n align,\n}) => {\n const popper = useRef<HTMLDivElement>(null);\n const [position, setPosition] = useState<{ left: number; top: number }>();\n const [maxHeight, setMaxHeight] = useState(document.documentElement.clientHeight - 2 * MARGIN);\n const [zIndex, setZIndex] = useState(1);\n\n useLayoutEffect(() => {\n if (!anchorEl || !open) {\n setPosition(undefined);\n return;\n }\n\n let last: { left: number; top: number } | undefined;\n\n function check() {\n if (!anchorEl) return;\n const {\n left: anchorLeft,\n bottom: anchorBottom,\n width: anchorWidth,\n } = anchorEl.getBoundingClientRect();\n const { width: popperWidth = 0 } = popper.current?.getBoundingClientRect() ?? {};\n const viewportWidth = document.documentElement.clientWidth;\n const viewportHeight = document.documentElement.clientHeight;\n\n const next = {\n left:\n align === 'center'\n ? anchorLeft + anchorWidth / 2 - popperWidth / 2\n : anchorLeft -\n Math.min(popperWidth ? popperWidth / 2 : Number.POSITIVE_INFINITY, MAX_OFFSET),\n top: anchorBottom,\n };\n\n if (next.left < MARGIN) {\n next.left = MARGIN;\n }\n if (next.left + popperWidth > viewportWidth - MARGIN) {\n next.left = viewportWidth - MARGIN - popperWidth;\n }\n if (next.top < MARGIN) {\n next.top = MARGIN;\n }\n\n if (next.left !== last?.left || next.top !== last?.top) {\n setPosition(next);\n }\n\n setMaxHeight(viewportHeight - MARGIN - next.top);\n\n last = next;\n }\n check();\n\n const handle = setInterval(check, 16);\n return () => {\n clearInterval(handle);\n };\n }, [anchorEl, open, align]);\n\n function updateZIndex(div: HTMLDivElement | null) {\n const ancestors = [];\n for (let node = div?.parentElement; node; node = node.parentElement) {\n ancestors.push(node);\n }\n\n for (const node of ancestors.reverse()) {\n const value = document.defaultView?.getComputedStyle(node).getPropertyValue('z-index');\n\n if (value && !Number.isNaN(Number(value))) {\n setZIndex(Number(value) + 1);\n return;\n }\n }\n }\n\n if (!open) return null;\n\n return (\n <>\n <div\n ref={updateZIndex}\n css={{\n display: 'none',\n }}\n />\n\n {createPortal(\n <>\n <div\n className={backdropClassName}\n css={[\n {\n position: 'fixed',\n left: 0,\n right: 0,\n top: 0,\n bottom: 0,\n zIndex,\n },\n hidden && { display: 'none' },\n ]}\n onClick={() => onClose()}\n />\n\n <div\n ref={popper}\n className={className}\n css={[\n defaultClasses.card,\n {\n position: 'fixed',\n maxWidth: document.documentElement.clientWidth - 2 * MARGIN,\n maxHeight,\n ...position,\n zIndex: zIndex + 1,\n overflowY: 'auto',\n },\n hidden && { display: 'none' },\n !position && { visibility: 'hidden' },\n ]}\n >\n {children}\n </div>\n </>,\n document.body,\n )}\n </>\n );\n};\n","import type { ReactNode } from 'react';\nimport { createContext } from 'react';\nimport { Store } from 'schummar-state/react';\nimport type { PartialTableTheme } from '../types';\n\nexport const globalTableTheme = new Store<PartialTableTheme>({});\n\nexport function configureTableTheme(tableTheme: PartialTableTheme) {\n globalTableTheme.set(tableTheme);\n}\n\nexport const TableThemeContext = createContext<PartialTableTheme>({});\n\nexport function TableThemeProvider({\n theme,\n children,\n}: {\n theme: PartialTableTheme;\n children?: ReactNode;\n}) {\n return <TableThemeContext.Provider value={theme}>{children}</TableThemeContext.Provider>;\n}\n\nexport function mergeThemes<T>(...themes: PartialTableTheme<T>[]): PartialTableTheme<T> {\n return {\n text: Object.assign({}, ...themes.map((theme) => theme.text)),\n classes: Object.assign({}, ...themes.map((theme) => theme.classes)),\n styles: Object.assign({}, ...themes.map((theme) => theme.styles)),\n components: Object.assign({}, ...themes.map((theme) => theme.components)),\n icons: Object.assign({}, ...themes.map((theme) => theme.icons)),\n colors: {\n primary: Object.assign({}, ...themes.map((theme) => theme.colors?.primary)),\n secondary: Object.assign({}, ...themes.map((theme) => theme.colors?.secondary)),\n },\n spacing: themes\n .map((theme) => theme.spacing)\n .reverse()\n .find((x) => x !== undefined),\n };\n}\n"],"names":["v","p","e","Store","white","lightGray","gray","darkGray","cell","padding","display","alignItems","borderBottom","whiteSpace","overflow","background","process","env","NODE_ENV","defaultClasses","table","name","styles","map","toString","_EMOTION_STRINGIFIED_CSS_ERROR__","cellFill","headerCell","footerCell","borderTop","firstCell","sticky","stickyBottom","headerFill","footerFill","text","card","clearFiltersButton","fontWeight","position","left","maxWidth","gridColumn","button","color","border","borderColor","margin","details","css","MARGIN","MAX_OFFSET","_ref","Popover","anchorEl","open","hidden","onClose","children","className","backdropClassName","align","popper","useRef","setPosition","useState","maxHeight","setMaxHeight","document","documentElement","clientHeight","zIndex","setZIndex","useLayoutEffect","undefined","last","check","anchorLeft","bottom","anchorBottom","width","anchorWidth","getBoundingClientRect","popperWidth","current","viewportWidth","clientWidth","viewportHeight","next","Math","min","Number","POSITIVE_INFINITY","top","handle","setInterval","clearInterval","updateZIndex","div","ancestors","node","parentElement","push","reverse","value","defaultView","getComputedStyle","getPropertyValue","isNaN","createPortal","right","overflowY","visibility","body","globalTableTheme","configureTableTheme","tableTheme","set","TableThemeContext","createContext","TableThemeProvider","theme","mergeThemes","themes","Object","assign","classes","components","icons","colors","primary","secondary","spacing","find","x"],"mappings":"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","x_google_ignoreList":[0,1]}
|