Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
21 commits
Select commit Hold shift + click to select a range
eb5cfee
IBX-11236: Phase 1 - Migrate simple ibexa-label elements to DS <twig:…
tischsoic Mar 11, 2026
8bbab43
IBX-11236: Phase 2 - Migrate required/modal ibexa-label elements to D…
tischsoic Mar 11, 2026
c600965
IBX-11236: Phase 3 - Migrate field type edit ibexa-label elements to …
tischsoic Mar 11, 2026
1840f6a
IBX-11236: Phase 4 - Update JS selectors from ibexa-label to ids-labe…
tischsoic Mar 11, 2026
37b137f
IBX-11236: Phase 5 - Swap ibexa-label to ids-label in Symfony form th…
tischsoic Mar 11, 2026
7e72814
IBX-11236: Phase 6 - Replace React ibexa-label with DS Label componen…
tischsoic Mar 11, 2026
9a82314
IBX-11236: Phase 7 - Add TODO comments for unmigrateable div labels; …
tischsoic Mar 11, 2026
98446be
IBX-11236: Phase 8 - Update Behat CSS selectors from .ibexa-label to …
tischsoic Mar 11, 2026
8b1d1d1
IBX-11236: Phase 9 - Rename .ibexa-label to .ids-label in all SCSS files
tischsoic Mar 11, 2026
4816aa1
IBX-11236: Phase 9 followup - Swap ibexa-label to ids-label on remain…
tischsoic Mar 11, 2026
b9e7963
IBX-11236: use DS labels in admin-ui details
tischsoic Mar 13, 2026
53d9b6d
IBX-11236: remove outdated details label TODO
tischsoic Mar 16, 2026
ff9239a
IBX-11236: align sub-items active label class
tischsoic Mar 17, 2026
4391992
IBX-11236: align edit form active label class
tischsoic Mar 17, 2026
ad0a80a
IBX-11236: use DS spacer label in adaptive filters
tischsoic Mar 17, 2026
47ee3a6
DST in composer.json
tischsoic Mar 12, 2026
913209b
fix DST version composer.json
tischsoic Apr 3, 2026
74f6184
IBX-11236: split details labels by display mode
tischsoic Apr 15, 2026
261e371
IBX-11506: use DS checkbox and radio label classes in form theme
tischsoic Apr 16, 2026
b977315
IBX-11506: update DS choice input label selectors
tischsoic Apr 16, 2026
e996a74
IBX-11236: use DS label in details items
tischsoic Apr 17, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 8 additions & 1 deletion composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@
"ibexa/content-forms": "~5.0.x-dev",
"ibexa/core": "~5.0.x-dev",
"ibexa/design-engine": "~5.0.x-dev",
"ibexa/design-system-twig": "dev-main",
"ibexa/polyfill-php82": "^1.0",
"ibexa/rest": "~5.0.x-dev",
"ibexa/search": "~5.0.x-dev",
Expand Down Expand Up @@ -97,5 +98,11 @@
"branch-alias": {
"dev-main": "5.0.x-dev"
}
}
},
"repositories": [
{
"type": "vcs",
"url": "https://github.com/ibexa/design-system-twig"
}
]
}
Original file line number Diff line number Diff line change
Expand Up @@ -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);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -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;
Expand All @@ -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;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -54,12 +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) => {
item.classList.remove('ibexa-label--active');
item.classList.remove('ids-label--active');
});

fetch(checkVersionDraftLink, {
Expand All @@ -83,7 +83,7 @@
}

submitBtn.disabled = false;
activeLanguageItem?.classList.add('ibexa-label--active');
activeLanguageItem?.classList.add('ids-label--active');
});
};
const attachEventsToEditActionsWidget = (container) => {
Expand Down
2 changes: 1 addition & 1 deletion src/bundle/Resources/public/scss/_adaptive-filters.scss
Original file line number Diff line number Diff line change
Expand Up @@ -114,7 +114,7 @@
align-items: flex-end;
padding-right: calculateRem(16px);

.ibexa-label {
.ids-label {
margin-top: 0;
}
}
Expand Down
2 changes: 1 addition & 1 deletion src/bundle/Resources/public/scss/_add-translation.scss
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
flex-wrap: wrap;
padding-bottom: calculateRem(140px);

.ibexa-label {
.ids-label {
margin-top: 0;
}
}
Expand Down
2 changes: 1 addition & 1 deletion src/bundle/Resources/public/scss/_content-type-edit.scss
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@
.form-check {
margin-bottom: calculateRem(16px);

.ibexa-label {
.ids-label {
margin-bottom: 0;
}
}
Expand Down
2 changes: 1 addition & 1 deletion src/bundle/Resources/public/scss/_custom-url-form.scss
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
margin-bottom: calculateRem(24px);

&:first-child {
.ibexa-label {
.ids-label {
margin-top: 0;
}
}
Expand Down
2 changes: 1 addition & 1 deletion src/bundle/Resources/public/scss/_details.scss
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
flex-basis: 25%;
padding: calculateRem(8px) calculateRem(8px) calculateRem(8px) 0;

.ibexa-label {
.ids-label {
margin-top: calculateRem(8px);
margin-bottom: 0;
}
Expand Down
2 changes: 1 addition & 1 deletion src/bundle/Resources/public/scss/_extra-actions.scss
Original file line number Diff line number Diff line change
Expand Up @@ -135,7 +135,7 @@
padding-left: 0;
}

.ibexa-label {
.ids-label {
@include edit-language-item;
}

Expand Down
2 changes: 1 addition & 1 deletion src/bundle/Resources/public/scss/_field-group.scss
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@
&__language-form {
display: flex;

.ibexa-label {
.ids-label {
margin: calculateRem(8px) calculateRem(8px) 0;
}

Expand Down
2 changes: 1 addition & 1 deletion src/bundle/Resources/public/scss/_filters.scss
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@
margin-bottom: 0;
}

.ibexa-label {
.ids-label {
font-size: $ibexa-text-font-size-medium;
color: $ibexa-color-dark;
margin-top: calculateRem(16px);
Expand Down
2 changes: 1 addition & 1 deletion src/bundle/Resources/public/scss/_instant-filter.scss
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@
}

&:hover {
.ibexa-label--checkbox-radio {
.ids-choice-input-label {
color: $ibexa-color-primary;
}

Expand Down
6 changes: 3 additions & 3 deletions src/bundle/Resources/public/scss/_labels.scss
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
@use '@ibexa-admin-ui/src/bundle/Resources/public/scss/functions/calculate.rem' as *;
@use '@ibexa-admin-ui/src/bundle/Resources/public/scss/mixins' as *;

.ibexa-label {
.ids-label {
@include label-required();

& {
Expand Down Expand Up @@ -37,7 +37,7 @@
}

.form-check-inline {
.ibexa-label {
.ids-label {
&--checkbox-radio {
margin: 0;
}
Expand All @@ -46,7 +46,7 @@

.ibexa-form-block {
.form-group:first-of-type {
.ibexa-label {
.ids-label {
margin-top: 0;
}
}
Expand Down
2 changes: 1 addition & 1 deletion src/bundle/Resources/public/scss/_list-filters.scss
Original file line number Diff line number Diff line change
Expand Up @@ -87,7 +87,7 @@
}

&__item {
.ibexa-label {
.ids-label {
margin: 0;
padding: 0;
}
Expand Down
4 changes: 2 additions & 2 deletions src/bundle/Resources/public/scss/_login.scss
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
background-image: url('/bundles/ibexaadminui/img/login-background.jpg');
background-size: cover;

.ibexa-label {
.ids-label {
margin-top: calculateRem(40px);
}

Expand Down Expand Up @@ -81,7 +81,7 @@
margin-top: calculateRem(32px);

& + .has-error {
.ibexa-label {
.ids-label {
margin-top: 0;
}
}
Expand Down
2 changes: 1 addition & 1 deletion src/bundle/Resources/public/scss/_mixins.scss
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

@mixin datetime-field() {
&.is-invalid {
.ibexa-label {
.ids-label {
color: $ibexa-color-danger;
}

Expand Down
2 changes: 1 addition & 1 deletion src/bundle/Resources/public/scss/_modals.scss
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@
margin-top: calculateRem(18px);
}

.ibexa-label {
.ids-label {
font-size: calculateRem(16px);
}

Expand Down
2 changes: 1 addition & 1 deletion src/bundle/Resources/public/scss/_search-links-form.scss
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@
padding-left: calculateRem(24px);
border-left: calculateRem(1px) solid $ibexa-color-light;

.ibexa-label {
.ids-label {
margin-top: 0;
}

Expand Down
2 changes: 1 addition & 1 deletion src/bundle/Resources/public/scss/_tabs.scss
Original file line number Diff line number Diff line change
Expand Up @@ -414,7 +414,7 @@
}

.form-group:first-child {
.ibexa-label {
.ids-label {
margin-top: 0;
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@
display: flex;
align-self: flex-end;

.ibexa-label {
.ids-label {
display: none;
padding-bottom: calculateRem(8px);
}
Expand Down Expand Up @@ -83,7 +83,7 @@
&--disabled {
pointer-events: none;

.ibexa-label {
.ids-label {
color: $ibexa-color-black-300;
}

Expand Down Expand Up @@ -167,7 +167,7 @@
justify-content: space-between;
width: 100%;

.ibexa-label {
.ids-label {
display: inline-flex;
margin: calculateRem(8px) 0 0 0;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@
font-size: calculateRem(16px);
margin-right: calculateRem(40px);

.ibexa-label {
.ids-label {
margin-bottom: 0;
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
&__file-name-wrapper,
&__dimensions-wrapper,
&__file-size-wrapper {
.ibexa-label {
.ids-label {
margin-top: 0;
margin-bottom: 0;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@

.ibexa-field-edit-preview {
&__file-name-wrapper {
.ibexa-label {
.ids-label {
margin-top: 0;
margin-bottom: 0;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@
min-width: 0;
padding: calculateRem(8px);

.ibexa-label {
.ids-label {
margin-top: 0;
margin-bottom: 0;
white-space: nowrap;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
max-width: 80%;

.ibexa-data-source__field:first-of-type {
.ibexa-label {
.ids-label {
margin-top: 0;
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@
}
}

.ibexa-label--checkbox-radio {
.ids-choice-input-label {
padding-left: calculateRem(4px);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -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}) %}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
{% block login_form_fields %}
<div class="form-group{% if error %} has-error{% endif %}">
<div class="ibexa-login__input-label-wrapper">
<label class="ibexa-label" for="username">{{ 'authentication.username'|trans|desc('Username') }}</label>
<twig:ibexa:label for="username">{{ 'authentication.username'|trans|desc('Username') }}</twig:ibexa:label>
</div>
{%- embed '@ibexadesign/ui/component/input_text.html.twig' -%}
{% block content %}
Expand All @@ -43,7 +43,7 @@
</div>
<div class="form-group{% if error %} has-error{% endif %} position-relative">
<div class="ibexa-login__input-label-wrapper">
<label class="ibexa-label" for="password">{{ 'authentication.password'|trans|desc('Password') }}</label>
<twig:ibexa:label for="password">{{ 'authentication.password'|trans|desc('Password') }}</twig:ibexa:label>
</div>
{%- embed '@ibexadesign/ui/component/input_text.html.twig' with {
type: 'password',
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,9 +34,9 @@
} %}
{% block content %}
<div class="form-group">
<label class="ibexa-label form-label">
<twig:ibexa:label class="form-label">
{{ 'ibexa.notifications.search_form.label.from'|trans|desc('From') }}
</label>
</twig:ibexa:label>
{{ form_widget(form.children.min, {
attr: {
'data-seconds': 0,
Expand All @@ -48,9 +48,9 @@
</div>

<div class="form-group">
<label class="ibexa-label form-label">
<twig:ibexa:label class="form-label">
{{ 'ibexa.notifications.search_form.label.to'|trans|desc('To') }}
</label>
</twig:ibexa:label>
{{ form_widget(form.children.max, {
attr: {
'data-seconds': 0,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -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,
Expand Down Expand Up @@ -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}) %}

Expand Down
Loading
Loading