@hostlink/nuxt-light 1.28.4 → 1.30.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 (35) hide show
  1. package/dist/module.json +1 -1
  2. package/dist/module.mjs +1 -1
  3. package/dist/runtime/components/L/Fieldset.vue.d.ts +1 -3
  4. package/dist/runtime/components/l-alert.vue.d.ts +1 -3
  5. package/dist/runtime/components/l-app-main.vue +2 -2
  6. package/dist/runtime/components/l-app.vue +1 -1
  7. package/dist/runtime/components/l-app.vue.d.ts +1 -3
  8. package/dist/runtime/components/l-drag-drop-group.vue.d.ts +1 -3
  9. package/dist/runtime/components/l-file-manager.vue +3 -1
  10. package/dist/runtime/components/l-form-dialog.vue.d.ts +1 -3
  11. package/dist/runtime/components/l-link.vue.d.ts +1 -3
  12. package/dist/runtime/components/l-login.vue +2 -6
  13. package/dist/runtime/components/l-table.vue.d.ts +2 -2
  14. package/dist/runtime/composables/GQLFieldBuilder.d.ts +1 -5
  15. package/dist/runtime/composables/GQLFieldBuilder.js +5 -12
  16. package/dist/runtime/formkit/Checkbox.vue.d.ts +1 -4
  17. package/dist/runtime/formkit/DatePicker.vue.d.ts +1 -4
  18. package/dist/runtime/formkit/Editor.vue.d.ts +1 -3
  19. package/dist/runtime/formkit/File.vue.d.ts +1 -4
  20. package/dist/runtime/formkit/FilePicker.vue.d.ts +1 -4
  21. package/dist/runtime/formkit/FileUpload.vue.d.ts +1 -4
  22. package/dist/runtime/formkit/GroupSelect.vue.d.ts +1 -4
  23. package/dist/runtime/formkit/InputXlsx.vue.d.ts +1 -3
  24. package/dist/runtime/formkit/Radio.vue.d.ts +1 -3
  25. package/dist/runtime/formkit/Repeater.vue.d.ts +1 -7
  26. package/dist/runtime/formkit/Select.vue.d.ts +1 -4
  27. package/dist/runtime/formkit/TimePicker.vue.d.ts +1 -4
  28. package/dist/runtime/pages/EventLog/index.vue +8 -1
  29. package/dist/runtime/pages/MailLog/index.vue +8 -1
  30. package/dist/runtime/pages/System/view_as.vue +0 -2
  31. package/dist/runtime/pages/User/index.vue +0 -1
  32. package/dist/runtime/pages/UserLog/index.vue +9 -1
  33. package/dist/runtime/plugin.d.ts +1 -0
  34. package/dist/runtime/plugin.js +3 -22
  35. package/package.json +3 -1
package/dist/module.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "light",
3
3
  "configKey": "light",
4
- "version": "1.28.4",
4
+ "version": "1.30.0",
5
5
  "builder": {
6
6
  "@nuxt/module-builder": "1.0.1",
7
7
  "unbuild": "3.5.0"
package/dist/module.mjs CHANGED
@@ -315,7 +315,7 @@ const module = defineNuxtModule({
315
315
  }
316
316
  }
317
317
  },
318
- plugins: ["Dialog", "Loading", "LoadingBar", "Notify"]
318
+ plugins: ["Dialog", "Loading", "LoadingBar", "Notify", "AppFullscreen"]
319
319
  });
320
320
  nuxt.options.imports = nuxt.options.imports || {};
321
321
  nuxt.options.imports.presets = nuxt.options.imports.presets || [];
@@ -11,6 +11,4 @@ declare const __VLS_component: import("vue").DefineComponent<{}, {
11
11
  readonly gutter?: string | undefined;
12
12
  };
13
13
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
14
- type __VLS_Slots = {
15
- default?: ((props: {}) => any) | undefined;
16
- };
14
+ type __VLS_Slots = any;
@@ -9,6 +9,4 @@ declare const __VLS_component: import("vue").DefineComponent<{}, {
9
9
  readonly type?: string | undefined;
10
10
  };
11
11
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
12
- type __VLS_Slots = {
13
- default?: ((props: {}) => any) | undefined;
14
- };
12
+ type __VLS_Slots = any;
@@ -289,11 +289,11 @@ const onLogout = async () => {
289
289
  <q-btn flat round dense icon="sym_o_person" class="q-mr-sm">
290
290
  <q-menu max-width="250px">
291
291
  <q-list>
292
- <q-item v-close-popup to="/User/profile">
292
+ <q-item v-close-popup to="/User/profile" >
293
293
  <q-item-section avatar>
294
294
  <q-icon name="sym_o_person" />
295
295
  </q-item-section>
296
- <q-item-section>{{ $t('Profile') }}</q-item-section>
296
+ <q-item-section >{{ $t('Profile') }}</q-item-section>
297
297
  </q-item>
298
298
 
299
299
  <q-item v-close-popup to="/User/setting">
@@ -1,6 +1,6 @@
1
1
  <script setup>
2
2
  import { ref } from "vue";
3
- import { reloadNuxtApp, useLight, watch } from "#imports";
3
+ import { useLight, watch } from "#imports";
4
4
  import { useQuasar } from "quasar";
5
5
  import { q } from "#imports";
6
6
  import { useRoute } from "vue-router";
@@ -4,6 +4,4 @@ type __VLS_WithSlots<T, S> = T & (new () => {
4
4
  $slots: S;
5
5
  });
6
6
  declare const __VLS_component: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
7
- type __VLS_Slots = {
8
- header?: ((props: {}) => any) | undefined;
9
- };
7
+ type __VLS_Slots = any;
@@ -9,6 +9,4 @@ declare const __VLS_component: import("vue").DefineComponent<{}, {
9
9
  getGroupName: () => symbol;
10
10
  findAllItems: () => any[];
11
11
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
12
- type __VLS_Slots = {
13
- default?: ((props: {}) => any) | undefined;
14
- };
12
+ type __VLS_Slots = any;
@@ -666,7 +666,9 @@ selectedNodePath.value = drives[0].index.toString();
666
666
  <q-table flat :columns="columns" :rows="items" @row-dblclick="onDblclickRow" @row-click="onClickRow"
667
667
  :pagination="pagination" row-key="path" selection="multiple" v-model:selected="selected" dense
668
668
  :loading="loading" :loading-label="$t('Loading...')" :no-data-label="$t('No data available')"
669
- :color="$light.color">
669
+ :color="$light.color"
670
+ separator="horizontal" :rows-per-page-options="[0]"
671
+ >
670
672
  <template #body-cell-icon="props">
671
673
  <q-td auto-width>
672
674
  <q-icon name="sym_o_folder" v-if="props.value == 'folder'" size="sm" />
@@ -20,6 +20,4 @@ declare const __VLS_component: import("vue").DefineComponent<{}, {
20
20
  readonly showNotification?: boolean | undefined;
21
21
  };
22
22
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
23
- type __VLS_Slots = {
24
- default?: ((props: any) => any) | undefined;
25
- };
23
+ type __VLS_Slots = any;
@@ -11,6 +11,4 @@ declare const __VLS_component: import("vue").DefineComponent<{}, {
11
11
  readonly to?: string | undefined;
12
12
  };
13
13
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
14
- type __VLS_Slots = {
15
- default?: ((props: {}) => any) | undefined;
16
- };
14
+ type __VLS_Slots = any;
@@ -158,13 +158,9 @@ const forgetPassword = async () => {
158
158
  });
159
159
  });
160
160
  };
161
- const hasBioLogin = ref(false);
162
- if (localStorage.getItem("username")) {
163
- hasBioLogin.value = true;
164
- }
165
161
  const bioLogin = async () => {
166
162
  try {
167
- await api.auth.WebAuthn.login(localStorage.getItem("username"));
163
+ await api.auth.WebAuthn.login();
168
164
  window.self.location.reload();
169
165
  } catch (e) {
170
166
  $q.notify({
@@ -275,9 +271,9 @@ const facebookLogin = (accessToken) => {
275
271
  </q-form>
276
272
  </q-card-section>
277
273
  <q-card-actions>
274
+ <l-btn outline rounded color="primary" icon="sym_o_fingerprint" @click="bioLogin" />
278
275
  <l-btn label="Login" outline rounded color="primary" icon="sym_o_login" @click="submit"
279
276
  v-if="passwordBasedEnabled" />
280
- <l-btn v-if="hasBioLogin" outline rounded color="primary" icon="sym_o_fingerprint" @click="bioLogin" />
281
277
  <l-btn label="Forget password" outline rounded color="primary" icon="sym_o_lock_reset" @click="forgetPassword"
282
278
  v-if="forgetPasswordEnabled" />
283
279
  </q-card-actions>
@@ -184,8 +184,8 @@ declare const __VLS_self: import("vue").DefineComponent<__VLS_PublicProps, {
184
184
  selection: "none" | "multiple" | "single";
185
185
  loadingLabel: string;
186
186
  noDataLabel: string;
187
- rowsPerPageLabel: string;
188
187
  rowsPerPageOptions: readonly any[];
188
+ rowsPerPageLabel: string;
189
189
  searchable: any;
190
190
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
191
191
  declare const __VLS_component: import("vue").DefineComponent<__VLS_PublicProps, {
@@ -222,8 +222,8 @@ declare const __VLS_component: import("vue").DefineComponent<__VLS_PublicProps,
222
222
  selection: "none" | "multiple" | "single";
223
223
  loadingLabel: string;
224
224
  noDataLabel: string;
225
- rowsPerPageLabel: string;
226
225
  rowsPerPageOptions: readonly any[];
226
+ rowsPerPageLabel: string;
227
227
  searchable: any;
228
228
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
229
229
  declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
@@ -1,5 +1 @@
1
- export default function (): {
2
- merge: (obj1: any, obj2: any) => any;
3
- add: (f: any) => void;
4
- get(): any;
5
- };
1
+ export default function (): any;
@@ -1,30 +1,23 @@
1
1
  import { toQuery } from "@hostlink/light";
2
+ import { defu } from "defu";
2
3
  export default function() {
3
- const merge = (obj1, obj2) => {
4
- for (let key in obj2) {
5
- if (obj2.hasOwnProperty(key)) {
6
- obj1[key] = obj1[key] && obj1[key].toString() === "[object Object]" ? merge(obj1[key], obj2[key]) : obj1[key] = obj2[key];
7
- }
8
- }
9
- return obj1;
10
- };
11
4
  let fields = {};
12
5
  return {
13
6
  //deep merge
14
- merge,
7
+ merge: defu,
15
8
  add: (f) => {
16
9
  if (typeof f === "string") {
17
- fields[f] = true;
10
+ fields = defu(fields, { [f]: true });
18
11
  return;
19
12
  }
20
13
  if (Array.isArray(f)) {
21
14
  f.forEach((item) => {
22
- fields[item] = true;
15
+ fields = defu(fields, { [item]: true });
23
16
  });
24
17
  return;
25
18
  }
26
19
  if (typeof f === "object") {
27
- fields = merge(fields, toQuery(f));
20
+ fields = defu(fields, toQuery(f));
28
21
  return;
29
22
  }
30
23
  },
@@ -9,7 +9,4 @@ declare const __VLS_component: import("vue").DefineComponent<{}, {
9
9
  readonly context?: Record<string, any> | undefined;
10
10
  };
11
11
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
12
- type __VLS_Slots = {
13
- [x: string]: ((props: any) => any) | undefined;
14
- [x: number]: ((props: any) => any) | undefined;
15
- };
12
+ type __VLS_Slots = any;
@@ -9,7 +9,4 @@ declare const __VLS_component: import("vue").DefineComponent<{}, {
9
9
  readonly context?: Record<string, any> | undefined;
10
10
  };
11
11
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
12
- type __VLS_Slots = {
13
- [x: string]: ((props: any) => any) | undefined;
14
- [x: number]: ((props: any) => any) | undefined;
15
- };
12
+ type __VLS_Slots = any;
@@ -9,6 +9,4 @@ declare const __VLS_component: import("vue").DefineComponent<{}, {
9
9
  readonly context?: Record<string, any> | undefined;
10
10
  };
11
11
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
12
- type __VLS_Slots = {
13
- default?: ((props: {}) => any) | undefined;
14
- };
12
+ type __VLS_Slots = any;
@@ -9,7 +9,4 @@ declare const __VLS_component: import("vue").DefineComponent<{}, {
9
9
  readonly context?: Record<string, any> | undefined;
10
10
  };
11
11
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
12
- type __VLS_Slots = {
13
- [x: string]: ((props: any) => any) | undefined;
14
- [x: number]: ((props: any) => any) | undefined;
15
- };
12
+ type __VLS_Slots = any;
@@ -9,7 +9,4 @@ declare const __VLS_component: import("vue").DefineComponent<{}, {
9
9
  readonly context?: Record<string, any> | undefined;
10
10
  };
11
11
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
12
- type __VLS_Slots = {
13
- [x: string]: ((props: any) => any) | undefined;
14
- [x: number]: ((props: any) => any) | undefined;
15
- };
12
+ type __VLS_Slots = any;
@@ -9,7 +9,4 @@ declare const __VLS_component: import("vue").DefineComponent<{}, {
9
9
  readonly context?: Record<string, any> | undefined;
10
10
  };
11
11
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
12
- type __VLS_Slots = {
13
- [x: string]: ((props: any) => any) | undefined;
14
- [x: number]: ((props: any) => any) | undefined;
15
- };
12
+ type __VLS_Slots = any;
@@ -9,7 +9,4 @@ declare const __VLS_component: import("vue").DefineComponent<{}, {
9
9
  readonly context?: Record<string, any> | undefined;
10
10
  };
11
11
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
12
- type __VLS_Slots = {
13
- [x: string]: ((props: any) => any) | undefined;
14
- [x: number]: ((props: any) => any) | undefined;
15
- };
12
+ type __VLS_Slots = any;
@@ -9,6 +9,4 @@ declare const __VLS_component: import("vue").DefineComponent<{}, {
9
9
  readonly context?: Record<string, any> | undefined;
10
10
  };
11
11
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
12
- type __VLS_Slots = {
13
- default?: ((props: {}) => any) | undefined;
14
- };
12
+ type __VLS_Slots = any;
@@ -9,6 +9,4 @@ declare const __VLS_component: import("vue").DefineComponent<{}, {
9
9
  readonly context?: Record<string, any> | undefined;
10
10
  };
11
11
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
12
- type __VLS_Slots = {
13
- default?: ((props: {}) => any) | undefined;
14
- };
12
+ type __VLS_Slots = any;
@@ -9,10 +9,4 @@ declare const __VLS_component: import("vue").DefineComponent<{}, {
9
9
  readonly context?: Record<string, any> | undefined;
10
10
  };
11
11
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
12
- type __VLS_Slots = {
13
- default?: ((props: {
14
- value: any;
15
- index: number;
16
- node: any;
17
- }) => any) | undefined;
18
- };
12
+ type __VLS_Slots = any;
@@ -9,7 +9,4 @@ declare const __VLS_component: import("vue").DefineComponent<{}, {
9
9
  readonly context?: Record<string, any> | undefined;
10
10
  };
11
11
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
12
- type __VLS_Slots = {
13
- [x: string]: ((props: any) => any) | undefined;
14
- [x: number]: ((props: any) => any) | undefined;
15
- };
12
+ type __VLS_Slots = any;
@@ -9,7 +9,4 @@ declare const __VLS_component: import("vue").DefineComponent<{}, {
9
9
  readonly context?: Record<string, any> | undefined;
10
10
  };
11
11
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
12
- type __VLS_Slots = {
13
- [x: string]: ((props: any) => any) | undefined;
14
- [x: number]: ((props: any) => any) | undefined;
15
- };
12
+ type __VLS_Slots = any;
@@ -1,6 +1,13 @@
1
1
  <script setup>
2
2
  import { model } from "#imports";
3
- const columns = model("EventLog").columns(["eventlog_id", "class", "id", "action", "created_time", "username"]);
3
+ const columns = model("EventLog").columns({
4
+ eventlog_id: true,
5
+ class: true,
6
+ id: true,
7
+ action: true,
8
+ created_time: true,
9
+ username: true
10
+ });
4
11
  </script>
5
12
 
6
13
  <template>
@@ -1,6 +1,13 @@
1
1
  <script setup>
2
2
  import { model } from "#imports";
3
- const columns = model("MailLog").columns(["maillog_id", "from", "to", "subject", "created_time"]);
3
+ const columns = model("MailLog").columns({
4
+ maillog_id: true,
5
+ from: true,
6
+ to: true,
7
+ subject: true,
8
+ created_time: true,
9
+ body: true
10
+ });
4
11
  </script>
5
12
 
6
13
  <template>
@@ -1,8 +1,6 @@
1
1
  <script setup>
2
2
  import { list, m, useLight } from "#imports";
3
- import { useRouter } from "vue-router";
4
3
  import { ref, computed } from "vue";
5
- import { useQuasar } from "quasar";
6
4
  const light = useLight();
7
5
  let { data: users } = await list("User", null, ["user_id", "username", "name", "roles", "email"]);
8
6
  let columns = [
@@ -23,7 +23,6 @@ const status = ref("0");
23
23
  <l-tabs v-model="status">
24
24
  <l-tab label="Active" name="0">
25
25
  <l-table ref="table" row-key="user_id" @request-data="onRequest" :columns="columns"
26
- :add-component="testDialog"
27
26
  :actions="['view', 'edit', 'delete']"></l-table>
28
27
  </l-tab>
29
28
  <l-tab label="Inactive" name="1">
@@ -1,6 +1,14 @@
1
1
  <script setup>
2
2
  import { model } from "#imports";
3
- const columns = model("UserLog").columns(["userlog_id", "username", "login_dt", "last_access_time", "logout_dt", "result", "user_agent"]);
3
+ const columns = model("UserLog").columns({
4
+ userlog_id: true,
5
+ username: true,
6
+ login_dt: true,
7
+ last_access_time: true,
8
+ logout_dt: true,
9
+ result: true,
10
+ user_agent: true
11
+ });
4
12
  </script>
5
13
 
6
14
  <template>
@@ -1,3 +1,4 @@
1
+ import '@quasar/quasar-ui-qmarkdown/dist/index.css';
1
2
  import "./assets/main.css.js";
2
3
  declare const _default: import("#app").Plugin<Record<string, unknown>> & import("#app").ObjectPlugin<Record<string, unknown>>;
3
4
  export default _default;
@@ -1,4 +1,5 @@
1
- import { Quasar, Dialog, Notify, Loading, AppFullscreen } from "quasar";
1
+ import QMarkdownVuePlugin from "@quasar/quasar-ui-qmarkdown";
2
+ import "@quasar/quasar-ui-qmarkdown/dist/index.css";
2
3
  import { createI18n } from "vue-i18n";
3
4
  import createLight from "./composables/createLight.js";
4
5
  import { defineNuxtPlugin } from "#app";
@@ -44,6 +45,7 @@ export default defineNuxtPlugin((nuxtApp) => {
44
45
  light.addError(new Error(err));
45
46
  }
46
47
  };
48
+ nuxtApp.vueApp.use(QMarkdownVuePlugin);
47
49
  const i18n = createI18n({
48
50
  legacy: false,
49
51
  locale: localStorage.getItem("locale") || "en",
@@ -59,27 +61,6 @@ export default defineNuxtPlugin((nuxtApp) => {
59
61
  i18n
60
62
  }));
61
63
  nuxtApp.vueApp.use(i18n);
62
- nuxtApp.vueApp.use(Quasar, {
63
- config: {
64
- brand: {
65
- primary: "#7367f0",
66
- secondary: "#82868b",
67
- accent: "#9C27B0",
68
- dark: "#4b4b4b",
69
- darkPage: "#121212",
70
- positive: "#28c76f",
71
- negative: "#ea5455",
72
- info: "#00cfe8",
73
- warning: "#ff9f43"
74
- }
75
- },
76
- plugins: {
77
- Dialog,
78
- Notify,
79
- Loading,
80
- AppFullscreen
81
- }
82
- });
83
64
  let locale = localStorage.getItem("locale") || "en";
84
65
  if (locale == "zh-hk") {
85
66
  locale = "zhTW";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hostlink/nuxt-light",
3
- "version": "1.28.4",
3
+ "version": "1.30.0",
4
4
  "description": "HostLink Nuxt Light Framework",
5
5
  "repository": {
6
6
  "type": "git",
@@ -35,7 +35,9 @@
35
35
  "@hostlink/light": "^2.5.2",
36
36
  "@nuxt/module-builder": "^1.0.1",
37
37
  "@quasar/extras": "^1.16.11",
38
+ "@quasar/quasar-ui-qmarkdown": "^2.0.5",
38
39
  "axios": "^1.5.0",
40
+ "defu": "^6.1.4",
39
41
  "diff2html": "^3.4.47",
40
42
  "formkit-quasar": "^0.0.15",
41
43
  "json-to-graphql-query": "^2.2.5",