@hsuite/native-connect-angular 2.1.0 → 2.1.1
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/coverage/coverage-summary.json +25 -21
- package/coverage/index.html +108 -108
- package/coverage/lcov-report/index.html +108 -108
- package/coverage/lcov-report/lib/components/account-selector/account-actions/account-actions.component.ts.html +1 -1
- package/coverage/lcov-report/lib/components/account-selector/account-actions/index.html +1 -1
- package/coverage/lcov-report/lib/components/account-selector/account-filter/account-filter.component.ts.html +1 -1
- package/coverage/lcov-report/lib/components/account-selector/account-filter/index.html +1 -1
- package/coverage/lcov-report/lib/components/account-selector/account-formatting.service.ts.html +13 -19
- package/coverage/lcov-report/lib/components/account-selector/account-grouping.service.ts.html +1 -1
- package/coverage/lcov-report/lib/components/account-selector/account-list/account-list.component.ts.html +1 -1
- package/coverage/lcov-report/lib/components/account-selector/account-list/index.html +1 -1
- package/coverage/lcov-report/lib/components/account-selector/account-selector.component.ts.html +1 -1
- package/coverage/lcov-report/lib/components/account-selector/account-selector.service.ts.html +1 -1
- package/coverage/lcov-report/lib/components/account-selector/index.html +5 -5
- package/coverage/lcov-report/lib/components/wallet-account-display/index.html +1 -1
- package/coverage/lcov-report/lib/components/wallet-account-display/wallet-account-display.component.ts.html +10 -10
- package/coverage/lcov-report/lib/components/wallet-connect-button/index.html +1 -1
- package/coverage/lcov-report/lib/components/wallet-connect-button/wallet-connect-button.component.ts.html +1 -1
- package/coverage/lcov-report/lib/components/wallet-connect-prompt/index.html +1 -1
- package/coverage/lcov-report/lib/components/wallet-connect-prompt/wallet-connect-prompt.component.ts.html +1 -1
- package/coverage/lcov-report/lib/components/wallet-connected-guard/index.html +1 -1
- package/coverage/lcov-report/lib/components/wallet-connected-guard/wallet-connected-guard.component.ts.html +1 -1
- package/coverage/lcov-report/lib/components/wallet-connection-modal/connection-method-step/connection-method-step.component.ts.html +1 -1
- package/coverage/lcov-report/lib/components/wallet-connection-modal/connection-method-step/index.html +1 -1
- package/coverage/lcov-report/lib/components/wallet-connection-modal/index.html +15 -15
- package/coverage/lcov-report/lib/components/wallet-connection-modal/qr-pairing-step/index.html +1 -1
- package/coverage/lcov-report/lib/components/wallet-connection-modal/qr-pairing-step/qr-pairing-step.component.ts.html +1 -1
- package/coverage/lcov-report/lib/components/wallet-connection-modal/wallet-connection-modal.component.ts.html +84 -36
- package/coverage/lcov-report/lib/components/wallet-session-display/index.html +1 -1
- package/coverage/lcov-report/lib/components/wallet-session-display/wallet-session-display.component.ts.html +1 -1
- package/coverage/lcov-report/lib/components/wallet-transaction-status/index.html +1 -1
- package/coverage/lcov-report/lib/components/wallet-transaction-status/wallet-transaction-status.component.ts.html +1 -1
- package/coverage/lcov-report/lib/directives/index.html +1 -1
- package/coverage/lcov-report/lib/directives/wallet-connected.directive.ts.html +1 -1
- package/coverage/lcov-report/lib/directives/wallet-context.directive.ts.html +1 -1
- package/coverage/lcov-report/lib/directives/wallet-events.directive.ts.html +1 -1
- package/coverage/lcov-report/lib/hsuite-wallet.module.ts.html +1 -1
- package/coverage/lcov-report/lib/index.html +1 -1
- package/coverage/lcov-report/lib/models/connection-config.model.ts.html +1 -1
- package/coverage/lcov-report/lib/models/index.html +7 -7
- package/coverage/lcov-report/lib/models/provider-types.ts.html +11 -5
- package/coverage/lcov-report/lib/providers/base-wallet-provider.ts.html +20 -20
- package/coverage/lcov-report/lib/providers/hsuite-native/channel-client.service.ts.html +639 -636
- package/coverage/lcov-report/lib/providers/hsuite-native/index.html +19 -19
- package/coverage/lcov-report/lib/providers/hsuite-native-provider.ts.html +1 -1
- package/coverage/lcov-report/lib/providers/index.html +18 -18
- package/coverage/lcov-report/lib/providers/p2p-native/index.html +22 -22
- package/coverage/lcov-report/lib/providers/p2p-native/p2p-native.provider.ts.html +993 -993
- package/coverage/lcov-report/lib/providers/p2p-native/p2p-session-manager.ts.html +7 -4
- package/coverage/lcov-report/lib/providers/wallet-error-handler.ts.html +1 -1
- package/coverage/lcov-report/lib/providers/walletconnect/core/index.html +65 -65
- package/coverage/lcov-report/lib/providers/walletconnect/core/session-health.ts.html +240 -240
- package/coverage/lcov-report/lib/providers/walletconnect/core/walletconnect-client-manager.ts.html +559 -559
- package/coverage/lcov-report/lib/providers/walletconnect/core/walletconnect-provider.ts.html +1108 -1105
- package/coverage/lcov-report/lib/providers/walletconnect/core/walletconnect-session-store.ts.html +493 -493
- package/coverage/lcov-report/lib/providers/walletconnect/core/walletconnect-signing-orchestrator.ts.html +366 -366
- package/coverage/lcov-report/lib/providers/walletconnect/signers/hedera-signer.ts.html +730 -730
- package/coverage/lcov-report/lib/providers/walletconnect/signers/index.html +43 -43
- package/coverage/lcov-report/lib/providers/walletconnect/signers/signer-factory.ts.html +234 -234
- package/coverage/lcov-report/lib/providers/walletconnect/signers/xrpl-signer.ts.html +650 -650
- package/coverage/lcov-report/lib/services/hsuite-auth.interceptor.ts.html +568 -0
- package/coverage/lcov-report/lib/services/index.html +50 -20
- package/coverage/lcov-report/lib/services/logger.service.ts.html +1 -1
- package/coverage/lcov-report/lib/services/smart-session.service.ts.html +1264 -0
- package/coverage/lcov-report/lib/services/transaction-builders/active-account-source.ts.html +250 -0
- package/coverage/lcov-report/lib/services/transaction-builders/base-transaction-builder.service.ts.html +1 -1
- package/coverage/lcov-report/lib/services/transaction-builders/hedera-amount-utils.ts.html +155 -155
- package/coverage/lcov-report/lib/services/transaction-builders/hedera-transaction-builder.service.ts.html +2156 -2156
- package/coverage/lcov-report/lib/services/transaction-builders/index.html +58 -43
- package/coverage/lcov-report/lib/services/transaction-builders/xrpl-transaction-builder.service.ts.html +1674 -1674
- package/coverage/lcov-report/lib/services/transaction.service.ts.html +4 -4
- package/coverage/lcov-report/lib/services/unified-wallet.service.ts.html +3 -3
- package/coverage/lcov-report/lib/services/wallet-context.service.ts.html +1 -1
- package/coverage/lcov-report/lib/services/wallet-event-bus.service.ts.html +249 -249
- package/coverage/lcov-report/lib/services/wallet-providers.service.ts.html +1 -1
- package/coverage/lcov-report/lib/transports/chrome-extension-transport.ts.html +1 -1
- package/coverage/lcov-report/lib/transports/index.html +1 -1
- package/coverage/lcov-report/lib/utils/index.html +36 -21
- package/coverage/lcov-report/lib/utils/ledger-icons.util.ts.html +254 -161
- package/coverage/lcov-report/lib/utils/ledger-ui-registry.ts.html +676 -0
- package/coverage/lcov.info +8567 -6896
- package/coverage/lib/components/account-selector/account-actions/account-actions.component.ts.html +1 -1
- package/coverage/lib/components/account-selector/account-actions/index.html +1 -1
- package/coverage/lib/components/account-selector/account-filter/account-filter.component.ts.html +1 -1
- package/coverage/lib/components/account-selector/account-filter/index.html +1 -1
- package/coverage/lib/components/account-selector/account-formatting.service.ts.html +13 -19
- package/coverage/lib/components/account-selector/account-grouping.service.ts.html +1 -1
- package/coverage/lib/components/account-selector/account-list/account-list.component.ts.html +1 -1
- package/coverage/lib/components/account-selector/account-list/index.html +1 -1
- package/coverage/lib/components/account-selector/account-selector.component.ts.html +1 -1
- package/coverage/lib/components/account-selector/account-selector.service.ts.html +1 -1
- package/coverage/lib/components/account-selector/index.html +5 -5
- package/coverage/lib/components/wallet-account-display/index.html +1 -1
- package/coverage/lib/components/wallet-account-display/wallet-account-display.component.ts.html +10 -10
- package/coverage/lib/components/wallet-connect-button/index.html +1 -1
- package/coverage/lib/components/wallet-connect-button/wallet-connect-button.component.ts.html +1 -1
- package/coverage/lib/components/wallet-connect-prompt/index.html +1 -1
- package/coverage/lib/components/wallet-connect-prompt/wallet-connect-prompt.component.ts.html +1 -1
- package/coverage/lib/components/wallet-connected-guard/index.html +1 -1
- package/coverage/lib/components/wallet-connected-guard/wallet-connected-guard.component.ts.html +1 -1
- package/coverage/lib/components/wallet-connection-modal/connection-method-step/connection-method-step.component.ts.html +1 -1
- package/coverage/lib/components/wallet-connection-modal/connection-method-step/index.html +1 -1
- package/coverage/lib/components/wallet-connection-modal/index.html +15 -15
- package/coverage/lib/components/wallet-connection-modal/qr-pairing-step/index.html +1 -1
- package/coverage/lib/components/wallet-connection-modal/qr-pairing-step/qr-pairing-step.component.ts.html +1 -1
- package/coverage/lib/components/wallet-connection-modal/wallet-connection-modal.component.ts.html +84 -36
- package/coverage/lib/components/wallet-session-display/index.html +1 -1
- package/coverage/lib/components/wallet-session-display/wallet-session-display.component.ts.html +1 -1
- package/coverage/lib/components/wallet-transaction-status/index.html +1 -1
- package/coverage/lib/components/wallet-transaction-status/wallet-transaction-status.component.ts.html +1 -1
- package/coverage/lib/directives/index.html +1 -1
- package/coverage/lib/directives/wallet-connected.directive.ts.html +1 -1
- package/coverage/lib/directives/wallet-context.directive.ts.html +1 -1
- package/coverage/lib/directives/wallet-events.directive.ts.html +1 -1
- package/coverage/lib/hsuite-wallet.module.ts.html +1 -1
- package/coverage/lib/index.html +1 -1
- package/coverage/lib/models/connection-config.model.ts.html +1 -1
- package/coverage/lib/models/index.html +7 -7
- package/coverage/lib/models/provider-types.ts.html +11 -5
- package/coverage/lib/providers/base-wallet-provider.ts.html +20 -20
- package/coverage/lib/providers/hsuite-native/channel-client.service.ts.html +639 -636
- package/coverage/lib/providers/hsuite-native/index.html +19 -19
- package/coverage/lib/providers/hsuite-native-provider.ts.html +1 -1
- package/coverage/lib/providers/index.html +18 -18
- package/coverage/lib/providers/p2p-native/index.html +22 -22
- package/coverage/lib/providers/p2p-native/p2p-native.provider.ts.html +993 -993
- package/coverage/lib/providers/p2p-native/p2p-session-manager.ts.html +7 -4
- package/coverage/lib/providers/wallet-error-handler.ts.html +1 -1
- package/coverage/lib/providers/walletconnect/core/index.html +65 -65
- package/coverage/lib/providers/walletconnect/core/session-health.ts.html +240 -240
- package/coverage/lib/providers/walletconnect/core/walletconnect-client-manager.ts.html +559 -559
- package/coverage/lib/providers/walletconnect/core/walletconnect-provider.ts.html +1108 -1105
- package/coverage/lib/providers/walletconnect/core/walletconnect-session-store.ts.html +493 -493
- package/coverage/lib/providers/walletconnect/core/walletconnect-signing-orchestrator.ts.html +366 -366
- package/coverage/lib/providers/walletconnect/signers/hedera-signer.ts.html +730 -730
- package/coverage/lib/providers/walletconnect/signers/index.html +43 -43
- package/coverage/lib/providers/walletconnect/signers/signer-factory.ts.html +234 -234
- package/coverage/lib/providers/walletconnect/signers/xrpl-signer.ts.html +650 -650
- package/coverage/lib/services/hsuite-auth.interceptor.ts.html +568 -0
- package/coverage/lib/services/index.html +50 -20
- package/coverage/lib/services/logger.service.ts.html +1 -1
- package/coverage/lib/services/smart-session.service.ts.html +1264 -0
- package/coverage/lib/services/transaction-builders/active-account-source.ts.html +250 -0
- package/coverage/lib/services/transaction-builders/base-transaction-builder.service.ts.html +1 -1
- package/coverage/lib/services/transaction-builders/hedera-amount-utils.ts.html +155 -155
- package/coverage/lib/services/transaction-builders/hedera-transaction-builder.service.ts.html +2156 -2156
- package/coverage/lib/services/transaction-builders/index.html +58 -43
- package/coverage/lib/services/transaction-builders/xrpl-transaction-builder.service.ts.html +1674 -1674
- package/coverage/lib/services/transaction.service.ts.html +4 -4
- package/coverage/lib/services/unified-wallet.service.ts.html +3 -3
- package/coverage/lib/services/wallet-context.service.ts.html +1 -1
- package/coverage/lib/services/wallet-event-bus.service.ts.html +249 -249
- package/coverage/lib/services/wallet-providers.service.ts.html +1 -1
- package/coverage/lib/transports/chrome-extension-transport.ts.html +1 -1
- package/coverage/lib/transports/index.html +1 -1
- package/coverage/lib/utils/index.html +36 -21
- package/coverage/lib/utils/ledger-icons.util.ts.html +254 -161
- package/coverage/lib/utils/ledger-ui-registry.ts.html +676 -0
- package/dist/fesm2022/hsuite-native-connect-angular.mjs +854 -308
- package/dist/fesm2022/hsuite-native-connect-angular.mjs.map +1 -1
- package/dist/index.d.ts +456 -30
- package/package.json +4 -4
- package/src/index.ts +26 -0
- package/src/lib/components/account-selector/account-formatting.service.ts +8 -10
- package/src/lib/components/wallet-account-display/wallet-account-display.component.ts +9 -9
- package/src/lib/components/wallet-connection-modal/wallet-connection-modal.component.ts +34 -18
- package/src/lib/models/provider-types.ts +3 -1
- package/src/lib/models/unified-account.model.ts +4 -1
- package/src/lib/providers/hsuite-native/channel-client.service.ts +1 -0
- package/src/lib/providers/p2p-native/p2p-session-manager.ts +1 -0
- package/src/lib/providers/walletconnect/core/walletconnect-provider.ts +2 -1
- package/src/lib/services/hsuite-auth.interceptor.ts +159 -0
- package/src/lib/services/smart-session.service.ts +378 -0
- package/src/lib/services/transaction-builders/active-account-source.spec.ts +75 -0
- package/src/lib/services/transaction-builders/active-account-source.ts +55 -0
- package/src/lib/services/transaction-builders/hedera-transaction-builder.service.ts +4 -4
- package/src/lib/services/transaction-builders/index.ts +1 -0
- package/src/lib/services/transaction.service.ts +7 -3
- package/src/lib/services/unified-wallet.service.spec.ts +1 -1
- package/src/lib/services/unified-wallet.service.ts +2 -2
- package/src/lib/utils/index.ts +1 -0
- package/src/lib/utils/ledger-icons.util.ts +61 -30
- package/src/lib/utils/ledger-ui-registry.ts +197 -0
package/coverage/lib/components/wallet-connection-modal/wallet-connection-modal.component.ts.html
CHANGED
|
@@ -23,16 +23,16 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">
|
|
26
|
+
<span class="strong">69.17% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>561/811</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">
|
|
33
|
+
<span class="strong">44.44% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>
|
|
35
|
+
<span class='fraction'>20/45</span>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
38
|
|
|
@@ -44,9 +44,9 @@
|
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">
|
|
47
|
+
<span class="strong">69.17% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>561/811</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -858,7 +858,26 @@
|
|
|
858
858
|
<a name='L793'></a><a href='#L793'>793</a>
|
|
859
859
|
<a name='L794'></a><a href='#L794'>794</a>
|
|
860
860
|
<a name='L795'></a><a href='#L795'>795</a>
|
|
861
|
-
<a name='L796'></a><a href='#L796'>796</a
|
|
861
|
+
<a name='L796'></a><a href='#L796'>796</a>
|
|
862
|
+
<a name='L797'></a><a href='#L797'>797</a>
|
|
863
|
+
<a name='L798'></a><a href='#L798'>798</a>
|
|
864
|
+
<a name='L799'></a><a href='#L799'>799</a>
|
|
865
|
+
<a name='L800'></a><a href='#L800'>800</a>
|
|
866
|
+
<a name='L801'></a><a href='#L801'>801</a>
|
|
867
|
+
<a name='L802'></a><a href='#L802'>802</a>
|
|
868
|
+
<a name='L803'></a><a href='#L803'>803</a>
|
|
869
|
+
<a name='L804'></a><a href='#L804'>804</a>
|
|
870
|
+
<a name='L805'></a><a href='#L805'>805</a>
|
|
871
|
+
<a name='L806'></a><a href='#L806'>806</a>
|
|
872
|
+
<a name='L807'></a><a href='#L807'>807</a>
|
|
873
|
+
<a name='L808'></a><a href='#L808'>808</a>
|
|
874
|
+
<a name='L809'></a><a href='#L809'>809</a>
|
|
875
|
+
<a name='L810'></a><a href='#L810'>810</a>
|
|
876
|
+
<a name='L811'></a><a href='#L811'>811</a>
|
|
877
|
+
<a name='L812'></a><a href='#L812'>812</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
|
|
878
|
+
<span class="cline-any cline-yes">1x</span>
|
|
879
|
+
<span class="cline-any cline-yes">1x</span>
|
|
880
|
+
<span class="cline-any cline-yes">1x</span>
|
|
862
881
|
<span class="cline-any cline-yes">1x</span>
|
|
863
882
|
<span class="cline-any cline-yes">1x</span>
|
|
864
883
|
<span class="cline-any cline-yes">1x</span>
|
|
@@ -982,6 +1001,19 @@
|
|
|
982
1001
|
<span class="cline-any cline-yes">1x</span>
|
|
983
1002
|
<span class="cline-any cline-yes">1x</span>
|
|
984
1003
|
<span class="cline-any cline-yes">1x</span>
|
|
1004
|
+
<span class="cline-any cline-yes">1x</span>
|
|
1005
|
+
<span class="cline-any cline-yes">1x</span>
|
|
1006
|
+
<span class="cline-any cline-yes">1x</span>
|
|
1007
|
+
<span class="cline-any cline-yes">1x</span>
|
|
1008
|
+
<span class="cline-any cline-yes">1x</span>
|
|
1009
|
+
<span class="cline-any cline-yes">1x</span>
|
|
1010
|
+
<span class="cline-any cline-yes">1x</span>
|
|
1011
|
+
<span class="cline-any cline-yes">1x</span>
|
|
1012
|
+
<span class="cline-any cline-yes">1x</span>
|
|
1013
|
+
<span class="cline-any cline-yes">1x</span>
|
|
1014
|
+
<span class="cline-any cline-yes">1x</span>
|
|
1015
|
+
<span class="cline-any cline-yes">1x</span>
|
|
1016
|
+
<span class="cline-any cline-yes">1x</span>
|
|
985
1017
|
<span class="cline-any cline-yes">10x</span>
|
|
986
1018
|
<span class="cline-any cline-yes">10x</span>
|
|
987
1019
|
<span class="cline-any cline-yes">10x</span>
|
|
@@ -1110,16 +1142,13 @@
|
|
|
1110
1142
|
<span class="cline-any cline-yes">10x</span>
|
|
1111
1143
|
<span class="cline-any cline-yes">10x</span>
|
|
1112
1144
|
<span class="cline-any cline-yes">10x</span>
|
|
1113
|
-
<span class="cline-any cline-yes">
|
|
1114
|
-
<span class="cline-any cline-yes">
|
|
1115
|
-
<span class="cline-any cline-yes">
|
|
1116
|
-
<span class="cline-any cline-yes">
|
|
1117
|
-
<span class="cline-any cline-yes">
|
|
1118
|
-
<span class="cline-any cline-yes">
|
|
1119
|
-
<span class="cline-any cline-yes">
|
|
1120
|
-
<span class="cline-any cline-yes">10x</span>
|
|
1121
|
-
<span class="cline-any cline-yes">10x</span>
|
|
1122
|
-
<span class="cline-any cline-yes">10x</span>
|
|
1145
|
+
<span class="cline-any cline-yes">20x</span>
|
|
1146
|
+
<span class="cline-any cline-yes">20x</span>
|
|
1147
|
+
<span class="cline-any cline-yes">20x</span>
|
|
1148
|
+
<span class="cline-any cline-yes">20x</span>
|
|
1149
|
+
<span class="cline-any cline-yes">20x</span>
|
|
1150
|
+
<span class="cline-any cline-yes">20x</span>
|
|
1151
|
+
<span class="cline-any cline-yes">20x</span>
|
|
1123
1152
|
<span class="cline-any cline-yes">10x</span>
|
|
1124
1153
|
<span class="cline-any cline-yes">10x</span>
|
|
1125
1154
|
<span class="cline-any cline-yes">10x</span>
|
|
@@ -1306,6 +1335,9 @@
|
|
|
1306
1335
|
<span class="cline-any cline-yes">10x</span>
|
|
1307
1336
|
<span class="cline-any cline-yes">10x</span>
|
|
1308
1337
|
<span class="cline-any cline-yes">10x</span>
|
|
1338
|
+
<span class="cline-any cline-yes">10x</span>
|
|
1339
|
+
<span class="cline-any cline-yes">10x</span>
|
|
1340
|
+
<span class="cline-any cline-yes">10x</span>
|
|
1309
1341
|
<span class="cline-any cline-yes">7x</span>
|
|
1310
1342
|
<span class="cline-any cline-yes">7x</span>
|
|
1311
1343
|
<span class="cline-any cline-yes">7x</span>
|
|
@@ -1688,12 +1720,15 @@ import {
|
|
|
1688
1720
|
inject,
|
|
1689
1721
|
} from '@angular/core';
|
|
1690
1722
|
import { getLogger } from '@hsuite/native-connect-sdk';
|
|
1723
|
+
import type { SupportedLedger } from '@hsuite/native-connect-sdk';
|
|
1691
1724
|
import { IonicModule, ModalController, Platform } from '@ionic/angular';
|
|
1692
1725
|
|
|
1693
1726
|
import type { WalletConnectV2Config } from '../../models/provider-types';
|
|
1694
1727
|
import { DEFAULT_WALLET_URL } from '../../models/provider-types';
|
|
1695
1728
|
import { P2PNativeProvider } from '../../providers/p2p-native/p2p-native.provider';
|
|
1696
1729
|
import { UnifiedWalletService } from '../../services/unified-wallet.service';
|
|
1730
|
+
import { registerLedgerIcons } from '../../utils/ledger-icons.util';
|
|
1731
|
+
import { LedgerUIRegistry } from '../../utils/ledger-ui-registry';
|
|
1697
1732
|
|
|
1698
1733
|
import {
|
|
1699
1734
|
ConnectionMethodStepComponent,
|
|
@@ -1748,12 +1783,25 @@ interface ProtocolOption {
|
|
|
1748
1783
|
* Ledger configuration options
|
|
1749
1784
|
*/
|
|
1750
1785
|
interface LedgerOption {
|
|
1751
|
-
id:
|
|
1786
|
+
id: SupportedLedger;
|
|
1752
1787
|
name: string;
|
|
1753
1788
|
description: string;
|
|
1754
1789
|
icon: string;
|
|
1755
1790
|
}
|
|
1756
1791
|
|
|
1792
|
+
/**
|
|
1793
|
+
* Per-ledger copy for the WalletConnect "Choose Blockchain" step.
|
|
1794
|
+
*
|
|
1795
|
+
* Keyed by {@link SupportedLedger} (the closed set of ledgers the WalletConnect
|
|
1796
|
+
* provider brokers) via `satisfies`, so widening that union forces a description
|
|
1797
|
+
* here. Display name and icon come from {@link LedgerUIRegistry}; this map holds
|
|
1798
|
+
* only the connection-flow copy specific to this surface.
|
|
1799
|
+
*/
|
|
1800
|
+
const LEDGER_DESCRIPTIONS = {
|
|
1801
|
+
hedera: 'Hedera Hashgraph network',
|
|
1802
|
+
xrpl: 'XRP Ledger network',
|
|
1803
|
+
} satisfies Record<SupportedLedger, string>;
|
|
1804
|
+
|
|
1757
1805
|
/**
|
|
1758
1806
|
* Step configuration for dynamic step indicator.
|
|
1759
1807
|
* Defines the total steps and labels based on selected protocol path.
|
|
@@ -1825,7 +1873,7 @@ export class WalletConnectionModalComponent implements OnInit {
|
|
|
1825
1873
|
readonly selectedNetwork = signal<string>('testnet');
|
|
1826
1874
|
readonly selectedProtocol = signal<'hsuite-native' | 'walletconnect' | null>(null);
|
|
1827
1875
|
readonly selectedConnectionMethod = signal<ConnectionMethod | null>(null);
|
|
1828
|
-
readonly selectedLedger = signal<
|
|
1876
|
+
readonly selectedLedger = signal<SupportedLedger | null>(null);
|
|
1829
1877
|
|
|
1830
1878
|
// Loading state
|
|
1831
1879
|
readonly isConnecting = signal<boolean>(false);
|
|
@@ -1902,20 +1950,17 @@ export class WalletConnectionModalComponent implements OnInit {
|
|
|
1902
1950
|
<span class="cstat-no" title="statement not covered" > return options;</span>
|
|
1903
1951
|
});
|
|
1904
1952
|
|
|
1905
|
-
readonly ledgerOptions: LedgerOption[] =
|
|
1906
|
-
|
|
1907
|
-
|
|
1908
|
-
|
|
1909
|
-
|
|
1910
|
-
|
|
1911
|
-
|
|
1912
|
-
|
|
1913
|
-
|
|
1914
|
-
|
|
1915
|
-
|
|
1916
|
-
icon: 'logo-usd', // Placeholder, use actual XRPL icon
|
|
1917
|
-
},
|
|
1918
|
-
];
|
|
1953
|
+
readonly ledgerOptions: LedgerOption[] = (
|
|
1954
|
+
Object.keys(LEDGER_DESCRIPTIONS) as SupportedLedger[]
|
|
1955
|
+
).map((id) => {
|
|
1956
|
+
const ui = LedgerUIRegistry.get(id);
|
|
1957
|
+
return {
|
|
1958
|
+
id,
|
|
1959
|
+
name: ui?.<span class="branch-0 cbranch-no" title="branch not covered" >displayName ?? id,</span>
|
|
1960
|
+
description: LEDGER_DESCRIPTIONS[id],
|
|
1961
|
+
icon: ui?.<span class="branch-0 cbranch-no" title="branch not covered" >iconName ?? '',</span>
|
|
1962
|
+
};
|
|
1963
|
+
});
|
|
1919
1964
|
|
|
1920
1965
|
/**
|
|
1921
1966
|
* Connection method options for HSuite Native.
|
|
@@ -2090,6 +2135,9 @@ export class WalletConnectionModalComponent implements OnInit {
|
|
|
2090
2135
|
this.p2pNativeProvider.onPeerConnected(() => {
|
|
2091
2136
|
<span class="cstat-no" title="statement not covered" > this.onMobileConnected();</span>
|
|
2092
2137
|
});
|
|
2138
|
+
|
|
2139
|
+
// Register the shared ledger brand logos so <ion-icon> can resolve them by name.
|
|
2140
|
+
registerLedgerIcons();
|
|
2093
2141
|
}
|
|
2094
2142
|
|
|
2095
2143
|
/**
|
|
@@ -2173,7 +2221,7 @@ export class WalletConnectionModalComponent implements OnInit {
|
|
|
2173
2221
|
* Select a ledger option (internal, use selectLedgerAndConnect for UI)
|
|
2174
2222
|
* @param ledgerId
|
|
2175
2223
|
*/
|
|
2176
|
-
<span class="fstat-no" title="function not covered" > selectLedger(ledgerId:
|
|
2224
|
+
<span class="fstat-no" title="function not covered" > selectLedger(ledgerId: SupportedLedger): void {</span>
|
|
2177
2225
|
<span class="cstat-no" title="statement not covered" > this.selectedLedger.set(ledgerId);</span>
|
|
2178
2226
|
<span class="cstat-no" title="statement not covered" > }</span>
|
|
2179
2227
|
|
|
@@ -2182,7 +2230,7 @@ export class WalletConnectionModalComponent implements OnInit {
|
|
|
2182
2230
|
* This enables direct selection behavior for WalletConnect ledger step.
|
|
2183
2231
|
* @param ledgerId - The ledger ID to select ('hedera' or 'xrpl')
|
|
2184
2232
|
*/
|
|
2185
|
-
<span class="fstat-no" title="function not covered" > selectLedgerAndConnect(ledgerId:
|
|
2233
|
+
<span class="fstat-no" title="function not covered" > selectLedgerAndConnect(ledgerId: SupportedLedger): void {</span>
|
|
2186
2234
|
<span class="cstat-no" title="statement not covered" > this.selectedLedger.set(ledgerId);</span>
|
|
2187
2235
|
<span class="cstat-no" title="statement not covered" > // Auto-connect with the selected ledger</span>
|
|
2188
2236
|
<span class="cstat-no" title="statement not covered" > void this.connect();</span>
|
|
@@ -2455,7 +2503,7 @@ export class WalletConnectionModalComponent implements OnInit {
|
|
|
2455
2503
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
2456
2504
|
Code coverage generated by
|
|
2457
2505
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
2458
|
-
at 2026-06-
|
|
2506
|
+
at 2026-06-27T21:00:37.209Z
|
|
2459
2507
|
</div>
|
|
2460
2508
|
<script src="../../../prettify.js"></script>
|
|
2461
2509
|
<script>
|
|
@@ -101,7 +101,7 @@
|
|
|
101
101
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
102
102
|
Code coverage generated by
|
|
103
103
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
104
|
-
at 2026-06-
|
|
104
|
+
at 2026-06-27T21:00:37.209Z
|
|
105
105
|
</div>
|
|
106
106
|
<script src="../../../prettify.js"></script>
|
|
107
107
|
<script>
|
package/coverage/lib/components/wallet-session-display/wallet-session-display.component.ts.html
CHANGED
|
@@ -661,7 +661,7 @@
|
|
|
661
661
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
662
662
|
Code coverage generated by
|
|
663
663
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
664
|
-
at 2026-06-
|
|
664
|
+
at 2026-06-27T21:00:37.209Z
|
|
665
665
|
</div>
|
|
666
666
|
<script src="../../../prettify.js"></script>
|
|
667
667
|
<script>
|
|
@@ -101,7 +101,7 @@
|
|
|
101
101
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
102
102
|
Code coverage generated by
|
|
103
103
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
104
|
-
at 2026-06-
|
|
104
|
+
at 2026-06-27T21:00:37.209Z
|
|
105
105
|
</div>
|
|
106
106
|
<script src="../../../prettify.js"></script>
|
|
107
107
|
<script>
|
|
@@ -688,7 +688,7 @@
|
|
|
688
688
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
689
689
|
Code coverage generated by
|
|
690
690
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
691
|
-
at 2026-06-
|
|
691
|
+
at 2026-06-27T21:00:37.209Z
|
|
692
692
|
</div>
|
|
693
693
|
<script src="../../../prettify.js"></script>
|
|
694
694
|
<script>
|
|
@@ -131,7 +131,7 @@
|
|
|
131
131
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
132
132
|
Code coverage generated by
|
|
133
133
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
134
|
-
at 2026-06-
|
|
134
|
+
at 2026-06-27T21:00:37.209Z
|
|
135
135
|
</div>
|
|
136
136
|
<script src="../../prettify.js"></script>
|
|
137
137
|
<script>
|
|
@@ -655,7 +655,7 @@
|
|
|
655
655
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
656
656
|
Code coverage generated by
|
|
657
657
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
658
|
-
at 2026-06-
|
|
658
|
+
at 2026-06-27T21:00:37.209Z
|
|
659
659
|
</div>
|
|
660
660
|
<script src="../../prettify.js"></script>
|
|
661
661
|
<script>
|
|
@@ -532,7 +532,7 @@
|
|
|
532
532
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
533
533
|
Code coverage generated by
|
|
534
534
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
535
|
-
at 2026-06-
|
|
535
|
+
at 2026-06-27T21:00:37.209Z
|
|
536
536
|
</div>
|
|
537
537
|
<script src="../../prettify.js"></script>
|
|
538
538
|
<script>
|
|
@@ -766,7 +766,7 @@
|
|
|
766
766
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
767
767
|
Code coverage generated by
|
|
768
768
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
769
|
-
at 2026-06-
|
|
769
|
+
at 2026-06-27T21:00:37.209Z
|
|
770
770
|
</div>
|
|
771
771
|
<script src="../../prettify.js"></script>
|
|
772
772
|
<script>
|
|
@@ -700,7 +700,7 @@
|
|
|
700
700
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
701
701
|
Code coverage generated by
|
|
702
702
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
703
|
-
at 2026-06-
|
|
703
|
+
at 2026-06-27T21:00:37.209Z
|
|
704
704
|
</div>
|
|
705
705
|
<script src="../prettify.js"></script>
|
|
706
706
|
<script>
|
package/coverage/lib/index.html
CHANGED
|
@@ -101,7 +101,7 @@
|
|
|
101
101
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
102
102
|
Code coverage generated by
|
|
103
103
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
104
|
-
at 2026-06-
|
|
104
|
+
at 2026-06-27T21:00:37.209Z
|
|
105
105
|
</div>
|
|
106
106
|
<script src="../prettify.js"></script>
|
|
107
107
|
<script>
|
|
@@ -265,7 +265,7 @@
|
|
|
265
265
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
266
266
|
Code coverage generated by
|
|
267
267
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
268
|
-
at 2026-06-
|
|
268
|
+
at 2026-06-27T21:00:37.209Z
|
|
269
269
|
</div>
|
|
270
270
|
<script src="../../prettify.js"></script>
|
|
271
271
|
<script>
|
|
@@ -23,9 +23,9 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">71.
|
|
26
|
+
<span class="strong">71.86% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>166/231</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
@@ -44,9 +44,9 @@
|
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">71.
|
|
47
|
+
<span class="strong">71.86% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>166/231</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -99,13 +99,13 @@
|
|
|
99
99
|
<div class="chart"><div class="cover-fill cover-full" style="width: 100%"></div><div class="cover-empty" style="width: 0%"></div></div>
|
|
100
100
|
</td>
|
|
101
101
|
<td data-value="100" class="pct high">100%</td>
|
|
102
|
-
<td data-value="
|
|
102
|
+
<td data-value="166" class="abs high">166/166</td>
|
|
103
103
|
<td data-value="100" class="pct high">100%</td>
|
|
104
104
|
<td data-value="0" class="abs high">0/0</td>
|
|
105
105
|
<td data-value="100" class="pct high">100%</td>
|
|
106
106
|
<td data-value="0" class="abs high">0/0</td>
|
|
107
107
|
<td data-value="100" class="pct high">100%</td>
|
|
108
|
-
<td data-value="
|
|
108
|
+
<td data-value="166" class="abs high">166/166</td>
|
|
109
109
|
</tr>
|
|
110
110
|
|
|
111
111
|
</tbody>
|
|
@@ -116,7 +116,7 @@
|
|
|
116
116
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
117
117
|
Code coverage generated by
|
|
118
118
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
119
|
-
at 2026-06-
|
|
119
|
+
at 2026-06-27T21:00:37.209Z
|
|
120
120
|
</div>
|
|
121
121
|
<script src="../../prettify.js"></script>
|
|
122
122
|
<script>
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
26
|
<span class="strong">100% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>166/166</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
47
|
<span class="strong">100% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>166/166</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -227,7 +227,11 @@
|
|
|
227
227
|
<a name='L162'></a><a href='#L162'>162</a>
|
|
228
228
|
<a name='L163'></a><a href='#L163'>163</a>
|
|
229
229
|
<a name='L164'></a><a href='#L164'>164</a>
|
|
230
|
-
<a name='L165'></a><a href='#L165'>165</a
|
|
230
|
+
<a name='L165'></a><a href='#L165'>165</a>
|
|
231
|
+
<a name='L166'></a><a href='#L166'>166</a>
|
|
232
|
+
<a name='L167'></a><a href='#L167'>167</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
|
|
233
|
+
<span class="cline-any cline-yes">1x</span>
|
|
234
|
+
<span class="cline-any cline-yes">1x</span>
|
|
231
235
|
<span class="cline-any cline-yes">1x</span>
|
|
232
236
|
<span class="cline-any cline-yes">1x</span>
|
|
233
237
|
<span class="cline-any cline-yes">1x</span>
|
|
@@ -413,6 +417,8 @@
|
|
|
413
417
|
* ```
|
|
414
418
|
*/
|
|
415
419
|
|
|
420
|
+
import type { SupportedLedger } from '@hsuite/native-connect-sdk';
|
|
421
|
+
|
|
416
422
|
/**
|
|
417
423
|
* Supported wallet connection protocol types.
|
|
418
424
|
*
|
|
@@ -522,7 +528,7 @@ export interface HsuiteNativeConfig {
|
|
|
522
528
|
export interface WalletConnectV2Config {
|
|
523
529
|
type: 'walletconnect-v2';
|
|
524
530
|
projectId: string; // WalletConnect Cloud project ID - REQUIRED
|
|
525
|
-
ledgerId:
|
|
531
|
+
ledgerId: SupportedLedger; // Which ledger to connect to
|
|
526
532
|
networkId: string; // e.g., 'hedera:testnet' or 'xrpl:testnet'
|
|
527
533
|
appName?: string;
|
|
528
534
|
appDescription?: string;
|
|
@@ -562,7 +568,7 @@ export type ConnectionConfig = HsuiteNativeConfig | WalletConnectV2Config | Mobi
|
|
|
562
568
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
563
569
|
Code coverage generated by
|
|
564
570
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
565
|
-
at 2026-06-
|
|
571
|
+
at 2026-06-27T21:00:37.209Z
|
|
566
572
|
</div>
|
|
567
573
|
<script src="../../prettify.js"></script>
|
|
568
574
|
<script>
|
|
@@ -23,30 +23,30 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">
|
|
26
|
+
<span class="strong">100% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>351/351</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
33
|
<span class="strong">100% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>
|
|
35
|
+
<span class='fraction'>4/4</span>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
<div class='fl pad1y space-right2'>
|
|
40
|
-
<span class="strong">
|
|
40
|
+
<span class="strong">100% </span>
|
|
41
41
|
<span class="quiet">Functions</span>
|
|
42
|
-
<span class='fraction'>
|
|
42
|
+
<span class='fraction'>2/2</span>
|
|
43
43
|
</div>
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">
|
|
47
|
+
<span class="strong">100% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>351/351</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -749,9 +749,9 @@
|
|
|
749
749
|
<span class="cline-any cline-yes">1x</span>
|
|
750
750
|
<span class="cline-any cline-yes">1x</span>
|
|
751
751
|
<span class="cline-any cline-yes">1x</span>
|
|
752
|
-
<span class="cline-any cline-
|
|
753
|
-
<span class="cline-any cline-
|
|
754
|
-
<span class="cline-any cline-
|
|
752
|
+
<span class="cline-any cline-yes">2x</span>
|
|
753
|
+
<span class="cline-any cline-yes">2x</span>
|
|
754
|
+
<span class="cline-any cline-yes">2x</span>
|
|
755
755
|
<span class="cline-any cline-yes">1x</span>
|
|
756
756
|
<span class="cline-any cline-yes">1x</span>
|
|
757
757
|
<span class="cline-any cline-yes">1x</span>
|
|
@@ -762,8 +762,8 @@
|
|
|
762
762
|
<span class="cline-any cline-yes">1x</span>
|
|
763
763
|
<span class="cline-any cline-yes">1x</span>
|
|
764
764
|
<span class="cline-any cline-yes">1x</span>
|
|
765
|
-
<span class="cline-any cline-
|
|
766
|
-
<span class="cline-any cline-
|
|
765
|
+
<span class="cline-any cline-yes">3x</span>
|
|
766
|
+
<span class="cline-any cline-yes">3x</span>
|
|
767
767
|
<span class="cline-any cline-yes">1x</span>
|
|
768
768
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">/**
|
|
769
769
|
* @file Abstract base class for wallet connection providers.
|
|
@@ -1099,10 +1099,10 @@ export abstract class BaseWalletProvider {
|
|
|
1099
1099
|
*
|
|
1100
1100
|
* @returns The first connected account, or null if none
|
|
1101
1101
|
*/
|
|
1102
|
-
|
|
1103
|
-
|
|
1104
|
-
|
|
1105
|
-
|
|
1102
|
+
getPrimaryAccount(): UnifiedAccount | null {
|
|
1103
|
+
const accts = this.accounts();
|
|
1104
|
+
return accts.length > 0 ? accts[0] : null;
|
|
1105
|
+
}
|
|
1106
1106
|
|
|
1107
1107
|
/**
|
|
1108
1108
|
* Checks if the provider is currently connected.
|
|
@@ -1112,9 +1112,9 @@ export abstract class BaseWalletProvider {
|
|
|
1112
1112
|
*
|
|
1113
1113
|
* @returns true if provider is connected, false otherwise
|
|
1114
1114
|
*/
|
|
1115
|
-
|
|
1116
|
-
|
|
1117
|
-
|
|
1115
|
+
isConnected(): boolean {
|
|
1116
|
+
return this.status() === 'connected';
|
|
1117
|
+
}
|
|
1118
1118
|
}
|
|
1119
1119
|
</pre></td></tr></table></pre>
|
|
1120
1120
|
|
|
@@ -1123,7 +1123,7 @@ export abstract class BaseWalletProvider {
|
|
|
1123
1123
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
1124
1124
|
Code coverage generated by
|
|
1125
1125
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
1126
|
-
at 2026-06-
|
|
1126
|
+
at 2026-06-27T21:00:37.209Z
|
|
1127
1127
|
</div>
|
|
1128
1128
|
<script src="../../prettify.js"></script>
|
|
1129
1129
|
<script>
|