mirror of
https://github.com/ionic-team/ionic-framework.git
synced 2025-08-14 16:52:26 +08:00
test(): migrate tests to GitHub Actions (#24029)
This commit is contained in:
@ -1,596 +0,0 @@
|
|||||||
version: 2.1
|
|
||||||
orbs:
|
|
||||||
cypress: cypress-io/cypress@1.29.0
|
|
||||||
|
|
||||||
aliases:
|
|
||||||
- &restore-cache
|
|
||||||
keys:
|
|
||||||
- dependency-cache-{{ checksum "package.json" }}-7
|
|
||||||
|
|
||||||
- &save-cache
|
|
||||||
key: dependency-cache-{{ checksum "package.json" }}-7
|
|
||||||
paths:
|
|
||||||
- node_modules
|
|
||||||
|
|
||||||
- &restore-cache-core
|
|
||||||
keys:
|
|
||||||
- dependency-cache-{{ checksum "core/package.json" }}-7
|
|
||||||
|
|
||||||
- &save-cache-core
|
|
||||||
key: dependency-cache-{{ checksum "core/package.json" }}-7
|
|
||||||
paths:
|
|
||||||
- core/node_modules
|
|
||||||
|
|
||||||
- &restore-cache-core-stencil
|
|
||||||
keys:
|
|
||||||
- stencil-cache-6
|
|
||||||
|
|
||||||
- &save-cache-core-stencil
|
|
||||||
key: stencil-cache-6
|
|
||||||
paths:
|
|
||||||
- core/.stencil
|
|
||||||
- core/screenshot/images
|
|
||||||
|
|
||||||
defaults: &defaults
|
|
||||||
docker:
|
|
||||||
- image: circleci/node:latest-browsers
|
|
||||||
working_directory: /tmp/workspace
|
|
||||||
environment:
|
|
||||||
NODE_ENV: development
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
puppeteer-dependencies:
|
|
||||||
<<: *defaults
|
|
||||||
steps:
|
|
||||||
- run:
|
|
||||||
name: Install headless Chrome dependencies
|
|
||||||
command: |
|
|
||||||
sudo apt-get install -yq \
|
|
||||||
gconf-service libasound2 libatk1.0-0 libatk-bridge2.0-0 libc6 libcairo2 libcups2 libdbus-1-3 \
|
|
||||||
libexpat1 libfontconfig1 libgcc1 libgconf-2-4 libgdk-pixbuf2.0-0 libglib2.0-0 libgtk-3-0 libnspr4 \
|
|
||||||
libpango-1.0-0 libpangocairo-1.0-0 libstdc++6 libx11-6 libx11-xcb1 libxcb1 libxcomposite1 libxcursor1 \
|
|
||||||
libxdamage1 libxext6 libxfixes3 libxi6 libxrandr2 libxrender1 libxss1 libxtst6 ca-certificates \
|
|
||||||
fonts-liberation libappindicator1 libnss3 lsb-release xdg-utils wget
|
|
||||||
- run:
|
|
||||||
name: Install Puppeteer with Chromium
|
|
||||||
command: |
|
|
||||||
npm i puppeteer
|
|
||||||
|
|
||||||
build:
|
|
||||||
<<: *defaults
|
|
||||||
steps:
|
|
||||||
- checkout
|
|
||||||
- restore_cache: *restore-cache
|
|
||||||
- run: npm install --legacy-peer-deps
|
|
||||||
- save_cache: *save-cache
|
|
||||||
- persist_to_workspace:
|
|
||||||
root: /tmp/workspace
|
|
||||||
paths:
|
|
||||||
- node_modules
|
|
||||||
|
|
||||||
build-core:
|
|
||||||
<<: *defaults
|
|
||||||
steps:
|
|
||||||
- checkout
|
|
||||||
- attach_workspace:
|
|
||||||
at: /tmp/workspace
|
|
||||||
- restore_cache: *restore-cache-core
|
|
||||||
- restore_cache: *restore-cache-core-stencil
|
|
||||||
- run:
|
|
||||||
command: npm install --legacy-peer-deps
|
|
||||||
working_directory: /tmp/workspace/core
|
|
||||||
- save_cache: *save-cache-core
|
|
||||||
- run:
|
|
||||||
command: npm run build -- --ci
|
|
||||||
working_directory: /tmp/workspace/core
|
|
||||||
- save_cache: *save-cache-core-stencil
|
|
||||||
- persist_to_workspace:
|
|
||||||
root: /tmp/workspace
|
|
||||||
paths:
|
|
||||||
- core/node_modules
|
|
||||||
- core/dist
|
|
||||||
- core/components
|
|
||||||
- core/css
|
|
||||||
- core/hydrate
|
|
||||||
- core/loader
|
|
||||||
|
|
||||||
build-angular:
|
|
||||||
<<: *defaults
|
|
||||||
steps:
|
|
||||||
- checkout
|
|
||||||
- attach_workspace:
|
|
||||||
at: /tmp/workspace
|
|
||||||
- run:
|
|
||||||
command: npm install --legacy-peer-deps
|
|
||||||
working_directory: /tmp/workspace/angular
|
|
||||||
- run:
|
|
||||||
command: sudo npm link
|
|
||||||
working_directory: /tmp/workspace/core
|
|
||||||
- run:
|
|
||||||
command: sudo npm link @ionic/core
|
|
||||||
working_directory: /tmp/workspace/angular
|
|
||||||
- run:
|
|
||||||
command: npm run build
|
|
||||||
working_directory: /tmp/workspace/angular
|
|
||||||
- persist_to_workspace:
|
|
||||||
root: /tmp/workspace
|
|
||||||
paths:
|
|
||||||
- angular/node_modules
|
|
||||||
- angular/dist
|
|
||||||
|
|
||||||
build-angular-server:
|
|
||||||
<<: *defaults
|
|
||||||
steps:
|
|
||||||
- checkout
|
|
||||||
- attach_workspace:
|
|
||||||
at: /tmp/workspace
|
|
||||||
- run:
|
|
||||||
command: npm install --legacy-peer-deps
|
|
||||||
working_directory: /tmp/workspace/packages/angular-server
|
|
||||||
- run:
|
|
||||||
command: npm run build.prod
|
|
||||||
working_directory: /tmp/workspace/packages/angular-server
|
|
||||||
- persist_to_workspace:
|
|
||||||
root: /tmp/workspace
|
|
||||||
paths:
|
|
||||||
- packages/angular-server/dist
|
|
||||||
|
|
||||||
build-react:
|
|
||||||
<<: *defaults
|
|
||||||
steps:
|
|
||||||
- checkout
|
|
||||||
- attach_workspace:
|
|
||||||
at: /tmp/workspace
|
|
||||||
- run:
|
|
||||||
command: npm install --legacy-peer-deps
|
|
||||||
working_directory: /tmp/workspace/packages/react
|
|
||||||
- run:
|
|
||||||
command: sudo npm link
|
|
||||||
working_directory: /tmp/workspace/core
|
|
||||||
- run:
|
|
||||||
command: sudo npm link @ionic/core
|
|
||||||
working_directory: /tmp/workspace/packages/react
|
|
||||||
- run:
|
|
||||||
command: npm run build
|
|
||||||
working_directory: /tmp/workspace/packages/react
|
|
||||||
- persist_to_workspace:
|
|
||||||
root: /tmp/workspace
|
|
||||||
paths:
|
|
||||||
- packages/react/node_modules
|
|
||||||
- packages/react/dist
|
|
||||||
- packages/react/css
|
|
||||||
|
|
||||||
build-react-router:
|
|
||||||
<<: *defaults
|
|
||||||
steps:
|
|
||||||
- checkout
|
|
||||||
- attach_workspace:
|
|
||||||
at: /tmp/workspace
|
|
||||||
- run:
|
|
||||||
command: npm install --legacy-peer-deps
|
|
||||||
working_directory: /tmp/workspace/packages/react-router
|
|
||||||
- run:
|
|
||||||
command: sudo npm link
|
|
||||||
working_directory: /tmp/workspace/core
|
|
||||||
- run:
|
|
||||||
command: sudo npm link @ionic/core
|
|
||||||
working_directory: /tmp/workspace/packages/react-router
|
|
||||||
- run:
|
|
||||||
command: sudo npm link
|
|
||||||
working_directory: /tmp/workspace/packages/react
|
|
||||||
- run:
|
|
||||||
command: sudo npm link @ionic/react
|
|
||||||
working_directory: /tmp/workspace/packages/react-router
|
|
||||||
- run:
|
|
||||||
command: npm run build
|
|
||||||
working_directory: /tmp/workspace/packages/react-router
|
|
||||||
- persist_to_workspace:
|
|
||||||
root: /tmp/workspace
|
|
||||||
paths:
|
|
||||||
- packages/react-router/node_modules
|
|
||||||
- packages/react-router/dist
|
|
||||||
|
|
||||||
build-vue:
|
|
||||||
<<: *defaults
|
|
||||||
steps:
|
|
||||||
- checkout
|
|
||||||
- attach_workspace:
|
|
||||||
at: /tmp/workspace
|
|
||||||
- run:
|
|
||||||
command: npm install
|
|
||||||
working_directory: /tmp/workspace/packages/vue
|
|
||||||
- run:
|
|
||||||
command: sudo npm link
|
|
||||||
working_directory: /tmp/workspace/core
|
|
||||||
- run:
|
|
||||||
command: sudo npm link @ionic/core
|
|
||||||
working_directory: /tmp/workspace/packages/vue
|
|
||||||
- run:
|
|
||||||
command: npm run build
|
|
||||||
working_directory: /tmp/workspace/packages/vue
|
|
||||||
- persist_to_workspace:
|
|
||||||
root: /tmp/workspace
|
|
||||||
paths:
|
|
||||||
- packages/vue/node_modules
|
|
||||||
- packages/vue/dist
|
|
||||||
- packages/vue/css
|
|
||||||
|
|
||||||
build-vue-router:
|
|
||||||
<<: *defaults
|
|
||||||
steps:
|
|
||||||
- checkout
|
|
||||||
- attach_workspace:
|
|
||||||
at: /tmp/workspace
|
|
||||||
- run:
|
|
||||||
command: npm install
|
|
||||||
working_directory: /tmp/workspace/packages/vue-router
|
|
||||||
- run:
|
|
||||||
command: sudo npm link
|
|
||||||
working_directory: /tmp/workspace/packages/vue
|
|
||||||
- run:
|
|
||||||
command: sudo npm link @ionic/vue
|
|
||||||
working_directory: /tmp/workspace/packages/vue-router
|
|
||||||
- run:
|
|
||||||
command: npm run build
|
|
||||||
working_directory: /tmp/workspace/packages/vue-router
|
|
||||||
- persist_to_workspace:
|
|
||||||
root: /tmp/workspace
|
|
||||||
paths:
|
|
||||||
- packages/vue-router/dist
|
|
||||||
|
|
||||||
test-core-clean-build:
|
|
||||||
<<: *defaults
|
|
||||||
steps:
|
|
||||||
- checkout
|
|
||||||
- attach_workspace:
|
|
||||||
at: /tmp/workspace
|
|
||||||
- run:
|
|
||||||
name: Checking clean build
|
|
||||||
command: git diff --exit-code
|
|
||||||
working_directory: /tmp/workspace/core
|
|
||||||
|
|
||||||
test-core-lint:
|
|
||||||
<<: *defaults
|
|
||||||
steps:
|
|
||||||
- checkout
|
|
||||||
- attach_workspace:
|
|
||||||
at: /tmp/workspace
|
|
||||||
- run:
|
|
||||||
command: npm run lint
|
|
||||||
working_directory: /tmp/workspace/core
|
|
||||||
|
|
||||||
test-core-e2e:
|
|
||||||
<<: *defaults
|
|
||||||
steps:
|
|
||||||
- checkout
|
|
||||||
- attach_workspace:
|
|
||||||
at: /tmp/workspace
|
|
||||||
- run:
|
|
||||||
command: npm run test.e2e -- --ci --no-build
|
|
||||||
working_directory: /tmp/workspace/core
|
|
||||||
|
|
||||||
test-core-spec:
|
|
||||||
<<: *defaults
|
|
||||||
steps:
|
|
||||||
- checkout
|
|
||||||
- attach_workspace:
|
|
||||||
at: /tmp/workspace
|
|
||||||
- run:
|
|
||||||
command: npm run test.spec -- --ci
|
|
||||||
working_directory: /tmp/workspace/core
|
|
||||||
|
|
||||||
test-core-treeshake:
|
|
||||||
<<: *defaults
|
|
||||||
steps:
|
|
||||||
- checkout
|
|
||||||
- attach_workspace:
|
|
||||||
at: /tmp/workspace
|
|
||||||
- run:
|
|
||||||
command: npm run test.treeshake -- --ci
|
|
||||||
working_directory: /tmp/workspace/core
|
|
||||||
|
|
||||||
test-core-screenshot:
|
|
||||||
<<: *defaults
|
|
||||||
steps:
|
|
||||||
- checkout
|
|
||||||
- attach_workspace:
|
|
||||||
at: /tmp/workspace
|
|
||||||
- run:
|
|
||||||
name: Run Screenshot
|
|
||||||
command: npx stencil test --e2e --screenshot --screenshot-connector=scripts/screenshot/ci.js --ci --no-build || true
|
|
||||||
working_directory: /tmp/workspace/core
|
|
||||||
|
|
||||||
test-core-screenshot-master:
|
|
||||||
<<: *defaults
|
|
||||||
steps:
|
|
||||||
- checkout
|
|
||||||
- attach_workspace:
|
|
||||||
at: /tmp/workspace
|
|
||||||
- run:
|
|
||||||
name: Run Screenshot
|
|
||||||
command: npx stencil test --e2e --screenshot --screenshot-connector=scripts/screenshot/ci.js --ci --update-screenshot --no-build || true
|
|
||||||
working_directory: /tmp/workspace/core
|
|
||||||
|
|
||||||
test-angular-lint:
|
|
||||||
<<: *defaults
|
|
||||||
steps:
|
|
||||||
- checkout
|
|
||||||
- attach_workspace:
|
|
||||||
at: /tmp/workspace
|
|
||||||
- run:
|
|
||||||
command: npm run lint
|
|
||||||
working_directory: /tmp/workspace/angular
|
|
||||||
|
|
||||||
test-react-lint:
|
|
||||||
<<: *defaults
|
|
||||||
steps:
|
|
||||||
- checkout
|
|
||||||
- attach_workspace:
|
|
||||||
at: /tmp/workspace
|
|
||||||
- run:
|
|
||||||
command: npm run lint
|
|
||||||
working_directory: /tmp/workspace/packages/react
|
|
||||||
|
|
||||||
test-react-router-lint:
|
|
||||||
<<: *defaults
|
|
||||||
steps:
|
|
||||||
- checkout
|
|
||||||
- attach_workspace:
|
|
||||||
at: /tmp/workspace
|
|
||||||
- run:
|
|
||||||
command: npm run lint
|
|
||||||
working_directory: /tmp/workspace/packages/react-router
|
|
||||||
|
|
||||||
test-vue-lint:
|
|
||||||
<<: *defaults
|
|
||||||
steps:
|
|
||||||
- checkout
|
|
||||||
- attach_workspace:
|
|
||||||
at: /tmp/workspace
|
|
||||||
- run:
|
|
||||||
command: npm run lint
|
|
||||||
working_directory: /tmp/workspace/packages/vue
|
|
||||||
|
|
||||||
test-vue-router-lint:
|
|
||||||
<<: *defaults
|
|
||||||
steps:
|
|
||||||
- checkout
|
|
||||||
- attach_workspace:
|
|
||||||
at: /tmp/workspace
|
|
||||||
- run:
|
|
||||||
command: npm run lint
|
|
||||||
working_directory: /tmp/workspace/packages/vue-router
|
|
||||||
|
|
||||||
test-react-spec:
|
|
||||||
<<: *defaults
|
|
||||||
steps:
|
|
||||||
- checkout
|
|
||||||
- attach_workspace:
|
|
||||||
at: /tmp/workspace
|
|
||||||
- run:
|
|
||||||
command: sudo npm link
|
|
||||||
working_directory: /tmp/workspace/core
|
|
||||||
- run:
|
|
||||||
command: sudo npm link @ionic/core
|
|
||||||
working_directory: /tmp/workspace/packages/react
|
|
||||||
- run:
|
|
||||||
command: npm run test.spec
|
|
||||||
working_directory: /tmp/workspace/packages/react
|
|
||||||
|
|
||||||
test-react-router-spec:
|
|
||||||
<<: *defaults
|
|
||||||
steps:
|
|
||||||
- checkout
|
|
||||||
- attach_workspace:
|
|
||||||
at: /tmp/workspace
|
|
||||||
- run:
|
|
||||||
command: sudo npm link
|
|
||||||
working_directory: /tmp/workspace/core
|
|
||||||
- run:
|
|
||||||
command: sudo npm link @ionic/core
|
|
||||||
working_directory: /tmp/workspace/packages/react
|
|
||||||
- run:
|
|
||||||
command: sudo npm link
|
|
||||||
working_directory: /tmp/workspace/packages/react
|
|
||||||
- run:
|
|
||||||
command: sudo npm link @ionic/react
|
|
||||||
working_directory: /tmp/workspace/packages/react-router
|
|
||||||
- run:
|
|
||||||
command: npm run test.spec
|
|
||||||
working_directory: /tmp/workspace/packages/react-router
|
|
||||||
|
|
||||||
install-react-test-app:
|
|
||||||
<<: *defaults
|
|
||||||
steps:
|
|
||||||
- checkout
|
|
||||||
- attach_workspace:
|
|
||||||
at: /tmp/workspace
|
|
||||||
- run:
|
|
||||||
command: CYPRESS_CACHE_FOLDER=/tmp/workspace/packages/react/test-app npm install
|
|
||||||
working_directory: /tmp/workspace/packages/react/test-app
|
|
||||||
- persist_to_workspace:
|
|
||||||
root: /tmp/workspace
|
|
||||||
paths:
|
|
||||||
- packages/react/test-app
|
|
||||||
|
|
||||||
test-react-e2e:
|
|
||||||
<<: *defaults
|
|
||||||
steps:
|
|
||||||
- checkout
|
|
||||||
- attach_workspace:
|
|
||||||
at: /tmp/workspace
|
|
||||||
- run:
|
|
||||||
command: npm run sync
|
|
||||||
working_directory: /tmp/workspace/packages/react/test-app
|
|
||||||
- run:
|
|
||||||
command: CYPRESS_CACHE_FOLDER=/tmp/workspace/packages/react/test-app npm run e2e
|
|
||||||
working_directory: /tmp/workspace/packages/react/test-app
|
|
||||||
|
|
||||||
install-react-router-test-app:
|
|
||||||
<<: *defaults
|
|
||||||
steps:
|
|
||||||
- checkout
|
|
||||||
- attach_workspace:
|
|
||||||
at: /tmp/workspace
|
|
||||||
- run:
|
|
||||||
command: CYPRESS_CACHE_FOLDER=/tmp/workspace/packages/react-router/test-app npm install
|
|
||||||
working_directory: /tmp/workspace/packages/react-router/test-app
|
|
||||||
- persist_to_workspace:
|
|
||||||
root: /tmp/workspace
|
|
||||||
paths:
|
|
||||||
- packages/react-router/test-app
|
|
||||||
|
|
||||||
test-react-router-e2e:
|
|
||||||
<<: *defaults
|
|
||||||
steps:
|
|
||||||
- checkout
|
|
||||||
- attach_workspace:
|
|
||||||
at: /tmp/workspace
|
|
||||||
- run:
|
|
||||||
command: npm run sync
|
|
||||||
working_directory: /tmp/workspace/packages/react-router/test-app
|
|
||||||
- run:
|
|
||||||
command: CYPRESS_CACHE_FOLDER=/tmp/workspace/packages/react-router/test-app npm run e2e
|
|
||||||
working_directory: /tmp/workspace/packages/react-router/test-app
|
|
||||||
|
|
||||||
test-vue-router-spec:
|
|
||||||
<<: *defaults
|
|
||||||
steps:
|
|
||||||
- checkout
|
|
||||||
- attach_workspace:
|
|
||||||
at: /tmp/workspace
|
|
||||||
- run:
|
|
||||||
command: sudo npm link
|
|
||||||
working_directory: /tmp/workspace/core
|
|
||||||
- run:
|
|
||||||
command: sudo npm link @ionic/core
|
|
||||||
working_directory: /tmp/workspace/packages/vue
|
|
||||||
- run:
|
|
||||||
command: sudo npm link
|
|
||||||
working_directory: /tmp/workspace/packages/vue
|
|
||||||
- run:
|
|
||||||
command: sudo npm link @ionic/vue
|
|
||||||
working_directory: /tmp/workspace/packages/vue-router
|
|
||||||
- run:
|
|
||||||
command: npm run test.spec
|
|
||||||
working_directory: /tmp/workspace/packages/vue-router
|
|
||||||
|
|
||||||
test-angular-e2e:
|
|
||||||
<<: *defaults
|
|
||||||
steps:
|
|
||||||
- checkout
|
|
||||||
- attach_workspace:
|
|
||||||
at: /tmp/workspace
|
|
||||||
- run:
|
|
||||||
command: npm install --legacy-peer-deps
|
|
||||||
working_directory: /tmp/workspace/angular/test/test-app
|
|
||||||
- run:
|
|
||||||
command: npm run test
|
|
||||||
working_directory: /tmp/workspace/angular/test/test-app
|
|
||||||
|
|
||||||
install-vue-test-app:
|
|
||||||
<<: *defaults
|
|
||||||
steps:
|
|
||||||
- checkout
|
|
||||||
- attach_workspace:
|
|
||||||
at: /tmp/workspace
|
|
||||||
- run:
|
|
||||||
command: CYPRESS_CACHE_FOLDER=/tmp/workspace/packages/vue/test-app npm install
|
|
||||||
working_directory: /tmp/workspace/packages/vue/test-app
|
|
||||||
- persist_to_workspace:
|
|
||||||
root: /tmp/workspace
|
|
||||||
paths:
|
|
||||||
- packages/vue/test-app
|
|
||||||
|
|
||||||
test-vue-spec-and-e2e:
|
|
||||||
<<: *defaults
|
|
||||||
steps:
|
|
||||||
- checkout
|
|
||||||
- attach_workspace:
|
|
||||||
at: /tmp/workspace
|
|
||||||
- run:
|
|
||||||
command: npm run sync
|
|
||||||
working_directory: /tmp/workspace/packages/vue/test-app
|
|
||||||
- run:
|
|
||||||
command: npm run test:unit
|
|
||||||
working_directory: /tmp/workspace/packages/vue/test-app
|
|
||||||
- run:
|
|
||||||
command: CYPRESS_CACHE_FOLDER=/tmp/workspace/packages/vue/test-app npm run test:e2e
|
|
||||||
working_directory: /tmp/workspace/packages/vue/test-app
|
|
||||||
|
|
||||||
workflows:
|
|
||||||
version: 2
|
|
||||||
build:
|
|
||||||
jobs:
|
|
||||||
- puppeteer-dependencies
|
|
||||||
- build
|
|
||||||
- build-core:
|
|
||||||
requires: [build]
|
|
||||||
- test-core-clean-build:
|
|
||||||
requires: [build-core]
|
|
||||||
- test-core-lint:
|
|
||||||
requires: [build-core]
|
|
||||||
- test-core-e2e:
|
|
||||||
requires: [puppeteer-dependencies, build-core]
|
|
||||||
- test-core-spec:
|
|
||||||
requires: [build-core]
|
|
||||||
# Adam requested we skip this test for now
|
|
||||||
# since it is failing on ES5 code which
|
|
||||||
# will be removed in Ionic Framework v6
|
|
||||||
#- test-core-treeshake:
|
|
||||||
# requires: [build-core]
|
|
||||||
- test-core-screenshot:
|
|
||||||
requires: [build-core]
|
|
||||||
filters:
|
|
||||||
branches:
|
|
||||||
ignore: master
|
|
||||||
- test-core-screenshot-master:
|
|
||||||
requires: [build-core]
|
|
||||||
filters:
|
|
||||||
branches:
|
|
||||||
only: master
|
|
||||||
|
|
||||||
- build-angular:
|
|
||||||
requires: [build-core]
|
|
||||||
- build-angular-server:
|
|
||||||
requires: [build-angular]
|
|
||||||
- build-react:
|
|
||||||
requires: [build-core]
|
|
||||||
- build-react-router:
|
|
||||||
requires: [build-core, build-react]
|
|
||||||
- test-react-lint:
|
|
||||||
requires: [build-react]
|
|
||||||
- test-react-router-lint:
|
|
||||||
requires: [build-react-router]
|
|
||||||
- test-react-spec:
|
|
||||||
requires: [build-react]
|
|
||||||
- test-react-router-spec:
|
|
||||||
requires: [build-react-router]
|
|
||||||
- install-react-test-app:
|
|
||||||
requires: [build-core]
|
|
||||||
- test-react-e2e:
|
|
||||||
requires: [install-react-test-app, build-react, build-react-router]
|
|
||||||
- install-react-router-test-app:
|
|
||||||
requires: [build-core]
|
|
||||||
- test-react-router-e2e:
|
|
||||||
requires: [install-react-router-test-app, build-react, build-react-router]
|
|
||||||
- build-vue:
|
|
||||||
requires: [build-core]
|
|
||||||
- build-vue-router:
|
|
||||||
requires: [build-vue]
|
|
||||||
- test-vue-lint:
|
|
||||||
requires: [build-vue]
|
|
||||||
- test-vue-router-lint:
|
|
||||||
requires: [build-vue-router]
|
|
||||||
- test-vue-router-spec:
|
|
||||||
requires: [build-vue-router]
|
|
||||||
- install-vue-test-app:
|
|
||||||
requires: [build-core]
|
|
||||||
- test-vue-spec-and-e2e:
|
|
||||||
requires: [install-vue-test-app, build-vue, build-vue-router]
|
|
||||||
- test-angular-lint:
|
|
||||||
requires: [build-angular]
|
|
||||||
- test-angular-e2e:
|
|
||||||
requires:
|
|
||||||
- build-angular
|
|
||||||
- build-angular-server
|
|
22
.github/workflows/actions/build-angular-server/action.yml
vendored
Normal file
22
.github/workflows/actions/build-angular-server/action.yml
vendored
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
name: 'Build Ionic Angular Server'
|
||||||
|
description: 'Build Ionic Angular Server'
|
||||||
|
runs:
|
||||||
|
using: 'composite'
|
||||||
|
steps:
|
||||||
|
- uses: actions/setup-node@v1
|
||||||
|
with:
|
||||||
|
node-version: 15.x
|
||||||
|
|
||||||
|
- name: Install Angular Server Dependencies
|
||||||
|
run: npm install --legacy-peer-deps
|
||||||
|
shell: bash
|
||||||
|
working-directory: ./packages/angular-server
|
||||||
|
- name: Build
|
||||||
|
run: npm run build.prod
|
||||||
|
shell: bash
|
||||||
|
working-directory: ./packages/angular-server
|
||||||
|
- uses: ./.github/workflows/actions/upload-archive
|
||||||
|
with:
|
||||||
|
name: ionic-angular-server
|
||||||
|
output: packages/angular-server/AngularServerBuild.zip
|
||||||
|
paths: packages/angular-server/dist
|
61
.github/workflows/actions/build-angular/action.yml
vendored
Normal file
61
.github/workflows/actions/build-angular/action.yml
vendored
Normal file
@ -0,0 +1,61 @@
|
|||||||
|
name: 'Build Ionic Angular'
|
||||||
|
description: 'Build Ionic Angular'
|
||||||
|
runs:
|
||||||
|
using: 'composite'
|
||||||
|
steps:
|
||||||
|
- uses: actions/setup-node@v1
|
||||||
|
with:
|
||||||
|
node-version: 15.x
|
||||||
|
|
||||||
|
- name: Cache Core Node Modules
|
||||||
|
uses: actions/cache@v2
|
||||||
|
env:
|
||||||
|
cache-name: core-node-modules
|
||||||
|
with:
|
||||||
|
path: ./core/node_modules
|
||||||
|
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('./core/package-lock.json') }}
|
||||||
|
restore-keys: |
|
||||||
|
${{ runner.os }}-build-${{ env.cache-name }}-
|
||||||
|
${{ runner.os }}-build-
|
||||||
|
${{ runner.os }}-
|
||||||
|
- name: Cache Angular Node Modules
|
||||||
|
uses: actions/cache@v2
|
||||||
|
env:
|
||||||
|
cache-name: angular-node-modules
|
||||||
|
with:
|
||||||
|
path: ./angular/node_modules
|
||||||
|
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('./angular/package-lock.json') }}
|
||||||
|
restore-keys: |
|
||||||
|
${{ runner.os }}-build-${{ env.cache-name }}-
|
||||||
|
${{ runner.os }}-build-
|
||||||
|
${{ runner.os }}-
|
||||||
|
- uses: ./.github/workflows/actions/download-archive
|
||||||
|
with:
|
||||||
|
name: ionic-core
|
||||||
|
path: ./core
|
||||||
|
filename: CoreBuild.zip
|
||||||
|
- name: Install Angular Dependencies
|
||||||
|
run: npm install
|
||||||
|
shell: bash
|
||||||
|
working-directory: ./angular
|
||||||
|
- name: Link @ionic/core
|
||||||
|
run: npm link
|
||||||
|
shell: bash
|
||||||
|
working-directory: ./core
|
||||||
|
- name: Link @ionic/core in @ionic/angular
|
||||||
|
run: npm link @ionic/core
|
||||||
|
shell: bash
|
||||||
|
working-directory: ./angular
|
||||||
|
- name: Lint
|
||||||
|
run: npm run lint
|
||||||
|
shell: bash
|
||||||
|
working-directory: ./angular
|
||||||
|
- name: Build
|
||||||
|
run: npm run build
|
||||||
|
shell: bash
|
||||||
|
working-directory: ./angular
|
||||||
|
- uses: ./.github/workflows/actions/upload-archive
|
||||||
|
with:
|
||||||
|
name: ionic-angular
|
||||||
|
output: ./angular/AngularBuild.zip
|
||||||
|
paths: ./angular/dist
|
34
.github/workflows/actions/build-core/action.yml
vendored
Normal file
34
.github/workflows/actions/build-core/action.yml
vendored
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
name: 'Build Ionic Core'
|
||||||
|
description: 'Build Ionic Core'
|
||||||
|
runs:
|
||||||
|
using: 'composite'
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
- uses: actions/setup-node@v1
|
||||||
|
with:
|
||||||
|
node-version: 15.x
|
||||||
|
|
||||||
|
- name: Cache Node Modules
|
||||||
|
uses: actions/cache@v2
|
||||||
|
env:
|
||||||
|
cache-name: core-node-modules
|
||||||
|
with:
|
||||||
|
path: ./core/node_modules
|
||||||
|
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('./core/package-lock.json') }}
|
||||||
|
restore-keys: |
|
||||||
|
${{ runner.os }}-build-${{ env.cache-name }}-
|
||||||
|
${{ runner.os }}-build-
|
||||||
|
${{ runner.os }}-
|
||||||
|
- name: Install Dependencies
|
||||||
|
run: npm ci
|
||||||
|
working-directory: ./core
|
||||||
|
shell: bash
|
||||||
|
- name: Build Core
|
||||||
|
run: npm run build -- --ci
|
||||||
|
working-directory: ./core
|
||||||
|
shell: bash
|
||||||
|
- uses: ./.github/workflows/actions/upload-archive
|
||||||
|
with:
|
||||||
|
name: ionic-core
|
||||||
|
output: core/CoreBuild.zip
|
||||||
|
paths: core/dist core/components core/css core/hydrate core/loader
|
55
.github/workflows/actions/build-react-router/action.yml
vendored
Normal file
55
.github/workflows/actions/build-react-router/action.yml
vendored
Normal file
@ -0,0 +1,55 @@
|
|||||||
|
name: 'Build Ionic React Router'
|
||||||
|
description: 'Build Ionic React Router'
|
||||||
|
runs:
|
||||||
|
using: 'composite'
|
||||||
|
steps:
|
||||||
|
- uses: actions/setup-node@v1
|
||||||
|
with:
|
||||||
|
node-version: 15.x
|
||||||
|
|
||||||
|
- name: Cache Core Node Modules
|
||||||
|
uses: actions/cache@v2
|
||||||
|
env:
|
||||||
|
cache-name: core-node-modules
|
||||||
|
with:
|
||||||
|
path: ./core/node_modules
|
||||||
|
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('./core/package-lock.json') }}
|
||||||
|
restore-keys: |
|
||||||
|
${{ runner.os }}-build-${{ env.cache-name }}-
|
||||||
|
${{ runner.os }}-build-
|
||||||
|
${{ runner.os }}-
|
||||||
|
- name: Install Dependencies
|
||||||
|
run: npm install --legacy-peer-deps
|
||||||
|
shell: bash
|
||||||
|
working-directory: ./packages/react-router
|
||||||
|
- uses: ./.github/workflows/actions/download-archive
|
||||||
|
with:
|
||||||
|
name: ionic-react
|
||||||
|
path: ./packages/react
|
||||||
|
filename: ReactBuild.zip
|
||||||
|
- uses: ./.github/workflows/actions/download-archive
|
||||||
|
with:
|
||||||
|
name: ionic-core
|
||||||
|
path: ./core
|
||||||
|
filename: CoreBuild.zip
|
||||||
|
- name: Sync
|
||||||
|
run: npm run sync
|
||||||
|
shell: bash
|
||||||
|
working-directory: ./packages/react-router
|
||||||
|
- name: Lint
|
||||||
|
run: npm run lint
|
||||||
|
shell: bash
|
||||||
|
working-directory: ./packages/react-router
|
||||||
|
- name: Build
|
||||||
|
run: npm run build
|
||||||
|
shell: bash
|
||||||
|
working-directory: ./packages/react-router
|
||||||
|
- name: Test Spec
|
||||||
|
run: npm run test.spec
|
||||||
|
shell: bash
|
||||||
|
working-directory: ./packages/react-router
|
||||||
|
- uses: ./.github/workflows/actions/upload-archive
|
||||||
|
with:
|
||||||
|
name: ionic-react-router
|
||||||
|
output: packages/react-router/ReactRouterBuild.zip
|
||||||
|
paths: packages/react-router/dist
|
51
.github/workflows/actions/build-react/action.yml
vendored
Normal file
51
.github/workflows/actions/build-react/action.yml
vendored
Normal file
@ -0,0 +1,51 @@
|
|||||||
|
name: 'Build Ionic React'
|
||||||
|
description: 'Build Ionic React'
|
||||||
|
runs:
|
||||||
|
using: 'composite'
|
||||||
|
steps:
|
||||||
|
- uses: actions/setup-node@v1
|
||||||
|
with:
|
||||||
|
node-version: 15.x
|
||||||
|
|
||||||
|
- name: Cache Core Node Modules
|
||||||
|
uses: actions/cache@v2
|
||||||
|
env:
|
||||||
|
cache-name: core-node-modules
|
||||||
|
with:
|
||||||
|
path: ./core/node_modules
|
||||||
|
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('./core/package-lock.json') }}
|
||||||
|
restore-keys: |
|
||||||
|
${{ runner.os }}-build-${{ env.cache-name }}-
|
||||||
|
${{ runner.os }}-build-
|
||||||
|
${{ runner.os }}-
|
||||||
|
|
||||||
|
- uses: ./.github/workflows/actions/download-archive
|
||||||
|
with:
|
||||||
|
name: ionic-core
|
||||||
|
path: ./core
|
||||||
|
filename: CoreBuild.zip
|
||||||
|
- name: Install React Dependencies
|
||||||
|
run: npm install --legacy-peer-deps
|
||||||
|
shell: bash
|
||||||
|
working-directory: ./packages/react
|
||||||
|
- name: Sync
|
||||||
|
run: npm run sync
|
||||||
|
shell: bash
|
||||||
|
working-directory: ./packages/react
|
||||||
|
- name: Lint
|
||||||
|
run: npm run lint
|
||||||
|
shell: bash
|
||||||
|
working-directory: ./packages/react
|
||||||
|
- name: Build
|
||||||
|
run: npm run build
|
||||||
|
shell: bash
|
||||||
|
working-directory: ./packages/react
|
||||||
|
- name: Test Spec
|
||||||
|
run: npm run test.spec
|
||||||
|
shell: bash
|
||||||
|
working-directory: ./packages/react
|
||||||
|
- uses: ./.github/workflows/actions/upload-archive
|
||||||
|
with:
|
||||||
|
name: ionic-react
|
||||||
|
output: packages/react/ReactBuild.zip
|
||||||
|
paths: packages/react/dist packages/react/css
|
55
.github/workflows/actions/build-vue-router/action.yml
vendored
Normal file
55
.github/workflows/actions/build-vue-router/action.yml
vendored
Normal file
@ -0,0 +1,55 @@
|
|||||||
|
name: 'Build Ionic Vue Router'
|
||||||
|
description: 'Builds Ionic Vue Router'
|
||||||
|
runs:
|
||||||
|
using: 'composite'
|
||||||
|
steps:
|
||||||
|
- uses: actions/setup-node@v1
|
||||||
|
with:
|
||||||
|
node-version: 15.x
|
||||||
|
|
||||||
|
- name: Cache Core Node Modules
|
||||||
|
uses: actions/cache@v2
|
||||||
|
env:
|
||||||
|
cache-name: core-node-modules
|
||||||
|
with:
|
||||||
|
path: ./core/node_modules
|
||||||
|
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('./core/package-lock.json') }}
|
||||||
|
restore-keys: |
|
||||||
|
${{ runner.os }}-build-${{ env.cache-name }}-
|
||||||
|
${{ runner.os }}-build-
|
||||||
|
${{ runner.os }}-
|
||||||
|
- uses: ./.github/workflows/actions/download-archive
|
||||||
|
with:
|
||||||
|
name: ionic-core
|
||||||
|
path: ./core
|
||||||
|
filename: CoreBuild.zip
|
||||||
|
- uses: ./.github/workflows/actions/download-archive
|
||||||
|
with:
|
||||||
|
name: ionic-vue
|
||||||
|
path: ./packages/vue
|
||||||
|
filename: VueBuild.zip
|
||||||
|
- name: Install Vue Router Dependencies
|
||||||
|
run: npm install
|
||||||
|
shell: bash
|
||||||
|
working-directory: ./packages/vue-router
|
||||||
|
- name: Sync
|
||||||
|
run: npm run sync
|
||||||
|
shell: bash
|
||||||
|
working-directory: ./packages/vue-router
|
||||||
|
- name: Lint
|
||||||
|
run: npm run lint
|
||||||
|
shell: bash
|
||||||
|
working-directory: ./packages/vue-router
|
||||||
|
- name: Build
|
||||||
|
run: npm run build
|
||||||
|
shell: bash
|
||||||
|
working-directory: ./packages/vue-router
|
||||||
|
- name: Test Spec
|
||||||
|
run: npm run test.spec
|
||||||
|
shell: bash
|
||||||
|
working-directory: ./packages/vue-router
|
||||||
|
- uses: ./.github/workflows/actions/upload-archive
|
||||||
|
with:
|
||||||
|
name: ionic-vue-router
|
||||||
|
output: ./packages/vue-router/VueRouterBuild.zip
|
||||||
|
paths: packages/vue-router/dist
|
46
.github/workflows/actions/build-vue/action.yml
vendored
Normal file
46
.github/workflows/actions/build-vue/action.yml
vendored
Normal file
@ -0,0 +1,46 @@
|
|||||||
|
name: 'Build Ionic Vue'
|
||||||
|
description: 'Build Ionic Vue'
|
||||||
|
runs:
|
||||||
|
using: 'composite'
|
||||||
|
steps:
|
||||||
|
- uses: actions/setup-node@v1
|
||||||
|
with:
|
||||||
|
node-version: 15.x
|
||||||
|
|
||||||
|
- name: Cache Core Node Modules
|
||||||
|
uses: actions/cache@v2
|
||||||
|
env:
|
||||||
|
cache-name: core-node-modules
|
||||||
|
with:
|
||||||
|
path: ./core/node_modules
|
||||||
|
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('./core/package-lock.json') }}
|
||||||
|
restore-keys: |
|
||||||
|
${{ runner.os }}-build-${{ env.cache-name }}-
|
||||||
|
${{ runner.os }}-build-
|
||||||
|
${{ runner.os }}-
|
||||||
|
- uses: ./.github/workflows/actions/download-archive
|
||||||
|
with:
|
||||||
|
name: ionic-core
|
||||||
|
path: ./core
|
||||||
|
filename: CoreBuild.zip
|
||||||
|
- name: Install Vue Dependencies
|
||||||
|
run: npm install
|
||||||
|
shell: bash
|
||||||
|
working-directory: ./packages/vue
|
||||||
|
- name: Sync
|
||||||
|
run: npm run sync
|
||||||
|
shell: bash
|
||||||
|
working-directory: ./packages/vue
|
||||||
|
- name: Lint
|
||||||
|
run: npm run lint
|
||||||
|
shell: bash
|
||||||
|
working-directory: ./packages/vue
|
||||||
|
- name: Build
|
||||||
|
run: npm run build
|
||||||
|
shell: bash
|
||||||
|
working-directory: ./packages/vue
|
||||||
|
- uses: ./.github/workflows/actions/upload-archive
|
||||||
|
with:
|
||||||
|
name: ionic-vue
|
||||||
|
output: packages/vue/VueBuild.zip
|
||||||
|
paths: packages/vue/dist packages/vue/css
|
19
.github/workflows/actions/download-archive/action.yml
vendored
Normal file
19
.github/workflows/actions/download-archive/action.yml
vendored
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
name: 'Ionic Framework Archive Download'
|
||||||
|
description: 'Downloads and decompresses an archive from a previous job'
|
||||||
|
inputs:
|
||||||
|
path:
|
||||||
|
description: 'Input archive name'
|
||||||
|
filename:
|
||||||
|
description: 'Input file name'
|
||||||
|
name:
|
||||||
|
description: 'Archive name'
|
||||||
|
runs:
|
||||||
|
using: 'composite'
|
||||||
|
steps:
|
||||||
|
- uses: actions/download-artifact@v2
|
||||||
|
with:
|
||||||
|
name: ${{ inputs.name }}
|
||||||
|
path: ${{ inputs.path }}
|
||||||
|
- name: Exract Archive
|
||||||
|
run: unzip -q -o ${{ inputs.path }}/${{ inputs.filename }}
|
||||||
|
shell: bash
|
43
.github/workflows/actions/test-angular-e2e/action.yml
vendored
Normal file
43
.github/workflows/actions/test-angular-e2e/action.yml
vendored
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
name: 'Test Angular E2E'
|
||||||
|
description: 'Test Angular E2E'
|
||||||
|
runs:
|
||||||
|
using: 'composite'
|
||||||
|
steps:
|
||||||
|
- uses: actions/setup-node@v1
|
||||||
|
with:
|
||||||
|
node-version: 15.x
|
||||||
|
|
||||||
|
- name: Cache Core Node Modules
|
||||||
|
uses: actions/cache@v2
|
||||||
|
env:
|
||||||
|
cache-name: core-node-modules
|
||||||
|
with:
|
||||||
|
path: ./core/node_modules
|
||||||
|
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('./core/package-lock.json') }}
|
||||||
|
restore-keys: |
|
||||||
|
${{ runner.os }}-build-${{ env.cache-name }}-
|
||||||
|
${{ runner.os }}-build-
|
||||||
|
${{ runner.os }}-
|
||||||
|
- uses: ./.github/workflows/actions/download-archive
|
||||||
|
with:
|
||||||
|
name: ionic-core
|
||||||
|
path: ./core
|
||||||
|
filename: CoreBuild.zip
|
||||||
|
- uses: ./.github/workflows/actions/download-archive
|
||||||
|
with:
|
||||||
|
name: ionic-angular
|
||||||
|
path: ./angular
|
||||||
|
filename: AngularBuild.zip
|
||||||
|
- uses: ./.github/workflows/actions/download-archive
|
||||||
|
with:
|
||||||
|
name: ionic-angular-server
|
||||||
|
path: ./packages/angular-server
|
||||||
|
filename: AngularServerBuild.zip
|
||||||
|
- name: Install Dependencies
|
||||||
|
run: npm install --legacy-peer-deps
|
||||||
|
shell: bash
|
||||||
|
working-directory: ./angular/test/test-app
|
||||||
|
- name: Run Tests
|
||||||
|
run: npm run test
|
||||||
|
shell: bash
|
||||||
|
working-directory: ./angular/test/test-app
|
18
.github/workflows/actions/test-core-clean-build/action.yml
vendored
Normal file
18
.github/workflows/actions/test-core-clean-build/action.yml
vendored
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
name: 'Test Core Clean Build'
|
||||||
|
description: 'Test Core Clean Build'
|
||||||
|
runs:
|
||||||
|
using: 'composite'
|
||||||
|
steps:
|
||||||
|
- uses: actions/setup-node@v1
|
||||||
|
with:
|
||||||
|
node-version: 15.x
|
||||||
|
|
||||||
|
- uses: ./.github/workflows/actions/download-archive
|
||||||
|
with:
|
||||||
|
name: ionic-core
|
||||||
|
path: ./core
|
||||||
|
filename: CoreBuild.zip
|
||||||
|
- name: Check Diff
|
||||||
|
run: git diff --exit-code
|
||||||
|
shell: bash
|
||||||
|
working-directory: ./core
|
29
.github/workflows/actions/test-core-e2e/action.yml
vendored
Normal file
29
.github/workflows/actions/test-core-e2e/action.yml
vendored
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
name: 'Test Core E2E'
|
||||||
|
description: 'Test Core E2E'
|
||||||
|
runs:
|
||||||
|
using: 'composite'
|
||||||
|
steps:
|
||||||
|
- uses: actions/setup-node@v1
|
||||||
|
with:
|
||||||
|
node-version: 15.x
|
||||||
|
|
||||||
|
- name: Cache Core Node Modules
|
||||||
|
uses: actions/cache@v2
|
||||||
|
env:
|
||||||
|
cache-name: core-node-modules
|
||||||
|
with:
|
||||||
|
path: ./core/node_modules
|
||||||
|
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('./core/package-lock.json') }}
|
||||||
|
restore-keys: |
|
||||||
|
${{ runner.os }}-build-${{ env.cache-name }}-
|
||||||
|
${{ runner.os }}-build-
|
||||||
|
${{ runner.os }}-
|
||||||
|
- uses: ./.github/workflows/actions/download-archive
|
||||||
|
with:
|
||||||
|
name: ionic-core
|
||||||
|
path: ./core
|
||||||
|
filename: CoreBuild.zip
|
||||||
|
- name: Test
|
||||||
|
run: npm run test.e2e -- --ci --no-build
|
||||||
|
shell: bash
|
||||||
|
working-directory: ./core
|
24
.github/workflows/actions/test-core-lint/action.yml
vendored
Normal file
24
.github/workflows/actions/test-core-lint/action.yml
vendored
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
name: 'Test Core Lint'
|
||||||
|
description: 'Test Core Lint'
|
||||||
|
runs:
|
||||||
|
using: 'composite'
|
||||||
|
steps:
|
||||||
|
- uses: actions/setup-node@v1
|
||||||
|
with:
|
||||||
|
node-version: 15.x
|
||||||
|
|
||||||
|
- name: Cache Core Node Modules
|
||||||
|
uses: actions/cache@v2
|
||||||
|
env:
|
||||||
|
cache-name: core-node-modules
|
||||||
|
with:
|
||||||
|
path: ./core/node_modules
|
||||||
|
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('./core/package-lock.json') }}
|
||||||
|
restore-keys: |
|
||||||
|
${{ runner.os }}-build-${{ env.cache-name }}-
|
||||||
|
${{ runner.os }}-build-
|
||||||
|
${{ runner.os }}-
|
||||||
|
- name: Lint
|
||||||
|
run: npm run lint
|
||||||
|
shell: bash
|
||||||
|
working-directory: ./core
|
37
.github/workflows/actions/test-core-screenshot-main/action.yml
vendored
Normal file
37
.github/workflows/actions/test-core-screenshot-main/action.yml
vendored
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
name: 'Test Core Screenshot Main'
|
||||||
|
description: 'Test Core Screenshot Main'
|
||||||
|
inputs:
|
||||||
|
access-key-id:
|
||||||
|
description: 'AWS_ACCESS_KEY_ID'
|
||||||
|
secret-access-key:
|
||||||
|
description: 'AWS_SECRET_ACCESS_KEY'
|
||||||
|
runs:
|
||||||
|
using: 'composite'
|
||||||
|
steps:
|
||||||
|
- uses: actions/setup-node@v1
|
||||||
|
with:
|
||||||
|
node-version: 15.x
|
||||||
|
|
||||||
|
- name: Cache Core Node Modules
|
||||||
|
uses: actions/cache@v2
|
||||||
|
env:
|
||||||
|
cache-name: core-node-modules
|
||||||
|
with:
|
||||||
|
path: ./core/node_modules
|
||||||
|
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('./core/package-lock.json') }}
|
||||||
|
restore-keys: |
|
||||||
|
${{ runner.os }}-build-${{ env.cache-name }}-
|
||||||
|
${{ runner.os }}-build-
|
||||||
|
${{ runner.os }}-
|
||||||
|
- uses: ./.github/workflows/actions/download-archive
|
||||||
|
with:
|
||||||
|
name: ionic-core
|
||||||
|
path: ./core
|
||||||
|
filename: CoreBuild.zip
|
||||||
|
- name: Test
|
||||||
|
run: npx stencil test --e2e --screenshot --screenshot-connector=scripts/screenshot/ci.js --ci --update-screenshot --no-build || true
|
||||||
|
shell: bash
|
||||||
|
env:
|
||||||
|
AWS_ACCESS_KEY_ID: ${{ inputs.access-key-id }}
|
||||||
|
AWS_SECRET_ACCESS_KEY: ${{ inputs.secret-access-key }}
|
||||||
|
working-directory: ./core
|
37
.github/workflows/actions/test-core-screenshot/action.yml
vendored
Normal file
37
.github/workflows/actions/test-core-screenshot/action.yml
vendored
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
name: 'Test Core Screenshot'
|
||||||
|
description: 'Test Core Screenshot'
|
||||||
|
inputs:
|
||||||
|
access-key-id:
|
||||||
|
description: 'AWS_ACCESS_KEY_ID'
|
||||||
|
secret-access-key:
|
||||||
|
description: 'AWS_SECRET_ACCESS_KEY'
|
||||||
|
runs:
|
||||||
|
using: 'composite'
|
||||||
|
steps:
|
||||||
|
- uses: actions/setup-node@v1
|
||||||
|
with:
|
||||||
|
node-version: 15.x
|
||||||
|
|
||||||
|
- name: Cache Core Node Modules
|
||||||
|
uses: actions/cache@v2
|
||||||
|
env:
|
||||||
|
cache-name: core-node-modules
|
||||||
|
with:
|
||||||
|
path: ./core/node_modules
|
||||||
|
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('./core/package-lock.json') }}
|
||||||
|
restore-keys: |
|
||||||
|
${{ runner.os }}-build-${{ env.cache-name }}-
|
||||||
|
${{ runner.os }}-build-
|
||||||
|
${{ runner.os }}-
|
||||||
|
- uses: ./.github/workflows/actions/download-archive
|
||||||
|
with:
|
||||||
|
name: ionic-core
|
||||||
|
path: ./core
|
||||||
|
filename: CoreBuild.zip
|
||||||
|
- name: Test
|
||||||
|
run: npx stencil test --e2e --screenshot --screenshot-connector=scripts/screenshot/ci.js --ci --no-build || true
|
||||||
|
shell: bash
|
||||||
|
env:
|
||||||
|
AWS_ACCESS_KEY_ID: ${{ inputs.access-key-id }}
|
||||||
|
AWS_SECRET_ACCESS_KEY: ${{ inputs.secret-access-key }}
|
||||||
|
working-directory: ./core
|
29
.github/workflows/actions/test-core-spec/action.yml
vendored
Normal file
29
.github/workflows/actions/test-core-spec/action.yml
vendored
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
name: 'Test Core Spec'
|
||||||
|
description: 'Test Core Spec'
|
||||||
|
runs:
|
||||||
|
using: 'composite'
|
||||||
|
steps:
|
||||||
|
- uses: actions/setup-node@v1
|
||||||
|
with:
|
||||||
|
node-version: 15.x
|
||||||
|
|
||||||
|
- name: Cache Core Node Modules
|
||||||
|
uses: actions/cache@v2
|
||||||
|
env:
|
||||||
|
cache-name: core-node-modules
|
||||||
|
with:
|
||||||
|
path: ./core/node_modules
|
||||||
|
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('./core/package-lock.json') }}
|
||||||
|
restore-keys: |
|
||||||
|
${{ runner.os }}-build-${{ env.cache-name }}-
|
||||||
|
${{ runner.os }}-build-
|
||||||
|
${{ runner.os }}-
|
||||||
|
- uses: ./.github/workflows/actions/download-archive
|
||||||
|
with:
|
||||||
|
name: ionic-core
|
||||||
|
path: ./core
|
||||||
|
filename: CoreBuild.zip
|
||||||
|
- name: Test
|
||||||
|
run: npm run test.spec -- --ci
|
||||||
|
shell: bash
|
||||||
|
working-directory: ./core
|
41
.github/workflows/actions/test-react-e2e/action.yml
vendored
Normal file
41
.github/workflows/actions/test-react-e2e/action.yml
vendored
Normal file
@ -0,0 +1,41 @@
|
|||||||
|
name: 'Test React E2E'
|
||||||
|
description: 'Test React E2E'
|
||||||
|
runs:
|
||||||
|
using: 'composite'
|
||||||
|
steps:
|
||||||
|
- uses: actions/setup-node@v1
|
||||||
|
with:
|
||||||
|
node-version: 15.x
|
||||||
|
|
||||||
|
- name: Cache Core Node Modules
|
||||||
|
uses: actions/cache@v2
|
||||||
|
env:
|
||||||
|
cache-name: core-node-modules
|
||||||
|
with:
|
||||||
|
path: ./core/node_modules
|
||||||
|
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('./core/package-lock.json') }}
|
||||||
|
restore-keys: |
|
||||||
|
${{ runner.os }}-build-${{ env.cache-name }}-
|
||||||
|
${{ runner.os }}-build-
|
||||||
|
${{ runner.os }}-
|
||||||
|
- uses: ./.github/workflows/actions/download-archive
|
||||||
|
with:
|
||||||
|
name: ionic-core
|
||||||
|
path: ./core
|
||||||
|
filename: CoreBuild.zip
|
||||||
|
- uses: ./.github/workflows/actions/download-archive
|
||||||
|
with:
|
||||||
|
name: ionic-react
|
||||||
|
path: ./packages/react
|
||||||
|
filename: ReactBuild.zip
|
||||||
|
- uses: ./.github/workflows/actions/download-archive
|
||||||
|
with:
|
||||||
|
name: ionic-react-router
|
||||||
|
path: ./packages/react-router
|
||||||
|
filename: ReactRouterBuild.zip
|
||||||
|
- uses: cypress-io/github-action@v2
|
||||||
|
with:
|
||||||
|
browser: chrome
|
||||||
|
headless: true
|
||||||
|
start: npm run start.ci
|
||||||
|
working-directory: ./packages/react/test-app
|
41
.github/workflows/actions/test-react-router-e2e/action.yml
vendored
Normal file
41
.github/workflows/actions/test-react-router-e2e/action.yml
vendored
Normal file
@ -0,0 +1,41 @@
|
|||||||
|
name: 'Test React Router E2E'
|
||||||
|
description: 'Test React Router '
|
||||||
|
runs:
|
||||||
|
using: 'composite'
|
||||||
|
steps:
|
||||||
|
- uses: actions/setup-node@v1
|
||||||
|
with:
|
||||||
|
node-version: 15.x
|
||||||
|
|
||||||
|
- name: Cache Core Node Modules
|
||||||
|
uses: actions/cache@v2
|
||||||
|
env:
|
||||||
|
cache-name: core-node-modules
|
||||||
|
with:
|
||||||
|
path: ./core/node_modules
|
||||||
|
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('./core/package-lock.json') }}
|
||||||
|
restore-keys: |
|
||||||
|
${{ runner.os }}-build-${{ env.cache-name }}-
|
||||||
|
${{ runner.os }}-build-
|
||||||
|
${{ runner.os }}-
|
||||||
|
- uses: ./.github/workflows/actions/download-archive
|
||||||
|
with:
|
||||||
|
name: ionic-core
|
||||||
|
path: ./core
|
||||||
|
filename: CoreBuild.zip
|
||||||
|
- uses: ./.github/workflows/actions/download-archive
|
||||||
|
with:
|
||||||
|
name: ionic-react
|
||||||
|
path: ./packages/react
|
||||||
|
filename: ReactBuild.zip
|
||||||
|
- uses: ./.github/workflows/actions/download-archive
|
||||||
|
with:
|
||||||
|
name: ionic-react-router
|
||||||
|
path: ./packages/react-router
|
||||||
|
filename: ReactRouterBuild.zip
|
||||||
|
- uses: cypress-io/github-action@v2
|
||||||
|
with:
|
||||||
|
browser: chrome
|
||||||
|
headless: true
|
||||||
|
start: npm run start.ci
|
||||||
|
working-directory: ./packages/react-router/test-app
|
51
.github/workflows/actions/test-vue-e2e/action.yml
vendored
Normal file
51
.github/workflows/actions/test-vue-e2e/action.yml
vendored
Normal file
@ -0,0 +1,51 @@
|
|||||||
|
name: 'Test Vue E2E'
|
||||||
|
description: 'Test Vue E2E'
|
||||||
|
runs:
|
||||||
|
using: 'composite'
|
||||||
|
steps:
|
||||||
|
- uses: actions/setup-node@v1
|
||||||
|
with:
|
||||||
|
node-version: 15.x
|
||||||
|
|
||||||
|
- name: Cache Core Node Modules
|
||||||
|
uses: actions/cache@v2
|
||||||
|
env:
|
||||||
|
cache-name: core-node-modules
|
||||||
|
with:
|
||||||
|
path: ./core/node_modules
|
||||||
|
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('./core/package-lock.json') }}
|
||||||
|
restore-keys: |
|
||||||
|
${{ runner.os }}-build-${{ env.cache-name }}-
|
||||||
|
${{ runner.os }}-build-
|
||||||
|
${{ runner.os }}-
|
||||||
|
- uses: ./.github/workflows/actions/download-archive
|
||||||
|
with:
|
||||||
|
name: ionic-core
|
||||||
|
path: ./core
|
||||||
|
filename: CoreBuild.zip
|
||||||
|
- uses: ./.github/workflows/actions/download-archive
|
||||||
|
with:
|
||||||
|
name: ionic-vue
|
||||||
|
path: ./packages/vue
|
||||||
|
filename: VueBuild.zip
|
||||||
|
- uses: ./.github/workflows/actions/download-archive
|
||||||
|
with:
|
||||||
|
name: ionic-vue-router
|
||||||
|
path: ./packages/vue-router
|
||||||
|
filename: VueRouterBuild.zip
|
||||||
|
- name: Install Dependencies
|
||||||
|
run: npm install
|
||||||
|
shell: bash
|
||||||
|
working-directory: ./packages/vue/test-app
|
||||||
|
- name: Sync
|
||||||
|
run: npm run sync
|
||||||
|
shell: bash
|
||||||
|
working-directory: ./packages/vue/test-app
|
||||||
|
- name: Run Spec Tests
|
||||||
|
run: npm run test:unit
|
||||||
|
shell: bash
|
||||||
|
working-directory: ./packages/vue/test-app
|
||||||
|
- name: Run E2E ests
|
||||||
|
run: npm run test:e2e
|
||||||
|
shell: bash
|
||||||
|
working-directory: ./packages/vue/test-app
|
19
.github/workflows/actions/upload-archive/action.yml
vendored
Normal file
19
.github/workflows/actions/upload-archive/action.yml
vendored
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
name: 'Ionic Framework Archive Upload'
|
||||||
|
description: 'Compresses and uploads an archive to be reused across jobs'
|
||||||
|
inputs:
|
||||||
|
paths:
|
||||||
|
description: 'Paths to files or directories to archive'
|
||||||
|
output:
|
||||||
|
description: 'Output file name'
|
||||||
|
name:
|
||||||
|
description: 'Archive name'
|
||||||
|
runs:
|
||||||
|
using: 'composite'
|
||||||
|
steps:
|
||||||
|
- name: Create Archive
|
||||||
|
run: zip -q -r ${{ inputs.output }} ${{ inputs.paths }}
|
||||||
|
shell: bash
|
||||||
|
- uses: actions/upload-artifact@v2
|
||||||
|
with:
|
||||||
|
name: ${{ inputs.name }}
|
||||||
|
path: ${{ inputs.output }}
|
132
.github/workflows/build.yml
vendored
Normal file
132
.github/workflows/build.yml
vendored
Normal file
@ -0,0 +1,132 @@
|
|||||||
|
name: 'Ionic Framework Build'
|
||||||
|
|
||||||
|
on:
|
||||||
|
pull_request:
|
||||||
|
branches: [ '**' ]
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build-core:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
- uses: ./.github/workflows/actions/build-core
|
||||||
|
|
||||||
|
test-core-clean-build:
|
||||||
|
needs: [build-core]
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
- uses: ./.github/workflows/actions/test-core-clean-build
|
||||||
|
|
||||||
|
test-core-lint:
|
||||||
|
needs: [build-core]
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
- uses: ./.github/workflows/actions/test-core-lint
|
||||||
|
|
||||||
|
test-core-spec:
|
||||||
|
needs: [build-core]
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
- uses: ./.github/workflows/actions/test-core-spec
|
||||||
|
|
||||||
|
test-core-e2e:
|
||||||
|
needs: [build-core]
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
- uses: ./.github/workflows/actions/test-core-e2e
|
||||||
|
|
||||||
|
test-core-screenshot:
|
||||||
|
needs: [build-core]
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
if: github.ref != 'refs/heads/main'
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
- uses: ./.github/workflows/actions/test-core-screenshot
|
||||||
|
with:
|
||||||
|
access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
|
||||||
|
secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
|
||||||
|
|
||||||
|
test-core-screenshot-main:
|
||||||
|
needs: [build-core]
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
if: github.ref == 'refs/heads/main'
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
- uses: ./.github/workflows/actions/test-core-screenshot-main
|
||||||
|
with:
|
||||||
|
access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
|
||||||
|
secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
|
||||||
|
|
||||||
|
build-vue:
|
||||||
|
needs: [build-core]
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
- uses: ./.github/workflows/actions/build-vue
|
||||||
|
|
||||||
|
build-vue-router:
|
||||||
|
needs: [build-vue]
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
- uses: ./.github/workflows/actions/build-vue-router
|
||||||
|
|
||||||
|
test-vue-e2e:
|
||||||
|
needs: [build-vue, build-vue-router]
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
- uses: ./.github/workflows/actions/test-vue-e2e
|
||||||
|
|
||||||
|
build-angular:
|
||||||
|
needs: [build-core]
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
- uses: ./.github/workflows/actions/build-angular
|
||||||
|
|
||||||
|
build-angular-server:
|
||||||
|
needs: [build-angular]
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
- uses: ./.github/workflows/actions/build-angular-server
|
||||||
|
|
||||||
|
test-angular-e2e:
|
||||||
|
needs: [build-angular, build-angular-server]
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
- uses: ./.github/workflows/actions/test-angular-e2e
|
||||||
|
|
||||||
|
build-react:
|
||||||
|
needs: [build-core]
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
- uses: ./.github/workflows/actions/build-react
|
||||||
|
|
||||||
|
build-react-router:
|
||||||
|
needs: [build-react]
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
- uses: ./.github/workflows/actions/build-react-router
|
||||||
|
|
||||||
|
test-react-router-e2e:
|
||||||
|
needs: [build-react, build-react-router]
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
- uses: ./.github/workflows/actions/test-react-router-e2e
|
||||||
|
|
||||||
|
test-react-e2e:
|
||||||
|
needs: [build-react, build-react-router]
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
- uses: ./.github/workflows/actions/test-react-e2e
|
@ -27,7 +27,8 @@
|
|||||||
"lint": "tslint --project .",
|
"lint": "tslint --project .",
|
||||||
"lint.fix": "tslint --project . --fix",
|
"lint.fix": "tslint --project . --fix",
|
||||||
"tsc": "tsc -p .",
|
"tsc": "tsc -p .",
|
||||||
"test.spec": "jest --ci"
|
"test.spec": "jest --ci",
|
||||||
|
"sync": "sh ./scripts/sync.sh"
|
||||||
},
|
},
|
||||||
"main": "dist/index.js",
|
"main": "dist/index.js",
|
||||||
"module": "dist/index.esm.js",
|
"module": "dist/index.esm.js",
|
||||||
|
15
packages/react-router/scripts/sync.sh
Normal file
15
packages/react-router/scripts/sync.sh
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
# Copy ionic react dist
|
||||||
|
rm -rf node_modules/@ionic/react/dist node_modules/@ionic/react/css
|
||||||
|
cp -a ../react/dist node_modules/@ionic/react/dist
|
||||||
|
cp -a ../react/css node_modules/@ionic/react/css
|
||||||
|
cp -a ../react/package.json node_modules/@ionic/react/package.json
|
||||||
|
|
||||||
|
# Copy core dist
|
||||||
|
rm -rf node_modules/@ionic/core/dist node_modules/@ionic/core/loader
|
||||||
|
cp -a ../../core/dist node_modules/@ionic/core/dist
|
||||||
|
cp -a ../../core/loader node_modules/@ionic/core/loader
|
||||||
|
cp -a ../../core/package.json node_modules/@ionic/core/package.json
|
||||||
|
|
||||||
|
# Copy ionicons
|
||||||
|
rm -rf node_modules/ionicons
|
||||||
|
cp -a ../../core/node_modules/ionicons node_modules/ionicons
|
@ -40,16 +40,13 @@
|
|||||||
"workbox-strategies": "^5.1.4",
|
"workbox-strategies": "^5.1.4",
|
||||||
"workbox-streams": "^5.1.4"
|
"workbox-streams": "^5.1.4"
|
||||||
},
|
},
|
||||||
"watch": {
|
|
||||||
"copyRouter": "../src/ReactRouter/*.*"
|
|
||||||
},
|
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"copyRouter": "cpy ../src/ReactRouter ./src/ReactRouter",
|
"start": "npm run sync && react-scripts start",
|
||||||
"start": "concurrently \"npm-watch copyRouter\" \"react-scripts start\"",
|
"start.ci": "npm run sync && BROWSER=none react-scripts start",
|
||||||
"build": "node scripts/build.js",
|
"build": "node scripts/build.js",
|
||||||
"test": "cypress open",
|
"test": "cypress open",
|
||||||
"cypress": "node_modules/.bin/cypress run --headless --browser chrome",
|
"cypress": "node_modules/.bin/cypress run --headless --browser chrome",
|
||||||
"e2e": "npm run copyRouter && concurrently \"SKIP_PREFLIGHT_CHECK=true react-scripts start\" \"wait-on http-get://localhost:3000 && npm run cypress\" --kill-others --success first",
|
"e2e": "npm run sync && concurrently \"SKIP_PREFLIGHT_CHECK=true react-scripts start\" \"wait-on http-get://localhost:3000 && npm run cypress\" --kill-others --success first",
|
||||||
"sync": "sh ./scripts/sync.sh"
|
"sync": "sh ./scripts/sync.sh"
|
||||||
},
|
},
|
||||||
"eslintConfig": {
|
"eslintConfig": {
|
||||||
|
@ -21,7 +21,7 @@ import '@ionic/react/css/text-transformation.css';
|
|||||||
/* Theme variables */
|
/* Theme variables */
|
||||||
import './theme/variables.css';
|
import './theme/variables.css';
|
||||||
import Main from './pages/Main';
|
import Main from './pages/Main';
|
||||||
import { IonReactRouter } from './ReactRouter/IonReactRouter';
|
import { IonReactRouter } from '@ionic/react-router';
|
||||||
import DynamicRoutes from './pages/dynamic-routes/DynamicRoutes';
|
import DynamicRoutes from './pages/dynamic-routes/DynamicRoutes';
|
||||||
import Routing from './pages/routing/Routing';
|
import Routing from './pages/routing/Routing';
|
||||||
import MultipleTabs from './pages/muiltiple-tabs/MultipleTabs';
|
import MultipleTabs from './pages/muiltiple-tabs/MultipleTabs';
|
||||||
|
@ -15,7 +15,7 @@ import {
|
|||||||
IonButton,
|
IonButton,
|
||||||
} from '@ionic/react';
|
} from '@ionic/react';
|
||||||
import { Route, Redirect } from 'react-router';
|
import { Route, Redirect } from 'react-router';
|
||||||
import { IonReactRouter } from '../../ReactRouter/IonReactRouter';
|
import { IonReactRouter } from '@ionic/react-router';
|
||||||
import { triangle, square } from 'ionicons/icons';
|
import { triangle, square } from 'ionicons/icons';
|
||||||
|
|
||||||
const DynamicTabs: React.FC = () => {
|
const DynamicTabs: React.FC = () => {
|
||||||
|
@ -29,7 +29,8 @@
|
|||||||
"tsc": "tsc -p .",
|
"tsc": "tsc -p .",
|
||||||
"copy": "node scripts/copy.js",
|
"copy": "node scripts/copy.js",
|
||||||
"test.spec": "jest --ci",
|
"test.spec": "jest --ci",
|
||||||
"test.treeshake": "node scripts/treeshaking.js dist/index.esm.js"
|
"test.treeshake": "node scripts/treeshaking.js dist/index.esm.js",
|
||||||
|
"sync": "sh ./scripts/sync.sh"
|
||||||
},
|
},
|
||||||
"main": "dist/index.js",
|
"main": "dist/index.js",
|
||||||
"module": "dist/index.esm.js",
|
"module": "dist/index.esm.js",
|
||||||
|
9
packages/react/scripts/sync.sh
Normal file
9
packages/react/scripts/sync.sh
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
# Copy core dist
|
||||||
|
rm -rf node_modules/@ionic/core/dist node_modules/@ionic/core/loader
|
||||||
|
cp -a ../../core/dist node_modules/@ionic/core/dist
|
||||||
|
cp -a ../../core/loader node_modules/@ionic/core/loader
|
||||||
|
cp -a ../../core/package.json node_modules/@ionic/core/package.json
|
||||||
|
|
||||||
|
# Copy ionicons
|
||||||
|
rm -rf node_modules/ionicons
|
||||||
|
cp -a ../../core/node_modules/ionicons node_modules/ionicons
|
@ -42,7 +42,8 @@
|
|||||||
"workbox-streams": "^5.1.4"
|
"workbox-streams": "^5.1.4"
|
||||||
},
|
},
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"start": "react-scripts start",
|
"start": "pnm run sync && react-scripts start",
|
||||||
|
"start.ci": "npm run sync && BROWSER=none react-scripts start",
|
||||||
"build": "react-scripts build",
|
"build": "react-scripts build",
|
||||||
"test": "react-scripts test",
|
"test": "react-scripts test",
|
||||||
"eject": "react-scripts eject",
|
"eject": "react-scripts eject",
|
||||||
|
3170
packages/vue-router/package-lock.json
generated
3170
packages/vue-router/package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@ -9,7 +9,8 @@
|
|||||||
"build": "npm run clean && npm run compile && npm run bundle",
|
"build": "npm run clean && npm run compile && npm run bundle",
|
||||||
"clean": "rimraf dist",
|
"clean": "rimraf dist",
|
||||||
"compile": "npm run tsc",
|
"compile": "npm run tsc",
|
||||||
"tsc": "tsc -p ."
|
"tsc": "tsc -p .",
|
||||||
|
"sync": "sh ./scripts/sync.sh"
|
||||||
},
|
},
|
||||||
"main": "./dist/index.js",
|
"main": "./dist/index.js",
|
||||||
"module": "./dist/index.esm.js",
|
"module": "./dist/index.esm.js",
|
||||||
|
15
packages/vue-router/scripts/sync.sh
Normal file
15
packages/vue-router/scripts/sync.sh
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
# Copy ionic vue dist
|
||||||
|
rm -rf node_modules/@ionic/vue/dist node_modules/@ionic/vue/css
|
||||||
|
cp -a ../vue/dist node_modules/@ionic/vue/dist
|
||||||
|
cp -a ../vue/css node_modules/@ionic/vue/css
|
||||||
|
cp -a ../vue/package.json node_modules/@ionic/vue/package.json
|
||||||
|
|
||||||
|
# Copy core dist
|
||||||
|
rm -rf node_modules/@ionic/core/dist node_modules/@ionic/core/loader
|
||||||
|
cp -a ../../core/dist node_modules/@ionic/core/dist
|
||||||
|
cp -a ../../core/loader node_modules/@ionic/core/loader
|
||||||
|
cp -a ../../core/package.json node_modules/@ionic/core/package.json
|
||||||
|
|
||||||
|
# Copy ionicons
|
||||||
|
rm -rf node_modules/ionicons
|
||||||
|
cp -a ../../core/node_modules/ionicons node_modules/ionicons
|
@ -13,7 +13,8 @@
|
|||||||
"build.web-types": "node ./scripts/build-web-types.js",
|
"build.web-types": "node ./scripts/build-web-types.js",
|
||||||
"build.vetur": "node ./scripts/build-vetur.js",
|
"build.vetur": "node ./scripts/build-vetur.js",
|
||||||
"copy": "node ./scripts/copy-css.js",
|
"copy": "node ./scripts/copy-css.js",
|
||||||
"copy.overlays": "node ./scripts/copy-overlays.js"
|
"copy.overlays": "node ./scripts/copy-overlays.js",
|
||||||
|
"sync": "sh ./scripts/sync.sh"
|
||||||
},
|
},
|
||||||
"main": "./dist/index.js",
|
"main": "./dist/index.js",
|
||||||
"module": "./dist/index.esm.js",
|
"module": "./dist/index.esm.js",
|
||||||
|
9
packages/vue/scripts/sync.sh
Normal file
9
packages/vue/scripts/sync.sh
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
# Copy core dist
|
||||||
|
rm -rf node_modules/@ionic/core/dist node_modules/@ionic/core/loader
|
||||||
|
cp -a ../../core/dist node_modules/@ionic/core/dist
|
||||||
|
cp -a ../../core/loader node_modules/@ionic/core/loader
|
||||||
|
cp -a ../../core/package.json node_modules/@ionic/core/package.json
|
||||||
|
|
||||||
|
# Copy ionicons
|
||||||
|
rm -rf node_modules/ionicons
|
||||||
|
cp -a ../../core/node_modules/ionicons node_modules/ionicons
|
Reference in New Issue
Block a user