codex 1.7.0__py3-none-any.whl → 1.7.0a1__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/choices.py +28 -43
- codex/db.py +2 -1
- codex/librarian/janitor/integrity.py +10 -11
- codex/librarian/janitor/tasks.py +1 -1
- codex/static_root/assets/{VCheckbox-D_CWEmqR.84f2b49311e8.js → VCheckbox-B38iL9f_.81d9c00753e7.js} +1 -1
- codex/static_root/assets/VCheckbox-B38iL9f_.81d9c00753e7.js.br +0 -0
- codex/static_root/assets/VCheckbox-B38iL9f_.81d9c00753e7.js.gz +0 -0
- codex/static_root/assets/{VCheckbox-D_CWEmqR.js → VCheckbox-B38iL9f_.js} +1 -1
- codex/static_root/assets/VCheckbox-B38iL9f_.js.br +0 -0
- codex/static_root/assets/VCheckbox-B38iL9f_.js.gz +0 -0
- codex/static_root/assets/{VCheckboxBtn-B1BhcFvi.0eaf3c516474.js → VCheckboxBtn-BbNnqvzj.aa7fa886f86a.js} +1 -1
- codex/static_root/assets/VCheckboxBtn-BbNnqvzj.aa7fa886f86a.js.br +0 -0
- codex/static_root/assets/VCheckboxBtn-BbNnqvzj.aa7fa886f86a.js.gz +0 -0
- codex/static_root/assets/{VCheckboxBtn-B1BhcFvi.js → VCheckboxBtn-BbNnqvzj.js} +1 -1
- codex/static_root/assets/VCheckboxBtn-BbNnqvzj.js.br +0 -0
- codex/static_root/assets/VCheckboxBtn-BbNnqvzj.js.gz +0 -0
- codex/static_root/assets/{VCombobox-CZAW6_3Q.0e2401e819a5.js → VCombobox-BaV3XhIr.bf0c945d80a9.js} +1 -1
- codex/static_root/assets/VCombobox-BaV3XhIr.bf0c945d80a9.js.br +0 -0
- codex/static_root/assets/VCombobox-BaV3XhIr.bf0c945d80a9.js.gz +0 -0
- codex/static_root/assets/{VCombobox-CZAW6_3Q.js → VCombobox-BaV3XhIr.js} +1 -1
- codex/static_root/assets/VCombobox-BaV3XhIr.js.br +0 -0
- codex/static_root/assets/VCombobox-BaV3XhIr.js.gz +0 -0
- codex/static_root/assets/{VDialog-CSHgHIlG.a0bcd336cb7b.js → VDialog-DJR54d5g.9d6a52f62db3.js} +1 -1
- codex/static_root/assets/VDialog-DJR54d5g.9d6a52f62db3.js.br +0 -0
- codex/static_root/assets/VDialog-DJR54d5g.9d6a52f62db3.js.gz +0 -0
- codex/static_root/assets/{VDialog-CSHgHIlG.js → VDialog-DJR54d5g.js} +1 -1
- codex/static_root/assets/VDialog-DJR54d5g.js.br +0 -0
- codex/static_root/assets/VDialog-DJR54d5g.js.gz +0 -0
- codex/static_root/assets/{VExpansionPanels-CG6MpdMC.e96ae8afad97.js → VExpansionPanels-CJWqDA9d.acf5acdb3a81.js} +1 -1
- codex/static_root/assets/VExpansionPanels-CJWqDA9d.acf5acdb3a81.js.br +0 -0
- codex/static_root/assets/VExpansionPanels-CJWqDA9d.acf5acdb3a81.js.gz +0 -0
- codex/static_root/assets/{VExpansionPanels-CG6MpdMC.js → VExpansionPanels-CJWqDA9d.js} +1 -1
- codex/static_root/assets/VExpansionPanels-CJWqDA9d.js.br +0 -0
- codex/static_root/assets/VExpansionPanels-CJWqDA9d.js.gz +0 -0
- codex/static_root/assets/{VRadioGroup-CAgQxkiU.f26ecb0c3e34.js → VRadioGroup-BFLE3yCT.8b78cefe4206.js} +1 -1
- codex/static_root/assets/VRadioGroup-BFLE3yCT.8b78cefe4206.js.br +0 -0
- codex/static_root/assets/VRadioGroup-BFLE3yCT.8b78cefe4206.js.gz +0 -0
- codex/static_root/assets/{VRadioGroup-CAgQxkiU.js → VRadioGroup-BFLE3yCT.js} +1 -1
- codex/static_root/assets/VRadioGroup-BFLE3yCT.js.br +0 -0
- codex/static_root/assets/VRadioGroup-BFLE3yCT.js.gz +0 -0
- codex/static_root/assets/{VSelect-C1gez8rl.9b11d2f00faf.js → VSelect-Dvsi19pi.6d38dc99e0a8.js} +1 -1
- codex/static_root/assets/VSelect-Dvsi19pi.6d38dc99e0a8.js.br +0 -0
- codex/static_root/assets/VSelect-Dvsi19pi.6d38dc99e0a8.js.gz +0 -0
- codex/static_root/assets/{VSelect-C1gez8rl.js → VSelect-Dvsi19pi.js} +1 -1
- codex/static_root/assets/VSelect-Dvsi19pi.js.br +0 -0
- codex/static_root/assets/VSelect-Dvsi19pi.js.gz +0 -0
- codex/static_root/assets/{VSelectionControl-DBqDlKjK.160beaa1b56c.js → VSelectionControl-BioGLzkQ.106c3be4b6d4.js} +1 -1
- codex/static_root/assets/VSelectionControl-BioGLzkQ.106c3be4b6d4.js.br +0 -0
- codex/static_root/assets/VSelectionControl-BioGLzkQ.106c3be4b6d4.js.gz +0 -0
- codex/static_root/assets/{VSelectionControl-DBqDlKjK.js → VSelectionControl-BioGLzkQ.js} +1 -1
- codex/static_root/assets/VSelectionControl-BioGLzkQ.js.br +0 -0
- codex/static_root/assets/VSelectionControl-BioGLzkQ.js.gz +0 -0
- codex/static_root/assets/{VSlideGroup-SqR_NAL1.40ba1d838a6e.js → VSlideGroup-CFkaPBuS.1d168fc87687.js} +1 -1
- codex/static_root/assets/VSlideGroup-CFkaPBuS.1d168fc87687.js.br +0 -0
- codex/static_root/assets/VSlideGroup-CFkaPBuS.1d168fc87687.js.gz +0 -0
- codex/static_root/assets/{VSlideGroup-SqR_NAL1.js → VSlideGroup-CFkaPBuS.js} +1 -1
- codex/static_root/assets/VSlideGroup-CFkaPBuS.js.br +0 -0
- codex/static_root/assets/VSlideGroup-CFkaPBuS.js.gz +0 -0
- codex/static_root/assets/{VTable-CYC-wMpk.8f15d66044da.js → VTable-B7x3Oih2.d0010dab39ce.js} +1 -1
- codex/static_root/assets/VTable-B7x3Oih2.d0010dab39ce.js.br +0 -0
- codex/static_root/assets/VTable-B7x3Oih2.d0010dab39ce.js.gz +0 -0
- codex/static_root/assets/{VTable-CYC-wMpk.js → VTable-B7x3Oih2.js} +1 -1
- codex/static_root/assets/VTable-B7x3Oih2.js.br +0 -0
- codex/static_root/assets/VTable-B7x3Oih2.js.gz +0 -0
- codex/static_root/assets/{VTextField-DMRKRbbT.911ac84d8c9d.js → VTextField-rsRdtAxl.488a06f530fe.js} +1 -1
- codex/static_root/assets/VTextField-rsRdtAxl.488a06f530fe.js.br +0 -0
- codex/static_root/assets/VTextField-rsRdtAxl.488a06f530fe.js.gz +0 -0
- codex/static_root/assets/{VTextField-DMRKRbbT.js → VTextField-rsRdtAxl.js} +1 -1
- codex/static_root/assets/VTextField-rsRdtAxl.js.br +0 -0
- codex/static_root/assets/VTextField-rsRdtAxl.js.gz +0 -0
- codex/static_root/assets/{VWindowItem-D0P2xNJl.6a10e3f3a153.js → VWindowItem-CibnlNHs.75a48ded87d5.js} +1 -1
- codex/static_root/assets/VWindowItem-CibnlNHs.75a48ded87d5.js.br +0 -0
- codex/static_root/assets/VWindowItem-CibnlNHs.75a48ded87d5.js.gz +0 -0
- codex/static_root/assets/{VWindowItem-D0P2xNJl.js → VWindowItem-CibnlNHs.js} +1 -1
- codex/static_root/assets/VWindowItem-CibnlNHs.js.br +0 -0
- codex/static_root/assets/VWindowItem-CibnlNHs.js.gz +0 -0
- codex/static_root/assets/{admin-CD90VMen.4c2b6f2a5111.js → admin-CaVmJ-fa.251f5d3cc755.js} +1 -1
- codex/static_root/assets/admin-CaVmJ-fa.251f5d3cc755.js.br +0 -0
- codex/static_root/assets/admin-CaVmJ-fa.251f5d3cc755.js.gz +0 -0
- codex/static_root/assets/{admin-CD90VMen.js → admin-CaVmJ-fa.js} +1 -1
- codex/static_root/assets/admin-CaVmJ-fa.js.br +0 -0
- codex/static_root/assets/admin-CaVmJ-fa.js.gz +0 -0
- codex/static_root/assets/{admin-menu-BpEPGKr_.c9f9178c5a82.js → admin-menu-Cb7A0Ilo.ddf1e9339257.js} +1 -1
- codex/static_root/assets/admin-menu-Cb7A0Ilo.ddf1e9339257.js.br +0 -0
- codex/static_root/assets/admin-menu-Cb7A0Ilo.ddf1e9339257.js.gz +0 -0
- codex/static_root/assets/{admin-menu-BpEPGKr_.js → admin-menu-Cb7A0Ilo.js} +1 -1
- codex/static_root/assets/admin-menu-Cb7A0Ilo.js.br +0 -0
- codex/static_root/assets/admin-menu-Cb7A0Ilo.js.gz +0 -0
- codex/static_root/assets/{admin-settings-button-progress-DDF4rY07.4f1158b650ab.js → admin-settings-button-progress-DID-drll.979420762aea.js} +1 -1
- codex/static_root/assets/admin-settings-button-progress-DID-drll.979420762aea.js.br +0 -0
- codex/static_root/assets/admin-settings-button-progress-DID-drll.979420762aea.js.gz +0 -0
- codex/static_root/assets/{admin-settings-button-progress-DDF4rY07.js → admin-settings-button-progress-DID-drll.js} +1 -1
- codex/static_root/assets/admin-settings-button-progress-DID-drll.js.br +0 -0
- codex/static_root/assets/admin-settings-button-progress-DID-drll.js.gz +0 -0
- codex/static_root/assets/browser-Br5CorL4.6e2a416309d5.css +1 -0
- codex/static_root/assets/browser-Br5CorL4.6e2a416309d5.css.br +0 -0
- codex/static_root/assets/browser-Br5CorL4.6e2a416309d5.css.gz +0 -0
- codex/static_root/assets/browser-Br5CorL4.css +1 -0
- codex/static_root/assets/browser-Br5CorL4.css.br +0 -0
- codex/static_root/assets/browser-Br5CorL4.css.gz +0 -0
- codex/static_root/assets/browser-xxQTUEuu.1686c20dc492.js +1 -0
- codex/static_root/assets/browser-xxQTUEuu.1686c20dc492.js.br +0 -0
- codex/static_root/assets/browser-xxQTUEuu.1686c20dc492.js.gz +0 -0
- codex/static_root/assets/browser-xxQTUEuu.js +1 -0
- codex/static_root/assets/browser-xxQTUEuu.js.br +0 -0
- codex/static_root/assets/browser-xxQTUEuu.js.gz +0 -0
- codex/static_root/assets/{change-password-dialog-DXJalgW4.a9f34729599d.js → change-password-dialog-DXY2Xg9k.4a7ca6108810.js} +1 -1
- codex/static_root/assets/change-password-dialog-DXY2Xg9k.4a7ca6108810.js.br +0 -0
- codex/static_root/assets/change-password-dialog-DXY2Xg9k.4a7ca6108810.js.gz +0 -0
- codex/static_root/assets/{change-password-dialog-DXJalgW4.js → change-password-dialog-DXY2Xg9k.js} +1 -1
- codex/static_root/assets/change-password-dialog-DXY2Xg9k.js.br +0 -0
- codex/static_root/assets/change-password-dialog-DXY2Xg9k.js.gz +0 -0
- codex/static_root/assets/{confirm-dialog-CqDEpU9k.e1811488121d.js → confirm-dialog-BEVEU-kA.281b6e877fb5.js} +1 -1
- codex/static_root/assets/confirm-dialog-BEVEU-kA.281b6e877fb5.js.br +0 -0
- codex/static_root/assets/confirm-dialog-BEVEU-kA.281b6e877fb5.js.gz +0 -0
- codex/static_root/assets/{confirm-dialog-CqDEpU9k.js → confirm-dialog-BEVEU-kA.js} +1 -1
- codex/static_root/assets/confirm-dialog-BEVEU-kA.js.br +0 -0
- codex/static_root/assets/confirm-dialog-BEVEU-kA.js.gz +0 -0
- codex/static_root/assets/{datetime-column-UxNaJr8b.c06a11531af3.js → datetime-column-DhrZEHwa.80e95aef7bdb.js} +1 -1
- codex/static_root/assets/datetime-column-DhrZEHwa.80e95aef7bdb.js.br +1 -0
- codex/static_root/assets/datetime-column-DhrZEHwa.80e95aef7bdb.js.gz +0 -0
- codex/static_root/assets/{datetime-column-UxNaJr8b.js → datetime-column-DhrZEHwa.js} +1 -1
- codex/static_root/assets/datetime-column-DhrZEHwa.js.br +1 -0
- codex/static_root/assets/datetime-column-DhrZEHwa.js.gz +0 -0
- codex/static_root/assets/{filter-DskcqZHA.e707b5a05b4b.js → filter-BJ7TmFiU.3cefe2d609c7.js} +1 -1
- codex/static_root/assets/filter-BJ7TmFiU.3cefe2d609c7.js.br +0 -0
- codex/static_root/assets/filter-BJ7TmFiU.3cefe2d609c7.js.gz +0 -0
- codex/static_root/assets/{filter-DskcqZHA.js → filter-BJ7TmFiU.js} +1 -1
- codex/static_root/assets/filter-BJ7TmFiU.js.br +0 -0
- codex/static_root/assets/filter-BJ7TmFiU.js.gz +0 -0
- codex/static_root/assets/{flag-tab-xBeWEQ0w.582e77d9e885.js → flag-tab-AJj0sesB.2ab1be15d10f.js} +1 -1
- codex/static_root/assets/flag-tab-AJj0sesB.2ab1be15d10f.js.br +0 -0
- codex/static_root/assets/flag-tab-AJj0sesB.2ab1be15d10f.js.gz +0 -0
- codex/static_root/assets/{flag-tab-xBeWEQ0w.js → flag-tab-AJj0sesB.js} +1 -1
- codex/static_root/assets/flag-tab-AJj0sesB.js.br +0 -0
- codex/static_root/assets/flag-tab-AJj0sesB.js.gz +0 -0
- codex/static_root/assets/{group-tab-Czt2x61x.56e2886b1bac.js → group-tab-DuxOH4Hn.8ac96cfe7c43.js} +1 -1
- codex/static_root/assets/group-tab-DuxOH4Hn.8ac96cfe7c43.js.br +0 -0
- codex/static_root/assets/group-tab-DuxOH4Hn.8ac96cfe7c43.js.gz +0 -0
- codex/static_root/assets/{group-tab-Czt2x61x.js → group-tab-DuxOH4Hn.js} +1 -1
- codex/static_root/assets/group-tab-DuxOH4Hn.js.br +0 -0
- codex/static_root/assets/group-tab-DuxOH4Hn.js.gz +0 -0
- codex/static_root/assets/{http-error-NHcwE5e_.d49089e40589.js → http-error-DIeFpbQV.086e1dd09555.js} +1 -1
- codex/static_root/assets/http-error-DIeFpbQV.086e1dd09555.js.br +0 -0
- codex/static_root/assets/http-error-DIeFpbQV.086e1dd09555.js.gz +0 -0
- codex/static_root/assets/{http-error-NHcwE5e_.js → http-error-DIeFpbQV.js} +1 -1
- codex/static_root/assets/http-error-DIeFpbQV.js.br +0 -0
- codex/static_root/assets/http-error-DIeFpbQV.js.gz +0 -0
- codex/static_root/assets/{index-DYNNO5kn.24a2d270253a.js → index-MN9BB_He.201e30aa00ef.js} +1 -1
- codex/static_root/assets/index-MN9BB_He.201e30aa00ef.js.br +0 -0
- codex/static_root/assets/index-MN9BB_He.201e30aa00ef.js.gz +0 -0
- codex/static_root/assets/{index-DYNNO5kn.js → index-MN9BB_He.js} +1 -1
- codex/static_root/assets/index-MN9BB_He.js.br +0 -0
- codex/static_root/assets/index-MN9BB_He.js.gz +0 -0
- codex/static_root/assets/{library-tab-CgIqcjvj.60327dfa8ecb.js → library-tab-jpeUUWzV.70dae13f6dab.js} +1 -1
- codex/static_root/assets/library-tab-jpeUUWzV.70dae13f6dab.js.br +0 -0
- codex/static_root/assets/library-tab-jpeUUWzV.70dae13f6dab.js.gz +0 -0
- codex/static_root/assets/{library-tab-CgIqcjvj.js → library-tab-jpeUUWzV.js} +1 -1
- codex/static_root/assets/library-tab-jpeUUWzV.js.br +0 -0
- codex/static_root/assets/library-tab-jpeUUWzV.js.gz +0 -0
- codex/static_root/assets/{main-B3EwXQ3Q.14dfc21e272c.js → main-Cs7q8tob.86ef2567544d.js} +3 -3
- codex/static_root/assets/main-Cs7q8tob.86ef2567544d.js.br +0 -0
- codex/static_root/assets/main-Cs7q8tob.86ef2567544d.js.gz +0 -0
- codex/static_root/assets/{main-B3EwXQ3Q.js → main-Cs7q8tob.js} +3 -3
- codex/static_root/assets/main-Cs7q8tob.js.br +0 -0
- codex/static_root/assets/main-Cs7q8tob.js.gz +0 -0
- codex/static_root/assets/pager-full-pdf-D_ecZhu-.ff93ca6c55e0.js +1 -0
- codex/static_root/assets/pager-full-pdf-D_ecZhu-.ff93ca6c55e0.js.br +0 -0
- codex/static_root/assets/pager-full-pdf-D_ecZhu-.ff93ca6c55e0.js.gz +0 -0
- codex/static_root/assets/pager-full-pdf-D_ecZhu-.js +1 -0
- codex/static_root/assets/pager-full-pdf-D_ecZhu-.js.br +0 -0
- codex/static_root/assets/pager-full-pdf-D_ecZhu-.js.gz +0 -0
- codex/static_root/assets/{pagination-toolbar-CrruiVov.3bf9b795350d.js → pagination-toolbar-yeU7sPiY.ce0751d6009d.js} +1 -1
- codex/static_root/assets/pagination-toolbar-yeU7sPiY.ce0751d6009d.js.br +0 -0
- codex/static_root/assets/pagination-toolbar-yeU7sPiY.ce0751d6009d.js.gz +0 -0
- codex/static_root/assets/{pagination-toolbar-CrruiVov.js → pagination-toolbar-yeU7sPiY.js} +1 -1
- codex/static_root/assets/pagination-toolbar-yeU7sPiY.js.br +0 -0
- codex/static_root/assets/pagination-toolbar-yeU7sPiY.js.gz +0 -0
- codex/static_root/assets/{pdf-doc-ctqZIwOP.7e7b2c815ea4.js → pdf-doc-Czi9tnhD.4d4b8b7ff5d7.js} +1 -1
- codex/static_root/assets/pdf-doc-Czi9tnhD.4d4b8b7ff5d7.js.br +0 -0
- codex/static_root/assets/pdf-doc-Czi9tnhD.4d4b8b7ff5d7.js.gz +0 -0
- codex/static_root/assets/{pdf-doc-ctqZIwOP.js → pdf-doc-Czi9tnhD.js} +1 -1
- codex/static_root/assets/pdf-doc-Czi9tnhD.js.br +0 -0
- codex/static_root/assets/pdf-doc-Czi9tnhD.js.gz +0 -0
- codex/static_root/assets/reader-DQKMY8MS.d9d3451f2cff.js +2 -0
- codex/static_root/assets/reader-DQKMY8MS.d9d3451f2cff.js.br +0 -0
- codex/static_root/assets/reader-DQKMY8MS.d9d3451f2cff.js.gz +0 -0
- codex/static_root/assets/reader-DQKMY8MS.js +2 -0
- codex/static_root/assets/reader-DQKMY8MS.js.br +0 -0
- codex/static_root/assets/reader-DQKMY8MS.js.gz +0 -0
- codex/static_root/assets/{reader-nD70BeEz.06e85e73c391.css → reader-OpKdTZ_B.css} +1 -1
- codex/static_root/assets/reader-OpKdTZ_B.css.br +0 -0
- codex/static_root/assets/reader-OpKdTZ_B.css.gz +0 -0
- codex/static_root/assets/{reader-nD70BeEz.css → reader-OpKdTZ_B.ebd1512b7014.css} +1 -1
- codex/static_root/assets/reader-OpKdTZ_B.ebd1512b7014.css.br +0 -0
- codex/static_root/assets/reader-OpKdTZ_B.ebd1512b7014.css.gz +0 -0
- codex/static_root/assets/{relation-chips-DOALMcWL.5d3b8100ba03.js → relation-chips-CFH0Xf78.62ded2739a22.js} +1 -1
- codex/static_root/assets/relation-chips-CFH0Xf78.62ded2739a22.js.br +0 -0
- codex/static_root/assets/relation-chips-CFH0Xf78.62ded2739a22.js.gz +0 -0
- codex/static_root/assets/{relation-chips-DOALMcWL.js → relation-chips-CFH0Xf78.js} +1 -1
- codex/static_root/assets/relation-chips-CFH0Xf78.js.br +0 -0
- codex/static_root/assets/relation-chips-CFH0Xf78.js.gz +0 -0
- codex/static_root/assets/{settings-drawer-BVj1U_LC.c68369e0c2de.js → settings-drawer-DbOztp2R.b6f981108782.js} +2 -2
- codex/static_root/assets/settings-drawer-DbOztp2R.b6f981108782.js.br +0 -0
- codex/static_root/assets/settings-drawer-DbOztp2R.b6f981108782.js.gz +0 -0
- codex/static_root/assets/{settings-drawer-BVj1U_LC.js → settings-drawer-DbOztp2R.js} +2 -2
- codex/static_root/assets/settings-drawer-DbOztp2R.js.br +0 -0
- codex/static_root/assets/settings-drawer-DbOztp2R.js.gz +0 -0
- codex/static_root/assets/{stats-tab-DDLwwwnP.35305258097b.js → stats-tab-DWktIwEj.42666baa0d93.js} +1 -1
- codex/static_root/assets/stats-tab-DWktIwEj.42666baa0d93.js.br +0 -0
- codex/static_root/assets/stats-tab-DWktIwEj.42666baa0d93.js.gz +0 -0
- codex/static_root/assets/{stats-tab-DDLwwwnP.js → stats-tab-DWktIwEj.js} +1 -1
- codex/static_root/assets/stats-tab-DWktIwEj.js.br +0 -0
- codex/static_root/assets/stats-tab-DWktIwEj.js.gz +0 -0
- codex/static_root/assets/task-tab-BtTtKJP6.421692e51e82.js +1 -0
- codex/static_root/assets/task-tab-BtTtKJP6.421692e51e82.js.br +0 -0
- codex/static_root/assets/task-tab-BtTtKJP6.421692e51e82.js.gz +0 -0
- codex/static_root/assets/task-tab-BtTtKJP6.js +1 -0
- codex/static_root/assets/task-tab-BtTtKJP6.js.br +0 -0
- codex/static_root/assets/task-tab-BtTtKJP6.js.gz +0 -0
- codex/static_root/assets/{transition-3g2arGgl.c6e6f91b7978.js → transition-A__CJ90w.970355913cb9.js} +1 -1
- codex/static_root/assets/transition-A__CJ90w.970355913cb9.js.br +0 -0
- codex/static_root/assets/transition-A__CJ90w.970355913cb9.js.gz +0 -0
- codex/static_root/assets/{transition-3g2arGgl.js → transition-A__CJ90w.js} +1 -1
- codex/static_root/assets/transition-A__CJ90w.js.br +0 -0
- codex/static_root/assets/transition-A__CJ90w.js.gz +0 -0
- codex/static_root/assets/{unauthorized-CdumQ1Vf.79d9a61eb572.js → unauthorized-FF1nwDKt.b3d6255ddb7f.js} +1 -1
- codex/static_root/assets/unauthorized-FF1nwDKt.b3d6255ddb7f.js.br +0 -0
- codex/static_root/assets/unauthorized-FF1nwDKt.b3d6255ddb7f.js.gz +0 -0
- codex/static_root/assets/{unauthorized-CdumQ1Vf.js → unauthorized-FF1nwDKt.js} +1 -1
- codex/static_root/assets/unauthorized-FF1nwDKt.js.br +0 -0
- codex/static_root/assets/unauthorized-FF1nwDKt.js.gz +0 -0
- codex/static_root/assets/{user-tab-D6oOKZTP.05944b00c700.js → user-tab-RwMqZeSN.d4ed24177855.js} +1 -1
- codex/static_root/assets/user-tab-RwMqZeSN.d4ed24177855.js.br +0 -0
- codex/static_root/assets/user-tab-RwMqZeSN.d4ed24177855.js.gz +0 -0
- codex/static_root/assets/{user-tab-D6oOKZTP.js → user-tab-RwMqZeSN.js} +1 -1
- codex/static_root/assets/user-tab-RwMqZeSN.js.br +0 -0
- codex/static_root/assets/user-tab-RwMqZeSN.js.gz +0 -0
- codex/static_root/{manifest.c5f1de88b1ac.json → manifest.8dff5f2fb15e.json} +254 -254
- codex/static_root/manifest.8dff5f2fb15e.json.br +0 -0
- codex/static_root/manifest.8dff5f2fb15e.json.gz +0 -0
- codex/static_root/manifest.json +254 -254
- 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/admin/tasks.py +2 -1
- codex/views/browser/metadata/query_intersections.py +2 -0
- {codex-1.7.0.dist-info → codex-1.7.0a1.dist-info}/METADATA +5 -2
- {codex-1.7.0.dist-info → codex-1.7.0a1.dist-info}/RECORD +252 -252
- codex/static_root/assets/VCheckbox-D_CWEmqR.84f2b49311e8.js.br +0 -0
- codex/static_root/assets/VCheckbox-D_CWEmqR.84f2b49311e8.js.gz +0 -0
- codex/static_root/assets/VCheckbox-D_CWEmqR.js.br +0 -0
- codex/static_root/assets/VCheckbox-D_CWEmqR.js.gz +0 -0
- codex/static_root/assets/VCheckboxBtn-B1BhcFvi.0eaf3c516474.js.br +0 -0
- codex/static_root/assets/VCheckboxBtn-B1BhcFvi.0eaf3c516474.js.gz +0 -0
- codex/static_root/assets/VCheckboxBtn-B1BhcFvi.js.br +0 -0
- codex/static_root/assets/VCheckboxBtn-B1BhcFvi.js.gz +0 -0
- codex/static_root/assets/VCombobox-CZAW6_3Q.0e2401e819a5.js.br +0 -0
- codex/static_root/assets/VCombobox-CZAW6_3Q.0e2401e819a5.js.gz +0 -0
- codex/static_root/assets/VCombobox-CZAW6_3Q.js.br +0 -0
- codex/static_root/assets/VCombobox-CZAW6_3Q.js.gz +0 -0
- codex/static_root/assets/VDialog-CSHgHIlG.a0bcd336cb7b.js.br +0 -0
- codex/static_root/assets/VDialog-CSHgHIlG.a0bcd336cb7b.js.gz +0 -0
- codex/static_root/assets/VDialog-CSHgHIlG.js.br +0 -0
- codex/static_root/assets/VDialog-CSHgHIlG.js.gz +0 -0
- codex/static_root/assets/VExpansionPanels-CG6MpdMC.e96ae8afad97.js.br +0 -0
- codex/static_root/assets/VExpansionPanels-CG6MpdMC.e96ae8afad97.js.gz +0 -0
- codex/static_root/assets/VExpansionPanels-CG6MpdMC.js.br +0 -0
- codex/static_root/assets/VExpansionPanels-CG6MpdMC.js.gz +0 -0
- codex/static_root/assets/VRadioGroup-CAgQxkiU.f26ecb0c3e34.js.br +0 -0
- codex/static_root/assets/VRadioGroup-CAgQxkiU.f26ecb0c3e34.js.gz +0 -0
- codex/static_root/assets/VRadioGroup-CAgQxkiU.js.br +0 -0
- codex/static_root/assets/VRadioGroup-CAgQxkiU.js.gz +0 -0
- codex/static_root/assets/VSelect-C1gez8rl.9b11d2f00faf.js.br +0 -0
- codex/static_root/assets/VSelect-C1gez8rl.9b11d2f00faf.js.gz +0 -0
- codex/static_root/assets/VSelect-C1gez8rl.js.br +0 -0
- codex/static_root/assets/VSelect-C1gez8rl.js.gz +0 -0
- codex/static_root/assets/VSelectionControl-DBqDlKjK.160beaa1b56c.js.br +0 -0
- codex/static_root/assets/VSelectionControl-DBqDlKjK.160beaa1b56c.js.gz +0 -0
- codex/static_root/assets/VSelectionControl-DBqDlKjK.js.br +0 -0
- codex/static_root/assets/VSelectionControl-DBqDlKjK.js.gz +0 -0
- codex/static_root/assets/VSlideGroup-SqR_NAL1.40ba1d838a6e.js.br +0 -0
- codex/static_root/assets/VSlideGroup-SqR_NAL1.40ba1d838a6e.js.gz +0 -0
- codex/static_root/assets/VSlideGroup-SqR_NAL1.js.br +0 -0
- codex/static_root/assets/VSlideGroup-SqR_NAL1.js.gz +0 -0
- codex/static_root/assets/VTable-CYC-wMpk.8f15d66044da.js.br +0 -0
- codex/static_root/assets/VTable-CYC-wMpk.8f15d66044da.js.gz +0 -0
- codex/static_root/assets/VTable-CYC-wMpk.js.br +0 -0
- codex/static_root/assets/VTable-CYC-wMpk.js.gz +0 -0
- codex/static_root/assets/VTextField-DMRKRbbT.911ac84d8c9d.js.br +0 -0
- codex/static_root/assets/VTextField-DMRKRbbT.911ac84d8c9d.js.gz +0 -0
- codex/static_root/assets/VTextField-DMRKRbbT.js.br +0 -0
- codex/static_root/assets/VTextField-DMRKRbbT.js.gz +0 -0
- codex/static_root/assets/VWindowItem-D0P2xNJl.6a10e3f3a153.js.br +0 -0
- codex/static_root/assets/VWindowItem-D0P2xNJl.6a10e3f3a153.js.gz +0 -0
- codex/static_root/assets/VWindowItem-D0P2xNJl.js.br +0 -0
- codex/static_root/assets/VWindowItem-D0P2xNJl.js.gz +0 -0
- codex/static_root/assets/admin-CD90VMen.4c2b6f2a5111.js.br +0 -0
- codex/static_root/assets/admin-CD90VMen.4c2b6f2a5111.js.gz +0 -0
- codex/static_root/assets/admin-CD90VMen.js.br +0 -0
- codex/static_root/assets/admin-CD90VMen.js.gz +0 -0
- codex/static_root/assets/admin-menu-BpEPGKr_.c9f9178c5a82.js.br +0 -0
- codex/static_root/assets/admin-menu-BpEPGKr_.c9f9178c5a82.js.gz +0 -0
- codex/static_root/assets/admin-menu-BpEPGKr_.js.br +0 -0
- codex/static_root/assets/admin-menu-BpEPGKr_.js.gz +0 -0
- codex/static_root/assets/admin-settings-button-progress-DDF4rY07.4f1158b650ab.js.br +0 -0
- codex/static_root/assets/admin-settings-button-progress-DDF4rY07.4f1158b650ab.js.gz +0 -0
- codex/static_root/assets/admin-settings-button-progress-DDF4rY07.js.br +0 -0
- codex/static_root/assets/admin-settings-button-progress-DDF4rY07.js.gz +0 -0
- codex/static_root/assets/browser-C0KS3g2E.0bf1c9c6319c.js +0 -1
- codex/static_root/assets/browser-C0KS3g2E.0bf1c9c6319c.js.br +0 -0
- codex/static_root/assets/browser-C0KS3g2E.0bf1c9c6319c.js.gz +0 -0
- codex/static_root/assets/browser-C0KS3g2E.js +0 -1
- codex/static_root/assets/browser-C0KS3g2E.js.br +0 -0
- codex/static_root/assets/browser-C0KS3g2E.js.gz +0 -0
- codex/static_root/assets/browser-JFL2hLjt.21cb2f7335f7.css +0 -1
- codex/static_root/assets/browser-JFL2hLjt.21cb2f7335f7.css.br +0 -0
- codex/static_root/assets/browser-JFL2hLjt.21cb2f7335f7.css.gz +0 -0
- codex/static_root/assets/browser-JFL2hLjt.css +0 -1
- codex/static_root/assets/browser-JFL2hLjt.css.br +0 -0
- codex/static_root/assets/browser-JFL2hLjt.css.gz +0 -0
- codex/static_root/assets/change-password-dialog-DXJalgW4.a9f34729599d.js.br +0 -0
- codex/static_root/assets/change-password-dialog-DXJalgW4.a9f34729599d.js.gz +0 -0
- codex/static_root/assets/change-password-dialog-DXJalgW4.js.br +0 -0
- codex/static_root/assets/change-password-dialog-DXJalgW4.js.gz +0 -0
- codex/static_root/assets/confirm-dialog-CqDEpU9k.e1811488121d.js.br +0 -0
- codex/static_root/assets/confirm-dialog-CqDEpU9k.e1811488121d.js.gz +0 -0
- codex/static_root/assets/confirm-dialog-CqDEpU9k.js.br +0 -0
- codex/static_root/assets/confirm-dialog-CqDEpU9k.js.gz +0 -0
- codex/static_root/assets/datetime-column-UxNaJr8b.c06a11531af3.js.br +0 -0
- codex/static_root/assets/datetime-column-UxNaJr8b.c06a11531af3.js.gz +0 -0
- codex/static_root/assets/datetime-column-UxNaJr8b.js.br +0 -0
- codex/static_root/assets/datetime-column-UxNaJr8b.js.gz +0 -0
- codex/static_root/assets/filter-DskcqZHA.e707b5a05b4b.js.br +0 -0
- codex/static_root/assets/filter-DskcqZHA.e707b5a05b4b.js.gz +0 -0
- codex/static_root/assets/filter-DskcqZHA.js.br +0 -0
- codex/static_root/assets/filter-DskcqZHA.js.gz +0 -0
- codex/static_root/assets/flag-tab-xBeWEQ0w.582e77d9e885.js.br +0 -0
- codex/static_root/assets/flag-tab-xBeWEQ0w.582e77d9e885.js.gz +0 -0
- codex/static_root/assets/flag-tab-xBeWEQ0w.js.br +0 -0
- codex/static_root/assets/flag-tab-xBeWEQ0w.js.gz +0 -0
- codex/static_root/assets/group-tab-Czt2x61x.56e2886b1bac.js.br +0 -0
- codex/static_root/assets/group-tab-Czt2x61x.56e2886b1bac.js.gz +0 -0
- codex/static_root/assets/group-tab-Czt2x61x.js.br +0 -0
- codex/static_root/assets/group-tab-Czt2x61x.js.gz +0 -0
- codex/static_root/assets/http-error-NHcwE5e_.d49089e40589.js.br +0 -0
- codex/static_root/assets/http-error-NHcwE5e_.d49089e40589.js.gz +0 -0
- codex/static_root/assets/http-error-NHcwE5e_.js.br +0 -0
- codex/static_root/assets/http-error-NHcwE5e_.js.gz +0 -0
- codex/static_root/assets/index-DYNNO5kn.24a2d270253a.js.br +0 -0
- codex/static_root/assets/index-DYNNO5kn.24a2d270253a.js.gz +0 -0
- codex/static_root/assets/index-DYNNO5kn.js.br +0 -0
- codex/static_root/assets/index-DYNNO5kn.js.gz +0 -0
- codex/static_root/assets/library-tab-CgIqcjvj.60327dfa8ecb.js.br +0 -0
- codex/static_root/assets/library-tab-CgIqcjvj.60327dfa8ecb.js.gz +0 -0
- codex/static_root/assets/library-tab-CgIqcjvj.js.br +0 -0
- codex/static_root/assets/library-tab-CgIqcjvj.js.gz +0 -0
- codex/static_root/assets/main-B3EwXQ3Q.14dfc21e272c.js.br +0 -0
- codex/static_root/assets/main-B3EwXQ3Q.14dfc21e272c.js.gz +0 -0
- codex/static_root/assets/main-B3EwXQ3Q.js.br +0 -0
- codex/static_root/assets/main-B3EwXQ3Q.js.gz +0 -0
- codex/static_root/assets/pager-full-pdf-YkzUXx0B.f39d84e2380a.js +0 -1
- codex/static_root/assets/pager-full-pdf-YkzUXx0B.f39d84e2380a.js.br +0 -0
- codex/static_root/assets/pager-full-pdf-YkzUXx0B.f39d84e2380a.js.gz +0 -0
- codex/static_root/assets/pager-full-pdf-YkzUXx0B.js +0 -1
- codex/static_root/assets/pager-full-pdf-YkzUXx0B.js.br +0 -0
- codex/static_root/assets/pager-full-pdf-YkzUXx0B.js.gz +0 -0
- codex/static_root/assets/pagination-toolbar-CrruiVov.3bf9b795350d.js.br +0 -0
- codex/static_root/assets/pagination-toolbar-CrruiVov.3bf9b795350d.js.gz +0 -0
- codex/static_root/assets/pagination-toolbar-CrruiVov.js.br +0 -0
- codex/static_root/assets/pagination-toolbar-CrruiVov.js.gz +0 -0
- codex/static_root/assets/pdf-doc-ctqZIwOP.7e7b2c815ea4.js.br +0 -0
- codex/static_root/assets/pdf-doc-ctqZIwOP.7e7b2c815ea4.js.gz +0 -0
- codex/static_root/assets/pdf-doc-ctqZIwOP.js.br +0 -0
- codex/static_root/assets/pdf-doc-ctqZIwOP.js.gz +0 -0
- codex/static_root/assets/reader-DPLhdrJD.268417c618c5.js +0 -2
- codex/static_root/assets/reader-DPLhdrJD.268417c618c5.js.br +0 -0
- codex/static_root/assets/reader-DPLhdrJD.268417c618c5.js.gz +0 -0
- codex/static_root/assets/reader-DPLhdrJD.js +0 -2
- codex/static_root/assets/reader-DPLhdrJD.js.br +0 -0
- codex/static_root/assets/reader-DPLhdrJD.js.gz +0 -0
- codex/static_root/assets/reader-nD70BeEz.06e85e73c391.css.br +0 -0
- codex/static_root/assets/reader-nD70BeEz.06e85e73c391.css.gz +0 -0
- codex/static_root/assets/reader-nD70BeEz.css.br +0 -0
- codex/static_root/assets/reader-nD70BeEz.css.gz +0 -0
- codex/static_root/assets/relation-chips-DOALMcWL.5d3b8100ba03.js.br +0 -0
- codex/static_root/assets/relation-chips-DOALMcWL.5d3b8100ba03.js.gz +0 -0
- codex/static_root/assets/relation-chips-DOALMcWL.js.br +0 -0
- codex/static_root/assets/relation-chips-DOALMcWL.js.gz +0 -0
- codex/static_root/assets/settings-drawer-BVj1U_LC.c68369e0c2de.js.br +0 -0
- codex/static_root/assets/settings-drawer-BVj1U_LC.c68369e0c2de.js.gz +0 -0
- codex/static_root/assets/settings-drawer-BVj1U_LC.js.br +0 -0
- codex/static_root/assets/settings-drawer-BVj1U_LC.js.gz +0 -0
- codex/static_root/assets/stats-tab-DDLwwwnP.35305258097b.js.br +0 -0
- codex/static_root/assets/stats-tab-DDLwwwnP.35305258097b.js.gz +0 -0
- codex/static_root/assets/stats-tab-DDLwwwnP.js.br +0 -0
- codex/static_root/assets/stats-tab-DDLwwwnP.js.gz +0 -0
- codex/static_root/assets/task-tab-BpP3n2dO.c853eb565200.js +0 -1
- codex/static_root/assets/task-tab-BpP3n2dO.c853eb565200.js.br +0 -0
- codex/static_root/assets/task-tab-BpP3n2dO.c853eb565200.js.gz +0 -0
- codex/static_root/assets/task-tab-BpP3n2dO.js +0 -1
- codex/static_root/assets/task-tab-BpP3n2dO.js.br +0 -0
- codex/static_root/assets/task-tab-BpP3n2dO.js.gz +0 -0
- codex/static_root/assets/transition-3g2arGgl.c6e6f91b7978.js.br +0 -0
- codex/static_root/assets/transition-3g2arGgl.c6e6f91b7978.js.gz +0 -0
- codex/static_root/assets/transition-3g2arGgl.js.br +0 -0
- codex/static_root/assets/transition-3g2arGgl.js.gz +0 -0
- codex/static_root/assets/unauthorized-CdumQ1Vf.79d9a61eb572.js.br +0 -0
- codex/static_root/assets/unauthorized-CdumQ1Vf.79d9a61eb572.js.gz +0 -0
- codex/static_root/assets/unauthorized-CdumQ1Vf.js.br +0 -0
- codex/static_root/assets/unauthorized-CdumQ1Vf.js.gz +0 -0
- codex/static_root/assets/user-tab-D6oOKZTP.05944b00c700.js.br +0 -0
- codex/static_root/assets/user-tab-D6oOKZTP.05944b00c700.js.gz +0 -0
- codex/static_root/assets/user-tab-D6oOKZTP.js.br +0 -0
- codex/static_root/assets/user-tab-D6oOKZTP.js.gz +0 -0
- codex/static_root/manifest.c5f1de88b1ac.json.br +0 -0
- codex/static_root/manifest.c5f1de88b1ac.json.gz +0 -0
- {codex-1.7.0.dist-info → codex-1.7.0a1.dist-info}/LICENSE +0 -0
- {codex-1.7.0.dist-info → codex-1.7.0a1.dist-info}/WHEEL +0 -0
- {codex-1.7.0.dist-info → codex-1.7.0a1.dist-info}/entry_points.txt +0 -0
codex/choices.py
CHANGED
|
@@ -175,7 +175,7 @@ ADMIN_TASK_GROUPS = MappingProxyType(
|
|
|
175
175
|
"tasks": (
|
|
176
176
|
{
|
|
177
177
|
"title": "Libraries",
|
|
178
|
-
"tasks":
|
|
178
|
+
"tasks": (
|
|
179
179
|
{
|
|
180
180
|
"value": "poll",
|
|
181
181
|
"title": "Poll All Libraries",
|
|
@@ -198,11 +198,11 @@ ADMIN_TASK_GROUPS = MappingProxyType(
|
|
|
198
198
|
"title": "Sync Watchdog with DB",
|
|
199
199
|
"desc": "Ensure the Watchdog file watcher is enabled per database preferences for each library",
|
|
200
200
|
},
|
|
201
|
-
|
|
201
|
+
),
|
|
202
202
|
},
|
|
203
203
|
{
|
|
204
204
|
"title": "Covers",
|
|
205
|
-
"tasks":
|
|
205
|
+
"tasks": (
|
|
206
206
|
{
|
|
207
207
|
"value": "purge_comic_covers",
|
|
208
208
|
"title": "Remove Comic Covers",
|
|
@@ -220,21 +220,16 @@ ADMIN_TASK_GROUPS = MappingProxyType(
|
|
|
220
220
|
"title": "Update Group Timestamps",
|
|
221
221
|
"desc": "Force the update of group timestamps. Will bust the browser cache for browser views and covers.",
|
|
222
222
|
},
|
|
223
|
-
|
|
223
|
+
),
|
|
224
224
|
},
|
|
225
225
|
{
|
|
226
226
|
"title": "Search Index",
|
|
227
|
-
"tasks":
|
|
227
|
+
"tasks": (
|
|
228
228
|
{
|
|
229
229
|
"value": "search_index_update",
|
|
230
230
|
"title": "Update Search Index",
|
|
231
231
|
"desc": "with recently changed comics",
|
|
232
232
|
},
|
|
233
|
-
{
|
|
234
|
-
"value": "search_index_optimize",
|
|
235
|
-
"title": "Optimize Search Index",
|
|
236
|
-
"desc": "Merge Search Index for optimal lookup time. Runs nightly.",
|
|
237
|
-
},
|
|
238
233
|
{
|
|
239
234
|
"value": "search_index_rebuild",
|
|
240
235
|
"title": "Rebuild Search Index",
|
|
@@ -246,6 +241,17 @@ ADMIN_TASK_GROUPS = MappingProxyType(
|
|
|
246
241
|
"title": "Remove Stale Index Entries",
|
|
247
242
|
"desc": "Remove search index entries that are no longer in the library.",
|
|
248
243
|
},
|
|
244
|
+
{
|
|
245
|
+
"value": "search_index_merge_small",
|
|
246
|
+
"title": "Merge Small Search Index Segments",
|
|
247
|
+
"desc": "Improves search lookup times. Runs nightly if the Optimize Admin Flag is off.",
|
|
248
|
+
},
|
|
249
|
+
{
|
|
250
|
+
"value": "search_index_optimize",
|
|
251
|
+
"title": "Merge Search Index Into One Segment",
|
|
252
|
+
"desc": "Reduces disk space and improves search lookup times. Runs nightly if the Optimize Admin Flag is on.",
|
|
253
|
+
"confirm": "This can take a long time.",
|
|
254
|
+
},
|
|
249
255
|
{
|
|
250
256
|
"value": "search_index_abort",
|
|
251
257
|
"title": "Abort Search Indexing",
|
|
@@ -256,21 +262,11 @@ ADMIN_TASK_GROUPS = MappingProxyType(
|
|
|
256
262
|
"title": "Clear Search Index",
|
|
257
263
|
"desc": "of all entries",
|
|
258
264
|
},
|
|
259
|
-
|
|
260
|
-
"value": "db_fts_integrity_check",
|
|
261
|
-
"title": "Integrity Check Search Index",
|
|
262
|
-
"desc": "Repairs Search Index on failure. Runs nightly",
|
|
263
|
-
},
|
|
264
|
-
{
|
|
265
|
-
"value": "db_fts_rebuild",
|
|
266
|
-
"title": "Repair Search Index",
|
|
267
|
-
"desc": "Probably faster than Rebuild if integrity check fails.",
|
|
268
|
-
},
|
|
269
|
-
],
|
|
265
|
+
),
|
|
270
266
|
},
|
|
271
267
|
{
|
|
272
268
|
"title": "Database",
|
|
273
|
-
"tasks":
|
|
269
|
+
"tasks": (
|
|
274
270
|
{
|
|
275
271
|
"value": "db_vacuum",
|
|
276
272
|
"title": "Optimize & Compact Database",
|
|
@@ -282,21 +278,15 @@ ADMIN_TASK_GROUPS = MappingProxyType(
|
|
|
282
278
|
"desc": "Runs nightly",
|
|
283
279
|
},
|
|
284
280
|
{
|
|
285
|
-
"value": "
|
|
286
|
-
"title": "
|
|
287
|
-
"desc": "Check
|
|
281
|
+
"value": "db_search_sync",
|
|
282
|
+
"title": "Sync Search Index to DB",
|
|
283
|
+
"desc": "Check to see if this database matches the current search index. If there is a mismatch, rebuild the search index. Runs on startup.",
|
|
288
284
|
},
|
|
289
|
-
|
|
290
|
-
"value": "db_integrity_check",
|
|
291
|
-
"title": "Check Database Integrity",
|
|
292
|
-
"desc": "Check logs for results. Runs nightly.",
|
|
293
|
-
"confirm": "Can take a while on large databases, Are you sure?",
|
|
294
|
-
},
|
|
295
|
-
],
|
|
285
|
+
),
|
|
296
286
|
},
|
|
297
287
|
{
|
|
298
288
|
"title": "Codex Software",
|
|
299
|
-
"tasks":
|
|
289
|
+
"tasks": (
|
|
300
290
|
{
|
|
301
291
|
"value": "codex_latest_version",
|
|
302
292
|
"title": "Check for Codex Latest Version",
|
|
@@ -320,11 +310,11 @@ ADMIN_TASK_GROUPS = MappingProxyType(
|
|
|
320
310
|
"desc": "Immediately",
|
|
321
311
|
"confirm": "Are you sure?",
|
|
322
312
|
},
|
|
323
|
-
|
|
313
|
+
),
|
|
324
314
|
},
|
|
325
315
|
{
|
|
326
316
|
"title": "Notify",
|
|
327
|
-
"tasks":
|
|
317
|
+
"tasks": (
|
|
328
318
|
{
|
|
329
319
|
"value": "notify_library_changed",
|
|
330
320
|
"title": "Notify Library Changed ",
|
|
@@ -335,11 +325,11 @@ ADMIN_TASK_GROUPS = MappingProxyType(
|
|
|
335
325
|
"title": "Notify Librarian Status",
|
|
336
326
|
"desc": "Signal Admin clients to fetch librarian status.",
|
|
337
327
|
},
|
|
338
|
-
|
|
328
|
+
),
|
|
339
329
|
},
|
|
340
330
|
{
|
|
341
331
|
"title": "Cleanup",
|
|
342
|
-
"tasks":
|
|
332
|
+
"tasks": (
|
|
343
333
|
{
|
|
344
334
|
"value": "cleanup_fks",
|
|
345
335
|
"title": "Remove Orphan Tags",
|
|
@@ -360,11 +350,6 @@ ADMIN_TASK_GROUPS = MappingProxyType(
|
|
|
360
350
|
"title": "Remove Orphan Cover Thumbnails",
|
|
361
351
|
"desc": "no longer have source comics or custom images. Runs nightly.",
|
|
362
352
|
},
|
|
363
|
-
{
|
|
364
|
-
"value": "cleanup_bookmarks",
|
|
365
|
-
"title": "Remove Orphan Bookmarks",
|
|
366
|
-
"desc": "Owned by no session or user. Runs nightly.",
|
|
367
|
-
},
|
|
368
353
|
{
|
|
369
354
|
"value": "adopt_folders",
|
|
370
355
|
"title": "Adopt Orphan Folders",
|
|
@@ -381,7 +366,7 @@ ADMIN_TASK_GROUPS = MappingProxyType(
|
|
|
381
366
|
"desc": "Runs several tasks above that also run nightly.",
|
|
382
367
|
"confirm": "Launches several tasks that run nightly anyway.",
|
|
383
368
|
},
|
|
384
|
-
|
|
369
|
+
),
|
|
385
370
|
},
|
|
386
371
|
)
|
|
387
372
|
}
|
codex/db.py
CHANGED
|
@@ -71,7 +71,8 @@ def _repair_db():
|
|
|
71
71
|
if FIX_FOREIGN_KEYS:
|
|
72
72
|
fix_foreign_keys()
|
|
73
73
|
if INTEGRITY_CHECK:
|
|
74
|
-
|
|
74
|
+
long = INTEGRITY_CHECK == "full"
|
|
75
|
+
integrity_check(long)
|
|
75
76
|
success = fts_integrity_check() if FTS_INTEGRITY_CHECK else True
|
|
76
77
|
if FTS_REBUILD or not success:
|
|
77
78
|
fts_rebuild()
|
|
@@ -277,24 +277,23 @@ def _is_integrity_ok(results):
|
|
|
277
277
|
)
|
|
278
278
|
|
|
279
279
|
|
|
280
|
-
def integrity_check(long=
|
|
280
|
+
def integrity_check(long=False, log=None):
|
|
281
281
|
"""Run sqlite3 integrity check."""
|
|
282
|
-
if not log:
|
|
283
|
-
log = LOG
|
|
284
282
|
pragma = "integrity_check" if long else "quick_check"
|
|
285
283
|
sql = _PRAGMA_TMPL % pragma
|
|
286
|
-
log.debug(f"Running database '{sql}'...")
|
|
287
284
|
results = _exec_sql(sql)
|
|
288
285
|
|
|
286
|
+
if not log:
|
|
287
|
+
log = LOG
|
|
288
|
+
|
|
289
289
|
if _is_integrity_ok(results):
|
|
290
|
-
length = "" if long else "quick
|
|
291
|
-
log.info(f"Database passed {length}integrity check.")
|
|
290
|
+
length = "thorough" if long else "quick"
|
|
291
|
+
log.info(f"Database passed {length} integrity check.")
|
|
292
292
|
else:
|
|
293
|
-
log.
|
|
294
|
-
|
|
295
|
-
log.warning(
|
|
296
|
-
"See the README for database rebuild instructions if the above warning looks severe."
|
|
293
|
+
log.error(
|
|
294
|
+
"Database integrity compromised. See the README for database rebuild instructions."
|
|
297
295
|
)
|
|
296
|
+
log.error(results)
|
|
298
297
|
|
|
299
298
|
|
|
300
299
|
def fts_rebuild(log=None):
|
|
@@ -342,7 +341,7 @@ class IntegrityMixin(WorkerBaseMixin):
|
|
|
342
341
|
|
|
343
342
|
def integrity_check(self, long=False):
|
|
344
343
|
"""Integrity check task."""
|
|
345
|
-
subtitle = "" if long else "Quick"
|
|
344
|
+
subtitle = "Thorough" if long else "Quick"
|
|
346
345
|
status = Status(JanitorStatusTypes.INTEGRITY_CHECK, subtitle=subtitle)
|
|
347
346
|
try:
|
|
348
347
|
self.status_controller.start(status)
|
codex/librarian/janitor/tasks.py
CHANGED
codex/static_root/assets/{VCheckbox-D_CWEmqR.84f2b49311e8.js → VCheckbox-B38iL9f_.81d9c00753e7.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{m as A,V as t}from"./VCheckboxBtn-
|
|
1
|
+
import{m as A,V as t}from"./VCheckboxBtn-BbNnqvzj.js";import{f as F,u as I,g as l}from"./VSelectionControl-BioGLzkQ.js";import{p as B,d as U,g as R,k as D,br as M,f as N,h as $,bs as j,a as u,i as r}from"./main-Cs7q8tob.js";const q=B({...F(),...U(A(),["inline"])},"VCheckbox"),G=R()({name:"VCheckbox",inheritAttrs:!1,props:q(),emits:{"update:modelValue":e=>!0,"update:focused":e=>!0},setup(e,d){let{attrs:c,slots:a}=d;const s=D(e,"modelValue"),{isFocused:n,focus:i,blur:m}=I(e),V=M(),b=N(()=>e.id||`checkbox-${V}`);return $(()=>{const[p,f]=j(c),k=l.filterProps(e),v=t.filterProps(e);return u(l,r({class:["v-checkbox",e.class]},p,k,{modelValue:s.value,"onUpdate:modelValue":o=>s.value=o,id:b.value,focused:n.value,style:e.style}),{...a,default:o=>{let{id:h,messagesId:x,isDisabled:P,isReadonly:C,isValid:g}=o;return u(t,r(v,{id:h.value,"aria-describedby":x.value,disabled:P.value,readonly:C.value},f,{error:g.value===!1,modelValue:s.value,"onUpdate:modelValue":y=>s.value=y,onFocus:i,onBlur:m}),a)}})}),{}}});export{G as V};
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{m as A,V as t}from"./VCheckboxBtn-
|
|
1
|
+
import{m as A,V as t}from"./VCheckboxBtn-BbNnqvzj.js";import{f as F,u as I,g as l}from"./VSelectionControl-BioGLzkQ.js";import{p as B,d as U,g as R,k as D,br as M,f as N,h as $,bs as j,a as u,i as r}from"./main-Cs7q8tob.js";const q=B({...F(),...U(A(),["inline"])},"VCheckbox"),G=R()({name:"VCheckbox",inheritAttrs:!1,props:q(),emits:{"update:modelValue":e=>!0,"update:focused":e=>!0},setup(e,d){let{attrs:c,slots:a}=d;const s=D(e,"modelValue"),{isFocused:n,focus:i,blur:m}=I(e),V=M(),b=N(()=>e.id||`checkbox-${V}`);return $(()=>{const[p,f]=j(c),k=l.filterProps(e),v=t.filterProps(e);return u(l,r({class:["v-checkbox",e.class]},p,k,{modelValue:s.value,"onUpdate:modelValue":o=>s.value=o,id:b.value,focused:n.value,style:e.style}),{...a,default:o=>{let{id:h,messagesId:x,isDisabled:P,isReadonly:C,isValid:g}=o;return u(t,r(v,{id:h.value,"aria-describedby":x.value,disabled:P.value,readonly:C.value},f,{error:g.value===!1,modelValue:s.value,"onUpdate:modelValue":y=>s.value=y,onFocus:i,onBlur:m}),a)}})}),{}}});export{G as V};
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{j as f,k as o}from"./VSelectionControl-
|
|
1
|
+
import{j as f,k as o}from"./VSelectionControl-BioGLzkQ.js";import{p as k,a0 as V,g as v,k as c,f as l,h as I,d as h,a as x,i as b}from"./main-Cs7q8tob.js";const C=k({indeterminate:Boolean,indeterminateIcon:{type:V,default:"$checkboxIndeterminate"},...f({falseIcon:"$checkboxOff",trueIcon:"$checkboxOn"})},"VCheckboxBtn"),y=v()({name:"VCheckboxBtn",props:C(),emits:{"update:modelValue":e=>!0,"update:indeterminate":e=>!0},setup(e,r){let{slots:s}=r;const t=c(e,"indeterminate"),n=c(e,"modelValue");function u(a){t.value&&(t.value=!1)}const i=l(()=>t.value?e.indeterminateIcon:e.falseIcon),d=l(()=>t.value?e.indeterminateIcon:e.trueIcon);return I(()=>{const a=h(o.filterProps(e),["modelValue"]);return x(o,b(a,{modelValue:n.value,"onUpdate:modelValue":[m=>n.value=m,u],class:["v-checkbox-btn",e.class],style:e.style,type:"checkbox",falseIcon:i.value,trueIcon:d.value,"aria-checked":t.value?"mixed":void 0}),s)}),{}}});export{y as V,C as m};
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{j as f,k as o}from"./VSelectionControl-
|
|
1
|
+
import{j as f,k as o}from"./VSelectionControl-BioGLzkQ.js";import{p as k,a0 as V,g as v,k as c,f as l,h as I,d as h,a as x,i as b}from"./main-Cs7q8tob.js";const C=k({indeterminate:Boolean,indeterminateIcon:{type:V,default:"$checkboxIndeterminate"},...f({falseIcon:"$checkboxOff",trueIcon:"$checkboxOn"})},"VCheckboxBtn"),y=v()({name:"VCheckboxBtn",props:C(),emits:{"update:modelValue":e=>!0,"update:indeterminate":e=>!0},setup(e,r){let{slots:s}=r;const t=c(e,"indeterminate"),n=c(e,"modelValue");function u(a){t.value&&(t.value=!1)}const i=l(()=>t.value?e.indeterminateIcon:e.falseIcon),d=l(()=>t.value?e.indeterminateIcon:e.trueIcon);return I(()=>{const a=h(o.filterProps(e),["modelValue"]);return x(o,b(a,{modelValue:n.value,"onUpdate:modelValue":[m=>n.value=m,u],class:["v-checkbox-btn",e.class],style:e.style,type:"checkbox",falseIcon:i.value,trueIcon:d.value,"aria-checked":t.value?"mixed":void 0}),s)}),{}}});export{y as V,C as m};
|
|
Binary file
|
|
Binary file
|
codex/static_root/assets/{VCombobox-CZAW6_3Q.0e2401e819a5.js → VCombobox-BaV3XhIr.bf0c945d80a9.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{m as Ce,u as pe,t as A,f as we,V as Se,a as Fe,b as Ie,c as Ae}from"./VSelect-
|
|
1
|
+
import{m as Ce,u as pe,t as A,f as we,V as Se,a as Fe,b as Ie,c as Ae}from"./VSelect-Dvsi19pi.js";import{m as De,a as X,V as Y,e as Pe}from"./VTextField-rsRdtAxl.js";import{e as Re,u as _e,V as Z}from"./transition-A__CJ90w.js";import{m as Ee,u as Te}from"./filter-BJ7TmFiU.js";import{o as Me}from"./VSelectionControl-BioGLzkQ.js";import{h as Ne,f as Le}from"./VDialog-DJR54d5g.js";import{p as Oe,d as Be,g as Ke,aS as Ue,e as N,aT as D,k as ee,f as b,aU as P,aW as le,bq as ze,h as je,a as i,F as L,i as I,bA as qe,b as He,bB as We,bC as $e,bD as Ge,bE as Je}from"./main-Cs7q8tob.js";import{V as Qe}from"./VCheckboxBtn-BbNnqvzj.js";function Xe(e,g,R){if(g==null)return e;if(Array.isArray(g))throw new Error("Multiple matches is not implemented");return typeof g=="number"&&~g?i(L,null,[i("span",{class:"v-combobox__unmask"},[e.substr(0,g)]),i("span",{class:"v-combobox__mask"},[e.substr(g,R)]),i("span",{class:"v-combobox__unmask"},[e.substr(g+R)])]):e}const Ye=Oe({autoSelectFirst:{type:[Boolean,String]},clearOnSelect:{type:Boolean,default:!0},delimiters:Array,...Ee({filterKeys:["title"]}),...Ce({hideNoData:!0,returnObject:!0}),...Be(De({modelValue:null,role:"combobox"}),["validationValue","dirty","appendInnerIcon"]),...Re({transition:!1})},"VCombobox"),il=Ke()({name:"VCombobox",props:Ye(),emits:{"update:focused":e=>!0,"update:modelValue":e=>!0,"update:search":e=>!0,"update:menu":e=>!0},setup(e,g){var G;let{emit:R,slots:o}=g;const{t:O}=Ue(),V=N(),x=D(!1),k=D(!0),B=D(!1),W=N(),K=N(),U=ee(e,"menu"),c=b({get:()=>U.value,set:l=>{var a;U.value&&!l&&((a=W.value)!=null&&a.ΨopenChildren.size)||(U.value=l)}}),s=D(-1);let z=!1;const ae=b(()=>{var l;return(l=V.value)==null?void 0:l.color}),$=b(()=>c.value?e.closeText:e.openText),{items:te,transformIn:ne,transformOut:ue}=pe(e),{textColorClasses:oe,textColorStyles:ie}=_e(ae),n=ee(e,"modelValue",[],l=>ne(Je(l)),l=>{const a=ue(l);return e.multiple?a:a[0]??null}),F=Me(),_=b(()=>!!(e.chips||o.chip)),y=b(()=>_.value||!!o.selection),C=D(!e.multiple&&!y.value?((G=n.value[0])==null?void 0:G.title)??"":""),v=b({get:()=>C.value,set:l=>{var a;if(C.value=l??"",!e.multiple&&!y.value&&(n.value=[A(e,l)]),l&&e.multiple&&((a=e.delimiters)!=null&&a.length)){const r=l.split(new RegExp(`(?:${e.delimiters.join("|")})+`));r.length>1&&(r.forEach(t=>{t=t.trim(),t&&h(A(e,t))}),C.value="")}l||(s.value=-1),k.value=!l}}),se=b(()=>typeof e.counterValue=="function"?e.counterValue(n.value):typeof e.counterValue=="number"?e.counterValue:e.multiple?n.value.length:v.value.length);P(C,l=>{z?le(()=>z=!1):x.value&&!c.value&&(c.value=!0),R("update:search",l)}),P(n,l=>{var a;!e.multiple&&!y.value&&(C.value=((a=l[0])==null?void 0:a.title)??"")});const{filteredItems:E,getMatches:re}=Te(e,te,()=>k.value?"":v.value),p=b(()=>e.hideSelected?E.value.filter(l=>!n.value.some(a=>a.value===l.value)):E.value),ce=b(()=>n.value.map(l=>l.value)),j=b(()=>{var a;return(e.autoSelectFirst===!0||e.autoSelectFirst==="exact"&&v.value===((a=p.value[0])==null?void 0:a.title))&&p.value.length>0&&!k.value&&!B.value}),q=b(()=>e.hideNoData&&!p.value.length||e.readonly||(F==null?void 0:F.isReadonly.value)),H=N(),ve=we(H,V);function de(l){z=!0,e.openOnClear&&(c.value=!0)}function fe(){q.value||(c.value=!0)}function me(l){q.value||(x.value&&(l.preventDefault(),l.stopPropagation()),c.value=!c.value)}function be(l){var a;$e(l)&&((a=V.value)==null||a.focus())}function he(l){var t;if(Ge(l)||e.readonly||F!=null&&F.isReadonly.value)return;const a=V.value.selectionStart,r=n.value.length;if((s.value>-1||["Enter","ArrowDown","ArrowUp"].includes(l.key))&&l.preventDefault(),["Enter","ArrowDown"].includes(l.key)&&(c.value=!0),["Escape"].includes(l.key)&&(c.value=!1),["Enter","Escape","Tab"].includes(l.key)&&(j.value&&["Enter","Tab"].includes(l.key)&&!n.value.some(u=>{let{value:m}=u;return m===p.value[0].value})&&h(E.value[0]),k.value=!0),l.key==="ArrowDown"&&j.value&&((t=H.value)==null||t.focus("next")),l.key==="Enter"&&v.value&&(h(A(e,v.value)),y.value&&(C.value="")),["Backspace","Delete"].includes(l.key)){if(!e.multiple&&y.value&&n.value.length>0&&!v.value)return h(n.value[0],!1);if(~s.value){const u=s.value;h(n.value[s.value],!1),s.value=u>=r-1?r-2:u}else l.key==="Backspace"&&!v.value&&(s.value=r-1)}if(e.multiple){if(l.key==="ArrowLeft"){if(s.value<0&&a>0)return;const u=s.value>-1?s.value-1:r-1;n.value[u]?s.value=u:(s.value=-1,V.value.setSelectionRange(v.value.length,v.value.length))}if(l.key==="ArrowRight"){if(s.value<0)return;const u=s.value+1;n.value[u]?s.value=u:(s.value=-1,V.value.setSelectionRange(0,0))}}}function ge(){var l;e.eager&&((l=K.value)==null||l.calculateVisibleItems())}function Ve(){var l;x.value&&(k.value=!0,(l=V.value)==null||l.focus())}function h(l){let a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;if(!(!l||l.props.disabled))if(e.multiple){const r=n.value.findIndex(u=>e.valueComparator(u.value,l.value)),t=a??!~r;if(~r){const u=t?[...n.value,l]:[...n.value];u.splice(r,1),n.value=u}else t&&(n.value=[...n.value,l]);e.clearOnSelect&&(v.value="")}else{const r=a!==!1;n.value=r?[l]:[],C.value=r&&!y.value?l.title:"",le(()=>{c.value=!1,k.value=!0})}}function xe(l){x.value=!0,setTimeout(()=>{B.value=!0})}function ye(l){B.value=!1}function ke(l){(l==null||l===""&&!e.multiple&&!y.value)&&(n.value=[])}return P(x,(l,a)=>{if(!(l||l===a)&&(s.value=-1,c.value=!1,v.value)){if(e.multiple){h(A(e,v.value));return}if(!y.value)return;n.value.some(r=>{let{title:t}=r;return t===v.value})?C.value="":h(A(e,v.value))}}),P(c,()=>{if(!e.hideSelected&&c.value&&n.value.length){const l=p.value.findIndex(a=>n.value.some(r=>e.valueComparator(r.value,a.value)));ze&&window.requestAnimationFrame(()=>{var a;l>=0&&((a=K.value)==null||a.scrollToIndex(l))})}}),P(()=>e.items,(l,a)=>{c.value||x.value&&!a.length&&l.length&&(c.value=!0)}),je(()=>{const l=!!(!e.hideNoData||p.value.length||o["prepend-item"]||o["append-item"]||o["no-data"]),a=n.value.length>0,r=X.filterProps(e);return i(X,I({ref:V},r,{modelValue:v.value,"onUpdate:modelValue":[t=>v.value=t,ke],focused:x.value,"onUpdate:focused":t=>x.value=t,validationValue:n.externalValue,counterValue:se.value,dirty:a,class:["v-combobox",{"v-combobox--active-menu":c.value,"v-combobox--chips":!!e.chips,"v-combobox--selection-slot":!!y.value,"v-combobox--selecting-index":s.value>-1,[`v-combobox--${e.multiple?"multiple":"single"}`]:!0},e.class],style:e.style,readonly:e.readonly,placeholder:a?void 0:e.placeholder,"onClick:clear":de,"onMousedown:control":fe,onKeydown:he}),{...o,default:()=>i(L,null,[i(Se,I({ref:W,modelValue:c.value,"onUpdate:modelValue":t=>c.value=t,activator:"parent",contentClass:"v-combobox__content",disabled:q.value,eager:e.eager,maxHeight:310,openOnClick:!1,closeOnContentClick:!1,transition:e.transition,onAfterEnter:ge,onAfterLeave:Ve},e.menuProps),{default:()=>[l&&i(Fe,I({ref:H,selected:ce.value,selectStrategy:e.multiple?"independent":"single-independent",onMousedown:t=>t.preventDefault(),onKeydown:be,onFocusin:xe,onFocusout:ye,tabindex:"-1","aria-live":"polite",color:e.itemColor??e.color},ve,e.listProps),{default:()=>{var t,u,m;return[(t=o["prepend-item"])==null?void 0:t.call(o),!p.value.length&&!e.hideNoData&&(((u=o["no-data"])==null?void 0:u.call(o))??i(Y,{title:O(e.noDataText)},null)),i(Ie,{ref:K,renderless:!0,items:p.value},{default:w=>{var Q;let{item:d,index:S,itemRef:f}=w;const J=I(d.props,{ref:f,key:S,active:j.value&&S===0?!0:void 0,onClick:()=>h(d,null)});return((Q=o.item)==null?void 0:Q.call(o,{item:d,index:S,props:J}))??i(Y,I(J,{role:"option"}),{prepend:T=>{let{isSelected:M}=T;return i(L,null,[e.multiple&&!e.hideSelected?i(Qe,{key:d.value,modelValue:M,ripple:!1,tabindex:"-1"},null):void 0,d.props.prependAvatar&&i(Pe,{image:d.props.prependAvatar},null),d.props.prependIcon&&i(Z,{icon:d.props.prependIcon},null)])},title:()=>{var T,M;return k.value?d.title:Xe(d.title,(T=re(d))==null?void 0:T.title,((M=v.value)==null?void 0:M.length)??0)}})}}),(m=o["append-item"])==null?void 0:m.call(o)]}})]}),n.value.map((t,u)=>{function m(f){f.stopPropagation(),f.preventDefault(),h(t,!1)}const w={"onClick:close":m,onKeydown(f){f.key!=="Enter"&&f.key!==" "||(f.preventDefault(),f.stopPropagation(),m(f))},onMousedown(f){f.preventDefault(),f.stopPropagation()},modelValue:!0,"onUpdate:modelValue":void 0},d=_.value?!!o.chip:!!o.selection,S=d?qe(_.value?o.chip({item:t,index:u,props:w}):o.selection({item:t,index:u})):void 0;if(!(d&&!S))return i("div",{key:t.value,class:["v-combobox__selection",u===s.value&&["v-combobox__selection--selected",oe.value]],style:u===s.value?ie.value:{}},[_.value?o.chip?i(Ne,{key:"chip-defaults",defaults:{VChip:{closable:e.closableChips,size:"small",text:t.title}}},{default:()=>[S]}):i(Ae,I({key:"chip",closable:e.closableChips,size:"small",text:t.title,disabled:t.props.disabled},w),null):S??i("span",{class:"v-combobox__selection-text"},[t.title,e.multiple&&u<n.value.length-1&&i("span",{class:"v-combobox__selection-comma"},[He(",")])])])})]),"append-inner":function(){var w;for(var t=arguments.length,u=new Array(t),m=0;m<t;m++)u[m]=arguments[m];return i(L,null,[(w=o["append-inner"])==null?void 0:w.call(o,...u),(!e.hideNoData||e.items.length)&&e.menuIcon?i(Z,{class:"v-combobox__menu-icon",icon:e.menuIcon,onMousedown:me,onClick:We,"aria-label":O($.value),title:O($.value),tabindex:"-1"},null):void 0])}})}),Le({isFocused:x,isPristine:k,menu:c,search:v,selectionIndex:s,filteredItems:E,select:h},V)}});export{il as V};
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{m as Ce,u as pe,t as A,f as we,V as Se,a as Fe,b as Ie,c as Ae}from"./VSelect-
|
|
1
|
+
import{m as Ce,u as pe,t as A,f as we,V as Se,a as Fe,b as Ie,c as Ae}from"./VSelect-Dvsi19pi.js";import{m as De,a as X,V as Y,e as Pe}from"./VTextField-rsRdtAxl.js";import{e as Re,u as _e,V as Z}from"./transition-A__CJ90w.js";import{m as Ee,u as Te}from"./filter-BJ7TmFiU.js";import{o as Me}from"./VSelectionControl-BioGLzkQ.js";import{h as Ne,f as Le}from"./VDialog-DJR54d5g.js";import{p as Oe,d as Be,g as Ke,aS as Ue,e as N,aT as D,k as ee,f as b,aU as P,aW as le,bq as ze,h as je,a as i,F as L,i as I,bA as qe,b as He,bB as We,bC as $e,bD as Ge,bE as Je}from"./main-Cs7q8tob.js";import{V as Qe}from"./VCheckboxBtn-BbNnqvzj.js";function Xe(e,g,R){if(g==null)return e;if(Array.isArray(g))throw new Error("Multiple matches is not implemented");return typeof g=="number"&&~g?i(L,null,[i("span",{class:"v-combobox__unmask"},[e.substr(0,g)]),i("span",{class:"v-combobox__mask"},[e.substr(g,R)]),i("span",{class:"v-combobox__unmask"},[e.substr(g+R)])]):e}const Ye=Oe({autoSelectFirst:{type:[Boolean,String]},clearOnSelect:{type:Boolean,default:!0},delimiters:Array,...Ee({filterKeys:["title"]}),...Ce({hideNoData:!0,returnObject:!0}),...Be(De({modelValue:null,role:"combobox"}),["validationValue","dirty","appendInnerIcon"]),...Re({transition:!1})},"VCombobox"),il=Ke()({name:"VCombobox",props:Ye(),emits:{"update:focused":e=>!0,"update:modelValue":e=>!0,"update:search":e=>!0,"update:menu":e=>!0},setup(e,g){var G;let{emit:R,slots:o}=g;const{t:O}=Ue(),V=N(),x=D(!1),k=D(!0),B=D(!1),W=N(),K=N(),U=ee(e,"menu"),c=b({get:()=>U.value,set:l=>{var a;U.value&&!l&&((a=W.value)!=null&&a.ΨopenChildren.size)||(U.value=l)}}),s=D(-1);let z=!1;const ae=b(()=>{var l;return(l=V.value)==null?void 0:l.color}),$=b(()=>c.value?e.closeText:e.openText),{items:te,transformIn:ne,transformOut:ue}=pe(e),{textColorClasses:oe,textColorStyles:ie}=_e(ae),n=ee(e,"modelValue",[],l=>ne(Je(l)),l=>{const a=ue(l);return e.multiple?a:a[0]??null}),F=Me(),_=b(()=>!!(e.chips||o.chip)),y=b(()=>_.value||!!o.selection),C=D(!e.multiple&&!y.value?((G=n.value[0])==null?void 0:G.title)??"":""),v=b({get:()=>C.value,set:l=>{var a;if(C.value=l??"",!e.multiple&&!y.value&&(n.value=[A(e,l)]),l&&e.multiple&&((a=e.delimiters)!=null&&a.length)){const r=l.split(new RegExp(`(?:${e.delimiters.join("|")})+`));r.length>1&&(r.forEach(t=>{t=t.trim(),t&&h(A(e,t))}),C.value="")}l||(s.value=-1),k.value=!l}}),se=b(()=>typeof e.counterValue=="function"?e.counterValue(n.value):typeof e.counterValue=="number"?e.counterValue:e.multiple?n.value.length:v.value.length);P(C,l=>{z?le(()=>z=!1):x.value&&!c.value&&(c.value=!0),R("update:search",l)}),P(n,l=>{var a;!e.multiple&&!y.value&&(C.value=((a=l[0])==null?void 0:a.title)??"")});const{filteredItems:E,getMatches:re}=Te(e,te,()=>k.value?"":v.value),p=b(()=>e.hideSelected?E.value.filter(l=>!n.value.some(a=>a.value===l.value)):E.value),ce=b(()=>n.value.map(l=>l.value)),j=b(()=>{var a;return(e.autoSelectFirst===!0||e.autoSelectFirst==="exact"&&v.value===((a=p.value[0])==null?void 0:a.title))&&p.value.length>0&&!k.value&&!B.value}),q=b(()=>e.hideNoData&&!p.value.length||e.readonly||(F==null?void 0:F.isReadonly.value)),H=N(),ve=we(H,V);function de(l){z=!0,e.openOnClear&&(c.value=!0)}function fe(){q.value||(c.value=!0)}function me(l){q.value||(x.value&&(l.preventDefault(),l.stopPropagation()),c.value=!c.value)}function be(l){var a;$e(l)&&((a=V.value)==null||a.focus())}function he(l){var t;if(Ge(l)||e.readonly||F!=null&&F.isReadonly.value)return;const a=V.value.selectionStart,r=n.value.length;if((s.value>-1||["Enter","ArrowDown","ArrowUp"].includes(l.key))&&l.preventDefault(),["Enter","ArrowDown"].includes(l.key)&&(c.value=!0),["Escape"].includes(l.key)&&(c.value=!1),["Enter","Escape","Tab"].includes(l.key)&&(j.value&&["Enter","Tab"].includes(l.key)&&!n.value.some(u=>{let{value:m}=u;return m===p.value[0].value})&&h(E.value[0]),k.value=!0),l.key==="ArrowDown"&&j.value&&((t=H.value)==null||t.focus("next")),l.key==="Enter"&&v.value&&(h(A(e,v.value)),y.value&&(C.value="")),["Backspace","Delete"].includes(l.key)){if(!e.multiple&&y.value&&n.value.length>0&&!v.value)return h(n.value[0],!1);if(~s.value){const u=s.value;h(n.value[s.value],!1),s.value=u>=r-1?r-2:u}else l.key==="Backspace"&&!v.value&&(s.value=r-1)}if(e.multiple){if(l.key==="ArrowLeft"){if(s.value<0&&a>0)return;const u=s.value>-1?s.value-1:r-1;n.value[u]?s.value=u:(s.value=-1,V.value.setSelectionRange(v.value.length,v.value.length))}if(l.key==="ArrowRight"){if(s.value<0)return;const u=s.value+1;n.value[u]?s.value=u:(s.value=-1,V.value.setSelectionRange(0,0))}}}function ge(){var l;e.eager&&((l=K.value)==null||l.calculateVisibleItems())}function Ve(){var l;x.value&&(k.value=!0,(l=V.value)==null||l.focus())}function h(l){let a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;if(!(!l||l.props.disabled))if(e.multiple){const r=n.value.findIndex(u=>e.valueComparator(u.value,l.value)),t=a??!~r;if(~r){const u=t?[...n.value,l]:[...n.value];u.splice(r,1),n.value=u}else t&&(n.value=[...n.value,l]);e.clearOnSelect&&(v.value="")}else{const r=a!==!1;n.value=r?[l]:[],C.value=r&&!y.value?l.title:"",le(()=>{c.value=!1,k.value=!0})}}function xe(l){x.value=!0,setTimeout(()=>{B.value=!0})}function ye(l){B.value=!1}function ke(l){(l==null||l===""&&!e.multiple&&!y.value)&&(n.value=[])}return P(x,(l,a)=>{if(!(l||l===a)&&(s.value=-1,c.value=!1,v.value)){if(e.multiple){h(A(e,v.value));return}if(!y.value)return;n.value.some(r=>{let{title:t}=r;return t===v.value})?C.value="":h(A(e,v.value))}}),P(c,()=>{if(!e.hideSelected&&c.value&&n.value.length){const l=p.value.findIndex(a=>n.value.some(r=>e.valueComparator(r.value,a.value)));ze&&window.requestAnimationFrame(()=>{var a;l>=0&&((a=K.value)==null||a.scrollToIndex(l))})}}),P(()=>e.items,(l,a)=>{c.value||x.value&&!a.length&&l.length&&(c.value=!0)}),je(()=>{const l=!!(!e.hideNoData||p.value.length||o["prepend-item"]||o["append-item"]||o["no-data"]),a=n.value.length>0,r=X.filterProps(e);return i(X,I({ref:V},r,{modelValue:v.value,"onUpdate:modelValue":[t=>v.value=t,ke],focused:x.value,"onUpdate:focused":t=>x.value=t,validationValue:n.externalValue,counterValue:se.value,dirty:a,class:["v-combobox",{"v-combobox--active-menu":c.value,"v-combobox--chips":!!e.chips,"v-combobox--selection-slot":!!y.value,"v-combobox--selecting-index":s.value>-1,[`v-combobox--${e.multiple?"multiple":"single"}`]:!0},e.class],style:e.style,readonly:e.readonly,placeholder:a?void 0:e.placeholder,"onClick:clear":de,"onMousedown:control":fe,onKeydown:he}),{...o,default:()=>i(L,null,[i(Se,I({ref:W,modelValue:c.value,"onUpdate:modelValue":t=>c.value=t,activator:"parent",contentClass:"v-combobox__content",disabled:q.value,eager:e.eager,maxHeight:310,openOnClick:!1,closeOnContentClick:!1,transition:e.transition,onAfterEnter:ge,onAfterLeave:Ve},e.menuProps),{default:()=>[l&&i(Fe,I({ref:H,selected:ce.value,selectStrategy:e.multiple?"independent":"single-independent",onMousedown:t=>t.preventDefault(),onKeydown:be,onFocusin:xe,onFocusout:ye,tabindex:"-1","aria-live":"polite",color:e.itemColor??e.color},ve,e.listProps),{default:()=>{var t,u,m;return[(t=o["prepend-item"])==null?void 0:t.call(o),!p.value.length&&!e.hideNoData&&(((u=o["no-data"])==null?void 0:u.call(o))??i(Y,{title:O(e.noDataText)},null)),i(Ie,{ref:K,renderless:!0,items:p.value},{default:w=>{var Q;let{item:d,index:S,itemRef:f}=w;const J=I(d.props,{ref:f,key:S,active:j.value&&S===0?!0:void 0,onClick:()=>h(d,null)});return((Q=o.item)==null?void 0:Q.call(o,{item:d,index:S,props:J}))??i(Y,I(J,{role:"option"}),{prepend:T=>{let{isSelected:M}=T;return i(L,null,[e.multiple&&!e.hideSelected?i(Qe,{key:d.value,modelValue:M,ripple:!1,tabindex:"-1"},null):void 0,d.props.prependAvatar&&i(Pe,{image:d.props.prependAvatar},null),d.props.prependIcon&&i(Z,{icon:d.props.prependIcon},null)])},title:()=>{var T,M;return k.value?d.title:Xe(d.title,(T=re(d))==null?void 0:T.title,((M=v.value)==null?void 0:M.length)??0)}})}}),(m=o["append-item"])==null?void 0:m.call(o)]}})]}),n.value.map((t,u)=>{function m(f){f.stopPropagation(),f.preventDefault(),h(t,!1)}const w={"onClick:close":m,onKeydown(f){f.key!=="Enter"&&f.key!==" "||(f.preventDefault(),f.stopPropagation(),m(f))},onMousedown(f){f.preventDefault(),f.stopPropagation()},modelValue:!0,"onUpdate:modelValue":void 0},d=_.value?!!o.chip:!!o.selection,S=d?qe(_.value?o.chip({item:t,index:u,props:w}):o.selection({item:t,index:u})):void 0;if(!(d&&!S))return i("div",{key:t.value,class:["v-combobox__selection",u===s.value&&["v-combobox__selection--selected",oe.value]],style:u===s.value?ie.value:{}},[_.value?o.chip?i(Ne,{key:"chip-defaults",defaults:{VChip:{closable:e.closableChips,size:"small",text:t.title}}},{default:()=>[S]}):i(Ae,I({key:"chip",closable:e.closableChips,size:"small",text:t.title,disabled:t.props.disabled},w),null):S??i("span",{class:"v-combobox__selection-text"},[t.title,e.multiple&&u<n.value.length-1&&i("span",{class:"v-combobox__selection-comma"},[He(",")])])])})]),"append-inner":function(){var w;for(var t=arguments.length,u=new Array(t),m=0;m<t;m++)u[m]=arguments[m];return i(L,null,[(w=o["append-inner"])==null?void 0:w.call(o,...u),(!e.hideNoData||e.items.length)&&e.menuIcon?i(Z,{class:"v-combobox__menu-icon",icon:e.menuIcon,onMousedown:me,onClick:We,"aria-label":O($.value),title:O($.value),tabindex:"-1"},null):void 0])}})}),Le({isFocused:x,isPristine:k,menu:c,search:v,selectionIndex:s,filteredItems:E,select:h},V)}});export{il as V};
|
|
Binary file
|
|
Binary file
|