codex 1.6.0a8__py3-none-any.whl → 1.6.0a9__py3-none-any.whl

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.

Potentially problematic release.


This version of codex might be problematic. Click here for more details.

Files changed (391) hide show
  1. codex/integrity.py +1 -2
  2. codex/librarian/importer/create_comics.py +3 -4
  3. codex/librarian/importer/create_covers.py +1 -3
  4. codex/librarian/importer/failed_imports.py +1 -2
  5. codex/librarian/importer/importerd.py +2 -2
  6. codex/librarian/importer/moved.py +4 -8
  7. codex/serializers/browser/mtime.py +21 -0
  8. codex/serializers/fields.py +8 -9
  9. codex/serializers/reader.py +5 -5
  10. codex/serializers/route.py +9 -4
  11. codex/static_root/assets/{VCheckbox-DI-DgMb4.8eeb1bd3e18b.js → VCheckbox-eNspVUje.da8282a08876.js} +1 -1
  12. codex/static_root/assets/VCheckbox-eNspVUje.da8282a08876.js.br +0 -0
  13. codex/static_root/assets/VCheckbox-eNspVUje.da8282a08876.js.gz +0 -0
  14. codex/static_root/assets/{VCheckbox-DI-DgMb4.js → VCheckbox-eNspVUje.js} +1 -1
  15. codex/static_root/assets/VCheckbox-eNspVUje.js.br +0 -0
  16. codex/static_root/assets/VCheckbox-eNspVUje.js.gz +0 -0
  17. codex/static_root/assets/{VCheckboxBtn-B8Z4NA-t.3d8921f98ad9.js → VCheckboxBtn-DLzF_WHB.9a47873b8548.js} +1 -1
  18. codex/static_root/assets/VCheckboxBtn-DLzF_WHB.9a47873b8548.js.br +0 -0
  19. codex/static_root/assets/VCheckboxBtn-DLzF_WHB.9a47873b8548.js.gz +0 -0
  20. codex/static_root/assets/{VCheckboxBtn-B8Z4NA-t.js → VCheckboxBtn-DLzF_WHB.js} +1 -1
  21. codex/static_root/assets/VCheckboxBtn-DLzF_WHB.js.br +0 -0
  22. codex/static_root/assets/VCheckboxBtn-DLzF_WHB.js.gz +0 -0
  23. codex/static_root/assets/{VCombobox-D1_0lCri.6ef85a29c2dc.js → VCombobox-BIO7lU_B.d607ada71b06.js} +1 -1
  24. codex/static_root/assets/VCombobox-BIO7lU_B.d607ada71b06.js.br +0 -0
  25. codex/static_root/assets/VCombobox-BIO7lU_B.d607ada71b06.js.gz +0 -0
  26. codex/static_root/assets/{VCombobox-D1_0lCri.js → VCombobox-BIO7lU_B.js} +1 -1
  27. codex/static_root/assets/VCombobox-BIO7lU_B.js.br +0 -0
  28. codex/static_root/assets/VCombobox-BIO7lU_B.js.gz +0 -0
  29. codex/static_root/assets/{VDialog-opmV0YZz.d77216e97599.js → VDialog-87AymJC5.4a46716358c0.js} +1 -1
  30. codex/static_root/assets/VDialog-87AymJC5.4a46716358c0.js.br +0 -0
  31. codex/static_root/assets/VDialog-87AymJC5.4a46716358c0.js.gz +0 -0
  32. codex/static_root/assets/{VDialog-opmV0YZz.js → VDialog-87AymJC5.js} +1 -1
  33. codex/static_root/assets/VDialog-87AymJC5.js.br +0 -0
  34. codex/static_root/assets/VDialog-87AymJC5.js.gz +0 -0
  35. codex/static_root/assets/{VExpansionPanels-DX2dhUf5.ecc2ebfa62ec.js → VExpansionPanels-CgA3shsd.9e524c73726a.js} +1 -1
  36. codex/static_root/assets/VExpansionPanels-CgA3shsd.9e524c73726a.js.br +0 -0
  37. codex/static_root/assets/VExpansionPanels-CgA3shsd.9e524c73726a.js.gz +0 -0
  38. codex/static_root/assets/{VExpansionPanels-DX2dhUf5.js → VExpansionPanels-CgA3shsd.js} +1 -1
  39. codex/static_root/assets/VExpansionPanels-CgA3shsd.js.br +0 -0
  40. codex/static_root/assets/VExpansionPanels-CgA3shsd.js.gz +0 -0
  41. codex/static_root/assets/{VRadioGroup-BGa6_q5a.d1a3ad7266bd.js → VRadioGroup-B--7K_v5.4a4e9c2d6c42.js} +1 -1
  42. codex/static_root/assets/VRadioGroup-B--7K_v5.4a4e9c2d6c42.js.br +0 -0
  43. codex/static_root/assets/VRadioGroup-B--7K_v5.4a4e9c2d6c42.js.gz +0 -0
  44. codex/static_root/assets/{VRadioGroup-BGa6_q5a.js → VRadioGroup-B--7K_v5.js} +1 -1
  45. codex/static_root/assets/VRadioGroup-B--7K_v5.js.br +0 -0
  46. codex/static_root/assets/VRadioGroup-B--7K_v5.js.gz +0 -0
  47. codex/static_root/assets/{VSelect-sIYW_-ud.7d40da0ec3ff.js → VSelect-BoJq222l.fc714657e214.js} +1 -1
  48. codex/static_root/assets/VSelect-BoJq222l.fc714657e214.js.br +0 -0
  49. codex/static_root/assets/VSelect-BoJq222l.fc714657e214.js.gz +0 -0
  50. codex/static_root/assets/{VSelect-sIYW_-ud.js → VSelect-BoJq222l.js} +1 -1
  51. codex/static_root/assets/VSelect-BoJq222l.js.br +0 -0
  52. codex/static_root/assets/VSelect-BoJq222l.js.gz +0 -0
  53. codex/static_root/assets/{VSelectionControl-C8DP9rgp.ef80e8e3dfc1.js → VSelectionControl-CVQ9wkE2.c02186cceba6.js} +1 -1
  54. codex/static_root/assets/VSelectionControl-CVQ9wkE2.c02186cceba6.js.br +0 -0
  55. codex/static_root/assets/VSelectionControl-CVQ9wkE2.c02186cceba6.js.gz +0 -0
  56. codex/static_root/assets/{VSelectionControl-C8DP9rgp.js → VSelectionControl-CVQ9wkE2.js} +1 -1
  57. codex/static_root/assets/VSelectionControl-CVQ9wkE2.js.br +0 -0
  58. codex/static_root/assets/VSelectionControl-CVQ9wkE2.js.gz +0 -0
  59. codex/static_root/assets/{VSlideGroup-BRYhkLH8.3534ec94b2f1.js → VSlideGroup-Ce0j2BKK.85e64443a928.js} +1 -1
  60. codex/static_root/assets/VSlideGroup-Ce0j2BKK.85e64443a928.js.br +0 -0
  61. codex/static_root/assets/VSlideGroup-Ce0j2BKK.85e64443a928.js.gz +0 -0
  62. codex/static_root/assets/{VSlideGroup-BRYhkLH8.js → VSlideGroup-Ce0j2BKK.js} +1 -1
  63. codex/static_root/assets/VSlideGroup-Ce0j2BKK.js.br +0 -0
  64. codex/static_root/assets/VSlideGroup-Ce0j2BKK.js.gz +0 -0
  65. codex/static_root/assets/{VTable-D1esKtlw.52165930e3b9.js → VTable-CrWkhkiP.6d530eea0c09.js} +1 -1
  66. codex/static_root/assets/VTable-CrWkhkiP.6d530eea0c09.js.br +0 -0
  67. codex/static_root/assets/VTable-CrWkhkiP.6d530eea0c09.js.gz +0 -0
  68. codex/static_root/assets/{VTable-D1esKtlw.js → VTable-CrWkhkiP.js} +1 -1
  69. codex/static_root/assets/VTable-CrWkhkiP.js.br +0 -0
  70. codex/static_root/assets/VTable-CrWkhkiP.js.gz +0 -0
  71. codex/static_root/assets/VTextField-CkWbil3K.2cac13161dfe.js +1 -0
  72. codex/static_root/assets/VTextField-CkWbil3K.2cac13161dfe.js.br +0 -0
  73. codex/static_root/assets/VTextField-CkWbil3K.2cac13161dfe.js.gz +0 -0
  74. codex/static_root/assets/VTextField-CkWbil3K.js +1 -0
  75. codex/static_root/assets/VTextField-CkWbil3K.js.br +0 -0
  76. codex/static_root/assets/VTextField-CkWbil3K.js.gz +0 -0
  77. codex/static_root/assets/{VWindowItem-B0KokcAk.ea94224aecb9.js → VWindowItem-7z55Y4lK.98eb7487e039.js} +1 -1
  78. codex/static_root/assets/VWindowItem-7z55Y4lK.98eb7487e039.js.br +0 -0
  79. codex/static_root/assets/VWindowItem-7z55Y4lK.98eb7487e039.js.gz +0 -0
  80. codex/static_root/assets/{VWindowItem-B0KokcAk.js → VWindowItem-7z55Y4lK.js} +1 -1
  81. codex/static_root/assets/VWindowItem-7z55Y4lK.js.br +0 -0
  82. codex/static_root/assets/VWindowItem-7z55Y4lK.js.gz +0 -0
  83. codex/static_root/assets/{admin-Y0bL21AB.42d4f0d68163.js → admin-D3OK784R.f69891726ec5.js} +1 -1
  84. codex/static_root/assets/admin-D3OK784R.f69891726ec5.js.br +0 -0
  85. codex/static_root/assets/admin-D3OK784R.f69891726ec5.js.gz +0 -0
  86. codex/static_root/assets/{admin-Y0bL21AB.js → admin-D3OK784R.js} +1 -1
  87. codex/static_root/assets/admin-D3OK784R.js.br +0 -0
  88. codex/static_root/assets/admin-D3OK784R.js.gz +0 -0
  89. codex/static_root/assets/{admin-drawer-panel-DNngWUEM.4e992e3fe86e.js → admin-drawer-panel-1pnfvY8O.5438f252970e.js} +11 -11
  90. codex/static_root/assets/admin-drawer-panel-1pnfvY8O.5438f252970e.js.br +0 -0
  91. codex/static_root/assets/admin-drawer-panel-1pnfvY8O.5438f252970e.js.gz +0 -0
  92. codex/static_root/assets/{admin-drawer-panel-DNngWUEM.js → admin-drawer-panel-1pnfvY8O.js} +11 -11
  93. codex/static_root/assets/admin-drawer-panel-1pnfvY8O.js.br +0 -0
  94. codex/static_root/assets/admin-drawer-panel-1pnfvY8O.js.gz +0 -0
  95. codex/static_root/assets/browser-BuU2x9y7.css +1 -0
  96. codex/static_root/assets/browser-BuU2x9y7.css.br +0 -0
  97. codex/static_root/assets/browser-BuU2x9y7.css.gz +0 -0
  98. codex/static_root/assets/browser-BuU2x9y7.f67595d24664.css +1 -0
  99. codex/static_root/assets/browser-BuU2x9y7.f67595d24664.css.br +0 -0
  100. codex/static_root/assets/browser-BuU2x9y7.f67595d24664.css.gz +0 -0
  101. codex/static_root/assets/browser-CO9EYHIr.be49367c6a75.js +1 -0
  102. codex/static_root/assets/browser-CO9EYHIr.be49367c6a75.js.br +0 -0
  103. codex/static_root/assets/browser-CO9EYHIr.be49367c6a75.js.gz +0 -0
  104. codex/static_root/assets/browser-CO9EYHIr.js +1 -0
  105. codex/static_root/assets/browser-CO9EYHIr.js.br +0 -0
  106. codex/static_root/assets/browser-CO9EYHIr.js.gz +0 -0
  107. codex/static_root/assets/{change-password-dialog-CH4xbjJa.b749aa6ea07e.js → change-password-dialog-CjZdzaIk.188c765431ab.js} +1 -1
  108. codex/static_root/assets/change-password-dialog-CjZdzaIk.188c765431ab.js.br +0 -0
  109. codex/static_root/assets/change-password-dialog-CjZdzaIk.188c765431ab.js.gz +0 -0
  110. codex/static_root/assets/{change-password-dialog-CH4xbjJa.js → change-password-dialog-CjZdzaIk.js} +1 -1
  111. codex/static_root/assets/change-password-dialog-CjZdzaIk.js.br +0 -0
  112. codex/static_root/assets/change-password-dialog-CjZdzaIk.js.gz +0 -0
  113. codex/static_root/assets/{confirm-dialog-DkU0twE6.a20006aa5ba6.js → confirm-dialog-jwL7B98r.1cfd579cbcfe.js} +1 -1
  114. codex/static_root/assets/confirm-dialog-jwL7B98r.1cfd579cbcfe.js.br +0 -0
  115. codex/static_root/assets/confirm-dialog-jwL7B98r.1cfd579cbcfe.js.gz +0 -0
  116. codex/static_root/assets/{confirm-dialog-DkU0twE6.js → confirm-dialog-jwL7B98r.js} +1 -1
  117. codex/static_root/assets/confirm-dialog-jwL7B98r.js.br +0 -0
  118. codex/static_root/assets/confirm-dialog-jwL7B98r.js.gz +0 -0
  119. codex/static_root/assets/{datetime-column-BfW_j_3Q.6a614321a435.js → datetime-column-9w3GcKvo.f9172256f091.js} +1 -1
  120. codex/static_root/assets/datetime-column-9w3GcKvo.f9172256f091.js.br +0 -0
  121. codex/static_root/assets/datetime-column-9w3GcKvo.f9172256f091.js.gz +0 -0
  122. codex/static_root/assets/{datetime-column-BfW_j_3Q.js → datetime-column-9w3GcKvo.js} +1 -1
  123. codex/static_root/assets/datetime-column-9w3GcKvo.js.br +0 -0
  124. codex/static_root/assets/datetime-column-9w3GcKvo.js.gz +0 -0
  125. codex/static_root/assets/{filter-DjxN78cK.35673f6e49b1.js → filter-C-pghOri.eeb7c2ecf398.js} +1 -1
  126. codex/static_root/assets/filter-C-pghOri.eeb7c2ecf398.js.br +0 -0
  127. codex/static_root/assets/filter-C-pghOri.eeb7c2ecf398.js.gz +0 -0
  128. codex/static_root/assets/{filter-DjxN78cK.js → filter-C-pghOri.js} +1 -1
  129. codex/static_root/assets/filter-C-pghOri.js.br +0 -0
  130. codex/static_root/assets/filter-C-pghOri.js.gz +0 -0
  131. codex/static_root/assets/{flag-tab-D4ZNSbMR.e763a9937701.js → flag-tab-Da2DBNyz.ffbe5ca37e1c.js} +1 -1
  132. codex/static_root/assets/flag-tab-Da2DBNyz.ffbe5ca37e1c.js.br +0 -0
  133. codex/static_root/assets/flag-tab-Da2DBNyz.ffbe5ca37e1c.js.gz +0 -0
  134. codex/static_root/assets/{flag-tab-D4ZNSbMR.js → flag-tab-Da2DBNyz.js} +1 -1
  135. codex/static_root/assets/flag-tab-Da2DBNyz.js.br +0 -0
  136. codex/static_root/assets/flag-tab-Da2DBNyz.js.gz +0 -0
  137. codex/static_root/assets/{group-tab-DucpNoBs.a6f37ae940c0.js → group-tab-BONYWOc1.6ddf321a4a56.js} +1 -1
  138. codex/static_root/assets/group-tab-BONYWOc1.6ddf321a4a56.js.br +0 -0
  139. codex/static_root/assets/group-tab-BONYWOc1.6ddf321a4a56.js.gz +0 -0
  140. codex/static_root/assets/{group-tab-DucpNoBs.js → group-tab-BONYWOc1.js} +1 -1
  141. codex/static_root/assets/group-tab-BONYWOc1.js.br +0 -0
  142. codex/static_root/assets/group-tab-BONYWOc1.js.gz +0 -0
  143. codex/static_root/assets/{http-error-Cj0hTq-c.062a88ddd4dc.js → http-error-D2Jnc20C.32846bc3a43d.js} +1 -1
  144. codex/static_root/assets/http-error-D2Jnc20C.32846bc3a43d.js.br +0 -0
  145. codex/static_root/assets/http-error-D2Jnc20C.32846bc3a43d.js.gz +0 -0
  146. codex/static_root/assets/{http-error-Cj0hTq-c.js → http-error-D2Jnc20C.js} +1 -1
  147. codex/static_root/assets/http-error-D2Jnc20C.js.br +0 -0
  148. codex/static_root/assets/http-error-D2Jnc20C.js.gz +0 -0
  149. codex/static_root/assets/{library-tab-CzksdS3Q.566acdb45dec.js → library-tab-B419agXA.d4b778172aaa.js} +1 -1
  150. codex/static_root/assets/library-tab-B419agXA.d4b778172aaa.js.br +0 -0
  151. codex/static_root/assets/library-tab-B419agXA.d4b778172aaa.js.gz +0 -0
  152. codex/static_root/assets/{library-tab-CzksdS3Q.js → library-tab-B419agXA.js} +1 -1
  153. codex/static_root/assets/library-tab-B419agXA.js.br +0 -0
  154. codex/static_root/assets/library-tab-B419agXA.js.gz +0 -0
  155. codex/static_root/assets/{main-DX-k2724.js → main-CMQwJ9aG.9836fe81c80a.js} +4 -4
  156. codex/static_root/assets/main-CMQwJ9aG.9836fe81c80a.js.br +0 -0
  157. codex/static_root/assets/main-CMQwJ9aG.9836fe81c80a.js.gz +0 -0
  158. codex/static_root/assets/{main-DX-k2724.f73d08e9ad64.js → main-CMQwJ9aG.js} +4 -4
  159. codex/static_root/assets/main-CMQwJ9aG.js.br +0 -0
  160. codex/static_root/assets/main-CMQwJ9aG.js.gz +0 -0
  161. codex/static_root/assets/{pagination-toolbar-CQcR0a3T.js → pagination-toolbar-LTuj5U-G.a295defbcd2f.js} +1 -1
  162. codex/static_root/assets/pagination-toolbar-LTuj5U-G.a295defbcd2f.js.br +0 -0
  163. codex/static_root/assets/pagination-toolbar-LTuj5U-G.a295defbcd2f.js.gz +0 -0
  164. codex/static_root/assets/{pagination-toolbar-CQcR0a3T.7a2d33ed8c39.js → pagination-toolbar-LTuj5U-G.js} +1 -1
  165. codex/static_root/assets/pagination-toolbar-LTuj5U-G.js.br +0 -0
  166. codex/static_root/assets/pagination-toolbar-LTuj5U-G.js.gz +0 -0
  167. codex/static_root/assets/{pdf-doc-GkMk4o5L.ef24c859a7a4.js → pdf-doc-8RVZqILx.2e7166dd26fb.js} +1 -1
  168. codex/static_root/assets/pdf-doc-8RVZqILx.2e7166dd26fb.js.br +0 -0
  169. codex/static_root/assets/pdf-doc-8RVZqILx.2e7166dd26fb.js.gz +0 -0
  170. codex/static_root/assets/{pdf-doc-GkMk4o5L.js → pdf-doc-8RVZqILx.js} +1 -1
  171. codex/static_root/assets/pdf-doc-8RVZqILx.js.br +0 -0
  172. codex/static_root/assets/pdf-doc-8RVZqILx.js.gz +0 -0
  173. codex/static_root/assets/{reader-Cl6mmQB_.js → reader-DNnK_Chr.114d0e321547.js} +2 -2
  174. codex/static_root/assets/reader-DNnK_Chr.114d0e321547.js.br +0 -0
  175. codex/static_root/assets/reader-DNnK_Chr.114d0e321547.js.gz +0 -0
  176. codex/static_root/assets/{reader-Cl6mmQB_.7b9e7591954f.js → reader-DNnK_Chr.js} +2 -2
  177. codex/static_root/assets/reader-DNnK_Chr.js.br +0 -0
  178. codex/static_root/assets/reader-DNnK_Chr.js.gz +0 -0
  179. codex/static_root/assets/{relation-chips-CZ8VvR4y.d4232f3c2518.js → relation-chips-PYua7aXv.428ba0b5861e.js} +1 -1
  180. codex/static_root/assets/relation-chips-PYua7aXv.428ba0b5861e.js.br +0 -0
  181. codex/static_root/assets/relation-chips-PYua7aXv.428ba0b5861e.js.gz +0 -0
  182. codex/static_root/assets/{relation-chips-CZ8VvR4y.js → relation-chips-PYua7aXv.js} +1 -1
  183. codex/static_root/assets/relation-chips-PYua7aXv.js.br +0 -0
  184. codex/static_root/assets/relation-chips-PYua7aXv.js.gz +0 -0
  185. codex/static_root/assets/{settings-drawer-DyS0A2pN.17a98928589f.js → settings-drawer-DbN6ISRH.d14f525d8eee.js} +2 -2
  186. codex/static_root/assets/settings-drawer-DbN6ISRH.d14f525d8eee.js.br +0 -0
  187. codex/static_root/assets/settings-drawer-DbN6ISRH.d14f525d8eee.js.gz +0 -0
  188. codex/static_root/assets/{settings-drawer-DyS0A2pN.js → settings-drawer-DbN6ISRH.js} +2 -2
  189. codex/static_root/assets/settings-drawer-DbN6ISRH.js.br +0 -0
  190. codex/static_root/assets/settings-drawer-DbN6ISRH.js.gz +0 -0
  191. codex/static_root/assets/{stats-tab-R3Ekobfm.70fa09a67518.js → stats-tab-DImNhH8O.d5026283841a.js} +1 -1
  192. codex/static_root/assets/stats-tab-DImNhH8O.d5026283841a.js.br +0 -0
  193. codex/static_root/assets/stats-tab-DImNhH8O.d5026283841a.js.gz +0 -0
  194. codex/static_root/assets/{stats-tab-R3Ekobfm.js → stats-tab-DImNhH8O.js} +1 -1
  195. codex/static_root/assets/stats-tab-DImNhH8O.js.br +0 -0
  196. codex/static_root/assets/stats-tab-DImNhH8O.js.gz +0 -0
  197. codex/static_root/assets/task-tab-DPD53kjv.e56a35ff1691.js +1 -0
  198. codex/static_root/assets/task-tab-DPD53kjv.e56a35ff1691.js.br +0 -0
  199. codex/static_root/assets/task-tab-DPD53kjv.e56a35ff1691.js.gz +0 -0
  200. codex/static_root/assets/task-tab-DPD53kjv.js +1 -0
  201. codex/static_root/assets/task-tab-DPD53kjv.js.br +0 -0
  202. codex/static_root/assets/task-tab-DPD53kjv.js.gz +0 -0
  203. codex/static_root/assets/to-case-ehC9Ccyj.a7b8e25b391f.js +1 -0
  204. codex/static_root/assets/to-case-ehC9Ccyj.js +1 -0
  205. codex/static_root/assets/{unauthorized-BbXjAe5l.d48912d34a68.js → unauthorized-BOIx7Y18.ee3961abfccb.js} +1 -1
  206. codex/static_root/assets/unauthorized-BOIx7Y18.ee3961abfccb.js.br +0 -0
  207. codex/static_root/assets/unauthorized-BOIx7Y18.ee3961abfccb.js.gz +0 -0
  208. codex/static_root/assets/{unauthorized-BbXjAe5l.js → unauthorized-BOIx7Y18.js} +1 -1
  209. codex/static_root/assets/unauthorized-BOIx7Y18.js.br +0 -0
  210. codex/static_root/assets/unauthorized-BOIx7Y18.js.gz +0 -0
  211. codex/static_root/assets/{user-tab-DxITIl2d.d79d7f062930.js → user-tab-BABwfxLO.37dd0440fbdd.js} +1 -1
  212. codex/static_root/assets/user-tab-BABwfxLO.37dd0440fbdd.js.br +0 -0
  213. codex/static_root/assets/user-tab-BABwfxLO.37dd0440fbdd.js.gz +0 -0
  214. codex/static_root/assets/{user-tab-DxITIl2d.js → user-tab-BABwfxLO.js} +1 -1
  215. codex/static_root/assets/user-tab-BABwfxLO.js.br +0 -0
  216. codex/static_root/assets/user-tab-BABwfxLO.js.gz +0 -0
  217. codex/static_root/{manifest.16d52597ef50.json → manifest.cbea5663003a.json} +224 -224
  218. codex/static_root/manifest.cbea5663003a.json.br +0 -0
  219. codex/static_root/manifest.cbea5663003a.json.gz +0 -0
  220. codex/static_root/manifest.json +224 -224
  221. codex/static_root/manifest.json.br +0 -0
  222. codex/static_root/manifest.json.gz +0 -0
  223. codex/static_root/staticfiles.json +1 -1
  224. codex/urls/api/v3.py +1 -1
  225. codex/views/admin/tasks.py +2 -5
  226. codex/views/bookmark.py +44 -40
  227. codex/views/browser/annotations.py +30 -45
  228. codex/views/browser/base.py +5 -4
  229. codex/views/browser/browser.py +7 -11
  230. codex/views/browser/filters/annotations.py +58 -14
  231. codex/views/browser/filters/bookmark.py +21 -5
  232. codex/views/browser/filters/group.py +7 -4
  233. codex/views/browser/mtime.py +72 -0
  234. codex/views/const.py +8 -0
  235. codex/views/reader/books.py +6 -8
  236. codex/views/reader/reader.py +24 -21
  237. {codex-1.6.0a8.dist-info → codex-1.6.0a9.dist-info}/METADATA +1 -1
  238. {codex-1.6.0a8.dist-info → codex-1.6.0a9.dist-info}/RECORD +241 -241
  239. codex/serializers/mtime.py +0 -25
  240. codex/static_root/assets/VCheckbox-DI-DgMb4.8eeb1bd3e18b.js.br +0 -0
  241. codex/static_root/assets/VCheckbox-DI-DgMb4.8eeb1bd3e18b.js.gz +0 -0
  242. codex/static_root/assets/VCheckbox-DI-DgMb4.js.br +0 -0
  243. codex/static_root/assets/VCheckbox-DI-DgMb4.js.gz +0 -0
  244. codex/static_root/assets/VCheckboxBtn-B8Z4NA-t.3d8921f98ad9.js.br +0 -0
  245. codex/static_root/assets/VCheckboxBtn-B8Z4NA-t.3d8921f98ad9.js.gz +0 -0
  246. codex/static_root/assets/VCheckboxBtn-B8Z4NA-t.js.br +0 -0
  247. codex/static_root/assets/VCheckboxBtn-B8Z4NA-t.js.gz +0 -0
  248. codex/static_root/assets/VCombobox-D1_0lCri.6ef85a29c2dc.js.br +0 -0
  249. codex/static_root/assets/VCombobox-D1_0lCri.6ef85a29c2dc.js.gz +0 -0
  250. codex/static_root/assets/VCombobox-D1_0lCri.js.br +0 -0
  251. codex/static_root/assets/VCombobox-D1_0lCri.js.gz +0 -0
  252. codex/static_root/assets/VDialog-opmV0YZz.d77216e97599.js.br +0 -0
  253. codex/static_root/assets/VDialog-opmV0YZz.d77216e97599.js.gz +0 -0
  254. codex/static_root/assets/VDialog-opmV0YZz.js.br +0 -0
  255. codex/static_root/assets/VDialog-opmV0YZz.js.gz +0 -0
  256. codex/static_root/assets/VExpansionPanels-DX2dhUf5.ecc2ebfa62ec.js.br +0 -0
  257. codex/static_root/assets/VExpansionPanels-DX2dhUf5.ecc2ebfa62ec.js.gz +0 -0
  258. codex/static_root/assets/VExpansionPanels-DX2dhUf5.js.br +0 -0
  259. codex/static_root/assets/VExpansionPanels-DX2dhUf5.js.gz +0 -0
  260. codex/static_root/assets/VRadioGroup-BGa6_q5a.d1a3ad7266bd.js.br +0 -0
  261. codex/static_root/assets/VRadioGroup-BGa6_q5a.d1a3ad7266bd.js.gz +0 -0
  262. codex/static_root/assets/VRadioGroup-BGa6_q5a.js.br +0 -0
  263. codex/static_root/assets/VRadioGroup-BGa6_q5a.js.gz +0 -0
  264. codex/static_root/assets/VSelect-sIYW_-ud.7d40da0ec3ff.js.br +0 -0
  265. codex/static_root/assets/VSelect-sIYW_-ud.7d40da0ec3ff.js.gz +0 -0
  266. codex/static_root/assets/VSelect-sIYW_-ud.js.br +0 -0
  267. codex/static_root/assets/VSelect-sIYW_-ud.js.gz +0 -0
  268. codex/static_root/assets/VSelectionControl-C8DP9rgp.ef80e8e3dfc1.js.br +0 -0
  269. codex/static_root/assets/VSelectionControl-C8DP9rgp.ef80e8e3dfc1.js.gz +0 -0
  270. codex/static_root/assets/VSelectionControl-C8DP9rgp.js.br +0 -0
  271. codex/static_root/assets/VSelectionControl-C8DP9rgp.js.gz +0 -0
  272. codex/static_root/assets/VSlideGroup-BRYhkLH8.3534ec94b2f1.js.br +0 -0
  273. codex/static_root/assets/VSlideGroup-BRYhkLH8.3534ec94b2f1.js.gz +0 -0
  274. codex/static_root/assets/VSlideGroup-BRYhkLH8.js.br +0 -0
  275. codex/static_root/assets/VSlideGroup-BRYhkLH8.js.gz +0 -0
  276. codex/static_root/assets/VTable-D1esKtlw.52165930e3b9.js.br +0 -0
  277. codex/static_root/assets/VTable-D1esKtlw.52165930e3b9.js.gz +0 -0
  278. codex/static_root/assets/VTable-D1esKtlw.js.br +0 -0
  279. codex/static_root/assets/VTable-D1esKtlw.js.gz +0 -0
  280. codex/static_root/assets/VTextField-BnGscKcY.54032adf3a4b.js +0 -1
  281. codex/static_root/assets/VTextField-BnGscKcY.54032adf3a4b.js.br +0 -0
  282. codex/static_root/assets/VTextField-BnGscKcY.54032adf3a4b.js.gz +0 -0
  283. codex/static_root/assets/VTextField-BnGscKcY.js +0 -1
  284. codex/static_root/assets/VTextField-BnGscKcY.js.br +0 -0
  285. codex/static_root/assets/VTextField-BnGscKcY.js.gz +0 -0
  286. codex/static_root/assets/VWindowItem-B0KokcAk.ea94224aecb9.js.br +0 -0
  287. codex/static_root/assets/VWindowItem-B0KokcAk.ea94224aecb9.js.gz +0 -0
  288. codex/static_root/assets/VWindowItem-B0KokcAk.js.br +0 -0
  289. codex/static_root/assets/VWindowItem-B0KokcAk.js.gz +0 -0
  290. codex/static_root/assets/admin-Y0bL21AB.42d4f0d68163.js.br +0 -0
  291. codex/static_root/assets/admin-Y0bL21AB.42d4f0d68163.js.gz +0 -0
  292. codex/static_root/assets/admin-Y0bL21AB.js.br +0 -0
  293. codex/static_root/assets/admin-Y0bL21AB.js.gz +0 -0
  294. codex/static_root/assets/admin-drawer-panel-DNngWUEM.4e992e3fe86e.js.br +0 -0
  295. codex/static_root/assets/admin-drawer-panel-DNngWUEM.4e992e3fe86e.js.gz +0 -0
  296. codex/static_root/assets/admin-drawer-panel-DNngWUEM.js.br +0 -0
  297. codex/static_root/assets/admin-drawer-panel-DNngWUEM.js.gz +0 -0
  298. codex/static_root/assets/browser-CMAtBCLx.17a277ce43a9.css +0 -1
  299. codex/static_root/assets/browser-CMAtBCLx.17a277ce43a9.css.br +0 -0
  300. codex/static_root/assets/browser-CMAtBCLx.17a277ce43a9.css.gz +0 -0
  301. codex/static_root/assets/browser-CMAtBCLx.css +0 -1
  302. codex/static_root/assets/browser-CMAtBCLx.css.br +0 -0
  303. codex/static_root/assets/browser-CMAtBCLx.css.gz +0 -0
  304. codex/static_root/assets/browser-DoJk8uvb.2c97a3858932.js +0 -1
  305. codex/static_root/assets/browser-DoJk8uvb.2c97a3858932.js.br +0 -0
  306. codex/static_root/assets/browser-DoJk8uvb.2c97a3858932.js.gz +0 -0
  307. codex/static_root/assets/browser-DoJk8uvb.js +0 -1
  308. codex/static_root/assets/browser-DoJk8uvb.js.br +0 -0
  309. codex/static_root/assets/browser-DoJk8uvb.js.gz +0 -0
  310. codex/static_root/assets/change-password-dialog-CH4xbjJa.b749aa6ea07e.js.br +0 -0
  311. codex/static_root/assets/change-password-dialog-CH4xbjJa.b749aa6ea07e.js.gz +0 -0
  312. codex/static_root/assets/change-password-dialog-CH4xbjJa.js.br +0 -0
  313. codex/static_root/assets/change-password-dialog-CH4xbjJa.js.gz +0 -0
  314. codex/static_root/assets/confirm-dialog-DkU0twE6.a20006aa5ba6.js.br +0 -0
  315. codex/static_root/assets/confirm-dialog-DkU0twE6.a20006aa5ba6.js.gz +0 -0
  316. codex/static_root/assets/confirm-dialog-DkU0twE6.js.br +0 -0
  317. codex/static_root/assets/confirm-dialog-DkU0twE6.js.gz +0 -0
  318. codex/static_root/assets/datetime-column-BfW_j_3Q.6a614321a435.js.br +0 -0
  319. codex/static_root/assets/datetime-column-BfW_j_3Q.6a614321a435.js.gz +0 -0
  320. codex/static_root/assets/datetime-column-BfW_j_3Q.js.br +0 -0
  321. codex/static_root/assets/datetime-column-BfW_j_3Q.js.gz +0 -0
  322. codex/static_root/assets/filter-DjxN78cK.35673f6e49b1.js.br +0 -0
  323. codex/static_root/assets/filter-DjxN78cK.35673f6e49b1.js.gz +0 -0
  324. codex/static_root/assets/filter-DjxN78cK.js.br +0 -0
  325. codex/static_root/assets/filter-DjxN78cK.js.gz +0 -0
  326. codex/static_root/assets/flag-tab-D4ZNSbMR.e763a9937701.js.br +0 -0
  327. codex/static_root/assets/flag-tab-D4ZNSbMR.e763a9937701.js.gz +0 -0
  328. codex/static_root/assets/flag-tab-D4ZNSbMR.js.br +0 -0
  329. codex/static_root/assets/flag-tab-D4ZNSbMR.js.gz +0 -0
  330. codex/static_root/assets/group-tab-DucpNoBs.a6f37ae940c0.js.br +0 -0
  331. codex/static_root/assets/group-tab-DucpNoBs.a6f37ae940c0.js.gz +0 -0
  332. codex/static_root/assets/group-tab-DucpNoBs.js.br +0 -0
  333. codex/static_root/assets/group-tab-DucpNoBs.js.gz +0 -0
  334. codex/static_root/assets/http-error-Cj0hTq-c.062a88ddd4dc.js.br +0 -0
  335. codex/static_root/assets/http-error-Cj0hTq-c.062a88ddd4dc.js.gz +0 -0
  336. codex/static_root/assets/http-error-Cj0hTq-c.js.br +0 -0
  337. codex/static_root/assets/http-error-Cj0hTq-c.js.gz +0 -0
  338. codex/static_root/assets/library-tab-CzksdS3Q.566acdb45dec.js.br +0 -0
  339. codex/static_root/assets/library-tab-CzksdS3Q.566acdb45dec.js.gz +0 -0
  340. codex/static_root/assets/library-tab-CzksdS3Q.js.br +0 -0
  341. codex/static_root/assets/library-tab-CzksdS3Q.js.gz +0 -0
  342. codex/static_root/assets/main-DX-k2724.f73d08e9ad64.js.br +0 -0
  343. codex/static_root/assets/main-DX-k2724.f73d08e9ad64.js.gz +0 -0
  344. codex/static_root/assets/main-DX-k2724.js.br +0 -0
  345. codex/static_root/assets/main-DX-k2724.js.gz +0 -0
  346. codex/static_root/assets/pagination-toolbar-CQcR0a3T.7a2d33ed8c39.js.br +0 -0
  347. codex/static_root/assets/pagination-toolbar-CQcR0a3T.7a2d33ed8c39.js.gz +0 -0
  348. codex/static_root/assets/pagination-toolbar-CQcR0a3T.js.br +0 -0
  349. codex/static_root/assets/pagination-toolbar-CQcR0a3T.js.gz +0 -0
  350. codex/static_root/assets/pdf-doc-GkMk4o5L.ef24c859a7a4.js.br +0 -0
  351. codex/static_root/assets/pdf-doc-GkMk4o5L.ef24c859a7a4.js.gz +0 -0
  352. codex/static_root/assets/pdf-doc-GkMk4o5L.js.br +0 -0
  353. codex/static_root/assets/pdf-doc-GkMk4o5L.js.gz +0 -0
  354. codex/static_root/assets/reader-Cl6mmQB_.7b9e7591954f.js.br +0 -0
  355. codex/static_root/assets/reader-Cl6mmQB_.7b9e7591954f.js.gz +0 -0
  356. codex/static_root/assets/reader-Cl6mmQB_.js.br +0 -0
  357. codex/static_root/assets/reader-Cl6mmQB_.js.gz +0 -0
  358. codex/static_root/assets/relation-chips-CZ8VvR4y.d4232f3c2518.js.br +0 -0
  359. codex/static_root/assets/relation-chips-CZ8VvR4y.d4232f3c2518.js.gz +0 -0
  360. codex/static_root/assets/relation-chips-CZ8VvR4y.js.br +0 -0
  361. codex/static_root/assets/relation-chips-CZ8VvR4y.js.gz +0 -0
  362. codex/static_root/assets/settings-drawer-DyS0A2pN.17a98928589f.js.br +0 -0
  363. codex/static_root/assets/settings-drawer-DyS0A2pN.17a98928589f.js.gz +0 -0
  364. codex/static_root/assets/settings-drawer-DyS0A2pN.js.br +0 -0
  365. codex/static_root/assets/settings-drawer-DyS0A2pN.js.gz +0 -0
  366. codex/static_root/assets/stats-tab-R3Ekobfm.70fa09a67518.js.br +0 -0
  367. codex/static_root/assets/stats-tab-R3Ekobfm.70fa09a67518.js.gz +0 -0
  368. codex/static_root/assets/stats-tab-R3Ekobfm.js.br +0 -0
  369. codex/static_root/assets/stats-tab-R3Ekobfm.js.gz +0 -0
  370. codex/static_root/assets/task-tab-BhLDK_7Q.28ff51b3ed01.js +0 -1
  371. codex/static_root/assets/task-tab-BhLDK_7Q.28ff51b3ed01.js.br +0 -0
  372. codex/static_root/assets/task-tab-BhLDK_7Q.28ff51b3ed01.js.gz +0 -0
  373. codex/static_root/assets/task-tab-BhLDK_7Q.js +0 -1
  374. codex/static_root/assets/task-tab-BhLDK_7Q.js.br +0 -0
  375. codex/static_root/assets/task-tab-BhLDK_7Q.js.gz +0 -0
  376. codex/static_root/assets/to-case-BR2frjFx.87de5d7a0503.js +0 -1
  377. codex/static_root/assets/to-case-BR2frjFx.js +0 -1
  378. codex/static_root/assets/unauthorized-BbXjAe5l.d48912d34a68.js.br +0 -0
  379. codex/static_root/assets/unauthorized-BbXjAe5l.d48912d34a68.js.gz +0 -0
  380. codex/static_root/assets/unauthorized-BbXjAe5l.js.br +0 -0
  381. codex/static_root/assets/unauthorized-BbXjAe5l.js.gz +0 -0
  382. codex/static_root/assets/user-tab-DxITIl2d.d79d7f062930.js.br +0 -0
  383. codex/static_root/assets/user-tab-DxITIl2d.d79d7f062930.js.gz +0 -0
  384. codex/static_root/assets/user-tab-DxITIl2d.js.br +0 -0
  385. codex/static_root/assets/user-tab-DxITIl2d.js.gz +0 -0
  386. codex/static_root/manifest.16d52597ef50.json.br +0 -0
  387. codex/static_root/manifest.16d52597ef50.json.gz +0 -0
  388. codex/views/mtime.py +0 -72
  389. {codex-1.6.0a8.dist-info → codex-1.6.0a9.dist-info}/LICENSE +0 -0
  390. {codex-1.6.0a8.dist-info → codex-1.6.0a9.dist-info}/WHEEL +0 -0
  391. {codex-1.6.0a8.dist-info → codex-1.6.0a9.dist-info}/entry_points.txt +0 -0
codex/integrity.py CHANGED
@@ -342,7 +342,6 @@ def _repair_groups_with_custom_covers(apps):
342
342
  if not has_applied_migration(MIGRATION_0027):
343
343
  return
344
344
  custom_cover_model = apps.get_model("codex", "customcover")
345
- now = Now()
346
345
  for model_name, group_letter in CUSTOM_COVER_MODEL_NAMES.items():
347
346
  valid_covers = custom_cover_model.objects.filter(group=group_letter)
348
347
  group_model = apps.get_model("codex", model_name)
@@ -352,7 +351,7 @@ def _repair_groups_with_custom_covers(apps):
352
351
  update_groups = []
353
352
  for group in objs:
354
353
  group.custom_cover = None
355
- group.updated_at = now
354
+ group.updated_at = Now()
356
355
  update_groups.append(group)
357
356
  group_model.objects.bulk_update(update_groups, ["custom_cover"])
358
357
  count = len(update_groups)
@@ -20,7 +20,7 @@ from codex.status import Status
20
20
  class CreateComicsImporter(LinkComicsImporter):
21
21
  """Create comics methods."""
22
22
 
23
- def _bulk_update_comics_add_comic(self, now, comic, results):
23
+ def _bulk_update_comics_add_comic(self, comic, results):
24
24
  """Add one comic and stats to the bulk update list."""
25
25
  try:
26
26
  md = self.metadata[MDS].pop(comic.path)
@@ -33,7 +33,7 @@ class CreateComicsImporter(LinkComicsImporter):
33
33
  value = default_value
34
34
  setattr(comic, field_name, value)
35
35
  comic.presave()
36
- comic.updated_at = now
36
+ comic.updated_at = Now()
37
37
  update_comics, comic_pks, comic_update_paths = results
38
38
  update_comics.append(comic)
39
39
  comic_pks.append(comic.pk)
@@ -59,12 +59,11 @@ class CreateComicsImporter(LinkComicsImporter):
59
59
 
60
60
  # set attributes for each comic
61
61
  update_comics = []
62
- now = Now()
63
62
  comic_pks = []
64
63
  comic_update_paths = set()
65
64
  results = update_comics, comic_pks, comic_update_paths
66
65
  for comic in comics.iterator():
67
- self._bulk_update_comics_add_comic(now, comic, results)
66
+ self._bulk_update_comics_add_comic(comic, results)
68
67
 
69
68
  converted_create_paths = frozenset(
70
69
  set(self.task.files_modified) - comic_update_paths
@@ -30,11 +30,9 @@ class CreateCoversImporter(CreateComicsImporter):
30
30
  status = Status(ImportStatusTypes.COVERS_MODIFIED, 0, update_covers_count)
31
31
  self.status_controller.start(status)
32
32
 
33
- now = Now()
34
-
35
33
  update_covers = []
36
34
  for cover in update_covers_qs.only(*CUSTOM_COVER_UPDATE_FIELDS):
37
- cover.updated_at = now
35
+ cover.updated_at = Now()
38
36
  cover.presave()
39
37
  update_covers.append(cover)
40
38
 
@@ -84,13 +84,12 @@ class FailedImportsImporter(DeletedImporter):
84
84
  ).only(*_BULK_UPDATE_FAILED_IMPORT_FIELDS)
85
85
  if not update_failed_import_objs:
86
86
  return
87
- now = Now()
88
87
  for fi in update_failed_import_objs:
89
88
  try:
90
89
  exc = update_failed_imports.pop(fi.path)
91
90
  fi.set_reason(exc)
92
91
  fi.presave()
93
- fi.updated_at = now
92
+ fi.updated_at = Now()
94
93
  except Exception as exc:
95
94
  self.log.exception(
96
95
  f"Error preparing failed import update for {fi.path}"
@@ -1,6 +1,6 @@
1
1
  """Bulk import and move comics and folders."""
2
2
 
3
- from django.utils.timezone import datetime
3
+ from django.utils import timezone
4
4
 
5
5
  from codex.librarian.importer.importer import ComicImporter
6
6
  from codex.librarian.importer.status import ImportStatusTypes
@@ -91,7 +91,7 @@ class ComicImporterThread(QueuedThread):
91
91
 
92
92
  def _update_groups_first_comic(self, task):
93
93
  pks = Library.objects.filter(covers_only=False).values_list("pk", flat=True)
94
- start_time = task.start_time if task.start_time else datetime.now()
94
+ start_time = task.start_time if task.start_time else timezone.now()
95
95
  for pk in pks:
96
96
  task = ImportDBDiffTask(library_id=pk)
97
97
  importer = self._create_importer(task)
@@ -42,7 +42,6 @@ class MovedImporter(AggregateMetadataImporter):
42
42
  ).only("pk", "path", PARENT_FOLDER, FOLDERS_FIELD)
43
43
 
44
44
  folder_m2m_links = {}
45
- now = Now()
46
45
  updated_comics = []
47
46
  for comic in comics.iterator():
48
47
  try:
@@ -52,7 +51,7 @@ class MovedImporter(AggregateMetadataImporter):
52
51
  comic.parent_folder = Folder.objects.get( # type: ignore
53
52
  path=new_path.parent
54
53
  )
55
- comic.updated_at = now
54
+ comic.updated_at = Now()
56
55
  comic.presave()
57
56
  folder_m2m_links[comic.pk] = Folder.objects.filter(
58
57
  path__in=new_path.parents
@@ -83,7 +82,6 @@ class MovedImporter(AggregateMetadataImporter):
83
82
  if status:
84
83
  status.total = covers.count()
85
84
 
86
- now = Now()
87
85
  moved_covers = []
88
86
  unlink_pks = set()
89
87
  for cover in covers.iterator():
@@ -91,7 +89,7 @@ class MovedImporter(AggregateMetadataImporter):
91
89
  new_path = self.task.covers_moved[cover.path]
92
90
  cover.path = new_path
93
91
  new_path = Path(new_path)
94
- cover.updated_at = now
92
+ cover.updated_at = Now()
95
93
  cover.presave()
96
94
  moved_covers.append(cover)
97
95
  unlink_pks.add(cover.pk)
@@ -186,7 +184,6 @@ class MovedImporter(AggregateMetadataImporter):
186
184
  ).order_by("path")
187
185
 
188
186
  update_folders = []
189
- now = Now()
190
187
  for folder in folders_to_move.iterator():
191
188
  new_path = self.task.dirs_moved[folder.path]
192
189
  folder.name = Path(new_path).name
@@ -194,7 +191,7 @@ class MovedImporter(AggregateMetadataImporter):
194
191
  parent_path_str = str(Path(new_path).parent)
195
192
  folder.parent_folder = dest_parent_folders.get(parent_path_str)
196
193
  folder.presave()
197
- folder.updated_at = now # type: ignore
194
+ folder.updated_at = Now()
198
195
  update_folders.append(folder)
199
196
  self.task.dirs_moved = {}
200
197
 
@@ -220,10 +217,9 @@ class MovedImporter(AggregateMetadataImporter):
220
217
  ).only("stat", "updated_at")
221
218
  self.task.dirs_modified = frozenset()
222
219
  update_folders = []
223
- now = Now()
224
220
  for folder in folders.iterator():
225
221
  if Path(folder.path).exists():
226
- folder.updated_at = now
222
+ folder.updated_at = Now()
227
223
  folder.presave()
228
224
  update_folders.append(folder)
229
225
  Folder.objects.bulk_update(
@@ -0,0 +1,21 @@
1
+ """Group Mtimes."""
2
+
3
+ from rest_framework.serializers import CharField, Serializer
4
+
5
+ from codex.serializers.browser.settings import BrowserSettingsFilterSerializer
6
+ from codex.serializers.fields import TimestampField
7
+ from codex.serializers.route import SimpleRouteSerializer
8
+
9
+
10
+ class GroupsMtimeSerializer(Serializer):
11
+ """Groups Mtimes."""
12
+
13
+ filters = BrowserSettingsFilterSerializer(required=False)
14
+ q = CharField(allow_blank=True, required=False)
15
+ groups = SimpleRouteSerializer(many=True, required=True)
16
+
17
+
18
+ class MtimeSerializer(Serializer):
19
+ """Max mtime for all submitted groups."""
20
+
21
+ max_mtime = TimestampField(read_only=True)
@@ -1,8 +1,7 @@
1
1
  """Custom fields."""
2
2
 
3
3
  from abc import ABC
4
- from datetime import datetime
5
- from math import floor
4
+ from datetime import datetime, timezone
6
5
 
7
6
  from django.core.exceptions import ValidationError
8
7
  from django.utils.translation import gettext_lazy as _
@@ -23,15 +22,15 @@ VUETIFY_NULL_CODE_STR = str(VUETIFY_NULL_CODE)
23
22
  class TimestampField(IntegerField):
24
23
  """IntegerTimestampField."""
25
24
 
26
- def to_representation(self, value):
27
- """Convert to int from datetime, or castable."""
25
+ def to_representation(self, value) -> int:
26
+ """Convert to Jascript millisecond int timestamp from datetime, or castable."""
28
27
  if isinstance(value, datetime):
29
- value = floor(value.timestamp())
30
- return int(value)
28
+ value = value.timestamp()
29
+ return int(float(value) * 1000)
31
30
 
32
- def to_internal_value(self, data):
33
- """Convert from castable, likely string."""
34
- return int(data)
31
+ def to_internal_value(self, data) -> datetime: # type: ignore
32
+ """Convert from castable, likely string to datetime."""
33
+ return datetime.fromtimestamp(float(data) / 1000, tz=timezone.utc)
35
34
 
36
35
 
37
36
  def validate_decades(decades):
@@ -11,7 +11,7 @@ from rest_framework.serializers import (
11
11
 
12
12
  from codex.models import Bookmark
13
13
  from codex.serializers.fields import TimestampField
14
- from codex.serializers.route import RouteSerializer
14
+ from codex.serializers.route import RouteSerializer, SimpleRouteSerializer
15
15
 
16
16
 
17
17
  class ReaderSettingsSerializer(Serializer):
@@ -38,12 +38,12 @@ class ReaderComicSerializer(Serializer):
38
38
  mtime = TimestampField(read_only=True)
39
39
 
40
40
 
41
- class ReaderArcSerializer(RouteSerializer):
41
+ class ReaderArcSerializer(SimpleRouteSerializer):
42
42
  """Information about the current Arc."""
43
43
 
44
- page = None
45
- index = IntegerField(read_only=True, required=False)
46
- count = IntegerField(read_only=True, required=False)
44
+ name = CharField(required=False)
45
+ index = IntegerField(required=False)
46
+ count = IntegerField(required=False)
47
47
  mtime = TimestampField(read_only=True)
48
48
 
49
49
 
@@ -6,13 +6,11 @@ from rest_framework.serializers import Serializer
6
6
  from codex.views.util import Route
7
7
 
8
8
 
9
- class RouteSerializer(Serializer):
10
- """A vue route for the browser."""
9
+ class SimpleRouteSerializer(Serializer):
10
+ """A an abbreviated vue route for the browser."""
11
11
 
12
12
  group = CharField()
13
13
  pks = CharField()
14
- page = IntegerField()
15
- name = CharField(required=False)
16
14
 
17
15
  def to_representation(self, instance):
18
16
  """Allow submission of sequences instead of strings for pks."""
@@ -38,3 +36,10 @@ class RouteSerializer(Serializer):
38
36
  except ValueError:
39
37
  instance["pks"] = ()
40
38
  return instance
39
+
40
+
41
+ class RouteSerializer(SimpleRouteSerializer):
42
+ """A vue route for the browser."""
43
+
44
+ page = IntegerField()
45
+ name = CharField(required=False)
@@ -1 +1 @@
1
- import{m as g,V as t}from"./VCheckboxBtn-B8Z4NA-t.js";import{a as A,u as I,V as l}from"./VSelectionControl-C8DP9rgp.js";import{E as B,as as R,O as U,az as w,F as z,h as D,R as E,cs as M,S as u,aw as r}from"./admin-drawer-panel-DNngWUEM.js";const N=B({...A(),...R(g(),["inline"])},"VCheckbox"),j=U()({name:"VCheckbox",inheritAttrs:!1,props:N(),emits:{"update:modelValue":e=>!0,"update:focused":e=>!0},setup(e,c){let{attrs:d,slots:a}=c;const s=w(e,"modelValue"),{isFocused:n,focus:i,blur:m}=I(e),V=z(),p=D(()=>e.id||`checkbox-${V}`);return E(()=>{const[b,f]=M(d),v=l.filterProps(e),k=t.filterProps(e);return u(l,r({class:["v-checkbox",e.class]},b,v,{modelValue:s.value,"onUpdate:modelValue":o=>s.value=o,id:p.value,focused:n.value,style:e.style}),{...a,default:o=>{let{id:h,messagesId:x,isDisabled:P,isReadonly:C,isValid:y}=o;return u(t,r(k,{id:h.value,"aria-describedby":x.value,disabled:P.value,readonly:C.value},f,{error:y.value===!1,modelValue:s.value,"onUpdate:modelValue":F=>s.value=F,onFocus:i,onBlur:m}),a)}})}),{}}});export{j as V};
1
+ import{m as g,V as t}from"./VCheckboxBtn-DLzF_WHB.js";import{a as A,u as I,V as l}from"./VSelectionControl-CVQ9wkE2.js";import{E as B,as as R,O as U,az as w,F as z,h as D,R as E,ct as M,S as u,aw as r}from"./admin-drawer-panel-1pnfvY8O.js";const N=B({...A(),...R(g(),["inline"])},"VCheckbox"),j=U()({name:"VCheckbox",inheritAttrs:!1,props:N(),emits:{"update:modelValue":e=>!0,"update:focused":e=>!0},setup(e,c){let{attrs:d,slots:a}=c;const s=w(e,"modelValue"),{isFocused:n,focus:i,blur:m}=I(e),V=z(),p=D(()=>e.id||`checkbox-${V}`);return E(()=>{const[b,f]=M(d),v=l.filterProps(e),k=t.filterProps(e);return u(l,r({class:["v-checkbox",e.class]},b,v,{modelValue:s.value,"onUpdate:modelValue":o=>s.value=o,id:p.value,focused:n.value,style:e.style}),{...a,default:o=>{let{id:h,messagesId:x,isDisabled:P,isReadonly:C,isValid:y}=o;return u(t,r(k,{id:h.value,"aria-describedby":x.value,disabled:P.value,readonly:C.value},f,{error:y.value===!1,modelValue:s.value,"onUpdate:modelValue":F=>s.value=F,onFocus:i,onBlur:m}),a)}})}),{}}});export{j as V};
@@ -1 +1 @@
1
- import{m as g,V as t}from"./VCheckboxBtn-B8Z4NA-t.js";import{a as A,u as I,V as l}from"./VSelectionControl-C8DP9rgp.js";import{E as B,as as R,O as U,az as w,F as z,h as D,R as E,cs as M,S as u,aw as r}from"./admin-drawer-panel-DNngWUEM.js";const N=B({...A(),...R(g(),["inline"])},"VCheckbox"),j=U()({name:"VCheckbox",inheritAttrs:!1,props:N(),emits:{"update:modelValue":e=>!0,"update:focused":e=>!0},setup(e,c){let{attrs:d,slots:a}=c;const s=w(e,"modelValue"),{isFocused:n,focus:i,blur:m}=I(e),V=z(),p=D(()=>e.id||`checkbox-${V}`);return E(()=>{const[b,f]=M(d),v=l.filterProps(e),k=t.filterProps(e);return u(l,r({class:["v-checkbox",e.class]},b,v,{modelValue:s.value,"onUpdate:modelValue":o=>s.value=o,id:p.value,focused:n.value,style:e.style}),{...a,default:o=>{let{id:h,messagesId:x,isDisabled:P,isReadonly:C,isValid:y}=o;return u(t,r(k,{id:h.value,"aria-describedby":x.value,disabled:P.value,readonly:C.value},f,{error:y.value===!1,modelValue:s.value,"onUpdate:modelValue":F=>s.value=F,onFocus:i,onBlur:m}),a)}})}),{}}});export{j as V};
1
+ import{m as g,V as t}from"./VCheckboxBtn-DLzF_WHB.js";import{a as A,u as I,V as l}from"./VSelectionControl-CVQ9wkE2.js";import{E as B,as as R,O as U,az as w,F as z,h as D,R as E,ct as M,S as u,aw as r}from"./admin-drawer-panel-1pnfvY8O.js";const N=B({...A(),...R(g(),["inline"])},"VCheckbox"),j=U()({name:"VCheckbox",inheritAttrs:!1,props:N(),emits:{"update:modelValue":e=>!0,"update:focused":e=>!0},setup(e,c){let{attrs:d,slots:a}=c;const s=w(e,"modelValue"),{isFocused:n,focus:i,blur:m}=I(e),V=z(),p=D(()=>e.id||`checkbox-${V}`);return E(()=>{const[b,f]=M(d),v=l.filterProps(e),k=t.filterProps(e);return u(l,r({class:["v-checkbox",e.class]},b,v,{modelValue:s.value,"onUpdate:modelValue":o=>s.value=o,id:p.value,focused:n.value,style:e.style}),{...a,default:o=>{let{id:h,messagesId:x,isDisabled:P,isReadonly:C,isValid:y}=o;return u(t,r(k,{id:h.value,"aria-describedby":x.value,disabled:P.value,readonly:C.value},f,{error:y.value===!1,modelValue:s.value,"onUpdate:modelValue":F=>s.value=F,onFocus:i,onBlur:m}),a)}})}),{}}});export{j as V};
@@ -1 +1 @@
1
- import{c as f,d as o}from"./VSelectionControl-C8DP9rgp.js";import{E as V,be as v,O as I,az as c,h as l,R as h,as as k,S as x,aw as b}from"./admin-drawer-panel-DNngWUEM.js";const C=V({indeterminate:Boolean,indeterminateIcon:{type:v,default:"$checkboxIndeterminate"},...f({falseIcon:"$checkboxOff",trueIcon:"$checkboxOn"})},"VCheckboxBtn"),B=I()({name:"VCheckboxBtn",props:C(),emits:{"update:modelValue":e=>!0,"update:indeterminate":e=>!0},setup(e,r){let{slots:s}=r;const t=c(e,"indeterminate"),n=c(e,"modelValue");function u(a){t.value&&(t.value=!1)}const i=l(()=>t.value?e.indeterminateIcon:e.falseIcon),d=l(()=>t.value?e.indeterminateIcon:e.trueIcon);return h(()=>{const a=k(o.filterProps(e),["modelValue"]);return x(o,b(a,{modelValue:n.value,"onUpdate:modelValue":[m=>n.value=m,u],class:["v-checkbox-btn",e.class],style:e.style,type:"checkbox",falseIcon:i.value,trueIcon:d.value,"aria-checked":t.value?"mixed":void 0}),s)}),{}}});export{B as V,C as m};
1
+ import{c as f,d as o}from"./VSelectionControl-CVQ9wkE2.js";import{E as V,be as v,O as I,az as c,h as l,R as h,as as k,S as x,aw as b}from"./admin-drawer-panel-1pnfvY8O.js";const C=V({indeterminate:Boolean,indeterminateIcon:{type:v,default:"$checkboxIndeterminate"},...f({falseIcon:"$checkboxOff",trueIcon:"$checkboxOn"})},"VCheckboxBtn"),B=I()({name:"VCheckboxBtn",props:C(),emits:{"update:modelValue":e=>!0,"update:indeterminate":e=>!0},setup(e,r){let{slots:s}=r;const t=c(e,"indeterminate"),n=c(e,"modelValue");function u(a){t.value&&(t.value=!1)}const i=l(()=>t.value?e.indeterminateIcon:e.falseIcon),d=l(()=>t.value?e.indeterminateIcon:e.trueIcon);return h(()=>{const a=k(o.filterProps(e),["modelValue"]);return x(o,b(a,{modelValue:n.value,"onUpdate:modelValue":[m=>n.value=m,u],class:["v-checkbox-btn",e.class],style:e.style,type:"checkbox",falseIcon:i.value,trueIcon:d.value,"aria-checked":t.value?"mixed":void 0}),s)}),{}}});export{B as V,C as m};
@@ -1 +1 @@
1
- import{c as f,d as o}from"./VSelectionControl-C8DP9rgp.js";import{E as V,be as v,O as I,az as c,h as l,R as h,as as k,S as x,aw as b}from"./admin-drawer-panel-DNngWUEM.js";const C=V({indeterminate:Boolean,indeterminateIcon:{type:v,default:"$checkboxIndeterminate"},...f({falseIcon:"$checkboxOff",trueIcon:"$checkboxOn"})},"VCheckboxBtn"),B=I()({name:"VCheckboxBtn",props:C(),emits:{"update:modelValue":e=>!0,"update:indeterminate":e=>!0},setup(e,r){let{slots:s}=r;const t=c(e,"indeterminate"),n=c(e,"modelValue");function u(a){t.value&&(t.value=!1)}const i=l(()=>t.value?e.indeterminateIcon:e.falseIcon),d=l(()=>t.value?e.indeterminateIcon:e.trueIcon);return h(()=>{const a=k(o.filterProps(e),["modelValue"]);return x(o,b(a,{modelValue:n.value,"onUpdate:modelValue":[m=>n.value=m,u],class:["v-checkbox-btn",e.class],style:e.style,type:"checkbox",falseIcon:i.value,trueIcon:d.value,"aria-checked":t.value?"mixed":void 0}),s)}),{}}});export{B as V,C as m};
1
+ import{c as f,d as o}from"./VSelectionControl-CVQ9wkE2.js";import{E as V,be as v,O as I,az as c,h as l,R as h,as as k,S as x,aw as b}from"./admin-drawer-panel-1pnfvY8O.js";const C=V({indeterminate:Boolean,indeterminateIcon:{type:v,default:"$checkboxIndeterminate"},...f({falseIcon:"$checkboxOff",trueIcon:"$checkboxOn"})},"VCheckboxBtn"),B=I()({name:"VCheckboxBtn",props:C(),emits:{"update:modelValue":e=>!0,"update:indeterminate":e=>!0},setup(e,r){let{slots:s}=r;const t=c(e,"indeterminate"),n=c(e,"modelValue");function u(a){t.value&&(t.value=!1)}const i=l(()=>t.value?e.indeterminateIcon:e.falseIcon),d=l(()=>t.value?e.indeterminateIcon:e.trueIcon);return h(()=>{const a=k(o.filterProps(e),["modelValue"]);return x(o,b(a,{modelValue:n.value,"onUpdate:modelValue":[m=>n.value=m,u],class:["v-checkbox-btn",e.class],style:e.style,type:"checkbox",falseIcon:i.value,trueIcon:d.value,"aria-checked":t.value?"mixed":void 0}),s)}),{}}});export{B as V,C as m};
@@ -1 +1 @@
1
- import{m as ke,u as pe,V as Ce,a as we,b as Se}from"./VSelect-sIYW_-ud.js";import{m as Fe,V as X}from"./VTextField-BnGscKcY.js";import{E as Ie,as as Pe,b2 as De,O as Re,bV as Ae,r as O,s as P,az as Y,h as b,cE as _e,au as Ee,cF as D,a as R,n as Z,a3 as Me,R as Te,S as s,U as K,aw as I,bv as Le,ar as ee,cG as Ne,ao as le,cH as Oe,bh as Ke,ak as Ue,cI as Be,cJ as ze,cK as He}from"./admin-drawer-panel-DNngWUEM.js";import{m as je,u as $e}from"./filter-DjxN78cK.js";import{g as qe}from"./VSelectionControl-C8DP9rgp.js";import{f as Ge}from"./VDialog-opmV0YZz.js";import{V as Je}from"./VCheckboxBtn-B8Z4NA-t.js";function We(e,g,A){if(g==null)return e;if(Array.isArray(g))throw new Error("Multiple matches is not implemented");return typeof g=="number"&&~g?s(K,null,[s("span",{class:"v-combobox__unmask"},[e.substr(0,g)]),s("span",{class:"v-combobox__mask"},[e.substr(g,A)]),s("span",{class:"v-combobox__unmask"},[e.substr(g+A)])]):e}const Qe=Ie({autoSelectFirst:{type:[Boolean,String]},clearOnSelect:{type:Boolean,default:!0},delimiters:Array,...je({filterKeys:["title"]}),...ke({hideNoData:!0,returnObject:!0}),...Pe(Fe({modelValue:null,role:"combobox"}),["validationValue","dirty","appendInnerIcon"]),...De({transition:!1})},"VCombobox"),ul=Re()({name:"VCombobox",props:Qe(),emits:{"update:focused":e=>!0,"update:modelValue":e=>!0,"update:search":e=>!0,"update:menu":e=>!0},setup(e,g){var J;let{emit:A,slots:n}=g;const{t:U}=Ae(),k=O(),x=P(!1),p=P(!0),_=P(!1),$=O(),q=O(),B=Y(e,"menu"),c=b({get:()=>B.value,set:l=>{var t;B.value&&!l&&((t=$.value)!=null&&t.ΨopenChildren)||(B.value=l)}}),r=P(-1);let z=!1;const ae=b(()=>{var l;return(l=k.value)==null?void 0:l.color}),G=b(()=>c.value?e.closeText:e.openText),{items:te,transformIn:ue,transformOut:ne}=_e(e),{textColorClasses:oe,textColorStyles:ie}=Ee(ae),u=Y(e,"modelValue",[],l=>ue(He(l)),l=>{const t=ne(l);return e.multiple?t:t[0]??null}),F=qe(),E=b(()=>!!(e.chips||n.chip)),y=b(()=>E.value||!!n.selection),C=P(!e.multiple&&!y.value?((J=u.value[0])==null?void 0:J.title)??"":""),v=b({get:()=>C.value,set:l=>{var t;if(C.value=l??"",!e.multiple&&!y.value&&(u.value=[D(e,l)]),l&&e.multiple&&((t=e.delimiters)!=null&&t.length)){const i=l.split(new RegExp(`(?:${e.delimiters.join("|")})+`));i.length>1&&(i.forEach(a=>{a=a.trim(),a&&m(D(e,a))}),C.value="")}l||(r.value=-1),p.value=!l}}),se=b(()=>typeof e.counterValue=="function"?e.counterValue(u.value):typeof e.counterValue=="number"?e.counterValue:e.multiple?u.value.length:v.value.length);R(C,l=>{z?Z(()=>z=!1):x.value&&!c.value&&(c.value=!0),A("update:search",l)}),R(u,l=>{var t;!e.multiple&&!y.value&&(C.value=((t=l[0])==null?void 0:t.title)??"")});const{filteredItems:M,getMatches:re}=$e(e,te,()=>p.value?"":v.value),V=b(()=>e.hideSelected?M.value.filter(l=>!u.value.some(t=>t.value===l.value)):M.value),ce=b(()=>u.value.map(l=>l.value)),T=b(()=>{var t;return(e.autoSelectFirst===!0||e.autoSelectFirst==="exact"&&v.value===((t=V.value[0])==null?void 0:t.title))&&V.value.length>0&&!p.value&&!_.value}),H=b(()=>e.hideNoData&&!V.value.length||e.readonly||(F==null?void 0:F.isReadonly.value)),j=O(),{onListScroll:ve,onListKeydown:de}=pe(j,k);function fe(l){z=!0,e.openOnClear&&(c.value=!0)}function me(){H.value||(c.value=!0)}function be(l){H.value||(x.value&&(l.preventDefault(),l.stopPropagation()),c.value=!c.value)}function he(l){var a;if(ze(l)||e.readonly||F!=null&&F.isReadonly.value)return;const t=k.value.selectionStart,i=u.value.length;if((r.value>-1||["Enter","ArrowDown","ArrowUp"].includes(l.key))&&l.preventDefault(),["Enter","ArrowDown"].includes(l.key)&&(c.value=!0),["Escape"].includes(l.key)&&(c.value=!1),["Enter","Escape"].includes(l.key)&&(T.value&&l.key==="Enter"&&m(M.value[0]),p.value=!0),l.key==="ArrowDown"&&T.value&&((a=j.value)==null||a.focus("next")),l.key==="Enter"&&v.value&&(m(D(e,v.value)),y.value&&(C.value="")),["Backspace","Delete"].includes(l.key)){if(!e.multiple&&y.value&&u.value.length>0&&!v.value)return m(u.value[0],!1);if(~r.value){const o=r.value;m(u.value[r.value],!1),r.value=o>=i-1?i-2:o}else l.key==="Backspace"&&!v.value&&(r.value=i-1)}if(e.multiple){if(l.key==="ArrowLeft"){if(r.value<0&&t>0)return;const o=r.value>-1?r.value-1:i-1;u.value[o]?r.value=o:(r.value=-1,k.value.setSelectionRange(v.value.length,v.value.length))}if(l.key==="ArrowRight"){if(r.value<0)return;const o=r.value+1;u.value[o]?r.value=o:(r.value=-1,k.value.setSelectionRange(0,0))}}}function ge(){var l;x.value&&(p.value=!0,(l=k.value)==null||l.focus())}function m(l){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;if(!(!l||l.props.disabled))if(e.multiple){const i=u.value.findIndex(o=>e.valueComparator(o.value,l.value)),a=t??!~i;if(~i){const o=a?[...u.value,l]:[...u.value];o.splice(i,1),u.value=o}else a&&(u.value=[...u.value,l]);e.clearOnSelect&&(v.value="")}else{const i=t!==!1;u.value=i?[l]:[],C.value=i&&!y.value?l.title:"",Z(()=>{c.value=!1,p.value=!0})}}function xe(l){x.value=!0,setTimeout(()=>{_.value=!0})}function ye(l){_.value=!1}function Ve(l){(l==null||l===""&&!e.multiple&&!y.value)&&(u.value=[])}return R(x,(l,t)=>{if(!(l||l===t)){if(r.value=-1,c.value=!1,T.value&&!_.value&&!u.value.some(i=>{let{value:a}=i;return a===V.value[0].value})){m(V.value[0]);return}if(v.value){if(e.multiple){m(D(e,v.value));return}if(!y.value)return;u.value.some(i=>{let{title:a}=i;return a===v.value})?C.value="":m(D(e,v.value))}}}),R(c,()=>{if(!e.hideSelected&&c.value&&u.value.length){const l=V.value.findIndex(t=>u.value.some(i=>e.valueComparator(i.value,t.value)));Me&&window.requestAnimationFrame(()=>{var t;l>=0&&((t=q.value)==null||t.scrollToIndex(l))})}}),R(()=>e.items,(l,t)=>{c.value||x.value&&!t.length&&l.length&&(c.value=!0)}),Te(()=>{const l=!!(!e.hideNoData||V.value.length||n["prepend-item"]||n["append-item"]||n["no-data"]),t=u.value.length>0,i=X.filterProps(e);return s(X,I({ref:k},i,{modelValue:v.value,"onUpdate:modelValue":[a=>v.value=a,Ve],focused:x.value,"onUpdate:focused":a=>x.value=a,validationValue:u.externalValue,counterValue:se.value,dirty:t,class:["v-combobox",{"v-combobox--active-menu":c.value,"v-combobox--chips":!!e.chips,"v-combobox--selection-slot":!!y.value,"v-combobox--selecting-index":r.value>-1,[`v-combobox--${e.multiple?"multiple":"single"}`]:!0},e.class],style:e.style,readonly:e.readonly,placeholder:t?void 0:e.placeholder,"onClick:clear":fe,"onMousedown:control":me,onKeydown:he}),{...n,default:()=>s(K,null,[s(Ce,I({ref:$,modelValue:c.value,"onUpdate:modelValue":a=>c.value=a,activator:"parent",contentClass:"v-combobox__content",disabled:H.value,eager:e.eager,maxHeight:310,openOnClick:!1,closeOnContentClick:!1,transition:e.transition,onAfterLeave:ge},e.menuProps),{default:()=>[l&&s(Le,I({ref:j,selected:ce.value,selectStrategy:e.multiple?"independent":"single-independent",onMousedown:a=>a.preventDefault(),onKeydown:de,onFocusin:xe,onFocusout:ye,onScrollPassive:ve,tabindex:"-1","aria-live":"polite",color:e.itemColor??e.color},e.listProps),{default:()=>{var a,o,h;return[(a=n["prepend-item"])==null?void 0:a.call(n),!V.value.length&&!e.hideNoData&&(((o=n["no-data"])==null?void 0:o.call(n))??s(ee,{title:U(e.noDataText)},null)),s(we,{ref:q,renderless:!0,items:V.value},{default:w=>{var Q;let{item:d,index:S,itemRef:f}=w;const W=I(d.props,{ref:f,key:S,active:T.value&&S===0?!0:void 0,onClick:()=>m(d,null)});return((Q=n.item)==null?void 0:Q.call(n,{item:d,index:S,props:W}))??s(ee,I(W,{role:"option"}),{prepend:L=>{let{isSelected:N}=L;return s(K,null,[e.multiple&&!e.hideSelected?s(Je,{key:d.value,modelValue:N,ripple:!1,tabindex:"-1"},null):void 0,d.props.prependAvatar&&s(Ne,{image:d.props.prependAvatar},null),d.props.prependIcon&&s(le,{icon:d.props.prependIcon},null)])},title:()=>{var L,N;return p.value?d.title:We(d.title,(L=re(d))==null?void 0:L.title,((N=v.value)==null?void 0:N.length)??0)}})}}),(h=n["append-item"])==null?void 0:h.call(n)]}})]}),u.value.map((a,o)=>{function h(f){f.stopPropagation(),f.preventDefault(),m(a,!1)}const w={"onClick:close":h,onKeydown(f){f.key!=="Enter"&&f.key!==" "||(f.preventDefault(),f.stopPropagation(),h(f))},onMousedown(f){f.preventDefault(),f.stopPropagation()},modelValue:!0,"onUpdate:modelValue":void 0},d=E.value?!!n.chip:!!n.selection,S=d?Oe(E.value?n.chip({item:a,index:o,props:w}):n.selection({item:a,index:o})):void 0;if(!(d&&!S))return s("div",{key:a.value,class:["v-combobox__selection",o===r.value&&["v-combobox__selection--selected",oe.value]],style:o===r.value?ie.value:{}},[E.value?n.chip?s(Ke,{key:"chip-defaults",defaults:{VChip:{closable:e.closableChips,size:"small",text:a.title}}},{default:()=>[S]}):s(Se,I({key:"chip",closable:e.closableChips,size:"small",text:a.title,disabled:a.props.disabled},w),null):S??s("span",{class:"v-combobox__selection-text"},[a.title,e.multiple&&o<u.value.length-1&&s("span",{class:"v-combobox__selection-comma"},[Ue(",")])])])})]),"append-inner":function(){var w;for(var a=arguments.length,o=new Array(a),h=0;h<a;h++)o[h]=arguments[h];return s(K,null,[(w=n["append-inner"])==null?void 0:w.call(n,...o),(!e.hideNoData||e.items.length)&&e.menuIcon?s(le,{class:"v-combobox__menu-icon",icon:e.menuIcon,onMousedown:be,onClick:Be,"aria-label":U(G.value),title:U(G.value),tabindex:"-1"},null):void 0])}})}),Ge({isFocused:x,isPristine:p,menu:c,search:v,selectionIndex:r,filteredItems:M,select:m},k)}});export{ul as V};
1
+ import{m as ke,u as pe,V as Ce,a as we,b as Se}from"./VSelect-BoJq222l.js";import{m as Fe,V as X}from"./VTextField-CkWbil3K.js";import{E as Ie,as as Pe,b2 as De,O as Re,bW as Ae,r as O,s as P,az as Y,h as b,cF as _e,au as Ee,cG as D,a as R,n as Z,a3 as Me,R as Te,S as s,U as K,aw as I,bw as Le,ar as ee,cH as Ne,ao as le,cI as Oe,bh as Ke,ak as Ue,cJ as Be,cK as ze,cL as He}from"./admin-drawer-panel-1pnfvY8O.js";import{m as je,u as We}from"./filter-C-pghOri.js";import{g as $e}from"./VSelectionControl-CVQ9wkE2.js";import{f as qe}from"./VDialog-87AymJC5.js";import{V as Ge}from"./VCheckboxBtn-DLzF_WHB.js";function Je(e,g,A){if(g==null)return e;if(Array.isArray(g))throw new Error("Multiple matches is not implemented");return typeof g=="number"&&~g?s(K,null,[s("span",{class:"v-combobox__unmask"},[e.substr(0,g)]),s("span",{class:"v-combobox__mask"},[e.substr(g,A)]),s("span",{class:"v-combobox__unmask"},[e.substr(g+A)])]):e}const Qe=Ie({autoSelectFirst:{type:[Boolean,String]},clearOnSelect:{type:Boolean,default:!0},delimiters:Array,...je({filterKeys:["title"]}),...ke({hideNoData:!0,returnObject:!0}),...Pe(Fe({modelValue:null,role:"combobox"}),["validationValue","dirty","appendInnerIcon"]),...De({transition:!1})},"VCombobox"),ul=Re()({name:"VCombobox",props:Qe(),emits:{"update:focused":e=>!0,"update:modelValue":e=>!0,"update:search":e=>!0,"update:menu":e=>!0},setup(e,g){var G;let{emit:A,slots:n}=g;const{t:U}=Ae(),k=O(),x=P(!1),p=P(!0),_=P(!1),W=O(),$=O(),B=Y(e,"menu"),c=b({get:()=>B.value,set:l=>{var t;B.value&&!l&&((t=W.value)!=null&&t.ΨopenChildren)||(B.value=l)}}),r=P(-1);let z=!1;const ae=b(()=>{var l;return(l=k.value)==null?void 0:l.color}),q=b(()=>c.value?e.closeText:e.openText),{items:te,transformIn:ue,transformOut:ne}=_e(e),{textColorClasses:oe,textColorStyles:ie}=Ee(ae),u=Y(e,"modelValue",[],l=>ue(He(l)),l=>{const t=ne(l);return e.multiple?t:t[0]??null}),F=$e(),E=b(()=>!!(e.chips||n.chip)),y=b(()=>E.value||!!n.selection),C=P(!e.multiple&&!y.value?((G=u.value[0])==null?void 0:G.title)??"":""),v=b({get:()=>C.value,set:l=>{var t;if(C.value=l??"",!e.multiple&&!y.value&&(u.value=[D(e,l)]),l&&e.multiple&&((t=e.delimiters)!=null&&t.length)){const i=l.split(new RegExp(`(?:${e.delimiters.join("|")})+`));i.length>1&&(i.forEach(a=>{a=a.trim(),a&&m(D(e,a))}),C.value="")}l||(r.value=-1),p.value=!l}}),se=b(()=>typeof e.counterValue=="function"?e.counterValue(u.value):typeof e.counterValue=="number"?e.counterValue:e.multiple?u.value.length:v.value.length);R(C,l=>{z?Z(()=>z=!1):x.value&&!c.value&&(c.value=!0),A("update:search",l)}),R(u,l=>{var t;!e.multiple&&!y.value&&(C.value=((t=l[0])==null?void 0:t.title)??"")});const{filteredItems:M,getMatches:re}=We(e,te,()=>p.value?"":v.value),V=b(()=>e.hideSelected?M.value.filter(l=>!u.value.some(t=>t.value===l.value)):M.value),ce=b(()=>u.value.map(l=>l.value)),T=b(()=>{var t;return(e.autoSelectFirst===!0||e.autoSelectFirst==="exact"&&v.value===((t=V.value[0])==null?void 0:t.title))&&V.value.length>0&&!p.value&&!_.value}),H=b(()=>e.hideNoData&&!V.value.length||e.readonly||(F==null?void 0:F.isReadonly.value)),j=O(),{onListScroll:ve,onListKeydown:de}=pe(j,k);function fe(l){z=!0,e.openOnClear&&(c.value=!0)}function me(){H.value||(c.value=!0)}function be(l){H.value||(x.value&&(l.preventDefault(),l.stopPropagation()),c.value=!c.value)}function he(l){var a;if(ze(l)||e.readonly||F!=null&&F.isReadonly.value)return;const t=k.value.selectionStart,i=u.value.length;if((r.value>-1||["Enter","ArrowDown","ArrowUp"].includes(l.key))&&l.preventDefault(),["Enter","ArrowDown"].includes(l.key)&&(c.value=!0),["Escape"].includes(l.key)&&(c.value=!1),["Enter","Escape"].includes(l.key)&&(T.value&&l.key==="Enter"&&m(M.value[0]),p.value=!0),l.key==="ArrowDown"&&T.value&&((a=j.value)==null||a.focus("next")),l.key==="Enter"&&v.value&&(m(D(e,v.value)),y.value&&(C.value="")),["Backspace","Delete"].includes(l.key)){if(!e.multiple&&y.value&&u.value.length>0&&!v.value)return m(u.value[0],!1);if(~r.value){const o=r.value;m(u.value[r.value],!1),r.value=o>=i-1?i-2:o}else l.key==="Backspace"&&!v.value&&(r.value=i-1)}if(e.multiple){if(l.key==="ArrowLeft"){if(r.value<0&&t>0)return;const o=r.value>-1?r.value-1:i-1;u.value[o]?r.value=o:(r.value=-1,k.value.setSelectionRange(v.value.length,v.value.length))}if(l.key==="ArrowRight"){if(r.value<0)return;const o=r.value+1;u.value[o]?r.value=o:(r.value=-1,k.value.setSelectionRange(0,0))}}}function ge(){var l;x.value&&(p.value=!0,(l=k.value)==null||l.focus())}function m(l){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;if(!(!l||l.props.disabled))if(e.multiple){const i=u.value.findIndex(o=>e.valueComparator(o.value,l.value)),a=t??!~i;if(~i){const o=a?[...u.value,l]:[...u.value];o.splice(i,1),u.value=o}else a&&(u.value=[...u.value,l]);e.clearOnSelect&&(v.value="")}else{const i=t!==!1;u.value=i?[l]:[],C.value=i&&!y.value?l.title:"",Z(()=>{c.value=!1,p.value=!0})}}function xe(l){x.value=!0,setTimeout(()=>{_.value=!0})}function ye(l){_.value=!1}function Ve(l){(l==null||l===""&&!e.multiple&&!y.value)&&(u.value=[])}return R(x,(l,t)=>{if(!(l||l===t)){if(r.value=-1,c.value=!1,T.value&&!_.value&&!u.value.some(i=>{let{value:a}=i;return a===V.value[0].value})){m(V.value[0]);return}if(v.value){if(e.multiple){m(D(e,v.value));return}if(!y.value)return;u.value.some(i=>{let{title:a}=i;return a===v.value})?C.value="":m(D(e,v.value))}}}),R(c,()=>{if(!e.hideSelected&&c.value&&u.value.length){const l=V.value.findIndex(t=>u.value.some(i=>e.valueComparator(i.value,t.value)));Me&&window.requestAnimationFrame(()=>{var t;l>=0&&((t=$.value)==null||t.scrollToIndex(l))})}}),R(()=>e.items,(l,t)=>{c.value||x.value&&!t.length&&l.length&&(c.value=!0)}),Te(()=>{const l=!!(!e.hideNoData||V.value.length||n["prepend-item"]||n["append-item"]||n["no-data"]),t=u.value.length>0,i=X.filterProps(e);return s(X,I({ref:k},i,{modelValue:v.value,"onUpdate:modelValue":[a=>v.value=a,Ve],focused:x.value,"onUpdate:focused":a=>x.value=a,validationValue:u.externalValue,counterValue:se.value,dirty:t,class:["v-combobox",{"v-combobox--active-menu":c.value,"v-combobox--chips":!!e.chips,"v-combobox--selection-slot":!!y.value,"v-combobox--selecting-index":r.value>-1,[`v-combobox--${e.multiple?"multiple":"single"}`]:!0},e.class],style:e.style,readonly:e.readonly,placeholder:t?void 0:e.placeholder,"onClick:clear":fe,"onMousedown:control":me,onKeydown:he}),{...n,default:()=>s(K,null,[s(Ce,I({ref:W,modelValue:c.value,"onUpdate:modelValue":a=>c.value=a,activator:"parent",contentClass:"v-combobox__content",disabled:H.value,eager:e.eager,maxHeight:310,openOnClick:!1,closeOnContentClick:!1,transition:e.transition,onAfterLeave:ge},e.menuProps),{default:()=>[l&&s(Le,I({ref:j,selected:ce.value,selectStrategy:e.multiple?"independent":"single-independent",onMousedown:a=>a.preventDefault(),onKeydown:de,onFocusin:xe,onFocusout:ye,onScrollPassive:ve,tabindex:"-1","aria-live":"polite",color:e.itemColor??e.color},e.listProps),{default:()=>{var a,o,h;return[(a=n["prepend-item"])==null?void 0:a.call(n),!V.value.length&&!e.hideNoData&&(((o=n["no-data"])==null?void 0:o.call(n))??s(ee,{title:U(e.noDataText)},null)),s(we,{ref:$,renderless:!0,items:V.value},{default:w=>{var Q;let{item:d,index:S,itemRef:f}=w;const J=I(d.props,{ref:f,key:S,active:T.value&&S===0?!0:void 0,onClick:()=>m(d,null)});return((Q=n.item)==null?void 0:Q.call(n,{item:d,index:S,props:J}))??s(ee,I(J,{role:"option"}),{prepend:L=>{let{isSelected:N}=L;return s(K,null,[e.multiple&&!e.hideSelected?s(Ge,{key:d.value,modelValue:N,ripple:!1,tabindex:"-1"},null):void 0,d.props.prependAvatar&&s(Ne,{image:d.props.prependAvatar},null),d.props.prependIcon&&s(le,{icon:d.props.prependIcon},null)])},title:()=>{var L,N;return p.value?d.title:Je(d.title,(L=re(d))==null?void 0:L.title,((N=v.value)==null?void 0:N.length)??0)}})}}),(h=n["append-item"])==null?void 0:h.call(n)]}})]}),u.value.map((a,o)=>{function h(f){f.stopPropagation(),f.preventDefault(),m(a,!1)}const w={"onClick:close":h,onKeydown(f){f.key!=="Enter"&&f.key!==" "||(f.preventDefault(),f.stopPropagation(),h(f))},onMousedown(f){f.preventDefault(),f.stopPropagation()},modelValue:!0,"onUpdate:modelValue":void 0},d=E.value?!!n.chip:!!n.selection,S=d?Oe(E.value?n.chip({item:a,index:o,props:w}):n.selection({item:a,index:o})):void 0;if(!(d&&!S))return s("div",{key:a.value,class:["v-combobox__selection",o===r.value&&["v-combobox__selection--selected",oe.value]],style:o===r.value?ie.value:{}},[E.value?n.chip?s(Ke,{key:"chip-defaults",defaults:{VChip:{closable:e.closableChips,size:"small",text:a.title}}},{default:()=>[S]}):s(Se,I({key:"chip",closable:e.closableChips,size:"small",text:a.title,disabled:a.props.disabled},w),null):S??s("span",{class:"v-combobox__selection-text"},[a.title,e.multiple&&o<u.value.length-1&&s("span",{class:"v-combobox__selection-comma"},[Ue(",")])])])})]),"append-inner":function(){var w;for(var a=arguments.length,o=new Array(a),h=0;h<a;h++)o[h]=arguments[h];return s(K,null,[(w=n["append-inner"])==null?void 0:w.call(n,...o),(!e.hideNoData||e.items.length)&&e.menuIcon?s(le,{class:"v-combobox__menu-icon",icon:e.menuIcon,onMousedown:be,onClick:Be,"aria-label":U(q.value),title:U(q.value),tabindex:"-1"},null):void 0])}})}),qe({isFocused:x,isPristine:p,menu:c,search:v,selectionIndex:r,filteredItems:M,select:m},k)}});export{ul as V};
@@ -1 +1 @@
1
- import{m as ke,u as pe,V as Ce,a as we,b as Se}from"./VSelect-sIYW_-ud.js";import{m as Fe,V as X}from"./VTextField-BnGscKcY.js";import{E as Ie,as as Pe,b2 as De,O as Re,bV as Ae,r as O,s as P,az as Y,h as b,cE as _e,au as Ee,cF as D,a as R,n as Z,a3 as Me,R as Te,S as s,U as K,aw as I,bv as Le,ar as ee,cG as Ne,ao as le,cH as Oe,bh as Ke,ak as Ue,cI as Be,cJ as ze,cK as He}from"./admin-drawer-panel-DNngWUEM.js";import{m as je,u as $e}from"./filter-DjxN78cK.js";import{g as qe}from"./VSelectionControl-C8DP9rgp.js";import{f as Ge}from"./VDialog-opmV0YZz.js";import{V as Je}from"./VCheckboxBtn-B8Z4NA-t.js";function We(e,g,A){if(g==null)return e;if(Array.isArray(g))throw new Error("Multiple matches is not implemented");return typeof g=="number"&&~g?s(K,null,[s("span",{class:"v-combobox__unmask"},[e.substr(0,g)]),s("span",{class:"v-combobox__mask"},[e.substr(g,A)]),s("span",{class:"v-combobox__unmask"},[e.substr(g+A)])]):e}const Qe=Ie({autoSelectFirst:{type:[Boolean,String]},clearOnSelect:{type:Boolean,default:!0},delimiters:Array,...je({filterKeys:["title"]}),...ke({hideNoData:!0,returnObject:!0}),...Pe(Fe({modelValue:null,role:"combobox"}),["validationValue","dirty","appendInnerIcon"]),...De({transition:!1})},"VCombobox"),ul=Re()({name:"VCombobox",props:Qe(),emits:{"update:focused":e=>!0,"update:modelValue":e=>!0,"update:search":e=>!0,"update:menu":e=>!0},setup(e,g){var J;let{emit:A,slots:n}=g;const{t:U}=Ae(),k=O(),x=P(!1),p=P(!0),_=P(!1),$=O(),q=O(),B=Y(e,"menu"),c=b({get:()=>B.value,set:l=>{var t;B.value&&!l&&((t=$.value)!=null&&t.ΨopenChildren)||(B.value=l)}}),r=P(-1);let z=!1;const ae=b(()=>{var l;return(l=k.value)==null?void 0:l.color}),G=b(()=>c.value?e.closeText:e.openText),{items:te,transformIn:ue,transformOut:ne}=_e(e),{textColorClasses:oe,textColorStyles:ie}=Ee(ae),u=Y(e,"modelValue",[],l=>ue(He(l)),l=>{const t=ne(l);return e.multiple?t:t[0]??null}),F=qe(),E=b(()=>!!(e.chips||n.chip)),y=b(()=>E.value||!!n.selection),C=P(!e.multiple&&!y.value?((J=u.value[0])==null?void 0:J.title)??"":""),v=b({get:()=>C.value,set:l=>{var t;if(C.value=l??"",!e.multiple&&!y.value&&(u.value=[D(e,l)]),l&&e.multiple&&((t=e.delimiters)!=null&&t.length)){const i=l.split(new RegExp(`(?:${e.delimiters.join("|")})+`));i.length>1&&(i.forEach(a=>{a=a.trim(),a&&m(D(e,a))}),C.value="")}l||(r.value=-1),p.value=!l}}),se=b(()=>typeof e.counterValue=="function"?e.counterValue(u.value):typeof e.counterValue=="number"?e.counterValue:e.multiple?u.value.length:v.value.length);R(C,l=>{z?Z(()=>z=!1):x.value&&!c.value&&(c.value=!0),A("update:search",l)}),R(u,l=>{var t;!e.multiple&&!y.value&&(C.value=((t=l[0])==null?void 0:t.title)??"")});const{filteredItems:M,getMatches:re}=$e(e,te,()=>p.value?"":v.value),V=b(()=>e.hideSelected?M.value.filter(l=>!u.value.some(t=>t.value===l.value)):M.value),ce=b(()=>u.value.map(l=>l.value)),T=b(()=>{var t;return(e.autoSelectFirst===!0||e.autoSelectFirst==="exact"&&v.value===((t=V.value[0])==null?void 0:t.title))&&V.value.length>0&&!p.value&&!_.value}),H=b(()=>e.hideNoData&&!V.value.length||e.readonly||(F==null?void 0:F.isReadonly.value)),j=O(),{onListScroll:ve,onListKeydown:de}=pe(j,k);function fe(l){z=!0,e.openOnClear&&(c.value=!0)}function me(){H.value||(c.value=!0)}function be(l){H.value||(x.value&&(l.preventDefault(),l.stopPropagation()),c.value=!c.value)}function he(l){var a;if(ze(l)||e.readonly||F!=null&&F.isReadonly.value)return;const t=k.value.selectionStart,i=u.value.length;if((r.value>-1||["Enter","ArrowDown","ArrowUp"].includes(l.key))&&l.preventDefault(),["Enter","ArrowDown"].includes(l.key)&&(c.value=!0),["Escape"].includes(l.key)&&(c.value=!1),["Enter","Escape"].includes(l.key)&&(T.value&&l.key==="Enter"&&m(M.value[0]),p.value=!0),l.key==="ArrowDown"&&T.value&&((a=j.value)==null||a.focus("next")),l.key==="Enter"&&v.value&&(m(D(e,v.value)),y.value&&(C.value="")),["Backspace","Delete"].includes(l.key)){if(!e.multiple&&y.value&&u.value.length>0&&!v.value)return m(u.value[0],!1);if(~r.value){const o=r.value;m(u.value[r.value],!1),r.value=o>=i-1?i-2:o}else l.key==="Backspace"&&!v.value&&(r.value=i-1)}if(e.multiple){if(l.key==="ArrowLeft"){if(r.value<0&&t>0)return;const o=r.value>-1?r.value-1:i-1;u.value[o]?r.value=o:(r.value=-1,k.value.setSelectionRange(v.value.length,v.value.length))}if(l.key==="ArrowRight"){if(r.value<0)return;const o=r.value+1;u.value[o]?r.value=o:(r.value=-1,k.value.setSelectionRange(0,0))}}}function ge(){var l;x.value&&(p.value=!0,(l=k.value)==null||l.focus())}function m(l){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;if(!(!l||l.props.disabled))if(e.multiple){const i=u.value.findIndex(o=>e.valueComparator(o.value,l.value)),a=t??!~i;if(~i){const o=a?[...u.value,l]:[...u.value];o.splice(i,1),u.value=o}else a&&(u.value=[...u.value,l]);e.clearOnSelect&&(v.value="")}else{const i=t!==!1;u.value=i?[l]:[],C.value=i&&!y.value?l.title:"",Z(()=>{c.value=!1,p.value=!0})}}function xe(l){x.value=!0,setTimeout(()=>{_.value=!0})}function ye(l){_.value=!1}function Ve(l){(l==null||l===""&&!e.multiple&&!y.value)&&(u.value=[])}return R(x,(l,t)=>{if(!(l||l===t)){if(r.value=-1,c.value=!1,T.value&&!_.value&&!u.value.some(i=>{let{value:a}=i;return a===V.value[0].value})){m(V.value[0]);return}if(v.value){if(e.multiple){m(D(e,v.value));return}if(!y.value)return;u.value.some(i=>{let{title:a}=i;return a===v.value})?C.value="":m(D(e,v.value))}}}),R(c,()=>{if(!e.hideSelected&&c.value&&u.value.length){const l=V.value.findIndex(t=>u.value.some(i=>e.valueComparator(i.value,t.value)));Me&&window.requestAnimationFrame(()=>{var t;l>=0&&((t=q.value)==null||t.scrollToIndex(l))})}}),R(()=>e.items,(l,t)=>{c.value||x.value&&!t.length&&l.length&&(c.value=!0)}),Te(()=>{const l=!!(!e.hideNoData||V.value.length||n["prepend-item"]||n["append-item"]||n["no-data"]),t=u.value.length>0,i=X.filterProps(e);return s(X,I({ref:k},i,{modelValue:v.value,"onUpdate:modelValue":[a=>v.value=a,Ve],focused:x.value,"onUpdate:focused":a=>x.value=a,validationValue:u.externalValue,counterValue:se.value,dirty:t,class:["v-combobox",{"v-combobox--active-menu":c.value,"v-combobox--chips":!!e.chips,"v-combobox--selection-slot":!!y.value,"v-combobox--selecting-index":r.value>-1,[`v-combobox--${e.multiple?"multiple":"single"}`]:!0},e.class],style:e.style,readonly:e.readonly,placeholder:t?void 0:e.placeholder,"onClick:clear":fe,"onMousedown:control":me,onKeydown:he}),{...n,default:()=>s(K,null,[s(Ce,I({ref:$,modelValue:c.value,"onUpdate:modelValue":a=>c.value=a,activator:"parent",contentClass:"v-combobox__content",disabled:H.value,eager:e.eager,maxHeight:310,openOnClick:!1,closeOnContentClick:!1,transition:e.transition,onAfterLeave:ge},e.menuProps),{default:()=>[l&&s(Le,I({ref:j,selected:ce.value,selectStrategy:e.multiple?"independent":"single-independent",onMousedown:a=>a.preventDefault(),onKeydown:de,onFocusin:xe,onFocusout:ye,onScrollPassive:ve,tabindex:"-1","aria-live":"polite",color:e.itemColor??e.color},e.listProps),{default:()=>{var a,o,h;return[(a=n["prepend-item"])==null?void 0:a.call(n),!V.value.length&&!e.hideNoData&&(((o=n["no-data"])==null?void 0:o.call(n))??s(ee,{title:U(e.noDataText)},null)),s(we,{ref:q,renderless:!0,items:V.value},{default:w=>{var Q;let{item:d,index:S,itemRef:f}=w;const W=I(d.props,{ref:f,key:S,active:T.value&&S===0?!0:void 0,onClick:()=>m(d,null)});return((Q=n.item)==null?void 0:Q.call(n,{item:d,index:S,props:W}))??s(ee,I(W,{role:"option"}),{prepend:L=>{let{isSelected:N}=L;return s(K,null,[e.multiple&&!e.hideSelected?s(Je,{key:d.value,modelValue:N,ripple:!1,tabindex:"-1"},null):void 0,d.props.prependAvatar&&s(Ne,{image:d.props.prependAvatar},null),d.props.prependIcon&&s(le,{icon:d.props.prependIcon},null)])},title:()=>{var L,N;return p.value?d.title:We(d.title,(L=re(d))==null?void 0:L.title,((N=v.value)==null?void 0:N.length)??0)}})}}),(h=n["append-item"])==null?void 0:h.call(n)]}})]}),u.value.map((a,o)=>{function h(f){f.stopPropagation(),f.preventDefault(),m(a,!1)}const w={"onClick:close":h,onKeydown(f){f.key!=="Enter"&&f.key!==" "||(f.preventDefault(),f.stopPropagation(),h(f))},onMousedown(f){f.preventDefault(),f.stopPropagation()},modelValue:!0,"onUpdate:modelValue":void 0},d=E.value?!!n.chip:!!n.selection,S=d?Oe(E.value?n.chip({item:a,index:o,props:w}):n.selection({item:a,index:o})):void 0;if(!(d&&!S))return s("div",{key:a.value,class:["v-combobox__selection",o===r.value&&["v-combobox__selection--selected",oe.value]],style:o===r.value?ie.value:{}},[E.value?n.chip?s(Ke,{key:"chip-defaults",defaults:{VChip:{closable:e.closableChips,size:"small",text:a.title}}},{default:()=>[S]}):s(Se,I({key:"chip",closable:e.closableChips,size:"small",text:a.title,disabled:a.props.disabled},w),null):S??s("span",{class:"v-combobox__selection-text"},[a.title,e.multiple&&o<u.value.length-1&&s("span",{class:"v-combobox__selection-comma"},[Ue(",")])])])})]),"append-inner":function(){var w;for(var a=arguments.length,o=new Array(a),h=0;h<a;h++)o[h]=arguments[h];return s(K,null,[(w=n["append-inner"])==null?void 0:w.call(n,...o),(!e.hideNoData||e.items.length)&&e.menuIcon?s(le,{class:"v-combobox__menu-icon",icon:e.menuIcon,onMousedown:be,onClick:Be,"aria-label":U(G.value),title:U(G.value),tabindex:"-1"},null):void 0])}})}),Ge({isFocused:x,isPristine:p,menu:c,search:v,selectionIndex:r,filteredItems:M,select:m},k)}});export{ul as V};
1
+ import{m as ke,u as pe,V as Ce,a as we,b as Se}from"./VSelect-BoJq222l.js";import{m as Fe,V as X}from"./VTextField-CkWbil3K.js";import{E as Ie,as as Pe,b2 as De,O as Re,bW as Ae,r as O,s as P,az as Y,h as b,cF as _e,au as Ee,cG as D,a as R,n as Z,a3 as Me,R as Te,S as s,U as K,aw as I,bw as Le,ar as ee,cH as Ne,ao as le,cI as Oe,bh as Ke,ak as Ue,cJ as Be,cK as ze,cL as He}from"./admin-drawer-panel-1pnfvY8O.js";import{m as je,u as We}from"./filter-C-pghOri.js";import{g as $e}from"./VSelectionControl-CVQ9wkE2.js";import{f as qe}from"./VDialog-87AymJC5.js";import{V as Ge}from"./VCheckboxBtn-DLzF_WHB.js";function Je(e,g,A){if(g==null)return e;if(Array.isArray(g))throw new Error("Multiple matches is not implemented");return typeof g=="number"&&~g?s(K,null,[s("span",{class:"v-combobox__unmask"},[e.substr(0,g)]),s("span",{class:"v-combobox__mask"},[e.substr(g,A)]),s("span",{class:"v-combobox__unmask"},[e.substr(g+A)])]):e}const Qe=Ie({autoSelectFirst:{type:[Boolean,String]},clearOnSelect:{type:Boolean,default:!0},delimiters:Array,...je({filterKeys:["title"]}),...ke({hideNoData:!0,returnObject:!0}),...Pe(Fe({modelValue:null,role:"combobox"}),["validationValue","dirty","appendInnerIcon"]),...De({transition:!1})},"VCombobox"),ul=Re()({name:"VCombobox",props:Qe(),emits:{"update:focused":e=>!0,"update:modelValue":e=>!0,"update:search":e=>!0,"update:menu":e=>!0},setup(e,g){var G;let{emit:A,slots:n}=g;const{t:U}=Ae(),k=O(),x=P(!1),p=P(!0),_=P(!1),W=O(),$=O(),B=Y(e,"menu"),c=b({get:()=>B.value,set:l=>{var t;B.value&&!l&&((t=W.value)!=null&&t.ΨopenChildren)||(B.value=l)}}),r=P(-1);let z=!1;const ae=b(()=>{var l;return(l=k.value)==null?void 0:l.color}),q=b(()=>c.value?e.closeText:e.openText),{items:te,transformIn:ue,transformOut:ne}=_e(e),{textColorClasses:oe,textColorStyles:ie}=Ee(ae),u=Y(e,"modelValue",[],l=>ue(He(l)),l=>{const t=ne(l);return e.multiple?t:t[0]??null}),F=$e(),E=b(()=>!!(e.chips||n.chip)),y=b(()=>E.value||!!n.selection),C=P(!e.multiple&&!y.value?((G=u.value[0])==null?void 0:G.title)??"":""),v=b({get:()=>C.value,set:l=>{var t;if(C.value=l??"",!e.multiple&&!y.value&&(u.value=[D(e,l)]),l&&e.multiple&&((t=e.delimiters)!=null&&t.length)){const i=l.split(new RegExp(`(?:${e.delimiters.join("|")})+`));i.length>1&&(i.forEach(a=>{a=a.trim(),a&&m(D(e,a))}),C.value="")}l||(r.value=-1),p.value=!l}}),se=b(()=>typeof e.counterValue=="function"?e.counterValue(u.value):typeof e.counterValue=="number"?e.counterValue:e.multiple?u.value.length:v.value.length);R(C,l=>{z?Z(()=>z=!1):x.value&&!c.value&&(c.value=!0),A("update:search",l)}),R(u,l=>{var t;!e.multiple&&!y.value&&(C.value=((t=l[0])==null?void 0:t.title)??"")});const{filteredItems:M,getMatches:re}=We(e,te,()=>p.value?"":v.value),V=b(()=>e.hideSelected?M.value.filter(l=>!u.value.some(t=>t.value===l.value)):M.value),ce=b(()=>u.value.map(l=>l.value)),T=b(()=>{var t;return(e.autoSelectFirst===!0||e.autoSelectFirst==="exact"&&v.value===((t=V.value[0])==null?void 0:t.title))&&V.value.length>0&&!p.value&&!_.value}),H=b(()=>e.hideNoData&&!V.value.length||e.readonly||(F==null?void 0:F.isReadonly.value)),j=O(),{onListScroll:ve,onListKeydown:de}=pe(j,k);function fe(l){z=!0,e.openOnClear&&(c.value=!0)}function me(){H.value||(c.value=!0)}function be(l){H.value||(x.value&&(l.preventDefault(),l.stopPropagation()),c.value=!c.value)}function he(l){var a;if(ze(l)||e.readonly||F!=null&&F.isReadonly.value)return;const t=k.value.selectionStart,i=u.value.length;if((r.value>-1||["Enter","ArrowDown","ArrowUp"].includes(l.key))&&l.preventDefault(),["Enter","ArrowDown"].includes(l.key)&&(c.value=!0),["Escape"].includes(l.key)&&(c.value=!1),["Enter","Escape"].includes(l.key)&&(T.value&&l.key==="Enter"&&m(M.value[0]),p.value=!0),l.key==="ArrowDown"&&T.value&&((a=j.value)==null||a.focus("next")),l.key==="Enter"&&v.value&&(m(D(e,v.value)),y.value&&(C.value="")),["Backspace","Delete"].includes(l.key)){if(!e.multiple&&y.value&&u.value.length>0&&!v.value)return m(u.value[0],!1);if(~r.value){const o=r.value;m(u.value[r.value],!1),r.value=o>=i-1?i-2:o}else l.key==="Backspace"&&!v.value&&(r.value=i-1)}if(e.multiple){if(l.key==="ArrowLeft"){if(r.value<0&&t>0)return;const o=r.value>-1?r.value-1:i-1;u.value[o]?r.value=o:(r.value=-1,k.value.setSelectionRange(v.value.length,v.value.length))}if(l.key==="ArrowRight"){if(r.value<0)return;const o=r.value+1;u.value[o]?r.value=o:(r.value=-1,k.value.setSelectionRange(0,0))}}}function ge(){var l;x.value&&(p.value=!0,(l=k.value)==null||l.focus())}function m(l){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;if(!(!l||l.props.disabled))if(e.multiple){const i=u.value.findIndex(o=>e.valueComparator(o.value,l.value)),a=t??!~i;if(~i){const o=a?[...u.value,l]:[...u.value];o.splice(i,1),u.value=o}else a&&(u.value=[...u.value,l]);e.clearOnSelect&&(v.value="")}else{const i=t!==!1;u.value=i?[l]:[],C.value=i&&!y.value?l.title:"",Z(()=>{c.value=!1,p.value=!0})}}function xe(l){x.value=!0,setTimeout(()=>{_.value=!0})}function ye(l){_.value=!1}function Ve(l){(l==null||l===""&&!e.multiple&&!y.value)&&(u.value=[])}return R(x,(l,t)=>{if(!(l||l===t)){if(r.value=-1,c.value=!1,T.value&&!_.value&&!u.value.some(i=>{let{value:a}=i;return a===V.value[0].value})){m(V.value[0]);return}if(v.value){if(e.multiple){m(D(e,v.value));return}if(!y.value)return;u.value.some(i=>{let{title:a}=i;return a===v.value})?C.value="":m(D(e,v.value))}}}),R(c,()=>{if(!e.hideSelected&&c.value&&u.value.length){const l=V.value.findIndex(t=>u.value.some(i=>e.valueComparator(i.value,t.value)));Me&&window.requestAnimationFrame(()=>{var t;l>=0&&((t=$.value)==null||t.scrollToIndex(l))})}}),R(()=>e.items,(l,t)=>{c.value||x.value&&!t.length&&l.length&&(c.value=!0)}),Te(()=>{const l=!!(!e.hideNoData||V.value.length||n["prepend-item"]||n["append-item"]||n["no-data"]),t=u.value.length>0,i=X.filterProps(e);return s(X,I({ref:k},i,{modelValue:v.value,"onUpdate:modelValue":[a=>v.value=a,Ve],focused:x.value,"onUpdate:focused":a=>x.value=a,validationValue:u.externalValue,counterValue:se.value,dirty:t,class:["v-combobox",{"v-combobox--active-menu":c.value,"v-combobox--chips":!!e.chips,"v-combobox--selection-slot":!!y.value,"v-combobox--selecting-index":r.value>-1,[`v-combobox--${e.multiple?"multiple":"single"}`]:!0},e.class],style:e.style,readonly:e.readonly,placeholder:t?void 0:e.placeholder,"onClick:clear":fe,"onMousedown:control":me,onKeydown:he}),{...n,default:()=>s(K,null,[s(Ce,I({ref:W,modelValue:c.value,"onUpdate:modelValue":a=>c.value=a,activator:"parent",contentClass:"v-combobox__content",disabled:H.value,eager:e.eager,maxHeight:310,openOnClick:!1,closeOnContentClick:!1,transition:e.transition,onAfterLeave:ge},e.menuProps),{default:()=>[l&&s(Le,I({ref:j,selected:ce.value,selectStrategy:e.multiple?"independent":"single-independent",onMousedown:a=>a.preventDefault(),onKeydown:de,onFocusin:xe,onFocusout:ye,onScrollPassive:ve,tabindex:"-1","aria-live":"polite",color:e.itemColor??e.color},e.listProps),{default:()=>{var a,o,h;return[(a=n["prepend-item"])==null?void 0:a.call(n),!V.value.length&&!e.hideNoData&&(((o=n["no-data"])==null?void 0:o.call(n))??s(ee,{title:U(e.noDataText)},null)),s(we,{ref:$,renderless:!0,items:V.value},{default:w=>{var Q;let{item:d,index:S,itemRef:f}=w;const J=I(d.props,{ref:f,key:S,active:T.value&&S===0?!0:void 0,onClick:()=>m(d,null)});return((Q=n.item)==null?void 0:Q.call(n,{item:d,index:S,props:J}))??s(ee,I(J,{role:"option"}),{prepend:L=>{let{isSelected:N}=L;return s(K,null,[e.multiple&&!e.hideSelected?s(Ge,{key:d.value,modelValue:N,ripple:!1,tabindex:"-1"},null):void 0,d.props.prependAvatar&&s(Ne,{image:d.props.prependAvatar},null),d.props.prependIcon&&s(le,{icon:d.props.prependIcon},null)])},title:()=>{var L,N;return p.value?d.title:Je(d.title,(L=re(d))==null?void 0:L.title,((N=v.value)==null?void 0:N.length)??0)}})}}),(h=n["append-item"])==null?void 0:h.call(n)]}})]}),u.value.map((a,o)=>{function h(f){f.stopPropagation(),f.preventDefault(),m(a,!1)}const w={"onClick:close":h,onKeydown(f){f.key!=="Enter"&&f.key!==" "||(f.preventDefault(),f.stopPropagation(),h(f))},onMousedown(f){f.preventDefault(),f.stopPropagation()},modelValue:!0,"onUpdate:modelValue":void 0},d=E.value?!!n.chip:!!n.selection,S=d?Oe(E.value?n.chip({item:a,index:o,props:w}):n.selection({item:a,index:o})):void 0;if(!(d&&!S))return s("div",{key:a.value,class:["v-combobox__selection",o===r.value&&["v-combobox__selection--selected",oe.value]],style:o===r.value?ie.value:{}},[E.value?n.chip?s(Ke,{key:"chip-defaults",defaults:{VChip:{closable:e.closableChips,size:"small",text:a.title}}},{default:()=>[S]}):s(Se,I({key:"chip",closable:e.closableChips,size:"small",text:a.title,disabled:a.props.disabled},w),null):S??s("span",{class:"v-combobox__selection-text"},[a.title,e.multiple&&o<u.value.length-1&&s("span",{class:"v-combobox__selection-comma"},[Ue(",")])])])})]),"append-inner":function(){var w;for(var a=arguments.length,o=new Array(a),h=0;h<a;h++)o[h]=arguments[h];return s(K,null,[(w=n["append-inner"])==null?void 0:w.call(n,...o),(!e.hideNoData||e.items.length)&&e.menuIcon?s(le,{class:"v-combobox__menu-icon",icon:e.menuIcon,onMousedown:be,onClick:Be,"aria-label":U(q.value),title:U(q.value),tabindex:"-1"},null):void 0])}})}),qe({isFocused:x,isPristine:p,menu:c,search:v,selectionIndex:r,filteredItems:M,select:m},k)}});export{ul as V};
@@ -1 +1 @@
1
- import{_ as Ue,Z as Ge,aH as Ke,S as T,$ as ge,ak as ye,ap as Xe,av as he,E as z,r as W,a3 as N,cm as fe,a as R,cn as $,dj as Ye,dk as Ze,dl as be,dm as ne,dn as oe,dp as we,h as O,n as J,dq as Qe,dr as Z,ds as ae,dt as Ee,du as Se,K as V,a7 as xe,db as Je,w as ve,dv as Be,dw as et,dx as tt,G as de,i as Te,dy as pe,dz as nt,aw as D,dA as ot,da as at,s as j,ck as rt,f as Fe,p as lt,dB as it,dC as st,dD as Le,M as ct,b1 as ut,N as ft,b2 as vt,O as Me,az as _e,P as dt,Q as mt,aD as gt,aE as yt,b4 as ht,o as bt,co as wt,d8 as Et,ax as St,R as Ve,dE as xt,b6 as pt,aU as Pt,b7 as Ot,b5 as Ct,U as At,cq as kt,dF as Rt,ay as Bt,c_ as Tt,bh as Ft,d0 as Lt}from"./admin-drawer-panel-DNngWUEM.js";import{n as Mt}from"./main-DX-k2724.js";const _t={name:"ConfirmFooter",props:{confirmText:{type:String,required:!0},disabled:{type:Boolean,default:!1}},emits:["confirm","cancel"]},Vt={class:"confirmFooter"};function Dt(e,n,t,o,i,a){return Ge(),Ke("footer",Vt,[T(he,{class:"confirmButton",disabled:t.disabled,onClick:n[0]||(n[0]=r=>e.$emit("confirm"))},{default:ge(()=>[ye(Xe(t.confirmText),1)]),_:1},8,["disabled"]),T(he,{class:"cancelButton",onClick:n[1]||(n[1]=r=>e.$emit("cancel"))},{default:ge(()=>[ye(" Cancel ")]),_:1})])}const yn=Ue(_t,[["render",Dt],["__scopeId","data-v-24df1550"]]);function re(e,n){return{x:e.x+n.x,y:e.y+n.y}}function It(e,n){return{x:e.x-n.x,y:e.y-n.y}}function Pe(e,n){if(e.side==="top"||e.side==="bottom"){const{side:t,align:o}=e,i=o==="left"?0:o==="center"?n.width/2:o==="right"?n.width:o,a=t==="top"?0:t==="bottom"?n.height:t;return re({x:i,y:a},n)}else if(e.side==="left"||e.side==="right"){const{side:t,align:o}=e,i=t==="left"?0:t==="right"?n.width:t,a=o==="top"?0:o==="center"?n.height/2:o==="bottom"?n.height:o;return re({x:i,y:a},n)}return re({x:n.width/2,y:n.height/2},n)}const De={static:Ht,connected:qt},Wt=z({locationStrategy:{type:[String,Function],default:"static",validator:e=>typeof e=="function"||e in De},location:{type:String,default:"bottom"},origin:{type:String,default:"auto"},offset:[Number,String,Array]},"VOverlay-location-strategies");function $t(e,n){const t=W({}),o=W();N&&fe(()=>!!(n.isActive.value&&e.locationStrategy),a=>{var r,l;R(()=>e.locationStrategy,a),$(()=>{window.removeEventListener("resize",i),o.value=void 0}),window.addEventListener("resize",i,{passive:!0}),typeof e.locationStrategy=="function"?o.value=(r=e.locationStrategy(n,e,t))==null?void 0:r.updateLocation:o.value=(l=De[e.locationStrategy](n,e,t))==null?void 0:l.updateLocation});function i(a){var r;(r=o.value)==null||r.call(o,a)}return{contentStyles:t,updateLocation:o}}function Ht(){}function Nt(e,n){n?e.style.removeProperty("left"):e.style.removeProperty("right");const t=Je(e);return n?t.x+=parseFloat(e.style.right||0):t.x-=parseFloat(e.style.left||0),t.y-=parseFloat(e.style.top||0),t}function qt(e,n,t){(Array.isArray(e.target.value)||Ye(e.target.value))&&Object.assign(t.value,{position:"fixed",top:0,[e.isRtl.value?"right":"left"]:0});const{preferredAnchor:i,preferredOrigin:a}=Ze(()=>{const d=be(n.location,e.isRtl.value),u=n.origin==="overlap"?d:n.origin==="auto"?ne(d):be(n.origin,e.isRtl.value);return d.side===u.side&&d.align===oe(u).align?{preferredAnchor:we(d),preferredOrigin:we(u)}:{preferredAnchor:d,preferredOrigin:u}}),[r,l,f,v]=["minWidth","minHeight","maxWidth","maxHeight"].map(d=>O(()=>{const u=parseFloat(n[d]);return isNaN(u)?1/0:u})),c=O(()=>{if(Array.isArray(n.offset))return n.offset;if(typeof n.offset=="string"){const d=n.offset.split(" ").map(parseFloat);return d.length<2&&d.push(0),d}return typeof n.offset=="number"?[n.offset,0]:[0,0]});let m=!1;const b=new ResizeObserver(()=>{m&&h()});R([e.target,e.contentEl],(d,u)=>{let[x,C]=d,[p,w]=u;p&&!Array.isArray(p)&&b.unobserve(p),x&&!Array.isArray(x)&&b.observe(x),w&&b.unobserve(w),C&&b.observe(C)},{immediate:!0}),$(()=>{b.disconnect()});function h(){if(m=!1,requestAnimationFrame(()=>m=!0),!e.target.value||!e.contentEl.value)return;const d=Qe(e.target.value),u=Nt(e.contentEl.value,e.isRtl.value),x=Z(e.contentEl.value),C=12;x.length||(x.push(document.documentElement),e.contentEl.value.style.top&&e.contentEl.value.style.left||(u.x-=parseFloat(document.documentElement.style.getPropertyValue("--v-body-scroll-x")||0),u.y-=parseFloat(document.documentElement.style.getPropertyValue("--v-body-scroll-y")||0)));const p=x.reduce((P,E)=>{const g=E.getBoundingClientRect(),y=new ae({x:E===document.documentElement?0:g.x,y:E===document.documentElement?0:g.y,width:E.clientWidth,height:E.clientHeight});return P?new ae({x:Math.max(P.left,y.left),y:Math.max(P.top,y.top),width:Math.min(P.right,y.right)-Math.max(P.left,y.left),height:Math.min(P.bottom,y.bottom)-Math.max(P.top,y.top)}):y},void 0);p.x+=C,p.y+=C,p.width-=C*2,p.height-=C*2;let w={anchor:i.value,origin:a.value};function H(P){const E=new ae(u),g=Pe(P.anchor,d),y=Pe(P.origin,E);let{x:M,y:F}=It(g,y);switch(P.anchor.side){case"top":F-=c.value[0];break;case"bottom":F+=c.value[0];break;case"left":M-=c.value[0];break;case"right":M+=c.value[0];break}switch(P.anchor.align){case"top":F-=c.value[1];break;case"bottom":F+=c.value[1];break;case"left":M-=c.value[1];break;case"right":M+=c.value[1];break}return E.x+=M,E.y+=F,E.width=Math.min(E.width,f.value),E.height=Math.min(E.height,v.value),{overflows:Se(E,p),x:M,y:F}}let L=0,A=0;const s={x:0,y:0},B={x:!1,y:!1};let ee=-1;for(;!(ee++>10);){const{x:P,y:E,overflows:g}=H(w);L+=P,A+=E,u.x+=P,u.y+=E;{const y=Ee(w.anchor),M=g.x.before||g.x.after,F=g.y.before||g.y.after;let U=!1;if(["x","y"].forEach(k=>{if(k==="x"&&M&&!B.x||k==="y"&&F&&!B.y){const _={anchor:{...w.anchor},origin:{...w.origin}},K=k==="x"?y==="y"?oe:ne:y==="y"?ne:oe;_.anchor=K(_.anchor),_.origin=K(_.origin);const{overflows:q}=H(_);(q[k].before<=g[k].before&&q[k].after<=g[k].after||q[k].before+q[k].after<(g[k].before+g[k].after)/2)&&(w=_,U=B[k]=!0)}}),U)continue}g.x.before&&(L+=g.x.before,u.x+=g.x.before),g.x.after&&(L-=g.x.after,u.x-=g.x.after),g.y.before&&(A+=g.y.before,u.y+=g.y.before),g.y.after&&(A-=g.y.after,u.y-=g.y.after);{const y=Se(u,p);s.x=p.width-y.x.before-y.x.after,s.y=p.height-y.y.before-y.y.after,L+=y.x.before,u.x+=y.x.before,A+=y.y.before,u.y+=y.y.before}break}const te=Ee(w.anchor);return Object.assign(t.value,{"--v-overlay-anchor-origin":`${w.anchor.side} ${w.anchor.align}`,transformOrigin:`${w.origin.side} ${w.origin.align}`,top:V(le(A)),left:e.isRtl.value?void 0:V(le(L)),right:e.isRtl.value?V(le(-L)):void 0,minWidth:V(te==="y"?Math.min(r.value,d.width):r.value),maxWidth:V(Oe(xe(s.x,r.value===1/0?0:r.value,f.value))),maxHeight:V(Oe(xe(s.y,l.value===1/0?0:l.value,v.value)))}),{available:s,contentBox:u}}return R(()=>[i.value,a.value,n.offset,n.minWidth,n.minHeight,n.maxWidth,n.maxHeight],()=>h()),J(()=>{const d=h();if(!d)return;const{available:u,contentBox:x}=d;x.height>u.y&&requestAnimationFrame(()=>{h(),requestAnimationFrame(()=>{h()})})}),{updateLocation:h}}function le(e){return Math.round(e*devicePixelRatio)/devicePixelRatio}function Oe(e){return Math.ceil(e*devicePixelRatio)/devicePixelRatio}let ce=!0;const Q=[];function zt(e){!ce||Q.length?(Q.push(e),ue()):(ce=!1,e(),ue())}let Ce=-1;function ue(){cancelAnimationFrame(Ce),Ce=requestAnimationFrame(()=>{const e=Q.shift();e&&e(),Q.length?ue():ce=!0})}const Y={none:null,close:Gt,block:Kt,reposition:Xt},jt=z({scrollStrategy:{type:[String,Function],default:"block",validator:e=>typeof e=="function"||e in Y}},"VOverlay-scroll-strategies");function Ut(e,n){if(!N)return;let t;ve(async()=>{t==null||t.stop(),n.isActive.value&&e.scrollStrategy&&(t=Be(),await new Promise(o=>setTimeout(o)),t.active&&t.run(()=>{var o;typeof e.scrollStrategy=="function"?e.scrollStrategy(n,e,t):(o=Y[e.scrollStrategy])==null||o.call(Y,n,e,t)}))}),$(()=>{t==null||t.stop()})}function Gt(e){function n(t){e.isActive.value=!1}Ie(e.targetEl.value??e.contentEl.value,n)}function Kt(e,n){var r;const t=(r=e.root.value)==null?void 0:r.offsetParent,o=[...new Set([...Z(e.targetEl.value,n.contained?t:void 0),...Z(e.contentEl.value,n.contained?t:void 0)])].filter(l=>!l.classList.contains("v-overlay-scroll-blocked")),i=window.innerWidth-document.documentElement.offsetWidth,a=(l=>et(l)&&l)(t||document.documentElement);a&&e.root.value.classList.add("v-overlay--scroll-blocked"),o.forEach((l,f)=>{l.style.setProperty("--v-body-scroll-x",V(-l.scrollLeft)),l.style.setProperty("--v-body-scroll-y",V(-l.scrollTop)),l!==document.documentElement&&l.style.setProperty("--v-scrollbar-offset",V(i)),l.classList.add("v-overlay-scroll-blocked")}),$(()=>{o.forEach((l,f)=>{const v=parseFloat(l.style.getPropertyValue("--v-body-scroll-x")),c=parseFloat(l.style.getPropertyValue("--v-body-scroll-y")),m=l.style.scrollBehavior;l.style.scrollBehavior="auto",l.style.removeProperty("--v-body-scroll-x"),l.style.removeProperty("--v-body-scroll-y"),l.style.removeProperty("--v-scrollbar-offset"),l.classList.remove("v-overlay-scroll-blocked"),l.scrollLeft=-v,l.scrollTop=-c,l.style.scrollBehavior=m}),a&&e.root.value.classList.remove("v-overlay--scroll-blocked")})}function Xt(e,n,t){let o=!1,i=-1,a=-1;function r(l){zt(()=>{var c,m;const f=performance.now();(m=(c=e.updateLocation).value)==null||m.call(c,l),o=(performance.now()-f)/(1e3/60)>2})}a=(typeof requestIdleCallback>"u"?l=>l():requestIdleCallback)(()=>{t.run(()=>{Ie(e.targetEl.value??e.contentEl.value,l=>{o?(cancelAnimationFrame(i),i=requestAnimationFrame(()=>{i=requestAnimationFrame(()=>{r(l)})})):r(l)})})}),$(()=>{typeof cancelIdleCallback<"u"&&cancelIdleCallback(a),cancelAnimationFrame(i)})}function Ie(e,n){const t=[document,...Z(e)];t.forEach(o=>{o.addEventListener("scroll",n,{passive:!0})}),$(()=>{t.forEach(o=>{o.removeEventListener("scroll",n)})})}const Yt=Symbol.for("vuetify:v-menu"),Zt=z({closeDelay:[Number,String],openDelay:[Number,String]},"delay");function Qt(e,n){let t=()=>{};function o(r){t==null||t();const l=Number(r?e.openDelay:e.closeDelay);return new Promise(f=>{t=tt(l,()=>{n==null||n(r),f(r)})})}function i(){return o(!0)}function a(){return o(!1)}return{clearDelay:t,runOpenDelay:i,runCloseDelay:a}}const Jt=z({target:[String,Object],activator:[String,Object],activatorProps:{type:Object,default:()=>({})},openOnClick:{type:Boolean,default:void 0},openOnHover:Boolean,openOnFocus:{type:Boolean,default:void 0},closeOnContentClick:Boolean,...Zt()},"VOverlay-activator");function en(e,n){let{isActive:t,isTop:o}=n;const i=de("useActivator"),a=W();let r=!1,l=!1,f=!0;const v=O(()=>e.openOnFocus||e.openOnFocus==null&&e.openOnHover),c=O(()=>e.openOnClick||e.openOnClick==null&&!e.openOnHover&&!v.value),{runOpenDelay:m,runCloseDelay:b}=Qt(e,s=>{s===(e.openOnHover&&r||v.value&&l)&&!(e.openOnHover&&t.value&&!o.value)&&(t.value!==s&&(f=!0),t.value=s)}),h=W(),d={onClick:s=>{s.stopPropagation(),a.value=s.currentTarget||s.target,t.value||(h.value=[s.clientX,s.clientY]),t.value=!t.value},onMouseenter:s=>{var B;(B=s.sourceCapabilities)!=null&&B.firesTouchEvents||(r=!0,a.value=s.currentTarget||s.target,m())},onMouseleave:s=>{r=!1,b()},onFocus:s=>{at(s.target,":focus-visible")!==!1&&(l=!0,s.stopPropagation(),a.value=s.currentTarget||s.target,m())},onBlur:s=>{l=!1,s.stopPropagation(),b()}},u=O(()=>{const s={};return c.value&&(s.onClick=d.onClick),e.openOnHover&&(s.onMouseenter=d.onMouseenter,s.onMouseleave=d.onMouseleave),v.value&&(s.onFocus=d.onFocus,s.onBlur=d.onBlur),s}),x=O(()=>{const s={};if(e.openOnHover&&(s.onMouseenter=()=>{r=!0,m()},s.onMouseleave=()=>{r=!1,b()}),v.value&&(s.onFocusin=()=>{l=!0,m()},s.onFocusout=()=>{l=!1,b()}),e.closeOnContentClick){const B=Te(Yt,null);s.onClick=()=>{t.value=!1,B==null||B.closeParents()}}return s}),C=O(()=>{const s={};return e.openOnHover&&(s.onMouseenter=()=>{f&&(r=!0,f=!1,m())},s.onMouseleave=()=>{r=!1,b()}),s});R(o,s=>{s&&(e.openOnHover&&!r&&(!v.value||!l)||v.value&&!l&&(!e.openOnHover||!r))&&(t.value=!1)}),R(t,s=>{s||setTimeout(()=>{h.value=void 0})},{flush:"post"});const p=pe();ve(()=>{p.value&&J(()=>{a.value=p.el})});const w=pe(),H=O(()=>e.target==="cursor"&&h.value?h.value:w.value?w.el:We(e.target,i)||a.value),L=O(()=>Array.isArray(H.value)?void 0:H.value);let A;return R(()=>!!e.activator,s=>{s&&N?(A=Be(),A.run(()=>{tn(e,i,{activatorEl:a,activatorEvents:u})})):A&&A.stop()},{flush:"post",immediate:!0}),$(()=>{A==null||A.stop()}),{activatorEl:a,activatorRef:p,target:H,targetEl:L,targetRef:w,activatorEvents:u,contentEvents:x,scrimEvents:C}}function tn(e,n,t){let{activatorEl:o,activatorEvents:i}=t;R(()=>e.activator,(f,v)=>{if(v&&f!==v){const c=l(v);c&&r(c)}f&&J(()=>a())},{immediate:!0}),R(()=>e.activatorProps,()=>{a()}),$(()=>{r()});function a(){let f=arguments.length>0&&arguments[0]!==void 0?arguments[0]:l(),v=arguments.length>1&&arguments[1]!==void 0?arguments[1]:e.activatorProps;f&&nt(f,D(i.value,v))}function r(){let f=arguments.length>0&&arguments[0]!==void 0?arguments[0]:l(),v=arguments.length>1&&arguments[1]!==void 0?arguments[1]:e.activatorProps;f&&ot(f,D(i.value,v))}function l(){let f=arguments.length>0&&arguments[0]!==void 0?arguments[0]:e.activator;const v=We(f,n);return o.value=(v==null?void 0:v.nodeType)===Node.ELEMENT_NODE?v:void 0,o.value}}function We(e,n){var o,i;if(!e)return;let t;if(e==="parent"){let a=(i=(o=n==null?void 0:n.proxy)==null?void 0:o.$el)==null?void 0:i.parentNode;for(;a!=null&&a.hasAttribute("data-no-activator");)a=a.parentNode;t=a}else typeof e=="string"?t=document.querySelector(e):"$el"in e?t=e.$el:t=e;return t}function nn(){if(!N)return j(!1);const{ssr:e}=Mt();if(e){const n=j(!1);return rt(()=>{n.value=!0}),n}else return j(!0)}const on=z({eager:Boolean},"lazy");function an(e,n){const t=j(!1),o=O(()=>t.value||e.eager||n.value);R(n,()=>t.value=!0);function i(){e.eager||(t.value=!1)}return{isBooted:t,hasContent:o,onAfterLeave:i}}function $e(){const n=de("useScopeId").vnode.scopeId;return{scopeId:n?{[n]:""}:void 0}}const Ae=Symbol.for("vuetify:stack"),G=Fe([]);function rn(e,n,t){const o=de("useStack"),i=!t,a=Te(Ae,void 0),r=Fe({activeChildren:new Set});lt(Ae,r);const l=j(+n.value);fe(e,()=>{var m;const c=(m=G.at(-1))==null?void 0:m[1];l.value=c?c+10:+n.value,i&&G.push([o.uid,l.value]),a==null||a.activeChildren.add(o.uid),$(()=>{if(i){const b=it(G).findIndex(h=>h[0]===o.uid);G.splice(b,1)}a==null||a.activeChildren.delete(o.uid)})});const f=j(!0);i&&ve(()=>{var m;const c=((m=G.at(-1))==null?void 0:m[0])===o.uid;setTimeout(()=>f.value=c)});const v=O(()=>!r.activeChildren.size);return{globalTop:st(f),localTop:v,stackStyles:O(()=>({zIndex:l.value}))}}function ln(e){return{teleportTarget:O(()=>{const t=e.value;if(t===!0||!N)return;const o=t===!1?document.body:typeof t=="string"?document.querySelector(t):t;if(o==null)return;let i=o.querySelector(":scope > .v-overlay-container");return i||(i=document.createElement("div"),i.className="v-overlay-container",o.appendChild(i)),i})}}function sn(){return!0}function He(e,n,t){if(!e||Ne(e,t)===!1)return!1;const o=Le(n);if(typeof ShadowRoot<"u"&&o instanceof ShadowRoot&&o.host===e.target)return!1;const i=(typeof t.value=="object"&&t.value.include||(()=>[]))();return i.push(n),!i.some(a=>a==null?void 0:a.contains(e.target))}function Ne(e,n){return(typeof n.value=="object"&&n.value.closeConditional||sn)(e)}function cn(e,n,t){const o=typeof t.value=="function"?t.value:t.value.handler;n._clickOutside.lastMousedownWasOutside&&He(e,n,t)&&setTimeout(()=>{Ne(e,t)&&o&&o(e)},0)}function ke(e,n){const t=Le(e);n(document),typeof ShadowRoot<"u"&&t instanceof ShadowRoot&&n(t)}const un={mounted(e,n){const t=i=>cn(i,e,n),o=i=>{e._clickOutside.lastMousedownWasOutside=He(i,e,n)};ke(e,i=>{i.addEventListener("click",t,!0),i.addEventListener("mousedown",o,!0)}),e._clickOutside||(e._clickOutside={lastMousedownWasOutside:!1}),e._clickOutside[n.instance.$.uid]={onClick:t,onMousedown:o}},unmounted(e,n){e._clickOutside&&(ke(e,t=>{var a;if(!t||!((a=e._clickOutside)!=null&&a[n.instance.$.uid]))return;const{onClick:o,onMousedown:i}=e._clickOutside[n.instance.$.uid];t.removeEventListener("click",o,!0),t.removeEventListener("mousedown",i,!0)}),delete e._clickOutside[n.instance.$.uid])}};function fn(e){const{modelValue:n,color:t,...o}=e;return T(kt,{name:"fade-transition",appear:!0},{default:()=>[e.modelValue&&T("div",D({class:["v-overlay__scrim",e.color.backgroundColorClasses.value],style:e.color.backgroundColorStyles.value},o),null)]})}const qe=z({absolute:Boolean,attach:[Boolean,String,Object],closeOnBack:{type:Boolean,default:!0},contained:Boolean,contentClass:null,contentProps:null,disabled:Boolean,opacity:[Number,String],noClickAnimation:Boolean,modelValue:Boolean,persistent:Boolean,scrim:{type:[Boolean,String],default:!0},zIndex:{type:[Number,String],default:2e3},...Jt(),...ct(),...ut(),...on(),...Wt(),...jt(),...ft(),...vt()},"VOverlay"),Re=Me()({name:"VOverlay",directives:{ClickOutside:un},inheritAttrs:!1,props:{_disableGlobalStack:Boolean,...qe()},emits:{"click:outside":e=>!0,"update:modelValue":e=>!0,afterEnter:()=>!0,afterLeave:()=>!0},setup(e,n){let{slots:t,attrs:o,emit:i}=n;const a=_e(e,"modelValue"),r=O({get:()=>a.value,set:S=>{S&&e.disabled||(a.value=S)}}),{teleportTarget:l}=ln(O(()=>e.attach||e.contained)),{themeClasses:f}=dt(e),{rtlClasses:v,isRtl:c}=mt(),{hasContent:m,onAfterLeave:b}=an(e,r),h=gt(O(()=>typeof e.scrim=="string"?e.scrim:null)),{globalTop:d,localTop:u,stackStyles:x}=rn(r,yt(e,"zIndex"),e._disableGlobalStack),{activatorEl:C,activatorRef:p,target:w,targetEl:H,targetRef:L,activatorEvents:A,contentEvents:s,scrimEvents:B}=en(e,{isActive:r,isTop:u}),{dimensionStyles:ee}=ht(e),te=nn(),{scopeId:P}=$e();R(()=>e.disabled,S=>{S&&(r.value=!1)});const E=W(),g=W(),y=W(),{contentStyles:M,updateLocation:F}=$t(e,{isRtl:c,contentEl:y,target:w,isActive:r});Ut(e,{root:E,contentEl:y,targetEl:H,isActive:r,updateLocation:F});function U(S){i("click:outside",S),e.persistent?X():r.value=!1}function k(S){return r.value&&d.value&&(!e.scrim||S.target===g.value)}N&&R(r,S=>{S?window.addEventListener("keydown",_):window.removeEventListener("keydown",_)},{immediate:!0}),bt(()=>{N&&window.removeEventListener("keydown",_)});function _(S){var I,me;S.key==="Escape"&&d.value&&(e.persistent?X():(r.value=!1,(I=y.value)!=null&&I.contains(document.activeElement)&&((me=C.value)==null||me.focus())))}const K=wt();fe(()=>e.closeOnBack,()=>{Rt(K,S=>{d.value&&r.value?(S(!1),e.persistent?X():r.value=!1):S()})});const q=W();R(()=>r.value&&(e.absolute||e.contained)&&l.value==null,S=>{if(S){const I=Et(E.value);I&&I!==document.scrollingElement&&(q.value=I.scrollTop)}});function X(){e.noClickAnimation||y.value&&St(y.value,[{transformOrigin:"center"},{transform:"scale(1.03)"},{transformOrigin:"center"}],{duration:150,easing:Bt})}function ze(){i("afterEnter")}function je(){b(),i("afterLeave")}return Ve(()=>{var S;return T(At,null,[(S=t.activator)==null?void 0:S.call(t,{isActive:r.value,targetRef:L,props:D({ref:p},A.value,e.activatorProps)}),te.value&&m.value&&T(xt,{disabled:!l.value,to:l.value},{default:()=>[T("div",D({class:["v-overlay",{"v-overlay--absolute":e.absolute||e.contained,"v-overlay--active":r.value,"v-overlay--contained":e.contained},f.value,v.value,e.class],style:[x.value,{"--v-overlay-opacity":e.opacity,top:V(q.value)},e.style],ref:E},P,o),[T(fn,D({color:h,modelValue:r.value&&!!e.scrim,ref:g},B.value),null),T(pt,{appear:!0,persisted:!0,transition:e.transition,target:w.value,onAfterEnter:ze,onAfterLeave:je},{default:()=>{var I;return[Pt(T("div",D({ref:y,class:["v-overlay__content",e.contentClass],style:[ee.value,M.value]},s.value,e.contentProps),[(I=t.default)==null?void 0:I.call(t,{isActive:r})]),[[Ot,r.value],[Ct("click-outside"),{handler:U,closeConditional:k,include:()=>[C.value]}]])]}})])]})])}),{activatorEl:C,scrimEl:g,target:w,animateClick:X,contentEl:y,globalTop:d,localTop:u,updateLocation:F}}}),ie=Symbol("Forwarded refs");function se(e,n){let t=e;for(;t;){const o=Reflect.getOwnPropertyDescriptor(t,n);if(o)return o;t=Object.getPrototypeOf(t)}}function vn(e){for(var n=arguments.length,t=new Array(n>1?n-1:0),o=1;o<n;o++)t[o-1]=arguments[o];return e[ie]=t,new Proxy(e,{get(i,a){if(Reflect.has(i,a))return Reflect.get(i,a);if(!(typeof a=="symbol"||a.startsWith("$")||a.startsWith("__"))){for(const r of t)if(r.value&&Reflect.has(r.value,a)){const l=Reflect.get(r.value,a);return typeof l=="function"?l.bind(r.value):l}}},has(i,a){if(Reflect.has(i,a))return!0;if(typeof a=="symbol"||a.startsWith("$")||a.startsWith("__"))return!1;for(const r of t)if(r.value&&Reflect.has(r.value,a))return!0;return!1},set(i,a,r){if(Reflect.has(i,a))return Reflect.set(i,a,r);if(typeof a=="symbol"||a.startsWith("$")||a.startsWith("__"))return!1;for(const l of t)if(l.value&&Reflect.has(l.value,a))return Reflect.set(l.value,a,r);return!1},getOwnPropertyDescriptor(i,a){var l;const r=Reflect.getOwnPropertyDescriptor(i,a);if(r)return r;if(!(typeof a=="symbol"||a.startsWith("$")||a.startsWith("__"))){for(const f of t){if(!f.value)continue;const v=se(f.value,a)??("_"in f.value?se((l=f.value._)==null?void 0:l.setupState,a):void 0);if(v)return v}for(const f of t){const v=f.value&&f.value[ie];if(!v)continue;const c=v.slice();for(;c.length;){const m=c.shift(),b=se(m.value,a);if(b)return b;const h=m.value&&m.value[ie];h&&c.push(...h)}}}}})}const dn=z({fullscreen:Boolean,retainFocus:{type:Boolean,default:!0},scrollable:Boolean,...qe({origin:"center center",scrollStrategy:"block",transition:{component:Tt},zIndex:2400})},"VDialog"),hn=Me()({name:"VDialog",props:dn(),emits:{"update:modelValue":e=>!0,afterLeave:()=>!0},setup(e,n){let{emit:t,slots:o}=n;const i=_e(e,"modelValue"),{scopeId:a}=$e(),r=W();function l(c){var h,d;const m=c.relatedTarget,b=c.target;if(m!==b&&((h=r.value)!=null&&h.contentEl)&&((d=r.value)!=null&&d.globalTop)&&![document,r.value.contentEl].includes(b)&&!r.value.contentEl.contains(b)){const u=Lt(r.value.contentEl);if(!u.length)return;const x=u[0],C=u[u.length-1];m===x?C.focus():x.focus()}}N&&R(()=>i.value&&e.retainFocus,c=>{c?document.addEventListener("focusin",l):document.removeEventListener("focusin",l)},{immediate:!0});function f(){var c;(c=r.value)!=null&&c.contentEl&&!r.value.contentEl.contains(document.activeElement)&&r.value.contentEl.focus({preventScroll:!0})}function v(){t("afterLeave")}return R(i,async c=>{var m;c||(await J(),(m=r.value.activatorEl)==null||m.focus({preventScroll:!0}))}),Ve(()=>{const c=Re.filterProps(e),m=D({"aria-haspopup":"dialog","aria-expanded":String(i.value)},e.activatorProps),b=D({tabindex:-1},e.contentProps);return T(Re,D({ref:r,class:["v-dialog",{"v-dialog--fullscreen":e.fullscreen,"v-dialog--scrollable":e.scrollable},e.class],style:e.style},c,{modelValue:i.value,"onUpdate:modelValue":h=>i.value=h,"aria-modal":"true",activatorProps:m,contentProps:b,role:"dialog",onAfterEnter:f,onAfterLeave:v},a),{activator:o.activator,default:function(){for(var h=arguments.length,d=new Array(h),u=0;u<h;u++)d[u]=arguments[u];return T(Ft,{root:"VDialog"},{default:()=>{var x;return[(x=o.default)==null?void 0:x.call(o,...d)]}})}})}),vn({},r)}});export{yn as C,hn as V,an as a,qe as b,Re as c,Zt as d,Qt as e,vn as f,Yt as g,on as m,$e as u};
1
+ import{_ as Ue,Z as Ge,aH as Ke,S as T,$ as ge,ak as ye,ap as Xe,av as he,E as z,r as W,a3 as N,cn as fe,a as R,co as $,dk as Ye,dl as Ze,dm as be,dn as ne,dp as oe,dq as we,h as O,n as J,dr as Qe,ds as Z,dt as ae,du as Ee,dv as Se,K as V,a7 as xe,dc as Je,w as ve,dw as Be,dx as et,dy as tt,G as de,i as Te,dz as pe,dA as nt,aw as D,dB as ot,db as at,s as j,cl as rt,f as Fe,p as lt,dC as it,dD as st,dE as Le,M as ct,b1 as ut,N as ft,b2 as vt,O as Me,az as _e,P as dt,Q as mt,aD as gt,aE as yt,b4 as ht,o as bt,cp as wt,d9 as Et,ax as St,R as Ve,dF as xt,b6 as pt,aU as Pt,b7 as Ot,b5 as Ct,U as At,cr as kt,dG as Rt,ay as Bt,c$ as Tt,bh as Ft,d1 as Lt}from"./admin-drawer-panel-1pnfvY8O.js";import{n as Mt}from"./main-CMQwJ9aG.js";const _t={name:"ConfirmFooter",props:{confirmText:{type:String,required:!0},disabled:{type:Boolean,default:!1}},emits:["confirm","cancel"]},Vt={class:"confirmFooter"};function Dt(e,n,t,o,i,a){return Ge(),Ke("footer",Vt,[T(he,{class:"confirmButton",disabled:t.disabled,onClick:n[0]||(n[0]=r=>e.$emit("confirm"))},{default:ge(()=>[ye(Xe(t.confirmText),1)]),_:1},8,["disabled"]),T(he,{class:"cancelButton",onClick:n[1]||(n[1]=r=>e.$emit("cancel"))},{default:ge(()=>[ye(" Cancel ")]),_:1})])}const yn=Ue(_t,[["render",Dt],["__scopeId","data-v-24df1550"]]);function re(e,n){return{x:e.x+n.x,y:e.y+n.y}}function It(e,n){return{x:e.x-n.x,y:e.y-n.y}}function Pe(e,n){if(e.side==="top"||e.side==="bottom"){const{side:t,align:o}=e,i=o==="left"?0:o==="center"?n.width/2:o==="right"?n.width:o,a=t==="top"?0:t==="bottom"?n.height:t;return re({x:i,y:a},n)}else if(e.side==="left"||e.side==="right"){const{side:t,align:o}=e,i=t==="left"?0:t==="right"?n.width:t,a=o==="top"?0:o==="center"?n.height/2:o==="bottom"?n.height:o;return re({x:i,y:a},n)}return re({x:n.width/2,y:n.height/2},n)}const De={static:Ht,connected:qt},Wt=z({locationStrategy:{type:[String,Function],default:"static",validator:e=>typeof e=="function"||e in De},location:{type:String,default:"bottom"},origin:{type:String,default:"auto"},offset:[Number,String,Array]},"VOverlay-location-strategies");function $t(e,n){const t=W({}),o=W();N&&fe(()=>!!(n.isActive.value&&e.locationStrategy),a=>{var r,l;R(()=>e.locationStrategy,a),$(()=>{window.removeEventListener("resize",i),o.value=void 0}),window.addEventListener("resize",i,{passive:!0}),typeof e.locationStrategy=="function"?o.value=(r=e.locationStrategy(n,e,t))==null?void 0:r.updateLocation:o.value=(l=De[e.locationStrategy](n,e,t))==null?void 0:l.updateLocation});function i(a){var r;(r=o.value)==null||r.call(o,a)}return{contentStyles:t,updateLocation:o}}function Ht(){}function Nt(e,n){n?e.style.removeProperty("left"):e.style.removeProperty("right");const t=Je(e);return n?t.x+=parseFloat(e.style.right||0):t.x-=parseFloat(e.style.left||0),t.y-=parseFloat(e.style.top||0),t}function qt(e,n,t){(Array.isArray(e.target.value)||Ye(e.target.value))&&Object.assign(t.value,{position:"fixed",top:0,[e.isRtl.value?"right":"left"]:0});const{preferredAnchor:i,preferredOrigin:a}=Ze(()=>{const d=be(n.location,e.isRtl.value),u=n.origin==="overlap"?d:n.origin==="auto"?ne(d):be(n.origin,e.isRtl.value);return d.side===u.side&&d.align===oe(u).align?{preferredAnchor:we(d),preferredOrigin:we(u)}:{preferredAnchor:d,preferredOrigin:u}}),[r,l,f,v]=["minWidth","minHeight","maxWidth","maxHeight"].map(d=>O(()=>{const u=parseFloat(n[d]);return isNaN(u)?1/0:u})),c=O(()=>{if(Array.isArray(n.offset))return n.offset;if(typeof n.offset=="string"){const d=n.offset.split(" ").map(parseFloat);return d.length<2&&d.push(0),d}return typeof n.offset=="number"?[n.offset,0]:[0,0]});let m=!1;const b=new ResizeObserver(()=>{m&&h()});R([e.target,e.contentEl],(d,u)=>{let[x,C]=d,[p,w]=u;p&&!Array.isArray(p)&&b.unobserve(p),x&&!Array.isArray(x)&&b.observe(x),w&&b.unobserve(w),C&&b.observe(C)},{immediate:!0}),$(()=>{b.disconnect()});function h(){if(m=!1,requestAnimationFrame(()=>m=!0),!e.target.value||!e.contentEl.value)return;const d=Qe(e.target.value),u=Nt(e.contentEl.value,e.isRtl.value),x=Z(e.contentEl.value),C=12;x.length||(x.push(document.documentElement),e.contentEl.value.style.top&&e.contentEl.value.style.left||(u.x-=parseFloat(document.documentElement.style.getPropertyValue("--v-body-scroll-x")||0),u.y-=parseFloat(document.documentElement.style.getPropertyValue("--v-body-scroll-y")||0)));const p=x.reduce((P,E)=>{const g=E.getBoundingClientRect(),y=new ae({x:E===document.documentElement?0:g.x,y:E===document.documentElement?0:g.y,width:E.clientWidth,height:E.clientHeight});return P?new ae({x:Math.max(P.left,y.left),y:Math.max(P.top,y.top),width:Math.min(P.right,y.right)-Math.max(P.left,y.left),height:Math.min(P.bottom,y.bottom)-Math.max(P.top,y.top)}):y},void 0);p.x+=C,p.y+=C,p.width-=C*2,p.height-=C*2;let w={anchor:i.value,origin:a.value};function H(P){const E=new ae(u),g=Pe(P.anchor,d),y=Pe(P.origin,E);let{x:M,y:F}=It(g,y);switch(P.anchor.side){case"top":F-=c.value[0];break;case"bottom":F+=c.value[0];break;case"left":M-=c.value[0];break;case"right":M+=c.value[0];break}switch(P.anchor.align){case"top":F-=c.value[1];break;case"bottom":F+=c.value[1];break;case"left":M-=c.value[1];break;case"right":M+=c.value[1];break}return E.x+=M,E.y+=F,E.width=Math.min(E.width,f.value),E.height=Math.min(E.height,v.value),{overflows:Se(E,p),x:M,y:F}}let L=0,A=0;const s={x:0,y:0},B={x:!1,y:!1};let ee=-1;for(;!(ee++>10);){const{x:P,y:E,overflows:g}=H(w);L+=P,A+=E,u.x+=P,u.y+=E;{const y=Ee(w.anchor),M=g.x.before||g.x.after,F=g.y.before||g.y.after;let U=!1;if(["x","y"].forEach(k=>{if(k==="x"&&M&&!B.x||k==="y"&&F&&!B.y){const _={anchor:{...w.anchor},origin:{...w.origin}},K=k==="x"?y==="y"?oe:ne:y==="y"?ne:oe;_.anchor=K(_.anchor),_.origin=K(_.origin);const{overflows:q}=H(_);(q[k].before<=g[k].before&&q[k].after<=g[k].after||q[k].before+q[k].after<(g[k].before+g[k].after)/2)&&(w=_,U=B[k]=!0)}}),U)continue}g.x.before&&(L+=g.x.before,u.x+=g.x.before),g.x.after&&(L-=g.x.after,u.x-=g.x.after),g.y.before&&(A+=g.y.before,u.y+=g.y.before),g.y.after&&(A-=g.y.after,u.y-=g.y.after);{const y=Se(u,p);s.x=p.width-y.x.before-y.x.after,s.y=p.height-y.y.before-y.y.after,L+=y.x.before,u.x+=y.x.before,A+=y.y.before,u.y+=y.y.before}break}const te=Ee(w.anchor);return Object.assign(t.value,{"--v-overlay-anchor-origin":`${w.anchor.side} ${w.anchor.align}`,transformOrigin:`${w.origin.side} ${w.origin.align}`,top:V(le(A)),left:e.isRtl.value?void 0:V(le(L)),right:e.isRtl.value?V(le(-L)):void 0,minWidth:V(te==="y"?Math.min(r.value,d.width):r.value),maxWidth:V(Oe(xe(s.x,r.value===1/0?0:r.value,f.value))),maxHeight:V(Oe(xe(s.y,l.value===1/0?0:l.value,v.value)))}),{available:s,contentBox:u}}return R(()=>[i.value,a.value,n.offset,n.minWidth,n.minHeight,n.maxWidth,n.maxHeight],()=>h()),J(()=>{const d=h();if(!d)return;const{available:u,contentBox:x}=d;x.height>u.y&&requestAnimationFrame(()=>{h(),requestAnimationFrame(()=>{h()})})}),{updateLocation:h}}function le(e){return Math.round(e*devicePixelRatio)/devicePixelRatio}function Oe(e){return Math.ceil(e*devicePixelRatio)/devicePixelRatio}let ce=!0;const Q=[];function zt(e){!ce||Q.length?(Q.push(e),ue()):(ce=!1,e(),ue())}let Ce=-1;function ue(){cancelAnimationFrame(Ce),Ce=requestAnimationFrame(()=>{const e=Q.shift();e&&e(),Q.length?ue():ce=!0})}const Y={none:null,close:Gt,block:Kt,reposition:Xt},jt=z({scrollStrategy:{type:[String,Function],default:"block",validator:e=>typeof e=="function"||e in Y}},"VOverlay-scroll-strategies");function Ut(e,n){if(!N)return;let t;ve(async()=>{t==null||t.stop(),n.isActive.value&&e.scrollStrategy&&(t=Be(),await new Promise(o=>setTimeout(o)),t.active&&t.run(()=>{var o;typeof e.scrollStrategy=="function"?e.scrollStrategy(n,e,t):(o=Y[e.scrollStrategy])==null||o.call(Y,n,e,t)}))}),$(()=>{t==null||t.stop()})}function Gt(e){function n(t){e.isActive.value=!1}Ie(e.targetEl.value??e.contentEl.value,n)}function Kt(e,n){var r;const t=(r=e.root.value)==null?void 0:r.offsetParent,o=[...new Set([...Z(e.targetEl.value,n.contained?t:void 0),...Z(e.contentEl.value,n.contained?t:void 0)])].filter(l=>!l.classList.contains("v-overlay-scroll-blocked")),i=window.innerWidth-document.documentElement.offsetWidth,a=(l=>et(l)&&l)(t||document.documentElement);a&&e.root.value.classList.add("v-overlay--scroll-blocked"),o.forEach((l,f)=>{l.style.setProperty("--v-body-scroll-x",V(-l.scrollLeft)),l.style.setProperty("--v-body-scroll-y",V(-l.scrollTop)),l!==document.documentElement&&l.style.setProperty("--v-scrollbar-offset",V(i)),l.classList.add("v-overlay-scroll-blocked")}),$(()=>{o.forEach((l,f)=>{const v=parseFloat(l.style.getPropertyValue("--v-body-scroll-x")),c=parseFloat(l.style.getPropertyValue("--v-body-scroll-y")),m=l.style.scrollBehavior;l.style.scrollBehavior="auto",l.style.removeProperty("--v-body-scroll-x"),l.style.removeProperty("--v-body-scroll-y"),l.style.removeProperty("--v-scrollbar-offset"),l.classList.remove("v-overlay-scroll-blocked"),l.scrollLeft=-v,l.scrollTop=-c,l.style.scrollBehavior=m}),a&&e.root.value.classList.remove("v-overlay--scroll-blocked")})}function Xt(e,n,t){let o=!1,i=-1,a=-1;function r(l){zt(()=>{var c,m;const f=performance.now();(m=(c=e.updateLocation).value)==null||m.call(c,l),o=(performance.now()-f)/(1e3/60)>2})}a=(typeof requestIdleCallback>"u"?l=>l():requestIdleCallback)(()=>{t.run(()=>{Ie(e.targetEl.value??e.contentEl.value,l=>{o?(cancelAnimationFrame(i),i=requestAnimationFrame(()=>{i=requestAnimationFrame(()=>{r(l)})})):r(l)})})}),$(()=>{typeof cancelIdleCallback<"u"&&cancelIdleCallback(a),cancelAnimationFrame(i)})}function Ie(e,n){const t=[document,...Z(e)];t.forEach(o=>{o.addEventListener("scroll",n,{passive:!0})}),$(()=>{t.forEach(o=>{o.removeEventListener("scroll",n)})})}const Yt=Symbol.for("vuetify:v-menu"),Zt=z({closeDelay:[Number,String],openDelay:[Number,String]},"delay");function Qt(e,n){let t=()=>{};function o(r){t==null||t();const l=Number(r?e.openDelay:e.closeDelay);return new Promise(f=>{t=tt(l,()=>{n==null||n(r),f(r)})})}function i(){return o(!0)}function a(){return o(!1)}return{clearDelay:t,runOpenDelay:i,runCloseDelay:a}}const Jt=z({target:[String,Object],activator:[String,Object],activatorProps:{type:Object,default:()=>({})},openOnClick:{type:Boolean,default:void 0},openOnHover:Boolean,openOnFocus:{type:Boolean,default:void 0},closeOnContentClick:Boolean,...Zt()},"VOverlay-activator");function en(e,n){let{isActive:t,isTop:o}=n;const i=de("useActivator"),a=W();let r=!1,l=!1,f=!0;const v=O(()=>e.openOnFocus||e.openOnFocus==null&&e.openOnHover),c=O(()=>e.openOnClick||e.openOnClick==null&&!e.openOnHover&&!v.value),{runOpenDelay:m,runCloseDelay:b}=Qt(e,s=>{s===(e.openOnHover&&r||v.value&&l)&&!(e.openOnHover&&t.value&&!o.value)&&(t.value!==s&&(f=!0),t.value=s)}),h=W(),d={onClick:s=>{s.stopPropagation(),a.value=s.currentTarget||s.target,t.value||(h.value=[s.clientX,s.clientY]),t.value=!t.value},onMouseenter:s=>{var B;(B=s.sourceCapabilities)!=null&&B.firesTouchEvents||(r=!0,a.value=s.currentTarget||s.target,m())},onMouseleave:s=>{r=!1,b()},onFocus:s=>{at(s.target,":focus-visible")!==!1&&(l=!0,s.stopPropagation(),a.value=s.currentTarget||s.target,m())},onBlur:s=>{l=!1,s.stopPropagation(),b()}},u=O(()=>{const s={};return c.value&&(s.onClick=d.onClick),e.openOnHover&&(s.onMouseenter=d.onMouseenter,s.onMouseleave=d.onMouseleave),v.value&&(s.onFocus=d.onFocus,s.onBlur=d.onBlur),s}),x=O(()=>{const s={};if(e.openOnHover&&(s.onMouseenter=()=>{r=!0,m()},s.onMouseleave=()=>{r=!1,b()}),v.value&&(s.onFocusin=()=>{l=!0,m()},s.onFocusout=()=>{l=!1,b()}),e.closeOnContentClick){const B=Te(Yt,null);s.onClick=()=>{t.value=!1,B==null||B.closeParents()}}return s}),C=O(()=>{const s={};return e.openOnHover&&(s.onMouseenter=()=>{f&&(r=!0,f=!1,m())},s.onMouseleave=()=>{r=!1,b()}),s});R(o,s=>{s&&(e.openOnHover&&!r&&(!v.value||!l)||v.value&&!l&&(!e.openOnHover||!r))&&(t.value=!1)}),R(t,s=>{s||setTimeout(()=>{h.value=void 0})},{flush:"post"});const p=pe();ve(()=>{p.value&&J(()=>{a.value=p.el})});const w=pe(),H=O(()=>e.target==="cursor"&&h.value?h.value:w.value?w.el:We(e.target,i)||a.value),L=O(()=>Array.isArray(H.value)?void 0:H.value);let A;return R(()=>!!e.activator,s=>{s&&N?(A=Be(),A.run(()=>{tn(e,i,{activatorEl:a,activatorEvents:u})})):A&&A.stop()},{flush:"post",immediate:!0}),$(()=>{A==null||A.stop()}),{activatorEl:a,activatorRef:p,target:H,targetEl:L,targetRef:w,activatorEvents:u,contentEvents:x,scrimEvents:C}}function tn(e,n,t){let{activatorEl:o,activatorEvents:i}=t;R(()=>e.activator,(f,v)=>{if(v&&f!==v){const c=l(v);c&&r(c)}f&&J(()=>a())},{immediate:!0}),R(()=>e.activatorProps,()=>{a()}),$(()=>{r()});function a(){let f=arguments.length>0&&arguments[0]!==void 0?arguments[0]:l(),v=arguments.length>1&&arguments[1]!==void 0?arguments[1]:e.activatorProps;f&&nt(f,D(i.value,v))}function r(){let f=arguments.length>0&&arguments[0]!==void 0?arguments[0]:l(),v=arguments.length>1&&arguments[1]!==void 0?arguments[1]:e.activatorProps;f&&ot(f,D(i.value,v))}function l(){let f=arguments.length>0&&arguments[0]!==void 0?arguments[0]:e.activator;const v=We(f,n);return o.value=(v==null?void 0:v.nodeType)===Node.ELEMENT_NODE?v:void 0,o.value}}function We(e,n){var o,i;if(!e)return;let t;if(e==="parent"){let a=(i=(o=n==null?void 0:n.proxy)==null?void 0:o.$el)==null?void 0:i.parentNode;for(;a!=null&&a.hasAttribute("data-no-activator");)a=a.parentNode;t=a}else typeof e=="string"?t=document.querySelector(e):"$el"in e?t=e.$el:t=e;return t}function nn(){if(!N)return j(!1);const{ssr:e}=Mt();if(e){const n=j(!1);return rt(()=>{n.value=!0}),n}else return j(!0)}const on=z({eager:Boolean},"lazy");function an(e,n){const t=j(!1),o=O(()=>t.value||e.eager||n.value);R(n,()=>t.value=!0);function i(){e.eager||(t.value=!1)}return{isBooted:t,hasContent:o,onAfterLeave:i}}function $e(){const n=de("useScopeId").vnode.scopeId;return{scopeId:n?{[n]:""}:void 0}}const Ae=Symbol.for("vuetify:stack"),G=Fe([]);function rn(e,n,t){const o=de("useStack"),i=!t,a=Te(Ae,void 0),r=Fe({activeChildren:new Set});lt(Ae,r);const l=j(+n.value);fe(e,()=>{var m;const c=(m=G.at(-1))==null?void 0:m[1];l.value=c?c+10:+n.value,i&&G.push([o.uid,l.value]),a==null||a.activeChildren.add(o.uid),$(()=>{if(i){const b=it(G).findIndex(h=>h[0]===o.uid);G.splice(b,1)}a==null||a.activeChildren.delete(o.uid)})});const f=j(!0);i&&ve(()=>{var m;const c=((m=G.at(-1))==null?void 0:m[0])===o.uid;setTimeout(()=>f.value=c)});const v=O(()=>!r.activeChildren.size);return{globalTop:st(f),localTop:v,stackStyles:O(()=>({zIndex:l.value}))}}function ln(e){return{teleportTarget:O(()=>{const t=e.value;if(t===!0||!N)return;const o=t===!1?document.body:typeof t=="string"?document.querySelector(t):t;if(o==null)return;let i=o.querySelector(":scope > .v-overlay-container");return i||(i=document.createElement("div"),i.className="v-overlay-container",o.appendChild(i)),i})}}function sn(){return!0}function He(e,n,t){if(!e||Ne(e,t)===!1)return!1;const o=Le(n);if(typeof ShadowRoot<"u"&&o instanceof ShadowRoot&&o.host===e.target)return!1;const i=(typeof t.value=="object"&&t.value.include||(()=>[]))();return i.push(n),!i.some(a=>a==null?void 0:a.contains(e.target))}function Ne(e,n){return(typeof n.value=="object"&&n.value.closeConditional||sn)(e)}function cn(e,n,t){const o=typeof t.value=="function"?t.value:t.value.handler;n._clickOutside.lastMousedownWasOutside&&He(e,n,t)&&setTimeout(()=>{Ne(e,t)&&o&&o(e)},0)}function ke(e,n){const t=Le(e);n(document),typeof ShadowRoot<"u"&&t instanceof ShadowRoot&&n(t)}const un={mounted(e,n){const t=i=>cn(i,e,n),o=i=>{e._clickOutside.lastMousedownWasOutside=He(i,e,n)};ke(e,i=>{i.addEventListener("click",t,!0),i.addEventListener("mousedown",o,!0)}),e._clickOutside||(e._clickOutside={lastMousedownWasOutside:!1}),e._clickOutside[n.instance.$.uid]={onClick:t,onMousedown:o}},unmounted(e,n){e._clickOutside&&(ke(e,t=>{var a;if(!t||!((a=e._clickOutside)!=null&&a[n.instance.$.uid]))return;const{onClick:o,onMousedown:i}=e._clickOutside[n.instance.$.uid];t.removeEventListener("click",o,!0),t.removeEventListener("mousedown",i,!0)}),delete e._clickOutside[n.instance.$.uid])}};function fn(e){const{modelValue:n,color:t,...o}=e;return T(kt,{name:"fade-transition",appear:!0},{default:()=>[e.modelValue&&T("div",D({class:["v-overlay__scrim",e.color.backgroundColorClasses.value],style:e.color.backgroundColorStyles.value},o),null)]})}const qe=z({absolute:Boolean,attach:[Boolean,String,Object],closeOnBack:{type:Boolean,default:!0},contained:Boolean,contentClass:null,contentProps:null,disabled:Boolean,opacity:[Number,String],noClickAnimation:Boolean,modelValue:Boolean,persistent:Boolean,scrim:{type:[Boolean,String],default:!0},zIndex:{type:[Number,String],default:2e3},...Jt(),...ct(),...ut(),...on(),...Wt(),...jt(),...ft(),...vt()},"VOverlay"),Re=Me()({name:"VOverlay",directives:{ClickOutside:un},inheritAttrs:!1,props:{_disableGlobalStack:Boolean,...qe()},emits:{"click:outside":e=>!0,"update:modelValue":e=>!0,afterEnter:()=>!0,afterLeave:()=>!0},setup(e,n){let{slots:t,attrs:o,emit:i}=n;const a=_e(e,"modelValue"),r=O({get:()=>a.value,set:S=>{S&&e.disabled||(a.value=S)}}),{teleportTarget:l}=ln(O(()=>e.attach||e.contained)),{themeClasses:f}=dt(e),{rtlClasses:v,isRtl:c}=mt(),{hasContent:m,onAfterLeave:b}=an(e,r),h=gt(O(()=>typeof e.scrim=="string"?e.scrim:null)),{globalTop:d,localTop:u,stackStyles:x}=rn(r,yt(e,"zIndex"),e._disableGlobalStack),{activatorEl:C,activatorRef:p,target:w,targetEl:H,targetRef:L,activatorEvents:A,contentEvents:s,scrimEvents:B}=en(e,{isActive:r,isTop:u}),{dimensionStyles:ee}=ht(e),te=nn(),{scopeId:P}=$e();R(()=>e.disabled,S=>{S&&(r.value=!1)});const E=W(),g=W(),y=W(),{contentStyles:M,updateLocation:F}=$t(e,{isRtl:c,contentEl:y,target:w,isActive:r});Ut(e,{root:E,contentEl:y,targetEl:H,isActive:r,updateLocation:F});function U(S){i("click:outside",S),e.persistent?X():r.value=!1}function k(S){return r.value&&d.value&&(!e.scrim||S.target===g.value)}N&&R(r,S=>{S?window.addEventListener("keydown",_):window.removeEventListener("keydown",_)},{immediate:!0}),bt(()=>{N&&window.removeEventListener("keydown",_)});function _(S){var I,me;S.key==="Escape"&&d.value&&(e.persistent?X():(r.value=!1,(I=y.value)!=null&&I.contains(document.activeElement)&&((me=C.value)==null||me.focus())))}const K=wt();fe(()=>e.closeOnBack,()=>{Rt(K,S=>{d.value&&r.value?(S(!1),e.persistent?X():r.value=!1):S()})});const q=W();R(()=>r.value&&(e.absolute||e.contained)&&l.value==null,S=>{if(S){const I=Et(E.value);I&&I!==document.scrollingElement&&(q.value=I.scrollTop)}});function X(){e.noClickAnimation||y.value&&St(y.value,[{transformOrigin:"center"},{transform:"scale(1.03)"},{transformOrigin:"center"}],{duration:150,easing:Bt})}function ze(){i("afterEnter")}function je(){b(),i("afterLeave")}return Ve(()=>{var S;return T(At,null,[(S=t.activator)==null?void 0:S.call(t,{isActive:r.value,targetRef:L,props:D({ref:p},A.value,e.activatorProps)}),te.value&&m.value&&T(xt,{disabled:!l.value,to:l.value},{default:()=>[T("div",D({class:["v-overlay",{"v-overlay--absolute":e.absolute||e.contained,"v-overlay--active":r.value,"v-overlay--contained":e.contained},f.value,v.value,e.class],style:[x.value,{"--v-overlay-opacity":e.opacity,top:V(q.value)},e.style],ref:E},P,o),[T(fn,D({color:h,modelValue:r.value&&!!e.scrim,ref:g},B.value),null),T(pt,{appear:!0,persisted:!0,transition:e.transition,target:w.value,onAfterEnter:ze,onAfterLeave:je},{default:()=>{var I;return[Pt(T("div",D({ref:y,class:["v-overlay__content",e.contentClass],style:[ee.value,M.value]},s.value,e.contentProps),[(I=t.default)==null?void 0:I.call(t,{isActive:r})]),[[Ot,r.value],[Ct("click-outside"),{handler:U,closeConditional:k,include:()=>[C.value]}]])]}})])]})])}),{activatorEl:C,scrimEl:g,target:w,animateClick:X,contentEl:y,globalTop:d,localTop:u,updateLocation:F}}}),ie=Symbol("Forwarded refs");function se(e,n){let t=e;for(;t;){const o=Reflect.getOwnPropertyDescriptor(t,n);if(o)return o;t=Object.getPrototypeOf(t)}}function vn(e){for(var n=arguments.length,t=new Array(n>1?n-1:0),o=1;o<n;o++)t[o-1]=arguments[o];return e[ie]=t,new Proxy(e,{get(i,a){if(Reflect.has(i,a))return Reflect.get(i,a);if(!(typeof a=="symbol"||a.startsWith("$")||a.startsWith("__"))){for(const r of t)if(r.value&&Reflect.has(r.value,a)){const l=Reflect.get(r.value,a);return typeof l=="function"?l.bind(r.value):l}}},has(i,a){if(Reflect.has(i,a))return!0;if(typeof a=="symbol"||a.startsWith("$")||a.startsWith("__"))return!1;for(const r of t)if(r.value&&Reflect.has(r.value,a))return!0;return!1},set(i,a,r){if(Reflect.has(i,a))return Reflect.set(i,a,r);if(typeof a=="symbol"||a.startsWith("$")||a.startsWith("__"))return!1;for(const l of t)if(l.value&&Reflect.has(l.value,a))return Reflect.set(l.value,a,r);return!1},getOwnPropertyDescriptor(i,a){var l;const r=Reflect.getOwnPropertyDescriptor(i,a);if(r)return r;if(!(typeof a=="symbol"||a.startsWith("$")||a.startsWith("__"))){for(const f of t){if(!f.value)continue;const v=se(f.value,a)??("_"in f.value?se((l=f.value._)==null?void 0:l.setupState,a):void 0);if(v)return v}for(const f of t){const v=f.value&&f.value[ie];if(!v)continue;const c=v.slice();for(;c.length;){const m=c.shift(),b=se(m.value,a);if(b)return b;const h=m.value&&m.value[ie];h&&c.push(...h)}}}}})}const dn=z({fullscreen:Boolean,retainFocus:{type:Boolean,default:!0},scrollable:Boolean,...qe({origin:"center center",scrollStrategy:"block",transition:{component:Tt},zIndex:2400})},"VDialog"),hn=Me()({name:"VDialog",props:dn(),emits:{"update:modelValue":e=>!0,afterLeave:()=>!0},setup(e,n){let{emit:t,slots:o}=n;const i=_e(e,"modelValue"),{scopeId:a}=$e(),r=W();function l(c){var h,d;const m=c.relatedTarget,b=c.target;if(m!==b&&((h=r.value)!=null&&h.contentEl)&&((d=r.value)!=null&&d.globalTop)&&![document,r.value.contentEl].includes(b)&&!r.value.contentEl.contains(b)){const u=Lt(r.value.contentEl);if(!u.length)return;const x=u[0],C=u[u.length-1];m===x?C.focus():x.focus()}}N&&R(()=>i.value&&e.retainFocus,c=>{c?document.addEventListener("focusin",l):document.removeEventListener("focusin",l)},{immediate:!0});function f(){var c;(c=r.value)!=null&&c.contentEl&&!r.value.contentEl.contains(document.activeElement)&&r.value.contentEl.focus({preventScroll:!0})}function v(){t("afterLeave")}return R(i,async c=>{var m;c||(await J(),(m=r.value.activatorEl)==null||m.focus({preventScroll:!0}))}),Ve(()=>{const c=Re.filterProps(e),m=D({"aria-haspopup":"dialog","aria-expanded":String(i.value)},e.activatorProps),b=D({tabindex:-1},e.contentProps);return T(Re,D({ref:r,class:["v-dialog",{"v-dialog--fullscreen":e.fullscreen,"v-dialog--scrollable":e.scrollable},e.class],style:e.style},c,{modelValue:i.value,"onUpdate:modelValue":h=>i.value=h,"aria-modal":"true",activatorProps:m,contentProps:b,role:"dialog",onAfterEnter:f,onAfterLeave:v},a),{activator:o.activator,default:function(){for(var h=arguments.length,d=new Array(h),u=0;u<h;u++)d[u]=arguments[u];return T(Ft,{root:"VDialog"},{default:()=>{var x;return[(x=o.default)==null?void 0:x.call(o,...d)]}})}})}),vn({},r)}});export{yn as C,hn as V,an as a,qe as b,Re as c,Zt as d,Qt as e,vn as f,Yt as g,on as m,$e as u};