@zero-transfer/sdk 0.1.6 → 0.3.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/README.md +2 -4
- package/assets/zero-transfer-logo.svg +0 -35
- package/dist/index.cjs +4211 -1138
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.mts +540 -54
- package/dist/index.d.ts +540 -54
- package/dist/index.mjs +4217 -1139
- package/dist/index.mjs.map +1 -1
- package/package.json +3 -4
package/README.md
CHANGED
|
@@ -2,8 +2,6 @@
|
|
|
2
2
|
<img src="https://tonywied17.github.io/zero-transfer/assets/zero-transfer-logo.svg" alt="ZeroTransfer file transfer SDK for Node.js" width="720">
|
|
3
3
|
</p>
|
|
4
4
|
|
|
5
|
-
<h1 align="center">ZeroTransfer</h1>
|
|
6
|
-
|
|
7
5
|
<p align="center">
|
|
8
6
|
<strong>One TypeScript SDK for moving files across every storage system you actually use.</strong><br/>
|
|
9
7
|
FTP · FTPS · SFTP · HTTP(S) · WebDAV · S3-compatible · Azure Blob · GCS · Google Drive · Dropbox · OneDrive · Local
|
|
@@ -63,7 +61,7 @@ await uploadFile({
|
|
|
63
61
|
# Batteries-included SDK (every provider):
|
|
64
62
|
npm install @zero-transfer/sdk
|
|
65
63
|
|
|
66
|
-
# Or pick a scoped
|
|
64
|
+
# Or pick a scoped package with a narrowed export surface:
|
|
67
65
|
npm install @zero-transfer/sftp
|
|
68
66
|
npm install @zero-transfer/s3
|
|
69
67
|
npm install @zero-transfer/mft
|
|
@@ -73,7 +71,7 @@ Requires Node.js **>=20**.
|
|
|
73
71
|
|
|
74
72
|
## Scoped packages
|
|
75
73
|
|
|
76
|
-
ZeroTransfer publishes 13 scoped packages under the [`@zero-transfer`](https://www.npmjs.com/org/zero-transfer) npm organization. [`@zero-transfer/sdk`](https://www.npmjs.com/package/@zero-transfer/sdk) is the batteries-included distribution; the other 12 are **narrowly scoped** packages that
|
|
74
|
+
ZeroTransfer publishes 13 scoped packages under the [`@zero-transfer`](https://www.npmjs.com/org/zero-transfer) npm organization. [`@zero-transfer/sdk`](https://www.npmjs.com/package/@zero-transfer/sdk) is the batteries-included distribution; the other 12 are **narrowly scoped** packages that publish only the symbols listed in their [scope page](docs/scopes/README.md). Pick one to keep your dependency tree tight, or install the SDK if you want every provider in one go.
|
|
77
75
|
|
|
78
76
|
| Package | Summary | Docs |
|
|
79
77
|
| ------------------------------------------------------------------------------------------ | ----------------------------------------------------------------------------- | ----------------------------------------- |
|
|
@@ -1,15 +1,5 @@
|
|
|
1
1
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 880 200" width="880" height="200" role="img" aria-label="Zero Transfer">
|
|
2
2
|
<defs>
|
|
3
|
-
<!--
|
|
4
|
-
The 3D ring illusion works by COMBINING two animations on each ring:
|
|
5
|
-
1. animateTransform rotate on the GROUP → the ring's plane tilts/gyrates in 2D
|
|
6
|
-
2. animate ry on the ELLIPSE → ry oscillates 22→56→22→5→22
|
|
7
|
-
This approximates the projection of a 3D ring rotating through one full turn:
|
|
8
|
-
56≈face-on (near), 22≈tilted, 5≈edge-on (far). The human visual system reads
|
|
9
|
-
the compound motion as genuine 3D rotation.
|
|
10
|
-
-->
|
|
11
|
-
|
|
12
|
-
<!-- Color-shifting accent – the stop-colors drift between cyan/indigo/violet -->
|
|
13
3
|
<linearGradient id="gAccent" x1="0%" y1="0%" x2="100%" y2="0%">
|
|
14
4
|
<stop offset="0%" stop-color="#22d3ee">
|
|
15
5
|
<animate attributeName="stop-color"
|
|
@@ -21,36 +11,27 @@
|
|
|
21
11
|
</stop>
|
|
22
12
|
</linearGradient>
|
|
23
13
|
|
|
24
|
-
<!-- Nucleus glow -->
|
|
25
14
|
<filter id="nucGlow" x="-100%" y="-100%" width="300%" height="300%">
|
|
26
15
|
<feGaussianBlur stdDeviation="4" result="b"/>
|
|
27
16
|
<feMerge><feMergeNode in="b"/><feMergeNode in="SourceGraphic"/></feMerge>
|
|
28
17
|
</filter>
|
|
29
18
|
|
|
30
|
-
<!-- Sweep bar glow -->
|
|
31
19
|
<filter id="sweepGlow" x="-50%" y="-300%" width="200%" height="700%">
|
|
32
20
|
<feGaussianBlur stdDeviation="2.5" result="b"/>
|
|
33
21
|
<feMerge><feMergeNode in="b"/><feMergeNode in="SourceGraphic"/></feMerge>
|
|
34
22
|
</filter>
|
|
35
|
-
|
|
36
|
-
<!-- Clips the sweep highlight so it never exits the track bounds -->
|
|
37
23
|
<clipPath id="barClip">
|
|
38
24
|
<rect x="0" y="145" width="600" height="12"/>
|
|
39
25
|
</clipPath>
|
|
40
26
|
</defs>
|
|
41
27
|
|
|
42
|
-
<!-- ╔══════════════════════════════════════════════╗ -->
|
|
43
|
-
<!-- ║ ATOM MARK (centred at 106,100) ║ -->
|
|
44
|
-
<!-- ╚══════════════════════════════════════════════╝ -->
|
|
45
28
|
<g transform="translate(106,100)">
|
|
46
29
|
|
|
47
|
-
<!-- Soft breathing halo — gives the mark a "live energy" feel -->
|
|
48
30
|
<circle r="70" fill="none" stroke="url(#gAccent)" stroke-width="1" opacity="0.06">
|
|
49
31
|
<animate attributeName="r" values="66;76;66" dur="5.5s" repeatCount="indefinite"/>
|
|
50
32
|
<animate attributeName="opacity" values="0.03;0.11;0.03" dur="5.5s" repeatCount="indefinite"/>
|
|
51
33
|
</circle>
|
|
52
34
|
|
|
53
|
-
<!-- Ambient particles around the mark (twinkle, no motion to keep it clean) -->
|
|
54
35
|
<circle cx="-67" cy="-20" r="1.8" fill="#22d3ee">
|
|
55
36
|
<animate attributeName="opacity" values="0.12;0.65;0.12" dur="2.4s" repeatCount="indefinite"/>
|
|
56
37
|
</circle>
|
|
@@ -67,13 +48,10 @@
|
|
|
67
48
|
<animate attributeName="opacity" values="0.08;0.4;0.08" dur="2.1s" begin="1.2s" repeatCount="indefinite"/>
|
|
68
49
|
</circle>
|
|
69
50
|
|
|
70
|
-
<!-- ─── RING A (cyan, plane gyrates CW 18 s, ry starts phase 0) ─── -->
|
|
71
51
|
<g>
|
|
72
52
|
<animateTransform attributeName="transform" type="rotate"
|
|
73
53
|
from="0" to="360" dur="18s" repeatCount="indefinite"/>
|
|
74
|
-
<!-- ghost track -->
|
|
75
54
|
<ellipse rx="62" ry="22" fill="none" stroke="#22d3ee" stroke-width="0.75" opacity="0.1"/>
|
|
76
|
-
<!-- 3D-tipping ring -->
|
|
77
55
|
<ellipse rx="62" ry="22" fill="none" stroke="#22d3ee" stroke-linecap="round">
|
|
78
56
|
<animate attributeName="ry"
|
|
79
57
|
values="22;56;22;5;22" keyTimes="0;0.25;0.5;0.75;1"
|
|
@@ -85,14 +63,12 @@
|
|
|
85
63
|
<animate attributeName="stroke-opacity"
|
|
86
64
|
values="0.28;0.95;0.28;0.5;0.28" keyTimes="0;0.25;0.5;0.75;1" dur="7s" repeatCount="indefinite"/>
|
|
87
65
|
</ellipse>
|
|
88
|
-
<!-- comet dash -->
|
|
89
66
|
<ellipse rx="62" ry="22" fill="none" stroke="#22d3ee"
|
|
90
67
|
stroke-width="3" stroke-dasharray="68 232" stroke-linecap="round" opacity="0.85">
|
|
91
68
|
<animate attributeName="stroke-dashoffset" values="0;-300" dur="2.2s" repeatCount="indefinite"/>
|
|
92
69
|
</ellipse>
|
|
93
70
|
</g>
|
|
94
71
|
|
|
95
|
-
<!-- ─── RING B (indigo, plane gyrates CCW 24 s, ry phase +2.33 s) ─── -->
|
|
96
72
|
<g>
|
|
97
73
|
<animateTransform attributeName="transform" type="rotate"
|
|
98
74
|
from="60" to="-300" dur="24s" repeatCount="indefinite"/>
|
|
@@ -114,7 +90,6 @@
|
|
|
114
90
|
</ellipse>
|
|
115
91
|
</g>
|
|
116
92
|
|
|
117
|
-
<!-- ─── RING C (violet, plane gyrates CW 21 s, ry phase +4.67 s) ─── -->
|
|
118
93
|
<g>
|
|
119
94
|
<animateTransform attributeName="transform" type="rotate"
|
|
120
95
|
from="120" to="480" dur="21s" repeatCount="indefinite"/>
|
|
@@ -136,13 +111,11 @@
|
|
|
136
111
|
</ellipse>
|
|
137
112
|
</g>
|
|
138
113
|
|
|
139
|
-
<!-- Nucleus — sits on top of all rings, dark fill masks ring backs for z-depth -->
|
|
140
114
|
<circle r="14" fill="#08111e"/>
|
|
141
115
|
<circle r="14" fill="none" stroke="url(#gAccent)" stroke-width="2" filter="url(#nucGlow)">
|
|
142
116
|
<animate attributeName="r" values="13;15;13" dur="4s" repeatCount="indefinite"/>
|
|
143
117
|
<animate attributeName="stroke-opacity" values="0.5;1;0.5" dur="4s" repeatCount="indefinite"/>
|
|
144
118
|
</circle>
|
|
145
|
-
<!-- Z glyph — no fill, no stroke beyond the gradient line -->
|
|
146
119
|
<path d="M -7,-5 L 7,-5 L -7,5 L 7,5"
|
|
147
120
|
fill="none" stroke="url(#gAccent)"
|
|
148
121
|
stroke-width="2.3" stroke-linecap="round" stroke-linejoin="round">
|
|
@@ -150,27 +123,21 @@
|
|
|
150
123
|
</path>
|
|
151
124
|
</g>
|
|
152
125
|
|
|
153
|
-
<!-- ╔══════════════════════════════════════════════╗ -->
|
|
154
|
-
<!-- ║ WORDMARK ║ -->
|
|
155
|
-
<!-- ╚══════════════════════════════════════════════╝ -->
|
|
156
126
|
<g transform="translate(220,0)"
|
|
157
127
|
font-family="-apple-system, BlinkMacSystemFont, 'Segoe UI', Inter, system-ui, sans-serif">
|
|
158
128
|
|
|
159
|
-
<!-- "zero" — clean off-white, gentle breath (no stroke, no shadow) -->
|
|
160
129
|
<g>
|
|
161
130
|
<animate attributeName="opacity" values="0.82;1;0.82" dur="5.5s" repeatCount="indefinite"/>
|
|
162
131
|
<text x="0" y="108" font-size="62" font-weight="800"
|
|
163
132
|
fill="#f1f5f9" letter-spacing="-2">zero</text>
|
|
164
133
|
</g>
|
|
165
134
|
|
|
166
|
-
<!-- "transfer" — animated gradient, out-of-phase with "zero" -->
|
|
167
135
|
<g>
|
|
168
136
|
<animate attributeName="opacity" values="1;0.86;1" dur="5.5s" repeatCount="indefinite"/>
|
|
169
137
|
<text x="153" y="108" font-size="62" font-weight="800"
|
|
170
138
|
fill="url(#gAccent)" letter-spacing="-2">transfer</text>
|
|
171
139
|
</g>
|
|
172
140
|
|
|
173
|
-
<!-- Tagline -->
|
|
174
141
|
<g>
|
|
175
142
|
<animate attributeName="opacity" values="0.55;0.85;0.55" dur="8s" repeatCount="indefinite"/>
|
|
176
143
|
<text x="3" y="138" font-size="11.5" font-weight="600" letter-spacing="2.5">
|
|
@@ -183,10 +150,8 @@
|
|
|
183
150
|
</text>
|
|
184
151
|
</g>
|
|
185
152
|
|
|
186
|
-
<!-- Static track -->
|
|
187
153
|
<rect x="0" y="153" width="600" height="1.5" rx="1" fill="#1c2a3a"/>
|
|
188
154
|
|
|
189
|
-
<!-- Sweep highlight — clipped so it never exits the track -->
|
|
190
155
|
<g clip-path="url(#barClip)">
|
|
191
156
|
<rect x="-130" y="152.5" width="130" height="2" rx="1"
|
|
192
157
|
fill="url(#gAccent)" filter="url(#sweepGlow)">
|