diff --git a/components/Setting/TipePengguna/TableViewPermission.vue b/components/Setting/TipePengguna/TableViewPermission.vue new file mode 100644 index 0000000..075b4d9 --- /dev/null +++ b/components/Setting/TipePengguna/TableViewPermission.vue @@ -0,0 +1,159 @@ + + + + + \ No newline at end of file diff --git a/components/Setting/ViewPermission/CrudCardList.vue b/components/Setting/ViewPermission/CrudCardList.vue new file mode 100644 index 0000000..c97d235 --- /dev/null +++ b/components/Setting/ViewPermission/CrudCardList.vue @@ -0,0 +1,209 @@ + + + diff --git a/components/Setting/ViewPermission/Form.vue b/components/Setting/ViewPermission/Form.vue new file mode 100644 index 0000000..11014b0 --- /dev/null +++ b/components/Setting/ViewPermission/Form.vue @@ -0,0 +1,99 @@ + + + \ No newline at end of file diff --git a/components/Setting/ViewPermission/element/selectElement.vue b/components/Setting/ViewPermission/element/selectElement.vue new file mode 100644 index 0000000..b844da0 --- /dev/null +++ b/components/Setting/ViewPermission/element/selectElement.vue @@ -0,0 +1,20 @@ + + \ No newline at end of file diff --git a/components/Setting/ViewPermission/element/table.vue b/components/Setting/ViewPermission/element/table.vue new file mode 100644 index 0000000..d53ae2e --- /dev/null +++ b/components/Setting/ViewPermission/element/table.vue @@ -0,0 +1,97 @@ + + diff --git a/components/app/cardList/CrudCardList.vue b/components/app/cardList/CrudCardList.vue new file mode 100644 index 0000000..fdd276e --- /dev/null +++ b/components/app/cardList/CrudCardList.vue @@ -0,0 +1,232 @@ + + + diff --git a/components/app/table/CrudTable.vue b/components/app/table/CrudTable.vue new file mode 100644 index 0000000..b81dc9b --- /dev/null +++ b/components/app/table/CrudTable.vue @@ -0,0 +1,280 @@ + + + diff --git a/components/app/table/StepTable.vue b/components/app/table/StepTable.vue new file mode 100644 index 0000000..306282b --- /dev/null +++ b/components/app/table/StepTable.vue @@ -0,0 +1,114 @@ + + + diff --git a/components/app/table/StepTable2.vue b/components/app/table/StepTable2.vue new file mode 100644 index 0000000..f31ff8f --- /dev/null +++ b/components/app/table/StepTable2.vue @@ -0,0 +1,301 @@ + + + diff --git a/components/app/table/steps/Thankyou.vue b/components/app/table/steps/Thankyou.vue new file mode 100644 index 0000000..0f73ce1 --- /dev/null +++ b/components/app/table/steps/Thankyou.vue @@ -0,0 +1,25 @@ + + + diff --git a/components/layout/full/vertical-header/VerticalHeader.vue b/components/layout/full/vertical-header/VerticalHeader.vue index 8c9314e..b4f85dd 100755 --- a/components/layout/full/vertical-header/VerticalHeader.vue +++ b/components/layout/full/vertical-header/VerticalHeader.vue @@ -63,7 +63,7 @@ watch(priority, (newPriority) => { - + diff --git a/components/layout/full/vertical-sidebar/MinIconItems.ts b/components/layout/full/vertical-sidebar/MinIconItems.ts index f6c341e..391d37c 100755 --- a/components/layout/full/vertical-sidebar/MinIconItems.ts +++ b/components/layout/full/vertical-sidebar/MinIconItems.ts @@ -44,6 +44,16 @@ const MiniSideIcons: minisidebar[] = [ icon:'mirror-left-line-duotone', tooltip:'Others', id: 8 + }, + { + icon:'settings-line-duotone', + tooltip:'Settings', + id: 9 + }, + { + icon:'notes-line-duotone', + tooltip:'App', + id: 10 } ] diff --git a/components/layout/full/vertical-sidebar/sidebarItem.ts b/components/layout/full/vertical-sidebar/sidebarItem.ts index b715a23..1b1236b 100755 --- a/components/layout/full/vertical-sidebar/sidebarItem.ts +++ b/components/layout/full/vertical-sidebar/sidebarItem.ts @@ -225,7 +225,7 @@ const sidebarItem: menu[] = [ { title: 'Cards Widgets', icon: 'cardholder-line-duotone', - to: '/widgets/cards' + to: '/widgets/cards/cards' }, { title: 'Charts Widgets', @@ -393,32 +393,32 @@ const sidebarItem: menu[] = [ { title: 'Basic Table', icon: 'tablet-line-duotone', - to: '/tables/basic' + to: '/tables/tablebasic' }, { title: 'Dark Table', icon: 'bedside-table-4-outline', - to: '/tables/dark' + to: '/tables/tabledark' }, { title: 'Density Table', icon: 'bedside-table-3-linear', - to: '/tables/density' + to: '/tables/tabledensity' }, { title: 'Fixed Header Table', icon: 'archive-up-minimlistic-broken', - to: '/tables/fixed-header' + to: '/tables/tableheaderfixed' }, { title: 'Height Table', icon: 'archive-down-minimlistic-broken', - to: '/tables/height' + to: '/tables/tableheight' }, { title: 'Editable Table', icon: 'document-add-linear', - to: '/tables/editable' + to: '/tables/tableeditable' } ] }, @@ -430,22 +430,22 @@ const sidebarItem: menu[] = [ { title: 'Basic Table', icon: 'database-outline', - to: '/tables/datatables/basic' + to: '/tables/datatables/basictable' }, { title: 'Header Table', icon: 'folder-open-broken', - to: '/tables/datatables/header' + to: '/tables/datatables/headertables' }, { title: 'Selection Table', icon: 'chart-square-broken', - to: '/tables/datatables/selection' + to: '/tables/datatables/selectable' }, { title: 'Sorting Table', icon: 'card-send-line-duotone', - to: '/tables/datatables/sorting' + to: '/tables/datatables/sortingtable' }, { title: 'Pagination Table', @@ -524,7 +524,22 @@ const sidebarItem: menu[] = [ { title: 'Alert', icon: 'info-circle-linear', - to: '/ui-components/alert' + to: '/ui-components/alerts' + }, + { + title: 'Buttons', + icon: 'info-circle-linear', + to: '/ui-components/buttons' + }, + { + title: 'Cards', + icon: 'info-circle-linear', + to: '/ui-components/cards' + }, + { + title: 'Tables', + icon: 'info-circle-linear', + to: '/ui-components/tables' }, { title: 'Accordion', @@ -539,12 +554,12 @@ const sidebarItem: menu[] = [ { title: 'Chip', icon: 'tag-horizontal-line-duotone', - to: '/ui-components/chip' + to: '/ui-components/uichip' }, { title: 'Dialog', icon: 'bolt-line-duotone', - to: '/ui-components/dialogs' + to: '/ui-components/uidialog' }, { title: 'List', @@ -703,6 +718,48 @@ const sidebarItem: menu[] = [ BgColor: 'success' } ] + }, + { + header: 'Settings', + id: 9, + children: [ + { + title: 'Tipe Pengguna', + icon: 'check-circle-bold', + to: '/setting/tipepengguna/' + }, + { + title: 'view permisson', + icon: 'check-circle-bold', + to: '/setting/viewpermission/' + }, + ] + }, + { + header: 'Examples', + id: 10, + children: [ + { + title: 'card list', + icon: 'table-line-duotone', + to: '/app/cardList' + }, + { + title: 'CRUD table', + icon: 'table-line-duotone', + to: '/app/table' + }, + { + title: 'step form', + icon: 'table-line-duotone', + to: '/app/table/StepTable' + }, + { + title: 'CRUD table with steps', + icon: 'table-line-duotone', + to: '/app/table/StepTable2' + }, + ] } ]; diff --git a/components/shared/BaseBreadcrumb.vue b/components/shared/BaseBreadcrumb.vue new file mode 100644 index 0000000..aa6499c --- /dev/null +++ b/components/shared/BaseBreadcrumb.vue @@ -0,0 +1,43 @@ + + + + + diff --git a/components/table/EditableTable.vue b/components/table/EditableTable.vue new file mode 100644 index 0000000..e315e0d --- /dev/null +++ b/components/table/EditableTable.vue @@ -0,0 +1,221 @@ + + diff --git a/components/table/Table1.vue b/components/table/Table1.vue new file mode 100644 index 0000000..f1bef6f --- /dev/null +++ b/components/table/Table1.vue @@ -0,0 +1,58 @@ + + diff --git a/components/table/Table2.vue b/components/table/Table2.vue new file mode 100644 index 0000000..478c36d --- /dev/null +++ b/components/table/Table2.vue @@ -0,0 +1,67 @@ + + + diff --git a/components/table/Table3.vue b/components/table/Table3.vue new file mode 100644 index 0000000..e60c462 --- /dev/null +++ b/components/table/Table3.vue @@ -0,0 +1,92 @@ + + + + diff --git a/components/table/Table4.vue b/components/table/Table4.vue new file mode 100644 index 0000000..de35591 --- /dev/null +++ b/components/table/Table4.vue @@ -0,0 +1,73 @@ + + + diff --git a/components/table/Table5.vue b/components/table/Table5.vue new file mode 100644 index 0000000..78f697b --- /dev/null +++ b/components/table/Table5.vue @@ -0,0 +1,77 @@ + + + diff --git a/components/ui-components/chip/Closable.vue b/components/ui-components/chip/Closable.vue new file mode 100644 index 0000000..b5c9b97 --- /dev/null +++ b/components/ui-components/chip/Closable.vue @@ -0,0 +1,10 @@ + diff --git a/components/ui-components/chip/CustomIcon.vue b/components/ui-components/chip/CustomIcon.vue new file mode 100644 index 0000000..6fb87ac --- /dev/null +++ b/components/ui-components/chip/CustomIcon.vue @@ -0,0 +1,18 @@ + + diff --git a/components/ui-components/chip/CustomIconOutlined.vue b/components/ui-components/chip/CustomIconOutlined.vue new file mode 100644 index 0000000..880be19 --- /dev/null +++ b/components/ui-components/chip/CustomIconOutlined.vue @@ -0,0 +1,18 @@ + + diff --git a/components/ui-components/chip/Disabled.vue b/components/ui-components/chip/Disabled.vue new file mode 100644 index 0000000..583149e --- /dev/null +++ b/components/ui-components/chip/Disabled.vue @@ -0,0 +1,18 @@ + + diff --git a/components/ui-components/chip/FilledColor.vue b/components/ui-components/chip/FilledColor.vue new file mode 100644 index 0000000..5cc554c --- /dev/null +++ b/components/ui-components/chip/FilledColor.vue @@ -0,0 +1,62 @@ + + diff --git a/components/ui-components/chip/LabelChip.vue b/components/ui-components/chip/LabelChip.vue new file mode 100644 index 0000000..d4836ec --- /dev/null +++ b/components/ui-components/chip/LabelChip.vue @@ -0,0 +1,9 @@ + diff --git a/components/ui-components/chip/Outlined.vue b/components/ui-components/chip/Outlined.vue new file mode 100644 index 0000000..61c9694 --- /dev/null +++ b/components/ui-components/chip/Outlined.vue @@ -0,0 +1,62 @@ + + diff --git a/components/ui-components/chip/Sizes.vue b/components/ui-components/chip/Sizes.vue new file mode 100644 index 0000000..d7e071a --- /dev/null +++ b/components/ui-components/chip/Sizes.vue @@ -0,0 +1,9 @@ + diff --git a/components/ui-components/dialogs/DialogsActivator.vue b/components/ui-components/dialogs/DialogsActivator.vue new file mode 100644 index 0000000..8997c21 --- /dev/null +++ b/components/ui-components/dialogs/DialogsActivator.vue @@ -0,0 +1,26 @@ + + + diff --git a/components/ui-components/dialogs/DialogsForm.vue b/components/ui-components/dialogs/DialogsForm.vue new file mode 100644 index 0000000..f0654f9 --- /dev/null +++ b/components/ui-components/dialogs/DialogsForm.vue @@ -0,0 +1,92 @@ + + + diff --git a/components/ui-components/dialogs/DialogsFullscreen.vue b/components/ui-components/dialogs/DialogsFullscreen.vue new file mode 100644 index 0000000..46e1651 --- /dev/null +++ b/components/ui-components/dialogs/DialogsFullscreen.vue @@ -0,0 +1,76 @@ + + + diff --git a/components/ui-components/dialogs/DialogsModel.vue b/components/ui-components/dialogs/DialogsModel.vue new file mode 100644 index 0000000..75097a4 --- /dev/null +++ b/components/ui-components/dialogs/DialogsModel.vue @@ -0,0 +1,23 @@ + + + diff --git a/components/ui-components/dialogs/DialogsNested.vue b/components/ui-components/dialogs/DialogsNested.vue new file mode 100644 index 0000000..b1a1d08 --- /dev/null +++ b/components/ui-components/dialogs/DialogsNested.vue @@ -0,0 +1,78 @@ + + + diff --git a/components/ui-components/dialogs/DialogsPersistent.vue b/components/ui-components/dialogs/DialogsPersistent.vue new file mode 100644 index 0000000..1a7dff7 --- /dev/null +++ b/components/ui-components/dialogs/DialogsPersistent.vue @@ -0,0 +1,32 @@ + + + diff --git a/components/ui-components/dialogs/DialogsScrollable.vue b/components/ui-components/dialogs/DialogsScrollable.vue new file mode 100644 index 0000000..98d253b --- /dev/null +++ b/components/ui-components/dialogs/DialogsScrollable.vue @@ -0,0 +1,50 @@ + + + diff --git a/components/ui-components/dialogs/DialogsTransitions.vue b/components/ui-components/dialogs/DialogsTransitions.vue new file mode 100644 index 0000000..c94baa0 --- /dev/null +++ b/components/ui-components/dialogs/DialogsTransitions.vue @@ -0,0 +1,25 @@ + + + diff --git a/components/ui-components2/dialogs/DialogsActivator.vue b/components/ui-components2/dialogs/DialogsActivator.vue new file mode 100644 index 0000000..7b587a7 --- /dev/null +++ b/components/ui-components2/dialogs/DialogsActivator.vue @@ -0,0 +1,24 @@ + + + diff --git a/components/ui-components2/dialogs/DialogsScrollable.vue b/components/ui-components2/dialogs/DialogsScrollable.vue new file mode 100644 index 0000000..ce1a485 --- /dev/null +++ b/components/ui-components2/dialogs/DialogsScrollable.vue @@ -0,0 +1,33 @@ + + + diff --git a/components/widgets/cards/BlogCards.vue b/components/widgets/cards/BlogCards.vue new file mode 100644 index 0000000..38aa560 --- /dev/null +++ b/components/widgets/cards/BlogCards.vue @@ -0,0 +1,45 @@ + + diff --git a/components/widgets/cards/FollowerCards.vue b/components/widgets/cards/FollowerCards.vue new file mode 100644 index 0000000..b0e9eec --- /dev/null +++ b/components/widgets/cards/FollowerCards.vue @@ -0,0 +1,23 @@ + + diff --git a/components/widgets/cards/GiftCards.vue b/components/widgets/cards/GiftCards.vue new file mode 100644 index 0000000..20f2fae --- /dev/null +++ b/components/widgets/cards/GiftCards.vue @@ -0,0 +1,39 @@ + + diff --git a/components/widgets/cards/MusicCards.vue b/components/widgets/cards/MusicCards.vue new file mode 100644 index 0000000..1a43c5a --- /dev/null +++ b/components/widgets/cards/MusicCards.vue @@ -0,0 +1,40 @@ + + diff --git a/components/widgets/cards/PaymentGateways.vue b/components/widgets/cards/PaymentGateways.vue new file mode 100644 index 0000000..9bac3a1 --- /dev/null +++ b/components/widgets/cards/PaymentGateways.vue @@ -0,0 +1,24 @@ + + diff --git a/components/widgets/cards/ProductCards.vue b/components/widgets/cards/ProductCards.vue new file mode 100644 index 0000000..3d24a1e --- /dev/null +++ b/components/widgets/cards/ProductCards.vue @@ -0,0 +1,36 @@ + + diff --git a/components/widgets/cards/ProfileCards.vue b/components/widgets/cards/ProfileCards.vue new file mode 100644 index 0000000..29509ac --- /dev/null +++ b/components/widgets/cards/ProfileCards.vue @@ -0,0 +1,28 @@ + + diff --git a/components/widgets/cards/Settings.vue b/components/widgets/cards/Settings.vue new file mode 100644 index 0000000..a273e98 --- /dev/null +++ b/components/widgets/cards/Settings.vue @@ -0,0 +1,46 @@ + + diff --git a/components/widgets/cards/UpcommingActivityCard.vue b/components/widgets/cards/UpcommingActivityCard.vue new file mode 100644 index 0000000..d920edb --- /dev/null +++ b/components/widgets/cards/UpcommingActivityCard.vue @@ -0,0 +1,23 @@ + + diff --git a/components/widgets/cards/UserCards.vue b/components/widgets/cards/UserCards.vue new file mode 100644 index 0000000..2010653 --- /dev/null +++ b/components/widgets/cards/UserCards.vue @@ -0,0 +1,31 @@ + + diff --git a/components/widgets2/cards/FollowerCards.vue b/components/widgets2/cards/FollowerCards.vue new file mode 100644 index 0000000..3d36733 --- /dev/null +++ b/components/widgets2/cards/FollowerCards.vue @@ -0,0 +1,36 @@ + + diff --git a/components/widgets2/cards/ProfileCards.vue b/components/widgets2/cards/ProfileCards.vue new file mode 100644 index 0000000..88f9e1c --- /dev/null +++ b/components/widgets2/cards/ProfileCards.vue @@ -0,0 +1,39 @@ + + diff --git a/components/widgets2/cards/UpcommingActivityCard.vue b/components/widgets2/cards/UpcommingActivityCard.vue new file mode 100644 index 0000000..df5b4e5 --- /dev/null +++ b/components/widgets2/cards/UpcommingActivityCard.vue @@ -0,0 +1,32 @@ + + diff --git a/components/widgets2/cards/UserCards.vue b/components/widgets2/cards/UserCards.vue new file mode 100644 index 0000000..b0a951a --- /dev/null +++ b/components/widgets2/cards/UserCards.vue @@ -0,0 +1,41 @@ + + diff --git a/composable/index.ts b/composable/index.ts new file mode 100644 index 0000000..bc76d2c --- /dev/null +++ b/composable/index.ts @@ -0,0 +1,18 @@ +import { toast } from "vue3-toastify"; +// export function deleteItem (data:any, index:number) { +// try { +// data.splice(index,1) +// } catch (error) { + +// } +// } +// export function delete(){ + +// } +export function toastAlert(msg:string,type:any){ + toast(msg, { + type: type, + dangerouslyHTMLString: true, + autoClose: 2000, + }) +} \ No newline at end of file diff --git a/data/dummy/keuangan.type_user.json b/data/dummy/keuangan.type_user.json new file mode 100644 index 0000000..542ef13 --- /dev/null +++ b/data/dummy/keuangan.type_user.json @@ -0,0 +1,141 @@ +[ + { + "id": "1", + "typeUser": "Super Admin", + "roleMenu": [ + { + "permission": "0", + "menu": [ + { + "Module": "module1", + "create": "true", + "update": "false", + "delete": "false", + "show": "false" + }, + { + "Module": "module2", + "create": "true", + "update": "true", + "delete": "false", + "show": "false" + } + ] + }, + { + "permission": "1", + "menu": [ + { + "Module": "module1", + "create": "true", + "update": "false", + "delete": "true", + "show": "false" + }, + { + "Module": "module2", + "create": "true", + "update": "true", + "delete": "false", + "show": "false" + } + ] + }, + { + "permission": "2", + "menu": [ + { + "Module": "module2", + "create": "true", + "update": "false", + "delete": "true", + "show": "false" + }, + { + "Module": "module3", + "create": "true", + "update": "false", + "delete": "true", + "show": "false" + }, + { + "Module": "module4", + "create": "true", + "update": "true", + "delete": "false", + "show": "false" + } + ] + } + ] + }, + { + "id": "2", + "typeUser": "Admin", + "roleMenu": [ + { + "permission": "0", + "menu": [ + { + "Module": "module1", + "create": "true", + "update": "false", + "delete": "false", + "show": "false" + }, + { + "Module": "module2", + "create": "true", + "update": "true", + "delete": "false", + "show": "false" + } + ] + }, + { + "permission": "1", + "menu": [ + { + "Module": "module1", + "create": "true", + "update": "false", + "delete": "true", + "show": "false" + }, + { + "Module": "module2", + "create": "true", + "update": "true", + "delete": "false", + "show": "false" + } + ] + } + ] + }, + { + "id": "3", + "typeUser": "Staf", + "roleMenu": [ + { + "permission": "0", + "menu": [ + { + "Module": "module1", + "create": "true", + "update": "false", + "delete": "false", + "show": "false" + }, + { + "Module": "module2", + "create": "true", + "update": "true", + "delete": "false", + "show": "false" + } + ] + } + ] + } +] diff --git a/data/dummy/ticket.json b/data/dummy/ticket.json new file mode 100644 index 0000000..9f92f7c --- /dev/null +++ b/data/dummy/ticket.json @@ -0,0 +1,90 @@ +[ + { + "Id": 1, + "ticketTitle": "Sed ut perspiciatis unde omnis iste", + "ticketDescription": + "ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos", + "Status": "Closed", + "Label": "error", + "thumb": "user10", + "AgentName": "Liam", + "Date": "2020-01-01" + }, + { + "Id": 2, + "ticketTitle": "Consequuntur magni dolores eos qui ratione", + "ticketDescription": + "ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos", + "Status": "Pending", + "Label": "warning", + "thumb": "user1", + "AgentName": "Steve", + "Date": "2020-01-01" + }, + { + "Id": 3, + "ticketTitle": "Exercitationem ullam corporis", + "ticketDescription": + "ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos", + "Status": "Open", + "Label": "success", + "thumb": "user2", + "AgentName": "Jack", + "Date": "2020-01-01" + }, + { + "Id": 4, + "ticketTitle": "Sed ut perspiciatis unde omnis iste", + "ticketDescription": + "ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos", + "Status": "Closed", + "Label": "error", + "thumb": "user3", + "AgentName": "Steve", + "Date": "2020-01-01" + }, + { + "Id": 5, + "ticketTitle": "Exercitationem ullam corporis", + "ticketDescription": + "ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos", + "Status": "Closed", + "Label": "error", + "thumb": "user4", + "AgentName": "Liam", + "Date": "2020-01-01" + }, + { + "Id": 6, + "ticketTitle": "Consequuntur magni dolores eos qui ratione", + "ticketDescription": + "ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos", + "Status": "Pending", + "Label": "warning", + "thumb": "user5", + "AgentName": "Jack", + "Date": "2020-01-01" + }, + { + "Id": 7, + "ticketTitle": "Sed ut perspiciatis unde omnis iste", + "ticketDescription": + "ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos", + "Status": "Open", + "Label": "success", + "thumb": "user6", + "AgentName": "Steve", + "Date": "2020-01-01" + }, + { + "Id": 8, + "ticketTitle": "Consequuntur magni dolores eos qui ratione", + "ticketDescription": + "ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos", + "Status": "Closed", + "Label": "error", + "thumb": "user7", + "AgentName": "John", + "Date": "2020-01-01" + } +] \ No newline at end of file diff --git a/nuxt.config.ts b/nuxt.config.ts index 9e86916..556e2eb 100755 --- a/nuxt.config.ts +++ b/nuxt.config.ts @@ -28,6 +28,7 @@ export default defineNuxtConfig({ * Integrasi dengan ecosystem Nuxt.js */ modules: [ + '@vueform/nuxt', "@pinia/nuxt", // State management dengan Pinia [ "@sidebase/nuxt-auth", diff --git a/package-lock.json b/package-lock.json index 9c92297..24c328a 100755 --- a/package-lock.json +++ b/package-lock.json @@ -13,6 +13,8 @@ "@mdi/font": "7.4.47", "@pinia/nuxt": "^0.11.1", "@sidebase/nuxt-auth": "^0.10.1", + "@vueform/nuxt": "^1.12.0", + "@vueform/vueform": "^1.12.10", "@vueuse/i18n": "^4.0.0-beta.12", "apexcharts": "4.5.0", "axios": "^1.9.0", @@ -29,6 +31,7 @@ "vue-tabler-icons": "2.21.0", "vue3-apexcharts": "1.5.2", "vue3-perfect-scrollbar": "1.6.1", + "vue3-toastify": "^0.2.8", "vuetify": "3.7.18" }, "devDependencies": { @@ -2513,6 +2516,16 @@ "dev": true, "license": "MIT" }, + "node_modules/@popperjs/core": { + "version": "2.11.8", + "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz", + "integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==", + "license": "MIT", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/popperjs" + } + }, "node_modules/@poppinss/colors": { "version": "4.1.4", "resolved": "https://registry.npmjs.org/@poppinss/colors/-/colors-4.1.4.tgz", @@ -3195,6 +3208,13 @@ "integrity": "sha512-6WaYesThRMCl19iryMYP7/x2OVgCtbIVflDGFpWnb9irXI3UjYE4AzmYuiUKY1AJstGijoY+MgUszMgRxIYTYw==", "license": "MIT" }, + "node_modules/@types/trusted-types": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/@types/trusted-types/-/trusted-types-2.0.7.tgz", + "integrity": "sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==", + "license": "MIT", + "optional": true + }, "node_modules/@types/yauzl": { "version": "2.10.3", "resolved": "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.10.3.tgz", @@ -3604,6 +3624,121 @@ "integrity": "sha512-/hnE/qP5ZoGpol0a5mDi45bOd7t3tjYJBjsgCsivow7D48cJeV5l05RD82lPqi7gRiphZM37rnhW1l6ZoCNNnQ==", "license": "MIT" }, + "node_modules/@vueform/country-phones": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@vueform/country-phones/-/country-phones-1.0.3.tgz", + "integrity": "sha512-IGDHQFuPwL7j9MgH2UtXFPfWPQlyPCxDPso92y5QuXNMEnjBPK8fvrcLgj/2pGVO1ASS+E+05AGCrKtYyfeNsg==", + "license": "SEE LICENSE IN LICENSE" + }, + "node_modules/@vueform/multiselect": { + "version": "2.6.11", + "resolved": "https://registry.npmjs.org/@vueform/multiselect/-/multiselect-2.6.11.tgz", + "integrity": "sha512-iG4TGfqE3baftbSGF0PhoS+xZOCnV0ChkDo9rwhJ/Qi2YlCdb6tyQCjvyug3jnzncga8+d85kx0WvG7rDYFqiA==", + "license": "MIT" + }, + "node_modules/@vueform/nuxt": { + "version": "1.16.0", + "resolved": "https://registry.npmjs.org/@vueform/nuxt/-/nuxt-1.16.0.tgz", + "integrity": "sha512-tyra0wOyeGmTXZLJJzhzGd7TURGjJXsNajzDqXy4juP9AC5fmZ935dctlcRpZGIBy6sGZnw+r755Li5mXiI1vw==", + "license": "MIT", + "dependencies": { + "@nuxt/kit": "^3.8.1", + "@vueform/vueform": "^1.12.10", + "pathe": "^1.1.1" + } + }, + "node_modules/@vueform/nuxt/node_modules/pathe": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz", + "integrity": "sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==", + "license": "MIT" + }, + "node_modules/@vueform/slider": { + "version": "2.1.10", + "resolved": "https://registry.npmjs.org/@vueform/slider/-/slider-2.1.10.tgz", + "integrity": "sha512-L2G3Ju51Yq6yWF2wzYYsicUUaH56kL1QKGVtimUVHT1K1ADcRT94xVyIeJpS0klliVEeF6iMZFbdXtHq8AsDHw==", + "license": "MIT" + }, + "node_modules/@vueform/toggle": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@vueform/toggle/-/toggle-2.1.4.tgz", + "integrity": "sha512-tEITFf5wlqIWoCYZXJdoXvCnrc97weOu2csR/BEoROVvFu1zRsoK0wY1pJG7BR+g5zpGJneGSdLhMUsbx8y1yw==", + "license": "MIT" + }, + "node_modules/@vueform/vueform": { + "version": "1.12.10", + "resolved": "https://registry.npmjs.org/@vueform/vueform/-/vueform-1.12.10.tgz", + "integrity": "sha512-/B+rrfBIMRzEZJTckptgfqF1kXu0P5qQoecuD/Ps6PdXpiP33UdkMsMF5pCZ7fFlwr1huxmUnP/EkQi7jyBz7w==", + "license": "MIT", + "dependencies": { + "@popperjs/core": "^2.11.8", + "@vueform/country-phones": "^1.0.3", + "@vueform/multiselect": "^2.6.11", + "@vueform/slider": "^2.1.10", + "@vueform/toggle": "^2.1.4", + "axios": "^1.8.4", + "color": "^4.2.3", + "dompurify": "^3.2.4", + "lodash": "^4.17.21", + "mini-svg-data-uri": "^1.4.4", + "moment": "^2.30.1", + "nouislider": "^15.8.1", + "sass": "^1.86.2", + "trix": "^2.1.14", + "wnumb": "^1.2.0" + } + }, + "node_modules/@vueform/vueform/node_modules/color": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/color/-/color-4.2.3.tgz", + "integrity": "sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==", + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1", + "color-string": "^1.9.0" + }, + "engines": { + "node": ">=12.5.0" + } + }, + "node_modules/@vueform/vueform/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@vueform/vueform/node_modules/immutable": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-5.1.3.tgz", + "integrity": "sha512-+chQdDfvscSF1SJqv2gn4SRO2ZyS3xL3r7IW/wWEEzrzLisnOlKiQu5ytC/BVNcS15C39WT2Hg/bjKjDMcu+zg==", + "license": "MIT" + }, + "node_modules/@vueform/vueform/node_modules/sass": { + "version": "1.89.2", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.89.2.tgz", + "integrity": "sha512-xCmtksBKd/jdJ9Bt9p7nPKiuqrlBMBuuGkQlkhZjjQk3Ty48lv93k5Dq6OPkKt4XwxDJ7tvlfrTa1MPA9bf+QA==", + "license": "MIT", + "dependencies": { + "chokidar": "^4.0.0", + "immutable": "^5.0.2", + "source-map-js": ">=0.6.2 <2.0.0" + }, + "bin": { + "sass": "sass.js" + }, + "engines": { + "node": ">=14.0.0" + }, + "optionalDependencies": { + "@parcel/watcher": "^2.4.1" + } + }, "node_modules/@vueuse/i18n": { "version": "4.0.0-beta.12", "resolved": "https://registry.npmjs.org/@vueuse/i18n/-/i18n-4.0.0-beta.12.tgz", @@ -5284,6 +5419,15 @@ "url": "https://github.com/fb55/domhandler?sponsor=1" } }, + "node_modules/dompurify": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.2.6.tgz", + "integrity": "sha512-/2GogDQlohXPZe6D6NOgQvXLPSYBqIWMnZ8zzOhn09REE4eyAzb+Hed3jhoM9OkuaJ8P6ZGTTVWQKAi8ieIzfQ==", + "license": "(MPL-2.0 OR Apache-2.0)", + "optionalDependencies": { + "@types/trusted-types": "^2.0.7" + } + }, "node_modules/domutils": { "version": "3.2.2", "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.2.2.tgz", @@ -7497,6 +7641,15 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/mini-svg-data-uri": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/mini-svg-data-uri/-/mini-svg-data-uri-1.4.4.tgz", + "integrity": "sha512-r9deDe9p5FJUPZAk3A59wGH7Ii9YrjjWw0jmw/liSbHl2CHiyXj6FcDXDu2K3TjVAXqiJdaw3xxwlZZr9E6nHg==", + "license": "MIT", + "bin": { + "mini-svg-data-uri": "cli.js" + } + }, "node_modules/minimatch": { "version": "9.0.5", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", @@ -7615,6 +7768,15 @@ "node": ">=18" } }, + "node_modules/moment": { + "version": "2.30.1", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.30.1.tgz", + "integrity": "sha512-uEmtNhbDOrWPFS+hdjFCBfy9f2YoyzRpwcl+DqpC6taX21FzsTLQVbMV/W7PzNSX6x/bhC1zA3c2UQ5NzH6how==", + "license": "MIT", + "engines": { + "node": "*" + } + }, "node_modules/mrmime": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/mrmime/-/mrmime-2.0.1.tgz", @@ -8098,6 +8260,12 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/nouislider": { + "version": "15.8.1", + "resolved": "https://registry.npmjs.org/nouislider/-/nouislider-15.8.1.tgz", + "integrity": "sha512-93TweAi8kqntHJSPiSWQ1o/uZ29VWOmal9YKb6KKGGlCkugaNfAupT7o1qTHqdJvNQ7S0su5rO6qRFCjP8fxtw==", + "license": "MIT" + }, "node_modules/npm-run-path": { "version": "5.3.0", "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.3.0.tgz", @@ -11100,6 +11268,15 @@ "node": ">= 14.0.0" } }, + "node_modules/trix": { + "version": "2.1.15", + "resolved": "https://registry.npmjs.org/trix/-/trix-2.1.15.tgz", + "integrity": "sha512-LoaXWczdTUV8+3Box92B9b1iaDVbxD14dYemZRxi3PwY+AuDm97BUJV2aHLBUFPuDABhxp0wzcbf0CxHCVmXiw==", + "license": "MIT", + "dependencies": { + "dompurify": "^3.2.5" + } + }, "node_modules/ts-api-utils": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", @@ -12730,6 +12907,24 @@ "node": ">= 6" } }, + "node_modules/vue3-toastify": { + "version": "0.2.8", + "resolved": "https://registry.npmjs.org/vue3-toastify/-/vue3-toastify-0.2.8.tgz", + "integrity": "sha512-8jDOqsJaBZEbGpCbhWDETJc11D1lZefvgFPq/IPdM+U7+qyXoVPDvK6uq/FIgyV7qV0NcNzvGBMEzjsLQqGROw==", + "license": "MIT", + "engines": { + "node": ">=20", + "npm": ">=9.0.0" + }, + "peerDependencies": { + "vue": ">=3.2.0" + }, + "peerDependenciesMeta": { + "vue": { + "optional": true + } + } + }, "node_modules/vuetify": { "version": "3.7.18", "resolved": "https://registry.npmjs.org/vuetify/-/vuetify-3.7.18.tgz", @@ -12897,6 +13092,12 @@ "node": ">= 6" } }, + "node_modules/wnumb": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/wnumb/-/wnumb-1.2.0.tgz", + "integrity": "sha512-eYut5K/dW7usfk/Mwm6nxBNoTPp/uP7PlXld+hhg7lDtHLdHFnNclywGYM9BRC7Ohd4JhwuHg+vmOUGfd3NhVA==", + "license": "MIT" + }, "node_modules/wrap-ansi": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", diff --git a/package.json b/package.json index 0f4fbca..7e9df30 100755 --- a/package.json +++ b/package.json @@ -31,7 +31,10 @@ "vue-tabler-icons": "2.21.0", "vue3-apexcharts": "1.5.2", "vue3-perfect-scrollbar": "1.6.1", - "vuetify": "3.7.18" + "vue3-toastify": "^0.2.8", + "vuetify": "3.7.18", + "@vueform/nuxt": "^1.12.0", + "@vueform/vueform": "^1.12.10" }, "devDependencies": { "nuxt": "^3.17.5" diff --git a/pages/Setting/TipePengguna/index.vue b/pages/Setting/TipePengguna/index.vue new file mode 100644 index 0000000..4925f0c --- /dev/null +++ b/pages/Setting/TipePengguna/index.vue @@ -0,0 +1,38 @@ + + + diff --git a/pages/Setting/ViewPermission/index.vue b/pages/Setting/ViewPermission/index.vue new file mode 100644 index 0000000..d1c5dbf --- /dev/null +++ b/pages/Setting/ViewPermission/index.vue @@ -0,0 +1,39 @@ + + + diff --git a/pages/app/cardList/index.vue b/pages/app/cardList/index.vue new file mode 100644 index 0000000..fc626f6 --- /dev/null +++ b/pages/app/cardList/index.vue @@ -0,0 +1,39 @@ + + + diff --git a/pages/app/table/StepTable.vue b/pages/app/table/StepTable.vue new file mode 100644 index 0000000..9610c1f --- /dev/null +++ b/pages/app/table/StepTable.vue @@ -0,0 +1,35 @@ + + + diff --git a/pages/app/table/StepTable2.vue b/pages/app/table/StepTable2.vue new file mode 100644 index 0000000..0e62118 --- /dev/null +++ b/pages/app/table/StepTable2.vue @@ -0,0 +1,35 @@ + + + + + diff --git a/pages/app/table/index.vue b/pages/app/table/index.vue new file mode 100644 index 0000000..bfee2fb --- /dev/null +++ b/pages/app/table/index.vue @@ -0,0 +1,38 @@ + + + diff --git a/pages/tables/TableBasic.vue b/pages/tables/TableBasic.vue new file mode 100644 index 0000000..1702f37 --- /dev/null +++ b/pages/tables/TableBasic.vue @@ -0,0 +1,51 @@ + + + diff --git a/pages/tables/TableDark.vue b/pages/tables/TableDark.vue new file mode 100644 index 0000000..190ae5d --- /dev/null +++ b/pages/tables/TableDark.vue @@ -0,0 +1,84 @@ + + + diff --git a/pages/tables/TableDensity.vue b/pages/tables/TableDensity.vue new file mode 100644 index 0000000..3f62330 --- /dev/null +++ b/pages/tables/TableDensity.vue @@ -0,0 +1,79 @@ + + + diff --git a/pages/tables/TableEditable.vue b/pages/tables/TableEditable.vue new file mode 100644 index 0000000..429bdca --- /dev/null +++ b/pages/tables/TableEditable.vue @@ -0,0 +1,38 @@ + + + diff --git a/pages/tables/TableHeaderFixed.vue b/pages/tables/TableHeaderFixed.vue new file mode 100644 index 0000000..821afc5 --- /dev/null +++ b/pages/tables/TableHeaderFixed.vue @@ -0,0 +1,90 @@ + + + diff --git a/pages/tables/TableHeight.vue b/pages/tables/TableHeight.vue new file mode 100644 index 0000000..f8036bb --- /dev/null +++ b/pages/tables/TableHeight.vue @@ -0,0 +1,95 @@ + + + diff --git a/pages/tables/datatables/BasicTable.vue b/pages/tables/datatables/BasicTable.vue new file mode 100644 index 0000000..af5d928 --- /dev/null +++ b/pages/tables/datatables/BasicTable.vue @@ -0,0 +1,99 @@ + + + diff --git a/pages/tables/datatables/CrudTable.vue b/pages/tables/datatables/CrudTable.vue new file mode 100644 index 0000000..d307a1c --- /dev/null +++ b/pages/tables/datatables/CrudTable.vue @@ -0,0 +1,272 @@ + + + + + \ No newline at end of file diff --git a/pages/tables/datatables/Filtering.vue b/pages/tables/datatables/Filtering.vue new file mode 100644 index 0000000..9ea903d --- /dev/null +++ b/pages/tables/datatables/Filtering.vue @@ -0,0 +1,109 @@ + + + diff --git a/pages/tables/datatables/Grouping.vue b/pages/tables/datatables/Grouping.vue new file mode 100644 index 0000000..880b2d8 --- /dev/null +++ b/pages/tables/datatables/Grouping.vue @@ -0,0 +1,43 @@ + + + diff --git a/pages/tables/datatables/HeaderTables.vue b/pages/tables/datatables/HeaderTables.vue new file mode 100644 index 0000000..1e2f838 --- /dev/null +++ b/pages/tables/datatables/HeaderTables.vue @@ -0,0 +1,40 @@ + + + diff --git a/pages/tables/datatables/Pagination.vue b/pages/tables/datatables/Pagination.vue new file mode 100644 index 0000000..85a7aa0 --- /dev/null +++ b/pages/tables/datatables/Pagination.vue @@ -0,0 +1,58 @@ + + + diff --git a/pages/tables/datatables/Selectable.vue b/pages/tables/datatables/Selectable.vue new file mode 100644 index 0000000..c263123 --- /dev/null +++ b/pages/tables/datatables/Selectable.vue @@ -0,0 +1,60 @@ + + + diff --git a/pages/tables/datatables/Slots.vue b/pages/tables/datatables/Slots.vue new file mode 100644 index 0000000..be18bd2 --- /dev/null +++ b/pages/tables/datatables/Slots.vue @@ -0,0 +1,50 @@ + + + diff --git a/pages/tables/datatables/SortingTable.vue b/pages/tables/datatables/SortingTable.vue new file mode 100644 index 0000000..efc9d1a --- /dev/null +++ b/pages/tables/datatables/SortingTable.vue @@ -0,0 +1,53 @@ + + + diff --git a/pages/ui-components/UiChip.vue b/pages/ui-components/UiChip.vue new file mode 100644 index 0000000..b6758fc --- /dev/null +++ b/pages/ui-components/UiChip.vue @@ -0,0 +1,84 @@ + + + diff --git a/pages/ui-components/UiDialog.vue b/pages/ui-components/UiDialog.vue new file mode 100644 index 0000000..a7b892b --- /dev/null +++ b/pages/ui-components/UiDialog.vue @@ -0,0 +1,84 @@ + + + diff --git a/pages/widgets/cards/cards.vue b/pages/widgets/cards/cards.vue new file mode 100644 index 0000000..d98f285 --- /dev/null +++ b/pages/widgets/cards/cards.vue @@ -0,0 +1,80 @@ + + diff --git a/store/apps/Setting/setting.ts b/store/apps/Setting/setting.ts new file mode 100644 index 0000000..4ddc131 --- /dev/null +++ b/store/apps/Setting/setting.ts @@ -0,0 +1,12 @@ +import { defineStore } from "pinia" +export const useSettingStore = defineStore('setting',{ + state:(): any => ({ + typeUser:[], + }), + actions:{ + async getTypeUser(body:Record){ + // console.log("ini di pinia:",body) + this.typeUser = body + } + } +}) \ No newline at end of file diff --git a/vueform.config.js b/vueform.config.js new file mode 100644 index 0000000..3a4816c --- /dev/null +++ b/vueform.config.js @@ -0,0 +1,15 @@ +// vueform.config.(js|ts) + +import en from '@vueform/vueform/locales/en' +import vueform from '@vueform/vueform/dist/vueform' +import { defineConfig } from '@vueform/vueform' + + +// You might place these anywhere else in your project +import '@vueform/vueform/dist/vueform.css'; + +export default defineConfig({ + theme: vueform, + locales: { en }, + locale: 'en', +}) \ No newline at end of file