codex 1.5.13a0__py3-none-any.whl → 1.5.13a2__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 (379) hide show
  1. codex/applications/websocket.py +1 -7
  2. codex/librarian/importer/query_fks.py +1 -0
  3. codex/serializers/browser/settings.py +0 -1
  4. codex/serializers/choices.py +1 -2
  5. codex/settings/settings.py +0 -5
  6. codex/signals/django_signals.py +0 -6
  7. codex/static_root/assets/{VCheckbox-BMRDCYNv.7f791d7f065f.js → VCheckbox-BR-5qiW4.d4e12b9a3549.js} +1 -1
  8. codex/static_root/assets/VCheckbox-BR-5qiW4.d4e12b9a3549.js.br +0 -0
  9. codex/static_root/assets/VCheckbox-BR-5qiW4.d4e12b9a3549.js.gz +0 -0
  10. codex/static_root/assets/{VCheckbox-BMRDCYNv.js → VCheckbox-BR-5qiW4.js} +1 -1
  11. codex/static_root/assets/VCheckbox-BR-5qiW4.js.br +0 -0
  12. codex/static_root/assets/VCheckbox-BR-5qiW4.js.gz +0 -0
  13. codex/static_root/assets/{VCheckboxBtn-Dqp1u3GT.e80f145994b6.js → VCheckboxBtn-C7T6Tf80.597cfcc88998.js} +1 -1
  14. codex/static_root/assets/VCheckboxBtn-C7T6Tf80.597cfcc88998.js.br +0 -0
  15. codex/static_root/assets/VCheckboxBtn-C7T6Tf80.597cfcc88998.js.gz +0 -0
  16. codex/static_root/assets/{VCheckboxBtn-Dqp1u3GT.js → VCheckboxBtn-C7T6Tf80.js} +1 -1
  17. codex/static_root/assets/VCheckboxBtn-C7T6Tf80.js.br +0 -0
  18. codex/static_root/assets/VCheckboxBtn-C7T6Tf80.js.gz +0 -0
  19. codex/static_root/assets/{VCombobox-DT52mZm3.309c77be4a55.js → VCombobox-CA6L757N.c9c01cbc12eb.js} +1 -1
  20. codex/static_root/assets/VCombobox-CA6L757N.c9c01cbc12eb.js.br +0 -0
  21. codex/static_root/assets/VCombobox-CA6L757N.c9c01cbc12eb.js.gz +0 -0
  22. codex/static_root/assets/{VCombobox-DT52mZm3.js → VCombobox-CA6L757N.js} +1 -1
  23. codex/static_root/assets/VCombobox-CA6L757N.js.br +0 -0
  24. codex/static_root/assets/VCombobox-CA6L757N.js.gz +0 -0
  25. codex/static_root/assets/{VDataTableVirtual-DhhCmPtf.0735a1ab4c2f.js → VDataTableVirtual-DgdQqVhC.118522d90dfd.js} +1 -1
  26. codex/static_root/assets/VDataTableVirtual-DgdQqVhC.118522d90dfd.js.br +0 -0
  27. codex/static_root/assets/VDataTableVirtual-DgdQqVhC.118522d90dfd.js.gz +0 -0
  28. codex/static_root/assets/{VDataTableVirtual-DhhCmPtf.js → VDataTableVirtual-DgdQqVhC.js} +1 -1
  29. codex/static_root/assets/VDataTableVirtual-DgdQqVhC.js.br +0 -0
  30. codex/static_root/assets/VDataTableVirtual-DgdQqVhC.js.gz +0 -0
  31. codex/static_root/assets/{VExpansionPanel-C593uXqT.d3bdc6a21208.js → VExpansionPanel-DSgyCbMu.ce806293d8ad.js} +1 -1
  32. codex/static_root/assets/VExpansionPanel-DSgyCbMu.ce806293d8ad.js.br +0 -0
  33. codex/static_root/assets/VExpansionPanel-DSgyCbMu.ce806293d8ad.js.gz +0 -0
  34. codex/static_root/assets/{VExpansionPanel-C593uXqT.js → VExpansionPanel-DSgyCbMu.js} +1 -1
  35. codex/static_root/assets/VExpansionPanel-DSgyCbMu.js.br +0 -0
  36. codex/static_root/assets/VExpansionPanel-DSgyCbMu.js.gz +0 -0
  37. codex/static_root/assets/{VMain-DmQvRj_k.1e0480bed9a6.js → VMain-CDWaq_uU.9350720f2523.js} +1 -1
  38. codex/static_root/assets/VMain-CDWaq_uU.9350720f2523.js.br +0 -0
  39. codex/static_root/assets/VMain-CDWaq_uU.9350720f2523.js.gz +0 -0
  40. codex/static_root/assets/{VMain-DmQvRj_k.js → VMain-CDWaq_uU.js} +1 -1
  41. codex/static_root/assets/VMain-CDWaq_uU.js.br +0 -0
  42. codex/static_root/assets/VMain-CDWaq_uU.js.gz +0 -0
  43. codex/static_root/assets/{VRadioGroup-Bi16yPEE.69086b77f9b1.js → VRadioGroup-1KnJv1YV.c78bc794333b.js} +1 -1
  44. codex/static_root/assets/VRadioGroup-1KnJv1YV.c78bc794333b.js.br +0 -0
  45. codex/static_root/assets/VRadioGroup-1KnJv1YV.c78bc794333b.js.gz +0 -0
  46. codex/static_root/assets/{VRadioGroup-Bi16yPEE.js → VRadioGroup-1KnJv1YV.js} +1 -1
  47. codex/static_root/assets/VRadioGroup-1KnJv1YV.js.br +0 -0
  48. codex/static_root/assets/VRadioGroup-1KnJv1YV.js.gz +0 -0
  49. codex/static_root/assets/{VSelect-BdaijxdJ.b969ab260593.js → VSelect-CLw1oGQg.37122543e75e.js} +1 -1
  50. codex/static_root/assets/VSelect-CLw1oGQg.37122543e75e.js.br +0 -0
  51. codex/static_root/assets/VSelect-CLw1oGQg.37122543e75e.js.gz +0 -0
  52. codex/static_root/assets/{VSelect-BdaijxdJ.js → VSelect-CLw1oGQg.js} +1 -1
  53. codex/static_root/assets/VSelect-CLw1oGQg.js.br +0 -0
  54. codex/static_root/assets/VSelect-CLw1oGQg.js.gz +0 -0
  55. codex/static_root/assets/{VSelectionControl-CuM4okF6.0f246e35e86f.js → VSelectionControl-CEOyDLZC.60a1d02bebde.js} +1 -1
  56. codex/static_root/assets/VSelectionControl-CEOyDLZC.60a1d02bebde.js.br +0 -0
  57. codex/static_root/assets/VSelectionControl-CEOyDLZC.60a1d02bebde.js.gz +0 -0
  58. codex/static_root/assets/{VSelectionControl-CuM4okF6.js → VSelectionControl-CEOyDLZC.js} +1 -1
  59. codex/static_root/assets/VSelectionControl-CEOyDLZC.js.br +0 -0
  60. codex/static_root/assets/VSelectionControl-CEOyDLZC.js.gz +0 -0
  61. codex/static_root/assets/{VSlideGroup-ztBraz6g.02a0bc55b207.js → VSlideGroup-r8lyA6_4.d51fe70b8cfa.js} +1 -1
  62. codex/static_root/assets/VSlideGroup-r8lyA6_4.d51fe70b8cfa.js.br +0 -0
  63. codex/static_root/assets/VSlideGroup-r8lyA6_4.d51fe70b8cfa.js.gz +0 -0
  64. codex/static_root/assets/{VSlideGroup-ztBraz6g.js → VSlideGroup-r8lyA6_4.js} +1 -1
  65. codex/static_root/assets/VSlideGroup-r8lyA6_4.js.br +0 -0
  66. codex/static_root/assets/VSlideGroup-r8lyA6_4.js.gz +0 -0
  67. codex/static_root/assets/{VTable-CGuSv-Tv.eddaf5526d93.js → VTable-CyZmujCR.5d4fdcc0324d.js} +1 -1
  68. codex/static_root/assets/VTable-CyZmujCR.5d4fdcc0324d.js.br +0 -0
  69. codex/static_root/assets/VTable-CyZmujCR.5d4fdcc0324d.js.gz +0 -0
  70. codex/static_root/assets/{VTable-CGuSv-Tv.js → VTable-CyZmujCR.js} +1 -1
  71. codex/static_root/assets/VTable-CyZmujCR.js.br +0 -0
  72. codex/static_root/assets/VTable-CyZmujCR.js.gz +0 -0
  73. codex/static_root/assets/{VToolbar-CAUhD2BO.279f0b52347a.js → VToolbar-qYCVOLXR.07eda01fd108.js} +2 -2
  74. codex/static_root/assets/VToolbar-qYCVOLXR.07eda01fd108.js.br +0 -0
  75. codex/static_root/assets/VToolbar-qYCVOLXR.07eda01fd108.js.gz +0 -0
  76. codex/static_root/assets/{VToolbar-CAUhD2BO.js → VToolbar-qYCVOLXR.js} +2 -2
  77. codex/static_root/assets/VToolbar-qYCVOLXR.js.br +0 -0
  78. codex/static_root/assets/VToolbar-qYCVOLXR.js.gz +0 -0
  79. codex/static_root/assets/{VWindowItem-YvmNwCNb.20a7e3b303de.js → VWindowItem-DAPhfogt.d9e874ecf5be.js} +1 -1
  80. codex/static_root/assets/VWindowItem-DAPhfogt.d9e874ecf5be.js.br +0 -0
  81. codex/static_root/assets/VWindowItem-DAPhfogt.d9e874ecf5be.js.gz +0 -0
  82. codex/static_root/assets/{VWindowItem-YvmNwCNb.js → VWindowItem-DAPhfogt.js} +1 -1
  83. codex/static_root/assets/VWindowItem-DAPhfogt.js.br +0 -0
  84. codex/static_root/assets/VWindowItem-DAPhfogt.js.gz +0 -0
  85. codex/static_root/assets/{admin-Ch9WezG1.bdace86b7c25.js → admin-CfqyTXqy.b073b6fa7ebd.js} +1 -1
  86. codex/static_root/assets/admin-CfqyTXqy.b073b6fa7ebd.js.br +0 -0
  87. codex/static_root/assets/admin-CfqyTXqy.b073b6fa7ebd.js.gz +0 -0
  88. codex/static_root/assets/{admin-Ch9WezG1.js → admin-CfqyTXqy.js} +1 -1
  89. codex/static_root/assets/admin-CfqyTXqy.js.br +0 -0
  90. codex/static_root/assets/admin-CfqyTXqy.js.gz +0 -0
  91. codex/static_root/assets/{admin-drawer-panel-B4VvGE4s.2265b9de60ab.js → admin-drawer-panel-UQNBz5Mr.4f87b323dcdc.js} +1 -1
  92. codex/static_root/assets/admin-drawer-panel-UQNBz5Mr.4f87b323dcdc.js.br +0 -0
  93. codex/static_root/assets/{admin-drawer-panel-B4VvGE4s.2265b9de60ab.js.gz → admin-drawer-panel-UQNBz5Mr.4f87b323dcdc.js.gz} +0 -0
  94. codex/static_root/assets/{admin-drawer-panel-B4VvGE4s.js → admin-drawer-panel-UQNBz5Mr.js} +1 -1
  95. codex/static_root/assets/admin-drawer-panel-UQNBz5Mr.js.br +0 -0
  96. codex/static_root/assets/{admin-drawer-panel-B4VvGE4s.js.gz → admin-drawer-panel-UQNBz5Mr.js.gz} +0 -0
  97. codex/static_root/assets/{browser-CVvV08AM.7667051b18fa.css → browser-CTxEKlCx.211d729d9165.css} +1 -1
  98. codex/static_root/assets/browser-CTxEKlCx.211d729d9165.css.br +0 -0
  99. codex/static_root/assets/browser-CTxEKlCx.211d729d9165.css.gz +0 -0
  100. codex/static_root/assets/{browser-CVvV08AM.css → browser-CTxEKlCx.css} +1 -1
  101. codex/static_root/assets/browser-CTxEKlCx.css.br +0 -0
  102. codex/static_root/assets/browser-CTxEKlCx.css.gz +0 -0
  103. codex/static_root/assets/browser-CWqU3TI5.4583f12be6b9.js +1 -0
  104. codex/static_root/assets/browser-CWqU3TI5.4583f12be6b9.js.br +0 -0
  105. codex/static_root/assets/browser-CWqU3TI5.4583f12be6b9.js.gz +0 -0
  106. codex/static_root/assets/browser-CWqU3TI5.js +1 -0
  107. codex/static_root/assets/browser-CWqU3TI5.js.br +0 -0
  108. codex/static_root/assets/browser-CWqU3TI5.js.gz +0 -0
  109. codex/static_root/assets/{change-password-dialog-Dq6GjT1T.01b56b4b3e87.js → change-password-dialog-D80TfT-n.284c707d3d79.js} +1 -1
  110. codex/static_root/assets/change-password-dialog-D80TfT-n.284c707d3d79.js.br +0 -0
  111. codex/static_root/assets/change-password-dialog-D80TfT-n.284c707d3d79.js.gz +0 -0
  112. codex/static_root/assets/{change-password-dialog-Dq6GjT1T.js → change-password-dialog-D80TfT-n.js} +1 -1
  113. codex/static_root/assets/change-password-dialog-D80TfT-n.js.br +0 -0
  114. codex/static_root/assets/change-password-dialog-D80TfT-n.js.gz +0 -0
  115. codex/static_root/assets/{confirm-dialog-D-Fx-51m.54b7d1059106.js → confirm-dialog-CTwvsrD2.8de12739f859.js} +1 -1
  116. codex/static_root/assets/confirm-dialog-CTwvsrD2.8de12739f859.js.br +0 -0
  117. codex/static_root/assets/confirm-dialog-CTwvsrD2.8de12739f859.js.gz +0 -0
  118. codex/static_root/assets/{confirm-dialog-D-Fx-51m.js → confirm-dialog-CTwvsrD2.js} +1 -1
  119. codex/static_root/assets/confirm-dialog-CTwvsrD2.js.br +0 -0
  120. codex/static_root/assets/confirm-dialog-CTwvsrD2.js.gz +0 -0
  121. codex/static_root/assets/{confirm-footer-Yn7T9Tns.js → confirm-footer-CLcqjnLg.ebed69027134.js} +1 -1
  122. codex/static_root/assets/confirm-footer-CLcqjnLg.ebed69027134.js.br +0 -0
  123. codex/static_root/assets/confirm-footer-CLcqjnLg.ebed69027134.js.gz +0 -0
  124. codex/static_root/assets/{confirm-footer-Yn7T9Tns.75a17cd86ca9.js → confirm-footer-CLcqjnLg.js} +1 -1
  125. codex/static_root/assets/confirm-footer-CLcqjnLg.js.br +0 -0
  126. codex/static_root/assets/confirm-footer-CLcqjnLg.js.gz +0 -0
  127. codex/static_root/assets/{datetime-column-DCeBthsr.22ed49a999cc.js → datetime-column-DPVO98E2.27e26fb391ca.js} +1 -1
  128. codex/static_root/assets/datetime-column-DPVO98E2.27e26fb391ca.js.br +0 -0
  129. codex/static_root/assets/datetime-column-DPVO98E2.27e26fb391ca.js.gz +0 -0
  130. codex/static_root/assets/{datetime-column-DCeBthsr.js → datetime-column-DPVO98E2.js} +1 -1
  131. codex/static_root/assets/datetime-column-DPVO98E2.js.br +0 -0
  132. codex/static_root/assets/datetime-column-DPVO98E2.js.gz +0 -0
  133. codex/static_root/assets/{filter-Dw0fjwZi.4d5f085435ab.js → filter-Cqjy01SO.71710ea1c7f8.js} +1 -1
  134. codex/static_root/assets/filter-Cqjy01SO.71710ea1c7f8.js.br +0 -0
  135. codex/static_root/assets/filter-Cqjy01SO.71710ea1c7f8.js.gz +0 -0
  136. codex/static_root/assets/{filter-Dw0fjwZi.js → filter-Cqjy01SO.js} +1 -1
  137. codex/static_root/assets/filter-Cqjy01SO.js.br +0 -0
  138. codex/static_root/assets/filter-Cqjy01SO.js.gz +0 -0
  139. codex/static_root/assets/{flag-tab-D5RcLFbQ.1073708ea164.js → flag-tab-BERamYWo.52c4bc9b4243.js} +1 -1
  140. codex/static_root/assets/flag-tab-BERamYWo.52c4bc9b4243.js.br +0 -0
  141. codex/static_root/assets/flag-tab-BERamYWo.52c4bc9b4243.js.gz +0 -0
  142. codex/static_root/assets/{flag-tab-D5RcLFbQ.js → flag-tab-BERamYWo.js} +1 -1
  143. codex/static_root/assets/flag-tab-BERamYWo.js.br +0 -0
  144. codex/static_root/assets/flag-tab-BERamYWo.js.gz +0 -0
  145. codex/static_root/assets/{group-tab-BilDDNz5.cba5ca15d7cf.js → group-tab-DknI2YL3.7b2e5d32ee7e.js} +1 -1
  146. codex/static_root/assets/group-tab-DknI2YL3.7b2e5d32ee7e.js.br +0 -0
  147. codex/static_root/assets/group-tab-DknI2YL3.7b2e5d32ee7e.js.gz +0 -0
  148. codex/static_root/assets/{group-tab-BilDDNz5.js → group-tab-DknI2YL3.js} +1 -1
  149. codex/static_root/assets/group-tab-DknI2YL3.js.br +0 -0
  150. codex/static_root/assets/group-tab-DknI2YL3.js.gz +0 -0
  151. codex/static_root/assets/{http-error-DHmC7qgT.bde1d32b55df.js → http-error-DxxoT0wf.8f26afe5c1dd.js} +1 -1
  152. codex/static_root/assets/http-error-DxxoT0wf.8f26afe5c1dd.js.br +0 -0
  153. codex/static_root/assets/http-error-DxxoT0wf.8f26afe5c1dd.js.gz +0 -0
  154. codex/static_root/assets/{http-error-DHmC7qgT.js → http-error-DxxoT0wf.js} +1 -1
  155. codex/static_root/assets/http-error-DxxoT0wf.js.br +0 -0
  156. codex/static_root/assets/http-error-DxxoT0wf.js.gz +0 -0
  157. codex/static_root/assets/{library-tab-dbcbv0--.efa2d1d95b77.js → library-tab-DXCuu0zS.6a7b7e48a6f5.js} +1 -1
  158. codex/static_root/assets/library-tab-DXCuu0zS.6a7b7e48a6f5.js.br +0 -0
  159. codex/static_root/assets/library-tab-DXCuu0zS.6a7b7e48a6f5.js.gz +0 -0
  160. codex/static_root/assets/{library-tab-dbcbv0--.js → library-tab-DXCuu0zS.js} +1 -1
  161. codex/static_root/assets/library-tab-DXCuu0zS.js.br +0 -0
  162. codex/static_root/assets/library-tab-DXCuu0zS.js.gz +0 -0
  163. codex/static_root/assets/{main-CCY5Ix0K.js → main-CTJQvqMb.1d5f619166b3.js} +4 -4
  164. codex/static_root/assets/main-CTJQvqMb.1d5f619166b3.js.br +0 -0
  165. codex/static_root/assets/main-CTJQvqMb.1d5f619166b3.js.gz +0 -0
  166. codex/static_root/assets/{main-CCY5Ix0K.b067e1d16cf5.js → main-CTJQvqMb.js} +4 -4
  167. codex/static_root/assets/main-CTJQvqMb.js.br +0 -0
  168. codex/static_root/assets/main-CTJQvqMb.js.gz +0 -0
  169. codex/static_root/assets/metadata-dialog-CZDWNVCD.b78ed72bc090.js +1 -0
  170. codex/static_root/assets/metadata-dialog-CZDWNVCD.b78ed72bc090.js.br +0 -0
  171. codex/static_root/assets/metadata-dialog-CZDWNVCD.b78ed72bc090.js.gz +0 -0
  172. codex/static_root/assets/metadata-dialog-CZDWNVCD.js +1 -0
  173. codex/static_root/assets/metadata-dialog-CZDWNVCD.js.br +0 -0
  174. codex/static_root/assets/metadata-dialog-CZDWNVCD.js.gz +0 -0
  175. codex/static_root/assets/{metadata-dialog-DIhQctD5.67830cc94cf8.css → metadata-dialog-QTkQOBoB.2e6935edafee.css} +1 -1
  176. codex/static_root/assets/metadata-dialog-QTkQOBoB.2e6935edafee.css.br +0 -0
  177. codex/static_root/assets/metadata-dialog-QTkQOBoB.2e6935edafee.css.gz +0 -0
  178. codex/static_root/assets/{metadata-dialog-DIhQctD5.css → metadata-dialog-QTkQOBoB.css} +1 -1
  179. codex/static_root/assets/metadata-dialog-QTkQOBoB.css.br +0 -0
  180. codex/static_root/assets/metadata-dialog-QTkQOBoB.css.gz +0 -0
  181. codex/static_root/assets/{pdf-doc-CEOcuQZb.260e6671eb89.js → pdf-doc-C_LEA8HV.6bd1dba60a0b.js} +1 -1
  182. codex/static_root/assets/pdf-doc-C_LEA8HV.6bd1dba60a0b.js.br +0 -0
  183. codex/static_root/assets/pdf-doc-C_LEA8HV.6bd1dba60a0b.js.gz +0 -0
  184. codex/static_root/assets/{pdf-doc-CEOcuQZb.js → pdf-doc-C_LEA8HV.js} +1 -1
  185. codex/static_root/assets/pdf-doc-C_LEA8HV.js.br +0 -0
  186. codex/static_root/assets/pdf-doc-C_LEA8HV.js.gz +0 -0
  187. codex/static_root/assets/{reader-DRsYPz-3.b8ee57f2aefc.js → reader-DXk46jdF.0a2b0809bd02.js} +2 -2
  188. codex/static_root/assets/reader-DXk46jdF.0a2b0809bd02.js.br +0 -0
  189. codex/static_root/assets/reader-DXk46jdF.0a2b0809bd02.js.gz +0 -0
  190. codex/static_root/assets/{reader-DRsYPz-3.js → reader-DXk46jdF.js} +2 -2
  191. codex/static_root/assets/reader-DXk46jdF.js.br +0 -0
  192. codex/static_root/assets/reader-DXk46jdF.js.gz +0 -0
  193. codex/static_root/assets/{stats-tab-QTG23RuT.654f85e0b21d.js → stats-tab-Dy0YEoJ4.f24c8ddba0d3.js} +1 -1
  194. codex/static_root/assets/stats-tab-Dy0YEoJ4.f24c8ddba0d3.js.br +0 -0
  195. codex/static_root/assets/stats-tab-Dy0YEoJ4.f24c8ddba0d3.js.gz +0 -0
  196. codex/static_root/assets/{stats-tab-QTG23RuT.js → stats-tab-Dy0YEoJ4.js} +1 -1
  197. codex/static_root/assets/stats-tab-Dy0YEoJ4.js.br +0 -0
  198. codex/static_root/assets/stats-tab-Dy0YEoJ4.js.gz +0 -0
  199. codex/static_root/assets/{task-tab-Kff6fz1t.28380a665ed7.js → task-tab-Bv3B4rCC.1546850899dc.js} +1 -1
  200. codex/static_root/assets/task-tab-Bv3B4rCC.1546850899dc.js.br +0 -0
  201. codex/static_root/assets/task-tab-Bv3B4rCC.1546850899dc.js.gz +0 -0
  202. codex/static_root/assets/{task-tab-Kff6fz1t.js → task-tab-Bv3B4rCC.js} +1 -1
  203. codex/static_root/assets/task-tab-Bv3B4rCC.js.br +0 -0
  204. codex/static_root/assets/task-tab-Bv3B4rCC.js.gz +0 -0
  205. codex/static_root/assets/{user-tab-OAmZ6CQl.eed3361aefb7.js → user-tab-CSF2DZe5.8e65aaed43b2.js} +1 -1
  206. codex/static_root/assets/user-tab-CSF2DZe5.8e65aaed43b2.js.br +0 -0
  207. codex/static_root/assets/user-tab-CSF2DZe5.8e65aaed43b2.js.gz +0 -0
  208. codex/static_root/assets/{user-tab-OAmZ6CQl.js → user-tab-CSF2DZe5.js} +1 -1
  209. codex/static_root/assets/user-tab-CSF2DZe5.js.br +0 -0
  210. codex/static_root/assets/user-tab-CSF2DZe5.js.gz +0 -0
  211. codex/static_root/js/choices.fedcbd1ec085.json +1 -0
  212. codex/static_root/js/choices.fedcbd1ec085.json.br +0 -0
  213. codex/static_root/js/choices.fedcbd1ec085.json.gz +0 -0
  214. codex/static_root/js/choices.json +1 -1
  215. codex/static_root/js/choices.json.br +0 -0
  216. codex/static_root/js/choices.json.gz +0 -0
  217. codex/static_root/{manifest.13219ea92507.json → manifest.24ec466b9bcf.json} +212 -213
  218. codex/static_root/manifest.24ec466b9bcf.json.br +0 -0
  219. codex/static_root/manifest.24ec466b9bcf.json.gz +0 -0
  220. codex/static_root/manifest.json +212 -213
  221. codex/static_root/manifest.json.br +0 -0
  222. codex/static_root/manifest.json.gz +0 -0
  223. codex/static_root/staticfiles.json +1 -1
  224. codex/views/browser/base.py +8 -10
  225. codex/views/browser/browser.py +17 -23
  226. codex/views/browser/browser_annotations.py +7 -19
  227. codex/views/browser/choices.py +5 -3
  228. codex/views/browser/filters/search.py +22 -114
  229. codex/views/browser/metadata.py +6 -4
  230. codex/views/error.py +0 -1
  231. codex/views/session.py +0 -1
  232. {codex-1.5.13a0.dist-info → codex-1.5.13a2.dist-info}/METADATA +1 -2
  233. {codex-1.5.13a0.dist-info → codex-1.5.13a2.dist-info}/RECORD +236 -236
  234. codex/static_root/assets/VCheckbox-BMRDCYNv.7f791d7f065f.js.br +0 -0
  235. codex/static_root/assets/VCheckbox-BMRDCYNv.7f791d7f065f.js.gz +0 -0
  236. codex/static_root/assets/VCheckbox-BMRDCYNv.js.br +0 -0
  237. codex/static_root/assets/VCheckbox-BMRDCYNv.js.gz +0 -0
  238. codex/static_root/assets/VCheckboxBtn-Dqp1u3GT.e80f145994b6.js.br +0 -0
  239. codex/static_root/assets/VCheckboxBtn-Dqp1u3GT.e80f145994b6.js.gz +0 -0
  240. codex/static_root/assets/VCheckboxBtn-Dqp1u3GT.js.br +0 -0
  241. codex/static_root/assets/VCheckboxBtn-Dqp1u3GT.js.gz +0 -0
  242. codex/static_root/assets/VCombobox-DT52mZm3.309c77be4a55.js.br +0 -0
  243. codex/static_root/assets/VCombobox-DT52mZm3.309c77be4a55.js.gz +0 -0
  244. codex/static_root/assets/VCombobox-DT52mZm3.js.br +0 -0
  245. codex/static_root/assets/VCombobox-DT52mZm3.js.gz +0 -0
  246. codex/static_root/assets/VDataTableVirtual-DhhCmPtf.0735a1ab4c2f.js.br +0 -0
  247. codex/static_root/assets/VDataTableVirtual-DhhCmPtf.0735a1ab4c2f.js.gz +0 -0
  248. codex/static_root/assets/VDataTableVirtual-DhhCmPtf.js.br +0 -0
  249. codex/static_root/assets/VDataTableVirtual-DhhCmPtf.js.gz +0 -0
  250. codex/static_root/assets/VExpansionPanel-C593uXqT.d3bdc6a21208.js.br +0 -0
  251. codex/static_root/assets/VExpansionPanel-C593uXqT.d3bdc6a21208.js.gz +0 -0
  252. codex/static_root/assets/VExpansionPanel-C593uXqT.js.br +0 -0
  253. codex/static_root/assets/VExpansionPanel-C593uXqT.js.gz +0 -0
  254. codex/static_root/assets/VMain-DmQvRj_k.1e0480bed9a6.js.br +0 -0
  255. codex/static_root/assets/VMain-DmQvRj_k.1e0480bed9a6.js.gz +0 -0
  256. codex/static_root/assets/VMain-DmQvRj_k.js.br +0 -0
  257. codex/static_root/assets/VMain-DmQvRj_k.js.gz +0 -0
  258. codex/static_root/assets/VRadioGroup-Bi16yPEE.69086b77f9b1.js.br +0 -0
  259. codex/static_root/assets/VRadioGroup-Bi16yPEE.69086b77f9b1.js.gz +0 -0
  260. codex/static_root/assets/VRadioGroup-Bi16yPEE.js.br +0 -0
  261. codex/static_root/assets/VRadioGroup-Bi16yPEE.js.gz +0 -0
  262. codex/static_root/assets/VSelect-BdaijxdJ.b969ab260593.js.br +0 -0
  263. codex/static_root/assets/VSelect-BdaijxdJ.b969ab260593.js.gz +0 -0
  264. codex/static_root/assets/VSelect-BdaijxdJ.js.br +0 -0
  265. codex/static_root/assets/VSelect-BdaijxdJ.js.gz +0 -0
  266. codex/static_root/assets/VSelectionControl-CuM4okF6.0f246e35e86f.js.br +0 -0
  267. codex/static_root/assets/VSelectionControl-CuM4okF6.0f246e35e86f.js.gz +0 -0
  268. codex/static_root/assets/VSelectionControl-CuM4okF6.js.br +0 -0
  269. codex/static_root/assets/VSelectionControl-CuM4okF6.js.gz +0 -0
  270. codex/static_root/assets/VSlideGroup-ztBraz6g.02a0bc55b207.js.br +0 -0
  271. codex/static_root/assets/VSlideGroup-ztBraz6g.02a0bc55b207.js.gz +0 -0
  272. codex/static_root/assets/VSlideGroup-ztBraz6g.js.br +0 -0
  273. codex/static_root/assets/VSlideGroup-ztBraz6g.js.gz +0 -0
  274. codex/static_root/assets/VTable-CGuSv-Tv.eddaf5526d93.js.br +0 -0
  275. codex/static_root/assets/VTable-CGuSv-Tv.eddaf5526d93.js.gz +0 -0
  276. codex/static_root/assets/VTable-CGuSv-Tv.js.br +0 -0
  277. codex/static_root/assets/VTable-CGuSv-Tv.js.gz +0 -0
  278. codex/static_root/assets/VToolbar-CAUhD2BO.279f0b52347a.js.br +0 -0
  279. codex/static_root/assets/VToolbar-CAUhD2BO.279f0b52347a.js.gz +0 -0
  280. codex/static_root/assets/VToolbar-CAUhD2BO.js.br +0 -0
  281. codex/static_root/assets/VToolbar-CAUhD2BO.js.gz +0 -0
  282. codex/static_root/assets/VWindowItem-YvmNwCNb.20a7e3b303de.js.br +0 -0
  283. codex/static_root/assets/VWindowItem-YvmNwCNb.20a7e3b303de.js.gz +0 -0
  284. codex/static_root/assets/VWindowItem-YvmNwCNb.js.br +0 -0
  285. codex/static_root/assets/VWindowItem-YvmNwCNb.js.gz +0 -0
  286. codex/static_root/assets/admin-Ch9WezG1.bdace86b7c25.js.br +0 -0
  287. codex/static_root/assets/admin-Ch9WezG1.bdace86b7c25.js.gz +0 -0
  288. codex/static_root/assets/admin-Ch9WezG1.js.br +0 -0
  289. codex/static_root/assets/admin-Ch9WezG1.js.gz +0 -0
  290. codex/static_root/assets/admin-drawer-panel-B4VvGE4s.2265b9de60ab.js.br +0 -0
  291. codex/static_root/assets/admin-drawer-panel-B4VvGE4s.js.br +0 -0
  292. codex/static_root/assets/browser-BTel3sYS.8e1515bc039a.js +0 -1
  293. codex/static_root/assets/browser-BTel3sYS.8e1515bc039a.js.br +0 -0
  294. codex/static_root/assets/browser-BTel3sYS.8e1515bc039a.js.gz +0 -0
  295. codex/static_root/assets/browser-BTel3sYS.js +0 -1
  296. codex/static_root/assets/browser-BTel3sYS.js.br +0 -0
  297. codex/static_root/assets/browser-BTel3sYS.js.gz +0 -0
  298. codex/static_root/assets/browser-CVvV08AM.7667051b18fa.css.br +0 -0
  299. codex/static_root/assets/browser-CVvV08AM.7667051b18fa.css.gz +0 -0
  300. codex/static_root/assets/browser-CVvV08AM.css.br +0 -0
  301. codex/static_root/assets/browser-CVvV08AM.css.gz +0 -0
  302. codex/static_root/assets/change-password-dialog-Dq6GjT1T.01b56b4b3e87.js.br +0 -0
  303. codex/static_root/assets/change-password-dialog-Dq6GjT1T.01b56b4b3e87.js.gz +0 -0
  304. codex/static_root/assets/change-password-dialog-Dq6GjT1T.js.br +0 -0
  305. codex/static_root/assets/change-password-dialog-Dq6GjT1T.js.gz +0 -0
  306. codex/static_root/assets/confirm-dialog-D-Fx-51m.54b7d1059106.js.br +0 -0
  307. codex/static_root/assets/confirm-dialog-D-Fx-51m.54b7d1059106.js.gz +0 -0
  308. codex/static_root/assets/confirm-dialog-D-Fx-51m.js.br +0 -0
  309. codex/static_root/assets/confirm-dialog-D-Fx-51m.js.gz +0 -0
  310. codex/static_root/assets/confirm-footer-Yn7T9Tns.75a17cd86ca9.js.br +0 -0
  311. codex/static_root/assets/confirm-footer-Yn7T9Tns.75a17cd86ca9.js.gz +0 -0
  312. codex/static_root/assets/confirm-footer-Yn7T9Tns.js.br +0 -0
  313. codex/static_root/assets/confirm-footer-Yn7T9Tns.js.gz +0 -0
  314. codex/static_root/assets/datetime-column-DCeBthsr.22ed49a999cc.js.br +0 -0
  315. codex/static_root/assets/datetime-column-DCeBthsr.22ed49a999cc.js.gz +0 -0
  316. codex/static_root/assets/datetime-column-DCeBthsr.js.br +0 -0
  317. codex/static_root/assets/datetime-column-DCeBthsr.js.gz +0 -0
  318. codex/static_root/assets/filter-Dw0fjwZi.4d5f085435ab.js.br +0 -0
  319. codex/static_root/assets/filter-Dw0fjwZi.4d5f085435ab.js.gz +0 -0
  320. codex/static_root/assets/filter-Dw0fjwZi.js.br +0 -0
  321. codex/static_root/assets/filter-Dw0fjwZi.js.gz +0 -0
  322. codex/static_root/assets/flag-tab-D5RcLFbQ.1073708ea164.js.br +0 -0
  323. codex/static_root/assets/flag-tab-D5RcLFbQ.1073708ea164.js.gz +0 -0
  324. codex/static_root/assets/flag-tab-D5RcLFbQ.js.br +0 -0
  325. codex/static_root/assets/flag-tab-D5RcLFbQ.js.gz +0 -0
  326. codex/static_root/assets/group-tab-BilDDNz5.cba5ca15d7cf.js.br +0 -0
  327. codex/static_root/assets/group-tab-BilDDNz5.cba5ca15d7cf.js.gz +0 -0
  328. codex/static_root/assets/group-tab-BilDDNz5.js.br +0 -0
  329. codex/static_root/assets/group-tab-BilDDNz5.js.gz +0 -0
  330. codex/static_root/assets/http-error-DHmC7qgT.bde1d32b55df.js.br +0 -0
  331. codex/static_root/assets/http-error-DHmC7qgT.bde1d32b55df.js.gz +0 -0
  332. codex/static_root/assets/http-error-DHmC7qgT.js.br +0 -0
  333. codex/static_root/assets/http-error-DHmC7qgT.js.gz +0 -0
  334. codex/static_root/assets/library-tab-dbcbv0--.efa2d1d95b77.js.br +0 -0
  335. codex/static_root/assets/library-tab-dbcbv0--.efa2d1d95b77.js.gz +0 -0
  336. codex/static_root/assets/library-tab-dbcbv0--.js.br +0 -0
  337. codex/static_root/assets/library-tab-dbcbv0--.js.gz +0 -0
  338. codex/static_root/assets/main-CCY5Ix0K.b067e1d16cf5.js.br +0 -0
  339. codex/static_root/assets/main-CCY5Ix0K.b067e1d16cf5.js.gz +0 -0
  340. codex/static_root/assets/main-CCY5Ix0K.js.br +0 -0
  341. codex/static_root/assets/main-CCY5Ix0K.js.gz +0 -0
  342. codex/static_root/assets/metadata-dialog-DIhQctD5.67830cc94cf8.css.br +0 -0
  343. codex/static_root/assets/metadata-dialog-DIhQctD5.67830cc94cf8.css.gz +0 -0
  344. codex/static_root/assets/metadata-dialog-DIhQctD5.css.br +0 -0
  345. codex/static_root/assets/metadata-dialog-DIhQctD5.css.gz +0 -0
  346. codex/static_root/assets/metadata-dialog-PkTw4uLp.ce5ee2377f27.js +0 -1
  347. codex/static_root/assets/metadata-dialog-PkTw4uLp.ce5ee2377f27.js.br +0 -0
  348. codex/static_root/assets/metadata-dialog-PkTw4uLp.ce5ee2377f27.js.gz +0 -0
  349. codex/static_root/assets/metadata-dialog-PkTw4uLp.js +0 -1
  350. codex/static_root/assets/metadata-dialog-PkTw4uLp.js.br +0 -0
  351. codex/static_root/assets/metadata-dialog-PkTw4uLp.js.gz +0 -0
  352. codex/static_root/assets/pdf-doc-CEOcuQZb.260e6671eb89.js.br +0 -0
  353. codex/static_root/assets/pdf-doc-CEOcuQZb.260e6671eb89.js.gz +0 -0
  354. codex/static_root/assets/pdf-doc-CEOcuQZb.js.br +0 -0
  355. codex/static_root/assets/pdf-doc-CEOcuQZb.js.gz +0 -0
  356. codex/static_root/assets/reader-DRsYPz-3.b8ee57f2aefc.js.br +0 -0
  357. codex/static_root/assets/reader-DRsYPz-3.b8ee57f2aefc.js.gz +0 -0
  358. codex/static_root/assets/reader-DRsYPz-3.js.br +0 -0
  359. codex/static_root/assets/reader-DRsYPz-3.js.gz +0 -0
  360. codex/static_root/assets/stats-tab-QTG23RuT.654f85e0b21d.js.br +0 -0
  361. codex/static_root/assets/stats-tab-QTG23RuT.654f85e0b21d.js.gz +0 -0
  362. codex/static_root/assets/stats-tab-QTG23RuT.js.br +0 -0
  363. codex/static_root/assets/stats-tab-QTG23RuT.js.gz +0 -0
  364. codex/static_root/assets/task-tab-Kff6fz1t.28380a665ed7.js.br +0 -0
  365. codex/static_root/assets/task-tab-Kff6fz1t.28380a665ed7.js.gz +0 -0
  366. codex/static_root/assets/task-tab-Kff6fz1t.js.br +0 -0
  367. codex/static_root/assets/task-tab-Kff6fz1t.js.gz +0 -0
  368. codex/static_root/assets/user-tab-OAmZ6CQl.eed3361aefb7.js.br +0 -0
  369. codex/static_root/assets/user-tab-OAmZ6CQl.eed3361aefb7.js.gz +0 -0
  370. codex/static_root/assets/user-tab-OAmZ6CQl.js.br +0 -0
  371. codex/static_root/assets/user-tab-OAmZ6CQl.js.gz +0 -0
  372. codex/static_root/js/choices.a4dcff295a04.json +0 -1
  373. codex/static_root/js/choices.a4dcff295a04.json.br +0 -0
  374. codex/static_root/js/choices.a4dcff295a04.json.gz +0 -0
  375. codex/static_root/manifest.13219ea92507.json.br +0 -0
  376. codex/static_root/manifest.13219ea92507.json.gz +0 -0
  377. {codex-1.5.13a0.dist-info → codex-1.5.13a2.dist-info}/LICENSE +0 -0
  378. {codex-1.5.13a0.dist-info → codex-1.5.13a2.dist-info}/WHEEL +0 -0
  379. {codex-1.5.13a0.dist-info → codex-1.5.13a2.dist-info}/entry_points.txt +0 -0
@@ -1 +0,0 @@
1
- import{f as U,V as Ce,a as ee,S as Be,g as ke,b as Te,_ as te}from"./VToolbar-CAUhD2BO.js";import{_ as oe,a as se,b as re,N as Ve,t as Me,V as H,p as $e,c as Ie,d as ne,g as Re,P as ie}from"./metadata-dialog-PkTw4uLp.js";import{aE as ae,M as S,_ as w,R as r,O as h,P as c,L as l,aa as i,ae as f,ab as L,ad as v,N as B,aB as y,ax as V,aF as xe,aG as Ne,ak as G,m as I,ay as _,aD as s,aH as O,aI as D,aJ as Fe,az as R,aK as Pe,am as x,aL as Le,aM as Oe,a9 as A,af as F,ag as k,aN as De,al as M,aO as He,aP as Ue,aQ as E,aR as Ge,aS as Ae,Q as C,aT as P,aU as Ee,aV as qe,aW as le,aX as Y,aY as ze,aZ as je,k as q,a_ as ue,a$ as de,b0 as Ye,b1 as We,b2 as Qe,b3 as Ke,b4 as W,b5 as Xe,b6 as Je,b7 as Ze,b8 as Q,b9 as K,x as et,E as tt,ba as ot,aq as st,bb as rt,G as nt,bc as it,bd as at,ar as lt,K as ut,be as ce,bf as dt,bg as ct,bh as mt,bi as ht,aC as pt}from"./admin-drawer-panel-B4VvGE4s.js";import{u as p,C as _t}from"./main-CCY5Ix0K.js";import{V as ft,a as gt}from"./VSelect-BdaijxdJ.js";import{c as bt}from"./to-case-kUm8NPpW.js";import{a as yt}from"./VSlideGroup-ztBraz6g.js";import{V as wt}from"./VCombobox-DT52mZm3.js";import{V as St}from"./VTable-CGuSv-Tv.js";import{V as vt}from"./confirm-footer-Yn7T9Tns.js";import{V as X}from"./VCheckbox-BMRDCYNv.js";import{V as Ct,a as Bt}from"./VRadioGroup-Bi16yPEE.js";import{_ as me}from"./confirm-dialog-D-Fx-51m.js";import{V as he}from"./VMain-DmQvRj_k.js";import"./index-DUjeNg4x.js";import"./change-password-dialog-Dq6GjT1T.js";import"./VSelectionControl-CuM4okF6.js";import"./VCheckboxBtn-Dqp1u3GT.js";import"./filter-Dw0fjwZi.js";const kt={name:"BrowserNavButton",components:{PaginationNavButton:oe},props:{back:{type:Boolean,required:!0}},data(){return{mdiChevronLeft:ae,routeParams:this.$route.params,page:+this.$route.params.page}},computed:{...S(p,{numPages:e=>e.page.numPages}),increment(){return this.back?-1:1},toPage(){return this.page+this.increment},title(){return"Page "+this.toPage},toRoute(){const e=this.toPage;return{params:{...this.routeParams,page:e}}},disabled(){return this.back&&this.page<=1||!this.back&&this.page>=this.numPages}},watch:{$route(e){this.params=e.params,this.page=+e.params.page}}};function Tt(e,t,n,g,a,o){const d=oe;return r(),h(d,{key:o.toRoute,disabled:o.disabled,title:o.title,to:o.toRoute},{default:c(()=>[l(v,{class:L({flipHoriz:!n.back})},{default:c(()=>[i(f(a.mdiChevronLeft),1)]),_:1},8,["class"])]),_:1},8,["disabled","title","to"])}const pe=w(kt,[["render",Tt],["__scopeId","data-v-2c195aca"]]),Vt={name:"BrowserNavToolbar",components:{BrowserNavButton:pe,PaginationSlider:se,PaginationToolbar:re},computed:{...S(p,{numPages:e=>e.page.numPages})},methods:{...B(p,["routeToPage"]),onUpdate(e){this.routeToPage(e)}}};function Mt(e,t,n,g,a,o){const d=pe,u=se,b=re;return e.numPages>1?(r(),h(b,{key:0},{default:c(()=>[l(d,{back:!0}),l(u,{"model-value":+e.$route.params.page,min:1,max:e.numPages,step:1,"onUpdate:modelValue":t[0]||(t[0]=$=>e.routeToPage($))},null,8,["model-value","max"]),l(d,{back:!1})]),_:1})):y("",!0)}const _e=w(Vt,[["render",Mt]]),$t=new Set(["a","f"]),It={name:"BrowserUpButton",props:{top:{type:Boolean,default:!1}},computed:{...V(p,["parentModelGroup"]),...S(p,{upRoute:e=>e.page.routes.up,title(e){const t=this.top?e.settings.topGroup:this.parentModelGroup;return`Up to ${e.choices.static.groupNames[t]||"All"}`}}),show(){return this.upRoute&&"group"in this.upRoute},icon(){return this.top?xe:Ne},to(){let e;if(this.top){let t=this.upRoute.group;$t.has(t)||(t="r"),e={group:t,pk:0,page:1}}else e=this.upRoute;return{params:e}}}};function Rt(e,t,n,g,a,o){return o.show?(r(),h(G,{key:0,icon:"",size:"x-large",title:e.title,to:o.to,variant:"plain"},{default:c(()=>[l(v,null,{default:c(()=>[i(f(o.icon),1)]),_:1})]),_:1},8,["title","to"])):y("",!0)}const fe=w(It,[["render",Rt]]),xt={name:"BrowserHeader",components:{BrowserUpButton:fe},head(){return{meta:[{hid:"description",name:"description",content:["browse comics",this.longBrowserTitlePrefix,this.longBrowseTitleMain,this.longBrowseTitleSuffix].filter(Boolean).join(" ")}]}},computed:{...S(p,{groupNames:e=>e.choices.static.groupNames,browserTitle:e=>e.page.browserTitle,modelGroup:e=>e.page.modelGroup}),...V(I,["isCodexViewable","isUserAdmin"]),longBrowserTitlePrefix:function(){return this.$route.params.group==="f"?this.browserTitle.parentName:""},longBrowseTitleMain:function(){let e;if(Number(this.$route.params.pk)===0)e="All";else{let t=[];const{parentName:n,groupName:g,groupCount:a}=this.browserTitle;n&&t.push(n);const o=this.$route.params.group,d=o==="v"?U(g):g;if(d&&t.push(d),a){const b=`of ${a}`;t.push(b)}const u=o==="f"?"/":" ";e=t.join(u)}return e},longBrowseTitleSuffix:function(){return this.$route.params.group==="f"?"":this.groupNames[this.modelGroup]}}},ge=e=>(O("data-v-3d5e18c3"),e=e(),D(),e),Nt={key:0,id:"titleToolbarPrefix"},Ft=ge(()=>s("br",null,null,-1)),Pt={id:"titleToolbarMain"},Lt={key:1,id:"titleToolbarSuffix"},Ot=ge(()=>s("br",null,null,-1));function Dt(e,t,n,g,a,o){const d=fe;return e.isCodexViewable?(r(),h(ee,{key:0,id:"titleToolbar",elevation:"8"},{default:c(()=>[l(d),l(Ce,{class:"codexToolbarTitle"},{default:c(()=>[o.longBrowserTitlePrefix?(r(),_("span",Nt,[i(f(o.longBrowserTitlePrefix)+" ",1),Ft])):y("",!0),s("span",Pt,f(o.longBrowseTitleMain),1),o.longBrowseTitleSuffix?(r(),_("span",Lt,[Ot,i(" "+f(o.longBrowseTitleSuffix),1)])):y("",!0)]),_:1}),l(d,{top:""})]),_:1})):y("",!0)}const be=w(xt,[["render",Dt],["__scopeId","data-v-3d5e18c3"]]),Ht={name:"ToolbarSelect",props:{selectLabel:{type:String,default:""},maxSelectLen:{type:Number,default:0},mobileLenAdj:{type:Number,default:0},variant:{type:String,default:"plain"}},computed:{style(){const e=this.$vuetify.display.smAndDown?this.mobileLenAdj:0,n=this.maxSelectLen+e+"em";return`width: ${n}; min-width: ${n}; max-width: ${n}`}}};function Ut(e,t,n,g,a,o){return r(),h(ft,x(e.$attrs,{label:n.selectLabel,"aria-label":n.selectLabel,class:"toolbarSelect",density:"compact","full-width":"","menu-props":{maxHeight:void 0},"hide-details":"auto",style:o.style,variant:n.variant}),Fe({_:2},[R(e.$slots,(d,u)=>({name:u,fn:c(b=>[Pe(e.$slots,u,x({props:d},b),void 0,!0)])}))]),1040,["label","aria-label","style","variant"])}const T=w(Ht,[["render",Ut],["__scopeId","data-v-ea769669"]]),Gt=_t.browser.vuetifyNullCode,At={name:"BrowserFilterSubMenu",props:{name:{type:String,required:!0}},emits:["selected"],data(){return{mdiChevronLeft:ae,mdiChevronRight:Le,mdiChevronRightCircle:Oe,query:"",nullCode:Gt}},computed:{...S(p,{choices(e){return e.choices.dynamic[this.name]},readingDirectionTitles:e=>e.choices.static.readingDirection,identifierTypeTitles:e=>e.choices.static.identifierType,filter(e){return e.settings.filters[this.name]}}),...A(p,["filterMode"]),hasNone(){for(const e of this.choices)if(Ve.has(e.pk))return!0;return!1},vuetifyItems(){return Me(this.choices,this.query)},title:function(){return bt(this.name)},lowerTitle:function(){return this.title.toLowerCase()}},methods:{...B(p,["identifierTypeTitle","loadFilterChoices"]),setUIFilterMode(e){this.filterMode=e,this.query="",e!=="base"&&typeof this.choices!="object"&&this.loadFilterChoices(e)},selected(e){const t={filters:{[this.name]:e}};this.$emit("selected",t)},itemTitle:function(e){return this.name==="readingDirection"?this.readingDirectionTitles[e.value]:this.name==="identifierType"?this.identifierTypeTitle(e.title):e.title}}},Et={key:0},qt={class:"filterHeader"};function zt(e,t,n,g,a,o){return r(),_("div",null,[l(De,{"hide-on-leave":""},{default:c(()=>[e.filterMode==="base"?(r(),h(k,{key:0,onClick:t[0]||(t[0]=d=>o.setUIFilterMode(n.name))},{default:c(()=>[l(F,{class:"filterMenu"},{default:c(()=>[i(f(o.title)+" ",1),e.filter&&e.filter.length>0?(r(),h(v,{key:0,class:"nameChevron"},{default:c(()=>[i(f(a.mdiChevronRightCircle),1)]),_:1})):(r(),h(v,{key:1,class:"nameChevron"},{default:c(()=>[i(f(a.mdiChevronRight),1)]),_:1}))]),_:1})]),_:1})):y("",!0)]),_:1}),l(Ue,{"hide-on-leave":""},{default:c(()=>[e.filterMode===n.name?(r(),_("div",Et,[s("header",qt,[l(k,{onClick:t[1]||(t[1]=d=>o.setUIFilterMode("base"))},{default:c(()=>[l(F,{class:"filterTitle"},{default:c(()=>[l(v,null,{default:c(()=>[i(f(a.mdiChevronLeft),1)]),_:1}),i(f(o.lowerTitle),1)]),_:1})]),_:1}),typeof e.choices=="object"?(r(),h(yt,{key:0,modelValue:a.query,"onUpdate:modelValue":t[2]||(t[2]=d=>a.query=d),placeholder:"Filter","full-width":"",density:"compact",filled:"",rounded:"","hide-details":"auto",onFocus:t[3]||(t[3]=d=>e.filterMode=n.name)},null,8,["modelValue"])):(r(),h(E,{key:1,class:"filterValuesProgress",rounded:"",indeterminate:""}))]),typeof e.choices=="object"?(r(),h(He,{key:0,"model-value":e.filter,class:"filterGroup overflow-y-auto",density:"compact",multiple:"",items:o.vuetifyItems,"onUpdate:selected":o.selected},{default:c(()=>[o.hasNone?(r(),h(k,{key:-1,title:"None",value:-1,class:"noneItem"})):y("",!0),(r(!0),_(M,null,R(o.vuetifyItems,d=>(r(),h(k,{key:d.value,title:o.itemTitle(d),value:d.value,class:L({noneItem:+d.value==a.nullCode})},null,8,["title","value","class"]))),128))]),_:1},8,["model-value","items","onUpdate:selected"])):y("",!0)])):y("",!0)]),_:1})])}const jt=w(At,[["render",zt],["__scopeId","data-v-c9df90cc"]]),Yt={name:"BrowserFilterBySelect",components:{BrowserFilterSubMenu:jt,ToolbarSelect:T},extends:T,data(){return{mdiFilterMultipleOutline:Ge,menu:!1}},computed:{...V(p,["filterByChoicesMaxLen","isDefaultBookmarkValueSelected"]),...S(p,{bookmarkChoices:e=>e.choices.static.bookmark,bookmarkFilter:e=>e.settings.filters.bookmark||e.choices.static.bookmark[0],filters:e=>e.settings.filters,isDynamicFiltersSelected:function(e){for(const[t,n]of Object.entries(e.settings.filters))if(t!=="bookmark"&&n&&n.length>0)return!0;return!1},isFiltersClearable:function(){return!this.isDefaultBookmarkValueSelected||this.isDynamicFiltersSelected},filterMenuClass:function(e){let t="filterMenu";return e.filterMode!=="base"&&(t+="Hidden"),t},dynamicChoiceNames:function(e){if(e.choices.dynamic===void 0)return;const t=[];for(const[n,g]of Object.entries(e.choices.dynamic))g&&t.push(n);return t}}),...A(p,["filterMode"]),filterInnerIcon:function(){return this.isFiltersClearable?Ae:""}},methods:{...B(p,["clearFilters","loadAvailableFilterChoices","setSettings"]),onUpdateModelValue(e){const t={filters:{bookmark:e}};this.onSubMenuSelected(t)},onSubMenuSelected(e){this.menu=!1,this.setSettings(e),this.filterMode="base"},onClear(){this.clearFilters()},onMenu(e){e&&this.dynamicChoiceNames===void 0&&this.loadAvailableFilterChoices()}}},Wt={key:1};function Qt(e,t,n,g,a,o){const d=C("BrowserFilterSubMenu"),u=T;return r(),h(u,{menu:a.menu,"onUpdate:menu":[t[0]||(t[0]=b=>a.menu=b),o.onMenu],class:"filterBySelect","select-label":"filter by",clearable:e.isFiltersClearable,items:e.bookmarkChoices,"menu-props":{contentClass:e.filterMenuClass,maxHeight:void 0},"model-value":e.bookmarkFilter,"max-select-len":e.filterByChoicesMaxLen+1.5,"mobile-len-adj":-1.5,variant:"solo","onClick:clear":o.onClear,"onUpdate:modelValue":o.onUpdateModelValue},{selection:c(({item:b})=>[i(f(b.title)+" ",1),e.isDynamicFiltersSelected?(r(),h(v,{key:0,class:"filterSuffix"},{default:c(()=>[i(f(a.mdiFilterMultipleOutline),1)]),_:1})):y("",!0)]),"append-item":c(()=>[l(P),e.dynamicChoiceNames===void 0?(r(),h(k,{key:0},{default:c(()=>[l(E,{indeterminate:"",rounded:""})]),_:1})):e.dynamicChoiceNames.length>0?(r(),_("div",Wt,[(r(!0),_(M,null,R(e.dynamicChoiceNames,b=>(r(),h(d,{key:b,name:b,onSelected:o.onSubMenuSelected},null,8,["name","onSelected"]))),128))])):(r(),h(k,{key:2,class:"noChoices"},{default:c(()=>[i(" No filters available ")]),_:1}))]),_:1},8,["menu","clearable","items","menu-props","model-value","max-select-len","onClick:clear","onUpdate:modelValue","onUpdate:menu"])}const Kt=w(Yt,[["render",Qt],["__scopeId","data-v-8cf1988f"]]),Xt={name:"BrowseOrderBySelect",components:{ToolbarSelect:T},extends:T,computed:{...V(p,["orderByChoices","orderByChoicesMaxLen"]),...S(p,{orderBySetting:e=>e.settings.orderBy}),reverseValues(){const e=new Set;for(const t of this.orderByChoices)t.reverse&&e.add(t.value);return e},orderBy:{get(){return this.orderBySetting},set(e){const t={orderBy:e,orderReverse:this.reverseValues.has(e)};this.setSettings(t)}}},methods:{...B(p,["setSettings"])}};function Jt(e,t,n,g,a,o){const d=T;return r(),h(d,x({modelValue:o.orderBy,"onUpdate:modelValue":t[0]||(t[0]=u=>o.orderBy=u),class:"orderBySelect","select-label":"order by",items:e.orderByChoices,"max-select-len":e.orderByChoicesMaxLen-3.5,"mobile-len-adj":-2},e.$attrs),null,16,["modelValue","items","max-select-len"])}const Zt=w(Xt,[["render",Jt]]),eo={name:"BrowseOrderReverseButton",computed:{...S(p,{orderReverseSetting:e=>e.settings.orderReverse,orderIcon:e=>e.settings.orderReverse?Ee:qe}),density(){return this.$vuetify.display.smAndDown?"compact":"default"},title(){return this.orderReverseSetting?"order descending":"order ascending"}},methods:{...B(p,["setSettings"]),toggleOrderReverse(){const e={orderReverse:!this.orderReverseSetting};this.setSettings(e)}}};function to(e,t,n,g,a,o){return r(),h(G,x({class:"orderReverseButton",density:o.density,height:"46",icon:"",variant:"text"},e.$attrs,{title:o.title,onClick:o.toggleOrderReverse}),{default:c(()=>[l(v,null,{default:c(()=>[i(f(e.orderIcon),1)]),_:1})]),_:1},16,["density","title","onClick"])}const oo=w(eo,[["render",to],["__scopeId","data-v-57eeaaec"]]),so=10,ro={name:"BrowserSearchCombobox",data(){return{mdiMagnify:le,menu:!1,query:"",items:[""]}},computed:{...S(p,{stateQ:e=>e.settings.q})},watch:{stateQ(e){this.query=e,this.addToMenu(e)}},methods:{...B(p,["setSettings"]),addToMenu(e){if(!e||this.items.includes(e))return;const t=this.items[0]===""?[]:this.items;t.unshift(e),this.items=t.slice(0,so)},doSearch(){this.menu=!1;const e=this.query?this.query.trim():"";this.setSettings({q:e}),this.addToMenu(e)}}};function no(e,t,n,g,a,o){return r(),h(wt,{ref:"searchbox",modelValue:a.query,"onUpdate:modelValue":t[0]||(t[0]=d=>a.query=d),menu:a.menu,"onUpdate:menu":t[1]||(t[1]=d=>a.menu=d),items:a.items,autofocus:"","aria-label":"search",clearable:"",density:"compact","full-width":"","hide-details":"auto","hide-selected":"","menu-props":{maxHeight:void 0},"no-filter":"","prepend-inner-icon":a.mdiMagnify,variant:"solo","onClick:clear":o.doSearch,"onClick:prependInner":o.doSearch,onKeydown:[Y(o.doSearch,["enter"]),t[2]||(t[2]=Y(d=>a.menu=!1,["esc"]))]},null,8,["modelValue","menu","items","prepend-inner-icon","onClick:clear","onClick:prependInner","onKeydown"])}const io=w(ro,[["render",no]]),ao={params:{group:"f",pk:0,page:1}},J=new Set(["a","f"]),lo={name:"BrowserTopGroupSelect",components:{ToolbarSelect:T},extends:T,data(){return{FOLDER_ROUTE:ao,DIVIDED_VALUES:J}},computed:{...S(p,{topGroupSetting:e=>e.settings.topGroup}),...V(p,["topGroupChoices","topGroupChoicesMaxLen"]),topGroup:{get(){return this.topGroupSetting},set(e){const n={params:{group:J.has(e)?e:"r",pk:0,page:1}},g={topGroup:e};this.$router.push(n).then(()=>this.setSettings(g)).catch(console.error)}}},methods:{...B(p,["setSettings"])}};function uo(e,t,n,g,a,o){const d=T;return r(),h(d,x(e.$attrs,{modelValue:o.topGroup,"onUpdate:modelValue":t[0]||(t[0]=u=>o.topGroup=u),class:"topGroupSelect","select-label":"top group",items:e.topGroupChoices,"max-select-len":e.topGroupChoicesMaxLen-2,"mobile-len-adj":-1}),{item:c(({item:u,props:b})=>[a.DIVIDED_VALUES.has(u.value)?(r(),h(P,{key:0})):y("",!0),l(k,x(b,{title:u.title,value:u.value}),null,16,["title","value"])]),_:1},16,["modelValue","items","max-select-len"])}const co=w(lo,[["render",uo],["__scopeId","data-v-d1f6fd76"]]),mo=ze("v-spacer","div","VSpacer"),ho={name:"BrowserTopToolbar",components:{BrowserFilterBySelect:Kt,BrowserTopGroupSelect:co,BrowserSearchCombobox:io,BrowserOrderBySelect:Zt,BrowserOrderReverseButton:oo,SettingsDrawerButton:Be},data(){return{mdiMagnify:le,mdiFamilyTree:je,browseMode:"filter"}},computed:{...V(I,["isCodexViewable"]),...A(q,["isSettingsDrawerOpen"])}};function po(e,t,n,g,a,o){const d=C("BrowserTopGroupSelect"),u=C("BrowserOrderBySelect"),b=C("BrowserOrderReverseButton"),$=C("SettingsDrawerButton"),N=C("BrowserFilterBySelect"),j=C("BrowserSearchCombobox");return r(),h(ee,{id:"browserToolbar",class:L(["toolbar",{emptyToolbar:!e.isCodexViewable}]),density:"compact","extension-height":"48px"},{extension:c(()=>[e.isCodexViewable?(r(),h(H,{key:0,id:"searchToolbarItems"},{default:c(()=>[l(N,{id:"filterSelect"}),l(j,{id:"searchField"})]),_:1})):y("",!0)]),default:c(()=>[e.isCodexViewable?(r(),h(H,{key:0,id:"browserToolbarLeftItems"},{default:c(()=>[l(d,{id:"topGroupSelect"}),l(u,{id:"orderBySelect"}),l(b,{id:"orderReverseButton"})]),_:1})):y("",!0),l(mo),l(H,null,{default:c(()=>[l($,{onClick:t[0]||(t[0]=_r=>e.isSettingsDrawerOpen=!0)})]),_:1})]),_:1},8,["class"])}const ye=w(ho,[["render",po],["__scopeId","data-v-939a4977"]]),_o=[["characters","CSV","category"],["community_rating","Decimal","communityrating"],["contributor","CSV","author, creator, credit, person, people"],["country","String"],["created_at","DateTime","created"],["critical_rating","Decimal","criticalrating"],["day","Integer"],["date","Date"],["decade","Integer"],["file_type","String","type"],["genres","CSV","genre"],["identifier","CSV","id, nss"],["identifier_type","CSV","id_type, nid"],["imprint","String"],["issue","String","(Combined issue_number and issue_suffix)"],["issue_number","Decimal","number"],["issue_suffix","String"],["language","String"],["location","CSV","location"],["maturity_rating","String"],["monochrome","String","blackandwhite"],["month","Integer"],["reading_direction","String","direction"],["name","String","title"],["notes","String"],["original_format","String","format, orginalformat"],["page_count","Integer","pages, pagecount"],["publisher","String"],["reading_direction","String","direction"],["review","String"],["scan_info","String","scan, scaninfo"],["series","String"],["series_groups","CSV","seriesgroups"],["size","Integer"],["stories","CSV","story"],["story_arcs","CSV","storyarcs"],["summary","String","comments, description"],["tags","CSV","tag"],["tagger","String"],["teams","CSV","team"],["updated_at","Date","updated"],["volume","String"],["web","String"],["year","Integer"]],fo={name:"SearchHelp",components:{CloseButton:ue},data(){return{mdiOpenInNew:de,mdiArchiveSearchOutline:Ye,dialog:!1,FIELD_ROWS:_o}}},m=e=>(O("data-v-c01a7fc6"),e=e(),D(),e),go={id:"searchHelp"},bo=m(()=>s("h1",null,"Search Syntax Help",-1)),yo={id:"fieldTableContainer"},wo=m(()=>s("h2",null,"Search Fields",-1)),So=m(()=>s("thead",null,[s("tr",null,[s("th",null,"Field"),s("th",null,"Type"),s("th",null,"Aliases")])],-1)),vo={class:"aliasCol"},Co={id:"textContainer"},Bo=m(()=>s("h2",null,"Whoosh Query Parser",-1)),ko={href:"https://whoosh.readthedocs.io/en/latest/querylang.html",target:"_blank"},To=m(()=>s("h2",null,"Operators",-1)),Vo=m(()=>s("code",null,"and",-1)),Mo=m(()=>s("code",null,"or",-1)),$o=m(()=>s("code",null,"not",-1)),Io=m(()=>s("code",null,"andnot",-1)),Ro=m(()=>s("code",null,"andmaybe",-1)),xo=m(()=>s("code",null,"require",-1)),No=m(()=>s("h2",null,"Searching Fields",-1)),Fo=m(()=>s("p",null,[i(" Like Codex's filter selector menu, but more powerful. You may search on individual comic metadata fields. using a search token like "),s("code",null,"field:value"),i(". ")],-1)),Po=m(()=>s("h3",null,"Dates and DateTimes",-1)),Lo={href:"https://whoosh.readthedocs.io/en/latest/dates.html#parsing-date-queries",target:"_blank"},Oo=m(()=>s("code",null,"YYYYMMDD",-1)),Do=m(()=>s("code",null,"YYYMMDDHHmmSS",-1)),Ho=m(()=>s("h3",null,"Single Quote complex field Queries",-1)),Uo=m(()=>s("p",null,[i(" Use "),s("em",null,"single"),i(" quotes to tell Codex that a complex or natural language phrase should be applied to a specific field ")],-1)),Go=m(()=>s("code",null," created:'this year' ",-1)),Ao=m(()=>s("h3",null,"Size Byte Multipliers",-1)),Eo=m(()=>s("p",null,[i(" The size field can make use of convenient byte multiplier suffixes like "),s("code",null,"kb"),i(" and "),s("code",null,"mb"),i(" as well as binary suffixes like "),s("code",null,"gib"),i(" and "),s("code",null,"tib"),i(". ")],-1)),qo=m(()=>s("h3",null,"Ranges of Fields",-1)),zo=m(()=>s("p",null,[i(" Whoosh uses brackets and the "),s("em",null,"uppercase"),i(" "),s("code",null,"TO"),i(" operator to delineate a range search. ")],-1)),jo=m(()=>s("code",null,"updated:[last sunday TO 10am]",-1)),Yo=m(()=>s("p",null," You may leave out the upper or lower bound or use >, <, >=, <= operators. ",-1)),Wo=m(()=>s("code",null,"size:<50mb",-1)),Qo=m(()=>s("h3",null,"Multi Value Fields",-1)),Ko=m(()=>s("p",null,[i(" Fields marked type "),s("code",null,"CSV"),i(" in the table to the left may contain comma separated values. This filters by all the supplied values. Multi Value tokens look like: "),s("code",null,"field:term1,term2,term3")],-1)),Xo=m(()=>s("h2",null,"Grouped Queries",-1)),Jo=m(()=>s("p",null,"Whoosh allows grouping of queries with parenthesis.",-1)),Zo=m(()=>s("h2",null,"Example Search",-1)),es=m(()=>s("p",null," This example search is more convoluted than most searches but uses many features for demonstration: ",-1)),ts=m(()=>s("code",null,' (Holmes and Tesla date:>=1999-1-2 size:[10mib TO 1gb] Gadzooks) or "Captain Nemo" -Quartermain ',-1)),os=m(()=>s("p",{style:{"margin-top":"1em"}},' Search for comics that contain Holmes and Tesla published after the second day of 1999 that are between 10 Mebibytes and 10 Gigabytes that also contain the word "Gadzooks" but also all comics with the the phrase "Captain Nemo" but no comics will contain the word "Quartermain". ',-1)),ss=m(()=>s("h2",null,"Group and Sorting Behavior",-1)),rs=m(()=>s("p",null," If the search field is empty and then you supply a search query for the first time, Codex navigates you to the to All Issues view and your sets your Sorted By selection to Search Score. If you prefer a different view you may change the group and sort selections after your you make your first search. ",-1)),ns=m(()=>s("h2",null,"Filter Behavior",-1)),is=m(()=>s("p",null,[i(" Codex applies "),s("em",null,"both"),i(" the Filter selection menu filters "),s("em",null,"and"),i(" the search query field filters to the search. Be sure to clear the filter selector or the search field if you prefer to apply only one of them. ")],-1)),as=m(()=>s("h2",null,"Faster Browsing and Searching",-1)),ls=m(()=>s("p",null,' Browsing large collections using the group tree and filter dropdown is relatively fast. Searching with the search bar will always be slower. To aid search speed there is a setting for limiting search results which can help with large collections. To see all results, choose Search Result Limit: "Unlimited". ',-1));function us(e,t,n,g,a,o){const d=ue;return r(),h(vt,{modelValue:a.dialog,"onUpdate:modelValue":t[2]||(t[2]=u=>a.dialog=u),"content-class":"browserSearchHelp",fullscreen:"",scrim:!1,transition:"dialog-bottom-transition"},{activator:c(({props:u})=>[l(k,We(Qe(u)),{default:c(()=>[l(F,null,{default:c(()=>[l(v,null,{default:c(()=>[i(f(a.mdiArchiveSearchOutline),1)]),_:1}),i("Search Help ")]),_:1})]),_:2},1040)]),default:c(()=>[s("div",go,[l(d,{class:"closeButton",title:"Close Help (esc)",size:"x-large",onClick:t[0]||(t[0]=u=>a.dialog=!1)}),bo,s("div",yo,[wo,l(St,{id:"fieldTable",class:"highlight-table"},{default:c(()=>[So,s("tbody",null,[(r(!0),_(M,null,R(a.FIELD_ROWS,u=>(r(),_("tr",{key:u[0]},[s("td",null,f(u[0]),1),s("td",null,f(u[1]),1),s("td",vo,f(u[2]||""),1)]))),128))])]),_:1})]),s("div",Co,[Bo,s("p",null,[i(" Codex uses the Whoosh search engine to execute your text search queries. Whoosh operates much like other familiar search engines. As such, only some special features are documented on this page. To understand its full power, users are encouraged to read the "),s("a",ko,[i("Whoosh Query Language "),l(v,{size:"small"},{default:c(()=>[i(f(a.mdiOpenInNew),1)]),_:1})]),i(" documentation. ")]),To,i(" Whoosh has the "),Vo,i(", "),Mo,i(", "),$o,i(", "),Io,i(", "),Ro,i(", and "),xo,i(" operators. "),No,Fo,Po,s("p",null,[i(" Whoosh parses Dates and DateTime values liberally. Read "),s("a",Lo,[i("Whoosh Parsing Date Queries "),l(v,{size:"small"},{default:c(()=>[i(f(a.mdiOpenInNew),1)]),_:1})]),i(" documentation for what formats and natural language phrases are accepted. If the format you try fails, the "),Oo,i(" and "),Do,i(" formats are reliable. ")]),Ho,Uo,Go,Ao,Eo,qo,zo,jo,i(". "),Yo,Wo,i(". "),Qo,Ko,Xo,Jo,Zo,es,ts,os,ss,rs,ns,is,as,ls]),l(d,{class:"closeButton",title:"Close Help (esc)",size:"x-large",onClick:t[1]||(t[1]=u=>a.dialog=!1)})])]),_:1},8,["modelValue"])}const we=w(fo,[["render",us],["__scopeId","data-v-c01a7fc6"]]),ds=[{value:10,title:"10"},{value:100,title:"100 (one page)"},{value:0,title:"Unlimited"}],cs={name:"BrowserSettingsPanel",components:{SearchHelp:we},data(){return{SEARCH_LIMIT_CHOICES:ds}},computed:{...V(I,["isCodexViewable"]),...S(p,{groupChoices:e=>e.choices.static.settingsGroup,searchResultsLimit:e=>e.settings.searchResultsLimit,showSettings:e=>e.settings.show,twentyFourHourTime:e=>e.settings.twentyFourHourTime,twentyFourHourTimeTitle:e=>e.choices.static.twentyFourHourTime.title})},methods:{...B(p,["setSettings"]),setShow(e,t){const n={show:{[e]:t===!0}};this.setSettings(n)},set24HourTime(e){const t={twentyFourHourTime:e===!0};this.setSettings(t)},setSearchResultsLimit(e){const t={searchResultsLimit:e||0};this.setSettings(t)}}},ms=e=>(O("data-v-78ab2edc"),e=e(),D(),e),hs=ms(()=>s("div",{id:"groupCaption",class:"text-caption"}," Show these groups when navigating the browse tree. ",-1));function ps(e,t,n,g,a,o){const d=we;return r(),_(M,null,[hs,(r(!0),_(M,null,R(e.groupChoices,u=>(r(),h(X,{key:u.title,class:"browserGroupCheckbox",density:"compact","hide-details":"auto","model-value":e.showSettings[u.value],"true-value":!0,label:`Show ${u.title}`,"onUpdate:modelValue":b=>o.setShow(u.value,b)},null,8,["model-value","label","onUpdate:modelValue"]))),128)),l(P),l(Bt,{class:"searchResultsRadioGroup",density:"compact",label:"Search Results Limit","hide-details":"auto","model-value":e.searchResultsLimit,"onUpdate:modelValue":t[0]||(t[0]=u=>o.setSearchResultsLimit(u))},{default:c(()=>[(r(!0),_(M,null,R(a.SEARCH_LIMIT_CHOICES,u=>(r(),h(Ct,{key:u.value,class:"searchResultsRadio",label:u.title,value:u.value},null,8,["label","value"]))),128))]),_:1},8,["model-value"]),l(d),l(P),l(X,{class:"browserGroupCheckbox",density:"compact","hide-details":"auto","model-value":e.twentyFourHourTime,"true-value":!0,indeterminate:"",label:"Force 24 Hour Time","onUpdate:modelValue":t[1]||(t[1]=u=>o.set24HourTime(u))},null,8,["model-value"])],64)}const _s=w(cs,[["render",ps],["__scopeId","data-v-78ab2edc"]]),fs=new Set(["community_rating","critical_rating"]),gs=new Set(["date"]),bs=new Set(["bookmark_updated_at","created_at","updated_at"]),ys={name:"OrderByCaption",props:{item:{type:Object,required:!0}},computed:{...S(p,{orderBy:e=>e.settings.orderBy,twentyFourHourTime:e=>e.settings.twentyFourHourTime,topGroup:e=>e.settings.topGroup}),orderValue(){let e=this.item.orderValue;try{if(this.orderBy===void 0||this.orderBy===null||this.orderBy==="sort_name"&&(this.item.group!=="c"||this.topGroup!=="f")||e===null||e===void 0)e="";else if(gs.has(this.orderBy)){const t=new Date(e);e=Ke.format(t)}else this.orderBy=="search_score"?e=W.format(Math.round(Number.parseFloat(e)*10)):bs.has(this.orderBy)?e=Xe(e,this.twentyFourHourTime,!0):this.orderBy=="page_count"?e=`${W.format(e)} pages`:this.orderBy=="size"?e=$e(Number.parseInt(e,10)):fs.has(this.orderBy)&&(e=`★ ${e}`)}catch(t){console.debug(t)}return e}}},ws=["innerHTML"];function Ss(e,t,n,g,a,o){return o.orderValue?(r(),_("div",{key:0,class:"orderCaption text-caption",innerHTML:o.orderValue},null,8,ws)):y("",!0)}const Se=w(ys,[["render",Ss],["__scopeId","data-v-f1907410"]]),vs={name:"BrowserContainerMenu",components:{ConfirmDialog:me},props:{item:{type:Object,required:!0}},data(){return{mdiDotsVertical:Je,showMenu:!1}},computed:{...S(p,{groupNames:e=>e.choices.static.groupNames}),verb(){return this.item.finished?"Unread":"Read"},confirmText(){return`Mark ${this.verb}`},markReadText(){const e=["Mark"];this.item.group!="c"&&e.push("Entire");let t=this.groupNames[this.item.group];return this.item.group!=="s"&&(t=t.slice(0,-1)),e.push(t,this.verb),e.join(" ")}},methods:{...B(p,["setBookmarkFinished"]),...B(q,["downloadIOSPWAFix"]),toggleRead:function(){this.setBookmarkFinished(this.item,!this.item.finished),this.showMenu=!1}}},Cs={class:"background-soft-highlight"};function Bs(e,t,n,g,a,o){const d=me;return r(),h(gt,{modelValue:a.showMenu,"onUpdate:modelValue":t[2]||(t[2]=u=>a.showMenu=u),"offset-y":"",top:""},{activator:c(({props:u})=>[l(G,x({"aria-label":"action menu",class:"browserCardMenuIcon cardControlButton",icon:"",title:"Action Menu",variant:"text"},u,{onClick:t[0]||(t[0]=Ze(()=>{},["prevent"]))}),{default:c(()=>[l(v,null,{default:c(()=>[i(f(a.mdiDotsVertical),1)]),_:1})]),_:2},1040)]),default:c(()=>[s("div",Cs,[n.item.group==="c"?(r(),h(k,{key:0,onClick:o.toggleRead},{default:c(()=>[l(F,null,{default:c(()=>[i(f(o.markReadText),1)]),_:1})]),_:1},8,["onClick"])):(r(),h(d,{key:1,"button-text":o.markReadText,"title-text":o.markReadText,"confirm-text":o.confirmText,"object-name":n.item.name,onConfirm:o.toggleRead,onCancel:t[1]||(t[1]=u=>a.showMenu=!1)},null,8,["button-text","title-text","confirm-text","object-name","onConfirm"]))])]),_:1},8,["modelValue"])}const ve=w(vs,[["render",Bs]]),ks={name:"BrowserCardControls",components:{BrowserCardMenu:ve,MetadataButton:Ie},props:{item:{type:Object,required:!0},eyeOpen:{type:Boolean,required:!0}},data(){return{mdiEye:Q,mdiEyeOff:K}},computed:{eyeIcon:function(){return this.eyeOpen?Q:K}}},Ts={class:"cardControls"};function Vs(e,t,n,g,a,o){const d=C("MetadataButton"),u=ve;return r(),_("div",Ts,[n.item.group==="c"?(r(),h(v,{key:0,class:"eye"},{default:c(()=>[i(f(o.eyeIcon),1)]),_:1})):y("",!0),l(d,{group:n.item.group,book:n.item,children:n.item.childCount},null,8,["group","book","children"]),l(u,{item:n.item},null,8,["item"])])}const Ms=w(ks,[["render",Vs],["__scopeId","data-v-c2d95d7f"]]),$s={name:"BrowserCardSubtitle",props:{item:{type:Object,required:!0}},computed:{...S(p,{orderByName:e=>e.settings.orderBy=="sort_name",topGroup:e=>e.settings.topGroup,showSeries:e=>e.settings.show.s,showVolume:e=>e.settings.show.v,zeroPad:e=>e.page.zeroPad}),seriesName(){return(this.topGroup==="a"||this.orderByName&&!this.showSeries)&&["c","v"].includes(this.item.group)&&this.item.seriesName?this.item.seriesName:!1},volumeName(){return(this.topGroup==="a"||this.orderByName&&!this.showVolume)&&this.item.group==="c"&&this.item.volumeName?U(this.item.volumeName):!1},headerName:function(){let e;switch(this.item.group){case"i":e=this.item.publisherName;break;case"v":e=this.item.seriesName;break;case"c":e=this.$route.params.group==="f"?ke(this.item,this.zeroPad):Te(this.item,this.zeroPad);break;default:e=""}return e},displayName:function(){return this.item.group==="v"?U(this.item.name):this.item.name},linkLabel:function(){let e="";return e+=this.item.group==="c"?"Read":"Browse to",e+=" "+this.headerName,e}}},Is={class:"browserLink cardSubtitle text-caption"},Rs={key:0,class:"seriesCaption"},xs={key:1,class:"volumeCaption"},Ns={key:2,class:"headerName"},Fs={class:"displayName"};function Ps(e,t,n,g,a,o){return r(),_("div",Is,[o.seriesName?(r(),_("div",Rs,f(o.seriesName),1)):y("",!0),o.volumeName?(r(),_("div",xs,f(o.volumeName),1)):y("",!0),o.headerName?(r(),_("div",Ns,f(o.headerName),1)):y("",!0),s("div",Fs,f(o.displayName),1)])}const Ls=w($s,[["render",Ps],["__scopeId","data-v-33504043"]]),Os=new Set(["iPad","iPad Simulator","iPhone","iPhone Simulator","iPod","iPod Simulator"]),Ds=Os.has(navigator.platform),Hs="ontouchstart"in window||navigator.maxTouchPoints>0||navigator.msMaxTouchPoints>0||window.matchMedia("(any-hover: none)").matches,Us=et({modelValue:Boolean,options:{type:Object,default:()=>({root:void 0,rootMargin:void 0,threshold:void 0})},...tt(),...ot(),...st(),...rt({transition:"fade-transition"})},"VLazy"),Gs=nt()({name:"VLazy",directives:{intersect:it},props:Us(),emits:{"update:modelValue":e=>!0},setup(e,t){let{slots:n}=t;const{dimensionStyles:g}=at(e),a=lt(e,"modelValue");function o(d){a.value||(a.value=d)}return ut(()=>ce(l(e.tag,{class:["v-lazy",e.class],style:[g.value,e.style]},{default:()=>[a.value&&l(ct,{transition:e.transition,appear:!0},{default:()=>{var d;return[(d=n.default)==null?void 0:d.call(n)]}})]}),[[dt("intersect"),{handler:o,options:e.options},null]])),{}}}),Z=100,As=-170,Es={name:"BrowserCard",components:{BookCover:ne,BrowserCardControls:Ms,BrowserCardSubtitle:Ls,OrderByCaption:Se},props:{item:{type:Object,required:!0}},data(){return{doubleTapHovered:!Hs||Ds}},computed:{...S(p,{importMetadata:e=>e.page.adminFlags.importMetadata}),linkLabel:function(){let e="";return e+=this.item.group==="c"?"Read":"Browse to",e+=" "+this.item.headerName,e},toRoute:function(){return this.doubleTapHovered?this.item.group==="c"?Re(this.item,this.importMetadata):{name:"browser",params:{group:this.item.group,pk:this.item.pk,page:1}}:{}},progressBackgroundColor:function(){return this.item.progress?this.$vuetify.theme.current.colors.row:"inherit"}},mounted(){this.scrollToMe()},methods:{scrollToMe:function(){if(!this.$route.hash||this.$route.hash.split("-")[1]!==String(this.item.pk))return;const e=this.$el;if(!e){console.warn("No element found to scroll to!");return}setTimeout(function(){e.scrollIntoView(),setTimeout(function(){window.scrollBy(0,As)},Z)},Z)}}},qs={class:"browserCardTop"},zs={key:1,class:"cardCoverOverlay"};function js(e,t,n,g,a,o){const d=ne,u=C("BrowserCardControls"),b=C("router-link"),$=C("BrowserCardSubtitle"),N=Se;return r(),h(Gs,{id:`card-${n.item.pk}`,transition:"scale-transition"},{default:c(()=>[s("div",{class:"browserCardCoverWrapper",onClick:t[0]||(t[0]=j=>a.doubleTapHovered=!0)},[s("div",qs,[l(d,{"cover-pk":n.item.coverPk,group:n.item.group,"child-count":n.item.childCount,finished:n.item.finished},null,8,["cover-pk","group","child-count","finished"]),o.toRoute?(r(),h(b,{key:0,class:"cardCoverOverlay",to:o.toRoute,"aria-label":o.linkLabel},{default:c(()=>[l(u,{item:n.item,"eye-open":!0},null,8,["item"])]),_:1},8,["to","aria-label"])):(r(),_("div",zs,[l(u,{item:n.item,"eye-open":!1},null,8,["item"])])),ce(l(E,{class:"bookCoverProgress","background-color":o.progressBackgroundColor,"model-value":n.item.progress,"aria-label":`${n.item.progress}% read`,rounded:"",height:"2"},null,8,["background-color","model-value","aria-label"]),[[mt,n.item.progress]]),l($,{item:n.item},null,8,["item"])]),l(N,{item:n.item},null,8,["item"])])]),_:1},8,["id"])}const Ys=w(Es,[["render",js],["__scopeId","data-v-7f56bc86"]]),Ws={name:"BrowserMain",components:{BrowserCard:Ys,PlaceholderLoading:ie},data(){return{mdiMenu:ht,mdiOpenInNew:de}},computed:{...S(I,{adminFlags:e=>e.adminFlags}),...V(I,["isUserAdmin","isCodexViewable"]),...S(p,{librariesExist:e=>e.page.librariesExist,showPlaceHolder(e){return this.adminFlags.nonUsers===void 0||this.isCodexViewable&&(this.librariesExist==null||!e.browserPageLoaded)},searchQueryText:e=>e.settings.q,searchResultsLimit:e=>e.settings.searchResultsLimit,cards:e=>[...e.page.groups??[],...e.page.books??[]],padFooter:e=>e.page.numPages>1}),showBrowseItems(){return this.cards&&this.cards.length>0&&this.isCodexViewable&&!this.showPlaceHolder},searchLimitMessage(){let e="";return this.searchQueryText&&(this.searchResultsLimit?e=`Search query results limited to ${this.searchResultsLimit} entries`:e="Search results may be limited in the side bar to load faster"),e}}},z=e=>(O("data-v-4ffde245"),e=e(),D(),e),Qs={key:0,id:"browsePaneContainer"},Ks={key:1,id:"announce"},Xs={key:2,id:"announce"},Js={key:0},Zs={key:0},er={key:3,id:"announce"},tr=z(()=>s("div",{id:"noComicsFound"},"No comics found for these filters",-1)),or=[tr],sr={key:4,id:"announce"},rr=z(()=>s("h1",null,"No libraries have been added to Codex yet",-1)),nr={key:0},ir={key:1},ar=z(()=>s("h2",null," An administrator must login to add some libraries that contain comics ",-1)),lr={href:"https://github.com/ajslater/codex#-administration",target:"_blank"},ur={key:5,id:"searchLimitMessage",title:"You may change this in the settings drawer"};function dr(e,t,n,g,a,o){const d=C("BrowserCard"),u=ie;return r(),h(he,{id:"browsePane",class:L({padFooter:e.padFooter})},{default:c(()=>[o.showBrowseItems?(r(),_("div",Qs,[(r(!0),_(M,null,R(e.cards,b=>(r(),h(d,{key:`${b.group}${b.pk}`,item:b},null,8,["item"]))),128))])):e.showPlaceHolder?(r(),_("div",Ks,[l(u,{class:"placeholder"})])):e.isCodexViewable?e.librariesExist?(r(),_("div",er,or)):(r(),_("div",sr,[rr,e.isUserAdmin?(r(),_("h2",nr,[i(" Use the top right "),l(v,null,{default:c(()=>[i(f(a.mdiMenu),1)]),_:1}),i(" menu to navigate to the admin panel and add a comic library. ")])):(r(),_("div",ir,[ar,s("h3",null,[i(" You may log in or register with the top right "),l(v,null,{default:c(()=>[i(f(a.mdiMenu),1)]),_:1}),i("menu ")])])),s("a",lr,[i("See the README "),l(v,null,{default:c(()=>[i(f(a.mdiOpenInNew),1)]),_:1})]),i(" for detailed instructions. ")])):(r(),_("div",Xs,[s("h1",null,[i(" You may log in "),e.adminFlags.register?(r(),_("span",Js,"or register")):y("",!0),i(" with the top right "),l(v,null,{default:c(()=>[i(f(a.mdiMenu),1)]),_:1}),i(" menu ")]),e.adminFlags.register?y("",!0):(r(),_("h1",Zs,"Registration is disabled"))])),o.searchLimitMessage?(r(),_("div",ur,f(o.searchLimitMessage),1)):y("",!0)]),_:1},8,["class"])}const cr=w(Ws,[["render",dr],["__scopeId","data-v-4ffde245"]]),mr={name:"MainBrowser",components:{BrowserTopToolbar:ye,BrowserMain:cr,BrowserNavToolbar:_e,BrowserTitleToolbar:be,SettingsDrawer:te},data(){return{BrowserSettingsPanel:pt(_s)}},computed:{...S(I,{user:e=>e.user}),...V(I,["isCodexViewable"])},watch:{$route:function(){window.scrollTo(0,0),this.loadBrowserPage()},user:function(){this.loadSettings()},isCodexViewable:function(){this.loadSettings()}},created(){q().isSettingsDrawerOpen=!1,this.loadSettings()},methods:{...B(p,["loadBrowserPage","loadSettings","getVersions"])}},hr={class:"codexToolbar"};function pr(e,t,n,g,a,o){const d=ye,u=be,b=C("BrowserMain"),$=_e,N=te;return r(),_(M,null,[l(he,{id:"browser"},{default:c(()=>[s("header",hr,[l(d),l(u)]),l(b),l($)]),_:1}),l(N,{title:"Browser Settings",panel:a.BrowserSettingsPanel,temporary:""},null,8,["panel"])],64)}const Pr=w(mr,[["render",pr],["__scopeId","data-v-92361854"]]);export{Pr as default};
@@ -1 +0,0 @@
1
- import{f as U,V as Ce,a as ee,S as Be,g as ke,b as Te,_ as te}from"./VToolbar-CAUhD2BO.js";import{_ as oe,a as se,b as re,N as Ve,t as Me,V as H,p as $e,c as Ie,d as ne,g as Re,P as ie}from"./metadata-dialog-PkTw4uLp.js";import{aE as ae,M as S,_ as w,R as r,O as h,P as c,L as l,aa as i,ae as f,ab as L,ad as v,N as B,aB as y,ax as V,aF as xe,aG as Ne,ak as G,m as I,ay as _,aD as s,aH as O,aI as D,aJ as Fe,az as R,aK as Pe,am as x,aL as Le,aM as Oe,a9 as A,af as F,ag as k,aN as De,al as M,aO as He,aP as Ue,aQ as E,aR as Ge,aS as Ae,Q as C,aT as P,aU as Ee,aV as qe,aW as le,aX as Y,aY as ze,aZ as je,k as q,a_ as ue,a$ as de,b0 as Ye,b1 as We,b2 as Qe,b3 as Ke,b4 as W,b5 as Xe,b6 as Je,b7 as Ze,b8 as Q,b9 as K,x as et,E as tt,ba as ot,aq as st,bb as rt,G as nt,bc as it,bd as at,ar as lt,K as ut,be as ce,bf as dt,bg as ct,bh as mt,bi as ht,aC as pt}from"./admin-drawer-panel-B4VvGE4s.js";import{u as p,C as _t}from"./main-CCY5Ix0K.js";import{V as ft,a as gt}from"./VSelect-BdaijxdJ.js";import{c as bt}from"./to-case-kUm8NPpW.js";import{a as yt}from"./VSlideGroup-ztBraz6g.js";import{V as wt}from"./VCombobox-DT52mZm3.js";import{V as St}from"./VTable-CGuSv-Tv.js";import{V as vt}from"./confirm-footer-Yn7T9Tns.js";import{V as X}from"./VCheckbox-BMRDCYNv.js";import{V as Ct,a as Bt}from"./VRadioGroup-Bi16yPEE.js";import{_ as me}from"./confirm-dialog-D-Fx-51m.js";import{V as he}from"./VMain-DmQvRj_k.js";import"./index-DUjeNg4x.js";import"./change-password-dialog-Dq6GjT1T.js";import"./VSelectionControl-CuM4okF6.js";import"./VCheckboxBtn-Dqp1u3GT.js";import"./filter-Dw0fjwZi.js";const kt={name:"BrowserNavButton",components:{PaginationNavButton:oe},props:{back:{type:Boolean,required:!0}},data(){return{mdiChevronLeft:ae,routeParams:this.$route.params,page:+this.$route.params.page}},computed:{...S(p,{numPages:e=>e.page.numPages}),increment(){return this.back?-1:1},toPage(){return this.page+this.increment},title(){return"Page "+this.toPage},toRoute(){const e=this.toPage;return{params:{...this.routeParams,page:e}}},disabled(){return this.back&&this.page<=1||!this.back&&this.page>=this.numPages}},watch:{$route(e){this.params=e.params,this.page=+e.params.page}}};function Tt(e,t,n,g,a,o){const d=oe;return r(),h(d,{key:o.toRoute,disabled:o.disabled,title:o.title,to:o.toRoute},{default:c(()=>[l(v,{class:L({flipHoriz:!n.back})},{default:c(()=>[i(f(a.mdiChevronLeft),1)]),_:1},8,["class"])]),_:1},8,["disabled","title","to"])}const pe=w(kt,[["render",Tt],["__scopeId","data-v-2c195aca"]]),Vt={name:"BrowserNavToolbar",components:{BrowserNavButton:pe,PaginationSlider:se,PaginationToolbar:re},computed:{...S(p,{numPages:e=>e.page.numPages})},methods:{...B(p,["routeToPage"]),onUpdate(e){this.routeToPage(e)}}};function Mt(e,t,n,g,a,o){const d=pe,u=se,b=re;return e.numPages>1?(r(),h(b,{key:0},{default:c(()=>[l(d,{back:!0}),l(u,{"model-value":+e.$route.params.page,min:1,max:e.numPages,step:1,"onUpdate:modelValue":t[0]||(t[0]=$=>e.routeToPage($))},null,8,["model-value","max"]),l(d,{back:!1})]),_:1})):y("",!0)}const _e=w(Vt,[["render",Mt]]),$t=new Set(["a","f"]),It={name:"BrowserUpButton",props:{top:{type:Boolean,default:!1}},computed:{...V(p,["parentModelGroup"]),...S(p,{upRoute:e=>e.page.routes.up,title(e){const t=this.top?e.settings.topGroup:this.parentModelGroup;return`Up to ${e.choices.static.groupNames[t]||"All"}`}}),show(){return this.upRoute&&"group"in this.upRoute},icon(){return this.top?xe:Ne},to(){let e;if(this.top){let t=this.upRoute.group;$t.has(t)||(t="r"),e={group:t,pk:0,page:1}}else e=this.upRoute;return{params:e}}}};function Rt(e,t,n,g,a,o){return o.show?(r(),h(G,{key:0,icon:"",size:"x-large",title:e.title,to:o.to,variant:"plain"},{default:c(()=>[l(v,null,{default:c(()=>[i(f(o.icon),1)]),_:1})]),_:1},8,["title","to"])):y("",!0)}const fe=w(It,[["render",Rt]]),xt={name:"BrowserHeader",components:{BrowserUpButton:fe},head(){return{meta:[{hid:"description",name:"description",content:["browse comics",this.longBrowserTitlePrefix,this.longBrowseTitleMain,this.longBrowseTitleSuffix].filter(Boolean).join(" ")}]}},computed:{...S(p,{groupNames:e=>e.choices.static.groupNames,browserTitle:e=>e.page.browserTitle,modelGroup:e=>e.page.modelGroup}),...V(I,["isCodexViewable","isUserAdmin"]),longBrowserTitlePrefix:function(){return this.$route.params.group==="f"?this.browserTitle.parentName:""},longBrowseTitleMain:function(){let e;if(Number(this.$route.params.pk)===0)e="All";else{let t=[];const{parentName:n,groupName:g,groupCount:a}=this.browserTitle;n&&t.push(n);const o=this.$route.params.group,d=o==="v"?U(g):g;if(d&&t.push(d),a){const b=`of ${a}`;t.push(b)}const u=o==="f"?"/":" ";e=t.join(u)}return e},longBrowseTitleSuffix:function(){return this.$route.params.group==="f"?"":this.groupNames[this.modelGroup]}}},ge=e=>(O("data-v-3d5e18c3"),e=e(),D(),e),Nt={key:0,id:"titleToolbarPrefix"},Ft=ge(()=>s("br",null,null,-1)),Pt={id:"titleToolbarMain"},Lt={key:1,id:"titleToolbarSuffix"},Ot=ge(()=>s("br",null,null,-1));function Dt(e,t,n,g,a,o){const d=fe;return e.isCodexViewable?(r(),h(ee,{key:0,id:"titleToolbar",elevation:"8"},{default:c(()=>[l(d),l(Ce,{class:"codexToolbarTitle"},{default:c(()=>[o.longBrowserTitlePrefix?(r(),_("span",Nt,[i(f(o.longBrowserTitlePrefix)+" ",1),Ft])):y("",!0),s("span",Pt,f(o.longBrowseTitleMain),1),o.longBrowseTitleSuffix?(r(),_("span",Lt,[Ot,i(" "+f(o.longBrowseTitleSuffix),1)])):y("",!0)]),_:1}),l(d,{top:""})]),_:1})):y("",!0)}const be=w(xt,[["render",Dt],["__scopeId","data-v-3d5e18c3"]]),Ht={name:"ToolbarSelect",props:{selectLabel:{type:String,default:""},maxSelectLen:{type:Number,default:0},mobileLenAdj:{type:Number,default:0},variant:{type:String,default:"plain"}},computed:{style(){const e=this.$vuetify.display.smAndDown?this.mobileLenAdj:0,n=this.maxSelectLen+e+"em";return`width: ${n}; min-width: ${n}; max-width: ${n}`}}};function Ut(e,t,n,g,a,o){return r(),h(ft,x(e.$attrs,{label:n.selectLabel,"aria-label":n.selectLabel,class:"toolbarSelect",density:"compact","full-width":"","menu-props":{maxHeight:void 0},"hide-details":"auto",style:o.style,variant:n.variant}),Fe({_:2},[R(e.$slots,(d,u)=>({name:u,fn:c(b=>[Pe(e.$slots,u,x({props:d},b),void 0,!0)])}))]),1040,["label","aria-label","style","variant"])}const T=w(Ht,[["render",Ut],["__scopeId","data-v-ea769669"]]),Gt=_t.browser.vuetifyNullCode,At={name:"BrowserFilterSubMenu",props:{name:{type:String,required:!0}},emits:["selected"],data(){return{mdiChevronLeft:ae,mdiChevronRight:Le,mdiChevronRightCircle:Oe,query:"",nullCode:Gt}},computed:{...S(p,{choices(e){return e.choices.dynamic[this.name]},readingDirectionTitles:e=>e.choices.static.readingDirection,identifierTypeTitles:e=>e.choices.static.identifierType,filter(e){return e.settings.filters[this.name]}}),...A(p,["filterMode"]),hasNone(){for(const e of this.choices)if(Ve.has(e.pk))return!0;return!1},vuetifyItems(){return Me(this.choices,this.query)},title:function(){return bt(this.name)},lowerTitle:function(){return this.title.toLowerCase()}},methods:{...B(p,["identifierTypeTitle","loadFilterChoices"]),setUIFilterMode(e){this.filterMode=e,this.query="",e!=="base"&&typeof this.choices!="object"&&this.loadFilterChoices(e)},selected(e){const t={filters:{[this.name]:e}};this.$emit("selected",t)},itemTitle:function(e){return this.name==="readingDirection"?this.readingDirectionTitles[e.value]:this.name==="identifierType"?this.identifierTypeTitle(e.title):e.title}}},Et={key:0},qt={class:"filterHeader"};function zt(e,t,n,g,a,o){return r(),_("div",null,[l(De,{"hide-on-leave":""},{default:c(()=>[e.filterMode==="base"?(r(),h(k,{key:0,onClick:t[0]||(t[0]=d=>o.setUIFilterMode(n.name))},{default:c(()=>[l(F,{class:"filterMenu"},{default:c(()=>[i(f(o.title)+" ",1),e.filter&&e.filter.length>0?(r(),h(v,{key:0,class:"nameChevron"},{default:c(()=>[i(f(a.mdiChevronRightCircle),1)]),_:1})):(r(),h(v,{key:1,class:"nameChevron"},{default:c(()=>[i(f(a.mdiChevronRight),1)]),_:1}))]),_:1})]),_:1})):y("",!0)]),_:1}),l(Ue,{"hide-on-leave":""},{default:c(()=>[e.filterMode===n.name?(r(),_("div",Et,[s("header",qt,[l(k,{onClick:t[1]||(t[1]=d=>o.setUIFilterMode("base"))},{default:c(()=>[l(F,{class:"filterTitle"},{default:c(()=>[l(v,null,{default:c(()=>[i(f(a.mdiChevronLeft),1)]),_:1}),i(f(o.lowerTitle),1)]),_:1})]),_:1}),typeof e.choices=="object"?(r(),h(yt,{key:0,modelValue:a.query,"onUpdate:modelValue":t[2]||(t[2]=d=>a.query=d),placeholder:"Filter","full-width":"",density:"compact",filled:"",rounded:"","hide-details":"auto",onFocus:t[3]||(t[3]=d=>e.filterMode=n.name)},null,8,["modelValue"])):(r(),h(E,{key:1,class:"filterValuesProgress",rounded:"",indeterminate:""}))]),typeof e.choices=="object"?(r(),h(He,{key:0,"model-value":e.filter,class:"filterGroup overflow-y-auto",density:"compact",multiple:"",items:o.vuetifyItems,"onUpdate:selected":o.selected},{default:c(()=>[o.hasNone?(r(),h(k,{key:-1,title:"None",value:-1,class:"noneItem"})):y("",!0),(r(!0),_(M,null,R(o.vuetifyItems,d=>(r(),h(k,{key:d.value,title:o.itemTitle(d),value:d.value,class:L({noneItem:+d.value==a.nullCode})},null,8,["title","value","class"]))),128))]),_:1},8,["model-value","items","onUpdate:selected"])):y("",!0)])):y("",!0)]),_:1})])}const jt=w(At,[["render",zt],["__scopeId","data-v-c9df90cc"]]),Yt={name:"BrowserFilterBySelect",components:{BrowserFilterSubMenu:jt,ToolbarSelect:T},extends:T,data(){return{mdiFilterMultipleOutline:Ge,menu:!1}},computed:{...V(p,["filterByChoicesMaxLen","isDefaultBookmarkValueSelected"]),...S(p,{bookmarkChoices:e=>e.choices.static.bookmark,bookmarkFilter:e=>e.settings.filters.bookmark||e.choices.static.bookmark[0],filters:e=>e.settings.filters,isDynamicFiltersSelected:function(e){for(const[t,n]of Object.entries(e.settings.filters))if(t!=="bookmark"&&n&&n.length>0)return!0;return!1},isFiltersClearable:function(){return!this.isDefaultBookmarkValueSelected||this.isDynamicFiltersSelected},filterMenuClass:function(e){let t="filterMenu";return e.filterMode!=="base"&&(t+="Hidden"),t},dynamicChoiceNames:function(e){if(e.choices.dynamic===void 0)return;const t=[];for(const[n,g]of Object.entries(e.choices.dynamic))g&&t.push(n);return t}}),...A(p,["filterMode"]),filterInnerIcon:function(){return this.isFiltersClearable?Ae:""}},methods:{...B(p,["clearFilters","loadAvailableFilterChoices","setSettings"]),onUpdateModelValue(e){const t={filters:{bookmark:e}};this.onSubMenuSelected(t)},onSubMenuSelected(e){this.menu=!1,this.setSettings(e),this.filterMode="base"},onClear(){this.clearFilters()},onMenu(e){e&&this.dynamicChoiceNames===void 0&&this.loadAvailableFilterChoices()}}},Wt={key:1};function Qt(e,t,n,g,a,o){const d=C("BrowserFilterSubMenu"),u=T;return r(),h(u,{menu:a.menu,"onUpdate:menu":[t[0]||(t[0]=b=>a.menu=b),o.onMenu],class:"filterBySelect","select-label":"filter by",clearable:e.isFiltersClearable,items:e.bookmarkChoices,"menu-props":{contentClass:e.filterMenuClass,maxHeight:void 0},"model-value":e.bookmarkFilter,"max-select-len":e.filterByChoicesMaxLen+1.5,"mobile-len-adj":-1.5,variant:"solo","onClick:clear":o.onClear,"onUpdate:modelValue":o.onUpdateModelValue},{selection:c(({item:b})=>[i(f(b.title)+" ",1),e.isDynamicFiltersSelected?(r(),h(v,{key:0,class:"filterSuffix"},{default:c(()=>[i(f(a.mdiFilterMultipleOutline),1)]),_:1})):y("",!0)]),"append-item":c(()=>[l(P),e.dynamicChoiceNames===void 0?(r(),h(k,{key:0},{default:c(()=>[l(E,{indeterminate:"",rounded:""})]),_:1})):e.dynamicChoiceNames.length>0?(r(),_("div",Wt,[(r(!0),_(M,null,R(e.dynamicChoiceNames,b=>(r(),h(d,{key:b,name:b,onSelected:o.onSubMenuSelected},null,8,["name","onSelected"]))),128))])):(r(),h(k,{key:2,class:"noChoices"},{default:c(()=>[i(" No filters available ")]),_:1}))]),_:1},8,["menu","clearable","items","menu-props","model-value","max-select-len","onClick:clear","onUpdate:modelValue","onUpdate:menu"])}const Kt=w(Yt,[["render",Qt],["__scopeId","data-v-8cf1988f"]]),Xt={name:"BrowseOrderBySelect",components:{ToolbarSelect:T},extends:T,computed:{...V(p,["orderByChoices","orderByChoicesMaxLen"]),...S(p,{orderBySetting:e=>e.settings.orderBy}),reverseValues(){const e=new Set;for(const t of this.orderByChoices)t.reverse&&e.add(t.value);return e},orderBy:{get(){return this.orderBySetting},set(e){const t={orderBy:e,orderReverse:this.reverseValues.has(e)};this.setSettings(t)}}},methods:{...B(p,["setSettings"])}};function Jt(e,t,n,g,a,o){const d=T;return r(),h(d,x({modelValue:o.orderBy,"onUpdate:modelValue":t[0]||(t[0]=u=>o.orderBy=u),class:"orderBySelect","select-label":"order by",items:e.orderByChoices,"max-select-len":e.orderByChoicesMaxLen-3.5,"mobile-len-adj":-2},e.$attrs),null,16,["modelValue","items","max-select-len"])}const Zt=w(Xt,[["render",Jt]]),eo={name:"BrowseOrderReverseButton",computed:{...S(p,{orderReverseSetting:e=>e.settings.orderReverse,orderIcon:e=>e.settings.orderReverse?Ee:qe}),density(){return this.$vuetify.display.smAndDown?"compact":"default"},title(){return this.orderReverseSetting?"order descending":"order ascending"}},methods:{...B(p,["setSettings"]),toggleOrderReverse(){const e={orderReverse:!this.orderReverseSetting};this.setSettings(e)}}};function to(e,t,n,g,a,o){return r(),h(G,x({class:"orderReverseButton",density:o.density,height:"46",icon:"",variant:"text"},e.$attrs,{title:o.title,onClick:o.toggleOrderReverse}),{default:c(()=>[l(v,null,{default:c(()=>[i(f(e.orderIcon),1)]),_:1})]),_:1},16,["density","title","onClick"])}const oo=w(eo,[["render",to],["__scopeId","data-v-57eeaaec"]]),so=10,ro={name:"BrowserSearchCombobox",data(){return{mdiMagnify:le,menu:!1,query:"",items:[""]}},computed:{...S(p,{stateQ:e=>e.settings.q})},watch:{stateQ(e){this.query=e,this.addToMenu(e)}},methods:{...B(p,["setSettings"]),addToMenu(e){if(!e||this.items.includes(e))return;const t=this.items[0]===""?[]:this.items;t.unshift(e),this.items=t.slice(0,so)},doSearch(){this.menu=!1;const e=this.query?this.query.trim():"";this.setSettings({q:e}),this.addToMenu(e)}}};function no(e,t,n,g,a,o){return r(),h(wt,{ref:"searchbox",modelValue:a.query,"onUpdate:modelValue":t[0]||(t[0]=d=>a.query=d),menu:a.menu,"onUpdate:menu":t[1]||(t[1]=d=>a.menu=d),items:a.items,autofocus:"","aria-label":"search",clearable:"",density:"compact","full-width":"","hide-details":"auto","hide-selected":"","menu-props":{maxHeight:void 0},"no-filter":"","prepend-inner-icon":a.mdiMagnify,variant:"solo","onClick:clear":o.doSearch,"onClick:prependInner":o.doSearch,onKeydown:[Y(o.doSearch,["enter"]),t[2]||(t[2]=Y(d=>a.menu=!1,["esc"]))]},null,8,["modelValue","menu","items","prepend-inner-icon","onClick:clear","onClick:prependInner","onKeydown"])}const io=w(ro,[["render",no]]),ao={params:{group:"f",pk:0,page:1}},J=new Set(["a","f"]),lo={name:"BrowserTopGroupSelect",components:{ToolbarSelect:T},extends:T,data(){return{FOLDER_ROUTE:ao,DIVIDED_VALUES:J}},computed:{...S(p,{topGroupSetting:e=>e.settings.topGroup}),...V(p,["topGroupChoices","topGroupChoicesMaxLen"]),topGroup:{get(){return this.topGroupSetting},set(e){const n={params:{group:J.has(e)?e:"r",pk:0,page:1}},g={topGroup:e};this.$router.push(n).then(()=>this.setSettings(g)).catch(console.error)}}},methods:{...B(p,["setSettings"])}};function uo(e,t,n,g,a,o){const d=T;return r(),h(d,x(e.$attrs,{modelValue:o.topGroup,"onUpdate:modelValue":t[0]||(t[0]=u=>o.topGroup=u),class:"topGroupSelect","select-label":"top group",items:e.topGroupChoices,"max-select-len":e.topGroupChoicesMaxLen-2,"mobile-len-adj":-1}),{item:c(({item:u,props:b})=>[a.DIVIDED_VALUES.has(u.value)?(r(),h(P,{key:0})):y("",!0),l(k,x(b,{title:u.title,value:u.value}),null,16,["title","value"])]),_:1},16,["modelValue","items","max-select-len"])}const co=w(lo,[["render",uo],["__scopeId","data-v-d1f6fd76"]]),mo=ze("v-spacer","div","VSpacer"),ho={name:"BrowserTopToolbar",components:{BrowserFilterBySelect:Kt,BrowserTopGroupSelect:co,BrowserSearchCombobox:io,BrowserOrderBySelect:Zt,BrowserOrderReverseButton:oo,SettingsDrawerButton:Be},data(){return{mdiMagnify:le,mdiFamilyTree:je,browseMode:"filter"}},computed:{...V(I,["isCodexViewable"]),...A(q,["isSettingsDrawerOpen"])}};function po(e,t,n,g,a,o){const d=C("BrowserTopGroupSelect"),u=C("BrowserOrderBySelect"),b=C("BrowserOrderReverseButton"),$=C("SettingsDrawerButton"),N=C("BrowserFilterBySelect"),j=C("BrowserSearchCombobox");return r(),h(ee,{id:"browserToolbar",class:L(["toolbar",{emptyToolbar:!e.isCodexViewable}]),density:"compact","extension-height":"48px"},{extension:c(()=>[e.isCodexViewable?(r(),h(H,{key:0,id:"searchToolbarItems"},{default:c(()=>[l(N,{id:"filterSelect"}),l(j,{id:"searchField"})]),_:1})):y("",!0)]),default:c(()=>[e.isCodexViewable?(r(),h(H,{key:0,id:"browserToolbarLeftItems"},{default:c(()=>[l(d,{id:"topGroupSelect"}),l(u,{id:"orderBySelect"}),l(b,{id:"orderReverseButton"})]),_:1})):y("",!0),l(mo),l(H,null,{default:c(()=>[l($,{onClick:t[0]||(t[0]=_r=>e.isSettingsDrawerOpen=!0)})]),_:1})]),_:1},8,["class"])}const ye=w(ho,[["render",po],["__scopeId","data-v-939a4977"]]),_o=[["characters","CSV","category"],["community_rating","Decimal","communityrating"],["contributor","CSV","author, creator, credit, person, people"],["country","String"],["created_at","DateTime","created"],["critical_rating","Decimal","criticalrating"],["day","Integer"],["date","Date"],["decade","Integer"],["file_type","String","type"],["genres","CSV","genre"],["identifier","CSV","id, nss"],["identifier_type","CSV","id_type, nid"],["imprint","String"],["issue","String","(Combined issue_number and issue_suffix)"],["issue_number","Decimal","number"],["issue_suffix","String"],["language","String"],["location","CSV","location"],["maturity_rating","String"],["monochrome","String","blackandwhite"],["month","Integer"],["reading_direction","String","direction"],["name","String","title"],["notes","String"],["original_format","String","format, orginalformat"],["page_count","Integer","pages, pagecount"],["publisher","String"],["reading_direction","String","direction"],["review","String"],["scan_info","String","scan, scaninfo"],["series","String"],["series_groups","CSV","seriesgroups"],["size","Integer"],["stories","CSV","story"],["story_arcs","CSV","storyarcs"],["summary","String","comments, description"],["tags","CSV","tag"],["tagger","String"],["teams","CSV","team"],["updated_at","Date","updated"],["volume","String"],["web","String"],["year","Integer"]],fo={name:"SearchHelp",components:{CloseButton:ue},data(){return{mdiOpenInNew:de,mdiArchiveSearchOutline:Ye,dialog:!1,FIELD_ROWS:_o}}},m=e=>(O("data-v-c01a7fc6"),e=e(),D(),e),go={id:"searchHelp"},bo=m(()=>s("h1",null,"Search Syntax Help",-1)),yo={id:"fieldTableContainer"},wo=m(()=>s("h2",null,"Search Fields",-1)),So=m(()=>s("thead",null,[s("tr",null,[s("th",null,"Field"),s("th",null,"Type"),s("th",null,"Aliases")])],-1)),vo={class:"aliasCol"},Co={id:"textContainer"},Bo=m(()=>s("h2",null,"Whoosh Query Parser",-1)),ko={href:"https://whoosh.readthedocs.io/en/latest/querylang.html",target:"_blank"},To=m(()=>s("h2",null,"Operators",-1)),Vo=m(()=>s("code",null,"and",-1)),Mo=m(()=>s("code",null,"or",-1)),$o=m(()=>s("code",null,"not",-1)),Io=m(()=>s("code",null,"andnot",-1)),Ro=m(()=>s("code",null,"andmaybe",-1)),xo=m(()=>s("code",null,"require",-1)),No=m(()=>s("h2",null,"Searching Fields",-1)),Fo=m(()=>s("p",null,[i(" Like Codex's filter selector menu, but more powerful. You may search on individual comic metadata fields. using a search token like "),s("code",null,"field:value"),i(". ")],-1)),Po=m(()=>s("h3",null,"Dates and DateTimes",-1)),Lo={href:"https://whoosh.readthedocs.io/en/latest/dates.html#parsing-date-queries",target:"_blank"},Oo=m(()=>s("code",null,"YYYYMMDD",-1)),Do=m(()=>s("code",null,"YYYMMDDHHmmSS",-1)),Ho=m(()=>s("h3",null,"Single Quote complex field Queries",-1)),Uo=m(()=>s("p",null,[i(" Use "),s("em",null,"single"),i(" quotes to tell Codex that a complex or natural language phrase should be applied to a specific field ")],-1)),Go=m(()=>s("code",null," created:'this year' ",-1)),Ao=m(()=>s("h3",null,"Size Byte Multipliers",-1)),Eo=m(()=>s("p",null,[i(" The size field can make use of convenient byte multiplier suffixes like "),s("code",null,"kb"),i(" and "),s("code",null,"mb"),i(" as well as binary suffixes like "),s("code",null,"gib"),i(" and "),s("code",null,"tib"),i(". ")],-1)),qo=m(()=>s("h3",null,"Ranges of Fields",-1)),zo=m(()=>s("p",null,[i(" Whoosh uses brackets and the "),s("em",null,"uppercase"),i(" "),s("code",null,"TO"),i(" operator to delineate a range search. ")],-1)),jo=m(()=>s("code",null,"updated:[last sunday TO 10am]",-1)),Yo=m(()=>s("p",null," You may leave out the upper or lower bound or use >, <, >=, <= operators. ",-1)),Wo=m(()=>s("code",null,"size:<50mb",-1)),Qo=m(()=>s("h3",null,"Multi Value Fields",-1)),Ko=m(()=>s("p",null,[i(" Fields marked type "),s("code",null,"CSV"),i(" in the table to the left may contain comma separated values. This filters by all the supplied values. Multi Value tokens look like: "),s("code",null,"field:term1,term2,term3")],-1)),Xo=m(()=>s("h2",null,"Grouped Queries",-1)),Jo=m(()=>s("p",null,"Whoosh allows grouping of queries with parenthesis.",-1)),Zo=m(()=>s("h2",null,"Example Search",-1)),es=m(()=>s("p",null," This example search is more convoluted than most searches but uses many features for demonstration: ",-1)),ts=m(()=>s("code",null,' (Holmes and Tesla date:>=1999-1-2 size:[10mib TO 1gb] Gadzooks) or "Captain Nemo" -Quartermain ',-1)),os=m(()=>s("p",{style:{"margin-top":"1em"}},' Search for comics that contain Holmes and Tesla published after the second day of 1999 that are between 10 Mebibytes and 10 Gigabytes that also contain the word "Gadzooks" but also all comics with the the phrase "Captain Nemo" but no comics will contain the word "Quartermain". ',-1)),ss=m(()=>s("h2",null,"Group and Sorting Behavior",-1)),rs=m(()=>s("p",null," If the search field is empty and then you supply a search query for the first time, Codex navigates you to the to All Issues view and your sets your Sorted By selection to Search Score. If you prefer a different view you may change the group and sort selections after your you make your first search. ",-1)),ns=m(()=>s("h2",null,"Filter Behavior",-1)),is=m(()=>s("p",null,[i(" Codex applies "),s("em",null,"both"),i(" the Filter selection menu filters "),s("em",null,"and"),i(" the search query field filters to the search. Be sure to clear the filter selector or the search field if you prefer to apply only one of them. ")],-1)),as=m(()=>s("h2",null,"Faster Browsing and Searching",-1)),ls=m(()=>s("p",null,' Browsing large collections using the group tree and filter dropdown is relatively fast. Searching with the search bar will always be slower. To aid search speed there is a setting for limiting search results which can help with large collections. To see all results, choose Search Result Limit: "Unlimited". ',-1));function us(e,t,n,g,a,o){const d=ue;return r(),h(vt,{modelValue:a.dialog,"onUpdate:modelValue":t[2]||(t[2]=u=>a.dialog=u),"content-class":"browserSearchHelp",fullscreen:"",scrim:!1,transition:"dialog-bottom-transition"},{activator:c(({props:u})=>[l(k,We(Qe(u)),{default:c(()=>[l(F,null,{default:c(()=>[l(v,null,{default:c(()=>[i(f(a.mdiArchiveSearchOutline),1)]),_:1}),i("Search Help ")]),_:1})]),_:2},1040)]),default:c(()=>[s("div",go,[l(d,{class:"closeButton",title:"Close Help (esc)",size:"x-large",onClick:t[0]||(t[0]=u=>a.dialog=!1)}),bo,s("div",yo,[wo,l(St,{id:"fieldTable",class:"highlight-table"},{default:c(()=>[So,s("tbody",null,[(r(!0),_(M,null,R(a.FIELD_ROWS,u=>(r(),_("tr",{key:u[0]},[s("td",null,f(u[0]),1),s("td",null,f(u[1]),1),s("td",vo,f(u[2]||""),1)]))),128))])]),_:1})]),s("div",Co,[Bo,s("p",null,[i(" Codex uses the Whoosh search engine to execute your text search queries. Whoosh operates much like other familiar search engines. As such, only some special features are documented on this page. To understand its full power, users are encouraged to read the "),s("a",ko,[i("Whoosh Query Language "),l(v,{size:"small"},{default:c(()=>[i(f(a.mdiOpenInNew),1)]),_:1})]),i(" documentation. ")]),To,i(" Whoosh has the "),Vo,i(", "),Mo,i(", "),$o,i(", "),Io,i(", "),Ro,i(", and "),xo,i(" operators. "),No,Fo,Po,s("p",null,[i(" Whoosh parses Dates and DateTime values liberally. Read "),s("a",Lo,[i("Whoosh Parsing Date Queries "),l(v,{size:"small"},{default:c(()=>[i(f(a.mdiOpenInNew),1)]),_:1})]),i(" documentation for what formats and natural language phrases are accepted. If the format you try fails, the "),Oo,i(" and "),Do,i(" formats are reliable. ")]),Ho,Uo,Go,Ao,Eo,qo,zo,jo,i(". "),Yo,Wo,i(". "),Qo,Ko,Xo,Jo,Zo,es,ts,os,ss,rs,ns,is,as,ls]),l(d,{class:"closeButton",title:"Close Help (esc)",size:"x-large",onClick:t[1]||(t[1]=u=>a.dialog=!1)})])]),_:1},8,["modelValue"])}const we=w(fo,[["render",us],["__scopeId","data-v-c01a7fc6"]]),ds=[{value:10,title:"10"},{value:100,title:"100 (one page)"},{value:0,title:"Unlimited"}],cs={name:"BrowserSettingsPanel",components:{SearchHelp:we},data(){return{SEARCH_LIMIT_CHOICES:ds}},computed:{...V(I,["isCodexViewable"]),...S(p,{groupChoices:e=>e.choices.static.settingsGroup,searchResultsLimit:e=>e.settings.searchResultsLimit,showSettings:e=>e.settings.show,twentyFourHourTime:e=>e.settings.twentyFourHourTime,twentyFourHourTimeTitle:e=>e.choices.static.twentyFourHourTime.title})},methods:{...B(p,["setSettings"]),setShow(e,t){const n={show:{[e]:t===!0}};this.setSettings(n)},set24HourTime(e){const t={twentyFourHourTime:e===!0};this.setSettings(t)},setSearchResultsLimit(e){const t={searchResultsLimit:e||0};this.setSettings(t)}}},ms=e=>(O("data-v-78ab2edc"),e=e(),D(),e),hs=ms(()=>s("div",{id:"groupCaption",class:"text-caption"}," Show these groups when navigating the browse tree. ",-1));function ps(e,t,n,g,a,o){const d=we;return r(),_(M,null,[hs,(r(!0),_(M,null,R(e.groupChoices,u=>(r(),h(X,{key:u.title,class:"browserGroupCheckbox",density:"compact","hide-details":"auto","model-value":e.showSettings[u.value],"true-value":!0,label:`Show ${u.title}`,"onUpdate:modelValue":b=>o.setShow(u.value,b)},null,8,["model-value","label","onUpdate:modelValue"]))),128)),l(P),l(Bt,{class:"searchResultsRadioGroup",density:"compact",label:"Search Results Limit","hide-details":"auto","model-value":e.searchResultsLimit,"onUpdate:modelValue":t[0]||(t[0]=u=>o.setSearchResultsLimit(u))},{default:c(()=>[(r(!0),_(M,null,R(a.SEARCH_LIMIT_CHOICES,u=>(r(),h(Ct,{key:u.value,class:"searchResultsRadio",label:u.title,value:u.value},null,8,["label","value"]))),128))]),_:1},8,["model-value"]),l(d),l(P),l(X,{class:"browserGroupCheckbox",density:"compact","hide-details":"auto","model-value":e.twentyFourHourTime,"true-value":!0,indeterminate:"",label:"Force 24 Hour Time","onUpdate:modelValue":t[1]||(t[1]=u=>o.set24HourTime(u))},null,8,["model-value"])],64)}const _s=w(cs,[["render",ps],["__scopeId","data-v-78ab2edc"]]),fs=new Set(["community_rating","critical_rating"]),gs=new Set(["date"]),bs=new Set(["bookmark_updated_at","created_at","updated_at"]),ys={name:"OrderByCaption",props:{item:{type:Object,required:!0}},computed:{...S(p,{orderBy:e=>e.settings.orderBy,twentyFourHourTime:e=>e.settings.twentyFourHourTime,topGroup:e=>e.settings.topGroup}),orderValue(){let e=this.item.orderValue;try{if(this.orderBy===void 0||this.orderBy===null||this.orderBy==="sort_name"&&(this.item.group!=="c"||this.topGroup!=="f")||e===null||e===void 0)e="";else if(gs.has(this.orderBy)){const t=new Date(e);e=Ke.format(t)}else this.orderBy=="search_score"?e=W.format(Math.round(Number.parseFloat(e)*10)):bs.has(this.orderBy)?e=Xe(e,this.twentyFourHourTime,!0):this.orderBy=="page_count"?e=`${W.format(e)} pages`:this.orderBy=="size"?e=$e(Number.parseInt(e,10)):fs.has(this.orderBy)&&(e=`★ ${e}`)}catch(t){console.debug(t)}return e}}},ws=["innerHTML"];function Ss(e,t,n,g,a,o){return o.orderValue?(r(),_("div",{key:0,class:"orderCaption text-caption",innerHTML:o.orderValue},null,8,ws)):y("",!0)}const Se=w(ys,[["render",Ss],["__scopeId","data-v-f1907410"]]),vs={name:"BrowserContainerMenu",components:{ConfirmDialog:me},props:{item:{type:Object,required:!0}},data(){return{mdiDotsVertical:Je,showMenu:!1}},computed:{...S(p,{groupNames:e=>e.choices.static.groupNames}),verb(){return this.item.finished?"Unread":"Read"},confirmText(){return`Mark ${this.verb}`},markReadText(){const e=["Mark"];this.item.group!="c"&&e.push("Entire");let t=this.groupNames[this.item.group];return this.item.group!=="s"&&(t=t.slice(0,-1)),e.push(t,this.verb),e.join(" ")}},methods:{...B(p,["setBookmarkFinished"]),...B(q,["downloadIOSPWAFix"]),toggleRead:function(){this.setBookmarkFinished(this.item,!this.item.finished),this.showMenu=!1}}},Cs={class:"background-soft-highlight"};function Bs(e,t,n,g,a,o){const d=me;return r(),h(gt,{modelValue:a.showMenu,"onUpdate:modelValue":t[2]||(t[2]=u=>a.showMenu=u),"offset-y":"",top:""},{activator:c(({props:u})=>[l(G,x({"aria-label":"action menu",class:"browserCardMenuIcon cardControlButton",icon:"",title:"Action Menu",variant:"text"},u,{onClick:t[0]||(t[0]=Ze(()=>{},["prevent"]))}),{default:c(()=>[l(v,null,{default:c(()=>[i(f(a.mdiDotsVertical),1)]),_:1})]),_:2},1040)]),default:c(()=>[s("div",Cs,[n.item.group==="c"?(r(),h(k,{key:0,onClick:o.toggleRead},{default:c(()=>[l(F,null,{default:c(()=>[i(f(o.markReadText),1)]),_:1})]),_:1},8,["onClick"])):(r(),h(d,{key:1,"button-text":o.markReadText,"title-text":o.markReadText,"confirm-text":o.confirmText,"object-name":n.item.name,onConfirm:o.toggleRead,onCancel:t[1]||(t[1]=u=>a.showMenu=!1)},null,8,["button-text","title-text","confirm-text","object-name","onConfirm"]))])]),_:1},8,["modelValue"])}const ve=w(vs,[["render",Bs]]),ks={name:"BrowserCardControls",components:{BrowserCardMenu:ve,MetadataButton:Ie},props:{item:{type:Object,required:!0},eyeOpen:{type:Boolean,required:!0}},data(){return{mdiEye:Q,mdiEyeOff:K}},computed:{eyeIcon:function(){return this.eyeOpen?Q:K}}},Ts={class:"cardControls"};function Vs(e,t,n,g,a,o){const d=C("MetadataButton"),u=ve;return r(),_("div",Ts,[n.item.group==="c"?(r(),h(v,{key:0,class:"eye"},{default:c(()=>[i(f(o.eyeIcon),1)]),_:1})):y("",!0),l(d,{group:n.item.group,book:n.item,children:n.item.childCount},null,8,["group","book","children"]),l(u,{item:n.item},null,8,["item"])])}const Ms=w(ks,[["render",Vs],["__scopeId","data-v-c2d95d7f"]]),$s={name:"BrowserCardSubtitle",props:{item:{type:Object,required:!0}},computed:{...S(p,{orderByName:e=>e.settings.orderBy=="sort_name",topGroup:e=>e.settings.topGroup,showSeries:e=>e.settings.show.s,showVolume:e=>e.settings.show.v,zeroPad:e=>e.page.zeroPad}),seriesName(){return(this.topGroup==="a"||this.orderByName&&!this.showSeries)&&["c","v"].includes(this.item.group)&&this.item.seriesName?this.item.seriesName:!1},volumeName(){return(this.topGroup==="a"||this.orderByName&&!this.showVolume)&&this.item.group==="c"&&this.item.volumeName?U(this.item.volumeName):!1},headerName:function(){let e;switch(this.item.group){case"i":e=this.item.publisherName;break;case"v":e=this.item.seriesName;break;case"c":e=this.$route.params.group==="f"?ke(this.item,this.zeroPad):Te(this.item,this.zeroPad);break;default:e=""}return e},displayName:function(){return this.item.group==="v"?U(this.item.name):this.item.name},linkLabel:function(){let e="";return e+=this.item.group==="c"?"Read":"Browse to",e+=" "+this.headerName,e}}},Is={class:"browserLink cardSubtitle text-caption"},Rs={key:0,class:"seriesCaption"},xs={key:1,class:"volumeCaption"},Ns={key:2,class:"headerName"},Fs={class:"displayName"};function Ps(e,t,n,g,a,o){return r(),_("div",Is,[o.seriesName?(r(),_("div",Rs,f(o.seriesName),1)):y("",!0),o.volumeName?(r(),_("div",xs,f(o.volumeName),1)):y("",!0),o.headerName?(r(),_("div",Ns,f(o.headerName),1)):y("",!0),s("div",Fs,f(o.displayName),1)])}const Ls=w($s,[["render",Ps],["__scopeId","data-v-33504043"]]),Os=new Set(["iPad","iPad Simulator","iPhone","iPhone Simulator","iPod","iPod Simulator"]),Ds=Os.has(navigator.platform),Hs="ontouchstart"in window||navigator.maxTouchPoints>0||navigator.msMaxTouchPoints>0||window.matchMedia("(any-hover: none)").matches,Us=et({modelValue:Boolean,options:{type:Object,default:()=>({root:void 0,rootMargin:void 0,threshold:void 0})},...tt(),...ot(),...st(),...rt({transition:"fade-transition"})},"VLazy"),Gs=nt()({name:"VLazy",directives:{intersect:it},props:Us(),emits:{"update:modelValue":e=>!0},setup(e,t){let{slots:n}=t;const{dimensionStyles:g}=at(e),a=lt(e,"modelValue");function o(d){a.value||(a.value=d)}return ut(()=>ce(l(e.tag,{class:["v-lazy",e.class],style:[g.value,e.style]},{default:()=>[a.value&&l(ct,{transition:e.transition,appear:!0},{default:()=>{var d;return[(d=n.default)==null?void 0:d.call(n)]}})]}),[[dt("intersect"),{handler:o,options:e.options},null]])),{}}}),Z=100,As=-170,Es={name:"BrowserCard",components:{BookCover:ne,BrowserCardControls:Ms,BrowserCardSubtitle:Ls,OrderByCaption:Se},props:{item:{type:Object,required:!0}},data(){return{doubleTapHovered:!Hs||Ds}},computed:{...S(p,{importMetadata:e=>e.page.adminFlags.importMetadata}),linkLabel:function(){let e="";return e+=this.item.group==="c"?"Read":"Browse to",e+=" "+this.item.headerName,e},toRoute:function(){return this.doubleTapHovered?this.item.group==="c"?Re(this.item,this.importMetadata):{name:"browser",params:{group:this.item.group,pk:this.item.pk,page:1}}:{}},progressBackgroundColor:function(){return this.item.progress?this.$vuetify.theme.current.colors.row:"inherit"}},mounted(){this.scrollToMe()},methods:{scrollToMe:function(){if(!this.$route.hash||this.$route.hash.split("-")[1]!==String(this.item.pk))return;const e=this.$el;if(!e){console.warn("No element found to scroll to!");return}setTimeout(function(){e.scrollIntoView(),setTimeout(function(){window.scrollBy(0,As)},Z)},Z)}}},qs={class:"browserCardTop"},zs={key:1,class:"cardCoverOverlay"};function js(e,t,n,g,a,o){const d=ne,u=C("BrowserCardControls"),b=C("router-link"),$=C("BrowserCardSubtitle"),N=Se;return r(),h(Gs,{id:`card-${n.item.pk}`,transition:"scale-transition"},{default:c(()=>[s("div",{class:"browserCardCoverWrapper",onClick:t[0]||(t[0]=j=>a.doubleTapHovered=!0)},[s("div",qs,[l(d,{"cover-pk":n.item.coverPk,group:n.item.group,"child-count":n.item.childCount,finished:n.item.finished},null,8,["cover-pk","group","child-count","finished"]),o.toRoute?(r(),h(b,{key:0,class:"cardCoverOverlay",to:o.toRoute,"aria-label":o.linkLabel},{default:c(()=>[l(u,{item:n.item,"eye-open":!0},null,8,["item"])]),_:1},8,["to","aria-label"])):(r(),_("div",zs,[l(u,{item:n.item,"eye-open":!1},null,8,["item"])])),ce(l(E,{class:"bookCoverProgress","background-color":o.progressBackgroundColor,"model-value":n.item.progress,"aria-label":`${n.item.progress}% read`,rounded:"",height:"2"},null,8,["background-color","model-value","aria-label"]),[[mt,n.item.progress]]),l($,{item:n.item},null,8,["item"])]),l(N,{item:n.item},null,8,["item"])])]),_:1},8,["id"])}const Ys=w(Es,[["render",js],["__scopeId","data-v-7f56bc86"]]),Ws={name:"BrowserMain",components:{BrowserCard:Ys,PlaceholderLoading:ie},data(){return{mdiMenu:ht,mdiOpenInNew:de}},computed:{...S(I,{adminFlags:e=>e.adminFlags}),...V(I,["isUserAdmin","isCodexViewable"]),...S(p,{librariesExist:e=>e.page.librariesExist,showPlaceHolder(e){return this.adminFlags.nonUsers===void 0||this.isCodexViewable&&(this.librariesExist==null||!e.browserPageLoaded)},searchQueryText:e=>e.settings.q,searchResultsLimit:e=>e.settings.searchResultsLimit,cards:e=>[...e.page.groups??[],...e.page.books??[]],padFooter:e=>e.page.numPages>1}),showBrowseItems(){return this.cards&&this.cards.length>0&&this.isCodexViewable&&!this.showPlaceHolder},searchLimitMessage(){let e="";return this.searchQueryText&&(this.searchResultsLimit?e=`Search query results limited to ${this.searchResultsLimit} entries`:e="Search results may be limited in the side bar to load faster"),e}}},z=e=>(O("data-v-4ffde245"),e=e(),D(),e),Qs={key:0,id:"browsePaneContainer"},Ks={key:1,id:"announce"},Xs={key:2,id:"announce"},Js={key:0},Zs={key:0},er={key:3,id:"announce"},tr=z(()=>s("div",{id:"noComicsFound"},"No comics found for these filters",-1)),or=[tr],sr={key:4,id:"announce"},rr=z(()=>s("h1",null,"No libraries have been added to Codex yet",-1)),nr={key:0},ir={key:1},ar=z(()=>s("h2",null," An administrator must login to add some libraries that contain comics ",-1)),lr={href:"https://github.com/ajslater/codex#-administration",target:"_blank"},ur={key:5,id:"searchLimitMessage",title:"You may change this in the settings drawer"};function dr(e,t,n,g,a,o){const d=C("BrowserCard"),u=ie;return r(),h(he,{id:"browsePane",class:L({padFooter:e.padFooter})},{default:c(()=>[o.showBrowseItems?(r(),_("div",Qs,[(r(!0),_(M,null,R(e.cards,b=>(r(),h(d,{key:`${b.group}${b.pk}`,item:b},null,8,["item"]))),128))])):e.showPlaceHolder?(r(),_("div",Ks,[l(u,{class:"placeholder"})])):e.isCodexViewable?e.librariesExist?(r(),_("div",er,or)):(r(),_("div",sr,[rr,e.isUserAdmin?(r(),_("h2",nr,[i(" Use the top right "),l(v,null,{default:c(()=>[i(f(a.mdiMenu),1)]),_:1}),i(" menu to navigate to the admin panel and add a comic library. ")])):(r(),_("div",ir,[ar,s("h3",null,[i(" You may log in or register with the top right "),l(v,null,{default:c(()=>[i(f(a.mdiMenu),1)]),_:1}),i("menu ")])])),s("a",lr,[i("See the README "),l(v,null,{default:c(()=>[i(f(a.mdiOpenInNew),1)]),_:1})]),i(" for detailed instructions. ")])):(r(),_("div",Xs,[s("h1",null,[i(" You may log in "),e.adminFlags.register?(r(),_("span",Js,"or register")):y("",!0),i(" with the top right "),l(v,null,{default:c(()=>[i(f(a.mdiMenu),1)]),_:1}),i(" menu ")]),e.adminFlags.register?y("",!0):(r(),_("h1",Zs,"Registration is disabled"))])),o.searchLimitMessage?(r(),_("div",ur,f(o.searchLimitMessage),1)):y("",!0)]),_:1},8,["class"])}const cr=w(Ws,[["render",dr],["__scopeId","data-v-4ffde245"]]),mr={name:"MainBrowser",components:{BrowserTopToolbar:ye,BrowserMain:cr,BrowserNavToolbar:_e,BrowserTitleToolbar:be,SettingsDrawer:te},data(){return{BrowserSettingsPanel:pt(_s)}},computed:{...S(I,{user:e=>e.user}),...V(I,["isCodexViewable"])},watch:{$route:function(){window.scrollTo(0,0),this.loadBrowserPage()},user:function(){this.loadSettings()},isCodexViewable:function(){this.loadSettings()}},created(){q().isSettingsDrawerOpen=!1,this.loadSettings()},methods:{...B(p,["loadBrowserPage","loadSettings","getVersions"])}},hr={class:"codexToolbar"};function pr(e,t,n,g,a,o){const d=ye,u=be,b=C("BrowserMain"),$=_e,N=te;return r(),_(M,null,[l(he,{id:"browser"},{default:c(()=>[s("header",hr,[l(d),l(u)]),l(b),l($)]),_:1}),l(N,{title:"Browser Settings",panel:a.BrowserSettingsPanel,temporary:""},null,8,["panel"])],64)}const Pr=w(mr,[["render",pr],["__scopeId","data-v-92361854"]]);export{Pr as default};