@lavalogic/scoria 0.12.2 → 0.13.1
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/Components/Base/ContextWrapper.svelte +16 -1
- package/dist/Components/Base/ContextWrapper.svelte.d.ts +13 -0
- package/dist/Components/TabGroupButtonProps.d.ts +1 -1
- package/dist/Components/Table/Body/QuickSearchCell.svelte +2 -3
- package/dist/Components/Table/Body/Rows/ColumnList.svelte +1 -1
- package/dist/Components/Table/Body/Rows/ColumnListRow.svelte +1 -1
- package/dist/Components/Table/Body/Rows/Columns/AccessorComponent.svelte +3 -3
- package/dist/Components/Table/Body/Rows/Columns/AccessorComponent.svelte.d.ts +12 -12
- package/dist/Components/Table/Body/Rows/Columns/AccessorComponentProps.d.ts +2 -2
- package/dist/Components/Table/Body/Rows/Columns/ActionsCell.svelte +27 -17
- package/dist/Components/Table/Body/Rows/Columns/ActionsCell.svelte.d.ts +11 -11
- package/dist/Components/Table/Body/Rows/Columns/BubbleCell.svelte +11 -9
- package/dist/Components/Table/Body/Rows/Columns/BubbleCell.svelte.d.ts +12 -12
- package/dist/Components/Table/Body/Rows/Columns/ExpandCell.svelte +8 -4
- package/dist/Components/Table/Body/Rows/Columns/ExpandCell.svelte.d.ts +13 -12
- package/dist/Components/Table/Body/Rows/Columns/ExpandCellProps.d.ts +5 -4
- package/dist/Components/Table/Body/Rows/Columns/FocusableImmutableCell.svelte +4 -4
- package/dist/Components/Table/Body/Rows/Columns/FocusableImmutableCell.svelte.d.ts +12 -12
- package/dist/Components/Table/Body/Rows/Columns/FocusableImmutableCellProps.d.ts +2 -2
- package/dist/Components/Table/Body/Rows/Columns/ProgressCell.svelte +11 -8
- package/dist/Components/Table/Body/Rows/Columns/RowSelectionColumn.d.ts +5 -0
- package/dist/Components/Table/Body/Rows/Columns/RowSelectionColumn.js +1 -0
- package/dist/Components/Table/Body/Rows/Columns/RowSelectionTableCell.d.ts +5 -0
- package/dist/Components/Table/Body/Rows/Columns/RowSelectionTableCell.js +1 -0
- package/dist/Components/Table/Body/Rows/Columns/TableCheckbox.svelte +4 -3
- package/dist/Components/Table/Body/Rows/Columns/TableCheckbox.svelte.d.ts +2 -1
- package/dist/Components/Table/Body/Rows/Columns/TableColumn.svelte +16 -9
- package/dist/Components/Table/Body/Rows/Columns/TableColumn.svelte.d.ts +17 -16
- package/dist/Components/Table/Body/Rows/Columns/TableDatePicker.svelte +5 -4
- package/dist/Components/Table/Body/Rows/Columns/TableNumberInput.svelte +10 -8
- package/dist/Components/Table/Body/Rows/Columns/TableNumberInput.svelte.d.ts +2 -1
- package/dist/Components/Table/Body/Rows/Columns/TableQuerySelect.svelte +10 -7
- package/dist/Components/Table/Body/Rows/Columns/TableRowSelectionCheckbox.svelte +11 -7
- package/dist/Components/Table/Body/Rows/Columns/TableRowSelectionCheckbox.svelte.d.ts +2 -1
- package/dist/Components/Table/Body/Rows/Columns/TableSelect.svelte +10 -7
- package/dist/Components/Table/Body/Rows/Columns/TableTextInput.svelte +11 -9
- package/dist/Components/Table/Body/Rows/Columns/TableTextInput.svelte.d.ts +12 -12
- package/dist/Components/Table/Body/Rows/Columns/TableTextInputProps.d.ts +2 -2
- package/dist/Components/Table/Body/Rows/Columns/ValidityCell.svelte +7 -7
- package/dist/Components/Table/Body/Rows/Columns/ValidityCell.svelte.d.ts +12 -12
- package/dist/Components/Table/Body/Rows/Columns/ValidityCellProps.d.ts +2 -2
- package/dist/Components/Table/Body/Rows/TableRow.svelte +7 -6
- package/dist/Components/Table/Body/TableBody.svelte +19 -15
- package/dist/Components/Table/ColumnDefinitions/ExampleItemColumnDefRepository.svelte.d.ts +1 -1
- package/dist/Components/Table/ColumnDefinitions/ExampleItemColumnDefRepository.svelte.js +17 -2
- package/dist/Components/Table/Headers/HighlightAllHeader.svelte +29 -16
- package/dist/Components/Table/Headers/SelectAllHeader.svelte +1 -1
- package/dist/Components/Table/Headers/TableHead.svelte +1 -1
- package/dist/Components/Table/Misc/ColumnPanel.svelte +1 -1
- package/dist/Components/Table/Misc/ColumnPanelModal.svelte +1 -1
- package/dist/Components/Table/Misc/FilterInput.svelte +1 -3
- package/dist/Components/Table/Misc/FilterPanel.svelte +2 -2
- package/dist/Components/Table/Misc/FilterPanelModal.svelte +1 -1
- package/dist/Components/Table/Misc/TableFooter.svelte +1 -1
- package/dist/Components/Table/Misc/TableHorizontalBar.svelte +1 -1
- package/dist/Components/Table/Misc/TableSidebar.svelte +2 -1
- package/dist/Components/Table/Misc/ToolboxPanel.svelte +2 -2
- package/dist/Components/Table/Misc/ToolboxPanelModal.svelte +1 -1
- package/dist/Components/Table/NestedTable.svelte +12 -8
- package/dist/Components/Table/NestedTable.svelte.d.ts +15 -15
- package/dist/Components/Table/Table.svelte +111 -118
- package/dist/Components/Table/Table.svelte.d.ts +16 -15
- package/dist/Components/Table/Types/Columns/Column.d.ts +2 -2
- package/dist/Components/Table/Types/Columns/Definitions/ColumnDef.svelte.d.ts +2 -2
- package/dist/Components/Table/Types/Columns/Definitions/Display/AbstractDisplayDef.svelte.d.ts +6 -6
- package/dist/Components/Table/Types/Columns/Definitions/Display/ValidityDef.svelte.d.ts +3 -3
- package/dist/Components/Table/Types/Columns/Definitions/Expand/ExpandDef.svelte.d.ts +6 -6
- package/dist/Components/Table/Types/Columns/DefsWrapper.d.ts +2 -2
- package/dist/Components/Table/Types/Columns/ExpandColumn.d.ts +3 -2
- package/dist/Components/Table/Types/Columns/ExpandTableCell.d.ts +3 -2
- package/dist/Components/Table/Types/Columns/ProgressBarTableCell.d.ts +2 -1
- package/dist/Components/Table/Types/Columns/TableCell.d.ts +2 -2
- package/dist/Components/Table/Types/Context/ITable.d.ts +1 -1
- package/dist/Components/Table/Types/Context/TableContext.svelte.d.ts +32 -29
- package/dist/Components/Table/Types/Context/TableContext.svelte.js +313 -278
- package/dist/Components/Table/Types/Context/TableInitOptions.d.ts +4 -2
- package/dist/Components/Table/Types/DataRepository/IDataRepository.d.ts +1 -1
- package/dist/Components/Table/Types/DataRepository/ILocalDataRepository.d.ts +1 -2
- package/dist/Components/Table/Types/DataRepository/LocalTableDataRepository.svelte.d.ts +2 -1
- package/dist/Components/Table/Types/DataRepository/LocalTableDataRepository.svelte.js +31 -8
- package/dist/Components/Table/Types/DataRepository/TableDataRepository.svelte.d.ts +2 -1
- package/dist/Components/Table/Types/DataRepository/TableDataRepository.svelte.js +4 -1
- package/dist/Components/Table/Types/Filtering/CustomFilterFn.d.ts +1 -1
- package/dist/Components/Table/Types/Filtering/FilterFn.d.ts +1 -1
- package/dist/Components/Table/Types/Focus/TableFocusDetails.svelte.d.ts +7 -6
- package/dist/Components/Table/Types/Focus/TableFocusDetails.svelte.js +8 -2
- package/dist/Components/VerticalTabGroupButton.svelte +1 -1
- package/dist/Components/VerticalTabGroupButton.svelte.d.ts +5 -5
- package/dist/Components/VerticalTabGroupProps.d.ts +2 -2
- package/dist/Contexts/ToastContext.svelte.d.ts +3 -1
- package/dist/Contexts/ToastContext.svelte.js +2 -2
- package/dist/Helpers/Helpers.svelte.d.ts +1 -2
- package/dist/Types/Examples/ExampleModal.svelte +2 -2
- package/dist/Types/Examples/ExampleModal.svelte.d.ts +23 -2
- package/dist/Types/Internal/TabOption.d.ts +1 -1
- package/dist/index.d.ts +1 -1
- package/package.json +18 -18
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import type { CellCoordinates } from '../Coordinates/CellCoordinates.js';
|
|
2
2
|
import type { ToolbarPosition } from '../Toolbar/ToolbarPosition.js';
|
|
3
|
-
export
|
|
4
|
-
|
|
3
|
+
export type Primitive = string | number;
|
|
4
|
+
export interface TableInitOptions<T extends object, Identifier extends Primitive> {
|
|
5
|
+
selectionExtractor: (item: T) => Promise<Identifier>;
|
|
5
6
|
allowCopy?: boolean;
|
|
6
7
|
enableResize?: boolean;
|
|
7
8
|
allowColumnReordering?: boolean;
|
|
@@ -12,4 +13,5 @@ export interface TableInitOptions<T extends object> {
|
|
|
12
13
|
displayFooter?: boolean;
|
|
13
14
|
onEditCell?: (item: T, coords: CellCoordinates, value: unknown) => void | Promise<void>;
|
|
14
15
|
getUserId: () => string | undefined;
|
|
16
|
+
debug?: boolean;
|
|
15
17
|
}
|
|
@@ -17,7 +17,7 @@ export interface IDataRepository<T extends object> {
|
|
|
17
17
|
manualSorting?: boolean;
|
|
18
18
|
sorting: SortingState;
|
|
19
19
|
filtering: ColumnFiltersState;
|
|
20
|
-
filterModes:
|
|
20
|
+
filterModes: ReadonlyMap<string, FilterMode>;
|
|
21
21
|
setFilterMode: (id: string, mode: FilterMode) => void;
|
|
22
22
|
filterBy: (id: string, value: unknown) => void;
|
|
23
23
|
dateFilter?: FilterFn<T, DateFilterValueType>;
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import type { SvelteMap } from 'svelte/reactivity';
|
|
2
1
|
import type { ColumnFiltersState } from '../Filtering/ColumnFiltersState.js';
|
|
3
2
|
import type { BoolFilterValueType, DateFilterValueType, FilterFn, NumberFilterValueType, SelectFilterValueType, StringFilterValueType } from '../Filtering/FilterFn.js';
|
|
4
3
|
import type { FilterMode } from '../Filtering/FilterMode.js';
|
|
@@ -10,7 +9,7 @@ export interface ILocalDataRepository<T extends object> extends IDataRepository<
|
|
|
10
9
|
nextPage: () => void;
|
|
11
10
|
prevPage: () => void;
|
|
12
11
|
filtering: ColumnFiltersState;
|
|
13
|
-
filterModes:
|
|
12
|
+
filterModes: ReadonlyMap<string, FilterMode>;
|
|
14
13
|
setFilterMode: (id: string, mode: FilterMode) => void;
|
|
15
14
|
filterBy: (id: string, value: unknown) => void;
|
|
16
15
|
dateFilter: FilterFn<T, DateFilterValueType>;
|
|
@@ -13,9 +13,10 @@ import { TableDataRepository } from './TableDataRepository.svelte.js';
|
|
|
13
13
|
export declare const allowedEmptyFilterModes: SvelteSet<StringFilterMode | NumberDateFilterMode>;
|
|
14
14
|
export declare class LocalTableDataRepository<T extends object> extends TableDataRepository<T> implements ILocalDataRepository<T> {
|
|
15
15
|
addEmptyRow?: (() => void) | undefined;
|
|
16
|
+
private debug;
|
|
16
17
|
readonly filterType: "Real";
|
|
17
18
|
constructor(tableName: string, dataRef: RefWrapper<Array<T>>, // reactive
|
|
18
|
-
getUserId: () => string | undefined, addEmptyRow?: (() => void) | undefined);
|
|
19
|
+
getUserId: () => string | undefined, addEmptyRow?: (() => void) | undefined, debug?: boolean);
|
|
19
20
|
private _isLoading;
|
|
20
21
|
get isLoading(): boolean;
|
|
21
22
|
set isLoading(v: boolean);
|
|
@@ -11,11 +11,13 @@ export const allowedEmptyFilterModes = new SvelteSet([
|
|
|
11
11
|
]);
|
|
12
12
|
export class LocalTableDataRepository extends TableDataRepository {
|
|
13
13
|
addEmptyRow;
|
|
14
|
+
debug;
|
|
14
15
|
filterType = FilterType.Real;
|
|
15
16
|
constructor(tableName, dataRef, // reactive
|
|
16
|
-
getUserId, addEmptyRow) {
|
|
17
|
+
getUserId, addEmptyRow, debug = false) {
|
|
17
18
|
super(tableName, getUserId);
|
|
18
19
|
this.addEmptyRow = addEmptyRow;
|
|
20
|
+
this.debug = debug;
|
|
19
21
|
this._dataRef = $derived(dataRef);
|
|
20
22
|
this._lastPage = $derived(Math.ceil(this._dataRef.value.length / this.paginationState.pageSize));
|
|
21
23
|
this._totalRows = $derived(this._dataRef.value.length);
|
|
@@ -64,14 +66,20 @@ export class LocalTableDataRepository extends TableDataRepository {
|
|
|
64
66
|
paginationType = PaginationType.Local;
|
|
65
67
|
setFilterMode = (id, mode) => {
|
|
66
68
|
if (mode != undefined) {
|
|
67
|
-
this.
|
|
69
|
+
if (this.debug) {
|
|
70
|
+
console.log(`LOCAL REPO: Setting mode ${mode} for ${id}`);
|
|
71
|
+
}
|
|
72
|
+
this._filterModes.set(id, mode);
|
|
68
73
|
//add stub filtering in empty cases
|
|
69
74
|
if (allowedEmptyFilterModes.has(mode) && !this.filtering.some((it) => it.id === id)) {
|
|
70
75
|
this.filterBy(id, '');
|
|
71
76
|
}
|
|
72
77
|
}
|
|
73
78
|
else {
|
|
74
|
-
this.
|
|
79
|
+
if (this.debug) {
|
|
80
|
+
console.log(`LOCAL REPO: Deleting mode for ${id}`);
|
|
81
|
+
}
|
|
82
|
+
this._filterModes.delete(id);
|
|
75
83
|
}
|
|
76
84
|
};
|
|
77
85
|
filterBy = (id, value) => {
|
|
@@ -82,18 +90,33 @@ export class LocalTableDataRepository extends TableDataRepository {
|
|
|
82
90
|
const oldIndex = this.filtering.findIndex((it) => it.id === id);
|
|
83
91
|
const newFiltering = this.filtering.concat();
|
|
84
92
|
if (oldIndex === -1 || newFiltering[oldIndex].value != value) {
|
|
93
|
+
// remove previous filter state for this column if exists
|
|
94
|
+
// if it's useful, we'll then add it back to the end of the array for filtering precedence
|
|
85
95
|
if (oldIndex > -1) {
|
|
86
96
|
newFiltering.splice(oldIndex, 1);
|
|
87
97
|
}
|
|
88
98
|
const filterMode = this.filterModes.get(id);
|
|
89
|
-
const hasValue = filterMode &&
|
|
90
|
-
(
|
|
91
|
-
|
|
92
|
-
(typeof value === '
|
|
93
|
-
(typeof value
|
|
99
|
+
const hasValue = (filterMode && allowedEmptyFilterModes.has(filterMode)) ||
|
|
100
|
+
(value != null &&
|
|
101
|
+
((typeof value === 'object' && Array.isArray(value) && value.length !== 0) ||
|
|
102
|
+
(typeof value === 'string' && value.length !== 0) ||
|
|
103
|
+
(typeof value !== 'object' && typeof value !== 'string')));
|
|
94
104
|
if (hasValue) {
|
|
105
|
+
if (this.debug) {
|
|
106
|
+
console.log(`LOCAL REPO: adding filter value ${value?.toString()} for id ${id}`);
|
|
107
|
+
}
|
|
95
108
|
newFiltering.push({ id, value });
|
|
96
109
|
}
|
|
110
|
+
else {
|
|
111
|
+
if (this.debug) {
|
|
112
|
+
if (!filterMode) {
|
|
113
|
+
console.log(`LOCAL REPO: no filter mode found for ${id}, skipping value ${value?.toString()}...`);
|
|
114
|
+
}
|
|
115
|
+
else {
|
|
116
|
+
console.log(`LOCAL REPO: no value found for id ${id}. Skipping...`);
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
}
|
|
97
120
|
}
|
|
98
121
|
this.filtering = newFiltering;
|
|
99
122
|
};
|
|
@@ -36,7 +36,8 @@ export declare abstract class TableDataRepository<T extends object> implements I
|
|
|
36
36
|
private _previouslyViewedPage;
|
|
37
37
|
get previouslyViewedPage(): number;
|
|
38
38
|
private set previouslyViewedPage(value);
|
|
39
|
-
|
|
39
|
+
protected _filterModes: SvelteMap<string, FilterMode>;
|
|
40
|
+
get filterModes(): ReadonlyMap<string, FilterMode>;
|
|
40
41
|
private _forceRefresh;
|
|
41
42
|
get forceRefresh(): () => void;
|
|
42
43
|
set forceRefresh(v: () => void);
|
|
@@ -29,7 +29,10 @@ export class TableDataRepository {
|
|
|
29
29
|
set previouslyViewedPage(v) {
|
|
30
30
|
this._previouslyViewedPage = v;
|
|
31
31
|
}
|
|
32
|
-
|
|
32
|
+
_filterModes = $state(new SvelteMap());
|
|
33
|
+
get filterModes() {
|
|
34
|
+
return this._filterModes;
|
|
35
|
+
}
|
|
33
36
|
_forceRefresh = $state(() => {
|
|
34
37
|
console.warn('tried to force refresh without a callback registered');
|
|
35
38
|
});
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import type { FilterMode } from './FilterMode.js';
|
|
2
|
-
export type CustomFilterFn = (mode: FilterMode, value: unknown) => Promise<boolean>;
|
|
2
|
+
export type CustomFilterFn = (mode: FilterMode, value: unknown) => boolean | Promise<boolean>;
|
|
@@ -6,4 +6,4 @@ export type SelectFilterValueType<T, columnType = T[keyof T]> = string | Array<u
|
|
|
6
6
|
} | undefined;
|
|
7
7
|
export type BoolFilterValueType = boolean | null;
|
|
8
8
|
export type StringFilterValueType = string | null;
|
|
9
|
-
export type FilterFn<T extends object, FilterValueType> = (row: Row<T>, columnId: string, filterValue: FilterValueType) => Promise<boolean>;
|
|
9
|
+
export type FilterFn<T extends object, FilterValueType> = (row: Row<T>, columnId: string, filterValue: FilterValueType) => boolean | Promise<boolean>;
|
|
@@ -1,16 +1,17 @@
|
|
|
1
|
+
import type { ToastContext } from '../../../../Contexts/ToastContext.svelte.js';
|
|
1
2
|
import { Validity } from '../../../../Types/Internal/Validity.js';
|
|
2
3
|
import type { TableCell } from '../Columns/TableCell.js';
|
|
3
4
|
import type { TableContext } from '../Context/TableContext.svelte.js';
|
|
4
5
|
import type { CellCoordinates } from '../Coordinates/CellCoordinates.js';
|
|
5
|
-
export declare class TableFocusDetails<T extends object> {
|
|
6
|
+
export declare class TableFocusDetails<T extends object, in FilterValueType> {
|
|
6
7
|
private toastCallback;
|
|
7
|
-
constructor(cell: TableCell<T>, tableContext: TableContext<T>, toastCallback:
|
|
8
|
+
constructor(cell: TableCell<T, FilterValueType>, tableContext: TableContext<T, never>, toastCallback: ToastContext['toast']);
|
|
8
9
|
private _cell;
|
|
9
|
-
get cell(): TableCell<T>;
|
|
10
|
-
set cell(v: TableCell<T>);
|
|
10
|
+
get cell(): TableCell<T, FilterValueType>;
|
|
11
|
+
set cell(v: TableCell<T, FilterValueType>);
|
|
11
12
|
private _tableContext;
|
|
12
|
-
get tableContext(): TableContext<T>;
|
|
13
|
-
set tableContext(v: TableContext<T>);
|
|
13
|
+
get tableContext(): TableContext<T, never>;
|
|
14
|
+
set tableContext(v: TableContext<T, never>);
|
|
14
15
|
private _coordinates;
|
|
15
16
|
get coordinates(): CellCoordinates;
|
|
16
17
|
private _isMultiFocused;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { devCatch, isErrorResponse } from '../../../../Helpers/Helpers.svelte.js';
|
|
1
2
|
import { Colour } from '../../../../scss/colours.js';
|
|
2
3
|
import { Validity } from '../../../../Types/Internal/Validity.js';
|
|
3
4
|
import { tick } from 'svelte';
|
|
@@ -118,7 +119,7 @@ export class TableFocusDetails {
|
|
|
118
119
|
});
|
|
119
120
|
async __validityTuple(isValid, original) {
|
|
120
121
|
try {
|
|
121
|
-
const result = (await isValid?.(original, this.tableContext.selectionContains(original))) ??
|
|
122
|
+
const result = (await isValid?.(original, await this.tableContext.selectionContains(original))) ??
|
|
122
123
|
Validity.Valid;
|
|
123
124
|
if (isWrapper(result)) {
|
|
124
125
|
return [result.value, result.reason];
|
|
@@ -130,7 +131,12 @@ export class TableFocusDetails {
|
|
|
130
131
|
catch (e) {
|
|
131
132
|
console.warn('validity error:', e);
|
|
132
133
|
return tick().then(() => {
|
|
133
|
-
|
|
134
|
+
if (isErrorResponse(e)) {
|
|
135
|
+
this.toastCallback(e);
|
|
136
|
+
}
|
|
137
|
+
else {
|
|
138
|
+
devCatch(e);
|
|
139
|
+
}
|
|
134
140
|
return [Validity.Valid, undefined];
|
|
135
141
|
});
|
|
136
142
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<svelte:options runes />
|
|
2
2
|
|
|
3
|
-
<script lang="ts" generics="Args
|
|
3
|
+
<script lang="ts" generics="Args">
|
|
4
4
|
import { devCatch } from '../Helpers/Helpers.svelte.js';
|
|
5
5
|
import { Colour } from '../scss/colours.js';
|
|
6
6
|
import { Size } from '../Types/Internal/Size.js';
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import type { TabGroupButtonProps } from './TabGroupButtonProps.js';
|
|
2
|
-
declare function $$render<Args
|
|
2
|
+
declare function $$render<Args>(): {
|
|
3
3
|
props: TabGroupButtonProps<Args>;
|
|
4
4
|
exports: {};
|
|
5
5
|
bindings: "";
|
|
6
6
|
slots: {};
|
|
7
7
|
events: {};
|
|
8
8
|
};
|
|
9
|
-
declare class __sveltets_Render<Args
|
|
9
|
+
declare class __sveltets_Render<Args> {
|
|
10
10
|
props(): ReturnType<typeof $$render<Args>>['props'];
|
|
11
11
|
events(): ReturnType<typeof $$render<Args>>['events'];
|
|
12
12
|
slots(): ReturnType<typeof $$render<Args>>['slots'];
|
|
@@ -14,12 +14,12 @@ declare class __sveltets_Render<Args extends object | undefined> {
|
|
|
14
14
|
exports(): {};
|
|
15
15
|
}
|
|
16
16
|
interface $$IsomorphicComponent {
|
|
17
|
-
new <Args
|
|
17
|
+
new <Args>(options: import('svelte').ComponentConstructorOptions<ReturnType<__sveltets_Render<Args>['props']>>): import('svelte').SvelteComponent<ReturnType<__sveltets_Render<Args>['props']>, ReturnType<__sveltets_Render<Args>['events']>, ReturnType<__sveltets_Render<Args>['slots']>> & {
|
|
18
18
|
$$bindings?: ReturnType<__sveltets_Render<Args>['bindings']>;
|
|
19
19
|
} & ReturnType<__sveltets_Render<Args>['exports']>;
|
|
20
|
-
<Args
|
|
20
|
+
<Args>(internal: unknown, props: ReturnType<__sveltets_Render<Args>['props']> & {}): ReturnType<__sveltets_Render<Args>['exports']>;
|
|
21
21
|
z_$$bindings?: ReturnType<__sveltets_Render<any>['bindings']>;
|
|
22
22
|
}
|
|
23
23
|
declare const VerticalTabGroupButton: $$IsomorphicComponent;
|
|
24
|
-
type VerticalTabGroupButton<Args
|
|
24
|
+
type VerticalTabGroupButton<Args> = InstanceType<typeof VerticalTabGroupButton<Args>>;
|
|
25
25
|
export default VerticalTabGroupButton;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import type { TabOption } from '../Types/Internal/TabOption.js';
|
|
2
2
|
export interface VerticalTabGroupProps {
|
|
3
3
|
name?: string;
|
|
4
|
-
tabs: Array<TabOption<
|
|
5
|
-
selected?: TabOption<
|
|
4
|
+
tabs: Array<TabOption<unknown>>;
|
|
5
|
+
selected?: TabOption<unknown>;
|
|
6
6
|
style?: string;
|
|
7
7
|
noscroll?: boolean;
|
|
8
8
|
noTabMessage?: string;
|
|
@@ -1,9 +1,11 @@
|
|
|
1
|
+
import { type IErrorResponse } from '../Helpers/Helpers.svelte.js';
|
|
1
2
|
import type { IdentifiableToastMessage } from '../Types/Internal/IdentifiableToastMessage.js';
|
|
3
|
+
import type { ToastMessage } from '../Types/Internal/ToastMessage.js';
|
|
2
4
|
export declare class ToastContext {
|
|
3
5
|
static readonly identifier: unique symbol;
|
|
4
6
|
private _toasts;
|
|
5
7
|
get toasts(): Array<IdentifiableToastMessage>;
|
|
6
8
|
private set toasts(value);
|
|
7
|
-
readonly toast: (message: unknown) => void;
|
|
9
|
+
readonly toast: (message: Array<unknown> | string | ToastMessage | IErrorResponse) => void;
|
|
8
10
|
private dismiss;
|
|
9
11
|
}
|
|
@@ -27,7 +27,7 @@ export class ToastContext {
|
|
|
27
27
|
}
|
|
28
28
|
};
|
|
29
29
|
}
|
|
30
|
-
|
|
30
|
+
if (typeof message === 'string') {
|
|
31
31
|
return {
|
|
32
32
|
result: Validity.Info,
|
|
33
33
|
closeable,
|
|
@@ -39,7 +39,7 @@ export class ToastContext {
|
|
|
39
39
|
}
|
|
40
40
|
};
|
|
41
41
|
}
|
|
42
|
-
if (
|
|
42
|
+
if (typeof message == 'object' && isToastMessage(message)) {
|
|
43
43
|
return {
|
|
44
44
|
closeable,
|
|
45
45
|
timeout,
|
|
@@ -13,7 +13,7 @@ export declare function SQLFriendlyWithLocalTime(date: InputDate | InputDateWith
|
|
|
13
13
|
export declare const localTimeFormat: Intl.DateTimeFormat;
|
|
14
14
|
export declare function passthrough(e: KeyboardEvent): void;
|
|
15
15
|
export declare function getCanvasContext(): CanvasRenderingContext2D | null;
|
|
16
|
-
interface IErrorResponse {
|
|
16
|
+
export interface IErrorResponse {
|
|
17
17
|
readonly errors: ReadonlyArray<{
|
|
18
18
|
code: string;
|
|
19
19
|
message: string;
|
|
@@ -41,4 +41,3 @@ export declare function devCatch(e: unknown): void;
|
|
|
41
41
|
export declare function hasQuery(customFilter: CustomFilter | undefined): customFilter is CustomFilter & Required<Pick<CustomFilter, 'query'>>;
|
|
42
42
|
export declare function isDateTuple(value: unknown): value is [Date | null, Date | null];
|
|
43
43
|
export declare function isNumberTuple(value: unknown): value is [number | null, number | null];
|
|
44
|
-
export {};
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
<svelte:options runes />
|
|
2
2
|
|
|
3
|
-
<script lang="ts">
|
|
3
|
+
<script lang="ts" generics="FilterValueType">
|
|
4
4
|
import DesktopModal from '../../Components/DesktopModal.svelte';
|
|
5
5
|
import Switch from '../../Components/Switch.svelte';
|
|
6
6
|
import type { DisplayDefModalProps } from '../../Components/Table/Types/Columns/Definitions/Display/AbstractDisplayDef.svelte.js';
|
|
7
7
|
import type { ExampleItem } from './ExampleItem.js';
|
|
8
8
|
|
|
9
|
-
const { cell, onclose, onsubmit }: DisplayDefModalProps<ExampleItem> = $props();
|
|
9
|
+
const { cell, onclose, onsubmit }: DisplayDefModalProps<ExampleItem, FilterValueType> = $props();
|
|
10
10
|
</script>
|
|
11
11
|
|
|
12
12
|
<DesktopModal
|
|
@@ -1,5 +1,26 @@
|
|
|
1
1
|
import type { DisplayDefModalProps } from '../../Components/Table/Types/Columns/Definitions/Display/AbstractDisplayDef.svelte.js';
|
|
2
2
|
import type { ExampleItem } from './ExampleItem.js';
|
|
3
|
-
declare
|
|
4
|
-
|
|
3
|
+
declare function $$render<FilterValueType>(): {
|
|
4
|
+
props: DisplayDefModalProps<ExampleItem, FilterValueType>;
|
|
5
|
+
exports: {};
|
|
6
|
+
bindings: "";
|
|
7
|
+
slots: {};
|
|
8
|
+
events: {};
|
|
9
|
+
};
|
|
10
|
+
declare class __sveltets_Render<FilterValueType> {
|
|
11
|
+
props(): ReturnType<typeof $$render<FilterValueType>>['props'];
|
|
12
|
+
events(): ReturnType<typeof $$render<FilterValueType>>['events'];
|
|
13
|
+
slots(): ReturnType<typeof $$render<FilterValueType>>['slots'];
|
|
14
|
+
bindings(): "";
|
|
15
|
+
exports(): {};
|
|
16
|
+
}
|
|
17
|
+
interface $$IsomorphicComponent {
|
|
18
|
+
new <FilterValueType>(options: import('svelte').ComponentConstructorOptions<ReturnType<__sveltets_Render<FilterValueType>['props']>>): import('svelte').SvelteComponent<ReturnType<__sveltets_Render<FilterValueType>['props']>, ReturnType<__sveltets_Render<FilterValueType>['events']>, ReturnType<__sveltets_Render<FilterValueType>['slots']>> & {
|
|
19
|
+
$$bindings?: ReturnType<__sveltets_Render<FilterValueType>['bindings']>;
|
|
20
|
+
} & ReturnType<__sveltets_Render<FilterValueType>['exports']>;
|
|
21
|
+
<FilterValueType>(internal: unknown, props: ReturnType<__sveltets_Render<FilterValueType>['props']> & {}): ReturnType<__sveltets_Render<FilterValueType>['exports']>;
|
|
22
|
+
z_$$bindings?: ReturnType<__sveltets_Render<any>['bindings']>;
|
|
23
|
+
}
|
|
24
|
+
declare const ExampleModal: $$IsomorphicComponent;
|
|
25
|
+
type ExampleModal<FilterValueType> = InstanceType<typeof ExampleModal<FilterValueType>>;
|
|
5
26
|
export default ExampleModal;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { IconProps } from '../../Components/IconProps.js';
|
|
2
2
|
import type { Snippet } from 'svelte';
|
|
3
|
-
export interface TabOption<Args
|
|
3
|
+
export interface TabOption<Args> {
|
|
4
4
|
label: string;
|
|
5
5
|
content: Snippet<[Args]>;
|
|
6
6
|
onclick: () => void;
|
package/dist/index.d.ts
CHANGED
|
@@ -75,7 +75,7 @@ export { default as Switch } from './Components/Switch.svelte';
|
|
|
75
75
|
export { type ITable } from './Components/Table/Types/Context/ITable.js';
|
|
76
76
|
export { type RowModel } from './Components/Table/Types/Context/RowModel.js';
|
|
77
77
|
export { isSearchable, TableContext } from './Components/Table/Types/Context/TableContext.svelte.js';
|
|
78
|
-
export { type TableInitOptions } from './Components/Table/Types/Context/TableInitOptions.js';
|
|
78
|
+
export { type Primitive, type TableInitOptions } from './Components/Table/Types/Context/TableInitOptions.js';
|
|
79
79
|
export { type TableSettings } from './Components/Table/Types/Context/TableSettings.js';
|
|
80
80
|
export { type CellCoordinates } from './Components/Table/Types/Coordinates/CellCoordinates.js';
|
|
81
81
|
export { type CellCoordinatesWithoutColumn } from './Components/Table/Types/Coordinates/CellCoordinatesWithoutColumn.js';
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lavalogic/scoria",
|
|
3
3
|
"description": "Svelte components used for the FloWMS Web Frontend",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.13.1",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "restricted"
|
|
7
7
|
},
|
|
@@ -29,42 +29,42 @@
|
|
|
29
29
|
"svelte": "^5.0.0"
|
|
30
30
|
},
|
|
31
31
|
"devDependencies": {
|
|
32
|
-
"@chromatic-com/storybook": "^
|
|
32
|
+
"@chromatic-com/storybook": "^5.0.1",
|
|
33
33
|
"@eslint/compat": "^2.0.2",
|
|
34
|
-
"@eslint/js": "^
|
|
34
|
+
"@eslint/js": "^10.0.1",
|
|
35
35
|
"@playwright/test": "^1.58.2",
|
|
36
|
-
"@storybook/addon-a11y": "^10.2.
|
|
37
|
-
"@storybook/addon-docs": "^10.2.
|
|
36
|
+
"@storybook/addon-a11y": "^10.2.11",
|
|
37
|
+
"@storybook/addon-docs": "^10.2.11",
|
|
38
38
|
"@storybook/addon-svelte-csf": "^5.0.11",
|
|
39
|
-
"@storybook/addon-vitest": "^10.2.
|
|
40
|
-
"@storybook/sveltekit": "^10.2.
|
|
39
|
+
"@storybook/addon-vitest": "^10.2.11",
|
|
40
|
+
"@storybook/sveltekit": "^10.2.11",
|
|
41
41
|
"@sveltejs/adapter-node": "^5.5.3",
|
|
42
|
-
"@sveltejs/kit": "^2.
|
|
42
|
+
"@sveltejs/kit": "^2.53.0",
|
|
43
43
|
"@sveltejs/package": "^2.5.7",
|
|
44
44
|
"@sveltejs/vite-plugin-svelte": "^6.2.4",
|
|
45
45
|
"@types/eslint": "^9.6.1",
|
|
46
|
-
"@types/node": "^25.
|
|
47
|
-
"@typescript-eslint/eslint-plugin": "^8.56.
|
|
48
|
-
"@typescript-eslint/parser": "^8.56.
|
|
46
|
+
"@types/node": "^25.3.0",
|
|
47
|
+
"@typescript-eslint/eslint-plugin": "^8.56.1",
|
|
48
|
+
"@typescript-eslint/parser": "^8.56.1",
|
|
49
49
|
"@vitest/browser": "^4.0.18",
|
|
50
50
|
"@vitest/browser-playwright": "^4.0.18",
|
|
51
|
-
"eslint": "^
|
|
51
|
+
"eslint": "^10.0.2",
|
|
52
52
|
"eslint-config-prettier": "^10.1.8",
|
|
53
|
-
"eslint-plugin-storybook": "^10.2.
|
|
53
|
+
"eslint-plugin-storybook": "^10.2.11",
|
|
54
54
|
"eslint-plugin-svelte": "^3.15.0",
|
|
55
55
|
"globals": "^17.3.0",
|
|
56
56
|
"mdsvex": "^0.12.6",
|
|
57
57
|
"playwright": "^1.58.2",
|
|
58
58
|
"prettier": "^3.8.1",
|
|
59
|
-
"prettier-plugin-svelte": "^3.
|
|
59
|
+
"prettier-plugin-svelte": "^3.5.0",
|
|
60
60
|
"publint": "^0.3.17",
|
|
61
61
|
"sass-embedded": "^1.97.3",
|
|
62
|
-
"storybook": "^10.2.
|
|
63
|
-
"svelte": "^5.
|
|
64
|
-
"svelte-check": "^4.4.
|
|
62
|
+
"storybook": "^10.2.11",
|
|
63
|
+
"svelte": "^5.53.3",
|
|
64
|
+
"svelte-check": "^4.4.3",
|
|
65
65
|
"svelte-render-scan": "^1.1.0",
|
|
66
66
|
"typescript": "^5.9.3",
|
|
67
|
-
"typescript-eslint": "^8.56.
|
|
67
|
+
"typescript-eslint": "^8.56.1",
|
|
68
68
|
"vite": "^7.3.1",
|
|
69
69
|
"vite-plugin-devtools-json": "^1.0.0",
|
|
70
70
|
"vitest": "^4.0.18",
|