codex 1.8.12__py3-none-any.whl → 1.8.14__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of codex might be problematic. Click here for more details.
- codex/librarian/scribe/importer/const.py +4 -3
- codex/librarian/scribe/importer/read/const.py +1 -0
- codex/librarian/scribe/importer/read/foreign_keys.py +20 -14
- codex/signals/os_signals.py +8 -3
- codex/static_root/assets/VCheckbox-DSiToISz.36b2c3106f70.js +1 -0
- codex/static_root/assets/VCheckbox-DSiToISz.36b2c3106f70.js.br +0 -0
- codex/static_root/assets/VCheckbox-DSiToISz.36b2c3106f70.js.gz +0 -0
- codex/static_root/assets/VCheckbox-DSiToISz.js +1 -0
- codex/static_root/assets/VCheckbox-DSiToISz.js.br +0 -0
- codex/static_root/assets/VCheckbox-DSiToISz.js.gz +0 -0
- codex/static_root/assets/{VCheckboxBtn-CmvquRAN.e7da40760708.js → VCheckboxBtn-CYmOhPsT.064f0ca6833f.js} +1 -1
- codex/static_root/assets/VCheckboxBtn-CYmOhPsT.064f0ca6833f.js.br +0 -0
- codex/static_root/assets/VCheckboxBtn-CYmOhPsT.064f0ca6833f.js.gz +0 -0
- codex/static_root/assets/{VCheckboxBtn-CmvquRAN.js → VCheckboxBtn-CYmOhPsT.js} +1 -1
- codex/static_root/assets/VCheckboxBtn-CYmOhPsT.js.br +0 -0
- codex/static_root/assets/VCheckboxBtn-CYmOhPsT.js.gz +0 -0
- codex/static_root/assets/VCombobox-BPA3Li01.560d65a1fd9e.js +1 -0
- codex/static_root/assets/VCombobox-BPA3Li01.560d65a1fd9e.js.br +0 -0
- codex/static_root/assets/VCombobox-BPA3Li01.560d65a1fd9e.js.gz +0 -0
- codex/static_root/assets/VCombobox-BPA3Li01.js +1 -0
- codex/static_root/assets/VCombobox-BPA3Li01.js.br +0 -0
- codex/static_root/assets/VCombobox-BPA3Li01.js.gz +0 -0
- codex/static_root/assets/VCombobox-D3yUbBJX.341d3f641979.css +1 -0
- codex/static_root/assets/VCombobox-D3yUbBJX.341d3f641979.css.br +0 -0
- codex/static_root/assets/VCombobox-D3yUbBJX.341d3f641979.css.gz +0 -0
- codex/static_root/assets/VCombobox-D3yUbBJX.css +1 -0
- codex/static_root/assets/VCombobox-D3yUbBJX.css.br +0 -0
- codex/static_root/assets/VCombobox-D3yUbBJX.css.gz +0 -0
- codex/static_root/assets/VDialog-BFf48e97.3689a9d36779.js +1 -0
- codex/static_root/assets/VDialog-BFf48e97.3689a9d36779.js.br +0 -0
- codex/static_root/assets/VDialog-BFf48e97.3689a9d36779.js.gz +0 -0
- codex/static_root/assets/VDialog-BFf48e97.js +1 -0
- codex/static_root/assets/VDialog-BFf48e97.js.br +0 -0
- codex/static_root/assets/VDialog-BFf48e97.js.gz +0 -0
- codex/static_root/assets/{VDialog-CpWjrJ0R.610ffc6302d4.css → VDialog-cfA1435M.9d74582347d0.css} +1 -1
- codex/static_root/assets/VDialog-cfA1435M.9d74582347d0.css.br +0 -0
- codex/static_root/assets/VDialog-cfA1435M.9d74582347d0.css.gz +0 -0
- codex/static_root/assets/{VDialog-CpWjrJ0R.css → VDialog-cfA1435M.css} +1 -1
- codex/static_root/assets/VDialog-cfA1435M.css.br +0 -0
- codex/static_root/assets/VDialog-cfA1435M.css.gz +0 -0
- codex/static_root/assets/VDivider-Dtis_q2S.9e74f9b00677.js +1 -0
- codex/static_root/assets/VDivider-Dtis_q2S.9e74f9b00677.js.br +0 -0
- codex/static_root/assets/VDivider-Dtis_q2S.9e74f9b00677.js.gz +0 -0
- codex/static_root/assets/VDivider-Dtis_q2S.js +1 -0
- codex/static_root/assets/VDivider-Dtis_q2S.js.br +0 -0
- codex/static_root/assets/VDivider-Dtis_q2S.js.gz +0 -0
- codex/static_root/assets/VExpansionPanels-B8KjM0Qi.css +1 -0
- codex/static_root/assets/VExpansionPanels-B8KjM0Qi.css.br +0 -0
- codex/static_root/assets/VExpansionPanels-B8KjM0Qi.css.gz +0 -0
- codex/static_root/assets/VExpansionPanels-B8KjM0Qi.e4aca21014f2.css +1 -0
- codex/static_root/assets/VExpansionPanels-B8KjM0Qi.e4aca21014f2.css.br +0 -0
- codex/static_root/assets/VExpansionPanels-B8KjM0Qi.e4aca21014f2.css.gz +0 -0
- codex/static_root/assets/VExpansionPanels-DFJglYob.df0a5305e017.js +1 -0
- codex/static_root/assets/VExpansionPanels-DFJglYob.df0a5305e017.js.br +0 -0
- codex/static_root/assets/VExpansionPanels-DFJglYob.df0a5305e017.js.gz +0 -0
- codex/static_root/assets/VExpansionPanels-DFJglYob.js +1 -0
- codex/static_root/assets/VExpansionPanels-DFJglYob.js.br +0 -0
- codex/static_root/assets/VExpansionPanels-DFJglYob.js.gz +0 -0
- codex/static_root/assets/{VForm-DxSBwqZJ.ac95f820d0ef.js → VForm-BNXhV_uk.f87afb6d84da.js} +1 -1
- codex/static_root/assets/VForm-BNXhV_uk.f87afb6d84da.js.br +0 -0
- codex/static_root/assets/VForm-BNXhV_uk.f87afb6d84da.js.gz +0 -0
- codex/static_root/assets/{VForm-DxSBwqZJ.js → VForm-BNXhV_uk.js} +1 -1
- codex/static_root/assets/VForm-BNXhV_uk.js.br +0 -0
- codex/static_root/assets/VForm-BNXhV_uk.js.gz +0 -0
- codex/static_root/assets/{VRadioGroup-BWhV6-Ik.9a12480f7db9.js → VRadioGroup-BlGhrl3W.93a79cebc3eb.js} +1 -1
- codex/static_root/assets/VRadioGroup-BlGhrl3W.93a79cebc3eb.js.br +0 -0
- codex/static_root/assets/VRadioGroup-BlGhrl3W.93a79cebc3eb.js.gz +0 -0
- codex/static_root/assets/{VRadioGroup-BWhV6-Ik.js → VRadioGroup-BlGhrl3W.js} +1 -1
- codex/static_root/assets/VRadioGroup-BlGhrl3W.js.br +0 -0
- codex/static_root/assets/VRadioGroup-BlGhrl3W.js.gz +0 -0
- codex/static_root/assets/{VSelect-DQPZyfSb.57477277e7dd.css → VSelect-BvTTr4RP.be69766e6916.css} +1 -1
- codex/static_root/assets/VSelect-BvTTr4RP.be69766e6916.css.br +0 -0
- codex/static_root/assets/VSelect-BvTTr4RP.be69766e6916.css.gz +0 -0
- codex/static_root/assets/{VSelect-DQPZyfSb.css → VSelect-BvTTr4RP.css} +1 -1
- codex/static_root/assets/VSelect-BvTTr4RP.css.br +0 -0
- codex/static_root/assets/VSelect-BvTTr4RP.css.gz +0 -0
- codex/static_root/assets/VSelect-DIXHkKJm.22846e456715.js +1 -0
- codex/static_root/assets/VSelect-DIXHkKJm.22846e456715.js.br +0 -0
- codex/static_root/assets/VSelect-DIXHkKJm.22846e456715.js.gz +0 -0
- codex/static_root/assets/VSelect-DIXHkKJm.js +1 -0
- codex/static_root/assets/VSelect-DIXHkKJm.js.br +0 -0
- codex/static_root/assets/VSelect-DIXHkKJm.js.gz +0 -0
- codex/static_root/assets/VSelectionControl-R4GtShoa.css +1 -0
- codex/static_root/assets/VSelectionControl-R4GtShoa.css.br +0 -0
- codex/static_root/assets/VSelectionControl-R4GtShoa.css.gz +0 -0
- codex/static_root/assets/VSelectionControl-R4GtShoa.f3ebc2149a3a.css +1 -0
- codex/static_root/assets/VSelectionControl-R4GtShoa.f3ebc2149a3a.css.br +0 -0
- codex/static_root/assets/VSelectionControl-R4GtShoa.f3ebc2149a3a.css.gz +0 -0
- codex/static_root/assets/VSelectionControl-xYnmeS9J.279721e1b13d.js +1 -0
- codex/static_root/assets/VSelectionControl-xYnmeS9J.279721e1b13d.js.br +0 -0
- codex/static_root/assets/VSelectionControl-xYnmeS9J.279721e1b13d.js.gz +0 -0
- codex/static_root/assets/VSelectionControl-xYnmeS9J.js +1 -0
- codex/static_root/assets/VSelectionControl-xYnmeS9J.js.br +0 -0
- codex/static_root/assets/VSelectionControl-xYnmeS9J.js.gz +0 -0
- codex/static_root/assets/{VTable-XDHc7lys.0f7c71a2ef3b.js → VTable-BK7gXlps.d1758b79332d.js} +1 -1
- codex/static_root/assets/VTable-BK7gXlps.d1758b79332d.js.br +0 -0
- codex/static_root/assets/VTable-BK7gXlps.d1758b79332d.js.gz +0 -0
- codex/static_root/assets/{VTable-XDHc7lys.js → VTable-BK7gXlps.js} +1 -1
- codex/static_root/assets/VTable-BK7gXlps.js.br +0 -0
- codex/static_root/assets/VTable-BK7gXlps.js.gz +0 -0
- codex/static_root/assets/VWindowItem-0tN6eYpd.773c981aa12a.js +1 -0
- codex/static_root/assets/VWindowItem-0tN6eYpd.773c981aa12a.js.br +0 -0
- codex/static_root/assets/VWindowItem-0tN6eYpd.773c981aa12a.js.gz +0 -0
- codex/static_root/assets/VWindowItem-0tN6eYpd.js +1 -0
- codex/static_root/assets/VWindowItem-0tN6eYpd.js.br +0 -0
- codex/static_root/assets/VWindowItem-0tN6eYpd.js.gz +0 -0
- codex/static_root/assets/VWindowItem-CWv03gfN.css +1 -0
- codex/static_root/assets/VWindowItem-CWv03gfN.css.br +0 -0
- codex/static_root/assets/VWindowItem-CWv03gfN.css.gz +0 -0
- codex/static_root/assets/VWindowItem-CWv03gfN.ddad20bc51ba.css +1 -0
- codex/static_root/assets/VWindowItem-CWv03gfN.ddad20bc51ba.css.br +0 -0
- codex/static_root/assets/VWindowItem-CWv03gfN.ddad20bc51ba.css.gz +0 -0
- codex/static_root/assets/admin-BSeSK58M.5e0ec404b68a.js +1 -0
- codex/static_root/assets/admin-BSeSK58M.5e0ec404b68a.js.br +0 -0
- codex/static_root/assets/admin-BSeSK58M.5e0ec404b68a.js.gz +0 -0
- codex/static_root/assets/admin-BSeSK58M.js +1 -0
- codex/static_root/assets/admin-BSeSK58M.js.br +0 -0
- codex/static_root/assets/admin-BSeSK58M.js.gz +0 -0
- codex/static_root/assets/{admin-B8FOS3y0.7854efcc062c.js → admin-C6VbbEgi.1b7afd86e270.js} +1 -1
- codex/static_root/assets/admin-C6VbbEgi.1b7afd86e270.js.br +0 -0
- codex/static_root/assets/admin-C6VbbEgi.1b7afd86e270.js.gz +0 -0
- codex/static_root/assets/{admin-B8FOS3y0.js → admin-C6VbbEgi.js} +1 -1
- codex/static_root/assets/admin-C6VbbEgi.js.br +0 -0
- codex/static_root/assets/admin-C6VbbEgi.js.gz +0 -0
- codex/static_root/assets/{admin-menu-CowNEAHz.00a2856c8342.js → admin-menu-CJIeXccy.a8f894508762.js} +1 -1
- codex/static_root/assets/admin-menu-CJIeXccy.a8f894508762.js.br +0 -0
- codex/static_root/assets/admin-menu-CJIeXccy.a8f894508762.js.gz +0 -0
- codex/static_root/assets/{admin-menu-CowNEAHz.js → admin-menu-CJIeXccy.js} +1 -1
- codex/static_root/assets/admin-menu-CJIeXccy.js.br +0 -0
- codex/static_root/assets/admin-menu-CJIeXccy.js.gz +0 -0
- codex/static_root/assets/{admin-settings-button-progress-Fn6FLZKO.ba02b3db9f08.js → admin-settings-button-progress-vOeMypwd.5db8039f1f8b.js} +1 -1
- codex/static_root/assets/admin-settings-button-progress-vOeMypwd.5db8039f1f8b.js.br +3 -0
- codex/static_root/assets/admin-settings-button-progress-vOeMypwd.5db8039f1f8b.js.gz +0 -0
- codex/static_root/assets/{admin-settings-button-progress-Fn6FLZKO.js → admin-settings-button-progress-vOeMypwd.js} +1 -1
- codex/static_root/assets/admin-settings-button-progress-vOeMypwd.js.br +3 -0
- codex/static_root/assets/admin-settings-button-progress-vOeMypwd.js.gz +0 -0
- codex/static_root/assets/browser-CKD3rgcs.31efed76525d.js +1 -0
- codex/static_root/assets/browser-CKD3rgcs.31efed76525d.js.br +0 -0
- codex/static_root/assets/browser-CKD3rgcs.31efed76525d.js.gz +0 -0
- codex/static_root/assets/browser-CKD3rgcs.js +1 -0
- codex/static_root/assets/browser-CKD3rgcs.js.br +0 -0
- codex/static_root/assets/browser-CKD3rgcs.js.gz +0 -0
- codex/static_root/assets/change-password-dialog-DoBLv9WU.2f5b656e6981.js +1 -0
- codex/static_root/assets/change-password-dialog-DoBLv9WU.2f5b656e6981.js.br +0 -0
- codex/static_root/assets/change-password-dialog-DoBLv9WU.2f5b656e6981.js.gz +0 -0
- codex/static_root/assets/change-password-dialog-DoBLv9WU.js +1 -0
- codex/static_root/assets/change-password-dialog-DoBLv9WU.js.br +0 -0
- codex/static_root/assets/change-password-dialog-DoBLv9WU.js.gz +0 -0
- codex/static_root/assets/{confirm-dialog-B5yPnYfL.1ff1c7580366.js → confirm-dialog-WKjj039l.7945cc0aca6f.js} +1 -1
- codex/static_root/assets/confirm-dialog-WKjj039l.7945cc0aca6f.js.br +0 -0
- codex/static_root/assets/confirm-dialog-WKjj039l.7945cc0aca6f.js.gz +0 -0
- codex/static_root/assets/{confirm-dialog-B5yPnYfL.js → confirm-dialog-WKjj039l.js} +1 -1
- codex/static_root/assets/confirm-dialog-WKjj039l.js.br +0 -0
- codex/static_root/assets/confirm-dialog-WKjj039l.js.gz +0 -0
- codex/static_root/assets/{datetime-column-BjtCGhs4.8cd255932c51.js → datetime-column-cHNNkd7r.0fa4cabd2ff5.js} +1 -1
- codex/static_root/assets/datetime-column-cHNNkd7r.0fa4cabd2ff5.js.br +1 -0
- codex/static_root/assets/datetime-column-cHNNkd7r.0fa4cabd2ff5.js.gz +0 -0
- codex/static_root/assets/{datetime-column-BjtCGhs4.js → datetime-column-cHNNkd7r.js} +1 -1
- codex/static_root/assets/datetime-column-cHNNkd7r.js.br +1 -0
- codex/static_root/assets/datetime-column-cHNNkd7r.js.gz +0 -0
- codex/static_root/assets/filter-Bu2xCEP4.d632e004db3e.js +1 -0
- codex/static_root/assets/filter-Bu2xCEP4.d632e004db3e.js.br +0 -0
- codex/static_root/assets/filter-Bu2xCEP4.d632e004db3e.js.gz +0 -0
- codex/static_root/assets/filter-Bu2xCEP4.js +1 -0
- codex/static_root/assets/filter-Bu2xCEP4.js.br +0 -0
- codex/static_root/assets/filter-Bu2xCEP4.js.gz +0 -0
- codex/static_root/assets/flag-tab-COY8uzS6.05e7ab1f0aef.js +1 -0
- codex/static_root/assets/flag-tab-COY8uzS6.05e7ab1f0aef.js.br +0 -0
- codex/static_root/assets/flag-tab-COY8uzS6.05e7ab1f0aef.js.gz +0 -0
- codex/static_root/assets/flag-tab-COY8uzS6.js +1 -0
- codex/static_root/assets/flag-tab-COY8uzS6.js.br +0 -0
- codex/static_root/assets/flag-tab-COY8uzS6.js.gz +0 -0
- codex/static_root/assets/forwardRefs-BXEe8ItZ.a2cf13851d8e.js +1 -0
- codex/static_root/assets/forwardRefs-BXEe8ItZ.a2cf13851d8e.js.br +0 -0
- codex/static_root/assets/forwardRefs-BXEe8ItZ.a2cf13851d8e.js.gz +0 -0
- codex/static_root/assets/forwardRefs-BXEe8ItZ.js +1 -0
- codex/static_root/assets/forwardRefs-BXEe8ItZ.js.br +0 -0
- codex/static_root/assets/forwardRefs-BXEe8ItZ.js.gz +0 -0
- codex/static_root/assets/forwardRefs-CecUXkvN.css +1 -0
- codex/static_root/assets/forwardRefs-CecUXkvN.css.br +0 -0
- codex/static_root/assets/forwardRefs-CecUXkvN.css.gz +0 -0
- codex/static_root/assets/forwardRefs-CecUXkvN.d595d41108e3.css +1 -0
- codex/static_root/assets/forwardRefs-CecUXkvN.d595d41108e3.css.br +0 -0
- codex/static_root/assets/forwardRefs-CecUXkvN.d595d41108e3.css.gz +0 -0
- codex/static_root/assets/{group-tab-BheHSkwp.5bae3d475496.js → group-tab-CqHKA3Rv.bd829d9ff902.js} +1 -1
- codex/static_root/assets/group-tab-CqHKA3Rv.bd829d9ff902.js.br +0 -0
- codex/static_root/assets/group-tab-CqHKA3Rv.bd829d9ff902.js.gz +0 -0
- codex/static_root/assets/{group-tab-BheHSkwp.js → group-tab-CqHKA3Rv.js} +1 -1
- codex/static_root/assets/group-tab-CqHKA3Rv.js.br +0 -0
- codex/static_root/assets/group-tab-CqHKA3Rv.js.gz +0 -0
- codex/static_root/assets/http-error-BAYySiBp.392f8e13b8a9.js +1 -0
- codex/static_root/assets/http-error-BAYySiBp.392f8e13b8a9.js.br +0 -0
- codex/static_root/assets/http-error-BAYySiBp.392f8e13b8a9.js.gz +0 -0
- codex/static_root/assets/http-error-BAYySiBp.js +1 -0
- codex/static_root/assets/http-error-BAYySiBp.js.br +0 -0
- codex/static_root/assets/http-error-BAYySiBp.js.gz +0 -0
- codex/static_root/assets/index-CuPwxeMJ.096be94db12c.js +1 -0
- codex/static_root/assets/index-CuPwxeMJ.096be94db12c.js.br +0 -0
- codex/static_root/assets/index-CuPwxeMJ.096be94db12c.js.gz +0 -0
- codex/static_root/assets/index-CuPwxeMJ.js +1 -0
- codex/static_root/assets/index-CuPwxeMJ.js.br +0 -0
- codex/static_root/assets/index-CuPwxeMJ.js.gz +0 -0
- codex/static_root/assets/{library-tab-DcF440Qi.8464c8a644eb.js → library-tab-DHtd9G39.a6068c595e8f.js} +1 -1
- codex/static_root/assets/library-tab-DHtd9G39.a6068c595e8f.js.br +0 -0
- codex/static_root/assets/library-tab-DHtd9G39.a6068c595e8f.js.gz +0 -0
- codex/static_root/assets/{library-tab-DcF440Qi.js → library-tab-DHtd9G39.js} +1 -1
- codex/static_root/assets/library-tab-DHtd9G39.js.br +0 -0
- codex/static_root/assets/library-tab-DHtd9G39.js.gz +0 -0
- codex/static_root/assets/{main-B8_0rUnw.a9be0875ae25.css → main-CZN13qLI.12debfe1e227.css} +1 -1
- codex/static_root/assets/main-CZN13qLI.12debfe1e227.css.br +0 -0
- codex/static_root/assets/{main-B8_0rUnw.a9be0875ae25.css.gz → main-CZN13qLI.12debfe1e227.css.gz} +0 -0
- codex/static_root/assets/{main-B8_0rUnw.css → main-CZN13qLI.css} +1 -1
- codex/static_root/assets/main-CZN13qLI.css.br +0 -0
- codex/static_root/assets/{main-B8_0rUnw.css.gz → main-CZN13qLI.css.gz} +0 -0
- codex/static_root/assets/main-d46UvpG6.9af3aed7efe8.js +39 -0
- codex/static_root/assets/main-d46UvpG6.9af3aed7efe8.js.br +0 -0
- codex/static_root/assets/main-d46UvpG6.9af3aed7efe8.js.gz +0 -0
- codex/static_root/assets/main-d46UvpG6.js +39 -0
- codex/static_root/assets/main-d46UvpG6.js.br +0 -0
- codex/static_root/assets/main-d46UvpG6.js.gz +0 -0
- codex/static_root/assets/pager-full-pdf-8uR2kH3x.2618772c88d6.js +1 -0
- codex/static_root/assets/pager-full-pdf-8uR2kH3x.2618772c88d6.js.br +0 -0
- codex/static_root/assets/pager-full-pdf-8uR2kH3x.2618772c88d6.js.gz +0 -0
- codex/static_root/assets/pager-full-pdf-8uR2kH3x.js +1 -0
- codex/static_root/assets/pager-full-pdf-8uR2kH3x.js.br +0 -0
- codex/static_root/assets/pager-full-pdf-8uR2kH3x.js.gz +0 -0
- codex/static_root/assets/{pagination-toolbar-CHsRqwrF.45e5d7271642.js → pagination-toolbar-Bj2tvIp6.b956898491b1.js} +1 -1
- codex/static_root/assets/pagination-toolbar-Bj2tvIp6.b956898491b1.js.br +0 -0
- codex/static_root/assets/pagination-toolbar-Bj2tvIp6.b956898491b1.js.gz +0 -0
- codex/static_root/assets/{pagination-toolbar-CHsRqwrF.js → pagination-toolbar-Bj2tvIp6.js} +1 -1
- codex/static_root/assets/pagination-toolbar-Bj2tvIp6.js.br +0 -0
- codex/static_root/assets/pagination-toolbar-Bj2tvIp6.js.gz +0 -0
- codex/static_root/assets/{pdf-doc-DfhEteIr.b37589840b4a.js → pdf-doc-CAzVDc80.440339054422.js} +1 -1
- codex/static_root/assets/pdf-doc-CAzVDc80.440339054422.js.br +0 -0
- codex/static_root/assets/pdf-doc-CAzVDc80.440339054422.js.gz +0 -0
- codex/static_root/assets/{pdf-doc-DfhEteIr.js → pdf-doc-CAzVDc80.js} +1 -1
- codex/static_root/assets/pdf-doc-CAzVDc80.js.br +0 -0
- codex/static_root/assets/pdf-doc-CAzVDc80.js.gz +0 -0
- codex/static_root/assets/{reader-DzF84pko.338d999961f3.js → reader-Bi_CT2rk.2048477e3d9a.js} +2 -2
- codex/static_root/assets/reader-Bi_CT2rk.2048477e3d9a.js.br +0 -0
- codex/static_root/assets/reader-Bi_CT2rk.2048477e3d9a.js.gz +0 -0
- codex/static_root/assets/{reader-DzF84pko.js → reader-Bi_CT2rk.js} +2 -2
- codex/static_root/assets/reader-Bi_CT2rk.js.br +0 -0
- codex/static_root/assets/reader-Bi_CT2rk.js.gz +0 -0
- codex/static_root/assets/relation-chips-D2XLYFHm.c0c38d2a39ae.js +1 -0
- codex/static_root/assets/relation-chips-D2XLYFHm.c0c38d2a39ae.js.br +0 -0
- codex/static_root/assets/relation-chips-D2XLYFHm.c0c38d2a39ae.js.gz +0 -0
- codex/static_root/assets/relation-chips-D2XLYFHm.js +1 -0
- codex/static_root/assets/relation-chips-D2XLYFHm.js.br +0 -0
- codex/static_root/assets/relation-chips-D2XLYFHm.js.gz +0 -0
- codex/static_root/assets/relation-chips-WaEhcyda.870ff99b3d8b.css +1 -0
- codex/static_root/assets/relation-chips-WaEhcyda.870ff99b3d8b.css.br +0 -0
- codex/static_root/assets/relation-chips-WaEhcyda.870ff99b3d8b.css.gz +0 -0
- codex/static_root/assets/relation-chips-WaEhcyda.css +1 -0
- codex/static_root/assets/relation-chips-WaEhcyda.css.br +0 -0
- codex/static_root/assets/relation-chips-WaEhcyda.css.gz +0 -0
- codex/static_root/assets/settings-drawer-CjqFmP5f.a1c27430b554.js +2 -0
- codex/static_root/assets/settings-drawer-CjqFmP5f.a1c27430b554.js.br +0 -0
- codex/static_root/assets/settings-drawer-CjqFmP5f.a1c27430b554.js.gz +0 -0
- codex/static_root/assets/settings-drawer-CjqFmP5f.js +2 -0
- codex/static_root/assets/settings-drawer-CjqFmP5f.js.br +0 -0
- codex/static_root/assets/settings-drawer-CjqFmP5f.js.gz +0 -0
- codex/static_root/assets/{settings-drawer-D7bFOc4_.9748ddd58be9.css → settings-drawer-d-7mkVdG.15838d8ecd33.css} +1 -1
- codex/static_root/assets/settings-drawer-d-7mkVdG.15838d8ecd33.css.br +0 -0
- codex/static_root/assets/settings-drawer-d-7mkVdG.15838d8ecd33.css.gz +0 -0
- codex/static_root/assets/{settings-drawer-D7bFOc4_.css → settings-drawer-d-7mkVdG.css} +1 -1
- codex/static_root/assets/settings-drawer-d-7mkVdG.css.br +0 -0
- codex/static_root/assets/settings-drawer-d-7mkVdG.css.gz +0 -0
- codex/static_root/assets/ssrBoot-Bn2PfqMS.a3d5b2b28349.js +1 -0
- codex/static_root/assets/ssrBoot-Bn2PfqMS.a3d5b2b28349.js.br +0 -0
- codex/static_root/assets/ssrBoot-Bn2PfqMS.a3d5b2b28349.js.gz +0 -0
- codex/static_root/assets/ssrBoot-Bn2PfqMS.js +1 -0
- codex/static_root/assets/ssrBoot-Bn2PfqMS.js.br +0 -0
- codex/static_root/assets/ssrBoot-Bn2PfqMS.js.gz +0 -0
- codex/static_root/assets/stats-tab-CQYF0r5W.3eeaa933ecfd.js +1 -0
- codex/static_root/assets/stats-tab-CQYF0r5W.3eeaa933ecfd.js.br +0 -0
- codex/static_root/assets/stats-tab-CQYF0r5W.3eeaa933ecfd.js.gz +0 -0
- codex/static_root/assets/stats-tab-CQYF0r5W.js +1 -0
- codex/static_root/assets/stats-tab-CQYF0r5W.js.br +0 -0
- codex/static_root/assets/stats-tab-CQYF0r5W.js.gz +0 -0
- codex/static_root/assets/task-tab-DZ6XCKiv.11d725b52725.js +1 -0
- codex/static_root/assets/task-tab-DZ6XCKiv.11d725b52725.js.br +0 -0
- codex/static_root/assets/task-tab-DZ6XCKiv.11d725b52725.js.gz +0 -0
- codex/static_root/assets/task-tab-DZ6XCKiv.js +1 -0
- codex/static_root/assets/task-tab-DZ6XCKiv.js.br +0 -0
- codex/static_root/assets/task-tab-DZ6XCKiv.js.gz +0 -0
- codex/static_root/assets/task-tab-DvSJmG8K.css +1 -0
- codex/static_root/assets/{task-tab-CW4DQ3KN.81812f9208e5.css.br → task-tab-DvSJmG8K.css.br} +1 -1
- codex/static_root/assets/task-tab-DvSJmG8K.css.gz +0 -0
- codex/static_root/assets/task-tab-DvSJmG8K.daf7fb2dfecf.css +1 -0
- codex/static_root/assets/{task-tab-CW4DQ3KN.css.br → task-tab-DvSJmG8K.daf7fb2dfecf.css.br} +1 -1
- codex/static_root/assets/task-tab-DvSJmG8K.daf7fb2dfecf.css.gz +0 -0
- codex/static_root/assets/unauthorized-B0KN5ef3.3e4c44632a20.js +1 -0
- codex/static_root/assets/unauthorized-B0KN5ef3.3e4c44632a20.js.br +0 -0
- codex/static_root/assets/unauthorized-B0KN5ef3.3e4c44632a20.js.gz +0 -0
- codex/static_root/assets/unauthorized-B0KN5ef3.js +1 -0
- codex/static_root/assets/unauthorized-B0KN5ef3.js.br +0 -0
- codex/static_root/assets/unauthorized-B0KN5ef3.js.gz +0 -0
- codex/static_root/assets/unauthorized-ChdZFt-1.8a4ba062faeb.css +1 -0
- codex/static_root/assets/unauthorized-ChdZFt-1.8a4ba062faeb.css.br +0 -0
- codex/static_root/assets/unauthorized-ChdZFt-1.8a4ba062faeb.css.gz +0 -0
- codex/static_root/assets/unauthorized-ChdZFt-1.css +1 -0
- codex/static_root/assets/unauthorized-ChdZFt-1.css.br +0 -0
- codex/static_root/assets/unauthorized-ChdZFt-1.css.gz +0 -0
- codex/static_root/assets/{user-tab-CBwvHAwM.aba98371e7eb.js → user-tab-WoOwFzFw.2e07ebc79118.js} +1 -1
- codex/static_root/assets/user-tab-WoOwFzFw.2e07ebc79118.js.br +0 -0
- codex/static_root/assets/user-tab-WoOwFzFw.2e07ebc79118.js.gz +0 -0
- codex/static_root/assets/{user-tab-CBwvHAwM.js → user-tab-WoOwFzFw.js} +1 -1
- codex/static_root/assets/user-tab-WoOwFzFw.js.br +0 -0
- codex/static_root/assets/user-tab-WoOwFzFw.js.gz +0 -0
- codex/static_root/manifest.69541e47c159.json +760 -0
- codex/static_root/manifest.69541e47c159.json.br +0 -0
- codex/static_root/manifest.69541e47c159.json.gz +0 -0
- codex/static_root/manifest.json +335 -335
- codex/static_root/manifest.json.br +0 -0
- codex/static_root/manifest.json.gz +0 -0
- codex/static_root/staticfiles.json +1 -1
- codex/views/browser/params.py +1 -1
- codex/views/reader/params.py +1 -1
- codex/views/settings.py +2 -1
- {codex-1.8.12.dist-info → codex-1.8.14.dist-info}/METADATA +3 -3
- {codex-1.8.12.dist-info → codex-1.8.14.dist-info}/RECORD +324 -324
- codex/static_root/assets/VCheckbox-mMixTHeh.d292a58d01be.js +0 -1
- codex/static_root/assets/VCheckbox-mMixTHeh.d292a58d01be.js.br +0 -0
- codex/static_root/assets/VCheckbox-mMixTHeh.d292a58d01be.js.gz +0 -0
- codex/static_root/assets/VCheckbox-mMixTHeh.js +0 -1
- codex/static_root/assets/VCheckbox-mMixTHeh.js.br +0 -0
- codex/static_root/assets/VCheckbox-mMixTHeh.js.gz +0 -0
- codex/static_root/assets/VCheckboxBtn-CmvquRAN.e7da40760708.js.br +0 -0
- codex/static_root/assets/VCheckboxBtn-CmvquRAN.e7da40760708.js.gz +0 -0
- codex/static_root/assets/VCheckboxBtn-CmvquRAN.js.br +0 -0
- codex/static_root/assets/VCheckboxBtn-CmvquRAN.js.gz +0 -0
- codex/static_root/assets/VCombobox-B-q89wJH.176455c7dbee.js +0 -1
- codex/static_root/assets/VCombobox-B-q89wJH.176455c7dbee.js.br +0 -0
- codex/static_root/assets/VCombobox-B-q89wJH.176455c7dbee.js.gz +0 -0
- codex/static_root/assets/VCombobox-B-q89wJH.js +0 -1
- codex/static_root/assets/VCombobox-B-q89wJH.js.br +0 -0
- codex/static_root/assets/VCombobox-B-q89wJH.js.gz +0 -0
- codex/static_root/assets/VCombobox-DHFthaP6.942336d23612.css +0 -1
- codex/static_root/assets/VCombobox-DHFthaP6.942336d23612.css.br +0 -0
- codex/static_root/assets/VCombobox-DHFthaP6.942336d23612.css.gz +0 -0
- codex/static_root/assets/VCombobox-DHFthaP6.css +0 -1
- codex/static_root/assets/VCombobox-DHFthaP6.css.br +0 -0
- codex/static_root/assets/VCombobox-DHFthaP6.css.gz +0 -0
- codex/static_root/assets/VDialog-CpWjrJ0R.610ffc6302d4.css.br +0 -0
- codex/static_root/assets/VDialog-CpWjrJ0R.610ffc6302d4.css.gz +0 -0
- codex/static_root/assets/VDialog-CpWjrJ0R.css.br +0 -0
- codex/static_root/assets/VDialog-CpWjrJ0R.css.gz +0 -0
- codex/static_root/assets/VDialog-VIXXkGcp.5df40dd559f6.js +0 -1
- codex/static_root/assets/VDialog-VIXXkGcp.5df40dd559f6.js.br +0 -0
- codex/static_root/assets/VDialog-VIXXkGcp.5df40dd559f6.js.gz +0 -0
- codex/static_root/assets/VDialog-VIXXkGcp.js +0 -1
- codex/static_root/assets/VDialog-VIXXkGcp.js.br +0 -0
- codex/static_root/assets/VDialog-VIXXkGcp.js.gz +0 -0
- codex/static_root/assets/VDivider-DZYqABoC.e1b49b0e84e7.js +0 -1
- codex/static_root/assets/VDivider-DZYqABoC.e1b49b0e84e7.js.br +0 -0
- codex/static_root/assets/VDivider-DZYqABoC.e1b49b0e84e7.js.gz +0 -0
- codex/static_root/assets/VDivider-DZYqABoC.js +0 -1
- codex/static_root/assets/VDivider-DZYqABoC.js.br +0 -0
- codex/static_root/assets/VDivider-DZYqABoC.js.gz +0 -0
- codex/static_root/assets/VExpansionPanels-Cfecx3wB.e58028ac7689.js +0 -1
- codex/static_root/assets/VExpansionPanels-Cfecx3wB.e58028ac7689.js.br +0 -0
- codex/static_root/assets/VExpansionPanels-Cfecx3wB.e58028ac7689.js.gz +0 -0
- codex/static_root/assets/VExpansionPanels-Cfecx3wB.js +0 -1
- codex/static_root/assets/VExpansionPanels-Cfecx3wB.js.br +0 -0
- codex/static_root/assets/VExpansionPanels-Cfecx3wB.js.gz +0 -0
- codex/static_root/assets/VExpansionPanels-RsCANmDP.5b17872981df.css +0 -1
- codex/static_root/assets/VExpansionPanels-RsCANmDP.5b17872981df.css.br +0 -0
- codex/static_root/assets/VExpansionPanels-RsCANmDP.5b17872981df.css.gz +0 -0
- codex/static_root/assets/VExpansionPanels-RsCANmDP.css +0 -1
- codex/static_root/assets/VExpansionPanels-RsCANmDP.css.br +0 -0
- codex/static_root/assets/VExpansionPanels-RsCANmDP.css.gz +0 -0
- codex/static_root/assets/VForm-DxSBwqZJ.ac95f820d0ef.js.br +0 -0
- codex/static_root/assets/VForm-DxSBwqZJ.ac95f820d0ef.js.gz +0 -0
- codex/static_root/assets/VForm-DxSBwqZJ.js.br +0 -0
- codex/static_root/assets/VForm-DxSBwqZJ.js.gz +0 -0
- codex/static_root/assets/VRadioGroup-BWhV6-Ik.9a12480f7db9.js.br +0 -0
- codex/static_root/assets/VRadioGroup-BWhV6-Ik.9a12480f7db9.js.gz +0 -0
- codex/static_root/assets/VRadioGroup-BWhV6-Ik.js.br +0 -0
- codex/static_root/assets/VRadioGroup-BWhV6-Ik.js.gz +0 -0
- codex/static_root/assets/VSelect-DQPZyfSb.57477277e7dd.css.br +0 -0
- codex/static_root/assets/VSelect-DQPZyfSb.57477277e7dd.css.gz +0 -0
- codex/static_root/assets/VSelect-DQPZyfSb.css.br +0 -0
- codex/static_root/assets/VSelect-DQPZyfSb.css.gz +0 -0
- codex/static_root/assets/VSelect-TZp4owlN.59c05699f974.js +0 -1
- codex/static_root/assets/VSelect-TZp4owlN.59c05699f974.js.br +0 -0
- codex/static_root/assets/VSelect-TZp4owlN.59c05699f974.js.gz +0 -0
- codex/static_root/assets/VSelect-TZp4owlN.js +0 -1
- codex/static_root/assets/VSelect-TZp4owlN.js.br +0 -0
- codex/static_root/assets/VSelect-TZp4owlN.js.gz +0 -0
- codex/static_root/assets/VSelectionControl-GD0v-LdL.4d345a0fe321.js +0 -1
- codex/static_root/assets/VSelectionControl-GD0v-LdL.4d345a0fe321.js.br +0 -0
- codex/static_root/assets/VSelectionControl-GD0v-LdL.4d345a0fe321.js.gz +0 -0
- codex/static_root/assets/VSelectionControl-GD0v-LdL.js +0 -1
- codex/static_root/assets/VSelectionControl-GD0v-LdL.js.br +0 -0
- codex/static_root/assets/VSelectionControl-GD0v-LdL.js.gz +0 -0
- codex/static_root/assets/VSelectionControl-RqBzwjYi.css +0 -1
- codex/static_root/assets/VSelectionControl-RqBzwjYi.css.br +0 -0
- codex/static_root/assets/VSelectionControl-RqBzwjYi.css.gz +0 -0
- codex/static_root/assets/VSelectionControl-RqBzwjYi.ee7425525e63.css +0 -1
- codex/static_root/assets/VSelectionControl-RqBzwjYi.ee7425525e63.css.br +0 -0
- codex/static_root/assets/VSelectionControl-RqBzwjYi.ee7425525e63.css.gz +0 -0
- codex/static_root/assets/VTable-XDHc7lys.0f7c71a2ef3b.js.br +0 -0
- codex/static_root/assets/VTable-XDHc7lys.0f7c71a2ef3b.js.gz +0 -0
- codex/static_root/assets/VTable-XDHc7lys.js.br +0 -0
- codex/static_root/assets/VTable-XDHc7lys.js.gz +0 -0
- codex/static_root/assets/VWindowItem-DkI0HNsq.1e2dac9f8c38.js +0 -1
- codex/static_root/assets/VWindowItem-DkI0HNsq.1e2dac9f8c38.js.br +0 -0
- codex/static_root/assets/VWindowItem-DkI0HNsq.1e2dac9f8c38.js.gz +0 -0
- codex/static_root/assets/VWindowItem-DkI0HNsq.js +0 -1
- codex/static_root/assets/VWindowItem-DkI0HNsq.js.br +0 -0
- codex/static_root/assets/VWindowItem-DkI0HNsq.js.gz +0 -0
- codex/static_root/assets/VWindowItem-QQWUVqMX.c22e707ac99c.css +0 -1
- codex/static_root/assets/VWindowItem-QQWUVqMX.c22e707ac99c.css.br +0 -5
- codex/static_root/assets/VWindowItem-QQWUVqMX.c22e707ac99c.css.gz +0 -0
- codex/static_root/assets/VWindowItem-QQWUVqMX.css +0 -1
- codex/static_root/assets/VWindowItem-QQWUVqMX.css.br +0 -5
- codex/static_root/assets/VWindowItem-QQWUVqMX.css.gz +0 -0
- codex/static_root/assets/admin-B8FOS3y0.7854efcc062c.js.br +0 -0
- codex/static_root/assets/admin-B8FOS3y0.7854efcc062c.js.gz +0 -0
- codex/static_root/assets/admin-B8FOS3y0.js.br +0 -0
- codex/static_root/assets/admin-B8FOS3y0.js.gz +0 -0
- codex/static_root/assets/admin-D5xz_Oqi.d7262a95b289.js +0 -1
- codex/static_root/assets/admin-D5xz_Oqi.d7262a95b289.js.br +0 -0
- codex/static_root/assets/admin-D5xz_Oqi.d7262a95b289.js.gz +0 -0
- codex/static_root/assets/admin-D5xz_Oqi.js +0 -1
- codex/static_root/assets/admin-D5xz_Oqi.js.br +0 -0
- codex/static_root/assets/admin-D5xz_Oqi.js.gz +0 -0
- codex/static_root/assets/admin-menu-CowNEAHz.00a2856c8342.js.br +0 -0
- codex/static_root/assets/admin-menu-CowNEAHz.00a2856c8342.js.gz +0 -0
- codex/static_root/assets/admin-menu-CowNEAHz.js.br +0 -0
- codex/static_root/assets/admin-menu-CowNEAHz.js.gz +0 -0
- codex/static_root/assets/admin-settings-button-progress-Fn6FLZKO.ba02b3db9f08.js.br +0 -0
- codex/static_root/assets/admin-settings-button-progress-Fn6FLZKO.ba02b3db9f08.js.gz +0 -0
- codex/static_root/assets/admin-settings-button-progress-Fn6FLZKO.js.br +0 -0
- codex/static_root/assets/admin-settings-button-progress-Fn6FLZKO.js.gz +0 -0
- codex/static_root/assets/browser-DobQRNGw.fea37ea67039.js +0 -1
- codex/static_root/assets/browser-DobQRNGw.fea37ea67039.js.br +0 -0
- codex/static_root/assets/browser-DobQRNGw.fea37ea67039.js.gz +0 -0
- codex/static_root/assets/browser-DobQRNGw.js +0 -1
- codex/static_root/assets/browser-DobQRNGw.js.br +0 -0
- codex/static_root/assets/browser-DobQRNGw.js.gz +0 -0
- codex/static_root/assets/change-password-dialog-CM_QAQIF.e81732a436e7.js +0 -1
- codex/static_root/assets/change-password-dialog-CM_QAQIF.e81732a436e7.js.br +0 -0
- codex/static_root/assets/change-password-dialog-CM_QAQIF.e81732a436e7.js.gz +0 -0
- codex/static_root/assets/change-password-dialog-CM_QAQIF.js +0 -1
- codex/static_root/assets/change-password-dialog-CM_QAQIF.js.br +0 -0
- codex/static_root/assets/change-password-dialog-CM_QAQIF.js.gz +0 -0
- codex/static_root/assets/confirm-dialog-B5yPnYfL.1ff1c7580366.js.br +0 -0
- codex/static_root/assets/confirm-dialog-B5yPnYfL.1ff1c7580366.js.gz +0 -0
- codex/static_root/assets/confirm-dialog-B5yPnYfL.js.br +0 -0
- codex/static_root/assets/confirm-dialog-B5yPnYfL.js.gz +0 -0
- codex/static_root/assets/datetime-column-BjtCGhs4.8cd255932c51.js.br +0 -4
- codex/static_root/assets/datetime-column-BjtCGhs4.8cd255932c51.js.gz +0 -0
- codex/static_root/assets/datetime-column-BjtCGhs4.js.br +0 -4
- codex/static_root/assets/datetime-column-BjtCGhs4.js.gz +0 -0
- codex/static_root/assets/filter-B5vuKzJr.decb97e4aacf.js +0 -1
- codex/static_root/assets/filter-B5vuKzJr.decb97e4aacf.js.br +0 -0
- codex/static_root/assets/filter-B5vuKzJr.decb97e4aacf.js.gz +0 -0
- codex/static_root/assets/filter-B5vuKzJr.js +0 -1
- codex/static_root/assets/filter-B5vuKzJr.js.br +0 -0
- codex/static_root/assets/filter-B5vuKzJr.js.gz +0 -0
- codex/static_root/assets/flag-tab-BJVFBJGD.12bd4905b099.js +0 -1
- codex/static_root/assets/flag-tab-BJVFBJGD.12bd4905b099.js.br +0 -0
- codex/static_root/assets/flag-tab-BJVFBJGD.12bd4905b099.js.gz +0 -0
- codex/static_root/assets/flag-tab-BJVFBJGD.js +0 -1
- codex/static_root/assets/flag-tab-BJVFBJGD.js.br +0 -0
- codex/static_root/assets/flag-tab-BJVFBJGD.js.gz +0 -0
- codex/static_root/assets/forwardRefs-C3Z4qL85.48fb131ece85.css +0 -1
- codex/static_root/assets/forwardRefs-C3Z4qL85.48fb131ece85.css.br +0 -0
- codex/static_root/assets/forwardRefs-C3Z4qL85.48fb131ece85.css.gz +0 -0
- codex/static_root/assets/forwardRefs-C3Z4qL85.css +0 -1
- codex/static_root/assets/forwardRefs-C3Z4qL85.css.br +0 -0
- codex/static_root/assets/forwardRefs-C3Z4qL85.css.gz +0 -0
- codex/static_root/assets/forwardRefs-DB5ky8tb.1bd4338967d0.js +0 -1
- codex/static_root/assets/forwardRefs-DB5ky8tb.1bd4338967d0.js.br +0 -0
- codex/static_root/assets/forwardRefs-DB5ky8tb.1bd4338967d0.js.gz +0 -0
- codex/static_root/assets/forwardRefs-DB5ky8tb.js +0 -1
- codex/static_root/assets/forwardRefs-DB5ky8tb.js.br +0 -0
- codex/static_root/assets/forwardRefs-DB5ky8tb.js.gz +0 -0
- codex/static_root/assets/group-tab-BheHSkwp.5bae3d475496.js.br +0 -0
- codex/static_root/assets/group-tab-BheHSkwp.5bae3d475496.js.gz +0 -0
- codex/static_root/assets/group-tab-BheHSkwp.js.br +0 -0
- codex/static_root/assets/group-tab-BheHSkwp.js.gz +0 -0
- codex/static_root/assets/http-error-QIRqZMe7.0e7afa8486e0.js +0 -1
- codex/static_root/assets/http-error-QIRqZMe7.0e7afa8486e0.js.br +0 -0
- codex/static_root/assets/http-error-QIRqZMe7.0e7afa8486e0.js.gz +0 -0
- codex/static_root/assets/http-error-QIRqZMe7.js +0 -1
- codex/static_root/assets/http-error-QIRqZMe7.js.br +0 -0
- codex/static_root/assets/http-error-QIRqZMe7.js.gz +0 -0
- codex/static_root/assets/index-Cfl3hEsB.6eb5b66f8d59.js +0 -1
- codex/static_root/assets/index-Cfl3hEsB.6eb5b66f8d59.js.br +0 -0
- codex/static_root/assets/index-Cfl3hEsB.6eb5b66f8d59.js.gz +0 -0
- codex/static_root/assets/index-Cfl3hEsB.js +0 -1
- codex/static_root/assets/index-Cfl3hEsB.js.br +0 -0
- codex/static_root/assets/index-Cfl3hEsB.js.gz +0 -0
- codex/static_root/assets/library-tab-DcF440Qi.8464c8a644eb.js.br +0 -0
- codex/static_root/assets/library-tab-DcF440Qi.8464c8a644eb.js.gz +0 -0
- codex/static_root/assets/library-tab-DcF440Qi.js.br +0 -0
- codex/static_root/assets/library-tab-DcF440Qi.js.gz +0 -0
- codex/static_root/assets/main-B8_0rUnw.a9be0875ae25.css.br +0 -0
- codex/static_root/assets/main-B8_0rUnw.css.br +0 -0
- codex/static_root/assets/main-C-77N8Gu.b7e2f72f401d.js +0 -39
- codex/static_root/assets/main-C-77N8Gu.b7e2f72f401d.js.br +0 -0
- codex/static_root/assets/main-C-77N8Gu.b7e2f72f401d.js.gz +0 -0
- codex/static_root/assets/main-C-77N8Gu.js +0 -39
- codex/static_root/assets/main-C-77N8Gu.js.br +0 -0
- codex/static_root/assets/main-C-77N8Gu.js.gz +0 -0
- codex/static_root/assets/pager-full-pdf-DCh3kFgd.47ca6515953d.js +0 -1
- codex/static_root/assets/pager-full-pdf-DCh3kFgd.47ca6515953d.js.br +0 -0
- codex/static_root/assets/pager-full-pdf-DCh3kFgd.47ca6515953d.js.gz +0 -0
- codex/static_root/assets/pager-full-pdf-DCh3kFgd.js +0 -1
- codex/static_root/assets/pager-full-pdf-DCh3kFgd.js.br +0 -0
- codex/static_root/assets/pager-full-pdf-DCh3kFgd.js.gz +0 -0
- codex/static_root/assets/pagination-toolbar-CHsRqwrF.45e5d7271642.js.br +0 -0
- codex/static_root/assets/pagination-toolbar-CHsRqwrF.45e5d7271642.js.gz +0 -0
- codex/static_root/assets/pagination-toolbar-CHsRqwrF.js.br +0 -0
- codex/static_root/assets/pagination-toolbar-CHsRqwrF.js.gz +0 -0
- codex/static_root/assets/pdf-doc-DfhEteIr.b37589840b4a.js.br +0 -0
- codex/static_root/assets/pdf-doc-DfhEteIr.b37589840b4a.js.gz +0 -0
- codex/static_root/assets/pdf-doc-DfhEteIr.js.br +0 -0
- codex/static_root/assets/pdf-doc-DfhEteIr.js.gz +0 -0
- codex/static_root/assets/reader-DzF84pko.338d999961f3.js.br +0 -0
- codex/static_root/assets/reader-DzF84pko.338d999961f3.js.gz +0 -0
- codex/static_root/assets/reader-DzF84pko.js.br +0 -0
- codex/static_root/assets/reader-DzF84pko.js.gz +0 -0
- codex/static_root/assets/relation-chips-BuoX-Umg.b163536480a5.js +0 -1
- codex/static_root/assets/relation-chips-BuoX-Umg.b163536480a5.js.br +0 -0
- codex/static_root/assets/relation-chips-BuoX-Umg.b163536480a5.js.gz +0 -0
- codex/static_root/assets/relation-chips-BuoX-Umg.js +0 -1
- codex/static_root/assets/relation-chips-BuoX-Umg.js.br +0 -0
- codex/static_root/assets/relation-chips-BuoX-Umg.js.gz +0 -0
- codex/static_root/assets/relation-chips-CpiT_4k-.b72d78f512e6.css +0 -1
- codex/static_root/assets/relation-chips-CpiT_4k-.b72d78f512e6.css.br +0 -0
- codex/static_root/assets/relation-chips-CpiT_4k-.b72d78f512e6.css.gz +0 -0
- codex/static_root/assets/relation-chips-CpiT_4k-.css +0 -1
- codex/static_root/assets/relation-chips-CpiT_4k-.css.br +0 -0
- codex/static_root/assets/relation-chips-CpiT_4k-.css.gz +0 -0
- codex/static_root/assets/settings-drawer-D7bFOc4_.9748ddd58be9.css.br +0 -0
- codex/static_root/assets/settings-drawer-D7bFOc4_.9748ddd58be9.css.gz +0 -0
- codex/static_root/assets/settings-drawer-D7bFOc4_.css.br +0 -0
- codex/static_root/assets/settings-drawer-D7bFOc4_.css.gz +0 -0
- codex/static_root/assets/settings-drawer-F5ukKBlm.8d65a1441b5d.js +0 -2
- codex/static_root/assets/settings-drawer-F5ukKBlm.8d65a1441b5d.js.br +0 -0
- codex/static_root/assets/settings-drawer-F5ukKBlm.8d65a1441b5d.js.gz +0 -0
- codex/static_root/assets/settings-drawer-F5ukKBlm.js +0 -2
- codex/static_root/assets/settings-drawer-F5ukKBlm.js.br +0 -0
- codex/static_root/assets/settings-drawer-F5ukKBlm.js.gz +0 -0
- codex/static_root/assets/ssrBoot-CWYTAaF-.aee3c0981f33.js +0 -1
- codex/static_root/assets/ssrBoot-CWYTAaF-.aee3c0981f33.js.br +0 -0
- codex/static_root/assets/ssrBoot-CWYTAaF-.aee3c0981f33.js.gz +0 -0
- codex/static_root/assets/ssrBoot-CWYTAaF-.js +0 -1
- codex/static_root/assets/ssrBoot-CWYTAaF-.js.br +0 -0
- codex/static_root/assets/ssrBoot-CWYTAaF-.js.gz +0 -0
- codex/static_root/assets/stats-tab-BojXzJxX.4bacf1b7de0a.js +0 -1
- codex/static_root/assets/stats-tab-BojXzJxX.4bacf1b7de0a.js.br +0 -0
- codex/static_root/assets/stats-tab-BojXzJxX.4bacf1b7de0a.js.gz +0 -0
- codex/static_root/assets/stats-tab-BojXzJxX.js +0 -1
- codex/static_root/assets/stats-tab-BojXzJxX.js.br +0 -0
- codex/static_root/assets/stats-tab-BojXzJxX.js.gz +0 -0
- codex/static_root/assets/task-tab-CHqUvlgk.8e7f5e5fd5c1.js +0 -1
- codex/static_root/assets/task-tab-CHqUvlgk.8e7f5e5fd5c1.js.br +0 -0
- codex/static_root/assets/task-tab-CHqUvlgk.8e7f5e5fd5c1.js.gz +0 -0
- codex/static_root/assets/task-tab-CHqUvlgk.js +0 -1
- codex/static_root/assets/task-tab-CHqUvlgk.js.br +0 -0
- codex/static_root/assets/task-tab-CHqUvlgk.js.gz +0 -0
- codex/static_root/assets/task-tab-CW4DQ3KN.81812f9208e5.css +0 -1
- codex/static_root/assets/task-tab-CW4DQ3KN.81812f9208e5.css.gz +0 -0
- codex/static_root/assets/task-tab-CW4DQ3KN.css +0 -1
- codex/static_root/assets/task-tab-CW4DQ3KN.css.gz +0 -0
- codex/static_root/assets/unauthorized-BBwsmi0O.19d4882b821d.css +0 -1
- codex/static_root/assets/unauthorized-BBwsmi0O.19d4882b821d.css.br +0 -0
- codex/static_root/assets/unauthorized-BBwsmi0O.19d4882b821d.css.gz +0 -0
- codex/static_root/assets/unauthorized-BBwsmi0O.css +0 -1
- codex/static_root/assets/unauthorized-BBwsmi0O.css.br +0 -0
- codex/static_root/assets/unauthorized-BBwsmi0O.css.gz +0 -0
- codex/static_root/assets/unauthorized-CEVes9z_.d4be9ecbbe99.js +0 -1
- codex/static_root/assets/unauthorized-CEVes9z_.d4be9ecbbe99.js.br +0 -0
- codex/static_root/assets/unauthorized-CEVes9z_.d4be9ecbbe99.js.gz +0 -0
- codex/static_root/assets/unauthorized-CEVes9z_.js +0 -1
- codex/static_root/assets/unauthorized-CEVes9z_.js.br +0 -0
- codex/static_root/assets/unauthorized-CEVes9z_.js.gz +0 -0
- codex/static_root/assets/user-tab-CBwvHAwM.aba98371e7eb.js.br +0 -0
- codex/static_root/assets/user-tab-CBwvHAwM.aba98371e7eb.js.gz +0 -0
- codex/static_root/assets/user-tab-CBwvHAwM.js.br +0 -0
- codex/static_root/assets/user-tab-CBwvHAwM.js.gz +0 -0
- codex/static_root/manifest.f16b9aa8fb6b.json +0 -760
- codex/static_root/manifest.f16b9aa8fb6b.json.br +0 -0
- codex/static_root/manifest.f16b9aa8fb6b.json.gz +0 -0
- {codex-1.8.12.dist-info → codex-1.8.14.dist-info}/WHEEL +0 -0
- {codex-1.8.12.dist-info → codex-1.8.14.dist-info}/entry_points.txt +0 -0
|
Binary file
|
|
Binary file
|
codex/static_root/assets/{reader-DzF84pko.338d999961f3.js → reader-Bi_CT2rk.2048477e3d9a.js}
RENAMED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/pdf-doc-
|
|
2
|
-
import{_ as v,C as b,E as k,al as d,y as m,H as T,w as g,d as R,v as h,x as u,a as r,z as w,B as L,q as _,ab as we,F as D,am as it,an as lt,m as ee,ao as Ce,ap as ct,aq as Te,I as Re,n as O,ar as Be,as as q,at as ut,T as $,a6 as dt,au as ht,av as De,A as U,k as Ie,b as n,aw as pt,D as $e,ax as gt,ay as mt,az as kt,g as xe,p as ae,aA as Le,u as Ve,aB as Oe,K as Ae,aC as ft,aD as vt,c as x,aE as bt,aF as yt,aG as _t,aH as Pt,aI as St,aJ as wt,aK as Ct,G as F,ac as Tt,a0 as Rt,aL as Bt,P as Dt,Q as It,R as $t,S as xt,aM as Lt,aN as Vt,aO as Ot,aP as At,M as te,aQ as Et,W as Nt,aR as Ee,aS as Ut}from"./main-C-77N8Gu.js";import{V as Ft,a as Wt,S as zt}from"./settings-drawer-F5ukKBlm.js";import{k as K,I as Mt,r as Ne,i as Ue,c as Kt,s as Fe,t as We,d as Ht,j as ze,v as Me,w as jt,V as Ke}from"./forwardRefs-DB5ky8tb.js";import{P as qt,E as He,A as Gt,V as Yt,a as Qt,U as Xt,c as Zt}from"./unauthorized-CEVes9z_.js";import{V as je,a as qe}from"./VWindowItem-DkI0HNsq.js";import{b as Jt}from"./VSelect-TZp4owlN.js";import{C as ne,a as eo}from"./VDialog-VIXXkGcp.js";import{D as to,T as oo,b as so,V as G,a as ao,P as Ge,c as no,d as ro}from"./pagination-toolbar-CHsRqwrF.js";import{V as io,a as lo,b as co,c as uo}from"./VExpansionPanels-Cfecx3wB.js";import{d as ho,V as po,e as go}from"./VSelectionControl-GD0v-LdL.js";import{V as Y,a as Q}from"./VRadioGroup-BWhV6-Ik.js";import{a as oe}from"./VDivider-DZYqABoC.js";import{V as N}from"./VCheckbox-mMixTHeh.js";import{T as X}from"./index-Cfl3hEsB.js";const mo={control:"ctrl",command:"cmd",option:"alt",up:"arrowup",down:"arrowdown",left:"arrowleft",right:"arrowright",esc:"escape",spacebar:" ",space:" ",return:"enter",del:"delete",minus:"-",hyphen:"-"};function ge(e){const t=e.toLowerCase();return mo[t]||t}function Ye(e){if(!e)return[];const l=(e.startsWith("+")||e.startsWith("_"))&&!(e.startsWith("++")||e.startsWith("__"));if(e.length>1&&l||e.includes("++")||e.includes("__")||e==="+"||e==="_"||e.length>1&&(e.endsWith("+")||e.endsWith("_"))&&e.at(-2)!==e.at(-1)||e==="++"||e==="--"||e==="__")return[];const a=[];let o="";const s=()=>{o&&(a.push(ge(o)),o="")};for(let p=0;p<e.length;p++){const f=e[p],B=e[p+1];f==="+"||f==="_"||f==="-"?f===B?(s(),a.push(f),p++):f==="+"||f==="_"?s():o+=f:o+=f}return s(),a.some(p=>p.length>1&&p.includes("-")&&p!=="--")?[]:a.length===0&&e?[ge(e)]:a}function ko(e){if(!e)return[];const t=e.startsWith("-")&&!["---","--+"].includes(e),l=e.endsWith("-")&&!e.endsWith("+-")&&!e.endsWith("_-")&&e!=="-"&&e!=="---";if(t||l)return[];const c=[];let a="",o=0;for(;o<e.length;){const f=e[o];if(f==="-"){const B=e[o-1],A=o>1?e[o-2]:void 0;(B==="+"||B==="_")&&A!=="+"?(a+=f,o++):(a?(c.push(a),a=""):c.push("-"),o++)}else a+=f,o++}a&&c.push(a);const s=[];let i=0;for(const f of c)f==="-"?(i%2===0&&s.push("-"),i++):(i=0,s.push(f));return s.every(f=>Ye(f).length>0)?s:[]}function Qe(e,t){const{self:l=!1}=t.modifiers??{},c=t.value,a=typeof c=="object"&&c.options||{passive:!0},o=typeof c=="function"||"handleEvent"in c?c:c.handler,s=l?e:t.arg?document.querySelector(t.arg):window;s&&(s.addEventListener("scroll",o,a),e._onScroll=Object(e._onScroll),e._onScroll[t.instance.$.uid]={handler:o,options:a,target:l?void 0:s})}function Xe(e,t){if(!e._onScroll?.[t.instance.$.uid])return;const{handler:l,options:c,target:a=e}=e._onScroll[t.instance.$.uid];a.removeEventListener("scroll",l,c),delete e._onScroll[t.instance.$.uid]}function fo(e,t){t.value!==t.oldValue&&(Xe(e,t),Qe(e,t))}const vo={mounted:Qe,unmounted:Xe,updated:fo},bo={name:"BookChangeDrawer",props:{direction:{type:String,required:!0}},head(){if(this.isDrawerOpen)return this.prefetchLinks(this.params,this.computedDirection,!0)},computed:{...k(d,["isBTT"]),...k(d,{computedDirection(){return this.normalizeDirection(this.direction)},params(e){return e.routes.books[this.computedDirection]},isDrawerOpen(e){return e.bookChange===this.computedDirection},icon(){return this.bookChangeIcon(this.computedDirection)}}),drawerLocation(){return this.bookChangeLocation(this.direction)},cursorClass(){return this.bookChangeCursorClass(this.computedDirection)},show(){return this.bookChangeShow(this.computedDirection)},route(){return this.toRoute(this.params)},label(){return this.linkLabel(this.computedDirection,"Book")}},methods:{...b(d,["linkLabel","normalizeDirection","prefetchLinks","toRoute","bookChangeLocation","bookChangeCursorClass","bookChangeShow","bookChangeIcon"])}};function yo(e,t,l,c,a,o){const s=h("router-link");return o.show?(u(),m(Ft,{key:0,class:R(["bookChangeDrawer",{drawerActivated:e.isDrawerOpen}]),"disable-resize-watcher":"","disable-route-watcher":"",location:o.drawerLocation,"model-value":e.isDrawerOpen,scrim:!1,temporary:"",touchless:""},{default:g(()=>[r(s,{class:R({navLink:!0,[o.cursorClass]:!0}),to:o.route,"aria-label":o.label,title:o.label,onClick:t[0]||(t[0]=i=>i.stopImmediatePropagation())},{default:g(()=>[r(K,{class:"bookChangeIcon"},{default:g(()=>[w(L(e.icon),1)]),_:1})]),_:1},8,["class","to","aria-label","title"])]),_:1},8,["location","model-value","class"])):T("",!0)}const _o=v(bo,[["render",yo],["__scopeId","data-v-0340b976"]]),Po={name:"BookChangeActivator",components:{BookChangeDrawer:_o},props:{direction:{type:String,required:!0}},computed:{show(){return this.bookChangeShow(this.computedDirection)},computedDirection(){return this.normalizeDirection(this.direction)},positionClass(){return this.bookChangeLocation(this.direction)+"Pos"},cursorClass(){return this.bookChangeCursorClass(this.direction)}},methods:{...b(d,["bookChangeCursorClass","bookChangeLocation","bookChangeShow","normalizeDirection","setBookChangeFlag"])}};function So(e,t,l,c,a,o){const s=h("BookChangeDrawer");return u(),_(D,null,[o.show?(u(),_("div",{key:0,class:R(["changeColumn",{[o.positionClass]:!0,[o.cursorClass]:!0}]),onClick:t[0]||(t[0]=we(i=>e.setBookChangeFlag(l.direction),["stop"]))},null,2)):T("",!0),r(s,{direction:l.direction},null,8,["direction"])],64)}const wo=v(Po,[["render",So],["__scopeId","data-v-67df236c"]]),Co={name:"LoadingPage",components:{Placeholder:qt},props:{twoPages:{type:Boolean,required:!0}}};function To(e,t,l,c,a,o){const s=h("Placeholder");return u(),_("div",{class:R(["pageLoading",{twoPages:l.twoPages}])},[r(s,{class:"pagePlaceholder"})],2)}const Ro=v(Co,[["render",To],["__scopeId","data-v-04027168"]]),me="unauthorized",Bo={name:"ErrorPage",components:{EmptyState:He},props:{twoPages:{type:Boolean,required:!0},type:{type:String,required:!0}},emits:["retry"],computed:{text(){return this.type===me?"Protected page":"Failed to load page"},icon(){return this.type===me?it:lt}},methods:{onAction(e){this.$emit("retry",e)}}};function Do(e,t,l,c,a,o){const s=h("EmptyState");return u(),m(s,{class:R(["pageError",{twoPages:l.twoPages}]),headline:o.text,icon:o.icon,"action-text":"Retry","onClick:action":o.onAction},null,8,["class","headline","icon","onClick:action"])}const Io=v(Bo,[["render",Do],["__scopeId","data-v-97fa48e8"]]),$o={name:"ImgPage",props:{book:{type:Object,required:!0},src:{type:String,required:!0}},emits:["load","error"],computed:{...k(d,{scale:e=>e.clientSettings.scale}),style(){const e={};if(this.scale==1)return e;const t=this.$el;if(!t?.naturalWidth)return e;const l=t.naturalWidth/2;return e.transformOrigin=`${l}px top`,e.transform=`scale(${this.scale})`,e},bookSettings(){return this.getBookSettings(this.book)},classes(){return this.bookSettings.fitToClass}},methods:{...b(d,["getBookSettings"])}},xo=["src"];function Lo(e,t,l,c,a,o){return u(),_("img",ee({class:[o.classes,"img"],draggable:"false",src:l.src,style:o.style},e.$attrs,{onError:t[0]||(t[0]=s=>e.$emit("error",s)),onLoad:t[1]||(t[1]=s=>e.$emit("load",s))}),null,16,xo)}const ke=v($o,[["render",Lo],["__scopeId","data-v-014c2ac0"]]),fe=Ce(Te(()=>Be(()=>import("./pdf-doc-DfhEteIr.js"),__vite__mapDeps([0,1,2,3])))),Vo=333,Oo={name:"BookPage",components:{ErrorPage:Io,LoadingPage:Ro,PDFDoc:fe,ImgPage:ke},props:{book:{type:Object,required:!0},page:{type:Number,required:!0}},data(){return{showProgress:!1,loaded:!1,error:"",ts:0}},computed:{...k(d,{scale:e=>e.clientSettings.scale}),style(){const e={};if(this.book.fileType==="PDF"||this.scale==1)return e;const t=this.$refs.pageComponent?.$el;return t?.naturalHeight&&(e.height=t.naturalHeight*this.scale+"px",e.width=t.naturalWidth*this.scale+"px"),e},src(){const e=Math.max(this.book.mtime,this.ts),t={pk:this.book.pk,page:this.page,mtime:e};return ct(t)},component(){return this.book.fileType==="PDF"?fe:ke},bookSettings(){return this.getBookSettings(this.book)},twoPages(){return this.bookSettings.twoPages}},mounted(){setTimeout(function(){this.loaded||(this.loading=!0)},Vo)},methods:{...b(d,["getBookSettings"]),onLoad(){this.showProgress=!1,this.loaded=!0,this.error=!1},onError(){this.error="load",this.showProgress=!1},onUnauthorized(){this.error="unauthorized",this.showProgress=!1},onRetry(){this.ts=Date.now()}}},Ao=["id","data-page"];function Eo(e,t,l,c,a,o){const s=h("ErrorPage"),i=h("LoadingPage");return u(),_("div",{id:`page${l.page}`,key:a.ts,"data-page":l.page,class:"page",style:O(o.style)},[a.error?(u(),m(s,{key:0,"two-pages":o.twoPages,type:a.error,onRetry:o.onRetry},null,8,["two-pages","type","onRetry"])):a.showProgress&&!a.loaded?(u(),m(i,{key:1,"two-pages":o.twoPages},null,8,["two-pages"])):(u(),m(Re(o.component),{key:2,ref:"pageComponent",book:l.book,page:1,src:o.src,onError:o.onError,onLoad:o.onLoad,onUnauthorized:o.onUnauthorized},null,40,["book","src","onError","onLoad","onUnauthorized"]))],12,Ao)}const Ze=v(Oo,[["render",Eo],["__scopeId","data-v-14cc8bcc"]]),No=.5,Uo={name:"ScaleForScroll",emits:["click"],data(){return{mdiMagnifyMinusOutline:ut}},computed:{...k(d,{scale:e=>e.clientSettings.scale}),showReset(){return this.scale!=q},style(){return{cursor:this.scale==q?"zoom-in":"all-scroll"}}},methods:{...b(d,["setSettingsClient"]),clearSelection(){globalThis.getSelection&&globalThis.getSelection().removeAllRanges()},onDoubleClick(){this.clearSelection();const e=this.scale+No;this.setSettingsClient({scale:e})},scaleReset(){this.setSettingsClient({scale:q})}}};function Fo(e,t,l,c,a,o){const s=ht("drag-scroller");return $((u(),_("div",{class:"scaleForScroll",style:O(o.style),onDblclick:t[0]||(t[0]=(...i)=>o.onDoubleClick&&o.onDoubleClick(...i))},[dt(e.$slots,"default",{},void 0,!0),o.showReset?(u(),m(K,{key:0,class:"resetIcon",onClick:we(o.scaleReset,["stop"])},{default:g(()=>[w(L(a.mdiMagnifyMinusOutline),1)]),_:1},8,["onClick"])):T("",!0)],36)),[[s,,void 0,{onlyX:!0}]])}const Je=v(Uo,[["render",Fo],["__scopeId","data-v-88f3df90"]]),Wo={name:"HorizontalPages",components:{BookPage:Ze,ScaleForScroll:Je},props:{book:{type:Object,required:!0},page:{type:Number,required:!0}},emits:["click"],computed:{bookSettings(){return this.getBookSettings(this.book)},isReadInReverse(){return this.bookSettings.isReadInReverse},showSecondPage(){return this.bookSettings.twoPages&&this.page<this.book.maxPage&&!this.isCoverPage(this.book,this.page)},showPageOne(){return!this.isReadInReverse||this.showSecondPage},showPageTwo(){return this.isReadInReverse||this.showSecondPage},pageOne(){return this.isReadInReverse?this.page+1:this.page},pageTwo(){return this.isReadInReverse?this.page:this.page+1}},methods:{...b(d,["getBookSettings","isCoverPage"])}};function zo(e,t,l,c,a,o){const s=h("BookPage"),i=h("ScaleForScroll");return u(),m(i,{class:"noWrap"},{default:g(()=>[o.showPageOne?(u(),m(s,{key:0,ref:"pageOne",book:l.book,page:o.pageOne,class:"horizontalPage"},null,8,["book","page"])):T("",!0),o.showPageTwo?(u(),m(s,{key:1,book:l.book,page:o.pageTwo,class:"horizontalPage"},null,8,["book","page"])):T("",!0)]),_:1})}const Mo=v(Wo,[["render",zo],["__scopeId","data-v-ce77a1b1"]]),Ko={name:"PageChangeLink",props:{direction:{type:String,required:!0}},head(){return this.prefetchLinks(this.params,this.computedDirection)},computed:{...k(d,["isFirstPage","isLastPage"]),...k(d,{params(e){return e.routes[this.computedDirection]}}),computedDirection(){return this.normalizeDirection(this.direction)},show(){return this.computedDirection==="prev"?!this.isFirstPage:!this.isLastPage},pageChangeClass(){return"pageChangeColumn"},directionClass(){return this.direction},route(){return this.toRoute(this.params)},label(){return this.linkLabel(this.computedDirection,"Page")}},methods:{...b(d,["linkLabel","normalizeDirection","prefetchLinks","toRoute"])}};function Ho(e,t,l,c,a,o){const s=h("router-link");return o.show?(u(),m(s,{key:0,to:o.route,"aria-label":o.label,class:R(["changeColumn",{[o.directionClass]:!0}]),onClick:t[0]||(t[0]=i=>i.stopImmediatePropagation())},null,8,["to","aria-label","class"])):T("",!0)}const jo=v(Ko,[["render",Ho],["__scopeId","data-v-8a0b30bf"]]),qo=48,Go=48,Yo={name:"PagerHorizontal",components:{HorizontalPages:Mo,PageChangeLink:jo},props:{book:{type:Object,required:!0}},data(){return{activePage:0,pages:[]}},computed:{...k(d,{prevBook:e=>e.routes.books?.prev,nextBook:e=>e.routes.books?.next,storePage:e=>e.page,storePk:e=>e.books.current.pk,transition:e=>e.readerSettings.pageTransition}),bookSettings(){return this.getBookSettings(this.book)},twoPages(){return this.bookSettings.twoPages},isReadInReverse(){return this.bookSettings.isReadInReverse},windowIndex(){const e=this.activePage-this.pages[0];return Math.min(Math.max(0,e),this.book.maxPage)}},watch:{twoPages(){this.setActivePage(this.storePage,!0)},storePage(e){if(this.book.pk===this.storePk){this.activePage=e;const t=this.pages.at(0),l=this.pages.at(-1);(e<t||e>l)&&this.setPages()}}},created(){this.book.pk===this.storePk?this.activePage=+this.$route.params.page:this.book.pk===this.prevBook.pk?this.activePage=this.book.maxPage:this.activePage=0,this.setPages()},methods:{...b(d,["getBookSettings","setBookChangeFlag","setActivePage"]),setPages(){const e=Math.max(this.activePage-qo,0),t=Math.min(this.activePage+Go,this.book.maxPage);this.pages=De(e,t+1)}}};function Qo(e,t,l,c,a,o){const s=h("PageChangeLink"),i=h("HorizontalPages");return u(),m(je,{"show-arrows":"",continuous:"","model-value":o.windowIndex,reverse:o.isReadInReverse},{prev:g(()=>[r(s,{direction:"prev"})]),next:g(()=>[r(s,{direction:"next"})]),default:g(()=>[(u(!0),_(D,null,U(a.pages,p=>(u(),m(qe,{key:`c/${l.book.pk}/${p}`,class:"windowItem",disabled:"",eager:p>=e.storePage-1&&p<=e.storePage+2,"model-value":p,transition:e.transition,"reverse-transition":e.transition},{default:g(()=>[r(i,{book:l.book,page:p},null,8,["book","page"])]),_:2},1032,["eager","model-value","transition","reverse-transition"]))),128))]),_:1},8,["model-value","reverse"])}const ve=v(Yo,[["render",Qo],["__scopeId","data-v-a55977d3"]]),be=250,Xo={name:"PagerVertical",components:{BookPage:Ze,ScaleForScroll:Je},props:{book:{type:Object,required:!0}},data(){return{innerHeight:window.innerHeight,innerWidth:window.innerWidth,intersectorOn:!1,programmaticScroll:!1,intersectOptions:{handler:this.onIntersect,options:{threshold:[.75]}}}},computed:{...k(d,{storePage:e=>e.page,showToolbars:e=>e.showToolbars}),...Ie(d,["reactWithScroll"]),bookSettings(){return this.getBookSettings(this.book)},isReadInReverse(){return this.bookSettings.isReadInReverse},items(){const e=this.book?.maxPage?this.book.maxPage+1:0,t=De(0,e);return this.isReadInReverse&&t.reverse(),t}},watch:{storePage(e){this.reactWithScroll&&this.scrollToPage(e)}},mounted(){window.addEventListener("resize",this.onResize),setTimeout(()=>{this.scrollToPage(this.storePage)},be)},beforeUnmount(){window.removeEventListener("resize",this.onResize)},methods:{...b(d,["getBookSettings","setActivePage","setBookChangeFlag"]),onIntersect(e,t){if(e&&this.intersectorOn){const c=+t[0].target.dataset.page;this.setActivePage(c,!1)}},onScroll(){if(this.programmaticScroll)return;this.intersectorOn=!0;const e=this.$refs.verticalScroll.$el,t=e.scrollTop;if(this.storePage===0&&t===0)this.setBookChangeFlag("prev");else if(this.storePage===this.book.maxPage){const l=e.scrollTopMax||e.scrollHeight-e.clientTop;window.innerHeight+t+1>=l&&this.setBookChangeFlag("next")}},scrollToPage(e){this.intersectorOn=!1,this.programmaticScroll=!0;const t=this.$refs.verticalScroll;t?t.scrollToIndex(e):console.debug("Can't find verticalScroll component."),setTimeout(()=>{this.programmaticScroll=!1},be)},onResize(){this.innerHeight=window.innerHeight,this.innerWidth=window.innerWidth}}},Zo=["data-page"];function Jo(e,t,l,c,a,o){const s=h("BookPage"),i=h("ScaleForScroll");return u(),m(i,null,{default:g(()=>[$((u(),m(Jt,{id:"verticalScroll",key:o.isReadInReverse,ref:"verticalScroll",items:o.items,height:a.innerHeight,width:a.innerWidth},{default:g(({item:p})=>[r(s,{book:l.book,page:p,class:"verticalPage"},null,8,["book","page"]),$(n("div",{class:R(["pageTracker",{pageTrackerToolbars:e.showToolbars}]),"data-page":p},null,10,Zo),[[Mt,a.intersectOptions,void 0,{quiet:!0}]])]),_:1},8,["items","height","width"])),[[vo,o.onScroll,"#verticalScroll"]])]),_:1})}const ye=v(Xo,[["render",Jo],["__scopeId","data-v-4fdc17f1"]]),_e=Ce(Te(()=>Be(()=>import("./pager-full-pdf-DCh3kFgd.js"),__vite__mapDeps([4,1,2,0,3,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42])))),es={name:"PagerSelector",components:{PagerHorizontal:ve,PagerPDF:_e,PagerVertical:ye},props:{book:{type:Object,required:!0}},emits:["click"],head(){return this.prefetchBook(this.book)},computed:{...k(d,["cacheBook"]),...k(d,{storePk:e=>e.books?.current?.pk||0}),isActiveBook(){return this.book&&this.storePk===this.book?.pk},bookSettings(){return this.getBookSettings(this.book)},readerFullPdf(){return this.book?.fileType=="PDF"&&this.cacheBook&&!this.bookSettings.isVertical},component(){let e;return this.readerFullPdf?e=_e:this.bookSettings.isVertical?e=ye:e=ve,e}},watch:{$route(e){+e.params.pk===this.book.pk&&this.setActivePage(+e.params.page,!0)}},created(){this.isActiveBook&&this.setActivePage(+this.$route.params.page,!0)},methods:{...b(d,["getBookSettings","isBookVertical","setActivePage","prefetchBook"])}};function ts(e,t,l,c,a,o){return u(),m(Re(o.component),{book:l.book},null,8,["book"])}const os=v(es,[["render",ts]]),ss={name:"BooksWindow",components:{BookChangeActivator:wo,Pager:os},computed:{...k(d,["isBTT"]),...k(d,{books:e=>[e.books.prev,e.books.current,e.books.next].filter(Boolean),bookChange:e=>e.bookChange,currentBookPk:e=>e.books?.current?.pk||0,bookRoutes:e=>e.routes.books,transition:e=>e.readerSettings.pageTransition}),bookChangePrev(){return this.bookChangeShow("prev")},bookChangeNext(){return this.bookChangeShow("next")}},watch:{$route(e,t){(!t||!t.params||+e.params.pk!=+t.params.pk)&&this.loadBooks({params:e.params})}},beforeMount(){this.setBookChangeFlag(),this.loadBooks({})},methods:{...b(d,["loadBooks","setBookChangeFlag","toggleToolbars"]),click(){this.toggleToolbars(),this.setBookChangeFlag()},eager(e){return this.bookChange&&this.bookRoutes[this.bookChange]&&this.bookRoutes[this.bookChange].pk===e}}};function as(e,t,l,c,a,o){const s=h("BookChangeActivator"),i=h("Pager");return u(),m(je,{id:"booksWindow",direction:"vertical","model-value":e.currentBookPk,reverse:e.isBTT,"show-arrows":"",onClick:e.toggleToolbars},{prev:g(()=>[r(s,{direction:"prev"})]),next:g(()=>[r(s,{direction:"next"})]),default:g(()=>[(u(!0),_(D,null,U(e.books,p=>(u(),m(qe,{key:`c/${p.pk}`,class:"windowItem",disabled:"",eager:o.eager(p.pk),value:p.pk,transition:e.transition,"reverse-transitin":e.transition},{default:g(()=>[r(i,{book:p,onClick:o.click},null,8,["book","onClick"])]),_:2},1032,["eager","value","transition","reverse-transitin"]))),128))]),_:1},8,["model-value","reverse","onClick"])}const ns=v(ss,[["render",as],["__scopeId","data-v-3b8d07f2"]]),rs={name:"DownloadPanel",components:{CodexListItem:ne,DownloadButton:to},data(){return{mdiDownload:kt,mdiFileImage:mt}},computed:{...k(d,["activeTitle","routeParams"]),...k(d,{currentBook:e=>e.books?.current,fileType:e=>e.books?.current?.fileType,mtime:e=>e.books?.current?.mtime,pk:e=>e.books?.current?.pk,filename:e=>e.books?.current?.filename,storePage:e=>e.page}),pageSrc(){const e={pk:this.pk,page:this.storePage,ts:this.ts};return gt(e)},pageName(){const e=this.fileType==="PDF"?"pdf":"jpg";return`${this.activeTitle} - page ${this.storePage}.${e}`},downloadPageTitle(){return`Download Page ${this.storePage}`},downloadItem(){return{group:"c",ids:[this.pk],childCount:1,name:this.filename,mtime:this.mtime}}},methods:{...b($e,["downloadIOSPWAFix"]),downloadPage(){pt(this.pageSrc,this.pageName)}}},is={key:0,id:"downloadPanel"};function ls(e,t,l,c,a,o){const s=h("CodexListItem"),i=h("DownloadButton");return e.currentBook?(u(),_("div",is,[r(s,{"prepend-icon":a.mdiFileImage,title:o.downloadPageTitle,onClick:o.downloadPage},null,8,["prepend-icon","title","onClick"]),r(i,{button:!1,item:o.downloadItem},null,8,["item"])])):T("",!0)}const cs=v(rs,[["render",ls],["__scopeId","data-v-a873b002"]]),us=ae({color:String,...Me(),...Ae(),...ze(),...Ht({tag:"kbd"}),...Oe(),...We()},"VKbd"),Pe=xe()({name:"VKbd",props:us(),setup(e,t){let{slots:l}=t;const{themeClasses:c}=Le(e),{borderClasses:a}=Ne(e),{roundedClasses:o}=Ue(e),{backgroundColorClasses:s,backgroundColorStyles:i}=Kt(()=>e.color),{elevationClasses:p}=Fe(e);return Ve(()=>r(e.tag,{class:R(["v-kbd",c.value,s.value,a.value,p.value,o.value,e.class]),style:O([i.value,e.style])},l)),{}}});function et(e,t,l){const c=l&&e.mac?e.mac:e.default,a=t==="icon"&&!l||t==="icon"&&!c.icon||t==="symbol"&&!c.symbol?"text":t;let o=c[a]??c.text;return a==="text"&&typeof o=="string"&&o.startsWith("$")&&!o.startsWith("$vuetify.")&&(o=o.slice(1).toUpperCase()),a==="icon"?["icon",o]:[a,o]}const tt={ctrl:{mac:{symbol:"⌃",icon:"$ctrl",text:"$vuetify.hotkey.ctrl"},default:{text:"Ctrl"}},meta:{mac:{symbol:"⌘",icon:"$command",text:"$vuetify.hotkey.command"},default:{text:"Ctrl"}},cmd:{mac:{symbol:"⌘",icon:"$command",text:"$vuetify.hotkey.command"},default:{text:"Ctrl"}},shift:{mac:{symbol:"⇧",icon:"$shift",text:"$vuetify.hotkey.shift"},default:{text:"Shift"}},alt:{mac:{symbol:"⌥",icon:"$alt",text:"$vuetify.hotkey.option"},default:{text:"Alt"}},enter:{default:{symbol:"↵",icon:"$enter",text:"$vuetify.hotkey.enter"}},arrowup:{default:{symbol:"↑",icon:"$arrowup",text:"$vuetify.hotkey.upArrow"}},arrowdown:{default:{symbol:"↓",icon:"$arrowdown",text:"$vuetify.hotkey.downArrow"}},arrowleft:{default:{symbol:"←",icon:"$arrowleft",text:"$vuetify.hotkey.leftArrow"}},arrowright:{default:{symbol:"→",icon:"$arrowright",text:"$vuetify.hotkey.rightArrow"}},backspace:{default:{symbol:"⌫",icon:"$backspace",text:"$vuetify.hotkey.backspace"}},escape:{default:{text:"$vuetify.hotkey.escape"}}," ":{mac:{symbol:"␣",icon:"$space",text:"$vuetify.hotkey.space"},default:{text:"$vuetify.hotkey.space"}},"-":{default:{text:"-"}}},ds=ae({variant:{type:String,default:"elevated",validator:e=>["elevated","flat","tonal","outlined","text","plain","contained"].includes(e)}},"VHotkeyVariant"),hs=ae({keys:String,displayMode:{type:String,default:"icon"},keyMap:{type:Object,default:()=>tt},platform:{type:String,default:"auto"},inline:Boolean,disabled:Boolean,prefix:String,suffix:String,...Ae(),...Oe(),...Me(),...ze(),...We(),...ds(),color:String},"VHotkey");class se{constructor(t){if(["and","then"].includes(t))this.val=t;else throw new Error("Not a valid delineator")}isEqual(t){return this.val===t.val}}function Z(e){return e instanceof se}function ps(e){return typeof e=="string"}function gs(e,t,l){const c=t.toLowerCase();if(c in e){const a=et(e[c],"text",l);return typeof a[1]=="string"?a[1]:String(a[1])}return t.toUpperCase()}function Se(e,t,l,c){const a=l.toLowerCase();if(a in e){const o=et(e[a],t,c);return o[0]==="text"&&typeof o[1]=="string"&&o[1].startsWith("$")&&!o[1].startsWith("$vuetify.")?["text",o[1].replace("$","").toUpperCase(),l]:[...o,l]}return["text",l.toUpperCase(),l]}const ms=xe()({name:"VHotkey",props:hs(),setup(e){const{t}=ft(),{themeClasses:l}=Le(e),{rtlClasses:c}=vt(),{borderClasses:a}=Ne(e),{roundedClasses:o}=Ue(e),{elevationClasses:s}=Fe(e),i=x(()=>e.variant==="contained"),p=x(()=>({...e,variant:i.value?"elevated":e.variant})),{colorClasses:f,colorStyles:B,variantClasses:A}=jt(p),W=x(()=>e.platform==="auto"?typeof navigator<"u"&&/macintosh/i.test(navigator.userAgent):e.platform==="mac"),re=x(()=>e.displayMode),H=new se("and"),ie=new se("then"),le=x(()=>e.keyMap),E=x(()=>e.keys?e.keys.split(" ").map(y=>{const P=ko(y);return P.flatMap((S,C)=>{const he=Ye(S).reduce((V,pe,rt)=>rt!==0?[...V,H,pe]:[...V,pe],[]).map(V=>ps(V)?Se(le.value,re.value,V,W.value):V);return C<P.length-1&&he.push(ie),he})}):[]),at=x(()=>{if(!e.keys)return"";const P=E.value.map(S=>{const C=[];for(const I of S)if(Z(I))H.isEqual(I)?C.push(t("$vuetify.hotkey.plus")):ie.isEqual(I)&&C.push(t("$vuetify.hotkey.then"));else{const de=I[0]==="icon"||I[0]==="symbol"?Se(bt(tt,e.keyMap),"text",String(I[1]),W.value)[1]:I[1];C.push(j(de))}return C.join(" ")}).join(", ");return t("$vuetify.hotkey.shortcut",P)});function j(y){return y.startsWith("$vuetify.")?t(y):y}function nt(y){if(re.value==="text")return;const P=gs(le.value,String(y[2]),W.value);return j(P)}function ce(y,P,S){const C=S?"kbd":Pe,I=["v-hotkey__key",`v-hotkey__key-${y[0]}`,...S?["v-hotkey__key--nested"]:[a.value,o.value,s.value,f.value]];return r(C,{key:P,class:R(I),style:O(S?void 0:B.value),"aria-hidden":"true",title:nt(y)},{default:()=>[y[0]==="icon"?r(K,{icon:y[1],"aria-hidden":"true"},null):j(y[1])]})}function ue(y,P){return n("span",{key:P,class:"v-hotkey__divider","aria-hidden":"true"},[H.isEqual(y)?"+":t("$vuetify.hotkey.then")])}Ve(()=>n("div",{class:R(["v-hotkey",{"v-hotkey--disabled":e.disabled,"v-hotkey--inline":e.inline,"v-hotkey--contained":i.value},l.value,c.value,A.value,e.class]),style:O(e.style),role:"img","aria-label":at.value},[i.value?r(Pe,{key:"contained",class:R(["v-hotkey__contained-wrapper",a.value,o.value,s.value,f.value]),style:O(B.value),"aria-hidden":"true"},{default:()=>[e.prefix&&n("span",{key:"contained-prefix",class:"v-hotkey__prefix"},[e.prefix]),E.value.map((y,P)=>n("span",{class:"v-hotkey__combination",key:P},[y.map((S,C)=>Z(S)?ue(S,C):ce(S,C,!0)),P<E.value.length-1&&n("span",{"aria-hidden":"true"},[w(" ")])])),e.suffix&&n("span",{key:"contained-suffix",class:"v-hotkey__suffix"},[e.suffix])]}):n(D,null,[e.prefix&&n("span",{key:"prefix",class:"v-hotkey__prefix"},[e.prefix]),E.value.map((y,P)=>n("span",{class:"v-hotkey__combination",key:P},[y.map((S,C)=>Z(S)?ue(S,C):ce(S,C,!1)),P<E.value.length-1&&n("span",{"aria-hidden":"true"},[w(" ")])])),e.suffix&&n("span",{key:"suffix",class:"v-hotkey__suffix"},[e.suffix])])]))}}),ks={name:"KeyboardShortcutsTable",components:{VHotkey:ms},data(){return{mdiMenuLeft:St,mdiMenuRight:Pt,mdiKeyboardSpace:_t,mdiAppleKeyboardShift:yt}}},fs={class:"highlight-table"},vs={class:"highlight-table"},bs={class:"highlight-table"};function ys(e,t,l,c,a,o){const s=h("v-hotkey");return u(),_(D,null,[t[22]||(t[22]=n("h4",null,"Navigation",-1)),n("table",fs,[n("tbody",null,[n("tr",null,[n("td",null,[r(s,{keys:"j"}),t[0]||(t[0]=w(", ",-1)),r(s,{keys:"arrowleft"}),t[1]||(t[1]=w(", ",-1)),r(s,{keys:"shift+space"})]),t[2]||(t[2]=n("td",null,"Previous page",-1))]),n("tr",null,[n("td",null,[r(s,{keys:"k"}),t[3]||(t[3]=w(", ",-1)),r(s,{keys:"arrowright"}),t[4]||(t[4]=w(", ",-1)),r(s,{keys:"space"})]),t[5]||(t[5]=n("td",null,"Next page",-1))]),n("tr",null,[n("td",null,[r(s,{keys:","})]),t[6]||(t[6]=n("td",null,[w("Next "),n("em",null,"only"),w(" one page in two page mode.")],-1))]),n("tr",null,[n("td",null,[r(s,{keys:"."})]),t[7]||(t[7]=n("td",null,[w("Previous "),n("em",null,"only"),w(" one page in two page mode.")],-1))]),n("tr",null,[n("td",null,[r(s,{keys:"p"})]),t[8]||(t[8]=n("td",null,"Previous Book",-1))]),n("tr",null,[n("td",null,[r(s,{keys:"n"})]),t[9]||(t[9]=n("td",null,"Next Book",-1))]),n("tr",null,[n("td",null,[r(s,{keys:"esc"})]),t[10]||(t[10]=n("td",null,"Close book",-1))])])]),t[23]||(t[23]=n("h4",null,"Fit Page To",-1)),n("table",vs,[n("tbody",null,[n("tr",null,[n("td",null,[r(s,{keys:"s"})]),t[11]||(t[11]=n("td",null,"screen",-1))]),n("tr",null,[n("td",null,[r(s,{keys:"h"})]),t[12]||(t[12]=n("td",null,"screen height",-1))]),n("tr",null,[n("td",null,[r(s,{keys:"w"})]),t[13]||(t[13]=n("td",null,"screen width",-1))]),n("tr",null,[n("td",null,[r(s,{keys:"o"})]),t[14]||(t[14]=n("td",null,"Show page at original size",-1))]),n("tr",null,[n("td",null,[r(s,{keys:"2"})]),t[15]||(t[15]=n("td",null,"Toggle two page view",-1))]),n("tr",null,[n("td",null,[r(s,{keys:"r"})]),t[16]||(t[16]=n("td",null,"Read Right to Left",-1))]),n("tr",null,[n("td",null,[r(s,{keys:"l"})]),t[17]||(t[17]=n("td",null,"Read Left to Right",-1))]),n("tr",null,[n("td",null,[r(s,{keys:"t"})]),t[18]||(t[18]=n("td",null,"Read Top to Bottom",-1))]),n("tr",null,[n("td",null,[r(s,{keys:"b"})]),t[19]||(t[19]=n("td",null,"Read in Bottom to Top",-1))])])]),t[24]||(t[24]=n("h4",null,"Other",-1)),n("table",bs,[n("tbody",null,[n("tr",null,[n("td",null,[r(s,{keys:"m"})]),t[20]||(t[20]=n("td",null,"Show comic's metadata",-1))]),n("tr",null,[n("td",null,[r(s,{keys:"doubleclick"})]),t[21]||(t[21]=n("td",null,"Zoom page",-1))])])])],64)}const _s=v(ks,[["render",ys],["__scopeId","data-v-11cb1561"]]),Ps=/iP(?:ad|hone|od)|Android/,Ss=Ps.test(navigator.userAgent),ws=Ss||globalThis.orientation!==void 0,Cs={name:"KeyboardShortcutsPanel",components:{CodexListItem:ne,KeyboardShortcutsTable:_s},data(){return{mdiKeyboardOutline:wt,IS_MOBILE:ws}}};function Ts(e,t,l,c,a,o){const s=h("CodexListItem"),i=h("KeyboardShortcutsTable");return a.IS_MOBILE?T("",!0):(u(),m(io,{key:0},{default:g(()=>[r(lo,{id:"readerKeyboardShortcuts"},{default:g(()=>[r(co,{id:"shortcutsTitle"},{default:g(()=>[r(s,{id:"keyboardShortcutsItem","prepend-icon":a.mdiKeyboardOutline,title:"Keyboard Shortcuts"},null,8,["prepend-icon"])]),_:1}),r(uo,null,{default:g(()=>[r(i)]),_:1})]),_:1})]),_:1}))}const Rs=v(Cs,[["render",Ts],["__scopeId","data-v-8285795a"]]),ot=["fitTo","readingDirection","twoPages"];Object.freeze(ot);const Bs={name:"ReaderSettingsPanel",components:{CodexListItem:ne},data(){return{isGlobalScope:!1,mdiOpenInNew:Rt,mdiEye:Tt,openDelay:2e3,scopeItems:[{title:"Only this comic",value:!1},{title:"Default for all comics",value:!0}]}},computed:{...k(F,["isAuthDialogOpen"]),...k(d,["isVertical","isPDF","cacheBook"]),...k(d,{choices:e=>e.choices,validBook:e=>!!e.books?.current,selectedSettings(e){return this.isGlobalScope||!e.books?.current?e.readerSettings:e.books?.current.settings},isClearSettingsButtonDisabled(e){if(this.isGlobalScope||!e.books?.current)return!0;for(const t of ot){const l=e.books?.current.settings[t];if(!e.choices.nullValues.has(l))return!1}return!0},pdfInBrowserURL(e){return this.isPDF&&e.books?.current?Ct(e.books?.current):""},finishOnLastPage:e=>e.readerSettings.finishOnLastPage,pageTransition:e=>e.readerSettings.pageTransition}),...Ie(d,["readRtlInReverse"]),fitToChoices(){return this.choicesWithoutNull("fitTo")},readingDirectionChoices(){return this.choicesWithoutNull("readingDirection")},disableTwoPages(){return this.isVertical||this.isPDF&&this.cacheBook},disableCacheBook(){return this.isVertical&&this.isPDF},disablePageTransition(){return this.isVertical&&this.isPDF}},mounted(){document.addEventListener("keyup",this._keyUpListener)},beforeUnmount(){document.removeEventListener("keyup",this._keyUpListener)},methods:{...b(d,["clearSettingsLocal","setSettingsGlobal","setSettingsLocal","setSettingsClient"]),settingsDialogChanged(e){this.isGlobalScope?this.setSettingsGlobal(e):this.setSettingsLocal(e)},choicesWithoutNull(e){const t=[];for(const l of this.choices[e])l.value&&t.push(l);return Object.freeze(t),t},_keyUpListener(e){if(e.stopPropagation(),this.isAuthDialogOpen)return;let t;switch(e.key){case"w":t={fitTo:"W"};break;case"h":t={fitTo:"H"};break;case"s":t={fitTo:"S"};break;case"o":t={fitTo:"O"};break;case"2":t={twoPages:!this.selectedSettings.twoPages};break;case"l":t={readingDirection:"ltr"};break;case"r":t={readingDirection:"rtl"};break;case"t":t={readingDirection:"ttb"};break;case"b":t={readingDirection:"bbt"};break}t&&this.setSettingsLocal(t)}}},Ds={id:"readerScopedSettings",class:"readerCodexListItem"};function Is(e,t,l,c,a,o){const s=h("CodexListItem");return u(),_(D,null,[t[9]||(t[9]=n("h4",{class:"readerSettingsHeader"},"Comic Settings Scope",-1)),r(Y,{modelValue:a.isGlobalScope,"onUpdate:modelValue":t[0]||(t[0]=i=>a.isGlobalScope=i),class:"scopeRadioGroup readerCodexListItem",density:"compact","hide-details":"auto"},{default:g(()=>[(u(!0),_(D,null,U(a.scopeItems,i=>(u(),m(Q,{key:i.value,label:i.title,value:i.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),r(ho,null,{default:g(()=>[n("div",Ds,[r(Y,{class:"displayRadioGroup",density:"compact",label:"Display","hide-details":"auto","model-value":e.selectedSettings.fitTo,"onUpdate:modelValue":t[1]||(t[1]=i=>o.settingsDialogChanged({fitTo:i}))},{default:g(()=>[(u(!0),_(D,null,U(o.fitToChoices,i=>(u(),m(Q,{key:i.value,label:i.title,value:i.value},null,8,["label","value"]))),128))]),_:1},8,["model-value"]),r(N,{disabled:o.disableTwoPages,class:"scopedCheckbox",density:"compact",label:"Two pages","hide-details":"auto","model-value":e.selectedSettings.twoPages,"true-value":!0,indeterminate:e.selectedSettings.twoPages===null||e.selectedSettings.twoPages===void 0,"onUpdate:modelValue":t[2]||(t[2]=i=>o.settingsDialogChanged({twoPages:i}))},null,8,["disabled","model-value","indeterminate"]),r(Y,{class:"displayRadioGroup",density:"compact",label:"Reading Direction","hide-details":"auto","model-value":e.selectedSettings.readingDirection,"onUpdate:modelValue":t[3]||(t[3]=i=>o.settingsDialogChanged({readingDirection:i}))},{default:g(()=>[(u(!0),_(D,null,U(o.readingDirectionChoices,i=>(u(),m(Q,{key:i.value,label:i.title,value:i.value},null,8,["label","value"]))),128))]),_:1},8,["model-value"]),r(N,{"model-value":e.selectedSettings.readRtlInReverse,class:"scopedCheckbox",density:"compact",label:"Read RTL Comics LTR","hide-details":"auto","true-value":!0,"onUpdate:modelValue":t[4]||(t[4]=i=>o.settingsDialogChanged({readRtlInReverse:i}))},null,8,["model-value"]),a.isGlobalScope?T("",!0):$((u(),m(Ke,{key:0,id:"clearSettingsButton",disabled:e.isClearSettingsButtonDisabled,onClick:e.clearSettingsLocal},{default:g(()=>[...t[8]||(t[8]=[w(" Clear Settings ",-1)])]),_:1},8,["disabled","onClick"])),[[X,{openDelay:a.openDelay,text:"Use the default settings for all comics for this comic"}]])])]),_:1}),r(oe),t[10]||(t[10]=n("h4",{class:"readerSettingsHeader"},"Reader Settings",-1)),r(N,{class:"readerCodexListItem","model-value":e.finishOnLastPage,density:"compact",label:"Finish Book On Last Page","hide-details":"auto","true-value":!0,"onUpdate:modelValue":t[5]||(t[5]=i=>e.setSettingsGlobal({finishOnLastPage:i}))},null,8,["model-value"]),$(r(N,{"model-value":e.pageTransition,class:"readerCodexListItem",density:"compact",disabled:o.disablePageTransition,label:"Animate Page Turns","hide-details":"auto","true-value":!0,"onUpdate:modelValue":t[6]||(t[6]=i=>e.setSettingsGlobal({pageTransition:i}))},null,8,["model-value","disabled"]),[[X,{openDelay:a.openDelay,text:"Animate page turns when reading horizontally."}]]),$(r(N,{"model-value":e.cacheBook,class:"readerCodexListItem",density:"compact",disabled:o.disableCacheBook,label:"Cache Entire Book","hide-details":"auto","true-value":!0,"onUpdate:modelValue":t[7]||(t[7]=i=>e.setSettingsClient({cacheBook:i}))},null,8,["model-value","disabled"]),[[X,{openDelay:a.openDelay,text:"Cache all pages from this book in the browser"}]]),e.pdfInBrowserURL?(u(),m(s,{key:0,"prepend-icon":a.mdiEye,"append-icon":a.mdiOpenInNew,title:"Read in Tab",href:e.pdfInBrowserURL,target:"_blank"},null,8,["prepend-icon","append-icon","href"])):T("",!0)],64)}const $s=v(Bs,[["render",Is],["__scopeId","data-v-252309d7"]]),xs={name:"ReaderSettingsSuperPanel",components:{DownloadPanel:cs,ReaderKeyboardShortcutsPanel:Rs,ReaderSettingsPanel:$s}};function Ls(e,t,l,c,a,o){const s=h("ReaderSettingsPanel"),i=h("ReaderKeyboardShortcutsPanel"),p=h("DownloadPanel");return u(),_(D,null,[r(s),r(oe),r(i),r(oe),r(p)],64)}const Vs=v(xs,[["render",Ls]]),Os={name:"ReaderSettingsDrawer",components:{SettingsDrawer:Wt,ReaderSettingsSuperPanel:Vs}};function As(e,t,l,c,a,o){const s=h("ReaderSettingsSuperPanel"),i=h("SettingsDrawer");return u(),m(i,{title:"Reader",temporary:"","disable-resize-watcher":""},{panel:g(()=>[r(s)]),_:1})}const Es=v(Os,[["render",As]]),J={a:Lt,f:xt,p:$t,i:It,s:Dt,v:Bt},Ns={name:"ReaderArcSelect",components:{ToolbarSelect:oo},data(){return{mdiFilterOutline:At}},computed:{...k(d,{arc:e=>e.arc,arcs:e=>e.arcs}),items(){const e=[];if(!this.arcs)return e;for(const[t,l]of Object.entries(this.arcs))for(const[c,a]of Object.entries(l)){let o=Vt[t];t!=="s"&&(o=o.slice(0,-1));const s=J[t],i=t===this.arc?.group&&c==this.arc?.ids?Ot:"",p={group:t,ids:c,prependIcon:s,...a},f={group:t,value:p,title:a.name,subtitle:o,prependIcon:s,appendIcon:i};e.push(f)}return e},arcInfo(){if(!this.arcs||!this.arc)return{};const e=this.arcs[this.arc?.group];return e?e[this.arc?.ids]:{}},arcIcon(){return J[this.arc?.group]}},methods:{...b(d,["loadBooks"]),onUpdate(e){const t={group:e.group,ids:e.ids.split(",").map(Number)};this.loadBooks({arc:t})},prependIcon(e){return J[e]}}},Us={id:"arcPos"};function Fs(e,t,l,c,a,o){const s=h("ToolbarSelect");return u(),m(s,{"model-value":e.arc,class:"arcSelect","select-label":"reading order",items:o.items,disabled:!o.items||o.items.length<=1,"onUpdate:modelValue":o.onUpdate},{item:g(({item:i,props:p})=>[r(eo,ee(p,{density:"compact",variant:"plain","prepend-icon":i.raw.prependIcon,subtitle:i.raw.subtitle,"append-icon":i.raw.appendIcon}),null,16,["prepend-icon","subtitle","append-icon"])]),selection:g(({props:i})=>[r(K,ee({icon:o.prependIcon(e.arc.group),size:"large"},i,{class:"arcSelectIcon"}),null,16,["icon"]),n("span",Us,L(e.arc.index)+" / "+L(e.arc.count),1)]),_:1},8,["model-value","items","disabled","onUpdate:modelValue"])}const Ws=v(Ns,[["render",Fs],["__scopeId","data-v-64020201"]]),zs={name:"ReaderTitleToolbar",components:{AppBanner:Gt,MetadataDialog:so,ReaderArcSelect:Ws,SettingsDrawerButton:zt},data(){return{mdiClose:Et,routeChanged:!1}},head(){const e=`Read / ${this.activeTitle} / page ${this.storePage}`,t=`reader ${e}`;return{title:e,meta:[{hid:"description",name:"description",content:t}]}},computed:{...k(F,["isAuthDialogOpen"]),...k(d,["activeTitle","closeBookRoute"]),...k(d,{showToolbars:e=>e.showToolbars,currentBook:e=>e.books?.current||{},empty:e=>e.empty,subtitle:e=>e.books?.current?.name||"",storePage:e=>e.page}),title(){return this.activeTitle},extensionHeight(){let e=32;return this.subtitle&&(e*=2),e+=4,e},closeRoute(){const e=te(this.closeBookRoute),t=te(e.params);return delete t.name,e.params=t,e},metadataBook(){const e={...this.currentBook};return e.group="c",e.childCount=0,e}},watch:{$route(e,t){t&&(this.routeChanged=!0)}},mounted(){document.addEventListener("keyup",this._keyUpListener)},beforeUnmount(){document.removeEventListener("keyup",this._keyUpListener)},methods:{...b($e,["setTimestamp"]),...b(d,["routeToDirection","routeToDirectionOne","routeToBook","setBookChangeFlag"]),openMetadata(){this.$refs.metadataDialog.dialog=!0},onCloseBook(){this.routeChanged&&this.setTimestamp()},_keyUpListener(e){if(e.stopPropagation(),!this.isAuthDialogOpen)switch(e.key){case"Escape":this.$refs.closeBook.$el.click();break;case"m":this.empty||this.openMetadata();break}}}},Ms={id:"readerTopToolbarHeader"},Ks={id:"title"},Hs={key:0,id:"subtitle"};function js(e,t,l,c,a,o){const s=h("AppBanner"),i=h("ReaderArcSelect"),p=h("MetadataDialog"),f=h("SettingsDrawerButton");return u(),m(po,null,{default:g(()=>[$(n("header",Ms,[r(s),r(Yt,{id:"readerToolbarTop",density:"compact","extension-height":o.extensionHeight},Nt({default:g(()=>[r(G,null,{default:g(()=>[r(Ke,{ref:"closeBook",class:"closeBook",to:o.closeRoute,size:"large",density:"compact",variant:"plain",onClick:o.onCloseBook},{default:g(()=>[...t[0]||(t[0]=[w(" close book ",-1)])]),_:1},8,["to","onClick"])]),_:1}),r(ao),e.empty?T("",!0):(u(),m(G,{key:0},{default:g(()=>[r(i),r(p,{ref:"metadataDialog",book:o.metadataBook,toolbar:!0},null,8,["book"])]),_:1})),r(G,null,{default:g(()=>[r(f)]),_:1})]),_:2},[o.title?{name:"extension",fn:g(()=>[r(Qt,{class:"readerTitle"},{default:g(()=>[n("div",Ks,L(o.title),1),e.subtitle?(u(),_("div",Hs,L(e.subtitle),1)):T("",!0)]),_:1})]),key:"0"}:void 0]),1032,["extension-height"])],512),[[Ee,e.showToolbars]])]),_:1})}const st=v(zs,[["render",js],["__scopeId","data-v-ac089588"]]),qs={name:"ReaderEmptyBooks",components:{ReaderTopToolbar:st,EmptyState:He},data(){return{mdiBookRemoveOutline:Ut}},methods:{...b(d,["loadBooks","setShowToolbars"]),onAction(){this.loadBooks({mtime:Date.now()})}},created(){this.setShowToolbars()}};function Gs(e,t,l,c,a,o){const s=h("ReaderTopToolbar"),i=h("EmptyState");return u(),_(D,null,[r(s),r(i,{headline:"Book Not Found",title:"Close the reader and find another book",icon:a.mdiBookRemoveOutline,"action-text":"Try to load book again","onClick:action":o.onAction},null,8,["icon","onClick:action"])],64)}const Ys=v(qs,[["render",Gs]]),Qs={name:"ReaderBookChangeNavButton",components:{PaginationNavButton:Ge},props:{direction:{type:String,required:!0}},computed:{...k(d,["isBTT"]),...k(d,{toRoute(e){const t=e?.routes?.books[this.direction];return t?{params:te(t)}:""}}),title(){return(this.direction==="prev"?"Previous":"Next")+" Book"},icon(){return this.bookChangeIcon(this.direction)},classes(){return{bookChangeNavButtonLeft:this.direction==="prev",bookChangeNavButtonRight:this.direction==="next"}}},methods:{...b(d,["bookChangeIcon"])}};function Xs(e,t,l,c,a,o){const s=h("PaginationNavButton");return e.toRoute?(u(),m(s,{key:0,class:R(o.classes),icon:o.icon,variant:"plain",title:o.title,to:e.toRoute},null,8,["class","icon","title","to"])):T("",!0)}const Zs=v(Qs,[["render",Xs],["__scopeId","data-v-e6c3b493"]]),Js={name:"ReaderNavButton",components:{PaginationNavButton:Ge},props:{value:{type:Number,required:!0},twoPages:{type:Boolean,default:!1}},computed:{...k(d,["isVertical"]),...k(d,{storePage:e=>e.page,toRoute(e){if(!this.isVertical)return{params:{pk:e.books.current.pk,page:this.value}}},isBookPrev:e=>!!e.routes.books.prev,isBookNext:e=>!!e.routes.books.next}),classes(){return{readerNavButtonLeft:!this.isBookPrev&&this.value===0,readerNavButtonRight:!this.isBookNext&&this.value!=0}},title(){return"Page "+this.value},disabled(){return this.value===this.storePage||this.twoPages&&!!(this.value%2)&&this.value-1===this.storePage}},methods:{...b(d,["setActivePage"]),onClick(){this.isVertical&&this.setActivePage(this.value,!0)}}};function ea(e,t,l,c,a,o){const s=h("PaginationNavButton");return u(),m(s,{key:e.isVertical,disabled:o.disabled,class:R(["readerNavButton",o.classes]),title:o.title,to:e.toRoute,onClick:o.onClick},{default:g(()=>[w(L(l.value),1)]),_:1},8,["disabled","class","title","to","onClick"])}const ta=v(Js,[["render",ea],["__scopeId","data-v-f60d8fb5"]]),z="prev",M="next",oa={name:"ReaderNavToolbar",components:{PaginationSlider:ro,ReaderNavButton:ta,PaginationToolbar:no,ReaderBookChangeNavButton:Zs},computed:{...k(F,["isAuthDialogOpen"]),...k(d,["activeSettings","isReadInReverse","isVertical"]),...k(d,{showToolbars:e=>e.showToolbars,storePage:e=>e.page,key(e){return`${e.books?.current?.pk}:${this.step}:${this.isReadInReverse}`},maxPage:e=>e.books?.current?.maxPage||0}),twoPages(){return this.activeSettings.twoPages},step(){return this.activeSettings.twoPages?2:1},trackColor(){return this.twoPages&&+this.storePage>=this.maxPage-1?this.$vuetify.theme.current.colors.primary:""},min(){return this.isReadInReverse?this.maxPage:0},max(){return this.isReadInReverse?0:this.maxPage},bookPrev(){return this.isReadInReverse?"next":"prev"},bookNext(){return this.isReadInReverse?"prev":"next"}},mounted(){document.addEventListener("keyup",this._keyUpListener)},beforeUnmount(){document.removeEventListener("keyup",this._keyUpListener)},methods:{...b(d,["routeToBook","routeToDirection","routeToDirectionOne","routeToPage","setActivePage"]),onSliderUpdate(e){this.isVertical?this.setActivePage(e,!0):this.routeToPage(e)},_keyUpListener(e){if(e.stopPropagation(),!this.isAuthDialogOpen)switch(e.key){case" ":!e.shiftKey&&window.innerHeight+window.scrollY+1>=document.body.scrollHeight?this.routeToDirection(M):e.shiftKey&&window.scrollY===0&&this.routeToDirection(z);break;case"j":case"ArrowRight":this.routeToDirection(M);break;case"k":case"ArrowLeft":this.routeToDirection(z);break;case",":this.routeToDirectionOne(z);break;case".":this.routeToDirectionOne(M);break;case"n":this.routeToBook(M);break;case"p":this.routeToBook(z);break}}}};function sa(e,t,l,c,a,o){const s=h("ReaderBookChangeNavButton"),i=h("ReaderNavButton"),p=h("PaginationSlider"),f=h("PaginationToolbar");return u(),m(go,null,{default:g(()=>[e.maxPage?$((u(),m(f,{key:0,id:"readerToolbarNav"},{default:g(()=>[r(s,{direction:o.bookPrev,narrow:!1},null,8,["direction"]),r(i,{value:o.min,"two-pages":o.twoPages},null,8,["value","two-pages"]),(u(),m(p,{key:e.key,"model-value":e.storePage,min:0,max:e.maxPage,step:o.step,"track-color":o.trackColor,reverse:e.isReadInReverse,"onUpdate:modelValue":t[0]||(t[0]=B=>o.onSliderUpdate(B))},null,8,["model-value","max","step","track-color","reverse"])),r(i,{value:o.max,"two-pages":o.twoPages},null,8,["value","two-pages"]),r(s,{direction:o.bookNext,narrow:!1},null,8,["direction"])]),_:1},512)),[[Ee,e.showToolbars]]):T("",!0)]),_:1})}const aa=v(oa,[["render",sa],["__scopeId","data-v-ebe715c2"]]),na={name:"MainReader",components:{BooksWindow:ns,ReaderEmpty:Ys,ReaderNavToolbar:aa,ReaderTopToolbar:st,ReaderSettingsDrawer:Es,Unauthorized:Xt},data(){return{showToolbars:!1}},computed:{...k(F,["isAuthorized"]),...k(F,{user:e=>e.user}),...k(d,{empty:e=>e.empty})},watch:{user(){this.loadReaderSettings()}},created(){this.reset();const e=this.user?0:300,t=this.user;setTimeout(()=>{this.user?.id===t?.id&&this.loadReaderSettings()},e)},methods:{...b(d,["loadReaderSettings","reset"])}},ra={key:0},ia={id:"readerContainer"};function la(e,t,l,c,a,o){const s=h("ReaderTopToolbar"),i=h("BooksWindow"),p=h("ReaderNavToolbar"),f=h("ReaderEmpty"),B=h("ReaderSettingsDrawer"),A=h("Unauthorized");return e.isAuthorized?(u(),m(Zt,{key:0,id:"readerWrapper"},{default:g(()=>[e.empty?(u(),m(f,{key:1})):(u(),_("div",ra,[n("div",ia,[r(s),r(i),r(p)])])),r(B)]),_:1})):(u(),m(A,{key:1}))}const ca=v(na,[["render",la],["__scopeId","data-v-6df2b556"]]),wa=Object.freeze(Object.defineProperty({__proto__:null,default:ca},Symbol.toStringTag,{value:"Module"}));export{jo as P,Je as S,wa as r};
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/pdf-doc-CAzVDc80.js","assets/main-d46UvpG6.js","assets/main-CZN13qLI.css","assets/pdf-doc-DxqOo2k2.css","assets/pager-full-pdf-8uR2kH3x.js","assets/settings-drawer-CjqFmP5f.js","assets/forwardRefs-BXEe8ItZ.js","assets/forwardRefs-CecUXkvN.css","assets/unauthorized-B0KN5ef3.js","assets/VDialog-BFf48e97.js","assets/VDialog-cfA1435M.css","assets/change-password-dialog-DoBLv9WU.js","assets/VForm-BNXhV_uk.js","assets/VSelectionControl-xYnmeS9J.js","assets/VSelectionControl-R4GtShoa.css","assets/VForm-DxBt30-N.css","assets/admin-C6VbbEgi.js","assets/change-password-dialog-DL8UMjmX.css","assets/ssrBoot-Bn2PfqMS.js","assets/unauthorized-ChdZFt-1.css","assets/copy-to-clipboard-DoUvDJVx.js","assets/VDivider-Dtis_q2S.js","assets/VDivider-DU47sRrT.css","assets/settings-drawer-d-7mkVdG.css","assets/VWindowItem-0tN6eYpd.js","assets/VWindowItem-CWv03gfN.css","assets/VSelect-DIXHkKJm.js","assets/VCheckboxBtn-CYmOhPsT.js","assets/VSelect-BvTTr4RP.css","assets/pagination-toolbar-Bj2tvIp6.js","assets/VTable-BK7gXlps.js","assets/VTable-BsI6FsWH.css","assets/confirm-dialog-WKjj039l.js","assets/confirm-dialog-YfC8mRQA.css","assets/pagination-toolbar-BMm-LmG-.css","assets/VExpansionPanels-DFJglYob.js","assets/VExpansionPanels-B8KjM0Qi.css","assets/VRadioGroup-BlGhrl3W.js","assets/VRadioGroup-Cp9mZ7cb.css","assets/VCheckbox-DSiToISz.js","assets/VCheckbox-CvH8ekHL.css","assets/index-CuPwxeMJ.js","assets/index-Czf-fUM7.css"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{_ as v,D as b,G as k,am as d,z as m,I as T,w as u,y as g,d as R,x as h,a as r,A as w,C as L,v as _,ac as we,F as D,an as it,ao as lt,m as ee,ap as Ce,aq as ct,ar as Te,J as Re,n as O,as as Be,at as q,au as ut,U as $,a7 as dt,av as ht,aw as De,B as U,l as Ie,b as n,ax as pt,E as $e,ay as gt,az as mt,aA as kt,g as xe,p as ae,aB as Le,u as Ve,aC as Oe,L as Ae,aD as ft,aE as vt,c as x,aF as bt,aG as yt,aH as _t,aI as Pt,aJ as St,aK as wt,aL as Ct,H as F,ad as Tt,a1 as Rt,aM as Bt,Q as Dt,R as It,S as $t,T as xt,aN as Lt,aO as Vt,aP as Ot,aQ as At,N as te,aR as Et,X as Nt,aS as Ee,aT as Ut}from"./main-d46UvpG6.js";import{V as Ft,a as Wt,S as zt}from"./settings-drawer-CjqFmP5f.js";import{k as K,I as Mt,r as Ne,i as Ue,c as Kt,s as Fe,t as We,d as Ht,j as ze,v as Me,w as jt,V as Ke}from"./forwardRefs-BXEe8ItZ.js";import{P as qt,E as He,A as Gt,V as Yt,a as Xt,U as Jt,c as Qt}from"./unauthorized-B0KN5ef3.js";import{V as je,a as qe}from"./VWindowItem-0tN6eYpd.js";import{b as Zt}from"./VSelect-DIXHkKJm.js";import{C as ne,a as eo}from"./VDialog-BFf48e97.js";import{D as to,T as oo,b as so,V as G,a as ao,P as Ge,c as no,d as ro}from"./pagination-toolbar-Bj2tvIp6.js";import{V as io,a as lo,b as co,c as uo}from"./VExpansionPanels-DFJglYob.js";import{d as ho,V as po,e as go}from"./VSelectionControl-xYnmeS9J.js";import{V as Y,a as X}from"./VRadioGroup-BlGhrl3W.js";import{a as oe}from"./VDivider-Dtis_q2S.js";import{V as N}from"./VCheckbox-DSiToISz.js";import{T as J}from"./index-CuPwxeMJ.js";const mo={control:"ctrl",command:"cmd",option:"alt",up:"arrowup",down:"arrowdown",left:"arrowleft",right:"arrowright",esc:"escape",spacebar:" ",space:" ",return:"enter",del:"delete",minus:"-",hyphen:"-"};function ge(e){const t=e.toLowerCase();return mo[t]||t}function Ye(e){if(!e)return[];const l=(e.startsWith("+")||e.startsWith("_"))&&!(e.startsWith("++")||e.startsWith("__"));if(e.length>1&&l||e.includes("++")||e.includes("__")||e==="+"||e==="_"||e.length>1&&(e.endsWith("+")||e.endsWith("_"))&&e.at(-2)!==e.at(-1)||e==="++"||e==="--"||e==="__")return[];const a=[];let o="";const s=()=>{o&&(a.push(ge(o)),o="")};for(let p=0;p<e.length;p++){const f=e[p],B=e[p+1];f==="+"||f==="_"||f==="-"?f===B?(s(),a.push(f),p++):f==="+"||f==="_"?s():o+=f:o+=f}return s(),a.some(p=>p.length>1&&p.includes("-")&&p!=="--")?[]:a.length===0&&e?[ge(e)]:a}function ko(e){if(!e)return[];const t=e.startsWith("-")&&!["---","--+"].includes(e),l=e.endsWith("-")&&!e.endsWith("+-")&&!e.endsWith("_-")&&e!=="-"&&e!=="---";if(t||l)return[];const c=[];let a="",o=0;for(;o<e.length;){const f=e[o];if(f==="-"){const B=e[o-1],A=o>1?e[o-2]:void 0;(B==="+"||B==="_")&&A!=="+"?(a+=f,o++):(a?(c.push(a),a=""):c.push("-"),o++)}else a+=f,o++}a&&c.push(a);const s=[];let i=0;for(const f of c)f==="-"?(i%2===0&&s.push("-"),i++):(i=0,s.push(f));return s.every(f=>Ye(f).length>0)?s:[]}function Xe(e,t){const{self:l=!1}=t.modifiers??{},c=t.value,a=typeof c=="object"&&c.options||{passive:!0},o=typeof c=="function"||"handleEvent"in c?c:c.handler,s=l?e:t.arg?document.querySelector(t.arg):window;s&&(s.addEventListener("scroll",o,a),e._onScroll=Object(e._onScroll),e._onScroll[t.instance.$.uid]={handler:o,options:a,target:l?void 0:s})}function Je(e,t){if(!e._onScroll?.[t.instance.$.uid])return;const{handler:l,options:c,target:a=e}=e._onScroll[t.instance.$.uid];a.removeEventListener("scroll",l,c),delete e._onScroll[t.instance.$.uid]}function fo(e,t){t.value!==t.oldValue&&(Je(e,t),Xe(e,t))}const vo={mounted:Xe,unmounted:Je,updated:fo},bo={name:"BookChangeDrawer",props:{direction:{type:String,required:!0}},head(){if(this.isDrawerOpen)return this.prefetchLinks(this.params,this.computedDirection,!0)},computed:{...k(d,["isBTT"]),...k(d,{computedDirection(){return this.normalizeDirection(this.direction)},params(e){return e.routes.books[this.computedDirection]},isDrawerOpen(e){return e.bookChange===this.computedDirection},icon(){return this.bookChangeIcon(this.computedDirection)}}),drawerLocation(){return this.bookChangeLocation(this.direction)},cursorClass(){return this.bookChangeCursorClass(this.computedDirection)},show(){return this.bookChangeShow(this.computedDirection)},route(){return this.toRoute(this.params)},label(){return this.linkLabel(this.computedDirection,"Book")}},methods:{...b(d,["linkLabel","normalizeDirection","prefetchLinks","toRoute","bookChangeLocation","bookChangeCursorClass","bookChangeShow","bookChangeIcon"])}};function yo(e,t,l,c,a,o){const s=h("router-link");return o.show?(u(),m(Ft,{key:0,class:R(["bookChangeDrawer",{drawerActivated:e.isDrawerOpen}]),"disable-resize-watcher":"","disable-route-watcher":"",location:o.drawerLocation,"model-value":e.isDrawerOpen,scrim:!1,temporary:"",touchless:""},{default:g(()=>[r(s,{class:R({navLink:!0,[o.cursorClass]:!0}),to:o.route,"aria-label":o.label,title:o.label,onClick:t[0]||(t[0]=i=>i.stopImmediatePropagation())},{default:g(()=>[r(K,{class:"bookChangeIcon"},{default:g(()=>[w(L(e.icon),1)]),_:1})]),_:1},8,["class","to","aria-label","title"])]),_:1},8,["location","model-value","class"])):T("",!0)}const _o=v(bo,[["render",yo],["__scopeId","data-v-0340b976"]]),Po={name:"BookChangeActivator",components:{BookChangeDrawer:_o},props:{direction:{type:String,required:!0}},computed:{show(){return this.bookChangeShow(this.computedDirection)},computedDirection(){return this.normalizeDirection(this.direction)},positionClass(){return this.bookChangeLocation(this.direction)+"Pos"},cursorClass(){return this.bookChangeCursorClass(this.direction)}},methods:{...b(d,["bookChangeCursorClass","bookChangeLocation","bookChangeShow","normalizeDirection","setBookChangeFlag"])}};function So(e,t,l,c,a,o){const s=h("BookChangeDrawer");return u(),_(D,null,[o.show?(u(),_("div",{key:0,class:R(["changeColumn",{[o.positionClass]:!0,[o.cursorClass]:!0}]),onClick:t[0]||(t[0]=we(i=>e.setBookChangeFlag(l.direction),["stop"]))},null,2)):T("",!0),r(s,{direction:l.direction},null,8,["direction"])],64)}const wo=v(Po,[["render",So],["__scopeId","data-v-67df236c"]]),Co={name:"LoadingPage",components:{Placeholder:qt},props:{twoPages:{type:Boolean,required:!0}}};function To(e,t,l,c,a,o){const s=h("Placeholder");return u(),_("div",{class:R(["pageLoading",{twoPages:l.twoPages}])},[r(s,{class:"pagePlaceholder"})],2)}const Ro=v(Co,[["render",To],["__scopeId","data-v-04027168"]]),me="unauthorized",Bo={name:"ErrorPage",components:{EmptyState:He},props:{twoPages:{type:Boolean,required:!0},type:{type:String,required:!0}},emits:["retry"],computed:{text(){return this.type===me?"Protected page":"Failed to load page"},icon(){return this.type===me?it:lt}},methods:{onAction(e){this.$emit("retry",e)}}};function Do(e,t,l,c,a,o){const s=h("EmptyState");return u(),m(s,{class:R(["pageError",{twoPages:l.twoPages}]),headline:o.text,icon:o.icon,"action-text":"Retry","onClick:action":o.onAction},null,8,["class","headline","icon","onClick:action"])}const Io=v(Bo,[["render",Do],["__scopeId","data-v-97fa48e8"]]),$o={name:"ImgPage",props:{book:{type:Object,required:!0},src:{type:String,required:!0}},emits:["load","error"],computed:{...k(d,{scale:e=>e.clientSettings.scale}),style(){const e={};if(this.scale==1)return e;const t=this.$el;if(!t?.naturalWidth)return e;const l=t.naturalWidth/2;return e.transformOrigin=`${l}px top`,e.transform=`scale(${this.scale})`,e},bookSettings(){return this.getBookSettings(this.book)},classes(){return this.bookSettings.fitToClass}},methods:{...b(d,["getBookSettings"])}},xo=["src"];function Lo(e,t,l,c,a,o){return u(),_("img",ee({class:[o.classes,"img"],draggable:"false",src:l.src,style:o.style},e.$attrs,{onError:t[0]||(t[0]=s=>e.$emit("error",s)),onLoad:t[1]||(t[1]=s=>e.$emit("load",s))}),null,16,xo)}const ke=v($o,[["render",Lo],["__scopeId","data-v-014c2ac0"]]),fe=Ce(Te(()=>Be(()=>import("./pdf-doc-CAzVDc80.js"),__vite__mapDeps([0,1,2,3])))),Vo=333,Oo={name:"BookPage",components:{ErrorPage:Io,LoadingPage:Ro,PDFDoc:fe,ImgPage:ke},props:{book:{type:Object,required:!0},page:{type:Number,required:!0}},data(){return{showProgress:!1,loaded:!1,error:"",ts:0}},computed:{...k(d,{scale:e=>e.clientSettings.scale}),style(){const e={};if(this.book.fileType==="PDF"||this.scale==1)return e;const t=this.$refs.pageComponent?.$el;return t?.naturalHeight&&(e.height=t.naturalHeight*this.scale+"px",e.width=t.naturalWidth*this.scale+"px"),e},src(){const e=Math.max(this.book.mtime,this.ts),t={pk:this.book.pk,page:this.page,mtime:e};return ct(t)},component(){return this.book.fileType==="PDF"?fe:ke},bookSettings(){return this.getBookSettings(this.book)},twoPages(){return this.bookSettings.twoPages}},mounted(){setTimeout(function(){this.loaded||(this.loading=!0)},Vo)},methods:{...b(d,["getBookSettings"]),onLoad(){this.showProgress=!1,this.loaded=!0,this.error=!1},onError(){this.error="load",this.showProgress=!1},onUnauthorized(){this.error="unauthorized",this.showProgress=!1},onRetry(){this.ts=Date.now()}}},Ao=["id","data-page"];function Eo(e,t,l,c,a,o){const s=h("ErrorPage"),i=h("LoadingPage");return u(),_("div",{id:`page${l.page}`,key:a.ts,"data-page":l.page,class:"page",style:O(o.style)},[a.error?(u(),m(s,{key:0,"two-pages":o.twoPages,type:a.error,onRetry:o.onRetry},null,8,["two-pages","type","onRetry"])):a.showProgress&&!a.loaded?(u(),m(i,{key:1,"two-pages":o.twoPages},null,8,["two-pages"])):(u(),m(Re(o.component),{key:2,ref:"pageComponent",book:l.book,page:1,src:o.src,onError:o.onError,onLoad:o.onLoad,onUnauthorized:o.onUnauthorized},null,40,["book","src","onError","onLoad","onUnauthorized"]))],12,Ao)}const Qe=v(Oo,[["render",Eo],["__scopeId","data-v-14cc8bcc"]]),No=.5,Uo={name:"ScaleForScroll",emits:["click"],data(){return{mdiMagnifyMinusOutline:ut}},computed:{...k(d,{scale:e=>e.clientSettings.scale}),showReset(){return this.scale!=q},style(){return{cursor:this.scale==q?"zoom-in":"all-scroll"}}},methods:{...b(d,["setSettingsClient"]),clearSelection(){globalThis.getSelection&&globalThis.getSelection().removeAllRanges()},onDoubleClick(){this.clearSelection();const e=this.scale+No;this.setSettingsClient({scale:e})},scaleReset(){this.setSettingsClient({scale:q})}}};function Fo(e,t,l,c,a,o){const s=ht("drag-scroller");return $((u(),_("div",{class:"scaleForScroll",style:O(o.style),onDblclick:t[0]||(t[0]=(...i)=>o.onDoubleClick&&o.onDoubleClick(...i))},[dt(e.$slots,"default",{},void 0,!0),o.showReset?(u(),m(K,{key:0,class:"resetIcon",onClick:we(o.scaleReset,["stop"])},{default:g(()=>[w(L(a.mdiMagnifyMinusOutline),1)]),_:1},8,["onClick"])):T("",!0)],36)),[[s,,void 0,{onlyX:!0}]])}const Ze=v(Uo,[["render",Fo],["__scopeId","data-v-88f3df90"]]),Wo={name:"HorizontalPages",components:{BookPage:Qe,ScaleForScroll:Ze},props:{book:{type:Object,required:!0},page:{type:Number,required:!0}},emits:["click"],computed:{bookSettings(){return this.getBookSettings(this.book)},isReadInReverse(){return this.bookSettings.isReadInReverse},showSecondPage(){return this.bookSettings.twoPages&&this.page<this.book.maxPage&&!this.isCoverPage(this.book,this.page)},showPageOne(){return!this.isReadInReverse||this.showSecondPage},showPageTwo(){return this.isReadInReverse||this.showSecondPage},pageOne(){return this.isReadInReverse?this.page+1:this.page},pageTwo(){return this.isReadInReverse?this.page:this.page+1}},methods:{...b(d,["getBookSettings","isCoverPage"])}};function zo(e,t,l,c,a,o){const s=h("BookPage"),i=h("ScaleForScroll");return u(),m(i,{class:"noWrap"},{default:g(()=>[o.showPageOne?(u(),m(s,{key:0,ref:"pageOne",book:l.book,page:o.pageOne,class:"horizontalPage"},null,8,["book","page"])):T("",!0),o.showPageTwo?(u(),m(s,{key:1,book:l.book,page:o.pageTwo,class:"horizontalPage"},null,8,["book","page"])):T("",!0)]),_:1})}const Mo=v(Wo,[["render",zo],["__scopeId","data-v-ce77a1b1"]]),Ko={name:"PageChangeLink",props:{direction:{type:String,required:!0}},head(){return this.prefetchLinks(this.params,this.computedDirection)},computed:{...k(d,["isFirstPage","isLastPage"]),...k(d,{params(e){return e.routes[this.computedDirection]}}),computedDirection(){return this.normalizeDirection(this.direction)},show(){return this.computedDirection==="prev"?!this.isFirstPage:!this.isLastPage},pageChangeClass(){return"pageChangeColumn"},directionClass(){return this.direction},route(){return this.toRoute(this.params)},label(){return this.linkLabel(this.computedDirection,"Page")}},methods:{...b(d,["linkLabel","normalizeDirection","prefetchLinks","toRoute"])}};function Ho(e,t,l,c,a,o){const s=h("router-link");return o.show?(u(),m(s,{key:0,to:o.route,"aria-label":o.label,class:R(["changeColumn",{[o.directionClass]:!0}]),onClick:t[0]||(t[0]=i=>i.stopImmediatePropagation())},null,8,["to","aria-label","class"])):T("",!0)}const jo=v(Ko,[["render",Ho],["__scopeId","data-v-8a0b30bf"]]),qo=48,Go=48,Yo={name:"PagerHorizontal",components:{HorizontalPages:Mo,PageChangeLink:jo},props:{book:{type:Object,required:!0}},data(){return{activePage:0,pages:[]}},computed:{...k(d,{prevBook:e=>e.routes.books?.prev,nextBook:e=>e.routes.books?.next,storePage:e=>e.page,storePk:e=>e.books.current.pk,transition:e=>e.readerSettings.pageTransition}),bookSettings(){return this.getBookSettings(this.book)},twoPages(){return this.bookSettings.twoPages},isReadInReverse(){return this.bookSettings.isReadInReverse},windowIndex(){const e=this.activePage-this.pages[0];return Math.min(Math.max(0,e),this.book.maxPage)}},watch:{twoPages(){this.setActivePage(this.storePage,!0)},storePage(e){if(this.book.pk===this.storePk){this.activePage=e;const t=this.pages.at(0),l=this.pages.at(-1);(e<t||e>l)&&this.setPages()}}},created(){this.book.pk===this.storePk?this.activePage=+this.$route.params.page:this.book.pk===this.prevBook.pk?this.activePage=this.book.maxPage:this.activePage=0,this.setPages()},methods:{...b(d,["getBookSettings","setBookChangeFlag","setActivePage"]),setPages(){const e=Math.max(this.activePage-qo,0),t=Math.min(this.activePage+Go,this.book.maxPage);this.pages=De(e,t+1)}}};function Xo(e,t,l,c,a,o){const s=h("PageChangeLink"),i=h("HorizontalPages");return u(),m(je,{"show-arrows":"",continuous:"","model-value":o.windowIndex,reverse:o.isReadInReverse},{prev:g(()=>[r(s,{direction:"prev"})]),next:g(()=>[r(s,{direction:"next"})]),default:g(()=>[(u(!0),_(D,null,U(a.pages,p=>(u(),m(qe,{key:`c/${l.book.pk}/${p}`,class:"windowItem",disabled:"",eager:p>=e.storePage-1&&p<=e.storePage+2,"model-value":p,transition:e.transition,"reverse-transition":e.transition},{default:g(()=>[r(i,{book:l.book,page:p},null,8,["book","page"])]),_:2},1032,["eager","model-value","transition","reverse-transition"]))),128))]),_:1},8,["model-value","reverse"])}const ve=v(Yo,[["render",Xo],["__scopeId","data-v-a55977d3"]]),be=250,Jo={name:"PagerVertical",components:{BookPage:Qe,ScaleForScroll:Ze},props:{book:{type:Object,required:!0}},data(){return{innerHeight:window.innerHeight,innerWidth:window.innerWidth,intersectorOn:!1,programmaticScroll:!1,intersectOptions:{handler:this.onIntersect,options:{threshold:[.75]}}}},computed:{...k(d,{storePage:e=>e.page,showToolbars:e=>e.showToolbars}),...Ie(d,["reactWithScroll"]),bookSettings(){return this.getBookSettings(this.book)},isReadInReverse(){return this.bookSettings.isReadInReverse},items(){const e=this.book?.maxPage?this.book.maxPage+1:0,t=De(0,e);return this.isReadInReverse&&t.reverse(),t}},watch:{storePage(e){this.reactWithScroll&&this.scrollToPage(e)}},mounted(){window.addEventListener("resize",this.onResize),setTimeout(()=>{this.scrollToPage(this.storePage)},be)},beforeUnmount(){window.removeEventListener("resize",this.onResize)},methods:{...b(d,["getBookSettings","setActivePage","setBookChangeFlag"]),onIntersect(e,t){if(e&&this.intersectorOn){const c=+t[0].target.dataset.page;this.setActivePage(c,!1)}},onScroll(){if(this.programmaticScroll)return;this.intersectorOn=!0;const e=this.$refs.verticalScroll.$el,t=e.scrollTop;if(this.storePage===0&&t===0)this.setBookChangeFlag("prev");else if(this.storePage===this.book.maxPage){const l=e.scrollTopMax||e.scrollHeight-e.clientTop;window.innerHeight+t+1>=l&&this.setBookChangeFlag("next")}},scrollToPage(e){this.intersectorOn=!1,this.programmaticScroll=!0;const t=this.$refs.verticalScroll;t?t.scrollToIndex(e):console.debug("Can't find verticalScroll component."),setTimeout(()=>{this.programmaticScroll=!1},be)},onResize(){this.innerHeight=window.innerHeight,this.innerWidth=window.innerWidth}}},Qo=["data-page"];function Zo(e,t,l,c,a,o){const s=h("BookPage"),i=h("ScaleForScroll");return u(),m(i,null,{default:g(()=>[$((u(),m(Zt,{id:"verticalScroll",key:o.isReadInReverse,ref:"verticalScroll",items:o.items,height:a.innerHeight,width:a.innerWidth},{default:g(({item:p})=>[r(s,{book:l.book,page:p,class:"verticalPage"},null,8,["book","page"]),$(n("div",{class:R(["pageTracker",{pageTrackerToolbars:e.showToolbars}]),"data-page":p},null,10,Qo),[[Mt,a.intersectOptions,void 0,{quiet:!0}]])]),_:1},8,["items","height","width"])),[[vo,o.onScroll,"#verticalScroll"]])]),_:1})}const ye=v(Jo,[["render",Zo],["__scopeId","data-v-4fdc17f1"]]),_e=Ce(Te(()=>Be(()=>import("./pager-full-pdf-8uR2kH3x.js"),__vite__mapDeps([4,1,2,0,3,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42])))),es={name:"PagerSelector",components:{PagerHorizontal:ve,PagerPDF:_e,PagerVertical:ye},props:{book:{type:Object,required:!0}},emits:["click"],head(){return this.prefetchBook(this.book)},computed:{...k(d,["cacheBook"]),...k(d,{storePk:e=>e.books?.current?.pk||0}),isActiveBook(){return this.book&&this.storePk===this.book?.pk},bookSettings(){return this.getBookSettings(this.book)},readerFullPdf(){return this.book?.fileType=="PDF"&&this.cacheBook&&!this.bookSettings.isVertical},component(){let e;return this.readerFullPdf?e=_e:this.bookSettings.isVertical?e=ye:e=ve,e}},watch:{$route(e){+e.params.pk===this.book.pk&&this.setActivePage(+e.params.page,!0)}},created(){this.isActiveBook&&this.setActivePage(+this.$route.params.page,!0)},methods:{...b(d,["getBookSettings","isBookVertical","setActivePage","prefetchBook"])}};function ts(e,t,l,c,a,o){return u(),m(Re(o.component),{book:l.book},null,8,["book"])}const os=v(es,[["render",ts]]),ss={name:"BooksWindow",components:{BookChangeActivator:wo,Pager:os},computed:{...k(d,["isBTT"]),...k(d,{books:e=>[e.books.prev,e.books.current,e.books.next].filter(Boolean),bookChange:e=>e.bookChange,currentBookPk:e=>e.books?.current?.pk||0,bookRoutes:e=>e.routes.books,transition:e=>e.readerSettings.pageTransition}),bookChangePrev(){return this.bookChangeShow("prev")},bookChangeNext(){return this.bookChangeShow("next")}},watch:{$route(e,t){(!t||!t.params||+e.params.pk!=+t.params.pk)&&this.loadBooks({params:e.params})}},beforeMount(){this.setBookChangeFlag(),this.loadBooks({})},methods:{...b(d,["loadBooks","setBookChangeFlag","toggleToolbars"]),click(){this.toggleToolbars(),this.setBookChangeFlag()},eager(e){return this.bookChange&&this.bookRoutes[this.bookChange]&&this.bookRoutes[this.bookChange].pk===e}}};function as(e,t,l,c,a,o){const s=h("BookChangeActivator"),i=h("Pager");return u(),m(je,{id:"booksWindow",direction:"vertical","model-value":e.currentBookPk,reverse:e.isBTT,"show-arrows":"",onClick:e.toggleToolbars},{prev:g(()=>[r(s,{direction:"prev"})]),next:g(()=>[r(s,{direction:"next"})]),default:g(()=>[(u(!0),_(D,null,U(e.books,p=>(u(),m(qe,{key:`c/${p.pk}`,class:"windowItem",disabled:"",eager:o.eager(p.pk),value:p.pk,transition:e.transition,"reverse-transitin":e.transition},{default:g(()=>[r(i,{book:p,onClick:o.click},null,8,["book","onClick"])]),_:2},1032,["eager","value","transition","reverse-transitin"]))),128))]),_:1},8,["model-value","reverse","onClick"])}const ns=v(ss,[["render",as],["__scopeId","data-v-3b8d07f2"]]),rs={name:"DownloadPanel",components:{CodexListItem:ne,DownloadButton:to},data(){return{mdiDownload:kt,mdiFileImage:mt}},computed:{...k(d,["activeTitle","routeParams"]),...k(d,{currentBook:e=>e.books?.current,fileType:e=>e.books?.current?.fileType,mtime:e=>e.books?.current?.mtime,pk:e=>e.books?.current?.pk,filename:e=>e.books?.current?.filename,storePage:e=>e.page}),pageSrc(){const e={pk:this.pk,page:this.storePage,ts:this.ts};return gt(e)},pageName(){const e=this.fileType==="PDF"?"pdf":"jpg";return`${this.activeTitle} - page ${this.storePage}.${e}`},downloadPageTitle(){return`Download Page ${this.storePage}`},downloadItem(){return{group:"c",ids:[this.pk],childCount:1,name:this.filename,mtime:this.mtime}}},methods:{...b($e,["downloadIOSPWAFix"]),downloadPage(){pt(this.pageSrc,this.pageName)}}},is={key:0,id:"downloadPanel"};function ls(e,t,l,c,a,o){const s=h("CodexListItem"),i=h("DownloadButton");return e.currentBook?(u(),_("div",is,[r(s,{"prepend-icon":a.mdiFileImage,title:o.downloadPageTitle,onClick:o.downloadPage},null,8,["prepend-icon","title","onClick"]),r(i,{button:!1,item:o.downloadItem},null,8,["item"])])):T("",!0)}const cs=v(rs,[["render",ls],["__scopeId","data-v-a873b002"]]),us=ae({color:String,...Me(),...Ae(),...ze(),...Ht({tag:"kbd"}),...Oe(),...We()},"VKbd"),Pe=xe()({name:"VKbd",props:us(),setup(e,t){let{slots:l}=t;const{themeClasses:c}=Le(e),{borderClasses:a}=Ne(e),{roundedClasses:o}=Ue(e),{backgroundColorClasses:s,backgroundColorStyles:i}=Kt(()=>e.color),{elevationClasses:p}=Fe(e);return Ve(()=>r(e.tag,{class:R(["v-kbd",c.value,s.value,a.value,p.value,o.value,e.class]),style:O([i.value,e.style])},l)),{}}});function et(e,t,l){const c=l&&e.mac?e.mac:e.default,a=t==="icon"&&!l||t==="icon"&&!c.icon||t==="symbol"&&!c.symbol?"text":t;let o=c[a]??c.text;return a==="text"&&typeof o=="string"&&o.startsWith("$")&&!o.startsWith("$vuetify.")&&(o=o.slice(1).toUpperCase()),a==="icon"?["icon",o]:[a,o]}const tt={ctrl:{mac:{symbol:"⌃",icon:"$ctrl",text:"$vuetify.hotkey.ctrl"},default:{text:"Ctrl"}},meta:{mac:{symbol:"⌘",icon:"$command",text:"$vuetify.hotkey.command"},default:{text:"Ctrl"}},cmd:{mac:{symbol:"⌘",icon:"$command",text:"$vuetify.hotkey.command"},default:{text:"Ctrl"}},shift:{mac:{symbol:"⇧",icon:"$shift",text:"$vuetify.hotkey.shift"},default:{text:"Shift"}},alt:{mac:{symbol:"⌥",icon:"$alt",text:"$vuetify.hotkey.option"},default:{text:"Alt"}},enter:{default:{symbol:"↵",icon:"$enter",text:"$vuetify.hotkey.enter"}},arrowup:{default:{symbol:"↑",icon:"$arrowup",text:"$vuetify.hotkey.upArrow"}},arrowdown:{default:{symbol:"↓",icon:"$arrowdown",text:"$vuetify.hotkey.downArrow"}},arrowleft:{default:{symbol:"←",icon:"$arrowleft",text:"$vuetify.hotkey.leftArrow"}},arrowright:{default:{symbol:"→",icon:"$arrowright",text:"$vuetify.hotkey.rightArrow"}},backspace:{default:{symbol:"⌫",icon:"$backspace",text:"$vuetify.hotkey.backspace"}},escape:{default:{text:"$vuetify.hotkey.escape"}}," ":{mac:{symbol:"␣",icon:"$space",text:"$vuetify.hotkey.space"},default:{text:"$vuetify.hotkey.space"}},"-":{default:{text:"-"}}},ds=ae({variant:{type:String,default:"elevated",validator:e=>["elevated","flat","tonal","outlined","text","plain","contained"].includes(e)}},"VHotkeyVariant"),hs=ae({keys:String,displayMode:{type:String,default:"icon"},keyMap:{type:Object,default:()=>tt},platform:{type:String,default:"auto"},inline:Boolean,disabled:Boolean,prefix:String,suffix:String,...Ae(),...Oe(),...Me(),...ze(),...We(),...ds(),color:String},"VHotkey");class se{constructor(t){if(["and","then"].includes(t))this.val=t;else throw new Error("Not a valid delineator")}isEqual(t){return this.val===t.val}}function Q(e){return e instanceof se}function ps(e){return typeof e=="string"}function gs(e,t,l){const c=t.toLowerCase();if(c in e){const a=et(e[c],"text",l);return typeof a[1]=="string"?a[1]:String(a[1])}return t.toUpperCase()}function Se(e,t,l,c){const a=l.toLowerCase();if(a in e){const o=et(e[a],t,c);return o[0]==="text"&&typeof o[1]=="string"&&o[1].startsWith("$")&&!o[1].startsWith("$vuetify.")?["text",o[1].replace("$","").toUpperCase(),l]:[...o,l]}return["text",l.toUpperCase(),l]}const ms=xe()({name:"VHotkey",props:hs(),setup(e){const{t}=ft(),{themeClasses:l}=Le(e),{rtlClasses:c}=vt(),{borderClasses:a}=Ne(e),{roundedClasses:o}=Ue(e),{elevationClasses:s}=Fe(e),i=x(()=>e.variant==="contained"),p=x(()=>({...e,variant:i.value?"elevated":e.variant})),{colorClasses:f,colorStyles:B,variantClasses:A}=jt(p),W=x(()=>e.platform==="auto"?typeof navigator<"u"&&/macintosh/i.test(navigator.userAgent):e.platform==="mac"),re=x(()=>e.displayMode),H=new se("and"),ie=new se("then"),le=x(()=>e.keyMap),E=x(()=>e.keys?e.keys.split(" ").map(y=>{const P=ko(y);return P.flatMap((S,C)=>{const he=Ye(S).reduce((V,pe,rt)=>rt!==0?[...V,H,pe]:[...V,pe],[]).map(V=>ps(V)?Se(le.value,re.value,V,W.value):V);return C<P.length-1&&he.push(ie),he})}):[]),at=x(()=>{if(!e.keys)return"";const P=E.value.map(S=>{const C=[];for(const I of S)if(Q(I))H.isEqual(I)?C.push(t("$vuetify.hotkey.plus")):ie.isEqual(I)&&C.push(t("$vuetify.hotkey.then"));else{const de=I[0]==="icon"||I[0]==="symbol"?Se(bt(tt,e.keyMap),"text",String(I[1]),W.value)[1]:I[1];C.push(j(de))}return C.join(" ")}).join(", ");return t("$vuetify.hotkey.shortcut",P)});function j(y){return y.startsWith("$vuetify.")?t(y):y}function nt(y){if(re.value==="text")return;const P=gs(le.value,String(y[2]),W.value);return j(P)}function ce(y,P,S){const C=S?"kbd":Pe,I=["v-hotkey__key",`v-hotkey__key-${y[0]}`,...S?["v-hotkey__key--nested"]:[a.value,o.value,s.value,f.value]];return r(C,{key:P,class:R(I),style:O(S?void 0:B.value),"aria-hidden":"true",title:nt(y)},{default:()=>[y[0]==="icon"?r(K,{icon:y[1],"aria-hidden":"true"},null):j(y[1])]})}function ue(y,P){return n("span",{key:P,class:"v-hotkey__divider","aria-hidden":"true"},[H.isEqual(y)?"+":t("$vuetify.hotkey.then")])}Ve(()=>n("div",{class:R(["v-hotkey",{"v-hotkey--disabled":e.disabled,"v-hotkey--inline":e.inline,"v-hotkey--contained":i.value},l.value,c.value,A.value,e.class]),style:O(e.style),role:"img","aria-label":at.value},[i.value?r(Pe,{key:"contained",class:R(["v-hotkey__contained-wrapper",a.value,o.value,s.value,f.value]),style:O(B.value),"aria-hidden":"true"},{default:()=>[e.prefix&&n("span",{key:"contained-prefix",class:"v-hotkey__prefix"},[e.prefix]),E.value.map((y,P)=>n("span",{class:"v-hotkey__combination",key:P},[y.map((S,C)=>Q(S)?ue(S,C):ce(S,C,!0)),P<E.value.length-1&&n("span",{"aria-hidden":"true"},[w(" ")])])),e.suffix&&n("span",{key:"contained-suffix",class:"v-hotkey__suffix"},[e.suffix])]}):n(D,null,[e.prefix&&n("span",{key:"prefix",class:"v-hotkey__prefix"},[e.prefix]),E.value.map((y,P)=>n("span",{class:"v-hotkey__combination",key:P},[y.map((S,C)=>Q(S)?ue(S,C):ce(S,C,!1)),P<E.value.length-1&&n("span",{"aria-hidden":"true"},[w(" ")])])),e.suffix&&n("span",{key:"suffix",class:"v-hotkey__suffix"},[e.suffix])])]))}}),ks={name:"KeyboardShortcutsTable",components:{VHotkey:ms},data(){return{mdiMenuLeft:St,mdiMenuRight:Pt,mdiKeyboardSpace:_t,mdiAppleKeyboardShift:yt}}},fs={class:"highlight-table"},vs={class:"highlight-table"},bs={class:"highlight-table"};function ys(e,t,l,c,a,o){const s=h("v-hotkey");return u(),_(D,null,[t[22]||(t[22]=n("h4",null,"Navigation",-1)),n("table",fs,[n("tbody",null,[n("tr",null,[n("td",null,[r(s,{keys:"j"}),t[0]||(t[0]=w(", ",-1)),r(s,{keys:"arrowleft"}),t[1]||(t[1]=w(", ",-1)),r(s,{keys:"shift+space"})]),t[2]||(t[2]=n("td",null,"Previous page",-1))]),n("tr",null,[n("td",null,[r(s,{keys:"k"}),t[3]||(t[3]=w(", ",-1)),r(s,{keys:"arrowright"}),t[4]||(t[4]=w(", ",-1)),r(s,{keys:"space"})]),t[5]||(t[5]=n("td",null,"Next page",-1))]),n("tr",null,[n("td",null,[r(s,{keys:","})]),t[6]||(t[6]=n("td",null,[w("Next "),n("em",null,"only"),w(" one page in two page mode.")],-1))]),n("tr",null,[n("td",null,[r(s,{keys:"."})]),t[7]||(t[7]=n("td",null,[w("Previous "),n("em",null,"only"),w(" one page in two page mode.")],-1))]),n("tr",null,[n("td",null,[r(s,{keys:"p"})]),t[8]||(t[8]=n("td",null,"Previous Book",-1))]),n("tr",null,[n("td",null,[r(s,{keys:"n"})]),t[9]||(t[9]=n("td",null,"Next Book",-1))]),n("tr",null,[n("td",null,[r(s,{keys:"esc"})]),t[10]||(t[10]=n("td",null,"Close book",-1))])])]),t[23]||(t[23]=n("h4",null,"Fit Page To",-1)),n("table",vs,[n("tbody",null,[n("tr",null,[n("td",null,[r(s,{keys:"s"})]),t[11]||(t[11]=n("td",null,"screen",-1))]),n("tr",null,[n("td",null,[r(s,{keys:"h"})]),t[12]||(t[12]=n("td",null,"screen height",-1))]),n("tr",null,[n("td",null,[r(s,{keys:"w"})]),t[13]||(t[13]=n("td",null,"screen width",-1))]),n("tr",null,[n("td",null,[r(s,{keys:"o"})]),t[14]||(t[14]=n("td",null,"Show page at original size",-1))]),n("tr",null,[n("td",null,[r(s,{keys:"2"})]),t[15]||(t[15]=n("td",null,"Toggle two page view",-1))]),n("tr",null,[n("td",null,[r(s,{keys:"r"})]),t[16]||(t[16]=n("td",null,"Read Right to Left",-1))]),n("tr",null,[n("td",null,[r(s,{keys:"l"})]),t[17]||(t[17]=n("td",null,"Read Left to Right",-1))]),n("tr",null,[n("td",null,[r(s,{keys:"t"})]),t[18]||(t[18]=n("td",null,"Read Top to Bottom",-1))]),n("tr",null,[n("td",null,[r(s,{keys:"b"})]),t[19]||(t[19]=n("td",null,"Read in Bottom to Top",-1))])])]),t[24]||(t[24]=n("h4",null,"Other",-1)),n("table",bs,[n("tbody",null,[n("tr",null,[n("td",null,[r(s,{keys:"m"})]),t[20]||(t[20]=n("td",null,"Show comic's metadata",-1))]),n("tr",null,[n("td",null,[r(s,{keys:"doubleclick"})]),t[21]||(t[21]=n("td",null,"Zoom page",-1))])])])],64)}const _s=v(ks,[["render",ys],["__scopeId","data-v-11cb1561"]]),Ps=/iP(?:ad|hone|od)|Android/,Ss=Ps.test(navigator.userAgent),ws=Ss||globalThis.orientation!==void 0,Cs={name:"KeyboardShortcutsPanel",components:{CodexListItem:ne,KeyboardShortcutsTable:_s},data(){return{mdiKeyboardOutline:wt,IS_MOBILE:ws}}};function Ts(e,t,l,c,a,o){const s=h("CodexListItem"),i=h("KeyboardShortcutsTable");return a.IS_MOBILE?T("",!0):(u(),m(io,{key:0},{default:g(()=>[r(lo,{id:"readerKeyboardShortcuts"},{default:g(()=>[r(co,{id:"shortcutsTitle"},{default:g(()=>[r(s,{id:"keyboardShortcutsItem","prepend-icon":a.mdiKeyboardOutline,title:"Keyboard Shortcuts"},null,8,["prepend-icon"])]),_:1}),r(uo,null,{default:g(()=>[r(i)]),_:1})]),_:1})]),_:1}))}const Rs=v(Cs,[["render",Ts],["__scopeId","data-v-8285795a"]]),ot=["fitTo","readingDirection","twoPages"];Object.freeze(ot);const Bs={name:"ReaderSettingsPanel",components:{CodexListItem:ne},data(){return{isGlobalScope:!1,mdiOpenInNew:Rt,mdiEye:Tt,openDelay:2e3,scopeItems:[{title:"Only this comic",value:!1},{title:"Default for all comics",value:!0}]}},computed:{...k(F,["isAuthDialogOpen"]),...k(d,["isVertical","isPDF","cacheBook"]),...k(d,{choices:e=>e.choices,validBook:e=>!!e.books?.current,selectedSettings(e){return this.isGlobalScope||!e.books?.current?e.readerSettings:e.books?.current.settings},isClearSettingsButtonDisabled(e){if(this.isGlobalScope||!e.books?.current)return!0;for(const t of ot){const l=e.books?.current.settings[t];if(!e.choices.nullValues.has(l))return!1}return!0},pdfInBrowserURL(e){return this.isPDF&&e.books?.current?Ct(e.books?.current):""},finishOnLastPage:e=>e.readerSettings.finishOnLastPage,pageTransition:e=>e.readerSettings.pageTransition}),...Ie(d,["readRtlInReverse"]),fitToChoices(){return this.choicesWithoutNull("fitTo")},readingDirectionChoices(){return this.choicesWithoutNull("readingDirection")},disableTwoPages(){return this.isVertical||this.isPDF&&this.cacheBook},disableCacheBook(){return this.isVertical&&this.isPDF},disablePageTransition(){return this.isVertical&&this.isPDF}},mounted(){document.addEventListener("keyup",this._keyUpListener)},beforeUnmount(){document.removeEventListener("keyup",this._keyUpListener)},methods:{...b(d,["clearSettingsLocal","setSettingsGlobal","setSettingsLocal","setSettingsClient"]),settingsDialogChanged(e){this.isGlobalScope?this.setSettingsGlobal(e):this.setSettingsLocal(e)},choicesWithoutNull(e){const t=[];for(const l of this.choices[e])l.value&&t.push(l);return Object.freeze(t),t},_keyUpListener(e){if(e.stopPropagation(),this.isAuthDialogOpen)return;let t;switch(e.key){case"w":t={fitTo:"W"};break;case"h":t={fitTo:"H"};break;case"s":t={fitTo:"S"};break;case"o":t={fitTo:"O"};break;case"2":t={twoPages:!this.selectedSettings.twoPages};break;case"l":t={readingDirection:"ltr"};break;case"r":t={readingDirection:"rtl"};break;case"t":t={readingDirection:"ttb"};break;case"b":t={readingDirection:"bbt"};break}t&&this.setSettingsLocal(t)}}},Ds={id:"readerScopedSettings",class:"readerCodexListItem"};function Is(e,t,l,c,a,o){const s=h("CodexListItem");return u(),_(D,null,[t[9]||(t[9]=n("h4",{class:"readerSettingsHeader"},"Comic Settings Scope",-1)),r(Y,{modelValue:a.isGlobalScope,"onUpdate:modelValue":t[0]||(t[0]=i=>a.isGlobalScope=i),class:"scopeRadioGroup readerCodexListItem",density:"compact","hide-details":"auto"},{default:g(()=>[(u(!0),_(D,null,U(a.scopeItems,i=>(u(),m(X,{key:i.value,label:i.title,value:i.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),r(ho,null,{default:g(()=>[n("div",Ds,[r(Y,{class:"displayRadioGroup",density:"compact",label:"Display","hide-details":"auto","model-value":e.selectedSettings.fitTo,"onUpdate:modelValue":t[1]||(t[1]=i=>o.settingsDialogChanged({fitTo:i}))},{default:g(()=>[(u(!0),_(D,null,U(o.fitToChoices,i=>(u(),m(X,{key:i.value,label:i.title,value:i.value},null,8,["label","value"]))),128))]),_:1},8,["model-value"]),r(N,{disabled:o.disableTwoPages,class:"scopedCheckbox",density:"compact",label:"Two pages","hide-details":"auto","model-value":e.selectedSettings.twoPages,"true-value":!0,indeterminate:e.selectedSettings.twoPages===null||e.selectedSettings.twoPages===void 0,"onUpdate:modelValue":t[2]||(t[2]=i=>o.settingsDialogChanged({twoPages:i}))},null,8,["disabled","model-value","indeterminate"]),r(Y,{class:"displayRadioGroup",density:"compact",label:"Reading Direction","hide-details":"auto","model-value":e.selectedSettings.readingDirection,"onUpdate:modelValue":t[3]||(t[3]=i=>o.settingsDialogChanged({readingDirection:i}))},{default:g(()=>[(u(!0),_(D,null,U(o.readingDirectionChoices,i=>(u(),m(X,{key:i.value,label:i.title,value:i.value},null,8,["label","value"]))),128))]),_:1},8,["model-value"]),r(N,{"model-value":e.selectedSettings.readRtlInReverse,class:"scopedCheckbox",density:"compact",label:"Read RTL Comics LTR","hide-details":"auto","true-value":!0,"onUpdate:modelValue":t[4]||(t[4]=i=>o.settingsDialogChanged({readRtlInReverse:i}))},null,8,["model-value"]),a.isGlobalScope?T("",!0):$((u(),m(Ke,{key:0,id:"clearSettingsButton",disabled:e.isClearSettingsButtonDisabled,onClick:e.clearSettingsLocal},{default:g(()=>[...t[8]||(t[8]=[w(" Clear Settings ",-1)])]),_:1},8,["disabled","onClick"])),[[J,{openDelay:a.openDelay,text:"Use the default settings for all comics for this comic"}]])])]),_:1}),r(oe),t[10]||(t[10]=n("h4",{class:"readerSettingsHeader"},"Reader Settings",-1)),r(N,{class:"readerCodexListItem","model-value":e.finishOnLastPage,density:"compact",label:"Finish Book On Last Page","hide-details":"auto","true-value":!0,"onUpdate:modelValue":t[5]||(t[5]=i=>e.setSettingsGlobal({finishOnLastPage:i}))},null,8,["model-value"]),$(r(N,{"model-value":e.pageTransition,class:"readerCodexListItem",density:"compact",disabled:o.disablePageTransition,label:"Animate Page Turns","hide-details":"auto","true-value":!0,"onUpdate:modelValue":t[6]||(t[6]=i=>e.setSettingsGlobal({pageTransition:i}))},null,8,["model-value","disabled"]),[[J,{openDelay:a.openDelay,text:"Animate page turns when reading horizontally."}]]),$(r(N,{"model-value":e.cacheBook,class:"readerCodexListItem",density:"compact",disabled:o.disableCacheBook,label:"Cache Entire Book","hide-details":"auto","true-value":!0,"onUpdate:modelValue":t[7]||(t[7]=i=>e.setSettingsClient({cacheBook:i}))},null,8,["model-value","disabled"]),[[J,{openDelay:a.openDelay,text:"Cache all pages from this book in the browser"}]]),e.pdfInBrowserURL?(u(),m(s,{key:0,"prepend-icon":a.mdiEye,"append-icon":a.mdiOpenInNew,title:"Read in Tab",href:e.pdfInBrowserURL,target:"_blank"},null,8,["prepend-icon","append-icon","href"])):T("",!0)],64)}const $s=v(Bs,[["render",Is],["__scopeId","data-v-252309d7"]]),xs={name:"ReaderSettingsSuperPanel",components:{DownloadPanel:cs,ReaderKeyboardShortcutsPanel:Rs,ReaderSettingsPanel:$s}};function Ls(e,t,l,c,a,o){const s=h("ReaderSettingsPanel"),i=h("ReaderKeyboardShortcutsPanel"),p=h("DownloadPanel");return u(),_(D,null,[r(s),r(oe),r(i),r(oe),r(p)],64)}const Vs=v(xs,[["render",Ls]]),Os={name:"ReaderSettingsDrawer",components:{SettingsDrawer:Wt,ReaderSettingsSuperPanel:Vs}};function As(e,t,l,c,a,o){const s=h("ReaderSettingsSuperPanel"),i=h("SettingsDrawer");return u(),m(i,{title:"Reader",temporary:"","disable-resize-watcher":""},{panel:g(()=>[r(s)]),_:1})}const Es=v(Os,[["render",As]]),Z={a:Lt,f:xt,p:$t,i:It,s:Dt,v:Bt},Ns={name:"ReaderArcSelect",components:{ToolbarSelect:oo},data(){return{mdiFilterOutline:At}},computed:{...k(d,{arc:e=>e.arc,arcs:e=>e.arcs}),items(){const e=[];if(!this.arcs)return e;for(const[t,l]of Object.entries(this.arcs))for(const[c,a]of Object.entries(l)){let o=Vt[t];t!=="s"&&(o=o.slice(0,-1));const s=Z[t],i=t===this.arc?.group&&c==this.arc?.ids?Ot:"",p={group:t,ids:c,prependIcon:s,...a},f={group:t,value:p,title:a.name,subtitle:o,prependIcon:s,appendIcon:i};e.push(f)}return e},arcInfo(){if(!this.arcs||!this.arc)return{};const e=this.arcs[this.arc?.group];return e?e[this.arc?.ids]:{}},arcIcon(){return Z[this.arc?.group]}},methods:{...b(d,["loadBooks"]),onUpdate(e){const t={group:e.group,ids:e.ids.split(",").map(Number)};this.loadBooks({arc:t})},prependIcon(e){return Z[e]}}},Us={id:"arcPos"};function Fs(e,t,l,c,a,o){const s=h("ToolbarSelect");return u(),m(s,{"model-value":e.arc,class:"arcSelect","select-label":"reading order",items:o.items,disabled:!o.items||o.items.length<=1,"onUpdate:modelValue":o.onUpdate},{item:g(({item:i,props:p})=>[r(eo,ee(p,{density:"compact",variant:"plain","prepend-icon":i.raw.prependIcon,subtitle:i.raw.subtitle,"append-icon":i.raw.appendIcon}),null,16,["prepend-icon","subtitle","append-icon"])]),selection:g(({props:i})=>[r(K,ee({icon:o.prependIcon(e.arc.group),size:"large"},i,{class:"arcSelectIcon"}),null,16,["icon"]),n("span",Us,L(e.arc.index)+" / "+L(e.arc.count),1)]),_:1},8,["model-value","items","disabled","onUpdate:modelValue"])}const Ws=v(Ns,[["render",Fs],["__scopeId","data-v-64020201"]]),zs={name:"ReaderTitleToolbar",components:{AppBanner:Gt,MetadataDialog:so,ReaderArcSelect:Ws,SettingsDrawerButton:zt},data(){return{mdiClose:Et,routeChanged:!1}},head(){const e=`Read / ${this.activeTitle} / page ${this.storePage}`,t=`reader ${e}`;return{title:e,meta:[{hid:"description",name:"description",content:t}]}},computed:{...k(F,["isAuthDialogOpen"]),...k(d,["activeTitle","closeBookRoute"]),...k(d,{showToolbars:e=>e.showToolbars,currentBook:e=>e.books?.current||{},empty:e=>e.empty,subtitle:e=>e.books?.current?.name||"",storePage:e=>e.page}),title(){return this.activeTitle},extensionHeight(){let e=32;return this.subtitle&&(e*=2),e+=4,e},closeRoute(){const e=te(this.closeBookRoute),t=te(e.params);return delete t.name,e.params=t,e},metadataBook(){const e={...this.currentBook};return e.group="c",e.childCount=0,e}},watch:{$route(e,t){t&&(this.routeChanged=!0)}},mounted(){document.addEventListener("keyup",this._keyUpListener)},beforeUnmount(){document.removeEventListener("keyup",this._keyUpListener)},methods:{...b($e,["setTimestamp"]),...b(d,["routeToDirection","routeToDirectionOne","routeToBook","setBookChangeFlag"]),openMetadata(){this.$refs.metadataDialog.dialog=!0},onCloseBook(){this.routeChanged&&this.setTimestamp()},_keyUpListener(e){if(e.stopPropagation(),!this.isAuthDialogOpen)switch(e.key){case"Escape":this.$refs.closeBook.$el.click();break;case"m":this.empty||this.openMetadata();break}}}},Ms={id:"readerTopToolbarHeader"},Ks={id:"title"},Hs={key:0,id:"subtitle"};function js(e,t,l,c,a,o){const s=h("AppBanner"),i=h("ReaderArcSelect"),p=h("MetadataDialog"),f=h("SettingsDrawerButton");return u(),m(po,null,{default:g(()=>[$(n("header",Ms,[r(s),r(Yt,{id:"readerToolbarTop",density:"compact","extension-height":o.extensionHeight},Nt({default:g(()=>[r(G,null,{default:g(()=>[r(Ke,{ref:"closeBook",class:"closeBook",to:o.closeRoute,size:"large",density:"compact",variant:"plain",onClick:o.onCloseBook},{default:g(()=>[...t[0]||(t[0]=[w(" close book ",-1)])]),_:1},8,["to","onClick"])]),_:1}),r(ao),e.empty?T("",!0):(u(),m(G,{key:0},{default:g(()=>[r(i),r(p,{ref:"metadataDialog",book:o.metadataBook,toolbar:!0},null,8,["book"])]),_:1})),r(G,null,{default:g(()=>[r(f)]),_:1})]),_:2},[o.title?{name:"extension",fn:g(()=>[r(Xt,{class:"readerTitle"},{default:g(()=>[n("div",Ks,L(o.title),1),e.subtitle?(u(),_("div",Hs,L(e.subtitle),1)):T("",!0)]),_:1})]),key:"0"}:void 0]),1032,["extension-height"])],512),[[Ee,e.showToolbars]])]),_:1})}const st=v(zs,[["render",js],["__scopeId","data-v-ac089588"]]),qs={name:"ReaderEmptyBooks",components:{ReaderTopToolbar:st,EmptyState:He},data(){return{mdiBookRemoveOutline:Ut}},methods:{...b(d,["loadBooks","setShowToolbars"]),onAction(){this.loadBooks({mtime:Date.now()})}},created(){this.setShowToolbars()}};function Gs(e,t,l,c,a,o){const s=h("ReaderTopToolbar"),i=h("EmptyState");return u(),_(D,null,[r(s),r(i,{headline:"Book Not Found",title:"Close the reader and find another book",icon:a.mdiBookRemoveOutline,"action-text":"Try to load book again","onClick:action":o.onAction},null,8,["icon","onClick:action"])],64)}const Ys=v(qs,[["render",Gs]]),Xs={name:"ReaderBookChangeNavButton",components:{PaginationNavButton:Ge},props:{direction:{type:String,required:!0}},computed:{...k(d,["isBTT"]),...k(d,{toRoute(e){const t=e?.routes?.books[this.direction];return t?{params:te(t)}:""}}),title(){return(this.direction==="prev"?"Previous":"Next")+" Book"},icon(){return this.bookChangeIcon(this.direction)},classes(){return{bookChangeNavButtonLeft:this.direction==="prev",bookChangeNavButtonRight:this.direction==="next"}}},methods:{...b(d,["bookChangeIcon"])}};function Js(e,t,l,c,a,o){const s=h("PaginationNavButton");return e.toRoute?(u(),m(s,{key:0,class:R(o.classes),icon:o.icon,variant:"plain",title:o.title,to:e.toRoute},null,8,["class","icon","title","to"])):T("",!0)}const Qs=v(Xs,[["render",Js],["__scopeId","data-v-e6c3b493"]]),Zs={name:"ReaderNavButton",components:{PaginationNavButton:Ge},props:{value:{type:Number,required:!0},twoPages:{type:Boolean,default:!1}},computed:{...k(d,["isVertical"]),...k(d,{storePage:e=>e.page,toRoute(e){if(!this.isVertical)return{params:{pk:e.books.current.pk,page:this.value}}},isBookPrev:e=>!!e.routes.books.prev,isBookNext:e=>!!e.routes.books.next}),classes(){return{readerNavButtonLeft:!this.isBookPrev&&this.value===0,readerNavButtonRight:!this.isBookNext&&this.value!=0}},title(){return"Page "+this.value},disabled(){return this.value===this.storePage||this.twoPages&&!!(this.value%2)&&this.value-1===this.storePage}},methods:{...b(d,["setActivePage"]),onClick(){this.isVertical&&this.setActivePage(this.value,!0)}}};function ea(e,t,l,c,a,o){const s=h("PaginationNavButton");return u(),m(s,{key:e.isVertical,disabled:o.disabled,class:R(["readerNavButton",o.classes]),title:o.title,to:e.toRoute,onClick:o.onClick},{default:g(()=>[w(L(l.value),1)]),_:1},8,["disabled","class","title","to","onClick"])}const ta=v(Zs,[["render",ea],["__scopeId","data-v-f60d8fb5"]]),z="prev",M="next",oa={name:"ReaderNavToolbar",components:{PaginationSlider:ro,ReaderNavButton:ta,PaginationToolbar:no,ReaderBookChangeNavButton:Qs},computed:{...k(F,["isAuthDialogOpen"]),...k(d,["activeSettings","isReadInReverse","isVertical"]),...k(d,{showToolbars:e=>e.showToolbars,storePage:e=>e.page,key(e){return`${e.books?.current?.pk}:${this.step}:${this.isReadInReverse}`},maxPage:e=>e.books?.current?.maxPage||0}),twoPages(){return this.activeSettings.twoPages},step(){return this.activeSettings.twoPages?2:1},trackColor(){return this.twoPages&&+this.storePage>=this.maxPage-1?this.$vuetify.theme.current.colors.primary:""},min(){return this.isReadInReverse?this.maxPage:0},max(){return this.isReadInReverse?0:this.maxPage},bookPrev(){return this.isReadInReverse?"next":"prev"},bookNext(){return this.isReadInReverse?"prev":"next"}},mounted(){document.addEventListener("keyup",this._keyUpListener)},beforeUnmount(){document.removeEventListener("keyup",this._keyUpListener)},methods:{...b(d,["routeToBook","routeToDirection","routeToDirectionOne","routeToPage","setActivePage"]),onSliderUpdate(e){this.isVertical?this.setActivePage(e,!0):this.routeToPage(e)},_keyUpListener(e){if(e.stopPropagation(),!this.isAuthDialogOpen)switch(e.key){case" ":!e.shiftKey&&window.innerHeight+window.scrollY+1>=document.body.scrollHeight?this.routeToDirection(M):e.shiftKey&&window.scrollY===0&&this.routeToDirection(z);break;case"j":case"ArrowRight":this.routeToDirection(M);break;case"k":case"ArrowLeft":this.routeToDirection(z);break;case",":this.routeToDirectionOne(z);break;case".":this.routeToDirectionOne(M);break;case"n":this.routeToBook(M);break;case"p":this.routeToBook(z);break}}}};function sa(e,t,l,c,a,o){const s=h("ReaderBookChangeNavButton"),i=h("ReaderNavButton"),p=h("PaginationSlider"),f=h("PaginationToolbar");return u(),m(go,null,{default:g(()=>[e.maxPage?$((u(),m(f,{key:0,id:"readerToolbarNav"},{default:g(()=>[r(s,{direction:o.bookPrev,narrow:!1},null,8,["direction"]),r(i,{value:o.min,"two-pages":o.twoPages},null,8,["value","two-pages"]),(u(),m(p,{key:e.key,"model-value":e.storePage,min:0,max:e.maxPage,step:o.step,"track-color":o.trackColor,reverse:e.isReadInReverse,"onUpdate:modelValue":t[0]||(t[0]=B=>o.onSliderUpdate(B))},null,8,["model-value","max","step","track-color","reverse"])),r(i,{value:o.max,"two-pages":o.twoPages},null,8,["value","two-pages"]),r(s,{direction:o.bookNext,narrow:!1},null,8,["direction"])]),_:1},512)),[[Ee,e.showToolbars]]):T("",!0)]),_:1})}const aa=v(oa,[["render",sa],["__scopeId","data-v-ebe715c2"]]),na={name:"MainReader",components:{BooksWindow:ns,ReaderEmpty:Ys,ReaderNavToolbar:aa,ReaderTopToolbar:st,ReaderSettingsDrawer:Es,Unauthorized:Jt},data(){return{showToolbars:!1}},computed:{...k(F,["isAuthorized"]),...k(F,{user:e=>e.user}),...k(d,{empty:e=>e.empty})},watch:{user(){this.loadReaderSettings()}},created(){this.reset();const e=this.user?0:300,t=this.user;setTimeout(()=>{this.user?.id===t?.id&&this.loadReaderSettings()},e)},methods:{...b(d,["loadReaderSettings","reset"])}},ra={key:0},ia={id:"readerContainer"};function la(e,t,l,c,a,o){const s=h("ReaderTopToolbar"),i=h("BooksWindow"),p=h("ReaderNavToolbar"),f=h("ReaderEmpty"),B=h("ReaderSettingsDrawer"),A=h("Unauthorized");return e.isAuthorized?(u(),m(Qt,{key:0,id:"readerWrapper"},{default:g(()=>[e.empty?(u(),m(f,{key:1})):(u(),_("div",ra,[n("div",ia,[r(s),r(i),r(p)])])),r(B)]),_:1})):(u(),m(A,{key:1}))}const ca=v(na,[["render",la],["__scopeId","data-v-6df2b556"]]),wa=Object.freeze(Object.defineProperty({__proto__:null,default:ca},Symbol.toStringTag,{value:"Module"}));export{jo as P,Ze as S,wa as r};
|
|
Binary file
|
|
Binary file
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/pdf-doc-
|
|
2
|
-
import{_ as v,C as b,E as k,al as d,y as m,H as T,w as g,d as R,v as h,x as u,a as r,z as w,B as L,q as _,ab as we,F as D,am as it,an as lt,m as ee,ao as Ce,ap as ct,aq as Te,I as Re,n as O,ar as Be,as as q,at as ut,T as $,a6 as dt,au as ht,av as De,A as U,k as Ie,b as n,aw as pt,D as $e,ax as gt,ay as mt,az as kt,g as xe,p as ae,aA as Le,u as Ve,aB as Oe,K as Ae,aC as ft,aD as vt,c as x,aE as bt,aF as yt,aG as _t,aH as Pt,aI as St,aJ as wt,aK as Ct,G as F,ac as Tt,a0 as Rt,aL as Bt,P as Dt,Q as It,R as $t,S as xt,aM as Lt,aN as Vt,aO as Ot,aP as At,M as te,aQ as Et,W as Nt,aR as Ee,aS as Ut}from"./main-C-77N8Gu.js";import{V as Ft,a as Wt,S as zt}from"./settings-drawer-F5ukKBlm.js";import{k as K,I as Mt,r as Ne,i as Ue,c as Kt,s as Fe,t as We,d as Ht,j as ze,v as Me,w as jt,V as Ke}from"./forwardRefs-DB5ky8tb.js";import{P as qt,E as He,A as Gt,V as Yt,a as Qt,U as Xt,c as Zt}from"./unauthorized-CEVes9z_.js";import{V as je,a as qe}from"./VWindowItem-DkI0HNsq.js";import{b as Jt}from"./VSelect-TZp4owlN.js";import{C as ne,a as eo}from"./VDialog-VIXXkGcp.js";import{D as to,T as oo,b as so,V as G,a as ao,P as Ge,c as no,d as ro}from"./pagination-toolbar-CHsRqwrF.js";import{V as io,a as lo,b as co,c as uo}from"./VExpansionPanels-Cfecx3wB.js";import{d as ho,V as po,e as go}from"./VSelectionControl-GD0v-LdL.js";import{V as Y,a as Q}from"./VRadioGroup-BWhV6-Ik.js";import{a as oe}from"./VDivider-DZYqABoC.js";import{V as N}from"./VCheckbox-mMixTHeh.js";import{T as X}from"./index-Cfl3hEsB.js";const mo={control:"ctrl",command:"cmd",option:"alt",up:"arrowup",down:"arrowdown",left:"arrowleft",right:"arrowright",esc:"escape",spacebar:" ",space:" ",return:"enter",del:"delete",minus:"-",hyphen:"-"};function ge(e){const t=e.toLowerCase();return mo[t]||t}function Ye(e){if(!e)return[];const l=(e.startsWith("+")||e.startsWith("_"))&&!(e.startsWith("++")||e.startsWith("__"));if(e.length>1&&l||e.includes("++")||e.includes("__")||e==="+"||e==="_"||e.length>1&&(e.endsWith("+")||e.endsWith("_"))&&e.at(-2)!==e.at(-1)||e==="++"||e==="--"||e==="__")return[];const a=[];let o="";const s=()=>{o&&(a.push(ge(o)),o="")};for(let p=0;p<e.length;p++){const f=e[p],B=e[p+1];f==="+"||f==="_"||f==="-"?f===B?(s(),a.push(f),p++):f==="+"||f==="_"?s():o+=f:o+=f}return s(),a.some(p=>p.length>1&&p.includes("-")&&p!=="--")?[]:a.length===0&&e?[ge(e)]:a}function ko(e){if(!e)return[];const t=e.startsWith("-")&&!["---","--+"].includes(e),l=e.endsWith("-")&&!e.endsWith("+-")&&!e.endsWith("_-")&&e!=="-"&&e!=="---";if(t||l)return[];const c=[];let a="",o=0;for(;o<e.length;){const f=e[o];if(f==="-"){const B=e[o-1],A=o>1?e[o-2]:void 0;(B==="+"||B==="_")&&A!=="+"?(a+=f,o++):(a?(c.push(a),a=""):c.push("-"),o++)}else a+=f,o++}a&&c.push(a);const s=[];let i=0;for(const f of c)f==="-"?(i%2===0&&s.push("-"),i++):(i=0,s.push(f));return s.every(f=>Ye(f).length>0)?s:[]}function Qe(e,t){const{self:l=!1}=t.modifiers??{},c=t.value,a=typeof c=="object"&&c.options||{passive:!0},o=typeof c=="function"||"handleEvent"in c?c:c.handler,s=l?e:t.arg?document.querySelector(t.arg):window;s&&(s.addEventListener("scroll",o,a),e._onScroll=Object(e._onScroll),e._onScroll[t.instance.$.uid]={handler:o,options:a,target:l?void 0:s})}function Xe(e,t){if(!e._onScroll?.[t.instance.$.uid])return;const{handler:l,options:c,target:a=e}=e._onScroll[t.instance.$.uid];a.removeEventListener("scroll",l,c),delete e._onScroll[t.instance.$.uid]}function fo(e,t){t.value!==t.oldValue&&(Xe(e,t),Qe(e,t))}const vo={mounted:Qe,unmounted:Xe,updated:fo},bo={name:"BookChangeDrawer",props:{direction:{type:String,required:!0}},head(){if(this.isDrawerOpen)return this.prefetchLinks(this.params,this.computedDirection,!0)},computed:{...k(d,["isBTT"]),...k(d,{computedDirection(){return this.normalizeDirection(this.direction)},params(e){return e.routes.books[this.computedDirection]},isDrawerOpen(e){return e.bookChange===this.computedDirection},icon(){return this.bookChangeIcon(this.computedDirection)}}),drawerLocation(){return this.bookChangeLocation(this.direction)},cursorClass(){return this.bookChangeCursorClass(this.computedDirection)},show(){return this.bookChangeShow(this.computedDirection)},route(){return this.toRoute(this.params)},label(){return this.linkLabel(this.computedDirection,"Book")}},methods:{...b(d,["linkLabel","normalizeDirection","prefetchLinks","toRoute","bookChangeLocation","bookChangeCursorClass","bookChangeShow","bookChangeIcon"])}};function yo(e,t,l,c,a,o){const s=h("router-link");return o.show?(u(),m(Ft,{key:0,class:R(["bookChangeDrawer",{drawerActivated:e.isDrawerOpen}]),"disable-resize-watcher":"","disable-route-watcher":"",location:o.drawerLocation,"model-value":e.isDrawerOpen,scrim:!1,temporary:"",touchless:""},{default:g(()=>[r(s,{class:R({navLink:!0,[o.cursorClass]:!0}),to:o.route,"aria-label":o.label,title:o.label,onClick:t[0]||(t[0]=i=>i.stopImmediatePropagation())},{default:g(()=>[r(K,{class:"bookChangeIcon"},{default:g(()=>[w(L(e.icon),1)]),_:1})]),_:1},8,["class","to","aria-label","title"])]),_:1},8,["location","model-value","class"])):T("",!0)}const _o=v(bo,[["render",yo],["__scopeId","data-v-0340b976"]]),Po={name:"BookChangeActivator",components:{BookChangeDrawer:_o},props:{direction:{type:String,required:!0}},computed:{show(){return this.bookChangeShow(this.computedDirection)},computedDirection(){return this.normalizeDirection(this.direction)},positionClass(){return this.bookChangeLocation(this.direction)+"Pos"},cursorClass(){return this.bookChangeCursorClass(this.direction)}},methods:{...b(d,["bookChangeCursorClass","bookChangeLocation","bookChangeShow","normalizeDirection","setBookChangeFlag"])}};function So(e,t,l,c,a,o){const s=h("BookChangeDrawer");return u(),_(D,null,[o.show?(u(),_("div",{key:0,class:R(["changeColumn",{[o.positionClass]:!0,[o.cursorClass]:!0}]),onClick:t[0]||(t[0]=we(i=>e.setBookChangeFlag(l.direction),["stop"]))},null,2)):T("",!0),r(s,{direction:l.direction},null,8,["direction"])],64)}const wo=v(Po,[["render",So],["__scopeId","data-v-67df236c"]]),Co={name:"LoadingPage",components:{Placeholder:qt},props:{twoPages:{type:Boolean,required:!0}}};function To(e,t,l,c,a,o){const s=h("Placeholder");return u(),_("div",{class:R(["pageLoading",{twoPages:l.twoPages}])},[r(s,{class:"pagePlaceholder"})],2)}const Ro=v(Co,[["render",To],["__scopeId","data-v-04027168"]]),me="unauthorized",Bo={name:"ErrorPage",components:{EmptyState:He},props:{twoPages:{type:Boolean,required:!0},type:{type:String,required:!0}},emits:["retry"],computed:{text(){return this.type===me?"Protected page":"Failed to load page"},icon(){return this.type===me?it:lt}},methods:{onAction(e){this.$emit("retry",e)}}};function Do(e,t,l,c,a,o){const s=h("EmptyState");return u(),m(s,{class:R(["pageError",{twoPages:l.twoPages}]),headline:o.text,icon:o.icon,"action-text":"Retry","onClick:action":o.onAction},null,8,["class","headline","icon","onClick:action"])}const Io=v(Bo,[["render",Do],["__scopeId","data-v-97fa48e8"]]),$o={name:"ImgPage",props:{book:{type:Object,required:!0},src:{type:String,required:!0}},emits:["load","error"],computed:{...k(d,{scale:e=>e.clientSettings.scale}),style(){const e={};if(this.scale==1)return e;const t=this.$el;if(!t?.naturalWidth)return e;const l=t.naturalWidth/2;return e.transformOrigin=`${l}px top`,e.transform=`scale(${this.scale})`,e},bookSettings(){return this.getBookSettings(this.book)},classes(){return this.bookSettings.fitToClass}},methods:{...b(d,["getBookSettings"])}},xo=["src"];function Lo(e,t,l,c,a,o){return u(),_("img",ee({class:[o.classes,"img"],draggable:"false",src:l.src,style:o.style},e.$attrs,{onError:t[0]||(t[0]=s=>e.$emit("error",s)),onLoad:t[1]||(t[1]=s=>e.$emit("load",s))}),null,16,xo)}const ke=v($o,[["render",Lo],["__scopeId","data-v-014c2ac0"]]),fe=Ce(Te(()=>Be(()=>import("./pdf-doc-DfhEteIr.js"),__vite__mapDeps([0,1,2,3])))),Vo=333,Oo={name:"BookPage",components:{ErrorPage:Io,LoadingPage:Ro,PDFDoc:fe,ImgPage:ke},props:{book:{type:Object,required:!0},page:{type:Number,required:!0}},data(){return{showProgress:!1,loaded:!1,error:"",ts:0}},computed:{...k(d,{scale:e=>e.clientSettings.scale}),style(){const e={};if(this.book.fileType==="PDF"||this.scale==1)return e;const t=this.$refs.pageComponent?.$el;return t?.naturalHeight&&(e.height=t.naturalHeight*this.scale+"px",e.width=t.naturalWidth*this.scale+"px"),e},src(){const e=Math.max(this.book.mtime,this.ts),t={pk:this.book.pk,page:this.page,mtime:e};return ct(t)},component(){return this.book.fileType==="PDF"?fe:ke},bookSettings(){return this.getBookSettings(this.book)},twoPages(){return this.bookSettings.twoPages}},mounted(){setTimeout(function(){this.loaded||(this.loading=!0)},Vo)},methods:{...b(d,["getBookSettings"]),onLoad(){this.showProgress=!1,this.loaded=!0,this.error=!1},onError(){this.error="load",this.showProgress=!1},onUnauthorized(){this.error="unauthorized",this.showProgress=!1},onRetry(){this.ts=Date.now()}}},Ao=["id","data-page"];function Eo(e,t,l,c,a,o){const s=h("ErrorPage"),i=h("LoadingPage");return u(),_("div",{id:`page${l.page}`,key:a.ts,"data-page":l.page,class:"page",style:O(o.style)},[a.error?(u(),m(s,{key:0,"two-pages":o.twoPages,type:a.error,onRetry:o.onRetry},null,8,["two-pages","type","onRetry"])):a.showProgress&&!a.loaded?(u(),m(i,{key:1,"two-pages":o.twoPages},null,8,["two-pages"])):(u(),m(Re(o.component),{key:2,ref:"pageComponent",book:l.book,page:1,src:o.src,onError:o.onError,onLoad:o.onLoad,onUnauthorized:o.onUnauthorized},null,40,["book","src","onError","onLoad","onUnauthorized"]))],12,Ao)}const Ze=v(Oo,[["render",Eo],["__scopeId","data-v-14cc8bcc"]]),No=.5,Uo={name:"ScaleForScroll",emits:["click"],data(){return{mdiMagnifyMinusOutline:ut}},computed:{...k(d,{scale:e=>e.clientSettings.scale}),showReset(){return this.scale!=q},style(){return{cursor:this.scale==q?"zoom-in":"all-scroll"}}},methods:{...b(d,["setSettingsClient"]),clearSelection(){globalThis.getSelection&&globalThis.getSelection().removeAllRanges()},onDoubleClick(){this.clearSelection();const e=this.scale+No;this.setSettingsClient({scale:e})},scaleReset(){this.setSettingsClient({scale:q})}}};function Fo(e,t,l,c,a,o){const s=ht("drag-scroller");return $((u(),_("div",{class:"scaleForScroll",style:O(o.style),onDblclick:t[0]||(t[0]=(...i)=>o.onDoubleClick&&o.onDoubleClick(...i))},[dt(e.$slots,"default",{},void 0,!0),o.showReset?(u(),m(K,{key:0,class:"resetIcon",onClick:we(o.scaleReset,["stop"])},{default:g(()=>[w(L(a.mdiMagnifyMinusOutline),1)]),_:1},8,["onClick"])):T("",!0)],36)),[[s,,void 0,{onlyX:!0}]])}const Je=v(Uo,[["render",Fo],["__scopeId","data-v-88f3df90"]]),Wo={name:"HorizontalPages",components:{BookPage:Ze,ScaleForScroll:Je},props:{book:{type:Object,required:!0},page:{type:Number,required:!0}},emits:["click"],computed:{bookSettings(){return this.getBookSettings(this.book)},isReadInReverse(){return this.bookSettings.isReadInReverse},showSecondPage(){return this.bookSettings.twoPages&&this.page<this.book.maxPage&&!this.isCoverPage(this.book,this.page)},showPageOne(){return!this.isReadInReverse||this.showSecondPage},showPageTwo(){return this.isReadInReverse||this.showSecondPage},pageOne(){return this.isReadInReverse?this.page+1:this.page},pageTwo(){return this.isReadInReverse?this.page:this.page+1}},methods:{...b(d,["getBookSettings","isCoverPage"])}};function zo(e,t,l,c,a,o){const s=h("BookPage"),i=h("ScaleForScroll");return u(),m(i,{class:"noWrap"},{default:g(()=>[o.showPageOne?(u(),m(s,{key:0,ref:"pageOne",book:l.book,page:o.pageOne,class:"horizontalPage"},null,8,["book","page"])):T("",!0),o.showPageTwo?(u(),m(s,{key:1,book:l.book,page:o.pageTwo,class:"horizontalPage"},null,8,["book","page"])):T("",!0)]),_:1})}const Mo=v(Wo,[["render",zo],["__scopeId","data-v-ce77a1b1"]]),Ko={name:"PageChangeLink",props:{direction:{type:String,required:!0}},head(){return this.prefetchLinks(this.params,this.computedDirection)},computed:{...k(d,["isFirstPage","isLastPage"]),...k(d,{params(e){return e.routes[this.computedDirection]}}),computedDirection(){return this.normalizeDirection(this.direction)},show(){return this.computedDirection==="prev"?!this.isFirstPage:!this.isLastPage},pageChangeClass(){return"pageChangeColumn"},directionClass(){return this.direction},route(){return this.toRoute(this.params)},label(){return this.linkLabel(this.computedDirection,"Page")}},methods:{...b(d,["linkLabel","normalizeDirection","prefetchLinks","toRoute"])}};function Ho(e,t,l,c,a,o){const s=h("router-link");return o.show?(u(),m(s,{key:0,to:o.route,"aria-label":o.label,class:R(["changeColumn",{[o.directionClass]:!0}]),onClick:t[0]||(t[0]=i=>i.stopImmediatePropagation())},null,8,["to","aria-label","class"])):T("",!0)}const jo=v(Ko,[["render",Ho],["__scopeId","data-v-8a0b30bf"]]),qo=48,Go=48,Yo={name:"PagerHorizontal",components:{HorizontalPages:Mo,PageChangeLink:jo},props:{book:{type:Object,required:!0}},data(){return{activePage:0,pages:[]}},computed:{...k(d,{prevBook:e=>e.routes.books?.prev,nextBook:e=>e.routes.books?.next,storePage:e=>e.page,storePk:e=>e.books.current.pk,transition:e=>e.readerSettings.pageTransition}),bookSettings(){return this.getBookSettings(this.book)},twoPages(){return this.bookSettings.twoPages},isReadInReverse(){return this.bookSettings.isReadInReverse},windowIndex(){const e=this.activePage-this.pages[0];return Math.min(Math.max(0,e),this.book.maxPage)}},watch:{twoPages(){this.setActivePage(this.storePage,!0)},storePage(e){if(this.book.pk===this.storePk){this.activePage=e;const t=this.pages.at(0),l=this.pages.at(-1);(e<t||e>l)&&this.setPages()}}},created(){this.book.pk===this.storePk?this.activePage=+this.$route.params.page:this.book.pk===this.prevBook.pk?this.activePage=this.book.maxPage:this.activePage=0,this.setPages()},methods:{...b(d,["getBookSettings","setBookChangeFlag","setActivePage"]),setPages(){const e=Math.max(this.activePage-qo,0),t=Math.min(this.activePage+Go,this.book.maxPage);this.pages=De(e,t+1)}}};function Qo(e,t,l,c,a,o){const s=h("PageChangeLink"),i=h("HorizontalPages");return u(),m(je,{"show-arrows":"",continuous:"","model-value":o.windowIndex,reverse:o.isReadInReverse},{prev:g(()=>[r(s,{direction:"prev"})]),next:g(()=>[r(s,{direction:"next"})]),default:g(()=>[(u(!0),_(D,null,U(a.pages,p=>(u(),m(qe,{key:`c/${l.book.pk}/${p}`,class:"windowItem",disabled:"",eager:p>=e.storePage-1&&p<=e.storePage+2,"model-value":p,transition:e.transition,"reverse-transition":e.transition},{default:g(()=>[r(i,{book:l.book,page:p},null,8,["book","page"])]),_:2},1032,["eager","model-value","transition","reverse-transition"]))),128))]),_:1},8,["model-value","reverse"])}const ve=v(Yo,[["render",Qo],["__scopeId","data-v-a55977d3"]]),be=250,Xo={name:"PagerVertical",components:{BookPage:Ze,ScaleForScroll:Je},props:{book:{type:Object,required:!0}},data(){return{innerHeight:window.innerHeight,innerWidth:window.innerWidth,intersectorOn:!1,programmaticScroll:!1,intersectOptions:{handler:this.onIntersect,options:{threshold:[.75]}}}},computed:{...k(d,{storePage:e=>e.page,showToolbars:e=>e.showToolbars}),...Ie(d,["reactWithScroll"]),bookSettings(){return this.getBookSettings(this.book)},isReadInReverse(){return this.bookSettings.isReadInReverse},items(){const e=this.book?.maxPage?this.book.maxPage+1:0,t=De(0,e);return this.isReadInReverse&&t.reverse(),t}},watch:{storePage(e){this.reactWithScroll&&this.scrollToPage(e)}},mounted(){window.addEventListener("resize",this.onResize),setTimeout(()=>{this.scrollToPage(this.storePage)},be)},beforeUnmount(){window.removeEventListener("resize",this.onResize)},methods:{...b(d,["getBookSettings","setActivePage","setBookChangeFlag"]),onIntersect(e,t){if(e&&this.intersectorOn){const c=+t[0].target.dataset.page;this.setActivePage(c,!1)}},onScroll(){if(this.programmaticScroll)return;this.intersectorOn=!0;const e=this.$refs.verticalScroll.$el,t=e.scrollTop;if(this.storePage===0&&t===0)this.setBookChangeFlag("prev");else if(this.storePage===this.book.maxPage){const l=e.scrollTopMax||e.scrollHeight-e.clientTop;window.innerHeight+t+1>=l&&this.setBookChangeFlag("next")}},scrollToPage(e){this.intersectorOn=!1,this.programmaticScroll=!0;const t=this.$refs.verticalScroll;t?t.scrollToIndex(e):console.debug("Can't find verticalScroll component."),setTimeout(()=>{this.programmaticScroll=!1},be)},onResize(){this.innerHeight=window.innerHeight,this.innerWidth=window.innerWidth}}},Zo=["data-page"];function Jo(e,t,l,c,a,o){const s=h("BookPage"),i=h("ScaleForScroll");return u(),m(i,null,{default:g(()=>[$((u(),m(Jt,{id:"verticalScroll",key:o.isReadInReverse,ref:"verticalScroll",items:o.items,height:a.innerHeight,width:a.innerWidth},{default:g(({item:p})=>[r(s,{book:l.book,page:p,class:"verticalPage"},null,8,["book","page"]),$(n("div",{class:R(["pageTracker",{pageTrackerToolbars:e.showToolbars}]),"data-page":p},null,10,Zo),[[Mt,a.intersectOptions,void 0,{quiet:!0}]])]),_:1},8,["items","height","width"])),[[vo,o.onScroll,"#verticalScroll"]])]),_:1})}const ye=v(Xo,[["render",Jo],["__scopeId","data-v-4fdc17f1"]]),_e=Ce(Te(()=>Be(()=>import("./pager-full-pdf-DCh3kFgd.js"),__vite__mapDeps([4,1,2,0,3,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42])))),es={name:"PagerSelector",components:{PagerHorizontal:ve,PagerPDF:_e,PagerVertical:ye},props:{book:{type:Object,required:!0}},emits:["click"],head(){return this.prefetchBook(this.book)},computed:{...k(d,["cacheBook"]),...k(d,{storePk:e=>e.books?.current?.pk||0}),isActiveBook(){return this.book&&this.storePk===this.book?.pk},bookSettings(){return this.getBookSettings(this.book)},readerFullPdf(){return this.book?.fileType=="PDF"&&this.cacheBook&&!this.bookSettings.isVertical},component(){let e;return this.readerFullPdf?e=_e:this.bookSettings.isVertical?e=ye:e=ve,e}},watch:{$route(e){+e.params.pk===this.book.pk&&this.setActivePage(+e.params.page,!0)}},created(){this.isActiveBook&&this.setActivePage(+this.$route.params.page,!0)},methods:{...b(d,["getBookSettings","isBookVertical","setActivePage","prefetchBook"])}};function ts(e,t,l,c,a,o){return u(),m(Re(o.component),{book:l.book},null,8,["book"])}const os=v(es,[["render",ts]]),ss={name:"BooksWindow",components:{BookChangeActivator:wo,Pager:os},computed:{...k(d,["isBTT"]),...k(d,{books:e=>[e.books.prev,e.books.current,e.books.next].filter(Boolean),bookChange:e=>e.bookChange,currentBookPk:e=>e.books?.current?.pk||0,bookRoutes:e=>e.routes.books,transition:e=>e.readerSettings.pageTransition}),bookChangePrev(){return this.bookChangeShow("prev")},bookChangeNext(){return this.bookChangeShow("next")}},watch:{$route(e,t){(!t||!t.params||+e.params.pk!=+t.params.pk)&&this.loadBooks({params:e.params})}},beforeMount(){this.setBookChangeFlag(),this.loadBooks({})},methods:{...b(d,["loadBooks","setBookChangeFlag","toggleToolbars"]),click(){this.toggleToolbars(),this.setBookChangeFlag()},eager(e){return this.bookChange&&this.bookRoutes[this.bookChange]&&this.bookRoutes[this.bookChange].pk===e}}};function as(e,t,l,c,a,o){const s=h("BookChangeActivator"),i=h("Pager");return u(),m(je,{id:"booksWindow",direction:"vertical","model-value":e.currentBookPk,reverse:e.isBTT,"show-arrows":"",onClick:e.toggleToolbars},{prev:g(()=>[r(s,{direction:"prev"})]),next:g(()=>[r(s,{direction:"next"})]),default:g(()=>[(u(!0),_(D,null,U(e.books,p=>(u(),m(qe,{key:`c/${p.pk}`,class:"windowItem",disabled:"",eager:o.eager(p.pk),value:p.pk,transition:e.transition,"reverse-transitin":e.transition},{default:g(()=>[r(i,{book:p,onClick:o.click},null,8,["book","onClick"])]),_:2},1032,["eager","value","transition","reverse-transitin"]))),128))]),_:1},8,["model-value","reverse","onClick"])}const ns=v(ss,[["render",as],["__scopeId","data-v-3b8d07f2"]]),rs={name:"DownloadPanel",components:{CodexListItem:ne,DownloadButton:to},data(){return{mdiDownload:kt,mdiFileImage:mt}},computed:{...k(d,["activeTitle","routeParams"]),...k(d,{currentBook:e=>e.books?.current,fileType:e=>e.books?.current?.fileType,mtime:e=>e.books?.current?.mtime,pk:e=>e.books?.current?.pk,filename:e=>e.books?.current?.filename,storePage:e=>e.page}),pageSrc(){const e={pk:this.pk,page:this.storePage,ts:this.ts};return gt(e)},pageName(){const e=this.fileType==="PDF"?"pdf":"jpg";return`${this.activeTitle} - page ${this.storePage}.${e}`},downloadPageTitle(){return`Download Page ${this.storePage}`},downloadItem(){return{group:"c",ids:[this.pk],childCount:1,name:this.filename,mtime:this.mtime}}},methods:{...b($e,["downloadIOSPWAFix"]),downloadPage(){pt(this.pageSrc,this.pageName)}}},is={key:0,id:"downloadPanel"};function ls(e,t,l,c,a,o){const s=h("CodexListItem"),i=h("DownloadButton");return e.currentBook?(u(),_("div",is,[r(s,{"prepend-icon":a.mdiFileImage,title:o.downloadPageTitle,onClick:o.downloadPage},null,8,["prepend-icon","title","onClick"]),r(i,{button:!1,item:o.downloadItem},null,8,["item"])])):T("",!0)}const cs=v(rs,[["render",ls],["__scopeId","data-v-a873b002"]]),us=ae({color:String,...Me(),...Ae(),...ze(),...Ht({tag:"kbd"}),...Oe(),...We()},"VKbd"),Pe=xe()({name:"VKbd",props:us(),setup(e,t){let{slots:l}=t;const{themeClasses:c}=Le(e),{borderClasses:a}=Ne(e),{roundedClasses:o}=Ue(e),{backgroundColorClasses:s,backgroundColorStyles:i}=Kt(()=>e.color),{elevationClasses:p}=Fe(e);return Ve(()=>r(e.tag,{class:R(["v-kbd",c.value,s.value,a.value,p.value,o.value,e.class]),style:O([i.value,e.style])},l)),{}}});function et(e,t,l){const c=l&&e.mac?e.mac:e.default,a=t==="icon"&&!l||t==="icon"&&!c.icon||t==="symbol"&&!c.symbol?"text":t;let o=c[a]??c.text;return a==="text"&&typeof o=="string"&&o.startsWith("$")&&!o.startsWith("$vuetify.")&&(o=o.slice(1).toUpperCase()),a==="icon"?["icon",o]:[a,o]}const tt={ctrl:{mac:{symbol:"⌃",icon:"$ctrl",text:"$vuetify.hotkey.ctrl"},default:{text:"Ctrl"}},meta:{mac:{symbol:"⌘",icon:"$command",text:"$vuetify.hotkey.command"},default:{text:"Ctrl"}},cmd:{mac:{symbol:"⌘",icon:"$command",text:"$vuetify.hotkey.command"},default:{text:"Ctrl"}},shift:{mac:{symbol:"⇧",icon:"$shift",text:"$vuetify.hotkey.shift"},default:{text:"Shift"}},alt:{mac:{symbol:"⌥",icon:"$alt",text:"$vuetify.hotkey.option"},default:{text:"Alt"}},enter:{default:{symbol:"↵",icon:"$enter",text:"$vuetify.hotkey.enter"}},arrowup:{default:{symbol:"↑",icon:"$arrowup",text:"$vuetify.hotkey.upArrow"}},arrowdown:{default:{symbol:"↓",icon:"$arrowdown",text:"$vuetify.hotkey.downArrow"}},arrowleft:{default:{symbol:"←",icon:"$arrowleft",text:"$vuetify.hotkey.leftArrow"}},arrowright:{default:{symbol:"→",icon:"$arrowright",text:"$vuetify.hotkey.rightArrow"}},backspace:{default:{symbol:"⌫",icon:"$backspace",text:"$vuetify.hotkey.backspace"}},escape:{default:{text:"$vuetify.hotkey.escape"}}," ":{mac:{symbol:"␣",icon:"$space",text:"$vuetify.hotkey.space"},default:{text:"$vuetify.hotkey.space"}},"-":{default:{text:"-"}}},ds=ae({variant:{type:String,default:"elevated",validator:e=>["elevated","flat","tonal","outlined","text","plain","contained"].includes(e)}},"VHotkeyVariant"),hs=ae({keys:String,displayMode:{type:String,default:"icon"},keyMap:{type:Object,default:()=>tt},platform:{type:String,default:"auto"},inline:Boolean,disabled:Boolean,prefix:String,suffix:String,...Ae(),...Oe(),...Me(),...ze(),...We(),...ds(),color:String},"VHotkey");class se{constructor(t){if(["and","then"].includes(t))this.val=t;else throw new Error("Not a valid delineator")}isEqual(t){return this.val===t.val}}function Z(e){return e instanceof se}function ps(e){return typeof e=="string"}function gs(e,t,l){const c=t.toLowerCase();if(c in e){const a=et(e[c],"text",l);return typeof a[1]=="string"?a[1]:String(a[1])}return t.toUpperCase()}function Se(e,t,l,c){const a=l.toLowerCase();if(a in e){const o=et(e[a],t,c);return o[0]==="text"&&typeof o[1]=="string"&&o[1].startsWith("$")&&!o[1].startsWith("$vuetify.")?["text",o[1].replace("$","").toUpperCase(),l]:[...o,l]}return["text",l.toUpperCase(),l]}const ms=xe()({name:"VHotkey",props:hs(),setup(e){const{t}=ft(),{themeClasses:l}=Le(e),{rtlClasses:c}=vt(),{borderClasses:a}=Ne(e),{roundedClasses:o}=Ue(e),{elevationClasses:s}=Fe(e),i=x(()=>e.variant==="contained"),p=x(()=>({...e,variant:i.value?"elevated":e.variant})),{colorClasses:f,colorStyles:B,variantClasses:A}=jt(p),W=x(()=>e.platform==="auto"?typeof navigator<"u"&&/macintosh/i.test(navigator.userAgent):e.platform==="mac"),re=x(()=>e.displayMode),H=new se("and"),ie=new se("then"),le=x(()=>e.keyMap),E=x(()=>e.keys?e.keys.split(" ").map(y=>{const P=ko(y);return P.flatMap((S,C)=>{const he=Ye(S).reduce((V,pe,rt)=>rt!==0?[...V,H,pe]:[...V,pe],[]).map(V=>ps(V)?Se(le.value,re.value,V,W.value):V);return C<P.length-1&&he.push(ie),he})}):[]),at=x(()=>{if(!e.keys)return"";const P=E.value.map(S=>{const C=[];for(const I of S)if(Z(I))H.isEqual(I)?C.push(t("$vuetify.hotkey.plus")):ie.isEqual(I)&&C.push(t("$vuetify.hotkey.then"));else{const de=I[0]==="icon"||I[0]==="symbol"?Se(bt(tt,e.keyMap),"text",String(I[1]),W.value)[1]:I[1];C.push(j(de))}return C.join(" ")}).join(", ");return t("$vuetify.hotkey.shortcut",P)});function j(y){return y.startsWith("$vuetify.")?t(y):y}function nt(y){if(re.value==="text")return;const P=gs(le.value,String(y[2]),W.value);return j(P)}function ce(y,P,S){const C=S?"kbd":Pe,I=["v-hotkey__key",`v-hotkey__key-${y[0]}`,...S?["v-hotkey__key--nested"]:[a.value,o.value,s.value,f.value]];return r(C,{key:P,class:R(I),style:O(S?void 0:B.value),"aria-hidden":"true",title:nt(y)},{default:()=>[y[0]==="icon"?r(K,{icon:y[1],"aria-hidden":"true"},null):j(y[1])]})}function ue(y,P){return n("span",{key:P,class:"v-hotkey__divider","aria-hidden":"true"},[H.isEqual(y)?"+":t("$vuetify.hotkey.then")])}Ve(()=>n("div",{class:R(["v-hotkey",{"v-hotkey--disabled":e.disabled,"v-hotkey--inline":e.inline,"v-hotkey--contained":i.value},l.value,c.value,A.value,e.class]),style:O(e.style),role:"img","aria-label":at.value},[i.value?r(Pe,{key:"contained",class:R(["v-hotkey__contained-wrapper",a.value,o.value,s.value,f.value]),style:O(B.value),"aria-hidden":"true"},{default:()=>[e.prefix&&n("span",{key:"contained-prefix",class:"v-hotkey__prefix"},[e.prefix]),E.value.map((y,P)=>n("span",{class:"v-hotkey__combination",key:P},[y.map((S,C)=>Z(S)?ue(S,C):ce(S,C,!0)),P<E.value.length-1&&n("span",{"aria-hidden":"true"},[w(" ")])])),e.suffix&&n("span",{key:"contained-suffix",class:"v-hotkey__suffix"},[e.suffix])]}):n(D,null,[e.prefix&&n("span",{key:"prefix",class:"v-hotkey__prefix"},[e.prefix]),E.value.map((y,P)=>n("span",{class:"v-hotkey__combination",key:P},[y.map((S,C)=>Z(S)?ue(S,C):ce(S,C,!1)),P<E.value.length-1&&n("span",{"aria-hidden":"true"},[w(" ")])])),e.suffix&&n("span",{key:"suffix",class:"v-hotkey__suffix"},[e.suffix])])]))}}),ks={name:"KeyboardShortcutsTable",components:{VHotkey:ms},data(){return{mdiMenuLeft:St,mdiMenuRight:Pt,mdiKeyboardSpace:_t,mdiAppleKeyboardShift:yt}}},fs={class:"highlight-table"},vs={class:"highlight-table"},bs={class:"highlight-table"};function ys(e,t,l,c,a,o){const s=h("v-hotkey");return u(),_(D,null,[t[22]||(t[22]=n("h4",null,"Navigation",-1)),n("table",fs,[n("tbody",null,[n("tr",null,[n("td",null,[r(s,{keys:"j"}),t[0]||(t[0]=w(", ",-1)),r(s,{keys:"arrowleft"}),t[1]||(t[1]=w(", ",-1)),r(s,{keys:"shift+space"})]),t[2]||(t[2]=n("td",null,"Previous page",-1))]),n("tr",null,[n("td",null,[r(s,{keys:"k"}),t[3]||(t[3]=w(", ",-1)),r(s,{keys:"arrowright"}),t[4]||(t[4]=w(", ",-1)),r(s,{keys:"space"})]),t[5]||(t[5]=n("td",null,"Next page",-1))]),n("tr",null,[n("td",null,[r(s,{keys:","})]),t[6]||(t[6]=n("td",null,[w("Next "),n("em",null,"only"),w(" one page in two page mode.")],-1))]),n("tr",null,[n("td",null,[r(s,{keys:"."})]),t[7]||(t[7]=n("td",null,[w("Previous "),n("em",null,"only"),w(" one page in two page mode.")],-1))]),n("tr",null,[n("td",null,[r(s,{keys:"p"})]),t[8]||(t[8]=n("td",null,"Previous Book",-1))]),n("tr",null,[n("td",null,[r(s,{keys:"n"})]),t[9]||(t[9]=n("td",null,"Next Book",-1))]),n("tr",null,[n("td",null,[r(s,{keys:"esc"})]),t[10]||(t[10]=n("td",null,"Close book",-1))])])]),t[23]||(t[23]=n("h4",null,"Fit Page To",-1)),n("table",vs,[n("tbody",null,[n("tr",null,[n("td",null,[r(s,{keys:"s"})]),t[11]||(t[11]=n("td",null,"screen",-1))]),n("tr",null,[n("td",null,[r(s,{keys:"h"})]),t[12]||(t[12]=n("td",null,"screen height",-1))]),n("tr",null,[n("td",null,[r(s,{keys:"w"})]),t[13]||(t[13]=n("td",null,"screen width",-1))]),n("tr",null,[n("td",null,[r(s,{keys:"o"})]),t[14]||(t[14]=n("td",null,"Show page at original size",-1))]),n("tr",null,[n("td",null,[r(s,{keys:"2"})]),t[15]||(t[15]=n("td",null,"Toggle two page view",-1))]),n("tr",null,[n("td",null,[r(s,{keys:"r"})]),t[16]||(t[16]=n("td",null,"Read Right to Left",-1))]),n("tr",null,[n("td",null,[r(s,{keys:"l"})]),t[17]||(t[17]=n("td",null,"Read Left to Right",-1))]),n("tr",null,[n("td",null,[r(s,{keys:"t"})]),t[18]||(t[18]=n("td",null,"Read Top to Bottom",-1))]),n("tr",null,[n("td",null,[r(s,{keys:"b"})]),t[19]||(t[19]=n("td",null,"Read in Bottom to Top",-1))])])]),t[24]||(t[24]=n("h4",null,"Other",-1)),n("table",bs,[n("tbody",null,[n("tr",null,[n("td",null,[r(s,{keys:"m"})]),t[20]||(t[20]=n("td",null,"Show comic's metadata",-1))]),n("tr",null,[n("td",null,[r(s,{keys:"doubleclick"})]),t[21]||(t[21]=n("td",null,"Zoom page",-1))])])])],64)}const _s=v(ks,[["render",ys],["__scopeId","data-v-11cb1561"]]),Ps=/iP(?:ad|hone|od)|Android/,Ss=Ps.test(navigator.userAgent),ws=Ss||globalThis.orientation!==void 0,Cs={name:"KeyboardShortcutsPanel",components:{CodexListItem:ne,KeyboardShortcutsTable:_s},data(){return{mdiKeyboardOutline:wt,IS_MOBILE:ws}}};function Ts(e,t,l,c,a,o){const s=h("CodexListItem"),i=h("KeyboardShortcutsTable");return a.IS_MOBILE?T("",!0):(u(),m(io,{key:0},{default:g(()=>[r(lo,{id:"readerKeyboardShortcuts"},{default:g(()=>[r(co,{id:"shortcutsTitle"},{default:g(()=>[r(s,{id:"keyboardShortcutsItem","prepend-icon":a.mdiKeyboardOutline,title:"Keyboard Shortcuts"},null,8,["prepend-icon"])]),_:1}),r(uo,null,{default:g(()=>[r(i)]),_:1})]),_:1})]),_:1}))}const Rs=v(Cs,[["render",Ts],["__scopeId","data-v-8285795a"]]),ot=["fitTo","readingDirection","twoPages"];Object.freeze(ot);const Bs={name:"ReaderSettingsPanel",components:{CodexListItem:ne},data(){return{isGlobalScope:!1,mdiOpenInNew:Rt,mdiEye:Tt,openDelay:2e3,scopeItems:[{title:"Only this comic",value:!1},{title:"Default for all comics",value:!0}]}},computed:{...k(F,["isAuthDialogOpen"]),...k(d,["isVertical","isPDF","cacheBook"]),...k(d,{choices:e=>e.choices,validBook:e=>!!e.books?.current,selectedSettings(e){return this.isGlobalScope||!e.books?.current?e.readerSettings:e.books?.current.settings},isClearSettingsButtonDisabled(e){if(this.isGlobalScope||!e.books?.current)return!0;for(const t of ot){const l=e.books?.current.settings[t];if(!e.choices.nullValues.has(l))return!1}return!0},pdfInBrowserURL(e){return this.isPDF&&e.books?.current?Ct(e.books?.current):""},finishOnLastPage:e=>e.readerSettings.finishOnLastPage,pageTransition:e=>e.readerSettings.pageTransition}),...Ie(d,["readRtlInReverse"]),fitToChoices(){return this.choicesWithoutNull("fitTo")},readingDirectionChoices(){return this.choicesWithoutNull("readingDirection")},disableTwoPages(){return this.isVertical||this.isPDF&&this.cacheBook},disableCacheBook(){return this.isVertical&&this.isPDF},disablePageTransition(){return this.isVertical&&this.isPDF}},mounted(){document.addEventListener("keyup",this._keyUpListener)},beforeUnmount(){document.removeEventListener("keyup",this._keyUpListener)},methods:{...b(d,["clearSettingsLocal","setSettingsGlobal","setSettingsLocal","setSettingsClient"]),settingsDialogChanged(e){this.isGlobalScope?this.setSettingsGlobal(e):this.setSettingsLocal(e)},choicesWithoutNull(e){const t=[];for(const l of this.choices[e])l.value&&t.push(l);return Object.freeze(t),t},_keyUpListener(e){if(e.stopPropagation(),this.isAuthDialogOpen)return;let t;switch(e.key){case"w":t={fitTo:"W"};break;case"h":t={fitTo:"H"};break;case"s":t={fitTo:"S"};break;case"o":t={fitTo:"O"};break;case"2":t={twoPages:!this.selectedSettings.twoPages};break;case"l":t={readingDirection:"ltr"};break;case"r":t={readingDirection:"rtl"};break;case"t":t={readingDirection:"ttb"};break;case"b":t={readingDirection:"bbt"};break}t&&this.setSettingsLocal(t)}}},Ds={id:"readerScopedSettings",class:"readerCodexListItem"};function Is(e,t,l,c,a,o){const s=h("CodexListItem");return u(),_(D,null,[t[9]||(t[9]=n("h4",{class:"readerSettingsHeader"},"Comic Settings Scope",-1)),r(Y,{modelValue:a.isGlobalScope,"onUpdate:modelValue":t[0]||(t[0]=i=>a.isGlobalScope=i),class:"scopeRadioGroup readerCodexListItem",density:"compact","hide-details":"auto"},{default:g(()=>[(u(!0),_(D,null,U(a.scopeItems,i=>(u(),m(Q,{key:i.value,label:i.title,value:i.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),r(ho,null,{default:g(()=>[n("div",Ds,[r(Y,{class:"displayRadioGroup",density:"compact",label:"Display","hide-details":"auto","model-value":e.selectedSettings.fitTo,"onUpdate:modelValue":t[1]||(t[1]=i=>o.settingsDialogChanged({fitTo:i}))},{default:g(()=>[(u(!0),_(D,null,U(o.fitToChoices,i=>(u(),m(Q,{key:i.value,label:i.title,value:i.value},null,8,["label","value"]))),128))]),_:1},8,["model-value"]),r(N,{disabled:o.disableTwoPages,class:"scopedCheckbox",density:"compact",label:"Two pages","hide-details":"auto","model-value":e.selectedSettings.twoPages,"true-value":!0,indeterminate:e.selectedSettings.twoPages===null||e.selectedSettings.twoPages===void 0,"onUpdate:modelValue":t[2]||(t[2]=i=>o.settingsDialogChanged({twoPages:i}))},null,8,["disabled","model-value","indeterminate"]),r(Y,{class:"displayRadioGroup",density:"compact",label:"Reading Direction","hide-details":"auto","model-value":e.selectedSettings.readingDirection,"onUpdate:modelValue":t[3]||(t[3]=i=>o.settingsDialogChanged({readingDirection:i}))},{default:g(()=>[(u(!0),_(D,null,U(o.readingDirectionChoices,i=>(u(),m(Q,{key:i.value,label:i.title,value:i.value},null,8,["label","value"]))),128))]),_:1},8,["model-value"]),r(N,{"model-value":e.selectedSettings.readRtlInReverse,class:"scopedCheckbox",density:"compact",label:"Read RTL Comics LTR","hide-details":"auto","true-value":!0,"onUpdate:modelValue":t[4]||(t[4]=i=>o.settingsDialogChanged({readRtlInReverse:i}))},null,8,["model-value"]),a.isGlobalScope?T("",!0):$((u(),m(Ke,{key:0,id:"clearSettingsButton",disabled:e.isClearSettingsButtonDisabled,onClick:e.clearSettingsLocal},{default:g(()=>[...t[8]||(t[8]=[w(" Clear Settings ",-1)])]),_:1},8,["disabled","onClick"])),[[X,{openDelay:a.openDelay,text:"Use the default settings for all comics for this comic"}]])])]),_:1}),r(oe),t[10]||(t[10]=n("h4",{class:"readerSettingsHeader"},"Reader Settings",-1)),r(N,{class:"readerCodexListItem","model-value":e.finishOnLastPage,density:"compact",label:"Finish Book On Last Page","hide-details":"auto","true-value":!0,"onUpdate:modelValue":t[5]||(t[5]=i=>e.setSettingsGlobal({finishOnLastPage:i}))},null,8,["model-value"]),$(r(N,{"model-value":e.pageTransition,class:"readerCodexListItem",density:"compact",disabled:o.disablePageTransition,label:"Animate Page Turns","hide-details":"auto","true-value":!0,"onUpdate:modelValue":t[6]||(t[6]=i=>e.setSettingsGlobal({pageTransition:i}))},null,8,["model-value","disabled"]),[[X,{openDelay:a.openDelay,text:"Animate page turns when reading horizontally."}]]),$(r(N,{"model-value":e.cacheBook,class:"readerCodexListItem",density:"compact",disabled:o.disableCacheBook,label:"Cache Entire Book","hide-details":"auto","true-value":!0,"onUpdate:modelValue":t[7]||(t[7]=i=>e.setSettingsClient({cacheBook:i}))},null,8,["model-value","disabled"]),[[X,{openDelay:a.openDelay,text:"Cache all pages from this book in the browser"}]]),e.pdfInBrowserURL?(u(),m(s,{key:0,"prepend-icon":a.mdiEye,"append-icon":a.mdiOpenInNew,title:"Read in Tab",href:e.pdfInBrowserURL,target:"_blank"},null,8,["prepend-icon","append-icon","href"])):T("",!0)],64)}const $s=v(Bs,[["render",Is],["__scopeId","data-v-252309d7"]]),xs={name:"ReaderSettingsSuperPanel",components:{DownloadPanel:cs,ReaderKeyboardShortcutsPanel:Rs,ReaderSettingsPanel:$s}};function Ls(e,t,l,c,a,o){const s=h("ReaderSettingsPanel"),i=h("ReaderKeyboardShortcutsPanel"),p=h("DownloadPanel");return u(),_(D,null,[r(s),r(oe),r(i),r(oe),r(p)],64)}const Vs=v(xs,[["render",Ls]]),Os={name:"ReaderSettingsDrawer",components:{SettingsDrawer:Wt,ReaderSettingsSuperPanel:Vs}};function As(e,t,l,c,a,o){const s=h("ReaderSettingsSuperPanel"),i=h("SettingsDrawer");return u(),m(i,{title:"Reader",temporary:"","disable-resize-watcher":""},{panel:g(()=>[r(s)]),_:1})}const Es=v(Os,[["render",As]]),J={a:Lt,f:xt,p:$t,i:It,s:Dt,v:Bt},Ns={name:"ReaderArcSelect",components:{ToolbarSelect:oo},data(){return{mdiFilterOutline:At}},computed:{...k(d,{arc:e=>e.arc,arcs:e=>e.arcs}),items(){const e=[];if(!this.arcs)return e;for(const[t,l]of Object.entries(this.arcs))for(const[c,a]of Object.entries(l)){let o=Vt[t];t!=="s"&&(o=o.slice(0,-1));const s=J[t],i=t===this.arc?.group&&c==this.arc?.ids?Ot:"",p={group:t,ids:c,prependIcon:s,...a},f={group:t,value:p,title:a.name,subtitle:o,prependIcon:s,appendIcon:i};e.push(f)}return e},arcInfo(){if(!this.arcs||!this.arc)return{};const e=this.arcs[this.arc?.group];return e?e[this.arc?.ids]:{}},arcIcon(){return J[this.arc?.group]}},methods:{...b(d,["loadBooks"]),onUpdate(e){const t={group:e.group,ids:e.ids.split(",").map(Number)};this.loadBooks({arc:t})},prependIcon(e){return J[e]}}},Us={id:"arcPos"};function Fs(e,t,l,c,a,o){const s=h("ToolbarSelect");return u(),m(s,{"model-value":e.arc,class:"arcSelect","select-label":"reading order",items:o.items,disabled:!o.items||o.items.length<=1,"onUpdate:modelValue":o.onUpdate},{item:g(({item:i,props:p})=>[r(eo,ee(p,{density:"compact",variant:"plain","prepend-icon":i.raw.prependIcon,subtitle:i.raw.subtitle,"append-icon":i.raw.appendIcon}),null,16,["prepend-icon","subtitle","append-icon"])]),selection:g(({props:i})=>[r(K,ee({icon:o.prependIcon(e.arc.group),size:"large"},i,{class:"arcSelectIcon"}),null,16,["icon"]),n("span",Us,L(e.arc.index)+" / "+L(e.arc.count),1)]),_:1},8,["model-value","items","disabled","onUpdate:modelValue"])}const Ws=v(Ns,[["render",Fs],["__scopeId","data-v-64020201"]]),zs={name:"ReaderTitleToolbar",components:{AppBanner:Gt,MetadataDialog:so,ReaderArcSelect:Ws,SettingsDrawerButton:zt},data(){return{mdiClose:Et,routeChanged:!1}},head(){const e=`Read / ${this.activeTitle} / page ${this.storePage}`,t=`reader ${e}`;return{title:e,meta:[{hid:"description",name:"description",content:t}]}},computed:{...k(F,["isAuthDialogOpen"]),...k(d,["activeTitle","closeBookRoute"]),...k(d,{showToolbars:e=>e.showToolbars,currentBook:e=>e.books?.current||{},empty:e=>e.empty,subtitle:e=>e.books?.current?.name||"",storePage:e=>e.page}),title(){return this.activeTitle},extensionHeight(){let e=32;return this.subtitle&&(e*=2),e+=4,e},closeRoute(){const e=te(this.closeBookRoute),t=te(e.params);return delete t.name,e.params=t,e},metadataBook(){const e={...this.currentBook};return e.group="c",e.childCount=0,e}},watch:{$route(e,t){t&&(this.routeChanged=!0)}},mounted(){document.addEventListener("keyup",this._keyUpListener)},beforeUnmount(){document.removeEventListener("keyup",this._keyUpListener)},methods:{...b($e,["setTimestamp"]),...b(d,["routeToDirection","routeToDirectionOne","routeToBook","setBookChangeFlag"]),openMetadata(){this.$refs.metadataDialog.dialog=!0},onCloseBook(){this.routeChanged&&this.setTimestamp()},_keyUpListener(e){if(e.stopPropagation(),!this.isAuthDialogOpen)switch(e.key){case"Escape":this.$refs.closeBook.$el.click();break;case"m":this.empty||this.openMetadata();break}}}},Ms={id:"readerTopToolbarHeader"},Ks={id:"title"},Hs={key:0,id:"subtitle"};function js(e,t,l,c,a,o){const s=h("AppBanner"),i=h("ReaderArcSelect"),p=h("MetadataDialog"),f=h("SettingsDrawerButton");return u(),m(po,null,{default:g(()=>[$(n("header",Ms,[r(s),r(Yt,{id:"readerToolbarTop",density:"compact","extension-height":o.extensionHeight},Nt({default:g(()=>[r(G,null,{default:g(()=>[r(Ke,{ref:"closeBook",class:"closeBook",to:o.closeRoute,size:"large",density:"compact",variant:"plain",onClick:o.onCloseBook},{default:g(()=>[...t[0]||(t[0]=[w(" close book ",-1)])]),_:1},8,["to","onClick"])]),_:1}),r(ao),e.empty?T("",!0):(u(),m(G,{key:0},{default:g(()=>[r(i),r(p,{ref:"metadataDialog",book:o.metadataBook,toolbar:!0},null,8,["book"])]),_:1})),r(G,null,{default:g(()=>[r(f)]),_:1})]),_:2},[o.title?{name:"extension",fn:g(()=>[r(Qt,{class:"readerTitle"},{default:g(()=>[n("div",Ks,L(o.title),1),e.subtitle?(u(),_("div",Hs,L(e.subtitle),1)):T("",!0)]),_:1})]),key:"0"}:void 0]),1032,["extension-height"])],512),[[Ee,e.showToolbars]])]),_:1})}const st=v(zs,[["render",js],["__scopeId","data-v-ac089588"]]),qs={name:"ReaderEmptyBooks",components:{ReaderTopToolbar:st,EmptyState:He},data(){return{mdiBookRemoveOutline:Ut}},methods:{...b(d,["loadBooks","setShowToolbars"]),onAction(){this.loadBooks({mtime:Date.now()})}},created(){this.setShowToolbars()}};function Gs(e,t,l,c,a,o){const s=h("ReaderTopToolbar"),i=h("EmptyState");return u(),_(D,null,[r(s),r(i,{headline:"Book Not Found",title:"Close the reader and find another book",icon:a.mdiBookRemoveOutline,"action-text":"Try to load book again","onClick:action":o.onAction},null,8,["icon","onClick:action"])],64)}const Ys=v(qs,[["render",Gs]]),Qs={name:"ReaderBookChangeNavButton",components:{PaginationNavButton:Ge},props:{direction:{type:String,required:!0}},computed:{...k(d,["isBTT"]),...k(d,{toRoute(e){const t=e?.routes?.books[this.direction];return t?{params:te(t)}:""}}),title(){return(this.direction==="prev"?"Previous":"Next")+" Book"},icon(){return this.bookChangeIcon(this.direction)},classes(){return{bookChangeNavButtonLeft:this.direction==="prev",bookChangeNavButtonRight:this.direction==="next"}}},methods:{...b(d,["bookChangeIcon"])}};function Xs(e,t,l,c,a,o){const s=h("PaginationNavButton");return e.toRoute?(u(),m(s,{key:0,class:R(o.classes),icon:o.icon,variant:"plain",title:o.title,to:e.toRoute},null,8,["class","icon","title","to"])):T("",!0)}const Zs=v(Qs,[["render",Xs],["__scopeId","data-v-e6c3b493"]]),Js={name:"ReaderNavButton",components:{PaginationNavButton:Ge},props:{value:{type:Number,required:!0},twoPages:{type:Boolean,default:!1}},computed:{...k(d,["isVertical"]),...k(d,{storePage:e=>e.page,toRoute(e){if(!this.isVertical)return{params:{pk:e.books.current.pk,page:this.value}}},isBookPrev:e=>!!e.routes.books.prev,isBookNext:e=>!!e.routes.books.next}),classes(){return{readerNavButtonLeft:!this.isBookPrev&&this.value===0,readerNavButtonRight:!this.isBookNext&&this.value!=0}},title(){return"Page "+this.value},disabled(){return this.value===this.storePage||this.twoPages&&!!(this.value%2)&&this.value-1===this.storePage}},methods:{...b(d,["setActivePage"]),onClick(){this.isVertical&&this.setActivePage(this.value,!0)}}};function ea(e,t,l,c,a,o){const s=h("PaginationNavButton");return u(),m(s,{key:e.isVertical,disabled:o.disabled,class:R(["readerNavButton",o.classes]),title:o.title,to:e.toRoute,onClick:o.onClick},{default:g(()=>[w(L(l.value),1)]),_:1},8,["disabled","class","title","to","onClick"])}const ta=v(Js,[["render",ea],["__scopeId","data-v-f60d8fb5"]]),z="prev",M="next",oa={name:"ReaderNavToolbar",components:{PaginationSlider:ro,ReaderNavButton:ta,PaginationToolbar:no,ReaderBookChangeNavButton:Zs},computed:{...k(F,["isAuthDialogOpen"]),...k(d,["activeSettings","isReadInReverse","isVertical"]),...k(d,{showToolbars:e=>e.showToolbars,storePage:e=>e.page,key(e){return`${e.books?.current?.pk}:${this.step}:${this.isReadInReverse}`},maxPage:e=>e.books?.current?.maxPage||0}),twoPages(){return this.activeSettings.twoPages},step(){return this.activeSettings.twoPages?2:1},trackColor(){return this.twoPages&&+this.storePage>=this.maxPage-1?this.$vuetify.theme.current.colors.primary:""},min(){return this.isReadInReverse?this.maxPage:0},max(){return this.isReadInReverse?0:this.maxPage},bookPrev(){return this.isReadInReverse?"next":"prev"},bookNext(){return this.isReadInReverse?"prev":"next"}},mounted(){document.addEventListener("keyup",this._keyUpListener)},beforeUnmount(){document.removeEventListener("keyup",this._keyUpListener)},methods:{...b(d,["routeToBook","routeToDirection","routeToDirectionOne","routeToPage","setActivePage"]),onSliderUpdate(e){this.isVertical?this.setActivePage(e,!0):this.routeToPage(e)},_keyUpListener(e){if(e.stopPropagation(),!this.isAuthDialogOpen)switch(e.key){case" ":!e.shiftKey&&window.innerHeight+window.scrollY+1>=document.body.scrollHeight?this.routeToDirection(M):e.shiftKey&&window.scrollY===0&&this.routeToDirection(z);break;case"j":case"ArrowRight":this.routeToDirection(M);break;case"k":case"ArrowLeft":this.routeToDirection(z);break;case",":this.routeToDirectionOne(z);break;case".":this.routeToDirectionOne(M);break;case"n":this.routeToBook(M);break;case"p":this.routeToBook(z);break}}}};function sa(e,t,l,c,a,o){const s=h("ReaderBookChangeNavButton"),i=h("ReaderNavButton"),p=h("PaginationSlider"),f=h("PaginationToolbar");return u(),m(go,null,{default:g(()=>[e.maxPage?$((u(),m(f,{key:0,id:"readerToolbarNav"},{default:g(()=>[r(s,{direction:o.bookPrev,narrow:!1},null,8,["direction"]),r(i,{value:o.min,"two-pages":o.twoPages},null,8,["value","two-pages"]),(u(),m(p,{key:e.key,"model-value":e.storePage,min:0,max:e.maxPage,step:o.step,"track-color":o.trackColor,reverse:e.isReadInReverse,"onUpdate:modelValue":t[0]||(t[0]=B=>o.onSliderUpdate(B))},null,8,["model-value","max","step","track-color","reverse"])),r(i,{value:o.max,"two-pages":o.twoPages},null,8,["value","two-pages"]),r(s,{direction:o.bookNext,narrow:!1},null,8,["direction"])]),_:1},512)),[[Ee,e.showToolbars]]):T("",!0)]),_:1})}const aa=v(oa,[["render",sa],["__scopeId","data-v-ebe715c2"]]),na={name:"MainReader",components:{BooksWindow:ns,ReaderEmpty:Ys,ReaderNavToolbar:aa,ReaderTopToolbar:st,ReaderSettingsDrawer:Es,Unauthorized:Xt},data(){return{showToolbars:!1}},computed:{...k(F,["isAuthorized"]),...k(F,{user:e=>e.user}),...k(d,{empty:e=>e.empty})},watch:{user(){this.loadReaderSettings()}},created(){this.reset();const e=this.user?0:300,t=this.user;setTimeout(()=>{this.user?.id===t?.id&&this.loadReaderSettings()},e)},methods:{...b(d,["loadReaderSettings","reset"])}},ra={key:0},ia={id:"readerContainer"};function la(e,t,l,c,a,o){const s=h("ReaderTopToolbar"),i=h("BooksWindow"),p=h("ReaderNavToolbar"),f=h("ReaderEmpty"),B=h("ReaderSettingsDrawer"),A=h("Unauthorized");return e.isAuthorized?(u(),m(Zt,{key:0,id:"readerWrapper"},{default:g(()=>[e.empty?(u(),m(f,{key:1})):(u(),_("div",ra,[n("div",ia,[r(s),r(i),r(p)])])),r(B)]),_:1})):(u(),m(A,{key:1}))}const ca=v(na,[["render",la],["__scopeId","data-v-6df2b556"]]),wa=Object.freeze(Object.defineProperty({__proto__:null,default:ca},Symbol.toStringTag,{value:"Module"}));export{jo as P,Je as S,wa as r};
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/pdf-doc-CAzVDc80.js","assets/main-d46UvpG6.js","assets/main-CZN13qLI.css","assets/pdf-doc-DxqOo2k2.css","assets/pager-full-pdf-8uR2kH3x.js","assets/settings-drawer-CjqFmP5f.js","assets/forwardRefs-BXEe8ItZ.js","assets/forwardRefs-CecUXkvN.css","assets/unauthorized-B0KN5ef3.js","assets/VDialog-BFf48e97.js","assets/VDialog-cfA1435M.css","assets/change-password-dialog-DoBLv9WU.js","assets/VForm-BNXhV_uk.js","assets/VSelectionControl-xYnmeS9J.js","assets/VSelectionControl-R4GtShoa.css","assets/VForm-DxBt30-N.css","assets/admin-C6VbbEgi.js","assets/change-password-dialog-DL8UMjmX.css","assets/ssrBoot-Bn2PfqMS.js","assets/unauthorized-ChdZFt-1.css","assets/copy-to-clipboard-DoUvDJVx.js","assets/VDivider-Dtis_q2S.js","assets/VDivider-DU47sRrT.css","assets/settings-drawer-d-7mkVdG.css","assets/VWindowItem-0tN6eYpd.js","assets/VWindowItem-CWv03gfN.css","assets/VSelect-DIXHkKJm.js","assets/VCheckboxBtn-CYmOhPsT.js","assets/VSelect-BvTTr4RP.css","assets/pagination-toolbar-Bj2tvIp6.js","assets/VTable-BK7gXlps.js","assets/VTable-BsI6FsWH.css","assets/confirm-dialog-WKjj039l.js","assets/confirm-dialog-YfC8mRQA.css","assets/pagination-toolbar-BMm-LmG-.css","assets/VExpansionPanels-DFJglYob.js","assets/VExpansionPanels-B8KjM0Qi.css","assets/VRadioGroup-BlGhrl3W.js","assets/VRadioGroup-Cp9mZ7cb.css","assets/VCheckbox-DSiToISz.js","assets/VCheckbox-CvH8ekHL.css","assets/index-CuPwxeMJ.js","assets/index-Czf-fUM7.css"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{_ as v,D as b,G as k,am as d,z as m,I as T,w as u,y as g,d as R,x as h,a as r,A as w,C as L,v as _,ac as we,F as D,an as it,ao as lt,m as ee,ap as Ce,aq as ct,ar as Te,J as Re,n as O,as as Be,at as q,au as ut,U as $,a7 as dt,av as ht,aw as De,B as U,l as Ie,b as n,ax as pt,E as $e,ay as gt,az as mt,aA as kt,g as xe,p as ae,aB as Le,u as Ve,aC as Oe,L as Ae,aD as ft,aE as vt,c as x,aF as bt,aG as yt,aH as _t,aI as Pt,aJ as St,aK as wt,aL as Ct,H as F,ad as Tt,a1 as Rt,aM as Bt,Q as Dt,R as It,S as $t,T as xt,aN as Lt,aO as Vt,aP as Ot,aQ as At,N as te,aR as Et,X as Nt,aS as Ee,aT as Ut}from"./main-d46UvpG6.js";import{V as Ft,a as Wt,S as zt}from"./settings-drawer-CjqFmP5f.js";import{k as K,I as Mt,r as Ne,i as Ue,c as Kt,s as Fe,t as We,d as Ht,j as ze,v as Me,w as jt,V as Ke}from"./forwardRefs-BXEe8ItZ.js";import{P as qt,E as He,A as Gt,V as Yt,a as Xt,U as Jt,c as Qt}from"./unauthorized-B0KN5ef3.js";import{V as je,a as qe}from"./VWindowItem-0tN6eYpd.js";import{b as Zt}from"./VSelect-DIXHkKJm.js";import{C as ne,a as eo}from"./VDialog-BFf48e97.js";import{D as to,T as oo,b as so,V as G,a as ao,P as Ge,c as no,d as ro}from"./pagination-toolbar-Bj2tvIp6.js";import{V as io,a as lo,b as co,c as uo}from"./VExpansionPanels-DFJglYob.js";import{d as ho,V as po,e as go}from"./VSelectionControl-xYnmeS9J.js";import{V as Y,a as X}from"./VRadioGroup-BlGhrl3W.js";import{a as oe}from"./VDivider-Dtis_q2S.js";import{V as N}from"./VCheckbox-DSiToISz.js";import{T as J}from"./index-CuPwxeMJ.js";const mo={control:"ctrl",command:"cmd",option:"alt",up:"arrowup",down:"arrowdown",left:"arrowleft",right:"arrowright",esc:"escape",spacebar:" ",space:" ",return:"enter",del:"delete",minus:"-",hyphen:"-"};function ge(e){const t=e.toLowerCase();return mo[t]||t}function Ye(e){if(!e)return[];const l=(e.startsWith("+")||e.startsWith("_"))&&!(e.startsWith("++")||e.startsWith("__"));if(e.length>1&&l||e.includes("++")||e.includes("__")||e==="+"||e==="_"||e.length>1&&(e.endsWith("+")||e.endsWith("_"))&&e.at(-2)!==e.at(-1)||e==="++"||e==="--"||e==="__")return[];const a=[];let o="";const s=()=>{o&&(a.push(ge(o)),o="")};for(let p=0;p<e.length;p++){const f=e[p],B=e[p+1];f==="+"||f==="_"||f==="-"?f===B?(s(),a.push(f),p++):f==="+"||f==="_"?s():o+=f:o+=f}return s(),a.some(p=>p.length>1&&p.includes("-")&&p!=="--")?[]:a.length===0&&e?[ge(e)]:a}function ko(e){if(!e)return[];const t=e.startsWith("-")&&!["---","--+"].includes(e),l=e.endsWith("-")&&!e.endsWith("+-")&&!e.endsWith("_-")&&e!=="-"&&e!=="---";if(t||l)return[];const c=[];let a="",o=0;for(;o<e.length;){const f=e[o];if(f==="-"){const B=e[o-1],A=o>1?e[o-2]:void 0;(B==="+"||B==="_")&&A!=="+"?(a+=f,o++):(a?(c.push(a),a=""):c.push("-"),o++)}else a+=f,o++}a&&c.push(a);const s=[];let i=0;for(const f of c)f==="-"?(i%2===0&&s.push("-"),i++):(i=0,s.push(f));return s.every(f=>Ye(f).length>0)?s:[]}function Xe(e,t){const{self:l=!1}=t.modifiers??{},c=t.value,a=typeof c=="object"&&c.options||{passive:!0},o=typeof c=="function"||"handleEvent"in c?c:c.handler,s=l?e:t.arg?document.querySelector(t.arg):window;s&&(s.addEventListener("scroll",o,a),e._onScroll=Object(e._onScroll),e._onScroll[t.instance.$.uid]={handler:o,options:a,target:l?void 0:s})}function Je(e,t){if(!e._onScroll?.[t.instance.$.uid])return;const{handler:l,options:c,target:a=e}=e._onScroll[t.instance.$.uid];a.removeEventListener("scroll",l,c),delete e._onScroll[t.instance.$.uid]}function fo(e,t){t.value!==t.oldValue&&(Je(e,t),Xe(e,t))}const vo={mounted:Xe,unmounted:Je,updated:fo},bo={name:"BookChangeDrawer",props:{direction:{type:String,required:!0}},head(){if(this.isDrawerOpen)return this.prefetchLinks(this.params,this.computedDirection,!0)},computed:{...k(d,["isBTT"]),...k(d,{computedDirection(){return this.normalizeDirection(this.direction)},params(e){return e.routes.books[this.computedDirection]},isDrawerOpen(e){return e.bookChange===this.computedDirection},icon(){return this.bookChangeIcon(this.computedDirection)}}),drawerLocation(){return this.bookChangeLocation(this.direction)},cursorClass(){return this.bookChangeCursorClass(this.computedDirection)},show(){return this.bookChangeShow(this.computedDirection)},route(){return this.toRoute(this.params)},label(){return this.linkLabel(this.computedDirection,"Book")}},methods:{...b(d,["linkLabel","normalizeDirection","prefetchLinks","toRoute","bookChangeLocation","bookChangeCursorClass","bookChangeShow","bookChangeIcon"])}};function yo(e,t,l,c,a,o){const s=h("router-link");return o.show?(u(),m(Ft,{key:0,class:R(["bookChangeDrawer",{drawerActivated:e.isDrawerOpen}]),"disable-resize-watcher":"","disable-route-watcher":"",location:o.drawerLocation,"model-value":e.isDrawerOpen,scrim:!1,temporary:"",touchless:""},{default:g(()=>[r(s,{class:R({navLink:!0,[o.cursorClass]:!0}),to:o.route,"aria-label":o.label,title:o.label,onClick:t[0]||(t[0]=i=>i.stopImmediatePropagation())},{default:g(()=>[r(K,{class:"bookChangeIcon"},{default:g(()=>[w(L(e.icon),1)]),_:1})]),_:1},8,["class","to","aria-label","title"])]),_:1},8,["location","model-value","class"])):T("",!0)}const _o=v(bo,[["render",yo],["__scopeId","data-v-0340b976"]]),Po={name:"BookChangeActivator",components:{BookChangeDrawer:_o},props:{direction:{type:String,required:!0}},computed:{show(){return this.bookChangeShow(this.computedDirection)},computedDirection(){return this.normalizeDirection(this.direction)},positionClass(){return this.bookChangeLocation(this.direction)+"Pos"},cursorClass(){return this.bookChangeCursorClass(this.direction)}},methods:{...b(d,["bookChangeCursorClass","bookChangeLocation","bookChangeShow","normalizeDirection","setBookChangeFlag"])}};function So(e,t,l,c,a,o){const s=h("BookChangeDrawer");return u(),_(D,null,[o.show?(u(),_("div",{key:0,class:R(["changeColumn",{[o.positionClass]:!0,[o.cursorClass]:!0}]),onClick:t[0]||(t[0]=we(i=>e.setBookChangeFlag(l.direction),["stop"]))},null,2)):T("",!0),r(s,{direction:l.direction},null,8,["direction"])],64)}const wo=v(Po,[["render",So],["__scopeId","data-v-67df236c"]]),Co={name:"LoadingPage",components:{Placeholder:qt},props:{twoPages:{type:Boolean,required:!0}}};function To(e,t,l,c,a,o){const s=h("Placeholder");return u(),_("div",{class:R(["pageLoading",{twoPages:l.twoPages}])},[r(s,{class:"pagePlaceholder"})],2)}const Ro=v(Co,[["render",To],["__scopeId","data-v-04027168"]]),me="unauthorized",Bo={name:"ErrorPage",components:{EmptyState:He},props:{twoPages:{type:Boolean,required:!0},type:{type:String,required:!0}},emits:["retry"],computed:{text(){return this.type===me?"Protected page":"Failed to load page"},icon(){return this.type===me?it:lt}},methods:{onAction(e){this.$emit("retry",e)}}};function Do(e,t,l,c,a,o){const s=h("EmptyState");return u(),m(s,{class:R(["pageError",{twoPages:l.twoPages}]),headline:o.text,icon:o.icon,"action-text":"Retry","onClick:action":o.onAction},null,8,["class","headline","icon","onClick:action"])}const Io=v(Bo,[["render",Do],["__scopeId","data-v-97fa48e8"]]),$o={name:"ImgPage",props:{book:{type:Object,required:!0},src:{type:String,required:!0}},emits:["load","error"],computed:{...k(d,{scale:e=>e.clientSettings.scale}),style(){const e={};if(this.scale==1)return e;const t=this.$el;if(!t?.naturalWidth)return e;const l=t.naturalWidth/2;return e.transformOrigin=`${l}px top`,e.transform=`scale(${this.scale})`,e},bookSettings(){return this.getBookSettings(this.book)},classes(){return this.bookSettings.fitToClass}},methods:{...b(d,["getBookSettings"])}},xo=["src"];function Lo(e,t,l,c,a,o){return u(),_("img",ee({class:[o.classes,"img"],draggable:"false",src:l.src,style:o.style},e.$attrs,{onError:t[0]||(t[0]=s=>e.$emit("error",s)),onLoad:t[1]||(t[1]=s=>e.$emit("load",s))}),null,16,xo)}const ke=v($o,[["render",Lo],["__scopeId","data-v-014c2ac0"]]),fe=Ce(Te(()=>Be(()=>import("./pdf-doc-CAzVDc80.js"),__vite__mapDeps([0,1,2,3])))),Vo=333,Oo={name:"BookPage",components:{ErrorPage:Io,LoadingPage:Ro,PDFDoc:fe,ImgPage:ke},props:{book:{type:Object,required:!0},page:{type:Number,required:!0}},data(){return{showProgress:!1,loaded:!1,error:"",ts:0}},computed:{...k(d,{scale:e=>e.clientSettings.scale}),style(){const e={};if(this.book.fileType==="PDF"||this.scale==1)return e;const t=this.$refs.pageComponent?.$el;return t?.naturalHeight&&(e.height=t.naturalHeight*this.scale+"px",e.width=t.naturalWidth*this.scale+"px"),e},src(){const e=Math.max(this.book.mtime,this.ts),t={pk:this.book.pk,page:this.page,mtime:e};return ct(t)},component(){return this.book.fileType==="PDF"?fe:ke},bookSettings(){return this.getBookSettings(this.book)},twoPages(){return this.bookSettings.twoPages}},mounted(){setTimeout(function(){this.loaded||(this.loading=!0)},Vo)},methods:{...b(d,["getBookSettings"]),onLoad(){this.showProgress=!1,this.loaded=!0,this.error=!1},onError(){this.error="load",this.showProgress=!1},onUnauthorized(){this.error="unauthorized",this.showProgress=!1},onRetry(){this.ts=Date.now()}}},Ao=["id","data-page"];function Eo(e,t,l,c,a,o){const s=h("ErrorPage"),i=h("LoadingPage");return u(),_("div",{id:`page${l.page}`,key:a.ts,"data-page":l.page,class:"page",style:O(o.style)},[a.error?(u(),m(s,{key:0,"two-pages":o.twoPages,type:a.error,onRetry:o.onRetry},null,8,["two-pages","type","onRetry"])):a.showProgress&&!a.loaded?(u(),m(i,{key:1,"two-pages":o.twoPages},null,8,["two-pages"])):(u(),m(Re(o.component),{key:2,ref:"pageComponent",book:l.book,page:1,src:o.src,onError:o.onError,onLoad:o.onLoad,onUnauthorized:o.onUnauthorized},null,40,["book","src","onError","onLoad","onUnauthorized"]))],12,Ao)}const Qe=v(Oo,[["render",Eo],["__scopeId","data-v-14cc8bcc"]]),No=.5,Uo={name:"ScaleForScroll",emits:["click"],data(){return{mdiMagnifyMinusOutline:ut}},computed:{...k(d,{scale:e=>e.clientSettings.scale}),showReset(){return this.scale!=q},style(){return{cursor:this.scale==q?"zoom-in":"all-scroll"}}},methods:{...b(d,["setSettingsClient"]),clearSelection(){globalThis.getSelection&&globalThis.getSelection().removeAllRanges()},onDoubleClick(){this.clearSelection();const e=this.scale+No;this.setSettingsClient({scale:e})},scaleReset(){this.setSettingsClient({scale:q})}}};function Fo(e,t,l,c,a,o){const s=ht("drag-scroller");return $((u(),_("div",{class:"scaleForScroll",style:O(o.style),onDblclick:t[0]||(t[0]=(...i)=>o.onDoubleClick&&o.onDoubleClick(...i))},[dt(e.$slots,"default",{},void 0,!0),o.showReset?(u(),m(K,{key:0,class:"resetIcon",onClick:we(o.scaleReset,["stop"])},{default:g(()=>[w(L(a.mdiMagnifyMinusOutline),1)]),_:1},8,["onClick"])):T("",!0)],36)),[[s,,void 0,{onlyX:!0}]])}const Ze=v(Uo,[["render",Fo],["__scopeId","data-v-88f3df90"]]),Wo={name:"HorizontalPages",components:{BookPage:Qe,ScaleForScroll:Ze},props:{book:{type:Object,required:!0},page:{type:Number,required:!0}},emits:["click"],computed:{bookSettings(){return this.getBookSettings(this.book)},isReadInReverse(){return this.bookSettings.isReadInReverse},showSecondPage(){return this.bookSettings.twoPages&&this.page<this.book.maxPage&&!this.isCoverPage(this.book,this.page)},showPageOne(){return!this.isReadInReverse||this.showSecondPage},showPageTwo(){return this.isReadInReverse||this.showSecondPage},pageOne(){return this.isReadInReverse?this.page+1:this.page},pageTwo(){return this.isReadInReverse?this.page:this.page+1}},methods:{...b(d,["getBookSettings","isCoverPage"])}};function zo(e,t,l,c,a,o){const s=h("BookPage"),i=h("ScaleForScroll");return u(),m(i,{class:"noWrap"},{default:g(()=>[o.showPageOne?(u(),m(s,{key:0,ref:"pageOne",book:l.book,page:o.pageOne,class:"horizontalPage"},null,8,["book","page"])):T("",!0),o.showPageTwo?(u(),m(s,{key:1,book:l.book,page:o.pageTwo,class:"horizontalPage"},null,8,["book","page"])):T("",!0)]),_:1})}const Mo=v(Wo,[["render",zo],["__scopeId","data-v-ce77a1b1"]]),Ko={name:"PageChangeLink",props:{direction:{type:String,required:!0}},head(){return this.prefetchLinks(this.params,this.computedDirection)},computed:{...k(d,["isFirstPage","isLastPage"]),...k(d,{params(e){return e.routes[this.computedDirection]}}),computedDirection(){return this.normalizeDirection(this.direction)},show(){return this.computedDirection==="prev"?!this.isFirstPage:!this.isLastPage},pageChangeClass(){return"pageChangeColumn"},directionClass(){return this.direction},route(){return this.toRoute(this.params)},label(){return this.linkLabel(this.computedDirection,"Page")}},methods:{...b(d,["linkLabel","normalizeDirection","prefetchLinks","toRoute"])}};function Ho(e,t,l,c,a,o){const s=h("router-link");return o.show?(u(),m(s,{key:0,to:o.route,"aria-label":o.label,class:R(["changeColumn",{[o.directionClass]:!0}]),onClick:t[0]||(t[0]=i=>i.stopImmediatePropagation())},null,8,["to","aria-label","class"])):T("",!0)}const jo=v(Ko,[["render",Ho],["__scopeId","data-v-8a0b30bf"]]),qo=48,Go=48,Yo={name:"PagerHorizontal",components:{HorizontalPages:Mo,PageChangeLink:jo},props:{book:{type:Object,required:!0}},data(){return{activePage:0,pages:[]}},computed:{...k(d,{prevBook:e=>e.routes.books?.prev,nextBook:e=>e.routes.books?.next,storePage:e=>e.page,storePk:e=>e.books.current.pk,transition:e=>e.readerSettings.pageTransition}),bookSettings(){return this.getBookSettings(this.book)},twoPages(){return this.bookSettings.twoPages},isReadInReverse(){return this.bookSettings.isReadInReverse},windowIndex(){const e=this.activePage-this.pages[0];return Math.min(Math.max(0,e),this.book.maxPage)}},watch:{twoPages(){this.setActivePage(this.storePage,!0)},storePage(e){if(this.book.pk===this.storePk){this.activePage=e;const t=this.pages.at(0),l=this.pages.at(-1);(e<t||e>l)&&this.setPages()}}},created(){this.book.pk===this.storePk?this.activePage=+this.$route.params.page:this.book.pk===this.prevBook.pk?this.activePage=this.book.maxPage:this.activePage=0,this.setPages()},methods:{...b(d,["getBookSettings","setBookChangeFlag","setActivePage"]),setPages(){const e=Math.max(this.activePage-qo,0),t=Math.min(this.activePage+Go,this.book.maxPage);this.pages=De(e,t+1)}}};function Xo(e,t,l,c,a,o){const s=h("PageChangeLink"),i=h("HorizontalPages");return u(),m(je,{"show-arrows":"",continuous:"","model-value":o.windowIndex,reverse:o.isReadInReverse},{prev:g(()=>[r(s,{direction:"prev"})]),next:g(()=>[r(s,{direction:"next"})]),default:g(()=>[(u(!0),_(D,null,U(a.pages,p=>(u(),m(qe,{key:`c/${l.book.pk}/${p}`,class:"windowItem",disabled:"",eager:p>=e.storePage-1&&p<=e.storePage+2,"model-value":p,transition:e.transition,"reverse-transition":e.transition},{default:g(()=>[r(i,{book:l.book,page:p},null,8,["book","page"])]),_:2},1032,["eager","model-value","transition","reverse-transition"]))),128))]),_:1},8,["model-value","reverse"])}const ve=v(Yo,[["render",Xo],["__scopeId","data-v-a55977d3"]]),be=250,Jo={name:"PagerVertical",components:{BookPage:Qe,ScaleForScroll:Ze},props:{book:{type:Object,required:!0}},data(){return{innerHeight:window.innerHeight,innerWidth:window.innerWidth,intersectorOn:!1,programmaticScroll:!1,intersectOptions:{handler:this.onIntersect,options:{threshold:[.75]}}}},computed:{...k(d,{storePage:e=>e.page,showToolbars:e=>e.showToolbars}),...Ie(d,["reactWithScroll"]),bookSettings(){return this.getBookSettings(this.book)},isReadInReverse(){return this.bookSettings.isReadInReverse},items(){const e=this.book?.maxPage?this.book.maxPage+1:0,t=De(0,e);return this.isReadInReverse&&t.reverse(),t}},watch:{storePage(e){this.reactWithScroll&&this.scrollToPage(e)}},mounted(){window.addEventListener("resize",this.onResize),setTimeout(()=>{this.scrollToPage(this.storePage)},be)},beforeUnmount(){window.removeEventListener("resize",this.onResize)},methods:{...b(d,["getBookSettings","setActivePage","setBookChangeFlag"]),onIntersect(e,t){if(e&&this.intersectorOn){const c=+t[0].target.dataset.page;this.setActivePage(c,!1)}},onScroll(){if(this.programmaticScroll)return;this.intersectorOn=!0;const e=this.$refs.verticalScroll.$el,t=e.scrollTop;if(this.storePage===0&&t===0)this.setBookChangeFlag("prev");else if(this.storePage===this.book.maxPage){const l=e.scrollTopMax||e.scrollHeight-e.clientTop;window.innerHeight+t+1>=l&&this.setBookChangeFlag("next")}},scrollToPage(e){this.intersectorOn=!1,this.programmaticScroll=!0;const t=this.$refs.verticalScroll;t?t.scrollToIndex(e):console.debug("Can't find verticalScroll component."),setTimeout(()=>{this.programmaticScroll=!1},be)},onResize(){this.innerHeight=window.innerHeight,this.innerWidth=window.innerWidth}}},Qo=["data-page"];function Zo(e,t,l,c,a,o){const s=h("BookPage"),i=h("ScaleForScroll");return u(),m(i,null,{default:g(()=>[$((u(),m(Zt,{id:"verticalScroll",key:o.isReadInReverse,ref:"verticalScroll",items:o.items,height:a.innerHeight,width:a.innerWidth},{default:g(({item:p})=>[r(s,{book:l.book,page:p,class:"verticalPage"},null,8,["book","page"]),$(n("div",{class:R(["pageTracker",{pageTrackerToolbars:e.showToolbars}]),"data-page":p},null,10,Qo),[[Mt,a.intersectOptions,void 0,{quiet:!0}]])]),_:1},8,["items","height","width"])),[[vo,o.onScroll,"#verticalScroll"]])]),_:1})}const ye=v(Jo,[["render",Zo],["__scopeId","data-v-4fdc17f1"]]),_e=Ce(Te(()=>Be(()=>import("./pager-full-pdf-8uR2kH3x.js"),__vite__mapDeps([4,1,2,0,3,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42])))),es={name:"PagerSelector",components:{PagerHorizontal:ve,PagerPDF:_e,PagerVertical:ye},props:{book:{type:Object,required:!0}},emits:["click"],head(){return this.prefetchBook(this.book)},computed:{...k(d,["cacheBook"]),...k(d,{storePk:e=>e.books?.current?.pk||0}),isActiveBook(){return this.book&&this.storePk===this.book?.pk},bookSettings(){return this.getBookSettings(this.book)},readerFullPdf(){return this.book?.fileType=="PDF"&&this.cacheBook&&!this.bookSettings.isVertical},component(){let e;return this.readerFullPdf?e=_e:this.bookSettings.isVertical?e=ye:e=ve,e}},watch:{$route(e){+e.params.pk===this.book.pk&&this.setActivePage(+e.params.page,!0)}},created(){this.isActiveBook&&this.setActivePage(+this.$route.params.page,!0)},methods:{...b(d,["getBookSettings","isBookVertical","setActivePage","prefetchBook"])}};function ts(e,t,l,c,a,o){return u(),m(Re(o.component),{book:l.book},null,8,["book"])}const os=v(es,[["render",ts]]),ss={name:"BooksWindow",components:{BookChangeActivator:wo,Pager:os},computed:{...k(d,["isBTT"]),...k(d,{books:e=>[e.books.prev,e.books.current,e.books.next].filter(Boolean),bookChange:e=>e.bookChange,currentBookPk:e=>e.books?.current?.pk||0,bookRoutes:e=>e.routes.books,transition:e=>e.readerSettings.pageTransition}),bookChangePrev(){return this.bookChangeShow("prev")},bookChangeNext(){return this.bookChangeShow("next")}},watch:{$route(e,t){(!t||!t.params||+e.params.pk!=+t.params.pk)&&this.loadBooks({params:e.params})}},beforeMount(){this.setBookChangeFlag(),this.loadBooks({})},methods:{...b(d,["loadBooks","setBookChangeFlag","toggleToolbars"]),click(){this.toggleToolbars(),this.setBookChangeFlag()},eager(e){return this.bookChange&&this.bookRoutes[this.bookChange]&&this.bookRoutes[this.bookChange].pk===e}}};function as(e,t,l,c,a,o){const s=h("BookChangeActivator"),i=h("Pager");return u(),m(je,{id:"booksWindow",direction:"vertical","model-value":e.currentBookPk,reverse:e.isBTT,"show-arrows":"",onClick:e.toggleToolbars},{prev:g(()=>[r(s,{direction:"prev"})]),next:g(()=>[r(s,{direction:"next"})]),default:g(()=>[(u(!0),_(D,null,U(e.books,p=>(u(),m(qe,{key:`c/${p.pk}`,class:"windowItem",disabled:"",eager:o.eager(p.pk),value:p.pk,transition:e.transition,"reverse-transitin":e.transition},{default:g(()=>[r(i,{book:p,onClick:o.click},null,8,["book","onClick"])]),_:2},1032,["eager","value","transition","reverse-transitin"]))),128))]),_:1},8,["model-value","reverse","onClick"])}const ns=v(ss,[["render",as],["__scopeId","data-v-3b8d07f2"]]),rs={name:"DownloadPanel",components:{CodexListItem:ne,DownloadButton:to},data(){return{mdiDownload:kt,mdiFileImage:mt}},computed:{...k(d,["activeTitle","routeParams"]),...k(d,{currentBook:e=>e.books?.current,fileType:e=>e.books?.current?.fileType,mtime:e=>e.books?.current?.mtime,pk:e=>e.books?.current?.pk,filename:e=>e.books?.current?.filename,storePage:e=>e.page}),pageSrc(){const e={pk:this.pk,page:this.storePage,ts:this.ts};return gt(e)},pageName(){const e=this.fileType==="PDF"?"pdf":"jpg";return`${this.activeTitle} - page ${this.storePage}.${e}`},downloadPageTitle(){return`Download Page ${this.storePage}`},downloadItem(){return{group:"c",ids:[this.pk],childCount:1,name:this.filename,mtime:this.mtime}}},methods:{...b($e,["downloadIOSPWAFix"]),downloadPage(){pt(this.pageSrc,this.pageName)}}},is={key:0,id:"downloadPanel"};function ls(e,t,l,c,a,o){const s=h("CodexListItem"),i=h("DownloadButton");return e.currentBook?(u(),_("div",is,[r(s,{"prepend-icon":a.mdiFileImage,title:o.downloadPageTitle,onClick:o.downloadPage},null,8,["prepend-icon","title","onClick"]),r(i,{button:!1,item:o.downloadItem},null,8,["item"])])):T("",!0)}const cs=v(rs,[["render",ls],["__scopeId","data-v-a873b002"]]),us=ae({color:String,...Me(),...Ae(),...ze(),...Ht({tag:"kbd"}),...Oe(),...We()},"VKbd"),Pe=xe()({name:"VKbd",props:us(),setup(e,t){let{slots:l}=t;const{themeClasses:c}=Le(e),{borderClasses:a}=Ne(e),{roundedClasses:o}=Ue(e),{backgroundColorClasses:s,backgroundColorStyles:i}=Kt(()=>e.color),{elevationClasses:p}=Fe(e);return Ve(()=>r(e.tag,{class:R(["v-kbd",c.value,s.value,a.value,p.value,o.value,e.class]),style:O([i.value,e.style])},l)),{}}});function et(e,t,l){const c=l&&e.mac?e.mac:e.default,a=t==="icon"&&!l||t==="icon"&&!c.icon||t==="symbol"&&!c.symbol?"text":t;let o=c[a]??c.text;return a==="text"&&typeof o=="string"&&o.startsWith("$")&&!o.startsWith("$vuetify.")&&(o=o.slice(1).toUpperCase()),a==="icon"?["icon",o]:[a,o]}const tt={ctrl:{mac:{symbol:"⌃",icon:"$ctrl",text:"$vuetify.hotkey.ctrl"},default:{text:"Ctrl"}},meta:{mac:{symbol:"⌘",icon:"$command",text:"$vuetify.hotkey.command"},default:{text:"Ctrl"}},cmd:{mac:{symbol:"⌘",icon:"$command",text:"$vuetify.hotkey.command"},default:{text:"Ctrl"}},shift:{mac:{symbol:"⇧",icon:"$shift",text:"$vuetify.hotkey.shift"},default:{text:"Shift"}},alt:{mac:{symbol:"⌥",icon:"$alt",text:"$vuetify.hotkey.option"},default:{text:"Alt"}},enter:{default:{symbol:"↵",icon:"$enter",text:"$vuetify.hotkey.enter"}},arrowup:{default:{symbol:"↑",icon:"$arrowup",text:"$vuetify.hotkey.upArrow"}},arrowdown:{default:{symbol:"↓",icon:"$arrowdown",text:"$vuetify.hotkey.downArrow"}},arrowleft:{default:{symbol:"←",icon:"$arrowleft",text:"$vuetify.hotkey.leftArrow"}},arrowright:{default:{symbol:"→",icon:"$arrowright",text:"$vuetify.hotkey.rightArrow"}},backspace:{default:{symbol:"⌫",icon:"$backspace",text:"$vuetify.hotkey.backspace"}},escape:{default:{text:"$vuetify.hotkey.escape"}}," ":{mac:{symbol:"␣",icon:"$space",text:"$vuetify.hotkey.space"},default:{text:"$vuetify.hotkey.space"}},"-":{default:{text:"-"}}},ds=ae({variant:{type:String,default:"elevated",validator:e=>["elevated","flat","tonal","outlined","text","plain","contained"].includes(e)}},"VHotkeyVariant"),hs=ae({keys:String,displayMode:{type:String,default:"icon"},keyMap:{type:Object,default:()=>tt},platform:{type:String,default:"auto"},inline:Boolean,disabled:Boolean,prefix:String,suffix:String,...Ae(),...Oe(),...Me(),...ze(),...We(),...ds(),color:String},"VHotkey");class se{constructor(t){if(["and","then"].includes(t))this.val=t;else throw new Error("Not a valid delineator")}isEqual(t){return this.val===t.val}}function Q(e){return e instanceof se}function ps(e){return typeof e=="string"}function gs(e,t,l){const c=t.toLowerCase();if(c in e){const a=et(e[c],"text",l);return typeof a[1]=="string"?a[1]:String(a[1])}return t.toUpperCase()}function Se(e,t,l,c){const a=l.toLowerCase();if(a in e){const o=et(e[a],t,c);return o[0]==="text"&&typeof o[1]=="string"&&o[1].startsWith("$")&&!o[1].startsWith("$vuetify.")?["text",o[1].replace("$","").toUpperCase(),l]:[...o,l]}return["text",l.toUpperCase(),l]}const ms=xe()({name:"VHotkey",props:hs(),setup(e){const{t}=ft(),{themeClasses:l}=Le(e),{rtlClasses:c}=vt(),{borderClasses:a}=Ne(e),{roundedClasses:o}=Ue(e),{elevationClasses:s}=Fe(e),i=x(()=>e.variant==="contained"),p=x(()=>({...e,variant:i.value?"elevated":e.variant})),{colorClasses:f,colorStyles:B,variantClasses:A}=jt(p),W=x(()=>e.platform==="auto"?typeof navigator<"u"&&/macintosh/i.test(navigator.userAgent):e.platform==="mac"),re=x(()=>e.displayMode),H=new se("and"),ie=new se("then"),le=x(()=>e.keyMap),E=x(()=>e.keys?e.keys.split(" ").map(y=>{const P=ko(y);return P.flatMap((S,C)=>{const he=Ye(S).reduce((V,pe,rt)=>rt!==0?[...V,H,pe]:[...V,pe],[]).map(V=>ps(V)?Se(le.value,re.value,V,W.value):V);return C<P.length-1&&he.push(ie),he})}):[]),at=x(()=>{if(!e.keys)return"";const P=E.value.map(S=>{const C=[];for(const I of S)if(Q(I))H.isEqual(I)?C.push(t("$vuetify.hotkey.plus")):ie.isEqual(I)&&C.push(t("$vuetify.hotkey.then"));else{const de=I[0]==="icon"||I[0]==="symbol"?Se(bt(tt,e.keyMap),"text",String(I[1]),W.value)[1]:I[1];C.push(j(de))}return C.join(" ")}).join(", ");return t("$vuetify.hotkey.shortcut",P)});function j(y){return y.startsWith("$vuetify.")?t(y):y}function nt(y){if(re.value==="text")return;const P=gs(le.value,String(y[2]),W.value);return j(P)}function ce(y,P,S){const C=S?"kbd":Pe,I=["v-hotkey__key",`v-hotkey__key-${y[0]}`,...S?["v-hotkey__key--nested"]:[a.value,o.value,s.value,f.value]];return r(C,{key:P,class:R(I),style:O(S?void 0:B.value),"aria-hidden":"true",title:nt(y)},{default:()=>[y[0]==="icon"?r(K,{icon:y[1],"aria-hidden":"true"},null):j(y[1])]})}function ue(y,P){return n("span",{key:P,class:"v-hotkey__divider","aria-hidden":"true"},[H.isEqual(y)?"+":t("$vuetify.hotkey.then")])}Ve(()=>n("div",{class:R(["v-hotkey",{"v-hotkey--disabled":e.disabled,"v-hotkey--inline":e.inline,"v-hotkey--contained":i.value},l.value,c.value,A.value,e.class]),style:O(e.style),role:"img","aria-label":at.value},[i.value?r(Pe,{key:"contained",class:R(["v-hotkey__contained-wrapper",a.value,o.value,s.value,f.value]),style:O(B.value),"aria-hidden":"true"},{default:()=>[e.prefix&&n("span",{key:"contained-prefix",class:"v-hotkey__prefix"},[e.prefix]),E.value.map((y,P)=>n("span",{class:"v-hotkey__combination",key:P},[y.map((S,C)=>Q(S)?ue(S,C):ce(S,C,!0)),P<E.value.length-1&&n("span",{"aria-hidden":"true"},[w(" ")])])),e.suffix&&n("span",{key:"contained-suffix",class:"v-hotkey__suffix"},[e.suffix])]}):n(D,null,[e.prefix&&n("span",{key:"prefix",class:"v-hotkey__prefix"},[e.prefix]),E.value.map((y,P)=>n("span",{class:"v-hotkey__combination",key:P},[y.map((S,C)=>Q(S)?ue(S,C):ce(S,C,!1)),P<E.value.length-1&&n("span",{"aria-hidden":"true"},[w(" ")])])),e.suffix&&n("span",{key:"suffix",class:"v-hotkey__suffix"},[e.suffix])])]))}}),ks={name:"KeyboardShortcutsTable",components:{VHotkey:ms},data(){return{mdiMenuLeft:St,mdiMenuRight:Pt,mdiKeyboardSpace:_t,mdiAppleKeyboardShift:yt}}},fs={class:"highlight-table"},vs={class:"highlight-table"},bs={class:"highlight-table"};function ys(e,t,l,c,a,o){const s=h("v-hotkey");return u(),_(D,null,[t[22]||(t[22]=n("h4",null,"Navigation",-1)),n("table",fs,[n("tbody",null,[n("tr",null,[n("td",null,[r(s,{keys:"j"}),t[0]||(t[0]=w(", ",-1)),r(s,{keys:"arrowleft"}),t[1]||(t[1]=w(", ",-1)),r(s,{keys:"shift+space"})]),t[2]||(t[2]=n("td",null,"Previous page",-1))]),n("tr",null,[n("td",null,[r(s,{keys:"k"}),t[3]||(t[3]=w(", ",-1)),r(s,{keys:"arrowright"}),t[4]||(t[4]=w(", ",-1)),r(s,{keys:"space"})]),t[5]||(t[5]=n("td",null,"Next page",-1))]),n("tr",null,[n("td",null,[r(s,{keys:","})]),t[6]||(t[6]=n("td",null,[w("Next "),n("em",null,"only"),w(" one page in two page mode.")],-1))]),n("tr",null,[n("td",null,[r(s,{keys:"."})]),t[7]||(t[7]=n("td",null,[w("Previous "),n("em",null,"only"),w(" one page in two page mode.")],-1))]),n("tr",null,[n("td",null,[r(s,{keys:"p"})]),t[8]||(t[8]=n("td",null,"Previous Book",-1))]),n("tr",null,[n("td",null,[r(s,{keys:"n"})]),t[9]||(t[9]=n("td",null,"Next Book",-1))]),n("tr",null,[n("td",null,[r(s,{keys:"esc"})]),t[10]||(t[10]=n("td",null,"Close book",-1))])])]),t[23]||(t[23]=n("h4",null,"Fit Page To",-1)),n("table",vs,[n("tbody",null,[n("tr",null,[n("td",null,[r(s,{keys:"s"})]),t[11]||(t[11]=n("td",null,"screen",-1))]),n("tr",null,[n("td",null,[r(s,{keys:"h"})]),t[12]||(t[12]=n("td",null,"screen height",-1))]),n("tr",null,[n("td",null,[r(s,{keys:"w"})]),t[13]||(t[13]=n("td",null,"screen width",-1))]),n("tr",null,[n("td",null,[r(s,{keys:"o"})]),t[14]||(t[14]=n("td",null,"Show page at original size",-1))]),n("tr",null,[n("td",null,[r(s,{keys:"2"})]),t[15]||(t[15]=n("td",null,"Toggle two page view",-1))]),n("tr",null,[n("td",null,[r(s,{keys:"r"})]),t[16]||(t[16]=n("td",null,"Read Right to Left",-1))]),n("tr",null,[n("td",null,[r(s,{keys:"l"})]),t[17]||(t[17]=n("td",null,"Read Left to Right",-1))]),n("tr",null,[n("td",null,[r(s,{keys:"t"})]),t[18]||(t[18]=n("td",null,"Read Top to Bottom",-1))]),n("tr",null,[n("td",null,[r(s,{keys:"b"})]),t[19]||(t[19]=n("td",null,"Read in Bottom to Top",-1))])])]),t[24]||(t[24]=n("h4",null,"Other",-1)),n("table",bs,[n("tbody",null,[n("tr",null,[n("td",null,[r(s,{keys:"m"})]),t[20]||(t[20]=n("td",null,"Show comic's metadata",-1))]),n("tr",null,[n("td",null,[r(s,{keys:"doubleclick"})]),t[21]||(t[21]=n("td",null,"Zoom page",-1))])])])],64)}const _s=v(ks,[["render",ys],["__scopeId","data-v-11cb1561"]]),Ps=/iP(?:ad|hone|od)|Android/,Ss=Ps.test(navigator.userAgent),ws=Ss||globalThis.orientation!==void 0,Cs={name:"KeyboardShortcutsPanel",components:{CodexListItem:ne,KeyboardShortcutsTable:_s},data(){return{mdiKeyboardOutline:wt,IS_MOBILE:ws}}};function Ts(e,t,l,c,a,o){const s=h("CodexListItem"),i=h("KeyboardShortcutsTable");return a.IS_MOBILE?T("",!0):(u(),m(io,{key:0},{default:g(()=>[r(lo,{id:"readerKeyboardShortcuts"},{default:g(()=>[r(co,{id:"shortcutsTitle"},{default:g(()=>[r(s,{id:"keyboardShortcutsItem","prepend-icon":a.mdiKeyboardOutline,title:"Keyboard Shortcuts"},null,8,["prepend-icon"])]),_:1}),r(uo,null,{default:g(()=>[r(i)]),_:1})]),_:1})]),_:1}))}const Rs=v(Cs,[["render",Ts],["__scopeId","data-v-8285795a"]]),ot=["fitTo","readingDirection","twoPages"];Object.freeze(ot);const Bs={name:"ReaderSettingsPanel",components:{CodexListItem:ne},data(){return{isGlobalScope:!1,mdiOpenInNew:Rt,mdiEye:Tt,openDelay:2e3,scopeItems:[{title:"Only this comic",value:!1},{title:"Default for all comics",value:!0}]}},computed:{...k(F,["isAuthDialogOpen"]),...k(d,["isVertical","isPDF","cacheBook"]),...k(d,{choices:e=>e.choices,validBook:e=>!!e.books?.current,selectedSettings(e){return this.isGlobalScope||!e.books?.current?e.readerSettings:e.books?.current.settings},isClearSettingsButtonDisabled(e){if(this.isGlobalScope||!e.books?.current)return!0;for(const t of ot){const l=e.books?.current.settings[t];if(!e.choices.nullValues.has(l))return!1}return!0},pdfInBrowserURL(e){return this.isPDF&&e.books?.current?Ct(e.books?.current):""},finishOnLastPage:e=>e.readerSettings.finishOnLastPage,pageTransition:e=>e.readerSettings.pageTransition}),...Ie(d,["readRtlInReverse"]),fitToChoices(){return this.choicesWithoutNull("fitTo")},readingDirectionChoices(){return this.choicesWithoutNull("readingDirection")},disableTwoPages(){return this.isVertical||this.isPDF&&this.cacheBook},disableCacheBook(){return this.isVertical&&this.isPDF},disablePageTransition(){return this.isVertical&&this.isPDF}},mounted(){document.addEventListener("keyup",this._keyUpListener)},beforeUnmount(){document.removeEventListener("keyup",this._keyUpListener)},methods:{...b(d,["clearSettingsLocal","setSettingsGlobal","setSettingsLocal","setSettingsClient"]),settingsDialogChanged(e){this.isGlobalScope?this.setSettingsGlobal(e):this.setSettingsLocal(e)},choicesWithoutNull(e){const t=[];for(const l of this.choices[e])l.value&&t.push(l);return Object.freeze(t),t},_keyUpListener(e){if(e.stopPropagation(),this.isAuthDialogOpen)return;let t;switch(e.key){case"w":t={fitTo:"W"};break;case"h":t={fitTo:"H"};break;case"s":t={fitTo:"S"};break;case"o":t={fitTo:"O"};break;case"2":t={twoPages:!this.selectedSettings.twoPages};break;case"l":t={readingDirection:"ltr"};break;case"r":t={readingDirection:"rtl"};break;case"t":t={readingDirection:"ttb"};break;case"b":t={readingDirection:"bbt"};break}t&&this.setSettingsLocal(t)}}},Ds={id:"readerScopedSettings",class:"readerCodexListItem"};function Is(e,t,l,c,a,o){const s=h("CodexListItem");return u(),_(D,null,[t[9]||(t[9]=n("h4",{class:"readerSettingsHeader"},"Comic Settings Scope",-1)),r(Y,{modelValue:a.isGlobalScope,"onUpdate:modelValue":t[0]||(t[0]=i=>a.isGlobalScope=i),class:"scopeRadioGroup readerCodexListItem",density:"compact","hide-details":"auto"},{default:g(()=>[(u(!0),_(D,null,U(a.scopeItems,i=>(u(),m(X,{key:i.value,label:i.title,value:i.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),r(ho,null,{default:g(()=>[n("div",Ds,[r(Y,{class:"displayRadioGroup",density:"compact",label:"Display","hide-details":"auto","model-value":e.selectedSettings.fitTo,"onUpdate:modelValue":t[1]||(t[1]=i=>o.settingsDialogChanged({fitTo:i}))},{default:g(()=>[(u(!0),_(D,null,U(o.fitToChoices,i=>(u(),m(X,{key:i.value,label:i.title,value:i.value},null,8,["label","value"]))),128))]),_:1},8,["model-value"]),r(N,{disabled:o.disableTwoPages,class:"scopedCheckbox",density:"compact",label:"Two pages","hide-details":"auto","model-value":e.selectedSettings.twoPages,"true-value":!0,indeterminate:e.selectedSettings.twoPages===null||e.selectedSettings.twoPages===void 0,"onUpdate:modelValue":t[2]||(t[2]=i=>o.settingsDialogChanged({twoPages:i}))},null,8,["disabled","model-value","indeterminate"]),r(Y,{class:"displayRadioGroup",density:"compact",label:"Reading Direction","hide-details":"auto","model-value":e.selectedSettings.readingDirection,"onUpdate:modelValue":t[3]||(t[3]=i=>o.settingsDialogChanged({readingDirection:i}))},{default:g(()=>[(u(!0),_(D,null,U(o.readingDirectionChoices,i=>(u(),m(X,{key:i.value,label:i.title,value:i.value},null,8,["label","value"]))),128))]),_:1},8,["model-value"]),r(N,{"model-value":e.selectedSettings.readRtlInReverse,class:"scopedCheckbox",density:"compact",label:"Read RTL Comics LTR","hide-details":"auto","true-value":!0,"onUpdate:modelValue":t[4]||(t[4]=i=>o.settingsDialogChanged({readRtlInReverse:i}))},null,8,["model-value"]),a.isGlobalScope?T("",!0):$((u(),m(Ke,{key:0,id:"clearSettingsButton",disabled:e.isClearSettingsButtonDisabled,onClick:e.clearSettingsLocal},{default:g(()=>[...t[8]||(t[8]=[w(" Clear Settings ",-1)])]),_:1},8,["disabled","onClick"])),[[J,{openDelay:a.openDelay,text:"Use the default settings for all comics for this comic"}]])])]),_:1}),r(oe),t[10]||(t[10]=n("h4",{class:"readerSettingsHeader"},"Reader Settings",-1)),r(N,{class:"readerCodexListItem","model-value":e.finishOnLastPage,density:"compact",label:"Finish Book On Last Page","hide-details":"auto","true-value":!0,"onUpdate:modelValue":t[5]||(t[5]=i=>e.setSettingsGlobal({finishOnLastPage:i}))},null,8,["model-value"]),$(r(N,{"model-value":e.pageTransition,class:"readerCodexListItem",density:"compact",disabled:o.disablePageTransition,label:"Animate Page Turns","hide-details":"auto","true-value":!0,"onUpdate:modelValue":t[6]||(t[6]=i=>e.setSettingsGlobal({pageTransition:i}))},null,8,["model-value","disabled"]),[[J,{openDelay:a.openDelay,text:"Animate page turns when reading horizontally."}]]),$(r(N,{"model-value":e.cacheBook,class:"readerCodexListItem",density:"compact",disabled:o.disableCacheBook,label:"Cache Entire Book","hide-details":"auto","true-value":!0,"onUpdate:modelValue":t[7]||(t[7]=i=>e.setSettingsClient({cacheBook:i}))},null,8,["model-value","disabled"]),[[J,{openDelay:a.openDelay,text:"Cache all pages from this book in the browser"}]]),e.pdfInBrowserURL?(u(),m(s,{key:0,"prepend-icon":a.mdiEye,"append-icon":a.mdiOpenInNew,title:"Read in Tab",href:e.pdfInBrowserURL,target:"_blank"},null,8,["prepend-icon","append-icon","href"])):T("",!0)],64)}const $s=v(Bs,[["render",Is],["__scopeId","data-v-252309d7"]]),xs={name:"ReaderSettingsSuperPanel",components:{DownloadPanel:cs,ReaderKeyboardShortcutsPanel:Rs,ReaderSettingsPanel:$s}};function Ls(e,t,l,c,a,o){const s=h("ReaderSettingsPanel"),i=h("ReaderKeyboardShortcutsPanel"),p=h("DownloadPanel");return u(),_(D,null,[r(s),r(oe),r(i),r(oe),r(p)],64)}const Vs=v(xs,[["render",Ls]]),Os={name:"ReaderSettingsDrawer",components:{SettingsDrawer:Wt,ReaderSettingsSuperPanel:Vs}};function As(e,t,l,c,a,o){const s=h("ReaderSettingsSuperPanel"),i=h("SettingsDrawer");return u(),m(i,{title:"Reader",temporary:"","disable-resize-watcher":""},{panel:g(()=>[r(s)]),_:1})}const Es=v(Os,[["render",As]]),Z={a:Lt,f:xt,p:$t,i:It,s:Dt,v:Bt},Ns={name:"ReaderArcSelect",components:{ToolbarSelect:oo},data(){return{mdiFilterOutline:At}},computed:{...k(d,{arc:e=>e.arc,arcs:e=>e.arcs}),items(){const e=[];if(!this.arcs)return e;for(const[t,l]of Object.entries(this.arcs))for(const[c,a]of Object.entries(l)){let o=Vt[t];t!=="s"&&(o=o.slice(0,-1));const s=Z[t],i=t===this.arc?.group&&c==this.arc?.ids?Ot:"",p={group:t,ids:c,prependIcon:s,...a},f={group:t,value:p,title:a.name,subtitle:o,prependIcon:s,appendIcon:i};e.push(f)}return e},arcInfo(){if(!this.arcs||!this.arc)return{};const e=this.arcs[this.arc?.group];return e?e[this.arc?.ids]:{}},arcIcon(){return Z[this.arc?.group]}},methods:{...b(d,["loadBooks"]),onUpdate(e){const t={group:e.group,ids:e.ids.split(",").map(Number)};this.loadBooks({arc:t})},prependIcon(e){return Z[e]}}},Us={id:"arcPos"};function Fs(e,t,l,c,a,o){const s=h("ToolbarSelect");return u(),m(s,{"model-value":e.arc,class:"arcSelect","select-label":"reading order",items:o.items,disabled:!o.items||o.items.length<=1,"onUpdate:modelValue":o.onUpdate},{item:g(({item:i,props:p})=>[r(eo,ee(p,{density:"compact",variant:"plain","prepend-icon":i.raw.prependIcon,subtitle:i.raw.subtitle,"append-icon":i.raw.appendIcon}),null,16,["prepend-icon","subtitle","append-icon"])]),selection:g(({props:i})=>[r(K,ee({icon:o.prependIcon(e.arc.group),size:"large"},i,{class:"arcSelectIcon"}),null,16,["icon"]),n("span",Us,L(e.arc.index)+" / "+L(e.arc.count),1)]),_:1},8,["model-value","items","disabled","onUpdate:modelValue"])}const Ws=v(Ns,[["render",Fs],["__scopeId","data-v-64020201"]]),zs={name:"ReaderTitleToolbar",components:{AppBanner:Gt,MetadataDialog:so,ReaderArcSelect:Ws,SettingsDrawerButton:zt},data(){return{mdiClose:Et,routeChanged:!1}},head(){const e=`Read / ${this.activeTitle} / page ${this.storePage}`,t=`reader ${e}`;return{title:e,meta:[{hid:"description",name:"description",content:t}]}},computed:{...k(F,["isAuthDialogOpen"]),...k(d,["activeTitle","closeBookRoute"]),...k(d,{showToolbars:e=>e.showToolbars,currentBook:e=>e.books?.current||{},empty:e=>e.empty,subtitle:e=>e.books?.current?.name||"",storePage:e=>e.page}),title(){return this.activeTitle},extensionHeight(){let e=32;return this.subtitle&&(e*=2),e+=4,e},closeRoute(){const e=te(this.closeBookRoute),t=te(e.params);return delete t.name,e.params=t,e},metadataBook(){const e={...this.currentBook};return e.group="c",e.childCount=0,e}},watch:{$route(e,t){t&&(this.routeChanged=!0)}},mounted(){document.addEventListener("keyup",this._keyUpListener)},beforeUnmount(){document.removeEventListener("keyup",this._keyUpListener)},methods:{...b($e,["setTimestamp"]),...b(d,["routeToDirection","routeToDirectionOne","routeToBook","setBookChangeFlag"]),openMetadata(){this.$refs.metadataDialog.dialog=!0},onCloseBook(){this.routeChanged&&this.setTimestamp()},_keyUpListener(e){if(e.stopPropagation(),!this.isAuthDialogOpen)switch(e.key){case"Escape":this.$refs.closeBook.$el.click();break;case"m":this.empty||this.openMetadata();break}}}},Ms={id:"readerTopToolbarHeader"},Ks={id:"title"},Hs={key:0,id:"subtitle"};function js(e,t,l,c,a,o){const s=h("AppBanner"),i=h("ReaderArcSelect"),p=h("MetadataDialog"),f=h("SettingsDrawerButton");return u(),m(po,null,{default:g(()=>[$(n("header",Ms,[r(s),r(Yt,{id:"readerToolbarTop",density:"compact","extension-height":o.extensionHeight},Nt({default:g(()=>[r(G,null,{default:g(()=>[r(Ke,{ref:"closeBook",class:"closeBook",to:o.closeRoute,size:"large",density:"compact",variant:"plain",onClick:o.onCloseBook},{default:g(()=>[...t[0]||(t[0]=[w(" close book ",-1)])]),_:1},8,["to","onClick"])]),_:1}),r(ao),e.empty?T("",!0):(u(),m(G,{key:0},{default:g(()=>[r(i),r(p,{ref:"metadataDialog",book:o.metadataBook,toolbar:!0},null,8,["book"])]),_:1})),r(G,null,{default:g(()=>[r(f)]),_:1})]),_:2},[o.title?{name:"extension",fn:g(()=>[r(Xt,{class:"readerTitle"},{default:g(()=>[n("div",Ks,L(o.title),1),e.subtitle?(u(),_("div",Hs,L(e.subtitle),1)):T("",!0)]),_:1})]),key:"0"}:void 0]),1032,["extension-height"])],512),[[Ee,e.showToolbars]])]),_:1})}const st=v(zs,[["render",js],["__scopeId","data-v-ac089588"]]),qs={name:"ReaderEmptyBooks",components:{ReaderTopToolbar:st,EmptyState:He},data(){return{mdiBookRemoveOutline:Ut}},methods:{...b(d,["loadBooks","setShowToolbars"]),onAction(){this.loadBooks({mtime:Date.now()})}},created(){this.setShowToolbars()}};function Gs(e,t,l,c,a,o){const s=h("ReaderTopToolbar"),i=h("EmptyState");return u(),_(D,null,[r(s),r(i,{headline:"Book Not Found",title:"Close the reader and find another book",icon:a.mdiBookRemoveOutline,"action-text":"Try to load book again","onClick:action":o.onAction},null,8,["icon","onClick:action"])],64)}const Ys=v(qs,[["render",Gs]]),Xs={name:"ReaderBookChangeNavButton",components:{PaginationNavButton:Ge},props:{direction:{type:String,required:!0}},computed:{...k(d,["isBTT"]),...k(d,{toRoute(e){const t=e?.routes?.books[this.direction];return t?{params:te(t)}:""}}),title(){return(this.direction==="prev"?"Previous":"Next")+" Book"},icon(){return this.bookChangeIcon(this.direction)},classes(){return{bookChangeNavButtonLeft:this.direction==="prev",bookChangeNavButtonRight:this.direction==="next"}}},methods:{...b(d,["bookChangeIcon"])}};function Js(e,t,l,c,a,o){const s=h("PaginationNavButton");return e.toRoute?(u(),m(s,{key:0,class:R(o.classes),icon:o.icon,variant:"plain",title:o.title,to:e.toRoute},null,8,["class","icon","title","to"])):T("",!0)}const Qs=v(Xs,[["render",Js],["__scopeId","data-v-e6c3b493"]]),Zs={name:"ReaderNavButton",components:{PaginationNavButton:Ge},props:{value:{type:Number,required:!0},twoPages:{type:Boolean,default:!1}},computed:{...k(d,["isVertical"]),...k(d,{storePage:e=>e.page,toRoute(e){if(!this.isVertical)return{params:{pk:e.books.current.pk,page:this.value}}},isBookPrev:e=>!!e.routes.books.prev,isBookNext:e=>!!e.routes.books.next}),classes(){return{readerNavButtonLeft:!this.isBookPrev&&this.value===0,readerNavButtonRight:!this.isBookNext&&this.value!=0}},title(){return"Page "+this.value},disabled(){return this.value===this.storePage||this.twoPages&&!!(this.value%2)&&this.value-1===this.storePage}},methods:{...b(d,["setActivePage"]),onClick(){this.isVertical&&this.setActivePage(this.value,!0)}}};function ea(e,t,l,c,a,o){const s=h("PaginationNavButton");return u(),m(s,{key:e.isVertical,disabled:o.disabled,class:R(["readerNavButton",o.classes]),title:o.title,to:e.toRoute,onClick:o.onClick},{default:g(()=>[w(L(l.value),1)]),_:1},8,["disabled","class","title","to","onClick"])}const ta=v(Zs,[["render",ea],["__scopeId","data-v-f60d8fb5"]]),z="prev",M="next",oa={name:"ReaderNavToolbar",components:{PaginationSlider:ro,ReaderNavButton:ta,PaginationToolbar:no,ReaderBookChangeNavButton:Qs},computed:{...k(F,["isAuthDialogOpen"]),...k(d,["activeSettings","isReadInReverse","isVertical"]),...k(d,{showToolbars:e=>e.showToolbars,storePage:e=>e.page,key(e){return`${e.books?.current?.pk}:${this.step}:${this.isReadInReverse}`},maxPage:e=>e.books?.current?.maxPage||0}),twoPages(){return this.activeSettings.twoPages},step(){return this.activeSettings.twoPages?2:1},trackColor(){return this.twoPages&&+this.storePage>=this.maxPage-1?this.$vuetify.theme.current.colors.primary:""},min(){return this.isReadInReverse?this.maxPage:0},max(){return this.isReadInReverse?0:this.maxPage},bookPrev(){return this.isReadInReverse?"next":"prev"},bookNext(){return this.isReadInReverse?"prev":"next"}},mounted(){document.addEventListener("keyup",this._keyUpListener)},beforeUnmount(){document.removeEventListener("keyup",this._keyUpListener)},methods:{...b(d,["routeToBook","routeToDirection","routeToDirectionOne","routeToPage","setActivePage"]),onSliderUpdate(e){this.isVertical?this.setActivePage(e,!0):this.routeToPage(e)},_keyUpListener(e){if(e.stopPropagation(),!this.isAuthDialogOpen)switch(e.key){case" ":!e.shiftKey&&window.innerHeight+window.scrollY+1>=document.body.scrollHeight?this.routeToDirection(M):e.shiftKey&&window.scrollY===0&&this.routeToDirection(z);break;case"j":case"ArrowRight":this.routeToDirection(M);break;case"k":case"ArrowLeft":this.routeToDirection(z);break;case",":this.routeToDirectionOne(z);break;case".":this.routeToDirectionOne(M);break;case"n":this.routeToBook(M);break;case"p":this.routeToBook(z);break}}}};function sa(e,t,l,c,a,o){const s=h("ReaderBookChangeNavButton"),i=h("ReaderNavButton"),p=h("PaginationSlider"),f=h("PaginationToolbar");return u(),m(go,null,{default:g(()=>[e.maxPage?$((u(),m(f,{key:0,id:"readerToolbarNav"},{default:g(()=>[r(s,{direction:o.bookPrev,narrow:!1},null,8,["direction"]),r(i,{value:o.min,"two-pages":o.twoPages},null,8,["value","two-pages"]),(u(),m(p,{key:e.key,"model-value":e.storePage,min:0,max:e.maxPage,step:o.step,"track-color":o.trackColor,reverse:e.isReadInReverse,"onUpdate:modelValue":t[0]||(t[0]=B=>o.onSliderUpdate(B))},null,8,["model-value","max","step","track-color","reverse"])),r(i,{value:o.max,"two-pages":o.twoPages},null,8,["value","two-pages"]),r(s,{direction:o.bookNext,narrow:!1},null,8,["direction"])]),_:1},512)),[[Ee,e.showToolbars]]):T("",!0)]),_:1})}const aa=v(oa,[["render",sa],["__scopeId","data-v-ebe715c2"]]),na={name:"MainReader",components:{BooksWindow:ns,ReaderEmpty:Ys,ReaderNavToolbar:aa,ReaderTopToolbar:st,ReaderSettingsDrawer:Es,Unauthorized:Jt},data(){return{showToolbars:!1}},computed:{...k(F,["isAuthorized"]),...k(F,{user:e=>e.user}),...k(d,{empty:e=>e.empty})},watch:{user(){this.loadReaderSettings()}},created(){this.reset();const e=this.user?0:300,t=this.user;setTimeout(()=>{this.user?.id===t?.id&&this.loadReaderSettings()},e)},methods:{...b(d,["loadReaderSettings","reset"])}},ra={key:0},ia={id:"readerContainer"};function la(e,t,l,c,a,o){const s=h("ReaderTopToolbar"),i=h("BooksWindow"),p=h("ReaderNavToolbar"),f=h("ReaderEmpty"),B=h("ReaderSettingsDrawer"),A=h("Unauthorized");return e.isAuthorized?(u(),m(Qt,{key:0,id:"readerWrapper"},{default:g(()=>[e.empty?(u(),m(f,{key:1})):(u(),_("div",ra,[n("div",ia,[r(s),r(i),r(p)])])),r(B)]),_:1})):(u(),m(A,{key:1}))}const ca=v(na,[["render",la],["__scopeId","data-v-6df2b556"]]),wa=Object.freeze(Object.defineProperty({__proto__:null,default:ca},Symbol.toStringTag,{value:"Module"}));export{jo as P,Ze as S,wa as r};
|
|
Binary file
|
|
Binary file
|