pixlstash 1.12.0.dev6__tar.gz → 1.12.0.dev7__tar.gz

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.
Files changed (909) hide show
  1. {pixlstash-1.12.0.dev6/pixlstash.egg-info → pixlstash-1.12.0.dev7}/PKG-INFO +3 -3
  2. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/README.md +1 -1
  3. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/frontend/package-lock.json +97 -99
  4. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/frontend/package.json +2 -2
  5. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/authz/registry.py +9 -2
  6. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/db_models/picture.py +1 -1
  7. pixlstash-1.12.0.dev6/pixlstash/frontend/dist/assets/AppBarButton-Bku4NKnV.js → pixlstash-1.12.0.dev7/pixlstash/frontend/dist/assets/AppBarButton-Tv8wZxAf.js +1 -1
  8. pixlstash-1.12.0.dev7/pixlstash/frontend/dist/assets/AppButton-DEORyyiU.js +11 -0
  9. pixlstash-1.12.0.dev7/pixlstash/frontend/dist/assets/DuplicateQueue-BqLQ4Py7.js +1 -0
  10. pixlstash-1.12.0.dev6/pixlstash/frontend/dist/assets/InspectorEdgeTab-CZlR9Roq.js → pixlstash-1.12.0.dev7/pixlstash/frontend/dist/assets/InspectorEdgeTab-CzJWcd_M.js +1 -1
  11. pixlstash-1.12.0.dev6/pixlstash/frontend/dist/assets/LibraryInsights-CwFp7YHC.js → pixlstash-1.12.0.dev7/pixlstash/frontend/dist/assets/LibraryInsights-B9nlaSiq.js +1 -1
  12. pixlstash-1.12.0.dev7/pixlstash/frontend/dist/assets/MakeMoreDialog-BDjEobY7.js +1 -0
  13. pixlstash-1.12.0.dev7/pixlstash/frontend/dist/assets/MakeMoreDialog-xu3BuVdN.css +1 -0
  14. pixlstash-1.12.0.dev7/pixlstash/frontend/dist/assets/ModelShelf-DRAB8xpP.js +8 -0
  15. pixlstash-1.12.0.dev7/pixlstash/frontend/dist/assets/ModelShelf-DpLEx4ig.css +1 -0
  16. pixlstash-1.12.0.dev6/pixlstash/frontend/dist/assets/ModelsRail-603wlaWJ.js → pixlstash-1.12.0.dev7/pixlstash/frontend/dist/assets/ModelsRail-CV1WZGJU.js +1 -1
  17. pixlstash-1.12.0.dev7/pixlstash/frontend/dist/assets/MovesReview-BWwcRJmX.js +1 -0
  18. pixlstash-1.12.0.dev6/pixlstash/frontend/dist/assets/PicturePicker-D1tXwzY-.js → pixlstash-1.12.0.dev7/pixlstash/frontend/dist/assets/PicturePicker-DWaHHMT6.js +1 -1
  19. pixlstash-1.12.0.dev7/pixlstash/frontend/dist/assets/ReviewSessionsOverlay-C8jdZIfT.js +1 -0
  20. pixlstash-1.12.0.dev7/pixlstash/frontend/dist/assets/RunDialog-C6j6CSQq.js +1 -0
  21. pixlstash-1.12.0.dev7/pixlstash/frontend/dist/assets/RunDialog-TMgbgTkH.css +1 -0
  22. pixlstash-1.12.0.dev6/pixlstash/frontend/dist/assets/RunReasonNotice-Dk0sA3L-.js → pixlstash-1.12.0.dev7/pixlstash/frontend/dist/assets/RunReasonNotice-Bqo1GP0q.js +1 -1
  23. pixlstash-1.12.0.dev7/pixlstash/frontend/dist/assets/RunReasonNotice-CzU_74MF.css +1 -0
  24. pixlstash-1.12.0.dev7/pixlstash/frontend/dist/assets/WorkflowRecipesTab-CdmJQA09.js +1 -0
  25. pixlstash-1.12.0.dev7/pixlstash/frontend/dist/assets/WorkflowRecipesTab-_L7ZYx4n.css +1 -0
  26. pixlstash-1.12.0.dev7/pixlstash/frontend/dist/assets/WorkflowTab-CTTXwZOj.js +1 -0
  27. pixlstash-1.12.0.dev7/pixlstash/frontend/dist/assets/WorkflowTab-DEoh-I24.css +1 -0
  28. pixlstash-1.12.0.dev7/pixlstash/frontend/dist/assets/WorkflowsView-BmBFI_fI.js +2 -0
  29. pixlstash-1.12.0.dev7/pixlstash/frontend/dist/assets/WorkflowsView-w2xwMkdX.css +1 -0
  30. pixlstash-1.12.0.dev6/pixlstash/frontend/dist/assets/characters-C_BIihz7.js → pixlstash-1.12.0.dev7/pixlstash/frontend/dist/assets/characters-9Yfmk4N7.js +1 -1
  31. pixlstash-1.12.0.dev7/pixlstash/frontend/dist/assets/dedup-Bg5AqKRT.js +3 -0
  32. pixlstash-1.12.0.dev6/pixlstash/frontend/dist/assets/index-CcGpvYt2.css → pixlstash-1.12.0.dev7/pixlstash/frontend/dist/assets/index-Bh8ynvx3.css +1 -1
  33. pixlstash-1.12.0.dev7/pixlstash/frontend/dist/assets/index-qRUX_UQp.js +13 -0
  34. pixlstash-1.12.0.dev6/pixlstash/frontend/dist/assets/pictureSets-C2SuSX5k.js → pixlstash-1.12.0.dev7/pixlstash/frontend/dist/assets/pictureSets-CpFUiY17.js +1 -1
  35. pixlstash-1.12.0.dev6/pixlstash/frontend/dist/assets/pinia-h3AhE-O-.js → pixlstash-1.12.0.dev7/pixlstash/frontend/dist/assets/pinia-ga9l7CF3.js +1 -1
  36. pixlstash-1.12.0.dev6/pixlstash/frontend/dist/assets/useProjectStore-DvXg59AB.js → pixlstash-1.12.0.dev7/pixlstash/frontend/dist/assets/useProjectStore-CF-SN1Wk.js +1 -1
  37. pixlstash-1.12.0.dev6/pixlstash/frontend/dist/assets/useWsStore-CYsMvVBQ.js → pixlstash-1.12.0.dev7/pixlstash/frontend/dist/assets/useWsStore-CWniRAML.js +1 -1
  38. pixlstash-1.12.0.dev6/pixlstash/frontend/dist/assets/vue-router-XJpqUAQn.js → pixlstash-1.12.0.dev7/pixlstash/frontend/dist/assets/vue-router-Clm4VWHo.js +1 -1
  39. pixlstash-1.12.0.dev7/pixlstash/frontend/dist/assets/workflowPins-CcUD1Y7U.js +1 -0
  40. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/frontend/dist/index.html +11 -11
  41. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/hub/schema.py +87 -10
  42. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/hub/workflow_card_reads.py +17 -5
  43. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/hub/workflow_group_convert.py +139 -43
  44. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/hub/workflow_versions.py +78 -5
  45. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/hub/workflows.py +1 -1
  46. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/mcp_server.py +9 -2
  47. pixlstash-1.12.0.dev7/pixlstash/migrations/versions/0129_rescan_videos_for_embedded_workflows.py +50 -0
  48. pixlstash-1.12.0.dev7/pixlstash/migrations/versions/0130_rescan_pictures_with_a_graph_and_no_prompt.py +60 -0
  49. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/comfyui.py +72 -0
  50. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/model_shelf.py +90 -13
  51. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/workflows.py +712 -185
  52. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/comfyui_recipe_service.py +42 -13
  53. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/comfyui_service.py +113 -16
  54. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/comfyui_ui_graph.py +13 -1
  55. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/model_shelf_service.py +140 -1
  56. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/model_workflow_sets.py +14 -6
  57. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/run_importer.py +4 -1
  58. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/workflow_bindings.py +12 -10
  59. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/workflow_card_service.py +131 -13
  60. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/workflow_ghost_service.py +3 -2
  61. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/workflow_hash.py +2 -2
  62. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/workflow_identity.py +274 -39
  63. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/workflow_io.py +27 -5
  64. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/workflow_parameters.py +41 -11
  65. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/workflow_run_service.py +317 -30
  66. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tagger_plugins/pixlstash_tagger.py +1 -1
  67. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/comfyui_extraction_task.py +2 -10
  68. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/saved_recipe_convert_task.py +7 -2
  69. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/comfyui_utilities.py +75 -21
  70. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/image_processing/image_utils.py +11 -3
  71. pixlstash-1.12.0.dev7/pixlstash/utils/image_processing/video_utils.py +396 -0
  72. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7/pixlstash.egg-info}/PKG-INFO +3 -3
  73. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash.egg-info/SOURCES.txt +35 -33
  74. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash.egg-info/requires.txt +1 -1
  75. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pyproject.toml +2 -2
  76. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_comfyui_pixlstash_saver.py +203 -7
  77. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_comfyui_recipe_preflight.py +33 -2
  78. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_comfyui_ui_graph_conversion.py +88 -0
  79. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_comfyui_workflow_extraction.py +103 -0
  80. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_hub_model_shelf_schema.py +11 -0
  81. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_migrations.py +95 -0
  82. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_model_run_import.py +17 -1
  83. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_model_shelf_api.py +243 -0
  84. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_workflow_cards.py +96 -2
  85. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_workflow_group_convert.py +460 -20
  86. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_workflow_identity.py +335 -21
  87. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_workflow_io.py +38 -5
  88. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_workflow_library.py +264 -2
  89. pixlstash-1.12.0.dev7/tests/test_workflow_parameters.py +304 -0
  90. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_workflow_stage_bypass.py +59 -1
  91. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_workflows_api.py +847 -21
  92. pixlstash-1.12.0.dev6/pixlstash/frontend/dist/assets/AppButton-DL0bttgq.js +0 -10
  93. pixlstash-1.12.0.dev6/pixlstash/frontend/dist/assets/DuplicateQueue-Wa6hRzIL.js +0 -1
  94. pixlstash-1.12.0.dev6/pixlstash/frontend/dist/assets/MakeMoreDialog-CBFCHyLm.js +0 -1
  95. pixlstash-1.12.0.dev6/pixlstash/frontend/dist/assets/MakeMoreDialog-DzWH8qX0.css +0 -1
  96. pixlstash-1.12.0.dev6/pixlstash/frontend/dist/assets/ModelShelf-61S60_TR.css +0 -1
  97. pixlstash-1.12.0.dev6/pixlstash/frontend/dist/assets/ModelShelf-BPBVyFq7.js +0 -6
  98. pixlstash-1.12.0.dev6/pixlstash/frontend/dist/assets/MovesReview-DYkBgmTH.js +0 -1
  99. pixlstash-1.12.0.dev6/pixlstash/frontend/dist/assets/ReviewSessionsOverlay-Dro21Di-.js +0 -1
  100. pixlstash-1.12.0.dev6/pixlstash/frontend/dist/assets/RunDialog-6CVHrklr.js +0 -1
  101. pixlstash-1.12.0.dev6/pixlstash/frontend/dist/assets/RunDialog-DBdlnvxd.css +0 -1
  102. pixlstash-1.12.0.dev6/pixlstash/frontend/dist/assets/RunReasonNotice-6IH3i2C4.css +0 -1
  103. pixlstash-1.12.0.dev6/pixlstash/frontend/dist/assets/WorkflowRecipesTab-CkqnV2nh.css +0 -1
  104. pixlstash-1.12.0.dev6/pixlstash/frontend/dist/assets/WorkflowRecipesTab-DmhjOnOz.js +0 -1
  105. pixlstash-1.12.0.dev6/pixlstash/frontend/dist/assets/WorkflowTab-Br-kRwe9.css +0 -1
  106. pixlstash-1.12.0.dev6/pixlstash/frontend/dist/assets/WorkflowTab-eKCH1jaY.js +0 -1
  107. pixlstash-1.12.0.dev6/pixlstash/frontend/dist/assets/WorkflowsView-BN5Rj-gq.js +0 -2
  108. pixlstash-1.12.0.dev6/pixlstash/frontend/dist/assets/WorkflowsView-eqgcGRGx.css +0 -1
  109. pixlstash-1.12.0.dev6/pixlstash/frontend/dist/assets/dedup-Dlt-cyNl.js +0 -3
  110. pixlstash-1.12.0.dev6/pixlstash/frontend/dist/assets/index-CNruuP_y.js +0 -12
  111. pixlstash-1.12.0.dev6/pixlstash/frontend/dist/assets/workflowPins-DLKeFWXw.js +0 -1
  112. pixlstash-1.12.0.dev6/pixlstash/utils/image_processing/video_utils.py +0 -189
  113. pixlstash-1.12.0.dev6/tests/test_workflow_parameters.py +0 -121
  114. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/LICENSE +0 -0
  115. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/MANIFEST.in +0 -0
  116. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/frontend/LICENSE +0 -0
  117. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/LICENSE +0 -0
  118. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/__init__.py +0 -0
  119. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/alembic.ini +0 -0
  120. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/app.py +0 -0
  121. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/auth.py +0 -0
  122. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/authz/__init__.py +0 -0
  123. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/authz/gate.py +0 -0
  124. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/authz/membership.py +0 -0
  125. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/authz/policy.py +0 -0
  126. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/cli.py +0 -0
  127. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/anchors/builtin_bad.npy +0 -0
  128. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/anchors/builtin_good.npy +0 -0
  129. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/anchors/clipiqa_bad.npy +0 -0
  130. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/anchors/clipiqa_good.npy +0 -0
  131. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/comfyui-pack/ComfyUI-PixlStash/.comfyignore +0 -0
  132. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/comfyui-pack/ComfyUI-PixlStash/LICENSE +0 -0
  133. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/comfyui-pack/ComfyUI-PixlStash/Logo.png +0 -0
  134. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/comfyui-pack/ComfyUI-PixlStash/README.md +0 -0
  135. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/comfyui-pack/ComfyUI-PixlStash/__init__.py +0 -0
  136. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/comfyui-pack/ComfyUI-PixlStash/connection.py +0 -0
  137. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/comfyui-pack/ComfyUI-PixlStash/favicon.ico +0 -0
  138. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/comfyui-pack/ComfyUI-PixlStash/nodes/__init__.py +0 -0
  139. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/comfyui-pack/ComfyUI-PixlStash/nodes/adapter_applier.py +0 -0
  140. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/comfyui-pack/ComfyUI-PixlStash/nodes/adapter_loader.py +0 -0
  141. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/comfyui-pack/ComfyUI-PixlStash/nodes/character_loader.py +0 -0
  142. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/comfyui-pack/ComfyUI-PixlStash/nodes/checkpoint_loader.py +0 -0
  143. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/comfyui-pack/ComfyUI-PixlStash/nodes/clip_loader.py +0 -0
  144. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/comfyui-pack/ComfyUI-PixlStash/nodes/face_likeness_gate.py +0 -0
  145. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/comfyui-pack/ComfyUI-PixlStash/nodes/gguf_support.py +0 -0
  146. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/comfyui-pack/ComfyUI-PixlStash/nodes/likeness_search.py +0 -0
  147. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/comfyui-pack/ComfyUI-PixlStash/nodes/lock.py +0 -0
  148. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/comfyui-pack/ComfyUI-PixlStash/nodes/picture_likeness_gate.py +0 -0
  149. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/comfyui-pack/ComfyUI-PixlStash/nodes/picture_loader.py +0 -0
  150. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/comfyui-pack/ComfyUI-PixlStash/nodes/picture_saver.py +0 -0
  151. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/comfyui-pack/ComfyUI-PixlStash/nodes/project_loader.py +0 -0
  152. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/comfyui-pack/ComfyUI-PixlStash/nodes/semantic_search.py +0 -0
  153. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/comfyui-pack/ComfyUI-PixlStash/nodes/set_loader.py +0 -0
  154. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/comfyui-pack/ComfyUI-PixlStash/nodes/shelf_file.py +0 -0
  155. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/comfyui-pack/ComfyUI-PixlStash/nodes/vae_loader.py +0 -0
  156. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/comfyui-pack/ComfyUI-PixlStash/nodes/workflow_set_loader.py +0 -0
  157. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/comfyui-pack/ComfyUI-PixlStash/proxy_routes.py +0 -0
  158. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/comfyui-pack/ComfyUI-PixlStash/pyproject.toml +0 -0
  159. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/comfyui-pack/ComfyUI-PixlStash/requirements.txt +0 -0
  160. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/comfyui-pack/ComfyUI-PixlStash/serve_routes.py +0 -0
  161. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/comfyui-pack/ComfyUI-PixlStash/vendor/__init__.py +0 -0
  162. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/comfyui-pack/ComfyUI-PixlStash/vendor/comfyui_gguf/LICENSE +0 -0
  163. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/comfyui-pack/ComfyUI-PixlStash/vendor/comfyui_gguf/VENDORED.md +0 -0
  164. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/comfyui-pack/ComfyUI-PixlStash/vendor/comfyui_gguf/__init__.py +0 -0
  165. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/comfyui-pack/ComfyUI-PixlStash/vendor/comfyui_gguf/dequant.py +0 -0
  166. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/comfyui-pack/ComfyUI-PixlStash/vendor/comfyui_gguf/loader.py +0 -0
  167. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/comfyui-pack/ComfyUI-PixlStash/vendor/comfyui_gguf/nodes.py +0 -0
  168. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/comfyui-pack/ComfyUI-PixlStash/vendor/comfyui_gguf/ops.py +0 -0
  169. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/comfyui-pack/ComfyUI-PixlStash/vendor/comfyui_gguf/tools/convert.py +0 -0
  170. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/comfyui-pack/ComfyUI-PixlStash/web/img/Logo.png +0 -0
  171. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/comfyui-pack/ComfyUI-PixlStash/web/js/adapter_picker.js +0 -0
  172. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/comfyui-pack/ComfyUI-PixlStash/web/js/combo_widgets.js +0 -0
  173. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/comfyui-pack/ComfyUI-PixlStash/web/js/convert_workflow.js +0 -0
  174. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/comfyui-pack/ComfyUI-PixlStash/web/js/img/Logo.png +0 -0
  175. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/comfyui-pack/ComfyUI-PixlStash/web/js/modal_dom.js +0 -0
  176. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/comfyui-pack/ComfyUI-PixlStash/web/js/open_workflow.js +0 -0
  177. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/comfyui-pack/ComfyUI-PixlStash/web/js/picker.js +0 -0
  178. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/comfyui-workflows/built-in/Flux2-Klein-Image-Edit.json +0 -0
  179. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/comfyui-workflows/built-in/Flux2-Klein-t2i.json +0 -0
  180. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/comfyui-workflows/built-in/Upscale-2x-RealESRGAN.json +0 -0
  181. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/scalar-assets/ScreenshotToken.jpg +0 -0
  182. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/scalar-assets/ScreenshotTokens.jpg +0 -0
  183. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/scalar-assets/ScreenshotsUserSettings.jpg +0 -0
  184. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/scalar-assets/WhereIsUserSettings.jpg +0 -0
  185. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/data/scalar-assets/logo.png +0 -0
  186. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/database.py +0 -0
  187. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/db_models/__init__.py +0 -0
  188. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/db_models/adapter_attachment.py +0 -0
  189. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/db_models/character.py +0 -0
  190. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/db_models/dedup.py +0 -0
  191. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/db_models/deleted_file_log.py +0 -0
  192. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/db_models/detection.py +0 -0
  193. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/db_models/entity_project.py +0 -0
  194. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/db_models/external_move_review.py +0 -0
  195. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/db_models/face.py +0 -0
  196. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/db_models/folder_mapping_commit.py +0 -0
  197. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/db_models/generation.py +0 -0
  198. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/db_models/guest_score.py +0 -0
  199. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/db_models/guest_session.py +0 -0
  200. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/db_models/import_folder.py +0 -0
  201. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/db_models/library_settings.py +0 -0
  202. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/db_models/metadata.py +0 -0
  203. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/db_models/mixed_stack.py +0 -0
  204. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/db_models/operation.py +0 -0
  205. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/db_models/pending_score_invalidation.py +0 -0
  206. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/db_models/picture_likeness.py +0 -0
  207. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/db_models/picture_move.py +0 -0
  208. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/db_models/picture_project.py +0 -0
  209. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/db_models/picture_set.py +0 -0
  210. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/db_models/picture_stack.py +0 -0
  211. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/db_models/project.py +0 -0
  212. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/db_models/quality.py +0 -0
  213. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/db_models/reference_folder.py +0 -0
  214. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/db_models/review.py +0 -0
  215. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/db_models/saved_recipe.py +0 -0
  216. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/db_models/snapshot.py +0 -0
  217. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/db_models/tag.py +0 -0
  218. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/db_models/tag_health.py +0 -0
  219. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/db_models/tag_prediction.py +0 -0
  220. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/db_models/tag_suggestion.py +0 -0
  221. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/db_models/tagger_run.py +0 -0
  222. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/db_models/user.py +0 -0
  223. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/db_models/user_token.py +0 -0
  224. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/event_types.py +0 -0
  225. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/frontend/dist/Empty.png +0 -0
  226. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/frontend/dist/EmptyTrash.png +0 -0
  227. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/frontend/dist/Logo.png +0 -0
  228. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/frontend/dist/Watermark.png +0 -0
  229. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/frontend/dist/assets/AppButton-ChGMsD5Y.css +0 -0
  230. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/frontend/dist/assets/DuplicateQueue-Bf_ywQkT.css +0 -0
  231. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/frontend/dist/assets/InspectorEdgeTab-BlOe9IlF.css +0 -0
  232. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/frontend/dist/assets/LibraryInsights-dMJWAwPs.css +0 -0
  233. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/frontend/dist/assets/ModelsRail-Dtw8nCii.css +0 -0
  234. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/frontend/dist/assets/MovesReview-1Kf5lFmA.css +0 -0
  235. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/frontend/dist/assets/PicturePicker-DRSN0fZ7.css +0 -0
  236. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/frontend/dist/assets/ReviewSessionsOverlay-DZVEjhvy.css +0 -0
  237. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/frontend/dist/assets/Tiny5-Regular-WaYIHWdr.ttf +0 -0
  238. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/frontend/dist/assets/materialdesignicons-webfont-B7mPwVP_.ttf +0 -0
  239. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/frontend/dist/assets/materialdesignicons-webfont-CSr8KVlo.eot +0 -0
  240. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/frontend/dist/assets/materialdesignicons-webfont-Dp5v-WZN.woff2 +0 -0
  241. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/frontend/dist/assets/materialdesignicons-webfont-PXm3-2wK.woff +0 -0
  242. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/frontend/dist/favicon.ico +0 -0
  243. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/frontend/dist/vite.svg +0 -0
  244. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/hub/__init__.py +0 -0
  245. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/hub/bootstrap.py +0 -0
  246. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/hub/cli_hint.py +0 -0
  247. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/hub/db.py +0 -0
  248. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/hub/engine.py +0 -0
  249. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/hub/registry.py +0 -0
  250. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/hub/workflow_card_writes.py +0 -0
  251. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/hub/workflow_cards.py +0 -0
  252. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/hub/workflow_group_writes.py +0 -0
  253. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/hub/workflow_origin.py +0 -0
  254. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/image_loading_dataset_prepper.py +0 -0
  255. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/image_plugins/__init__.py +0 -0
  256. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/image_plugins/base.py +0 -0
  257. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/image_plugins/built-in/blur_sharpen.py +0 -0
  258. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/image_plugins/built-in/brightness_contrast.py +0 -0
  259. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/image_plugins/built-in/colour_filter.py +0 -0
  260. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/image_plugins/built-in/pixelate.py +0 -0
  261. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/image_plugins/built-in/plugin_template.py +0 -0
  262. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/image_plugins/built-in/rotate.py +0 -0
  263. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/image_plugins/built-in/scaling.py +0 -0
  264. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/image_plugins/registry.py +0 -0
  265. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/image_plugins/service.py +0 -0
  266. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/inference/__init__.py +0 -0
  267. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/inference/cpu_query_encoders.py +0 -0
  268. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/inference/engine.py +0 -0
  269. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/inference/model_lifecycle.py +0 -0
  270. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/inference/vram_budget.py +0 -0
  271. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/inference/workflows/__init__.py +0 -0
  272. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/inference/workflows/clip_embedding.py +0 -0
  273. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/inference/workflows/description.py +0 -0
  274. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/inference/workflows/face_embedding.py +0 -0
  275. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/inference/workflows/tagging.py +0 -0
  276. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/inference/workflows/text_embedding.py +0 -0
  277. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/listeners.py +0 -0
  278. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/maintenance.py +0 -0
  279. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/middleware/library_admission.py +0 -0
  280. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/env.py +0 -0
  281. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/script.py.mako +0 -0
  282. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0001_baseline.py +0 -0
  283. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0002_add_text_score.py +0 -0
  284. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0003_add_original_file_name.py +0 -0
  285. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0004_add_comfyui_fields.py +0 -0
  286. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0005_add_projects.py +0 -0
  287. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0006_add_attachment_url.py +0 -0
  288. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0007_add_picture_project_id.py +0 -0
  289. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0008_add_compact_mode.py +0 -0
  290. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0009_add_picture_project_membership.py +0 -0
  291. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0010_project_name_uniqueness.py +0 -0
  292. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0011_pictureset_name_uniqueness.py +0 -0
  293. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0012_character_name_uniqueness.py +0 -0
  294. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0013_tag_prediction.py +0 -0
  295. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0014_tag_prediction_composite_index.py +0 -0
  296. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0015_tag_prediction_model_version_rename.py +0 -0
  297. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0016_tag_prediction_confirm_applied.py +0 -0
  298. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0017_anomaly_tag_uncertainty.py +0 -0
  299. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0018_anomaly_tag_uncertainty_disagreement.py +0 -0
  300. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0019_pending_character_id.py +0 -0
  301. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0020_source_picture_id.py +0 -0
  302. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0021_tagger_enabled_flags.py +0 -0
  303. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0022_add_check_for_updates.py +0 -0
  304. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0023_add_show_keyboard_hint.py +0 -0
  305. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0024_add_deleted_file_log.py +0 -0
  306. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0025_add_reference_folders.py +0 -0
  307. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0026_add_caption_file_and_sync_captions.py +0 -0
  308. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0027_add_caption_file_mtime.py +0 -0
  309. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0028_add_smart_score.py +0 -0
  310. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0029_add_import_excluded_to_picture.py +0 -0
  311. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0030_add_import_folders.py +0 -0
  312. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0031_migrate_watch_folders_to_import_folder.py +0 -0
  313. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0032_add_reference_folder_host_path.py +0 -0
  314. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0033_add_import_folder_host_path.py +0 -0
  315. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0034_add_token_scope_fields.py +0 -0
  316. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0035_drop_face_quality.py +0 -0
  317. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0036_add_token_include_attachments.py +0 -0
  318. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0037_add_user_public_url.py +0 -0
  319. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0038_add_watermark_fields.py +0 -0
  320. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0039_drop_color_histogram.py +0 -0
  321. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0040_move_text_score_to_picture.py +0 -0
  322. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0041_guest_scores.py +0 -0
  323. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0042_guest_session_cookie_token.py +0 -0
  324. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0043_pictureset_icon_color.py +0 -0
  325. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0044_add_grid_sort_indexes.py +0 -0
  326. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0045_tagger_settings.py +0 -0
  327. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0046_tag_sentinel_rename.py +0 -0
  328. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0047_add_stack_leader_grid_indexes.py +0 -0
  329. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0048_normalize_stack_positions.py +0 -0
  330. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0049_snapshots.py +0 -0
  331. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0050_reset_metadata_hash_membership.py +0 -0
  332. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0051_deleted_file_log_path_sha.py +0 -0
  333. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0052_drop_import_excluded_sentinel.py +0 -0
  334. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0053_add_face_model_pack.py +0 -0
  335. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0054_add_sidebar_docked.py +0 -0
  336. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0055_add_sidebar_width.py +0 -0
  337. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0056_add_hide_purge_snapshot_warning.py +0 -0
  338. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0057_split_caption_sidecars.py +0 -0
  339. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0058_add_tag_suggestion.py +0 -0
  340. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0059_add_tagger_run.py +0 -0
  341. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0060_tag_prediction_label_ledger.py +0 -0
  342. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0061_add_detection.py +0 -0
  343. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0062_recompute_smart_score_calibrated_anomaly.py +0 -0
  344. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0063_rename_pixelated_tag_to_blocky.py +0 -0
  345. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0064_add_sidebar_pinned.py +0 -0
  346. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0065_add_review_sessions.py +0 -0
  347. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0066_add_tag_health.py +0 -0
  348. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0067_add_tag_health_precision_adj.py +0 -0
  349. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0068_add_picture_split.py +0 -0
  350. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0069_add_tag_eval_slice.py +0 -0
  351. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0070_add_tag_health_eval_candidate_n_pos.py +0 -0
  352. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0071_remove_tag_review_scoring_subsystem.py +0 -0
  353. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0072_add_review_receipt_snapshot_and_suggestion_prior_decision.py +0 -0
  354. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0073_add_pictureset_locked.py +0 -0
  355. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0074_recompute_tag_health_exclude_human_decisions.py +0 -0
  356. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0075_add_tag_health_ground_truth.py +0 -0
  357. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0076_recompute_smart_score_after_stale_tag_edits.py +0 -0
  358. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0077_add_deleted_file_log_file_removed.py +0 -0
  359. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0078_add_reference_folder_pending_reimport.py +0 -0
  360. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0079_add_picture_deleted_at.py +0 -0
  361. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0080_add_thumbnail_dimensions.py +0 -0
  362. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0082_add_thumbnail_size_level.py +0 -0
  363. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0083_recompute_smart_score_unapplied_anomaly_predictions.py +0 -0
  364. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0084_recompute_smart_score_rebalanced_weights.py +0 -0
  365. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0085_recompute_smart_score_restored_builtin_anchors.py +0 -0
  366. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0086_add_operation_log.py +0 -0
  367. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0086_reissue_api_tokens.py +0 -0
  368. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0087_add_entity_project_membership.py +0 -0
  369. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0088_add_dedup_tier_tables.py +0 -0
  370. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0089_add_dedupverdict_reopen_batch_id.py +0 -0
  371. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0090_add_usertoken_public_id.py +0 -0
  372. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0091_add_mixed_stack_cohesion_and_dismissal.py +0 -0
  373. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0092_add_stackcohesion_nearest_edges.py +0 -0
  374. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0093_invalidate_stackcohesion_inputs.py +0 -0
  375. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0094_add_telemetry_consent.py +0 -0
  376. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0095_add_finder_partial_indexes.py +0 -0
  377. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0096_add_picture_is_video.py +0 -0
  378. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0097_add_usertoken_library_uuid.py +0 -0
  379. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0098_add_library_settings.py +0 -0
  380. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0099_guest_tables_reference_token_public_id.py +0 -0
  381. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0100_add_pending_score_invalidation.py +0 -0
  382. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0101_add_settings_fingerprint.py +0 -0
  383. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0102_add_snapshot_identity_scrubbed_at.py +0 -0
  384. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0103_add_adapter_attachment.py +0 -0
  385. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0104_add_picture_orientation.py +0 -0
  386. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0105_add_character_thumbnail_picture.py +0 -0
  387. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0106_add_picture_workflow_hashes.py +0 -0
  388. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0107_add_library_views_settings.py +0 -0
  389. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0108_add_library_layout_and_move_journal.py +0 -0
  390. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0109_add_external_move_review.py +0 -0
  391. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0110_add_folder_mapping_commit.py +0 -0
  392. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0111_add_text_embedding_missing_index.py +0 -0
  393. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0112_add_image_embedding_probe_indexes.py +0 -0
  394. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0113_reset_size_bin_without_likeness_parameters.py +0 -0
  395. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0114_remove_views_and_project_cover.py +0 -0
  396. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0115_add_folder_mapping_commit_captions.py +0 -0
  397. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0116_add_library_settings_caption_sync.py +0 -0
  398. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0117_add_pending_ghost_cascade.py +0 -0
  399. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0118_add_generation_tables.py +0 -0
  400. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0119_rescan_pictures_for_a1111_recipes.py +0 -0
  401. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0120_add_picture_ocr_text.py +0 -0
  402. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0121_add_saved_recipe.py +0 -0
  403. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0122_rescan_pictures_for_controlnet_model_names.py +0 -0
  404. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0123_resample_animated_gifs.py +0 -0
  405. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0124_saved_recipe_models_and_workflow_id.py +0 -0
  406. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0125_refile_recipes_off_hand_made_workflows.py +0 -0
  407. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0126_add_picture_run_workflow_id.py +0 -0
  408. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0127_add_picture_run_workflow_version.py +0 -0
  409. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/migrations/versions/0128_add_picture_prompt_match.py +0 -0
  410. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/openapi_custom.py +0 -0
  411. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/pixl_logging.py +0 -0
  412. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/plugin_check.py +0 -0
  413. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/plugin_create.py +0 -0
  414. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/plugin_install.py +0 -0
  415. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/route_inventory.py +0 -0
  416. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/__init__.py +0 -0
  417. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/_helpers.py +0 -0
  418. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/characters.py +0 -0
  419. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/characters_faces.py +0 -0
  420. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/config.py +0 -0
  421. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/dedup.py +0 -0
  422. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/filesystem.py +0 -0
  423. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/folder_structure.py +0 -0
  424. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/guest_scores.py +0 -0
  425. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/import_folders.py +0 -0
  426. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/insights.py +0 -0
  427. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/libraries.py +0 -0
  428. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/library_captions.py +0 -0
  429. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/library_layout.py +0 -0
  430. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/model_files.py +0 -0
  431. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/model_folders.py +0 -0
  432. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/model_icons.py +0 -0
  433. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/model_imports.py +0 -0
  434. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/model_moves.py +0 -0
  435. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/model_stacks.py +0 -0
  436. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/moves.py +0 -0
  437. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/operations.py +0 -0
  438. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/picture_sets.py +0 -0
  439. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/pictures/__init__.py +0 -0
  440. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/pictures/_anomaly.py +0 -0
  441. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/pictures/_character_likeness.py +0 -0
  442. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/pictures/_crud.py +0 -0
  443. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/pictures/_export.py +0 -0
  444. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/pictures/_face_search.py +0 -0
  445. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/pictures/_faces.py +0 -0
  446. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/pictures/_helpers.py +0 -0
  447. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/pictures/_import.py +0 -0
  448. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/pictures/_likeness_search.py +0 -0
  449. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/pictures/_listing.py +0 -0
  450. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/pictures/_misc.py +0 -0
  451. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/pictures/_search.py +0 -0
  452. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/pictures/_serving.py +0 -0
  453. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/pictures/_text.py +0 -0
  454. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/pictures/_thumbnails.py +0 -0
  455. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/projects.py +0 -0
  456. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/recipes.py +0 -0
  457. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/reference_folders.py +0 -0
  458. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/reviews.py +0 -0
  459. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/share.py +0 -0
  460. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/snapshots.py +0 -0
  461. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/stacks.py +0 -0
  462. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/tag_health.py +0 -0
  463. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/tag_predictions.py +0 -0
  464. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/tag_suggestions.py +0 -0
  465. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/tagger_runs.py +0 -0
  466. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/taggers.py +0 -0
  467. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/tags.py +0 -0
  468. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/telemetry.py +0 -0
  469. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/routes/test_hooks.py +0 -0
  470. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/scoring/__init__.py +0 -0
  471. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/scoring/character_likeness.py +0 -0
  472. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/scoring/prompt_match.py +0 -0
  473. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/scoring/smart_score.py +0 -0
  474. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/server.py +0 -0
  475. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/server_config_io.py +0 -0
  476. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/__init__.py +0 -0
  477. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/a1111_recipe.py +0 -0
  478. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/builtin_caches.py +0 -0
  479. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/builtin_models.py +0 -0
  480. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/comfyui_link_service.py +0 -0
  481. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/comfyui_pack_service.py +0 -0
  482. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/comfyui_userdata.py +0 -0
  483. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/comfyui_workflow_pulls.py +0 -0
  484. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/config_service.py +0 -0
  485. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/dedup_sweep_service.py +0 -0
  486. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/dedup_tier_service.py +0 -0
  487. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/dedup_verdict_service.py +0 -0
  488. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/folder_structure_commit_service.py +0 -0
  489. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/folder_structure_service.py +0 -0
  490. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/import_dedup_service.py +0 -0
  491. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/impossible_tag_clear_service.py +0 -0
  492. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/keep_cover_only_service.py +0 -0
  493. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/layout_migration_service.py +0 -0
  494. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/layout_move_service.py +0 -0
  495. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/library_backup_service.py +0 -0
  496. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/library_generation_coordinator.py +0 -0
  497. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/library_insights_service.py +0 -0
  498. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/library_restore_service.py +0 -0
  499. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/library_settings_service.py +0 -0
  500. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/library_switch_service.py +0 -0
  501. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/managed_model_store.py +0 -0
  502. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/mixed_stack_service.py +0 -0
  503. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/model_features.py +0 -0
  504. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/model_folder_scanner.py +0 -0
  505. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/model_icons.py +0 -0
  506. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/model_mover.py +0 -0
  507. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/move_reconciliation_service.py +0 -0
  508. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/operation_log_service.py +0 -0
  509. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/picture_recipe_service.py +0 -0
  510. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/picture_service.py +0 -0
  511. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/plugin_service.py +0 -0
  512. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/portable_identity.py +0 -0
  513. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/project_membership_service.py +0 -0
  514. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/restore/__init__.py +0 -0
  515. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/restore/_models.py +0 -0
  516. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/restore/full_restore.py +0 -0
  517. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/restore/preview.py +0 -0
  518. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/restore/resource_restore.py +0 -0
  519. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/restore/schema_upgrade.py +0 -0
  520. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/review_service.py +0 -0
  521. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/saved_recipe_service.py +0 -0
  522. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/scrapheap_service.py +0 -0
  523. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/search_query_service.py +0 -0
  524. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/set_lock_service.py +0 -0
  525. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/share_service.py +0 -0
  526. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/snapshot_service.py +0 -0
  527. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/stack_detector.py +0 -0
  528. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/stack_membership.py +0 -0
  529. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/tag_health_service.py +0 -0
  530. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/tag_prediction_service.py +0 -0
  531. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/tag_scan_service.py +0 -0
  532. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/tag_suggestion_service.py +0 -0
  533. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/tagger_run_service.py +0 -0
  534. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/workflow_events.py +0 -0
  535. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/workflow_export.py +0 -0
  536. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/workflow_inbox.py +0 -0
  537. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/workflow_inputs.py +0 -0
  538. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/workflow_library_service.py +0 -0
  539. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/services/workflow_set_verdicts.py +0 -0
  540. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/ssl_setup.py +0 -0
  541. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/stacking.py +0 -0
  542. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/startup_checks.py +0 -0
  543. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/startup_permissions.py +0 -0
  544. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tagger_plugins/__init__.py +0 -0
  545. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tagger_plugins/base.py +0 -0
  546. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tagger_plugins/clip_service.py +0 -0
  547. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tagger_plugins/florence2.py +0 -0
  548. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tagger_plugins/joycaption.py +0 -0
  549. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tagger_plugins/plugin_template.py +0 -0
  550. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tagger_plugins/registry.py +0 -0
  551. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tagger_plugins/sbert.py +0 -0
  552. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tagger_plugins/wd14.py +0 -0
  553. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/task_runner.py +0 -0
  554. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/__init__.py +0 -0
  555. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/anomaly_region_task.py +0 -0
  556. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/base_task.py +0 -0
  557. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/base_task_finder.py +0 -0
  558. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/checkpoint_hash_task.py +0 -0
  559. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/comfyui_workflow_poll_finder.py +0 -0
  560. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/comfyui_workflow_pull_task.py +0 -0
  561. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/dedup_scan_finder.py +0 -0
  562. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/dedup_scan_task.py +0 -0
  563. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/description_task.py +0 -0
  564. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/detection_task.py +0 -0
  565. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/ensure_gfs_snapshot_finder.py +0 -0
  566. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/ensure_gfs_snapshot_task.py +0 -0
  567. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/face_detection_task.py +0 -0
  568. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/face_extraction_task.py +0 -0
  569. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/face_model_refresh_task.py +0 -0
  570. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/ghost_cascade_finder.py +0 -0
  571. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/ghost_cascade_task.py +0 -0
  572. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/image_embedding_task.py +0 -0
  573. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/layout_move_finder.py +0 -0
  574. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/layout_move_task.py +0 -0
  575. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/likeness_parameters_task.py +0 -0
  576. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/likeness_task.py +0 -0
  577. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/missing_checkpoint_hash_finder.py +0 -0
  578. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/missing_comfyui_extraction_finder.py +0 -0
  579. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/missing_description_finder.py +0 -0
  580. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/missing_face_extraction_finder.py +0 -0
  581. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/missing_face_model_refresh_finder.py +0 -0
  582. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/missing_file_purge_finder.py +0 -0
  583. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/missing_file_purge_task.py +0 -0
  584. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/missing_image_embedding_finder.py +0 -0
  585. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/missing_likeness_finder.py +0 -0
  586. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/missing_likeness_parameters_finder.py +0 -0
  587. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/missing_ocr_finder.py +0 -0
  588. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/missing_orientation_finder.py +0 -0
  589. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/missing_pixel_sha_finder.py +0 -0
  590. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/missing_prompt_match_finder.py +0 -0
  591. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/missing_quality_finder.py +0 -0
  592. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/missing_saved_recipe_workflow_finder.py +0 -0
  593. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/missing_smart_score_finder.py +0 -0
  594. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/missing_snapshot_identity_scrub_finder.py +0 -0
  595. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/missing_source_face_likeness_finder.py +0 -0
  596. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/missing_stack_cohesion_finder.py +0 -0
  597. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/missing_tag_finder.py +0 -0
  598. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/missing_tag_prediction_finder.py +0 -0
  599. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/missing_text_embedding_finder.py +0 -0
  600. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/missing_text_score_finder.py +0 -0
  601. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/missing_thumbnail_finder.py +0 -0
  602. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/missing_watch_folder_import_finder.py +0 -0
  603. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/model_folder_scan_task.py +0 -0
  604. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/ocr_task.py +0 -0
  605. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/orientation_task.py +0 -0
  606. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/pending_score_invalidation_finder.py +0 -0
  607. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/pending_score_invalidation_task.py +0 -0
  608. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/picture_import_task.py +0 -0
  609. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/pixel_sha_task.py +0 -0
  610. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/prompt_match_task.py +0 -0
  611. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/quality_task.py +0 -0
  612. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/reference_folder_scan_finder.py +0 -0
  613. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/reference_folder_scan_task.py +0 -0
  614. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/scrapheap_retention_purge_finder.py +0 -0
  615. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/scrapheap_retention_purge_task.py +0 -0
  616. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/smart_score_task.py +0 -0
  617. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/snapshot_identity_scrub_task.py +0 -0
  618. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/source_face_likeness_task.py +0 -0
  619. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/stack_cohesion_task.py +0 -0
  620. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/tag_health_auto_rebuild_finder.py +0 -0
  621. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/tag_health_auto_rebuild_task.py +0 -0
  622. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/tag_health_rebuild_task.py +0 -0
  623. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/tag_prediction_backfill_task.py +0 -0
  624. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/tag_task.py +0 -0
  625. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/task_type.py +0 -0
  626. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/text_embedding_task.py +0 -0
  627. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/text_score_task.py +0 -0
  628. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/thumbnail_generation_task.py +0 -0
  629. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/watch_folder_import_task.py +0 -0
  630. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/workflow_card_backfill_finder.py +0 -0
  631. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/tasks/workflow_card_backfill_task.py +0 -0
  632. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/telemetry/__init__.py +0 -0
  633. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/telemetry/install_id.py +0 -0
  634. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/telemetry/sender.py +0 -0
  635. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/trusted_sqlite.py +0 -0
  636. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/__init__.py +0 -0
  637. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/accelerator.py +0 -0
  638. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/adapter_header.py +0 -0
  639. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/aitoolkit_run.py +0 -0
  640. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/atomic_write.py +0 -0
  641. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/caption_file_utils.py +0 -0
  642. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/face_tags.py +0 -0
  643. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/field_allowlist.py +0 -0
  644. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/host_open.py +0 -0
  645. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/host_path_utils.py +0 -0
  646. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/http_cache.py +0 -0
  647. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/image_processing/__init__.py +0 -0
  648. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/image_processing/face_utils.py +0 -0
  649. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/image_processing/orientation.py +0 -0
  650. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/insightface_batched.py +0 -0
  651. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/insightface_model_utils.py +0 -0
  652. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/known_base_models.py +0 -0
  653. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/library_layout.py +0 -0
  654. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/library_roots.py +0 -0
  655. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/likeness/__init__.py +0 -0
  656. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/likeness/likeness_parameter_utils.py +0 -0
  657. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/likeness/likeness_utils.py +0 -0
  658. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/media_files.py +0 -0
  659. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/model_utils.py +0 -0
  660. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/near_neighbor.py +0 -0
  661. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/path_mapper.py +0 -0
  662. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/path_utils.py +0 -0
  663. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/quality/__init__.py +0 -0
  664. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/quality/anomaly_penalty.py +0 -0
  665. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/quality/quality_utils.py +0 -0
  666. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/quality/smart_score_utils.py +0 -0
  667. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/query/__init__.py +0 -0
  668. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/query/predicate_filter.py +0 -0
  669. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/rate_limiter.py +0 -0
  670. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/reference_folder_validator.py +0 -0
  671. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/reference_folder_watcher.py +0 -0
  672. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/request_origin.py +0 -0
  673. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/serialization_utils.py +0 -0
  674. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/service/__init__.py +0 -0
  675. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/service/anomaly_thresholds.py +0 -0
  676. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/service/caption_utils.py +0 -0
  677. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/service/export_utils.py +0 -0
  678. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/service/filter_helpers.py +0 -0
  679. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/service/label_ledger.py +0 -0
  680. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/service/person_tags.py +0 -0
  681. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/service/picture_stats.py +0 -0
  682. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/service/scope_table.py +0 -0
  683. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/service/smart_score_invalidation.py +0 -0
  684. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/service/tag_prediction_utils.py +0 -0
  685. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/service/user_settings_utils.py +0 -0
  686. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/snapshot_compression.py +0 -0
  687. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/sql_chunking.py +0 -0
  688. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/stack/__init__.py +0 -0
  689. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/stack/stack_utils.py +0 -0
  690. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/system_utils.py +0 -0
  691. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/tag_reset_registry.py +0 -0
  692. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/unprocessable_image_registry.py +0 -0
  693. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/vram_utils.py +0 -0
  694. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/watermark.py +0 -0
  695. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/utils/workflow_ids.py +0 -0
  696. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/vault.py +0 -0
  697. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/work_planner.py +0 -0
  698. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/worker_config.py +0 -0
  699. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/ws/__init__.py +0 -0
  700. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash/ws/broadcaster.py +0 -0
  701. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash.egg-info/dependency_links.txt +0 -0
  702. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash.egg-info/entry_points.txt +0 -0
  703. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/pixlstash.egg-info/top_level.txt +0 -0
  704. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/setup.cfg +0 -0
  705. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/setup.py +0 -0
  706. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_adapter_attachment.py +0 -0
  707. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_adapter_header.py +0 -0
  708. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_aitoolkit_run.py +0 -0
  709. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_anomaly_penalty.py +0 -0
  710. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_anomaly_region_scope.py +0 -0
  711. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_anomaly_thresholds_cache.py +0 -0
  712. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_api_coverage.py +0 -0
  713. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_app_permission_repair.py +0 -0
  714. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_architecture_guardrails.py +0 -0
  715. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_async_import_staging.py +0 -0
  716. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_auth_read_path.py +0 -0
  717. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_authentication.py +0 -0
  718. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_authz_gate_step3.py +0 -0
  719. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_authz_gate_step4.py +0 -0
  720. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_authz_host_capability_16_3.py +0 -0
  721. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_authz_library_pin.py +0 -0
  722. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_backend_order_stability.py +0 -0
  723. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_batch_apply_scores.py +0 -0
  724. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_batch_character_likeness_scope.py +0 -0
  725. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_build_desktop_runtime.py +0 -0
  726. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_builtin_models.py +0 -0
  727. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_character_face_assignment.py +0 -0
  728. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_characters_api.py +0 -0
  729. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_checkpoint_hash_finder.py +0 -0
  730. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_ci_shards.py +0 -0
  731. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_cli_documentation.py +0 -0
  732. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_clip_text_embedding_similarity.py +0 -0
  733. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_comfyui_api_prompt_extraction.py +0 -0
  734. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_comfyui_recipe_route.py +0 -0
  735. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_comfyui_stack_filter.py +0 -0
  736. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_comfyui_submit_prompt.py +0 -0
  737. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_comfyui_workflow_pull.py +0 -0
  738. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_cpu_query_encoders.py +0 -0
  739. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_database_engine_config.py +0 -0
  740. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_dedup_mixed_stacks.py +0 -0
  741. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_dedup_sweep_api.py +0 -0
  742. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_dedup_sweep_service.py +0 -0
  743. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_dedup_tier_service.py +0 -0
  744. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_dedup_tiers_api.py +0 -0
  745. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_dedup_verdict_service.py +0 -0
  746. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_default_device_override.py +0 -0
  747. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_description_cancel_blanking.py +0 -0
  748. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_detection_florence.py +0 -0
  749. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_detection_model.py +0 -0
  750. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_detections_scope.py +0 -0
  751. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_docker_demo_hub_rewrite.py +0 -0
  752. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_docker_windows_host_paths.py +0 -0
  753. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_except_hygiene_guardrail.py +0 -0
  754. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_export_api.py +0 -0
  755. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_face_detection_extreme_aspect_ratio.py +0 -0
  756. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_face_extraction_speed.py +0 -0
  757. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_face_score_aggregation.py +0 -0
  758. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_facial_features_worker.py +0 -0
  759. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_find_orphaned_files.py +0 -0
  760. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_finder_query_cost.py +0 -0
  761. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_florence.py +0 -0
  762. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_florence_model_variant.py +0 -0
  763. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_folder_structure_commit.py +0 -0
  764. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_folder_structure_read.py +0 -0
  765. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_frame_count.py +0 -0
  766. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_full_pipeline.py +0 -0
  767. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_gfs_snapshot_schedule.py +0 -0
  768. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_guest_scoring.py +0 -0
  769. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_hub_bootstrap.py +0 -0
  770. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_hub_engine.py +0 -0
  771. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_hub_registry.py +0 -0
  772. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_identity_storage_guardrail.py +0 -0
  773. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_image_embedding_worker.py +0 -0
  774. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_image_plugins_api.py +0 -0
  775. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_import_scrapheap_match.py +0 -0
  776. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_impossible_clear.py +0 -0
  777. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_impossible_clear_authz.py +0 -0
  778. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_impossible_filter.py +0 -0
  779. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_index_install_type.py +0 -0
  780. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_inline_rotate.py +0 -0
  781. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_insightface_model_pack.py +0 -0
  782. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_insightface_relocation.py +0 -0
  783. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_install_type_buckets.py +0 -0
  784. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_invalid_image_endless_retry.py +0 -0
  785. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_ip_locality_fail_closed.py +0 -0
  786. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_justified_thumbnails.py +0 -0
  787. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_keep_cover_only.py +0 -0
  788. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_known_base_model_identify.py +0 -0
  789. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_known_base_models.py +0 -0
  790. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_label_ledger.py +0 -0
  791. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_libraries_routes.py +0 -0
  792. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_library_backup.py +0 -0
  793. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_library_caption_sync.py +0 -0
  794. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_library_destination_blocklist.py +0 -0
  795. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_library_generation_coordinator.py +0 -0
  796. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_library_insights.py +0 -0
  797. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_library_layout.py +0 -0
  798. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_library_restore_cli.py +0 -0
  799. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_library_root_scan.py +0 -0
  800. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_library_settings.py +0 -0
  801. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_library_switch.py +0 -0
  802. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_likeness_and_face_search.py +0 -0
  803. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_likeness_worker.py +0 -0
  804. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_managed_model_store.py +0 -0
  805. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_many_to_many_face_data.py +0 -0
  806. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_mcp_server.py +0 -0
  807. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_metadata_hash.py +0 -0
  808. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_metadata_hash_batching.py +0 -0
  809. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_model_file_classification.py +0 -0
  810. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_model_folder_scanner.py +0 -0
  811. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_model_icons.py +0 -0
  812. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_model_move.py +0 -0
  813. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_model_shelf_fixtures.py +0 -0
  814. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_model_shelf_library_fixture.py +0 -0
  815. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_model_shelf_scan_invariants.py +0 -0
  816. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_model_unload_race.py +0 -0
  817. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_mps_device_check.py +0 -0
  818. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_mps_memory_and_providers.py +0 -0
  819. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_near_neighbor.py +0 -0
  820. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_ocr_text.py +0 -0
  821. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_openapi_response_schemas.py +0 -0
  822. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_operation_log.py +0 -0
  823. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_orientation.py +0 -0
  824. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_path_containment.py +0 -0
  825. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_pending_score_invalidation.py +0 -0
  826. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_person_tags.py +0 -0
  827. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_picture_is_video.py +0 -0
  828. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_picture_mutation_scope.py +0 -0
  829. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_picture_plugins.py +0 -0
  830. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_picture_recipe.py +0 -0
  831. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_picture_set_locking.py +0 -0
  832. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_picture_sets.py +0 -0
  833. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_picture_sets_query_cost.py +0 -0
  834. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_picture_stack_utils.py +0 -0
  835. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_pictures_stream.py +0 -0
  836. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_pipeline_stage_contracts.py +0 -0
  837. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_pipeline_throughput_verification.py +0 -0
  838. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_plugin_create.py +0 -0
  839. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_plugin_install.py +0 -0
  840. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_plugin_lifecycle_gaps.py +0 -0
  841. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_predicate_filter.py +0 -0
  842. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_process_teardown.py +0 -0
  843. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_project_membership_service.py +0 -0
  844. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_projects_api.py +0 -0
  845. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_prompt_match.py +0 -0
  846. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_quality_task_shutdown.py +0 -0
  847. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_rate_limiter.py +0 -0
  848. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_read_token_security.py +0 -0
  849. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_reference_folder_listing_count_parity.py +0 -0
  850. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_reference_folder_moves.py +0 -0
  851. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_reference_folder_sidecars.py +0 -0
  852. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_reference_folder_watcher.py +0 -0
  853. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_repair_copied_face_rows.py +0 -0
  854. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_restore.py +0 -0
  855. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_reviews_api.py +0 -0
  856. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_rocm_device_check.py +0 -0
  857. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_root_scan_first_import.py +0 -0
  858. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_saved_recipes.py +0 -0
  859. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_scope_table.py +0 -0
  860. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_score_agreement_stats.py +0 -0
  861. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_scrapheap_retention.py +0 -0
  862. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_security_supported_versions.py +0 -0
  863. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_server.py +0 -0
  864. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_server_external_listener.py +0 -0
  865. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_server_simple.py +0 -0
  866. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_share_link_library_pin.py +0 -0
  867. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_sidebar_counts_query_cost.py +0 -0
  868. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_smart_score_consistency.py +0 -0
  869. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_smart_score_invalidation.py +0 -0
  870. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_snapshot_compression.py +0 -0
  871. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_snapshots.py +0 -0
  872. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_snapshots_auth.py +0 -0
  873. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_ssl_generation.py +0 -0
  874. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_stack_detection.py +0 -0
  875. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_stack_leader_scope.py +0 -0
  876. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_stack_position_invariant.py +0 -0
  877. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_stack_state_filter.py +0 -0
  878. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_stacks_api.py +0 -0
  879. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_stacks_membership.py +0 -0
  880. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_startup_banner_encoding.py +0 -0
  881. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_startup_permissions.py +0 -0
  882. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_stats_api.py +0 -0
  883. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_system_utils.py +0 -0
  884. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_tag_health_api.py +0 -0
  885. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_tag_prediction_backfill.py +0 -0
  886. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_tag_prediction_scope.py +0 -0
  887. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_tag_predictions_api.py +0 -0
  888. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_tag_suggestions_api.py +0 -0
  889. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_tag_task.py +0 -0
  890. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_tag_worker.py +0 -0
  891. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_tagger_plugin_registry.py +0 -0
  892. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_tagger_runs_api.py +0 -0
  893. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_tagger_user_plugins.py +0 -0
  894. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_task_runner_submit_and_wait.py +0 -0
  895. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_telemetry_install_id.py +0 -0
  896. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_telemetry_install_id_authz.py +0 -0
  897. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_telemetry_sender.py +0 -0
  898. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_temp_vault_first_import.py +0 -0
  899. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_thumbnail_cache_headers.py +0 -0
  900. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_thumbnail_location.py +0 -0
  901. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_token_identity.py +0 -0
  902. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_user_settings_tagger_settings.py +0 -0
  903. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_vram_batch_budget.py +0 -0
  904. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_vram_oom_retry.py +0 -0
  905. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_watch_folder_worker.py +0 -0
  906. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_websocket_auth.py +0 -0
  907. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_work_planner.py +0 -0
  908. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_workers_api.py +0 -0
  909. {pixlstash-1.12.0.dev6 → pixlstash-1.12.0.dev7}/tests/test_ws_broadcaster.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pixlstash
3
- Version: 1.12.0.dev6
3
+ Version: 1.12.0.dev7
4
4
  Summary: Self-hosted picture library with AI tagging, semantic search, and a clean web UI
5
5
  Author-email: Gaute Lindkvist <lindkvis@gmail.com>
6
6
  License-Expression: GPL-3.0-only AND MIT
@@ -49,7 +49,7 @@ Requires-Dist: sentence_transformers~=5.2
49
49
  Requires-Dist: pillow-heif>=1.3.0
50
50
  Requires-Dist: sqlmodel>=0.0.45
51
51
  Requires-Dist: alembic>=1.18.4
52
- Requires-Dist: python-jose[cryptography]>=3.5.0
52
+ Requires-Dist: cryptography>=50.0.0
53
53
  Requires-Dist: passlib>=1.7.4
54
54
  Requires-Dist: bcrypt<4.0.0,>=3.2.2
55
55
  Requires-Dist: nvidia-ml-py>=13.590.48
@@ -914,7 +914,7 @@ tools are offered; it does not limit the token, which can do anything you can.
914
914
  Extra tools: `list_workflows`, `get_workflow`, `export_workflow_graph`,
915
915
  `import_workflow_graph`, `preflight_workflow`, `run_workflow`.
916
916
 
917
- A stored workflow is never changed in place: importing an edited graph makes a
917
+ An import never changes a stored workflow in place: importing an edited graph makes a
918
918
  new workflow card, and importing an unchanged one matches the stored copy and
919
919
  adds nothing. A different prompt, seed or LoRA is not a graph edit; pass it to
920
920
  the run instead.
@@ -845,7 +845,7 @@ tools are offered; it does not limit the token, which can do anything you can.
845
845
  Extra tools: `list_workflows`, `get_workflow`, `export_workflow_graph`,
846
846
  `import_workflow_graph`, `preflight_workflow`, `run_workflow`.
847
847
 
848
- A stored workflow is never changed in place: importing an edited graph makes a
848
+ An import never changes a stored workflow in place: importing an edited graph makes a
849
849
  new workflow card, and importing an unchanged one matches the stored copy and
850
850
  adds nothing. A different prompt, seed or LoRA is not a graph edit; pass it to
851
851
  the run instead.
@@ -1,17 +1,17 @@
1
1
  {
2
2
  "name": "pixlstash-frontend",
3
- "version": "1.12.0-dev.6",
3
+ "version": "1.12.0-dev.7",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "pixlstash-frontend",
9
- "version": "1.12.0-dev.6",
9
+ "version": "1.12.0-dev.7",
10
10
  "dependencies": {
11
11
  "@mdi/font": "^7.4.47",
12
12
  "axios": "^1.18.0",
13
13
  "pinia": "^3.0.4",
14
- "vue": "^3.5.22",
14
+ "vue": "^3.5.43",
15
15
  "vue-router": "^4.6.4",
16
16
  "vuetify": "^3.6.7"
17
17
  },
@@ -71,30 +71,30 @@
71
71
  "license": "MIT"
72
72
  },
73
73
  "node_modules/@babel/helper-string-parser": {
74
- "version": "7.27.1",
75
- "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz",
76
- "integrity": "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==",
74
+ "version": "7.29.7",
75
+ "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz",
76
+ "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==",
77
77
  "license": "MIT",
78
78
  "engines": {
79
79
  "node": ">=6.9.0"
80
80
  }
81
81
  },
82
82
  "node_modules/@babel/helper-validator-identifier": {
83
- "version": "7.28.5",
84
- "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.28.5.tgz",
85
- "integrity": "sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==",
83
+ "version": "7.29.7",
84
+ "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.29.7.tgz",
85
+ "integrity": "sha512-qehxGkRj55h/ff8EMaJ+cYhyaKlHIxqYDn682wQD7RNp9UujOQsHog2uS0r2vzr4pW+sXf90NeeayjcNaX3fFg==",
86
86
  "license": "MIT",
87
87
  "engines": {
88
88
  "node": ">=6.9.0"
89
89
  }
90
90
  },
91
91
  "node_modules/@babel/parser": {
92
- "version": "7.28.5",
93
- "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.28.5.tgz",
94
- "integrity": "sha512-KKBU1VGYR7ORr3At5HAtUQ+TV3SzRCXmA/8OdDZiLDBIZxVyzXuztPjfLd3BV1PRAQGCMWWSHYhL0F8d5uHBDQ==",
92
+ "version": "7.29.9",
93
+ "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.29.9.tgz",
94
+ "integrity": "sha512-CjXrNHTnvqBVqHgdBysY3vk2T8tpJHb5/RMeHJBTyVa9xgugCB0CJTx/3oO8RV2QRQP391RWpB7D6hLjm8V9uA==",
95
95
  "license": "MIT",
96
96
  "dependencies": {
97
- "@babel/types": "^7.28.5"
97
+ "@babel/types": "^7.29.8"
98
98
  },
99
99
  "bin": {
100
100
  "parser": "bin/babel-parser.js"
@@ -104,13 +104,13 @@
104
104
  }
105
105
  },
106
106
  "node_modules/@babel/types": {
107
- "version": "7.28.5",
108
- "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.28.5.tgz",
109
- "integrity": "sha512-qQ5m48eI/MFLQ5PxQj4PFaprjyCTLI37ElWMmNs0K8Lk3dVeOdNpB3ks8jc7yM5CDmVC73eMVk/trk3fgmrUpA==",
107
+ "version": "7.29.8",
108
+ "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.8.tgz",
109
+ "integrity": "sha512-Vj1jF3cPfxg7OAfoI7QnVKLoILlm2JF9pnVHrX8qx7AHMiYWT+NDAA7jChlNgRS4WTLc/fD1lXLmPixluj+3Gg==",
110
110
  "license": "MIT",
111
111
  "dependencies": {
112
- "@babel/helper-string-parser": "^7.27.1",
113
- "@babel/helper-validator-identifier": "^7.28.5"
112
+ "@babel/helper-string-parser": "^7.29.7",
113
+ "@babel/helper-validator-identifier": "^7.29.7"
114
114
  },
115
115
  "engines": {
116
116
  "node": ">=6.9.0"
@@ -990,53 +990,53 @@
990
990
  }
991
991
  },
992
992
  "node_modules/@vue/compiler-core": {
993
- "version": "3.5.22",
994
- "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.22.tgz",
995
- "integrity": "sha512-jQ0pFPmZwTEiRNSb+i9Ow/I/cHv2tXYqsnHKKyCQ08irI2kdF5qmYedmF8si8mA7zepUFmJ2hqzS8CQmNOWOkQ==",
993
+ "version": "3.5.43",
994
+ "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.43.tgz",
995
+ "integrity": "sha512-zdiLhnbe1QQqgDT8xZMpNmyqZ3qlI+/Q/FHQco57Kwl/b05HhCzN6eVGN9QU9rbga4CrS0H5SYY8VGHZCt/1Hg==",
996
996
  "license": "MIT",
997
997
  "dependencies": {
998
- "@babel/parser": "^7.28.4",
999
- "@vue/shared": "3.5.22",
1000
- "entities": "^4.5.0",
998
+ "@babel/parser": "^7.29.8",
999
+ "@vue/shared": "3.5.43",
1000
+ "entities": "^7.0.1",
1001
1001
  "estree-walker": "^2.0.2",
1002
1002
  "source-map-js": "^1.2.1"
1003
1003
  }
1004
1004
  },
1005
1005
  "node_modules/@vue/compiler-dom": {
1006
- "version": "3.5.22",
1007
- "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.22.tgz",
1008
- "integrity": "sha512-W8RknzUM1BLkypvdz10OVsGxnMAuSIZs9Wdx1vzA3mL5fNMN15rhrSCLiTm6blWeACwUwizzPVqGJgOGBEN/hA==",
1006
+ "version": "3.5.43",
1007
+ "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.43.tgz",
1008
+ "integrity": "sha512-PEZoAk3NQmsn/ejMzSOCyTYqwGqczrWm70PuhBKjjv1+TCoQAaO/zOqNwjV+honlNstT5ILxtc+8r8UUfj+iEQ==",
1009
1009
  "license": "MIT",
1010
1010
  "dependencies": {
1011
- "@vue/compiler-core": "3.5.22",
1012
- "@vue/shared": "3.5.22"
1011
+ "@vue/compiler-core": "3.5.43",
1012
+ "@vue/shared": "3.5.43"
1013
1013
  }
1014
1014
  },
1015
1015
  "node_modules/@vue/compiler-sfc": {
1016
- "version": "3.5.22",
1017
- "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.22.tgz",
1018
- "integrity": "sha512-tbTR1zKGce4Lj+JLzFXDq36K4vcSZbJ1RBu8FxcDv1IGRz//Dh2EBqksyGVypz3kXpshIfWKGOCcqpSbyGWRJQ==",
1016
+ "version": "3.5.43",
1017
+ "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.43.tgz",
1018
+ "integrity": "sha512-FCbrG3XNCRl+js3huuKx4IVHBLTvMkJhVepjbxSPu1gn4yWLaYtGNQdjJGZaMytXB6qb76qQDDmDSLy/vkmleQ==",
1019
1019
  "license": "MIT",
1020
1020
  "dependencies": {
1021
- "@babel/parser": "^7.28.4",
1022
- "@vue/compiler-core": "3.5.22",
1023
- "@vue/compiler-dom": "3.5.22",
1024
- "@vue/compiler-ssr": "3.5.22",
1025
- "@vue/shared": "3.5.22",
1021
+ "@babel/parser": "^7.29.8",
1022
+ "@vue/compiler-core": "3.5.43",
1023
+ "@vue/compiler-dom": "3.5.43",
1024
+ "@vue/compiler-ssr": "3.5.43",
1025
+ "@vue/shared": "3.5.43",
1026
1026
  "estree-walker": "^2.0.2",
1027
- "magic-string": "^0.30.19",
1028
- "postcss": "^8.5.6",
1027
+ "magic-string": "^0.30.21",
1028
+ "postcss": "^8.5.28",
1029
1029
  "source-map-js": "^1.2.1"
1030
1030
  }
1031
1031
  },
1032
1032
  "node_modules/@vue/compiler-ssr": {
1033
- "version": "3.5.22",
1034
- "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.22.tgz",
1035
- "integrity": "sha512-GdgyLvg4R+7T8Nk2Mlighx7XGxq/fJf9jaVofc3IL0EPesTE86cP/8DD1lT3h1JeZr2ySBvyqKQJgbS54IX1Ww==",
1033
+ "version": "3.5.43",
1034
+ "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.43.tgz",
1035
+ "integrity": "sha512-GF62orf7KiJX9RqrHNGrYBudsQGD0OhJ5nDs90O8UiDuS40+YMYomiXu6w6EuvtXuRDc3MSNis3EaaSKAVSWpg==",
1036
1036
  "license": "MIT",
1037
1037
  "dependencies": {
1038
- "@vue/compiler-dom": "3.5.22",
1039
- "@vue/shared": "3.5.22"
1038
+ "@vue/compiler-dom": "3.5.43",
1039
+ "@vue/shared": "3.5.43"
1040
1040
  }
1041
1041
  },
1042
1042
  "node_modules/@vue/devtools-api": {
@@ -1073,53 +1073,51 @@
1073
1073
  }
1074
1074
  },
1075
1075
  "node_modules/@vue/reactivity": {
1076
- "version": "3.5.22",
1077
- "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.5.22.tgz",
1078
- "integrity": "sha512-f2Wux4v/Z2pqc9+4SmgZC1p73Z53fyD90NFWXiX9AKVnVBEvLFOWCEgJD3GdGnlxPZt01PSlfmLqbLYzY/Fw4A==",
1076
+ "version": "3.5.43",
1077
+ "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.5.43.tgz",
1078
+ "integrity": "sha512-G/c9GyOZNI2jVaaS6OX1EF1SSFSv7H0ERqNTl4+DTFMlZmB5eVAB53aLQNam/7NL2NPtaDD7RdVrzf8uJzMuOA==",
1079
1079
  "license": "MIT",
1080
1080
  "dependencies": {
1081
- "@vue/shared": "3.5.22"
1081
+ "@vue/shared": "3.5.43"
1082
1082
  }
1083
1083
  },
1084
1084
  "node_modules/@vue/runtime-core": {
1085
- "version": "3.5.22",
1086
- "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.5.22.tgz",
1087
- "integrity": "sha512-EHo4W/eiYeAzRTN5PCextDUZ0dMs9I8mQ2Fy+OkzvRPUYQEyK9yAjbasrMCXbLNhF7P0OUyivLjIy0yc6VrLJQ==",
1085
+ "version": "3.5.43",
1086
+ "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.5.43.tgz",
1087
+ "integrity": "sha512-hU6U6VnVhBGQDpvlnnDlIB8ZGJBiOcgk2lh/0InltHiz3D8oSkluvuvY+do1G2H3+udeKFsmaBlgVYP7gXQzEw==",
1088
1088
  "license": "MIT",
1089
1089
  "dependencies": {
1090
- "@vue/reactivity": "3.5.22",
1091
- "@vue/shared": "3.5.22"
1090
+ "@vue/reactivity": "3.5.43",
1091
+ "@vue/shared": "3.5.43"
1092
1092
  }
1093
1093
  },
1094
1094
  "node_modules/@vue/runtime-dom": {
1095
- "version": "3.5.22",
1096
- "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.5.22.tgz",
1097
- "integrity": "sha512-Av60jsryAkI023PlN7LsqrfPvwfxOd2yAwtReCjeuugTJTkgrksYJJstg1e12qle0NarkfhfFu1ox2D+cQotww==",
1095
+ "version": "3.5.43",
1096
+ "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.5.43.tgz",
1097
+ "integrity": "sha512-Bb2Jc0YjjJdMt1SJmb9b2L/IWd3I8lIT9x9eS/xvvP9CiVgna0ffua74xKRmt4/uSJ+0r4iN8ex1jrqkhQGWQw==",
1098
1098
  "license": "MIT",
1099
1099
  "dependencies": {
1100
- "@vue/reactivity": "3.5.22",
1101
- "@vue/runtime-core": "3.5.22",
1102
- "@vue/shared": "3.5.22",
1103
- "csstype": "^3.1.3"
1100
+ "@vue/reactivity": "3.5.43",
1101
+ "@vue/runtime-core": "3.5.43",
1102
+ "@vue/shared": "3.5.43",
1103
+ "csstype": "^3.2.3"
1104
1104
  }
1105
1105
  },
1106
1106
  "node_modules/@vue/server-renderer": {
1107
- "version": "3.5.22",
1108
- "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.5.22.tgz",
1109
- "integrity": "sha512-gXjo+ao0oHYTSswF+a3KRHZ1WszxIqO7u6XwNHqcqb9JfyIL/pbWrrh/xLv7jeDqla9u+LK7yfZKHih1e1RKAQ==",
1107
+ "version": "3.5.43",
1108
+ "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.5.43.tgz",
1109
+ "integrity": "sha512-l2Ygjv9NehV94PSBxNWsAHC0j/eIIKbn92mBuWXAPGLnn6HfJ6MH5ubsd+Nk0YoZ5FRuxWI1P2VSoh+dbPQhCQ==",
1110
1110
  "license": "MIT",
1111
1111
  "dependencies": {
1112
- "@vue/compiler-ssr": "3.5.22",
1113
- "@vue/shared": "3.5.22"
1114
- },
1115
- "peerDependencies": {
1116
- "vue": "3.5.22"
1112
+ "@vue/compiler-ssr": "3.5.43",
1113
+ "@vue/runtime-dom": "3.5.43",
1114
+ "@vue/shared": "3.5.43"
1117
1115
  }
1118
1116
  },
1119
1117
  "node_modules/@vue/shared": {
1120
- "version": "3.5.22",
1121
- "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.22.tgz",
1122
- "integrity": "sha512-F4yc6palwq3TT0u+FYf0Ns4Tfl9GRFURDN2gWG7L1ecIaS/4fCIuFOjMTnCyjsu/OK6vaDKLCrGAa+KvvH+h4w==",
1118
+ "version": "3.5.43",
1119
+ "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.43.tgz",
1120
+ "integrity": "sha512-uksS7YGMR5NZyr4JNq0Rp+QyLns0ueaz20KwzIPW9R0LH1Vnt4E+XUM29PNseEbf1www2gOuhuDi5AKOIXag9Q==",
1123
1121
  "license": "MIT"
1124
1122
  },
1125
1123
  "node_modules/@vue/test-utils": {
@@ -1396,9 +1394,9 @@
1396
1394
  }
1397
1395
  },
1398
1396
  "node_modules/csstype": {
1399
- "version": "3.1.3",
1400
- "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz",
1401
- "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==",
1397
+ "version": "3.2.3",
1398
+ "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.2.3.tgz",
1399
+ "integrity": "sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==",
1402
1400
  "license": "MIT"
1403
1401
  },
1404
1402
  "node_modules/data-urls": {
@@ -1499,9 +1497,9 @@
1499
1497
  }
1500
1498
  },
1501
1499
  "node_modules/entities": {
1502
- "version": "4.5.0",
1503
- "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz",
1504
- "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==",
1500
+ "version": "7.0.1",
1501
+ "resolved": "https://registry.npmjs.org/entities/-/entities-7.0.1.tgz",
1502
+ "integrity": "sha512-TWrgLOFUQTH994YUyl1yT4uyavY5nNB5muff+RtWaqNVCAK408b5ZnnbNAUEWLTCpum9w6arT70i1XdQ4UeOPA==",
1505
1503
  "license": "BSD-2-Clause",
1506
1504
  "engines": {
1507
1505
  "node": ">=0.12"
@@ -2662,9 +2660,9 @@
2662
2660
  "license": "MIT"
2663
2661
  },
2664
2662
  "node_modules/nanoid": {
2665
- "version": "3.3.18",
2666
- "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.18.tgz",
2667
- "integrity": "sha512-DTg4MJbGMWkfi6VZFdNt2/caMbQy4Ou+Op/hJQvGEWcnVfoA1QA+xzRKAzw9jD6+GVOOeYr/mIcuDSdug6F6+w==",
2663
+ "version": "3.3.20",
2664
+ "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.20.tgz",
2665
+ "integrity": "sha512-uKdg2G3GNCKQn9byYOpxbGqrT2fGO5KRt5J/8b3pok8rT6qxGWF6hxMyJiEYtAf+FVyYuD9hRaDqX5uPFYJ4ZQ==",
2668
2666
  "funding": [
2669
2667
  {
2670
2668
  "type": "github",
@@ -2936,9 +2934,9 @@
2936
2934
  }
2937
2935
  },
2938
2936
  "node_modules/postcss": {
2939
- "version": "8.5.23",
2940
- "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.23.tgz",
2941
- "integrity": "sha512-g50586zr4bZmwFiTlflMu8E0bDTb5I5gertgwAKmsdUlTQIhZtunzUlD1WSzwcVWPoAVpsrA6vlfCD7oXvRwgg==",
2937
+ "version": "8.5.29",
2938
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.29.tgz",
2939
+ "integrity": "sha512-49cGhUbXj8Qenv0iTMxA1cFBzxXoctpC9Ujd77t1WcbJIr6nF/eI7g/8MgxrYldFRuAXvja7xQRwavoW7kgrxQ==",
2942
2940
  "funding": [
2943
2941
  {
2944
2942
  "type": "opencollective",
@@ -2955,18 +2953,18 @@
2955
2953
  ],
2956
2954
  "license": "MIT",
2957
2955
  "dependencies": {
2958
- "nanoid": "^3.3.16",
2956
+ "nanoid": "^3.3.19",
2959
2957
  "picocolors": "^1.1.1",
2960
- "source-map-js": "^1.2.1"
2958
+ "source-map-js": "^1.2.2"
2961
2959
  },
2962
2960
  "engines": {
2963
2961
  "node": "^10 || ^12 || >=14"
2964
2962
  }
2965
2963
  },
2966
2964
  "node_modules/postcss-selector-parser": {
2967
- "version": "7.1.5",
2968
- "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.5.tgz",
2969
- "integrity": "sha512-KvvtD7SrlBP7dlgkBghEE3r84CABm5SmV2aNcG4oCA+qDnJ/tvKonFVvwWAyyWUEwxuNawdfEAZKP9zM3oZ2Uw==",
2965
+ "version": "7.1.6",
2966
+ "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.6.tgz",
2967
+ "integrity": "sha512-7qASPzhKF2l2KLboRZux8CCTRMdGiV08vWmyKzPz22qZ7ZjQBOeY7rNzNoCLSUiftJ7HUq0GERHmxw/t0dCdMw==",
2970
2968
  "dev": true,
2971
2969
  "license": "MIT",
2972
2970
  "dependencies": {
@@ -3120,9 +3118,9 @@
3120
3118
  "license": "ISC"
3121
3119
  },
3122
3120
  "node_modules/source-map-js": {
3123
- "version": "1.2.1",
3124
- "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz",
3125
- "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==",
3121
+ "version": "1.2.2",
3122
+ "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.2.tgz",
3123
+ "integrity": "sha512-KGj/8Y43x35aZVDtt+J4mK1hoLGHULMYfSkODJNQjNDC3oW1PqPoxMwo0pLUsWM/UEGzON/NxeHywEfNXNP3Vw==",
3126
3124
  "license": "BSD-3-Clause",
3127
3125
  "engines": {
3128
3126
  "node": ">=0.10.0"
@@ -3473,16 +3471,16 @@
3473
3471
  }
3474
3472
  },
3475
3473
  "node_modules/vue": {
3476
- "version": "3.5.22",
3477
- "resolved": "https://registry.npmjs.org/vue/-/vue-3.5.22.tgz",
3478
- "integrity": "sha512-toaZjQ3a/G/mYaLSbV+QsQhIdMo9x5rrqIpYRObsJ6T/J+RyCSFwN2LHNVH9v8uIcljDNa3QzPVdv3Y6b9hAJQ==",
3474
+ "version": "3.5.43",
3475
+ "resolved": "https://registry.npmjs.org/vue/-/vue-3.5.43.tgz",
3476
+ "integrity": "sha512-o5qZoksdnjIKvW1srZ3ab7pcDNYAerBjRe54D0LBLfRdCYFrSgBHVXokMas35czQc0//lmx4/tuY4ZNQ+Rf2Ng==",
3479
3477
  "license": "MIT",
3480
3478
  "dependencies": {
3481
- "@vue/compiler-dom": "3.5.22",
3482
- "@vue/compiler-sfc": "3.5.22",
3483
- "@vue/runtime-dom": "3.5.22",
3484
- "@vue/server-renderer": "3.5.22",
3485
- "@vue/shared": "3.5.22"
3479
+ "@vue/compiler-dom": "3.5.43",
3480
+ "@vue/compiler-sfc": "3.5.43",
3481
+ "@vue/runtime-dom": "3.5.43",
3482
+ "@vue/server-renderer": "3.5.43",
3483
+ "@vue/shared": "3.5.43"
3486
3484
  },
3487
3485
  "peerDependencies": {
3488
3486
  "typescript": "*"
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "pixlstash-frontend",
3
3
  "private": true,
4
- "version": "1.12.0-dev.6",
4
+ "version": "1.12.0-dev.7",
5
5
  "type": "module",
6
6
  "scripts": {
7
7
  "dev": "vite",
@@ -21,7 +21,7 @@
21
21
  "@mdi/font": "^7.4.47",
22
22
  "axios": "^1.18.0",
23
23
  "pinia": "^3.0.4",
24
- "vue": "^3.5.22",
24
+ "vue": "^3.5.43",
25
25
  "vue-router": "^4.6.4",
26
26
  "vuetify": "^3.6.7"
27
27
  },
@@ -1820,6 +1820,12 @@ ROUTE_POLICIES: dict[tuple[str, str], RoutePolicy] = {
1820
1820
  _OWNER,
1821
1821
  justification="A workflow's pinned parameters; PUT blocked for READ tokens; owner only",
1822
1822
  ),
1823
+ # Expose a parameter: the literal inputs of the workflow's graph, resolved
1824
+ # out of the whole library like the LoRA chain's, with ComfyUI's options.
1825
+ ("GET", "/api/v1/workflows/{workflow_id}/form-inputs"): RoutePolicy(
1826
+ _OWNER,
1827
+ justification="A workflow's graph inputs and their values, resolved from the whole library; owner only",
1828
+ ),
1823
1829
  ("PUT", "/api/v1/workflows/{workflow_id}/inputs"): RoutePolicy(
1824
1830
  _OWNER,
1825
1831
  justification="A workflow's picture-input setup, which names a Fixed picture by content; PUT blocked for READ tokens; owner only",
@@ -1851,14 +1857,15 @@ ROUTE_POLICIES: dict[tuple[str, str], RoutePolicy] = {
1851
1857
  # The LoRA chain editor (#1478). The read resolves the base graph out of
1852
1858
  # the whole library like its siblings, names the shelf LoRA each loader
1853
1859
  # loads, and reaches the owner's ComfyUI for object_info; the write is the
1854
- # insertion above generalised to the whole chain, and files a new file.
1860
+ # insertion above generalised to the whole chain: a new workflow, or with
1861
+ # `overwrite` this workflow's next version.
1855
1862
  ("GET", "/api/v1/workflows/{workflow_id}/lora-chain"): RoutePolicy(
1856
1863
  _OWNER,
1857
1864
  justification="A workflow's LoRA loaders and the shelf LoRAs they load, resolved from the whole library; owner only",
1858
1865
  ),
1859
1866
  ("PUT", "/api/v1/workflows/{workflow_id}/lora-chain"): RoutePolicy(
1860
1867
  _OWNER,
1861
- justification="Write a copy of a workflow's graph with its LoRA chain edited; PUT blocked for READ tokens; owner only",
1868
+ justification="Write a workflow's graph with its LoRA chain edited, as a copy or over the workflow itself; PUT blocked for READ tokens; owner only",
1862
1869
  ),
1863
1870
  # Clone with new models: the read names the shelf's checkpoints, VAEs and
1864
1871
  # text encoders and what recipes have run together, which is the whole
@@ -342,7 +342,7 @@ class Picture(SQLModel, table=True):
342
342
  # The third tier: that recipe with ONE set of parameters, the prompt
343
343
  # included and the seed excluded (a generation is an instance plus a seed).
344
344
  # Two pictures share an instance exactly when they share this value, which
345
- # is what "Covered only" asks, and the join to the hub's per-library
345
+ # is what "While matched" asks, and the join to the hub's per-library
346
346
  # ``workflow_recipe_instance`` row and this picture's ``generation``.
347
347
  workflow_instance_hash: Optional[str] = Field(
348
348
  default=None,
@@ -1 +1 @@
1
- import{$t as e,At as t,B as n,Ct as r,Dt as i,Et as a,Kt as o,Tt as s,Ut as c,Zt as l,_n as u,c as d,gn as f,jt as p,ln as m,r as h,yn as g}from"./AppButton-DL0bttgq.js";var _=[`disabled`,`aria-busy`,`aria-label`],v={key:1,class:`bar-icon-badge-wrap`},y={key:0,class:`bar-filter-badge`},b={key:2,class:`bar-btn-prefix`},x={__name:`AppBarButton`,props:{icon:{type:String,default:``},iconSize:{type:[Number,String],default:0},shape:{type:String,default:`boxed`},prefix:{type:String,default:``},badge:{type:[Number,String],default:null},chevron:{type:Boolean,default:!1},active:{type:Boolean,default:!1},open:{type:Boolean,default:!1},danger:{type:Boolean,default:!1},onDark:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},tooltip:{type:String,default:``},tooltipLocation:{type:String,default:`bottom`}},setup(x,{expose:S}){let C=x,w=l(),T=r(()=>!w.default&&!C.prefix),E=r(()=>C.icon.startsWith(`mdi-`)?C.icon:`mdi-${C.icon}`),D=m(null);d(()=>C.loading,D);function O(){D.value?.focus()}return S({focus:O,el:D}),(r,l)=>(c(),i(`button`,{ref_key:`rootEl`,ref:D,type:`button`,class:u([`bar-btn`,`bar-btn--${x.shape}`,{"bar-btn--icon":T.value&&!x.chevron,"bar-btn--active":x.active,"bar-btn--open":x.open,"bar-btn--danger":x.danger,"bar-btn--loading":x.loading,"bar-btn--on-dark":x.onDark}]),disabled:x.disabled||x.loading,"aria-busy":x.loading?`true`:void 0,"aria-label":T.value&&x.tooltip?x.tooltip:void 0},[x.tooltip?(c(),s(h,{key:0,text:x.tooltip,activator:`parent`,location:x.tooltipLocation,describe:!T.value},null,8,[`text`,`location`,`describe`])):a(``,!0),x.loading||x.icon?(c(),i(`span`,v,[p(f(n),{size:x.iconSize||(T.value?24:18),class:u({"mdi-spin":x.loading})},{default:e(()=>[t(g(x.loading?`mdi-loading`:E.value),1)]),_:1},8,[`size`,`class`]),x.badge!=null&&x.badge!==``&&!x.loading?(c(),i(`span`,y,g(x.badge),1)):a(``,!0)])):a(``,!0),x.prefix?(c(),i(`span`,b,g(x.prefix),1)):a(``,!0),o(r.$slots,`default`),x.chevron?(c(),s(f(n),{key:3,size:`16`,class:`bar-btn-chevron`},{default:e(()=>[...l[0]||=[t(`mdi-menu-down`,-1)]]),_:1})):a(``,!0)],10,_))}};export{x as t};
1
+ import{$t as e,At as t,B as n,Ct as r,Dt as i,Et as a,Kt as o,Tt as s,Ut as c,Zt as l,_n as u,c as d,gn as f,jt as p,ln as m,r as h,yn as g}from"./AppButton-DEORyyiU.js";var _=[`disabled`,`aria-busy`,`aria-label`],v={key:1,class:`bar-icon-badge-wrap`},y={key:0,class:`bar-filter-badge`},b={key:2,class:`bar-btn-prefix`},x={__name:`AppBarButton`,props:{icon:{type:String,default:``},iconSize:{type:[Number,String],default:0},shape:{type:String,default:`boxed`},prefix:{type:String,default:``},badge:{type:[Number,String],default:null},chevron:{type:Boolean,default:!1},active:{type:Boolean,default:!1},open:{type:Boolean,default:!1},danger:{type:Boolean,default:!1},onDark:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},tooltip:{type:String,default:``},tooltipLocation:{type:String,default:`bottom`}},setup(x,{expose:S}){let C=x,w=l(),T=r(()=>!w.default&&!C.prefix),E=r(()=>C.icon.startsWith(`mdi-`)?C.icon:`mdi-${C.icon}`),D=m(null);d(()=>C.loading,D);function O(){D.value?.focus()}return S({focus:O,el:D}),(r,l)=>(c(),i(`button`,{ref_key:`rootEl`,ref:D,type:`button`,class:u([`bar-btn`,`bar-btn--${x.shape}`,{"bar-btn--icon":T.value&&!x.chevron,"bar-btn--active":x.active,"bar-btn--open":x.open,"bar-btn--danger":x.danger,"bar-btn--loading":x.loading,"bar-btn--on-dark":x.onDark}]),disabled:x.disabled||x.loading,"aria-busy":x.loading?`true`:void 0,"aria-label":T.value&&x.tooltip?x.tooltip:void 0},[x.tooltip?(c(),s(h,{key:0,text:x.tooltip,activator:`parent`,location:x.tooltipLocation,describe:!T.value},null,8,[`text`,`location`,`describe`])):a(``,!0),x.loading||x.icon?(c(),i(`span`,v,[p(f(n),{size:x.iconSize||(T.value?24:18),class:u({"mdi-spin":x.loading})},{default:e(()=>[t(g(x.loading?`mdi-loading`:E.value),1)]),_:1},8,[`size`,`class`]),x.badge!=null&&x.badge!==``&&!x.loading?(c(),i(`span`,y,g(x.badge),1)):a(``,!0)])):a(``,!0),x.prefix?(c(),i(`span`,b,g(x.prefix),1)):a(``,!0),o(r.$slots,`default`),x.chevron?(c(),s(f(n),{key:3,size:`16`,class:`bar-btn-chevron`},{default:e(()=>[...l[0]||=[t(`mdi-menu-down`,-1)]]),_:1})):a(``,!0)],10,_))}};export{x as t};