pageflow 15.7.1 → 15.8.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (137) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +103 -216
  3. data/README.md +1 -9
  4. data/Rakefile +4 -1
  5. data/admins/pageflow/entry.rb +32 -6
  6. data/admins/pageflow/user.rb +7 -0
  7. data/app/assets/javascripts/pageflow/admin/entries.js +40 -0
  8. data/app/assets/stylesheets/pageflow/admin/permalink_input.scss +65 -0
  9. data/app/assets/stylesheets/pageflow/admin.scss +1 -0
  10. data/app/assets/stylesheets/pageflow/editor/base.scss +2 -6
  11. data/app/assets/stylesheets/pageflow/editor/dialogs.scss +2 -0
  12. data/app/assets/stylesheets/pageflow/editor/drop_down_button.scss +9 -0
  13. data/app/assets/stylesheets/pageflow/editor/info_box.scss +13 -3
  14. data/app/assets/stylesheets/pageflow/mixins/buttons.scss +1 -0
  15. data/app/assets/stylesheets/pageflow/page.scss +0 -2
  16. data/app/assets/stylesheets/pageflow/themes/default/page.scss +1 -1
  17. data/app/assets/stylesheets/pageflow/ui/forms.scss +4 -1
  18. data/app/controllers/pageflow/editor/file_import_controller.rb +32 -42
  19. data/app/controllers/pageflow/entries_controller.rb +25 -1
  20. data/app/helpers/pageflow/admin/permalinks_helper.rb +15 -0
  21. data/app/helpers/pageflow/entries_helper.rb +9 -1
  22. data/app/helpers/pageflow/themings_helper.rb +1 -1
  23. data/app/inputs/pageflow_permalink_input.rb +47 -0
  24. data/app/models/concerns/pageflow/permalinkable.rb +12 -0
  25. data/app/models/concerns/pageflow/reusable_file.rb +5 -0
  26. data/app/models/concerns/pageflow/uploadable_file.rb +4 -0
  27. data/app/models/pageflow/customized_theme.rb +4 -2
  28. data/app/models/pageflow/entry.rb +5 -0
  29. data/app/models/pageflow/entry_at_revision.rb +2 -1
  30. data/app/models/pageflow/entry_duplicate.rb +7 -0
  31. data/app/models/pageflow/image_file_url_templates.rb +2 -2
  32. data/app/models/pageflow/permalink.rb +39 -0
  33. data/app/models/pageflow/permalink_directory.rb +10 -0
  34. data/app/models/pageflow/published_entry.rb +17 -0
  35. data/app/models/pageflow/revision.rb +1 -1
  36. data/app/models/pageflow/theme_customization_file.rb +6 -1
  37. data/app/models/pageflow/theming.rb +1 -0
  38. data/app/views/admin/entries/_form.html.erb +9 -1
  39. data/app/views/admin/entries/_permalink_inputs.html.erb +6 -0
  40. data/app/views/admin/entries/permalink_inputs.html.erb +7 -0
  41. data/app/views/pageflow/editor/file_import/start_import_job.json.jbuilder +10 -0
  42. data/app/views/pageflow/files/_file.json.jbuilder +1 -0
  43. data/config/initializers/mime_types.rb +1 -0
  44. data/config/routes.rb +8 -5
  45. data/db/migrate/20221024100724_create_pageflow_permalink_directories.rb +10 -0
  46. data/db/migrate/20221025074049_add_permalink_attributes_to_entries.rb +5 -0
  47. data/db/migrate/20221027065022_create_pageflow_permalinks.rb +12 -0
  48. data/entry_types/paged/app/assets/javascripts/pageflow_paged/dist/editor.js +166 -169
  49. data/entry_types/paged/app/assets/javascripts/pageflow_paged/dist/frontend.js +44 -2
  50. data/entry_types/paged/app/assets/javascripts/pageflow_paged/dist/react-client.js +5 -5
  51. data/entry_types/paged/app/assets/javascripts/pageflow_paged/dist/react-server.js +1 -1
  52. data/entry_types/paged/config/initializers/features.rb +2 -0
  53. data/entry_types/paged/config/locales/{new/help.de.yml → de.yml} +74 -65
  54. data/entry_types/paged/config/locales/{new/help.en.yml → en.yml} +66 -56
  55. data/entry_types/scrolled/app/helpers/pageflow_scrolled/favicon_helper.rb +39 -13
  56. data/entry_types/scrolled/app/helpers/pageflow_scrolled/generated_media_queries_helper.rb +55 -0
  57. data/entry_types/scrolled/app/helpers/pageflow_scrolled/themes_helper.rb +6 -2
  58. data/entry_types/scrolled/app/views/pageflow_scrolled/editor/entries/_head.html.erb +2 -0
  59. data/entry_types/scrolled/app/views/pageflow_scrolled/entries/_manifest.json.jbuilder +16 -0
  60. data/entry_types/scrolled/app/views/pageflow_scrolled/entries/show.html.erb +9 -3
  61. data/entry_types/scrolled/app/views/pageflow_scrolled/favicons/_entry.html.erb +16 -10
  62. data/entry_types/scrolled/config/locales/de.yml +265 -76
  63. data/entry_types/scrolled/config/locales/en.yml +266 -77
  64. data/entry_types/scrolled/lib/pageflow_scrolled/configuration.rb +3 -3
  65. data/entry_types/scrolled/lib/pageflow_scrolled/plugin.rb +14 -0
  66. data/entry_types/scrolled/lib/pageflow_scrolled/react_widget_type.rb +1 -1
  67. data/entry_types/scrolled/lib/pageflow_scrolled/web_app_manifest.rb +11 -0
  68. data/entry_types/scrolled/lib/pageflow_scrolled.rb +39 -1
  69. data/entry_types/scrolled/lib/tasks/pageflow_scrolled/storybook.rake +3 -2
  70. data/entry_types/scrolled/package/contentElements-editor.js +124 -38
  71. data/entry_types/scrolled/package/contentElements-frontend.css +1 -1
  72. data/entry_types/scrolled/package/contentElements-frontend.js +321 -27
  73. data/entry_types/scrolled/package/editor.js +1345 -739
  74. data/entry_types/scrolled/package/frontend/EditableInlineText.module-c6672f27.js +5314 -0
  75. data/entry_types/scrolled/package/frontend/{PhonePlatformContext-9fb97827.js → PhonePlatformContext-22e65f92.js} +40 -4
  76. data/entry_types/scrolled/package/frontend/{Viewer-e2290ea0.js → Viewer-6b05522f.js} +6 -40
  77. data/entry_types/scrolled/package/frontend/arrowRight-7e3d9dd5.js +42 -0
  78. data/entry_types/scrolled/package/frontend/{components-6ab26015.js → components-487daafa.js} +546 -361
  79. data/entry_types/scrolled/package/frontend/index.css +1 -1
  80. data/entry_types/scrolled/package/frontend/index.js +197 -3674
  81. data/entry_types/scrolled/package/package.json +3 -2
  82. data/entry_types/scrolled/package/testHelpers.js +12 -2
  83. data/entry_types/scrolled/package/widgets/defaultNavigation.css +1 -1
  84. data/entry_types/scrolled/package/widgets/defaultNavigation.js +35 -32
  85. data/entry_types/scrolled/spec/fixtures/image.ico +0 -0
  86. data/lib/pageflow/entry_type.rb +6 -2
  87. data/lib/pageflow/version.rb +1 -1
  88. data/package/editor.js +122 -149
  89. data/package/frontend.js +19 -2
  90. data/package/testHelpers.js +39 -6
  91. data/spec/factories/entries.rb +17 -0
  92. data/spec/factories/permalink_directory.rb +6 -0
  93. data/spec/factories/permalinks.rb +4 -0
  94. data/spec/factories/published_entries.rb +2 -0
  95. metadata +31 -52
  96. data/app/assets/javascripts/pageflow/dist/editor.js +0 -11890
  97. data/app/assets/javascripts/pageflow/dist/frontend.js +0 -5800
  98. data/app/assets/javascripts/pageflow/dist/react-client.js +0 -22
  99. data/app/assets/javascripts/pageflow/dist/react-server.js +0 -19
  100. data/entry_types/paged/config/locales/new/video_contain.de.yml +0 -7
  101. data/entry_types/paged/config/locales/new/video_contain.en.yml +0 -7
  102. data/entry_types/scrolled/config/locales/new/before_after_slider.de.yml +0 -8
  103. data/entry_types/scrolled/config/locales/new/before_after_slider.en.yml +0 -8
  104. data/entry_types/scrolled/config/locales/new/center_ragged.de.yml +0 -8
  105. data/entry_types/scrolled/config/locales/new/center_ragged.en.yml +0 -9
  106. data/entry_types/scrolled/config/locales/new/consent.de.yml +0 -25
  107. data/entry_types/scrolled/config/locales/new/consent.en.yml +0 -24
  108. data/entry_types/scrolled/config/locales/new/content_element_categories.de.yml +0 -39
  109. data/entry_types/scrolled/config/locales/new/content_element_categories.en.yml +0 -39
  110. data/entry_types/scrolled/config/locales/new/default_transition.de.yml +0 -14
  111. data/entry_types/scrolled/config/locales/new/default_transition.en.yml +0 -14
  112. data/entry_types/scrolled/config/locales/new/header_line_breaks.de.yml +0 -28
  113. data/entry_types/scrolled/config/locales/new/header_line_breaks.en.yml +0 -27
  114. data/entry_types/scrolled/config/locales/new/header_size.de.yml +0 -17
  115. data/entry_types/scrolled/config/locales/new/header_size.en.yml +0 -17
  116. data/entry_types/scrolled/config/locales/new/iframe_embed.de.yml +0 -39
  117. data/entry_types/scrolled/config/locales/new/iframe_embed.en.yml +0 -39
  118. data/entry_types/scrolled/config/locales/new/inline_loops.de.yml +0 -26
  119. data/entry_types/scrolled/config/locales/new/inline_loops.en.yml +0 -26
  120. data/entry_types/scrolled/config/locales/new/portrait_inline_image.de.yml +0 -9
  121. data/entry_types/scrolled/config/locales/new/portrait_inline_image.en.yml +0 -9
  122. data/entry_types/scrolled/config/locales/new/section_width.de.yml +0 -10
  123. data/entry_types/scrolled/config/locales/new/section_width.en.yml +0 -10
  124. data/entry_types/scrolled/config/locales/new/typography_variants.de.yml +0 -7
  125. data/entry_types/scrolled/config/locales/new/typography_variants.en.yml +0 -7
  126. data/entry_types/scrolled/config/locales/new/video_embed_poster.de.yml +0 -8
  127. data/entry_types/scrolled/config/locales/new/video_embed_poster.en.yml +0 -8
  128. data/entry_types/scrolled/config/locales/new/waveform_styles.de.yml +0 -11
  129. data/entry_types/scrolled/config/locales/new/waveform_styles.en.yml +0 -12
  130. data/entry_types/scrolled/config/locales/new/widgets.de.yml +0 -6
  131. data/entry_types/scrolled/config/locales/new/widgets.en.yml +0 -6
  132. data/entry_types/scrolled/lib/generators/pageflow_scrolled/install/templates/theme/favicons/browserconfig.xml +0 -9
  133. data/entry_types/scrolled/lib/generators/pageflow_scrolled/install/templates/theme/favicons/mstile-150x150.png +0 -0
  134. data/entry_types/scrolled/lib/generators/pageflow_scrolled/install/templates/theme/favicons/safari-pinned-tab.svg +0 -46
  135. data/entry_types/scrolled/lib/generators/pageflow_scrolled/install/templates/theme/favicons/site.webmanifest +0 -19
  136. data/entry_types/scrolled/package/frontend/EditableInlineText.module-b9923660.js +0 -993
  137. data/entry_types/scrolled/package/frontend/usePhonePlatform-2857c22b.js +0 -34
data/package/frontend.js CHANGED
@@ -390,7 +390,9 @@ var Consent = /*#__PURE__*/function () {
390
390
 
391
391
  return this.withState(this.vendors.filter(function (vendor) {
392
392
  return (additionalVendorNames === null || additionalVendorNames === void 0 ? void 0 : additionalVendorNames.includes(vendor.name)) || vendor.paradigm === 'opt-in' || vendor.paradigm === 'external opt-out' || vendor.paradigm === 'lazy opt-in' && _this3.persistence.read(vendor) !== 'undecided';
393
- }));
393
+ }), {
394
+ applyDefaults: true
395
+ });
394
396
  }
395
397
  }, {
396
398
  key: "require",
@@ -527,12 +529,26 @@ var Consent = /*#__PURE__*/function () {
527
529
  value: function withState(vendors) {
528
530
  var _this8 = this;
529
531
 
532
+ var _ref4 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
533
+ applyDefaults = _ref4.applyDefaults;
534
+
530
535
  return vendors.map(function (vendor) {
536
+ var state = _this8.persistence.read(vendor);
537
+
531
538
  return _objectSpread2(_objectSpread2({}, vendor), {}, {
532
- state: _this8.persistence.read(vendor)
539
+ state: state === 'undecided' && applyDefaults ? _this8.getDefaultState(vendor) : state
533
540
  });
534
541
  });
535
542
  }
543
+ }, {
544
+ key: "getDefaultState",
545
+ value: function getDefaultState(vendor) {
546
+ if (vendor.paradigm === 'external opt-out') {
547
+ return 'accepted';
548
+ }
549
+
550
+ return 'undecided';
551
+ }
536
552
  }]);
537
553
 
538
554
  return Consent;
@@ -2122,6 +2138,7 @@ var mediaEvents$1 = function mediaEvents(player, context) {
2122
2138
  currentTime: player.currentTime(),
2123
2139
  duration: player.duration(),
2124
2140
  volume: player.volume(),
2141
+ altText: player.getMediaElement().getAttribute('alt'),
2125
2142
  bitrate: 3500000
2126
2143
  });
2127
2144
  }
@@ -173,6 +173,11 @@ var ConfigurationEditorTab = Base.extend({
173
173
  return $(this).data('inputPropertyName');
174
174
  }).get();
175
175
  },
176
+ visibleInputPropertyNames: function visibleInputPropertyNames() {
177
+ return this.$el.find('.input:not(.input-hidden_via_binding)').map(function () {
178
+ return $(this).data('inputPropertyName');
179
+ }).get();
180
+ },
176
181
  inputLabels: function inputLabels() {
177
182
  return this.$el.find('.input').map(function () {
178
183
  return $(this).data('labelText');
@@ -210,6 +215,9 @@ var ConfigurationEditor = Base.extend({
210
215
  inputPropertyNames: function inputPropertyNames() {
211
216
  return ConfigurationEditorTab.find(this.$el).inputPropertyNames();
212
217
  },
218
+ visibleInputPropertyNames: function visibleInputPropertyNames() {
219
+ return ConfigurationEditorTab.find(this.$el).visibleInputPropertyNames();
220
+ },
213
221
  inputLabels: function inputLabels() {
214
222
  return ConfigurationEditorTab.find(this.$el).inputLabels();
215
223
  },
@@ -441,6 +449,22 @@ var factories = {
441
449
  });
442
450
  return this;
443
451
  },
452
+ withAudioFileType: function withAudioFileType(options) {
453
+ fileTypes.register('audio_files', _.extend({
454
+ model: VideoFile,
455
+ matchUpload: /^audio/,
456
+ topLevelType: true
457
+ }, options));
458
+ fileTypesSetupArray.push({
459
+ collectionName: 'audio_files',
460
+ typeName: 'Pageflow::AudioFile',
461
+ i18nKey: 'pageflow/audio_files',
462
+ nestedFileTypes: [{
463
+ collectionName: 'text_track_files'
464
+ }]
465
+ });
466
+ return this;
467
+ },
444
468
  withTextTrackFileType: function withTextTrackFileType(options) {
445
469
  fileTypes.register('text_track_files', _.extend({
446
470
  model: TextTrackFile,
@@ -638,7 +662,7 @@ function fakeBrowserAgent(name) {
638
662
  var state = window.pageflow || {};
639
663
 
640
664
  /**
641
- * Setup global state for testing Backbone editro components.
665
+ * Setup global state for testing Backbone editor components.
642
666
  *
643
667
  * For some editor components like (some views or models) it's easier
644
668
  * to depend on the global mutable state (available via the `$state`
@@ -658,11 +682,7 @@ var setupGlobals = function setupGlobals(mapping) {
658
682
  }
659
683
 
660
684
  globalsBackup = {};
661
-
662
- _.each(mapping, function (value, key) {
663
- globalsBackup[key] = state[key];
664
- state[key] = typeof value === 'function' ? value.call(this) : value;
665
- });
685
+ setGlobals(mapping);
666
686
  });
667
687
  afterEach(function () {
668
688
  _.each(mapping, function (_, key) {
@@ -671,6 +691,19 @@ var setupGlobals = function setupGlobals(mapping) {
671
691
 
672
692
  globalsBackup = null;
673
693
  });
694
+
695
+ function setGlobals(mapping) {
696
+ _.each(mapping, function (value, key) {
697
+ globalsBackup[key] = state[key];
698
+ state[key] = typeof value === 'function' ? value.call(this) : value;
699
+ });
700
+
701
+ return mapping;
702
+ }
703
+
704
+ return {
705
+ setGlobals: setGlobals
706
+ };
674
707
  };
675
708
 
676
709
  /**
@@ -23,6 +23,8 @@ module Pageflow
23
23
  without_feature { nil }
24
24
 
25
25
  draft_attributes { nil }
26
+
27
+ permalink_attributes { nil }
26
28
  end
27
29
 
28
30
  after(:create) do |entry, evaluator|
@@ -50,6 +52,21 @@ module Pageflow
50
52
  entry.features_configuration =
51
53
  entry.features_configuration.merge(evaluator.with_feature => true,
52
54
  evaluator.without_feature => false)
55
+
56
+ if evaluator.permalink_attributes
57
+ permalink_directory =
58
+ evaluator.permalink_attributes[:directory] ||
59
+ build(
60
+ :permalink_directory,
61
+ theming: entry.theming,
62
+ path: evaluator.permalink_attributes.fetch(:directory_path, '')
63
+ )
64
+
65
+ entry.build_permalink(
66
+ directory: permalink_directory,
67
+ slug: evaluator.permalink_attributes.fetch(:slug)
68
+ )
69
+ end
53
70
  end
54
71
 
55
72
  trait :published do
@@ -0,0 +1,6 @@
1
+ FactoryBot.define do
2
+ factory :permalink_directory, class: Pageflow::PermalinkDirectory do
3
+ theming
4
+ path { '' }
5
+ end
6
+ end
@@ -0,0 +1,4 @@
1
+ FactoryBot.define do
2
+ factory :permalink, class: Pageflow::Permalink do
3
+ end
4
+ end
@@ -7,6 +7,7 @@ module Pageflow
7
7
  theming
8
8
  type_name { 'paged' }
9
9
  revision_attributes { {} }
10
+ permalink_attributes { nil }
10
11
 
11
12
  with_feature { nil }
12
13
  without_feature { nil }
@@ -20,6 +21,7 @@ module Pageflow
20
21
  theming: theming,
21
22
  type_name: type_name,
22
23
  published_revision_attributes: revision_attributes,
24
+ permalink_attributes: permalink_attributes,
23
25
  with_feature: with_feature,
24
26
  without_feature: without_feature))
25
27
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pageflow
3
3
  version: !ruby/object:Gem::Version
4
- version: 15.7.1
4
+ version: 15.8.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Codevise Solutions Ltd
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-09-14 00:00:00.000000000 Z
11
+ date: 2022-12-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -490,14 +490,14 @@ dependencies:
490
490
  requirements:
491
491
  - - "~>"
492
492
  - !ruby/object:Gem::Version
493
- version: '1.20'
493
+ version: '1.21'
494
494
  type: :runtime
495
495
  prerelease: false
496
496
  version_requirements: !ruby/object:Gem::Requirement
497
497
  requirements:
498
498
  - - "~>"
499
499
  - !ruby/object:Gem::Version
500
- version: '1.20'
500
+ version: '1.21'
501
501
  - !ruby/object:Gem::Dependency
502
502
  name: bcrypt
503
503
  requirement: !ruby/object:Gem::Requirement
@@ -1089,10 +1089,6 @@ files:
1089
1089
  - app/assets/javascripts/pageflow/asset_urls.js.erb
1090
1090
  - app/assets/javascripts/pageflow/base.js
1091
1091
  - app/assets/javascripts/pageflow/components.js
1092
- - app/assets/javascripts/pageflow/dist/editor.js
1093
- - app/assets/javascripts/pageflow/dist/frontend.js
1094
- - app/assets/javascripts/pageflow/dist/react-client.js
1095
- - app/assets/javascripts/pageflow/dist/react-server.js
1096
1092
  - app/assets/javascripts/pageflow/dist/ui.js
1097
1093
  - app/assets/javascripts/pageflow/editor/base.js
1098
1094
  - app/assets/javascripts/pageflow/editor/vendor.js
@@ -1116,6 +1112,7 @@ files:
1116
1112
  - app/assets/stylesheets/pageflow/admin/hint.scss
1117
1113
  - app/assets/stylesheets/pageflow/admin/icon_button.scss
1118
1114
  - app/assets/stylesheets/pageflow/admin/icon_link.scss
1115
+ - app/assets/stylesheets/pageflow/admin/permalink_input.scss
1119
1116
  - app/assets/stylesheets/pageflow/admin/publication_state_indicator.scss
1120
1117
  - app/assets/stylesheets/pageflow/admin/quotas.scss
1121
1118
  - app/assets/stylesheets/pageflow/admin/status_tags.scss
@@ -1378,6 +1375,7 @@ files:
1378
1375
  - app/helpers/pageflow/admin/form_helper.rb
1379
1376
  - app/helpers/pageflow/admin/locales_helper.rb
1380
1377
  - app/helpers/pageflow/admin/memberships_helper.rb
1378
+ - app/helpers/pageflow/admin/permalinks_helper.rb
1381
1379
  - app/helpers/pageflow/admin/revisions_helper.rb
1382
1380
  - app/helpers/pageflow/admin/users_helper.rb
1383
1381
  - app/helpers/pageflow/admin/widgets_helper.rb
@@ -1417,6 +1415,7 @@ files:
1417
1415
  - app/helpers/pageflow/themings_helper.rb
1418
1416
  - app/helpers/pageflow/video_files_helper.rb
1419
1417
  - app/helpers/pageflow/widgets_helper.rb
1418
+ - app/inputs/pageflow_permalink_input.rb
1420
1419
  - app/jobs/pageflow/application_job.rb
1421
1420
  - app/jobs/pageflow/entry_export_import/upload_and_publish_file_job.rb
1422
1421
  - app/jobs/pageflow/file_import_job.rb
@@ -1431,6 +1430,7 @@ files:
1431
1430
  - app/models/concerns/pageflow/entry_publication_states.rb
1432
1431
  - app/models/concerns/pageflow/feature_target.rb
1433
1432
  - app/models/concerns/pageflow/output_source.rb
1433
+ - app/models/concerns/pageflow/permalinkable.rb
1434
1434
  - app/models/concerns/pageflow/reusable_file.rb
1435
1435
  - app/models/concerns/pageflow/serialization_blacklist.rb
1436
1436
  - app/models/concerns/pageflow/serialized_configuration.rb
@@ -1475,6 +1475,8 @@ files:
1475
1475
  - app/models/pageflow/null_user.rb
1476
1476
  - app/models/pageflow/overview_button.rb
1477
1477
  - app/models/pageflow/page.rb
1478
+ - app/models/pageflow/permalink.rb
1479
+ - app/models/pageflow/permalink_directory.rb
1478
1480
  - app/models/pageflow/positioned_file.rb
1479
1481
  - app/models/pageflow/potential_memberships.rb
1480
1482
  - app/models/pageflow/published_entry.rb
@@ -1520,7 +1522,9 @@ files:
1520
1522
  - app/views/admin/entries/_attributes_table.html.arb
1521
1523
  - app/views/admin/entries/_form.html.erb
1522
1524
  - app/views/admin/entries/_links.html.arb
1525
+ - app/views/admin/entries/_permalink_inputs.html.erb
1523
1526
  - app/views/admin/entries/entry_type_name_input.html.erb
1527
+ - app/views/admin/entries/permalink_inputs.html.erb
1524
1528
  - app/views/admin/entry_templates/_form.html.erb
1525
1529
  - app/views/admin/features/_form.html.erb
1526
1530
  - app/views/admin/memberships/_form.html.erb
@@ -1592,6 +1596,7 @@ files:
1592
1596
  - app/views/pageflow/editor/entries/show.json.jbuilder
1593
1597
  - app/views/pageflow/editor/entry_publications/_published_message.html.erb
1594
1598
  - app/views/pageflow/editor/entry_publications/check.json.jbuilder
1599
+ - app/views/pageflow/editor/file_import/start_import_job.json.jbuilder
1595
1600
  - app/views/pageflow/editor/files/_file.json.jbuilder
1596
1601
  - app/views/pageflow/editor/files/create.json.jbuilder
1597
1602
  - app/views/pageflow/editor/files/index.json.jbuilder
@@ -1652,6 +1657,7 @@ files:
1652
1657
  - config/initializers/admin_resource_tabs.rb
1653
1658
  - config/initializers/features.rb
1654
1659
  - config/initializers/help_entries.rb
1660
+ - config/initializers/mime_types.rb
1655
1661
  - config/initializers/paperclip.rb
1656
1662
  - config/initializers/revision_components.rb
1657
1663
  - config/initializers/symmetric_encryption.rb
@@ -1692,6 +1698,9 @@ files:
1692
1698
  - db/migrate/20211020085902_add_canonical_entry_url_prefix_to_themings.rb
1693
1699
  - db/migrate/20220503150010_add_peak_data_to_audio_files.rb
1694
1700
  - db/migrate/20220705084830_add_trailing_slash_in_canonical_urls_to_themings.rb
1701
+ - db/migrate/20221024100724_create_pageflow_permalink_directories.rb
1702
+ - db/migrate/20221025074049_add_permalink_attributes_to_entries.rb
1703
+ - db/migrate/20221027065022_create_pageflow_permalinks.rb
1695
1704
  - entry_types/paged/app/assets/javascripts/pageflow_paged/components.js
1696
1705
  - entry_types/paged/app/assets/javascripts/pageflow_paged/dist/editor.js
1697
1706
  - entry_types/paged/app/assets/javascripts/pageflow_paged/dist/frontend.js
@@ -1740,10 +1749,8 @@ files:
1740
1749
  - entry_types/paged/config/initializers/features.rb
1741
1750
  - entry_types/paged/config/initializers/help_entries.rb
1742
1751
  - entry_types/paged/config/initializers/page_types.rb
1743
- - entry_types/paged/config/locales/new/help.de.yml
1744
- - entry_types/paged/config/locales/new/help.en.yml
1745
- - entry_types/paged/config/locales/new/video_contain.de.yml
1746
- - entry_types/paged/config/locales/new/video_contain.en.yml
1752
+ - entry_types/paged/config/locales/de.yml
1753
+ - entry_types/paged/config/locales/en.yml
1747
1754
  - entry_types/paged/config/routes.rb
1748
1755
  - entry_types/paged/lib/pageflow_paged.rb
1749
1756
  - entry_types/paged/lib/pageflow_paged/configuration.rb
@@ -1770,6 +1777,7 @@ files:
1770
1777
  - entry_types/scrolled/app/helpers/pageflow_scrolled/editor/seed_html_helper.rb
1771
1778
  - entry_types/scrolled/app/helpers/pageflow_scrolled/entry_json_seed_helper.rb
1772
1779
  - entry_types/scrolled/app/helpers/pageflow_scrolled/favicon_helper.rb
1780
+ - entry_types/scrolled/app/helpers/pageflow_scrolled/generated_media_queries_helper.rb
1773
1781
  - entry_types/scrolled/app/helpers/pageflow_scrolled/i18n_helper.rb
1774
1782
  - entry_types/scrolled/app/helpers/pageflow_scrolled/packs_helper.rb
1775
1783
  - entry_types/scrolled/app/helpers/pageflow_scrolled/react_server_side_rendering_helper.rb
@@ -1786,6 +1794,7 @@ files:
1786
1794
  - entry_types/scrolled/app/views/pageflow_scrolled/editor/entries/_head.html.erb
1787
1795
  - entry_types/scrolled/app/views/pageflow_scrolled/editor/entries/_seed.json.jbuilder
1788
1796
  - entry_types/scrolled/app/views/pageflow_scrolled/entries/_global_notices.html.erb
1797
+ - entry_types/scrolled/app/views/pageflow_scrolled/entries/_manifest.json.jbuilder
1789
1798
  - entry_types/scrolled/app/views/pageflow_scrolled/entries/show.html.erb
1790
1799
  - entry_types/scrolled/app/views/pageflow_scrolled/entry_json_seed/_entry.json.jbuilder
1791
1800
  - entry_types/scrolled/app/views/pageflow_scrolled/entry_json_seed/_theme.json.jbuilder
@@ -1795,48 +1804,14 @@ files:
1795
1804
  - entry_types/scrolled/config/initializers/help_entries.rb
1796
1805
  - entry_types/scrolled/config/locales/de.yml
1797
1806
  - entry_types/scrolled/config/locales/en.yml
1798
- - entry_types/scrolled/config/locales/new/before_after_slider.de.yml
1799
- - entry_types/scrolled/config/locales/new/before_after_slider.en.yml
1800
- - entry_types/scrolled/config/locales/new/center_ragged.de.yml
1801
- - entry_types/scrolled/config/locales/new/center_ragged.en.yml
1802
- - entry_types/scrolled/config/locales/new/consent.de.yml
1803
- - entry_types/scrolled/config/locales/new/consent.en.yml
1804
- - entry_types/scrolled/config/locales/new/content_element_categories.de.yml
1805
- - entry_types/scrolled/config/locales/new/content_element_categories.en.yml
1806
- - entry_types/scrolled/config/locales/new/default_transition.de.yml
1807
- - entry_types/scrolled/config/locales/new/default_transition.en.yml
1808
- - entry_types/scrolled/config/locales/new/header_line_breaks.de.yml
1809
- - entry_types/scrolled/config/locales/new/header_line_breaks.en.yml
1810
- - entry_types/scrolled/config/locales/new/header_size.de.yml
1811
- - entry_types/scrolled/config/locales/new/header_size.en.yml
1812
- - entry_types/scrolled/config/locales/new/iframe_embed.de.yml
1813
- - entry_types/scrolled/config/locales/new/iframe_embed.en.yml
1814
- - entry_types/scrolled/config/locales/new/inline_loops.de.yml
1815
- - entry_types/scrolled/config/locales/new/inline_loops.en.yml
1816
- - entry_types/scrolled/config/locales/new/portrait_inline_image.de.yml
1817
- - entry_types/scrolled/config/locales/new/portrait_inline_image.en.yml
1818
- - entry_types/scrolled/config/locales/new/section_width.de.yml
1819
- - entry_types/scrolled/config/locales/new/section_width.en.yml
1820
- - entry_types/scrolled/config/locales/new/typography_variants.de.yml
1821
- - entry_types/scrolled/config/locales/new/typography_variants.en.yml
1822
- - entry_types/scrolled/config/locales/new/video_embed_poster.de.yml
1823
- - entry_types/scrolled/config/locales/new/video_embed_poster.en.yml
1824
- - entry_types/scrolled/config/locales/new/waveform_styles.de.yml
1825
- - entry_types/scrolled/config/locales/new/waveform_styles.en.yml
1826
- - entry_types/scrolled/config/locales/new/widgets.de.yml
1827
- - entry_types/scrolled/config/locales/new/widgets.en.yml
1828
1807
  - entry_types/scrolled/config/routes.rb
1829
1808
  - entry_types/scrolled/lib/generators/pageflow_scrolled/install/install_generator.rb
1830
1809
  - entry_types/scrolled/lib/generators/pageflow_scrolled/install/templates/theme/favicons/android-chrome-192x192.png
1831
1810
  - entry_types/scrolled/lib/generators/pageflow_scrolled/install/templates/theme/favicons/android-chrome-512x512.png
1832
1811
  - entry_types/scrolled/lib/generators/pageflow_scrolled/install/templates/theme/favicons/apple-touch-icon.png
1833
- - entry_types/scrolled/lib/generators/pageflow_scrolled/install/templates/theme/favicons/browserconfig.xml
1834
1812
  - entry_types/scrolled/lib/generators/pageflow_scrolled/install/templates/theme/favicons/favicon-16x16.png
1835
1813
  - entry_types/scrolled/lib/generators/pageflow_scrolled/install/templates/theme/favicons/favicon-32x32.png
1836
1814
  - entry_types/scrolled/lib/generators/pageflow_scrolled/install/templates/theme/favicons/favicon.ico
1837
- - entry_types/scrolled/lib/generators/pageflow_scrolled/install/templates/theme/favicons/mstile-150x150.png
1838
- - entry_types/scrolled/lib/generators/pageflow_scrolled/install/templates/theme/favicons/safari-pinned-tab.svg
1839
- - entry_types/scrolled/lib/generators/pageflow_scrolled/install/templates/theme/favicons/site.webmanifest
1840
1815
  - entry_types/scrolled/lib/generators/pageflow_scrolled/install/templates/theme/logoDesktop.svg
1841
1816
  - entry_types/scrolled/lib/generators/pageflow_scrolled/install/templates/theme/logoMobile.svg
1842
1817
  - entry_types/scrolled/lib/generators/pageflow_scrolled/install/templates/theme/unmute.mp3
@@ -1849,6 +1824,7 @@ files:
1849
1824
  - entry_types/scrolled/lib/pageflow_scrolled/plugin.rb
1850
1825
  - entry_types/scrolled/lib/pageflow_scrolled/react_widget_type.rb
1851
1826
  - entry_types/scrolled/lib/pageflow_scrolled/seeds.rb
1827
+ - entry_types/scrolled/lib/pageflow_scrolled/web_app_manifest.rb
1852
1828
  - entry_types/scrolled/lib/tasks/pageflow_scrolled/create_bundle_symlinks_for_yarn.rake
1853
1829
  - entry_types/scrolled/lib/tasks/pageflow_scrolled/dummy.rake
1854
1830
  - entry_types/scrolled/lib/tasks/pageflow_scrolled/storybook.rake
@@ -1858,15 +1834,15 @@ files:
1858
1834
  - entry_types/scrolled/package/contentElements-frontend.js
1859
1835
  - entry_types/scrolled/package/editor.js
1860
1836
  - entry_types/scrolled/package/frontend-server.js
1861
- - entry_types/scrolled/package/frontend/EditableInlineText.module-b9923660.js
1862
- - entry_types/scrolled/package/frontend/PhonePlatformContext-9fb97827.js
1863
- - entry_types/scrolled/package/frontend/Viewer-e2290ea0.js
1837
+ - entry_types/scrolled/package/frontend/EditableInlineText.module-c6672f27.js
1838
+ - entry_types/scrolled/package/frontend/PhonePlatformContext-22e65f92.js
1839
+ - entry_types/scrolled/package/frontend/Viewer-6b05522f.js
1864
1840
  - entry_types/scrolled/package/frontend/Wavesurfer-7d9cf1b7.js
1865
- - entry_types/scrolled/package/frontend/components-6ab26015.js
1841
+ - entry_types/scrolled/package/frontend/arrowRight-7e3d9dd5.js
1842
+ - entry_types/scrolled/package/frontend/components-487daafa.js
1866
1843
  - entry_types/scrolled/package/frontend/createSuper-d0f30da3.js
1867
1844
  - entry_types/scrolled/package/frontend/index.css
1868
1845
  - entry_types/scrolled/package/frontend/index.js
1869
- - entry_types/scrolled/package/frontend/usePhonePlatform-2857c22b.js
1870
1846
  - entry_types/scrolled/package/package.json
1871
1847
  - entry_types/scrolled/package/testHelpers.js
1872
1848
  - entry_types/scrolled/package/values/breakpoints.module.css
@@ -1878,6 +1854,7 @@ files:
1878
1854
  - entry_types/scrolled/spec/factories/sections.rb
1879
1855
  - entry_types/scrolled/spec/factories/storylines.rb
1880
1856
  - entry_types/scrolled/spec/fixtures/audio.m4a
1857
+ - entry_types/scrolled/spec/fixtures/image.ico
1881
1858
  - entry_types/scrolled/spec/fixtures/image.jpg
1882
1859
  - entry_types/scrolled/spec/fixtures/image.svg
1883
1860
  - entry_types/scrolled/spec/fixtures/video.mp4
@@ -2020,6 +1997,8 @@ files:
2020
1997
  - spec/factories/invited_user.rb
2021
1998
  - spec/factories/memberships.rb
2022
1999
  - spec/factories/pages.rb
2000
+ - spec/factories/permalink_directory.rb
2001
+ - spec/factories/permalinks.rb
2023
2002
  - spec/factories/published_entries.rb
2024
2003
  - spec/factories/revisions.rb
2025
2004
  - spec/factories/storylines.rb
@@ -2074,7 +2053,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
2074
2053
  - !ruby/object:Gem::Version
2075
2054
  version: '0'
2076
2055
  requirements: []
2077
- rubygems_version: 3.0.3
2056
+ rubygems_version: 3.0.8
2078
2057
  signing_key:
2079
2058
  specification_version: 4
2080
2059
  summary: Multimedia story telling for the web.