From 1728cb1bed4797b6cff8a6940bd60d7aa17b2041 Mon Sep 17 00:00:00 2001
From: EugeniyKiyashko
Date: Tue, 27 Oct 2026 15:21:26 +0400
Subject: [PATCH] Demos: remove the GitHub Pages demos pipeline
---
.github/workflows/github-pages-publish.yml | 35 --
.github/workflows/publish-demos.yml | 297 -------------
.../workflows/run-testcafe-on-gh-pages.yml | 148 -------
apps/demos/.gitignore | 4 -
apps/demos/.prettierignore | 2 -
apps/demos/.stylelintignore | 1 -
apps/demos/eslint.config.mjs | 2 -
apps/demos/package.json | 9 -
apps/demos/project.json | 2 -
apps/demos/testing/common.test.ts | 17 +-
.../utils/create-bundles/Angular/bundler.ts | 60 ---
.../utils/create-bundles/Angular/polyfill.ts | 1 -
.../Angular/post-process-index.ts | 89 ----
.../create-bundles/Angular/template.html | 24 --
.../Angular/update-angular-json.ts | 99 -----
.../utils/create-bundles/Angular/utils.ts | 6 -
.../utils/create-bundles/React/bundler.ts | 41 --
.../utils/create-bundles/React/template.html | 27 --
.../demos/utils/create-bundles/Vue/bundler.ts | 42 --
.../utils/create-bundles/Vue/template.html | 27 --
.../utils/create-bundles/helper/bundler.ts | 41 --
.../helper/external-resource-metadata.ts | 400 ------------------
.../utils/create-bundles/helper/index.ts | 195 ---------
.../helper/metadata/scripts/init-theme.js | 11 -
.../utils/create-bundles/helper/types.ts | 26 --
apps/demos/utils/create-bundles/index.ts | 96 -----
.../plugins/ignore-missing-css.ts | 22 -
.../utils/visual-tests/github-ignored-list.js | 37 --
.../utils/visual-tests/matrix-test-helper.ts | 18 +-
pnpm-lock.yaml | 353 ----------------
30 files changed, 4 insertions(+), 2128 deletions(-)
delete mode 100644 .github/workflows/github-pages-publish.yml
delete mode 100644 .github/workflows/publish-demos.yml
delete mode 100644 .github/workflows/run-testcafe-on-gh-pages.yml
delete mode 100644 apps/demos/utils/create-bundles/Angular/bundler.ts
delete mode 100644 apps/demos/utils/create-bundles/Angular/polyfill.ts
delete mode 100644 apps/demos/utils/create-bundles/Angular/post-process-index.ts
delete mode 100644 apps/demos/utils/create-bundles/Angular/template.html
delete mode 100644 apps/demos/utils/create-bundles/Angular/update-angular-json.ts
delete mode 100644 apps/demos/utils/create-bundles/Angular/utils.ts
delete mode 100644 apps/demos/utils/create-bundles/React/bundler.ts
delete mode 100644 apps/demos/utils/create-bundles/React/template.html
delete mode 100644 apps/demos/utils/create-bundles/Vue/bundler.ts
delete mode 100644 apps/demos/utils/create-bundles/Vue/template.html
delete mode 100644 apps/demos/utils/create-bundles/helper/bundler.ts
delete mode 100644 apps/demos/utils/create-bundles/helper/external-resource-metadata.ts
delete mode 100644 apps/demos/utils/create-bundles/helper/index.ts
delete mode 100644 apps/demos/utils/create-bundles/helper/metadata/scripts/init-theme.js
delete mode 100644 apps/demos/utils/create-bundles/helper/types.ts
delete mode 100644 apps/demos/utils/create-bundles/index.ts
delete mode 100644 apps/demos/utils/create-bundles/plugins/ignore-missing-css.ts
delete mode 100644 apps/demos/utils/visual-tests/github-ignored-list.js
diff --git a/.github/workflows/github-pages-publish.yml b/.github/workflows/github-pages-publish.yml
deleted file mode 100644
index 463e9490bcd6..000000000000
--- a/.github/workflows/github-pages-publish.yml
+++ /dev/null
@@ -1,35 +0,0 @@
-name: Publishing to GitHub Pages step 3 (to prod)
-
-on:
- workflow_dispatch:
-
-permissions:
- contents: read
- pages: write
- id-token: write
-
-concurrency:
- group: "pages"
- cancel-in-progress: false
-
-jobs:
- deploy:
- environment:
- name: github-pages
- url: ${{ steps.deployment.outputs.page_url }}
- runs-on: ubuntu-latest
- steps:
- - name: Checkout
- uses: actions/checkout@v6
- with:
- ref: gh-pages
- - name: Setup Pages
- uses: actions/configure-pages@v6
- - name: Upload artifact
- uses: actions/upload-pages-artifact@v5
- with:
- # Upload entire repository
- path: '.'
- - name: Deploy to GitHub Pages
- id: deployment
- uses: actions/deploy-pages@v5
diff --git a/.github/workflows/publish-demos.yml b/.github/workflows/publish-demos.yml
deleted file mode 100644
index d95a63e22430..000000000000
--- a/.github/workflows/publish-demos.yml
+++ /dev/null
@@ -1,297 +0,0 @@
-name: Publishing to GitHub Pages step 1 (to branch)
-
-on:
- workflow_dispatch:
-
-permissions:
- contents: read
-
-jobs:
- build-devextreme-all:
- runs-on: ubuntu-latest
- name: Build DevExtreme + wrappers
- timeout-minutes: 20
-
- steps:
- - name: Get sources
- uses: actions/checkout@v6
-
- - name: Use Node.js
- uses: actions/setup-node@v7
- with:
- node-version-file: '.node-version'
-
- - uses: pnpm/action-setup@v6
- with:
- run_install: false
-
- - uses: actions/cache@v5
- name: Setup pnpm cache
- with:
- path: ${{ env.STORE_PATH }}
- key: ${{ runner.os }}-pnpm-cache-${{ hashFiles('**/pnpm-lock.yaml') }}
- restore-keys: |
- ${{ runner.os }}-pnpm-cache
-
- - name: Lookup nx cache
- id: lookup-nx-cache
- uses: actions/cache/restore@v5
- with:
- path: |
- .nx/cache
- .nx/workspace-data/*.db
- .nx/workspace-data/*.db-wal
- .nx/workspace-data/*.db-shm
- key: ${{ runner.os }}-nx-v2-${{ github.workflow }}-${{ github.job }}-${{ github.sha }}
- restore-keys: |
- ${{ runner.os }}-nx-v2-${{ github.workflow }}-${{ github.job }}-${{ github.sha }}-
- ${{ runner.os }}-nx-v2-${{ github.workflow }}-${{ github.job }}-
- ${{ runner.os }}-nx-v2-
-
- lookup-only: true
-
- - name: Show nx cache status
- shell: bash
- run: |
- echo "Nx cache lookup exact hit: ${{ steps.lookup-nx-cache.outputs.cache-hit }}"
- echo "Nx cache primary key: ${{ steps.lookup-nx-cache.outputs.cache-primary-key }}"
- echo "Nx cache matched key: ${{ steps.lookup-nx-cache.outputs.cache-matched-key }}"
- if [ -z "${{ steps.lookup-nx-cache.outputs.cache-matched-key }}" ]; then
- echo "Nx cache lookup: miss"
- elif [ "${{ steps.lookup-nx-cache.outputs.cache-hit }}" = "true" ]; then
- echo "Nx cache lookup: exact hit"
- else
- echo "Nx cache lookup: partial hit via restore-keys"
- fi
-
- - name: Install dependencies
- run: |
- corepack enable
- pnpm install --frozen-lockfile
-
- - name: Setup nx cache
- id: setup-nx-cache
- uses: actions/cache@v5
- with:
- path: |
- .nx/cache
- .nx/workspace-data/*.db
- .nx/workspace-data/*.db-wal
- .nx/workspace-data/*.db-shm
- key: ${{ runner.os }}-nx-v2-${{ github.workflow }}-${{ github.job }}-${{ github.sha }}
- restore-keys: |
- ${{ runner.os }}-nx-v2-${{ github.workflow }}-${{ github.job }}-${{ github.sha }}-
- ${{ runner.os }}-nx-v2-${{ github.workflow }}-${{ github.job }}-
- ${{ runner.os }}-nx-v2-
-
- - name: DevExtreme - Build-all
- run: pnpm nx all:build-testing workflows
-
- - name: Move packages
- run: |
- mv ./packages/devextreme/artifacts/npm/devextreme/*.tgz ./devextreme-installer.tgz
- mv ./packages/devextreme/artifacts/npm/devextreme-dist/*.tgz ./devextreme-dist-installer.tgz
- mv ./packages/devextreme-angular/npm/dist/*.tgz ./devextreme-angular-installer.tgz
- mv ./packages/devextreme-react/npm/*.tgz ./devextreme-react-installer.tgz
- mv ./packages/devextreme-vue/npm/*.tgz ./devextreme-vue-installer.tgz
-
- - name: Copy build artifacts
- uses: actions/upload-artifact@v7
- with:
- name: devextreme-sources
- path: |
- devextreme-installer.tgz
- devextreme-dist-installer.tgz
- devextreme-angular-installer.tgz
- devextreme-react-installer.tgz
- devextreme-vue-installer.tgz
- retention-days: 1
-
- publish-ES:
- runs-on: ubuntu-latest
- needs: [build-devextreme-all]
- steps:
- - name: Get sources
- uses: actions/checkout@v6
-
- - name: Use Node.js
- uses: actions/setup-node@v7
- with:
- node-version-file: '.node-version'
-
- - name: Download devextreme sources
- uses: actions/download-artifact@v8
- with:
- name: devextreme-sources
-
- - uses: pnpm/action-setup@v6
- with:
- run_install: false
-
- - name: Get pnpm store directory
- shell: bash
- run: |
- echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_ENV
-
- - uses: actions/cache@v5
- name: Setup pnpm cache
- with:
- path: ${{ env.STORE_PATH }}
- key: ${{ runner.os }}-pnpm-cache-${{ hashFiles('**/pnpm-lock.yaml') }}
- restore-keys: |
- ${{ runner.os }}-pnpm-cache
-
- - name: Install dependencies
- run: |
- corepack enable
- pnpm install --frozen-lockfile
-
- - name: Install tgz
- working-directory: apps/demos
- run: pnpm add ../../devextreme-installer.tgz ../../devextreme-dist-installer.tgz ../../devextreme-react-installer.tgz ../../devextreme-vue-installer.tgz ../../devextreme-angular-installer.tgz
-
- - name: Copy metadata
- working-directory: apps/demos
- run: pnpm run make-demos-bundle --copy-metadata
-
- - name: Prepare React demo bundles
- working-directory: apps/demos
- run: pnpm run make-demos-bundle --framework="React"
-
- - name: Prepare Vue demo bundles
- working-directory: apps/demos
- run: pnpm run make-demos-bundle --framework="Vue"
-
- - name: Save publish-demos directory for ES as an artifact
- uses: actions/upload-artifact@v7
- with:
- name: publish-demos
- path: ./apps/demos/publish-demos
-
- publish-angular:
- runs-on: ubuntu-latest
- needs: [build-devextreme-all]
- strategy:
- fail-fast: false
- matrix:
- include:
- - name: Check generated demos (1/10)
- command: CONSTEL=1/10 pnpm run make-demos-bundle --framework="Angular"
- index: 1
- - name: Check generated demos (2/10)
- command: CONSTEL=2/10 pnpm run make-demos-bundle --framework="Angular"
- index: 2
- - name: Check generated demos (3/10)
- command: CONSTEL=3/10 pnpm run make-demos-bundle --framework="Angular"
- index: 3
- - name: Check generated demos (4/10)
- command: CONSTEL=4/10 pnpm run make-demos-bundle --framework="Angular"
- index: 4
- - name: Check generated demos (5/10)
- command: CONSTEL=5/10 pnpm run make-demos-bundle --framework="Angular"
- index: 5
- - name: Check generated demos (6/10)
- command: CONSTEL=6/10 pnpm run make-demos-bundle --framework="Angular"
- index: 6
- - name: Check generated demos (7/10)
- command: CONSTEL=7/10 pnpm run make-demos-bundle --framework="Angular"
- index: 7
- - name: Check generated demos (8/10)
- command: CONSTEL=8/10 pnpm run make-demos-bundle --framework="Angular"
- index: 8
- - name: Check generated demos (9/10)
- command: CONSTEL=9/10 pnpm run make-demos-bundle --framework="Angular"
- index: 9
- - name: Check generated demos (10/10)
- command: CONSTEL=10/10 pnpm run make-demos-bundle --framework="Angular"
- index: 10
- steps:
- - name: Get sources
- uses: actions/checkout@v6
-
- - name: Use Node.js
- uses: actions/setup-node@v7
- with:
- node-version-file: '.node-version'
-
- - name: Download devextreme sources
- uses: actions/download-artifact@v8
- with:
- name: devextreme-sources
-
- - uses: pnpm/action-setup@v6
- with:
- run_install: false
-
- - name: Get pnpm store directory
- shell: bash
- run: |
- echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_ENV
-
- - uses: actions/cache@v5
- name: Setup pnpm cache
- with:
- path: ${{ env.STORE_PATH }}
- key: ${{ runner.os }}-pnpm-cache-${{ hashFiles('**/pnpm-lock.yaml') }}
- restore-keys: |
- ${{ runner.os }}-pnpm-cache
-
- - name: Install dependencies
- run: |
- corepack enable
- pnpm install --frozen-lockfile
-
- - name: Install tgz
- working-directory: apps/demos
- run: pnpm add ../../devextreme-installer.tgz ../../devextreme-dist-installer.tgz ../../devextreme-react-installer.tgz ../../devextreme-vue-installer.tgz ../../devextreme-angular-installer.tgz
-
- - name: Copy metadata
- working-directory: apps/demos
- run: pnpm run make-demos-bundle --copy-metadata
-
- - name: Update angular.json
- working-directory: apps/demos
- run: pnpm run update-angular-json
-
- - name: Prepare Angular demo bundles
- working-directory: apps/demos
- run: |
- ${{ matrix.command }}
-
- - name: Angular post process index.html
- working-directory: apps/demos
- run: pnpm run post-process-angular
-
- - name: Save publish-demos directory for Angular as an artifact
- uses: actions/upload-artifact@v7
- with:
- name: publish-demos-angular-${{ matrix.index }}
- path: ./apps/demos/publish-demos/
-
- deploy:
- runs-on: ubuntu-latest
- needs: [build-devextreme-all, publish-ES, publish-angular]
- permissions:
- contents: write
- environment: gh-pages-demos
- steps:
- - name: Download publish-demos artifact
- uses: actions/download-artifact@v8
- with:
- name: publish-demos
- path: ./apps/demos/publish-demos
-
- - name: Download publish-demos artifact
- uses: actions/download-artifact@v8
- with:
- pattern: publish-demos-angular-*
- merge-multiple: true
- path: ./apps/demos/publish-demos/
-
- - name: Deploy to gh-pages
- uses: peaceiris/actions-gh-pages@v4
- with:
- github_token: ${{ secrets.GITHUB_TOKEN }}
- publish_dir: ./apps/demos/publish-demos
- destination_dir: demos
- keep_files: true
diff --git a/.github/workflows/run-testcafe-on-gh-pages.yml b/.github/workflows/run-testcafe-on-gh-pages.yml
deleted file mode 100644
index 66d8f102637a..000000000000
--- a/.github/workflows/run-testcafe-on-gh-pages.yml
+++ /dev/null
@@ -1,148 +0,0 @@
-name: Publishing to GitHub Pages step 2 (run tests on branch)
-
-concurrency:
- group: wf-${{github.event.pull_request.number || github.sha}}-${{github.workflow}}
- cancel-in-progress: true
-
-on:
- workflow_dispatch:
-
-jobs:
- testcafe:
- strategy:
- fail-fast: false
- matrix:
- CONSTEL: [react(1/4), react(2/4), react(3/4), react(4/4), vue(1/4), vue(2/4), vue(3/4), vue(4/4), angular(1/4), angular(2/4), angular(3/4), angular(4/4)]
- THEME: ['material.blue.light', 'fluent.blue.light', 'fluent-next.blue.light']
-
-
- runs-on: ubuntu-22.04
- name: testcafe-${{ matrix.CONSTEL }}-${{ matrix.THEME }}
- timeout-minutes: 60
- env:
- TARGET_BRANCH: ${{ github.ref_name }}
-
- steps:
- - name: Use Node.js
- uses: actions/setup-node@v7
- with:
- node-version-file: '.node-version'
-
- - name: Checkout gh-pages branch
- uses: actions/checkout@v6
- with:
- ref: gh-pages
- path: gh-pages
-
- - name: Run Web Server
- working-directory: gh-pages
- run: |
- python -m http.server 8080 &
- python -m http.server 8081 &
- python -m http.server 8082 &
- python -m http.server 8083 &
-
- - name: Checkout main branch
- uses: actions/checkout@v6
- with:
- ref: ${{ env.TARGET_BRANCH }}
- path: devextreme
-
- - name: Console.log ls
- run: ls -al & cd gh-pages & ls -al
-
- - name: Setup Chrome
- uses: ./devextreme/.github/actions/setup-chrome
- with:
- chrome-version: '155.0.8059.39'
-
- - uses: pnpm/action-setup@v6
- with:
- run_install: false
-
- - uses: actions/cache@v5
- name: Setup pnpm cache
- with:
- path: ${{ env.STORE_PATH }}
- key: ${{ runner.os }}-pnpm-cache-${{ hashFiles('**/pnpm-lock.yaml') }}
- restore-keys: |
- ${{ runner.os }}-pnpm-cache
-
- - name: Lookup nx cache
- id: lookup-nx-cache
- uses: actions/cache/restore@v5
- with:
- path: |
- devextreme/.nx/cache
- devextreme/.nx/workspace-data/*.db
- devextreme/.nx/workspace-data/*.db-wal
- devextreme/.nx/workspace-data/*.db-shm
- key: ${{ runner.os }}-nx-v2-${{ github.workflow }}-${{ github.job }}-${{ matrix.CONSTEL }}-${{ matrix.THEME }}-${{ github.sha }}
- restore-keys: |
- ${{ runner.os }}-nx-v2-${{ github.workflow }}-${{ github.job }}-${{ matrix.CONSTEL }}-${{ matrix.THEME }}-${{ github.sha }}-
- ${{ runner.os }}-nx-v2-${{ github.workflow }}-${{ github.job }}-${{ matrix.CONSTEL }}-${{ matrix.THEME }}-
- ${{ runner.os }}-nx-v2-${{ github.workflow }}-${{ github.job }}-
- ${{ runner.os }}-nx-v2-
-
- lookup-only: true
-
- - name: Show nx cache status
- shell: bash
- run: |
- echo "Nx cache lookup exact hit: ${{ steps.lookup-nx-cache.outputs.cache-hit }}"
- echo "Nx cache primary key: ${{ steps.lookup-nx-cache.outputs.cache-primary-key }}"
- echo "Nx cache matched key: ${{ steps.lookup-nx-cache.outputs.cache-matched-key }}"
- if [ -z "${{ steps.lookup-nx-cache.outputs.cache-matched-key }}" ]; then
- echo "Nx cache lookup: miss"
- elif [ "${{ steps.lookup-nx-cache.outputs.cache-hit }}" = "true" ]; then
- echo "Nx cache lookup: exact hit"
- else
- echo "Nx cache lookup: partial hit via restore-keys"
- fi
-
- - name: Install dependencies
- working-directory: devextreme
- run: |
- corepack enable
- pnpm install --frozen-lockfile
-
- - name: Setup nx cache
- id: setup-nx-cache
- uses: actions/cache@v5
- with:
- path: |
- devextreme/.nx/cache
- devextreme/.nx/workspace-data/*.db
- devextreme/.nx/workspace-data/*.db-wal
- devextreme/.nx/workspace-data/*.db-shm
- key: ${{ runner.os }}-nx-v2-${{ github.workflow }}-${{ github.job }}-${{ matrix.CONSTEL }}-${{ matrix.THEME }}-${{ github.sha }}
- restore-keys: |
- ${{ runner.os }}-nx-v2-${{ github.workflow }}-${{ github.job }}-${{ matrix.CONSTEL }}-${{ matrix.THEME }}-${{ github.sha }}-
- ${{ runner.os }}-nx-v2-${{ github.workflow }}-${{ github.job }}-${{ matrix.CONSTEL }}-${{ matrix.THEME }}-
- ${{ runner.os }}-nx-v2-${{ github.workflow }}-${{ github.job }}-
- ${{ runner.os }}-nx-v2-
-
- - name: Run TestCafe tests
- working-directory: devextreme/apps/demos
- env:
- CHANGEDFILEINFOSPATH: changed-files.json
- BROWSERS: chrome:headless --window-size=1200,800 --disable-partial-raster --disable-skia-runtime-opts --run-all-compositor-stages-before-draw --disable-new-content-rendering-timeout --disable-threaded-animation --disable-threaded-scrolling --disable-checker-imaging --disable-image-animation-resync --use-gl="swiftshader" --disable-features=PaintHolding --js-flags=--random-seed=2147483647 --font-render-hinting=none --disable-font-subpixel-positioning
- #DEBUG: hammerhead:*,testcafe:*
- CONCURRENCY: 4
- TCQUARANTINE: true
- CONSTEL: ${{ matrix.CONSTEL }}
- THEME: ${{ matrix.THEME }}
- ISGITHUBDEMOS: true
- # DISABLE_DEMO_TEST_SETTINGS: all # Uncomment to ignore all the visualtestrc.json settings
- # DISABLE_DEMO_TEST_SETTINGS: ignore # Uncomment to ignore the `ignore` field
- # DISABLE_DEMO_TEST_SETTINGS: comparison-options # Uncomment to ignore the `comparison-options` field
- CI_ENV: true # The `ignore` field in the visualtestrc.json should be disabled when running test locally
- run: pnpm exec nx test-testcafe
-
- - name: Copy screenshots artifacts
- if: ${{ failure() }}
- uses: actions/upload-artifact@v7
- with:
- name: screenshots
- path: ${{ github.workspace }}/devextreme/apps/demos/testing/artifacts/compared-screenshots/**/*
- if-no-files-found: ignore
diff --git a/apps/demos/.gitignore b/apps/demos/.gitignore
index c03001f31c47..f5a9d6ed5880 100644
--- a/apps/demos/.gitignore
+++ b/apps/demos/.gitignore
@@ -34,7 +34,6 @@ Demos/**/_chunks
.DS_Store
**/.DS_Store
-publish-demos
csp-reports
@@ -44,6 +43,3 @@ Demos/**/.demo-bundle-angular-patched.*.ts
# Scratch entry files from utils/server/vendor-bundle.js (cleaned up on success).
.vendor-entry-tmp
-
-.angular
-angular.json
diff --git a/apps/demos/.prettierignore b/apps/demos/.prettierignore
index 1759b9938476..6be4ecd1fd0c 100644
--- a/apps/demos/.prettierignore
+++ b/apps/demos/.prettierignore
@@ -7,7 +7,5 @@
*.md
*.json
.github
-publish-demos
coverage
testing/artifacts
-utils/**/template.html
diff --git a/apps/demos/.stylelintignore b/apps/demos/.stylelintignore
index e48bb9ae0821..4ebc8aea50e0 100644
--- a/apps/demos/.stylelintignore
+++ b/apps/demos/.stylelintignore
@@ -1,2 +1 @@
-publish-demos
coverage
diff --git a/apps/demos/eslint.config.mjs b/apps/demos/eslint.config.mjs
index d6880e294b3f..8ed10c4d9481 100644
--- a/apps/demos/eslint.config.mjs
+++ b/apps/demos/eslint.config.mjs
@@ -39,7 +39,6 @@ export default [
'node_modules',
'bundles',
'coverage',
- 'publish-demos',
'Demos/**/testcafe-test-code.js',
'shared/empty-file.ts',
'Demos/**/Vue/**/*.html',
@@ -108,7 +107,6 @@ export default [
'timestamps',
'urls',
'whitespace',
- 'yargs',
'treshold', // should be updated to 'threshold' in the codebase
'callstack',
'Deprecations',
diff --git a/apps/demos/package.json b/apps/demos/package.json
index cad43d8572a7..5b3624627f0a 100644
--- a/apps/demos/package.json
+++ b/apps/demos/package.json
@@ -18,7 +18,6 @@
"dependencies": {
"@angular/animations": "^22.2.1",
"@angular-devkit/build-angular": "^22.2.1",
- "@angular/cli": "^22.2.1",
"@angular/common": "^22.2.1",
"@angular/compiler": "^22.2.1",
"@angular/compiler-cli": "^22.2.1",
@@ -80,7 +79,6 @@
"vue": "^3.3.4",
"vuex": "4.0.0-beta.4",
"whatwg-fetch": "2.0.4",
- "yargs": "17.7.2",
"zod": "catalog:",
"zone.js": "0.16.2",
"express-rate-limit": "^8.3.1"
@@ -102,7 +100,6 @@
"@types/fs-extra": "11.0.2",
"@types/react": "17.0.91",
"@types/react-dom": "17.0.26",
- "@types/yargs": "17.0.35",
"@typescript-eslint/eslint-plugin": "catalog:",
"@typescript-eslint/parser": "catalog:",
"@vue/eslint-config-typescript": "12.0.0",
@@ -128,7 +125,6 @@
"express": "4.22.1",
"glob": "11.1.0",
"globals": "catalog:",
- "http-server": "14.1.1",
"jest": "30.4.2",
"jest-environment-node": "30.4.1",
"lodash": "4.18.1",
@@ -171,11 +167,6 @@
"prettier": "prettier",
"convert-to-js": "ts-node ./utils/ts-to-js-converter/cli.ts",
"create-typestat-cfg": "cd ./utils/internal && node ./create-typestat-cfg.js",
- "make-demos-bundle": "ts-node ./utils/create-bundles",
- "update-angular-json": "ts-node ./utils/create-bundles/Angular/update-angular-json.ts",
- "build-angular": "ng build",
- "post-process-angular": "ts-node ./utils/create-bundles/Angular/post-process-index.ts",
- "webserver-gh": "cd ./publish-demos && http-server --port 5645",
"ts-check-react": "pnpm exec tsc --noEmit --project tsconfig.react-check.json",
"ts-check-ng": "pnpm exec ngc --noEmit --project tsconfig.ngc-check.json",
"ts-check-vue": "pnpm exec vue-tsc --noEmit --project tsconfig.vue-check.json"
diff --git a/apps/demos/project.json b/apps/demos/project.json
index e29c28ac65ca..dcb5108ff9fa 100644
--- a/apps/demos/project.json
+++ b/apps/demos/project.json
@@ -85,7 +85,6 @@
"{projectRoot}/**/*.vue",
"!{projectRoot}/node_modules/**/*",
"!{projectRoot}/coverage/**/*",
- "!{projectRoot}/publish-demos/**/*",
"!{projectRoot}/testing/artifacts/**/*",
"{projectRoot}/.stylelintrc.json",
"{projectRoot}/.stylelintignore"
@@ -100,7 +99,6 @@
"{projectRoot}/**/*",
"!{projectRoot}/node_modules/**/*",
"!{projectRoot}/coverage/**/*",
- "!{projectRoot}/publish-demos/**/*",
"!{projectRoot}/testing/artifacts/**/*"
]
},
diff --git a/apps/demos/testing/common.test.ts b/apps/demos/testing/common.test.ts
index 9344bc853794..e6b04220dc90 100644
--- a/apps/demos/testing/common.test.ts
+++ b/apps/demos/testing/common.test.ts
@@ -29,8 +29,6 @@ import { skippedTests } from './skipped-tests';
import { widgetsGalleryServiceMock } from './apiMocks/widgetsGalleryServiceMock';
import { xmlaServiceMock } from './apiMocks/xmlaServiceMock';
-import { gitHubIgnored } from '../utils/visual-tests/github-ignored-list';
-
const execTestCafeCode = (t, code) => {
// eslint-disable-next-line no-eval
const testCafeFunction = eval(code);
@@ -206,19 +204,8 @@ Object.values(FRAMEWORKS).forEach((approach) => {
}
}
- const isGitHubDemos = process.env.ISGITHUBDEMOS;
- let pageURL = '';
- const theme = process.env.THEME.replace('generic.', '');
- if (isGitHubDemos) {
- pageURL = `http://127.0.0.1:8080/Demos/${widgetName}/${demoName}/${approach}/?theme=dx.${theme}`;
- } else {
- changeTheme(__dirname, `../${demoPath}/index.html`, process.env.THEME);
- pageURL = `http://127.0.0.1:8080/apps/demos/Demos/${widgetName}/${demoName}/${approach}/`;
- }
- // remove when tests enabled not only for datagrid
- if (isGitHubDemos && (widgetName !== 'DataGrid' || gitHubIgnored.includes(demoName))) {
- return;
- }
+ changeTheme(__dirname, `../${demoPath}/index.html`, process.env.THEME);
+ const pageURL = `http://127.0.0.1:8080/apps/demos/Demos/${widgetName}/${demoName}/${approach}/`;
if (shouldSkipDemo(approach, widgetName, demoName, skippedTests) && process.env.STRATEGY !== 'accessibility') {
return;
diff --git a/apps/demos/utils/create-bundles/Angular/bundler.ts b/apps/demos/utils/create-bundles/Angular/bundler.ts
deleted file mode 100644
index 1b76b9cea5fa..000000000000
--- a/apps/demos/utils/create-bundles/Angular/bundler.ts
+++ /dev/null
@@ -1,60 +0,0 @@
-import { spawn } from 'child_process';
-import { BuildOptions } from 'esbuild';
-import { existsSync, mkdirSync, removeSync } from 'fs-extra';
-import { Demo, Framework } from '../helper/types';
-import { createDemoLayout, getDestinationPathByDemo, getSourcePathByDemo } from '../helper';
-import { getIndexHtmlPath, getProjectNameByDemo } from './utils';
-
-interface Bundler {
- framework: Framework;
- getBuildOptions: (demo: Demo) => BuildOptions;
- buildDemo: (demo: Demo, res) => void;
-}
-export default class AngularBundler implements Bundler {
- framework: Framework;
-
- constructor() {
- this.framework = 'Angular';
- }
-
- getBuildOptions = (): BuildOptions => ({});
-
- buildDemo = (demo: Demo, res): Promise => {
- const sourceDemoPath = getSourcePathByDemo(demo, this.framework);
- if (!existsSync(sourceDemoPath)) {
- res();
- return;
- }
-
- const destinationDemoPath = getDestinationPathByDemo(demo, this.framework);
- const indexHtmlPath = getIndexHtmlPath(demo);
-
- if (existsSync(destinationDemoPath)) {
- removeSync(destinationDemoPath);
- }
-
- if (existsSync(indexHtmlPath)) {
- removeSync(indexHtmlPath);
- }
-
- mkdirSync(destinationDemoPath, { recursive: true });
- mkdirSync(indexHtmlPath, { recursive: true });
-
- createDemoLayout(demo, this.framework);
-
- const isWin = process.platform === 'win32';
- const npmCmd = isWin ? 'npm.cmd' : 'npm';
- const npmArgs = ['run', 'build-angular', '--', getProjectNameByDemo(demo)];
- const ngBuildProcess = spawn(npmCmd, npmArgs);
- ngBuildProcess.stdout.on('data', (data) => {
- console.log(`stdout: ${data}`);
- });
- ngBuildProcess.stderr.on('data', (data) => {
- console.error(`stderr: ${data}`);
- });
- ngBuildProcess.on('close', (code) => {
- console.log(`child process exited with code ${code}`);
- res();
- });
- };
-}
diff --git a/apps/demos/utils/create-bundles/Angular/polyfill.ts b/apps/demos/utils/create-bundles/Angular/polyfill.ts
deleted file mode 100644
index aa09a9ff6ae6..000000000000
--- a/apps/demos/utils/create-bundles/Angular/polyfill.ts
+++ /dev/null
@@ -1 +0,0 @@
-import 'zone.js';
diff --git a/apps/demos/utils/create-bundles/Angular/post-process-index.ts b/apps/demos/utils/create-bundles/Angular/post-process-index.ts
deleted file mode 100644
index 78164a9a64f1..000000000000
--- a/apps/demos/utils/create-bundles/Angular/post-process-index.ts
+++ /dev/null
@@ -1,89 +0,0 @@
-import fs from 'fs';
-import path from 'path';
-
-const demoProjectsDir = path.join(__dirname, '../../../publish-demos/Demos/');
-
-// In the demo, we need to wait, while themes are loaded
-// Angular build add scripts to the end of index.html, here we are wrapping them in onload callback
-function wrapBundleScripts(filePath) {
- fs.readFile(filePath, 'utf8', (err, data) => {
- if (err) {
- console.error(`Error reading file ${filePath}:`, err);
- return;
- }
-
- const polyfillRegex = /
-
-
- Loading...
-
-
-
-
- `;
-
- const newHtml = cleanedHtml.replace('', wrappedBundleScripts);
-
- fs.writeFile(filePath, newHtml, 'utf8', (err) => {
- if (err) {
- console.error(`Error writing file ${filePath}:`, err);
- return;
- }
- console.log(`Modified ${filePath} successfully.`);
- });
- });
-}
-
-function processDemoProjects(demosDirectory) {
- fs.readdir(demosDirectory, (err, widgets) => {
- if (err) {
- console.error(`Error reading directory ${demosDirectory}:`, err);
- return;
- }
-
- widgets.forEach((widget) => {
- const widgetPath = path.join(demosDirectory, widget);
- fs.readdir(widgetPath, (err, demoName) => {
- if (err) {
- console.error(`Error reading directory ${widgetPath}:`, err);
- return;
- }
- demoName.forEach((demo) => {
- const filePath = path.join(widgetPath, demo, 'Angular', 'index.html');
- if (fs.existsSync(filePath)) {
- wrapBundleScripts(filePath);
- } else {
- console.warn(`File not found: ${filePath}`);
- }
- });
- });
- });
- });
-}
-
-processDemoProjects(demoProjectsDir);
diff --git a/apps/demos/utils/create-bundles/Angular/template.html b/apps/demos/utils/create-bundles/Angular/template.html
deleted file mode 100644
index 7acb8301f99c..000000000000
--- a/apps/demos/utils/create-bundles/Angular/template.html
+++ /dev/null
@@ -1,24 +0,0 @@
-
-
-