@ibobbyts/svelte-ui-utils 0.4.3 → 0.4.5
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/README.md +119 -14
- package/dist/data-table/FilterControl.svelte +30 -4
- package/dist/data-table/FilterControl.svelte.d.ts.map +1 -1
- package/dist/data-table/filter.d.ts +3 -1
- package/dist/data-table/filter.d.ts.map +1 -1
- package/dist/data-table/filter.js +4 -0
- package/dist/data-table/index.d.ts +1 -1
- package/dist/data-table/index.d.ts.map +1 -1
- package/dist/data-table/types.d.ts +41 -11
- package/dist/data-table/types.d.ts.map +1 -1
- package/dist/dialog/ConfirmDialog.svelte +2 -0
- package/dist/dialog/ConfirmDialog.svelte.d.ts +1 -0
- package/dist/dialog/ConfirmDialog.svelte.d.ts.map +1 -1
- package/dist/dialog/Dialog.svelte +164 -71
- package/dist/dialog/Dialog.svelte.d.ts +1 -0
- package/dist/dialog/Dialog.svelte.d.ts.map +1 -1
- package/dist/dropdown/Dropdown.svelte +470 -43
- package/dist/dropdown/Dropdown.svelte.d.ts +18 -1
- package/dist/dropdown/Dropdown.svelte.d.ts.map +1 -1
- package/dist/dropdown/DropdownMultiSelect.svelte +2 -0
- package/dist/dropdown/DropdownMultiSelect.svelte.d.ts +1 -0
- package/dist/dropdown/DropdownMultiSelect.svelte.d.ts.map +1 -1
- package/dist/dropdown/index.d.ts +1 -1
- package/dist/dropdown/index.d.ts.map +1 -1
- package/dist/dropdown/types.d.ts +24 -2
- package/dist/dropdown/types.d.ts.map +1 -1
- package/dist/dropdown-search/DropdownSearch.svelte +12 -10
- package/dist/dropdown-search/DropdownSearch.svelte.d.ts +2 -2
- package/dist/dropdown-search/DropdownSearch.svelte.d.ts.map +1 -1
- package/dist/dropdown-search/DropdownSearchMultiSelect.svelte +3 -3
- package/dist/dropdown-search/DropdownSearchMultiSelect.svelte.d.ts +2 -2
- package/dist/dropdown-search/index.d.ts +1 -1
- package/dist/dropdown-search/types.d.ts +10 -3
- package/dist/dropdown-search/types.d.ts.map +1 -1
- package/dist/pagination/Pagination.svelte +5 -4
- package/dist/pagination/Pagination.svelte.d.ts.map +1 -1
- package/dist/style.css +119 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -87,6 +87,12 @@ chosen side.
|
|
|
87
87
|
|
|
88
88
|
## DropdownSearch
|
|
89
89
|
|
|
90
|
+
`DropdownSearch` is the free-text input entry with server-driven validation
|
|
91
|
+
(`exactMatch`), input statuses, focus options, footer text, a clear button, and
|
|
92
|
+
multiselect chips. For a trigger-style dropdown that combines single or multi
|
|
93
|
+
select with async search and dynamic result groups, use the unified `Dropdown`
|
|
94
|
+
search mode instead.
|
|
95
|
+
|
|
90
96
|
```svelte
|
|
91
97
|
<script lang="ts">
|
|
92
98
|
import { DropdownSearch } from '@ibobbyts/svelte-ui-utils/dropdown-search';
|
|
@@ -114,12 +120,17 @@ chosen side.
|
|
|
114
120
|
|
|
115
121
|
```ts
|
|
116
122
|
{
|
|
117
|
-
|
|
118
|
-
|
|
123
|
+
value: '123',
|
|
124
|
+
label: 'Jane Doe',
|
|
119
125
|
param_dict: { ID: 'M-123' }
|
|
120
126
|
}
|
|
121
127
|
```
|
|
122
128
|
|
|
129
|
+
`label` is the display text and `value` is the submitted string identifier;
|
|
130
|
+
extra fields such as `param_dict` are preserved as business metadata. The
|
|
131
|
+
free-text `value` prop and `onChange` detail stay the raw input text, so they
|
|
132
|
+
never collide with the submitted `item.value`.
|
|
133
|
+
|
|
123
134
|
The input is valid when the server returns one unique `exactMatch`, or when the
|
|
124
135
|
user selects an item. Non-empty text without a unique match is invalid.
|
|
125
136
|
Set `validate={false}` when the field should only show selectable options and
|
|
@@ -159,7 +170,7 @@ same controlled contract:
|
|
|
159
170
|
placeholder="Search members"
|
|
160
171
|
selectedItems={selectedMembers}
|
|
161
172
|
selectedItemsLabel="Selected members"
|
|
162
|
-
removeSelectedItemLabel={(item) => `Remove ${item.
|
|
173
|
+
removeSelectedItemLabel={(item) => `Remove ${item.label}`}
|
|
163
174
|
{loadOptions}
|
|
164
175
|
onSelectedItemsChange={(items) => {
|
|
165
176
|
selectedMembers = items;
|
|
@@ -298,6 +309,7 @@ light and dark defaults and expose `--suu-sortable-table-row-*-light` and
|
|
|
298
309
|
blurBackdrop={true}
|
|
299
310
|
showCountdown={true}
|
|
300
311
|
countdownDurationMs={30000}
|
|
312
|
+
restoreFocusSelector="#edit-record-trigger"
|
|
301
313
|
onClose={() => (dialogOpen = false)}
|
|
302
314
|
>
|
|
303
315
|
<p>Dialog body content goes here.</p>
|
|
@@ -345,15 +357,23 @@ light and dark defaults and expose `--suu-sortable-table-row-*-light` and
|
|
|
345
357
|
/>
|
|
346
358
|
```
|
|
347
359
|
|
|
348
|
-
Dialog components are controlled by the consuming app. `Dialog`
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
`
|
|
360
|
+
Dialog components are controlled by the consuming app. `Dialog` renders a
|
|
361
|
+
native `<dialog>` element and opens it with the browser top layer, so dialogs
|
|
362
|
+
nest: with several dialogs open at once, Escape, Tab, and backdrop clicks only
|
|
363
|
+
affect the topmost dialog and parent dialogs stay open. `Dialog` calls
|
|
364
|
+
`onClose` from the close button, backdrop, or Escape key when dismissible; it
|
|
365
|
+
does not mutate `open` internally. Set `dimBackdrop={false}` to disable
|
|
366
|
+
background darkening, `blurBackdrop={true}` to blur content behind the dialog,
|
|
367
|
+
and `showCountdown={true}` with `countdownDurationMs` to show a toast-style top
|
|
353
368
|
countdown bar. The optional `padding` prop accepts a CSS padding shorthand and
|
|
354
369
|
applies it consistently to the dialog header, body, and footer. The default
|
|
355
370
|
section-specific spacing is preserved when `padding` is omitted, and the same
|
|
356
|
-
prop is available on all dialog wrapper components.
|
|
371
|
+
prop is available on all dialog wrapper components. Set `restoreFocusSelector`
|
|
372
|
+
when the opening control may be replaced while the dialog is open; after
|
|
373
|
+
closing, `Dialog` focuses the latest matching element and otherwise falls back
|
|
374
|
+
to the original connected element. `ConfirmDialog` renders its `message` once
|
|
375
|
+
in the dialog body and forwards this prop, along with the dismiss, backdrop,
|
|
376
|
+
countdown, and focus-restore lifecycle props, to `Dialog`.
|
|
357
377
|
|
|
358
378
|
## Dropdown
|
|
359
379
|
|
|
@@ -367,12 +387,12 @@ prop is available on all dialog wrapper components.
|
|
|
367
387
|
} from '@ibobbyts/svelte-ui-utils/dropdown';
|
|
368
388
|
|
|
369
389
|
const pageSizeOptions: DropdownOption[] = [
|
|
370
|
-
{ label: '10', value: 10 },
|
|
371
|
-
{ label: '20', value: 20 },
|
|
372
|
-
{ label: '50', value: 50 }
|
|
390
|
+
{ label: '10', value: '10' },
|
|
391
|
+
{ label: '20', value: '20' },
|
|
392
|
+
{ label: '50', value: '50' }
|
|
373
393
|
];
|
|
374
394
|
|
|
375
|
-
let pageSize: DropdownValue = 20;
|
|
395
|
+
let pageSize: DropdownValue = '20';
|
|
376
396
|
</script>
|
|
377
397
|
|
|
378
398
|
<Dropdown
|
|
@@ -386,13 +406,24 @@ prop is available on all dialog wrapper components.
|
|
|
386
406
|
/>
|
|
387
407
|
```
|
|
388
408
|
|
|
389
|
-
`Dropdown` is a controlled select-like component for simple option lists.
|
|
409
|
+
`Dropdown` is a controlled select-like component for simple option lists.
|
|
410
|
+
Every option submits a string `value` while `label` stays the display text;
|
|
411
|
+
callers with numeric domain state convert with `String`/`Number` at the
|
|
412
|
+
boundary (the bundled `Pagination` does this for its numeric page size). Use
|
|
390
413
|
`placement="up"` when the menu should open above the trigger, such as bottom
|
|
391
414
|
pagination bars. The expanded menu shares the trigger's left edge by default;
|
|
392
415
|
use `menuAlign="right"` to align their right edges instead. `fitContent` sizes
|
|
393
416
|
the menu to its longest option while keeping the selected edge aligned.
|
|
394
417
|
`DataTable` uses this same component for its page-size picker.
|
|
395
418
|
|
|
419
|
+
Set `search={true}` with `loadOptions` to load remote options as the user
|
|
420
|
+
types. The default `input_style="dropdown"` keeps the search field inside the
|
|
421
|
+
expanded menu. Set `input_style="input"` to render a directly editable input;
|
|
422
|
+
results appear while it is focused and hide on blur. In input style, the
|
|
423
|
+
optional `getItemLabel` callback controls the displayed label while `value`
|
|
424
|
+
and `onChange` continue to represent submitted option values. The input style
|
|
425
|
+
is ignored when `search` is disabled.
|
|
426
|
+
|
|
396
427
|
For keyboard typeahead, an option may provide `searchText` separately from its
|
|
397
428
|
display `label`. Typeahead matches the beginning of `searchText` or `label`,
|
|
398
429
|
while the label remains the only text shown in the trigger and menu:
|
|
@@ -520,6 +551,58 @@ manually. `width`, `minWidth`, `maxWidth`, and `className` are optional styling
|
|
|
520
551
|
hooks. `onTriggerClick` runs before the dropdown toggles, so a nested control
|
|
521
552
|
can stop event propagation without preventing the dropdown from opening.
|
|
522
553
|
|
|
554
|
+
### Async search mode
|
|
555
|
+
|
|
556
|
+
Set `search={true}` and pass `loadOptions` to turn the menu into an async
|
|
557
|
+
search dropdown. The trigger stays a dropdown button; expanding it opens a menu
|
|
558
|
+
with an always-visible search input:
|
|
559
|
+
|
|
560
|
+
```svelte
|
|
561
|
+
<script lang="ts">
|
|
562
|
+
import { Dropdown, type DropdownLoadOptions } from '@ibobbyts/svelte-ui-utils';
|
|
563
|
+
|
|
564
|
+
let country = '';
|
|
565
|
+
|
|
566
|
+
const loadOptions: DropdownLoadOptions = async (query, { limit, signal }) => {
|
|
567
|
+
const params = new URLSearchParams({ q: query, limit: String(limit) });
|
|
568
|
+
const response = await fetch(`/api/countries?${params}`, { signal });
|
|
569
|
+
return response.json();
|
|
570
|
+
};
|
|
571
|
+
</script>
|
|
572
|
+
|
|
573
|
+
<Dropdown
|
|
574
|
+
value={country}
|
|
575
|
+
search
|
|
576
|
+
searchPlaceholder="Search countries"
|
|
577
|
+
{loadOptions}
|
|
578
|
+
ariaLabel="Country"
|
|
579
|
+
onChange={(next) => {
|
|
580
|
+
country = next;
|
|
581
|
+
}}
|
|
582
|
+
/>
|
|
583
|
+
```
|
|
584
|
+
|
|
585
|
+
`loadOptions(query, { limit, signal })` returns `{ options?, optionGroups? }`
|
|
586
|
+
whose options use `label`/`value` only. The empty query fires immediately on
|
|
587
|
+
every expand; typed queries are debounced with `searchDebounceMs` (default
|
|
588
|
+
`300`) and receive `searchLimit` (default `10`, clamped to `1..50`). When a
|
|
589
|
+
response contains `optionGroups`, the groups are the sole render source and any
|
|
590
|
+
flat `options` on the same response are ignored; empty groups stay hidden, and
|
|
591
|
+
an empty result renders the no-results row. Stale responses are discarded by
|
|
592
|
+
request order, closing the menu aborts the in-flight request, and a rejected
|
|
593
|
+
load shows the error row (override the text with `errorText`). Search-result
|
|
594
|
+
groups follow the same `groupsCollapsedByDefault` states as static groups; with
|
|
595
|
+
`"auto"` the collapse state is seeded once per open session, and manual toggles
|
|
596
|
+
survive later query refreshes within that session.
|
|
597
|
+
|
|
598
|
+
A single-select pick closes the menu; a multiselect pick keeps it open and
|
|
599
|
+
emits the complete selected array. Values picked during earlier queries stay
|
|
600
|
+
selected across new results. Search mode never falls back to the static
|
|
601
|
+
`options`/`optionGroups` props; without `search`, those props remain the only
|
|
602
|
+
render source and `loadOptions` is never called. Type the loader with
|
|
603
|
+
`DropdownLoadOptions`/`DropdownLoadOptionsResult`, exported from the package
|
|
604
|
+
root.
|
|
605
|
+
|
|
523
606
|
## DataTable
|
|
524
607
|
|
|
525
608
|
```svelte
|
|
@@ -706,6 +789,28 @@ and `var(--suu-radius)` corner radius as a bordered `DataTable`. Set
|
|
|
706
789
|
`filter.select` uses the shared `Dropdown` component, so select filters keep the
|
|
707
790
|
same menu, keyboard, and visual behavior as standalone dropdowns.
|
|
708
791
|
|
|
792
|
+
`filter.dropdown` maps a filter row onto the unified `Dropdown` API with
|
|
793
|
+
`label`/`value` options: pass static `options` or `optionGroups` (with
|
|
794
|
+
`groupsCollapsedByDefault`), set `multiselect` to collect an array, or set
|
|
795
|
+
`search` with `loadOptions` to run the async search flow inside the filter row:
|
|
796
|
+
|
|
797
|
+
```svelte
|
|
798
|
+
{
|
|
799
|
+
key: 'assignee',
|
|
800
|
+
title: 'Assignee',
|
|
801
|
+
filter: filter.dropdown({
|
|
802
|
+
value: assignee,
|
|
803
|
+
search: true,
|
|
804
|
+
loadOptions: searchUsers,
|
|
805
|
+
ariaLabel: 'Assignee',
|
|
806
|
+
width: '18rem',
|
|
807
|
+
onChange: (next) => {
|
|
808
|
+
assignee = next;
|
|
809
|
+
}
|
|
810
|
+
})
|
|
811
|
+
}
|
|
812
|
+
```
|
|
813
|
+
|
|
709
814
|
If a dropdown-style filter appears clipped, check the parent containers first.
|
|
710
815
|
`DropdownSearch` renders its result list as an absolutely positioned child, so
|
|
711
816
|
any ancestor with `overflow: hidden`, `overflow: auto`, or `overflow: scroll`
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
return `suu-filter-table__action suu-filter-table__action--${variant ?? 'outline'}`;
|
|
17
17
|
}
|
|
18
18
|
|
|
19
|
-
function toggleCheckbox(value: string
|
|
19
|
+
function toggleCheckbox(value: string, checked: boolean) {
|
|
20
20
|
if (control.type !== 'checkbox') {
|
|
21
21
|
return;
|
|
22
22
|
}
|
|
@@ -131,7 +131,7 @@
|
|
|
131
131
|
width={control.width}
|
|
132
132
|
minWidth={control.minWidth}
|
|
133
133
|
maxWidth={control.maxWidth}
|
|
134
|
-
|
|
134
|
+
getItemLabel={control.getItemLabel}
|
|
135
135
|
loadOptions={control.loadOptions}
|
|
136
136
|
onChange={(detail) => control.type === 'dropdownSearch' && void control.onChange(detail)}
|
|
137
137
|
/>
|
|
@@ -214,11 +214,37 @@
|
|
|
214
214
|
ariaLabel={control.ariaLabel}
|
|
215
215
|
fitContent
|
|
216
216
|
onChange={(value) => {
|
|
217
|
-
if (control.type === 'select') {
|
|
218
|
-
void control.onChange(
|
|
217
|
+
if (control.type === 'select' && !Array.isArray(value)) {
|
|
218
|
+
void control.onChange(value);
|
|
219
219
|
}
|
|
220
220
|
}}
|
|
221
221
|
/>
|
|
222
|
+
{:else if control.type === 'dropdown'}
|
|
223
|
+
<Dropdown
|
|
224
|
+
value={control.value}
|
|
225
|
+
multiselect={control.multiselect}
|
|
226
|
+
options={control.options ?? []}
|
|
227
|
+
optionGroups={control.optionGroups}
|
|
228
|
+
groupsCollapsedByDefault={control.groupsCollapsedByDefault}
|
|
229
|
+
search={control.search}
|
|
230
|
+
loadOptions={control.loadOptions}
|
|
231
|
+
searchDebounceMs={control.searchDebounceMs}
|
|
232
|
+
searchLimit={control.searchLimit}
|
|
233
|
+
searchPlaceholder={control.searchPlaceholder}
|
|
234
|
+
errorText={control.errorText}
|
|
235
|
+
ariaLabel={control.ariaLabel}
|
|
236
|
+
placement={control.placement}
|
|
237
|
+
menuAlign={control.menuAlign}
|
|
238
|
+
fitViewport={control.fitViewport}
|
|
239
|
+
fitContent={control.fitContent ?? true}
|
|
240
|
+
disabled={control.disabled}
|
|
241
|
+
width={control.width}
|
|
242
|
+
minWidth={control.minWidth}
|
|
243
|
+
maxWidth={control.maxWidth}
|
|
244
|
+
portal={control.portal}
|
|
245
|
+
onChange={control.onChange}
|
|
246
|
+
onTriggerClick={control.onTriggerClick}
|
|
247
|
+
/>
|
|
222
248
|
{:else if control.type === 'dropdownMultiSelect'}
|
|
223
249
|
<DropdownMultiSelect
|
|
224
250
|
value={control.value}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FilterControl.svelte.d.ts","sourceRoot":"","sources":["../../src/lib/data-table/FilterControl.svelte.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"FilterControl.svelte.d.ts","sourceRoot":"","sources":["../../src/lib/data-table/FilterControl.svelte.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AA6JhD,QAAA,MAAM,aAAa,KAA+E,CAAC;AACjF,KAAK,aAAa,GAAG,YAAY,CAAC,OAAO,aAAa,CAAC,CAAC;AAC1D,eAAe,aAAa,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { CheckboxFilterControl, DateRangeFilterControl, DropdownMultiSelectFilterControl, DropdownSearchFilterControl, FilterButtonControl, FilterContainerControl, FilterControl, FilterLinkControl, FilterSelectControl, NumberRangeFilterControl, RadioFilterControl } from './types.js';
|
|
1
|
+
import type { CheckboxFilterControl, DateRangeFilterControl, DropdownFilterControl, DropdownMultiSelectFilterControl, DropdownSearchFilterControl, FilterButtonControl, FilterContainerControl, FilterControl, FilterLinkControl, FilterSelectControl, NumberRangeFilterControl, RadioFilterControl } from './types.js';
|
|
2
2
|
declare function checkbox(options: Omit<CheckboxFilterControl, 'type'>): CheckboxFilterControl;
|
|
3
3
|
declare function radio(options: Omit<RadioFilterControl, 'type'>): RadioFilterControl;
|
|
4
4
|
declare function dropdownSearch(options: Omit<DropdownSearchFilterControl, 'type'>): DropdownSearchFilterControl;
|
|
@@ -7,6 +7,7 @@ declare function numberRange(options: Omit<NumberRangeFilterControl, 'type'>): N
|
|
|
7
7
|
declare function button(options: Omit<FilterButtonControl, 'type'>): FilterButtonControl;
|
|
8
8
|
declare function link(options: Omit<FilterLinkControl, 'type'>): FilterLinkControl;
|
|
9
9
|
declare function select(options: Omit<FilterSelectControl, 'type'>): FilterSelectControl;
|
|
10
|
+
declare function dropdown(options: Omit<DropdownFilterControl, 'type'>): DropdownFilterControl;
|
|
10
11
|
declare function dropdownMultiSelect(options: Omit<DropdownMultiSelectFilterControl, 'type'>): DropdownMultiSelectFilterControl;
|
|
11
12
|
declare function container(controls: FilterControl[]): FilterContainerControl;
|
|
12
13
|
export declare const filter: {
|
|
@@ -18,6 +19,7 @@ export declare const filter: {
|
|
|
18
19
|
button: typeof button;
|
|
19
20
|
link: typeof link;
|
|
20
21
|
select: typeof select;
|
|
22
|
+
dropdown: typeof dropdown;
|
|
21
23
|
dropdownMultiSelect: typeof dropdownMultiSelect;
|
|
22
24
|
container: typeof container;
|
|
23
25
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filter.d.ts","sourceRoot":"","sources":["../../src/lib/data-table/filter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,qBAAqB,EACrB,sBAAsB,EACtB,gCAAgC,EAChC,2BAA2B,EAC3B,mBAAmB,EACnB,sBAAsB,EACtB,aAAa,EACb,iBAAiB,EACjB,mBAAmB,EACnB,wBAAwB,EACxB,kBAAkB,EACnB,MAAM,YAAY,CAAC;AAEpB,iBAAS,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC,qBAAqB,EAAE,MAAM,CAAC,GAAG,qBAAqB,CAErF;AAED,iBAAS,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,kBAAkB,EAAE,MAAM,CAAC,GAAG,kBAAkB,CAE5E;AAED,iBAAS,cAAc,CAAC,OAAO,EAAE,IAAI,CAAC,2BAA2B,EAAE,MAAM,CAAC,GAAG,2BAA2B,CAEvG;AAED,iBAAS,SAAS,CAAC,OAAO,EAAE,IAAI,CAAC,sBAAsB,EAAE,MAAM,CAAC,GAAG,sBAAsB,CAExF;AAED,iBAAS,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,wBAAwB,EAAE,MAAM,CAAC,GAAG,wBAAwB,CAE9F;AAED,iBAAS,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,mBAAmB,EAAE,MAAM,CAAC,GAAG,mBAAmB,CAE/E;AAED,iBAAS,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,iBAAiB,EAAE,MAAM,CAAC,GAAG,iBAAiB,CAEzE;AAED,iBAAS,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,mBAAmB,EAAE,MAAM,CAAC,GAAG,mBAAmB,CAE/E;AAED,iBAAS,mBAAmB,CAC1B,OAAO,EAAE,IAAI,CAAC,gCAAgC,EAAE,MAAM,CAAC,GACtD,gCAAgC,CAElC;AAED,iBAAS,SAAS,CAAC,QAAQ,EAAE,aAAa,EAAE,GAAG,sBAAsB,CAEpE;AAED,eAAO,MAAM,MAAM
|
|
1
|
+
{"version":3,"file":"filter.d.ts","sourceRoot":"","sources":["../../src/lib/data-table/filter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,qBAAqB,EACrB,sBAAsB,EACtB,qBAAqB,EACrB,gCAAgC,EAChC,2BAA2B,EAC3B,mBAAmB,EACnB,sBAAsB,EACtB,aAAa,EACb,iBAAiB,EACjB,mBAAmB,EACnB,wBAAwB,EACxB,kBAAkB,EACnB,MAAM,YAAY,CAAC;AAEpB,iBAAS,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC,qBAAqB,EAAE,MAAM,CAAC,GAAG,qBAAqB,CAErF;AAED,iBAAS,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,kBAAkB,EAAE,MAAM,CAAC,GAAG,kBAAkB,CAE5E;AAED,iBAAS,cAAc,CAAC,OAAO,EAAE,IAAI,CAAC,2BAA2B,EAAE,MAAM,CAAC,GAAG,2BAA2B,CAEvG;AAED,iBAAS,SAAS,CAAC,OAAO,EAAE,IAAI,CAAC,sBAAsB,EAAE,MAAM,CAAC,GAAG,sBAAsB,CAExF;AAED,iBAAS,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,wBAAwB,EAAE,MAAM,CAAC,GAAG,wBAAwB,CAE9F;AAED,iBAAS,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,mBAAmB,EAAE,MAAM,CAAC,GAAG,mBAAmB,CAE/E;AAED,iBAAS,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,iBAAiB,EAAE,MAAM,CAAC,GAAG,iBAAiB,CAEzE;AAED,iBAAS,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,mBAAmB,EAAE,MAAM,CAAC,GAAG,mBAAmB,CAE/E;AAED,iBAAS,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC,qBAAqB,EAAE,MAAM,CAAC,GAAG,qBAAqB,CAErF;AAED,iBAAS,mBAAmB,CAC1B,OAAO,EAAE,IAAI,CAAC,gCAAgC,EAAE,MAAM,CAAC,GACtD,gCAAgC,CAElC;AAED,iBAAS,SAAS,CAAC,QAAQ,EAAE,aAAa,EAAE,GAAG,sBAAsB,CAEpE;AAED,eAAO,MAAM,MAAM;;;;;;;;;;;;CAYlB,CAAC"}
|
|
@@ -22,6 +22,9 @@ function link(options) {
|
|
|
22
22
|
function select(options) {
|
|
23
23
|
return { type: 'select', ...options };
|
|
24
24
|
}
|
|
25
|
+
function dropdown(options) {
|
|
26
|
+
return { type: 'dropdown', ...options };
|
|
27
|
+
}
|
|
25
28
|
function dropdownMultiSelect(options) {
|
|
26
29
|
return { type: 'dropdownMultiSelect', ...options };
|
|
27
30
|
}
|
|
@@ -37,6 +40,7 @@ export const filter = {
|
|
|
37
40
|
button,
|
|
38
41
|
link,
|
|
39
42
|
select,
|
|
43
|
+
dropdown,
|
|
40
44
|
dropdownMultiSelect,
|
|
41
45
|
container
|
|
42
46
|
};
|
|
@@ -8,5 +8,5 @@ export { resolveDateRangePreset } from './date-range.js';
|
|
|
8
8
|
export { getUiMessages, resolveUiLanguage, uiLanguages } from '../i18n.js';
|
|
9
9
|
export { getAriaSort, getCellValue, getPageCount, normalizePagination, setDataTableFilters, setDataTablePageSize, setDataTablePagination, setDataTableSort, toggleSort } from './state.js';
|
|
10
10
|
export type { UiLanguage, UiMessages } from '../i18n.js';
|
|
11
|
-
export type { CheckboxFilterDefinition, CheckboxFilterControl, DataTableColumn, DataTableCellValue, DataTableClassValue, DataTableHorizontalAlign, DataTableLayout, DataTablePaginationQueryKey, DataTableServerPagination, DataTableVerticalAlign, DateRangeFilterDefinition, DateRangeFilterControl, DateRangeFilterValue, DateRangePreset, DataTableRowAttributes, DataTableRowKey, DataTableSortChangeHandler, DataTableState, DataTableStateChangeHandler, DropdownSearchFilterDefinition, DropdownSearchFilterControl, DropdownMultiSelectFilterDefinition, DropdownMultiSelectFilterControl, FilterDefinition, FilterButtonControl, FilterContainerControl, FilterControl, FilterLinkControl, FilterOption, FilterSelectControl, FilterState, FilterTableRow, FilterValue, NumberRangeFilterDefinition, NumberRangeFilterControl, NumberRangeFilterValue, PaginationState, PaginationChangeHandler, PaginationDropdownPlacement, RadioFilterDefinition, RadioFilterControl, SortDirection, SortState } from './types.js';
|
|
11
|
+
export type { CheckboxFilterDefinition, CheckboxFilterControl, DataTableColumn, DataTableCellValue, DataTableClassValue, DataTableHorizontalAlign, DataTableLayout, DataTablePaginationQueryKey, DataTableServerPagination, DataTableVerticalAlign, DateRangeFilterDefinition, DateRangeFilterControl, DateRangeFilterValue, DateRangePreset, DataTableRowAttributes, DataTableRowKey, DataTableSortChangeHandler, DataTableState, DataTableStateChangeHandler, DropdownSearchFilterDefinition, DropdownSearchFilterControl, DropdownFilterDefinition, DropdownFilterControl, DropdownMultiSelectFilterDefinition, DropdownMultiSelectFilterControl, FilterDefinition, FilterButtonControl, FilterContainerControl, FilterControl, FilterLinkControl, FilterOption, FilterSelectControl, FilterState, FilterTableRow, FilterValue, NumberRangeFilterDefinition, NumberRangeFilterControl, NumberRangeFilterValue, PaginationState, PaginationChangeHandler, PaginationDropdownPlacement, RadioFilterDefinition, RadioFilterControl, SortDirection, SortState } from './types.js';
|
|
12
12
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/lib/data-table/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,0BAA0B,CAAC;AACtE,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC1E,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC3E,OAAO,EACL,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,EACpB,sBAAsB,EACtB,gBAAgB,EAChB,UAAU,EACX,MAAM,YAAY,CAAC;AACpB,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACzD,YAAY,EACV,wBAAwB,EACxB,qBAAqB,EACrB,eAAe,EACf,kBAAkB,EAClB,mBAAmB,EACnB,wBAAwB,EACxB,eAAe,EACf,2BAA2B,EAC3B,yBAAyB,EACzB,sBAAsB,EACtB,yBAAyB,EACzB,sBAAsB,EACtB,oBAAoB,EACpB,eAAe,EACf,sBAAsB,EACtB,eAAe,EACf,0BAA0B,EAC1B,cAAc,EACd,2BAA2B,EAC3B,8BAA8B,EAC9B,2BAA2B,EAC3B,mCAAmC,EACnC,gCAAgC,EAChC,gBAAgB,EAChB,mBAAmB,EACnB,sBAAsB,EACtB,aAAa,EACb,iBAAiB,EACjB,YAAY,EACZ,mBAAmB,EACnB,WAAW,EACX,cAAc,EACd,WAAW,EACX,2BAA2B,EAC3B,wBAAwB,EACxB,sBAAsB,EACtB,eAAe,EACf,uBAAuB,EACvB,2BAA2B,EAC3B,qBAAqB,EACrB,kBAAkB,EAClB,aAAa,EACb,SAAS,EACV,MAAM,YAAY,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/lib/data-table/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,0BAA0B,CAAC;AACtE,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC1E,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC3E,OAAO,EACL,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,EACpB,sBAAsB,EACtB,gBAAgB,EAChB,UAAU,EACX,MAAM,YAAY,CAAC;AACpB,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACzD,YAAY,EACV,wBAAwB,EACxB,qBAAqB,EACrB,eAAe,EACf,kBAAkB,EAClB,mBAAmB,EACnB,wBAAwB,EACxB,eAAe,EACf,2BAA2B,EAC3B,yBAAyB,EACzB,sBAAsB,EACtB,yBAAyB,EACzB,sBAAsB,EACtB,oBAAoB,EACpB,eAAe,EACf,sBAAsB,EACtB,eAAe,EACf,0BAA0B,EAC1B,cAAc,EACd,2BAA2B,EAC3B,8BAA8B,EAC9B,2BAA2B,EAC3B,wBAAwB,EACxB,qBAAqB,EACrB,mCAAmC,EACnC,gCAAgC,EAChC,gBAAgB,EAChB,mBAAmB,EACnB,sBAAsB,EACtB,aAAa,EACb,iBAAiB,EACjB,YAAY,EACZ,mBAAmB,EACnB,WAAW,EACX,cAAc,EACd,WAAW,EACX,2BAA2B,EAC3B,wBAAwB,EACxB,sBAAsB,EACtB,eAAe,EACf,uBAAuB,EACvB,2BAA2B,EAC3B,qBAAqB,EACrB,kBAAkB,EAClB,aAAa,EACb,SAAS,EACV,MAAM,YAAY,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { DropdownSearchChangeDetail, DropdownSearchItem,
|
|
2
|
-
import type { DropdownMenuAlign, DropdownMultiChangeHandler, DropdownMultiValue, DropdownOption, DropdownOptionGroup, DropdownPlacement, DropdownTriggerClickHandler } from '../dropdown/types.js';
|
|
1
|
+
import type { DropdownSearchChangeDetail, DropdownSearchItem, DropdownSearchItemLabelGetter, DropdownSearchLoadOptions, DropdownSearchStatus } from '../dropdown-search/types.js';
|
|
2
|
+
import type { DropdownLoadOptions, DropdownMenuAlign, DropdownMultiChangeHandler, DropdownMultiValue, DropdownOption, DropdownOptionGroup, DropdownPlacement, DropdownSelection, DropdownSelectionChangeHandler, DropdownTriggerClickHandler } from '../dropdown/types.js';
|
|
3
3
|
export type SortDirection = 'asc' | 'desc';
|
|
4
4
|
export type DataTableLayout = 'auto' | 'fixed';
|
|
5
5
|
export interface SortState {
|
|
@@ -53,7 +53,7 @@ export interface DataTableColumn<Row = unknown> {
|
|
|
53
53
|
}
|
|
54
54
|
export interface FilterOption {
|
|
55
55
|
label: string;
|
|
56
|
-
value: string
|
|
56
|
+
value: string;
|
|
57
57
|
disabled?: boolean;
|
|
58
58
|
}
|
|
59
59
|
export type FilterActionVariant = 'primary' | 'secondary' | 'outline' | 'ghost';
|
|
@@ -77,11 +77,37 @@ export interface FilterLinkControl {
|
|
|
77
77
|
}
|
|
78
78
|
export interface FilterSelectControl {
|
|
79
79
|
type: 'select';
|
|
80
|
-
value: string
|
|
80
|
+
value: string;
|
|
81
81
|
ariaLabel?: string;
|
|
82
82
|
options: FilterOption[];
|
|
83
83
|
onChange: (value: string) => void | Promise<void>;
|
|
84
84
|
}
|
|
85
|
+
export interface DropdownFilterControl {
|
|
86
|
+
type: 'dropdown';
|
|
87
|
+
value: DropdownSelection;
|
|
88
|
+
options?: DropdownOption[];
|
|
89
|
+
optionGroups?: DropdownOptionGroup[];
|
|
90
|
+
groupsCollapsedByDefault?: 'true' | 'false' | 'auto';
|
|
91
|
+
multiselect?: boolean;
|
|
92
|
+
search?: boolean;
|
|
93
|
+
loadOptions?: DropdownLoadOptions;
|
|
94
|
+
searchDebounceMs?: number;
|
|
95
|
+
searchLimit?: number;
|
|
96
|
+
searchPlaceholder?: string;
|
|
97
|
+
errorText?: string;
|
|
98
|
+
ariaLabel?: string;
|
|
99
|
+
placement?: DropdownPlacement;
|
|
100
|
+
menuAlign?: DropdownMenuAlign;
|
|
101
|
+
fitViewport?: boolean;
|
|
102
|
+
fitContent?: boolean;
|
|
103
|
+
disabled?: boolean;
|
|
104
|
+
width?: string;
|
|
105
|
+
minWidth?: string;
|
|
106
|
+
maxWidth?: string;
|
|
107
|
+
portal?: boolean;
|
|
108
|
+
onChange: DropdownSelectionChangeHandler;
|
|
109
|
+
onTriggerClick?: DropdownTriggerClickHandler;
|
|
110
|
+
}
|
|
85
111
|
export interface DropdownMultiSelectFilterControl {
|
|
86
112
|
type: 'dropdownMultiSelect';
|
|
87
113
|
value: DropdownMultiValue;
|
|
@@ -114,16 +140,16 @@ export interface NumberRangeFilterValue {
|
|
|
114
140
|
}
|
|
115
141
|
export interface CheckboxFilterControl {
|
|
116
142
|
type: 'checkbox';
|
|
117
|
-
value:
|
|
143
|
+
value: string[];
|
|
118
144
|
options: FilterOption[];
|
|
119
145
|
optionGroups?: DropdownOptionGroup[];
|
|
120
|
-
onChange: (value:
|
|
146
|
+
onChange: (value: string[]) => void | Promise<void>;
|
|
121
147
|
}
|
|
122
148
|
export interface RadioFilterControl {
|
|
123
149
|
type: 'radio';
|
|
124
|
-
value: string |
|
|
150
|
+
value: string | null | undefined;
|
|
125
151
|
options: FilterOption[];
|
|
126
|
-
onChange: (value: string
|
|
152
|
+
onChange: (value: string) => void | Promise<void>;
|
|
127
153
|
}
|
|
128
154
|
export interface DropdownSearchFilterControl {
|
|
129
155
|
type: 'dropdownSearch';
|
|
@@ -146,7 +172,7 @@ export interface DropdownSearchFilterControl {
|
|
|
146
172
|
width?: string;
|
|
147
173
|
minWidth?: string;
|
|
148
174
|
maxWidth?: string;
|
|
149
|
-
|
|
175
|
+
getItemLabel?: DropdownSearchItemLabelGetter;
|
|
150
176
|
loadOptions: DropdownSearchLoadOptions;
|
|
151
177
|
onChange: (detail: DropdownSearchChangeDetail) => void | Promise<void>;
|
|
152
178
|
}
|
|
@@ -178,7 +204,7 @@ export interface FilterContainerControl {
|
|
|
178
204
|
type: 'container';
|
|
179
205
|
controls: FilterControl[];
|
|
180
206
|
}
|
|
181
|
-
export type FilterControl = CheckboxFilterControl | RadioFilterControl | DropdownSearchFilterControl | DateRangeFilterControl | NumberRangeFilterControl | FilterButtonControl | FilterLinkControl | FilterSelectControl | DropdownMultiSelectFilterControl | FilterContainerControl;
|
|
207
|
+
export type FilterControl = CheckboxFilterControl | RadioFilterControl | DropdownSearchFilterControl | DateRangeFilterControl | NumberRangeFilterControl | FilterButtonControl | FilterLinkControl | FilterSelectControl | DropdownFilterControl | DropdownMultiSelectFilterControl | FilterContainerControl;
|
|
182
208
|
export interface FilterTableRow {
|
|
183
209
|
key: string;
|
|
184
210
|
title: string;
|
|
@@ -196,6 +222,10 @@ export type DropdownSearchFilterDefinition = DropdownSearchFilterControl & {
|
|
|
196
222
|
key: string;
|
|
197
223
|
label: string;
|
|
198
224
|
};
|
|
225
|
+
export type DropdownFilterDefinition = DropdownFilterControl & {
|
|
226
|
+
key: string;
|
|
227
|
+
label: string;
|
|
228
|
+
};
|
|
199
229
|
export type DropdownMultiSelectFilterDefinition = DropdownMultiSelectFilterControl & {
|
|
200
230
|
key: string;
|
|
201
231
|
label: string;
|
|
@@ -208,5 +238,5 @@ export type NumberRangeFilterDefinition = NumberRangeFilterControl & {
|
|
|
208
238
|
key: string;
|
|
209
239
|
label: string;
|
|
210
240
|
};
|
|
211
|
-
export type FilterDefinition = CheckboxFilterDefinition | RadioFilterDefinition | DropdownSearchFilterDefinition | DropdownMultiSelectFilterDefinition | DateRangeFilterDefinition | NumberRangeFilterDefinition;
|
|
241
|
+
export type FilterDefinition = CheckboxFilterDefinition | RadioFilterDefinition | DropdownSearchFilterDefinition | DropdownFilterDefinition | DropdownMultiSelectFilterDefinition | DateRangeFilterDefinition | NumberRangeFilterDefinition;
|
|
212
242
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/lib/data-table/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,0BAA0B,EAC1B,kBAAkB,EAClB,6BAA6B,EAC7B,yBAAyB,EACzB,oBAAoB,EACrB,MAAM,6BAA6B,CAAC;AACrC,OAAO,KAAK,EACV,iBAAiB,EACjB,0BAA0B,EAC1B,kBAAkB,EAClB,cAAc,EACd,mBAAmB,EACnB,iBAAiB,EACjB,2BAA2B,EAC5B,MAAM,sBAAsB,CAAC;AAE9B,MAAM,MAAM,aAAa,GAAG,KAAK,GAAG,MAAM,CAAC;AAE3C,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,OAAO,CAAC;AAE/C,MAAM,WAAW,SAAS;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,aAAa,CAAC;CAC1B;AAED,MAAM,MAAM,0BAA0B,GAAG,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAEnF,MAAM,MAAM,2BAA2B,GAAG,CAAC,SAAS,EAAE,cAAc,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAE9F,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,MAAM,2BAA2B,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,CAAC;AAEvF,MAAM,MAAM,yBAAyB,GAAG;IACtC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,EAAE,2BAA2B,CAAC;IACvC,SAAS,EAAE,CAAC,UAAU,EAAE,eAAe,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAClE,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG,iBAAiB,CAAC;AAE5D,MAAM,MAAM,uBAAuB,GAAG,CAAC,UAAU,EAAE,eAAe,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAE5F,MAAM,MAAM,WAAW,GACnB,MAAM,GACN,MAAM,GACN,OAAO,GACP,IAAI,GACJ,SAAS,GACT,oBAAoB,GACpB,sBAAsB,GACtB,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,GACtB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAE5B,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;AAEtD,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,SAAS,GAAG,IAAI,CAAC;IACvB,UAAU,EAAE,eAAe,CAAC;IAC5B,OAAO,EAAE,WAAW,CAAC;CACtB;AAED,MAAM,MAAM,kBAAkB,GAAG,OAAO,CAAC;AAEzC,MAAM,MAAM,mBAAmB,CAAC,GAAG,GAAG,OAAO,IACzC,MAAM,GACN,SAAS,GACT,IAAI,GACJ,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,kBAAkB,EAAE,MAAM,EAAE,eAAe,CAAC,GAAG,CAAC,KAAK,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC,CAAC;AAEvG,MAAM,MAAM,eAAe,CAAC,GAAG,GAAG,OAAO,IAAI,MAAM,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,KAAK,MAAM,GAAG,MAAM,CAAC,CAAC;AAErG,MAAM,MAAM,sBAAsB,CAAC,GAAG,GAAG,OAAO,IAAI,CAClD,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,MAAM,KACV,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,CAAC,CAAC;AAElE,MAAM,MAAM,wBAAwB,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC;AAEnE,MAAM,MAAM,sBAAsB,GAAG,KAAK,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAEjE,MAAM,WAAW,eAAe,CAAC,GAAG,GAAG,OAAO;IAC5C,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,qBAAqB,CAAC,EAAE,wBAAwB,CAAC;IACjD,mBAAmB,CAAC,EAAE,sBAAsB,CAAC;IAC7C,mBAAmB,CAAC,EAAE,wBAAwB,CAAC;IAC/C,iBAAiB,CAAC,EAAE,sBAAsB,CAAC;IAC3C,KAAK,CAAC,EAAE,mBAAmB,CAAC,GAAG,CAAC,CAAC;IACjC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,eAAe,CAAC,GAAG,CAAC,KAAK,kBAAkB,CAAC;CACzE;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/lib/data-table/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -25,6 +25,7 @@
|
|
|
25
25
|
export let showCountdown = false;
|
|
26
26
|
export let countdownDurationMs = 0;
|
|
27
27
|
export let countdownLabel = 'Dialog countdown';
|
|
28
|
+
export let restoreFocusSelector: string | undefined = undefined;
|
|
28
29
|
export let onConfirm: (() => void | Promise<void>) | undefined = undefined;
|
|
29
30
|
export let onCancel: (() => void) | undefined = undefined;
|
|
30
31
|
export let onClose: (() => void) | undefined = undefined;
|
|
@@ -59,6 +60,7 @@
|
|
|
59
60
|
{showCountdown}
|
|
60
61
|
{countdownDurationMs}
|
|
61
62
|
{countdownLabel}
|
|
63
|
+
{restoreFocusSelector}
|
|
62
64
|
onClose={handleClose}
|
|
63
65
|
>
|
|
64
66
|
<slot>
|
|
@@ -39,6 +39,7 @@ declare const ConfirmDialog: $$__sveltets_2_IsomorphicComponent<$$__sveltets_2_P
|
|
|
39
39
|
showCountdown?: boolean;
|
|
40
40
|
countdownDurationMs?: number;
|
|
41
41
|
countdownLabel?: string;
|
|
42
|
+
restoreFocusSelector?: string | undefined;
|
|
42
43
|
onConfirm?: (() => void | Promise<void>) | undefined;
|
|
43
44
|
onCancel?: (() => void) | undefined;
|
|
44
45
|
onClose?: (() => void) | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConfirmDialog.svelte.d.ts","sourceRoot":"","sources":["../../src/lib/dialog/ConfirmDialog.svelte.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"ConfirmDialog.svelte.d.ts","sourceRoot":"","sources":["../../src/lib/dialog/ConfirmDialog.svelte.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAmElE,UAAU,kCAAkC,CAAC,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,EAAE,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,EAAE,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,EAAE,OAAO,GAAG,EAAE,EAAE,QAAQ,GAAG,MAAM;IACpM,KAAK,OAAO,EAAE,OAAO,QAAQ,EAAE,2BAA2B,CAAC,KAAK,CAAC,GAAG,OAAO,QAAQ,EAAE,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,GAAG;QAAE,UAAU,CAAC,EAAE,QAAQ,CAAA;KAAE,GAAG,OAAO,CAAC;IACjK,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,GAAG;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,KAAK,CAAA;KAAC,GAAG,OAAO,GAAG;QAAE,IAAI,CAAC,EAAE,GAAG,CAAC;QAAC,GAAG,CAAC,EAAE,GAAG,CAAA;KAAE,CAAC;IAC9G,YAAY,CAAC,EAAE,QAAQ,CAAC;CAC3B;AACD,KAAK,gCAAgC,CAAC,KAAK,EAAE,KAAK,IAAI,KAAK,GACvD,CAAC,KAAK,SAAS;IAAE,OAAO,EAAE,GAAG,CAAA;CAAE,GACzB,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,GACnC,GAAG,GACH;IAAE,QAAQ,CAAC,EAAE,GAAG,CAAA;CAAE,GAClB,EAAE,CAAC,CAAC;AAId,QAAA,MAAM,aAAa;;;;;;;aAfq1B,mBAAmB;WAAS,UAAU;cAAY,MAAM,GAAG,SAAS;;;;;;;;sBAA8R,MAAM,GAAG,MAAM;;;;;2BAA6L,MAAM,GAAG,SAAS;gBAAc,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,SAAS;eAAa,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS;cAAY,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS;;;;;;;cAe/7C,CAAC;AACvF,KAAK,aAAa,GAAG,YAAY,CAAC,OAAO,aAAa,CAAC,CAAC;AAC1D,eAAe,aAAa,CAAC"}
|