Commit Graph

14010 Commits

Author SHA1 Message Date
Tanner Reits
1bb7fe87f7 scroll end timing 2024-10-11 15:49:15 -04:00
Tanner Reits
9823e0d2a9 scroll segment view w/ indicator 2024-10-11 15:15:14 -04:00
Tanner Reits
26c2697830 disabled buttons 2024-10-11 15:11:26 -04:00
Tanner Reits
ca3e43bc3b transition indicator color 2024-10-11 13:13:34 -04:00
Tanner Reits
b8dd17eae7 support translation & width scaling 2024-10-11 12:47:19 -04:00
Brandy Carney
475de8b6c7 fix(segment-view): continue to search through segment contents for enabled 2024-10-10 12:04:03 -04:00
Brandy Carney
b94bec20de fix(segment): update segment content to disabled when button is 2024-10-09 18:05:17 -04:00
Brandy Carney
279300fd3e fix(segment): update segment view to scroll past disabled content 2024-10-08 17:35:14 -04:00
Brandy Carney
59e306bd6d test(segment-view): remove not disabled styles 2024-10-02 11:41:36 -04:00
Brandy Carney
641dc0b82a refactor(segment-content): use opacity for disabled content 2024-10-01 16:04:29 -04:00
Brandy Carney
e6547432e5 style: naming 2024-09-30 09:57:22 -04:00
Brandy Carney
c6ec156dcb chore: build 2024-09-30 09:51:19 -04:00
Tanner Reits
89d8e90ab7 fix(segment): scroll segment button into view if appropriate 2024-09-28 20:59:22 -04:00
Tanner Reits
ae2704fdc8 fix(segment): only handle events for correct instance 2024-09-28 20:33:48 -04:00
Tanner Reits
16c728b040 fix(segment): don't trigger scroll listener on segment button click 2024-09-28 20:29:03 -04:00
Tanner Reits
0fa5c99d99 fix(segment): handle change of direction scrolling 2024-09-27 18:34:19 -04:00
Tanner Reits
0a13ab449a fix(segment): clear transform styles on scroll end 2024-09-27 18:27:32 -04:00
Brandy Carney
cbee05e488 fix(segment): move indicator as a percentage of the width on scroll 2024-09-25 16:52:37 -04:00
Brandy Carney
bdc6933cf6 fix(segment): properly bound indicator transform for more than 2 contents 2024-09-25 15:50:39 -04:00
Brandy Carney
7fe1c094ec fix(segment-view): always check the scrollLeft against the initial to get scrollDistance 2024-09-25 15:16:54 -04:00
Brandy Carney
c7bae079c2 fix(segment-view): allow moving the indicator left on scroll without touch 2024-09-25 12:00:52 -04:00
Brandy Carney
1d645c9f3f style: lint 2024-09-24 19:55:25 -04:00
Brandy Carney
699ce9779f fix(segment): properly move the indicator when direction starts out on the left 2024-09-24 19:54:44 -04:00
Brandy Carney
d811221750 feat(segment): move indicator with scroll 2024-09-24 19:22:46 -04:00
Brandy Carney
798e725712 test: remove only 2024-09-24 11:38:13 -04:00
Brandy Carney
15b8b8fe68 chore(): add updated snapshots 2024-09-24 11:27:25 -04:00
Brandy Carney
522cbc6180 test(segment-view): add tests for disabled content scrolling 2024-09-24 11:27:13 -04:00
Brandy Carney
094d9a8553 test(segment-view): remove toolbars 2024-09-24 11:26:49 -04:00
Brandy Carney
b75650b2f7 fix(segment-view): don't query for disabled contents 2024-09-23 19:05:00 -04:00
Brandy Carney
f07a5b1039 fix(segment-view): split opacity by mode vars to match segment 2024-09-23 18:50:39 -04:00
Brandy Carney
5401e8dc24 test(segment-view): split out disabled segment view / content test 2024-09-23 18:44:14 -04:00
Brandy Carney
faa7065a70 feat(segment-content): add disabled prop and hide the content 2024-09-23 18:42:46 -04:00
Brandy Carney
d8f27d8f7b test(segment-view): update function for clearing segment value 2024-09-23 18:17:56 -04:00
Brandy Carney
4c0407ed52 test(segment-view): fix test 2024-09-23 16:23:37 -04:00
Brandy Carney
9103c403b2 docs(segment-view): document setContent method and add example 2024-09-23 16:18:37 -04:00
Brandy Carney
e6f76d53a9 style: lint 2024-09-23 15:57:52 -04:00
Brandy Carney
686d943b65 test(segment-view): add a test for the proper content being displayed 2024-09-23 15:56:33 -04:00
Brandy Carney
ba285306d6 fix(segment): set the view to the initial value without scrolling 2024-09-23 15:40:38 -04:00
Brandy Carney
44e8374791 fix(segment): only call updateSegmentView when gesture ends or button is clicked 2024-09-23 14:29:03 -04:00
Brandy Carney
678990d77a feat(segment-view): support disabled 2024-09-19 14:12:34 -04:00
Brandy Carney
44a0855844 refactor(segment): remove uneccessary function 2024-09-18 15:39:19 -04:00
Brandy Carney
00c378f0f5 refactor(segment): link the button and content with content-id and id 2024-09-18 15:32:48 -04:00
Brandy Carney
8af4d74846 style: lint 2024-09-17 14:17:45 -04:00
Brandy Carney
0324a78c2b feat(segment): add segment view and content components 2024-09-17 13:51:51 -04:00
Brandy Carney
fa74077820 fix(segment): animate the highlight with value changes 2024-09-17 13:15:54 -04:00
Tanner Reits
221bb42c00 merge release-8.3.1 (#29879)
v8.3.1
2024-09-17 11:08:27 -04:00
ionitron
a743344f07 chore(): update package lock files 2024-09-17 14:53:40 +00:00
ionitron
a87674a779 v8.3.1 v8.3.1 2024-09-17 14:53:07 +00:00
Tanner Reits
f64458dc63 fix(react): revert react output target version (#29869)
Issue number: resolves ionic-team/stencil-ds-output-targets#476,
resolves ionic-team/stencil-ds-output-targets#475, resolves #29848

---------

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

In v0.6.0 of the [React output
target](https://www.npmjs.com/package/@stencil/react-output-target), the
implementation was changed to leverage Lit's utility for creating React
components from web components. This introduced some unforseen issues
and breaking changes.

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

- Reverts many of the changes from
https://github.com/ionic-team/ionic-framework/pull/29782 to downgrade
the React output target package to the last stable version (v0.5.3)
- Downgrades the version of Stencil to v4.20.0 (due to
https://github.com/ionic-team/stencil/issues/5983 causing problems with
the downgraded output target)
- Pins these versions and prevents Renovate from attempting to upgrade
until the associated issues are resolved

## 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/docs/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. -->

Dev build for this version: `8.3.1-dev.11726167750.15400355`

I tested the dev build against the use cases outlined in
https://github.com/ionic-team/stencil-ds-output-targets/issues/475 and
https://github.com/ionic-team/stencil-ds-output-targets/issues/476
2024-09-16 14:44:03 +00:00
Maria Hutt
ab7a0ab050 refactor(react): update tab-bar requirement on tabs (#29868)
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. -->

As mentioned in this
[PR](https://github.com/ionic-team/ionic-docs/pull/3797), React
`IonTabs` requires `IonTabBar` do be a child, else it doesn't render and
throws an error.

Angular, JS, and Vue doesn't have this requirement.

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

I didn't see any reason why React does not mimic the other frameworks.
In order to keep consistency, I've updated the React tabs. This would
allow `ion-tabs` and `ion-tab-bar` can be used as standalone elements as
mentioned in the [docs](https://ionicframework.com/docs/api/tabs).

- React follows the same structure as the other frameworks: `IonTabs`
doesn't require `IonTabBar` to be a child to render.

## 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/docs/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. -->

Dev build: 8.3.1-dev.11726159792.1a6f49de

How to test:
1. Create a Ionic React app through the Ionic CLI with tabs as the
starter
2. Run the app
3. Comment out the `IonTabBar`
4. Notice that the `IonTabs` does not render
5. Notice that there's an error in the console: "IonTabs needs a
IonTabBar"
6. Install the dev build: `npm install
@ionic/react@8.3.1-dev.11726159792.1a6f49de`
7. Make sure the `IonTabBar` is still commented out
8. Verify that `IonTabs` renders
9. Verify that there isn't an error in the console
2024-09-12 23:18:35 +00:00