@hostlink/nuxt-light 1.27.8 → 1.28.1
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.d.mts +2 -1
- package/dist/module.json +3 -3
- package/dist/module.mjs +40 -42
- package/dist/runtime/components/L/CustomField/Add.vue +41 -52
- package/dist/runtime/components/L/CustomField/Add.vue.d.ts +2 -0
- package/dist/runtime/components/L/CustomField/List.vue +26 -30
- package/dist/runtime/components/L/CustomField/List.vue.d.ts +2 -0
- package/dist/runtime/components/L/Database/create-table-dialog.vue +22 -38
- package/dist/runtime/components/L/Database/create-table-dialog.vue.d.ts +2 -0
- package/dist/runtime/components/L/Fieldset.vue +19 -23
- package/dist/runtime/components/L/Fieldset.vue.d.ts +2 -0
- package/dist/runtime/components/L/ForgetPasswordDialog.vue +39 -41
- package/dist/runtime/components/L/ForgetPasswordDialog.vue.d.ts +2 -0
- package/dist/runtime/components/L/Revision.vue +101 -137
- package/dist/runtime/components/L/Revision.vue.d.ts +2 -0
- package/dist/runtime/components/L/Storage.vue +26 -30
- package/dist/runtime/components/L/Storage.vue.d.ts +2 -0
- package/dist/runtime/components/L/System/Setting/authentication.vue +22 -44
- package/dist/runtime/components/L/System/Setting/authentication.vue.d.ts +2 -0
- package/dist/runtime/components/L/System/Setting/developer.vue +43 -59
- package/dist/runtime/components/L/System/Setting/developer.vue.d.ts +2 -0
- package/dist/runtime/components/L/System/Setting/forget-password.vue +42 -58
- package/dist/runtime/components/L/System/Setting/forget-password.vue.d.ts +2 -0
- package/dist/runtime/components/L/System/Setting/general.vue +29 -41
- package/dist/runtime/components/L/System/Setting/general.vue.d.ts +2 -0
- package/dist/runtime/components/L/System/Setting/mail.vue +39 -42
- package/dist/runtime/components/L/System/Setting/mail.vue.d.ts +2 -0
- package/dist/runtime/components/L/System/Setting/modules.vue +9 -9
- package/dist/runtime/components/L/System/Setting/modules.vue.d.ts +2 -0
- package/dist/runtime/components/L/System/Setting/security.vue +20 -39
- package/dist/runtime/components/L/System/Setting/security.vue.d.ts +2 -0
- package/dist/runtime/components/L/User/eventlog.vue +26 -26
- package/dist/runtime/components/L/User/eventlog.vue.d.ts +2 -0
- package/dist/runtime/components/L/User/overview.vue +25 -27
- package/dist/runtime/components/L/User/overview.vue.d.ts +2 -0
- package/dist/runtime/components/L/User/userlog.vue +22 -28
- package/dist/runtime/components/L/User/userlog.vue.d.ts +2 -0
- package/dist/runtime/components/L/ValidationInput.vue +68 -91
- package/dist/runtime/components/L/ValidationInput.vue.d.ts +2 -0
- package/dist/runtime/components/MyTest.vue +8 -7
- package/dist/runtime/components/MyTest.vue.d.ts +2 -0
- package/dist/runtime/components/l-add-btn.vue +13 -12
- package/dist/runtime/components/l-add-btn.vue.d.ts +2 -0
- package/dist/runtime/components/l-alert.vue +25 -29
- package/dist/runtime/components/l-alert.vue.d.ts +2 -0
- package/dist/runtime/components/l-app-main.vue +226 -294
- package/dist/runtime/components/l-app-main.vue.d.ts +2 -0
- package/dist/runtime/components/l-app.vue +76 -89
- package/dist/runtime/components/l-app.vue.d.ts +2 -0
- package/dist/runtime/components/l-audit-card.vue +8 -14
- package/dist/runtime/components/l-audit-card.vue.d.ts +2 -0
- package/dist/runtime/components/l-back-btn.vue.d.ts +2 -0
- package/dist/runtime/components/l-banner.vue +28 -34
- package/dist/runtime/components/l-banner.vue.d.ts +2 -0
- package/dist/runtime/components/l-bar.vue +21 -25
- package/dist/runtime/components/l-bar.vue.d.ts +2 -0
- package/dist/runtime/components/l-btn.vue +62 -37
- package/dist/runtime/components/l-btn.vue.d.ts +2 -0
- package/dist/runtime/components/l-card.vue +90 -141
- package/dist/runtime/components/l-card.vue.d.ts +2 -0
- package/dist/runtime/components/l-checkbox.vue +30 -7
- package/dist/runtime/components/l-checkbox.vue.d.ts +2 -0
- package/dist/runtime/components/l-col.vue +21 -29
- package/dist/runtime/components/l-col.vue.d.ts +2 -0
- package/dist/runtime/components/l-customizer.vue +84 -100
- package/dist/runtime/components/l-customizer.vue.d.ts +2 -0
- package/dist/runtime/components/l-date-picker.vue +101 -147
- package/dist/runtime/components/l-date-picker.vue.d.ts +2 -0
- package/dist/runtime/components/l-delete-btn.vue +22 -27
- package/dist/runtime/components/l-delete-btn.vue.d.ts +2 -0
- package/dist/runtime/components/l-dialog-database-field-add.vue +19 -36
- package/dist/runtime/components/l-dialog-database-field-add.vue.d.ts +2 -0
- package/dist/runtime/components/l-drag-drop-container.vue +44 -62
- package/dist/runtime/components/l-drag-drop-container.vue.d.ts +2 -0
- package/dist/runtime/components/l-drag-drop-group.vue +49 -70
- package/dist/runtime/components/l-drag-drop-group.vue.d.ts +2 -0
- package/dist/runtime/components/l-drag-drop.vue +33 -44
- package/dist/runtime/components/l-drag-drop.vue.d.ts +2 -0
- package/dist/runtime/components/l-edit-btn.vue.d.ts +2 -0
- package/dist/runtime/components/l-editor.vue +185 -172
- package/dist/runtime/components/l-editor.vue.d.ts +2 -0
- package/dist/runtime/components/l-facebook-button.vue +18 -26
- package/dist/runtime/components/l-facebook-button.vue.d.ts +2 -0
- package/dist/runtime/components/l-fav-menu.vue +19 -24
- package/dist/runtime/components/l-fav-menu.vue.d.ts +2 -0
- package/dist/runtime/components/l-field.vue +49 -18
- package/dist/runtime/components/l-field.vue.d.ts +2 -0
- package/dist/runtime/components/l-file-manager-labels.vue +46 -48
- package/dist/runtime/components/l-file-manager-labels.vue.d.ts +2 -0
- package/dist/runtime/components/l-file-manager-move.vue +53 -68
- package/dist/runtime/components/l-file-manager-move.vue.d.ts +2 -0
- package/dist/runtime/components/l-file-manager-preview.vue +46 -81
- package/dist/runtime/components/l-file-manager-preview.vue.d.ts +2 -0
- package/dist/runtime/components/l-file-manager.vue +498 -640
- package/dist/runtime/components/l-file-manager.vue.d.ts +2 -0
- package/dist/runtime/components/l-file-upload.vue +80 -109
- package/dist/runtime/components/l-file-upload.vue.d.ts +2 -0
- package/dist/runtime/components/l-file.vue +37 -61
- package/dist/runtime/components/l-file.vue.d.ts +2 -0
- package/dist/runtime/components/l-form-dialog.vue +71 -83
- package/dist/runtime/components/l-form-dialog.vue.d.ts +2 -0
- package/dist/runtime/components/l-form.vue +82 -96
- package/dist/runtime/components/l-form.vue.d.ts +2 -0
- package/dist/runtime/components/l-group-select.vue +59 -94
- package/dist/runtime/components/l-group-select.vue.d.ts +2 -0
- package/dist/runtime/components/l-icon-picker.vue +3265 -3274
- package/dist/runtime/components/l-icon-picker.vue.d.ts +2 -0
- package/dist/runtime/components/l-input-xlsx.vue +30 -38
- package/dist/runtime/components/l-input-xlsx.vue.d.ts +2 -0
- package/dist/runtime/components/l-input.vue +141 -127
- package/dist/runtime/components/l-input.vue.d.ts +2 -0
- package/dist/runtime/components/l-item.vue +30 -21
- package/dist/runtime/components/l-item.vue.d.ts +2 -0
- package/dist/runtime/components/l-link.vue +16 -15
- package/dist/runtime/components/l-link.vue.d.ts +2 -0
- package/dist/runtime/components/l-list.vue +27 -35
- package/dist/runtime/components/l-list.vue.d.ts +2 -0
- package/dist/runtime/components/l-login.vue +246 -287
- package/dist/runtime/components/l-login.vue.d.ts +2 -0
- package/dist/runtime/components/l-menu.vue +45 -54
- package/dist/runtime/components/l-menu.vue.d.ts +2 -0
- package/dist/runtime/components/l-microsoft-button.vue +42 -52
- package/dist/runtime/components/l-microsoft-button.vue.d.ts +2 -0
- package/dist/runtime/components/l-page.vue +48 -67
- package/dist/runtime/components/l-page.vue.d.ts +2 -0
- package/dist/runtime/components/l-row.vue +8 -13
- package/dist/runtime/components/l-row.vue.d.ts +2 -0
- package/dist/runtime/components/l-save-btn.vue.d.ts +2 -0
- package/dist/runtime/components/l-select.vue +150 -76
- package/dist/runtime/components/l-select.vue.d.ts +2 -0
- package/dist/runtime/components/l-small-box.vue +18 -31
- package/dist/runtime/components/l-small-box.vue.d.ts +2 -0
- package/dist/runtime/components/l-statistic.vue +17 -23
- package/dist/runtime/components/l-statistic.vue.d.ts +2 -0
- package/dist/runtime/components/l-tab.vue +20 -15
- package/dist/runtime/components/l-tab.vue.d.ts +2 -0
- package/dist/runtime/components/l-table.vue +444 -560
- package/dist/runtime/components/l-table.vue.d.ts +2 -0
- package/dist/runtime/components/l-tabs.vue +34 -16
- package/dist/runtime/components/l-tabs.vue.d.ts +2 -0
- package/dist/runtime/components/l-test2.vue +10 -9
- package/dist/runtime/components/l-test2.vue.d.ts +2 -0
- package/dist/runtime/components/l-time-picker.vue +53 -68
- package/dist/runtime/components/l-time-picker.vue.d.ts +2 -0
- package/dist/runtime/components/l-view-btn.vue.d.ts +2 -0
- package/dist/runtime/composables/mytest.d.ts +2 -0
- package/dist/runtime/composables/mytest.js +3 -0
- package/dist/runtime/formkit/Checkbox.vue +15 -18
- package/dist/runtime/formkit/Checkbox.vue.d.ts +2 -0
- package/dist/runtime/formkit/DatePicker.vue +15 -18
- package/dist/runtime/formkit/DatePicker.vue.d.ts +2 -0
- package/dist/runtime/formkit/Editor.vue +15 -18
- package/dist/runtime/formkit/Editor.vue.d.ts +2 -0
- package/dist/runtime/formkit/File.vue +30 -37
- package/dist/runtime/formkit/File.vue.d.ts +2 -0
- package/dist/runtime/formkit/FilePicker.vue +22 -25
- package/dist/runtime/formkit/FilePicker.vue.d.ts +2 -0
- package/dist/runtime/formkit/FileUpload.vue +22 -25
- package/dist/runtime/formkit/FileUpload.vue.d.ts +2 -0
- package/dist/runtime/formkit/Form.vue +79 -100
- package/dist/runtime/formkit/Form.vue.d.ts +2 -0
- package/dist/runtime/formkit/GroupSelect.vue +21 -27
- package/dist/runtime/formkit/GroupSelect.vue.d.ts +2 -0
- package/dist/runtime/formkit/Input.vue +53 -61
- package/dist/runtime/formkit/Input.vue.d.ts +2 -0
- package/dist/runtime/formkit/InputXlsx.vue +15 -18
- package/dist/runtime/formkit/InputXlsx.vue.d.ts +2 -0
- package/dist/runtime/formkit/OptionGroup.vue +20 -26
- package/dist/runtime/formkit/OptionGroup.vue.d.ts +2 -0
- package/dist/runtime/formkit/Radio.vue +15 -18
- package/dist/runtime/formkit/Radio.vue.d.ts +2 -0
- package/dist/runtime/formkit/Repeater.vue +62 -76
- package/dist/runtime/formkit/Repeater.vue.d.ts +2 -0
- package/dist/runtime/formkit/Select.vue +21 -29
- package/dist/runtime/formkit/Select.vue.d.ts +2 -0
- package/dist/runtime/formkit/TimePicker.vue +15 -19
- package/dist/runtime/formkit/TimePicker.vue.d.ts +2 -0
- package/dist/runtime/formkit/Toggle.vue +13 -16
- package/dist/runtime/formkit/Toggle.vue.d.ts +2 -0
- package/dist/runtime/light.d.ts +1129 -6
- package/dist/runtime/pages/CustomField/[custom_field_id]/edit.vue +24 -26
- package/dist/runtime/pages/CustomField/[custom_field_id]/edit.vue.d.ts +2 -0
- package/dist/runtime/pages/CustomField/index.vue +22 -29
- package/dist/runtime/pages/CustomField/index.vue.d.ts +2 -0
- package/dist/runtime/pages/EventLog/_eventlog_id/view.vue +8 -8
- package/dist/runtime/pages/EventLog/_eventlog_id/view.vue.d.ts +2 -0
- package/dist/runtime/pages/EventLog/index.vue +7 -6
- package/dist/runtime/pages/EventLog/index.vue.d.ts +2 -0
- package/dist/runtime/pages/FileManager/index.vue.d.ts +2 -0
- package/dist/runtime/pages/MailLog/index.vue +7 -6
- package/dist/runtime/pages/MailLog/index.vue.d.ts +2 -0
- package/dist/runtime/pages/Permission/add.vue +26 -29
- package/dist/runtime/pages/Permission/add.vue.d.ts +2 -0
- package/dist/runtime/pages/Permission/all.vue +57 -73
- package/dist/runtime/pages/Permission/all.vue.d.ts +2 -0
- package/dist/runtime/pages/Permission/export.vue +49 -62
- package/dist/runtime/pages/Permission/export.vue.d.ts +2 -0
- package/dist/runtime/pages/Permission/index.vue +19 -20
- package/dist/runtime/pages/Permission/index.vue.d.ts +2 -0
- package/dist/runtime/pages/Role/_name/update-child.vue +12 -14
- package/dist/runtime/pages/Role/_name/update-child.vue.d.ts +2 -0
- package/dist/runtime/pages/Role/add.vue +13 -15
- package/dist/runtime/pages/Role/add.vue.d.ts +2 -0
- package/dist/runtime/pages/Role/add2.vue +27 -38
- package/dist/runtime/pages/Role/add2.vue.d.ts +2 -0
- package/dist/runtime/pages/Role/index.vue +100 -127
- package/dist/runtime/pages/Role/index.vue.d.ts +2 -0
- package/dist/runtime/pages/System/database/backup.vue +28 -36
- package/dist/runtime/pages/System/database/backup.vue.d.ts +2 -0
- package/dist/runtime/pages/System/database/process.vue +33 -43
- package/dist/runtime/pages/System/database/process.vue.d.ts +2 -0
- package/dist/runtime/pages/System/database/table.vue +168 -205
- package/dist/runtime/pages/System/database/table.vue.d.ts +2 -0
- package/dist/runtime/pages/System/fs.vue +95 -107
- package/dist/runtime/pages/System/fs.vue.d.ts +2 -0
- package/dist/runtime/pages/System/index.vue +30 -31
- package/dist/runtime/pages/System/index.vue.d.ts +2 -0
- package/dist/runtime/pages/System/mailtest.vue +29 -35
- package/dist/runtime/pages/System/mailtest.vue.d.ts +2 -0
- package/dist/runtime/pages/System/menu/index.vue +175 -223
- package/dist/runtime/pages/System/menu/index.vue.d.ts +2 -0
- package/dist/runtime/pages/System/package.vue +21 -21
- package/dist/runtime/pages/System/package.vue.d.ts +2 -0
- package/dist/runtime/pages/System/phpinfo.vue +11 -10
- package/dist/runtime/pages/System/phpinfo.vue.d.ts +2 -0
- package/dist/runtime/pages/System/setting.vue +42 -59
- package/dist/runtime/pages/System/setting.vue.d.ts +2 -0
- package/dist/runtime/pages/System/test.vue.d.ts +2 -0
- package/dist/runtime/pages/System/view_as.vue +65 -68
- package/dist/runtime/pages/System/view_as.vue.d.ts +2 -0
- package/dist/runtime/pages/SystemValue/_systemvalue_id/edit.vue +7 -7
- package/dist/runtime/pages/SystemValue/_systemvalue_id/edit.vue.d.ts +2 -0
- package/dist/runtime/pages/SystemValue/add.vue.d.ts +2 -0
- package/dist/runtime/pages/SystemValue/index.vue +7 -6
- package/dist/runtime/pages/SystemValue/index.vue.d.ts +2 -0
- package/dist/runtime/pages/Translate/index.vue +81 -100
- package/dist/runtime/pages/Translate/index.vue.d.ts +2 -0
- package/dist/runtime/pages/User/_user_id/change-password.vue +38 -45
- package/dist/runtime/pages/User/_user_id/change-password.vue.d.ts +2 -0
- package/dist/runtime/pages/User/_user_id/edit.vue +35 -26
- package/dist/runtime/pages/User/_user_id/edit.vue.d.ts +2 -0
- package/dist/runtime/pages/User/_user_id/update-role.vue +33 -43
- package/dist/runtime/pages/User/_user_id/update-role.vue.d.ts +2 -0
- package/dist/runtime/pages/User/_user_id/view.vue +35 -37
- package/dist/runtime/pages/User/_user_id/view.vue.d.ts +2 -0
- package/dist/runtime/pages/User/add.vue +52 -60
- package/dist/runtime/pages/User/add.vue.d.ts +2 -0
- package/dist/runtime/pages/User/index.vue +23 -32
- package/dist/runtime/pages/User/index.vue.d.ts +2 -0
- package/dist/runtime/pages/User/profile.vue +52 -58
- package/dist/runtime/pages/User/profile.vue.d.ts +2 -0
- package/dist/runtime/pages/User/setting/bio-auth.vue +85 -95
- package/dist/runtime/pages/User/setting/bio-auth.vue.d.ts +2 -0
- package/dist/runtime/pages/User/setting/index.vue +27 -28
- package/dist/runtime/pages/User/setting/index.vue.d.ts +2 -0
- package/dist/runtime/pages/User/setting/information.vue +28 -27
- package/dist/runtime/pages/User/setting/information.vue.d.ts +2 -0
- package/dist/runtime/pages/User/setting/my_favorite.vue +29 -35
- package/dist/runtime/pages/User/setting/my_favorite.vue.d.ts +2 -0
- package/dist/runtime/pages/User/setting/open_id.vue +140 -165
- package/dist/runtime/pages/User/setting/open_id.vue.d.ts +2 -0
- package/dist/runtime/pages/User/setting/password.vue +37 -44
- package/dist/runtime/pages/User/setting/password.vue.d.ts +2 -0
- package/dist/runtime/pages/User/setting/style.vue +84 -102
- package/dist/runtime/pages/User/setting/style.vue.d.ts +2 -0
- package/dist/runtime/pages/User/setting/two-factor-auth.vue +51 -61
- package/dist/runtime/pages/User/setting/two-factor-auth.vue.d.ts +2 -0
- package/dist/runtime/pages/User/setting.vue +9 -9
- package/dist/runtime/pages/User/setting.vue.d.ts +2 -0
- package/dist/runtime/pages/UserLog/index.vue +7 -6
- package/dist/runtime/pages/UserLog/index.vue.d.ts +2 -0
- package/dist/types.d.mts +3 -1
- package/package.json +9 -11
- package/dist/module.cjs +0 -5
- package/dist/module.d.ts +0 -7
- package/dist/types.d.ts +0 -1
|
@@ -1,43 +1,31 @@
|
|
|
1
|
-
<script setup
|
|
2
|
-
import { q, m } from
|
|
3
|
-
import { useQuasar } from
|
|
4
|
-
|
|
5
|
-
const
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
$q.notify({ message: "Settings saved", color: "positive" })
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
</script>
|
|
34
|
-
<template>
|
|
35
|
-
<FormKit type="l-form" :bordered="false" :value="{
|
|
36
|
-
company: modelValue.company,
|
|
37
|
-
company_logo: modelValue.company_logo,
|
|
38
|
-
copyright_name: modelValue.copyright_name,
|
|
39
|
-
copyright_year: modelValue.copyright_year
|
|
40
|
-
}" @submit="onSubmit">
|
|
1
|
+
<script setup>
|
|
2
|
+
import { q, m } from "#imports";
|
|
3
|
+
import { useQuasar } from "quasar";
|
|
4
|
+
const $q = useQuasar();
|
|
5
|
+
const modelValue = defineModel({ type: Object });
|
|
6
|
+
const onSubmit = async (d, form) => {
|
|
7
|
+
let data = [];
|
|
8
|
+
Object.keys(d).forEach((key) => {
|
|
9
|
+
data.push({
|
|
10
|
+
name: key,
|
|
11
|
+
value: d[key]
|
|
12
|
+
});
|
|
13
|
+
});
|
|
14
|
+
await m("updateAppConfigs", { data });
|
|
15
|
+
Object.keys(d).forEach((key) => {
|
|
16
|
+
modelValue.value[key] = d[key];
|
|
17
|
+
});
|
|
18
|
+
$q.notify({ message: "Settings saved", color: "positive" });
|
|
19
|
+
};
|
|
20
|
+
</script>
|
|
21
|
+
|
|
22
|
+
<template>
|
|
23
|
+
<FormKit type="l-form" :bordered="false" :value="{
|
|
24
|
+
company: modelValue.company,
|
|
25
|
+
company_logo: modelValue.company_logo,
|
|
26
|
+
copyright_name: modelValue.copyright_name,
|
|
27
|
+
copyright_year: modelValue.copyright_year
|
|
28
|
+
}" @submit="onSubmit">
|
|
41
29
|
|
|
42
30
|
<FormKit type="l-input" label="Company" name="company" validation="required"></FormKit>
|
|
43
31
|
<FormKit type="l-input" label="Company logo" name="company_logo"></FormKit>
|
|
@@ -46,4 +34,4 @@ const onSubmit = async (d, form) => {
|
|
|
46
34
|
<FormKit label="Copyright year" type="l-input" name="copyright_year" validation="required" />
|
|
47
35
|
|
|
48
36
|
</FormKit>
|
|
49
|
-
</template>
|
|
37
|
+
</template>
|
|
@@ -1,40 +1,38 @@
|
|
|
1
|
-
<script setup
|
|
2
|
-
const emits = defineEmits(["submit"])
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
</script>
|
|
27
|
-
<template>
|
|
1
|
+
<script setup>
|
|
2
|
+
const emits = defineEmits(["submit"]);
|
|
3
|
+
defineProps({
|
|
4
|
+
mail_driver: { type: String, required: true, default: "mail" },
|
|
5
|
+
mail_host: { type: String, required: true },
|
|
6
|
+
mail_port: { type: String, required: true },
|
|
7
|
+
mail_username: { type: String, required: true },
|
|
8
|
+
mail_password: { type: String, required: true },
|
|
9
|
+
mail_encryption: { type: String, required: true },
|
|
10
|
+
mail_from: { type: String, required: true },
|
|
11
|
+
mail_from_name: { type: String, required: true },
|
|
12
|
+
mail_reply_to: { type: String, required: true },
|
|
13
|
+
mail_reply_to_name: { type: String, required: true }
|
|
14
|
+
});
|
|
15
|
+
const onLoginGmail = () => {
|
|
16
|
+
let state = encodeURIComponent(window.self.location.origin + window.self.location.pathname + "?mail_driver=gmail");
|
|
17
|
+
let scope = encodeURIComponent("https://mail.google.com/");
|
|
18
|
+
let url = "https://accounts.google.com/o/oauth2/v2/auth?scope=" + scope + "&access_type=offline&state=" + state + "&response_type=code&redirect_uri=https%3A%2F%2Fraymond4.hostlink.com.hk%2Flight%2Fgmail_notification%2Fredirect.php&client_id=790028313082-8qqnoqvkqtqssufto11k6qe6pnievcpv.apps.googleusercontent.com&prompt=consent";
|
|
19
|
+
window.open(url, "_blank");
|
|
20
|
+
};
|
|
21
|
+
</script>
|
|
22
|
+
|
|
23
|
+
<template>
|
|
28
24
|
<FormKit type="l-form" :bordered="false" :value="$props" @submit="$emit('submit', $event)" #default="{ value }">
|
|
29
25
|
|
|
30
|
-
<FormKit type="l-select" label="Mail Driver" name="mail_driver" :options="[
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
26
|
+
<FormKit type="l-select" label="Mail Driver" name="mail_driver" :options="[
|
|
27
|
+
{
|
|
28
|
+
label: 'Mail',
|
|
29
|
+
value: 'mail'
|
|
30
|
+
},
|
|
31
|
+
{ label: 'SMTP', value: 'smtp' },
|
|
32
|
+
{ label: 'Sendmail', value: 'sendmail' },
|
|
33
|
+
{ label: 'Qmail', value: 'qmail' },
|
|
34
|
+
{ label: 'Gmail', value: 'gmail' }
|
|
35
|
+
]" validation="required"></FormKit>
|
|
38
36
|
|
|
39
37
|
<template v-if="value.mail_driver === 'gmail'">
|
|
40
38
|
<l-btn label="Login" @click="onLoginGmail" icon="sym_o_login" />
|
|
@@ -55,11 +53,11 @@ const onLoginGmail = () => {
|
|
|
55
53
|
<FormKit type="l-input" label="SMTP Username" name="mail_username"></FormKit>
|
|
56
54
|
<FormKit type="l-input" label="SMTP Password" name="mail_password"></FormKit>
|
|
57
55
|
|
|
58
|
-
<FormKit type="l-select" label="SMTP Encryption" name="mail_encryption" :options="[
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
56
|
+
<FormKit type="l-select" label="SMTP Encryption" name="mail_encryption" :options="[
|
|
57
|
+
{ label: 'None', value: '' },
|
|
58
|
+
{ label: 'SSL', value: 'ssl' },
|
|
59
|
+
{ label: 'TLS', value: 'tls' }
|
|
60
|
+
]"></FormKit>
|
|
63
61
|
</template>
|
|
64
62
|
|
|
65
63
|
</template>
|
|
@@ -68,5 +66,4 @@ const onLoginGmail = () => {
|
|
|
68
66
|
|
|
69
67
|
|
|
70
68
|
</FormKit>
|
|
71
|
-
|
|
72
|
-
</template>
|
|
69
|
+
</template>
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
<script setup
|
|
2
|
-
const emits = defineEmits(["submit"])
|
|
3
|
-
defineProps
|
|
4
|
-
|
|
5
|
-
}
|
|
6
|
-
</script>
|
|
7
|
-
|
|
1
|
+
<script setup>
|
|
2
|
+
const emits = defineEmits(["submit"]);
|
|
3
|
+
defineProps({
|
|
4
|
+
file_manager: { type: String, required: true }
|
|
5
|
+
});
|
|
6
|
+
</script>
|
|
7
|
+
|
|
8
|
+
<template>
|
|
8
9
|
<form-kit type="l-form" :bordered="false" :value="$props" @submit="$emit('submit', $event)">
|
|
9
10
|
<l-field :label="$t('File Manager')" stack-label :color="$light.color" hide-bottom-space>
|
|
10
11
|
<form-kit type="l-checkbox" label="Show" name="file_manager" true-value="1" false-value="0" />
|
|
11
12
|
</l-field>
|
|
12
13
|
</form-kit>
|
|
13
|
-
|
|
14
|
-
</template>
|
|
14
|
+
</template>
|
|
@@ -1,41 +1,22 @@
|
|
|
1
|
-
<script setup
|
|
2
|
-
const emits = defineEmits(["submit"])
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
password_contains_uppercase: "0",
|
|
21
|
-
password_contains_lowercase: "0",
|
|
22
|
-
password_contains_numeric: "0",
|
|
23
|
-
password_contains_symbol: "0",
|
|
24
|
-
password_min_length: "8",
|
|
25
|
-
two_factor_authentication: "0",
|
|
26
|
-
auth_lockout_duration: "15",
|
|
27
|
-
auth_lockout_attempts: "5",
|
|
28
|
-
access_token_expire: "28800",
|
|
29
|
-
password_expiration: "0",
|
|
30
|
-
password_expiration_duration: "90",
|
|
31
|
-
concurrent_login_disabled: "0",
|
|
32
|
-
});
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
</script>
|
|
36
|
-
|
|
37
|
-
<template>
|
|
38
|
-
|
|
1
|
+
<script setup>
|
|
2
|
+
const emits = defineEmits(["submit"]);
|
|
3
|
+
defineProps({
|
|
4
|
+
password_contains_uppercase: { type: String, required: true, default: "0" },
|
|
5
|
+
password_contains_lowercase: { type: String, required: true, default: "0" },
|
|
6
|
+
password_contains_numeric: { type: String, required: true, default: "0" },
|
|
7
|
+
password_contains_symbol: { type: String, required: true, default: "0" },
|
|
8
|
+
password_min_length: { type: String, required: true, default: "8" },
|
|
9
|
+
two_factor_authentication: { type: String, required: true, default: "0" },
|
|
10
|
+
auth_lockout_duration: { type: String, required: true, default: "15" },
|
|
11
|
+
auth_lockout_attempts: { type: String, required: true, default: "5" },
|
|
12
|
+
access_token_expire: { type: String, required: true, default: "28800" },
|
|
13
|
+
password_expiration: { type: String, required: true, default: "0" },
|
|
14
|
+
password_expiration_duration: { type: String, required: true, default: "90" },
|
|
15
|
+
concurrent_login_disabled: { type: String, required: true, default: "0" }
|
|
16
|
+
});
|
|
17
|
+
</script>
|
|
18
|
+
|
|
19
|
+
<template>
|
|
39
20
|
<FormKit type="l-form" :bordered="false" :value="$props" @submit="$emit('submit', $event)">
|
|
40
21
|
<l-field label="Password policy" stack-label :color="$light.color">
|
|
41
22
|
<FormKit type="l-checkbox" label="Upper Case" name="password_contains_uppercase" true-value="1"
|
|
@@ -77,4 +58,4 @@ withDefaults(defineProps<LSystemSettingSecurityProps>(), {
|
|
|
77
58
|
false-value="0"></form-kit>
|
|
78
59
|
|
|
79
60
|
</FormKit>
|
|
80
|
-
</template>
|
|
61
|
+
</template>
|
|
@@ -1,30 +1,30 @@
|
|
|
1
|
-
<script setup
|
|
2
|
-
import { model, q } from "#imports";
|
|
3
|
-
const props = defineProps([
|
|
4
|
-
</script>
|
|
5
|
-
|
|
1
|
+
<script setup>
|
|
2
|
+
import { model, q } from "#imports";
|
|
3
|
+
const props = defineProps(["id"]);
|
|
4
|
+
</script>
|
|
5
|
+
|
|
6
|
+
<template>
|
|
6
7
|
<div>
|
|
7
8
|
<l-table row-key="eventlog_id" sort-by="eventlog_id:desc"
|
|
8
9
|
:columns="model('EventLog').columns(['eventlog_id', 'class', 'id', 'action', 'created_time'])"
|
|
9
|
-
@request-data="async (req) => {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
}" />
|
|
10
|
+
@request-data="async (req) => {
|
|
11
|
+
const a = {
|
|
12
|
+
listUser: {
|
|
13
|
+
__args: {
|
|
14
|
+
filters: {
|
|
15
|
+
user_id: props.id
|
|
16
|
+
}
|
|
17
|
+
},
|
|
18
|
+
data: {
|
|
19
|
+
__args: {
|
|
20
|
+
limit: 1
|
|
21
|
+
},
|
|
22
|
+
eventLog: req.gql
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
};
|
|
26
|
+
let resp = await q(a);
|
|
27
|
+
req.setData(resp.listUser.data[0].eventLog);
|
|
28
|
+
}" />
|
|
29
29
|
</div>
|
|
30
|
-
</template>
|
|
30
|
+
</template>
|
|
@@ -1,28 +1,26 @@
|
|
|
1
|
-
<script setup
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
</script>
|
|
25
|
-
<template>
|
|
1
|
+
<script setup>
|
|
2
|
+
import { collect, model } from "#imports";
|
|
3
|
+
const props = defineProps({
|
|
4
|
+
id: {
|
|
5
|
+
type: String,
|
|
6
|
+
required: true
|
|
7
|
+
}
|
|
8
|
+
});
|
|
9
|
+
const obj = await collect("User", {
|
|
10
|
+
user_id: true,
|
|
11
|
+
username: true,
|
|
12
|
+
first_name: true,
|
|
13
|
+
last_name: true,
|
|
14
|
+
email: true,
|
|
15
|
+
phone: true,
|
|
16
|
+
roles: true,
|
|
17
|
+
status: true,
|
|
18
|
+
join_date: true,
|
|
19
|
+
twoFactorEnabled: true
|
|
20
|
+
}).where("user_id", props.id).first();
|
|
21
|
+
</script>
|
|
22
|
+
|
|
23
|
+
<template>
|
|
26
24
|
<l-card>
|
|
27
25
|
<q-card-section>
|
|
28
26
|
<l-row>
|
|
@@ -39,7 +37,7 @@ const obj = await collect("User", {
|
|
|
39
37
|
}}</q-badge>
|
|
40
38
|
</div>
|
|
41
39
|
</l-item>
|
|
42
|
-
<l-item label="Status">{{ model(
|
|
40
|
+
<l-item label="Status">{{ model("User").columns(["status"])[0].format(obj.status) }}</l-item>
|
|
43
41
|
<l-item label="Join date">{{ obj.join_date }}</l-item>
|
|
44
42
|
<l-item label="Two factor authentication">{{ obj.twoFactorEnabled ? "Yes" : "No"
|
|
45
43
|
}}</l-item>
|
|
@@ -49,4 +47,4 @@ const obj = await collect("User", {
|
|
|
49
47
|
</l-row>
|
|
50
48
|
</q-card-section>
|
|
51
49
|
</l-card>
|
|
52
|
-
</template>
|
|
50
|
+
</template>
|
|
@@ -1,29 +1,23 @@
|
|
|
1
|
-
<script setup
|
|
2
|
-
import { model, q } from "#imports";
|
|
3
|
-
const props = defineProps({
|
|
4
|
-
|
|
5
|
-
});
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
userlog_id: true,
|
|
9
|
-
login_dt: true,
|
|
10
|
-
last_access_time: true,
|
|
11
|
-
logout_dt: true,
|
|
12
|
-
result: true,
|
|
13
|
-
user_agent: true
|
|
14
|
-
}
|
|
15
|
-
);
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
</script>
|
|
25
|
-
<template>
|
|
26
|
-
|
|
1
|
+
<script setup>
|
|
2
|
+
import { model, q } from "#imports";
|
|
3
|
+
const props = defineProps({
|
|
4
|
+
id: String
|
|
5
|
+
});
|
|
6
|
+
const columns = model("UserLog").columns(
|
|
7
|
+
{
|
|
8
|
+
userlog_id: true,
|
|
9
|
+
login_dt: true,
|
|
10
|
+
last_access_time: true,
|
|
11
|
+
logout_dt: true,
|
|
12
|
+
result: true,
|
|
13
|
+
user_agent: true
|
|
14
|
+
}
|
|
15
|
+
);
|
|
16
|
+
const onRequestData = async (req) => {
|
|
17
|
+
req.loadObjects("UserLog", { user_id: props.id });
|
|
18
|
+
};
|
|
19
|
+
</script>
|
|
20
|
+
|
|
21
|
+
<template>
|
|
27
22
|
<l-table row-key="userlog_id" sort-by="userlog_id:desc" :columns="columns" @request-data="onRequestData" />
|
|
28
|
-
|
|
29
|
-
</template>
|
|
23
|
+
</template>
|
|
@@ -1,91 +1,70 @@
|
|
|
1
|
-
<script setup>
|
|
2
|
-
import { computed, watch, reactive } from
|
|
3
|
-
const model = defineModel({
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
});
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
type:
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
const
|
|
20
|
-
|
|
21
|
-
});
|
|
22
|
-
|
|
23
|
-
const
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
return
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
validation.push(
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
if (form.length_min > 0 || form.length_max > 0) {
|
|
71
|
-
|
|
72
|
-
if (form.length_max > 0) {
|
|
73
|
-
validation.push(`length:${form.length_min},${form.length_max}`);
|
|
74
|
-
} else {
|
|
75
|
-
validation.push(`length:${form.length_min}`);
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
model.value = validation.join("|");
|
|
81
|
-
|
|
82
|
-
});
|
|
83
|
-
|
|
84
|
-
</script>
|
|
85
|
-
|
|
86
|
-
<template>
|
|
87
|
-
|
|
88
|
-
|
|
1
|
+
<script setup>
|
|
2
|
+
import { computed, watch, reactive } from "vue";
|
|
3
|
+
const model = defineModel({
|
|
4
|
+
type: String,
|
|
5
|
+
default: ""
|
|
6
|
+
});
|
|
7
|
+
const props = defineProps({
|
|
8
|
+
type: {
|
|
9
|
+
type: String,
|
|
10
|
+
default: "text"
|
|
11
|
+
}
|
|
12
|
+
});
|
|
13
|
+
const isRequired = computed(() => {
|
|
14
|
+
return model.value.split("|").includes("required");
|
|
15
|
+
});
|
|
16
|
+
const isEmail = computed(() => {
|
|
17
|
+
return model.value.split("|").includes("email");
|
|
18
|
+
});
|
|
19
|
+
const isNumber = computed(() => {
|
|
20
|
+
return model.value.split("|").includes("number");
|
|
21
|
+
});
|
|
22
|
+
const lenghtMin = computed(() => {
|
|
23
|
+
const length = model.value.split("|").find((v) => v.includes("length"));
|
|
24
|
+
if (length) {
|
|
25
|
+
return length.split(":")[1].split(",")[0];
|
|
26
|
+
}
|
|
27
|
+
return 0;
|
|
28
|
+
});
|
|
29
|
+
const lenghtMax = computed(() => {
|
|
30
|
+
const length = model.value.split("|").find((v) => v.includes("length"));
|
|
31
|
+
if (length) {
|
|
32
|
+
return length.split(":")[1].split(",")[1];
|
|
33
|
+
}
|
|
34
|
+
return 0;
|
|
35
|
+
});
|
|
36
|
+
const form = reactive({
|
|
37
|
+
required: isRequired.value,
|
|
38
|
+
email: isEmail.value,
|
|
39
|
+
number: isNumber.value,
|
|
40
|
+
length_min: lenghtMin.value,
|
|
41
|
+
length_max: lenghtMax.value
|
|
42
|
+
});
|
|
43
|
+
watch(form, () => {
|
|
44
|
+
let validation = [];
|
|
45
|
+
if (form.required) {
|
|
46
|
+
validation.push("required");
|
|
47
|
+
}
|
|
48
|
+
if (props.type == "text") {
|
|
49
|
+
if (form.email) {
|
|
50
|
+
validation.push("email");
|
|
51
|
+
}
|
|
52
|
+
if (form.number) {
|
|
53
|
+
validation.push("number");
|
|
54
|
+
}
|
|
55
|
+
if (form.length_min > 0 || form.length_max > 0) {
|
|
56
|
+
if (form.length_max > 0) {
|
|
57
|
+
validation.push(`length:${form.length_min},${form.length_max}`);
|
|
58
|
+
} else {
|
|
59
|
+
validation.push(`length:${form.length_min}`);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
model.value = validation.join("|");
|
|
64
|
+
});
|
|
65
|
+
</script>
|
|
66
|
+
|
|
67
|
+
<template>
|
|
89
68
|
<q-checkbox left-label v-model="form.required" label="Required" :color="$light.color" />
|
|
90
69
|
|
|
91
70
|
<q-checkbox left-label v-model="form.email" label="Email" :color="$light.color" v-if="type == 'text'" />
|
|
@@ -100,6 +79,4 @@ watch(form, () => {
|
|
|
100
79
|
<q-input label="Length max" v-model="form.length_max" type="number" stack-label outlined dense :min="0" />
|
|
101
80
|
</l-col>
|
|
102
81
|
</l-row>
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
</template>
|
|
82
|
+
</template>
|