@hostlink/nuxt-light 1.66.0 → 1.67.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/README.md +1 -0
- package/dist/module.d.mts +6 -0
- package/dist/module.json +1 -1
- package/dist/module.mjs +34 -0
- package/dist/runtime/components/{l-audit-card.d.vue.ts → L/AuditCard.d.vue.ts} +1 -1
- package/dist/runtime/components/{l-audit-card.vue → L/AuditCard.vue} +1 -1
- package/dist/runtime/components/{l-audit-card.vue.d.ts → L/AuditCard.vue.d.ts} +1 -1
- package/dist/runtime/components/{l-bar.vue → L/Bar.vue} +1 -2
- package/dist/runtime/components/{l-btn.d.vue.ts → L/Btn.d.vue.ts} +0 -1
- package/dist/runtime/components/{l-btn.vue → L/Btn.vue} +17 -14
- package/dist/runtime/components/{l-btn.vue.d.ts → L/Btn.vue.d.ts} +0 -1
- package/dist/runtime/components/{l-card.vue → L/Card.vue} +8 -6
- package/dist/runtime/components/{l-checkbox.vue → L/Checkbox.vue} +4 -2
- package/dist/runtime/components/{l-date-picker.vue → L/DatePicker.vue} +85 -103
- package/dist/runtime/components/{l-delete-btn.d.vue.ts → L/DeleteBtn.d.vue.ts} +10 -1
- package/dist/runtime/components/{l-delete-btn.vue → L/DeleteBtn.vue} +4 -2
- package/dist/runtime/components/{l-delete-btn.vue.d.ts → L/DeleteBtn.vue.d.ts} +10 -1
- package/dist/runtime/components/L/DialogDatabaseFieldAdd.d.vue.ts +21 -0
- package/dist/runtime/components/{l-dialog-database-field-add.vue → L/DialogDatabaseFieldAdd.vue} +14 -15
- package/dist/runtime/components/L/DialogDatabaseFieldAdd.vue.d.ts +21 -0
- package/dist/runtime/components/L/DocumentViewer.d.vue.ts +1 -1
- package/dist/runtime/components/L/DocumentViewer.vue.d.ts +1 -1
- package/dist/runtime/components/L/DocumentViewerDialog.d.vue.ts +2 -2
- package/dist/runtime/components/L/DocumentViewerDialog.vue.d.ts +2 -2
- package/dist/runtime/components/{l-editor.vue → L/Editor.vue} +31 -17
- package/dist/runtime/components/L/Fieldset.d.vue.ts +15 -27
- package/dist/runtime/components/L/Fieldset.vue +4 -10
- package/dist/runtime/components/L/Fieldset.vue.d.ts +15 -27
- package/dist/runtime/components/{l-file-manager.vue → L/FileManager.vue} +2 -5
- package/dist/runtime/components/{l-icon-picker.vue → L/IconPicker.vue} +13 -13
- package/dist/runtime/components/{l-input.d.vue.ts → L/Input.d.vue.ts} +7 -3
- package/dist/runtime/components/{l-input.vue → L/Input.vue} +59 -80
- package/dist/runtime/components/{l-input.vue.d.ts → L/Input.vue.d.ts} +7 -3
- package/dist/runtime/components/{l-input-select.d.vue.ts → L/InputSelect.d.vue.ts} +3 -2
- package/dist/runtime/components/{l-input-select.vue → L/InputSelect.vue} +27 -9
- package/dist/runtime/components/{l-input-select.vue.d.ts → L/InputSelect.vue.d.ts} +3 -2
- package/dist/runtime/components/L/InputXlsx.d.vue.ts +17 -0
- package/dist/runtime/components/L/InputXlsx.vue +81 -0
- package/dist/runtime/components/L/InputXlsx.vue.d.ts +17 -0
- package/dist/runtime/components/{l-item.vue → L/Item.vue} +14 -5
- package/dist/runtime/components/{l-list.vue → L/List.vue} +18 -21
- package/dist/runtime/components/{l-page.vue → L/Page.vue} +6 -8
- package/dist/runtime/components/L/SearchNumber.d.vue.ts +16 -0
- package/dist/runtime/components/L/SearchNumber.vue +139 -0
- package/dist/runtime/components/L/SearchNumber.vue.d.ts +16 -0
- package/dist/runtime/components/L/Select.d.vue.ts +46 -0
- package/dist/runtime/components/{l-select.vue → L/Select.vue} +37 -18
- package/dist/runtime/components/L/Select.vue.d.ts +46 -0
- package/dist/runtime/components/L/System/Setting/logs.vue +75 -0
- package/dist/runtime/components/{l-tab.d.vue.ts → L/Tab.d.vue.ts} +2 -2
- package/dist/runtime/components/L/Tab.vue +38 -0
- package/dist/runtime/components/{l-tab.vue.d.ts → L/Tab.vue.d.ts} +2 -2
- package/dist/runtime/components/{l-table.d.vue.ts → L/Table.d.vue.ts} +16 -8
- package/dist/runtime/components/{l-table.vue → L/Table.vue} +139 -84
- package/dist/runtime/components/{l-table.vue.d.ts → L/Table.vue.d.ts} +16 -8
- package/dist/runtime/components/{l-tabs.vue → L/Tabs.vue} +15 -8
- package/dist/runtime/components/{l-time-picker.d.vue.ts → L/TimePicker.d.vue.ts} +3 -2
- package/dist/runtime/components/L/TimePicker.vue +73 -0
- package/dist/runtime/components/{l-time-picker.vue.d.ts → L/TimePicker.vue.d.ts} +3 -2
- package/dist/runtime/components/{MyTest.d.vue.ts → L/User/apikey.d.vue.ts} +4 -4
- package/dist/runtime/components/L/User/apikey.vue +18 -0
- package/dist/runtime/components/{MyTest.vue.d.ts → L/User/apikey.vue.d.ts} +4 -4
- package/dist/runtime/components/L/ViewBtn.d.vue.ts +3 -0
- package/dist/runtime/components/L/ViewBtn.vue.d.ts +3 -0
- package/dist/runtime/composables/defineLightModel.d.ts +1 -1
- package/dist/runtime/composables/model.d.ts +1 -1
- package/dist/runtime/composables/showUploadFilesDialog.js +1 -1
- package/dist/runtime/composables/useLight.d.ts +22 -22
- package/dist/runtime/composables/useLight.js +10 -1
- package/dist/runtime/composables/useLightProps.d.ts +26 -0
- package/dist/runtime/composables/useLightProps.js +73 -0
- package/dist/runtime/models/APIKey.d.ts +2 -0
- package/dist/runtime/models/APIKey.js +20 -0
- package/dist/runtime/models/EventLog.js +5 -1
- package/dist/runtime/models/SystemValue.d.ts +2 -0
- package/dist/runtime/models/SystemValue.js +15 -0
- package/dist/runtime/pages/Permission/all.vue +23 -14
- package/dist/runtime/pages/System/database/table.vue +28 -1
- package/dist/runtime/pages/System/index.vue +1 -1
- package/dist/runtime/pages/System/menu/index.vue +5 -1
- package/dist/runtime/pages/System/setting.vue +2 -0
- package/dist/runtime/pages/System/view_as.vue +4 -1
- package/dist/runtime/pages/SystemValue/index.vue +4 -1
- package/dist/runtime/pages/User/createAccessToken.vue +2 -1
- package/dist/runtime/pages/User/index.vue +2 -2
- package/dist/runtime/pages/User/profile.d.vue.ts +1 -1
- package/dist/runtime/pages/User/profile.vue +48 -5
- package/dist/runtime/pages/User/profile.vue.d.ts +1 -1
- package/dist/runtime/plugin.js +13 -26
- package/package.json +2 -1
- package/dist/runtime/components/MyTest.vue +0 -11
- package/dist/runtime/components/l-dialog-database-field-add.d.vue.ts +0 -9
- package/dist/runtime/components/l-dialog-database-field-add.vue.d.ts +0 -9
- package/dist/runtime/components/l-input-xlsx.d.vue.ts +0 -11
- package/dist/runtime/components/l-input-xlsx.vue +0 -60
- package/dist/runtime/components/l-input-xlsx.vue.d.ts +0 -11
- package/dist/runtime/components/l-select.d.vue.ts +0 -20
- package/dist/runtime/components/l-select.vue.d.ts +0 -20
- package/dist/runtime/components/l-tab.vue +0 -30
- package/dist/runtime/components/l-time-picker.vue +0 -71
- package/dist/runtime/components/{l-action-btn.d.vue.ts → L/ActionBtn.d.vue.ts} +0 -0
- package/dist/runtime/components/{l-action-btn.vue → L/ActionBtn.vue} +0 -0
- package/dist/runtime/components/{l-action-btn.vue.d.ts → L/ActionBtn.vue.d.ts} +0 -0
- package/dist/runtime/components/{l-add-btn.d.vue.ts → L/AddBtn.d.vue.ts} +0 -0
- package/dist/runtime/components/{l-add-btn.vue → L/AddBtn.vue} +0 -0
- package/dist/runtime/components/{l-add-btn.vue.d.ts → L/AddBtn.vue.d.ts} +0 -0
- package/dist/runtime/components/{l-alert.d.vue.ts → L/Alert.d.vue.ts} +0 -0
- package/dist/runtime/components/{l-alert.vue → L/Alert.vue} +0 -0
- package/dist/runtime/components/{l-alert.vue.d.ts → L/Alert.vue.d.ts} +0 -0
- package/dist/runtime/components/{l-app.d.vue.ts → L/App.d.vue.ts} +0 -0
- package/dist/runtime/components/{l-app.vue → L/App.vue} +0 -0
- package/dist/runtime/components/{l-app.vue.d.ts → L/App.vue.d.ts} +0 -0
- package/dist/runtime/components/{l-app-main.d.vue.ts → L/AppMain.d.vue.ts} +0 -0
- package/dist/runtime/components/{l-app-main.vue → L/AppMain.vue} +0 -0
- package/dist/runtime/components/{l-app-main.vue.d.ts → L/AppMain.vue.d.ts} +0 -0
- package/dist/runtime/components/{l-back-btn.d.vue.ts → L/BackBtn.d.vue.ts} +0 -0
- package/dist/runtime/components/{l-back-btn.vue → L/BackBtn.vue} +0 -0
- package/dist/runtime/components/{l-back-btn.vue.d.ts → L/BackBtn.vue.d.ts} +0 -0
- package/dist/runtime/components/{l-banner.d.vue.ts → L/Banner.d.vue.ts} +0 -0
- package/dist/runtime/components/{l-banner.vue → L/Banner.vue} +0 -0
- package/dist/runtime/components/{l-banner.vue.d.ts → L/Banner.vue.d.ts} +0 -0
- package/dist/runtime/components/{l-bar.d.vue.ts → L/Bar.d.vue.ts} +0 -0
- package/dist/runtime/components/{l-bar.vue.d.ts → L/Bar.vue.d.ts} +0 -0
- package/dist/runtime/components/{l-card.d.vue.ts → L/Card.d.vue.ts} +0 -0
- package/dist/runtime/components/{l-card.vue.d.ts → L/Card.vue.d.ts} +0 -0
- package/dist/runtime/components/{l-checkbox.d.vue.ts → L/Checkbox.d.vue.ts} +0 -0
- package/dist/runtime/components/{l-checkbox.vue.d.ts → L/Checkbox.vue.d.ts} +0 -0
- package/dist/runtime/components/{l-col.d.vue.ts → L/Col.d.vue.ts} +1 -1
- package/dist/runtime/components/{l-col.vue → L/Col.vue} +0 -0
- package/dist/runtime/components/{l-col.vue.d.ts → L/Col.vue.d.ts} +1 -1
- package/dist/runtime/components/{l-customizer.vue.d.ts → L/Customizer.d.vue.ts} +2 -2
- package/dist/runtime/components/{l-customizer.vue → L/Customizer.vue} +0 -0
- package/dist/runtime/components/{l-customizer.d.vue.ts → L/Customizer.vue.d.ts} +2 -2
- package/dist/runtime/components/{l-date-picker.d.vue.ts → L/DatePicker.d.vue.ts} +1 -1
- package/dist/runtime/components/{l-date-picker.vue.d.ts → L/DatePicker.vue.d.ts} +1 -1
- package/dist/runtime/components/{l-dialog-upload-files.d.vue.ts → L/DialogUploadFiles.d.vue.ts} +0 -0
- package/dist/runtime/components/{l-dialog-upload-files.vue → L/DialogUploadFiles.vue} +0 -0
- package/dist/runtime/components/{l-dialog-upload-files.vue.d.ts → L/DialogUploadFiles.vue.d.ts} +0 -0
- package/dist/runtime/components/{l-drag-drop.d.vue.ts → L/DragDrop.d.vue.ts} +0 -0
- package/dist/runtime/components/{l-drag-drop.vue → L/DragDrop.vue} +0 -0
- package/dist/runtime/components/{l-drag-drop.vue.d.ts → L/DragDrop.vue.d.ts} +0 -0
- package/dist/runtime/components/{l-drag-drop-container.d.vue.ts → L/DragDropContainer.d.vue.ts} +0 -0
- package/dist/runtime/components/{l-drag-drop-container.vue → L/DragDropContainer.vue} +0 -0
- package/dist/runtime/components/{l-drag-drop-container.vue.d.ts → L/DragDropContainer.vue.d.ts} +0 -0
- package/dist/runtime/components/{l-drag-drop-group.d.vue.ts → L/DragDropGroup.d.vue.ts} +0 -0
- package/dist/runtime/components/{l-drag-drop-group.vue → L/DragDropGroup.vue} +0 -0
- package/dist/runtime/components/{l-drag-drop-group.vue.d.ts → L/DragDropGroup.vue.d.ts} +0 -0
- package/dist/runtime/components/{l-edit-btn.d.vue.ts → L/EditBtn.d.vue.ts} +0 -0
- package/dist/runtime/components/{l-edit-btn.vue → L/EditBtn.vue} +0 -0
- package/dist/runtime/components/{l-edit-btn.vue.d.ts → L/EditBtn.vue.d.ts} +0 -0
- package/dist/runtime/components/{l-editor.d.vue.ts → L/Editor.d.vue.ts} +0 -0
- package/dist/runtime/components/{l-editor.vue.d.ts → L/Editor.vue.d.ts} +0 -0
- package/dist/runtime/components/{l-facebook-button.d.vue.ts → L/FacebookButton.d.vue.ts} +0 -0
- package/dist/runtime/components/{l-facebook-button.vue → L/FacebookButton.vue} +0 -0
- package/dist/runtime/components/{l-facebook-button.vue.d.ts → L/FacebookButton.vue.d.ts} +0 -0
- package/dist/runtime/components/{l-fav-menu.d.vue.ts → L/FavMenu.d.vue.ts} +2 -2
- package/dist/runtime/components/{l-fav-menu.vue → L/FavMenu.vue} +0 -0
- package/dist/runtime/components/{l-menu.d.vue.ts → L/FavMenu.vue.d.ts} +2 -2
- package/dist/runtime/components/{l-field.d.vue.ts → L/Field.d.vue.ts} +0 -0
- package/dist/runtime/components/{l-field.vue → L/Field.vue} +0 -0
- package/dist/runtime/components/{l-field.vue.d.ts → L/Field.vue.d.ts} +0 -0
- package/dist/runtime/components/{l-file.d.vue.ts → L/File.d.vue.ts} +0 -0
- package/dist/runtime/components/{l-file.vue → L/File.vue} +0 -0
- package/dist/runtime/components/{l-file.vue.d.ts → L/File.vue.d.ts} +0 -0
- package/dist/runtime/components/{l-file-manager.d.vue.ts → L/FileManager.d.vue.ts} +1 -1
- package/dist/runtime/components/{l-file-manager.vue.d.ts → L/FileManager.vue.d.ts} +1 -1
- package/dist/runtime/components/{l-file-manager-breadcrumbs.d.vue.ts → L/FileManagerBreadcrumbs.d.vue.ts} +0 -0
- package/dist/runtime/components/{l-file-manager-breadcrumbs.vue → L/FileManagerBreadcrumbs.vue} +0 -0
- package/dist/runtime/components/{l-file-manager-breadcrumbs.vue.d.ts → L/FileManagerBreadcrumbs.vue.d.ts} +0 -0
- package/dist/runtime/components/{l-file-manager-labels.d.vue.ts → L/FileManagerLabels.d.vue.ts} +0 -0
- package/dist/runtime/components/{l-file-manager-labels.vue → L/FileManagerLabels.vue} +0 -0
- package/dist/runtime/components/{l-file-manager-labels.vue.d.ts → L/FileManagerLabels.vue.d.ts} +0 -0
- package/dist/runtime/components/{l-file-manager-move.d.vue.ts → L/FileManagerMove.d.vue.ts} +0 -0
- package/dist/runtime/components/{l-file-manager-move.vue → L/FileManagerMove.vue} +0 -0
- package/dist/runtime/components/{l-file-manager-move.vue.d.ts → L/FileManagerMove.vue.d.ts} +0 -0
- package/dist/runtime/components/{l-file-manager-preview.d.vue.ts → L/FileManagerPreview.d.vue.ts} +0 -0
- package/dist/runtime/components/{l-file-manager-preview.vue → L/FileManagerPreview.vue} +0 -0
- package/dist/runtime/components/{l-file-manager-preview.vue.d.ts → L/FileManagerPreview.vue.d.ts} +0 -0
- package/dist/runtime/components/{l-file-upload.d.vue.ts → L/FileUpload.d.vue.ts} +1 -1
- package/dist/runtime/components/{l-file-upload.vue → L/FileUpload.vue} +0 -0
- package/dist/runtime/components/{l-file-upload.vue.d.ts → L/FileUpload.vue.d.ts} +1 -1
- package/dist/runtime/components/{l-form.d.vue.ts → L/Form.d.vue.ts} +0 -0
- package/dist/runtime/components/{l-form.vue → L/Form.vue} +0 -0
- package/dist/runtime/components/{l-form.vue.d.ts → L/Form.vue.d.ts} +0 -0
- package/dist/runtime/components/{l-form-dialog.d.vue.ts → L/FormDialog.d.vue.ts} +2 -2
- package/dist/runtime/components/{l-form-dialog.vue → L/FormDialog.vue} +0 -0
- package/dist/runtime/components/{l-form-dialog.vue.d.ts → L/FormDialog.vue.d.ts} +2 -2
- package/dist/runtime/components/{l-group-select.d.vue.ts → L/GroupSelect.d.vue.ts} +0 -0
- package/dist/runtime/components/{l-group-select.vue → L/GroupSelect.vue} +0 -0
- package/dist/runtime/components/{l-group-select.vue.d.ts → L/GroupSelect.vue.d.ts} +0 -0
- package/dist/runtime/components/{l-icon-picker.d.vue.ts → L/IconPicker.d.vue.ts} +0 -0
- package/dist/runtime/components/{l-icon-picker.vue.d.ts → L/IconPicker.vue.d.ts} +0 -0
- package/dist/runtime/components/{l-item.d.vue.ts → L/Item.d.vue.ts} +0 -0
- package/dist/runtime/components/{l-item.vue.d.ts → L/Item.vue.d.ts} +0 -0
- package/dist/runtime/components/{l-link.d.vue.ts → L/Link.d.vue.ts} +0 -0
- package/dist/runtime/components/{l-link.vue → L/Link.vue} +0 -0
- package/dist/runtime/components/{l-link.vue.d.ts → L/Link.vue.d.ts} +0 -0
- package/dist/runtime/components/{l-list.d.vue.ts → L/List.d.vue.ts} +0 -0
- package/dist/runtime/components/{l-list.vue.d.ts → L/List.vue.d.ts} +0 -0
- package/dist/runtime/components/{l-login.d.vue.ts → L/Login.d.vue.ts} +0 -0
- package/dist/runtime/components/{l-login.vue → L/Login.vue} +0 -0
- package/dist/runtime/components/{l-login.vue.d.ts → L/Login.vue.d.ts} +0 -0
- package/dist/runtime/components/{l-fav-menu.vue.d.ts → L/Menu.d.vue.ts} +2 -2
- package/dist/runtime/components/{l-menu.vue → L/Menu.vue} +0 -0
- package/dist/runtime/components/{l-menu.vue.d.ts → L/Menu.vue.d.ts} +2 -2
- package/dist/runtime/components/{l-microsoft-button.d.vue.ts → L/MicrosoftButton.d.vue.ts} +0 -0
- package/dist/runtime/components/{l-microsoft-button.vue → L/MicrosoftButton.vue} +0 -0
- package/dist/runtime/components/{l-microsoft-button.vue.d.ts → L/MicrosoftButton.vue.d.ts} +0 -0
- package/dist/runtime/components/{l-page.d.vue.ts → L/Page.d.vue.ts} +1 -1
- package/dist/runtime/components/{l-page.vue.d.ts → L/Page.vue.d.ts} +1 -1
- package/dist/runtime/components/{l-repeater.d.vue.ts → L/Repeater.d.vue.ts} +2 -2
- package/dist/runtime/components/{l-repeater.vue → L/Repeater.vue} +0 -0
- package/dist/runtime/components/{l-repeater.vue.d.ts → L/Repeater.vue.d.ts} +2 -2
- package/dist/runtime/components/{l-row.d.vue.ts → L/Row.d.vue.ts} +0 -0
- package/dist/runtime/components/{l-row.vue → L/Row.vue} +0 -0
- package/dist/runtime/components/{l-row.vue.d.ts → L/Row.vue.d.ts} +0 -0
- package/dist/runtime/components/{l-save-btn.d.vue.ts → L/SaveBtn.d.vue.ts} +0 -0
- package/dist/runtime/components/{l-save-btn.vue → L/SaveBtn.vue} +0 -0
- package/dist/runtime/components/{l-save-btn.vue.d.ts → L/SaveBtn.vue.d.ts} +0 -0
- package/dist/runtime/components/{l-setup-2fa-dialog.d.vue.ts → L/Setup2faDialog.d.vue.ts} +0 -0
- package/dist/runtime/components/{l-setup-2fa-dialog.vue → L/Setup2faDialog.vue} +0 -0
- package/dist/runtime/components/{l-setup-2fa-dialog.vue.d.ts → L/Setup2faDialog.vue.d.ts} +0 -0
- package/dist/runtime/components/{l-small-box.d.vue.ts → L/SmallBox.d.vue.ts} +1 -1
- package/dist/runtime/components/{l-small-box.vue → L/SmallBox.vue} +0 -0
- package/dist/runtime/components/{l-small-box.vue.d.ts → L/SmallBox.vue.d.ts} +1 -1
- /package/dist/runtime/components/{l-statistic.d.vue.ts → L/Statistic.d.vue.ts} +0 -0
- /package/dist/runtime/components/{l-statistic.vue → L/Statistic.vue} +0 -0
- /package/dist/runtime/components/{l-statistic.vue.d.ts → L/Statistic.vue.d.ts} +0 -0
- /package/dist/runtime/components/{l-view-btn.d.vue.ts → L/System/Setting/logs.d.vue.ts} +0 -0
- /package/dist/runtime/components/{l-view-btn.vue.d.ts → L/System/Setting/logs.vue.d.ts} +0 -0
- /package/dist/runtime/components/{l-tabs.d.vue.ts → L/Tabs.d.vue.ts} +0 -0
- /package/dist/runtime/components/{l-tabs.vue.d.ts → L/Tabs.vue.d.ts} +0 -0
- /package/dist/runtime/components/{l-test2.d.vue.ts → L/Test2.d.vue.ts} +0 -0
- /package/dist/runtime/components/{l-test2.vue → L/Test2.vue} +0 -0
- /package/dist/runtime/components/{l-test2.vue.d.ts → L/Test2.vue.d.ts} +0 -0
- /package/dist/runtime/components/{user-list.d.vue.ts → L/UserList.d.vue.ts} +0 -0
- /package/dist/runtime/components/{user-list.vue → L/UserList.vue} +0 -0
- /package/dist/runtime/components/{user-list.vue.d.ts → L/UserList.vue.d.ts} +0 -0
- /package/dist/runtime/components/{l-view-btn.vue → L/ViewBtn.vue} +0 -0
|
@@ -264,7 +264,11 @@ const menusOnly = computed(() => {
|
|
|
264
264
|
<l-input label="Label" v-model="selectedNode.label" />
|
|
265
265
|
<l-input label="To" v-model="selectedNode.to" />
|
|
266
266
|
<l-input label="Icon" v-model="selectedNode.icon"
|
|
267
|
-
hint="example: sym_o_add, fas fa-ambulance, mdi-alert-circle-outline"
|
|
267
|
+
hint="example: sym_o_add, fas fa-ambulance, mdi-alert-circle-outline">
|
|
268
|
+
<template #append>
|
|
269
|
+
<l-icon-picker v-model="selectedNode.icon" dense />
|
|
270
|
+
</template>
|
|
271
|
+
</l-input>
|
|
268
272
|
<l-input label="Permission" v-model="selectedNode.permission" />
|
|
269
273
|
<l-input label="UUID" v-model="selectedNode.uuid" readonly />
|
|
270
274
|
</div>
|
|
@@ -52,6 +52,7 @@ const onSubmit = async (d) => {
|
|
|
52
52
|
<q-tab name="forget-password" icon="sym_o_lock" :label="$t('Forget password')" />
|
|
53
53
|
<q-tab name="authentication" icon="sym_o_passkey" :label="$t('Authentication')" />
|
|
54
54
|
<q-tab name="developer" icon="sym_o_code" :label="$t('Developer')" />
|
|
55
|
+
<q-tab name="logs" icon="sym_o_event_note" :label="$t('Logs')" />
|
|
55
56
|
</q-tabs>
|
|
56
57
|
</template>
|
|
57
58
|
<template #after>
|
|
@@ -62,6 +63,7 @@ const onSubmit = async (d) => {
|
|
|
62
63
|
<l-system-setting-developer v-if="tab == 'developer'" v-bind="obj" @submit="onSubmit" />
|
|
63
64
|
<l-system-setting-forget-password v-if="tab == 'forget-password'" v-bind="obj" @submit="onSubmit" />
|
|
64
65
|
<l-system-setting-authentication v-if="tab == 'authentication'" v-bind="obj" @submit="onSubmit" />
|
|
66
|
+
<l-system-setting-logs v-if="tab == 'logs'" />
|
|
65
67
|
|
|
66
68
|
</template>
|
|
67
69
|
</q-splitter>
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
<script setup>
|
|
2
|
-
import { list, m, useLight } from "#imports";
|
|
2
|
+
import { list, m, useLight, navigateTo } from "#imports";
|
|
3
3
|
import { ref, computed } from "vue";
|
|
4
4
|
const light = useLight();
|
|
5
|
+
if (!light.isGranted("system.view_as")) {
|
|
6
|
+
await navigateTo("/");
|
|
7
|
+
}
|
|
5
8
|
let users = await list("User", {
|
|
6
9
|
user_id: true,
|
|
7
10
|
username: true,
|
|
@@ -7,7 +7,8 @@ const token = ref(null);
|
|
|
7
7
|
const expiresOptions = [
|
|
8
8
|
{ label: "7 \u65E5", value: 7 * 24 * 60 * 60 },
|
|
9
9
|
{ label: "30 \u65E5", value: 30 * 24 * 60 * 60 },
|
|
10
|
-
{ label: "3 \u500B\u6708", value: 90 * 24 * 60 * 60 }
|
|
10
|
+
{ label: "3 \u500B\u6708", value: 90 * 24 * 60 * 60 },
|
|
11
|
+
{ label: "\u4E0D\u9650\u6642\u9593", value: 0 }
|
|
11
12
|
];
|
|
12
13
|
const onSubmit = async (data) => {
|
|
13
14
|
token.value = null;
|
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
<l-page>
|
|
3
3
|
<l-tabs route>
|
|
4
4
|
<l-tab label="Active" name="active">
|
|
5
|
-
<user-list :status="0" name="user-active" />
|
|
5
|
+
<l-user-list :status="0" name="user-active" />
|
|
6
6
|
</l-tab>
|
|
7
7
|
<l-tab label="Inactive" name="inactive">
|
|
8
|
-
<user-list :status="1" name="user-inactive" />
|
|
8
|
+
<l-user-list :status="1" name="user-inactive" />
|
|
9
9
|
</l-tab>
|
|
10
10
|
</l-tabs>
|
|
11
11
|
</l-page>
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
+
declare const __VLS_export: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
1
2
|
declare const _default: typeof __VLS_export;
|
|
2
3
|
export default _default;
|
|
3
|
-
declare const __VLS_export: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
<script setup>
|
|
2
|
-
import { q, getGQLFields, model } from "#imports";
|
|
2
|
+
import { q, getGQLFields, model, m, useLight } from "#imports";
|
|
3
|
+
import { reactive } from "vue";
|
|
3
4
|
import { toQuery } from "@hostlink/light";
|
|
4
|
-
const { my } = await q({
|
|
5
|
+
const { my, listAPIKey: _listAPIKey } = await q({
|
|
5
6
|
my: {
|
|
6
7
|
user_id: true,
|
|
7
8
|
username: true,
|
|
@@ -36,8 +37,19 @@ const { my } = await q({
|
|
|
36
37
|
...toQuery(getGQLFields("EventLog", ["class", "id", "action", "created_time"]))
|
|
37
38
|
}
|
|
38
39
|
}
|
|
40
|
+
},
|
|
41
|
+
listAPIKey: {
|
|
42
|
+
__args: {
|
|
43
|
+
sort: "apikey_id:desc"
|
|
44
|
+
},
|
|
45
|
+
data: {
|
|
46
|
+
apikey_id: true,
|
|
47
|
+
name: true,
|
|
48
|
+
created_time: true
|
|
49
|
+
}
|
|
39
50
|
}
|
|
40
51
|
});
|
|
52
|
+
const listAPIKey = reactive(_listAPIKey);
|
|
41
53
|
const userlogColumns = model("UserLog").columns(["login_dt", "result", "user_agent"]);
|
|
42
54
|
userlogColumns.forEach((col) => {
|
|
43
55
|
col.searchable = false;
|
|
@@ -46,6 +58,25 @@ const eventLogCols = model("EventLog").columns(["class", "action", "created_time
|
|
|
46
58
|
eventLogCols.forEach((col) => {
|
|
47
59
|
col.searchable = false;
|
|
48
60
|
});
|
|
61
|
+
const apiKeyCols = model("APIKey").columns(["name", "created_time"]);
|
|
62
|
+
apiKeyCols.forEach((col) => {
|
|
63
|
+
col.searchable = false;
|
|
64
|
+
});
|
|
65
|
+
apiKeyCols.push({ name: "_delete", label: "", field: "_delete", align: "right" });
|
|
66
|
+
const light = useLight();
|
|
67
|
+
const deleteToken = async (id) => {
|
|
68
|
+
light.dialog({
|
|
69
|
+
title: "Delete Token",
|
|
70
|
+
message: "Are you sure you want to delete this token?",
|
|
71
|
+
cancel: true,
|
|
72
|
+
persistent: true
|
|
73
|
+
}).onOk(async () => {
|
|
74
|
+
await m("deleteAPIKey", { id });
|
|
75
|
+
const idx = listAPIKey.data.findIndex((r) => r.apikey_id === id);
|
|
76
|
+
if (idx !== -1) listAPIKey.data.splice(idx, 1);
|
|
77
|
+
light.notify({ type: "positive", message: "Token deleted" });
|
|
78
|
+
});
|
|
79
|
+
};
|
|
49
80
|
</script>
|
|
50
81
|
|
|
51
82
|
<template>
|
|
@@ -70,7 +101,7 @@ eventLogCols.forEach((col) => {
|
|
|
70
101
|
|
|
71
102
|
<q-separator />
|
|
72
103
|
<l-list :bordered="false">
|
|
73
|
-
<q-item-label header>{{ $t(
|
|
104
|
+
<q-item-label header>{{ $t("Details") }}</q-item-label>
|
|
74
105
|
<l-item label="Username">{{ my.username }}</l-item>
|
|
75
106
|
<l-item label="First name">{{ my.first_name }}</l-item>
|
|
76
107
|
<l-item label="Last name">{{ my.last_name }}</l-item>
|
|
@@ -84,12 +115,24 @@ eventLogCols.forEach((col) => {
|
|
|
84
115
|
|
|
85
116
|
<l-col md="8">
|
|
86
117
|
<l-tabs>
|
|
87
|
-
<l-tab label="User Log" name="user_log">
|
|
118
|
+
<l-tab label="User Log" name="user_log" icon="sym_o_manage_accounts">
|
|
88
119
|
<l-table :rows="my.userLog.data" searchable :columns="userlogColumns" hide-pagination />
|
|
89
120
|
</l-tab>
|
|
90
|
-
<l-tab label="Event Log" name="event_log">
|
|
121
|
+
<l-tab label="Event Log" name="event_log" icon="sym_o_history">
|
|
91
122
|
<l-table :rows="my.eventLog.data" :columns="eventLogCols" searchable hide-pagination />
|
|
92
123
|
</l-tab>
|
|
124
|
+
<l-tab label="Access Tokens" name="access_tokens" icon="sym_o_token">
|
|
125
|
+
<l-table :rows="listAPIKey.data" :columns="apiKeyCols" hide-pagination row-key="apikey_id">
|
|
126
|
+
<template #body-cell-_delete="props">
|
|
127
|
+
<q-td :props="props">
|
|
128
|
+
<q-btn flat round dense icon="sym_o_delete" color="negative"
|
|
129
|
+
@click="deleteToken(props.row.apikey_id)">
|
|
130
|
+
<q-tooltip>Delete</q-tooltip>
|
|
131
|
+
</q-btn>
|
|
132
|
+
</q-td>
|
|
133
|
+
</template>
|
|
134
|
+
</l-table>
|
|
135
|
+
</l-tab>
|
|
93
136
|
</l-tabs>
|
|
94
137
|
</l-col>
|
|
95
138
|
</l-row>
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
+
declare const __VLS_export: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
1
2
|
declare const _default: typeof __VLS_export;
|
|
2
3
|
export default _default;
|
|
3
|
-
declare const __VLS_export: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
package/dist/runtime/plugin.js
CHANGED
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import QMarkdownVuePlugin from "@quasar/quasar-ui-qmarkdown";
|
|
2
2
|
import "@quasar/quasar-ui-qmarkdown/dist/index.css";
|
|
3
3
|
import { createClient, setApiClient, defineModel } from "@hostlink/light";
|
|
4
|
-
import { q } from "#imports";
|
|
5
4
|
import { createI18n } from "vue-i18n";
|
|
6
5
|
import createLight from "./composables/createLight.js";
|
|
7
|
-
import {
|
|
6
|
+
import { defineNuxtPlugin, useRoute, useRuntimeConfig } from "#app";
|
|
8
7
|
import "./assets/main.css";
|
|
9
8
|
import message_en from "./locales/en.json";
|
|
10
9
|
import message_zh from "./locales/zh-hk.json";
|
|
@@ -16,26 +15,6 @@ import getApiBase from "./composables/getApiBase.js";
|
|
|
16
15
|
import useLight from "./composables/useLight.js";
|
|
17
16
|
import { zhTW } from "@formkit/i18n";
|
|
18
17
|
export default defineNuxtPlugin((nuxtApp) => {
|
|
19
|
-
addRouteMiddleware("auth", async (to, from) => {
|
|
20
|
-
if (to.path == "/") {
|
|
21
|
-
return;
|
|
22
|
-
}
|
|
23
|
-
const { my } = await q({
|
|
24
|
-
my: {
|
|
25
|
-
allowedPath: {
|
|
26
|
-
__args: {
|
|
27
|
-
path: to.path
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
});
|
|
32
|
-
if (!my) {
|
|
33
|
-
return;
|
|
34
|
-
}
|
|
35
|
-
if (!my.allowedPath) {
|
|
36
|
-
return "/page_not_found?path=" + encodeURIComponent(to.fullPath);
|
|
37
|
-
}
|
|
38
|
-
}, { global: true });
|
|
39
18
|
const client = createClient(getApiBase());
|
|
40
19
|
setApiClient(client);
|
|
41
20
|
defineModel("Permission", {}).setDataPath("app.listPermission");
|
|
@@ -43,14 +22,14 @@ export default defineNuxtPlugin((nuxtApp) => {
|
|
|
43
22
|
defineModel("Config", {}).setDataPath("app.listConfig");
|
|
44
23
|
nuxtApp.vueApp.config.errorHandler = (err, instance, info) => {
|
|
45
24
|
const $route = useRoute();
|
|
46
|
-
const
|
|
47
|
-
if (
|
|
25
|
+
const light2 = useLight();
|
|
26
|
+
if (light2.devMode) {
|
|
48
27
|
console.log(err);
|
|
49
28
|
}
|
|
50
29
|
if (err instanceof Error) {
|
|
51
|
-
|
|
30
|
+
light2.addError(err.message + " at " + $route.fullPath);
|
|
52
31
|
} else {
|
|
53
|
-
|
|
32
|
+
light2.addError(JSON.stringify(err) + " at " + $route.fullPath);
|
|
54
33
|
}
|
|
55
34
|
};
|
|
56
35
|
nuxtApp.vueApp.use(QMarkdownVuePlugin);
|
|
@@ -65,6 +44,14 @@ export default defineNuxtPlugin((nuxtApp) => {
|
|
|
65
44
|
fallbackWarn: false,
|
|
66
45
|
missingWarn: false
|
|
67
46
|
});
|
|
47
|
+
const light = useLight();
|
|
48
|
+
const runtimeLight = useRuntimeConfig().public.light;
|
|
49
|
+
if (runtimeLight?.tableActionIcons) {
|
|
50
|
+
const t = runtimeLight.tableActionIcons;
|
|
51
|
+
if (t.view) light.styles.table.actionIcons.view = t.view;
|
|
52
|
+
if (t.edit) light.styles.table.actionIcons.edit = t.edit;
|
|
53
|
+
if (t.delete) light.styles.table.actionIcons.delete = t.delete;
|
|
54
|
+
}
|
|
68
55
|
nuxtApp.vueApp.use(createLight({
|
|
69
56
|
i18n
|
|
70
57
|
}));
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hostlink/nuxt-light",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.67.0",
|
|
4
4
|
"description": "HostLink Nuxt Light Framework",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -21,6 +21,7 @@
|
|
|
21
21
|
"scripts": {
|
|
22
22
|
"prepack": "nuxt-module-build build",
|
|
23
23
|
"dev": "nuxi dev playground --public",
|
|
24
|
+
"dev:docs": "nuxi dev docs",
|
|
24
25
|
"dev:build": "nuxi build playground",
|
|
25
26
|
"dev:prepare": "nuxt-module-build build --stub && nuxt-module-build prepare && nuxi prepare playground",
|
|
26
27
|
"release:org": "npm run lint && npm run test && npm run prepack && npm publish && git push --follow-tags",
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
declare const _default: typeof __VLS_export;
|
|
2
|
-
export default _default;
|
|
3
|
-
declare const __VLS_export: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
4
|
-
hide: (...args: any[]) => void;
|
|
5
|
-
ok: (...args: any[]) => void;
|
|
6
|
-
}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{
|
|
7
|
-
onHide?: ((...args: any[]) => any) | undefined;
|
|
8
|
-
onOk?: ((...args: any[]) => any) | undefined;
|
|
9
|
-
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
declare const _default: typeof __VLS_export;
|
|
2
|
-
export default _default;
|
|
3
|
-
declare const __VLS_export: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
4
|
-
hide: (...args: any[]) => void;
|
|
5
|
-
ok: (...args: any[]) => void;
|
|
6
|
-
}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{
|
|
7
|
-
onHide?: ((...args: any[]) => any) | undefined;
|
|
8
|
-
onOk?: ((...args: any[]) => any) | undefined;
|
|
9
|
-
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
declare const modelValue: import("vue").ModelRef<unknown[], string, unknown[], unknown[]>;
|
|
2
|
-
type __VLS_ModelProps = {
|
|
3
|
-
modelValue?: typeof modelValue['value'];
|
|
4
|
-
};
|
|
5
|
-
declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
6
|
-
"update:modelValue": (value: unknown[]) => any;
|
|
7
|
-
}, string, import("vue").PublicProps, Readonly<__VLS_ModelProps> & Readonly<{
|
|
8
|
-
"onUpdate:modelValue"?: ((value: unknown[]) => any) | undefined;
|
|
9
|
-
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
10
|
-
declare const _default: typeof __VLS_export;
|
|
11
|
-
export default _default;
|
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
<script setup>
|
|
2
|
-
import * as XLSX from "xlsx";
|
|
3
|
-
import { ref } from "vue";
|
|
4
|
-
const modelValue = defineModel({
|
|
5
|
-
type: Array,
|
|
6
|
-
default: []
|
|
7
|
-
});
|
|
8
|
-
const loading = ref(false);
|
|
9
|
-
const hasFile = ref(false);
|
|
10
|
-
const file = ref(null);
|
|
11
|
-
const onChange = () => {
|
|
12
|
-
hasFile.value = true;
|
|
13
|
-
loading.value = true;
|
|
14
|
-
file.value.files[0].arrayBuffer().then((data) => {
|
|
15
|
-
const workbook = XLSX.read(data);
|
|
16
|
-
const sheet = workbook.Sheets[workbook.SheetNames[0]];
|
|
17
|
-
const json = XLSX.utils.sheet_to_json(sheet);
|
|
18
|
-
loading.value = false;
|
|
19
|
-
modelValue.value = json;
|
|
20
|
-
});
|
|
21
|
-
};
|
|
22
|
-
const onClear = () => {
|
|
23
|
-
hasFile.value = false;
|
|
24
|
-
modelValue.value = [];
|
|
25
|
-
};
|
|
26
|
-
const showView = ref(false);
|
|
27
|
-
</script>
|
|
28
|
-
|
|
29
|
-
<template>
|
|
30
|
-
<q-field v-bind="{ ...$light.styles.input, ...$attrs }" :loading="loading" :model-value="localData"
|
|
31
|
-
@update:model-value="onClear">
|
|
32
|
-
<template v-slot:control>
|
|
33
|
-
<template v-if="!hasFile">
|
|
34
|
-
<input type="file" accept=".xlsx" @change="onChange" ref="file" />
|
|
35
|
-
</template>
|
|
36
|
-
|
|
37
|
-
<template v-else>
|
|
38
|
-
{{ modelValue.length }} records
|
|
39
|
-
</template>
|
|
40
|
-
|
|
41
|
-
</template>
|
|
42
|
-
|
|
43
|
-
<template v-slot:prepend v-if="hasFile">
|
|
44
|
-
<q-icon name="sym_o_table_view" @click="showView = true" class="cursor-pointer" />
|
|
45
|
-
</template>
|
|
46
|
-
|
|
47
|
-
<template v-slot:append v-if="hasFile">
|
|
48
|
-
<q-icon name="cancel" @click="onClear" class="cursor-pointer" />
|
|
49
|
-
</template>
|
|
50
|
-
|
|
51
|
-
<q-dialog v-model="showView" full-width>
|
|
52
|
-
<q-card>
|
|
53
|
-
<q-card-section>
|
|
54
|
-
<q-table :rows="modelValue" dense separator="cell" flat bordered></q-table>
|
|
55
|
-
</q-card-section>
|
|
56
|
-
</q-card>
|
|
57
|
-
</q-dialog>
|
|
58
|
-
|
|
59
|
-
</q-field>
|
|
60
|
-
</template>
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
declare const modelValue: import("vue").ModelRef<unknown[], string, unknown[], unknown[]>;
|
|
2
|
-
type __VLS_ModelProps = {
|
|
3
|
-
modelValue?: typeof modelValue['value'];
|
|
4
|
-
};
|
|
5
|
-
declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
6
|
-
"update:modelValue": (value: unknown[]) => any;
|
|
7
|
-
}, string, import("vue").PublicProps, Readonly<__VLS_ModelProps> & Readonly<{
|
|
8
|
-
"onUpdate:modelValue"?: ((value: unknown[]) => any) | undefined;
|
|
9
|
-
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
10
|
-
declare const _default: typeof __VLS_export;
|
|
11
|
-
export default _default;
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import type { QSelectProps } from "quasar";
|
|
2
|
-
declare const __VLS_export: import("vue").DefineComponent<QSelectProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<QSelectProps> & Readonly<{}>, {
|
|
3
|
-
dark: boolean | null;
|
|
4
|
-
rounded: boolean;
|
|
5
|
-
square: boolean;
|
|
6
|
-
dense: boolean;
|
|
7
|
-
outlined: boolean;
|
|
8
|
-
optionValue: string | ((option: string | any) => any);
|
|
9
|
-
filled: boolean;
|
|
10
|
-
stackLabel: boolean;
|
|
11
|
-
standout: string | boolean;
|
|
12
|
-
hideBottomSpace: boolean;
|
|
13
|
-
emitValue: boolean;
|
|
14
|
-
mapOptions: boolean;
|
|
15
|
-
inputDebounce: string | number;
|
|
16
|
-
optionLabel: string | ((option: string | any) => string);
|
|
17
|
-
optionsDark: boolean | null;
|
|
18
|
-
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
19
|
-
declare const _default: typeof __VLS_export;
|
|
20
|
-
export default _default;
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import type { QSelectProps } from "quasar";
|
|
2
|
-
declare const __VLS_export: import("vue").DefineComponent<QSelectProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<QSelectProps> & Readonly<{}>, {
|
|
3
|
-
dark: boolean | null;
|
|
4
|
-
rounded: boolean;
|
|
5
|
-
square: boolean;
|
|
6
|
-
dense: boolean;
|
|
7
|
-
outlined: boolean;
|
|
8
|
-
optionValue: string | ((option: string | any) => any);
|
|
9
|
-
filled: boolean;
|
|
10
|
-
stackLabel: boolean;
|
|
11
|
-
standout: string | boolean;
|
|
12
|
-
hideBottomSpace: boolean;
|
|
13
|
-
emitValue: boolean;
|
|
14
|
-
mapOptions: boolean;
|
|
15
|
-
inputDebounce: string | number;
|
|
16
|
-
optionLabel: string | ((option: string | any) => string);
|
|
17
|
-
optionsDark: boolean | null;
|
|
18
|
-
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
19
|
-
declare const _default: typeof __VLS_export;
|
|
20
|
-
export default _default;
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
<script setup>
|
|
2
|
-
import { getCurrentInstance } from "vue";
|
|
3
|
-
const instance = getCurrentInstance();
|
|
4
|
-
const props = defineProps({
|
|
5
|
-
name: { type: [Number, String], required: false },
|
|
6
|
-
disable: { type: Boolean, required: false },
|
|
7
|
-
icon: { type: null, required: false },
|
|
8
|
-
label: { type: null, required: false },
|
|
9
|
-
alert: { type: [Boolean, String], required: false, skipCheck: true },
|
|
10
|
-
alertIcon: { type: null, required: false },
|
|
11
|
-
noCaps: { type: Boolean, required: false, skipCheck: true },
|
|
12
|
-
contentClass: { type: null, required: false },
|
|
13
|
-
ripple: { type: Boolean, required: false, skipCheck: true },
|
|
14
|
-
tabindex: { type: null, required: false }
|
|
15
|
-
});
|
|
16
|
-
const parent_type = instance?.parent?.type.name;
|
|
17
|
-
</script>
|
|
18
|
-
|
|
19
|
-
<template>
|
|
20
|
-
<template v-if="parent_type == 'QTabPanels'">
|
|
21
|
-
<q-tab-panel :name="name">
|
|
22
|
-
<slot></slot>
|
|
23
|
-
</q-tab-panel>
|
|
24
|
-
</template>
|
|
25
|
-
|
|
26
|
-
<template v-if="parent_type == 'QTabs'">
|
|
27
|
-
<q-tab v-bind="$props" :label="$t(String($props.label))">
|
|
28
|
-
</q-tab>
|
|
29
|
-
</template>
|
|
30
|
-
</template>
|
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
<script setup>
|
|
2
|
-
import { computed, ref, useAttrs } from "vue";
|
|
3
|
-
import { useLight } from "#imports";
|
|
4
|
-
import { useI18n } from "vue-i18n";
|
|
5
|
-
const light = useLight();
|
|
6
|
-
const { t } = useI18n();
|
|
7
|
-
const modelValue = defineModel({ type: null });
|
|
8
|
-
const props = defineProps({
|
|
9
|
-
modelValue: { type: null, required: false },
|
|
10
|
-
required: { type: Boolean, required: false, default: false },
|
|
11
|
-
label: { type: String, required: false },
|
|
12
|
-
hint: { type: String, required: false },
|
|
13
|
-
nowBtn: { type: Boolean, required: false },
|
|
14
|
-
withSeconds: { type: Boolean, required: false },
|
|
15
|
-
format24h: { type: Boolean, required: false, default: true },
|
|
16
|
-
mask: { type: String, required: false, default: "time" },
|
|
17
|
-
hideBottomSpace: { type: Boolean, required: false, default: true },
|
|
18
|
-
color: { type: String, required: false }
|
|
19
|
-
});
|
|
20
|
-
const popup = ref(null);
|
|
21
|
-
const localValue = computed({
|
|
22
|
-
get: () => {
|
|
23
|
-
return modelValue.value;
|
|
24
|
-
},
|
|
25
|
-
set: (value) => {
|
|
26
|
-
modelValue.value = value;
|
|
27
|
-
}
|
|
28
|
-
});
|
|
29
|
-
const rules = [];
|
|
30
|
-
if (props.required) {
|
|
31
|
-
rules.push((v) => !!v || t("This field is required"));
|
|
32
|
-
}
|
|
33
|
-
rules.push((v) => {
|
|
34
|
-
if (v) {
|
|
35
|
-
const time = v.split(":");
|
|
36
|
-
if (time.length == 2) {
|
|
37
|
-
if (time[0] >= 0 && time[0] <= 23 && time[1] >= 0 && time[1] <= 59) {
|
|
38
|
-
return true;
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
if (time.length == 3) {
|
|
42
|
-
if (time[0] >= 0 && time[0] <= 23 && time[1] >= 0 && time[1] <= 59 && time[2] >= 0 && time[2] <= 59) {
|
|
43
|
-
return true;
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
return t("Invalid time format");
|
|
47
|
-
}
|
|
48
|
-
return true;
|
|
49
|
-
});
|
|
50
|
-
</script>
|
|
51
|
-
|
|
52
|
-
<template>
|
|
53
|
-
<q-input v-bind="$light.getInputProps(props)" v-model="localValue" :rules="rules"
|
|
54
|
-
:hide-bottom-space="hideBottomSpace">
|
|
55
|
-
<template v-slot:prepend>
|
|
56
|
-
<q-btn icon="sym_o_access_time" round dense flat>
|
|
57
|
-
<q-popup-proxy cover transition-show="scale" transition-hide="scale" ref="popup">
|
|
58
|
-
<q-time v-model="localValue" :format24h="format24h" :now-btn="nowBtn" :with-seconds="withSeconds">
|
|
59
|
-
<div class="row items-center justify-end">
|
|
60
|
-
<q-btn v-close-popup label="Close" flat />
|
|
61
|
-
</div>
|
|
62
|
-
</q-time>
|
|
63
|
-
</q-popup-proxy>
|
|
64
|
-
</q-btn>
|
|
65
|
-
</template>
|
|
66
|
-
|
|
67
|
-
<template v-for="(s, name) in $slots" v-slot:[name]="props" :key="name">
|
|
68
|
-
<slot :name="name" v-bind="props ?? {}"></slot>
|
|
69
|
-
</template>
|
|
70
|
-
</q-input>
|
|
71
|
-
</template>
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -9,8 +9,8 @@ type __VLS_Slots = {} & {
|
|
|
9
9
|
default?: (props: typeof __VLS_1) => any;
|
|
10
10
|
};
|
|
11
11
|
declare const __VLS_base: import("vue").DefineComponent<LColProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<LColProps> & Readonly<{}>, {
|
|
12
|
-
sm: number | string;
|
|
13
12
|
xs: number | string;
|
|
13
|
+
sm: number | string;
|
|
14
14
|
md: number | string;
|
|
15
15
|
gutter: "xs" | "sm" | "md" | "lg" | "xl" | "none";
|
|
16
16
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
File without changes
|