@dragonmastery/dragoncore-vue 0.0.28 → 0.0.30
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/{ChangePasswordPage-C7rqJfii.js → ChangePasswordPage-D1LGJ02W.js} +1 -1
- package/dist/{ChangePasswordPage-nr0B06HB.js → ChangePasswordPage-Dy8lFUcI.js} +1 -1
- package/dist/{ChangePasswordPage-nr0B06HB.js.map → ChangePasswordPage-Dy8lFUcI.js.map} +1 -1
- package/dist/{ConsentFlowStep-DstxorHZ.js → ConsentFlowStep-DsVhXa91.js} +2 -2
- package/dist/{ConsentFlowStep-DstxorHZ.js.map → ConsentFlowStep-DsVhXa91.js.map} +1 -1
- package/dist/{ConsentRequired-ELUidmNv.js → ConsentRequired-B3eLxJgx.js} +3 -3
- package/dist/{ConsentRequired-ELUidmNv.js.map → ConsentRequired-B3eLxJgx.js.map} +1 -1
- package/dist/CreateTeamForm-5V_ks5Ie.js +12 -0
- package/dist/{CreateTeamForm-DRfZ74on.js → CreateTeamForm-B7MsOsiV.js} +4 -4
- package/dist/{CreateTeamForm-DRfZ74on.js.map → CreateTeamForm-B7MsOsiV.js.map} +1 -1
- package/dist/{CreateTeamMemberForm-CSF-tD6B.js → CreateTeamMemberForm-CayF2tIJ.js} +5 -5
- package/dist/{CreateTeamMemberForm-ITp4XFn9.js → CreateTeamMemberForm-DeUyXnVa.js} +4 -4
- package/dist/{CreateTeamMemberForm-ITp4XFn9.js.map → CreateTeamMemberForm-DeUyXnVa.js.map} +1 -1
- package/dist/{CreditBalanceDashboard-BRY56-9w.js → CreditBalanceDashboard-CoIEyZWh.js} +2 -2
- package/dist/{CreditBalanceDashboard-BRY56-9w.js.map → CreditBalanceDashboard-CoIEyZWh.js.map} +1 -1
- package/dist/{CreditBalanceDashboard-CwXWREgJ.js → CreditBalanceDashboard-D_TsFlTp.js} +5 -5
- package/dist/{CreditManagement-D-bsc1US.js → CreditManagement-CCyU_yja.js} +2 -2
- package/dist/{CreditManagement-D-bsc1US.js.map → CreditManagement-CCyU_yja.js.map} +1 -1
- package/dist/{CreditManagement-BAuzw-NE.js → CreditManagement-CdkqQM7F.js} +5 -5
- package/dist/{CreditTransactionHistory-plIaRscn.js → CreditTransactionHistory-UPg9uDNy.js} +3 -3
- package/dist/{CreditTransactionHistory-plIaRscn.js.map → CreditTransactionHistory-UPg9uDNy.js.map} +1 -1
- package/dist/{CustomerCreateSupportTicketForm-D72blvMU.js → CustomerCreateSupportTicketForm-CiTTUqtW.js} +5 -5
- package/dist/{CustomerCreateSupportTicketForm-Co6C_P5o.js → CustomerCreateSupportTicketForm-DFH1JtlA.js} +3 -3
- package/dist/{CustomerCreateSupportTicketForm-Co6C_P5o.js.map → CustomerCreateSupportTicketForm-DFH1JtlA.js.map} +1 -1
- package/dist/{CustomerSupportTicketDetailPage-CUkf9swo.js → CustomerSupportTicketDetailPage-DAwiE2t6.js} +5 -5
- package/dist/{CustomerSupportTicketDetailPage-CUkf9swo.js.map → CustomerSupportTicketDetailPage-DAwiE2t6.js.map} +1 -1
- package/dist/CustomerSupportTicketList-CKZl8jxx.js +64 -0
- package/dist/{CustomerSupportTicketParent-D19kei4H.js → CustomerSupportTicketParent-D3Gj4Hel.js} +2 -2
- package/dist/{CustomerSupportTicketParent-BaKfkSlU.js → CustomerSupportTicketParent-rl4Ym8oa.js} +3 -3
- package/dist/{CustomerSupportTicketParent-BaKfkSlU.js.map → CustomerSupportTicketParent-rl4Ym8oa.js.map} +1 -1
- package/dist/{CustomerSupportTicketSuccess-DVqoR5-o.js → CustomerSupportTicketSuccess-BEhFZgtn.js} +2 -2
- package/dist/{CustomerSupportTicketSuccess-DVqoR5-o.js.map → CustomerSupportTicketSuccess-BEhFZgtn.js.map} +1 -1
- package/dist/{CustomerSupportTicketSuccess-B87Zth-g.js → CustomerSupportTicketSuccess-BJO2xsQR.js} +4 -4
- package/dist/{DefaultReferralTeamPage-BHail7YF.js → DefaultReferralTeamPage-D3UIrIZK.js} +103 -63
- package/dist/DefaultReferralTeamPage-D3UIrIZK.js.map +1 -0
- package/dist/EditTeamForm-Bf4rSgQg.js +12 -0
- package/dist/{EditTeamForm-BEOkUaKG.js → EditTeamForm-C1_-p3lZ.js} +4 -4
- package/dist/{EditTeamForm-BEOkUaKG.js.map → EditTeamForm-C1_-p3lZ.js.map} +1 -1
- package/dist/{EditTeamMemberForm-CIqEjFF8.js → EditTeamMemberForm-Bh6zVNyJ.js} +3 -3
- package/dist/{EditTeamMemberForm-Fyf8Zxfh.js → EditTeamMemberForm-D9cofrUM.js} +3 -3
- package/dist/{EditTeamMemberForm-Fyf8Zxfh.js.map → EditTeamMemberForm-D9cofrUM.js.map} +1 -1
- package/dist/{EditUserPage-D3AWaHT2.js → EditUserPage-CQgp-08o.js} +1 -1
- package/dist/{EditUserPage-BBzGmOrx.js → EditUserPage-CwsO8naT.js} +2 -2
- package/dist/{EditUserPage-BBzGmOrx.js.map → EditUserPage-CwsO8naT.js.map} +1 -1
- package/dist/{ExternalLinkIcon-FidcmNOa.js → ExternalLinkIcon-BKVV5Gjm.js} +1 -1
- package/dist/{ExternalLinkIcon-FidcmNOa.js.map → ExternalLinkIcon-BKVV5Gjm.js.map} +1 -1
- package/dist/{FieldsetSection-CH1jAwcc.js → FieldsetSection-Br_sygWW.js} +1 -1
- package/dist/{FieldsetSection-CH1jAwcc.js.map → FieldsetSection-Br_sygWW.js.map} +1 -1
- package/dist/{LoginForm-p2fJiTtw.js → LoginForm-CFADKiln.js} +1 -1
- package/dist/{LoginForm-D1Mx2vAY.js → LoginForm-CSMHsZrq.js} +1 -1
- package/dist/{LoginForm-D1Mx2vAY.js.map → LoginForm-CSMHsZrq.js.map} +1 -1
- package/dist/{RecordVersionViewer-NLn1gVys.js → RecordVersionViewer-DKIdX_BX.js} +1 -1
- package/dist/{RecordVersionViewer-NLn1gVys.js.map → RecordVersionViewer-DKIdX_BX.js.map} +1 -1
- package/dist/{SavedFiltersPage-CvBKztlD.js → SavedFiltersPage-Cz01ZeHx.js} +44 -44
- package/dist/{SavedFiltersPage-CvBKztlD.js.map → SavedFiltersPage-Cz01ZeHx.js.map} +1 -1
- package/dist/{Signup-BCVZZCR_.js → Signup-CkhRQErA.js} +14 -4
- package/dist/Signup-CkhRQErA.js.map +1 -0
- package/dist/{Signup-CJrY4IK-.js → Signup-cOvXCtJj.js} +1 -1
- package/dist/{SignupConsentFlow-clxBjJlU.js → SignupConsentFlow-CKMFsnf5.js} +16 -8
- package/dist/SignupConsentFlow-CKMFsnf5.js.map +1 -0
- package/dist/{SignupRequirementsPage-CohJluxQ.js → SignupRequirementsPage-33z--rhH.js} +4 -4
- package/dist/{SignupRequirementsPage-CohJluxQ.js.map → SignupRequirementsPage-33z--rhH.js.map} +1 -1
- package/dist/{StaffCreateSupportTicketForm-Cm595v_4.js → StaffCreateSupportTicketForm-BtR-Aowv.js} +4 -4
- package/dist/{StaffCreateSupportTicketForm-Cm595v_4.js.map → StaffCreateSupportTicketForm-BtR-Aowv.js.map} +1 -1
- package/dist/{StaffCreateSupportTicketForm-DBhhJyXE.js → StaffCreateSupportTicketForm-D7ctCaXe.js} +5 -5
- package/dist/{StaffSupportTicketDetailPage-B63QXyum.js → StaffSupportTicketDetailPage-LqnNfU34.js} +7 -7
- package/dist/{StaffSupportTicketDetailPage-B63QXyum.js.map → StaffSupportTicketDetailPage-LqnNfU34.js.map} +1 -1
- package/dist/StaffSupportTicketList-GyzlONKe.js +64 -0
- package/dist/{StaffSupportTicketParent-yoC-_Lku.js → StaffSupportTicketParent-DPvdLUii.js} +3 -3
- package/dist/{StaffSupportTicketParent-yoC-_Lku.js.map → StaffSupportTicketParent-DPvdLUii.js.map} +1 -1
- package/dist/{StaffSupportTicketParent-ByUwsYGx.js → StaffSupportTicketParent-Dyybqx74.js} +2 -2
- package/dist/{StaffSupportTicketSuccess-DgULDGIj.js → StaffSupportTicketSuccess-B3N-RMoT.js} +2 -2
- package/dist/{StaffSupportTicketSuccess-DgULDGIj.js.map → StaffSupportTicketSuccess-B3N-RMoT.js.map} +1 -1
- package/dist/{StaffSupportTicketSuccess-DKzJs74k.js → StaffSupportTicketSuccess-DvonYilY.js} +4 -4
- package/dist/{SupportStaffPage-CkFLlle4.js → SupportStaffPage-geoITTqt.js} +3 -3
- package/dist/{SupportStaffPage-CkFLlle4.js.map → SupportStaffPage-geoITTqt.js.map} +1 -1
- package/dist/{SupportTicketDevLifecycleBadge-BYKZjEv6.js → SupportTicketDevLifecycleBadge-D8-Cv1Np.js} +1 -1
- package/dist/{SupportTicketDevLifecycleBadge-BYKZjEv6.js.map → SupportTicketDevLifecycleBadge-D8-Cv1Np.js.map} +1 -1
- package/dist/TeamAttachmentsTab-ChP4DaUP.js +64 -0
- package/dist/{TeamHistoryTab-p3hDxCc3.js → TeamHistoryTab-CxzA4u_G.js} +3 -3
- package/dist/{TeamHistoryTab-p3hDxCc3.js.map → TeamHistoryTab-CxzA4u_G.js.map} +1 -1
- package/dist/TeamHistoryTab-wRpRizDE.js +6 -0
- package/dist/{TeamList-gppM0GOD.js → TeamList-_SsqJicG.js} +3 -3
- package/dist/{TeamList-gppM0GOD.js.map → TeamList-_SsqJicG.js.map} +1 -1
- package/dist/TeamList-cp8Pa2xg.js +8 -0
- package/dist/TeamMemberList-B16SuLwM.js +7 -0
- package/dist/{TeamMemberList-D0-dM5kI.js → TeamMemberList-BYUANoBg.js} +3 -3
- package/dist/{TeamMemberList-D0-dM5kI.js.map → TeamMemberList-BYUANoBg.js.map} +1 -1
- package/dist/{TeamMemberParent-C9OEziOK.js → TeamMemberParent-BJl8nBmP.js} +4 -4
- package/dist/{TeamMemberParent-CJGWXjuM.js → TeamMemberParent-DmYcHU3n.js} +3 -3
- package/dist/{TeamMemberParent-CJGWXjuM.js.map → TeamMemberParent-DmYcHU3n.js.map} +1 -1
- package/dist/{TeamNotesTab-BnkgZd-5.js → TeamNotesTab-BQN9niw-.js} +1 -1
- package/dist/{TeamNotesTab-DPw9YEwK.js → TeamNotesTab-Cego-QT3.js} +2 -2
- package/dist/{TeamNotesTab-DPw9YEwK.js.map → TeamNotesTab-Cego-QT3.js.map} +1 -1
- package/dist/{TeamParent-YPtenk3l.js → TeamParent-BUnqP-dr.js} +3 -3
- package/dist/{TeamParent-YPtenk3l.js.map → TeamParent-BUnqP-dr.js.map} +1 -1
- package/dist/TeamParent-BseZ6Zoi.js +11 -0
- package/dist/{TimelineNoteInput-DXZhcUkH.js → TimelineNoteInput-BBZv3X4p.js} +2 -2
- package/dist/{TimelineNoteInput-DXZhcUkH.js.map → TimelineNoteInput-BBZv3X4p.js.map} +1 -1
- package/dist/{TimelineSystemEvent-Ch1sZiyO.js → TimelineSystemEvent-D5fkhkZT.js} +1 -1
- package/dist/{TimelineSystemEvent-Ch1sZiyO.js.map → TimelineSystemEvent-D5fkhkZT.js.map} +1 -1
- package/dist/UserListPage-BABli3QG.js +5 -0
- package/dist/{UserListPage-A0_eNpQ1.js → UserListPage-CDMSZpXK.js} +2 -2
- package/dist/{UserListPage-A0_eNpQ1.js.map → UserListPage-CDMSZpXK.js.map} +1 -1
- package/dist/{UserProfilePage-FNLYK9kj.js → UserProfilePage-BYitd7QV.js} +1 -1
- package/dist/{UserProfilePage-FNLYK9kj.js.map → UserProfilePage-BYitd7QV.js.map} +1 -1
- package/dist/{UserProfilePage-BWK97ODt.js → UserProfilePage-Dmxp7oqP.js} +1 -1
- package/dist/ViewTeam-rLNxVgS2.js +8 -0
- package/dist/{ViewTeam-CRmIplCt.js → ViewTeam-ttqX2In8.js} +131 -32
- package/dist/ViewTeam-ttqX2In8.js.map +1 -0
- package/dist/ViewTeamMember-B5U8kZBw.js +7 -0
- package/dist/{ViewTeamMember-Cf5yXdv6.js → ViewTeamMember-DqWZ3F_h.js} +4 -4
- package/dist/{ViewTeamMember-Cf5yXdv6.js.map → ViewTeamMember-DqWZ3F_h.js.map} +1 -1
- package/dist/{ZiniaContainer-BV6sojLa.js → ZiniaContainer-BPIfQOc7.js} +1 -1
- package/dist/{ZiniaContainer-BV6sojLa.js.map → ZiniaContainer-BPIfQOc7.js.map} +1 -1
- package/dist/{convertToLocalDateTime-C13-PrSA.js → convertToLocalDateTime-BKBxm2Rc.js} +1 -1
- package/dist/{convertToLocalDateTime-C13-PrSA.js.map → convertToLocalDateTime-BKBxm2Rc.js.map} +1 -1
- package/dist/{customerSupportTicketRoutes-Cy4fp4wx.js → customerSupportTicketRoutes-C-DKBy5g.js} +8 -8
- package/dist/{customerSupportTicketRoutes-Cy4fp4wx.js.map → customerSupportTicketRoutes-C-DKBy5g.js.map} +1 -1
- package/dist/{displayIdFormatter-Cr-QaEk1.js → displayIdFormatter-Ca4Al9iB.js} +1 -1
- package/dist/{displayIdFormatter-Cr-QaEk1.js.map → displayIdFormatter-Ca4Al9iB.js.map} +1 -1
- package/dist/{extractRpcErrorMessage-CAaeVysa.js → extractRpcErrorMessage-Df8-CJGV.js} +1 -1
- package/dist/{extractRpcErrorMessage-CAaeVysa.js.map → extractRpcErrorMessage-Df8-CJGV.js.map} +1 -1
- package/dist/index.d.ts +114 -92
- package/dist/index.js +48 -47
- package/dist/{saved_filter-jeZd2rlb.js → saved_filter-C2N9l_a9.js} +3 -3
- package/dist/{saved_filter-jeZd2rlb.js.map → saved_filter-C2N9l_a9.js.map} +1 -1
- package/dist/{signupConsentStorage-Ct4ZuKi-.js → signupConsentStorage-pWSoHuhO.js} +10 -2
- package/dist/signupConsentStorage-pWSoHuhO.js.map +1 -0
- package/dist/{src-zjaOyP9b.js → src-C8B9TJiH.js} +31 -26
- package/dist/src-C8B9TJiH.js.map +1 -0
- package/dist/{staffSupportTicketRoutes-L4CU5dcu.js → staffSupportTicketRoutes-CyMecWpC.js} +8 -8
- package/dist/{staffSupportTicketRoutes-L4CU5dcu.js.map → staffSupportTicketRoutes-CyMecWpC.js.map} +1 -1
- package/dist/{teamMemberMetadata-DX0W-B7p.js → teamMemberMetadata-C4urCwBU.js} +1 -1
- package/dist/{teamMemberMetadata-DX0W-B7p.js.map → teamMemberMetadata-C4urCwBU.js.map} +1 -1
- package/dist/{teamMetadata-26Mwjb2i.js → teamMetadata-NTjPt89L.js} +1 -1
- package/dist/{teamMetadata-26Mwjb2i.js.map → teamMetadata-NTjPt89L.js.map} +1 -1
- package/dist/{teamRoutes-CtNcFZjR.js → teamRoutes-CFDsHPkd.js} +12 -12
- package/dist/{teamRoutes-CtNcFZjR.js.map → teamRoutes-CFDsHPkd.js.map} +1 -1
- package/dist/{team_memberRoutes-Cxgte_vj.js → team_memberRoutes-BgjY9Kwq.js} +7 -7
- package/dist/{team_memberRoutes-Cxgte_vj.js.map → team_memberRoutes-BgjY9Kwq.js.map} +1 -1
- package/dist/{useBreadcrumbs-DIqU5AAp.js → useBreadcrumbs-CPWXm0hm.js} +1 -1
- package/dist/{useBreadcrumbs-DIqU5AAp.js.map → useBreadcrumbs-CPWXm0hm.js.map} +1 -1
- package/dist/{userAuthorized-klLUHGxT.js → userAuthorized-3RiCDXxr.js} +1 -1
- package/dist/{userAuthorized-klLUHGxT.js.map → userAuthorized-3RiCDXxr.js.map} +1 -1
- package/package.json +2 -2
- package/dist/CreateTeamForm-CmVZdqOQ.js +0 -12
- package/dist/CustomerSupportTicketList-CB_Y1lVj.js +0 -64
- package/dist/DefaultReferralTeamPage-BHail7YF.js.map +0 -1
- package/dist/EditTeamForm-DhutyI9c.js +0 -12
- package/dist/Signup-BCVZZCR_.js.map +0 -1
- package/dist/SignupConsentFlow-clxBjJlU.js.map +0 -1
- package/dist/StaffSupportTicketList-2TbMweMK.js +0 -64
- package/dist/TeamAttachmentsTab-D0SJplvU.js +0 -64
- package/dist/TeamHistoryTab-BSEOYC_5.js +0 -6
- package/dist/TeamList-DU6CFPUY.js +0 -8
- package/dist/TeamMemberList-uwSe9zdv.js +0 -7
- package/dist/TeamParent-CuASTHKr.js +0 -11
- package/dist/UserListPage-CjpxiETO.js +0 -5
- package/dist/ViewTeam-Bvvfik4P.js +0 -8
- package/dist/ViewTeam-CRmIplCt.js.map +0 -1
- package/dist/ViewTeamMember-DtQCZU-X.js +0 -7
- package/dist/signupConsentStorage-Ct4ZuKi-.js.map +0 -1
- package/dist/src-zjaOyP9b.js.map +0 -1
- /package/dist/{Appearance-CHCv4Fd1.js → Appearance-BhzkZJOL.js} +0 -0
- /package/dist/{TeamMembersTab-CeOJAhhR.js → TeamMembersTab-D7y2nV__.js} +0 -0
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { o as createLastUsedPresetGuard } from "./saved_filter-
|
|
2
|
-
import { c as userAuthenticated, s as staffOnly } from "./userAuthorized-
|
|
1
|
+
import { o as createLastUsedPresetGuard } from "./saved_filter-C2N9l_a9.js";
|
|
2
|
+
import { c as userAuthenticated, s as staffOnly } from "./userAuthorized-3RiCDXxr.js";
|
|
3
3
|
|
|
4
4
|
//#region src/slices/support_ticket/staff/staffSupportTicketRoutes.ts
|
|
5
5
|
const staffListPresetGuard = createLastUsedPresetGuard("support_ticket_staff", "StaffSupportTicketList");
|
|
@@ -60,7 +60,7 @@ const staffSupportTicketRoutes = [{
|
|
|
60
60
|
{
|
|
61
61
|
path: staffSupportPaths.staff_list.path,
|
|
62
62
|
name: staffSupportPaths.staff_list.name,
|
|
63
|
-
component: () => import("./StaffSupportTicketList-
|
|
63
|
+
component: () => import("./StaffSupportTicketList-GyzlONKe.js"),
|
|
64
64
|
beforeEnter: (to) => staffListPresetGuard(to),
|
|
65
65
|
meta: {
|
|
66
66
|
title: "Manage Support",
|
|
@@ -74,7 +74,7 @@ const staffSupportTicketRoutes = [{
|
|
|
74
74
|
{
|
|
75
75
|
path: staffSupportPaths.staff_create.path,
|
|
76
76
|
name: staffSupportPaths.staff_create.name,
|
|
77
|
-
component: () => import("./StaffCreateSupportTicketForm-
|
|
77
|
+
component: () => import("./StaffCreateSupportTicketForm-D7ctCaXe.js"),
|
|
78
78
|
meta: {
|
|
79
79
|
title: "Create Support Ticket",
|
|
80
80
|
description: "Create new support ticket item",
|
|
@@ -90,7 +90,7 @@ const staffSupportTicketRoutes = [{
|
|
|
90
90
|
{
|
|
91
91
|
path: staffSupportPaths.staff_create_success.path,
|
|
92
92
|
name: staffSupportPaths.staff_create_success.name,
|
|
93
|
-
component: () => import("./StaffSupportTicketSuccess-
|
|
93
|
+
component: () => import("./StaffSupportTicketSuccess-DvonYilY.js"),
|
|
94
94
|
meta: {
|
|
95
95
|
title: "Support Ticket Created",
|
|
96
96
|
description: "Support ticket created successfully",
|
|
@@ -112,7 +112,7 @@ const staffSupportTicketRoutes = [{
|
|
|
112
112
|
},
|
|
113
113
|
{
|
|
114
114
|
path: staffSupportPaths.staff_edit.path,
|
|
115
|
-
component: () => import("./StaffSupportTicketParent-
|
|
115
|
+
component: () => import("./StaffSupportTicketParent-Dyybqx74.js"),
|
|
116
116
|
meta: {
|
|
117
117
|
title: "View Support Ticket",
|
|
118
118
|
description: "View support ticket details"
|
|
@@ -120,7 +120,7 @@ const staffSupportTicketRoutes = [{
|
|
|
120
120
|
children: [{
|
|
121
121
|
path: "",
|
|
122
122
|
name: staffSupportPaths.staff_edit.name,
|
|
123
|
-
component: () => import("./StaffSupportTicketDetailPage-
|
|
123
|
+
component: () => import("./StaffSupportTicketDetailPage-LqnNfU34.js"),
|
|
124
124
|
meta: {
|
|
125
125
|
title: "View Support Ticket",
|
|
126
126
|
description: "View support ticket details"
|
|
@@ -132,4 +132,4 @@ const staffSupportTicketRoutes = [{
|
|
|
132
132
|
|
|
133
133
|
//#endregion
|
|
134
134
|
export { staffSupportTicketRoutes as n, staffSupportPaths as t };
|
|
135
|
-
//# sourceMappingURL=staffSupportTicketRoutes-
|
|
135
|
+
//# sourceMappingURL=staffSupportTicketRoutes-CyMecWpC.js.map
|
package/dist/{staffSupportTicketRoutes-L4CU5dcu.js.map → staffSupportTicketRoutes-CyMecWpC.js.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"staffSupportTicketRoutes-
|
|
1
|
+
{"version":3,"file":"staffSupportTicketRoutes-CyMecWpC.js","names":["staffSupportTicketRoutes: Array<ExtendedRouteRecordRaw>"],"sources":["../src/slices/support_ticket/staff/staffSupportTicketRoutes.ts"],"sourcesContent":["import { createLastUsedPresetGuard } from '../../../slices/saved_filter';\nimport { staffOnly, userAuthenticated } from '../../../middleware/userAuthorized';\nimport type { ExtendedRouteRecordRaw } from '../../../types/ExtendedRoute';\n\nconst staffListPresetGuard = createLastUsedPresetGuard('support_ticket_staff', 'StaffSupportTicketList');\n\nexport const staffSupportPaths = {\n staff_list: {\n path: '',\n full_path: '/staff/support',\n name: 'StaffSupportTicketList',\n },\n staff_create: {\n path: 'create',\n full_path: '/staff/support/create',\n name: 'StaffCreateSupportTicket',\n },\n staff_create_success: {\n path: 'create/success',\n full_path: '/staff/support/create/success',\n name: 'StaffSupportTicketSuccess',\n },\n staff_edit: {\n path: ':id',\n full_path: '/staff/support/:id',\n name: 'StaffEditSupportTicket',\n },\n staff_workflow: {\n path: 'workflow',\n full_path: '/staff/support/:id/workflow',\n name: 'StaffSupportTicketWorkflow',\n },\n staff_customer_notes: {\n path: 'customer-notes',\n full_path: '/staff/support/:id/customer-notes',\n name: 'StaffSupportTicketCustomerNotes',\n },\n staff_internal_notes: {\n path: 'internal-notes',\n full_path: '/staff/support/:id/internal-notes',\n name: 'StaffSupportTicketInternalNotes',\n },\n staff_history: {\n path: 'history',\n full_path: '/staff/support/:id/history',\n name: 'StaffSupportTicketHistory',\n },\n staff_attachments: {\n path: 'attachments',\n full_path: '/staff/support/:id/attachments',\n name: 'StaffSupportTicketAttachments',\n },\n} as const;\n\nexport const staffSupportTicketRoutes: Array<ExtendedRouteRecordRaw> = [\n {\n path: '/staff/support',\n name: 'StaffSupportTicket',\n redirect: { name: staffSupportPaths.staff_list.name },\n beforeEnter: [userAuthenticated, staffOnly],\n meta: {},\n children: [\n {\n path: staffSupportPaths.staff_list.path,\n name: staffSupportPaths.staff_list.name,\n component: () => import('./StaffSupportTicketList.vue'),\n beforeEnter: (to) => staffListPresetGuard(to),\n meta: {\n title: 'Manage Support',\n description: 'Admin support ticket management',\n side_bar: {\n section: ' Staff',\n visible_to: ['staff', 'super_admin'],\n },\n },\n },\n {\n path: staffSupportPaths.staff_create.path,\n name: staffSupportPaths.staff_create.name,\n component: () => import('./StaffCreateSupportTicketForm.vue'),\n meta: {\n title: 'Create Support Ticket',\n description: 'Create new support ticket item',\n breadcrumbs: [\n {\n label: 'Staff Support Ticket',\n to: { name: staffSupportPaths.staff_list.name },\n },\n {\n label: 'Create',\n to: { name: staffSupportPaths.staff_create.name },\n },\n ],\n },\n },\n {\n path: staffSupportPaths.staff_create_success.path,\n name: staffSupportPaths.staff_create_success.name,\n component: () => import('./StaffSupportTicketSuccess.vue'),\n meta: {\n title: 'Support Ticket Created',\n description: 'Support ticket created successfully',\n breadcrumbs: [\n {\n label: 'Staff Support Ticket',\n to: { name: staffSupportPaths.staff_list.name },\n },\n {\n label: 'Create',\n to: { name: staffSupportPaths.staff_create.name },\n },\n {\n label: 'Success',\n to: { name: staffSupportPaths.staff_create_success.name },\n },\n ],\n },\n },\n {\n path: staffSupportPaths.staff_edit.path,\n component: () => import('./StaffSupportTicketParent.vue'),\n meta: {\n title: 'View Support Ticket',\n description: 'View support ticket details',\n },\n children: [\n {\n path: '',\n name: staffSupportPaths.staff_edit.name,\n component: () => import('./StaffSupportTicketDetailPage.vue'),\n meta: {\n title: 'View Support Ticket',\n description: 'View support ticket details',\n },\n },\n ],\n },\n ],\n },\n];\n"],"mappings":";;;;AAIA,MAAM,uBAAuB,0BAA0B,wBAAwB,yBAAyB;AAExG,MAAa,oBAAoB;CAC/B,YAAY;EACV,MAAM;EACN,WAAW;EACX,MAAM;EACP;CACD,cAAc;EACZ,MAAM;EACN,WAAW;EACX,MAAM;EACP;CACD,sBAAsB;EACpB,MAAM;EACN,WAAW;EACX,MAAM;EACP;CACD,YAAY;EACV,MAAM;EACN,WAAW;EACX,MAAM;EACP;CACD,gBAAgB;EACd,MAAM;EACN,WAAW;EACX,MAAM;EACP;CACD,sBAAsB;EACpB,MAAM;EACN,WAAW;EACX,MAAM;EACP;CACD,sBAAsB;EACpB,MAAM;EACN,WAAW;EACX,MAAM;EACP;CACD,eAAe;EACb,MAAM;EACN,WAAW;EACX,MAAM;EACP;CACD,mBAAmB;EACjB,MAAM;EACN,WAAW;EACX,MAAM;EACP;CACF;AAED,MAAaA,2BAA0D,CACrE;CACE,MAAM;CACN,MAAM;CACN,UAAU,EAAE,MAAM,kBAAkB,WAAW,MAAM;CACrD,aAAa,CAAC,mBAAmB,UAAU;CAC3C,MAAM,EAAE;CACR,UAAU;EACR;GACE,MAAM,kBAAkB,WAAW;GACnC,MAAM,kBAAkB,WAAW;GACnC,iBAAiB,OAAO;GACxB,cAAc,OAAO,qBAAqB,GAAG;GAC7C,MAAM;IACJ,OAAO;IACP,aAAa;IACb,UAAU;KACR,SAAS;KACT,YAAY,CAAC,SAAS,cAAc;KACrC;IACF;GACF;EACD;GACE,MAAM,kBAAkB,aAAa;GACrC,MAAM,kBAAkB,aAAa;GACrC,iBAAiB,OAAO;GACxB,MAAM;IACJ,OAAO;IACP,aAAa;IACb,aAAa,CACX;KACE,OAAO;KACP,IAAI,EAAE,MAAM,kBAAkB,WAAW,MAAM;KAChD,EACD;KACE,OAAO;KACP,IAAI,EAAE,MAAM,kBAAkB,aAAa,MAAM;KAClD,CACF;IACF;GACF;EACD;GACE,MAAM,kBAAkB,qBAAqB;GAC7C,MAAM,kBAAkB,qBAAqB;GAC7C,iBAAiB,OAAO;GACxB,MAAM;IACJ,OAAO;IACP,aAAa;IACb,aAAa;KACX;MACE,OAAO;MACP,IAAI,EAAE,MAAM,kBAAkB,WAAW,MAAM;MAChD;KACD;MACE,OAAO;MACP,IAAI,EAAE,MAAM,kBAAkB,aAAa,MAAM;MAClD;KACD;MACE,OAAO;MACP,IAAI,EAAE,MAAM,kBAAkB,qBAAqB,MAAM;MAC1D;KACF;IACF;GACF;EACD;GACE,MAAM,kBAAkB,WAAW;GACnC,iBAAiB,OAAO;GACxB,MAAM;IACJ,OAAO;IACP,aAAa;IACd;GACD,UAAU,CACR;IACE,MAAM;IACN,MAAM,kBAAkB,WAAW;IACnC,iBAAiB,OAAO;IACxB,MAAM;KACJ,OAAO;KACP,aAAa;KACd;IACF,CACF;GACF;EACF;CACF,CACF"}
|
|
@@ -46,4 +46,4 @@ const teamMemberUpdateSchemaWithMetadata = withMetadata(TeamMemberUpdateSchema,
|
|
|
46
46
|
|
|
47
47
|
//#endregion
|
|
48
48
|
export { teamMemberUpdateSchemaWithMetadata as n, teamMemberCreateSchemaWithMetadata as t };
|
|
49
|
-
//# sourceMappingURL=teamMemberMetadata-
|
|
49
|
+
//# sourceMappingURL=teamMemberMetadata-C4urCwBU.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"teamMemberMetadata-
|
|
1
|
+
{"version":3,"file":"teamMemberMetadata-C4urCwBU.js","names":[],"sources":["../src/slices/team/team_member/teamMemberMetadata.ts"],"sourcesContent":["import {\n type UseFormTyped,\n withMetadata,\n ZINIA_FIELDS_KEY,\n ZINIA_FORM_KEY,\n} from '@dragonmastery/zinia-forms-core';\nimport { TeamMemberCreateSchema, TeamMemberUpdateSchema } from '@dragonmastery/dragoncore-shared';\nimport { inject } from 'vue';\n\n// Create schema (no ID)\nexport const teamMemberCreateSchemaWithMetadata = withMetadata(\n TeamMemberCreateSchema.omit({ team_id: true }),\n 'teamMemberCreateSchema',\n {\n user_id: {\n inputType: 'select',\n placeholder: 'Select user',\n },\n email_address: {\n inputType: 'email',\n placeholder: 'Enter email address',\n },\n website_address: {\n inputType: 'text',\n placeholder: 'Enter website address',\n },\n business_phone: {\n inputType: 'tel',\n placeholder: 'Enter business phone',\n },\n mobile_phone: {\n inputType: 'tel',\n placeholder: 'Enter mobile phone',\n },\n },\n);\n\n// Update schema (with ID)\nexport const teamMemberUpdateSchemaWithMetadata = withMetadata(\n TeamMemberUpdateSchema,\n 'teamMemberUpdateSchema',\n {\n email_address: {\n inputType: 'email',\n placeholder: 'Enter email address',\n },\n website_address: {\n inputType: 'text',\n placeholder: 'Enter website address',\n },\n business_phone: {\n inputType: 'tel',\n placeholder: 'Enter business phone',\n },\n mobile_phone: {\n inputType: 'tel',\n placeholder: 'Enter mobile phone',\n },\n },\n);\n\nexport type TeamMemberCreateFormDto = UseFormTyped<typeof TeamMemberCreateSchema>;\nexport type TeamMemberUpdateFormDto = UseFormTyped<typeof TeamMemberUpdateSchema>;\n\nexport const injectTeamMemberCreateForm = () =>\n inject<TeamMemberCreateFormDto['form']>(ZINIA_FORM_KEY);\nexport const injectTeamMemberUpdateForm = () =>\n inject<TeamMemberUpdateFormDto['form']>(ZINIA_FORM_KEY);\nexport const injectTeamMemberZinia = () =>\n inject<TeamMemberCreateFormDto['zinia'] | TeamMemberUpdateFormDto['zinia']>(\n ZINIA_FIELDS_KEY,\n );\n"],"mappings":";;;;;AAUA,MAAa,qCAAqC,aAChD,uBAAuB,KAAK,EAAE,SAAS,MAAM,CAAC,EAC9C,0BACA;CACE,SAAS;EACP,WAAW;EACX,aAAa;EACd;CACD,eAAe;EACb,WAAW;EACX,aAAa;EACd;CACD,iBAAiB;EACf,WAAW;EACX,aAAa;EACd;CACD,gBAAgB;EACd,WAAW;EACX,aAAa;EACd;CACD,cAAc;EACZ,WAAW;EACX,aAAa;EACd;CACF,CACF;AAGD,MAAa,qCAAqC,aAChD,wBACA,0BACA;CACE,eAAe;EACb,WAAW;EACX,aAAa;EACd;CACD,iBAAiB;EACf,WAAW;EACX,aAAa;EACd;CACD,gBAAgB;EACd,WAAW;EACX,aAAa;EACd;CACD,cAAc;EACZ,WAAW;EACX,aAAa;EACd;CACF,CACF"}
|
|
@@ -50,4 +50,4 @@ const teamUpdateSchemaWithMetadata = withMetadata(TeamUpdateSchema, "teamUpdateS
|
|
|
50
50
|
|
|
51
51
|
//#endregion
|
|
52
52
|
export { teamUpdateSchemaWithMetadata as n, teamCreateSchemaWithMetadata as t };
|
|
53
|
-
//# sourceMappingURL=teamMetadata-
|
|
53
|
+
//# sourceMappingURL=teamMetadata-NTjPt89L.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"teamMetadata-
|
|
1
|
+
{"version":3,"file":"teamMetadata-NTjPt89L.js","names":[],"sources":["../src/slices/team/teamMetadata.ts"],"sourcesContent":["import {\n type UseFormTyped,\n withMetadata,\n ZINIA_FIELDS_KEY,\n ZINIA_FORM_KEY,\n} from '@dragonmastery/zinia-forms-core';\nimport { TeamCreateSchema, TeamUpdateSchema } from '@dragonmastery/dragoncore-shared';\nimport { inject } from 'vue';\n\n// Create schema (no ID)\nexport const teamCreateSchemaWithMetadata = withMetadata(\n TeamCreateSchema,\n 'teamCreateSchema',\n {\n description: {\n inputType: 'textarea',\n placeholder: 'Enter description',\n },\n contact_email: {\n inputType: 'email',\n placeholder: 'Enter contact email',\n },\n url: {\n inputType: 'text',\n placeholder: 'Enter URL',\n },\n email_sent_from: {\n inputType: 'email',\n placeholder: 'Enter sent from email',\n },\n email_reply_to: {\n inputType: 'email',\n placeholder: 'Enter reply to email',\n },\n },\n);\n\n// Update schema (with ID)\nexport const teamUpdateSchemaWithMetadata = withMetadata(\n TeamUpdateSchema,\n 'teamUpdateSchema',\n {\n description: {\n inputType: 'textarea',\n placeholder: 'Enter description',\n },\n contact_email: {\n inputType: 'email',\n placeholder: 'Enter contact email',\n },\n url: {\n inputType: 'text',\n placeholder: 'Enter URL',\n },\n email_sent_from: {\n inputType: 'email',\n placeholder: 'Enter sent from email',\n },\n email_reply_to: {\n inputType: 'email',\n placeholder: 'Enter reply to email',\n },\n },\n);\n\nexport type TeamCreateFormDto = UseFormTyped<typeof TeamCreateSchema>;\nexport type TeamUpdateFormDto = UseFormTyped<typeof TeamUpdateSchema>;\n\nexport const injectTeamCreateForm = () => inject<TeamCreateFormDto['form']>(ZINIA_FORM_KEY);\nexport const injectTeamUpdateForm = () => inject<TeamUpdateFormDto['form']>(ZINIA_FORM_KEY);\nexport const injectTeamZinia = () =>\n inject<TeamCreateFormDto['zinia'] | TeamUpdateFormDto['zinia']>(ZINIA_FIELDS_KEY);\n"],"mappings":";;;;;AAUA,MAAa,+BAA+B,aAC1C,kBACA,oBACA;CACE,aAAa;EACX,WAAW;EACX,aAAa;EACd;CACD,eAAe;EACb,WAAW;EACX,aAAa;EACd;CACD,KAAK;EACH,WAAW;EACX,aAAa;EACd;CACD,iBAAiB;EACf,WAAW;EACX,aAAa;EACd;CACD,gBAAgB;EACd,WAAW;EACX,aAAa;EACd;CACF,CACF;AAGD,MAAa,+BAA+B,aAC1C,kBACA,oBACA;CACE,aAAa;EACX,WAAW;EACX,aAAa;EACd;CACD,eAAe;EACb,WAAW;EACX,aAAa;EACd;CACD,KAAK;EACH,WAAW;EACX,aAAa;EACd;CACD,iBAAiB;EACf,WAAW;EACX,aAAa;EACd;CACD,gBAAgB;EACd,WAAW;EACX,aAAa;EACd;CACF,CACF"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { c as userAuthenticated } from "./userAuthorized-
|
|
2
|
-
import { n as teamMemberRoutes, t as teamMemberPaths } from "./team_memberRoutes-
|
|
1
|
+
import { c as userAuthenticated } from "./userAuthorized-3RiCDXxr.js";
|
|
2
|
+
import { n as teamMemberRoutes, t as teamMemberPaths } from "./team_memberRoutes-BgjY9Kwq.js";
|
|
3
3
|
|
|
4
4
|
//#region src/slices/team/teamRoutes.ts
|
|
5
5
|
const teamPaths = {
|
|
@@ -54,7 +54,7 @@ const teamRoutes = [{
|
|
|
54
54
|
{
|
|
55
55
|
path: teamPaths.list.path,
|
|
56
56
|
name: teamPaths.list.name,
|
|
57
|
-
component: () => import("./TeamList-
|
|
57
|
+
component: () => import("./TeamList-cp8Pa2xg.js"),
|
|
58
58
|
meta: {
|
|
59
59
|
title: "Teams",
|
|
60
60
|
description: "Manage teams",
|
|
@@ -72,7 +72,7 @@ const teamRoutes = [{
|
|
|
72
72
|
{
|
|
73
73
|
path: teamPaths.create.path,
|
|
74
74
|
name: teamPaths.create.name,
|
|
75
|
-
component: () => import("./CreateTeamForm-
|
|
75
|
+
component: () => import("./CreateTeamForm-5V_ks5Ie.js"),
|
|
76
76
|
meta: {
|
|
77
77
|
title: "Create Team",
|
|
78
78
|
description: "Create new team",
|
|
@@ -87,7 +87,7 @@ const teamRoutes = [{
|
|
|
87
87
|
},
|
|
88
88
|
{
|
|
89
89
|
path: teamPaths.view.path,
|
|
90
|
-
component: () => import("./TeamParent-
|
|
90
|
+
component: () => import("./TeamParent-BseZ6Zoi.js"),
|
|
91
91
|
meta: { sectionTabs: [
|
|
92
92
|
{
|
|
93
93
|
id: "view",
|
|
@@ -124,7 +124,7 @@ const teamRoutes = [{
|
|
|
124
124
|
{
|
|
125
125
|
path: "",
|
|
126
126
|
name: teamPaths.view.name,
|
|
127
|
-
component: () => import("./ViewTeam-
|
|
127
|
+
component: () => import("./ViewTeam-rLNxVgS2.js"),
|
|
128
128
|
meta: {
|
|
129
129
|
title: "View Team",
|
|
130
130
|
description: "View team details",
|
|
@@ -134,7 +134,7 @@ const teamRoutes = [{
|
|
|
134
134
|
{
|
|
135
135
|
path: teamPaths.edit.path,
|
|
136
136
|
name: teamPaths.edit.name,
|
|
137
|
-
component: () => import("./EditTeamForm-
|
|
137
|
+
component: () => import("./EditTeamForm-Bf4rSgQg.js"),
|
|
138
138
|
meta: {
|
|
139
139
|
title: "Edit Team",
|
|
140
140
|
description: "Edit team details",
|
|
@@ -144,7 +144,7 @@ const teamRoutes = [{
|
|
|
144
144
|
{
|
|
145
145
|
path: teamPaths.notes.path,
|
|
146
146
|
name: teamPaths.notes.name,
|
|
147
|
-
component: () => import("./TeamNotesTab-
|
|
147
|
+
component: () => import("./TeamNotesTab-BQN9niw-.js"),
|
|
148
148
|
meta: {
|
|
149
149
|
title: "Team Notes",
|
|
150
150
|
description: "View and manage notes",
|
|
@@ -154,7 +154,7 @@ const teamRoutes = [{
|
|
|
154
154
|
{
|
|
155
155
|
path: teamPaths.attachments.path,
|
|
156
156
|
name: teamPaths.attachments.name,
|
|
157
|
-
component: () => import("./TeamAttachmentsTab-
|
|
157
|
+
component: () => import("./TeamAttachmentsTab-ChP4DaUP.js"),
|
|
158
158
|
meta: {
|
|
159
159
|
title: "Team Attachments",
|
|
160
160
|
description: "View and manage attachments",
|
|
@@ -164,7 +164,7 @@ const teamRoutes = [{
|
|
|
164
164
|
{
|
|
165
165
|
path: teamPaths.history.path,
|
|
166
166
|
name: teamPaths.history.name,
|
|
167
|
-
component: () => import("./TeamHistoryTab-
|
|
167
|
+
component: () => import("./TeamHistoryTab-wRpRizDE.js"),
|
|
168
168
|
meta: {
|
|
169
169
|
title: "Team History",
|
|
170
170
|
description: "View audit trail and changes",
|
|
@@ -174,7 +174,7 @@ const teamRoutes = [{
|
|
|
174
174
|
{
|
|
175
175
|
path: teamPaths.members.path,
|
|
176
176
|
name: teamPaths.members.name,
|
|
177
|
-
component: () => import("./TeamMembersTab-
|
|
177
|
+
component: () => import("./TeamMembersTab-D7y2nV__.js"),
|
|
178
178
|
meta: {
|
|
179
179
|
title: "Team Members",
|
|
180
180
|
description: "View and manage team members",
|
|
@@ -189,4 +189,4 @@ const teamRoutes = [{
|
|
|
189
189
|
|
|
190
190
|
//#endregion
|
|
191
191
|
export { teamRoutes as n, teamPaths as t };
|
|
192
|
-
//# sourceMappingURL=teamRoutes-
|
|
192
|
+
//# sourceMappingURL=teamRoutes-CFDsHPkd.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"teamRoutes-
|
|
1
|
+
{"version":3,"file":"teamRoutes-CFDsHPkd.js","names":["teamRoutes: Array<ExtendedRouteRecordRaw>"],"sources":["../src/slices/team/teamRoutes.ts"],"sourcesContent":["import { userAuthenticated } from '../../middleware/userAuthorized';\nimport type { ExtendedRouteRecordRaw } from '../../types/ExtendedRoute';\nimport { teamMemberPaths, teamMemberRoutes } from './team_member/team_memberRoutes';\n\nexport const teamPaths = {\n list: {\n path: '',\n full_path: '/teams',\n name: 'TeamList',\n },\n create: {\n path: 'create',\n full_path: '/teams/create',\n name: 'CreateTeam',\n },\n view: {\n path: ':id',\n full_path: '/teams/:id',\n name: 'ViewTeam',\n },\n edit: {\n path: 'edit',\n full_path: '/teams/:id/edit',\n name: 'EditTeam',\n },\n notes: {\n path: 'notes',\n full_path: '/teams/:id/notes',\n name: 'TeamNotes',\n },\n attachments: {\n path: 'attachments',\n full_path: '/teams/:id/attachments',\n name: 'TeamAttachments',\n },\n history: {\n path: 'history',\n full_path: '/teams/:id/history',\n name: 'TeamHistory',\n },\n members: {\n path: 'members',\n full_path: '/teams/:id/members',\n name: 'TeamMembers',\n },\n} as const;\n\nexport const teamRoutes: Array<ExtendedRouteRecordRaw> = [\n {\n path: '/teams',\n name: 'Team',\n redirect: { name: teamPaths.list.name },\n beforeEnter: [userAuthenticated],\n meta: {},\n children: [\n {\n path: teamPaths.list.path,\n name: teamPaths.list.name,\n component: () => import('./TeamList.vue'),\n meta: {\n title: 'Teams',\n description: 'Manage teams',\n side_bar: {\n section: 'Teams',\n visible_to: ['consumer', 'lead', 'staff', 'super_admin'],\n },\n },\n },\n {\n path: teamPaths.create.path,\n name: teamPaths.create.name,\n component: () => import('./CreateTeamForm.vue'),\n meta: {\n title: 'Create Team',\n description: 'Create new team',\n breadcrumbs: [\n {\n label: 'Teams',\n to: { name: teamPaths.list.name },\n },\n {\n label: 'Create',\n to: { name: teamPaths.create.name },\n },\n ],\n },\n },\n {\n path: teamPaths.view.path,\n component: () => import('./TeamParent.vue'),\n meta: {\n // Define team detail tabs\n sectionTabs: [\n {\n id: 'view',\n label: 'View',\n to: { name: teamPaths.view.name },\n },\n {\n id: 'edit',\n label: 'Edit',\n to: { name: teamPaths.edit.name },\n },\n {\n id: 'notes',\n label: 'Notes',\n to: { name: teamPaths.notes.name },\n },\n {\n id: 'attachments',\n label: 'Attachments',\n to: { name: teamPaths.attachments.name },\n },\n {\n id: 'history',\n label: 'History',\n to: { name: teamPaths.history.name },\n },\n {\n id: 'members',\n label: 'Members',\n to: { name: teamMemberPaths.list.name },\n },\n ],\n },\n children: [\n {\n path: '',\n name: teamPaths.view.name,\n component: () => import('./ViewTeam.vue'),\n meta: {\n title: 'View Team',\n description: 'View team details',\n currentTab: 'view',\n },\n },\n {\n path: teamPaths.edit.path,\n name: teamPaths.edit.name,\n component: () => import('./EditTeamForm.vue'),\n meta: {\n title: 'Edit Team',\n description: 'Edit team details',\n currentTab: 'edit',\n },\n },\n {\n path: teamPaths.notes.path,\n name: teamPaths.notes.name,\n component: () => import('./TeamNotesTab.vue'),\n meta: {\n title: 'Team Notes',\n description: 'View and manage notes',\n currentTab: 'notes',\n },\n },\n {\n path: teamPaths.attachments.path,\n name: teamPaths.attachments.name,\n component: () => import('./TeamAttachmentsTab.vue'),\n meta: {\n title: 'Team Attachments',\n description: 'View and manage attachments',\n currentTab: 'attachments',\n },\n },\n {\n path: teamPaths.history.path,\n name: teamPaths.history.name,\n component: () => import('./TeamHistoryTab.vue'),\n meta: {\n title: 'Team History',\n description: 'View audit trail and changes',\n currentTab: 'history',\n },\n },\n {\n path: teamPaths.members.path,\n name: teamPaths.members.name,\n component: () => import('./TeamMembersTab.vue'),\n meta: {\n title: 'Team Members',\n description: 'View and manage team members',\n currentTab: 'members',\n },\n children: teamMemberRoutes,\n },\n ],\n },\n ],\n },\n];\n"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { c as userAuthenticated } from "./userAuthorized-
|
|
1
|
+
import { c as userAuthenticated } from "./userAuthorized-3RiCDXxr.js";
|
|
2
2
|
|
|
3
3
|
//#region src/slices/team/team_member/team_memberRoutes.ts
|
|
4
4
|
const teamMemberPaths = {
|
|
@@ -27,7 +27,7 @@ const teamMemberRoutes = [
|
|
|
27
27
|
{
|
|
28
28
|
path: teamMemberPaths.list.path,
|
|
29
29
|
name: teamMemberPaths.list.name,
|
|
30
|
-
component: () => import("./TeamMemberList-
|
|
30
|
+
component: () => import("./TeamMemberList-B16SuLwM.js"),
|
|
31
31
|
beforeEnter: [userAuthenticated],
|
|
32
32
|
meta: {
|
|
33
33
|
title: "Team Members",
|
|
@@ -37,7 +37,7 @@ const teamMemberRoutes = [
|
|
|
37
37
|
{
|
|
38
38
|
path: teamMemberPaths.create.path,
|
|
39
39
|
name: teamMemberPaths.create.name,
|
|
40
|
-
component: () => import("./CreateTeamMemberForm-
|
|
40
|
+
component: () => import("./CreateTeamMemberForm-CayF2tIJ.js"),
|
|
41
41
|
beforeEnter: [userAuthenticated],
|
|
42
42
|
meta: {
|
|
43
43
|
title: "Create Team Member",
|
|
@@ -46,7 +46,7 @@ const teamMemberRoutes = [
|
|
|
46
46
|
},
|
|
47
47
|
{
|
|
48
48
|
path: teamMemberPaths.view.path,
|
|
49
|
-
component: () => import("./TeamMemberParent-
|
|
49
|
+
component: () => import("./TeamMemberParent-BJl8nBmP.js"),
|
|
50
50
|
beforeEnter: [userAuthenticated],
|
|
51
51
|
meta: { sectionTabs: [{
|
|
52
52
|
id: "view",
|
|
@@ -60,7 +60,7 @@ const teamMemberRoutes = [
|
|
|
60
60
|
children: [{
|
|
61
61
|
path: "",
|
|
62
62
|
name: teamMemberPaths.view.name,
|
|
63
|
-
component: () => import("./ViewTeamMember-
|
|
63
|
+
component: () => import("./ViewTeamMember-B5U8kZBw.js"),
|
|
64
64
|
meta: {
|
|
65
65
|
title: "View Team Member",
|
|
66
66
|
description: "View team member details",
|
|
@@ -69,7 +69,7 @@ const teamMemberRoutes = [
|
|
|
69
69
|
}, {
|
|
70
70
|
path: teamMemberPaths.edit.path,
|
|
71
71
|
name: teamMemberPaths.edit.name,
|
|
72
|
-
component: () => import("./EditTeamMemberForm-
|
|
72
|
+
component: () => import("./EditTeamMemberForm-Bh6zVNyJ.js"),
|
|
73
73
|
meta: {
|
|
74
74
|
title: "Edit Team Member",
|
|
75
75
|
description: "Edit team member details",
|
|
@@ -81,4 +81,4 @@ const teamMemberRoutes = [
|
|
|
81
81
|
|
|
82
82
|
//#endregion
|
|
83
83
|
export { teamMemberRoutes as n, teamMemberPaths as t };
|
|
84
|
-
//# sourceMappingURL=team_memberRoutes-
|
|
84
|
+
//# sourceMappingURL=team_memberRoutes-BgjY9Kwq.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"team_memberRoutes-
|
|
1
|
+
{"version":3,"file":"team_memberRoutes-BgjY9Kwq.js","names":["teamMemberRoutes: Array<ExtendedRouteRecordRaw>"],"sources":["../src/slices/team/team_member/team_memberRoutes.ts"],"sourcesContent":["import { userAuthenticated } from '../../../middleware/userAuthorized';\nimport type { ExtendedRouteRecordRaw } from '../../../types/ExtendedRoute';\n\nexport const teamMemberPaths = {\n list: {\n path: '',\n full_path: '/teams/:id/members',\n name: 'TeamMemberList',\n },\n create: {\n path: 'create',\n full_path: '/teams/:id/members/create',\n name: 'CreateTeamMember',\n },\n view: {\n path: ':member_id',\n full_path: '/teams/:id/members/:member_id',\n name: 'ViewTeamMember',\n },\n edit: {\n path: 'edit',\n full_path: '/teams/:id/members/:member_id/edit',\n name: 'EditTeamMember',\n },\n} as const;\n\nexport const teamMemberRoutes: Array<ExtendedRouteRecordRaw> = [\n {\n path: teamMemberPaths.list.path,\n name: teamMemberPaths.list.name,\n component: () => import('./TeamMemberList.vue'),\n beforeEnter: [userAuthenticated],\n meta: {\n title: 'Team Members',\n description: 'View and manage team members',\n // Breadcrumbs managed by TeamMembersTab component\n },\n },\n {\n path: teamMemberPaths.create.path,\n name: teamMemberPaths.create.name,\n component: () => import('./CreateTeamMemberForm.vue'),\n beforeEnter: [userAuthenticated],\n meta: {\n title: 'Create Team Member',\n description: 'Create new team member',\n // Breadcrumbs managed by TeamMembersTab component\n },\n },\n {\n path: teamMemberPaths.view.path,\n component: () => import('./TeamMemberParent.vue'),\n beforeEnter: [userAuthenticated],\n meta: {\n // Define team member detail tabs\n sectionTabs: [\n {\n id: 'view',\n label: 'View',\n to: { name: teamMemberPaths.view.name },\n },\n {\n id: 'edit',\n label: 'Edit',\n to: { name: teamMemberPaths.edit.name },\n },\n ],\n },\n children: [\n {\n path: '',\n name: teamMemberPaths.view.name,\n component: () => import('./ViewTeamMember.vue'),\n meta: {\n title: 'View Team Member',\n description: 'View team member details',\n currentTab: 'view',\n },\n },\n {\n path: teamMemberPaths.edit.path,\n name: teamMemberPaths.edit.name,\n component: () => import('./EditTeamMemberForm.vue'),\n meta: {\n title: 'Edit Team Member',\n description: 'Edit team member details',\n currentTab: 'edit',\n },\n },\n ],\n },\n];\n"],"mappings":";;;AAGA,MAAa,kBAAkB;CAC7B,MAAM;EACJ,MAAM;EACN,WAAW;EACX,MAAM;EACP;CACD,QAAQ;EACN,MAAM;EACN,WAAW;EACX,MAAM;EACP;CACD,MAAM;EACJ,MAAM;EACN,WAAW;EACX,MAAM;EACP;CACD,MAAM;EACJ,MAAM;EACN,WAAW;EACX,MAAM;EACP;CACF;AAED,MAAaA,mBAAkD;CAC7D;EACE,MAAM,gBAAgB,KAAK;EAC3B,MAAM,gBAAgB,KAAK;EAC3B,iBAAiB,OAAO;EACxB,aAAa,CAAC,kBAAkB;EAChC,MAAM;GACJ,OAAO;GACP,aAAa;GAEd;EACF;CACD;EACE,MAAM,gBAAgB,OAAO;EAC7B,MAAM,gBAAgB,OAAO;EAC7B,iBAAiB,OAAO;EACxB,aAAa,CAAC,kBAAkB;EAChC,MAAM;GACJ,OAAO;GACP,aAAa;GAEd;EACF;CACD;EACE,MAAM,gBAAgB,KAAK;EAC3B,iBAAiB,OAAO;EACxB,aAAa,CAAC,kBAAkB;EAChC,MAAM,EAEJ,aAAa,CACX;GACE,IAAI;GACJ,OAAO;GACP,IAAI,EAAE,MAAM,gBAAgB,KAAK,MAAM;GACxC,EACD;GACE,IAAI;GACJ,OAAO;GACP,IAAI,EAAE,MAAM,gBAAgB,KAAK,MAAM;GACxC,CACF,EACF;EACD,UAAU,CACR;GACE,MAAM;GACN,MAAM,gBAAgB,KAAK;GAC3B,iBAAiB,OAAO;GACxB,MAAM;IACJ,OAAO;IACP,aAAa;IACb,YAAY;IACb;GACF,EACD;GACE,MAAM,gBAAgB,KAAK;GAC3B,MAAM,gBAAgB,KAAK;GAC3B,iBAAiB,OAAO;GACxB,MAAM;IACJ,OAAO;IACP,aAAa;IACb,YAAY;IACb;GACF,CACF;EACF;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useBreadcrumbs-
|
|
1
|
+
{"version":3,"file":"useBreadcrumbs-CPWXm0hm.js","names":[],"sources":["../src/composables/useBreadcrumbs.ts"],"sourcesContent":["import { inject, onUnmounted, watchEffect } from 'vue';\n\nexport const BREADCRUMB_KEY = Symbol('breadcrumbs');\n\nexport interface Breadcrumb {\n label: string;\n to: any;\n loading?: boolean;\n}\n\nexport interface BreadcrumbSegment {\n componentId: symbol;\n breadcrumbs: Breadcrumb[];\n}\n\nexport interface BreadcrumbContext {\n setBreadcrumbs: (breadcrumbs: Breadcrumb[] | null) => void;\n setBreadcrumbSegment: (componentId: symbol, breadcrumbs: Breadcrumb[] | null) => void;\n}\n\nlet componentIdCounter = 0;\n\n/**\n * Composable for components to set their own breadcrumbs\n * Accepts a function that returns breadcrumbs - handles reactivity automatically\n * Automatically clears breadcrumbs when component unmounts\n *\n * @param getBreadcrumbs - Function that returns breadcrumb array (reactive)\n * @param useSegmentMode - If true, uses the new segment-based system for nested breadcrumbs\n */\nexport function useBreadcrumbs(\n getBreadcrumbs: () => Breadcrumb[],\n useSegmentMode: boolean = false,\n) {\n const context = inject<BreadcrumbContext>(BREADCRUMB_KEY);\n\n if (!context) {\n console.warn(\n 'useBreadcrumbs: No breadcrumb context found. Make sure InApp.vue provides it.',\n );\n return;\n }\n\n if (useSegmentMode) {\n // Use segment-based mode for nested breadcrumbs\n const componentId = Symbol(`breadcrumb-${componentIdCounter++}`);\n\n watchEffect(() => {\n const breadcrumbs = getBreadcrumbs();\n context.setBreadcrumbSegment(componentId, breadcrumbs.length > 0 ? breadcrumbs : null);\n });\n\n onUnmounted(() => {\n context.setBreadcrumbSegment(componentId, null);\n });\n } else {\n // Legacy mode: single breadcrumb setter (for backward compatibility)\n watchEffect(() => {\n context.setBreadcrumbs(getBreadcrumbs());\n });\n\n onUnmounted(() => {\n context.setBreadcrumbs(null);\n });\n }\n}\n"],"mappings":";;;AAEA,MAAa,iBAAiB,OAAO,cAAc;AAkBnD,IAAI,qBAAqB;;;;;;;;;AAUzB,SAAgB,eACd,gBACA,iBAA0B,OAC1B;CACA,MAAM,UAAU,OAA0B,eAAe;AAEzD,KAAI,CAAC,SAAS;AACZ,UAAQ,KACN,gFACD;AACD;;AAGF,KAAI,gBAAgB;EAElB,MAAM,cAAc,OAAO,cAAc,uBAAuB;AAEhE,oBAAkB;GAChB,MAAM,cAAc,gBAAgB;AACpC,WAAQ,qBAAqB,aAAa,YAAY,SAAS,IAAI,cAAc,KAAK;IACtF;AAEF,oBAAkB;AAChB,WAAQ,qBAAqB,aAAa,KAAK;IAC/C;QACG;AAEL,oBAAkB;AAChB,WAAQ,eAAe,gBAAgB,CAAC;IACxC;AAEF,oBAAkB;AAChB,WAAQ,eAAe,KAAK;IAC5B"}
|
|
@@ -186,4 +186,4 @@ const leadOrStaffOnly = createLeadOrStaffOnlyGuard();
|
|
|
186
186
|
|
|
187
187
|
//#endregion
|
|
188
188
|
export { createUserAuthorizedGuard as a, userAuthenticated as c, createSuperAdminOnlyGuard as i, userIsSuperAdmin as l, createLeadOrStaffOnlyGuard as n, leadOrStaffOnly as o, createStaffOnlyGuard as r, staffOnly as s, createAuthenticatedGuard as t };
|
|
189
|
-
//# sourceMappingURL=userAuthorized-
|
|
189
|
+
//# sourceMappingURL=userAuthorized-3RiCDXxr.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"userAuthorized-klLUHGxT.js","names":[],"sources":["../src/middleware/userAuthorized.ts"],"sourcesContent":["import type { UserTypeValues } from '@dragonmastery/dragoncore-shared';\nimport type { NavigationGuard, RouteLocationRaw } from 'vue-router';\nimport { createAppBatch } from '../composables/useRpcAuth';\nimport { useEnv } from '../composables/useEnv';\nimport { useUserSessionStore } from '../composables/useUserSessionStore';\nimport { logger } from '../utils/logger';\n\nexport interface UserAuthorizedOptions {\n /**\n * List of user types allowed to access this route\n * Same pattern as `visible_to` in route meta\n */\n allowedUserTypes: UserTypeValues[];\n\n /**\n * Where to redirect if user is not authorized\n * Can be a route name, path, or route object\n */\n redirectTo?: RouteLocationRaw;\n\n /**\n * Login path for redirecting unauthenticated users\n * Only used if requireAuth is true\n */\n loginPath?: string;\n\n /**\n * Whether to also check authentication (token refresh, etc.)\n * Default: true\n */\n requireAuth?: boolean;\n}\n\n/**\n * Creates a navigation guard that checks both authentication and authorization\n * based on allowed user types.\n *\n * @example\n * // Only staff and super_admin can access\n * const staffOnly = createUserAuthorizedGuard({\n * allowedUserTypes: ['staff', 'super_admin'],\n * redirectTo: { name: 'Home' }\n * });\n *\n * @example\n * // All authenticated users can access\n * const authenticated = createUserAuthorizedGuard({\n * allowedUserTypes: ['consumer', 'lead', 'staff', 'super_admin'],\n * redirectTo: { name: 'Home' }\n * });\n */\nexport function createUserAuthorizedGuard(options: UserAuthorizedOptions): NavigationGuard {\n const {\n allowedUserTypes,\n redirectTo = { name: 'Home' },\n loginPath = '/auth/login',\n requireAuth = true,\n } = options;\n\n return async (to, _from, next) => {\n // Legal and other public routes must never require auth (used during signup, iframe embed)\n if (to.meta?.public) {\n next();\n return;\n }\n\n const userSession = useUserSessionStore();\n const env = useEnv();\n\n // Step 1: Check authentication if required\n if (requireAuth) {\n const hasAccessToken = !!userSession.accessToken;\n\n if (hasAccessToken) {\n const { accessTokenExpired, refreshTokenExpired } = userSession.isTokenExpired();\n\n if (!accessTokenExpired) {\n // Token is valid, proceed to authorization check\n } else if (refreshTokenExpired) {\n // Refresh token expired, redirect to login\n logger.warn('[UserAuthorized] Refresh token expired, redirecting to login');\n userSession.clearSession();\n const returnUrl = to.fullPath;\n next({\n path: loginPath,\n query: { returnUrl },\n });\n return;\n } else {\n // Access token expired, try refresh\n logger.debug('[UserAuthorized] Access token expired, attempting refresh');\n const refreshSuccessful = await userSession.refreshToken();\n\n if (!refreshSuccessful) {\n logger.error('[UserAuthorized] Token refresh failed, redirecting to login');\n userSession.clearSession();\n const returnUrl = to.fullPath;\n next({\n path: loginPath,\n query: { returnUrl },\n });\n return;\n }\n }\n } else {\n // No access token, try refresh token flow\n logger.debug('[UserAuthorized] No access token, attempting refresh token flow');\n const refreshSuccessful = await userSession.refreshToken();\n\n if (!refreshSuccessful) {\n logger.debug('[UserAuthorized] No valid session found, redirecting to login');\n userSession.clearSession();\n const returnUrl = to.fullPath;\n next({\n path: loginPath,\n query: { returnUrl },\n });\n return;\n }\n }\n }\n\n // Step 2: Check consent status\n // Call getPendingConsents for fresh data - backend returns [] when CONSENT_FEATURE_ENABLED is false\n if (to.path !== '/auth/consent-required') {\n try {\n const batch = createAppBatch();\n const pending = await batch.users.getPendingConsents();\n if (pending && pending.length > 0) {\n logger.debug('[UserAuthorized] Pending consents found, redirecting to consent-required');\n next({\n path: '/auth/consent-required',\n query: { returnUrl: to.fullPath, ...to.query },\n });\n return;\n }\n } catch (err) {\n logger.warn('[UserAuthorized] Failed to check pending consents, continuing', { err });\n // On auth/network error, let user proceed; they may hit CONSENT_REQUIRED on next API call\n }\n }\n\n // Step 2.5: In strict mode, block unverified users from app entirely\n if (\n !to.path.startsWith('/auth/') &&\n env.emailVerificationMode === 'strict'\n ) {\n const emailVerified = userSession.currentSession?.user?.email_verified ?? true;\n if (!emailVerified) {\n logger.debug('[UserAuthorized] Strict mode: unverified user, redirecting to verify-email');\n next({ path: '/auth/verify-email', query: { returnUrl: to.fullPath } });\n return;\n }\n }\n\n // Step 3: Check authorization (user type)\n const userType = userSession.currentSession?.user.user_type;\n\n if (!userType) {\n logger.warn('[UserAuthorized] No user type found, redirecting');\n next(redirectTo);\n return;\n }\n\n if (allowedUserTypes.includes(userType)) {\n logger.debug(`[UserAuthorized] User type '${userType}' is authorized`);\n next();\n } else {\n logger.warn(\n `[UserAuthorized] User type '${userType}' is not authorized. Allowed: ${allowedUserTypes.join(', ')}`,\n );\n next(redirectTo);\n }\n };\n}\n\n/**\n * Pre-built guard: Staff and super admin only\n * Redirects non-staff users to the provided redirect path\n */\nexport function createStaffOnlyGuard(options?: {\n redirectTo?: RouteLocationRaw;\n loginPath?: string;\n}): NavigationGuard {\n return createUserAuthorizedGuard({\n allowedUserTypes: ['staff', 'super_admin'],\n redirectTo: options?.redirectTo ?? { name: 'Home' },\n loginPath: options?.loginPath,\n });\n}\n\n/**\n * Pre-built guard: Super admin only\n * Redirects non-super-admin users to the provided redirect path\n */\nexport function createSuperAdminOnlyGuard(options?: {\n redirectTo?: RouteLocationRaw;\n loginPath?: string;\n}): NavigationGuard {\n return createUserAuthorizedGuard({\n allowedUserTypes: ['super_admin'],\n redirectTo: options?.redirectTo ?? '/notfound',\n loginPath: options?.loginPath,\n });\n}\n\n/**\n * Pre-built guard: All authenticated users\n * Any logged-in user can access (consumer, lead, staff, or super_admin)\n */\nexport function createAuthenticatedGuard(options?: {\n redirectTo?: RouteLocationRaw;\n loginPath?: string;\n}): NavigationGuard {\n return createUserAuthorizedGuard({\n allowedUserTypes: ['consumer', 'lead', 'staff', 'super_admin'],\n redirectTo: options?.redirectTo ?? { name: 'Home' },\n loginPath: options?.loginPath,\n });\n}\n\n/**\n * Pre-built guard: Lead, staff, and super admin\n * Consumers are not allowed\n */\nexport function createLeadOrStaffOnlyGuard(options?: {\n redirectTo?: RouteLocationRaw;\n loginPath?: string;\n}): NavigationGuard {\n return createUserAuthorizedGuard({\n allowedUserTypes: ['lead', 'staff', 'super_admin'],\n redirectTo: options?.redirectTo ?? { name: 'Home' },\n loginPath: options?.loginPath,\n });\n}\n\n/**\n * Pre-configured guards with sensible defaults\n * Apps can use these directly or override with create*Guard functions\n */\n\n/**\n * Pre-configured: All authenticated users\n * Default redirect: Home, Default login: /auth/login\n */\nexport const userAuthenticated = createAuthenticatedGuard();\n\n/**\n * Pre-configured: Staff and super admin only\n * Default redirect: Home, Default login: /auth/login\n */\nexport const staffOnly = createStaffOnlyGuard();\n\n/**\n * Pre-configured: Super admin only\n * Default redirect: /notfound, Default login: /auth/login\n */\nexport const userIsSuperAdmin = createSuperAdminOnlyGuard();\n\n/**\n * Pre-configured: Lead, staff, and super admin\n * Default redirect: Home, Default login: /auth/login\n */\nexport const leadOrStaffOnly = createLeadOrStaffOnlyGuard();\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"userAuthorized-3RiCDXxr.js","names":[],"sources":["../src/middleware/userAuthorized.ts"],"sourcesContent":["import type { UserTypeValues } from '@dragonmastery/dragoncore-shared';\nimport type { NavigationGuard, RouteLocationRaw } from 'vue-router';\nimport { createAppBatch } from '../composables/useRpcAuth';\nimport { useEnv } from '../composables/useEnv';\nimport { useUserSessionStore } from '../composables/useUserSessionStore';\nimport { logger } from '../utils/logger';\n\nexport interface UserAuthorizedOptions {\n /**\n * List of user types allowed to access this route\n * Same pattern as `visible_to` in route meta\n */\n allowedUserTypes: UserTypeValues[];\n\n /**\n * Where to redirect if user is not authorized\n * Can be a route name, path, or route object\n */\n redirectTo?: RouteLocationRaw;\n\n /**\n * Login path for redirecting unauthenticated users\n * Only used if requireAuth is true\n */\n loginPath?: string;\n\n /**\n * Whether to also check authentication (token refresh, etc.)\n * Default: true\n */\n requireAuth?: boolean;\n}\n\n/**\n * Creates a navigation guard that checks both authentication and authorization\n * based on allowed user types.\n *\n * @example\n * // Only staff and super_admin can access\n * const staffOnly = createUserAuthorizedGuard({\n * allowedUserTypes: ['staff', 'super_admin'],\n * redirectTo: { name: 'Home' }\n * });\n *\n * @example\n * // All authenticated users can access\n * const authenticated = createUserAuthorizedGuard({\n * allowedUserTypes: ['consumer', 'lead', 'staff', 'super_admin'],\n * redirectTo: { name: 'Home' }\n * });\n */\nexport function createUserAuthorizedGuard(options: UserAuthorizedOptions): NavigationGuard {\n const {\n allowedUserTypes,\n redirectTo = { name: 'Home' },\n loginPath = '/auth/login',\n requireAuth = true,\n } = options;\n\n return async (to, _from, next) => {\n // Legal and other public routes must never require auth (used during signup, iframe embed)\n if (to.meta?.public) {\n next();\n return;\n }\n\n const userSession = useUserSessionStore();\n const env = useEnv();\n\n // Step 1: Check authentication if required\n if (requireAuth) {\n const hasAccessToken = !!userSession.accessToken;\n\n if (hasAccessToken) {\n const { accessTokenExpired, refreshTokenExpired } = userSession.isTokenExpired();\n\n if (!accessTokenExpired) {\n // Token is valid, proceed to authorization check\n } else if (refreshTokenExpired) {\n // Refresh token expired, redirect to login\n logger.warn('[UserAuthorized] Refresh token expired, redirecting to login');\n userSession.clearSession();\n const returnUrl = to.fullPath;\n next({\n path: loginPath,\n query: { returnUrl },\n });\n return;\n } else {\n // Access token expired, try refresh\n logger.debug('[UserAuthorized] Access token expired, attempting refresh');\n const refreshSuccessful = await userSession.refreshToken();\n\n if (!refreshSuccessful) {\n logger.error('[UserAuthorized] Token refresh failed, redirecting to login');\n userSession.clearSession();\n const returnUrl = to.fullPath;\n next({\n path: loginPath,\n query: { returnUrl },\n });\n return;\n }\n }\n } else {\n // No access token, try refresh token flow\n logger.debug('[UserAuthorized] No access token, attempting refresh token flow');\n const refreshSuccessful = await userSession.refreshToken();\n\n if (!refreshSuccessful) {\n logger.debug('[UserAuthorized] No valid session found, redirecting to login');\n userSession.clearSession();\n const returnUrl = to.fullPath;\n next({\n path: loginPath,\n query: { returnUrl },\n });\n return;\n }\n }\n }\n\n // Step 2: Check consent status\n // Call getPendingConsents for fresh data - backend returns [] when CONSENT_FEATURE_ENABLED is false\n if (to.path !== '/auth/consent-required') {\n try {\n const batch = createAppBatch();\n const pending = await batch.users.getPendingConsents();\n if (pending && pending.length > 0) {\n logger.debug('[UserAuthorized] Pending consents found, redirecting to consent-required');\n next({\n path: '/auth/consent-required',\n query: { returnUrl: to.fullPath, ...to.query },\n });\n return;\n }\n } catch (err) {\n logger.warn('[UserAuthorized] Failed to check pending consents, continuing', { err });\n // On auth/network error, let user proceed; they may hit CONSENT_REQUIRED on next API call\n }\n }\n\n // Step 2.5: In strict mode, block unverified users from app entirely\n if (\n !to.path.startsWith('/auth/') &&\n env.emailVerificationMode === 'strict'\n ) {\n const emailVerified = userSession.currentSession?.user?.email_verified ?? true;\n if (!emailVerified) {\n logger.debug('[UserAuthorized] Strict mode: unverified user, redirecting to verify-email');\n next({ path: '/auth/verify-email', query: { returnUrl: to.fullPath } });\n return;\n }\n }\n\n // Step 3: Check authorization (user type)\n const userType = userSession.currentSession?.user.user_type;\n\n if (!userType) {\n logger.warn('[UserAuthorized] No user type found, redirecting');\n next(redirectTo);\n return;\n }\n\n if (allowedUserTypes.includes(userType)) {\n logger.debug(`[UserAuthorized] User type '${userType}' is authorized`);\n next();\n } else {\n logger.warn(\n `[UserAuthorized] User type '${userType}' is not authorized. Allowed: ${allowedUserTypes.join(', ')}`,\n );\n next(redirectTo);\n }\n };\n}\n\n/**\n * Pre-built guard: Staff and super admin only\n * Redirects non-staff users to the provided redirect path\n */\nexport function createStaffOnlyGuard(options?: {\n redirectTo?: RouteLocationRaw;\n loginPath?: string;\n}): NavigationGuard {\n return createUserAuthorizedGuard({\n allowedUserTypes: ['staff', 'super_admin'],\n redirectTo: options?.redirectTo ?? { name: 'Home' },\n loginPath: options?.loginPath,\n });\n}\n\n/**\n * Pre-built guard: Super admin only\n * Redirects non-super-admin users to the provided redirect path\n */\nexport function createSuperAdminOnlyGuard(options?: {\n redirectTo?: RouteLocationRaw;\n loginPath?: string;\n}): NavigationGuard {\n return createUserAuthorizedGuard({\n allowedUserTypes: ['super_admin'],\n redirectTo: options?.redirectTo ?? '/notfound',\n loginPath: options?.loginPath,\n });\n}\n\n/**\n * Pre-built guard: All authenticated users\n * Any logged-in user can access (consumer, lead, staff, or super_admin)\n */\nexport function createAuthenticatedGuard(options?: {\n redirectTo?: RouteLocationRaw;\n loginPath?: string;\n}): NavigationGuard {\n return createUserAuthorizedGuard({\n allowedUserTypes: ['consumer', 'lead', 'staff', 'super_admin'],\n redirectTo: options?.redirectTo ?? { name: 'Home' },\n loginPath: options?.loginPath,\n });\n}\n\n/**\n * Pre-built guard: Lead, staff, and super admin\n * Consumers are not allowed\n */\nexport function createLeadOrStaffOnlyGuard(options?: {\n redirectTo?: RouteLocationRaw;\n loginPath?: string;\n}): NavigationGuard {\n return createUserAuthorizedGuard({\n allowedUserTypes: ['lead', 'staff', 'super_admin'],\n redirectTo: options?.redirectTo ?? { name: 'Home' },\n loginPath: options?.loginPath,\n });\n}\n\n/**\n * Pre-configured guards with sensible defaults\n * Apps can use these directly or override with create*Guard functions\n */\n\n/**\n * Pre-configured: All authenticated users\n * Default redirect: Home, Default login: /auth/login\n */\nexport const userAuthenticated = createAuthenticatedGuard();\n\n/**\n * Pre-configured: Staff and super admin only\n * Default redirect: Home, Default login: /auth/login\n */\nexport const staffOnly = createStaffOnlyGuard();\n\n/**\n * Pre-configured: Super admin only\n * Default redirect: /notfound, Default login: /auth/login\n */\nexport const userIsSuperAdmin = createSuperAdminOnlyGuard();\n\n/**\n * Pre-configured: Lead, staff, and super admin\n * Default redirect: Home, Default login: /auth/login\n */\nexport const leadOrStaffOnly = createLeadOrStaffOnlyGuard();\n"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dragonmastery/dragoncore-vue",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.30",
|
|
4
4
|
"description": "Vue 3 components and composables for dragoncore",
|
|
5
5
|
"author": "DragonMastery",
|
|
6
6
|
"license": "SEE LICENSE IN LICENSE",
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
"vue3-toastify": "0.2.8"
|
|
42
42
|
},
|
|
43
43
|
"peerDependencies": {
|
|
44
|
-
"@dragonmastery/dragoncore-shared": "^0.0.
|
|
44
|
+
"@dragonmastery/dragoncore-shared": "^0.0.30",
|
|
45
45
|
"@dragonmastery/zinia-forms-core": ">=0.5.11",
|
|
46
46
|
"@vueuse/core": ">=14.0.0",
|
|
47
47
|
"pinia": ">=3.0.0",
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import "./useRpcAuth-CJtq1dqM.js";
|
|
2
|
-
import "./EnhancedRefreshTokenHandler-C6tZCcfX.js";
|
|
3
|
-
import "./useQueryCache-alzaRWEb.js";
|
|
4
|
-
import "./useMutation-BLNuJoYl.js";
|
|
5
|
-
import "./FieldsetSection-CH1jAwcc.js";
|
|
6
|
-
import "./userAuthorized-klLUHGxT.js";
|
|
7
|
-
import "./teamMetadata-26Mwjb2i.js";
|
|
8
|
-
import "./team_memberRoutes-Cxgte_vj.js";
|
|
9
|
-
import "./teamRoutes-CtNcFZjR.js";
|
|
10
|
-
import { t as CreateTeamForm_default } from "./CreateTeamForm-DRfZ74on.js";
|
|
11
|
-
|
|
12
|
-
export { CreateTeamForm_default as default };
|
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
import "./useRpcAuth-CJtq1dqM.js";
|
|
2
|
-
import "./EnhancedRefreshTokenHandler-C6tZCcfX.js";
|
|
3
|
-
import "./useQueryCache-alzaRWEb.js";
|
|
4
|
-
import "./useMutation-BLNuJoYl.js";
|
|
5
|
-
import "./useQuery-BzUGEOj0.js";
|
|
6
|
-
import { S as CustomerSupportTicketList_default } from "./src-zjaOyP9b.js";
|
|
7
|
-
import "./AppLink-FcNGKgvG.js";
|
|
8
|
-
import "./saved_filter-jeZd2rlb.js";
|
|
9
|
-
import "./ConfirmDialog-DjthOYU6.js";
|
|
10
|
-
import "./InlineAttachments-DAn_QknY.js";
|
|
11
|
-
import "./TeamMembersTab-BigqpBDH.js";
|
|
12
|
-
import "./Appearance-shr0Aql0.js";
|
|
13
|
-
import "./useBreadcrumbs-DIqU5AAp.js";
|
|
14
|
-
import "./ExternalLinkIcon-FidcmNOa.js";
|
|
15
|
-
import "./FieldsetSection-CH1jAwcc.js";
|
|
16
|
-
import "./RecordVersionViewer-NLn1gVys.js";
|
|
17
|
-
import "./ZiniaContainer-BV6sojLa.js";
|
|
18
|
-
import "./userAuthorized-klLUHGxT.js";
|
|
19
|
-
import "./UserProfilePage-FNLYK9kj.js";
|
|
20
|
-
import "./ChangePasswordPage-nr0B06HB.js";
|
|
21
|
-
import "./teamMetadata-26Mwjb2i.js";
|
|
22
|
-
import "./team_memberRoutes-Cxgte_vj.js";
|
|
23
|
-
import "./teamRoutes-CtNcFZjR.js";
|
|
24
|
-
import "./CreateTeamForm-DRfZ74on.js";
|
|
25
|
-
import "./EditTeamForm-BEOkUaKG.js";
|
|
26
|
-
import "./TeamHistoryTab-p3hDxCc3.js";
|
|
27
|
-
import "./TeamList-gppM0GOD.js";
|
|
28
|
-
import "./TeamNotesTab-DPw9YEwK.js";
|
|
29
|
-
import "./TeamParent-YPtenk3l.js";
|
|
30
|
-
import "./ViewTeam-CRmIplCt.js";
|
|
31
|
-
import "./teamMemberMetadata-DX0W-B7p.js";
|
|
32
|
-
import "./CreateTeamMemberForm-ITp4XFn9.js";
|
|
33
|
-
import "./EditTeamMemberForm-Fyf8Zxfh.js";
|
|
34
|
-
import "./TeamMemberList-D0-dM5kI.js";
|
|
35
|
-
import "./TeamMemberParent-CJGWXjuM.js";
|
|
36
|
-
import "./ViewTeamMember-Cf5yXdv6.js";
|
|
37
|
-
import "./customerSupportTicketRoutes-Cy4fp4wx.js";
|
|
38
|
-
import "./staffSupportTicketRoutes-L4CU5dcu.js";
|
|
39
|
-
import "./TimelineSystemEvent-Ch1sZiyO.js";
|
|
40
|
-
import "./CustomerCreateSupportTicketForm-Co6C_P5o.js";
|
|
41
|
-
import "./CustomerSupportTicketParent-BaKfkSlU.js";
|
|
42
|
-
import "./CustomerSupportTicketSuccess-DVqoR5-o.js";
|
|
43
|
-
import "./StaffCreateSupportTicketForm-Cm595v_4.js";
|
|
44
|
-
import "./SupportTicketDevLifecycleBadge-BYKZjEv6.js";
|
|
45
|
-
import "./StaffSupportTicketParent-yoC-_Lku.js";
|
|
46
|
-
import "./StaffSupportTicketSuccess-DgULDGIj.js";
|
|
47
|
-
import "./LoginForm-D1Mx2vAY.js";
|
|
48
|
-
import "./useEmailVerificationChannel-QuMSgzzM.js";
|
|
49
|
-
import "./Signup-BCVZZCR_.js";
|
|
50
|
-
import "./ForgotPassword-Dd-E3_o1.js";
|
|
51
|
-
import "./ResetPassword-CyizBRob.js";
|
|
52
|
-
import "./Logout-Bdktl4NZ.js";
|
|
53
|
-
import "./mfaSchema-C6PatIbY.js";
|
|
54
|
-
import "./MfaSetup-Bjc3v0hs.js";
|
|
55
|
-
import "./MfaVerify-uJlPz8xg.js";
|
|
56
|
-
import "./VerifyEmail-CWUhRA1o.js";
|
|
57
|
-
import "./UserListPage-A0_eNpQ1.js";
|
|
58
|
-
import "./CreateUserPage-1WiLNGr_.js";
|
|
59
|
-
import "./EditUserPage-BBzGmOrx.js";
|
|
60
|
-
import "./CreditTransactionHistory-plIaRscn.js";
|
|
61
|
-
import "./CreditBalanceDashboard-BRY56-9w.js";
|
|
62
|
-
import "./CreditManagement-D-bsc1US.js";
|
|
63
|
-
|
|
64
|
-
export { CustomerSupportTicketList_default as default };
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"DefaultReferralTeamPage-BHail7YF.js","names":[],"sources":["../src/slices/admin/features/default_referral_team/defaultReferralTeamSchema.ts","../src/slices/admin/features/default_referral_team/DefaultReferralTeamPage.vue"],"sourcesContent":["import type { DefaultReferralTeamFormDto } from '@dragonmastery/dragoncore-shared';\nimport { DefaultReferralTeamFormSchema } from '@dragonmastery/dragoncore-shared';\nimport { withMetadata } from '@dragonmastery/zinia-forms-core';\n\nexport type { DefaultReferralTeamFormDto };\n\nexport const defaultReferralTeamSchemaWithMetadata = withMetadata(\n DefaultReferralTeamFormSchema,\n 'defaultReferralTeamSchema',\n {\n default_team_id: {\n inputType: 'select',\n label: 'Default team',\n placeholder: 'Select team',\n helpText:\n 'When a referral event arrives with an unknown tag, it will be routed to this team. Select \"None\" to reject unknown tags.',\n },\n },\n);\n","<template>\n <div class=\"mt-2\">\n <div class=\"flex justify-between items-center mb-4\">\n <h1 class=\"text-2xl font-bold\">Default Team for Unknown Referrals</h1>\n </div>\n\n <p class=\"text-base-content/70 mb-4\">\n When a referral event arrives with an unknown referral tag, it will be routed to this team.\n Select a team to use as the default, or clear to reject unknown tags.\n </p>\n\n <div v-if=\"isLoading\" class=\"flex justify-center py-8\">\n <span class=\"loading loading-spinner loading-lg\"></span>\n </div>\n\n <template v-else>\n <ZiniaForm\n @handle-submit=\"handleSubmit\"\n @success=\"handleSuccess\"\n @error=\"handleError\"\n title=\"\"\n subtitle=\"\"\n >\n <zinia.DefaultTeamIdField\n :select-options=\"form.extraData.teams ?? []\"\n placeholder=\"Select team\"\n />\n\n <div v-if=\"form.submitError\" class=\"alert alert-error mt-2\">\n <span>{{ form.submitError }}</span>\n </div>\n\n <div class=\"mt-4 flex justify-end\">\n <ZiniaSubmitButton\n submitText=\"Save\"\n submittingText=\"Saving...\"\n />\n </div>\n </ZiniaForm>\n\n <!-- Referral tags per team -->\n <div class=\"mt-12\">\n <h2 class=\"text-xl font-semibold mb-2\">Referral Tags per Team</h2>\n <p class=\"text-base-content/70 mb-4\">\n Set a referral tag for each team. Other apps use this tag when pushing events.\n If empty, the team's unique name or path is used as fallback.\n </p>\n <div v-if=\"teamsData?.items?.length\" class=\"overflow-x-auto\">\n <table class=\"table table-zebra\">\n <thead>\n <tr>\n <th>Team</th>\n <th>Referral tag</th>\n <th></th>\n </tr>\n </thead>\n <tbody>\n <tr v-for=\"team in teamsData.items\" :key=\"team.id\">\n <td>{{ team.display_name || team.unique_name || team.id }}</td>\n <td>\n <div class=\"flex items-center gap-1\">\n <input\n v-model=\"referralTagInputs[team.id]\"\n type=\"text\"\n class=\"input input-bordered input-sm w-full max-w-xs\"\n placeholder=\"e.g. my-team\"\n @keydown.enter.prevent=\"saveReferralTag(team.id)\"\n />\n <button\n type=\"button\"\n class=\"btn btn-sm btn-ghost btn-square\"\n :title=\"'Normalize to URL-friendly tag from team name'\"\n @click=\"normalizeReferralTag(team)\"\n >\n <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"h-4 w-4\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M4 4v5h.582m15.356 2A8.001 8.001 0 004.582 9m0 0H9m11 11v-5h-.581m0 0a8.003 8.003 0 01-15.357-2m15.357 2H15\" />\n </svg>\n </button>\n </div>\n </td>\n <td>\n <button\n type=\"button\"\n class=\"btn btn-sm btn-primary\"\n :disabled=\"savingTeamId === team.id || referralTagInputs[team.id] === (team.referral_tag ?? '')\"\n @click=\"saveReferralTag(team.id)\"\n >\n <span v-if=\"savingTeamId === team.id\" class=\"loading loading-spinner loading-sm\" />\n {{ savingTeamId === team.id ? 'Saving...' : 'Save' }}\n </button>\n </td>\n </tr>\n </tbody>\n </table>\n </div>\n <p v-else class=\"text-base-content/60\">No teams found.</p>\n </div>\n </template>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport type { DefaultReferralTeamFormDto } from './defaultReferralTeamSchema';\nimport { defaultReferralTeamSchemaWithMetadata } from './defaultReferralTeamSchema';\nimport { useForm } from '@dragonmastery/zinia-forms-core';\nimport { computed, reactive, ref, watch } from 'vue';\nimport { toast } from 'vue3-toastify';\nimport { useMutation } from '../../../../composables/useMutation';\nimport { useQuery } from '../../../../composables/useQuery';\nimport { extractRpcErrorMessage } from '../../../../utils/extractRpcErrorMessage';\n\nconst {\n data: defaultTeamIdData,\n loading: defaultLoading,\n refetch: refetchDefault,\n} = useQuery((api) => api.appSettings.getDefaultTeamIdForUnknownReferrals(), {\n cacheKey: 'admin-default-referral-team',\n staleTime: 30 * 1000,\n});\n\nconst {\n data: teamsData,\n loading: teamsLoading,\n refetch: refetchTeams,\n} = useQuery(\n (api) => api.teams.listTeams({ first: 100 }),\n {\n cacheKey: 'admin-teams-for-default-referral',\n staleTime: 60 * 1000,\n },\n);\n\nconst referralTagInputs = reactive<Record<string, string>>({});\nconst savingTeamId = ref<string | null>(null);\n\nwatch(\n () => teamsData.value?.items ?? [],\n (teams) => {\n for (const team of teams) {\n referralTagInputs[team.id] = team.referral_tag ?? '';\n }\n },\n { immediate: true },\n);\n\nconst loadTeams = async () => {\n while (teamsLoading.value) {\n await new Promise((resolve) => setTimeout(resolve, 100));\n }\n const teams = teamsData.value?.items ?? [];\n const options = [\n { value: '', label: 'None (reject unknown tags)' },\n ...teams.map((team) => ({\n value: team.id,\n label: `${team.display_name || team.unique_name || team.id}${team.referral_tag ? ` (${team.referral_tag})` : ''}`,\n })),\n ];\n return options;\n};\n\nconst {\n form,\n zinia,\n ZiniaForm,\n ZiniaSubmitButton,\n} = useForm(defaultReferralTeamSchemaWithMetadata, {\n storeName: 'admin-default-referral-team-form',\n persistToLocalStorage: false,\n renderStyle: 'daisy_ui',\n fetchData: async () => {\n while (defaultLoading.value) {\n await new Promise((resolve) => setTimeout(resolve, 100));\n }\n const data = defaultTeamIdData.value;\n return {\n default_team_id: data?.default_team_id ?? null,\n };\n },\n dataLoaders: {\n teams: loadTeams,\n },\n});\n\nconst isLoading = computed(\n () => defaultLoading.value || teamsLoading.value || form.isLoading,\n);\n\nconst { mutate: updateDefaultTeam } = useMutation(\n (api, input: DefaultReferralTeamFormDto) =>\n api.appSettings.updateDefaultTeamIdForUnknownReferrals(input),\n { invalidate: /admin-default-referral-team/ },\n);\n\nconst { mutate: setReferralTag } = useMutation(\n (api, input: { team_id: string; referral_tag: string | null }) =>\n api.teams.setReferralTag(input),\n { invalidate: /admin-teams-for-default-referral/ },\n);\n\n/** Normalize a team name to a URL-friendly referral tag (e.g. \"Acme Corp & Co.\" → \"acme-corp-co\") */\nfunction normalizeToReferralTag(name: string): string {\n return name\n .toLowerCase()\n .trim()\n .replace(/[^a-z0-9\\s-]/g, '') // strip special chars except spaces and hyphens\n .replace(/\\s+/g, '-') // spaces → hyphens\n .replace(/-+/g, '-') // collapse multiple hyphens\n .replace(/^-|-$/g, ''); // trim leading/trailing hyphens\n}\n\nfunction normalizeReferralTag(team: { id: string; display_name?: string | null; unique_name?: string | null }) {\n const name = team.display_name || team.unique_name || team.id;\n const normalized = normalizeToReferralTag(name);\n if (normalized) {\n referralTagInputs[team.id] = normalized;\n }\n}\n\nasync function saveReferralTag(teamId: string) {\n const raw = referralTagInputs[teamId]?.trim() ?? '';\n const referral_tag = raw === '' ? null : raw;\n const team = teamsData.value?.items?.find((t) => t.id === teamId);\n if (team && referral_tag === (team.referral_tag ?? null)) return;\n\n savingTeamId.value = teamId;\n try {\n await setReferralTag({ team_id: teamId, referral_tag });\n toast.success('Referral tag saved');\n referralTagInputs[teamId] = referral_tag ?? '';\n await refetchTeams();\n } catch (err) {\n toast.error(extractRpcErrorMessage(err, 'Failed to save referral tag'));\n } finally {\n savingTeamId.value = null;\n }\n}\n\nasync function handleSubmit(formData: DefaultReferralTeamFormDto) {\n const default_team_id = formData.default_team_id?.trim() || null;\n await updateDefaultTeam({ default_team_id });\n return { ok: true };\n}\n\nasync function handleSuccess() {\n toast.success('Default team saved');\n await refetchDefault();\n}\n\nfunction handleError(error: Error | unknown) {\n const message = error instanceof Error ? error.message : String(error);\n form.setSubmitError(extractRpcErrorMessage(error, message));\n toast.error(form.submitError ?? 'Failed to save');\n}\n</script>\n"],"mappings":";;;;;;;;;;;;AAMA,MAAa,wCAAwC,aACnD,+BACA,6BACA,EACE,iBAAiB;CACf,WAAW;CACX,OAAO;CACP,aAAa;CACb,UACE;CACH,EACF,CACF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EC6FD,MAAM,EACJ,MAAM,mBACN,SAAS,gBACT,SAAS,mBACP,UAAU,QAAQ,IAAI,YAAY,qCAAqC,EAAE;GAC3E,UAAU;GACV,WAAW,KAAK;GACjB,CAAC;EAEF,MAAM,EACJ,MAAM,WACN,SAAS,cACT,SAAS,iBACP,UACD,QAAQ,IAAI,MAAM,UAAU,EAAE,OAAO,KAAK,CAAC,EAC5C;GACE,UAAU;GACV,WAAW,KAAK;GACjB,CACF;EAED,MAAM,oBAAoB,SAAiC,EAAE,CAAC;EAC9D,MAAM,eAAe,IAAmB,KAAK;AAE7C,cACQ,UAAU,OAAO,SAAS,EAAE,GACjC,UAAU;AACT,QAAK,MAAM,QAAQ,MACjB,mBAAkB,KAAK,MAAM,KAAK,gBAAgB;KAGtD,EAAE,WAAW,MAAM,CACpB;EAED,MAAM,YAAY,YAAY;AAC5B,UAAO,aAAa,MAClB,OAAM,IAAI,SAAS,YAAY,WAAW,SAAS,IAAI,CAAC;AAU1D,UAPgB,CACd;IAAE,OAAO;IAAI,OAAO;IAA8B,EAClD,IAHY,UAAU,OAAO,SAAS,EAAE,EAG/B,KAAK,UAAU;IACtB,OAAO,KAAK;IACZ,OAAO,GAAG,KAAK,gBAAgB,KAAK,eAAe,KAAK,KAAK,KAAK,eAAe,KAAK,KAAK,aAAa,KAAK;IAC9G,EAAE,CACJ;;EAIH,MAAM,EACJ,MACA,OACA,WACA,sBACE,QAAQ,uCAAuC;GACjD,WAAW;GACX,uBAAuB;GACvB,aAAa;GACb,WAAW,YAAY;AACrB,WAAO,eAAe,MACpB,OAAM,IAAI,SAAS,YAAY,WAAW,SAAS,IAAI,CAAC;AAG1D,WAAO,EACL,iBAFW,kBAAkB,OAEN,mBAAmB,MAC3C;;GAEH,aAAa,EACX,OAAO,WACR;GACF,CAAC;EAEF,MAAM,YAAY,eACV,eAAe,SAAS,aAAa,SAAS,KAAK,UAC1D;EAED,MAAM,EAAE,QAAQ,sBAAsB,aACnC,KAAK,UACJ,IAAI,YAAY,uCAAuC,MAAM,EAC/D,EAAE,YAAY,+BAA+B,CAC9C;EAED,MAAM,EAAE,QAAQ,mBAAmB,aAChC,KAAK,UACJ,IAAI,MAAM,eAAe,MAAM,EACjC,EAAE,YAAY,oCAAoC,CACnD;;EAGD,SAAS,uBAAuB,MAAsB;AACpD,UAAO,KACJ,aAAY,CACZ,MAAK,CACL,QAAQ,iBAAiB,GAAG,CAC5B,QAAQ,QAAQ,IAAI,CACpB,QAAQ,OAAO,IAAI,CACnB,QAAQ,UAAU,GAAG;;EAG1B,SAAS,qBAAqB,MAAiF;GAE7G,MAAM,aAAa,uBADN,KAAK,gBAAgB,KAAK,eAAe,KAAK,GACZ;AAC/C,OAAI,WACF,mBAAkB,KAAK,MAAM;;EAIjC,eAAe,gBAAgB,QAAgB;GAC7C,MAAM,MAAM,kBAAkB,SAAS,MAAM,IAAI;GACjD,MAAM,eAAe,QAAQ,KAAK,OAAO;GACzC,MAAM,OAAO,UAAU,OAAO,OAAO,MAAM,MAAM,EAAE,OAAO,OAAO;AACjE,OAAI,QAAQ,kBAAkB,KAAK,gBAAgB,MAAO;AAE1D,gBAAa,QAAQ;AACrB,OAAI;AACF,UAAM,eAAe;KAAE,SAAS;KAAQ;KAAc,CAAC;AACvD,UAAM,QAAQ,qBAAqB;AACnC,sBAAkB,UAAU,gBAAgB;AAC5C,UAAM,cAAc;YACb,KAAK;AACZ,UAAM,MAAM,uBAAuB,KAAK,8BAA8B,CAAC;aAC/D;AACR,iBAAa,QAAQ;;;EAIzB,eAAe,aAAa,UAAsC;AAEhE,SAAM,kBAAkB,EAAE,iBADF,SAAS,iBAAiB,MAAM,IAAI,MACjB,CAAC;AAC5C,UAAO,EAAE,IAAI,MAAM;;EAGrB,eAAe,gBAAgB;AAC7B,SAAM,QAAQ,qBAAqB;AACnC,SAAM,gBAAgB;;EAGxB,SAAS,YAAY,OAAwB;GAC3C,MAAM,UAAU,iBAAiB,QAAQ,MAAM,UAAU,OAAO,MAAM;AACtE,QAAK,eAAe,uBAAuB,OAAO,QAAQ,CAAC;AAC3D,SAAM,MAAM,KAAK,eAAe,iBAAiB;;;uBA1PjD,mBAiGM,OAjGN,YAiGM;8BAhGJ,mBAEM,OAAA,EAFD,OAAM,0CAAwC,EAAA,CACjD,mBAAsE,MAAA,EAAlE,OAAM,sBAAoB,EAAC,qCAAkC,CAAA;8BAGnE,mBAGI,KAAA,EAHD,OAAM,6BAA2B,EAAC,uKAGrC,GAAA;IAEW,UAAA,SAAA,WAAA,EAAX,mBAEM,OAFN,YAEM,CAAA,GAAA,OAAA,OAAA,OAAA,KAAA,CADJ,mBAAwD,QAAA,EAAlD,OAAM,sCAAoC,EAAA,MAAA,GAAA,CAAA,EAAA,CAAA,KAAA,WAAA,EAGlD,mBAkFW,UAAA,EAAA,KAAA,GAAA,EAAA;KAjFT,YAsBY,MAAA,UAAA,EAAA;MArBT,gBAAe;MACf,WAAS;MACT,SAAO;MACR,OAAM;MACN,UAAS;;6BAKP;OAHF,YAGE,MAAA,MAAA,CAAA,oBAAA;QAFC,kBAAgB,MAAA,KAAI,CAAC,UAAU,SAAK,EAAA;QACrC,aAAY;;OAGH,MAAA,KAAI,CAAC,eAAA,WAAA,EAAhB,mBAEM,OAFN,YAEM,CADJ,mBAAmC,QAAA,MAAA,gBAA1B,MAAA,KAAI,CAAC,YAAW,EAAA,EAAA,CAAA,CAAA,IAAA,mBAAA,QAAA,KAAA;OAG3B,mBAKM,OALN,YAKM,CAJJ,YAGE,MAAA,kBAAA,EAAA;QAFA,YAAW;QACX,gBAAe;;;;;KAKrB,mBAAA,2BAA+B;KAC/B,mBAuDM,OAvDN,YAuDM;gCAtDJ,mBAAkE,MAAA,EAA9D,OAAM,8BAA4B,EAAC,0BAAsB,GAAA;gCAC7D,mBAGI,KAAA,EAHD,OAAM,6BAA2B,EAAC,kJAGrC,GAAA;MACW,MAAA,UAAS,EAAE,OAAO,UAAA,WAAA,EAA7B,mBA+CM,OA/CN,YA+CM,CA9CJ,mBA6CQ,SA7CR,YA6CQ,CAAA,OAAA,OAAA,OAAA,KA5CN,mBAMQ,SAAA,MAAA,CALN,mBAIK,MAAA,MAAA;OAHH,mBAAa,MAAA,MAAT,OAAI;OACR,mBAAqB,MAAA,MAAjB,eAAY;OAChB,mBAAS,KAAA;iBAGb,mBAoCQ,SAAA,MAAA,EAAA,UAAA,KAAA,EAnCN,mBAkCK,UAAA,MAAA,WAlCc,MAAA,UAAS,CAAC,QAAlB,SAAI;2BAAf,mBAkCK,MAAA,EAlCgC,KAAK,KAAK,IAAA,EAAA;QAC7C,mBAA+D,MAAA,MAAA,gBAAxD,KAAK,gBAAgB,KAAK,eAAe,KAAK,GAAE,EAAA,EAAA;QACvD,mBAoBK,MAAA,MAAA,CAnBH,mBAkBM,OAlBN,YAkBM,CAAA,eAjBJ,mBAME,SAAA;4CALS,kBAAkB,KAAK,MAAE;SAClC,MAAK;SACL,OAAM;SACN,aAAY;SACX,WAAO,SAAA,eAAA,WAAgB,gBAAgB,KAAK,GAAE,EAAA,CAAA,UAAA,CAAA,EAAA,CAAA,QAAA,CAAA;gDAJtC,kBAAkB,KAAK,IAAE,CAAA,CAAA,EAMpC,mBASS,UAAA;SARP,MAAK;SACL,OAAM;SACL,OAAO;SACP,UAAK,WAAE,qBAAqB,KAAI;0CAEjC,mBAEM,OAAA;SAFD,OAAM;SAA6B,OAAM;SAAU,MAAK;SAAO,SAAQ;SAAY,QAAO;YAC7F,mBAAwL,QAAA;SAAlL,kBAAe;SAAQ,mBAAgB;SAAQ,gBAAa;SAAI,GAAE;;QAKhF,mBAUK,MAAA,MAAA,CATH,mBAQS,UAAA;SAPP,MAAK;SACL,OAAM;SACL,UAAU,aAAA,UAAiB,KAAK,MAAM,kBAAkB,KAAK,SAAS,KAAK,gBAAY;SACvF,UAAK,WAAE,gBAAgB,KAAK,GAAE;YAEnB,aAAA,UAAiB,KAAK,MAAA,WAAA,EAAlC,mBAAmF,QAAnF,YAAmF,IAAA,mBAAA,QAAA,KAAA,EAAA,gBAAA,MACnF,gBAAG,aAAA,UAAiB,KAAK,KAAE,cAAA,OAAA,EAAA,EAAA,CAAA,EAAA,GAAA,YAAA,CAAA,CAAA;;uCAOvC,mBAA0D,KAA1D,aAAuC,kBAAe"}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import "./useRpcAuth-CJtq1dqM.js";
|
|
2
|
-
import "./EnhancedRefreshTokenHandler-C6tZCcfX.js";
|
|
3
|
-
import "./useQueryCache-alzaRWEb.js";
|
|
4
|
-
import "./useMutation-BLNuJoYl.js";
|
|
5
|
-
import "./FieldsetSection-CH1jAwcc.js";
|
|
6
|
-
import "./userAuthorized-klLUHGxT.js";
|
|
7
|
-
import "./teamMetadata-26Mwjb2i.js";
|
|
8
|
-
import "./team_memberRoutes-Cxgte_vj.js";
|
|
9
|
-
import "./teamRoutes-CtNcFZjR.js";
|
|
10
|
-
import { t as EditTeamForm_default } from "./EditTeamForm-BEOkUaKG.js";
|
|
11
|
-
|
|
12
|
-
export { EditTeamForm_default as default };
|