decidim-core 0.28.2 → 0.29.0.rc1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +1 -1
- data/app/cells/decidim/activities_cell.rb +0 -1
- data/app/cells/decidim/activity_cell.rb +5 -7
- data/app/cells/decidim/address_cell.rb +3 -5
- data/app/cells/decidim/amendable/amend_button_card_cell.rb +0 -2
- data/app/cells/decidim/amendable/amendments_cell.rb +0 -2
- data/app/cells/decidim/amendable/announcement_cell.rb +10 -14
- data/app/cells/decidim/amendable/emendation_actions_cell.rb +0 -2
- data/app/cells/decidim/amendable/promote_button_card_cell.rb +0 -2
- data/app/cells/decidim/amendable/wizard_step_form_cell.rb +6 -19
- data/app/cells/decidim/announcement/show.erb +1 -1
- data/app/cells/decidim/announcement_cell.rb +6 -2
- data/app/cells/decidim/attachments_file_tab/show.erb +3 -0
- data/app/cells/decidim/attachments_file_tab_cell.rb +11 -0
- data/app/cells/decidim/attachments_link_tab/show.erb +12 -0
- data/app/cells/decidim/attachments_link_tab_cell.rb +21 -0
- data/app/cells/decidim/author/flag.erb +2 -2
- data/app/cells/decidim/author_cell.rb +0 -2
- data/app/cells/decidim/authorization_modal_cell.rb +0 -3
- data/app/cells/decidim/badge_cell.rb +0 -4
- data/app/cells/decidim/badges_cell.rb +0 -2
- data/app/cells/decidim/button_cell.rb +0 -3
- data/app/cells/decidim/card_cell.rb +1 -5
- data/app/cells/decidim/card_g_cell.rb +2 -2
- data/app/cells/decidim/card_l/space.erb +1 -1
- data/app/cells/decidim/card_l_cell.rb +1 -3
- data/app/cells/decidim/card_metadata_cell.rb +1 -5
- data/app/cells/decidim/card_s_cell.rb +1 -4
- data/app/cells/decidim/coauthorships_cell.rb +0 -2
- data/app/cells/decidim/comments_button_cell.rb +0 -2
- data/app/cells/decidim/content_blocks/footer_sub_hero/show.erb +1 -1
- data/app/cells/decidim/content_blocks/footer_sub_hero_cell.rb +0 -3
- data/app/cells/decidim/content_blocks/hero/show.erb +1 -1
- data/app/cells/decidim/content_blocks/hero_cell.rb +0 -1
- data/app/cells/decidim/content_blocks/highlighted_content_banner_cell.rb +0 -2
- data/app/cells/decidim/content_blocks/how_to_participate/show.erb +1 -1
- data/app/cells/decidim/content_blocks/how_to_participate_cell.rb +0 -1
- data/app/cells/decidim/content_blocks/participatory_space_documents/content.erb +1 -1
- data/app/cells/decidim/content_blocks/participatory_space_documents_cell.rb +17 -1
- data/app/cells/decidim/content_blocks/participatory_space_hero_cell.rb +0 -2
- data/app/cells/decidim/content_blocks/participatory_space_last_activity_cell.rb +1 -3
- data/app/cells/decidim/content_blocks/stats/show.erb +1 -1
- data/app/cells/decidim/content_blocks/sub_hero_cell.rb +0 -3
- data/app/cells/decidim/date_range/show.erb +10 -10
- data/app/cells/decidim/date_range_cell.rb +0 -2
- data/app/cells/decidim/diff_cell.rb +0 -1
- data/app/cells/decidim/documents_panel/show.erb +4 -0
- data/app/cells/decidim/documents_panel_cell.rb +9 -1
- data/app/cells/decidim/endorsement_buttons_cell.rb +5 -13
- data/app/cells/decidim/flag_modal/flag_user.erb +3 -3
- data/app/cells/decidim/followers_cell.rb +0 -1
- data/app/cells/decidim/following_cell.rb +0 -1
- data/app/cells/decidim/footer_topics/show.erb +8 -0
- data/app/cells/decidim/footer_topics_cell.rb +39 -0
- data/app/cells/decidim/groups_cell.rb +0 -3
- data/app/cells/decidim/linked_resources_for_cell.rb +0 -3
- data/app/cells/decidim/members_cell.rb +0 -1
- data/app/cells/decidim/navbar_admin_link_cell.rb +0 -2
- data/app/cells/decidim/newsletter_templates/base_cell.rb +0 -1
- data/app/cells/decidim/newsletter_templates/basic_only_text/show.erb +2 -2
- data/app/cells/decidim/newsletter_templates/image_text_cta/show.erb +2 -2
- data/app/cells/decidim/notification/show.erb +5 -0
- data/app/cells/decidim/notification_actions/base_cell.rb +13 -0
- data/app/cells/decidim/notification_actions/buttons/show.erb +5 -0
- data/app/cells/decidim/notification_actions/buttons_cell.rb +41 -0
- data/app/cells/decidim/notification_cell.rb +9 -3
- data/app/cells/decidim/notifications_cell.rb +0 -1
- data/app/cells/decidim/pad_iframe/show.erb +2 -2
- data/app/cells/decidim/pad_iframe_cell.rb +0 -1
- data/app/cells/decidim/participatory_space_dropdown_metadata_cell.rb +1 -2
- data/app/cells/decidim/photo_cell.rb +1 -5
- data/app/cells/decidim/photos_list_cell.rb +0 -2
- data/app/cells/decidim/profile_cell.rb +0 -2
- data/app/cells/decidim/profile_sidebar/show.erb +20 -20
- data/app/cells/decidim/profile_sidebar_cell.rb +1 -10
- data/app/cells/decidim/progress_bar/show.erb +8 -6
- data/app/cells/decidim/public_participation/show.erb +1 -1
- data/app/cells/decidim/report_button/flag_modal.erb +1 -1
- data/app/cells/decidim/resource_types_filter_cell.rb +0 -2
- data/app/cells/decidim/scopes_picker/show.erb +1 -1
- data/app/cells/decidim/scopes_picker_cell.rb +0 -1
- data/app/cells/decidim/search_results_cell.rb +1 -1
- data/app/cells/decidim/statistic_cell.rb +0 -2
- data/app/cells/decidim/tab_panels/show.erb +1 -1
- data/app/cells/decidim/tab_panels_cell.rb +12 -2
- data/app/cells/decidim/tags_cell.rb +0 -2
- data/app/cells/decidim/tos_page_cell.rb +0 -3
- data/app/cells/decidim/translation_bar/show.erb +1 -1
- data/app/cells/decidim/translation_bar_cell.rb +0 -2
- data/app/cells/decidim/upload_modal/files.erb +1 -1
- data/app/cells/decidim/upload_modal_cell.rb +1 -3
- data/app/cells/decidim/user_conversation/new.erb +1 -1
- data/app/cells/decidim/user_conversation/show.erb +1 -1
- data/app/cells/decidim/user_conversation_cell.rb +0 -1
- data/app/cells/decidim/user_conversations/show.erb +1 -1
- data/app/cells/decidim/user_conversations_cell.rb +0 -1
- data/app/cells/decidim/user_group_pending_invitations_list_cell.rb +0 -1
- data/app/cells/decidim/user_group_pending_requests_list_cell.rb +0 -1
- data/app/cells/decidim/user_timeline/show.erb +1 -1
- data/app/cells/decidim/version_cell.rb +3 -5
- data/app/cells/decidim/versions_list_cell.rb +1 -3
- data/app/cells/decidim/versions_list_item_cell.rb +2 -4
- data/app/cells/decidim/wizard_step_form/wizard_aside.erb +2 -2
- data/app/cells/decidim/wizard_step_form/wizard_header.erb +2 -3
- data/app/cells/decidim/wizard_step_form_cell.rb +0 -8
- data/app/commands/decidim/amendable/create_draft.rb +4 -3
- data/app/commands/decidim/amendable/promote.rb +3 -2
- data/app/commands/decidim/amendable/publish_draft.rb +3 -2
- data/app/commands/decidim/amendable/update_draft.rb +4 -3
- data/app/commands/decidim/amendable/withdraw.rb +1 -1
- data/app/commands/decidim/create_follow.rb +4 -4
- data/app/commands/decidim/create_report.rb +3 -3
- data/app/commands/decidim/create_user_report.rb +5 -5
- data/app/commands/decidim/delete_follow.rb +4 -4
- data/app/commands/decidim/demote_membership.rb +2 -2
- data/app/commands/decidim/destroy_account.rb +21 -19
- data/app/commands/decidim/endorse_resource.rb +1 -1
- data/app/commands/decidim/invite_user_to_group.rb +5 -4
- data/app/commands/decidim/update_account.rb +24 -22
- data/app/commands/decidim/update_notifications_settings.rb +13 -11
- data/app/commands/decidim/update_password.rb +7 -7
- data/app/commands/decidim/update_user_interests.rb +9 -7
- data/app/controllers/concerns/decidim/devise_controllers.rb +2 -0
- data/app/controllers/concerns/decidim/filter_resource.rb +1 -1
- data/app/controllers/concerns/decidim/needs_rtl_direction.rb +23 -0
- data/app/controllers/concerns/decidim/participatory_space_context.rb +1 -23
- data/app/controllers/concerns/decidim/payload_info.rb +2 -1
- data/app/controllers/concerns/decidim/registers_permissions.rb +4 -4
- data/app/controllers/concerns/decidim/use_organization_time_zone.rb +1 -1
- data/app/controllers/concerns/decidim/withdrawable.rb +1 -1
- data/app/controllers/decidim/account_controller.rb +2 -2
- data/app/controllers/{concerns/decidim → decidim}/amendments_controller.rb +3 -16
- data/app/controllers/decidim/application_controller.rb +1 -0
- data/app/controllers/decidim/components/base_controller.rb +1 -1
- data/app/controllers/decidim/devise/invitations_controller.rb +1 -1
- data/app/controllers/decidim/devise/passwords_controller.rb +2 -2
- data/app/controllers/decidim/endorsements_controller.rb +1 -1
- data/app/controllers/decidim/favicon_controller.rb +1 -1
- data/app/controllers/decidim/follows_controller.rb +2 -2
- data/app/controllers/decidim/group_invites_controller.rb +36 -9
- data/app/controllers/decidim/newsletters_opt_in_controller.rb +1 -1
- data/app/controllers/decidim/notifications_settings_controller.rb +1 -1
- data/app/controllers/decidim/report_users_controller.rb +1 -1
- data/app/controllers/decidim/reports_controller.rb +1 -1
- data/app/controllers/decidim/user_interests_controller.rb +1 -1
- data/app/events/decidim/change_nickname_event.rb +0 -1
- data/app/events/decidim/invited_to_group_event.rb +29 -0
- data/app/events/decidim/welcome_notification_event.rb +2 -4
- data/app/forms/decidim/form.rb +4 -0
- data/app/forms/decidim/omniauth_registration_form.rb +1 -1
- data/app/forms/decidim/upload_validation_form.rb +1 -1
- data/app/helpers/concerns/decidim/flash_helper_extensions.rb +1 -1
- data/app/helpers/decidim/amendments_helper.rb +4 -14
- data/app/helpers/decidim/application_helper.rb +8 -0
- data/app/helpers/decidim/authorization_form_helper.rb +2 -2
- data/app/helpers/decidim/breadcrumb_helper.rb +1 -1
- data/app/helpers/decidim/cells_helper.rb +1 -1
- data/app/helpers/decidim/check_boxes_tree_helper.rb +1 -1
- data/app/helpers/decidim/datalist_select_helper.rb +1 -1
- data/app/helpers/decidim/decidim_form_helper.rb +3 -3
- data/app/helpers/decidim/filters_helper.rb +1 -1
- data/app/helpers/decidim/layout_helper.rb +1 -36
- data/app/helpers/decidim/localized_locales_helper.rb +1 -1
- data/app/helpers/decidim/menu_helper.rb +8 -0
- data/app/helpers/decidim/meta_tags_helper.rb +26 -23
- data/app/helpers/decidim/modal_helper.rb +1 -1
- data/app/helpers/decidim/orders_helper.rb +1 -1
- data/app/helpers/decidim/organization_helper.rb +55 -0
- data/app/helpers/decidim/paginate_helper.rb +1 -1
- data/app/helpers/decidim/resource_helper.rb +0 -7
- data/app/helpers/decidim/scopes_helper.rb +4 -2
- data/app/helpers/decidim/searches_helper.rb +1 -1
- data/app/helpers/decidim/short_link_helper.rb +2 -2
- data/app/helpers/decidim/translations_helper.rb +2 -2
- data/app/helpers/decidim/twitter_search_helper.rb +1 -1
- data/app/helpers/decidim/user_profile_helper.rb +0 -1
- data/app/jobs/decidim/email_notifications_digest_generator_job.rb +2 -2
- data/app/mailers/decidim/application_mailer.rb +6 -2
- data/app/mailers/decidim/block_user_mailer.rb +1 -1
- data/app/mailers/decidim/decidim_devise_mailer.rb +7 -1
- data/app/mailers/decidim/newsletter_mailer.rb +1 -4
- data/app/mailers/decidim/newsletters_opt_in_mailer.rb +2 -2
- data/app/mailers/decidim/notification_mailer.rb +0 -1
- data/app/mailers/decidim/notifications_digest_mailer.rb +0 -1
- data/app/mailers/decidim/reported_mailer.rb +6 -3
- data/app/mailers/decidim/user_report_mailer.rb +1 -1
- data/app/models/decidim/action_log.rb +1 -1
- data/app/models/decidim/area_type.rb +1 -1
- data/app/models/decidim/attachment.rb +26 -2
- data/app/models/decidim/authorization.rb +1 -1
- data/app/models/decidim/authorization_transfer.rb +1 -0
- data/app/models/decidim/component.rb +2 -2
- data/app/models/decidim/content_block.rb +1 -1
- data/app/models/decidim/messaging/message.rb +2 -2
- data/app/models/decidim/newsletter.rb +9 -9
- data/app/models/decidim/notification.rb +2 -2
- data/app/models/decidim/organization.rb +23 -2
- data/app/models/decidim/push_notification_message.rb +1 -1
- data/app/models/decidim/resource_link.rb +1 -1
- data/app/models/decidim/user.rb +2 -2
- data/app/models/decidim/user_group.rb +2 -2
- data/app/packs/src/decidim/a11y.js +46 -0
- data/app/packs/src/decidim/attachments/file_or_link_tabs.js +55 -0
- data/app/packs/src/decidim/attachments/index.js +1 -0
- data/app/packs/src/decidim/back_to_list.js +1 -1
- data/app/packs/src/decidim/check_boxes_tree.js +1 -1
- data/app/packs/src/decidim/data_consent/consent_manager.js +1 -1
- data/app/packs/src/decidim/data_consent/consent_manager.test.js +6 -6
- data/app/packs/src/decidim/data_consent/index.js +1 -1
- data/app/packs/src/decidim/datepicker/datepicker_functions.js +243 -0
- data/app/packs/src/decidim/datepicker/datepicker_listeners.js +78 -0
- data/app/packs/src/decidim/datepicker/form_datepicker.js +91 -0
- data/app/packs/src/decidim/datepicker/generate_datepicker.js +148 -0
- data/app/packs/src/decidim/datepicker/generate_timepicker.js +298 -0
- data/app/packs/src/decidim/datepicker/test/date.test.js +118 -0
- data/app/packs/src/decidim/datepicker/test/time.test.js +227 -0
- data/app/packs/src/decidim/editor/extensions/indent/index.js +1 -1
- data/app/packs/src/decidim/editor/extensions/video_embed/index.js +4 -4
- data/app/packs/src/decidim/editor/test/extensions/decidim_kit.test.js +0 -15
- data/app/packs/src/decidim/editor/test/extensions/indent.test.js +1 -1
- data/app/packs/src/decidim/editor/test/fixtures/upload_templates.js +1 -1
- data/app/packs/src/decidim/editor/test/helpers.js +1 -14
- data/app/packs/src/decidim/editor/utilities/paste_transform.js +2 -2
- data/app/packs/src/decidim/external_domain_warning.js +2 -2
- data/app/packs/src/decidim/external_domain_warning.test.js +4 -4
- data/app/packs/src/decidim/form_filter.js +4 -4
- data/app/packs/src/decidim/impersonation.js +1 -1
- data/app/packs/src/decidim/index.js +11 -5
- data/app/packs/src/decidim/input_character_counter.js +1 -1
- data/app/packs/src/decidim/input_emoji.js +171 -72
- data/app/packs/src/decidim/input_hashtags.js +1 -1
- data/app/packs/src/decidim/input_mentions.js +1 -1
- data/app/packs/src/decidim/notifications_actions.js +40 -0
- data/app/packs/src/decidim/sticky_header.js +87 -0
- data/app/packs/src/decidim/sw/sw.js +8 -6
- data/app/packs/src/decidim/tooltips.js +1 -1
- data/app/packs/stylesheets/decidim/_datepicker.scss +193 -0
- data/app/packs/stylesheets/decidim/_dropdown.scss +36 -0
- data/app/packs/stylesheets/decidim/_emoji.scss +36 -0
- data/app/packs/stylesheets/decidim/_filters.scss +4 -2
- data/app/packs/stylesheets/decidim/_flash.scss +2 -2
- data/app/packs/stylesheets/decidim/_footer.scss +1 -3
- data/app/packs/stylesheets/decidim/_forms.scss +9 -1
- data/app/packs/stylesheets/decidim/_header.scss +70 -50
- data/app/packs/stylesheets/decidim/_home.scss +1 -1
- data/app/packs/stylesheets/decidim/_layout.scss +13 -0
- data/app/packs/stylesheets/decidim/_modal.scss +1 -1
- data/app/packs/stylesheets/decidim/_modal_update.scss +1 -1
- data/app/packs/stylesheets/decidim/_notifications.scss +4 -0
- data/app/packs/stylesheets/decidim/_tabs_x.scss +5 -1
- data/app/packs/stylesheets/decidim/application.scss +4 -0
- data/app/packs/stylesheets/decidim/legacy/leaflet.scss +1 -1
- data/app/packs/stylesheets/decidim/vendor/_datepicker_light.scss +228 -0
- data/app/permissions/decidim/default_permissions.rb +2 -2
- data/app/presenters/decidim/admin_log/organization_presenter.rb +1 -1
- data/app/presenters/decidim/admin_log/static_page_presenter.rb +1 -1
- data/app/presenters/decidim/authorization_transfer_presenter.rb +1 -1
- data/app/presenters/decidim/component_attachment_collection_presenter.rb +81 -0
- data/app/presenters/decidim/footer_menu_presenter.rb +1 -1
- data/app/presenters/decidim/home_stats_presenter.rb +1 -1
- data/app/presenters/decidim/organization_presenter.rb +1 -1
- data/app/queries/decidim/metric_measure.rb +1 -1
- data/app/queries/decidim/public_activities.rb +1 -1
- data/app/queries/decidim/user_groups/admin_memberships.rb +1 -1
- data/app/queries/decidim/user_groups/member_memberships.rb +1 -1
- data/app/services/decidim/action_logger.rb +3 -3
- data/app/services/decidim/log/diff_changeset_calculator.rb +2 -2
- data/app/services/decidim/notifications_digest_sending_decider.rb +1 -1
- data/app/uploaders/decidim/organization_favicon_uploader.rb +1 -1
- data/app/uploaders/decidim/record_image_uploader.rb +2 -2
- data/app/validators/organization_present_validator.rb +1 -1
- data/app/validators/passthru_validator.rb +1 -1
- data/app/validators/uploader_image_dimensions_validator.rb +2 -2
- data/app/views/decidim/account/show.html.erb +1 -1
- data/app/views/decidim/amendments/_wizard_header.html.erb +1 -2
- data/app/views/decidim/application/_collection.html.erb +3 -1
- data/app/views/decidim/application/_component_documents.html.erb +4 -0
- data/app/views/decidim/application/_document.html.erb +23 -9
- data/app/views/decidim/block_user_mailer/notify.html.erb +2 -2
- data/app/views/decidim/devise/invitations/edit.html.erb +2 -2
- data/app/views/decidim/devise/omniauth_registrations/new.html.erb +1 -1
- data/app/views/decidim/devise/registrations/new.html.erb +1 -1
- data/app/views/decidim/devise/shared/_login_boxes.html.erb +1 -1
- data/app/views/decidim/doorkeeper/authorizations/new.html.erb +1 -1
- data/app/views/decidim/endorsements/_identity.html.erb +1 -1
- data/app/views/decidim/gamification/badges/index.html.erb +1 -1
- data/app/views/decidim/messaging/conversations/_add_conversation_users.html.erb +2 -2
- data/app/views/decidim/messaging/conversations/_error_modal.html.erb +5 -5
- data/app/views/decidim/newsletter_mailer/newsletter.html.erb +1 -1
- data/app/views/decidim/newsletters/show.html.erb +1 -1
- data/app/views/decidim/newsletters_opt_in_mailer/notify.html.erb +2 -2
- data/app/views/decidim/pages/index.html.erb +1 -2
- data/app/views/decidim/reported_mailer/report.html.erb +4 -2
- data/app/views/decidim/scopes/picker.html.erb +5 -5
- data/app/views/decidim/searches/_resources_filter_block.html.erb +6 -6
- data/app/views/decidim/shared/_extended_navigation_bar.html.erb +8 -8
- data/app/views/decidim/shared/_login_modal.html.erb +1 -1
- data/app/views/decidim/user_interests/_areas.html.erb +2 -2
- data/app/views/decidim/user_report_mailer/notify.html.erb +2 -2
- data/app/views/decidim/user_update_mailer/notify.html.erb +1 -1
- data/app/views/decidim/widgets/_data_picker.html.erb +1 -1
- data/app/views/devise/mailer/invitation_instructions.html.erb +1 -1
- data/app/views/devise/mailer/invitation_instructions.text.erb +1 -1
- data/app/views/devise/mailer/invite_admin.html.erb +2 -2
- data/app/views/devise/mailer/invite_admin.text.erb +2 -2
- data/app/views/devise/mailer/invite_collaborator.html.erb +2 -2
- data/app/views/devise/mailer/invite_collaborator.text.erb +2 -2
- data/app/views/devise/mailer/invite_private_user.html.erb +2 -2
- data/app/views/devise/mailer/invite_private_user.text.erb +2 -2
- data/app/views/devise/mailer/organization_admin_invitation_instructions.html.erb +1 -1
- data/app/views/devise/mailer/organization_admin_invitation_instructions.text.erb +1 -1
- data/app/views/layouts/decidim/_application.html.erb +3 -6
- data/app/views/layouts/decidim/_data_consent_warning.html.erb +2 -2
- data/app/views/layouts/decidim/_decidim_javascript.html.erb +1 -1
- data/app/views/layouts/decidim/_head_extra.html.erb +2 -2
- data/app/views/layouts/decidim/_impersonation_warning.html.erb +1 -1
- data/app/views/layouts/decidim/_js_configuration.html.erb +7 -2
- data/app/views/layouts/decidim/_logo.html.erb +2 -2
- data/app/views/layouts/decidim/_logo_mobile.html.erb +11 -0
- data/app/views/layouts/decidim/_mailer_logo.html.erb +2 -2
- data/app/views/layouts/decidim/_meta_tags_config.html.erb +1 -1
- data/app/views/layouts/decidim/_wrapper.html.erb +16 -9
- data/app/views/layouts/decidim/footer/_main.html.erb +2 -3
- data/app/views/layouts/decidim/footer/_main_intro.html.erb +2 -2
- data/app/views/layouts/decidim/footer/_main_legal.html.erb +2 -3
- data/app/views/layouts/decidim/footer/_main_links.html.erb +13 -11
- data/app/views/layouts/decidim/footer/_main_social_media_links.html.erb +8 -8
- data/app/views/layouts/decidim/header/_main.html.erb +9 -22
- data/app/views/layouts/decidim/header/_main_links_desktop.html.erb +3 -4
- data/app/views/layouts/decidim/header/_main_links_mobile_account.html.erb +10 -3
- data/app/views/layouts/decidim/header/_main_links_mobile_item_account.html.erb +24 -0
- data/app/views/layouts/decidim/header/_main_links_mobile_search.html.erb +0 -21
- data/app/views/layouts/decidim/header/_main_menu_mobile.html.erb +12 -0
- data/app/views/layouts/decidim/header/_menu_breadcrumb_desktop.html.erb +1 -1
- data/app/views/layouts/decidim/header/_menu_breadcrumb_main_dropdown_mobile.html.erb +17 -0
- data/app/views/layouts/decidim/header/_menu_breadcrumb_main_dropdown_top_left.html.erb +1 -1
- data/app/views/layouts/decidim/header/_menu_breadcrumb_mobile_tablet.html.erb +1 -1
- data/app/views/layouts/decidim/header/_menu_form_search_mobile.html.erb +16 -0
- data/app/views/layouts/decidim/header/_mobile_language_choose.html.erb +25 -0
- data/app/views/layouts/decidim/mailer.html.erb +2 -2
- data/app/views/layouts/decidim/shared/_layout_center.html.erb +1 -1
- data/app/views/layouts/decidim/shared/_layout_item.html.erb +0 -14
- data/config/initializers/active_storage.rb +3 -0
- data/config/initializers/devise.rb +1 -1
- data/config/initializers/new_framework_defaults_7_0.rb +145 -0
- data/config/locales/ar.yml +2 -42
- data/config/locales/bg.yml +55 -57
- data/config/locales/ca.yml +65 -54
- data/config/locales/cs.yml +53 -55
- data/config/locales/de.yml +63 -52
- data/config/locales/el.yml +0 -29
- data/config/locales/en.yml +68 -57
- data/config/locales/es-MX.yml +67 -56
- data/config/locales/es-PY.yml +67 -56
- data/config/locales/es.yml +66 -55
- data/config/locales/eu.yml +67 -56
- data/config/locales/fi-plain.yml +66 -55
- data/config/locales/fi.yml +65 -54
- data/config/locales/fr-CA.yml +60 -55
- data/config/locales/fr.yml +55 -50
- data/config/locales/ga-IE.yml +0 -11
- data/config/locales/gl.yml +0 -18
- data/config/locales/hu.yml +36 -56
- data/config/locales/id-ID.yml +0 -14
- data/config/locales/is-IS.yml +0 -10
- data/config/locales/it.yml +0 -25
- data/config/locales/ja.yml +67 -56
- data/config/locales/lb.yml +0 -25
- data/config/locales/lt.yml +0 -48
- data/config/locales/lv.yml +0 -21
- data/config/locales/nl.yml +0 -24
- data/config/locales/no.yml +0 -25
- data/config/locales/pl.yml +67 -56
- data/config/locales/pt-BR.yml +4 -51
- data/config/locales/pt.yml +0 -25
- data/config/locales/ro-RO.yml +1 -28
- data/config/locales/ru.yml +0 -15
- data/config/locales/sk.yml +0 -21
- data/config/locales/sl.yml +0 -8
- data/config/locales/sv.yml +0 -33
- data/config/locales/tr-TR.yml +4 -27
- data/config/locales/uk.yml +0 -10
- data/config/locales/zh-CN.yml +0 -22
- data/config/locales/zh-TW.yml +0 -47
- data/config/routes.rb +0 -1
- data/db/migrate/20170128112958_change_user_groups_verified_to_timestamp.rb +1 -1
- data/db/migrate/20240110150230_rename_external_domain_whitelist_to_external_domain_allowlist.rb +7 -0
- data/db/migrate/20240326104215_remove_show_in_footer_in_static_pages.rb +7 -0
- data/db/migrate/20240401192628_change_name_on_decidim_organizations.rb +31 -0
- data/db/seeds/avatars/001.jpg +0 -0
- data/db/seeds/avatars/002.jpg +0 -0
- data/db/seeds/avatars/003.jpg +0 -0
- data/db/seeds/avatars/004.jpg +0 -0
- data/db/seeds/avatars/005.jpg +0 -0
- data/db/seeds/avatars/006.jpg +0 -0
- data/db/seeds/avatars/007.jpg +0 -0
- data/db/seeds/avatars/008.jpg +0 -0
- data/db/seeds/avatars/009.jpg +0 -0
- data/db/seeds/avatars/010.jpg +0 -0
- data/db/seeds/avatars/011.jpg +0 -0
- data/db/seeds/avatars/012.jpg +0 -0
- data/db/seeds/avatars/013.jpg +0 -0
- data/db/seeds/avatars/014.jpg +0 -0
- data/db/seeds/avatars/015.jpg +0 -0
- data/db/seeds/avatars/016.jpg +0 -0
- data/db/seeds/avatars/017.jpg +0 -0
- data/db/seeds/avatars/018.jpg +0 -0
- data/db/seeds/avatars/019.jpg +0 -0
- data/db/seeds/avatars/020.jpg +0 -0
- data/db/seeds/avatars/021.jpg +0 -0
- data/db/seeds/avatars/022.jpg +0 -0
- data/db/seeds/avatars/023.jpg +0 -0
- data/db/seeds/avatars/024.jpg +0 -0
- data/db/seeds/avatars/025.jpg +0 -0
- data/db/seeds/avatars/026.jpg +0 -0
- data/db/seeds/avatars/027.jpg +0 -0
- data/db/seeds/avatars/028.jpg +0 -0
- data/db/seeds/avatars/029.jpg +0 -0
- data/db/seeds/avatars/030.jpg +0 -0
- data/db/seeds/avatars/031.jpg +0 -0
- data/db/seeds/avatars/032.jpg +0 -0
- data/db/seeds/avatars/033.jpg +0 -0
- data/db/seeds/avatars/034.jpg +0 -0
- data/db/seeds/avatars/035.jpg +0 -0
- data/db/seeds/avatars/036.jpg +0 -0
- data/db/seeds/avatars/037.jpg +0 -0
- data/db/seeds/avatars/038.jpg +0 -0
- data/db/seeds/avatars/039.jpg +0 -0
- data/db/seeds/avatars/040.jpg +0 -0
- data/db/seeds/avatars/041.jpg +0 -0
- data/db/seeds/avatars/042.jpg +0 -0
- data/db/seeds/avatars/043.jpg +0 -0
- data/db/seeds/avatars/044.jpg +0 -0
- data/db/seeds/avatars/045.jpg +0 -0
- data/db/seeds/avatars/046.jpg +0 -0
- data/db/seeds/avatars/047.jpg +0 -0
- data/db/seeds/avatars/048.jpg +0 -0
- data/db/seeds/avatars/049.jpg +0 -0
- data/db/seeds/avatars/050.jpg +0 -0
- data/db/seeds/avatars/051.jpg +0 -0
- data/db/seeds/avatars/052.jpg +0 -0
- data/db/seeds/avatars/053.jpg +0 -0
- data/db/seeds/avatars/054.jpg +0 -0
- data/db/seeds/avatars/055.jpg +0 -0
- data/db/seeds/avatars/056.jpg +0 -0
- data/db/seeds/avatars/057.jpg +0 -0
- data/db/seeds/avatars/058.jpg +0 -0
- data/db/seeds/avatars/059.jpg +0 -0
- data/db/seeds/avatars/060.jpg +0 -0
- data/db/seeds/avatars/061.jpg +0 -0
- data/db/seeds/avatars/062.jpg +0 -0
- data/db/seeds/avatars/063.jpg +0 -0
- data/db/seeds/avatars/064.jpg +0 -0
- data/db/seeds/avatars/065.jpg +0 -0
- data/db/seeds/avatars/066.jpg +0 -0
- data/db/seeds/avatars/067.jpg +0 -0
- data/db/seeds/avatars/068.jpg +0 -0
- data/db/seeds/avatars/069.jpg +0 -0
- data/db/seeds/avatars/070.jpg +0 -0
- data/db/seeds/avatars/071.jpg +0 -0
- data/db/seeds/avatars/072.jpg +0 -0
- data/db/seeds/avatars/073.jpg +0 -0
- data/db/seeds/avatars/074.jpg +0 -0
- data/db/seeds/avatars/075.jpg +0 -0
- data/db/seeds/avatars/076.jpg +0 -0
- data/db/seeds/avatars/077.jpg +0 -0
- data/db/seeds/avatars/078.jpg +0 -0
- data/db/seeds/avatars/079.jpg +0 -0
- data/db/seeds/avatars/080.jpg +0 -0
- data/db/seeds/avatars/081.jpg +0 -0
- data/db/seeds/avatars/082.jpg +0 -0
- data/db/seeds/avatars/083.jpg +0 -0
- data/db/seeds/avatars/084.jpg +0 -0
- data/db/seeds/avatars/085.jpg +0 -0
- data/db/seeds/avatars/086.jpg +0 -0
- data/db/seeds/avatars/087.jpg +0 -0
- data/db/seeds/avatars/088.jpg +0 -0
- data/db/seeds/avatars/089.jpg +0 -0
- data/db/seeds/avatars/090.jpg +0 -0
- data/db/seeds/avatars/091.jpg +0 -0
- data/db/seeds/avatars/092.jpg +0 -0
- data/db/seeds/avatars/093.jpg +0 -0
- data/db/seeds/avatars/094.jpg +0 -0
- data/db/seeds/avatars/095.jpg +0 -0
- data/db/seeds/avatars/096.jpg +0 -0
- data/db/seeds/avatars/097.jpg +0 -0
- data/db/seeds/avatars/098.jpg +0 -0
- data/db/seeds/avatars/099.jpg +0 -0
- data/db/seeds/avatars/100.jpg +0 -0
- data/db/seeds/avatars/CREDITS.md +114 -0
- data/db/seeds/avatars/README.md +25 -0
- data/decidim-core.gemspec +6 -5
- data/lib/decidim/acts_as_author.rb +1 -1
- data/lib/decidim/admin_filter.rb +44 -0
- data/lib/decidim/admin_filters_registry.rb +55 -0
- data/lib/decidim/amendable.rb +1 -2
- data/lib/decidim/api/functions/component_finder_base.rb +1 -1
- data/lib/decidim/api/functions/needs_api_filter_and_order.rb +3 -3
- data/lib/decidim/api/functions/participatory_space_finder_base.rb +1 -1
- data/lib/decidim/api/functions/participatory_space_list_base.rb +1 -1
- data/lib/decidim/api/input_filters/user_entity_input_filter.rb +3 -3
- data/lib/decidim/api/interfaces/author_interface.rb +1 -1
- data/lib/decidim/api/types/organization_type.rb +1 -1
- data/lib/decidim/api/types/user_group_type.rb +1 -1
- data/lib/decidim/api/types/user_type.rb +1 -1
- data/lib/decidim/asset_router/pipeline.rb +2 -2
- data/lib/decidim/assets/tailwind/instance.rb +1 -1
- data/lib/decidim/assets/tailwind/tailwind.config.js.erb +8 -3
- data/lib/decidim/attribute_object/model.rb +2 -2
- data/lib/decidim/attribute_object/type_resolver.rb +1 -3
- data/lib/decidim/attribute_object.rb +2 -2
- data/lib/decidim/attributes.rb +0 -4
- data/lib/decidim/authorable.rb +5 -0
- data/lib/decidim/command.rb +2 -2
- data/lib/decidim/commands/create_resource.rb +63 -0
- data/lib/decidim/commands/destroy_resource.rb +74 -0
- data/lib/decidim/commands/hook_error.rb +8 -0
- data/lib/decidim/commands/resource_handler.rb +85 -0
- data/lib/decidim/commands/update_resource.rb +64 -0
- data/lib/decidim/component_manifest.rb +3 -1
- data/lib/decidim/component_validator.rb +1 -1
- data/lib/decidim/content_blocks/has_related_components.rb +1 -1
- data/lib/decidim/content_parsers/resource_parser.rb +2 -2
- data/lib/decidim/content_processor.rb +1 -1
- data/lib/decidim/content_security_policy.rb +1 -1
- data/lib/decidim/core/engine.rb +12 -15
- data/lib/decidim/core/menu.rb +13 -3
- data/lib/decidim/core/seeds.rb +120 -147
- data/lib/decidim/core/test/factories.rb +24 -3
- data/lib/decidim/core/test/shared_examples/acts_as_author_examples.rb +1 -1
- data/lib/decidim/core/test/shared_examples/amendable/withdraw_amendment_examples.rb +2 -2
- data/lib/decidim/core/test/shared_examples/announcements_examples.rb +3 -3
- data/lib/decidim/core/test/shared_examples/assembly_announcements_examples.rb +4 -4
- data/lib/decidim/core/test/shared_examples/comments_examples.rb +88 -82
- data/lib/decidim/core/test/shared_examples/comments_reports_examples.rb +4 -4
- data/lib/decidim/core/test/shared_examples/digest_mail_examples.rb +1 -1
- data/lib/decidim/core/test/shared_examples/edit_link_shared_examples.rb +1 -1
- data/lib/decidim/core/test/shared_examples/editor_shared_examples.rb +7 -7
- data/lib/decidim/core/test/shared_examples/fingerprint_examples.rb +1 -1
- data/lib/decidim/core/test/shared_examples/follows_examples.rb +3 -3
- data/lib/decidim/core/test/shared_examples/has_attachment_collections.rb +4 -2
- data/lib/decidim/core/test/shared_examples/has_attachments.rb +3 -2
- data/lib/decidim/core/test/shared_examples/has_contextual_help.rb +4 -4
- data/lib/decidim/core/test/shared_examples/has_reference.rb +1 -1
- data/lib/decidim/core/test/shared_examples/logo_email.rb +1 -1
- data/lib/decidim/core/test/shared_examples/manage_component_share_tokens.rb +9 -9
- data/lib/decidim/core/test/shared_examples/map_examples.rb +5 -5
- data/lib/decidim/core/test/shared_examples/paginated_resource_examples.rb +2 -2
- data/lib/decidim/core/test/shared_examples/participatory_space_dropdown_metadata_cell_examples.rb +3 -3
- data/lib/decidim/core/test/shared_examples/preview_component_with_share_token_examples.rb +3 -3
- data/lib/decidim/core/test/shared_examples/process_announcements_examples.rb +4 -4
- data/lib/decidim/core/test/shared_examples/reports_examples.rb +5 -5
- data/lib/decidim/core/test/shared_examples/rich_text_editor_examples.rb +10 -10
- data/lib/decidim/core/test/shared_examples/searchable_participatory_space_examples.rb +1 -1
- data/lib/decidim/core/test/shared_examples/searchable_results_examples.rb +8 -8
- data/lib/decidim/core/test/shared_examples/share_link_examples.rb +2 -2
- data/lib/decidim/core/test/shared_examples/simple_event.rb +1 -1
- data/lib/decidim/core/test/shared_examples/space_cell_changes_button_text_cta.rb +3 -3
- data/lib/decidim/core/test/shared_examples/system_endorse_resource_examples.rb +11 -11
- data/lib/decidim/core/test/shared_examples/translated_event_examples.rb +2 -2
- data/lib/decidim/core/test/shared_examples/uncommentable_component_examples.rb +2 -2
- data/lib/decidim/core/test/shared_examples/with_endorsable_permissions_examples.rb +1 -1
- data/lib/decidim/core/version.rb +1 -1
- data/lib/decidim/core.rb +24 -6
- data/lib/decidim/dependency_resolver.rb +3 -3
- data/lib/decidim/diffy_extension.rb +1 -1
- data/lib/decidim/download_your_data_serializers/download_your_data_user_serializer.rb +2 -1
- data/lib/decidim/engine_router.rb +2 -2
- data/lib/decidim/events/base_event.rb +19 -0
- data/lib/decidim/events/simple_event.rb +1 -0
- data/lib/decidim/exporters/export_manifest.rb +1 -1
- data/lib/decidim/faker/localized.rb +3 -3
- data/lib/decidim/form_builder.rb +4 -4
- data/lib/decidim/hashtag.rb +1 -1
- data/lib/decidim/jsonb_attributes.rb +4 -4
- data/lib/decidim/manifest_messages.rb +2 -2
- data/lib/decidim/organization_settings.rb +5 -5
- data/lib/decidim/paddable.rb +1 -1
- data/lib/decidim/participable.rb +1 -1
- data/lib/decidim/participatory_space_manifest.rb +1 -1
- data/lib/decidim/resourceable.rb +1 -1
- data/lib/decidim/search_resource_fields_mapper.rb +2 -2
- data/lib/decidim/searchable.rb +3 -3
- data/lib/decidim/seeds.rb +62 -0
- data/lib/decidim/stats_registry.rb +2 -2
- data/lib/decidim/translatable_attributes.rb +3 -3
- data/lib/decidim/translatable_resource.rb +1 -1
- data/lib/decidim/view_hooks.rb +1 -1
- data/lib/decidim/view_model.rb +4 -0
- data/lib/decidim/webpacker/esbuild.config.js +14 -0
- data/lib/decidim/webpacker/shakapacker.yml +2 -2
- data/lib/decidim/webpacker/tsconfig.json +11 -0
- data/lib/decidim/webpacker/webpack/custom.js +13 -35
- data/lib/devise/models/decidim_newsletterable.rb +1 -1
- data/lib/tasks/decidim_download_your_data_tasks.rake +2 -2
- data/lib/tasks/decidim_locales_tasks.rake +1 -1
- data/lib/tasks/decidim_mailers_tasks.rake +2 -2
- data/lib/tasks/decidim_metrics_tasks.rake +6 -6
- data/lib/tasks/decidim_procfile.rake +9 -3
- data/lib/tasks/decidim_tasks.rake +5 -4
- data/lib/tasks/decidim_webpacker_tasks.rake +126 -117
- data/lib/tasks/upgrade/decidim_active_storage_migration_tasks.rake +80 -0
- data/lib/tasks/upgrade/decidim_content_blocks_tasks.rake +50 -0
- data/lib/tasks/upgrade/decidim_deduplicate_endorsements.rake +1 -1
- data/lib/tasks/upgrade/decidim_fix_categorization.rake +1 -1
- data/lib/tasks/upgrade/decidim_fix_nickname_uniqueness.rake +1 -1
- data/lib/tasks/upgrade/decidim_fix_short_url_resolver.rake +1 -1
- data/lib/tasks/upgrade/decidim_moderation_tasks.rake +1 -1
- data/lib/tasks/upgrade/decidim_user_moderation.rake +1 -1
- metadata +202 -75
- data/app/cells/decidim/content_blocks/cta/show.erb +0 -12
- data/app/cells/decidim/content_blocks/cta_cell.rb +0 -31
- data/app/cells/decidim/footer_pages/pages.erb +0 -3
- data/app/cells/decidim/footer_pages/topics.erb +0 -12
- data/app/cells/decidim/footer_pages_cell.rb +0 -68
- data/app/packs/src/decidim/vendor/modernizr.js +0 -5
- data/app/queries/decidim/similar_emendations.rb +0 -56
- data/app/uploaders/decidim/cw/application_uploader.rb +0 -77
- data/app/uploaders/decidim/cw/attachment_uploader.rb +0 -56
- data/app/uploaders/decidim/cw/avatar_uploader.rb +0 -24
- data/app/uploaders/decidim/cw/banner_image_uploader.rb +0 -7
- data/app/uploaders/decidim/cw/download_your_data_uploader.rb +0 -15
- data/app/uploaders/decidim/cw/downloader.rb +0 -9
- data/app/uploaders/decidim/cw/hero_image_uploader.rb +0 -10
- data/app/uploaders/decidim/cw/homepage_image_uploader.rb +0 -14
- data/app/uploaders/decidim/cw/image_uploader.rb +0 -78
- data/app/uploaders/decidim/cw/newsletter_template_image_uploader.rb +0 -38
- data/app/uploaders/decidim/cw/oauth_application_logo_uploader.rb +0 -10
- data/app/uploaders/decidim/cw/official_image_footer_uploader.rb +0 -10
- data/app/uploaders/decidim/cw/official_image_header_uploader.rb +0 -10
- data/app/uploaders/decidim/cw/open_data_uploader.rb +0 -23
- data/app/uploaders/decidim/cw/organization_favicon_uploader.rb +0 -18
- data/app/uploaders/decidim/cw/organization_logo_uploader.rb +0 -10
- data/app/uploaders/decidim/cw/record_image_uploader.rb +0 -15
- data/app/uploaders/decidim/downloader.rb +0 -9
- data/app/views/decidim/amendments/compare_draft.html.erb +0 -18
- data/app/views/layouts/decidim/_edit_link.html.erb +0 -0
- data/app/views/layouts/decidim/header/_main_links_mobile.html.erb +0 -36
- data/config/initializers/carrierwave.rb +0 -15
- data/lib/decidim/carrier_wave_migrator_service.rb +0 -287
- data/lib/tasks/decidim_active_storage_migration_tasks.rake +0 -114
- data/lib/tasks/decidim_content_blocks_tasks.rake +0 -48
- /data/app/views/layouts/decidim/header/{_menu_breadcrumb_main_dropdown.html.erb → _menu_breadcrumb_main_dropdown_desktop.html.erb} +0 -0
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
@@ -0,0 +1,114 @@
|
|
1
|
+
#### Version 1.0 – 12th October 2016
|
2
|
+
|
3
|
+
* [001.jpg](https://www.pexels.com/photo/blonde-haired-woman-in-blue-shirt-y-27411/)
|
4
|
+
* [002.jpg](https://www.pexels.com/photo/man-boy-black-and-white-person-9687/)
|
5
|
+
* [003.jpg](https://www.pexels.com/photo/camera-photographer-woman-fashion-7529/)
|
6
|
+
* [004.jpg](https://www.pexels.com/photo/man-portrait-street-people-108048/)
|
7
|
+
* [005.jpg](https://www.pexels.com/photo/woman-winter-grey-river-61100/)
|
8
|
+
* [006.jpg](https://www.pexels.com/photo/man-in-red-and-blue-v-neck-shirt-101584/)
|
9
|
+
* [007.jpg](https://www.pexels.com/photo/fashion-woman-foggy-river-61120/)
|
10
|
+
* [008.jpg](https://www.pexels.com/photo/men-s-black-blazer-31330/)
|
11
|
+
* [009.jpg](https://www.pexels.com/photo/woman-in-black-scoop-neck-shirt-smiling-38554/)
|
12
|
+
* [010.jpg](https://www.pexels.com/photo/man-wearing-green-tank-top-looking-on-man-wearing-black-leather-jacket-during-daytime-106224/)
|
13
|
+
* [011.jpg](https://www.pexels.com/photo/woman-wearing-black-top-27949/)
|
14
|
+
* [012.jpg](https://www.pexels.com/photo/adult-african-ethnicity-bow-tie-cap-173295/)
|
15
|
+
* [013.jpg](https://www.pexels.com/photo/woman-girl-hairs-portrait-69494/)
|
16
|
+
* [014.jpg](https://www.pexels.com/photo/person-man-confident-business-50855/)
|
17
|
+
* [015.jpg](https://www.pexels.com/photo/woman-in-blue-denim-shorts-standing-in-front-of-black-brick-wall-175703/)
|
18
|
+
* [016.jpg](https://www.pexels.com/photo/man-male-smart-businessman-59554/)
|
19
|
+
* [017.jpg](https://www.pexels.com/photo/person-lady-wall-smartphone-94560/)
|
20
|
+
* [018.jpg](https://www.pexels.com/photo/man-wearing-blue-dye-shirt-standing-at-front-165809/)
|
21
|
+
* [019.jpg](https://www.pexels.com/photo/music-guitar-woman-person-8988/)
|
22
|
+
* [020.jpg](https://www.pexels.com/photo/175697/)
|
23
|
+
* [021.jpg](https://www.pexels.com/photo/88641/)
|
24
|
+
* [022.jpg](https://www.pexels.com/photo/175697/)
|
25
|
+
* [023.jpg](https://www.pexels.com/photo/woman-in-black-framed-eyeglasses-drinking-185937/)
|
26
|
+
* [024.jpg](https://www.pexels.com/photo/city-man-coffee-men-105448/)
|
27
|
+
* [025.jpg](https://www.pexels.com/photo/woman-relaxation-girl-young-48196/)
|
28
|
+
* [026.jpg](https://www.pexels.com/photo/person-people-holi-festival-68775/)
|
29
|
+
* [027.jpg](https://www.pexels.com/photo/flowers-girl-portrait-brunette-110442/)
|
30
|
+
* [028.jpg](https://www.pexels.com/photo/old-man-6110/)
|
31
|
+
* [029.jpg](https://www.pexels.com/photo/woman-in-black-dress-and-teal-white-fringe-poncho-24326/)
|
32
|
+
* [030.jpg](https://www.pexels.com/photo/man-young-happy-smiling-91227/)
|
33
|
+
|
34
|
+
#### Version 1.1 – 27th December 2016
|
35
|
+
|
36
|
+
* [031.jpg](https://www.pexels.com/photo/woman-in-black-off-shoulder-dress-standing-in-green-flower-field-during-daytime-227349/)
|
37
|
+
* [032.jpg](https://www.pexels.com/photo/man-wearing-black-framed-sunglasses-making-face-while-taking-self-photo-128998/)
|
38
|
+
* [033.jpg](https://www.pexels.com/photo/man-in-gray-crew-neck-sweatshirt-and-black-pants-sitting-in-gray-concrete-holding-string-instrument-near-body-of-water-160651/)
|
39
|
+
* [034.jpg](https://www.pexels.com/photo/bangs-beautiful-eyeglasses-fern-240082/)
|
40
|
+
* [035.jpg](https://www.pexels.com/photo/adult-beautiful-casual-cell-phone-207452/)
|
41
|
+
* [036.jpg](https://www.pexels.com/photo/woman-in-white-black-half-sleeved-shirt-smiling-25845/)
|
42
|
+
* [037.jpg](https://www.pexels.com/photo/man-person-portrait-autumn-16622/)
|
43
|
+
* [038.jpg](https://www.pexels.com/photo/beautiful-blur-close-up-fashion-102602/)
|
44
|
+
* [039.jpg](https://www.pexels.com/photo/portrait-of-smiling-girl-against-white-background-253758/)
|
45
|
+
* [040.jpg](https://www.pexels.com/photo/man-wearing-dress-shirt-posing-beside-wall-199937/)
|
46
|
+
|
47
|
+
#### Version 1.2 – 16th September 2017
|
48
|
+
|
49
|
+
* [041.jpg](https://www.pexels.com/photo/portrait-of-young-woman-255274/)
|
50
|
+
* [042.jpg](https://www.pexels.com/photo/portrait-of-young-woman-311178/)
|
51
|
+
* [043.jpg](https://www.pexels.com/photo/portrait-of-young-man-251829/)
|
52
|
+
* [044.jpg](https://www.pexels.com/photo/adult-beautiful-blonde-blur-324658/)
|
53
|
+
* [045.jpg](https://www.pexels.com/photo/man-sitting-next-to-couple-of-person-walking-on-the-street-during-daytime-211050/)
|
54
|
+
* [046.jpg](https://www.pexels.com/photo/attractive-beautiful-beauty-cute-539727/)
|
55
|
+
* [047.jpg](https://www.pexels.com/photo/portrait-of-smiling-man-325682/)
|
56
|
+
* [048.jpg](https://www.pexels.com/photo/man-people-asian-photographer-46219/)
|
57
|
+
* [049.jpg](https://www.pexels.com/photo/cute-female-flora-flower-206505/)
|
58
|
+
* [050.jpg](https://www.pexels.com/photo/adult-beard-boy-casual-220453/)
|
59
|
+
* [051.jpg](https://www.pexels.com/photo/analog-watch-businessman-casual-close-up-544716/)
|
60
|
+
* [052.jpg](https://www.pexels.com/photo/portrait-of-young-woman-using-mobile-phone-in-cafe-323503/)
|
61
|
+
* [053.jpg](https://www.pexels.com/photo/selfie-portrait-man-sunglasses-7823/)
|
62
|
+
* [054.jpg](https://www.pexels.com/photo/attractive-beautiful-cute-face-355020/)
|
63
|
+
* [055.jpg](https://visualhunt.com/photo/121283/)
|
64
|
+
* [056.jpg](https://visualhunt.com/photo/199309/)
|
65
|
+
* [057.jpg](https://visualhunt.com/photo/198137/)
|
66
|
+
* [058.jpg](https://visualhunt.com/photo/198731/)
|
67
|
+
* [059.jpg](https://visualhunt.com/photo/199639/)
|
68
|
+
* [060.jpg](https://visualhunt.com/photo/199743/)
|
69
|
+
* [061.jpg](https://visualhunt.com/photo/199165/)
|
70
|
+
* [062.jpg](https://visualhunt.com/photo/199081/)
|
71
|
+
* [063.jpg](https://unsplash.com/photos/EdA845C1yXc)
|
72
|
+
* [064.jpg](https://unsplash.com/photos/NorYfP4rwmQ)
|
73
|
+
* [065.jpg](https://unsplash.com/photos/6anudmpILw4)
|
74
|
+
* [066.jpg](https://unsplash.com/photos/c0UxuPFtovA)
|
75
|
+
* [067.jpg](https://unsplash.com/photos/25VW-Ilb74g)
|
76
|
+
* [068.jpg](https://unsplash.com/photos/rVH9D9UvPRs)
|
77
|
+
* [069.jpg](https://unsplash.com/photos/cvpk5Y4ZWUs)
|
78
|
+
* [070.jpg](https://unsplash.com/photos/jRA-yoDL68M)
|
79
|
+
|
80
|
+
#### Version 1.3 – 4th January 2018
|
81
|
+
|
82
|
+
* [071.jpg](https://www.pexels.com/photo/beard-blur-casual-close-up-462680/)
|
83
|
+
* [072.jpg](https://www.pexels.com/photo/adult-attractive-blue-casual-415326/)
|
84
|
+
* [073.jpg](https://unsplash.com/photos/SpIKPT8zeAs)
|
85
|
+
* [074.jpg](https://unsplash.com/photos/s068iS_J_5Q)
|
86
|
+
* [075.jpg](https://unsplash.com/photos/6Qo_vw9kRlQ)
|
87
|
+
* [076.jpg](https://unsplash.com/photos/W7pk4FfrSY0)
|
88
|
+
* [077.jpg](https://unsplash.com/photos/Nm70URdtf3c)
|
89
|
+
* [078.jpg](https://unsplash.com/photos/pLzBsI6irDg)
|
90
|
+
* [079.jpg](https://unsplash.com/photos/IJrIeCs3D4g)
|
91
|
+
* [080.jpg](https://unsplash.com/photos/ciLAii9yZEo)
|
92
|
+
* [081.jpg](https://unsplash.com/photos/_l9LXmpgzRY)
|
93
|
+
* [082.jpg](https://www.pexels.com/photo/man-in-red-and-white-plaid-dress-shirt-and-black-bottoms-with-black-frame-eyeglasses-769728/)
|
94
|
+
* [083.jpg](https://www.pexels.com/photo/woman-in-gray-plunging-neckline-sleeveless-top-671800/)
|
95
|
+
* [084.jpg](https://unsplash.com/photos/ZGa9d1a_4tA)
|
96
|
+
* [085.jpg](https://unsplash.com/photos/-lYtsl62gyU)
|
97
|
+
* [086.jpg](https://unsplash.com/photos/IcML2g2svwA)
|
98
|
+
* [087.jpg](https://unsplash.com/photos/ILip77SbmOE)
|
99
|
+
* [088.jpg](https://unsplash.com/photos/aI45j8n3-5Y)
|
100
|
+
* [089.jpg](https://unsplash.com/photos/gKbrJTDV6os)
|
101
|
+
* [090.jpg](https://unsplash.com/photos/UPAtLXAEDi4)
|
102
|
+
|
103
|
+
#### Version 1.4 – 19th March 2018
|
104
|
+
|
105
|
+
* [091.jpg](https://unsplash.com/photos/eO_Uu_PMDKk)
|
106
|
+
* [092.jpg](https://unsplash.com/photos/ZBOv0GXXaiA)
|
107
|
+
* [093.jpg](https://unsplash.com/photos/mKeLPVQqEXk)
|
108
|
+
* [094.jpg](https://unsplash.com/photos/p7zGmc33s0U)
|
109
|
+
* [095.jpg](https://unsplash.com/photos/go_BEDXMeE0)
|
110
|
+
* [096.jpg](https://unsplash.com/photos/6PezXMvuCgk)
|
111
|
+
* [097.jpg](https://unsplash.com/photos/vMV6r4VRhJ8)
|
112
|
+
* [098.jpg](https://unsplash.com/photos/nOHn3pIyPaw)
|
113
|
+
* [099.jpg](https://unsplash.com/photos/das6NrjLoM0)
|
114
|
+
* [100.jpg](https://unsplash.com/photos/b1YG4_8wRYs)
|
@@ -0,0 +1,25 @@
|
|
1
|
+
# inter-faces
|
2
|
+
|
3
|
+
These images where extracted from the [inter-faces repository](https://github.com/cjdowner/interfaces)
|
4
|
+
|
5
|
+
**Latest release:** 1.4 – 19th March 2018
|
6
|
+
|
7
|
+
This download contains 100 images of people that can be applied as avatars for UI and the web, App Store screenshots, marketing graphics, etc. Use them for whatever you like, free.
|
8
|
+
|
9
|
+
## <a href="https://github.com/cjdowner/interfaces/archive/master.zip">⬇️ Download All Images</a>
|
10
|
+
|
11
|
+
All images have been sourced from various community-powered stock photo websites, and have been cropped and resized to three different sizes.
|
12
|
+
|
13
|
+
A credits file has been included with links to the original images. There you will find the ability to support the photographer with a donation.
|
14
|
+
|
15
|
+
## License
|
16
|
+
|
17
|
+
>All avatars are licensed under the **Creative Commons Zero (CC0) license**. This means the pictures are completely free to be used for any legal purpose.
|
18
|
+
>
|
19
|
+
>- The pictures are **free** for personal and even for commercial use.
|
20
|
+
>- You can modify, copy and distribute the photos.
|
21
|
+
>- All without asking for permission or setting a link to the source. So, **attribution is not required**.
|
22
|
+
>
|
23
|
+
>The only restriction is that identifiable people may not appear in a bad light or in a way that they may find offensive, unless they give their consent.
|
24
|
+
>
|
25
|
+
>The CC0 license was released by the non-profit organization Creative Commons (CC). Get more information about Creative Commons images and the license on the [official license page](https://creativecommons.org/publicdomain/zero/1.0/).
|
data/decidim-core.gemspec
CHANGED
@@ -22,7 +22,7 @@ Gem::Specification.new do |s|
|
|
22
22
|
s.summary = "The core of the Decidim framework."
|
23
23
|
s.description = "Adds core features so other engines can hook into the framework."
|
24
24
|
s.license = "AGPL-3.0"
|
25
|
-
s.required_ruby_version = "~> 3.
|
25
|
+
s.required_ruby_version = "~> 3.2.0"
|
26
26
|
|
27
27
|
s.files = Dir.chdir(__dir__) do
|
28
28
|
`git ls-files -z`.split("\x0").select do |f|
|
@@ -35,7 +35,6 @@ Gem::Specification.new do |s|
|
|
35
35
|
s.add_dependency "acts_as_list", "~> 1.0"
|
36
36
|
s.add_dependency "batch-loader", "~> 1.2"
|
37
37
|
s.add_dependency "browser", "~> 2.7"
|
38
|
-
s.add_dependency "carrierwave", "~> 2.2.5", ">= 2.2.5"
|
39
38
|
s.add_dependency "cells-erb", "~> 0.1.0"
|
40
39
|
s.add_dependency "cells-rails", "~> 0.1.3"
|
41
40
|
s.add_dependency "charlock_holmes", "~> 0.7"
|
@@ -50,12 +49,14 @@ Gem::Specification.new do |s|
|
|
50
49
|
s.add_dependency "foundation_rails_helper", "~> 4.0"
|
51
50
|
s.add_dependency "geocoder", "~> 1.8"
|
52
51
|
s.add_dependency "hashdiff", ">= 0.4.0", "< 2.0.0"
|
52
|
+
s.add_dependency "image_processing", "~> 1.2"
|
53
53
|
s.add_dependency "invisible_captcha", "~> 0.12"
|
54
54
|
s.add_dependency "kaminari", "~> 1.2", ">= 1.2.1"
|
55
55
|
s.add_dependency "loofah", "~> 2.19", ">= 2.19.1"
|
56
56
|
s.add_dependency "mime-types", ">= 1.16", "< 4.0"
|
57
57
|
s.add_dependency "mini_magick", "~> 4.9"
|
58
58
|
s.add_dependency "net-smtp", "~> 0.3.1"
|
59
|
+
s.add_dependency "nokogiri", "~> 1.16", ">= 1.16.2"
|
59
60
|
s.add_dependency "omniauth", "~> 2.0"
|
60
61
|
s.add_dependency "omniauth-facebook", "~> 5.0"
|
61
62
|
s.add_dependency "omniauth-google-oauth2", "~> 1.0"
|
@@ -70,10 +71,10 @@ Gem::Specification.new do |s|
|
|
70
71
|
# Also note that we need Rails 6.1.5+,
|
71
72
|
# see https://gist.github.com/yahonda/2776d8d7b6ea7045359f38c10449937b
|
72
73
|
s.add_dependency "psych", "~> 4.0"
|
73
|
-
s.add_dependency "rack", "~> 2.2", ">= 2.2.
|
74
|
+
s.add_dependency "rack", "~> 2.2", ">= 2.2.8.1"
|
74
75
|
s.add_dependency "rack-attack", "~> 6.0"
|
75
|
-
s.add_dependency "rails", "~>
|
76
|
-
s.add_dependency "rails-i18n", "~>
|
76
|
+
s.add_dependency "rails", "~> 7.0.8"
|
77
|
+
s.add_dependency "rails-i18n", "~> 7.0"
|
77
78
|
s.add_dependency "ransack", "~> 3.2.1"
|
78
79
|
s.add_dependency "redis", "~> 4.1"
|
79
80
|
s.add_dependency "request_store", "~> 1.5.0"
|
@@ -14,7 +14,7 @@ module Decidim
|
|
14
14
|
#
|
15
15
|
# Return: The presenter for the current author.
|
16
16
|
def presenter
|
17
|
-
raise
|
17
|
+
raise NotImplementedError, "Authors must return an instance of its Presenter via this method."
|
18
18
|
end
|
19
19
|
end
|
20
20
|
end
|
@@ -0,0 +1,44 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Decidim
|
4
|
+
#
|
5
|
+
# This class handles all logic regarding registering filters
|
6
|
+
#
|
7
|
+
class AdminFilter
|
8
|
+
attr_accessor :filters, :dynamically_translated_filters, :filters_with_values
|
9
|
+
|
10
|
+
def initialize(name)
|
11
|
+
@name = name
|
12
|
+
@filters = []
|
13
|
+
@dynamically_translated_filters = []
|
14
|
+
@filters_with_values = {}
|
15
|
+
end
|
16
|
+
|
17
|
+
def add_filters(*filters)
|
18
|
+
@filters += filters
|
19
|
+
end
|
20
|
+
|
21
|
+
def add_dynamically_translated_filters(*filters)
|
22
|
+
@dynamically_translated_filters += filters
|
23
|
+
end
|
24
|
+
|
25
|
+
def add_filters_with_values(**items)
|
26
|
+
@filters_with_values.merge!(items)
|
27
|
+
end
|
28
|
+
|
29
|
+
def build_for(context)
|
30
|
+
raise "Filter #{@name} is not registered" if registry.blank?
|
31
|
+
|
32
|
+
registry.configurations.each do |configuration|
|
33
|
+
context.instance_exec(self, &configuration)
|
34
|
+
end
|
35
|
+
self
|
36
|
+
end
|
37
|
+
|
38
|
+
private
|
39
|
+
|
40
|
+
def registry
|
41
|
+
@registry ||= AdminFiltersRegistry.find(@name)
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
@@ -0,0 +1,55 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Decidim
|
4
|
+
#
|
5
|
+
# This class handles all logic regarding registering filters
|
6
|
+
#
|
7
|
+
class AdminFiltersRegistry
|
8
|
+
class << self
|
9
|
+
#
|
10
|
+
# Finds a filter by name or creates it if it does not exist.
|
11
|
+
#
|
12
|
+
# @param name [Symbol] Name of the filter
|
13
|
+
# @param &block [Filter] Registration body of the filter. It is stored to
|
14
|
+
# be evaluated at rendering time
|
15
|
+
#
|
16
|
+
def register(name, &block)
|
17
|
+
filter = find(name) || create(name)
|
18
|
+
|
19
|
+
filter.configurations << block
|
20
|
+
|
21
|
+
filter
|
22
|
+
end
|
23
|
+
|
24
|
+
#
|
25
|
+
# Finds a filter by name
|
26
|
+
#
|
27
|
+
# @param name [Symbol] The name of the filter
|
28
|
+
#
|
29
|
+
def find(name)
|
30
|
+
all[name]
|
31
|
+
end
|
32
|
+
|
33
|
+
#
|
34
|
+
# Creates an empty named filter
|
35
|
+
#
|
36
|
+
# @param name [Symbol] The name of the filter
|
37
|
+
#
|
38
|
+
def create(name)
|
39
|
+
all[name] = new
|
40
|
+
end
|
41
|
+
|
42
|
+
private
|
43
|
+
|
44
|
+
def all
|
45
|
+
@all ||= {}
|
46
|
+
end
|
47
|
+
end
|
48
|
+
|
49
|
+
attr_reader :configurations
|
50
|
+
|
51
|
+
def initialize
|
52
|
+
@configurations = []
|
53
|
+
end
|
54
|
+
end
|
55
|
+
end
|
data/lib/decidim/amendable.rb
CHANGED
@@ -16,8 +16,7 @@ module Decidim
|
|
16
16
|
has_many :emendations,
|
17
17
|
through: :amendments,
|
18
18
|
source: :emendation,
|
19
|
-
source_type: name
|
20
|
-
inverse_of: :emendations
|
19
|
+
source_type: name
|
21
20
|
|
22
21
|
# resource.amenders : users that have created emendations for the original resource
|
23
22
|
has_many :amenders,
|
@@ -3,7 +3,7 @@
|
|
3
3
|
module Decidim
|
4
4
|
module Core
|
5
5
|
module NeedsApiFilterAndOrder
|
6
|
-
# Converts the result of a GraphQL::Schema::InputObject into
|
6
|
+
# Converts the result of a GraphQL::Schema::InputObject into ActiveRecord where argument
|
7
7
|
# Each value InputObject can return 4 types of values:
|
8
8
|
# 1. A Scalar, will filter by a simple match (==) with the default field name
|
9
9
|
# 2. A Hash, then the field name will be ignored and the key from the hash used for filtering
|
@@ -28,10 +28,10 @@ module Decidim
|
|
28
28
|
end
|
29
29
|
end
|
30
30
|
|
31
|
-
# Converts the result of a GraphQL::Schema::InputObject into
|
31
|
+
# Converts the result of a GraphQL::Schema::InputObject into ActiveRecord order argument
|
32
32
|
# Each value of InputObject can return 3 types of values:
|
33
33
|
# 1. A Scalar, will order using the default field name
|
34
|
-
# 2. A Hash, the
|
34
|
+
# 2. A Hash, the field name will be ignored and the key from the hash used for ordering
|
35
35
|
# 3. A Proc, the input can use it to construct queries using Arel
|
36
36
|
# The Proc will receive the locale as argument
|
37
37
|
def add_order_keys(order_input)
|
@@ -38,7 +38,7 @@ module Decidim
|
|
38
38
|
}
|
39
39
|
argument :name,
|
40
40
|
type: String,
|
41
|
-
description: "Filters by name of the user entity. Searches (case
|
41
|
+
description: "Filters by name of the user entity. Searches (case-insensitive) any fragment of the provided string",
|
42
42
|
required: false,
|
43
43
|
prepare: lambda { |value, _ctx|
|
44
44
|
[
|
@@ -49,7 +49,7 @@ module Decidim
|
|
49
49
|
}
|
50
50
|
argument :nickname,
|
51
51
|
type: String,
|
52
|
-
description: "Filters by nickname of the user entity. Searches (case
|
52
|
+
description: "Filters by nickname of the user entity. Searches (case-insensitive) any fragment of the provided string",
|
53
53
|
required: false,
|
54
54
|
prepare: lambda { |value, _ctx|
|
55
55
|
value = value[1..-1] if value.starts_with? "@"
|
@@ -61,7 +61,7 @@ module Decidim
|
|
61
61
|
}
|
62
62
|
argument :wildcard,
|
63
63
|
type: String,
|
64
|
-
description: "Filters by nickname or name of the user entity. Searches (case
|
64
|
+
description: "Filters by nickname or name of the user entity. Searches (case-insensitive) any fragment of the provided string",
|
65
65
|
required: false,
|
66
66
|
prepare: lambda { |value, _ctx|
|
67
67
|
value = value[1..-1] if value.starts_with? "@"
|
@@ -15,7 +15,7 @@ module Decidim
|
|
15
15
|
field :avatar_url, String, "The author's avatar url", null: false
|
16
16
|
field :profile_path, String, "The author's profile path", null: false
|
17
17
|
field :badge, String, "The author's badge icon", null: false
|
18
|
-
field :organization_name,
|
18
|
+
field :organization_name, Decidim::Core::TranslatedFieldType, "The authors's organization name", null: false
|
19
19
|
|
20
20
|
def organization_name
|
21
21
|
object.organization.name
|
@@ -5,7 +5,7 @@ module Decidim
|
|
5
5
|
class OrganizationType < Decidim::Api::Types::BaseObject
|
6
6
|
description "The current organization"
|
7
7
|
|
8
|
-
field :name,
|
8
|
+
field :name, Decidim::Core::TranslatedFieldType, "The name of the current organization", null: true
|
9
9
|
|
10
10
|
field :stats, [Core::StatisticType, { null: true }], description: "The statistics associated to this object", null: true
|
11
11
|
|
@@ -30,7 +30,7 @@ module Decidim
|
|
30
30
|
object.presenter.profile_path
|
31
31
|
end
|
32
32
|
|
33
|
-
field :organization_name,
|
33
|
+
field :organization_name, Decidim::Core::TranslatedFieldType, "The user group's organization name", null: false
|
34
34
|
|
35
35
|
def organization_name
|
36
36
|
object.organization.name
|
@@ -23,7 +23,7 @@ module Decidim
|
|
23
23
|
description: ["If the user making the request is logged in, it will return whether this recipient accepts a conversation or not.",
|
24
24
|
" It will return false for non-logged requests."].join
|
25
25
|
|
26
|
-
field :organization_name,
|
26
|
+
field :organization_name, Decidim::Core::TranslatedFieldType, "The user's organization name", null: false
|
27
27
|
|
28
28
|
field :deleted, GraphQL::Types::Boolean, "Whether the user's account has been deleted or not", null: false
|
29
29
|
|
@@ -26,8 +26,8 @@ module Decidim
|
|
26
26
|
# options Rails route helpers accept
|
27
27
|
# @return [String] The full URL to the asset or when host cannot be
|
28
28
|
# resolved, the asset path.
|
29
|
-
def url(**
|
30
|
-
path = ActionController::Base.helpers.asset_pack_path(asset, **
|
29
|
+
def url(**)
|
30
|
+
path = ActionController::Base.helpers.asset_pack_path(asset, **)
|
31
31
|
return path if path.match?(%r{\A(https?:)?//})
|
32
32
|
|
33
33
|
"#{asset_host}#{path}"
|
@@ -21,7 +21,7 @@ module Decidim
|
|
21
21
|
decidim_gems = Bundler.load.specs.select { |spec| spec.name =~ /^decidim-/ }.map(&:full_gem_path)
|
22
22
|
content_directories = decidim_gems.push(".")
|
23
23
|
|
24
|
-
# The variable expected by tailwind is a
|
24
|
+
# The variable expected by tailwind is a JavaScript array of strings
|
25
25
|
# The directory globbing with the star is done in Ruby because it was causing an infinite loop
|
26
26
|
# when processed by Tailwind
|
27
27
|
content_directories_as_array_of_strings = content_directories.map { |content_directory| "'#{content_directory}'" }.join(",")
|
@@ -36,9 +36,9 @@ module.exports = {
|
|
36
36
|
primary: withOpacity("--primary-rgb"),
|
37
37
|
secondary: withOpacity("--secondary-rgb"),
|
38
38
|
tertiary: withOpacity("--tertiary-rgb"),
|
39
|
-
success:
|
40
|
-
alert:
|
41
|
-
warning:
|
39
|
+
success: "#28A745",
|
40
|
+
alert: "#ED1C24",
|
41
|
+
warning: "#FFB703",
|
42
42
|
black: "#020203",
|
43
43
|
gray: {
|
44
44
|
DEFAULT: "#6B7280CC", // 80% opacity
|
@@ -74,6 +74,11 @@ module.exports = {
|
|
74
74
|
"3xl": ["32px", "40px"],
|
75
75
|
"4xl": ["36px", "45px"],
|
76
76
|
"5xl": ["48px", "60px"]
|
77
|
+
},
|
78
|
+
extend: {
|
79
|
+
transitionProperty: {
|
80
|
+
'top': 'top',
|
81
|
+
}
|
77
82
|
}
|
78
83
|
},
|
79
84
|
plugins: [require("@tailwindcss/typography")]
|
@@ -31,8 +31,8 @@ module Decidim
|
|
31
31
|
end
|
32
32
|
|
33
33
|
class_methods do
|
34
|
-
def attribute(name, type = ActiveModel::Type::Value.new, **
|
35
|
-
typedef = AttributeObject.types.resolve(type, **
|
34
|
+
def attribute(name, type = ActiveModel::Type::Value.new, **)
|
35
|
+
typedef = AttributeObject.types.resolve(type, **)
|
36
36
|
|
37
37
|
super(name, typedef[:type], **typedef[:options])
|
38
38
|
|
@@ -27,9 +27,7 @@ module Decidim
|
|
27
27
|
end
|
28
28
|
|
29
29
|
def exists?(type)
|
30
|
-
|
31
|
-
# ActiveModel::Type.registry.send(:registrations).has_key?(type)
|
32
|
-
ActiveModel::Type.registry.send(:registrations).any? { |t| t.send(:name) == type }
|
30
|
+
ActiveModel::Type.registry.send(:registrations).has_key?(type)
|
33
31
|
end
|
34
32
|
|
35
33
|
private
|
@@ -17,8 +17,8 @@ module Decidim
|
|
17
17
|
@types ||= TypeResolver.new
|
18
18
|
end
|
19
19
|
|
20
|
-
def self.type(type, **
|
21
|
-
typedef = types.resolve(type, **
|
20
|
+
def self.type(type, **)
|
21
|
+
typedef = types.resolve(type, **)
|
22
22
|
|
23
23
|
ActiveModel::Type.lookup(typedef[:type], **typedef[:options])
|
24
24
|
end
|
data/lib/decidim/attributes.rb
CHANGED
@@ -29,10 +29,6 @@ module Decidim
|
|
29
29
|
ActiveModel::Type.register(:"decidim/attributes/clean_string", Decidim::Attributes::CleanString)
|
30
30
|
ActiveModel::Type.register(:"decidim/attributes/blob", Decidim::Attributes::Blob)
|
31
31
|
|
32
|
-
# Overrides
|
33
|
-
# The overrides deletion can be omitted after upgrade to Rails 7.0 (delete this after upgrade)
|
34
|
-
ActiveModel::Type.registry.send(:registrations).delete_if { |r| r.send(:name) == :integer }
|
35
|
-
|
36
32
|
ActiveModel::Type.register(:integer, Decidim::Attributes::Integer)
|
37
33
|
end
|
38
34
|
end
|
data/lib/decidim/authorable.rb
CHANGED
@@ -7,6 +7,7 @@ module Decidim
|
|
7
7
|
# this latest case the Coauthorable concern should be used instead of Authorable.
|
8
8
|
module Authorable
|
9
9
|
extend ActiveSupport::Concern
|
10
|
+
include Decidim::TranslatableAttributes
|
10
11
|
|
11
12
|
included do
|
12
13
|
belongs_to :author, polymorphic: true, foreign_key: "decidim_author_id", foreign_type: "decidim_author_type"
|
@@ -68,6 +69,10 @@ module Decidim
|
|
68
69
|
decidim_author_type == Decidim::Organization.name
|
69
70
|
end
|
70
71
|
|
72
|
+
def author_name
|
73
|
+
translated_attribute(normalized_author.name)
|
74
|
+
end
|
75
|
+
|
71
76
|
private
|
72
77
|
|
73
78
|
def verified_user_group
|
data/lib/decidim/command.rb
CHANGED
@@ -10,10 +10,10 @@ module Decidim
|
|
10
10
|
include ::Wisper::Publisher
|
11
11
|
delegate :locale, to: :I18n
|
12
12
|
|
13
|
-
def self.call(
|
13
|
+
def self.call(*, **, &)
|
14
14
|
event_recorder = Decidim::EventRecorder.new
|
15
15
|
|
16
|
-
command = new(
|
16
|
+
command = new(*, **)
|
17
17
|
command.subscribe(event_recorder)
|
18
18
|
command.evaluate(&) if block_given?
|
19
19
|
command.call
|