diff --git a/src/Umbraco.Web.UI.Client/.github/localization_overview.md b/src/Umbraco.Web.UI.Client/.github/localization_overview.md new file mode 100644 index 0000000000..c2dd2453ae --- /dev/null +++ b/src/Umbraco.Web.UI.Client/.github/localization_overview.md @@ -0,0 +1,238 @@ + +# Help us with Localization! + +Localization of the New Backoffice is in full swing! +This is a work in process and here you can find the overview of all the sections that needs to be localized. We are also looking forward to see any contributions towards localization of the new Backoffice. + + +You may tick a section/subsection in the same PR as your changes, if it completes said section. + + +Before you start: +- Make sure you have read the [README](https://github.com/umbraco/Umbraco.CMS.Backoffice/blob/main/.github/README.md) and [Contributing Guidelines](https://github.com/umbraco/Umbraco.CMS.Backoffice/blob/main/.github/CONTRIBUTING.md). +- Please note some sections may already be partly or fully localized without it being reflected in the overview just yet. +- Get an understanding of how we do localization in the new Backoffice. The explanations can be found in the stories under **Localization** by running `npm run storybook`. Alternatively see the raw story file [localization.mdx](https://github.com/umbraco/Umbraco.CMS.Backoffice/blob/main/src/packages/core/localization/stories/localization.mdx) + + + +# Overview + - [Sections that needs to be localized](#sections) + - [Keys that needs to be localized](#keys) + +## Sections + +- [ ] [Header App](#header-app) +- [ ] [Content](#content) +- [ ] [Media](#media) +- [ ] [Settings](#settings) +- [ ] [Members](#members) +- [ ] [Packages](#packages) +- [ ] [Dictionary](#dictionary) +- [ ] [Users](#users) +- [ ] [Property Editors](#property-editor-ui-and-their-input) +- [ ] [Modals](#modals) +- [ ] [Misc](#misc) + + +### Subsections + +#### Header App +- [ ] Ensure all sections are localized +- [ ] Search +- [ ] Current user (Modal) + - [ ] Change password + +#### Content +- [ ] Dashboards + - [ ] Welcome + - [ ] Redirect Management +- [ ] Content / Document + - [ ] Section: Content + - [ ] Section: Info + - [ ] Section: Actions + +#### Media +- [ ] (To be continued) + +#### Settings +- [ ] Dashboards + - [x] Welcome / Settings + - [ ] Examine Management + - [ ] Models Builder + - [ ] Published Status + - [ ] Health Check + - [x] Profiling + - [x] Telemetry Data +- [ ] Document Type + - [ ] Section: Design + - [ ] Section: Structure + - [ ] Section: Settings + - [ ] Section: Templates +- [ ] Media Type +- [ ] Member Type +- [ ] Data Type + - [ ] Section: Details + - [ ] Section: Info +- [ ] Relation Types +- [ ] Log Viewer +- [ ] Document Blueprints +- [ ] Languages +- [ ] Extensions +- [ ] Templates +- [ ] Partial Views +- [ ] Stylesheets + - [ ] Section: Rich Text Editor + - [ ] Section: Code +- [ ] Scripts + +#### Members +- [ ] Member Groups +- [ ] Members + +#### Packages +- [ ] Section: Installed +- [ ] Section: Created + - [ ] Package builder: "Create Package" + +#### Dictionary +- [ ] Everything within Dictionary + +#### Users +- [ ] Users +- [ ] User Groups +- [ ] Create user +- [ ] User Profiles + +#### Property Editor UI (and their inputs) +Ensure all property editors are properly localized. +(Some may be missing in this list / more to be added) +- [ ] Block Grid +- [ ] Block List +- [x] Checkbox List +- [ ] Collection View +- [ ] Color Picker +- [ ] Date Picker +- [x] Dropdown +- [ ] Eye Dropper +- [x] Icon Picker +- [ ] Image Cropper +- [ ] Image Crops Configuration +- [x] Label +- [ ] Markdown Editor +- [ ] Media Picker +- [ ] Member Group Picker +- [ ] Member Picker +- [ ] Multi URL Picker +- [ ] Multiple Text String +- [ ] Number (missing label) +- [ ] Number Range +- [ ] Order Direction +- [x] Radio Button List +- [ ] Slider (label) +- [ ] TextBox (label) +- [ ] TextArea +- [ ] TinyMCE +- [ ] Toggle +- [ ] Tree Picker + - [ ] StartNode +- [ ] Upload Field +- [ ] User Picker +- [ ] Value Type + +#### Modals +Ensure all modals are properly localized. +(Some may be missing in this list / more to be added) +- [ ] Code Editor +- [ ] Confirm +- [ ] Embedded Media +- [ ] Folder +- [ ] Icon Picker +- [ ] Link Picker +- [ ] Property Settings +- [ ] Section Picker +- [ ] Template +- [ ] Tree Picker +- [ ] Debug + +Rest of modals can be found: +- [ ] Umb***ModalName***ModalElement + + +#### Misc + +- [ ] Tree + - [ ] Tree Actions + - [ ] Recycle Bin +- [ ] Validator messages + + +## Keys + +Do you speak any of the following languages? +Then we need your help! With Bellissima we added new localization keys, and we still need them available in all our supported languages. + +- `bs-BS` - Bosnian (Bosnia and Herzegovina) +- `cs-CZ` - Czech (Czech Republic) +- `cy-GB` - Welsh (United Kingdom) +- `da-DK` - Danish (Denmark) +- `de-DE` - German (Germany) +- `en-GB` - English (United Kingdom) +- `es-ES` - Spanish (Spain) +- `fr-FR` - French (France) +- `he-IL` - Hebrew (Israel) +- `hr-HR` - Croatian (Croatia) +- `it-IT` - Italian (Italy) +- `ja-JP` - Japanese (Japan) +- `ko-KR` - Korean (Korea) +- `nb-NO` - Norwegian Bokmål (Norway) +- `nl-NL` - Dutch (Netherlands) +- `pl-PL` - Polish (Poland) +- `pt-BR` - Portuguese (Brazil) +- `ro-RO` - Romanian (Romania) +- `ru-RU` - Russian (Russia) +- `sv-SE` - Swedish (Sweden) +- `tr-TR` - Turkish (Turkey) +- `ua-UA` - Ukrainian (Ukraine) +- `zh-CN` - Chinese (China) +- `zh-TW` - Chinese (Taiwan) + +#### settingsDashboard +- documentationHeader +- documentationDescription +- communityHeader +- trainingHeader +- trainingDescription +- supportHeader +- supportDescription +- videosHeader +- videosDescription +- getHelp +- getCertified +- goForum +- chatWithCommunity +- watchVideos + +- [ ] `bs-BS` - Bosnian (Bosnia and Herzegovina) +- [ ] `cs-CZ` - Czech (Czech Republic) +- [ ] `cy-GB` - Welsh (United Kingdom) +- [x] `da-DK` - Danish (Denmark) +- [ ] `de-DE` - German (Germany) +- [ ] `en-GB` - English (United Kingdom) +- [ ] `es-ES` - Spanish (Spain) +- [ ] `fr-FR` - French (France) +- [ ] `he-IL` - Hebrew (Israel) +- [ ] `hr-HR` - Croatian (Croatia) +- [ ] `it-IT` - Italian (Italy) +- [ ] `ja-JP` - Japanese (Japan) +- [ ] `ko-KR` - Korean (Korea) +- [ ] `nb-NO` - Norwegian Bokmål (Norway) +- [ ] `nl-NL` - Dutch (Netherlands) +- [ ] `pl-PL` - Polish (Poland) +- [ ] `pt-BR` - Portuguese (Brazil) +- [ ] `ro-RO` - Romanian (Romania) +- [ ] `ru-RU` - Russian (Russia) +- [ ] `sv-SE` - Swedish (Sweden) +- [ ] `tr-TR` - Turkish (Turkey) +- [ ] `ua-UA` - Ukrainian (Ukraine) +- [ ] `zh-CN` - Chinese (China) +- [ ] `zh-TW` - Chinese (Taiwan) \ No newline at end of file diff --git a/src/Umbraco.Web.UI.Client/.github/workflows/azure-static-web-apps-ashy-bay-09f36a803.yml b/src/Umbraco.Web.UI.Client/.github/workflows/azure-static-web-apps-ashy-bay-09f36a803.yml deleted file mode 100644 index 577a465c5b..0000000000 --- a/src/Umbraco.Web.UI.Client/.github/workflows/azure-static-web-apps-ashy-bay-09f36a803.yml +++ /dev/null @@ -1,49 +0,0 @@ -name: Azure Static Web Apps CI/CD - -on: - push: - branches: - - main - # pull_request: - # types: [opened, synchronize, reopened, closed] - # branches: - # - main - -env: - NODE_OPTIONS: --max_old_space_size=16384 - -jobs: - build_and_deploy_job: - if: false && github.event_name == 'push' || (github.event_name == 'pull_request' && github.event.action != 'closed') - runs-on: ubuntu-latest - name: Build and Deploy Job - steps: - - uses: actions/checkout@v4 - with: - submodules: true - - name: Build And Deploy - id: builddeploy - uses: Azure/static-web-apps-deploy@v1 - with: - azure_static_web_apps_api_token: ${{ secrets.AZURE_STATIC_WEB_APPS_API_TOKEN_ASHY_BAY_09F36A803 }} - repo_token: ${{ secrets.GITHUB_TOKEN }} # Used for Github integrations (i.e. PR comments) - action: 'upload' - ###### Repository/Build Configurations - These values can be configured to match your app requirements. ###### - # For more information regarding Static Web App workflow configurations, please visit: https://aka.ms/swaworkflowconfig - app_location: '/' # App source code path - api_location: 'api' # Api source code path - optional - output_location: 'dist-cms' # Built app content directory - optional - ###### End of Repository/Build Configurations ###### - - close_pull_request_job: - if: github.event_name == 'pull_request' && github.event.action == 'closed' - runs-on: ubuntu-latest - name: Close Pull Request Job - steps: - - name: Close Pull Request - id: closepullrequest - uses: Azure/static-web-apps-deploy@v1 - with: - app_location: '/' - azure_static_web_apps_api_token: ${{ secrets.AZURE_STATIC_WEB_APPS_API_TOKEN_ASHY_BAY_09F36A803 }} - action: 'close' diff --git a/src/Umbraco.Web.UI.Client/.github/workflows/build_test.yml b/src/Umbraco.Web.UI.Client/.github/workflows/build_test.yml index 2cf2b96946..02e3828f2c 100644 --- a/src/Umbraco.Web.UI.Client/.github/workflows/build_test.yml +++ b/src/Umbraco.Web.UI.Client/.github/workflows/build_test.yml @@ -5,9 +5,9 @@ name: Build and test on: push: - branches: [ main ] + branches: [main] pull_request: - branches: [ main ] + branches: [main] # Allows GitHub to use this workflow to validate the merge queue merge_group: @@ -20,33 +20,32 @@ env: jobs: build: - runs-on: ubuntu-latest strategy: matrix: - node-version: [18.x] + node-version: [20] steps: - - uses: actions/checkout@v4 - - name: Use Node.js ${{ matrix.node-version }} - uses: actions/setup-node@v4 - with: - node-version: ${{ matrix.node-version }} - cache: 'npm' - - run: npm ci --no-audit --no-fund --prefer-offline - - run: npm run lint - - run: npm run build - - run: npm run generate:jsonschema:dist - - run: sudo npx playwright install-deps - - run: npm test - - name: Upload Code Coverage reports - uses: actions/upload-artifact@v3 - if: always() - with: - name: code-coverage - path: coverage/ - retention-days: 30 + - uses: actions/checkout@v4 + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v4 + with: + node-version: ${{ matrix.node-version }} + cache: 'npm' + - run: npm ci --no-audit --no-fund --prefer-offline + - run: npm run lint + - run: npm run build + - run: npm run generate:jsonschema:dist + - run: sudo npx playwright install-deps + - run: npm test + - name: Upload Code Coverage reports + uses: actions/upload-artifact@v3 + if: always() + with: + name: code-coverage + path: coverage/ + retention-days: 30 # Commented out since it is outdated and is quite spammy # - name: Report code coverage # uses: zgosalvez/github-actions-report-lcov@v2 diff --git a/src/Umbraco.Web.UI.Client/.github/workflows/npm-publish-github-packages.yml b/src/Umbraco.Web.UI.Client/.github/workflows/npm-publish-github-packages.yml index 86f01e9417..3a2434bfd9 100644 --- a/src/Umbraco.Web.UI.Client/.github/workflows/npm-publish-github-packages.yml +++ b/src/Umbraco.Web.UI.Client/.github/workflows/npm-publish-github-packages.yml @@ -47,7 +47,7 @@ jobs: ref: ${{ inputs.ref }} - uses: actions/setup-node@v4 with: - node-version: 18 + node-version: 20 cache: 'npm' registry-url: https://registry.npmjs.org/ scope: '@umbraco-cms' diff --git a/src/Umbraco.Web.UI.Client/.nvmrc b/src/Umbraco.Web.UI.Client/.nvmrc index b492b08635..48ef2c10ba 100644 --- a/src/Umbraco.Web.UI.Client/.nvmrc +++ b/src/Umbraco.Web.UI.Client/.nvmrc @@ -1 +1 @@ -18.16 +20.9 diff --git a/src/Umbraco.Web.UI.Client/.storybook/preview-head.html b/src/Umbraco.Web.UI.Client/.storybook/preview-head.html index 75a6ba9185..8a6c9e645c 100644 --- a/src/Umbraco.Web.UI.Client/.storybook/preview-head.html +++ b/src/Umbraco.Web.UI.Client/.storybook/preview-head.html @@ -9,7 +9,7 @@ #root-inner { height: 100%; } - + body { padding: 0px !important; } @@ -23,7 +23,7 @@ line-height: 1.3em; } - +