
Issue number: N/A --------- <!-- Please do not submit updates to dependencies unless it fixes an issue. --> <!-- Please try to limit your pull request to one type (bugfix, feature, etc). Submit multiple pull requests if needed. --> ## What is the current behavior? <!-- Please describe the current behavior that you are modifying. --> Testing dark mode is manual per test in Playwright. Ionic developer needs to setup the variables and assign them to a selector that applies in the class. ## What is the new behavior? <!-- Please describe the behavior or changes that are being added by this PR. --> - The `.setContent` API will now work with a new config option to test dark mode automatically without additional configuration/test set-up. - Default theme is no theme (fallback theme) - Screenshot names and test titles remain the same for all existing tests. Only tests that opt into a theme will be pre-pended with `-dark` or `-light` (as an example for current themes). ## Does this introduce a breaking change? - [ ] Yes - [x] No <!-- If this introduces a breaking change, please describe the impact and migration path for existing applications below. --> ## Other information <!-- Any other information that is important to this PR such as screenshots of how the component looks before and after the change. -->
Build
1. Clone ionic
git@github.com:ionic-team/ionic.git
cd ionic
2. Run npm install
cd core npm install
Notice that @ionic/core
lives in core
.
3. Run npm start
Make sure you are inside the core
directory.
npm start
With the dev
command, Ionic components will be built with Stencil, changes to source files are watched, a local http server will startup, and http://localhost:3333/ will open in a browser.
4. Preview
Navigate to http://localhost:3333/src/components/. Each component has small e2e apps found in the test
directory, for example: http://localhost:3333/src/components/button/test/basic
As changes are made in an editor to source files, the e2e app will live-reload.
How to contribute
-
npm start
allows you to modify the components and have live reloading, just like another ionic app. -
When everything looks good, run
npm run validate
to verify the tests linter and production build passes.
Deploy
npm run prepare.deploy
- Review/update changelog
- Commit updates using the package name and version number as the commit message.
npm run deploy
- 🎉