-
Notifications
You must be signed in to change notification settings - Fork 13.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
chore(): sync with next branch #29299
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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. --> With the latest changes on `next`, the fallback behavior for detecting the themes from the Ionic config does not work when using `ion-router-outlet`. For example, in a React app with: ```ts setupIonicReact({ theme: 'ios' }); ``` and a template of: ```tsx <IonApp> <IonReactRouter> <IonRouterOutlet> /* All children will apply the default mode for the mode and theme - not expected */ </IonRouterOutlet> </IonReactRouter> </IonApp> ``` All components rendered inside the `IonRouterOutlet` will apply the `mode` detection for the `theme`. This is not expected behavior, since the configuration has specified the `ionic` theme is the default theme. This problem occurs due to this specific logic: ```ts const elmMode = (elm as any).mode || elm.getAttribute('mode'); ``` The `ion-router-outlet` component has a property defined on the class for `mode`: https://github.com/ionic-team/ionic-framework/blob/ca0923812a89fab830c33b1e854d114c2946c988/core/src/components/router-outlet/router-outlet.tsx#L42 This means that `defaultMode` will always apply over the Ionic config's theme (`defaultTheme`). ## What is the new behavior? <!-- Please describe the behavior or changes that are being added by this PR. --> - Specifying the `ionic` theme from the `initialize`/`setupIonicReact` functions will persist to children components. - Developers can still use the `mode` to persist the changes to child nodes. However for in the case of `IonRouterOutlet`, it will require actually specifying the attribute in the mark-up: ```tsx <IonRouterOutlet mode="md"> /* Any children will apply the "md" mode and theme */ </IonRouterOutlet> ``` ## 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. -->
…29222) Updates the solid buttons with color to use the current color's shade.
Issue number: **ROU-4810** --------- ## Context All the CSS for typography is temporarily added in the `text.scss` file because the correct architecture for the new theme implementation isn’t ready yet. In the future, all these **Sass variables** and **CSS** created need to be placed at the theme level in terms of architecture. The typography of an app needs to be divided into `iOS`, `Android (md)`, and `Ionic` themes. --------- ## What is the new behavior? - Added new typography styles; ## Does this introduce a breaking change? - [ ] Yes - [X] No ## Preview ![image](https://github.com/ionic-team/ionic-framework/assets/25321845/861a13c0-8ebf-43f4-a688-3b51a36d7b06) --------- Co-authored-by: Liam DeBeasi <liamdebeasi@users.noreply.github.com> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Brandy Carney <brandy@ionic.io> Co-authored-by: Brandy Carney <brandyscarney@users.noreply.github.com>
Issue number: ROU-4840 --------- <!-- 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 new behavior? - Added a new Ionic Theme partial, with no dependencies to current `ios/md` architecture. This is to avoid bleeding of the current Design System into the work we are doing for the new Ionic Design System and Theme. For that reason I duplicated part of the basic styles for the Chip (display, box-sizing, etc) and created provisional scss variables, that should be replaced later on with the correct global ones from the new Design System. - Added styles for info chip type states (default, hover, focus and disabled) - No new tests were done on this scope, as there're still other Chip tasks being developed that would override any baselines defined now for this theme. Once the initial basic work for the Chip is complete, tests for the Ionic Theme should be implemented, under the task ROU-4837. - A new page was created - `chip/tests/theme-ionic` - to check styles for current implementation. This will also be used and improved in future Chip Ionic Theme tasks. ## 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. -->
<!-- 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 new behavior? <!-- Please describe the behavior or changes that are being added by this PR. --> Following the Design Doc for the new Ionic Design System, an architecture for Design Tokens was added. 1. Added new `foundations` folder inside the `src`, to hold all the tokens related files. 2. On this file, a json with all the tokens for the new Design System was added. The format followed was the one suggested on the [W3C draft](https://design-tokens.github.io/community-group/format/). 3. Added a dev dependency for [Styles Dictionary](https://amzn.github.io/style-dictionary/#/), version 3.9.2. 4. Added a tokens.js script that will take care of transforming the json tokens into the desired output. For now, three files are being generated: ionic.vars.css (:root with all CSS Variables); ionic.vars.css (scss variables for each token) and ionic.utility.css (a new utility-class for each token) 5. Added the script `npm run build.tokens` to package.json, that will generate the three files mentioned above. For now, all these changes bring no impact to the rest of the Framework, as these variables are not yet being consumed. The `margin`, `padding` and `border-radius` were removed from the prohibited properties on lint, to prevent lint errors with the new utility-classes. This is very open to discussion/feedback if it's seen as not ok. The `build` command now includes the `build.tokens` script, to make sure the files are always generated, in case someone forget to run the command, after changing the json file! ## 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. 6. 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. --> --------- Co-authored-by: Sean Perkins <13732623+sean-perkins@users.noreply.github.com>
#29283) <!-- 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 new behavior? <!-- Please describe the behavior or changes that are being added by this PR. --> - Updated missing font tokens on `_designTokens.json`. - Updated `tokens.js` script for building utility-classes for newly added font tokens. - Fixed space token typo. - Updated ionic.typography file to start using design tokens and remove duplicated code from the tokens generated files. - Updated Ionic Typography tests ## 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. -->
Issue number: resolves #ROU-4839 --------- <!-- 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 new behavior? <!-- Please describe the behavior or changes that are being added by this PR. --> - Added support for outline option on Ionic Theme - Replaced temporary variables with global variables from Design Tokens - Removed associated TODO ## 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. -->
Issue number: resolves #ROU-4838 --------- <!-- 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 new behavior? <!-- Please describe the behavior or changes that are being added by this PR. --> - Added styles for icons inside Chip (Ionic Theme) - Fixed an issue related to hover status, after tokens integration ## 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. -->
thetaPC
approved these changes
Apr 8, 2024
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Issue number: resolves #
What is the current behavior?
What is the new behavior?
Does this introduce a breaking change?
Other information