Compare commits
1030 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
ceb4217415 | ||
|
|
798625698d | ||
|
|
5cfb3b033b | ||
|
|
95d666c348 | ||
|
|
276d61bf3a | ||
|
|
397a209ad2 | ||
|
|
d2f42ef33a | ||
|
|
fe46907aaa | ||
|
|
5c92455ee9 | ||
|
|
046cbe7fca | ||
|
|
32f09275aa | ||
|
|
542ff4cf95 | ||
|
|
5710eb78a8 | ||
|
|
842a80d493 | ||
|
|
c2d4f1c0da | ||
|
|
e28e5b0f5f | ||
|
|
bff4862979 | ||
|
|
6bcef44d42 | ||
|
|
69c9b6f555 | ||
|
|
7f38cb5a16 | ||
|
|
cf7abe110d | ||
|
|
5b060345d2 | ||
|
|
1784036ef7 | ||
|
|
7a8577007c | ||
|
|
7c6e6d8b6b | ||
|
|
c5fd83ddb6 | ||
|
|
7b2fe69c7c | ||
|
|
f0961c7b23 | ||
|
|
35c8bbd49e | ||
|
|
1a343c1ea5 | ||
|
|
4fef8ff326 | ||
|
|
13681756ae | ||
|
|
4a798281e4 | ||
|
|
79670b7878 | ||
|
|
720084578d | ||
|
|
3dd6a92ccf | ||
|
|
7d1686ef93 | ||
|
|
b40b0fff98 | ||
|
|
4dba0580ac | ||
|
|
11653ce752 | ||
|
|
d3e6f3ba41 | ||
|
|
2c6cc37a5f | ||
|
|
4c7defb2ec | ||
|
|
2da02e6d46 | ||
|
|
7a91c87a72 | ||
|
|
598f8a9e7c | ||
|
|
6f0f02bb66 | ||
|
|
e4bde77bd4 | ||
|
|
c24b331866 | ||
|
|
4ac348bd0f | ||
|
|
f0026572e7 | ||
|
|
e30ccabf7b | ||
|
|
6b286db51a | ||
|
|
d79d62bfa0 | ||
|
|
2bdd3a3868 | ||
|
|
09d481e1d6 | ||
|
|
6f23bef5d1 | ||
|
|
84f54d64aa | ||
|
|
c9ddec3bb5 | ||
|
|
f62e1081e1 | ||
|
|
7dba41cbe1 | ||
|
|
77b0277290 | ||
|
|
40325cad9f | ||
|
|
ab5bbae2f6 | ||
|
|
5da746d2fc | ||
|
|
72a694a5e1 | ||
|
|
1ab0d2f915 | ||
|
|
083118aff4 | ||
|
|
ad373c93ae | ||
|
|
ac301c284f | ||
|
|
1e0509da98 | ||
|
|
ad3bef2e5a | ||
|
|
bbbbb3e8d0 | ||
|
|
0bc73e525d | ||
|
|
7ababc4d67 | ||
|
|
6ff8f03ef0 | ||
|
|
010a6ea304 | ||
|
|
973c80b264 | ||
|
|
b5f9ba588a | ||
|
|
c5724fdc4e | ||
|
|
ebda055444 | ||
|
|
7cf9bd8e5e | ||
|
|
ce710117f7 | ||
|
|
fcda04acf1 | ||
|
|
83ac4c7bbe | ||
|
|
2be7872cd6 | ||
|
|
97a7f1a4e7 | ||
|
|
e9e37f33f9 | ||
|
|
344ce11a3e | ||
|
|
7fcd1f85a3 | ||
|
|
5d13ba03d8 | ||
|
|
a99b753d2d | ||
|
|
8f26f4b3ef | ||
|
|
624bc1d9b5 | ||
|
|
0a07bef2d2 | ||
|
|
96bb4d38dc | ||
|
|
58a99a14d5 | ||
|
|
66e9e46458 | ||
|
|
d6060a95d7 | ||
|
|
80ff2f3bfa | ||
|
|
16f05c3b0d | ||
|
|
2ed84b1b71 | ||
|
|
8d21f5f225 | ||
|
|
be2c198259 | ||
|
|
dde011c8f6 | ||
|
|
47112c7c24 | ||
|
|
1b87af86bf | ||
|
|
d45a2b5407 | ||
|
|
49bf9b7cc5 | ||
|
|
79f0a3fc7b | ||
|
|
60b7c7469a | ||
|
|
c377489aba | ||
|
|
8bb22fb576 | ||
|
|
310e0942fd | ||
|
|
df06a24746 | ||
|
|
b9151bc062 | ||
|
|
972d63b2d2 | ||
|
|
440786a4f7 | ||
|
|
3a6ec05bef | ||
|
|
c5733326a9 | ||
|
|
f36b1c03cb | ||
|
|
3266d21ba4 | ||
|
|
62f1504514 | ||
|
|
f60d08b7a4 | ||
|
|
a092a31a1e | ||
|
|
6407518892 | ||
|
|
e7e45f608c | ||
|
|
c175badab6 | ||
|
|
05783be9ac | ||
|
|
6948eabc96 | ||
|
|
48196da281 | ||
|
|
a0b6b1084b | ||
|
|
4292959c87 | ||
|
|
e50b961bf9 | ||
|
|
0ba3957e8a | ||
|
|
c33842f8f0 | ||
|
|
f87237852f | ||
|
|
bfb63a77a2 | ||
|
|
b1ca6af2c3 | ||
|
|
2f20deacf2 | ||
|
|
de1086b894 | ||
|
|
6a19c8cf48 | ||
|
|
b6b0359fcf | ||
|
|
bb0d81a4e9 | ||
|
|
4014972feb | ||
|
|
3903fee2bf | ||
|
|
31706867c7 | ||
|
|
808a75e41c | ||
|
|
919e8dae30 | ||
|
|
763ad1bdb0 | ||
|
|
281575b961 | ||
|
|
42d1bbc7a8 | ||
|
|
a28667e751 | ||
|
|
505ff189d9 | ||
|
|
35c37c2d9e | ||
|
|
efbd11676f | ||
|
|
abf3335415 | ||
|
|
c83b0437fa | ||
|
|
23fc908eb6 | ||
|
|
9d35567cb5 | ||
|
|
7f77b8f069 | ||
|
|
410b3d261f | ||
|
|
d8baf3a814 | ||
|
|
c36b0a6b3f | ||
|
|
3385a46648 | ||
|
|
550b8289c9 | ||
|
|
2aa998f66f | ||
|
|
dff034a5b6 | ||
|
|
c407b6d4f0 | ||
|
|
58c9439a32 | ||
|
|
c75f89894a | ||
|
|
a566240266 | ||
|
|
d03d70ff0b | ||
|
|
7910493a6c | ||
|
|
c76de34b97 | ||
|
|
ddae67913d | ||
|
|
4f9716415b | ||
|
|
caf2d67443 | ||
|
|
393e9d0e00 | ||
|
|
bbbd0d52e9 | ||
|
|
26dead93ff | ||
|
|
1facde3966 | ||
|
|
d5513db9bb | ||
|
|
d135dc26e2 | ||
|
|
2dc68a4785 | ||
|
|
2f706deb26 | ||
|
|
54460e2362 | ||
|
|
1db1374226 | ||
|
|
3917a3f7b9 | ||
|
|
210346e1e3 | ||
|
|
f4efe1f6eb | ||
|
|
04b24d255e | ||
|
|
e34c25b490 | ||
|
|
ea36333497 | ||
|
|
f93f958d66 | ||
|
|
8f3d36f4bc | ||
|
|
51364f8edd | ||
|
|
cb176aae90 | ||
|
|
9d573a92ce | ||
|
|
877ac27868 | ||
|
|
9c8321d3b4 | ||
|
|
e8bfb77b3d | ||
|
|
87ab8980b2 | ||
|
|
13de69080a | ||
|
|
8d439ff0cf | ||
|
|
f6d5ac4621 | ||
|
|
f37a40e138 | ||
|
|
21d8122257 | ||
|
|
0cf7d6aca1 | ||
|
|
94a7dae863 | ||
|
|
4e9bc95fff | ||
|
|
ad57733daf | ||
|
|
f4acc35cba | ||
|
|
f2cf1d4e03 | ||
|
|
b91740a91a | ||
|
|
a006cdb77b | ||
|
|
c93d95132d | ||
|
|
dd0c9baffd | ||
|
|
661276467c | ||
|
|
cf8e3420c0 | ||
|
|
9fe5c196aa | ||
|
|
76aa8a6494 | ||
|
|
9bcc4ed80f | ||
|
|
cd82a5393e | ||
|
|
00d87dba98 | ||
|
|
759f8ef910 | ||
|
|
841b242fb9 | ||
|
|
ae03d7237e | ||
|
|
ff64c6e363 | ||
|
|
820e4d78bf | ||
|
|
c7a5f7d023 | ||
|
|
a4798b81a8 | ||
|
|
48334aa4cd | ||
|
|
8b2d47587a | ||
|
|
c04379af19 | ||
|
|
d26bc886cf | ||
|
|
905f988d43 | ||
|
|
eff7841ec2 | ||
|
|
8526e89e12 | ||
|
|
bde47eb37b | ||
|
|
61716467df | ||
|
|
efa222fb55 | ||
|
|
abfa8a5f0f | ||
|
|
a438967336 | ||
|
|
47a9b34ea2 | ||
|
|
c4110eedf4 | ||
|
|
27218cda86 | ||
|
|
8c059fc1d0 | ||
|
|
dd39ba8c48 | ||
|
|
aa76fac3af | ||
|
|
e4f198ae42 | ||
|
|
dfdaa157a4 | ||
|
|
ea58a78f62 | ||
|
|
34f34521d9 | ||
|
|
ffcbb6a355 | ||
|
|
2510c5fd4a | ||
|
|
ed8c67ce7e | ||
|
|
16628a49f7 | ||
|
|
38ff6f2a32 | ||
|
|
af39282191 | ||
|
|
eab0bf44b2 | ||
|
|
a94912912e | ||
|
|
55ba65ac68 | ||
|
|
f3e698f1be | ||
|
|
14e41a31ef | ||
|
|
62bcd313e3 | ||
|
|
7a53013819 | ||
|
|
4a0f082158 | ||
|
|
f2bf2b5626 | ||
|
|
4e87ac72ea | ||
|
|
95e256293f | ||
|
|
22ab575dd0 | ||
|
|
abd706f435 | ||
|
|
4c00e14cd4 | ||
|
|
e45d7c4ab1 | ||
|
|
c37fdf47a4 | ||
|
|
9a2ea25308 | ||
|
|
560e5ce7bb | ||
|
|
dc0039b820 | ||
|
|
8bc499f221 | ||
|
|
93ce443467 | ||
|
|
f3c5ebd28b | ||
|
|
bcd46eea9d | ||
|
|
689bfd9568 | ||
|
|
dcf3ab2787 | ||
|
|
b4158f4f85 | ||
|
|
0a54929169 | ||
|
|
e34f94e0c1 | ||
|
|
d4c6ea46e6 | ||
|
|
203d4c7669 | ||
|
|
8cd6686803 | ||
|
|
aaddd9eea2 | ||
|
|
1e300ae35f | ||
|
|
c9b76c4a9a | ||
|
|
0e5bdc2f1e | ||
|
|
4b08d854bd | ||
|
|
115c167cfa | ||
|
|
b8d7806843 | ||
|
|
4c2bb9e052 | ||
|
|
618d866bfe | ||
|
|
66d1da2b55 | ||
|
|
ecbe5faef8 | ||
|
|
2160a2d9e8 | ||
|
|
39385135de | ||
|
|
014038a678 | ||
|
|
c60c3b7671 | ||
|
|
154c029f79 | ||
|
|
4b8ab4a00f | ||
|
|
9b86ac637f | ||
|
|
6ed32efe27 | ||
|
|
43e8a6d3d2 | ||
|
|
cf3f0f63c3 | ||
|
|
7a84262fee | ||
|
|
3748bccad2 | ||
|
|
0c486b0965 | ||
|
|
306cb5d2a3 | ||
|
|
b413f21d4b | ||
|
|
36624aff9c | ||
|
|
225a44ca4d | ||
|
|
cabeeb8dab | ||
|
|
9d03a6009b | ||
|
|
93fb978a5c | ||
|
|
6a6c256e05 | ||
|
|
9ca38cd8a1 | ||
|
|
066821dbec | ||
|
|
8242c88cbb | ||
|
|
484f9a0076 | ||
|
|
049903222a | ||
|
|
7ae82f471d | ||
|
|
2503ef2ee5 | ||
|
|
899c695414 | ||
|
|
990c9c2a49 | ||
|
|
f23436fe6d | ||
|
|
29816f7ab5 | ||
|
|
09e6fc9738 | ||
|
|
4e206812f0 | ||
|
|
53b6d813d5 | ||
|
|
06c749ffab | ||
|
|
5162411b38 | ||
|
|
ea049ff82f | ||
|
|
838629db3a | ||
|
|
080c5a19e6 | ||
|
|
bd9366bdfe | ||
|
|
206fa625fd | ||
|
|
58c3fda956 | ||
|
|
ccf7fb56c8 | ||
|
|
eeb5393a3f | ||
|
|
8dfe0dbaf2 | ||
|
|
817a4340e7 | ||
|
|
5506e8a2e2 | ||
|
|
aa51c03c5c | ||
|
|
40bd9bb20d | ||
|
|
41c9adf55a | ||
|
|
2c9245c06c | ||
|
|
d3d14d0b86 | ||
|
|
1da35968de | ||
|
|
2c01d1998f | ||
|
|
08fe04e87e | ||
|
|
8b9e317519 | ||
|
|
e20c411dff | ||
|
|
c854c5a18c | ||
|
|
af97b7a362 | ||
|
|
cfcf9fbfd1 | ||
|
|
971ee4adda | ||
|
|
df326f773f | ||
|
|
b8f475f188 | ||
|
|
cb24876f23 | ||
|
|
075842d69d | ||
|
|
77d31cdf42 | ||
|
|
b95191af06 | ||
|
|
7952f9ef60 | ||
|
|
d4d30ab9c9 | ||
|
|
a279ee02e0 | ||
|
|
d4bee49678 | ||
|
|
8b27bed4df | ||
|
|
979838f4b7 | ||
|
|
5807dd7f09 | ||
|
|
a8fa61ddb9 | ||
|
|
5979e9a8b0 | ||
|
|
0aee6c88ce | ||
|
|
f59570e39d | ||
|
|
006bc70387 | ||
|
|
57725828a6 | ||
|
|
f982b40166 | ||
|
|
5afcbfc4bf | ||
|
|
fe74f9d277 | ||
|
|
41d335e4e9 | ||
|
|
f0bb4cfeff | ||
|
|
445570c241 | ||
|
|
1b161d8c9e | ||
|
|
074d16605d | ||
|
|
68db707f7b | ||
|
|
6c0aaa643e | ||
|
|
81a0696e70 | ||
|
|
70b30a390f | ||
|
|
f461a0f9bb | ||
|
|
9c25244bc6 | ||
|
|
499e89e254 | ||
|
|
13f10f7e19 | ||
|
|
c98f0fb125 | ||
|
|
45cf787625 | ||
|
|
fea162a468 | ||
|
|
313b6952ae | ||
|
|
d46f22d2a1 | ||
|
|
c771abc8c3 | ||
|
|
957fbd8193 | ||
|
|
8d82aff41f | ||
|
|
b329d9f36b | ||
|
|
88e05d663a | ||
|
|
494d80e9de | ||
|
|
1e69371648 | ||
|
|
df1d42fa99 | ||
|
|
6791754874 | ||
|
|
34e038d3ca | ||
|
|
0231220c6f | ||
|
|
24910aacee | ||
|
|
77447975b2 | ||
|
|
3f276580c6 | ||
|
|
c674940487 | ||
|
|
f21c49e293 | ||
|
|
1eed1a1cb3 | ||
|
|
28ee511437 | ||
|
|
712f201bf2 | ||
|
|
4841f31a92 | ||
|
|
0c0456ada6 | ||
|
|
dac013fe7b | ||
|
|
965d742bb6 | ||
|
|
4f85110f75 | ||
|
|
8bd906c1a7 | ||
|
|
46e3a0ecb3 | ||
|
|
6ee645a976 | ||
|
|
3a1a3ceabc | ||
|
|
29de6b394e | ||
|
|
6f625f9222 | ||
|
|
de14b0ea15 | ||
|
|
e55c0c3e15 | ||
|
|
1dbfd70724 | ||
|
|
4059035050 | ||
|
|
b4b3ec0d2a | ||
|
|
d03ff962e3 | ||
|
|
af5d4ad87f | ||
|
|
453374d4e7 | ||
|
|
daa6d4cbb9 | ||
|
|
2996da65c3 | ||
|
|
b5a2ffc6a5 | ||
|
|
f1988f67f5 | ||
|
|
2fe37c461c | ||
|
|
be1725d2eb | ||
|
|
a1ce39dfda | ||
|
|
0cb79d1cd1 | ||
|
|
e8f4b08f66 | ||
|
|
cdf9cdef54 | ||
|
|
72ec500ffd | ||
|
|
c23f5e90dc | ||
|
|
0315e63782 | ||
|
|
9a28b24a0b | ||
|
|
5c72340a37 | ||
|
|
360888563f | ||
|
|
b8a513301e | ||
|
|
4f0cd24476 | ||
|
|
00d35c636b | ||
|
|
e150224cda | ||
|
|
fa4721319e | ||
|
|
6229d4932e | ||
|
|
7c20bddd17 | ||
|
|
2b4e318072 | ||
|
|
dd97df19fe | ||
|
|
9eb63a0d74 | ||
|
|
08412feae0 | ||
|
|
7bc847a7f8 | ||
|
|
3e0b2c5b32 | ||
|
|
be3c579c49 | ||
|
|
31ec643126 | ||
|
|
c94ba61a66 | ||
|
|
6fcc109b6b | ||
|
|
27c02ecb82 | ||
|
|
63a1a34f97 | ||
|
|
dcd7ad430f | ||
|
|
bc3f10cbc1 | ||
|
|
17214ffba7 | ||
|
|
f8330daa8b | ||
|
|
b7fb2483bf | ||
|
|
6e8248a0b8 | ||
|
|
c40fec7ae3 | ||
|
|
7c39e91b68 | ||
|
|
6d87f6ecb0 | ||
|
|
8030f3d4be | ||
|
|
e52fb1cacc | ||
|
|
b995d7bc31 | ||
|
|
ff9b500938 | ||
|
|
8e91f2128f | ||
|
|
c122171dd5 | ||
|
|
35d083ed52 | ||
|
|
a0529ef0ed | ||
|
|
ca845d6b98 | ||
|
|
b811fad3a6 | ||
|
|
0412387d02 | ||
|
|
f362215dd3 | ||
|
|
85349696c2 | ||
|
|
a1fe6d7965 | ||
|
|
92a4608a5b | ||
|
|
b8afd70a42 | ||
|
|
c36c210e66 | ||
|
|
5b2a7b8618 | ||
|
|
71c3b19a71 | ||
|
|
de3f7c2335 | ||
|
|
ef977b7d9e | ||
|
|
347c8a0715 | ||
|
|
ba20dbe590 | ||
|
|
b8be1de068 | ||
|
|
592feb409e | ||
|
|
4a38c02c14 | ||
|
|
d84b83b42c | ||
|
|
38cea9da27 | ||
|
|
da28af024c | ||
|
|
c69f8203ff | ||
|
|
eee5fd0c17 | ||
|
|
ef960c8aec | ||
|
|
f2f3741819 | ||
|
|
e802571726 | ||
|
|
644e999d1e | ||
|
|
5a14ec01ef | ||
|
|
3a6210873e | ||
|
|
25fab64e3f | ||
|
|
f69d1755c6 | ||
|
|
3ddb728043 | ||
|
|
ab2816e214 | ||
|
|
a5f3d7a9bd | ||
|
|
e52c1f0cae | ||
|
|
def3914abe | ||
|
|
677b676c77 | ||
|
|
3936f81d8f | ||
|
|
ade3edace4 | ||
|
|
4251d1fba5 | ||
|
|
d2b2be6a70 | ||
|
|
88ed4e121f | ||
|
|
17da427a9d | ||
|
|
abf4983597 | ||
|
|
f1c8ce35e8 | ||
|
|
32661b791a | ||
|
|
d42780daca | ||
|
|
e8a108d92d | ||
|
|
9e0f569eba | ||
|
|
48ffcaeb61 | ||
|
|
4c6006b2e4 | ||
|
|
18b86e8c46 | ||
|
|
b96f066329 | ||
|
|
0ec7ad6d4f | ||
|
|
358c09c881 | ||
|
|
ff85c6ce5a | ||
|
|
895b5aaa95 | ||
|
|
260143c4fb | ||
|
|
a53ae8f257 | ||
|
|
f8c39c3584 | ||
|
|
b5065d68bd | ||
|
|
80e679f4dc | ||
|
|
4d101d8bf6 | ||
|
|
0e0150bd3a | ||
|
|
e7010fd903 | ||
|
|
df43b89201 | ||
|
|
57df29e3ca | ||
|
|
ab52c91f47 | ||
|
|
290d252bb9 | ||
|
|
0dc03be96b | ||
|
|
e73f57f190 | ||
|
|
71b89eef3d | ||
|
|
f6ebc7a8d5 | ||
|
|
2f38256bcd | ||
|
|
a3cfdea9da | ||
|
|
cbfc7968ed | ||
|
|
f91cb04585 | ||
|
|
c620e18491 | ||
|
|
9e3a866ba3 | ||
|
|
be7b9e2192 | ||
|
|
d624a37f55 | ||
|
|
4a8650e45e | ||
|
|
a15fb01a54 | ||
|
|
7cf622bca3 | ||
|
|
9bffc994e7 | ||
|
|
29d5632d62 | ||
|
|
10d7436051 | ||
|
|
4b121520dd | ||
|
|
bdd0260fda | ||
|
|
5076001e41 | ||
|
|
28e2f731f7 | ||
|
|
11226d7d51 | ||
|
|
3a2c8f3e26 | ||
|
|
97ad1bc92f | ||
|
|
b19567ca19 | ||
|
|
8587d47ae8 | ||
|
|
b9ae123d03 | ||
|
|
411e6fc2a1 | ||
|
|
a5ebfbfc5d | ||
|
|
75dfdd236c | ||
|
|
264c85cfba | ||
|
|
2d36c6b812 | ||
|
|
6d94c1dfa2 | ||
|
|
2c643de7cb | ||
|
|
0c8bcf8b21 | ||
|
|
596948eeb3 | ||
|
|
3efc81d470 | ||
|
|
b307690cca | ||
|
|
e9efc9a0a3 | ||
|
|
81f5d4acd1 | ||
|
|
b49efd89a7 | ||
|
|
0d624c4cb6 | ||
|
|
8dee02e234 | ||
|
|
c93cbed9d2 | ||
|
|
4875f66b7a | ||
|
|
46a656fcbc | ||
|
|
af8fbde892 | ||
|
|
aec95709bc | ||
|
|
dcfe04861e | ||
|
|
d57a2dc29b | ||
|
|
fea980f1d9 | ||
|
|
1e29166c41 | ||
|
|
d337cbdd69 | ||
|
|
62286db249 | ||
|
|
4fdcbb5726 | ||
|
|
dfd9d60dfc | ||
|
|
4c548581d6 | ||
|
|
3d5762de86 | ||
|
|
1e6828d0bb | ||
|
|
3e42bed84e | ||
|
|
32f779f53d | ||
|
|
186aace5dd | ||
|
|
fd06247b06 | ||
|
|
397515274b | ||
|
|
ab1d37d006 | ||
|
|
49eb13ddee | ||
|
|
c07e3f3e66 | ||
|
|
715a33dcee | ||
|
|
18692b1797 | ||
|
|
043f77a06c | ||
|
|
c5bfe0f83e | ||
|
|
66b7fa6312 | ||
|
|
6e42607423 | ||
|
|
0b9f5d3ff2 | ||
|
|
f83c8965e1 | ||
|
|
e708653136 | ||
|
|
55a7f1f377 | ||
|
|
22aae7422e | ||
|
|
4ce3b7a946 | ||
|
|
f54cfb8a97 | ||
|
|
01ae7ab3e6 | ||
|
|
82cfe33d86 | ||
|
|
d715d6a118 | ||
|
|
d40f8d868a | ||
|
|
02a658321a | ||
|
|
5df447a02f | ||
|
|
a250bd3e81 | ||
|
|
a9604c3bb9 | ||
|
|
09e5734720 | ||
|
|
5fa6d1d022 | ||
|
|
556125145d | ||
|
|
b444e5f316 | ||
|
|
4b9902300d | ||
|
|
6282d743a8 | ||
|
|
f659bd24f3 | ||
|
|
1286bdb5be | ||
|
|
1ba119b451 | ||
|
|
4eeb5b3525 | ||
|
|
f3509689db | ||
|
|
7e61e3bd7c | ||
|
|
6b5f216fa4 | ||
|
|
2e8b745576 | ||
|
|
16e3264c84 | ||
|
|
e884a9cb89 | ||
|
|
72d9047da8 | ||
|
|
bec74e6f44 | ||
|
|
5cf9fde505 | ||
|
|
1ff614edec | ||
|
|
531e616278 | ||
|
|
346ca3e403 | ||
|
|
3aefd5a46d | ||
|
|
c531114f46 | ||
|
|
5517e510dc | ||
|
|
fbb1353827 | ||
|
|
9f67fa79db | ||
|
|
6c485ed1f6 | ||
|
|
cc267038e6 | ||
|
|
b11da8da0b | ||
|
|
9987fb24da | ||
|
|
bcdec67c2e | ||
|
|
e391f5fa39 | ||
|
|
5105b0a184 | ||
|
|
87637792ba | ||
|
|
eed8cb1b1d | ||
|
|
25d1d0a0cd | ||
|
|
2f6688c9c4 | ||
|
|
21ffe99226 | ||
|
|
2a568d2398 | ||
|
|
3c49face4c | ||
|
|
46564c8ca3 | ||
|
|
ccafdbac13 | ||
|
|
d12a99c962 | ||
|
|
87751ca277 | ||
|
|
52a6114721 | ||
|
|
d561694750 | ||
|
|
f7ace39516 | ||
|
|
58b351ce13 | ||
|
|
5c7b7e350f | ||
|
|
9ddde5762d | ||
|
|
631d7f2d85 | ||
|
|
e9739882f4 | ||
|
|
293145257c | ||
|
|
2daca853dc | ||
|
|
0f4fdda8c6 | ||
|
|
38cab62d64 | ||
|
|
58e3f0bbb9 | ||
|
|
f055905190 | ||
|
|
62f71b2221 | ||
|
|
ddbd64d19a | ||
|
|
f0d5b88ec4 | ||
|
|
aa034a2081 | ||
|
|
494e55769c | ||
|
|
2e68ba6fb7 | ||
|
|
df1cee1fc6 | ||
|
|
3cdf50bf3b | ||
|
|
a631cc1d3a | ||
|
|
fc08e353a4 | ||
|
|
dc511a0676 | ||
|
|
b280c052c7 | ||
|
|
6f50138d9e | ||
|
|
c81b951047 | ||
|
|
b3e60eaa32 | ||
|
|
451cfe5cd8 | ||
|
|
116dc1a1b3 | ||
|
|
9682ac8f11 | ||
|
|
b4b131c82a | ||
|
|
6fab67ca9f | ||
|
|
3a80434a1c | ||
|
|
487aaafb15 | ||
|
|
73095b1211 | ||
|
|
a35580e0dd | ||
|
|
da1cf7c3a1 | ||
|
|
dfdd476ac9 | ||
|
|
ab9af2bdc4 | ||
|
|
9d359a50e2 | ||
|
|
937138378b | ||
|
|
654cef2377 | ||
|
|
26dcff4db7 | ||
|
|
28d7d5ceec | ||
|
|
aada893f09 | ||
|
|
029a8c88ec | ||
|
|
aef66b08b3 | ||
|
|
e34d4e335b | ||
|
|
06146b322f | ||
|
|
8b6d9f33f6 | ||
|
|
fd3fa5b1b9 | ||
|
|
a1946442d1 | ||
|
|
2efce5dcb7 | ||
|
|
94a8a296c1 | ||
|
|
0b15a2f037 | ||
|
|
8abdc11cc9 | ||
|
|
16ade3abcf | ||
|
|
30bdb1a8f1 | ||
|
|
0a7577cec0 | ||
|
|
54c3a24e59 | ||
|
|
317437b32e | ||
|
|
a02718fd0a | ||
|
|
d9b847b3cb | ||
|
|
926ef7015d | ||
|
|
f5f35b3cdc | ||
|
|
31c298b556 | ||
|
|
837fb95a8a | ||
|
|
c8f8d6ac52 | ||
|
|
b1218bd77c | ||
|
|
0ed259e678 | ||
|
|
e73c99b28a | ||
|
|
ec4f3c69ec | ||
|
|
db07768133 | ||
|
|
f89c2db86c | ||
|
|
4070991f67 | ||
|
|
ba5c049f77 | ||
|
|
584312ec7f | ||
|
|
2afd415491 | ||
|
|
1105b5723b | ||
|
|
a37a041538 | ||
|
|
91117fa6bb | ||
|
|
f5b52bf98f | ||
|
|
ce02d8219c | ||
|
|
3865ea4777 | ||
|
|
9c78837113 | ||
|
|
e10d744e7b | ||
|
|
97026397bb | ||
|
|
f22c9fc51e | ||
|
|
923e384e43 | ||
|
|
3894cb427d | ||
|
|
18326d1c19 | ||
|
|
c465f732c0 | ||
|
|
ec6d8b14f3 | ||
|
|
17fa1c72b7 | ||
|
|
c36fa0fa7f | ||
|
|
9d200e7020 | ||
|
|
ce2772b994 | ||
|
|
94de6b43d9 | ||
|
|
3ef6e1f628 | ||
|
|
d61b14b369 | ||
|
|
3c2f2273d8 | ||
|
|
beeb075831 | ||
|
|
7fa66abf72 | ||
|
|
d42d24c60b | ||
|
|
96c47df151 | ||
|
|
ce92e6ac8f | ||
|
|
f96ec32be7 | ||
|
|
f2c85d038a | ||
|
|
213330379d | ||
|
|
493e6552d7 | ||
|
|
804c9ee463 | ||
|
|
8a0f828fb0 | ||
|
|
f357b56886 | ||
|
|
e2fc9a0432 | ||
|
|
8e062a94c7 | ||
|
|
3b4c846132 | ||
|
|
f342aa819f | ||
|
|
eea70ffc0a | ||
|
|
e39c448cb8 | ||
|
|
5a8d48ea36 | ||
|
|
85e5522f40 | ||
|
|
0ec737aa49 | ||
|
|
5525d2f232 | ||
|
|
909e1032f0 | ||
|
|
ffeda54820 | ||
|
|
23be4b7e95 | ||
|
|
2aa25969f7 | ||
|
|
3b7f7c6533 | ||
|
|
4ead1ae023 | ||
|
|
ed14d87722 | ||
|
|
f2e274f459 | ||
|
|
c4620d0f52 | ||
|
|
1a6872aa9f | ||
|
|
5e7378a60d | ||
|
|
5c17ec7242 | ||
|
|
48bf837e32 | ||
|
|
ed7e783693 | ||
|
|
89ea2e0180 | ||
|
|
efc8231ab6 | ||
|
|
c9773ad7a5 | ||
|
|
dffdc1a94d | ||
|
|
c018fec497 | ||
|
|
b8ad9abf68 | ||
|
|
a93eb68f24 | ||
|
|
120d20bfe4 | ||
|
|
c947437610 | ||
|
|
74690d1622 | ||
|
|
292c80c735 | ||
|
|
0dab9233f5 | ||
|
|
9e9dd83364 | ||
|
|
66f0e03aef | ||
|
|
fdc5739593 | ||
|
|
330508849f | ||
|
|
3b7573be7f | ||
|
|
18e04d6016 | ||
|
|
930a4b8115 | ||
|
|
b3438c19c8 | ||
|
|
43be0ede7c | ||
|
|
da1facab70 | ||
|
|
812653ccd7 | ||
|
|
5c3613f338 | ||
|
|
b8d2cfdd9d | ||
|
|
139673e010 | ||
|
|
30e5119438 | ||
|
|
e437059626 | ||
|
|
9e6293a8fb | ||
|
|
5f73bde402 | ||
|
|
9f64708ffa | ||
|
|
8eefec47dc | ||
|
|
8cbd6c4bca | ||
|
|
949c361026 | ||
|
|
56fd46d9c3 | ||
|
|
3cc379e2ed | ||
|
|
3fe4217f6a | ||
|
|
f198eabe71 | ||
|
|
95a85ce2e8 | ||
|
|
9a9678da51 | ||
|
|
0c115f35f9 | ||
|
|
de53ef0c91 | ||
|
|
9578c8739b | ||
|
|
bac239fe37 | ||
|
|
34e5783995 | ||
|
|
73bb30b5bb | ||
|
|
9826dfd026 | ||
|
|
363be2feb7 | ||
|
|
06749ea211 | ||
|
|
23db55e7c1 | ||
|
|
8a7779421a | ||
|
|
a25ed438b8 | ||
|
|
83f48bb65d | ||
|
|
9ef850c66a | ||
|
|
e708bc6be7 | ||
|
|
5375a08bfd | ||
|
|
081de07a27 | ||
|
|
fb0cb19c00 | ||
|
|
43b7f12415 | ||
|
|
c5704447eb | ||
|
|
521dba6d3b | ||
|
|
1771f7bfe1 | ||
|
|
3cc4ee4196 | ||
|
|
786cd21de8 | ||
|
|
5e2f201fcd | ||
|
|
5d8e3509c5 | ||
|
|
05ee1617fd | ||
|
|
c86e135096 | ||
|
|
0d1bd1335f | ||
|
|
21dba101f1 | ||
|
|
a80c4ee2bf | ||
|
|
765ef48a23 | ||
|
|
8c17a2a6c2 | ||
|
|
22bb218e10 | ||
|
|
e1dc6061bd | ||
|
|
29bf01190f | ||
|
|
0f3c1886d3 | ||
|
|
d2281782ed | ||
|
|
90cc36b453 | ||
|
|
fbd484583a | ||
|
|
959cf288e4 | ||
|
|
e59371887f | ||
|
|
9293689649 | ||
|
|
dd83e7405a | ||
|
|
1e259da375 | ||
|
|
74573a366f | ||
|
|
a1bdff6b24 | ||
|
|
4d8dc1b9dc | ||
|
|
ce133d153b | ||
|
|
99ddbe3b15 | ||
|
|
787a027e3f | ||
|
|
58370afdf0 | ||
|
|
3abdb444bc | ||
|
|
99c4fe06f5 | ||
|
|
5d5bae3b78 | ||
|
|
66df0a67a6 | ||
|
|
c6cbfb77d5 | ||
|
|
998a58e036 | ||
|
|
78fdbcd42e | ||
|
|
738184b5be | ||
|
|
01d797261b | ||
|
|
287d129137 | ||
|
|
9aa436a9c7 | ||
|
|
35bfe40d9e | ||
|
|
e7a09d9018 | ||
|
|
e776541ca0 | ||
|
|
046d17e574 | ||
|
|
848d70631c | ||
|
|
cb18bbb399 | ||
|
|
0c9b7474ca | ||
|
|
62cba17a75 | ||
|
|
a0c4661f03 | ||
|
|
848c6c3772 | ||
|
|
a289e52474 | ||
|
|
a750c56f24 | ||
|
|
a4bdab2026 | ||
|
|
191ff23e25 | ||
|
|
41f134590b | ||
|
|
ddc339a0a3 | ||
|
|
fa47f472b6 | ||
|
|
a0fb95e286 | ||
|
|
c71f8d49e1 | ||
|
|
44365f4c60 | ||
|
|
1fac387384 | ||
|
|
e053c945ee | ||
|
|
8855359527 | ||
|
|
d17f62d82f | ||
|
|
37aaa3d09c | ||
|
|
2caa1516ab | ||
|
|
3ec25fa63b | ||
|
|
662d8ce079 | ||
|
|
b5f92671ae | ||
|
|
b27e799526 | ||
|
|
5fda6d49cc | ||
|
|
5944bd13d3 | ||
|
|
9766aab59f | ||
|
|
7f7ba3b52a | ||
|
|
a4df21e99c | ||
|
|
80e7eedcae | ||
|
|
bc4dcaae53 | ||
|
|
3d188e1f31 | ||
|
|
c144b87e13 | ||
|
|
9e17e25427 | ||
|
|
984e7fc9d1 | ||
|
|
18df9a5aeb | ||
|
|
aa7e04c2e7 | ||
|
|
1a778e7f10 | ||
|
|
91de9715fe | ||
|
|
4302abd02b | ||
|
|
6843177377 | ||
|
|
82d3c258c9 | ||
|
|
ce6adccb9a | ||
|
|
c3cfd14c5e | ||
|
|
c11e31ba67 | ||
|
|
2330670661 | ||
|
|
1334f60b68 | ||
|
|
3f5db6d6fe | ||
|
|
803237940a | ||
|
|
98fbe6c7ce | ||
|
|
5ad72de3d3 | ||
|
|
fc54fefde5 | ||
|
|
f360827b20 | ||
|
|
c48a851d87 | ||
|
|
ea0067297c | ||
|
|
3b06f4cfe6 | ||
|
|
cef2e95722 | ||
|
|
aff7e93979 | ||
|
|
c63987efe2 | ||
|
|
09fd745c92 | ||
|
|
d7c9825255 | ||
|
|
6c90530f5c | ||
|
|
1e73d3574a | ||
|
|
0264236ae9 | ||
|
|
fd2b313961 | ||
|
|
427611d109 | ||
|
|
daf577537e | ||
|
|
e05f901bf3 | ||
|
|
c881de41e2 | ||
|
|
f5189bcea0 | ||
|
|
be7396e3ab | ||
|
|
350a5b0911 | ||
|
|
01b342f7ed | ||
|
|
bd1ba565f4 | ||
|
|
0b6cca7a28 | ||
|
|
fa4c266cb7 | ||
|
|
7f01fb2b2a | ||
|
|
3088df441b | ||
|
|
20cb01fd9e | ||
|
|
8b7852129b | ||
|
|
0dd4fecc06 | ||
|
|
499ead3aae | ||
|
|
5afa58fee4 | ||
|
|
9e62d791c5 | ||
|
|
e8ae0db44c |
@@ -1,4 +1,5 @@
|
||||
# http://editorconfig.org
|
||||
|
||||
root = true
|
||||
|
||||
[*]
|
||||
18
.github/CONTRIBUTING.md
vendored
Normal file
@@ -0,0 +1,18 @@
|
||||
# Contributing to Ionic Native
|
||||
|
||||
|
||||
## Feature request?
|
||||
Have a plugin you'd like to see supported? Since Ionic Native is a thin wrapper around existing Cordova plugins, adding support for new plugins is as easy as creating a new wrapper for whatever plugin you'd like to add.
|
||||
|
||||
Take a look at our [Developer Guide](https://github.com/driftyco/ionic-native/blob/master/DEVELOPER.md) for more info on adding new plugins.
|
||||
|
||||
## Have an issue?
|
||||
#### There are no rules, but here are a few things to consider:
|
||||
###### Before you submit an issue:
|
||||
* Do a quick search to see if there are similar issues
|
||||
* **Check that you are using the latest version of** `ionic-native`
|
||||
|
||||
###### Still having problems? submit an issue with the following details:
|
||||
* Short description of the issue
|
||||
* Steps to reproduce
|
||||
* Stack trace (if available)
|
||||
4
.gitignore
vendored
@@ -1 +1,5 @@
|
||||
.DS_Store
|
||||
node_modules/
|
||||
.idea
|
||||
dist/
|
||||
scripts/ionic-native-bower
|
||||
|
||||
748
CHANGELOG.md
Normal file
@@ -0,0 +1,748 @@
|
||||
<a name="2.2.2"></a>
|
||||
## [2.2.2](https://github.com/driftyco/ionic-native/compare/v2.2.1...v2.2.2) (2016-10-12)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **file:** getFreeDiskSpace now works ([d2f42ef](https://github.com/driftyco/ionic-native/commit/d2f42ef))
|
||||
* **file:** read methods can accept Blobs too ([276d61b](https://github.com/driftyco/ionic-native/commit/276d61b))
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **file:** getFile and getDirectory are now public ([5c92455](https://github.com/driftyco/ionic-native/commit/5c92455)), closes [#657](https://github.com/driftyco/ionic-native/issues/657)
|
||||
|
||||
|
||||
|
||||
<a name="2.2.1"></a>
|
||||
## [2.2.1](https://github.com/driftyco/ionic-native/compare/v2.2.0...v2.2.1) (2016-10-12)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **diagnostic:** misspelled getContactsAuthorizationStatus method ([#678](https://github.com/driftyco/ionic-native/issues/678)) ([bff4862](https://github.com/driftyco/ionic-native/commit/bff4862))
|
||||
* **file:** fix writeFile method ([842a80d](https://github.com/driftyco/ionic-native/commit/842a80d))
|
||||
* **file:** last parameter for writeFile now only accepts options ([5710eb7](https://github.com/driftyco/ionic-native/commit/5710eb7))
|
||||
* **http:** export via window.IonicNative ([#675](https://github.com/driftyco/ionic-native/issues/675)) ([cf7abe1](https://github.com/driftyco/ionic-native/commit/cf7abe1))
|
||||
* **location-accuracy:** accuracy param is number ([c2d4f1c](https://github.com/driftyco/ionic-native/commit/c2d4f1c)), closes [#676](https://github.com/driftyco/ionic-native/issues/676)
|
||||
* **themeablebrowser:** add missed options ([#680](https://github.com/driftyco/ionic-native/issues/680)) ([e28e5b0](https://github.com/driftyco/ionic-native/commit/e28e5b0))
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **file:** resolveLocalFilesystemUrl and resolveDirectoryUrl are now public methods ([542ff4c](https://github.com/driftyco/ionic-native/commit/542ff4c)), closes [#657](https://github.com/driftyco/ionic-native/issues/657)
|
||||
|
||||
|
||||
|
||||
<a name="2.2.0"></a>
|
||||
# [2.2.0](https://github.com/driftyco/ionic-native/compare/v2.1.9...v2.2.0) (2016-10-11)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **native-transitions:** add missing interface properties ([35c8bbd](https://github.com/driftyco/ionic-native/commit/35c8bbd))
|
||||
* **onesignal:** update to match latest api ([#671](https://github.com/driftyco/ionic-native/issues/671)) ([7c6e6d8](https://github.com/driftyco/ionic-native/commit/7c6e6d8)), closes [#667](https://github.com/driftyco/ionic-native/issues/667)
|
||||
* **thmeable-browser:** fix the name of the plugin ([#663](https://github.com/driftyco/ionic-native/issues/663)) ([1368175](https://github.com/driftyco/ionic-native/commit/1368175))
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **http:** add cordovaHTTP wrapper ([#674](https://github.com/driftyco/ionic-native/issues/674)) ([f0961c7](https://github.com/driftyco/ionic-native/commit/f0961c7))
|
||||
|
||||
|
||||
|
||||
<a name="2.1.9"></a>
|
||||
## [2.1.9](https://github.com/driftyco/ionic-native/compare/v2.1.8...v2.1.9) (2016-10-09)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **paypal:** add optional details param to paypalpayment ([7200845](https://github.com/driftyco/ionic-native/commit/7200845))
|
||||
* **paypal:** problems with selection of PayPal environment ([#662](https://github.com/driftyco/ionic-native/issues/662)) ([3dd6a92](https://github.com/driftyco/ionic-native/commit/3dd6a92))
|
||||
|
||||
|
||||
|
||||
<a name="2.1.8"></a>
|
||||
## [2.1.8](https://github.com/driftyco/ionic-native/compare/v2.1.7...v2.1.8) (2016-10-08)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **googlemaps:** fixes GoogleMapsLatLng class ([11653ce](https://github.com/driftyco/ionic-native/commit/11653ce))
|
||||
|
||||
|
||||
|
||||
<a name="2.1.7"></a>
|
||||
## [2.1.7](https://github.com/driftyco/ionic-native/compare/v2.1.6...v2.1.7) (2016-10-07)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **paypal:** fixed currency code not found issue ([#653](https://github.com/driftyco/ionic-native/issues/653)) ([598f8a9](https://github.com/driftyco/ionic-native/commit/598f8a9))
|
||||
|
||||
|
||||
|
||||
<a name="2.1.6"></a>
|
||||
## [2.1.6](https://github.com/driftyco/ionic-native/compare/v2.1.5...v2.1.6) (2016-10-06)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **paypal:** fix helper classes ([f002657](https://github.com/driftyco/ionic-native/commit/f002657))
|
||||
|
||||
|
||||
|
||||
<a name="2.1.5"></a>
|
||||
## [2.1.5](https://github.com/driftyco/ionic-native/compare/v2.1.4...v2.1.5) (2016-10-06)
|
||||
|
||||
|
||||
|
||||
<a name="2.1.4"></a>
|
||||
## [2.1.4](https://github.com/driftyco/ionic-native/compare/v2.1.3...v2.1.4) (2016-10-06)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **google-analytics:** specify successIndex and errorIndex for methods with optional params ([6f23bef](https://github.com/driftyco/ionic-native/commit/6f23bef))
|
||||
|
||||
|
||||
|
||||
<a name="2.1.3"></a>
|
||||
## [2.1.3](https://github.com/driftyco/ionic-native/compare/v2.1.2...v2.1.3) (2016-10-06)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **google-analytics:** add missing methods, fix return types ([77b0277](https://github.com/driftyco/ionic-native/commit/77b0277))
|
||||
* **google-analytics:** add newSession param ([f62e108](https://github.com/driftyco/ionic-native/commit/f62e108))
|
||||
* **google-analytics:** fix depreciated plugin reference ([40325ca](https://github.com/driftyco/ionic-native/commit/40325ca))
|
||||
|
||||
|
||||
|
||||
<a name="2.1.2"></a>
|
||||
## [2.1.2](https://github.com/driftyco/ionic-native/compare/v2.1.1...v2.1.2) (2016-10-06)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **googlemaps:** add missing properties ([72a694a](https://github.com/driftyco/ionic-native/commit/72a694a)), closes [#642](https://github.com/driftyco/ionic-native/issues/642)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **zBar:** add zBar barcode scanner plugin ([#634](https://github.com/driftyco/ionic-native/issues/634)) ([bbbbb3e](https://github.com/driftyco/ionic-native/commit/bbbbb3e))
|
||||
|
||||
|
||||
|
||||
<a name="2.1.1"></a>
|
||||
## [2.1.1](https://github.com/driftyco/ionic-native/compare/v2.1.0...v2.1.1) (2016-10-03)
|
||||
|
||||
|
||||
|
||||
<a name="2.1.0"></a>
|
||||
# [2.1.0](https://github.com/driftyco/ionic-native/compare/v2.0.3...v2.1.0) (2016-10-03)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **calendar:** fixed modifyEventWithOptions and related interface ([80ff2f3](https://github.com/driftyco/ionic-native/commit/80ff2f3))
|
||||
* **googlemaps:** CameraPosition target can now be GoogleMapsLatLng[] ([#587](https://github.com/driftyco/ionic-native/issues/587)) ([8d21f5f](https://github.com/driftyco/ionic-native/commit/8d21f5f))
|
||||
* **googlemaps:** typo in GoogleMapsTileOverlayOptions ([#589](https://github.com/driftyco/ionic-native/issues/589)) ([be2c198](https://github.com/driftyco/ionic-native/commit/be2c198))
|
||||
* **isdebug:** export IsDebug class ([#578](https://github.com/driftyco/ionic-native/issues/578)) ([c573332](https://github.com/driftyco/ionic-native/commit/c573332))
|
||||
* **media:** add status as a parmeter instead of property of instance ([58a99a1](https://github.com/driftyco/ionic-native/commit/58a99a1))
|
||||
* **paypal:** fix typings, add PayPalItem and PayPalPaymentDetails ([5d13ba0](https://github.com/driftyco/ionic-native/commit/5d13ba0))
|
||||
* **power-management:** fix repo and pluginref ([#603](https://github.com/driftyco/ionic-native/issues/603)) ([d6060a9](https://github.com/driftyco/ionic-native/commit/d6060a9))
|
||||
* **push:** Add support for passing notification id into finish ([#600](https://github.com/driftyco/ionic-native/issues/600)) ([16f05c3](https://github.com/driftyco/ionic-native/commit/16f05c3))
|
||||
* **social-sharing:** shareWithOptions method signature ([#598](https://github.com/driftyco/ionic-native/issues/598)) ([2ed84b1](https://github.com/driftyco/ionic-native/commit/2ed84b1)), closes [/github.com/EddyVerbruggen/SocialSharing-PhoneGap-Plugin/blob/master/src/android/nl/xservices/plugins/SocialSharing.java#L209](https://github.com//github.com/EddyVerbruggen/SocialSharing-PhoneGap-Plugin/blob/master/src/android/nl/xservices/plugins/SocialSharing.java/issues/L209)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **ble:** add startScanWithOptions ([79f0a3f](https://github.com/driftyco/ionic-native/commit/79f0a3f)), closes [#539](https://github.com/driftyco/ionic-native/issues/539)
|
||||
* **googlemaps:** support bounds in Geocoder ([#599](https://github.com/driftyco/ionic-native/issues/599)) ([66e9e46](https://github.com/driftyco/ionic-native/commit/66e9e46))
|
||||
* **location-accuracy:** add location accuracy plugin ([#583](https://github.com/driftyco/ionic-native/issues/583)) ([60b7c74](https://github.com/driftyco/ionic-native/commit/60b7c74)), closes [#484](https://github.com/driftyco/ionic-native/issues/484)
|
||||
* **plugin:** add getPlugin to plugin interface. Fixes [#582](https://github.com/driftyco/ionic-native/issues/582) ([d45a2b5](https://github.com/driftyco/ionic-native/commit/d45a2b5))
|
||||
* **plugin:** checkInstall w/ warning msg ([47112c7](https://github.com/driftyco/ionic-native/commit/47112c7))
|
||||
* **stepcounter:** add stepcounter plugin ([#607](https://github.com/driftyco/ionic-native/issues/607)) ([a99b753](https://github.com/driftyco/ionic-native/commit/a99b753))
|
||||
* **themable-browser:** add ThemableBrowser plugin ([b9151bc](https://github.com/driftyco/ionic-native/commit/b9151bc)), closes [#549](https://github.com/driftyco/ionic-native/issues/549)
|
||||
* **themable-browser:** add ThemableBrowser plugin ([972d63b](https://github.com/driftyco/ionic-native/commit/972d63b)), closes [#549](https://github.com/driftyco/ionic-native/issues/549)
|
||||
|
||||
|
||||
|
||||
<a name="2.0.3"></a>
|
||||
## [2.0.3](https://github.com/driftyco/ionic-native/compare/v1.3.21...v2.0.3) (2016-09-24)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **call-number:** number should be a string ([763ad1b](https://github.com/driftyco/ionic-native/commit/763ad1b)), closes [#545](https://github.com/driftyco/ionic-native/issues/545)
|
||||
* **googlemaps:** CameraPosition target can now be LatLngBounds ([23fc908](https://github.com/driftyco/ionic-native/commit/23fc908)), closes [#547](https://github.com/driftyco/ionic-native/issues/547)
|
||||
* **npm:** duplicate typings ([e50b961](https://github.com/driftyco/ionic-native/commit/e50b961))
|
||||
* **plugins:** export VideoPlayer. Fixes [#563](https://github.com/driftyco/ionic-native/issues/563) ([4292959](https://github.com/driftyco/ionic-native/commit/4292959))
|
||||
* **ts:** use old ts version for 1.3.x [#567](https://github.com/driftyco/ionic-native/issues/567) ([6a19c8c](https://github.com/driftyco/ionic-native/commit/6a19c8c))
|
||||
* **webintent:** add type param. Fixes [#564](https://github.com/driftyco/ionic-native/issues/564) ([a0b6b10](https://github.com/driftyco/ionic-native/commit/a0b6b10))
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **background-geolocation:** add showAppSettings function ([281575b](https://github.com/driftyco/ionic-native/commit/281575b)), closes [#548](https://github.com/driftyco/ionic-native/issues/548)
|
||||
* **BackgroundGeolocation:** code cleanup ([3170686](https://github.com/driftyco/ionic-native/commit/3170686))
|
||||
* **BackgroundGeolocation:** Update to the latest version ([808a75e](https://github.com/driftyco/ionic-native/commit/808a75e))
|
||||
* **BackgroundGeolocation:** Update to the latest version ([919e8da](https://github.com/driftyco/ionic-native/commit/919e8da))
|
||||
* **build:** Support ES2015 modules ([4014972](https://github.com/driftyco/ionic-native/commit/4014972))
|
||||
* **emailcomposer:** use new supported plugin. [#568](https://github.com/driftyco/ionic-native/issues/568) ([a092a31](https://github.com/driftyco/ionic-native/commit/a092a31))
|
||||
* **localNotifications:** added register and has permission functions ([#536](https://github.com/driftyco/ionic-native/issues/536)) ([c83b043](https://github.com/driftyco/ionic-native/commit/c83b043))
|
||||
* **npm:** typescript 2.0.2 ([e7e45f6](https://github.com/driftyco/ionic-native/commit/e7e45f6))
|
||||
* **plugin:** cordova function override. fixes [#437](https://github.com/driftyco/ionic-native/issues/437) ([f60d08b](https://github.com/driftyco/ionic-native/commit/f60d08b))
|
||||
* **push:** add coldstart property. Fixes [#559](https://github.com/driftyco/ionic-native/issues/559) ([48196da](https://github.com/driftyco/ionic-native/commit/48196da))
|
||||
* **scripts:** publish script with npm and bower. Fixes [#448](https://github.com/driftyco/ionic-native/issues/448) ([3903fee](https://github.com/driftyco/ionic-native/commit/3903fee))
|
||||
|
||||
|
||||
|
||||
<a name="1.3.21"></a>
|
||||
## [1.3.21](https://github.com/driftyco/ionic-native/compare/v1.3.20...v1.3.21) (2016-09-07)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **base64togallery:** fixes callbacks ([#513](https://github.com/driftyco/ionic-native/issues/513)) ([1db1374](https://github.com/driftyco/ionic-native/commit/1db1374))
|
||||
* **diagnostic:** Add DENIED_ALWAYS to permissionStatus, also some code formatting ([9d573a9](https://github.com/driftyco/ionic-native/commit/9d573a9))
|
||||
* **diagnostic:** Fix diagnostic objects ([cb176aa](https://github.com/driftyco/ionic-native/commit/cb176aa))
|
||||
* **diagnostic:** Fix permissionStatus object ([8f3d36f](https://github.com/driftyco/ionic-native/commit/8f3d36f))
|
||||
* **diagnostic:** Fix typo ([f93f958](https://github.com/driftyco/ionic-native/commit/f93f958))
|
||||
* **file:** set exclusive to true when replace is false ([7910493](https://github.com/driftyco/ionic-native/commit/7910493)), closes [#516](https://github.com/driftyco/ionic-native/issues/516)
|
||||
* **geolocation:** retain Observable even during an error condition ([#532](https://github.com/driftyco/ionic-native/issues/532)) ([26dead9](https://github.com/driftyco/ionic-native/commit/26dead9))
|
||||
* **googlemaps:** moveCamera and animateCamera now return a Promise ([d03d70f](https://github.com/driftyco/ionic-native/commit/d03d70f)), closes [#511](https://github.com/driftyco/ionic-native/issues/511)
|
||||
* **install-instructions:** This fixes install instructions for deeplinks, facebook and googlemaps ([#499](https://github.com/driftyco/ionic-native/issues/499)) ([877ac27](https://github.com/driftyco/ionic-native/commit/877ac27))
|
||||
* **media:** nest the constructor logic ([a566240](https://github.com/driftyco/ionic-native/commit/a566240))
|
||||
* **mixpanel:** Make eventProperties optional ([#501](https://github.com/driftyco/ionic-native/issues/501)) ([51364f8](https://github.com/driftyco/ionic-native/commit/51364f8))
|
||||
* **ng1:** fail gracefully when angular 1 promises can't be retrieved ([d135dc2](https://github.com/driftyco/ionic-native/commit/d135dc2))
|
||||
* **ng1:** grab injector from app. [#451](https://github.com/driftyco/ionic-native/issues/451) ([2dc68a4](https://github.com/driftyco/ionic-native/commit/2dc68a4))
|
||||
* remove CanvasCamera plugin ([c75f898](https://github.com/driftyco/ionic-native/commit/c75f898))
|
||||
* **social-sharing:** shareViaEmail now resolves/rejects when not providing optional args ([c76de34](https://github.com/driftyco/ionic-native/commit/c76de34))
|
||||
* **social-sharing:** various fixes ([#520](https://github.com/driftyco/ionic-native/issues/520)) ([4f97164](https://github.com/driftyco/ionic-native/commit/4f97164))
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **file:** adds chunked blob writing ([#529](https://github.com/driftyco/ionic-native/issues/529)) ([bbbd0d5](https://github.com/driftyco/ionic-native/commit/bbbd0d5))
|
||||
* **file:** allows writeFile and writeExistingFile to accept Blob ([#527](https://github.com/driftyco/ionic-native/issues/527)) ([393e9d0](https://github.com/driftyco/ionic-native/commit/393e9d0))
|
||||
* **googlemaps:** can pass HTMLElement to constructor ([dff034a](https://github.com/driftyco/ionic-native/commit/dff034a))
|
||||
|
||||
|
||||
|
||||
<a name="1.3.20"></a>
|
||||
## [1.3.20](https://github.com/driftyco/ionic-native/compare/v1.3.19...v1.3.20) (2016-08-27)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **GoogleMaps:** Fixes [#452](https://github.com/driftyco/ionic-native/issues/452) ([#498](https://github.com/driftyco/ionic-native/issues/498)) ([f6d5ac4](https://github.com/driftyco/ionic-native/commit/f6d5ac4))
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **canvas-camera:** add CanvasCamera support ([ad57733](https://github.com/driftyco/ionic-native/commit/ad57733))
|
||||
* **file-chooser:** add file chooser plugin support ([#495](https://github.com/driftyco/ionic-native/issues/495)) ([94a7dae](https://github.com/driftyco/ionic-native/commit/94a7dae))
|
||||
* **file-opener:** add file opener support ([#497](https://github.com/driftyco/ionic-native/issues/497)) ([21d8122](https://github.com/driftyco/ionic-native/commit/21d8122)), closes [#295](https://github.com/driftyco/ionic-native/issues/295)
|
||||
* **music-controls:** add music controls plugin support ([#494](https://github.com/driftyco/ionic-native/issues/494)) ([4e9bc95](https://github.com/driftyco/ionic-native/commit/4e9bc95))
|
||||
* **youtube:** add Youtube video player plugin support ([#496](https://github.com/driftyco/ionic-native/issues/496)) ([0cf7d6a](https://github.com/driftyco/ionic-native/commit/0cf7d6a))
|
||||
|
||||
|
||||
|
||||
<a name="1.3.19"></a>
|
||||
## [1.3.19](https://github.com/driftyco/ionic-native/compare/v1.3.18...v1.3.19) (2016-08-27)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **mixpanel:** implement CordovaProperty correctly ([dd0c9ba](https://github.com/driftyco/ionic-native/commit/dd0c9ba))
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **call-number:** add support for CallNumber plugin ([#487](https://github.com/driftyco/ionic-native/issues/487)) ([759f8ef](https://github.com/driftyco/ionic-native/commit/759f8ef))
|
||||
* **market:** add Market plugin support ([#490](https://github.com/driftyco/ionic-native/issues/490)) ([9bcc4ed](https://github.com/driftyco/ionic-native/commit/9bcc4ed))
|
||||
* **mixpanel:** add mixpanel support ([#492](https://github.com/driftyco/ionic-native/issues/492)) ([cf8e342](https://github.com/driftyco/ionic-native/commit/cf8e342))
|
||||
* **native-page-transitions:** add support for Native Page Transitions plugin ([#488](https://github.com/driftyco/ionic-native/issues/488)) ([00d87db](https://github.com/driftyco/ionic-native/commit/00d87db))
|
||||
* **nfc:** add nfc support ([#493](https://github.com/driftyco/ionic-native/issues/493)) ([76aa8a6](https://github.com/driftyco/ionic-native/commit/76aa8a6))
|
||||
* **paypal:** add PayPal support ([#491](https://github.com/driftyco/ionic-native/issues/491)) ([9fe5c19](https://github.com/driftyco/ionic-native/commit/9fe5c19))
|
||||
* **power-management:** add power management support ([#489](https://github.com/driftyco/ionic-native/issues/489)) ([cd82a53](https://github.com/driftyco/ionic-native/commit/cd82a53))
|
||||
* **streaming-media:** add streaming media support ([#486](https://github.com/driftyco/ionic-native/issues/486)) ([841b242](https://github.com/driftyco/ionic-native/commit/841b242))
|
||||
|
||||
|
||||
|
||||
<a name="1.3.18"></a>
|
||||
## [1.3.18](https://github.com/driftyco/ionic-native/compare/v1.3.17...v1.3.18) (2016-08-26)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **facebook:** export interfaces ([c4110ee](https://github.com/driftyco/ionic-native/commit/c4110ee))
|
||||
* **File:** fixed readFileAs ([#479](https://github.com/driftyco/ionic-native/issues/479)) ([eff7841](https://github.com/driftyco/ionic-native/commit/eff7841))
|
||||
* **geofence:** fix event listeners ([efa222f](https://github.com/driftyco/ionic-native/commit/efa222f))
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **code-push:** add wrapper for cordova-plugin-code-push ([#420](https://github.com/driftyco/ionic-native/issues/420)) ([905f988](https://github.com/driftyco/ionic-native/commit/905f988))
|
||||
* **diagnostic:** add full plugin functionality ([#424](https://github.com/driftyco/ionic-native/issues/424)) ([47a9b34](https://github.com/driftyco/ionic-native/commit/47a9b34)), closes [#224](https://github.com/driftyco/ionic-native/issues/224)
|
||||
* **geofence:** Adds geofence plugin ([#442](https://github.com/driftyco/ionic-native/issues/442)) ([a438967](https://github.com/driftyco/ionic-native/commit/a438967))
|
||||
* **inAppPurchase:** add inAppPurhcase plugin ([#423](https://github.com/driftyco/ionic-native/issues/423)) ([8526e89](https://github.com/driftyco/ionic-native/commit/8526e89))
|
||||
* **IsDebug:** add the IsDebug plugin ([#475](https://github.com/driftyco/ionic-native/issues/475)) ([dd39ba8](https://github.com/driftyco/ionic-native/commit/dd39ba8))
|
||||
|
||||
|
||||
|
||||
<a name="1.3.17"></a>
|
||||
## [1.3.17](https://github.com/driftyco/ionic-native/compare/v1.3.16...v1.3.17) (2016-08-23)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* add the reject function at the expected errorIndex position in the args array ([#436](https://github.com/driftyco/ionic-native/issues/436)) ([4e87ac7](https://github.com/driftyco/ionic-native/commit/4e87ac7))
|
||||
* **camera-preview:** changes implementation to match Cordova plugin ([#441](https://github.com/driftyco/ionic-native/issues/441)) ([55ba65a](https://github.com/driftyco/ionic-native/commit/55ba65a))
|
||||
* **file:** fixes exclusive option ([#459](https://github.com/driftyco/ionic-native/issues/459)) ([14e41a3](https://github.com/driftyco/ionic-native/commit/14e41a3))
|
||||
* **file:** initialize writeFile options ([#468](https://github.com/driftyco/ionic-native/issues/468)) ([16628a4](https://github.com/driftyco/ionic-native/commit/16628a4))
|
||||
* **nativeaudio:** fix plugin reference ([2510c5f](https://github.com/driftyco/ionic-native/commit/2510c5f))
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **instagram:** add instagram sharing plugin ([#453](https://github.com/driftyco/ionic-native/issues/453)) ([f3e698f](https://github.com/driftyco/ionic-native/commit/f3e698f)), closes [#307](https://github.com/driftyco/ionic-native/issues/307)
|
||||
* **VideoEditor:** add video editor plugin. ([#457](https://github.com/driftyco/ionic-native/issues/457)) ([7a53013](https://github.com/driftyco/ionic-native/commit/7a53013)), closes [#316](https://github.com/driftyco/ionic-native/issues/316)
|
||||
|
||||
|
||||
|
||||
<a name="1.3.16"></a>
|
||||
## [1.3.16](https://github.com/driftyco/ionic-native/compare/v1.3.15...v1.3.16) (2016-08-15)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **photo-viewer:** method is static ([8bc499f](https://github.com/driftyco/ionic-native/commit/8bc499f))
|
||||
|
||||
|
||||
|
||||
<a name="1.3.15"></a>
|
||||
## [1.3.15](https://github.com/driftyco/ionic-native/compare/v1.3.14...v1.3.15) (2016-08-15)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **google-analytics:** add missing functions ([689bfd9](https://github.com/driftyco/ionic-native/commit/689bfd9))
|
||||
* **TTS:** add tts plugin ([#431](https://github.com/driftyco/ionic-native/issues/431)) ([dcf3ab2](https://github.com/driftyco/ionic-native/commit/dcf3ab2)), closes [#311](https://github.com/driftyco/ionic-native/issues/311)
|
||||
|
||||
|
||||
|
||||
<a name="1.3.14"></a>
|
||||
## [1.3.14](https://github.com/driftyco/ionic-native/compare/v1.3.12...v1.3.14) (2016-08-15)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **datepicker:** date now accepts Date, string, or number ([#428](https://github.com/driftyco/ionic-native/issues/428)) ([aaddd9e](https://github.com/driftyco/ionic-native/commit/aaddd9e)), closes [#354](https://github.com/driftyco/ionic-native/issues/354)
|
||||
* **inappbrowser:** fix event listener ([4b08d85](https://github.com/driftyco/ionic-native/commit/4b08d85))
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **native-audio:** Add native audio plugin ([#427](https://github.com/driftyco/ionic-native/issues/427)) ([8cd6686](https://github.com/driftyco/ionic-native/commit/8cd6686)), closes [#315](https://github.com/driftyco/ionic-native/issues/315)
|
||||
* **shake:** add Shake plugin ([#426](https://github.com/driftyco/ionic-native/issues/426)) ([203d4c7](https://github.com/driftyco/ionic-native/commit/203d4c7)), closes [#313](https://github.com/driftyco/ionic-native/issues/313)
|
||||
* **zip:** add zip plugin ([#430](https://github.com/driftyco/ionic-native/issues/430)) ([e34f94e](https://github.com/driftyco/ionic-native/commit/e34f94e)), closes [#421](https://github.com/driftyco/ionic-native/issues/421)
|
||||
|
||||
|
||||
|
||||
<a name="1.3.12"></a>
|
||||
## [1.3.12](https://github.com/driftyco/ionic-native/compare/v1.3.11...v1.3.12) (2016-08-13)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **inappbrowser:** fix event listener ([618d866](https://github.com/driftyco/ionic-native/commit/618d866))
|
||||
|
||||
|
||||
|
||||
<a name="1.3.11"></a>
|
||||
## [1.3.11](https://github.com/driftyco/ionic-native/compare/v1.3.10...v1.3.11) (2016-08-11)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **backgroundGeolocation:** update config and move to sync. Fixes [#331](https://github.com/driftyco/ionic-native/issues/331) ([4e20681](https://github.com/driftyco/ionic-native/commit/4e20681))
|
||||
* **camera:** camera options should be optional. Fixes [#413](https://github.com/driftyco/ionic-native/issues/413) ([#417](https://github.com/driftyco/ionic-native/issues/417)) ([c60c3b7](https://github.com/driftyco/ionic-native/commit/c60c3b7))
|
||||
* **index:** export Geolocation interfaces. ([#404](https://github.com/driftyco/ionic-native/issues/404)) ([0c486b0](https://github.com/driftyco/ionic-native/commit/0c486b0))
|
||||
* **ng1:** Copy object properly. Fixes [#357](https://github.com/driftyco/ionic-native/issues/357) ([9ca38cd](https://github.com/driftyco/ionic-native/commit/9ca38cd))
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **file:** alternate file implementation ([#283](https://github.com/driftyco/ionic-native/issues/283)) ([6ed32ef](https://github.com/driftyco/ionic-native/commit/6ed32ef))
|
||||
* **GoogleAnalytics:** Add campaign measurement tracking ([#405](https://github.com/driftyco/ionic-native/issues/405)) ([cf3f0f6](https://github.com/driftyco/ionic-native/commit/cf3f0f6))
|
||||
* **GoogleMaps:** Allow specify enableHighAccuracy option that attempt to get your location with highest accuracy ([#410](https://github.com/driftyco/ionic-native/issues/410)) ([43e8a6d](https://github.com/driftyco/ionic-native/commit/43e8a6d))
|
||||
* **ibeacon:** using option otherPromise instead of sync ([#388](https://github.com/driftyco/ionic-native/issues/388)) ([306cb5d](https://github.com/driftyco/ionic-native/commit/306cb5d))
|
||||
* **inappbrowser:** implement instance based wrapper ([#305](https://github.com/driftyco/ionic-native/issues/305)) ([4b8ab4a](https://github.com/driftyco/ionic-native/commit/4b8ab4a))
|
||||
* **keyboard:** enable hideKeyboardAccessoryBar function ([#398](https://github.com/driftyco/ionic-native/issues/398)) ([7a84262](https://github.com/driftyco/ionic-native/commit/7a84262)), closes [#394](https://github.com/driftyco/ionic-native/issues/394)
|
||||
* **photo-viewer:** add wrapper for plugin ([#359](https://github.com/driftyco/ionic-native/issues/359)) ([154c029](https://github.com/driftyco/ionic-native/commit/154c029))
|
||||
* **video-player:** Added video player plugin ([#391](https://github.com/driftyco/ionic-native/issues/391)) ([cabeeb8](https://github.com/driftyco/ionic-native/commit/cabeeb8)), closes [#342](https://github.com/driftyco/ionic-native/issues/342)
|
||||
|
||||
|
||||
|
||||
<a name="1.3.10"></a>
|
||||
## [1.3.10](https://github.com/driftyco/ionic-native/compare/v1.3.9...v1.3.10) (2016-08-01)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **brightness:** use correct pluginRef ([e20c411](https://github.com/driftyco/ionic-native/commit/e20c411))
|
||||
* **diagnostics:** Corrects isEnabled functions to isAvailable ([#373](https://github.com/driftyco/ionic-native/issues/373)) ([ccf7fb5](https://github.com/driftyco/ionic-native/commit/ccf7fb5))
|
||||
* **ng1:** use $q promises instead of the native Promise ([#378](https://github.com/driftyco/ionic-native/issues/378)) ([817a434](https://github.com/driftyco/ionic-native/commit/817a434))
|
||||
* **one-signal:** return Observable instead of promise ([#352](https://github.com/driftyco/ionic-native/issues/352)) ([08fe04e](https://github.com/driftyco/ionic-native/commit/08fe04e))
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **crop:** add crop plugin ([#284](https://github.com/driftyco/ionic-native/issues/284)) ([41c9adf](https://github.com/driftyco/ionic-native/commit/41c9adf))
|
||||
* **screen-orientation:** Added Screen Orientation Plugin [#342](https://github.com/driftyco/ionic-native/issues/342) ([#366](https://github.com/driftyco/ionic-native/issues/366)) ([bd9366b](https://github.com/driftyco/ionic-native/commit/bd9366b))
|
||||
|
||||
|
||||
|
||||
<a name="1.3.9"></a>
|
||||
## [1.3.9](https://github.com/driftyco/ionic-native/compare/v1.3.8...v1.3.9) (2016-07-23)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **file:** readAsText() and adds readAsDataURL() in File plugin ([#346](https://github.com/driftyco/ionic-native/issues/346)) ([77d31cd](https://github.com/driftyco/ionic-native/commit/77d31cd))
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **android-fingerprint-auth:** add wrapper for plugin ([df326f7](https://github.com/driftyco/ionic-native/commit/df326f7)), closes [#334](https://github.com/driftyco/ionic-native/issues/334)
|
||||
* **secure-storage:** Add Secure Storage Wrapper ([#347](https://github.com/driftyco/ionic-native/issues/347)) ([075842d](https://github.com/driftyco/ionic-native/commit/075842d))
|
||||
|
||||
|
||||
|
||||
<a name="1.3.8"></a>
|
||||
## [1.3.8](https://github.com/driftyco/ionic-native/compare/v1.3.7...v1.3.8) (2016-07-20)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **base64togallery:** update plugin wrapper to match latest version ([d4bee49](https://github.com/driftyco/ionic-native/commit/d4bee49)), closes [#335](https://github.com/driftyco/ionic-native/issues/335)
|
||||
* **sqlite:** fix method attribute typo ([#324](https://github.com/driftyco/ionic-native/issues/324)) ([006bc70](https://github.com/driftyco/ionic-native/commit/006bc70))
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **facebook:** add FacebookLoginResponse interface ([8b27bed](https://github.com/driftyco/ionic-native/commit/8b27bed))
|
||||
* **otherPromise:** can work better with plugins that return promises ([#304](https://github.com/driftyco/ionic-native/issues/304)) ([0aee6c8](https://github.com/driftyco/ionic-native/commit/0aee6c8))
|
||||
* **social-sharing:** add canShareViaEmail ([#333](https://github.com/driftyco/ionic-native/issues/333)) ([5807dd7](https://github.com/driftyco/ionic-native/commit/5807dd7))
|
||||
* **twitter-connect:** add twitter connect plugin ([979838f](https://github.com/driftyco/ionic-native/commit/979838f)), closes [#308](https://github.com/driftyco/ionic-native/issues/308)
|
||||
|
||||
|
||||
|
||||
<a name="1.3.7"></a>
|
||||
## [1.3.7](https://github.com/driftyco/ionic-native/compare/v1.3.6...v1.3.7) (2016-07-18)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **contacts:** missing name property, types ([#320](https://github.com/driftyco/ionic-native/issues/320)) ([074d166](https://github.com/driftyco/ionic-native/commit/074d166))
|
||||
* **geolocation:** handle errors on watchPosition ([1b161d8](https://github.com/driftyco/ionic-native/commit/1b161d8)), closes [#322](https://github.com/driftyco/ionic-native/issues/322)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **sim:** Add sim plugin ([#317](https://github.com/driftyco/ionic-native/issues/317)) ([4f85110](https://github.com/driftyco/ionic-native/commit/4f85110))
|
||||
|
||||
|
||||
|
||||
<a name="1.3.6"></a>
|
||||
## [1.3.6](https://github.com/driftyco/ionic-native/compare/v1.3.5...v1.3.6) (2016-07-17)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **googlemaps:** able to pass array of LatLng to GoogleMapsLatLngBounds constructor ([de14b0e](https://github.com/driftyco/ionic-native/commit/de14b0e)), closes [#298](https://github.com/driftyco/ionic-native/issues/298)
|
||||
* **launch-navigator:** fix the navigate function wrapper to match latest plugin API ([6f625f9](https://github.com/driftyco/ionic-native/commit/6f625f9))
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **camera-preview:** add wrapper for camera-preview ([#301](https://github.com/driftyco/ionic-native/issues/301)) ([3a1a3ce](https://github.com/driftyco/ionic-native/commit/3a1a3ce))
|
||||
* **launch-navigator:** add new methods and constants to match latest plugin API ([29de6b3](https://github.com/driftyco/ionic-native/commit/29de6b3))
|
||||
|
||||
|
||||
|
||||
<a name="1.3.5"></a>
|
||||
## [1.3.5](https://github.com/driftyco/ionic-native/compare/v1.3.4...v1.3.5) (2016-07-17)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **ibeacon:** minor fixes ([b5a2ffc](https://github.com/driftyco/ionic-native/commit/b5a2ffc))
|
||||
* **safari-view-controller:** fix wrappers ([b4b3ec0](https://github.com/driftyco/ionic-native/commit/b4b3ec0))
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **googlemaps:** add Geocoder class ([#292](https://github.com/driftyco/ionic-native/issues/292)) ([2996da6](https://github.com/driftyco/ionic-native/commit/2996da6)), closes [#280](https://github.com/driftyco/ionic-native/issues/280)
|
||||
* **inAppPurchase:** add inAppPurchase ([f1988f6](https://github.com/driftyco/ionic-native/commit/f1988f6))
|
||||
* **media-capture:** add media capture plugin ([#293](https://github.com/driftyco/ionic-native/issues/293)) ([daa6d4c](https://github.com/driftyco/ionic-native/commit/daa6d4c)), closes [#272](https://github.com/driftyco/ionic-native/issues/272)
|
||||
* **nativestorage:** add NativeStorage plugin wrapper ([af5d4ad](https://github.com/driftyco/ionic-native/commit/af5d4ad))
|
||||
* **pin-dialog:** add pin dialog plugin ([#291](https://github.com/driftyco/ionic-native/issues/291)) ([2fe37c4](https://github.com/driftyco/ionic-native/commit/2fe37c4))
|
||||
|
||||
|
||||
|
||||
<a name="1.3.4"></a>
|
||||
## [1.3.4](https://github.com/driftyco/ionic-native/compare/v1.3.3...v1.3.4) (2016-07-14)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **touchid:** make isAvailable static ([c23f5e9](https://github.com/driftyco/ionic-native/commit/c23f5e9))
|
||||
|
||||
|
||||
### Reverts
|
||||
|
||||
* **changelog:** old changelog ([0cb79d1](https://github.com/driftyco/ionic-native/commit/0cb79d1))
|
||||
|
||||
|
||||
|
||||
<a name="1.3.3"></a>
|
||||
## [1.3.3](https://github.com/driftyco/ionic-native/compare/v1.3.2...v1.3.3) (2016-07-11)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* remove unnecessary decorator ([#257](https://github.com/driftyco/ionic-native/issues/257)) ([25fab64](https://github.com/driftyco/ionic-native/commit/25fab64))
|
||||
* **actionsheet:** add missing optional parameter for hide function ([#262](https://github.com/driftyco/ionic-native/issues/262)) ([644e999](https://github.com/driftyco/ionic-native/commit/644e999))
|
||||
* **background-geolocation:** fix pluginref again ([b8a5133](https://github.com/driftyco/ionic-native/commit/b8a5133))
|
||||
* **geolocation:** fix plugin reference ([4f0cd24](https://github.com/driftyco/ionic-native/commit/4f0cd24)), closes [#258](https://github.com/driftyco/ionic-native/issues/258)
|
||||
* **googlemaps:** use correct methods for addGroundOverlay and addKmlOverlay ([#268](https://github.com/driftyco/ionic-native/issues/268)) ([b8be1de](https://github.com/driftyco/ionic-native/commit/b8be1de))
|
||||
* **socialsharing:** all methods return Promises now ([e150224](https://github.com/driftyco/ionic-native/commit/e150224)), closes [#275](https://github.com/driftyco/ionic-native/issues/275)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **ibeacon:** add iBeacon plugin support ([#270](https://github.com/driftyco/ionic-native/issues/270)) ([dd97df1](https://github.com/driftyco/ionic-native/commit/dd97df1))
|
||||
* **onesignal:** added wrapper for the Cordova OneSignal Plugin ([#252](https://github.com/driftyco/ionic-native/issues/252)) ([ba20dbe](https://github.com/driftyco/ionic-native/commit/ba20dbe))
|
||||
* **push:** added support for Action Buttons on iOS with categories ([#273](https://github.com/driftyco/ionic-native/issues/273)) ([592feb4](https://github.com/driftyco/ionic-native/commit/592feb4))
|
||||
|
||||
|
||||
|
||||
<a name="1.3.2"></a>
|
||||
## [1.3.2](https://github.com/driftyco/ionic-native/compare/v1.3.1...v1.3.2) (2016-06-27)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **build:** disable emitDecoratorMetadata option in tsconfig ([a5f3d7a](https://github.com/driftyco/ionic-native/commit/a5f3d7a)), closes [#251](https://github.com/driftyco/ionic-native/issues/251)
|
||||
|
||||
|
||||
|
||||
<a name="1.3.1"></a>
|
||||
## [1.3.1](https://github.com/driftyco/ionic-native/compare/v1.3.0...v1.3.1) (2016-06-26)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **3dtouch:** fix implementation for onHomeIconPressed function ([d2b2be6](https://github.com/driftyco/ionic-native/commit/d2b2be6)), closes [#232](https://github.com/driftyco/ionic-native/issues/232)
|
||||
* **sqlite:** resolve race condition, add comments ([#235](https://github.com/driftyco/ionic-native/issues/235)) ([f1c8ce3](https://github.com/driftyco/ionic-native/commit/f1c8ce3))
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **googlemaps:** add GoogleMapsLatLngBounds class ([17da427](https://github.com/driftyco/ionic-native/commit/17da427))
|
||||
* **printer:** add printer plugin ([#225](https://github.com/driftyco/ionic-native/issues/225)) ([48ffcae](https://github.com/driftyco/ionic-native/commit/48ffcae))
|
||||
|
||||
|
||||
|
||||
<a name="1.3.0"></a>
|
||||
# [1.3.0](https://github.com/driftyco/ionic-native/compare/v1.2.3...v1.3.0) (2016-06-13)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **barcodescanner:** add missing options param ([4fdcbb5](https://github.com/driftyco/ionic-native/commit/4fdcbb5)), closes [#180](https://github.com/driftyco/ionic-native/issues/180)
|
||||
* **base64togallery:** method is now static ([be7b9e2](https://github.com/driftyco/ionic-native/commit/be7b9e2)), closes [#212](https://github.com/driftyco/ionic-native/issues/212)
|
||||
* **batterystatus:** correct plugin name on npm ([66b7fa6](https://github.com/driftyco/ionic-native/commit/66b7fa6))
|
||||
* **calendar:** fix some functionality and add missing ones ([a15fb01](https://github.com/driftyco/ionic-native/commit/a15fb01)), closes [#184](https://github.com/driftyco/ionic-native/issues/184)
|
||||
* **deeplinks:** new result type ([11226d7](https://github.com/driftyco/ionic-native/commit/11226d7))
|
||||
* **deviceorientation:** cancelFunction renamed to clearFunction ([8dee02e](https://github.com/driftyco/ionic-native/commit/8dee02e))
|
||||
* **geolocation:** fix watchPosition() ([4a8650e](https://github.com/driftyco/ionic-native/commit/4a8650e)), closes [#164](https://github.com/driftyco/ionic-native/issues/164)
|
||||
* **googlemaps:** isAvailable() returns boolean, not an instance of GoogleMap ([a53ae8f](https://github.com/driftyco/ionic-native/commit/a53ae8f))
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **angular1:** Support Angular 1 ([af8fbde](https://github.com/driftyco/ionic-native/commit/af8fbde))
|
||||
* **barcodescanner:** add encode function ([e73f57f](https://github.com/driftyco/ionic-native/commit/e73f57f)), closes [#115](https://github.com/driftyco/ionic-native/issues/115)
|
||||
* **deeplinks:** Add Ionic Deeplinks Plugin ([c93cbed](https://github.com/driftyco/ionic-native/commit/c93cbed))
|
||||
|
||||
|
||||
|
||||
<a name="1.2.3"></a>
|
||||
## [1.2.3](https://github.com/driftyco/ionic-native/compare/v1.2.2...v1.2.3) (2016-06-01)
|
||||
|
||||
|
||||
|
||||
<a name="1.2.2"></a>
|
||||
## [1.2.2](https://github.com/driftyco/ionic-native/compare/v1.2.1...v1.2.2) (2016-05-20)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **Bluetooth:** make connect function an observable to maintain full functionality ([58e3f0b](https://github.com/driftyco/ionic-native/commit/58e3f0b)), closes [#154](https://github.com/driftyco/ionic-native/issues/154)
|
||||
* **calendar:** add new permissions functions for Android 6 (M) devices ([ddbd64d](https://github.com/driftyco/ionic-native/commit/ddbd64d)), closes [#156](https://github.com/driftyco/ionic-native/issues/156)
|
||||
* **emailcomposer:** fix isAvailable function ([2a568d2](https://github.com/driftyco/ionic-native/commit/2a568d2)), closes [#168](https://github.com/driftyco/ionic-native/issues/168)
|
||||
|
||||
|
||||
|
||||
<a name="1.2.1"></a>
|
||||
## [1.2.1](https://github.com/driftyco/ionic-native/compare/v1.2.0...v1.2.1) (2016-05-11)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **contacts:** plugin rewrite ([aada893](https://github.com/driftyco/ionic-native/commit/aada893))
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **plugin:** add wrapper for instance properties ([28d7d5c](https://github.com/driftyco/ionic-native/commit/28d7d5c))
|
||||
|
||||
|
||||
|
||||
<a name="1.2.0"></a>
|
||||
# [1.2.0](https://github.com/driftyco/ionic-native/compare/v1.1.0...v1.2.0) (2016-04-30)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **BluetoohSerial:** add missing plugin reference ([317437b](https://github.com/driftyco/ionic-native/commit/317437b))
|
||||
* **GoogleAnalytics:** addCustomDimension() key param is number ([3865ea4](https://github.com/driftyco/ionic-native/commit/3865ea4)), closes [#131](https://github.com/driftyco/ionic-native/issues/131)
|
||||
* **keyboard:** remove hideKeyboardAccessoryBar method for now ([292c80c](https://github.com/driftyco/ionic-native/commit/292c80c))
|
||||
* **launchnavigator:** bug fix ([4ead1ae](https://github.com/driftyco/ionic-native/commit/4ead1ae))
|
||||
* **launchnavigator:** start parameter is optional ([5e7378a](https://github.com/driftyco/ionic-native/commit/5e7378a))
|
||||
* **localnotifications:** options can be an array ([e10d744](https://github.com/driftyco/ionic-native/commit/e10d744))
|
||||
* **plugin:** handle rejection when Cordova is undefined ([db07768](https://github.com/driftyco/ionic-native/commit/db07768))
|
||||
* **plugin:** remove unecessary code ([4070991](https://github.com/driftyco/ionic-native/commit/4070991))
|
||||
* **push plugin:** senderId is optional in iosPushOptions ([48bf837](https://github.com/driftyco/ionic-native/commit/48bf837))
|
||||
* **spinnerdialog:** fix functionality ([66f0e03](https://github.com/driftyco/ionic-native/commit/66f0e03))
|
||||
* **vibration:** fix plugin reference ([beeb075](https://github.com/driftyco/ionic-native/commit/beeb075)), closes [#106](https://github.com/driftyco/ionic-native/issues/106)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **camera:** add camera constants ([ce02d82](https://github.com/driftyco/ionic-native/commit/ce02d82)), closes [#129](https://github.com/driftyco/ionic-native/issues/129)
|
||||
* **ionicnative:** add instance wrapper ([0ec737a](https://github.com/driftyco/ionic-native/commit/0ec737a))
|
||||
* **keyboard:** add event listeners for keyboard show/hide events ([c947437](https://github.com/driftyco/ionic-native/commit/c947437))
|
||||
* **media:** add media plugin ([1105b57](https://github.com/driftyco/ionic-native/commit/1105b57)), closes [#88](https://github.com/driftyco/ionic-native/issues/88)
|
||||
* **plugin:** add admob pro plugin ([d9b847b](https://github.com/driftyco/ionic-native/commit/d9b847b)), closes [#146](https://github.com/driftyco/ionic-native/issues/146)
|
||||
* **plugin:** add Bluetooth Serial plugin ([837fb95](https://github.com/driftyco/ionic-native/commit/837fb95)), closes [#136](https://github.com/driftyco/ionic-native/issues/136)
|
||||
* **plugin:** add email composer plugin ([804c9ee](https://github.com/driftyco/ionic-native/commit/804c9ee))
|
||||
* **plugin:** add InAppBrowser plugin ([b8d2cfd](https://github.com/driftyco/ionic-native/commit/b8d2cfd))
|
||||
* **plugin:** add social sharing plugin ([efc8231](https://github.com/driftyco/ionic-native/commit/efc8231))
|
||||
* **plugin:** add spinner dialog plugin ([812653c](https://github.com/driftyco/ionic-native/commit/812653c))
|
||||
* **plugin:** add web intent plugin ([e2fc9a0](https://github.com/driftyco/ionic-native/commit/e2fc9a0))
|
||||
* **toast:** add new features to toast plugin ([ed7e783](https://github.com/driftyco/ionic-native/commit/ed7e783))
|
||||
* **webintent:** add plugin to index ([f357b56](https://github.com/driftyco/ionic-native/commit/f357b56))
|
||||
|
||||
|
||||
### Performance Improvements
|
||||
|
||||
* **ionicnative:** instance wrapper cleanup and optimization ([5a8d48e](https://github.com/driftyco/ionic-native/commit/5a8d48e))
|
||||
|
||||
|
||||
|
||||
<a name="1.1.0"></a>
|
||||
# [1.1.0](https://github.com/driftyco/ionic-native/compare/v1.0.9...v1.1.0) (2016-03-17)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **datepicker:** datepicker options are optional ([c3cfd14](https://github.com/driftyco/ionic-native/commit/c3cfd14))
|
||||
* **datepicker:** dates are Dates ([ce6adcc](https://github.com/driftyco/ionic-native/commit/ce6adcc))
|
||||
* **datepicker:** fix plugin functionality ([91de971](https://github.com/driftyco/ionic-native/commit/91de971))
|
||||
* **datepicker:** fix plugin functionality ([1a778e7](https://github.com/driftyco/ionic-native/commit/1a778e7))
|
||||
* **devicemotion:** combine watch and clear into one function ([d17f62d](https://github.com/driftyco/ionic-native/commit/d17f62d))
|
||||
* **geolocation:** set callback order to reverse on getCurrentPosition ([1fac387](https://github.com/driftyco/ionic-native/commit/1fac387))
|
||||
* **imagepicker:** pluginRef ([01d7972](https://github.com/driftyco/ionic-native/commit/01d7972))
|
||||
* **interface:** params are optional ([e708bc6](https://github.com/driftyco/ionic-native/commit/e708bc6))
|
||||
* **launchnavigator:** fix Plugin decorator property value ([9e17e25](https://github.com/driftyco/ionic-native/commit/9e17e25))
|
||||
* **plugin:** combine watch and clearwatch functions ([8855359](https://github.com/driftyco/ionic-native/commit/8855359))
|
||||
* **plugin:** don't call reject when sync ([1334f60](https://github.com/driftyco/ionic-native/commit/1334f60))
|
||||
* **plugin:** export interfaces ([1e259da](https://github.com/driftyco/ionic-native/commit/1e259da))
|
||||
* **plugin:** fix options properties ([44365f4](https://github.com/driftyco/ionic-native/commit/44365f4))
|
||||
* **plugin:** fix types ([c86e135](https://github.com/driftyco/ionic-native/commit/c86e135))
|
||||
* **plugins:** cleanup and add new plugins to index ([1771f7b](https://github.com/driftyco/ionic-native/commit/1771f7b))
|
||||
* **plugins:** fix optional options ([9ef850c](https://github.com/driftyco/ionic-native/commit/9ef850c))
|
||||
* added dummy boolean ([2caa151](https://github.com/driftyco/ionic-native/commit/2caa151))
|
||||
* fix callback order ([5fda6d4](https://github.com/driftyco/ionic-native/commit/5fda6d4))
|
||||
* fix callback order ([5944bd1](https://github.com/driftyco/ionic-native/commit/5944bd1))
|
||||
* fix options params ([c71f8d4](https://github.com/driftyco/ionic-native/commit/c71f8d4))
|
||||
* remove confirm callback, not needed. ([662d8ce](https://github.com/driftyco/ionic-native/commit/662d8ce))
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **batterystatus:** complete functionality ([e7a09d9](https://github.com/driftyco/ionic-native/commit/e7a09d9))
|
||||
* **localnotification:** complete functionality ([5d5bae3](https://github.com/driftyco/ionic-native/commit/5d5bae3))
|
||||
* **package:** expose decorators and wrapper functions ([848d706](https://github.com/driftyco/ionic-native/commit/848d706))
|
||||
* **plugin:** add android hotspot plugin ([e1dc606](https://github.com/driftyco/ionic-native/commit/e1dc606))
|
||||
* **plugin:** add app availability plugin ([3d188e1](https://github.com/driftyco/ionic-native/commit/3d188e1))
|
||||
* **plugin:** add base64 to gallery ([8c17a2a](https://github.com/driftyco/ionic-native/commit/8c17a2a))
|
||||
* **plugin:** add DB Meter ([22bb218](https://github.com/driftyco/ionic-native/commit/22bb218))
|
||||
* **plugin:** add device motion plugin ([a4df21e](https://github.com/driftyco/ionic-native/commit/a4df21e))
|
||||
* **plugin:** add device orientation plugin ([9766aab](https://github.com/driftyco/ionic-native/commit/9766aab))
|
||||
* **plugin:** add dialogs plugin ([b5f9267](https://github.com/driftyco/ionic-native/commit/b5f9267))
|
||||
* **plugin:** add event wrapper ([0d1bd13](https://github.com/driftyco/ionic-native/commit/0d1bd13))
|
||||
* **plugin:** add flashlight plugin ([3ec25fa](https://github.com/driftyco/ionic-native/commit/3ec25fa))
|
||||
* **plugin:** add functionality to app-availablity plugin ([bc4dcaa](https://github.com/driftyco/ionic-native/commit/bc4dcaa))
|
||||
* **plugin:** add functionality to device motion plugin ([7f7ba3b](https://github.com/driftyco/ionic-native/commit/7f7ba3b))
|
||||
* **plugin:** add globalization ([90cc36b](https://github.com/driftyco/ionic-native/commit/90cc36b))
|
||||
* **plugin:** add imagePicker plugin ([287d129](https://github.com/driftyco/ionic-native/commit/287d129))
|
||||
* **plugin:** add keyboard ([a80c4ee](https://github.com/driftyco/ionic-native/commit/a80c4ee))
|
||||
* **plugin:** add launch navigator ([984e7fc](https://github.com/driftyco/ionic-native/commit/984e7fc))
|
||||
* **plugin:** add launch navigator ([18df9a5](https://github.com/driftyco/ionic-native/commit/18df9a5))
|
||||
* **plugin:** add local notifications ([66df0a6](https://github.com/driftyco/ionic-native/commit/66df0a6))
|
||||
* **plugin:** add sms ([6843177](https://github.com/driftyco/ionic-native/commit/6843177))
|
||||
* **plugin:** add sms plugin ([aa7e04c](https://github.com/driftyco/ionic-native/commit/aa7e04c))
|
||||
* **plugin:** add splashscreen ([0f3c188](https://github.com/driftyco/ionic-native/commit/0f3c188))
|
||||
* **plugin:** add vibration ([3cc4ee4](https://github.com/driftyco/ionic-native/commit/3cc4ee4))
|
||||
* **plugin:** proxy plugin properties ([fc54fef](https://github.com/driftyco/ionic-native/commit/fc54fef))
|
||||
* **plugin:** show instructions if plugin not installed ([c48a851](https://github.com/driftyco/ionic-native/commit/c48a851))
|
||||
* **plugins:** add new plugins to index ([4d8dc1b](https://github.com/driftyco/ionic-native/commit/4d8dc1b))
|
||||
* **plugins:** add platforms info ([9826dfd](https://github.com/driftyco/ionic-native/commit/9826dfd))
|
||||
|
||||
|
||||
|
||||
<a name="1.0.9"></a>
|
||||
## [1.0.9](https://github.com/driftyco/ionic-native/compare/8f27fc9...v1.0.9) (2016-02-18)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **calendar:** make getCalendarOptions sync ([78c5408](https://github.com/driftyco/ionic-native/commit/78c5408))
|
||||
* **geolocation:** call correct clearFunction ([9e86a40](https://github.com/driftyco/ionic-native/commit/9e86a40))
|
||||
* **plugin:** return originalMethod return value ([240f0f8](https://github.com/driftyco/ionic-native/commit/240f0f8))
|
||||
* **plugin:** use call for id based clearFunction ([c2fdf39](https://github.com/driftyco/ionic-native/commit/c2fdf39))
|
||||
* datepicker plugin, pluginref, and [@Cordova](https://github.com/Cordova) wrapper ([499ead3](https://github.com/driftyco/ionic-native/commit/499ead3))
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **DatePicker:** Added DatePicker ([5afa58f](https://github.com/driftyco/ionic-native/commit/5afa58f))
|
||||
* **plugin:** add sync option to [@Cordova](https://github.com/Cordova) for sync functions ([17e3827](https://github.com/driftyco/ionic-native/commit/17e3827))
|
||||
* **plugin:** call clearFunction with original fn args ([8f27fc9](https://github.com/driftyco/ionic-native/commit/8f27fc9))
|
||||
* add app version plugin ([20cb01f](https://github.com/driftyco/ionic-native/commit/20cb01f))
|
||||
* add app version plugin ([8b78521](https://github.com/driftyco/ionic-native/commit/8b78521))
|
||||
* add apprate ([0dd4fec](https://github.com/driftyco/ionic-native/commit/0dd4fec))
|
||||
* add badge plugin ([7f01fb2](https://github.com/driftyco/ionic-native/commit/7f01fb2))
|
||||
* add badge plugin ([3088df4](https://github.com/driftyco/ionic-native/commit/3088df4))
|
||||
* add clipboard plugin ([0b6cca7](https://github.com/driftyco/ionic-native/commit/0b6cca7))
|
||||
* add clipboard plugin ([fa4c266](https://github.com/driftyco/ionic-native/commit/fa4c266))
|
||||
|
||||
|
||||
|
||||
@@ -1,5 +0,0 @@
|
||||
# Contributing to Ionic Native
|
||||
|
||||
Have a plugin you'd like to see supported? Because Ionic Native is a thin wrapper around existing Cordova plugins, adding support for new plugins is as easy as creating a new wrapper for whichever plugin you'd like to add.
|
||||
|
||||
Take a look at our [Developer Guide](https://github.com/driftyco/ionic-native/blob/master/DEVELOPER.md) for more info on adding new plugins.
|
||||
127
DEVELOPER.md
@@ -5,29 +5,34 @@ This is a short guide on creating new plugin wrappers for Ionic Native.
|
||||
|
||||
## Creating Plugin Wrappers
|
||||
|
||||
First, let's start by creating a new plugin wrapper from template.
|
||||
|
||||
```
|
||||
// Call this command, and replace PluginName with the name of the plugin you wish to add
|
||||
// Make sure to capitalize the first letter, or use CamelCase if necessary.
|
||||
|
||||
gulp plugin:create -n PluginName
|
||||
```
|
||||
|
||||
|
||||
Let's take a look at the existing plugin wrapper for Geolocation to see what goes into an Ionic Native plugin (comments have been removed for clarity):
|
||||
|
||||
```
|
||||
@Plugin({
|
||||
name: 'Geolocation',
|
||||
plugin: 'cordova-plugin-geolocation',
|
||||
pluginRef: 'navigator.geolocation'
|
||||
})
|
||||
export class Geolocation {
|
||||
|
||||
@Cordova()
|
||||
static getCurrentPosition(options: GeolocationOptions){
|
||||
return new Promise<Geoposition>((res, rej) => {});
|
||||
}
|
||||
static getCurrentPosition(options?: GeolocationOptions): Promise<Geoposition> { return }
|
||||
|
||||
@Cordova({
|
||||
callbackOrder: 'reverse',
|
||||
observable: true,
|
||||
clearFunction: 'clearWatch'
|
||||
})
|
||||
static watchPosition(options: GeolocationOptions){
|
||||
return new Observable<Geoposition>(observer => {});
|
||||
}
|
||||
static watchPosition(options?: GeolocationOptions): Observable<Geoposition> { return }
|
||||
}
|
||||
```
|
||||
|
||||
@@ -49,7 +54,6 @@ For example, the `@Plugin` decorator adds information about the plugin to our Ge
|
||||
|
||||
```
|
||||
@Plugin({
|
||||
name: 'Geolocation',
|
||||
plugin: 'cordova-plugin-geolocation',
|
||||
pluginRef: 'navigator.geolocation'
|
||||
})
|
||||
@@ -58,9 +62,7 @@ export class Geolocation {
|
||||
}
|
||||
```
|
||||
|
||||
Here, `name` refers to the name of the plugin, which is used by Ionic Native for logging messages.
|
||||
|
||||
`plugin` is the name of the plugin package on npm and used when calling `cordova plugin add`, also used for logging purposes.
|
||||
Here, `plugin` is the name of the plugin package on npm and used when calling `cordova plugin add`.
|
||||
|
||||
`pluginRef` refers to the where on `window` the underlying Cordova plugin is normally exposed. For example, in the case of the Cordova Geolocation plugin, normally you would make calls like `window.navigator.geolocation.getCurrentPosition({}, success, error)`, so the `pluginRef` in this case is `navigator.geolocation`.
|
||||
|
||||
@@ -72,14 +74,14 @@ Let's take a look at `getCurrentPosition` first.
|
||||
|
||||
```
|
||||
@Cordova()
|
||||
static getCurrentPosition(options: GeolocationOptions){
|
||||
return new Promise<Geoposition>((res, rej) => {});
|
||||
}
|
||||
static getCurrentPosition(options?: GeolocationOptions): Promise<Geoposition> { return }
|
||||
```
|
||||
|
||||
It's just a stub. The `return` is only there to keep the TypeScript type-checker from complaining since we indicate that `getCurrentPosition` returns a `Promise<Geoposition>`.
|
||||
|
||||
By default, the `@Cordova` decorator wraps the plugin callbacks in a Promise that resolves when the success callback is called and rejects when the error callback is called. It also ensures that Cordova and the underlying plugin are available, and prints helpful diagnostics if they aren't.
|
||||
|
||||
You'll also notice that it is a static method. That's because the plugin class is just a utility class to call the underlying Cordova plugin methods, it's not an instance and has no state.
|
||||
You'll also notice that `getCurrentPosition` is a static method. That's because the plugin class is just a utility class to call the underlying Cordova plugin methods, it's not an instance and has no state.
|
||||
|
||||
Next, let's look at the `watchPosition` method.
|
||||
|
||||
@@ -89,9 +91,7 @@ Next, let's look at the `watchPosition` method.
|
||||
observable: true,
|
||||
clearFunction: 'clearWatch'
|
||||
})
|
||||
static watchPosition(options: GeolocationOptions){
|
||||
return new Observable<Geoposition>(observer => {});
|
||||
}
|
||||
static watchPosition(options?: GeolocationOptions): Observable<Geoposition> { return }
|
||||
```
|
||||
|
||||
The `@Cordova` decorator has a few more options now.
|
||||
@@ -102,6 +102,95 @@ The `@Cordova` decorator has a few more options now.
|
||||
|
||||
`clearFunction` is used in conjunction with the `observable` option and indicates the function to be called when the Observable is disposed.
|
||||
|
||||
### Updating index.ts
|
||||
|
||||
For new plugins, you will need to update `/src/index.ts` to properly export your plugin and make it available for use.
|
||||
|
||||
1. Import the plugin class into `index.ts`:
|
||||
|
||||
`import {PluginClassName} from ./plugins/filenameForPlugin`
|
||||
|
||||
No need to put the `.ts` extension on the filename.
|
||||
|
||||
2. Add the plugin class name to the list in the `export` object:
|
||||
|
||||
```
|
||||
export {
|
||||
ActionSheet,
|
||||
AdMob,
|
||||
AndroidFingerprintAuth,
|
||||
YourPluginClassName,
|
||||
...
|
||||
}
|
||||
```
|
||||
|
||||
3. Add the plugin class name to the `window['IonicNative']` object:
|
||||
|
||||
```
|
||||
window['IonicNative'] = {
|
||||
ActionSheet: ActionSheet,
|
||||
AdMob: AdMob,
|
||||
AndroidFingerprintAuth: AndroidFingerprintAuth,
|
||||
YourPluginClassName: YourPluginClassName,
|
||||
...
|
||||
```
|
||||
|
||||
4. If your plugin exports any other objects outside of the plugin class, add an export statement for the file:
|
||||
|
||||
`export * from './plugins/filenameForPlugin';`
|
||||
|
||||
No need to put the `.ts` extension on the filename.
|
||||
|
||||
For example, `googlemaps.ts` exports a const outside of the plugin's main `GoogleMap` class:
|
||||
|
||||
```
|
||||
export const GoogleMapsAnimation = {
|
||||
BOUNCE: 'BOUNCE',
|
||||
DROP: 'DROP'
|
||||
};
|
||||
```
|
||||
|
||||
To properly export `GoogleMapsAnimation`, `index.ts` is updated with:
|
||||
|
||||
`export * from './plugins/googlemaps';`
|
||||
|
||||
### Testing your changes
|
||||
|
||||
You need to run `npm run build` in the `ionic-native` project, this will create a `dist` directory. Then, you must go to your ionic application folder and replace your current `node_modules/ionic-native/dist/` with the newly generated one.
|
||||
|
||||
### Cleaning the code
|
||||
|
||||
You need to run `npm run lint` to analyze the code and ensure it's consistency with the repository style. Fix any errors before submitting a PR.
|
||||
|
||||
### 'Wrapping' Up
|
||||
|
||||
That's it! The only thing left to do is rigorously document the plugin and it's usage. Take a look at some of the other plugins for good documentation styles.
|
||||
That's it! The only thing left to do is rigorously document the plugin and it's usage. Take a look at some of the other plugins for good documentation styles.
|
||||
|
||||
## Commit Message Format
|
||||
|
||||
We have very precise rules over how our git commit messages can be formatted. This leads to more readable messages that are easy to follow when looking through the project history. But also, we use the git commit messages to generate the our change log. (Ok you got us, it's basically Angular's commit message format).
|
||||
|
||||
`type(scope): subject`
|
||||
|
||||
#### Type
|
||||
Must be one of the following:
|
||||
|
||||
* **fix**: A bug fix
|
||||
* **feat**: A new feature
|
||||
* **docs**: Documentation only changes
|
||||
* **style**: Changes that do not affect the meaning of the code (white-space, formatting, missing semi-colons, etc)
|
||||
* **refactor**: A code change that neither fixes a bug nor adds a feature
|
||||
* **perf**: A code change that improves performance
|
||||
* **test**: Adding missing tests
|
||||
* **chore**: Changes to the build process or auxiliary tools and libraries such as documentation generation
|
||||
|
||||
#### Scope
|
||||
The scope could be anything specifying place of the commit change. For example, the name of the plugin being changed
|
||||
|
||||
#### Subject
|
||||
The subject contains succinct description of the change:
|
||||
|
||||
* use the imperative, present tense: "change" not "changed" nor "changes"
|
||||
* do not capitalize first letter
|
||||
* do not place a period (.) at the end
|
||||
* entire length of the commit message must not go over 50 characters
|
||||
23
LICENSE
Normal file
@@ -0,0 +1,23 @@
|
||||
Copyright 2015-present Drifty Co.
|
||||
http://drifty.com/
|
||||
|
||||
MIT License
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining
|
||||
a copy of this software and associated documentation files (the
|
||||
"Software"), to deal in the Software without restriction, including
|
||||
without limitation the rights to use, copy, modify, merge, publish,
|
||||
distribute, sublicense, and/or sell copies of the Software, and to
|
||||
permit persons to whom the Software is furnished to do so, subject to
|
||||
the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be
|
||||
included in all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
||||
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
||||
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
||||
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
67
README.md
@@ -1,20 +1,29 @@
|
||||
[](https://circleci.com/gh/driftyco/ionic-native) [](http://commitizen.github.io/cz-cli/)
|
||||
[](https://www.npmjs.com/package/ionic-native)
|
||||
|
||||
[](https://nodei.co/npm/ionic-native/)
|
||||
[](https://nodei.co/npm/ionic-native/)
|
||||
|
||||
# Ionic Native
|
||||
|
||||
Ionic Native is a curated set of wrappers for Cordova plugins that make adding any native functionality you need to your [Ionic](http://ionicframework.com/), Cordova, or Web View mobile app easy.
|
||||
|
||||
### Documentation
|
||||
|
||||
For the full Ionic Native documentation, please visit [http://ionicframework.com/docs/v2/native/](http://ionicframework.com/docs/v2/native/).
|
||||
|
||||
### Promises and Observables
|
||||
|
||||
Ionic Native wraps plugin callbacks in a Promise or [Observable](https://gist.github.com/staltz/868e7e9bc2a7b8c1f754), providing a common interface for all plugins and ensuring that native events trigger change detection in Angular 2.
|
||||
|
||||
```
|
||||
import {Geolocation} from 'ionic-native';
|
||||
import { Geolocation } from 'ionic-native';
|
||||
|
||||
Geolocation.getCurrentPosition().then(pos => {
|
||||
Geolocation.getCurrentPosition().then(pos => {
|
||||
console.log('lat: ' + pos.coords.latitude + ', lon: ' + pos.coords.longitude);
|
||||
});
|
||||
|
||||
let watch = Geolocation.watchPosition();
|
||||
watch.subscribe(pos => {
|
||||
let watch = Geolocation.watchPosition().subscribe(pos => {
|
||||
console.log('lat: ' + pos.coords.latitude + ', lon: ' + pos.coords.longitude);
|
||||
});
|
||||
|
||||
@@ -22,13 +31,63 @@ watch.subscribe(pos => {
|
||||
watch.unsubscribe();
|
||||
```
|
||||
|
||||
### Angular 1
|
||||
|
||||
Ionic Native works as a stand-in for [ngCordova](http://ngcordova.com/). In many cases, the usage is identical, but we import `ionic.native` instead of `ngCordova` as our module.
|
||||
|
||||
As a rule of thumb: take the ES6 class name of the plugin and add `$cordova` to get the service name. For example, `Geolocation` would be `$cordovaGeolocation`, and `Camera` will be `$cordovaCamera`:
|
||||
|
||||
```javascript
|
||||
angular.module('myApp', ['ionic', 'ionic.native'])
|
||||
|
||||
.controller('MyCtrl', function($scope, $cordovaCamera) {
|
||||
$scope.takePicture = function() {
|
||||
$cordovaCamera.getPicture(opts).then(function(p) {
|
||||
}, function(err) {
|
||||
});
|
||||
};
|
||||
});
|
||||
```
|
||||
|
||||
For services that return observables, the Angular 1 digest cycle must be done manually (currently):
|
||||
|
||||
```javascript
|
||||
angular.module('myApp', ['ionic', 'ionic.native'])
|
||||
|
||||
.controller('MyCtrl', function($scope, $cordovaGeolocation) {
|
||||
$scope.takePicture = function() {
|
||||
$cordovaGeolocation.watchPosition(opts).subscribe(function(p) {
|
||||
$scope.$apply(function() {
|
||||
$scope.position = p.coords;
|
||||
});
|
||||
}, function(err) {
|
||||
});
|
||||
};
|
||||
});
|
||||
```
|
||||
|
||||
### Runtime Diagnostics
|
||||
|
||||
Spent way too long diagnosing an issue only to realize a plugin wasn't firing or installed? Ionic Native lets you know what the issue is and how you can resolve it.
|
||||
|
||||

|
||||
|
||||
## Installation
|
||||
|
||||
Run following commmand to install ionic-native in your project.
|
||||
```
|
||||
npm install ionic-native --save
|
||||
```
|
||||
|
||||
|
||||
## Plugin Missing?
|
||||
Let us know or submit a PR! Take a look at [the Developer Guide](https://github.com/driftyco/ionic-native/blob/master/DEVELOPER.md) for more on how to contribute. :heart:
|
||||
|
||||
|
||||
# Credits
|
||||
|
||||
Ibrahim Hadeed - [@ihadeed](http://github.com/ihadeed)
|
||||
|
||||
Tim Lancina - [@timlancina](http://twitter.com/timlancina)
|
||||
|
||||
Max Lynch - [@maxlynch](http://twitter.com/maxlynch)
|
||||
|
||||
23
circle.yml
@@ -3,12 +3,25 @@ machine:
|
||||
version: 4.1.0
|
||||
ruby:
|
||||
version: 2.1.2
|
||||
|
||||
general:
|
||||
branches:
|
||||
only:
|
||||
- master # ignore PRs and branches
|
||||
|
||||
dependencies:
|
||||
pre:
|
||||
- ./scripts/docs/prepare.sh
|
||||
cache_directories:
|
||||
- "~/ionic-site" # cache ionic-site
|
||||
|
||||
test:
|
||||
override:
|
||||
- echo "Skipping tests for now"
|
||||
- npm test
|
||||
- npm run build
|
||||
|
||||
deployment:
|
||||
staging:
|
||||
branch: master
|
||||
commands:
|
||||
- ./scripts/docs/update_docs.sh
|
||||
staging:
|
||||
branch: master
|
||||
commands:
|
||||
- ./scripts/docs/update_docs.sh
|
||||
|
||||
31
demo/.gitignore
vendored
@@ -1,31 +0,0 @@
|
||||
# Specifies intentionally untracked files to ignore when using Git
|
||||
# http://git-scm.com/docs/gitignore
|
||||
|
||||
*~
|
||||
*.sw[mnpcod]
|
||||
*.log
|
||||
*.tmp
|
||||
*.tmp.*
|
||||
log.txt
|
||||
*.sublime-project
|
||||
*.sublime-workspace
|
||||
|
||||
.idea/
|
||||
.sass-cache/
|
||||
.versions/
|
||||
coverage/
|
||||
dist/
|
||||
node_modules/
|
||||
tmp/
|
||||
temp/
|
||||
hooks/
|
||||
platforms/
|
||||
plugins/
|
||||
plugins/android.json
|
||||
plugins/ios.json
|
||||
www/build/
|
||||
$RECYCLE.BIN/
|
||||
|
||||
.DS_Store
|
||||
Thumbs.db
|
||||
UserInterfaceState.xcuserstate
|
||||
@@ -1,72 +0,0 @@
|
||||
## Getting Started
|
||||
|
||||
`ionic serve`
|
||||
|
||||
The `ionic serve` command compiles your ES6 files to ES5, your Sass files to CSS, bundles it all up for you, opens up a browser window and serves your app locally. After the initial build it will watch for changes and automatically rebuild and reload. The build output can be configured in your `ionic.config.js` file (which will be autogenerated by `ionic serve` if it doesn't exist yet).
|
||||
|
||||
#### Updating Ionic
|
||||
When you start your project with `ionic start`, the latest version of `ionic-framework` is installed automatically. To update your ionic version in an existing project, run `npm install --save ionic-framework@latest`. This will install the latest version of `ionic-framework` published to npm, and save it in your `package.json` file so if you are checking your project in to version control the correct version of the framework will be installed by [`npm install`](https://docs.npmjs.com/cli/install).
|
||||
|
||||
#### Developing Against Unstable Master
|
||||
- THIS IS NOT UPDATING YOUR APP. THIS IS FOR DEVELOPING AGAINST THE UNSTABLE MASTER BRANCH, WHICH WE DO NOT RECOMMEND. SEE [Updating Ionic](#updating-ionic) FOR INSTRUCTIONS ON UPDATING TO THE LATEST VERSION OF THE FRAMEWORK. To develop against a local version of ionic-framework (master) you'll need to do the following:
|
||||
```bash
|
||||
# if you haven't already, clone the ionic2 repo:
|
||||
$ git clone https://github.com/driftyco/ionic2.git
|
||||
$ cd ionic2
|
||||
$ npm install
|
||||
$ gulp src # build the source files
|
||||
$ npm link
|
||||
|
||||
# now go to your app directory
|
||||
$ cd /Users/Ionitron/git/MyIonic2App
|
||||
$ npm link ionic-framework
|
||||
```
|
||||
And then update your [`webpack.config.js`](https://github.com/driftyco/ionic2-app-base/blob/master/webpack.config.js#L68) file by uncommenting the lines for local development:
|
||||
```js
|
||||
resolve: {
|
||||
modulesDirectories: [
|
||||
"node_modules",
|
||||
"node_modules/ionic-framework/node_modules",
|
||||
"node_modules/ionic-framework/dist/src/es5/common",
|
||||
"node_modules/ionic-framework/dist/js",
|
||||
|
||||
"dist/src/es5/common" // <--- Uncomment me
|
||||
],
|
||||
}
|
||||
```
|
||||
Update the ionic2 [`gulpfile.js #L141`](https://github.com/driftyco/ionic2/blob/master/gulpfile.js#L141) to this in order to use `gulp watch` and make changes to the ionic2 repo:
|
||||
```js
|
||||
gulp.start('transpile.common');
|
||||
```
|
||||
|
||||
|
||||
### Missing Ionic 1 features
|
||||
|
||||
We are currently working on completing a few core Ionic 1 features:
|
||||
|
||||
- Collection repeat (known as Virtual Scrolling in v2) is not quite ready
|
||||
|
||||
### Current Angular 2 known issues:
|
||||
|
||||
- Angular 2 is still in alpha and is not production ready
|
||||
- Angular team has first focused on developing what the core of Angular 2 "is"
|
||||
- Angular 2 filesize has not been optimized for minification yet
|
||||
- Angular 2 bootstrap time has not been optimized yet
|
||||
- As Angular 2 reaches beta there will be significant performance improvements
|
||||
|
||||
|
||||
### ES6/Typescript
|
||||
|
||||
- Ionic's source is written using [Typescript](http://www.typescriptlang.org/)
|
||||
- Ionic apps can be written in ES6 or TypeScript
|
||||
- Typescript is an optional feature to be used at the developers discretion
|
||||
- Ionic 2 starters come with the necessary build tools to transpile both ES6 and Typescript
|
||||
|
||||
|
||||
### CSS Attribute Selectors:
|
||||
|
||||
- Simple
|
||||
- Smaller markup
|
||||
- Easier to read and understand
|
||||
- [Not an issue](https://twitter.com/paul_irish/status/311610425617838081) for today's mobile browsers
|
||||
- No performance impacts have been found
|
||||
@@ -1,33 +0,0 @@
|
||||
<?xml version='1.0' encoding='utf-8'?>
|
||||
<widget id="io.ionic.nativeDemo" version="0.0.1" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
|
||||
<name>V2 Test</name>
|
||||
<description>An Ionic Framework and Cordova project.</description>
|
||||
<author email="hi@ionicframework" href="http://ionicframework.com/">Ionic Framework Team</author>
|
||||
<content src="index.html" />
|
||||
<access origin="*" />
|
||||
<allow-intent href="http://*/*" />
|
||||
<allow-intent href="https://*/*" />
|
||||
<allow-intent href="tel:*" />
|
||||
<allow-intent href="sms:*" />
|
||||
<allow-intent href="mailto:*" />
|
||||
<allow-intent href="geo:*" />
|
||||
<platform name="android">
|
||||
<allow-intent href="market:*" />
|
||||
</platform>
|
||||
<platform name="ios">
|
||||
<allow-intent href="itms:*" />
|
||||
<allow-intent href="itms-apps:*" />
|
||||
</platform>
|
||||
<preference name="webviewbounce" value="false" />
|
||||
<preference name="UIWebViewBounce" value="false" />
|
||||
<preference name="DisallowOverscroll" value="true" />
|
||||
<preference name="android-minSdkVersion" value="16" />
|
||||
<preference name="BackupWebStorage" value="none" />
|
||||
<feature name="StatusBar">
|
||||
<param name="ios-package" onload="true" value="CDVStatusBar" />
|
||||
</feature>
|
||||
<plugin name="cordova-plugin-facebook4" spec="~1.3.0-0">
|
||||
<variable name="APP_ID" value="279000342284434" />
|
||||
<variable name="APP_NAME" value="ngCordova Test" />
|
||||
</plugin>
|
||||
</widget>
|
||||
@@ -1,16 +0,0 @@
|
||||
module.exports = {
|
||||
name: 'demo',
|
||||
proxies: null,
|
||||
|
||||
// hooks execute before or after all project-related Ionic commands
|
||||
// (so not for start, docs, but serve, run, etc.) and take in the arguments
|
||||
// passed to the command as a parameter
|
||||
//
|
||||
// The format is 'before' or 'after' + commandName (uppercased)
|
||||
// ex: beforeServe, afterRun, beforePrepare, etc.
|
||||
hooks: {
|
||||
// beforeServe: function(argv) {
|
||||
// console.log('Arguments to ionic serve: "' + argv._ + '"');
|
||||
// }
|
||||
}
|
||||
}
|
||||
@@ -1,4 +0,0 @@
|
||||
{
|
||||
"name": "demo",
|
||||
"app_id": ""
|
||||
}
|
||||
@@ -1,33 +0,0 @@
|
||||
{
|
||||
"devDependencies": {
|
||||
"autoprefixer-loader": "^3.1.0",
|
||||
"awesome-typescript-loader": "0.12.0-rc.2",
|
||||
"css-loader": "^0.22.0",
|
||||
"file-loader": "^0.8.4",
|
||||
"node-sass": "^3.4.2",
|
||||
"resolve-url-loader": "^1.4.2",
|
||||
"sass-loader": "^3.1.1",
|
||||
"style-loader": "^0.13.0",
|
||||
"typescript": "1.5.3",
|
||||
"url-loader": "^0.5.6",
|
||||
"webpack": "^1.12.4"
|
||||
},
|
||||
"dependencies": {
|
||||
"ionic-framework": "2.0.0-alpha.35",
|
||||
"ionic-native": "^1.0.7"
|
||||
},
|
||||
"name": "demo",
|
||||
"description": "demo: An Ionic project",
|
||||
"cordovaPlugins": [
|
||||
"cordova-plugin-x-toast",
|
||||
"cordova-plugin-device",
|
||||
"cordova-plugin-console",
|
||||
"cordova-plugin-whitelist",
|
||||
"cordova-plugin-splashscreen",
|
||||
"cordova-plugin-statusbar",
|
||||
"ionic-plugin-keyboard"
|
||||
],
|
||||
"cordovaPlatforms": [
|
||||
"ios"
|
||||
]
|
||||
}
|
||||
|
Before Width: | Height: | Size: 2.8 KiB |
|
Before Width: | Height: | Size: 1.1 KiB |
|
Before Width: | Height: | Size: 1.8 KiB |
|
Before Width: | Height: | Size: 4.2 KiB |
|
Before Width: | Height: | Size: 7.6 KiB |
|
Before Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 13 KiB |
|
Before Width: | Height: | Size: 3.7 KiB |
|
Before Width: | Height: | Size: 6.9 KiB |
|
Before Width: | Height: | Size: 39 KiB |
|
Before Width: | Height: | Size: 58 KiB |
|
Before Width: | Height: | Size: 87 KiB |
|
Before Width: | Height: | Size: 13 KiB |
|
Before Width: | Height: | Size: 3.5 KiB |
|
Before Width: | Height: | Size: 7.0 KiB |
|
Before Width: | Height: | Size: 38 KiB |
|
Before Width: | Height: | Size: 54 KiB |
|
Before Width: | Height: | Size: 80 KiB |
|
Before Width: | Height: | Size: 59 KiB |
|
Before Width: | Height: | Size: 1.2 KiB |
|
Before Width: | Height: | Size: 3.5 KiB |
|
Before Width: | Height: | Size: 1.9 KiB |
|
Before Width: | Height: | Size: 4.6 KiB |
|
Before Width: | Height: | Size: 2.4 KiB |
|
Before Width: | Height: | Size: 5.9 KiB |
|
Before Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 2.8 KiB |
|
Before Width: | Height: | Size: 7.6 KiB |
|
Before Width: | Height: | Size: 3.2 KiB |
|
Before Width: | Height: | Size: 8.1 KiB |
|
Before Width: | Height: | Size: 818 B |
|
Before Width: | Height: | Size: 2.2 KiB |
|
Before Width: | Height: | Size: 3.8 KiB |
|
Before Width: | Height: | Size: 2.1 KiB |
|
Before Width: | Height: | Size: 5.6 KiB |
|
Before Width: | Height: | Size: 31 KiB |
|
Before Width: | Height: | Size: 40 KiB |
|
Before Width: | Height: | Size: 44 KiB |
|
Before Width: | Height: | Size: 44 KiB |
|
Before Width: | Height: | Size: 100 KiB |
|
Before Width: | Height: | Size: 22 KiB |
|
Before Width: | Height: | Size: 97 KiB |
|
Before Width: | Height: | Size: 22 KiB |
|
Before Width: | Height: | Size: 18 KiB |
|
Before Width: | Height: | Size: 7.0 KiB |
|
Before Width: | Height: | Size: 61 KiB |
@@ -1,14 +0,0 @@
|
||||
{
|
||||
"compilerOptions": {
|
||||
"target": "ES5",
|
||||
"allowNonTsExtensions": true,
|
||||
"module": "commonjs",
|
||||
"sourceMap": true,
|
||||
"isolatedModules": true,
|
||||
"noEmitOnError": false,
|
||||
"rootDir": ".",
|
||||
"emitDecoratorMetadata": true,
|
||||
"experimentalDecorators": true
|
||||
},
|
||||
"compileOnSave": false
|
||||
}
|
||||
@@ -1,80 +0,0 @@
|
||||
var path = require('path');
|
||||
|
||||
var autoprefixerOptions = {
|
||||
browsers: [
|
||||
'last 2 versions',
|
||||
'iOS >= 7',
|
||||
'Android >= 4',
|
||||
'Explorer >= 10',
|
||||
'ExplorerMobile >= 11'
|
||||
],
|
||||
cascade: false
|
||||
}
|
||||
|
||||
module.exports = {
|
||||
entry: [
|
||||
"es6-shim",
|
||||
"reflect-metadata",
|
||||
"web-animations.min",
|
||||
"zone.js",
|
||||
path.join(__dirname, 'www', 'app', 'app.js')
|
||||
],
|
||||
output: {
|
||||
path: path.join(__dirname, 'www', 'build', 'js'),
|
||||
filename: 'app.bundle.js',
|
||||
publicPath: 'build/js/'
|
||||
//pathinfo: true // show module paths in the bundle, handy for debugging
|
||||
},
|
||||
module: {
|
||||
loaders: [
|
||||
{
|
||||
test: /\.js$/,
|
||||
loader: "awesome-typescript-loader?doTypeCheck=false&useWebpackText=true",
|
||||
include: [path.join(__dirname, 'www')],
|
||||
exclude: /node_modules/
|
||||
},
|
||||
{
|
||||
test: /\.ts$/,
|
||||
loader: "awesome-typescript-loader",
|
||||
include: [path.join(__dirname, 'www')],
|
||||
exclude: /node_modules/
|
||||
},
|
||||
{
|
||||
// Loader to compile all of our SASS down.
|
||||
// Use the `resolve-url` pipe to convert the relative url paths to something this loader
|
||||
// can work with, e.g.: url('../my-file.png') => url('/path/to/my-file.png')
|
||||
// https://github.com/bholloway/resolve-url-loader
|
||||
test: /\.scss$/,
|
||||
loaders: [
|
||||
"style",
|
||||
"css",
|
||||
"autoprefixer?" + JSON.stringify(autoprefixerOptions),
|
||||
"resolve-url",
|
||||
"sass?sourceMap"
|
||||
]
|
||||
},
|
||||
// Any png-image or woff-font below or equal to 100K will be converted
|
||||
// to inline base64 instead
|
||||
{ test: /\.(png|woff|ttf)$/, loader: 'url-loader?limit=100000' }
|
||||
]
|
||||
},
|
||||
resolve: {
|
||||
modulesDirectories: [
|
||||
"node_modules",
|
||||
"node_modules/ionic-framework/node_modules", // angular is a dependency of ionic
|
||||
"node_modules/ionic-framework/dist/js", // for web-animations polyfill
|
||||
"node_modules/ionic-framework/dist/src/es5/common" // ionic-framework npm package (stable)
|
||||
// See README for steps on developing against ionic-framework locally
|
||||
// "dist/src/es5/common" // when developing against locally linked ionic-framework (master)
|
||||
],
|
||||
extensions: ["", ".js", ".ts"]
|
||||
},
|
||||
// Sass loader configuration to tell webpack where to find the additional SASS files
|
||||
// it needs for `ionic`, located in the ionic-framework node module folder.
|
||||
// https://github.com/jtangelder/sass-loader#sass-options
|
||||
sassLoader: {
|
||||
includePaths: [
|
||||
path.resolve(__dirname, "node_modules", 'ionic-framework', 'dist', 'src', 'scss')
|
||||
]
|
||||
}
|
||||
};
|
||||
@@ -1,27 +0,0 @@
|
||||
import {App, Platform} from 'ionic/ionic';
|
||||
import {HomePage} from './home/home';
|
||||
import './app.scss';
|
||||
|
||||
import {StatusBar} from 'ionic-native';
|
||||
|
||||
@App({
|
||||
template: `
|
||||
<ion-nav [root]="root"></ion-nav>
|
||||
<ion-overlay></ion-overlay>
|
||||
`,
|
||||
})
|
||||
export class MyApp {
|
||||
constructor(platform: Platform) {
|
||||
this.platform = platform;
|
||||
this.initializeApp();
|
||||
this.root = HomePage;
|
||||
|
||||
}
|
||||
|
||||
initializeApp() {
|
||||
this.platform.ready().then(() => {
|
||||
console.log('Platform ready');
|
||||
StatusBar.styleDefault();
|
||||
});
|
||||
}
|
||||
}
|
||||
@@ -1,24 +0,0 @@
|
||||
// To customize the look and feel of Ionic, you can override
|
||||
// the Sass variables found in Ionic's source scss files.
|
||||
|
||||
// App Color Variables
|
||||
// ---------------------------------
|
||||
// It's highly recommended to change the default colors
|
||||
// to match your app's branding. Ionic uses a Sass map of
|
||||
// colors so you can add, rename and remove colors as needed.
|
||||
// The "primary" color is the only required color in the map.
|
||||
|
||||
$colors: (primary: #387ef5, secondary: #32db64, danger: #f53d3d, light: #f4f4f4, dark: #222222);
|
||||
|
||||
// Ionic Sass
|
||||
// ---------------------------------
|
||||
@import "ionic";
|
||||
|
||||
// App Sass
|
||||
// ---------------------------------
|
||||
// It is recommended to do all of your imports in your files to let webpack build them
|
||||
// in a module like manner.
|
||||
// For example - instead of adding the @imports here, create a sass file
|
||||
// in ./tabs/tabs.scss - then @import your variables there, along with any custom styles.
|
||||
// Webpack only rebuilds that specific sass file on changes,
|
||||
// and not the entire bundle, making rebuild times much faster for sass changes
|
||||
@@ -1,13 +0,0 @@
|
||||
<ion-navbar *navbar>
|
||||
<ion-title>
|
||||
Ionic Native
|
||||
</ion-title>
|
||||
</ion-navbar>
|
||||
|
||||
<ion-content>
|
||||
<ion-list>
|
||||
<button ion-item *ng-for="#plugin of plugins" (click)="choosePlugin(plugin)">
|
||||
{{plugin.name}}
|
||||
</button>
|
||||
</ion-list>
|
||||
</ion-content>
|
||||
@@ -1,51 +0,0 @@
|
||||
import {Page, NavController} from 'ionic/ionic'
|
||||
|
||||
import {
|
||||
ActionSheet,
|
||||
BarcodeScanner,
|
||||
BLE,
|
||||
Camera,
|
||||
Calendar,
|
||||
Contacts,
|
||||
Device,
|
||||
Facebook,
|
||||
Geolocation,
|
||||
Push,
|
||||
StatusBar,
|
||||
Toast,
|
||||
TouchID
|
||||
} from 'ionic-native';
|
||||
|
||||
import {Plugin} from '../plugin/plugin';
|
||||
|
||||
@Page({
|
||||
templateUrl: 'app/home/home.html',
|
||||
})
|
||||
export class HomePage {
|
||||
constructor(nav: NavController) {
|
||||
this.nav = nav;
|
||||
|
||||
this.plugins = [
|
||||
ActionSheet,
|
||||
BarcodeScanner,
|
||||
BLE,
|
||||
Camera,
|
||||
Calendar,
|
||||
Contacts,
|
||||
Device,
|
||||
Facebook,
|
||||
Geolocation,
|
||||
Push,
|
||||
StatusBar,
|
||||
Toast,
|
||||
TouchID
|
||||
];
|
||||
console.log('PLUGINS', this.plugins);
|
||||
}
|
||||
|
||||
choosePlugin(plugin) {
|
||||
this.nav.push(Plugin, {
|
||||
plugin: plugin
|
||||
});
|
||||
}
|
||||
}
|
||||
@@ -1,16 +0,0 @@
|
||||
<ion-navbar *navbar>
|
||||
<ion-title>
|
||||
{{plugin.name}}
|
||||
</ion-title>
|
||||
</ion-navbar>
|
||||
|
||||
<ion-content>
|
||||
<ion-input fixed-label>
|
||||
<textarea [(ng-model)]="content.value" style="height: 150px; font-size: 11px" placeholder="Plugin output will go here as you test methods..."></textarea>
|
||||
</ion-input>
|
||||
<ion-list>
|
||||
<button ion-item *ng-for="#method of methods" (click)="doMethod(method)">
|
||||
{{method}}()
|
||||
</button>
|
||||
</ion-list>
|
||||
</ion-content>
|
||||
@@ -1,172 +0,0 @@
|
||||
import {ElementRef} from 'angular2/angular2';
|
||||
|
||||
import {Page, NavParams} from 'ionic/ionic';
|
||||
|
||||
import {Camera, Calendar, StatusBar, Toast, ActionSheet, Facebook, Push} from 'ionic-native';
|
||||
|
||||
import {safeJSONStringify} from '../util';
|
||||
|
||||
// To specify arguments for any plugin calls
|
||||
var demoArgs = {};
|
||||
demoArgs[ActionSheet] = {
|
||||
show: {
|
||||
'buttonLabels': ['Log out'],
|
||||
'androidEnableCancelButton' : true, // default false
|
||||
'winphoneEnableCancelButton' : true, // default false
|
||||
'addCancelButtonWithLabel': 'Cancel'
|
||||
}
|
||||
}
|
||||
|
||||
demoArgs[Toast] = {
|
||||
showWithOptions: [
|
||||
{
|
||||
message: "hey there",
|
||||
duration: "short",
|
||||
position: "bottom",
|
||||
addPixelsY: -40 // added a negative value to move it up a bit (default 0)
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
demoArgs[Facebook] = {
|
||||
login: [
|
||||
["public_profile"]
|
||||
]
|
||||
};
|
||||
|
||||
demoArgs[Push] = {
|
||||
init: [{
|
||||
android: {
|
||||
senderID: "12345679"
|
||||
},
|
||||
ios: {
|
||||
alert: "true",
|
||||
badge: true,
|
||||
sound: 'false'
|
||||
},
|
||||
windows: {}
|
||||
}]
|
||||
}
|
||||
|
||||
var demoCode = {};
|
||||
|
||||
demoCode[Calendar] = {
|
||||
createEventInteractively: function() {
|
||||
Calendar.createEventInteractively("Grab Coffee", "Johnson Public House", new Date(), new Date()).then((event) => {
|
||||
console.log("Created event", event);
|
||||
this.output('Created event', event);
|
||||
})
|
||||
}
|
||||
};
|
||||
demoCode[Facebook] = {
|
||||
login: function() {
|
||||
Facebook.login(["public_profile"]).then((userData) => {
|
||||
console.log("Facebook UserInfo: ", userData);
|
||||
this.output('Facebook UserInfo: ', userData);
|
||||
Facebook.getAccessToken().then((token) => {
|
||||
this.output('Facebook Token: ', token);
|
||||
console.log("Token: " + token);
|
||||
});
|
||||
}, (err) => {
|
||||
console.error(err);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@Page({
|
||||
templateUrl: 'app/plugin/plugin.html',
|
||||
})
|
||||
export class Plugin {
|
||||
constructor(params: NavParams, elementRef: ElementRef) {
|
||||
|
||||
let el = elementRef.nativeElement;
|
||||
|
||||
this.textArea = el.querySelector('textarea');
|
||||
|
||||
this.content = {
|
||||
items: [],
|
||||
value: ''
|
||||
};
|
||||
|
||||
this.plugin = params.get('plugin');
|
||||
console.log('Plugin', this.plugin);
|
||||
|
||||
this.methods = Object.keys(this.plugin).filter((k) => {
|
||||
if(typeof this.plugin[k] === 'function') {
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
});
|
||||
}
|
||||
|
||||
output(...args) {
|
||||
var s = args.map((v) => {
|
||||
if(typeof v === 'object') {
|
||||
console.log('Stringifying', v);
|
||||
return safeJSONStringify(v, 4);//JSON.stringify(v);
|
||||
}
|
||||
return v;
|
||||
});
|
||||
|
||||
this.content.items.push(s.join(' '));
|
||||
|
||||
this.content.value = this.content.items.join();
|
||||
|
||||
setTimeout(() => {
|
||||
this.textArea.scrollTop = this.textArea.scrollHeight;
|
||||
})
|
||||
}
|
||||
|
||||
doMethod(method) {
|
||||
let pluginMethodArgEntry = demoArgs[this.plugin];
|
||||
let pluginCodeEntry = demoCode[this.plugin] && demoCode[this.plugin][method];
|
||||
|
||||
let args = [];
|
||||
if(pluginMethodArgEntry) {
|
||||
args = [pluginMethodArgEntry[method]] || [];
|
||||
console.log('Found some default args', args);
|
||||
}
|
||||
|
||||
Toast.showWithOptions({
|
||||
message: 'Doing ' + this.plugin.name + '.' + method + '()',
|
||||
duration: "short",
|
||||
position: "bottom",
|
||||
addPixelsY: -40 // added a negative value to move it up a bit (default 0)
|
||||
});
|
||||
console.log('Doing method', method, 'on Plugin', this.plugin, 'args:', args);
|
||||
|
||||
// Run the custom code
|
||||
if(pluginCodeEntry) {
|
||||
pluginCodeEntry.apply(this);
|
||||
return;
|
||||
}
|
||||
|
||||
let v = this.plugin[method].apply(this.plugin, args);
|
||||
|
||||
if(v && v.then) {
|
||||
v.then(() => {
|
||||
console.log('Success', arguments, this);
|
||||
this.output(arguments);
|
||||
}, (err) => {
|
||||
console.error('Error', err);
|
||||
this.output(err);
|
||||
});
|
||||
} else {
|
||||
console.log('Response: ', v);
|
||||
this.output(v);
|
||||
|
||||
if(v.subscribe) {
|
||||
console.log('Observable response, subscribing...');
|
||||
v.subscribe((val) => {
|
||||
console.log('Observable val', val);
|
||||
this.output(val);
|
||||
}, (err) => {
|
||||
this.output(err);
|
||||
console.log('ERROR: Observable', err);
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,68 +0,0 @@
|
||||
export function safeJSONStringify (input, maxDepth)
|
||||
{
|
||||
|
||||
var output,
|
||||
refs = [],
|
||||
refsPaths = [];
|
||||
|
||||
maxDepth = maxDepth || 5;
|
||||
|
||||
function recursion (input, path, depth)
|
||||
{
|
||||
var output = {},
|
||||
pPath,
|
||||
refIdx;
|
||||
|
||||
path = path || "";
|
||||
depth = depth || 0;
|
||||
depth++;
|
||||
|
||||
if (maxDepth && depth > maxDepth)
|
||||
{
|
||||
return "{depth over " + maxDepth + "}";
|
||||
}
|
||||
|
||||
for (var p in input)
|
||||
{
|
||||
pPath = (path ? (path+".") : "") + p;
|
||||
if (typeof input[p] === "function")
|
||||
{
|
||||
//output[p] = "{function}";
|
||||
}
|
||||
else if (typeof input[p] === "object")
|
||||
{
|
||||
/*
|
||||
refIdx = refs.indexOf(input[p]);
|
||||
|
||||
if (-1 !== refIdx)
|
||||
{
|
||||
output[p] = recursion(input[p])"{reference to " + refsPaths[refIdx] + "}";
|
||||
}
|
||||
else
|
||||
{
|
||||
*/
|
||||
refs.push(input[p]);
|
||||
refsPaths.push(pPath);
|
||||
output[p] = recursion(input[p], pPath, depth);
|
||||
//}
|
||||
}
|
||||
else
|
||||
{
|
||||
output[p] = input[p];
|
||||
}
|
||||
}
|
||||
|
||||
return output;
|
||||
}
|
||||
|
||||
if (typeof input === "object")
|
||||
{
|
||||
output = recursion(input);
|
||||
}
|
||||
else
|
||||
{
|
||||
output = input;
|
||||
}
|
||||
|
||||
return JSON.stringify(output);
|
||||
}
|
||||
@@ -1,24 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<title>Ionic</title>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no">
|
||||
<meta http-equiv="Content-Security-Policy" content="default-src 'self' data: gap: https://ssl.gstatic.com 'unsafe-eval'; style-src 'self' 'unsafe-inline'; media-src *">
|
||||
<meta name="format-detection" content="telephone=no">
|
||||
<meta name="msapplication-tap-highlight" content="no">
|
||||
<!--
|
||||
Looking for a style sheet?
|
||||
Webpack loads styles as dependencies in your javascript
|
||||
See www/app/app.js as an example
|
||||
-->
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<ion-app></ion-app>
|
||||
<script src="cordova.js"></script>
|
||||
<script src="build/js/app.bundle.js"></script>
|
||||
</body>
|
||||
|
||||
</html>
|
||||
14
dist/index.d.ts
vendored
@@ -1,14 +0,0 @@
|
||||
import { ActionSheet } from './plugins/actionsheet';
|
||||
import { BarcodeScanner } from './plugins/barcodescanner';
|
||||
import { BLE } from './plugins/ble';
|
||||
import { Camera } from './plugins/camera';
|
||||
import { Calendar } from './plugins/calendar';
|
||||
import { Contacts } from './plugins/contacts';
|
||||
import { Device } from './plugins/device';
|
||||
import { Facebook } from './plugins/facebook';
|
||||
import { Geolocation } from './plugins/geolocation';
|
||||
import { Push } from './plugins/push';
|
||||
import { StatusBar } from './plugins/statusbar';
|
||||
import { Toast } from './plugins/toast';
|
||||
import { TouchID } from './plugins/touchid';
|
||||
export { ActionSheet, BarcodeScanner, BLE, Camera, Calendar, Contacts, Device, Facebook, Geolocation, Push, StatusBar, Toast, TouchID };
|
||||
61
dist/index.js
vendored
@@ -1,61 +0,0 @@
|
||||
var ng1_1 = require('./ng1');
|
||||
ng1_1.initAngular1();
|
||||
var DEVICE_READY_TIMEOUT = 2000;
|
||||
var actionsheet_1 = require('./plugins/actionsheet');
|
||||
exports.ActionSheet = actionsheet_1.ActionSheet;
|
||||
var barcodescanner_1 = require('./plugins/barcodescanner');
|
||||
exports.BarcodeScanner = barcodescanner_1.BarcodeScanner;
|
||||
var ble_1 = require('./plugins/ble');
|
||||
exports.BLE = ble_1.BLE;
|
||||
var camera_1 = require('./plugins/camera');
|
||||
exports.Camera = camera_1.Camera;
|
||||
var calendar_1 = require('./plugins/calendar');
|
||||
exports.Calendar = calendar_1.Calendar;
|
||||
var contacts_1 = require('./plugins/contacts');
|
||||
exports.Contacts = contacts_1.Contacts;
|
||||
var device_1 = require('./plugins/device');
|
||||
exports.Device = device_1.Device;
|
||||
var facebook_1 = require('./plugins/facebook');
|
||||
exports.Facebook = facebook_1.Facebook;
|
||||
var geolocation_1 = require('./plugins/geolocation');
|
||||
exports.Geolocation = geolocation_1.Geolocation;
|
||||
var push_1 = require('./plugins/push');
|
||||
exports.Push = push_1.Push;
|
||||
var statusbar_1 = require('./plugins/statusbar');
|
||||
exports.StatusBar = statusbar_1.StatusBar;
|
||||
var toast_1 = require('./plugins/toast');
|
||||
exports.Toast = toast_1.Toast;
|
||||
var touchid_1 = require('./plugins/touchid');
|
||||
exports.TouchID = touchid_1.TouchID;
|
||||
// Window export to use outside of a module loading system
|
||||
window['IonicNative'] = {
|
||||
ActionSheet: actionsheet_1.ActionSheet,
|
||||
BarcodeScanner: barcodescanner_1.BarcodeScanner,
|
||||
BLE: ble_1.BLE,
|
||||
Camera: camera_1.Camera,
|
||||
Calendar: calendar_1.Calendar,
|
||||
Contacts: contacts_1.Contacts,
|
||||
Device: device_1.Device,
|
||||
Facebook: facebook_1.Facebook,
|
||||
Geolocation: geolocation_1.Geolocation,
|
||||
Push: push_1.Push,
|
||||
StatusBar: statusbar_1.StatusBar,
|
||||
Toast: toast_1.Toast,
|
||||
TouchID: touchid_1.TouchID
|
||||
};
|
||||
// To help developers using cordova, we listen for the device ready event and
|
||||
// log an error if it didn't fire in a reasonable amount of time. Generally,
|
||||
// when this happens, developers should remove and reinstall plugins, since
|
||||
// an inconsistent plugin is often the culprit.
|
||||
var before = +new Date;
|
||||
var didFireReady = false;
|
||||
document.addEventListener('deviceready', function () {
|
||||
console.log('DEVICE READY FIRED AFTER', (+new Date - before), 'ms');
|
||||
didFireReady = true;
|
||||
});
|
||||
setTimeout(function () {
|
||||
if (!didFireReady && window.cordova) {
|
||||
console.warn('Native: deviceready did not fire within ' + DEVICE_READY_TIMEOUT + 'ms. This can happen when plugins are in an inconsistent state. Try removing plugins from plugins/ and reinstalling them.');
|
||||
}
|
||||
}, DEVICE_READY_TIMEOUT);
|
||||
//# sourceMappingURL=index.js.map
|
||||
1
dist/index.js.map
vendored
@@ -1 +0,0 @@
|
||||
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,oBAA2B,OAAO,CAAC,CAAA;AACnC,kBAAY,EAAE,CAAC;AAEf,IAAM,oBAAoB,GAAG,IAAI,CAAC;AAKlC,4BAA0B,uBAAuB,CAAC,CAAA;AAehD,mBAAW;AAdb,+BAA6B,0BAA0B,CAAC,CAAA;AAetD,sBAAc;AAdhB,oBAAkB,eAAe,CAAC,CAAA;AAehC,WAAG;AAdL,uBAAqB,kBAAkB,CAAC,CAAA;AAetC,cAAM;AAdR,yBAAuB,oBAAoB,CAAC,CAAA;AAe1C,gBAAQ;AAdV,yBAAuB,oBAAoB,CAAC,CAAA;AAe1C,gBAAQ;AAdV,uBAAqB,kBAAkB,CAAC,CAAA;AAetC,cAAM;AAdR,yBAAuB,oBAAoB,CAAC,CAAA;AAe1C,gBAAQ;AAdV,4BAA0B,uBAAuB,CAAC,CAAA;AAehD,mBAAW;AAdb,qBAAmB,gBAAgB,CAAC,CAAA;AAelC,YAAI;AAdN,0BAAwB,qBAAqB,CAAC,CAAA;AAe5C,iBAAS;AAdX,sBAAoB,iBAAiB,CAAC,CAAA;AAepC,aAAK;AAdP,wBAAsB,mBAAmB,CAAC,CAAA;AAexC,eAAO;AAGT,0DAA0D;AAC1D,MAAM,CAAC,aAAa,CAAC,GAAG;IACtB,WAAW,EAAE,yBAAW;IACxB,gBAAA,+BAAc;IACd,GAAG,EAAE,SAAG;IACR,MAAM,EAAE,eAAM;IACd,QAAQ,EAAE,mBAAQ;IAClB,QAAQ,EAAE,mBAAQ;IAClB,MAAM,EAAE,eAAM;IACd,QAAQ,EAAE,mBAAQ;IAClB,WAAW,EAAE,yBAAW;IACxB,IAAI,EAAE,WAAI;IACV,SAAS,EAAE,qBAAS;IACpB,KAAK,EAAE,aAAK;IACZ,OAAO,EAAE,iBAAO;CACjB,CAAA;AAED,6EAA6E;AAC7E,4EAA4E;AAC5E,2EAA2E;AAC3E,+CAA+C;AAC/C,IAAI,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC;AAEvB,IAAI,YAAY,GAAG,KAAK,CAAC;AACzB,QAAQ,CAAC,gBAAgB,CAAC,aAAa,EAAE;IACvC,OAAO,CAAC,GAAG,CAAC,0BAA0B,EAAE,CAAC,CAAC,IAAI,IAAI,GAAG,MAAM,CAAC,EAAE,IAAI,CAAC,CAAA;IACnE,YAAY,GAAG,IAAI,CAAC;AACtB,CAAC,CAAC,CAAA;AAEF,UAAU,CAAC;IACT,EAAE,CAAA,CAAC,CAAC,YAAY,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;QACnC,OAAO,CAAC,IAAI,CAAC,0CAA0C,GAAG,oBAAoB,GAAG,0HAA0H,CAAC,CAAC;IAC/M,CAAC;AACH,CAAC,EAAE,oBAAoB,CAAC,CAAC"}
|
||||
0
dist/ionic.native.d.ts
vendored
1
dist/ionic.native.js
vendored
@@ -1 +0,0 @@
|
||||
//# sourceMappingURL=ionic.native.js.map
|
||||
1
dist/ionic.native.js.map
vendored
@@ -1 +0,0 @@
|
||||
{"version":3,"file":"ionic.native.js","sourceRoot":"","sources":[],"names":[],"mappings":""}
|
||||
8
dist/ng1.d.ts
vendored
@@ -1,8 +0,0 @@
|
||||
/**
|
||||
* Initialize the ngCordova Angular module if we're running in ng1
|
||||
*/
|
||||
export declare function initAngular1(): void;
|
||||
/**
|
||||
* Publish a new Angular 1 service for this plugin.
|
||||
*/
|
||||
export declare function publishAngular1Service(config: any, cls: any): void;
|
||||
24
dist/ng1.js
vendored
@@ -1,24 +0,0 @@
|
||||
/**
|
||||
* Initialize the ngCordova Angular module if we're running in ng1
|
||||
*/
|
||||
function initAngular1() {
|
||||
if (window.angular) {
|
||||
window.angular.module('ngCordova', []);
|
||||
}
|
||||
}
|
||||
exports.initAngular1 = initAngular1;
|
||||
/**
|
||||
* Publish a new Angular 1 service for this plugin.
|
||||
*/
|
||||
function publishAngular1Service(config, cls) {
|
||||
var serviceName = '$cordova' + cls.name;
|
||||
console.log('Registering Angular1 service', serviceName);
|
||||
window.angular.module('ngCordova').service(serviceName, [function () {
|
||||
var funcs = {};
|
||||
for (var k in cls) {
|
||||
}
|
||||
return funcs;
|
||||
}]);
|
||||
}
|
||||
exports.publishAngular1Service = publishAngular1Service;
|
||||
//# sourceMappingURL=ng1.js.map
|
||||
1
dist/ng1.js.map
vendored
@@ -1 +0,0 @@
|
||||
{"version":3,"file":"ng1.js","sourceRoot":"","sources":["../src/ng1.ts"],"names":["initAngular1","publishAngular1Service"],"mappings":"AAEA;;GAEG;AACH;IACEA,EAAEA,CAAAA,CAACA,MAAMA,CAACA,OAAOA,CAACA,CAACA,CAACA;QAClBA,MAAMA,CAACA,OAAOA,CAACA,MAAMA,CAACA,WAAWA,EAAEA,EAAEA,CAACA,CAACA;IACzCA,CAACA;AACHA,CAACA;AAJe,oBAAY,eAI3B,CAAA;AAED;;GAEG;AACH,gCAAuC,MAAU,EAAE,GAAO;IACxDC,IAAIA,WAAWA,GAAGA,UAAUA,GAAGA,GAAGA,CAACA,IAAIA,CAACA;IACxCA,OAAOA,CAACA,GAAGA,CAACA,8BAA8BA,EAAEA,WAAWA,CAACA,CAACA;IACzDA,MAAMA,CAACA,OAAOA,CAACA,MAAMA,CAACA,WAAWA,CAACA,CAACA,OAAOA,CAACA,WAAWA,EAAEA,CAACA;YACvD,IAAI,KAAK,GAAG,EAAE,CAAC;YACf,GAAG,CAAA,CAAC,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC;YACnB,CAAC;YACD,MAAM,CAAC,KAAK,CAAC;QACf,CAAC,CAACA,CAACA,CAACA;AACNA,CAACA;AATe,8BAAsB,yBASrC,CAAA"}
|
||||
52
dist/plugins/actionsheet.d.ts
vendored
@@ -1,52 +0,0 @@
|
||||
/**
|
||||
* The ActionSheet plugin shows a native list of options the user can choose from.
|
||||
*
|
||||
* Requires Cordova plugin: `cordova-plugin-actionsheet`. For more info, please see the [ActionSheet plugin docs](https://github.com/phonegap/phonegap-plugin-barcodescanner).
|
||||
*
|
||||
* @usage
|
||||
*
|
||||
* ```
|
||||
* import {ActionSheet} from 'ionic-native';
|
||||
*
|
||||
* let buttonLabels = ['Share via Facebook', 'Share via Twitter'];
|
||||
* ActionSheet.show({
|
||||
* 'title': 'What do you want with this image?',
|
||||
* 'buttonLabels': buttonLabels,
|
||||
* 'addCancelButtonWithLabel': 'Cancel',
|
||||
* 'addDestructiveButtonWithLabel' : 'Delete'
|
||||
* }).then(buttonIndex => {
|
||||
* console.log('Button pressed: ' + buttonLabels[buttonIndex - 1]);
|
||||
* });
|
||||
* ```
|
||||
*
|
||||
*/
|
||||
export declare class ActionSheet {
|
||||
/**
|
||||
* Show the ActionSheet.
|
||||
* @param {options} options
|
||||
* `buttonLabels`: string[]
|
||||
* `title`: string
|
||||
* `androidTheme` (Android only): number 1-5
|
||||
* `androidEnableCancelButton` (Android only): boolean, default false
|
||||
* `winphoneEnableCancelButton` (WP only): boolean, default false
|
||||
* `addCancelButtonWithLabel`: string
|
||||
* `addDestructiveButtonWithLabel`: string
|
||||
* `position`: [x, y] (iPad pass in [x, y] coords of popover)
|
||||
* @returns {Promise} Returns a Promise that resolves with the index of the
|
||||
* button pressed (1 based, so 1, 2, 3, etc.)
|
||||
*/
|
||||
static show(options?: {
|
||||
buttonLabels: string[];
|
||||
title?: string;
|
||||
androidTheme?: number;
|
||||
androidEnableCancelButton?: boolean;
|
||||
winphoneEnableCancelButton?: boolean;
|
||||
addCancelButtonWithLabel?: string;
|
||||
addDestructiveButtonWithLabel?: string;
|
||||
position?: number[];
|
||||
}): Promise<any>;
|
||||
/**
|
||||
* Hide the ActionSheet.
|
||||
*/
|
||||
static hide(): Promise<any>;
|
||||
}
|
||||
83
dist/plugins/actionsheet.js
vendored
@@ -1,83 +0,0 @@
|
||||
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
||||
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
||||
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
||||
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
||||
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
||||
};
|
||||
var plugin_1 = require('./plugin');
|
||||
/**
|
||||
* The ActionSheet plugin shows a native list of options the user can choose from.
|
||||
*
|
||||
* Requires Cordova plugin: `cordova-plugin-actionsheet`. For more info, please see the [ActionSheet plugin docs](https://github.com/phonegap/phonegap-plugin-barcodescanner).
|
||||
*
|
||||
* @usage
|
||||
*
|
||||
* ```
|
||||
* import {ActionSheet} from 'ionic-native';
|
||||
*
|
||||
* let buttonLabels = ['Share via Facebook', 'Share via Twitter'];
|
||||
* ActionSheet.show({
|
||||
* 'title': 'What do you want with this image?',
|
||||
* 'buttonLabels': buttonLabels,
|
||||
* 'addCancelButtonWithLabel': 'Cancel',
|
||||
* 'addDestructiveButtonWithLabel' : 'Delete'
|
||||
* }).then(buttonIndex => {
|
||||
* console.log('Button pressed: ' + buttonLabels[buttonIndex - 1]);
|
||||
* });
|
||||
* ```
|
||||
*
|
||||
*/
|
||||
var ActionSheet = (function () {
|
||||
function ActionSheet() {
|
||||
}
|
||||
/**
|
||||
* Show the ActionSheet.
|
||||
* @param {options} options
|
||||
* `buttonLabels`: string[]
|
||||
* `title`: string
|
||||
* `androidTheme` (Android only): number 1-5
|
||||
* `androidEnableCancelButton` (Android only): boolean, default false
|
||||
* `winphoneEnableCancelButton` (WP only): boolean, default false
|
||||
* `addCancelButtonWithLabel`: string
|
||||
* `addDestructiveButtonWithLabel`: string
|
||||
* `position`: [x, y] (iPad pass in [x, y] coords of popover)
|
||||
* @returns {Promise} Returns a Promise that resolves with the index of the
|
||||
* button pressed (1 based, so 1, 2, 3, etc.)
|
||||
*/
|
||||
ActionSheet.show = function (options) {
|
||||
// This Promise is replaced by one from the @Cordova decorator that wraps
|
||||
// the plugin's callbacks. We provide a dummy one here so TypeScript
|
||||
// knows that the correct return type is Promise, because there's no way
|
||||
// for it to know the return type from a decorator.
|
||||
// See https://github.com/Microsoft/TypeScript/issues/4881
|
||||
return new Promise(function (res, rej) { });
|
||||
};
|
||||
/**
|
||||
* Hide the ActionSheet.
|
||||
*/
|
||||
ActionSheet.hide = function () {
|
||||
// This Promise is replaced by one from the @Cordova decorator that wraps
|
||||
// the plugin's callbacks. We provide a dummy one here so TypeScript
|
||||
// knows that the correct return type is Promise, because there's no way
|
||||
// for it to know the return type from a decorator.
|
||||
// See https://github.com/Microsoft/TypeScript/issues/4881
|
||||
return new Promise(function (res, rej) { });
|
||||
};
|
||||
__decorate([
|
||||
plugin_1.Cordova()
|
||||
], ActionSheet, "show", null);
|
||||
__decorate([
|
||||
plugin_1.Cordova()
|
||||
], ActionSheet, "hide", null);
|
||||
ActionSheet = __decorate([
|
||||
plugin_1.Plugin({
|
||||
name: 'ActionSheet',
|
||||
plugin: 'cordova-plugin-actionsheet',
|
||||
pluginRef: 'plugins.actionsheet',
|
||||
repo: 'https://github.com/EddyVerbruggen/cordova-plugin-actionsheet'
|
||||
})
|
||||
], ActionSheet);
|
||||
return ActionSheet;
|
||||
})();
|
||||
exports.ActionSheet = ActionSheet;
|
||||
//# sourceMappingURL=actionsheet.js.map
|
||||
1
dist/plugins/actionsheet.js.map
vendored
@@ -1 +0,0 @@
|
||||
{"version":3,"file":"actionsheet.js","sourceRoot":"","sources":["../../src/plugins/actionsheet.ts"],"names":["ActionSheet","ActionSheet.constructor","ActionSheet.show","ActionSheet.hide"],"mappings":";;;;;;AAAA,uBAA8B,UAAU,CAAC,CAAA;AAEzC;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH;IAAAA;IAsDAC,CAACA;IA9CCD;;;;;;;;;;;;;OAaGA;IAEIA,gBAAIA,GADXA,UACYA,OASXA;QACCE,yEAAyEA;QACzEA,oEAAoEA;QACpEA,wEAAwEA;QACxEA,mDAAmDA;QACnDA,0DAA0DA;QAC1DA,MAAMA,CAACA,IAAIA,OAAOA,CAAMA,UAACA,GAAGA,EAAEA,GAAGA,IAAMA,CAACA,CAACA,CAACA;IAC5CA,CAACA;IAGDF;;OAEGA;IAEIA,gBAAIA,GADXA;QAEEG,yEAAyEA;QACzEA,oEAAoEA;QACpEA,wEAAwEA;QACxEA,mDAAmDA;QACnDA,0DAA0DA;QAC1DA,MAAMA,CAACA,IAAIA,OAAOA,CAAMA,UAACA,GAAGA,EAAEA,GAAGA,IAAMA,CAACA,CAACA,CAACA;IAC5CA,CAACA;IA/BDH;QAACA,gBAAOA,EAAEA;OACHA,mBAAIA,QAgBVA;IAMDA;QAACA,gBAAOA,EAAEA;OACHA,mBAAIA,QAOVA;IArDHA;QAACA,eAAMA,CAACA;YACNA,IAAIA,EAAEA,aAAaA;YACnBA,MAAMA,EAAEA,4BAA4BA;YACpCA,SAASA,EAAEA,qBAAqBA;YAChCA,IAAIA,EAAEA,8DAA8DA;SACrEA,CAACA;oBAiDDA;IAADA,kBAACA;AAADA,CAACA,AAtDD,IAsDC;AAhDY,mBAAW,cAgDvB,CAAA"}
|
||||
21
dist/plugins/barcodescanner.d.ts
vendored
@@ -1,21 +0,0 @@
|
||||
/**
|
||||
* The Barcode Scanner Plugin opens a camera view and automatically scans a barcode, returning the data back to you.
|
||||
*
|
||||
* Requires Cordova plugin: `phonegap-plugin-barcodescanner`. For more info, please see the [BarcodeScanner plugin docs](https://github.com/phonegap/phonegap-plugin-barcodescanner).
|
||||
*
|
||||
* @usage
|
||||
* ```js
|
||||
* BarcodeScanner.scan().then((barcodeData) => {
|
||||
* // Success! Barcode data is here
|
||||
* }, (err) => {
|
||||
* // An error occurred
|
||||
* });
|
||||
* ```
|
||||
*/
|
||||
export declare class BarcodeScanner {
|
||||
/**
|
||||
* Open the barcode scanner.
|
||||
* @return Returns a Promise that resolves with scanner data, or rejects with an error.
|
||||
*/
|
||||
static scan(): Promise<any>;
|
||||
}
|
||||
51
dist/plugins/barcodescanner.js
vendored
@@ -1,51 +0,0 @@
|
||||
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
||||
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
||||
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
||||
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
||||
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
||||
};
|
||||
var plugin_1 = require('./plugin');
|
||||
/**
|
||||
* The Barcode Scanner Plugin opens a camera view and automatically scans a barcode, returning the data back to you.
|
||||
*
|
||||
* Requires Cordova plugin: `phonegap-plugin-barcodescanner`. For more info, please see the [BarcodeScanner plugin docs](https://github.com/phonegap/phonegap-plugin-barcodescanner).
|
||||
*
|
||||
* @usage
|
||||
* ```js
|
||||
* BarcodeScanner.scan().then((barcodeData) => {
|
||||
* // Success! Barcode data is here
|
||||
* }, (err) => {
|
||||
* // An error occurred
|
||||
* });
|
||||
* ```
|
||||
*/
|
||||
var BarcodeScanner = (function () {
|
||||
function BarcodeScanner() {
|
||||
}
|
||||
/**
|
||||
* Open the barcode scanner.
|
||||
* @return Returns a Promise that resolves with scanner data, or rejects with an error.
|
||||
*/
|
||||
BarcodeScanner.scan = function () {
|
||||
// This Promise is replaced by one from the @Cordova decorator that wraps
|
||||
// the plugin's callbacks. We provide a dummy one here so TypeScript
|
||||
// knows that the correct return type is Promise, because there's no way
|
||||
// for it to know the return type from a decorator.
|
||||
// See https://github.com/Microsoft/TypeScript/issues/4881
|
||||
return new Promise(function (res, rej) { });
|
||||
};
|
||||
;
|
||||
__decorate([
|
||||
plugin_1.Cordova()
|
||||
], BarcodeScanner, "scan", null);
|
||||
BarcodeScanner = __decorate([
|
||||
plugin_1.Plugin({
|
||||
name: 'BarcodeScanner',
|
||||
plugin: 'phonegap-plugin-barcodescanner',
|
||||
pluginRef: 'cordova.plugins.barcodeScanner'
|
||||
})
|
||||
], BarcodeScanner);
|
||||
return BarcodeScanner;
|
||||
})();
|
||||
exports.BarcodeScanner = BarcodeScanner;
|
||||
//# sourceMappingURL=barcodescanner.js.map
|
||||
1
dist/plugins/barcodescanner.js.map
vendored
@@ -1 +0,0 @@
|
||||
{"version":3,"file":"barcodescanner.js","sourceRoot":"","sources":["../../src/plugins/barcodescanner.ts"],"names":["BarcodeScanner","BarcodeScanner.constructor","BarcodeScanner.scan"],"mappings":";;;;;;AAAA,uBAA8B,UAAU,CAAC,CAAA;AAEzC;;;;;;;;;;;;;GAaG;AACH;IAAAA;IAwBAC,CAACA;IAjBCD;;;OAGGA;IAEIA,mBAAIA,GADXA;QAEEE,yEAAyEA;QACzEA,oEAAoEA;QACpEA,wEAAwEA;QACxEA,mDAAmDA;QACnDA,0DAA0DA;QAC1DA,MAAMA,CAACA,IAAIA,OAAOA,CAAMA,UAACA,GAAGA,EAAEA,GAAGA,IAAMA,CAACA,CAACA,CAACA;IAC5CA,CAACA;;IARDF;QAACA,gBAAOA,EAAEA;OACHA,sBAAIA,QAOVA;IAnBHA;QAACA,eAAMA,CAACA;YACNA,IAAIA,EAAEA,gBAAgBA;YACtBA,MAAMA,EAAEA,gCAAgCA;YACxCA,SAASA,EAAEA,gCAAgCA;SAC5CA,CAACA;uBAoBDA;IAADA,qBAACA;AAADA,CAACA,AAxBD,IAwBC;AAnBY,sBAAc,iBAmB1B,CAAA"}
|
||||
337
dist/plugins/ble.d.ts
vendored
@@ -1,337 +0,0 @@
|
||||
import { Observable } from 'rxjs/Observable';
|
||||
/**
|
||||
* This plugin enables communication between a phone and Bluetooth Low Energy (BLE) peripherals.
|
||||
*
|
||||
* The plugin provides a simple JavaScript API for iOS and Android.
|
||||
*
|
||||
* - Scan for peripherals
|
||||
* - Connect to a peripheral
|
||||
* - Read the value of a characteristic
|
||||
* - Write new value to a characteristic
|
||||
* - Get notified when characteristic's value changes
|
||||
*
|
||||
* Advertising information is returned when scanning for peripherals. Service, characteristic, and property info is returned when connecting to a peripheral. All access is via service and characteristic UUIDs. The plugin manages handles internally.
|
||||
*
|
||||
* Simultaneous connections to multiple peripherals are supported.
|
||||
*
|
||||
* ## Peripheral Data
|
||||
*
|
||||
* Peripheral Data is passed to the success callback when scanning and connecting. Limited data is passed when scanning.
|
||||
* ```
|
||||
* {
|
||||
* "name": "Battery Demo",
|
||||
* "id": "20:FF:D0:FF:D1:C0",
|
||||
* "advertising": [2,1,6,3,3,15,24,8,9,66,97,116,116,101,114,121],
|
||||
* "rssi": -55
|
||||
* }
|
||||
* ```
|
||||
* After connecting, the peripheral object also includes service, characteristic and descriptor information.
|
||||
* ```
|
||||
* {
|
||||
* "name": "Battery Demo",
|
||||
* "id": "20:FF:D0:FF:D1:C0",
|
||||
* "advertising": [2,1,6,3,3,15,24,8,9,66,97,116,116,101,114,121],
|
||||
* "rssi": -55,
|
||||
* "services": [
|
||||
* "1800",
|
||||
* "1801",
|
||||
* "180f"
|
||||
* ],
|
||||
* "characteristics": [
|
||||
* {
|
||||
* "service": "1800",
|
||||
* "characteristic": "2a00",
|
||||
* "properties": [
|
||||
* "Read"
|
||||
* ]
|
||||
* },
|
||||
* {
|
||||
* "service": "1800",
|
||||
* "characteristic": "2a01",
|
||||
* "properties": [
|
||||
* "Read"
|
||||
* ]
|
||||
* },
|
||||
* {
|
||||
* "service": "1801",
|
||||
* "characteristic": "2a05",
|
||||
* "properties": [
|
||||
* "Read"
|
||||
* ]
|
||||
* },
|
||||
* {
|
||||
* "service": "180f",
|
||||
* "characteristic": "2a19",
|
||||
* "properties": [
|
||||
* "Read"
|
||||
* ],
|
||||
* "descriptors": [
|
||||
* {
|
||||
* "uuid": "2901"
|
||||
* },
|
||||
* {
|
||||
* "uuid": "2904"
|
||||
* }
|
||||
* ]
|
||||
* }
|
||||
* ]
|
||||
* }
|
||||
* ```
|
||||
*
|
||||
* ## Advertising Data
|
||||
* Bluetooth advertising data is returned in when scanning for devices. The format format varies depending on your platform. On Android advertising data will be the raw advertising bytes. iOS does not allow access to raw advertising data, so a dictionary of data is returned.
|
||||
*
|
||||
* The advertising information for both Android and iOS appears to be a combination of advertising data and scan response data.
|
||||
*
|
||||
* ### Android
|
||||
* ```
|
||||
* {
|
||||
* "name": "demo",
|
||||
* "id": "00:1A:7D:DA:71:13",
|
||||
* "advertising": ArrayBuffer,
|
||||
* "rssi": -37
|
||||
* }
|
||||
* ```
|
||||
*
|
||||
* Convert the advertising info to a Uint8Array for processing. `var adData = new Uint8Array(peripheral.advertising)`
|
||||
*
|
||||
* ### iOS
|
||||
*
|
||||
* Note that iOS uses the string value of the constants for the [Advertisement Data Retrieval Keys](https://developer.apple.com/library/ios/documentation/CoreBluetooth/Reference/CBCentralManagerDelegate_Protocol/index.html#//apple_ref/doc/constant_group/Advertisement_Data_Retrieval_Keys). This will likely change in the future.
|
||||
* ```
|
||||
* {
|
||||
* "name": "demo",
|
||||
* "id": "D8479A4F-7517-BCD3-91B5-3302B2F81802",
|
||||
* "advertising": {
|
||||
* "kCBAdvDataChannel": 37,
|
||||
* "kCBAdvDataServiceData": {
|
||||
* "FED8": {
|
||||
* "byteLength": 7 // data not shown
|
||||
* }
|
||||
* },
|
||||
* "kCBAdvDataLocalName": "demo",
|
||||
* "kCBAdvDataServiceUUIDs": ["FED8"],
|
||||
* "kCBAdvDataManufacturerData": {
|
||||
* "byteLength": 7 // data not shown
|
||||
* },
|
||||
* "kCBAdvDataTxPowerLevel": 32,
|
||||
* "kCBAdvDataIsConnectable": true
|
||||
* },
|
||||
* "rssi": -53
|
||||
* }
|
||||
* ```
|
||||
*
|
||||
* ## Typed Arrays
|
||||
*
|
||||
* This plugin uses typed Arrays or ArrayBuffers for sending and receiving data.
|
||||
*
|
||||
* This means that you need convert your data to ArrayBuffers before sending and from ArrayBuffers when receiving.
|
||||
* ```
|
||||
* // ASCII only
|
||||
* function stringToBytes(string) {
|
||||
* var array = new Uint8Array(string.length);
|
||||
* for (var i = 0, l = string.length; i < l; i++) {
|
||||
* array[i] = string.charCodeAt(i);
|
||||
* }
|
||||
* return array.buffer;
|
||||
* }
|
||||
*
|
||||
* // ASCII only
|
||||
* function bytesToString(buffer) {
|
||||
* return String.fromCharCode.apply(null, new Uint8Array(buffer));
|
||||
* }
|
||||
* ```
|
||||
* You can read more about typed arrays in these articles on [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Typed_arrays) and [HTML5 Rocks](http://www.html5rocks.com/en/tutorials/webgl/typed_arrays/).
|
||||
*
|
||||
* ## UUIDs
|
||||
*
|
||||
* UUIDs are always strings and not numbers. Some 16-bit UUIDs, such as '2220' look like integers, but they're not. (The integer 2220 is 0x8AC in hex.) This isn't a problem with 128 bit UUIDs since they look like strings 82b9e6e1-593a-456f-be9b-9215160ebcac. All 16-bit UUIDs should also be passed to methods as strings.
|
||||
*
|
||||
*/
|
||||
export declare class BLE {
|
||||
/**
|
||||
* Scan and discover BLE peripherals for the specified amount of time.
|
||||
*
|
||||
* @usage
|
||||
* ```
|
||||
* BLE.scan([], 5).subscribe(device => {
|
||||
* console.log(JSON.stringify(device));
|
||||
* });
|
||||
* ```
|
||||
* @param {string[]} services List of service UUIDs to discover, or `[]` to find all devices
|
||||
* @param {number} seconds Number of seconds to run discovery
|
||||
* @return Returns an Observable that notifies of each peripheral that is discovered during the specified time.
|
||||
*/
|
||||
static scan(services: string[], seconds: number): Observable<any>;
|
||||
/**
|
||||
* Scan and discover BLE peripherals until `stopScan` is called.
|
||||
*
|
||||
* @usage
|
||||
* ```
|
||||
* BLE.startScan([]).subscribe(device => {
|
||||
* console.log(JSON.stringify(device));
|
||||
* });
|
||||
*
|
||||
* setTimeout(() => {
|
||||
* BLE.stopScan();
|
||||
* }, 5000);
|
||||
* ```
|
||||
* @param {string[]} services List of service UUIDs to discover, or `[]` to find all devices
|
||||
* @return Returns an Observable that notifies of each peripheral discovered.
|
||||
*/
|
||||
static startScan(services: string[]): Observable<any>;
|
||||
/**
|
||||
* Stop a scan started by `startScan`.
|
||||
*
|
||||
* @usage
|
||||
* ```
|
||||
* BLE.startScan([]).subscribe(device => {
|
||||
* console.log(JSON.stringify(device));
|
||||
* });
|
||||
* setTimeout(() => {
|
||||
* BLE.stopScan().then(() => { console.log('scan stopped'); });
|
||||
* }, 5000);
|
||||
* ```
|
||||
* @return returns a Promise.
|
||||
*/
|
||||
static stopScan(): Promise<any>;
|
||||
/**
|
||||
* Connect to a peripheral.
|
||||
* @usage
|
||||
* ```
|
||||
* BLE.connect('12:34:56:78:9A:BC').subscribe(peripheralData => {
|
||||
* console.log(peripheralData);
|
||||
* },
|
||||
* peripheralData => {
|
||||
* console.log('disconnected');
|
||||
* });
|
||||
* ```
|
||||
* @param deviceId {string} UUID or MAC address of the peripheral
|
||||
* @return Returns an Observable that notifies of connect/disconnect.
|
||||
*/
|
||||
static connect(deviceId: string): Observable<any>;
|
||||
/**
|
||||
* Disconnect from a peripheral.
|
||||
* @usage
|
||||
* ```
|
||||
* BLE.disconnect('12:34:56:78:9A:BC').then(() => {
|
||||
* console.log('Disconnected');
|
||||
* });
|
||||
* ```
|
||||
* @param deviceId {string} UUID or MAC address of the peripheral
|
||||
* @return Returns a Promise
|
||||
*/
|
||||
static disconnect(deviceId: string): Promise<any>;
|
||||
/**
|
||||
* Read the value of a characteristic.
|
||||
*
|
||||
* @param {string} device_id UUID or MAC address of the peripheral
|
||||
* @param {string} service_uuid UUID of the BLE service
|
||||
* @param {string} characteristic_uuid UUID of the BLE characteristic
|
||||
* @return Returns a Promise
|
||||
*/
|
||||
static read(deviceId: string, serviceUUID: string, characteristicUUID: string): Promise<any>;
|
||||
/**
|
||||
* Write the value of a characteristic.
|
||||
* @usage
|
||||
* ```
|
||||
* // send 1 byte to switch a light on
|
||||
* var data = new Uint8Array(1);
|
||||
* data[0] = 1;
|
||||
* BLE.write(device_id, "FF10", "FF11", data.buffer);
|
||||
*
|
||||
* // send a 3 byte value with RGB color
|
||||
* var data = new Uint8Array(3);
|
||||
* data[0] = 0xFF; // red
|
||||
* data[0] = 0x00; // green
|
||||
* data[0] = 0xFF; // blue
|
||||
* BLE.write(device_id, "ccc0", "ccc1", data.buffer);
|
||||
*
|
||||
* // send a 32 bit integer
|
||||
* var data = new Uint32Array(1);
|
||||
* data[0] = counterInput.value;
|
||||
* BLE.write(device_id, SERVICE, CHARACTERISTIC, data.buffer);
|
||||
*
|
||||
* ```
|
||||
* @param {string} device_id UUID or MAC address of the peripheral
|
||||
* @param {string} service_uuid UUID of the BLE service
|
||||
* @param {string} characteristic_uuid UUID of the BLE characteristic
|
||||
* @param {ArrayBuffer} value Data to write to the characteristic, as an ArrayBuffer.
|
||||
* @return Returns a Promise
|
||||
*/
|
||||
static write(deviceId: string, serviceUUID: string, characteristicUUID: string, value: ArrayBuffer): Promise<any>;
|
||||
/**
|
||||
* Write the value of a characteristic without waiting for confirmation from the peripheral.
|
||||
*
|
||||
* @param {string} device_id UUID or MAC address of the peripheral
|
||||
* @param {string} service_uuid UUID of the BLE service
|
||||
* @param {string} characteristic_uuid UUID of the BLE characteristic
|
||||
* @param {ArrayBuffer} value Data to write to the characteristic, as an ArrayBuffer.
|
||||
* @return Returns a Promise
|
||||
*/
|
||||
static writeWithoutResponse(deviceId: string, serviceUUID: string, characteristicUUID: string, value: ArrayBuffer): Promise<any>;
|
||||
/**
|
||||
* Register to be notified when the value of a characteristic changes.
|
||||
*
|
||||
* @usage
|
||||
* ```
|
||||
* BLE.startNotification(device_id, "FF10", "FF11").subscribe(buffer => {
|
||||
* console.log(String.fromCharCode.apply(null, new Uint8Array(buffer));
|
||||
* });
|
||||
* ```
|
||||
*
|
||||
* @param {string} device_id UUID or MAC address of the peripheral
|
||||
* @param {string} service_uuid UUID of the BLE service
|
||||
* @param {string} characteristic_uuid UUID of the BLE characteristic
|
||||
* @return Returns an Observable that notifies of characteristic changes.
|
||||
*/
|
||||
static startNotification(deviceId: string, serviceUUID: string, characteristicUUID: string): Observable<any>;
|
||||
/**
|
||||
* Stop being notified when the value of a characteristic changes.
|
||||
*
|
||||
* @param {string} device_id UUID or MAC address of the peripheral
|
||||
* @param {string} service_uuid UUID of the BLE service
|
||||
* @param {string} characteristic_uuid UUID of the BLE characteristic
|
||||
* @return Returns a Promise.
|
||||
*/
|
||||
static stopNotification(deviceId: string, serviceUUID: string, characteristicUUID: string): Promise<any>;
|
||||
/**
|
||||
* Report the connection status.
|
||||
*
|
||||
* @usage
|
||||
* ```
|
||||
* BLE.isConnected('FFCA0B09-CB1D-4DC0-A1EF-31AFD3EDFB53').then(
|
||||
* () => { console.log('connected'); },
|
||||
* () => { console.log('not connected'); }
|
||||
* );
|
||||
* ```
|
||||
* @param {string} device_id UUID or MAC address of the peripheral
|
||||
* @return Returns a Promise.
|
||||
*/
|
||||
static isConnected(deviceId: string): Promise<any>;
|
||||
/**
|
||||
* Report if bluetooth is enabled.
|
||||
*
|
||||
* @usage
|
||||
* ```
|
||||
* BLE.isEnabled().then(
|
||||
* () => { console.log('enabled'); },
|
||||
* () => { console.log('not enabled'); }
|
||||
* );
|
||||
* ```
|
||||
* @return Returns a Promise.
|
||||
*/
|
||||
static isEnabled(): Promise<any>;
|
||||
/**
|
||||
* Open System Bluetooth settings (Android only).
|
||||
*
|
||||
* @return Returns a Promise.
|
||||
*/
|
||||
static showBluetoothSettings(): Promise<any>;
|
||||
/**
|
||||
* Enable Bluetooth on the device (Android only).
|
||||
*
|
||||
* @return Returns a Promise.
|
||||
*/
|
||||
static enable(): Promise<any>;
|
||||
}
|
||||
520
dist/plugins/ble.js
vendored
@@ -1,520 +0,0 @@
|
||||
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
||||
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
||||
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
||||
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
||||
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
||||
};
|
||||
var plugin_1 = require('./plugin');
|
||||
var Observable_1 = require('rxjs/Observable');
|
||||
/**
|
||||
* This plugin enables communication between a phone and Bluetooth Low Energy (BLE) peripherals.
|
||||
*
|
||||
* The plugin provides a simple JavaScript API for iOS and Android.
|
||||
*
|
||||
* - Scan for peripherals
|
||||
* - Connect to a peripheral
|
||||
* - Read the value of a characteristic
|
||||
* - Write new value to a characteristic
|
||||
* - Get notified when characteristic's value changes
|
||||
*
|
||||
* Advertising information is returned when scanning for peripherals. Service, characteristic, and property info is returned when connecting to a peripheral. All access is via service and characteristic UUIDs. The plugin manages handles internally.
|
||||
*
|
||||
* Simultaneous connections to multiple peripherals are supported.
|
||||
*
|
||||
* ## Peripheral Data
|
||||
*
|
||||
* Peripheral Data is passed to the success callback when scanning and connecting. Limited data is passed when scanning.
|
||||
* ```
|
||||
* {
|
||||
* "name": "Battery Demo",
|
||||
* "id": "20:FF:D0:FF:D1:C0",
|
||||
* "advertising": [2,1,6,3,3,15,24,8,9,66,97,116,116,101,114,121],
|
||||
* "rssi": -55
|
||||
* }
|
||||
* ```
|
||||
* After connecting, the peripheral object also includes service, characteristic and descriptor information.
|
||||
* ```
|
||||
* {
|
||||
* "name": "Battery Demo",
|
||||
* "id": "20:FF:D0:FF:D1:C0",
|
||||
* "advertising": [2,1,6,3,3,15,24,8,9,66,97,116,116,101,114,121],
|
||||
* "rssi": -55,
|
||||
* "services": [
|
||||
* "1800",
|
||||
* "1801",
|
||||
* "180f"
|
||||
* ],
|
||||
* "characteristics": [
|
||||
* {
|
||||
* "service": "1800",
|
||||
* "characteristic": "2a00",
|
||||
* "properties": [
|
||||
* "Read"
|
||||
* ]
|
||||
* },
|
||||
* {
|
||||
* "service": "1800",
|
||||
* "characteristic": "2a01",
|
||||
* "properties": [
|
||||
* "Read"
|
||||
* ]
|
||||
* },
|
||||
* {
|
||||
* "service": "1801",
|
||||
* "characteristic": "2a05",
|
||||
* "properties": [
|
||||
* "Read"
|
||||
* ]
|
||||
* },
|
||||
* {
|
||||
* "service": "180f",
|
||||
* "characteristic": "2a19",
|
||||
* "properties": [
|
||||
* "Read"
|
||||
* ],
|
||||
* "descriptors": [
|
||||
* {
|
||||
* "uuid": "2901"
|
||||
* },
|
||||
* {
|
||||
* "uuid": "2904"
|
||||
* }
|
||||
* ]
|
||||
* }
|
||||
* ]
|
||||
* }
|
||||
* ```
|
||||
*
|
||||
* ## Advertising Data
|
||||
* Bluetooth advertising data is returned in when scanning for devices. The format format varies depending on your platform. On Android advertising data will be the raw advertising bytes. iOS does not allow access to raw advertising data, so a dictionary of data is returned.
|
||||
*
|
||||
* The advertising information for both Android and iOS appears to be a combination of advertising data and scan response data.
|
||||
*
|
||||
* ### Android
|
||||
* ```
|
||||
* {
|
||||
* "name": "demo",
|
||||
* "id": "00:1A:7D:DA:71:13",
|
||||
* "advertising": ArrayBuffer,
|
||||
* "rssi": -37
|
||||
* }
|
||||
* ```
|
||||
*
|
||||
* Convert the advertising info to a Uint8Array for processing. `var adData = new Uint8Array(peripheral.advertising)`
|
||||
*
|
||||
* ### iOS
|
||||
*
|
||||
* Note that iOS uses the string value of the constants for the [Advertisement Data Retrieval Keys](https://developer.apple.com/library/ios/documentation/CoreBluetooth/Reference/CBCentralManagerDelegate_Protocol/index.html#//apple_ref/doc/constant_group/Advertisement_Data_Retrieval_Keys). This will likely change in the future.
|
||||
* ```
|
||||
* {
|
||||
* "name": "demo",
|
||||
* "id": "D8479A4F-7517-BCD3-91B5-3302B2F81802",
|
||||
* "advertising": {
|
||||
* "kCBAdvDataChannel": 37,
|
||||
* "kCBAdvDataServiceData": {
|
||||
* "FED8": {
|
||||
* "byteLength": 7 // data not shown
|
||||
* }
|
||||
* },
|
||||
* "kCBAdvDataLocalName": "demo",
|
||||
* "kCBAdvDataServiceUUIDs": ["FED8"],
|
||||
* "kCBAdvDataManufacturerData": {
|
||||
* "byteLength": 7 // data not shown
|
||||
* },
|
||||
* "kCBAdvDataTxPowerLevel": 32,
|
||||
* "kCBAdvDataIsConnectable": true
|
||||
* },
|
||||
* "rssi": -53
|
||||
* }
|
||||
* ```
|
||||
*
|
||||
* ## Typed Arrays
|
||||
*
|
||||
* This plugin uses typed Arrays or ArrayBuffers for sending and receiving data.
|
||||
*
|
||||
* This means that you need convert your data to ArrayBuffers before sending and from ArrayBuffers when receiving.
|
||||
* ```
|
||||
* // ASCII only
|
||||
* function stringToBytes(string) {
|
||||
* var array = new Uint8Array(string.length);
|
||||
* for (var i = 0, l = string.length; i < l; i++) {
|
||||
* array[i] = string.charCodeAt(i);
|
||||
* }
|
||||
* return array.buffer;
|
||||
* }
|
||||
*
|
||||
* // ASCII only
|
||||
* function bytesToString(buffer) {
|
||||
* return String.fromCharCode.apply(null, new Uint8Array(buffer));
|
||||
* }
|
||||
* ```
|
||||
* You can read more about typed arrays in these articles on [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Typed_arrays) and [HTML5 Rocks](http://www.html5rocks.com/en/tutorials/webgl/typed_arrays/).
|
||||
*
|
||||
* ## UUIDs
|
||||
*
|
||||
* UUIDs are always strings and not numbers. Some 16-bit UUIDs, such as '2220' look like integers, but they're not. (The integer 2220 is 0x8AC in hex.) This isn't a problem with 128 bit UUIDs since they look like strings 82b9e6e1-593a-456f-be9b-9215160ebcac. All 16-bit UUIDs should also be passed to methods as strings.
|
||||
*
|
||||
*/
|
||||
var BLE = (function () {
|
||||
function BLE() {
|
||||
}
|
||||
/**
|
||||
* Scan and discover BLE peripherals for the specified amount of time.
|
||||
*
|
||||
* @usage
|
||||
* ```
|
||||
* BLE.scan([], 5).subscribe(device => {
|
||||
* console.log(JSON.stringify(device));
|
||||
* });
|
||||
* ```
|
||||
* @param {string[]} services List of service UUIDs to discover, or `[]` to find all devices
|
||||
* @param {number} seconds Number of seconds to run discovery
|
||||
* @return Returns an Observable that notifies of each peripheral that is discovered during the specified time.
|
||||
*/
|
||||
BLE.scan = function (services, seconds) {
|
||||
// This Observable is replaced by one from the @Cordova decorator that wraps
|
||||
// the plugin's callbacks. We provide a dummy one here so TypeScript
|
||||
// knows that the correct return type is Observable, because there's no way
|
||||
// for it to know the return type from a decorator.
|
||||
// See https://github.com/Microsoft/TypeScript/issues/4881
|
||||
return new Observable_1.Observable(function (observer) { });
|
||||
};
|
||||
/**
|
||||
* Scan and discover BLE peripherals until `stopScan` is called.
|
||||
*
|
||||
* @usage
|
||||
* ```
|
||||
* BLE.startScan([]).subscribe(device => {
|
||||
* console.log(JSON.stringify(device));
|
||||
* });
|
||||
*
|
||||
* setTimeout(() => {
|
||||
* BLE.stopScan();
|
||||
* }, 5000);
|
||||
* ```
|
||||
* @param {string[]} services List of service UUIDs to discover, or `[]` to find all devices
|
||||
* @return Returns an Observable that notifies of each peripheral discovered.
|
||||
*/
|
||||
BLE.startScan = function (services) {
|
||||
// This Observable is replaced by one from the @Cordova decorator that wraps
|
||||
// the plugin's callbacks. We provide a dummy one here so TypeScript
|
||||
// knows that the correct return type is Observable, because there's no way
|
||||
// for it to know the return type from a decorator.
|
||||
// See https://github.com/Microsoft/TypeScript/issues/4881
|
||||
return new Observable_1.Observable(function (observer) { });
|
||||
};
|
||||
;
|
||||
/**
|
||||
* Stop a scan started by `startScan`.
|
||||
*
|
||||
* @usage
|
||||
* ```
|
||||
* BLE.startScan([]).subscribe(device => {
|
||||
* console.log(JSON.stringify(device));
|
||||
* });
|
||||
* setTimeout(() => {
|
||||
* BLE.stopScan().then(() => { console.log('scan stopped'); });
|
||||
* }, 5000);
|
||||
* ```
|
||||
* @return returns a Promise.
|
||||
*/
|
||||
BLE.stopScan = function () {
|
||||
// This Promise is replaced by one from the @Cordova decorator that wraps
|
||||
// the plugin's callbacks. We provide a dummy one here so TypeScript
|
||||
// knows that the correct return type is Promise, because there's no way
|
||||
// for it to know the return type from a decorator.
|
||||
// See https://github.com/Microsoft/TypeScript/issues/4881
|
||||
return new Promise(function (res, rej) { });
|
||||
};
|
||||
;
|
||||
/**
|
||||
* Connect to a peripheral.
|
||||
* @usage
|
||||
* ```
|
||||
* BLE.connect('12:34:56:78:9A:BC').subscribe(peripheralData => {
|
||||
* console.log(peripheralData);
|
||||
* },
|
||||
* peripheralData => {
|
||||
* console.log('disconnected');
|
||||
* });
|
||||
* ```
|
||||
* @param deviceId {string} UUID or MAC address of the peripheral
|
||||
* @return Returns an Observable that notifies of connect/disconnect.
|
||||
*/
|
||||
BLE.connect = function (deviceId) {
|
||||
// This Observable is replaced by one from the @Cordova decorator that wraps
|
||||
// the plugin's callbacks. We provide a dummy one here so TypeScript
|
||||
// knows that the correct return type is Observable, because there's no way
|
||||
// for it to know the return type from a decorator.
|
||||
// See https://github.com/Microsoft/TypeScript/issues/4881
|
||||
return new Observable_1.Observable(function (observer) { });
|
||||
};
|
||||
;
|
||||
/**
|
||||
* Disconnect from a peripheral.
|
||||
* @usage
|
||||
* ```
|
||||
* BLE.disconnect('12:34:56:78:9A:BC').then(() => {
|
||||
* console.log('Disconnected');
|
||||
* });
|
||||
* ```
|
||||
* @param deviceId {string} UUID or MAC address of the peripheral
|
||||
* @return Returns a Promise
|
||||
*/
|
||||
BLE.disconnect = function (deviceId) {
|
||||
// This Promise is replaced by one from the @Cordova decorator that wraps
|
||||
// the plugin's callbacks. We provide a dummy one here so TypeScript
|
||||
// knows that the correct return type is Promise, because there's no way
|
||||
// for it to know the return type from a decorator.
|
||||
// See https://github.com/Microsoft/TypeScript/issues/4881
|
||||
return new Promise(function (res, rej) { });
|
||||
};
|
||||
;
|
||||
/**
|
||||
* Read the value of a characteristic.
|
||||
*
|
||||
* @param {string} device_id UUID or MAC address of the peripheral
|
||||
* @param {string} service_uuid UUID of the BLE service
|
||||
* @param {string} characteristic_uuid UUID of the BLE characteristic
|
||||
* @return Returns a Promise
|
||||
*/
|
||||
BLE.read = function (deviceId, serviceUUID, characteristicUUID) {
|
||||
// This Promise is replaced by one from the @Cordova decorator that wraps
|
||||
// the plugin's callbacks. We provide a dummy one here so TypeScript
|
||||
// knows that the correct return type is Promise, because there's no way
|
||||
// for it to know the return type from a decorator.
|
||||
// See https://github.com/Microsoft/TypeScript/issues/4881
|
||||
return new Promise(function (res, rej) { });
|
||||
};
|
||||
;
|
||||
/**
|
||||
* Write the value of a characteristic.
|
||||
* @usage
|
||||
* ```
|
||||
* // send 1 byte to switch a light on
|
||||
* var data = new Uint8Array(1);
|
||||
* data[0] = 1;
|
||||
* BLE.write(device_id, "FF10", "FF11", data.buffer);
|
||||
*
|
||||
* // send a 3 byte value with RGB color
|
||||
* var data = new Uint8Array(3);
|
||||
* data[0] = 0xFF; // red
|
||||
* data[0] = 0x00; // green
|
||||
* data[0] = 0xFF; // blue
|
||||
* BLE.write(device_id, "ccc0", "ccc1", data.buffer);
|
||||
*
|
||||
* // send a 32 bit integer
|
||||
* var data = new Uint32Array(1);
|
||||
* data[0] = counterInput.value;
|
||||
* BLE.write(device_id, SERVICE, CHARACTERISTIC, data.buffer);
|
||||
*
|
||||
* ```
|
||||
* @param {string} device_id UUID or MAC address of the peripheral
|
||||
* @param {string} service_uuid UUID of the BLE service
|
||||
* @param {string} characteristic_uuid UUID of the BLE characteristic
|
||||
* @param {ArrayBuffer} value Data to write to the characteristic, as an ArrayBuffer.
|
||||
* @return Returns a Promise
|
||||
*/
|
||||
BLE.write = function (deviceId, serviceUUID, characteristicUUID, value) {
|
||||
// This Promise is replaced by one from the @Cordova decorator that wraps
|
||||
// the plugin's callbacks. We provide a dummy one here so TypeScript
|
||||
// knows that the correct return type is Promise, because there's no way
|
||||
// for it to know the return type from a decorator.
|
||||
// See https://github.com/Microsoft/TypeScript/issues/4881
|
||||
return new Promise(function (res, rej) { });
|
||||
};
|
||||
;
|
||||
/**
|
||||
* Write the value of a characteristic without waiting for confirmation from the peripheral.
|
||||
*
|
||||
* @param {string} device_id UUID or MAC address of the peripheral
|
||||
* @param {string} service_uuid UUID of the BLE service
|
||||
* @param {string} characteristic_uuid UUID of the BLE characteristic
|
||||
* @param {ArrayBuffer} value Data to write to the characteristic, as an ArrayBuffer.
|
||||
* @return Returns a Promise
|
||||
*/
|
||||
BLE.writeWithoutResponse = function (deviceId, serviceUUID, characteristicUUID, value) {
|
||||
// This Promise is replaced by one from the @Cordova decorator that wraps
|
||||
// the plugin's callbacks. We provide a dummy one here so TypeScript
|
||||
// knows that the correct return type is Promise, because there's no way
|
||||
// for it to know the return type from a decorator.
|
||||
// See https://github.com/Microsoft/TypeScript/issues/4881
|
||||
return new Promise(function (res, rej) { });
|
||||
};
|
||||
;
|
||||
/**
|
||||
* Register to be notified when the value of a characteristic changes.
|
||||
*
|
||||
* @usage
|
||||
* ```
|
||||
* BLE.startNotification(device_id, "FF10", "FF11").subscribe(buffer => {
|
||||
* console.log(String.fromCharCode.apply(null, new Uint8Array(buffer));
|
||||
* });
|
||||
* ```
|
||||
*
|
||||
* @param {string} device_id UUID or MAC address of the peripheral
|
||||
* @param {string} service_uuid UUID of the BLE service
|
||||
* @param {string} characteristic_uuid UUID of the BLE characteristic
|
||||
* @return Returns an Observable that notifies of characteristic changes.
|
||||
*/
|
||||
BLE.startNotification = function (deviceId, serviceUUID, characteristicUUID) {
|
||||
// This Observable is replaced by one from the @Cordova decorator that wraps
|
||||
// the plugin's callbacks. We provide a dummy one here so TypeScript
|
||||
// knows that the correct return type is Observable, because there's no way
|
||||
// for it to know the return type from a decorator.
|
||||
// See https://github.com/Microsoft/TypeScript/issues/4881
|
||||
return new Observable_1.Observable(function (observer) { });
|
||||
};
|
||||
;
|
||||
/**
|
||||
* Stop being notified when the value of a characteristic changes.
|
||||
*
|
||||
* @param {string} device_id UUID or MAC address of the peripheral
|
||||
* @param {string} service_uuid UUID of the BLE service
|
||||
* @param {string} characteristic_uuid UUID of the BLE characteristic
|
||||
* @return Returns a Promise.
|
||||
*/
|
||||
BLE.stopNotification = function (deviceId, serviceUUID, characteristicUUID) {
|
||||
// This Promise is replaced by one from the @Cordova decorator that wraps
|
||||
// the plugin's callbacks. We provide a dummy one here so TypeScript
|
||||
// knows that the correct return type is Promise, because there's no way
|
||||
// for it to know the return type from a decorator.
|
||||
// See https://github.com/Microsoft/TypeScript/issues/4881
|
||||
return new Promise(function (res, rej) { });
|
||||
};
|
||||
;
|
||||
/**
|
||||
* Report the connection status.
|
||||
*
|
||||
* @usage
|
||||
* ```
|
||||
* BLE.isConnected('FFCA0B09-CB1D-4DC0-A1EF-31AFD3EDFB53').then(
|
||||
* () => { console.log('connected'); },
|
||||
* () => { console.log('not connected'); }
|
||||
* );
|
||||
* ```
|
||||
* @param {string} device_id UUID or MAC address of the peripheral
|
||||
* @return Returns a Promise.
|
||||
*/
|
||||
BLE.isConnected = function (deviceId) {
|
||||
// This Promise is replaced by one from the @Cordova decorator that wraps
|
||||
// the plugin's callbacks. We provide a dummy one here so TypeScript
|
||||
// knows that the correct return type is Promise, because there's no way
|
||||
// for it to know the return type from a decorator.
|
||||
// See https://github.com/Microsoft/TypeScript/issues/4881
|
||||
return new Promise(function (res, rej) { });
|
||||
};
|
||||
/**
|
||||
* Report if bluetooth is enabled.
|
||||
*
|
||||
* @usage
|
||||
* ```
|
||||
* BLE.isEnabled().then(
|
||||
* () => { console.log('enabled'); },
|
||||
* () => { console.log('not enabled'); }
|
||||
* );
|
||||
* ```
|
||||
* @return Returns a Promise.
|
||||
*/
|
||||
BLE.isEnabled = function () {
|
||||
// This Promise is replaced by one from the @Cordova decorator that wraps
|
||||
// the plugin's callbacks. We provide a dummy one here so TypeScript
|
||||
// knows that the correct return type is Promise, because there's no way
|
||||
// for it to know the return type from a decorator.
|
||||
// See https://github.com/Microsoft/TypeScript/issues/4881
|
||||
return new Promise(function (res, rej) { });
|
||||
};
|
||||
/**
|
||||
* Open System Bluetooth settings (Android only).
|
||||
*
|
||||
* @return Returns a Promise.
|
||||
*/
|
||||
BLE.showBluetoothSettings = function () {
|
||||
// This Promise is replaced by one from the @Cordova decorator that wraps
|
||||
// the plugin's callbacks. We provide a dummy one here so TypeScript
|
||||
// knows that the correct return type is Promise, because there's no way
|
||||
// for it to know the return type from a decorator.
|
||||
// See https://github.com/Microsoft/TypeScript/issues/4881
|
||||
return new Promise(function (res, rej) { });
|
||||
};
|
||||
/**
|
||||
* Enable Bluetooth on the device (Android only).
|
||||
*
|
||||
* @return Returns a Promise.
|
||||
*/
|
||||
BLE.enable = function () {
|
||||
// This Promise is replaced by one from the @Cordova decorator that wraps
|
||||
// the plugin's callbacks. We provide a dummy one here so TypeScript
|
||||
// knows that the correct return type is Promise, because there's no way
|
||||
// for it to know the return type from a decorator.
|
||||
// See https://github.com/Microsoft/TypeScript/issues/4881
|
||||
return new Promise(function (res, rej) { });
|
||||
};
|
||||
__decorate([
|
||||
plugin_1.Cordova({
|
||||
observable: true
|
||||
})
|
||||
], BLE, "scan", null);
|
||||
__decorate([
|
||||
plugin_1.Cordova({
|
||||
observable: true,
|
||||
clearFunction: 'stopScan',
|
||||
clearWithArgs: true
|
||||
})
|
||||
], BLE, "startScan", null);
|
||||
__decorate([
|
||||
plugin_1.Cordova()
|
||||
], BLE, "stopScan", null);
|
||||
__decorate([
|
||||
plugin_1.Cordova({
|
||||
observable: true,
|
||||
clearFunction: 'disconnect',
|
||||
clearWithArgs: true
|
||||
})
|
||||
], BLE, "connect", null);
|
||||
__decorate([
|
||||
plugin_1.Cordova()
|
||||
], BLE, "disconnect", null);
|
||||
__decorate([
|
||||
plugin_1.Cordova()
|
||||
], BLE, "read", null);
|
||||
__decorate([
|
||||
plugin_1.Cordova()
|
||||
], BLE, "write", null);
|
||||
__decorate([
|
||||
plugin_1.Cordova()
|
||||
], BLE, "writeWithoutResponse", null);
|
||||
__decorate([
|
||||
plugin_1.Cordova({
|
||||
observable: true,
|
||||
clearFunction: 'stopNotification',
|
||||
clearWithArgs: true
|
||||
})
|
||||
], BLE, "startNotification", null);
|
||||
__decorate([
|
||||
plugin_1.Cordova()
|
||||
], BLE, "stopNotification", null);
|
||||
__decorate([
|
||||
plugin_1.Cordova()
|
||||
], BLE, "isConnected", null);
|
||||
__decorate([
|
||||
plugin_1.Cordova()
|
||||
], BLE, "isEnabled", null);
|
||||
__decorate([
|
||||
plugin_1.Cordova()
|
||||
], BLE, "showBluetoothSettings", null);
|
||||
__decorate([
|
||||
plugin_1.Cordova()
|
||||
], BLE, "enable", null);
|
||||
BLE = __decorate([
|
||||
plugin_1.Plugin({
|
||||
name: 'BLE',
|
||||
plugin: 'cordova-plugin-ble-central',
|
||||
pluginRef: 'ble',
|
||||
pluginRepo: 'https://github.com/don/cordova-plugin-ble-central'
|
||||
})
|
||||
], BLE);
|
||||
return BLE;
|
||||
})();
|
||||
exports.BLE = BLE;
|
||||
//# sourceMappingURL=ble.js.map
|
||||
1
dist/plugins/ble.js.map
vendored
220
dist/plugins/calendar.d.ts
vendored
@@ -1,220 +0,0 @@
|
||||
export interface CalendarOptions {
|
||||
firstReminderMinutes?: number;
|
||||
secondReminderMinutes?: number;
|
||||
recurrence?: string;
|
||||
recurrenceInterval?: number;
|
||||
recurrenceEndDate?: Date;
|
||||
calendarName?: string;
|
||||
calendarId?: number;
|
||||
url?: string;
|
||||
}
|
||||
export interface Calendar {
|
||||
id: number;
|
||||
name: string;
|
||||
}
|
||||
/**
|
||||
* This plugin allows you to add events to the Calendar of the mobile device.
|
||||
*
|
||||
* Requires Cordova plugin: `cordova-plugin-calendar`. For more info, please see the [Calendar plugin docs](https://github.com/EddyVerbruggen/Calendar-PhoneGap-Plugin).
|
||||
*
|
||||
*/
|
||||
export declare class Calendar {
|
||||
/**
|
||||
* Create a calendar. (iOS only)
|
||||
*
|
||||
* @usage
|
||||
* ```
|
||||
* Calendar.createCalendar('MyCalendar').then(
|
||||
* (msg) => { console.log(msg); },
|
||||
* (err) => { console.log(err); }
|
||||
* );
|
||||
* ```
|
||||
*
|
||||
* @param {string | Object} nameOrOptions either a string name or a options object.
|
||||
* options:
|
||||
* calendarName: string the name of the calendar
|
||||
* calendarColor: string the hex color of the calendar
|
||||
* @return Returns a Promise
|
||||
*/
|
||||
static createCalendar(nameOrOptions: string | {
|
||||
calendarName: string;
|
||||
calendarColor: string;
|
||||
}): Promise<any>;
|
||||
/**
|
||||
* Delete a calendar. (iOS only)
|
||||
*
|
||||
* @usage
|
||||
* ```
|
||||
* Calendar.deleteCalendar('MyCalendar').then(
|
||||
* (msg) => { console.log(msg); },
|
||||
* (err) => { console.log(err); }
|
||||
* );
|
||||
* ```
|
||||
*
|
||||
* @param {string} name Name of the calendar to delete.
|
||||
* @return Returns a Promise
|
||||
*/
|
||||
static deleteCalendar(name: string): Promise<any>;
|
||||
/**
|
||||
* Returns the default calendar options.
|
||||
*
|
||||
* @return Returns an object with the default calendar options:
|
||||
* firstReminderMinutes: 60,
|
||||
* secondReminderMinutes: null,
|
||||
* recurrence: null, // options are: 'daily', 'weekly', 'monthly', 'yearly'
|
||||
* recurrenceInterval: 1, // only used when recurrence is set
|
||||
* recurrenceEndDate: null,
|
||||
* calendarName: null,
|
||||
* calendarId: null,
|
||||
* url: null
|
||||
*/
|
||||
static getCalendarOptions(): CalendarOptions;
|
||||
/**
|
||||
* Silently create an event.
|
||||
*
|
||||
* @param {string} [title] The event title
|
||||
* @param {string} [location] The event location
|
||||
* @param {string} [notes] The event notes
|
||||
* @param {Date} [startDate] The event start date
|
||||
* @param {Date} [endDate] The event end date
|
||||
* @return Returns a Promise
|
||||
*/
|
||||
static createEvent(title?: string, location?: string, notes?: string, startDate?: Date, endDate?: Date): Promise<any>;
|
||||
/**
|
||||
* Silently create an event with additional options.
|
||||
*
|
||||
* @param {string} [title] The event title
|
||||
* @param {string} [location] The event location
|
||||
* @param {string} [notes] The event notes
|
||||
* @param {Date} [startDate] The event start date
|
||||
* @param {Date} [endDate] The event end date
|
||||
* @param {CalendarOptions} [options] Additional options, see `getCalendarOptions`
|
||||
* @return Returns a Promise
|
||||
*/
|
||||
static createEventWithOptions(title?: string, location?: string, notes?: string, startDate?: Date, endDate?: Date, options?: CalendarOptions): Promise<any>;
|
||||
/**
|
||||
* Interactively create an event.
|
||||
*
|
||||
* @param {string} [title] The event title
|
||||
* @param {string} [location] The event location
|
||||
* @param {string} [notes] The event notes
|
||||
* @param {Date} [startDate] The event start date
|
||||
* @param {Date} [endDate] The event end date
|
||||
* @return Returns a Promise
|
||||
*/
|
||||
static createEventInteractively(title?: string, location?: string, notes?: string, startDate?: Date, endDate?: Date): Promise<any>;
|
||||
/**
|
||||
* Interactively create an event with additional options.
|
||||
*
|
||||
* @param {string} [title] The event title
|
||||
* @param {string} [location] The event location
|
||||
* @param {string} [notes] The event notes
|
||||
* @param {Date} [startDate] The event start date
|
||||
* @param {Date} [endDate] The event end date
|
||||
* @param {CalendarOptions} [options] Additional options, see `getCalendarOptions`
|
||||
* @return Returns a Promise
|
||||
*/
|
||||
static createEventInteractivelyWithOptions(title?: string, location?: string, notes?: string, startDate?: Date, endDate?: Date, options?: CalendarOptions): Promise<any>;
|
||||
/**
|
||||
* Find an event.
|
||||
*
|
||||
* @param {string} [title] The event title
|
||||
* @param {string} [location] The event location
|
||||
* @param {string} [notes] The event notes
|
||||
* @param {Date} [startDate] The event start date
|
||||
* @param {Date} [endDate] The event end date
|
||||
* @return Returns a Promise
|
||||
*/
|
||||
static findEvent(title?: string, location?: string, notes?: string, startDate?: Date, endDate?: Date): Promise<any>;
|
||||
/**
|
||||
* Find an event with additional options.
|
||||
*
|
||||
* @param {string} [title] The event title
|
||||
* @param {string} [location] The event location
|
||||
* @param {string} [notes] The event notes
|
||||
* @param {Date} [startDate] The event start date
|
||||
* @param {Date} [endDate] The event end date
|
||||
* @param {CalendarOptions} [options] Additional options, see `getCalendarOptions`
|
||||
* @return Returns a Promise that resolves with the event, or rejects with an error.
|
||||
*/
|
||||
static findEventWithOptions(title?: string, location?: string, notes?: string, startDate?: Date, endDate?: Date, options?: CalendarOptions): Promise<any>;
|
||||
/**
|
||||
* Find a list of events within the specified date range. (Android only)
|
||||
*
|
||||
* @param {Date} [startDate] The start date
|
||||
* @param {Date} [endDate] The end date
|
||||
* @return Returns a Promise that resolves with the list of events, or rejects with an error.
|
||||
*/
|
||||
static listEventsInRange(startDate: Date, endDate: Date): Promise<any>;
|
||||
/**
|
||||
* Get a list of all calendars.
|
||||
* @return A Promise that resolves with the list of calendars, or rejects with an error.
|
||||
*/
|
||||
static listCalendars(): Promise<any>;
|
||||
/**
|
||||
* Get a list of all future events in the specified calendar. (iOS only)
|
||||
* @return Returns a Promise that resolves with the list of events, or rejects with an error.
|
||||
*/
|
||||
static findAllEventsInNamedCalendar(calendarName: string): Promise<any>;
|
||||
/**
|
||||
* Modify an event. (iOS only)
|
||||
*
|
||||
* @param {string} [title] The event title
|
||||
* @param {string} [location] The event location
|
||||
* @param {string} [notes] The event notes
|
||||
* @param {Date} [startDate] The event start date
|
||||
* @param {Date} [endDate] The event end date
|
||||
* @param {string} [newTitle] The new event title
|
||||
* @param {string} [newLocation] The new event location
|
||||
* @param {string} [newNotes] The new event notes
|
||||
* @param {Date} [newStartDate] The new event start date
|
||||
* @param {Date} [newEndDate] The new event end date
|
||||
* @return Returns a Promise
|
||||
*/
|
||||
static modifyEvent(title?: string, location?: string, notes?: string, startDate?: Date, endDate?: Date, newTitle?: string, newLocation?: string, newNotes?: string, newStartDate?: Date, newEndDate?: Date): Promise<any>;
|
||||
/**
|
||||
* Modify an event with additional options. (iOS only)
|
||||
*
|
||||
* @param {string} [title] The event title
|
||||
* @param {string} [location] The event location
|
||||
* @param {string} [notes] The event notes
|
||||
* @param {Date} [startDate] The event start date
|
||||
* @param {Date} [endDate] The event end date
|
||||
* @param {string} [newTitle] The new event title
|
||||
* @param {string} [newLocation] The new event location
|
||||
* @param {string} [newNotes] The new event notes
|
||||
* @param {Date} [newStartDate] The new event start date
|
||||
* @param {Date} [newEndDate] The new event end date
|
||||
* @param {CalendarOptions} [options] Additional options, see `getCalendarOptions`
|
||||
* @return Returns a Promise
|
||||
*/
|
||||
static modifyEventWithOptions(title?: string, location?: string, notes?: string, startDate?: Date, endDate?: Date, newTitle?: string, newLocation?: string, newNotes?: string, newStartDate?: Date, newEndDate?: Date, options?: CalendarOptions): Promise<any>;
|
||||
/**
|
||||
* Delete an event.
|
||||
*
|
||||
* @param {string} [title] The event title
|
||||
* @param {string} [location] The event location
|
||||
* @param {string} [notes] The event notes
|
||||
* @param {Date} [startDate] The event start date
|
||||
* @param {Date} [endDate] The event end date
|
||||
* @return Returns a Promise
|
||||
*/
|
||||
static deleteEvent(title?: string, location?: string, notes?: string, startDate?: Date, endDate?: Date): Promise<any>;
|
||||
/**
|
||||
* Delete an event from the specified Calendar. (iOS only)
|
||||
*
|
||||
* @param {string} [title] The event title
|
||||
* @param {string} [location] The event location
|
||||
* @param {string} [notes] The event notes
|
||||
* @param {Date} [startDate] The event start date
|
||||
* @param {Date} [endDate] The event end date
|
||||
* @param {string} calendarName
|
||||
* @return Returns a Promise
|
||||
*/
|
||||
static deleteEventFromNamedCalendar(title?: string, location?: string, notes?: string, startDate?: Date, endDate?: Date, calendarName?: string): Promise<any>;
|
||||
/**
|
||||
* Open the calendar at the specified date.
|
||||
* @return {Date} date
|
||||
*/
|
||||
static openCalendar(date: Date): Promise<any>;
|
||||
}
|
||||
403
dist/plugins/calendar.js
vendored
@@ -1,403 +0,0 @@
|
||||
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
||||
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
||||
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
||||
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
||||
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
||||
};
|
||||
var plugin_1 = require('./plugin');
|
||||
/**
|
||||
* This plugin allows you to add events to the Calendar of the mobile device.
|
||||
*
|
||||
* Requires Cordova plugin: `cordova-plugin-calendar`. For more info, please see the [Calendar plugin docs](https://github.com/EddyVerbruggen/Calendar-PhoneGap-Plugin).
|
||||
*
|
||||
*/
|
||||
var Calendar = (function () {
|
||||
function Calendar() {
|
||||
}
|
||||
/**
|
||||
* Create a calendar. (iOS only)
|
||||
*
|
||||
* @usage
|
||||
* ```
|
||||
* Calendar.createCalendar('MyCalendar').then(
|
||||
* (msg) => { console.log(msg); },
|
||||
* (err) => { console.log(err); }
|
||||
* );
|
||||
* ```
|
||||
*
|
||||
* @param {string | Object} nameOrOptions either a string name or a options object.
|
||||
* options:
|
||||
* calendarName: string the name of the calendar
|
||||
* calendarColor: string the hex color of the calendar
|
||||
* @return Returns a Promise
|
||||
*/
|
||||
Calendar.createCalendar = function (nameOrOptions) {
|
||||
// This Promise is replaced by one from the @Cordova decorator that wraps
|
||||
// the plugin's callbacks. We provide a dummy one here so TypeScript
|
||||
// knows that the correct return type is Promise, because there's no way
|
||||
// for it to know the return type from a decorator.
|
||||
// See https://github.com/Microsoft/TypeScript/issues/4881
|
||||
return new Promise(function (res, rej) { });
|
||||
};
|
||||
/**
|
||||
* Delete a calendar. (iOS only)
|
||||
*
|
||||
* @usage
|
||||
* ```
|
||||
* Calendar.deleteCalendar('MyCalendar').then(
|
||||
* (msg) => { console.log(msg); },
|
||||
* (err) => { console.log(err); }
|
||||
* );
|
||||
* ```
|
||||
*
|
||||
* @param {string} name Name of the calendar to delete.
|
||||
* @return Returns a Promise
|
||||
*/
|
||||
Calendar.deleteCalendar = function (name) {
|
||||
// This Promise is replaced by one from the @Cordova decorator that wraps
|
||||
// the plugin's callbacks. We provide a dummy one here so TypeScript
|
||||
// knows that the correct return type is Promise, because there's no way
|
||||
// for it to know the return type from a decorator.
|
||||
// See https://github.com/Microsoft/TypeScript/issues/4881
|
||||
return new Promise(function (res, rej) { });
|
||||
};
|
||||
/**
|
||||
* Returns the default calendar options.
|
||||
*
|
||||
* @return Returns an object with the default calendar options:
|
||||
* firstReminderMinutes: 60,
|
||||
* secondReminderMinutes: null,
|
||||
* recurrence: null, // options are: 'daily', 'weekly', 'monthly', 'yearly'
|
||||
* recurrenceInterval: 1, // only used when recurrence is set
|
||||
* recurrenceEndDate: null,
|
||||
* calendarName: null,
|
||||
* calendarId: null,
|
||||
* url: null
|
||||
*/
|
||||
Calendar.getCalendarOptions = function () {
|
||||
return {
|
||||
firstReminderMinutes: 60,
|
||||
secondReminderMinutes: null,
|
||||
recurrence: null,
|
||||
recurrenceInterval: 1,
|
||||
recurrenceEndDate: null,
|
||||
calendarName: null,
|
||||
calendarId: null,
|
||||
url: null
|
||||
};
|
||||
};
|
||||
/**
|
||||
* Silently create an event.
|
||||
*
|
||||
* @param {string} [title] The event title
|
||||
* @param {string} [location] The event location
|
||||
* @param {string} [notes] The event notes
|
||||
* @param {Date} [startDate] The event start date
|
||||
* @param {Date} [endDate] The event end date
|
||||
* @return Returns a Promise
|
||||
*/
|
||||
Calendar.createEvent = function (title, location, notes, startDate, endDate) {
|
||||
// This Promise is replaced by one from the @Cordova decorator that wraps
|
||||
// the plugin's callbacks. We provide a dummy one here so TypeScript
|
||||
// knows that the correct return type is Promise, because there's no way
|
||||
// for it to know the return type from a decorator.
|
||||
// See https://github.com/Microsoft/TypeScript/issues/4881
|
||||
return new Promise(function (res, rej) { });
|
||||
};
|
||||
/**
|
||||
* Silently create an event with additional options.
|
||||
*
|
||||
* @param {string} [title] The event title
|
||||
* @param {string} [location] The event location
|
||||
* @param {string} [notes] The event notes
|
||||
* @param {Date} [startDate] The event start date
|
||||
* @param {Date} [endDate] The event end date
|
||||
* @param {CalendarOptions} [options] Additional options, see `getCalendarOptions`
|
||||
* @return Returns a Promise
|
||||
*/
|
||||
Calendar.createEventWithOptions = function (title, location, notes, startDate, endDate, options) {
|
||||
// This Promise is replaced by one from the @Cordova decorator that wraps
|
||||
// the plugin's callbacks. We provide a dummy one here so TypeScript
|
||||
// knows that the correct return type is Promise, because there's no way
|
||||
// for it to know the return type from a decorator.
|
||||
// See https://github.com/Microsoft/TypeScript/issues/4881
|
||||
return new Promise(function (res, rej) { });
|
||||
};
|
||||
/**
|
||||
* Interactively create an event.
|
||||
*
|
||||
* @param {string} [title] The event title
|
||||
* @param {string} [location] The event location
|
||||
* @param {string} [notes] The event notes
|
||||
* @param {Date} [startDate] The event start date
|
||||
* @param {Date} [endDate] The event end date
|
||||
* @return Returns a Promise
|
||||
*/
|
||||
Calendar.createEventInteractively = function (title, location, notes, startDate, endDate) {
|
||||
// This Promise is replaced by one from the @Cordova decorator that wraps
|
||||
// the plugin's callbacks. We provide a dummy one here so TypeScript
|
||||
// knows that the correct return type is Promise, because there's no way
|
||||
// for it to know the return type from a decorator.
|
||||
// See https://github.com/Microsoft/TypeScript/issues/4881
|
||||
return new Promise(function (res, rej) { });
|
||||
};
|
||||
/**
|
||||
* Interactively create an event with additional options.
|
||||
*
|
||||
* @param {string} [title] The event title
|
||||
* @param {string} [location] The event location
|
||||
* @param {string} [notes] The event notes
|
||||
* @param {Date} [startDate] The event start date
|
||||
* @param {Date} [endDate] The event end date
|
||||
* @param {CalendarOptions} [options] Additional options, see `getCalendarOptions`
|
||||
* @return Returns a Promise
|
||||
*/
|
||||
Calendar.createEventInteractivelyWithOptions = function (title, location, notes, startDate, endDate, options) {
|
||||
// This Promise is replaced by one from the @Cordova decorator that wraps
|
||||
// the plugin's callbacks. We provide a dummy one here so TypeScript
|
||||
// knows that the correct return type is Promise, because there's no way
|
||||
// for it to know the return type from a decorator.
|
||||
// See https://github.com/Microsoft/TypeScript/issues/4881
|
||||
return new Promise(function (res, rej) { });
|
||||
};
|
||||
// deprecated
|
||||
// @Cordova()
|
||||
// static createEventInNamedCalendar(
|
||||
// title?: string,
|
||||
// location?: string,
|
||||
// notes?: string,
|
||||
// startDate?: Date,
|
||||
// endDate?: Date,
|
||||
// calendarName?: string
|
||||
// ) {}
|
||||
/**
|
||||
* Find an event.
|
||||
*
|
||||
* @param {string} [title] The event title
|
||||
* @param {string} [location] The event location
|
||||
* @param {string} [notes] The event notes
|
||||
* @param {Date} [startDate] The event start date
|
||||
* @param {Date} [endDate] The event end date
|
||||
* @return Returns a Promise
|
||||
*/
|
||||
Calendar.findEvent = function (title, location, notes, startDate, endDate) {
|
||||
// This Promise is replaced by one from the @Cordova decorator that wraps
|
||||
// the plugin's callbacks. We provide a dummy one here so TypeScript
|
||||
// knows that the correct return type is Promise, because there's no way
|
||||
// for it to know the return type from a decorator.
|
||||
// See https://github.com/Microsoft/TypeScript/issues/4881
|
||||
return new Promise(function (res, rej) { });
|
||||
};
|
||||
/**
|
||||
* Find an event with additional options.
|
||||
*
|
||||
* @param {string} [title] The event title
|
||||
* @param {string} [location] The event location
|
||||
* @param {string} [notes] The event notes
|
||||
* @param {Date} [startDate] The event start date
|
||||
* @param {Date} [endDate] The event end date
|
||||
* @param {CalendarOptions} [options] Additional options, see `getCalendarOptions`
|
||||
* @return Returns a Promise that resolves with the event, or rejects with an error.
|
||||
*/
|
||||
Calendar.findEventWithOptions = function (title, location, notes, startDate, endDate, options) {
|
||||
// This Promise is replaced by one from the @Cordova decorator that wraps
|
||||
// the plugin's callbacks. We provide a dummy one here so TypeScript
|
||||
// knows that the correct return type is Promise, because there's no way
|
||||
// for it to know the return type from a decorator.
|
||||
// See https://github.com/Microsoft/TypeScript/issues/4881
|
||||
return new Promise(function (res, rej) { });
|
||||
};
|
||||
/**
|
||||
* Find a list of events within the specified date range. (Android only)
|
||||
*
|
||||
* @param {Date} [startDate] The start date
|
||||
* @param {Date} [endDate] The end date
|
||||
* @return Returns a Promise that resolves with the list of events, or rejects with an error.
|
||||
*/
|
||||
Calendar.listEventsInRange = function (startDate, endDate) {
|
||||
// This Promise is replaced by one from the @Cordova decorator that wraps
|
||||
// the plugin's callbacks. We provide a dummy one here so TypeScript
|
||||
// knows that the correct return type is Promise, because there's no way
|
||||
// for it to know the return type from a decorator.
|
||||
// See https://github.com/Microsoft/TypeScript/issues/4881
|
||||
return new Promise(function (res, rej) { });
|
||||
};
|
||||
/**
|
||||
* Get a list of all calendars.
|
||||
* @return A Promise that resolves with the list of calendars, or rejects with an error.
|
||||
*/
|
||||
Calendar.listCalendars = function () {
|
||||
return new Promise(function (res, rej) { });
|
||||
};
|
||||
/**
|
||||
* Get a list of all future events in the specified calendar. (iOS only)
|
||||
* @return Returns a Promise that resolves with the list of events, or rejects with an error.
|
||||
*/
|
||||
Calendar.findAllEventsInNamedCalendar = function (calendarName) {
|
||||
// This Promise is replaced by one from the @Cordova decorator that wraps
|
||||
// the plugin's callbacks. We provide a dummy one here so TypeScript
|
||||
// knows that the correct return type is Promise, because there's no way
|
||||
// for it to know the return type from a decorator.
|
||||
// See https://github.com/Microsoft/TypeScript/issues/4881
|
||||
return new Promise(function (res, rej) { });
|
||||
};
|
||||
/**
|
||||
* Modify an event. (iOS only)
|
||||
*
|
||||
* @param {string} [title] The event title
|
||||
* @param {string} [location] The event location
|
||||
* @param {string} [notes] The event notes
|
||||
* @param {Date} [startDate] The event start date
|
||||
* @param {Date} [endDate] The event end date
|
||||
* @param {string} [newTitle] The new event title
|
||||
* @param {string} [newLocation] The new event location
|
||||
* @param {string} [newNotes] The new event notes
|
||||
* @param {Date} [newStartDate] The new event start date
|
||||
* @param {Date} [newEndDate] The new event end date
|
||||
* @return Returns a Promise
|
||||
*/
|
||||
Calendar.modifyEvent = function (title, location, notes, startDate, endDate, newTitle, newLocation, newNotes, newStartDate, newEndDate) {
|
||||
// This Promise is replaced by one from the @Cordova decorator that wraps
|
||||
// the plugin's callbacks. We provide a dummy one here so TypeScript
|
||||
// knows that the correct return type is Promise, because there's no way
|
||||
// for it to know the return type from a decorator.
|
||||
// See https://github.com/Microsoft/TypeScript/issues/4881
|
||||
return new Promise(function (res, rej) { });
|
||||
};
|
||||
/**
|
||||
* Modify an event with additional options. (iOS only)
|
||||
*
|
||||
* @param {string} [title] The event title
|
||||
* @param {string} [location] The event location
|
||||
* @param {string} [notes] The event notes
|
||||
* @param {Date} [startDate] The event start date
|
||||
* @param {Date} [endDate] The event end date
|
||||
* @param {string} [newTitle] The new event title
|
||||
* @param {string} [newLocation] The new event location
|
||||
* @param {string} [newNotes] The new event notes
|
||||
* @param {Date} [newStartDate] The new event start date
|
||||
* @param {Date} [newEndDate] The new event end date
|
||||
* @param {CalendarOptions} [options] Additional options, see `getCalendarOptions`
|
||||
* @return Returns a Promise
|
||||
*/
|
||||
Calendar.modifyEventWithOptions = function (title, location, notes, startDate, endDate, newTitle, newLocation, newNotes, newStartDate, newEndDate, options) {
|
||||
// This Promise is replaced by one from the @Cordova decorator that wraps
|
||||
// the plugin's callbacks. We provide a dummy one here so TypeScript
|
||||
// knows that the correct return type is Promise, because there's no way
|
||||
// for it to know the return type from a decorator.
|
||||
// See https://github.com/Microsoft/TypeScript/issues/4881
|
||||
return new Promise(function (res, rej) { });
|
||||
};
|
||||
/**
|
||||
* Delete an event.
|
||||
*
|
||||
* @param {string} [title] The event title
|
||||
* @param {string} [location] The event location
|
||||
* @param {string} [notes] The event notes
|
||||
* @param {Date} [startDate] The event start date
|
||||
* @param {Date} [endDate] The event end date
|
||||
* @return Returns a Promise
|
||||
*/
|
||||
Calendar.deleteEvent = function (title, location, notes, startDate, endDate) {
|
||||
// This Promise is replaced by one from the @Cordova decorator that wraps
|
||||
// the plugin's callbacks. We provide a dummy one here so TypeScript
|
||||
// knows that the correct return type is Promise, because there's no way
|
||||
// for it to know the return type from a decorator.
|
||||
// See https://github.com/Microsoft/TypeScript/issues/4881
|
||||
return new Promise(function (res, rej) { });
|
||||
};
|
||||
/**
|
||||
* Delete an event from the specified Calendar. (iOS only)
|
||||
*
|
||||
* @param {string} [title] The event title
|
||||
* @param {string} [location] The event location
|
||||
* @param {string} [notes] The event notes
|
||||
* @param {Date} [startDate] The event start date
|
||||
* @param {Date} [endDate] The event end date
|
||||
* @param {string} calendarName
|
||||
* @return Returns a Promise
|
||||
*/
|
||||
Calendar.deleteEventFromNamedCalendar = function (title, location, notes, startDate, endDate, calendarName) {
|
||||
// This Promise is replaced by one from the @Cordova decorator that wraps
|
||||
// the plugin's callbacks. We provide a dummy one here so TypeScript
|
||||
// knows that the correct return type is Promise, because there's no way
|
||||
// for it to know the return type from a decorator.
|
||||
// See https://github.com/Microsoft/TypeScript/issues/4881
|
||||
return new Promise(function (res, rej) { });
|
||||
};
|
||||
/**
|
||||
* Open the calendar at the specified date.
|
||||
* @return {Date} date
|
||||
*/
|
||||
Calendar.openCalendar = function (date) {
|
||||
// This Promise is replaced by one from the @Cordova decorator that wraps
|
||||
// the plugin's callbacks. We provide a dummy one here so TypeScript
|
||||
// knows that the correct return type is Promise, because there's no way
|
||||
// for it to know the return type from a decorator.
|
||||
// See https://github.com/Microsoft/TypeScript/issues/4881
|
||||
return new Promise(function (res, rej) { });
|
||||
};
|
||||
__decorate([
|
||||
plugin_1.Cordova()
|
||||
], Calendar, "createCalendar", null);
|
||||
__decorate([
|
||||
plugin_1.Cordova()
|
||||
], Calendar, "deleteCalendar", null);
|
||||
__decorate([
|
||||
plugin_1.Cordova({
|
||||
sync: true
|
||||
})
|
||||
], Calendar, "getCalendarOptions", null);
|
||||
__decorate([
|
||||
plugin_1.Cordova()
|
||||
], Calendar, "createEvent", null);
|
||||
__decorate([
|
||||
plugin_1.Cordova()
|
||||
], Calendar, "createEventWithOptions", null);
|
||||
__decorate([
|
||||
plugin_1.Cordova()
|
||||
], Calendar, "createEventInteractively", null);
|
||||
__decorate([
|
||||
plugin_1.Cordova()
|
||||
], Calendar, "createEventInteractivelyWithOptions", null);
|
||||
__decorate([
|
||||
plugin_1.Cordova()
|
||||
], Calendar, "findEvent", null);
|
||||
__decorate([
|
||||
plugin_1.Cordova()
|
||||
], Calendar, "findEventWithOptions", null);
|
||||
__decorate([
|
||||
plugin_1.Cordova()
|
||||
], Calendar, "listEventsInRange", null);
|
||||
__decorate([
|
||||
plugin_1.Cordova()
|
||||
], Calendar, "listCalendars", null);
|
||||
__decorate([
|
||||
plugin_1.Cordova()
|
||||
], Calendar, "findAllEventsInNamedCalendar", null);
|
||||
__decorate([
|
||||
plugin_1.Cordova()
|
||||
], Calendar, "modifyEvent", null);
|
||||
__decorate([
|
||||
plugin_1.Cordova()
|
||||
], Calendar, "modifyEventWithOptions", null);
|
||||
__decorate([
|
||||
plugin_1.Cordova()
|
||||
], Calendar, "deleteEvent", null);
|
||||
__decorate([
|
||||
plugin_1.Cordova()
|
||||
], Calendar, "deleteEventFromNamedCalendar", null);
|
||||
__decorate([
|
||||
plugin_1.Cordova()
|
||||
], Calendar, "openCalendar", null);
|
||||
Calendar = __decorate([
|
||||
plugin_1.Plugin({
|
||||
name: 'Calendar',
|
||||
plugin: 'cordova-plugin-calendar',
|
||||
pluginRef: 'plugins.calendar'
|
||||
})
|
||||
], Calendar);
|
||||
return Calendar;
|
||||
})();
|
||||
exports.Calendar = Calendar;
|
||||
//# sourceMappingURL=calendar.js.map
|
||||
1
dist/plugins/calendar.js.map
vendored
111
dist/plugins/camera.d.ts
vendored
@@ -1,111 +0,0 @@
|
||||
export interface CameraOptions {
|
||||
/** Picture quality in range 0-100. Default is 50 */
|
||||
quality?: number;
|
||||
/**
|
||||
* Choose the format of the return value.
|
||||
* Defined in navigator.camera.DestinationType. Default is FILE_URI.
|
||||
* DATA_URL : 0, Return image as base64-encoded string
|
||||
* FILE_URI : 1, Return image file URI
|
||||
* NATIVE_URI : 2 Return image native URI
|
||||
* (e.g., assets-library:// on iOS or content:// on Android)
|
||||
*/
|
||||
destinationType?: number;
|
||||
/**
|
||||
* Set the source of the picture.
|
||||
* Defined in navigator.camera.PictureSourceType. Default is CAMERA.
|
||||
* PHOTOLIBRARY : 0,
|
||||
* CAMERA : 1,
|
||||
* SAVEDPHOTOALBUM : 2
|
||||
*/
|
||||
sourceType?: number;
|
||||
/** Allow simple editing of image before selection. */
|
||||
allowEdit?: boolean;
|
||||
/**
|
||||
* Choose the returned image file's encoding.
|
||||
* Defined in navigator.camera.EncodingType. Default is JPEG
|
||||
* JPEG : 0 Return JPEG encoded image
|
||||
* PNG : 1 Return PNG encoded image
|
||||
*/
|
||||
encodingType?: number;
|
||||
/**
|
||||
* Width in pixels to scale image. Must be used with targetHeight.
|
||||
* Aspect ratio remains constant.
|
||||
*/
|
||||
targetWidth?: number;
|
||||
/**
|
||||
* Height in pixels to scale image. Must be used with targetWidth.
|
||||
* Aspect ratio remains constant.
|
||||
*/
|
||||
targetHeight?: number;
|
||||
/**
|
||||
* Set the type of media to select from. Only works when PictureSourceType
|
||||
* is PHOTOLIBRARY or SAVEDPHOTOALBUM. Defined in nagivator.camera.MediaType
|
||||
* PICTURE: 0 allow selection of still pictures only. DEFAULT.
|
||||
* Will return format specified via DestinationType
|
||||
* VIDEO: 1 allow selection of video only, WILL ALWAYS RETURN FILE_URI
|
||||
* ALLMEDIA : 2 allow selection from all media types
|
||||
*/
|
||||
mediaType?: number;
|
||||
/** Rotate the image to correct for the orientation of the device during capture. */
|
||||
correctOrientation?: boolean;
|
||||
/** Save the image to the photo album on the device after capture. */
|
||||
saveToPhotoAlbum?: boolean;
|
||||
/**
|
||||
* Choose the camera to use (front- or back-facing).
|
||||
* Defined in navigator.camera.Direction. Default is BACK.
|
||||
* FRONT: 0
|
||||
* BACK: 1
|
||||
*/
|
||||
cameraDirection?: number;
|
||||
/** iOS-only options that specify popover location in iPad. Defined in CameraPopoverOptions. */
|
||||
popoverOptions?: CameraPopoverOptions;
|
||||
}
|
||||
/**
|
||||
* iOS-only parameters that specify the anchor element location and arrow direction
|
||||
* of the popover when selecting images from an iPad's library or album.
|
||||
*/
|
||||
export interface CameraPopoverOptions {
|
||||
x: number;
|
||||
y: number;
|
||||
width: number;
|
||||
height: number;
|
||||
/**
|
||||
* Direction the arrow on the popover should point. Defined in Camera.PopoverArrowDirection
|
||||
* Matches iOS UIPopoverArrowDirection constants.
|
||||
* ARROW_UP : 1,
|
||||
* ARROW_DOWN : 2,
|
||||
* ARROW_LEFT : 4,
|
||||
* ARROW_RIGHT : 8,
|
||||
* ARROW_ANY : 15
|
||||
*/
|
||||
arrowDir: number;
|
||||
}
|
||||
/**
|
||||
* Take a photo or capture video.
|
||||
*
|
||||
* Requires Cordova plugin: `cordova-plugin-camera`. For more info, please see the [Cordova Camera Plugin Docs](https://github.com/apache/cordova-plugin-camera).
|
||||
*
|
||||
* @usage
|
||||
* ```js
|
||||
* Camera.getPicture(options).then((imageData) => {
|
||||
* // imageData is either a base64 encoded string or a file URI
|
||||
* // If it's base64:
|
||||
* let base64Image = "data:image/jpeg;base64," + imageData;
|
||||
* }, (err) => {
|
||||
* });
|
||||
* ```
|
||||
*/
|
||||
export declare class Camera {
|
||||
/**
|
||||
* Take a picture or video, or load one from the library.
|
||||
* @param {CameraOptions} options
|
||||
* @return Returns a Promise that resolves with Base64 encoding of the image data, or the image file URI, depending on cameraOptions, otherwise rejects with an error.
|
||||
*/
|
||||
static getPicture(options: CameraOptions): Promise<any>;
|
||||
/**
|
||||
* Remove intermediate image files that are kept in temporary storage after calling camera.getPicture.
|
||||
* Applies only when the value of Camera.sourceType equals Camera.PictureSourceType.CAMERA and the Camera.destinationType equals Camera.DestinationType.FILE_URI.
|
||||
* @return Returns a Promise
|
||||
*/
|
||||
static cleanup(): void;
|
||||
}
|
||||
65
dist/plugins/camera.js
vendored
@@ -1,65 +0,0 @@
|
||||
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
||||
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
||||
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
||||
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
||||
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
||||
};
|
||||
var plugin_1 = require('./plugin');
|
||||
/**
|
||||
* Take a photo or capture video.
|
||||
*
|
||||
* Requires Cordova plugin: `cordova-plugin-camera`. For more info, please see the [Cordova Camera Plugin Docs](https://github.com/apache/cordova-plugin-camera).
|
||||
*
|
||||
* @usage
|
||||
* ```js
|
||||
* Camera.getPicture(options).then((imageData) => {
|
||||
* // imageData is either a base64 encoded string or a file URI
|
||||
* // If it's base64:
|
||||
* let base64Image = "data:image/jpeg;base64," + imageData;
|
||||
* }, (err) => {
|
||||
* });
|
||||
* ```
|
||||
*/
|
||||
var Camera = (function () {
|
||||
function Camera() {
|
||||
}
|
||||
/**
|
||||
* Take a picture or video, or load one from the library.
|
||||
* @param {CameraOptions} options
|
||||
* @return Returns a Promise that resolves with Base64 encoding of the image data, or the image file URI, depending on cameraOptions, otherwise rejects with an error.
|
||||
*/
|
||||
Camera.getPicture = function (options) {
|
||||
// This Promise is replaced by one from the @Cordova decorator that wraps
|
||||
// the plugin's callbacks. We provide a dummy one here so TypeScript
|
||||
// knows that the correct return type is Promise, because there's no way
|
||||
// for it to know the return type from a decorator.
|
||||
// See https://github.com/Microsoft/TypeScript/issues/4881
|
||||
return new Promise(function (res, rej) { });
|
||||
};
|
||||
;
|
||||
/**
|
||||
* Remove intermediate image files that are kept in temporary storage after calling camera.getPicture.
|
||||
* Applies only when the value of Camera.sourceType equals Camera.PictureSourceType.CAMERA and the Camera.destinationType equals Camera.DestinationType.FILE_URI.
|
||||
* @return Returns a Promise
|
||||
*/
|
||||
Camera.cleanup = function () { };
|
||||
;
|
||||
__decorate([
|
||||
plugin_1.Cordova({
|
||||
callbackOrder: 'reverse'
|
||||
})
|
||||
], Camera, "getPicture", null);
|
||||
__decorate([
|
||||
plugin_1.Cordova()
|
||||
], Camera, "cleanup", null);
|
||||
Camera = __decorate([
|
||||
plugin_1.Plugin({
|
||||
name: 'Camera',
|
||||
plugin: 'cordova-plugin-camera',
|
||||
pluginRef: 'navigator.camera'
|
||||
})
|
||||
], Camera);
|
||||
return Camera;
|
||||
})();
|
||||
exports.Camera = Camera;
|
||||
//# sourceMappingURL=camera.js.map
|
||||
1
dist/plugins/camera.js.map
vendored
@@ -1 +0,0 @@
|
||||
{"version":3,"file":"camera.js","sourceRoot":"","sources":["../../src/plugins/camera.ts"],"names":["Camera","Camera.constructor","Camera.getPicture","Camera.cleanup"],"mappings":";;;;;;AAAA,uBAA8B,UAAU,CAAC,CAAA;AAsFzC;;;;;;;;;;;;;;GAcG;AACH;IAAAA;IA8BAC,CAACA;IAxBCD;;;;OAIGA;IAIIA,iBAAUA,GAHjBA,UAGkBA,OAAsBA;QACtCE,yEAAyEA;QACzEA,oEAAoEA;QACpEA,wEAAwEA;QACxEA,mDAAmDA;QACnDA,0DAA0DA;QAC1DA,MAAMA,CAACA,IAAIA,OAAOA,CAAMA,UAACA,GAAGA,EAAEA,GAAGA,IAAMA,CAACA,CAACA,CAACA;IAC5CA,CAACA;;IAEDF;;;;OAIGA;IAEIA,cAAOA,GADdA,cACiBG,CAACA;;IAlBlBH;QAACA,gBAAOA,CAACA;YACPA,aAAaA,EAAEA,SAASA;SACzBA,CAACA;OACKA,oBAAUA,QAOhBA;IAODA;QAACA,gBAAOA,EAAEA;OACHA,iBAAOA,QAAIA;IA7BpBA;QAACA,eAAMA,CAACA;YACNA,IAAIA,EAAEA,QAAQA;YACdA,MAAMA,EAAEA,uBAAuBA;YAC/BA,SAASA,EAAEA,kBAAkBA;SAC9BA,CAACA;eA0BDA;IAADA,aAACA;AAADA,CAACA,AA9BD,IA8BC;AAzBY,cAAM,SAyBlB,CAAA"}
|
||||
149
dist/plugins/contacts.d.ts
vendored
@@ -1,149 +0,0 @@
|
||||
export interface ContactProperties {
|
||||
/** A globally unique identifier. */
|
||||
id?: string;
|
||||
/** The name of this Contact, suitable for display to end users. */
|
||||
displayName?: string;
|
||||
/** An object containing all components of a persons name. */
|
||||
name?: ContactName;
|
||||
/** A casual name by which to address the contact. */
|
||||
nickname?: string;
|
||||
/** An array of all the contact's phone numbers. */
|
||||
phoneNumbers?: ContactField[];
|
||||
/** An array of all the contact's email addresses. */
|
||||
emails?: ContactField[];
|
||||
/** An array of all the contact's addresses. */
|
||||
addresses?: ContactAddress[];
|
||||
/** An array of all the contact's IM addresses. */
|
||||
ims?: ContactField[];
|
||||
/** An array of all the contact's organizations. */
|
||||
organizations?: ContactOrganization[];
|
||||
/** The birthday of the contact. */
|
||||
birthday?: Date;
|
||||
/** A note about the contact. */
|
||||
note?: string;
|
||||
/** An array of the contact's photos. */
|
||||
photos?: ContactField[];
|
||||
/** An array of all the user-defined categories associated with the contact. */
|
||||
categories?: ContactField[];
|
||||
/** An array of web pages associated with the contact. */
|
||||
urls?: ContactField[];
|
||||
}
|
||||
export interface Contact extends ContactProperties {
|
||||
/**
|
||||
* Returns a new Contact object that is a deep copy of the calling object, with the id property set to null
|
||||
*/
|
||||
clone(): Contact;
|
||||
/**
|
||||
* Removes the contact from the device contacts database, otherwise executes an error callback with a ContactError object.
|
||||
* @param onSuccess Success callback function invoked on success operation.
|
||||
* @param onError Error callback function, invoked when an error occurs.
|
||||
*/
|
||||
remove(onSuccess?: () => void, onError?: (error: Error) => void): void;
|
||||
/**
|
||||
* Saves a new contact to the device contacts database, or updates an existing contact if a contact with the same id already exists.
|
||||
* @param onSuccess Success callback function invoked on success operation with che Contact object.
|
||||
* @param onError Error callback function, invoked when an error occurs.
|
||||
*/
|
||||
save(onSuccess?: (contact: Contact) => void, onError?: (error: Error) => void): void;
|
||||
}
|
||||
export interface ContactName {
|
||||
/** The complete name of the contact. */
|
||||
formatted?: string;
|
||||
/** The contact's family name. */
|
||||
familyName?: string;
|
||||
/** The contact's given name. */
|
||||
givenName?: string;
|
||||
/** The contact's middle name. */
|
||||
middleName?: string;
|
||||
/** The contact's prefix (example Mr. or Dr.) */
|
||||
honorificPrefix?: string;
|
||||
/** The contact's suffix (example Esq.). */
|
||||
honorificSuffix?: string;
|
||||
}
|
||||
export interface ContactField {
|
||||
/** A string that indicates what type of field this is, home for example. */
|
||||
type: string;
|
||||
/** The value of the field, such as a phone number or email address. */
|
||||
value: string;
|
||||
/** Set to true if this ContactField contains the user's preferred value. */
|
||||
pref: boolean;
|
||||
}
|
||||
export interface ContactAddress {
|
||||
/** Set to true if this ContactAddress contains the user's preferred value. */
|
||||
pref?: boolean;
|
||||
/** A string indicating what type of field this is, home for example. */
|
||||
type?: string;
|
||||
/** The full address formatted for display. */
|
||||
formatted?: string;
|
||||
/** The full street address. */
|
||||
streetAddress?: string;
|
||||
/** The city or locality. */
|
||||
locality?: string;
|
||||
/** The state or region. */
|
||||
region?: string;
|
||||
/** The zip code or postal code. */
|
||||
postalCode?: string;
|
||||
/** The country name. */
|
||||
country?: string;
|
||||
}
|
||||
export interface ContactOrganization {
|
||||
/** Set to true if this ContactOrganization contains the user's preferred value. */
|
||||
pref?: boolean;
|
||||
/** A string that indicates what type of field this is, home for example. */
|
||||
type?: string;
|
||||
/** The name of the organization. */
|
||||
name?: string;
|
||||
/** The department the contract works for. */
|
||||
department?: string;
|
||||
/** The contact's title at the organization. */
|
||||
title?: string;
|
||||
}
|
||||
/**
|
||||
* Access and manage Contacts on the device.
|
||||
*
|
||||
* Requires plugin: `cordova-plugin-contacts`
|
||||
* For full info, please see the [Cordova Contacts plugin docs](https://github.com/apache/cordova-plugin-contacts)
|
||||
*
|
||||
* @usage
|
||||
*
|
||||
* ```js
|
||||
* Contacts.save({
|
||||
* displayName: "Mr. Ionitron"
|
||||
* }).then((contact) => {}, (err) => {})
|
||||
* ```
|
||||
*
|
||||
* See the `save()` docs for a full list of fields.
|
||||
*
|
||||
*/
|
||||
export declare class Contacts {
|
||||
/**
|
||||
* Create a new Contact object.
|
||||
*
|
||||
* @param options {Object} Object whose properties the created Contact should have.
|
||||
* @return {Contact} Returns the created contact
|
||||
*/
|
||||
static create(options: ContactProperties): Contact;
|
||||
/**
|
||||
* Search for contacts in the Contacts list.
|
||||
*
|
||||
* Example: Contacts.find(['*'], { filter: 'Max' }) // will search for a displayName of 'Max'
|
||||
*
|
||||
* @param fields {string[]} Contact fields to be used as a search qualifier.
|
||||
* A zero-length contactFields parameter is invalid and results in ContactError.INVALID_ARGUMENT_ERROR.
|
||||
* A contactFields value of "*" searches all contact fields.
|
||||
*
|
||||
* @param options {Object} the options to query with:
|
||||
* filter: The search string used to find navigator.contacts. (string) (Default: "")
|
||||
* multiple: Determines if the find operation returns multiple navigator.contacts. (Boolean) (Default: false)
|
||||
* desiredFields: Contact fields to be returned back. If specified, the resulting Contact object only features values for these fields. (DOMString[]) [Optional]
|
||||
* hasPhoneNumber(Android only): Filters the search to only return contacts with a phone number informed. (Boolean) (Default: false)
|
||||
*
|
||||
* @return Returns a Promise that resolves with the search results (an array of Contact objects)
|
||||
*/
|
||||
static find(fields: string[], options?: any): Promise<Contact[]>;
|
||||
/**
|
||||
* Select a single Contact.
|
||||
* @return Returns a Promise that resolves with the selected Contact
|
||||
*/
|
||||
static pickContact(): Promise<Contact>;
|
||||
}
|
||||
102
dist/plugins/contacts.js
vendored
@@ -1,102 +0,0 @@
|
||||
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
||||
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
||||
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
||||
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
||||
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
||||
};
|
||||
var plugin_1 = require('./plugin');
|
||||
/**
|
||||
* Access and manage Contacts on the device.
|
||||
*
|
||||
* Requires plugin: `cordova-plugin-contacts`
|
||||
* For full info, please see the [Cordova Contacts plugin docs](https://github.com/apache/cordova-plugin-contacts)
|
||||
*
|
||||
* @usage
|
||||
*
|
||||
* ```js
|
||||
* Contacts.save({
|
||||
* displayName: "Mr. Ionitron"
|
||||
* }).then((contact) => {}, (err) => {})
|
||||
* ```
|
||||
*
|
||||
* See the `save()` docs for a full list of fields.
|
||||
*
|
||||
*/
|
||||
var Contacts = (function () {
|
||||
function Contacts() {
|
||||
}
|
||||
/**
|
||||
* Create a new Contact object.
|
||||
*
|
||||
* @param options {Object} Object whose properties the created Contact should have.
|
||||
* @return {Contact} Returns the created contact
|
||||
*/
|
||||
Contacts.create = function (options) {
|
||||
return new Contact();
|
||||
};
|
||||
;
|
||||
/**
|
||||
* Search for contacts in the Contacts list.
|
||||
*
|
||||
* Example: Contacts.find(['*'], { filter: 'Max' }) // will search for a displayName of 'Max'
|
||||
*
|
||||
* @param fields {string[]} Contact fields to be used as a search qualifier.
|
||||
* A zero-length contactFields parameter is invalid and results in ContactError.INVALID_ARGUMENT_ERROR.
|
||||
* A contactFields value of "*" searches all contact fields.
|
||||
*
|
||||
* @param options {Object} the options to query with:
|
||||
* filter: The search string used to find navigator.contacts. (string) (Default: "")
|
||||
* multiple: Determines if the find operation returns multiple navigator.contacts. (Boolean) (Default: false)
|
||||
* desiredFields: Contact fields to be returned back. If specified, the resulting Contact object only features values for these fields. (DOMString[]) [Optional]
|
||||
* hasPhoneNumber(Android only): Filters the search to only return contacts with a phone number informed. (Boolean) (Default: false)
|
||||
*
|
||||
* @return Returns a Promise that resolves with the search results (an array of Contact objects)
|
||||
*/
|
||||
Contacts.find = function (fields, options) {
|
||||
// This Promise is replaced by one from the @Cordova decorator that wraps
|
||||
// the plugin's callbacks. We provide a dummy one here so TypeScript
|
||||
// knows that the correct return type is Promise, because there's no way
|
||||
// for it to know the return type from a decorator.
|
||||
// See https://github.com/Microsoft/TypeScript/issues/4881
|
||||
return new Promise(function (res, rej) { });
|
||||
};
|
||||
;
|
||||
/**
|
||||
* Select a single Contact.
|
||||
* @return Returns a Promise that resolves with the selected Contact
|
||||
*/
|
||||
Contacts.pickContact = function () {
|
||||
// This Promise is replaced by one from the @Cordova decorator that wraps
|
||||
// the plugin's callbacks. We provide a dummy one here so TypeScript
|
||||
// knows that the correct return type is Promise, because there's no way
|
||||
// for it to know the return type from a decorator.
|
||||
// See https://github.com/Microsoft/TypeScript/issues/4881
|
||||
return new Promise(function (res, rej) { });
|
||||
};
|
||||
;
|
||||
__decorate([
|
||||
plugin_1.Cordova({
|
||||
sync: true
|
||||
})
|
||||
], Contacts, "create", null);
|
||||
__decorate([
|
||||
plugin_1.Cordova({
|
||||
successIndex: 1,
|
||||
errorIndex: 2
|
||||
})
|
||||
], Contacts, "find", null);
|
||||
__decorate([
|
||||
plugin_1.Cordova()
|
||||
], Contacts, "pickContact", null);
|
||||
Contacts = __decorate([
|
||||
plugin_1.Plugin({
|
||||
name: 'Contacts',
|
||||
plugin: 'cordova-plugin-contacts',
|
||||
pluginRef: 'navigator.contacts',
|
||||
repo: 'https://github.com/apache/cordova-plugin-contacts'
|
||||
})
|
||||
], Contacts);
|
||||
return Contacts;
|
||||
})();
|
||||
exports.Contacts = Contacts;
|
||||
//# sourceMappingURL=contacts.js.map
|
||||
1
dist/plugins/contacts.js.map
vendored
@@ -1 +0,0 @@
|
||||
{"version":3,"file":"contacts.js","sourceRoot":"","sources":["../../src/plugins/contacts.ts"],"names":["Contacts","Contacts.constructor","Contacts.create","Contacts.find","Contacts.pickContact"],"mappings":";;;;;;AAAA,uBAA8B,UAAU,CAAC,CAAA;AA6LzC;;;;;;;;;;;;;;;;GAgBG;AACH;IAAAA;IA+DAC,CAACA;IAxDCD;;;;;OAKGA;IAIIA,eAAMA,GAHbA,UAGcA,OAA0BA;QACtCE,MAAMA,CAACA,IAAIA,OAAOA,EAAEA,CAACA;IACvBA,CAACA;;IAEDF;;;;;;;;;;;;;;;;OAgBGA;IAKIA,aAAIA,GAJXA,UAIYA,MAAgBA,EAAEA,OAAaA;QACzCG,yEAAyEA;QACzEA,oEAAoEA;QACpEA,wEAAwEA;QACxEA,mDAAmDA;QACnDA,0DAA0DA;QAC1DA,MAAMA,CAACA,IAAIA,OAAOA,CAAYA,UAACA,GAAGA,EAAEA,GAAGA,IAAMA,CAACA,CAACA,CAACA;IAClDA,CAACA;;IAEDH;;;OAGGA;IAEIA,oBAAWA,GADlBA;QAEEI,yEAAyEA;QACzEA,oEAAoEA;QACpEA,wEAAwEA;QACxEA,mDAAmDA;QACnDA,0DAA0DA;QAC1DA,MAAMA,CAACA,IAAIA,OAAOA,CAAUA,UAACA,GAAGA,EAAEA,GAAGA,IAAMA,CAACA,CAACA,CAACA;IAChDA,CAACA;;IAjDDJ;QAACA,gBAAOA,CAACA;YACPA,IAAIA,EAAEA,IAAIA;SACXA,CAACA;OACKA,kBAAMA,QAEZA;IAmBDA;QAACA,gBAAOA,CAACA;YACPA,YAAYA,EAAEA,CAACA;YACfA,UAAUA,EAAEA,CAACA;SACdA,CAACA;OACKA,gBAAIA,QAOVA;IAMDA;QAACA,gBAAOA,EAAEA;OACHA,uBAAWA,QAOjBA;IA9DHA;QAACA,eAAMA,CAACA;YACNA,IAAIA,EAAEA,UAAUA;YAChBA,MAAMA,EAAEA,yBAAyBA;YACjCA,SAASA,EAAEA,oBAAoBA;YAC/BA,IAAIA,EAAEA,mDAAmDA;SAC1DA,CAACA;iBA0DDA;IAADA,eAACA;AAADA,CAACA,AA/DD,IA+DC;AAzDY,gBAAQ,WAyDpB,CAAA"}
|
||||
37
dist/plugins/device.d.ts
vendored
@@ -1,37 +0,0 @@
|
||||
export interface Device {
|
||||
/** Get the version of Cordova running on the device. */
|
||||
cordova: string;
|
||||
/**
|
||||
* The device.model returns the name of the device's model or product. The value is set
|
||||
* by the device manufacturer and may be different across versions of the same product.
|
||||
*/
|
||||
model: string;
|
||||
/** Get the device's operating system name. */
|
||||
platform: string;
|
||||
/** Get the device's Universally Unique Identifier (UUID). */
|
||||
uuid: string;
|
||||
/** Get the operating system version. */
|
||||
version: string;
|
||||
/** Get the device's manufacturer. */
|
||||
manufacturer: string;
|
||||
/** Whether the device is running on a simulator. */
|
||||
isVirtual: boolean;
|
||||
/** Get the device hardware serial number. */
|
||||
serial: string;
|
||||
}
|
||||
/**
|
||||
* Access information about the underlying device and platform.
|
||||
*
|
||||
* @usage
|
||||
* ```js
|
||||
* let info = Device.getDevice();
|
||||
* ```
|
||||
*/
|
||||
export declare class Device {
|
||||
/**
|
||||
* Returns the whole device object.
|
||||
*
|
||||
* @returns {Object} The device object.
|
||||
*/
|
||||
static getDevice(): Device;
|
||||
}
|
||||