codex 1.5.13__py3-none-any.whl → 1.5.13a1__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 (401) hide show
  1. codex/applications/websocket.py +7 -1
  2. codex/librarian/importer/query_fks.py +0 -1
  3. codex/serializers/browser/settings.py +1 -0
  4. codex/serializers/choices.py +2 -1
  5. codex/settings/settings.py +5 -0
  6. codex/signals/django_signals.py +6 -0
  7. codex/static_root/assets/{VCheckbox-Wdu19ZuZ.50f2bf3b5ce5.js → VCheckbox-BhYVYaMC.16bd6f6362b0.js} +1 -1
  8. codex/static_root/assets/VCheckbox-BhYVYaMC.16bd6f6362b0.js.br +0 -0
  9. codex/static_root/assets/VCheckbox-BhYVYaMC.16bd6f6362b0.js.gz +0 -0
  10. codex/static_root/assets/{VCheckbox-Wdu19ZuZ.js → VCheckbox-BhYVYaMC.js} +1 -1
  11. codex/static_root/assets/VCheckbox-BhYVYaMC.js.br +0 -0
  12. codex/static_root/assets/VCheckbox-BhYVYaMC.js.gz +0 -0
  13. codex/static_root/assets/{VCheckboxBtn-C7NngFC8.bd12ea5cdbb2.js → VCheckboxBtn-DU3VN-Xb.2d8fa2446be8.js} +1 -1
  14. codex/static_root/assets/VCheckboxBtn-DU3VN-Xb.2d8fa2446be8.js.br +0 -0
  15. codex/static_root/assets/VCheckboxBtn-DU3VN-Xb.2d8fa2446be8.js.gz +0 -0
  16. codex/static_root/assets/{VCheckboxBtn-C7NngFC8.js → VCheckboxBtn-DU3VN-Xb.js} +1 -1
  17. codex/static_root/assets/VCheckboxBtn-DU3VN-Xb.js.br +0 -0
  18. codex/static_root/assets/VCheckboxBtn-DU3VN-Xb.js.gz +0 -0
  19. codex/static_root/assets/{VCombobox-DxNlm_ji.11d317a5dbb0.js → VCombobox-Cn-5-cTy.452005709bb8.js} +1 -1
  20. codex/static_root/assets/VCombobox-Cn-5-cTy.452005709bb8.js.br +0 -0
  21. codex/static_root/assets/VCombobox-Cn-5-cTy.452005709bb8.js.gz +0 -0
  22. codex/static_root/assets/{VCombobox-DxNlm_ji.js → VCombobox-Cn-5-cTy.js} +1 -1
  23. codex/static_root/assets/VCombobox-Cn-5-cTy.js.br +0 -0
  24. codex/static_root/assets/VCombobox-Cn-5-cTy.js.gz +0 -0
  25. codex/static_root/assets/VDataTableVirtual-DSGeBVn-.50d16425be49.js +1 -0
  26. codex/static_root/assets/VDataTableVirtual-DSGeBVn-.50d16425be49.js.br +0 -0
  27. codex/static_root/assets/VDataTableVirtual-DSGeBVn-.50d16425be49.js.gz +0 -0
  28. codex/static_root/assets/VDataTableVirtual-DSGeBVn-.js +1 -0
  29. codex/static_root/assets/VDataTableVirtual-DSGeBVn-.js.br +0 -0
  30. codex/static_root/assets/VDataTableVirtual-DSGeBVn-.js.gz +0 -0
  31. codex/static_root/assets/{VExpansionPanel-1dRZTsNe.6213946f43dd.js → VExpansionPanel-CFK2fwIU.a2476e647746.js} +1 -1
  32. codex/static_root/assets/VExpansionPanel-CFK2fwIU.a2476e647746.js.br +0 -0
  33. codex/static_root/assets/VExpansionPanel-CFK2fwIU.a2476e647746.js.gz +0 -0
  34. codex/static_root/assets/{VExpansionPanel-1dRZTsNe.js → VExpansionPanel-CFK2fwIU.js} +1 -1
  35. codex/static_root/assets/VExpansionPanel-CFK2fwIU.js.br +0 -0
  36. codex/static_root/assets/VExpansionPanel-CFK2fwIU.js.gz +0 -0
  37. codex/static_root/assets/{VMain-BVEH6Gtw.51ef468a0780.js → VMain-INwViH5C.09fe2444fa41.js} +1 -1
  38. codex/static_root/assets/VMain-INwViH5C.09fe2444fa41.js.br +0 -0
  39. codex/static_root/assets/VMain-INwViH5C.09fe2444fa41.js.gz +0 -0
  40. codex/static_root/assets/{VMain-BVEH6Gtw.js → VMain-INwViH5C.js} +1 -1
  41. codex/static_root/assets/VMain-INwViH5C.js.br +0 -0
  42. codex/static_root/assets/VMain-INwViH5C.js.gz +0 -0
  43. codex/static_root/assets/{VRadioGroup-D1WV2cpK.83ba2e5689fd.js → VRadioGroup-yW5J7vpP.9284804f0755.js} +1 -1
  44. codex/static_root/assets/VRadioGroup-yW5J7vpP.9284804f0755.js.br +0 -0
  45. codex/static_root/assets/VRadioGroup-yW5J7vpP.9284804f0755.js.gz +0 -0
  46. codex/static_root/assets/{VRadioGroup-D1WV2cpK.js → VRadioGroup-yW5J7vpP.js} +1 -1
  47. codex/static_root/assets/VRadioGroup-yW5J7vpP.js.br +0 -0
  48. codex/static_root/assets/VRadioGroup-yW5J7vpP.js.gz +0 -0
  49. codex/static_root/assets/{VSelect-BVyqMxyX.4a54cd987085.js → VSelect-BVPuxXum.857e48212e61.js} +1 -1
  50. codex/static_root/assets/VSelect-BVPuxXum.857e48212e61.js.br +0 -0
  51. codex/static_root/assets/VSelect-BVPuxXum.857e48212e61.js.gz +0 -0
  52. codex/static_root/assets/{VSelect-BVyqMxyX.js → VSelect-BVPuxXum.js} +1 -1
  53. codex/static_root/assets/VSelect-BVPuxXum.js.br +0 -0
  54. codex/static_root/assets/VSelect-BVPuxXum.js.gz +0 -0
  55. codex/static_root/assets/{VSelectionControl-CC9aC7ZT.2db18d99af8b.js → VSelectionControl-Cw_49nCw.5c27c89dfa8d.js} +1 -1
  56. codex/static_root/assets/VSelectionControl-Cw_49nCw.5c27c89dfa8d.js.br +0 -0
  57. codex/static_root/assets/VSelectionControl-Cw_49nCw.5c27c89dfa8d.js.gz +0 -0
  58. codex/static_root/assets/{VSelectionControl-CC9aC7ZT.js → VSelectionControl-Cw_49nCw.js} +1 -1
  59. codex/static_root/assets/VSelectionControl-Cw_49nCw.js.br +0 -0
  60. codex/static_root/assets/VSelectionControl-Cw_49nCw.js.gz +0 -0
  61. codex/static_root/assets/{VSlideGroup-D4n-jSgi.686cc428f5fe.js → VSlideGroup-j-MAY_Bg.b0bc582bbe57.js} +1 -1
  62. codex/static_root/assets/VSlideGroup-j-MAY_Bg.b0bc582bbe57.js.br +0 -0
  63. codex/static_root/assets/VSlideGroup-j-MAY_Bg.b0bc582bbe57.js.gz +0 -0
  64. codex/static_root/assets/{VSlideGroup-D4n-jSgi.js → VSlideGroup-j-MAY_Bg.js} +1 -1
  65. codex/static_root/assets/VSlideGroup-j-MAY_Bg.js.br +0 -0
  66. codex/static_root/assets/VSlideGroup-j-MAY_Bg.js.gz +0 -0
  67. codex/static_root/assets/{VTable-DioYRJkC.c8638b2267ed.js → VTable-CJvZKpVL.3b4ea434b0cc.js} +1 -1
  68. codex/static_root/assets/VTable-CJvZKpVL.3b4ea434b0cc.js.br +0 -0
  69. codex/static_root/assets/VTable-CJvZKpVL.3b4ea434b0cc.js.gz +0 -0
  70. codex/static_root/assets/{VTable-DioYRJkC.js → VTable-CJvZKpVL.js} +1 -1
  71. codex/static_root/assets/VTable-CJvZKpVL.js.br +0 -0
  72. codex/static_root/assets/VTable-CJvZKpVL.js.gz +0 -0
  73. codex/static_root/assets/{VToolbar-DLtG5Ngs.e32539656f6d.js → VToolbar-DGnoHqIM.056b34e03836.js} +2 -2
  74. codex/static_root/assets/VToolbar-DGnoHqIM.056b34e03836.js.br +0 -0
  75. codex/static_root/assets/VToolbar-DGnoHqIM.056b34e03836.js.gz +0 -0
  76. codex/static_root/assets/{VToolbar-DLtG5Ngs.js → VToolbar-DGnoHqIM.js} +2 -2
  77. codex/static_root/assets/VToolbar-DGnoHqIM.js.br +0 -0
  78. codex/static_root/assets/VToolbar-DGnoHqIM.js.gz +0 -0
  79. codex/static_root/assets/{VWindowItem-D-OB7e0u.ef9bcb84a01e.js → VWindowItem-ffK83nqv.30540c7dd0de.js} +1 -1
  80. codex/static_root/assets/VWindowItem-ffK83nqv.30540c7dd0de.js.br +0 -0
  81. codex/static_root/assets/VWindowItem-ffK83nqv.30540c7dd0de.js.gz +0 -0
  82. codex/static_root/assets/{VWindowItem-D-OB7e0u.js → VWindowItem-ffK83nqv.js} +1 -1
  83. codex/static_root/assets/VWindowItem-ffK83nqv.js.br +0 -0
  84. codex/static_root/assets/VWindowItem-ffK83nqv.js.gz +0 -0
  85. codex/static_root/assets/{admin-BwXMQOyX.8c44117c2b63.js → admin-Brv3CazB.f1056b40e573.js} +1 -1
  86. codex/static_root/assets/admin-Brv3CazB.f1056b40e573.js.br +0 -0
  87. codex/static_root/assets/admin-Brv3CazB.f1056b40e573.js.gz +0 -0
  88. codex/static_root/assets/{admin-BwXMQOyX.js → admin-Brv3CazB.js} +1 -1
  89. codex/static_root/assets/admin-Brv3CazB.js.br +0 -0
  90. codex/static_root/assets/admin-Brv3CazB.js.gz +0 -0
  91. codex/static_root/assets/{admin-drawer-panel-CGj6J0rX.cc680f2603da.js → admin-drawer-panel-BaTVOySr.13384915fb3d.js} +2 -2
  92. codex/static_root/assets/admin-drawer-panel-BaTVOySr.13384915fb3d.js.br +0 -0
  93. codex/static_root/assets/admin-drawer-panel-BaTVOySr.13384915fb3d.js.gz +0 -0
  94. codex/static_root/assets/{admin-drawer-panel-CGj6J0rX.js → admin-drawer-panel-BaTVOySr.js} +2 -2
  95. codex/static_root/assets/admin-drawer-panel-BaTVOySr.js.br +0 -0
  96. codex/static_root/assets/admin-drawer-panel-BaTVOySr.js.gz +0 -0
  97. codex/static_root/assets/browser-B_L23BWR.b9a4d6a229da.js +1 -0
  98. codex/static_root/assets/browser-B_L23BWR.b9a4d6a229da.js.br +0 -0
  99. codex/static_root/assets/browser-B_L23BWR.b9a4d6a229da.js.gz +0 -0
  100. codex/static_root/assets/browser-B_L23BWR.js +1 -0
  101. codex/static_root/assets/browser-B_L23BWR.js.br +0 -0
  102. codex/static_root/assets/browser-B_L23BWR.js.gz +0 -0
  103. codex/static_root/assets/{browser-CTxEKlCx.211d729d9165.css → browser-DPrg02Yw.58f1d3a234da.css} +1 -1
  104. codex/static_root/assets/browser-DPrg02Yw.58f1d3a234da.css.br +0 -0
  105. codex/static_root/assets/browser-DPrg02Yw.58f1d3a234da.css.gz +0 -0
  106. codex/static_root/assets/{browser-CTxEKlCx.css → browser-DPrg02Yw.css} +1 -1
  107. codex/static_root/assets/browser-DPrg02Yw.css.br +0 -0
  108. codex/static_root/assets/browser-DPrg02Yw.css.gz +0 -0
  109. codex/static_root/assets/{change-password-dialog-DDvVSrWH.915709700c5f.js → change-password-dialog-BB2k5ybG.be3d350210a0.js} +1 -1
  110. codex/static_root/assets/change-password-dialog-BB2k5ybG.be3d350210a0.js.br +0 -0
  111. codex/static_root/assets/change-password-dialog-BB2k5ybG.be3d350210a0.js.gz +0 -0
  112. codex/static_root/assets/{change-password-dialog-DDvVSrWH.js → change-password-dialog-BB2k5ybG.js} +1 -1
  113. codex/static_root/assets/change-password-dialog-BB2k5ybG.js.br +0 -0
  114. codex/static_root/assets/change-password-dialog-BB2k5ybG.js.gz +0 -0
  115. codex/static_root/assets/{confirm-dialog-Bf3Sde_o.b437109b579e.js → confirm-dialog-B35n3X_R.9bcc98e62a19.js} +1 -1
  116. codex/static_root/assets/confirm-dialog-B35n3X_R.9bcc98e62a19.js.br +0 -0
  117. codex/static_root/assets/confirm-dialog-B35n3X_R.9bcc98e62a19.js.gz +0 -0
  118. codex/static_root/assets/{confirm-dialog-Bf3Sde_o.js → confirm-dialog-B35n3X_R.js} +1 -1
  119. codex/static_root/assets/confirm-dialog-B35n3X_R.js.br +0 -0
  120. codex/static_root/assets/confirm-dialog-B35n3X_R.js.gz +0 -0
  121. codex/static_root/assets/{confirm-footer-CLwOC3F0.js → confirm-footer-DtV70TTy.3e37806e830f.js} +1 -1
  122. codex/static_root/assets/confirm-footer-DtV70TTy.3e37806e830f.js.br +0 -0
  123. codex/static_root/assets/confirm-footer-DtV70TTy.3e37806e830f.js.gz +0 -0
  124. codex/static_root/assets/{confirm-footer-CLwOC3F0.d25d9085b300.js → confirm-footer-DtV70TTy.js} +1 -1
  125. codex/static_root/assets/confirm-footer-DtV70TTy.js.br +0 -0
  126. codex/static_root/assets/confirm-footer-DtV70TTy.js.gz +0 -0
  127. codex/static_root/assets/{datetime-column-DGfoC2Ap.ef9499c6bca8.js → datetime-column-BBAvTjqs.767ba5d8af6c.js} +1 -1
  128. codex/static_root/assets/datetime-column-BBAvTjqs.767ba5d8af6c.js.br +0 -0
  129. codex/static_root/assets/datetime-column-BBAvTjqs.767ba5d8af6c.js.gz +0 -0
  130. codex/static_root/assets/{datetime-column-DGfoC2Ap.js → datetime-column-BBAvTjqs.js} +1 -1
  131. codex/static_root/assets/datetime-column-BBAvTjqs.js.br +0 -0
  132. codex/static_root/assets/datetime-column-BBAvTjqs.js.gz +0 -0
  133. codex/static_root/assets/{filter-DcOs3rVI.495426fbd29e.js → filter-BlGQ9bqu.d84f75639ac2.js} +1 -1
  134. codex/static_root/assets/filter-BlGQ9bqu.d84f75639ac2.js.br +0 -0
  135. codex/static_root/assets/filter-BlGQ9bqu.d84f75639ac2.js.gz +0 -0
  136. codex/static_root/assets/{filter-DcOs3rVI.js → filter-BlGQ9bqu.js} +1 -1
  137. codex/static_root/assets/filter-BlGQ9bqu.js.br +0 -0
  138. codex/static_root/assets/filter-BlGQ9bqu.js.gz +0 -0
  139. codex/static_root/assets/{flag-tab-D77e2Ors.068789b9d816.js → flag-tab-DXkWxK7t.e26c8b8ed1ab.js} +1 -1
  140. codex/static_root/assets/flag-tab-DXkWxK7t.e26c8b8ed1ab.js.br +0 -0
  141. codex/static_root/assets/flag-tab-DXkWxK7t.e26c8b8ed1ab.js.gz +0 -0
  142. codex/static_root/assets/{flag-tab-D77e2Ors.js → flag-tab-DXkWxK7t.js} +1 -1
  143. codex/static_root/assets/flag-tab-DXkWxK7t.js.br +0 -0
  144. codex/static_root/assets/flag-tab-DXkWxK7t.js.gz +0 -0
  145. codex/static_root/assets/{group-tab-SxqTtCGs.c23d57a22257.js → group-tab-C5bAfCfi.62bfcf66aece.js} +1 -1
  146. codex/static_root/assets/group-tab-C5bAfCfi.62bfcf66aece.js.br +0 -0
  147. codex/static_root/assets/group-tab-C5bAfCfi.62bfcf66aece.js.gz +0 -0
  148. codex/static_root/assets/{group-tab-SxqTtCGs.js → group-tab-C5bAfCfi.js} +1 -1
  149. codex/static_root/assets/group-tab-C5bAfCfi.js.br +0 -0
  150. codex/static_root/assets/group-tab-C5bAfCfi.js.gz +0 -0
  151. codex/static_root/assets/{http-error-CKL2ByeE.c0333de973b1.js → http-error-B39gXVZV.1fc10bddf3cb.js} +1 -1
  152. codex/static_root/assets/http-error-B39gXVZV.1fc10bddf3cb.js.br +0 -0
  153. codex/static_root/assets/http-error-B39gXVZV.1fc10bddf3cb.js.gz +0 -0
  154. codex/static_root/assets/{http-error-CKL2ByeE.js → http-error-B39gXVZV.js} +1 -1
  155. codex/static_root/assets/http-error-B39gXVZV.js.br +0 -0
  156. codex/static_root/assets/http-error-B39gXVZV.js.gz +0 -0
  157. codex/static_root/assets/{library-tab-jesPyoqi.453abce07ca3.js → library-tab-C7emvcuv.8dd5a34d03f5.js} +1 -1
  158. codex/static_root/assets/library-tab-C7emvcuv.8dd5a34d03f5.js.br +0 -0
  159. codex/static_root/assets/library-tab-C7emvcuv.8dd5a34d03f5.js.gz +0 -0
  160. codex/static_root/assets/{library-tab-jesPyoqi.js → library-tab-C7emvcuv.js} +1 -1
  161. codex/static_root/assets/library-tab-C7emvcuv.js.br +0 -0
  162. codex/static_root/assets/library-tab-C7emvcuv.js.gz +0 -0
  163. codex/static_root/assets/main-BZTHWXBZ.63ed6506bd5f.js +37 -0
  164. codex/static_root/assets/main-BZTHWXBZ.63ed6506bd5f.js.br +0 -0
  165. codex/static_root/assets/main-BZTHWXBZ.63ed6506bd5f.js.gz +0 -0
  166. codex/static_root/assets/main-BZTHWXBZ.js +37 -0
  167. codex/static_root/assets/main-BZTHWXBZ.js.br +0 -0
  168. codex/static_root/assets/main-BZTHWXBZ.js.gz +0 -0
  169. codex/static_root/assets/{main-CGRrI5lh.4f849ef1c5db.css → main-DpwSKZaX.2f8d10914fc4.css} +1 -1
  170. codex/static_root/assets/main-DpwSKZaX.2f8d10914fc4.css.br +0 -0
  171. codex/static_root/assets/{main-CGRrI5lh.4f849ef1c5db.css.gz → main-DpwSKZaX.2f8d10914fc4.css.gz} +0 -0
  172. codex/static_root/assets/{main-CGRrI5lh.css → main-DpwSKZaX.css} +1 -1
  173. codex/static_root/assets/main-DpwSKZaX.css.br +0 -0
  174. codex/static_root/assets/{main-CGRrI5lh.css.gz → main-DpwSKZaX.css.gz} +0 -0
  175. codex/static_root/assets/materialdesignicons-webfont-B7mPwVP_.6e435534bd35.ttf.br +0 -0
  176. codex/static_root/assets/materialdesignicons-webfont-B7mPwVP_.ttf.br +0 -0
  177. codex/static_root/assets/materialdesignicons-webfont-CSr8KVlo.8ced95a05e3c.eot.br +0 -0
  178. codex/static_root/assets/materialdesignicons-webfont-CSr8KVlo.eot.br +0 -0
  179. codex/static_root/assets/{metadata-dialog-QTkQOBoB.2e6935edafee.css → metadata-dialog-DIhQctD5.67830cc94cf8.css} +1 -1
  180. codex/static_root/assets/metadata-dialog-DIhQctD5.67830cc94cf8.css.br +0 -0
  181. codex/static_root/assets/metadata-dialog-DIhQctD5.67830cc94cf8.css.gz +0 -0
  182. codex/static_root/assets/{metadata-dialog-QTkQOBoB.css → metadata-dialog-DIhQctD5.css} +1 -1
  183. codex/static_root/assets/metadata-dialog-DIhQctD5.css.br +0 -0
  184. codex/static_root/assets/metadata-dialog-DIhQctD5.css.gz +0 -0
  185. codex/static_root/assets/metadata-dialog-Duz0ohHE.37cea8b76138.js +1 -0
  186. codex/static_root/assets/metadata-dialog-Duz0ohHE.37cea8b76138.js.br +0 -0
  187. codex/static_root/assets/metadata-dialog-Duz0ohHE.37cea8b76138.js.gz +0 -0
  188. codex/static_root/assets/metadata-dialog-Duz0ohHE.js +1 -0
  189. codex/static_root/assets/metadata-dialog-Duz0ohHE.js.br +0 -0
  190. codex/static_root/assets/metadata-dialog-Duz0ohHE.js.gz +0 -0
  191. codex/static_root/assets/{pdf-doc-DwPaMGER.d981a9066397.js → pdf-doc-DYomsAJ1.db5ed9368c4f.js} +1 -1
  192. codex/static_root/assets/pdf-doc-DYomsAJ1.db5ed9368c4f.js.br +0 -0
  193. codex/static_root/assets/pdf-doc-DYomsAJ1.db5ed9368c4f.js.gz +0 -0
  194. codex/static_root/assets/{pdf-doc-DwPaMGER.js → pdf-doc-DYomsAJ1.js} +1 -1
  195. codex/static_root/assets/pdf-doc-DYomsAJ1.js.br +0 -0
  196. codex/static_root/assets/pdf-doc-DYomsAJ1.js.gz +0 -0
  197. codex/static_root/assets/{reader-7CNuDD9b.3593146c30b7.js → reader-OgJUtts0.b7c30ca0bd9c.js} +2 -2
  198. codex/static_root/assets/reader-OgJUtts0.b7c30ca0bd9c.js.br +0 -0
  199. codex/static_root/assets/reader-OgJUtts0.b7c30ca0bd9c.js.gz +0 -0
  200. codex/static_root/assets/{reader-7CNuDD9b.js → reader-OgJUtts0.js} +2 -2
  201. codex/static_root/assets/reader-OgJUtts0.js.br +0 -0
  202. codex/static_root/assets/reader-OgJUtts0.js.gz +0 -0
  203. codex/static_root/assets/{stats-tab-CyQ4G2G_.10e279711e77.js → stats-tab-DCaIo8ZH.02255a078453.js} +1 -1
  204. codex/static_root/assets/stats-tab-DCaIo8ZH.02255a078453.js.br +0 -0
  205. codex/static_root/assets/stats-tab-DCaIo8ZH.02255a078453.js.gz +0 -0
  206. codex/static_root/assets/{stats-tab-CyQ4G2G_.js → stats-tab-DCaIo8ZH.js} +1 -1
  207. codex/static_root/assets/stats-tab-DCaIo8ZH.js.br +0 -0
  208. codex/static_root/assets/stats-tab-DCaIo8ZH.js.gz +0 -0
  209. codex/static_root/assets/{task-tab-ncnnRysH.13fa947767f5.js → task-tab-BuWYkRRm.26439bef0549.js} +1 -1
  210. codex/static_root/assets/task-tab-BuWYkRRm.26439bef0549.js.br +0 -0
  211. codex/static_root/assets/task-tab-BuWYkRRm.26439bef0549.js.gz +0 -0
  212. codex/static_root/assets/{task-tab-ncnnRysH.js → task-tab-BuWYkRRm.js} +1 -1
  213. codex/static_root/assets/task-tab-BuWYkRRm.js.br +0 -0
  214. codex/static_root/assets/task-tab-BuWYkRRm.js.gz +0 -0
  215. codex/static_root/assets/{user-tab-BWjYndVM.503bf20bdbc0.js → user-tab-DjSdzbwY.d7e2a9e508c1.js} +1 -1
  216. codex/static_root/assets/user-tab-DjSdzbwY.d7e2a9e508c1.js.br +0 -0
  217. codex/static_root/assets/user-tab-DjSdzbwY.d7e2a9e508c1.js.gz +0 -0
  218. codex/static_root/assets/{user-tab-BWjYndVM.js → user-tab-DjSdzbwY.js} +1 -1
  219. codex/static_root/assets/user-tab-DjSdzbwY.js.br +0 -0
  220. codex/static_root/assets/user-tab-DjSdzbwY.js.gz +0 -0
  221. codex/static_root/js/choices.d41e3233bcbd.json +1 -0
  222. codex/static_root/js/choices.d41e3233bcbd.json.br +0 -0
  223. codex/static_root/js/choices.d41e3233bcbd.json.gz +0 -0
  224. codex/static_root/js/choices.json +1 -1
  225. codex/static_root/js/choices.json.br +0 -0
  226. codex/static_root/js/choices.json.gz +0 -0
  227. codex/static_root/{manifest.a5c8e7a036f3.json → manifest.173d2d6ceb19.json} +209 -209
  228. codex/static_root/manifest.173d2d6ceb19.json.br +0 -0
  229. codex/static_root/manifest.173d2d6ceb19.json.gz +0 -0
  230. codex/static_root/manifest.json +209 -209
  231. codex/static_root/manifest.json.br +0 -0
  232. codex/static_root/manifest.json.gz +0 -0
  233. codex/static_root/rest_framework/fonts/fontawesome-webfont.dcb26c7239d8.ttf.br +0 -0
  234. codex/static_root/rest_framework/fonts/fontawesome-webfont.ttf.br +0 -0
  235. codex/static_root/rest_framework/fonts/glyphicons-halflings-regular.e18bbf611f2a.ttf.br +0 -0
  236. codex/static_root/rest_framework/fonts/glyphicons-halflings-regular.ttf.br +0 -0
  237. codex/static_root/staticfiles.json +1 -1
  238. codex/views/browser/base.py +10 -8
  239. codex/views/browser/browser.py +22 -16
  240. codex/views/browser/browser_annotations.py +19 -7
  241. codex/views/browser/choices.py +3 -5
  242. codex/views/browser/filters/search.py +117 -22
  243. codex/views/browser/metadata.py +4 -6
  244. codex/views/error.py +1 -0
  245. codex/views/session.py +1 -0
  246. {codex-1.5.13.dist-info → codex-1.5.13a1.dist-info}/METADATA +2 -1
  247. {codex-1.5.13.dist-info → codex-1.5.13a1.dist-info}/RECORD +250 -250
  248. codex/static_root/assets/VCheckbox-Wdu19ZuZ.50f2bf3b5ce5.js.br +0 -0
  249. codex/static_root/assets/VCheckbox-Wdu19ZuZ.50f2bf3b5ce5.js.gz +0 -0
  250. codex/static_root/assets/VCheckbox-Wdu19ZuZ.js.br +0 -0
  251. codex/static_root/assets/VCheckbox-Wdu19ZuZ.js.gz +0 -0
  252. codex/static_root/assets/VCheckboxBtn-C7NngFC8.bd12ea5cdbb2.js.br +0 -0
  253. codex/static_root/assets/VCheckboxBtn-C7NngFC8.bd12ea5cdbb2.js.gz +0 -0
  254. codex/static_root/assets/VCheckboxBtn-C7NngFC8.js.br +0 -0
  255. codex/static_root/assets/VCheckboxBtn-C7NngFC8.js.gz +0 -0
  256. codex/static_root/assets/VCombobox-DxNlm_ji.11d317a5dbb0.js.br +0 -0
  257. codex/static_root/assets/VCombobox-DxNlm_ji.11d317a5dbb0.js.gz +0 -0
  258. codex/static_root/assets/VCombobox-DxNlm_ji.js.br +0 -0
  259. codex/static_root/assets/VCombobox-DxNlm_ji.js.gz +0 -0
  260. codex/static_root/assets/VDataTableVirtual-C4UTS-jp.4b2926f1461f.js +0 -1
  261. codex/static_root/assets/VDataTableVirtual-C4UTS-jp.4b2926f1461f.js.br +0 -0
  262. codex/static_root/assets/VDataTableVirtual-C4UTS-jp.4b2926f1461f.js.gz +0 -0
  263. codex/static_root/assets/VDataTableVirtual-C4UTS-jp.js +0 -1
  264. codex/static_root/assets/VDataTableVirtual-C4UTS-jp.js.br +0 -0
  265. codex/static_root/assets/VDataTableVirtual-C4UTS-jp.js.gz +0 -0
  266. codex/static_root/assets/VExpansionPanel-1dRZTsNe.6213946f43dd.js.br +0 -0
  267. codex/static_root/assets/VExpansionPanel-1dRZTsNe.6213946f43dd.js.gz +0 -0
  268. codex/static_root/assets/VExpansionPanel-1dRZTsNe.js.br +0 -0
  269. codex/static_root/assets/VExpansionPanel-1dRZTsNe.js.gz +0 -0
  270. codex/static_root/assets/VMain-BVEH6Gtw.51ef468a0780.js.br +0 -0
  271. codex/static_root/assets/VMain-BVEH6Gtw.51ef468a0780.js.gz +0 -0
  272. codex/static_root/assets/VMain-BVEH6Gtw.js.br +0 -0
  273. codex/static_root/assets/VMain-BVEH6Gtw.js.gz +0 -0
  274. codex/static_root/assets/VRadioGroup-D1WV2cpK.83ba2e5689fd.js.br +0 -0
  275. codex/static_root/assets/VRadioGroup-D1WV2cpK.83ba2e5689fd.js.gz +0 -0
  276. codex/static_root/assets/VRadioGroup-D1WV2cpK.js.br +0 -0
  277. codex/static_root/assets/VRadioGroup-D1WV2cpK.js.gz +0 -0
  278. codex/static_root/assets/VSelect-BVyqMxyX.4a54cd987085.js.br +0 -0
  279. codex/static_root/assets/VSelect-BVyqMxyX.4a54cd987085.js.gz +0 -0
  280. codex/static_root/assets/VSelect-BVyqMxyX.js.br +0 -0
  281. codex/static_root/assets/VSelect-BVyqMxyX.js.gz +0 -0
  282. codex/static_root/assets/VSelectionControl-CC9aC7ZT.2db18d99af8b.js.br +0 -0
  283. codex/static_root/assets/VSelectionControl-CC9aC7ZT.2db18d99af8b.js.gz +0 -0
  284. codex/static_root/assets/VSelectionControl-CC9aC7ZT.js.br +0 -0
  285. codex/static_root/assets/VSelectionControl-CC9aC7ZT.js.gz +0 -0
  286. codex/static_root/assets/VSlideGroup-D4n-jSgi.686cc428f5fe.js.br +0 -0
  287. codex/static_root/assets/VSlideGroup-D4n-jSgi.686cc428f5fe.js.gz +0 -0
  288. codex/static_root/assets/VSlideGroup-D4n-jSgi.js.br +0 -0
  289. codex/static_root/assets/VSlideGroup-D4n-jSgi.js.gz +0 -0
  290. codex/static_root/assets/VTable-DioYRJkC.c8638b2267ed.js.br +0 -0
  291. codex/static_root/assets/VTable-DioYRJkC.c8638b2267ed.js.gz +0 -0
  292. codex/static_root/assets/VTable-DioYRJkC.js.br +0 -0
  293. codex/static_root/assets/VTable-DioYRJkC.js.gz +0 -0
  294. codex/static_root/assets/VToolbar-DLtG5Ngs.e32539656f6d.js.br +0 -0
  295. codex/static_root/assets/VToolbar-DLtG5Ngs.e32539656f6d.js.gz +0 -0
  296. codex/static_root/assets/VToolbar-DLtG5Ngs.js.br +0 -0
  297. codex/static_root/assets/VToolbar-DLtG5Ngs.js.gz +0 -0
  298. codex/static_root/assets/VWindowItem-D-OB7e0u.ef9bcb84a01e.js.br +0 -0
  299. codex/static_root/assets/VWindowItem-D-OB7e0u.ef9bcb84a01e.js.gz +0 -0
  300. codex/static_root/assets/VWindowItem-D-OB7e0u.js.br +0 -0
  301. codex/static_root/assets/VWindowItem-D-OB7e0u.js.gz +0 -0
  302. codex/static_root/assets/admin-BwXMQOyX.8c44117c2b63.js.br +0 -0
  303. codex/static_root/assets/admin-BwXMQOyX.8c44117c2b63.js.gz +0 -0
  304. codex/static_root/assets/admin-BwXMQOyX.js.br +0 -0
  305. codex/static_root/assets/admin-BwXMQOyX.js.gz +0 -0
  306. codex/static_root/assets/admin-drawer-panel-CGj6J0rX.cc680f2603da.js.br +0 -0
  307. codex/static_root/assets/admin-drawer-panel-CGj6J0rX.cc680f2603da.js.gz +0 -0
  308. codex/static_root/assets/admin-drawer-panel-CGj6J0rX.js.br +0 -0
  309. codex/static_root/assets/admin-drawer-panel-CGj6J0rX.js.gz +0 -0
  310. codex/static_root/assets/browser-BLCruguN.ca6300976f82.js +0 -1
  311. codex/static_root/assets/browser-BLCruguN.ca6300976f82.js.br +0 -0
  312. codex/static_root/assets/browser-BLCruguN.ca6300976f82.js.gz +0 -0
  313. codex/static_root/assets/browser-BLCruguN.js +0 -1
  314. codex/static_root/assets/browser-BLCruguN.js.br +0 -0
  315. codex/static_root/assets/browser-BLCruguN.js.gz +0 -0
  316. codex/static_root/assets/browser-CTxEKlCx.211d729d9165.css.br +0 -0
  317. codex/static_root/assets/browser-CTxEKlCx.211d729d9165.css.gz +0 -0
  318. codex/static_root/assets/browser-CTxEKlCx.css.br +0 -0
  319. codex/static_root/assets/browser-CTxEKlCx.css.gz +0 -0
  320. codex/static_root/assets/change-password-dialog-DDvVSrWH.915709700c5f.js.br +0 -0
  321. codex/static_root/assets/change-password-dialog-DDvVSrWH.915709700c5f.js.gz +0 -0
  322. codex/static_root/assets/change-password-dialog-DDvVSrWH.js.br +0 -0
  323. codex/static_root/assets/change-password-dialog-DDvVSrWH.js.gz +0 -0
  324. codex/static_root/assets/confirm-dialog-Bf3Sde_o.b437109b579e.js.br +0 -0
  325. codex/static_root/assets/confirm-dialog-Bf3Sde_o.b437109b579e.js.gz +0 -0
  326. codex/static_root/assets/confirm-dialog-Bf3Sde_o.js.br +0 -0
  327. codex/static_root/assets/confirm-dialog-Bf3Sde_o.js.gz +0 -0
  328. codex/static_root/assets/confirm-footer-CLwOC3F0.d25d9085b300.js.br +0 -0
  329. codex/static_root/assets/confirm-footer-CLwOC3F0.d25d9085b300.js.gz +0 -0
  330. codex/static_root/assets/confirm-footer-CLwOC3F0.js.br +0 -0
  331. codex/static_root/assets/confirm-footer-CLwOC3F0.js.gz +0 -0
  332. codex/static_root/assets/datetime-column-DGfoC2Ap.ef9499c6bca8.js.br +0 -0
  333. codex/static_root/assets/datetime-column-DGfoC2Ap.ef9499c6bca8.js.gz +0 -0
  334. codex/static_root/assets/datetime-column-DGfoC2Ap.js.br +0 -0
  335. codex/static_root/assets/datetime-column-DGfoC2Ap.js.gz +0 -0
  336. codex/static_root/assets/filter-DcOs3rVI.495426fbd29e.js.br +0 -0
  337. codex/static_root/assets/filter-DcOs3rVI.495426fbd29e.js.gz +0 -0
  338. codex/static_root/assets/filter-DcOs3rVI.js.br +0 -0
  339. codex/static_root/assets/filter-DcOs3rVI.js.gz +0 -0
  340. codex/static_root/assets/flag-tab-D77e2Ors.068789b9d816.js.br +0 -0
  341. codex/static_root/assets/flag-tab-D77e2Ors.068789b9d816.js.gz +0 -0
  342. codex/static_root/assets/flag-tab-D77e2Ors.js.br +0 -0
  343. codex/static_root/assets/flag-tab-D77e2Ors.js.gz +0 -0
  344. codex/static_root/assets/group-tab-SxqTtCGs.c23d57a22257.js.br +0 -0
  345. codex/static_root/assets/group-tab-SxqTtCGs.c23d57a22257.js.gz +0 -0
  346. codex/static_root/assets/group-tab-SxqTtCGs.js.br +0 -0
  347. codex/static_root/assets/group-tab-SxqTtCGs.js.gz +0 -0
  348. codex/static_root/assets/http-error-CKL2ByeE.c0333de973b1.js.br +0 -0
  349. codex/static_root/assets/http-error-CKL2ByeE.c0333de973b1.js.gz +0 -0
  350. codex/static_root/assets/http-error-CKL2ByeE.js.br +0 -0
  351. codex/static_root/assets/http-error-CKL2ByeE.js.gz +0 -0
  352. codex/static_root/assets/library-tab-jesPyoqi.453abce07ca3.js.br +0 -0
  353. codex/static_root/assets/library-tab-jesPyoqi.453abce07ca3.js.gz +0 -0
  354. codex/static_root/assets/library-tab-jesPyoqi.js.br +0 -0
  355. codex/static_root/assets/library-tab-jesPyoqi.js.gz +0 -0
  356. codex/static_root/assets/main-BXWucpmC.f8485541954a.js +0 -37
  357. codex/static_root/assets/main-BXWucpmC.f8485541954a.js.br +0 -0
  358. codex/static_root/assets/main-BXWucpmC.f8485541954a.js.gz +0 -0
  359. codex/static_root/assets/main-BXWucpmC.js +0 -37
  360. codex/static_root/assets/main-BXWucpmC.js.br +0 -0
  361. codex/static_root/assets/main-BXWucpmC.js.gz +0 -0
  362. codex/static_root/assets/main-CGRrI5lh.4f849ef1c5db.css.br +0 -0
  363. codex/static_root/assets/main-CGRrI5lh.css.br +0 -0
  364. codex/static_root/assets/metadata-dialog-Dkadd19B.0c95b145042a.js +0 -1
  365. codex/static_root/assets/metadata-dialog-Dkadd19B.0c95b145042a.js.br +0 -0
  366. codex/static_root/assets/metadata-dialog-Dkadd19B.0c95b145042a.js.gz +0 -0
  367. codex/static_root/assets/metadata-dialog-Dkadd19B.js +0 -1
  368. codex/static_root/assets/metadata-dialog-Dkadd19B.js.br +0 -0
  369. codex/static_root/assets/metadata-dialog-Dkadd19B.js.gz +0 -0
  370. codex/static_root/assets/metadata-dialog-QTkQOBoB.2e6935edafee.css.br +0 -0
  371. codex/static_root/assets/metadata-dialog-QTkQOBoB.2e6935edafee.css.gz +0 -0
  372. codex/static_root/assets/metadata-dialog-QTkQOBoB.css.br +0 -0
  373. codex/static_root/assets/metadata-dialog-QTkQOBoB.css.gz +0 -0
  374. codex/static_root/assets/pdf-doc-DwPaMGER.d981a9066397.js.br +0 -0
  375. codex/static_root/assets/pdf-doc-DwPaMGER.d981a9066397.js.gz +0 -0
  376. codex/static_root/assets/pdf-doc-DwPaMGER.js.br +0 -0
  377. codex/static_root/assets/pdf-doc-DwPaMGER.js.gz +0 -0
  378. codex/static_root/assets/reader-7CNuDD9b.3593146c30b7.js.br +0 -0
  379. codex/static_root/assets/reader-7CNuDD9b.3593146c30b7.js.gz +0 -0
  380. codex/static_root/assets/reader-7CNuDD9b.js.br +0 -0
  381. codex/static_root/assets/reader-7CNuDD9b.js.gz +0 -0
  382. codex/static_root/assets/stats-tab-CyQ4G2G_.10e279711e77.js.br +0 -0
  383. codex/static_root/assets/stats-tab-CyQ4G2G_.10e279711e77.js.gz +0 -0
  384. codex/static_root/assets/stats-tab-CyQ4G2G_.js.br +0 -0
  385. codex/static_root/assets/stats-tab-CyQ4G2G_.js.gz +0 -0
  386. codex/static_root/assets/task-tab-ncnnRysH.13fa947767f5.js.br +0 -0
  387. codex/static_root/assets/task-tab-ncnnRysH.13fa947767f5.js.gz +0 -0
  388. codex/static_root/assets/task-tab-ncnnRysH.js.br +0 -0
  389. codex/static_root/assets/task-tab-ncnnRysH.js.gz +0 -0
  390. codex/static_root/assets/user-tab-BWjYndVM.503bf20bdbc0.js.br +0 -0
  391. codex/static_root/assets/user-tab-BWjYndVM.503bf20bdbc0.js.gz +0 -0
  392. codex/static_root/assets/user-tab-BWjYndVM.js.br +0 -0
  393. codex/static_root/assets/user-tab-BWjYndVM.js.gz +0 -0
  394. codex/static_root/js/choices.fedcbd1ec085.json +0 -1
  395. codex/static_root/js/choices.fedcbd1ec085.json.br +0 -0
  396. codex/static_root/js/choices.fedcbd1ec085.json.gz +0 -0
  397. codex/static_root/manifest.a5c8e7a036f3.json.br +0 -0
  398. codex/static_root/manifest.a5c8e7a036f3.json.gz +0 -0
  399. {codex-1.5.13.dist-info → codex-1.5.13a1.dist-info}/LICENSE +0 -0
  400. {codex-1.5.13.dist-info → codex-1.5.13a1.dist-info}/WHEEL +0 -0
  401. {codex-1.5.13.dist-info → codex-1.5.13a1.dist-info}/entry_points.txt +0 -0
@@ -1 +1 @@
1
- import{_ as ye,f as be}from"./confirm-footer-CLwOC3F0.js";import{M as _e,k as se,N as pe,_ as Ve,R as H,ay as G,aD as Ie,al as J,az as Pe,ae as ie,L as t,x as q,E as Z,G as K,r as L,K as j,bb as Fe,bB as we,h,be as oe,bh as ge,bg as Re,co as Q,cM as ae,cL as ze,bK as Te,F as Be,I as Ae,c4 as Ee,bS as Me,J as he,C as $e,at as Oe,au as Le,aj as De,a as xe,d3 as Ne,z as He,an as Ge,c7 as Ue,cU as qe,c6 as Ke,am as ne,d4 as je,d5 as We,ao as Xe,bc as Ye,ar as Je,c5 as Qe,bf as Ze,d6 as et,n as ue,d7 as tt,aq as lt,cz as nt,bF as at,s as U,y as re,V as ot,c2 as ce,ad as de,cX as st,bN as it}from"./admin-drawer-panel-CGj6J0rX.js";import{h as ut,i as rt,b as ct,m as dt,u as Se,j as ft,a as vt,V as fe}from"./VSelectionControl-CC9aC7ZT.js";import{c as mt,d as yt}from"./main-BXWucpmC.js";const bt={name:"SubmitFooter",components:{ConfirmFooter:ye},props:{verb:{type:String,required:!0},table:{type:String,required:!0},disabled:{type:Boolean,default:!1}},emits:["cancel","submit"],computed:{..._e(se,{errors:e=>e.form.errors,success:e=>e.form.success})},beforeMount(){this.clearErrors()},methods:{...pe(se,["clearErrors"])}},gt={key:0,class:"errors"},ht={key:1,class:"success"},xt={key:2};function St(e,r,a,m,o,c){const i=ye;return H(),G("footer",null,[Ie("div",null,[e.errors&&e.errors.length>0?(H(),G("small",gt,[(H(!0),G(J,null,Pe(e.errors,(f,n)=>(H(),G("div",{key:n},ie(f),1))),128))])):e.success?(H(),G("small",ht,ie(e.success),1)):(H(),G("small",xt," "))]),t(i,{"confirm-text":`${a.verb} ${a.table}`,disabled:a.disabled,onConfirm:r[0]||(r[0]=f=>e.$emit("submit")),onCancel:r[1]||(r[1]=f=>e.$emit("cancel"))},null,8,["confirm-text","disabled"])])}const Mt=Ve(bt,[["render",St],["__scopeId","data-v-04c721a9"]]),kt=q({...Z(),...ut()},"VForm"),$t=K()({name:"VForm",props:kt(),emits:{"update:modelValue":e=>!0,submit:e=>!0},setup(e,r){let{slots:a,emit:m}=r;const o=rt(e),c=L();function i(n){n.preventDefault(),o.reset()}function f(n){const u=n,d=o.validate();u.then=d.then.bind(d),u.catch=d.catch.bind(d),u.finally=d.finally.bind(d),m("submit",u),u.defaultPrevented||d.then(y=>{var R;let{valid:F}=y;F&&((R=c.value)==null||R.submit())}),u.preventDefault()}return j(()=>{var n;return t("form",{ref:c,class:["v-form",e.class],style:e.style,novalidate:!0,onReset:i,onSubmit:f},[(n=a.default)==null?void 0:n.call(a,o)])}),be(o,c)}}),Ct=q({active:Boolean,max:[Number,String],value:{type:[Number,String],default:0},...Z(),...Fe({transition:{component:we}})},"VCounter"),_t=K()({name:"VCounter",functional:!0,props:Ct(),setup(e,r){let{slots:a}=r;const m=h(()=>e.max?`${e.value} / ${e.max}`:String(e.value));return j(()=>t(Re,{transition:e.transition},{default:()=>[oe(t("div",{class:["v-counter",e.class],style:e.style},[a.default?a.default({counter:m.value,max:e.max,value:e.value}):m.value]),[[ge,e.active]])]})),{}}}),pt=q({floating:Boolean,...Z()},"VFieldLabel"),le=K()({name:"VFieldLabel",props:pt(),setup(e,r){let{slots:a}=r;return j(()=>t(ct,{class:["v-field-label",{"v-field-label--floating":e.floating},e.class],style:e.style,"aria-hidden":e.floating||void 0},a)),{}}}),Vt=["underlined","outlined","filled","solo","solo-inverted","solo-filled","plain"],ke=q({appendInnerIcon:Q,bgColor:String,clearable:Boolean,clearIcon:{type:Q,default:"$clear"},active:Boolean,centerAffix:{type:Boolean,default:void 0},color:String,baseColor:String,dirty:Boolean,disabled:{type:Boolean,default:null},error:Boolean,flat:Boolean,label:String,persistentClear:Boolean,prependInnerIcon:Q,reverse:Boolean,singleLine:Boolean,variant:{type:String,default:"filled",validator:e=>Vt.includes(e)},"onClick:clear":ae(),"onClick:appendInner":ae(),"onClick:prependInner":ae(),...Z(),...ze(),...Te(),...Be()},"VField"),Ce=K()({name:"VField",inheritAttrs:!1,props:{id:String,...dt(),...ke()},emits:{"update:focused":e=>!0,"update:modelValue":e=>!0},setup(e,r){let{attrs:a,emit:m,slots:o}=r;const{themeClasses:c}=Ae(e),{loaderClasses:i}=Ee(e),{focusClasses:f,isFocused:n,focus:u,blur:d}=Se(e),{InputIcon:y}=ft(e),{roundedClasses:F}=Me(e),{rtlClasses:R}=he(),g=h(()=>e.dirty||e.active),C=h(()=>!e.singleLine&&!!(e.label||o.label)),D=$e(),_=h(()=>e.id||`input-${D}`),M=h(()=>`${_.value}-messages`),O=L(),B=L(),N=L(),b=h(()=>["plain","underlined"].includes(e.variant)),{backgroundColorClasses:p,backgroundColorStyles:V}=Oe(Le(e,"bgColor")),{textColorClasses:k,textColorStyles:W}=De(h(()=>e.error||e.disabled?void 0:g.value&&n.value?e.color:e.baseColor));xe(g,v=>{if(C.value){const x=O.value.$el,w=B.value.$el;requestAnimationFrame(()=>{const I=Ne(x),S=w.getBoundingClientRect(),E=S.x-I.x,T=S.y-I.y-(I.height/2-S.height/2),l=S.width/.75,s=Math.abs(l-I.width)>1?{maxWidth:He(l)}:void 0,P=getComputedStyle(x),Y=getComputedStyle(w),ee=parseFloat(P.transitionDuration)*1e3||150,te=parseFloat(Y.getPropertyValue("--v-field-label-scale")),$=Y.getPropertyValue("color");x.style.visibility="visible",w.style.visibility="hidden",Ge(x,{transform:`translate(${E}px, ${T}px) scale(${te})`,color:$,...s},{duration:ee,easing:Xe,direction:v?"normal":"reverse"}).finished.then(()=>{x.style.removeProperty("visibility"),w.style.removeProperty("visibility")})})}},{flush:"post"});const A=h(()=>({isActive:g,isFocused:n,controlRef:N,blur:d,focus:u}));function X(v){v.target!==document.activeElement&&v.preventDefault()}function z(v){var x;v.key!=="Enter"&&v.key!==" "||(v.preventDefault(),v.stopPropagation(),(x=e["onClick:clear"])==null||x.call(e,new MouseEvent("click")))}return j(()=>{var E,T,l;const v=e.variant==="outlined",x=!!(o["prepend-inner"]||e.prependInnerIcon),w=!!(e.clearable||o.clear),I=!!(o["append-inner"]||e.appendInnerIcon||w),S=()=>o.label?o.label({...A.value,label:e.label,props:{for:_.value}}):e.label;return t("div",ne({class:["v-field",{"v-field--active":g.value,"v-field--appended":I,"v-field--center-affix":e.centerAffix??!b.value,"v-field--disabled":e.disabled,"v-field--dirty":e.dirty,"v-field--error":e.error,"v-field--flat":e.flat,"v-field--has-background":!!e.bgColor,"v-field--persistent-clear":e.persistentClear,"v-field--prepended":x,"v-field--reverse":e.reverse,"v-field--single-line":e.singleLine,"v-field--no-label":!S(),[`v-field--variant-${e.variant}`]:!0},c.value,p.value,f.value,i.value,F.value,R.value,e.class],style:[V.value,e.style],onClick:X},a),[t("div",{class:"v-field__overlay"},null),t(Ue,{name:"v-field",active:!!e.loading,color:e.error?"error":typeof e.loading=="string"?e.loading:e.color},{default:o.loader}),x&&t("div",{key:"prepend",class:"v-field__prepend-inner"},[e.prependInnerIcon&&t(y,{key:"prepend-icon",name:"prependInner"},null),(E=o["prepend-inner"])==null?void 0:E.call(o,A.value)]),t("div",{class:"v-field__field","data-no-activator":""},[["filled","solo","solo-inverted","solo-filled"].includes(e.variant)&&C.value&&t(le,{key:"floating-label",ref:B,class:[k.value],floating:!0,for:_.value,style:W.value},{default:()=>[S()]}),t(le,{ref:O,for:_.value},{default:()=>[S()]}),(T=o.default)==null?void 0:T.call(o,{...A.value,props:{id:_.value,class:"v-field__input","aria-describedby":M.value},focus:u,blur:d})]),w&&t(qe,{key:"clear"},{default:()=>[oe(t("div",{class:"v-field__clearable",onMousedown:s=>{s.preventDefault(),s.stopPropagation()}},[t(Ke,{defaults:{VIcon:{icon:e.clearIcon}}},{default:()=>[o.clear?o.clear({...A.value,props:{onKeydown:z,onFocus:u,onBlur:d,onClick:e["onClick:clear"]}}):t(y,{name:"clear",onKeydown:z,onFocus:u,onBlur:d},null)]})]),[[ge,e.dirty]])]}),I&&t("div",{key:"append",class:"v-field__append-inner"},[(l=o["append-inner"])==null?void 0:l.call(o,A.value),e.appendInnerIcon&&t(y,{key:"append-icon",name:"appendInner"},null)]),t("div",{class:["v-field__outline",k.value],style:W.value},[v&&t(J,null,[t("div",{class:"v-field__outline__start"},null),C.value&&t("div",{class:"v-field__outline__notch"},[t(le,{ref:B,floating:!0,for:_.value},{default:()=>[S()]})]),t("div",{class:"v-field__outline__end"},null)]),b.value&&C.value&&t(le,{ref:B,floating:!0,for:_.value},{default:()=>[S()]})])])}),{controlRef:N}}});function It(e){const r=Object.keys(Ce.props).filter(a=>!je(a)&&a!=="class"&&a!=="style");return We(e,r)}const Pt=["color","file","time","date","datetime-local","week","month"],Ft=q({autofocus:Boolean,counter:[Boolean,Number,String],counterValue:[Number,Function],prefix:String,placeholder:String,persistentPlaceholder:Boolean,persistentCounter:Boolean,suffix:String,role:String,type:{type:String,default:"text"},modelModifiers:Object,...vt(),...ke()},"VTextField"),Ot=K()({name:"VTextField",directives:{Intersect:Ye},inheritAttrs:!1,props:Ft(),emits:{"click:control":e=>!0,"mousedown:control":e=>!0,"update:focused":e=>!0,"update:modelValue":e=>!0},setup(e,r){let{attrs:a,emit:m,slots:o}=r;const c=Je(e,"modelValue"),{isFocused:i,focus:f,blur:n}=Se(e),u=h(()=>typeof e.counterValue=="function"?e.counterValue(c.value):typeof e.counterValue=="number"?e.counterValue:(c.value??"").toString().length),d=h(()=>{if(a.maxlength)return a.maxlength;if(!(!e.counter||typeof e.counter!="number"&&typeof e.counter!="string"))return e.counter}),y=h(()=>["plain","underlined"].includes(e.variant));function F(b,p){var V,k;!e.autofocus||!b||(k=(V=p[0].target)==null?void 0:V.focus)==null||k.call(V)}const R=L(),g=L(),C=L(),D=h(()=>Pt.includes(e.type)||e.persistentPlaceholder||i.value||e.active);function _(){var b;C.value!==document.activeElement&&((b=C.value)==null||b.focus()),i.value||f()}function M(b){m("mousedown:control",b),b.target!==C.value&&(_(),b.preventDefault())}function O(b){_(),m("click:control",b)}function B(b){b.stopPropagation(),_(),ue(()=>{c.value=null,tt(e["onClick:clear"],b)})}function N(b){var V;const p=b.target;if(c.value=p.value,(V=e.modelModifiers)!=null&&V.trim&&["text","search","password","tel","url"].includes(e.type)){const k=[p.selectionStart,p.selectionEnd];ue(()=>{p.selectionStart=k[0],p.selectionEnd=k[1]})}}return j(()=>{const b=!!(o.counter||e.counter!==!1&&e.counter!=null),p=!!(b||o.details),[V,k]=Qe(a),{modelValue:W,...A}=fe.filterProps(e),X=It(e);return t(fe,ne({ref:R,modelValue:c.value,"onUpdate:modelValue":z=>c.value=z,class:["v-text-field",{"v-text-field--prefixed":e.prefix,"v-text-field--suffixed":e.suffix,"v-input--plain-underlined":y.value},e.class],style:e.style},V,A,{centerAffix:!y.value,focused:i.value}),{...o,default:z=>{let{id:v,isDisabled:x,isDirty:w,isReadonly:I,isValid:S}=z;return t(Ce,ne({ref:g,onMousedown:M,onClick:O,"onClick:clear":B,"onClick:prependInner":e["onClick:prependInner"],"onClick:appendInner":e["onClick:appendInner"],role:e.role},X,{id:v.value,active:D.value||w.value,dirty:w.value||e.dirty,disabled:x.value,focused:i.value,error:S.value===!1}),{...o,default:E=>{let{props:{class:T,...l}}=E;const s=oe(t("input",ne({ref:C,value:c.value,onInput:N,autofocus:e.autofocus,readonly:I.value,disabled:x.value,name:e.name,placeholder:e.placeholder,size:1,type:e.type,onFocus:_,onBlur:n},l,k),null),[[Ze("intersect"),{handler:F},null,{once:!0}]]);return t(J,null,[e.prefix&&t("span",{class:"v-text-field__prefix"},[t("span",{class:"v-text-field__prefix__text"},[e.prefix])]),o.default?t("div",{class:T,"data-no-activator":""},[o.default(),s]):et(s,{class:T}),e.suffix&&t("span",{class:"v-text-field__suffix"},[t("span",{class:"v-text-field__suffix__text"},[e.suffix])])])}})},details:p?z=>{var v;return t(J,null,[(v=o.details)==null?void 0:v.call(o,z),b&&t(J,null,[t("span",null,null),t(_t,{active:e.persistentCounter||i.value,value:u.value,max:d.value},o.counter)])])}:void 0})}),be({},R,g,C)}});function ve(e){const a=Math.abs(e);return Math.sign(e)*(a/((1/.501-2)*(1-a)+1))}function me(e){let{selectedElement:r,containerSize:a,contentSize:m,isRtl:o,currentScrollOffset:c,isHorizontal:i}=e;const f=i?r.clientWidth:r.clientHeight,n=i?r.offsetLeft:r.offsetTop,u=o&&i?m-n-f:n,d=a+c,y=f+u,F=f*.4;return u<=c?c=Math.max(u-F,0):d<=y&&(c=Math.min(c-(d-y-F),m-a)),c}function wt(e){let{selectedElement:r,containerSize:a,contentSize:m,isRtl:o,isHorizontal:c}=e;const i=c?r.clientWidth:r.clientHeight,f=c?r.offsetLeft:r.offsetTop,n=o&&c?m-f-i/2-a/2:f+i/2-a/2;return Math.min(m-a,Math.max(0,n))}const Rt=Symbol.for("vuetify:v-slide-group"),zt=q({centerActive:Boolean,direction:{type:String,default:"horizontal"},symbol:{type:null,default:Rt},nextIcon:{type:Q,default:"$next"},prevIcon:{type:Q,default:"$prev"},showArrows:{type:[Boolean,String],validator:e=>typeof e=="boolean"||["always","desktop","mobile"].includes(e)},...Z(),...mt(),...lt(),...nt({selectedClass:"v-slide-group-item--active"})},"VSlideGroup"),Lt=K()({name:"VSlideGroup",props:zt(),emits:{"update:modelValue":e=>!0},setup(e,r){let{slots:a}=r;const{isRtl:m}=he(),{displayClasses:o,mobile:c}=yt(e),i=at(e,e.symbol),f=U(!1),n=U(0),u=U(0),d=U(0),y=h(()=>e.direction==="horizontal"),{resizeRef:F,contentRect:R}=re(),{resizeRef:g,contentRect:C}=re(),D=h(()=>i.selected.value.length?i.items.value.findIndex(l=>l.id===i.selected.value[0]):-1),_=h(()=>i.selected.value.length?i.items.value.findIndex(l=>l.id===i.selected.value[i.selected.value.length-1]):-1);if(ot){let l=-1;xe(()=>[i.selected.value,R.value,C.value,y.value],()=>{cancelAnimationFrame(l),l=requestAnimationFrame(()=>{if(R.value&&C.value){const s=y.value?"width":"height";u.value=R.value[s],d.value=C.value[s],f.value=u.value+1<d.value}if(D.value>=0&&g.value){const s=g.value.children[_.value];D.value===0||!f.value?n.value=0:e.centerActive?n.value=wt({selectedElement:s,containerSize:u.value,contentSize:d.value,isRtl:m.value,isHorizontal:y.value}):f.value&&(n.value=me({selectedElement:s,containerSize:u.value,contentSize:d.value,isRtl:m.value,currentScrollOffset:n.value,isHorizontal:y.value}))}})})}const M=U(!1);let O=0,B=0;function N(l){const s=y.value?"clientX":"clientY";B=(m.value&&y.value?-1:1)*n.value,O=l.touches[0][s],M.value=!0}function b(l){if(!f.value)return;const s=y.value?"clientX":"clientY",P=m.value&&y.value?-1:1;n.value=P*(B+O-l.touches[0][s])}function p(l){const s=d.value-u.value;n.value<0||!f.value?n.value=0:n.value>=s&&(n.value=s),M.value=!1}function V(){F.value&&(F.value[y.value?"scrollLeft":"scrollTop"]=0)}const k=U(!1);function W(l){if(k.value=!0,!(!f.value||!g.value)){for(const s of l.composedPath())for(const P of g.value.children)if(P===s){n.value=me({selectedElement:P,containerSize:u.value,contentSize:d.value,isRtl:m.value,currentScrollOffset:n.value,isHorizontal:y.value});return}}}function A(l){k.value=!1}function X(l){var s;!k.value&&!(l.relatedTarget&&((s=g.value)!=null&&s.contains(l.relatedTarget)))&&v()}function z(l){g.value&&(y.value?l.key==="ArrowRight"?v(m.value?"prev":"next"):l.key==="ArrowLeft"&&v(m.value?"next":"prev"):l.key==="ArrowDown"?v("next"):l.key==="ArrowUp"&&v("prev"),l.key==="Home"?v("first"):l.key==="End"&&v("last"))}function v(l){var s,P,Y,ee,te;if(g.value)if(!l)(s=st(g.value)[0])==null||s.focus();else if(l==="next"){const $=(P=g.value.querySelector(":focus"))==null?void 0:P.nextElementSibling;$?$.focus():v("first")}else if(l==="prev"){const $=(Y=g.value.querySelector(":focus"))==null?void 0:Y.previousElementSibling;$?$.focus():v("last")}else l==="first"?(ee=g.value.firstElementChild)==null||ee.focus():l==="last"&&((te=g.value.lastElementChild)==null||te.focus())}function x(l){const s=n.value+(l==="prev"?-1:1)*u.value;n.value=it(s,0,d.value-u.value)}const w=h(()=>{let l=n.value>d.value-u.value?-(d.value-u.value)+ve(d.value-u.value-n.value):-n.value;n.value<=0&&(l=ve(-n.value));const s=m.value&&y.value?-1:1;return{transform:`translate${y.value?"X":"Y"}(${s*l}px)`,transition:M.value?"none":"",willChange:M.value?"transform":""}}),I=h(()=>({next:i.next,prev:i.prev,select:i.select,isSelected:i.isSelected})),S=h(()=>{switch(e.showArrows){case"always":return!0;case"desktop":return!c.value;case!0:return f.value||Math.abs(n.value)>0;case"mobile":return c.value||f.value||Math.abs(n.value)>0;default:return!c.value&&(f.value||Math.abs(n.value)>0)}}),E=h(()=>Math.abs(n.value)>0),T=h(()=>d.value>Math.abs(n.value)+u.value);return j(()=>t(e.tag,{class:["v-slide-group",{"v-slide-group--vertical":!y.value,"v-slide-group--has-affixes":S.value,"v-slide-group--is-overflowing":f.value},o.value,e.class],style:e.style,tabindex:k.value||i.selected.value.length?-1:0,onFocus:X},{default:()=>{var l,s,P;return[S.value&&t("div",{key:"prev",class:["v-slide-group__prev",{"v-slide-group__prev--disabled":!E.value}],onClick:()=>E.value&&x("prev")},[((l=a.prev)==null?void 0:l.call(a,I.value))??t(ce,null,{default:()=>[t(de,{icon:m.value?e.nextIcon:e.prevIcon},null)]})]),t("div",{key:"container",ref:F,class:"v-slide-group__container",onScroll:V},[t("div",{ref:g,class:"v-slide-group__content",style:w.value,onTouchstartPassive:N,onTouchmovePassive:b,onTouchendPassive:p,onFocusin:W,onFocusout:A,onKeydown:z},[(s=a.default)==null?void 0:s.call(a,I.value)])]),S.value&&t("div",{key:"next",class:["v-slide-group__next",{"v-slide-group__next--disabled":!T.value}],onClick:()=>T.value&&x("next")},[((P=a.next)==null?void 0:P.call(a,I.value))??t(ce,null,{default:()=>[t(de,{icon:m.value?e.prevIcon:e.nextIcon},null)]})])]}})),{selected:i.selected,scrollTo:x,scrollOffset:n,focus:v}}});export{Lt as V,Mt as _,Ot as a,$t as b,Ft as c,zt as m};
1
+ import{_ as ye,f as be}from"./confirm-footer-DtV70TTy.js";import{M as _e,k as se,N as pe,_ as Ve,R as H,ay as G,aD as Ie,al as J,az as Pe,ae as ie,L as t,x as q,E as Z,G as K,r as L,K as j,bb as Fe,bB as we,h,be as oe,bh as ge,bg as Re,co as Q,cM as ae,cL as ze,bK as Te,F as Be,I as Ae,c4 as Ee,bS as Me,J as he,C as $e,at as Oe,au as Le,aj as De,a as xe,d3 as Ne,z as He,an as Ge,c7 as Ue,cU as qe,c6 as Ke,am as ne,d4 as je,d5 as We,ao as Xe,bc as Ye,ar as Je,c5 as Qe,bf as Ze,d6 as et,n as ue,d7 as tt,aq as lt,cz as nt,bF as at,s as U,y as re,V as ot,c2 as ce,ad as de,cX as st,bN as it}from"./admin-drawer-panel-BaTVOySr.js";import{h as ut,i as rt,b as ct,m as dt,u as Se,j as ft,a as vt,V as fe}from"./VSelectionControl-Cw_49nCw.js";import{c as mt,d as yt}from"./main-BZTHWXBZ.js";const bt={name:"SubmitFooter",components:{ConfirmFooter:ye},props:{verb:{type:String,required:!0},table:{type:String,required:!0},disabled:{type:Boolean,default:!1}},emits:["cancel","submit"],computed:{..._e(se,{errors:e=>e.form.errors,success:e=>e.form.success})},beforeMount(){this.clearErrors()},methods:{...pe(se,["clearErrors"])}},gt={key:0,class:"errors"},ht={key:1,class:"success"},xt={key:2};function St(e,r,a,m,o,c){const i=ye;return H(),G("footer",null,[Ie("div",null,[e.errors&&e.errors.length>0?(H(),G("small",gt,[(H(!0),G(J,null,Pe(e.errors,(f,n)=>(H(),G("div",{key:n},ie(f),1))),128))])):e.success?(H(),G("small",ht,ie(e.success),1)):(H(),G("small",xt," "))]),t(i,{"confirm-text":`${a.verb} ${a.table}`,disabled:a.disabled,onConfirm:r[0]||(r[0]=f=>e.$emit("submit")),onCancel:r[1]||(r[1]=f=>e.$emit("cancel"))},null,8,["confirm-text","disabled"])])}const Mt=Ve(bt,[["render",St],["__scopeId","data-v-04c721a9"]]),kt=q({...Z(),...ut()},"VForm"),$t=K()({name:"VForm",props:kt(),emits:{"update:modelValue":e=>!0,submit:e=>!0},setup(e,r){let{slots:a,emit:m}=r;const o=rt(e),c=L();function i(n){n.preventDefault(),o.reset()}function f(n){const u=n,d=o.validate();u.then=d.then.bind(d),u.catch=d.catch.bind(d),u.finally=d.finally.bind(d),m("submit",u),u.defaultPrevented||d.then(y=>{var R;let{valid:F}=y;F&&((R=c.value)==null||R.submit())}),u.preventDefault()}return j(()=>{var n;return t("form",{ref:c,class:["v-form",e.class],style:e.style,novalidate:!0,onReset:i,onSubmit:f},[(n=a.default)==null?void 0:n.call(a,o)])}),be(o,c)}}),Ct=q({active:Boolean,max:[Number,String],value:{type:[Number,String],default:0},...Z(),...Fe({transition:{component:we}})},"VCounter"),_t=K()({name:"VCounter",functional:!0,props:Ct(),setup(e,r){let{slots:a}=r;const m=h(()=>e.max?`${e.value} / ${e.max}`:String(e.value));return j(()=>t(Re,{transition:e.transition},{default:()=>[oe(t("div",{class:["v-counter",e.class],style:e.style},[a.default?a.default({counter:m.value,max:e.max,value:e.value}):m.value]),[[ge,e.active]])]})),{}}}),pt=q({floating:Boolean,...Z()},"VFieldLabel"),le=K()({name:"VFieldLabel",props:pt(),setup(e,r){let{slots:a}=r;return j(()=>t(ct,{class:["v-field-label",{"v-field-label--floating":e.floating},e.class],style:e.style,"aria-hidden":e.floating||void 0},a)),{}}}),Vt=["underlined","outlined","filled","solo","solo-inverted","solo-filled","plain"],ke=q({appendInnerIcon:Q,bgColor:String,clearable:Boolean,clearIcon:{type:Q,default:"$clear"},active:Boolean,centerAffix:{type:Boolean,default:void 0},color:String,baseColor:String,dirty:Boolean,disabled:{type:Boolean,default:null},error:Boolean,flat:Boolean,label:String,persistentClear:Boolean,prependInnerIcon:Q,reverse:Boolean,singleLine:Boolean,variant:{type:String,default:"filled",validator:e=>Vt.includes(e)},"onClick:clear":ae(),"onClick:appendInner":ae(),"onClick:prependInner":ae(),...Z(),...ze(),...Te(),...Be()},"VField"),Ce=K()({name:"VField",inheritAttrs:!1,props:{id:String,...dt(),...ke()},emits:{"update:focused":e=>!0,"update:modelValue":e=>!0},setup(e,r){let{attrs:a,emit:m,slots:o}=r;const{themeClasses:c}=Ae(e),{loaderClasses:i}=Ee(e),{focusClasses:f,isFocused:n,focus:u,blur:d}=Se(e),{InputIcon:y}=ft(e),{roundedClasses:F}=Me(e),{rtlClasses:R}=he(),g=h(()=>e.dirty||e.active),C=h(()=>!e.singleLine&&!!(e.label||o.label)),D=$e(),_=h(()=>e.id||`input-${D}`),M=h(()=>`${_.value}-messages`),O=L(),B=L(),N=L(),b=h(()=>["plain","underlined"].includes(e.variant)),{backgroundColorClasses:p,backgroundColorStyles:V}=Oe(Le(e,"bgColor")),{textColorClasses:k,textColorStyles:W}=De(h(()=>e.error||e.disabled?void 0:g.value&&n.value?e.color:e.baseColor));xe(g,v=>{if(C.value){const x=O.value.$el,w=B.value.$el;requestAnimationFrame(()=>{const I=Ne(x),S=w.getBoundingClientRect(),E=S.x-I.x,T=S.y-I.y-(I.height/2-S.height/2),l=S.width/.75,s=Math.abs(l-I.width)>1?{maxWidth:He(l)}:void 0,P=getComputedStyle(x),Y=getComputedStyle(w),ee=parseFloat(P.transitionDuration)*1e3||150,te=parseFloat(Y.getPropertyValue("--v-field-label-scale")),$=Y.getPropertyValue("color");x.style.visibility="visible",w.style.visibility="hidden",Ge(x,{transform:`translate(${E}px, ${T}px) scale(${te})`,color:$,...s},{duration:ee,easing:Xe,direction:v?"normal":"reverse"}).finished.then(()=>{x.style.removeProperty("visibility"),w.style.removeProperty("visibility")})})}},{flush:"post"});const A=h(()=>({isActive:g,isFocused:n,controlRef:N,blur:d,focus:u}));function X(v){v.target!==document.activeElement&&v.preventDefault()}function z(v){var x;v.key!=="Enter"&&v.key!==" "||(v.preventDefault(),v.stopPropagation(),(x=e["onClick:clear"])==null||x.call(e,new MouseEvent("click")))}return j(()=>{var E,T,l;const v=e.variant==="outlined",x=!!(o["prepend-inner"]||e.prependInnerIcon),w=!!(e.clearable||o.clear),I=!!(o["append-inner"]||e.appendInnerIcon||w),S=()=>o.label?o.label({...A.value,label:e.label,props:{for:_.value}}):e.label;return t("div",ne({class:["v-field",{"v-field--active":g.value,"v-field--appended":I,"v-field--center-affix":e.centerAffix??!b.value,"v-field--disabled":e.disabled,"v-field--dirty":e.dirty,"v-field--error":e.error,"v-field--flat":e.flat,"v-field--has-background":!!e.bgColor,"v-field--persistent-clear":e.persistentClear,"v-field--prepended":x,"v-field--reverse":e.reverse,"v-field--single-line":e.singleLine,"v-field--no-label":!S(),[`v-field--variant-${e.variant}`]:!0},c.value,p.value,f.value,i.value,F.value,R.value,e.class],style:[V.value,e.style],onClick:X},a),[t("div",{class:"v-field__overlay"},null),t(Ue,{name:"v-field",active:!!e.loading,color:e.error?"error":typeof e.loading=="string"?e.loading:e.color},{default:o.loader}),x&&t("div",{key:"prepend",class:"v-field__prepend-inner"},[e.prependInnerIcon&&t(y,{key:"prepend-icon",name:"prependInner"},null),(E=o["prepend-inner"])==null?void 0:E.call(o,A.value)]),t("div",{class:"v-field__field","data-no-activator":""},[["filled","solo","solo-inverted","solo-filled"].includes(e.variant)&&C.value&&t(le,{key:"floating-label",ref:B,class:[k.value],floating:!0,for:_.value,style:W.value},{default:()=>[S()]}),t(le,{ref:O,for:_.value},{default:()=>[S()]}),(T=o.default)==null?void 0:T.call(o,{...A.value,props:{id:_.value,class:"v-field__input","aria-describedby":M.value},focus:u,blur:d})]),w&&t(qe,{key:"clear"},{default:()=>[oe(t("div",{class:"v-field__clearable",onMousedown:s=>{s.preventDefault(),s.stopPropagation()}},[t(Ke,{defaults:{VIcon:{icon:e.clearIcon}}},{default:()=>[o.clear?o.clear({...A.value,props:{onKeydown:z,onFocus:u,onBlur:d,onClick:e["onClick:clear"]}}):t(y,{name:"clear",onKeydown:z,onFocus:u,onBlur:d},null)]})]),[[ge,e.dirty]])]}),I&&t("div",{key:"append",class:"v-field__append-inner"},[(l=o["append-inner"])==null?void 0:l.call(o,A.value),e.appendInnerIcon&&t(y,{key:"append-icon",name:"appendInner"},null)]),t("div",{class:["v-field__outline",k.value],style:W.value},[v&&t(J,null,[t("div",{class:"v-field__outline__start"},null),C.value&&t("div",{class:"v-field__outline__notch"},[t(le,{ref:B,floating:!0,for:_.value},{default:()=>[S()]})]),t("div",{class:"v-field__outline__end"},null)]),b.value&&C.value&&t(le,{ref:B,floating:!0,for:_.value},{default:()=>[S()]})])])}),{controlRef:N}}});function It(e){const r=Object.keys(Ce.props).filter(a=>!je(a)&&a!=="class"&&a!=="style");return We(e,r)}const Pt=["color","file","time","date","datetime-local","week","month"],Ft=q({autofocus:Boolean,counter:[Boolean,Number,String],counterValue:[Number,Function],prefix:String,placeholder:String,persistentPlaceholder:Boolean,persistentCounter:Boolean,suffix:String,role:String,type:{type:String,default:"text"},modelModifiers:Object,...vt(),...ke()},"VTextField"),Ot=K()({name:"VTextField",directives:{Intersect:Ye},inheritAttrs:!1,props:Ft(),emits:{"click:control":e=>!0,"mousedown:control":e=>!0,"update:focused":e=>!0,"update:modelValue":e=>!0},setup(e,r){let{attrs:a,emit:m,slots:o}=r;const c=Je(e,"modelValue"),{isFocused:i,focus:f,blur:n}=Se(e),u=h(()=>typeof e.counterValue=="function"?e.counterValue(c.value):typeof e.counterValue=="number"?e.counterValue:(c.value??"").toString().length),d=h(()=>{if(a.maxlength)return a.maxlength;if(!(!e.counter||typeof e.counter!="number"&&typeof e.counter!="string"))return e.counter}),y=h(()=>["plain","underlined"].includes(e.variant));function F(b,p){var V,k;!e.autofocus||!b||(k=(V=p[0].target)==null?void 0:V.focus)==null||k.call(V)}const R=L(),g=L(),C=L(),D=h(()=>Pt.includes(e.type)||e.persistentPlaceholder||i.value||e.active);function _(){var b;C.value!==document.activeElement&&((b=C.value)==null||b.focus()),i.value||f()}function M(b){m("mousedown:control",b),b.target!==C.value&&(_(),b.preventDefault())}function O(b){_(),m("click:control",b)}function B(b){b.stopPropagation(),_(),ue(()=>{c.value=null,tt(e["onClick:clear"],b)})}function N(b){var V;const p=b.target;if(c.value=p.value,(V=e.modelModifiers)!=null&&V.trim&&["text","search","password","tel","url"].includes(e.type)){const k=[p.selectionStart,p.selectionEnd];ue(()=>{p.selectionStart=k[0],p.selectionEnd=k[1]})}}return j(()=>{const b=!!(o.counter||e.counter!==!1&&e.counter!=null),p=!!(b||o.details),[V,k]=Qe(a),{modelValue:W,...A}=fe.filterProps(e),X=It(e);return t(fe,ne({ref:R,modelValue:c.value,"onUpdate:modelValue":z=>c.value=z,class:["v-text-field",{"v-text-field--prefixed":e.prefix,"v-text-field--suffixed":e.suffix,"v-input--plain-underlined":y.value},e.class],style:e.style},V,A,{centerAffix:!y.value,focused:i.value}),{...o,default:z=>{let{id:v,isDisabled:x,isDirty:w,isReadonly:I,isValid:S}=z;return t(Ce,ne({ref:g,onMousedown:M,onClick:O,"onClick:clear":B,"onClick:prependInner":e["onClick:prependInner"],"onClick:appendInner":e["onClick:appendInner"],role:e.role},X,{id:v.value,active:D.value||w.value,dirty:w.value||e.dirty,disabled:x.value,focused:i.value,error:S.value===!1}),{...o,default:E=>{let{props:{class:T,...l}}=E;const s=oe(t("input",ne({ref:C,value:c.value,onInput:N,autofocus:e.autofocus,readonly:I.value,disabled:x.value,name:e.name,placeholder:e.placeholder,size:1,type:e.type,onFocus:_,onBlur:n},l,k),null),[[Ze("intersect"),{handler:F},null,{once:!0}]]);return t(J,null,[e.prefix&&t("span",{class:"v-text-field__prefix"},[t("span",{class:"v-text-field__prefix__text"},[e.prefix])]),o.default?t("div",{class:T,"data-no-activator":""},[o.default(),s]):et(s,{class:T}),e.suffix&&t("span",{class:"v-text-field__suffix"},[t("span",{class:"v-text-field__suffix__text"},[e.suffix])])])}})},details:p?z=>{var v;return t(J,null,[(v=o.details)==null?void 0:v.call(o,z),b&&t(J,null,[t("span",null,null),t(_t,{active:e.persistentCounter||i.value,value:u.value,max:d.value},o.counter)])])}:void 0})}),be({},R,g,C)}});function ve(e){const a=Math.abs(e);return Math.sign(e)*(a/((1/.501-2)*(1-a)+1))}function me(e){let{selectedElement:r,containerSize:a,contentSize:m,isRtl:o,currentScrollOffset:c,isHorizontal:i}=e;const f=i?r.clientWidth:r.clientHeight,n=i?r.offsetLeft:r.offsetTop,u=o&&i?m-n-f:n,d=a+c,y=f+u,F=f*.4;return u<=c?c=Math.max(u-F,0):d<=y&&(c=Math.min(c-(d-y-F),m-a)),c}function wt(e){let{selectedElement:r,containerSize:a,contentSize:m,isRtl:o,isHorizontal:c}=e;const i=c?r.clientWidth:r.clientHeight,f=c?r.offsetLeft:r.offsetTop,n=o&&c?m-f-i/2-a/2:f+i/2-a/2;return Math.min(m-a,Math.max(0,n))}const Rt=Symbol.for("vuetify:v-slide-group"),zt=q({centerActive:Boolean,direction:{type:String,default:"horizontal"},symbol:{type:null,default:Rt},nextIcon:{type:Q,default:"$next"},prevIcon:{type:Q,default:"$prev"},showArrows:{type:[Boolean,String],validator:e=>typeof e=="boolean"||["always","desktop","mobile"].includes(e)},...Z(),...mt(),...lt(),...nt({selectedClass:"v-slide-group-item--active"})},"VSlideGroup"),Lt=K()({name:"VSlideGroup",props:zt(),emits:{"update:modelValue":e=>!0},setup(e,r){let{slots:a}=r;const{isRtl:m}=he(),{displayClasses:o,mobile:c}=yt(e),i=at(e,e.symbol),f=U(!1),n=U(0),u=U(0),d=U(0),y=h(()=>e.direction==="horizontal"),{resizeRef:F,contentRect:R}=re(),{resizeRef:g,contentRect:C}=re(),D=h(()=>i.selected.value.length?i.items.value.findIndex(l=>l.id===i.selected.value[0]):-1),_=h(()=>i.selected.value.length?i.items.value.findIndex(l=>l.id===i.selected.value[i.selected.value.length-1]):-1);if(ot){let l=-1;xe(()=>[i.selected.value,R.value,C.value,y.value],()=>{cancelAnimationFrame(l),l=requestAnimationFrame(()=>{if(R.value&&C.value){const s=y.value?"width":"height";u.value=R.value[s],d.value=C.value[s],f.value=u.value+1<d.value}if(D.value>=0&&g.value){const s=g.value.children[_.value];D.value===0||!f.value?n.value=0:e.centerActive?n.value=wt({selectedElement:s,containerSize:u.value,contentSize:d.value,isRtl:m.value,isHorizontal:y.value}):f.value&&(n.value=me({selectedElement:s,containerSize:u.value,contentSize:d.value,isRtl:m.value,currentScrollOffset:n.value,isHorizontal:y.value}))}})})}const M=U(!1);let O=0,B=0;function N(l){const s=y.value?"clientX":"clientY";B=(m.value&&y.value?-1:1)*n.value,O=l.touches[0][s],M.value=!0}function b(l){if(!f.value)return;const s=y.value?"clientX":"clientY",P=m.value&&y.value?-1:1;n.value=P*(B+O-l.touches[0][s])}function p(l){const s=d.value-u.value;n.value<0||!f.value?n.value=0:n.value>=s&&(n.value=s),M.value=!1}function V(){F.value&&(F.value[y.value?"scrollLeft":"scrollTop"]=0)}const k=U(!1);function W(l){if(k.value=!0,!(!f.value||!g.value)){for(const s of l.composedPath())for(const P of g.value.children)if(P===s){n.value=me({selectedElement:P,containerSize:u.value,contentSize:d.value,isRtl:m.value,currentScrollOffset:n.value,isHorizontal:y.value});return}}}function A(l){k.value=!1}function X(l){var s;!k.value&&!(l.relatedTarget&&((s=g.value)!=null&&s.contains(l.relatedTarget)))&&v()}function z(l){g.value&&(y.value?l.key==="ArrowRight"?v(m.value?"prev":"next"):l.key==="ArrowLeft"&&v(m.value?"next":"prev"):l.key==="ArrowDown"?v("next"):l.key==="ArrowUp"&&v("prev"),l.key==="Home"?v("first"):l.key==="End"&&v("last"))}function v(l){var s,P,Y,ee,te;if(g.value)if(!l)(s=st(g.value)[0])==null||s.focus();else if(l==="next"){const $=(P=g.value.querySelector(":focus"))==null?void 0:P.nextElementSibling;$?$.focus():v("first")}else if(l==="prev"){const $=(Y=g.value.querySelector(":focus"))==null?void 0:Y.previousElementSibling;$?$.focus():v("last")}else l==="first"?(ee=g.value.firstElementChild)==null||ee.focus():l==="last"&&((te=g.value.lastElementChild)==null||te.focus())}function x(l){const s=n.value+(l==="prev"?-1:1)*u.value;n.value=it(s,0,d.value-u.value)}const w=h(()=>{let l=n.value>d.value-u.value?-(d.value-u.value)+ve(d.value-u.value-n.value):-n.value;n.value<=0&&(l=ve(-n.value));const s=m.value&&y.value?-1:1;return{transform:`translate${y.value?"X":"Y"}(${s*l}px)`,transition:M.value?"none":"",willChange:M.value?"transform":""}}),I=h(()=>({next:i.next,prev:i.prev,select:i.select,isSelected:i.isSelected})),S=h(()=>{switch(e.showArrows){case"always":return!0;case"desktop":return!c.value;case!0:return f.value||Math.abs(n.value)>0;case"mobile":return c.value||f.value||Math.abs(n.value)>0;default:return!c.value&&(f.value||Math.abs(n.value)>0)}}),E=h(()=>Math.abs(n.value)>0),T=h(()=>d.value>Math.abs(n.value)+u.value);return j(()=>t(e.tag,{class:["v-slide-group",{"v-slide-group--vertical":!y.value,"v-slide-group--has-affixes":S.value,"v-slide-group--is-overflowing":f.value},o.value,e.class],style:e.style,tabindex:k.value||i.selected.value.length?-1:0,onFocus:X},{default:()=>{var l,s,P;return[S.value&&t("div",{key:"prev",class:["v-slide-group__prev",{"v-slide-group__prev--disabled":!E.value}],onClick:()=>E.value&&x("prev")},[((l=a.prev)==null?void 0:l.call(a,I.value))??t(ce,null,{default:()=>[t(de,{icon:m.value?e.nextIcon:e.prevIcon},null)]})]),t("div",{key:"container",ref:F,class:"v-slide-group__container",onScroll:V},[t("div",{ref:g,class:"v-slide-group__content",style:w.value,onTouchstartPassive:N,onTouchmovePassive:b,onTouchendPassive:p,onFocusin:W,onFocusout:A,onKeydown:z},[(s=a.default)==null?void 0:s.call(a,I.value)])]),S.value&&t("div",{key:"next",class:["v-slide-group__next",{"v-slide-group__next--disabled":!T.value}],onClick:()=>T.value&&x("next")},[((P=a.next)==null?void 0:P.call(a,I.value))??t(ce,null,{default:()=>[t(de,{icon:m.value?e.prevIcon:e.nextIcon},null)]})])]}})),{selected:i.selected,scrollTo:x,scrollOffset:n,focus:v}}});export{Lt as V,Mt as _,Ot as a,$t as b,Ft as c,zt as m};
@@ -1 +1 @@
1
- import{x as h,E as m,ap as d,aq as b,F as v,G as f,I as c,as as u,K as g,L as t,z as x}from"./admin-drawer-panel-CGj6J0rX.js";const T=h({fixedHeader:Boolean,fixedFooter:Boolean,height:[Number,String],hover:Boolean,...m(),...d(),...b(),...v()},"VTable"),k=f()({name:"VTable",props:T(),setup(a,r){let{slots:e,emit:y}=r;const{themeClasses:i}=c(a),{densityClasses:n}=u(a);return g(()=>t(a.tag,{class:["v-table",{"v-table--fixed-height":!!a.height,"v-table--fixed-header":a.fixedHeader,"v-table--fixed-footer":a.fixedFooter,"v-table--has-top":!!e.top,"v-table--has-bottom":!!e.bottom,"v-table--hover":a.hover},i.value,n.value,a.class],style:a.style},{default:()=>{var o,s,l;return[(o=e.top)==null?void 0:o.call(e),e.default?t("div",{class:"v-table__wrapper",style:{height:x(a.height)}},[t("table",null,[e.default()])]):(s=e.wrapper)==null?void 0:s.call(e),(l=e.bottom)==null?void 0:l.call(e)]}})),{}}});export{k as V,T as m};
1
+ import{x as h,E as m,ap as d,aq as b,F as v,G as f,I as c,as as u,K as g,L as t,z as x}from"./admin-drawer-panel-BaTVOySr.js";const T=h({fixedHeader:Boolean,fixedFooter:Boolean,height:[Number,String],hover:Boolean,...m(),...d(),...b(),...v()},"VTable"),k=f()({name:"VTable",props:T(),setup(a,r){let{slots:e,emit:y}=r;const{themeClasses:i}=c(a),{densityClasses:n}=u(a);return g(()=>t(a.tag,{class:["v-table",{"v-table--fixed-height":!!a.height,"v-table--fixed-header":a.fixedHeader,"v-table--fixed-footer":a.fixedFooter,"v-table--has-top":!!e.top,"v-table--has-bottom":!!e.bottom,"v-table--hover":a.hover},i.value,n.value,a.class],style:a.style},{default:()=>{var o,s,l;return[(o=e.top)==null?void 0:o.call(e),e.default?t("div",{class:"v-table__wrapper",style:{height:x(a.height)}},[t("table",null,[e.default()])]):(s=e.wrapper)==null?void 0:s.call(e),(l=e.bottom)==null?void 0:l.call(e)]}})),{}}});export{k as V,T as m};
@@ -1 +1 @@
1
- import{x as h,E as m,ap as d,aq as b,F as v,G as f,I as c,as as u,K as g,L as t,z as x}from"./admin-drawer-panel-CGj6J0rX.js";const T=h({fixedHeader:Boolean,fixedFooter:Boolean,height:[Number,String],hover:Boolean,...m(),...d(),...b(),...v()},"VTable"),k=f()({name:"VTable",props:T(),setup(a,r){let{slots:e,emit:y}=r;const{themeClasses:i}=c(a),{densityClasses:n}=u(a);return g(()=>t(a.tag,{class:["v-table",{"v-table--fixed-height":!!a.height,"v-table--fixed-header":a.fixedHeader,"v-table--fixed-footer":a.fixedFooter,"v-table--has-top":!!e.top,"v-table--has-bottom":!!e.bottom,"v-table--hover":a.hover},i.value,n.value,a.class],style:a.style},{default:()=>{var o,s,l;return[(o=e.top)==null?void 0:o.call(e),e.default?t("div",{class:"v-table__wrapper",style:{height:x(a.height)}},[t("table",null,[e.default()])]):(s=e.wrapper)==null?void 0:s.call(e),(l=e.bottom)==null?void 0:l.call(e)]}})),{}}});export{k as V,T as m};
1
+ import{x as h,E as m,ap as d,aq as b,F as v,G as f,I as c,as as u,K as g,L as t,z as x}from"./admin-drawer-panel-BaTVOySr.js";const T=h({fixedHeader:Boolean,fixedFooter:Boolean,height:[Number,String],hover:Boolean,...m(),...d(),...b(),...v()},"VTable"),k=f()({name:"VTable",props:T(),setup(a,r){let{slots:e,emit:y}=r;const{themeClasses:i}=c(a),{densityClasses:n}=u(a);return g(()=>t(a.tag,{class:["v-table",{"v-table--fixed-height":!!a.height,"v-table--fixed-header":a.fixedHeader,"v-table--fixed-footer":a.fixedFooter,"v-table--has-top":!!e.top,"v-table--has-bottom":!!e.bottom,"v-table--hover":a.hover},i.value,n.value,a.class],style:a.style},{default:()=>{var o,s,l;return[(o=e.top)==null?void 0:o.call(e),e.default?t("div",{class:"v-table__wrapper",style:{height:x(a.height)}},[t("table",null,[e.default()])]):(s=e.wrapper)==null?void 0:s.call(e),(l=e.bottom)==null?void 0:l.call(e)]}})),{}}});export{k as V,T as m};
@@ -1,7 +1,7 @@
1
1
  function __vite__mapDeps(indexes) {
2
2
  if (!__vite__mapDeps.viteFileDeps) {
3
- __vite__mapDeps.viteFileDeps = ["assets/admin-drawer-panel-CGj6J0rX.js","assets/admin-drawer-panel-Bk7z8uTR.css"]
3
+ __vite__mapDeps.viteFileDeps = ["assets/admin-drawer-panel-BaTVOySr.js","assets/admin-drawer-panel-Bk7z8uTR.css"]
4
4
  }
5
5
  return indexes.map((i) => __vite__mapDeps.viteFileDeps[i])
6
6
  }
7
- import{x as ee,bY as ke,E as ie,bL as we,bK as Se,aq as le,F as ye,G as te,I as Pe,at as ae,au as Q,bZ as Te,bP as Ce,bS as Re,s as H,y as Rt,h as _,K as oe,L as r,z as X,a$ as Ge,b_ as Vt,M as z,k as re,ax as ue,m as $,N as ce,_ as M,R as p,O as S,P as h,aD as A,ae as P,ay as q,aB as N,b$ as Ye,c0 as Bt,c1 as Dt,aa as T,ad as U,be as xt,bh as Et,c2 as It,Q as J,am as W,ak as Xe,c3 as Lt,ar as be,c4 as At,r as qe,C as Nt,c5 as $t,al as Ve,c6 as Z,bQ as Ot,c7 as Mt,bT as Ut,c8 as Ft,af as Ke,b1 as Ht,b2 as zt,ag as Ze,aX as me,c9 as Qe,ca as Wt,aC as Je,bn as et,aA as Be,aT as pe,bU as tt,cb as ot,H as De,cc as nt,l as jt,cd as Gt,ce as Yt,B as st,a as K,o as at,cf as Xt,J as rt,cg as qt,bI as Kt,ch as Zt,ci as ge,cj as Qt,av as it,bV as lt,ck as Jt,n as eo,a9 as to,bi as oo}from"./admin-drawer-panel-CGj6J0rX.js";import{m as ut,b as ct,_ as dt,C as Ae,r as he,u as no,A as Ne,c as so,d as ao}from"./main-BXWucpmC.js";import{c as ro,t as io}from"./index-DUjeNg4x.js";import{V as mt,a as lo}from"./confirm-footer-CLwOC3F0.js";import{_ as gt}from"./change-password-dialog-DDvVSrWH.js";import{_ as ht,a as fe,b as uo}from"./VSlideGroup-D4n-jSgi.js";import{a as co,c as mo,u as go,V as $e,d as Oe}from"./VSelectionControl-CC9aC7ZT.js";const ho=ee({app:Boolean,color:String,height:{type:[Number,String],default:"auto"},...ke(),...ie(),...we(),...ut(),...Se(),...le({tag:"footer"}),...ye()},"VFooter"),ft=te()({name:"VFooter",props:ho(),setup(e,t){let{slots:o}=t;const{themeClasses:a}=Pe(e),{backgroundColorClasses:n,backgroundColorStyles:s}=ae(Q(e,"color")),{borderClasses:i}=Te(e),{elevationClasses:l}=Ce(e),{roundedClasses:k}=Re(e),v=H(32),{resizeRef:u}=Rt(b=>{b.length&&(v.value=b[0].target.clientHeight)}),g=_(()=>e.height==="auto"?v.value:parseInt(e.height,10)),{layoutItemStyles:m}=ct({id:e.name,order:_(()=>parseInt(e.order,10)),position:_(()=>"bottom"),layoutSize:g,elementSize:_(()=>e.height==="auto"?void 0:g.value),active:_(()=>e.app),absolute:Q(e,"absolute")});return oe(()=>r(e.tag,{ref:u,class:["v-footer",a.value,n.value,i.value,l.value,k.value,e.class],style:[s.value,e.app?m.value:{height:X(e.height)},e.style]},o)),{}}}),fo={name:"VersionFooter",data(){return{mdiOpenInNew:Ge,mdiContentCopy:Vt}},computed:{...z(re,{versions:e=>e.versions}),...ue($,["isUserAdmin"]),outdated:function(){return this.isUserAdmin&&this.semverGreaterThan(this.versions.latest>this.versions.installed)},versionTitle:function(){return this.outdated?`v${this.versions.latest} is available`:"up to date"}},created(){this.loadVersions()},methods:{...ce(re,["loadVersions"]),semverGreaterThan(e,t){try{if(!e||!t)return!1;const o=e.split("."),a=t.split(".");for(const[n,s]of o.entries())if(+s>+a[n])return!0}catch(o){console.debug("compare codex versions",e,">",t,o)}return!1}}},vo={id:"version"},bo={key:0,id:"latest"};function po(e,t,o,a,n,s){return p(),S(ft,{id:"version-footer",title:s.versionTitle},{default:h(()=>[A("div",vo,"codex v"+P(e.versions.installed),1),s.outdated?(p(),q("div",bo," codex v"+P(e.versions.latest)+" is available ",1)):N("",!0)]),_:1},8,["title"])}const vt=M(fo,[["render",po],["__scopeId","data-v-cd481730"]]),_o={name:"OPDSUrl",props:{title:{type:String,required:!0},subtitle:{type:String,default:void 0},url:{type:String,required:!0}},data(){return{mdiRss:Ye,showTooltip:{show:!1}}},computed:{clipBoardEnabled(){return location.protocol=="https:"},clipBoardIcon(){return this.showTooltip.show?Bt:Dt},tooltip(){return this.clipBoardEnabled}},methods:{onClickURL(){this.clipBoardEnabled&&ro(this.url,this.showTooltip)}}},ko=["title"],wo={key:0},So={class:"copied"},yo={key:0,class:"subtitle"},Po={class:"opdsUrl"};function To(e,t,o,a,n,s){return p(),q("div",{class:"opdsVersion",title:s.tooltip,onClick:t[0]||(t[0]=(...i)=>s.onClickURL&&s.onClickURL(...i))},[A("h3",null,[T(P(o.title)+" ",1),s.clipBoardEnabled?(p(),q("span",wo,[r(U,{class:"clipBoardIcon",size:"small"},{default:h(()=>[T(P(s.clipBoardIcon),1)]),_:1}),r(It,null,{default:h(()=>[xt(A("span",So,"Copied",512),[[Et,n.showTooltip.show]])]),_:1})])):N("",!0)]),o.subtitle?(p(),q("div",yo,P(o.subtitle),1)):N("",!0),A("div",Po,P(o.url),1)],8,ko)}const Co=M(_o,[["render",To],["__scopeId","data-v-68a52a66"]]),Ro={name:"OPDSDialog",components:{OPDSUrl:Co},data(){return{mdiRss:Ye,opdsV1URL:window.origin+window.CODEX.OPDS_V1_PATH,opdsV2URL:window.origin+window.CODEX.OPDS_V2_PATH}}},Vo={id:"opds"};function Bo(e,t,o,a,n,s){const i=J("OPDSUrl");return p(),S(mt,{"max-width":"30em"},{activator:h(({props:l})=>[r(Xe,W({id:"opdsButton",icon:"",size:"small",variant:"plain"},l),{default:h(()=>[r(U,null,{default:h(()=>[T(P(n.mdiRss),1)]),_:1}),T(" OPDS ")]),_:2},1040)]),default:h(()=>[A("div",Vo,[A("h2",null,[r(U,{size:"x=small",class:"inline"},{default:h(()=>[T(P(n.mdiRss),1)]),_:1}),T(" OPDS ")]),r(i,{title:"v1.2",url:n.opdsV1URL},null,8,["url"]),r(i,{title:"v2.0",url:n.opdsV2URL,subtitle:"OPDS v2 is experimental and not widely or well supported by clients"},null,8,["url"])])]),_:1})}const Do=M(Ro,[["render",Bo],["__scopeId","data-v-741734ce"]]),xo={name:"SettingsFooter",components:{OPDSDialog:Do},data(){return{mdiOpenInNew:Ge,mdiSourceRepository:Lt}},computed:{...ue($,["isCodexViewable"])}},Eo={id:"repo",href:"https://github.com/ajslater/codex",title:"Codex Source Repository",target:"_blank"};function Io(e,t,o,a,n,s){const i=J("OPDSDialog");return p(),S(ft,{id:"settingsFooter"},{default:h(()=>[e.isCodexViewable?(p(),S(i,{key:0})):N("",!0),A("a",Eo,[r(U,{id:"repoIcon",size:"x-small"},{default:h(()=>[T(P(n.mdiSourceRepository),1)]),_:1}),T(" repository"),r(U,{color:e.$vuetify.theme.current.colors.iconsInactive,size:"x-small"},{default:h(()=>[T(P(n.mdiOpenInNew),1)]),_:1},8,["color"])])]),_:1})}const bt=M(xo,[["render",Io],["__scopeId","data-v-f9eb593e"]]),Lo=ee({indeterminate:Boolean,inset:Boolean,flat:Boolean,loading:{type:[Boolean,String],default:!1},...co(),...mo()},"VSwitch"),Ao=te()({name:"VSwitch",inheritAttrs:!1,props:Lo(),emits:{"update:focused":e=>!0,"update:modelValue":e=>!0,"update:indeterminate":e=>!0},setup(e,t){let{attrs:o,slots:a}=t;const n=be(e,"indeterminate"),s=be(e,"modelValue"),{loaderClasses:i}=At(e),{isFocused:l,focus:k,blur:v}=go(e),u=qe(),g=_(()=>typeof e.loading=="string"&&e.loading!==""?e.loading:e.color),m=Nt(),b=_(()=>e.id||`switch-${m}`);function C(){n.value&&(n.value=!1)}function y(x){var R,V;x.stopPropagation(),x.preventDefault(),(V=(R=u.value)==null?void 0:R.input)==null||V.click()}return oe(()=>{const[x,R]=$t(o),V=$e.filterProps(e),B=Oe.filterProps(e);return r($e,W({class:["v-switch",{"v-switch--flat":e.flat},{"v-switch--inset":e.inset},{"v-switch--indeterminate":n.value},i.value,e.class]},x,V,{modelValue:s.value,"onUpdate:modelValue":E=>s.value=E,id:b.value,focused:l.value,style:e.style}),{...a,default:E=>{let{id:d,messagesId:c,isDisabled:f,isReadonly:w,isValid:D}=E;const I={model:s,isValid:D};return r(Oe,W({ref:u},B,{modelValue:s.value,"onUpdate:modelValue":[F=>s.value=F,C],id:d.value,"aria-describedby":c.value,type:"checkbox","aria-checked":n.value?"mixed":void 0,disabled:f.value,readonly:w.value,onFocus:k,onBlur:v},R),{...a,default:F=>{let{backgroundColorClasses:j,backgroundColorStyles:O}=F;return r("div",{class:["v-switch__track",...j.value],style:O.value,onClick:y},[a["track-true"]&&r("div",{key:"prepend",class:"v-switch__track-true"},[a["track-true"](I)]),a["track-false"]&&r("div",{key:"append",class:"v-switch__track-false"},[a["track-false"](I)])])},input:F=>{let{inputNode:j,icon:O,backgroundColorClasses:ne,backgroundColorStyles:de}=F;return r(Ve,null,[j,r("div",{class:["v-switch__thumb",{"v-switch__thumb--filled":O||e.loading},e.inset?void 0:ne.value],style:e.inset?void 0:de.value},[a.thumb?r(Z,{defaults:{VIcon:{icon:O,size:"x-small"}}},{default:()=>[a.thumb({...I,icon:O})]}):r(Ot,null,{default:()=>[e.loading?r(Mt,{name:"v-switch",active:!0,color:D.value===!1?void 0:g.value},{default:G=>a.loader?a.loader(G):r(Ut,{active:G.isActive,color:G.color,indeterminate:!0,size:"16",width:"2"},null)}):O&&r(U,{key:String(O),icon:O,size:"x-small"},null)]})])])}})}})}),{}}}),No={name:"AuthLoginDialog",components:{SubmitFooter:ht},data(){return{rules:{username:[e=>!!e||"Username is required"],password:[e=>e?this.registerMode&&e.length<this.MIN_PASSWORD_LEN?`Password must be ${this.MIN_PASSWORD_LEN} characters long`:!0:"Password is required"],passwordConfirm:[e=>e===this.credentials.password||"Passwords must match"]},formModel:{},credentials:{username:"",password:"",passwordConfirm:""},submitButtonEnabled:!1,showDialog:!1,registerMode:!1,mdiLogin:Ft}},computed:{...z(re,{formErrors:e=>e.form.errors,formSuccess:e=>e.form.success}),...z($,{adminFlags:e=>e.adminFlags,MIN_PASSWORD_LEN:e=>e.MIN_PASSWORD_LEN}),submitButtonLabel:function(){return this.registerMode?"Register":"Login"}},watch:{showDialog(e){e&&(this.loadAdminFlags(),this.$refs.form&&this.$refs.form.reset())},credentials:{handler(){const e=this.$refs.form;e?e.validate().then(({valid:t})=>this.submitButtonEnabled=t).catch(console.error):this.submitButtonEnabled=!1},deep:!0}},mounted(){window.addEventListener("keyup",this._keyListener)},beforeUnmount(){window.removeEventListener("keyup",this._keyListener)},methods:{...ce($,["loadAdminFlags","login","register"]),doAuth(e){return this[e](this.credentials).then(()=>this.showDialog=this.formErrors&&this.formErrors.length>0).catch(console.error)},submit(){this.$refs.form.validate().then(({valid:t})=>{if(!t)return;const o=this.registerMode?"register":"login";return this.doAuth(o)}).catch(console.error)},_keyListener(e){e.stopImmediatePropagation()}}};function $o(e,t,o,a,n,s){const i=ht;return p(),S(mt,{modelValue:n.showDialog,"onUpdate:modelValue":t[7]||(t[7]=l=>n.showDialog=l),origin:"center-top",transition:"slide-y-transition","max-width":"20em"},{activator:h(({props:l})=>[r(Ze,Ht(zt(l)),{default:h(()=>[r(Ke,null,{default:h(()=>[r(U,null,{default:h(()=>[T(P(n.mdiLogin),1)]),_:1}),T(" Login ")]),_:1})]),_:2},1040)]),default:h(()=>[r(uo,{id:"authDialog",ref:"form"},{default:h(()=>[r(fe,{modelValue:n.credentials.username,"onUpdate:modelValue":t[0]||(t[0]=l=>n.credentials.username=l),autocomplete:"username",label:"Username",rules:n.rules.username,clearable:"",autofocus:"",onKeydown:t[1]||(t[1]=me(l=>e.$refs.password.focus(),["enter"]))},null,8,["modelValue","rules"]),r(fe,{ref:"password",modelValue:n.credentials.password,"onUpdate:modelValue":t[2]||(t[2]=l=>n.credentials.password=l),autocomplete:n.registerMode?"new-password":"current-password",label:"Password",rules:n.rules.password,clearable:"",type:"password",onKeydown:t[3]||(t[3]=me(l=>{n.registerMode?e.$refs.passwordConfirm.focus():s.submit()},["enter"]))},null,8,["modelValue","autocomplete","rules"]),r(Qe,null,{default:h(()=>[n.registerMode?(p(),S(fe,{key:0,ref:"passwordConfirm",modelValue:n.credentials.passwordConfirm,"onUpdate:modelValue":t[4]||(t[4]=l=>n.credentials.passwordConfirm=l),autocomplete:"new-password",label:"Confirm Password",rules:n.rules.passwordConfirm,clearable:"",type:"password",onKeydown:me(s.submit,["enter"])},null,8,["modelValue","rules","onKeydown"])):N("",!0)]),_:1}),e.adminFlags.registration?(p(),S(Ao,{key:0,modelValue:n.registerMode,"onUpdate:modelValue":t[5]||(t[5]=l=>n.registerMode=l),label:"Register"},{default:h(()=>[T(" Register ")]),_:1},8,["modelValue"])):N("",!0),r(i,{verb:n.registerMode?"Register":"Login",table:"",disabled:!n.submitButtonEnabled,onSubmit:s.submit,onCancel:t[6]||(t[6]=l=>n.showDialog=!1)},null,8,["verb","disabled","onSubmit"])]),_:1},512)]),_:1},8,["modelValue"])}const Oo=M(No,[["render",$o],["__scopeId","data-v-ef06f84f"]]),Mo={name:"AuthLogoutItem",data:function(){return{mdiLogout:Wt}},computed:{...z($,{username:e=>e.user.username})},methods:{...ce($,["logout"])}};function Uo(e,t,o,a,n,s){return p(),S(Ze,{onClick:e.logout},{default:h(()=>[r(Ke,null,{default:h(()=>[r(U,null,{default:h(()=>[T(P(e.mdiLogout),1)]),_:1}),T("Logout "+P(e.username),1)]),_:1})]),_:1},8,["onClick"])}const Fo=M(Mo,[["render",Uo]]),Ho={name:"AuthMenu",components:{ChangePasswordDialog:gt,AuthLoginDialog:Oo,AuthLogoutItem:Fo},computed:{...z($,{user:e=>e.user})},methods:{...ce($,["logout"])}};function zo(e,t,o,a,n,s){const i=J("AuthLogoutItem"),l=gt,k=J("AuthLoginDialog");return p(),q(Ve,null,[e.user?(p(),S(i,{key:0})):N("",!0),e.user?(p(),S(l,{key:1,user:e.user},null,8,["user"])):(p(),S(k,{key:2}))],64)}const pt=M(Ho,[["render",zo]]),Me=Je(et(()=>dt(()=>import("./admin-drawer-panel-CGj6J0rX.js").then(e=>e.dx),__vite__mapDeps([0,1])))),Wo={name:"SettingsCommonPanel",components:{AuthMenu:pt,AdminMenu:Me},props:{adminMenu:{type:Boolean,default:!0}},data(){return{AdminMenu:Me}},computed:{...ue($,["isUserAdmin"])}},jo={id:"commonPanel"};function Go(e,t,o,a,n,s){const i=pt;return p(),q("div",jo,[r(i),e.isUserAdmin?(p(),S(pe,{key:0})):N("",!0),e.isUserAdmin?(p(),S(Be(n.AdminMenu),{key:1,menu:o.adminMenu},null,8,["menu"])):N("",!0)])}const Yo=M(Wo,[["render",Go],["__scopeId","data-v-a21632a4"]]),Xo=e=>{const t=e.pk,o=ot();return e={...e,...o},delete e.pk,De.get(`c/${t}`,{params:e})},qo=()=>{const e=ot();return De.get("c/settings",{params:e})},Ko=e=>De.put("c/settings",e),In=({pk:e,mtime:t})=>`${nt(e)}/download/comic-${e}.cbz?mtime=${t}`,Ln=({pk:e,page:t,mtime:o})=>`${nt(e)}/${t}/page.jpg?mtime=${o}`,Ue=({pk:e,page:t,mtime:o})=>`${tt(e)}/${t}/page.jpg?mtime=${o}`,Zo=({pk:e,mtime:t})=>`/c/${e}/book.pdf?mtime=${t}`,ve={getPdfBookSource:Zo,getReaderBasePath:tt,getReaderInfo:Xo,getReaderSettings:qo,setReaderSettings:Ko},Qo=function(e){let t;return e?t=e.length===4&&!Number.isNaN(e)?" ("+e+")":" v"+e:t="",t},Jo=function({issueNumber:e,issueSuffix:t},o){let a;try{e==null&&!t&&(e=0);const n=Number.parseFloat(e),s=Math.floor(n);o===void 0&&(o=0),n===s?a=s.toString():(a=n.toString(),o+=a.split(".")[1].length+1),a=a.padStart(o,"0")}catch{a=""}return t&&(a+=t),a},en=function({issueNumber:e,issueSuffix:t,issueCount:o},a){let n="#"+Jo({issueNumber:e,issueSuffix:t},a);return o&&(n+=` of ${o}`),n},tn=function({seriesName:e,volumeName:t,issueNumber:o,issueSuffix:a,issueCount:n},s){const i=Qo(t),l=en({issueNumber:o,issueSuffix:a,issueCount:n},s);return[e,i,l].filter(Boolean).join(" ")},_t={fitTo:"",twoPages:null,readingDirection:"",readRtlInReverse:null};Object.freeze(_t);const kt={cacheBook:!1};Object.freeze(kt);const se=new Set(["",null,void 0]);Object.freeze(se);const wt={prev:"next",next:"prev"};Object.freeze(wt);const _e={rel:"prefetch",as:"image"};Object.freeze(_e);const xe=new Set(["ttb","btt"]);Object.freeze(xe);const St=new Set(["rtl","btt"]);Object.freeze(St);const Fe=1,yt={S:"Screen",W:"Width",H:"Height",O:"Original"};Object.freeze(yt);const on=()=>Math.max(document.documentElement.clientWidth||0,window.innerWidth||0)>600?"HEIGHT":"WIDTH",He=e=>{xe.has(e.readingDirection)&&e.twoPages&&(e.twoPages=!1)},nn=jt("reader",{state:()=>({choices:{fitTo:Ae.reader.fitTo,readingDirection:Ae.reader.readingDirection,nullValues:se},readerSettings:{fitTo:on(),twoPages:!1,readingDirection:"ltr",readRtlInReverse:!1},books:{current:void 0,prev:!1,next:!1},arcs:[],arc:{},page:void 0,routes:{prev:!1,next:!1,books:{prev:!1,next:!1}},bookChange:void 0,reactWithScroll:!1,clientSettings:{cacheBook:!1,scale:Fe}}),getters:{groupBooks(e){const t=[];return e.books.prev[0]&&t.push[e.books.prev[0]],t.push[e.books.current],e.books.next[0]&&t.push[e.books.next[0]],t},activeSettings(e){return e.getSettings(e.books.current)||{}},activeTitle(e){var a;const t=e.books.current;let o;return((a=e.arcs[0])==null?void 0:a.group)==="f"&&(o=t==null?void 0:t.filename),o||(o=t?tn(t):""),o},routeParams(e){return{pk:+e.books.current.pk,page:+e.page}},isVertical(e){return xe.has(e.activeSettings.readingDirection)},isPDF(e){var t,o;return((o=(t=e.books)==null?void 0:t.current)==null?void 0:o.fileType)=="PDF"},cacheBook(e){return e.clientSettings.cacheBook&&!(this.isPDF&&this.isVertical)},isPagesNotRoutes(e){return e.isVertical||this.cacheBook},isReadInReverse(e){return St.has(e.activeSettings.readingDirection)},isBTT(e){return e.activeSettings.readingDirection==="btt"},isFirstPage(e){return e.page===0},isLastPage(e){const t=e.books.current?e.books.current.maxPage:0,o=e.activeSettings.twoPages?1:0,a=t-o;return this.page>=a}},actions:{setReadRTLInReverse(e){return this.readerSettings.readRtlInReverse&&e.readingDirection==="rtl"?{...e,readingDirection:"ltr"}:e},getSettings(e){const t={...se};let o=e?e.settings:{};o=this.setReadRTLInReverse(o);const a=[this.readerSettings,o];for(const n of a)for(const[s,i]of Object.entries(n))se.has(i)||(t[s]=i);return He(t),t},bookChangeLocation(e){let t;return this.isBTT?t=e==="next"?"left":"right":t=e==="next"?"right":"left",t},bookChangeCursorClass(e){let t;return this.isReadInReverse?t=e==="next"?"up":"down":t=e==="next"?"down":"up",t+"Cursor"},bookChangeShow(e){return e==="prev"?this.books.prev&&this.isFirstPage:this.books.next&&this.isLastPage},bookChangeIcon(e){let t=e==="next";return this.isBTT&&(t=!t),t?Gt:Yt},isCoverPage(e,t){return e.readLtr!==!1&&t===0||e.readLtr&&t===e.maxPage},_getRouteParams(e,t,o){const a=o==="prev"?-1:1;let n=1;this.getSettings(e).twoPages&&!this.isCoverPage(e,+t+a)&&(n=2),n=n*a;const i=+t+n;let l=!1;return i>=0&&i<=e.maxPage&&(l={pk:e.pk,page:i}),l},fitToClass(e){const t=this.getSettings(e),o={};let a;if(this.clientSettings.scale>Fe?a="Orig":a=yt[t.fitTo],a){let n="fitTo";n+=io(a),this.isVertical?n+="Vertical":t.twoPages&&(n+="Two"),o[n]=!0}return o},_updateSettings(e,t){t?(this.books.current.settings={...this.books.current.settings,...e},He(this.books.current.settings)):this.readerSettings={...this.readerSettings,...e}},_getBookRoutePage(e,t){let o=0;if(t&&e.readLtr!==!1||!t&&e.readLtr===!1){const n=this.getSettings(e).twoPages?-1:0;o=e.maxPage+n}return o},_getBookRoute(e,t){if(!e)return!1;const o=this._getBookRoutePage(e,t);return{pk:e.pk,page:o}},_getBookRoutes(e,t){return{prev:this._getBookRoute(e,!0),next:this._getBookRoute(t,!1)}},async setRoutesAndBookmarkPage(e){const t=this.books.current;this.$patch(o=>{o.routes.prev=this._getRouteParams(t,e,"prev"),o.routes.next=this._getRouteParams(t,e,"next")}),await this._setBookmarkPage(e).then(()=>(this.bookChange=void 0,!0))},setActivePage(e,t=!0){if(e<0)return console.warn("Page out of bounds. Redirecting to 0."),this.routeToPage(0);if(e>this.books.current.maxPage)return console.warn(`Page out of bounds. Redirecting to ${this.books.current.maxPage}.`),this.routeToPage(this.books.current.maxPage);if(this.reactWithScroll=!!t,this.page=+e,this.setRoutesAndBookmarkPage(e),this.isPagesNotRoutes){const o={params:{pk:this.books.current.pk,page:e}},{href:a}=he.resolve(o);window.history.pushState({},void 0,a)}else window.scrollTo(0,0)},async loadReaderSettings(){return ve.getReaderSettings().then(e=>{const t=e.data;return this._updateSettings(t,!1),!0}).catch(console.error)},async loadBooks(e){await ve.getReaderInfo(e).then(t=>{const o=t.data,a=[o.books.prevBook,o.books.current,o.books.nextBook];for(const s of a)s&&!s.settings&&(s.settings={});const n=this._getBookRoutes(o.books.prevBook,o.books.nextBook);return this.$patch(s=>{s.books.current=o.books.current,s.books.prev=o.books.prevBook,s.books.next=o.books.nextBook,s.arcs=o.arcs,s.arc=o.arc,s.routes.prev=this._getRouteParams(s.books.current,e.page,"prev"),s.routes.next=this._getRouteParams(s.books.current,e.page,"next"),s.routes.books=n}),!0}).catch(t=>{console.debug(t);const o=no().page,a=o&&o.routes?o.routes.last:{name:"home"};return he.push(a)})},async _setBookmarkPage(e){const t={group:"c",pk:this.books.current.pk};e=Math.max(Math.min(this.books.current.maxPage,e),0);const o={page:e};await Ne.setGroupBookmarks(t,o)},async setSettingsLocal(e){this._updateSettings(e,!0),await Ne.setGroupBookmarks({group:"c",pk:+this.books.current.pk},this.books.current.settings)},setSettingsClient(e){this.clientSettings={...this.clientSettings,...e}},async clearSettingsLocal(){await this.setSettingsLocal(_t),this.setSettingsClient(kt)},async setSettingsGlobal(e){this._updateSettings(e,!1),await ve.setReaderSettings(this.readerSettings),await this.clearSettingsLocal()},setBookChangeFlag(e){e=this.normalizeDirection(e),this.bookChange=this.routes.books[e]?e:void 0},normalizeDirection(e){return this.isReadInReverse?wt[e]:e},_validateRoute(e,t){if(t||(t=this.books.current),!t)return{};const o=t.maxPage??0;return e.page>o?(e.page=o,console.warn("Tried to navigate past the end of the book.")):e.page<0&&(e.page=0,console.warn("Tried to navigate before the beginning of the book.")),e},_routeTo(e,t){if(e=this._validateRoute(e,t),this.isPagesNotRoutes&&+e.pk===this.books.current.pk)this.setActivePage(+e.page,!0);else{const o={name:"reader",params:e};he.push(o).catch(console.debug)}},routeToDirectionOne(e){e=this.normalizeDirection(e);const t=e==="prev"?-1:1,o=this.page+=t;if(o<0||o>this.books.current.maxPage)return;const a={pk:this.books.current.pk,page:o};this._routeTo(a)},routeToDirection(e){if(e=this.normalizeDirection(e),this.routes[e]){const t=this.routes[e];this._routeTo(t)}else this.routes.books[e]?this.bookChange===e?this._routeTo(this.routes.books[e],this.books[e]):this.setBookChangeFlag(e):console.debug("No route to direction",e)},routeToPage(e){const t={pk:this.books.current.pk,page:e};this._routeTo(t)},routeToBook(e){this._routeTo(this.routes.books[e],this.books[e])},_prefetchSrc(e,t,o=!1,a=!1){if(!e)return!1;const n=o?this.books[t]:this.books.current;if(!n)return!1;let s=e.page;if(a){if(!this.getSettings(n).twoPages)return!1;s+=1}if(s>n.maxPage)return!1;const i={pk:e.pk,page:s,mtime:n.mtime};return Ue(i)},prefetchLinks(e,t,o=!1){if(!o&&this.cacheBook)return{};const a=[this._prefetchSrc(e,t,o,!1),this._prefetchSrc(e,t,o,!0)],n=[];for(const s of a)s&&n.push({..._e,href:s});return{link:n}},prefetchBook(e){if(!this.cacheBook||e.fileType=="PDF")return{};const t=e.pk,o=[];for(let a=0;a<=e.maxPage;a++){const n={pk:t,page:a,mtime:e.mtime},s=Ue(n);s&&o.push({..._e,href:s})}return{link:o}},toRoute(e){return e?{params:e}:{}},linkLabel(e,t){return`${e==="prev"?"Previous":"Next"} ${t}`}}});function sn(e){let{rootEl:t,isSticky:o,layoutItemStyles:a}=e;const n=H(!1),s=H(0),i=_(()=>{const v=typeof n.value=="boolean"?"top":n.value;return[o.value?{top:"auto",bottom:"auto",height:void 0}:void 0,n.value?{[v]:X(s.value)}:{top:a.value.top}]});st(()=>{K(o,v=>{v?window.addEventListener("scroll",k,{passive:!0}):window.removeEventListener("scroll",k)},{immediate:!0})}),at(()=>{window.removeEventListener("scroll",k)});let l=0;function k(){const v=l>window.scrollY?"up":"down",u=t.value.getBoundingClientRect(),g=parseFloat(a.value.top??0),m=window.scrollY-Math.max(0,s.value-g),b=u.height+Math.max(s.value,g)-window.scrollY-window.innerHeight,C=parseFloat(getComputedStyle(t.value).getPropertyValue("--v-body-scroll-y"))||0;u.height<window.innerHeight-g?(n.value="top",s.value=g):v==="up"&&n.value==="bottom"||v==="down"&&n.value==="top"?(s.value=window.scrollY+u.top-C,n.value=!0):v==="down"&&b<=0?(s.value=0,n.value="bottom"):v==="up"&&m<=0&&(C?n.value!=="top"&&(s.value=-m+C+g,n.value="top"):(s.value=u.top+m,n.value="top")),l=window.scrollY}return{isStuck:n,stickyStyles:i}}const an=100,rn=20;function ze(e){return(e<0?-1:1)*Math.sqrt(Math.abs(e))*1.41421356237}function We(e){if(e.length<2)return 0;if(e.length===2)return e[1].t===e[0].t?0:(e[1].d-e[0].d)/(e[1].t-e[0].t);let t=0;for(let o=e.length-1;o>0;o--){if(e[o].t===e[o-1].t)continue;const a=ze(t),n=(e[o].d-e[o-1].d)/(e[o].t-e[o-1].t);t+=(n-a)*Math.abs(n),o===e.length-1&&(t*=.5)}return ze(t)*1e3}function ln(){const e={};function t(n){Array.from(n.changedTouches).forEach(s=>{(e[s.identifier]??(e[s.identifier]=new Xt(rn))).push([n.timeStamp,s])})}function o(n){Array.from(n.changedTouches).forEach(s=>{delete e[s.identifier]})}function a(n){var v;const s=(v=e[n])==null?void 0:v.values().reverse();if(!s)throw new Error(`No samples for touch id ${n}`);const i=s[0],l=[],k=[];for(const u of s){if(i[0]-u[0]>an)break;l.push({t:u[0],d:u[1].clientX}),k.push({t:u[0],d:u[1].clientY})}return{x:We(l),y:We(k),get direction(){const{x:u,y:g}=this,[m,b]=[Math.abs(u),Math.abs(g)];return m>b&&u>=0?"right":m>b&&u<=0?"left":b>m&&g>=0?"down":b>m&&g<=0?"up":un()}}}return{addMovement:t,endTouch:o,getVelocity:a}}function un(){throw new Error}function cn(e){let{isActive:t,isTemporary:o,width:a,touchless:n,position:s}=e;st(()=>{window.addEventListener("touchstart",R,{passive:!0}),window.addEventListener("touchmove",V,{passive:!1}),window.addEventListener("touchend",B,{passive:!0})}),at(()=>{window.removeEventListener("touchstart",R),window.removeEventListener("touchmove",V),window.removeEventListener("touchend",B)});const i=_(()=>["left","right"].includes(s.value)),{addMovement:l,endTouch:k,getVelocity:v}=ln();let u=!1;const g=H(!1),m=H(0),b=H(0);let C;function y(d,c){return(s.value==="left"?d:s.value==="right"?document.documentElement.clientWidth-d:s.value==="top"?d:s.value==="bottom"?document.documentElement.clientHeight-d:Y())-(c?a.value:0)}function x(d){let c=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;const f=s.value==="left"?(d-b.value)/a.value:s.value==="right"?(document.documentElement.clientWidth-d-b.value)/a.value:s.value==="top"?(d-b.value)/a.value:s.value==="bottom"?(document.documentElement.clientHeight-d-b.value)/a.value:Y();return c?Math.max(0,Math.min(1,f)):f}function R(d){if(n.value)return;const c=d.changedTouches[0].clientX,f=d.changedTouches[0].clientY,w=25,D=s.value==="left"?c<w:s.value==="right"?c>document.documentElement.clientWidth-w:s.value==="top"?f<w:s.value==="bottom"?f>document.documentElement.clientHeight-w:Y(),I=t.value&&(s.value==="left"?c<a.value:s.value==="right"?c>document.documentElement.clientWidth-a.value:s.value==="top"?f<a.value:s.value==="bottom"?f>document.documentElement.clientHeight-a.value:Y());(D||I||t.value&&o.value)&&(u=!0,C=[c,f],b.value=y(i.value?c:f,t.value),m.value=x(i.value?c:f),k(d),l(d))}function V(d){const c=d.changedTouches[0].clientX,f=d.changedTouches[0].clientY;if(u){if(!d.cancelable){u=!1;return}const D=Math.abs(c-C[0]),I=Math.abs(f-C[1]);(i.value?D>I&&D>3:I>D&&I>3)?(g.value=!0,u=!1):(i.value?I:D)>3&&(u=!1)}if(!g.value)return;d.preventDefault(),l(d);const w=x(i.value?c:f,!1);m.value=Math.max(0,Math.min(1,w)),w>1?b.value=y(i.value?c:f,!0):w<0&&(b.value=y(i.value?c:f,!1))}function B(d){if(u=!1,!g.value)return;l(d),g.value=!1;const c=v(d.changedTouches[0].identifier),f=Math.abs(c.x),w=Math.abs(c.y);(i.value?f>w&&f>400:w>f&&w>3)?t.value=c.direction===({left:"right",right:"left",top:"down",bottom:"up"}[s.value]||Y()):t.value=m.value>.5}const E=_(()=>g.value?{transform:s.value==="left"?`translateX(calc(-100% + ${m.value*a.value}px))`:s.value==="right"?`translateX(calc(100% - ${m.value*a.value}px))`:s.value==="top"?`translateY(calc(-100% + ${m.value*a.value}px))`:s.value==="bottom"?`translateY(calc(100% - ${m.value*a.value}px))`:Y(),transition:"none"}:void 0);return{isDragging:g,dragProgress:m,dragStyles:E}}function Y(){throw new Error}const dn=["start","end","left","right","top","bottom"],mn=ee({color:String,disableResizeWatcher:Boolean,disableRouteWatcher:Boolean,expandOnHover:Boolean,floating:Boolean,modelValue:{type:Boolean,default:null},permanent:Boolean,rail:{type:Boolean,default:null},railWidth:{type:[Number,String],default:56},scrim:{type:[Boolean,String],default:!0},image:String,temporary:Boolean,touchless:Boolean,width:{type:[Number,String],default:256},location:{type:String,default:"start",validator:e=>dn.includes(e)},sticky:Boolean,...ke(),...ie(),...so(),...we(),...ut(),...Se(),...le({tag:"nav"}),...ye()},"VNavigationDrawer"),gn=te()({name:"VNavigationDrawer",props:mn(),emits:{"update:modelValue":e=>!0,"update:rail":e=>!0},setup(e,t){let{attrs:o,emit:a,slots:n}=t;const{isRtl:s}=rt(),{themeClasses:i}=Pe(e),{borderClasses:l}=Te(e),{backgroundColorClasses:k,backgroundColorStyles:v}=ae(Q(e,"color")),{elevationClasses:u}=Ce(e),{displayClasses:g,mobile:m}=ao(e),{roundedClasses:b}=Re(e),C=qt(),y=be(e,"modelValue",null,L=>!!L),{ssrBootStyles:x}=Kt(),{scopeId:R}=lo(),V=qe(),B=H(!1),E=_(()=>e.rail&&e.expandOnHover&&B.value?Number(e.width):Number(e.rail?e.railWidth:e.width)),d=_(()=>Zt(e.location,s.value)),c=_(()=>!e.permanent&&(m.value||e.temporary)),f=_(()=>e.sticky&&!c.value&&d.value!=="bottom");ge(()=>e.expandOnHover&&e.rail!=null,()=>{K(B,L=>a("update:rail",!L))}),ge(()=>!e.disableResizeWatcher,()=>{K(c,L=>!e.permanent&&eo(()=>y.value=!L))}),ge(()=>!e.disableRouteWatcher&&!!C,()=>{K(C.currentRoute,()=>c.value&&(y.value=!1))}),K(()=>e.permanent,L=>{L&&(y.value=!0)}),Qt(()=>{e.modelValue!=null||c.value||(y.value=e.permanent||!m.value)});const{isDragging:w,dragProgress:D,dragStyles:I}=cn({isActive:y,isTemporary:c,width:E,touchless:Q(e,"touchless"),position:d}),F=_(()=>{const L=c.value?0:e.rail&&e.expandOnHover?Number(e.railWidth):E.value;return w.value?L*D.value:L}),{layoutItemStyles:j,layoutItemScrimStyles:O}=ct({id:e.name,order:_(()=>parseInt(e.order,10)),position:d,layoutSize:F,elementSize:E,active:_(()=>y.value||w.value),disableTransitions:_(()=>w.value),absolute:_(()=>e.absolute||f.value&&typeof ne.value!="string")}),{isStuck:ne,stickyStyles:de}=sn({rootEl:V,isSticky:f,layoutItemStyles:j}),G=ae(_(()=>typeof e.scrim=="string"?e.scrim:null)),Pt=_(()=>({...w.value?{opacity:D.value*.2,transition:"none"}:void 0,...O.value}));it({VList:{bgColor:"transparent"}});function Tt(){B.value=!0}function Ct(){B.value=!1}return oe(()=>{const L=n.image||e.image;return r(Ve,null,[r(e.tag,W({ref:V,onMouseenter:Tt,onMouseleave:Ct,class:["v-navigation-drawer",`v-navigation-drawer--${d.value}`,{"v-navigation-drawer--expand-on-hover":e.expandOnHover,"v-navigation-drawer--floating":e.floating,"v-navigation-drawer--is-hovering":B.value,"v-navigation-drawer--rail":e.rail,"v-navigation-drawer--temporary":c.value,"v-navigation-drawer--active":y.value,"v-navigation-drawer--sticky":f.value},i.value,k.value,l.value,g.value,u.value,b.value,e.class],style:[v.value,j.value,I.value,x.value,de.value,e.style]},R,o),{default:()=>{var Ee,Ie,Le;return[L&&r("div",{key:"image",class:"v-navigation-drawer__img"},[n.image?r(Z,{key:"image-defaults",disabled:!e.image,defaults:{VImg:{alt:"",cover:!0,height:"inherit",src:e.image}}},n.image):r(lt,{key:"image-img",alt:"",cover:!0,height:"inherit",src:e.image},null)]),n.prepend&&r("div",{class:"v-navigation-drawer__prepend"},[(Ee=n.prepend)==null?void 0:Ee.call(n)]),r("div",{class:"v-navigation-drawer__content"},[(Ie=n.default)==null?void 0:Ie.call(n)]),n.append&&r("div",{class:"v-navigation-drawer__append"},[(Le=n.append)==null?void 0:Le.call(n)])]}}),r(Jt,{name:"fade-transition"},{default:()=>[c.value&&(w.value||y.value)&&!!e.scrim&&r("div",W({class:["v-navigation-drawer__scrim",G.backgroundColorClasses.value],style:[Pt.value,G.backgroundColorStyles.value],onClick:()=>y.value=!1},R),null)]})])}),{isStuck:ne}}}),hn={name:"SettingsDrawer",components:{SettingsCommonPanel:Yo,SettingsFooter:bt,VersionFooter:vt},props:{title:{type:String,required:!0},panel:{type:Object,required:!0},admin:{type:Boolean,default:!1}},computed:{...ue($,["isCodexViewable"]),...to(re,["isSettingsDrawerOpen"]),...z(nn,{invisibleHack:e=>e.bookChange==="next"}),adminAndNotSmall(){return this.admin&&!this.$vuetify.display.smAndDown}},mounted(){this.isSettingsDrawerOpen=this.adminAndNotSmall}},fn={class:"settingsDrawerContainer"},vn={id:"topBlock"},bn={class:"settingsHeader"},pn={id:"footerGroup"};function _n(e,t,o,a,n,s){const i=J("SettingsCommonPanel"),l=bt,k=vt;return p(),S(gn,W(e.$attrs,{modelValue:e.isSettingsDrawerOpen,"onUpdate:modelValue":t[0]||(t[0]=v=>e.isSettingsDrawerOpen=v),"disable-resize-watcher":"","disable-route-watcher":"",location:"right",scrim:!s.adminAndNotSmall,temporary:!s.adminAndNotSmall,touchless:""}),{append:h(()=>[r(k)]),default:h(()=>[A("div",fn,[A("div",vn,[A("header",bn,[A("h3",null,P(o.title),1)]),e.isCodexViewable?(p(),S(Be(o.panel),{key:0})):N("",!0),e.isCodexViewable?(p(),S(pe,{key:1})):N("",!0),r(i,{"admin-menu":!o.admin},null,8,["admin-menu"]),r(pe)]),A("div",pn,[r(l)])])]),_:1},16,["modelValue","scrim","temporary"])}const An=M(hn,[["render",_n],["__scopeId","data-v-a38da0ea"]]),je=Je(et(()=>dt(()=>import("./admin-drawer-panel-CGj6J0rX.js").then(e=>e.dy),__vite__mapDeps([0,1])))),kn={name:"SettingsDrawerButton",components:{AdminSettingsButtonProgress:je},data(){return{mdiMenu:oo,AdminSettingsButtonProgress:je}},computed:{...z($,["isUserAdmin"])}};function wn(e,t,o,a,n,s){return p(),S(Xe,W(e.$attrs,{icon:"",title:"Settings"}),{default:h(()=>[r(U,null,{default:h(()=>[T(P(n.mdiMenu),1)]),_:1}),e.isUserAdmin?(p(),S(Be(n.AdminSettingsButtonProgress),{key:0})):N("",!0)]),_:1},16)}const Nn=M(kn,[["render",wn]]),Sn=ee({text:String,...ie(),...le()},"VToolbarTitle"),yn=te()({name:"VToolbarTitle",props:Sn(),setup(e,t){let{slots:o}=t;return oe(()=>{const a=!!(o.default||o.text||e.text);return r(e.tag,{class:["v-toolbar-title",e.class],style:e.style},{default:()=>{var n;return[a&&r("div",{class:"v-toolbar-title__placeholder"},[o.text?o.text():e.text,(n=o.default)==null?void 0:n.call(o)])]}})}),{}}}),Pn=[null,"prominent","default","comfortable","compact"],Tn=ee({absolute:Boolean,collapse:Boolean,color:String,density:{type:String,default:"default",validator:e=>Pn.includes(e)},extended:Boolean,extensionHeight:{type:[Number,String],default:48},flat:Boolean,floating:Boolean,height:{type:[Number,String],default:64},image:String,title:String,...ke(),...ie(),...we(),...Se(),...le({tag:"header"}),...ye()},"VToolbar"),$n=te()({name:"VToolbar",props:Tn(),setup(e,t){var b;let{slots:o}=t;const{backgroundColorClasses:a,backgroundColorStyles:n}=ae(Q(e,"color")),{borderClasses:s}=Te(e),{elevationClasses:i}=Ce(e),{roundedClasses:l}=Re(e),{themeClasses:k}=Pe(e),{rtlClasses:v}=rt(),u=H(!!(e.extended||(b=o.extension)!=null&&b.call(o))),g=_(()=>parseInt(Number(e.height)+(e.density==="prominent"?Number(e.height):0)-(e.density==="comfortable"?8:0)-(e.density==="compact"?16:0),10)),m=_(()=>u.value?parseInt(Number(e.extensionHeight)+(e.density==="prominent"?Number(e.extensionHeight):0)-(e.density==="comfortable"?4:0)-(e.density==="compact"?8:0),10):0);return it({VBtn:{variant:"text"}}),oe(()=>{var R;const C=!!(e.title||o.title),y=!!(o.image||e.image),x=(R=o.extension)==null?void 0:R.call(o);return u.value=!!(e.extended||x),r(e.tag,{class:["v-toolbar",{"v-toolbar--absolute":e.absolute,"v-toolbar--collapse":e.collapse,"v-toolbar--flat":e.flat,"v-toolbar--floating":e.floating,[`v-toolbar--density-${e.density}`]:!0},a.value,s.value,i.value,l.value,k.value,v.value,e.class],style:[n.value,e.style]},{default:()=>[y&&r("div",{key:"image",class:"v-toolbar__image"},[o.image?r(Z,{key:"image-defaults",disabled:!e.image,defaults:{VImg:{cover:!0,src:e.image}}},o.image):r(lt,{key:"image-img",cover:!0,src:e.image},null)]),r(Z,{defaults:{VTabs:{height:X(g.value)}}},{default:()=>{var V,B,E;return[r("div",{class:"v-toolbar__content",style:{height:X(g.value)}},[o.prepend&&r("div",{class:"v-toolbar__prepend"},[(V=o.prepend)==null?void 0:V.call(o)]),C&&r(yn,{key:"title",text:e.title},{text:o.title}),(B=o.default)==null?void 0:B.call(o),o.append&&r("div",{class:"v-toolbar__append"},[(E=o.append)==null?void 0:E.call(o)])])]}}),r(Z,{defaults:{VTabs:{height:X(m.value)}}},{default:()=>[r(Qe,null,{default:()=>[u.value&&r("div",{class:"v-toolbar__extension",style:{height:X(m.value)}},[x])]})]})]})}),{contentHeight:g,extensionHeight:m}}});export{Nn as S,yn as V,An as _,$n as a,en as b,Fe as c,Ue as d,gn as e,Qo as f,tn as g,In as h,Ln as i,Jo as j,nn as u};
7
+ import{x as ee,bY as ke,E as ie,bL as we,bK as Se,aq as le,F as ye,G as te,I as Pe,at as ae,au as Q,bZ as Te,bP as Ce,bS as Re,s as H,y as Rt,h as _,K as oe,L as r,z as X,a$ as Ge,b_ as Vt,M as z,k as re,ax as ue,m as $,N as ce,_ as M,R as p,O as S,P as h,aD as A,ae as P,ay as q,aB as N,b$ as Ye,c0 as Bt,c1 as Dt,aa as T,ad as U,be as xt,bh as Et,c2 as It,Q as J,am as W,ak as Xe,c3 as Lt,ar as be,c4 as At,r as qe,C as Nt,c5 as $t,al as Ve,c6 as Z,bQ as Ot,c7 as Mt,bT as Ut,c8 as Ft,af as Ke,b1 as Ht,b2 as zt,ag as Ze,aX as me,c9 as Qe,ca as Wt,aC as Je,bn as et,aA as Be,aU as pe,bU as tt,cb as ot,H as De,cc as nt,l as jt,cd as Gt,ce as Yt,B as st,a as K,o as at,cf as Xt,J as rt,cg as qt,bI as Kt,ch as Zt,ci as ge,cj as Qt,av as it,bV as lt,ck as Jt,n as eo,a9 as to,bi as oo}from"./admin-drawer-panel-BaTVOySr.js";import{m as ut,b as ct,_ as dt,C as Ae,r as he,u as no,A as Ne,c as so,d as ao}from"./main-BZTHWXBZ.js";import{c as ro,t as io}from"./index-DUjeNg4x.js";import{V as mt,u as lo}from"./confirm-footer-DtV70TTy.js";import{_ as gt}from"./change-password-dialog-BB2k5ybG.js";import{_ as ht,a as fe,b as uo}from"./VSlideGroup-j-MAY_Bg.js";import{a as co,c as mo,u as go,V as $e,d as Oe}from"./VSelectionControl-Cw_49nCw.js";const ho=ee({app:Boolean,color:String,height:{type:[Number,String],default:"auto"},...ke(),...ie(),...we(),...ut(),...Se(),...le({tag:"footer"}),...ye()},"VFooter"),ft=te()({name:"VFooter",props:ho(),setup(e,t){let{slots:o}=t;const{themeClasses:a}=Pe(e),{backgroundColorClasses:n,backgroundColorStyles:s}=ae(Q(e,"color")),{borderClasses:i}=Te(e),{elevationClasses:l}=Ce(e),{roundedClasses:k}=Re(e),v=H(32),{resizeRef:u}=Rt(b=>{b.length&&(v.value=b[0].target.clientHeight)}),g=_(()=>e.height==="auto"?v.value:parseInt(e.height,10)),{layoutItemStyles:m}=ct({id:e.name,order:_(()=>parseInt(e.order,10)),position:_(()=>"bottom"),layoutSize:g,elementSize:_(()=>e.height==="auto"?void 0:g.value),active:_(()=>e.app),absolute:Q(e,"absolute")});return oe(()=>r(e.tag,{ref:u,class:["v-footer",a.value,n.value,i.value,l.value,k.value,e.class],style:[s.value,e.app?m.value:{height:X(e.height)},e.style]},o)),{}}}),fo={name:"VersionFooter",data(){return{mdiOpenInNew:Ge,mdiContentCopy:Vt}},computed:{...z(re,{versions:e=>e.versions}),...ue($,["isUserAdmin"]),outdated:function(){return this.isUserAdmin&&this.semverGreaterThan(this.versions.latest>this.versions.installed)},versionTitle:function(){return this.outdated?`v${this.versions.latest} is available`:"up to date"}},created(){this.loadVersions()},methods:{...ce(re,["loadVersions"]),semverGreaterThan(e,t){try{if(!e||!t)return!1;const o=e.split("."),a=t.split(".");for(const[n,s]of o.entries())if(+s>+a[n])return!0}catch(o){console.debug("compare codex versions",e,">",t,o)}return!1}}},vo={id:"version"},bo={key:0,id:"latest"};function po(e,t,o,a,n,s){return p(),S(ft,{id:"version-footer",title:s.versionTitle},{default:h(()=>[A("div",vo,"codex v"+P(e.versions.installed),1),s.outdated?(p(),q("div",bo," codex v"+P(e.versions.latest)+" is available ",1)):N("",!0)]),_:1},8,["title"])}const vt=M(fo,[["render",po],["__scopeId","data-v-cd481730"]]),_o={name:"OPDSUrl",props:{title:{type:String,required:!0},subtitle:{type:String,default:void 0},url:{type:String,required:!0}},data(){return{mdiRss:Ye,showTooltip:{show:!1}}},computed:{clipBoardEnabled(){return location.protocol=="https:"},clipBoardIcon(){return this.showTooltip.show?Bt:Dt},tooltip(){return this.clipBoardEnabled}},methods:{onClickURL(){this.clipBoardEnabled&&ro(this.url,this.showTooltip)}}},ko=["title"],wo={key:0},So={class:"copied"},yo={key:0,class:"subtitle"},Po={class:"opdsUrl"};function To(e,t,o,a,n,s){return p(),q("div",{class:"opdsVersion",title:s.tooltip,onClick:t[0]||(t[0]=(...i)=>s.onClickURL&&s.onClickURL(...i))},[A("h3",null,[T(P(o.title)+" ",1),s.clipBoardEnabled?(p(),q("span",wo,[r(U,{class:"clipBoardIcon",size:"small"},{default:h(()=>[T(P(s.clipBoardIcon),1)]),_:1}),r(It,null,{default:h(()=>[xt(A("span",So,"Copied",512),[[Et,n.showTooltip.show]])]),_:1})])):N("",!0)]),o.subtitle?(p(),q("div",yo,P(o.subtitle),1)):N("",!0),A("div",Po,P(o.url),1)],8,ko)}const Co=M(_o,[["render",To],["__scopeId","data-v-68a52a66"]]),Ro={name:"OPDSDialog",components:{OPDSUrl:Co},data(){return{mdiRss:Ye,opdsV1URL:window.origin+window.CODEX.OPDS_V1_PATH,opdsV2URL:window.origin+window.CODEX.OPDS_V2_PATH}}},Vo={id:"opds"};function Bo(e,t,o,a,n,s){const i=J("OPDSUrl");return p(),S(mt,{"max-width":"30em"},{activator:h(({props:l})=>[r(Xe,W({id:"opdsButton",icon:"",size:"small",variant:"plain"},l),{default:h(()=>[r(U,null,{default:h(()=>[T(P(n.mdiRss),1)]),_:1}),T(" OPDS ")]),_:2},1040)]),default:h(()=>[A("div",Vo,[A("h2",null,[r(U,{size:"x=small",class:"inline"},{default:h(()=>[T(P(n.mdiRss),1)]),_:1}),T(" OPDS ")]),r(i,{title:"v1.2",url:n.opdsV1URL},null,8,["url"]),r(i,{title:"v2.0",url:n.opdsV2URL,subtitle:"OPDS v2 is experimental and not widely or well supported by clients"},null,8,["url"])])]),_:1})}const Do=M(Ro,[["render",Bo],["__scopeId","data-v-741734ce"]]),xo={name:"SettingsFooter",components:{OPDSDialog:Do},data(){return{mdiOpenInNew:Ge,mdiSourceRepository:Lt}},computed:{...ue($,["isCodexViewable"])}},Eo={id:"repo",href:"https://github.com/ajslater/codex",title:"Codex Source Repository",target:"_blank"};function Io(e,t,o,a,n,s){const i=J("OPDSDialog");return p(),S(ft,{id:"settingsFooter"},{default:h(()=>[e.isCodexViewable?(p(),S(i,{key:0})):N("",!0),A("a",Eo,[r(U,{id:"repoIcon",size:"x-small"},{default:h(()=>[T(P(n.mdiSourceRepository),1)]),_:1}),T(" repository"),r(U,{color:e.$vuetify.theme.current.colors.iconsInactive,size:"x-small"},{default:h(()=>[T(P(n.mdiOpenInNew),1)]),_:1},8,["color"])])]),_:1})}const bt=M(xo,[["render",Io],["__scopeId","data-v-f9eb593e"]]),Lo=ee({indeterminate:Boolean,inset:Boolean,flat:Boolean,loading:{type:[Boolean,String],default:!1},...co(),...mo()},"VSwitch"),Ao=te()({name:"VSwitch",inheritAttrs:!1,props:Lo(),emits:{"update:focused":e=>!0,"update:modelValue":e=>!0,"update:indeterminate":e=>!0},setup(e,t){let{attrs:o,slots:a}=t;const n=be(e,"indeterminate"),s=be(e,"modelValue"),{loaderClasses:i}=At(e),{isFocused:l,focus:k,blur:v}=go(e),u=qe(),g=_(()=>typeof e.loading=="string"&&e.loading!==""?e.loading:e.color),m=Nt(),b=_(()=>e.id||`switch-${m}`);function C(){n.value&&(n.value=!1)}function y(x){var R,V;x.stopPropagation(),x.preventDefault(),(V=(R=u.value)==null?void 0:R.input)==null||V.click()}return oe(()=>{const[x,R]=$t(o),V=$e.filterProps(e),B=Oe.filterProps(e);return r($e,W({class:["v-switch",{"v-switch--flat":e.flat},{"v-switch--inset":e.inset},{"v-switch--indeterminate":n.value},i.value,e.class]},x,V,{modelValue:s.value,"onUpdate:modelValue":E=>s.value=E,id:b.value,focused:l.value,style:e.style}),{...a,default:E=>{let{id:d,messagesId:c,isDisabled:f,isReadonly:w,isValid:D}=E;const I={model:s,isValid:D};return r(Oe,W({ref:u},B,{modelValue:s.value,"onUpdate:modelValue":[F=>s.value=F,C],id:d.value,"aria-describedby":c.value,type:"checkbox","aria-checked":n.value?"mixed":void 0,disabled:f.value,readonly:w.value,onFocus:k,onBlur:v},R),{...a,default:F=>{let{backgroundColorClasses:j,backgroundColorStyles:O}=F;return r("div",{class:["v-switch__track",...j.value],style:O.value,onClick:y},[a["track-true"]&&r("div",{key:"prepend",class:"v-switch__track-true"},[a["track-true"](I)]),a["track-false"]&&r("div",{key:"append",class:"v-switch__track-false"},[a["track-false"](I)])])},input:F=>{let{inputNode:j,icon:O,backgroundColorClasses:ne,backgroundColorStyles:de}=F;return r(Ve,null,[j,r("div",{class:["v-switch__thumb",{"v-switch__thumb--filled":O||e.loading},e.inset?void 0:ne.value],style:e.inset?void 0:de.value},[a.thumb?r(Z,{defaults:{VIcon:{icon:O,size:"x-small"}}},{default:()=>[a.thumb({...I,icon:O})]}):r(Ot,null,{default:()=>[e.loading?r(Mt,{name:"v-switch",active:!0,color:D.value===!1?void 0:g.value},{default:G=>a.loader?a.loader(G):r(Ut,{active:G.isActive,color:G.color,indeterminate:!0,size:"16",width:"2"},null)}):O&&r(U,{key:String(O),icon:O,size:"x-small"},null)]})])])}})}})}),{}}}),No={name:"AuthLoginDialog",components:{SubmitFooter:ht},data(){return{rules:{username:[e=>!!e||"Username is required"],password:[e=>e?this.registerMode&&e.length<this.MIN_PASSWORD_LEN?`Password must be ${this.MIN_PASSWORD_LEN} characters long`:!0:"Password is required"],passwordConfirm:[e=>e===this.credentials.password||"Passwords must match"]},formModel:{},credentials:{username:"",password:"",passwordConfirm:""},submitButtonEnabled:!1,showDialog:!1,registerMode:!1,mdiLogin:Ft}},computed:{...z(re,{formErrors:e=>e.form.errors,formSuccess:e=>e.form.success}),...z($,{adminFlags:e=>e.adminFlags,MIN_PASSWORD_LEN:e=>e.MIN_PASSWORD_LEN}),submitButtonLabel:function(){return this.registerMode?"Register":"Login"}},watch:{showDialog(e){e&&(this.loadAdminFlags(),this.$refs.form&&this.$refs.form.reset())},credentials:{handler(){const e=this.$refs.form;e?e.validate().then(({valid:t})=>this.submitButtonEnabled=t).catch(console.error):this.submitButtonEnabled=!1},deep:!0}},mounted(){window.addEventListener("keyup",this._keyListener)},beforeUnmount(){window.removeEventListener("keyup",this._keyListener)},methods:{...ce($,["loadAdminFlags","login","register"]),doAuth(e){return this[e](this.credentials).then(()=>this.showDialog=this.formErrors&&this.formErrors.length>0).catch(console.error)},submit(){this.$refs.form.validate().then(({valid:t})=>{if(!t)return;const o=this.registerMode?"register":"login";return this.doAuth(o)}).catch(console.error)},_keyListener(e){e.stopImmediatePropagation()}}};function $o(e,t,o,a,n,s){const i=ht;return p(),S(mt,{modelValue:n.showDialog,"onUpdate:modelValue":t[7]||(t[7]=l=>n.showDialog=l),origin:"center-top",transition:"slide-y-transition","max-width":"20em"},{activator:h(({props:l})=>[r(Ze,Ht(zt(l)),{default:h(()=>[r(Ke,null,{default:h(()=>[r(U,null,{default:h(()=>[T(P(n.mdiLogin),1)]),_:1}),T(" Login ")]),_:1})]),_:2},1040)]),default:h(()=>[r(uo,{id:"authDialog",ref:"form"},{default:h(()=>[r(fe,{modelValue:n.credentials.username,"onUpdate:modelValue":t[0]||(t[0]=l=>n.credentials.username=l),autocomplete:"username",label:"Username",rules:n.rules.username,clearable:"",autofocus:"",onKeydown:t[1]||(t[1]=me(l=>e.$refs.password.focus(),["enter"]))},null,8,["modelValue","rules"]),r(fe,{ref:"password",modelValue:n.credentials.password,"onUpdate:modelValue":t[2]||(t[2]=l=>n.credentials.password=l),autocomplete:n.registerMode?"new-password":"current-password",label:"Password",rules:n.rules.password,clearable:"",type:"password",onKeydown:t[3]||(t[3]=me(l=>{n.registerMode?e.$refs.passwordConfirm.focus():s.submit()},["enter"]))},null,8,["modelValue","autocomplete","rules"]),r(Qe,null,{default:h(()=>[n.registerMode?(p(),S(fe,{key:0,ref:"passwordConfirm",modelValue:n.credentials.passwordConfirm,"onUpdate:modelValue":t[4]||(t[4]=l=>n.credentials.passwordConfirm=l),autocomplete:"new-password",label:"Confirm Password",rules:n.rules.passwordConfirm,clearable:"",type:"password",onKeydown:me(s.submit,["enter"])},null,8,["modelValue","rules","onKeydown"])):N("",!0)]),_:1}),e.adminFlags.registration?(p(),S(Ao,{key:0,modelValue:n.registerMode,"onUpdate:modelValue":t[5]||(t[5]=l=>n.registerMode=l),label:"Register"},{default:h(()=>[T(" Register ")]),_:1},8,["modelValue"])):N("",!0),r(i,{verb:n.registerMode?"Register":"Login",table:"",disabled:!n.submitButtonEnabled,onSubmit:s.submit,onCancel:t[6]||(t[6]=l=>n.showDialog=!1)},null,8,["verb","disabled","onSubmit"])]),_:1},512)]),_:1},8,["modelValue"])}const Oo=M(No,[["render",$o],["__scopeId","data-v-ef06f84f"]]),Mo={name:"AuthLogoutItem",data:function(){return{mdiLogout:Wt}},computed:{...z($,{username:e=>e.user.username})},methods:{...ce($,["logout"])}};function Uo(e,t,o,a,n,s){return p(),S(Ze,{onClick:e.logout},{default:h(()=>[r(Ke,null,{default:h(()=>[r(U,null,{default:h(()=>[T(P(e.mdiLogout),1)]),_:1}),T("Logout "+P(e.username),1)]),_:1})]),_:1},8,["onClick"])}const Fo=M(Mo,[["render",Uo]]),Ho={name:"AuthMenu",components:{ChangePasswordDialog:gt,AuthLoginDialog:Oo,AuthLogoutItem:Fo},computed:{...z($,{user:e=>e.user})},methods:{...ce($,["logout"])}};function zo(e,t,o,a,n,s){const i=J("AuthLogoutItem"),l=gt,k=J("AuthLoginDialog");return p(),q(Ve,null,[e.user?(p(),S(i,{key:0})):N("",!0),e.user?(p(),S(l,{key:1,user:e.user},null,8,["user"])):(p(),S(k,{key:2}))],64)}const pt=M(Ho,[["render",zo]]),Me=Je(et(()=>dt(()=>import("./admin-drawer-panel-BaTVOySr.js").then(e=>e.dx),__vite__mapDeps([0,1])))),Wo={name:"SettingsCommonPanel",components:{AuthMenu:pt,AdminMenu:Me},props:{adminMenu:{type:Boolean,default:!0}},data(){return{AdminMenu:Me}},computed:{...ue($,["isUserAdmin"])}},jo={id:"commonPanel"};function Go(e,t,o,a,n,s){const i=pt;return p(),q("div",jo,[r(i),e.isUserAdmin?(p(),S(pe,{key:0})):N("",!0),e.isUserAdmin?(p(),S(Be(n.AdminMenu),{key:1,menu:o.adminMenu},null,8,["menu"])):N("",!0)])}const Yo=M(Wo,[["render",Go],["__scopeId","data-v-a21632a4"]]),Xo=e=>{const t=e.pk,o=ot();return e={...e,...o},delete e.pk,De.get(`c/${t}`,{params:e})},qo=()=>{const e=ot();return De.get("c/settings",{params:e})},Ko=e=>De.put("c/settings",e),In=({pk:e,mtime:t})=>`${nt(e)}/download/comic-${e}.cbz?mtime=${t}`,Ln=({pk:e,page:t,mtime:o})=>`${nt(e)}/${t}/page.jpg?mtime=${o}`,Ue=({pk:e,page:t,mtime:o})=>`${tt(e)}/${t}/page.jpg?mtime=${o}`,Zo=({pk:e,mtime:t})=>`/c/${e}/book.pdf?mtime=${t}`,ve={getPdfBookSource:Zo,getReaderBasePath:tt,getReaderInfo:Xo,getReaderSettings:qo,setReaderSettings:Ko},Qo=function(e){let t;return e?t=e.length===4&&!Number.isNaN(e)?" ("+e+")":" v"+e:t="",t},Jo=function({issueNumber:e,issueSuffix:t},o){let a;try{e==null&&!t&&(e=0);const n=Number.parseFloat(e),s=Math.floor(n);o===void 0&&(o=0),n===s?a=s.toString():(a=n.toString(),o+=a.split(".")[1].length+1),a=a.padStart(o,"0")}catch{a=""}return t&&(a+=t),a},en=function({issueNumber:e,issueSuffix:t,issueCount:o},a){let n="#"+Jo({issueNumber:e,issueSuffix:t},a);return o&&(n+=` of ${o}`),n},tn=function({seriesName:e,volumeName:t,issueNumber:o,issueSuffix:a,issueCount:n},s){const i=Qo(t),l=en({issueNumber:o,issueSuffix:a,issueCount:n},s);return[e,i,l].filter(Boolean).join(" ")},_t={fitTo:"",twoPages:null,readingDirection:"",readRtlInReverse:null};Object.freeze(_t);const kt={cacheBook:!1};Object.freeze(kt);const se=new Set(["",null,void 0]);Object.freeze(se);const wt={prev:"next",next:"prev"};Object.freeze(wt);const _e={rel:"prefetch",as:"image"};Object.freeze(_e);const xe=new Set(["ttb","btt"]);Object.freeze(xe);const St=new Set(["rtl","btt"]);Object.freeze(St);const Fe=1,yt={S:"Screen",W:"Width",H:"Height",O:"Original"};Object.freeze(yt);const on=()=>Math.max(document.documentElement.clientWidth||0,window.innerWidth||0)>600?"HEIGHT":"WIDTH",He=e=>{xe.has(e.readingDirection)&&e.twoPages&&(e.twoPages=!1)},nn=jt("reader",{state:()=>({choices:{fitTo:Ae.reader.fitTo,readingDirection:Ae.reader.readingDirection,nullValues:se},readerSettings:{fitTo:on(),twoPages:!1,readingDirection:"ltr",readRtlInReverse:!1},books:{current:void 0,prev:!1,next:!1},arcs:[],arc:{},page:void 0,routes:{prev:!1,next:!1,books:{prev:!1,next:!1}},bookChange:void 0,reactWithScroll:!1,clientSettings:{cacheBook:!1,scale:Fe}}),getters:{groupBooks(e){const t=[];return e.books.prev[0]&&t.push[e.books.prev[0]],t.push[e.books.current],e.books.next[0]&&t.push[e.books.next[0]],t},activeSettings(e){return e.getSettings(e.books.current)||{}},activeTitle(e){var a;const t=e.books.current;let o;return((a=e.arcs[0])==null?void 0:a.group)==="f"&&(o=t==null?void 0:t.filename),o||(o=t?tn(t):""),o},routeParams(e){return{pk:+e.books.current.pk,page:+e.page}},isVertical(e){return xe.has(e.activeSettings.readingDirection)},isPDF(e){var t,o;return((o=(t=e.books)==null?void 0:t.current)==null?void 0:o.fileType)=="PDF"},cacheBook(e){return e.clientSettings.cacheBook&&!(this.isPDF&&this.isVertical)},isPagesNotRoutes(e){return e.isVertical||this.cacheBook},isReadInReverse(e){return St.has(e.activeSettings.readingDirection)},isBTT(e){return e.activeSettings.readingDirection==="btt"},isFirstPage(e){return e.page===0},isLastPage(e){const t=e.books.current?e.books.current.maxPage:0,o=e.activeSettings.twoPages?1:0,a=t-o;return this.page>=a}},actions:{setReadRTLInReverse(e){return this.readerSettings.readRtlInReverse&&e.readingDirection==="rtl"?{...e,readingDirection:"ltr"}:e},getSettings(e){const t={...se};let o=e?e.settings:{};o=this.setReadRTLInReverse(o);const a=[this.readerSettings,o];for(const n of a)for(const[s,i]of Object.entries(n))se.has(i)||(t[s]=i);return He(t),t},bookChangeLocation(e){let t;return this.isBTT?t=e==="next"?"left":"right":t=e==="next"?"right":"left",t},bookChangeCursorClass(e){let t;return this.isReadInReverse?t=e==="next"?"up":"down":t=e==="next"?"down":"up",t+"Cursor"},bookChangeShow(e){return e==="prev"?this.books.prev&&this.isFirstPage:this.books.next&&this.isLastPage},bookChangeIcon(e){let t=e==="next";return this.isBTT&&(t=!t),t?Gt:Yt},isCoverPage(e,t){return e.readLtr!==!1&&t===0||e.readLtr&&t===e.maxPage},_getRouteParams(e,t,o){const a=o==="prev"?-1:1;let n=1;this.getSettings(e).twoPages&&!this.isCoverPage(e,+t+a)&&(n=2),n=n*a;const i=+t+n;let l=!1;return i>=0&&i<=e.maxPage&&(l={pk:e.pk,page:i}),l},fitToClass(e){const t=this.getSettings(e),o={};let a;if(this.clientSettings.scale>Fe?a="Orig":a=yt[t.fitTo],a){let n="fitTo";n+=io(a),this.isVertical?n+="Vertical":t.twoPages&&(n+="Two"),o[n]=!0}return o},_updateSettings(e,t){t?(this.books.current.settings={...this.books.current.settings,...e},He(this.books.current.settings)):this.readerSettings={...this.readerSettings,...e}},_getBookRoutePage(e,t){let o=0;if(t&&e.readLtr!==!1||!t&&e.readLtr===!1){const n=this.getSettings(e).twoPages?-1:0;o=e.maxPage+n}return o},_getBookRoute(e,t){if(!e)return!1;const o=this._getBookRoutePage(e,t);return{pk:e.pk,page:o}},_getBookRoutes(e,t){return{prev:this._getBookRoute(e,!0),next:this._getBookRoute(t,!1)}},async setRoutesAndBookmarkPage(e){const t=this.books.current;this.$patch(o=>{o.routes.prev=this._getRouteParams(t,e,"prev"),o.routes.next=this._getRouteParams(t,e,"next")}),await this._setBookmarkPage(e).then(()=>(this.bookChange=void 0,!0))},setActivePage(e,t=!0){if(e<0)return console.warn("Page out of bounds. Redirecting to 0."),this.routeToPage(0);if(e>this.books.current.maxPage)return console.warn(`Page out of bounds. Redirecting to ${this.books.current.maxPage}.`),this.routeToPage(this.books.current.maxPage);if(this.reactWithScroll=!!t,this.page=+e,this.setRoutesAndBookmarkPage(e),this.isPagesNotRoutes){const o={params:{pk:this.books.current.pk,page:e}},{href:a}=he.resolve(o);window.history.pushState({},void 0,a)}else window.scrollTo(0,0)},async loadReaderSettings(){return ve.getReaderSettings().then(e=>{const t=e.data;return this._updateSettings(t,!1),!0}).catch(console.error)},async loadBooks(e){await ve.getReaderInfo(e).then(t=>{const o=t.data,a=[o.books.prevBook,o.books.current,o.books.nextBook];for(const s of a)s&&!s.settings&&(s.settings={});const n=this._getBookRoutes(o.books.prevBook,o.books.nextBook);return this.$patch(s=>{s.books.current=o.books.current,s.books.prev=o.books.prevBook,s.books.next=o.books.nextBook,s.arcs=o.arcs,s.arc=o.arc,s.routes.prev=this._getRouteParams(s.books.current,e.page,"prev"),s.routes.next=this._getRouteParams(s.books.current,e.page,"next"),s.routes.books=n}),!0}).catch(t=>{console.debug(t);const o=no().page,a=o&&o.routes?o.routes.last:{name:"home"};return he.push(a)})},async _setBookmarkPage(e){const t={group:"c",pk:this.books.current.pk};e=Math.max(Math.min(this.books.current.maxPage,e),0);const o={page:e};await Ne.setGroupBookmarks(t,o)},async setSettingsLocal(e){this._updateSettings(e,!0),await Ne.setGroupBookmarks({group:"c",pk:+this.books.current.pk},this.books.current.settings)},setSettingsClient(e){this.clientSettings={...this.clientSettings,...e}},async clearSettingsLocal(){await this.setSettingsLocal(_t),this.setSettingsClient(kt)},async setSettingsGlobal(e){this._updateSettings(e,!1),await ve.setReaderSettings(this.readerSettings),await this.clearSettingsLocal()},setBookChangeFlag(e){e=this.normalizeDirection(e),this.bookChange=this.routes.books[e]?e:void 0},normalizeDirection(e){return this.isReadInReverse?wt[e]:e},_validateRoute(e,t){if(t||(t=this.books.current),!t)return{};const o=t.maxPage??0;return e.page>o?(e.page=o,console.warn("Tried to navigate past the end of the book.")):e.page<0&&(e.page=0,console.warn("Tried to navigate before the beginning of the book.")),e},_routeTo(e,t){if(e=this._validateRoute(e,t),this.isPagesNotRoutes&&+e.pk===this.books.current.pk)this.setActivePage(+e.page,!0);else{const o={name:"reader",params:e};he.push(o).catch(console.debug)}},routeToDirectionOne(e){e=this.normalizeDirection(e);const t=e==="prev"?-1:1,o=this.page+=t;if(o<0||o>this.books.current.maxPage)return;const a={pk:this.books.current.pk,page:o};this._routeTo(a)},routeToDirection(e){if(e=this.normalizeDirection(e),this.routes[e]){const t=this.routes[e];this._routeTo(t)}else this.routes.books[e]?this.bookChange===e?this._routeTo(this.routes.books[e],this.books[e]):this.setBookChangeFlag(e):console.debug("No route to direction",e)},routeToPage(e){const t={pk:this.books.current.pk,page:e};this._routeTo(t)},routeToBook(e){this._routeTo(this.routes.books[e],this.books[e])},_prefetchSrc(e,t,o=!1,a=!1){if(!e)return!1;const n=o?this.books[t]:this.books.current;if(!n)return!1;let s=e.page;if(a){if(!this.getSettings(n).twoPages)return!1;s+=1}if(s>n.maxPage)return!1;const i={pk:e.pk,page:s,mtime:n.mtime};return Ue(i)},prefetchLinks(e,t,o=!1){if(!o&&this.cacheBook)return{};const a=[this._prefetchSrc(e,t,o,!1),this._prefetchSrc(e,t,o,!0)],n=[];for(const s of a)s&&n.push({..._e,href:s});return{link:n}},prefetchBook(e){if(!this.cacheBook||e.fileType=="PDF")return{};const t=e.pk,o=[];for(let a=0;a<=e.maxPage;a++){const n={pk:t,page:a,mtime:e.mtime},s=Ue(n);s&&o.push({..._e,href:s})}return{link:o}},toRoute(e){return e?{params:e}:{}},linkLabel(e,t){return`${e==="prev"?"Previous":"Next"} ${t}`}}});function sn(e){let{rootEl:t,isSticky:o,layoutItemStyles:a}=e;const n=H(!1),s=H(0),i=_(()=>{const v=typeof n.value=="boolean"?"top":n.value;return[o.value?{top:"auto",bottom:"auto",height:void 0}:void 0,n.value?{[v]:X(s.value)}:{top:a.value.top}]});st(()=>{K(o,v=>{v?window.addEventListener("scroll",k,{passive:!0}):window.removeEventListener("scroll",k)},{immediate:!0})}),at(()=>{window.removeEventListener("scroll",k)});let l=0;function k(){const v=l>window.scrollY?"up":"down",u=t.value.getBoundingClientRect(),g=parseFloat(a.value.top??0),m=window.scrollY-Math.max(0,s.value-g),b=u.height+Math.max(s.value,g)-window.scrollY-window.innerHeight,C=parseFloat(getComputedStyle(t.value).getPropertyValue("--v-body-scroll-y"))||0;u.height<window.innerHeight-g?(n.value="top",s.value=g):v==="up"&&n.value==="bottom"||v==="down"&&n.value==="top"?(s.value=window.scrollY+u.top-C,n.value=!0):v==="down"&&b<=0?(s.value=0,n.value="bottom"):v==="up"&&m<=0&&(C?n.value!=="top"&&(s.value=-m+C+g,n.value="top"):(s.value=u.top+m,n.value="top")),l=window.scrollY}return{isStuck:n,stickyStyles:i}}const an=100,rn=20;function ze(e){return(e<0?-1:1)*Math.sqrt(Math.abs(e))*1.41421356237}function We(e){if(e.length<2)return 0;if(e.length===2)return e[1].t===e[0].t?0:(e[1].d-e[0].d)/(e[1].t-e[0].t);let t=0;for(let o=e.length-1;o>0;o--){if(e[o].t===e[o-1].t)continue;const a=ze(t),n=(e[o].d-e[o-1].d)/(e[o].t-e[o-1].t);t+=(n-a)*Math.abs(n),o===e.length-1&&(t*=.5)}return ze(t)*1e3}function ln(){const e={};function t(n){Array.from(n.changedTouches).forEach(s=>{(e[s.identifier]??(e[s.identifier]=new Xt(rn))).push([n.timeStamp,s])})}function o(n){Array.from(n.changedTouches).forEach(s=>{delete e[s.identifier]})}function a(n){var v;const s=(v=e[n])==null?void 0:v.values().reverse();if(!s)throw new Error(`No samples for touch id ${n}`);const i=s[0],l=[],k=[];for(const u of s){if(i[0]-u[0]>an)break;l.push({t:u[0],d:u[1].clientX}),k.push({t:u[0],d:u[1].clientY})}return{x:We(l),y:We(k),get direction(){const{x:u,y:g}=this,[m,b]=[Math.abs(u),Math.abs(g)];return m>b&&u>=0?"right":m>b&&u<=0?"left":b>m&&g>=0?"down":b>m&&g<=0?"up":un()}}}return{addMovement:t,endTouch:o,getVelocity:a}}function un(){throw new Error}function cn(e){let{isActive:t,isTemporary:o,width:a,touchless:n,position:s}=e;st(()=>{window.addEventListener("touchstart",R,{passive:!0}),window.addEventListener("touchmove",V,{passive:!1}),window.addEventListener("touchend",B,{passive:!0})}),at(()=>{window.removeEventListener("touchstart",R),window.removeEventListener("touchmove",V),window.removeEventListener("touchend",B)});const i=_(()=>["left","right"].includes(s.value)),{addMovement:l,endTouch:k,getVelocity:v}=ln();let u=!1;const g=H(!1),m=H(0),b=H(0);let C;function y(d,c){return(s.value==="left"?d:s.value==="right"?document.documentElement.clientWidth-d:s.value==="top"?d:s.value==="bottom"?document.documentElement.clientHeight-d:Y())-(c?a.value:0)}function x(d){let c=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;const f=s.value==="left"?(d-b.value)/a.value:s.value==="right"?(document.documentElement.clientWidth-d-b.value)/a.value:s.value==="top"?(d-b.value)/a.value:s.value==="bottom"?(document.documentElement.clientHeight-d-b.value)/a.value:Y();return c?Math.max(0,Math.min(1,f)):f}function R(d){if(n.value)return;const c=d.changedTouches[0].clientX,f=d.changedTouches[0].clientY,w=25,D=s.value==="left"?c<w:s.value==="right"?c>document.documentElement.clientWidth-w:s.value==="top"?f<w:s.value==="bottom"?f>document.documentElement.clientHeight-w:Y(),I=t.value&&(s.value==="left"?c<a.value:s.value==="right"?c>document.documentElement.clientWidth-a.value:s.value==="top"?f<a.value:s.value==="bottom"?f>document.documentElement.clientHeight-a.value:Y());(D||I||t.value&&o.value)&&(u=!0,C=[c,f],b.value=y(i.value?c:f,t.value),m.value=x(i.value?c:f),k(d),l(d))}function V(d){const c=d.changedTouches[0].clientX,f=d.changedTouches[0].clientY;if(u){if(!d.cancelable){u=!1;return}const D=Math.abs(c-C[0]),I=Math.abs(f-C[1]);(i.value?D>I&&D>3:I>D&&I>3)?(g.value=!0,u=!1):(i.value?I:D)>3&&(u=!1)}if(!g.value)return;d.preventDefault(),l(d);const w=x(i.value?c:f,!1);m.value=Math.max(0,Math.min(1,w)),w>1?b.value=y(i.value?c:f,!0):w<0&&(b.value=y(i.value?c:f,!1))}function B(d){if(u=!1,!g.value)return;l(d),g.value=!1;const c=v(d.changedTouches[0].identifier),f=Math.abs(c.x),w=Math.abs(c.y);(i.value?f>w&&f>400:w>f&&w>3)?t.value=c.direction===({left:"right",right:"left",top:"down",bottom:"up"}[s.value]||Y()):t.value=m.value>.5}const E=_(()=>g.value?{transform:s.value==="left"?`translateX(calc(-100% + ${m.value*a.value}px))`:s.value==="right"?`translateX(calc(100% - ${m.value*a.value}px))`:s.value==="top"?`translateY(calc(-100% + ${m.value*a.value}px))`:s.value==="bottom"?`translateY(calc(100% - ${m.value*a.value}px))`:Y(),transition:"none"}:void 0);return{isDragging:g,dragProgress:m,dragStyles:E}}function Y(){throw new Error}const dn=["start","end","left","right","top","bottom"],mn=ee({color:String,disableResizeWatcher:Boolean,disableRouteWatcher:Boolean,expandOnHover:Boolean,floating:Boolean,modelValue:{type:Boolean,default:null},permanent:Boolean,rail:{type:Boolean,default:null},railWidth:{type:[Number,String],default:56},scrim:{type:[Boolean,String],default:!0},image:String,temporary:Boolean,touchless:Boolean,width:{type:[Number,String],default:256},location:{type:String,default:"start",validator:e=>dn.includes(e)},sticky:Boolean,...ke(),...ie(),...so(),...we(),...ut(),...Se(),...le({tag:"nav"}),...ye()},"VNavigationDrawer"),gn=te()({name:"VNavigationDrawer",props:mn(),emits:{"update:modelValue":e=>!0,"update:rail":e=>!0},setup(e,t){let{attrs:o,emit:a,slots:n}=t;const{isRtl:s}=rt(),{themeClasses:i}=Pe(e),{borderClasses:l}=Te(e),{backgroundColorClasses:k,backgroundColorStyles:v}=ae(Q(e,"color")),{elevationClasses:u}=Ce(e),{displayClasses:g,mobile:m}=ao(e),{roundedClasses:b}=Re(e),C=qt(),y=be(e,"modelValue",null,L=>!!L),{ssrBootStyles:x}=Kt(),{scopeId:R}=lo(),V=qe(),B=H(!1),E=_(()=>e.rail&&e.expandOnHover&&B.value?Number(e.width):Number(e.rail?e.railWidth:e.width)),d=_(()=>Zt(e.location,s.value)),c=_(()=>!e.permanent&&(m.value||e.temporary)),f=_(()=>e.sticky&&!c.value&&d.value!=="bottom");ge(()=>e.expandOnHover&&e.rail!=null,()=>{K(B,L=>a("update:rail",!L))}),ge(()=>!e.disableResizeWatcher,()=>{K(c,L=>!e.permanent&&eo(()=>y.value=!L))}),ge(()=>!e.disableRouteWatcher&&!!C,()=>{K(C.currentRoute,()=>c.value&&(y.value=!1))}),K(()=>e.permanent,L=>{L&&(y.value=!0)}),Qt(()=>{e.modelValue!=null||c.value||(y.value=e.permanent||!m.value)});const{isDragging:w,dragProgress:D,dragStyles:I}=cn({isActive:y,isTemporary:c,width:E,touchless:Q(e,"touchless"),position:d}),F=_(()=>{const L=c.value?0:e.rail&&e.expandOnHover?Number(e.railWidth):E.value;return w.value?L*D.value:L}),{layoutItemStyles:j,layoutItemScrimStyles:O}=ct({id:e.name,order:_(()=>parseInt(e.order,10)),position:d,layoutSize:F,elementSize:E,active:_(()=>y.value||w.value),disableTransitions:_(()=>w.value),absolute:_(()=>e.absolute||f.value&&typeof ne.value!="string")}),{isStuck:ne,stickyStyles:de}=sn({rootEl:V,isSticky:f,layoutItemStyles:j}),G=ae(_(()=>typeof e.scrim=="string"?e.scrim:null)),Pt=_(()=>({...w.value?{opacity:D.value*.2,transition:"none"}:void 0,...O.value}));it({VList:{bgColor:"transparent"}});function Tt(){B.value=!0}function Ct(){B.value=!1}return oe(()=>{const L=n.image||e.image;return r(Ve,null,[r(e.tag,W({ref:V,onMouseenter:Tt,onMouseleave:Ct,class:["v-navigation-drawer",`v-navigation-drawer--${d.value}`,{"v-navigation-drawer--expand-on-hover":e.expandOnHover,"v-navigation-drawer--floating":e.floating,"v-navigation-drawer--is-hovering":B.value,"v-navigation-drawer--rail":e.rail,"v-navigation-drawer--temporary":c.value,"v-navigation-drawer--active":y.value,"v-navigation-drawer--sticky":f.value},i.value,k.value,l.value,g.value,u.value,b.value,e.class],style:[v.value,j.value,I.value,x.value,de.value,e.style]},R,o),{default:()=>{var Ee,Ie,Le;return[L&&r("div",{key:"image",class:"v-navigation-drawer__img"},[n.image?r(Z,{key:"image-defaults",disabled:!e.image,defaults:{VImg:{alt:"",cover:!0,height:"inherit",src:e.image}}},n.image):r(lt,{key:"image-img",alt:"",cover:!0,height:"inherit",src:e.image},null)]),n.prepend&&r("div",{class:"v-navigation-drawer__prepend"},[(Ee=n.prepend)==null?void 0:Ee.call(n)]),r("div",{class:"v-navigation-drawer__content"},[(Ie=n.default)==null?void 0:Ie.call(n)]),n.append&&r("div",{class:"v-navigation-drawer__append"},[(Le=n.append)==null?void 0:Le.call(n)])]}}),r(Jt,{name:"fade-transition"},{default:()=>[c.value&&(w.value||y.value)&&!!e.scrim&&r("div",W({class:["v-navigation-drawer__scrim",G.backgroundColorClasses.value],style:[Pt.value,G.backgroundColorStyles.value],onClick:()=>y.value=!1},R),null)]})])}),{isStuck:ne}}}),hn={name:"SettingsDrawer",components:{SettingsCommonPanel:Yo,SettingsFooter:bt,VersionFooter:vt},props:{title:{type:String,required:!0},panel:{type:Object,required:!0},admin:{type:Boolean,default:!1}},computed:{...ue($,["isCodexViewable"]),...to(re,["isSettingsDrawerOpen"]),...z(nn,{invisibleHack:e=>e.bookChange==="next"}),adminAndNotSmall(){return this.admin&&!this.$vuetify.display.smAndDown}},mounted(){this.isSettingsDrawerOpen=this.adminAndNotSmall}},fn={class:"settingsDrawerContainer"},vn={id:"topBlock"},bn={class:"settingsHeader"},pn={id:"footerGroup"};function _n(e,t,o,a,n,s){const i=J("SettingsCommonPanel"),l=bt,k=vt;return p(),S(gn,W(e.$attrs,{modelValue:e.isSettingsDrawerOpen,"onUpdate:modelValue":t[0]||(t[0]=v=>e.isSettingsDrawerOpen=v),"disable-resize-watcher":"","disable-route-watcher":"",location:"right",scrim:!s.adminAndNotSmall,temporary:!s.adminAndNotSmall,touchless:""}),{append:h(()=>[r(k)]),default:h(()=>[A("div",fn,[A("div",vn,[A("header",bn,[A("h3",null,P(o.title),1)]),e.isCodexViewable?(p(),S(Be(o.panel),{key:0})):N("",!0),e.isCodexViewable?(p(),S(pe,{key:1})):N("",!0),r(i,{"admin-menu":!o.admin},null,8,["admin-menu"]),r(pe)]),A("div",pn,[r(l)])])]),_:1},16,["modelValue","scrim","temporary"])}const An=M(hn,[["render",_n],["__scopeId","data-v-a38da0ea"]]),je=Je(et(()=>dt(()=>import("./admin-drawer-panel-BaTVOySr.js").then(e=>e.dy),__vite__mapDeps([0,1])))),kn={name:"SettingsDrawerButton",components:{AdminSettingsButtonProgress:je},data(){return{mdiMenu:oo,AdminSettingsButtonProgress:je}},computed:{...z($,["isUserAdmin"])}};function wn(e,t,o,a,n,s){return p(),S(Xe,W(e.$attrs,{icon:"",title:"Settings"}),{default:h(()=>[r(U,null,{default:h(()=>[T(P(n.mdiMenu),1)]),_:1}),e.isUserAdmin?(p(),S(Be(n.AdminSettingsButtonProgress),{key:0})):N("",!0)]),_:1},16)}const Nn=M(kn,[["render",wn]]),Sn=ee({text:String,...ie(),...le()},"VToolbarTitle"),yn=te()({name:"VToolbarTitle",props:Sn(),setup(e,t){let{slots:o}=t;return oe(()=>{const a=!!(o.default||o.text||e.text);return r(e.tag,{class:["v-toolbar-title",e.class],style:e.style},{default:()=>{var n;return[a&&r("div",{class:"v-toolbar-title__placeholder"},[o.text?o.text():e.text,(n=o.default)==null?void 0:n.call(o)])]}})}),{}}}),Pn=[null,"prominent","default","comfortable","compact"],Tn=ee({absolute:Boolean,collapse:Boolean,color:String,density:{type:String,default:"default",validator:e=>Pn.includes(e)},extended:Boolean,extensionHeight:{type:[Number,String],default:48},flat:Boolean,floating:Boolean,height:{type:[Number,String],default:64},image:String,title:String,...ke(),...ie(),...we(),...Se(),...le({tag:"header"}),...ye()},"VToolbar"),$n=te()({name:"VToolbar",props:Tn(),setup(e,t){var b;let{slots:o}=t;const{backgroundColorClasses:a,backgroundColorStyles:n}=ae(Q(e,"color")),{borderClasses:s}=Te(e),{elevationClasses:i}=Ce(e),{roundedClasses:l}=Re(e),{themeClasses:k}=Pe(e),{rtlClasses:v}=rt(),u=H(!!(e.extended||(b=o.extension)!=null&&b.call(o))),g=_(()=>parseInt(Number(e.height)+(e.density==="prominent"?Number(e.height):0)-(e.density==="comfortable"?8:0)-(e.density==="compact"?16:0),10)),m=_(()=>u.value?parseInt(Number(e.extensionHeight)+(e.density==="prominent"?Number(e.extensionHeight):0)-(e.density==="comfortable"?4:0)-(e.density==="compact"?8:0),10):0);return it({VBtn:{variant:"text"}}),oe(()=>{var R;const C=!!(e.title||o.title),y=!!(o.image||e.image),x=(R=o.extension)==null?void 0:R.call(o);return u.value=!!(e.extended||x),r(e.tag,{class:["v-toolbar",{"v-toolbar--absolute":e.absolute,"v-toolbar--collapse":e.collapse,"v-toolbar--flat":e.flat,"v-toolbar--floating":e.floating,[`v-toolbar--density-${e.density}`]:!0},a.value,s.value,i.value,l.value,k.value,v.value,e.class],style:[n.value,e.style]},{default:()=>[y&&r("div",{key:"image",class:"v-toolbar__image"},[o.image?r(Z,{key:"image-defaults",disabled:!e.image,defaults:{VImg:{cover:!0,src:e.image}}},o.image):r(lt,{key:"image-img",cover:!0,src:e.image},null)]),r(Z,{defaults:{VTabs:{height:X(g.value)}}},{default:()=>{var V,B,E;return[r("div",{class:"v-toolbar__content",style:{height:X(g.value)}},[o.prepend&&r("div",{class:"v-toolbar__prepend"},[(V=o.prepend)==null?void 0:V.call(o)]),C&&r(yn,{key:"title",text:e.title},{text:o.title}),(B=o.default)==null?void 0:B.call(o),o.append&&r("div",{class:"v-toolbar__append"},[(E=o.append)==null?void 0:E.call(o)])])]}}),r(Z,{defaults:{VTabs:{height:X(m.value)}}},{default:()=>[r(Qe,null,{default:()=>[u.value&&r("div",{class:"v-toolbar__extension",style:{height:X(m.value)}},[x])]})]})]})}),{contentHeight:g,extensionHeight:m}}});export{Nn as S,yn as V,An as _,$n as a,en as b,Fe as c,Ue as d,gn as e,Qo as f,tn as g,In as h,Ln as i,Jo as j,nn as u};
@@ -1,7 +1,7 @@
1
1
  function __vite__mapDeps(indexes) {
2
2
  if (!__vite__mapDeps.viteFileDeps) {
3
- __vite__mapDeps.viteFileDeps = ["assets/admin-drawer-panel-CGj6J0rX.js","assets/admin-drawer-panel-Bk7z8uTR.css"]
3
+ __vite__mapDeps.viteFileDeps = ["assets/admin-drawer-panel-BaTVOySr.js","assets/admin-drawer-panel-Bk7z8uTR.css"]
4
4
  }
5
5
  return indexes.map((i) => __vite__mapDeps.viteFileDeps[i])
6
6
  }
7
- import{x as ee,bY as ke,E as ie,bL as we,bK as Se,aq as le,F as ye,G as te,I as Pe,at as ae,au as Q,bZ as Te,bP as Ce,bS as Re,s as H,y as Rt,h as _,K as oe,L as r,z as X,a$ as Ge,b_ as Vt,M as z,k as re,ax as ue,m as $,N as ce,_ as M,R as p,O as S,P as h,aD as A,ae as P,ay as q,aB as N,b$ as Ye,c0 as Bt,c1 as Dt,aa as T,ad as U,be as xt,bh as Et,c2 as It,Q as J,am as W,ak as Xe,c3 as Lt,ar as be,c4 as At,r as qe,C as Nt,c5 as $t,al as Ve,c6 as Z,bQ as Ot,c7 as Mt,bT as Ut,c8 as Ft,af as Ke,b1 as Ht,b2 as zt,ag as Ze,aX as me,c9 as Qe,ca as Wt,aC as Je,bn as et,aA as Be,aT as pe,bU as tt,cb as ot,H as De,cc as nt,l as jt,cd as Gt,ce as Yt,B as st,a as K,o as at,cf as Xt,J as rt,cg as qt,bI as Kt,ch as Zt,ci as ge,cj as Qt,av as it,bV as lt,ck as Jt,n as eo,a9 as to,bi as oo}from"./admin-drawer-panel-CGj6J0rX.js";import{m as ut,b as ct,_ as dt,C as Ae,r as he,u as no,A as Ne,c as so,d as ao}from"./main-BXWucpmC.js";import{c as ro,t as io}from"./index-DUjeNg4x.js";import{V as mt,a as lo}from"./confirm-footer-CLwOC3F0.js";import{_ as gt}from"./change-password-dialog-DDvVSrWH.js";import{_ as ht,a as fe,b as uo}from"./VSlideGroup-D4n-jSgi.js";import{a as co,c as mo,u as go,V as $e,d as Oe}from"./VSelectionControl-CC9aC7ZT.js";const ho=ee({app:Boolean,color:String,height:{type:[Number,String],default:"auto"},...ke(),...ie(),...we(),...ut(),...Se(),...le({tag:"footer"}),...ye()},"VFooter"),ft=te()({name:"VFooter",props:ho(),setup(e,t){let{slots:o}=t;const{themeClasses:a}=Pe(e),{backgroundColorClasses:n,backgroundColorStyles:s}=ae(Q(e,"color")),{borderClasses:i}=Te(e),{elevationClasses:l}=Ce(e),{roundedClasses:k}=Re(e),v=H(32),{resizeRef:u}=Rt(b=>{b.length&&(v.value=b[0].target.clientHeight)}),g=_(()=>e.height==="auto"?v.value:parseInt(e.height,10)),{layoutItemStyles:m}=ct({id:e.name,order:_(()=>parseInt(e.order,10)),position:_(()=>"bottom"),layoutSize:g,elementSize:_(()=>e.height==="auto"?void 0:g.value),active:_(()=>e.app),absolute:Q(e,"absolute")});return oe(()=>r(e.tag,{ref:u,class:["v-footer",a.value,n.value,i.value,l.value,k.value,e.class],style:[s.value,e.app?m.value:{height:X(e.height)},e.style]},o)),{}}}),fo={name:"VersionFooter",data(){return{mdiOpenInNew:Ge,mdiContentCopy:Vt}},computed:{...z(re,{versions:e=>e.versions}),...ue($,["isUserAdmin"]),outdated:function(){return this.isUserAdmin&&this.semverGreaterThan(this.versions.latest>this.versions.installed)},versionTitle:function(){return this.outdated?`v${this.versions.latest} is available`:"up to date"}},created(){this.loadVersions()},methods:{...ce(re,["loadVersions"]),semverGreaterThan(e,t){try{if(!e||!t)return!1;const o=e.split("."),a=t.split(".");for(const[n,s]of o.entries())if(+s>+a[n])return!0}catch(o){console.debug("compare codex versions",e,">",t,o)}return!1}}},vo={id:"version"},bo={key:0,id:"latest"};function po(e,t,o,a,n,s){return p(),S(ft,{id:"version-footer",title:s.versionTitle},{default:h(()=>[A("div",vo,"codex v"+P(e.versions.installed),1),s.outdated?(p(),q("div",bo," codex v"+P(e.versions.latest)+" is available ",1)):N("",!0)]),_:1},8,["title"])}const vt=M(fo,[["render",po],["__scopeId","data-v-cd481730"]]),_o={name:"OPDSUrl",props:{title:{type:String,required:!0},subtitle:{type:String,default:void 0},url:{type:String,required:!0}},data(){return{mdiRss:Ye,showTooltip:{show:!1}}},computed:{clipBoardEnabled(){return location.protocol=="https:"},clipBoardIcon(){return this.showTooltip.show?Bt:Dt},tooltip(){return this.clipBoardEnabled}},methods:{onClickURL(){this.clipBoardEnabled&&ro(this.url,this.showTooltip)}}},ko=["title"],wo={key:0},So={class:"copied"},yo={key:0,class:"subtitle"},Po={class:"opdsUrl"};function To(e,t,o,a,n,s){return p(),q("div",{class:"opdsVersion",title:s.tooltip,onClick:t[0]||(t[0]=(...i)=>s.onClickURL&&s.onClickURL(...i))},[A("h3",null,[T(P(o.title)+" ",1),s.clipBoardEnabled?(p(),q("span",wo,[r(U,{class:"clipBoardIcon",size:"small"},{default:h(()=>[T(P(s.clipBoardIcon),1)]),_:1}),r(It,null,{default:h(()=>[xt(A("span",So,"Copied",512),[[Et,n.showTooltip.show]])]),_:1})])):N("",!0)]),o.subtitle?(p(),q("div",yo,P(o.subtitle),1)):N("",!0),A("div",Po,P(o.url),1)],8,ko)}const Co=M(_o,[["render",To],["__scopeId","data-v-68a52a66"]]),Ro={name:"OPDSDialog",components:{OPDSUrl:Co},data(){return{mdiRss:Ye,opdsV1URL:window.origin+window.CODEX.OPDS_V1_PATH,opdsV2URL:window.origin+window.CODEX.OPDS_V2_PATH}}},Vo={id:"opds"};function Bo(e,t,o,a,n,s){const i=J("OPDSUrl");return p(),S(mt,{"max-width":"30em"},{activator:h(({props:l})=>[r(Xe,W({id:"opdsButton",icon:"",size:"small",variant:"plain"},l),{default:h(()=>[r(U,null,{default:h(()=>[T(P(n.mdiRss),1)]),_:1}),T(" OPDS ")]),_:2},1040)]),default:h(()=>[A("div",Vo,[A("h2",null,[r(U,{size:"x=small",class:"inline"},{default:h(()=>[T(P(n.mdiRss),1)]),_:1}),T(" OPDS ")]),r(i,{title:"v1.2",url:n.opdsV1URL},null,8,["url"]),r(i,{title:"v2.0",url:n.opdsV2URL,subtitle:"OPDS v2 is experimental and not widely or well supported by clients"},null,8,["url"])])]),_:1})}const Do=M(Ro,[["render",Bo],["__scopeId","data-v-741734ce"]]),xo={name:"SettingsFooter",components:{OPDSDialog:Do},data(){return{mdiOpenInNew:Ge,mdiSourceRepository:Lt}},computed:{...ue($,["isCodexViewable"])}},Eo={id:"repo",href:"https://github.com/ajslater/codex",title:"Codex Source Repository",target:"_blank"};function Io(e,t,o,a,n,s){const i=J("OPDSDialog");return p(),S(ft,{id:"settingsFooter"},{default:h(()=>[e.isCodexViewable?(p(),S(i,{key:0})):N("",!0),A("a",Eo,[r(U,{id:"repoIcon",size:"x-small"},{default:h(()=>[T(P(n.mdiSourceRepository),1)]),_:1}),T(" repository"),r(U,{color:e.$vuetify.theme.current.colors.iconsInactive,size:"x-small"},{default:h(()=>[T(P(n.mdiOpenInNew),1)]),_:1},8,["color"])])]),_:1})}const bt=M(xo,[["render",Io],["__scopeId","data-v-f9eb593e"]]),Lo=ee({indeterminate:Boolean,inset:Boolean,flat:Boolean,loading:{type:[Boolean,String],default:!1},...co(),...mo()},"VSwitch"),Ao=te()({name:"VSwitch",inheritAttrs:!1,props:Lo(),emits:{"update:focused":e=>!0,"update:modelValue":e=>!0,"update:indeterminate":e=>!0},setup(e,t){let{attrs:o,slots:a}=t;const n=be(e,"indeterminate"),s=be(e,"modelValue"),{loaderClasses:i}=At(e),{isFocused:l,focus:k,blur:v}=go(e),u=qe(),g=_(()=>typeof e.loading=="string"&&e.loading!==""?e.loading:e.color),m=Nt(),b=_(()=>e.id||`switch-${m}`);function C(){n.value&&(n.value=!1)}function y(x){var R,V;x.stopPropagation(),x.preventDefault(),(V=(R=u.value)==null?void 0:R.input)==null||V.click()}return oe(()=>{const[x,R]=$t(o),V=$e.filterProps(e),B=Oe.filterProps(e);return r($e,W({class:["v-switch",{"v-switch--flat":e.flat},{"v-switch--inset":e.inset},{"v-switch--indeterminate":n.value},i.value,e.class]},x,V,{modelValue:s.value,"onUpdate:modelValue":E=>s.value=E,id:b.value,focused:l.value,style:e.style}),{...a,default:E=>{let{id:d,messagesId:c,isDisabled:f,isReadonly:w,isValid:D}=E;const I={model:s,isValid:D};return r(Oe,W({ref:u},B,{modelValue:s.value,"onUpdate:modelValue":[F=>s.value=F,C],id:d.value,"aria-describedby":c.value,type:"checkbox","aria-checked":n.value?"mixed":void 0,disabled:f.value,readonly:w.value,onFocus:k,onBlur:v},R),{...a,default:F=>{let{backgroundColorClasses:j,backgroundColorStyles:O}=F;return r("div",{class:["v-switch__track",...j.value],style:O.value,onClick:y},[a["track-true"]&&r("div",{key:"prepend",class:"v-switch__track-true"},[a["track-true"](I)]),a["track-false"]&&r("div",{key:"append",class:"v-switch__track-false"},[a["track-false"](I)])])},input:F=>{let{inputNode:j,icon:O,backgroundColorClasses:ne,backgroundColorStyles:de}=F;return r(Ve,null,[j,r("div",{class:["v-switch__thumb",{"v-switch__thumb--filled":O||e.loading},e.inset?void 0:ne.value],style:e.inset?void 0:de.value},[a.thumb?r(Z,{defaults:{VIcon:{icon:O,size:"x-small"}}},{default:()=>[a.thumb({...I,icon:O})]}):r(Ot,null,{default:()=>[e.loading?r(Mt,{name:"v-switch",active:!0,color:D.value===!1?void 0:g.value},{default:G=>a.loader?a.loader(G):r(Ut,{active:G.isActive,color:G.color,indeterminate:!0,size:"16",width:"2"},null)}):O&&r(U,{key:String(O),icon:O,size:"x-small"},null)]})])])}})}})}),{}}}),No={name:"AuthLoginDialog",components:{SubmitFooter:ht},data(){return{rules:{username:[e=>!!e||"Username is required"],password:[e=>e?this.registerMode&&e.length<this.MIN_PASSWORD_LEN?`Password must be ${this.MIN_PASSWORD_LEN} characters long`:!0:"Password is required"],passwordConfirm:[e=>e===this.credentials.password||"Passwords must match"]},formModel:{},credentials:{username:"",password:"",passwordConfirm:""},submitButtonEnabled:!1,showDialog:!1,registerMode:!1,mdiLogin:Ft}},computed:{...z(re,{formErrors:e=>e.form.errors,formSuccess:e=>e.form.success}),...z($,{adminFlags:e=>e.adminFlags,MIN_PASSWORD_LEN:e=>e.MIN_PASSWORD_LEN}),submitButtonLabel:function(){return this.registerMode?"Register":"Login"}},watch:{showDialog(e){e&&(this.loadAdminFlags(),this.$refs.form&&this.$refs.form.reset())},credentials:{handler(){const e=this.$refs.form;e?e.validate().then(({valid:t})=>this.submitButtonEnabled=t).catch(console.error):this.submitButtonEnabled=!1},deep:!0}},mounted(){window.addEventListener("keyup",this._keyListener)},beforeUnmount(){window.removeEventListener("keyup",this._keyListener)},methods:{...ce($,["loadAdminFlags","login","register"]),doAuth(e){return this[e](this.credentials).then(()=>this.showDialog=this.formErrors&&this.formErrors.length>0).catch(console.error)},submit(){this.$refs.form.validate().then(({valid:t})=>{if(!t)return;const o=this.registerMode?"register":"login";return this.doAuth(o)}).catch(console.error)},_keyListener(e){e.stopImmediatePropagation()}}};function $o(e,t,o,a,n,s){const i=ht;return p(),S(mt,{modelValue:n.showDialog,"onUpdate:modelValue":t[7]||(t[7]=l=>n.showDialog=l),origin:"center-top",transition:"slide-y-transition","max-width":"20em"},{activator:h(({props:l})=>[r(Ze,Ht(zt(l)),{default:h(()=>[r(Ke,null,{default:h(()=>[r(U,null,{default:h(()=>[T(P(n.mdiLogin),1)]),_:1}),T(" Login ")]),_:1})]),_:2},1040)]),default:h(()=>[r(uo,{id:"authDialog",ref:"form"},{default:h(()=>[r(fe,{modelValue:n.credentials.username,"onUpdate:modelValue":t[0]||(t[0]=l=>n.credentials.username=l),autocomplete:"username",label:"Username",rules:n.rules.username,clearable:"",autofocus:"",onKeydown:t[1]||(t[1]=me(l=>e.$refs.password.focus(),["enter"]))},null,8,["modelValue","rules"]),r(fe,{ref:"password",modelValue:n.credentials.password,"onUpdate:modelValue":t[2]||(t[2]=l=>n.credentials.password=l),autocomplete:n.registerMode?"new-password":"current-password",label:"Password",rules:n.rules.password,clearable:"",type:"password",onKeydown:t[3]||(t[3]=me(l=>{n.registerMode?e.$refs.passwordConfirm.focus():s.submit()},["enter"]))},null,8,["modelValue","autocomplete","rules"]),r(Qe,null,{default:h(()=>[n.registerMode?(p(),S(fe,{key:0,ref:"passwordConfirm",modelValue:n.credentials.passwordConfirm,"onUpdate:modelValue":t[4]||(t[4]=l=>n.credentials.passwordConfirm=l),autocomplete:"new-password",label:"Confirm Password",rules:n.rules.passwordConfirm,clearable:"",type:"password",onKeydown:me(s.submit,["enter"])},null,8,["modelValue","rules","onKeydown"])):N("",!0)]),_:1}),e.adminFlags.registration?(p(),S(Ao,{key:0,modelValue:n.registerMode,"onUpdate:modelValue":t[5]||(t[5]=l=>n.registerMode=l),label:"Register"},{default:h(()=>[T(" Register ")]),_:1},8,["modelValue"])):N("",!0),r(i,{verb:n.registerMode?"Register":"Login",table:"",disabled:!n.submitButtonEnabled,onSubmit:s.submit,onCancel:t[6]||(t[6]=l=>n.showDialog=!1)},null,8,["verb","disabled","onSubmit"])]),_:1},512)]),_:1},8,["modelValue"])}const Oo=M(No,[["render",$o],["__scopeId","data-v-ef06f84f"]]),Mo={name:"AuthLogoutItem",data:function(){return{mdiLogout:Wt}},computed:{...z($,{username:e=>e.user.username})},methods:{...ce($,["logout"])}};function Uo(e,t,o,a,n,s){return p(),S(Ze,{onClick:e.logout},{default:h(()=>[r(Ke,null,{default:h(()=>[r(U,null,{default:h(()=>[T(P(e.mdiLogout),1)]),_:1}),T("Logout "+P(e.username),1)]),_:1})]),_:1},8,["onClick"])}const Fo=M(Mo,[["render",Uo]]),Ho={name:"AuthMenu",components:{ChangePasswordDialog:gt,AuthLoginDialog:Oo,AuthLogoutItem:Fo},computed:{...z($,{user:e=>e.user})},methods:{...ce($,["logout"])}};function zo(e,t,o,a,n,s){const i=J("AuthLogoutItem"),l=gt,k=J("AuthLoginDialog");return p(),q(Ve,null,[e.user?(p(),S(i,{key:0})):N("",!0),e.user?(p(),S(l,{key:1,user:e.user},null,8,["user"])):(p(),S(k,{key:2}))],64)}const pt=M(Ho,[["render",zo]]),Me=Je(et(()=>dt(()=>import("./admin-drawer-panel-CGj6J0rX.js").then(e=>e.dx),__vite__mapDeps([0,1])))),Wo={name:"SettingsCommonPanel",components:{AuthMenu:pt,AdminMenu:Me},props:{adminMenu:{type:Boolean,default:!0}},data(){return{AdminMenu:Me}},computed:{...ue($,["isUserAdmin"])}},jo={id:"commonPanel"};function Go(e,t,o,a,n,s){const i=pt;return p(),q("div",jo,[r(i),e.isUserAdmin?(p(),S(pe,{key:0})):N("",!0),e.isUserAdmin?(p(),S(Be(n.AdminMenu),{key:1,menu:o.adminMenu},null,8,["menu"])):N("",!0)])}const Yo=M(Wo,[["render",Go],["__scopeId","data-v-a21632a4"]]),Xo=e=>{const t=e.pk,o=ot();return e={...e,...o},delete e.pk,De.get(`c/${t}`,{params:e})},qo=()=>{const e=ot();return De.get("c/settings",{params:e})},Ko=e=>De.put("c/settings",e),In=({pk:e,mtime:t})=>`${nt(e)}/download/comic-${e}.cbz?mtime=${t}`,Ln=({pk:e,page:t,mtime:o})=>`${nt(e)}/${t}/page.jpg?mtime=${o}`,Ue=({pk:e,page:t,mtime:o})=>`${tt(e)}/${t}/page.jpg?mtime=${o}`,Zo=({pk:e,mtime:t})=>`/c/${e}/book.pdf?mtime=${t}`,ve={getPdfBookSource:Zo,getReaderBasePath:tt,getReaderInfo:Xo,getReaderSettings:qo,setReaderSettings:Ko},Qo=function(e){let t;return e?t=e.length===4&&!Number.isNaN(e)?" ("+e+")":" v"+e:t="",t},Jo=function({issueNumber:e,issueSuffix:t},o){let a;try{e==null&&!t&&(e=0);const n=Number.parseFloat(e),s=Math.floor(n);o===void 0&&(o=0),n===s?a=s.toString():(a=n.toString(),o+=a.split(".")[1].length+1),a=a.padStart(o,"0")}catch{a=""}return t&&(a+=t),a},en=function({issueNumber:e,issueSuffix:t,issueCount:o},a){let n="#"+Jo({issueNumber:e,issueSuffix:t},a);return o&&(n+=` of ${o}`),n},tn=function({seriesName:e,volumeName:t,issueNumber:o,issueSuffix:a,issueCount:n},s){const i=Qo(t),l=en({issueNumber:o,issueSuffix:a,issueCount:n},s);return[e,i,l].filter(Boolean).join(" ")},_t={fitTo:"",twoPages:null,readingDirection:"",readRtlInReverse:null};Object.freeze(_t);const kt={cacheBook:!1};Object.freeze(kt);const se=new Set(["",null,void 0]);Object.freeze(se);const wt={prev:"next",next:"prev"};Object.freeze(wt);const _e={rel:"prefetch",as:"image"};Object.freeze(_e);const xe=new Set(["ttb","btt"]);Object.freeze(xe);const St=new Set(["rtl","btt"]);Object.freeze(St);const Fe=1,yt={S:"Screen",W:"Width",H:"Height",O:"Original"};Object.freeze(yt);const on=()=>Math.max(document.documentElement.clientWidth||0,window.innerWidth||0)>600?"HEIGHT":"WIDTH",He=e=>{xe.has(e.readingDirection)&&e.twoPages&&(e.twoPages=!1)},nn=jt("reader",{state:()=>({choices:{fitTo:Ae.reader.fitTo,readingDirection:Ae.reader.readingDirection,nullValues:se},readerSettings:{fitTo:on(),twoPages:!1,readingDirection:"ltr",readRtlInReverse:!1},books:{current:void 0,prev:!1,next:!1},arcs:[],arc:{},page:void 0,routes:{prev:!1,next:!1,books:{prev:!1,next:!1}},bookChange:void 0,reactWithScroll:!1,clientSettings:{cacheBook:!1,scale:Fe}}),getters:{groupBooks(e){const t=[];return e.books.prev[0]&&t.push[e.books.prev[0]],t.push[e.books.current],e.books.next[0]&&t.push[e.books.next[0]],t},activeSettings(e){return e.getSettings(e.books.current)||{}},activeTitle(e){var a;const t=e.books.current;let o;return((a=e.arcs[0])==null?void 0:a.group)==="f"&&(o=t==null?void 0:t.filename),o||(o=t?tn(t):""),o},routeParams(e){return{pk:+e.books.current.pk,page:+e.page}},isVertical(e){return xe.has(e.activeSettings.readingDirection)},isPDF(e){var t,o;return((o=(t=e.books)==null?void 0:t.current)==null?void 0:o.fileType)=="PDF"},cacheBook(e){return e.clientSettings.cacheBook&&!(this.isPDF&&this.isVertical)},isPagesNotRoutes(e){return e.isVertical||this.cacheBook},isReadInReverse(e){return St.has(e.activeSettings.readingDirection)},isBTT(e){return e.activeSettings.readingDirection==="btt"},isFirstPage(e){return e.page===0},isLastPage(e){const t=e.books.current?e.books.current.maxPage:0,o=e.activeSettings.twoPages?1:0,a=t-o;return this.page>=a}},actions:{setReadRTLInReverse(e){return this.readerSettings.readRtlInReverse&&e.readingDirection==="rtl"?{...e,readingDirection:"ltr"}:e},getSettings(e){const t={...se};let o=e?e.settings:{};o=this.setReadRTLInReverse(o);const a=[this.readerSettings,o];for(const n of a)for(const[s,i]of Object.entries(n))se.has(i)||(t[s]=i);return He(t),t},bookChangeLocation(e){let t;return this.isBTT?t=e==="next"?"left":"right":t=e==="next"?"right":"left",t},bookChangeCursorClass(e){let t;return this.isReadInReverse?t=e==="next"?"up":"down":t=e==="next"?"down":"up",t+"Cursor"},bookChangeShow(e){return e==="prev"?this.books.prev&&this.isFirstPage:this.books.next&&this.isLastPage},bookChangeIcon(e){let t=e==="next";return this.isBTT&&(t=!t),t?Gt:Yt},isCoverPage(e,t){return e.readLtr!==!1&&t===0||e.readLtr&&t===e.maxPage},_getRouteParams(e,t,o){const a=o==="prev"?-1:1;let n=1;this.getSettings(e).twoPages&&!this.isCoverPage(e,+t+a)&&(n=2),n=n*a;const i=+t+n;let l=!1;return i>=0&&i<=e.maxPage&&(l={pk:e.pk,page:i}),l},fitToClass(e){const t=this.getSettings(e),o={};let a;if(this.clientSettings.scale>Fe?a="Orig":a=yt[t.fitTo],a){let n="fitTo";n+=io(a),this.isVertical?n+="Vertical":t.twoPages&&(n+="Two"),o[n]=!0}return o},_updateSettings(e,t){t?(this.books.current.settings={...this.books.current.settings,...e},He(this.books.current.settings)):this.readerSettings={...this.readerSettings,...e}},_getBookRoutePage(e,t){let o=0;if(t&&e.readLtr!==!1||!t&&e.readLtr===!1){const n=this.getSettings(e).twoPages?-1:0;o=e.maxPage+n}return o},_getBookRoute(e,t){if(!e)return!1;const o=this._getBookRoutePage(e,t);return{pk:e.pk,page:o}},_getBookRoutes(e,t){return{prev:this._getBookRoute(e,!0),next:this._getBookRoute(t,!1)}},async setRoutesAndBookmarkPage(e){const t=this.books.current;this.$patch(o=>{o.routes.prev=this._getRouteParams(t,e,"prev"),o.routes.next=this._getRouteParams(t,e,"next")}),await this._setBookmarkPage(e).then(()=>(this.bookChange=void 0,!0))},setActivePage(e,t=!0){if(e<0)return console.warn("Page out of bounds. Redirecting to 0."),this.routeToPage(0);if(e>this.books.current.maxPage)return console.warn(`Page out of bounds. Redirecting to ${this.books.current.maxPage}.`),this.routeToPage(this.books.current.maxPage);if(this.reactWithScroll=!!t,this.page=+e,this.setRoutesAndBookmarkPage(e),this.isPagesNotRoutes){const o={params:{pk:this.books.current.pk,page:e}},{href:a}=he.resolve(o);window.history.pushState({},void 0,a)}else window.scrollTo(0,0)},async loadReaderSettings(){return ve.getReaderSettings().then(e=>{const t=e.data;return this._updateSettings(t,!1),!0}).catch(console.error)},async loadBooks(e){await ve.getReaderInfo(e).then(t=>{const o=t.data,a=[o.books.prevBook,o.books.current,o.books.nextBook];for(const s of a)s&&!s.settings&&(s.settings={});const n=this._getBookRoutes(o.books.prevBook,o.books.nextBook);return this.$patch(s=>{s.books.current=o.books.current,s.books.prev=o.books.prevBook,s.books.next=o.books.nextBook,s.arcs=o.arcs,s.arc=o.arc,s.routes.prev=this._getRouteParams(s.books.current,e.page,"prev"),s.routes.next=this._getRouteParams(s.books.current,e.page,"next"),s.routes.books=n}),!0}).catch(t=>{console.debug(t);const o=no().page,a=o&&o.routes?o.routes.last:{name:"home"};return he.push(a)})},async _setBookmarkPage(e){const t={group:"c",pk:this.books.current.pk};e=Math.max(Math.min(this.books.current.maxPage,e),0);const o={page:e};await Ne.setGroupBookmarks(t,o)},async setSettingsLocal(e){this._updateSettings(e,!0),await Ne.setGroupBookmarks({group:"c",pk:+this.books.current.pk},this.books.current.settings)},setSettingsClient(e){this.clientSettings={...this.clientSettings,...e}},async clearSettingsLocal(){await this.setSettingsLocal(_t),this.setSettingsClient(kt)},async setSettingsGlobal(e){this._updateSettings(e,!1),await ve.setReaderSettings(this.readerSettings),await this.clearSettingsLocal()},setBookChangeFlag(e){e=this.normalizeDirection(e),this.bookChange=this.routes.books[e]?e:void 0},normalizeDirection(e){return this.isReadInReverse?wt[e]:e},_validateRoute(e,t){if(t||(t=this.books.current),!t)return{};const o=t.maxPage??0;return e.page>o?(e.page=o,console.warn("Tried to navigate past the end of the book.")):e.page<0&&(e.page=0,console.warn("Tried to navigate before the beginning of the book.")),e},_routeTo(e,t){if(e=this._validateRoute(e,t),this.isPagesNotRoutes&&+e.pk===this.books.current.pk)this.setActivePage(+e.page,!0);else{const o={name:"reader",params:e};he.push(o).catch(console.debug)}},routeToDirectionOne(e){e=this.normalizeDirection(e);const t=e==="prev"?-1:1,o=this.page+=t;if(o<0||o>this.books.current.maxPage)return;const a={pk:this.books.current.pk,page:o};this._routeTo(a)},routeToDirection(e){if(e=this.normalizeDirection(e),this.routes[e]){const t=this.routes[e];this._routeTo(t)}else this.routes.books[e]?this.bookChange===e?this._routeTo(this.routes.books[e],this.books[e]):this.setBookChangeFlag(e):console.debug("No route to direction",e)},routeToPage(e){const t={pk:this.books.current.pk,page:e};this._routeTo(t)},routeToBook(e){this._routeTo(this.routes.books[e],this.books[e])},_prefetchSrc(e,t,o=!1,a=!1){if(!e)return!1;const n=o?this.books[t]:this.books.current;if(!n)return!1;let s=e.page;if(a){if(!this.getSettings(n).twoPages)return!1;s+=1}if(s>n.maxPage)return!1;const i={pk:e.pk,page:s,mtime:n.mtime};return Ue(i)},prefetchLinks(e,t,o=!1){if(!o&&this.cacheBook)return{};const a=[this._prefetchSrc(e,t,o,!1),this._prefetchSrc(e,t,o,!0)],n=[];for(const s of a)s&&n.push({..._e,href:s});return{link:n}},prefetchBook(e){if(!this.cacheBook||e.fileType=="PDF")return{};const t=e.pk,o=[];for(let a=0;a<=e.maxPage;a++){const n={pk:t,page:a,mtime:e.mtime},s=Ue(n);s&&o.push({..._e,href:s})}return{link:o}},toRoute(e){return e?{params:e}:{}},linkLabel(e,t){return`${e==="prev"?"Previous":"Next"} ${t}`}}});function sn(e){let{rootEl:t,isSticky:o,layoutItemStyles:a}=e;const n=H(!1),s=H(0),i=_(()=>{const v=typeof n.value=="boolean"?"top":n.value;return[o.value?{top:"auto",bottom:"auto",height:void 0}:void 0,n.value?{[v]:X(s.value)}:{top:a.value.top}]});st(()=>{K(o,v=>{v?window.addEventListener("scroll",k,{passive:!0}):window.removeEventListener("scroll",k)},{immediate:!0})}),at(()=>{window.removeEventListener("scroll",k)});let l=0;function k(){const v=l>window.scrollY?"up":"down",u=t.value.getBoundingClientRect(),g=parseFloat(a.value.top??0),m=window.scrollY-Math.max(0,s.value-g),b=u.height+Math.max(s.value,g)-window.scrollY-window.innerHeight,C=parseFloat(getComputedStyle(t.value).getPropertyValue("--v-body-scroll-y"))||0;u.height<window.innerHeight-g?(n.value="top",s.value=g):v==="up"&&n.value==="bottom"||v==="down"&&n.value==="top"?(s.value=window.scrollY+u.top-C,n.value=!0):v==="down"&&b<=0?(s.value=0,n.value="bottom"):v==="up"&&m<=0&&(C?n.value!=="top"&&(s.value=-m+C+g,n.value="top"):(s.value=u.top+m,n.value="top")),l=window.scrollY}return{isStuck:n,stickyStyles:i}}const an=100,rn=20;function ze(e){return(e<0?-1:1)*Math.sqrt(Math.abs(e))*1.41421356237}function We(e){if(e.length<2)return 0;if(e.length===2)return e[1].t===e[0].t?0:(e[1].d-e[0].d)/(e[1].t-e[0].t);let t=0;for(let o=e.length-1;o>0;o--){if(e[o].t===e[o-1].t)continue;const a=ze(t),n=(e[o].d-e[o-1].d)/(e[o].t-e[o-1].t);t+=(n-a)*Math.abs(n),o===e.length-1&&(t*=.5)}return ze(t)*1e3}function ln(){const e={};function t(n){Array.from(n.changedTouches).forEach(s=>{(e[s.identifier]??(e[s.identifier]=new Xt(rn))).push([n.timeStamp,s])})}function o(n){Array.from(n.changedTouches).forEach(s=>{delete e[s.identifier]})}function a(n){var v;const s=(v=e[n])==null?void 0:v.values().reverse();if(!s)throw new Error(`No samples for touch id ${n}`);const i=s[0],l=[],k=[];for(const u of s){if(i[0]-u[0]>an)break;l.push({t:u[0],d:u[1].clientX}),k.push({t:u[0],d:u[1].clientY})}return{x:We(l),y:We(k),get direction(){const{x:u,y:g}=this,[m,b]=[Math.abs(u),Math.abs(g)];return m>b&&u>=0?"right":m>b&&u<=0?"left":b>m&&g>=0?"down":b>m&&g<=0?"up":un()}}}return{addMovement:t,endTouch:o,getVelocity:a}}function un(){throw new Error}function cn(e){let{isActive:t,isTemporary:o,width:a,touchless:n,position:s}=e;st(()=>{window.addEventListener("touchstart",R,{passive:!0}),window.addEventListener("touchmove",V,{passive:!1}),window.addEventListener("touchend",B,{passive:!0})}),at(()=>{window.removeEventListener("touchstart",R),window.removeEventListener("touchmove",V),window.removeEventListener("touchend",B)});const i=_(()=>["left","right"].includes(s.value)),{addMovement:l,endTouch:k,getVelocity:v}=ln();let u=!1;const g=H(!1),m=H(0),b=H(0);let C;function y(d,c){return(s.value==="left"?d:s.value==="right"?document.documentElement.clientWidth-d:s.value==="top"?d:s.value==="bottom"?document.documentElement.clientHeight-d:Y())-(c?a.value:0)}function x(d){let c=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;const f=s.value==="left"?(d-b.value)/a.value:s.value==="right"?(document.documentElement.clientWidth-d-b.value)/a.value:s.value==="top"?(d-b.value)/a.value:s.value==="bottom"?(document.documentElement.clientHeight-d-b.value)/a.value:Y();return c?Math.max(0,Math.min(1,f)):f}function R(d){if(n.value)return;const c=d.changedTouches[0].clientX,f=d.changedTouches[0].clientY,w=25,D=s.value==="left"?c<w:s.value==="right"?c>document.documentElement.clientWidth-w:s.value==="top"?f<w:s.value==="bottom"?f>document.documentElement.clientHeight-w:Y(),I=t.value&&(s.value==="left"?c<a.value:s.value==="right"?c>document.documentElement.clientWidth-a.value:s.value==="top"?f<a.value:s.value==="bottom"?f>document.documentElement.clientHeight-a.value:Y());(D||I||t.value&&o.value)&&(u=!0,C=[c,f],b.value=y(i.value?c:f,t.value),m.value=x(i.value?c:f),k(d),l(d))}function V(d){const c=d.changedTouches[0].clientX,f=d.changedTouches[0].clientY;if(u){if(!d.cancelable){u=!1;return}const D=Math.abs(c-C[0]),I=Math.abs(f-C[1]);(i.value?D>I&&D>3:I>D&&I>3)?(g.value=!0,u=!1):(i.value?I:D)>3&&(u=!1)}if(!g.value)return;d.preventDefault(),l(d);const w=x(i.value?c:f,!1);m.value=Math.max(0,Math.min(1,w)),w>1?b.value=y(i.value?c:f,!0):w<0&&(b.value=y(i.value?c:f,!1))}function B(d){if(u=!1,!g.value)return;l(d),g.value=!1;const c=v(d.changedTouches[0].identifier),f=Math.abs(c.x),w=Math.abs(c.y);(i.value?f>w&&f>400:w>f&&w>3)?t.value=c.direction===({left:"right",right:"left",top:"down",bottom:"up"}[s.value]||Y()):t.value=m.value>.5}const E=_(()=>g.value?{transform:s.value==="left"?`translateX(calc(-100% + ${m.value*a.value}px))`:s.value==="right"?`translateX(calc(100% - ${m.value*a.value}px))`:s.value==="top"?`translateY(calc(-100% + ${m.value*a.value}px))`:s.value==="bottom"?`translateY(calc(100% - ${m.value*a.value}px))`:Y(),transition:"none"}:void 0);return{isDragging:g,dragProgress:m,dragStyles:E}}function Y(){throw new Error}const dn=["start","end","left","right","top","bottom"],mn=ee({color:String,disableResizeWatcher:Boolean,disableRouteWatcher:Boolean,expandOnHover:Boolean,floating:Boolean,modelValue:{type:Boolean,default:null},permanent:Boolean,rail:{type:Boolean,default:null},railWidth:{type:[Number,String],default:56},scrim:{type:[Boolean,String],default:!0},image:String,temporary:Boolean,touchless:Boolean,width:{type:[Number,String],default:256},location:{type:String,default:"start",validator:e=>dn.includes(e)},sticky:Boolean,...ke(),...ie(),...so(),...we(),...ut(),...Se(),...le({tag:"nav"}),...ye()},"VNavigationDrawer"),gn=te()({name:"VNavigationDrawer",props:mn(),emits:{"update:modelValue":e=>!0,"update:rail":e=>!0},setup(e,t){let{attrs:o,emit:a,slots:n}=t;const{isRtl:s}=rt(),{themeClasses:i}=Pe(e),{borderClasses:l}=Te(e),{backgroundColorClasses:k,backgroundColorStyles:v}=ae(Q(e,"color")),{elevationClasses:u}=Ce(e),{displayClasses:g,mobile:m}=ao(e),{roundedClasses:b}=Re(e),C=qt(),y=be(e,"modelValue",null,L=>!!L),{ssrBootStyles:x}=Kt(),{scopeId:R}=lo(),V=qe(),B=H(!1),E=_(()=>e.rail&&e.expandOnHover&&B.value?Number(e.width):Number(e.rail?e.railWidth:e.width)),d=_(()=>Zt(e.location,s.value)),c=_(()=>!e.permanent&&(m.value||e.temporary)),f=_(()=>e.sticky&&!c.value&&d.value!=="bottom");ge(()=>e.expandOnHover&&e.rail!=null,()=>{K(B,L=>a("update:rail",!L))}),ge(()=>!e.disableResizeWatcher,()=>{K(c,L=>!e.permanent&&eo(()=>y.value=!L))}),ge(()=>!e.disableRouteWatcher&&!!C,()=>{K(C.currentRoute,()=>c.value&&(y.value=!1))}),K(()=>e.permanent,L=>{L&&(y.value=!0)}),Qt(()=>{e.modelValue!=null||c.value||(y.value=e.permanent||!m.value)});const{isDragging:w,dragProgress:D,dragStyles:I}=cn({isActive:y,isTemporary:c,width:E,touchless:Q(e,"touchless"),position:d}),F=_(()=>{const L=c.value?0:e.rail&&e.expandOnHover?Number(e.railWidth):E.value;return w.value?L*D.value:L}),{layoutItemStyles:j,layoutItemScrimStyles:O}=ct({id:e.name,order:_(()=>parseInt(e.order,10)),position:d,layoutSize:F,elementSize:E,active:_(()=>y.value||w.value),disableTransitions:_(()=>w.value),absolute:_(()=>e.absolute||f.value&&typeof ne.value!="string")}),{isStuck:ne,stickyStyles:de}=sn({rootEl:V,isSticky:f,layoutItemStyles:j}),G=ae(_(()=>typeof e.scrim=="string"?e.scrim:null)),Pt=_(()=>({...w.value?{opacity:D.value*.2,transition:"none"}:void 0,...O.value}));it({VList:{bgColor:"transparent"}});function Tt(){B.value=!0}function Ct(){B.value=!1}return oe(()=>{const L=n.image||e.image;return r(Ve,null,[r(e.tag,W({ref:V,onMouseenter:Tt,onMouseleave:Ct,class:["v-navigation-drawer",`v-navigation-drawer--${d.value}`,{"v-navigation-drawer--expand-on-hover":e.expandOnHover,"v-navigation-drawer--floating":e.floating,"v-navigation-drawer--is-hovering":B.value,"v-navigation-drawer--rail":e.rail,"v-navigation-drawer--temporary":c.value,"v-navigation-drawer--active":y.value,"v-navigation-drawer--sticky":f.value},i.value,k.value,l.value,g.value,u.value,b.value,e.class],style:[v.value,j.value,I.value,x.value,de.value,e.style]},R,o),{default:()=>{var Ee,Ie,Le;return[L&&r("div",{key:"image",class:"v-navigation-drawer__img"},[n.image?r(Z,{key:"image-defaults",disabled:!e.image,defaults:{VImg:{alt:"",cover:!0,height:"inherit",src:e.image}}},n.image):r(lt,{key:"image-img",alt:"",cover:!0,height:"inherit",src:e.image},null)]),n.prepend&&r("div",{class:"v-navigation-drawer__prepend"},[(Ee=n.prepend)==null?void 0:Ee.call(n)]),r("div",{class:"v-navigation-drawer__content"},[(Ie=n.default)==null?void 0:Ie.call(n)]),n.append&&r("div",{class:"v-navigation-drawer__append"},[(Le=n.append)==null?void 0:Le.call(n)])]}}),r(Jt,{name:"fade-transition"},{default:()=>[c.value&&(w.value||y.value)&&!!e.scrim&&r("div",W({class:["v-navigation-drawer__scrim",G.backgroundColorClasses.value],style:[Pt.value,G.backgroundColorStyles.value],onClick:()=>y.value=!1},R),null)]})])}),{isStuck:ne}}}),hn={name:"SettingsDrawer",components:{SettingsCommonPanel:Yo,SettingsFooter:bt,VersionFooter:vt},props:{title:{type:String,required:!0},panel:{type:Object,required:!0},admin:{type:Boolean,default:!1}},computed:{...ue($,["isCodexViewable"]),...to(re,["isSettingsDrawerOpen"]),...z(nn,{invisibleHack:e=>e.bookChange==="next"}),adminAndNotSmall(){return this.admin&&!this.$vuetify.display.smAndDown}},mounted(){this.isSettingsDrawerOpen=this.adminAndNotSmall}},fn={class:"settingsDrawerContainer"},vn={id:"topBlock"},bn={class:"settingsHeader"},pn={id:"footerGroup"};function _n(e,t,o,a,n,s){const i=J("SettingsCommonPanel"),l=bt,k=vt;return p(),S(gn,W(e.$attrs,{modelValue:e.isSettingsDrawerOpen,"onUpdate:modelValue":t[0]||(t[0]=v=>e.isSettingsDrawerOpen=v),"disable-resize-watcher":"","disable-route-watcher":"",location:"right",scrim:!s.adminAndNotSmall,temporary:!s.adminAndNotSmall,touchless:""}),{append:h(()=>[r(k)]),default:h(()=>[A("div",fn,[A("div",vn,[A("header",bn,[A("h3",null,P(o.title),1)]),e.isCodexViewable?(p(),S(Be(o.panel),{key:0})):N("",!0),e.isCodexViewable?(p(),S(pe,{key:1})):N("",!0),r(i,{"admin-menu":!o.admin},null,8,["admin-menu"]),r(pe)]),A("div",pn,[r(l)])])]),_:1},16,["modelValue","scrim","temporary"])}const An=M(hn,[["render",_n],["__scopeId","data-v-a38da0ea"]]),je=Je(et(()=>dt(()=>import("./admin-drawer-panel-CGj6J0rX.js").then(e=>e.dy),__vite__mapDeps([0,1])))),kn={name:"SettingsDrawerButton",components:{AdminSettingsButtonProgress:je},data(){return{mdiMenu:oo,AdminSettingsButtonProgress:je}},computed:{...z($,["isUserAdmin"])}};function wn(e,t,o,a,n,s){return p(),S(Xe,W(e.$attrs,{icon:"",title:"Settings"}),{default:h(()=>[r(U,null,{default:h(()=>[T(P(n.mdiMenu),1)]),_:1}),e.isUserAdmin?(p(),S(Be(n.AdminSettingsButtonProgress),{key:0})):N("",!0)]),_:1},16)}const Nn=M(kn,[["render",wn]]),Sn=ee({text:String,...ie(),...le()},"VToolbarTitle"),yn=te()({name:"VToolbarTitle",props:Sn(),setup(e,t){let{slots:o}=t;return oe(()=>{const a=!!(o.default||o.text||e.text);return r(e.tag,{class:["v-toolbar-title",e.class],style:e.style},{default:()=>{var n;return[a&&r("div",{class:"v-toolbar-title__placeholder"},[o.text?o.text():e.text,(n=o.default)==null?void 0:n.call(o)])]}})}),{}}}),Pn=[null,"prominent","default","comfortable","compact"],Tn=ee({absolute:Boolean,collapse:Boolean,color:String,density:{type:String,default:"default",validator:e=>Pn.includes(e)},extended:Boolean,extensionHeight:{type:[Number,String],default:48},flat:Boolean,floating:Boolean,height:{type:[Number,String],default:64},image:String,title:String,...ke(),...ie(),...we(),...Se(),...le({tag:"header"}),...ye()},"VToolbar"),$n=te()({name:"VToolbar",props:Tn(),setup(e,t){var b;let{slots:o}=t;const{backgroundColorClasses:a,backgroundColorStyles:n}=ae(Q(e,"color")),{borderClasses:s}=Te(e),{elevationClasses:i}=Ce(e),{roundedClasses:l}=Re(e),{themeClasses:k}=Pe(e),{rtlClasses:v}=rt(),u=H(!!(e.extended||(b=o.extension)!=null&&b.call(o))),g=_(()=>parseInt(Number(e.height)+(e.density==="prominent"?Number(e.height):0)-(e.density==="comfortable"?8:0)-(e.density==="compact"?16:0),10)),m=_(()=>u.value?parseInt(Number(e.extensionHeight)+(e.density==="prominent"?Number(e.extensionHeight):0)-(e.density==="comfortable"?4:0)-(e.density==="compact"?8:0),10):0);return it({VBtn:{variant:"text"}}),oe(()=>{var R;const C=!!(e.title||o.title),y=!!(o.image||e.image),x=(R=o.extension)==null?void 0:R.call(o);return u.value=!!(e.extended||x),r(e.tag,{class:["v-toolbar",{"v-toolbar--absolute":e.absolute,"v-toolbar--collapse":e.collapse,"v-toolbar--flat":e.flat,"v-toolbar--floating":e.floating,[`v-toolbar--density-${e.density}`]:!0},a.value,s.value,i.value,l.value,k.value,v.value,e.class],style:[n.value,e.style]},{default:()=>[y&&r("div",{key:"image",class:"v-toolbar__image"},[o.image?r(Z,{key:"image-defaults",disabled:!e.image,defaults:{VImg:{cover:!0,src:e.image}}},o.image):r(lt,{key:"image-img",cover:!0,src:e.image},null)]),r(Z,{defaults:{VTabs:{height:X(g.value)}}},{default:()=>{var V,B,E;return[r("div",{class:"v-toolbar__content",style:{height:X(g.value)}},[o.prepend&&r("div",{class:"v-toolbar__prepend"},[(V=o.prepend)==null?void 0:V.call(o)]),C&&r(yn,{key:"title",text:e.title},{text:o.title}),(B=o.default)==null?void 0:B.call(o),o.append&&r("div",{class:"v-toolbar__append"},[(E=o.append)==null?void 0:E.call(o)])])]}}),r(Z,{defaults:{VTabs:{height:X(m.value)}}},{default:()=>[r(Qe,null,{default:()=>[u.value&&r("div",{class:"v-toolbar__extension",style:{height:X(m.value)}},[x])]})]})]})}),{contentHeight:g,extensionHeight:m}}});export{Nn as S,yn as V,An as _,$n as a,en as b,Fe as c,Ue as d,gn as e,Qo as f,tn as g,In as h,Ln as i,Jo as j,nn as u};
7
+ import{x as ee,bY as ke,E as ie,bL as we,bK as Se,aq as le,F as ye,G as te,I as Pe,at as ae,au as Q,bZ as Te,bP as Ce,bS as Re,s as H,y as Rt,h as _,K as oe,L as r,z as X,a$ as Ge,b_ as Vt,M as z,k as re,ax as ue,m as $,N as ce,_ as M,R as p,O as S,P as h,aD as A,ae as P,ay as q,aB as N,b$ as Ye,c0 as Bt,c1 as Dt,aa as T,ad as U,be as xt,bh as Et,c2 as It,Q as J,am as W,ak as Xe,c3 as Lt,ar as be,c4 as At,r as qe,C as Nt,c5 as $t,al as Ve,c6 as Z,bQ as Ot,c7 as Mt,bT as Ut,c8 as Ft,af as Ke,b1 as Ht,b2 as zt,ag as Ze,aX as me,c9 as Qe,ca as Wt,aC as Je,bn as et,aA as Be,aU as pe,bU as tt,cb as ot,H as De,cc as nt,l as jt,cd as Gt,ce as Yt,B as st,a as K,o as at,cf as Xt,J as rt,cg as qt,bI as Kt,ch as Zt,ci as ge,cj as Qt,av as it,bV as lt,ck as Jt,n as eo,a9 as to,bi as oo}from"./admin-drawer-panel-BaTVOySr.js";import{m as ut,b as ct,_ as dt,C as Ae,r as he,u as no,A as Ne,c as so,d as ao}from"./main-BZTHWXBZ.js";import{c as ro,t as io}from"./index-DUjeNg4x.js";import{V as mt,u as lo}from"./confirm-footer-DtV70TTy.js";import{_ as gt}from"./change-password-dialog-BB2k5ybG.js";import{_ as ht,a as fe,b as uo}from"./VSlideGroup-j-MAY_Bg.js";import{a as co,c as mo,u as go,V as $e,d as Oe}from"./VSelectionControl-Cw_49nCw.js";const ho=ee({app:Boolean,color:String,height:{type:[Number,String],default:"auto"},...ke(),...ie(),...we(),...ut(),...Se(),...le({tag:"footer"}),...ye()},"VFooter"),ft=te()({name:"VFooter",props:ho(),setup(e,t){let{slots:o}=t;const{themeClasses:a}=Pe(e),{backgroundColorClasses:n,backgroundColorStyles:s}=ae(Q(e,"color")),{borderClasses:i}=Te(e),{elevationClasses:l}=Ce(e),{roundedClasses:k}=Re(e),v=H(32),{resizeRef:u}=Rt(b=>{b.length&&(v.value=b[0].target.clientHeight)}),g=_(()=>e.height==="auto"?v.value:parseInt(e.height,10)),{layoutItemStyles:m}=ct({id:e.name,order:_(()=>parseInt(e.order,10)),position:_(()=>"bottom"),layoutSize:g,elementSize:_(()=>e.height==="auto"?void 0:g.value),active:_(()=>e.app),absolute:Q(e,"absolute")});return oe(()=>r(e.tag,{ref:u,class:["v-footer",a.value,n.value,i.value,l.value,k.value,e.class],style:[s.value,e.app?m.value:{height:X(e.height)},e.style]},o)),{}}}),fo={name:"VersionFooter",data(){return{mdiOpenInNew:Ge,mdiContentCopy:Vt}},computed:{...z(re,{versions:e=>e.versions}),...ue($,["isUserAdmin"]),outdated:function(){return this.isUserAdmin&&this.semverGreaterThan(this.versions.latest>this.versions.installed)},versionTitle:function(){return this.outdated?`v${this.versions.latest} is available`:"up to date"}},created(){this.loadVersions()},methods:{...ce(re,["loadVersions"]),semverGreaterThan(e,t){try{if(!e||!t)return!1;const o=e.split("."),a=t.split(".");for(const[n,s]of o.entries())if(+s>+a[n])return!0}catch(o){console.debug("compare codex versions",e,">",t,o)}return!1}}},vo={id:"version"},bo={key:0,id:"latest"};function po(e,t,o,a,n,s){return p(),S(ft,{id:"version-footer",title:s.versionTitle},{default:h(()=>[A("div",vo,"codex v"+P(e.versions.installed),1),s.outdated?(p(),q("div",bo," codex v"+P(e.versions.latest)+" is available ",1)):N("",!0)]),_:1},8,["title"])}const vt=M(fo,[["render",po],["__scopeId","data-v-cd481730"]]),_o={name:"OPDSUrl",props:{title:{type:String,required:!0},subtitle:{type:String,default:void 0},url:{type:String,required:!0}},data(){return{mdiRss:Ye,showTooltip:{show:!1}}},computed:{clipBoardEnabled(){return location.protocol=="https:"},clipBoardIcon(){return this.showTooltip.show?Bt:Dt},tooltip(){return this.clipBoardEnabled}},methods:{onClickURL(){this.clipBoardEnabled&&ro(this.url,this.showTooltip)}}},ko=["title"],wo={key:0},So={class:"copied"},yo={key:0,class:"subtitle"},Po={class:"opdsUrl"};function To(e,t,o,a,n,s){return p(),q("div",{class:"opdsVersion",title:s.tooltip,onClick:t[0]||(t[0]=(...i)=>s.onClickURL&&s.onClickURL(...i))},[A("h3",null,[T(P(o.title)+" ",1),s.clipBoardEnabled?(p(),q("span",wo,[r(U,{class:"clipBoardIcon",size:"small"},{default:h(()=>[T(P(s.clipBoardIcon),1)]),_:1}),r(It,null,{default:h(()=>[xt(A("span",So,"Copied",512),[[Et,n.showTooltip.show]])]),_:1})])):N("",!0)]),o.subtitle?(p(),q("div",yo,P(o.subtitle),1)):N("",!0),A("div",Po,P(o.url),1)],8,ko)}const Co=M(_o,[["render",To],["__scopeId","data-v-68a52a66"]]),Ro={name:"OPDSDialog",components:{OPDSUrl:Co},data(){return{mdiRss:Ye,opdsV1URL:window.origin+window.CODEX.OPDS_V1_PATH,opdsV2URL:window.origin+window.CODEX.OPDS_V2_PATH}}},Vo={id:"opds"};function Bo(e,t,o,a,n,s){const i=J("OPDSUrl");return p(),S(mt,{"max-width":"30em"},{activator:h(({props:l})=>[r(Xe,W({id:"opdsButton",icon:"",size:"small",variant:"plain"},l),{default:h(()=>[r(U,null,{default:h(()=>[T(P(n.mdiRss),1)]),_:1}),T(" OPDS ")]),_:2},1040)]),default:h(()=>[A("div",Vo,[A("h2",null,[r(U,{size:"x=small",class:"inline"},{default:h(()=>[T(P(n.mdiRss),1)]),_:1}),T(" OPDS ")]),r(i,{title:"v1.2",url:n.opdsV1URL},null,8,["url"]),r(i,{title:"v2.0",url:n.opdsV2URL,subtitle:"OPDS v2 is experimental and not widely or well supported by clients"},null,8,["url"])])]),_:1})}const Do=M(Ro,[["render",Bo],["__scopeId","data-v-741734ce"]]),xo={name:"SettingsFooter",components:{OPDSDialog:Do},data(){return{mdiOpenInNew:Ge,mdiSourceRepository:Lt}},computed:{...ue($,["isCodexViewable"])}},Eo={id:"repo",href:"https://github.com/ajslater/codex",title:"Codex Source Repository",target:"_blank"};function Io(e,t,o,a,n,s){const i=J("OPDSDialog");return p(),S(ft,{id:"settingsFooter"},{default:h(()=>[e.isCodexViewable?(p(),S(i,{key:0})):N("",!0),A("a",Eo,[r(U,{id:"repoIcon",size:"x-small"},{default:h(()=>[T(P(n.mdiSourceRepository),1)]),_:1}),T(" repository"),r(U,{color:e.$vuetify.theme.current.colors.iconsInactive,size:"x-small"},{default:h(()=>[T(P(n.mdiOpenInNew),1)]),_:1},8,["color"])])]),_:1})}const bt=M(xo,[["render",Io],["__scopeId","data-v-f9eb593e"]]),Lo=ee({indeterminate:Boolean,inset:Boolean,flat:Boolean,loading:{type:[Boolean,String],default:!1},...co(),...mo()},"VSwitch"),Ao=te()({name:"VSwitch",inheritAttrs:!1,props:Lo(),emits:{"update:focused":e=>!0,"update:modelValue":e=>!0,"update:indeterminate":e=>!0},setup(e,t){let{attrs:o,slots:a}=t;const n=be(e,"indeterminate"),s=be(e,"modelValue"),{loaderClasses:i}=At(e),{isFocused:l,focus:k,blur:v}=go(e),u=qe(),g=_(()=>typeof e.loading=="string"&&e.loading!==""?e.loading:e.color),m=Nt(),b=_(()=>e.id||`switch-${m}`);function C(){n.value&&(n.value=!1)}function y(x){var R,V;x.stopPropagation(),x.preventDefault(),(V=(R=u.value)==null?void 0:R.input)==null||V.click()}return oe(()=>{const[x,R]=$t(o),V=$e.filterProps(e),B=Oe.filterProps(e);return r($e,W({class:["v-switch",{"v-switch--flat":e.flat},{"v-switch--inset":e.inset},{"v-switch--indeterminate":n.value},i.value,e.class]},x,V,{modelValue:s.value,"onUpdate:modelValue":E=>s.value=E,id:b.value,focused:l.value,style:e.style}),{...a,default:E=>{let{id:d,messagesId:c,isDisabled:f,isReadonly:w,isValid:D}=E;const I={model:s,isValid:D};return r(Oe,W({ref:u},B,{modelValue:s.value,"onUpdate:modelValue":[F=>s.value=F,C],id:d.value,"aria-describedby":c.value,type:"checkbox","aria-checked":n.value?"mixed":void 0,disabled:f.value,readonly:w.value,onFocus:k,onBlur:v},R),{...a,default:F=>{let{backgroundColorClasses:j,backgroundColorStyles:O}=F;return r("div",{class:["v-switch__track",...j.value],style:O.value,onClick:y},[a["track-true"]&&r("div",{key:"prepend",class:"v-switch__track-true"},[a["track-true"](I)]),a["track-false"]&&r("div",{key:"append",class:"v-switch__track-false"},[a["track-false"](I)])])},input:F=>{let{inputNode:j,icon:O,backgroundColorClasses:ne,backgroundColorStyles:de}=F;return r(Ve,null,[j,r("div",{class:["v-switch__thumb",{"v-switch__thumb--filled":O||e.loading},e.inset?void 0:ne.value],style:e.inset?void 0:de.value},[a.thumb?r(Z,{defaults:{VIcon:{icon:O,size:"x-small"}}},{default:()=>[a.thumb({...I,icon:O})]}):r(Ot,null,{default:()=>[e.loading?r(Mt,{name:"v-switch",active:!0,color:D.value===!1?void 0:g.value},{default:G=>a.loader?a.loader(G):r(Ut,{active:G.isActive,color:G.color,indeterminate:!0,size:"16",width:"2"},null)}):O&&r(U,{key:String(O),icon:O,size:"x-small"},null)]})])])}})}})}),{}}}),No={name:"AuthLoginDialog",components:{SubmitFooter:ht},data(){return{rules:{username:[e=>!!e||"Username is required"],password:[e=>e?this.registerMode&&e.length<this.MIN_PASSWORD_LEN?`Password must be ${this.MIN_PASSWORD_LEN} characters long`:!0:"Password is required"],passwordConfirm:[e=>e===this.credentials.password||"Passwords must match"]},formModel:{},credentials:{username:"",password:"",passwordConfirm:""},submitButtonEnabled:!1,showDialog:!1,registerMode:!1,mdiLogin:Ft}},computed:{...z(re,{formErrors:e=>e.form.errors,formSuccess:e=>e.form.success}),...z($,{adminFlags:e=>e.adminFlags,MIN_PASSWORD_LEN:e=>e.MIN_PASSWORD_LEN}),submitButtonLabel:function(){return this.registerMode?"Register":"Login"}},watch:{showDialog(e){e&&(this.loadAdminFlags(),this.$refs.form&&this.$refs.form.reset())},credentials:{handler(){const e=this.$refs.form;e?e.validate().then(({valid:t})=>this.submitButtonEnabled=t).catch(console.error):this.submitButtonEnabled=!1},deep:!0}},mounted(){window.addEventListener("keyup",this._keyListener)},beforeUnmount(){window.removeEventListener("keyup",this._keyListener)},methods:{...ce($,["loadAdminFlags","login","register"]),doAuth(e){return this[e](this.credentials).then(()=>this.showDialog=this.formErrors&&this.formErrors.length>0).catch(console.error)},submit(){this.$refs.form.validate().then(({valid:t})=>{if(!t)return;const o=this.registerMode?"register":"login";return this.doAuth(o)}).catch(console.error)},_keyListener(e){e.stopImmediatePropagation()}}};function $o(e,t,o,a,n,s){const i=ht;return p(),S(mt,{modelValue:n.showDialog,"onUpdate:modelValue":t[7]||(t[7]=l=>n.showDialog=l),origin:"center-top",transition:"slide-y-transition","max-width":"20em"},{activator:h(({props:l})=>[r(Ze,Ht(zt(l)),{default:h(()=>[r(Ke,null,{default:h(()=>[r(U,null,{default:h(()=>[T(P(n.mdiLogin),1)]),_:1}),T(" Login ")]),_:1})]),_:2},1040)]),default:h(()=>[r(uo,{id:"authDialog",ref:"form"},{default:h(()=>[r(fe,{modelValue:n.credentials.username,"onUpdate:modelValue":t[0]||(t[0]=l=>n.credentials.username=l),autocomplete:"username",label:"Username",rules:n.rules.username,clearable:"",autofocus:"",onKeydown:t[1]||(t[1]=me(l=>e.$refs.password.focus(),["enter"]))},null,8,["modelValue","rules"]),r(fe,{ref:"password",modelValue:n.credentials.password,"onUpdate:modelValue":t[2]||(t[2]=l=>n.credentials.password=l),autocomplete:n.registerMode?"new-password":"current-password",label:"Password",rules:n.rules.password,clearable:"",type:"password",onKeydown:t[3]||(t[3]=me(l=>{n.registerMode?e.$refs.passwordConfirm.focus():s.submit()},["enter"]))},null,8,["modelValue","autocomplete","rules"]),r(Qe,null,{default:h(()=>[n.registerMode?(p(),S(fe,{key:0,ref:"passwordConfirm",modelValue:n.credentials.passwordConfirm,"onUpdate:modelValue":t[4]||(t[4]=l=>n.credentials.passwordConfirm=l),autocomplete:"new-password",label:"Confirm Password",rules:n.rules.passwordConfirm,clearable:"",type:"password",onKeydown:me(s.submit,["enter"])},null,8,["modelValue","rules","onKeydown"])):N("",!0)]),_:1}),e.adminFlags.registration?(p(),S(Ao,{key:0,modelValue:n.registerMode,"onUpdate:modelValue":t[5]||(t[5]=l=>n.registerMode=l),label:"Register"},{default:h(()=>[T(" Register ")]),_:1},8,["modelValue"])):N("",!0),r(i,{verb:n.registerMode?"Register":"Login",table:"",disabled:!n.submitButtonEnabled,onSubmit:s.submit,onCancel:t[6]||(t[6]=l=>n.showDialog=!1)},null,8,["verb","disabled","onSubmit"])]),_:1},512)]),_:1},8,["modelValue"])}const Oo=M(No,[["render",$o],["__scopeId","data-v-ef06f84f"]]),Mo={name:"AuthLogoutItem",data:function(){return{mdiLogout:Wt}},computed:{...z($,{username:e=>e.user.username})},methods:{...ce($,["logout"])}};function Uo(e,t,o,a,n,s){return p(),S(Ze,{onClick:e.logout},{default:h(()=>[r(Ke,null,{default:h(()=>[r(U,null,{default:h(()=>[T(P(e.mdiLogout),1)]),_:1}),T("Logout "+P(e.username),1)]),_:1})]),_:1},8,["onClick"])}const Fo=M(Mo,[["render",Uo]]),Ho={name:"AuthMenu",components:{ChangePasswordDialog:gt,AuthLoginDialog:Oo,AuthLogoutItem:Fo},computed:{...z($,{user:e=>e.user})},methods:{...ce($,["logout"])}};function zo(e,t,o,a,n,s){const i=J("AuthLogoutItem"),l=gt,k=J("AuthLoginDialog");return p(),q(Ve,null,[e.user?(p(),S(i,{key:0})):N("",!0),e.user?(p(),S(l,{key:1,user:e.user},null,8,["user"])):(p(),S(k,{key:2}))],64)}const pt=M(Ho,[["render",zo]]),Me=Je(et(()=>dt(()=>import("./admin-drawer-panel-BaTVOySr.js").then(e=>e.dx),__vite__mapDeps([0,1])))),Wo={name:"SettingsCommonPanel",components:{AuthMenu:pt,AdminMenu:Me},props:{adminMenu:{type:Boolean,default:!0}},data(){return{AdminMenu:Me}},computed:{...ue($,["isUserAdmin"])}},jo={id:"commonPanel"};function Go(e,t,o,a,n,s){const i=pt;return p(),q("div",jo,[r(i),e.isUserAdmin?(p(),S(pe,{key:0})):N("",!0),e.isUserAdmin?(p(),S(Be(n.AdminMenu),{key:1,menu:o.adminMenu},null,8,["menu"])):N("",!0)])}const Yo=M(Wo,[["render",Go],["__scopeId","data-v-a21632a4"]]),Xo=e=>{const t=e.pk,o=ot();return e={...e,...o},delete e.pk,De.get(`c/${t}`,{params:e})},qo=()=>{const e=ot();return De.get("c/settings",{params:e})},Ko=e=>De.put("c/settings",e),In=({pk:e,mtime:t})=>`${nt(e)}/download/comic-${e}.cbz?mtime=${t}`,Ln=({pk:e,page:t,mtime:o})=>`${nt(e)}/${t}/page.jpg?mtime=${o}`,Ue=({pk:e,page:t,mtime:o})=>`${tt(e)}/${t}/page.jpg?mtime=${o}`,Zo=({pk:e,mtime:t})=>`/c/${e}/book.pdf?mtime=${t}`,ve={getPdfBookSource:Zo,getReaderBasePath:tt,getReaderInfo:Xo,getReaderSettings:qo,setReaderSettings:Ko},Qo=function(e){let t;return e?t=e.length===4&&!Number.isNaN(e)?" ("+e+")":" v"+e:t="",t},Jo=function({issueNumber:e,issueSuffix:t},o){let a;try{e==null&&!t&&(e=0);const n=Number.parseFloat(e),s=Math.floor(n);o===void 0&&(o=0),n===s?a=s.toString():(a=n.toString(),o+=a.split(".")[1].length+1),a=a.padStart(o,"0")}catch{a=""}return t&&(a+=t),a},en=function({issueNumber:e,issueSuffix:t,issueCount:o},a){let n="#"+Jo({issueNumber:e,issueSuffix:t},a);return o&&(n+=` of ${o}`),n},tn=function({seriesName:e,volumeName:t,issueNumber:o,issueSuffix:a,issueCount:n},s){const i=Qo(t),l=en({issueNumber:o,issueSuffix:a,issueCount:n},s);return[e,i,l].filter(Boolean).join(" ")},_t={fitTo:"",twoPages:null,readingDirection:"",readRtlInReverse:null};Object.freeze(_t);const kt={cacheBook:!1};Object.freeze(kt);const se=new Set(["",null,void 0]);Object.freeze(se);const wt={prev:"next",next:"prev"};Object.freeze(wt);const _e={rel:"prefetch",as:"image"};Object.freeze(_e);const xe=new Set(["ttb","btt"]);Object.freeze(xe);const St=new Set(["rtl","btt"]);Object.freeze(St);const Fe=1,yt={S:"Screen",W:"Width",H:"Height",O:"Original"};Object.freeze(yt);const on=()=>Math.max(document.documentElement.clientWidth||0,window.innerWidth||0)>600?"HEIGHT":"WIDTH",He=e=>{xe.has(e.readingDirection)&&e.twoPages&&(e.twoPages=!1)},nn=jt("reader",{state:()=>({choices:{fitTo:Ae.reader.fitTo,readingDirection:Ae.reader.readingDirection,nullValues:se},readerSettings:{fitTo:on(),twoPages:!1,readingDirection:"ltr",readRtlInReverse:!1},books:{current:void 0,prev:!1,next:!1},arcs:[],arc:{},page:void 0,routes:{prev:!1,next:!1,books:{prev:!1,next:!1}},bookChange:void 0,reactWithScroll:!1,clientSettings:{cacheBook:!1,scale:Fe}}),getters:{groupBooks(e){const t=[];return e.books.prev[0]&&t.push[e.books.prev[0]],t.push[e.books.current],e.books.next[0]&&t.push[e.books.next[0]],t},activeSettings(e){return e.getSettings(e.books.current)||{}},activeTitle(e){var a;const t=e.books.current;let o;return((a=e.arcs[0])==null?void 0:a.group)==="f"&&(o=t==null?void 0:t.filename),o||(o=t?tn(t):""),o},routeParams(e){return{pk:+e.books.current.pk,page:+e.page}},isVertical(e){return xe.has(e.activeSettings.readingDirection)},isPDF(e){var t,o;return((o=(t=e.books)==null?void 0:t.current)==null?void 0:o.fileType)=="PDF"},cacheBook(e){return e.clientSettings.cacheBook&&!(this.isPDF&&this.isVertical)},isPagesNotRoutes(e){return e.isVertical||this.cacheBook},isReadInReverse(e){return St.has(e.activeSettings.readingDirection)},isBTT(e){return e.activeSettings.readingDirection==="btt"},isFirstPage(e){return e.page===0},isLastPage(e){const t=e.books.current?e.books.current.maxPage:0,o=e.activeSettings.twoPages?1:0,a=t-o;return this.page>=a}},actions:{setReadRTLInReverse(e){return this.readerSettings.readRtlInReverse&&e.readingDirection==="rtl"?{...e,readingDirection:"ltr"}:e},getSettings(e){const t={...se};let o=e?e.settings:{};o=this.setReadRTLInReverse(o);const a=[this.readerSettings,o];for(const n of a)for(const[s,i]of Object.entries(n))se.has(i)||(t[s]=i);return He(t),t},bookChangeLocation(e){let t;return this.isBTT?t=e==="next"?"left":"right":t=e==="next"?"right":"left",t},bookChangeCursorClass(e){let t;return this.isReadInReverse?t=e==="next"?"up":"down":t=e==="next"?"down":"up",t+"Cursor"},bookChangeShow(e){return e==="prev"?this.books.prev&&this.isFirstPage:this.books.next&&this.isLastPage},bookChangeIcon(e){let t=e==="next";return this.isBTT&&(t=!t),t?Gt:Yt},isCoverPage(e,t){return e.readLtr!==!1&&t===0||e.readLtr&&t===e.maxPage},_getRouteParams(e,t,o){const a=o==="prev"?-1:1;let n=1;this.getSettings(e).twoPages&&!this.isCoverPage(e,+t+a)&&(n=2),n=n*a;const i=+t+n;let l=!1;return i>=0&&i<=e.maxPage&&(l={pk:e.pk,page:i}),l},fitToClass(e){const t=this.getSettings(e),o={};let a;if(this.clientSettings.scale>Fe?a="Orig":a=yt[t.fitTo],a){let n="fitTo";n+=io(a),this.isVertical?n+="Vertical":t.twoPages&&(n+="Two"),o[n]=!0}return o},_updateSettings(e,t){t?(this.books.current.settings={...this.books.current.settings,...e},He(this.books.current.settings)):this.readerSettings={...this.readerSettings,...e}},_getBookRoutePage(e,t){let o=0;if(t&&e.readLtr!==!1||!t&&e.readLtr===!1){const n=this.getSettings(e).twoPages?-1:0;o=e.maxPage+n}return o},_getBookRoute(e,t){if(!e)return!1;const o=this._getBookRoutePage(e,t);return{pk:e.pk,page:o}},_getBookRoutes(e,t){return{prev:this._getBookRoute(e,!0),next:this._getBookRoute(t,!1)}},async setRoutesAndBookmarkPage(e){const t=this.books.current;this.$patch(o=>{o.routes.prev=this._getRouteParams(t,e,"prev"),o.routes.next=this._getRouteParams(t,e,"next")}),await this._setBookmarkPage(e).then(()=>(this.bookChange=void 0,!0))},setActivePage(e,t=!0){if(e<0)return console.warn("Page out of bounds. Redirecting to 0."),this.routeToPage(0);if(e>this.books.current.maxPage)return console.warn(`Page out of bounds. Redirecting to ${this.books.current.maxPage}.`),this.routeToPage(this.books.current.maxPage);if(this.reactWithScroll=!!t,this.page=+e,this.setRoutesAndBookmarkPage(e),this.isPagesNotRoutes){const o={params:{pk:this.books.current.pk,page:e}},{href:a}=he.resolve(o);window.history.pushState({},void 0,a)}else window.scrollTo(0,0)},async loadReaderSettings(){return ve.getReaderSettings().then(e=>{const t=e.data;return this._updateSettings(t,!1),!0}).catch(console.error)},async loadBooks(e){await ve.getReaderInfo(e).then(t=>{const o=t.data,a=[o.books.prevBook,o.books.current,o.books.nextBook];for(const s of a)s&&!s.settings&&(s.settings={});const n=this._getBookRoutes(o.books.prevBook,o.books.nextBook);return this.$patch(s=>{s.books.current=o.books.current,s.books.prev=o.books.prevBook,s.books.next=o.books.nextBook,s.arcs=o.arcs,s.arc=o.arc,s.routes.prev=this._getRouteParams(s.books.current,e.page,"prev"),s.routes.next=this._getRouteParams(s.books.current,e.page,"next"),s.routes.books=n}),!0}).catch(t=>{console.debug(t);const o=no().page,a=o&&o.routes?o.routes.last:{name:"home"};return he.push(a)})},async _setBookmarkPage(e){const t={group:"c",pk:this.books.current.pk};e=Math.max(Math.min(this.books.current.maxPage,e),0);const o={page:e};await Ne.setGroupBookmarks(t,o)},async setSettingsLocal(e){this._updateSettings(e,!0),await Ne.setGroupBookmarks({group:"c",pk:+this.books.current.pk},this.books.current.settings)},setSettingsClient(e){this.clientSettings={...this.clientSettings,...e}},async clearSettingsLocal(){await this.setSettingsLocal(_t),this.setSettingsClient(kt)},async setSettingsGlobal(e){this._updateSettings(e,!1),await ve.setReaderSettings(this.readerSettings),await this.clearSettingsLocal()},setBookChangeFlag(e){e=this.normalizeDirection(e),this.bookChange=this.routes.books[e]?e:void 0},normalizeDirection(e){return this.isReadInReverse?wt[e]:e},_validateRoute(e,t){if(t||(t=this.books.current),!t)return{};const o=t.maxPage??0;return e.page>o?(e.page=o,console.warn("Tried to navigate past the end of the book.")):e.page<0&&(e.page=0,console.warn("Tried to navigate before the beginning of the book.")),e},_routeTo(e,t){if(e=this._validateRoute(e,t),this.isPagesNotRoutes&&+e.pk===this.books.current.pk)this.setActivePage(+e.page,!0);else{const o={name:"reader",params:e};he.push(o).catch(console.debug)}},routeToDirectionOne(e){e=this.normalizeDirection(e);const t=e==="prev"?-1:1,o=this.page+=t;if(o<0||o>this.books.current.maxPage)return;const a={pk:this.books.current.pk,page:o};this._routeTo(a)},routeToDirection(e){if(e=this.normalizeDirection(e),this.routes[e]){const t=this.routes[e];this._routeTo(t)}else this.routes.books[e]?this.bookChange===e?this._routeTo(this.routes.books[e],this.books[e]):this.setBookChangeFlag(e):console.debug("No route to direction",e)},routeToPage(e){const t={pk:this.books.current.pk,page:e};this._routeTo(t)},routeToBook(e){this._routeTo(this.routes.books[e],this.books[e])},_prefetchSrc(e,t,o=!1,a=!1){if(!e)return!1;const n=o?this.books[t]:this.books.current;if(!n)return!1;let s=e.page;if(a){if(!this.getSettings(n).twoPages)return!1;s+=1}if(s>n.maxPage)return!1;const i={pk:e.pk,page:s,mtime:n.mtime};return Ue(i)},prefetchLinks(e,t,o=!1){if(!o&&this.cacheBook)return{};const a=[this._prefetchSrc(e,t,o,!1),this._prefetchSrc(e,t,o,!0)],n=[];for(const s of a)s&&n.push({..._e,href:s});return{link:n}},prefetchBook(e){if(!this.cacheBook||e.fileType=="PDF")return{};const t=e.pk,o=[];for(let a=0;a<=e.maxPage;a++){const n={pk:t,page:a,mtime:e.mtime},s=Ue(n);s&&o.push({..._e,href:s})}return{link:o}},toRoute(e){return e?{params:e}:{}},linkLabel(e,t){return`${e==="prev"?"Previous":"Next"} ${t}`}}});function sn(e){let{rootEl:t,isSticky:o,layoutItemStyles:a}=e;const n=H(!1),s=H(0),i=_(()=>{const v=typeof n.value=="boolean"?"top":n.value;return[o.value?{top:"auto",bottom:"auto",height:void 0}:void 0,n.value?{[v]:X(s.value)}:{top:a.value.top}]});st(()=>{K(o,v=>{v?window.addEventListener("scroll",k,{passive:!0}):window.removeEventListener("scroll",k)},{immediate:!0})}),at(()=>{window.removeEventListener("scroll",k)});let l=0;function k(){const v=l>window.scrollY?"up":"down",u=t.value.getBoundingClientRect(),g=parseFloat(a.value.top??0),m=window.scrollY-Math.max(0,s.value-g),b=u.height+Math.max(s.value,g)-window.scrollY-window.innerHeight,C=parseFloat(getComputedStyle(t.value).getPropertyValue("--v-body-scroll-y"))||0;u.height<window.innerHeight-g?(n.value="top",s.value=g):v==="up"&&n.value==="bottom"||v==="down"&&n.value==="top"?(s.value=window.scrollY+u.top-C,n.value=!0):v==="down"&&b<=0?(s.value=0,n.value="bottom"):v==="up"&&m<=0&&(C?n.value!=="top"&&(s.value=-m+C+g,n.value="top"):(s.value=u.top+m,n.value="top")),l=window.scrollY}return{isStuck:n,stickyStyles:i}}const an=100,rn=20;function ze(e){return(e<0?-1:1)*Math.sqrt(Math.abs(e))*1.41421356237}function We(e){if(e.length<2)return 0;if(e.length===2)return e[1].t===e[0].t?0:(e[1].d-e[0].d)/(e[1].t-e[0].t);let t=0;for(let o=e.length-1;o>0;o--){if(e[o].t===e[o-1].t)continue;const a=ze(t),n=(e[o].d-e[o-1].d)/(e[o].t-e[o-1].t);t+=(n-a)*Math.abs(n),o===e.length-1&&(t*=.5)}return ze(t)*1e3}function ln(){const e={};function t(n){Array.from(n.changedTouches).forEach(s=>{(e[s.identifier]??(e[s.identifier]=new Xt(rn))).push([n.timeStamp,s])})}function o(n){Array.from(n.changedTouches).forEach(s=>{delete e[s.identifier]})}function a(n){var v;const s=(v=e[n])==null?void 0:v.values().reverse();if(!s)throw new Error(`No samples for touch id ${n}`);const i=s[0],l=[],k=[];for(const u of s){if(i[0]-u[0]>an)break;l.push({t:u[0],d:u[1].clientX}),k.push({t:u[0],d:u[1].clientY})}return{x:We(l),y:We(k),get direction(){const{x:u,y:g}=this,[m,b]=[Math.abs(u),Math.abs(g)];return m>b&&u>=0?"right":m>b&&u<=0?"left":b>m&&g>=0?"down":b>m&&g<=0?"up":un()}}}return{addMovement:t,endTouch:o,getVelocity:a}}function un(){throw new Error}function cn(e){let{isActive:t,isTemporary:o,width:a,touchless:n,position:s}=e;st(()=>{window.addEventListener("touchstart",R,{passive:!0}),window.addEventListener("touchmove",V,{passive:!1}),window.addEventListener("touchend",B,{passive:!0})}),at(()=>{window.removeEventListener("touchstart",R),window.removeEventListener("touchmove",V),window.removeEventListener("touchend",B)});const i=_(()=>["left","right"].includes(s.value)),{addMovement:l,endTouch:k,getVelocity:v}=ln();let u=!1;const g=H(!1),m=H(0),b=H(0);let C;function y(d,c){return(s.value==="left"?d:s.value==="right"?document.documentElement.clientWidth-d:s.value==="top"?d:s.value==="bottom"?document.documentElement.clientHeight-d:Y())-(c?a.value:0)}function x(d){let c=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;const f=s.value==="left"?(d-b.value)/a.value:s.value==="right"?(document.documentElement.clientWidth-d-b.value)/a.value:s.value==="top"?(d-b.value)/a.value:s.value==="bottom"?(document.documentElement.clientHeight-d-b.value)/a.value:Y();return c?Math.max(0,Math.min(1,f)):f}function R(d){if(n.value)return;const c=d.changedTouches[0].clientX,f=d.changedTouches[0].clientY,w=25,D=s.value==="left"?c<w:s.value==="right"?c>document.documentElement.clientWidth-w:s.value==="top"?f<w:s.value==="bottom"?f>document.documentElement.clientHeight-w:Y(),I=t.value&&(s.value==="left"?c<a.value:s.value==="right"?c>document.documentElement.clientWidth-a.value:s.value==="top"?f<a.value:s.value==="bottom"?f>document.documentElement.clientHeight-a.value:Y());(D||I||t.value&&o.value)&&(u=!0,C=[c,f],b.value=y(i.value?c:f,t.value),m.value=x(i.value?c:f),k(d),l(d))}function V(d){const c=d.changedTouches[0].clientX,f=d.changedTouches[0].clientY;if(u){if(!d.cancelable){u=!1;return}const D=Math.abs(c-C[0]),I=Math.abs(f-C[1]);(i.value?D>I&&D>3:I>D&&I>3)?(g.value=!0,u=!1):(i.value?I:D)>3&&(u=!1)}if(!g.value)return;d.preventDefault(),l(d);const w=x(i.value?c:f,!1);m.value=Math.max(0,Math.min(1,w)),w>1?b.value=y(i.value?c:f,!0):w<0&&(b.value=y(i.value?c:f,!1))}function B(d){if(u=!1,!g.value)return;l(d),g.value=!1;const c=v(d.changedTouches[0].identifier),f=Math.abs(c.x),w=Math.abs(c.y);(i.value?f>w&&f>400:w>f&&w>3)?t.value=c.direction===({left:"right",right:"left",top:"down",bottom:"up"}[s.value]||Y()):t.value=m.value>.5}const E=_(()=>g.value?{transform:s.value==="left"?`translateX(calc(-100% + ${m.value*a.value}px))`:s.value==="right"?`translateX(calc(100% - ${m.value*a.value}px))`:s.value==="top"?`translateY(calc(-100% + ${m.value*a.value}px))`:s.value==="bottom"?`translateY(calc(100% - ${m.value*a.value}px))`:Y(),transition:"none"}:void 0);return{isDragging:g,dragProgress:m,dragStyles:E}}function Y(){throw new Error}const dn=["start","end","left","right","top","bottom"],mn=ee({color:String,disableResizeWatcher:Boolean,disableRouteWatcher:Boolean,expandOnHover:Boolean,floating:Boolean,modelValue:{type:Boolean,default:null},permanent:Boolean,rail:{type:Boolean,default:null},railWidth:{type:[Number,String],default:56},scrim:{type:[Boolean,String],default:!0},image:String,temporary:Boolean,touchless:Boolean,width:{type:[Number,String],default:256},location:{type:String,default:"start",validator:e=>dn.includes(e)},sticky:Boolean,...ke(),...ie(),...so(),...we(),...ut(),...Se(),...le({tag:"nav"}),...ye()},"VNavigationDrawer"),gn=te()({name:"VNavigationDrawer",props:mn(),emits:{"update:modelValue":e=>!0,"update:rail":e=>!0},setup(e,t){let{attrs:o,emit:a,slots:n}=t;const{isRtl:s}=rt(),{themeClasses:i}=Pe(e),{borderClasses:l}=Te(e),{backgroundColorClasses:k,backgroundColorStyles:v}=ae(Q(e,"color")),{elevationClasses:u}=Ce(e),{displayClasses:g,mobile:m}=ao(e),{roundedClasses:b}=Re(e),C=qt(),y=be(e,"modelValue",null,L=>!!L),{ssrBootStyles:x}=Kt(),{scopeId:R}=lo(),V=qe(),B=H(!1),E=_(()=>e.rail&&e.expandOnHover&&B.value?Number(e.width):Number(e.rail?e.railWidth:e.width)),d=_(()=>Zt(e.location,s.value)),c=_(()=>!e.permanent&&(m.value||e.temporary)),f=_(()=>e.sticky&&!c.value&&d.value!=="bottom");ge(()=>e.expandOnHover&&e.rail!=null,()=>{K(B,L=>a("update:rail",!L))}),ge(()=>!e.disableResizeWatcher,()=>{K(c,L=>!e.permanent&&eo(()=>y.value=!L))}),ge(()=>!e.disableRouteWatcher&&!!C,()=>{K(C.currentRoute,()=>c.value&&(y.value=!1))}),K(()=>e.permanent,L=>{L&&(y.value=!0)}),Qt(()=>{e.modelValue!=null||c.value||(y.value=e.permanent||!m.value)});const{isDragging:w,dragProgress:D,dragStyles:I}=cn({isActive:y,isTemporary:c,width:E,touchless:Q(e,"touchless"),position:d}),F=_(()=>{const L=c.value?0:e.rail&&e.expandOnHover?Number(e.railWidth):E.value;return w.value?L*D.value:L}),{layoutItemStyles:j,layoutItemScrimStyles:O}=ct({id:e.name,order:_(()=>parseInt(e.order,10)),position:d,layoutSize:F,elementSize:E,active:_(()=>y.value||w.value),disableTransitions:_(()=>w.value),absolute:_(()=>e.absolute||f.value&&typeof ne.value!="string")}),{isStuck:ne,stickyStyles:de}=sn({rootEl:V,isSticky:f,layoutItemStyles:j}),G=ae(_(()=>typeof e.scrim=="string"?e.scrim:null)),Pt=_(()=>({...w.value?{opacity:D.value*.2,transition:"none"}:void 0,...O.value}));it({VList:{bgColor:"transparent"}});function Tt(){B.value=!0}function Ct(){B.value=!1}return oe(()=>{const L=n.image||e.image;return r(Ve,null,[r(e.tag,W({ref:V,onMouseenter:Tt,onMouseleave:Ct,class:["v-navigation-drawer",`v-navigation-drawer--${d.value}`,{"v-navigation-drawer--expand-on-hover":e.expandOnHover,"v-navigation-drawer--floating":e.floating,"v-navigation-drawer--is-hovering":B.value,"v-navigation-drawer--rail":e.rail,"v-navigation-drawer--temporary":c.value,"v-navigation-drawer--active":y.value,"v-navigation-drawer--sticky":f.value},i.value,k.value,l.value,g.value,u.value,b.value,e.class],style:[v.value,j.value,I.value,x.value,de.value,e.style]},R,o),{default:()=>{var Ee,Ie,Le;return[L&&r("div",{key:"image",class:"v-navigation-drawer__img"},[n.image?r(Z,{key:"image-defaults",disabled:!e.image,defaults:{VImg:{alt:"",cover:!0,height:"inherit",src:e.image}}},n.image):r(lt,{key:"image-img",alt:"",cover:!0,height:"inherit",src:e.image},null)]),n.prepend&&r("div",{class:"v-navigation-drawer__prepend"},[(Ee=n.prepend)==null?void 0:Ee.call(n)]),r("div",{class:"v-navigation-drawer__content"},[(Ie=n.default)==null?void 0:Ie.call(n)]),n.append&&r("div",{class:"v-navigation-drawer__append"},[(Le=n.append)==null?void 0:Le.call(n)])]}}),r(Jt,{name:"fade-transition"},{default:()=>[c.value&&(w.value||y.value)&&!!e.scrim&&r("div",W({class:["v-navigation-drawer__scrim",G.backgroundColorClasses.value],style:[Pt.value,G.backgroundColorStyles.value],onClick:()=>y.value=!1},R),null)]})])}),{isStuck:ne}}}),hn={name:"SettingsDrawer",components:{SettingsCommonPanel:Yo,SettingsFooter:bt,VersionFooter:vt},props:{title:{type:String,required:!0},panel:{type:Object,required:!0},admin:{type:Boolean,default:!1}},computed:{...ue($,["isCodexViewable"]),...to(re,["isSettingsDrawerOpen"]),...z(nn,{invisibleHack:e=>e.bookChange==="next"}),adminAndNotSmall(){return this.admin&&!this.$vuetify.display.smAndDown}},mounted(){this.isSettingsDrawerOpen=this.adminAndNotSmall}},fn={class:"settingsDrawerContainer"},vn={id:"topBlock"},bn={class:"settingsHeader"},pn={id:"footerGroup"};function _n(e,t,o,a,n,s){const i=J("SettingsCommonPanel"),l=bt,k=vt;return p(),S(gn,W(e.$attrs,{modelValue:e.isSettingsDrawerOpen,"onUpdate:modelValue":t[0]||(t[0]=v=>e.isSettingsDrawerOpen=v),"disable-resize-watcher":"","disable-route-watcher":"",location:"right",scrim:!s.adminAndNotSmall,temporary:!s.adminAndNotSmall,touchless:""}),{append:h(()=>[r(k)]),default:h(()=>[A("div",fn,[A("div",vn,[A("header",bn,[A("h3",null,P(o.title),1)]),e.isCodexViewable?(p(),S(Be(o.panel),{key:0})):N("",!0),e.isCodexViewable?(p(),S(pe,{key:1})):N("",!0),r(i,{"admin-menu":!o.admin},null,8,["admin-menu"]),r(pe)]),A("div",pn,[r(l)])])]),_:1},16,["modelValue","scrim","temporary"])}const An=M(hn,[["render",_n],["__scopeId","data-v-a38da0ea"]]),je=Je(et(()=>dt(()=>import("./admin-drawer-panel-BaTVOySr.js").then(e=>e.dy),__vite__mapDeps([0,1])))),kn={name:"SettingsDrawerButton",components:{AdminSettingsButtonProgress:je},data(){return{mdiMenu:oo,AdminSettingsButtonProgress:je}},computed:{...z($,["isUserAdmin"])}};function wn(e,t,o,a,n,s){return p(),S(Xe,W(e.$attrs,{icon:"",title:"Settings"}),{default:h(()=>[r(U,null,{default:h(()=>[T(P(n.mdiMenu),1)]),_:1}),e.isUserAdmin?(p(),S(Be(n.AdminSettingsButtonProgress),{key:0})):N("",!0)]),_:1},16)}const Nn=M(kn,[["render",wn]]),Sn=ee({text:String,...ie(),...le()},"VToolbarTitle"),yn=te()({name:"VToolbarTitle",props:Sn(),setup(e,t){let{slots:o}=t;return oe(()=>{const a=!!(o.default||o.text||e.text);return r(e.tag,{class:["v-toolbar-title",e.class],style:e.style},{default:()=>{var n;return[a&&r("div",{class:"v-toolbar-title__placeholder"},[o.text?o.text():e.text,(n=o.default)==null?void 0:n.call(o)])]}})}),{}}}),Pn=[null,"prominent","default","comfortable","compact"],Tn=ee({absolute:Boolean,collapse:Boolean,color:String,density:{type:String,default:"default",validator:e=>Pn.includes(e)},extended:Boolean,extensionHeight:{type:[Number,String],default:48},flat:Boolean,floating:Boolean,height:{type:[Number,String],default:64},image:String,title:String,...ke(),...ie(),...we(),...Se(),...le({tag:"header"}),...ye()},"VToolbar"),$n=te()({name:"VToolbar",props:Tn(),setup(e,t){var b;let{slots:o}=t;const{backgroundColorClasses:a,backgroundColorStyles:n}=ae(Q(e,"color")),{borderClasses:s}=Te(e),{elevationClasses:i}=Ce(e),{roundedClasses:l}=Re(e),{themeClasses:k}=Pe(e),{rtlClasses:v}=rt(),u=H(!!(e.extended||(b=o.extension)!=null&&b.call(o))),g=_(()=>parseInt(Number(e.height)+(e.density==="prominent"?Number(e.height):0)-(e.density==="comfortable"?8:0)-(e.density==="compact"?16:0),10)),m=_(()=>u.value?parseInt(Number(e.extensionHeight)+(e.density==="prominent"?Number(e.extensionHeight):0)-(e.density==="comfortable"?4:0)-(e.density==="compact"?8:0),10):0);return it({VBtn:{variant:"text"}}),oe(()=>{var R;const C=!!(e.title||o.title),y=!!(o.image||e.image),x=(R=o.extension)==null?void 0:R.call(o);return u.value=!!(e.extended||x),r(e.tag,{class:["v-toolbar",{"v-toolbar--absolute":e.absolute,"v-toolbar--collapse":e.collapse,"v-toolbar--flat":e.flat,"v-toolbar--floating":e.floating,[`v-toolbar--density-${e.density}`]:!0},a.value,s.value,i.value,l.value,k.value,v.value,e.class],style:[n.value,e.style]},{default:()=>[y&&r("div",{key:"image",class:"v-toolbar__image"},[o.image?r(Z,{key:"image-defaults",disabled:!e.image,defaults:{VImg:{cover:!0,src:e.image}}},o.image):r(lt,{key:"image-img",cover:!0,src:e.image},null)]),r(Z,{defaults:{VTabs:{height:X(g.value)}}},{default:()=>{var V,B,E;return[r("div",{class:"v-toolbar__content",style:{height:X(g.value)}},[o.prepend&&r("div",{class:"v-toolbar__prepend"},[(V=o.prepend)==null?void 0:V.call(o)]),C&&r(yn,{key:"title",text:e.title},{text:o.title}),(B=o.default)==null?void 0:B.call(o),o.append&&r("div",{class:"v-toolbar__append"},[(E=o.append)==null?void 0:E.call(o)])])]}}),r(Z,{defaults:{VTabs:{height:X(m.value)}}},{default:()=>[r(Qe,null,{default:()=>[u.value&&r("div",{class:"v-toolbar__extension",style:{height:X(m.value)}},[x])]})]})]})}),{contentHeight:g,extensionHeight:m}}});export{Nn as S,yn as V,An as _,$n as a,en as b,Fe as c,Ue as d,gn as e,Qo as f,tn as g,In as h,Ln as i,Jo as j,nn as u};
@@ -1 +1 @@
1
- import{bD as Y,x as H,E as _,aq as M,F as A,G as k,I as F,J as j,bE as O,bF as z,r as S,h,s as x,a as D,p as q,L as m,ak as w,K as R,be as V,bf as J,bG as K,i as U,bH as Q,bI as Z,bh as N,bg as p,z as X,n as ee}from"./admin-drawer-panel-CGj6J0rX.js";import{m as te,u as ne}from"./confirm-footer-CLwOC3F0.js";const oe=e=>{const{touchstartX:o,touchendX:t,touchstartY:n,touchendY:i}=e,u=.5,s=16;e.offsetX=t-o,e.offsetY=i-n,Math.abs(e.offsetY)<u*Math.abs(e.offsetX)&&(e.left&&t<o-s&&e.left(e),e.right&&t>o+s&&e.right(e)),Math.abs(e.offsetX)<u*Math.abs(e.offsetY)&&(e.up&&i<n-s&&e.up(e),e.down&&i>n+s&&e.down(e))};function se(e,o){var n;const t=e.changedTouches[0];o.touchstartX=t.clientX,o.touchstartY=t.clientY,(n=o.start)==null||n.call(o,{originalEvent:e,...o})}function ie(e,o){var n;const t=e.changedTouches[0];o.touchendX=t.clientX,o.touchendY=t.clientY,(n=o.end)==null||n.call(o,{originalEvent:e,...o}),oe(o)}function ae(e,o){var n;const t=e.changedTouches[0];o.touchmoveX=t.clientX,o.touchmoveY=t.clientY,(n=o.move)==null||n.call(o,{originalEvent:e,...o})}function ue(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};const o={touchstartX:0,touchstartY:0,touchendX:0,touchendY:0,touchmoveX:0,touchmoveY:0,offsetX:0,offsetY:0,left:e.left,right:e.right,up:e.up,down:e.down,start:e.start,move:e.move,end:e.end};return{touchstart:t=>se(t,o),touchend:t=>ie(t,o),touchmove:t=>ae(t,o)}}function ce(e,o){var v;const t=o.value,n=t!=null&&t.parent?e.parentElement:e,i=(t==null?void 0:t.options)??{passive:!0},u=(v=o.instance)==null?void 0:v.$.uid;if(!n||!u)return;const s=ue(o.value);n._touchHandlers=n._touchHandlers??Object.create(null),n._touchHandlers[u]=s,Y(s).forEach(r=>{n.addEventListener(r,s[r],i)})}function le(e,o){var u,s;const t=(u=o.value)!=null&&u.parent?e.parentElement:e,n=(s=o.instance)==null?void 0:s.$.uid;if(!(t!=null&&t._touchHandlers)||!n)return;const i=t._touchHandlers[n];Y(i).forEach(v=>{t.removeEventListener(v,i[v])}),delete t._touchHandlers[n]}const W={mounted:ce,unmounted:le},re=W,$=Symbol.for("vuetify:v-window"),L=Symbol.for("vuetify:v-window-group"),ve=H({continuous:Boolean,nextIcon:{type:[Boolean,String,Function,Object],default:"$next"},prevIcon:{type:[Boolean,String,Function,Object],default:"$prev"},reverse:Boolean,showArrows:{type:[Boolean,String],validator:e=>typeof e=="boolean"||e==="hover"},touch:{type:[Object,Boolean],default:void 0},direction:{type:String,default:"horizontal"},modelValue:null,disabled:Boolean,selectedClass:{type:String,default:"v-window-item--active"},mandatory:{type:[Boolean,String],default:"force"},..._(),...M(),...A()},"VWindow"),me=k()({name:"VWindow",directives:{Touch:W},props:ve(),emits:{"update:modelValue":e=>!0},setup(e,o){let{slots:t}=o;const{themeClasses:n}=F(e),{isRtl:i}=j(),{t:u}=O(),s=z(e,L),v=S(),r=h(()=>i.value?!e.reverse:e.reverse),d=x(!1),y=h(()=>{const a=e.direction==="vertical"?"y":"x",f=(r.value?!d.value:d.value)?"-reverse":"";return`v-window-${a}${f}-transition`}),T=x(0),b=S(void 0),g=h(()=>s.items.value.findIndex(a=>s.selected.value.includes(a.id)));D(g,(a,l)=>{const f=s.items.value.length,C=f-1;f<=2?d.value=a<l:a===C&&l===0?d.value=!0:a===0&&l===C?d.value=!1:d.value=a<l}),q($,{transition:y,isReversed:d,transitionCount:T,transitionHeight:b,rootRef:v});const c=h(()=>e.continuous||g.value!==0),I=h(()=>e.continuous||g.value!==s.items.value.length-1);function E(){c.value&&s.prev()}function B(){I.value&&s.next()}const P=h(()=>{const a=[],l={icon:i.value?e.nextIcon:e.prevIcon,class:`v-window__${r.value?"right":"left"}`,onClick:s.prev,"aria-label":u("$vuetify.carousel.prev")};a.push(c.value?t.prev?t.prev({props:l}):m(w,l,null):m("div",null,null));const f={icon:i.value?e.prevIcon:e.nextIcon,class:`v-window__${r.value?"left":"right"}`,onClick:s.next,"aria-label":u("$vuetify.carousel.next")};return a.push(I.value?t.next?t.next({props:f}):m(w,f,null):m("div",null,null)),a}),G=h(()=>e.touch===!1?e.touch:{...{left:()=>{r.value?E():B()},right:()=>{r.value?B():E()},start:l=>{let{originalEvent:f}=l;f.stopPropagation()}},...e.touch===!0?{}:e.touch});return R(()=>V(m(e.tag,{ref:v,class:["v-window",{"v-window--show-arrows-on-hover":e.showArrows==="hover"},n.value,e.class],style:e.style},{default:()=>{var a,l;return[m("div",{class:"v-window__container",style:{height:b.value}},[(a=t.default)==null?void 0:a.call(t,{group:s}),e.showArrows!==!1&&m("div",{class:"v-window__controls"},[P.value])]),(l=t.additional)==null?void 0:l.call(t,{group:s})]}}),[[J("touch"),G.value]])),{group:s}}}),de=H({reverseTransition:{type:[Boolean,String],default:void 0},transition:{type:[Boolean,String],default:void 0},..._(),...K(),...te()},"VWindowItem"),ge=k()({name:"VWindowItem",directives:{Touch:re},props:de(),emits:{"group:selected":e=>!0},setup(e,o){let{slots:t}=o;const n=U($),i=Q(e,L),{isBooted:u}=Z();if(!n||!i)throw new Error("[Vuetify] VWindowItem must be used inside VWindow");const s=x(!1),v=h(()=>u.value&&(n.isReversed.value?e.reverseTransition!==!1:e.transition!==!1));function r(){!s.value||!n||(s.value=!1,n.transitionCount.value>0&&(n.transitionCount.value-=1,n.transitionCount.value===0&&(n.transitionHeight.value=void 0)))}function d(){var c;s.value||!n||(s.value=!0,n.transitionCount.value===0&&(n.transitionHeight.value=X((c=n.rootRef.value)==null?void 0:c.clientHeight)),n.transitionCount.value+=1)}function y(){r()}function T(c){s.value&&ee(()=>{!v.value||!s.value||!n||(n.transitionHeight.value=X(c.clientHeight))})}const b=h(()=>{const c=n.isReversed.value?e.reverseTransition:e.transition;return v.value?{name:typeof c!="string"?n.transition.value:c,onBeforeEnter:d,onAfterEnter:r,onEnterCancelled:y,onBeforeLeave:d,onAfterLeave:r,onLeaveCancelled:y,onEnter:T}:!1}),{hasContent:g}=ne(e,i.isSelected);return R(()=>m(p,{transition:b.value,disabled:!u.value},{default:()=>{var c;return[V(m("div",{class:["v-window-item",i.selectedClass.value,e.class],style:e.style},[g.value&&((c=t.default)==null?void 0:c.call(t))]),[[N,i.isSelected.value]])]}})),{groupItem:i}}});export{ge as V,me as a};
1
+ import{bD as Y,x as H,E as _,aq as M,F as A,G as k,I as F,J as j,bE as O,bF as z,r as S,h,s as x,a as D,p as q,L as m,ak as w,K as R,be as V,bf as J,bG as K,i as U,bH as Q,bI as Z,bh as N,bg as p,z as X,n as ee}from"./admin-drawer-panel-BaTVOySr.js";import{b as te,c as ne}from"./confirm-footer-DtV70TTy.js";const oe=e=>{const{touchstartX:o,touchendX:t,touchstartY:n,touchendY:i}=e,u=.5,s=16;e.offsetX=t-o,e.offsetY=i-n,Math.abs(e.offsetY)<u*Math.abs(e.offsetX)&&(e.left&&t<o-s&&e.left(e),e.right&&t>o+s&&e.right(e)),Math.abs(e.offsetX)<u*Math.abs(e.offsetY)&&(e.up&&i<n-s&&e.up(e),e.down&&i>n+s&&e.down(e))};function se(e,o){var n;const t=e.changedTouches[0];o.touchstartX=t.clientX,o.touchstartY=t.clientY,(n=o.start)==null||n.call(o,{originalEvent:e,...o})}function ie(e,o){var n;const t=e.changedTouches[0];o.touchendX=t.clientX,o.touchendY=t.clientY,(n=o.end)==null||n.call(o,{originalEvent:e,...o}),oe(o)}function ae(e,o){var n;const t=e.changedTouches[0];o.touchmoveX=t.clientX,o.touchmoveY=t.clientY,(n=o.move)==null||n.call(o,{originalEvent:e,...o})}function ue(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};const o={touchstartX:0,touchstartY:0,touchendX:0,touchendY:0,touchmoveX:0,touchmoveY:0,offsetX:0,offsetY:0,left:e.left,right:e.right,up:e.up,down:e.down,start:e.start,move:e.move,end:e.end};return{touchstart:t=>se(t,o),touchend:t=>ie(t,o),touchmove:t=>ae(t,o)}}function ce(e,o){var v;const t=o.value,n=t!=null&&t.parent?e.parentElement:e,i=(t==null?void 0:t.options)??{passive:!0},u=(v=o.instance)==null?void 0:v.$.uid;if(!n||!u)return;const s=ue(o.value);n._touchHandlers=n._touchHandlers??Object.create(null),n._touchHandlers[u]=s,Y(s).forEach(r=>{n.addEventListener(r,s[r],i)})}function le(e,o){var u,s;const t=(u=o.value)!=null&&u.parent?e.parentElement:e,n=(s=o.instance)==null?void 0:s.$.uid;if(!(t!=null&&t._touchHandlers)||!n)return;const i=t._touchHandlers[n];Y(i).forEach(v=>{t.removeEventListener(v,i[v])}),delete t._touchHandlers[n]}const W={mounted:ce,unmounted:le},re=W,$=Symbol.for("vuetify:v-window"),L=Symbol.for("vuetify:v-window-group"),ve=H({continuous:Boolean,nextIcon:{type:[Boolean,String,Function,Object],default:"$next"},prevIcon:{type:[Boolean,String,Function,Object],default:"$prev"},reverse:Boolean,showArrows:{type:[Boolean,String],validator:e=>typeof e=="boolean"||e==="hover"},touch:{type:[Object,Boolean],default:void 0},direction:{type:String,default:"horizontal"},modelValue:null,disabled:Boolean,selectedClass:{type:String,default:"v-window-item--active"},mandatory:{type:[Boolean,String],default:"force"},..._(),...M(),...A()},"VWindow"),me=k()({name:"VWindow",directives:{Touch:W},props:ve(),emits:{"update:modelValue":e=>!0},setup(e,o){let{slots:t}=o;const{themeClasses:n}=F(e),{isRtl:i}=j(),{t:u}=O(),s=z(e,L),v=S(),r=h(()=>i.value?!e.reverse:e.reverse),d=x(!1),y=h(()=>{const a=e.direction==="vertical"?"y":"x",f=(r.value?!d.value:d.value)?"-reverse":"";return`v-window-${a}${f}-transition`}),T=x(0),b=S(void 0),g=h(()=>s.items.value.findIndex(a=>s.selected.value.includes(a.id)));D(g,(a,l)=>{const f=s.items.value.length,C=f-1;f<=2?d.value=a<l:a===C&&l===0?d.value=!0:a===0&&l===C?d.value=!1:d.value=a<l}),q($,{transition:y,isReversed:d,transitionCount:T,transitionHeight:b,rootRef:v});const c=h(()=>e.continuous||g.value!==0),I=h(()=>e.continuous||g.value!==s.items.value.length-1);function E(){c.value&&s.prev()}function B(){I.value&&s.next()}const P=h(()=>{const a=[],l={icon:i.value?e.nextIcon:e.prevIcon,class:`v-window__${r.value?"right":"left"}`,onClick:s.prev,"aria-label":u("$vuetify.carousel.prev")};a.push(c.value?t.prev?t.prev({props:l}):m(w,l,null):m("div",null,null));const f={icon:i.value?e.prevIcon:e.nextIcon,class:`v-window__${r.value?"left":"right"}`,onClick:s.next,"aria-label":u("$vuetify.carousel.next")};return a.push(I.value?t.next?t.next({props:f}):m(w,f,null):m("div",null,null)),a}),G=h(()=>e.touch===!1?e.touch:{...{left:()=>{r.value?E():B()},right:()=>{r.value?B():E()},start:l=>{let{originalEvent:f}=l;f.stopPropagation()}},...e.touch===!0?{}:e.touch});return R(()=>V(m(e.tag,{ref:v,class:["v-window",{"v-window--show-arrows-on-hover":e.showArrows==="hover"},n.value,e.class],style:e.style},{default:()=>{var a,l;return[m("div",{class:"v-window__container",style:{height:b.value}},[(a=t.default)==null?void 0:a.call(t,{group:s}),e.showArrows!==!1&&m("div",{class:"v-window__controls"},[P.value])]),(l=t.additional)==null?void 0:l.call(t,{group:s})]}}),[[J("touch"),G.value]])),{group:s}}}),de=H({reverseTransition:{type:[Boolean,String],default:void 0},transition:{type:[Boolean,String],default:void 0},..._(),...K(),...te()},"VWindowItem"),ge=k()({name:"VWindowItem",directives:{Touch:re},props:de(),emits:{"group:selected":e=>!0},setup(e,o){let{slots:t}=o;const n=U($),i=Q(e,L),{isBooted:u}=Z();if(!n||!i)throw new Error("[Vuetify] VWindowItem must be used inside VWindow");const s=x(!1),v=h(()=>u.value&&(n.isReversed.value?e.reverseTransition!==!1:e.transition!==!1));function r(){!s.value||!n||(s.value=!1,n.transitionCount.value>0&&(n.transitionCount.value-=1,n.transitionCount.value===0&&(n.transitionHeight.value=void 0)))}function d(){var c;s.value||!n||(s.value=!0,n.transitionCount.value===0&&(n.transitionHeight.value=X((c=n.rootRef.value)==null?void 0:c.clientHeight)),n.transitionCount.value+=1)}function y(){r()}function T(c){s.value&&ee(()=>{!v.value||!s.value||!n||(n.transitionHeight.value=X(c.clientHeight))})}const b=h(()=>{const c=n.isReversed.value?e.reverseTransition:e.transition;return v.value?{name:typeof c!="string"?n.transition.value:c,onBeforeEnter:d,onAfterEnter:r,onEnterCancelled:y,onBeforeLeave:d,onAfterLeave:r,onLeaveCancelled:y,onEnter:T}:!1}),{hasContent:g}=ne(e,i.isSelected);return R(()=>m(p,{transition:b.value,disabled:!u.value},{default:()=>{var c;return[V(m("div",{class:["v-window-item",i.selectedClass.value,e.class],style:e.style},[g.value&&((c=t.default)==null?void 0:c.call(t))]),[[N,i.isSelected.value]])]}})),{groupItem:i}}});export{ge as V,me as a};