pages_core 3.7.0 → 3.8.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (167) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +1 -2
  3. data/Rakefile +37 -0
  4. data/app/assets/builds/pages_core/admin-dist.js +55 -0
  5. data/app/assets/stylesheets/pages/admin/components/image_editor.scss +1 -0
  6. data/app/assets/stylesheets/pages/admin/components/image_grid.scss +33 -5
  7. data/app/assets/stylesheets/pages/admin/components/layout.scss +2 -1
  8. data/app/assets/stylesheets/pages/admin/components/login.scss +6 -0
  9. data/app/assets/stylesheets/pages/admin/components/tabs.scss +5 -0
  10. data/app/assets/stylesheets/pages/admin/components/tag_editor.scss +13 -7
  11. data/app/assets/stylesheets/pages/admin/controllers/pages.scss +13 -5
  12. data/app/assets/stylesheets/pages/admin.scss +0 -1
  13. data/app/controller_dummies/admin/admin_controller.rb +1 -1
  14. data/app/controller_dummies/application_controller.rb +1 -1
  15. data/app/controller_dummies/attachments_controller.rb +1 -1
  16. data/app/controller_dummies/frontend_controller.rb +1 -1
  17. data/app/controller_dummies/images_controller.rb +1 -1
  18. data/app/controller_dummies/page_files_controller.rb +1 -1
  19. data/app/controller_dummies/pages_controller.rb +1 -1
  20. data/app/controller_dummies/sitemaps_controller.rb +1 -1
  21. data/app/controllers/admin/attachments_controller.rb +1 -1
  22. data/app/controllers/admin/images_controller.rb +11 -8
  23. data/app/controllers/concerns/pages_core/authentication.rb +9 -4
  24. data/app/controllers/concerns/pages_core/preview_pages_controller.rb +5 -0
  25. data/app/controllers/pages_core/frontend/pages_controller.rb +5 -2
  26. data/app/controllers/sessions_controller.rb +1 -1
  27. data/app/formatters/pages_core/link_renderer.rb +2 -2
  28. data/app/helpers/application_helper.rb +1 -1
  29. data/app/helpers/frontend_helper.rb +1 -1
  30. data/app/helpers/pages_core/admin/content_tabs_helper.rb +5 -2
  31. data/app/helpers/pages_core/admin/image_uploads_helper.rb +2 -3
  32. data/app/helpers/pages_core/admin/tag_editor_helper.rb +9 -39
  33. data/app/helpers/pages_core/head_tags_helper.rb +11 -20
  34. data/app/helpers/pages_core/open_graph_tags_helper.rb +1 -1
  35. data/app/javascript/admin-dist.js +2 -0
  36. data/app/javascript/components/Attachments/Attachment.jsx +121 -0
  37. data/app/javascript/components/Attachments/AttachmentEditor.jsx +116 -0
  38. data/app/javascript/components/Attachments/Placeholder.jsx +10 -0
  39. data/app/javascript/components/Attachments.jsx +165 -0
  40. data/app/{assets/javascripts/pages/admin/components/date_range_select.jsx → javascript/components/DateRangeSelect.jsx} +16 -5
  41. data/app/javascript/components/EditableImage.jsx +61 -0
  42. data/app/javascript/components/FileUploadButton.jsx +47 -0
  43. data/app/{assets/javascripts/pages/admin/components/focal_point.jsx → javascript/components/ImageCropper/FocalPoint.jsx} +12 -1
  44. data/app/javascript/components/ImageCropper/Image.jsx +65 -0
  45. data/app/javascript/components/ImageCropper/Toolbar.jsx +73 -0
  46. data/app/javascript/components/ImageCropper/useCrop.js +199 -0
  47. data/app/javascript/components/ImageCropper.jsx +90 -0
  48. data/app/javascript/components/ImageEditor/Form.jsx +98 -0
  49. data/app/javascript/components/ImageEditor.jsx +62 -0
  50. data/app/javascript/components/ImageGrid/DragElement.jsx +30 -0
  51. data/app/javascript/components/ImageGrid/FilePlaceholder.jsx +9 -0
  52. data/app/javascript/components/ImageGrid/GridImage.jsx +103 -0
  53. data/app/javascript/components/ImageGrid/Placeholder.jsx +23 -0
  54. data/app/javascript/components/ImageGrid.jsx +257 -0
  55. data/app/javascript/components/ImageUploader.jsx +171 -0
  56. data/app/{assets/javascripts/pages/admin/components/modal.jsx → javascript/components/Modal.jsx} +13 -2
  57. data/app/{assets/javascripts/pages/admin/components/page_dates.jsx → javascript/components/PageDates.jsx} +11 -1
  58. data/app/{assets/javascripts/pages/admin/components/page_files.jsx → javascript/components/PageFiles.jsx} +11 -2
  59. data/app/{assets/javascripts/pages/admin/components/page_images.jsx → javascript/components/PageImages.jsx} +11 -2
  60. data/app/{assets/javascripts/pages/admin/components/page_tree_store.jsx → javascript/components/PageTree.jsx} +127 -137
  61. data/app/{assets/javascripts/pages/admin/components/page_tree.jsx → javascript/components/PageTreeDraggable.jsx} +35 -29
  62. data/app/{assets/javascripts/pages/admin/components/page_tree_node.jsx → javascript/components/PageTreeNode.jsx} +35 -20
  63. data/app/javascript/components/RichTextArea.jsx +213 -0
  64. data/app/javascript/components/RichTextToolbarButton.jsx +20 -0
  65. data/app/javascript/components/TagEditor/AddTagForm.jsx +42 -0
  66. data/app/javascript/components/TagEditor/Tag.jsx +32 -0
  67. data/app/javascript/components/TagEditor.jsx +61 -0
  68. data/app/javascript/components/Toast.jsx +72 -0
  69. data/app/javascript/components/drag/draggedOrder.js +51 -0
  70. data/app/javascript/components/drag/useDragCollection.js +84 -0
  71. data/app/javascript/components/drag/useDragUploader.js +112 -0
  72. data/app/javascript/components/drag/useDraggable.js +17 -0
  73. data/app/javascript/components/drag.js +6 -0
  74. data/app/javascript/components.js +15 -0
  75. data/app/javascript/controllers/EditPageController.js +20 -0
  76. data/app/javascript/controllers/LoginController.js +29 -0
  77. data/app/javascript/controllers/MainController.js +65 -0
  78. data/app/javascript/controllers/PageOptionsController.js +62 -0
  79. data/app/javascript/features/RichText.jsx +34 -0
  80. data/app/javascript/hooks.js +2 -0
  81. data/app/javascript/index.js +38 -0
  82. data/app/{assets/javascripts/pages/admin/lib/tree.jsx → javascript/lib/Tree.js} +55 -54
  83. data/app/javascript/lib/copyToClipboard.js +13 -0
  84. data/app/javascript/lib/readyHandler.js +22 -0
  85. data/app/javascript/lib/request.js +36 -0
  86. data/app/javascript/stores/ModalStore.jsx +12 -0
  87. data/app/javascript/stores/ToastStore.jsx +14 -0
  88. data/app/javascript/stores.js +2 -0
  89. data/app/models/concerns/pages_core/page_model/images.rb +3 -1
  90. data/app/models/concerns/pages_core/page_model/searchable.rb +19 -0
  91. data/app/models/concerns/pages_core/searchable_document.rb +71 -0
  92. data/app/models/concerns/pages_core/taggable.rb +27 -12
  93. data/app/models/page.rb +2 -0
  94. data/app/models/page_exporter.rb +2 -2
  95. data/app/models/page_image.rb +0 -2
  96. data/app/models/role.rb +1 -1
  97. data/app/models/search_document.rb +72 -0
  98. data/app/models/tag.rb +1 -0
  99. data/app/models/user.rb +1 -1
  100. data/app/{serializers/admin/attachment_serializer.rb → resources/admin/attachment_resource.rb} +6 -5
  101. data/app/{serializers/admin/image_serializer.rb → resources/admin/image_resource.rb} +9 -9
  102. data/app/resources/admin/page_file_resource.rb +10 -0
  103. data/app/{serializers/admin/page_image_serializer.rb → resources/admin/page_image_resource.rb} +4 -2
  104. data/app/resources/export/attachment_resource.rb +10 -0
  105. data/app/resources/export/page_image_resource.rb +45 -0
  106. data/app/resources/export/page_resource.rb +42 -0
  107. data/app/{serializers/page_image_serializer.rb → resources/page_image_resource.rb} +8 -16
  108. data/app/resources/page_resource.rb +33 -0
  109. data/app/services/pages_core/destroy_invite_service.rb +2 -2
  110. data/app/services/pages_core/invite_service.rb +2 -2
  111. data/app/views/admin/pages/_edit_content.html.erb +1 -1
  112. data/app/views/admin/pages/_edit_files.html.erb +1 -5
  113. data/app/views/admin/pages/_edit_images.html.erb +1 -5
  114. data/app/views/admin/pages/_edit_options.html.erb +74 -55
  115. data/app/views/admin/pages/_form.html.erb +19 -0
  116. data/app/views/admin/pages/edit.html.erb +35 -61
  117. data/app/views/admin/pages/index.html.erb +0 -1
  118. data/app/views/admin/pages/new.html.erb +32 -32
  119. data/app/views/admin/users/_access_control.html.erb +5 -1
  120. data/app/views/admin/users/login.html.erb +12 -4
  121. data/app/views/feeds/pages.rss.builder +1 -2
  122. data/app/views/layouts/admin/_header.html.erb +1 -1
  123. data/app/views/layouts/admin/_page_header.html.erb +33 -0
  124. data/app/views/layouts/admin.html.erb +23 -42
  125. data/app/views/pages_core/_google_analytics.html.erb +8 -0
  126. data/db/migrate/20180625154059_enable_search_extensions.rb +10 -0
  127. data/db/migrate/20210209151400_create_search_configurations.rb +35 -0
  128. data/db/migrate/20210210235200_create_search_documents.rb +74 -0
  129. data/lib/pages_core/engine.rb +1 -5
  130. data/lib/pages_core/templates/block_configuration.rb +1 -1
  131. data/lib/pages_core/templates/configuration_handler.rb +1 -1
  132. data/lib/pages_core/version.rb +3 -1
  133. data/lib/pages_core.rb +3 -5
  134. data/lib/rails/generators/pages_core/frontend/frontend_generator.rb +0 -7
  135. data/lib/rails/generators/pages_core/install/templates/page_templates_initializer.rb +2 -2
  136. metadata +116 -115
  137. data/app/assets/javascripts/pages/admin/components/attachment.jsx +0 -130
  138. data/app/assets/javascripts/pages/admin/components/attachment_editor.jsx +0 -131
  139. data/app/assets/javascripts/pages/admin/components/attachments.jsx +0 -211
  140. data/app/assets/javascripts/pages/admin/components/drag_uploader.jsx +0 -174
  141. data/app/assets/javascripts/pages/admin/components/editable_image.jsx +0 -57
  142. data/app/assets/javascripts/pages/admin/components/file_upload_button.jsx +0 -44
  143. data/app/assets/javascripts/pages/admin/components/grid_image.jsx +0 -124
  144. data/app/assets/javascripts/pages/admin/components/image_editor.jsx +0 -496
  145. data/app/assets/javascripts/pages/admin/components/image_grid.jsx +0 -306
  146. data/app/assets/javascripts/pages/admin/components/image_uploader.jsx +0 -176
  147. data/app/assets/javascripts/pages/admin/components/modal_store.jsx +0 -20
  148. data/app/assets/javascripts/pages/admin/components/rich_text_area.jsx +0 -64
  149. data/app/assets/javascripts/pages/admin/components/rich_text_toolbar.jsx +0 -91
  150. data/app/assets/javascripts/pages/admin/components/toast.jsx +0 -34
  151. data/app/assets/javascripts/pages/admin/components/toast_store.jsx +0 -52
  152. data/app/assets/javascripts/pages/admin/components.jsx +0 -2
  153. data/app/assets/javascripts/pages/admin/features/content_tabs.jsx +0 -72
  154. data/app/assets/javascripts/pages/admin/features/edit_page.jsx +0 -97
  155. data/app/assets/javascripts/pages/admin/features/rich_text.jsx +0 -14
  156. data/app/assets/javascripts/pages/admin/features/tag_editor.jsx +0 -160
  157. data/app/assets/javascripts/pages/admin.jsx +0 -17
  158. data/app/assets/javascripts/pages/login_form.jsx +0 -21
  159. data/app/serializers/admin/page_file_serializer.rb +0 -8
  160. data/app/serializers/page_export_serializer.rb +0 -32
  161. data/app/serializers/page_file_export_serializer.rb +0 -6
  162. data/app/serializers/page_image_export_serializer.rb +0 -42
  163. data/app/serializers/page_serializer.rb +0 -23
  164. data/app/views/layouts/admin/_analytics.html.erb +0 -16
  165. data/lib/rails/generators/pages_core/frontend/templates/application.js.erb +0 -15
  166. data/vendor/assets/javascripts/ReactCrop.min.js +0 -1
  167. data/vendor/assets/javascripts/reflux.min.js +0 -1
@@ -0,0 +1,74 @@
1
+ # frozen_string_literal: true
2
+
3
+ class CreateSearchDocuments < ActiveRecord::Migration[6.0]
4
+ def change
5
+ create_table :search_documents do |t|
6
+ t.references :searchable, polymorphic: true, index: true, null: false
7
+ t.string :locale, null: false
8
+
9
+ t.text :name
10
+ t.text :description
11
+ t.text :content
12
+ t.text :tags
13
+ t.boolean :published, null: false, default: true
14
+ t.timestamps
15
+ t.datetime :record_updated_at, null: false
16
+
17
+ t.index %i[searchable_type searchable_id locale],
18
+ name: :search_documents_unique_index,
19
+ unique: true
20
+
21
+ # Tsvector index
22
+ t.string :tsv_config, null: false, default: "simple_unaccent"
23
+ t.tsvector :tsv
24
+ t.index :tsv, using: :gin
25
+
26
+ # Trigram index
27
+ t.index :name,
28
+ name: :search_documents_trgm_idx,
29
+ using: :gin,
30
+ opclass: { title: :gin_trgm_ops }
31
+ end
32
+
33
+ reversible do |dir|
34
+ dir.up do
35
+ ActiveRecord::Base.connection.execute <<-SQL.squish
36
+ DROP FUNCTION IF EXISTS tsvector_search_documents_trigger;
37
+ CREATE FUNCTION tsvector_search_documents_trigger()
38
+ RETURNS trigger AS $$
39
+ begin
40
+ new.tsv :=
41
+ setweight(to_tsvector(new.tsv_config::regconfig,
42
+ coalesce(new.name, '')), 'A') ||
43
+ setweight(to_tsvector(new.tsv_config::regconfig,
44
+ coalesce(new.description, '')), 'B') ||
45
+ setweight(to_tsvector(new.tsv_config::regconfig,
46
+ coalesce(new.content, '')), 'C') ||
47
+ setweight(to_tsvector(new.tsv_config::regconfig,
48
+ coalesce(new.tags, '')), 'B');
49
+ return new;
50
+ end
51
+ $$ LANGUAGE plpgsql;
52
+
53
+ DROP TRIGGER IF EXISTS tsvector_search_documents_update
54
+ ON search_documents;
55
+
56
+ CREATE TRIGGER tsvector_search_documents_update
57
+ BEFORE INSERT OR UPDATE
58
+ ON search_documents FOR EACH ROW EXECUTE PROCEDURE
59
+ tsvector_search_documents_trigger();
60
+ SQL
61
+
62
+ # Index all pages
63
+ PagesCore::SearchableDocument::Indexer.index_all!(Page)
64
+ end
65
+ dir.down do
66
+ ActiveRecord::Base.connection.execute <<-SQL.squish
67
+ DROP TRIGGER IF EXISTS tsvector_search_documents_update
68
+ ON search_documents;
69
+ DROP FUNCTION IF EXISTS tsvector_search_documents_trigger;
70
+ SQL
71
+ end
72
+ end
73
+ end
74
+ end
@@ -27,7 +27,7 @@ module PagesCore
27
27
  # Enable asset precompilation
28
28
  initializer :assets do |_config|
29
29
  Rails.application.config.assets.precompile += %w[
30
- pages/admin.js
30
+ pages_core/admin-dist.js
31
31
  pages/admin.css
32
32
  pages/errors.css
33
33
  pages/favicon.gif
@@ -38,10 +38,6 @@ module PagesCore
38
38
  ]
39
39
  end
40
40
 
41
- initializer :enable_recursive_serialization do |_app|
42
- ActiveModelSerializers.config.default_includes = "**"
43
- end
44
-
45
41
  initializer :handle_exceptions do |app|
46
42
  app.config.exceptions_app = app.routes
47
43
  ActionDispatch::ExceptionWrapper.rescue_responses.merge!(
@@ -11,7 +11,7 @@ module PagesCore
11
11
  end
12
12
 
13
13
  def large?
14
- small? ? false : true
14
+ !small?
15
15
  end
16
16
  end
17
17
  end
@@ -49,7 +49,7 @@ module PagesCore
49
49
  value = false if value == :disabled
50
50
  stack = [stack] unless stack.is_a?(Enumerable)
51
51
  partial_hash = stack.reverse.inject(value) do |hash, key|
52
- Hash[key => hash]
52
+ { key => hash }
53
53
  end
54
54
  @configuration = @configuration.deep_merge(partial_hash)
55
55
  value
@@ -1,5 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module PagesCore
4
- VERSION = "3.7.0" unless PagesCore.const_defined?("VERSION")
4
+ unless PagesCore.const_defined?("VERSION")
5
+ VERSION = File.read(File.expand_path("../../VERSION", __dir__)).strip
6
+ end
5
7
  end
data/lib/pages_core.rb CHANGED
@@ -17,12 +17,11 @@ require "action_mailer"
17
17
 
18
18
  # Gems
19
19
  require "actionpack/page_caching"
20
- require "active_model_serializers"
21
20
  require "acts_as_list"
21
+ require "alba"
22
22
  require "bcrypt"
23
- require "coffee-script"
24
23
  require "country_select"
25
- require "delayed_job"
24
+ require "delayed_job_active_record"
26
25
  require "dis"
27
26
  require "dynamic_image"
28
27
  require "healthcheck"
@@ -30,6 +29,7 @@ require "localizable_model"
30
29
  require "lograge"
31
30
  require "nokogiri"
32
31
  require "json"
32
+ require "pg_search"
33
33
  require "progress_bar"
34
34
  require "rails_i18n"
35
35
  require "RedCloth"
@@ -42,8 +42,6 @@ require "will_paginate/view_helpers/action_view"
42
42
 
43
43
  # Assets
44
44
  require "font-awesome-rails"
45
- require "jquery-ui-rails"
46
- require "jquery/rails/engine"
47
45
  require "react-rails"
48
46
 
49
47
  # Pages
@@ -51,13 +51,6 @@ module PagesCore
51
51
  File.join("app/assets/stylesheets/components/base.scss")
52
52
  )
53
53
  end
54
-
55
- def create_application_js
56
- template(
57
- "application.js.erb",
58
- File.join("app/assets/javascripts/application.js")
59
- )
60
- end
61
54
  end
62
55
  end
63
56
  end
@@ -12,7 +12,7 @@ PagesCore::Templates.configure do |config|
12
12
  "Headline",
13
13
  size: :field,
14
14
  description: "The main statement, usually largest and boldest, " \
15
- "describing the main story."
15
+ "describing the main story."
16
16
  )
17
17
  block.excerpt(
18
18
  "Standfirst",
@@ -22,7 +22,7 @@ PagesCore::Templates.configure do |config|
22
22
  block.boxout(
23
23
  "Boxout",
24
24
  description: "Part of the page, usually background info or facts " \
25
- "related to the article."
25
+ "related to the article."
26
26
  )
27
27
  end
28
28
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pages_core
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.7.0
4
+ version: 3.8.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Inge Jørgensen
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-02-10 00:00:00.000000000 Z
11
+ date: 2021-11-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: capybara
@@ -136,20 +136,34 @@ dependencies:
136
136
  - - "~>"
137
137
  - !ruby/object:Gem::Version
138
138
  version: 0.8.0
139
+ - !ruby/object:Gem::Dependency
140
+ name: semantic
141
+ requirement: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - ">="
144
+ - !ruby/object:Gem::Version
145
+ version: '0'
146
+ type: :development
147
+ prerelease: false
148
+ version_requirements: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - ">="
151
+ - !ruby/object:Gem::Version
152
+ version: '0'
139
153
  - !ruby/object:Gem::Dependency
140
154
  name: rails
141
155
  requirement: !ruby/object:Gem::Requirement
142
156
  requirements:
143
157
  - - ">="
144
158
  - !ruby/object:Gem::Version
145
- version: '5.0'
159
+ version: '6.0'
146
160
  type: :runtime
147
161
  prerelease: false
148
162
  version_requirements: !ruby/object:Gem::Requirement
149
163
  requirements:
150
164
  - - ">="
151
165
  - !ruby/object:Gem::Version
152
- version: '5.0'
166
+ version: '6.0'
153
167
  - !ruby/object:Gem::Dependency
154
168
  name: actionpack-page_caching
155
169
  requirement: !ruby/object:Gem::Requirement
@@ -165,19 +179,19 @@ dependencies:
165
179
  - !ruby/object:Gem::Version
166
180
  version: 1.1.0
167
181
  - !ruby/object:Gem::Dependency
168
- name: active_model_serializers
182
+ name: alba
169
183
  requirement: !ruby/object:Gem::Requirement
170
184
  requirements:
171
185
  - - "~>"
172
186
  - !ruby/object:Gem::Version
173
- version: 0.10.12
187
+ version: 1.3.0
174
188
  type: :runtime
175
189
  prerelease: false
176
190
  version_requirements: !ruby/object:Gem::Requirement
177
191
  requirements:
178
192
  - - "~>"
179
193
  - !ruby/object:Gem::Version
180
- version: 0.10.12
194
+ version: 1.3.0
181
195
  - !ruby/object:Gem::Dependency
182
196
  name: bcrypt
183
197
  requirement: !ruby/object:Gem::Requirement
@@ -224,14 +238,14 @@ dependencies:
224
238
  name: dynamic_image
225
239
  requirement: !ruby/object:Gem::Requirement
226
240
  requirements:
227
- - - "~>"
241
+ - - ">="
228
242
  - !ruby/object:Gem::Version
229
243
  version: '2.0'
230
244
  type: :runtime
231
245
  prerelease: false
232
246
  version_requirements: !ruby/object:Gem::Requirement
233
247
  requirements:
234
- - - "~>"
248
+ - - ">="
235
249
  - !ruby/object:Gem::Version
236
250
  version: '2.0'
237
251
  - !ruby/object:Gem::Dependency
@@ -262,6 +276,20 @@ dependencies:
262
276
  - - ">="
263
277
  - !ruby/object:Gem::Version
264
278
  version: '0'
279
+ - !ruby/object:Gem::Dependency
280
+ name: pg_search
281
+ requirement: !ruby/object:Gem::Requirement
282
+ requirements:
283
+ - - ">="
284
+ - !ruby/object:Gem::Version
285
+ version: '0'
286
+ type: :runtime
287
+ prerelease: false
288
+ version_requirements: !ruby/object:Gem::Requirement
289
+ requirements:
290
+ - - ">="
291
+ - !ruby/object:Gem::Version
292
+ version: '0'
265
293
  - !ruby/object:Gem::Dependency
266
294
  name: progress_bar
267
295
  requirement: !ruby/object:Gem::Requirement
@@ -322,16 +350,16 @@ dependencies:
322
350
  name: will_paginate
323
351
  requirement: !ruby/object:Gem::Requirement
324
352
  requirements:
325
- - - "~>"
353
+ - - ">="
326
354
  - !ruby/object:Gem::Version
327
- version: 3.1.0
355
+ version: '0'
328
356
  type: :runtime
329
357
  prerelease: false
330
358
  version_requirements: !ruby/object:Gem::Requirement
331
359
  requirements:
332
- - - "~>"
360
+ - - ">="
333
361
  - !ruby/object:Gem::Version
334
- version: 3.1.0
362
+ version: '0'
335
363
  - !ruby/object:Gem::Dependency
336
364
  name: rails-i18n
337
365
  requirement: !ruby/object:Gem::Requirement
@@ -346,20 +374,6 @@ dependencies:
346
374
  - - ">="
347
375
  - !ruby/object:Gem::Version
348
376
  version: 5.0.0
349
- - !ruby/object:Gem::Dependency
350
- name: coffee-rails
351
- requirement: !ruby/object:Gem::Requirement
352
- requirements:
353
- - - "~>"
354
- - !ruby/object:Gem::Version
355
- version: '4.2'
356
- type: :runtime
357
- prerelease: false
358
- version_requirements: !ruby/object:Gem::Requirement
359
- requirements:
360
- - - "~>"
361
- - !ruby/object:Gem::Version
362
- version: '4.2'
363
377
  - !ruby/object:Gem::Dependency
364
378
  name: jbuilder
365
379
  requirement: !ruby/object:Gem::Requirement
@@ -374,20 +388,6 @@ dependencies:
374
388
  - - "~>"
375
389
  - !ruby/object:Gem::Version
376
390
  version: '2.5'
377
- - !ruby/object:Gem::Dependency
378
- name: jquery-rails
379
- requirement: !ruby/object:Gem::Requirement
380
- requirements:
381
- - - ">="
382
- - !ruby/object:Gem::Version
383
- version: '0'
384
- type: :runtime
385
- prerelease: false
386
- version_requirements: !ruby/object:Gem::Requirement
387
- requirements:
388
- - - ">="
389
- - !ruby/object:Gem::Version
390
- version: '0'
391
391
  - !ruby/object:Gem::Dependency
392
392
  name: sass-rails
393
393
  requirement: !ruby/object:Gem::Requirement
@@ -402,20 +402,6 @@ dependencies:
402
402
  - - ">="
403
403
  - !ruby/object:Gem::Version
404
404
  version: '5.0'
405
- - !ruby/object:Gem::Dependency
406
- name: uglifier
407
- requirement: !ruby/object:Gem::Requirement
408
- requirements:
409
- - - ">="
410
- - !ruby/object:Gem::Version
411
- version: 1.3.0
412
- type: :runtime
413
- prerelease: false
414
- version_requirements: !ruby/object:Gem::Requirement
415
- requirements:
416
- - - ">="
417
- - !ruby/object:Gem::Version
418
- version: 1.3.0
419
405
  - !ruby/object:Gem::Dependency
420
406
  name: font-awesome-rails
421
407
  requirement: !ruby/object:Gem::Requirement
@@ -430,20 +416,6 @@ dependencies:
430
416
  - - "~>"
431
417
  - !ruby/object:Gem::Version
432
418
  version: '4.7'
433
- - !ruby/object:Gem::Dependency
434
- name: jquery-ui-rails
435
- requirement: !ruby/object:Gem::Requirement
436
- requirements:
437
- - - "~>"
438
- - !ruby/object:Gem::Version
439
- version: 6.0.0
440
- type: :runtime
441
- prerelease: false
442
- version_requirements: !ruby/object:Gem::Requirement
443
- requirements:
444
- - - "~>"
445
- - !ruby/object:Gem::Version
446
- version: 6.0.0
447
419
  - !ruby/object:Gem::Dependency
448
420
  name: react-rails
449
421
  requirement: !ruby/object:Gem::Requirement
@@ -537,6 +509,7 @@ extra_rdoc_files: []
537
509
  files:
538
510
  - README.md
539
511
  - Rakefile
512
+ - app/assets/builds/pages_core/admin-dist.js
540
513
  - app/assets/images/pages/admin/drag-icon.png
541
514
  - app/assets/images/pages/admin/icon.png
542
515
  - app/assets/images/pages/admin/image-editor-bg.png
@@ -549,38 +522,6 @@ files:
549
522
  - app/assets/images/pages/admin/warning-icon.gif
550
523
  - app/assets/images/pages/favicon.gif
551
524
  - app/assets/images/pages/feed-icon-14x14.png
552
- - app/assets/javascripts/pages/admin.jsx
553
- - app/assets/javascripts/pages/admin/components.jsx
554
- - app/assets/javascripts/pages/admin/components/attachment.jsx
555
- - app/assets/javascripts/pages/admin/components/attachment_editor.jsx
556
- - app/assets/javascripts/pages/admin/components/attachments.jsx
557
- - app/assets/javascripts/pages/admin/components/date_range_select.jsx
558
- - app/assets/javascripts/pages/admin/components/drag_uploader.jsx
559
- - app/assets/javascripts/pages/admin/components/editable_image.jsx
560
- - app/assets/javascripts/pages/admin/components/file_upload_button.jsx
561
- - app/assets/javascripts/pages/admin/components/focal_point.jsx
562
- - app/assets/javascripts/pages/admin/components/grid_image.jsx
563
- - app/assets/javascripts/pages/admin/components/image_editor.jsx
564
- - app/assets/javascripts/pages/admin/components/image_grid.jsx
565
- - app/assets/javascripts/pages/admin/components/image_uploader.jsx
566
- - app/assets/javascripts/pages/admin/components/modal.jsx
567
- - app/assets/javascripts/pages/admin/components/modal_store.jsx
568
- - app/assets/javascripts/pages/admin/components/page_dates.jsx
569
- - app/assets/javascripts/pages/admin/components/page_files.jsx
570
- - app/assets/javascripts/pages/admin/components/page_images.jsx
571
- - app/assets/javascripts/pages/admin/components/page_tree.jsx
572
- - app/assets/javascripts/pages/admin/components/page_tree_node.jsx
573
- - app/assets/javascripts/pages/admin/components/page_tree_store.jsx
574
- - app/assets/javascripts/pages/admin/components/rich_text_area.jsx
575
- - app/assets/javascripts/pages/admin/components/rich_text_toolbar.jsx
576
- - app/assets/javascripts/pages/admin/components/toast.jsx
577
- - app/assets/javascripts/pages/admin/components/toast_store.jsx
578
- - app/assets/javascripts/pages/admin/features/content_tabs.jsx
579
- - app/assets/javascripts/pages/admin/features/edit_page.jsx
580
- - app/assets/javascripts/pages/admin/features/rich_text.jsx
581
- - app/assets/javascripts/pages/admin/features/tag_editor.jsx
582
- - app/assets/javascripts/pages/admin/lib/tree.jsx
583
- - app/assets/javascripts/pages/login_form.jsx
584
525
  - app/assets/stylesheets/pages/admin.scss
585
526
  - app/assets/stylesheets/pages/admin/components/archive.scss
586
527
  - app/assets/stylesheets/pages/admin/components/attachments.scss
@@ -598,6 +539,7 @@ files:
598
539
  - app/assets/stylesheets/pages/admin/components/page_tree.scss
599
540
  - app/assets/stylesheets/pages/admin/components/pagination.scss
600
541
  - app/assets/stylesheets/pages/admin/components/sidebar.scss
542
+ - app/assets/stylesheets/pages/admin/components/tabs.scss
601
543
  - app/assets/stylesheets/pages/admin/components/tag_editor.scss
602
544
  - app/assets/stylesheets/pages/admin/components/textarea.scss
603
545
  - app/assets/stylesheets/pages/admin/components/toast.scss
@@ -670,6 +612,60 @@ files:
670
612
  - app/helpers/pages_core/meta_tags_helper.rb
671
613
  - app/helpers/pages_core/open_graph_tags_helper.rb
672
614
  - app/helpers/pages_core/page_path_helper.rb
615
+ - app/javascript/admin-dist.js
616
+ - app/javascript/components.js
617
+ - app/javascript/components/Attachments.jsx
618
+ - app/javascript/components/Attachments/Attachment.jsx
619
+ - app/javascript/components/Attachments/AttachmentEditor.jsx
620
+ - app/javascript/components/Attachments/Placeholder.jsx
621
+ - app/javascript/components/DateRangeSelect.jsx
622
+ - app/javascript/components/EditableImage.jsx
623
+ - app/javascript/components/FileUploadButton.jsx
624
+ - app/javascript/components/ImageCropper.jsx
625
+ - app/javascript/components/ImageCropper/FocalPoint.jsx
626
+ - app/javascript/components/ImageCropper/Image.jsx
627
+ - app/javascript/components/ImageCropper/Toolbar.jsx
628
+ - app/javascript/components/ImageCropper/useCrop.js
629
+ - app/javascript/components/ImageEditor.jsx
630
+ - app/javascript/components/ImageEditor/Form.jsx
631
+ - app/javascript/components/ImageGrid.jsx
632
+ - app/javascript/components/ImageGrid/DragElement.jsx
633
+ - app/javascript/components/ImageGrid/FilePlaceholder.jsx
634
+ - app/javascript/components/ImageGrid/GridImage.jsx
635
+ - app/javascript/components/ImageGrid/Placeholder.jsx
636
+ - app/javascript/components/ImageUploader.jsx
637
+ - app/javascript/components/Modal.jsx
638
+ - app/javascript/components/PageDates.jsx
639
+ - app/javascript/components/PageFiles.jsx
640
+ - app/javascript/components/PageImages.jsx
641
+ - app/javascript/components/PageTree.jsx
642
+ - app/javascript/components/PageTreeDraggable.jsx
643
+ - app/javascript/components/PageTreeNode.jsx
644
+ - app/javascript/components/RichTextArea.jsx
645
+ - app/javascript/components/RichTextToolbarButton.jsx
646
+ - app/javascript/components/TagEditor.jsx
647
+ - app/javascript/components/TagEditor/AddTagForm.jsx
648
+ - app/javascript/components/TagEditor/Tag.jsx
649
+ - app/javascript/components/Toast.jsx
650
+ - app/javascript/components/drag.js
651
+ - app/javascript/components/drag/draggedOrder.js
652
+ - app/javascript/components/drag/useDragCollection.js
653
+ - app/javascript/components/drag/useDragUploader.js
654
+ - app/javascript/components/drag/useDraggable.js
655
+ - app/javascript/controllers/EditPageController.js
656
+ - app/javascript/controllers/LoginController.js
657
+ - app/javascript/controllers/MainController.js
658
+ - app/javascript/controllers/PageOptionsController.js
659
+ - app/javascript/features/RichText.jsx
660
+ - app/javascript/hooks.js
661
+ - app/javascript/index.js
662
+ - app/javascript/lib/Tree.js
663
+ - app/javascript/lib/copyToClipboard.js
664
+ - app/javascript/lib/readyHandler.js
665
+ - app/javascript/lib/request.js
666
+ - app/javascript/stores.js
667
+ - app/javascript/stores/ModalStore.jsx
668
+ - app/javascript/stores/ToastStore.jsx
673
669
  - app/jobs/pages_core/autopublish_job.rb
674
670
  - app/jobs/pages_core/sweep_cache_job.rb
675
671
  - app/mailers/admin_mailer.rb
@@ -685,10 +681,12 @@ files:
685
681
  - app/models/concerns/pages_core/page_model/localizable.rb
686
682
  - app/models/concerns/pages_core/page_model/pathable.rb
687
683
  - app/models/concerns/pages_core/page_model/redirectable.rb
684
+ - app/models/concerns/pages_core/page_model/searchable.rb
688
685
  - app/models/concerns/pages_core/page_model/sortable.rb
689
686
  - app/models/concerns/pages_core/page_model/status.rb
690
687
  - app/models/concerns/pages_core/page_model/templateable.rb
691
688
  - app/models/concerns/pages_core/page_model/tree.rb
689
+ - app/models/concerns/pages_core/searchable_document.rb
692
690
  - app/models/concerns/pages_core/sweepable.rb
693
691
  - app/models/concerns/pages_core/taggable.rb
694
692
  - app/models/image.rb
@@ -703,6 +701,7 @@ files:
703
701
  - app/models/page_path.rb
704
702
  - app/models/password_reset_token.rb
705
703
  - app/models/role.rb
704
+ - app/models/search_document.rb
706
705
  - app/models/tag.rb
707
706
  - app/models/tagging.rb
708
707
  - app/models/user.rb
@@ -712,15 +711,15 @@ files:
712
711
  - app/policies/page_policy.rb
713
712
  - app/policies/policy.rb
714
713
  - app/policies/user_policy.rb
715
- - app/serializers/admin/attachment_serializer.rb
716
- - app/serializers/admin/image_serializer.rb
717
- - app/serializers/admin/page_file_serializer.rb
718
- - app/serializers/admin/page_image_serializer.rb
719
- - app/serializers/page_export_serializer.rb
720
- - app/serializers/page_file_export_serializer.rb
721
- - app/serializers/page_image_export_serializer.rb
722
- - app/serializers/page_image_serializer.rb
723
- - app/serializers/page_serializer.rb
714
+ - app/resources/admin/attachment_resource.rb
715
+ - app/resources/admin/image_resource.rb
716
+ - app/resources/admin/page_file_resource.rb
717
+ - app/resources/admin/page_image_resource.rb
718
+ - app/resources/export/attachment_resource.rb
719
+ - app/resources/export/page_image_resource.rb
720
+ - app/resources/export/page_resource.rb
721
+ - app/resources/page_image_resource.rb
722
+ - app/resources/page_resource.rb
724
723
  - app/services/pages_core/create_user_service.rb
725
724
  - app/services/pages_core/destroy_invite_service.rb
726
725
  - app/services/pages_core/invite_service.rb
@@ -732,6 +731,7 @@ files:
732
731
  - app/views/admin/pages/_edit_images.html.erb
733
732
  - app/views/admin/pages/_edit_metadata.html.erb
734
733
  - app/views/admin/pages/_edit_options.html.erb
734
+ - app/views/admin/pages/_form.html.erb
735
735
  - app/views/admin/pages/_list_item.html.erb
736
736
  - app/views/admin/pages/deleted.html.erb
737
737
  - app/views/admin/pages/edit.html.erb
@@ -759,13 +759,17 @@ files:
759
759
  - app/views/errors/_generic_help.html.erb
760
760
  - app/views/feeds/pages.rss.builder
761
761
  - app/views/layouts/admin.html.erb
762
- - app/views/layouts/admin/_analytics.html.erb
763
762
  - app/views/layouts/admin/_header.html.erb
763
+ - app/views/layouts/admin/_page_header.html.erb
764
764
  - app/views/layouts/errors.html.erb
765
+ - app/views/pages_core/_google_analytics.html.erb
765
766
  - app/views/sitemaps/show.xml.builder
766
767
  - config/locales/en.yml
767
768
  - config/routes.rb
768
769
  - db/migrate/20111219033112_create_pages_tables.rb
770
+ - db/migrate/20180625154059_enable_search_extensions.rb
771
+ - db/migrate/20210209151400_create_search_configurations.rb
772
+ - db/migrate/20210210235200_create_search_documents.rb
769
773
  - lib/pages_core.rb
770
774
  - lib/pages_core/admin_menu_item.rb
771
775
  - lib/pages_core/archive_finder.rb
@@ -795,7 +799,6 @@ files:
795
799
  - lib/pages_core/templates/template_configuration.rb
796
800
  - lib/pages_core/version.rb
797
801
  - lib/rails/generators/pages_core/frontend/frontend_generator.rb
798
- - lib/rails/generators/pages_core/frontend/templates/application.js.erb
799
802
  - lib/rails/generators/pages_core/frontend/templates/application.scss.erb
800
803
  - lib/rails/generators/pages_core/frontend/templates/base.scss.erb
801
804
  - lib/rails/generators/pages_core/frontend/templates/breakpoints.scss.erb
@@ -826,8 +829,6 @@ files:
826
829
  - lib/tasks/pages/export.rake
827
830
  - lib/tasks/pages/page_paths.rake
828
831
  - template.rb
829
- - vendor/assets/javascripts/ReactCrop.min.js
830
- - vendor/assets/javascripts/reflux.min.js
831
832
  - vendor/assets/stylesheets/ReactCrop.css
832
833
  homepage: ''
833
834
  licenses: []
@@ -847,7 +848,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
847
848
  - !ruby/object:Gem::Version
848
849
  version: '0'
849
850
  requirements: []
850
- rubygems_version: 3.1.4
851
+ rubygems_version: 3.2.22
851
852
  signing_key:
852
853
  specification_version: 4
853
854
  summary: Pages Core