@dynamic-labs/utils 0.18.0-RC.8 → 0.18.0-beta.28
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +275 -0
- package/package.json +2 -2
- package/src/errors/AccountExistsError.cjs +15 -0
- package/src/errors/AccountExistsError.d.ts +13 -0
- package/src/errors/AccountExistsError.js +11 -0
- package/src/errors/GateBlockedError.cjs +14 -0
- package/src/errors/GateBlockedError.d.ts +5 -0
- package/src/errors/GateBlockedError.js +10 -0
- package/src/errors/MissingEnvironmentIdError.cjs +13 -0
- package/src/errors/MissingEnvironmentIdError.d.ts +4 -0
- package/src/errors/MissingEnvironmentIdError.js +9 -0
- package/src/errors/index.d.ts +3 -0
- package/src/index.cjs +7 -0
- package/src/index.js +4 -1
- package/src/isMobile.cjs +13 -0
- package/src/isMobile.d.ts +1 -0
- package/src/isMobile.js +13 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,4 +1,279 @@
|
|
|
1
1
|
|
|
2
|
+
## [0.18.0-beta.28](https://github.com/dynamic-labs/DynamicAuth/compare/v0.18.0-RC.27...v0.18.0-beta.28) (2023-08-03)
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
### Bug Fixes
|
|
6
|
+
|
|
7
|
+
* gracefully handle walletbook fallbacks ([#2812](https://github.com/dynamic-labs/DynamicAuth/issues/2812)) ([#2822](https://github.com/dynamic-labs/DynamicAuth/issues/2822)) ([8e737d6](https://github.com/dynamic-labs/DynamicAuth/commit/8e737d602d64fa2414ba136799b8878e975a40a2))
|
|
8
|
+
|
|
9
|
+
## [0.18.0-RC.27](https://github.com/dynamic-labs/DynamicAuth/compare/v0.18.0-RC.26...v0.18.0-RC.27) (2023-08-03)
|
|
10
|
+
|
|
11
|
+
### Bug Fixes
|
|
12
|
+
|
|
13
|
+
* fixes circular dependency issues on usePromise
|
|
14
|
+
|
|
15
|
+
## [0.18.0-RC.26](https://github.com/dynamic-labs/DynamicAuth/compare/v0.18.0-RC.24...v0.18.0-RC.26) (2023-08-02)
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
### ⚠ BREAKING CHANGES
|
|
19
|
+
|
|
20
|
+
* displayTermsOfService prop set to false breaks message verfication (#2751)
|
|
21
|
+
|
|
22
|
+
### Features
|
|
23
|
+
|
|
24
|
+
* send wagmi settings from wagmi connector ([#2791](https://github.com/dynamic-labs/DynamicAuth/issues/2791)) ([#2800](https://github.com/dynamic-labs/DynamicAuth/issues/2800)) ([5b65605](https://github.com/dynamic-labs/DynamicAuth/commit/5b656059361a48de57e01ad2dd81de0bc9b2c7e8))
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
### Bug Fixes
|
|
28
|
+
|
|
29
|
+
* always call onBeforeConnectSuccess callback when wallet state changes ([#2786](https://github.com/dynamic-labs/DynamicAuth/issues/2786)) ([e2eaef3](https://github.com/dynamic-labs/DynamicAuth/commit/e2eaef3da1f80cdc7dc21e902e9c033e581242d2))
|
|
30
|
+
* displayTermsOfService prop set to false breaks message verfication ([#2751](https://github.com/dynamic-labs/DynamicAuth/issues/2751)) ([6433732](https://github.com/dynamic-labs/DynamicAuth/commit/6433732fac87d641f2475d19ef743ac31130274f))
|
|
31
|
+
* ensure auto-redirect back to dapp after message signing ([#2783](https://github.com/dynamic-labs/DynamicAuth/issues/2783)) ([dba4664](https://github.com/dynamic-labs/DynamicAuth/commit/dba466473ecc2afd808cdae0fd9023d38676b01f))
|
|
32
|
+
* use css.supports only when available ([#2802](https://github.com/dynamic-labs/DynamicAuth/issues/2802)) ([7651898](https://github.com/dynamic-labs/DynamicAuth/commit/76518982a97e728ab65549f37f55b537eed4e890))
|
|
33
|
+
|
|
34
|
+
## [0.18.0-RC.25](https://github.com/dynamic-labs/DynamicAuth/compare/v0.18.0-RC.24...v0.18.0-RC.25) (2023-08-01)
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
### ⚠ BREAKING CHANGES
|
|
38
|
+
|
|
39
|
+
* displayTermsOfService prop set to false breaks message verfication (#2751)
|
|
40
|
+
|
|
41
|
+
### Bug Fixes
|
|
42
|
+
|
|
43
|
+
* always call onBeforeConnectSuccess callback when wallet state changes ([#2786](https://github.com/dynamic-labs/DynamicAuth/issues/2786)) ([e2eaef3](https://github.com/dynamic-labs/DynamicAuth/commit/e2eaef3da1f80cdc7dc21e902e9c033e581242d2))
|
|
44
|
+
* displayTermsOfService prop set to false breaks message verfication ([#2751](https://github.com/dynamic-labs/DynamicAuth/issues/2751)) ([6433732](https://github.com/dynamic-labs/DynamicAuth/commit/6433732fac87d641f2475d19ef743ac31130274f))
|
|
45
|
+
* ensure auto-redirect back to dapp after message signing ([#2783](https://github.com/dynamic-labs/DynamicAuth/issues/2783)) ([dba4664](https://github.com/dynamic-labs/DynamicAuth/commit/dba466473ecc2afd808cdae0fd9023d38676b01f))
|
|
46
|
+
|
|
47
|
+
## [0.18.0-RC.24](https://github.com/dynamic-labs/DynamicAuth/compare/v0.18.0-RC.23...v0.18.0-RC.24) (2023-08-01)
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
### Features
|
|
51
|
+
|
|
52
|
+
* **QNTM-156:** onBeforeConnectSuccessConfirmation on account change ([#2782](https://github.com/dynamic-labs/DynamicAuth/issues/2782)) ([eeabcd0](https://github.com/dynamic-labs/DynamicAuth/commit/eeabcd07889b7284680dc92a83bfa1b8321fa0f5))
|
|
53
|
+
|
|
54
|
+
|
|
55
|
+
### Bug Fixes
|
|
56
|
+
|
|
57
|
+
* **bridge:** reordering not mess connected wallets ([#2758](https://github.com/dynamic-labs/DynamicAuth/issues/2758)) ([2cdc240](https://github.com/dynamic-labs/DynamicAuth/commit/2cdc240b1f5b401880d776174646ebc9383506d2))
|
|
58
|
+
|
|
59
|
+
## [0.18.0-RC.23](https://github.com/dynamic-labs/DynamicAuth/compare/v0.18.0-RC.22...v0.18.0-RC.23) (2023-07-31)
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
### Features
|
|
63
|
+
|
|
64
|
+
* add hook to expose link/unlink social account ([#2766](https://github.com/dynamic-labs/DynamicAuth/issues/2766)) ([06366ee](https://github.com/dynamic-labs/DynamicAuth/commit/06366eebd9917f39c0177307616bcd936f023326))
|
|
65
|
+
* show modal for duplicate emails ([#2761](https://github.com/dynamic-labs/DynamicAuth/issues/2761)) ([421235b](https://github.com/dynamic-labs/DynamicAuth/commit/421235b4c41ce682b0cf75093dff8281031121cb))
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
### Bug Fixes
|
|
69
|
+
|
|
70
|
+
* missing dependencies and providers for MockContextProvider ([#2779](https://github.com/dynamic-labs/DynamicAuth/issues/2779)) ([15ce9af](https://github.com/dynamic-labs/DynamicAuth/commit/15ce9af40240f50878c2a4f103bdcb98d845b49b))
|
|
71
|
+
* Revert "fix: ensure metamask auto-redirect upon message signing ([#2757](https://github.com/dynamic-labs/DynamicAuth/issues/2757))" ([#2776](https://github.com/dynamic-labs/DynamicAuth/issues/2776)) ([9abe356](https://github.com/dynamic-labs/DynamicAuth/commit/9abe3568a9ba9c70a6e17f03e9746a787feae92e))
|
|
72
|
+
|
|
73
|
+
## [0.18.0-RC.22](https://github.com/dynamic-labs/DynamicAuth/compare/v0.18.0-RC.21...v0.18.0-RC.22) (2023-07-28)
|
|
74
|
+
|
|
75
|
+
## [0.18.0-RC.21](https://github.com/dynamic-labs/DynamicAuth/compare/v0.18.0-RC.20...v0.18.0-RC.21) (2023-07-28)
|
|
76
|
+
|
|
77
|
+
## [0.18.0-RC.20](https://github.com/dynamic-labs/DynamicAuth/compare/v0.18.0-RC.19...v0.18.0-RC.20) (2023-07-27)
|
|
78
|
+
|
|
79
|
+
|
|
80
|
+
### Features
|
|
81
|
+
|
|
82
|
+
* **QNTM-56:** add onBeforeConnectSuccessConfirmation callback ([#2753](https://github.com/dynamic-labs/DynamicAuth/issues/2753)) ([b174396](https://github.com/dynamic-labs/DynamicAuth/commit/b174396ab341cbcf11c6940e54931c0db3954d0d))
|
|
83
|
+
* **QNTM-72:** add backpack wallet ([#2702](https://github.com/dynamic-labs/DynamicAuth/issues/2702)) ([0d0ce9c](https://github.com/dynamic-labs/DynamicAuth/commit/0d0ce9c0d92118a78b5e40f64c5530246523712a))
|
|
84
|
+
|
|
85
|
+
|
|
86
|
+
### Bug Fixes
|
|
87
|
+
|
|
88
|
+
* bump sdk version and change sdksettings api ([#2760](https://github.com/dynamic-labs/DynamicAuth/issues/2760)) ([6e3e205](https://github.com/dynamic-labs/DynamicAuth/commit/6e3e2050ed63d2df2d88d9169bc89d5f17870847))
|
|
89
|
+
* check funding enabled based on enabled onramp providers instead of onrampFunding settings ([#2662](https://github.com/dynamic-labs/DynamicAuth/issues/2662)) ([d542a9b](https://github.com/dynamic-labs/DynamicAuth/commit/d542a9b2950640e473afe378c857f4d2dd1926ff))
|
|
90
|
+
* ensure metamask auto-redirect upon message signing ([#2757](https://github.com/dynamic-labs/DynamicAuth/issues/2757)) ([a590f4b](https://github.com/dynamic-labs/DynamicAuth/commit/a590f4b054cd1de7ad400763d769b0daf4fcaad2))
|
|
91
|
+
* **QNTM-123:** use `linkedWallets` after signing the first message ([#2741](https://github.com/dynamic-labs/DynamicAuth/issues/2741)) ([7f26151](https://github.com/dynamic-labs/DynamicAuth/commit/7f26151db69b50102fd4b09ec470c8f19ce7b68f))
|
|
92
|
+
|
|
93
|
+
## [0.18.0-RC.19](https://github.com/dynamic-labs/DynamicAuth/compare/v0.18.0-RC.18...v0.18.0-RC.19) (2023-07-25)
|
|
94
|
+
|
|
95
|
+
|
|
96
|
+
### ⚠ BREAKING CHANGES
|
|
97
|
+
|
|
98
|
+
* it updates the variable name isUserConnected to isFullyConnected
|
|
99
|
+
to better reflect its purpose in the codebase. user should be reserved for fully authenticated entities
|
|
100
|
+
|
|
101
|
+
### Features
|
|
102
|
+
|
|
103
|
+
* Update WalletConnect wallet registry ([#2744](https://github.com/dynamic-labs/DynamicAuth/issues/2744)) ([46285ad](https://github.com/dynamic-labs/DynamicAuth/commit/46285adc77d12cdfe43d0ce1296308f4905fbfb5))
|
|
104
|
+
|
|
105
|
+
|
|
106
|
+
### Bug Fixes
|
|
107
|
+
|
|
108
|
+
* missing field handling on email verification ([#2740](https://github.com/dynamic-labs/DynamicAuth/issues/2740)) ([3a42804](https://github.com/dynamic-labs/DynamicAuth/commit/3a428049a1f56a263135d636a335e597b3195b51))
|
|
109
|
+
|
|
110
|
+
|
|
111
|
+
* rename isUserConnected to isFullyConnected ([#2739](https://github.com/dynamic-labs/DynamicAuth/issues/2739)) ([951780b](https://github.com/dynamic-labs/DynamicAuth/commit/951780be79acdc5191ffb8a6a525a2701832a2ad))
|
|
112
|
+
|
|
113
|
+
## [0.18.0-RC.18](https://github.com/dynamic-labs/DynamicAuth/compare/v0.18.0-RC.17...v0.18.0-RC.18) (2023-07-24)
|
|
114
|
+
|
|
115
|
+
### Bug Fixes
|
|
116
|
+
|
|
117
|
+
* do not call connectSuccess when already connected ([#2705](https://github.com/dynamic-labs/DynamicAuth/issues/2705)) ([12a65fb](https://github.com/dynamic-labs/DynamicAuth/commit/12a65fb5e59a38de0f5fb0e7eab3ce3d558f201f))
|
|
118
|
+
* do not proceed to authSuccess if there are still missing fields ([#2712](https://github.com/dynamic-labs/DynamicAuth/issues/2712)) ([2fb10ed](https://github.com/dynamic-labs/DynamicAuth/commit/2fb10ed7f9c28476d61856887b517bdae10b80f4))
|
|
119
|
+
* add legacy safari detection ([#2733](https://github.com/dynamic-labs/DynamicAuth/issues/2733)) ([1b21c57](https://github.com/dynamic-labs/DynamicAuth/commit/1b21c57c1fd7c458f499cc09ef60364c314b0464))
|
|
120
|
+
|
|
121
|
+
## [0.18.0-RC.17](https://github.com/dynamic-labs/DynamicAuth/compare/v0.18.0-RC.16...v0.18.0-RC.17) (2023-07-24)
|
|
122
|
+
|
|
123
|
+
|
|
124
|
+
### Features
|
|
125
|
+
|
|
126
|
+
* add ongoingVerifications object disclaiming which verifications are in progress ([#2633](https://github.com/dynamic-labs/DynamicAuth/issues/2633)) ([948c778](https://github.com/dynamic-labs/DynamicAuth/commit/948c778e5955fcf80e31ac7f368e7605cd7eb7d5))
|
|
127
|
+
* add rabby wallet support ([#2590](https://github.com/dynamic-labs/DynamicAuth/issues/2590)) ([d70c49d](https://github.com/dynamic-labs/DynamicAuth/commit/d70c49d0b348ced3ee5691fdfc19b3eef5ba79db))
|
|
128
|
+
* **DYN-2399:** send dynamicContext props from sdk to api ([#2659](https://github.com/dynamic-labs/DynamicAuth/issues/2659)) ([f06787b](https://github.com/dynamic-labs/DynamicAuth/commit/f06787bf6ec1dc69c53ee6287fd3721d47901ad1))
|
|
129
|
+
* introduce MenuList and Dropdown components to unify previously redundant implementations ([#2675](https://github.com/dynamic-labs/DynamicAuth/issues/2675)) ([dfc63a5](https://github.com/dynamic-labs/DynamicAuth/commit/dfc63a5fef2c00cf0187e7a481dc3267d44f6cc3))
|
|
130
|
+
* **QNTM-101:** add loading state to button ([#2691](https://github.com/dynamic-labs/DynamicAuth/issues/2691)) ([5a7b539](https://github.com/dynamic-labs/DynamicAuth/commit/5a7b5392c4b17cc26ecc621d11afdf37f2f10c65))
|
|
131
|
+
* update blocto version to v2 ([#2651](https://github.com/dynamic-labs/DynamicAuth/issues/2651)) ([441f85e](https://github.com/dynamic-labs/DynamicAuth/commit/441f85efa3921a57b9b282631016162902c8aabb))
|
|
132
|
+
* verify connected wallets network at runtime ([#2667](https://github.com/dynamic-labs/DynamicAuth/issues/2667)) ([8fa8dcc](https://github.com/dynamic-labs/DynamicAuth/commit/8fa8dccdfcb56d9d76d0cd00a153a95e5d52b4dc))
|
|
133
|
+
|
|
134
|
+
|
|
135
|
+
### Bug Fixes
|
|
136
|
+
|
|
137
|
+
* correctly round balance numbers on widget ([#2625](https://github.com/dynamic-labs/DynamicAuth/issues/2625)) ([7b45483](https://github.com/dynamic-labs/DynamicAuth/commit/7b45483e7bdb458434b7787f9df930ba9acbc8e0))
|
|
138
|
+
* decrease NetworkNotSupported useEffects calls to avoid race condition ([#2731](https://github.com/dynamic-labs/DynamicAuth/issues/2731)) ([6a7baf1](https://github.com/dynamic-labs/DynamicAuth/commit/6a7baf1c63e82b27d03540d670603fe11685348a))
|
|
139
|
+
* **GVTY-58:** do not allow users to submit empty whitespace strings in onboarding form ([#2720](https://github.com/dynamic-labs/DynamicAuth/issues/2720)) ([916f27a](https://github.com/dynamic-labs/DynamicAuth/commit/916f27a5c880281245c71af3f16217cda5317c26))
|
|
140
|
+
* playwright tests were failing due to new cookies popup that overlapped sdk modal ([#2709](https://github.com/dynamic-labs/DynamicAuth/issues/2709)) ([9254777](https://github.com/dynamic-labs/DynamicAuth/commit/92547773047687fcc50ad6b895b1b59176d42af7))
|
|
141
|
+
* **QNTM-111:** call onConnectSuccess with correct wallet connector in… ([#2724](https://github.com/dynamic-labs/DynamicAuth/issues/2724)) ([159e78c](https://github.com/dynamic-labs/DynamicAuth/commit/159e78ce458762f0e2ccbaf2acbc81efde35830a))
|
|
142
|
+
* **QNTM-98:** improve connectedWallets state management and connected wallets events listeners ([#2696](https://github.com/dynamic-labs/DynamicAuth/issues/2696)) ([3a91a37](https://github.com/dynamic-labs/DynamicAuth/commit/3a91a371423f50d28640141d0ca6a643a8dcf25a))
|
|
143
|
+
* update broken safe icon ([#2713](https://github.com/dynamic-labs/DynamicAuth/issues/2713)) ([42943b4](https://github.com/dynamic-labs/DynamicAuth/commit/42943b4684c165ec103fbed0e69e691bee4d305f))
|
|
144
|
+
|
|
145
|
+
## [0.18.0-RC.16](https://github.com/dynamic-labs/DynamicAuth/compare/v0.18.0-RC.15...v0.18.0-RC.16) (2023-07-18)
|
|
146
|
+
|
|
147
|
+
|
|
148
|
+
### Features
|
|
149
|
+
|
|
150
|
+
* **QNTM-30:** add spinner to log out button ([#2663](https://github.com/dynamic-labs/DynamicAuth/issues/2663)) ([fceafbb](https://github.com/dynamic-labs/DynamicAuth/commit/fceafbb6fecf323df39ac3a8f518ba8005d4b550))
|
|
151
|
+
|
|
152
|
+
|
|
153
|
+
### Bug Fixes
|
|
154
|
+
|
|
155
|
+
* handle edge cases for missing projectSettings for PoweredByDynamic ([#2684](https://github.com/dynamic-labs/DynamicAuth/issues/2684)) ([6f5b3d8](https://github.com/dynamic-labs/DynamicAuth/commit/6f5b3d8d1b1d4aed0dd2e73e5423f6e50347ff3d))
|
|
156
|
+
* typo in blocked view ([#2673](https://github.com/dynamic-labs/DynamicAuth/issues/2673)) ([034bdaf](https://github.com/dynamic-labs/DynamicAuth/commit/034bdafb44b767600ea7c0148f39dd026280e3b8))
|
|
157
|
+
|
|
158
|
+
## [0.18.0-RC.15](https://github.com/dynamic-labs/DynamicAuth/compare/v0.18.0-RC.14...v0.18.0-RC.15) (2023-07-18)
|
|
159
|
+
|
|
160
|
+
|
|
161
|
+
### Features
|
|
162
|
+
|
|
163
|
+
* add `updateConnectedWalletById` function, add `network` property to connectedWallets ([#2666](https://github.com/dynamic-labs/DynamicAuth/issues/2666)) ([3c50abf](https://github.com/dynamic-labs/DynamicAuth/commit/3c50abf964a2807c6e1af9fceeb1ca259785a21f))
|
|
164
|
+
* add magic to ethereum-all package ([#2576](https://github.com/dynamic-labs/DynamicAuth/issues/2576)) ([7676ef2](https://github.com/dynamic-labs/DynamicAuth/commit/7676ef2883b30adf2c1b521d7c1848248ceadb24))
|
|
165
|
+
* allow switching between multiwallet and single wallet on demo ([#2596](https://github.com/dynamic-labs/DynamicAuth/issues/2596)) ([dae87c1](https://github.com/dynamic-labs/DynamicAuth/commit/dae87c12d2f1be64c2ca1f232ffdf2da998b1c1e))
|
|
166
|
+
* clear values from LS that cannot be parsed ([#2542](https://github.com/dynamic-labs/DynamicAuth/issues/2542)) ([41faf5d](https://github.com/dynamic-labs/DynamicAuth/commit/41faf5dbc07937685b4d89f87ae040021c5fee00))
|
|
167
|
+
* **QNTM-82:** should not go back to "get started" view if one wallet already connected ([#2653](https://github.com/dynamic-labs/DynamicAuth/issues/2653)) ([004db41](https://github.com/dynamic-labs/DynamicAuth/commit/004db410eb11af9ba105058df4958f20633a3002))
|
|
168
|
+
|
|
169
|
+
|
|
170
|
+
### Bug Fixes
|
|
171
|
+
|
|
172
|
+
* **bridge:** update the wallets to connect when unlinking ([#2604](https://github.com/dynamic-labs/DynamicAuth/issues/2604)) ([4739306](https://github.com/dynamic-labs/DynamicAuth/commit/4739306c2d742e961281747427821af7c36b6cc2))
|
|
173
|
+
* network picker is broken in network switch view ([#2612](https://github.com/dynamic-labs/DynamicAuth/issues/2612)) ([c514ba4](https://github.com/dynamic-labs/DynamicAuth/commit/c514ba4f931c243bdd60329db7ed1691fc36819c))
|
|
174
|
+
* search not found icon in wrong color in dark mode ([#2656](https://github.com/dynamic-labs/DynamicAuth/issues/2656)) ([a4db736](https://github.com/dynamic-labs/DynamicAuth/commit/a4db736b8659567330dd857792cc12b17ce9d851))
|
|
175
|
+
* use dynamicauth.com for api requests ([#2649](https://github.com/dynamic-labs/DynamicAuth/issues/2649)) ([acae0af](https://github.com/dynamic-labs/DynamicAuth/commit/acae0afc2a18c41fa61b2c487ff1ceb46c5d9a1f))
|
|
176
|
+
* wallet should be disconnected when NetworkNotSupported view is ignored in connect-only mode ([#2658](https://github.com/dynamic-labs/DynamicAuth/issues/2658)) ([f3565cf](https://github.com/dynamic-labs/DynamicAuth/commit/f3565cf09a1ddcc671b596bbe23c68d35afc81b5))
|
|
177
|
+
|
|
178
|
+
## [0.18.0-RC.14](https://github.com/dynamic-labs/DynamicAuth/compare/v0.18.0-RC.13...v0.18.0-RC.14) (2023-07-11)
|
|
179
|
+
|
|
180
|
+
|
|
181
|
+
### ⚠ BREAKING CHANGES
|
|
182
|
+
|
|
183
|
+
* **QNTM-68:** we currently expose concatenated primary and secondary
|
|
184
|
+
wallets array as connectedWallets, this is wrong and may cause issues with
|
|
185
|
+
understanding our architecture as well as issues for customers that want
|
|
186
|
+
to have access to connectedWallets array.
|
|
187
|
+
|
|
188
|
+
* chore(QNTM-68): expose connectedWallets from DynamicContext
|
|
189
|
+
|
|
190
|
+
since, we renamed connectedWallets to linkedWallets, we now want to expose correct value
|
|
191
|
+
for connectedWallets.
|
|
192
|
+
|
|
193
|
+
* chore(QNTM-68)!: remove connectedWalletsInfo from useDynamicContext
|
|
194
|
+
* **QNTM-68:** since we're exposing connectedWallets and this variable
|
|
195
|
+
has less information there is no need in exposing it from DynamicContext
|
|
196
|
+
|
|
197
|
+
* **QNTM-68:** update connectedWallets property and expose linkedWallets ([#2644](https://github.com/dynamic-labs/DynamicAuth/issues/2644)) ([8b707c3](https://github.com/dynamic-labs/DynamicAuth/commit/8b707c3fb2e14aa25385b35768ffa355ef7117e5))
|
|
198
|
+
|
|
199
|
+
## [0.18.0-RC.13](https://github.com/dynamic-labs/DynamicAuth/compare/v0.18.0-RC.12...v0.18.0-RC.13) (2023-07-11)
|
|
200
|
+
|
|
201
|
+
|
|
202
|
+
### Features
|
|
203
|
+
|
|
204
|
+
* **DynamicContextProvider:** expose socialProviderFilter to modify social provider display order ([#2607](https://github.com/dynamic-labs/DynamicAuth/issues/2607)) ([0f03260](https://github.com/dynamic-labs/DynamicAuth/commit/0f03260e739da3e68c32a2a87a2ca629bb1f28b5))
|
|
205
|
+
* **GVTY-21:** Blocto Email provider ([#2524](https://github.com/dynamic-labs/DynamicAuth/issues/2524)) ([434ce59](https://github.com/dynamic-labs/DynamicAuth/commit/434ce598b3bc13841121b61e5ead7547d3c44eea))
|
|
206
|
+
* listen for the network change in network not supported views ([#2611](https://github.com/dynamic-labs/DynamicAuth/issues/2611)) ([957fbce](https://github.com/dynamic-labs/DynamicAuth/commit/957fbce55d7906f9d6b109838035b2c0306a4b85))
|
|
207
|
+
|
|
208
|
+
|
|
209
|
+
### Bug Fixes
|
|
210
|
+
|
|
211
|
+
* Clean up provider re-initializing after logout ([#2632](https://github.com/dynamic-labs/DynamicAuth/issues/2632)) ([fbc2201](https://github.com/dynamic-labs/DynamicAuth/commit/fbc22013d6784061cb4fdd72e24695c89f0e2fe5))
|
|
212
|
+
* **MagicWalletConnector:** check if user is logged when getting balance ([#2614](https://github.com/dynamic-labs/DynamicAuth/issues/2614)) ([ced9d66](https://github.com/dynamic-labs/DynamicAuth/commit/ced9d66cb335c3033a18642bdd841ee6be6c1e05))
|
|
213
|
+
* **useValidateSessin:** only check for bridge on wallet connect wallets ([#2571](https://github.com/dynamic-labs/DynamicAuth/issues/2571)) ([349b659](https://github.com/dynamic-labs/DynamicAuth/commit/349b65963f1d5392f63aaa138f6498f0d17cd43f))
|
|
214
|
+
|
|
215
|
+
## [0.18.0-RC.12](https://github.com/dynamic-labs/DynamicAuth/compare/v0.18.0-RC.11...v0.18.0-RC.12) (2023-07-07)
|
|
216
|
+
|
|
217
|
+
|
|
218
|
+
### Features
|
|
219
|
+
|
|
220
|
+
* add event listeners to connect-only ([#2578](https://github.com/dynamic-labs/DynamicAuth/issues/2578)) ([42fcf09](https://github.com/dynamic-labs/DynamicAuth/commit/42fcf096ac439ec883a79bf5811b27cdc360015a))
|
|
221
|
+
* add message when search finds no wallet ([#2421](https://github.com/dynamic-labs/DynamicAuth/issues/2421)) ([694ecee](https://github.com/dynamic-labs/DynamicAuth/commit/694ecee94d9f6f636364eae4aa95ea48e3ff0e0a))
|
|
222
|
+
* allow adding either ToS or PP and enable customization for both ([#2451](https://github.com/dynamic-labs/DynamicAuth/issues/2451)) ([0dce0fe](https://github.com/dynamic-labs/DynamicAuth/commit/0dce0fe534056298cbfdd9caa694231ede00c3fc))
|
|
223
|
+
|
|
224
|
+
|
|
225
|
+
### Bug Fixes
|
|
226
|
+
|
|
227
|
+
* **BridgeSummaryView:** handle primary wallet when it is not defined ([#2602](https://github.com/dynamic-labs/DynamicAuth/issues/2602)) ([8a5daa4](https://github.com/dynamic-labs/DynamicAuth/commit/8a5daa4b2ad218460ccfaab0fa68c75d0d5d569f))
|
|
228
|
+
* secondary wallets network change overrides primary wallet network ([#2603](https://github.com/dynamic-labs/DynamicAuth/issues/2603)) ([358fc45](https://github.com/dynamic-labs/DynamicAuth/commit/358fc45ecb73f31294744f7ba4dbba5779a3e1cf))
|
|
229
|
+
|
|
230
|
+
## [0.18.0-RC.11](https://github.com/dynamic-labs/DynamicAuth/compare/v0.18.0-RC.10...v0.18.0-RC.11) (2023-07-07)
|
|
231
|
+
|
|
232
|
+
|
|
233
|
+
### Features
|
|
234
|
+
|
|
235
|
+
* **DYN-2384:** expose useDynamicScopes hook ([#2179](https://github.com/dynamic-labs/DynamicAuth/issues/2179)) ([c224749](https://github.com/dynamic-labs/DynamicAuth/commit/c2247493d9c99dab7e41d7d8d156ae7e478973bc))
|
|
236
|
+
* **DynamicBridgeWidget:** add UI inline widget to match designs ([#2587](https://github.com/dynamic-labs/DynamicAuth/issues/2587)) ([d623aec](https://github.com/dynamic-labs/DynamicAuth/commit/d623aecda6388b67e40a3f8dabb03ca03a6f22b6))
|
|
237
|
+
* support starknet networks ([#2579](https://github.com/dynamic-labs/DynamicAuth/issues/2579)) ([a01545e](https://github.com/dynamic-labs/DynamicAuth/commit/a01545e0cf8e4e19a22dc64877d590d78647c579))
|
|
238
|
+
|
|
239
|
+
|
|
240
|
+
### Bug Fixes
|
|
241
|
+
|
|
242
|
+
* metamask getConnectedAccounts triggering an infinite loop ([#2580](https://github.com/dynamic-labs/DynamicAuth/issues/2580)) ([e025cea](https://github.com/dynamic-labs/DynamicAuth/commit/e025cea33e4a95ea2a03ac11e47a88a73db39848))
|
|
243
|
+
|
|
244
|
+
## [0.18.0-RC.10](https://github.com/dynamic-labs/DynamicAuth/compare/v0.18.0-RC.9...v0.18.0-RC.10) (2023-07-06)
|
|
245
|
+
|
|
246
|
+
|
|
247
|
+
### Features
|
|
248
|
+
|
|
249
|
+
* Update handleUnlink to support connected only wallets ([#2573](https://github.com/dynamic-labs/DynamicAuth/issues/2573)) ([07438c9](https://github.com/dynamic-labs/DynamicAuth/commit/07438c9580b830aa68fcc6a06ea4050a3743a501))
|
|
250
|
+
|
|
251
|
+
|
|
252
|
+
### Bug Fixes
|
|
253
|
+
|
|
254
|
+
* restore connectedWallet clearing function ([#2575](https://github.com/dynamic-labs/DynamicAuth/issues/2575)) ([8d3c41a](https://github.com/dynamic-labs/DynamicAuth/commit/8d3c41a6871037b1003270e724259f23c5f6f370))
|
|
255
|
+
|
|
256
|
+
## [0.18.0-RC.9](https://github.com/dynamic-labs/DynamicAuth/compare/v0.18.0-RC.8...v0.18.0-RC.9) (2023-07-04)
|
|
257
|
+
|
|
258
|
+
|
|
259
|
+
### Features
|
|
260
|
+
|
|
261
|
+
* add Network Not Supported prompt to connect-only & show prompt before sign in connect-sign mode ([#2474](https://github.com/dynamic-labs/DynamicAuth/issues/2474)) ([8d5bfa9](https://github.com/dynamic-labs/DynamicAuth/commit/8d5bfa97ca4da50e06ce258a38a63e7407a795f6))
|
|
262
|
+
* **DYN-2602:** add ability to unlink connected wallet ([#2494](https://github.com/dynamic-labs/DynamicAuth/issues/2494)) ([389861b](https://github.com/dynamic-labs/DynamicAuth/commit/389861bc0281baec379b1593e529cef3467f3326))
|
|
263
|
+
* **DYN-2604:** add chainId property to walletsByChain object ([#2405](https://github.com/dynamic-labs/DynamicAuth/issues/2405)) ([d9b42f7](https://github.com/dynamic-labs/DynamicAuth/commit/d9b42f7b1d53dac1ed0228ecb5e56a44c6abd8d2))
|
|
264
|
+
* **DynamicAuthLayout:** show connected wallet progress ([#2567](https://github.com/dynamic-labs/DynamicAuth/issues/2567)) ([a20ff6f](https://github.com/dynamic-labs/DynamicAuth/commit/a20ff6f32b360ccc699d2a271c7a96751ae87d29))
|
|
265
|
+
* **DynamicBridgeFlow:** add bridge flow ([#2543](https://github.com/dynamic-labs/DynamicAuth/issues/2543)) ([79c4c87](https://github.com/dynamic-labs/DynamicAuth/commit/79c4c870d47a0c853c292a8d913bd9be9e209a15))
|
|
266
|
+
|
|
267
|
+
|
|
268
|
+
### Bug Fixes
|
|
269
|
+
|
|
270
|
+
* don't force required chain to eth in case is not enabled ([#2537](https://github.com/dynamic-labs/DynamicAuth/issues/2537)) ([b01d6c9](https://github.com/dynamic-labs/DynamicAuth/commit/b01d6c9e91e9971e82739c5a2c900de4768f977c))
|
|
271
|
+
* log out if there's any session sync issue ([#2545](https://github.com/dynamic-labs/DynamicAuth/issues/2545)) ([29972fa](https://github.com/dynamic-labs/DynamicAuth/commit/29972fad1067f5550a61f6e2cd9adcaf811fd268))
|
|
272
|
+
* persist chain to WalletConnect session when changed in wallet ([#2556](https://github.com/dynamic-labs/DynamicAuth/issues/2556)) ([fc9ec35](https://github.com/dynamic-labs/DynamicAuth/commit/fc9ec3501de1e3235adee4df95b296dc22cce23e))
|
|
273
|
+
* WC2 sign-message on non-selected chain ([#2544](https://github.com/dynamic-labs/DynamicAuth/issues/2544)) ([48a4384](https://github.com/dynamic-labs/DynamicAuth/commit/48a4384f77c29775e0c28ed335956cfbd6f89ca3))
|
|
274
|
+
* **wcv2:** add eth_signTypedData_v4 to optional methods ([#2527](https://github.com/dynamic-labs/DynamicAuth/issues/2527)) ([b99474b](https://github.com/dynamic-labs/DynamicAuth/commit/b99474b81b083134762be0fe9554a6f049b3edda))
|
|
275
|
+
* **wcv2:** allow getWeb3Provider to wait to provider init ([#2523](https://github.com/dynamic-labs/DynamicAuth/issues/2523)) ([d9c7fee](https://github.com/dynamic-labs/DynamicAuth/commit/d9c7fee10d2a6c766043515e19829fd7e3d5b2ef))
|
|
276
|
+
|
|
2
277
|
## [0.18.0-RC.8](https://github.com/dynamic-labs/DynamicAuth/compare/v0.18.0-RC.7...v0.18.0-RC.8) (2023-06-29)
|
|
3
278
|
|
|
4
279
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dynamic-labs/utils",
|
|
3
|
-
"version": "0.18.0-
|
|
3
|
+
"version": "0.18.0-beta.28",
|
|
4
4
|
"repository": {
|
|
5
5
|
"type": "git",
|
|
6
6
|
"url": "https://github.com/dynamic-labs/DynamicAuth.git",
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
"./package.json": "./package.json"
|
|
27
27
|
},
|
|
28
28
|
"dependencies": {
|
|
29
|
-
"@dynamic-labs/types": "0.18.0-
|
|
29
|
+
"@dynamic-labs/types": "0.18.0-beta.28"
|
|
30
30
|
},
|
|
31
31
|
"peerDependencies": {}
|
|
32
32
|
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var DynamicError = require('./DynamicError.cjs');
|
|
6
|
+
|
|
7
|
+
class AccountExistsError extends DynamicError.DynamicError {
|
|
8
|
+
constructor(errorMessage, errorPayload) {
|
|
9
|
+
super(errorMessage);
|
|
10
|
+
this.errorMessage = errorMessage;
|
|
11
|
+
this.errorPayload = errorPayload;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
exports.AccountExistsError = AccountExistsError;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { DynamicError } from './DynamicError';
|
|
2
|
+
type AccountExistsPayload = {
|
|
3
|
+
email: string;
|
|
4
|
+
embeddedSocialSigninProvider: string;
|
|
5
|
+
embeddedWalletName: string;
|
|
6
|
+
loginProvider: string;
|
|
7
|
+
};
|
|
8
|
+
export declare class AccountExistsError extends DynamicError {
|
|
9
|
+
errorMessage: string;
|
|
10
|
+
errorPayload: AccountExistsPayload;
|
|
11
|
+
constructor(errorMessage: string, errorPayload: AccountExistsPayload);
|
|
12
|
+
}
|
|
13
|
+
export {};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { DynamicError } from './DynamicError.js';
|
|
2
|
+
|
|
3
|
+
class AccountExistsError extends DynamicError {
|
|
4
|
+
constructor(errorMessage, errorPayload) {
|
|
5
|
+
super(errorMessage);
|
|
6
|
+
this.errorMessage = errorMessage;
|
|
7
|
+
this.errorPayload = errorPayload;
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
export { AccountExistsError };
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var DynamicError = require('./DynamicError.cjs');
|
|
6
|
+
|
|
7
|
+
class GateBlockedError extends DynamicError.DynamicError {
|
|
8
|
+
constructor(walletPublicKey) {
|
|
9
|
+
super('This address is blocked by the gate');
|
|
10
|
+
this.walletPublicKey = walletPublicKey;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
exports.GateBlockedError = GateBlockedError;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { DynamicError } from './DynamicError.js';
|
|
2
|
+
|
|
3
|
+
class GateBlockedError extends DynamicError {
|
|
4
|
+
constructor(walletPublicKey) {
|
|
5
|
+
super('This address is blocked by the gate');
|
|
6
|
+
this.walletPublicKey = walletPublicKey;
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export { GateBlockedError };
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var DynamicError = require('./DynamicError.cjs');
|
|
6
|
+
|
|
7
|
+
class MissingEnvironmentIdError extends DynamicError.DynamicError {
|
|
8
|
+
constructor() {
|
|
9
|
+
super('You are missing the environmentId field in yours DynamicContextProvider settings prop');
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
exports.MissingEnvironmentIdError = MissingEnvironmentIdError;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { DynamicError } from './DynamicError.js';
|
|
2
|
+
|
|
3
|
+
class MissingEnvironmentIdError extends DynamicError {
|
|
4
|
+
constructor() {
|
|
5
|
+
super('You are missing the environmentId field in yours DynamicContextProvider settings prop');
|
|
6
|
+
}
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
export { MissingEnvironmentIdError };
|
package/src/errors/index.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
export * from './AccountExistsError';
|
|
1
2
|
export * from './ChainalysisError';
|
|
2
3
|
export * from './CustomError';
|
|
3
4
|
export * from './DynamicError';
|
|
@@ -9,3 +10,5 @@ export * from './UsernameAlreadyExistsError';
|
|
|
9
10
|
export * from './WalletNotDeployedError';
|
|
10
11
|
export * from './WalletUsedError';
|
|
11
12
|
export * from './EmailProviderError';
|
|
13
|
+
export * from './MissingEnvironmentIdError';
|
|
14
|
+
export * from './GateBlockedError';
|
package/src/index.cjs
CHANGED
|
@@ -4,6 +4,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
4
4
|
|
|
5
5
|
var parseChainId = require('./parseChainId.cjs');
|
|
6
6
|
var parseEvmNetworks = require('./parseEvmNetworks.cjs');
|
|
7
|
+
var AccountExistsError = require('./errors/AccountExistsError.cjs');
|
|
7
8
|
var ChainalysisError = require('./errors/ChainalysisError.cjs');
|
|
8
9
|
var CustomError = require('./errors/CustomError.cjs');
|
|
9
10
|
var DynamicError = require('./errors/DynamicError.cjs');
|
|
@@ -15,6 +16,8 @@ var UsernameAlreadyExistsError = require('./errors/UsernameAlreadyExistsError.cj
|
|
|
15
16
|
var WalletNotDeployedError = require('./errors/WalletNotDeployedError.cjs');
|
|
16
17
|
var WalletUsedError = require('./errors/WalletUsedError.cjs');
|
|
17
18
|
var EmailProviderError = require('./errors/EmailProviderError.cjs');
|
|
19
|
+
var MissingEnvironmentIdError = require('./errors/MissingEnvironmentIdError.cjs');
|
|
20
|
+
var GateBlockedError = require('./errors/GateBlockedError.cjs');
|
|
18
21
|
var CancellablePromise = require('./CancellablePromise/CancellablePromise.cjs');
|
|
19
22
|
var isFunction = require('./isFunction/isFunction.cjs');
|
|
20
23
|
var isMobile = require('./isMobile.cjs');
|
|
@@ -25,6 +28,7 @@ var bufferToBase64 = require('./bufferToBase64.cjs');
|
|
|
25
28
|
|
|
26
29
|
exports.parseChainId = parseChainId.parseChainId;
|
|
27
30
|
exports.parseEvmNetworks = parseEvmNetworks.parseEvmNetworks;
|
|
31
|
+
exports.AccountExistsError = AccountExistsError.AccountExistsError;
|
|
28
32
|
exports.ChainalysisError = ChainalysisError.ChainalysisError;
|
|
29
33
|
exports.CustomError = CustomError.CustomError;
|
|
30
34
|
exports.DynamicError = DynamicError.DynamicError;
|
|
@@ -36,12 +40,15 @@ exports.UsernameAlreadyExistsError = UsernameAlreadyExistsError.UsernameAlreadyE
|
|
|
36
40
|
exports.WalletNotDeployedError = WalletNotDeployedError.WalletNotDeployedError;
|
|
37
41
|
exports.WalletUsedError = WalletUsedError.WalletUsedError;
|
|
38
42
|
exports.EmailProviderError = EmailProviderError.EmailProviderError;
|
|
43
|
+
exports.MissingEnvironmentIdError = MissingEnvironmentIdError.MissingEnvironmentIdError;
|
|
44
|
+
exports.GateBlockedError = GateBlockedError.GateBlockedError;
|
|
39
45
|
exports.CancellablePromise = CancellablePromise.CancellablePromise;
|
|
40
46
|
exports.isFunction = isFunction.isFunction;
|
|
41
47
|
exports.isAndroid = isMobile.isAndroid;
|
|
42
48
|
exports.isIOS = isMobile.isIOS;
|
|
43
49
|
exports.isIPad = isMobile.isIPad;
|
|
44
50
|
exports.isIPhone = isMobile.isIPhone;
|
|
51
|
+
exports.isLegacySafari = isMobile.isLegacySafari;
|
|
45
52
|
exports.isMobile = isMobile.isMobile;
|
|
46
53
|
exports.isSamsungBrowser = isMobile.isSamsungBrowser;
|
|
47
54
|
exports.getItemAsync = localStorageAsync.getItemAsync;
|
package/src/index.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
export { parseChainId } from './parseChainId.js';
|
|
2
2
|
export { parseEvmNetworks } from './parseEvmNetworks.js';
|
|
3
|
+
export { AccountExistsError } from './errors/AccountExistsError.js';
|
|
3
4
|
export { ChainalysisError } from './errors/ChainalysisError.js';
|
|
4
5
|
export { CustomError } from './errors/CustomError.js';
|
|
5
6
|
export { DynamicError } from './errors/DynamicError.js';
|
|
@@ -11,8 +12,10 @@ export { UsernameAlreadyExistsError } from './errors/UsernameAlreadyExistsError.
|
|
|
11
12
|
export { WalletNotDeployedError } from './errors/WalletNotDeployedError.js';
|
|
12
13
|
export { WalletUsedError } from './errors/WalletUsedError.js';
|
|
13
14
|
export { EmailProviderError } from './errors/EmailProviderError.js';
|
|
15
|
+
export { MissingEnvironmentIdError } from './errors/MissingEnvironmentIdError.js';
|
|
16
|
+
export { GateBlockedError } from './errors/GateBlockedError.js';
|
|
14
17
|
export { CancellablePromise } from './CancellablePromise/CancellablePromise.js';
|
|
15
18
|
export { isFunction } from './isFunction/isFunction.js';
|
|
16
|
-
export { isAndroid, isIOS, isIPad, isIPhone, isMobile, isSamsungBrowser } from './isMobile.js';
|
|
19
|
+
export { isAndroid, isIOS, isIPad, isIPhone, isLegacySafari, isMobile, isSamsungBrowser } from './isMobile.js';
|
|
17
20
|
export { getItemAsync, removeItemAsync, setItemAsync } from './localStorageAsync.js';
|
|
18
21
|
export { bufferToBase64 } from './bufferToBase64.js';
|
package/src/isMobile.cjs
CHANGED
|
@@ -41,6 +41,18 @@ const isIOS = (maxTouchPointsOverride) => {
|
|
|
41
41
|
return isIPhone() || isIPad(maxTouchPointsOverride);
|
|
42
42
|
};
|
|
43
43
|
const isAndroid = () => isMobile() && !isIOS();
|
|
44
|
+
const isLegacySafari = () => {
|
|
45
|
+
// We need to check if window.CSS exists and if it has supports function.
|
|
46
|
+
// We can use it only in browsers. This prevents customer tests from failing because of that.
|
|
47
|
+
if (!window.CSS || typeof window.CSS.supports !== 'function') {
|
|
48
|
+
return false;
|
|
49
|
+
}
|
|
50
|
+
// Older versions of Safari <15 are not supporting aspect-ratio css property.
|
|
51
|
+
// We can use that to check if user is on older browser.
|
|
52
|
+
// https://developer.mozilla.org/en-US/docs/Web/CSS/aspect-ratio
|
|
53
|
+
const cssValue = 'aspect-ratio: 1 / 1';
|
|
54
|
+
return !CSS.supports(cssValue);
|
|
55
|
+
};
|
|
44
56
|
const isSamsungBrowser = () => {
|
|
45
57
|
if (typeof window === 'undefined' || typeof navigator === 'undefined') {
|
|
46
58
|
return false;
|
|
@@ -52,5 +64,6 @@ exports.isAndroid = isAndroid;
|
|
|
52
64
|
exports.isIOS = isIOS;
|
|
53
65
|
exports.isIPad = isIPad;
|
|
54
66
|
exports.isIPhone = isIPhone;
|
|
67
|
+
exports.isLegacySafari = isLegacySafari;
|
|
55
68
|
exports.isMobile = isMobile;
|
|
56
69
|
exports.isSamsungBrowser = isSamsungBrowser;
|
package/src/isMobile.d.ts
CHANGED
|
@@ -11,4 +11,5 @@ export declare const isIPhone: () => boolean;
|
|
|
11
11
|
export declare const isIPad: (maxTouchPointsOverride?: number) => boolean;
|
|
12
12
|
export declare const isIOS: (maxTouchPointsOverride?: number) => boolean;
|
|
13
13
|
export declare const isAndroid: () => boolean;
|
|
14
|
+
export declare const isLegacySafari: () => boolean;
|
|
14
15
|
export declare const isSamsungBrowser: () => boolean;
|
package/src/isMobile.js
CHANGED
|
@@ -37,6 +37,18 @@ const isIOS = (maxTouchPointsOverride) => {
|
|
|
37
37
|
return isIPhone() || isIPad(maxTouchPointsOverride);
|
|
38
38
|
};
|
|
39
39
|
const isAndroid = () => isMobile() && !isIOS();
|
|
40
|
+
const isLegacySafari = () => {
|
|
41
|
+
// We need to check if window.CSS exists and if it has supports function.
|
|
42
|
+
// We can use it only in browsers. This prevents customer tests from failing because of that.
|
|
43
|
+
if (!window.CSS || typeof window.CSS.supports !== 'function') {
|
|
44
|
+
return false;
|
|
45
|
+
}
|
|
46
|
+
// Older versions of Safari <15 are not supporting aspect-ratio css property.
|
|
47
|
+
// We can use that to check if user is on older browser.
|
|
48
|
+
// https://developer.mozilla.org/en-US/docs/Web/CSS/aspect-ratio
|
|
49
|
+
const cssValue = 'aspect-ratio: 1 / 1';
|
|
50
|
+
return !CSS.supports(cssValue);
|
|
51
|
+
};
|
|
40
52
|
const isSamsungBrowser = () => {
|
|
41
53
|
if (typeof window === 'undefined' || typeof navigator === 'undefined') {
|
|
42
54
|
return false;
|
|
@@ -44,4 +56,4 @@ const isSamsungBrowser = () => {
|
|
|
44
56
|
return navigator.userAgent.includes('SamsungBrowser');
|
|
45
57
|
};
|
|
46
58
|
|
|
47
|
-
export { isAndroid, isIOS, isIPad, isIPhone, isMobile, isSamsungBrowser };
|
|
59
|
+
export { isAndroid, isIOS, isIPad, isIPhone, isLegacySafari, isMobile, isSamsungBrowser };
|