pageflow 16.0.0 → 16.2.0
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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +86 -33
- data/README.md +6 -6
- data/Rakefile +1 -1
- data/admins/pageflow/entry.rb +0 -1
- data/admins/pageflow/sites.rb +3 -0
- data/app/assets/images/pageflow/admin/icons/published_with_noindex.svg +4 -0
- data/app/assets/javascripts/pageflow/dist/ui.js +299 -72
- data/app/assets/stylesheets/pageflow/admin/active_admin_patches.scss +1 -1
- data/app/assets/stylesheets/pageflow/admin/entries.scss +4 -0
- data/app/assets/stylesheets/pageflow/admin/permalink_input.scss +10 -0
- data/app/assets/stylesheets/pageflow/admin/publication_state_indicator.scss +4 -0
- data/app/assets/stylesheets/pageflow/editor/base.scss +0 -1
- data/app/assets/stylesheets/pageflow/editor/drop_down_button.scss +61 -7
- data/app/assets/stylesheets/pageflow/editor/file_meta_data.scss +12 -1
- data/app/assets/stylesheets/pageflow/editor/file_thumbnails.scss +4 -0
- data/app/assets/stylesheets/pageflow/editor/help.scss +3 -3
- data/app/assets/stylesheets/pageflow/editor/info_box.scss +7 -0
- data/app/assets/stylesheets/pageflow/editor/inputs/file_input.scss +0 -5
- data/app/assets/stylesheets/pageflow/ui/forms.scss +4 -4
- data/app/assets/stylesheets/pageflow/{editor/wysihtml5.scss → ui/input/text_area_input.scss} +13 -1
- data/app/assets/stylesheets/pageflow/ui.scss +1 -0
- data/app/controllers/pageflow/chapters_controller.rb +2 -2
- data/app/controllers/pageflow/editor/entry_publications_controller.rb +5 -1
- data/app/controllers/pageflow/editor/file_import_controller.rb +1 -1
- data/app/controllers/pageflow/editor/files_controller.rb +1 -1
- data/app/controllers/pageflow/entries_controller.rb +12 -2
- data/app/controllers/pageflow/feeds_controller.rb +18 -0
- data/app/controllers/pageflow/pages_controller.rb +2 -2
- data/app/controllers/pageflow/sitemaps_controller.rb +15 -0
- data/app/controllers/pageflow/storylines_controller.rb +2 -2
- data/app/helpers/pageflow/entries_helper.rb +4 -1
- data/app/helpers/pageflow/feeds_helper.rb +66 -0
- data/app/helpers/pageflow/meta_tags_helper.rb +2 -1
- data/app/helpers/pageflow/page_types_helper.rb +10 -10
- data/app/helpers/pageflow/revision_file_helper.rb +3 -3
- data/app/helpers/pageflow/social_share_helper.rb +2 -2
- data/app/inputs/pageflow_permalink_input.rb +15 -3
- data/app/models/concerns/pageflow/entry_publication_states.rb +9 -0
- data/app/models/concerns/pageflow/reusable_file.rb +3 -3
- data/app/models/concerns/pageflow/uploadable_file.rb +5 -0
- data/app/models/pageflow/account.rb +8 -0
- data/app/models/pageflow/audio_file_url_templates.rb +2 -1
- data/app/models/pageflow/draft_entry.rb +1 -1
- data/app/models/pageflow/entries_feed.rb +32 -0
- data/app/models/pageflow/entry.rb +7 -5
- data/app/models/pageflow/entry_at_revision.rb +2 -0
- data/app/models/pageflow/image_file.rb +34 -8
- data/app/models/pageflow/image_file_url_templates.rb +7 -1
- data/app/models/pageflow/membership.rb +3 -2
- data/app/models/pageflow/other_file.rb +5 -0
- data/app/models/pageflow/other_file_url_templates.rb +16 -0
- data/app/models/pageflow/published_entry.rb +6 -0
- data/app/models/pageflow/revision.rb +6 -0
- data/app/models/pageflow/site.rb +8 -0
- data/app/models/pageflow/sitemaps.rb +14 -0
- data/app/models/pageflow/used_file.rb +10 -2
- data/app/models/pageflow/video_file_url_templates.rb +3 -1
- data/app/models/pageflow/widget.rb +9 -1
- data/app/views/admin/entries/_permalink_inputs.html.erb +1 -2
- data/app/views/admin/sites/_attributes_table.html.arb +3 -0
- data/app/views/admin/sites/_fields.html.erb +6 -0
- data/app/views/components/pageflow/admin/extensible_attributes_table.rb +2 -2
- data/app/views/components/pageflow/admin/revisions_tab.rb +8 -0
- data/app/views/components/pageflow/admin/sites_tab.rb +3 -0
- data/app/views/pageflow/editor/config/_seeds.json.jbuilder +2 -0
- data/app/views/pageflow/editor/entries/_entry.json.jbuilder +1 -0
- data/app/views/pageflow/editor/entry_publications/check.json.jbuilder +1 -0
- data/app/views/pageflow/feeds/index.atom.builder +20 -0
- data/app/views/pageflow/image_files/_image_file.json.jbuilder +1 -0
- data/app/views/pageflow/meta_tags/_entry.html.erb +1 -0
- data/app/views/pageflow/sitemaps/index.xml.builder +9 -0
- data/config/initializers/features.rb +3 -0
- data/config/initializers/paperclip.rb +8 -0
- data/config/locales/de.yml +77 -6
- data/config/locales/en.yml +79 -4
- data/config/routes.rb +3 -0
- data/config/spring.rb +1 -1
- data/db/migrate/20230120092923_create_other_files.rb +23 -0
- data/db/migrate/20230323115745_add_feeds_enabled_to_sites.rb +5 -0
- data/db/migrate/20230323154323_add_sitemap_enabled_to_sites.rb +5 -0
- data/db/migrate/20230331103823_add_title_to_sites.rb +5 -0
- data/db/migrate/20230405103612_add_custom_feed_url_to_sites.rb +5 -0
- data/db/migrate/20231024062501_add_output_presences_to_image_files.rb +5 -0
- data/db/migrate/20231128124523_add_noindex_to_revisions.rb +5 -0
- data/entry_types/paged/app/assets/javascripts/pageflow_paged/dist/editor.js +710 -259
- data/entry_types/paged/app/assets/javascripts/pageflow_paged/dist/frontend.js +34 -5
- data/entry_types/paged/app/assets/javascripts/pageflow_paged/dist/react-client.js +1 -1
- data/entry_types/paged/app/assets/javascripts/pageflow_paged/dist/react-server.js +1 -1
- data/entry_types/paged/app/controllers/pageflow_paged/editor/entries_controller.rb +0 -2
- data/entry_types/paged/app/controllers/pageflow_paged/entries_controller.rb +2 -1
- data/entry_types/paged/app/views/pageflow_paged/entries/show.html.erb +1 -0
- data/entry_types/paged/config/initializers/features.rb +0 -1
- data/entry_types/paged/lib/pageflow_paged/engine.rb +13 -1
- data/entry_types/scrolled/app/controllers/pageflow_scrolled/editor/chapters_controller.rb +2 -2
- data/entry_types/scrolled/app/controllers/pageflow_scrolled/editor/content_elements_controller.rb +3 -4
- data/entry_types/scrolled/app/controllers/pageflow_scrolled/editor/sections_controller.rb +13 -6
- data/entry_types/scrolled/app/controllers/pageflow_scrolled/entries_controller.rb +11 -3
- data/entry_types/scrolled/app/helpers/pageflow_scrolled/cache_helper.rb +11 -0
- data/entry_types/scrolled/app/helpers/pageflow_scrolled/editor/entry_json_seed_helper.rb +42 -0
- data/entry_types/scrolled/app/helpers/pageflow_scrolled/editor/seed_html_helper.rb +8 -5
- data/entry_types/scrolled/app/helpers/pageflow_scrolled/packs_helper.rb +17 -12
- data/entry_types/scrolled/app/helpers/pageflow_scrolled/react_server_side_rendering_helper.rb +9 -1
- data/entry_types/scrolled/app/helpers/pageflow_scrolled/themes_helper.rb +1 -1
- data/entry_types/scrolled/app/models/pageflow_scrolled/chapter.rb +23 -0
- data/entry_types/scrolled/app/views/pageflow_scrolled/editor/entries/_head.html.erb +1 -1
- data/entry_types/scrolled/app/views/pageflow_scrolled/editor/entries/_seed.json.jbuilder +1 -5
- data/entry_types/scrolled/app/views/pageflow_scrolled/editor/sections/_section_with_content_elements.json.jbuilder +10 -0
- data/entry_types/scrolled/app/views/pageflow_scrolled/entries/show.html.erb +44 -41
- data/entry_types/scrolled/app/views/pageflow_scrolled/entry_json_seed/_consent_vendors.json.jbuilder +16 -0
- data/entry_types/scrolled/app/views/pageflow_scrolled/entry_json_seed/_entry.json.jbuilder +7 -0
- data/entry_types/scrolled/config/initializers/features.rb +5 -0
- data/entry_types/scrolled/config/locales/consent_widget.de.yml +4 -0
- data/entry_types/scrolled/config/locales/consent_widget.en.yml +4 -0
- data/entry_types/scrolled/config/locales/de.yml +225 -8
- data/entry_types/scrolled/config/locales/en.yml +239 -2
- data/entry_types/scrolled/config/routes.rb +4 -0
- data/entry_types/scrolled/lib/generators/pageflow_scrolled/install/install_generator.rb +69 -44
- data/entry_types/scrolled/lib/pageflow_scrolled/additional_packs.rb +2 -1
- data/entry_types/scrolled/lib/pageflow_scrolled/additional_seed_data.rb +1 -1
- data/entry_types/scrolled/lib/pageflow_scrolled/configuration.rb +96 -0
- data/entry_types/scrolled/lib/pageflow_scrolled/content_element_consent_vendors.rb +38 -0
- data/entry_types/scrolled/lib/pageflow_scrolled/engine.rb +13 -1
- data/entry_types/scrolled/lib/pageflow_scrolled/plugin.rb +30 -0
- data/entry_types/scrolled/lib/pageflow_scrolled/react_widget_type.rb +6 -1
- data/entry_types/scrolled/lib/pageflow_scrolled/web_app_manifest.rb +1 -1
- data/entry_types/scrolled/lib/tasks/pageflow_scrolled/dummy.rake +1 -1
- data/entry_types/scrolled/lib/tasks/pageflow_scrolled/storybook.rake +1 -2
- data/entry_types/scrolled/package/config/webpack.js +26 -0
- data/entry_types/scrolled/package/contentElements-editor.js +330 -32
- data/entry_types/scrolled/package/contentElements-frontend.css +1 -1
- data/entry_types/scrolled/package/contentElements-frontend.js +920 -145
- data/entry_types/scrolled/package/editor.js +819 -239
- data/entry_types/scrolled/package/frontend/{EditableInlineText.module-14c7b097.js → EditableInlineText.module-6ee0e024.js} +1975 -1792
- data/entry_types/scrolled/package/frontend/PhonePlatformContext-b28d991a.js +32 -0
- data/entry_types/scrolled/package/frontend/ToggleFullscreenCornerButton-8242f213.js +107 -0
- data/entry_types/scrolled/package/frontend/Viewer-32cd1ac1.js +154 -0
- data/entry_types/scrolled/package/frontend/{Viewer-b6becc57.js → Viewer-6e4d14ed.js} +32 -161
- data/entry_types/scrolled/package/frontend/arrowRight-e42e6011.js +77 -0
- data/entry_types/scrolled/package/frontend/{components-b3160dd7.js → components-24363f97.js} +188 -47
- data/entry_types/scrolled/package/frontend/{PhonePlatformContext-f6093cc6.js → i18n-71c39823.js} +191 -111
- data/entry_types/scrolled/package/frontend/index-fc4b13e6.js +118 -0
- data/entry_types/scrolled/package/frontend/index.css +1 -1
- data/entry_types/scrolled/package/frontend/index.js +252 -76
- data/entry_types/scrolled/package/frontend/useContentElementEditorState-245f1986.js +52 -0
- data/entry_types/scrolled/package/package.json +6 -4
- data/entry_types/scrolled/package/testHelpers.js +11 -2
- data/entry_types/scrolled/package/values/colors.module.css +15 -0
- data/entry_types/scrolled/package/widgets/consentBar.css +1 -0
- data/entry_types/scrolled/package/widgets/consentBar.js +426 -0
- data/entry_types/scrolled/package/widgets/defaultNavigation.css +2 -2
- data/entry_types/scrolled/package/widgets/defaultNavigation.js +39 -4
- data/entry_types/scrolled/package/widgets/iconInlineFileRights.css +1 -0
- data/entry_types/scrolled/package/widgets/iconInlineFileRights.js +49 -0
- data/entry_types/scrolled/package/widgets/textInlineFileRights.css +1 -0
- data/entry_types/scrolled/package/widgets/textInlineFileRights.js +37 -0
- data/lib/generators/pageflow/resque/resque_generator.rb +1 -1
- data/lib/generators/pageflow/resque/templates/resque.rake +1 -1
- data/lib/generators/pageflow/resque/templates/resque.rb +1 -1
- data/lib/generators/pageflow/routes/routes_generator.rb +1 -1
- data/lib/pageflow/ability_mixin.rb +5 -5
- data/lib/pageflow/active_admin_can_can_fix.rb +2 -2
- data/lib/pageflow/built_in_file_type.rb +7 -0
- data/lib/pageflow/configuration.rb +29 -1
- data/lib/pageflow/engine.rb +18 -40
- data/lib/pageflow/entry_export_import/revision_serialization.rb +1 -1
- data/lib/pageflow/file_type.rb +2 -2
- data/lib/pageflow/global_config_api.rb +2 -2
- data/lib/pageflow/nested_revision_component.rb +23 -5
- data/lib/pageflow/page_type.rb +1 -1
- data/lib/pageflow/paperclip_processors/webp.rb +63 -0
- data/lib/pageflow/rails_version.rb +19 -0
- data/lib/pageflow/seeds.rb +10 -7
- data/lib/pageflow/user_mixin.rb +1 -1
- data/lib/pageflow/version.rb +1 -1
- data/lib/pageflow/widget_types.rb +4 -0
- data/package/config/jest/index.js +3 -1
- data/package/config/webpack5.js +14 -0
- data/package/editor.js +410 -181
- data/package/frontend.js +34 -4
- data/package/testHelpers.js +1 -1
- data/package/ui.js +297 -71
- data/spec/factories/entries.rb +34 -3
- data/spec/factories/sites.rb +3 -0
- data/vendor/assets/javascripts/iscroll.js +4 -7
- metadata +118 -80
- data/app/helpers/pageflow/admin/permalinks_helper.rb +0 -15
- data/entry_types/scrolled/package/frontend/arrowRight-78a7cee4.js +0 -42
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
this.pageflow = this.pageflow || {};
|
|
2
|
-
this.pageflow._uiGlobalInterop = (function (exports, Marionette, _, $, I18n$1, Backbone, ChildViewContainer, IScroll, jquery_minicolors, wysihtml5, Cocktail) {
|
|
2
|
+
this.pageflow._uiGlobalInterop = (function (exports, Marionette, _, $, I18n$1, Backbone, ChildViewContainer, IScroll, jquery_minicolors, wysihtml5, jqueryUi, Cocktail) {
|
|
3
3
|
'use strict';
|
|
4
4
|
|
|
5
5
|
Marionette = Marionette && Marionette.hasOwnProperty('default') ? Marionette['default'] : Marionette;
|
|
@@ -1067,6 +1067,107 @@ this.pageflow._uiGlobalInterop = (function (exports, Marionette, _, $, I18n$1, B
|
|
|
1067
1067
|
}
|
|
1068
1068
|
});
|
|
1069
1069
|
|
|
1070
|
+
function _defineProperty(obj, key, value) {
|
|
1071
|
+
if (key in obj) {
|
|
1072
|
+
Object.defineProperty(obj, key, {
|
|
1073
|
+
value: value,
|
|
1074
|
+
enumerable: true,
|
|
1075
|
+
configurable: true,
|
|
1076
|
+
writable: true
|
|
1077
|
+
});
|
|
1078
|
+
} else {
|
|
1079
|
+
obj[key] = value;
|
|
1080
|
+
}
|
|
1081
|
+
|
|
1082
|
+
return obj;
|
|
1083
|
+
}
|
|
1084
|
+
|
|
1085
|
+
function ownKeys(object, enumerableOnly) {
|
|
1086
|
+
var keys = Object.keys(object);
|
|
1087
|
+
|
|
1088
|
+
if (Object.getOwnPropertySymbols) {
|
|
1089
|
+
var symbols = Object.getOwnPropertySymbols(object);
|
|
1090
|
+
if (enumerableOnly) symbols = symbols.filter(function (sym) {
|
|
1091
|
+
return Object.getOwnPropertyDescriptor(object, sym).enumerable;
|
|
1092
|
+
});
|
|
1093
|
+
keys.push.apply(keys, symbols);
|
|
1094
|
+
}
|
|
1095
|
+
|
|
1096
|
+
return keys;
|
|
1097
|
+
}
|
|
1098
|
+
|
|
1099
|
+
function _objectSpread2(target) {
|
|
1100
|
+
for (var i = 1; i < arguments.length; i++) {
|
|
1101
|
+
var source = arguments[i] != null ? arguments[i] : {};
|
|
1102
|
+
|
|
1103
|
+
if (i % 2) {
|
|
1104
|
+
ownKeys(Object(source), true).forEach(function (key) {
|
|
1105
|
+
_defineProperty(target, key, source[key]);
|
|
1106
|
+
});
|
|
1107
|
+
} else if (Object.getOwnPropertyDescriptors) {
|
|
1108
|
+
Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
|
|
1109
|
+
} else {
|
|
1110
|
+
ownKeys(Object(source)).forEach(function (key) {
|
|
1111
|
+
Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
|
|
1112
|
+
});
|
|
1113
|
+
}
|
|
1114
|
+
}
|
|
1115
|
+
|
|
1116
|
+
return target;
|
|
1117
|
+
}
|
|
1118
|
+
|
|
1119
|
+
var attributeBinding = {
|
|
1120
|
+
setupBooleanAttributeBinding: function setupBooleanAttributeBinding(optionName, updateMethod) {
|
|
1121
|
+
this.setupAttributeBinding(optionName, updateMethod, Boolean);
|
|
1122
|
+
},
|
|
1123
|
+
getBooleanAttributBoundOption: function getBooleanAttributBoundOption(optionName) {
|
|
1124
|
+
return this.getAttributeBoundOption(optionName, Boolean);
|
|
1125
|
+
},
|
|
1126
|
+
setupAttributeBinding: function setupAttributeBinding(optionName, updateMethod) {
|
|
1127
|
+
var _this = this;
|
|
1128
|
+
|
|
1129
|
+
var normalize = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : function (value) {
|
|
1130
|
+
return value;
|
|
1131
|
+
};
|
|
1132
|
+
var binding = this.options["".concat(optionName, "Binding")];
|
|
1133
|
+
var view = this;
|
|
1134
|
+
|
|
1135
|
+
if (binding) {
|
|
1136
|
+
_.flatten([binding]).forEach(function (attribute) {
|
|
1137
|
+
_this.listenTo(_this.model, 'change:' + attribute, update);
|
|
1138
|
+
});
|
|
1139
|
+
}
|
|
1140
|
+
|
|
1141
|
+
update();
|
|
1142
|
+
|
|
1143
|
+
function update() {
|
|
1144
|
+
updateMethod.call(view, view.getAttributeBoundOption(optionName, normalize));
|
|
1145
|
+
}
|
|
1146
|
+
},
|
|
1147
|
+
getAttributeBoundOption: function getAttributeBoundOption(optionName) {
|
|
1148
|
+
var _this2 = this;
|
|
1149
|
+
|
|
1150
|
+
var normalize = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : function (value) {
|
|
1151
|
+
return value;
|
|
1152
|
+
};
|
|
1153
|
+
var binding = this.options["".concat(optionName, "Binding")];
|
|
1154
|
+
var bindingValueOptionName = "".concat(optionName, "BindingValue");
|
|
1155
|
+
var value = Array.isArray(binding) ? binding.map(function (attribute) {
|
|
1156
|
+
return _this2.model.get(attribute);
|
|
1157
|
+
}) : this.model.get(binding);
|
|
1158
|
+
|
|
1159
|
+
if (bindingValueOptionName in this.options) {
|
|
1160
|
+
return value === this.options[bindingValueOptionName];
|
|
1161
|
+
} else if (typeof this.options[optionName] === 'function') {
|
|
1162
|
+
return normalize(this.options[optionName](value));
|
|
1163
|
+
} else if (optionName in this.options) {
|
|
1164
|
+
return normalize(this.options[optionName]);
|
|
1165
|
+
} else if (binding) {
|
|
1166
|
+
return normalize(value);
|
|
1167
|
+
}
|
|
1168
|
+
}
|
|
1169
|
+
};
|
|
1170
|
+
|
|
1070
1171
|
/**
|
|
1071
1172
|
* Mixin for input views handling common concerns like labels,
|
|
1072
1173
|
* inline help, visiblity and disabling.
|
|
@@ -1196,7 +1297,7 @@ this.pageflow._uiGlobalInterop = (function (exports, Marionette, _, $, I18n$1, B
|
|
|
1196
1297
|
* @mixin
|
|
1197
1298
|
*/
|
|
1198
1299
|
|
|
1199
|
-
var inputView = {
|
|
1300
|
+
var inputView = _objectSpread2(_objectSpread2({}, attributeBinding), {}, {
|
|
1200
1301
|
ui: {
|
|
1201
1302
|
label: 'label',
|
|
1202
1303
|
labelText: 'label .name',
|
|
@@ -1240,8 +1341,8 @@ this.pageflow._uiGlobalInterop = (function (exports, Marionette, _, $, I18n$1, B
|
|
|
1240
1341
|
this.ui.labelText.text(this.labelText());
|
|
1241
1342
|
this.updateInlineHelp();
|
|
1242
1343
|
this.setLabelFor();
|
|
1243
|
-
this.
|
|
1244
|
-
this.
|
|
1344
|
+
this.setupBooleanAttributeBinding('disabled', this.updateDisabled);
|
|
1345
|
+
this.setupBooleanAttributeBinding('visible', this.updateVisible);
|
|
1245
1346
|
},
|
|
1246
1347
|
|
|
1247
1348
|
/**
|
|
@@ -1290,7 +1391,7 @@ this.pageflow._uiGlobalInterop = (function (exports, Marionette, _, $, I18n$1, B
|
|
|
1290
1391
|
}
|
|
1291
1392
|
},
|
|
1292
1393
|
isDisabled: function isDisabled() {
|
|
1293
|
-
return this.
|
|
1394
|
+
return this.getBooleanAttributBoundOption('disabled');
|
|
1294
1395
|
},
|
|
1295
1396
|
updateDisabled: function updateDisabled() {
|
|
1296
1397
|
this.$el.toggleClass('input-disabled', !!this.isDisabled());
|
|
@@ -1308,46 +1409,9 @@ this.pageflow._uiGlobalInterop = (function (exports, Marionette, _, $, I18n$1, B
|
|
|
1308
1409
|
}
|
|
1309
1410
|
},
|
|
1310
1411
|
updateVisible: function updateVisible() {
|
|
1311
|
-
this.$el.toggleClass('
|
|
1312
|
-
},
|
|
1313
|
-
setupAttributeBinding: function setupAttributeBinding(optionName, updateMethod) {
|
|
1314
|
-
var _this = this;
|
|
1315
|
-
|
|
1316
|
-
var binding = this.options["".concat(optionName, "Binding")];
|
|
1317
|
-
var view = this;
|
|
1318
|
-
|
|
1319
|
-
if (binding) {
|
|
1320
|
-
_.flatten([binding]).forEach(function (attribute) {
|
|
1321
|
-
_this.listenTo(_this.model, 'change:' + attribute, update);
|
|
1322
|
-
});
|
|
1323
|
-
}
|
|
1324
|
-
|
|
1325
|
-
update();
|
|
1326
|
-
|
|
1327
|
-
function update() {
|
|
1328
|
-
updateMethod.call(view, view.getAttributeBoundOption(optionName));
|
|
1329
|
-
}
|
|
1330
|
-
},
|
|
1331
|
-
getAttributeBoundOption: function getAttributeBoundOption(optionName) {
|
|
1332
|
-
var _this2 = this;
|
|
1333
|
-
|
|
1334
|
-
var binding = this.options["".concat(optionName, "Binding")];
|
|
1335
|
-
var bindingValueOptionName = "".concat(optionName, "BindingValue");
|
|
1336
|
-
var value = Array.isArray(binding) ? binding.map(function (attribute) {
|
|
1337
|
-
return _this2.model.get(attribute);
|
|
1338
|
-
}) : this.model.get(binding);
|
|
1339
|
-
|
|
1340
|
-
if (bindingValueOptionName in this.options) {
|
|
1341
|
-
return value === this.options[bindingValueOptionName];
|
|
1342
|
-
} else if (typeof this.options[optionName] === 'function') {
|
|
1343
|
-
return !!this.options[optionName](value);
|
|
1344
|
-
} else if (optionName in this.options) {
|
|
1345
|
-
return !!this.options[optionName];
|
|
1346
|
-
} else if (binding) {
|
|
1347
|
-
return !!value;
|
|
1348
|
-
}
|
|
1412
|
+
this.$el.toggleClass('hidden_via_binding', this.getBooleanAttributBoundOption('visible') === false);
|
|
1349
1413
|
}
|
|
1350
|
-
};
|
|
1414
|
+
});
|
|
1351
1415
|
|
|
1352
1416
|
function template$4(data) {
|
|
1353
1417
|
var __p = '';
|
|
@@ -1466,6 +1530,125 @@ this.pageflow._uiGlobalInterop = (function (exports, Marionette, _, $, I18n$1, B
|
|
|
1466
1530
|
}
|
|
1467
1531
|
});
|
|
1468
1532
|
|
|
1533
|
+
function _classCallCheck(instance, Constructor) {
|
|
1534
|
+
if (!(instance instanceof Constructor)) {
|
|
1535
|
+
throw new TypeError("Cannot call a class as a function");
|
|
1536
|
+
}
|
|
1537
|
+
}
|
|
1538
|
+
|
|
1539
|
+
function _defineProperties(target, props) {
|
|
1540
|
+
for (var i = 0; i < props.length; i++) {
|
|
1541
|
+
var descriptor = props[i];
|
|
1542
|
+
descriptor.enumerable = descriptor.enumerable || false;
|
|
1543
|
+
descriptor.configurable = true;
|
|
1544
|
+
if ("value" in descriptor) descriptor.writable = true;
|
|
1545
|
+
Object.defineProperty(target, descriptor.key, descriptor);
|
|
1546
|
+
}
|
|
1547
|
+
}
|
|
1548
|
+
|
|
1549
|
+
function _createClass(Constructor, protoProps, staticProps) {
|
|
1550
|
+
if (protoProps) _defineProperties(Constructor.prototype, protoProps);
|
|
1551
|
+
if (staticProps) _defineProperties(Constructor, staticProps);
|
|
1552
|
+
return Constructor;
|
|
1553
|
+
}
|
|
1554
|
+
|
|
1555
|
+
/**
|
|
1556
|
+
* Input view for a number.
|
|
1557
|
+
*
|
|
1558
|
+
* See {@link inputView} for further options.
|
|
1559
|
+
*
|
|
1560
|
+
* @param {Object} [options]
|
|
1561
|
+
*
|
|
1562
|
+
* @param {string} [options.locale]
|
|
1563
|
+
* Locale used to fomat and parse numbers.
|
|
1564
|
+
*
|
|
1565
|
+
* @class
|
|
1566
|
+
*/
|
|
1567
|
+
|
|
1568
|
+
var NumberInputView = Marionette.ItemView.extend({
|
|
1569
|
+
mixins: [inputView],
|
|
1570
|
+
template: function template() {
|
|
1571
|
+
return "\n <label>\n <span class=\"name\"></span>\n <span class=\"inline_help\"></span>\n </label>\n <input type=\"text\" dir=\"auto\" />\n ";
|
|
1572
|
+
},
|
|
1573
|
+
ui: {
|
|
1574
|
+
input: 'input'
|
|
1575
|
+
},
|
|
1576
|
+
events: {
|
|
1577
|
+
'change': 'onChange'
|
|
1578
|
+
},
|
|
1579
|
+
initialize: function initialize() {
|
|
1580
|
+
this.parser = new NumberParser(this.options.locale);
|
|
1581
|
+
},
|
|
1582
|
+
onRender: function onRender() {
|
|
1583
|
+
this.load();
|
|
1584
|
+
this.listenTo(this.model, 'change:' + this.options.propertyName, this.load);
|
|
1585
|
+
},
|
|
1586
|
+
onChange: function onChange() {
|
|
1587
|
+
this.save();
|
|
1588
|
+
this.load();
|
|
1589
|
+
},
|
|
1590
|
+
onClose: function onClose() {
|
|
1591
|
+
this.save();
|
|
1592
|
+
},
|
|
1593
|
+
save: function save() {
|
|
1594
|
+
var inputValue = this.ui.input.val();
|
|
1595
|
+
this.model.set(this.options.propertyName, this.parser.parse(inputValue) || 0);
|
|
1596
|
+
},
|
|
1597
|
+
load: function load() {
|
|
1598
|
+
var input = this.ui.input;
|
|
1599
|
+
var value = this.model.get(this.options.propertyName) || 0;
|
|
1600
|
+
input.val(value.toLocaleString(this.options.locale, {
|
|
1601
|
+
useGrouping: false
|
|
1602
|
+
}));
|
|
1603
|
+
},
|
|
1604
|
+
displayValidationError: function displayValidationError(message) {
|
|
1605
|
+
this.$el.addClass('invalid');
|
|
1606
|
+
this.ui.input.attr('title', message);
|
|
1607
|
+
},
|
|
1608
|
+
resetValidationError: function resetValidationError(message) {
|
|
1609
|
+
this.$el.removeClass('invalid');
|
|
1610
|
+
this.ui.input.attr('title', '');
|
|
1611
|
+
}
|
|
1612
|
+
});
|
|
1613
|
+
|
|
1614
|
+
var NumberParser = /*#__PURE__*/function () {
|
|
1615
|
+
function NumberParser(locale) {
|
|
1616
|
+
_classCallCheck(this, NumberParser);
|
|
1617
|
+
|
|
1618
|
+
var format = new Intl.NumberFormat(locale);
|
|
1619
|
+
var parts = format.formatToParts(12345.6);
|
|
1620
|
+
var numerals = Array.from({
|
|
1621
|
+
length: 10
|
|
1622
|
+
}).map(function (_, i) {
|
|
1623
|
+
return format.format(i);
|
|
1624
|
+
});
|
|
1625
|
+
var index = new Map(numerals.map(function (d, i) {
|
|
1626
|
+
return [d, i];
|
|
1627
|
+
}));
|
|
1628
|
+
this._group = new RegExp("[".concat(parts.find(function (d) {
|
|
1629
|
+
return d.type === "group";
|
|
1630
|
+
}).value, "]"), "g");
|
|
1631
|
+
this._decimal = new RegExp("[".concat(parts.find(function (d) {
|
|
1632
|
+
return d.type === "decimal";
|
|
1633
|
+
}).value, "]"));
|
|
1634
|
+
this._numeral = new RegExp("[".concat(numerals.join(""), "]"), "g");
|
|
1635
|
+
|
|
1636
|
+
this._index = function (d) {
|
|
1637
|
+
return index.get(d);
|
|
1638
|
+
};
|
|
1639
|
+
}
|
|
1640
|
+
|
|
1641
|
+
_createClass(NumberParser, [{
|
|
1642
|
+
key: "parse",
|
|
1643
|
+
value: function parse(string) {
|
|
1644
|
+
string = string.trim().replace(this._group, "").replace(this._decimal, ".").replace(this._numeral, this._index);
|
|
1645
|
+
return string ? +string : NaN;
|
|
1646
|
+
}
|
|
1647
|
+
}]);
|
|
1648
|
+
|
|
1649
|
+
return NumberParser;
|
|
1650
|
+
}();
|
|
1651
|
+
|
|
1469
1652
|
/**
|
|
1470
1653
|
* Text based input view that can display a placeholder.
|
|
1471
1654
|
*
|
|
@@ -1676,11 +1859,15 @@ this.pageflow._uiGlobalInterop = (function (exports, Marionette, _, $, I18n$1, B
|
|
|
1676
1859
|
this.ui.input.minicolors({
|
|
1677
1860
|
changeDelay: 200,
|
|
1678
1861
|
change: _.bind(function (color) {
|
|
1862
|
+
this._saving = true;
|
|
1863
|
+
|
|
1679
1864
|
if (color === this.defaultValue()) {
|
|
1680
1865
|
this.model.unset(this.options.propertyName);
|
|
1681
1866
|
} else {
|
|
1682
1867
|
this.model.set(this.options.propertyName, color);
|
|
1683
1868
|
}
|
|
1869
|
+
|
|
1870
|
+
this._saving = false;
|
|
1684
1871
|
}, this)
|
|
1685
1872
|
});
|
|
1686
1873
|
this.listenTo(this.model, 'change:' + this.options.propertyName, this.load);
|
|
@@ -1709,7 +1896,10 @@ this.pageflow._uiGlobalInterop = (function (exports, Marionette, _, $, I18n$1, B
|
|
|
1709
1896
|
}
|
|
1710
1897
|
},
|
|
1711
1898
|
load: function load() {
|
|
1712
|
-
|
|
1899
|
+
if (!this._saving) {
|
|
1900
|
+
this.ui.input.minicolors('value', this.model.get(this.options.propertyName) || this.defaultValue());
|
|
1901
|
+
}
|
|
1902
|
+
|
|
1713
1903
|
this.$el.toggleClass('is_default', !this.model.has(this.options.propertyName));
|
|
1714
1904
|
},
|
|
1715
1905
|
refreshPicker: function refreshPicker() {
|
|
@@ -2116,6 +2306,7 @@ this.pageflow._uiGlobalInterop = (function (exports, Marionette, _, $, I18n$1, B
|
|
|
2116
2306
|
var TextAreaInputView = Marionette.ItemView.extend({
|
|
2117
2307
|
mixins: [inputView, inputWithPlaceholderText],
|
|
2118
2308
|
template: template$8,
|
|
2309
|
+
className: 'text_area_input',
|
|
2119
2310
|
ui: {
|
|
2120
2311
|
input: 'textarea',
|
|
2121
2312
|
toolbar: '.toolbar',
|
|
@@ -2292,21 +2483,6 @@ this.pageflow._uiGlobalInterop = (function (exports, Marionette, _, $, I18n$1, B
|
|
|
2292
2483
|
}
|
|
2293
2484
|
});
|
|
2294
2485
|
|
|
2295
|
-
function _defineProperty(obj, key, value) {
|
|
2296
|
-
if (key in obj) {
|
|
2297
|
-
Object.defineProperty(obj, key, {
|
|
2298
|
-
value: value,
|
|
2299
|
-
enumerable: true,
|
|
2300
|
-
configurable: true,
|
|
2301
|
-
writable: true
|
|
2302
|
-
});
|
|
2303
|
-
} else {
|
|
2304
|
-
obj[key] = value;
|
|
2305
|
-
}
|
|
2306
|
-
|
|
2307
|
-
return obj;
|
|
2308
|
-
}
|
|
2309
|
-
|
|
2310
2486
|
function template$9(data) {
|
|
2311
2487
|
var __p = '';
|
|
2312
2488
|
__p += '<label>\n <span class="name"></span>\n <span class="inline_help"></span>\n</label>\n<input type="text" />\n<div class="validation"></div>\n';
|
|
@@ -2573,6 +2749,25 @@ this.pageflow._uiGlobalInterop = (function (exports, Marionette, _, $, I18n$1, B
|
|
|
2573
2749
|
*
|
|
2574
2750
|
* @param {Object} [options]
|
|
2575
2751
|
*
|
|
2752
|
+
* @param {number} [options.defaultValue]
|
|
2753
|
+
* Defaults value to display if property is not set.
|
|
2754
|
+
*
|
|
2755
|
+
* @param {number} [options.minValue=0]
|
|
2756
|
+
* Value when dragging slider to the very left.
|
|
2757
|
+
*
|
|
2758
|
+
* @param {number} [options.maxValue=100]
|
|
2759
|
+
* Value when dragging slider to the very right.
|
|
2760
|
+
*
|
|
2761
|
+
* @param {string} [options.unit="%"]
|
|
2762
|
+
* Unit to display after value.
|
|
2763
|
+
*
|
|
2764
|
+
* @param {function} [options.displayText]
|
|
2765
|
+
* Function that receives value and returns custom text to display as value.
|
|
2766
|
+
*
|
|
2767
|
+
* @param {boolean} [options.saveOnSlide]
|
|
2768
|
+
* Already update the model while dragging the handle - not only after
|
|
2769
|
+
* handle has been released.
|
|
2770
|
+
*
|
|
2576
2771
|
* @class
|
|
2577
2772
|
*/
|
|
2578
2773
|
|
|
@@ -2585,15 +2780,27 @@ this.pageflow._uiGlobalInterop = (function (exports, Marionette, _, $, I18n$1, B
|
|
|
2585
2780
|
value: '.value'
|
|
2586
2781
|
},
|
|
2587
2782
|
events: {
|
|
2588
|
-
'slidechange': 'save'
|
|
2783
|
+
'slidechange': 'save',
|
|
2784
|
+
'slide': 'handleSlide'
|
|
2589
2785
|
},
|
|
2590
2786
|
onRender: function onRender() {
|
|
2787
|
+
var _this = this;
|
|
2788
|
+
|
|
2591
2789
|
this.ui.widget.slider({
|
|
2592
|
-
animate: 'fast'
|
|
2593
|
-
|
|
2594
|
-
|
|
2790
|
+
animate: 'fast'
|
|
2791
|
+
});
|
|
2792
|
+
this.setupAttributeBinding('minValue', function (value) {
|
|
2793
|
+
return _this.updateSliderOption('min', value || 0);
|
|
2794
|
+
});
|
|
2795
|
+
this.setupAttributeBinding('maxValue', function (value) {
|
|
2796
|
+
return _this.updateSliderOption('max', value || 100);
|
|
2595
2797
|
});
|
|
2596
2798
|
this.load();
|
|
2799
|
+
this.listenTo(this.model, 'change:' + this.options.propertyName, this.load);
|
|
2800
|
+
},
|
|
2801
|
+
updateSliderOption: function updateSliderOption(name, value) {
|
|
2802
|
+
this.ui.widget.slider('option', name, value);
|
|
2803
|
+
this.updateText(this.ui.widget.slider('value'));
|
|
2597
2804
|
},
|
|
2598
2805
|
updateDisabled: function updateDisabled(disabled) {
|
|
2599
2806
|
this.$el.toggleClass('disabled', !!disabled);
|
|
@@ -2604,11 +2811,15 @@ this.pageflow._uiGlobalInterop = (function (exports, Marionette, _, $, I18n$1, B
|
|
|
2604
2811
|
this.ui.widget.slider('enable');
|
|
2605
2812
|
}
|
|
2606
2813
|
},
|
|
2607
|
-
|
|
2608
|
-
|
|
2609
|
-
|
|
2610
|
-
this.
|
|
2611
|
-
|
|
2814
|
+
handleSlide: function handleSlide(event, ui) {
|
|
2815
|
+
this.updateText(ui.value);
|
|
2816
|
+
|
|
2817
|
+
if (this.options.saveOnSlide) {
|
|
2818
|
+
this.save(event, ui);
|
|
2819
|
+
}
|
|
2820
|
+
},
|
|
2821
|
+
save: function save(event, ui) {
|
|
2822
|
+
this.model.set(this.options.propertyName, ui.value);
|
|
2612
2823
|
},
|
|
2613
2824
|
load: function load() {
|
|
2614
2825
|
var value;
|
|
@@ -2619,7 +2830,18 @@ this.pageflow._uiGlobalInterop = (function (exports, Marionette, _, $, I18n$1, B
|
|
|
2619
2830
|
value = 'defaultValue' in this.options ? this.options.defaultValue : 0;
|
|
2620
2831
|
}
|
|
2621
2832
|
|
|
2622
|
-
this.ui.widget.slider('option', 'value', value);
|
|
2833
|
+
this.ui.widget.slider('option', 'value', this.clampValue(value));
|
|
2834
|
+
this.updateText(value);
|
|
2835
|
+
},
|
|
2836
|
+
clampValue: function clampValue(value) {
|
|
2837
|
+
var min = this.ui.widget.slider('option', 'min');
|
|
2838
|
+
var max = this.ui.widget.slider('option', 'max');
|
|
2839
|
+
return Math.min(max, Math.max(min, value));
|
|
2840
|
+
},
|
|
2841
|
+
updateText: function updateText(value) {
|
|
2842
|
+
var unit = 'unit' in this.options ? this.options.unit : '%';
|
|
2843
|
+
var text = 'displayText' in this.options ? this.options.displayText(value) : value + unit;
|
|
2844
|
+
this.ui.value.text(text);
|
|
2623
2845
|
}
|
|
2624
2846
|
});
|
|
2625
2847
|
|
|
@@ -3013,7 +3235,10 @@ this.pageflow._uiGlobalInterop = (function (exports, Marionette, _, $, I18n$1, B
|
|
|
3013
3235
|
return view;
|
|
3014
3236
|
},
|
|
3015
3237
|
appendSubview: function appendSubview(view) {
|
|
3016
|
-
|
|
3238
|
+
var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
|
|
3239
|
+
to = _ref.to;
|
|
3240
|
+
|
|
3241
|
+
return (to || this.$el).append(this.subview(view).el);
|
|
3017
3242
|
},
|
|
3018
3243
|
onClose: function onClose() {
|
|
3019
3244
|
if (this.subviews) {
|
|
@@ -3082,6 +3307,7 @@ this.pageflow._uiGlobalInterop = (function (exports, Marionette, _, $, I18n$1, B
|
|
|
3082
3307
|
exports.IconTableCellView = IconTableCellView;
|
|
3083
3308
|
exports.JsonInputView = JsonInputView;
|
|
3084
3309
|
exports.LabelOnlyView = LabelOnlyView;
|
|
3310
|
+
exports.NumberInputView = NumberInputView;
|
|
3085
3311
|
exports.Object = BaseObject;
|
|
3086
3312
|
exports.PresenceTableCellView = PresenceTableCellView;
|
|
3087
3313
|
exports.ProxyUrlInputView = ProxyUrlInputView;
|
|
@@ -3100,6 +3326,7 @@ this.pageflow._uiGlobalInterop = (function (exports, Marionette, _, $, I18n$1, B
|
|
|
3100
3326
|
exports.TooltipView = TooltipView;
|
|
3101
3327
|
exports.UrlDisplayView = UrlDisplayView;
|
|
3102
3328
|
exports.UrlInputView = UrlInputView;
|
|
3329
|
+
exports.attributeBinding = attributeBinding;
|
|
3103
3330
|
exports.cssModulesUtils = cssModulesUtils;
|
|
3104
3331
|
exports.i18nUtils = i18nUtils;
|
|
3105
3332
|
exports.inputView = inputView;
|
|
@@ -3111,4 +3338,4 @@ this.pageflow._uiGlobalInterop = (function (exports, Marionette, _, $, I18n$1, B
|
|
|
3111
3338
|
|
|
3112
3339
|
return exports;
|
|
3113
3340
|
|
|
3114
|
-
}({}, Backbone.Marionette, _, jQuery, I18n, Backbone, Backbone.ChildViewContainer, IScroll, jQuery, wysihtml5, Cocktail));
|
|
3341
|
+
}({}, Backbone.Marionette, _, jQuery, I18n, Backbone, Backbone.ChildViewContainer, IScroll, jQuery, wysihtml5, jQuery, Cocktail));
|
|
@@ -62,4 +62,14 @@ $pageflow-permalink-input-directory-background-position: null !default;
|
|
|
62
62
|
padding-left: 0;
|
|
63
63
|
flex: 1;
|
|
64
64
|
}
|
|
65
|
+
|
|
66
|
+
&.no_directories {
|
|
67
|
+
select {
|
|
68
|
+
display: none;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
input {
|
|
72
|
+
padding-left: $pageflow-permalink-input-directory-padding-left;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
65
75
|
}
|
|
@@ -22,4 +22,8 @@ $pageflow-publication-state-indicator-size: 25px !default;
|
|
|
22
22
|
&.published_with_password_protection {
|
|
23
23
|
background-image: image-url("#{$dir}/published_with_password.svg");
|
|
24
24
|
}
|
|
25
|
+
|
|
26
|
+
&.published_with_noindex {
|
|
27
|
+
background-image: image-url("#{$dir}/published_with_noindex.svg");
|
|
28
|
+
}
|
|
25
29
|
}
|
|
@@ -10,6 +10,11 @@
|
|
|
10
10
|
@include icon-only-button;
|
|
11
11
|
}
|
|
12
12
|
|
|
13
|
+
> button.ellipsis_icon {
|
|
14
|
+
@include fa-ellipsis-v-icon;
|
|
15
|
+
width: 31px;
|
|
16
|
+
}
|
|
17
|
+
|
|
13
18
|
&.full_width {
|
|
14
19
|
width: 100%;
|
|
15
20
|
|
|
@@ -26,7 +31,7 @@
|
|
|
26
31
|
@include transition(visibility 100ms, opacity 100ms);
|
|
27
32
|
|
|
28
33
|
position: absolute;
|
|
29
|
-
z-index:
|
|
34
|
+
z-index: 6;
|
|
30
35
|
padding: 1px;
|
|
31
36
|
border: solid 1px var(--ui-on-surface-color-lighter);
|
|
32
37
|
border-radius: rounded(sm);
|
|
@@ -45,7 +50,8 @@
|
|
|
45
50
|
.drop_down_button_item {
|
|
46
51
|
a,
|
|
47
52
|
.label {
|
|
48
|
-
padding:
|
|
53
|
+
padding: 5px 15px;
|
|
54
|
+
line-height: 1.75;
|
|
49
55
|
}
|
|
50
56
|
|
|
51
57
|
a {
|
|
@@ -59,6 +65,11 @@
|
|
|
59
65
|
|
|
60
66
|
.label {
|
|
61
67
|
cursor: default;
|
|
68
|
+
font-weight: 500;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
&.is_hidden {
|
|
72
|
+
display: none;
|
|
62
73
|
}
|
|
63
74
|
|
|
64
75
|
&.is_selectable {
|
|
@@ -79,13 +90,56 @@
|
|
|
79
90
|
}
|
|
80
91
|
}
|
|
81
92
|
|
|
82
|
-
&.
|
|
83
|
-
|
|
84
|
-
|
|
93
|
+
&.separated {
|
|
94
|
+
border-top: solid 1px var(--ui-on-surface-color-lighter);
|
|
95
|
+
margin-top: 1px;
|
|
96
|
+
padding-top: 1px;
|
|
85
97
|
}
|
|
86
98
|
|
|
87
|
-
|
|
88
|
-
|
|
99
|
+
&.has_radio,
|
|
100
|
+
&.has_check_box {
|
|
101
|
+
a {
|
|
102
|
+
display: flex;
|
|
103
|
+
align-items: center;
|
|
104
|
+
justify-content: space-between;
|
|
105
|
+
gap: space(2);
|
|
106
|
+
|
|
107
|
+
&:after {
|
|
108
|
+
content: "";
|
|
109
|
+
flex-shrink: 0;
|
|
110
|
+
display: block;
|
|
111
|
+
box-sizing: border-box;
|
|
112
|
+
border: solid 1px var(--ui-on-surface-color-light);
|
|
113
|
+
width: 1rem;
|
|
114
|
+
height: 1rem;
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
&.is_checked a:after {
|
|
119
|
+
background-color: var(--ui-primary-color);
|
|
120
|
+
background-size: 100% 100%;
|
|
121
|
+
background-position: center;
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
&.has_check_box {
|
|
126
|
+
a:after {
|
|
127
|
+
border-radius: size(1);
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
&.is_checked a:after {
|
|
131
|
+
background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e");
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
&.has_radio {
|
|
136
|
+
a:after {
|
|
137
|
+
border-radius: 100%;
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
&.is_checked a:after {
|
|
141
|
+
background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e");
|
|
142
|
+
}
|
|
89
143
|
}
|
|
90
144
|
|
|
91
145
|
ul {
|
|
@@ -22,13 +22,24 @@
|
|
|
22
22
|
}
|
|
23
23
|
|
|
24
24
|
td {
|
|
25
|
-
padding: 5px
|
|
25
|
+
padding: 5px 0;
|
|
26
|
+
max-width: 0;
|
|
26
27
|
}
|
|
27
28
|
|
|
28
29
|
a {
|
|
29
30
|
text-decoration: underline;
|
|
30
31
|
}
|
|
31
32
|
|
|
33
|
+
.value_wrapper {
|
|
34
|
+
display: flex;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
.value {
|
|
38
|
+
flex: 1;
|
|
39
|
+
overflow: hidden;
|
|
40
|
+
text-overflow: ellipsis;
|
|
41
|
+
}
|
|
42
|
+
|
|
32
43
|
.edit {
|
|
33
44
|
@include background-icon-center($font-size: 15px,
|
|
34
45
|
$color: var(--ui-primary-color-light));
|