@dragonmastery/dragoncore-vue 0.0.29 → 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.
Files changed (166) hide show
  1. package/dist/{ChangePasswordPage-C7rqJfii.js → ChangePasswordPage-D1LGJ02W.js} +1 -1
  2. package/dist/{ChangePasswordPage-nr0B06HB.js → ChangePasswordPage-Dy8lFUcI.js} +1 -1
  3. package/dist/{ChangePasswordPage-nr0B06HB.js.map → ChangePasswordPage-Dy8lFUcI.js.map} +1 -1
  4. package/dist/{ConsentFlowStep-DstxorHZ.js → ConsentFlowStep-DsVhXa91.js} +2 -2
  5. package/dist/{ConsentFlowStep-DstxorHZ.js.map → ConsentFlowStep-DsVhXa91.js.map} +1 -1
  6. package/dist/{ConsentRequired-ELUidmNv.js → ConsentRequired-B3eLxJgx.js} +3 -3
  7. package/dist/{ConsentRequired-ELUidmNv.js.map → ConsentRequired-B3eLxJgx.js.map} +1 -1
  8. package/dist/CreateTeamForm-5V_ks5Ie.js +12 -0
  9. package/dist/{CreateTeamForm-DNkueBzR.js → CreateTeamForm-B7MsOsiV.js} +4 -4
  10. package/dist/{CreateTeamForm-DNkueBzR.js.map → CreateTeamForm-B7MsOsiV.js.map} +1 -1
  11. package/dist/{CreateTeamMemberForm-CSF-tD6B.js → CreateTeamMemberForm-CayF2tIJ.js} +5 -5
  12. package/dist/{CreateTeamMemberForm-ITp4XFn9.js → CreateTeamMemberForm-DeUyXnVa.js} +4 -4
  13. package/dist/{CreateTeamMemberForm-ITp4XFn9.js.map → CreateTeamMemberForm-DeUyXnVa.js.map} +1 -1
  14. package/dist/{CreditBalanceDashboard-CLQ8NZnY.js → CreditBalanceDashboard-CoIEyZWh.js} +2 -2
  15. package/dist/{CreditBalanceDashboard-CLQ8NZnY.js.map → CreditBalanceDashboard-CoIEyZWh.js.map} +1 -1
  16. package/dist/{CreditBalanceDashboard-jdvZa-ZT.js → CreditBalanceDashboard-D_TsFlTp.js} +5 -5
  17. package/dist/{CreditManagement-Dus4O1BY.js → CreditManagement-CCyU_yja.js} +2 -2
  18. package/dist/{CreditManagement-Dus4O1BY.js.map → CreditManagement-CCyU_yja.js.map} +1 -1
  19. package/dist/{CreditManagement-DvGikLLe.js → CreditManagement-CdkqQM7F.js} +5 -5
  20. package/dist/{CreditTransactionHistory-BZZGQxTV.js → CreditTransactionHistory-UPg9uDNy.js} +3 -3
  21. package/dist/{CreditTransactionHistory-BZZGQxTV.js.map → CreditTransactionHistory-UPg9uDNy.js.map} +1 -1
  22. package/dist/{CustomerCreateSupportTicketForm-C3CgjqXg.js → CustomerCreateSupportTicketForm-CiTTUqtW.js} +5 -5
  23. package/dist/{CustomerCreateSupportTicketForm-CeG8IKA1.js → CustomerCreateSupportTicketForm-DFH1JtlA.js} +3 -3
  24. package/dist/{CustomerCreateSupportTicketForm-CeG8IKA1.js.map → CustomerCreateSupportTicketForm-DFH1JtlA.js.map} +1 -1
  25. package/dist/{CustomerSupportTicketDetailPage-CUkf9swo.js → CustomerSupportTicketDetailPage-DAwiE2t6.js} +5 -5
  26. package/dist/{CustomerSupportTicketDetailPage-CUkf9swo.js.map → CustomerSupportTicketDetailPage-DAwiE2t6.js.map} +1 -1
  27. package/dist/CustomerSupportTicketList-CKZl8jxx.js +64 -0
  28. package/dist/{CustomerSupportTicketParent-D19kei4H.js → CustomerSupportTicketParent-D3Gj4Hel.js} +2 -2
  29. package/dist/{CustomerSupportTicketParent-BaKfkSlU.js → CustomerSupportTicketParent-rl4Ym8oa.js} +3 -3
  30. package/dist/{CustomerSupportTicketParent-BaKfkSlU.js.map → CustomerSupportTicketParent-rl4Ym8oa.js.map} +1 -1
  31. package/dist/{CustomerSupportTicketSuccess-Cc75m_p-.js → CustomerSupportTicketSuccess-BEhFZgtn.js} +2 -2
  32. package/dist/{CustomerSupportTicketSuccess-Cc75m_p-.js.map → CustomerSupportTicketSuccess-BEhFZgtn.js.map} +1 -1
  33. package/dist/{CustomerSupportTicketSuccess-ca10puM-.js → CustomerSupportTicketSuccess-BJO2xsQR.js} +4 -4
  34. package/dist/{DefaultReferralTeamPage-fO3tmwOb.js → DefaultReferralTeamPage-D3UIrIZK.js} +2 -2
  35. package/dist/{DefaultReferralTeamPage-fO3tmwOb.js.map → DefaultReferralTeamPage-D3UIrIZK.js.map} +1 -1
  36. package/dist/EditTeamForm-Bf4rSgQg.js +12 -0
  37. package/dist/{EditTeamForm-DdvKHlNj.js → EditTeamForm-C1_-p3lZ.js} +4 -4
  38. package/dist/{EditTeamForm-DdvKHlNj.js.map → EditTeamForm-C1_-p3lZ.js.map} +1 -1
  39. package/dist/{EditTeamMemberForm-CIqEjFF8.js → EditTeamMemberForm-Bh6zVNyJ.js} +3 -3
  40. package/dist/{EditTeamMemberForm-Fyf8Zxfh.js → EditTeamMemberForm-D9cofrUM.js} +3 -3
  41. package/dist/{EditTeamMemberForm-Fyf8Zxfh.js.map → EditTeamMemberForm-D9cofrUM.js.map} +1 -1
  42. package/dist/{EditUserPage-D3AWaHT2.js → EditUserPage-CQgp-08o.js} +1 -1
  43. package/dist/{EditUserPage-BBzGmOrx.js → EditUserPage-CwsO8naT.js} +2 -2
  44. package/dist/{EditUserPage-BBzGmOrx.js.map → EditUserPage-CwsO8naT.js.map} +1 -1
  45. package/dist/{ExternalLinkIcon-FidcmNOa.js → ExternalLinkIcon-BKVV5Gjm.js} +1 -1
  46. package/dist/{ExternalLinkIcon-FidcmNOa.js.map → ExternalLinkIcon-BKVV5Gjm.js.map} +1 -1
  47. package/dist/{FieldsetSection-CH1jAwcc.js → FieldsetSection-Br_sygWW.js} +1 -1
  48. package/dist/{FieldsetSection-CH1jAwcc.js.map → FieldsetSection-Br_sygWW.js.map} +1 -1
  49. package/dist/{RecordVersionViewer-NLn1gVys.js → RecordVersionViewer-DKIdX_BX.js} +1 -1
  50. package/dist/{RecordVersionViewer-NLn1gVys.js.map → RecordVersionViewer-DKIdX_BX.js.map} +1 -1
  51. package/dist/{SavedFiltersPage-B9aQYpwf.js → SavedFiltersPage-Cz01ZeHx.js} +45 -45
  52. package/dist/{SavedFiltersPage-B9aQYpwf.js.map → SavedFiltersPage-Cz01ZeHx.js.map} +1 -1
  53. package/dist/{Signup-EykiX-bQ.js → Signup-CkhRQErA.js} +4 -12
  54. package/dist/Signup-CkhRQErA.js.map +1 -0
  55. package/dist/{Signup-Ceh7XSea.js → Signup-cOvXCtJj.js} +2 -2
  56. package/dist/{SignupConsentFlow-CRtiMpcS.js → SignupConsentFlow-CKMFsnf5.js} +10 -7
  57. package/dist/SignupConsentFlow-CKMFsnf5.js.map +1 -0
  58. package/dist/{SignupRequirementsPage-CohJluxQ.js → SignupRequirementsPage-33z--rhH.js} +4 -4
  59. package/dist/{SignupRequirementsPage-CohJluxQ.js.map → SignupRequirementsPage-33z--rhH.js.map} +1 -1
  60. package/dist/{StaffCreateSupportTicketForm-ANtaO4pe.js → StaffCreateSupportTicketForm-BtR-Aowv.js} +4 -4
  61. package/dist/{StaffCreateSupportTicketForm-ANtaO4pe.js.map → StaffCreateSupportTicketForm-BtR-Aowv.js.map} +1 -1
  62. package/dist/{StaffCreateSupportTicketForm-CtU12OGq.js → StaffCreateSupportTicketForm-D7ctCaXe.js} +5 -5
  63. package/dist/{StaffSupportTicketDetailPage-B63QXyum.js → StaffSupportTicketDetailPage-LqnNfU34.js} +7 -7
  64. package/dist/{StaffSupportTicketDetailPage-B63QXyum.js.map → StaffSupportTicketDetailPage-LqnNfU34.js.map} +1 -1
  65. package/dist/StaffSupportTicketList-GyzlONKe.js +64 -0
  66. package/dist/{StaffSupportTicketParent-yoC-_Lku.js → StaffSupportTicketParent-DPvdLUii.js} +3 -3
  67. package/dist/{StaffSupportTicketParent-yoC-_Lku.js.map → StaffSupportTicketParent-DPvdLUii.js.map} +1 -1
  68. package/dist/{StaffSupportTicketParent-ByUwsYGx.js → StaffSupportTicketParent-Dyybqx74.js} +2 -2
  69. package/dist/{StaffSupportTicketSuccess-CB4Oa_2J.js → StaffSupportTicketSuccess-B3N-RMoT.js} +2 -2
  70. package/dist/{StaffSupportTicketSuccess-CB4Oa_2J.js.map → StaffSupportTicketSuccess-B3N-RMoT.js.map} +1 -1
  71. package/dist/{StaffSupportTicketSuccess-BMh5amWI.js → StaffSupportTicketSuccess-DvonYilY.js} +4 -4
  72. package/dist/{SupportStaffPage-CkFLlle4.js → SupportStaffPage-geoITTqt.js} +3 -3
  73. package/dist/{SupportStaffPage-CkFLlle4.js.map → SupportStaffPage-geoITTqt.js.map} +1 -1
  74. package/dist/{SupportTicketDevLifecycleBadge-BYKZjEv6.js → SupportTicketDevLifecycleBadge-D8-Cv1Np.js} +1 -1
  75. package/dist/{SupportTicketDevLifecycleBadge-BYKZjEv6.js.map → SupportTicketDevLifecycleBadge-D8-Cv1Np.js.map} +1 -1
  76. package/dist/TeamAttachmentsTab-ChP4DaUP.js +64 -0
  77. package/dist/{TeamHistoryTab-p3hDxCc3.js → TeamHistoryTab-CxzA4u_G.js} +3 -3
  78. package/dist/{TeamHistoryTab-p3hDxCc3.js.map → TeamHistoryTab-CxzA4u_G.js.map} +1 -1
  79. package/dist/TeamHistoryTab-wRpRizDE.js +6 -0
  80. package/dist/{TeamList-B4gWPzce.js → TeamList-_SsqJicG.js} +3 -3
  81. package/dist/{TeamList-B4gWPzce.js.map → TeamList-_SsqJicG.js.map} +1 -1
  82. package/dist/TeamList-cp8Pa2xg.js +8 -0
  83. package/dist/TeamMemberList-B16SuLwM.js +7 -0
  84. package/dist/{TeamMemberList-D0-dM5kI.js → TeamMemberList-BYUANoBg.js} +3 -3
  85. package/dist/{TeamMemberList-D0-dM5kI.js.map → TeamMemberList-BYUANoBg.js.map} +1 -1
  86. package/dist/{TeamMemberParent-C9OEziOK.js → TeamMemberParent-BJl8nBmP.js} +4 -4
  87. package/dist/{TeamMemberParent-CJGWXjuM.js → TeamMemberParent-DmYcHU3n.js} +3 -3
  88. package/dist/{TeamMemberParent-CJGWXjuM.js.map → TeamMemberParent-DmYcHU3n.js.map} +1 -1
  89. package/dist/{TeamNotesTab-BnkgZd-5.js → TeamNotesTab-BQN9niw-.js} +1 -1
  90. package/dist/{TeamNotesTab-DPw9YEwK.js → TeamNotesTab-Cego-QT3.js} +2 -2
  91. package/dist/{TeamNotesTab-DPw9YEwK.js.map → TeamNotesTab-Cego-QT3.js.map} +1 -1
  92. package/dist/{TeamParent-KQmJgJ9x.js → TeamParent-BUnqP-dr.js} +3 -3
  93. package/dist/{TeamParent-KQmJgJ9x.js.map → TeamParent-BUnqP-dr.js.map} +1 -1
  94. package/dist/TeamParent-BseZ6Zoi.js +11 -0
  95. package/dist/{TimelineNoteInput-DXZhcUkH.js → TimelineNoteInput-BBZv3X4p.js} +2 -2
  96. package/dist/{TimelineNoteInput-DXZhcUkH.js.map → TimelineNoteInput-BBZv3X4p.js.map} +1 -1
  97. package/dist/{TimelineSystemEvent-Ch1sZiyO.js → TimelineSystemEvent-D5fkhkZT.js} +1 -1
  98. package/dist/{TimelineSystemEvent-Ch1sZiyO.js.map → TimelineSystemEvent-D5fkhkZT.js.map} +1 -1
  99. package/dist/UserListPage-BABli3QG.js +5 -0
  100. package/dist/{UserListPage-A0_eNpQ1.js → UserListPage-CDMSZpXK.js} +2 -2
  101. package/dist/{UserListPage-A0_eNpQ1.js.map → UserListPage-CDMSZpXK.js.map} +1 -1
  102. package/dist/{UserProfilePage-FNLYK9kj.js → UserProfilePage-BYitd7QV.js} +1 -1
  103. package/dist/{UserProfilePage-FNLYK9kj.js.map → UserProfilePage-BYitd7QV.js.map} +1 -1
  104. package/dist/{UserProfilePage-BWK97ODt.js → UserProfilePage-Dmxp7oqP.js} +1 -1
  105. package/dist/{VerifyEmail-BYYsE-M_.js → VerifyEmail-CLDngljq.js} +2 -2
  106. package/dist/{VerifyEmail-BVwHQpbw.js → VerifyEmail-CWUhRA1o.js} +2 -2
  107. package/dist/{VerifyEmail-BVwHQpbw.js.map → VerifyEmail-CWUhRA1o.js.map} +1 -1
  108. package/dist/ViewTeam-rLNxVgS2.js +8 -0
  109. package/dist/{ViewTeam-BV7SjH8R.js → ViewTeam-ttqX2In8.js} +4 -4
  110. package/dist/{ViewTeam-BV7SjH8R.js.map → ViewTeam-ttqX2In8.js.map} +1 -1
  111. package/dist/ViewTeamMember-B5U8kZBw.js +7 -0
  112. package/dist/{ViewTeamMember-Cf5yXdv6.js → ViewTeamMember-DqWZ3F_h.js} +4 -4
  113. package/dist/{ViewTeamMember-Cf5yXdv6.js.map → ViewTeamMember-DqWZ3F_h.js.map} +1 -1
  114. package/dist/{ZiniaContainer-BV6sojLa.js → ZiniaContainer-BPIfQOc7.js} +1 -1
  115. package/dist/{ZiniaContainer-BV6sojLa.js.map → ZiniaContainer-BPIfQOc7.js.map} +1 -1
  116. package/dist/{convertToLocalDateTime-C13-PrSA.js → convertToLocalDateTime-BKBxm2Rc.js} +1 -1
  117. package/dist/{convertToLocalDateTime-C13-PrSA.js.map → convertToLocalDateTime-BKBxm2Rc.js.map} +1 -1
  118. package/dist/{customerSupportTicketRoutes-_HjQcEAD.js → customerSupportTicketRoutes-C-DKBy5g.js} +8 -8
  119. package/dist/{customerSupportTicketRoutes-_HjQcEAD.js.map → customerSupportTicketRoutes-C-DKBy5g.js.map} +1 -1
  120. package/dist/{displayIdFormatter-Cr-QaEk1.js → displayIdFormatter-Ca4Al9iB.js} +1 -1
  121. package/dist/{displayIdFormatter-Cr-QaEk1.js.map → displayIdFormatter-Ca4Al9iB.js.map} +1 -1
  122. package/dist/{extractRpcErrorMessage-CAaeVysa.js → extractRpcErrorMessage-Df8-CJGV.js} +1 -1
  123. package/dist/{extractRpcErrorMessage-CAaeVysa.js.map → extractRpcErrorMessage-Df8-CJGV.js.map} +1 -1
  124. package/dist/index.d.ts +763 -753
  125. package/dist/index.js +48 -47
  126. package/dist/{saved_filter-C6YHkEMV.js → saved_filter-C2N9l_a9.js} +3 -3
  127. package/dist/{saved_filter-C6YHkEMV.js.map → saved_filter-C2N9l_a9.js.map} +1 -1
  128. package/dist/{signupConsentStorage-foqtLkIk.js → signupConsentStorage-pWSoHuhO.js} +10 -2
  129. package/dist/signupConsentStorage-pWSoHuhO.js.map +1 -0
  130. package/dist/{src-BIX3mMjo.js → src-C8B9TJiH.js} +31 -26
  131. package/dist/src-C8B9TJiH.js.map +1 -0
  132. package/dist/{staffSupportTicketRoutes-WPaItK5S.js → staffSupportTicketRoutes-CyMecWpC.js} +8 -8
  133. package/dist/{staffSupportTicketRoutes-WPaItK5S.js.map → staffSupportTicketRoutes-CyMecWpC.js.map} +1 -1
  134. package/dist/{teamMemberMetadata-DX0W-B7p.js → teamMemberMetadata-C4urCwBU.js} +1 -1
  135. package/dist/{teamMemberMetadata-DX0W-B7p.js.map → teamMemberMetadata-C4urCwBU.js.map} +1 -1
  136. package/dist/{teamMetadata-26Mwjb2i.js → teamMetadata-NTjPt89L.js} +1 -1
  137. package/dist/{teamMetadata-26Mwjb2i.js.map → teamMetadata-NTjPt89L.js.map} +1 -1
  138. package/dist/{teamRoutes-CQWRPy3J.js → teamRoutes-CFDsHPkd.js} +12 -12
  139. package/dist/{teamRoutes-CQWRPy3J.js.map → teamRoutes-CFDsHPkd.js.map} +1 -1
  140. package/dist/{team_memberRoutes-Cxgte_vj.js → team_memberRoutes-BgjY9Kwq.js} +7 -7
  141. package/dist/{team_memberRoutes-Cxgte_vj.js.map → team_memberRoutes-BgjY9Kwq.js.map} +1 -1
  142. package/dist/{useBreadcrumbs-DIqU5AAp.js → useBreadcrumbs-CPWXm0hm.js} +1 -1
  143. package/dist/{useBreadcrumbs-DIqU5AAp.js.map → useBreadcrumbs-CPWXm0hm.js.map} +1 -1
  144. package/dist/{useEmailVerificationChannel-C4bvvG2b.js → useEmailVerificationChannel-QuMSgzzM.js} +1 -1
  145. package/dist/{useEmailVerificationChannel-C4bvvG2b.js.map → useEmailVerificationChannel-QuMSgzzM.js.map} +1 -1
  146. package/dist/{userAuthorized-klLUHGxT.js → userAuthorized-3RiCDXxr.js} +1 -1
  147. package/dist/{userAuthorized-klLUHGxT.js.map → userAuthorized-3RiCDXxr.js.map} +1 -1
  148. package/package.json +2 -2
  149. package/dist/CreateTeamForm-CCfgSWUA.js +0 -12
  150. package/dist/CustomerSupportTicketList-D1pcZzcX.js +0 -64
  151. package/dist/EditTeamForm-BzTAypZT.js +0 -12
  152. package/dist/Signup-EykiX-bQ.js.map +0 -1
  153. package/dist/SignupConsentFlow-CRtiMpcS.js.map +0 -1
  154. package/dist/StaffSupportTicketList-CqK8PVq4.js +0 -64
  155. package/dist/TeamAttachmentsTab-BG_K7uwG.js +0 -64
  156. package/dist/TeamHistoryTab-BSEOYC_5.js +0 -6
  157. package/dist/TeamList-iAH9mOdd.js +0 -8
  158. package/dist/TeamMemberList-uwSe9zdv.js +0 -7
  159. package/dist/TeamParent-D_IbzH8B.js +0 -11
  160. package/dist/UserListPage-CjpxiETO.js +0 -5
  161. package/dist/ViewTeam-BvLIv9Dd.js +0 -8
  162. package/dist/ViewTeamMember-DtQCZU-X.js +0 -7
  163. package/dist/signupConsentStorage-foqtLkIk.js.map +0 -1
  164. package/dist/src-BIX3mMjo.js.map +0 -1
  165. /package/dist/{Appearance-CHCv4Fd1.js → Appearance-BhzkZJOL.js} +0 -0
  166. /package/dist/{TeamMembersTab-CeOJAhhR.js → TeamMembersTab-D7y2nV__.js} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"StaffCreateSupportTicketForm-ANtaO4pe.js","names":[],"sources":["../src/slices/support_ticket/staff/StaffSupportTicketMetadata.ts","../src/slices/support_ticket/staff/StaffCreateSupportTicketForm.vue"],"sourcesContent":["import {\n StaffSupportTicketCreateSchema,\n StaffSupportTicketUpdateSchema,\n SUPPORT_TICKET_PRIORITY_NUMBER_TO_LABEL,\n} from '@dragonmastery/dragoncore-shared';\nimport {\n type UseFormTyped,\n withMetadata,\n ZINIA_FIELDS_KEY,\n ZINIA_FORM_KEY,\n} from '@dragonmastery/zinia-forms-core';\nimport { inject } from 'vue';\n\n// Create schema (no ID)\nexport const adminSupportTicketCreateSchemaWithMetadata = withMetadata(\n StaffSupportTicketCreateSchema,\n 'adminSupportTicketCreateSchema',\n {\n description: {\n inputType: 'textarea',\n placeholder: 'Enter description',\n },\n credit_value: {\n inputType: 'currency',\n step: 0.01,\n placeholder: 'Enter credit value',\n },\n start_at: {\n inputType: 'date',\n placeholder: 'Enter date',\n },\n target_at: {\n inputType: 'date',\n placeholder: 'Enter date',\n },\n completed_at: {\n inputType: 'date',\n placeholder: 'Enter date',\n },\n priority: {\n inputType: 'select',\n valueToLabel: SUPPORT_TICKET_PRIORITY_NUMBER_TO_LABEL,\n valueType: 'number',\n },\n assigned_to: {\n label: 'Assignee',\n inputType: 'select',\n placeholder: 'Auto-assign (round-robin)',\n },\n },\n);\n\n// Update schema (with ID)\nexport const adminSupportTicketUpdateSchemaWithMetadata = withMetadata(\n StaffSupportTicketUpdateSchema,\n 'adminSupportTicketUpdateSchema',\n {\n description: {\n inputType: 'textarea',\n placeholder: 'Enter description',\n },\n credit_value: {\n inputType: 'currency',\n step: 0.01,\n placeholder: 'Enter credit value',\n },\n start_at: {\n inputType: 'date',\n placeholder: 'Enter date',\n },\n target_at: {\n inputType: 'date',\n placeholder: 'Enter date',\n },\n completed_at: {\n inputType: 'date',\n placeholder: 'Enter date',\n },\n priority: {\n inputType: 'select',\n valueToLabel: SUPPORT_TICKET_PRIORITY_NUMBER_TO_LABEL,\n valueType: 'number',\n },\n },\n);\n\nexport type AdminSupportTicketCreateFormDto = UseFormTyped<\n typeof StaffSupportTicketCreateSchema\n>;\nexport type AdminSupportTicketUpdateFormDto = UseFormTyped<\n typeof StaffSupportTicketUpdateSchema\n>;\n\nexport const injectAdminSupportTicketCreateForm = () =>\n inject<AdminSupportTicketCreateFormDto['form']>(ZINIA_FORM_KEY);\nexport const injectAdminSupportTicketUpdateForm = () =>\n inject<AdminSupportTicketUpdateFormDto['form']>(ZINIA_FORM_KEY);\nexport const injectAdminSupportTicketZinia = () =>\n inject<AdminSupportTicketCreateFormDto['zinia'] | AdminSupportTicketUpdateFormDto['zinia']>(\n ZINIA_FIELDS_KEY,\n );\n","<template>\n <div v-if=\"form.isLoading\" class=\"flex flex-col items-center justify-center p-8\">\n <div class=\"loading loading-spinner loading-lg\"></div>\n <p class=\"mt-4 text-lg\">Loading...</p>\n </div>\n <div v-else-if=\"form.loadError\" class=\"flex flex-col items-center justify-center p-8\">\n <p class=\"mt-4 text-lg\">{{ form.loadError }}</p>\n </div>\n <ZiniaForm\n v-else\n @before-validate=\"beforeValidate\"\n @handle-submit=\"handleSubmit\"\n @success=\"handleSuccess\"\n @error=\"handleError\"\n title=\"Create Support Ticket\"\n subtitle=\"Create new ticket or internal task\"\n >\n <!-- Basic Information -->\n <FieldsetSection title=\"Support Ticket Details\">\n <zinia.TitleField placeholder=\"Enter ticket title\" />\n <zinia.TypeField />\n <zinia.PriorityField />\n </FieldsetSection>\n <FieldsetSection title=\"Description\">\n <zinia.DescriptionField class=\"w-full\" placeholder=\"Describe the ticket in detail\" />\n </FieldsetSection>\n\n <!-- Attachments (Jira-style inline) - Files will be uploaded after ticket creation -->\n <div class=\"mt-6\">\n <InlineAttachments\n :can-upload=\"true\"\n :can-delete=\"false\"\n @files-queued=\"handleFilesQueued\"\n ref=\"attachmentsRef\"\n />\n </div>\n\n <!-- Staff Options -->\n <FieldsetSection title=\"Staff Options\">\n <zinia.IsInternalField label=\"Internal Staff Task\" />\n <zinia.AssignedToField :select-options=\"form.extraData.enriched?.triageUsers || []\" />\n <!-- Show devLifecycle only for internal tasks -->\n <zinia.DevLifecycleField v-if=\"form.values.is_internal\" />\n </FieldsetSection>\n\n <!-- Credits (only for customer support ticket) -->\n <FieldsetSection v-if=\"!form.values.is_internal\" title=\"Credits (Optional)\">\n <zinia.CreditValueField placeholder=\"0.00\" />\n </FieldsetSection>\n\n <!-- Timeline (Optional) -->\n <FieldsetSection title=\"Timeline (Optional)\">\n <zinia.StartAtField :formatter=\"formatToISODate\" />\n <zinia.TargetAtField :formatter=\"formatToISODate\" />\n </FieldsetSection>\n\n <!-- Form Status Messages -->\n <div v-if=\"form.submitError\" class=\"alert alert-error mb-4\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n class=\"stroke-current shrink-0 h-6 w-6\"\n fill=\"none\"\n viewBox=\"0 0 24 24\"\n >\n <path\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n stroke-width=\"2\"\n d=\"M10 14l2-2m0 0l2-2m-2 2l-2-2m2 2l2 2m7-2a9 9 0 11-18 0 9 9 0 0118 0z\"\n />\n </svg>\n <span>{{ form.submitError }}</span>\n </div>\n\n <!-- Submit Button -->\n <div class=\"flex justify-center mt-6\">\n <ZiniaSubmitButton\n submitText=\"Create Support Ticket\"\n submittingText=\"Creating Support Ticket...\"\n />\n </div>\n <ZiniaFormErrorsSummary title=\"Please fix the following errors:\" />\n <ZiniaResetButton />\n </ZiniaForm>\n</template>\n\n<script setup lang=\"ts\">\nimport FieldsetSection from '../../../components/ui/FieldsetSection.vue';\nimport { useMutation } from '../../../composables/useMutation';\nimport { executeWithAuth } from '../../../composables/useRpcAuth';\nimport { getRefreshTokenHandler } from '../../../utils/EnhancedRefreshTokenHandler';\nimport { formatToISODate } from '../../../utils/convertToLocalDateTime';\nimport { useForm } from '@dragonmastery/zinia-forms-core';\nimport {\n SUPPORT_TICKET_PRIORITY_TO_NUMBER,\n type StaffSupportTicketCreateDto,\n type StaffSupportTicketReadDto,\n} from '@dragonmastery/dragoncore-shared';\nimport { ref } from 'vue';\nimport { useRouter } from 'vue-router';\nimport { toast } from 'vue3-toastify';\nimport InlineAttachments from '../shared/InlineAttachments.vue';\nimport { adminSupportTicketCreateSchemaWithMetadata } from './StaffSupportTicketMetadata';\nimport { staffSupportPaths } from './staffSupportTicketRoutes';\n\nconst router = useRouter();\nconst attachmentsRef = ref<InstanceType<typeof InlineAttachments> | null>(null);\n\nconst loadAssigneeOptions = async () => {\n try {\n const users = await executeWithAuth(\n (api) => api.users.getTriageUsers(),\n { refreshTokenHandler: getRefreshTokenHandler() },\n );\n return {\n triageUsers: [\n { value: '', label: 'Auto-assign (round-robin)' },\n ...(users ?? []).map((u) => ({ value: u.id, label: u.email })),\n ],\n };\n } catch (error) {\n console.error('Error fetching triage users', error);\n return { triageUsers: [{ value: '', label: 'Auto-assign (round-robin)' }] };\n }\n};\n\nconst {\n form,\n zinia,\n ZiniaForm,\n ZiniaSubmitButton,\n ZiniaResetButton,\n ZiniaFormErrorsSummary,\n clearSavedFormState,\n} = useForm(adminSupportTicketCreateSchemaWithMetadata, {\n storeName: `create-admin-support-ticket`,\n persistToLocalStorage: true,\n renderStyle: 'daisy_ui',\n dataLoaders: {\n enriched: loadAssigneeOptions,\n },\n fetchData: async () => {\n // Return default values for new support ticket (all required fields)\n return {\n title: '',\n type: 'IMPROVEMENT' as const,\n priority: SUPPORT_TICKET_PRIORITY_TO_NUMBER.MEDIUM,\n is_internal: false, // Default to customer support ticket\n assigned_to: null as string | null, // Empty = round-robin auto-assign\n };\n },\n});\n\n// Setup mutation for creating support ticket with staff fields\nconst { mutate: createSupportTicket } = useMutation(\n (api, input: StaffSupportTicketCreateDto) => api.supportTickets.staffCreateTicket(input),\n { invalidate: /^support-tickets?:/ },\n);\n\nconst beforeValidate = () => {\n // Clear credit_value if internal task (can't have credits)\n if (form.values.is_internal) {\n form.values.credit_value = null;\n\n // Set dev_lifecycle to BACKLOG for internal tasks if not valid\n const validDevLifecycleValues = [\n 'BACKLOG',\n 'CODE_REVIEW',\n 'DEVELOPMENT',\n 'PLANNING',\n 'PO_APPROVAL',\n 'STAGING',\n 'TESTING',\n 'VERIFICATION',\n ];\n if (\n !form.values.dev_lifecycle ||\n !validDevLifecycleValues.includes(form.values.dev_lifecycle)\n ) {\n form.values.dev_lifecycle = 'BACKLOG';\n }\n }\n return true;\n};\n\n// Handle form submission\nconst handleSubmit = async (formData: StaffSupportTicketCreateDto) => {\n const createdSupportTicket = await createSupportTicket(formData);\n if (!createdSupportTicket) {\n throw new Error('Failed to create support ticket');\n }\n return createdSupportTicket;\n};\n\n// Handle files queued during form filling\nconst handleFilesQueued = (_files: File[]) => {\n // Files are queued and will be uploaded after ticket creation\n};\n\n// Handle successful submission\nconst handleSuccess = async (createdSupportTicket: StaffSupportTicketReadDto) => {\n // Upload any queued files after ticket creation\n if (attachmentsRef.value) {\n try {\n await attachmentsRef.value.uploadQueuedFiles(createdSupportTicket.id);\n } catch (error) {\n console.error('Failed to upload attachments:', error);\n // Don't block success - attachments can be added later\n toast.warning(\n 'Ticket created, but some attachments failed to upload. You can add them later.',\n );\n }\n }\n\n clearSavedFormState();\n await router.push({ name: staffSupportPaths.staff_create_success.name });\n toast.success(`Support Ticket \"${createdSupportTicket.title}\" created successfully!`);\n};\n\n// Handle submission error\nconst handleError = (error: Error | unknown) => {\n form.setSubmitError(error instanceof Error ? error.message : 'An unknown error occurred');\n};\n</script>\n"],"mappings":"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"}
1
+ {"version":3,"file":"StaffCreateSupportTicketForm-BtR-Aowv.js","names":[],"sources":["../src/slices/support_ticket/staff/StaffSupportTicketMetadata.ts","../src/slices/support_ticket/staff/StaffCreateSupportTicketForm.vue"],"sourcesContent":["import {\n StaffSupportTicketCreateSchema,\n StaffSupportTicketUpdateSchema,\n SUPPORT_TICKET_PRIORITY_NUMBER_TO_LABEL,\n} from '@dragonmastery/dragoncore-shared';\nimport {\n type UseFormTyped,\n withMetadata,\n ZINIA_FIELDS_KEY,\n ZINIA_FORM_KEY,\n} from '@dragonmastery/zinia-forms-core';\nimport { inject } from 'vue';\n\n// Create schema (no ID)\nexport const adminSupportTicketCreateSchemaWithMetadata = withMetadata(\n StaffSupportTicketCreateSchema,\n 'adminSupportTicketCreateSchema',\n {\n description: {\n inputType: 'textarea',\n placeholder: 'Enter description',\n },\n credit_value: {\n inputType: 'currency',\n step: 0.01,\n placeholder: 'Enter credit value',\n },\n start_at: {\n inputType: 'date',\n placeholder: 'Enter date',\n },\n target_at: {\n inputType: 'date',\n placeholder: 'Enter date',\n },\n completed_at: {\n inputType: 'date',\n placeholder: 'Enter date',\n },\n priority: {\n inputType: 'select',\n valueToLabel: SUPPORT_TICKET_PRIORITY_NUMBER_TO_LABEL,\n valueType: 'number',\n },\n assigned_to: {\n label: 'Assignee',\n inputType: 'select',\n placeholder: 'Auto-assign (round-robin)',\n },\n },\n);\n\n// Update schema (with ID)\nexport const adminSupportTicketUpdateSchemaWithMetadata = withMetadata(\n StaffSupportTicketUpdateSchema,\n 'adminSupportTicketUpdateSchema',\n {\n description: {\n inputType: 'textarea',\n placeholder: 'Enter description',\n },\n credit_value: {\n inputType: 'currency',\n step: 0.01,\n placeholder: 'Enter credit value',\n },\n start_at: {\n inputType: 'date',\n placeholder: 'Enter date',\n },\n target_at: {\n inputType: 'date',\n placeholder: 'Enter date',\n },\n completed_at: {\n inputType: 'date',\n placeholder: 'Enter date',\n },\n priority: {\n inputType: 'select',\n valueToLabel: SUPPORT_TICKET_PRIORITY_NUMBER_TO_LABEL,\n valueType: 'number',\n },\n },\n);\n\nexport type AdminSupportTicketCreateFormDto = UseFormTyped<\n typeof StaffSupportTicketCreateSchema\n>;\nexport type AdminSupportTicketUpdateFormDto = UseFormTyped<\n typeof StaffSupportTicketUpdateSchema\n>;\n\nexport const injectAdminSupportTicketCreateForm = () =>\n inject<AdminSupportTicketCreateFormDto['form']>(ZINIA_FORM_KEY);\nexport const injectAdminSupportTicketUpdateForm = () =>\n inject<AdminSupportTicketUpdateFormDto['form']>(ZINIA_FORM_KEY);\nexport const injectAdminSupportTicketZinia = () =>\n inject<AdminSupportTicketCreateFormDto['zinia'] | AdminSupportTicketUpdateFormDto['zinia']>(\n ZINIA_FIELDS_KEY,\n );\n","<template>\n <div v-if=\"form.isLoading\" class=\"flex flex-col items-center justify-center p-8\">\n <div class=\"loading loading-spinner loading-lg\"></div>\n <p class=\"mt-4 text-lg\">Loading...</p>\n </div>\n <div v-else-if=\"form.loadError\" class=\"flex flex-col items-center justify-center p-8\">\n <p class=\"mt-4 text-lg\">{{ form.loadError }}</p>\n </div>\n <ZiniaForm\n v-else\n @before-validate=\"beforeValidate\"\n @handle-submit=\"handleSubmit\"\n @success=\"handleSuccess\"\n @error=\"handleError\"\n title=\"Create Support Ticket\"\n subtitle=\"Create new ticket or internal task\"\n >\n <!-- Basic Information -->\n <FieldsetSection title=\"Support Ticket Details\">\n <zinia.TitleField placeholder=\"Enter ticket title\" />\n <zinia.TypeField />\n <zinia.PriorityField />\n </FieldsetSection>\n <FieldsetSection title=\"Description\">\n <zinia.DescriptionField class=\"w-full\" placeholder=\"Describe the ticket in detail\" />\n </FieldsetSection>\n\n <!-- Attachments (Jira-style inline) - Files will be uploaded after ticket creation -->\n <div class=\"mt-6\">\n <InlineAttachments\n :can-upload=\"true\"\n :can-delete=\"false\"\n @files-queued=\"handleFilesQueued\"\n ref=\"attachmentsRef\"\n />\n </div>\n\n <!-- Staff Options -->\n <FieldsetSection title=\"Staff Options\">\n <zinia.IsInternalField label=\"Internal Staff Task\" />\n <zinia.AssignedToField :select-options=\"form.extraData.enriched?.triageUsers || []\" />\n <!-- Show devLifecycle only for internal tasks -->\n <zinia.DevLifecycleField v-if=\"form.values.is_internal\" />\n </FieldsetSection>\n\n <!-- Credits (only for customer support ticket) -->\n <FieldsetSection v-if=\"!form.values.is_internal\" title=\"Credits (Optional)\">\n <zinia.CreditValueField placeholder=\"0.00\" />\n </FieldsetSection>\n\n <!-- Timeline (Optional) -->\n <FieldsetSection title=\"Timeline (Optional)\">\n <zinia.StartAtField :formatter=\"formatToISODate\" />\n <zinia.TargetAtField :formatter=\"formatToISODate\" />\n </FieldsetSection>\n\n <!-- Form Status Messages -->\n <div v-if=\"form.submitError\" class=\"alert alert-error mb-4\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n class=\"stroke-current shrink-0 h-6 w-6\"\n fill=\"none\"\n viewBox=\"0 0 24 24\"\n >\n <path\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n stroke-width=\"2\"\n d=\"M10 14l2-2m0 0l2-2m-2 2l-2-2m2 2l2 2m7-2a9 9 0 11-18 0 9 9 0 0118 0z\"\n />\n </svg>\n <span>{{ form.submitError }}</span>\n </div>\n\n <!-- Submit Button -->\n <div class=\"flex justify-center mt-6\">\n <ZiniaSubmitButton\n submitText=\"Create Support Ticket\"\n submittingText=\"Creating Support Ticket...\"\n />\n </div>\n <ZiniaFormErrorsSummary title=\"Please fix the following errors:\" />\n <ZiniaResetButton />\n </ZiniaForm>\n</template>\n\n<script setup lang=\"ts\">\nimport FieldsetSection from '../../../components/ui/FieldsetSection.vue';\nimport { useMutation } from '../../../composables/useMutation';\nimport { executeWithAuth } from '../../../composables/useRpcAuth';\nimport { getRefreshTokenHandler } from '../../../utils/EnhancedRefreshTokenHandler';\nimport { formatToISODate } from '../../../utils/convertToLocalDateTime';\nimport { useForm } from '@dragonmastery/zinia-forms-core';\nimport {\n SUPPORT_TICKET_PRIORITY_TO_NUMBER,\n type StaffSupportTicketCreateDto,\n type StaffSupportTicketReadDto,\n} from '@dragonmastery/dragoncore-shared';\nimport { ref } from 'vue';\nimport { useRouter } from 'vue-router';\nimport { toast } from 'vue3-toastify';\nimport InlineAttachments from '../shared/InlineAttachments.vue';\nimport { adminSupportTicketCreateSchemaWithMetadata } from './StaffSupportTicketMetadata';\nimport { staffSupportPaths } from './staffSupportTicketRoutes';\n\nconst router = useRouter();\nconst attachmentsRef = ref<InstanceType<typeof InlineAttachments> | null>(null);\n\nconst loadAssigneeOptions = async () => {\n try {\n const users = await executeWithAuth(\n (api) => api.users.getTriageUsers(),\n { refreshTokenHandler: getRefreshTokenHandler() },\n );\n return {\n triageUsers: [\n { value: '', label: 'Auto-assign (round-robin)' },\n ...(users ?? []).map((u) => ({ value: u.id, label: u.email })),\n ],\n };\n } catch (error) {\n console.error('Error fetching triage users', error);\n return { triageUsers: [{ value: '', label: 'Auto-assign (round-robin)' }] };\n }\n};\n\nconst {\n form,\n zinia,\n ZiniaForm,\n ZiniaSubmitButton,\n ZiniaResetButton,\n ZiniaFormErrorsSummary,\n clearSavedFormState,\n} = useForm(adminSupportTicketCreateSchemaWithMetadata, {\n storeName: `create-admin-support-ticket`,\n persistToLocalStorage: true,\n renderStyle: 'daisy_ui',\n dataLoaders: {\n enriched: loadAssigneeOptions,\n },\n fetchData: async () => {\n // Return default values for new support ticket (all required fields)\n return {\n title: '',\n type: 'IMPROVEMENT' as const,\n priority: SUPPORT_TICKET_PRIORITY_TO_NUMBER.MEDIUM,\n is_internal: false, // Default to customer support ticket\n assigned_to: null as string | null, // Empty = round-robin auto-assign\n };\n },\n});\n\n// Setup mutation for creating support ticket with staff fields\nconst { mutate: createSupportTicket } = useMutation(\n (api, input: StaffSupportTicketCreateDto) => api.supportTickets.staffCreateTicket(input),\n { invalidate: /^support-tickets?:/ },\n);\n\nconst beforeValidate = () => {\n // Clear credit_value if internal task (can't have credits)\n if (form.values.is_internal) {\n form.values.credit_value = null;\n\n // Set dev_lifecycle to BACKLOG for internal tasks if not valid\n const validDevLifecycleValues = [\n 'BACKLOG',\n 'CODE_REVIEW',\n 'DEVELOPMENT',\n 'PLANNING',\n 'PO_APPROVAL',\n 'STAGING',\n 'TESTING',\n 'VERIFICATION',\n ];\n if (\n !form.values.dev_lifecycle ||\n !validDevLifecycleValues.includes(form.values.dev_lifecycle)\n ) {\n form.values.dev_lifecycle = 'BACKLOG';\n }\n }\n return true;\n};\n\n// Handle form submission\nconst handleSubmit = async (formData: StaffSupportTicketCreateDto) => {\n const createdSupportTicket = await createSupportTicket(formData);\n if (!createdSupportTicket) {\n throw new Error('Failed to create support ticket');\n }\n return createdSupportTicket;\n};\n\n// Handle files queued during form filling\nconst handleFilesQueued = (_files: File[]) => {\n // Files are queued and will be uploaded after ticket creation\n};\n\n// Handle successful submission\nconst handleSuccess = async (createdSupportTicket: StaffSupportTicketReadDto) => {\n // Upload any queued files after ticket creation\n if (attachmentsRef.value) {\n try {\n await attachmentsRef.value.uploadQueuedFiles(createdSupportTicket.id);\n } catch (error) {\n console.error('Failed to upload attachments:', error);\n // Don't block success - attachments can be added later\n toast.warning(\n 'Ticket created, but some attachments failed to upload. You can add them later.',\n );\n }\n }\n\n clearSavedFormState();\n await router.push({ name: staffSupportPaths.staff_create_success.name });\n toast.success(`Support Ticket \"${createdSupportTicket.title}\" created successfully!`);\n};\n\n// Handle submission error\nconst handleError = (error: Error | unknown) => {\n form.setSubmitError(error instanceof Error ? error.message : 'An unknown error occurred');\n};\n</script>\n"],"mappings":"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"}
@@ -3,12 +3,12 @@ import "./EnhancedRefreshTokenHandler-C6tZCcfX.js";
3
3
  import "./useQueryCache-alzaRWEb.js";
4
4
  import "./useMutation-BLNuJoYl.js";
5
5
  import "./useQuery-BzUGEOj0.js";
6
- import "./saved_filter-C6YHkEMV.js";
6
+ import "./saved_filter-C2N9l_a9.js";
7
7
  import "./ConfirmDialog-DjthOYU6.js";
8
8
  import "./InlineAttachments-DAn_QknY.js";
9
- import "./FieldsetSection-CH1jAwcc.js";
10
- import "./userAuthorized-klLUHGxT.js";
11
- import "./staffSupportTicketRoutes-WPaItK5S.js";
12
- import { t as StaffCreateSupportTicketForm_default } from "./StaffCreateSupportTicketForm-ANtaO4pe.js";
9
+ import "./FieldsetSection-Br_sygWW.js";
10
+ import "./userAuthorized-3RiCDXxr.js";
11
+ import "./staffSupportTicketRoutes-CyMecWpC.js";
12
+ import { t as StaffCreateSupportTicketForm_default } from "./StaffCreateSupportTicketForm-BtR-Aowv.js";
13
13
 
14
14
  export { StaffCreateSupportTicketForm_default as default };
@@ -5,12 +5,12 @@ import { t as useMutation } from "./useMutation-BLNuJoYl.js";
5
5
  import { t as useQuery } from "./useQuery-BzUGEOj0.js";
6
6
  import "./ConfirmDialog-DjthOYU6.js";
7
7
  import "./InlineAttachments-DAn_QknY.js";
8
- import { n as formatToISODate } from "./convertToLocalDateTime-C13-PrSA.js";
9
- import { t as extractRpcErrorMessage } from "./extractRpcErrorMessage-CAaeVysa.js";
10
- import { a as SupportTicketTypeBadge_default, c as formatStaffCreditValue, i as SupportTicketApprovalBadge_default, n as TimelineItem_default, o as SupportTicketPriorityBadge_default, r as formatTicketDate, t as TimelineSystemEvent_default } from "./TimelineSystemEvent-Ch1sZiyO.js";
11
- import { t as formatTicketDisplayId } from "./displayIdFormatter-Cr-QaEk1.js";
12
- import { t as SupportTicketDevLifecycleBadge_default } from "./SupportTicketDevLifecycleBadge-BYKZjEv6.js";
13
- import { a as SupportTicketAttachmentsCollapsible_default, i as parseRecordVersions, n as MetadataField_default, r as ActionBannerAlert_default, t as TimelineNoteInput_default } from "./TimelineNoteInput-DXZhcUkH.js";
8
+ import { n as formatToISODate } from "./convertToLocalDateTime-BKBxm2Rc.js";
9
+ import { t as extractRpcErrorMessage } from "./extractRpcErrorMessage-Df8-CJGV.js";
10
+ import { a as SupportTicketTypeBadge_default, c as formatStaffCreditValue, i as SupportTicketApprovalBadge_default, n as TimelineItem_default, o as SupportTicketPriorityBadge_default, r as formatTicketDate, t as TimelineSystemEvent_default } from "./TimelineSystemEvent-D5fkhkZT.js";
11
+ import { t as formatTicketDisplayId } from "./displayIdFormatter-Ca4Al9iB.js";
12
+ import { t as SupportTicketDevLifecycleBadge_default } from "./SupportTicketDevLifecycleBadge-D8-Cv1Np.js";
13
+ import { a as SupportTicketAttachmentsCollapsible_default, i as parseRecordVersions, n as MetadataField_default, r as ActionBannerAlert_default, t as TimelineNoteInput_default } from "./TimelineNoteInput-BBZv3X4p.js";
14
14
  import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createTextVNode, createVNode, defineComponent, inject, nextTick, normalizeClass, openBlock, ref, renderList, resolveComponent, toDisplayString, unref, vModelCheckbox, vModelSelect, vModelText, watch, withCtx, withDirectives } from "vue";
15
15
  import { useRoute, useRouter } from "vue-router";
16
16
  import { toast } from "vue3-toastify";
@@ -1928,4 +1928,4 @@ var StaffSupportTicketDetailPage_default = _sfc_main;
1928
1928
 
1929
1929
  //#endregion
1930
1930
  export { StaffSupportTicketDetailPage_default as default };
1931
- //# sourceMappingURL=StaffSupportTicketDetailPage-B63QXyum.js.map
1931
+ //# sourceMappingURL=StaffSupportTicketDetailPage-LqnNfU34.js.map