@xy-planning-network/trees 0.9.6 → 0.9.8-rc1
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/trees.es.js +1501 -1496
- package/dist/trees.umd.js +4 -4
- package/package.json +1 -1
- package/src/lib-components/forms/BaseInput.vue +4 -0
- package/src/lib-components/forms/Select.vue +11 -2
- package/src/lib-components/forms/TextArea.vue +1 -1
- package/src/lib-components/layout/DateFilter.vue +19 -30
- package/src/lib-components/lists/DetailList.vue +98 -42
- package/types/composables/index.d.ts +2 -1
- package/types/composables/list.d.ts +13 -0
- package/types/helpers/Slots.d.ts +2 -0
- package/types/lib-components/layout/DateFilter.vue.d.ts +5 -12
- package/types/lib-components/lists/DetailList.vue.d.ts +49 -17
- package/types/lib-components/lists/StaticTable.vue.d.ts +21 -0
- package/types/lib-components/lists/StaticTableActionSlot.vue.d.ts +27 -0
- package/types/lib-components/lists/Table.vue.d.ts +39 -0
- package/types/lib-components/navigation/ActionsDropdownCallback.vue.d.ts +18 -0
- package/types/lib-components/navigation/ActionsDropdownEmit.vue.d.ts +22 -0
- package/types/lib-components/overlays/AlertModal.vue.d.ts +68 -0
package/package.json
CHANGED
|
@@ -26,8 +26,17 @@ const {
|
|
|
26
26
|
} = useInputField(props)
|
|
27
27
|
|
|
28
28
|
const onChange = (e: Event) => {
|
|
29
|
-
|
|
30
|
-
|
|
29
|
+
// NOTE(spk): The selectedIndex references the list of options in tree order
|
|
30
|
+
// https://html.spec.whatwg.org/multipage/form-elements.html#dom-select-selectedindex
|
|
31
|
+
const selectedIndex = (e.target as HTMLSelectElement).selectedIndex
|
|
32
|
+
|
|
33
|
+
// NOTE(spk): we disable the 0 index option in the list, so there's
|
|
34
|
+
// no expectation it will trigger a change event. Likewise, dynamic updates to
|
|
35
|
+
// a modelValue prop in a parent do not trigger the change event.
|
|
36
|
+
if (selectedIndex > 0) {
|
|
37
|
+
modelState.value = props.options[selectedIndex - 1].value
|
|
38
|
+
validate(e)
|
|
39
|
+
}
|
|
31
40
|
}
|
|
32
41
|
</script>
|
|
33
42
|
|
|
@@ -1,27 +1,27 @@
|
|
|
1
1
|
<script setup lang="ts">
|
|
2
|
-
import { DateRange } from "@/composables/date"
|
|
3
2
|
import { ref } from "vue"
|
|
3
|
+
import { DateRange } from "@/composables/date"
|
|
4
|
+
import { SortDir } from "@/composables/list"
|
|
4
5
|
import DateRangePicker from "../forms/DateRangePicker.vue"
|
|
5
6
|
import Select from "@/lib-components/forms/Select.vue"
|
|
6
7
|
|
|
7
8
|
const props = defineProps<{
|
|
8
9
|
dateRange: DateRange
|
|
9
|
-
sortDir:
|
|
10
|
-
title: string
|
|
10
|
+
sortDir: SortDir
|
|
11
11
|
}>()
|
|
12
12
|
const dateRange = ref<DateRange>(props.dateRange)
|
|
13
|
-
const sortDir = ref<
|
|
14
|
-
const sortOptions = [
|
|
15
|
-
{ label: "Newest-Oldest", value: "
|
|
16
|
-
{ label: "Oldest-Newest", value: "
|
|
13
|
+
const sortDir = ref<SortDir>(props.sortDir)
|
|
14
|
+
const sortOptions: { label: string; value: SortDir }[] = [
|
|
15
|
+
{ label: "Newest-Oldest", value: "desc" },
|
|
16
|
+
{ label: "Oldest-Newest", value: "asc" },
|
|
17
17
|
]
|
|
18
18
|
|
|
19
19
|
const emits = defineEmits<{
|
|
20
|
-
(e: "sort-dir-changed", val:
|
|
20
|
+
(e: "sort-dir-changed", val: SortDir): void
|
|
21
21
|
(e: "date-range-changed", val: DateRange): void
|
|
22
22
|
}>()
|
|
23
23
|
|
|
24
|
-
const sortDirChanged = (sortDir:
|
|
24
|
+
const sortDirChanged = (sortDir: SortDir) => {
|
|
25
25
|
emits("sort-dir-changed", sortDir)
|
|
26
26
|
}
|
|
27
27
|
|
|
@@ -30,25 +30,14 @@ const dateRangeChanged = (dateRange: DateRange) => {
|
|
|
30
30
|
}
|
|
31
31
|
</script>
|
|
32
32
|
<template>
|
|
33
|
-
<
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
v-model="sortDir"
|
|
44
|
-
:options="sortOptions"
|
|
45
|
-
@update:model-value="sortDirChanged"
|
|
46
|
-
></Select>
|
|
47
|
-
<DateRangePicker
|
|
48
|
-
v-model="dateRange"
|
|
49
|
-
class="ml-3"
|
|
50
|
-
@update:model-value="dateRangeChanged"
|
|
51
|
-
/>
|
|
52
|
-
</div>
|
|
53
|
-
</div>
|
|
33
|
+
<Select
|
|
34
|
+
v-model="sortDir"
|
|
35
|
+
:options="sortOptions"
|
|
36
|
+
@update:model-value="sortDirChanged"
|
|
37
|
+
></Select>
|
|
38
|
+
<DateRangePicker
|
|
39
|
+
v-model="dateRange"
|
|
40
|
+
class="ml-3"
|
|
41
|
+
@update:model-value="dateRangeChanged"
|
|
42
|
+
/>
|
|
54
43
|
</template>
|
|
@@ -1,20 +1,58 @@
|
|
|
1
1
|
<script setup lang="ts">
|
|
2
|
+
import { computed, ref, watch } from "vue"
|
|
2
3
|
import { useAppFlasher } from "@/composables"
|
|
3
|
-
import {
|
|
4
|
+
import { SortDir, DetailListAPI } from "@/composables/list"
|
|
4
5
|
import BaseAPI from "../../api/base"
|
|
5
6
|
import DateFilter from "../layout/DateFilter.vue"
|
|
6
7
|
import Paginator from "../navigation/Paginator.vue"
|
|
7
8
|
|
|
8
9
|
const props = withDefaults(
|
|
9
10
|
defineProps<{
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
11
|
+
/**
|
|
12
|
+
* borderless removes the default border styling applied around list items.
|
|
13
|
+
* This is useful when filters or pagination navigation components show,
|
|
14
|
+
* but less helpful when this component is dialed back in functionality.
|
|
15
|
+
*/
|
|
16
|
+
borderless?: boolean
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* defaultSort overrides the default field to sort items on.
|
|
20
|
+
*/
|
|
21
|
+
defaultSort?: string
|
|
22
|
+
|
|
23
|
+
/**
|
|
24
|
+
* defaultSortDir overrides the default order to sort items with.
|
|
25
|
+
*/
|
|
26
|
+
defaultSortDir?: SortDir
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* disableDate turns off the date-range filter input.
|
|
30
|
+
*/
|
|
31
|
+
disableDate?: boolean
|
|
32
|
+
|
|
33
|
+
/**
|
|
34
|
+
* disableNavigation hides navigation components from displaying.
|
|
35
|
+
* This makes the List as a "single-page" limiting the number of results via perPage.
|
|
36
|
+
*/
|
|
37
|
+
disableNavigation?: boolean
|
|
38
|
+
|
|
39
|
+
/**
|
|
40
|
+
* perPage overrides the default number of items per page to retrieve.
|
|
41
|
+
*/
|
|
42
|
+
perPage?: number
|
|
43
|
+
|
|
44
|
+
/**
|
|
45
|
+
* url is the endpoint to retrieve list data from
|
|
46
|
+
*/
|
|
13
47
|
url: string
|
|
14
48
|
}>(),
|
|
15
49
|
{
|
|
16
|
-
|
|
17
|
-
|
|
50
|
+
borderless: false,
|
|
51
|
+
disableNavigation: false,
|
|
52
|
+
disableDate: false,
|
|
53
|
+
defaultSort: "created_at",
|
|
54
|
+
defaultSortDir: "desc",
|
|
55
|
+
perPage: 10,
|
|
18
56
|
}
|
|
19
57
|
)
|
|
20
58
|
|
|
@@ -22,24 +60,31 @@ const dateRange = ref<{ minDate: number; maxDate: number }>({
|
|
|
22
60
|
minDate: 0,
|
|
23
61
|
maxDate: 0,
|
|
24
62
|
})
|
|
25
|
-
|
|
63
|
+
|
|
26
64
|
const items = ref<any[]>([])
|
|
65
|
+
|
|
27
66
|
const pagination = ref({
|
|
28
67
|
page: 1,
|
|
29
|
-
perPage:
|
|
68
|
+
perPage: props.perPage,
|
|
30
69
|
totalItems: 0,
|
|
31
70
|
totalPages: 0,
|
|
32
71
|
})
|
|
33
|
-
const sortDir = ref("DESC")
|
|
34
72
|
|
|
35
|
-
const
|
|
36
|
-
|
|
73
|
+
const sort = ref(props.defaultSort)
|
|
74
|
+
const sortDir = ref(props.defaultSortDir)
|
|
75
|
+
|
|
76
|
+
const loadAndRender = (): void => {
|
|
77
|
+
const params: Record<string, unknown> = {
|
|
78
|
+
maxDate: dateRange.value.maxDate,
|
|
79
|
+
minDate: dateRange.value.minDate,
|
|
37
80
|
page: pagination.value.page,
|
|
38
81
|
perPage: pagination.value.perPage,
|
|
82
|
+
q: "",
|
|
83
|
+
sort: sort.value,
|
|
39
84
|
sortDir: sortDir.value,
|
|
40
85
|
}
|
|
41
86
|
|
|
42
|
-
BaseAPI.get(props.url, {},
|
|
87
|
+
BaseAPI.get(props.url, {}, params).then(
|
|
43
88
|
(success: any) => {
|
|
44
89
|
pagination.value = {
|
|
45
90
|
page: success.data.page,
|
|
@@ -48,7 +93,6 @@ const loadAndRender = (checkForContent: boolean): void => {
|
|
|
48
93
|
totalPages: success.data.totalPages,
|
|
49
94
|
}
|
|
50
95
|
items.value = success.data.items
|
|
51
|
-
if (checkForContent) hasContent.value = items.value.length != 0
|
|
52
96
|
},
|
|
53
97
|
() => {
|
|
54
98
|
useAppFlasher.genericError()
|
|
@@ -56,39 +100,51 @@ const loadAndRender = (checkForContent: boolean): void => {
|
|
|
56
100
|
)
|
|
57
101
|
}
|
|
58
102
|
|
|
59
|
-
|
|
60
|
-
|
|
103
|
+
const hasContent = computed((): boolean => {
|
|
104
|
+
return items.value.length ? true : false
|
|
61
105
|
})
|
|
62
106
|
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
loadAndRender(false)
|
|
67
|
-
}
|
|
68
|
-
)
|
|
107
|
+
const filtersAreConfigured = computed(() => {
|
|
108
|
+
return !props.disableDate
|
|
109
|
+
})
|
|
69
110
|
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
111
|
+
const showPaginator = computed(() => {
|
|
112
|
+
return !props.disableNavigation && hasContent
|
|
113
|
+
})
|
|
114
|
+
|
|
115
|
+
const reset = (): void => {
|
|
116
|
+
pagination.value.page = 1
|
|
117
|
+
loadAndRender()
|
|
118
|
+
}
|
|
78
119
|
|
|
79
|
-
|
|
120
|
+
const publicMethods: DetailListAPI = {
|
|
121
|
+
refresh: loadAndRender,
|
|
122
|
+
reset: reset,
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
watch([sortDir, dateRange], () => {
|
|
126
|
+
loadAndRender()
|
|
127
|
+
})
|
|
128
|
+
|
|
129
|
+
defineExpose(publicMethods)
|
|
130
|
+
loadAndRender()
|
|
80
131
|
</script>
|
|
81
132
|
<template>
|
|
82
|
-
<div>
|
|
83
|
-
<
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
133
|
+
<div :class="{ 'mt-4 space-y-2': filtersAreConfigured }">
|
|
134
|
+
<div v-if="!disableDate" class="flex">
|
|
135
|
+
<DateFilter
|
|
136
|
+
:date-range="dateRange"
|
|
137
|
+
:sort-dir="sortDir"
|
|
138
|
+
@sort-dir-changed="sortDir = $event"
|
|
139
|
+
@date-range-changed="dateRange = $event"
|
|
140
|
+
/>
|
|
141
|
+
</div>
|
|
90
142
|
|
|
91
|
-
<div
|
|
143
|
+
<div
|
|
144
|
+
v-if="hasContent"
|
|
145
|
+
class="overflow-hidden"
|
|
146
|
+
:class="{ 'shadow sm:rounded-md border': !borderless }"
|
|
147
|
+
>
|
|
92
148
|
<ul>
|
|
93
149
|
<li
|
|
94
150
|
v-for="(item, idx) in items"
|
|
@@ -100,12 +156,12 @@ loadAndRender(true)
|
|
|
100
156
|
</ul>
|
|
101
157
|
</div>
|
|
102
158
|
|
|
103
|
-
<slot v-else name="empty"
|
|
159
|
+
<slot v-else name="empty"> No items were found! </slot>
|
|
104
160
|
|
|
105
161
|
<Paginator
|
|
106
|
-
v-if="
|
|
162
|
+
v-if="showPaginator"
|
|
107
163
|
v-model="pagination"
|
|
108
|
-
@update:model-value="loadAndRender(
|
|
164
|
+
@update:model-value="loadAndRender()"
|
|
109
165
|
/>
|
|
110
166
|
</div>
|
|
111
167
|
</template>
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { default as useBaseAPI, useBaseAPIGet, useBaseAPIPatch, useBaseAPIPut, useBaseAPIPost, useBaseAPIDelete } from "./useBaseAPI";
|
|
2
2
|
import type { UseBaseAPIOptions, UseBaseAPI } from "./useBaseAPI";
|
|
3
3
|
import type { DynamicTableOptions, DynamicTableAPI, TableActionItem, TableColumn, TableActions, TableCellAlignment, TableRowData, TableColumns, TableRowsData } from "./table";
|
|
4
|
-
|
|
4
|
+
import type { DetailListAPI, SortDir } from "./list";
|
|
5
|
+
export type { UseBaseAPIOptions, UseBaseAPI, DetailListAPI, DynamicTableOptions, DynamicTableAPI, SortDir, TableActionItem, TableColumn, TableActions, TableCellAlignment, TableRowData, TableColumns, TableRowsData, };
|
|
5
6
|
export { useBaseAPI, useBaseAPIGet, useBaseAPIPatch, useBaseAPIPut, useBaseAPIPost, useBaseAPIDelete, };
|
|
6
7
|
import { useFlashes, useAppFlashes, useAppFlasher } from "./useFlashes";
|
|
7
8
|
import type { FlashMessage, FlashType, FlashStore, Flasher } from "./useFlashes";
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export interface DetailListAPI {
|
|
2
|
+
/**
|
|
3
|
+
* Force refresh the list data with the current api params state
|
|
4
|
+
* @returns void
|
|
5
|
+
*/
|
|
6
|
+
refresh: () => void;
|
|
7
|
+
/**
|
|
8
|
+
* Reset the list data back to page 1 and load
|
|
9
|
+
* @returns void
|
|
10
|
+
*/
|
|
11
|
+
reset: () => void;
|
|
12
|
+
}
|
|
13
|
+
export type SortDir = "asc" | "desc";
|
|
@@ -1,19 +1,16 @@
|
|
|
1
1
|
import { DateRange } from "../../composables/date";
|
|
2
|
+
import { SortDir } from "../../composables/list";
|
|
2
3
|
declare const _default: import("vue").DefineComponent<{
|
|
3
4
|
dateRange: {
|
|
4
5
|
type: import("vue").PropType<DateRange>;
|
|
5
6
|
required: true;
|
|
6
7
|
};
|
|
7
8
|
sortDir: {
|
|
8
|
-
type: import("vue").PropType<
|
|
9
|
-
required: true;
|
|
10
|
-
};
|
|
11
|
-
title: {
|
|
12
|
-
type: import("vue").PropType<string>;
|
|
9
|
+
type: import("vue").PropType<SortDir>;
|
|
13
10
|
required: true;
|
|
14
11
|
};
|
|
15
12
|
}, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
16
|
-
"sort-dir-changed": (val:
|
|
13
|
+
"sort-dir-changed": (val: SortDir) => void;
|
|
17
14
|
"date-range-changed": (val: DateRange) => void;
|
|
18
15
|
}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
19
16
|
dateRange: {
|
|
@@ -21,15 +18,11 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
21
18
|
required: true;
|
|
22
19
|
};
|
|
23
20
|
sortDir: {
|
|
24
|
-
type: import("vue").PropType<
|
|
25
|
-
required: true;
|
|
26
|
-
};
|
|
27
|
-
title: {
|
|
28
|
-
type: import("vue").PropType<string>;
|
|
21
|
+
type: import("vue").PropType<SortDir>;
|
|
29
22
|
required: true;
|
|
30
23
|
};
|
|
31
24
|
}>> & {
|
|
32
|
-
"onSort-dir-changed"?: ((val:
|
|
25
|
+
"onSort-dir-changed"?: ((val: SortDir) => any) | undefined;
|
|
33
26
|
"onDate-range-changed"?: ((val: DateRange) => any) | undefined;
|
|
34
27
|
}, {}, {}>;
|
|
35
28
|
export default _default;
|
|
@@ -1,40 +1,72 @@
|
|
|
1
|
+
import { SortDir } from "../../composables/list";
|
|
1
2
|
declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
|
|
2
|
-
|
|
3
|
+
url: {
|
|
3
4
|
type: import("vue").PropType<string>;
|
|
4
5
|
required: true;
|
|
5
6
|
};
|
|
6
|
-
|
|
7
|
+
borderless: {
|
|
8
|
+
type: import("vue").PropType<boolean>;
|
|
9
|
+
default: boolean;
|
|
10
|
+
};
|
|
11
|
+
defaultSort: {
|
|
7
12
|
type: import("vue").PropType<string>;
|
|
8
|
-
|
|
13
|
+
default: string;
|
|
9
14
|
};
|
|
10
|
-
|
|
11
|
-
type: import("vue").PropType<
|
|
12
|
-
default:
|
|
15
|
+
defaultSortDir: {
|
|
16
|
+
type: import("vue").PropType<SortDir>;
|
|
17
|
+
default: string;
|
|
18
|
+
};
|
|
19
|
+
disableDate: {
|
|
20
|
+
type: import("vue").PropType<boolean>;
|
|
21
|
+
default: boolean;
|
|
22
|
+
};
|
|
23
|
+
disableNavigation: {
|
|
24
|
+
type: import("vue").PropType<boolean>;
|
|
25
|
+
default: boolean;
|
|
13
26
|
};
|
|
14
|
-
|
|
27
|
+
perPage: {
|
|
15
28
|
type: import("vue").PropType<number>;
|
|
16
29
|
default: number;
|
|
17
30
|
};
|
|
18
|
-
}, {
|
|
19
|
-
|
|
31
|
+
}, {
|
|
32
|
+
refresh: () => void;
|
|
33
|
+
reset: () => void;
|
|
34
|
+
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
35
|
+
url: {
|
|
20
36
|
type: import("vue").PropType<string>;
|
|
21
37
|
required: true;
|
|
22
38
|
};
|
|
23
|
-
|
|
39
|
+
borderless: {
|
|
40
|
+
type: import("vue").PropType<boolean>;
|
|
41
|
+
default: boolean;
|
|
42
|
+
};
|
|
43
|
+
defaultSort: {
|
|
24
44
|
type: import("vue").PropType<string>;
|
|
25
|
-
|
|
45
|
+
default: string;
|
|
26
46
|
};
|
|
27
|
-
|
|
28
|
-
type: import("vue").PropType<
|
|
29
|
-
default:
|
|
47
|
+
defaultSortDir: {
|
|
48
|
+
type: import("vue").PropType<SortDir>;
|
|
49
|
+
default: string;
|
|
50
|
+
};
|
|
51
|
+
disableDate: {
|
|
52
|
+
type: import("vue").PropType<boolean>;
|
|
53
|
+
default: boolean;
|
|
54
|
+
};
|
|
55
|
+
disableNavigation: {
|
|
56
|
+
type: import("vue").PropType<boolean>;
|
|
57
|
+
default: boolean;
|
|
30
58
|
};
|
|
31
|
-
|
|
59
|
+
perPage: {
|
|
32
60
|
type: import("vue").PropType<number>;
|
|
33
61
|
default: number;
|
|
34
62
|
};
|
|
35
63
|
}>>, {
|
|
36
|
-
|
|
37
|
-
|
|
64
|
+
borderless: boolean;
|
|
65
|
+
defaultSort: string;
|
|
66
|
+
defaultSortDir: SortDir;
|
|
67
|
+
disableDate: boolean;
|
|
68
|
+
disableNavigation: boolean;
|
|
69
|
+
perPage: number;
|
|
38
70
|
}, {}>, {
|
|
39
71
|
default?(_: {
|
|
40
72
|
item: any;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { TableColumn, TableRow } from "../../composables/table";
|
|
2
|
+
declare const _default: import("vue").DefineComponent<__VLS_TypePropsToRuntimeProps<{
|
|
3
|
+
columns: TableColumn<TableRow>[];
|
|
4
|
+
rows: TableRow[];
|
|
5
|
+
}>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
|
|
6
|
+
columns?: unknown;
|
|
7
|
+
rows?: unknown;
|
|
8
|
+
} & {
|
|
9
|
+
columns: TableColumn<TableRow>[];
|
|
10
|
+
rows: TableRow[];
|
|
11
|
+
} & {}>, {}>;
|
|
12
|
+
export default _default;
|
|
13
|
+
type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
|
|
14
|
+
type __VLS_TypePropsToRuntimeProps<T> = {
|
|
15
|
+
[K in keyof T]-?: {} extends Pick<T, K> ? {
|
|
16
|
+
type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
|
|
17
|
+
} : {
|
|
18
|
+
type: import('vue').PropType<T[K]>;
|
|
19
|
+
required: true;
|
|
20
|
+
};
|
|
21
|
+
};
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import * as TableTypes from "../../composables/table";
|
|
2
|
+
declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__VLS_TypePropsToRuntimeProps<{
|
|
3
|
+
tableData: Omit<TableTypes.Static, "currentUser">;
|
|
4
|
+
}>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
|
|
5
|
+
tableData?: unknown;
|
|
6
|
+
} & {
|
|
7
|
+
tableData: Omit<TableTypes.Static, "currentUser">;
|
|
8
|
+
} & {}>, {}>, {
|
|
9
|
+
actions: (_: {
|
|
10
|
+
row: Record<string, unknown>;
|
|
11
|
+
}) => any;
|
|
12
|
+
}>;
|
|
13
|
+
export default _default;
|
|
14
|
+
type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
|
|
15
|
+
type __VLS_TypePropsToRuntimeProps<T> = {
|
|
16
|
+
[K in keyof T]-?: {} extends Pick<T, K> ? {
|
|
17
|
+
type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
|
|
18
|
+
} : {
|
|
19
|
+
type: import('vue').PropType<T[K]>;
|
|
20
|
+
required: true;
|
|
21
|
+
};
|
|
22
|
+
};
|
|
23
|
+
type __VLS_WithTemplateSlots<T, S> = T & {
|
|
24
|
+
new (): {
|
|
25
|
+
$slots: S;
|
|
26
|
+
};
|
|
27
|
+
};
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import * as TableTypes from "../../composables/table";
|
|
2
|
+
declare const _default: import("vue").DefineComponent<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<{
|
|
3
|
+
clickable?: boolean | undefined;
|
|
4
|
+
loader?: boolean | undefined;
|
|
5
|
+
tableData: TableTypes.Dynamic;
|
|
6
|
+
}>, {
|
|
7
|
+
clickable: boolean;
|
|
8
|
+
loader: boolean;
|
|
9
|
+
}>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
10
|
+
handleClick: (v: any) => void;
|
|
11
|
+
}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
|
|
12
|
+
tableData?: unknown;
|
|
13
|
+
clickable?: unknown;
|
|
14
|
+
loader?: unknown;
|
|
15
|
+
} & {
|
|
16
|
+
tableData: TableTypes.Dynamic;
|
|
17
|
+
clickable: boolean;
|
|
18
|
+
loader: boolean;
|
|
19
|
+
} & {}> & {
|
|
20
|
+
onHandleClick?: ((v: any) => any) | undefined;
|
|
21
|
+
}, {
|
|
22
|
+
clickable: boolean;
|
|
23
|
+
loader: boolean;
|
|
24
|
+
}>;
|
|
25
|
+
export default _default;
|
|
26
|
+
type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
|
|
27
|
+
type __VLS_TypePropsToRuntimeProps<T> = {
|
|
28
|
+
[K in keyof T]-?: {} extends Pick<T, K> ? {
|
|
29
|
+
type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
|
|
30
|
+
} : {
|
|
31
|
+
type: import('vue').PropType<T[K]>;
|
|
32
|
+
required: true;
|
|
33
|
+
};
|
|
34
|
+
};
|
|
35
|
+
type __VLS_WithDefaults<P, D> = {
|
|
36
|
+
[K in keyof Pick<P, keyof P>]: K extends keyof D ? P[K] & {
|
|
37
|
+
default: D[K];
|
|
38
|
+
} : P[K];
|
|
39
|
+
};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { ActionMenuItemCallback } from "../../composables/nav";
|
|
2
|
+
declare const _default: import("vue").DefineComponent<__VLS_TypePropsToRuntimeProps<{
|
|
3
|
+
items: ActionMenuItemCallback[];
|
|
4
|
+
}>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
|
|
5
|
+
items?: unknown;
|
|
6
|
+
} & {
|
|
7
|
+
items: ActionMenuItemCallback[];
|
|
8
|
+
} & {}>, {}>;
|
|
9
|
+
export default _default;
|
|
10
|
+
type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
|
|
11
|
+
type __VLS_TypePropsToRuntimeProps<T> = {
|
|
12
|
+
[K in keyof T]-?: {} extends Pick<T, K> ? {
|
|
13
|
+
type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
|
|
14
|
+
} : {
|
|
15
|
+
type: import('vue').PropType<T[K]>;
|
|
16
|
+
required: true;
|
|
17
|
+
};
|
|
18
|
+
};
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { ActionMenuEmit } from "../../composables/nav";
|
|
2
|
+
declare const _default: import("vue").DefineComponent<__VLS_TypePropsToRuntimeProps<{
|
|
3
|
+
items: ActionMenuEmit[];
|
|
4
|
+
}>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
5
|
+
click: (v: string) => void;
|
|
6
|
+
}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
|
|
7
|
+
items?: unknown;
|
|
8
|
+
} & {
|
|
9
|
+
items: ActionMenuEmit[];
|
|
10
|
+
} & {}> & {
|
|
11
|
+
onClick?: ((v: string) => any) | undefined;
|
|
12
|
+
}, {}>;
|
|
13
|
+
export default _default;
|
|
14
|
+
type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
|
|
15
|
+
type __VLS_TypePropsToRuntimeProps<T> = {
|
|
16
|
+
[K in keyof T]-?: {} extends Pick<T, K> ? {
|
|
17
|
+
type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
|
|
18
|
+
} : {
|
|
19
|
+
type: import('vue').PropType<T[K]>;
|
|
20
|
+
required: true;
|
|
21
|
+
};
|
|
22
|
+
};
|