alchemy_cms 7.4.10 → 8.0.0.b

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

Potentially problematic release.


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

Files changed (425) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +16 -5
  3. data/app/assets/builds/alchemy/admin/page-select.css +1 -1
  4. data/app/assets/builds/alchemy/admin/print.css +1 -1
  5. data/app/assets/builds/alchemy/admin.css +2 -2
  6. data/app/assets/builds/alchemy/dark-theme.css +1 -0
  7. data/app/assets/builds/alchemy/light-theme.css +1 -0
  8. data/app/assets/builds/alchemy/theme.css +1 -0
  9. data/app/assets/builds/alchemy/welcome.css +1 -1
  10. data/app/assets/builds/tinymce/skins/content/alchemy/content.min.css +1 -1
  11. data/app/assets/builds/tinymce/skins/content/alchemy-dark/content.min.css +1 -0
  12. data/app/assets/builds/tinymce/skins/ui/alchemy/content.min.css +1 -0
  13. data/app/assets/builds/tinymce/skins/ui/alchemy/skin.min.css +1 -1
  14. data/app/assets/builds/tinymce/skins/ui/alchemy-dark/content.min.css +1 -0
  15. data/app/assets/builds/tinymce/skins/ui/alchemy-dark/skin.min.css +1 -0
  16. data/app/assets/config/alchemy_manifest.js +0 -2
  17. data/app/assets/images/alchemy/element_icons/default.svg +1 -0
  18. data/app/assets/images/alchemy/icons-sprite.svg +1 -0
  19. data/app/components/alchemy/admin/element_select.rb +39 -0
  20. data/app/components/alchemy/admin/resource/applied_filter.rb +29 -0
  21. data/app/components/alchemy/admin/resource/checkbox_filter.rb +36 -0
  22. data/app/components/alchemy/admin/resource/datepicker_filter.rb +42 -0
  23. data/app/components/alchemy/admin/resource/select_filter.rb +43 -0
  24. data/app/components/alchemy/admin/toolbar_button.rb +5 -2
  25. data/app/components/alchemy/ingredients/number_view.rb +18 -0
  26. data/app/controllers/alchemy/admin/attachments_controller.rb +10 -15
  27. data/app/controllers/alchemy/admin/clipboard_controller.rb +2 -6
  28. data/app/controllers/alchemy/admin/elements_controller.rb +3 -1
  29. data/app/controllers/alchemy/admin/languages_controller.rb +1 -1
  30. data/app/controllers/alchemy/admin/pages_controller.rb +15 -15
  31. data/app/controllers/alchemy/admin/pictures_controller.rb +27 -37
  32. data/app/controllers/alchemy/admin/resources_controller.rb +16 -106
  33. data/app/controllers/alchemy/attachments_controller.rb +43 -14
  34. data/app/controllers/alchemy/messages_controller.rb +1 -1
  35. data/app/controllers/alchemy/pages_controller.rb +26 -4
  36. data/app/controllers/concerns/alchemy/admin/resource_filter.rb +93 -0
  37. data/app/decorators/alchemy/element_editor.rb +5 -48
  38. data/app/decorators/alchemy/ingredient_editor.rb +3 -53
  39. data/app/helpers/alchemy/admin/attachments_helper.rb +5 -5
  40. data/app/helpers/alchemy/admin/base_helper.rb +14 -84
  41. data/app/helpers/alchemy/admin/pages_helper.rb +1 -1
  42. data/app/helpers/alchemy/base_helper.rb +0 -30
  43. data/app/helpers/alchemy/elements_block_helper.rb +0 -14
  44. data/app/helpers/alchemy/pages_helper.rb +1 -1
  45. data/{lib → app/helpers}/alchemy/resources_helper.rb +5 -45
  46. data/app/javascript/alchemy_admin/components/action.js +2 -0
  47. data/app/javascript/alchemy_admin/components/alchemy_html_element.js +3 -3
  48. data/app/javascript/alchemy_admin/components/auto_submit.js +20 -0
  49. data/app/javascript/alchemy_admin/components/datepicker.js +18 -7
  50. data/app/javascript/alchemy_admin/components/element_editor/delete_element_button.js +8 -7
  51. data/app/javascript/alchemy_admin/components/element_editor.js +25 -15
  52. data/app/javascript/alchemy_admin/components/element_select.js +43 -0
  53. data/app/javascript/alchemy_admin/components/index.js +3 -0
  54. data/app/javascript/alchemy_admin/components/link_buttons.js +6 -2
  55. data/app/javascript/alchemy_admin/components/remote_select.js +9 -2
  56. data/app/javascript/alchemy_admin/components/tags_autocomplete.js +5 -1
  57. data/app/javascript/alchemy_admin/components/tinymce.js +93 -14
  58. data/app/javascript/alchemy_admin/components/update_check.js +42 -0
  59. data/app/javascript/alchemy_admin/components/uploader/file_upload.js +15 -8
  60. data/app/javascript/alchemy_admin/components/uploader/progress.js +12 -6
  61. data/app/javascript/alchemy_admin/components/uploader.js +4 -2
  62. data/app/javascript/alchemy_admin/confirm_dialog.js +27 -57
  63. data/app/javascript/alchemy_admin/dialog.js +1 -1
  64. data/app/javascript/alchemy_admin/dirty.js +3 -2
  65. data/app/javascript/alchemy_admin/file_editors.js +1 -1
  66. data/app/javascript/alchemy_admin/i18n.js +15 -16
  67. data/app/javascript/alchemy_admin/image_loader.js +4 -2
  68. data/app/javascript/alchemy_admin/initializer.js +1 -49
  69. data/app/javascript/alchemy_admin/picture_editors.js +7 -4
  70. data/app/javascript/alchemy_admin/picture_selector.js +4 -4
  71. data/app/javascript/alchemy_admin/utils/ajax.js +51 -44
  72. data/app/javascript/alchemy_admin.js +3 -8
  73. data/app/jobs/alchemy/delete_picture_job.rb +12 -0
  74. data/app/models/alchemy/admin/filters/base.rb +38 -0
  75. data/app/models/alchemy/admin/filters/checkbox.rb +24 -0
  76. data/app/models/alchemy/admin/filters/datepicker.rb +53 -0
  77. data/app/models/alchemy/admin/filters/select.rb +70 -0
  78. data/app/models/alchemy/admin/resource_name.rb +27 -0
  79. data/app/models/alchemy/attachment.rb +49 -44
  80. data/app/models/alchemy/base_record.rb +2 -0
  81. data/app/models/alchemy/element/definitions.rb +1 -1
  82. data/app/models/alchemy/element/element_ingredients.rb +6 -6
  83. data/app/models/alchemy/element/presenters.rb +3 -12
  84. data/app/models/alchemy/element.rb +10 -27
  85. data/app/models/alchemy/element_definition.rb +190 -0
  86. data/app/models/alchemy/ingredient.rb +10 -43
  87. data/app/models/alchemy/ingredient_definition.rb +134 -0
  88. data/app/models/alchemy/ingredient_validator.rb +7 -3
  89. data/app/models/alchemy/ingredients/number.rb +19 -0
  90. data/app/models/alchemy/language.rb +2 -21
  91. data/app/models/alchemy/message.rb +3 -7
  92. data/app/models/alchemy/node.rb +1 -1
  93. data/app/models/alchemy/page/{page_layouts.rb → definitions.rb} +12 -19
  94. data/app/models/alchemy/page/fixed_attributes.rb +1 -1
  95. data/app/models/alchemy/page/page_elements.rb +13 -14
  96. data/app/models/alchemy/page/page_naming.rb +3 -11
  97. data/app/models/alchemy/page/page_natures.rb +20 -15
  98. data/app/models/alchemy/page/page_scopes.rb +1 -1
  99. data/app/models/alchemy/page.rb +12 -39
  100. data/app/models/alchemy/page_definition.rb +115 -0
  101. data/app/models/alchemy/picture.rb +71 -99
  102. data/app/models/alchemy/picture_variant.rb +115 -5
  103. data/{lib → app/models}/alchemy/resource.rb +4 -18
  104. data/{lib → app/models}/alchemy/searchable_resource.rb +15 -0
  105. data/app/models/alchemy/site/layout.rb +5 -5
  106. data/app/models/alchemy/site.rb +1 -21
  107. data/app/models/alchemy/storage_adapter/active_storage/attachment_url.rb +41 -0
  108. data/app/models/alchemy/storage_adapter/active_storage/picture_url.rb +55 -0
  109. data/app/models/alchemy/storage_adapter/active_storage/preprocessor.rb +40 -0
  110. data/app/models/alchemy/storage_adapter/active_storage.rb +173 -0
  111. data/app/models/alchemy/{attachment/url.rb → storage_adapter/dragonfly/attachment_url.rb} +12 -12
  112. data/app/models/alchemy/storage_adapter/dragonfly/picture_url.rb +75 -0
  113. data/app/models/alchemy/{picture → storage_adapter/dragonfly}/preprocessor.rb +4 -4
  114. data/app/models/alchemy/storage_adapter/dragonfly.rb +205 -0
  115. data/app/models/alchemy/storage_adapter.rb +74 -0
  116. data/app/models/concerns/alchemy/picture_thumbnails.rb +19 -6
  117. data/app/models/concerns/alchemy/relatable_resource.rb +28 -0
  118. data/app/serializers/alchemy/element_serializer.rb +0 -1
  119. data/app/services/alchemy/dragonfly_to_image_processing.rb +100 -0
  120. data/app/stylesheets/alchemy/_custom-properties.scss +162 -0
  121. data/app/stylesheets/alchemy/_defaults.scss +3 -0
  122. data/app/stylesheets/alchemy/_extends.scss +69 -0
  123. data/app/{assets/stylesheets → stylesheets}/alchemy/_mixins.scss +40 -68
  124. data/app/stylesheets/alchemy/_themes.scss +540 -0
  125. data/app/stylesheets/alchemy/_variables.scss +5 -0
  126. data/app/{assets/stylesheets → stylesheets}/alchemy/admin/archive.scss +45 -42
  127. data/app/stylesheets/alchemy/admin/attachments.scss +17 -0
  128. data/app/{assets/stylesheets → stylesheets}/alchemy/admin/base.scss +20 -15
  129. data/app/stylesheets/alchemy/admin/buttons.scss +135 -0
  130. data/app/{assets/stylesheets → stylesheets}/alchemy/admin/clipboard.scss +2 -2
  131. data/app/{assets/stylesheets → stylesheets}/alchemy/admin/dashboard.scss +13 -16
  132. data/app/{assets/stylesheets → stylesheets}/alchemy/admin/dialogs.scss +33 -16
  133. data/app/stylesheets/alchemy/admin/element-select.scss +11 -0
  134. data/app/{assets/stylesheets → stylesheets}/alchemy/admin/elements.scss +239 -133
  135. data/app/{assets/stylesheets → stylesheets}/alchemy/admin/errors.scss +5 -5
  136. data/app/stylesheets/alchemy/admin/filters.scss +57 -0
  137. data/app/{assets/stylesheets → stylesheets}/alchemy/admin/flatpickr.scss +54 -76
  138. data/app/{assets/stylesheets → stylesheets}/alchemy/admin/form_fields.scss +10 -11
  139. data/app/{assets/stylesheets → stylesheets}/alchemy/admin/forms.scss +28 -21
  140. data/app/{assets/stylesheets → stylesheets}/alchemy/admin/frame.scss +20 -18
  141. data/app/stylesheets/alchemy/admin/hints.scss +5 -0
  142. data/app/{assets/stylesheets → stylesheets}/alchemy/admin/icons.scss +1 -1
  143. data/app/{assets/stylesheets → stylesheets}/alchemy/admin/image_library.scss +21 -61
  144. data/app/{assets/stylesheets → stylesheets}/alchemy/admin/images.scss +1 -1
  145. data/app/stylesheets/alchemy/admin/labels.scss +5 -0
  146. data/app/{assets/stylesheets → stylesheets}/alchemy/admin/lists.scss +3 -3
  147. data/app/{assets/stylesheets → stylesheets}/alchemy/admin/navigation.scss +55 -59
  148. data/app/{assets/stylesheets → stylesheets}/alchemy/admin/node-select.scss +1 -10
  149. data/app/{assets/stylesheets → stylesheets}/alchemy/admin/nodes.scss +21 -18
  150. data/app/{assets/stylesheets → stylesheets}/alchemy/admin/notices.scss +20 -19
  151. data/app/{assets/stylesheets → stylesheets}/alchemy/admin/page-select.scss +18 -2
  152. data/app/stylesheets/alchemy/admin/pagination.scss +137 -0
  153. data/app/stylesheets/alchemy/admin/preview_window.scss +46 -0
  154. data/app/{assets/stylesheets → stylesheets}/alchemy/admin/print.scss +1 -1
  155. data/app/stylesheets/alchemy/admin/resource_info.scss +148 -0
  156. data/app/{assets/stylesheets → stylesheets}/alchemy/admin/search.scss +10 -7
  157. data/app/{assets/stylesheets → stylesheets}/alchemy/admin/selects.scss +85 -46
  158. data/app/{assets/stylesheets → stylesheets}/alchemy/admin/shoelace.scss +37 -68
  159. data/app/{assets/stylesheets → stylesheets}/alchemy/admin/sitemap.scss +39 -34
  160. data/app/{assets/stylesheets → stylesheets}/alchemy/admin/tables.scss +9 -7
  161. data/app/stylesheets/alchemy/admin/tags.scss +143 -0
  162. data/app/{assets/stylesheets → stylesheets}/alchemy/admin/toolbar.scss +6 -6
  163. data/app/{assets/stylesheets → stylesheets}/alchemy/admin/typography.scss +3 -6
  164. data/app/{assets/stylesheets → stylesheets}/alchemy/admin/upload.scss +7 -5
  165. data/app/stylesheets/alchemy/admin.scss +44 -0
  166. data/app/stylesheets/alchemy/dark-theme.scss +5 -0
  167. data/app/stylesheets/alchemy/light-theme.scss +6 -0
  168. data/app/stylesheets/alchemy/theme.scss +13 -0
  169. data/app/stylesheets/alchemy/welcome.scss +75 -0
  170. data/app/stylesheets/tinymce/skins/content/alchemy/content.scss +69 -0
  171. data/app/{assets/stylesheets/tinymce/skins/content/alchemy → stylesheets/tinymce/skins/content/alchemy-dark}/content.scss +12 -12
  172. data/app/stylesheets/tinymce/skins/ui/alchemy/content.scss +1 -0
  173. data/app/{assets/stylesheets → stylesheets}/tinymce/skins/ui/alchemy/skin.scss +158 -176
  174. data/app/stylesheets/tinymce/skins/ui/alchemy-dark/content.scss +1 -0
  175. data/app/stylesheets/tinymce/skins/ui/alchemy-dark/skin.scss +3784 -0
  176. data/app/views/alchemy/admin/attachments/_files_list.html.erb +22 -12
  177. data/app/views/alchemy/admin/attachments/_overlay_file_list.html.erb +1 -1
  178. data/app/views/alchemy/admin/attachments/assign.js.erb +4 -3
  179. data/app/views/alchemy/admin/attachments/show.html.erb +55 -43
  180. data/app/views/alchemy/admin/{elements/_clipboard_button.html.erb → clipboard/_button.html.erb} +3 -5
  181. data/app/views/alchemy/admin/clipboard/_update_nested_element_button.turbo_stream.erb +11 -0
  182. data/app/views/alchemy/admin/clipboard/clear.turbo_stream.erb +4 -0
  183. data/app/views/alchemy/admin/clipboard/index.html.erb +15 -13
  184. data/app/views/alchemy/admin/clipboard/insert.turbo_stream.erb +18 -0
  185. data/app/views/alchemy/admin/clipboard/remove.turbo_stream.erb +9 -0
  186. data/app/views/alchemy/admin/crop.html.erb +1 -1
  187. data/app/views/alchemy/admin/dashboard/info.html.erb +17 -31
  188. data/app/views/alchemy/admin/elements/_element.html.erb +4 -8
  189. data/app/views/alchemy/admin/elements/_form.html.erb +9 -9
  190. data/app/views/alchemy/admin/elements/_header.html.erb +5 -1
  191. data/app/views/alchemy/admin/elements/_toolbar.html.erb +4 -6
  192. data/app/views/alchemy/admin/elements/create.turbo_stream.erb +2 -1
  193. data/app/views/alchemy/admin/elements/index.html.erb +2 -2
  194. data/app/views/alchemy/admin/ingredients/_file_fields.html.erb +3 -16
  195. data/app/views/alchemy/admin/ingredients/_picture_fields.html.erb +0 -9
  196. data/app/views/alchemy/admin/languages/_form.html.erb +1 -1
  197. data/app/views/alchemy/admin/languages/_table.html.erb +1 -1
  198. data/app/views/alchemy/admin/languages/index.html.erb +5 -2
  199. data/app/views/alchemy/admin/layoutpages/index.html.erb +1 -12
  200. data/app/views/alchemy/admin/pages/_form.html.erb +2 -2
  201. data/app/views/alchemy/admin/pages/_page.html.erb +2 -3
  202. data/app/views/alchemy/admin/pages/_toolbar.html.erb +1 -15
  203. data/app/views/alchemy/admin/pages/index.html.erb +1 -1
  204. data/app/views/alchemy/admin/partials/_remote_search_form.html.erb +9 -12
  205. data/app/views/alchemy/admin/partials/_search_form.html.erb +4 -9
  206. data/app/views/alchemy/admin/pictures/_archive.html.erb +16 -29
  207. data/app/views/alchemy/admin/pictures/_archive_overlay.html.erb +3 -7
  208. data/app/views/alchemy/admin/pictures/_filter_and_size_bar.html.erb +1 -1
  209. data/app/views/alchemy/admin/pictures/_form.html.erb +1 -1
  210. data/app/views/alchemy/admin/pictures/_infos.html.erb +21 -52
  211. data/app/views/alchemy/admin/pictures/_library_sidebar.html.erb +7 -0
  212. data/app/views/alchemy/admin/pictures/_picture.html.erb +14 -20
  213. data/app/views/alchemy/admin/pictures/_picture_to_assign.html.erb +20 -16
  214. data/app/views/alchemy/admin/pictures/_sorting_select.html.erb +13 -0
  215. data/app/views/alchemy/admin/pictures/_tag_list.html.erb +1 -1
  216. data/app/views/alchemy/admin/pictures/edit_multiple.html.erb +1 -6
  217. data/app/views/alchemy/admin/pictures/index.html.erb +5 -19
  218. data/app/views/alchemy/admin/pictures/show.html.erb +10 -5
  219. data/app/views/alchemy/admin/resources/_applied_filters.html.erb +8 -0
  220. data/app/views/alchemy/admin/resources/_filter_bar.html.erb +5 -25
  221. data/app/views/alchemy/admin/resources/_pagination.html.erb +6 -0
  222. data/app/views/alchemy/admin/resources/_per_page_select.html.erb +4 -2
  223. data/app/views/alchemy/admin/resources/_resource_table.html.erb +1 -1
  224. data/app/views/alchemy/admin/resources/_resource_usage_info.html.erb +36 -0
  225. data/app/views/alchemy/admin/resources/_table_header.html.erb +1 -15
  226. data/app/views/alchemy/admin/sites/index.html.erb +5 -1
  227. data/app/views/alchemy/admin/styleguide/index.html.erb +118 -58
  228. data/app/views/alchemy/admin/tags/index.html.erb +1 -1
  229. data/app/views/alchemy/admin/tinymce/_setup.html.erb +7 -7
  230. data/app/{javascript/alchemy_admin/locales/en.js → views/alchemy/admin/translations/_en.js} +5 -2
  231. data/app/views/alchemy/admin/uploader/_button.html.erb +1 -1
  232. data/app/views/alchemy/admin/uploader/_setup.html.erb +4 -4
  233. data/app/views/alchemy/base/error_notice.html.erb +1 -1
  234. data/app/views/alchemy/ingredients/_number_editor.html.erb +24 -0
  235. data/app/views/alchemy/no_index.html.erb +31 -0
  236. data/app/views/alchemy/welcome.html.erb +12 -10
  237. data/app/views/kaminari/alchemy/_first_page.html.erb +5 -3
  238. data/app/views/kaminari/alchemy/_last_page.html.erb +5 -3
  239. data/app/views/kaminari/alchemy/_next_page.html.erb +5 -3
  240. data/app/views/kaminari/alchemy/_paginator.html.erb +18 -13
  241. data/app/views/kaminari/alchemy/_prev_page.html.erb +5 -3
  242. data/app/views/layouts/alchemy/admin.html.erb +25 -24
  243. data/config/alchemy/config.yml +3 -2
  244. data/config/initializers/dragonfly.rb +0 -1
  245. data/config/initializers/mime_types.rb +1 -0
  246. data/config/locales/alchemy.en.yml +57 -21
  247. data/config/routes.rb +0 -2
  248. data/db/migrate/20250905140323_add_created_at_index_to_pictures_and_attachments.rb +14 -0
  249. data/lib/alchemy/admin/preview_url.rb +4 -5
  250. data/lib/alchemy/cache_digests/template_tracker.rb +6 -9
  251. data/lib/alchemy/config_missing.rb +14 -0
  252. data/lib/alchemy/configuration/base_option.rb +24 -0
  253. data/lib/alchemy/configuration/boolean_option.rb +16 -0
  254. data/lib/alchemy/configuration/class_option.rb +15 -0
  255. data/lib/alchemy/configuration/class_set_option.rb +46 -0
  256. data/lib/alchemy/configuration/integer_list_option.rb +13 -0
  257. data/lib/alchemy/configuration/integer_option.rb +12 -0
  258. data/lib/alchemy/configuration/list_option.rb +22 -0
  259. data/lib/alchemy/configuration/regexp_option.rb +11 -0
  260. data/lib/alchemy/configuration/string_list_option.rb +13 -0
  261. data/lib/alchemy/configuration/string_option.rb +11 -0
  262. data/lib/alchemy/configuration.rb +115 -0
  263. data/lib/alchemy/configuration_methods.rb +3 -1
  264. data/lib/alchemy/configurations/default_language.rb +12 -0
  265. data/lib/alchemy/configurations/default_site.rb +10 -0
  266. data/lib/alchemy/configurations/format_matchers.rb +11 -0
  267. data/lib/alchemy/configurations/mailer.rb +16 -0
  268. data/lib/alchemy/configurations/main.rb +223 -0
  269. data/lib/alchemy/configurations/page_cache.rb +19 -0
  270. data/lib/alchemy/configurations/preview.rb +32 -0
  271. data/lib/alchemy/configurations/sitemap.rb +10 -0
  272. data/lib/alchemy/configurations/uploader.rb +34 -0
  273. data/lib/alchemy/engine.rb +81 -24
  274. data/lib/alchemy/hints.rb +3 -7
  275. data/lib/alchemy/install/tasks.rb +0 -12
  276. data/lib/alchemy/on_page_layout.rb +2 -2
  277. data/lib/alchemy/propshaft/tinymce_asset.rb +15 -0
  278. data/lib/alchemy/seeder.rb +2 -2
  279. data/lib/alchemy/tasks/tidy.rb +18 -0
  280. data/lib/alchemy/tasks/usage.rb +4 -4
  281. data/lib/alchemy/test_support/config_stubbing.rb +1 -7
  282. data/lib/alchemy/test_support/factories/attachment_factory.rb +13 -2
  283. data/lib/alchemy/test_support/factories/language_factory.rb +1 -1
  284. data/lib/alchemy/test_support/factories/page_factory.rb +2 -3
  285. data/lib/alchemy/test_support/factories/picture_factory.rb +31 -2
  286. data/lib/alchemy/test_support/factories/site_factory.rb +2 -2
  287. data/lib/alchemy/test_support/having_crop_action_examples.rb +2 -2
  288. data/lib/alchemy/test_support/having_picture_thumbnails_examples.rb +80 -26
  289. data/lib/alchemy/test_support/relatable_resource_examples.rb +58 -0
  290. data/lib/alchemy/test_support/shared_ingredient_examples.rb +5 -5
  291. data/lib/alchemy/tinymce.rb +0 -1
  292. data/lib/alchemy/upgrader/eight_zero.rb +14 -0
  293. data/lib/alchemy/upgrader.rb +33 -20
  294. data/lib/alchemy/version.rb +1 -1
  295. data/lib/alchemy.rb +185 -172
  296. data/lib/alchemy_cms.rb +1 -7
  297. data/lib/generators/alchemy/ingredient/ingredient_generator.rb +0 -3
  298. data/lib/generators/alchemy/install/files/_article.html.erb +6 -4
  299. data/lib/generators/alchemy/install/files/alchemy.en.yml +22 -3
  300. data/lib/generators/alchemy/install/files/application.html.erb +5 -0
  301. data/lib/generators/alchemy/install/install_generator.rb +25 -23
  302. data/lib/generators/alchemy/install/templates/alchemy.rb.tt +200 -0
  303. data/lib/generators/alchemy/install/templates/dragonfly.rb.tt +0 -1
  304. data/lib/generators/alchemy/install/templates/elements.yml.tt +3 -1
  305. data/lib/generators/alchemy/install/templates/menus.yml.tt +1 -1
  306. data/lib/generators/alchemy/install/templates/page_layouts.yml.tt +2 -2
  307. data/lib/generators/alchemy/page_layouts/page_layouts_generator.rb +2 -2
  308. data/lib/tasks/alchemy/assets.rake +14 -0
  309. data/lib/tasks/alchemy/tidy.rake +6 -0
  310. data/lib/tasks/alchemy/upgrade.rake +12 -47
  311. data/vendor/assets/stylesheets/tinymce/skins/content/dark/content.min.css +1 -0
  312. data/vendor/assets/stylesheets/tinymce/skins/content/default/content.min.css +1 -0
  313. data/vendor/assets/stylesheets/tinymce/skins/ui/oxide/skin.min.css +1 -0
  314. data/vendor/assets/stylesheets/tinymce/skins/ui/oxide-dark/content.min.css +1 -0
  315. data/vendor/assets/stylesheets/tinymce/skins/ui/oxide-dark/skin.min.css +1 -0
  316. data/vendor/javascript/clipboard.min.js +1 -1
  317. data/vendor/javascript/cropperjs.min.js +1 -1
  318. data/vendor/javascript/handlebars.min.js +3 -3
  319. data/vendor/javascript/jquery.min.js +1 -1
  320. data/vendor/javascript/select2.min.js +3 -3
  321. data/vendor/javascript/shoelace.min.js +92 -76
  322. data/vendor/javascript/sortable.min.js +2 -2
  323. data/vendor/javascript/tinymce.min.js +1 -1
  324. data/vendor/javascript/ungap-custom-elements.min.js +2 -2
  325. metadata +223 -208
  326. data/CHANGELOG.md +0 -2041
  327. data/CODE_OF_CONDUCT.md +0 -13
  328. data/CONTRIBUTING.md +0 -73
  329. data/Gemfile +0 -71
  330. data/Rakefile +0 -102
  331. data/SECURITY.md +0 -13
  332. data/alchemy_cms.gemspec +0 -88
  333. data/app/assets/builds/alchemy/admin/page-select.css.map +0 -1
  334. data/app/assets/builds/alchemy/admin/print.css.map +0 -1
  335. data/app/assets/builds/alchemy/admin.css.map +0 -1
  336. data/app/assets/builds/alchemy/custom-properties.css +0 -1
  337. data/app/assets/builds/alchemy/custom-properties.css.map +0 -1
  338. data/app/assets/builds/alchemy/welcome.css.map +0 -1
  339. data/app/assets/builds/tinymce/skins/content/alchemy/content.min.css.map +0 -1
  340. data/app/assets/builds/tinymce/skins/ui/alchemy/skin.min.css.map +0 -1
  341. data/app/assets/javascripts/alchemy/admin.js +0 -10
  342. data/app/assets/stylesheets/alchemy/_defaults.scss +0 -3
  343. data/app/assets/stylesheets/alchemy/_deprecated_variables.scss +0 -45
  344. data/app/assets/stylesheets/alchemy/_deprecation.scss +0 -17
  345. data/app/assets/stylesheets/alchemy/_extends.scss +0 -62
  346. data/app/assets/stylesheets/alchemy/_variables.scss +0 -201
  347. data/app/assets/stylesheets/alchemy/admin/attachments.scss +0 -40
  348. data/app/assets/stylesheets/alchemy/admin/buttons.scss +0 -123
  349. data/app/assets/stylesheets/alchemy/admin/hints.scss +0 -5
  350. data/app/assets/stylesheets/alchemy/admin/labels.scss +0 -3
  351. data/app/assets/stylesheets/alchemy/admin/pagination.scss +0 -92
  352. data/app/assets/stylesheets/alchemy/admin/preview_window.scss +0 -33
  353. data/app/assets/stylesheets/alchemy/admin/resource_info.scss +0 -42
  354. data/app/assets/stylesheets/alchemy/admin/tags.scss +0 -158
  355. data/app/assets/stylesheets/alchemy/admin.scss +0 -42
  356. data/app/assets/stylesheets/alchemy/custom-properties.css +0 -98
  357. data/app/assets/stylesheets/alchemy/welcome.scss +0 -57
  358. data/app/assets/stylesheets/tinymce/skins/ui/alchemy/content.css +0 -711
  359. data/app/assets/stylesheets/tinymce/skins/ui/alchemy/content.inline.css +0 -705
  360. data/app/assets/stylesheets/tinymce/skins/ui/alchemy/content.inline.min.css +0 -7
  361. data/app/assets/stylesheets/tinymce/skins/ui/alchemy/content.min.css +0 -7
  362. data/app/assets/stylesheets/tinymce/skins/ui/alchemy/content.mobile.css +0 -29
  363. data/app/assets/stylesheets/tinymce/skins/ui/alchemy/content.mobile.min.css +0 -7
  364. data/app/assets/stylesheets/tinymce/skins/ui/alchemy/skin.mobile.css +0 -677
  365. data/app/assets/stylesheets/tinymce/skins/ui/alchemy/skin.mobile.min.css +0 -7
  366. data/app/controllers/alchemy/elements_controller.rb +0 -32
  367. data/app/helpers/alchemy/admin/elements_helper.rb +0 -25
  368. data/app/models/alchemy/element/dom_id.rb +0 -31
  369. data/app/models/alchemy/picture/calculations.rb +0 -49
  370. data/app/models/alchemy/picture/transformations.rb +0 -115
  371. data/app/models/alchemy/picture/url.rb +0 -54
  372. data/app/views/alchemy/admin/attachments/destroy.js.erb +0 -1
  373. data/app/views/alchemy/admin/clipboard/clear.js.erb +0 -3
  374. data/app/views/alchemy/admin/clipboard/insert.js.erb +0 -29
  375. data/app/views/alchemy/admin/clipboard/remove.js.erb +0 -10
  376. data/app/views/alchemy/admin/resources/_filter.html.erb +0 -12
  377. data/app/views/alchemy/admin/resources/_resource.html.erb +0 -34
  378. data/app/views/alchemy/admin/resources/_table.html.erb +0 -29
  379. data/app/views/alchemy/elements/show.html.erb +0 -1
  380. data/app/views/alchemy/elements/show.js.erb +0 -1
  381. data/app/views/alchemy/ingredients/_audio_view.html.erb +0 -1
  382. data/app/views/alchemy/ingredients/_boolean_view.html.erb +0 -1
  383. data/app/views/alchemy/ingredients/_datetime_view.html.erb +0 -3
  384. data/app/views/alchemy/ingredients/_file_view.html.erb +0 -4
  385. data/app/views/alchemy/ingredients/_headline_view.html.erb +0 -4
  386. data/app/views/alchemy/ingredients/_html_view.html.erb +0 -1
  387. data/app/views/alchemy/ingredients/_link_view.html.erb +0 -4
  388. data/app/views/alchemy/ingredients/_node_view.html.erb +0 -1
  389. data/app/views/alchemy/ingredients/_page_view.html.erb +0 -1
  390. data/app/views/alchemy/ingredients/_picture_view.html.erb +0 -4
  391. data/app/views/alchemy/ingredients/_richtext_view.html.erb +0 -3
  392. data/app/views/alchemy/ingredients/_select_view.html.erb +0 -1
  393. data/app/views/alchemy/ingredients/_text_view.html.erb +0 -4
  394. data/app/views/alchemy/ingredients/_video_view.html.erb +0 -3
  395. data/babel.config.js +0 -12
  396. data/bin/importmap +0 -4
  397. data/bin/rails +0 -9
  398. data/bin/rspec +0 -3
  399. data/bin/setup +0 -30
  400. data/bin/start +0 -17
  401. data/bun.lockb +0 -0
  402. data/bundles/shoelace.js +0 -12
  403. data/bundles/tinymce.js +0 -22
  404. data/config/initializers/assets.rb +0 -4
  405. data/eslint.config.js +0 -17
  406. data/lib/alchemy/config.rb +0 -114
  407. data/lib/alchemy/element_definition.rb +0 -73
  408. data/lib/alchemy/page_layout.rb +0 -73
  409. data/lib/alchemy/resource_filter.rb +0 -40
  410. data/lib/alchemy/upgrader/seven_point_four.rb +0 -26
  411. data/lib/alchemy/upgrader/seven_point_three.rb +0 -52
  412. data/lib/alchemy/upgrader/tasks/.keep +0 -0
  413. data/lib/generators/alchemy/ingredient/templates/view.html.erb +0 -1
  414. data/lib/generators/alchemy/install/files/alchemy_admin.js +0 -1
  415. data/lib/generators/alchemy/install/files/all.js +0 -11
  416. data/lib/generators/alchemy/install/files/article.css +0 -25
  417. data/rollup.config.mjs +0 -108
  418. data/vendor/assets/images/remixicon.symbol.svg +0 -11
  419. /data/app/{assets/stylesheets → stylesheets}/alchemy/_fonts.scss +0 -0
  420. /data/app/{assets/stylesheets → stylesheets}/alchemy/admin/attachment-select.scss +0 -0
  421. /data/app/{assets/stylesheets → stylesheets}/alchemy/admin/flash.scss +0 -0
  422. /data/app/{assets/stylesheets → stylesheets}/alchemy/admin/list_filter.scss +0 -0
  423. /data/app/{assets/stylesheets → stylesheets}/alchemy/admin/spinner.scss +0 -0
  424. /data/app/{assets/stylesheets → stylesheets}/tinymce/skins/skintool.json +0 -0
  425. /data/app/{assets/stylesheets → stylesheets}/tinymce/skins/ui/alchemy/fonts/tinymce-mobile.woff +0 -0
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: alchemy_cms
3
3
  version: !ruby/object:Gem::Version
4
- version: 7.4.10
4
+ version: 8.0.0.b
5
5
  platform: ruby
6
6
  authors:
7
7
  - Thomas von Deyen
@@ -20,7 +20,7 @@ dependencies:
20
20
  requirements:
21
21
  - - ">="
22
22
  - !ruby/object:Gem::Version
23
- version: '7.0'
23
+ version: '7.1'
24
24
  - - "<"
25
25
  - !ruby/object:Gem::Version
26
26
  version: '8.1'
@@ -30,7 +30,7 @@ dependencies:
30
30
  requirements:
31
31
  - - ">="
32
32
  - !ruby/object:Gem::Version
33
- version: '7.0'
33
+ version: '7.1'
34
34
  - - "<"
35
35
  - !ruby/object:Gem::Version
36
36
  version: '8.1'
@@ -40,7 +40,7 @@ dependencies:
40
40
  requirements:
41
41
  - - ">="
42
42
  - !ruby/object:Gem::Version
43
- version: '7.0'
43
+ version: '7.1'
44
44
  - - "<"
45
45
  - !ruby/object:Gem::Version
46
46
  version: '8.1'
@@ -50,7 +50,7 @@ dependencies:
50
50
  requirements:
51
51
  - - ">="
52
52
  - !ruby/object:Gem::Version
53
- version: '7.0'
53
+ version: '7.1'
54
54
  - - "<"
55
55
  - !ruby/object:Gem::Version
56
56
  version: '8.1'
@@ -60,7 +60,7 @@ dependencies:
60
60
  requirements:
61
61
  - - ">="
62
62
  - !ruby/object:Gem::Version
63
- version: '7.0'
63
+ version: '7.1'
64
64
  - - "<"
65
65
  - !ruby/object:Gem::Version
66
66
  version: '8.1'
@@ -70,7 +70,7 @@ dependencies:
70
70
  requirements:
71
71
  - - ">="
72
72
  - !ruby/object:Gem::Version
73
- version: '7.0'
73
+ version: '7.1'
74
74
  - - "<"
75
75
  - !ruby/object:Gem::Version
76
76
  version: '8.1'
@@ -80,7 +80,7 @@ dependencies:
80
80
  requirements:
81
81
  - - ">="
82
82
  - !ruby/object:Gem::Version
83
- version: '7.0'
83
+ version: '7.1'
84
84
  - - "<"
85
85
  - !ruby/object:Gem::Version
86
86
  version: '8.1'
@@ -90,7 +90,7 @@ dependencies:
90
90
  requirements:
91
91
  - - ">="
92
92
  - !ruby/object:Gem::Version
93
- version: '7.0'
93
+ version: '7.1'
94
94
  - - "<"
95
95
  - !ruby/object:Gem::Version
96
96
  version: '8.1'
@@ -100,7 +100,7 @@ dependencies:
100
100
  requirements:
101
101
  - - ">="
102
102
  - !ruby/object:Gem::Version
103
- version: '7.0'
103
+ version: '7.1'
104
104
  - - "<"
105
105
  - !ruby/object:Gem::Version
106
106
  version: '8.1'
@@ -110,7 +110,7 @@ dependencies:
110
110
  requirements:
111
111
  - - ">="
112
112
  - !ruby/object:Gem::Version
113
- version: '7.0'
113
+ version: '7.1'
114
114
  - - "<"
115
115
  - !ruby/object:Gem::Version
116
116
  version: '8.1'
@@ -120,7 +120,7 @@ dependencies:
120
120
  requirements:
121
121
  - - ">="
122
122
  - !ruby/object:Gem::Version
123
- version: '7.0'
123
+ version: '7.1'
124
124
  - - "<"
125
125
  - !ruby/object:Gem::Version
126
126
  version: '8.1'
@@ -130,7 +130,27 @@ dependencies:
130
130
  requirements:
131
131
  - - ">="
132
132
  - !ruby/object:Gem::Version
133
- version: '7.0'
133
+ version: '7.1'
134
+ - - "<"
135
+ - !ruby/object:Gem::Version
136
+ version: '8.1'
137
+ - !ruby/object:Gem::Dependency
138
+ name: activestorage
139
+ requirement: !ruby/object:Gem::Requirement
140
+ requirements:
141
+ - - ">="
142
+ - !ruby/object:Gem::Version
143
+ version: '7.1'
144
+ - - "<"
145
+ - !ruby/object:Gem::Version
146
+ version: '8.1'
147
+ type: :runtime
148
+ prerelease: false
149
+ version_requirements: !ruby/object:Gem::Requirement
150
+ requirements:
151
+ - - ">="
152
+ - !ruby/object:Gem::Version
153
+ version: '7.1'
134
154
  - - "<"
135
155
  - !ruby/object:Gem::Version
136
156
  version: '8.1'
@@ -140,7 +160,7 @@ dependencies:
140
160
  requirements:
141
161
  - - ">="
142
162
  - !ruby/object:Gem::Version
143
- version: '7.0'
163
+ version: '7.1'
144
164
  - - "<"
145
165
  - !ruby/object:Gem::Version
146
166
  version: '8.1'
@@ -150,7 +170,7 @@ dependencies:
150
170
  requirements:
151
171
  - - ">="
152
172
  - !ruby/object:Gem::Version
153
- version: '7.0'
173
+ version: '7.1'
154
174
  - - "<"
155
175
  - !ruby/object:Gem::Version
156
176
  version: '8.1'
@@ -160,7 +180,7 @@ dependencies:
160
180
  requirements:
161
181
  - - ">="
162
182
  - !ruby/object:Gem::Version
163
- version: '7.0'
183
+ version: '7.1'
164
184
  - - "<"
165
185
  - !ruby/object:Gem::Version
166
186
  version: '8.1'
@@ -170,7 +190,7 @@ dependencies:
170
190
  requirements:
171
191
  - - ">="
172
192
  - !ruby/object:Gem::Version
173
- version: '7.0'
193
+ version: '7.1'
174
194
  - - "<"
175
195
  - !ruby/object:Gem::Version
176
196
  version: '8.1'
@@ -277,59 +297,53 @@ dependencies:
277
297
  - !ruby/object:Gem::Version
278
298
  version: '1.4'
279
299
  - !ruby/object:Gem::Dependency
280
- name: dragonfly_svg
300
+ name: gutentag
281
301
  requirement: !ruby/object:Gem::Requirement
282
302
  requirements:
283
303
  - - "~>"
284
304
  - !ruby/object:Gem::Version
285
- version: 0.0.4
305
+ version: '2.2'
306
+ - - ">="
307
+ - !ruby/object:Gem::Version
308
+ version: 2.2.1
286
309
  type: :runtime
287
310
  prerelease: false
288
311
  version_requirements: !ruby/object:Gem::Requirement
289
312
  requirements:
290
313
  - - "~>"
291
314
  - !ruby/object:Gem::Version
292
- version: 0.0.4
315
+ version: '2.2'
316
+ - - ">="
317
+ - !ruby/object:Gem::Version
318
+ version: 2.2.1
293
319
  - !ruby/object:Gem::Dependency
294
- name: gutentag
320
+ name: image_processing
295
321
  requirement: !ruby/object:Gem::Requirement
296
322
  requirements:
297
323
  - - "~>"
298
324
  - !ruby/object:Gem::Version
299
- version: '2.2'
300
- - - ">="
301
- - !ruby/object:Gem::Version
302
- version: 2.2.1
325
+ version: '1.14'
303
326
  type: :runtime
304
327
  prerelease: false
305
328
  version_requirements: !ruby/object:Gem::Requirement
306
329
  requirements:
307
330
  - - "~>"
308
331
  - !ruby/object:Gem::Version
309
- version: '2.2'
310
- - - ">="
311
- - !ruby/object:Gem::Version
312
- version: 2.2.1
332
+ version: '1.14'
313
333
  - !ruby/object:Gem::Dependency
314
334
  name: importmap-rails
315
335
  requirement: !ruby/object:Gem::Requirement
316
336
  requirements:
317
- - - ">="
318
- - !ruby/object:Gem::Version
319
- version: 1.2.1
320
- - - "<"
337
+ - - "~>"
321
338
  - !ruby/object:Gem::Version
322
- version: '3.0'
339
+ version: '2.0'
323
340
  type: :runtime
324
341
  prerelease: false
325
342
  version_requirements: !ruby/object:Gem::Requirement
326
343
  requirements:
327
- - - ">="
328
- - !ruby/object:Gem::Version
329
- version: 1.2.1
330
- - - "<"
344
+ - - "~>"
331
345
  - !ruby/object:Gem::Version
332
- version: '3.0'
346
+ version: '2.0'
333
347
  - !ruby/object:Gem::Dependency
334
348
  name: kaminari
335
349
  requirement: !ruby/object:Gem::Requirement
@@ -398,26 +412,6 @@ dependencies:
398
412
  - - "<"
399
413
  - !ruby/object:Gem::Version
400
414
  version: '6'
401
- - !ruby/object:Gem::Dependency
402
- name: sprockets-rails
403
- requirement: !ruby/object:Gem::Requirement
404
- requirements:
405
- - - ">="
406
- - !ruby/object:Gem::Version
407
- version: '3.5'
408
- - - "<"
409
- - !ruby/object:Gem::Version
410
- version: '4'
411
- type: :runtime
412
- prerelease: false
413
- version_requirements: !ruby/object:Gem::Requirement
414
- requirements:
415
- - - ">="
416
- - !ruby/object:Gem::Version
417
- version: '3.5'
418
- - - "<"
419
- - !ruby/object:Gem::Version
420
- version: '4'
421
415
  - !ruby/object:Gem::Dependency
422
416
  name: turbo-rails
423
417
  requirement: !ruby/object:Gem::Requirement
@@ -442,16 +436,22 @@ dependencies:
442
436
  name: view_component
443
437
  requirement: !ruby/object:Gem::Requirement
444
438
  requirements:
445
- - - "~>"
439
+ - - ">="
446
440
  - !ruby/object:Gem::Version
447
- version: '3.0'
441
+ version: '3'
442
+ - - "<"
443
+ - !ruby/object:Gem::Version
444
+ version: '5'
448
445
  type: :runtime
449
446
  prerelease: false
450
447
  version_requirements: !ruby/object:Gem::Requirement
451
448
  requirements:
452
- - - "~>"
449
+ - - ">="
453
450
  - !ruby/object:Gem::Version
454
- version: '3.0'
451
+ version: '3'
452
+ - - "<"
453
+ - !ruby/object:Gem::Version
454
+ version: '5'
455
455
  - !ruby/object:Gem::Dependency
456
456
  name: capybara
457
457
  requirement: !ruby/object:Gem::Requirement
@@ -514,14 +514,14 @@ dependencies:
514
514
  requirements:
515
515
  - - "~>"
516
516
  - !ruby/object:Gem::Version
517
- version: '6.0'
517
+ version: '7.0'
518
518
  type: :development
519
519
  prerelease: false
520
520
  version_requirements: !ruby/object:Gem::Requirement
521
521
  requirements:
522
522
  - - "~>"
523
523
  - !ruby/object:Gem::Version
524
- version: '6.0'
524
+ version: '7.0'
525
525
  - !ruby/object:Gem::Dependency
526
526
  name: rails-controller-testing
527
527
  requirement: !ruby/object:Gem::Requirement
@@ -556,14 +556,14 @@ dependencies:
556
556
  requirements:
557
557
  - - "~>"
558
558
  - !ruby/object:Gem::Version
559
- version: '6.1'
559
+ version: '8.0'
560
560
  type: :development
561
561
  prerelease: false
562
562
  version_requirements: !ruby/object:Gem::Requirement
563
563
  requirements:
564
564
  - - "~>"
565
565
  - !ruby/object:Gem::Version
566
- version: '6.1'
566
+ version: '8.0'
567
567
  - !ruby/object:Gem::Dependency
568
568
  name: simplecov
569
569
  requirement: !ruby/object:Gem::Requirement
@@ -641,102 +641,33 @@ executables: []
641
641
  extensions: []
642
642
  extra_rdoc_files: []
643
643
  files:
644
- - CHANGELOG.md
645
- - CODE_OF_CONDUCT.md
646
- - CONTRIBUTING.md
647
- - Gemfile
648
644
  - LICENSE
649
645
  - README.md
650
- - Rakefile
651
- - SECURITY.md
652
- - alchemy_cms.gemspec
653
646
  - app/assets/builds/alchemy/admin.css
654
- - app/assets/builds/alchemy/admin.css.map
655
647
  - app/assets/builds/alchemy/admin/page-select.css
656
- - app/assets/builds/alchemy/admin/page-select.css.map
657
648
  - app/assets/builds/alchemy/admin/print.css
658
- - app/assets/builds/alchemy/admin/print.css.map
659
- - app/assets/builds/alchemy/custom-properties.css
660
- - app/assets/builds/alchemy/custom-properties.css.map
649
+ - app/assets/builds/alchemy/dark-theme.css
650
+ - app/assets/builds/alchemy/light-theme.css
661
651
  - app/assets/builds/alchemy/preview.min.js
652
+ - app/assets/builds/alchemy/theme.css
662
653
  - app/assets/builds/alchemy/welcome.css
663
- - app/assets/builds/alchemy/welcome.css.map
654
+ - app/assets/builds/tinymce/skins/content/alchemy-dark/content.min.css
664
655
  - app/assets/builds/tinymce/skins/content/alchemy/content.min.css
665
- - app/assets/builds/tinymce/skins/content/alchemy/content.min.css.map
656
+ - app/assets/builds/tinymce/skins/ui/alchemy-dark/content.min.css
657
+ - app/assets/builds/tinymce/skins/ui/alchemy-dark/skin.min.css
658
+ - app/assets/builds/tinymce/skins/ui/alchemy/content.min.css
666
659
  - app/assets/builds/tinymce/skins/ui/alchemy/skin.min.css
667
- - app/assets/builds/tinymce/skins/ui/alchemy/skin.min.css.map
668
660
  - app/assets/config/alchemy_manifest.js
669
661
  - app/assets/images/alchemy/alchemy-logo.png
670
662
  - app/assets/images/alchemy/alchemy-logo.svg
663
+ - app/assets/images/alchemy/element_icons/default.svg
671
664
  - app/assets/images/alchemy/favicon.ico
672
665
  - app/assets/images/alchemy/icon-white.svg
673
666
  - app/assets/images/alchemy/icon.svg
667
+ - app/assets/images/alchemy/icons-sprite.svg
674
668
  - app/assets/images/alchemy/missing-image.svg
675
- - app/assets/javascripts/alchemy/admin.js
676
- - app/assets/stylesheets/alchemy/_defaults.scss
677
- - app/assets/stylesheets/alchemy/_deprecated_variables.scss
678
- - app/assets/stylesheets/alchemy/_deprecation.scss
679
- - app/assets/stylesheets/alchemy/_extends.scss
680
- - app/assets/stylesheets/alchemy/_fonts.scss
681
- - app/assets/stylesheets/alchemy/_mixins.scss
682
- - app/assets/stylesheets/alchemy/_variables.scss
683
- - app/assets/stylesheets/alchemy/admin.scss
684
- - app/assets/stylesheets/alchemy/admin/archive.scss
685
- - app/assets/stylesheets/alchemy/admin/attachment-select.scss
686
- - app/assets/stylesheets/alchemy/admin/attachments.scss
687
- - app/assets/stylesheets/alchemy/admin/base.scss
688
- - app/assets/stylesheets/alchemy/admin/buttons.scss
689
- - app/assets/stylesheets/alchemy/admin/clipboard.scss
690
- - app/assets/stylesheets/alchemy/admin/dashboard.scss
691
- - app/assets/stylesheets/alchemy/admin/dialogs.scss
692
- - app/assets/stylesheets/alchemy/admin/elements.scss
693
- - app/assets/stylesheets/alchemy/admin/errors.scss
694
- - app/assets/stylesheets/alchemy/admin/flash.scss
695
- - app/assets/stylesheets/alchemy/admin/flatpickr.scss
696
- - app/assets/stylesheets/alchemy/admin/form_fields.scss
697
- - app/assets/stylesheets/alchemy/admin/forms.scss
698
- - app/assets/stylesheets/alchemy/admin/frame.scss
699
- - app/assets/stylesheets/alchemy/admin/hints.scss
700
- - app/assets/stylesheets/alchemy/admin/icons.scss
701
- - app/assets/stylesheets/alchemy/admin/image_library.scss
702
- - app/assets/stylesheets/alchemy/admin/images.scss
703
- - app/assets/stylesheets/alchemy/admin/labels.scss
704
- - app/assets/stylesheets/alchemy/admin/list_filter.scss
705
- - app/assets/stylesheets/alchemy/admin/lists.scss
706
- - app/assets/stylesheets/alchemy/admin/navigation.scss
707
- - app/assets/stylesheets/alchemy/admin/node-select.scss
708
- - app/assets/stylesheets/alchemy/admin/nodes.scss
709
- - app/assets/stylesheets/alchemy/admin/notices.scss
710
- - app/assets/stylesheets/alchemy/admin/page-select.scss
711
- - app/assets/stylesheets/alchemy/admin/pagination.scss
712
- - app/assets/stylesheets/alchemy/admin/preview_window.scss
713
- - app/assets/stylesheets/alchemy/admin/print.scss
714
- - app/assets/stylesheets/alchemy/admin/resource_info.scss
715
- - app/assets/stylesheets/alchemy/admin/search.scss
716
- - app/assets/stylesheets/alchemy/admin/selects.scss
717
- - app/assets/stylesheets/alchemy/admin/shoelace.scss
718
- - app/assets/stylesheets/alchemy/admin/sitemap.scss
719
- - app/assets/stylesheets/alchemy/admin/spinner.scss
720
- - app/assets/stylesheets/alchemy/admin/tables.scss
721
- - app/assets/stylesheets/alchemy/admin/tags.scss
722
- - app/assets/stylesheets/alchemy/admin/toolbar.scss
723
- - app/assets/stylesheets/alchemy/admin/typography.scss
724
- - app/assets/stylesheets/alchemy/admin/upload.scss
725
- - app/assets/stylesheets/alchemy/custom-properties.css
726
- - app/assets/stylesheets/alchemy/welcome.scss
727
- - app/assets/stylesheets/tinymce/skins/content/alchemy/content.scss
728
- - app/assets/stylesheets/tinymce/skins/skintool.json
729
- - app/assets/stylesheets/tinymce/skins/ui/alchemy/content.css
730
- - app/assets/stylesheets/tinymce/skins/ui/alchemy/content.inline.css
731
- - app/assets/stylesheets/tinymce/skins/ui/alchemy/content.inline.min.css
732
- - app/assets/stylesheets/tinymce/skins/ui/alchemy/content.min.css
733
- - app/assets/stylesheets/tinymce/skins/ui/alchemy/content.mobile.css
734
- - app/assets/stylesheets/tinymce/skins/ui/alchemy/content.mobile.min.css
735
- - app/assets/stylesheets/tinymce/skins/ui/alchemy/fonts/tinymce-mobile.woff
736
- - app/assets/stylesheets/tinymce/skins/ui/alchemy/skin.mobile.css
737
- - app/assets/stylesheets/tinymce/skins/ui/alchemy/skin.mobile.min.css
738
- - app/assets/stylesheets/tinymce/skins/ui/alchemy/skin.scss
739
669
  - app/components/alchemy/admin/attachment_select.rb
670
+ - app/components/alchemy/admin/element_select.rb
740
671
  - app/components/alchemy/admin/icon.rb
741
672
  - app/components/alchemy/admin/link_dialog/anchor_tab.rb
742
673
  - app/components/alchemy/admin/link_dialog/base_tab.rb
@@ -749,8 +680,12 @@ files:
749
680
  - app/components/alchemy/admin/node_select.rb
750
681
  - app/components/alchemy/admin/page_select.rb
751
682
  - app/components/alchemy/admin/resource/action.rb
683
+ - app/components/alchemy/admin/resource/applied_filter.rb
752
684
  - app/components/alchemy/admin/resource/cell.rb
685
+ - app/components/alchemy/admin/resource/checkbox_filter.rb
686
+ - app/components/alchemy/admin/resource/datepicker_filter.rb
753
687
  - app/components/alchemy/admin/resource/header.rb
688
+ - app/components/alchemy/admin/resource/select_filter.rb
754
689
  - app/components/alchemy/admin/resource/table.rb
755
690
  - app/components/alchemy/admin/tags_autocomplete.rb
756
691
  - app/components/alchemy/admin/toolbar_button.rb
@@ -763,6 +698,7 @@ files:
763
698
  - app/components/alchemy/ingredients/html_view.rb
764
699
  - app/components/alchemy/ingredients/link_view.rb
765
700
  - app/components/alchemy/ingredients/node_view.rb
701
+ - app/components/alchemy/ingredients/number_view.rb
766
702
  - app/components/alchemy/ingredients/page_view.rb
767
703
  - app/components/alchemy/ingredients/picture_view.rb
768
704
  - app/components/alchemy/ingredients/richtext_view.rb
@@ -795,13 +731,13 @@ files:
795
731
  - app/controllers/alchemy/api/pages_controller.rb
796
732
  - app/controllers/alchemy/attachments_controller.rb
797
733
  - app/controllers/alchemy/base_controller.rb
798
- - app/controllers/alchemy/elements_controller.rb
799
734
  - app/controllers/alchemy/messages_controller.rb
800
735
  - app/controllers/alchemy/pages_controller.rb
801
736
  - app/controllers/concerns/alchemy/admin/archive_overlay.rb
802
737
  - app/controllers/concerns/alchemy/admin/crop_action.rb
803
738
  - app/controllers/concerns/alchemy/admin/current_language.rb
804
739
  - app/controllers/concerns/alchemy/admin/picture_descriptions_form_helper.rb
740
+ - app/controllers/concerns/alchemy/admin/resource_filter.rb
805
741
  - app/controllers/concerns/alchemy/admin/uploader_responses.rb
806
742
  - app/controllers/concerns/alchemy/legacy_page_redirects.rb
807
743
  - app/controllers/concerns/alchemy/site_redirects.rb
@@ -809,7 +745,6 @@ files:
809
745
  - app/decorators/alchemy/ingredient_editor.rb
810
746
  - app/helpers/alchemy/admin/attachments_helper.rb
811
747
  - app/helpers/alchemy/admin/base_helper.rb
812
- - app/helpers/alchemy/admin/elements_helper.rb
813
748
  - app/helpers/alchemy/admin/form_helper.rb
814
749
  - app/helpers/alchemy/admin/ingredients_helper.rb
815
750
  - app/helpers/alchemy/admin/navigation_helper.rb
@@ -820,11 +755,13 @@ files:
820
755
  - app/helpers/alchemy/elements_block_helper.rb
821
756
  - app/helpers/alchemy/elements_helper.rb
822
757
  - app/helpers/alchemy/pages_helper.rb
758
+ - app/helpers/alchemy/resources_helper.rb
823
759
  - app/helpers/alchemy/url_helper.rb
824
760
  - app/javascript/alchemy_admin.js
825
761
  - app/javascript/alchemy_admin/components/action.js
826
762
  - app/javascript/alchemy_admin/components/alchemy_html_element.js
827
763
  - app/javascript/alchemy_admin/components/attachment_select.js
764
+ - app/javascript/alchemy_admin/components/auto_submit.js
828
765
  - app/javascript/alchemy_admin/components/button.js
829
766
  - app/javascript/alchemy_admin/components/char_counter.js
830
767
  - app/javascript/alchemy_admin/components/clipboard_button.js
@@ -834,6 +771,7 @@ files:
834
771
  - app/javascript/alchemy_admin/components/element_editor.js
835
772
  - app/javascript/alchemy_admin/components/element_editor/delete_element_button.js
836
773
  - app/javascript/alchemy_admin/components/element_editor/publish_element_button.js
774
+ - app/javascript/alchemy_admin/components/element_select.js
837
775
  - app/javascript/alchemy_admin/components/elements_window.js
838
776
  - app/javascript/alchemy_admin/components/elements_window_handle.js
839
777
  - app/javascript/alchemy_admin/components/growl.js
@@ -854,6 +792,7 @@ files:
854
792
  - app/javascript/alchemy_admin/components/spinner.js
855
793
  - app/javascript/alchemy_admin/components/tags_autocomplete.js
856
794
  - app/javascript/alchemy_admin/components/tinymce.js
795
+ - app/javascript/alchemy_admin/components/update_check.js
857
796
  - app/javascript/alchemy_admin/components/uploader.js
858
797
  - app/javascript/alchemy_admin/components/uploader/file_upload.js
859
798
  - app/javascript/alchemy_admin/components/uploader/progress.js
@@ -871,7 +810,6 @@ files:
871
810
  - app/javascript/alchemy_admin/ingredient_anchor_link.js
872
811
  - app/javascript/alchemy_admin/initializer.js
873
812
  - app/javascript/alchemy_admin/link_dialog.js
874
- - app/javascript/alchemy_admin/locales/en.js
875
813
  - app/javascript/alchemy_admin/node_tree.js
876
814
  - app/javascript/alchemy_admin/page_publication_fields.js
877
815
  - app/javascript/alchemy_admin/page_sorter.js
@@ -896,24 +834,30 @@ files:
896
834
  - app/javascript/tinymce/icons/remixicons/index.js
897
835
  - app/javascript/tinymce/plugins/alchemy_link/index.js
898
836
  - app/jobs/alchemy/base_job.rb
837
+ - app/jobs/alchemy/delete_picture_job.rb
899
838
  - app/jobs/alchemy/publish_page_job.rb
900
839
  - app/mailers/alchemy/base_mailer.rb
901
840
  - app/mailers/alchemy/messages_mailer.rb
841
+ - app/models/alchemy/admin/filters/base.rb
842
+ - app/models/alchemy/admin/filters/checkbox.rb
843
+ - app/models/alchemy/admin/filters/datepicker.rb
844
+ - app/models/alchemy/admin/filters/select.rb
845
+ - app/models/alchemy/admin/resource_name.rb
902
846
  - app/models/alchemy/attachment.rb
903
- - app/models/alchemy/attachment/url.rb
904
847
  - app/models/alchemy/base_record.rb
905
848
  - app/models/alchemy/current.rb
906
849
  - app/models/alchemy/eager_loading.rb
907
850
  - app/models/alchemy/element.rb
908
851
  - app/models/alchemy/element/definitions.rb
909
- - app/models/alchemy/element/dom_id.rb
910
852
  - app/models/alchemy/element/element_ingredients.rb
911
853
  - app/models/alchemy/element/presenters.rb
854
+ - app/models/alchemy/element_definition.rb
912
855
  - app/models/alchemy/element_to_page.rb
913
856
  - app/models/alchemy/elements_repository.rb
914
857
  - app/models/alchemy/folded_page.rb
915
858
  - app/models/alchemy/image_cropper_settings.rb
916
859
  - app/models/alchemy/ingredient.rb
860
+ - app/models/alchemy/ingredient_definition.rb
917
861
  - app/models/alchemy/ingredient_validator.rb
918
862
  - app/models/alchemy/ingredients/audio.rb
919
863
  - app/models/alchemy/ingredients/boolean.rb
@@ -923,6 +867,7 @@ files:
923
867
  - app/models/alchemy/ingredients/html.rb
924
868
  - app/models/alchemy/ingredients/link.rb
925
869
  - app/models/alchemy/ingredients/node.rb
870
+ - app/models/alchemy/ingredients/number.rb
926
871
  - app/models/alchemy/ingredients/page.rb
927
872
  - app/models/alchemy/ingredients/picture.rb
928
873
  - app/models/alchemy/ingredients/richtext.rb
@@ -935,21 +880,18 @@ files:
935
880
  - app/models/alchemy/message.rb
936
881
  - app/models/alchemy/node.rb
937
882
  - app/models/alchemy/page.rb
883
+ - app/models/alchemy/page/definitions.rb
938
884
  - app/models/alchemy/page/fixed_attributes.rb
939
885
  - app/models/alchemy/page/page_elements.rb
940
- - app/models/alchemy/page/page_layouts.rb
941
886
  - app/models/alchemy/page/page_naming.rb
942
887
  - app/models/alchemy/page/page_natures.rb
943
888
  - app/models/alchemy/page/page_scopes.rb
944
889
  - app/models/alchemy/page/publisher.rb
945
890
  - app/models/alchemy/page/url_path.rb
891
+ - app/models/alchemy/page_definition.rb
946
892
  - app/models/alchemy/page_mutex.rb
947
893
  - app/models/alchemy/page_version.rb
948
894
  - app/models/alchemy/picture.rb
949
- - app/models/alchemy/picture/calculations.rb
950
- - app/models/alchemy/picture/preprocessor.rb
951
- - app/models/alchemy/picture/transformations.rb
952
- - app/models/alchemy/picture/url.rb
953
895
  - app/models/alchemy/picture_description.rb
954
896
  - app/models/alchemy/picture_thumb.rb
955
897
  - app/models/alchemy/picture_thumb/create.rb
@@ -957,11 +899,23 @@ files:
957
899
  - app/models/alchemy/picture_thumb/signature.rb
958
900
  - app/models/alchemy/picture_thumb/uid.rb
959
901
  - app/models/alchemy/picture_variant.rb
902
+ - app/models/alchemy/resource.rb
903
+ - app/models/alchemy/searchable_resource.rb
960
904
  - app/models/alchemy/site.rb
961
905
  - app/models/alchemy/site/layout.rb
906
+ - app/models/alchemy/storage_adapter.rb
907
+ - app/models/alchemy/storage_adapter/active_storage.rb
908
+ - app/models/alchemy/storage_adapter/active_storage/attachment_url.rb
909
+ - app/models/alchemy/storage_adapter/active_storage/picture_url.rb
910
+ - app/models/alchemy/storage_adapter/active_storage/preprocessor.rb
911
+ - app/models/alchemy/storage_adapter/dragonfly.rb
912
+ - app/models/alchemy/storage_adapter/dragonfly/attachment_url.rb
913
+ - app/models/alchemy/storage_adapter/dragonfly/picture_url.rb
914
+ - app/models/alchemy/storage_adapter/dragonfly/preprocessor.rb
962
915
  - app/models/alchemy/tag.rb
963
916
  - app/models/concerns/alchemy/dom_ids.rb
964
917
  - app/models/concerns/alchemy/picture_thumbnails.rb
918
+ - app/models/concerns/alchemy/relatable_resource.rb
965
919
  - app/models/concerns/alchemy/touch_elements.rb
966
920
  - app/serializers/alchemy/attachment_serializer.rb
967
921
  - app/serializers/alchemy/base_serializer.rb
@@ -976,8 +930,72 @@ files:
976
930
  - app/serializers/alchemy/site_serializer.rb
977
931
  - app/services/alchemy/copy_page.rb
978
932
  - app/services/alchemy/delete_elements.rb
933
+ - app/services/alchemy/dragonfly_to_image_processing.rb
979
934
  - app/services/alchemy/duplicate_element.rb
980
935
  - app/services/alchemy/tag_validations.rb
936
+ - app/stylesheets/alchemy/_custom-properties.scss
937
+ - app/stylesheets/alchemy/_defaults.scss
938
+ - app/stylesheets/alchemy/_extends.scss
939
+ - app/stylesheets/alchemy/_fonts.scss
940
+ - app/stylesheets/alchemy/_mixins.scss
941
+ - app/stylesheets/alchemy/_themes.scss
942
+ - app/stylesheets/alchemy/_variables.scss
943
+ - app/stylesheets/alchemy/admin.scss
944
+ - app/stylesheets/alchemy/admin/archive.scss
945
+ - app/stylesheets/alchemy/admin/attachment-select.scss
946
+ - app/stylesheets/alchemy/admin/attachments.scss
947
+ - app/stylesheets/alchemy/admin/base.scss
948
+ - app/stylesheets/alchemy/admin/buttons.scss
949
+ - app/stylesheets/alchemy/admin/clipboard.scss
950
+ - app/stylesheets/alchemy/admin/dashboard.scss
951
+ - app/stylesheets/alchemy/admin/dialogs.scss
952
+ - app/stylesheets/alchemy/admin/element-select.scss
953
+ - app/stylesheets/alchemy/admin/elements.scss
954
+ - app/stylesheets/alchemy/admin/errors.scss
955
+ - app/stylesheets/alchemy/admin/filters.scss
956
+ - app/stylesheets/alchemy/admin/flash.scss
957
+ - app/stylesheets/alchemy/admin/flatpickr.scss
958
+ - app/stylesheets/alchemy/admin/form_fields.scss
959
+ - app/stylesheets/alchemy/admin/forms.scss
960
+ - app/stylesheets/alchemy/admin/frame.scss
961
+ - app/stylesheets/alchemy/admin/hints.scss
962
+ - app/stylesheets/alchemy/admin/icons.scss
963
+ - app/stylesheets/alchemy/admin/image_library.scss
964
+ - app/stylesheets/alchemy/admin/images.scss
965
+ - app/stylesheets/alchemy/admin/labels.scss
966
+ - app/stylesheets/alchemy/admin/list_filter.scss
967
+ - app/stylesheets/alchemy/admin/lists.scss
968
+ - app/stylesheets/alchemy/admin/navigation.scss
969
+ - app/stylesheets/alchemy/admin/node-select.scss
970
+ - app/stylesheets/alchemy/admin/nodes.scss
971
+ - app/stylesheets/alchemy/admin/notices.scss
972
+ - app/stylesheets/alchemy/admin/page-select.scss
973
+ - app/stylesheets/alchemy/admin/pagination.scss
974
+ - app/stylesheets/alchemy/admin/preview_window.scss
975
+ - app/stylesheets/alchemy/admin/print.scss
976
+ - app/stylesheets/alchemy/admin/resource_info.scss
977
+ - app/stylesheets/alchemy/admin/search.scss
978
+ - app/stylesheets/alchemy/admin/selects.scss
979
+ - app/stylesheets/alchemy/admin/shoelace.scss
980
+ - app/stylesheets/alchemy/admin/sitemap.scss
981
+ - app/stylesheets/alchemy/admin/spinner.scss
982
+ - app/stylesheets/alchemy/admin/tables.scss
983
+ - app/stylesheets/alchemy/admin/tags.scss
984
+ - app/stylesheets/alchemy/admin/toolbar.scss
985
+ - app/stylesheets/alchemy/admin/typography.scss
986
+ - app/stylesheets/alchemy/admin/upload.scss
987
+ - app/stylesheets/alchemy/dark-theme.scss
988
+ - app/stylesheets/alchemy/light-theme.scss
989
+ - app/stylesheets/alchemy/theme.scss
990
+ - app/stylesheets/alchemy/welcome.scss
991
+ - app/stylesheets/tinymce/skins/content/alchemy-dark/content.scss
992
+ - app/stylesheets/tinymce/skins/content/alchemy/content.scss
993
+ - app/stylesheets/tinymce/skins/skintool.json
994
+ - app/stylesheets/tinymce/skins/ui/alchemy-dark/content.scss
995
+ - app/stylesheets/tinymce/skins/ui/alchemy-dark/skin.scss
996
+ - app/stylesheets/tinymce/skins/ui/alchemy/content.scss
997
+ - app/stylesheets/tinymce/skins/ui/alchemy/fonts/tinymce-mobile.woff
998
+ - app/stylesheets/tinymce/skins/ui/alchemy/skin.scss
981
999
  - app/views/alchemy/_edit_mode.html.erb
982
1000
  - app/views/alchemy/_menubar.html.erb
983
1001
  - app/views/alchemy/_preview_mode_code.html.erb
@@ -989,14 +1007,15 @@ files:
989
1007
  - app/views/alchemy/admin/attachments/_tag_list.html.erb
990
1008
  - app/views/alchemy/admin/attachments/archive_overlay.js.erb
991
1009
  - app/views/alchemy/admin/attachments/assign.js.erb
992
- - app/views/alchemy/admin/attachments/destroy.js.erb
993
1010
  - app/views/alchemy/admin/attachments/edit.html.erb
994
1011
  - app/views/alchemy/admin/attachments/index.html.erb
995
1012
  - app/views/alchemy/admin/attachments/show.html.erb
996
- - app/views/alchemy/admin/clipboard/clear.js.erb
1013
+ - app/views/alchemy/admin/clipboard/_button.html.erb
1014
+ - app/views/alchemy/admin/clipboard/_update_nested_element_button.turbo_stream.erb
1015
+ - app/views/alchemy/admin/clipboard/clear.turbo_stream.erb
997
1016
  - app/views/alchemy/admin/clipboard/index.html.erb
998
- - app/views/alchemy/admin/clipboard/insert.js.erb
999
- - app/views/alchemy/admin/clipboard/remove.js.erb
1017
+ - app/views/alchemy/admin/clipboard/insert.turbo_stream.erb
1018
+ - app/views/alchemy/admin/clipboard/remove.turbo_stream.erb
1000
1019
  - app/views/alchemy/admin/crop.html.erb
1001
1020
  - app/views/alchemy/admin/dashboard/_dashboard.html.erb
1002
1021
  - app/views/alchemy/admin/dashboard/_left_column.html.erb
@@ -1010,7 +1029,6 @@ files:
1010
1029
  - app/views/alchemy/admin/dashboard/widgets/_sites.html.erb
1011
1030
  - app/views/alchemy/admin/dashboard/widgets/_users.html.erb
1012
1031
  - app/views/alchemy/admin/elements/_add_nested_element_form.html.erb
1013
- - app/views/alchemy/admin/elements/_clipboard_button.html.erb
1014
1032
  - app/views/alchemy/admin/elements/_element.html.erb
1015
1033
  - app/views/alchemy/admin/elements/_footer.html.erb
1016
1034
  - app/views/alchemy/admin/elements/_form.html.erb
@@ -1097,9 +1115,11 @@ files:
1097
1115
  - app/views/alchemy/admin/pictures/_filter_and_size_bar.html.erb
1098
1116
  - app/views/alchemy/admin/pictures/_form.html.erb
1099
1117
  - app/views/alchemy/admin/pictures/_infos.html.erb
1118
+ - app/views/alchemy/admin/pictures/_library_sidebar.html.erb
1100
1119
  - app/views/alchemy/admin/pictures/_picture.html.erb
1101
1120
  - app/views/alchemy/admin/pictures/_picture_description_field.html.erb
1102
1121
  - app/views/alchemy/admin/pictures/_picture_to_assign.html.erb
1122
+ - app/views/alchemy/admin/pictures/_sorting_select.html.erb
1103
1123
  - app/views/alchemy/admin/pictures/_tag_list.html.erb
1104
1124
  - app/views/alchemy/admin/pictures/archive_overlay.js.erb
1105
1125
  - app/views/alchemy/admin/pictures/assign.js.erb
@@ -1108,13 +1128,13 @@ files:
1108
1128
  - app/views/alchemy/admin/pictures/index.js.erb
1109
1129
  - app/views/alchemy/admin/pictures/show.html.erb
1110
1130
  - app/views/alchemy/admin/pictures/update.turbo_stream.erb
1111
- - app/views/alchemy/admin/resources/_filter.html.erb
1131
+ - app/views/alchemy/admin/resources/_applied_filters.html.erb
1112
1132
  - app/views/alchemy/admin/resources/_filter_bar.html.erb
1113
1133
  - app/views/alchemy/admin/resources/_form.html.erb
1134
+ - app/views/alchemy/admin/resources/_pagination.html.erb
1114
1135
  - app/views/alchemy/admin/resources/_per_page_select.html.erb
1115
- - app/views/alchemy/admin/resources/_resource.html.erb
1116
1136
  - app/views/alchemy/admin/resources/_resource_table.html.erb
1117
- - app/views/alchemy/admin/resources/_table.html.erb
1137
+ - app/views/alchemy/admin/resources/_resource_usage_info.html.erb
1118
1138
  - app/views/alchemy/admin/resources/_table_header.html.erb
1119
1139
  - app/views/alchemy/admin/resources/_tag_list.html.erb
1120
1140
  - app/views/alchemy/admin/resources/edit.html.erb
@@ -1131,6 +1151,7 @@ files:
1131
1151
  - app/views/alchemy/admin/tags/index.html.erb
1132
1152
  - app/views/alchemy/admin/tags/new.html.erb
1133
1153
  - app/views/alchemy/admin/tinymce/_setup.html.erb
1154
+ - app/views/alchemy/admin/translations/_en.js
1134
1155
  - app/views/alchemy/admin/uploader/_button.html.erb
1135
1156
  - app/views/alchemy/admin/uploader/_setup.html.erb
1136
1157
  - app/views/alchemy/attachments/show.html.erb
@@ -1145,36 +1166,21 @@ files:
1145
1166
  - app/views/alchemy/breadcrumb/_separator.html.erb
1146
1167
  - app/views/alchemy/breadcrumb/_wrapper.html.erb
1147
1168
  - app/views/alchemy/elements/_view_not_found.html.erb
1148
- - app/views/alchemy/elements/show.html.erb
1149
- - app/views/alchemy/elements/show.js.erb
1150
1169
  - app/views/alchemy/ingredients/_audio_editor.html.erb
1151
- - app/views/alchemy/ingredients/_audio_view.html.erb
1152
1170
  - app/views/alchemy/ingredients/_boolean_editor.html.erb
1153
- - app/views/alchemy/ingredients/_boolean_view.html.erb
1154
1171
  - app/views/alchemy/ingredients/_datetime_editor.html.erb
1155
- - app/views/alchemy/ingredients/_datetime_view.html.erb
1156
1172
  - app/views/alchemy/ingredients/_file_editor.html.erb
1157
- - app/views/alchemy/ingredients/_file_view.html.erb
1158
1173
  - app/views/alchemy/ingredients/_headline_editor.html.erb
1159
- - app/views/alchemy/ingredients/_headline_view.html.erb
1160
1174
  - app/views/alchemy/ingredients/_html_editor.html.erb
1161
- - app/views/alchemy/ingredients/_html_view.html.erb
1162
1175
  - app/views/alchemy/ingredients/_link_editor.html.erb
1163
- - app/views/alchemy/ingredients/_link_view.html.erb
1164
1176
  - app/views/alchemy/ingredients/_node_editor.html.erb
1165
- - app/views/alchemy/ingredients/_node_view.html.erb
1177
+ - app/views/alchemy/ingredients/_number_editor.html.erb
1166
1178
  - app/views/alchemy/ingredients/_page_editor.html.erb
1167
- - app/views/alchemy/ingredients/_page_view.html.erb
1168
1179
  - app/views/alchemy/ingredients/_picture_editor.html.erb
1169
- - app/views/alchemy/ingredients/_picture_view.html.erb
1170
1180
  - app/views/alchemy/ingredients/_richtext_editor.html.erb
1171
- - app/views/alchemy/ingredients/_richtext_view.html.erb
1172
1181
  - app/views/alchemy/ingredients/_select_editor.html.erb
1173
- - app/views/alchemy/ingredients/_select_view.html.erb
1174
1182
  - app/views/alchemy/ingredients/_text_editor.html.erb
1175
- - app/views/alchemy/ingredients/_text_view.html.erb
1176
1183
  - app/views/alchemy/ingredients/_video_editor.html.erb
1177
- - app/views/alchemy/ingredients/_video_view.html.erb
1178
1184
  - app/views/alchemy/ingredients/shared/_anchor.html.erb
1179
1185
  - app/views/alchemy/ingredients/shared/_link_tools.html.erb
1180
1186
  - app/views/alchemy/ingredients/shared/_picture_css_class.html.erb
@@ -1185,6 +1191,7 @@ files:
1185
1191
  - app/views/alchemy/messages_mailer/contact_form_mail.en.text.erb
1186
1192
  - app/views/alchemy/messages_mailer/contact_form_mail.es.text.erb
1187
1193
  - app/views/alchemy/messages_mailer/new.html.erb
1194
+ - app/views/alchemy/no_index.html.erb
1188
1195
  - app/views/alchemy/pages/_meta_data.html.erb
1189
1196
  - app/views/alchemy/pages/show.html.erb
1190
1197
  - app/views/alchemy/pages/sitemap.xml.erb
@@ -1198,20 +1205,10 @@ files:
1198
1205
  - app/views/kaminari/alchemy/_prev_page.html.erb
1199
1206
  - app/views/layouts/alchemy/admin.html.erb
1200
1207
  - app/views/layouts/alchemy/sitemap.xml.erb
1201
- - babel.config.js
1202
- - bin/importmap
1203
- - bin/rails
1204
- - bin/rspec
1205
- - bin/setup
1206
- - bin/start
1207
- - bun.lockb
1208
- - bundles/shoelace.js
1209
- - bundles/tinymce.js
1210
1208
  - config/alchemy/config.yml
1211
1209
  - config/alchemy/modules.yml
1212
1210
  - config/brakeman.ignore
1213
1211
  - config/importmap.rb
1214
- - config/initializers/assets.rb
1215
1212
  - config/initializers/dragonfly.rb
1216
1213
  - config/initializers/mime_types.rb
1217
1214
  - config/initializers/mini_profiler.rb
@@ -1226,22 +1223,41 @@ files:
1226
1223
  - db/migrate/20231113104432_create_page_mutexes.rb
1227
1224
  - db/migrate/20240314105244_create_alchemy_picture_descriptions.rb
1228
1225
  - db/migrate/20250626160259_add_unique_index_to_picture_descriptions.rb
1229
- - eslint.config.js
1226
+ - db/migrate/20250905140323_add_created_at_index_to_pictures_and_attachments.rb
1230
1227
  - lib/alchemy.rb
1231
1228
  - lib/alchemy/ability_helper.rb
1232
1229
  - lib/alchemy/admin/locale.rb
1233
1230
  - lib/alchemy/admin/preview_url.rb
1234
1231
  - lib/alchemy/auth_accessors.rb
1235
1232
  - lib/alchemy/cache_digests/template_tracker.rb
1236
- - lib/alchemy/config.rb
1233
+ - lib/alchemy/config_missing.rb
1234
+ - lib/alchemy/configuration.rb
1235
+ - lib/alchemy/configuration/base_option.rb
1236
+ - lib/alchemy/configuration/boolean_option.rb
1237
+ - lib/alchemy/configuration/class_option.rb
1238
+ - lib/alchemy/configuration/class_set_option.rb
1239
+ - lib/alchemy/configuration/integer_list_option.rb
1240
+ - lib/alchemy/configuration/integer_option.rb
1241
+ - lib/alchemy/configuration/list_option.rb
1242
+ - lib/alchemy/configuration/regexp_option.rb
1243
+ - lib/alchemy/configuration/string_list_option.rb
1244
+ - lib/alchemy/configuration/string_option.rb
1237
1245
  - lib/alchemy/configuration_methods.rb
1246
+ - lib/alchemy/configurations/default_language.rb
1247
+ - lib/alchemy/configurations/default_site.rb
1248
+ - lib/alchemy/configurations/format_matchers.rb
1249
+ - lib/alchemy/configurations/mailer.rb
1250
+ - lib/alchemy/configurations/main.rb
1251
+ - lib/alchemy/configurations/page_cache.rb
1252
+ - lib/alchemy/configurations/preview.rb
1253
+ - lib/alchemy/configurations/sitemap.rb
1254
+ - lib/alchemy/configurations/uploader.rb
1238
1255
  - lib/alchemy/controller_actions.rb
1239
1256
  - lib/alchemy/deprecation.rb
1240
1257
  - lib/alchemy/dev_support/live_reload_watcher.rb
1241
1258
  - lib/alchemy/dragonfly/processors/auto_orient.rb
1242
1259
  - lib/alchemy/dragonfly/processors/crop_resize.rb
1243
1260
  - lib/alchemy/dragonfly/processors/thumbnail.rb
1244
- - lib/alchemy/element_definition.rb
1245
1261
  - lib/alchemy/elements_finder.rb
1246
1262
  - lib/alchemy/engine.rb
1247
1263
  - lib/alchemy/error_tracking.rb
@@ -1257,14 +1273,10 @@ files:
1257
1273
  - lib/alchemy/name_conversions.rb
1258
1274
  - lib/alchemy/on_page_layout.rb
1259
1275
  - lib/alchemy/on_page_layout/callbacks_runner.rb
1260
- - lib/alchemy/page_layout.rb
1261
1276
  - lib/alchemy/paths.rb
1262
1277
  - lib/alchemy/permissions.rb
1263
- - lib/alchemy/resource.rb
1264
- - lib/alchemy/resource_filter.rb
1265
- - lib/alchemy/resources_helper.rb
1278
+ - lib/alchemy/propshaft/tinymce_asset.rb
1266
1279
  - lib/alchemy/routing_constraints.rb
1267
- - lib/alchemy/searchable_resource.rb
1268
1280
  - lib/alchemy/seeder.rb
1269
1281
  - lib/alchemy/shell.rb
1270
1282
  - lib/alchemy/taggable.rb
@@ -1289,6 +1301,7 @@ files:
1289
1301
  - lib/alchemy/test_support/having_crop_action_examples.rb
1290
1302
  - lib/alchemy/test_support/having_picture_thumbnails_examples.rb
1291
1303
  - lib/alchemy/test_support/integration_helpers.rb
1304
+ - lib/alchemy/test_support/relatable_resource_examples.rb
1292
1305
  - lib/alchemy/test_support/rspec_matchers.rb
1293
1306
  - lib/alchemy/test_support/shared_contexts.rb
1294
1307
  - lib/alchemy/test_support/shared_dom_ids_examples.rb
@@ -1298,9 +1311,7 @@ files:
1298
1311
  - lib/alchemy/test_support/shared_uploader_examples.rb
1299
1312
  - lib/alchemy/tinymce.rb
1300
1313
  - lib/alchemy/upgrader.rb
1301
- - lib/alchemy/upgrader/seven_point_four.rb
1302
- - lib/alchemy/upgrader/seven_point_three.rb
1303
- - lib/alchemy/upgrader/tasks/.keep
1314
+ - lib/alchemy/upgrader/eight_zero.rb
1304
1315
  - lib/alchemy/version.rb
1305
1316
  - lib/alchemy_cms.rb
1306
1317
  - lib/generators/alchemy/base.rb
@@ -1311,17 +1322,14 @@ files:
1311
1322
  - lib/generators/alchemy/ingredient/ingredient_generator.rb
1312
1323
  - lib/generators/alchemy/ingredient/templates/editor.html.erb
1313
1324
  - lib/generators/alchemy/ingredient/templates/model.rb.tt
1314
- - lib/generators/alchemy/ingredient/templates/view.html.erb
1315
1325
  - lib/generators/alchemy/ingredient/templates/view_component.rb.tt
1316
1326
  - lib/generators/alchemy/install/files/_article.html.erb
1317
1327
  - lib/generators/alchemy/install/files/_standard.html.erb
1318
1328
  - lib/generators/alchemy/install/files/alchemy.en.yml
1319
- - lib/generators/alchemy/install/files/alchemy_admin.js
1320
- - lib/generators/alchemy/install/files/all.js
1321
1329
  - lib/generators/alchemy/install/files/application.html.erb
1322
- - lib/generators/alchemy/install/files/article.css
1323
1330
  - lib/generators/alchemy/install/files/custom.css
1324
1331
  - lib/generators/alchemy/install/install_generator.rb
1332
+ - lib/generators/alchemy/install/templates/alchemy.rb.tt
1325
1333
  - lib/generators/alchemy/install/templates/dragonfly.rb.tt
1326
1334
  - lib/generators/alchemy/install/templates/elements.yml.tt
1327
1335
  - lib/generators/alchemy/install/templates/menus.yml.tt
@@ -1347,6 +1355,7 @@ files:
1347
1355
  - lib/generators/alchemy/site_layouts/templates/layout.html.slim
1348
1356
  - lib/generators/alchemy/views/views_generator.rb
1349
1357
  - lib/non_stupid_digest_assets.rb
1358
+ - lib/tasks/alchemy/assets.rake
1350
1359
  - lib/tasks/alchemy/db.rake
1351
1360
  - lib/tasks/alchemy/install.rake
1352
1361
  - lib/tasks/alchemy/sitemap.rake
@@ -1354,9 +1363,12 @@ files:
1354
1363
  - lib/tasks/alchemy/tidy.rake
1355
1364
  - lib/tasks/alchemy/upgrade.rake
1356
1365
  - lib/tasks/alchemy/usage.rake
1357
- - rollup.config.mjs
1358
- - vendor/assets/images/remixicon.symbol.svg
1359
1366
  - vendor/assets/stylesheets/alchemy_admin/select2.css
1367
+ - vendor/assets/stylesheets/tinymce/skins/content/dark/content.min.css
1368
+ - vendor/assets/stylesheets/tinymce/skins/content/default/content.min.css
1369
+ - vendor/assets/stylesheets/tinymce/skins/ui/oxide-dark/content.min.css
1370
+ - vendor/assets/stylesheets/tinymce/skins/ui/oxide-dark/skin.min.css
1371
+ - vendor/assets/stylesheets/tinymce/skins/ui/oxide/skin.min.css
1360
1372
  - vendor/javascript/clipboard.min.js
1361
1373
  - vendor/javascript/cropperjs.min.js
1362
1374
  - vendor/javascript/flatpickr.min.js
@@ -1372,7 +1384,10 @@ files:
1372
1384
  homepage: https://alchemy-cms.com
1373
1385
  licenses:
1374
1386
  - BSD-3-Clause
1375
- metadata: {}
1387
+ metadata:
1388
+ homepage_uri: https://alchemy-cms.com
1389
+ source_code_uri: https://github.com/AlchemyCMS/alchemy_cms
1390
+ changelog_uri: https://github.com/AlchemyCMS/alchemy_cms/blob/main/CHANGELOG.md
1376
1391
  post_install_message: |+
1377
1392
  -------------------------------------------------------------
1378
1393
  Thank you for installing Alchemy CMS