dtunnel-sdk 1.1.3 → 1.1.5
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/README.md +127 -99
- package/docs/README.md +39 -39
- package/docs/api-reference.md +206 -206
- package/docs/bridge-sem-sdk.md +1 -1
- package/docs/getting-started.md +108 -108
- package/package.json +83 -74
- package/react/index.d.ts +64 -64
- package/react/index.js +86 -86
- package/react/index.mjs +80 -80
- package/sdk/README.md +82 -43
- package/sdk/dtunnel-sdk.d.ts +554 -554
- package/sdk/dtunnel-sdk.js +716 -716
- package/sdk/dtunnel-sdk.mjs +12 -12
- package/sdk/dtunnel-sdk.simulator.d.ts +171 -0
- package/sdk/dtunnel-sdk.simulator.js +910 -0
- package/sdk/dtunnel-sdk.simulator.mjs +19 -0
- package/templates/cdn/index.html +693 -693
- package/templates/react-typescript/README.md +13 -13
- package/templates/react-typescript/index.html +1 -1
- package/templates/react-typescript/src/main.tsx +18 -18
- package/templates/typescript/README.md +13 -13
- package/templates/typescript/index.html +1 -1
- package/templates/typescript/src/main.ts +354 -354
package/README.md
CHANGED
|
@@ -1,99 +1,127 @@
|
|
|
1
|
-
# DTunnel SDK
|
|
2
|
-
|
|
3
|
-
SDK JavaScript/TypeScript para consumir a bridge Android (`window.Dt...`) no WebView.
|
|
4
|
-
|
|
5
|
-
## Instalacao
|
|
6
|
-
|
|
7
|
-
```bash
|
|
8
|
-
npm install dtunnel-sdk
|
|
9
|
-
```
|
|
10
|
-
|
|
11
|
-
## Inicializar projeto pronto
|
|
12
|
-
|
|
13
|
-
Crie um projeto novo com template e `build:webview` ja configurado:
|
|
14
|
-
|
|
15
|
-
```bash
|
|
16
|
-
npx dtunnel-sdk init
|
|
17
|
-
```
|
|
18
|
-
|
|
19
|
-
Ou direto com flags:
|
|
20
|
-
|
|
21
|
-
```bash
|
|
22
|
-
npx dtunnel-sdk init meu-app --template react-typescript
|
|
23
|
-
npx dtunnel-sdk init meu-app --template typescript --no-install
|
|
24
|
-
npx dtunnel-sdk init meu-app --template cdn
|
|
25
|
-
```
|
|
26
|
-
|
|
27
|
-
Tambem funciona com `npm exec`:
|
|
28
|
-
|
|
29
|
-
```bash
|
|
30
|
-
npm exec dtunnel-sdk init meu-app --template react-typescript
|
|
31
|
-
```
|
|
32
|
-
|
|
33
|
-
## Uso rapido
|
|
34
|
-
|
|
35
|
-
```ts
|
|
36
|
-
import DTunnelSDK from 'dtunnel-sdk';
|
|
37
|
-
|
|
38
|
-
const sdk = new DTunnelSDK({
|
|
39
|
-
strict: false,
|
|
40
|
-
autoRegisterNativeEvents: true,
|
|
41
|
-
});
|
|
42
|
-
|
|
43
|
-
sdk.on('vpnState', (event) => {
|
|
44
|
-
console.log('VPN:', event.payload);
|
|
45
|
-
});
|
|
46
|
-
```
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
```
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
```bash
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
1
|
+
# DTunnel SDK
|
|
2
|
+
|
|
3
|
+
SDK JavaScript/TypeScript para consumir a bridge Android (`window.Dt...`) no WebView.
|
|
4
|
+
|
|
5
|
+
## Instalacao
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
npm install dtunnel-sdk
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## Inicializar projeto pronto
|
|
12
|
+
|
|
13
|
+
Crie um projeto novo com template e `build:webview` ja configurado:
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
npx dtunnel-sdk init
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
Ou direto com flags:
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
npx dtunnel-sdk init meu-app --template react-typescript
|
|
23
|
+
npx dtunnel-sdk init meu-app --template typescript --no-install
|
|
24
|
+
npx dtunnel-sdk init meu-app --template cdn
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
Tambem funciona com `npm exec`:
|
|
28
|
+
|
|
29
|
+
```bash
|
|
30
|
+
npm exec dtunnel-sdk init meu-app --template react-typescript
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
## Uso rapido
|
|
34
|
+
|
|
35
|
+
```ts
|
|
36
|
+
import DTunnelSDK from 'dtunnel-sdk';
|
|
37
|
+
|
|
38
|
+
const sdk = new DTunnelSDK({
|
|
39
|
+
strict: false,
|
|
40
|
+
autoRegisterNativeEvents: true,
|
|
41
|
+
});
|
|
42
|
+
|
|
43
|
+
sdk.on('vpnState', (event) => {
|
|
44
|
+
console.log('VPN:', event.payload);
|
|
45
|
+
});
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
## Simulador rapido (sem Android)
|
|
49
|
+
|
|
50
|
+
```ts
|
|
51
|
+
import DTunnelSDK from 'dtunnel-sdk';
|
|
52
|
+
import { installDTunnelSDKSimulator } from 'dtunnel-sdk/simulator';
|
|
53
|
+
|
|
54
|
+
const simulator = installDTunnelSDKSimulator();
|
|
55
|
+
const sdk = new DTunnelSDK({ strict: false, autoRegisterNativeEvents: true });
|
|
56
|
+
|
|
57
|
+
sdk.on('vpnState', (event) => {
|
|
58
|
+
console.log('VPN:', event.payload);
|
|
59
|
+
});
|
|
60
|
+
simulator.emit('vpnState', 'CONNECTED');
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
Browser puro (sem bundler):
|
|
64
|
+
|
|
65
|
+
```html
|
|
66
|
+
<script src="https://cdn.jsdelivr.net/npm/dtunnel-sdk@latest/sdk/dtunnel-sdk.js"></script>
|
|
67
|
+
<script src="https://cdn.jsdelivr.net/npm/dtunnel-sdk@latest/sdk/dtunnel-sdk.simulator.js"></script>
|
|
68
|
+
<script>
|
|
69
|
+
const sdk = new window.DTunnelSDK({ strict: false, autoRegisterNativeEvents: true });
|
|
70
|
+
const simulator = window.DTunnelSDKSimulator.installDTunnelSDKSimulator();
|
|
71
|
+
|
|
72
|
+
sdk.on('vpnState', (event) => {
|
|
73
|
+
console.log('VPN:', event.payload);
|
|
74
|
+
});
|
|
75
|
+
simulator.emit('vpnState', 'CONNECTED');
|
|
76
|
+
</script>
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
Nota:
|
|
80
|
+
- No WebView real, o simulador nao instala por padrao se detectar bridge nativa.
|
|
81
|
+
|
|
82
|
+
## Documentacao completa
|
|
83
|
+
|
|
84
|
+
Toda a documentacao foi movida para `docs/`:
|
|
85
|
+
|
|
86
|
+
- [Indice geral](./docs/README.md)
|
|
87
|
+
- [Guia rapido](./docs/getting-started.md)
|
|
88
|
+
- [Referencia da API](./docs/api-reference.md)
|
|
89
|
+
- [Eventos e callbacks](./docs/events.md)
|
|
90
|
+
- [Chamadas diretas sem SDK](./docs/bridge-sem-sdk.md)
|
|
91
|
+
|
|
92
|
+
## Fluxo oficial (limpo)
|
|
93
|
+
|
|
94
|
+
Use apenas `init` para gerar projeto pronto:
|
|
95
|
+
|
|
96
|
+
```bash
|
|
97
|
+
npx dtunnel-sdk init meu-app --template react-typescript
|
|
98
|
+
cd meu-app
|
|
99
|
+
npm run build:webview
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
O resultado final para o WebView sempre sera:
|
|
103
|
+
- `webview/index.html`
|
|
104
|
+
|
|
105
|
+
## Demos prontas
|
|
106
|
+
|
|
107
|
+
Tambem deixei demos geradas no repositorio:
|
|
108
|
+
|
|
109
|
+
- `demos/cdn`
|
|
110
|
+
- `demos/typescript`
|
|
111
|
+
- `demos/react-typescript`
|
|
112
|
+
|
|
113
|
+
Guia rapido: `demos/README.md`
|
|
114
|
+
|
|
115
|
+
## Testes
|
|
116
|
+
|
|
117
|
+
```bash
|
|
118
|
+
npm test
|
|
119
|
+
npm run test:typecheck
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
## Release e publicacao
|
|
123
|
+
|
|
124
|
+
```bash
|
|
125
|
+
npm run release:sdk -- --version X.Y.Z
|
|
126
|
+
npm run publish:npm
|
|
127
|
+
```
|
package/docs/README.md
CHANGED
|
@@ -1,39 +1,39 @@
|
|
|
1
|
-
# DTunnel SDK Docs
|
|
2
|
-
|
|
3
|
-
Documentacao oficial do `dtunnel-sdk`, organizada por assunto.
|
|
4
|
-
|
|
5
|
-
## Indice
|
|
6
|
-
|
|
7
|
-
- [Guia rapido](./getting-started.md)
|
|
8
|
-
- [Referencia da API (SDK + bridge)](./api-reference.md)
|
|
9
|
-
- [Eventos e callbacks nativos](./events.md)
|
|
10
|
-
- [Chamadas diretas sem SDK](./bridge-sem-sdk.md)
|
|
11
|
-
|
|
12
|
-
## Leitura recomendada
|
|
13
|
-
|
|
14
|
-
1. Comece em [Guia rapido](./getting-started.md).
|
|
15
|
-
2. Use [Referencia da API](./api-reference.md) para integrar metodos.
|
|
16
|
-
3. Use [Eventos](./events.md) para assinatura correta dos listeners.
|
|
17
|
-
4. Use [Sem SDK](./bridge-sem-sdk.md) apenas se voce realmente nao puder usar o pacote.
|
|
18
|
-
|
|
19
|
-
## Exemplo base
|
|
20
|
-
|
|
21
|
-
Exemplo unico de referencia no pacote:
|
|
22
|
-
|
|
23
|
-
- `templates/cdn/index.html`
|
|
24
|
-
|
|
25
|
-
## Demos geradas
|
|
26
|
-
|
|
27
|
-
No repositorio, demos prontas em:
|
|
28
|
-
|
|
29
|
-
- `demos/cdn`
|
|
30
|
-
- `demos/typescript`
|
|
31
|
-
- `demos/react-typescript`
|
|
32
|
-
|
|
33
|
-
## CLI de bootstrap
|
|
34
|
-
|
|
35
|
-
Para iniciar projeto novo automaticamente:
|
|
36
|
-
|
|
37
|
-
```bash
|
|
38
|
-
npx dtunnel-sdk init
|
|
39
|
-
```
|
|
1
|
+
# DTunnel SDK Docs
|
|
2
|
+
|
|
3
|
+
Documentacao oficial do `dtunnel-sdk`, organizada por assunto.
|
|
4
|
+
|
|
5
|
+
## Indice
|
|
6
|
+
|
|
7
|
+
- [Guia rapido](./getting-started.md)
|
|
8
|
+
- [Referencia da API (SDK + bridge)](./api-reference.md)
|
|
9
|
+
- [Eventos e callbacks nativos](./events.md)
|
|
10
|
+
- [Chamadas diretas sem SDK](./bridge-sem-sdk.md)
|
|
11
|
+
|
|
12
|
+
## Leitura recomendada
|
|
13
|
+
|
|
14
|
+
1. Comece em [Guia rapido](./getting-started.md).
|
|
15
|
+
2. Use [Referencia da API](./api-reference.md) para integrar metodos.
|
|
16
|
+
3. Use [Eventos](./events.md) para assinatura correta dos listeners.
|
|
17
|
+
4. Use [Sem SDK](./bridge-sem-sdk.md) apenas se voce realmente nao puder usar o pacote.
|
|
18
|
+
|
|
19
|
+
## Exemplo base
|
|
20
|
+
|
|
21
|
+
Exemplo unico de referencia no pacote:
|
|
22
|
+
|
|
23
|
+
- `templates/cdn/index.html`
|
|
24
|
+
|
|
25
|
+
## Demos geradas
|
|
26
|
+
|
|
27
|
+
No repositorio, demos prontas em:
|
|
28
|
+
|
|
29
|
+
- `demos/cdn`
|
|
30
|
+
- `demos/typescript`
|
|
31
|
+
- `demos/react-typescript`
|
|
32
|
+
|
|
33
|
+
## CLI de bootstrap
|
|
34
|
+
|
|
35
|
+
Para iniciar projeto novo automaticamente:
|
|
36
|
+
|
|
37
|
+
```bash
|
|
38
|
+
npx dtunnel-sdk init
|
|
39
|
+
```
|