@reown/appkit 1.7.0-rc.4.0 → 1.7.0
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/dist/esm/exports/constants.js +1 -1
- package/dist/esm/exports/constants.js.map +1 -1
- package/dist/esm/package.json +1 -1
- package/dist/esm/tsconfig.build.tsbuildinfo +1 -1
- package/dist/types/exports/constants.d.ts +1 -1
- package/dist/types/src/client/appkit-base-client.d.ts +1 -1
- package/package.json +9 -9
- package/dist/esm/exports/basic-react.js +0 -39
- package/dist/esm/exports/basic-react.js.map +0 -1
- package/dist/esm/exports/basic-vue.js +0 -45
- package/dist/esm/exports/basic-vue.js.map +0 -1
- package/dist/esm/exports/basic.js +0 -11
- package/dist/esm/exports/basic.js.map +0 -1
- package/dist/esm/exports/react-basic.js +0 -39
- package/dist/esm/exports/react-basic.js.map +0 -1
- package/dist/esm/exports/vue copy.js +0 -44
- package/dist/esm/exports/vue copy.js.map +0 -1
- package/dist/esm/exports/vue-basic.js +0 -45
- package/dist/esm/exports/vue-basic.js.map +0 -1
- package/dist/esm/src/client/appkit-basic.js +0 -45
- package/dist/esm/src/client/appkit-basic.js.map +0 -1
- package/dist/esm/src/client/core.js +0 -1346
- package/dist/esm/src/client/core.js.map +0 -1
- package/dist/esm/src/client.js +0 -1620
- package/dist/esm/src/client.js.map +0 -1
- package/dist/esm/tests/client/adapter-management.test.js +0 -85
- package/dist/esm/tests/client/adapter-management.test.js.map +0 -1
- package/dist/esm/tests/client/appkit-basic.test.js +0 -88
- package/dist/esm/tests/client/appkit-basic.test.js.map +0 -1
- package/dist/esm/tests/client/balance.test.js +0 -56
- package/dist/esm/tests/client/balance.test.js.map +0 -1
- package/dist/esm/tests/client/connection.test.js +0 -140
- package/dist/esm/tests/client/connection.test.js.map +0 -1
- package/dist/esm/tests/client/debug-mode.test.js +0 -64
- package/dist/esm/tests/client/debug-mode.test.js.map +0 -1
- package/dist/esm/tests/client/initialization.test.js +0 -121
- package/dist/esm/tests/client/initialization.test.js.map +0 -1
- package/dist/esm/tests/client/listeners.test.js +0 -87
- package/dist/esm/tests/client/listeners.test.js.map +0 -1
- package/dist/esm/tests/client/public-methods.test.js +0 -768
- package/dist/esm/tests/client/public-methods.test.js.map +0 -1
- package/dist/esm/tests/client/universal-adapter.test.js +0 -46
- package/dist/esm/tests/client/universal-adapter.test.js.map +0 -1
- package/dist/esm/tests/client/walletconnect-events.test.js +0 -82
- package/dist/esm/tests/client/walletconnect-events.test.js.map +0 -1
- package/dist/esm/tests/connectors/WalletConnectConnector.test.js +0 -63
- package/dist/esm/tests/connectors/WalletConnectConnector.test.js.map +0 -1
- package/dist/esm/tests/mocks/Account.js +0 -13
- package/dist/esm/tests/mocks/Account.js.map +0 -1
- package/dist/esm/tests/mocks/Adapter.js +0 -98
- package/dist/esm/tests/mocks/Adapter.js.map +0 -1
- package/dist/esm/tests/mocks/AppKit.js +0 -24
- package/dist/esm/tests/mocks/AppKit.js.map +0 -1
- package/dist/esm/tests/mocks/LocalStorage.js +0 -37
- package/dist/esm/tests/mocks/LocalStorage.js.map +0 -1
- package/dist/esm/tests/mocks/Networks.js +0 -17
- package/dist/esm/tests/mocks/Networks.js.map +0 -1
- package/dist/esm/tests/mocks/Options.js +0 -17
- package/dist/esm/tests/mocks/Options.js.map +0 -1
- package/dist/esm/tests/mocks/Providers.js +0 -46
- package/dist/esm/tests/mocks/Providers.js.map +0 -1
- package/dist/esm/tests/mocks/UniversalProvider.js +0 -139
- package/dist/esm/tests/mocks/UniversalProvider.js.map +0 -1
- package/dist/esm/tests/siwe.test.js +0 -261
- package/dist/esm/tests/siwe.test.js.map +0 -1
- package/dist/esm/tests/test-utils.js +0 -46
- package/dist/esm/tests/test-utils.js.map +0 -1
- package/dist/esm/tests/universal-adapter.test.js +0 -246
- package/dist/esm/tests/universal-adapter.test.js.map +0 -1
- package/dist/esm/tests/utils/HelpersUtil.test.js +0 -229
- package/dist/esm/tests/utils/HelpersUtil.test.js.map +0 -1
- package/dist/esm/tsconfig.tsbuildinfo +0 -1
- package/dist/types/exports/basic-react.d.ts +0 -16
- package/dist/types/exports/basic-vue.d.ts +0 -15
- package/dist/types/exports/basic.d.ts +0 -8
- package/dist/types/exports/react-basic.d.ts +0 -16
- package/dist/types/exports/vue copy.d.ts +0 -15
- package/dist/types/exports/vue-basic.d.ts +0 -15
- package/dist/types/src/client/appkit-basic.d.ts +0 -32
- package/dist/types/src/client/core.d.ts +0 -224
- package/dist/types/src/client.d.ts +0 -202
- package/dist/types/tests/client/adapter-management.test.d.ts +0 -1
- package/dist/types/tests/client/appkit-basic.test.d.ts +0 -1
- package/dist/types/tests/client/balance.test.d.ts +0 -1
- package/dist/types/tests/client/connection.test.d.ts +0 -1
- package/dist/types/tests/client/debug-mode.test.d.ts +0 -1
- package/dist/types/tests/client/initialization.test.d.ts +0 -1
- package/dist/types/tests/client/listeners.test.d.ts +0 -1
- package/dist/types/tests/client/public-methods.test.d.ts +0 -1
- package/dist/types/tests/client/universal-adapter.test.d.ts +0 -1
- package/dist/types/tests/client/walletconnect-events.test.d.ts +0 -1
- package/dist/types/tests/connectors/WalletConnectConnector.test.d.ts +0 -1
- package/dist/types/tests/mocks/Account.d.ts +0 -12
- package/dist/types/tests/mocks/Adapter.d.ts +0 -8
- package/dist/types/tests/mocks/AppKit.d.ts +0 -3
- package/dist/types/tests/mocks/LocalStorage.d.ts +0 -12
- package/dist/types/tests/mocks/Networks.d.ts +0 -4
- package/dist/types/tests/mocks/Options.d.ts +0 -6
- package/dist/types/tests/mocks/Providers.d.ts +0 -42
- package/dist/types/tests/mocks/UniversalProvider.d.ts +0 -3
- package/dist/types/tests/siwe.test.d.ts +0 -1
- package/dist/types/tests/test-utils.d.ts +0 -5
- package/dist/types/tests/universal-adapter.test.d.ts +0 -1
- package/dist/types/tests/utils/HelpersUtil.test.d.ts +0 -1
|
@@ -1,121 +0,0 @@
|
|
|
1
|
-
import { beforeEach, describe, expect, it, vi } from 'vitest';
|
|
2
|
-
import {} from '@reown/appkit-common';
|
|
3
|
-
import { AlertController, ChainController, EventsController, OptionsController, StorageUtil } from '@reown/appkit-controllers';
|
|
4
|
-
import { ErrorUtil } from '@reown/appkit-utils';
|
|
5
|
-
import { AppKit } from '../../src/client/appkit.js';
|
|
6
|
-
import { mainnet, polygon, sepolia, solana } from '../mocks/Networks';
|
|
7
|
-
import { mockOptions } from '../mocks/Options';
|
|
8
|
-
import { mockBlockchainApiController, mockStorageUtil, mockWindowAndDocument } from '../test-utils.js';
|
|
9
|
-
describe('Base', () => {
|
|
10
|
-
beforeEach(() => {
|
|
11
|
-
mockWindowAndDocument();
|
|
12
|
-
mockStorageUtil();
|
|
13
|
-
mockBlockchainApiController();
|
|
14
|
-
});
|
|
15
|
-
describe('Base Initialization', () => {
|
|
16
|
-
it('should initialize controllers', async () => {
|
|
17
|
-
const sendEvent = vi.spyOn(EventsController, 'sendEvent');
|
|
18
|
-
const initialize = vi.spyOn(ChainController, 'initialize');
|
|
19
|
-
new AppKit(mockOptions);
|
|
20
|
-
const options = { ...mockOptions };
|
|
21
|
-
delete options.adapters;
|
|
22
|
-
expect(sendEvent).toHaveBeenCalled();
|
|
23
|
-
expect(sendEvent).toHaveBeenCalledWith({
|
|
24
|
-
type: 'track',
|
|
25
|
-
event: 'INITIALIZE',
|
|
26
|
-
properties: {
|
|
27
|
-
...options,
|
|
28
|
-
networks: options.networks.map((n) => n.id),
|
|
29
|
-
siweConfig: {
|
|
30
|
-
options: options.siweConfig?.options || {}
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
});
|
|
34
|
-
expect(initialize).toHaveBeenCalledOnce();
|
|
35
|
-
expect(initialize).toHaveBeenCalledWith(mockOptions.adapters, [mainnet, sepolia, solana], {
|
|
36
|
-
connectionControllerClient: expect.any(Object),
|
|
37
|
-
networkControllerClient: expect.any(Object)
|
|
38
|
-
});
|
|
39
|
-
});
|
|
40
|
-
it('should set EIP6963 enabled by default', () => {
|
|
41
|
-
const setEIP6963Enabled = vi.spyOn(OptionsController, 'setEIP6963Enabled');
|
|
42
|
-
new AppKit(mockOptions);
|
|
43
|
-
expect(setEIP6963Enabled).toHaveBeenCalledWith(true);
|
|
44
|
-
});
|
|
45
|
-
it('should set EIP6963 disabled when option is disabled in config', () => {
|
|
46
|
-
const setEIP6963Enabled = vi.spyOn(OptionsController, 'setEIP6963Enabled');
|
|
47
|
-
new AppKit({
|
|
48
|
-
...mockOptions,
|
|
49
|
-
enableEIP6963: false
|
|
50
|
-
});
|
|
51
|
-
expect(setEIP6963Enabled).toHaveBeenCalledWith(false);
|
|
52
|
-
});
|
|
53
|
-
it('should set partially defaultAccountType', () => {
|
|
54
|
-
const setDefaultAccountTypes = vi.spyOn(OptionsController, 'setDefaultAccountTypes');
|
|
55
|
-
new AppKit({
|
|
56
|
-
...mockOptions,
|
|
57
|
-
defaultAccountTypes: {
|
|
58
|
-
eip155: 'eoa',
|
|
59
|
-
bip122: 'ordinal'
|
|
60
|
-
}
|
|
61
|
-
});
|
|
62
|
-
expect(setDefaultAccountTypes).toHaveBeenCalledWith({
|
|
63
|
-
eip155: 'eoa',
|
|
64
|
-
bip122: 'ordinal'
|
|
65
|
-
});
|
|
66
|
-
});
|
|
67
|
-
it('should use default network prop when defaultNetwork prop is not included in the networks array', () => {
|
|
68
|
-
vi.spyOn(StorageUtil, 'getActiveCaipNetworkId').mockReturnValueOnce(undefined);
|
|
69
|
-
const setActiveCaipNetwork = vi.spyOn(ChainController, 'setActiveCaipNetwork');
|
|
70
|
-
new AppKit({
|
|
71
|
-
...mockOptions,
|
|
72
|
-
defaultNetwork: polygon
|
|
73
|
-
});
|
|
74
|
-
expect(setActiveCaipNetwork).toHaveBeenCalledWith(mainnet);
|
|
75
|
-
});
|
|
76
|
-
it('should use default network prop when there is no network in storage', () => {
|
|
77
|
-
vi.spyOn(StorageUtil, 'getActiveCaipNetworkId').mockReturnValueOnce(undefined);
|
|
78
|
-
const setActiveCaipNetwork = vi.spyOn(ChainController, 'setActiveCaipNetwork');
|
|
79
|
-
new AppKit({
|
|
80
|
-
...mockOptions,
|
|
81
|
-
defaultNetwork: sepolia
|
|
82
|
-
});
|
|
83
|
-
expect(setActiveCaipNetwork).toHaveBeenCalledWith(sepolia);
|
|
84
|
-
});
|
|
85
|
-
it('should not use default network prop when there is a network in storage', () => {
|
|
86
|
-
vi.spyOn(StorageUtil, 'getActiveCaipNetworkId').mockReturnValueOnce(sepolia.caipNetworkId);
|
|
87
|
-
const setActiveCaipNetwork = vi.spyOn(ChainController, 'setActiveCaipNetwork');
|
|
88
|
-
new AppKit({
|
|
89
|
-
...mockOptions,
|
|
90
|
-
defaultNetwork: polygon
|
|
91
|
-
});
|
|
92
|
-
expect(setActiveCaipNetwork).toHaveBeenCalledWith(sepolia);
|
|
93
|
-
});
|
|
94
|
-
});
|
|
95
|
-
describe('Alert Errors', () => {
|
|
96
|
-
it('should handle alert errors based on error messages', () => {
|
|
97
|
-
const open = vi.spyOn(AlertController, 'open');
|
|
98
|
-
const errors = [
|
|
99
|
-
{
|
|
100
|
-
alert: ErrorUtil.ALERT_ERRORS.INVALID_APP_CONFIGURATION,
|
|
101
|
-
message: 'Error: WebSocket connection closed abnormally with code: 3000 (Unauthorized: origin not allowed)'
|
|
102
|
-
},
|
|
103
|
-
{
|
|
104
|
-
alert: ErrorUtil.ALERT_ERRORS.JWT_TOKEN_NOT_VALID,
|
|
105
|
-
message: 'WebSocket connection closed abnormally with code: 3000 (JWT validation error: JWT Token is not yet valid:)'
|
|
106
|
-
},
|
|
107
|
-
{
|
|
108
|
-
alert: ErrorUtil.ALERT_ERRORS.INVALID_PROJECT_ID,
|
|
109
|
-
message: 'Uncaught Error: WebSocket connection closed abnormally with code: 3000 (Unauthorized: invalid key)'
|
|
110
|
-
}
|
|
111
|
-
];
|
|
112
|
-
const appKit = new AppKit(mockOptions);
|
|
113
|
-
for (const { alert, message } of errors) {
|
|
114
|
-
// @ts-expect-error
|
|
115
|
-
appKit.handleAlertError(new Error(message));
|
|
116
|
-
expect(open).toHaveBeenCalledWith(alert, 'error');
|
|
117
|
-
}
|
|
118
|
-
});
|
|
119
|
-
});
|
|
120
|
-
});
|
|
121
|
-
//# sourceMappingURL=initialization.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"initialization.test.js","sourceRoot":"","sources":["../../../../tests/client/initialization.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
import { beforeEach, describe, expect, it, vi } from 'vitest';
|
|
2
|
-
import { AccountController, BlockchainApiController, ChainController } from '@reown/appkit-controllers';
|
|
3
|
-
import { AppKit } from '../../src/client/appkit.js';
|
|
4
|
-
import { emitter, mockEvmAdapter, solanaEmitter } from '../mocks/Adapter';
|
|
5
|
-
import { mainnet, solana, unsupportedNetwork } from '../mocks/Networks';
|
|
6
|
-
import { mockOptions } from '../mocks/Options';
|
|
7
|
-
import { mockBlockchainApiController, mockStorageUtil, mockWindowAndDocument } from '../test-utils.js';
|
|
8
|
-
describe('Listeners', () => {
|
|
9
|
-
beforeEach(() => {
|
|
10
|
-
vi.clearAllMocks();
|
|
11
|
-
emitter.clearAll();
|
|
12
|
-
solanaEmitter.clearAll();
|
|
13
|
-
mockWindowAndDocument();
|
|
14
|
-
mockStorageUtil();
|
|
15
|
-
mockBlockchainApiController();
|
|
16
|
-
});
|
|
17
|
-
it('should set caip address, profile name and profile image on accountChanged event', async () => {
|
|
18
|
-
const identity = { name: 'vitalik.eth', avatar: null };
|
|
19
|
-
const setCaipAddressSpy = vi.spyOn(AccountController, 'setCaipAddress');
|
|
20
|
-
const fetchIdentitySpy = vi
|
|
21
|
-
.spyOn(BlockchainApiController, 'fetchIdentity')
|
|
22
|
-
.mockResolvedValueOnce(identity);
|
|
23
|
-
const mockAccount = {
|
|
24
|
-
address: '0x123',
|
|
25
|
-
chainId: mainnet.id,
|
|
26
|
-
chainNamespace: mainnet.chainNamespace
|
|
27
|
-
};
|
|
28
|
-
const appKit = new AppKit(mockOptions);
|
|
29
|
-
const setProfileNameSpy = vi.spyOn(appKit, 'setProfileName').mockImplementation(() => { });
|
|
30
|
-
const setProfileImageSpy = vi.spyOn(appKit, 'setProfileImage').mockImplementation(() => { });
|
|
31
|
-
await appKit['syncAccount'](mockAccount);
|
|
32
|
-
// @ts-expect-error private event
|
|
33
|
-
mockEvmAdapter.emit('accountChanged', mockAccount);
|
|
34
|
-
expect(setCaipAddressSpy).toHaveBeenCalledWith(`${mockAccount.chainNamespace}:${mockAccount.chainId}:${mockAccount.address}`, 'eip155');
|
|
35
|
-
expect(fetchIdentitySpy).toHaveBeenCalledWith({
|
|
36
|
-
address: mockAccount.address,
|
|
37
|
-
caipNetworkId: `${mockAccount.chainNamespace}:${mockAccount.chainId}`
|
|
38
|
-
});
|
|
39
|
-
expect(setProfileNameSpy).toHaveBeenCalledWith(identity.name, 'eip155');
|
|
40
|
-
expect(setProfileImageSpy).toHaveBeenCalledWith(identity.avatar, 'eip155');
|
|
41
|
-
});
|
|
42
|
-
it('should call syncAccountInfo when namespace is different than active namespace', async () => {
|
|
43
|
-
vi.spyOn(AccountController, 'state', 'get').mockReturnValue({
|
|
44
|
-
...AccountController.state,
|
|
45
|
-
address: '0x1234'
|
|
46
|
-
});
|
|
47
|
-
const appKit = new AppKit({ ...mockOptions, defaultNetwork: solana });
|
|
48
|
-
const setCaipAddressSpy = vi.spyOn(appKit, 'setCaipAddress');
|
|
49
|
-
const mockAccount = {
|
|
50
|
-
address: '0x123',
|
|
51
|
-
chainId: mainnet.id,
|
|
52
|
-
chainNamespace: mainnet.chainNamespace
|
|
53
|
-
};
|
|
54
|
-
emitter.emit('accountChanged', mockAccount);
|
|
55
|
-
expect(setCaipAddressSpy).toHaveBeenCalledWith(`${mockAccount.chainNamespace}:${mockAccount.chainId}:${mockAccount.address}`, 'eip155');
|
|
56
|
-
});
|
|
57
|
-
it('should reset profile info if switched namespace is not EVM', async () => {
|
|
58
|
-
const appKit = new AppKit({ ...mockOptions, defaultNetwork: mainnet });
|
|
59
|
-
const setProfileNameSpy = vi.spyOn(appKit, 'setProfileName');
|
|
60
|
-
const setProfileImageSpy = vi.spyOn(appKit, 'setProfileImage');
|
|
61
|
-
const mockAccount = {
|
|
62
|
-
address: 'C3k5AvYqoXjsfrkXdFBkUhqHHApeC8amP7y85LkLHL5X',
|
|
63
|
-
chainId: solana.id,
|
|
64
|
-
chainNamespace: solana.chainNamespace
|
|
65
|
-
};
|
|
66
|
-
solanaEmitter.emit('accountChanged', mockAccount);
|
|
67
|
-
expect(setProfileNameSpy).toHaveBeenCalledWith(null, solana.chainNamespace);
|
|
68
|
-
expect(setProfileImageSpy).toHaveBeenCalledWith(null, solana.chainNamespace);
|
|
69
|
-
});
|
|
70
|
-
it('should show unsupported chain UI when network is unsupported and allowUnsupportedChain is false', async () => {
|
|
71
|
-
const showUnsupportedChainUISpy = vi.spyOn(ChainController, 'showUnsupportedChainUI');
|
|
72
|
-
const appKit = new AppKit({
|
|
73
|
-
...mockOptions,
|
|
74
|
-
allowUnsupportedChain: false,
|
|
75
|
-
features: { email: false, socials: [] }
|
|
76
|
-
});
|
|
77
|
-
ChainController.state.activeChain = mainnet.chainNamespace;
|
|
78
|
-
ChainController.state.activeCaipNetwork = unsupportedNetwork;
|
|
79
|
-
await appKit['syncAccount']({
|
|
80
|
-
address: '0x123',
|
|
81
|
-
chainId: unsupportedNetwork.id,
|
|
82
|
-
chainNamespace: unsupportedNetwork.chainNamespace
|
|
83
|
-
});
|
|
84
|
-
expect(showUnsupportedChainUISpy).toHaveBeenCalled();
|
|
85
|
-
});
|
|
86
|
-
});
|
|
87
|
-
//# sourceMappingURL=listeners.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"listeners.test.js","sourceRoot":"","sources":["../../../../tests/client/listeners.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAA;AAE7D,OAAO,EACL,iBAAiB,EACjB,uBAAuB,EACvB,eAAe,EAChB,MAAM,2BAA2B,CAAA;AAElC,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAA;AACnD,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AACzE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AACvE,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EACL,2BAA2B,EAC3B,eAAe,EACf,qBAAqB,EACtB,MAAM,kBAAkB,CAAA;AAEzB,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE;IACzB,UAAU,CAAC,GAAG,EAAE;QACd,EAAE,CAAC,aAAa,EAAE,CAAA;QAClB,OAAO,CAAC,QAAQ,EAAE,CAAA;QAClB,aAAa,CAAC,QAAQ,EAAE,CAAA;QACxB,qBAAqB,EAAE,CAAA;QACvB,eAAe,EAAE,CAAA;QACjB,2BAA2B,EAAE,CAAA;IAC/B,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,iFAAiF,EAAE,KAAK,IAAI,EAAE;QAC/F,MAAM,QAAQ,GAAG,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,IAAI,EAAW,CAAA;QAC/D,MAAM,iBAAiB,GAAG,EAAE,CAAC,KAAK,CAAC,iBAAiB,EAAE,gBAAgB,CAAC,CAAA;QACvE,MAAM,gBAAgB,GAAG,EAAE;aACxB,KAAK,CAAC,uBAAuB,EAAE,eAAe,CAAC;aAC/C,qBAAqB,CAAC,QAAQ,CAAC,CAAA;QAElC,MAAM,WAAW,GAAG;YAClB,OAAO,EAAE,OAAO;YAChB,OAAO,EAAE,OAAO,CAAC,EAAE;YACnB,cAAc,EAAE,OAAO,CAAC,cAAc;SACvC,CAAA;QAED,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,WAAW,CAAC,CAAA;QACtC,MAAM,iBAAiB,GAAG,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC,kBAAkB,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;QACzF,MAAM,kBAAkB,GAAG,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC,kBAAkB,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;QAE3F,MAAM,MAAM,CAAC,aAAa,CAAC,CAAC,WAAW,CAAC,CAAA;QACxC,iCAAiC;QACjC,cAAc,CAAC,IAAI,CAAC,gBAAgB,EAAE,WAAW,CAAC,CAAA;QAElD,MAAM,CAAC,iBAAiB,CAAC,CAAC,oBAAoB,CAC5C,GAAG,WAAW,CAAC,cAAc,IAAI,WAAW,CAAC,OAAO,IAAI,WAAW,CAAC,OAAO,EAAE,EAC7E,QAAQ,CACT,CAAA;QACD,MAAM,CAAC,gBAAgB,CAAC,CAAC,oBAAoB,CAAC;YAC5C,OAAO,EAAE,WAAW,CAAC,OAAO;YAC5B,aAAa,EAAE,GAAG,WAAW,CAAC,cAAc,IAAI,WAAW,CAAC,OAAO,EAAE;SACtE,CAAC,CAAA;QACF,MAAM,CAAC,iBAAiB,CAAC,CAAC,oBAAoB,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;QACvE,MAAM,CAAC,kBAAkB,CAAC,CAAC,oBAAoB,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;IAC5E,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,+EAA+E,EAAE,KAAK,IAAI,EAAE;QAC7F,EAAE,CAAC,KAAK,CAAC,iBAAiB,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC,eAAe,CAAC;YAC1D,GAAG,iBAAiB,CAAC,KAAK;YAC1B,OAAO,EAAE,QAAQ;SAClB,CAAC,CAAA;QACF,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,EAAE,GAAG,WAAW,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC,CAAA;QACrE,MAAM,iBAAiB,GAAG,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAA;QAE5D,MAAM,WAAW,GAAG;YAClB,OAAO,EAAE,OAAO;YAChB,OAAO,EAAE,OAAO,CAAC,EAAE;YACnB,cAAc,EAAE,OAAO,CAAC,cAAc;SACvC,CAAA;QACD,OAAO,CAAC,IAAI,CAAC,gBAAgB,EAAE,WAAW,CAAC,CAAA;QAE3C,MAAM,CAAC,iBAAiB,CAAC,CAAC,oBAAoB,CAC5C,GAAG,WAAW,CAAC,cAAc,IAAI,WAAW,CAAC,OAAO,IAAI,WAAW,CAAC,OAAO,EAAE,EAC7E,QAAQ,CACT,CAAA;IACH,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,4DAA4D,EAAE,KAAK,IAAI,EAAE;QAC1E,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,EAAE,GAAG,WAAW,EAAE,cAAc,EAAE,OAAO,EAAE,CAAC,CAAA;QACtE,MAAM,iBAAiB,GAAG,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAA;QAC5D,MAAM,kBAAkB,GAAG,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAA;QAE9D,MAAM,WAAW,GAAG;YAClB,OAAO,EAAE,8CAA8C;YACvD,OAAO,EAAE,MAAM,CAAC,EAAE;YAClB,cAAc,EAAE,MAAM,CAAC,cAAc;SACtC,CAAA;QACD,aAAa,CAAC,IAAI,CAAC,gBAAgB,EAAE,WAAW,CAAC,CAAA;QAEjD,MAAM,CAAC,iBAAiB,CAAC,CAAC,oBAAoB,CAAC,IAAI,EAAE,MAAM,CAAC,cAAc,CAAC,CAAA;QAC3E,MAAM,CAAC,kBAAkB,CAAC,CAAC,oBAAoB,CAAC,IAAI,EAAE,MAAM,CAAC,cAAc,CAAC,CAAA;IAC9E,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,iGAAiG,EAAE,KAAK,IAAI,EAAE;QAC/G,MAAM,yBAAyB,GAAG,EAAE,CAAC,KAAK,CAAC,eAAe,EAAE,wBAAwB,CAAC,CAAA;QAErF,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC;YACxB,GAAG,WAAW;YACd,qBAAqB,EAAE,KAAK;YAC5B,QAAQ,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE;SACxC,CAAC,CAAA;QAEF,eAAe,CAAC,KAAK,CAAC,WAAW,GAAG,OAAO,CAAC,cAAc,CAAA;QAC1D,eAAe,CAAC,KAAK,CAAC,iBAAiB,GAAG,kBAAkB,CAAA;QAE5D,MAAM,MAAM,CAAC,aAAa,CAAC,CAAC;YAC1B,OAAO,EAAE,OAAO;YAChB,OAAO,EAAE,kBAAkB,CAAC,EAAE;YAC9B,cAAc,EAAE,kBAAkB,CAAC,cAAc;SAClD,CAAC,CAAA;QAEF,MAAM,CAAC,yBAAyB,CAAC,CAAC,gBAAgB,EAAE,CAAA;IACtD,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
|