Skip to content

Commit 74aedc5

Browse files
committed
feat: Add deprecation banner
1 parent b684eb7 commit 74aedc5

File tree

6 files changed

+77
-2
lines changed

6 files changed

+77
-2
lines changed

src/Resources/app/administration/src/module/swag-language-pack-settings/page/swag-language-pack-settings/index.js

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import template from './swag-language-pack-settings.html.twig';
2+
import './swag-language-pack-settings.scss';
23

34
const { Component, Defaults } = Shopware;
45
const { Criteria } = Shopware.Data;
@@ -52,6 +53,14 @@ Component.register('swag-language-pack-settings', {
5253
.addAssociation('language.salesChannels.domains')
5354
.addAssociation('language.locale');
5455
},
56+
57+
// Check if the shopware version is 6.7.3 or newer, since the translation system was introduced with this version
58+
shopwareHasTranslationSystem() {
59+
const currentVersion = Shopware.Context.app.config.version.replace(/-.*$/, '');
60+
const requiredVersion = '6.7.3';
61+
62+
return currentVersion.localeCompare(requiredVersion, undefined, { numeric: true, sensitivity: 'base' }) >= 0;
63+
}
5564
},
5665

5766
created() {

src/Resources/app/administration/src/module/swag-language-pack-settings/page/swag-language-pack-settings/swag-language-pack-settings.html.twig

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,14 @@
3838

3939
{% block swag_language_pack_settings_content_card_view %}
4040
<sw-card-view>
41+
<mt-banner
42+
v-if="this.shopwareHasTranslationSystem"
43+
class="swag-language-pack-settings__deprecation-banner"
44+
variant="info"
45+
>
46+
<p v-html="$t('swag-language-pack.settings.deprecationBanner')">
47+
</p>
48+
</mt-banner>
4149

4250
{% block swag_language_pack_settings_content_tabs %}
4351
<sw-tabs
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
@import "~scss/variables";
2+
3+
.swag-language-pack-settings {
4+
&__deprecation-banner {
5+
max-width: 960px;
6+
}
7+
}

src/Resources/app/administration/src/module/swag-language-pack-settings/snippet/de-DE.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,8 @@
2121
"description": "Aktivierte Sprachen stehen als Standard-/Sprachauswahl auf Verkaufskanal-Detailseiten zur Auswahl. Sprachen die bereits in einem Verkaufskanal ausgewählt wurden, können nicht deaktiviert werden."
2222

2323
}
24-
}
24+
},
25+
"deprecationBanner": "Das Language-Pack-Plugin wird in Shopware-Version 6.8 abgeschafft. Bitte verwenden Sie stattdessen die interne Sprachverwaltung. <a href=\"https://developer-documentation-5g83itqi7-shopware-frontends.vercel.app/docs/resources/references/upgrades/core/translation-handling.html\" target=\"_blank\">Lesen Sie mehr darüber in unserem Migrationsleitfaden.</a>"
2526
},
2627
"sw-settings-language-list": {
2728
"deleteLanguagePackTooltip": "Das Löschen von Sprachen des Sprachpakets ist nicht möglich."

src/Resources/app/administration/src/module/swag-language-pack-settings/snippet/en-GB.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,8 @@
2020
"title": "Sales Channel languages",
2121
"description": "Activated languages are available as (default) languages on Sales Channel detail pages. Languages already selected in a Sales Channel cannot be deactivated."
2222
}
23-
}
23+
},
24+
"deprecationBanner": "The Language Pack plugin will be deprecated in shopware version 6.8. Please use the internal language handling instead. <a href=\"https://developer-documentation-5g83itqi7-shopware-frontends.vercel.app/docs/resources/references/upgrades/core/translation-handling.html\" target=\"_blank\">Read more about it in our migration guide.</a"
2425
},
2526
"sw-settings-language-list": {
2627
"deleteLanguagePackTooltip": "Deleting languages from the Language pack is not possible."
Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
import { mount } from '@vue/test-utils';
2+
import '../src/module/swag-language-pack-settings/page/swag-language-pack-settings/index.js';
3+
4+
async function createWrapperWithVersion() {
5+
return mount(await Shopware.Component.build('swag-language-pack-settings'), {
6+
global: {
7+
mocks: {
8+
$tc: v => v,
9+
},
10+
provide: {
11+
repositoryFactory: {
12+
create: () => ({
13+
search: jest.fn(() => Promise.resolve([])),
14+
}),
15+
},
16+
userService: v => v,
17+
acl: v => v
18+
},
19+
stubs: {
20+
'mt-icon': true,
21+
'mt-banner': true,
22+
'sw-button-process': true,
23+
'sw-tabs-item': true,
24+
'sw-tabs': true,
25+
'router-view': true,
26+
'mt-loader': true,
27+
'sw-verify-user-modal': true,
28+
'sw-card-view': true,
29+
'sw-page': true,
30+
},
31+
},
32+
props: {},
33+
});
34+
}
35+
36+
describe('shopwareHasTranslationSystem', () => {
37+
it.each([
38+
['6.7.3', true],
39+
['6.8.0', true],
40+
['6.7.9999999999-dev', true],
41+
['6.6.10', false],
42+
['6.6.99999-dev', false],
43+
['6.7.2', false],
44+
])('returns %s ⇒ %s', async (version, expected) => {
45+
Shopware.Context.app.config.version = version;
46+
const wrapper = await createWrapperWithVersion();
47+
expect(wrapper.vm.shopwareHasTranslationSystem).toBe(expected);
48+
});
49+
});

0 commit comments

Comments
 (0)