@dolanske/vui 1.15.4 → 1.15.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.
@@ -1,7 +1,7 @@
1
1
  import { ComputedRef, InjectionKey, MaybeRefOrGetter, Ref } from 'vue';
2
2
  import { DeepRequired } from '../../shared/types';
3
3
  export interface TableSelectionProvide<Row = any> {
4
- selectedRows: Ref<Set<Row>>;
4
+ selectedRows: Ref<Map<string | number, Row>>;
5
5
  selectRow: (row: Row) => void;
6
6
  selectAllRows: () => void;
7
7
  enabled: ComputedRef<boolean>;
@@ -13,21 +13,28 @@ export interface Header {
13
13
  sortToggle: () => void;
14
14
  sortKey?: 'asc' | 'desc';
15
15
  }
16
- interface TableOptionsInput {
16
+ interface TableOptionsInput<Dataset extends any[]> {
17
17
  pagination?: {
18
18
  enabled?: boolean;
19
19
  perPage?: number;
20
20
  maxPages?: number;
21
21
  };
22
- select?: boolean;
22
+ /**
23
+ * If setting is enabled, you _must_ provide an `id` property on your dataset
24
+ * objects, which is used for selection. The value of this property can be
25
+ * either a string or a number and has to be unique.
26
+ */
27
+ select?: Dataset[number] extends {
28
+ id: string | number;
29
+ } ? boolean : false;
23
30
  }
24
- export declare function defineTable<const Dataset extends any[]>(computedDataset: MaybeRefOrGetter<Dataset>, tableOptions?: TableOptionsInput): {
31
+ export declare function defineTable<const Dataset extends any[]>(computedDataset: MaybeRefOrGetter<Dataset>, tableOptions?: TableOptionsInput<Dataset>): {
25
32
  setSort: (key: keyof Dataset[number], type?: "asc" | "desc" | "toggle") => void;
26
33
  clearSort: () => void;
27
34
  search: Ref<string | undefined, string | undefined>;
28
35
  rows: ComputedRef<Dataset>;
29
36
  allRows: ComputedRef<Dataset>;
30
- selectedRows: Readonly<Ref<ReadonlySet<import('vue').DeepReadonly<import('@vue/reactivity').UnwrapRefSimple<Dataset[number]>>>, ReadonlySet<import('vue').DeepReadonly<import('@vue/reactivity').UnwrapRefSimple<Dataset[number]>>>>>;
37
+ selectedRows: ComputedRef<import('@vue/reactivity').UnwrapRefSimple<Dataset[number]>[]>;
31
38
  headers: ComputedRef<Header[]>;
32
39
  pagination: ComputedRef<import('../Pagination/pagination').Pagination>;
33
40
  canPrevPage: ComputedRef<boolean>;
@@ -39,14 +46,30 @@ export declare function defineTable<const Dataset extends any[]>(computedDataset
39
46
  perPage: number;
40
47
  maxPages: number;
41
48
  };
42
- select: boolean;
43
- }, DeepRequired<TableOptionsInput> | {
49
+ select: import('vue').UnwrapRef<undefined & (Dataset[number] extends {
50
+ id: string | number;
51
+ } ? boolean : false)> | import('vue').UnwrapRef<((Dataset[number] extends {
52
+ id: string | number;
53
+ } ? boolean : false) extends infer T ? { [K in keyof T]: DeepRequired<T[K]>; } : never) & Required<Dataset[number] extends {
54
+ id: string | number;
55
+ } ? boolean : false> & (Dataset[number] extends {
56
+ id: string | number;
57
+ } ? boolean : false)>;
58
+ }, DeepRequired<TableOptionsInput<Dataset>> | {
44
59
  pagination: {
45
60
  enabled: boolean;
46
61
  perPage: number;
47
62
  maxPages: number;
48
63
  };
49
- select: boolean;
64
+ select: import('vue').UnwrapRef<undefined & (Dataset[number] extends {
65
+ id: string | number;
66
+ } ? boolean : false)> | import('vue').UnwrapRef<((Dataset[number] extends {
67
+ id: string | number;
68
+ } ? boolean : false) extends infer T_1 ? { [K in keyof T_1]: DeepRequired<T_1[K]>; } : never) & Required<Dataset[number] extends {
69
+ id: string | number;
70
+ } ? boolean : false> & (Dataset[number] extends {
71
+ id: string | number;
72
+ } ? boolean : false)>;
50
73
  }>;
51
74
  selectRow: (row: Dataset[number]) => void;
52
75
  selectAllRows: () => void;
@@ -25,12 +25,4 @@ export declare function isCssValue(value: string): boolean;
25
25
  */
26
26
  export declare function formatUnitValue(value: string | number, unit?: string): string;
27
27
  export declare function clamp(min: number, max: number, value: number): number;
28
- /**
29
- * Checks wether an object is inside of Set, based on comparing values. Not reference
30
- *
31
- * @param set The Set
32
- * @param obj Object which should be in the side
33
- * @returns If object is inside the set
34
- */
35
- export declare function isObjectInSet(set: Set<any>, obj: any): boolean;
36
28
  export declare function getPlacementAnimationName(position: Placement): string;