From f1cd4dbefa3201647ef00e28942d1943f36955d5 Mon Sep 17 00:00:00 2001 From: tischsoic Date: Wed, 11 Mar 2026 10:14:39 +0100 Subject: [PATCH 01/14] IBX-11236: Phase 1 - Migrate simple ibexa-label elements to DS component --- .../views/themes/admin/account/login/index.html.twig | 4 ++-- .../notifications/filters/form_fields.html.twig | 8 ++++---- .../modal/user_group_invitation_modal.html.twig | 4 ++-- .../views/themes/admin/content/tab/content.html.twig | 2 +- .../admin/content/widget/content_create.html.twig | 2 +- .../views/themes/admin/trash/list.html.twig | 4 ++-- .../ui/field_type/edit/ibexa_image_asset.html.twig | 2 +- .../views/themes/admin/ui/search/filters.html.twig | 12 ++++++------ 8 files changed, 19 insertions(+), 19 deletions(-) diff --git a/src/bundle/Resources/views/themes/admin/account/login/index.html.twig b/src/bundle/Resources/views/themes/admin/account/login/index.html.twig index 1b3ccfb103..c4f474dd22 100644 --- a/src/bundle/Resources/views/themes/admin/account/login/index.html.twig +++ b/src/bundle/Resources/views/themes/admin/account/login/index.html.twig @@ -22,7 +22,7 @@ {% block login_form_fields %}
{%- embed '@ibexadesign/ui/component/input_text.html.twig' -%} {% block content %} @@ -43,7 +43,7 @@
{%- embed '@ibexadesign/ui/component/input_text.html.twig' with { type: 'password', diff --git a/src/bundle/Resources/views/themes/admin/account/notifications/filters/form_fields.html.twig b/src/bundle/Resources/views/themes/admin/account/notifications/filters/form_fields.html.twig index 5ebf1274ac..323de63cce 100644 --- a/src/bundle/Resources/views/themes/admin/account/notifications/filters/form_fields.html.twig +++ b/src/bundle/Resources/views/themes/admin/account/notifications/filters/form_fields.html.twig @@ -34,9 +34,9 @@ } %} {% block content %}
- + {{ form_widget(form.children.min, { attr: { 'data-seconds': 0, @@ -48,9 +48,9 @@
- + {{ form_widget(form.children.max, { attr: { 'data-seconds': 0, diff --git a/src/bundle/Resources/views/themes/admin/content/modal/user_group_invitation_modal.html.twig b/src/bundle/Resources/views/themes/admin/content/modal/user_group_invitation_modal.html.twig index ac28e89b22..53d18f64de 100644 --- a/src/bundle/Resources/views/themes/admin/content/modal/user_group_invitation_modal.html.twig +++ b/src/bundle/Resources/views/themes/admin/content/modal/user_group_invitation_modal.html.twig @@ -22,9 +22,9 @@ {% block entries_labels %} {% trans_default_domain 'ibexa_locationview' %} - + {% endblock %} {% set info = 'modal.info'|trans|desc('Enter your team members email addresses.') %} diff --git a/src/bundle/Resources/views/themes/admin/content/tab/content.html.twig b/src/bundle/Resources/views/themes/admin/content/tab/content.html.twig index 9686cd352f..5be18524ec 100644 --- a/src/bundle/Resources/views/themes/admin/content/tab/content.html.twig +++ b/src/bundle/Resources/views/themes/admin/content/tab/content.html.twig @@ -5,7 +5,7 @@ {% if languages|length > 1 %}
- + {{ 'tab.view.preview'|trans()|desc('Preview') }} {% set choices = languages|map((language) => { value: path('ibexa.content.translation.view', { 'contentId': location.contentId, diff --git a/src/bundle/Resources/views/themes/admin/content/widget/content_create.html.twig b/src/bundle/Resources/views/themes/admin/content/widget/content_create.html.twig index 4075118c31..6f43d2f79f 100644 --- a/src/bundle/Resources/views/themes/admin/content/widget/content_create.html.twig +++ b/src/bundle/Resources/views/themes/admin/content/widget/content_create.html.twig @@ -17,7 +17,7 @@
- + {{ 'content.create.select_language'|trans|desc('Select a language:') }}
{% if form.language.vars.choices|length == 1 %} {{ form_widget(form.language, {'attr': {'class': 'ibexa-content-create form-control', 'readonly': true}}) }} diff --git a/src/bundle/Resources/views/themes/admin/trash/list.html.twig b/src/bundle/Resources/views/themes/admin/trash/list.html.twig index 2aa53dbe29..70e60e90f5 100644 --- a/src/bundle/Resources/views/themes/admin/trash/list.html.twig +++ b/src/bundle/Resources/views/themes/admin/trash/list.html.twig @@ -31,9 +31,9 @@ {% set creatorSearch %}
- +
@@ -37,7 +37,7 @@ }) }}
- + {{ 'search.last.modified'|trans|desc('Last modified') }} {{ form_widget(form.last_modified_select, { 'attr': { 'class': 'ibexa-filters__select', @@ -47,7 +47,7 @@ {{ form_errors(form.last_modified_select) }}
- + {{ 'search.created'|trans|desc('Created') }} {{ form_widget(form.created_select, { 'attr': { 'class': 'ibexa-filters__select', @@ -57,7 +57,7 @@ {{ form_errors(form.created_select) }}
- + {{ 'search.creator'|trans|desc('Creator') }} {% set creator = form.vars.data.creator %} {% embed '@ibexadesign/ui/component/input_text.html.twig' with { has_search: false } %} {% trans_default_domain 'ibexa_search' %} @@ -75,7 +75,7 @@
{% if form.section is defined %}
- + {{ 'search.section'|trans|desc('Section') }} {{ form_widget(form.section, { 'attr': {'class': 'ibexa-filters__select'}, 'terms': sections_terms @@ -83,7 +83,7 @@
{% endif %}
- + {{ 'search.subtree'|trans|desc('Subtree') }} {% set items = [] %} {% if content_breadcrumbs is not empty %} From 4b480bcb48257eb450d79f9c053518ac55787ae9 Mon Sep 17 00:00:00 2001 From: tischsoic Date: Wed, 11 Mar 2026 10:15:47 +0100 Subject: [PATCH 02/14] IBX-11236: Phase 2 - Migrate required/modal ibexa-label elements to DS component --- .../content/tab/url/modal_add_custom_url.html.twig | 10 +++++----- .../admin/ui/field_type/edit/ibexa_author.html.twig | 4 ++-- .../themes/admin/url_wildcard/modal_create.html.twig | 12 ++++++------ .../views/themes/admin/url_wildcard/update.html.twig | 6 +++--- 4 files changed, 16 insertions(+), 16 deletions(-) diff --git a/src/bundle/Resources/views/themes/admin/content/tab/url/modal_add_custom_url.html.twig b/src/bundle/Resources/views/themes/admin/content/tab/url/modal_add_custom_url.html.twig index 6ed981fb64..634576d26f 100644 --- a/src/bundle/Resources/views/themes/admin/content/tab/url/modal_add_custom_url.html.twig +++ b/src/bundle/Resources/views/themes/admin/content/tab/url/modal_add_custom_url.html.twig @@ -26,21 +26,21 @@
- + {{ 'tab.urls.add.path'|trans|desc('URL') }} {{ form_widget(form.path) }}
- + {{ 'tab.urls.add.language'|trans|desc('Language') }} {{ form_widget(form.language) }}
- + {{ 'tab.urls.add.redirect'|trans|desc('Redirect to alias destination') }} {{ form_widget(form.redirect) }} {{ component.info_text('tab.urls.add.redirect.helper.checked'|trans|desc('The alias will redirect to the destination using an HTTP 301 response.'), 'checked') }} {{ component.info_text('tab.urls.add.redirect.helper.unchecked'|trans|desc('The alias will not redirect to the destination and the URL will stay the same.'), 'unchecked') }}
- + {{ 'tab.urls.add.site_root'|trans|desc('Place at the site root') }} {{ form_widget(form.site_root) }} {{ component.info_text('tab.urls.add.site_root.helper.checked'|trans|desc('The alias will be placed at the site root.'), 'checked') }} {{ component.info_text( @@ -51,7 +51,7 @@ ) }}
- + {{ 'tab.urls.add.site_access'|trans|desc('SiteAccess') }} {{ form_widget(form.site_access) }} {{ component.info_text('tab.urls.add.root_location_id.helper_secondary'|trans|desc( "If no SiteAccess selected, the alias will be placed at main root Location." diff --git a/src/bundle/Resources/views/themes/admin/ui/field_type/edit/ibexa_author.html.twig b/src/bundle/Resources/views/themes/admin/ui/field_type/edit/ibexa_author.html.twig index e7c79d7343..35b4ad9e34 100644 --- a/src/bundle/Resources/views/themes/admin/ui/field_type/edit/ibexa_author.html.twig +++ b/src/bundle/Resources/views/themes/admin/ui/field_type/edit/ibexa_author.html.twig @@ -36,8 +36,8 @@
- - + {{ 'ibexa_author.name'|trans|desc('Name') }} + {{ 'ibexa_author.Email'|trans|desc('Email') }}
{% for child in form.authors %} {{ form_row(child, { attr: { readonly: readonly}}) }} diff --git a/src/bundle/Resources/views/themes/admin/url_wildcard/modal_create.html.twig b/src/bundle/Resources/views/themes/admin/url_wildcard/modal_create.html.twig index 9765292517..99ecd97454 100644 --- a/src/bundle/Resources/views/themes/admin/url_wildcard/modal_create.html.twig +++ b/src/bundle/Resources/views/themes/admin/url_wildcard/modal_create.html.twig @@ -14,23 +14,23 @@ {% block body_content %}
- + {{ form_widget(form.source_url) }}
- + {{ form_widget(form.destination_url) }}
- + {{ form_widget(form.forward) }} diff --git a/src/bundle/Resources/views/themes/admin/url_wildcard/update.html.twig b/src/bundle/Resources/views/themes/admin/url_wildcard/update.html.twig index 69b4d2d3cc..98e5b0c6e4 100644 --- a/src/bundle/Resources/views/themes/admin/url_wildcard/update.html.twig +++ b/src/bundle/Resources/views/themes/admin/url_wildcard/update.html.twig @@ -35,15 +35,15 @@
- + {{ 'url_wildcard.modal.create.url.wildcard'|trans|desc('URL wildcard') }} {{ form_widget(form.source_url) }}
- + {{ 'url_wildcard.modal.create.url.destintion'|trans|desc('Destination') }} {{ form_widget(form.destination_url) }}
- + {{ 'url_wildcard.modal.create.redirect'|trans|desc('Redirect to wildcard destination') }} {{ form_widget(form.forward) }} From 167a22163f425f14fc191c933c159f824c47c329 Mon Sep 17 00:00:00 2001 From: tischsoic Date: Wed, 11 Mar 2026 10:16:34 +0100 Subject: [PATCH 03/14] IBX-11236: Phase 3 - Migrate field type edit ibexa-label elements to DS component --- .../admin/ui/field_type/edit/ibexa_binaryfile.html.twig | 4 ++-- .../themes/admin/ui/field_type/edit/ibexa_image.html.twig | 6 +++--- .../themes/admin/ui/field_type/edit/ibexa_media.html.twig | 8 ++++---- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/src/bundle/Resources/views/themes/admin/ui/field_type/edit/ibexa_binaryfile.html.twig b/src/bundle/Resources/views/themes/admin/ui/field_type/edit/ibexa_binaryfile.html.twig index e2343e25c0..b1841ae0bc 100644 --- a/src/bundle/Resources/views/themes/admin/ui/field_type/edit/ibexa_binaryfile.html.twig +++ b/src/bundle/Resources/views/themes/admin/ui/field_type/edit/ibexa_binaryfile.html.twig @@ -41,11 +41,11 @@
- + {{ 'ibexa_binaryfile.file_name.label'|trans|desc('File name') }}

{{ form.parent.vars.value.value.fileName }}

- + {{ 'ibexa_binaryfile.file_size.label'|trans|desc('Size') }}

{{ form.parent.vars.value.value.fileSize|ibexa_file_size(2) }}

diff --git a/src/bundle/Resources/views/themes/admin/ui/field_type/edit/ibexa_image.html.twig b/src/bundle/Resources/views/themes/admin/ui/field_type/edit/ibexa_image.html.twig index bbd32177e9..c61e01fbdf 100644 --- a/src/bundle/Resources/views/themes/admin/ui/field_type/edit/ibexa_image.html.twig +++ b/src/bundle/Resources/views/themes/admin/ui/field_type/edit/ibexa_image.html.twig @@ -68,11 +68,11 @@
- + {{ 'content.field_type.ibexa_image.file_name.label'|trans|desc('File name') }}

{{ form.parent.vars.value.value.fileName }}

- + {{ 'content.field_type.ibexa_image.dimensions.label'|trans|desc('Master dimension') }}

{{ 'content.field_type.ibexa_image.dimensions.width'|trans({ '%width%': form.parent.vars.value.value.width})|desc('W:%width% px') }} @@ -83,7 +83,7 @@

- + {{ 'content.field_type.ibexa_image.file_size.label'|trans|desc('Size') }}

{{ form.parent.vars.value.value.fileSize|ibexa_file_size(2) }}

diff --git a/src/bundle/Resources/views/themes/admin/ui/field_type/edit/ibexa_media.html.twig b/src/bundle/Resources/views/themes/admin/ui/field_type/edit/ibexa_media.html.twig index 75e4a3e36f..16bb4d1691 100644 --- a/src/bundle/Resources/views/themes/admin/ui/field_type/edit/ibexa_media.html.twig +++ b/src/bundle/Resources/views/themes/admin/ui/field_type/edit/ibexa_media.html.twig @@ -52,11 +52,11 @@
- + {{ 'content.field_type.ibexa_media.file_name.label'|trans|desc('File name') }}

{{ form.parent.vars.value.value.fileName }}

- + {{ 'content.field_type.ibexa_media.file_size.label'|trans|desc('Size') }}

{{ form.parent.vars.value.value.fileSize|ibexa_file_size(2) }}

@@ -66,9 +66,9 @@
- +
{{ form_row(form.hasController, {'label_attr': {'class': 'checkbox-inline'}, attr: { disabled: readonly }}) }} {{ form_row(form.autoplay, {'label_attr': {'class': 'checkbox-inline'}, attr: { disabled: readonly }}) }} From 7b0b2b1898bc74813edb53871d081fdd14b532b2 Mon Sep 17 00:00:00 2001 From: tischsoic Date: Wed, 11 Mar 2026 10:17:29 +0100 Subject: [PATCH 04/14] IBX-11236: Phase 4 - Update JS selectors from ibexa-label to ids-label, add TODO for --active modifier --- .../public/js/scripts/sidebar/btn/location.edit.js | 6 ++++-- .../component/adaptive_filters/adaptive_filters.html.twig | 3 ++- .../components/sub-items-list/instant.filter.component.js | 3 ++- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/src/bundle/Resources/public/js/scripts/sidebar/btn/location.edit.js b/src/bundle/Resources/public/js/scripts/sidebar/btn/location.edit.js index 5b8d3029e8..afe3ebddd6 100644 --- a/src/bundle/Resources/public/js/scripts/sidebar/btn/location.edit.js +++ b/src/bundle/Resources/public/js/scripts/sidebar/btn/location.edit.js @@ -54,11 +54,12 @@ const checkedBtn = event.currentTarget; const languageCode = checkedBtn.value; const checkVersionDraftLink = Routing.generate('ibexa.version_draft.has_no_conflict', { contentId, languageCode, locationId }); - const activeLanguageItem = event.target.closest('.ibexa-instant-filter__group-item')?.querySelector('.ibexa-label'); - const allLanguageItems = form.querySelectorAll('.ibexa-instant-filter__group-item .ibexa-label'); + const activeLanguageItem = event.target.closest('.ibexa-instant-filter__group-item')?.querySelector('.ids-label'); + const allLanguageItems = form.querySelectorAll('.ibexa-instant-filter__group-item .ids-label'); const submitBtn = form.querySelector('.ibexa-extra-actions__confirm-btn'); allLanguageItems.forEach((item) => { + // TODO IBX-11236: ibexa-label--active has no DS equivalent yet; update when design system provides an active state modifier item.classList.remove('ibexa-label--active'); }); @@ -83,6 +84,7 @@ } submitBtn.disabled = false; + // TODO IBX-11236: ibexa-label--active has no DS equivalent yet; update when design system provides an active state modifier activeLanguageItem?.classList.add('ibexa-label--active'); }); }; diff --git a/src/bundle/Resources/views/themes/admin/ui/component/adaptive_filters/adaptive_filters.html.twig b/src/bundle/Resources/views/themes/admin/ui/component/adaptive_filters/adaptive_filters.html.twig index 183a3e1713..dac046226e 100644 --- a/src/bundle/Resources/views/themes/admin/ui/component/adaptive_filters/adaptive_filters.html.twig +++ b/src/bundle/Resources/views/themes/admin/ui/component/adaptive_filters/adaptive_filters.html.twig @@ -91,7 +91,8 @@
{% block static_left %}
- + {# TODO IBX-11236: This is a layout spacer label with no content/for attr; migrate to DS component when a non-text label variant is available #} + {% block static_left_input %}{% endblock %}
{% endblock %} diff --git a/src/bundle/ui-dev/src/modules/sub-items/components/sub-items-list/instant.filter.component.js b/src/bundle/ui-dev/src/modules/sub-items/components/sub-items-list/instant.filter.component.js index 1382fc6bcc..8a7e896068 100644 --- a/src/bundle/ui-dev/src/modules/sub-items/components/sub-items-list/instant.filter.component.js +++ b/src/bundle/ui-dev/src/modules/sub-items/components/sub-items-list/instant.filter.component.js @@ -44,7 +44,8 @@ const InstantFilter = ({ items = [], handleItemChange = () => {}, isSearchEnable const radioId = `item_${item.value}`; const labelClassName = createCssClassNames({ 'form-check-label': true, - 'ibexa-label': true, + 'ids-label': true, + // TODO IBX-11236: ibexa-label--active has no DS equivalent yet; update when design system provides an active state modifier 'ibexa-label--active': activeLanguage === item.value, }); From d1c55ae2979620fb072567ef18c21a507c6fa4fc Mon Sep 17 00:00:00 2001 From: tischsoic Date: Wed, 11 Mar 2026 10:18:28 +0100 Subject: [PATCH 05/14] IBX-11236: Phase 5 - Swap ibexa-label to ids-label in Symfony form themes and paired JS selectors --- .../Resources/public/js/scripts/admin.contenttype.edit.js | 2 +- .../public/js/scripts/helpers/form.validation.helper.js | 4 ++-- .../admin/account/change_password/form_fields.html.twig | 2 +- .../views/themes/admin/content/form_fields.html.twig | 4 ++-- .../Resources/views/themes/admin/ui/form_fields.html.twig | 2 +- 5 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/bundle/Resources/public/js/scripts/admin.contenttype.edit.js b/src/bundle/Resources/public/js/scripts/admin.contenttype.edit.js index da3362281c..b56bb2a5ee 100644 --- a/src/bundle/Resources/public/js/scripts/admin.contenttype.edit.js +++ b/src/bundle/Resources/public/js/scripts/admin.contenttype.edit.js @@ -371,7 +371,7 @@ const validateInput = (input) => { const isInputEmpty = !input.value; const field = input.closest('.form-group'); - const labelNode = field?.querySelector('.ibexa-label'); + const labelNode = field?.querySelector('.ids-label'); const errorNode = field?.querySelector('.ibexa-form-error'); input.classList.toggle('is-invalid', isInputEmpty); diff --git a/src/bundle/Resources/public/js/scripts/helpers/form.validation.helper.js b/src/bundle/Resources/public/js/scripts/helpers/form.validation.helper.js index 9057dae6d7..36eb265b23 100644 --- a/src/bundle/Resources/public/js/scripts/helpers/form.validation.helper.js +++ b/src/bundle/Resources/public/js/scripts/helpers/form.validation.helper.js @@ -18,7 +18,7 @@ const checkIsEmpty = (field) => { let errorMessage = ''; const Translator = getTranslator(); const input = field.querySelector('.ibexa-input'); - const label = field.querySelector('.ibexa-label'); + const label = field.querySelector('.ids-label'); if (label) { const fieldName = label.innerText; @@ -35,7 +35,7 @@ const checkIsEmpty = (field) => { }; const validateIsEmptyField = (field) => { const input = field.querySelector('.ibexa-input'); - const label = field.querySelector('.ibexa-label'); + const label = field.querySelector('.ids-label'); const errorWrapper = field.querySelector('.ibexa-form-error'); const validatorOutput = checkIsEmpty(field); const { isValid, errorMessage } = validatorOutput; diff --git a/src/bundle/Resources/views/themes/admin/account/change_password/form_fields.html.twig b/src/bundle/Resources/views/themes/admin/account/change_password/form_fields.html.twig index 9af7d06c19..591ed42d33 100644 --- a/src/bundle/Resources/views/themes/admin/account/change_password/form_fields.html.twig +++ b/src/bundle/Resources/views/themes/admin/account/change_password/form_fields.html.twig @@ -7,7 +7,7 @@ {% if errors|length > 0 %}{% set wrapper_class = (wrapper_class|default('') ~ ' is-invalid')|trim %}{% endif %} {% set label_wrapper_attr = label_wrapper_attr|default({})|merge({'class': (label_wrapper_attr.class|default('') ~ 'ibexa-field__label-wrapper')|trim}) %} - {% set label_attr = label_attr|merge({'class': (label_attr.class|default('') ~ ' ibexa-field__label ibexa-label')|trim}) %} + {% set label_attr = label_attr|merge({'class': (label_attr.class|default('') ~ ' ibexa-field__label ids-label')|trim}) %} {% set attr = attr|merge({'class': (attr.class|default('') ~ ' ibexa-input ibexa-input--text ibexa-data-source__input')|trim}) %} {% set wrapper_attr = wrapper_attr|default({})|merge({'class': (wrapper_attr.class|default('') ~ ' ' ~ wrapper_class)|trim}) %} diff --git a/src/bundle/Resources/views/themes/admin/content/form_fields.html.twig b/src/bundle/Resources/views/themes/admin/content/form_fields.html.twig index 0f3b0b393a..5c1f2704aa 100644 --- a/src/bundle/Resources/views/themes/admin/content/form_fields.html.twig +++ b/src/bundle/Resources/views/themes/admin/content/form_fields.html.twig @@ -52,7 +52,7 @@ {% if required %}{% set wrapper_class = (wrapper_class ~ ' ibexa-data-source__field--required')|trim %}{% endif %} {% if errors|length > 0 %}{% set wrapper_class = (wrapper_class|default('') ~ ' is-invalid')|trim %}{% endif %} - {% set label_attr = label_attr|merge({'class': (label_attr.class|default('') ~ ' ibexa-label ibexa-data-source__label')|trim}) %} + {% set label_attr = label_attr|merge({'class': (label_attr.class|default('') ~ ' ids-label ibexa-data-source__label')|trim}) %} {% set label_wrapper_attr = label_wrapper_attr|default({})|merge({'class': (label_wrapper_attr.class|default('') ~ ' ibexa-data-source__label-wrapper')|trim}) %} {% set attr = attr|merge({ class: (attr.class|default('') ~ ' ibexa-data-source__input' ~ (is_small ? ' ibexa-input--small'))|trim, @@ -105,7 +105,7 @@ {% set attr = attr|merge({'readonly': 'readonly'}) %} {% endif %} {% set label_wrapper_attr = label_wrapper_attr|default({})|merge({'class': (label_wrapper_attr.class|default('') ~ 'ibexa-field-edit__label-wrapper')|trim}) %} - {% set label_attr = label_attr|merge({'class': (label_attr.class|default('') ~ ' ibexa-label ibexa-field-edit__label')|trim}) %} + {% set label_attr = label_attr|merge({'class': (label_attr.class|default('') ~ ' ids-label ibexa-field-edit__label')|trim}) %} {% set attr = attr|merge({'class': (attr.class|default('') ~ ' ibexa-data-source__input')|trim}) %} {% set wrapper_attr = wrapper_attr|default({})|merge({'class': (wrapper_attr.class|default('') ~ ' ' ~ wrapper_class)|trim}) %} diff --git a/src/bundle/Resources/views/themes/admin/ui/form_fields.html.twig b/src/bundle/Resources/views/themes/admin/ui/form_fields.html.twig index 91a7092d11..4fe22621d7 100644 --- a/src/bundle/Resources/views/themes/admin/ui/form_fields.html.twig +++ b/src/bundle/Resources/views/themes/admin/ui/form_fields.html.twig @@ -14,7 +14,7 @@ {%- endblock submit_widget %} {% block form_label -%} - {%- set label_attr = label_attr|merge({class: (label_attr.class|default('') ~ ' ibexa-label')|trim}) -%} + {%- set label_attr = label_attr|merge({class: (label_attr.class|default('') ~ ' ids-label')|trim}) -%} {%- set is_only_errors = label is same as(false) -%} {% if not is_only_errors -%} {{ parent() }} From 53eeb13d022a7ffb0c8efeb6bcf6c50c9b896521 Mon Sep 17 00:00:00 2001 From: tischsoic Date: Wed, 11 Mar 2026 10:19:34 +0100 Subject: [PATCH 06/14] IBX-11236: Phase 6 - Replace React ibexa-label with DS Label component in content-create-widget --- .../components/content-create-widget/content.create.widget.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/bundle/ui-dev/src/modules/universal-discovery/components/content-create-widget/content.create.widget.js b/src/bundle/ui-dev/src/modules/universal-discovery/components/content-create-widget/content.create.widget.js index 0d2615d30c..93d8f7e693 100644 --- a/src/bundle/ui-dev/src/modules/universal-discovery/components/content-create-widget/content.create.widget.js +++ b/src/bundle/ui-dev/src/modules/universal-discovery/components/content-create-widget/content.create.widget.js @@ -3,6 +3,7 @@ import React, { useContext, useState, useEffect, useRef, useMemo } from 'react'; import { createCssClassNames } from '../../../common/helpers/css.class.names'; import Icon from '../../../common/icon/icon'; import Dropdown from '../../../common/dropdown/dropdown'; +import { Label } from '@ids-components/components/Label'; import { DropdownPortalRefContext, @@ -187,7 +188,7 @@ const ContentCreateWidget = () => {
{createUnderLabel}
- +
Date: Wed, 11 Mar 2026 10:20:08 +0100 Subject: [PATCH 07/14] IBX-11236: Phase 7 - Add TODO comments for unmigrateable div labels; swap ibexa-label to ids-label in double_input_range --- .../views/themes/admin/ui/component/details/details.html.twig | 1 + .../component/double_input_range/double_input_range.html.twig | 2 +- .../Resources/views/themes/admin/ui/edit_header.html.twig | 1 + 3 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/bundle/Resources/views/themes/admin/ui/component/details/details.html.twig b/src/bundle/Resources/views/themes/admin/ui/component/details/details.html.twig index 4a5f8add8c..eb37b0032c 100644 --- a/src/bundle/Resources/views/themes/admin/ui/component/details/details.html.twig +++ b/src/bundle/Resources/views/themes/admin/ui/component/details/details.html.twig @@ -39,6 +39,7 @@ class="ibexa-details__item {{ item_inline|default(false) ? 'ibexa-details__item--inline' ~ (is_field_empty ? ' ibexa-details__item--hidden') }}" > + {# TODO IBX-11236: This
conditionally receives ibexa-label as a visual style; cannot use on a
. Migrate when DS provides a non-