Releases: ionic-team/ionic-framework
2.0.0-beta.8
2.0.0-beta.8 (2016-06-06)
Bug Fixes
- build: correct link in output.wp.scss file to old ionic directory. (6113daf)
- button: style disabled anchor/button elements (d0abbaf), closes #6108
- config: pass custom providers in the bootstrap of the app (c74b3f7)
- config: set the properties for each mode and add defaults (7def98c), closes #6132
- datetime: clear out existing datetime data (c1ad804), closes #6614
- datetime: fix ISO format when w/out timezone data (272daf2), closes #6608
- infiniteScroll: ensure infinite doesn't fire when already loading (f7b1f37)
- input: add form validation classes to the item (5498a36)
- input: fix material design success/error highlighting on inputs (702a882)
- input: fix the clear input placement on wp mode (4ba999e)
- input: pass the control classes down to the native input (6180cb8)
- ion-backdrop: new ion-backdrop can prevent background scrolling (a1a582b), closes #6656
- item: remove border for the last item in an item-group (6b3e7ac), closes #6518
- label: make all ion-labels stacked or floating stretch (b742e1f), closes #6134
- menu: fix swipe to go back and left menu conflict (f18a624), closes #5575
- menu: pass platform to menu type (7f597a0)
- modal: fix onPageWillEnter (01110af), closes #6597
- picker: safari fired pointerEnd() twice (#6708) (170cf8c), closes #6704
- picker: use sanitizer on translate3d css prop (8598a2e)
- platform: pass original event in EventEmitter (cc93366)
- popover: allow popover to have an ion-content wrapping it (c801d18)
- popover: position MD popover on top of element clicked (6bd91f0), closes #6683
- popover: style the ion-content background in a popover to match popover bg (9ea89ea)
- range: fix styling on range, add demo (d24b080)
- range: prevent change detection exception (7e4b13d)
- range: update range left/right margin on ios (27fa22f)
- range: update the styling for all modes (061af93)
- ripple: do not activate ripple if pointer moved (d57833c)
- slides: Removing a slide via *ngIf now properly removes the slide and the bullet from th (dbe54b5), closes #6651
- toast: remove backdrop, allow user interaction when up (d4d1f70), closes #6291
- toast: remove the enableBackdropDismiss option on toast (aeeae3f)
- toggle: do not fire change when initializing (cd2afb3), closes #6144
- transition: reduce transition delay on MD (908fa03)
Features
- alert: add Sass variables for the radio/checkbox labels when checked (9cc0dc7), closes #6289
- item: add item-content attr selector (839adf8), closes #6643
- menu: add opened/closed events (51ee8b7)
- popover: add height auto for safari and remove ability to scroll on backdrop (620b7c8)
- popover: add MD animation (1d0d755)
- popover: add popover component (53fd3c3)
- popover: add styling for the md pin (a25a552)
- popover: adjust popover to position in the center with no event (1e7b572)
- popover: change MD animation and use for WP also (44a7da8)
- popover: change popover item background color to match wrapper (b0d71da)
- popover: change template in popover to a page similar to modal (a96e36a)
- popover: fix long popovers that go off the page (4db72cf)
- popover: fix MD animations and start from the right side (e419ec6)
- popover: modify the animation for each mode (57a1274)
- popover: position popover in the top middle if no event (438a389)
- popover: position the popover on transition instead of create (2cd1b51)
- range: add ability to add labels to the left/right of range (fc819dd)
- range: add md and wp styling, tweak ios styling (af6d5e4)
- range: add styling for range-left/range-right md and wp (21753a8)
- range: add styling for the range when knob is minimum md (c59c656)
- range: create ion-range input (2c6e11b)
- range: fix the knob on md so the transform isn't blurry (cffa84c)
- range: only increase knob size when pin doesn't exist (47174df)
2.0.0-beta.7
2.0.0-beta.7 (2016-05-19)
Bug Fixes
- app: add status bar padding to navbar when a tab subpage (62b97ce), closes #6368
- app: fix status bar padding for inset modals (4d27680)
- build: fix e2e, demos, and karma tests to use new angular module setup. (4c19d15)
- button: add the solid class to bar buttons (658b29b)
- button: add transparent background for clear/outline windows buttons (da5c065)
- button: exclude solid from getting added to the button in the class (4252448)
- button: remove unnecessary ion-button-effect elements (369d78b)
- checkbox: add ability to align checkboxes to the right (e075ccd), closes #5925
- datetime: fix property dayNames (it was using dayShort) (0bd736d)
- datetime: improve parseTemplate (55ec80a)
- grid: add ion-grid element which wraps the rows/cols and adds padding (a0c0228)
- input: clear text input (bde103d)
- input: remove old clearInput code and clean up UI, added onChange calls (71cd297)
- loading: include cssClass in the Loading options (4c8ee95), closes #6365
- nav: transition toolbars on iOS (daa4ccc), closes #5692
- picker: number of dom children != number of options (#6551) (28cf16a)
- radio: add styling for radio when item-left/item-right is added (4c5dd0b)
- raf: test for undefined raf (1c16008)
- segment: add disabled property to segment and segment button (4fca31e)
- select: add min height to select text for windows since it shows border (e9c1442)
- show-hide-when: add !important to display as this should always take precedence (617b7ac), closes #6270
- slides: make slide method parameters optional (f355087)
- slides: set class using renderer instead of host (132d8e9), closes #6275
- tabs: move border to top for windows positioned bottom tabs (af2085e), closes #6526
- tabs: remove min-width from tab so 5 tabs will fit (b4647cd), closes #6056
- toast: add toast back to the components export (d7d4742)
- toggle: add styling for toggle when placed left (ab82d53)
- toolbar: add the mode to the inverse function for a toolbar (3ca3027), closes #6364
- toolbar: md mode use the color contrast for toolbar button/title (9f54f16)
- toolbar: remove color change from outline buttons in toolbar (6759074)
- toolbar: set the text color of the toolbar based on the contrast of the background (74afc18)
- toolbar: wp get title/button color from the contrast of toolbar background (62bd13b)
- virtualScroll: fixes from rc1 breaking changes (158f717)
Features
- datetime: add ion-datetime (1e331c9)
- Input: added functionality for clear input option on ion-input (d8e2849)
- modal: add inset modal feature (a658524), closes #5423
- modal: start of inset modals (a1a594d)
- picker: add ios/md/wp picker styles (aa9a667)
- picker: init picker (d5068f8)
- platform: add a readySource as ready resolved value (f68ac8a)
- platform: cordova pause/resume events (532096b)
BREAKING CHANGES
- toolbar: S: ios mode
$toolbar-ios-button-color
now has a
default value ofcolor-contrast($colors-ios, $toolbar-ios-background, ios)
which will evaluate to the primary color for light background
toolbars and white for dark background toolbars. - toolbar: S:
$bar-button-ios-color
has been renamed to $toolbar-ios-button-color
$bar-button-ios-border-radius
has been renamed to
$toolbar-ios-button-border-radius
added variables for the toolbar ios title for easier styling:
$toolbar-ios-title-font-weight
$toolbar-ios-title-text-align
$toolbar-ios-title-text-color
references #6364
- toolbar: S:
$bar-button-wp-color
was renamed to $toolbar-wp-button-color
$bar-button-wp-border-radius
was renamed to
$toolbar-wp-button-border-radius
Added $toolbar-wp-title-text-color
for better control of the title
color
Removed $toolbar-wp-button-color
from the default themes
references #6364
- toolbar: S:
$toolbar-md-button-color
no longer gets passed to the function that
sets the contrast color for toolbar buttons, but it can still be used
to set the default button color.
$bar-button-md-color
was renamed to $toolbar-md-button-color
$bar-button-md-border-radius
was renamed to
$toolbar-md-button-border-radius
references #6364
- toggle: S: renamed Sass variables in toggle, checkbox, and
radio. Changedmedia
incomponent-mode-media-padding
(for example)
toitem-left
.
references #5925
1.3.1 "el salvador"
Bug Fixes
- Status Bar: Moved status tap handler to after platform ready fires. (947d9296)
- Loader: make the loader service return a promise instead of the deprecated object, updated docs (0e94f914, closes #3717)
- Tabs: fixs as issue with tabs without icons (28e99594, closes #6292)
- Navigation: revert previous navigation fix (efb9bd) and added a different fix for the infinite loop issue. Wrote additional tests to verify the test. (e31498c4)
- Life Cycle: Life cycle events fire reliably on correct scope, closed many issues (d6373335)
- Slides: changed the way looped/duplicates slides work, added documentation (44d5a0f8, closes #6305)
- Header:
- Footer: fix a typo in footer bar styles using balanced class (99f987fc, closes #6426)
- Pull-to-refresh: Better performance via changing translateY to 3d (c7e61e4d, closes #6360)
- Scss: made variables for button-default-border and button-default-active-bordermade variables (7da8739f, closes #5576)
- Content: documentation update (#62fdd636, closes #5813)
Breaking Changes
- Scss: changed variable being passed to buttons for styling borders. By default, the variable passed is
$button-default-border
instead of$button-primary-border
(for example). The border property was previously ignoring the parameter and was hard-coded to transparent (7da8739f)
2.0.0-beta.6
2.0.0-beta.6 (2016-04-21)
Bug Fixes
- nav: tabs should not dereg child navs (f3ddb0b), closes #6267
- sass: fix sass errors (219059c)
- toast: create unique toast id (e07f0ae)
- toast: remove default duration, allow close button click when bd disabled (d6589e1)
- toast: remove unused options (f9ea2d8)
Features
1.3.0 "delhi"
<a name"1.3.0">
1.3.0 "delhi" (2016-04-21)
Features
- angular: Upgraded to Angular 1.5
Bug Fixes
- button-bar: borders back. (24b5b860, closes #4917)
- exposeWhenAside: resize handler is trigger when screen dimensions change (b5968ca8)
- item: fix padding for items (56bb89e1, closes #5534)
- karma:
- modal: Don't show click-block-div unnecessarily on remove() (b0c89ef7)
- navigation:
- nullRef: nullify reference to the destroyed slider (prevent it from calling update()) (7e9d52c2)
- scroll: remove overflow scroll hidden for iOS (aec6598d)
- slides: resolves data-update issue on duplicate slides #5739 (db8304d2)
- tabs:
2.0.0-beta.5
2.0.0-beta.5 (2016-04-20)
Bug Fixes
- alert: remove justify content from buttons in an alert (9412a7c)
- app: add iOS status bar padding to each mode (5a1c441), closes #5924
- build: update the gulpfile nightly to only update the distributed package.json file (c1d82f4)
- button: add a category to buttons so they won't get the button styles (35dd0ed), closes #6237
- button: buttons don't get activated when ion-label contains exotic elements (0521ce2)
- button: remove classes from buttons with categories (5f8edc2)
- checkbox: add 'type="button"' to tag (7583ebf)
- content: fix padding/margin attributes so all work on scroll-content (9020d52)
- cordova: add status bar padding for content for all modes (f45ddf9), closes #5934
- cordova: only target navbar section when it has the statusbar-padding (422c983)
- focus: improve input focus control (e27452b), closes #5536
- input: add 'type="button"' to button tag (f17f517)
- input: blur when tapping outside input on iOS (f9b46c2), closes #5020
- input: move nested function outside of if statment so as to fix issue related to strict (c8e58e5)
- keyboard: remove content padding after input blur (e21c4d5), closes #5800
- label: remove flex-basis to fix floating/stacked labels on iOS/Safari (cd62a4c), closes #6109
- loading: present loading from root nav controller (f972908), closes #6121
- platform: fire cordova platform.ready using zone (ba5624b), closes #6186
- platform: run zone after cordova deviceready (e082bd1), closes #6087
- sass: move the
@at-root
font import to the components file (8f08de1), closes #5931 - sass: remove global imports from components (dad2155), closes #5931
- searchbar: only show clear icon when focused on the searchbar (ecf9302), closes #5922
- showHideWhen: remove hidden attribute on directives and use classes (5692abe), closes #5836
- slides: add id to the slide component to grab the correct pagination (7263728), closes #5745 #5508
- tabs: do not init w/ tab that is hidden or disabled (8d8cc4c), closes #6226
- tabs: remove tabbarIcons and fix windows styling to use tabbarLayout (81dd1cc), closes #6126
- toolbar: add border-top when toolbar is positioned to the bottom (29e6242), closes #5967
- virtualScroll: load async data (16a283e), closes #6124
Features
- app: getActiveNav() method (7777237)
- backbutton: add hardware back button (68278b0), closes #5071
- changeDetection: detach Tabs when not active (0c4171e)
- changeDetection: detach ViewControllers when not active (b282e90)
- confg: create a method to access the global app injector which contains references the (17a9e6d), closes #5973
- content: add scrollToBottom (bef4a67)
- directives: auto provide IONIC_DIRECTIVES to all components (0a83f2f), closes #6092
- platform: add backbutton event (156fdc3)
- platform: default desktop to use material design (51032d2), closes #6003
- select: fallback to alert interface when more than 6 opts (1c67b02)
- select: using action-sheet as ion-select interface (81096f1)
- slides: add ability to slide to specific index (a6091bd)
- slides: add method to get previous index (a54361c)
- statusbarPadding: add statusbar-padding css to content (98c2aab)
- statusbarPadding: add statusbar-padding css to toolbars (44403d1)
- tabs: enabled and show inputs (1b085e3), closes #5768
- toggle: add animation for windows mode toggle (f841bef), closes #5981
Performance Improvements
BREAKING CHANGES
- tabs:
tabbarIcons
is officially removed, please use
tabbarLayout
instead. View the Tabs API docs for more information.
2.0.0-beta.4
2.0.0-beta.4 (2016-04-07)
Bug Fixes
- action-sheet: action sheet button shortens when activated in Safari (6d55abc), closes #5828
- alert: disable listeners until ready (5844703), closes #5821
- alert: prevent both click and enter keyup from firing (2000b1e)
- build: output.css needs to exist prior to doc gen (7dfbb9d)
- button: normalize generated button class names (5f621ab)
- card: maintain card width when absolute positioned (349c577)
- config: improve getBoolean() and getNumber() (d44f8f6)
- generators: add tabs Sass file (80109b8)
- generators: add TS tabs generator (3ad15b1)
- img: only load ion-img when visible (0701338)
- infinitescroll: always check on scroll change (fe04c51)
- input: add event emitters for blur and focus to the ion-input component (3e88fe9), closes #5487
- input: align item right to the bottom for windows mode (b3bea83)
- input: update width of inputs so they don't exceed the item (4d4f1d4), closes #5835
- ion-infinite-scroll: Fix error leaving page (05823f9)
- label: add color to label in a select (8fff76e)
- loading: fix animation for loading the first time (6cd90ee)
- nav: correctly set zIndex when there's a previous view (1dd73aa)
- nav: portal nav should always animate (86fc741), closes #6059
- Nav: fixes swipeBackEnabled as attribute (17c3886), closes #5653
- platform: windows UA should not trigger iOS (6dae784)
- router: fix nested ion-nav router (b063566)
- router: update path recognizer (3df5989), closes #5997
- sass: change map-get to use color function in default themes (30bb005)
- scroll: correctly resolve when scrolling finishes (35a3357)
- searchbar: add padding around the floating searchbar wp (5ca6bf4), closes #5921
- searchbar: call the input changed event on input not keyup (94707bf), closes #5584
- searchbar: fix the border color and toolbar padding (0e91a69)
- select: change windows border colors for selects to match input (6063932)
- select: fix select styling on windows mode (a4fc96d), closes #5787
- select: make select full width when with a stacked/floating label (4e37524), closes #5715
- toolbar: fix back button for md mode (7dc58ef), closes #5923
- toolbar: fix wp back button in toolbar (9a23a92)
- toolbar: reduce min width on back button for wp mode (96375b6), closes #5759
- ViewController: call onDismiss after transition ends (24443c3), closes #5818
Features
- img: create ion-img (7a82727)
- ion-content: adds for non-scrollable page content (442d135), closes #5987
- loading: add ability to hide spinner in the config or options (dae37e7)
- loading: add internal stack for the loading service (d3fa29f)
- loading: add loading indicator component and styles (a485cd0)
- router: allow multiple routers (3733ebc)
- sass: add support for contrast color in MD mode colors map (9efa3ea)
- sass: add support for contrast in color map for wp mode (5f2e737)
- sass: add the ability to pass a contrast color in the colors map to iOS (ff1a8ac)
- storage: clear() removes all entries in the storage engine (6e7cc97)
- virtualScroll: init virtual scroll (7679ac0), closes #5418
Performance Improvements
BREAKING CHANGES
- sass: Can now pass contrast to the colors map:
$colors-wp: (
primary: (
base: #327eff,
contrast: yellow
),
secondary: (
base: #32db64,
contrast: hotpink
),
danger: #d91e18,
light: #f4f4f4,
dark: #222
) !default;
references #5445
- sass: Can now pass contrast to the colors map:
$colors-md: (
primary: (
base: #327eff,
contrast: yellow
),
secondary: (
base: #32db64,
contrast: hotpink
),
danger: #d91e18,
light: #f4f4f4,
dark: #222
) !default;
references #5445
- sass: Can now pass contrast to the colors map:
$colors-ios: (
primary: (
base: #327eff,
contrast: yellow
),
secondary: (
base: #32db64,
contrast: hotpink
),
danger: #d91e18,
light: #f4f4f4,
dark: #222
) !default;
references #5445
2.0.0-beta.3
2.0.0-beta.3 (2016-03-07)
Bug Fixes
- actionsheet: fix md ripple on actionsheet (f51a3f5)
- alert: increase padding on windows alert (c96af06), closes #5722
- alert: update radio/checkbox items to buttons elements (b24dc27)
- animations: get easing curve from parent animation (bc06994)
- chip: cleaned up some of the UI and added some sass variables (eeac795)
- config: fix config set function so that it has arguments defined (894824e), closes #5696
- infinitescroll: only show spinner when loading (7ee0b52), closes #5690
- input: add tappable attr to input-cover (b814314)
- item: add a default size for items in buttons to use the content button sizes (7b14a29), closes #5580
- label: change the flex for stacked and floating labels so buttons can be added (65ee86f), closes #5319
- label: remove margin from item-right in a stacked or floating label (7416827)
- nav: change init zIndex to 100 (5863e2c)
- nav: create opts object when undefined/null (8975016), closes #5737
- nav: do not hide pages if an overlay is in the stack (4922fc6), closes #5430
- nav: reset zIndex when goes under 0 (ad50a11), closes #5718
- nav: use setRoot when root property changes (d77e8d9), closes #5668
- overlays: update keyboard focus management (e639457)
- radio: do not use strict comparison for values (a2f858b), closes #5660
- radio: improve group/button value comparisons (5d9b169)
- radio: select only one radio when w/out ngModel (e92feef), closes #5659
- select: do not open on form submit (b219de5), closes #5596
- select: improve value comparisons (b967b1e)
- tabs: don't add the has-icon class to a tab button if the layout is icon-hide (6b93bc1), closes #5658
- tabs: improves tabs style for iOS (b9a4628)
- textarea: width of textarea was exceeding page area (ec11ae3)
- touchaction: apply to child touch elements (0129410)
- util: array length check (9dc3840)
- util: getQueryString tests (f8e38ef)
- util: ignore empty query param in getQueryString (908ea8c)
- windows: detect windows phone via user agent (703fe16)
Features
- buttons: dynamically add button attributes (154a69c), closes #5186
- searchbar: debounce input events (f6af807), closes #5429
- searchbar: disable autocorrect/autocapitalize/spellcheck (498dd54), closes #5749
- touchaction: remove 300ms delay via touch-action (e1c77a3)
- windows: add card components (dd7def6)
- windows: add checkbox styling and update alert checkbox (1ecfa6f)
- windows: add chip component (2699b44)
- windows: add content padding/margin components for wp (fe11ecc)
- windows: add detail-push icon (706e0d7)
- windows: add input border color variable to theme (0d4971f)
- windows: add input component sass (f8ef960)
- windows: add label Sass file (8a1e450)
- windows: add list and item components (1cf56ee)
- windows: add menu Sass component (cd7d627)
- windows: add modal file (a323aa1)
- windows: add noto sans as a fallback font (85c1637)
- windows: add radio component for wp mode (dd206ad)
- windows: add searchbar component with styling (a9054ad)
- windows: add segment component (922e1f1)
- windows: add select component (781ea83)
- windows: add tabs component and clean up windows UI (fa2e4b2)
- windows: add toggles (b7bcd39)
- windows: add windows support to snapshot (368c12a)
- windows: change windowsphone platform to windows (8df8420)
- windows: clean up action sheet UI (138e876)
- windows: clean up button and alert UI (13f3e83)
- windows: clean up button css, rename Sass variables and add more (bba3c5c)
- windows: fix card and alert UI (69c0da2)
- windows: fix config so it will disable hover (996f944)
- windows: initial add for windows badges (1fc0a23)
- windows: initial add of action sheet (370490e)
- windows: initial add of alert with windows dialog styles (6af9b77)
- windows: initial add of toolbar with some custom theming (6062bb6)
- windows: initial add of windows mode (a9c995d)
- windows: make wp buttons more windows-y (b91f8de)
- windows: more UI cleanup (a594531)
- windows: UI fixes (29ff7f1)
- windows: windows UI cleanup (e05f147)
2.0.0-beta.2
2.0.0-beta.2 (2016-03-01)
Bug Fixes
- alert: add max height to alert body so it will overflow (9c0eebd), closes #5316
- animation: ensure final inline styles applied when fallback runs (4524e5a), closes #5484
- deploy: make sure production mode is set to true (af0d84c)
- generate: output correct Sass import for pages (3784f47), closes #5641
- menu: fix enabled check (8564d79)
- nav: immediately stop if view removed before trans finished (4fabade)
- overlay: do not dom cache views before overlays (4cae151), closes #5483
- refresher: get scrollTop from the scroll element to prevent refreshing when dragging up (ea884de), closes #5207
- sass: rename brightness/inverse sass functions (892b007), closes #5542
- tabs: pop tab page to parent nav (b9eec24), closes #5196
- toolbar: add a min-width to the toolbar content so that it won't overlap buttons (5fb1e08), closes #5657
Features
- checkbox: add change event (2596731)
- infiniteScroll: add infinite scroll (0480fa3), closes #5415
- input: default autocomplete/autocorrect=off, fix autofocus (b53d707)
- menu: grab the menu by side only if it is enabled (a2b7a21)
- NavController: prevent other lifecycle events from firing (6b9e59d), closes #5516
- prodMode: set isProd() when prodMode set in @app config (3c8daa0)
- spinner: SVG spinners (6c73446)
- toggle: add change event (730cccd)
2.0.0-beta.1
2.0.0-beta.1 (2016-02-18)
Bug Fixes
- alert: add padding under the alert title for iOS when there is no message (c365c92), closes #5299
- alert: fix alert button background color on activated (fd0b851)
- animations: remove inline styles when finished (22c32f3), closes #5130
- button: button goes transparent on hover on desktop (non-touch devices) (0e5d3d7)
- button: fix colorized buttons on hover and outline buttons on hover (2df72cc)
- checkbox: use value accessor provider (e468a21), closes #5353
- colors: update sass inverse color function (55ef5a8)
- input: fix stand-alone text-input item cover (e2554f0), closes #5387
- input: make ion-label tappable to focus input (38595fa), closes #5378
- item: add min-height to item-inner to remove gap between items (90f165f), closes #5350
- menu: add/remove gesture listeners per enabled menu (ff24152)
- NavController: fire onPageWillUnload/DidUnload (8f0b88b), closes #5507
- radio: radio w/ falsy value not checkable (89861e0), closes #5348
- radio: use value accessor provider (b85d7aa)
- segment: add the active background color to the colorized segments and remove activated c (df9a4df), closes #5308
- select: use value accessor provider (3444a3c)
- toggle: use value accessor provider (5034c1d), closes #5425
- toolbar: fix md toolbar so it doesn't flow off the screen (bd03760), closes #5414
- toolbar: fixes segment/title aligment when cordova iOS style is applied (2766f7f), closes #5208
- toolbar: toolbar padding when running in cordova iOS (db535dd)
Features
- generators: add Sass import reminder to page generator (b22b5ff)
- menu: allow persistent menus (0d47a1b), closes #5204
- menu: close any opened menu (c02fb51)
- MenuController: create isOpen() and isEnabled() (3bb09ce), closes #5390
- nav: iOS swipe to go back (da37029), closes #5185
- select: cancel output event (6a7c97d), closes #5439
- slides: add slideChangeStart event output (736140c), closes #5301
- slides: Added move event onSlideMove (daceb98)
- tabs: rootParams, pass params to tabs (e06cf71), closes #5172
- Theme: md toolbar dark theme (7eb7952)
- Themes: dark theme (3ee5bd3)
- Themes: md cards dark theme (3dbd9a9)
- Themes: md dark theme item-divider (eb8e778)
- Themes: md outer content dark theme (bcaa484)
- Themes: md toggle dark theme (569beab)
Performance Improvements
- animation: only update progressStep once per 16ms (098371a)