65 Commits

Author SHA1 Message Date
00891119f7 feat(virtual-scroll): adds headerHeight and footerHeight (#18851)
Currently, if you have an ion-virtual-scroll with a list of items and a search bar for filtering them, when you change the list of items, the items disappear until rendered again, causing a flicker. This could be solved for the items using the itemHeight function to provide the exact height size and bypass some calculations and be more performant etc.

However, if you had a header or footer, they would still flicker. This commit adds two more optional functions named headerHeight and footerHeight that return the exact size of the header and footer respectively and resolve the flicker.
2019-07-24 18:29:16 +02:00
1f51ab27c4 fix(router-link): add missing target prop (#18659)
references #18655
2019-07-01 11:23:41 -04:00
b69fb69a1a fix(router-outlet): fix swipe to go back 2019-06-27 17:51:03 +02:00
d4c7b036fc feat(router-link): add router-link and deprecate anchor (#18620) 2019-06-25 18:06:51 -04:00
8a88dd25b6 feat(item): add hover and focused states (#18606)
references #18279 references #17624
2019-06-25 17:29:14 -04:00
ad00679da9 feat(fab-button): add hover state using tint colors (#18536)
- fixes a bug where backdrop filter was not applied on translucent buttons and checks for support first

references #17624
2019-06-25 17:26:29 -04:00
b40f7d36d5 fix(): update to Stencil One 🎉🎊 2019-06-19 21:33:50 +02:00
eca4121dc6 feat(components): add missing button/a props to components that render them (#17883)
Adds the following properties to the components listed under them:

`rel`, `download`, `target`:
- anchor
- button
- card
- fab-button
- item-option
- item
- tab-button

`disabled`:
- back-button
- menu-button

`type`:
- back-button
- item-option
- menu-button
- segment-button

fixes #16848 closes #16889


Co-authored-by: bitflower <matthias.max@bitflower.net>
2019-06-12 14:06:29 -04:00
aac60b1390 default to never 2019-06-11 14:01:12 -04:00
b959e0b5ec feat(searchbar): add cancel button options 2019-06-11 11:17:48 -04:00
35c143a036 feat(item-divider): add inner padding CSS variables (#18490)
fixes #18484
2019-06-10 17:06:50 -04:00
58672fb221 feat(back-button): add variables and support for focused and hover states (#18451)
- updates MD spacing for back button text
- also adds e2e tests and adds them to screenshot

references #18279 references #17624 fixes #18465
2019-06-10 15:23:42 -04:00
5c5934bc24 feat(button): add variables for customizing hover state (#18499)
resolves #17974
2019-06-10 13:38:50 -04:00
5ba0aa9aac feat(menu-button): add variables for hover and focused states (#18434)
references #18279
2019-05-31 11:31:34 -04:00
454510092e fix(item-sliding): use the correct gesture direction and side for rtl (#18366)
references #17012
2019-05-23 15:10:34 -04:00
9030dcc111 feat(refresher): add pullFactor property to control speed (#16697)
closes #15425
2019-05-07 17:21:32 -04:00
cc8678ad58 feat(textarea): add option to expand textarea as value changes (#16916)
* feat(textarea): add autoGrow - set height to scrollHeight

* change 1px to inherit, remove additional 4px
2019-05-07 16:52:24 -04:00
669ec0da3d feat(card): add button functionality (#17997)
closes #17773
2019-05-07 15:12:28 -04:00
ef989779b0 feat(menu-button): add css variables for padding (#18188)
fixes #18187
2019-05-07 12:13:56 -04:00
f912206af8 feat(item-sliding): add open method (#17964)
resolves #17899
2019-05-07 11:43:19 -04:00
38ffb98421 feat(img): add ionImgWillLoad event and emit ionImgDidLoad when image is loaded (#18159)
- Adds `ionImgWillLoad` event that emits when the img src is set
- Moves the `ionImgDidLoad` event emit so that it happens when the image actually finishes loading

fixes #17652 closes #18161
2019-05-01 16:03:16 -04:00
464ec3b70a docs(components): update method and parameter descriptions (#18075) 2019-04-23 12:59:25 -04:00
a5b9066fee feat(searchbar): add disabled property (#17935)
closes #17921
2019-04-22 11:37:58 -04:00
9e63947e3c fix(action-sheet): default buttons to empty array
fixes an error with the timing of the buttons being added
2019-04-17 12:56:32 -04:00
07e739a364 feat(toast): add variables to change position start/end of toast (#17961)
closes #17854
2019-04-16 18:13:14 -04:00
6e1a8f1df2 feat(toast): add header and additional custom toast buttons (#17147)
Adds a `header` and `buttons` property to toast. This allows for a toast header to be passed and multiple buttons including action buttons and icon only buttons which matches the Material Design spec. Adds hover states to the button to match the spec. Updates usage section to recommend the new way of passing a close button using the buttons array and `cancel` role. If a button is passed using the cancel role default the color to match the spec. Buttons will default to the `end` side but have the option of being placed on the `start` side.

Co-authored-by: Simon Hänisch <simonhaenisch@users.noreply.github.com>
Co-authored-by: Brandy Carney <brandy@ionic.io>

closes #16791 closes #16237 closes #17611
2019-04-11 11:46:10 -04:00
04f931f694 feat(img): add ionError event (#17134)
resolves #16947
2019-03-27 10:58:03 -04:00
016fa16d44 feat(range): add ticks attribute (#17718)
closes #17717
2019-03-26 14:33:16 -04:00
807820f31b fix(item): add missing ripple color CSS property (#17814)
Adds missing --ripple-color var to item

fixes #17523
2019-03-19 11:14:01 -04:00
c641ae10ed feat(checkbox): implement indeterminate state (#16951)
This adds an `indeterminate` prop to the `ion-checkbox` component, which visually renders the checkbox with a dash to indicate an indeterminate state.

closes #16943
2019-03-04 11:16:41 -05:00
69ecebb159 feat(select): add compareWith property (#17358)
* feat(select): add compareWith property

* style(select): fix lint errors

* test(select): move tests from preview to basic

* refactor(select): improve parameter names in compareOptions method

* chore(): add react usage docs

* chore(): update var names, update examples

* rerun build

* add doc on compareWith
2019-03-01 14:46:42 -05:00
d66b12b8d4 feat(skeleton-text): adds animated prop and support for CSS styling (#17612)
* moves most of the CSS to the host element so that it's easier to customize the skeleton text
* adds auto inherit for border-radius
* moves height to 100% so it will naturally fill an avatar and thumbnail
* adds animated property defaulted to `false`
* removes mode specific styles as they're the same
* changes background to an rgba making it easier to customize
* still works outside of a container element
* adds usage examples for javascript and angular
* moves the width to the parent element making it easier to style
* adds the ability to style the width using CSS
* uses the global theme text color as the background if a custom background is not supplied before defaulting

closes ionic-team/ionic-docs#407
2019-02-27 17:27:34 -05:00
cf607329a3 chore(range): revert neutral point (#17550)
* Revert "fix(range): improved rtl support (#17479)"

This reverts commit f832de5f4ac1e7db5a2a1c48ca7b85ad7ef671b5.

revert range rtl support

* Revert "feat(range): add neutral point (#17400)"

This reverts commit 15acb4be37eef4d1c90229cf64fb836e249c225c.

revert neutral point
2019-02-20 15:57:28 -05:00
15acb4be37 feat(range): add neutral point (#17400)
* feat(Range): add neutral point

* feat(Range): generate proxies and api

* fix(): check positive case in neutralPointChanged

* fix(Range): neutralPoint to min if neutralPoint < min

* fix(Range): active bar style

* fix(Range): tick styling
2019-02-12 17:17:23 -05:00
835aea9c4a feat(slides): expose updateAutoHeight (#17208)
fixes #15079
2019-01-22 16:00:25 +01:00
a90084c077 feat(input): add getInputElement() (#17183)
expose internal <input> element

fixes #17174
2019-01-21 17:19:40 +01:00
766c79d2a1 feat(angular): add global pop() (#17182)
fixes #16340
2019-01-21 01:52:47 +01:00
d513e8a952 feat(datetime): add readonly prop (#17139) 2019-01-18 17:24:58 +01:00
d3b866b290 refactor(all): remove ionChange in non-inputs (#17101)
fixes #17071
2019-01-14 21:43:24 +01:00
3c801dbe11 feat(angular): expose getSelected() (#17079)
fixes #17068
2019-01-14 18:03:44 +01:00
8789748334 test(angular): add more ViewChild and event tests (#17099) 2019-01-14 17:38:31 +01:00
cda2573fdd chore(): update stencil (#16921)
* chore(): update stencil

* fix angular
2018-12-31 17:35:33 +01:00
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
302be5392c fix(overlays): make them hidden until presented (#16903)
fixes #16685
2018-12-29 01:31:33 +01:00
3d656ac312 docs(all): improve type docs for event 2018-12-28 20:38:24 +01:00
8b140306ef refactor(animation): remove ion-animation-controller (#16842) 2018-12-21 13:17:42 +01:00
d1cecf142b fix(virtual-scroll): fixes dynamic changes 2018-12-19 00:27:04 +01:00
e8cec60faf fix(fab-button): adding size prop instead of [mini] (#16692)
- Consistency with rest of API
- Auto docs
- Helps react

fixes #16680
2018-12-14 23:16:20 +01:00
4053f386fd refactor(components): consistent css variables for size (#16600)
Reviews the `--width` and `--height` variables in each component to either remove or add them based on need.

- fixes a bug where the spinner color wasn't being set properly in loading
- adds css variables for customizing background, color, some borders in overlays
- fixes a bug where prefix, suffix are taking up too much width in picker

closes #16097
references ionic-team/ionic-docs#228

BREAKING CHANGES

## Core Components

Removes the `--width` and `--height` variables from the following components, in favor of CSS:

- Button
- FAB Button
- Checkbox
  - Removes the `--width`/`--height` and adds a `--size` variable that is set on the width and height, allowing width and height to still be set and border-radius to still use it as a variable
- Radio
  - Removes the `--width`/`--height` and `--inner-width`/`--inner-height` variables. Calculates inner values based on parent element size.

## Overlay Components

The following components have all be converted to shadow (or scoped) and have CSS variables for width/height:

- Action Sheet _(scoped)_
- Alert  _(scoped)_
- Loading  _(scoped)_
- Menu _(shadow)_
- Modal  _(scoped)_
- Picker _(scoped)_
- Popover  _(scoped)_
- Toast _(shadow)_

The above components will now have the following CSS variables for consistency among overlays:

| Name              |
| ----------------- |
| `--height`        |
| `--max-height`    |
| `--max-width`     |
| `--min-height`    |
| `--min-width`     |
| `--width`         |

If the component does not set the value, it will default to `auto`.

## Removed CSS Variables

The following CSS properties have been removed:

| Component      | Property            | Reason                          |
| ---------------| --------------------| --------------------------------|
| **Button**     | `--height`          | Use CSS instead                 |
| **Button**     | `--margin-bottom`   | Use CSS instead                 |
| **Button**     | `--margin-end`      | Use CSS instead                 |
| **Button**     | `--margin-start`    | Use CSS instead                 |
| **Button**     | `--margin-top`      | Use CSS instead                 |
| **Button**     | `--width`           | Use CSS instead                 |
| **Checkbox**   | `--height`          | Use CSS or `--size`             |
| **Checkbox**   | `--width`           | Use CSS or `--size`             |
| **FAB Button** | `--width`           | Use CSS instead                 |
| **FAB Button** | `--height`          | Use CSS instead                 |
| **FAB Button** | `--margin-bottom`   | Use CSS instead                 |
| **FAB Button** | `--margin-end`      | Use CSS instead                 |
| **FAB Button** | `--margin-start`    | Use CSS instead                 |
| **FAB Button** | `--margin-top       | Use CSS instead                 |
| **Menu**       | `--width-small`     | Use a media query and `--width` |
| **Radio**      | `--width`           | Use CSS instead                 |
| **Radio**      | `--height`          | Use CSS instead                 |
| **Radio**      | `--inner-height`    | Calculated based on parent      |
| **Radio**      | `--inner-width`     | Calculated based on parent      |
2018-12-14 15:45:14 -05:00
a6a17235d0 fix(item-divider): use prop for sticky (#16691) 2018-12-11 23:06:14 +01:00