codex 1.7.0a1__py3-none-any.whl → 1.7.1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of codex might be problematic. Click here for more details.

Files changed (427) hide show
  1. codex/choices.py +43 -28
  2. codex/db.py +1 -2
  3. codex/librarian/bookmark/bookmarkd.py +1 -1
  4. codex/librarian/bookmark/update.py +14 -1
  5. codex/librarian/janitor/integrity.py +11 -10
  6. codex/librarian/janitor/tasks.py +1 -1
  7. codex/serializers/browser/page.py +1 -0
  8. codex/static_root/assets/{VCheckbox-B38iL9f_.81d9c00753e7.js → VCheckbox-Cf74Jfrq.2fbb5106ef5a.js} +1 -1
  9. codex/static_root/assets/VCheckbox-Cf74Jfrq.2fbb5106ef5a.js.br +0 -0
  10. codex/static_root/assets/VCheckbox-Cf74Jfrq.2fbb5106ef5a.js.gz +0 -0
  11. codex/static_root/assets/{VCheckbox-B38iL9f_.js → VCheckbox-Cf74Jfrq.js} +1 -1
  12. codex/static_root/assets/VCheckbox-Cf74Jfrq.js.br +0 -0
  13. codex/static_root/assets/VCheckbox-Cf74Jfrq.js.gz +0 -0
  14. codex/static_root/assets/{VCheckboxBtn-BbNnqvzj.aa7fa886f86a.js → VCheckboxBtn-D5jbIiqO.921713d268ba.js} +1 -1
  15. codex/static_root/assets/VCheckboxBtn-D5jbIiqO.921713d268ba.js.br +0 -0
  16. codex/static_root/assets/VCheckboxBtn-D5jbIiqO.921713d268ba.js.gz +0 -0
  17. codex/static_root/assets/{VCheckboxBtn-BbNnqvzj.js → VCheckboxBtn-D5jbIiqO.js} +1 -1
  18. codex/static_root/assets/VCheckboxBtn-D5jbIiqO.js.br +0 -0
  19. codex/static_root/assets/VCheckboxBtn-D5jbIiqO.js.gz +0 -0
  20. codex/static_root/assets/{VCombobox-BaV3XhIr.bf0c945d80a9.js → VCombobox-Dq3Y5j2w.8f4884677e5a.js} +1 -1
  21. codex/static_root/assets/VCombobox-Dq3Y5j2w.8f4884677e5a.js.br +0 -0
  22. codex/static_root/assets/VCombobox-Dq3Y5j2w.8f4884677e5a.js.gz +0 -0
  23. codex/static_root/assets/{VCombobox-BaV3XhIr.js → VCombobox-Dq3Y5j2w.js} +1 -1
  24. codex/static_root/assets/VCombobox-Dq3Y5j2w.js.br +0 -0
  25. codex/static_root/assets/VCombobox-Dq3Y5j2w.js.gz +0 -0
  26. codex/static_root/assets/{VDialog-DJR54d5g.9d6a52f62db3.js → VDialog-BVHV10WD.993b98f2be7f.js} +1 -1
  27. codex/static_root/assets/VDialog-BVHV10WD.993b98f2be7f.js.br +0 -0
  28. codex/static_root/assets/VDialog-BVHV10WD.993b98f2be7f.js.gz +0 -0
  29. codex/static_root/assets/{VDialog-DJR54d5g.js → VDialog-BVHV10WD.js} +1 -1
  30. codex/static_root/assets/VDialog-BVHV10WD.js.br +0 -0
  31. codex/static_root/assets/VDialog-BVHV10WD.js.gz +0 -0
  32. codex/static_root/assets/{VExpansionPanels-CJWqDA9d.acf5acdb3a81.js → VExpansionPanels-BLAGU-dj.e244f3902cf9.js} +1 -1
  33. codex/static_root/assets/VExpansionPanels-BLAGU-dj.e244f3902cf9.js.br +0 -0
  34. codex/static_root/assets/VExpansionPanels-BLAGU-dj.e244f3902cf9.js.gz +0 -0
  35. codex/static_root/assets/{VExpansionPanels-CJWqDA9d.js → VExpansionPanels-BLAGU-dj.js} +1 -1
  36. codex/static_root/assets/VExpansionPanels-BLAGU-dj.js.br +0 -0
  37. codex/static_root/assets/VExpansionPanels-BLAGU-dj.js.gz +0 -0
  38. codex/static_root/assets/{VRadioGroup-BFLE3yCT.8b78cefe4206.js → VRadioGroup-Bnt5BbmK.826e1c2d9134.js} +1 -1
  39. codex/static_root/assets/VRadioGroup-Bnt5BbmK.826e1c2d9134.js.br +0 -0
  40. codex/static_root/assets/VRadioGroup-Bnt5BbmK.826e1c2d9134.js.gz +0 -0
  41. codex/static_root/assets/{VRadioGroup-BFLE3yCT.js → VRadioGroup-Bnt5BbmK.js} +1 -1
  42. codex/static_root/assets/VRadioGroup-Bnt5BbmK.js.br +0 -0
  43. codex/static_root/assets/VRadioGroup-Bnt5BbmK.js.gz +0 -0
  44. codex/static_root/assets/{VSelect-Dvsi19pi.6d38dc99e0a8.js → VSelect-BTo1ZM8U.ea4a7a7bbce9.js} +1 -1
  45. codex/static_root/assets/VSelect-BTo1ZM8U.ea4a7a7bbce9.js.br +0 -0
  46. codex/static_root/assets/VSelect-BTo1ZM8U.ea4a7a7bbce9.js.gz +0 -0
  47. codex/static_root/assets/{VSelect-Dvsi19pi.js → VSelect-BTo1ZM8U.js} +1 -1
  48. codex/static_root/assets/VSelect-BTo1ZM8U.js.br +0 -0
  49. codex/static_root/assets/VSelect-BTo1ZM8U.js.gz +0 -0
  50. codex/static_root/assets/{VSelectionControl-BioGLzkQ.js → VSelectionControl-CrzLF2bD.965af5336c62.js} +1 -1
  51. codex/static_root/assets/VSelectionControl-CrzLF2bD.965af5336c62.js.br +0 -0
  52. codex/static_root/assets/VSelectionControl-CrzLF2bD.965af5336c62.js.gz +0 -0
  53. codex/static_root/assets/{VSelectionControl-BioGLzkQ.106c3be4b6d4.js → VSelectionControl-CrzLF2bD.js} +1 -1
  54. codex/static_root/assets/VSelectionControl-CrzLF2bD.js.br +0 -0
  55. codex/static_root/assets/VSelectionControl-CrzLF2bD.js.gz +0 -0
  56. codex/static_root/assets/{VSlideGroup-CFkaPBuS.1d168fc87687.js → VSlideGroup-ZRALPG67.9807cdc6b330.js} +1 -1
  57. codex/static_root/assets/VSlideGroup-ZRALPG67.9807cdc6b330.js.br +0 -0
  58. codex/static_root/assets/VSlideGroup-ZRALPG67.9807cdc6b330.js.gz +0 -0
  59. codex/static_root/assets/{VSlideGroup-CFkaPBuS.js → VSlideGroup-ZRALPG67.js} +1 -1
  60. codex/static_root/assets/VSlideGroup-ZRALPG67.js.br +0 -0
  61. codex/static_root/assets/VSlideGroup-ZRALPG67.js.gz +0 -0
  62. codex/static_root/assets/{VTable-B7x3Oih2.d0010dab39ce.js → VTable-Ci8_04Au.1382ab272e40.js} +1 -1
  63. codex/static_root/assets/VTable-Ci8_04Au.1382ab272e40.js.br +0 -0
  64. codex/static_root/assets/VTable-Ci8_04Au.1382ab272e40.js.gz +0 -0
  65. codex/static_root/assets/{VTable-B7x3Oih2.js → VTable-Ci8_04Au.js} +1 -1
  66. codex/static_root/assets/VTable-Ci8_04Au.js.br +0 -0
  67. codex/static_root/assets/VTable-Ci8_04Au.js.gz +0 -0
  68. codex/static_root/assets/{VTextField-rsRdtAxl.488a06f530fe.js → VTextField-D7pt5iJ3.c020691495b7.js} +1 -1
  69. codex/static_root/assets/VTextField-D7pt5iJ3.c020691495b7.js.br +0 -0
  70. codex/static_root/assets/VTextField-D7pt5iJ3.c020691495b7.js.gz +0 -0
  71. codex/static_root/assets/{VTextField-rsRdtAxl.js → VTextField-D7pt5iJ3.js} +1 -1
  72. codex/static_root/assets/VTextField-D7pt5iJ3.js.br +0 -0
  73. codex/static_root/assets/VTextField-D7pt5iJ3.js.gz +0 -0
  74. codex/static_root/assets/{VWindowItem-CibnlNHs.75a48ded87d5.js → VWindowItem-CGBsUHpV.7c57d79cf74a.js} +1 -1
  75. codex/static_root/assets/VWindowItem-CGBsUHpV.7c57d79cf74a.js.br +0 -0
  76. codex/static_root/assets/VWindowItem-CGBsUHpV.7c57d79cf74a.js.gz +0 -0
  77. codex/static_root/assets/{VWindowItem-CibnlNHs.js → VWindowItem-CGBsUHpV.js} +1 -1
  78. codex/static_root/assets/VWindowItem-CGBsUHpV.js.br +0 -0
  79. codex/static_root/assets/VWindowItem-CGBsUHpV.js.gz +0 -0
  80. codex/static_root/assets/{admin-CaVmJ-fa.251f5d3cc755.js → admin-BTXUbxw5.23e0d3602f29.js} +1 -1
  81. codex/static_root/assets/admin-BTXUbxw5.23e0d3602f29.js.br +0 -0
  82. codex/static_root/assets/admin-BTXUbxw5.23e0d3602f29.js.gz +0 -0
  83. codex/static_root/assets/{admin-CaVmJ-fa.js → admin-BTXUbxw5.js} +1 -1
  84. codex/static_root/assets/admin-BTXUbxw5.js.br +0 -0
  85. codex/static_root/assets/admin-BTXUbxw5.js.gz +0 -0
  86. codex/static_root/assets/{admin-menu-Cb7A0Ilo.ddf1e9339257.js → admin-menu-Dbt1Rajw.043fb778ba6c.js} +1 -1
  87. codex/static_root/assets/admin-menu-Dbt1Rajw.043fb778ba6c.js.br +0 -0
  88. codex/static_root/assets/admin-menu-Dbt1Rajw.043fb778ba6c.js.gz +0 -0
  89. codex/static_root/assets/{admin-menu-Cb7A0Ilo.js → admin-menu-Dbt1Rajw.js} +1 -1
  90. codex/static_root/assets/admin-menu-Dbt1Rajw.js.br +0 -0
  91. codex/static_root/assets/admin-menu-Dbt1Rajw.js.gz +0 -0
  92. codex/static_root/assets/{admin-settings-button-progress-DID-drll.979420762aea.js → admin-settings-button-progress-DSOZWzf1.fad596375b9b.js} +1 -1
  93. codex/static_root/assets/admin-settings-button-progress-DSOZWzf1.fad596375b9b.js.br +0 -0
  94. codex/static_root/assets/admin-settings-button-progress-DSOZWzf1.fad596375b9b.js.gz +0 -0
  95. codex/static_root/assets/{admin-settings-button-progress-DID-drll.js → admin-settings-button-progress-DSOZWzf1.js} +1 -1
  96. codex/static_root/assets/admin-settings-button-progress-DSOZWzf1.js.br +0 -0
  97. codex/static_root/assets/admin-settings-button-progress-DSOZWzf1.js.gz +0 -0
  98. codex/static_root/assets/browser-3Sm5qvA_.188da1350ec3.css +1 -0
  99. codex/static_root/assets/browser-3Sm5qvA_.188da1350ec3.css.br +0 -0
  100. codex/static_root/assets/browser-3Sm5qvA_.188da1350ec3.css.gz +0 -0
  101. codex/static_root/assets/browser-3Sm5qvA_.css +1 -0
  102. codex/static_root/assets/browser-3Sm5qvA_.css.br +0 -0
  103. codex/static_root/assets/browser-3Sm5qvA_.css.gz +0 -0
  104. codex/static_root/assets/browser-Dq-fQLJF.2e88354a9574.js +1 -0
  105. codex/static_root/assets/browser-Dq-fQLJF.2e88354a9574.js.br +0 -0
  106. codex/static_root/assets/browser-Dq-fQLJF.2e88354a9574.js.gz +0 -0
  107. codex/static_root/assets/browser-Dq-fQLJF.js +1 -0
  108. codex/static_root/assets/browser-Dq-fQLJF.js.br +0 -0
  109. codex/static_root/assets/browser-Dq-fQLJF.js.gz +0 -0
  110. codex/static_root/assets/{change-password-dialog-DXY2Xg9k.4a7ca6108810.js → change-password-dialog-BaGA_bnX.af8ea11b1579.js} +1 -1
  111. codex/static_root/assets/change-password-dialog-BaGA_bnX.af8ea11b1579.js.br +0 -0
  112. codex/static_root/assets/change-password-dialog-BaGA_bnX.af8ea11b1579.js.gz +0 -0
  113. codex/static_root/assets/{change-password-dialog-DXY2Xg9k.js → change-password-dialog-BaGA_bnX.js} +1 -1
  114. codex/static_root/assets/change-password-dialog-BaGA_bnX.js.br +0 -0
  115. codex/static_root/assets/change-password-dialog-BaGA_bnX.js.gz +0 -0
  116. codex/static_root/assets/{confirm-dialog-BEVEU-kA.281b6e877fb5.js → confirm-dialog-X14gSw1w.21504f7c1db4.js} +1 -1
  117. codex/static_root/assets/confirm-dialog-X14gSw1w.21504f7c1db4.js.br +0 -0
  118. codex/static_root/assets/confirm-dialog-X14gSw1w.21504f7c1db4.js.gz +0 -0
  119. codex/static_root/assets/{confirm-dialog-BEVEU-kA.js → confirm-dialog-X14gSw1w.js} +1 -1
  120. codex/static_root/assets/confirm-dialog-X14gSw1w.js.br +0 -0
  121. codex/static_root/assets/confirm-dialog-X14gSw1w.js.gz +0 -0
  122. codex/static_root/assets/{datetime-column-DhrZEHwa.80e95aef7bdb.js → datetime-column-BN2Ulei5.a31061d3729c.js} +1 -1
  123. codex/static_root/assets/datetime-column-BN2Ulei5.a31061d3729c.js.br +0 -0
  124. codex/static_root/assets/datetime-column-BN2Ulei5.a31061d3729c.js.gz +0 -0
  125. codex/static_root/assets/{datetime-column-DhrZEHwa.js → datetime-column-BN2Ulei5.js} +1 -1
  126. codex/static_root/assets/datetime-column-BN2Ulei5.js.br +0 -0
  127. codex/static_root/assets/datetime-column-BN2Ulei5.js.gz +0 -0
  128. codex/static_root/assets/{filter-BJ7TmFiU.3cefe2d609c7.js → filter-CnO_WiBE.4044b9091aae.js} +1 -1
  129. codex/static_root/assets/filter-CnO_WiBE.4044b9091aae.js.br +0 -0
  130. codex/static_root/assets/filter-CnO_WiBE.4044b9091aae.js.gz +0 -0
  131. codex/static_root/assets/{filter-BJ7TmFiU.js → filter-CnO_WiBE.js} +1 -1
  132. codex/static_root/assets/filter-CnO_WiBE.js.br +0 -0
  133. codex/static_root/assets/filter-CnO_WiBE.js.gz +0 -0
  134. codex/static_root/assets/{flag-tab-AJj0sesB.2ab1be15d10f.js → flag-tab-C5NP3j6O.1c692a00884d.js} +1 -1
  135. codex/static_root/assets/flag-tab-C5NP3j6O.1c692a00884d.js.br +0 -0
  136. codex/static_root/assets/flag-tab-C5NP3j6O.1c692a00884d.js.gz +0 -0
  137. codex/static_root/assets/{flag-tab-AJj0sesB.js → flag-tab-C5NP3j6O.js} +1 -1
  138. codex/static_root/assets/flag-tab-C5NP3j6O.js.br +0 -0
  139. codex/static_root/assets/flag-tab-C5NP3j6O.js.gz +0 -0
  140. codex/static_root/assets/{group-tab-DuxOH4Hn.8ac96cfe7c43.js → group-tab-Cq4QjmHS.a9d15dac0289.js} +1 -1
  141. codex/static_root/assets/group-tab-Cq4QjmHS.a9d15dac0289.js.br +0 -0
  142. codex/static_root/assets/group-tab-Cq4QjmHS.a9d15dac0289.js.gz +0 -0
  143. codex/static_root/assets/{group-tab-DuxOH4Hn.js → group-tab-Cq4QjmHS.js} +1 -1
  144. codex/static_root/assets/group-tab-Cq4QjmHS.js.br +0 -0
  145. codex/static_root/assets/group-tab-Cq4QjmHS.js.gz +0 -0
  146. codex/static_root/assets/{http-error-DIeFpbQV.086e1dd09555.js → http-error-DGFbgQC5.da17e7b6d980.js} +1 -1
  147. codex/static_root/assets/http-error-DGFbgQC5.da17e7b6d980.js.br +0 -0
  148. codex/static_root/assets/http-error-DGFbgQC5.da17e7b6d980.js.gz +0 -0
  149. codex/static_root/assets/{http-error-DIeFpbQV.js → http-error-DGFbgQC5.js} +1 -1
  150. codex/static_root/assets/http-error-DGFbgQC5.js.br +0 -0
  151. codex/static_root/assets/http-error-DGFbgQC5.js.gz +0 -0
  152. codex/static_root/assets/{index-MN9BB_He.201e30aa00ef.js → index-BI-1EK3Q.51e5dd220639.js} +1 -1
  153. codex/static_root/assets/index-BI-1EK3Q.51e5dd220639.js.br +0 -0
  154. codex/static_root/assets/index-BI-1EK3Q.51e5dd220639.js.gz +0 -0
  155. codex/static_root/assets/{index-MN9BB_He.js → index-BI-1EK3Q.js} +1 -1
  156. codex/static_root/assets/index-BI-1EK3Q.js.br +0 -0
  157. codex/static_root/assets/index-BI-1EK3Q.js.gz +0 -0
  158. codex/static_root/assets/{library-tab-jpeUUWzV.70dae13f6dab.js → library-tab-woA1HyfN.acfc4f327913.js} +1 -1
  159. codex/static_root/assets/library-tab-woA1HyfN.acfc4f327913.js.br +0 -0
  160. codex/static_root/assets/library-tab-woA1HyfN.acfc4f327913.js.gz +0 -0
  161. codex/static_root/assets/{library-tab-jpeUUWzV.js → library-tab-woA1HyfN.js} +1 -1
  162. codex/static_root/assets/library-tab-woA1HyfN.js.br +0 -0
  163. codex/static_root/assets/library-tab-woA1HyfN.js.gz +0 -0
  164. codex/static_root/assets/{main-Cs7q8tob.86ef2567544d.js → main-Ed96tESk.7777498eb960.js} +15 -15
  165. codex/static_root/assets/main-Ed96tESk.7777498eb960.js.br +0 -0
  166. codex/static_root/assets/main-Ed96tESk.7777498eb960.js.gz +0 -0
  167. codex/static_root/assets/{main-Cs7q8tob.js → main-Ed96tESk.js} +15 -15
  168. codex/static_root/assets/main-Ed96tESk.js.br +0 -0
  169. codex/static_root/assets/main-Ed96tESk.js.gz +0 -0
  170. codex/static_root/assets/pager-full-pdf-DpxPZAZR.ec23b0e50b95.js +1 -0
  171. codex/static_root/assets/pager-full-pdf-DpxPZAZR.ec23b0e50b95.js.br +0 -0
  172. codex/static_root/assets/pager-full-pdf-DpxPZAZR.ec23b0e50b95.js.gz +0 -0
  173. codex/static_root/assets/pager-full-pdf-DpxPZAZR.js +1 -0
  174. codex/static_root/assets/pager-full-pdf-DpxPZAZR.js.br +0 -0
  175. codex/static_root/assets/pager-full-pdf-DpxPZAZR.js.gz +0 -0
  176. codex/static_root/assets/{pagination-toolbar-yeU7sPiY.ce0751d6009d.js → pagination-toolbar-Bz5nEUwa.d01b9cf3ab5e.js} +1 -1
  177. codex/static_root/assets/pagination-toolbar-Bz5nEUwa.d01b9cf3ab5e.js.br +0 -0
  178. codex/static_root/assets/pagination-toolbar-Bz5nEUwa.d01b9cf3ab5e.js.gz +0 -0
  179. codex/static_root/assets/{pagination-toolbar-yeU7sPiY.js → pagination-toolbar-Bz5nEUwa.js} +1 -1
  180. codex/static_root/assets/pagination-toolbar-Bz5nEUwa.js.br +0 -0
  181. codex/static_root/assets/pagination-toolbar-Bz5nEUwa.js.gz +0 -0
  182. codex/static_root/assets/{pdf-doc-Czi9tnhD.4d4b8b7ff5d7.js → pdf-doc-6j4uJzw7.59963079f1ec.js} +1 -1
  183. codex/static_root/assets/pdf-doc-6j4uJzw7.59963079f1ec.js.br +0 -0
  184. codex/static_root/assets/pdf-doc-6j4uJzw7.59963079f1ec.js.gz +0 -0
  185. codex/static_root/assets/{pdf-doc-Czi9tnhD.js → pdf-doc-6j4uJzw7.js} +1 -1
  186. codex/static_root/assets/pdf-doc-6j4uJzw7.js.br +0 -0
  187. codex/static_root/assets/pdf-doc-6j4uJzw7.js.gz +0 -0
  188. codex/static_root/assets/reader-DAyPkkSs.0f54806aed4b.js +2 -0
  189. codex/static_root/assets/reader-DAyPkkSs.0f54806aed4b.js.br +0 -0
  190. codex/static_root/assets/reader-DAyPkkSs.0f54806aed4b.js.gz +0 -0
  191. codex/static_root/assets/reader-DAyPkkSs.js +2 -0
  192. codex/static_root/assets/reader-DAyPkkSs.js.br +0 -0
  193. codex/static_root/assets/reader-DAyPkkSs.js.gz +0 -0
  194. codex/static_root/assets/{reader-OpKdTZ_B.css → reader-nD70BeEz.06e85e73c391.css} +1 -1
  195. codex/static_root/assets/reader-nD70BeEz.06e85e73c391.css.br +0 -0
  196. codex/static_root/assets/reader-nD70BeEz.06e85e73c391.css.gz +0 -0
  197. codex/static_root/assets/{reader-OpKdTZ_B.ebd1512b7014.css → reader-nD70BeEz.css} +1 -1
  198. codex/static_root/assets/reader-nD70BeEz.css.br +0 -0
  199. codex/static_root/assets/reader-nD70BeEz.css.gz +0 -0
  200. codex/static_root/assets/{relation-chips-CFH0Xf78.62ded2739a22.js → relation-chips-DUOduJmS.8b39d35f8503.js} +1 -1
  201. codex/static_root/assets/relation-chips-DUOduJmS.8b39d35f8503.js.br +0 -0
  202. codex/static_root/assets/relation-chips-DUOduJmS.8b39d35f8503.js.gz +0 -0
  203. codex/static_root/assets/{relation-chips-CFH0Xf78.js → relation-chips-DUOduJmS.js} +1 -1
  204. codex/static_root/assets/relation-chips-DUOduJmS.js.br +0 -0
  205. codex/static_root/assets/relation-chips-DUOduJmS.js.gz +0 -0
  206. codex/static_root/assets/{settings-drawer-DbOztp2R.b6f981108782.js → settings-drawer-lRimDTyf.054f1f057cee.js} +2 -2
  207. codex/static_root/assets/settings-drawer-lRimDTyf.054f1f057cee.js.br +0 -0
  208. codex/static_root/assets/settings-drawer-lRimDTyf.054f1f057cee.js.gz +0 -0
  209. codex/static_root/assets/{settings-drawer-DbOztp2R.js → settings-drawer-lRimDTyf.js} +2 -2
  210. codex/static_root/assets/settings-drawer-lRimDTyf.js.br +0 -0
  211. codex/static_root/assets/settings-drawer-lRimDTyf.js.gz +0 -0
  212. codex/static_root/assets/{stats-tab-DWktIwEj.42666baa0d93.js → stats-tab-Cyli0TxY.f9af7d3387d9.js} +1 -1
  213. codex/static_root/assets/stats-tab-Cyli0TxY.f9af7d3387d9.js.br +0 -0
  214. codex/static_root/assets/stats-tab-Cyli0TxY.f9af7d3387d9.js.gz +0 -0
  215. codex/static_root/assets/{stats-tab-DWktIwEj.js → stats-tab-Cyli0TxY.js} +1 -1
  216. codex/static_root/assets/stats-tab-Cyli0TxY.js.br +0 -0
  217. codex/static_root/assets/stats-tab-Cyli0TxY.js.gz +0 -0
  218. codex/static_root/assets/task-tab-CrRRKMNo.52cc73a5889d.js +1 -0
  219. codex/static_root/assets/task-tab-CrRRKMNo.52cc73a5889d.js.br +0 -0
  220. codex/static_root/assets/task-tab-CrRRKMNo.52cc73a5889d.js.gz +0 -0
  221. codex/static_root/assets/task-tab-CrRRKMNo.js +1 -0
  222. codex/static_root/assets/task-tab-CrRRKMNo.js.br +0 -0
  223. codex/static_root/assets/task-tab-CrRRKMNo.js.gz +0 -0
  224. codex/static_root/assets/{transition-A__CJ90w.970355913cb9.js → transition-CyIqQdeu.7496bae455dc.js} +1 -1
  225. codex/static_root/assets/transition-CyIqQdeu.7496bae455dc.js.br +0 -0
  226. codex/static_root/assets/transition-CyIqQdeu.7496bae455dc.js.gz +0 -0
  227. codex/static_root/assets/{transition-A__CJ90w.js → transition-CyIqQdeu.js} +1 -1
  228. codex/static_root/assets/transition-CyIqQdeu.js.br +0 -0
  229. codex/static_root/assets/transition-CyIqQdeu.js.gz +0 -0
  230. codex/static_root/assets/{unauthorized-FF1nwDKt.b3d6255ddb7f.js → unauthorized-IWC3QdqX.1d5d2dafa046.js} +1 -1
  231. codex/static_root/assets/unauthorized-IWC3QdqX.1d5d2dafa046.js.br +0 -0
  232. codex/static_root/assets/unauthorized-IWC3QdqX.1d5d2dafa046.js.gz +0 -0
  233. codex/static_root/assets/{unauthorized-FF1nwDKt.js → unauthorized-IWC3QdqX.js} +1 -1
  234. codex/static_root/assets/unauthorized-IWC3QdqX.js.br +0 -0
  235. codex/static_root/assets/unauthorized-IWC3QdqX.js.gz +0 -0
  236. codex/static_root/assets/{user-tab-RwMqZeSN.d4ed24177855.js → user-tab-Bt7BG8Ih.8f797a19b7ae.js} +1 -1
  237. codex/static_root/assets/user-tab-Bt7BG8Ih.8f797a19b7ae.js.br +0 -0
  238. codex/static_root/assets/user-tab-Bt7BG8Ih.8f797a19b7ae.js.gz +0 -0
  239. codex/static_root/assets/{user-tab-RwMqZeSN.js → user-tab-Bt7BG8Ih.js} +1 -1
  240. codex/static_root/assets/user-tab-Bt7BG8Ih.js.br +0 -0
  241. codex/static_root/assets/user-tab-Bt7BG8Ih.js.gz +0 -0
  242. codex/static_root/{manifest.8dff5f2fb15e.json → manifest.dbf5ed7a4b40.json} +254 -254
  243. codex/static_root/manifest.dbf5ed7a4b40.json.br +0 -0
  244. codex/static_root/manifest.dbf5ed7a4b40.json.gz +0 -0
  245. codex/static_root/manifest.json +254 -254
  246. codex/static_root/manifest.json.br +0 -0
  247. codex/static_root/manifest.json.gz +0 -0
  248. codex/static_root/staticfiles.json +1 -1
  249. codex/views/admin/tasks.py +1 -2
  250. codex/views/bookmark.py +1 -1
  251. codex/views/browser/annotate/card.py +14 -0
  252. codex/views/browser/annotate/order.py +13 -9
  253. codex/views/browser/metadata/query_intersections.py +0 -2
  254. codex/views/timezone.py +2 -14
  255. {codex-1.7.0a1.dist-info → codex-1.7.1.dist-info}/METADATA +3 -6
  256. {codex-1.7.0a1.dist-info → codex-1.7.1.dist-info}/RECORD +259 -259
  257. codex/static_root/assets/VCheckbox-B38iL9f_.81d9c00753e7.js.br +0 -0
  258. codex/static_root/assets/VCheckbox-B38iL9f_.81d9c00753e7.js.gz +0 -0
  259. codex/static_root/assets/VCheckbox-B38iL9f_.js.br +0 -0
  260. codex/static_root/assets/VCheckbox-B38iL9f_.js.gz +0 -0
  261. codex/static_root/assets/VCheckboxBtn-BbNnqvzj.aa7fa886f86a.js.br +0 -0
  262. codex/static_root/assets/VCheckboxBtn-BbNnqvzj.aa7fa886f86a.js.gz +0 -0
  263. codex/static_root/assets/VCheckboxBtn-BbNnqvzj.js.br +0 -0
  264. codex/static_root/assets/VCheckboxBtn-BbNnqvzj.js.gz +0 -0
  265. codex/static_root/assets/VCombobox-BaV3XhIr.bf0c945d80a9.js.br +0 -0
  266. codex/static_root/assets/VCombobox-BaV3XhIr.bf0c945d80a9.js.gz +0 -0
  267. codex/static_root/assets/VCombobox-BaV3XhIr.js.br +0 -0
  268. codex/static_root/assets/VCombobox-BaV3XhIr.js.gz +0 -0
  269. codex/static_root/assets/VDialog-DJR54d5g.9d6a52f62db3.js.br +0 -0
  270. codex/static_root/assets/VDialog-DJR54d5g.9d6a52f62db3.js.gz +0 -0
  271. codex/static_root/assets/VDialog-DJR54d5g.js.br +0 -0
  272. codex/static_root/assets/VDialog-DJR54d5g.js.gz +0 -0
  273. codex/static_root/assets/VExpansionPanels-CJWqDA9d.acf5acdb3a81.js.br +0 -0
  274. codex/static_root/assets/VExpansionPanels-CJWqDA9d.acf5acdb3a81.js.gz +0 -0
  275. codex/static_root/assets/VExpansionPanels-CJWqDA9d.js.br +0 -0
  276. codex/static_root/assets/VExpansionPanels-CJWqDA9d.js.gz +0 -0
  277. codex/static_root/assets/VRadioGroup-BFLE3yCT.8b78cefe4206.js.br +0 -0
  278. codex/static_root/assets/VRadioGroup-BFLE3yCT.8b78cefe4206.js.gz +0 -0
  279. codex/static_root/assets/VRadioGroup-BFLE3yCT.js.br +0 -0
  280. codex/static_root/assets/VRadioGroup-BFLE3yCT.js.gz +0 -0
  281. codex/static_root/assets/VSelect-Dvsi19pi.6d38dc99e0a8.js.br +0 -0
  282. codex/static_root/assets/VSelect-Dvsi19pi.6d38dc99e0a8.js.gz +0 -0
  283. codex/static_root/assets/VSelect-Dvsi19pi.js.br +0 -0
  284. codex/static_root/assets/VSelect-Dvsi19pi.js.gz +0 -0
  285. codex/static_root/assets/VSelectionControl-BioGLzkQ.106c3be4b6d4.js.br +0 -0
  286. codex/static_root/assets/VSelectionControl-BioGLzkQ.106c3be4b6d4.js.gz +0 -0
  287. codex/static_root/assets/VSelectionControl-BioGLzkQ.js.br +0 -0
  288. codex/static_root/assets/VSelectionControl-BioGLzkQ.js.gz +0 -0
  289. codex/static_root/assets/VSlideGroup-CFkaPBuS.1d168fc87687.js.br +0 -0
  290. codex/static_root/assets/VSlideGroup-CFkaPBuS.1d168fc87687.js.gz +0 -0
  291. codex/static_root/assets/VSlideGroup-CFkaPBuS.js.br +0 -0
  292. codex/static_root/assets/VSlideGroup-CFkaPBuS.js.gz +0 -0
  293. codex/static_root/assets/VTable-B7x3Oih2.d0010dab39ce.js.br +0 -0
  294. codex/static_root/assets/VTable-B7x3Oih2.d0010dab39ce.js.gz +0 -0
  295. codex/static_root/assets/VTable-B7x3Oih2.js.br +0 -0
  296. codex/static_root/assets/VTable-B7x3Oih2.js.gz +0 -0
  297. codex/static_root/assets/VTextField-rsRdtAxl.488a06f530fe.js.br +0 -0
  298. codex/static_root/assets/VTextField-rsRdtAxl.488a06f530fe.js.gz +0 -0
  299. codex/static_root/assets/VTextField-rsRdtAxl.js.br +0 -0
  300. codex/static_root/assets/VTextField-rsRdtAxl.js.gz +0 -0
  301. codex/static_root/assets/VWindowItem-CibnlNHs.75a48ded87d5.js.br +0 -0
  302. codex/static_root/assets/VWindowItem-CibnlNHs.75a48ded87d5.js.gz +0 -0
  303. codex/static_root/assets/VWindowItem-CibnlNHs.js.br +0 -0
  304. codex/static_root/assets/VWindowItem-CibnlNHs.js.gz +0 -0
  305. codex/static_root/assets/admin-CaVmJ-fa.251f5d3cc755.js.br +0 -0
  306. codex/static_root/assets/admin-CaVmJ-fa.251f5d3cc755.js.gz +0 -0
  307. codex/static_root/assets/admin-CaVmJ-fa.js.br +0 -0
  308. codex/static_root/assets/admin-CaVmJ-fa.js.gz +0 -0
  309. codex/static_root/assets/admin-menu-Cb7A0Ilo.ddf1e9339257.js.br +0 -0
  310. codex/static_root/assets/admin-menu-Cb7A0Ilo.ddf1e9339257.js.gz +0 -0
  311. codex/static_root/assets/admin-menu-Cb7A0Ilo.js.br +0 -0
  312. codex/static_root/assets/admin-menu-Cb7A0Ilo.js.gz +0 -0
  313. codex/static_root/assets/admin-settings-button-progress-DID-drll.979420762aea.js.br +0 -0
  314. codex/static_root/assets/admin-settings-button-progress-DID-drll.979420762aea.js.gz +0 -0
  315. codex/static_root/assets/admin-settings-button-progress-DID-drll.js.br +0 -0
  316. codex/static_root/assets/admin-settings-button-progress-DID-drll.js.gz +0 -0
  317. codex/static_root/assets/browser-Br5CorL4.6e2a416309d5.css +0 -1
  318. codex/static_root/assets/browser-Br5CorL4.6e2a416309d5.css.br +0 -0
  319. codex/static_root/assets/browser-Br5CorL4.6e2a416309d5.css.gz +0 -0
  320. codex/static_root/assets/browser-Br5CorL4.css +0 -1
  321. codex/static_root/assets/browser-Br5CorL4.css.br +0 -0
  322. codex/static_root/assets/browser-Br5CorL4.css.gz +0 -0
  323. codex/static_root/assets/browser-xxQTUEuu.1686c20dc492.js +0 -1
  324. codex/static_root/assets/browser-xxQTUEuu.1686c20dc492.js.br +0 -0
  325. codex/static_root/assets/browser-xxQTUEuu.1686c20dc492.js.gz +0 -0
  326. codex/static_root/assets/browser-xxQTUEuu.js +0 -1
  327. codex/static_root/assets/browser-xxQTUEuu.js.br +0 -0
  328. codex/static_root/assets/browser-xxQTUEuu.js.gz +0 -0
  329. codex/static_root/assets/change-password-dialog-DXY2Xg9k.4a7ca6108810.js.br +0 -0
  330. codex/static_root/assets/change-password-dialog-DXY2Xg9k.4a7ca6108810.js.gz +0 -0
  331. codex/static_root/assets/change-password-dialog-DXY2Xg9k.js.br +0 -0
  332. codex/static_root/assets/change-password-dialog-DXY2Xg9k.js.gz +0 -0
  333. codex/static_root/assets/confirm-dialog-BEVEU-kA.281b6e877fb5.js.br +0 -0
  334. codex/static_root/assets/confirm-dialog-BEVEU-kA.281b6e877fb5.js.gz +0 -0
  335. codex/static_root/assets/confirm-dialog-BEVEU-kA.js.br +0 -0
  336. codex/static_root/assets/confirm-dialog-BEVEU-kA.js.gz +0 -0
  337. codex/static_root/assets/datetime-column-DhrZEHwa.80e95aef7bdb.js.br +0 -1
  338. codex/static_root/assets/datetime-column-DhrZEHwa.80e95aef7bdb.js.gz +0 -0
  339. codex/static_root/assets/datetime-column-DhrZEHwa.js.br +0 -1
  340. codex/static_root/assets/datetime-column-DhrZEHwa.js.gz +0 -0
  341. codex/static_root/assets/filter-BJ7TmFiU.3cefe2d609c7.js.br +0 -0
  342. codex/static_root/assets/filter-BJ7TmFiU.3cefe2d609c7.js.gz +0 -0
  343. codex/static_root/assets/filter-BJ7TmFiU.js.br +0 -0
  344. codex/static_root/assets/filter-BJ7TmFiU.js.gz +0 -0
  345. codex/static_root/assets/flag-tab-AJj0sesB.2ab1be15d10f.js.br +0 -0
  346. codex/static_root/assets/flag-tab-AJj0sesB.2ab1be15d10f.js.gz +0 -0
  347. codex/static_root/assets/flag-tab-AJj0sesB.js.br +0 -0
  348. codex/static_root/assets/flag-tab-AJj0sesB.js.gz +0 -0
  349. codex/static_root/assets/group-tab-DuxOH4Hn.8ac96cfe7c43.js.br +0 -0
  350. codex/static_root/assets/group-tab-DuxOH4Hn.8ac96cfe7c43.js.gz +0 -0
  351. codex/static_root/assets/group-tab-DuxOH4Hn.js.br +0 -0
  352. codex/static_root/assets/group-tab-DuxOH4Hn.js.gz +0 -0
  353. codex/static_root/assets/http-error-DIeFpbQV.086e1dd09555.js.br +0 -0
  354. codex/static_root/assets/http-error-DIeFpbQV.086e1dd09555.js.gz +0 -0
  355. codex/static_root/assets/http-error-DIeFpbQV.js.br +0 -0
  356. codex/static_root/assets/http-error-DIeFpbQV.js.gz +0 -0
  357. codex/static_root/assets/index-MN9BB_He.201e30aa00ef.js.br +0 -0
  358. codex/static_root/assets/index-MN9BB_He.201e30aa00ef.js.gz +0 -0
  359. codex/static_root/assets/index-MN9BB_He.js.br +0 -0
  360. codex/static_root/assets/index-MN9BB_He.js.gz +0 -0
  361. codex/static_root/assets/library-tab-jpeUUWzV.70dae13f6dab.js.br +0 -0
  362. codex/static_root/assets/library-tab-jpeUUWzV.70dae13f6dab.js.gz +0 -0
  363. codex/static_root/assets/library-tab-jpeUUWzV.js.br +0 -0
  364. codex/static_root/assets/library-tab-jpeUUWzV.js.gz +0 -0
  365. codex/static_root/assets/main-Cs7q8tob.86ef2567544d.js.br +0 -0
  366. codex/static_root/assets/main-Cs7q8tob.86ef2567544d.js.gz +0 -0
  367. codex/static_root/assets/main-Cs7q8tob.js.br +0 -0
  368. codex/static_root/assets/main-Cs7q8tob.js.gz +0 -0
  369. codex/static_root/assets/pager-full-pdf-D_ecZhu-.ff93ca6c55e0.js +0 -1
  370. codex/static_root/assets/pager-full-pdf-D_ecZhu-.ff93ca6c55e0.js.br +0 -0
  371. codex/static_root/assets/pager-full-pdf-D_ecZhu-.ff93ca6c55e0.js.gz +0 -0
  372. codex/static_root/assets/pager-full-pdf-D_ecZhu-.js +0 -1
  373. codex/static_root/assets/pager-full-pdf-D_ecZhu-.js.br +0 -0
  374. codex/static_root/assets/pager-full-pdf-D_ecZhu-.js.gz +0 -0
  375. codex/static_root/assets/pagination-toolbar-yeU7sPiY.ce0751d6009d.js.br +0 -0
  376. codex/static_root/assets/pagination-toolbar-yeU7sPiY.ce0751d6009d.js.gz +0 -0
  377. codex/static_root/assets/pagination-toolbar-yeU7sPiY.js.br +0 -0
  378. codex/static_root/assets/pagination-toolbar-yeU7sPiY.js.gz +0 -0
  379. codex/static_root/assets/pdf-doc-Czi9tnhD.4d4b8b7ff5d7.js.br +0 -0
  380. codex/static_root/assets/pdf-doc-Czi9tnhD.4d4b8b7ff5d7.js.gz +0 -0
  381. codex/static_root/assets/pdf-doc-Czi9tnhD.js.br +0 -0
  382. codex/static_root/assets/pdf-doc-Czi9tnhD.js.gz +0 -0
  383. codex/static_root/assets/reader-DQKMY8MS.d9d3451f2cff.js +0 -2
  384. codex/static_root/assets/reader-DQKMY8MS.d9d3451f2cff.js.br +0 -0
  385. codex/static_root/assets/reader-DQKMY8MS.d9d3451f2cff.js.gz +0 -0
  386. codex/static_root/assets/reader-DQKMY8MS.js +0 -2
  387. codex/static_root/assets/reader-DQKMY8MS.js.br +0 -0
  388. codex/static_root/assets/reader-DQKMY8MS.js.gz +0 -0
  389. codex/static_root/assets/reader-OpKdTZ_B.css.br +0 -0
  390. codex/static_root/assets/reader-OpKdTZ_B.css.gz +0 -0
  391. codex/static_root/assets/reader-OpKdTZ_B.ebd1512b7014.css.br +0 -0
  392. codex/static_root/assets/reader-OpKdTZ_B.ebd1512b7014.css.gz +0 -0
  393. codex/static_root/assets/relation-chips-CFH0Xf78.62ded2739a22.js.br +0 -0
  394. codex/static_root/assets/relation-chips-CFH0Xf78.62ded2739a22.js.gz +0 -0
  395. codex/static_root/assets/relation-chips-CFH0Xf78.js.br +0 -0
  396. codex/static_root/assets/relation-chips-CFH0Xf78.js.gz +0 -0
  397. codex/static_root/assets/settings-drawer-DbOztp2R.b6f981108782.js.br +0 -0
  398. codex/static_root/assets/settings-drawer-DbOztp2R.b6f981108782.js.gz +0 -0
  399. codex/static_root/assets/settings-drawer-DbOztp2R.js.br +0 -0
  400. codex/static_root/assets/settings-drawer-DbOztp2R.js.gz +0 -0
  401. codex/static_root/assets/stats-tab-DWktIwEj.42666baa0d93.js.br +0 -0
  402. codex/static_root/assets/stats-tab-DWktIwEj.42666baa0d93.js.gz +0 -0
  403. codex/static_root/assets/stats-tab-DWktIwEj.js.br +0 -0
  404. codex/static_root/assets/stats-tab-DWktIwEj.js.gz +0 -0
  405. codex/static_root/assets/task-tab-BtTtKJP6.421692e51e82.js +0 -1
  406. codex/static_root/assets/task-tab-BtTtKJP6.421692e51e82.js.br +0 -0
  407. codex/static_root/assets/task-tab-BtTtKJP6.421692e51e82.js.gz +0 -0
  408. codex/static_root/assets/task-tab-BtTtKJP6.js +0 -1
  409. codex/static_root/assets/task-tab-BtTtKJP6.js.br +0 -0
  410. codex/static_root/assets/task-tab-BtTtKJP6.js.gz +0 -0
  411. codex/static_root/assets/transition-A__CJ90w.970355913cb9.js.br +0 -0
  412. codex/static_root/assets/transition-A__CJ90w.970355913cb9.js.gz +0 -0
  413. codex/static_root/assets/transition-A__CJ90w.js.br +0 -0
  414. codex/static_root/assets/transition-A__CJ90w.js.gz +0 -0
  415. codex/static_root/assets/unauthorized-FF1nwDKt.b3d6255ddb7f.js.br +0 -0
  416. codex/static_root/assets/unauthorized-FF1nwDKt.b3d6255ddb7f.js.gz +0 -0
  417. codex/static_root/assets/unauthorized-FF1nwDKt.js.br +0 -0
  418. codex/static_root/assets/unauthorized-FF1nwDKt.js.gz +0 -0
  419. codex/static_root/assets/user-tab-RwMqZeSN.d4ed24177855.js.br +0 -0
  420. codex/static_root/assets/user-tab-RwMqZeSN.d4ed24177855.js.gz +0 -0
  421. codex/static_root/assets/user-tab-RwMqZeSN.js.br +0 -0
  422. codex/static_root/assets/user-tab-RwMqZeSN.js.gz +0 -0
  423. codex/static_root/manifest.8dff5f2fb15e.json.br +0 -0
  424. codex/static_root/manifest.8dff5f2fb15e.json.gz +0 -0
  425. {codex-1.7.0a1.dist-info → codex-1.7.1.dist-info}/LICENSE +0 -0
  426. {codex-1.7.0a1.dist-info → codex-1.7.1.dist-info}/WHEEL +0 -0
  427. {codex-1.7.0a1.dist-info → codex-1.7.1.dist-info}/entry_points.txt +0 -0
Binary file
Binary file
@@ -1 +1 @@
1
- {"paths": {"rest_framework/docs/img/favicon.ico": "rest_framework/docs/img/favicon.5195b4d0f3eb.ico", "rest_framework/docs/img/grid.png": "rest_framework/docs/img/grid.a4b938cf382b.png", "rest_framework/docs/css/jquery.json-view.min.css": "rest_framework/docs/css/jquery.json-view.min.a2e6beeb6710.css", "rest_framework/docs/css/highlight.css": "rest_framework/docs/css/highlight.e0e4d973c6d7.css", "rest_framework/docs/css/base.css": "rest_framework/docs/css/base.e630f8f4990e.css", "rest_framework/docs/js/highlight.pack.js": "rest_framework/docs/js/highlight.pack.479b5f21dcba.js", "rest_framework/docs/js/api.js": "rest_framework/docs/js/api.18a5ba8a1bd8.js", "rest_framework/docs/js/jquery.json-view.min.js": "rest_framework/docs/js/jquery.json-view.min.b7c2d6981377.js", "rest_framework/fonts/glyphicons-halflings-regular.svg": "rest_framework/fonts/glyphicons-halflings-regular.08eda92397ae.svg", "rest_framework/fonts/glyphicons-halflings-regular.woff": "rest_framework/fonts/glyphicons-halflings-regular.fa2772327f55.woff", "rest_framework/fonts/fontawesome-webfont.ttf": "rest_framework/fonts/fontawesome-webfont.dcb26c7239d8.ttf", "rest_framework/fonts/glyphicons-halflings-regular.eot": "rest_framework/fonts/glyphicons-halflings-regular.f4769f9bdb74.eot", "rest_framework/fonts/fontawesome-webfont.svg": "rest_framework/fonts/fontawesome-webfont.83e37a11f9d7.svg", "rest_framework/fonts/glyphicons-halflings-regular.ttf": "rest_framework/fonts/glyphicons-halflings-regular.e18bbf611f2a.ttf", "rest_framework/fonts/fontawesome-webfont.eot": "rest_framework/fonts/fontawesome-webfont.8b27bc96115c.eot", "rest_framework/fonts/fontawesome-webfont.woff": "rest_framework/fonts/fontawesome-webfont.3293616ec0c6.woff", "rest_framework/fonts/glyphicons-halflings-regular.woff2": "rest_framework/fonts/glyphicons-halflings-regular.448c34a56d69.woff2", "rest_framework/img/glyphicons-halflings.png": "rest_framework/img/glyphicons-halflings.90233c9067e9.png", "rest_framework/img/glyphicons-halflings-white.png": "rest_framework/img/glyphicons-halflings-white.9bbc6e960299.png", "rest_framework/img/grid.png": "rest_framework/img/grid.a4b938cf382b.png", "rest_framework/css/bootstrap.min.css": "rest_framework/css/bootstrap.min.f17d4516b026.css", "rest_framework/css/prettify.css": "rest_framework/css/prettify.a987f72342ee.css", "rest_framework/css/bootstrap-theme.min.css": "rest_framework/css/bootstrap-theme.min.1d4b05b397c3.css", "rest_framework/css/font-awesome-4.0.3.css": "rest_framework/css/font-awesome-4.0.3.c1e1ea213abf.css", "rest_framework/css/bootstrap-tweaks.css": "rest_framework/css/bootstrap-tweaks.ee4ee6acf9eb.css", "rest_framework/css/default.css": "rest_framework/css/default.789dfb5732d7.css", "rest_framework/css/bootstrap-theme.min.css.map": "rest_framework/css/bootstrap-theme.min.css.51806092cc05.map", "rest_framework/css/bootstrap.min.css.map": "rest_framework/css/bootstrap.min.css.cafbda9c0e9e.map", "rest_framework/js/ajax-form.js": "rest_framework/js/ajax-form.4e1cdcb7acab.js", "rest_framework/js/prettify-min.js": "rest_framework/js/prettify-min.709bfcc456c6.js", "rest_framework/js/default.js": "rest_framework/js/default.5b08897dbdc3.js", "rest_framework/js/load-ajax-form.js": "rest_framework/js/load-ajax-form.8cdb3a9f3466.js", "rest_framework/js/coreapi-0.1.1.js": "rest_framework/js/coreapi-0.1.1.8851fb9336c9.js", "rest_framework/js/csrf.js": "rest_framework/js/csrf.455080a7b2ce.js", "rest_framework/js/jquery-3.7.1.min.js": "rest_framework/js/jquery-3.7.1.min.2c872dbe60f4.js", "rest_framework/js/bootstrap.min.js": "rest_framework/js/bootstrap.min.2f34b630ffe3.js", "img/story-arc.svg": "img/story-arc.ca10014355ef.svg", "img/logo-maskable.svg": "img/logo-maskable.8f7de7f1c6a8.svg", "img/folder.svg": "img/folder.f28936a3701d.svg", "img/missing-cover-165.webp": "img/missing-cover-165.0743171f2148.webp", "img/missing-cover.svg": "img/missing-cover.ddb038cc2c56.svg", "img/publisher.svg": "img/publisher.82d378fcd601.svg", "img/logo-32.webp": "img/logo-32.5688944495bf.webp", "img/imprint.svg": "img/imprint.7c2adebb76d6.svg", "img/logo.svg": "img/logo.0f5344a028ca.svg", "img/volume.svg": "img/volume.814e4c79461a.svg", "img/logo-maskable-180.webp": "img/logo-maskable-180.c58d966aa64e.webp", "img/series.svg": "img/series.ec8a889b8f95.svg", "pwa/offline.html": "pwa/offline.7bfaf9f94bf9.html", "assets/main-Cs7q8tob.js": "assets/main-Cs7q8tob.86ef2567544d.js", "assets/main-BZ73p_WW.css": "assets/main-BZ73p_WW.d529e8b3f52a.css", "assets/settings-drawer-DbOztp2R.js": "assets/settings-drawer-DbOztp2R.b6f981108782.js", "assets/VSelect-DLu8bpcs.css": "assets/VSelect-DLu8bpcs.98bdcf35411c.css", "assets/VDialog-DJR54d5g.js": "assets/VDialog-DJR54d5g.9d6a52f62db3.js", "assets/transition-5LRFTPo5.css": "assets/transition-5LRFTPo5.3d726f9bbcb0.css", "assets/library-tab-jpeUUWzV.js": "assets/library-tab-jpeUUWzV.70dae13f6dab.js", "assets/browser-xxQTUEuu.js": "assets/browser-xxQTUEuu.1686c20dc492.js", "assets/stats-tab-DWktIwEj.js": "assets/stats-tab-DWktIwEj.42666baa0d93.js", "assets/datetime-column-DeCthByU.css": "assets/datetime-column-DeCthByU.1f3bf499e063.css", "assets/unauthorized-BjhIc97q.css": "assets/unauthorized-BjhIc97q.728511c92cd0.css", "assets/VTextField-BnCEPZIq.css": "assets/VTextField-BnCEPZIq.b0c32b2c0b14.css", "assets/task-tab--cXi48kg.css": "assets/task-tab--cXi48kg.5dfd6890a1c2.css", "assets/settings-drawer-DKncO_vX.css": "assets/settings-drawer-DKncO_vX.0a2cd24cd904.css", "assets/library-tab-Wew8YOLv.css": "assets/library-tab-Wew8YOLv.0c1780a6b68e.css", "assets/admin-settings-button-progress-DUUQfVsZ.css": "assets/admin-settings-button-progress-DUUQfVsZ.2548c49a853e.css", "assets/VRadioGroup-BFLE3yCT.js": "assets/VRadioGroup-BFLE3yCT.8b78cefe4206.js", "assets/admin-menu-B9bzD6hV.css": "assets/admin-menu-B9bzD6hV.c13b7df2ff57.css", "assets/flag-tab-CqWovuBu.css": "assets/flag-tab-CqWovuBu.4dfc6b251e85.css", "assets/index-CL_6g4tJ.css": "assets/index-CL_6g4tJ.523d7b3d350f.css", "assets/VExpansionPanels-CJWqDA9d.js": "assets/VExpansionPanels-CJWqDA9d.acf5acdb3a81.js", "assets/relation-chips-ByfWwuQc.css": "assets/relation-chips-ByfWwuQc.01269a188e01.css", "assets/materialdesignicons-webfont-PXm3-2wK.woff": "assets/materialdesignicons-webfont-PXm3-2wK.026b7ac9c43c.woff", "assets/confirm-dialog-B7w6z2rf.css": "assets/confirm-dialog-B7w6z2rf.472011c06253.css", "assets/VSlideGroup-CFkaPBuS.js": "assets/VSlideGroup-CFkaPBuS.1d168fc87687.js", "assets/group-tab-DkIN1Heu.css": "assets/group-tab-DkIN1Heu.948e907b1e6b.css", "assets/unauthorized-FF1nwDKt.js": "assets/unauthorized-FF1nwDKt.b3d6255ddb7f.js", "assets/group-tab-DuxOH4Hn.js": "assets/group-tab-DuxOH4Hn.8ac96cfe7c43.js", "assets/confirm-dialog-BEVEU-kA.js": "assets/confirm-dialog-BEVEU-kA.281b6e877fb5.js", "assets/pagination-toolbar-DGrxp2OD.css": "assets/pagination-toolbar-DGrxp2OD.f960a624f04f.css", "assets/stats-tab-BAYTqQNg.css": "assets/stats-tab-BAYTqQNg.5f715428c394.css", "assets/materialdesignicons-webfont-B7mPwVP_.ttf": "assets/materialdesignicons-webfont-B7mPwVP_.6e435534bd35.ttf", "assets/VCombobox-bwEYrXCg.css": "assets/VCombobox-bwEYrXCg.9f25a34994e2.css", "assets/VSelect-Dvsi19pi.js": "assets/VSelect-Dvsi19pi.6d38dc99e0a8.js", "assets/VDialog-CSvrKKb2.css": "assets/VDialog-CSvrKKb2.fd4d50904b17.css", "assets/VSlideGroup-BtXPhMOT.css": "assets/VSlideGroup-BtXPhMOT.830f136ffd41.css", "assets/VCombobox-BaV3XhIr.js": "assets/VCombobox-BaV3XhIr.bf0c945d80a9.js", "assets/VTextField-rsRdtAxl.js": "assets/VTextField-rsRdtAxl.488a06f530fe.js", "assets/VTable-Y5Sc3hJd.css": "assets/VTable-Y5Sc3hJd.c36f0a6a30cf.css", "assets/VExpansionPanels-6G1AUajL.css": "assets/VExpansionPanels-6G1AUajL.5b17872981df.css", "assets/http-error-DIeFpbQV.js": "assets/http-error-DIeFpbQV.086e1dd09555.js", "assets/materialdesignicons-webfont-CSr8KVlo.eot": "assets/materialdesignicons-webfont-CSr8KVlo.8ced95a05e3c.eot", "assets/transition-A__CJ90w.js": "assets/transition-A__CJ90w.970355913cb9.js", "assets/reader-DQKMY8MS.js": "assets/reader-DQKMY8MS.d9d3451f2cff.js", "assets/VSelectionControl-CiViEYoC.css": "assets/VSelectionControl-CiViEYoC.c77bb19a4a06.css", "assets/copy-to-clipboard-DoUvDJVx.js": "assets/copy-to-clipboard-DoUvDJVx.bec27f144aca.js", "assets/VCheckbox-B38iL9f_.js": "assets/VCheckbox-B38iL9f_.81d9c00753e7.js", "assets/relation-chips-CFH0Xf78.js": "assets/relation-chips-CFH0Xf78.62ded2739a22.js", "assets/filter-BJ7TmFiU.js": "assets/filter-BJ7TmFiU.3cefe2d609c7.js", "assets/http-error-DKulXuTl.css": "assets/http-error-DKulXuTl.95e42988d5d5.css", "assets/VRadioGroup-i2qP9Wu9.css": "assets/VRadioGroup-i2qP9Wu9.8e3741381961.css", "assets/VCheckboxBtn-BbNnqvzj.js": "assets/VCheckboxBtn-BbNnqvzj.aa7fa886f86a.js", "assets/VWindowItem-ByIod57Y.css": "assets/VWindowItem-ByIod57Y.f7fb19752bf3.css", "assets/materialdesignicons-webfont-Dp5v-WZN.woff2": "assets/materialdesignicons-webfont-Dp5v-WZN.1d7bcee1b302.woff2", "assets/VCheckbox-CMKdyl0R.css": "assets/VCheckbox-CMKdyl0R.016ed8d222c4.css", "assets/change-password-dialog-DrIXdKUC.css": "assets/change-password-dialog-DrIXdKUC.217574b45b02.css", "assets/VWindowItem-CibnlNHs.js": "assets/VWindowItem-CibnlNHs.75a48ded87d5.js", "assets/flag-tab-AJj0sesB.js": "assets/flag-tab-AJj0sesB.2ab1be15d10f.js", "assets/pagination-toolbar-yeU7sPiY.js": "assets/pagination-toolbar-yeU7sPiY.ce0751d6009d.js", "assets/admin-DJ7pIXDQ.css": "assets/admin-DJ7pIXDQ.e2a77af73ef2.css", "assets/admin-CaVmJ-fa.js": "assets/admin-CaVmJ-fa.251f5d3cc755.js", "assets/user-tab-RwMqZeSN.js": "assets/user-tab-RwMqZeSN.d4ed24177855.js", "assets/pager-full-pdf-D_ecZhu-.js": "assets/pager-full-pdf-D_ecZhu-.ff93ca6c55e0.js", "assets/pdf-doc-Czi9tnhD.js": "assets/pdf-doc-Czi9tnhD.4d4b8b7ff5d7.js", "assets/task-tab-BtTtKJP6.js": "assets/task-tab-BtTtKJP6.421692e51e82.js", "assets/index-MN9BB_He.js": "assets/index-MN9BB_He.201e30aa00ef.js", "assets/change-password-dialog-DXY2Xg9k.js": "assets/change-password-dialog-DXY2Xg9k.4a7ca6108810.js", "assets/admin-menu-Cb7A0Ilo.js": "assets/admin-menu-Cb7A0Ilo.ddf1e9339257.js", "assets/VSelectionControl-BioGLzkQ.js": "assets/VSelectionControl-BioGLzkQ.106c3be4b6d4.js", "assets/reader-OpKdTZ_B.css": "assets/reader-OpKdTZ_B.ebd1512b7014.css", "assets/datetime-column-DhrZEHwa.js": "assets/datetime-column-DhrZEHwa.80e95aef7bdb.js", "assets/pdf-doc-CG5-AZ2M.css": "assets/pdf-doc-CG5-AZ2M.b94aac7e3313.css", "assets/browser-Br5CorL4.css": "assets/browser-Br5CorL4.6e2a416309d5.css", "assets/admin-settings-button-progress-DID-drll.js": "assets/admin-settings-button-progress-DID-drll.979420762aea.js", "assets/VTable-B7x3Oih2.js": "assets/VTable-B7x3Oih2.d0010dab39ce.js", "robots.txt": "robots.b6216d61c03e.txt", "manifest.json": "manifest.8dff5f2fb15e.json"}, "version": "1.1", "hash": "3a54302f8744"}
1
+ {"paths": {"rest_framework/docs/img/favicon.ico": "rest_framework/docs/img/favicon.5195b4d0f3eb.ico", "rest_framework/docs/img/grid.png": "rest_framework/docs/img/grid.a4b938cf382b.png", "rest_framework/docs/css/jquery.json-view.min.css": "rest_framework/docs/css/jquery.json-view.min.a2e6beeb6710.css", "rest_framework/docs/css/highlight.css": "rest_framework/docs/css/highlight.e0e4d973c6d7.css", "rest_framework/docs/css/base.css": "rest_framework/docs/css/base.e630f8f4990e.css", "rest_framework/docs/js/highlight.pack.js": "rest_framework/docs/js/highlight.pack.479b5f21dcba.js", "rest_framework/docs/js/api.js": "rest_framework/docs/js/api.18a5ba8a1bd8.js", "rest_framework/docs/js/jquery.json-view.min.js": "rest_framework/docs/js/jquery.json-view.min.b7c2d6981377.js", "rest_framework/fonts/glyphicons-halflings-regular.svg": "rest_framework/fonts/glyphicons-halflings-regular.08eda92397ae.svg", "rest_framework/fonts/glyphicons-halflings-regular.woff": "rest_framework/fonts/glyphicons-halflings-regular.fa2772327f55.woff", "rest_framework/fonts/fontawesome-webfont.ttf": "rest_framework/fonts/fontawesome-webfont.dcb26c7239d8.ttf", "rest_framework/fonts/glyphicons-halflings-regular.eot": "rest_framework/fonts/glyphicons-halflings-regular.f4769f9bdb74.eot", "rest_framework/fonts/fontawesome-webfont.svg": "rest_framework/fonts/fontawesome-webfont.83e37a11f9d7.svg", "rest_framework/fonts/glyphicons-halflings-regular.ttf": "rest_framework/fonts/glyphicons-halflings-regular.e18bbf611f2a.ttf", "rest_framework/fonts/fontawesome-webfont.eot": "rest_framework/fonts/fontawesome-webfont.8b27bc96115c.eot", "rest_framework/fonts/fontawesome-webfont.woff": "rest_framework/fonts/fontawesome-webfont.3293616ec0c6.woff", "rest_framework/fonts/glyphicons-halflings-regular.woff2": "rest_framework/fonts/glyphicons-halflings-regular.448c34a56d69.woff2", "rest_framework/img/glyphicons-halflings.png": "rest_framework/img/glyphicons-halflings.90233c9067e9.png", "rest_framework/img/glyphicons-halflings-white.png": "rest_framework/img/glyphicons-halflings-white.9bbc6e960299.png", "rest_framework/img/grid.png": "rest_framework/img/grid.a4b938cf382b.png", "rest_framework/css/bootstrap.min.css": "rest_framework/css/bootstrap.min.f17d4516b026.css", "rest_framework/css/prettify.css": "rest_framework/css/prettify.a987f72342ee.css", "rest_framework/css/bootstrap-theme.min.css": "rest_framework/css/bootstrap-theme.min.1d4b05b397c3.css", "rest_framework/css/font-awesome-4.0.3.css": "rest_framework/css/font-awesome-4.0.3.c1e1ea213abf.css", "rest_framework/css/bootstrap-tweaks.css": "rest_framework/css/bootstrap-tweaks.ee4ee6acf9eb.css", "rest_framework/css/default.css": "rest_framework/css/default.789dfb5732d7.css", "rest_framework/css/bootstrap-theme.min.css.map": "rest_framework/css/bootstrap-theme.min.css.51806092cc05.map", "rest_framework/css/bootstrap.min.css.map": "rest_framework/css/bootstrap.min.css.cafbda9c0e9e.map", "rest_framework/js/ajax-form.js": "rest_framework/js/ajax-form.4e1cdcb7acab.js", "rest_framework/js/prettify-min.js": "rest_framework/js/prettify-min.709bfcc456c6.js", "rest_framework/js/default.js": "rest_framework/js/default.5b08897dbdc3.js", "rest_framework/js/load-ajax-form.js": "rest_framework/js/load-ajax-form.8cdb3a9f3466.js", "rest_framework/js/coreapi-0.1.1.js": "rest_framework/js/coreapi-0.1.1.8851fb9336c9.js", "rest_framework/js/csrf.js": "rest_framework/js/csrf.455080a7b2ce.js", "rest_framework/js/jquery-3.7.1.min.js": "rest_framework/js/jquery-3.7.1.min.2c872dbe60f4.js", "rest_framework/js/bootstrap.min.js": "rest_framework/js/bootstrap.min.2f34b630ffe3.js", "img/story-arc.svg": "img/story-arc.ca10014355ef.svg", "img/logo-maskable.svg": "img/logo-maskable.8f7de7f1c6a8.svg", "img/folder.svg": "img/folder.f28936a3701d.svg", "img/missing-cover-165.webp": "img/missing-cover-165.0743171f2148.webp", "img/missing-cover.svg": "img/missing-cover.ddb038cc2c56.svg", "img/publisher.svg": "img/publisher.82d378fcd601.svg", "img/logo-32.webp": "img/logo-32.5688944495bf.webp", "img/imprint.svg": "img/imprint.7c2adebb76d6.svg", "img/logo.svg": "img/logo.0f5344a028ca.svg", "img/volume.svg": "img/volume.814e4c79461a.svg", "img/logo-maskable-180.webp": "img/logo-maskable-180.c58d966aa64e.webp", "img/series.svg": "img/series.ec8a889b8f95.svg", "pwa/offline.html": "pwa/offline.7bfaf9f94bf9.html", "assets/pager-full-pdf-DpxPZAZR.js": "assets/pager-full-pdf-DpxPZAZR.ec23b0e50b95.js", "assets/main-BZ73p_WW.css": "assets/main-BZ73p_WW.d529e8b3f52a.css", "assets/VSelect-DLu8bpcs.css": "assets/VSelect-DLu8bpcs.98bdcf35411c.css", "assets/transition-5LRFTPo5.css": "assets/transition-5LRFTPo5.3d726f9bbcb0.css", "assets/http-error-DGFbgQC5.js": "assets/http-error-DGFbgQC5.da17e7b6d980.js", "assets/admin-settings-button-progress-DSOZWzf1.js": "assets/admin-settings-button-progress-DSOZWzf1.fad596375b9b.js", "assets/VDialog-BVHV10WD.js": "assets/VDialog-BVHV10WD.993b98f2be7f.js", "assets/VTextField-D7pt5iJ3.js": "assets/VTextField-D7pt5iJ3.c020691495b7.js", "assets/index-BI-1EK3Q.js": "assets/index-BI-1EK3Q.51e5dd220639.js", "assets/datetime-column-DeCthByU.css": "assets/datetime-column-DeCthByU.1f3bf499e063.css", "assets/unauthorized-BjhIc97q.css": "assets/unauthorized-BjhIc97q.728511c92cd0.css", "assets/VTextField-BnCEPZIq.css": "assets/VTextField-BnCEPZIq.b0c32b2c0b14.css", "assets/browser-Dq-fQLJF.js": "assets/browser-Dq-fQLJF.2e88354a9574.js", "assets/task-tab--cXi48kg.css": "assets/task-tab--cXi48kg.5dfd6890a1c2.css", "assets/settings-drawer-DKncO_vX.css": "assets/settings-drawer-DKncO_vX.0a2cd24cd904.css", "assets/library-tab-Wew8YOLv.css": "assets/library-tab-Wew8YOLv.0c1780a6b68e.css", "assets/admin-settings-button-progress-DUUQfVsZ.css": "assets/admin-settings-button-progress-DUUQfVsZ.2548c49a853e.css", "assets/admin-menu-B9bzD6hV.css": "assets/admin-menu-B9bzD6hV.c13b7df2ff57.css", "assets/flag-tab-CqWovuBu.css": "assets/flag-tab-CqWovuBu.4dfc6b251e85.css", "assets/VWindowItem-CGBsUHpV.js": "assets/VWindowItem-CGBsUHpV.7c57d79cf74a.js", "assets/VCheckbox-Cf74Jfrq.js": "assets/VCheckbox-Cf74Jfrq.2fbb5106ef5a.js", "assets/index-CL_6g4tJ.css": "assets/index-CL_6g4tJ.523d7b3d350f.css", "assets/relation-chips-ByfWwuQc.css": "assets/relation-chips-ByfWwuQc.01269a188e01.css", "assets/pdf-doc-6j4uJzw7.js": "assets/pdf-doc-6j4uJzw7.59963079f1ec.js", "assets/VSlideGroup-ZRALPG67.js": "assets/VSlideGroup-ZRALPG67.9807cdc6b330.js", "assets/materialdesignicons-webfont-PXm3-2wK.woff": "assets/materialdesignicons-webfont-PXm3-2wK.026b7ac9c43c.woff", "assets/confirm-dialog-B7w6z2rf.css": "assets/confirm-dialog-B7w6z2rf.472011c06253.css", "assets/admin-menu-Dbt1Rajw.js": "assets/admin-menu-Dbt1Rajw.043fb778ba6c.js", "assets/group-tab-Cq4QjmHS.js": "assets/group-tab-Cq4QjmHS.a9d15dac0289.js", "assets/reader-DAyPkkSs.js": "assets/reader-DAyPkkSs.0f54806aed4b.js", "assets/datetime-column-BN2Ulei5.js": "assets/datetime-column-BN2Ulei5.a31061d3729c.js", "assets/group-tab-DkIN1Heu.css": "assets/group-tab-DkIN1Heu.948e907b1e6b.css", "assets/pagination-toolbar-Bz5nEUwa.js": "assets/pagination-toolbar-Bz5nEUwa.d01b9cf3ab5e.js", "assets/VCheckboxBtn-D5jbIiqO.js": "assets/VCheckboxBtn-D5jbIiqO.921713d268ba.js", "assets/pagination-toolbar-DGrxp2OD.css": "assets/pagination-toolbar-DGrxp2OD.f960a624f04f.css", "assets/stats-tab-BAYTqQNg.css": "assets/stats-tab-BAYTqQNg.5f715428c394.css", "assets/materialdesignicons-webfont-B7mPwVP_.ttf": "assets/materialdesignicons-webfont-B7mPwVP_.6e435534bd35.ttf", "assets/VCombobox-bwEYrXCg.css": "assets/VCombobox-bwEYrXCg.9f25a34994e2.css", "assets/VDialog-CSvrKKb2.css": "assets/VDialog-CSvrKKb2.fd4d50904b17.css", "assets/VSlideGroup-BtXPhMOT.css": "assets/VSlideGroup-BtXPhMOT.830f136ffd41.css", "assets/VTable-Y5Sc3hJd.css": "assets/VTable-Y5Sc3hJd.c36f0a6a30cf.css", "assets/VExpansionPanels-6G1AUajL.css": "assets/VExpansionPanels-6G1AUajL.5b17872981df.css", "assets/main-Ed96tESk.js": "assets/main-Ed96tESk.7777498eb960.js", "assets/browser-3Sm5qvA_.css": "assets/browser-3Sm5qvA_.188da1350ec3.css", "assets/materialdesignicons-webfont-CSr8KVlo.eot": "assets/materialdesignicons-webfont-CSr8KVlo.8ced95a05e3c.eot", "assets/VSelectionControl-CiViEYoC.css": "assets/VSelectionControl-CiViEYoC.c77bb19a4a06.css", "assets/copy-to-clipboard-DoUvDJVx.js": "assets/copy-to-clipboard-DoUvDJVx.bec27f144aca.js", "assets/VExpansionPanels-BLAGU-dj.js": "assets/VExpansionPanels-BLAGU-dj.e244f3902cf9.js", "assets/change-password-dialog-BaGA_bnX.js": "assets/change-password-dialog-BaGA_bnX.af8ea11b1579.js", "assets/reader-nD70BeEz.css": "assets/reader-nD70BeEz.06e85e73c391.css", "assets/http-error-DKulXuTl.css": "assets/http-error-DKulXuTl.95e42988d5d5.css", "assets/VTable-Ci8_04Au.js": "assets/VTable-Ci8_04Au.1382ab272e40.js", "assets/VRadioGroup-i2qP9Wu9.css": "assets/VRadioGroup-i2qP9Wu9.8e3741381961.css", "assets/VSelect-BTo1ZM8U.js": "assets/VSelect-BTo1ZM8U.ea4a7a7bbce9.js", "assets/settings-drawer-lRimDTyf.js": "assets/settings-drawer-lRimDTyf.054f1f057cee.js", "assets/VWindowItem-ByIod57Y.css": "assets/VWindowItem-ByIod57Y.f7fb19752bf3.css", "assets/VRadioGroup-Bnt5BbmK.js": "assets/VRadioGroup-Bnt5BbmK.826e1c2d9134.js", "assets/materialdesignicons-webfont-Dp5v-WZN.woff2": "assets/materialdesignicons-webfont-Dp5v-WZN.1d7bcee1b302.woff2", "assets/user-tab-Bt7BG8Ih.js": "assets/user-tab-Bt7BG8Ih.8f797a19b7ae.js", "assets/admin-BTXUbxw5.js": "assets/admin-BTXUbxw5.23e0d3602f29.js", "assets/VCheckbox-CMKdyl0R.css": "assets/VCheckbox-CMKdyl0R.016ed8d222c4.css", "assets/task-tab-CrRRKMNo.js": "assets/task-tab-CrRRKMNo.52cc73a5889d.js", "assets/change-password-dialog-DrIXdKUC.css": "assets/change-password-dialog-DrIXdKUC.217574b45b02.css", "assets/stats-tab-Cyli0TxY.js": "assets/stats-tab-Cyli0TxY.f9af7d3387d9.js", "assets/library-tab-woA1HyfN.js": "assets/library-tab-woA1HyfN.acfc4f327913.js", "assets/VSelectionControl-CrzLF2bD.js": "assets/VSelectionControl-CrzLF2bD.965af5336c62.js", "assets/flag-tab-C5NP3j6O.js": "assets/flag-tab-C5NP3j6O.1c692a00884d.js", "assets/admin-DJ7pIXDQ.css": "assets/admin-DJ7pIXDQ.e2a77af73ef2.css", "assets/unauthorized-IWC3QdqX.js": "assets/unauthorized-IWC3QdqX.1d5d2dafa046.js", "assets/relation-chips-DUOduJmS.js": "assets/relation-chips-DUOduJmS.8b39d35f8503.js", "assets/filter-CnO_WiBE.js": "assets/filter-CnO_WiBE.4044b9091aae.js", "assets/transition-CyIqQdeu.js": "assets/transition-CyIqQdeu.7496bae455dc.js", "assets/pdf-doc-CG5-AZ2M.css": "assets/pdf-doc-CG5-AZ2M.b94aac7e3313.css", "assets/VCombobox-Dq3Y5j2w.js": "assets/VCombobox-Dq3Y5j2w.8f4884677e5a.js", "assets/confirm-dialog-X14gSw1w.js": "assets/confirm-dialog-X14gSw1w.21504f7c1db4.js", "robots.txt": "robots.b6216d61c03e.txt", "manifest.json": "manifest.dbf5ed7a4b40.json"}, "version": "1.1", "hash": "4be480ae8526"}
@@ -73,8 +73,7 @@ _TASK_MAP = MappingProxyType(
73
73
  "db_vacuum": JanitorVacuumTask(),
74
74
  "db_backup": JanitorBackupTask(),
75
75
  "db_foreign_key_check": JanitorForeignKeyCheck(),
76
- "db_integrity_check_quick": JanitorIntegrityCheck(),
77
- "db_integrity_check_long": JanitorIntegrityCheck(True),
76
+ "db_integrity_check": JanitorIntegrityCheck(),
78
77
  "db_fts_integrity_check": JanitorFTSIntegrityCheck(),
79
78
  "db_fts_rebuild": JanitorFTSRebuildTask(),
80
79
  "watchdog_sync": WatchdogSyncTask(),
codex/views/bookmark.py CHANGED
@@ -66,5 +66,5 @@ class BookmarkView(AuthFilterGenericAPIView, BookmarkBaseView, BookmarkUpdate):
66
66
  pks = self.kwargs.get("pks")
67
67
  comic_filter = {rel: pks}
68
68
 
69
- self.update_bookmarks(auth_filter, comic_filter, updates)
69
+ self.update_bookmarks(auth_filter, comic_filter, updates, LOG)
70
70
  return Response()
@@ -3,6 +3,7 @@
3
3
  from types import MappingProxyType
4
4
 
5
5
  from django.db.models import (
6
+ F,
6
7
  Value,
7
8
  )
8
9
  from django.db.models.aggregates import Count
@@ -13,6 +14,7 @@ from codex.models.comic import Comic
13
14
  from codex.models.functions import JsonGroupArray
14
15
  from codex.models.groups import BrowserGroupModel, Imprint, Publisher, Series, Volume
15
16
  from codex.views.browser.annotate.bookmark import BrowserAnnotateBookmarkView
17
+ from codex.views.const import FOLDER_GROUP
16
18
 
17
19
  _GROUP_BY: MappingProxyType[type[BrowserGroupModel], str] = MappingProxyType(
18
20
  {Publisher: "sort_name", Imprint: "sort_name", Series: "sort_name", Volume: "name"}
@@ -48,6 +50,17 @@ class BrowserAnnotateCardView(BrowserAnnotateBookmarkView):
48
50
  value = "c" if qs.model is Comic else self.model_group # type: ignore
49
51
  return qs.annotate(group=Value(value, CharField(max_length=1)))
50
52
 
53
+ def _annotate_file_name(self, qs):
54
+ """Annotate the file name for folder view."""
55
+ group = self.kwargs.get("group")
56
+ if group != FOLDER_GROUP or qs.model is not Comic:
57
+ return qs
58
+ if self.order_key == "filename":
59
+ file_name = F("filename")
60
+ else:
61
+ file_name = self.get_filename_func(qs.model)
62
+ return qs.annotate(file_name=file_name)
63
+
51
64
  def annotate_card_aggregates(self, qs):
52
65
  """Annotate aggregates that appear the browser card."""
53
66
  if qs.model is Comic:
@@ -55,6 +68,7 @@ class BrowserAnnotateCardView(BrowserAnnotateBookmarkView):
55
68
  qs = self.annotate_order_value(qs)
56
69
  qs = self._annotate_group(qs)
57
70
  qs = self.annotate_group_names(qs)
71
+ qs = self._annotate_file_name(qs)
58
72
  qs = self._annotate_child_count(qs)
59
73
  qs = self.annotate_bookmarks(qs)
60
74
  qs = self.annotate_progress(qs)
@@ -123,6 +123,17 @@ class BrowserAnnotateOrderView(BrowserOrderByView, SharedAnnotationsMixin):
123
123
  self._comic_sort_names = tuple(sort_name_annotations.keys())
124
124
  return qs
125
125
 
126
+ def get_filename_func(self, model):
127
+ """Get the filename creation function."""
128
+ prefix = "" if model == Comic else self.rel_prefix
129
+ path_rel = prefix + "path"
130
+
131
+ return Right(
132
+ path_rel,
133
+ StrIndex(Reverse(F(path_rel)), Value(sep)) - 1, # type: ignore
134
+ output_field=CharField(),
135
+ )
136
+
126
137
  def _alias_filename(self, qs):
127
138
  """Calculate filename from path in the db."""
128
139
  if self.order_key != "filename":
@@ -130,15 +141,8 @@ class BrowserAnnotateOrderView(BrowserOrderByView, SharedAnnotationsMixin):
130
141
  if qs.model is Folder:
131
142
  filename = F("name")
132
143
  else:
133
- prefix = "" if qs.model == Comic else self.rel_prefix
134
- path_rel = prefix + "path"
135
- filename = self.order_agg_func(
136
- Right(
137
- path_rel,
138
- StrIndex(Reverse(F(path_rel)), Value(sep)) - 1, # type: ignore
139
- output_field=CharField(),
140
- )
141
- )
144
+ filename_func = self.get_filename_func(qs.model)
145
+ filename = self.order_agg_func(filename_func)
142
146
  return qs.alias(filename=filename)
143
147
 
144
148
  def _alias_story_arc_number(self, qs):
@@ -57,8 +57,6 @@ class MetadataQueryIntersectionsView(MetadataAnnotateView):
57
57
  qs = qs.group_by("name")
58
58
  qs = qs.annotate(ids=JsonGroupArray("id", distinct=True))
59
59
  qs = qs.values("ids", "name")
60
- if self.model is not Comic:
61
- qs = self.force_inner_joins(qs)
62
60
  groups[field_name] = qs
63
61
  return groups
64
62
 
codex/views/timezone.py CHANGED
@@ -4,7 +4,6 @@ from drf_spectacular.utils import extend_schema
4
4
  from rest_framework.response import Response
5
5
 
6
6
  from codex.logger.logging import get_logger
7
- from codex.models import UserActive
8
7
  from codex.serializers.auth import TimezoneSerializer
9
8
  from codex.serializers.mixins import OKSerializer
10
9
  from codex.views.auth import AuthGenericAPIView
@@ -26,12 +25,6 @@ class TimezoneView(AuthGenericAPIView):
26
25
  session["django_timezone"] = django_timezone
27
26
  session.save()
28
27
 
29
- def _update_user_active(self):
30
- """Update user activity."""
31
- user = self.request.user
32
- if user and user.is_authenticated:
33
- UserActive.objects.update_or_create(user=user)
34
-
35
28
  @extend_schema(request=input_serializer_class)
36
29
  def put(self, *args, **kwargs):
37
30
  """Get the user info for the current user."""
@@ -39,16 +32,11 @@ class TimezoneView(AuthGenericAPIView):
39
32
  serializer = self.input_serializer_class(data=data)
40
33
  serializer.is_valid(raise_exception=True)
41
34
  try:
42
- self._save_timezone(serializer.validated_data.get("timezone")) # type: ignore
35
+ timezone = serializer.validated_data.get("timezone") # type: ignore
36
+ self._save_timezone(timezone)
43
37
  except Exception as exc:
44
38
  reason = f"update user timezone {exc}"
45
39
  LOG.warning(reason)
46
40
 
47
- try:
48
- self._update_user_active()
49
- except Exception as exc:
50
- reason = f"update user activity {exc}"
51
- LOG.warning(reason)
52
-
53
41
  serializer = self.get_serializer()
54
42
  return Response(serializer.data)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: codex
3
- Version: 1.7.0a1
3
+ Version: 1.7.1
4
4
  Summary: A comic archive web server.
5
5
  Home-page: https://github.com/ajslater/codex
6
6
  License: GPL-3.0-only
@@ -29,7 +29,7 @@ Requires-Dist: ansicolors (>=1.1,<2.0)
29
29
  Requires-Dist: bidict (>=0.23.1,<0.24.0)
30
30
  Requires-Dist: case-converter (>=1.1.0,<2.0.0)
31
31
  Requires-Dist: channels (>=4.0.0,<5.0.0)
32
- Requires-Dist: comicbox[pdf] (>=1.2.0,<2.0.0)
32
+ Requires-Dist: comicbox[pdf] (>=1.2.1,<2.0.0)
33
33
  Requires-Dist: dateparser (>=1.2.0,<2.0.0)
34
34
  Requires-Dist: django (>=5.1.0,<6.0.0)
35
35
  Requires-Dist: django-cachalot (>=2.6.3,<3.0.0)
@@ -338,10 +338,7 @@ index, a Django cache and comic book cover thumbnails.
338
338
  when codex starts.
339
339
  - `CODEX_FIX_FOREIGN_KEYS=1` will check for and try to repair illegal foreign
340
340
  keys on startup.
341
- - `CODEX_INTEGRITY_CHECK=1` will perform a quick full database integrity check
342
- on startup.
343
- - `CODEX_INTEGRITY_CHECK=full` will perform a more thorough database integrity
344
- check on startup.
341
+ - `CODEX_INTEGRITY_CHECK=1` will perform database integrity check on startup.
345
342
  - `CODEX_FTS_INTEGRITY_CHECK=1` will perform an integrity check on the full text
346
343
  search index.
347
344
  - `CODEX_FTS_REBUILD=1` will rebuild the full text search index.