spina 2.13.1 → 2.15.0
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of spina might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/app/assets/builds/spina/tailwind.css +554 -589
- data/app/assets/javascripts/spina/controllers/form_controller.js +14 -1
- data/app/assets/javascripts/spina/controllers/page_collapse_controller.js +17 -0
- data/app/assets/javascripts/spina/controllers/page_select_controller.js +38 -0
- data/app/assets/javascripts/spina/libraries/debounce.js +65 -0
- data/app/components/spina/forms/search_component.html.erb +12 -0
- data/app/components/spina/forms/search_component.rb +12 -0
- data/app/components/spina/forms/trix_toolbar_component.html.erb +5 -6
- data/app/components/spina/media_picker/modal_component.html.erb +24 -16
- data/app/components/spina/pages/new_page_button_component.html.erb +2 -2
- data/app/components/spina/pages/page_component.html.erb +23 -10
- data/app/components/spina/pages/page_component.rb +15 -3
- data/app/controllers/spina/admin/attachments_controller.rb +1 -1
- data/app/controllers/spina/admin/images_controller.rb +1 -1
- data/app/controllers/spina/admin/media_picker_controller.rb +1 -1
- data/app/controllers/spina/admin/page_select_options_controller.rb +24 -0
- data/app/controllers/spina/admin/pages_controller.rb +1 -1
- data/app/controllers/spina/admin/password_resets_controller.rb +1 -1
- data/app/models/concerns/spina/attachable.rb +21 -0
- data/app/models/spina/attachment.rb +2 -6
- data/app/models/spina/image.rb +2 -6
- data/app/models/spina/navigation_item.rb +1 -1
- data/app/models/spina/page.rb +3 -1
- data/app/models/spina/parts/page_link.rb +13 -0
- data/app/models/spina/user.rb +1 -1
- data/app/views/spina/admin/accounts/edit.html.erb +1 -1
- data/app/views/spina/admin/attachments/index.html.erb +9 -3
- data/app/views/spina/admin/images/_image.html.erb +2 -2
- data/app/views/spina/admin/images/index.html.erb +10 -3
- data/app/views/spina/admin/layout/edit.html.erb +1 -1
- data/app/views/spina/admin/navigations/edit.html.erb +1 -1
- data/app/views/spina/admin/page_select_options/index.html.erb +21 -0
- data/app/views/spina/admin/page_select_options/show.html.erb +3 -0
- data/app/views/spina/admin/pages/_form.html.erb +3 -3
- data/app/views/spina/admin/pages/children.html.erb +3 -0
- data/app/views/spina/admin/pages/index.html.erb +2 -2
- data/app/views/spina/admin/parts/multi_lines/_form.html.erb +4 -1
- data/app/views/spina/admin/parts/page_links/_form.html.erb +36 -0
- data/app/views/spina/admin/resources/edit.html.erb +1 -1
- data/app/views/spina/admin/settings/edit.html.erb +1 -1
- data/app/views/spina/admin/shared/_navigation.html.erb +4 -4
- data/app/views/spina/admin/theme/edit.html.erb +1 -1
- data/app/views/spina/admin/users/_form.html.erb +1 -1
- data/app/views/spina/admin/users/index.html.erb +1 -1
- data/config/initializers/importmap.rb +6 -0
- data/config/locales/de.yml +1 -0
- data/config/locales/en.yml +1 -0
- data/config/locales/nl.yml +43 -0
- data/config/routes.rb +8 -3
- data/db/migrate/16_add_ancestry_cache_columns_to_spina_pages.rb +6 -0
- data/lib/spina/attr_json_spina_parts_model.rb +1 -1
- data/lib/spina/engine.rb +2 -1
- data/lib/spina/version.rb +1 -1
- metadata +26 -19
@@ -0,0 +1,21 @@
|
|
1
|
+
<%= turbo_frame_tag "page_select_options_#{params[:object_id]}" do %>
|
2
|
+
<% if params[:search].blank? %>
|
3
|
+
<button type="button" data-action="page-select#clear reveal#hide" class="block hover:bg-gray-100 w-full text-left px-5 py-2 font-medium leading-5 text-gray-700 hover:text-gray-900 text-sm border-t border-gray-150">
|
4
|
+
–
|
5
|
+
</button>
|
6
|
+
<% end %>
|
7
|
+
|
8
|
+
<% @pages.each do |page| %>
|
9
|
+
<button type="button" data-action="page-select#select reveal#hide" data-title="<%= page.title %>" data-id="<%= page.id %>" class="block hover:bg-gray-100 w-full text-left px-5 py-2 font-medium leading-5 text-gray-700 hover:text-gray-900 text-sm border-t border-gray-150">
|
10
|
+
<%= page.title %>
|
11
|
+
<% if page.draft? %>
|
12
|
+
<span class="font-normal text-gray-400">
|
13
|
+
(<%=t "spina.pages.concept" %>)
|
14
|
+
</span>
|
15
|
+
<% end %>
|
16
|
+
<div class="text-xs font-normal text-gray-400">
|
17
|
+
<%= page.materialized_path %>
|
18
|
+
</div>
|
19
|
+
</button>
|
20
|
+
<% end %>
|
21
|
+
<% end %>
|
@@ -1,6 +1,6 @@
|
|
1
1
|
<div data-controller="tabs" data-tabs-active="cursor-default text-gray-900 bg-spina-dark bg-opacity-10" data-tabs-inactive="cursor-pointer bg-transparent text-gray-400 border-transparent">
|
2
2
|
<%= render Spina::UserInterface::HeaderComponent.new do |header| %>
|
3
|
-
<% header.
|
3
|
+
<% header.with_after_breadcrumbs do %>
|
4
4
|
<% if @page.draft? %>
|
5
5
|
<span class="text-gray-400 ml-2 text-sm">(<%= Spina::Page.human_attribute_name(:draft) %>)</span>
|
6
6
|
<% end %>
|
@@ -8,10 +8,10 @@
|
|
8
8
|
<%= heroicon("external-link", style: :mini, class: "w-4 h-4") %>
|
9
9
|
<% end %>
|
10
10
|
<% end %>
|
11
|
-
<% header.
|
11
|
+
<% header.with_actions do %>
|
12
12
|
<%= render Spina::Pages::ActionsComponent.new(page: @page, locale: @locale) %>
|
13
13
|
<% end %>
|
14
|
-
<% header.
|
14
|
+
<% header.with_navigation do %>
|
15
15
|
<nav class="-mb-3 mt-4">
|
16
16
|
<ul class="inline-flex w-auto rounded-md bg-white">
|
17
17
|
<% @tabs.each do |tab_name| %>
|
@@ -1,5 +1,5 @@
|
|
1
1
|
<%= render Spina::UserInterface::HeaderComponent.new do |header| %>
|
2
|
-
<% header.
|
2
|
+
<% header.with_actions do %>
|
3
3
|
<% if @resource %>
|
4
4
|
<%= link_to spina.edit_admin_resource_path(@resource), class: 'btn btn-default' do %>
|
5
5
|
<%= heroicon('cog-8-tooth', style: :solid, class: 'text-gray-300 w-5 h-5 -ml-1 mr-1') %>
|
@@ -12,7 +12,7 @@
|
|
12
12
|
</div>
|
13
13
|
<% end %>
|
14
14
|
|
15
|
-
<% header.
|
15
|
+
<% header.with_navigation do %>
|
16
16
|
<nav class="-mb-1 md:-mb-3 mt-4">
|
17
17
|
<ul class="inline-flex flex-wrap w-auto rounded-md bg-white">
|
18
18
|
<%= render Spina::UserInterface::TabLinkComponent.new(spina.admin_pages_path, active: @resource.nil?) do %>
|
@@ -1,4 +1,7 @@
|
|
1
1
|
<div class="mt-6">
|
2
2
|
<label for="content" class="block text-sm leading-5 font-medium text-gray-700"><%= f.object.title %></label>
|
3
|
-
|
3
|
+
<div class="text-gray-400 text-sm"><%= f.object.hint %></div>
|
4
|
+
<div class="mt-1">
|
5
|
+
<%= f.text_area :content, placeholder: f.object.title, class: "form-input mt-1 w-full" %>
|
6
|
+
</div>
|
4
7
|
</div>
|
@@ -0,0 +1,36 @@
|
|
1
|
+
<div class="mt-6">
|
2
|
+
<label class="block text-sm leading-5 font-medium text-gray-700"><%= f.object.title %></label>
|
3
|
+
<div class="text-gray-400 text-sm"><%= f.object.hint %></div>
|
4
|
+
|
5
|
+
<div data-controller="page-select reveal" data-placeholder="<%=t "spina.pages.select_page" %>" class="relative mt-1" data-reveal-away-value>
|
6
|
+
<%= f.hidden_field :page_id, data: {page_select_target: "input"} %>
|
7
|
+
|
8
|
+
<button type="button" class="btn btn-default px-3 inline-flex items-center text-sm font-medium" data-action="reveal#toggle page-select#autofocus">
|
9
|
+
<%= heroicon("link", style: :mini, class: "w-4 h-4 mr-1 text-gray-600") %>
|
10
|
+
<div data-page-select-target="label">
|
11
|
+
<% if f.object.page_id.present? %>
|
12
|
+
<%= turbo_frame_tag :page_title, src: spina.admin_page_select_option_path(f.object.page_id) %>
|
13
|
+
<% end %>
|
14
|
+
</div>
|
15
|
+
</button>
|
16
|
+
|
17
|
+
<div class="relative mt-1">
|
18
|
+
<div data-reveal data-transition hidden class="absolute shadow-lg border border-gray-200 origin-top-right rounded-md z-10 top-0">
|
19
|
+
<div class="rounded-md bg-white shadow-xs">
|
20
|
+
<%= form_with url: spina.search_admin_page_select_options_path, data: {turbo_frame: "page_select_options_#{f.object.object_id}", controller: "form", debounce_time: 100} do |ff| %>
|
21
|
+
<%= ff.hidden_field :object_id, value: f.object.object_id %>
|
22
|
+
<%= ff.hidden_field :resource, value: f.object.options&.dig(:resource) %>
|
23
|
+
<div class="p-2">
|
24
|
+
<%= ff.search_field :search, placeholder: t("spina.search"), class: "form-input sticky top-0 text-sm w-80", data: {action: "input->form#submit focus->form#submit", page_select_target: "search"} %>
|
25
|
+
</div>
|
26
|
+
<% end %>
|
27
|
+
|
28
|
+
<div class="overflow-scroll max-h-80">
|
29
|
+
<%= turbo_frame_tag "page_select_options_#{f.object.object_id}" do %>
|
30
|
+
<% end %>
|
31
|
+
</div>
|
32
|
+
</div>
|
33
|
+
</div>
|
34
|
+
</div>
|
35
|
+
</div>
|
36
|
+
</div>
|
@@ -1,5 +1,5 @@
|
|
1
1
|
<%= render Spina::UserInterface::HeaderComponent.new do |header| %>
|
2
|
-
<% header.
|
2
|
+
<% header.with_actions do %>
|
3
3
|
<%= render Spina::UserInterface::TranslationsComponent.new(@resource, label: @locale.upcase) %>
|
4
4
|
|
5
5
|
<%= button_tag type: :submit, form: dom_id(@resource), class: 'btn btn-primary', data: {controller: "button", action: "button#loading", loading_message: t('spina.ui.saving')} do %>
|
@@ -1,7 +1,7 @@
|
|
1
1
|
<%= form_with model: @setting, scope: :setting, url: admin_settings_path do |f| %>
|
2
2
|
|
3
3
|
<%= render Spina::UserInterface::HeaderComponent.new do |header| %>
|
4
|
-
<% header.
|
4
|
+
<% header.with_actions do %>
|
5
5
|
|
6
6
|
<%= button_tag type: :submit, class: 'btn btn-primary', data: {controller: "button", action: "button#loading", loading_message: t('spina.ui.saving')} do %>
|
7
7
|
<%= heroicon('check', style: :solid, class: 'w-5 h-5 mr-1 -ml-2') %>
|
@@ -3,7 +3,7 @@
|
|
3
3
|
|
4
4
|
<ul class="flex md:flex-col">
|
5
5
|
<%= render Spina::MainNavigation::SubNavComponent.new(:content) do |nav| %>
|
6
|
-
<% nav.
|
6
|
+
<% nav.with_icon do %>
|
7
7
|
<%= heroicon('document-text', style: :solid, class: 'hidden md:block w-8 h-8 text-white md:mr-3') %>
|
8
8
|
<%= heroicon('menu', style: :solid, class: 'md:hidden w-8 h-8 text-white md:mr-3') %>
|
9
9
|
|
@@ -12,7 +12,7 @@
|
|
12
12
|
</div>
|
13
13
|
<% end %>
|
14
14
|
|
15
|
-
<% nav.
|
15
|
+
<% nav.with_links do %>
|
16
16
|
|
17
17
|
<%= render Spina::MainNavigation::LinkComponent.new t('spina.website.pages'), spina.admin_pages_path, active: controller_name.in?(%w(pages resources)) %>
|
18
18
|
|
@@ -29,7 +29,7 @@
|
|
29
29
|
<%= render Spina::Hooks::HookComponent.new(partial: "primary_navigation") %>
|
30
30
|
|
31
31
|
<%= render Spina::MainNavigation::SubNavComponent.new(:settings) do |nav| %>
|
32
|
-
<% nav.
|
32
|
+
<% nav.with_icon do %>
|
33
33
|
<%= heroicon('cog-8-tooth', style: :solid, class: 'w-8 h-8 text-white md:mr-3') %>
|
34
34
|
|
35
35
|
<div class="text-white font-semibold hidden md:block transform -translate-x-2 ease-in-out duration-300 absolute md:relative opacity-0 transition-all" data-navigation-target="label">
|
@@ -37,7 +37,7 @@
|
|
37
37
|
</div>
|
38
38
|
<% end %>
|
39
39
|
|
40
|
-
<% nav.
|
40
|
+
<% nav.with_links do %>
|
41
41
|
<%= render Spina::MainNavigation::LinkComponent.new(t('spina.settings.general'), spina.edit_admin_account_path, active: controller_name == "accounts") %>
|
42
42
|
<%= render Spina::MainNavigation::LinkComponent.new(t('spina.website.theme'), spina.edit_admin_theme_path, active: controller_name == "theme") %>
|
43
43
|
|
@@ -1,7 +1,7 @@
|
|
1
1
|
<%= form_with model: Spina::Current.account, url: spina.admin_theme_path do |f| %>
|
2
2
|
|
3
3
|
<%= render Spina::UserInterface::HeaderComponent.new do |header| %>
|
4
|
-
<% header.
|
4
|
+
<% header.with_actions do %>
|
5
5
|
|
6
6
|
<%= button_tag type: :submit, class: 'btn btn-primary', data: {controller: "button hotkeys", hotkeys: "command+s, ctrl+s", hotkeys_target: "button", action: "button#loading", loading_message: t("spina.ui.saving")} do %>
|
7
7
|
<%= heroicon('check', style: :mini, class: 'w-5 h-5 -ml-1 mr-1') %>
|
@@ -1,5 +1,5 @@
|
|
1
1
|
<%= render Spina::UserInterface::HeaderComponent.new do |header| %>
|
2
|
-
<% header.
|
2
|
+
<% header.with_actions do %>
|
3
3
|
<%= button_tag type: :submit, form: dom_id(@user), class: 'btn btn-primary', data: {controller: "button hotkeys", hotkeys: "command+s, ctrl+s", hotkeys_target: "button", action: "button#loading", loading_message: t('spina.ui.saving')} do %>
|
4
4
|
<%= heroicon('check', style: :mini, class: 'w-5 h-5 -ml-1 mr-1') %>
|
5
5
|
<%=t 'spina.users.save' %>
|
@@ -1,5 +1,5 @@
|
|
1
1
|
<%= render Spina::UserInterface::HeaderComponent.new do |header| %>
|
2
|
-
<% header.
|
2
|
+
<% header.with_after_breadcrumbs do %>
|
3
3
|
<% if current_spina_user.admin? %>
|
4
4
|
<%= link_to spina.new_admin_user_path, class: 'btn btn-default h-8 px-2 ml-3' do %>
|
5
5
|
<%= heroicon('plus', style: :mini, class: 'w-4 h-4') %>
|
@@ -10,3 +10,9 @@ Spina.config.importmap.draw do
|
|
10
10
|
pin_all_from Spina::Engine.root.join("app/assets/javascripts/spina/controllers"), under: "controllers", to: "spina/controllers"
|
11
11
|
pin_all_from Spina::Engine.root.join("app/assets/javascripts/spina/libraries"), under: "libraries", to: "spina/libraries"
|
12
12
|
end
|
13
|
+
|
14
|
+
Spina.config.importmap.cache_sweeper watches: Spina::Engine.root.join("app/assets/javascripts")
|
15
|
+
|
16
|
+
ActiveSupport.on_load(:action_controller_base) do
|
17
|
+
before_action { Spina.config.importmap.cache_sweeper.execute_if_updated }
|
18
|
+
end
|
data/config/locales/de.yml
CHANGED
data/config/locales/en.yml
CHANGED
data/config/locales/nl.yml
CHANGED
@@ -1,5 +1,17 @@
|
|
1
1
|
nl:
|
2
|
+
activemodel:
|
3
|
+
attributes:
|
4
|
+
spina/embeds/youtube:
|
5
|
+
url: youtube.com/watch?v=...
|
6
|
+
spina/embeds/vimeo:
|
7
|
+
url: vimeo.com/...
|
2
8
|
activerecord:
|
9
|
+
errors:
|
10
|
+
models:
|
11
|
+
spina/page:
|
12
|
+
attributes:
|
13
|
+
title:
|
14
|
+
blank: Titel is verplicht
|
3
15
|
attributes:
|
4
16
|
spina/account:
|
5
17
|
address: Adres
|
@@ -94,6 +106,15 @@ nl:
|
|
94
106
|
spina/user:
|
95
107
|
one: Gebruiker
|
96
108
|
other: Gebruikers
|
109
|
+
helpers:
|
110
|
+
label:
|
111
|
+
spina/embeds/button:
|
112
|
+
url: URL
|
113
|
+
label: Button label
|
114
|
+
spina/embeds/youtube:
|
115
|
+
url: Youtube URL
|
116
|
+
spina/embeds/vimeo:
|
117
|
+
url: Vimeo URL
|
97
118
|
spina:
|
98
119
|
accounts:
|
99
120
|
contact_details: Contactgegevens
|
@@ -106,6 +127,7 @@ nl:
|
|
106
127
|
attachments:
|
107
128
|
choose_attachment: Kies een bijlage
|
108
129
|
delete_confirmation_html: Weet je het zeker? Het kan zijn dat dit document in gebruik is op een pagina.
|
130
|
+
download: Download
|
109
131
|
insert: Document toevoegen
|
110
132
|
insert_multiple: Documenten toevoegen
|
111
133
|
upload: Upload documenten
|
@@ -117,6 +139,9 @@ nl:
|
|
117
139
|
delete_confirmation: Weet je zeker dat je <strong>%{subject}</strong> wilt verwijderen?
|
118
140
|
edit: Bewerken
|
119
141
|
edit_website: Bewerk je website
|
142
|
+
embeds:
|
143
|
+
embed_a_component: Embed een onderdeel
|
144
|
+
embed_component: Embed onderdeel
|
120
145
|
forgot_password:
|
121
146
|
expired: Je wachtwoord reset is verlopen
|
122
147
|
mail_subject: Stel je wachtwoord opnieuw in
|
@@ -140,6 +165,7 @@ nl:
|
|
140
165
|
insert_photo: Afbeelding invoegen
|
141
166
|
insert_photos: Afbeeldingen invoegen
|
142
167
|
link: Link
|
168
|
+
missing_image: Ontbrekende afbeelding
|
143
169
|
new_folder: Nieuwe folder
|
144
170
|
organize: Herindelen
|
145
171
|
remove_image: Verwijder afbeelding
|
@@ -218,6 +244,7 @@ nl:
|
|
218
244
|
change_view_template: Wijzig pagina template
|
219
245
|
change_view_template_confirmation: Weet je zeker dat je de pagina template wil veranderen? Inhoud die niet op de nieuwe pagina past gaat verloren.
|
220
246
|
concept: concept
|
247
|
+
couldnt_be_saved: Pagina kon niet worden opgeslagen
|
221
248
|
create: Maak pagina
|
222
249
|
create_page: "%{template} invullen"
|
223
250
|
delete: Verwijder pagina
|
@@ -251,6 +278,7 @@ nl:
|
|
251
278
|
save_draft: Concept opslaan
|
252
279
|
saved: Pagina opgeslagen
|
253
280
|
saving: "<i></i> Opslaan..."
|
281
|
+
select_page: Kies pagina
|
254
282
|
search_engines: Zoekmachines
|
255
283
|
show_in_menu: onzichtbaar
|
256
284
|
skip_to_first_child: doorsturen naar 1<sup>e</sup> subpagina
|
@@ -306,8 +334,10 @@ nl:
|
|
306
334
|
save: Opslaan
|
307
335
|
search: Zoeken...
|
308
336
|
settings:
|
337
|
+
general: Algemeen
|
309
338
|
save: Voorkeuren opslaan
|
310
339
|
title: Voorkeuren
|
340
|
+
users: Gebruikers
|
311
341
|
theme:
|
312
342
|
save: Thema opslaan
|
313
343
|
saved: Thema opgeslagen
|
@@ -326,6 +356,16 @@ nl:
|
|
326
356
|
replace: Vervangen
|
327
357
|
save_changes: Wijzigingen opslaan
|
328
358
|
saving: Opslaan...
|
359
|
+
user_mailer:
|
360
|
+
forgot_password:
|
361
|
+
button: Reset je wachtwoord
|
362
|
+
introduction: Je hebt recent aangegeven dat je je wachtwoord bent vergeten voor je Spina CMS-account. Deze wachtwoord-reset is geldig voor 2 uur. Klik op de link of plak de URL in je browser.
|
363
|
+
introduction_html: "Je hebt recent aangegeven dat je je wachtwoord bent vergeten voor je Spina CMS-account. Gebruik de knop hieronder. <strong>Deze wachtwoord-reset is 2 uur geldig.</strong>"
|
364
|
+
preheader: Gebruik deze link om je wachtwoord te resetten. Deze is 2 uur geldig
|
365
|
+
request_origin: Beveiliging, dit is aangevraagd vanaf een %{platform}-apparaat via %{browser}. Als je geen wachtwoord-reset hebt aangevraagd, negeer deze e-mail dan.
|
366
|
+
salutation: Hoi, %{name}
|
367
|
+
subject: Stel je wachtwoord opnieuw in
|
368
|
+
trouble: Als bovenstaande knop niet werkt, kopieer en plak deze onderstaande link dan in de browser
|
329
369
|
users:
|
330
370
|
authorization: Autorisatie
|
331
371
|
authorization_description: Admins kunnen gebruikers beheren. Normale gebruikers niet.
|
@@ -343,6 +383,7 @@ nl:
|
|
343
383
|
visit_page: Bekijk pagina
|
344
384
|
website:
|
345
385
|
all_pages: Alle pagina's
|
386
|
+
content: Content
|
346
387
|
documents: Documenten
|
347
388
|
images: Afbeeldingen
|
348
389
|
main: Pagina's
|
@@ -351,6 +392,8 @@ nl:
|
|
351
392
|
pages: Pagina's
|
352
393
|
pages_description: Alle pagina's op je website
|
353
394
|
photos: Afbeeldingen
|
395
|
+
settings: Instellingen
|
396
|
+
theme: Thema
|
354
397
|
title: Je website
|
355
398
|
wysiwyg:
|
356
399
|
heading_1: Kop 1
|
data/config/routes.rb
CHANGED
@@ -46,12 +46,17 @@ Spina::Engine.routes.draw do
|
|
46
46
|
get :edit_content
|
47
47
|
get :edit_template
|
48
48
|
get :children
|
49
|
+
post :sort_one
|
50
|
+
end
|
51
|
+
|
52
|
+
collection do
|
53
|
+
post :sort
|
49
54
|
end
|
50
55
|
|
51
56
|
resource :move, controller: "move_pages"
|
52
|
-
|
53
|
-
|
54
|
-
post :
|
57
|
+
end
|
58
|
+
resources :page_select_options, only: [:show, :index] do
|
59
|
+
post :search, on: :collection
|
55
60
|
end
|
56
61
|
resources :page_translations, only: [:destroy]
|
57
62
|
resources :parent_pages
|
data/lib/spina/engine.rb
CHANGED
data/lib/spina/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: spina
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.15.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Bram Jetten
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2023-05-10 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|
@@ -168,16 +168,22 @@ dependencies:
|
|
168
168
|
name: view_component
|
169
169
|
requirement: !ruby/object:Gem::Requirement
|
170
170
|
requirements:
|
171
|
-
- - "
|
171
|
+
- - ">="
|
172
172
|
- !ruby/object:Gem::Version
|
173
173
|
version: '2.32'
|
174
|
+
- - "<"
|
175
|
+
- !ruby/object:Gem::Version
|
176
|
+
version: '4.0'
|
174
177
|
type: :runtime
|
175
178
|
prerelease: false
|
176
179
|
version_requirements: !ruby/object:Gem::Requirement
|
177
180
|
requirements:
|
178
|
-
- - "
|
181
|
+
- - ">="
|
179
182
|
- !ruby/object:Gem::Version
|
180
183
|
version: '2.32'
|
184
|
+
- - "<"
|
185
|
+
- !ruby/object:Gem::Version
|
186
|
+
version: '4.0'
|
181
187
|
- !ruby/object:Gem::Dependency
|
182
188
|
name: importmap-rails
|
183
189
|
requirement: !ruby/object:Gem::Requirement
|
@@ -282,20 +288,6 @@ dependencies:
|
|
282
288
|
- - ">="
|
283
289
|
- !ruby/object:Gem::Version
|
284
290
|
version: 2.0.0
|
285
|
-
- !ruby/object:Gem::Dependency
|
286
|
-
name: standard
|
287
|
-
requirement: !ruby/object:Gem::Requirement
|
288
|
-
requirements:
|
289
|
-
- - ">="
|
290
|
-
- !ruby/object:Gem::Version
|
291
|
-
version: '0'
|
292
|
-
type: :runtime
|
293
|
-
prerelease: false
|
294
|
-
version_requirements: !ruby/object:Gem::Requirement
|
295
|
-
requirements:
|
296
|
-
- - ">="
|
297
|
-
- !ruby/object:Gem::Version
|
298
|
-
version: '0'
|
299
291
|
description: CMS
|
300
292
|
email:
|
301
293
|
- bram@denkgroot.com
|
@@ -1218,6 +1210,8 @@ files:
|
|
1218
1210
|
- app/assets/javascripts/spina/controllers/media_picker_modal_controller.js
|
1219
1211
|
- app/assets/javascripts/spina/controllers/modal_controller.js
|
1220
1212
|
- app/assets/javascripts/spina/controllers/navigation_controller.js
|
1213
|
+
- app/assets/javascripts/spina/controllers/page_collapse_controller.js
|
1214
|
+
- app/assets/javascripts/spina/controllers/page_select_controller.js
|
1221
1215
|
- app/assets/javascripts/spina/controllers/parent_pages_controller.js
|
1222
1216
|
- app/assets/javascripts/spina/controllers/repeater_controller.js
|
1223
1217
|
- app/assets/javascripts/spina/controllers/reveal_controller.js
|
@@ -1232,6 +1226,7 @@ files:
|
|
1232
1226
|
- app/assets/javascripts/spina/controllers/unique_id_controller.js
|
1233
1227
|
- app/assets/javascripts/spina/libraries/canvas-confetti.js
|
1234
1228
|
- app/assets/javascripts/spina/libraries/canvas-confetti@1.3.2.js
|
1229
|
+
- app/assets/javascripts/spina/libraries/debounce.js
|
1235
1230
|
- app/assets/javascripts/spina/libraries/form-request-submit-polyfill.js
|
1236
1231
|
- app/assets/javascripts/spina/libraries/form-request-submit-polyfill@2.0.0.js
|
1237
1232
|
- app/assets/javascripts/spina/libraries/hotkeys.js
|
@@ -1250,6 +1245,8 @@ files:
|
|
1250
1245
|
- app/components/spina/forms/label_component.rb
|
1251
1246
|
- app/components/spina/forms/password_field_component.html.erb
|
1252
1247
|
- app/components/spina/forms/password_field_component.rb
|
1248
|
+
- app/components/spina/forms/search_component.html.erb
|
1249
|
+
- app/components/spina/forms/search_component.rb
|
1253
1250
|
- app/components/spina/forms/switch_component.html.erb
|
1254
1251
|
- app/components/spina/forms/switch_component.rb
|
1255
1252
|
- app/components/spina/forms/text_field_component.html.erb
|
@@ -1310,6 +1307,7 @@ files:
|
|
1310
1307
|
- app/controllers/spina/admin/move_pages_controller.rb
|
1311
1308
|
- app/controllers/spina/admin/navigation_items_controller.rb
|
1312
1309
|
- app/controllers/spina/admin/navigations_controller.rb
|
1310
|
+
- app/controllers/spina/admin/page_select_options_controller.rb
|
1313
1311
|
- app/controllers/spina/admin/page_translations_controller.rb
|
1314
1312
|
- app/controllers/spina/admin/pages_controller.rb
|
1315
1313
|
- app/controllers/spina/admin/parent_pages_controller.rb
|
@@ -1339,6 +1337,7 @@ files:
|
|
1339
1337
|
- app/jobs/spina/resource_pages_update_job.rb
|
1340
1338
|
- app/mailers/spina/application_mailer.rb
|
1341
1339
|
- app/mailers/spina/user_mailer.rb
|
1340
|
+
- app/models/concerns/spina/attachable.rb
|
1342
1341
|
- app/models/concerns/spina/gravatar.rb
|
1343
1342
|
- app/models/concerns/spina/partable.rb
|
1344
1343
|
- app/models/concerns/spina/translated_content.rb
|
@@ -1363,6 +1362,7 @@ files:
|
|
1363
1362
|
- app/models/spina/parts/line.rb
|
1364
1363
|
- app/models/spina/parts/multi_line.rb
|
1365
1364
|
- app/models/spina/parts/option.rb
|
1365
|
+
- app/models/spina/parts/page_link.rb
|
1366
1366
|
- app/models/spina/parts/repeater.rb
|
1367
1367
|
- app/models/spina/parts/repeater_content.rb
|
1368
1368
|
- app/models/spina/parts/text.rb
|
@@ -1406,6 +1406,8 @@ files:
|
|
1406
1406
|
- app/views/spina/admin/navigations/_navigation.html.erb
|
1407
1407
|
- app/views/spina/admin/navigations/edit.html.erb
|
1408
1408
|
- app/views/spina/admin/navigations/index.html.erb
|
1409
|
+
- app/views/spina/admin/page_select_options/index.html.erb
|
1410
|
+
- app/views/spina/admin/page_select_options/show.html.erb
|
1409
1411
|
- app/views/spina/admin/pages/_button_advanced.html.erb
|
1410
1412
|
- app/views/spina/admin/pages/_button_page_content.html.erb
|
1411
1413
|
- app/views/spina/admin/pages/_button_search_engines.html.erb
|
@@ -1414,6 +1416,7 @@ files:
|
|
1414
1416
|
- app/views/spina/admin/pages/_form_page_content.html.erb
|
1415
1417
|
- app/views/spina/admin/pages/_form_search_engines.html.erb
|
1416
1418
|
- app/views/spina/admin/pages/_new_page_form.html.erb
|
1419
|
+
- app/views/spina/admin/pages/children.html.erb
|
1417
1420
|
- app/views/spina/admin/pages/edit.html.erb
|
1418
1421
|
- app/views/spina/admin/pages/edit_content.html.erb
|
1419
1422
|
- app/views/spina/admin/pages/edit_template.html.erb
|
@@ -1429,6 +1432,7 @@ files:
|
|
1429
1432
|
- app/views/spina/admin/parts/lines/_form.html.erb
|
1430
1433
|
- app/views/spina/admin/parts/multi_lines/_form.html.erb
|
1431
1434
|
- app/views/spina/admin/parts/options/_form.html.erb
|
1435
|
+
- app/views/spina/admin/parts/page_links/_form.html.erb
|
1432
1436
|
- app/views/spina/admin/parts/repeaters/_fields.html.erb
|
1433
1437
|
- app/views/spina/admin/parts/repeaters/_form.html.erb
|
1434
1438
|
- app/views/spina/admin/parts/texts/_form.html.erb
|
@@ -1486,6 +1490,7 @@ files:
|
|
1486
1490
|
- db/migrate/13_add_json_attributes_to_spina_accounts.rb
|
1487
1491
|
- db/migrate/14_add_json_attributes_to_spina_pages.rb
|
1488
1492
|
- db/migrate/15_add_slug_to_spina_resources.rb
|
1493
|
+
- db/migrate/16_add_ancestry_cache_columns_to_spina_pages.rb
|
1489
1494
|
- db/migrate/1_create_spina_tables.rb
|
1490
1495
|
- db/migrate/2_create_spina_translation_tables.rb
|
1491
1496
|
- db/migrate/3_create_spina_navigations.rb
|
@@ -1544,7 +1549,9 @@ metadata:
|
|
1544
1549
|
documentation_uri: https://www.spinacms.com/docs
|
1545
1550
|
changelog_uri: https://github.com/SpinaCMS/Spina/blob/main/CHANGELOG.md
|
1546
1551
|
source_code_uri: https://github.com/SpinaCMS/Spina
|
1547
|
-
post_install_message:
|
1552
|
+
post_install_message: "\n Spina v2.14 includes a new migration, don't forget to
|
1553
|
+
run spina:install:migrations.\n \n For details on this specific release, refer
|
1554
|
+
to the CHANGELOG file.\n "
|
1548
1555
|
rdoc_options: []
|
1549
1556
|
require_paths:
|
1550
1557
|
- lib
|