codex 1.7.12__py3-none-any.whl → 1.7.14__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 (614) hide show
  1. codex/choices/choices_to_json.py +1 -1
  2. codex/migrations/0013_int_issue_count_longer_charfields.py +1 -1
  3. codex/run.py +1 -1
  4. codex/serializers/route.py +3 -1
  5. codex/settings/settings.py +1 -0
  6. codex/startup.py +1 -2
  7. codex/static_root/assets/VCheckbox-BP93zyXK.a1358c39a5fc.js +1 -0
  8. codex/static_root/assets/VCheckbox-BP93zyXK.a1358c39a5fc.js.br +0 -0
  9. codex/static_root/assets/VCheckbox-BP93zyXK.a1358c39a5fc.js.gz +0 -0
  10. codex/static_root/assets/VCheckbox-BP93zyXK.js +1 -0
  11. codex/static_root/assets/VCheckbox-BP93zyXK.js.br +0 -0
  12. codex/static_root/assets/VCheckbox-BP93zyXK.js.gz +0 -0
  13. codex/static_root/assets/VCheckboxBtn-CRHYDPms.a17a831d104a.js +1 -0
  14. codex/static_root/assets/VCheckboxBtn-CRHYDPms.a17a831d104a.js.br +0 -0
  15. codex/static_root/assets/VCheckboxBtn-CRHYDPms.a17a831d104a.js.gz +0 -0
  16. codex/static_root/assets/VCheckboxBtn-CRHYDPms.js +1 -0
  17. codex/static_root/assets/VCheckboxBtn-CRHYDPms.js.br +0 -0
  18. codex/static_root/assets/VCheckboxBtn-CRHYDPms.js.gz +0 -0
  19. codex/static_root/assets/VCombobox-BMwdQ72S.106aafc35928.js +1 -0
  20. codex/static_root/assets/VCombobox-BMwdQ72S.106aafc35928.js.br +0 -0
  21. codex/static_root/assets/VCombobox-BMwdQ72S.106aafc35928.js.gz +0 -0
  22. codex/static_root/assets/VCombobox-BMwdQ72S.js +1 -0
  23. codex/static_root/assets/VCombobox-BMwdQ72S.js.br +0 -0
  24. codex/static_root/assets/VCombobox-BMwdQ72S.js.gz +0 -0
  25. codex/static_root/assets/VCombobox-DHFthaP6.942336d23612.css +1 -0
  26. codex/static_root/assets/VCombobox-DHFthaP6.942336d23612.css.br +0 -0
  27. codex/static_root/assets/VCombobox-DHFthaP6.942336d23612.css.gz +0 -0
  28. codex/static_root/assets/VCombobox-DHFthaP6.css +1 -0
  29. codex/static_root/assets/VCombobox-DHFthaP6.css.br +0 -0
  30. codex/static_root/assets/VCombobox-DHFthaP6.css.gz +0 -0
  31. codex/static_root/assets/VDialog-BScRe1ug.c1e3368e7223.js +1 -0
  32. codex/static_root/assets/VDialog-BScRe1ug.c1e3368e7223.js.br +0 -0
  33. codex/static_root/assets/VDialog-BScRe1ug.c1e3368e7223.js.gz +0 -0
  34. codex/static_root/assets/VDialog-BScRe1ug.js +1 -0
  35. codex/static_root/assets/VDialog-BScRe1ug.js.br +0 -0
  36. codex/static_root/assets/VDialog-BScRe1ug.js.gz +0 -0
  37. codex/static_root/assets/VDialog-y9QOVA5M.627a99a930c7.css +1 -0
  38. codex/static_root/assets/VDialog-y9QOVA5M.627a99a930c7.css.br +0 -0
  39. codex/static_root/assets/VDialog-y9QOVA5M.627a99a930c7.css.gz +0 -0
  40. codex/static_root/assets/VDialog-y9QOVA5M.css +1 -0
  41. codex/static_root/assets/VDialog-y9QOVA5M.css.br +0 -0
  42. codex/static_root/assets/VDialog-y9QOVA5M.css.gz +0 -0
  43. codex/static_root/assets/VDivider-tFagM0PC.3cc0ce822729.js +1 -0
  44. codex/static_root/assets/VDivider-tFagM0PC.3cc0ce822729.js.br +0 -0
  45. codex/static_root/assets/VDivider-tFagM0PC.3cc0ce822729.js.gz +0 -0
  46. codex/static_root/assets/VDivider-tFagM0PC.js +1 -0
  47. codex/static_root/assets/VDivider-tFagM0PC.js.br +0 -0
  48. codex/static_root/assets/VDivider-tFagM0PC.js.gz +0 -0
  49. codex/static_root/assets/VExpansionPanels-DGHiJ89C.b60a171f4cde.js +1 -0
  50. codex/static_root/assets/VExpansionPanels-DGHiJ89C.b60a171f4cde.js.br +0 -0
  51. codex/static_root/assets/VExpansionPanels-DGHiJ89C.b60a171f4cde.js.gz +0 -0
  52. codex/static_root/assets/VExpansionPanels-DGHiJ89C.js +1 -0
  53. codex/static_root/assets/VExpansionPanels-DGHiJ89C.js.br +0 -0
  54. codex/static_root/assets/VExpansionPanels-DGHiJ89C.js.gz +0 -0
  55. codex/static_root/assets/VForm-B__yH-Y4.63f4a1e9770b.js +1 -0
  56. codex/static_root/assets/VForm-B__yH-Y4.63f4a1e9770b.js.br +0 -0
  57. codex/static_root/assets/VForm-B__yH-Y4.63f4a1e9770b.js.gz +0 -0
  58. codex/static_root/assets/VForm-B__yH-Y4.js +1 -0
  59. codex/static_root/assets/VForm-B__yH-Y4.js.br +0 -0
  60. codex/static_root/assets/VForm-B__yH-Y4.js.gz +0 -0
  61. codex/static_root/assets/VRadioGroup-CPOGOEPv.20e361436bc6.js +1 -0
  62. codex/static_root/assets/VRadioGroup-CPOGOEPv.20e361436bc6.js.br +0 -0
  63. codex/static_root/assets/VRadioGroup-CPOGOEPv.20e361436bc6.js.gz +0 -0
  64. codex/static_root/assets/VRadioGroup-CPOGOEPv.js +1 -0
  65. codex/static_root/assets/VRadioGroup-CPOGOEPv.js.br +0 -0
  66. codex/static_root/assets/VRadioGroup-CPOGOEPv.js.gz +0 -0
  67. codex/static_root/assets/VSelect-B_F15uRm.a7297ec26f7a.js +1 -0
  68. codex/static_root/assets/VSelect-B_F15uRm.a7297ec26f7a.js.br +0 -0
  69. codex/static_root/assets/VSelect-B_F15uRm.a7297ec26f7a.js.gz +0 -0
  70. codex/static_root/assets/VSelect-B_F15uRm.js +1 -0
  71. codex/static_root/assets/VSelect-B_F15uRm.js.br +0 -0
  72. codex/static_root/assets/VSelect-B_F15uRm.js.gz +0 -0
  73. codex/static_root/assets/{VSelect-CBNrI-XP.f03b50289345.css → VSelect-CKXqRkBF.a8be1e193eba.css} +1 -1
  74. codex/static_root/assets/VSelect-CKXqRkBF.a8be1e193eba.css.br +0 -0
  75. codex/static_root/assets/VSelect-CKXqRkBF.a8be1e193eba.css.gz +0 -0
  76. codex/static_root/assets/{VSelect-CBNrI-XP.css → VSelect-CKXqRkBF.css} +1 -1
  77. codex/static_root/assets/VSelect-CKXqRkBF.css.br +0 -0
  78. codex/static_root/assets/VSelect-CKXqRkBF.css.gz +0 -0
  79. codex/static_root/assets/VSelectionControl-CjjwyQ-Y.db7787ff7c1d.js +1 -0
  80. codex/static_root/assets/VSelectionControl-CjjwyQ-Y.db7787ff7c1d.js.br +0 -0
  81. codex/static_root/assets/VSelectionControl-CjjwyQ-Y.db7787ff7c1d.js.gz +0 -0
  82. codex/static_root/assets/VSelectionControl-CjjwyQ-Y.js +1 -0
  83. codex/static_root/assets/VSelectionControl-CjjwyQ-Y.js.br +0 -0
  84. codex/static_root/assets/VSelectionControl-CjjwyQ-Y.js.gz +0 -0
  85. codex/static_root/assets/{VTable-BnxSZ_W5.c36f0a6a30cf.css → VTable-CHRVGI94.0a75643f6486.css} +1 -1
  86. codex/static_root/assets/VTable-CHRVGI94.0a75643f6486.css.br +0 -0
  87. codex/static_root/assets/VTable-CHRVGI94.0a75643f6486.css.gz +0 -0
  88. codex/static_root/assets/{VTable-BnxSZ_W5.css → VTable-CHRVGI94.css} +1 -1
  89. codex/static_root/assets/VTable-CHRVGI94.css.br +0 -0
  90. codex/static_root/assets/VTable-CHRVGI94.css.gz +0 -0
  91. codex/static_root/assets/VTable-DuRw3_Nt.d9e0088b79d2.js +1 -0
  92. codex/static_root/assets/VTable-DuRw3_Nt.d9e0088b79d2.js.br +0 -0
  93. codex/static_root/assets/VTable-DuRw3_Nt.d9e0088b79d2.js.gz +0 -0
  94. codex/static_root/assets/VTable-DuRw3_Nt.js +1 -0
  95. codex/static_root/assets/VTable-DuRw3_Nt.js.br +0 -0
  96. codex/static_root/assets/VTable-DuRw3_Nt.js.gz +0 -0
  97. codex/static_root/assets/VWindowItem-CBh8U6qD.49437fb41631.js +1 -0
  98. codex/static_root/assets/VWindowItem-CBh8U6qD.49437fb41631.js.br +0 -0
  99. codex/static_root/assets/VWindowItem-CBh8U6qD.49437fb41631.js.gz +0 -0
  100. codex/static_root/assets/VWindowItem-CBh8U6qD.js +1 -0
  101. codex/static_root/assets/VWindowItem-CBh8U6qD.js.br +0 -0
  102. codex/static_root/assets/VWindowItem-CBh8U6qD.js.gz +0 -0
  103. codex/static_root/assets/admin-BiuZANLl.249b6c087031.js +1 -0
  104. codex/static_root/assets/admin-BiuZANLl.249b6c087031.js.br +0 -0
  105. codex/static_root/assets/admin-BiuZANLl.249b6c087031.js.gz +0 -0
  106. codex/static_root/assets/admin-BiuZANLl.js +1 -0
  107. codex/static_root/assets/admin-BiuZANLl.js.br +0 -0
  108. codex/static_root/assets/admin-BiuZANLl.js.gz +0 -0
  109. codex/static_root/assets/admin-klMr_GZK.3784e4f1d624.css +1 -0
  110. codex/static_root/assets/admin-klMr_GZK.3784e4f1d624.css.br +0 -0
  111. codex/static_root/assets/admin-klMr_GZK.3784e4f1d624.css.gz +0 -0
  112. codex/static_root/assets/admin-klMr_GZK.css +1 -0
  113. codex/static_root/assets/admin-klMr_GZK.css.br +0 -0
  114. codex/static_root/assets/admin-klMr_GZK.css.gz +0 -0
  115. codex/static_root/assets/admin-menu-DqBUjKk4.96d3ee51d1ee.js +1 -0
  116. codex/static_root/assets/admin-menu-DqBUjKk4.96d3ee51d1ee.js.br +0 -0
  117. codex/static_root/assets/admin-menu-DqBUjKk4.96d3ee51d1ee.js.gz +0 -0
  118. codex/static_root/assets/admin-menu-DqBUjKk4.js +1 -0
  119. codex/static_root/assets/admin-menu-DqBUjKk4.js.br +0 -0
  120. codex/static_root/assets/admin-menu-DqBUjKk4.js.gz +0 -0
  121. codex/static_root/assets/{admin-BpE7-fB4.8c4508dad617.js → admin-rFfBszpt.fe7fc34dcff9.js} +1 -1
  122. codex/static_root/assets/admin-rFfBszpt.fe7fc34dcff9.js.br +0 -0
  123. codex/static_root/assets/admin-rFfBszpt.fe7fc34dcff9.js.gz +0 -0
  124. codex/static_root/assets/{admin-BpE7-fB4.js → admin-rFfBszpt.js} +1 -1
  125. codex/static_root/assets/admin-rFfBszpt.js.br +0 -0
  126. codex/static_root/assets/admin-rFfBszpt.js.gz +0 -0
  127. codex/static_root/assets/{admin-settings-button-progress-wIXv-9g2.33b5b24000b2.js → admin-settings-button-progress-OU_loI8p.87ac446b1a6a.js} +1 -1
  128. codex/static_root/assets/admin-settings-button-progress-OU_loI8p.87ac446b1a6a.js.br +0 -0
  129. codex/static_root/assets/admin-settings-button-progress-OU_loI8p.87ac446b1a6a.js.gz +0 -0
  130. codex/static_root/assets/{admin-settings-button-progress-wIXv-9g2.js → admin-settings-button-progress-OU_loI8p.js} +1 -1
  131. codex/static_root/assets/admin-settings-button-progress-OU_loI8p.js.br +0 -0
  132. codex/static_root/assets/admin-settings-button-progress-OU_loI8p.js.gz +0 -0
  133. codex/static_root/assets/browser-D0QppR66.501322534a7c.js +1 -0
  134. codex/static_root/assets/browser-D0QppR66.501322534a7c.js.br +0 -0
  135. codex/static_root/assets/browser-D0QppR66.501322534a7c.js.gz +0 -0
  136. codex/static_root/assets/browser-D0QppR66.js +1 -0
  137. codex/static_root/assets/browser-D0QppR66.js.br +0 -0
  138. codex/static_root/assets/browser-D0QppR66.js.gz +0 -0
  139. codex/static_root/assets/{browser-ClPcbrsf.c8620affa34d.css → browser-sNm790x9.305a6a4f38fd.css} +1 -1
  140. codex/static_root/assets/browser-sNm790x9.305a6a4f38fd.css.br +0 -0
  141. codex/static_root/assets/browser-sNm790x9.305a6a4f38fd.css.gz +0 -0
  142. codex/static_root/assets/{browser-ClPcbrsf.css → browser-sNm790x9.css} +1 -1
  143. codex/static_root/assets/browser-sNm790x9.css.br +0 -0
  144. codex/static_root/assets/browser-sNm790x9.css.gz +0 -0
  145. codex/static_root/assets/{change-password-dialog-DOioR_QK.75126226aeee.js → change-password-dialog-DQ_0TaFN.5faa73705235.js} +1 -1
  146. codex/static_root/assets/change-password-dialog-DQ_0TaFN.5faa73705235.js.br +0 -0
  147. codex/static_root/assets/change-password-dialog-DQ_0TaFN.5faa73705235.js.gz +0 -0
  148. codex/static_root/assets/{change-password-dialog-DOioR_QK.js → change-password-dialog-DQ_0TaFN.js} +1 -1
  149. codex/static_root/assets/change-password-dialog-DQ_0TaFN.js.br +0 -0
  150. codex/static_root/assets/change-password-dialog-DQ_0TaFN.js.gz +0 -0
  151. codex/static_root/assets/confirm-dialog-Bkr6kSge.f41952e0b099.js +1 -0
  152. codex/static_root/assets/confirm-dialog-Bkr6kSge.f41952e0b099.js.br +0 -0
  153. codex/static_root/assets/confirm-dialog-Bkr6kSge.f41952e0b099.js.gz +0 -0
  154. codex/static_root/assets/confirm-dialog-Bkr6kSge.js +1 -0
  155. codex/static_root/assets/confirm-dialog-Bkr6kSge.js.br +0 -0
  156. codex/static_root/assets/confirm-dialog-Bkr6kSge.js.gz +0 -0
  157. codex/static_root/assets/datetime-column-DN4pF5Fz.eef663675e36.js +1 -0
  158. codex/static_root/assets/datetime-column-DN4pF5Fz.eef663675e36.js.br +2 -0
  159. codex/static_root/assets/datetime-column-DN4pF5Fz.eef663675e36.js.gz +0 -0
  160. codex/static_root/assets/datetime-column-DN4pF5Fz.js +1 -0
  161. codex/static_root/assets/datetime-column-DN4pF5Fz.js.br +2 -0
  162. codex/static_root/assets/datetime-column-DN4pF5Fz.js.gz +0 -0
  163. codex/static_root/assets/filter-C84dddvE.1f40ef69fc98.js +1 -0
  164. codex/static_root/assets/filter-C84dddvE.1f40ef69fc98.js.br +0 -0
  165. codex/static_root/assets/filter-C84dddvE.1f40ef69fc98.js.gz +0 -0
  166. codex/static_root/assets/filter-C84dddvE.js +1 -0
  167. codex/static_root/assets/filter-C84dddvE.js.br +0 -0
  168. codex/static_root/assets/filter-C84dddvE.js.gz +0 -0
  169. codex/static_root/assets/{flag-tab-kMgSs3vx.7ca3ec2db15e.js → flag-tab-kXJbxWWt.afd96e3b065a.js} +1 -1
  170. codex/static_root/assets/flag-tab-kXJbxWWt.afd96e3b065a.js.br +0 -0
  171. codex/static_root/assets/flag-tab-kXJbxWWt.afd96e3b065a.js.gz +0 -0
  172. codex/static_root/assets/{flag-tab-kMgSs3vx.js → flag-tab-kXJbxWWt.js} +1 -1
  173. codex/static_root/assets/flag-tab-kXJbxWWt.js.br +0 -0
  174. codex/static_root/assets/flag-tab-kXJbxWWt.js.gz +0 -0
  175. codex/static_root/assets/forwardRefs-Dbjzugu8.a95409be3194.css +1 -0
  176. codex/static_root/assets/forwardRefs-Dbjzugu8.a95409be3194.css.br +0 -0
  177. codex/static_root/assets/forwardRefs-Dbjzugu8.a95409be3194.css.gz +0 -0
  178. codex/static_root/assets/forwardRefs-Dbjzugu8.css +1 -0
  179. codex/static_root/assets/forwardRefs-Dbjzugu8.css.br +0 -0
  180. codex/static_root/assets/forwardRefs-Dbjzugu8.css.gz +0 -0
  181. codex/static_root/assets/forwardRefs-DkWUbz_i.6267360fb97d.js +1 -0
  182. codex/static_root/assets/forwardRefs-DkWUbz_i.6267360fb97d.js.br +0 -0
  183. codex/static_root/assets/forwardRefs-DkWUbz_i.6267360fb97d.js.gz +0 -0
  184. codex/static_root/assets/forwardRefs-DkWUbz_i.js +1 -0
  185. codex/static_root/assets/forwardRefs-DkWUbz_i.js.br +0 -0
  186. codex/static_root/assets/forwardRefs-DkWUbz_i.js.gz +0 -0
  187. codex/static_root/assets/group-tab-jH91_dZ-.4e96931a3f26.js +1 -0
  188. codex/static_root/assets/group-tab-jH91_dZ-.4e96931a3f26.js.br +0 -0
  189. codex/static_root/assets/group-tab-jH91_dZ-.4e96931a3f26.js.gz +0 -0
  190. codex/static_root/assets/group-tab-jH91_dZ-.js +1 -0
  191. codex/static_root/assets/group-tab-jH91_dZ-.js.br +0 -0
  192. codex/static_root/assets/group-tab-jH91_dZ-.js.gz +0 -0
  193. codex/static_root/assets/http-error-CrojtCix.9d0501bde853.js +1 -0
  194. codex/static_root/assets/http-error-CrojtCix.9d0501bde853.js.br +0 -0
  195. codex/static_root/assets/http-error-CrojtCix.9d0501bde853.js.gz +0 -0
  196. codex/static_root/assets/http-error-CrojtCix.js +1 -0
  197. codex/static_root/assets/http-error-CrojtCix.js.br +0 -0
  198. codex/static_root/assets/http-error-CrojtCix.js.gz +0 -0
  199. codex/static_root/assets/index-DHunaD9D.c820322b9e49.js +1 -0
  200. codex/static_root/assets/index-DHunaD9D.c820322b9e49.js.br +0 -0
  201. codex/static_root/assets/index-DHunaD9D.c820322b9e49.js.gz +0 -0
  202. codex/static_root/assets/index-DHunaD9D.js +1 -0
  203. codex/static_root/assets/index-DHunaD9D.js.br +0 -0
  204. codex/static_root/assets/index-DHunaD9D.js.gz +0 -0
  205. codex/static_root/assets/library-tab-BzOyajRi.6c8c04906eec.js +1 -0
  206. codex/static_root/assets/library-tab-BzOyajRi.6c8c04906eec.js.br +0 -0
  207. codex/static_root/assets/library-tab-BzOyajRi.6c8c04906eec.js.gz +0 -0
  208. codex/static_root/assets/library-tab-BzOyajRi.js +1 -0
  209. codex/static_root/assets/library-tab-BzOyajRi.js.br +0 -0
  210. codex/static_root/assets/library-tab-BzOyajRi.js.gz +0 -0
  211. codex/static_root/assets/main-Dl2Lrwga.e767cd79bb5e.js +39 -0
  212. codex/static_root/assets/main-Dl2Lrwga.e767cd79bb5e.js.br +0 -0
  213. codex/static_root/assets/main-Dl2Lrwga.e767cd79bb5e.js.gz +0 -0
  214. codex/static_root/assets/main-Dl2Lrwga.js +39 -0
  215. codex/static_root/assets/main-Dl2Lrwga.js.br +0 -0
  216. codex/static_root/assets/main-Dl2Lrwga.js.gz +0 -0
  217. codex/static_root/assets/pager-full-pdf-DKdyHoRL.a504cc00db7c.js +1 -0
  218. codex/static_root/assets/pager-full-pdf-DKdyHoRL.a504cc00db7c.js.br +0 -0
  219. codex/static_root/assets/pager-full-pdf-DKdyHoRL.a504cc00db7c.js.gz +0 -0
  220. codex/static_root/assets/pager-full-pdf-DKdyHoRL.js +1 -0
  221. codex/static_root/assets/pager-full-pdf-DKdyHoRL.js.br +0 -0
  222. codex/static_root/assets/pager-full-pdf-DKdyHoRL.js.gz +0 -0
  223. codex/static_root/assets/pagination-toolbar-T0N6Ubp7.1f07380772ae.js +1 -0
  224. codex/static_root/assets/pagination-toolbar-T0N6Ubp7.1f07380772ae.js.br +0 -0
  225. codex/static_root/assets/pagination-toolbar-T0N6Ubp7.1f07380772ae.js.gz +0 -0
  226. codex/static_root/assets/pagination-toolbar-T0N6Ubp7.js +1 -0
  227. codex/static_root/assets/pagination-toolbar-T0N6Ubp7.js.br +0 -0
  228. codex/static_root/assets/pagination-toolbar-T0N6Ubp7.js.gz +0 -0
  229. codex/static_root/assets/{pagination-toolbar-DkYjhdVb.css → pagination-toolbar-aHRrdz48.2cbd38f9256c.css} +1 -1
  230. codex/static_root/assets/pagination-toolbar-aHRrdz48.2cbd38f9256c.css.br +0 -0
  231. codex/static_root/assets/pagination-toolbar-aHRrdz48.2cbd38f9256c.css.gz +0 -0
  232. codex/static_root/assets/{pagination-toolbar-DkYjhdVb.d431a5b140aa.css → pagination-toolbar-aHRrdz48.css} +1 -1
  233. codex/static_root/assets/pagination-toolbar-aHRrdz48.css.br +0 -0
  234. codex/static_root/assets/pagination-toolbar-aHRrdz48.css.gz +0 -0
  235. codex/static_root/assets/{pdf-doc-HpDB0I3q.a991cdc377eb.js → pdf-doc-CBiUfHpD.9e3e989242e7.js} +1 -1
  236. codex/static_root/assets/pdf-doc-CBiUfHpD.9e3e989242e7.js.br +0 -0
  237. codex/static_root/assets/pdf-doc-CBiUfHpD.9e3e989242e7.js.gz +0 -0
  238. codex/static_root/assets/{pdf-doc-HpDB0I3q.js → pdf-doc-CBiUfHpD.js} +1 -1
  239. codex/static_root/assets/pdf-doc-CBiUfHpD.js.br +0 -0
  240. codex/static_root/assets/pdf-doc-CBiUfHpD.js.gz +0 -0
  241. codex/static_root/assets/{reader-BIqif2zL.755da5eee67d.css → reader-BwgJtbgj.c8b86f482c17.css} +1 -1
  242. codex/static_root/assets/reader-BwgJtbgj.c8b86f482c17.css.br +0 -0
  243. codex/static_root/assets/reader-BwgJtbgj.c8b86f482c17.css.gz +0 -0
  244. codex/static_root/assets/{reader-BIqif2zL.css → reader-BwgJtbgj.css} +1 -1
  245. codex/static_root/assets/reader-BwgJtbgj.css.br +0 -0
  246. codex/static_root/assets/reader-BwgJtbgj.css.gz +0 -0
  247. codex/static_root/assets/reader-D3uSXJi4.6bf741d0ed65.js +2 -0
  248. codex/static_root/assets/reader-D3uSXJi4.6bf741d0ed65.js.br +0 -0
  249. codex/static_root/assets/reader-D3uSXJi4.6bf741d0ed65.js.gz +0 -0
  250. codex/static_root/assets/reader-D3uSXJi4.js +2 -0
  251. codex/static_root/assets/reader-D3uSXJi4.js.br +0 -0
  252. codex/static_root/assets/reader-D3uSXJi4.js.gz +0 -0
  253. codex/static_root/assets/relation-chips-BuShhy1e.822bb69b0cfe.css +1 -0
  254. codex/static_root/assets/relation-chips-BuShhy1e.822bb69b0cfe.css.br +0 -0
  255. codex/static_root/assets/relation-chips-BuShhy1e.822bb69b0cfe.css.gz +0 -0
  256. codex/static_root/assets/relation-chips-BuShhy1e.css +1 -0
  257. codex/static_root/assets/relation-chips-BuShhy1e.css.br +0 -0
  258. codex/static_root/assets/relation-chips-BuShhy1e.css.gz +0 -0
  259. codex/static_root/assets/relation-chips-DWjWPY3v.d76db684e8a8.js +1 -0
  260. codex/static_root/assets/relation-chips-DWjWPY3v.d76db684e8a8.js.br +0 -0
  261. codex/static_root/assets/relation-chips-DWjWPY3v.d76db684e8a8.js.gz +0 -0
  262. codex/static_root/assets/relation-chips-DWjWPY3v.js +1 -0
  263. codex/static_root/assets/relation-chips-DWjWPY3v.js.br +0 -0
  264. codex/static_root/assets/relation-chips-DWjWPY3v.js.gz +0 -0
  265. codex/static_root/assets/settings-drawer-Bu83HJ70.a7672fb29169.js +2 -0
  266. codex/static_root/assets/settings-drawer-Bu83HJ70.a7672fb29169.js.br +0 -0
  267. codex/static_root/assets/settings-drawer-Bu83HJ70.a7672fb29169.js.gz +0 -0
  268. codex/static_root/assets/settings-drawer-Bu83HJ70.js +2 -0
  269. codex/static_root/assets/settings-drawer-Bu83HJ70.js.br +0 -0
  270. codex/static_root/assets/settings-drawer-Bu83HJ70.js.gz +0 -0
  271. codex/static_root/assets/settings-drawer-WyG6HLH-.css +1 -0
  272. codex/static_root/assets/settings-drawer-WyG6HLH-.css.br +0 -0
  273. codex/static_root/assets/settings-drawer-WyG6HLH-.css.gz +0 -0
  274. codex/static_root/assets/settings-drawer-WyG6HLH-.fe251f6d0a75.css +1 -0
  275. codex/static_root/assets/settings-drawer-WyG6HLH-.fe251f6d0a75.css.br +0 -0
  276. codex/static_root/assets/settings-drawer-WyG6HLH-.fe251f6d0a75.css.gz +0 -0
  277. codex/static_root/assets/{ssrBoot-B73_e82Z.3d5063c17c68.js → ssrBoot-CYaxTeZo.308983ed6c53.js} +1 -1
  278. codex/static_root/assets/ssrBoot-CYaxTeZo.308983ed6c53.js.br +0 -0
  279. codex/static_root/assets/ssrBoot-CYaxTeZo.308983ed6c53.js.gz +0 -0
  280. codex/static_root/assets/{ssrBoot-B73_e82Z.js → ssrBoot-CYaxTeZo.js} +1 -1
  281. codex/static_root/assets/ssrBoot-CYaxTeZo.js.br +0 -0
  282. codex/static_root/assets/ssrBoot-CYaxTeZo.js.gz +0 -0
  283. codex/static_root/assets/{stats-tab-Kt45gqtN.858a124412d0.js → stats-tab-aWxmJFqf.ef7a1a878842.js} +1 -1
  284. codex/static_root/assets/stats-tab-aWxmJFqf.ef7a1a878842.js.br +0 -0
  285. codex/static_root/assets/stats-tab-aWxmJFqf.ef7a1a878842.js.gz +0 -0
  286. codex/static_root/assets/{stats-tab-Kt45gqtN.js → stats-tab-aWxmJFqf.js} +1 -1
  287. codex/static_root/assets/stats-tab-aWxmJFqf.js.br +0 -0
  288. codex/static_root/assets/stats-tab-aWxmJFqf.js.gz +0 -0
  289. codex/static_root/assets/{task-tab-DDKv2JN0.ea54c5cf8e0f.js → task-tab-fAvDZsSF.607dda8657e0.js} +1 -1
  290. codex/static_root/assets/task-tab-fAvDZsSF.607dda8657e0.js.br +0 -0
  291. codex/static_root/assets/task-tab-fAvDZsSF.607dda8657e0.js.gz +0 -0
  292. codex/static_root/assets/{task-tab-DDKv2JN0.js → task-tab-fAvDZsSF.js} +1 -1
  293. codex/static_root/assets/task-tab-fAvDZsSF.js.br +0 -0
  294. codex/static_root/assets/task-tab-fAvDZsSF.js.gz +0 -0
  295. codex/static_root/assets/unauthorized-DE63n2Pi.b0357009b13d.css +1 -0
  296. codex/static_root/assets/unauthorized-DE63n2Pi.b0357009b13d.css.br +0 -0
  297. codex/static_root/assets/unauthorized-DE63n2Pi.b0357009b13d.css.gz +0 -0
  298. codex/static_root/assets/unauthorized-DE63n2Pi.css +1 -0
  299. codex/static_root/assets/unauthorized-DE63n2Pi.css.br +0 -0
  300. codex/static_root/assets/unauthorized-DE63n2Pi.css.gz +0 -0
  301. codex/static_root/assets/unauthorized-T8UCTUHd.16d825eec49d.js +1 -0
  302. codex/static_root/assets/unauthorized-T8UCTUHd.16d825eec49d.js.br +0 -0
  303. codex/static_root/assets/unauthorized-T8UCTUHd.16d825eec49d.js.gz +0 -0
  304. codex/static_root/assets/unauthorized-T8UCTUHd.js +1 -0
  305. codex/static_root/assets/unauthorized-T8UCTUHd.js.br +0 -0
  306. codex/static_root/assets/unauthorized-T8UCTUHd.js.gz +0 -0
  307. codex/static_root/assets/{user-tab-77Bjv-sy.994ac66245a1.js → user-tab-CI1MB3ic.ed8693e40a0b.js} +1 -1
  308. codex/static_root/assets/user-tab-CI1MB3ic.ed8693e40a0b.js.br +0 -0
  309. codex/static_root/assets/user-tab-CI1MB3ic.ed8693e40a0b.js.gz +0 -0
  310. codex/static_root/assets/{user-tab-77Bjv-sy.js → user-tab-CI1MB3ic.js} +1 -1
  311. codex/static_root/assets/user-tab-CI1MB3ic.js.br +0 -0
  312. codex/static_root/assets/user-tab-CI1MB3ic.js.gz +0 -0
  313. codex/static_root/manifest.b23c14b76074.json +757 -0
  314. codex/static_root/manifest.b23c14b76074.json.br +0 -0
  315. codex/static_root/manifest.b23c14b76074.json.gz +0 -0
  316. codex/static_root/manifest.json +330 -330
  317. codex/static_root/manifest.json.br +0 -0
  318. codex/static_root/manifest.json.gz +0 -0
  319. codex/static_root/staticfiles.json +1 -1
  320. codex/views/browser/breadcrumbs.py +8 -3
  321. codex/views/browser/browser.py +1 -1
  322. codex/views/browser/filters/search/parse.py +1 -1
  323. codex/views/browser/paginate.py +1 -1
  324. codex/views/const.py +0 -1
  325. codex/views/opds/v1/feed.py +1 -2
  326. codex/views/opds/v2/feed.py +1 -1
  327. codex/views/reader/books.py +1 -1
  328. codex/views/util.py +10 -11
  329. {codex-1.7.12.dist-info → codex-1.7.14.dist-info}/METADATA +2 -2
  330. {codex-1.7.12.dist-info → codex-1.7.14.dist-info}/RECORD +333 -333
  331. codex/static_root/assets/VCheckbox-DtuP7Cwl.38fc4eb148cb.js +0 -1
  332. codex/static_root/assets/VCheckbox-DtuP7Cwl.38fc4eb148cb.js.br +0 -0
  333. codex/static_root/assets/VCheckbox-DtuP7Cwl.38fc4eb148cb.js.gz +0 -0
  334. codex/static_root/assets/VCheckbox-DtuP7Cwl.js +0 -1
  335. codex/static_root/assets/VCheckbox-DtuP7Cwl.js.br +0 -0
  336. codex/static_root/assets/VCheckbox-DtuP7Cwl.js.gz +0 -0
  337. codex/static_root/assets/VCheckboxBtn-D8jQ_2In.7c4ec3e3d71a.js +0 -1
  338. codex/static_root/assets/VCheckboxBtn-D8jQ_2In.7c4ec3e3d71a.js.br +0 -0
  339. codex/static_root/assets/VCheckboxBtn-D8jQ_2In.7c4ec3e3d71a.js.gz +0 -0
  340. codex/static_root/assets/VCheckboxBtn-D8jQ_2In.js +0 -1
  341. codex/static_root/assets/VCheckboxBtn-D8jQ_2In.js.br +0 -0
  342. codex/static_root/assets/VCheckboxBtn-D8jQ_2In.js.gz +0 -0
  343. codex/static_root/assets/VCombobox-Ckm4HgDu.css +0 -1
  344. codex/static_root/assets/VCombobox-Ckm4HgDu.css.br +0 -0
  345. codex/static_root/assets/VCombobox-Ckm4HgDu.css.gz +0 -0
  346. codex/static_root/assets/VCombobox-Ckm4HgDu.ece2fa32eddd.css +0 -1
  347. codex/static_root/assets/VCombobox-Ckm4HgDu.ece2fa32eddd.css.br +0 -0
  348. codex/static_root/assets/VCombobox-Ckm4HgDu.ece2fa32eddd.css.gz +0 -0
  349. codex/static_root/assets/VCombobox-Da-CC3-D.7ce605203632.js +0 -1
  350. codex/static_root/assets/VCombobox-Da-CC3-D.7ce605203632.js.br +0 -0
  351. codex/static_root/assets/VCombobox-Da-CC3-D.7ce605203632.js.gz +0 -0
  352. codex/static_root/assets/VCombobox-Da-CC3-D.js +0 -1
  353. codex/static_root/assets/VCombobox-Da-CC3-D.js.br +0 -0
  354. codex/static_root/assets/VCombobox-Da-CC3-D.js.gz +0 -0
  355. codex/static_root/assets/VDialog-Cj6z437E.cf3163940528.css +0 -1
  356. codex/static_root/assets/VDialog-Cj6z437E.cf3163940528.css.br +0 -0
  357. codex/static_root/assets/VDialog-Cj6z437E.cf3163940528.css.gz +0 -0
  358. codex/static_root/assets/VDialog-Cj6z437E.css +0 -1
  359. codex/static_root/assets/VDialog-Cj6z437E.css.br +0 -0
  360. codex/static_root/assets/VDialog-Cj6z437E.css.gz +0 -0
  361. codex/static_root/assets/VDialog-CoOMSEbM.ef9258719fe6.js +0 -1
  362. codex/static_root/assets/VDialog-CoOMSEbM.ef9258719fe6.js.br +0 -0
  363. codex/static_root/assets/VDialog-CoOMSEbM.ef9258719fe6.js.gz +0 -0
  364. codex/static_root/assets/VDialog-CoOMSEbM.js +0 -1
  365. codex/static_root/assets/VDialog-CoOMSEbM.js.br +0 -0
  366. codex/static_root/assets/VDialog-CoOMSEbM.js.gz +0 -0
  367. codex/static_root/assets/VDivider-BXrVdmrm.94f80a82fabf.js +0 -1
  368. codex/static_root/assets/VDivider-BXrVdmrm.94f80a82fabf.js.br +0 -0
  369. codex/static_root/assets/VDivider-BXrVdmrm.94f80a82fabf.js.gz +0 -0
  370. codex/static_root/assets/VDivider-BXrVdmrm.js +0 -1
  371. codex/static_root/assets/VDivider-BXrVdmrm.js.br +0 -0
  372. codex/static_root/assets/VDivider-BXrVdmrm.js.gz +0 -0
  373. codex/static_root/assets/VExpansionPanels-BvZsXmp0.288d3ac96c36.js +0 -1
  374. codex/static_root/assets/VExpansionPanels-BvZsXmp0.288d3ac96c36.js.br +0 -0
  375. codex/static_root/assets/VExpansionPanels-BvZsXmp0.288d3ac96c36.js.gz +0 -0
  376. codex/static_root/assets/VExpansionPanels-BvZsXmp0.js +0 -1
  377. codex/static_root/assets/VExpansionPanels-BvZsXmp0.js.br +0 -0
  378. codex/static_root/assets/VExpansionPanels-BvZsXmp0.js.gz +0 -0
  379. codex/static_root/assets/VForm-DXrmSq46.940c782abacb.js +0 -1
  380. codex/static_root/assets/VForm-DXrmSq46.940c782abacb.js.br +0 -0
  381. codex/static_root/assets/VForm-DXrmSq46.940c782abacb.js.gz +0 -0
  382. codex/static_root/assets/VForm-DXrmSq46.js +0 -1
  383. codex/static_root/assets/VForm-DXrmSq46.js.br +0 -0
  384. codex/static_root/assets/VForm-DXrmSq46.js.gz +0 -0
  385. codex/static_root/assets/VRadioGroup-DgtijQjG.a3093b0a1608.js +0 -1
  386. codex/static_root/assets/VRadioGroup-DgtijQjG.a3093b0a1608.js.br +0 -0
  387. codex/static_root/assets/VRadioGroup-DgtijQjG.a3093b0a1608.js.gz +0 -0
  388. codex/static_root/assets/VRadioGroup-DgtijQjG.js +0 -1
  389. codex/static_root/assets/VRadioGroup-DgtijQjG.js.br +0 -0
  390. codex/static_root/assets/VRadioGroup-DgtijQjG.js.gz +0 -0
  391. codex/static_root/assets/VSelect-BpkoCPsm.b9086059c2ef.js +0 -1
  392. codex/static_root/assets/VSelect-BpkoCPsm.b9086059c2ef.js.br +0 -0
  393. codex/static_root/assets/VSelect-BpkoCPsm.b9086059c2ef.js.gz +0 -0
  394. codex/static_root/assets/VSelect-BpkoCPsm.js +0 -1
  395. codex/static_root/assets/VSelect-BpkoCPsm.js.br +0 -0
  396. codex/static_root/assets/VSelect-BpkoCPsm.js.gz +0 -0
  397. codex/static_root/assets/VSelect-CBNrI-XP.css.br +0 -0
  398. codex/static_root/assets/VSelect-CBNrI-XP.css.gz +0 -0
  399. codex/static_root/assets/VSelect-CBNrI-XP.f03b50289345.css.br +0 -0
  400. codex/static_root/assets/VSelect-CBNrI-XP.f03b50289345.css.gz +0 -0
  401. codex/static_root/assets/VSelectionControl-DvYb3Pi4.39440575ef06.js +0 -1
  402. codex/static_root/assets/VSelectionControl-DvYb3Pi4.39440575ef06.js.br +0 -0
  403. codex/static_root/assets/VSelectionControl-DvYb3Pi4.39440575ef06.js.gz +0 -0
  404. codex/static_root/assets/VSelectionControl-DvYb3Pi4.js +0 -1
  405. codex/static_root/assets/VSelectionControl-DvYb3Pi4.js.br +0 -0
  406. codex/static_root/assets/VSelectionControl-DvYb3Pi4.js.gz +0 -0
  407. codex/static_root/assets/VTable-BnxSZ_W5.c36f0a6a30cf.css.br +0 -0
  408. codex/static_root/assets/VTable-BnxSZ_W5.c36f0a6a30cf.css.gz +0 -0
  409. codex/static_root/assets/VTable-BnxSZ_W5.css.br +0 -0
  410. codex/static_root/assets/VTable-BnxSZ_W5.css.gz +0 -0
  411. codex/static_root/assets/VTable-DbFt9lJE.9ef6aa0ef98b.js +0 -1
  412. codex/static_root/assets/VTable-DbFt9lJE.9ef6aa0ef98b.js.br +0 -0
  413. codex/static_root/assets/VTable-DbFt9lJE.9ef6aa0ef98b.js.gz +0 -0
  414. codex/static_root/assets/VTable-DbFt9lJE.js +0 -1
  415. codex/static_root/assets/VTable-DbFt9lJE.js.br +0 -0
  416. codex/static_root/assets/VTable-DbFt9lJE.js.gz +0 -0
  417. codex/static_root/assets/VWindowItem-rXg83yw2.0fd72e50001d.js +0 -1
  418. codex/static_root/assets/VWindowItem-rXg83yw2.0fd72e50001d.js.br +0 -0
  419. codex/static_root/assets/VWindowItem-rXg83yw2.0fd72e50001d.js.gz +0 -0
  420. codex/static_root/assets/VWindowItem-rXg83yw2.js +0 -1
  421. codex/static_root/assets/VWindowItem-rXg83yw2.js.br +0 -0
  422. codex/static_root/assets/VWindowItem-rXg83yw2.js.gz +0 -0
  423. codex/static_root/assets/admin--bDFN8Oq.a4abe921cf7c.js +0 -1
  424. codex/static_root/assets/admin--bDFN8Oq.a4abe921cf7c.js.br +0 -0
  425. codex/static_root/assets/admin--bDFN8Oq.a4abe921cf7c.js.gz +0 -0
  426. codex/static_root/assets/admin--bDFN8Oq.js +0 -1
  427. codex/static_root/assets/admin--bDFN8Oq.js.br +0 -0
  428. codex/static_root/assets/admin--bDFN8Oq.js.gz +0 -0
  429. codex/static_root/assets/admin-BNNYZVYA.4628d2f169aa.css +0 -1
  430. codex/static_root/assets/admin-BNNYZVYA.4628d2f169aa.css.br +0 -0
  431. codex/static_root/assets/admin-BNNYZVYA.4628d2f169aa.css.gz +0 -0
  432. codex/static_root/assets/admin-BNNYZVYA.css +0 -1
  433. codex/static_root/assets/admin-BNNYZVYA.css.br +0 -0
  434. codex/static_root/assets/admin-BNNYZVYA.css.gz +0 -0
  435. codex/static_root/assets/admin-BpE7-fB4.8c4508dad617.js.br +0 -0
  436. codex/static_root/assets/admin-BpE7-fB4.8c4508dad617.js.gz +0 -0
  437. codex/static_root/assets/admin-BpE7-fB4.js.br +0 -0
  438. codex/static_root/assets/admin-BpE7-fB4.js.gz +0 -0
  439. codex/static_root/assets/admin-menu-DEQXJH4i.bac02d0bea36.js +0 -1
  440. codex/static_root/assets/admin-menu-DEQXJH4i.bac02d0bea36.js.br +0 -0
  441. codex/static_root/assets/admin-menu-DEQXJH4i.bac02d0bea36.js.gz +0 -0
  442. codex/static_root/assets/admin-menu-DEQXJH4i.js +0 -1
  443. codex/static_root/assets/admin-menu-DEQXJH4i.js.br +0 -0
  444. codex/static_root/assets/admin-menu-DEQXJH4i.js.gz +0 -0
  445. codex/static_root/assets/admin-settings-button-progress-wIXv-9g2.33b5b24000b2.js.br +0 -0
  446. codex/static_root/assets/admin-settings-button-progress-wIXv-9g2.33b5b24000b2.js.gz +0 -0
  447. codex/static_root/assets/admin-settings-button-progress-wIXv-9g2.js.br +0 -0
  448. codex/static_root/assets/admin-settings-button-progress-wIXv-9g2.js.gz +0 -0
  449. codex/static_root/assets/browser-Bu37CzsR.483b0af62dd4.js +0 -1
  450. codex/static_root/assets/browser-Bu37CzsR.483b0af62dd4.js.br +0 -0
  451. codex/static_root/assets/browser-Bu37CzsR.483b0af62dd4.js.gz +0 -0
  452. codex/static_root/assets/browser-Bu37CzsR.js +0 -1
  453. codex/static_root/assets/browser-Bu37CzsR.js.br +0 -0
  454. codex/static_root/assets/browser-Bu37CzsR.js.gz +0 -0
  455. codex/static_root/assets/browser-ClPcbrsf.c8620affa34d.css.br +0 -0
  456. codex/static_root/assets/browser-ClPcbrsf.c8620affa34d.css.gz +0 -0
  457. codex/static_root/assets/browser-ClPcbrsf.css.br +0 -0
  458. codex/static_root/assets/browser-ClPcbrsf.css.gz +0 -0
  459. codex/static_root/assets/change-password-dialog-DOioR_QK.75126226aeee.js.br +0 -0
  460. codex/static_root/assets/change-password-dialog-DOioR_QK.75126226aeee.js.gz +0 -0
  461. codex/static_root/assets/change-password-dialog-DOioR_QK.js.br +0 -0
  462. codex/static_root/assets/change-password-dialog-DOioR_QK.js.gz +0 -0
  463. codex/static_root/assets/confirm-dialog-BRUkbajJ.9670ca0df005.js +0 -1
  464. codex/static_root/assets/confirm-dialog-BRUkbajJ.9670ca0df005.js.br +0 -0
  465. codex/static_root/assets/confirm-dialog-BRUkbajJ.9670ca0df005.js.gz +0 -0
  466. codex/static_root/assets/confirm-dialog-BRUkbajJ.js +0 -1
  467. codex/static_root/assets/confirm-dialog-BRUkbajJ.js.br +0 -0
  468. codex/static_root/assets/confirm-dialog-BRUkbajJ.js.gz +0 -0
  469. codex/static_root/assets/datetime-column-CdYfgPon.662194dbed49.js +0 -1
  470. codex/static_root/assets/datetime-column-CdYfgPon.662194dbed49.js.br +0 -0
  471. codex/static_root/assets/datetime-column-CdYfgPon.662194dbed49.js.gz +0 -0
  472. codex/static_root/assets/datetime-column-CdYfgPon.js +0 -1
  473. codex/static_root/assets/datetime-column-CdYfgPon.js.br +0 -0
  474. codex/static_root/assets/datetime-column-CdYfgPon.js.gz +0 -0
  475. codex/static_root/assets/filter-D-aPctKp.c9b14ffd360c.js +0 -1
  476. codex/static_root/assets/filter-D-aPctKp.c9b14ffd360c.js.br +0 -0
  477. codex/static_root/assets/filter-D-aPctKp.c9b14ffd360c.js.gz +0 -0
  478. codex/static_root/assets/filter-D-aPctKp.js +0 -1
  479. codex/static_root/assets/filter-D-aPctKp.js.br +0 -0
  480. codex/static_root/assets/filter-D-aPctKp.js.gz +0 -0
  481. codex/static_root/assets/flag-tab-kMgSs3vx.7ca3ec2db15e.js.br +0 -0
  482. codex/static_root/assets/flag-tab-kMgSs3vx.7ca3ec2db15e.js.gz +0 -0
  483. codex/static_root/assets/flag-tab-kMgSs3vx.js.br +0 -0
  484. codex/static_root/assets/flag-tab-kMgSs3vx.js.gz +0 -0
  485. codex/static_root/assets/forwardRefs-BhPKpkYY.1032af9ac8fd.css +0 -1
  486. codex/static_root/assets/forwardRefs-BhPKpkYY.1032af9ac8fd.css.br +0 -0
  487. codex/static_root/assets/forwardRefs-BhPKpkYY.1032af9ac8fd.css.gz +0 -0
  488. codex/static_root/assets/forwardRefs-BhPKpkYY.css +0 -1
  489. codex/static_root/assets/forwardRefs-BhPKpkYY.css.br +0 -0
  490. codex/static_root/assets/forwardRefs-BhPKpkYY.css.gz +0 -0
  491. codex/static_root/assets/forwardRefs-BxFNqo8E.00b94d8b82bf.js +0 -1
  492. codex/static_root/assets/forwardRefs-BxFNqo8E.00b94d8b82bf.js.br +0 -0
  493. codex/static_root/assets/forwardRefs-BxFNqo8E.00b94d8b82bf.js.gz +0 -0
  494. codex/static_root/assets/forwardRefs-BxFNqo8E.js +0 -1
  495. codex/static_root/assets/forwardRefs-BxFNqo8E.js.br +0 -0
  496. codex/static_root/assets/forwardRefs-BxFNqo8E.js.gz +0 -0
  497. codex/static_root/assets/group-tab-DK0pQx_6.e02dab76e8e6.js +0 -1
  498. codex/static_root/assets/group-tab-DK0pQx_6.e02dab76e8e6.js.br +0 -0
  499. codex/static_root/assets/group-tab-DK0pQx_6.e02dab76e8e6.js.gz +0 -0
  500. codex/static_root/assets/group-tab-DK0pQx_6.js +0 -1
  501. codex/static_root/assets/group-tab-DK0pQx_6.js.br +0 -0
  502. codex/static_root/assets/group-tab-DK0pQx_6.js.gz +0 -0
  503. codex/static_root/assets/http-error-D4kgjRm6.71e8ec284567.js +0 -1
  504. codex/static_root/assets/http-error-D4kgjRm6.71e8ec284567.js.br +0 -0
  505. codex/static_root/assets/http-error-D4kgjRm6.71e8ec284567.js.gz +0 -0
  506. codex/static_root/assets/http-error-D4kgjRm6.js +0 -1
  507. codex/static_root/assets/http-error-D4kgjRm6.js.br +0 -0
  508. codex/static_root/assets/http-error-D4kgjRm6.js.gz +0 -0
  509. codex/static_root/assets/index-D3gnYqT3.c326544f2853.js +0 -1
  510. codex/static_root/assets/index-D3gnYqT3.c326544f2853.js.br +0 -0
  511. codex/static_root/assets/index-D3gnYqT3.c326544f2853.js.gz +0 -0
  512. codex/static_root/assets/index-D3gnYqT3.js +0 -1
  513. codex/static_root/assets/index-D3gnYqT3.js.br +0 -0
  514. codex/static_root/assets/index-D3gnYqT3.js.gz +0 -0
  515. codex/static_root/assets/library-tab-MhD2T2Fw.052fe1d43941.js +0 -1
  516. codex/static_root/assets/library-tab-MhD2T2Fw.052fe1d43941.js.br +0 -0
  517. codex/static_root/assets/library-tab-MhD2T2Fw.052fe1d43941.js.gz +0 -0
  518. codex/static_root/assets/library-tab-MhD2T2Fw.js +0 -1
  519. codex/static_root/assets/library-tab-MhD2T2Fw.js.br +0 -0
  520. codex/static_root/assets/library-tab-MhD2T2Fw.js.gz +0 -0
  521. codex/static_root/assets/main-JUy8mnXG.d8a52b6ef508.js +0 -35
  522. codex/static_root/assets/main-JUy8mnXG.d8a52b6ef508.js.br +0 -0
  523. codex/static_root/assets/main-JUy8mnXG.d8a52b6ef508.js.gz +0 -0
  524. codex/static_root/assets/main-JUy8mnXG.js +0 -35
  525. codex/static_root/assets/main-JUy8mnXG.js.br +0 -0
  526. codex/static_root/assets/main-JUy8mnXG.js.gz +0 -0
  527. codex/static_root/assets/pager-full-pdf-CcORwqD4.78c861366624.js +0 -1
  528. codex/static_root/assets/pager-full-pdf-CcORwqD4.78c861366624.js.br +0 -0
  529. codex/static_root/assets/pager-full-pdf-CcORwqD4.78c861366624.js.gz +0 -0
  530. codex/static_root/assets/pager-full-pdf-CcORwqD4.js +0 -1
  531. codex/static_root/assets/pager-full-pdf-CcORwqD4.js.br +0 -0
  532. codex/static_root/assets/pager-full-pdf-CcORwqD4.js.gz +0 -0
  533. codex/static_root/assets/pagination-toolbar-Cufj0Rqv.3f3244ad0590.js +0 -1
  534. codex/static_root/assets/pagination-toolbar-Cufj0Rqv.3f3244ad0590.js.br +0 -0
  535. codex/static_root/assets/pagination-toolbar-Cufj0Rqv.3f3244ad0590.js.gz +0 -0
  536. codex/static_root/assets/pagination-toolbar-Cufj0Rqv.js +0 -1
  537. codex/static_root/assets/pagination-toolbar-Cufj0Rqv.js.br +0 -0
  538. codex/static_root/assets/pagination-toolbar-Cufj0Rqv.js.gz +0 -0
  539. codex/static_root/assets/pagination-toolbar-DkYjhdVb.css.br +0 -0
  540. codex/static_root/assets/pagination-toolbar-DkYjhdVb.css.gz +0 -0
  541. codex/static_root/assets/pagination-toolbar-DkYjhdVb.d431a5b140aa.css.br +0 -0
  542. codex/static_root/assets/pagination-toolbar-DkYjhdVb.d431a5b140aa.css.gz +0 -0
  543. codex/static_root/assets/pdf-doc-HpDB0I3q.a991cdc377eb.js.br +0 -0
  544. codex/static_root/assets/pdf-doc-HpDB0I3q.a991cdc377eb.js.gz +0 -0
  545. codex/static_root/assets/pdf-doc-HpDB0I3q.js.br +0 -0
  546. codex/static_root/assets/pdf-doc-HpDB0I3q.js.gz +0 -0
  547. codex/static_root/assets/reader-BIqif2zL.755da5eee67d.css.br +0 -0
  548. codex/static_root/assets/reader-BIqif2zL.755da5eee67d.css.gz +0 -0
  549. codex/static_root/assets/reader-BIqif2zL.css.br +0 -0
  550. codex/static_root/assets/reader-BIqif2zL.css.gz +0 -0
  551. codex/static_root/assets/reader-CgmGRxud.dd7fceeb36e4.js +0 -2
  552. codex/static_root/assets/reader-CgmGRxud.dd7fceeb36e4.js.br +0 -0
  553. codex/static_root/assets/reader-CgmGRxud.dd7fceeb36e4.js.gz +0 -0
  554. codex/static_root/assets/reader-CgmGRxud.js +0 -2
  555. codex/static_root/assets/reader-CgmGRxud.js.br +0 -0
  556. codex/static_root/assets/reader-CgmGRxud.js.gz +0 -0
  557. codex/static_root/assets/relation-chips-CV_iMj1X.de28053775a6.js +0 -1
  558. codex/static_root/assets/relation-chips-CV_iMj1X.de28053775a6.js.br +0 -0
  559. codex/static_root/assets/relation-chips-CV_iMj1X.de28053775a6.js.gz +0 -0
  560. codex/static_root/assets/relation-chips-CV_iMj1X.js +0 -1
  561. codex/static_root/assets/relation-chips-CV_iMj1X.js.br +0 -0
  562. codex/static_root/assets/relation-chips-CV_iMj1X.js.gz +0 -0
  563. codex/static_root/assets/relation-chips-D7i-g7Zv.57d1814a9e7a.css +0 -1
  564. codex/static_root/assets/relation-chips-D7i-g7Zv.57d1814a9e7a.css.br +0 -0
  565. codex/static_root/assets/relation-chips-D7i-g7Zv.57d1814a9e7a.css.gz +0 -0
  566. codex/static_root/assets/relation-chips-D7i-g7Zv.css +0 -1
  567. codex/static_root/assets/relation-chips-D7i-g7Zv.css.br +0 -0
  568. codex/static_root/assets/relation-chips-D7i-g7Zv.css.gz +0 -0
  569. codex/static_root/assets/settings-drawer-Cz7dC3Ew.c9ed8ca4d859.css +0 -1
  570. codex/static_root/assets/settings-drawer-Cz7dC3Ew.c9ed8ca4d859.css.br +0 -0
  571. codex/static_root/assets/settings-drawer-Cz7dC3Ew.c9ed8ca4d859.css.gz +0 -0
  572. codex/static_root/assets/settings-drawer-Cz7dC3Ew.css +0 -1
  573. codex/static_root/assets/settings-drawer-Cz7dC3Ew.css.br +0 -0
  574. codex/static_root/assets/settings-drawer-Cz7dC3Ew.css.gz +0 -0
  575. codex/static_root/assets/settings-drawer-p6ZjyJ07.128e2c761104.js +0 -2
  576. codex/static_root/assets/settings-drawer-p6ZjyJ07.128e2c761104.js.br +0 -0
  577. codex/static_root/assets/settings-drawer-p6ZjyJ07.128e2c761104.js.gz +0 -0
  578. codex/static_root/assets/settings-drawer-p6ZjyJ07.js +0 -2
  579. codex/static_root/assets/settings-drawer-p6ZjyJ07.js.br +0 -0
  580. codex/static_root/assets/settings-drawer-p6ZjyJ07.js.gz +0 -0
  581. codex/static_root/assets/ssrBoot-B73_e82Z.3d5063c17c68.js.br +0 -0
  582. codex/static_root/assets/ssrBoot-B73_e82Z.3d5063c17c68.js.gz +0 -0
  583. codex/static_root/assets/ssrBoot-B73_e82Z.js.br +0 -0
  584. codex/static_root/assets/ssrBoot-B73_e82Z.js.gz +0 -0
  585. codex/static_root/assets/stats-tab-Kt45gqtN.858a124412d0.js.br +0 -0
  586. codex/static_root/assets/stats-tab-Kt45gqtN.858a124412d0.js.gz +0 -0
  587. codex/static_root/assets/stats-tab-Kt45gqtN.js.br +0 -0
  588. codex/static_root/assets/stats-tab-Kt45gqtN.js.gz +0 -0
  589. codex/static_root/assets/task-tab-DDKv2JN0.ea54c5cf8e0f.js.br +0 -0
  590. codex/static_root/assets/task-tab-DDKv2JN0.ea54c5cf8e0f.js.gz +0 -0
  591. codex/static_root/assets/task-tab-DDKv2JN0.js.br +0 -0
  592. codex/static_root/assets/task-tab-DDKv2JN0.js.gz +0 -0
  593. codex/static_root/assets/unauthorized-CvdCW-Cq.a7bd69980089.js +0 -1
  594. codex/static_root/assets/unauthorized-CvdCW-Cq.a7bd69980089.js.br +0 -0
  595. codex/static_root/assets/unauthorized-CvdCW-Cq.a7bd69980089.js.gz +0 -0
  596. codex/static_root/assets/unauthorized-CvdCW-Cq.js +0 -1
  597. codex/static_root/assets/unauthorized-CvdCW-Cq.js.br +0 -0
  598. codex/static_root/assets/unauthorized-CvdCW-Cq.js.gz +0 -0
  599. codex/static_root/assets/unauthorized-DeuhBNVr.6261a283874e.css +0 -1
  600. codex/static_root/assets/unauthorized-DeuhBNVr.6261a283874e.css.br +0 -0
  601. codex/static_root/assets/unauthorized-DeuhBNVr.6261a283874e.css.gz +0 -0
  602. codex/static_root/assets/unauthorized-DeuhBNVr.css +0 -1
  603. codex/static_root/assets/unauthorized-DeuhBNVr.css.br +0 -0
  604. codex/static_root/assets/unauthorized-DeuhBNVr.css.gz +0 -0
  605. codex/static_root/assets/user-tab-77Bjv-sy.994ac66245a1.js.br +0 -0
  606. codex/static_root/assets/user-tab-77Bjv-sy.994ac66245a1.js.gz +0 -0
  607. codex/static_root/assets/user-tab-77Bjv-sy.js.br +0 -0
  608. codex/static_root/assets/user-tab-77Bjv-sy.js.gz +0 -0
  609. codex/static_root/manifest.800f1750bf03.json +0 -757
  610. codex/static_root/manifest.800f1750bf03.json.br +0 -0
  611. codex/static_root/manifest.800f1750bf03.json.gz +0 -0
  612. {codex-1.7.12.dist-info → codex-1.7.14.dist-info}/LICENSE +0 -0
  613. {codex-1.7.12.dist-info → codex-1.7.14.dist-info}/WHEEL +0 -0
  614. {codex-1.7.12.dist-info → codex-1.7.14.dist-info}/entry_points.txt +0 -0
@@ -1 +0,0 @@
1
- import{_ as m,C as c,l as e,k as s,q as l,a as o,w as u,aF as _,al as d}from"./main-JUy8mnXG.js";import{S as g,P as k}from"./reader-CgmGRxud.js";import F from"./pdf-doc-HpDB0I3q.js";import"./settings-drawer-p6ZjyJ07.js";import"./forwardRefs-BxFNqo8E.js";import"./unauthorized-CvdCW-Cq.js";import"./VDialog-CoOMSEbM.js";import"./change-password-dialog-DOioR_QK.js";import"./VForm-DXrmSq46.js";import"./VSelectionControl-DvYb3Pi4.js";import"./admin-BpE7-fB4.js";import"./ssrBoot-B73_e82Z.js";import"./copy-to-clipboard-DoUvDJVx.js";import"./VDivider-BXrVdmrm.js";import"./VWindowItem-rXg83yw2.js";import"./VSelect-BpkoCPsm.js";import"./VCheckboxBtn-D8jQ_2In.js";import"./pagination-toolbar-Cufj0Rqv.js";import"./VTable-DbFt9lJE.js";import"./confirm-dialog-BRUkbajJ.js";import"./VExpansionPanels-BvZsXmp0.js";import"./VRadioGroup-DgtijQjG.js";import"./VCheckbox-DtuP7Cwl.js";import"./index-D3gnYqT3.js";const P={name:"PagerFullPDF",components:{PageChangeLink:k,PDFDoc:F,ScaleForScroll:g},props:{book:{type:Object,required:!0}},emits:["load","error","unauthorized"],computed:{...c(d,{page:r=>r.page||0}),src(){return _(this.book)}}};function f(r,S,a,D,h,p){const t=e("PageChangeLink"),n=e("PDFDoc"),i=e("ScaleForScroll");return l(),s("span",null,[o(t,{direction:"prev"}),o(t,{direction:"next"}),o(i,null,{default:u(()=>[o(n,{book:a.book,page:r.page,src:p.src},null,8,["book","page","src"])]),_:1})])}const M=m(P,[["render",f]]);export{M as default};
@@ -1 +0,0 @@
1
- import{_ as m,C as c,l as e,k as s,q as l,a as o,w as u,aF as _,al as d}from"./main-JUy8mnXG.js";import{S as g,P as k}from"./reader-CgmGRxud.js";import F from"./pdf-doc-HpDB0I3q.js";import"./settings-drawer-p6ZjyJ07.js";import"./forwardRefs-BxFNqo8E.js";import"./unauthorized-CvdCW-Cq.js";import"./VDialog-CoOMSEbM.js";import"./change-password-dialog-DOioR_QK.js";import"./VForm-DXrmSq46.js";import"./VSelectionControl-DvYb3Pi4.js";import"./admin-BpE7-fB4.js";import"./ssrBoot-B73_e82Z.js";import"./copy-to-clipboard-DoUvDJVx.js";import"./VDivider-BXrVdmrm.js";import"./VWindowItem-rXg83yw2.js";import"./VSelect-BpkoCPsm.js";import"./VCheckboxBtn-D8jQ_2In.js";import"./pagination-toolbar-Cufj0Rqv.js";import"./VTable-DbFt9lJE.js";import"./confirm-dialog-BRUkbajJ.js";import"./VExpansionPanels-BvZsXmp0.js";import"./VRadioGroup-DgtijQjG.js";import"./VCheckbox-DtuP7Cwl.js";import"./index-D3gnYqT3.js";const P={name:"PagerFullPDF",components:{PageChangeLink:k,PDFDoc:F,ScaleForScroll:g},props:{book:{type:Object,required:!0}},emits:["load","error","unauthorized"],computed:{...c(d,{page:r=>r.page||0}),src(){return _(this.book)}}};function f(r,S,a,D,h,p){const t=e("PageChangeLink"),n=e("PDFDoc"),i=e("ScaleForScroll");return l(),s("span",null,[o(t,{direction:"prev"}),o(t,{direction:"next"}),o(i,null,{default:u(()=>[o(n,{book:a.book,page:r.page,src:p.src},null,8,["book","page","src"])]),_:1})])}const M=m(P,[["render",f]]);export{M as default};
@@ -1 +0,0 @@
1
- import{g as me,p as ne,d as at,t as E,u as he,a as o,J as Se,aW as Ve,_ as T,v,V as we,y as re,w as L,m as Z,q as u,a5 as Ce,D as oe,aX as st,M as N,k as p,G as h,n as ie,z,aw as it,ad as ye,aY as nt,aZ as rt,az as ot,l as _,A as fe,a_ as lt,a$ as ut,C as O,T as dt,$ as Fe,x as ae,s as g,ar as ct,b0 as mt,j as ht,b1 as ft,F as pe,af as pt,ab as vt,ac as gt,a8 as De,b2 as bt,X as kt,aa as yt,c as k,b3 as Ne,aP as Te,aR as Le,r as _e,b4 as _t,b5 as Ee,aV as St,aU as wt,i as ze,b6 as Ct,f as Q,S as Ie,ai as Tt,aL as Mt,b as Bt}from"./main-JUy8mnXG.js";import{w as Rt,V as ve,k as Oe,n as Vt,x as Nt,j as Lt,R as It,y as xt,u as $t,i as Pt,c as xe}from"./forwardRefs-BxFNqo8E.js";import{c as Ft,d as Dt}from"./VSelect-BpkoCPsm.js";import{a as Et,c as zt,d as Ot,V as At}from"./VDialog-CoOMSEbM.js";import{C as Gt}from"./change-password-dialog-DOioR_QK.js";import{d as jt,f as Ut,u as qt,m as Ht,g as Kt,h as $e,i as Wt}from"./VSelectionControl-DvYb3Pi4.js";import{V as Ae}from"./VTable-DbFt9lJE.js";import{C as Ge}from"./confirm-dialog-BRUkbajJ.js";import{P as Yt,V as Zt}from"./unauthorized-CvdCW-Cq.js";const Xt=ne({...Se(),...Rt({variant:"text"})},"VToolbarItems"),ni=me()({name:"VToolbarItems",props:Xt(),setup(e,t){let{slots:a}=t;return at({VBtn:{color:E(e,"color"),height:"inherit",variant:E(e,"variant")}}),he(()=>{var n;return o("div",{class:["v-toolbar-items",e.class],style:e.style},[(n=a.default)==null?void 0:n.call(a)])}),{}}}),ke=new Set(["",Ve,Ve.toString(),void 0]),Jt=function(e){let t;if(ke.has(e))t=e;else if(e instanceof Object)if("ids"in e){const a=new Set(e.ids);ke.intersection(a).size>0?t=void 0:t={value:e.ids.join(","),title:e.name}}else ke.has(e.pk)?t=void 0:t={value:e.pk,title:e.name};else t={value:e,title:e.toString()};return e!=null&&e.url&&(t.url=e.url),t},Qt=function(e,t){return e.title<t.title?-1:e.title>t.title?1:0},ea=function(e,t){return Number.parseFloat(e.title)-Number.parseFloat(t.title)},ta=function(e,t,a=!1){var l;const n=e||[],r=t&&t.toLowerCase();let s=[];for(const d of n){const m=Jt(d);m!=null&&(!r||(l=m==null?void 0:m.title)!=null&&l.toLowerCase().includes(r))&&s.push(m)}const i=a?ea:Qt;return s.sort(i)},aa={name:"ToolbarSelect",props:{selectLabel:{type:String,default:""},maxSelectLen:{type:Number,default:0}},computed:{style(){if(this.maxSelectLen){const e=this.$vuetify.display.xs?"max-width":"width",t=this.maxSelectLen*.7+"em";return`${e}: ${t}`}return""}}};function sa(e,t,a,n,r,s){return u(),v(Ft,Z(e.$attrs,{label:a.selectLabel,"aria-label":a.selectLabel,class:"toolbarSelect",density:"compact","full-width":"","menu-props":{maxHeight:void 0},"hide-details":"auto",style:s.style,variant:"plain"}),we({item:L(({item:i,props:l})=>[o(Et,Z(l,{density:"compact",variant:"plain",title:i.title,value:i.value}),null,16,["title","value"])]),_:2},[re(e.$slots,(i,l)=>({name:l,fn:L(d=>[Ce(e.$slots,l,Z({props:i},d),void 0,!0)])}))]),1040,["label","aria-label","style"])}const ri=T(aa,[["render",sa],["__scopeId","data-v-cda2da63"]]),oi=zt("v-spacer","div","VSpacer"),ia={name:"BookCover",props:{group:{type:String,required:!0},pks:{type:Array,required:!0},childCount:{type:Number,default:1},finished:{type:Boolean},mtime:{type:Number,default:Date.now()}},data(){return{showPlaceholder:!1}},computed:{...oe(N,["coverSettings"]),coverSrc(){return st({group:this.group,pks:this.pks},this.coverSettings,this.mtime)},multiPkClasses(){const e=this.pks.length,t={};return e>=4?t.stack4=!0:e>1&&(t[`stack${e}`]=!0),t}},mounted:function(){this.delayPlaceholder()},methods:{delayPlaceholder:function(){setTimeout(()=>{this.showPlaceholder=!0},2e3)}}},na={class:"bookCover"},ra={key:1,class:"childCount"};function oa(e,t,a,n,r,s){return u(),p("div",na,[o(Ot,{src:s.coverSrc,class:ie(["coverImg",s.multiPkClasses])},null,8,["src","class"]),a.finished!==!0?(u(),p("div",{key:0,class:ie({unreadFlag:!0,mixedreadFlag:a.finished===null})},null,2)):h("",!0),a.group!=="c"?(u(),p("span",ra,z(a.childCount),1)):h("",!0)])}const la=T(ia,[["render",oa],["__scopeId","data-v-de968aef"]]),ua=10,da={name:"DownloadButton",components:{ConfirmDialog:Ge},props:{button:{type:Boolean,default:!1},item:{type:Object,required:!0}},data(){return{mdiDownload:ot}},computed:{...oe(N,["filterOnlySettings","groupNames"]),show(){var e,t;return((t=(e=this.item)==null?void 0:e.ids)==null?void 0:t.length)>0&&!this.item.ids.includes(0)},isOneComic(){var e,t,a;return((e=this.item)==null?void 0:e.group)==="c"&&((a=(t=this.item)==null?void 0:t.ids)==null?void 0:a.length)===1},downloadFn(){var e;return this.isOneComic?this.item.name:`${this.groupNames[(e=this.item)==null?void 0:e.group]} - ${this.item.name} Comics.zip`},downloadURL(){var t,a,n,r;let e="";if(this.isOneComic){const s=this.item.ids[0];e=nt({pk:s},this.downloadFn,(t=this.item)==null?void 0:t.mtime)}else{const s=(a=this.item)==null?void 0:a.group,i=(n=this.item)==null?void 0:n.ids,l=this.filterOnlySettings;e=rt({group:s,pks:i},this.downloadFn,l,(r=this.item)==null?void 0:r.mtime)}return e},formattedChildren(){var e;return ye.format((e=this.item)==null?void 0:e.childCount)},title(){let e="Download";return e+=this.isOneComic?" Book":` ${this.formattedChildren} Books`,e},confirm(){var e;return((e=this.item)==null?void 0:e.childCount)>ua},confirmText(){return this.confirm?`Download ${this.formattedChildren} books`:""}},methods:{download(){const e=this.downloadURL,t=this.downloadFn;if(this.isOneComic)it(e,t);else{const a=document.createElement("a");a.download=this.downloadFn,a.href=this.downloadURL,a.click(),a.remove()}}}};function ca(e,t,a,n,r,s){const i=_("ConfirmDialog");return s.show?(u(),v(i,{key:0,button:a.button,"button-text":s.title,confirm:s.confirm,"confirm-text":"Download","prepend-icon":r.mdiDownload,"title-text":s.title,text:"May take a while",onConfirm:s.download},null,8,["button","button-text","confirm","prepend-icon","title-text","onConfirm"])):h("",!0)}const ma=T(da,[["render",ca],["__scopeId","data-v-b589c090"]]),ha=1,fa={name:"MarkReadButton",components:{ConfirmDialog:Ge},props:{button:{type:Boolean,default:!1},item:{type:Object,required:!0}},computed:{...oe(N,["groupNames"]),verb(){return this.item.finished?"Unread":"Read"},confirm(){return this.item.children>ha},show(){var e,t;return((t=(e=this.item)==null?void 0:e.ids)==null?void 0:t.length)>0&&!this.item.ids.includes(0)},icon(){return this.item.finished?lt:ut},confirmText(){return this.confirm?`Mark ${this.verb}`:""},markReadText(){const e=["Mark"];this.item.group!="c"&&e.push("Entire");const t=this.groupNames[this.item.group];return e.push(t,this.verb),e.join(" ")},itemName(){return this.item.name||"(Empty)"}},methods:{...fe(N,["setBookmarkFinished"]),toggleRead:function(){this.setBookmarkFinished(this.item,!this.item.finished)}}};function pa(e,t,a,n,r,s){const i=_("ConfirmDialog");return s.show?(u(),v(i,{key:0,button:a.button,"button-text":s.markReadText,confirm:s.confirm,"confirm-text":s.confirmText,"prepend-icon":s.icon,"title-text":s.markReadText,text:s.itemName,onConfirm:s.toggleRead},null,8,["button","button-text","confirm","confirm-text","prepend-icon","title-text","text","onConfirm"])):h("",!0)}const va=T(fa,[["render",pa],["__scopeId","data-v-c904f535"]]),ga=["B","kB","MB","GB","TB","PB","EB","ZB","YB"],ba=["B","KiB","MiB","GiB","TiB","PiB","EiB","ZiB","YiB"],ka=["b","kbit","Mbit","Gbit","Tbit","Pbit","Ebit","Zbit","Ybit"],ya=["b","kibit","Mibit","Gibit","Tibit","Pibit","Eibit","Zibit","Yibit"],Pe=(e,t,a)=>{let n=e;return typeof t=="string"||Array.isArray(t)?n=e.toLocaleString(t,a):(t===!0||a!==void 0)&&(n=e.toLocaleString(void 0,a)),n};function je(e,t){if(!Number.isFinite(e))throw new TypeError(`Expected a finite number, got ${typeof e}: ${e}`);t={bits:!1,binary:!1,space:!0,...t};const a=t.bits?t.binary?ya:ka:t.binary?ba:ga,n=t.space?" ":"";if(t.signed&&e===0)return` 0${n}${a[0]}`;const r=e<0,s=r?"-":t.signed?"+":"";r&&(e=-e);let i;if(t.minimumFractionDigits!==void 0&&(i={minimumFractionDigits:t.minimumFractionDigits}),t.maximumFractionDigits!==void 0&&(i={maximumFractionDigits:t.maximumFractionDigits,...i}),e<1){const b=Pe(e,t.locale,i);return s+b+n+a[0]}const l=Math.min(Math.floor(t.binary?Math.log(e)/Math.log(1024):Math.log10(e)/3),a.length-1);e/=(t.binary?1024:1e3)**l,i||(e=e.toPrecision(3));const d=Pe(Number(e),t.locale,i),m=a[l];return s+d+n+m}const _a={name:"MetadataExpandButton"};function Sa(e,t,a,n,r,s){return u(),v(ve,{density:"compact",text:"...expand",variant:"text"})}const wa=T(_a,[["render",Sa]]),Ca={name:"MetadataTextBox",components:{ExpandButton:wa},props:{group:{type:String,default:""},highlight:{type:Boolean,default:!1},label:{type:String,default:""},maxHeight:{type:Number,default:0},value:{type:[Object,String,Number,Boolean],default:void 0}},data(){return{mdiOpenInNew:Fe,expanded:!1,mounted:!1}},computed:{...oe(N,["groupNames"]),...O(N,{browserShow:e=>e.settings.show,browserTopGroup:e=>e.settings.topGroup,folderViewEnabled:e=>e.page.adminFlags.folderView}),computedValue(){return this.value&&this.value.name!==void 0?this.value.name:this.value},lastSlashIndex(){return this.computedValue.lastIndexOf("/")+1},displayValue(){let e;return this.group==="f"&&this.computedValue?e=this.computedValue.slice(0,Math.max(0,this.lastSlashIndex)):this.group==="v"&&this.computedValue?e=dt(this.computedValue):e=this.computedValue,e},textValueStyles(){const e=this.maxHeight>0&&!this.expanded?this.maxHeight:0;return e?"max-height: "+e+"px;":""},textValueRefName(){return"mdTextValue"+this.label.replaceAll(" ","")},isOverflow(){if(!this.mounted)return!1;const e=this.$refs[this.textValueRefName];return e?e.clientHeight<e.scrollHeight:!1},showExpandButton(){return!this.expanded&&this.maxHeight>0&&this.isOverflow},linkPks(){return(this.value.ids||[this.value.pk]).join(",")},clickable(){var t;const e=this.$router.currentRoute.value.params;return!this.group||e.group===this.group||this.group==="f"&&!this.folderViewEnabled||!["a","f"].includes(this.group)&&!this.browserShow[this.group]?!1:!!((t=this.linkPks)!=null&&t.length)},classes(){return{clickable:this.clickable,highlight:this.highlight}},toRoute(){if(!this.clickable)return"";const e=this.group,t=this.linkPks;return{name:"browser",params:{group:e,pks:t,page:1}}},linkSettings(){return{topGroup:this.getTopGroup(this.group)}},title(){let e;return this.label?e=this.label:this.group?e=this.groupNames[this.group]:e="",this.toRoute?`Browse to ${e}`:e},baseName(){return this.group==="f"?this.computedValue.slice(Math.max(0,this.lastSlashIndex)):""}},mounted(){this.mounted=!0},methods:{...fe(N,["routeWithSettings","getTopGroup"]),onClick(){this.clickable&&this.routeWithSettings(this.linkSettings,this.toRoute)}}},Ta={key:0,class:"text"},Ma={key:0,class:"textLabel"},Ba=["title"],Ra={key:0,class:"textContent"};function Va(e,t,a,n,r,s){const i=_("ExpandButton");return s.displayValue?(u(),p("div",Ta,[a.label?(u(),p("div",Ma,[ae(z(a.label)+" ",1),s.showExpandButton?(u(),v(i,{key:0,class:"expandButton",onClick:t[0]||(t[0]=l=>r.expanded=!0)})):h("",!0)])):h("",!0),o(jt,null,{default:L(()=>[g("div",null,[g("div",{ref:s.textValueRefName,class:"textValue",style:ct(s.textValueStyles)},[g("span",{class:ie(["textContent",s.classes]),title:s.title,onClick:t[1]||(t[1]=(...l)=>s.onClick&&s.onClick(...l))},z(s.displayValue),11,Ba),s.baseName?(u(),p("span",Ra,z(s.baseName),1)):h("",!0)],4),s.showExpandButton&&!a.label?(u(),v(i,{key:0,class:"expandButton",onClick:t[2]||(t[2]=l=>r.expanded=!0)})):h("",!0)])]),_:1})])):h("",!0)}const Me=T(Ca,[["render",Va],["__scopeId","data-v-41dc5477"]]),Ue=["creators","writers","pencillers","inkers","cover_artists","colorists","letterers","editors"];Object.freeze(Ue);const qe=["genres","characters","teams","locations","seriesGroups","stories","storyArcNumbers","tags"];Object.freeze(qe);const W=mt("metadata",{state:()=>({md:void 0}),getters:{_mappedContributors(e){var a;const t={};if(!((a=e==null?void 0:e.md)!=null&&a.contributors))return t;for(const{role:n,person:r}of e.md.contributors){const s=n.name+"s";s in t||(t[s]=[]),t[s].push(r)}return t},_sortedRoles(e){let t=[];const a=new Set(Object.keys(e._mappedContributors));for(const r of Ue)a.has(r)&&(t.push(r),a.delete(r));const n=[...a].sort();return[...t,...n]},contributors(e){return this.mapTag(e._mappedContributors,e._sortedRoles,"contributors")},identifiers(e){var a;const t=[];if(!((a=e.md)!=null&&a.identifiers))return t;for(const n of this.md.identifiers){const r=n.name.split(":"),s=r[0],i=r[1],l=N().identifierTypeTitle(s);let d="";l&&l!=="None"&&(d+=l+":"),d+=i;const m={pk:n.pk,url:n.url,name:d};t.push(m)}return t},tags(e){const t=e.mapTag(e.md,qe);return this.identifiers&&(t.Identifiers={filter:"identifiers",tags:this.identifiers}),t}},actions:{async loadMetadata({group:e,pks:t}){await ft.getMetadata({group:e,pks:t},N().metadataSettings).then(a=>{const n={...a.data};return n.loaded=!0,this.md=n,!0}).catch(a=>{console.error(a),this.clearMetadata()})},clearMetadata(){this.md=void 0},mapTag(e,t,a){const n={};for(const r of t){let s=e[r];if(!(s!=null&&s.length))continue;let i;a?i=a:r==="storyArcNumbers"?i="storyArcs":i=r;const l=ht(r);s=s.sort((d,m)=>d.name.localeCompare(m.name)),n[l]={filter:i,tags:s}}return n}}}),Na={name:"MetadataRatings",components:{MetadataText:Me},computed:{...O(W,{md:e=>e.md}),show(){var e,t,a;return((e=this.md)==null?void 0:e.communityRating)||((t=this.md)==null?void 0:t.criticRating)||((a=this.md)==null?void 0:a.ageRating)}}},La={key:0},Ia={key:1},xa={key:2};function $a(e,t,a,n,r,s){const i=_("MetadataText");return s.show?(u(),v(Ae,{key:0},{default:L(()=>[g("tbody",null,[e.md.communityRating?(u(),p("tr",La,[t[0]||(t[0]=g("td",{class:"key"},"Community Rating",-1)),g("td",null,[o(i,{value:e.md.communityRating},null,8,["value"])])])):h("",!0),e.md.criticalRating?(u(),p("tr",Ia,[t[1]||(t[1]=g("td",{class:"key"},"Critical Rating",-1)),g("td",null,[o(i,{value:e.md.criticalRating},null,8,["value"])])])):h("",!0),e.md.ageRating?(u(),p("tr",xa,[t[2]||(t[2]=g("td",{class:"key"},"Age Rating",-1)),g("td",null,[o(i,{value:e.md.ageRating},null,8,["value"])])])):h("",!0)])]),_:1})):h("",!0)}const Pa=T(Na,[["render",$a],["__scopeId","data-v-c3e9cb26"]]),Fa=new Set(["p","i","s","v"]),Da={name:"MetadataTags",props:{item:{type:Object,required:!0},filter:{type:String,default:""}},data(){return{mdiOpenInNew:Fe}},computed:{...O(N,{browserShow:e=>e.settings.show,filterValues(e){return e.settings.filters[this.filter]},topGroup:e=>e.settings.topGroup}),...O(W,{mdGroup:e=>e.md.group,mdIds:e=>e.md.ids}),groupMode(){return Fa.has(this.filter)},clickable(){return this.filter&&this.item.value&&(!this.groupMode||this.browserShow[this.filter])},classes(){return{clickable:(this.clickable||this.item.url)&&!this.highlight}},highlight(){var e;return!!(this.groupMode&&this.filter===this.mdGroup&&this.mdIds.includes(this.item.value)||(e=this.filterValues)!=null&&e.includes(this.item.value))},variant(){return this.highlight?"flat":"tonal"},color(){const e=this.$vuetify.theme.current.colors;return this.highlight?e["primary-darken-1"]:""},linkGroup(){let e;return this.groupMode?e=this.filter:e=["f","s"].includes(this.topGroup)?this.topGroup:"r",e},linkPks(){return this.groupMode||this.linkGroup!=="a"&&this.filter==="storyArcs"?this.item.value.toString():"0"},toRoute(){if(!this.clickable)return"";const e=this.linkGroup,t=this.linkPks;return{name:"browser",params:{group:e,pks:t,page:1}}},linkSettings(){let e;return this.linkPks==="0"?e={filters:{[this.filter]:[this.item.value]}}:e={topGroup:this.getTopGroup(this.linkGroup)},e}},methods:{...fe(N,["routeWithSettings","getTopGroup"]),async onClick(){this.clickable&&this.routeWithSettings(this.linkSettings,this.toRoute)}}},Ea=["href"],za={key:1};function Oa(e,t,a,n,r,s){return u(),v(Dt,{class:ie(s.classes),color:s.color,value:a.item.value,variant:s.variant,onClick:s.onClick},{default:L(()=>[a.item.url?(u(),p("a",{key:0,href:a.item.url,target:"_blank"},[ae(z(a.item.title),1),o(Oe,null,{default:L(()=>[ae(z(r.mdiOpenInNew),1)]),_:1})],8,Ea)):(u(),p("span",za,z(a.item.title),1))]),_:1},8,["class","color","value","variant","onClick"])}const Aa=T(Da,[["render",Oa],["__scopeId","data-v-90b0c4fe"]]),Ga={name:"MetadataTags",components:{MetadataChip:Aa},props:{label:{type:String,default:""},values:{type:Array,default(){return[]}},filter:{type:String,required:!1,default:void 0}},computed:{items(){return ta(this.values)}}},ja={key:0},Ua={key:0,class:"chipGroupLabel"};function qa(e,t,a,n,r,s){var l;const i=_("MetadataChip");return((l=s.items)==null?void 0:l.length)>0?(u(),p("div",ja,[a.label?(u(),p("div",Ua,z(a.label),1)):h("",!0),g("div",null,[(u(!0),p(pe,null,re(s.items,d=>(u(),v(i,{key:`${a.filter}/${d.value}`,filter:a.filter,item:d},null,8,["filter","item"]))),128))])])):h("",!0)}const He=T(Ga,[["render",qa],["__scopeId","data-v-b7cb58ab"]]),Ha={name:"MetadataTagsTable",components:{MetadataTags:He},props:{tagMap:{type:Object,required:!0}},computed:{show(){return Object.keys(this.tagMap).length>0}}},Ka={class:"key"},Wa={class:"tags"};function Ya(e,t,a,n,r,s){const i=_("MetadataTags");return s.show?(u(),v(Ae,{key:0},{default:L(()=>[g("tbody",null,[(u(!0),p(pe,null,re(Object.entries(a.tagMap),([l,{filter:d,tags:m}])=>(u(),p("tr",{key:l},[g("td",Ka,z(l),1),g("td",Wa,[o(i,{filter:d,values:m},null,8,["filter","values"])])]))),128))])]),_:1})):h("",!0)}const Za=T(Ha,[["render",Ya],["__scopeId","data-v-bbaac1cc"]]),Xa={name:"MetadataBody",components:{MetadataRatings:Pa,MetadataTagsTable:Za,MetadataText:Me},props:{group:{type:String,required:!0},book:{type:Object,required:!0}},computed:{...oe(W,["contributors","ratings","tags"]),...O(N,{twentyFourHourTime:e=>{var t;return(t=e.settings)==null?void 0:t.twentyFourHourTime},readingDirectionTitles:e=>e.choices.static.readingDirection}),...O(W,{md:e=>e.md}),readingDirectionText(){return this.md?this.readingDirectionTitles[this.md.readingDirection]:"Unknown"},size(){var e;return((e=this==null?void 0:this.md)==null?void 0:e.size)>0?je(this.md.size):0},sizeLabel(){var e;return((e=this==null?void 0:this.md)==null?void 0:e.group)==="c"?"Size":"Total Size"},fileType(){var e;return((e=this==null?void 0:this.md)==null?void 0:e.fileType)||"Unknown"}},methods:{formatDateTime(e){return pt(e,this.twentyFourHourTime)}}},Ja={id:"metadataBody"},Qa={class:"mdSection"},es={class:"mdSection"},ts={class:"quarterRow"},as={class:"thirdRow"},ss={class:"lastSmallRow"},is={key:0,class:"halfRow mdSection"},ns={class:"mdSection"},rs={class:"inlineRow"},os={class:"inlineRow"};function ls(e,t,a,n,r,s){var m,b;const i=_("MetadataText"),l=_("MetadataTagsTable"),d=_("MetadataRatings");return u(),p("div",Ja,[g("section",Qa,[o(i,{value:e.md.summary,"max-height":100},null,8,["value"]),o(i,{value:e.md.review,label:"Review","max-height":100},null,8,["value"])]),o(l,{"tag-map":e.contributors,class:"mdSection"},null,8,["tag-map"]),g("section",es,[g("div",ts,[e.md.createdAt?(u(),v(i,{key:0,value:s.formatDateTime(e.md.createdAt),label:"Created at",class:"mtime"},null,8,["value"])):h("",!0),e.md.updatedAt?(u(),v(i,{key:1,value:s.formatDateTime(e.md.updatedAt),label:"Updated at",class:"mtime"},null,8,["value"])):h("",!0),o(i,{value:s.size,label:s.sizeLabel},null,8,["value","label"]),o(i,{value:s.fileType,label:"File Type"},null,8,["value"])]),g("div",as,[o(i,{label:"Reading Direction",value:s.readingDirectionText},null,8,["value"]),o(i,{value:e.md.original_format,label:"Original Format"},null,8,["value"]),o(i,{value:(!!e.md.monochrome).toString(),label:"Monochrome"},null,8,["value"])]),g("div",ss,[o(i,{group:"f",value:{pk:e.md.parentFolderId,name:e.md.path},label:"Path"},null,8,["value"])])]),(m=e.md)!=null&&m.country||(b=e.md)!=null&&b.language?(u(),p("section",is,[o(i,{value:e.md.country,label:"Country"},null,8,["value"]),o(i,{value:e.md.language,label:"Language"},null,8,["value"])])):h("",!0),o(d,{class:"mdSection"}),o(l,{"tag-map":e.tags,class:"mdSection"},null,8,["tag-map"]),g("section",ns,[g("section",rs,[o(i,{value:e.md.notes,label:"Notes"},null,8,["value"])]),g("section",os,[o(i,{value:e.md.tagger,label:"Tagger"},null,8,["value"]),o(i,{value:e.md.scanInfo,label:"Scan"},null,8,["value"])])])])}const us=T(Xa,[["render",ls],["__scopeId","data-v-d2a60d46"]]),Ke=new Set("rtl","btt");Object.freeze(Ke);const We=({ids:e,page:t,readingDirection:a,pageCount:n},r)=>{if(e.length===0||r&&!n)return"";const s=e[0];if(t)t=Number(t);else if(Ke.has(a)){const i=Number(n)-1;t=Math.max(i,0)}else t=0;return{name:"reader",params:{pk:s,page:t}}},Ye={p:"publisher",i:"imprint",s:"series",v:"volume",f:"folder",a:"storyArc"};Object.freeze(Ye);const ds={name:"MetadataControls",components:{DownloadButton:ma,MarkReadButton:va},props:{group:{type:String,required:!0}},computed:{...O(W,{md:e=>e.md}),...O(N,{importMetadata:e=>{var t,a;return(a=(t=e.page)==null?void 0:t.adminFlags)==null?void 0:a.importMetadata}}),downloadName(){const e=this.md;let t;if(!e)t="Unknown.cbz";else if(e.fileName)t=e.fileName;else{if(this.md.group==="f")return[this.firstNameFromList(e.folderList)];if(this.md.group==="a")return[this.firstNameFromList(e.storyArcList)];t=[this.firstNameFromList(e.publisherList),this.firstNameFromList(e.imprintList),this.firstNameFromList(e.seriesList),this.firstNameFromList(e.volumeList),De(this.md,3),this.md.name].filter(Boolean).join(" ")}return t},downloadItem(){var e,t,a,n;return{group:(e=this.md)==null?void 0:e.group,ids:(t=this.md)==null?void 0:t.ids,childCount:(a=this.md)==null?void 0:a.childCount,mtime:(n=this.md)==null?void 0:n.mtime,name:this.downloadName}},isReadButtonShown(){return this.group==="c"&&this.$route.name!="reader"},isReadButtonEnabled(){return!!this.readerRoute},markReadItem(){let e="";const t=Ye[this.md.group];return t?e=(this.md[t+"List"]||[]).map(({name:r})=>r).join(", "):e=this.md.name,{group:this.md.group,ids:this.md.ids,finished:this.md.finished,name:e,children:this.md.childCount||1}},readButtonIcon(){return this.isReadButtonEnabled?vt:gt},readerRoute(){var e;return(e=this.md)!=null&&e.ids?We(this.md,this.importMetadata):{}},size(){return this.$vuetify.display.smAndDown?"x-small":"default"}},methods:{firstNameFromList(e){let t="";if(!e)return t;for(const a of Object.values(e))if(a.name){t=a.name;break}return t}}},cs={class:"controlRow"};function ms(e,t,a,n,r,s){const i=_("DownloadButton"),l=_("MarkReadButton");return u(),p("section",cs,[o(i,{id:"downloadButton",button:!0,item:s.downloadItem,size:s.size},null,8,["item","size"]),o(l,{id:"markReadButton",button:!0,item:s.markReadItem,size:s.size},null,8,["item","size"]),s.isReadButtonShown?(u(),v(ve,{key:0,id:"readButton",title:"Read Comic",disabled:!s.isReadButtonEnabled,size:s.size,to:s.readerRoute},{default:L(()=>[o(Oe,null,{default:L(()=>[ae(z(s.readButtonIcon),1)]),_:1}),t[0]||(t[0]=ae(" Read "))]),_:1},8,["disabled","size","to"])):h("",!0)])}const hs=T(ds,[["render",ms],["__scopeId","data-v-d254bb05"]]),fs={name:"MetadataBookCover",components:{BookCover:la},props:{group:{type:String,required:!0}},computed:{...O(W,{md:e=>e.md})}},ps={class:"bookCoverWrapper"};function vs(e,t,a,n,r,s){const i=_("BookCover");return u(),p("div",ps,[o(i,{id:"bookCover",group:a.group,pks:e.md.ids,"child-count":e.md.childCount,finished:e.md.finished,mtime:e.md.mtime},null,8,["group","pks","child-count","finished","mtime"]),o(Vt,{class:"bookCoverProgress","model-value":e.md.progress,rounded:"","background-color":"inherit",height:"2","aria-label":"% read"},null,8,["model-value"])])}const gs=T(fs,[["render",vs],["__scopeId","data-v-3a0db03b"]]),bs={name:"MetadataHeader",components:{MetadataBookCover:gs,MetadataControls:hs,MetadataTags:He,MetadataText:Me},props:{group:{type:String,required:!0}},computed:{...O(N,{importMetadata:e=>{var t,a;return(a=(t=e.page)==null?void 0:t.adminFlags)==null?void 0:a.importMetadata},q:e=>e.settings.q}),...O(W,{md:e=>e.md}),date(){if(!this.md.year&&!this.md.month&&!this.md.day)return"";const e=new Date(this.md.year||1970,this.md.month||1,this.md.day||1),t={};return this.md.year&&(t.year="numeric"),this.md.month&&(t.month=this.$vuetify.display.smAndDown?"short":"long"),this.md.day&&(t.day="numeric"),e.toLocaleDateString("default",t)},readerRoute(){var e;return(e=this.md)!=null&&e.ids?We(this.md,this.importMetadata):{}},formattedIssueNumber(){if(!this.md)return"Unknown";if(!((this.md.issueNumber===null||this.md.issueNumber===void 0)&&!this.md.issueSuffix))return"#"+De(this.md)},pages(){let e="";if(!this.md)return e;if(this.md.page){const a=ye.format(this.md.page);e+=this.$vuetify.display.smAndDown?`${a} / `:`Read ${a} of `}const t=ye.format(this.md.pageCount);return e+=`${t} page`,this.md.pageCount!==1&&(e+="s"),this.$vuetify.display.smAndUp&&this.md.progress>0&&(e+=` (${Math.round(this.md.progress)}%)`),e},size(){var e;return((e=this==null?void 0:this.md)==null?void 0:e.size)>0?je(this.md.size):0},fileType(){var e;return((e=this==null?void 0:this.md)==null?void 0:e.fileType)||"Unknown"},seriesVolumeCount(){const e=this.md.seriesVolumeCount;return e?`of ${e}`:""},volumeIssueCount(){const e=this.md.volumeIssueCount;return e?`/ ${e}`:""}}},ks={id:"metadataHeader"},ys={key:1,id:"seriesHeader"},_s={id:"seriesRow",class:"inlineRow"},Ss={key:2,id:"titleRow"},ws={key:4,id:"publisherRow",class:"inlineRow"},Cs={key:7,id:"pageDateRow",class:"inlineRow"};function Ts(e,t,a,n,r,s){var b,w,R,I,A,$,j,G;const i=_("MetadataText"),l=_("MetadataBookCover"),d=_("MetadataTags"),m=_("MetadataControls");return u(),p(pe,null,[g("header",ks,[e.q?(u(),v(i,{key:0,id:"search",value:e.q,label:"Search Query",highlight:!0},null,8,["value"])):h("",!0),o(l,{id:"metadataBookCover",group:a.group},null,8,["group"]),((b=e.md.seriesList)==null?void 0:b.length)===1?(u(),p("section",ys,[g("div",_s,[(u(),v(i,{id:"series",key:e.md.seriesList[0].ids,value:e.md.seriesList[0],group:"s",highlight:e.md.group==="s"},null,8,["value","highlight"])),((w=e.md.volumeList)==null?void 0:w.length)===1?(u(),v(i,{id:"volume",key:e.md.volumeList[0].ids,value:e.md.volumeList[0],group:"v",highlight:e.md.group==="v"},null,8,["value","highlight"])):h("",!0),o(i,{value:s.seriesVolumeCount,class:"subdued"},null,8,["value"]),o(i,{id:"issue",value:s.formattedIssueNumber,group:"c",highlight:e.md.group==="c"},null,8,["value","highlight"]),o(i,{value:s.volumeIssueCount,class:"subdued"},null,8,["value"])])])):h("",!0),e.md.name?(u(),p("span",Ss,z(e.md.name),1)):h("",!0),((R=e.md.seriesList)==null?void 0:R.length)>1?(u(),v(d,{key:3,id:"seriesTags",class:"groupTags",label:"Series",values:e.md.seriesList,filter:"s"},null,8,["values"])):h("",!0),g("div",null,[((I=e.md.volumeList)==null?void 0:I.length)>1?(u(),v(d,{key:0,id:"volumeTags",class:"groupTags",label:"Volumes",values:e.md.volumeList,filter:"v"},null,8,["values"])):h("",!0)]),((A=e.md.publisherList)==null?void 0:A.length)===1?(u(),p("div",ws,[(u(),v(i,{id:"publisher",key:e.md.publisherList[0].ids,group:"p",highlight:e.md.group==="p",value:e.md.publisherList[0]},null,8,["highlight","value"])),(($=e.md.imprintList)==null?void 0:$.length)===1?(u(),v(i,{id:"imprint",key:e.md.imprintList[0].ids,group:"i",highlight:e.md.group==="i",value:e.md.imprintList[0]},null,8,["highlight","value"])):h("",!0)])):h("",!0),((j=e.md.publisherList)==null?void 0:j.length)>1?(u(),v(d,{key:5,id:"publisherTags",class:"groupTags",label:"Publishers",values:e.md.publisherList,filter:"p"},null,8,["values"])):h("",!0),((G=e.md.imprintList)==null?void 0:G.length)>1?(u(),v(d,{key:6,id:"imprintTags",class:"groupTags",label:"Imprints",values:e.md.imprintList,filter:"i"},null,8,["values"])):h("",!0),s.pages||e.md.year||e.md.month||e.md.day?(u(),p("div",Cs,[o(i,{value:s.pages},null,8,["value"]),o(i,{value:s.date,class:"datePicker"},null,8,["value"])])):h("",!0)]),o(m,{id:"controls",group:a.group},null,8,["group"])],64)}const Ms=T(bs,[["render",Ts],["__scopeId","data-v-d0899f1f"]]),Bs=1160,Rs=.05,Vs=250,Ns={name:"MetadataButton",components:{CloseButton:Gt,MetadataBody:us,MetadataHeader:Ms,PlaceholderLoading:Yt},props:{book:{type:Object,required:!0},children:{type:Number,default:1},group:{type:String,required:!0},toolbar:{type:Boolean,default:!1}},data(){return{mdiTagOutline:bt,dialog:!1,progress:0}},computed:{...O(W,{md:e=>e.md}),showContainer(){var e;return((e=this.md)==null?void 0:e.loaded)||!1},buttonVariant(){return this.toolbar?"plain":"text"}},watch:{dialog(e){e?this.dialogOpened():this.clearMetadata()}},methods:{...fe(W,["clearMetadata","loadMetadata"]),dialogOpened(){const e=this.book.ids||[this.book.pk],t={group:this.group,pks:e};this.loadMetadata(t),this.startProgress()},startProgress(){this.startTime=Date.now(),this.estimatedMS=Math.max(Rs,this.children/Bs)*1e3,this.updateProgress()},updateProgress(){const e=Date.now()-this.startTime;this.progress=e/this.estimatedMS*100,!(this.progress>=100||this.md)&&setTimeout(()=>{this.updateProgress()},Vs)}}},Ls={key:1,id:"placeholderContainer"};function Is(e,t,a,n,r,s){const i=_("CloseButton"),l=_("MetadataHeader"),d=_("MetadataBody"),m=_("PlaceholderLoading");return u(),v(At,{modelValue:r.dialog,"onUpdate:modelValue":t[3]||(t[3]=b=>r.dialog=b),fullscreen:"",transition:"dialog-bottom-transition"},{activator:L(({props:b})=>[o(ve,Z({"aria-label":"tags",class:"tagButton cardControlButton",variant:s.buttonVariant,icon:r.mdiTagOutline,title:"Tags"},b,{onClick:t[0]||(t[0]=yt(()=>{},["prevent"]))}),null,16,["variant","icon"])]),default:L(()=>[o(i,{class:"closeButton",title:"Close Metadata (esc)",onClick:t[1]||(t[1]=b=>r.dialog=!1)}),s.showContainer?(u(),p("div",{key:0,id:"metadataContainer",onKeyup:t[2]||(t[2]=kt(b=>r.dialog=!1,["esc"]))},[o(l,{group:a.group},null,8,["group"]),o(d,{book:a.book,group:a.group},null,8,["book","group"])],32)):(u(),p("div",Ls,[t[4]||(t[4]=g("div",{id:"placeholderTitle"},"Tags Loading",-1)),o(m,{"model-value":r.progress,indeterminate:r.progress>=100,class:"placeholder"},null,8,["model-value","indeterminate"])]))]),_:1},8,["modelValue"])}const li=T(Ns,[["render",Is],["__scopeId","data-v-60b1fb43"]]),xs={name:"PaginationNavButton",props:{narrow:{type:Boolean,default:!0}},computed:{classes(){return{narrowButton:this.narrow}}}};function $s(e,t,a,n,r,s){return u(),v(ve,{variant:"plain",density:"compact",class:ie(["paginationNavButton",s.classes]),size:"medium"},we({_:2},[re(e.$slots,(i,l)=>({name:l,fn:L(d=>[Ce(e.$slots,l,Z({props:i},d),void 0,!0)])}))]),1032,["class"])}const ui=T(xs,[["render",$s],["__scopeId","data-v-cf061c30"]]),Be=Symbol.for("vuetify:v-slider");function Ps(e,t,a){const n=a==="vertical",r=t.getBoundingClientRect(),s="touches"in e?e.touches[0]:e;return n?s.clientY-(r.top+r.height/2):s.clientX-(r.left+r.width/2)}function Fs(e,t){return"touches"in e&&e.touches.length?e.touches[0][t]:"changedTouches"in e&&e.changedTouches.length?e.changedTouches[0][t]:e[t]}const Ds=ne({disabled:{type:Boolean,default:null},error:Boolean,readonly:{type:Boolean,default:null},max:{type:[Number,String],default:100},min:{type:[Number,String],default:0},step:{type:[Number,String],default:0},thumbColor:String,thumbLabel:{type:[Boolean,String],default:void 0,validator:e=>typeof e=="boolean"||e==="always"},thumbSize:{type:[Number,String],default:20},showTicks:{type:[Boolean,String],default:!1,validator:e=>typeof e=="boolean"||e==="always"},ticks:{type:[Array,Object]},tickSize:{type:[Number,String],default:2},color:String,trackColor:String,trackFillColor:String,trackSize:{type:[Number,String],default:4},direction:{type:String,default:"horizontal",validator:e=>["vertical","horizontal"].includes(e)},reverse:Boolean,...Lt(),...Nt({elevation:2}),ripple:{type:Boolean,default:!0}},"Slider"),Es=e=>{const t=k(()=>parseFloat(e.min)),a=k(()=>parseFloat(e.max)),n=k(()=>Number(e.step)>0?parseFloat(e.step):0),r=k(()=>Math.max(Ne(n.value),Ne(t.value)));function s(i){if(i=parseFloat(i),n.value<=0)return i;const l=Ee(i,t.value,a.value),d=t.value%n.value,m=Math.round((l-d)/n.value)*n.value+d;return parseFloat(Math.min(m,a.value).toFixed(r.value))}return{min:t,max:a,step:n,decimals:r,roundValue:s}},zs=e=>{let{props:t,steps:a,onSliderStart:n,onSliderMove:r,onSliderEnd:s,getActiveThumb:i}=e;const{isRtl:l}=Te(),d=E(t,"reverse"),m=k(()=>t.direction==="vertical"),b=k(()=>m.value!==d.value),{min:w,max:R,step:I,decimals:A,roundValue:$}=a,j=k(()=>parseInt(t.thumbSize,10)),G=k(()=>parseInt(t.tickSize,10)),H=k(()=>parseInt(t.trackSize,10)),U=k(()=>(R.value-w.value)/I.value),X=E(t,"disabled"),q=k(()=>t.error||t.disabled?void 0:t.thumbColor??t.color),S=k(()=>t.error||t.disabled?void 0:t.trackColor??t.color),P=k(()=>t.error||t.disabled?void 0:t.trackFillColor??t.color),M=Le(!1),B=Le(0),F=_e(),D=_e();function y(c){var Re;const f=(Re=F.value)==null?void 0:Re.$el;if(!f)return;const J=t.direction==="vertical",Ze=J?"top":"left",Xe=J?"height":"width",Je=J?"clientY":"clientX",{[Ze]:Qe,[Xe]:et}=f.getBoundingClientRect(),tt=Fs(c,Je);let be=Math.min(Math.max((tt-Qe-B.value)/et,0),1)||0;return(J?b.value:b.value!==l.value)&&(be=1-be),$(w.value+be*(R.value-w.value))}const K=c=>{const f=y(c);f!=null&&s({value:f}),M.value=!1,B.value=0},Y=c=>{const f=y(c);D.value=i(c),D.value&&(M.value=!0,D.value.contains(c.target)?B.value=Ps(c,D.value,t.direction):(B.value=0,f!=null&&r({value:f})),f!=null&&n({value:f}),St(()=>{var J;return(J=D.value)==null?void 0:J.focus()}))},x={passive:!0,capture:!0};function ee(c){const f=y(c);f!=null&&r({value:f})}function le(c){c.stopPropagation(),c.preventDefault(),K(c),window.removeEventListener("mousemove",ee,x),window.removeEventListener("mouseup",le)}function ue(c){var f;K(c),window.removeEventListener("touchmove",ee,x),(f=c.target)==null||f.removeEventListener("touchend",ue)}function ge(c){var f;Y(c),window.addEventListener("touchmove",ee,x),(f=c.target)==null||f.addEventListener("touchend",ue,{passive:!1})}function V(c){c.button===0&&(c.preventDefault(),Y(c),window.addEventListener("mousemove",ee,x),window.addEventListener("mouseup",le,{passive:!1}))}const C=c=>{const f=(c-w.value)/(R.value-w.value)*100;return Ee(isNaN(f)?0:f,0,100)},te=E(t,"showTicks"),se=k(()=>te.value?t.ticks?Array.isArray(t.ticks)?t.ticks.map(c=>({value:c,position:C(c),label:c.toString()})):Object.keys(t.ticks).map(c=>({value:parseFloat(c),position:C(parseFloat(c)),label:t.ticks[c]})):U.value!==1/0?_t(U.value+1).map(c=>{const f=w.value+c*I.value;return{value:f,position:C(f)}}):[]:[]),de=k(()=>se.value.some(c=>{let{label:f}=c;return!!f})),ce={activeThumbRef:D,color:E(t,"color"),decimals:A,disabled:X,direction:E(t,"direction"),elevation:E(t,"elevation"),hasLabels:de,isReversed:d,indexFromEnd:b,min:w,max:R,mousePressed:M,numTicks:U,onSliderMousedown:V,onSliderTouchstart:ge,parsedTicks:se,parseMouseMove:y,position:C,readonly:E(t,"readonly"),rounded:E(t,"rounded"),roundValue:$,showTicks:te,startOffset:B,step:I,thumbSize:j,thumbColor:q,thumbLabel:E(t,"thumbLabel"),ticks:E(t,"ticks"),tickSize:G,trackColor:S,trackContainerRef:F,trackFillColor:P,trackSize:H,vertical:m};return wt(Be,ce),ce},Os=ne({focused:Boolean,max:{type:Number,required:!0},min:{type:Number,required:!0},modelValue:{type:Number,required:!0},position:{type:Number,required:!0},ripple:{type:[Boolean,Object],default:!0},name:String,...Se()},"VSliderThumb"),As=me()({name:"VSliderThumb",directives:{Ripple:It},props:Os(),emits:{"update:modelValue":e=>!0},setup(e,t){let{slots:a,emit:n}=t;const r=ze(Be),{isRtl:s,rtlClasses:i}=Te();if(!r)throw new Error("[Vuetify] v-slider-thumb must be used inside v-slider or v-range-slider");const{thumbColor:l,step:d,disabled:m,thumbSize:b,thumbLabel:w,direction:R,isReversed:I,vertical:A,readonly:$,elevation:j,mousePressed:G,decimals:H,indexFromEnd:U}=r,X=k(()=>m.value?void 0:j.value),{elevationClasses:q}=xt(X),{textColorClasses:S,textColorStyles:P}=$t(l),{pageup:M,pagedown:B,end:F,home:D,left:y,right:K,down:Y,up:x}=Ct,ee=[M,B,F,D,y,K,Y,x],le=k(()=>d.value?[1,2,3]:[1,5,10]);function ue(V,C){if(!ee.includes(V.key))return;V.preventDefault();const te=d.value||.1,se=(e.max-e.min)/te;if([y,K,Y,x].includes(V.key)){const ce=(A.value?[s.value?y:K,I.value?Y:x]:U.value!==s.value?[y,x]:[K,x]).includes(V.key)?1:-1,c=V.shiftKey?2:V.ctrlKey?1:0;C=C+ce*te*le.value[c]}else if(V.key===D)C=e.min;else if(V.key===F)C=e.max;else{const de=V.key===B?1:-1;C=C-de*te*(se>100?se/10:10)}return Math.max(e.min,Math.min(e.max,C))}function ge(V){const C=ue(V,e.modelValue);C!=null&&n("update:modelValue",C)}return he(()=>{const V=Q(U.value?100-e.position:e.position,"%");return o("div",{class:["v-slider-thumb",{"v-slider-thumb--focused":e.focused,"v-slider-thumb--pressed":e.focused&&G.value},e.class,i.value],style:[{"--v-slider-thumb-position":V,"--v-slider-thumb-size":Q(b.value)},e.style],role:"slider",tabindex:m.value?-1:0,"aria-label":e.name,"aria-valuemin":e.min,"aria-valuemax":e.max,"aria-valuenow":e.modelValue,"aria-readonly":!!$.value,"aria-orientation":R.value,onKeydown:$.value?void 0:ge},[o("div",{class:["v-slider-thumb__surface",S.value,q.value],style:{...P.value}},null),Ie(o("div",{class:["v-slider-thumb__ripple",S.value],style:P.value},null),[[Tt("ripple"),e.ripple,null,{circle:!0,center:!0}]]),o(Ut,{origin:"bottom center"},{default:()=>{var C;return[Ie(o("div",{class:"v-slider-thumb__label-container"},[o("div",{class:["v-slider-thumb__label"]},[o("div",null,[((C=a["thumb-label"])==null?void 0:C.call(a,{modelValue:e.modelValue}))??e.modelValue.toFixed(d.value?H.value:1)])])]),[[Mt,w.value&&e.focused||w.value==="always"]])]}})])}),{}}}),Gs=ne({start:{type:Number,required:!0},stop:{type:Number,required:!0},...Se()},"VSliderTrack"),js=me()({name:"VSliderTrack",props:Gs(),emits:{},setup(e,t){let{slots:a}=t;const n=ze(Be);if(!n)throw new Error("[Vuetify] v-slider-track must be inside v-slider or v-range-slider");const{color:r,parsedTicks:s,rounded:i,showTicks:l,tickSize:d,trackColor:m,trackFillColor:b,trackSize:w,vertical:R,min:I,max:A,indexFromEnd:$}=n,{roundedClasses:j}=Pt(i),{backgroundColorClasses:G,backgroundColorStyles:H}=xe(b),{backgroundColorClasses:U,backgroundColorStyles:X}=xe(m),q=k(()=>`inset-${R.value?"block":"inline"}-${$.value?"end":"start"}`),S=k(()=>R.value?"height":"width"),P=k(()=>({[q.value]:"0%",[S.value]:"100%"})),M=k(()=>e.stop-e.start),B=k(()=>({[q.value]:Q(e.start,"%"),[S.value]:Q(M.value,"%")})),F=k(()=>l.value?(R.value?s.value.slice().reverse():s.value).map((y,K)=>{var x;const Y=y.value!==I.value&&y.value!==A.value?Q(y.position,"%"):void 0;return o("div",{key:y.value,class:["v-slider-track__tick",{"v-slider-track__tick--filled":y.position>=e.start&&y.position<=e.stop,"v-slider-track__tick--first":y.value===I.value,"v-slider-track__tick--last":y.value===A.value}],style:{[q.value]:Y}},[(y.label||a["tick-label"])&&o("div",{class:"v-slider-track__tick-label"},[((x=a["tick-label"])==null?void 0:x.call(a,{tick:y,index:K}))??y.label])])}):[]);return he(()=>o("div",{class:["v-slider-track",j.value,e.class],style:[{"--v-slider-track-size":Q(w.value),"--v-slider-tick-size":Q(d.value)},e.style]},[o("div",{class:["v-slider-track__background",U.value,{"v-slider-track__background--opacity":!!r.value||!b.value}],style:{...P.value,...X.value}},null),o("div",{class:["v-slider-track__fill",G.value],style:{...B.value,...H.value}},null),l.value&&o("div",{class:["v-slider-track__ticks",{"v-slider-track__ticks--always-show":l.value==="always"}]},[F.value])])),{}}}),Us=ne({...Kt(),...Ds(),...Ht(),modelValue:{type:[Number,String],default:0}},"VSlider"),qs=me()({name:"VSlider",props:Us(),emits:{"update:focused":e=>!0,"update:modelValue":e=>!0,start:e=>!0,end:e=>!0},setup(e,t){let{slots:a,emit:n}=t;const r=_e(),{rtlClasses:s}=Te(),i=Es(e),l=Bt(e,"modelValue",void 0,S=>i.roundValue(S??i.min.value)),{min:d,max:m,mousePressed:b,roundValue:w,onSliderMousedown:R,onSliderTouchstart:I,trackContainerRef:A,position:$,hasLabels:j,readonly:G}=zs({props:e,steps:i,onSliderStart:()=>{n("start",l.value)},onSliderEnd:S=>{let{value:P}=S;const M=w(P);l.value=M,n("end",M)},onSliderMove:S=>{let{value:P}=S;return l.value=w(P)},getActiveThumb:()=>{var S;return(S=r.value)==null?void 0:S.$el}}),{isFocused:H,focus:U,blur:X}=qt(e),q=k(()=>$(l.value));return he(()=>{const S=$e.filterProps(e),P=!!(e.label||a.label||a.prepend);return o($e,Z({class:["v-slider",{"v-slider--has-labels":!!a["tick-label"]||j.value,"v-slider--focused":H.value,"v-slider--pressed":b.value,"v-slider--disabled":e.disabled},s.value,e.class],style:e.style},S,{focused:H.value}),{...a,prepend:P?M=>{var B,F;return o(pe,null,[((B=a.label)==null?void 0:B.call(a,M))??(e.label?o(Wt,{id:M.id.value,class:"v-slider__label",text:e.label},null):void 0),(F=a.prepend)==null?void 0:F.call(a,M)])}:void 0,default:M=>{let{id:B,messagesId:F}=M;return o("div",{class:"v-slider__container",onMousedown:G.value?void 0:R,onTouchstartPassive:G.value?void 0:I},[o("input",{id:B.value,name:e.name||B.value,disabled:!!e.disabled,readonly:!!e.readonly,tabindex:"-1",value:l.value},null),o(js,{ref:A,start:0,stop:q.value},{"tick-label":a["tick-label"]}),o(As,{ref:r,"aria-describedby":F.value,focused:H.value,min:d.value,max:m.value,modelValue:l.value,"onUpdate:modelValue":D=>l.value=D,position:q.value,elevation:e.elevation,onFocus:U,onBlur:X,ripple:e.ripple,name:e.name},{"thumb-label":a["thumb-label"]})])}})}),{}}}),Hs={name:"PaginationSlider",props:{min:{type:Number,default:0}}};function Ks(e,t,a,n,r,s){return u(),v(qs,Z({"thumb-size":"36",class:"paginationSlider",density:"compact","hide-details":"auto",min:a.min,rounded:!0,"show-ticks":"always",step:1,"thumb-label":"always"},e.$attrs),{"tick-label":L(({index:i})=>[ae(z(i+a.min),1)]),_:1},16,["min"])}const di=T(Hs,[["render",Ks],["__scopeId","data-v-01b67afd"]]),Ws={name:"PaginationToolbar"};function Ys(e,t,a,n,r,s){return u(),v(Zt,{class:"paginationToolbar codexToolbar",density:"compact",transform:"center bottom"},we({_:2},[re(e.$slots,(i,l)=>({name:l,fn:L(d=>[Ce(e.$slots,l,Z({props:i},d),void 0,!0)])}))]),1024)}const ci=T(Ws,[["render",Ys],["__scopeId","data-v-cfa8cce0"]]);export{la as B,ma as D,va as M,ke as N,ui as P,ri as T,ni as V,oi as a,li as b,ci as c,di as d,We as g,je as p,ta as t};
@@ -1 +0,0 @@
1
- import{g as me,p as ne,d as at,t as E,u as he,a as o,J as Se,aW as Ve,_ as T,v,V as we,y as re,w as L,m as Z,q as u,a5 as Ce,D as oe,aX as st,M as N,k as p,G as h,n as ie,z,aw as it,ad as ye,aY as nt,aZ as rt,az as ot,l as _,A as fe,a_ as lt,a$ as ut,C as O,T as dt,$ as Fe,x as ae,s as g,ar as ct,b0 as mt,j as ht,b1 as ft,F as pe,af as pt,ab as vt,ac as gt,a8 as De,b2 as bt,X as kt,aa as yt,c as k,b3 as Ne,aP as Te,aR as Le,r as _e,b4 as _t,b5 as Ee,aV as St,aU as wt,i as ze,b6 as Ct,f as Q,S as Ie,ai as Tt,aL as Mt,b as Bt}from"./main-JUy8mnXG.js";import{w as Rt,V as ve,k as Oe,n as Vt,x as Nt,j as Lt,R as It,y as xt,u as $t,i as Pt,c as xe}from"./forwardRefs-BxFNqo8E.js";import{c as Ft,d as Dt}from"./VSelect-BpkoCPsm.js";import{a as Et,c as zt,d as Ot,V as At}from"./VDialog-CoOMSEbM.js";import{C as Gt}from"./change-password-dialog-DOioR_QK.js";import{d as jt,f as Ut,u as qt,m as Ht,g as Kt,h as $e,i as Wt}from"./VSelectionControl-DvYb3Pi4.js";import{V as Ae}from"./VTable-DbFt9lJE.js";import{C as Ge}from"./confirm-dialog-BRUkbajJ.js";import{P as Yt,V as Zt}from"./unauthorized-CvdCW-Cq.js";const Xt=ne({...Se(),...Rt({variant:"text"})},"VToolbarItems"),ni=me()({name:"VToolbarItems",props:Xt(),setup(e,t){let{slots:a}=t;return at({VBtn:{color:E(e,"color"),height:"inherit",variant:E(e,"variant")}}),he(()=>{var n;return o("div",{class:["v-toolbar-items",e.class],style:e.style},[(n=a.default)==null?void 0:n.call(a)])}),{}}}),ke=new Set(["",Ve,Ve.toString(),void 0]),Jt=function(e){let t;if(ke.has(e))t=e;else if(e instanceof Object)if("ids"in e){const a=new Set(e.ids);ke.intersection(a).size>0?t=void 0:t={value:e.ids.join(","),title:e.name}}else ke.has(e.pk)?t=void 0:t={value:e.pk,title:e.name};else t={value:e,title:e.toString()};return e!=null&&e.url&&(t.url=e.url),t},Qt=function(e,t){return e.title<t.title?-1:e.title>t.title?1:0},ea=function(e,t){return Number.parseFloat(e.title)-Number.parseFloat(t.title)},ta=function(e,t,a=!1){var l;const n=e||[],r=t&&t.toLowerCase();let s=[];for(const d of n){const m=Jt(d);m!=null&&(!r||(l=m==null?void 0:m.title)!=null&&l.toLowerCase().includes(r))&&s.push(m)}const i=a?ea:Qt;return s.sort(i)},aa={name:"ToolbarSelect",props:{selectLabel:{type:String,default:""},maxSelectLen:{type:Number,default:0}},computed:{style(){if(this.maxSelectLen){const e=this.$vuetify.display.xs?"max-width":"width",t=this.maxSelectLen*.7+"em";return`${e}: ${t}`}return""}}};function sa(e,t,a,n,r,s){return u(),v(Ft,Z(e.$attrs,{label:a.selectLabel,"aria-label":a.selectLabel,class:"toolbarSelect",density:"compact","full-width":"","menu-props":{maxHeight:void 0},"hide-details":"auto",style:s.style,variant:"plain"}),we({item:L(({item:i,props:l})=>[o(Et,Z(l,{density:"compact",variant:"plain",title:i.title,value:i.value}),null,16,["title","value"])]),_:2},[re(e.$slots,(i,l)=>({name:l,fn:L(d=>[Ce(e.$slots,l,Z({props:i},d),void 0,!0)])}))]),1040,["label","aria-label","style"])}const ri=T(aa,[["render",sa],["__scopeId","data-v-cda2da63"]]),oi=zt("v-spacer","div","VSpacer"),ia={name:"BookCover",props:{group:{type:String,required:!0},pks:{type:Array,required:!0},childCount:{type:Number,default:1},finished:{type:Boolean},mtime:{type:Number,default:Date.now()}},data(){return{showPlaceholder:!1}},computed:{...oe(N,["coverSettings"]),coverSrc(){return st({group:this.group,pks:this.pks},this.coverSettings,this.mtime)},multiPkClasses(){const e=this.pks.length,t={};return e>=4?t.stack4=!0:e>1&&(t[`stack${e}`]=!0),t}},mounted:function(){this.delayPlaceholder()},methods:{delayPlaceholder:function(){setTimeout(()=>{this.showPlaceholder=!0},2e3)}}},na={class:"bookCover"},ra={key:1,class:"childCount"};function oa(e,t,a,n,r,s){return u(),p("div",na,[o(Ot,{src:s.coverSrc,class:ie(["coverImg",s.multiPkClasses])},null,8,["src","class"]),a.finished!==!0?(u(),p("div",{key:0,class:ie({unreadFlag:!0,mixedreadFlag:a.finished===null})},null,2)):h("",!0),a.group!=="c"?(u(),p("span",ra,z(a.childCount),1)):h("",!0)])}const la=T(ia,[["render",oa],["__scopeId","data-v-de968aef"]]),ua=10,da={name:"DownloadButton",components:{ConfirmDialog:Ge},props:{button:{type:Boolean,default:!1},item:{type:Object,required:!0}},data(){return{mdiDownload:ot}},computed:{...oe(N,["filterOnlySettings","groupNames"]),show(){var e,t;return((t=(e=this.item)==null?void 0:e.ids)==null?void 0:t.length)>0&&!this.item.ids.includes(0)},isOneComic(){var e,t,a;return((e=this.item)==null?void 0:e.group)==="c"&&((a=(t=this.item)==null?void 0:t.ids)==null?void 0:a.length)===1},downloadFn(){var e;return this.isOneComic?this.item.name:`${this.groupNames[(e=this.item)==null?void 0:e.group]} - ${this.item.name} Comics.zip`},downloadURL(){var t,a,n,r;let e="";if(this.isOneComic){const s=this.item.ids[0];e=nt({pk:s},this.downloadFn,(t=this.item)==null?void 0:t.mtime)}else{const s=(a=this.item)==null?void 0:a.group,i=(n=this.item)==null?void 0:n.ids,l=this.filterOnlySettings;e=rt({group:s,pks:i},this.downloadFn,l,(r=this.item)==null?void 0:r.mtime)}return e},formattedChildren(){var e;return ye.format((e=this.item)==null?void 0:e.childCount)},title(){let e="Download";return e+=this.isOneComic?" Book":` ${this.formattedChildren} Books`,e},confirm(){var e;return((e=this.item)==null?void 0:e.childCount)>ua},confirmText(){return this.confirm?`Download ${this.formattedChildren} books`:""}},methods:{download(){const e=this.downloadURL,t=this.downloadFn;if(this.isOneComic)it(e,t);else{const a=document.createElement("a");a.download=this.downloadFn,a.href=this.downloadURL,a.click(),a.remove()}}}};function ca(e,t,a,n,r,s){const i=_("ConfirmDialog");return s.show?(u(),v(i,{key:0,button:a.button,"button-text":s.title,confirm:s.confirm,"confirm-text":"Download","prepend-icon":r.mdiDownload,"title-text":s.title,text:"May take a while",onConfirm:s.download},null,8,["button","button-text","confirm","prepend-icon","title-text","onConfirm"])):h("",!0)}const ma=T(da,[["render",ca],["__scopeId","data-v-b589c090"]]),ha=1,fa={name:"MarkReadButton",components:{ConfirmDialog:Ge},props:{button:{type:Boolean,default:!1},item:{type:Object,required:!0}},computed:{...oe(N,["groupNames"]),verb(){return this.item.finished?"Unread":"Read"},confirm(){return this.item.children>ha},show(){var e,t;return((t=(e=this.item)==null?void 0:e.ids)==null?void 0:t.length)>0&&!this.item.ids.includes(0)},icon(){return this.item.finished?lt:ut},confirmText(){return this.confirm?`Mark ${this.verb}`:""},markReadText(){const e=["Mark"];this.item.group!="c"&&e.push("Entire");const t=this.groupNames[this.item.group];return e.push(t,this.verb),e.join(" ")},itemName(){return this.item.name||"(Empty)"}},methods:{...fe(N,["setBookmarkFinished"]),toggleRead:function(){this.setBookmarkFinished(this.item,!this.item.finished)}}};function pa(e,t,a,n,r,s){const i=_("ConfirmDialog");return s.show?(u(),v(i,{key:0,button:a.button,"button-text":s.markReadText,confirm:s.confirm,"confirm-text":s.confirmText,"prepend-icon":s.icon,"title-text":s.markReadText,text:s.itemName,onConfirm:s.toggleRead},null,8,["button","button-text","confirm","confirm-text","prepend-icon","title-text","text","onConfirm"])):h("",!0)}const va=T(fa,[["render",pa],["__scopeId","data-v-c904f535"]]),ga=["B","kB","MB","GB","TB","PB","EB","ZB","YB"],ba=["B","KiB","MiB","GiB","TiB","PiB","EiB","ZiB","YiB"],ka=["b","kbit","Mbit","Gbit","Tbit","Pbit","Ebit","Zbit","Ybit"],ya=["b","kibit","Mibit","Gibit","Tibit","Pibit","Eibit","Zibit","Yibit"],Pe=(e,t,a)=>{let n=e;return typeof t=="string"||Array.isArray(t)?n=e.toLocaleString(t,a):(t===!0||a!==void 0)&&(n=e.toLocaleString(void 0,a)),n};function je(e,t){if(!Number.isFinite(e))throw new TypeError(`Expected a finite number, got ${typeof e}: ${e}`);t={bits:!1,binary:!1,space:!0,...t};const a=t.bits?t.binary?ya:ka:t.binary?ba:ga,n=t.space?" ":"";if(t.signed&&e===0)return` 0${n}${a[0]}`;const r=e<0,s=r?"-":t.signed?"+":"";r&&(e=-e);let i;if(t.minimumFractionDigits!==void 0&&(i={minimumFractionDigits:t.minimumFractionDigits}),t.maximumFractionDigits!==void 0&&(i={maximumFractionDigits:t.maximumFractionDigits,...i}),e<1){const b=Pe(e,t.locale,i);return s+b+n+a[0]}const l=Math.min(Math.floor(t.binary?Math.log(e)/Math.log(1024):Math.log10(e)/3),a.length-1);e/=(t.binary?1024:1e3)**l,i||(e=e.toPrecision(3));const d=Pe(Number(e),t.locale,i),m=a[l];return s+d+n+m}const _a={name:"MetadataExpandButton"};function Sa(e,t,a,n,r,s){return u(),v(ve,{density:"compact",text:"...expand",variant:"text"})}const wa=T(_a,[["render",Sa]]),Ca={name:"MetadataTextBox",components:{ExpandButton:wa},props:{group:{type:String,default:""},highlight:{type:Boolean,default:!1},label:{type:String,default:""},maxHeight:{type:Number,default:0},value:{type:[Object,String,Number,Boolean],default:void 0}},data(){return{mdiOpenInNew:Fe,expanded:!1,mounted:!1}},computed:{...oe(N,["groupNames"]),...O(N,{browserShow:e=>e.settings.show,browserTopGroup:e=>e.settings.topGroup,folderViewEnabled:e=>e.page.adminFlags.folderView}),computedValue(){return this.value&&this.value.name!==void 0?this.value.name:this.value},lastSlashIndex(){return this.computedValue.lastIndexOf("/")+1},displayValue(){let e;return this.group==="f"&&this.computedValue?e=this.computedValue.slice(0,Math.max(0,this.lastSlashIndex)):this.group==="v"&&this.computedValue?e=dt(this.computedValue):e=this.computedValue,e},textValueStyles(){const e=this.maxHeight>0&&!this.expanded?this.maxHeight:0;return e?"max-height: "+e+"px;":""},textValueRefName(){return"mdTextValue"+this.label.replaceAll(" ","")},isOverflow(){if(!this.mounted)return!1;const e=this.$refs[this.textValueRefName];return e?e.clientHeight<e.scrollHeight:!1},showExpandButton(){return!this.expanded&&this.maxHeight>0&&this.isOverflow},linkPks(){return(this.value.ids||[this.value.pk]).join(",")},clickable(){var t;const e=this.$router.currentRoute.value.params;return!this.group||e.group===this.group||this.group==="f"&&!this.folderViewEnabled||!["a","f"].includes(this.group)&&!this.browserShow[this.group]?!1:!!((t=this.linkPks)!=null&&t.length)},classes(){return{clickable:this.clickable,highlight:this.highlight}},toRoute(){if(!this.clickable)return"";const e=this.group,t=this.linkPks;return{name:"browser",params:{group:e,pks:t,page:1}}},linkSettings(){return{topGroup:this.getTopGroup(this.group)}},title(){let e;return this.label?e=this.label:this.group?e=this.groupNames[this.group]:e="",this.toRoute?`Browse to ${e}`:e},baseName(){return this.group==="f"?this.computedValue.slice(Math.max(0,this.lastSlashIndex)):""}},mounted(){this.mounted=!0},methods:{...fe(N,["routeWithSettings","getTopGroup"]),onClick(){this.clickable&&this.routeWithSettings(this.linkSettings,this.toRoute)}}},Ta={key:0,class:"text"},Ma={key:0,class:"textLabel"},Ba=["title"],Ra={key:0,class:"textContent"};function Va(e,t,a,n,r,s){const i=_("ExpandButton");return s.displayValue?(u(),p("div",Ta,[a.label?(u(),p("div",Ma,[ae(z(a.label)+" ",1),s.showExpandButton?(u(),v(i,{key:0,class:"expandButton",onClick:t[0]||(t[0]=l=>r.expanded=!0)})):h("",!0)])):h("",!0),o(jt,null,{default:L(()=>[g("div",null,[g("div",{ref:s.textValueRefName,class:"textValue",style:ct(s.textValueStyles)},[g("span",{class:ie(["textContent",s.classes]),title:s.title,onClick:t[1]||(t[1]=(...l)=>s.onClick&&s.onClick(...l))},z(s.displayValue),11,Ba),s.baseName?(u(),p("span",Ra,z(s.baseName),1)):h("",!0)],4),s.showExpandButton&&!a.label?(u(),v(i,{key:0,class:"expandButton",onClick:t[2]||(t[2]=l=>r.expanded=!0)})):h("",!0)])]),_:1})])):h("",!0)}const Me=T(Ca,[["render",Va],["__scopeId","data-v-41dc5477"]]),Ue=["creators","writers","pencillers","inkers","cover_artists","colorists","letterers","editors"];Object.freeze(Ue);const qe=["genres","characters","teams","locations","seriesGroups","stories","storyArcNumbers","tags"];Object.freeze(qe);const W=mt("metadata",{state:()=>({md:void 0}),getters:{_mappedContributors(e){var a;const t={};if(!((a=e==null?void 0:e.md)!=null&&a.contributors))return t;for(const{role:n,person:r}of e.md.contributors){const s=n.name+"s";s in t||(t[s]=[]),t[s].push(r)}return t},_sortedRoles(e){let t=[];const a=new Set(Object.keys(e._mappedContributors));for(const r of Ue)a.has(r)&&(t.push(r),a.delete(r));const n=[...a].sort();return[...t,...n]},contributors(e){return this.mapTag(e._mappedContributors,e._sortedRoles,"contributors")},identifiers(e){var a;const t=[];if(!((a=e.md)!=null&&a.identifiers))return t;for(const n of this.md.identifiers){const r=n.name.split(":"),s=r[0],i=r[1],l=N().identifierTypeTitle(s);let d="";l&&l!=="None"&&(d+=l+":"),d+=i;const m={pk:n.pk,url:n.url,name:d};t.push(m)}return t},tags(e){const t=e.mapTag(e.md,qe);return this.identifiers&&(t.Identifiers={filter:"identifiers",tags:this.identifiers}),t}},actions:{async loadMetadata({group:e,pks:t}){await ft.getMetadata({group:e,pks:t},N().metadataSettings).then(a=>{const n={...a.data};return n.loaded=!0,this.md=n,!0}).catch(a=>{console.error(a),this.clearMetadata()})},clearMetadata(){this.md=void 0},mapTag(e,t,a){const n={};for(const r of t){let s=e[r];if(!(s!=null&&s.length))continue;let i;a?i=a:r==="storyArcNumbers"?i="storyArcs":i=r;const l=ht(r);s=s.sort((d,m)=>d.name.localeCompare(m.name)),n[l]={filter:i,tags:s}}return n}}}),Na={name:"MetadataRatings",components:{MetadataText:Me},computed:{...O(W,{md:e=>e.md}),show(){var e,t,a;return((e=this.md)==null?void 0:e.communityRating)||((t=this.md)==null?void 0:t.criticRating)||((a=this.md)==null?void 0:a.ageRating)}}},La={key:0},Ia={key:1},xa={key:2};function $a(e,t,a,n,r,s){const i=_("MetadataText");return s.show?(u(),v(Ae,{key:0},{default:L(()=>[g("tbody",null,[e.md.communityRating?(u(),p("tr",La,[t[0]||(t[0]=g("td",{class:"key"},"Community Rating",-1)),g("td",null,[o(i,{value:e.md.communityRating},null,8,["value"])])])):h("",!0),e.md.criticalRating?(u(),p("tr",Ia,[t[1]||(t[1]=g("td",{class:"key"},"Critical Rating",-1)),g("td",null,[o(i,{value:e.md.criticalRating},null,8,["value"])])])):h("",!0),e.md.ageRating?(u(),p("tr",xa,[t[2]||(t[2]=g("td",{class:"key"},"Age Rating",-1)),g("td",null,[o(i,{value:e.md.ageRating},null,8,["value"])])])):h("",!0)])]),_:1})):h("",!0)}const Pa=T(Na,[["render",$a],["__scopeId","data-v-c3e9cb26"]]),Fa=new Set(["p","i","s","v"]),Da={name:"MetadataTags",props:{item:{type:Object,required:!0},filter:{type:String,default:""}},data(){return{mdiOpenInNew:Fe}},computed:{...O(N,{browserShow:e=>e.settings.show,filterValues(e){return e.settings.filters[this.filter]},topGroup:e=>e.settings.topGroup}),...O(W,{mdGroup:e=>e.md.group,mdIds:e=>e.md.ids}),groupMode(){return Fa.has(this.filter)},clickable(){return this.filter&&this.item.value&&(!this.groupMode||this.browserShow[this.filter])},classes(){return{clickable:(this.clickable||this.item.url)&&!this.highlight}},highlight(){var e;return!!(this.groupMode&&this.filter===this.mdGroup&&this.mdIds.includes(this.item.value)||(e=this.filterValues)!=null&&e.includes(this.item.value))},variant(){return this.highlight?"flat":"tonal"},color(){const e=this.$vuetify.theme.current.colors;return this.highlight?e["primary-darken-1"]:""},linkGroup(){let e;return this.groupMode?e=this.filter:e=["f","s"].includes(this.topGroup)?this.topGroup:"r",e},linkPks(){return this.groupMode||this.linkGroup!=="a"&&this.filter==="storyArcs"?this.item.value.toString():"0"},toRoute(){if(!this.clickable)return"";const e=this.linkGroup,t=this.linkPks;return{name:"browser",params:{group:e,pks:t,page:1}}},linkSettings(){let e;return this.linkPks==="0"?e={filters:{[this.filter]:[this.item.value]}}:e={topGroup:this.getTopGroup(this.linkGroup)},e}},methods:{...fe(N,["routeWithSettings","getTopGroup"]),async onClick(){this.clickable&&this.routeWithSettings(this.linkSettings,this.toRoute)}}},Ea=["href"],za={key:1};function Oa(e,t,a,n,r,s){return u(),v(Dt,{class:ie(s.classes),color:s.color,value:a.item.value,variant:s.variant,onClick:s.onClick},{default:L(()=>[a.item.url?(u(),p("a",{key:0,href:a.item.url,target:"_blank"},[ae(z(a.item.title),1),o(Oe,null,{default:L(()=>[ae(z(r.mdiOpenInNew),1)]),_:1})],8,Ea)):(u(),p("span",za,z(a.item.title),1))]),_:1},8,["class","color","value","variant","onClick"])}const Aa=T(Da,[["render",Oa],["__scopeId","data-v-90b0c4fe"]]),Ga={name:"MetadataTags",components:{MetadataChip:Aa},props:{label:{type:String,default:""},values:{type:Array,default(){return[]}},filter:{type:String,required:!1,default:void 0}},computed:{items(){return ta(this.values)}}},ja={key:0},Ua={key:0,class:"chipGroupLabel"};function qa(e,t,a,n,r,s){var l;const i=_("MetadataChip");return((l=s.items)==null?void 0:l.length)>0?(u(),p("div",ja,[a.label?(u(),p("div",Ua,z(a.label),1)):h("",!0),g("div",null,[(u(!0),p(pe,null,re(s.items,d=>(u(),v(i,{key:`${a.filter}/${d.value}`,filter:a.filter,item:d},null,8,["filter","item"]))),128))])])):h("",!0)}const He=T(Ga,[["render",qa],["__scopeId","data-v-b7cb58ab"]]),Ha={name:"MetadataTagsTable",components:{MetadataTags:He},props:{tagMap:{type:Object,required:!0}},computed:{show(){return Object.keys(this.tagMap).length>0}}},Ka={class:"key"},Wa={class:"tags"};function Ya(e,t,a,n,r,s){const i=_("MetadataTags");return s.show?(u(),v(Ae,{key:0},{default:L(()=>[g("tbody",null,[(u(!0),p(pe,null,re(Object.entries(a.tagMap),([l,{filter:d,tags:m}])=>(u(),p("tr",{key:l},[g("td",Ka,z(l),1),g("td",Wa,[o(i,{filter:d,values:m},null,8,["filter","values"])])]))),128))])]),_:1})):h("",!0)}const Za=T(Ha,[["render",Ya],["__scopeId","data-v-bbaac1cc"]]),Xa={name:"MetadataBody",components:{MetadataRatings:Pa,MetadataTagsTable:Za,MetadataText:Me},props:{group:{type:String,required:!0},book:{type:Object,required:!0}},computed:{...oe(W,["contributors","ratings","tags"]),...O(N,{twentyFourHourTime:e=>{var t;return(t=e.settings)==null?void 0:t.twentyFourHourTime},readingDirectionTitles:e=>e.choices.static.readingDirection}),...O(W,{md:e=>e.md}),readingDirectionText(){return this.md?this.readingDirectionTitles[this.md.readingDirection]:"Unknown"},size(){var e;return((e=this==null?void 0:this.md)==null?void 0:e.size)>0?je(this.md.size):0},sizeLabel(){var e;return((e=this==null?void 0:this.md)==null?void 0:e.group)==="c"?"Size":"Total Size"},fileType(){var e;return((e=this==null?void 0:this.md)==null?void 0:e.fileType)||"Unknown"}},methods:{formatDateTime(e){return pt(e,this.twentyFourHourTime)}}},Ja={id:"metadataBody"},Qa={class:"mdSection"},es={class:"mdSection"},ts={class:"quarterRow"},as={class:"thirdRow"},ss={class:"lastSmallRow"},is={key:0,class:"halfRow mdSection"},ns={class:"mdSection"},rs={class:"inlineRow"},os={class:"inlineRow"};function ls(e,t,a,n,r,s){var m,b;const i=_("MetadataText"),l=_("MetadataTagsTable"),d=_("MetadataRatings");return u(),p("div",Ja,[g("section",Qa,[o(i,{value:e.md.summary,"max-height":100},null,8,["value"]),o(i,{value:e.md.review,label:"Review","max-height":100},null,8,["value"])]),o(l,{"tag-map":e.contributors,class:"mdSection"},null,8,["tag-map"]),g("section",es,[g("div",ts,[e.md.createdAt?(u(),v(i,{key:0,value:s.formatDateTime(e.md.createdAt),label:"Created at",class:"mtime"},null,8,["value"])):h("",!0),e.md.updatedAt?(u(),v(i,{key:1,value:s.formatDateTime(e.md.updatedAt),label:"Updated at",class:"mtime"},null,8,["value"])):h("",!0),o(i,{value:s.size,label:s.sizeLabel},null,8,["value","label"]),o(i,{value:s.fileType,label:"File Type"},null,8,["value"])]),g("div",as,[o(i,{label:"Reading Direction",value:s.readingDirectionText},null,8,["value"]),o(i,{value:e.md.original_format,label:"Original Format"},null,8,["value"]),o(i,{value:(!!e.md.monochrome).toString(),label:"Monochrome"},null,8,["value"])]),g("div",ss,[o(i,{group:"f",value:{pk:e.md.parentFolderId,name:e.md.path},label:"Path"},null,8,["value"])])]),(m=e.md)!=null&&m.country||(b=e.md)!=null&&b.language?(u(),p("section",is,[o(i,{value:e.md.country,label:"Country"},null,8,["value"]),o(i,{value:e.md.language,label:"Language"},null,8,["value"])])):h("",!0),o(d,{class:"mdSection"}),o(l,{"tag-map":e.tags,class:"mdSection"},null,8,["tag-map"]),g("section",ns,[g("section",rs,[o(i,{value:e.md.notes,label:"Notes"},null,8,["value"])]),g("section",os,[o(i,{value:e.md.tagger,label:"Tagger"},null,8,["value"]),o(i,{value:e.md.scanInfo,label:"Scan"},null,8,["value"])])])])}const us=T(Xa,[["render",ls],["__scopeId","data-v-d2a60d46"]]),Ke=new Set("rtl","btt");Object.freeze(Ke);const We=({ids:e,page:t,readingDirection:a,pageCount:n},r)=>{if(e.length===0||r&&!n)return"";const s=e[0];if(t)t=Number(t);else if(Ke.has(a)){const i=Number(n)-1;t=Math.max(i,0)}else t=0;return{name:"reader",params:{pk:s,page:t}}},Ye={p:"publisher",i:"imprint",s:"series",v:"volume",f:"folder",a:"storyArc"};Object.freeze(Ye);const ds={name:"MetadataControls",components:{DownloadButton:ma,MarkReadButton:va},props:{group:{type:String,required:!0}},computed:{...O(W,{md:e=>e.md}),...O(N,{importMetadata:e=>{var t,a;return(a=(t=e.page)==null?void 0:t.adminFlags)==null?void 0:a.importMetadata}}),downloadName(){const e=this.md;let t;if(!e)t="Unknown.cbz";else if(e.fileName)t=e.fileName;else{if(this.md.group==="f")return[this.firstNameFromList(e.folderList)];if(this.md.group==="a")return[this.firstNameFromList(e.storyArcList)];t=[this.firstNameFromList(e.publisherList),this.firstNameFromList(e.imprintList),this.firstNameFromList(e.seriesList),this.firstNameFromList(e.volumeList),De(this.md,3),this.md.name].filter(Boolean).join(" ")}return t},downloadItem(){var e,t,a,n;return{group:(e=this.md)==null?void 0:e.group,ids:(t=this.md)==null?void 0:t.ids,childCount:(a=this.md)==null?void 0:a.childCount,mtime:(n=this.md)==null?void 0:n.mtime,name:this.downloadName}},isReadButtonShown(){return this.group==="c"&&this.$route.name!="reader"},isReadButtonEnabled(){return!!this.readerRoute},markReadItem(){let e="";const t=Ye[this.md.group];return t?e=(this.md[t+"List"]||[]).map(({name:r})=>r).join(", "):e=this.md.name,{group:this.md.group,ids:this.md.ids,finished:this.md.finished,name:e,children:this.md.childCount||1}},readButtonIcon(){return this.isReadButtonEnabled?vt:gt},readerRoute(){var e;return(e=this.md)!=null&&e.ids?We(this.md,this.importMetadata):{}},size(){return this.$vuetify.display.smAndDown?"x-small":"default"}},methods:{firstNameFromList(e){let t="";if(!e)return t;for(const a of Object.values(e))if(a.name){t=a.name;break}return t}}},cs={class:"controlRow"};function ms(e,t,a,n,r,s){const i=_("DownloadButton"),l=_("MarkReadButton");return u(),p("section",cs,[o(i,{id:"downloadButton",button:!0,item:s.downloadItem,size:s.size},null,8,["item","size"]),o(l,{id:"markReadButton",button:!0,item:s.markReadItem,size:s.size},null,8,["item","size"]),s.isReadButtonShown?(u(),v(ve,{key:0,id:"readButton",title:"Read Comic",disabled:!s.isReadButtonEnabled,size:s.size,to:s.readerRoute},{default:L(()=>[o(Oe,null,{default:L(()=>[ae(z(s.readButtonIcon),1)]),_:1}),t[0]||(t[0]=ae(" Read "))]),_:1},8,["disabled","size","to"])):h("",!0)])}const hs=T(ds,[["render",ms],["__scopeId","data-v-d254bb05"]]),fs={name:"MetadataBookCover",components:{BookCover:la},props:{group:{type:String,required:!0}},computed:{...O(W,{md:e=>e.md})}},ps={class:"bookCoverWrapper"};function vs(e,t,a,n,r,s){const i=_("BookCover");return u(),p("div",ps,[o(i,{id:"bookCover",group:a.group,pks:e.md.ids,"child-count":e.md.childCount,finished:e.md.finished,mtime:e.md.mtime},null,8,["group","pks","child-count","finished","mtime"]),o(Vt,{class:"bookCoverProgress","model-value":e.md.progress,rounded:"","background-color":"inherit",height:"2","aria-label":"% read"},null,8,["model-value"])])}const gs=T(fs,[["render",vs],["__scopeId","data-v-3a0db03b"]]),bs={name:"MetadataHeader",components:{MetadataBookCover:gs,MetadataControls:hs,MetadataTags:He,MetadataText:Me},props:{group:{type:String,required:!0}},computed:{...O(N,{importMetadata:e=>{var t,a;return(a=(t=e.page)==null?void 0:t.adminFlags)==null?void 0:a.importMetadata},q:e=>e.settings.q}),...O(W,{md:e=>e.md}),date(){if(!this.md.year&&!this.md.month&&!this.md.day)return"";const e=new Date(this.md.year||1970,this.md.month||1,this.md.day||1),t={};return this.md.year&&(t.year="numeric"),this.md.month&&(t.month=this.$vuetify.display.smAndDown?"short":"long"),this.md.day&&(t.day="numeric"),e.toLocaleDateString("default",t)},readerRoute(){var e;return(e=this.md)!=null&&e.ids?We(this.md,this.importMetadata):{}},formattedIssueNumber(){if(!this.md)return"Unknown";if(!((this.md.issueNumber===null||this.md.issueNumber===void 0)&&!this.md.issueSuffix))return"#"+De(this.md)},pages(){let e="";if(!this.md)return e;if(this.md.page){const a=ye.format(this.md.page);e+=this.$vuetify.display.smAndDown?`${a} / `:`Read ${a} of `}const t=ye.format(this.md.pageCount);return e+=`${t} page`,this.md.pageCount!==1&&(e+="s"),this.$vuetify.display.smAndUp&&this.md.progress>0&&(e+=` (${Math.round(this.md.progress)}%)`),e},size(){var e;return((e=this==null?void 0:this.md)==null?void 0:e.size)>0?je(this.md.size):0},fileType(){var e;return((e=this==null?void 0:this.md)==null?void 0:e.fileType)||"Unknown"},seriesVolumeCount(){const e=this.md.seriesVolumeCount;return e?`of ${e}`:""},volumeIssueCount(){const e=this.md.volumeIssueCount;return e?`/ ${e}`:""}}},ks={id:"metadataHeader"},ys={key:1,id:"seriesHeader"},_s={id:"seriesRow",class:"inlineRow"},Ss={key:2,id:"titleRow"},ws={key:4,id:"publisherRow",class:"inlineRow"},Cs={key:7,id:"pageDateRow",class:"inlineRow"};function Ts(e,t,a,n,r,s){var b,w,R,I,A,$,j,G;const i=_("MetadataText"),l=_("MetadataBookCover"),d=_("MetadataTags"),m=_("MetadataControls");return u(),p(pe,null,[g("header",ks,[e.q?(u(),v(i,{key:0,id:"search",value:e.q,label:"Search Query",highlight:!0},null,8,["value"])):h("",!0),o(l,{id:"metadataBookCover",group:a.group},null,8,["group"]),((b=e.md.seriesList)==null?void 0:b.length)===1?(u(),p("section",ys,[g("div",_s,[(u(),v(i,{id:"series",key:e.md.seriesList[0].ids,value:e.md.seriesList[0],group:"s",highlight:e.md.group==="s"},null,8,["value","highlight"])),((w=e.md.volumeList)==null?void 0:w.length)===1?(u(),v(i,{id:"volume",key:e.md.volumeList[0].ids,value:e.md.volumeList[0],group:"v",highlight:e.md.group==="v"},null,8,["value","highlight"])):h("",!0),o(i,{value:s.seriesVolumeCount,class:"subdued"},null,8,["value"]),o(i,{id:"issue",value:s.formattedIssueNumber,group:"c",highlight:e.md.group==="c"},null,8,["value","highlight"]),o(i,{value:s.volumeIssueCount,class:"subdued"},null,8,["value"])])])):h("",!0),e.md.name?(u(),p("span",Ss,z(e.md.name),1)):h("",!0),((R=e.md.seriesList)==null?void 0:R.length)>1?(u(),v(d,{key:3,id:"seriesTags",class:"groupTags",label:"Series",values:e.md.seriesList,filter:"s"},null,8,["values"])):h("",!0),g("div",null,[((I=e.md.volumeList)==null?void 0:I.length)>1?(u(),v(d,{key:0,id:"volumeTags",class:"groupTags",label:"Volumes",values:e.md.volumeList,filter:"v"},null,8,["values"])):h("",!0)]),((A=e.md.publisherList)==null?void 0:A.length)===1?(u(),p("div",ws,[(u(),v(i,{id:"publisher",key:e.md.publisherList[0].ids,group:"p",highlight:e.md.group==="p",value:e.md.publisherList[0]},null,8,["highlight","value"])),(($=e.md.imprintList)==null?void 0:$.length)===1?(u(),v(i,{id:"imprint",key:e.md.imprintList[0].ids,group:"i",highlight:e.md.group==="i",value:e.md.imprintList[0]},null,8,["highlight","value"])):h("",!0)])):h("",!0),((j=e.md.publisherList)==null?void 0:j.length)>1?(u(),v(d,{key:5,id:"publisherTags",class:"groupTags",label:"Publishers",values:e.md.publisherList,filter:"p"},null,8,["values"])):h("",!0),((G=e.md.imprintList)==null?void 0:G.length)>1?(u(),v(d,{key:6,id:"imprintTags",class:"groupTags",label:"Imprints",values:e.md.imprintList,filter:"i"},null,8,["values"])):h("",!0),s.pages||e.md.year||e.md.month||e.md.day?(u(),p("div",Cs,[o(i,{value:s.pages},null,8,["value"]),o(i,{value:s.date,class:"datePicker"},null,8,["value"])])):h("",!0)]),o(m,{id:"controls",group:a.group},null,8,["group"])],64)}const Ms=T(bs,[["render",Ts],["__scopeId","data-v-d0899f1f"]]),Bs=1160,Rs=.05,Vs=250,Ns={name:"MetadataButton",components:{CloseButton:Gt,MetadataBody:us,MetadataHeader:Ms,PlaceholderLoading:Yt},props:{book:{type:Object,required:!0},children:{type:Number,default:1},group:{type:String,required:!0},toolbar:{type:Boolean,default:!1}},data(){return{mdiTagOutline:bt,dialog:!1,progress:0}},computed:{...O(W,{md:e=>e.md}),showContainer(){var e;return((e=this.md)==null?void 0:e.loaded)||!1},buttonVariant(){return this.toolbar?"plain":"text"}},watch:{dialog(e){e?this.dialogOpened():this.clearMetadata()}},methods:{...fe(W,["clearMetadata","loadMetadata"]),dialogOpened(){const e=this.book.ids||[this.book.pk],t={group:this.group,pks:e};this.loadMetadata(t),this.startProgress()},startProgress(){this.startTime=Date.now(),this.estimatedMS=Math.max(Rs,this.children/Bs)*1e3,this.updateProgress()},updateProgress(){const e=Date.now()-this.startTime;this.progress=e/this.estimatedMS*100,!(this.progress>=100||this.md)&&setTimeout(()=>{this.updateProgress()},Vs)}}},Ls={key:1,id:"placeholderContainer"};function Is(e,t,a,n,r,s){const i=_("CloseButton"),l=_("MetadataHeader"),d=_("MetadataBody"),m=_("PlaceholderLoading");return u(),v(At,{modelValue:r.dialog,"onUpdate:modelValue":t[3]||(t[3]=b=>r.dialog=b),fullscreen:"",transition:"dialog-bottom-transition"},{activator:L(({props:b})=>[o(ve,Z({"aria-label":"tags",class:"tagButton cardControlButton",variant:s.buttonVariant,icon:r.mdiTagOutline,title:"Tags"},b,{onClick:t[0]||(t[0]=yt(()=>{},["prevent"]))}),null,16,["variant","icon"])]),default:L(()=>[o(i,{class:"closeButton",title:"Close Metadata (esc)",onClick:t[1]||(t[1]=b=>r.dialog=!1)}),s.showContainer?(u(),p("div",{key:0,id:"metadataContainer",onKeyup:t[2]||(t[2]=kt(b=>r.dialog=!1,["esc"]))},[o(l,{group:a.group},null,8,["group"]),o(d,{book:a.book,group:a.group},null,8,["book","group"])],32)):(u(),p("div",Ls,[t[4]||(t[4]=g("div",{id:"placeholderTitle"},"Tags Loading",-1)),o(m,{"model-value":r.progress,indeterminate:r.progress>=100,class:"placeholder"},null,8,["model-value","indeterminate"])]))]),_:1},8,["modelValue"])}const li=T(Ns,[["render",Is],["__scopeId","data-v-60b1fb43"]]),xs={name:"PaginationNavButton",props:{narrow:{type:Boolean,default:!0}},computed:{classes(){return{narrowButton:this.narrow}}}};function $s(e,t,a,n,r,s){return u(),v(ve,{variant:"plain",density:"compact",class:ie(["paginationNavButton",s.classes]),size:"medium"},we({_:2},[re(e.$slots,(i,l)=>({name:l,fn:L(d=>[Ce(e.$slots,l,Z({props:i},d),void 0,!0)])}))]),1032,["class"])}const ui=T(xs,[["render",$s],["__scopeId","data-v-cf061c30"]]),Be=Symbol.for("vuetify:v-slider");function Ps(e,t,a){const n=a==="vertical",r=t.getBoundingClientRect(),s="touches"in e?e.touches[0]:e;return n?s.clientY-(r.top+r.height/2):s.clientX-(r.left+r.width/2)}function Fs(e,t){return"touches"in e&&e.touches.length?e.touches[0][t]:"changedTouches"in e&&e.changedTouches.length?e.changedTouches[0][t]:e[t]}const Ds=ne({disabled:{type:Boolean,default:null},error:Boolean,readonly:{type:Boolean,default:null},max:{type:[Number,String],default:100},min:{type:[Number,String],default:0},step:{type:[Number,String],default:0},thumbColor:String,thumbLabel:{type:[Boolean,String],default:void 0,validator:e=>typeof e=="boolean"||e==="always"},thumbSize:{type:[Number,String],default:20},showTicks:{type:[Boolean,String],default:!1,validator:e=>typeof e=="boolean"||e==="always"},ticks:{type:[Array,Object]},tickSize:{type:[Number,String],default:2},color:String,trackColor:String,trackFillColor:String,trackSize:{type:[Number,String],default:4},direction:{type:String,default:"horizontal",validator:e=>["vertical","horizontal"].includes(e)},reverse:Boolean,...Lt(),...Nt({elevation:2}),ripple:{type:Boolean,default:!0}},"Slider"),Es=e=>{const t=k(()=>parseFloat(e.min)),a=k(()=>parseFloat(e.max)),n=k(()=>Number(e.step)>0?parseFloat(e.step):0),r=k(()=>Math.max(Ne(n.value),Ne(t.value)));function s(i){if(i=parseFloat(i),n.value<=0)return i;const l=Ee(i,t.value,a.value),d=t.value%n.value,m=Math.round((l-d)/n.value)*n.value+d;return parseFloat(Math.min(m,a.value).toFixed(r.value))}return{min:t,max:a,step:n,decimals:r,roundValue:s}},zs=e=>{let{props:t,steps:a,onSliderStart:n,onSliderMove:r,onSliderEnd:s,getActiveThumb:i}=e;const{isRtl:l}=Te(),d=E(t,"reverse"),m=k(()=>t.direction==="vertical"),b=k(()=>m.value!==d.value),{min:w,max:R,step:I,decimals:A,roundValue:$}=a,j=k(()=>parseInt(t.thumbSize,10)),G=k(()=>parseInt(t.tickSize,10)),H=k(()=>parseInt(t.trackSize,10)),U=k(()=>(R.value-w.value)/I.value),X=E(t,"disabled"),q=k(()=>t.error||t.disabled?void 0:t.thumbColor??t.color),S=k(()=>t.error||t.disabled?void 0:t.trackColor??t.color),P=k(()=>t.error||t.disabled?void 0:t.trackFillColor??t.color),M=Le(!1),B=Le(0),F=_e(),D=_e();function y(c){var Re;const f=(Re=F.value)==null?void 0:Re.$el;if(!f)return;const J=t.direction==="vertical",Ze=J?"top":"left",Xe=J?"height":"width",Je=J?"clientY":"clientX",{[Ze]:Qe,[Xe]:et}=f.getBoundingClientRect(),tt=Fs(c,Je);let be=Math.min(Math.max((tt-Qe-B.value)/et,0),1)||0;return(J?b.value:b.value!==l.value)&&(be=1-be),$(w.value+be*(R.value-w.value))}const K=c=>{const f=y(c);f!=null&&s({value:f}),M.value=!1,B.value=0},Y=c=>{const f=y(c);D.value=i(c),D.value&&(M.value=!0,D.value.contains(c.target)?B.value=Ps(c,D.value,t.direction):(B.value=0,f!=null&&r({value:f})),f!=null&&n({value:f}),St(()=>{var J;return(J=D.value)==null?void 0:J.focus()}))},x={passive:!0,capture:!0};function ee(c){const f=y(c);f!=null&&r({value:f})}function le(c){c.stopPropagation(),c.preventDefault(),K(c),window.removeEventListener("mousemove",ee,x),window.removeEventListener("mouseup",le)}function ue(c){var f;K(c),window.removeEventListener("touchmove",ee,x),(f=c.target)==null||f.removeEventListener("touchend",ue)}function ge(c){var f;Y(c),window.addEventListener("touchmove",ee,x),(f=c.target)==null||f.addEventListener("touchend",ue,{passive:!1})}function V(c){c.button===0&&(c.preventDefault(),Y(c),window.addEventListener("mousemove",ee,x),window.addEventListener("mouseup",le,{passive:!1}))}const C=c=>{const f=(c-w.value)/(R.value-w.value)*100;return Ee(isNaN(f)?0:f,0,100)},te=E(t,"showTicks"),se=k(()=>te.value?t.ticks?Array.isArray(t.ticks)?t.ticks.map(c=>({value:c,position:C(c),label:c.toString()})):Object.keys(t.ticks).map(c=>({value:parseFloat(c),position:C(parseFloat(c)),label:t.ticks[c]})):U.value!==1/0?_t(U.value+1).map(c=>{const f=w.value+c*I.value;return{value:f,position:C(f)}}):[]:[]),de=k(()=>se.value.some(c=>{let{label:f}=c;return!!f})),ce={activeThumbRef:D,color:E(t,"color"),decimals:A,disabled:X,direction:E(t,"direction"),elevation:E(t,"elevation"),hasLabels:de,isReversed:d,indexFromEnd:b,min:w,max:R,mousePressed:M,numTicks:U,onSliderMousedown:V,onSliderTouchstart:ge,parsedTicks:se,parseMouseMove:y,position:C,readonly:E(t,"readonly"),rounded:E(t,"rounded"),roundValue:$,showTicks:te,startOffset:B,step:I,thumbSize:j,thumbColor:q,thumbLabel:E(t,"thumbLabel"),ticks:E(t,"ticks"),tickSize:G,trackColor:S,trackContainerRef:F,trackFillColor:P,trackSize:H,vertical:m};return wt(Be,ce),ce},Os=ne({focused:Boolean,max:{type:Number,required:!0},min:{type:Number,required:!0},modelValue:{type:Number,required:!0},position:{type:Number,required:!0},ripple:{type:[Boolean,Object],default:!0},name:String,...Se()},"VSliderThumb"),As=me()({name:"VSliderThumb",directives:{Ripple:It},props:Os(),emits:{"update:modelValue":e=>!0},setup(e,t){let{slots:a,emit:n}=t;const r=ze(Be),{isRtl:s,rtlClasses:i}=Te();if(!r)throw new Error("[Vuetify] v-slider-thumb must be used inside v-slider or v-range-slider");const{thumbColor:l,step:d,disabled:m,thumbSize:b,thumbLabel:w,direction:R,isReversed:I,vertical:A,readonly:$,elevation:j,mousePressed:G,decimals:H,indexFromEnd:U}=r,X=k(()=>m.value?void 0:j.value),{elevationClasses:q}=xt(X),{textColorClasses:S,textColorStyles:P}=$t(l),{pageup:M,pagedown:B,end:F,home:D,left:y,right:K,down:Y,up:x}=Ct,ee=[M,B,F,D,y,K,Y,x],le=k(()=>d.value?[1,2,3]:[1,5,10]);function ue(V,C){if(!ee.includes(V.key))return;V.preventDefault();const te=d.value||.1,se=(e.max-e.min)/te;if([y,K,Y,x].includes(V.key)){const ce=(A.value?[s.value?y:K,I.value?Y:x]:U.value!==s.value?[y,x]:[K,x]).includes(V.key)?1:-1,c=V.shiftKey?2:V.ctrlKey?1:0;C=C+ce*te*le.value[c]}else if(V.key===D)C=e.min;else if(V.key===F)C=e.max;else{const de=V.key===B?1:-1;C=C-de*te*(se>100?se/10:10)}return Math.max(e.min,Math.min(e.max,C))}function ge(V){const C=ue(V,e.modelValue);C!=null&&n("update:modelValue",C)}return he(()=>{const V=Q(U.value?100-e.position:e.position,"%");return o("div",{class:["v-slider-thumb",{"v-slider-thumb--focused":e.focused,"v-slider-thumb--pressed":e.focused&&G.value},e.class,i.value],style:[{"--v-slider-thumb-position":V,"--v-slider-thumb-size":Q(b.value)},e.style],role:"slider",tabindex:m.value?-1:0,"aria-label":e.name,"aria-valuemin":e.min,"aria-valuemax":e.max,"aria-valuenow":e.modelValue,"aria-readonly":!!$.value,"aria-orientation":R.value,onKeydown:$.value?void 0:ge},[o("div",{class:["v-slider-thumb__surface",S.value,q.value],style:{...P.value}},null),Ie(o("div",{class:["v-slider-thumb__ripple",S.value],style:P.value},null),[[Tt("ripple"),e.ripple,null,{circle:!0,center:!0}]]),o(Ut,{origin:"bottom center"},{default:()=>{var C;return[Ie(o("div",{class:"v-slider-thumb__label-container"},[o("div",{class:["v-slider-thumb__label"]},[o("div",null,[((C=a["thumb-label"])==null?void 0:C.call(a,{modelValue:e.modelValue}))??e.modelValue.toFixed(d.value?H.value:1)])])]),[[Mt,w.value&&e.focused||w.value==="always"]])]}})])}),{}}}),Gs=ne({start:{type:Number,required:!0},stop:{type:Number,required:!0},...Se()},"VSliderTrack"),js=me()({name:"VSliderTrack",props:Gs(),emits:{},setup(e,t){let{slots:a}=t;const n=ze(Be);if(!n)throw new Error("[Vuetify] v-slider-track must be inside v-slider or v-range-slider");const{color:r,parsedTicks:s,rounded:i,showTicks:l,tickSize:d,trackColor:m,trackFillColor:b,trackSize:w,vertical:R,min:I,max:A,indexFromEnd:$}=n,{roundedClasses:j}=Pt(i),{backgroundColorClasses:G,backgroundColorStyles:H}=xe(b),{backgroundColorClasses:U,backgroundColorStyles:X}=xe(m),q=k(()=>`inset-${R.value?"block":"inline"}-${$.value?"end":"start"}`),S=k(()=>R.value?"height":"width"),P=k(()=>({[q.value]:"0%",[S.value]:"100%"})),M=k(()=>e.stop-e.start),B=k(()=>({[q.value]:Q(e.start,"%"),[S.value]:Q(M.value,"%")})),F=k(()=>l.value?(R.value?s.value.slice().reverse():s.value).map((y,K)=>{var x;const Y=y.value!==I.value&&y.value!==A.value?Q(y.position,"%"):void 0;return o("div",{key:y.value,class:["v-slider-track__tick",{"v-slider-track__tick--filled":y.position>=e.start&&y.position<=e.stop,"v-slider-track__tick--first":y.value===I.value,"v-slider-track__tick--last":y.value===A.value}],style:{[q.value]:Y}},[(y.label||a["tick-label"])&&o("div",{class:"v-slider-track__tick-label"},[((x=a["tick-label"])==null?void 0:x.call(a,{tick:y,index:K}))??y.label])])}):[]);return he(()=>o("div",{class:["v-slider-track",j.value,e.class],style:[{"--v-slider-track-size":Q(w.value),"--v-slider-tick-size":Q(d.value)},e.style]},[o("div",{class:["v-slider-track__background",U.value,{"v-slider-track__background--opacity":!!r.value||!b.value}],style:{...P.value,...X.value}},null),o("div",{class:["v-slider-track__fill",G.value],style:{...B.value,...H.value}},null),l.value&&o("div",{class:["v-slider-track__ticks",{"v-slider-track__ticks--always-show":l.value==="always"}]},[F.value])])),{}}}),Us=ne({...Kt(),...Ds(),...Ht(),modelValue:{type:[Number,String],default:0}},"VSlider"),qs=me()({name:"VSlider",props:Us(),emits:{"update:focused":e=>!0,"update:modelValue":e=>!0,start:e=>!0,end:e=>!0},setup(e,t){let{slots:a,emit:n}=t;const r=_e(),{rtlClasses:s}=Te(),i=Es(e),l=Bt(e,"modelValue",void 0,S=>i.roundValue(S??i.min.value)),{min:d,max:m,mousePressed:b,roundValue:w,onSliderMousedown:R,onSliderTouchstart:I,trackContainerRef:A,position:$,hasLabels:j,readonly:G}=zs({props:e,steps:i,onSliderStart:()=>{n("start",l.value)},onSliderEnd:S=>{let{value:P}=S;const M=w(P);l.value=M,n("end",M)},onSliderMove:S=>{let{value:P}=S;return l.value=w(P)},getActiveThumb:()=>{var S;return(S=r.value)==null?void 0:S.$el}}),{isFocused:H,focus:U,blur:X}=qt(e),q=k(()=>$(l.value));return he(()=>{const S=$e.filterProps(e),P=!!(e.label||a.label||a.prepend);return o($e,Z({class:["v-slider",{"v-slider--has-labels":!!a["tick-label"]||j.value,"v-slider--focused":H.value,"v-slider--pressed":b.value,"v-slider--disabled":e.disabled},s.value,e.class],style:e.style},S,{focused:H.value}),{...a,prepend:P?M=>{var B,F;return o(pe,null,[((B=a.label)==null?void 0:B.call(a,M))??(e.label?o(Wt,{id:M.id.value,class:"v-slider__label",text:e.label},null):void 0),(F=a.prepend)==null?void 0:F.call(a,M)])}:void 0,default:M=>{let{id:B,messagesId:F}=M;return o("div",{class:"v-slider__container",onMousedown:G.value?void 0:R,onTouchstartPassive:G.value?void 0:I},[o("input",{id:B.value,name:e.name||B.value,disabled:!!e.disabled,readonly:!!e.readonly,tabindex:"-1",value:l.value},null),o(js,{ref:A,start:0,stop:q.value},{"tick-label":a["tick-label"]}),o(As,{ref:r,"aria-describedby":F.value,focused:H.value,min:d.value,max:m.value,modelValue:l.value,"onUpdate:modelValue":D=>l.value=D,position:q.value,elevation:e.elevation,onFocus:U,onBlur:X,ripple:e.ripple,name:e.name},{"thumb-label":a["thumb-label"]})])}})}),{}}}),Hs={name:"PaginationSlider",props:{min:{type:Number,default:0}}};function Ks(e,t,a,n,r,s){return u(),v(qs,Z({"thumb-size":"36",class:"paginationSlider",density:"compact","hide-details":"auto",min:a.min,rounded:!0,"show-ticks":"always",step:1,"thumb-label":"always"},e.$attrs),{"tick-label":L(({index:i})=>[ae(z(i+a.min),1)]),_:1},16,["min"])}const di=T(Hs,[["render",Ks],["__scopeId","data-v-01b67afd"]]),Ws={name:"PaginationToolbar"};function Ys(e,t,a,n,r,s){return u(),v(Zt,{class:"paginationToolbar codexToolbar",density:"compact",transform:"center bottom"},we({_:2},[re(e.$slots,(i,l)=>({name:l,fn:L(d=>[Ce(e.$slots,l,Z({props:i},d),void 0,!0)])}))]),1024)}const ci=T(Ws,[["render",Ys],["__scopeId","data-v-cfa8cce0"]]);export{la as B,ma as D,va as M,ke as N,ui as P,ri as T,ni as V,oi as a,li as b,ci as c,di as d,We as g,je as p,ta as t};
@@ -1,2 +0,0 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/pdf-doc-HpDB0I3q.js","assets/main-JUy8mnXG.js","assets/main-Of3aYkZ7.css","assets/pdf-doc-DxqOo2k2.css","assets/pager-full-pdf-CcORwqD4.js","assets/settings-drawer-p6ZjyJ07.js","assets/forwardRefs-BxFNqo8E.js","assets/forwardRefs-BhPKpkYY.css","assets/unauthorized-CvdCW-Cq.js","assets/VDialog-CoOMSEbM.js","assets/VDialog-Cj6z437E.css","assets/change-password-dialog-DOioR_QK.js","assets/VForm-DXrmSq46.js","assets/VSelectionControl-DvYb3Pi4.js","assets/VSelectionControl-RqBzwjYi.css","assets/VForm-DxBt30-N.css","assets/admin-BpE7-fB4.js","assets/change-password-dialog-DL8UMjmX.css","assets/ssrBoot-B73_e82Z.js","assets/unauthorized-DeuhBNVr.css","assets/copy-to-clipboard-DoUvDJVx.js","assets/VDivider-BXrVdmrm.js","assets/VDivider-DU47sRrT.css","assets/settings-drawer-Cz7dC3Ew.css","assets/VWindowItem-rXg83yw2.js","assets/VWindowItem-CWBhiE_Y.css","assets/VSelect-BpkoCPsm.js","assets/VCheckboxBtn-D8jQ_2In.js","assets/VSelect-CBNrI-XP.css","assets/pagination-toolbar-Cufj0Rqv.js","assets/VTable-DbFt9lJE.js","assets/VTable-BnxSZ_W5.css","assets/confirm-dialog-BRUkbajJ.js","assets/confirm-dialog-BI5kQLy_.css","assets/pagination-toolbar-DkYjhdVb.css","assets/VExpansionPanels-BvZsXmp0.js","assets/VExpansionPanels-RsCANmDP.css","assets/VRadioGroup-DgtijQjG.js","assets/VRadioGroup-Cp9mZ7cb.css","assets/VCheckbox-DtuP7Cwl.js","assets/VCheckbox-CvH8ekHL.css","assets/index-D3gnYqT3.js","assets/index-Czf-fUM7.css"])))=>i.map(i=>d[i]);
2
- import{_ as k,A as b,C as v,D as P,al as c,v as g,G as S,w as d,n as C,l as u,q as l,a as r,x as _,z as w,k as f,aa as J,F as y,am as _e,an as Pe,m as U,ao as Q,ap as Se,aq as ee,H as te,ar as oe,as as ae,at as A,au as we,S as B,a5 as ye,ai as Ce,av as se,y as I,h as re,s as h,aw as Re,B as ne,ax as Be,ay as Te,az as De,aA as Ie,aB as Le,aC as $e,aD as Oe,Y as Ve,aE as Ae,aF as Ee,E as L,ab as xe,$ as Ne,aG as Fe,aH as Ue,O as ze,P as Me,Q as We,R as He,aI as qe,aJ as Ke,L as z,aK as Ge,V as je,aL as ie,aM as Ye}from"./main-JUy8mnXG.js";import{V as Xe,a as Ze,S as Je}from"./settings-drawer-p6ZjyJ07.js";import{k as R,I as Qe,V as le}from"./forwardRefs-BxFNqo8E.js";import{P as et,E as ce,A as tt,V as ot,a as at,U as st,c as rt}from"./unauthorized-CvdCW-Cq.js";import{V as de,a as ue}from"./VWindowItem-rXg83yw2.js";import{b as nt}from"./VSelect-BpkoCPsm.js";import{C as W,a as it}from"./VDialog-CoOMSEbM.js";import{D as lt,T as ct,b as dt,V as E,a as ut,P as pe,c as pt,d as ht}from"./pagination-toolbar-Cufj0Rqv.js";import{V as gt,a as mt,b as kt,c as bt}from"./VExpansionPanels-BvZsXmp0.js";import{d as ft,V as vt,e as _t}from"./VSelectionControl-DvYb3Pi4.js";import{V as x,a as N}from"./VRadioGroup-DgtijQjG.js";import{a as M}from"./VDivider-BXrVdmrm.js";import{V as D}from"./VCheckbox-DtuP7Cwl.js";import{T as F}from"./index-D3gnYqT3.js";function he(e,t){const{self:a=!1}=t.modifiers??{},p=t.value,n=typeof p=="object"&&p.options||{passive:!0},o=typeof p=="function"||"handleEvent"in p?p:p.handler,i=a?e:t.arg?document.querySelector(t.arg):window;i&&(i.addEventListener("scroll",o,n),e._onScroll=Object(e._onScroll),e._onScroll[t.instance.$.uid]={handler:o,options:n,target:a?void 0:i})}function ge(e,t){var o;if(!((o=e._onScroll)!=null&&o[t.instance.$.uid]))return;const{handler:a,options:p,target:n=e}=e._onScroll[t.instance.$.uid];n.removeEventListener("scroll",a,p),delete e._onScroll[t.instance.$.uid]}function Pt(e,t){t.value!==t.oldValue&&(ge(e,t),he(e,t))}const St={mounted:he,unmounted:ge,updated:Pt},wt={name:"BookChangeDrawer",props:{direction:{type:String,required:!0}},head(){if(this.isDrawerOpen)return this.prefetchLinks(this.params,this.computedDirection,!0)},computed:{...P(c,["isBTT"]),...v(c,{computedDirection(){return this.normalizeDirection(this.direction)},params(e){return e.routes.books[this.computedDirection]},isDrawerOpen(e){return e.bookChange===this.computedDirection},icon(){return this.bookChangeIcon(this.computedDirection)}}),drawerLocation(){return this.bookChangeLocation(this.direction)},cursorClass(){return this.bookChangeCursorClass(this.computedDirection)},show(){return this.bookChangeShow(this.computedDirection)},route(){return this.toRoute(this.params)},label(){return this.linkLabel(this.computedDirection,"Book")}},methods:{...b(c,["linkLabel","normalizeDirection","prefetchLinks","toRoute","bookChangeLocation","bookChangeCursorClass","bookChangeShow","bookChangeIcon"])}};function yt(e,t,a,p,n,o){const i=u("router-link");return o.show?(l(),g(Xe,{key:0,class:C(["bookChangeDrawer",{drawerActivated:e.isDrawerOpen}]),"disable-resize-watcher":"","disable-route-watcher":"",location:o.drawerLocation,"model-value":e.isDrawerOpen,scrim:!1,temporary:"",touchless:""},{default:d(()=>[r(i,{class:C({navLink:!0,[o.cursorClass]:!0}),to:o.route,"aria-label":o.label,title:o.label,onClick:t[0]||(t[0]=s=>s.stopImmediatePropagation())},{default:d(()=>[r(R,{class:"bookChangeIcon"},{default:d(()=>[_(w(e.icon),1)]),_:1})]),_:1},8,["class","to","aria-label","title"])]),_:1},8,["location","model-value","class"])):S("",!0)}const Ct=k(wt,[["render",yt],["__scopeId","data-v-bd4115bf"]]),Rt={name:"BookChangeActivator",components:{BookChangeDrawer:Ct},props:{direction:{type:String,required:!0}},computed:{show(){return this.bookChangeShow(this.computedDirection)},computedDirection(){return this.normalizeDirection(this.direction)},positionClass(){return this.bookChangeLocation(this.direction)+"Pos"},cursorClass(){return this.bookChangeCursorClass(this.direction)}},methods:{...b(c,["bookChangeCursorClass","bookChangeLocation","bookChangeShow","normalizeDirection","setBookChangeFlag"])}};function Bt(e,t,a,p,n,o){const i=u("BookChangeDrawer");return l(),f(y,null,[o.show?(l(),f("div",{key:0,class:C(["changeColumn",{[o.positionClass]:!0,[o.cursorClass]:!0}]),onClick:t[0]||(t[0]=J(s=>e.setBookChangeFlag(a.direction),["stop"]))},null,2)):S("",!0),r(i,{direction:a.direction},null,8,["direction"])],64)}const Tt=k(Rt,[["render",Bt],["__scopeId","data-v-67df236c"]]),Dt={name:"LoadingPage",components:{Placeholder:et},props:{twoPages:{type:Boolean,required:!0}}};function It(e,t,a,p,n,o){const i=u("Placeholder");return l(),f("div",{class:C(["pageLoading",{twoPages:a.twoPages}])},[r(i,{class:"pagePlaceholder"})],2)}const Lt=k(Dt,[["render",It],["__scopeId","data-v-04027168"]]),H="unauthorized",$t={name:"ErrorPage",components:{EmptyState:ce},props:{twoPages:{type:Boolean,required:!0},type:{type:String,required:!0}},emits:["retry"],computed:{text(){return this.type===H?"Protected page":"Failed to load page"},icon(){return this.type===H?_e:Pe}},methods:{onAction(e){this.$emit("retry",e)}}};function Ot(e,t,a,p,n,o){const i=u("EmptyState");return l(),g(i,{class:C(["pageError",{twoPages:a.twoPages}]),headline:o.text,icon:o.icon,"action-text":"Retry","onClick:action":o.onAction},null,8,["class","headline","icon","onClick:action"])}const Vt=k($t,[["render",Ot],["__scopeId","data-v-97fa48e8"]]),At={name:"ImgPage",props:{book:{type:Object,required:!0},src:{type:String,required:!0}},emits:["load","error"],computed:{...v(c,{scale:e=>e.clientSettings.scale}),style(){const e={};if(this.scale==1)return e;const t=this.$el;if(!(t!=null&&t.naturalWidth))return e;const a=t.naturalWidth/2;return e.transformOrigin=`${a}px top`,e.transform=`scale(${this.scale})`,e},bookSettings(){return this.getBookSettings(this.book)},classes(){return this.bookSettings.fitToClass}},methods:{...b(c,["getBookSettings"])}},Et=["src"];function xt(e,t,a,p,n,o){return l(),f("img",U({class:[o.classes,"img"],draggable:"false",src:a.src,style:o.style},e.$attrs,{onError:t[0]||(t[0]=i=>e.$emit("error",i)),onLoad:t[1]||(t[1]=i=>e.$emit("load",i))}),null,16,Et)}const q=k(At,[["render",xt],["__scopeId","data-v-014c2ac0"]]),K=Q(ee(()=>ae(()=>import("./pdf-doc-HpDB0I3q.js"),__vite__mapDeps([0,1,2,3])))),Nt=333,Ft={name:"BookPage",components:{ErrorPage:Vt,LoadingPage:Lt,PDFDoc:K,ImgPage:q},props:{book:{type:Object,required:!0},page:{type:Number,required:!0}},data(){return{showProgress:!1,loaded:!1,error:"",ts:0}},computed:{...v(c,{scale:e=>e.clientSettings.scale}),style(){var a;const e={};if(this.book.fileType==="PDF"||this.scale==1)return e;const t=(a=this.$refs.pageComponent)==null?void 0:a.$el;return t!=null&&t.naturalHeight&&(e.height=t.naturalHeight*this.scale+"px",e.width=t.naturalWidth*this.scale+"px"),e},src(){const e=Math.max(this.book.mtime,this.ts),t={pk:this.book.pk,page:this.page,mtime:e};return Se(t)},component(){return this.book.fileType==="PDF"?K:q}},mounted(){setTimeout(function(){this.loaded||(this.loading=!0)},Nt)},methods:{onLoad(){this.showProgress=!1,this.loaded=!0,this.error=!1},onError(){this.error="load",this.showProgress=!1},onUnauthorized(){this.error="unauthorized",this.showProgress=!1},onRetry(){this.ts=Date.now()}}},Ut=["id","data-page"];function zt(e,t,a,p,n,o){const i=u("ErrorPage"),s=u("LoadingPage");return l(),f("div",{id:`page${a.page}`,key:n.ts,"data-page":a.page,class:"page",style:oe(o.style)},[n.error?(l(),g(i,{key:0,"two-pages":e.settings.twoPages,type:n.error,onRetry:o.onRetry},null,8,["two-pages","type","onRetry"])):n.showProgress&&!n.loaded?(l(),g(s,{key:1,"two-pages":e.settings.twoPages},null,8,["two-pages"])):(l(),g(te(o.component),{key:2,ref:"pageComponent",book:a.book,page:1,src:o.src,onError:o.onError,onLoad:o.onLoad,onUnauthorized:o.onUnauthorized},null,40,["book","src","onError","onLoad","onUnauthorized"]))],12,Ut)}const me=k(Ft,[["render",zt],["__scopeId","data-v-ea178cb3"]]),Mt=.5,Wt={name:"ScaleForScroll",emits:["click"],data(){return{mdiMagnifyMinusOutline:we}},computed:{...v(c,{scale:e=>e.clientSettings.scale}),showReset(){return this.scale!=A},style(){return{cursor:this.scale==A?"zoom-in":"all-scroll"}}},methods:{...b(c,["setSettingsClient"]),clearSelection(){globalThis.getSelection&&globalThis.getSelection().removeAllRanges()},onDoubleClick(){this.clearSelection();const e=this.scale+Mt;this.setSettingsClient({scale:e})},scaleReset(){this.setSettingsClient({scale:A})}}};function Ht(e,t,a,p,n,o){const i=Ce("drag-scroller");return B((l(),f("div",{class:"scaleForScroll",style:oe(o.style),onDblclick:t[0]||(t[0]=(...s)=>o.onDoubleClick&&o.onDoubleClick(...s))},[ye(e.$slots,"default",{},void 0,!0),o.showReset?(l(),g(R,{key:0,class:"resetIcon",onClick:J(o.scaleReset,["stop"])},{default:d(()=>[_(w(n.mdiMagnifyMinusOutline),1)]),_:1},8,["onClick"])):S("",!0)],36)),[[i,,void 0,{onlyX:!0}]])}const ke=k(Wt,[["render",Ht],["__scopeId","data-v-88f3df90"]]),qt={name:"HorizontalPages",components:{BookPage:me,ScaleForScroll:ke},props:{book:{type:Object,required:!0},page:{type:Number,required:!0}},emits:["click"],computed:{bookSettings(){return this.getBookSettings(this.book)},isReadInReverse(){return this.bookSettings.isReadInReverse},showSecondPage(){return this.bookSettings.twoPages&&this.page<this.book.maxPage&&!this.isCoverPage(this.book,this.page)},showPageOne(){return!this.isReadInReverse||this.showSecondPage},showPageTwo(){return this.isReadInReverse||this.showSecondPage},pageOne(){return this.isReadInReverse?this.page+1:this.page},pageTwo(){return this.isReadInReverse?this.page:this.page+1}},methods:{...b(c,["getBookSettings","isCoverPage"])}};function Kt(e,t,a,p,n,o){const i=u("BookPage"),s=u("ScaleForScroll");return l(),g(s,{class:"noWrap"},{default:d(()=>[o.showPageOne?(l(),g(i,{key:0,ref:"pageOne",book:a.book,page:o.pageOne,class:"horizontalPage"},null,8,["book","page"])):S("",!0),o.showPageTwo?(l(),g(i,{key:1,book:a.book,page:o.pageTwo,class:"horizontalPage"},null,8,["book","page"])):S("",!0)]),_:1})}const Gt=k(qt,[["render",Kt],["__scopeId","data-v-ce77a1b1"]]),jt={name:"PageChangeLink",props:{direction:{type:String,required:!0}},head(){return this.prefetchLinks(this.params,this.computedDirection)},computed:{...P(c,["isFirstPage","isLastPage"]),...v(c,{params(e){return e.routes[this.computedDirection]}}),computedDirection(){return this.normalizeDirection(this.direction)},show(){return this.computedDirection==="prev"?!this.isFirstPage:!this.isLastPage},pageChangeClass(){return"pageChangeColumn"},directionClass(){return this.direction},route(){return this.toRoute(this.params)},label(){return this.linkLabel(this.computedDirection,"Page")}},methods:{...b(c,["linkLabel","normalizeDirection","prefetchLinks","toRoute"])}};function Yt(e,t,a,p,n,o){const i=u("router-link");return o.show?(l(),g(i,{key:0,to:o.route,"aria-label":o.label,class:C(["changeColumn",{[o.directionClass]:!0}]),onClick:t[0]||(t[0]=s=>s.stopImmediatePropagation())},null,8,["to","aria-label","class"])):S("",!0)}const Xt=k(jt,[["render",Yt],["__scopeId","data-v-e7f427cd"]]),Zt=48,Jt=48,Qt={name:"PagerHorizontal",components:{HorizontalPages:Gt,PageChangeLink:Xt},props:{book:{type:Object,required:!0}},data(){return{activePage:0,pages:[]}},computed:{...v(c,{prevBook:e=>{var t;return(t=e.routes.books)==null?void 0:t.prev},nextBook:e=>{var t;return(t=e.routes.books)==null?void 0:t.next},storePage:e=>e.page,storePk:e=>e.books.current.pk,transition:e=>e.readerSettings.pageTransition}),bookSettings(){return this.getBookSettings(this.book)},twoPages(){return this.bookSettings.twoPages},isReadInReverse(){return this.bookSettings.isReadInReverse},windowIndex(){const e=this.activePage-this.pages[0];return Math.min(Math.max(0,e),this.book.maxPage)}},watch:{twoPages(){this.setActivePage(this.storePage,!0)},storePage(e){if(this.book.pk===this.storePk){this.activePage=e;const t=this.pages.at(0),a=this.pages.at(-1);(e<t||e>a)&&this.setPages()}},prevBook(e){this.book.pk===e.pk&&(this.activePage=this.book.maxPage)},nextBook(e){this.book.pk===e.pk&&(this.activePage=0)}},created(){this.book.pk===this.storePk?this.activePage=+this.$route.params.page:this.book.pk===this.prevBook.pk?this.activePage=this.book.maxPage:this.activePage=0,this.setPages()},methods:{...b(c,["getBookSettings","setBookChangeFlag","setActivePage"]),setPages(){const e=Math.max(this.activePage-Zt,0),t=Math.min(this.activePage+Jt,this.book.maxPage);this.pages=se(e,t+1)}}};function eo(e,t,a,p,n,o){const i=u("PageChangeLink"),s=u("HorizontalPages");return l(),g(de,{"show-arrows":"",continuous:"","model-value":o.windowIndex,reverse:o.isReadInReverse},{prev:d(()=>[r(i,{direction:"prev"})]),next:d(()=>[r(i,{direction:"next"})]),default:d(()=>[(l(!0),f(y,null,I(n.pages,m=>(l(),g(ue,{key:`c/${a.book.pk}/${m}`,class:"windowItem",disabled:"",eager:m>=e.storePage-1&&m<=e.storePage+2,"model-value":m,transition:e.transition,"reverse-transition":e.transition},{default:d(()=>[r(s,{book:a.book,page:m},null,8,["book","page"])]),_:2},1032,["eager","model-value","transition","reverse-transition"]))),128))]),_:1},8,["model-value","reverse"])}const G=k(Qt,[["render",eo],["__scopeId","data-v-00aae4a0"]]),j=250,to={name:"PagerVertical",components:{BookPage:me,ScaleForScroll:ke},props:{book:{type:Object,required:!0}},data(){return{innerHeight:window.innerHeight,innerWidth:window.innerWidth,intersectorOn:!1,programmaticScroll:!1,intersectOptions:{handler:this.onIntersect,options:{threshold:[.75]}}}},computed:{...v(c,{storePage:e=>e.page,showToolbars:e=>e.showToolbars}),...re(c,["reactWithScroll"]),bookSettings(){return this.getBookSettings(this.book)},isReadInReverse(){return this.bookSettings.isReadInReverse},items(){var a;const e=(a=this.book)!=null&&a.maxPage?this.book.maxPage+1:0,t=se(0,e);return this.isReadInReverse&&t.reverse(),t}},watch:{storePage(e){this.reactWithScroll&&this.scrollToPage(e)}},mounted(){window.addEventListener("resize",this.onResize),setTimeout(()=>{this.scrollToPage(this.storePage)},j)},beforeUnmount(){window.removeEventListener("resize",this.onResize)},methods:{...b(c,["getBookSettings","setActivePage","setBookChangeFlag"]),onIntersect(e,t){if(e&&this.intersectorOn){const p=+t[0].target.dataset.page;this.setActivePage(p,!1)}},onScroll(){if(this.programmaticScroll)return;this.intersectorOn=!0;const e=this.$refs.verticalScroll.$el,t=e.scrollTop;if(this.storePage===0&&t===0)this.setBookChangeFlag("prev");else if(this.storePage===this.book.maxPage){const a=e.scrollTopMax||e.scrollHeight-e.clientTop;window.innerHeight+t+1>=a&&this.setBookChangeFlag("next")}},scrollToPage(e){this.intersectorOn=!1,this.programmaticScroll=!0;const t=this.$refs.verticalScroll;t?t.scrollToIndex(e):console.debug("Can't find verticalScroll component."),setTimeout(()=>{this.programmaticScroll=!1},j)},onResize(){this.innerHeight=window.innerHeight,this.innerWidth=window.innerWidth}}},oo=["data-page"];function ao(e,t,a,p,n,o){const i=u("BookPage"),s=u("ScaleForScroll");return l(),g(s,null,{default:d(()=>[B((l(),g(nt,{id:"verticalScroll",key:o.isReadInReverse,ref:"verticalScroll",items:o.items,height:n.innerHeight,width:n.innerWidth},{default:d(({item:m})=>[r(i,{book:a.book,page:m,class:"verticalPage"},null,8,["book","page"]),B(h("div",{class:C(["pageTracker",{pageTrackerToolbars:e.showToolbars}]),"data-page":m},null,10,oo),[[Qe,n.intersectOptions,void 0,{quiet:!0}]])]),_:1},8,["items","height","width"])),[[St,o.onScroll,"#verticalScroll"]])]),_:1})}const Y=k(to,[["render",ao],["__scopeId","data-v-4fdc17f1"]]),X=Q(ee(()=>ae(()=>import("./pager-full-pdf-CcORwqD4.js"),__vite__mapDeps([4,1,2,0,3,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42])))),so={name:"PagerSelector",components:{PagerHorizontal:G,PagerPDF:X,PagerVertical:Y},props:{book:{type:Object,required:!0}},emits:["click"],head(){return this.prefetchBook(this.book)},computed:{...P(c,["cacheBook"]),...v(c,{storePk:e=>{var t,a;return((a=(t=e.books)==null?void 0:t.current)==null?void 0:a.pk)||0}}),isActiveBook(){var e;return this.book&&this.storePk===((e=this.book)==null?void 0:e.pk)},bookSettings(){return this.getBookSettings(this.book)},readerFullPdf(){var e;return((e=this.book)==null?void 0:e.fileType)=="PDF"&&this.cacheBook&&!this.bookSettings.isVertical},component(){let e;return this.readerFullPdf?e=X:this.bookSettings.isVertical?e=Y:e=G,e}},watch:{$route(e){+e.params.pk===this.book.pk&&this.setActivePage(+e.params.page,!0)}},created(){this.isActiveBook&&this.setActivePage(+this.$route.params.page,!0)},methods:{...b(c,["getBookSettings","isBookVertical","setActivePage","prefetchBook"])}};function ro(e,t,a,p,n,o){return l(),g(te(o.component),{book:a.book},null,8,["book"])}const no=k(so,[["render",ro]]),io={name:"BooksWindow",components:{BookChangeActivator:Tt,Pager:no},computed:{...P(c,["isBTT"]),...v(c,{books:e=>[e.books.prev,e.books.current,e.books.next].filter(Boolean),bookChange:e=>e.bookChange,currentBookPk:e=>{var t,a;return((a=(t=e.books)==null?void 0:t.current)==null?void 0:a.pk)||0},bookRoutes:e=>e.routes.books,transition:e=>e.readerSettings.pageTransition}),bookChangePrev(){return this.bookChangeShow("prev")},bookChangeNext(){return this.bookChangeShow("next")}},watch:{$route(e,t){(!t||!t.params||+e.params.pk!=+t.params.pk)&&this.loadBooks({params:e.params})}},beforeMount(){this.setBookChangeFlag(),this.loadBooks({})},methods:{...b(c,["loadBooks","setBookChangeFlag","toggleToolbars"]),click(){this.toggleToolbars(),this.setBookChangeFlag()},eager(e){return this.bookChange&&this.bookRoutes[this.bookChange]&&this.bookRoutes[this.bookChange].pk===e}}};function lo(e,t,a,p,n,o){const i=u("BookChangeActivator"),s=u("Pager");return l(),g(de,{id:"booksWindow",direction:"vertical","model-value":e.currentBookPk,reverse:e.isBTT,"show-arrows":"",onClick:e.toggleToolbars},{prev:d(()=>[r(i,{direction:"prev"})]),next:d(()=>[r(i,{direction:"next"})]),default:d(()=>[(l(!0),f(y,null,I(e.books,m=>(l(),g(ue,{key:`c/${m.pk}`,class:"windowItem",disabled:"",eager:o.eager(m.pk),value:m.pk,transition:e.transition,"reverse-transitin":e.transition},{default:d(()=>[r(s,{book:m,onClick:o.click},null,8,["book","onClick"])]),_:2},1032,["eager","value","transition","reverse-transitin"]))),128))]),_:1},8,["model-value","reverse","onClick"])}const co=k(io,[["render",lo],["__scopeId","data-v-4293272b"]]),uo={name:"DownloadPanel",components:{CodexListItem:W,DownloadButton:lt},data(){return{mdiDownload:De,mdiFileImage:Te}},computed:{...P(c,["activeTitle","routeParams"]),...v(c,{currentBook:e=>{var t;return(t=e.books)==null?void 0:t.current},fileType:e=>{var t,a;return(a=(t=e.books)==null?void 0:t.current)==null?void 0:a.fileType},mtime:e=>{var t,a;return(a=(t=e.books)==null?void 0:t.current)==null?void 0:a.mtime},pk:e=>{var t,a;return(a=(t=e.books)==null?void 0:t.current)==null?void 0:a.pk},filename:e=>{var t,a;return(a=(t=e.books)==null?void 0:t.current)==null?void 0:a.filename},storePage:e=>e.page}),pageSrc(){const e={pk:this.pk,page:this.storePage,ts:this.ts};return Be(e)},pageName(){const e=this.fileType==="PDF"?"pdf":"jpg";return`${this.activeTitle} - page ${this.storePage}.${e}`},downloadPageTitle(){return`Download Page ${this.storePage}`},downloadItem(){return{group:"c",ids:[this.pk],childCount:1,name:this.filename,mtime:this.mtime}}},methods:{...b(ne,["downloadIOSPWAFix"]),downloadPage(){Re(this.pageSrc,this.pageName)}}},po={key:0,id:"downloadPanel"};function ho(e,t,a,p,n,o){const i=u("CodexListItem"),s=u("DownloadButton");return e.currentBook?(l(),f("div",po,[r(i,{"prepend-icon":n.mdiFileImage,title:o.downloadPageTitle,onClick:o.downloadPage},null,8,["prepend-icon","title","onClick"]),r(s,{button:!1,item:o.downloadItem},null,8,["item"])])):S("",!0)}const go=k(uo,[["render",ho],["__scopeId","data-v-9c04e057"]]),mo={name:"KeyboardShortcutsTable",data(){return{mdiMenuLeft:Oe,mdiMenuRight:$e,mdiKeyboardSpace:Le,mdiAppleKeyboardShift:Ie}}},ko={class:"highlight-table"};function bo(e,t,a,p,n,o){return l(),f(y,null,[t[9]||(t[9]=h("h4",null,"Navigation",-1)),h("table",ko,[h("tbody",null,[h("tr",null,[h("td",null,[r(R,{class:"keyIcon",density:"compact"},{default:d(()=>[_(w(n.mdiMenuLeft),1)]),_:1}),t[0]||(t[0]=_(", j, ")),h("div",null,[r(R,{class:"keyIcon",density:"compact"},{default:d(()=>[_(w(n.mdiAppleKeyboardShift),1)]),_:1}),r(R,{class:"keyIcon",density:"compact"},{default:d(()=>[_(w(n.mdiKeyboardSpace),1)]),_:1})])]),t[1]||(t[1]=h("td",null,"Previous page",-1))]),h("tr",null,[h("td",null,[r(R,{class:"keyIcon",density:"compact"},{default:d(()=>[_(w(n.mdiMenuRight),1)]),_:1}),t[2]||(t[2]=_(", k, ")),r(R,{class:"keyIcon",density:"compact"},{default:d(()=>[_(w(n.mdiKeyboardSpace),1)]),_:1})]),t[3]||(t[3]=h("td",null,"Next page",-1))]),t[4]||(t[4]=h("tr",null,[h("td",null,","),h("td",null,[_("Next "),h("em",null,"only"),_(" one page in two page mode.")])],-1)),t[5]||(t[5]=h("tr",null,[h("td",null,"."),h("td",null,[_("Previous "),h("em",null,"only"),_(" one page in two page mode.")])],-1)),t[6]||(t[6]=h("tr",null,[h("td",null,"p"),h("td",null,"Previous Book")],-1)),t[7]||(t[7]=h("tr",null,[h("td",null,"n"),h("td",null,"Next Book")],-1)),t[8]||(t[8]=h("tr",null,[h("td",null,"esc"),h("td",null,"Close book")],-1))])]),t[10]||(t[10]=Ve('<h4 data-v-1624cd48>Fit Page To</h4><table class="highlight-table" data-v-1624cd48><tbody data-v-1624cd48><tr data-v-1624cd48><td data-v-1624cd48>s</td><td data-v-1624cd48>screen</td></tr><tr data-v-1624cd48><td data-v-1624cd48>h</td><td data-v-1624cd48>screen height</td></tr><tr data-v-1624cd48><td data-v-1624cd48>w</td><td data-v-1624cd48>screen width</td></tr><tr data-v-1624cd48><td data-v-1624cd48>o</td><td data-v-1624cd48>Show page at original size</td></tr><tr data-v-1624cd48><td data-v-1624cd48>2</td><td data-v-1624cd48>Toggle two page view</td></tr><tr data-v-1624cd48><td data-v-1624cd48>r</td><td data-v-1624cd48>Read Right to Left</td></tr><tr data-v-1624cd48><td data-v-1624cd48>l</td><td data-v-1624cd48>Read Left to Right</td></tr><tr data-v-1624cd48><td data-v-1624cd48>t</td><td data-v-1624cd48>Read Top to Bottom</td></tr><tr data-v-1624cd48><td data-v-1624cd48>b</td><td data-v-1624cd48>Read in Bottom to Top</td></tr></tbody></table><h4 data-v-1624cd48>Other</h4><table class="highlight-table" data-v-1624cd48><tbody data-v-1624cd48><tr data-v-1624cd48><td data-v-1624cd48>m</td><td data-v-1624cd48>Show comic&#39;s metadata</td></tr><tr data-v-1624cd48><td data-v-1624cd48>double click</td><td data-v-1624cd48>Zoom page</td></tr></tbody></table>',4))],64)}const fo=k(mo,[["render",bo],["__scopeId","data-v-1624cd48"]]),vo=/iP(?:ad|hone|od)|Android/,_o=vo.test(navigator.userAgent),Po=_o||globalThis.orientation!==void 0,So={name:"KeyboardShortcutsPanel",components:{CodexListItem:W,KeyboardShortcutsTable:fo},data(){return{mdiKeyboardOutline:Ae,IS_MOBILE:Po}}};function wo(e,t,a,p,n,o){const i=u("CodexListItem"),s=u("KeyboardShortcutsTable");return n.IS_MOBILE?S("",!0):(l(),g(gt,{key:0},{default:d(()=>[r(mt,{id:"readerKeyboardShortcuts"},{default:d(()=>[r(kt,{id:"shortcutsTitle"},{default:d(()=>[r(i,{id:"keyboardShortcutsItem","prepend-icon":n.mdiKeyboardOutline,title:"Keyboard Shortcuts"},null,8,["prepend-icon"])]),_:1}),r(bt,null,{default:d(()=>[r(s)]),_:1})]),_:1})]),_:1}))}const yo=k(So,[["render",wo],["__scopeId","data-v-8285795a"]]),be=["fitTo","readingDirection","twoPages"];Object.freeze(be);const Co={name:"ReaderSettingsPanel",components:{CodexListItem:W},data(){return{isGlobalScope:!1,mdiOpenInNew:Ne,mdiEye:xe,openDelay:2e3,scopeItems:[{title:"Only this comic",value:!1},{title:"Default for all comics",value:!0}]}},computed:{...P(L,["isAuthDialogOpen"]),...P(c,["isVertical","isPDF","cacheBook"]),...v(c,{choices:e=>e.choices,validBook:e=>{var t;return!!((t=e.books)!=null&&t.current)},selectedSettings(e){var t,a;return this.isGlobalScope||!((t=e.books)!=null&&t.current)?e.readerSettings:(a=e.books)==null?void 0:a.current.settings},isClearSettingsButtonDisabled(e){var t,a;if(this.isGlobalScope||!((t=e.books)!=null&&t.current))return!0;for(const p of be){const n=(a=e.books)==null?void 0:a.current.settings[p];if(!e.choices.nullValues.has(n))return!1}return!0},pdfInBrowserURL(e){var t,a;return this.isPDF&&((t=e.books)!=null&&t.current)?Ee((a=e.books)==null?void 0:a.current):""},finishOnLastPage:e=>e.readerSettings.finishOnLastPage,pageTransition:e=>e.readerSettings.pageTransition}),...re(c,["readRtlInReverse"]),fitToChoices(){return this.choicesWithoutNull("fitTo")},readingDirectionChoices(){return this.choicesWithoutNull("readingDirection")},disableTwoPages(){return this.isVertical||this.isPDF&&this.cacheBook},disableCacheBook(){return this.isVertical&&this.isPDF},disablePageTransition(){return this.isVertical&&this.isPDF}},mounted(){document.addEventListener("keyup",this._keyUpListener)},beforeUnmount(){document.removeEventListener("keyup",this._keyUpListener)},methods:{...b(c,["clearSettingsLocal","setSettingsGlobal","setSettingsLocal","setSettingsClient"]),settingsDialogChanged(e){this.isGlobalScope?this.setSettingsGlobal(e):this.setSettingsLocal(e)},choicesWithoutNull(e){const t=[];for(const a of this.choices[e])a.value&&t.push(a);return Object.freeze(t),t},_keyUpListener(e){if(e.stopPropagation(),this.isAuthDialogOpen)return;let t;switch(e.key){case"w":t={fitTo:"W"};break;case"h":t={fitTo:"H"};break;case"s":t={fitTo:"S"};break;case"o":t={fitTo:"O"};break;case"2":t={twoPages:!this.selectedSettings.twoPages};break;case"l":t={readingDirection:"ltr"};break;case"r":t={readingDirection:"rtl"};break;case"t":t={readingDirection:"ttb"};break;case"b":t={readingDirection:"bbt"};break}t&&this.setSettingsLocal(t)}}},Ro={id:"readerScopedSettings",class:"readerCodexListItem"};function Bo(e,t,a,p,n,o){const i=u("CodexListItem");return l(),f(y,null,[t[9]||(t[9]=h("h4",{class:"readerSettingsHeader"},"Comic Settings Scope",-1)),r(x,{modelValue:n.isGlobalScope,"onUpdate:modelValue":t[0]||(t[0]=s=>n.isGlobalScope=s),class:"scopeRadioGroup readerCodexListItem",density:"compact","hide-details":"auto"},{default:d(()=>[(l(!0),f(y,null,I(n.scopeItems,s=>(l(),g(N,{key:s.value,label:s.title,value:s.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),r(ft,null,{default:d(()=>[h("div",Ro,[r(x,{class:"displayRadioGroup",density:"compact",label:"Display","hide-details":"auto","model-value":e.selectedSettings.fitTo,"onUpdate:modelValue":t[1]||(t[1]=s=>o.settingsDialogChanged({fitTo:s}))},{default:d(()=>[(l(!0),f(y,null,I(o.fitToChoices,s=>(l(),g(N,{key:s.value,label:s.title,value:s.value},null,8,["label","value"]))),128))]),_:1},8,["model-value"]),r(D,{disabled:o.disableTwoPages,class:"scopedCheckbox",density:"compact",label:"Two pages","hide-details":"auto","model-value":e.selectedSettings.twoPages,"true-value":!0,indeterminate:e.selectedSettings.twoPages===null||e.selectedSettings.twoPages===void 0,"onUpdate:modelValue":t[2]||(t[2]=s=>o.settingsDialogChanged({twoPages:s}))},null,8,["disabled","model-value","indeterminate"]),r(x,{class:"displayRadioGroup",density:"compact",label:"Reading Direction","hide-details":"auto","model-value":e.selectedSettings.readingDirection,"onUpdate:modelValue":t[3]||(t[3]=s=>o.settingsDialogChanged({readingDirection:s}))},{default:d(()=>[(l(!0),f(y,null,I(o.readingDirectionChoices,s=>(l(),g(N,{key:s.value,label:s.title,value:s.value},null,8,["label","value"]))),128))]),_:1},8,["model-value"]),r(D,{"model-value":e.selectedSettings.readRtlInReverse,class:"scopedCheckbox",density:"compact",label:"Read RTL Comics LTR","hide-details":"auto","true-value":!0,"onUpdate:modelValue":t[4]||(t[4]=s=>o.settingsDialogChanged({readRtlInReverse:s}))},null,8,["model-value"]),n.isGlobalScope?S("",!0):B((l(),g(le,{key:0,id:"clearSettingsButton",disabled:e.isClearSettingsButtonDisabled,onClick:e.clearSettingsLocal},{default:d(()=>t[8]||(t[8]=[_(" Clear Settings ")])),_:1},8,["disabled","onClick"])),[[F,{openDelay:n.openDelay,text:"Use the default settings for all comics for this comic"}]])])]),_:1}),r(M),t[10]||(t[10]=h("h4",{class:"readerSettingsHeader"},"Reader Settings",-1)),r(D,{class:"readerCodexListItem","model-value":e.finishOnLastPage,density:"compact",label:"Finish Book On Last Page","hide-details":"auto","true-value":!0,"onUpdate:modelValue":t[5]||(t[5]=s=>e.setSettingsGlobal({finishOnLastPage:s}))},null,8,["model-value"]),B(r(D,{"model-value":e.pageTransition,class:"readerCodexListItem",density:"compact",disabled:o.disablePageTransition,label:"Animate Page Turns","hide-details":"auto","true-value":!0,"onUpdate:modelValue":t[6]||(t[6]=s=>e.setSettingsGlobal({pageTransition:s}))},null,8,["model-value","disabled"]),[[F,{openDelay:n.openDelay,text:"Animate page turns when reading horizontally."}]]),B(r(D,{"model-value":e.cacheBook,class:"readerCodexListItem",density:"compact",disabled:o.disableCacheBook,label:"Cache Entire Book","hide-details":"auto","true-value":!0,"onUpdate:modelValue":t[7]||(t[7]=s=>e.setSettingsClient({cacheBook:s}))},null,8,["model-value","disabled"]),[[F,{openDelay:n.openDelay,text:"Cache all pages from this book in the browser"}]]),e.pdfInBrowserURL?(l(),g(i,{key:0,"prepend-icon":n.mdiEye,"append-icon":n.mdiOpenInNew,title:"Read in Tab",href:e.pdfInBrowserURL,target:"_blank"},null,8,["prepend-icon","append-icon","href"])):S("",!0)],64)}const To=k(Co,[["render",Bo],["__scopeId","data-v-9c6e0d8b"]]),Do={name:"ReaderSettingsSuperPanel",components:{DownloadPanel:go,ReaderKeyboardShortcutsPanel:yo,ReaderSettingsPanel:To}};function Io(e,t,a,p,n,o){const i=u("ReaderSettingsPanel"),s=u("ReaderKeyboardShortcutsPanel"),m=u("DownloadPanel");return l(),f(y,null,[r(i),r(M),r(s),r(M),r(m)],64)}const Lo=k(Do,[["render",Io]]),$o={name:"ReaderSettingsDrawer",components:{SettingsDrawer:Ze,ReaderSettingsSuperPanel:Lo}};function Oo(e,t,a,p,n,o){const i=u("ReaderSettingsSuperPanel"),s=u("SettingsDrawer");return l(),g(s,{title:"Reader",temporary:"","disable-resize-watcher":""},{panel:d(()=>[r(i)]),_:1})}const Vo=k($o,[["render",Oo]]),Z={a:qe,f:He,p:We,i:Me,s:ze,v:Ue},Ao={a:"Story Arc",f:"Folder",p:"Publisher",i:"Imprint",s:"Series",v:"Volume"},Eo={name:"ReaderArcSelect",components:{ToolbarSelect:ct},data(){return{mdiFilterOutline:Ke}},computed:{...v(c,{arcGroup:e=>{var t;return((t=e.arc)==null?void 0:t.group)||"s"},arc:e=>e.arc,arcName:e=>{for(const t of e.arcs)if(e.arc.group===t.group&&e.arc.pks===t.pks)return t.name;return"Unknown"},arcItems:e=>{const t=[];for(const a of e.arcs){const p={value:a,title:a.name,group:a.group,filters:a.filters,subtitle:Ao[a.group],prependIcon:Z[a.group]};t.push(p)}return t}})},methods:{...b(c,["loadBooks"]),arcIcon(e){return Z[e]},checkIcon(e){return e.group===this.arc.group&&e.pks==this.arc.pks?Fe:""},subtitle(e){let t=e.subtitle;return e.filters&&(t+=" (filtered)"),t},onUpdate(e){const t={group:e.group,pks:e.pks};this.loadBooks({arc:t})}}},xo={id:"arcPos"};function No(e,t,a,p,n,o){const i=u("ToolbarSelect");return l(),g(i,{"model-value":e.arc,class:"arcSelect","select-label":"reading order",items:e.arcItems,disabled:!e.arcItems||e.arcItems.length<=1,"onUpdate:modelValue":o.onUpdate},{item:d(({item:s,props:m})=>[r(it,U(m,{density:"compact",variant:"plain","prepend-icon":s.raw.prependIcon,subtitle:o.subtitle(s.raw),"append-icon":o.checkIcon(m.value)}),null,16,["prepend-icon","subtitle","append-icon"])]),selection:d(({item:s,props:m})=>[r(R,U({size:"large"},m,{class:"arcSelectIcon"}),{default:d(()=>[_(w(o.arcIcon(s.raw.group)),1)]),_:2},1040),h("span",xo,w(e.arc.index)+" / "+w(e.arc.count),1)]),_:1},8,["model-value","items","disabled","onUpdate:modelValue"])}const Fo=k(Eo,[["render",No],["__scopeId","data-v-f5975fea"]]),Uo={name:"ReaderTitleToolbar",components:{AppBanner:tt,MetadataDialog:dt,ReaderArcSelect:Fo,SettingsDrawerButton:Je},data(){return{mdiClose:Ge,routeChanged:!1}},head(){return{meta:[{hid:"description",name:"description",content:`reader ${this.activeTitle} page ${this.storePage}`}]}},computed:{...P(L,["isAuthDialogOpen"]),...P(c,["activeTitle","closeBookRoute"]),...v(c,{showToolbars:e=>e.showToolbars,currentBook:e=>{var t;return((t=e.books)==null?void 0:t.current)||{}},empty:e=>e.empty,subtitle:e=>{var t,a;return((a=(t=e.books)==null?void 0:t.current)==null?void 0:a.name)||""}}),title(){return this.activeTitle},extensionHeight(){let e=32;return this.subtitle&&(e*=2),e+=4,e},closeRoute(){const e=z(this.closeBookRoute),t=z(e.params);return delete t.name,e.params=t,e}},watch:{$route(e,t){t&&(this.routeChanged=!0)}},mounted(){document.addEventListener("keyup",this._keyUpListener)},beforeUnmount(){document.removeEventListener("keyup",this._keyUpListener)},methods:{...b(ne,["setTimestamp"]),...b(c,["routeToDirection","routeToDirectionOne","routeToBook","setBookChangeFlag"]),openMetadata(){this.$refs.metadataDialog.dialog=!0},onCloseBook(){this.routeChanged&&this.setTimestamp()},_keyUpListener(e){if(e.stopPropagation(),!this.isAuthDialogOpen)switch(e.key){case"Escape":this.$refs.closeBook.$el.click();break;case"m":this.empty||this.openMetadata();break}}}},zo={id:"readerTopToolbarHeader"},Mo={id:"title"},Wo={key:0,id:"subtitle"};function Ho(e,t,a,p,n,o){const i=u("AppBanner"),s=u("ReaderArcSelect"),m=u("MetadataDialog"),T=u("SettingsDrawerButton");return l(),g(vt,null,{default:d(()=>[B(h("header",zo,[r(i),r(ot,{id:"readerToolbarTop",density:"compact","extension-height":o.extensionHeight},je({default:d(()=>[r(E,null,{default:d(()=>[r(le,{ref:"closeBook",class:"closeBook",to:o.closeRoute,size:"large",density:"compact",variant:"plain",onClick:o.onCloseBook},{default:d(()=>t[0]||(t[0]=[_(" close book ")])),_:1},8,["to","onClick"])]),_:1}),r(ut),e.empty?S("",!0):(l(),g(E,{key:0},{default:d(()=>[r(s),r(m,{ref:"metadataDialog",group:"c",toolbar:!0,book:e.currentBook},null,8,["book"])]),_:1})),r(E,null,{default:d(()=>[r(T)]),_:1})]),_:2},[o.title?{name:"extension",fn:d(()=>[r(at,{class:"readerTitle"},{default:d(()=>[h("div",Mo,w(o.title),1),e.subtitle?(l(),f("div",Wo,w(e.subtitle),1)):S("",!0)]),_:1})]),key:"0"}:void 0]),1032,["extension-height"])],512),[[ie,e.showToolbars]])]),_:1})}const fe=k(Uo,[["render",Ho],["__scopeId","data-v-cab0ef78"]]),qo={name:"ReaderEmptyBooks",components:{ReaderTopToolbar:fe,EmptyState:ce},data(){return{mdiBookRemoveOutline:Ye}},methods:{...b(c,["loadBooks"]),onAction(){this.loadBooks({mtime:Date.now()})}}};function Ko(e,t,a,p,n,o){const i=u("ReaderTopToolbar"),s=u("EmptyState");return l(),f(y,null,[r(i),r(s,{headline:"Book Not Found",title:"Close the reader and find another book",icon:n.mdiBookRemoveOutline,"action-text":"Try to load book again","onClick:action":o.onAction},null,8,["icon","onClick:action"])],64)}const Go=k(qo,[["render",Ko]]),jo={name:"ReaderBookChangeNavButton",components:{PaginationNavButton:pe},props:{direction:{type:String,required:!0}},computed:{...P(c,["isBTT"]),...v(c,{toRoute(e){var a;const t=(a=e==null?void 0:e.routes)==null?void 0:a.books[this.direction];return t?{params:z(t)}:""}}),title(){return(this.direction==="prev"?"Previous":"Next")+" Book"},icon(){return this.bookChangeIcon(this.direction)},classes(){return{bookChangeNavButtonLeft:this.direction==="prev",bookChangeNavButtonRight:this.direction==="next"}}},methods:{...b(c,["bookChangeIcon"])}};function Yo(e,t,a,p,n,o){const i=u("PaginationNavButton");return e.toRoute?(l(),g(i,{key:0,class:C(o.classes),icon:o.icon,variant:"plain",title:o.title,to:e.toRoute},null,8,["class","icon","title","to"])):S("",!0)}const Xo=k(jo,[["render",Yo],["__scopeId","data-v-0cead61e"]]),Zo={name:"ReaderNavButton",components:{PaginationNavButton:pe},props:{value:{type:Number,required:!0},twoPages:{type:Boolean,default:!1}},computed:{...P(c,["isVertical"]),...v(c,{storePage:e=>e.page,toRoute(e){if(!this.isVertical)return{params:{pk:e.books.current.pk,page:this.value}}},isBookPrev:e=>!!e.routes.books.prev,isBookNext:e=>!!e.routes.books.next}),classes(){return{readerNavButtonLeft:!this.isBookPrev&&this.value===0,readerNavButtonRight:!this.isBookNext&&this.value!=0}},title(){return"Page "+this.value},disabled(){return this.value===this.storePage||this.twoPages&&!!(this.value%2)&&this.value-1===this.storePage}},methods:{...b(c,["setActivePage"]),onClick(){this.isVertical&&this.setActivePage(this.value,!0)}}};function Jo(e,t,a,p,n,o){const i=u("PaginationNavButton");return l(),g(i,{key:e.isVertical,disabled:o.disabled,class:C(["readerNavButton",o.classes]),title:o.title,to:e.toRoute,onClick:o.onClick},{default:d(()=>[_(w(a.value),1)]),_:1},8,["disabled","class","title","to","onClick"])}const Qo=k(Zo,[["render",Jo],["__scopeId","data-v-222c7076"]]),$="prev",O="next",ea={name:"ReaderNavToolbar",components:{PaginationSlider:ht,ReaderNavButton:Qo,PaginationToolbar:pt,ReaderBookChangeNavButton:Xo},computed:{...P(L,["isAuthDialogOpen"]),...P(c,["activeSettings","isReadInReverse","isVertical"]),...v(c,{showToolbars:e=>e.showToolbars,storePage:e=>e.page,key(e){var a,p;return`${(p=(a=e.books)==null?void 0:a.current)==null?void 0:p.pk}:${this.step}:${this.isReadInReverse}`},maxPage:e=>{var t,a;return((a=(t=e.books)==null?void 0:t.current)==null?void 0:a.maxPage)||0}}),twoPages(){return this.activeSettings.twoPages},step(){return this.activeSettings.twoPages?2:1},trackColor(){return this.twoPages&&+this.storePage>=this.maxPage-1?this.$vuetify.theme.current.colors.primary:""},min(){return this.isReadInReverse?this.maxPage:0},max(){return this.isReadInReverse?0:this.maxPage},bookPrev(){return this.isReadInReverse?"next":"prev"},bookNext(){return this.isReadInReverse?"prev":"next"}},mounted(){document.addEventListener("keyup",this._keyUpListener)},beforeUnmount(){document.removeEventListener("keyup",this._keyUpListener)},methods:{...b(c,["routeToBook","routeToDirection","routeToDirectionOne","routeToPage","setActivePage"]),onSliderUpdate(e){this.isVertical?this.setActivePage(e,!0):this.routeToPage(e)},_keyUpListener(e){if(e.stopPropagation(),!this.isAuthDialogOpen)switch(e.key){case" ":!e.shiftKey&&window.innerHeight+window.scrollY+1>=document.body.scrollHeight?this.routeToDirection(O):e.shiftKey&&window.scrollY===0&&this.routeToDirection($);break;case"j":case"ArrowRight":this.routeToDirection(O);break;case"k":case"ArrowLeft":this.routeToDirection($);break;case",":this.routeToDirectionOne($);break;case".":this.routeToDirectionOne(O);break;case"n":this.routeToBook(O);break;case"p":this.routeToBook($);break}}}};function ta(e,t,a,p,n,o){const i=u("ReaderBookChangeNavButton"),s=u("ReaderNavButton"),m=u("PaginationSlider"),T=u("PaginationToolbar");return l(),g(_t,null,{default:d(()=>[e.maxPage?B((l(),g(T,{key:0,id:"readerToolbarNav"},{default:d(()=>[r(i,{direction:o.bookPrev,narrow:!1},null,8,["direction"]),r(s,{value:o.min,"two-pages":o.twoPages},null,8,["value","two-pages"]),(l(),g(m,{key:e.key,"model-value":e.storePage,min:0,max:e.maxPage,step:o.step,"track-color":o.trackColor,reverse:e.isReadInReverse,"onUpdate:modelValue":t[0]||(t[0]=V=>o.onSliderUpdate(V))},null,8,["model-value","max","step","track-color","reverse"])),r(s,{value:o.max,"two-pages":o.twoPages},null,8,["value","two-pages"]),r(i,{direction:o.bookNext,narrow:!1},null,8,["direction"])]),_:1},512)),[[ie,e.showToolbars]]):S("",!0)]),_:1})}const oa=k(ea,[["render",ta],["__scopeId","data-v-955ab3ce"]]),aa={name:"MainReader",components:{BooksWindow:co,ReaderEmpty:Go,ReaderNavToolbar:oa,ReaderTopToolbar:fe,ReaderSettingsDrawer:Vo,Unauthorized:st},data(){return{showToolbars:!1}},computed:{...P(L,["isAuthorized"]),...v(L,{user:e=>e.user}),...v(c,{empty:e=>e.empty,arc:e=>e.arc})},watch:{user(){this.loadReaderSettings()},isAuthorized(){this.loadReaderSettings()}},beforeMount(){this.reset(),this.loadReaderSettings()},methods:{...b(c,["loadReaderSettings","reset"])}},sa={key:0},ra={id:"readerContainer"};function na(e,t,a,p,n,o){const i=u("ReaderTopToolbar"),s=u("BooksWindow"),m=u("ReaderNavToolbar"),T=u("ReaderEmpty"),V=u("ReaderSettingsDrawer"),ve=u("Unauthorized");return e.isAuthorized?(l(),g(rt,{key:0,id:"readerWrapper"},{default:d(()=>[e.empty?(l(),g(T,{key:1})):(l(),f("div",sa,[h("div",ra,[r(i),r(s),r(m)])])),r(V)]),_:1})):(l(),g(ve,{key:1}))}const ia=k(aa,[["render",na],["__scopeId","data-v-4f31abfa"]]),Sa=Object.freeze(Object.defineProperty({__proto__:null,default:ia},Symbol.toStringTag,{value:"Module"}));export{Xt as P,ke as S,Sa as r};
@@ -1,2 +0,0 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/pdf-doc-HpDB0I3q.js","assets/main-JUy8mnXG.js","assets/main-Of3aYkZ7.css","assets/pdf-doc-DxqOo2k2.css","assets/pager-full-pdf-CcORwqD4.js","assets/settings-drawer-p6ZjyJ07.js","assets/forwardRefs-BxFNqo8E.js","assets/forwardRefs-BhPKpkYY.css","assets/unauthorized-CvdCW-Cq.js","assets/VDialog-CoOMSEbM.js","assets/VDialog-Cj6z437E.css","assets/change-password-dialog-DOioR_QK.js","assets/VForm-DXrmSq46.js","assets/VSelectionControl-DvYb3Pi4.js","assets/VSelectionControl-RqBzwjYi.css","assets/VForm-DxBt30-N.css","assets/admin-BpE7-fB4.js","assets/change-password-dialog-DL8UMjmX.css","assets/ssrBoot-B73_e82Z.js","assets/unauthorized-DeuhBNVr.css","assets/copy-to-clipboard-DoUvDJVx.js","assets/VDivider-BXrVdmrm.js","assets/VDivider-DU47sRrT.css","assets/settings-drawer-Cz7dC3Ew.css","assets/VWindowItem-rXg83yw2.js","assets/VWindowItem-CWBhiE_Y.css","assets/VSelect-BpkoCPsm.js","assets/VCheckboxBtn-D8jQ_2In.js","assets/VSelect-CBNrI-XP.css","assets/pagination-toolbar-Cufj0Rqv.js","assets/VTable-DbFt9lJE.js","assets/VTable-BnxSZ_W5.css","assets/confirm-dialog-BRUkbajJ.js","assets/confirm-dialog-BI5kQLy_.css","assets/pagination-toolbar-DkYjhdVb.css","assets/VExpansionPanels-BvZsXmp0.js","assets/VExpansionPanels-RsCANmDP.css","assets/VRadioGroup-DgtijQjG.js","assets/VRadioGroup-Cp9mZ7cb.css","assets/VCheckbox-DtuP7Cwl.js","assets/VCheckbox-CvH8ekHL.css","assets/index-D3gnYqT3.js","assets/index-Czf-fUM7.css"])))=>i.map(i=>d[i]);
2
- import{_ as k,A as b,C as v,D as P,al as c,v as g,G as S,w as d,n as C,l as u,q as l,a as r,x as _,z as w,k as f,aa as J,F as y,am as _e,an as Pe,m as U,ao as Q,ap as Se,aq as ee,H as te,ar as oe,as as ae,at as A,au as we,S as B,a5 as ye,ai as Ce,av as se,y as I,h as re,s as h,aw as Re,B as ne,ax as Be,ay as Te,az as De,aA as Ie,aB as Le,aC as $e,aD as Oe,Y as Ve,aE as Ae,aF as Ee,E as L,ab as xe,$ as Ne,aG as Fe,aH as Ue,O as ze,P as Me,Q as We,R as He,aI as qe,aJ as Ke,L as z,aK as Ge,V as je,aL as ie,aM as Ye}from"./main-JUy8mnXG.js";import{V as Xe,a as Ze,S as Je}from"./settings-drawer-p6ZjyJ07.js";import{k as R,I as Qe,V as le}from"./forwardRefs-BxFNqo8E.js";import{P as et,E as ce,A as tt,V as ot,a as at,U as st,c as rt}from"./unauthorized-CvdCW-Cq.js";import{V as de,a as ue}from"./VWindowItem-rXg83yw2.js";import{b as nt}from"./VSelect-BpkoCPsm.js";import{C as W,a as it}from"./VDialog-CoOMSEbM.js";import{D as lt,T as ct,b as dt,V as E,a as ut,P as pe,c as pt,d as ht}from"./pagination-toolbar-Cufj0Rqv.js";import{V as gt,a as mt,b as kt,c as bt}from"./VExpansionPanels-BvZsXmp0.js";import{d as ft,V as vt,e as _t}from"./VSelectionControl-DvYb3Pi4.js";import{V as x,a as N}from"./VRadioGroup-DgtijQjG.js";import{a as M}from"./VDivider-BXrVdmrm.js";import{V as D}from"./VCheckbox-DtuP7Cwl.js";import{T as F}from"./index-D3gnYqT3.js";function he(e,t){const{self:a=!1}=t.modifiers??{},p=t.value,n=typeof p=="object"&&p.options||{passive:!0},o=typeof p=="function"||"handleEvent"in p?p:p.handler,i=a?e:t.arg?document.querySelector(t.arg):window;i&&(i.addEventListener("scroll",o,n),e._onScroll=Object(e._onScroll),e._onScroll[t.instance.$.uid]={handler:o,options:n,target:a?void 0:i})}function ge(e,t){var o;if(!((o=e._onScroll)!=null&&o[t.instance.$.uid]))return;const{handler:a,options:p,target:n=e}=e._onScroll[t.instance.$.uid];n.removeEventListener("scroll",a,p),delete e._onScroll[t.instance.$.uid]}function Pt(e,t){t.value!==t.oldValue&&(ge(e,t),he(e,t))}const St={mounted:he,unmounted:ge,updated:Pt},wt={name:"BookChangeDrawer",props:{direction:{type:String,required:!0}},head(){if(this.isDrawerOpen)return this.prefetchLinks(this.params,this.computedDirection,!0)},computed:{...P(c,["isBTT"]),...v(c,{computedDirection(){return this.normalizeDirection(this.direction)},params(e){return e.routes.books[this.computedDirection]},isDrawerOpen(e){return e.bookChange===this.computedDirection},icon(){return this.bookChangeIcon(this.computedDirection)}}),drawerLocation(){return this.bookChangeLocation(this.direction)},cursorClass(){return this.bookChangeCursorClass(this.computedDirection)},show(){return this.bookChangeShow(this.computedDirection)},route(){return this.toRoute(this.params)},label(){return this.linkLabel(this.computedDirection,"Book")}},methods:{...b(c,["linkLabel","normalizeDirection","prefetchLinks","toRoute","bookChangeLocation","bookChangeCursorClass","bookChangeShow","bookChangeIcon"])}};function yt(e,t,a,p,n,o){const i=u("router-link");return o.show?(l(),g(Xe,{key:0,class:C(["bookChangeDrawer",{drawerActivated:e.isDrawerOpen}]),"disable-resize-watcher":"","disable-route-watcher":"",location:o.drawerLocation,"model-value":e.isDrawerOpen,scrim:!1,temporary:"",touchless:""},{default:d(()=>[r(i,{class:C({navLink:!0,[o.cursorClass]:!0}),to:o.route,"aria-label":o.label,title:o.label,onClick:t[0]||(t[0]=s=>s.stopImmediatePropagation())},{default:d(()=>[r(R,{class:"bookChangeIcon"},{default:d(()=>[_(w(e.icon),1)]),_:1})]),_:1},8,["class","to","aria-label","title"])]),_:1},8,["location","model-value","class"])):S("",!0)}const Ct=k(wt,[["render",yt],["__scopeId","data-v-bd4115bf"]]),Rt={name:"BookChangeActivator",components:{BookChangeDrawer:Ct},props:{direction:{type:String,required:!0}},computed:{show(){return this.bookChangeShow(this.computedDirection)},computedDirection(){return this.normalizeDirection(this.direction)},positionClass(){return this.bookChangeLocation(this.direction)+"Pos"},cursorClass(){return this.bookChangeCursorClass(this.direction)}},methods:{...b(c,["bookChangeCursorClass","bookChangeLocation","bookChangeShow","normalizeDirection","setBookChangeFlag"])}};function Bt(e,t,a,p,n,o){const i=u("BookChangeDrawer");return l(),f(y,null,[o.show?(l(),f("div",{key:0,class:C(["changeColumn",{[o.positionClass]:!0,[o.cursorClass]:!0}]),onClick:t[0]||(t[0]=J(s=>e.setBookChangeFlag(a.direction),["stop"]))},null,2)):S("",!0),r(i,{direction:a.direction},null,8,["direction"])],64)}const Tt=k(Rt,[["render",Bt],["__scopeId","data-v-67df236c"]]),Dt={name:"LoadingPage",components:{Placeholder:et},props:{twoPages:{type:Boolean,required:!0}}};function It(e,t,a,p,n,o){const i=u("Placeholder");return l(),f("div",{class:C(["pageLoading",{twoPages:a.twoPages}])},[r(i,{class:"pagePlaceholder"})],2)}const Lt=k(Dt,[["render",It],["__scopeId","data-v-04027168"]]),H="unauthorized",$t={name:"ErrorPage",components:{EmptyState:ce},props:{twoPages:{type:Boolean,required:!0},type:{type:String,required:!0}},emits:["retry"],computed:{text(){return this.type===H?"Protected page":"Failed to load page"},icon(){return this.type===H?_e:Pe}},methods:{onAction(e){this.$emit("retry",e)}}};function Ot(e,t,a,p,n,o){const i=u("EmptyState");return l(),g(i,{class:C(["pageError",{twoPages:a.twoPages}]),headline:o.text,icon:o.icon,"action-text":"Retry","onClick:action":o.onAction},null,8,["class","headline","icon","onClick:action"])}const Vt=k($t,[["render",Ot],["__scopeId","data-v-97fa48e8"]]),At={name:"ImgPage",props:{book:{type:Object,required:!0},src:{type:String,required:!0}},emits:["load","error"],computed:{...v(c,{scale:e=>e.clientSettings.scale}),style(){const e={};if(this.scale==1)return e;const t=this.$el;if(!(t!=null&&t.naturalWidth))return e;const a=t.naturalWidth/2;return e.transformOrigin=`${a}px top`,e.transform=`scale(${this.scale})`,e},bookSettings(){return this.getBookSettings(this.book)},classes(){return this.bookSettings.fitToClass}},methods:{...b(c,["getBookSettings"])}},Et=["src"];function xt(e,t,a,p,n,o){return l(),f("img",U({class:[o.classes,"img"],draggable:"false",src:a.src,style:o.style},e.$attrs,{onError:t[0]||(t[0]=i=>e.$emit("error",i)),onLoad:t[1]||(t[1]=i=>e.$emit("load",i))}),null,16,Et)}const q=k(At,[["render",xt],["__scopeId","data-v-014c2ac0"]]),K=Q(ee(()=>ae(()=>import("./pdf-doc-HpDB0I3q.js"),__vite__mapDeps([0,1,2,3])))),Nt=333,Ft={name:"BookPage",components:{ErrorPage:Vt,LoadingPage:Lt,PDFDoc:K,ImgPage:q},props:{book:{type:Object,required:!0},page:{type:Number,required:!0}},data(){return{showProgress:!1,loaded:!1,error:"",ts:0}},computed:{...v(c,{scale:e=>e.clientSettings.scale}),style(){var a;const e={};if(this.book.fileType==="PDF"||this.scale==1)return e;const t=(a=this.$refs.pageComponent)==null?void 0:a.$el;return t!=null&&t.naturalHeight&&(e.height=t.naturalHeight*this.scale+"px",e.width=t.naturalWidth*this.scale+"px"),e},src(){const e=Math.max(this.book.mtime,this.ts),t={pk:this.book.pk,page:this.page,mtime:e};return Se(t)},component(){return this.book.fileType==="PDF"?K:q}},mounted(){setTimeout(function(){this.loaded||(this.loading=!0)},Nt)},methods:{onLoad(){this.showProgress=!1,this.loaded=!0,this.error=!1},onError(){this.error="load",this.showProgress=!1},onUnauthorized(){this.error="unauthorized",this.showProgress=!1},onRetry(){this.ts=Date.now()}}},Ut=["id","data-page"];function zt(e,t,a,p,n,o){const i=u("ErrorPage"),s=u("LoadingPage");return l(),f("div",{id:`page${a.page}`,key:n.ts,"data-page":a.page,class:"page",style:oe(o.style)},[n.error?(l(),g(i,{key:0,"two-pages":e.settings.twoPages,type:n.error,onRetry:o.onRetry},null,8,["two-pages","type","onRetry"])):n.showProgress&&!n.loaded?(l(),g(s,{key:1,"two-pages":e.settings.twoPages},null,8,["two-pages"])):(l(),g(te(o.component),{key:2,ref:"pageComponent",book:a.book,page:1,src:o.src,onError:o.onError,onLoad:o.onLoad,onUnauthorized:o.onUnauthorized},null,40,["book","src","onError","onLoad","onUnauthorized"]))],12,Ut)}const me=k(Ft,[["render",zt],["__scopeId","data-v-ea178cb3"]]),Mt=.5,Wt={name:"ScaleForScroll",emits:["click"],data(){return{mdiMagnifyMinusOutline:we}},computed:{...v(c,{scale:e=>e.clientSettings.scale}),showReset(){return this.scale!=A},style(){return{cursor:this.scale==A?"zoom-in":"all-scroll"}}},methods:{...b(c,["setSettingsClient"]),clearSelection(){globalThis.getSelection&&globalThis.getSelection().removeAllRanges()},onDoubleClick(){this.clearSelection();const e=this.scale+Mt;this.setSettingsClient({scale:e})},scaleReset(){this.setSettingsClient({scale:A})}}};function Ht(e,t,a,p,n,o){const i=Ce("drag-scroller");return B((l(),f("div",{class:"scaleForScroll",style:oe(o.style),onDblclick:t[0]||(t[0]=(...s)=>o.onDoubleClick&&o.onDoubleClick(...s))},[ye(e.$slots,"default",{},void 0,!0),o.showReset?(l(),g(R,{key:0,class:"resetIcon",onClick:J(o.scaleReset,["stop"])},{default:d(()=>[_(w(n.mdiMagnifyMinusOutline),1)]),_:1},8,["onClick"])):S("",!0)],36)),[[i,,void 0,{onlyX:!0}]])}const ke=k(Wt,[["render",Ht],["__scopeId","data-v-88f3df90"]]),qt={name:"HorizontalPages",components:{BookPage:me,ScaleForScroll:ke},props:{book:{type:Object,required:!0},page:{type:Number,required:!0}},emits:["click"],computed:{bookSettings(){return this.getBookSettings(this.book)},isReadInReverse(){return this.bookSettings.isReadInReverse},showSecondPage(){return this.bookSettings.twoPages&&this.page<this.book.maxPage&&!this.isCoverPage(this.book,this.page)},showPageOne(){return!this.isReadInReverse||this.showSecondPage},showPageTwo(){return this.isReadInReverse||this.showSecondPage},pageOne(){return this.isReadInReverse?this.page+1:this.page},pageTwo(){return this.isReadInReverse?this.page:this.page+1}},methods:{...b(c,["getBookSettings","isCoverPage"])}};function Kt(e,t,a,p,n,o){const i=u("BookPage"),s=u("ScaleForScroll");return l(),g(s,{class:"noWrap"},{default:d(()=>[o.showPageOne?(l(),g(i,{key:0,ref:"pageOne",book:a.book,page:o.pageOne,class:"horizontalPage"},null,8,["book","page"])):S("",!0),o.showPageTwo?(l(),g(i,{key:1,book:a.book,page:o.pageTwo,class:"horizontalPage"},null,8,["book","page"])):S("",!0)]),_:1})}const Gt=k(qt,[["render",Kt],["__scopeId","data-v-ce77a1b1"]]),jt={name:"PageChangeLink",props:{direction:{type:String,required:!0}},head(){return this.prefetchLinks(this.params,this.computedDirection)},computed:{...P(c,["isFirstPage","isLastPage"]),...v(c,{params(e){return e.routes[this.computedDirection]}}),computedDirection(){return this.normalizeDirection(this.direction)},show(){return this.computedDirection==="prev"?!this.isFirstPage:!this.isLastPage},pageChangeClass(){return"pageChangeColumn"},directionClass(){return this.direction},route(){return this.toRoute(this.params)},label(){return this.linkLabel(this.computedDirection,"Page")}},methods:{...b(c,["linkLabel","normalizeDirection","prefetchLinks","toRoute"])}};function Yt(e,t,a,p,n,o){const i=u("router-link");return o.show?(l(),g(i,{key:0,to:o.route,"aria-label":o.label,class:C(["changeColumn",{[o.directionClass]:!0}]),onClick:t[0]||(t[0]=s=>s.stopImmediatePropagation())},null,8,["to","aria-label","class"])):S("",!0)}const Xt=k(jt,[["render",Yt],["__scopeId","data-v-e7f427cd"]]),Zt=48,Jt=48,Qt={name:"PagerHorizontal",components:{HorizontalPages:Gt,PageChangeLink:Xt},props:{book:{type:Object,required:!0}},data(){return{activePage:0,pages:[]}},computed:{...v(c,{prevBook:e=>{var t;return(t=e.routes.books)==null?void 0:t.prev},nextBook:e=>{var t;return(t=e.routes.books)==null?void 0:t.next},storePage:e=>e.page,storePk:e=>e.books.current.pk,transition:e=>e.readerSettings.pageTransition}),bookSettings(){return this.getBookSettings(this.book)},twoPages(){return this.bookSettings.twoPages},isReadInReverse(){return this.bookSettings.isReadInReverse},windowIndex(){const e=this.activePage-this.pages[0];return Math.min(Math.max(0,e),this.book.maxPage)}},watch:{twoPages(){this.setActivePage(this.storePage,!0)},storePage(e){if(this.book.pk===this.storePk){this.activePage=e;const t=this.pages.at(0),a=this.pages.at(-1);(e<t||e>a)&&this.setPages()}},prevBook(e){this.book.pk===e.pk&&(this.activePage=this.book.maxPage)},nextBook(e){this.book.pk===e.pk&&(this.activePage=0)}},created(){this.book.pk===this.storePk?this.activePage=+this.$route.params.page:this.book.pk===this.prevBook.pk?this.activePage=this.book.maxPage:this.activePage=0,this.setPages()},methods:{...b(c,["getBookSettings","setBookChangeFlag","setActivePage"]),setPages(){const e=Math.max(this.activePage-Zt,0),t=Math.min(this.activePage+Jt,this.book.maxPage);this.pages=se(e,t+1)}}};function eo(e,t,a,p,n,o){const i=u("PageChangeLink"),s=u("HorizontalPages");return l(),g(de,{"show-arrows":"",continuous:"","model-value":o.windowIndex,reverse:o.isReadInReverse},{prev:d(()=>[r(i,{direction:"prev"})]),next:d(()=>[r(i,{direction:"next"})]),default:d(()=>[(l(!0),f(y,null,I(n.pages,m=>(l(),g(ue,{key:`c/${a.book.pk}/${m}`,class:"windowItem",disabled:"",eager:m>=e.storePage-1&&m<=e.storePage+2,"model-value":m,transition:e.transition,"reverse-transition":e.transition},{default:d(()=>[r(s,{book:a.book,page:m},null,8,["book","page"])]),_:2},1032,["eager","model-value","transition","reverse-transition"]))),128))]),_:1},8,["model-value","reverse"])}const G=k(Qt,[["render",eo],["__scopeId","data-v-00aae4a0"]]),j=250,to={name:"PagerVertical",components:{BookPage:me,ScaleForScroll:ke},props:{book:{type:Object,required:!0}},data(){return{innerHeight:window.innerHeight,innerWidth:window.innerWidth,intersectorOn:!1,programmaticScroll:!1,intersectOptions:{handler:this.onIntersect,options:{threshold:[.75]}}}},computed:{...v(c,{storePage:e=>e.page,showToolbars:e=>e.showToolbars}),...re(c,["reactWithScroll"]),bookSettings(){return this.getBookSettings(this.book)},isReadInReverse(){return this.bookSettings.isReadInReverse},items(){var a;const e=(a=this.book)!=null&&a.maxPage?this.book.maxPage+1:0,t=se(0,e);return this.isReadInReverse&&t.reverse(),t}},watch:{storePage(e){this.reactWithScroll&&this.scrollToPage(e)}},mounted(){window.addEventListener("resize",this.onResize),setTimeout(()=>{this.scrollToPage(this.storePage)},j)},beforeUnmount(){window.removeEventListener("resize",this.onResize)},methods:{...b(c,["getBookSettings","setActivePage","setBookChangeFlag"]),onIntersect(e,t){if(e&&this.intersectorOn){const p=+t[0].target.dataset.page;this.setActivePage(p,!1)}},onScroll(){if(this.programmaticScroll)return;this.intersectorOn=!0;const e=this.$refs.verticalScroll.$el,t=e.scrollTop;if(this.storePage===0&&t===0)this.setBookChangeFlag("prev");else if(this.storePage===this.book.maxPage){const a=e.scrollTopMax||e.scrollHeight-e.clientTop;window.innerHeight+t+1>=a&&this.setBookChangeFlag("next")}},scrollToPage(e){this.intersectorOn=!1,this.programmaticScroll=!0;const t=this.$refs.verticalScroll;t?t.scrollToIndex(e):console.debug("Can't find verticalScroll component."),setTimeout(()=>{this.programmaticScroll=!1},j)},onResize(){this.innerHeight=window.innerHeight,this.innerWidth=window.innerWidth}}},oo=["data-page"];function ao(e,t,a,p,n,o){const i=u("BookPage"),s=u("ScaleForScroll");return l(),g(s,null,{default:d(()=>[B((l(),g(nt,{id:"verticalScroll",key:o.isReadInReverse,ref:"verticalScroll",items:o.items,height:n.innerHeight,width:n.innerWidth},{default:d(({item:m})=>[r(i,{book:a.book,page:m,class:"verticalPage"},null,8,["book","page"]),B(h("div",{class:C(["pageTracker",{pageTrackerToolbars:e.showToolbars}]),"data-page":m},null,10,oo),[[Qe,n.intersectOptions,void 0,{quiet:!0}]])]),_:1},8,["items","height","width"])),[[St,o.onScroll,"#verticalScroll"]])]),_:1})}const Y=k(to,[["render",ao],["__scopeId","data-v-4fdc17f1"]]),X=Q(ee(()=>ae(()=>import("./pager-full-pdf-CcORwqD4.js"),__vite__mapDeps([4,1,2,0,3,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42])))),so={name:"PagerSelector",components:{PagerHorizontal:G,PagerPDF:X,PagerVertical:Y},props:{book:{type:Object,required:!0}},emits:["click"],head(){return this.prefetchBook(this.book)},computed:{...P(c,["cacheBook"]),...v(c,{storePk:e=>{var t,a;return((a=(t=e.books)==null?void 0:t.current)==null?void 0:a.pk)||0}}),isActiveBook(){var e;return this.book&&this.storePk===((e=this.book)==null?void 0:e.pk)},bookSettings(){return this.getBookSettings(this.book)},readerFullPdf(){var e;return((e=this.book)==null?void 0:e.fileType)=="PDF"&&this.cacheBook&&!this.bookSettings.isVertical},component(){let e;return this.readerFullPdf?e=X:this.bookSettings.isVertical?e=Y:e=G,e}},watch:{$route(e){+e.params.pk===this.book.pk&&this.setActivePage(+e.params.page,!0)}},created(){this.isActiveBook&&this.setActivePage(+this.$route.params.page,!0)},methods:{...b(c,["getBookSettings","isBookVertical","setActivePage","prefetchBook"])}};function ro(e,t,a,p,n,o){return l(),g(te(o.component),{book:a.book},null,8,["book"])}const no=k(so,[["render",ro]]),io={name:"BooksWindow",components:{BookChangeActivator:Tt,Pager:no},computed:{...P(c,["isBTT"]),...v(c,{books:e=>[e.books.prev,e.books.current,e.books.next].filter(Boolean),bookChange:e=>e.bookChange,currentBookPk:e=>{var t,a;return((a=(t=e.books)==null?void 0:t.current)==null?void 0:a.pk)||0},bookRoutes:e=>e.routes.books,transition:e=>e.readerSettings.pageTransition}),bookChangePrev(){return this.bookChangeShow("prev")},bookChangeNext(){return this.bookChangeShow("next")}},watch:{$route(e,t){(!t||!t.params||+e.params.pk!=+t.params.pk)&&this.loadBooks({params:e.params})}},beforeMount(){this.setBookChangeFlag(),this.loadBooks({})},methods:{...b(c,["loadBooks","setBookChangeFlag","toggleToolbars"]),click(){this.toggleToolbars(),this.setBookChangeFlag()},eager(e){return this.bookChange&&this.bookRoutes[this.bookChange]&&this.bookRoutes[this.bookChange].pk===e}}};function lo(e,t,a,p,n,o){const i=u("BookChangeActivator"),s=u("Pager");return l(),g(de,{id:"booksWindow",direction:"vertical","model-value":e.currentBookPk,reverse:e.isBTT,"show-arrows":"",onClick:e.toggleToolbars},{prev:d(()=>[r(i,{direction:"prev"})]),next:d(()=>[r(i,{direction:"next"})]),default:d(()=>[(l(!0),f(y,null,I(e.books,m=>(l(),g(ue,{key:`c/${m.pk}`,class:"windowItem",disabled:"",eager:o.eager(m.pk),value:m.pk,transition:e.transition,"reverse-transitin":e.transition},{default:d(()=>[r(s,{book:m,onClick:o.click},null,8,["book","onClick"])]),_:2},1032,["eager","value","transition","reverse-transitin"]))),128))]),_:1},8,["model-value","reverse","onClick"])}const co=k(io,[["render",lo],["__scopeId","data-v-4293272b"]]),uo={name:"DownloadPanel",components:{CodexListItem:W,DownloadButton:lt},data(){return{mdiDownload:De,mdiFileImage:Te}},computed:{...P(c,["activeTitle","routeParams"]),...v(c,{currentBook:e=>{var t;return(t=e.books)==null?void 0:t.current},fileType:e=>{var t,a;return(a=(t=e.books)==null?void 0:t.current)==null?void 0:a.fileType},mtime:e=>{var t,a;return(a=(t=e.books)==null?void 0:t.current)==null?void 0:a.mtime},pk:e=>{var t,a;return(a=(t=e.books)==null?void 0:t.current)==null?void 0:a.pk},filename:e=>{var t,a;return(a=(t=e.books)==null?void 0:t.current)==null?void 0:a.filename},storePage:e=>e.page}),pageSrc(){const e={pk:this.pk,page:this.storePage,ts:this.ts};return Be(e)},pageName(){const e=this.fileType==="PDF"?"pdf":"jpg";return`${this.activeTitle} - page ${this.storePage}.${e}`},downloadPageTitle(){return`Download Page ${this.storePage}`},downloadItem(){return{group:"c",ids:[this.pk],childCount:1,name:this.filename,mtime:this.mtime}}},methods:{...b(ne,["downloadIOSPWAFix"]),downloadPage(){Re(this.pageSrc,this.pageName)}}},po={key:0,id:"downloadPanel"};function ho(e,t,a,p,n,o){const i=u("CodexListItem"),s=u("DownloadButton");return e.currentBook?(l(),f("div",po,[r(i,{"prepend-icon":n.mdiFileImage,title:o.downloadPageTitle,onClick:o.downloadPage},null,8,["prepend-icon","title","onClick"]),r(s,{button:!1,item:o.downloadItem},null,8,["item"])])):S("",!0)}const go=k(uo,[["render",ho],["__scopeId","data-v-9c04e057"]]),mo={name:"KeyboardShortcutsTable",data(){return{mdiMenuLeft:Oe,mdiMenuRight:$e,mdiKeyboardSpace:Le,mdiAppleKeyboardShift:Ie}}},ko={class:"highlight-table"};function bo(e,t,a,p,n,o){return l(),f(y,null,[t[9]||(t[9]=h("h4",null,"Navigation",-1)),h("table",ko,[h("tbody",null,[h("tr",null,[h("td",null,[r(R,{class:"keyIcon",density:"compact"},{default:d(()=>[_(w(n.mdiMenuLeft),1)]),_:1}),t[0]||(t[0]=_(", j, ")),h("div",null,[r(R,{class:"keyIcon",density:"compact"},{default:d(()=>[_(w(n.mdiAppleKeyboardShift),1)]),_:1}),r(R,{class:"keyIcon",density:"compact"},{default:d(()=>[_(w(n.mdiKeyboardSpace),1)]),_:1})])]),t[1]||(t[1]=h("td",null,"Previous page",-1))]),h("tr",null,[h("td",null,[r(R,{class:"keyIcon",density:"compact"},{default:d(()=>[_(w(n.mdiMenuRight),1)]),_:1}),t[2]||(t[2]=_(", k, ")),r(R,{class:"keyIcon",density:"compact"},{default:d(()=>[_(w(n.mdiKeyboardSpace),1)]),_:1})]),t[3]||(t[3]=h("td",null,"Next page",-1))]),t[4]||(t[4]=h("tr",null,[h("td",null,","),h("td",null,[_("Next "),h("em",null,"only"),_(" one page in two page mode.")])],-1)),t[5]||(t[5]=h("tr",null,[h("td",null,"."),h("td",null,[_("Previous "),h("em",null,"only"),_(" one page in two page mode.")])],-1)),t[6]||(t[6]=h("tr",null,[h("td",null,"p"),h("td",null,"Previous Book")],-1)),t[7]||(t[7]=h("tr",null,[h("td",null,"n"),h("td",null,"Next Book")],-1)),t[8]||(t[8]=h("tr",null,[h("td",null,"esc"),h("td",null,"Close book")],-1))])]),t[10]||(t[10]=Ve('<h4 data-v-1624cd48>Fit Page To</h4><table class="highlight-table" data-v-1624cd48><tbody data-v-1624cd48><tr data-v-1624cd48><td data-v-1624cd48>s</td><td data-v-1624cd48>screen</td></tr><tr data-v-1624cd48><td data-v-1624cd48>h</td><td data-v-1624cd48>screen height</td></tr><tr data-v-1624cd48><td data-v-1624cd48>w</td><td data-v-1624cd48>screen width</td></tr><tr data-v-1624cd48><td data-v-1624cd48>o</td><td data-v-1624cd48>Show page at original size</td></tr><tr data-v-1624cd48><td data-v-1624cd48>2</td><td data-v-1624cd48>Toggle two page view</td></tr><tr data-v-1624cd48><td data-v-1624cd48>r</td><td data-v-1624cd48>Read Right to Left</td></tr><tr data-v-1624cd48><td data-v-1624cd48>l</td><td data-v-1624cd48>Read Left to Right</td></tr><tr data-v-1624cd48><td data-v-1624cd48>t</td><td data-v-1624cd48>Read Top to Bottom</td></tr><tr data-v-1624cd48><td data-v-1624cd48>b</td><td data-v-1624cd48>Read in Bottom to Top</td></tr></tbody></table><h4 data-v-1624cd48>Other</h4><table class="highlight-table" data-v-1624cd48><tbody data-v-1624cd48><tr data-v-1624cd48><td data-v-1624cd48>m</td><td data-v-1624cd48>Show comic&#39;s metadata</td></tr><tr data-v-1624cd48><td data-v-1624cd48>double click</td><td data-v-1624cd48>Zoom page</td></tr></tbody></table>',4))],64)}const fo=k(mo,[["render",bo],["__scopeId","data-v-1624cd48"]]),vo=/iP(?:ad|hone|od)|Android/,_o=vo.test(navigator.userAgent),Po=_o||globalThis.orientation!==void 0,So={name:"KeyboardShortcutsPanel",components:{CodexListItem:W,KeyboardShortcutsTable:fo},data(){return{mdiKeyboardOutline:Ae,IS_MOBILE:Po}}};function wo(e,t,a,p,n,o){const i=u("CodexListItem"),s=u("KeyboardShortcutsTable");return n.IS_MOBILE?S("",!0):(l(),g(gt,{key:0},{default:d(()=>[r(mt,{id:"readerKeyboardShortcuts"},{default:d(()=>[r(kt,{id:"shortcutsTitle"},{default:d(()=>[r(i,{id:"keyboardShortcutsItem","prepend-icon":n.mdiKeyboardOutline,title:"Keyboard Shortcuts"},null,8,["prepend-icon"])]),_:1}),r(bt,null,{default:d(()=>[r(s)]),_:1})]),_:1})]),_:1}))}const yo=k(So,[["render",wo],["__scopeId","data-v-8285795a"]]),be=["fitTo","readingDirection","twoPages"];Object.freeze(be);const Co={name:"ReaderSettingsPanel",components:{CodexListItem:W},data(){return{isGlobalScope:!1,mdiOpenInNew:Ne,mdiEye:xe,openDelay:2e3,scopeItems:[{title:"Only this comic",value:!1},{title:"Default for all comics",value:!0}]}},computed:{...P(L,["isAuthDialogOpen"]),...P(c,["isVertical","isPDF","cacheBook"]),...v(c,{choices:e=>e.choices,validBook:e=>{var t;return!!((t=e.books)!=null&&t.current)},selectedSettings(e){var t,a;return this.isGlobalScope||!((t=e.books)!=null&&t.current)?e.readerSettings:(a=e.books)==null?void 0:a.current.settings},isClearSettingsButtonDisabled(e){var t,a;if(this.isGlobalScope||!((t=e.books)!=null&&t.current))return!0;for(const p of be){const n=(a=e.books)==null?void 0:a.current.settings[p];if(!e.choices.nullValues.has(n))return!1}return!0},pdfInBrowserURL(e){var t,a;return this.isPDF&&((t=e.books)!=null&&t.current)?Ee((a=e.books)==null?void 0:a.current):""},finishOnLastPage:e=>e.readerSettings.finishOnLastPage,pageTransition:e=>e.readerSettings.pageTransition}),...re(c,["readRtlInReverse"]),fitToChoices(){return this.choicesWithoutNull("fitTo")},readingDirectionChoices(){return this.choicesWithoutNull("readingDirection")},disableTwoPages(){return this.isVertical||this.isPDF&&this.cacheBook},disableCacheBook(){return this.isVertical&&this.isPDF},disablePageTransition(){return this.isVertical&&this.isPDF}},mounted(){document.addEventListener("keyup",this._keyUpListener)},beforeUnmount(){document.removeEventListener("keyup",this._keyUpListener)},methods:{...b(c,["clearSettingsLocal","setSettingsGlobal","setSettingsLocal","setSettingsClient"]),settingsDialogChanged(e){this.isGlobalScope?this.setSettingsGlobal(e):this.setSettingsLocal(e)},choicesWithoutNull(e){const t=[];for(const a of this.choices[e])a.value&&t.push(a);return Object.freeze(t),t},_keyUpListener(e){if(e.stopPropagation(),this.isAuthDialogOpen)return;let t;switch(e.key){case"w":t={fitTo:"W"};break;case"h":t={fitTo:"H"};break;case"s":t={fitTo:"S"};break;case"o":t={fitTo:"O"};break;case"2":t={twoPages:!this.selectedSettings.twoPages};break;case"l":t={readingDirection:"ltr"};break;case"r":t={readingDirection:"rtl"};break;case"t":t={readingDirection:"ttb"};break;case"b":t={readingDirection:"bbt"};break}t&&this.setSettingsLocal(t)}}},Ro={id:"readerScopedSettings",class:"readerCodexListItem"};function Bo(e,t,a,p,n,o){const i=u("CodexListItem");return l(),f(y,null,[t[9]||(t[9]=h("h4",{class:"readerSettingsHeader"},"Comic Settings Scope",-1)),r(x,{modelValue:n.isGlobalScope,"onUpdate:modelValue":t[0]||(t[0]=s=>n.isGlobalScope=s),class:"scopeRadioGroup readerCodexListItem",density:"compact","hide-details":"auto"},{default:d(()=>[(l(!0),f(y,null,I(n.scopeItems,s=>(l(),g(N,{key:s.value,label:s.title,value:s.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),r(ft,null,{default:d(()=>[h("div",Ro,[r(x,{class:"displayRadioGroup",density:"compact",label:"Display","hide-details":"auto","model-value":e.selectedSettings.fitTo,"onUpdate:modelValue":t[1]||(t[1]=s=>o.settingsDialogChanged({fitTo:s}))},{default:d(()=>[(l(!0),f(y,null,I(o.fitToChoices,s=>(l(),g(N,{key:s.value,label:s.title,value:s.value},null,8,["label","value"]))),128))]),_:1},8,["model-value"]),r(D,{disabled:o.disableTwoPages,class:"scopedCheckbox",density:"compact",label:"Two pages","hide-details":"auto","model-value":e.selectedSettings.twoPages,"true-value":!0,indeterminate:e.selectedSettings.twoPages===null||e.selectedSettings.twoPages===void 0,"onUpdate:modelValue":t[2]||(t[2]=s=>o.settingsDialogChanged({twoPages:s}))},null,8,["disabled","model-value","indeterminate"]),r(x,{class:"displayRadioGroup",density:"compact",label:"Reading Direction","hide-details":"auto","model-value":e.selectedSettings.readingDirection,"onUpdate:modelValue":t[3]||(t[3]=s=>o.settingsDialogChanged({readingDirection:s}))},{default:d(()=>[(l(!0),f(y,null,I(o.readingDirectionChoices,s=>(l(),g(N,{key:s.value,label:s.title,value:s.value},null,8,["label","value"]))),128))]),_:1},8,["model-value"]),r(D,{"model-value":e.selectedSettings.readRtlInReverse,class:"scopedCheckbox",density:"compact",label:"Read RTL Comics LTR","hide-details":"auto","true-value":!0,"onUpdate:modelValue":t[4]||(t[4]=s=>o.settingsDialogChanged({readRtlInReverse:s}))},null,8,["model-value"]),n.isGlobalScope?S("",!0):B((l(),g(le,{key:0,id:"clearSettingsButton",disabled:e.isClearSettingsButtonDisabled,onClick:e.clearSettingsLocal},{default:d(()=>t[8]||(t[8]=[_(" Clear Settings ")])),_:1},8,["disabled","onClick"])),[[F,{openDelay:n.openDelay,text:"Use the default settings for all comics for this comic"}]])])]),_:1}),r(M),t[10]||(t[10]=h("h4",{class:"readerSettingsHeader"},"Reader Settings",-1)),r(D,{class:"readerCodexListItem","model-value":e.finishOnLastPage,density:"compact",label:"Finish Book On Last Page","hide-details":"auto","true-value":!0,"onUpdate:modelValue":t[5]||(t[5]=s=>e.setSettingsGlobal({finishOnLastPage:s}))},null,8,["model-value"]),B(r(D,{"model-value":e.pageTransition,class:"readerCodexListItem",density:"compact",disabled:o.disablePageTransition,label:"Animate Page Turns","hide-details":"auto","true-value":!0,"onUpdate:modelValue":t[6]||(t[6]=s=>e.setSettingsGlobal({pageTransition:s}))},null,8,["model-value","disabled"]),[[F,{openDelay:n.openDelay,text:"Animate page turns when reading horizontally."}]]),B(r(D,{"model-value":e.cacheBook,class:"readerCodexListItem",density:"compact",disabled:o.disableCacheBook,label:"Cache Entire Book","hide-details":"auto","true-value":!0,"onUpdate:modelValue":t[7]||(t[7]=s=>e.setSettingsClient({cacheBook:s}))},null,8,["model-value","disabled"]),[[F,{openDelay:n.openDelay,text:"Cache all pages from this book in the browser"}]]),e.pdfInBrowserURL?(l(),g(i,{key:0,"prepend-icon":n.mdiEye,"append-icon":n.mdiOpenInNew,title:"Read in Tab",href:e.pdfInBrowserURL,target:"_blank"},null,8,["prepend-icon","append-icon","href"])):S("",!0)],64)}const To=k(Co,[["render",Bo],["__scopeId","data-v-9c6e0d8b"]]),Do={name:"ReaderSettingsSuperPanel",components:{DownloadPanel:go,ReaderKeyboardShortcutsPanel:yo,ReaderSettingsPanel:To}};function Io(e,t,a,p,n,o){const i=u("ReaderSettingsPanel"),s=u("ReaderKeyboardShortcutsPanel"),m=u("DownloadPanel");return l(),f(y,null,[r(i),r(M),r(s),r(M),r(m)],64)}const Lo=k(Do,[["render",Io]]),$o={name:"ReaderSettingsDrawer",components:{SettingsDrawer:Ze,ReaderSettingsSuperPanel:Lo}};function Oo(e,t,a,p,n,o){const i=u("ReaderSettingsSuperPanel"),s=u("SettingsDrawer");return l(),g(s,{title:"Reader",temporary:"","disable-resize-watcher":""},{panel:d(()=>[r(i)]),_:1})}const Vo=k($o,[["render",Oo]]),Z={a:qe,f:He,p:We,i:Me,s:ze,v:Ue},Ao={a:"Story Arc",f:"Folder",p:"Publisher",i:"Imprint",s:"Series",v:"Volume"},Eo={name:"ReaderArcSelect",components:{ToolbarSelect:ct},data(){return{mdiFilterOutline:Ke}},computed:{...v(c,{arcGroup:e=>{var t;return((t=e.arc)==null?void 0:t.group)||"s"},arc:e=>e.arc,arcName:e=>{for(const t of e.arcs)if(e.arc.group===t.group&&e.arc.pks===t.pks)return t.name;return"Unknown"},arcItems:e=>{const t=[];for(const a of e.arcs){const p={value:a,title:a.name,group:a.group,filters:a.filters,subtitle:Ao[a.group],prependIcon:Z[a.group]};t.push(p)}return t}})},methods:{...b(c,["loadBooks"]),arcIcon(e){return Z[e]},checkIcon(e){return e.group===this.arc.group&&e.pks==this.arc.pks?Fe:""},subtitle(e){let t=e.subtitle;return e.filters&&(t+=" (filtered)"),t},onUpdate(e){const t={group:e.group,pks:e.pks};this.loadBooks({arc:t})}}},xo={id:"arcPos"};function No(e,t,a,p,n,o){const i=u("ToolbarSelect");return l(),g(i,{"model-value":e.arc,class:"arcSelect","select-label":"reading order",items:e.arcItems,disabled:!e.arcItems||e.arcItems.length<=1,"onUpdate:modelValue":o.onUpdate},{item:d(({item:s,props:m})=>[r(it,U(m,{density:"compact",variant:"plain","prepend-icon":s.raw.prependIcon,subtitle:o.subtitle(s.raw),"append-icon":o.checkIcon(m.value)}),null,16,["prepend-icon","subtitle","append-icon"])]),selection:d(({item:s,props:m})=>[r(R,U({size:"large"},m,{class:"arcSelectIcon"}),{default:d(()=>[_(w(o.arcIcon(s.raw.group)),1)]),_:2},1040),h("span",xo,w(e.arc.index)+" / "+w(e.arc.count),1)]),_:1},8,["model-value","items","disabled","onUpdate:modelValue"])}const Fo=k(Eo,[["render",No],["__scopeId","data-v-f5975fea"]]),Uo={name:"ReaderTitleToolbar",components:{AppBanner:tt,MetadataDialog:dt,ReaderArcSelect:Fo,SettingsDrawerButton:Je},data(){return{mdiClose:Ge,routeChanged:!1}},head(){return{meta:[{hid:"description",name:"description",content:`reader ${this.activeTitle} page ${this.storePage}`}]}},computed:{...P(L,["isAuthDialogOpen"]),...P(c,["activeTitle","closeBookRoute"]),...v(c,{showToolbars:e=>e.showToolbars,currentBook:e=>{var t;return((t=e.books)==null?void 0:t.current)||{}},empty:e=>e.empty,subtitle:e=>{var t,a;return((a=(t=e.books)==null?void 0:t.current)==null?void 0:a.name)||""}}),title(){return this.activeTitle},extensionHeight(){let e=32;return this.subtitle&&(e*=2),e+=4,e},closeRoute(){const e=z(this.closeBookRoute),t=z(e.params);return delete t.name,e.params=t,e}},watch:{$route(e,t){t&&(this.routeChanged=!0)}},mounted(){document.addEventListener("keyup",this._keyUpListener)},beforeUnmount(){document.removeEventListener("keyup",this._keyUpListener)},methods:{...b(ne,["setTimestamp"]),...b(c,["routeToDirection","routeToDirectionOne","routeToBook","setBookChangeFlag"]),openMetadata(){this.$refs.metadataDialog.dialog=!0},onCloseBook(){this.routeChanged&&this.setTimestamp()},_keyUpListener(e){if(e.stopPropagation(),!this.isAuthDialogOpen)switch(e.key){case"Escape":this.$refs.closeBook.$el.click();break;case"m":this.empty||this.openMetadata();break}}}},zo={id:"readerTopToolbarHeader"},Mo={id:"title"},Wo={key:0,id:"subtitle"};function Ho(e,t,a,p,n,o){const i=u("AppBanner"),s=u("ReaderArcSelect"),m=u("MetadataDialog"),T=u("SettingsDrawerButton");return l(),g(vt,null,{default:d(()=>[B(h("header",zo,[r(i),r(ot,{id:"readerToolbarTop",density:"compact","extension-height":o.extensionHeight},je({default:d(()=>[r(E,null,{default:d(()=>[r(le,{ref:"closeBook",class:"closeBook",to:o.closeRoute,size:"large",density:"compact",variant:"plain",onClick:o.onCloseBook},{default:d(()=>t[0]||(t[0]=[_(" close book ")])),_:1},8,["to","onClick"])]),_:1}),r(ut),e.empty?S("",!0):(l(),g(E,{key:0},{default:d(()=>[r(s),r(m,{ref:"metadataDialog",group:"c",toolbar:!0,book:e.currentBook},null,8,["book"])]),_:1})),r(E,null,{default:d(()=>[r(T)]),_:1})]),_:2},[o.title?{name:"extension",fn:d(()=>[r(at,{class:"readerTitle"},{default:d(()=>[h("div",Mo,w(o.title),1),e.subtitle?(l(),f("div",Wo,w(e.subtitle),1)):S("",!0)]),_:1})]),key:"0"}:void 0]),1032,["extension-height"])],512),[[ie,e.showToolbars]])]),_:1})}const fe=k(Uo,[["render",Ho],["__scopeId","data-v-cab0ef78"]]),qo={name:"ReaderEmptyBooks",components:{ReaderTopToolbar:fe,EmptyState:ce},data(){return{mdiBookRemoveOutline:Ye}},methods:{...b(c,["loadBooks"]),onAction(){this.loadBooks({mtime:Date.now()})}}};function Ko(e,t,a,p,n,o){const i=u("ReaderTopToolbar"),s=u("EmptyState");return l(),f(y,null,[r(i),r(s,{headline:"Book Not Found",title:"Close the reader and find another book",icon:n.mdiBookRemoveOutline,"action-text":"Try to load book again","onClick:action":o.onAction},null,8,["icon","onClick:action"])],64)}const Go=k(qo,[["render",Ko]]),jo={name:"ReaderBookChangeNavButton",components:{PaginationNavButton:pe},props:{direction:{type:String,required:!0}},computed:{...P(c,["isBTT"]),...v(c,{toRoute(e){var a;const t=(a=e==null?void 0:e.routes)==null?void 0:a.books[this.direction];return t?{params:z(t)}:""}}),title(){return(this.direction==="prev"?"Previous":"Next")+" Book"},icon(){return this.bookChangeIcon(this.direction)},classes(){return{bookChangeNavButtonLeft:this.direction==="prev",bookChangeNavButtonRight:this.direction==="next"}}},methods:{...b(c,["bookChangeIcon"])}};function Yo(e,t,a,p,n,o){const i=u("PaginationNavButton");return e.toRoute?(l(),g(i,{key:0,class:C(o.classes),icon:o.icon,variant:"plain",title:o.title,to:e.toRoute},null,8,["class","icon","title","to"])):S("",!0)}const Xo=k(jo,[["render",Yo],["__scopeId","data-v-0cead61e"]]),Zo={name:"ReaderNavButton",components:{PaginationNavButton:pe},props:{value:{type:Number,required:!0},twoPages:{type:Boolean,default:!1}},computed:{...P(c,["isVertical"]),...v(c,{storePage:e=>e.page,toRoute(e){if(!this.isVertical)return{params:{pk:e.books.current.pk,page:this.value}}},isBookPrev:e=>!!e.routes.books.prev,isBookNext:e=>!!e.routes.books.next}),classes(){return{readerNavButtonLeft:!this.isBookPrev&&this.value===0,readerNavButtonRight:!this.isBookNext&&this.value!=0}},title(){return"Page "+this.value},disabled(){return this.value===this.storePage||this.twoPages&&!!(this.value%2)&&this.value-1===this.storePage}},methods:{...b(c,["setActivePage"]),onClick(){this.isVertical&&this.setActivePage(this.value,!0)}}};function Jo(e,t,a,p,n,o){const i=u("PaginationNavButton");return l(),g(i,{key:e.isVertical,disabled:o.disabled,class:C(["readerNavButton",o.classes]),title:o.title,to:e.toRoute,onClick:o.onClick},{default:d(()=>[_(w(a.value),1)]),_:1},8,["disabled","class","title","to","onClick"])}const Qo=k(Zo,[["render",Jo],["__scopeId","data-v-222c7076"]]),$="prev",O="next",ea={name:"ReaderNavToolbar",components:{PaginationSlider:ht,ReaderNavButton:Qo,PaginationToolbar:pt,ReaderBookChangeNavButton:Xo},computed:{...P(L,["isAuthDialogOpen"]),...P(c,["activeSettings","isReadInReverse","isVertical"]),...v(c,{showToolbars:e=>e.showToolbars,storePage:e=>e.page,key(e){var a,p;return`${(p=(a=e.books)==null?void 0:a.current)==null?void 0:p.pk}:${this.step}:${this.isReadInReverse}`},maxPage:e=>{var t,a;return((a=(t=e.books)==null?void 0:t.current)==null?void 0:a.maxPage)||0}}),twoPages(){return this.activeSettings.twoPages},step(){return this.activeSettings.twoPages?2:1},trackColor(){return this.twoPages&&+this.storePage>=this.maxPage-1?this.$vuetify.theme.current.colors.primary:""},min(){return this.isReadInReverse?this.maxPage:0},max(){return this.isReadInReverse?0:this.maxPage},bookPrev(){return this.isReadInReverse?"next":"prev"},bookNext(){return this.isReadInReverse?"prev":"next"}},mounted(){document.addEventListener("keyup",this._keyUpListener)},beforeUnmount(){document.removeEventListener("keyup",this._keyUpListener)},methods:{...b(c,["routeToBook","routeToDirection","routeToDirectionOne","routeToPage","setActivePage"]),onSliderUpdate(e){this.isVertical?this.setActivePage(e,!0):this.routeToPage(e)},_keyUpListener(e){if(e.stopPropagation(),!this.isAuthDialogOpen)switch(e.key){case" ":!e.shiftKey&&window.innerHeight+window.scrollY+1>=document.body.scrollHeight?this.routeToDirection(O):e.shiftKey&&window.scrollY===0&&this.routeToDirection($);break;case"j":case"ArrowRight":this.routeToDirection(O);break;case"k":case"ArrowLeft":this.routeToDirection($);break;case",":this.routeToDirectionOne($);break;case".":this.routeToDirectionOne(O);break;case"n":this.routeToBook(O);break;case"p":this.routeToBook($);break}}}};function ta(e,t,a,p,n,o){const i=u("ReaderBookChangeNavButton"),s=u("ReaderNavButton"),m=u("PaginationSlider"),T=u("PaginationToolbar");return l(),g(_t,null,{default:d(()=>[e.maxPage?B((l(),g(T,{key:0,id:"readerToolbarNav"},{default:d(()=>[r(i,{direction:o.bookPrev,narrow:!1},null,8,["direction"]),r(s,{value:o.min,"two-pages":o.twoPages},null,8,["value","two-pages"]),(l(),g(m,{key:e.key,"model-value":e.storePage,min:0,max:e.maxPage,step:o.step,"track-color":o.trackColor,reverse:e.isReadInReverse,"onUpdate:modelValue":t[0]||(t[0]=V=>o.onSliderUpdate(V))},null,8,["model-value","max","step","track-color","reverse"])),r(s,{value:o.max,"two-pages":o.twoPages},null,8,["value","two-pages"]),r(i,{direction:o.bookNext,narrow:!1},null,8,["direction"])]),_:1},512)),[[ie,e.showToolbars]]):S("",!0)]),_:1})}const oa=k(ea,[["render",ta],["__scopeId","data-v-955ab3ce"]]),aa={name:"MainReader",components:{BooksWindow:co,ReaderEmpty:Go,ReaderNavToolbar:oa,ReaderTopToolbar:fe,ReaderSettingsDrawer:Vo,Unauthorized:st},data(){return{showToolbars:!1}},computed:{...P(L,["isAuthorized"]),...v(L,{user:e=>e.user}),...v(c,{empty:e=>e.empty,arc:e=>e.arc})},watch:{user(){this.loadReaderSettings()},isAuthorized(){this.loadReaderSettings()}},beforeMount(){this.reset(),this.loadReaderSettings()},methods:{...b(c,["loadReaderSettings","reset"])}},sa={key:0},ra={id:"readerContainer"};function na(e,t,a,p,n,o){const i=u("ReaderTopToolbar"),s=u("BooksWindow"),m=u("ReaderNavToolbar"),T=u("ReaderEmpty"),V=u("ReaderSettingsDrawer"),ve=u("Unauthorized");return e.isAuthorized?(l(),g(rt,{key:0,id:"readerWrapper"},{default:d(()=>[e.empty?(l(),g(T,{key:1})):(l(),f("div",sa,[h("div",ra,[r(i),r(s),r(m)])])),r(V)]),_:1})):(l(),g(ve,{key:1}))}const ia=k(aa,[["render",na],["__scopeId","data-v-4f31abfa"]]),Sa=Object.freeze(Object.defineProperty({__proto__:null,default:ia},Symbol.toStringTag,{value:"Module"}));export{Xt as P,ke as S,Sa as r};