@hostlink/nuxt-light 1.64.3 → 1.66.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (30) hide show
  1. package/dist/module.json +1 -1
  2. package/dist/module.mjs +5 -0
  3. package/dist/runtime/components/L/CustomField/Add.vue +6 -1
  4. package/dist/runtime/components/L/Database/create-table-dialog.vue +34 -26
  5. package/dist/runtime/components/L/DocumentViewer.d.vue.ts +50 -0
  6. package/dist/runtime/components/L/DocumentViewer.vue +154 -0
  7. package/dist/runtime/components/L/DocumentViewer.vue.d.ts +50 -0
  8. package/dist/runtime/components/L/DocumentViewerDialog.d.vue.ts +65 -0
  9. package/dist/runtime/components/L/DocumentViewerDialog.vue +67 -0
  10. package/dist/runtime/components/L/DocumentViewerDialog.vue.d.ts +65 -0
  11. package/dist/runtime/components/l-customizer.d.vue.ts +19 -3
  12. package/dist/runtime/components/l-customizer.vue.d.ts +19 -3
  13. package/dist/runtime/components/l-file-manager-labels.d.vue.ts +5 -1
  14. package/dist/runtime/components/l-file-manager-labels.vue.d.ts +5 -1
  15. package/dist/runtime/components/l-file-manager-preview.vue +23 -22
  16. package/dist/runtime/components/l-file-manager.vue +14 -26
  17. package/dist/runtime/components/l-form.vue +16 -10
  18. package/dist/runtime/components/l-repeater.d.vue.ts +1 -1
  19. package/dist/runtime/components/l-repeater.vue.d.ts +1 -1
  20. package/dist/runtime/composables/showDocumentDialog.d.ts +9 -0
  21. package/dist/runtime/composables/showDocumentDialog.js +15 -0
  22. package/dist/runtime/pages/CustomField/index.vue +5 -5
  23. package/dist/runtime/pages/System/database/table.vue +49 -62
  24. package/dist/runtime/pages/System/setting.vue +2 -2
  25. package/dist/runtime/pages/Translate/index.vue +178 -62
  26. package/dist/runtime/pages/User/createAccessToken.d.vue.ts +3 -0
  27. package/dist/runtime/pages/User/createAccessToken.vue +63 -0
  28. package/dist/runtime/pages/User/createAccessToken.vue.d.ts +3 -0
  29. package/dist/runtime/pages/User/profile.vue +1 -0
  30. package/package.json +4 -4
package/dist/module.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "light",
3
3
  "configKey": "light",
4
- "version": "1.64.3",
4
+ "version": "1.66.0",
5
5
  "builder": {
6
6
  "@nuxt/module-builder": "1.0.2",
7
7
  "unbuild": "3.6.1"
package/dist/module.mjs CHANGED
@@ -216,6 +216,11 @@ const routes = [
216
216
  path: "/User/profile",
217
217
  file: "runtime/pages/User/profile.vue"
218
218
  },
219
+ {
220
+ name: "User-createAccessToken",
221
+ path: "/User/createAccessToken",
222
+ file: "runtime/pages/User/createAccessToken.vue"
223
+ },
219
224
  {
220
225
  path: "/User/setting",
221
226
  file: "runtime/pages/User/setting.vue",
@@ -33,12 +33,17 @@ const onOKClick = async (value) => {
33
33
  });
34
34
  onDialogOK();
35
35
  } catch (e) {
36
+ $q.notify({
37
+ icon: "sym_o_warning",
38
+ message: e.message,
39
+ color: "negative"
40
+ });
36
41
  }
37
42
  };
38
43
  </script>
39
44
 
40
45
  <template>
41
- <q-dialog ref="dialogRef" full-width>
46
+ <q-dialog ref="dialogRef">
42
47
  <q-card class="q-dialog-plugin">
43
48
  <q-toolbar>
44
49
  <q-toolbar-title>Add Custom Field</q-toolbar-title>
@@ -20,36 +20,44 @@ const types = ["varchar", "int", "date", "time", "datetime", "timestamp", "text"
20
20
 
21
21
  <template>
22
22
  <q-dialog ref="dialogRef" full-width>
23
- <q-card class="q-dialog-plugin">
24
- <q-toolbar>
25
- <q-toolbar-title>Create Table</q-toolbar-title>
26
- <q-space />
27
- <q-btn dense flat icon="sym_o_close" v-close-popup />
28
- </q-toolbar>
29
- <form-kit type="l-form" :bordered="false" @submit="onOKClick" :value="{
30
- name: '',
31
- fields: [],
32
- }" :action="false" #default="{ value }">
23
+ <Suspense>
24
+ <template #default>
25
+ <q-card class="q-dialog-plugin">
26
+ <q-toolbar>
27
+ <q-toolbar-title>Create Table</q-toolbar-title>
28
+ <q-space />
29
+ <q-btn dense flat icon="sym_o_close" v-close-popup />
30
+ </q-toolbar>
31
+ <form-kit type="l-form" :bordered="false" @submit="onOKClick" :value="{
32
+ name: '',
33
+ fields: [],
34
+ }" :action="false" #default="{ value }">
33
35
 
34
- <form-kit type="l-input" name="name" label="Name" validation="required" />
36
+ <form-kit type="l-input" name="name" label="Name" validation="required" />
35
37
 
36
- <form-kit type="l-repeater" name="fields">
37
- <div class="row q-gutter-sm">
38
- <form-kit type="l-input" name="name" label="Name" validation="required" class="col" />
38
+ <form-kit type="l-repeater" name="fields">
39
+ <div class="row q-gutter-sm">
40
+ <form-kit type="l-input" name="name" label="Name" validation="required" class="col"
41
+ dense />
39
42
 
40
- <form-kit type="l-select" name="type" label="Type" :options="types" validation="required"
41
- class="col" />
42
- <form-kit type="l-input" name="length" label="Length" class="col" number />
43
- <form-kit type="l-input" name="default" label="Default" class="col" />
44
- </div>
43
+ <form-kit type="l-select" name="type" label="Type" :options="types"
44
+ validation="required" class="col" dense />
45
+ <form-kit type="l-input" name="length" label="Length" class="col" number dense />
46
+ <form-kit type="l-input" name="default" label="Default" class="col" dense />
47
+ <form-kit type="l-checkbox" name="nullable" label="Nullable" />
48
+ </div>
49
+ </form-kit>
45
50
 
46
- <div class="row">
47
- <form-kit type="l-checkbox" name="nullable" label="Nullable" />
48
- </div>
49
- </form-kit>
51
+ </form-kit>
50
52
 
51
- </form-kit>
52
-
53
- </q-card>
53
+ </q-card>
54
+ </template>
55
+ <template #fallback>
56
+ <div class="q-pa-lg flex flex-center">
57
+ <q-spinner-dots color="primary" size="40px" />
58
+ <div class="q-ml-sm">Loading...</div>
59
+ </div>
60
+ </template>
61
+ </Suspense>
54
62
  </q-dialog>
55
63
  </template>
@@ -0,0 +1,50 @@
1
+ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
2
+ url: {
3
+ type: StringConstructor;
4
+ required: true;
5
+ };
6
+ mimeType: {
7
+ type: StringConstructor;
8
+ default: string;
9
+ };
10
+ width: {
11
+ type: StringConstructor;
12
+ default: string;
13
+ };
14
+ height: {
15
+ type: StringConstructor;
16
+ default: string;
17
+ };
18
+ fit: {
19
+ type: () => "cover" | "contain" | "fill" | "none" | "scale-down";
20
+ default: string;
21
+ };
22
+ }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
23
+ url: {
24
+ type: StringConstructor;
25
+ required: true;
26
+ };
27
+ mimeType: {
28
+ type: StringConstructor;
29
+ default: string;
30
+ };
31
+ width: {
32
+ type: StringConstructor;
33
+ default: string;
34
+ };
35
+ height: {
36
+ type: StringConstructor;
37
+ default: string;
38
+ };
39
+ fit: {
40
+ type: () => "cover" | "contain" | "fill" | "none" | "scale-down";
41
+ default: string;
42
+ };
43
+ }>> & Readonly<{}>, {
44
+ width: string;
45
+ height: string;
46
+ mimeType: string;
47
+ fit: "fill" | "none" | "contain" | "cover" | "scale-down";
48
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
49
+ declare const _default: typeof __VLS_export;
50
+ export default _default;
@@ -0,0 +1,154 @@
1
+ <script setup>
2
+ import { ref, computed, watch } from "vue";
3
+ const props = defineProps({
4
+ url: {
5
+ type: String,
6
+ required: true
7
+ },
8
+ mimeType: {
9
+ type: String,
10
+ default: ""
11
+ },
12
+ // 圖片/視頻的寬高
13
+ width: {
14
+ type: String,
15
+ default: "100%"
16
+ },
17
+ height: {
18
+ type: String,
19
+ default: "500px"
20
+ },
21
+ // 圖片的 fit 模式
22
+ fit: {
23
+ type: String,
24
+ default: "contain"
25
+ }
26
+ });
27
+ const textContent = ref("");
28
+ const isLoading = ref(false);
29
+ const error = ref(null);
30
+ const fileType = computed(() => {
31
+ const mime = props.mimeType.toLowerCase();
32
+ if (mime.startsWith("image/")) return "image";
33
+ if (mime.startsWith("video/")) return "video";
34
+ if (mime.startsWith("audio/")) return "audio";
35
+ if (mime === "application/pdf") return "pdf";
36
+ if (mime.startsWith("text/") || mime === "application/json") return "text";
37
+ if (mime.includes("word") || mime.includes("spreadsheet") || mime.includes("presentation") || mime.includes("excel") || mime.includes("powerpoint") || mime.includes("msword") || mime.includes("officedocument")) {
38
+ return "office";
39
+ }
40
+ return "unknown";
41
+ });
42
+ const officeViewerUrl = computed(() => {
43
+ if (fileType.value === "office") {
44
+ return `https://view.officeapps.live.com/op/embed.aspx?src=${encodeURIComponent(props.url)}`;
45
+ }
46
+ return "";
47
+ });
48
+ const loadTextContent = async () => {
49
+ if (fileType.value !== "text") return;
50
+ isLoading.value = true;
51
+ error.value = null;
52
+ try {
53
+ const response = await fetch(props.url);
54
+ if (!response.ok) throw new Error("\u7121\u6CD5\u8F09\u5165\u6587\u4EF6");
55
+ textContent.value = await response.text();
56
+ } catch (e) {
57
+ error.value = e instanceof Error ? e.message : "\u8F09\u5165\u5931\u6557";
58
+ } finally {
59
+ isLoading.value = false;
60
+ }
61
+ };
62
+ watch(() => [props.url, fileType.value], () => {
63
+ if (fileType.value === "text") {
64
+ loadTextContent();
65
+ }
66
+ }, { immediate: true });
67
+ </script>
68
+
69
+ <template>
70
+ <div class="l-document-viewer">
71
+ <!-- 圖片預覽 -->
72
+ <q-img
73
+ v-if="fileType === 'image'"
74
+ :src="url"
75
+ :fit="fit"
76
+ :style="{ width, height }"
77
+ spinner-color="primary"
78
+ >
79
+ <template #error>
80
+ <div class="absolute-full flex flex-center bg-negative text-white">
81
+ 無法載入圖片
82
+ </div>
83
+ </template>
84
+ </q-img>
85
+
86
+ <!-- 視頻預覽 -->
87
+ <q-video
88
+ v-else-if="fileType === 'video'"
89
+ :src="url"
90
+ :style="{ width, height }"
91
+ />
92
+
93
+ <!-- 音頻預覽 -->
94
+ <audio
95
+ v-else-if="fileType === 'audio'"
96
+ :src="url"
97
+ controls
98
+ style="width: 100%"
99
+ >
100
+ 您的瀏覽器不支援音頻播放
101
+ </audio>
102
+
103
+ <!-- PDF 預覽 -->
104
+ <iframe
105
+ v-else-if="fileType === 'pdf'"
106
+ :src="url"
107
+ :style="{ width, height, border: 'none' }"
108
+ title="PDF Viewer"
109
+ />
110
+
111
+ <!-- 文字預覽 (txt, json 等) -->
112
+ <div v-else-if="fileType === 'text'" class="text-viewer" :style="{ height }">
113
+ <q-spinner v-if="isLoading" color="primary" size="3em" />
114
+ <q-banner v-else-if="error" class="bg-negative text-white">
115
+ {{ error }}
116
+ </q-banner>
117
+ <pre v-else class="text-content">{{ textContent }}</pre>
118
+ </div>
119
+
120
+ <!-- Office 文件預覽 -->
121
+ <iframe
122
+ v-else-if="fileType === 'office'"
123
+ :src="officeViewerUrl"
124
+ :style="{ width, height, border: 'none' }"
125
+ title="Office Viewer"
126
+ />
127
+
128
+ <!-- 不支援的類型 -->
129
+ <div v-else class="unsupported flex flex-center" :style="{ height }">
130
+ <div class="text-center">
131
+ <q-icon name="sym_r_description" size="64px" color="grey-5" />
132
+ <div class="text-grey-7 q-mt-md">
133
+ 不支援預覽此文件類型
134
+ </div>
135
+ <div class="text-caption text-grey-5">
136
+ {{ mimeType || "\u672A\u77E5\u985E\u578B" }}
137
+ </div>
138
+ <q-btn
139
+ class="q-mt-md"
140
+ color="primary"
141
+ icon="sym_r_download"
142
+ label="下載文件"
143
+ :href="url"
144
+ target="_blank"
145
+ outline
146
+ />
147
+ </div>
148
+ </div>
149
+ </div>
150
+ </template>
151
+
152
+ <style scoped>
153
+ .l-document-viewer{width:100%}.text-viewer{background:#f5f5f5;border-radius:4px;overflow:auto;padding:16px}.text-content{margin:0;white-space:pre-wrap;word-wrap:break-word;font-family:Consolas,Monaco,monospace;font-size:14px;line-height:1.5}.unsupported{background:#fafafa;border:1px dashed #e0e0e0;border-radius:8px}
154
+ </style>
@@ -0,0 +1,50 @@
1
+ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
2
+ url: {
3
+ type: StringConstructor;
4
+ required: true;
5
+ };
6
+ mimeType: {
7
+ type: StringConstructor;
8
+ default: string;
9
+ };
10
+ width: {
11
+ type: StringConstructor;
12
+ default: string;
13
+ };
14
+ height: {
15
+ type: StringConstructor;
16
+ default: string;
17
+ };
18
+ fit: {
19
+ type: () => "cover" | "contain" | "fill" | "none" | "scale-down";
20
+ default: string;
21
+ };
22
+ }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
23
+ url: {
24
+ type: StringConstructor;
25
+ required: true;
26
+ };
27
+ mimeType: {
28
+ type: StringConstructor;
29
+ default: string;
30
+ };
31
+ width: {
32
+ type: StringConstructor;
33
+ default: string;
34
+ };
35
+ height: {
36
+ type: StringConstructor;
37
+ default: string;
38
+ };
39
+ fit: {
40
+ type: () => "cover" | "contain" | "fill" | "none" | "scale-down";
41
+ default: string;
42
+ };
43
+ }>> & Readonly<{}>, {
44
+ width: string;
45
+ height: string;
46
+ mimeType: string;
47
+ fit: "fill" | "none" | "contain" | "cover" | "scale-down";
48
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
49
+ declare const _default: typeof __VLS_export;
50
+ export default _default;
@@ -0,0 +1,65 @@
1
+ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
2
+ url: {
3
+ type: StringConstructor;
4
+ required: true;
5
+ };
6
+ mimeType: {
7
+ type: StringConstructor;
8
+ default: string;
9
+ };
10
+ title: {
11
+ type: StringConstructor;
12
+ default: string;
13
+ };
14
+ width: {
15
+ type: StringConstructor;
16
+ default: string;
17
+ };
18
+ height: {
19
+ type: StringConstructor;
20
+ default: string;
21
+ };
22
+ fit: {
23
+ type: () => "cover" | "contain" | "fill" | "none" | "scale-down";
24
+ default: string;
25
+ };
26
+ }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
27
+ hide: (...args: any[]) => void;
28
+ ok: (...args: any[]) => void;
29
+ }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
30
+ url: {
31
+ type: StringConstructor;
32
+ required: true;
33
+ };
34
+ mimeType: {
35
+ type: StringConstructor;
36
+ default: string;
37
+ };
38
+ title: {
39
+ type: StringConstructor;
40
+ default: string;
41
+ };
42
+ width: {
43
+ type: StringConstructor;
44
+ default: string;
45
+ };
46
+ height: {
47
+ type: StringConstructor;
48
+ default: string;
49
+ };
50
+ fit: {
51
+ type: () => "cover" | "contain" | "fill" | "none" | "scale-down";
52
+ default: string;
53
+ };
54
+ }>> & Readonly<{
55
+ onHide?: ((...args: any[]) => any) | undefined;
56
+ onOk?: ((...args: any[]) => any) | undefined;
57
+ }>, {
58
+ title: string;
59
+ width: string;
60
+ height: string;
61
+ mimeType: string;
62
+ fit: "fill" | "none" | "contain" | "cover" | "scale-down";
63
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
64
+ declare const _default: typeof __VLS_export;
65
+ export default _default;
@@ -0,0 +1,67 @@
1
+ <script setup>
2
+ import { useDialogPluginComponent } from "quasar";
3
+ const props = defineProps({
4
+ url: {
5
+ type: String,
6
+ required: true
7
+ },
8
+ mimeType: {
9
+ type: String,
10
+ default: ""
11
+ },
12
+ title: {
13
+ type: String,
14
+ default: ""
15
+ },
16
+ // 圖片/視頻的寬高
17
+ width: {
18
+ type: String,
19
+ default: "100%"
20
+ },
21
+ height: {
22
+ type: String,
23
+ default: "70vh"
24
+ },
25
+ // 圖片的 fit 模式
26
+ fit: {
27
+ type: String,
28
+ default: "contain"
29
+ }
30
+ });
31
+ defineEmits([
32
+ // REQUIRED; need to specify some events that your
33
+ // component will emit through useDialogPluginComponent()
34
+ ...useDialogPluginComponent.emits
35
+ ]);
36
+ const { dialogRef, onDialogHide, onDialogCancel } = useDialogPluginComponent();
37
+ </script>
38
+
39
+ <template>
40
+ <q-dialog ref="dialogRef" @hide="onDialogHide" full-width >
41
+ <q-card class="q-dialog-plugin" :bordered="false" square>
42
+ <q-toolbar class="bg-primary text-white">
43
+ <q-toolbar-title>{{ title || "\u6587\u4EF6\u9810\u89BD" }}</q-toolbar-title>
44
+ <q-space />
45
+ <q-btn
46
+ :href="url"
47
+ target="_blank"
48
+ dense
49
+ flat
50
+ icon="sym_o_download"
51
+ title="下載"
52
+ />
53
+ <q-btn dense flat icon="sym_o_close" v-close-popup />
54
+ </q-toolbar>
55
+
56
+ <q-card-section class="q-pa-md">
57
+ <LDocumentViewer
58
+ :url="url"
59
+ :mime-type="mimeType"
60
+ :width="width"
61
+ :height="height"
62
+ :fit="fit"
63
+ />
64
+ </q-card-section>
65
+ </q-card>
66
+ </q-dialog>
67
+ </template>
@@ -0,0 +1,65 @@
1
+ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
2
+ url: {
3
+ type: StringConstructor;
4
+ required: true;
5
+ };
6
+ mimeType: {
7
+ type: StringConstructor;
8
+ default: string;
9
+ };
10
+ title: {
11
+ type: StringConstructor;
12
+ default: string;
13
+ };
14
+ width: {
15
+ type: StringConstructor;
16
+ default: string;
17
+ };
18
+ height: {
19
+ type: StringConstructor;
20
+ default: string;
21
+ };
22
+ fit: {
23
+ type: () => "cover" | "contain" | "fill" | "none" | "scale-down";
24
+ default: string;
25
+ };
26
+ }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
27
+ hide: (...args: any[]) => void;
28
+ ok: (...args: any[]) => void;
29
+ }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
30
+ url: {
31
+ type: StringConstructor;
32
+ required: true;
33
+ };
34
+ mimeType: {
35
+ type: StringConstructor;
36
+ default: string;
37
+ };
38
+ title: {
39
+ type: StringConstructor;
40
+ default: string;
41
+ };
42
+ width: {
43
+ type: StringConstructor;
44
+ default: string;
45
+ };
46
+ height: {
47
+ type: StringConstructor;
48
+ default: string;
49
+ };
50
+ fit: {
51
+ type: () => "cover" | "contain" | "fill" | "none" | "scale-down";
52
+ default: string;
53
+ };
54
+ }>> & Readonly<{
55
+ onHide?: ((...args: any[]) => any) | undefined;
56
+ onOk?: ((...args: any[]) => any) | undefined;
57
+ }>, {
58
+ title: string;
59
+ width: string;
60
+ height: string;
61
+ mimeType: string;
62
+ fit: "fill" | "none" | "contain" | "cover" | "scale-down";
63
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
64
+ declare const _default: typeof __VLS_export;
65
+ export default _default;
@@ -32,7 +32,15 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
32
32
  menuWidth: {
33
33
  type: import("vue").PropType<number>;
34
34
  };
35
- }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
35
+ }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
36
+ "update:theme": (...args: any[]) => void;
37
+ "update:menuOverlayHeader": (...args: any[]) => void;
38
+ "update:dense": (...args: any[]) => void;
39
+ "update:color": (...args: any[]) => void;
40
+ "update:miniState": (...args: any[]) => void;
41
+ "update:footer": (...args: any[]) => void;
42
+ "update:menuWidth": (value: number) => void;
43
+ }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
36
44
  time: {
37
45
  type: StringConstructor;
38
46
  default: string;
@@ -64,12 +72,20 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
64
72
  menuWidth: {
65
73
  type: import("vue").PropType<number>;
66
74
  };
67
- }>> & Readonly<{}>, {
75
+ }>> & Readonly<{
76
+ "onUpdate:theme"?: ((...args: any[]) => any) | undefined;
77
+ "onUpdate:menuOverlayHeader"?: ((...args: any[]) => any) | undefined;
78
+ "onUpdate:dense"?: ((...args: any[]) => any) | undefined;
79
+ "onUpdate:color"?: ((...args: any[]) => any) | undefined;
80
+ "onUpdate:miniState"?: ((...args: any[]) => any) | undefined;
81
+ "onUpdate:footer"?: ((...args: any[]) => any) | undefined;
82
+ "onUpdate:menuWidth"?: ((value: number) => any) | undefined;
83
+ }>, {
68
84
  color: string;
69
85
  theme: string;
70
86
  footer: boolean;
71
87
  time: string;
72
88
  dense: boolean;
73
- miniState: boolean;
74
89
  menuOverlayHeader: boolean;
90
+ miniState: boolean;
75
91
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
@@ -32,7 +32,15 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
32
32
  menuWidth: {
33
33
  type: import("vue").PropType<number>;
34
34
  };
35
- }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
35
+ }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
36
+ "update:theme": (...args: any[]) => void;
37
+ "update:menuOverlayHeader": (...args: any[]) => void;
38
+ "update:dense": (...args: any[]) => void;
39
+ "update:color": (...args: any[]) => void;
40
+ "update:miniState": (...args: any[]) => void;
41
+ "update:footer": (...args: any[]) => void;
42
+ "update:menuWidth": (value: number) => void;
43
+ }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
36
44
  time: {
37
45
  type: StringConstructor;
38
46
  default: string;
@@ -64,12 +72,20 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
64
72
  menuWidth: {
65
73
  type: import("vue").PropType<number>;
66
74
  };
67
- }>> & Readonly<{}>, {
75
+ }>> & Readonly<{
76
+ "onUpdate:theme"?: ((...args: any[]) => any) | undefined;
77
+ "onUpdate:menuOverlayHeader"?: ((...args: any[]) => any) | undefined;
78
+ "onUpdate:dense"?: ((...args: any[]) => any) | undefined;
79
+ "onUpdate:color"?: ((...args: any[]) => any) | undefined;
80
+ "onUpdate:miniState"?: ((...args: any[]) => any) | undefined;
81
+ "onUpdate:footer"?: ((...args: any[]) => any) | undefined;
82
+ "onUpdate:menuWidth"?: ((value: number) => any) | undefined;
83
+ }>, {
68
84
  color: string;
69
85
  theme: string;
70
86
  footer: boolean;
71
87
  time: string;
72
88
  dense: boolean;
73
- miniState: boolean;
74
89
  menuOverlayHeader: boolean;
90
+ miniState: boolean;
75
91
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
@@ -1,6 +1,10 @@
1
1
  declare const _default: typeof __VLS_export;
2
2
  export default _default;
3
- declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_ModelProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
3
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
4
+ "update:modelValue": (...args: any[]) => void;
5
+ }, string, import("vue").PublicProps, Readonly<__VLS_ModelProps> & Readonly<{
6
+ "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
7
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
4
8
  type __VLS_ModelProps = {
5
9
  modelValue?: string | undefined;
6
10
  };