@hostlink/nuxt-light 1.21.14 → 1.22.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.
package/dist/module.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "light",
3
3
  "configKey": "light",
4
- "version": "1.21.14",
4
+ "version": "1.22.0",
5
5
  "builder": {
6
6
  "@nuxt/module-builder": "0.8.4",
7
7
  "unbuild": "2.0.0"
@@ -12,7 +12,8 @@ export type LSystemSettingSecurityProps = {
12
12
  auth_lockout_attempts: string
13
13
  access_token_expire: string
14
14
  password_expiration: string,
15
- password_expiration_duration: string
15
+ password_expiration_duration: string,
16
+ concurrent_login_disabled: string,
16
17
  }
17
18
 
18
19
  withDefaults(defineProps<LSystemSettingSecurityProps>(), {
@@ -26,7 +27,8 @@ withDefaults(defineProps<LSystemSettingSecurityProps>(), {
26
27
  auth_lockout_attempts: "5",
27
28
  access_token_expire: "28800",
28
29
  password_expiration: "0",
29
- password_expiration_duration: "90"
30
+ password_expiration_duration: "90",
31
+ concurrent_login_disabled: "0",
30
32
  });
31
33
 
32
34
 
@@ -69,5 +71,10 @@ withDefaults(defineProps<LSystemSettingSecurityProps>(), {
69
71
  type="l-checkbox"></form-kit>
70
72
  <form-kit label="Password expiration duration" name="password_expiration_duration" type="l-input"
71
73
  hint="The number of days before the password expires. Default is 90 days." validation="required"></form-kit>
74
+
75
+
76
+ <form-kit label="Concurrent login disabled" type="l-checkbox" name="concurrent_login_disabled" true-value="1"
77
+ false-value="0"></form-kit>
78
+
72
79
  </FormKit>
73
80
  </template>
@@ -281,6 +281,15 @@ const onLogout = async () => {
281
281
  emits('logout');
282
282
  }
283
283
 
284
+ watch(light.errors, (value) => {
285
+ if (value.length > 0) {
286
+ //if errors
287
+ for (let error of value) {
288
+ console.log(error.message);
289
+ }
290
+ }
291
+ })
292
+
284
293
  </script>
285
294
 
286
295
 
@@ -1,7 +1,7 @@
1
1
  <script setup lang="ts">
2
2
  import { useLight, q, m } from '#imports'
3
3
  import { ref, computed, useSlots, onMounted } from 'vue'
4
- import { type QCardProps } from 'quasar';
4
+ import type { QCardProps } from 'quasar';
5
5
 
6
6
  const emit = defineEmits(["close"]);
7
7
 
@@ -148,9 +148,9 @@ const date_attrs = computed(() => {
148
148
  <template v-slot:prepend>
149
149
  <q-btn icon="sym_o_event" round dense flat>
150
150
  <q-popup-proxy cover transition-show="scale" transition-hide="scale" ref="popup">
151
- <q-date v-bind="date_attrs" v-model="dateValue" :color="color ?? $light.color">
151
+ <q-date v-bind="date_attrs" v-model="dateValue" :color="color ?? $light.color" today-btn :title="label">
152
152
  <div class="row items-center justify-end">
153
- <q-btn v-close-popup label="Close" :color="color ?? $light.color" flat />
153
+ <q-btn v-close-popup :label="$t('Close')" :color="color ?? $light.color" flat />
154
154
  </div>
155
155
  </q-date>
156
156
  </q-popup-proxy>
@@ -301,7 +301,7 @@ const facebookLogin = (accessToken) => {
301
301
  </l-input>
302
302
  <l-input v-model="data.password" label="Password" type="password" clearable show-password stackLabel
303
303
  :rules="[v => !!v || $t('Password is required')]" @keydown.enter.prevent="submit" :outlined="false"
304
- autocomplete="current-password">
304
+ autocomplete="off">
305
305
  <template v-slot:prepend>
306
306
  <q-icon name="sym_o_lock" />
307
307
  </template>
@@ -49,7 +49,7 @@ const props = withDefaults(defineProps<LTableProps>(), {
49
49
  actions: () => [],
50
50
  rowsPerPageLabel: "Records per page:",
51
51
  selection: "none",
52
- rowsPerPageOptions: () => [3, 5, 7, 10, 15, 20, 25, 50, 0],
52
+ rowsPerPageOptions: () => [5, 10, 20, 50, 100, 0],
53
53
  pagination: () => {
54
54
  return {
55
55
  sortBy: null,
@@ -335,7 +335,6 @@ const onLocalRequest = async (p: any) => {
335
335
  }
336
336
  }
337
337
 
338
- console.log(p.pagination);
339
338
 
340
339
  if (p.pagination.rowsPerPage != 0) {
341
340
  c = c.forPage(p.pagination.page, p.pagination.rowsPerPage);
@@ -355,6 +354,7 @@ const onLocalRequest = async (p: any) => {
355
354
  color: "negative"
356
355
  })
357
356
  this.setData({ data: [], meta: { total: 0, key: "", name: "" } });
357
+
358
358
  }
359
359
  }
360
360
  }
@@ -16,7 +16,7 @@ const value = computed({
16
16
  set: (val) => props.context.node.input(val)
17
17
  })
18
18
 
19
- const label = computed(() => {
19
+ /* const label = computed(() => {
20
20
  let l = t(props.context.label);
21
21
  if (props.context.state.required) {
22
22
  l = "* " + l
@@ -24,11 +24,12 @@ const label = computed(() => {
24
24
  return l
25
25
  })
26
26
 
27
-
27
+ */
28
28
  </script>
29
29
  <template>
30
- <l-date-picker v-model="value" v-bind="context.attrs" :label="label" :error="error" :type="context.inputType"
31
- :error-message="errorMessage" :disable="context.disabled">
30
+ <l-date-picker v-model="value" v-bind="context.attrs" :label="context.label" :error="error"
31
+ :type="context.inputType" :error-message="errorMessage" :disable="context.disabled"
32
+ :required="context.state.required">
32
33
  <template v-for="(s, name) in $slots" v-slot:[name]="props" :key="name">
33
34
  <slot :name="name" v-bind="props ?? {}"></slot>
34
35
  </template>
@@ -214,6 +214,7 @@ const light = reactive({
214
214
  watch(() => light.color, async () => {
215
215
  await light.setStyle("color", light.color);
216
216
  });
217
+ light.errors = [];
217
218
  },
218
219
  isGranted(right) {
219
220
  if (right === void 0) return true;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hostlink/nuxt-light",
3
- "version": "1.21.14",
3
+ "version": "1.22.0",
4
4
  "description": "HostLink Nuxt Light Framework",
5
5
  "repository": {
6
6
  "type": "git",