Compare commits

..

459 Commits

Author SHA1 Message Date
Brandy Carney
70b5b6b5e5 fix(rtl): use multi direction in order to override the default ltr 2017-06-16 13:10:13 -04:00
Brandy Carney
5094feec89 chore(ionic): release 3.4.1 2017-06-16 12:19:45 -04:00
Brandy Carney
1ca7df75ed fix(themes): change default app-direction 2017-06-16 12:05:22 -04:00
Dan Bucholtz
877d8211d5 chore(changelog): fix typo, update deps to latest 2017-06-15 21:53:49 -05:00
Louis Orleans
a8731dfc98 fix(tabs): properly align tabs highlight (#11619)
When `Tabs` are nested within each other, the highlight can get
misaligned. This prevents that by ensuring the affected
`.tab-highlight` is a direct child of the targeted `Tabs`.
2017-06-15 23:39:26 +02:00
Manuel Mtz-Almeida
7803998542 style(reorder): using const 2017-06-15 22:56:32 +02:00
Manu Mtz.-Almeida
8bd2f24d06 perf(item): button-effect is hidden for non buttons 2017-06-15 22:44:53 +02:00
Amit Moryossef
63f728f517 feat(item-reorder): add side support (#11642)
fixes #11637
2017-06-15 22:34:30 +02:00
Manuel Mtz-Almeida
61935602a1 fix(sliding-item): super slow device does get correct classes
fixes #11988
2017-06-15 21:58:33 +02:00
Dan Bucholtz
1a4aacf8be chore(changelog): add upgrade instructions for 3.4.0 2017-06-15 14:53:25 -05:00
Manuel Mtz-Almeida
5a5da39a1e fix(highlight): selected tab might be null
fixes #12054
2017-06-15 21:22:55 +02:00
Zachary Keeton
c7645ee59d feat(select): add compareWith Input for object value comparison (#11965)
fixes #6625
2017-06-15 20:12:56 +02:00
Manu MA
2743c63537 refactor(overlay): simplify focusOutActiveElement (#12023) 2017-06-15 20:09:34 +02:00
Manu MA
7a1342caa1 fix(input): prevent duplicated tabIndex (#12043)
fixes #7178
2017-06-15 20:08:25 +02:00
Dan Bucholtz
3564bcfe1b chore(github): update issue template plunkr to 3.4.0 version 2017-06-15 09:46:06 -05:00
Dan Bucholtz
f149c5ee95 chore(dependencies): update package version to 3.4.0 2017-06-15 09:35:21 -05:00
Dan Bucholtz
2791c40c29 chore(changelog): 3.4.0 release 2017-06-15 09:35:02 -05:00
Job
54ac2e393f fix(input): slightly longer delay for autofocus (#12037) 2017-06-14 15:09:23 +02:00
Manuel Mtz-Almeida
dc958c3e2c fix(textarea): apply classes properly 2017-06-13 17:26:04 +02:00
Manuel Mtz-Almeida
9f86e10f46 fix(input): better handling of attributes 2017-06-13 14:18:03 +02:00
Job
8041eedf22 fix(input): use all supported attributes on both textareas and inputs (#12028) 2017-06-13 12:15:51 +02:00
Manuel Mtz-Almeida
ef85ba6c1f fix(input): add correct translate3d for rtl
thanks @Khalid-Nowaf

fixes #11745
fixes #11211
2017-06-12 23:17:48 +02:00
Manuel Mtz-Almeida
6dee17b89b Merge branch 'keyboard-fixes' 2017-06-12 22:49:13 +02:00
Manuel Mtz-Almeida
c10f72b1e2 fix(keyboard): big keyboard/input refactor
fixes #9699
fixes #11484
fixes #11389
fixes #11325
fixes #11291
fixes #10828
fixes #11291
fixes #10393
fixes #10257
fixes #9434
fixes #8933
fixes #7178
fixes #7047
fixes #10552
fixes #10393
fixes #10183
fixes #10187
fixes #10852
fixes #11578
2017-06-12 22:31:22 +02:00
Job
47e3c70bf3 fix(refresher): border should only show when pulled (#12015)
fixes #10994
2017-06-12 21:05:57 +02:00
Brandy Carney
a91a68e198 style(util): remove commented out test css 2017-06-12 13:51:26 -04:00
William Ghelfi
3e0d43e7dc feat(loading): add margin start variable (#11980)
* Use margin variable

* feat(loading): add sass variable to override content margin
2017-06-12 11:57:14 -04:00
Brandy Carney
d0847aabdb style(lint): enable default rule and ignore variables with parents 2017-06-09 18:19:03 -04:00
Brandy Carney
63b0f0aaf6 style(lint): fix lint errors and add !default flags 2017-06-09 18:11:40 -04:00
Sina
10f4df42d0 fix(item-sliding): RTL fix for item sliding (#11825)
* fix(item-sliding): fix item-sliding RTL

fix a bug that options disappear on RTL

* wrong class

* revert back ts changes

* create scss fixes

* correct order of rule set

* Right is right and left is left

unless we use start or end for rtl and ltr right should be placed right
and so does left.

* using multi-dir and ltr mixins

* Currect order on RTL using ltr and rtl specific mixins

* dupplicate the comment to disable PropertySpelling
2017-06-09 16:56:41 -04:00
Amit Moryossef
f4452b5d33 feat(rtl): support flipped svg background images on rtl (#11945)
* feat(svg-background-image): support flipped on rtl

* feat(svg-background-image): add rtl for needed icons

* revert(svg-background-image): no need to flip clear

* fix(svg-background-image): translate to place

* fix(svg-background-image): add support for line and polygon
2017-06-09 16:30:35 -04:00
Amit Moryossef
20c9dd7e64 fix(datetime): set datetime direction the same on ltr and rtl (#11992) 2017-06-09 16:13:31 -04:00
Amit Moryossef
6db8c147a6 fix(segment): fix border-radius logic for RTL (#11981) 2017-06-09 15:19:53 -04:00
Manuel Mtz-Almeida
3c046b413b test(split-pane): adds side RTL tests 2017-06-09 16:55:41 +02:00
Amit Moryossef
30dc247404 fix(split-pane): correct split-pane menu side order 2017-06-09 17:35:04 +03:00
Manuel Mtz-Almeida
ac52d3b724 refactor(toggle): simplied RTL support 2017-06-09 15:46:24 +02:00
Manuel Mtz-Almeida
435f5c4db0 Merge branch 'rtl-fix-toggle' of https://github.com/sijav/ionic 2017-06-09 15:31:39 +02:00
Sina
30047f004e fix(menu): rtl gesture for menu (#11830)
* fix(menu): rtl fix for menu

* disable PropertySpelling in scss-lint for this special case

* Revert "disable PropertySpelling in scss-lint for this special case"

This reverts commit 87c3302fc2.

* remove scss changes because of the conflict

* Fix left (default) menu position

* Revert "Fix left (default) menu position"

This reverts commit f657369540.

* trim down ifs

* remove unnecessary this
2017-06-09 13:58:31 +02:00
Daniel Sogl
75bfbad21e chore(zone.js): fix ios9 error (#11979)
https://github.com/angular/zone.js/issues/802
2017-06-08 15:31:49 -04:00
Amit Moryossef
2273fb5d47 feat(rtl): add transform and transform-origin support for rtl (#11649)
* feat(rtl): add translate3d support for directions

* feat(rtl): add transform-origin support for directions

* fix(transform): add missing origins

* fix(transform): when given a percentage, calc on rtl

* fix(transform-origin): be same as before

* fix(translate3d): no double minus

* fix(translate3d): use transform instead of cloning code

* style(scss-lint): remove empty line

* fix(merge): fix bad merge

* refactor(transform-origin): nicer logic

* style(): add eof line

* fix(transform): remove unneeded mixin

* feat(rtl): add transform mixin and str-split function

* Merge remote-tracking branch 'remotes/upstream/rtl-transform' into transform-rtl

# Conflicts:
#	src/themes/ionic.mixins.scss

* fix(transform): fix string comparison
2017-06-08 15:27:45 -04:00
Amit Moryossef
bb574743d9 test(snapshot): add assistive popover to change direction (#11976) 2017-06-08 10:56:34 -04:00
imgx64
d0ae810bae feat(loading): add enableBackdropDismiss to Loading (#11937)
closes #7975
2017-06-08 10:40:28 -04:00
Sina
344589a00e Merge remote-tracking branch 'refs/remotes/ionic-team/master' into rtl-fix-toggle 2017-06-08 18:50:04 +04:30
Zachary Keeton
dc6c5863fb fix(select): return undefined when there are no options (#11968)
* fix(select): make select with no options return undefined when OK is pressed (#10435)

* refactor(select): add early check for alert inputs

fixes #10435
2017-06-08 14:35:23 +02:00
Sina
f7ac32bbf1 revert back scss changes per request 2017-06-08 15:32:47 +04:30
Sina
c0033f512a Merge remote-tracking branch 'refs/remotes/ionic-team/master' into rtl-fix-toggle 2017-06-08 15:25:36 +04:30
Amit Moryossef
305c306b14 feat(background-position): add background position support for rtl (#11946)
* feat(background-position): add background position support for rtl

* fix(background-position): fix center

* refactor(background-position): make format more robust
2017-06-07 16:37:26 -04:00
Amit Moryossef
9aedc9dc52 refactor(platform): enforce direction values (#11823)
* fix(lint): unused import

* feat(platform): enforce direction value

* style(platform): make sure not to change indentation

* refactor(platform): rename PageDirection to DocumentDirection
2017-06-07 16:24:27 -04:00
mhartington
fe751f7ac3 docs(content): add note about scroll events and zone
Closes #11633
2017-06-07 14:01:55 -04:00
mhartington
5d2974f2d2 docs(itemSliding): add note about expandable
Closes https://github.com/ionic-team/ionic-site/issues/969
2017-06-07 13:50:05 -04:00
Amit Moryossef
133a0f9379 refactor(menu): use multi-dir for left to avoid flipping values (#11953)
* refactor(menu): move lint disable inside multi-dir

* feat(menu): add correct left behavior

* refactor(menu): remove redundant code
2017-06-07 12:11:53 -04:00
Sina
bb966e5a31 fix(button): rtl fix for md ripple effect (#11842)
* fix(button): rtl fix for md ripple effect

* add multi-dir mixin

* Linting

* remove the empty line and re place the comment

* Linting...
2017-06-07 12:07:13 -04:00
Amit Moryossef
f0c6948ef8 feat(rtl): optimize the new mixins for smaller bundle, ltr separation (#11635)
* refactor(item): replaced item-left with item-start
replaced item-right with item-end

* style(item): fix spacing

* fix(item): add backwards support for left/right in ng-content

* fix(item): deprecated old variables, not breaking change

* feat(rtl): padding mixin

* feat(rtl): change all padding variables to start/end
add support for old variable names

* feat(rtl): replace all padding-side with start/end

* revert(functions): remove mixins

* feat(scss): add padding-horizontal and rtl functions (thanks brandy)

* feat(padding): use padding horizontal mixin everywhere

* feat(padding): use padding horizontal mixin everywhere

* fix(lint): change properties order. tests passing

* fix(sass-functions): reorder functions to avoid warning

* fix(scss): fix variable name

* perf(rtl): add check if need rtl selector

* feat(scss): add full padding function

* feat(scss): add border-radius mixin

* fix(rtl): change border-radius to use mixin

* perf(scss): only override if has something to override

* feat(scss): add margin scss variables for sides

* feat(scss): add margin mixin

* fix(scss): fix wrong support for 2/3 args

* feat(rtl): spread margins/paddings

* feat(rtl): spread margins/paddings

* feat(position): add rtl support for absolute

* fix(rtl): add missing calls

* fix(item): old attributes deprecated support

* revert(changelog): not intended to be changed

* fix(sass-functions): and not &&

* fix(padding): merge + missing padding

* style(): remove newline

* refactor(mixins): move mixins to mixins file

* style(): fix alignment

* fix(item): right padding should not be set

* fix(): incorrect defaults

* feat(scss-lint): disable some side variables

* fix(scss): lint passes

* feat(lint): disabled text-align

* fix(): correct variable name

* fix(fab): missed a comma

* fix(rtl): rtl method incorrect for multiple selectors

* fix(rtl): toolbar bad merge

* fix(rtl): icon-only is in px not em

* fix(rtl): toggle padding

* feat(rtl): correct notation for rtl custom

* Merge branch 'breaking-item' into start-end

# Conflicts:
#	src/components/checkbox/checkbox.ios.scss
#	src/components/checkbox/checkbox.md.scss
#	src/components/checkbox/checkbox.wp.scss
#	src/components/item/item.ios.scss
#	src/components/item/item.md.scss
#	src/components/item/item.wp.scss
#	src/components/radio/radio.ios.scss
#	src/components/radio/radio.md.scss
#	src/components/radio/radio.wp.scss
#	src/components/toggle/toggle.ios.scss
#	src/components/toggle/toggle.md.scss
#	src/components/toggle/toggle.wp.scss

* feat(rtl): optimize bundle result

* feat(float): use new standard

* feat(platform): gotta have direction on html

* fix(scss): add import + change code order

* fix(lint): passes

* fix(scss): fix for deprecated usages

* fix(scss): property use #{}

* fix(rtl): change css specificity, increase bundle size for multidirectional

* fix(scss): mixin manages priority

* fix(scss): select icon

* fix(scss): correct range variable

* fix(lint): unused import

* fix(multi-dir): things that ignore PropertySpelling must be under multi-dir

* fix(multi-dir): things that ignore PropertySpelling must be under multi-dir

* fix(include-rtl): change to app-direction, to be able to set rtl only apps

* fix(rtl): remove incorrect split-pane rtl behavior

* fix(menu): start needs position on rtl

* fix(float): renamed test file, add float mixin

* fix(scss-lint): lint excluded files

* fix(scss): add missing unit

* refactor(scss): change dir to direction, as the correct property name

* fix(app-direction): replace last usage of include-rtl

Closes: #11805 #11914
2017-06-06 12:52:03 -04:00
Brandy Carney
ad40b3b86b chore(scripts): normalize paths and include typeRoots for Windows (#11933)
Short description of what this resolves:

Allows our e2e tests to run on a Windows machine

Changes proposed in this pull request:

Normalize paths using path.join()
Add typeRoots to the root tsconfig file
Change the spawnedCommand based on the OS
Fixes: #11551
2017-06-05 18:57:05 -04:00
Brandy Carney
cb5d505d64 style(lint): fix linter errors 2017-06-05 18:15:53 -04:00
Sina
2cffb44187 Merge remote-tracking branch 'refs/remotes/ionic-team/master' into rtl-fix-toggle 2017-06-05 23:27:57 +04:30
Daniel Sogl
35a0e228de chore(package): update to latest Angular release (#11813)
* chore(package): latest Angular release

* Update package.json

* Update package.json

* Update package.json

* Update package.json

* Update package.json

* Update package.json
2017-06-05 14:12:38 -04:00
Amit Moryossef
7d8696c050 test(snapshot): build all tests into a single app (#11910)
* fix(lint): unused import

* fix(searchbar): caret moving to the end when typing

* refactor(template): fix component template (#11839)

fix #11838

* chore(issue-template): change link to new org name

* docs(github): rename driftyco references to ionic-team

* fix(toolbar): use the correct contrast color for MD toolbar

fixes #11848

* docs(searchbar): add default values for inputs (#11856)

Complete missing defaults for animated and showCancelButton.

* docs(tabs): rename Angular 2 to Angular (#11837)

* docs(tabs): change double quotes to single quotes (#11836)

* docs(api-tabs): improved typo

* Update tab.ts

* docs(slides): change double quotes to single quotes (#11835)

* docs(api-slides): improve typo

* Update slides.ts

* docs(platform): change double quotes to single quotes (#11834)

* docs(nav-controller): add type to usage example (#11833)

* docs(util): hide normalizeURL (#11735)

* docs(checkbox): rename Angular 2 to Angular (#11831)

* docs(api-checkbox): renamed Angular 2 to Angular

* Update checkbox.ts

* docs(checkbox): improve usage example (#11832)

* docs(api-checkbox): improve typo

* Update chip.ts

* docs(menu): update menu-controller link
Closes #11877. Closes https://github.com/ionic-team/ionic-site/issues/1129

* feat(snapshot): init new "components" for global testing

* feat(snapshot): add app component

* feat(snapshot): add assistive touch

* feat(snapshot): add more components

* feat(snapshot): add more components

* fix(snapshot): add trailing line

* fix(snapshot): remove not working tests

* fix(snapshot): correct name of group
2017-06-05 14:03:32 -04:00
Snir Segal
1c25acbb1f fix(select): add cssClass for popover interface (#11769)
* fix(ionSelect): support cssClass for popover interface

* fix default cssClass value
2017-06-05 13:58:48 -04:00
Brandy Carney
64cac79da6 chore(lint): add custom sass linter to require !default 2017-06-05 13:44:06 -04:00
Sina
59a1e3def1 fix(gesture): RTL fix for slide-gesture (#11822)
RTL fix for slide-gesture
2017-06-05 12:32:16 -04:00
Jody Brewster
e3c60c5de4 feat(slides): support centering slides and using decimal numbers
Closes #10361
2017-06-05 12:22:19 -04:00
Amit Moryossef
f5bbdcd32e test(e2e): update icon attributes to use rtl attributes (#11912) 2017-06-05 12:06:08 -04:00
Sina
6322134994 fix(transition): RTL fix for transition on ios (#11820)
* fix(transition-ios): RTL fix for ios transition

* put const variables in init of page transition and remove RTL specific variables
2017-06-05 11:49:21 -04:00
Daniel Sogl
dd6de0d625 docs(angular): rename Angular 2 to Angular (#11911)
* its called Angular!

* Update CHANGELOG.md

* Update CHANGELOG.md
2017-06-05 11:41:54 -04:00
Amit Moryossef
c9cb9ae15a perf(item-sliding): remove duplicate class (#11829)
* fix(lint): unused import

* perf(item-sliding): remove duplicate class

* fix(item-sliding): revert and merge selector

* fix(item-sliding): pass lint
2017-06-02 15:30:11 -04:00
Ibby Hadeed
6256b0fa66 fix(content): scroll content should inherit background (#11467) 2017-06-02 14:36:19 -04:00
Amit Moryossef
a40b872975 fix(rtl): add icon-start and icon-end attributes (#11737)
* feat(icon): add start/end

* fix(icon): add all relevant deprecations

* fix(deprecation): add deprecation to missing selector

* revert(tests): revert icon-start/end from tests
2017-06-02 14:00:18 -04:00
Brandy Carney
57dc22d173 chore(readme): update snapshot with steps for the connect error 2017-06-02 13:32:25 -04:00
Brandy Carney
0f4ed1c7f8 fix(toolbar): get the correct contrast color for md mode
fixes an issue introduced by the fix in #11848

references #11848
2017-06-02 13:05:34 -04:00
Daniel Sogl
1c76cde986 docs(menu): update menu-controller link
Closes #11877. Closes https://github.com/ionic-team/ionic-site/issues/1129
2017-06-01 11:52:29 -04:00
Daniel Sogl
76a9454285 docs(checkbox): improve usage example (#11832)
* docs(api-checkbox): improve typo

* Update chip.ts
2017-05-30 14:50:40 -04:00
Ibby Hadeed
0570e3e262 docs(util): hide normalizeURL (#11735) 2017-05-30 11:47:52 -04:00
Daniel Sogl
4c57326dc4 docs(checkbox): rename Angular 2 to Angular (#11831)
* docs(api-checkbox): renamed Angular 2 to Angular

* Update checkbox.ts
2017-05-30 11:41:30 -04:00
Daniel Sogl
0624a77afe docs(nav-controller): add type to usage example (#11833) 2017-05-30 11:40:14 -04:00
Daniel Sogl
7af93d23b8 docs(platform): change double quotes to single quotes (#11834) 2017-05-30 11:39:37 -04:00
Daniel Sogl
42d29f4331 docs(slides): change double quotes to single quotes (#11835)
* docs(api-slides): improve typo

* Update slides.ts
2017-05-30 11:39:04 -04:00
Daniel Sogl
ecc4e4a530 docs(tabs): change double quotes to single quotes (#11836)
* docs(api-tabs): improved typo

* Update tab.ts
2017-05-30 11:38:30 -04:00
Daniel Sogl
18517660d4 docs(tabs): rename Angular 2 to Angular (#11837) 2017-05-30 11:37:51 -04:00
Joe Woodhouse
117003e9e4 docs(searchbar): add default values for inputs (#11856)
Complete missing defaults for animated and showCancelButton.
2017-05-30 11:37:05 -04:00
Brandy Carney
041689b5f5 fix(toolbar): use the correct contrast color for MD toolbar
fixes #11848
2017-05-30 11:25:29 -04:00
Brandy Carney
e354f21936 docs(github): rename driftyco references to ionic-team 2017-05-30 10:51:53 -04:00
Justin Willis
73ab06e360 chore(issue-template): change link to new org name 2017-05-30 09:45:01 -05:00
Daniel Sogl
d4fce8995b refactor(template): fix component template (#11839)
fix #11838
2017-05-30 09:07:45 -05:00
Sina
2afb936536 fix(toggle): RTL fix for toggle 2017-05-28 12:29:37 +04:30
Sina
e526ce1da5 Merge remote-tracking branch 'refs/remotes/driftyco/master' 2017-05-28 08:40:52 +04:30
Sina
39909d0f68 Merge remote-tracking branch 'refs/remotes/driftyco/master' 2017-05-28 07:58:33 +04:30
davdiv
261bc4d5f4 fix(searchbar): caret moving to the end when typing 2017-05-27 15:03:16 +02:00
Job
f14d7d6524 fix(sass): add default flag to variables (#11779)
* fix(card): allow overriding variables

* fix(card): allow overriding variables

* fix(alert): allow overriding variables

* fix(card): allow overriding variables

* fix(datetime): allow overriding variables

* fix(datetime): allow overriding variables

* fix(datetime): allow overriding variables

* fix(input): allow overriding variables

* fix(list): allow overriding variables

* fix(list): allow overriding variables

* fix(list): allow overriding variables

* fix(select): allow overriding variables

* fix(select): allow overriding variables

* fix(theme): allow overriding variables

* fix(theme): allow overriding variables

* fix(theme): allow overriding variables

* fix(theme): allow overriding variables

* fix(theme): allow overriding variables

* fix(theme): allow overriding variables
2017-05-26 12:31:04 -04:00
Aaron Mulder
2edb085d4d docs(modal): document cssClass option (#11797)
Adds documentation for #10020
2017-05-26 11:23:40 -04:00
Brandy Carney
638ab70309 docs(changelog): update release steps with correct dependencies 2017-05-25 12:27:53 -04:00
Brandy Carney
556745191f refactor(item): prefix the input classes with item- 2017-05-24 14:46:51 -04:00
Dan Bucholtz
3de6d24a40 chore(changelog): add instructions on how to upgrade typescript 2017-05-24 10:22:07 -05:00
Dan Bucholtz
8ba1fcac45 chore(changelog): add upgrade instructions 2017-05-24 09:57:24 -05:00
Dan Bucholtz
4a56cbba29 chore(changelog): ionic-angular 3.3.0 changelog
ionic-angular 3.3.0 changelog
2017-05-24 09:51:35 -05:00
Brandy Carney
d2975c0ab0 chore(gulp): remove bonjour service 2017-05-22 12:20:58 -04:00
Amit Moryossef
e5d08a00fb style(lint): remove unused import (#11738) 2017-05-22 12:19:10 -04:00
Amit Moryossef
7bdfaacfa9 feat(icon): add flip/unflip for icon on rtl (#11634)
* feat(icon): add flip/unflip for rtl

* fix(icon): flip before not display

* fix(icon): flip before not actual
2017-05-22 12:15:13 -04:00
Daniel Ciao
892e14f334 fix(VirtualScroll): initialize trackByFn reference (#11624)
* fix(VirtualScroll): initialize trackByFn reference

* fix(VirtualScroll): simplify fix for TrackByFn reference
2017-05-20 01:19:23 +02:00
Brandy Carney
3e2eefc9c9 style(lint): fix lint errors with sass and ts 2017-05-19 17:16:21 -04:00
Anton Gillert
8a4a93ee03 refactor(swiper): add null check for better testability (#11191) 2017-05-19 17:13:54 -04:00
BrandonShar
bb22e4a5f3 fix(segment): add z-index to ios back button (#10363) 2017-05-19 16:40:31 -04:00
Dylan v.d Merwe
7b369a1a6e docs(segment): add usage for ionChange event (#11293)
The `Segment` docs do not show a clear example on how to use the `ionChange` event.
2017-05-19 16:34:20 -04:00
Daniel Sogl
b64733aace docs(menu): fix link to MenuController (#11537)
fixes driftyco/ionic-site#1080
2017-05-19 16:21:58 -04:00
Alexander Bell-Towne
7a797d4f3e dos(navigation): fix navbar link (#11540) 2017-05-19 16:21:05 -04:00
Daniel Sogl
67bbaf331e chore(package): update Angular to 4.1.2 (#11615)
Update to Angular 4.1.2
2017-05-19 15:14:13 -04:00
Michael Nieß
3323275ddd docs(checkbox): add advanced example
Add an example for how to do a function call when checkbox changed
2017-05-19 14:31:01 -04:00
Shane Smith
d86785c376 fix(range): update the UI when min/max change (#11720)
fixes #11719
2017-05-19 13:19:12 -04:00
jamesgroat
a6d1e12a94 refactor(loading): remove unused delay option (#11583) 2017-05-19 13:09:02 -04:00
Hadrien TOMA
55f31dd7ec docs(menu): update link to MenuController (#11677) 2017-05-19 13:07:33 -04:00
Chris Griffith
c0200f7447 dosc(navigation): rename params variable to navParams (#11709)
Aligning the code sample to match the generated code from the CLI’s
page generator.
2017-05-19 13:06:46 -04:00
Amit Moryossef
929799484b docs(issue): add reference to ionic v1 for v1.x issues (#11272) 2017-05-19 09:17:18 -05:00
Amit Moryossef
3443ffdc3a fix(searchbar): searchbar padding should be on the left (#11651) 2017-05-17 16:53:40 -04:00
Sina
ca71072e98 fix(select): RTL fix for searchbar (#11355)
* fix(select): RTL fix for searchbar

RTL fix for searchbar component

* fix bad reference

I forgot to refrence _isRTL

* use platform variable instead of method

* space indent instead of tab indent

* Remove scss changes per request

PR - #11342 - covers the scss, and is about done
2017-05-17 16:44:11 -04:00
Daniel Sogl
257b5fcc49 docs(): update issue template 2017-05-17 16:25:08 -04:00
Daniel Sogl
e0b27d4ad7 docs(readme): update readme 2017-05-17 16:23:35 -04:00
Brandy Carney
8bc827a531 docs(slides): update slides demo to use correct img path
closes driftyco/ionic-site#11652
2017-05-15 11:16:53 -04:00
Brandy Carney
db94ef606f test(rtl): do not set dir to ltr by default, add reorder e2e 2017-05-12 16:43:33 -04:00
Amit Moryossef
a30379bef6 feat(rtl): add rtl margin, padding, position and border-radius (#11342)
* refactor(item): replaced item-left with item-start
replaced item-right with item-end

* style(item): fix spacing

* fix(item): add backwards support for left/right in ng-content

* fix(item): deprecated old variables, not breaking change

* feat(rtl): padding mixin

* feat(rtl): change all padding variables to start/end
add support for old variable names

* feat(rtl): replace all padding-side with start/end

* revert(functions): remove mixins

* feat(scss): add padding-horizontal and rtl functions (thanks brandy)

* feat(padding): use padding horizontal mixin everywhere

* feat(padding): use padding horizontal mixin everywhere

* fix(lint): change properties order. tests passing

* fix(sass-functions): reorder functions to avoid warning

* fix(scss): fix variable name

* perf(rtl): add check if need rtl selector

* feat(scss): add full padding function

* feat(scss): add border-radius mixin

* fix(rtl): change border-radius to use mixin

* perf(scss): only override if has something to override

* feat(scss): add margin scss variables for sides

* feat(scss): add margin mixin

* fix(scss): fix wrong support for 2/3 args

* feat(rtl): spread margins/paddings

* feat(rtl): spread margins/paddings

* feat(position): add rtl support for absolute

* fix(rtl): add missing calls

* fix(item): old attributes deprecated support

* revert(changelog): not intended to be changed

* fix(sass-functions): and not &&

* fix(padding): merge + missing padding

* style(): remove newline

* refactor(mixins): move mixins to mixins file

* style(): fix alignment

* fix(item): right padding should not be set

* fix(): incorrect defaults

* feat(scss-lint): disable some side variables

* fix(scss): lint passes

* feat(lint): disabled text-align

* fix(): correct variable name

* fix(fab): missed a comma

* fix(rtl): rtl method incorrect for multiple selectors

* fix(rtl): toolbar bad merge

* fix(rtl): icon-only is in px not em

* fix(rtl): toggle padding

* feat(rtl): correct notation for rtl custom

* Merge branch 'breaking-item' into start-end

# Conflicts:
#	src/components/checkbox/checkbox.ios.scss
#	src/components/checkbox/checkbox.md.scss
#	src/components/checkbox/checkbox.wp.scss
#	src/components/item/item.ios.scss
#	src/components/item/item.md.scss
#	src/components/item/item.wp.scss
#	src/components/radio/radio.ios.scss
#	src/components/radio/radio.md.scss
#	src/components/radio/radio.wp.scss
#	src/components/toggle/toggle.ios.scss
#	src/components/toggle/toggle.md.scss
#	src/components/toggle/toggle.wp.scss

* fix(scss): fix for deprecated usages
2017-05-12 13:05:45 -04:00
Brandy Carney
0eb4310b5b docs(changelog): update upgrade steps to use 3.2.1 2017-05-12 13:03:54 -04:00
Dan Bucholtz
f9027690d0 chore(ionic): release 3.2.1 2017-05-12 12:00:32 -05:00
Brandy Carney
2c66c56d69 fix(label): set the ios variables to null to avoid styling
fixes #11631
2017-05-12 12:21:50 -04:00
Kulshekhar Kabra
4347627f26 fix(searchbar): update signature mismatch in template & class (#11599)
fixes #11598
2017-05-11 12:19:37 -04:00
perry
700e4c2479 chore(ci): sync paralell demo builds via s3 2017-05-10 14:28:55 -05:00
Brandy Carney
3139c97571 test(content): update content no-bounce e2e test 2017-05-10 13:35:21 -04:00
Brandy Carney
4623ae5879 chore(ionic): release 3.2.0 2017-05-10 11:25:06 -04:00
Kendall González León
120c85d74e docs(alert): imported AlertController in usage example (#11567)
Added an importation for use the alert controller on line 52.
2017-05-09 18:49:01 -04:00
Brandy Carney
cbe0b42e74 fix(button): display box shadow correctly for Chrome
See the following bug:
https://bugs.chromium.org/p/chromium/issues/detail?id=713674

References #11585
2017-05-09 15:50:30 -04:00
Dan Bucholtz
4b60e89849 chore(dependencies): update to latest zone.js for faster start-up (#11579)
update to latest zone.js for faster start-up
2017-05-09 12:18:13 -05:00
Manu Mtz.-Almeida
f893aa6774 fix(virtual-scroll): remove duplicate items 2017-05-09 18:33:50 +02:00
imgx64
5a895bb099 fix(datetime): Fix floating label with empty ion-datetime (#11552)
Fixes #11547
2017-05-08 14:59:10 +02:00
Ibby Hadeed
5fbca0ef7c docs(loading): mark params as optional
Closes #11452
2017-05-05 12:53:12 -04:00
JamesM
51ced8bec2 docs(virtual-scroll) fix typo in virtual scroll (#11533) 2017-05-05 12:16:07 -04:00
Amit Moryossef
26c653e43e feat(item): deprecate item-left / item-right attributes for item-start / item-end (#11125)
item-start and item-end make more sense for RTL

* refactor(item): replaced item-left with item-start
replaced item-right with item-end

* style(item): fix spacing

* fix(item): add backwards support for left/right in ng-content

* fix(item): deprecated old variables, not breaking change

* fix(scss): fix variable name

* fix(item): old attributes deprecated support
2017-05-05 11:53:32 -04:00
Manuel Mtz-Almeida
6d11499417 fix(view-controller): _dismissRole is a string 2017-05-05 01:55:50 +02:00
Manuel Mtz-Almeida
df8d1cc389 fix(tap-click): updates setupTapClick signature 2017-05-05 01:50:17 +02:00
Manu Mtz.-Almeida
8baa6474a4 perf(virtual-scroll): fast path for removing 2017-05-05 01:42:30 +02:00
Manuel Mtz-Almeida
88e5642f60 perf(virtual-list): relaxed restrictions for fast path 2017-05-05 01:40:58 +02:00
Manu MA
325cc5eea7 feat(wk): built-in support for WK (#11048) 2017-05-05 01:31:42 +02:00
Amit Moryossef
1d435bfd95 docs(snapshot): missing vital info (#11502)
* docs(snapshot): depends on java jdk as well

* docs(snapshot): only works on a retina mac

* docs(snapshot): move explanation out of setup

* docs(snapshot): only for mac
2017-05-05 01:29:08 +02:00
Amit Moryossef
5d562166fc refactor(): global refactoring to avoid IDE warnings and cleaner code (#11296)
* refactor(style): redundant measure units

* refactor(): change pointless boolean operation to cast

* refactor(): change redundant 'if' statement

* refactor(style): remove overwritten property value

* fix(spellcheck): wrong attribute value

* refactor(datetime-test): There should be a space between attribute and previous attribute

* refactor(import): import can be shortened

* refactor(semicolon): add missing semicolon

* docs(): fix incorrect parameter name

* refactor(): remove trailing unused parameters

* fix(menu): create mock change signature

* refactor(): remove redundant imports
all tests are passing

* refactor(style): 'var' used instead of 'let' or 'const'

* Revert "refactor(style): 'var' used instead of 'let' or 'const'"

This reverts commit 0369dbcaa8.

* refacrot(): remove unused code

* Revert "refactor(style): remove overwritten property value"

* revert(hammer): don't modify 3rd party files

* revert(activator): follow interface

* revert(activator): follow interface (cont)

* revert(activator): follow interface (cont)

* merge(master): fix conflicts

* revert(): change pointless boolean operation to cast

* revert(): text align is covered by a different PR

* revert(): add back unused parameters

* revert(): add back unused parameters
2017-05-05 01:11:00 +02:00
Manuel Mtz-Almeida
3b4b29e832 refactor(action-sheet): adds proper TS types 2017-05-05 01:01:49 +02:00
Manuel Mtz-Almeida
7f7c3cd514 Merge branch 'master' of github.com:driftyco/ionic; branch 'onDidDismiss-doc' of https://github.com/icedt89/ionic 2017-05-05 00:32:10 +02:00
Manuel Mtz-Almeida
de19dbe81b fix(virtual-list): virtualTrackBy reference 2017-05-05 00:24:33 +02:00
Michael Asimakopoulos
299a68bcdc fix(VirtualScroll): initialise differ with trackByFn (#11492)
* fix(VirtualScroll): initialise differ with trackByFn

* fix(VirtualScroll): DRY up differ initialization
2017-05-05 00:20:58 +02:00
AndreasGassmann
646d736d07 fix(navcontrollerbase): popToRoot should not remove root view 2017-05-05 00:17:30 +02:00
Manu MA
7aa07b05ee chore(app-scripts): update to 1.3.7 2017-05-04 22:05:57 +02:00
Manuel Mtz-Almeida
877829b933 chore(e2e): adds bonjour support 2017-05-04 22:05:57 +02:00
Jan Hafner
abf6bd1f68 - typified onDidDismiss and onWillDismiss signature to clearify supplied parameters 2017-05-04 21:23:19 +02:00
perry
d350ddc175 chore(CI): fixing API demo links 2017-05-03 12:20:32 -05:00
Manu Mtz.-Almeida
27a70fbdd8 chore(e2e): add domCount() perf tool 2017-05-03 14:51:07 +02:00
Szymon Stasik
59dd853f54 fix(select): firing events properly in popover interface 2017-05-03 12:27:13 +02:00
jgw96
19020108aa chore(package): update to ts 2.3.2 2017-05-02 14:11:29 -05:00
Daniel Sogl
04120b4719 chore(angular): update to latest Angular release (#11403)
* chore(package.json): update to latest Angular release

In Angular 4.1 are no breaking changes. The update should be no problem.

* Update package.json
2017-05-02 10:37:15 -05:00
Amit Moryossef
424b15aefd fix(rtl): add correct text-align (#11353)
* fix(rtl): add correct text-align

* feat(text-align): add mixin for backwards compatibility of variables

* fix(text-align): default null not empty string

* fix(text-align): remove default
2017-05-02 11:10:18 -04:00
Markus Wagner
6b42677460 docs(alert): add default value for enableBackdropDismiss
Closes #11370
2017-05-01 14:51:44 -04:00
Daniel Sogl
272893278d docs(): update Ionic 2 to Ionic
Closes #11409
It's just Ionic
2017-05-01 14:33:39 -04:00
Martijn Luyckx
e66c54958b docs(events): update demo in usage
Closes #11428
Make it clear that event.subscribe must be called in another method
2017-05-01 14:21:50 -04:00
Amit Moryossef
6add05e31a doc(haptic): fix typo (#11461) 2017-05-01 18:12:55 +02:00
Brandy Carney
b96e31bf30 test(app): update typography e2e test to work 2017-05-01 11:11:05 -04:00
Ibby Hadeed
d701799d8b refactor(nav-interfaces): remove unecessary semicolons (#11450) 2017-05-01 02:35:46 +02:00
Hayden Braxton
a04b577f1d feat(select): close select programatically
* implement ability to close select programmatically

* refactor(select): made changes based on PR feedback, namely assigning overlay to the overlay property at then end of the open function, applying DeMorgan's Law to a condition, and returning the overlay dismiss promise from the close function

* refactor(select): made additional changes to closing select component programmatically to resolve issue 11318
2017-05-01 02:34:38 +02:00
Manu Mtz.-Almeida
2afc5cfeda fix(module-loader): null references 2017-05-01 02:27:34 +02:00
Manu Mtz.-Almeida
45e71a67b5 Merge branch 'fix-preloading' of https://github.com/soumak77/ionic 2017-05-01 02:21:02 +02:00
Manu Mtz.-Almeida
ed66591db6 test(view-controller): adds isOverlay asserts 2017-05-01 02:19:35 +02:00
Brian Soumakian
19a3b6616e add unit tests 2017-04-30 15:24:09 -07:00
Brian Soumakian
bc4a1cab66 Merge branch 'driftyco/master' into fix-preloading 2017-04-30 14:30:13 -07:00
Amit Moryossef
665e44f633 fix(rtl): change item reorder offset for RTL (#11395) 2017-04-30 18:09:55 +02:00
Brandy Carney
588fad879f fix(label): add the $label-ios-text-color sass variables back
adds better descriptions for the sass variables in the other modes

resolves #11373
2017-04-28 18:18:57 -04:00
Brandy Carney
20b7ab7c57 chore(ionic): release 3.1.1 2017-04-28 16:29:28 -04:00
Manuel Mtz-Almeida
ec2a34db6e fix(select): incorrect assert condition 2017-04-28 20:47:27 +02:00
Brandy Carney
ee3d943116 chore(gulp): add a new task that opens the built prod e2e test 2017-04-28 13:55:24 -04:00
Justin Willis
aff2f08f9a test(datetime): add unit tests to make sure we return a string when we should (#11431)
* test(datetime): add e2e test with no format provided

* test(datetime): add test to check output is a string

* test(datetime): add e2e test with no format provided

* test(datetime): add test to check output is a string

* test(datetime): add unit tests to make sure we return a string when we should
2017-04-28 11:11:05 -05:00
Manuel Mtz-Almeida
539901da83 fix(toggle): initialize at ngAfterContentInit 2017-04-28 17:23:36 +02:00
Manuel Mtz-Almeida
7eb2f0b343 fix(menu): missing output events in interface
fixes #11383
2017-04-27 23:45:20 +02:00
Manuel Mtz-Almeida
239b559e6e fix(base-input): initialize on ngAfterContentInit 2017-04-27 23:44:12 +02:00
Manuel Mtz-Almeida
6677d80343 fix(datetime): ngModel always returns a string 2017-04-27 22:16:37 +02:00
Manuel Mtz-Almeida
4c8efc22e1 fix(select): object as value
fixes: #11413
2017-04-27 21:27:52 +02:00
Dan Bucholtz
b11442716b test(input): basic e2e test of a sample form to validate the next button/arrow goes to next input (#11362)
basic e2e test of a sample form to validate the next button/arrow goes to next input field
2017-04-27 13:31:59 -05:00
Manuel Mtz-Almeida
991cadbe85 test(select): disable unit test 2017-04-27 19:07:20 +02:00
Manuel Mtz-Almeida
af394b5ef6 fix(datetime): ionChange/ngModel returns the correct value 2017-04-27 19:06:59 +02:00
Manuel Mtz-Almeida
505d27ad34 fix(base-input): first ngModel update is not dispatched 2017-04-27 18:35:08 +02:00
Manuel Mtz-Almeida
d24c4f45fb fix(select): ionChange returns the value 2017-04-27 18:34:32 +02:00
Manuel Mtz-Almeida
9264a04343 fix(searchbar): adds setFocus() back
fixes #11397
2017-04-27 13:06:58 +02:00
Manuel Mtz-Almeida
c0276d5350 fix(select-popover): aot (private reference) 2017-04-27 12:56:46 +02:00
Manuel Mtz-Almeida
ee6c48102d fix(range): aot (wrong reference) 2017-04-27 12:56:25 +02:00
Brandy Carney
1331ce2499 chore(ionic): release 3.1.0 2017-04-26 12:37:17 -04:00
Manu Mtz.-Almeida
11a1c70c00 fix(searchbar): input is debounced 2017-04-26 17:35:13 +02:00
Manuel Mtz-Almeida
ba44780df0 fix(select): stores string | string[]
fixes #11337
2017-04-25 22:55:13 +02:00
Manuel Mtz-Almeida
3b32b8e648 fix(sliding-gesture): missing return value 2017-04-25 21:33:30 +02:00
Brandy Carney
7bcf5a05f7 fix(util): pass an option to default to right side in isRightSide 2017-04-25 13:54:37 -04:00
Manuel Mtz-Almeida
67af71bd9b fix(virtual-scroll): supports null records
fixes 11093
2017-04-24 23:50:26 +02:00
Myck
78d427dfcf fix(ion-slides): fast rerendering causes a crash (#11100)
* fix #10830

add condition, to check if slider exist before remove

* Update swiper.ts

* Fixes minor style issues
2017-04-24 23:33:19 +02:00
Brandy Carney
2357bb4749 docs(demos): update path to images in slides demo 2017-04-24 16:45:20 -04:00
Sina
e31a4da9ce feat(list): RTL support for list-header (#11328)
RTL fix (scss changes) for list-header for wp, ios and android platform
2017-04-24 12:01:22 -04:00
Sina
0ec71cd188 feat(label): fix positioning of floating label for rtl (#11324)
* floating label rtl fix

add rtl fix to floating label

* single block, not nesting

* fix(floating-label): wp and ios issue for rtl

problems with transform-origin with both windows and ios platform for
rtl and also wrong translate3d for rtl for windows platform

* style(floating-label): remove html, 2 space indent

remove reference of "html", just plain '[dir="rtl"]
indent 2 space instead of 4

* refactor(floating-label): remove duplicate rule

remove unnecessary duplicate rule
2017-04-24 11:50:47 -04:00
Manu Mtz.-Almeida
cc1eb02337 fix(navcontrollerbase): fixes crash when it is destroyed
fixes #11338
2017-04-24 15:19:34 +02:00
Manu Mtz.-Almeida
53113366e2 fix(menu): rtl support 2017-04-24 01:02:20 +02:00
Manu Mtz.-Almeida
51d507998c fix(menu): rtl support
Squashed commit of the following:

commit 57b59eb373
Merge: dcf80e416 f26c4b4fe
Author: Amit Moryossef <amitmoryossef@gmail.com>
Date:   Fri Apr 21 14:38:03 2017 +0300

    merge 'master'

commit dcf80e4161
Author: Amit Moryossef <amitmoryossef@gmail.com>
Date:   Fri Apr 21 01:24:40 2017 +0300

    tests(menu): add menu rtl tests

commit d65575b9ca
Author: Amit Moryossef <amitmoryossef@gmail.com>
Date:   Fri Apr 21 01:24:00 2017 +0300

    tests(mock): add platform to mockMenu

commit faad17ca32
Author: Amit Moryossef <amitmoryossef@gmail.com>
Date:   Fri Apr 21 01:23:01 2017 +0300

    fix(menu): update gesture only if it exists

commit e50eb184ec
Author: Amit Moryossef <amitmoryossef@gmail.com>
Date:   Fri Apr 21 00:55:50 2017 +0300

    refactor(menu): use magic get/set for side update

commit 89a1715661
Author: Amit Moryossef <amitmoryossef@gmail.com>
Date:   Thu Apr 20 19:31:49 2017 +0300

    revert(menu): revert removed dependency
    this PR is for a specific feature

commit 7c1263624c
Merge: 4465f82f6 860567288
Author: Amit Moryossef <amitmoryossef@gmail.com>
Date:   Thu Apr 20 19:26:10 2017 +0300

    Merge remote-tracking branch 'upstream/master' into menu

commit 4465f82f64
Author: Amit Moryossef <amitmoryossef@gmail.com>
Date:   Thu Apr 20 16:11:13 2017 +0300

    style(backdrop): fix code style

commit da4983a161
Author: Amit Moryossef <amitmoryossef@gmail.com>
Date:   Thu Apr 20 16:09:18 2017 +0300

    revert(renderer): back to renderer1

commit 80ab0941d6
Author: Amit Moryossef <amitmoryossef@gmail.com>
Date:   Sun Apr 16 11:34:34 2017 +0300

    fix(swipe-back): change side according to dir

commit f99cb9844f
Author: Amit Moryossef <amitmoryossef@gmail.com>
Date:   Sun Apr 16 11:26:49 2017 +0300

    feat(platform): add dir change event emitter

commit 90de5d1105
Author: Amit Moryossef <amitmoryossef@gmail.com>
Date:   Sat Apr 15 20:13:09 2017 +0300

    fix(menu): add gesture side real-time update
    migrated to Renderer2
2017-04-23 18:06:04 +02:00
Dan Bucholtz
f26c4b4feb refactor(index): move all imports and modules to a separate module.ts file. The motivation behind this change is those that wish to use the exports and create their own NgModules out of our components can do so without having an import explosion and including all of Ionic 2017-04-21 00:35:42 -05:00
Dan Bucholtz
873ea5f074 chore(themes): fix linting issue 2017-04-21 00:34:34 -05:00
Dan Bucholtz
59eb9a328d refactor(): restructure components to loosen coupling, move overlay-portal, click-block, menu-controller and other app-level functionality to app directory. The motivation for this change is logical grouping, decoupling components from each other, and improving the ability to drop more unused components from bundle 2017-04-20 23:21:25 -05:00
Manuel Mtz-Almeida
83509db55f fix(platform): resize events are dispatched inside zone 2017-04-20 17:46:17 +02:00
Manu Mtz.-Almeida
42709848db test(navcontroller): automatic lifecycle order test 2017-04-20 15:37:07 +02:00
Manu Mtz.-Almeida
8605672888 fix(navcontroller): filter null viewcontrollers 2017-04-20 14:36:58 +02:00
Manuel Mtz-Almeida
9732883165 refactor(item-options): simplify getSides() 2017-04-20 01:44:22 +02:00
Manuel Mtz-Almeida
4525f7526c refactor(modal): simplify component loading 2017-04-20 00:21:33 +02:00
Manuel Mtz-Almeida
a23d59c41d docs(modal): explain instance migration 2017-04-20 00:09:12 +02:00
Manuel Mtz-Almeida
95c06a53cc fix(navcontroller): exceptions inside lifecycle events are printed properly
fixes #10974
2017-04-19 23:12:50 +02:00
Perry Govier
a5a85def5a Merge pull request #11277 from driftyco/CI-Updates
chore(CI): Updating ionicframework homepage automatically on release
2017-04-19 11:34:23 -05:00
perry
afc9b36c5d chore(CI): Updating ionicframework homepage automatically on release 2017-04-19 11:16:42 -05:00
Manuel Mtz-Almeida
fd3c6baec7 fix(virtual-scroll): create views inside zone
fixes #10451
2017-04-19 15:55:12 +02:00
Manuel Mtz-Almeida
27cb360eac Merge branch 'sync-lazy-loading' 2017-04-18 23:43:15 +02:00
Manuel Mtz-Almeida
356ccd9e1c docs(nav): .catch() is not longer needed 2017-04-18 23:42:49 +02:00
Brandy Carney
1bf1a61864 docs(contributing): copy editing, removing abbreviated words 2017-04-18 16:33:34 -04:00
Dan Bucholtz
ff467db339 refactor(module-loader): fix tests, don't purge loaded module promise from the map
fix tests, don't purge loaded module promise from the map
2017-04-18 15:05:52 -05:00
Manuel Mtz-Almeida
f88823a30f fix(navcontroller): lazy loading is queued 2017-04-18 20:55:41 +02:00
Manuel Mtz-Almeida
5776f76ac9 fix(base-input): inputUpdated() is triggered when initialized 2017-04-18 20:52:17 +02:00
Brandy Carney
c7beb8c7ab docs(select): use hidden for dgeni 2017-04-18 12:41:09 -04:00
Brandy Carney
bfa2362882 fix(input): make sure isDisabled gets set to a boolean 2017-04-18 12:26:11 -04:00
Dan Bucholtz
36e71c6868 chore(dependencies): increment app-scripts version
increment app-scripts version
2017-04-18 11:14:39 -05:00
Brandy Carney
b3d68c95c5 fix(toggle): use correct toggle background color for iOS colors 2017-04-17 17:49:08 -04:00
Viktor Zhakhalov
745d808728 feat(select): add popover interface as an option 2017-04-17 16:41:50 -04:00
jgw96
314f7e5e1e test(platform): electron extends core 2017-04-17 15:21:08 -05:00
jgw96
7d0f9f58e6 style(platform): fix lint errors 2017-04-17 15:18:04 -05:00
North McCormick
c0df862398 feat(platform): add electron as a platform (#10868)
* feat(platform): add the handler electron platform ready

* + Added UA test

* (fix)platform: add core superset to electron definition
2017-04-17 15:15:33 -05:00
Brian Soumakian
e423e082b6 fix(tabs): invalid component comparison (#11084)
getComponent() returns a ViewController, so we must reference the
component property when checking against the active component
2017-04-17 11:46:11 -05:00
Daniel Sogl
786de79ad9 chore(package): update to latest Angular
* Update dependencies

Updated the dependencies to Angular 4.0.2 and app-scripts to 1.3..1

* Update package.json
2017-04-17 10:58:44 -05:00
John-Luke
ea6450e96a fix(item-options): improve rtl support (#11188)
* fix(item): Initial version of better rtl support

for sliding items

*Note:* need tests

* Update item-options.ts

* fix(item-options): fix changes requested
2017-04-17 11:32:04 -04:00
Brandy Carney
feeb2678a9 refactor(app): rename pull- to float- to avoid confusion with col 2017-04-14 13:10:47 -05:00
Brandy Carney
cf24057183 feat(app): add responsive utility attributes by screen size (#11228)
- moves breakpoint mixins to the ionic.mixins file
- adds responsive attributes for text alignment, transform, and
floating elements
- adds ability to turn these off so they don’t get added to the css
file using sass variables

references #10904
closes #10567
2017-04-14 12:47:59 -05:00
perry
f9012e18bb chore(CI): only update the docs on master 2017-04-14 12:29:38 -05:00
Amit Moryossef
dd0b29388e feat(rtl): add segment rtl support (#11215)
* fix(rtl): add segment rtl support

* fix(segments): remove border left for first item rtl
2017-04-14 09:54:30 -05:00
Amit Moryossef
6cd719f023 feat(rtl): add text-start and text-end (#11213) 2017-04-13 16:24:39 -05:00
Amit Moryossef
d9ac950f17 feat(rtl): add pull-left/right/start/end (#11214) 2017-04-13 15:53:15 -05:00
James Wilkinson
65c250be95 docs(slides): add params for slide functions (#10972)
* Update documentation for ion-slide

Reading the documentation and following along left me lost as to why the .lockNextSlides() was not working, this was because it required a boolean parameter that was not reflected in the documentation. This PR adds the JSDoc @param to show that the function requires a boolean parameter. Does not include a definition for the single parameters so this may cause issue in the theme of the docs template.

* Changing order of type definition

* Adding definitions to JSdoc for slider.
2017-04-13 15:14:31 -05:00
Joe Woodhouse
bc9accf215 docs(navigation): fix typo (#11192) 2017-04-13 14:48:33 -05:00
Brandy Carney
cb5707d467 feat(rtl): add start and end text-align for alert and picker
references #5035
2017-04-13 13:35:15 -05:00
Dan Bucholtz
35f394750f fix(navigation): legacy deep link config can have a defaultHistory entry that is a component in addi
legacy deep link config can have a defaultHistory entry that is a component in addition to a string
2017-04-13 10:39:06 -05:00
jgw96
4fa17a2f59 chore(templates): change to IonicPageModule 2017-04-12 13:52:56 -05:00
jgw96
902f5f7c1f chore(readme): make version agnostic 2017-04-10 10:30:23 -05:00
Manuel Mtz-Almeida
3c8edba0f5 fix(scroll): memory leak 2017-04-08 21:48:21 +02:00
Brian Soumakian
47f9ab3663 fix null/undefined references 2017-04-08 03:25:04 -07:00
Manuel Mtz-Almeida
614925d1db test(inputs): passes Zone tests 2017-04-07 22:02:58 +02:00
Manuel Mtz-Almeida
93d1d02613 perf(toggle): css containment 2017-04-07 21:06:36 +02:00
Manuel Mtz-Almeida
bda624f870 perf(toggle): events are not zoned 2017-04-07 21:05:21 +02:00
Manuel Mtz-Almeida
c792ab69ae refactor(toggle): checked/activated classes are applied to the host 2017-04-07 21:04:16 +02:00
Manuel Mtz-Almeida
17c0543a39 perf(toggle): toggle’s button is not activated 2017-04-07 19:46:57 +02:00
Brandy Carney
ea8213b39a docs(changelog): add http import to the steps to upgrade 2017-04-07 11:20:14 -04:00
Hsuan Lee
a09c6c374b docs(nav-push): Declare params variables (#11060)
* docs: statement params

* Update nav-push.ts
2017-04-07 10:47:16 -04:00
Geykel
a900c4e508 fix(templates) replace IonicModule with IonicPageModule (#11077) 2017-04-07 08:18:14 -05:00
Andrew Crites
0e4c1b726a docs(select): correctly document usage for selected elements (#10969)
The current documentation has `selected="true"` combined with `ngModel` binding, but this does not work. In fact, the demo on the page does not use `selected`. I removed this from the example code.

I also added a paragraph explaining how to set an option as selected.
2017-04-06 18:49:24 -04:00
Musa Haidari
df269bf7fb docs(platform): add missing parameter updateDocument in the doc (#11075) 2017-04-06 18:44:01 -04:00
Brandy Carney
5cb51efb55 feat(modal): add cssClass to modal options
Can pass one cssClass or multiple (same as out other overlays). Added a
cssClass to the basic test which adds 2 classes and styles the font
color of the content blue.

Closes #10020
2017-04-07 00:42:56 +02:00
Amit Moryossef
b07eb1afad docs(.github): add v3 for github documents (#10945)
* docs(issue_template): add ionic v3 for issue template

Now that v3 is officially in beta, this is needed for bug reports

* docs(pull_request_template): add ionic v3 for pull request template
2017-04-06 18:31:51 -04:00
Brandy Carney
b0dc856b1b feat(item): add sass variable to override avatar border radius
closes #10763
2017-04-06 18:04:16 -04:00
Manuel Mtz-Almeida
8e438634a2 chore(gulp): preserve color of app-scripts 2017-04-06 23:46:58 +02:00
Brandy Carney
38277a0087 chore(changelog): update steps to upgrade to jump to 3.0.1 2017-04-06 16:51:39 -04:00
Brandy Carney
054f43a67b chore(issue-template): add 3.x as a version option 2017-04-06 16:16:45 -04:00
Brandy Carney
385e6cf189 chore(ionic): release 3.0.1 2017-04-06 15:51:44 -04:00
Manuel Mtz-Almeida
6b92a5a8c2 fix(inputs): ionChange is fired after updating ngModel 2017-04-06 20:49:22 +02:00
Manuel Mtz-Almeida
59f9737d9b fix(tapclick): 300ms click delay 2017-04-06 18:05:47 +02:00
Manuel Mtz-Almeida
0967b63a51 fix(virtual-list): empty list crashes
fixes #11093
2017-04-06 18:05:20 +02:00
Manuel Mtz-Almeida
db37072c40 fix(scroll): scroll issues in UIWebView
fixes #11081
fixes #10976
fixes #10966
fixes #10936
fixes #11051
fixes #10889
2017-04-06 15:09:06 +02:00
perry
9316f73b81 chore(demos): send demos to content/docs/demos/src not …/src/src 2017-04-05 13:49:12 -05:00
Manuel Mtz-Almeida
55dfd254e5 Merge branch 'decorator-inheritance' 2017-04-05 20:35:16 +02:00
Musa Haidari
0a97cf2d5f docs(platform): removes extra word (typo) 2017-04-05 20:27:48 +02:00
Manuel Mtz-Almeida
94a33a74d2 Merge branch 'refactor-inputs' 2017-04-05 20:07:28 +02:00
Brandy Carney
b4c6cea760 docs(demos): remove custom css from label demo 2017-04-05 12:21:13 -04:00
Brandy Carney
0b440edc51 chore(ionic): release 3.0.0 2017-04-05 11:11:21 -04:00
Brandy Carney
e10f9b1a06 test(menu): update directory structure for menu/multiple 2017-04-05 10:26:36 -04:00
Brandy Carney
8586cc11ed fix(navigation): update the URL if there are no children navs 2017-04-04 17:01:26 -04:00
Ross Holdway
33be36d070 fix(slides): negative number indicates position starting at end (#10997)
* fix(slides): negative number indicates position starting at end

* refactor(slides): use var instead of let
2017-04-02 17:30:18 +02:00
JamesM
a0554573de docs(avatar): fix typo
'avatars' rather than 'avatar's' for plural
2017-04-02 15:05:05 +02:00
Manuel Mtz-Almeida
fa7ea0c617 feat(split-pane): adds enabled input
fixes #10949
2017-04-02 15:03:14 +02:00
Manuel Mtz-Almeida
c72598a810 docs(content): add docs about content.resize() 2017-04-02 15:03:14 +02:00
Vlad Topala
4ac8ffb6ed fix(datetime): emit ioncancel event on backdrop click for datetime (#10532)
* fix(datetime): emit ioncancel event on backdrop click for datetime component

* fix(datetime): emit ioncancel event on backdrop click for datetime component - fix for all picker components instead of specifically for datetime
2017-04-01 21:48:19 +02:00
Manuel Mtz-Almeida
979ca63a6a feat(split-pane): sizing via scss variables
fixes #10893
2017-04-01 21:42:18 +02:00
Manuel Mtz-Almeida
57f3f9742b fix(split-pane): rtf support
fixes #10903
2017-04-01 21:28:11 +02:00
Adam Bradley
74f90e6d57 chore(error): update ionic error handler 2017-03-31 21:45:20 -05:00
Perry Govier
44f36c4509 chore(CI): upgrade to Circle CI v2 and leverage multiple containers for demo builds (#10991)
* trying Circle CI v2

* paths are fun

* seeing how long a demos build takes

* Batching Demo builds

* testing demo builds on CI2

* batches count from 0

* ok, looks good. preparing for master branch

* forgot `production=true` flag. let’s test that quick.

* forgot to save the file

* making sure that docs are still copied over to ionic-site in the deploy phase

* getting ready for the PR again
2017-03-30 21:32:29 -05:00
Brandy Carney
eb468d2530 test(e2e): fix broken e2e tests for snapshot
removed the e2e.ts files from 3 split pane tests so they won’t show up
in snapshot
2017-03-30 11:09:55 -04:00
Manuel Mtz-Almeida
156b982510 fix(segment): fix disabled segment 2017-03-29 20:28:25 +02:00
Manuel Mtz-Almeida
84e84d3280 Misc 6 2017-03-29 19:32:26 +02:00
Manuel Mtz-Almeida
8eef99d82f Misc 5 2017-03-29 19:14:15 +02:00
Manuel Mtz-Almeida
404d977c81 fix(nav-controller): remove duplicated swipeBackEnabled input 2017-03-29 18:51:54 +02:00
Manuel Mtz-Almeida
682ce49592 fix(virtual-list): updates to angular 4 2017-03-29 18:37:12 +02:00
Manuel Mtz-Almeida
0cd9a373e7 Merge branch 'fix-autoenable-scroll-listener' 2017-03-29 18:33:09 +02:00
perry
41e34fc4ce chore(docs): moving docs from /docs/v2 to /docs 2017-03-29 11:00:52 -05:00
Manuel Mtz-Almeida
d9a7652912 fix(content): scroll listener is auto enabled
fixes #10938
2017-03-29 17:38:41 +02:00
Manuel Mtz-Almeida
515de26a8b Misc 4 2017-03-29 16:47:12 +02:00
Manuel Mtz-Almeida
c9851442c6 Misc 3 2017-03-29 14:11:19 +02:00
Manuel Mtz-Almeida
47e1cdce9d misc changes 3 2017-03-28 21:51:01 +02:00
Manuel Mtz-Almeida
6360d41f6a Misc changes 2 2017-03-28 21:37:11 +02:00
Manuel Mtz-Almeida
c19615ed11 Rever input refactor 2017-03-28 21:26:01 +02:00
Manuel Mtz-Almeida
b5c7ab2e98 misc changes 2017-03-28 21:21:37 +02:00
Manuel Mtz-Almeida
3d569eb88a test(select/segment): adds unit test for select and segment 2017-03-28 17:57:49 +02:00
Manuel Mtz-Almeida
9be5751eeb refactor(select): using BaseInput correctly + unit tests 2017-03-28 17:57:49 +02:00
Manu Mtz.-Almeida
9a4d81b329 refactor(all): consistent inputs
fixes #8578
2017-03-28 17:57:49 +02:00
Dan Bucholtz
54acc74fdb refactor(packaging): points to es5 code with es2015 import/header, points to umd cod
points to es5 code with es2015 import/header,  points to umd code,  points to
pure es2015 code
2017-03-27 16:42:01 -05:00
Max Lynch
3819740998 Update ts.tmpl 2017-03-27 16:18:12 -05:00
Brandy Carney
e8ba41aac2 docs(grid): update breakpoints map to begin with 0
closes driftcyo/ionic-site#1021
2017-03-27 16:59:36 -04:00
Brandy Carney
43de89f096 chore(dependencies): remove unused dependencies, update app scripts 2017-03-27 16:03:36 -04:00
Brandy Carney
9fd231a04c refactor(grid): add the css from the old grid
edit the existing grid tests to use latest attributes

fixes #10912
2017-03-27 14:37:46 -04:00
Brandy Carney
ccc3696b9a chore(dependencies): add angular animations 2017-03-27 13:38:29 -04:00
Brandy Carney
36b7d338f6 docs(navigation): move deep linker docs to ionic page 2017-03-27 13:33:47 -04:00
Brandy Carney
5974dcea9e docs(demos): update paths for fonts and stylesheet 2017-03-27 13:33:47 -04:00
Brandy Carney
9e4a5cb496 chore(package): update sassdoc dependency
closes #10774
2017-03-27 13:33:47 -04:00
jgw96
d403638d71 chore(package): update to angular 4 final 2017-03-24 12:12:00 -05:00
perry
93cfa17638 chore(demos): make sure version file is generated before demo gen 2017-03-23 18:06:07 -05:00
Manu Mtz.-Almeida
7272b5a42a refactor(all): color/mode inputs are not longer needed 2017-03-23 23:32:47 +01:00
Manu Mtz.-Almeida
7cee7b0eaf fix(content): bounding does not make sense in desktop 2017-03-23 23:13:50 +01:00
Manuel Mtz-Almeida
f20dda9da7 chore(virtual-list): fixes typescript types 2017-03-23 23:10:50 +01:00
Manuel Mtz-Almeida
ccb49f36d6 fix(virtual-list): several issues 2017-03-23 23:02:11 +01:00
Brandy Carney
8ac2ff485a test(img): remove extra app.module.ts file 2017-03-23 15:49:38 -04:00
Brandy Carney
63fd63e72e Merge branch 'master' into 3.0 2017-03-23 15:36:40 -04:00
Brandy Carney
a252a94136 refactor(slides): remove deprecated input, outputs, and function
BREAKING CHANGES

Slides input `options` has been removed. Please use the input
properties instead.

Slide event `ionWillChange` has been removed, please use
`ionSlideWillChange` instead.

Slide event `ionDidChange` has been removed, please use
`ionSlideDidChange` instead.

Slide event `ionDrag` has been removed, please use `ionSlideDrag`
instead.

Slides `getSlider()` method has been removed, please use the instance
of ion-slides.
2017-03-23 14:50:53 -04:00
Brandy Carney
19c36deea3 refactor(grid): remove the old grid system
BREAKING CHANGES:

Removed the deprecated (old) grid. See the blog post for more
information including steps to migrate:
http://blog.ionic.io/build-awesome-desktop-apps-with-ionics-new-responsi
ve-grid/
2017-03-23 14:42:19 -04:00
Brandy Carney
2827275da6 refactor(typography): remove the native element selectors
BREAKING CHANGES:

The following selectors to style the text color of the native text
elements have been removed:

```
h1[color], h2[color], h3[color], h4[color], h5[color], h6[color],
a[color]:not([ion-button]):not([ion-item]):not([ion-fab]), p[color],
span[color], b[color], i[color], strong[color], em[color],
small[color], sub[color], sup[color]
```

These have been throwing a deprecation warning since rc.3 but still
working. They are officially gone and therefore these elements will not
get the color unless the `ion-text` attribute is added. Please see the
documentation.
2017-03-23 13:02:54 -04:00
Manu Mtz.-Almeida
58b57c0ca7 fix(infinite-scroll): regression in #8099
references #10889
2017-03-23 17:54:14 +01:00
Manu Mtz.-Almeida
a3ead3d7c8 test(alert): adds usage of button.cssClass
references #10887
2017-03-23 17:38:56 +01:00
Manu Mtz.-Almeida
c78e0d21ec Merge branch 'master' of https://github.com/FdezRomero/ionic 2017-03-23 17:37:44 +01:00
jgw96
af6b54cda6 chore(templates): clean up generator templates 2017-03-23 11:09:25 -05:00
Daniel Imhoff
d04650c130 chore(templates): update component templates 2017-03-23 10:59:06 -05:00
mhartington
4e4e06898a docs(alert): fix input table 2017-03-23 08:44:10 -05:00
Rodrigo Fernández
4fbcda7440 fix(alert): add missing cssClass property for buttons
Commit 46fe1ff53c defined the `AlertButton` interface for the `buttons` array, but it's missing the `cssClass` property as described in the **Button options** section of the docs: http://ionicframework.com/docs/v2/api/components/alert/AlertController/#advanced
2017-03-23 12:52:15 +01:00
Brandy Carney
e07aad460d chore(ionic): release 2.3.0 2017-03-22 15:15:56 -04:00
Brandy Carney
d3e6b36a28 test(img): fix source path for the img 2017-03-22 15:05:42 -04:00
jgw96
4b9f673594 chore(templates): entryComponents are not needed with code splitting 2017-03-22 13:39:55 -05:00
jgw96
09b01baa4e chore(templates): clean up templates for new generators 2017-03-22 13:37:40 -05:00
Dan Bucholtz
a63f760786 chore(e2e): remove experimental deeplink arg, add deepLinksDir 2017-03-21 21:19:31 -05:00
Dan Bucholtz
e0b09615bd test(range): fix range/basic test 2017-03-21 21:19:03 -05:00
Dan Bucholtz
f88f588d2d test(img): img/basic test export MyImg component from NgModule 2017-03-21 16:56:15 -05:00
Manu Mtz.-Almeida
99142f8ebe fix(datetime): fixes date time in 3.0 + perf improvements 2017-03-21 19:47:52 +01:00
Dan Bucholtz
02f8f11e74 test(e2e): fix broken tests
fix broken tests
2017-03-21 12:10:03 -05:00
Dan Bucholtz
daab927fbd chore(readme): update readme for e2e tests with concurrency and dev flags 2017-03-21 12:09:32 -05:00
Dan Bucholtz
945cd8ff52 test(e2e): restructure e2e to tests to import modules
restructure e2e to tests to import modules
2017-03-21 10:49:11 -05:00
Manu Mtz.-Almeida
e1617c1433 chore(build): fix early return 2017-03-21 16:32:51 +01:00
Brandy Carney
a2a77f06d1 test(datetime): fix failing karma test 2017-03-21 10:12:07 -04:00
Brandy Carney
042f698555 Merge branch 'master' into 3.0
# Conflicts:
#	src/components/action-sheet/test/basic/pages/page-one/page-one.ts
#	src/components/alert/alert.ts
#	src/components/content/content.ts
#	src/components/datetime/datetime.ts
#	src/components/datetime/test/datetime.spec.ts
#	src/components/loading/loading.ts
#	src/components/modal/test/basic/app.module.ts
#	src/components/picker/picker-component.ts
#	src/components/toast/toast.ts
#	src/components/toolbar/toolbar.ios.scss
#	src/components/toolbar/toolbar.md.scss
#	src/components/toolbar/toolbar.wp.scss
#	src/components/virtual-scroll/test/basic/app.module.ts
#	src/util/util.ts
2017-03-20 18:07:38 -04:00
Brandy Carney
5c612aa33e chore(zone): update zone dependency to 0.8.4 2017-03-20 15:38:22 -04:00
jgw96
b56b0e8105 chore(templates): change from deeplink to IonicPage 2017-03-20 14:04:51 -05:00
Brandy Carney
0ccd96e8b5 fix(item-sliding): add forwardRef for item options 2017-03-20 13:06:29 -04:00
Dan Bucholtz
af16846568 chore(e2e): rename to to standardize on format
rename  to  to standardize on format
2017-03-20 11:57:26 -05:00
Dan Bucholtz
d5ba56f144 test(item): item/sliding test structure updated
item/sliding test structure updated
2017-03-20 11:54:34 -05:00
Dan Bucholtz
67ddafca25 chore(dependencies): update to angular 4 rc 5
update to angular 4 rc 5
2017-03-20 11:38:36 -05:00
Dan Bucholtz
b10ec68087 refactor(deep-linking): rename to
rename  to
2017-03-20 10:42:00 -05:00
Dan Bucholtz
52081a471a refactor(deep-linking): change to
change  to
2017-03-20 10:14:36 -05:00
Brandy Carney
5c2aa2adaf test(toolbar): add missing main.ts from toolbar test 2017-03-17 12:07:59 -04:00
Brandy Carney
fbed3c5b04 chore(e2e): catch errors from app-scripts to continue
also return empty array so that if the exact folder isn’t matched it
won’t continue to filter and run tests. For example, if you pass
`--f=toolbar/color` it will error because that doesn't exist, but still
tries to run `toolbar/colors`.
2017-03-17 11:06:46 -04:00
Daniel Imhoff
da8ce042b6 chore(templates): directive template 2017-03-16 15:44:33 -05:00
Brandy Carney
960e529b43 chore(demos): remove unused code and add concurrency arg 2017-03-16 15:56:43 -04:00
Brandy Carney
ae56039ba1 chore(e2e): log an error if the test doesn't exist, add concurrency arg
- If the e2e test doesn’t exist then throw an error
- Don’t log anything if no tests are being built
- Add concurrency arg to change the number of tests being ran at once
2017-03-16 15:56:43 -04:00
mhartington
fa24e4052a docs(): hide icon ngmodule 2017-03-16 14:08:06 -04:00
mhartington
546003037e docs(): hide modules from docs 2017-03-16 11:49:46 -04:00
Brandy Carney
25dd7b5fce refactor(components): import button module on picker 2017-03-16 11:38:08 -04:00
Brandy Carney
f7bcc4603c refactor(components): add icon module and missing imports 2017-03-16 11:30:54 -04:00
Daniel Imhoff
06b388bb68 chore(templates): update tabs templates for 3.0 2017-03-15 15:15:41 -05:00
Daniel Imhoff
305848274d chore(templates): wip: update templates for 3.0 2017-03-15 15:09:46 -05:00
Brandy Carney
ddcd3cf1c5 refactor(components): convert components to separate modules 2017-03-15 16:07:06 -04:00
jgw96
5d668036e6 chore(templates): modify tabs template to code-split 2017-03-15 14:54:17 -05:00
Dan Bucholtz
d93ca82666 refactor(deep-linking): fix url when navigating back to url w/ params 2017-03-14 16:08:15 -05:00
Dan Bucholtz
0ae638a6a0 refactor(picker): if opts are null, initialize to empty object 2017-03-14 16:08:15 -05:00
Dan Bucholtz
e5f7812798 test(modal): fix broken unit tests 2017-03-14 16:08:15 -05:00
Dan Bucholtz
06246df3ce chore(build): fix to ensure all unit tests are run independent of state of dist directory 2017-03-14 16:08:15 -05:00
perry
396f891f33 chore(docs): updating dgeni typescript package 2017-03-14 14:50:31 -05:00
Brandy Carney
4354fc212e docs(deep-linker): copy editing 2017-03-13 17:59:14 -04:00
Brandy Carney
ddb8ef23e0 docs(deep-linker): update deep linker docs with new decorator 2017-03-13 17:37:18 -04:00
Dan Bucholtz
0964c850d4 test(e2e): refactor e2e to use deeplink decorator, lazy load more pages 2017-03-11 00:15:38 -06:00
Dan Bucholtz
3118bbbd1b chore(dependencies): have app-scripts use nightly for now
have app-scripts use nightly for now
2017-03-10 11:00:56 -06:00
Dan Bucholtz
f84d38346e refactor(ng-module-loader): simplify the ng-module-loader internals
simplify the ng-module-loader internals
2017-03-09 15:44:12 -06:00
Brandy Carney
eaadea7569 chore(navigation): update NavController and NavPush types 2017-03-09 15:36:59 -05:00
Dan Bucholtz
c90fcb07e7 chore(e2e): add --dev option to e2e.prod to speed up builds for faster but less thorough verification 2017-03-09 12:13:36 -06:00
Dan Bucholtz
a7ea189fa3 chore(navigation): remove private, old property on interface
remove private, old property on interface
2017-03-09 10:46:30 -06:00
Brandy Carney
c7ad3ce4bf feat(module-loader): run outside of angular and in requestIdleCallback 2017-03-08 17:07:53 -05:00
Brandy Carney
7dfe061a7c test(split-pane): fix ionic import path and structure 2017-03-08 10:41:05 -05:00
jgw96
8c75c214d7 chore(util): add requestIdleCallback polyfill 2017-03-07 16:12:02 -06:00
Brandy Carney
5a4f8b9b5d feat(module-loader): preload modules based on priority 2017-03-07 16:15:15 -05:00
Manu Mtz.-Almeida
f43444bf51 Merge branch '3.0' of github.com:driftyco/ionic into 3.0 2017-03-07 21:28:59 +01:00
Manu Mtz.-Almeida
37c198414d Merge branch 'master' into 3.0 2017-03-07 21:28:18 +01:00
jgw96
5d178534c2 refactor(http): remove HttpModule 2017-03-07 13:55:38 -06:00
jgw96
4852b4a3a4 chore(angular): fix deprecation warnings and breaking changes 2017-03-07 12:36:19 -06:00
jgw96
d25943f27f chore(angular): update to angular 4.0.0-rc.2 2017-03-07 12:35:15 -06:00
Brandy Carney
bdbd521b13 feat(module-loader): add preloadModules config option, set to false
set nav/basic to preload modules
2017-03-07 12:04:04 -05:00
Brandy Carney
759fe607c8 test(module-loader): add test for two modules loaded at once 2017-03-07 10:46:10 -05:00
Brandy Carney
17359b7b8c feat(module-loader): add caching for ngModuleLoader on load 2017-03-06 18:23:47 -05:00
Daniel Imhoff
c6343951ae test(e2e): modal/basic: lazy load modals 2017-03-06 17:13:11 -06:00
Daniel Imhoff
e8f6e0134e test(e2e): menu/basic: lazy load modal 2017-03-06 16:52:36 -06:00
Brandy Carney
a1a762c0e6 test(module-loader): add unit tests for module-loader load 2017-03-06 17:16:25 -05:00
Daniel Imhoff
999f33a5b9 test(e2e): tabs/colors 2017-03-06 15:16:25 -06:00
Daniel Imhoff
7c713e1a62 test(e2e): tabs/basic 2017-03-06 15:06:35 -06:00
Daniel Imhoff
5b91317d39 test(e2e): tabs/badges 2017-03-06 12:44:48 -06:00
Daniel Imhoff
6d8490e393 test(e2e): searchbar/nav 2017-03-06 12:31:23 -06:00
jgw96
2143f7198e style(lint): fix linter errors 2017-03-06 11:23:42 -06:00
jgw96
f2894be061 test(tabs): update final tabs test 2017-03-06 11:18:55 -06:00
jgw96
1105bcda86 test(toolbar): update toolbar tests 2017-03-06 11:15:05 -06:00
mhartington
33f2f09c5e test(tabs, segments, select, searchbar): update test to be lazy loaded 2017-03-06 12:11:00 -05:00
jgw96
a2e469d408 test(e2e): update toolbar, typography and virtual scroll 2017-03-06 10:03:26 -06:00
Daniel Imhoff
656ea66632 test(e2e): radio/basic 2017-03-03 17:07:19 -06:00
Daniel Imhoff
7b5bb940c9 test(e2e): popover/basic 2017-03-03 16:58:05 -06:00
Dan Bucholtz
8674aaf419 style(linting): fix validate issues
fix validate issues
2017-03-03 16:46:12 -06:00
Daniel Imhoff
ced9bd2bb8 test(e2e): picker/basic 2017-03-03 16:41:39 -06:00
Daniel Imhoff
3dfaa4c019 test(e2e): nav/child-navs 2017-03-03 16:27:35 -06:00
Daniel Imhoff
1fc1305dd5 test(e2e): modal/basic 2017-03-03 16:06:25 -06:00
jgw96
90f9650d7a style(lint): fix linter errors 2017-03-03 16:02:24 -06:00
jgw96
00d128f87f Merge branch '3.0' of https://github.com/driftyco/ionic into 3.0 2017-03-03 15:58:10 -06:00
jgw96
040981f585 test(e2e): update range, searchbar, toast 2017-03-03 15:57:28 -06:00
Dan Bucholtz
b47848ceb2 feat(navigation): add optional priority to deep link config
add optional priority to deep link config
2017-03-03 15:47:42 -06:00
Dan Bucholtz
3e70856c0b feat(navigation): @DeepLink decorator
@DeepLink decorator
2017-03-03 15:36:05 -06:00
mhartington
b7df0d8efb test(list, loading): update test for lazyloading 2017-03-03 16:31:00 -05:00
Dan Bucholtz
b12186bad1 feature(popover): support lazy loading of popover pages 2017-03-03 15:13:15 -06:00
Dan Bucholtz
3ebc3656c1 feature(modal): support lazy loading of modal pages 2017-03-03 15:13:15 -06:00
Dan Bucholtz
3b43a872a6 docs(nav): move a template to separate file in nav/basic 2017-03-03 15:13:15 -06:00
Dan Bucholtz
25f942e70f docs(e2e): lazy load modals in action-sheet/basic, alert/basic, app/cordova 2017-03-03 15:13:15 -06:00
Daniel Imhoff
a43386a405 test(e2e): menu/basic 2017-03-03 14:48:03 -06:00
Brandy Carney
552a88c73b chore(module): set up preloading 2017-03-03 14:18:20 -05:00
Daniel Imhoff
3c4ed81845 test(e2e) loading/tabs 2017-03-03 12:00:55 -06:00
jgw96
73b7a00771 test(icon): remove duplicate main.ts 2017-03-03 10:30:30 -06:00
Brandy Carney
19ec0caebb style(lint): fix linter errors 2017-03-03 11:25:30 -05:00
Brandy Carney
719f6b194e test(icon): refactor to modular structure 2017-03-03 11:13:14 -05:00
Dan Bucholtz
beabe32cf5 feat(util): system.js ng-module loader
system.js ng-module loader
2017-03-02 15:10:27 -06:00
Dan Bucholtz
1dede2305f refactor(util): update mocks
update mocks
2017-03-02 15:09:43 -06:00
Dan Bucholtz
145fcd24f2 refactor(transitions): remove transition registry
remove transition registry
2017-03-02 15:09:17 -06:00
Dan Bucholtz
ca55907e46 refactor(tap-click): move to constants from enum
move to constants from enum
2017-03-02 15:08:07 -06:00
Dan Bucholtz
15eaad6044 refactor(platform): move to constants from enum, fix type definition
move to constants from enum, fix type definition
2017-03-02 15:07:34 -06:00
Dan Bucholtz
72c2b623e5 refactor(index): update import/exports for component refactors, add DeepLinkModule
update import/exports for component refactors, add DeepLinkModule
2017-03-02 15:06:44 -06:00
Dan Bucholtz
96657535f1 refactor(navigation): async component loading (aka lazy loading)
async component loading (aka lazy loading)
2017-03-02 15:05:35 -06:00
Dan Bucholtz
e40590d68c refactor(gestures): move to constants from enum
move to constants from enum
2017-03-02 15:04:34 -06:00
Dan Bucholtz
56e36c0754 refactor(virtual-scroll): restructure virtual-scroll component to separate modules
restructure virtual-scroll component to separate modules
2017-03-02 15:03:44 -06:00
Dan Bucholtz
49723c3b81 refactor(toolbar): restructure toolbar component to separate modules
restructure toolbar component to separate modules
2017-03-02 15:03:13 -06:00
Dan Bucholtz
5364d00671 refactor(toggle): move to constants from enum
move to constants from enum
2017-03-02 15:02:43 -06:00
Dan Bucholtz
9f71fde276 refactor(toast): restructure toast component to separate modules
restructure toast component to separate modules
2017-03-02 15:02:07 -06:00
Dan Bucholtz
a26b054a3f refactor(tabs): support async loading
support async loading
2017-03-02 15:01:42 -06:00
Dan Bucholtz
d5149313e6 refactor(show-hide-when): restructure show-when, hide-when component to separate modules
restructure show-when, hide-when component to separate modules
2017-03-02 15:01:02 -06:00
Dan Bucholtz
2ef6d0ca75 refactor(select): pass config to overlay
pass config to overlay
2017-03-02 15:00:16 -06:00
Dan Bucholtz
7880d44c07 refactor(refresher): move to constants from enum
move to constants from enum
2017-03-02 14:59:26 -06:00
Dan Bucholtz
ed2e76b607 refactor(segment): restructure segment component to separate modules
restructure segment component to separate modules
2017-03-02 14:58:45 -06:00
Dan Bucholtz
07ffddca9a refactor(range): move to constants from enum
move to constants from enum
2017-03-02 14:58:09 -06:00
Dan Bucholtz
51f4c19d77 refactor(popover): restructure popover component to separate modules
restructure popover component to separate modules
2017-03-02 14:57:09 -06:00
Dan Bucholtz
1786f1b897 refactor(picker): restructure picker component to separate modules
restructure picker component to separate modules
2017-03-02 14:56:39 -06:00
Dan Bucholtz
e001967fa8 refactor(navbar): restructure navbar component to use separate toolbar module
restructure navbar component to use separate toolbar module
2017-03-02 14:56:07 -06:00
Dan Bucholtz
68f3c6c0c8 refactor(nav): restructure nav component to separate modules, support async component loading
restructure nav component to separate modules, support async component loading
2017-03-02 14:55:10 -06:00
Dan Bucholtz
d896682799 refactor(modal): restructure modal component to separate modules
restructure modal component to separate modules
2017-03-02 14:53:49 -06:00
Dan Bucholtz
7ad8d47aea refactor(menu): move from enum to constants
move from enum to constants
2017-03-02 14:53:10 -06:00
Dan Bucholtz
5b299a000f refactor(loading): restructure loading component to separate modules
restructure loading component to separate modules
2017-03-02 14:52:28 -06:00
Dan Bucholtz
b0986f5d6d refactor(item): restructure item component to separate modules
restructure item component to separate modules
2017-03-02 14:50:52 -06:00
Dan Bucholtz
ece5047b6c refactor(input): restructure input component to separate modules
restructure input component to separate modules
2017-03-02 14:50:07 -06:00
Dan Bucholtz
a7ce20f990 refactor(fab): restructure fab component to separate modules
restructure fab component to separate modules
2017-03-02 14:48:16 -06:00
Dan Bucholtz
caf2f55a77 refactor(datetime): move datetime controller to separate module
move datetime controller to separate module
2017-03-02 14:47:17 -06:00
Dan Bucholtz
4495663cea refactor(content): refactor content to remove hard reference to tabs
refactor content to remove hard reference to tabs
2017-03-02 14:45:50 -06:00
Dan Bucholtz
5c61cb23ac refactor(card): restructure card component to separate modules
restructure card component to separate modules
2017-03-02 14:44:31 -06:00
Dan Bucholtz
6d787553a3 refactor(app): restructure app component to separate modules, move from enum to constants
restructure app component to separate modules, move from enum to constants
2017-03-02 14:43:46 -06:00
Dan Bucholtz
702330478c refactor(alert): restructure alert, move controller to separate module
restructure alert, move controller to separate module
2017-03-02 14:40:09 -06:00
Dan Bucholtz
42a0c7fa61 refactor(action-sheet): restructure action-sheet, move controller to separate module
restructure action-sheet, move controller to separate module
2017-03-02 14:39:19 -06:00
Dan Bucholtz
c144580a49 chore(dependencies): update dependencies for build process
update dependencies for build process
2017-03-02 14:38:02 -06:00
Dan Bucholtz
be79382386 test(e2e): refactor e2e tests to modular structure and utilize lazy loading where possible
refactor e2e tests to modular structure and utilize lazy loading where possible
2017-03-02 14:37:01 -06:00
Dan Bucholtz
0d32e5e791 chore(gulp): updates to build process to use app-scripts for watch/build
updates to build process to use app-scripts for watch/build
2017-03-02 14:28:15 -06:00
Dan Bucholtz
0fdff89b67 docs(demos): update api demos to modular structure
update api demos to modular structure
2017-03-02 14:26:30 -06:00
Dan Bucholtz
7281f020f4 chore(tsconfig): add target of es2015, systemjs to types 2017-03-02 14:15:54 -06:00
1883 changed files with 35013 additions and 24081 deletions

View File

@@ -5,7 +5,7 @@ Thanks for your interest in contributing to the Ionic Framework! :tada:
## Contributing Etiquette
Please see our [Contributor Code of Conduct](https://github.com/driftyco/ionic/blob/master/CODE_OF_CONDUCT.md) for information on our rules of conduct.
Please see our [Contributor Code of Conduct](https://github.com/ionic-team/ionic/blob/master/CODE_OF_CONDUCT.md) for information on our rules of conduct.
## Creating an Issue
@@ -14,20 +14,20 @@ Please see our [Contributor Code of Conduct](https://github.com/driftyco/ionic/b
* It is required that you clearly describe the steps necessary to reproduce the issue you are running into. Although we would love to help our users as much as possible, diagnosing issues without clear reproduction steps is extremely time-consuming and simply not sustainable.
* The issue list of this repo is exclusively for bug reports and feature requests. Non-conforming issues will be closed immediately.
* The issue list of this repository is exclusively for bug reports and feature requests. Non-conforming issues will be closed immediately.
* Issues with no clear repro steps will not be triaged. If an issue labeled "need reply" receives no further input from the issue author for more than 5 days, it will be closed.
* Issues with no clear steps to reproduce will not be triaged. If an issue is labeled with "needs reply" and receives no further replies from the author of the issue for more than 5 days, it will be closed.
* If you think you have found a bug, or have a new feature idea, please start by making sure it hasn't already been [reported](https://github.com/driftyco/ionic/issues?utf8=%E2%9C%93&q=is%3Aissue). You can search through existing issues to see if there is a similar one reported. Include closed issues as it may have been closed with a solution.
* If you think you have found a bug, or have a new feature idea, please start by making sure it hasn't already been [reported](https://github.com/ionic-team/ionic/issues?utf8=%E2%9C%93&q=is%3Aissue). You can search through existing issues to see if there is a similar one reported. Include closed issues as it may have been closed with a solution.
* Next, [create a new issue](https://github.com/driftyco/ionic/issues/new) that thoroughly explains the problem. Please fill out the populated issue form before submitting the issue.
* Next, [create a new issue](https://github.com/ionic-team/ionic/issues/new) that thoroughly explains the problem. Please fill out the populated issue form before submitting the issue.
## Creating a Pull Request
* We appreciate you taking the time to contribute! Before submitting a pull request, we ask that you please [create an issue](#creating-an-issue) that explains the bug or feature request and let us know that you plan on creating a pull request for it. If an issue already exists, please comment on that issue letting us know you would like to submit a pull request for it. This helps us to keep track of the pull request and make sure there isn't duplicated effort.
* Looking for an issue to fix? Make sure to look through our issues with the [help wanted](https://github.com/driftyco/ionic/issues?q=is%3Aopen+is%3Aissue+label%3A%22help+wanted%22) label!
* Looking for an issue to fix? Make sure to look through our issues with the [help wanted](https://github.com/ionic-team/ionic/issues?q=is%3Aopen+is%3Aissue+label%3A%22help+wanted%22) label!
### Setup
@@ -85,9 +85,9 @@ Please see our [Contributor Code of Conduct](https://github.com/driftyco/ionic/b
```
where `@name` is the Class name, `@description` is the description displayed on the documentation page, `@see` links to any related pages, and `@demo` links to the API demo located in the `demos` folder.
2. In order to run API documentation locally, you will need to clone the `ionic-site` repo as a sibling to the `ionic` repo and then run it: https://github.com/driftyco/ionic-site#local-build
2. In order to run API documentation locally, you will need to clone the `ionic-site` repo as a sibling to the `ionic` repo and then run it: https://github.com/ionic-team/ionic-site#local-build
3. Then, run `gulp docs` in the `ionic` repo every time you make a change and the site will update.
4. If the change affects the component documentation, create an issue on the `ionic-site` repo: https://github.com/driftyco/ionic-site/issues
4. If the change affects the component documentation, create an issue on the `ionic-site` repo: https://github.com/ionic-team/ionic-site/issues
#### Adding Demos
@@ -106,12 +106,12 @@ Please see our [Contributor Code of Conduct](https://github.com/driftyco/ionic/b
```
3. Run `gulp watch.demos` to watch for changes to the demo
4. Navigate to `http://localhost:8000/dist/demos/` and then to your component's demo to view it.
5. If the change affects the component demos, create an issue on the `ionic-site` repo: https://github.com/driftyco/ionic-site/issues
5. If the change affects the component demos, create an issue on the `ionic-site` repo: https://github.com/ionic-team/ionic-site/issues
## Commit Message Format
We have very precise rules over how our git commit messages should be formatted. This leads to readable messages that are easy to follow when looking through the project history. We also use the git commit messages to generate our [changelog](https://github.com/driftyco/ionic/blob/master/CHANGELOG.md). (Ok you got us, it's basically Angular's commit message format).
We have very precise rules over how our git commit messages should be formatted. This leads to readable messages that are easy to follow when looking through the project history. We also use the git commit messages to generate our [changelog](https://github.com/ionic-team/ionic/blob/master/CHANGELOG.md). (Ok you got us, it's basically Angular's commit message format).
`type(scope): subject`
@@ -143,4 +143,4 @@ The subject contains succinct description of the change:
## License
By contributing your code to the driftyco/ionic GitHub Repository, you agree to license your contribution under the MIT license.
By contributing your code to the ionic-team/ionic GitHub Repository, you agree to license your contribution under the MIT license.

View File

@@ -1,6 +1,7 @@
**Ionic version:** (check one with "x")
[ ] **1.x**
[ ] **1.x** (For Ionic 1.x issues, please use https://github.com/ionic-team/ionic-v1)
[ ] **2.x**
[ ] **3.x**
**I'm submitting a ...** (check one with "x")
[ ] bug report
@@ -16,9 +17,9 @@
**Steps to reproduce:**
<!-- If you are able to illustrate the bug or feature request with an example, please provide steps to reproduce and if possible a demo using one of the following templates:
For Ionic 1 issues - http://plnkr.co/edit/Xo1QyAUx35ny1Xf9ODHx?p=preview
For Ionic V1 issues - http://plnkr.co/edit/Xo1QyAUx35ny1Xf9ODHx?p=preview
For Ionic 2 issues - http://plnkr.co/edit/z0DzVL?p=preview
For Ionic issues - http://plnkr.co/edit/cpeRJs?p=preview
-->
**Related code:**

View File

@@ -7,6 +7,6 @@
-
-
**Ionic Version**: 1.x / 2.x
**Ionic Version**: 1.x / 2.x / 3.x
**Fixes**: #

1
.gitignore vendored
View File

@@ -22,6 +22,7 @@ $RECYCLE.BIN/
.DS_Store
Thumbs.db
UserInterfaceState.xcuserstate
.env
.package.tmp.json

View File

@@ -2,12 +2,9 @@
# See config at https://github.com/brigade/scss-lint/blob/master/config/default.yml
plugin_directories: ['.scss-linters']
exclude:
- 'src/components/item/item.ios.scss'
- 'src/components/item/item.md.scss'
- 'src/components/list/list.ios.scss'
- 'src/components/show-hide-when/**'
- 'src/components/slides/**'
- 'src/themes/ionic.mixins.scss'
- 'src/themes/license.scss'
- 'src/themes/util.scss'
@@ -19,6 +16,9 @@ linters:
ColorVariable:
enabled: false
DefaultRule:
enabled: true
DuplicateProperty:
enabled: false
@@ -37,13 +37,10 @@ linters:
- position
- top
- right
- bottom
- left
- z-index
- display
- overflow
- float
- clear
-
- flex
@@ -59,17 +56,6 @@ linters:
- justify-content
- order
-
- margin
- margin-top
- margin-right
- margin-bottom
- margin-left
- padding
- padding-top
- padding-right
- padding-bottom
- padding-left
-
- width
- min-width
- max-width
@@ -104,12 +90,6 @@ linters:
- border-bottom-style
- border-left-style
- border-radius
- border-top-left-radius
- border-top-right-radius
- border-bottom-left-radius
- border-bottom-right-radius
- border-color
- border-top-color
- border-right-color
@@ -135,7 +115,6 @@ linters:
- letter-spacing
- line-height
- list-style
- text-align
- text-decoration
- text-indent
- text-overflow
@@ -156,7 +135,6 @@ linters:
- background-color
- background-image
- background-repeat
- background-position
- background-size
# Other
@@ -179,7 +157,6 @@ linters:
- transform
- transform-box
- transform-origin
- transform-style
- transition
@@ -204,6 +181,33 @@ linters:
enabled: true
style: double_quotes
SelectorDepth:
enabled: true
max_depth: 5
PropertySpelling:
extra_properties:
- contain
disabled_properties:
- background-position
- direction
- right
- left
- float
- padding
- padding-left
- padding-right
- padding-top
- padding-bottom
- margin
- margin-left
- margin-right
- margin-top
- margin-bottom
- border-radius
- border-top-left-radius
- border-top-right-radius
- border-bottom-right-radius
- border-bottom-left-radius
- text-align
- transform-origin

View File

@@ -0,0 +1,18 @@
module SCSSLint
# Reports the use of !default at the end of variable declarations.
class Linter::DefaultRule < Linter
include LinterRegistry
def visit_function(node)
return true
end
def visit_variable(node)
return if source_from_range(node.source_range).include?('!default')
return unless node_ancestor(node, 2).nil?
add_lint(node, '!default should be used')
end
end
end

View File

File diff suppressed because it is too large Load Diff

View File

@@ -1,37 +1,37 @@
[![npm version](https://badge.fury.io/js/ionic-angular.svg)](https://badge.fury.io/js/ionic-angular)
[![Circle CI](https://circleci.com/gh/driftyco/ionic.svg?style=shield&circle-token=:circle-token)](https://circleci.com/gh/driftyco/ionic)
[![Circle CI](https://circleci.com/gh/ionic-team/ionic.svg?style=shield&circle-token=:circle-token)](https://circleci.com/gh/ionic-team/ionic)
# Ionic
[Ionic](http://ionicframework.com/) is the open-source mobile app development framework that makes it easy to
[Ionic](https://ionicframework.com/) is the open-source mobile app development framework that makes it easy to
build top quality native and progressive web apps with web technologies.
Ionic is based on [Angular](https://angular.io/) and comes with many significant performance, usability, and
feature improvements over the past versions.
See the [Building Apps with Ionic 2](http://adamdbradley.github.io/building-with-ionic2) slides for a quick
See the [Building Apps with Ionic](https://adamdbradley.github.io/building-with-ionic2) slides for a quick
overview or watch our [Crash Course](https://youtu.be/O2WiI9QrS5s) video for a quick walkthrough on how to get
started using Ionic.
### Getting Started
Start a new project by following our quick [Getting Started guide](http://ionicframework.com/getting-started/).
Start a new project by following our quick [Getting Started guide](https://ionicframework.com/getting-started/).
We would love to hear from you! If you have any feedback or run into issues using our framework, please file
an [issue](https://github.com/driftyco/ionic/issues/new) on this repository.
an [issue](https://github.com/ionic-team/ionic/issues/new) on this repository.
### Contributing
Thanks for your interest in contributing! Read up on our guidelines for
[contributing](https://github.com/driftyco/ionic/blob/master/.github/CONTRIBUTING.md)
and then look through our issues with a [help wanted](https://github.com/driftyco/ionic/issues?q=is%3Aopen+is%3Aissue+label%3A%22help+wanted%22)
[contributing](https://github.com/ionic-team/ionic/blob/master/.github/CONTRIBUTING.md)
and then look through our issues with a [help wanted](https://github.com/ionic-team/ionic/issues?q=is%3Aopen+is%3Aissue+label%3A%22help+wanted%22)
label.
### Examples
The [Ionic Conference App](https://github.com/driftyco/ionic-conference-app) is a full featured Ionic app.
The [Ionic Conference App](https://github.com/ionic-team/ionic-conference-app) is a full featured Ionic app.
It is the perfect starting point for learning and building your own app.
### Ionic 1.x
### Ionic V1
The source code for Ionic 1.x has been moved to [driftyco/ionic-v1](https://github.com/driftyco/ionic-v1).
Please open any issues and pull requests related to Ionic 1.x on that repository.
The source code for Ionic V1 has been moved to [ionic-team/ionic-v1](https://github.com/ionic-team/ionic-v1).
Please open any issues and pull requests related to Ionic V1 on that repository.

View File

@@ -1,22 +1,44 @@
general:
branches:
ignore:
- ins_n_outs
machine:
node:
version: 4.1.0
post:
- npm install -g npm@3.x.x
dependencies:
pre:
- ./scripts/docs/prepare.sh
cache_directories:
- "~/ionic-site" # cache ionic-site
test:
override:
- gulp lint.ts
deployment:
tasks:
branch: "master"
commands:
- ./scripts/ci/deploy.sh
version: 2
jobs:
build:
working_directory: ~/ionic/
docker:
- image: node:7
steps:
- checkout
- restore_cache:
key: ionic-site
- run:
name: Prepare ionic-site repo
command: ./scripts/docs/prepare.sh
- save_cache:
key: ionic-site
paths:
- ~/ionic-site/
- restore_cache:
key: node_modules_{{ checksum "package.json" }}
- run:
name: Install node modules
command: npm i
- save_cache:
key: node_modules_{{ checksum "package.json" }}
paths:
- ~/ionic/node_modules/
- run:
name: Run tslint
command: ./node_modules/.bin/gulp lint.ts
- run:
name: Build Demos
command: |
if [ "${CIRCLE_BRANCH}" == "master" ]; then
./node_modules/.bin/gulp demos.prod --production=true --batch=$CIRCLE_NODE_INDEX --batches=$CIRCLE_NODE_TOTAL
fi
- add_ssh_keys
- deploy:
name: Update docs
command: |
if [ "${CIRCLE_BRANCH}" == "master" ]; then
./scripts/ci/deploy.sh
else
echo "We are on ${CIRCLE_BRANCH} branch, not going to update docs."
fi

View File

@@ -0,0 +1,9 @@
import { Component } from '@angular/core';
import { PageOne } from '../pages/page-one/page-one';
@Component({
template: '<ion-nav [root]="root"></ion-nav>'
})
export class AppComponent {
root = PageOne;
}

View File

@@ -0,0 +1,19 @@
import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { IonicApp, IonicModule } from '../../../../src';
import { AppComponent } from './app.component';
import { PageOneModule } from '../pages/page-one/page-one.module';
@NgModule({
declarations: [
AppComponent
],
imports: [
BrowserModule,
IonicModule.forRoot(AppComponent),
PageOneModule
],
bootstrap: [IonicApp]
})
export class AppModule {}

View File

@@ -0,0 +1,17 @@
import { NgModule } from '@angular/core';
import { IonicPageModule } from '../../../../../src';
import { PageOne } from './page-one';
@NgModule({
declarations: [
PageOne,
],
imports: [
IonicPageModule.forChild(PageOne),
],
entryComponents: [
PageOne,
]
})
export class PageOneModule {}

View File

@@ -1,11 +1,11 @@
import { Component, NgModule } from '@angular/core';
import { ActionSheetController, IonicApp, IonicModule, Platform } from '../../ionic-angular';
import { Component } from '@angular/core';
import { ActionSheetController, Platform } from '../../../../../src';
@Component({
templateUrl: 'page.html'
templateUrl: 'page-one.html'
})
export class ApiDemoPage {
export class PageOne {
constructor(public alertCtrl: ActionSheetController, public platform: Platform) { }
present() {
@@ -55,26 +55,3 @@ export class ApiDemoPage {
actionSheet.present();
}
}
@Component({
template: '<ion-nav [root]="root"></ion-nav>'
})
export class ApiDemoApp {
root = ApiDemoPage;
}
@NgModule({
declarations: [
ApiDemoApp,
ApiDemoPage
],
imports: [
IonicModule.forRoot(ApiDemoApp)
],
bootstrap: [IonicApp],
entryComponents: [
ApiDemoPage
]
})
export class AppModule {}

View File

@@ -0,0 +1,9 @@
import { Component } from '@angular/core';
import { PageOne } from '../pages/page-one/page-one';
@Component({
template: '<ion-nav [root]="root"></ion-nav>'
})
export class AppComponent {
root = PageOne;
}

View File

@@ -0,0 +1,19 @@
import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { IonicApp, IonicModule } from '../../../../src';
import { AppComponent } from './app.component';
import { PageOneModule } from '../pages/page-one/page-one.module';
@NgModule({
declarations: [
AppComponent
],
imports: [
BrowserModule,
IonicModule.forRoot(AppComponent),
PageOneModule
],
bootstrap: [IonicApp]
})
export class AppModule {}

View File

@@ -0,0 +1,17 @@
import { NgModule } from '@angular/core';
import { IonicPageModule } from '../../../../../src';
import { PageOne } from './page-one';
@NgModule({
declarations: [
PageOne,
],
imports: [
IonicPageModule.forChild(PageOne),
],
entryComponents: [
PageOne,
]
})
export class PageOneModule {}

View File

@@ -1,11 +1,10 @@
import { Component, NgModule } from '@angular/core';
import { AlertController, IonicApp, IonicModule } from '../../ionic-angular';
import { Component } from '@angular/core';
import { AlertController } from '../../../../../src';
@Component({
templateUrl: 'page.html'
templateUrl: 'page-one.html'
})
export class ApiDemoPage {
export class PageOne {
testRadioOpen = false;
testRadioResult: any;
testCheckboxOpen = false;
@@ -59,13 +58,13 @@ export class ApiDemoPage {
buttons: [
{
text: 'Cancel',
handler: (data: any) => {
handler: (data) => {
console.log('Cancel clicked');
}
},
{
text: 'Save',
handler: (data: any) => {
handler: (data) => {
console.log('Saved clicked');
}
}
@@ -208,25 +207,3 @@ export class ApiDemoPage {
}
}
@Component({
template: `<ion-nav [root]="root"></ion-nav>`
})
export class ApiDemoApp {
root = ApiDemoPage;
}
@NgModule({
declarations: [
ApiDemoApp,
ApiDemoPage
],
imports: [
IonicModule.forRoot(ApiDemoApp)
],
bootstrap: [IonicApp],
entryComponents: [
ApiDemoPage
]
})
export class AppModule {}

View File

@@ -1,32 +0,0 @@
import { Component, NgModule } from '@angular/core';
import { IonicApp, IonicModule } from '../../ionic-angular';
@Component({
templateUrl: 'page.html'
})
export class ApiDemoPage {}
@Component({
template: '<ion-nav [root]="root"></ion-nav>'
})
export class ApiDemoApp {
root = ApiDemoPage;
}
@NgModule({
declarations: [
ApiDemoApp,
ApiDemoPage
],
imports: [
IonicModule.forRoot(ApiDemoApp)
],
bootstrap: [IonicApp],
entryComponents: [
ApiDemoPage
]
})
export class AppModule {}

View File

@@ -0,0 +1,9 @@
import { Component } from '@angular/core';
import { PageOne } from '../pages/page-one/page-one';
@Component({
template: '<ion-nav [root]="root"></ion-nav>'
})
export class AppComponent {
root = PageOne;
}

View File

@@ -0,0 +1,19 @@
import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { IonicApp, IonicModule } from '../../../../src';
import { AppComponent } from './app.component';
import { PageOneModule } from '../pages/page-one/page-one.module';
@NgModule({
declarations: [
AppComponent
],
imports: [
BrowserModule,
IonicModule.forRoot(AppComponent),
PageOneModule
],
bootstrap: [IonicApp]
})
export class AppModule {}

View File

@@ -39,12 +39,12 @@
<h4>Icons</h4>
<button ion-button icon-left color="dark">
<button ion-button icon-start color="dark">
<ion-icon name="star"></ion-icon>
Left Icon
</button>
<button ion-button icon-right color="dark">
<button ion-button icon-end color="dark">
Right Icon
<ion-icon name="star"></ion-icon>
</button>

View File

@@ -0,0 +1,17 @@
import { NgModule } from '@angular/core';
import { IonicPageModule } from '../../../../../src';
import { PageOne } from './page-one';
@NgModule({
declarations: [
PageOne,
],
imports: [
IonicPageModule.forChild(PageOne),
],
entryComponents: [
PageOne,
]
})
export class PageOneModule {}

View File

@@ -0,0 +1,6 @@
import { Component } from '@angular/core';
@Component({
templateUrl: 'page-one.html'
})
export class PageOne {}

View File

@@ -1,49 +0,0 @@
import { Component, NgModule } from '@angular/core';
import { IonicApp, IonicModule } from '../../ionic-angular';
@Component({
templateUrl: 'page.html'
})
export class ApiDemoPage {
data = {
jon: true,
daenerys: true,
arya: false,
tyroin: false,
sansa: true,
khal: false,
cersei: true,
stannis: true,
petyr: false,
hodor: true,
catelyn: true,
bronn: false
};
}
@Component({
template: '<ion-nav [root]="root"></ion-nav>'
})
export class ApiDemoApp {
root = ApiDemoPage;
}
@NgModule({
declarations: [
ApiDemoApp,
ApiDemoPage
],
imports: [
IonicModule.forRoot(ApiDemoApp)
],
bootstrap: [IonicApp],
entryComponents: [
ApiDemoPage
]
})
export class AppModule {}

View File

@@ -0,0 +1,9 @@
import { Component } from '@angular/core';
import { PageOne } from '../pages/page-one/page-one';
@Component({
template: '<ion-nav [root]="root"></ion-nav>'
})
export class AppComponent {
root = PageOne;
}

View File

@@ -0,0 +1,19 @@
import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { IonicApp, IonicModule } from '../../../../src';
import { AppComponent } from './app.component';
import { PageOneModule } from '../pages/page-one/page-one.module';
@NgModule({
declarations: [
AppComponent
],
imports: [
BrowserModule,
IonicModule.forRoot(AppComponent),
PageOneModule
],
bootstrap: [IonicApp]
})
export class AppModule {}

View File

@@ -0,0 +1,5 @@
import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
import { AppModule } from './app.module';
platformBrowserDynamic().bootstrapModule(AppModule);

View File

@@ -0,0 +1,17 @@
import { NgModule } from '@angular/core';
import { IonicPageModule } from '../../../../../src';
import { PageOne } from './page-one';
@NgModule({
declarations: [
PageOne,
],
imports: [
IonicPageModule.forChild(PageOne),
],
entryComponents: [
PageOne,
]
})
export class PageOneModule {}

View File

@@ -0,0 +1,22 @@
import { Component } from '@angular/core';
@Component({
templateUrl: 'page-one.html'
})
export class PageOne {
data = {
jon: true,
daenerys: true,
arya: false,
tyroin: false,
sansa: true,
khal: false,
cersei: true,
stannis: true,
petyr: false,
hodor: true,
catelyn: true,
bronn: false
};
}

View File

@@ -1,35 +0,0 @@
import { Component, NgModule } from '@angular/core';
import { IonicApp, IonicModule } from '../../ionic-angular';
@Component({
templateUrl: 'page.html'
})
export class ApiDemoPage {
delete(chip: Element) {
chip.remove();
}
}
@Component({
template: '<ion-nav [root]="root"></ion-nav>'
})
export class ApiDemoApp {
root = ApiDemoPage;
}
@NgModule({
declarations: [
ApiDemoApp,
ApiDemoPage
],
imports: [
IonicModule.forRoot(ApiDemoApp)
],
bootstrap: [IonicApp],
entryComponents: [
ApiDemoPage
]
})
export class AppModule {}

View File

@@ -0,0 +1,9 @@
import { Component } from '@angular/core';
import { PageOne } from '../pages/page-one/page-one';
@Component({
template: '<ion-nav [root]="root"></ion-nav>'
})
export class AppComponent {
root = PageOne;
}

View File

@@ -0,0 +1,19 @@
import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { IonicApp, IonicModule } from '../../../../src';
import { AppComponent } from './app.component';
import { PageOneModule } from '../pages/page-one/page-one.module';
@NgModule({
declarations: [
AppComponent
],
imports: [
BrowserModule,
IonicModule.forRoot(AppComponent),
PageOneModule
],
bootstrap: [IonicApp]
})
export class AppModule {}

View File

@@ -0,0 +1,5 @@
import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
import { AppModule } from './app.module';
platformBrowserDynamic().bootstrapModule(AppModule);

View File

@@ -0,0 +1,17 @@
import { NgModule } from '@angular/core';
import { IonicPageModule } from '../../../../../src';
import { PageOne } from './page-one';
@NgModule({
declarations: [
PageOne,
],
imports: [
IonicPageModule.forChild(PageOne),
],
entryComponents: [
PageOne,
]
})
export class PageOneModule {}

View File

@@ -0,0 +1,10 @@
import { Component } from '@angular/core';
@Component({
templateUrl: 'page-one.html'
})
export class PageOne {
delete(chip: Element) {
chip.remove();
}
}

View File

@@ -0,0 +1,39 @@
import { Component } from '@angular/core';
import { Config, Platform } from '../../../../src';
import { PageOne } from '../pages/page-one/page-one';
@Component({
template: '<ion-nav [root]="root"></ion-nav>'
})
export class AppComponent {
config: any;
root = PageOne;
constructor(public _config: Config, public platform: Platform) {
if (window.localStorage.getItem('configDemo') !== null) {
this.config = JSON.parse(window.localStorage.getItem('configDemo'));
} else if (platform.is('ios')) {
this.config = {
'backButtonIcon': 'ios-arrow-back',
'iconMode': 'ios',
'tabsPlacement': 'bottom'
};
} else if (platform.is('windows')) {
this.config = {
'backButtonIcon': 'ios-arrow-back',
'iconMode': 'ios',
'tabsPlacement': 'top'
};
} else {
this.config = {
'backButtonIcon': 'md-arrow-back',
'iconMode': 'md',
'tabsPlacement': 'bottom'
};
}
this._config.set('tabsPlacement', this.config.tabsPlacement);
this._config.set('iconMode', this.config.iconMode);
this._config.set('backButtonIcon', this.config.backButtonIcon);
}
}

View File

@@ -1,5 +1,26 @@
import { Component, NgModule } from '@angular/core';
import { Config, IonicApp, IonicModule, Platform, NavController } from '../../ionic-angular';
import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { IonicApp, IonicModule } from '../../../../src';
import { AppComponent } from './app.component';
import { PageOneModule } from '../pages/page-one/page-one.module';
import { PageTwoModule } from '../pages/page-two/page-two.module';
import { PageThreeModule } from '../pages/page-three/page-three.module';
@NgModule({
declarations: [
AppComponent,
],
imports: [
BrowserModule,
IonicModule.forRoot(AppComponent, CONFIG_DEMO),
PageOneModule,
PageTwoModule,
PageThreeModule
],
bootstrap: [IonicApp],
})
export class AppModule {}
if (!window.localStorage) {
Object.defineProperty(window, 'localStorage', new (function () {
@@ -19,7 +40,7 @@ if (!window.localStorage) {
Object.defineProperty(oStorage, 'setItem', {
value: function (sKey: string, sValue: string) {
if (!sKey) { return; }
document.cookie = encodeURI(sKey) + '=' + encodeURI(sValue) + '; expires=Tue, 19 Jan 2038 03:14:07 GMT; path=/';
document.cookie = encodeURI(sKey) + '=' + encodeURI(sValue) + '; expires=Tue, 19 Jan 2038 03:14:07 GMT; path=';
},
writable: false,
configurable: false,
@@ -33,7 +54,7 @@ if (!window.localStorage) {
Object.defineProperty(oStorage, 'removeItem', {
value: function (sKey: string) {
if (!sKey) { return; }
document.cookie = encodeURI(sKey) + '=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/';
document.cookie = encodeURI(sKey) + '=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=';
},
writable: false,
configurable: false,
@@ -70,102 +91,3 @@ var CONFIG_DEMO: any = null;
if (window.localStorage.getItem('configDemo')) {
CONFIG_DEMO = JSON.parse(window.localStorage.getItem('configDemo'));
}
@Component({
templateUrl: 'tabs.html'
})
export class TabPage {
tabOne = ApiDemoPage;
}
@Component({
templateUrl: 'page.html'
})
export class ApiDemoPage {
config: any;
initialConfig: any;
constructor(_config: Config, public navCtrl: NavController) {
this.config = _config.settings();
this.initialConfig = this.config;
}
load() {
window.localStorage.setItem('configDemo', JSON.stringify(this.config));
window.location.reload();
}
push() {
this.navCtrl.push(PushPage);
}
}
@Component({
templateUrl: 'push-page.html'
})
export class PushPage {
constructor(public navCtrl: NavController) {}
pop() {
this.navCtrl.pop();
}
}
@Component({
template: '<ion-nav [root]="root" #content></ion-nav>'
})
export class ApiDemoApp {
config: any;
root = TabPage;
constructor(public _config: Config, public platform: Platform) {
if (window.localStorage.getItem('configDemo') !== null) {
this.config = JSON.parse(window.localStorage.getItem('configDemo'));
} else if (platform.is('ios')) {
this.config = {
'backButtonIcon': 'ios-arrow-back',
'iconMode': 'ios',
'tabsPlacement': 'bottom'
};
} else if (platform.is('windows')) {
this.config = {
'backButtonIcon': 'ios-arrow-back',
'iconMode': 'ios',
'tabsPlacement': 'top'
};
} else {
this.config = {
'backButtonIcon': 'md-arrow-back',
'iconMode': 'md',
'tabsPlacement': 'bottom'
};
}
this._config.set('tabsPlacement', this.config.tabsPlacement);
this._config.set('iconMode', this.config.iconMode);
this._config.set('backButtonIcon', this.config.backButtonIcon);
}
}
@NgModule({
declarations: [
ApiDemoApp,
ApiDemoPage,
PushPage,
TabPage
],
imports: [
IonicModule.forRoot(ApiDemoApp, CONFIG_DEMO)
],
bootstrap: [IonicApp],
entryComponents: [
ApiDemoPage,
PushPage,
TabPage
]
})
export class AppModule {}

View File

@@ -0,0 +1,5 @@
import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
import { AppModule } from './app.module';
platformBrowserDynamic().bootstrapModule(AppModule);

View File

@@ -0,0 +1,17 @@
import { NgModule } from '@angular/core';
import { IonicPageModule } from '../../../../../src';
import { PageOne } from './page-one';
@NgModule({
declarations: [
PageOne,
],
imports: [
IonicPageModule.forChild(PageOne),
],
entryComponents: [
PageOne,
]
})
export class PageOneModule {}

View File

@@ -0,0 +1,9 @@
import { Component } from '@angular/core';
import { PageTwo } from '../page-two/page-two';
@Component({
templateUrl: 'page-one.html'
})
export class PageOne {
tabOne = PageTwo;
}

View File

@@ -0,0 +1,17 @@
import { NgModule } from '@angular/core';
import { IonicPageModule } from '../../../../../src';
import { PageThree } from './page-three';
@NgModule({
declarations: [
PageThree,
],
imports: [
IonicPageModule.forChild(PageThree),
],
entryComponents: [
PageThree,
]
})
export class PageThreeModule {}

View File

@@ -0,0 +1,13 @@
import { Component } from '@angular/core';
import { NavController } from '../../../../../src';
@Component({
templateUrl: 'page-three.html'
})
export class PageThree {
constructor(public navCtrl: NavController) {}
pop() {
this.navCtrl.pop();
}
}

View File

@@ -52,6 +52,7 @@
<pre margin>
&#64;NgModule(&#123;
imports: [
BrowserModule,
IonicModule.forRoot(MyApp, &#123;
backButtonIcon: "{{initialConfig?.backButtonIcon}}"
iconMode: "{{initialConfig?.iconMode}}"

View File

@@ -0,0 +1,17 @@
import { NgModule } from '@angular/core';
import { IonicPageModule } from '../../../../../src';
import { PageTwo } from './page-two';
@NgModule({
declarations: [
PageTwo,
],
imports: [
IonicPageModule.forChild(PageTwo),
],
entryComponents: [
PageTwo,
]
})
export class PageTwoModule {}

View File

@@ -0,0 +1,24 @@
import { Component } from '@angular/core';
import { Config, NavController } from '../../../../../src';
import { PageThree } from '../page-three/page-three';
@Component({
templateUrl: 'page-two.html'
})
export class PageTwo {
config: any;
initialConfig: any;
constructor(_config: Config, public navCtrl: NavController) {
this.config = _config.settings();
this.initialConfig = this.config;
}
load() {
window.localStorage.setItem('configDemo', JSON.stringify(this.config));
window.location.reload();
}
push() {
this.navCtrl.push(PageThree);
}
}

View File

@@ -0,0 +1,11 @@
<ion-header>
<ion-navbar>
<ion-title>Page</ion-title>
</ion-navbar>
</ion-header>
<ion-content>
<div padding>
<button ion-button block (click)="pop()">Go Back to Config</button>
</div>
</ion-content>

View File

@@ -0,0 +1,9 @@
import { Component } from '@angular/core';
import { PageOne } from '../pages/page-one/page-one';
@Component({
template: '<ion-nav [root]="root"></ion-nav>'
})
export class AppComponent {
root = PageOne;
}

View File

@@ -0,0 +1,19 @@
import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { IonicApp, IonicModule } from '../../../../src';
import { AppComponent } from './app.component';
import { PageOneModule } from '../pages/page-one/page-one.module';
@NgModule({
declarations: [
AppComponent
],
imports: [
BrowserModule,
IonicModule.forRoot(AppComponent),
PageOneModule
],
bootstrap: [IonicApp]
})
export class AppModule {}

View File

@@ -0,0 +1,5 @@
import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
import { AppModule } from './app.module';
platformBrowserDynamic().bootstrapModule(AppModule);

View File

@@ -0,0 +1,17 @@
import { NgModule } from '@angular/core';
import { IonicPageModule } from '../../../../../src';
import { PageOne } from './page-one';
@NgModule({
declarations: [
PageOne,
],
imports: [
IonicPageModule.forChild(PageOne),
],
entryComponents: [
PageOne,
]
})
export class PageOneModule {}

View File

@@ -1,11 +1,9 @@
import { Component, NgModule } from '@angular/core';
import { IonicApp, IonicModule } from '../../ionic-angular';
import { Component } from '@angular/core';
@Component({
templateUrl: 'page.html'
templateUrl: 'page-one.html'
})
export class ApiDemoPage {
export class PageOne {
wwwReleased = '1991';
netscapeReleased = '1994-12-15T13:47:20.789';
operaReleased = '1995-04-15';
@@ -40,7 +38,7 @@ export class ApiDemoPage {
}
}
calculateTime(offset) {
calculateTime(offset: any) {
// create Date object for current location
let d = new Date();
@@ -52,37 +50,13 @@ export class ApiDemoPage {
}
// Determine if the client uses DST
stdTimezoneOffset(today) {
stdTimezoneOffset(today: any) {
let jan = new Date(today.getFullYear(), 0, 1);
let jul = new Date(today.getFullYear(), 6, 1);
return Math.max(jan.getTimezoneOffset(), jul.getTimezoneOffset());
}
dst(today) {
dst(today: any) {
return today.getTimezoneOffset() < this.stdTimezoneOffset(today);
}
}
@Component({
template: '<ion-nav [root]="root"></ion-nav>'
})
export class ApiDemoApp {
root = ApiDemoPage;
}
@NgModule({
declarations: [
ApiDemoApp,
ApiDemoPage
],
imports: [
IonicModule.forRoot(ApiDemoApp)
],
bootstrap: [IonicApp],
entryComponents: [
ApiDemoPage
]
})
export class AppModule {}

View File

@@ -1,89 +0,0 @@
import { Component, NgModule, ViewChild } from '@angular/core';
import { Events, IonicApp, IonicModule, Nav } from '../../ionic-angular';
@Component({
templateUrl: 'login.html'
})
export class Login {
user = {
name: 'Administrator',
username: 'admin'
};
constructor(private events: Events) {}
login() {
this.events.publish('user:login');
}
}
@Component({
templateUrl: 'logout.html'
})
export class Logout {
constructor(private events: Events) {}
logout() {
this.events.publish('user:logout');
}
}
@Component({
templateUrl: 'app.html'
})
export class ApiDemoApp {
@ViewChild(Nav) nav: Nav;
root = Login;
loggedIn = false;
loggedInPages = [
{ title: 'Logout', component: Logout }
];
loggedOutPages = [
{ title: 'Login', component: Login }
];
constructor(private events: Events) {
this.listenToLoginEvents();
}
openPage(menu, page) {
// find the nav component and set what the root page should be
// reset the nav to remove previous pages and only have this page
// we wouldn't want the back button to show in this scenario
this.nav.setRoot(page.component);
}
listenToLoginEvents() {
this.events.subscribe('user:login', () => {
this.loggedIn = true;
});
this.events.subscribe('user:logout', () => {
this.loggedIn = false;
});
}
}
@NgModule({
declarations: [
ApiDemoApp,
Login,
Logout
],
imports: [
IonicModule.forRoot(ApiDemoApp)
],
bootstrap: [IonicApp],
entryComponents: [
Login,
Logout
]
})
export class AppModule {}

View File

@@ -0,0 +1,45 @@
import { Component, ViewChild } from '@angular/core';
import { Events, Nav } from '../../../../src';
import { PageOne } from '../pages/page-one/page-one';
import { PageTwo } from '../pages/page-two/page-two';
@Component({
templateUrl: 'app.component.html'
})
export class AppComponent {
@ViewChild(Nav) nav: Nav;
root = PageOne;
loggedIn = false;
loggedInPages = [
{ title: 'Logout', component: PageTwo }
];
loggedOutPages = [
{ title: 'Login', component: PageOne }
];
constructor(private events: Events) {
this.listenToLoginEvents();
}
openPage(menu: any, page: any) {
// find the nav component and set what the root page should be
// reset the nav to remove previous pages and only have this page
// we wouldn't want the back button to show in this scenario
this.nav.setRoot(page.component);
}
listenToLoginEvents() {
this.events.subscribe('user:login', () => {
this.loggedIn = true;
});
this.events.subscribe('user:logout', () => {
this.loggedIn = false;
});
}
}

View File

@@ -0,0 +1,21 @@
import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { IonicApp, IonicModule } from '../../../../src';
import { AppComponent } from './app.component';
import { PageOneModule } from '../pages/page-one/page-one.module';
import { PageTwoModule } from '../pages/page-two/page-two.module';
@NgModule({
declarations: [
AppComponent
],
imports: [
BrowserModule,
IonicModule.forRoot(AppComponent),
PageOneModule,
PageTwoModule
],
bootstrap: [IonicApp]
})
export class AppModule {}

View File

@@ -0,0 +1,5 @@
import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
import { AppModule } from './app.module';
platformBrowserDynamic().bootstrapModule(AppModule);

View File

@@ -0,0 +1,17 @@
import { NgModule } from '@angular/core';
import { IonicPageModule } from '../../../../../src';
import { PageOne } from './page-one';
@NgModule({
declarations: [
PageOne,
],
imports: [
IonicPageModule.forChild(PageOne),
],
entryComponents: [
PageOne,
]
})
export class PageOneModule {}

View File

@@ -0,0 +1,18 @@
import { Component } from '@angular/core';
import { Events } from '../../../../../src';
@Component({
templateUrl: 'page-one.html'
})
export class PageOne {
user = {
name: 'Administrator',
username: 'admin'
};
constructor(private events: Events) {}
login() {
this.events.publish('user:login');
}
}

View File

@@ -0,0 +1,17 @@
import { NgModule } from '@angular/core';
import { IonicPageModule } from '../../../../../src';
import { PageTwo } from './page-two';
@NgModule({
declarations: [
PageTwo,
],
imports: [
IonicPageModule.forChild(PageTwo),
],
entryComponents: [
PageTwo,
]
})
export class PageTwoModule {}

View File

@@ -0,0 +1,13 @@
import { Component } from '@angular/core';
import { Events } from '../../../../../src';
@Component({
templateUrl: 'page-two.html'
})
export class PageTwo {
constructor(private events: Events) {}
logout() {
this.events.publish('user:logout');
}
}

View File

@@ -1,48 +0,0 @@
import { Component, NgModule } from '@angular/core';
import { FabContainer, IonicApp, IonicModule } from '../../ionic-angular';
@Component({
templateUrl: 'page.html'
})
export class ApiDemoPage {
array: number[] = [];
add() {
this.array.push(1);
}
clickMainFAB() {
console.log('Clicked open social menu');
}
openSocial(network: string, fab: FabContainer) {
console.log('Share in ' + network);
fab.close();
}
}
@Component({
template: '<ion-nav [root]="root"></ion-nav>'
})
export class ApiDemoApp {
root = ApiDemoPage;
}
@NgModule({
declarations: [
ApiDemoApp,
ApiDemoPage
],
imports: [
IonicModule.forRoot(ApiDemoApp)
],
bootstrap: [IonicApp],
entryComponents: [
ApiDemoPage
]
})
export class AppModule {}

View File

@@ -0,0 +1,9 @@
import { Component } from '@angular/core';
import { PageOne } from '../pages/page-one/page-one';
@Component({
template: '<ion-nav [root]="root"></ion-nav>'
})
export class AppComponent {
root = PageOne;
}

View File

@@ -0,0 +1,19 @@
import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { IonicApp, IonicModule } from '../../../../src';
import { AppComponent } from './app.component';
import { PageOneModule } from '../pages/page-one/page-one.module';
@NgModule({
declarations: [
AppComponent
],
imports: [
BrowserModule,
IonicModule.forRoot(AppComponent),
PageOneModule
],
bootstrap: [IonicApp]
})
export class AppModule {}

View File

@@ -0,0 +1,5 @@
import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
import { AppModule } from './app.module';
platformBrowserDynamic().bootstrapModule(AppModule);

View File

@@ -0,0 +1,17 @@
import { NgModule } from '@angular/core';
import { IonicPageModule } from '../../../../../src';
import { PageOne } from './page-one';
@NgModule({
declarations: [
PageOne,
],
imports: [
IonicPageModule.forChild(PageOne),
],
entryComponents: [
PageOne,
]
})
export class PageOneModule {}

View File

@@ -0,0 +1,22 @@
import { Component } from '@angular/core';
import { FabContainer } from '../../../../../src';
@Component({
templateUrl: 'page-one.html'
})
export class PageOne {
array: number[] = [];
add() {
this.array.push(1);
}
clickMainFAB() {
console.log('Clicked open social menu');
}
openSocial(network: string, fab: FabContainer) {
console.log('Share in ' + network);
fab.close();
}
}

View File

@@ -1,32 +0,0 @@
import { Component, NgModule } from '@angular/core';
import { IonicApp, IonicModule } from '../../ionic-angular';
@Component({
templateUrl: 'page.html'
})
export class ApiDemoPage {}
@Component({
template: '<ion-nav [root]="root"></ion-nav>'
})
export class ApiDemoApp {
root = ApiDemoPage;
}
@NgModule({
declarations: [
ApiDemoApp,
ApiDemoPage
],
imports: [
IonicModule.forRoot(ApiDemoApp)
],
bootstrap: [IonicApp],
entryComponents: [
ApiDemoPage
]
})
export class AppModule {}

View File

@@ -0,0 +1,9 @@
import { Component } from '@angular/core';
import { PageOne } from '../pages/page-one/page-one';
@Component({
template: '<ion-nav [root]="root"></ion-nav>'
})
export class AppComponent {
root = PageOne;
}

View File

@@ -0,0 +1,19 @@
import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { IonicApp, IonicModule } from '../../../../src';
import { AppComponent } from './app.component';
import { PageOneModule } from '../pages/page-one/page-one.module';
@NgModule({
declarations: [
AppComponent
],
imports: [
BrowserModule,
IonicModule.forRoot(AppComponent),
PageOneModule
],
bootstrap: [IonicApp]
})
export class AppModule {}

View File

@@ -0,0 +1,5 @@
import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
import { AppModule } from './app.module';
platformBrowserDynamic().bootstrapModule(AppModule);

View File

@@ -0,0 +1,17 @@
import { NgModule } from '@angular/core';
import { IonicPageModule } from '../../../../../src';
import { PageOne } from './page-one';
@NgModule({
declarations: [
PageOne,
],
imports: [
IonicPageModule.forChild(PageOne),
],
entryComponents: [
PageOne,
]
})
export class PageOneModule {}

View File

@@ -0,0 +1,6 @@
import { Component } from '@angular/core';
@Component({
templateUrl: 'page-one.html'
})
export class PageOne {}

View File

@@ -1,32 +0,0 @@
import { Component, NgModule } from '@angular/core';
import { IonicApp, IonicModule } from '../../ionic-angular';
@Component({
templateUrl: 'page.html'
})
export class ApiDemoPage {}
@Component({
template: '<ion-nav [root]="root"></ion-nav>'
})
export class ApiDemoApp {
root = ApiDemoPage;
}
@NgModule({
declarations: [
ApiDemoApp,
ApiDemoPage
],
imports: [
IonicModule.forRoot(ApiDemoApp)
],
bootstrap: [IonicApp],
entryComponents: [
ApiDemoPage
]
})
export class AppModule {}

View File

@@ -0,0 +1,9 @@
import { Component } from '@angular/core';
import { PageOne } from '../pages/page-one/page-one';
@Component({
template: '<ion-nav [root]="root"></ion-nav>'
})
export class AppComponent {
root = PageOne;
}

View File

@@ -0,0 +1,19 @@
import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { IonicApp, IonicModule } from '../../../../src';
import { AppComponent } from './app.component';
import { PageOneModule } from '../pages/page-one/page-one.module';
@NgModule({
declarations: [
AppComponent
],
imports: [
BrowserModule,
IonicModule.forRoot(AppComponent),
PageOneModule
],
bootstrap: [IonicApp]
})
export class AppModule {}

View File

@@ -0,0 +1,5 @@
import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
import { AppModule } from './app.module';
platformBrowserDynamic().bootstrapModule(AppModule);

View File

@@ -0,0 +1,17 @@
import { NgModule } from '@angular/core';
import { IonicPageModule } from '../../../../../src';
import { PageOne } from './page-one';
@NgModule({
declarations: [
PageOne,
],
imports: [
IonicPageModule.forChild(PageOne),
],
entryComponents: [
PageOne,
]
})
export class PageOneModule {}

View File

@@ -0,0 +1,6 @@
import { Component } from '@angular/core';
@Component({
templateUrl: 'page-one.html'
})
export class PageOne {}

View File

@@ -1,117 +0,0 @@
import { Component, Injectable, NgModule } from '@angular/core';
import { InfiniteScroll, IonicApp, IonicModule } from '../../ionic-angular';
/**
* Mock Data Access Object
**/
@Injectable()
export class MockProvider {
getData(): any[] {
// return mock data synchronously
let data = [];
for (var i = 0; i < 20; i++) {
data.push( this._getRandomData() );
}
return data;
}
getAsyncData(): Promise<any[]> {
// async receive mock data
return new Promise(resolve => {
setTimeout(() => {
resolve(this.getData());
}, 1000);
});
}
private _getRandomData() {
let i = Math.floor( Math.random() * this._data.length );
return this._data[i];
}
private _data = [
'Fast Times at Ridgemont High',
'Peggy Sue Got Married',
'Raising Arizona',
'Moonstruck',
'Fire Birds',
'Honeymoon in Vegas',
'Amos & Andrew',
'It Could Happen to You',
'Trapped in Paradise',
'Leaving Las Vegas',
'The Rock',
'Con Air',
'Face/Off',
'City of Angels',
'Gone in Sixty Seconds',
'The Family Man',
'Windtalkers',
'Matchstick Men',
'National Treasure',
'Ghost Rider',
'Grindhouse',
'Next',
'Kick-Ass',
'Drive Angry',
];
}
@Component({
templateUrl: 'page.html'
})
export class ApiDemoPage {
items: string[];
constructor(private mockProvider: MockProvider) {
this.items = mockProvider.getData();
}
doInfinite(infiniteScroll: InfiniteScroll) {
this.mockProvider.getAsyncData().then((newData) => {
for (var i = 0; i < newData.length; i++) {
this.items.push( newData[i] );
}
infiniteScroll.complete();
if (this.items.length > 90) {
infiniteScroll.enable(false);
}
});
}
}
@Component({
template: '<ion-nav [root]="rootPage"></ion-nav>'
})
export class ApiDemoApp {
rootPage = ApiDemoPage;
}
@NgModule({
declarations: [
ApiDemoApp,
ApiDemoPage
],
imports: [
IonicModule.forRoot(ApiDemoApp)
],
bootstrap: [IonicApp],
entryComponents: [
ApiDemoApp,
ApiDemoPage
],
providers: [
MockProvider
]
})
export class AppModule {}

View File

@@ -0,0 +1,9 @@
import { Component } from '@angular/core';
import { PageOne } from '../pages/page-one/page-one';
@Component({
template: '<ion-nav [root]="root"></ion-nav>'
})
export class AppComponent {
root = PageOne;
}

View File

@@ -0,0 +1,19 @@
import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { IonicApp, IonicModule } from '../../../../src';
import { AppComponent } from './app.component';
import { PageOneModule } from '../pages/page-one/page-one.module';
@NgModule({
declarations: [
AppComponent
],
imports: [
BrowserModule,
IonicModule.forRoot(AppComponent),
PageOneModule
],
bootstrap: [IonicApp]
})
export class AppModule {}

View File

@@ -0,0 +1,5 @@
import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
import { AppModule } from './app.module';
platformBrowserDynamic().bootstrapModule(AppModule);

View File

@@ -0,0 +1,21 @@
import { NgModule } from '@angular/core';
import { IonicPageModule } from '../../../../../src';
import { PageOne } from './page-one';
import { MockProvider } from './provider';
@NgModule({
declarations: [
PageOne,
],
imports: [
IonicPageModule.forChild(PageOne),
],
entryComponents: [
PageOne,
],
providers: [
MockProvider
]
})
export class PageOneModule {}

View File

@@ -0,0 +1,28 @@
import { Component } from '@angular/core';
import { MockProvider} from './provider';
import { InfiniteScroll } from '../../../../../src';
@Component({
templateUrl: 'page-one.html'
})
export class PageOne {
items: string[];
constructor(private mockProvider: MockProvider) {
this.items = mockProvider.getData();
}
doInfinite(infiniteScroll: InfiniteScroll) {
this.mockProvider.getAsyncData().then((newData) => {
for (var i = 0; i < newData.length; i++) {
this.items.push( newData[i] );
}
infiniteScroll.complete();
if (this.items.length > 90) {
infiniteScroll.enable(false);
}
});
}
}

Some files were not shown because too many files have changed in this diff Show More