Commit Graph

52 Commits

Author SHA1 Message Date
Sean Perkins
284eb8ecaf feat: add ionic theme architecture (#29132)
Issue number: Internal

---------

<!-- 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. -->

## What is the new behavior?
<!-- Please describe the behavior or changes that are being added by
this PR. -->

Adds the base architecture to add a new theme configuration to Ionic
Framework components.
- Components can now specify an additional stylesheet for the `ionic`
theme.
- Developers can specify the `theme` and `mode` independently to control
look and feel of a component.

Test infrastructure has been updated to add support for testing the
theme configuration with Playwright.
- Existing `themes` test configuration has been renamed to `palettes`

This PR is just the initial effort to decouple Ionic's architecture to
separate look and feel and allow our dev team to start introducing the
new component appearance to the UI. There will be additional changes
required to completely add support for the Ionic theme. These changes
are targeted against the `next` branch and are not expected to be used
in a production environment at this time.

## Does this introduce a breaking change?

- [ ] Yes
- [x] No

<!--
  If this introduces a breaking change:
1. Describe the impact and migration path for existing applications
below.
  2. Update the BREAKING.md file with the breaking change.
3. Add "BREAKING CHANGE: [...]" to the commit description when merging.
See
https://github.com/ionic-team/ionic-framework/blob/main/.github/CONTRIBUTING.md#footer
for more information.
-->


## Other information

<!-- Any other information that is important to this PR such as
screenshots of how the component looks before and after the change. -->

---------

Co-authored-by: Maria Hutt <thetaPC@users.noreply.github.com>
Co-authored-by: Brandy Carney <brandyscarney@users.noreply.github.com>
2024-03-18 15:45:01 -04:00
Maria Hutt
0a0345a84a refactor(many): use utils import (#27160) 2023-04-12 13:25:14 -07:00
Sean Perkins
15c169043f chore(docs): remove manual documentation (#24984) 2022-04-21 12:31:51 -04:00
Liam DeBeasi
5676bab316 lint(eslint): migrate to eslint and prettier (#25046) 2022-04-04 11:12:53 -04:00
Liam DeBeasi
33768e1d0c docs(tabs): add correct vue examples (#22510) 2020-11-17 11:02:28 -05:00
Mike Hartington
60aa027903 chore(): fix tabs (#19821)
* fix(tabs): do not wait on child tab setActive() lazy loading

* whenDefined example

* chore(): fix lint
2019-11-01 09:29:30 -07:00
Manu MA
b4d92c6241 fix(ie): classList does not support variadic (#19460) 2019-09-27 13:12:06 +02:00
Manu MA
48a27636c7 fix(all): component reusage (#18963)
Use new stencil APIs to allow ionic elements to be reused once removed from the DOM.

fixes #18843
fixes #17344
fixes #16453
fixes #15879
fixes #15788
fixes #15484
fixes #17890
fixes #16364
2019-08-27 16:29:37 +02:00
Manu MA
e82648bda2 refactor(all): update to one (part 3) (#18874) 2019-07-25 20:22:44 +02:00
Manu MA
b40f7d36d5 fix(): update to Stencil One 🎉🎊 2019-06-19 21:33:50 +02:00
Manu MA
3c801dbe11 feat(angular): expose getSelected() (#17079)
fixes #17068
2019-01-14 18:03:44 +01:00
Manu MA
cda2573fdd chore(): update stencil (#16921)
* chore(): update stencil

* fix angular
2018-12-31 17:35:33 +01:00
Manu MA
6ca7645258 fix(tab-button): allow standalone tab-button (#16905)
* fix(tab-button): allow standalone tab-button

fixes #16845

* fix lint issue
2018-12-31 12:51:36 +01:00
Brandy Carney
bc3e192427 fix(tab-bar): update to match MD design and remove transforms (#16348)
Updates the tab-bar to match the MD bottom navigation spec: https://material.io/design/components/bottom-navigation.html#specs

Changes proposed in this pull request:
- moved flex properties to host, inherit in child anchor element
  - this allows the user to customize the tab-button flex properties & fixes #16231
- increased letter spacing
- removed transforms / transitions on active tab
- decreased badge size, add badge styling when empty for MD
- fix badge positioning on both iOS and MD
- updates e2e tests, adds a preview test for tab-bar
- updates documentation surrounding tabs

fixes #16231
fixes ionic-team/ionic-docs#175
fixes ionic-team/ionic-docs#163
2018-11-21 12:07:37 -05:00
Manu Mtz.-Almeida
a85ef06ac9 chore(): update stencil + api-spec file 2018-11-20 10:06:02 +01:00
Manu MA
091625df64 fix(all): update types to be required (#16218) 2018-11-03 20:54:58 +01:00
Manu MA
ecc2c55370 docs(all): possible values are extracted by stencil (#16190)
* docs(all): possible values are extracted by stencil

* add defaults

* remove all hardcoded defaults

* update stencil
2018-11-02 00:06:40 +01:00
Manu MA
4d3ad67740 refactor(tabs): apply design-doc (#16048) 2018-10-25 22:13:19 +02:00
Adam Bradley
a9fd3399de test(e2e): force roboto font on all systems (#15993) 2018-10-19 15:22:15 -05:00
Manu Mtz.-Almeida
3a4b21457f chore(): update stencil 2018-10-12 11:44:43 -05:00
Manu Mtz.-Almeida
a72fced6fe fix(all): docs for all missing props 2018-10-11 16:24:08 -05:00
Manu Mtz.-Almeida
4036db5480 chore(): update readme 2018-10-08 15:46:34 -05:00
Manu Mtz.-Almeida
c49d896e08 refactor(all): using ComponentInterface 2018-09-14 18:47:00 +02:00
Manu Mtz.-Almeida
4876df928d chore(): tslint checks 2018-09-06 21:49:35 +02:00
Manu Mtz.-Almeida
dfac9dc4e9 feat(app): hardware back button support 2018-09-03 00:31:21 +02:00
Manu Mtz.-Almeida
ba2230510e refactor(all): strict boolean conditions 2018-09-01 17:23:03 +02:00
Manu Mtz.-Almeida
1d46973785 refactor(all): make all method return a promise 2018-08-28 22:20:10 +02:00
Manu Mtz.-Almeida
5b6eb2c7eb refactor(nav, menu): swipeEnabled => swipeGesture 2018-08-13 18:32:24 +02:00
Manu Mtz.-Almeida
0842939273 refactor(tabbar): removes ion-tab-button 2018-08-12 22:50:52 +02:00
Manu Mtz.-Almeida
d856ecfbbf chore(): update to latest stencil 2018-08-12 12:04:27 +02:00
Manu Mtz.-Almeida
c1b61d0fee chore(): update to ionic-rules/strict 2018-07-29 23:10:38 +02:00
Manu Mtz.-Almeida
92e21a8cf3 fix(all): updated tslint rules to latest 2018-07-29 13:03:47 +02:00
Manu Mtz.-Almeida
05b258c6ef fix(tab): prevent infinite loop 2018-07-24 17:32:54 +02:00
Manu Mtz.-Almeida
4b844ef1c3 fix(all): accesibility and global styles for hidden nodes 2018-07-24 00:02:13 +02:00
Manu Mtz.-Almeida
00c4c77542 fix(tab): props are reactive 2018-07-12 18:44:44 +02:00
Adam Bradley
13e0c91ebe docs(readme): update component readmes 2018-07-11 12:26:22 -05:00
Brandy Carney
4956d6d305 docs(breaking): update breaking changes to include tabs properties
closes #14745
2018-07-10 14:42:10 -04:00
Brandy Carney
a7f1f4daa7 refactor(components): update to use shadow DOM and work with css variables
- updates components to use shadow DOM or scoped if they require css variables
- moves global styles to an external stylesheet that needs to be imported
- adds support for additional colors and removes the Sass loops to generate colors for each component
- several property renames, bug fixes, and test updates

Co-authored-by: Manu Mtz.-Almeida <manu.mtza@gmail.com>
Co-authored-by: Adam Bradley <adambradley25@gmail.com>
Co-authored-by: Cam Wiegert <cam@camwiegert.com>
2018-07-09 12:57:21 -04:00
mhartington
96945b1ee1 docs(): usage and examples 2018-06-18 12:45:15 -04:00
Adam Bradley
9872a6c7ee docs(readme): update stencil docs generation readmes 2018-05-30 12:02:31 -05:00
Manu Mtz.-Almeida
618f708bc4 fix(all): strong typing for color 2018-05-14 13:51:30 +02:00
Manu Mtz.-Almeida
053c375521 refactor(all): allow external imports 2018-04-24 16:12:02 +02:00
Manu Mtz.-Almeida
4ea8881f33 refactor(all): enable strictPropertyInitialization 2018-04-19 18:48:38 +02:00
Manu Mtz.-Almeida
ea24ad677d fix(props): update stencil 2018-04-10 00:14:10 +02:00
Manu Mtz.-Almeida
ae2cae635d refactor(tabs): rename [tabTitle] -> [label] 2018-04-03 13:37:18 +02:00
Manu Mtz.-Almeida
a5e5403068 refactor(overlays): [title] -> [header] 2018-04-02 20:22:15 +02:00
Manu Mtz.-Almeida
cece447092 fix(angular): module exports 2018-03-30 21:54:46 +02:00
Adam Bradley
0105a4ee47 refactor(tab): rename tab properties 2018-03-28 10:12:04 -05:00
Manu Mtz.-Almeida
08f5976a57 chore(): update components.d.ts 2018-03-24 03:27:28 +01:00
Manu Mtz.-Almeida
48d1bd412c feat(tab): framework support 2018-03-24 03:27:27 +01:00