w-ftp 1.0.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.
Files changed (50) hide show
  1. package/.editorconfig +9 -0
  2. package/.eslintignore +3 -0
  3. package/.eslintrc.js +54 -0
  4. package/.jsdoc +25 -0
  5. package/LICENSE +21 -0
  6. package/README.md +163 -0
  7. package/SECURITY.md +5 -0
  8. package/babel.config.js +14 -0
  9. package/docs/WFtp.mjs.html +665 -0
  10. package/docs/fonts/Montserrat/Montserrat-Bold.eot +0 -0
  11. package/docs/fonts/Montserrat/Montserrat-Bold.ttf +0 -0
  12. package/docs/fonts/Montserrat/Montserrat-Bold.woff +0 -0
  13. package/docs/fonts/Montserrat/Montserrat-Bold.woff2 +0 -0
  14. package/docs/fonts/Montserrat/Montserrat-Regular.eot +0 -0
  15. package/docs/fonts/Montserrat/Montserrat-Regular.ttf +0 -0
  16. package/docs/fonts/Montserrat/Montserrat-Regular.woff +0 -0
  17. package/docs/fonts/Montserrat/Montserrat-Regular.woff2 +0 -0
  18. package/docs/fonts/Source-Sans-Pro/sourcesanspro-light-webfont.eot +0 -0
  19. package/docs/fonts/Source-Sans-Pro/sourcesanspro-light-webfont.svg +978 -0
  20. package/docs/fonts/Source-Sans-Pro/sourcesanspro-light-webfont.ttf +0 -0
  21. package/docs/fonts/Source-Sans-Pro/sourcesanspro-light-webfont.woff +0 -0
  22. package/docs/fonts/Source-Sans-Pro/sourcesanspro-light-webfont.woff2 +0 -0
  23. package/docs/fonts/Source-Sans-Pro/sourcesanspro-regular-webfont.eot +0 -0
  24. package/docs/fonts/Source-Sans-Pro/sourcesanspro-regular-webfont.svg +1049 -0
  25. package/docs/fonts/Source-Sans-Pro/sourcesanspro-regular-webfont.ttf +0 -0
  26. package/docs/fonts/Source-Sans-Pro/sourcesanspro-regular-webfont.woff +0 -0
  27. package/docs/fonts/Source-Sans-Pro/sourcesanspro-regular-webfont.woff2 +0 -0
  28. package/docs/global.html +439 -0
  29. package/docs/index.html +81 -0
  30. package/docs/jsftp.js.html +925 -0
  31. package/docs/scripts/collapse.js +20 -0
  32. package/docs/scripts/linenumber.js +25 -0
  33. package/docs/scripts/nav.js +12 -0
  34. package/docs/scripts/polyfill.js +4 -0
  35. package/docs/scripts/prettify/Apache-License-2.0.txt +202 -0
  36. package/docs/scripts/prettify/lang-css.js +2 -0
  37. package/docs/scripts/prettify/prettify.js +28 -0
  38. package/docs/scripts/search.js +83 -0
  39. package/docs/styles/jsdoc.css +765 -0
  40. package/docs/styles/prettify.css +79 -0
  41. package/g-download.mjs +84 -0
  42. package/g-upload.mjs +65 -0
  43. package/package.json +30 -0
  44. package/src/WFtp.mjs +596 -0
  45. package/src/jsftp.js +856 -0
  46. package/test/all.test.mjs +10 -0
  47. package/toolg/addVersion.mjs +4 -0
  48. package/toolg/cleanFolder.mjs +4 -0
  49. package/toolg/gDistRollup.mjs +27 -0
  50. package/toolg/modifyReadme.mjs +4 -0
@@ -0,0 +1,79 @@
1
+ .pln {
2
+ color: #ddd;
3
+ }
4
+
5
+ /* string content */
6
+ .str {
7
+ color: #61ce3c;
8
+ }
9
+
10
+ /* a keyword */
11
+ .kwd {
12
+ color: #fbde2d;
13
+ }
14
+
15
+ /* a comment */
16
+ .com {
17
+ color: #aeaeae;
18
+ }
19
+
20
+ /* a type name */
21
+ .typ {
22
+ color: #8da6ce;
23
+ }
24
+
25
+ /* a literal value */
26
+ .lit {
27
+ color: #fbde2d;
28
+ }
29
+
30
+ /* punctuation */
31
+ .pun {
32
+ color: #ddd;
33
+ }
34
+
35
+ /* lisp open bracket */
36
+ .opn {
37
+ color: #000000;
38
+ }
39
+
40
+ /* lisp close bracket */
41
+ .clo {
42
+ color: #000000;
43
+ }
44
+
45
+ /* a markup tag name */
46
+ .tag {
47
+ color: #8da6ce;
48
+ }
49
+
50
+ /* a markup attribute name */
51
+ .atn {
52
+ color: #fbde2d;
53
+ }
54
+
55
+ /* a markup attribute value */
56
+ .atv {
57
+ color: #ddd;
58
+ }
59
+
60
+ /* a declaration */
61
+ .dec {
62
+ color: #EF5050;
63
+ }
64
+
65
+ /* a variable name */
66
+ .var {
67
+ color: #c82829;
68
+ }
69
+
70
+ /* a function name */
71
+ .fun {
72
+ color: #4271ae;
73
+ }
74
+
75
+ /* Specify class=linenums on a pre to get line numbering */
76
+ ol.linenums {
77
+ margin-top: 0;
78
+ margin-bottom: 0;
79
+ }
package/g-download.mjs ADDED
@@ -0,0 +1,84 @@
1
+ import path from 'path'
2
+ import fs from 'fs'
3
+ import WFtp from './src/WFtp.mjs'
4
+
5
+
6
+ //st
7
+ let fp = path.resolve('../', './_data', 'settings.json')
8
+ let j = fs.readFileSync(fp, 'utf8')
9
+ let st = JSON.parse(j)
10
+ console.log(st)
11
+
12
+
13
+ async function test_dw() {
14
+ let r
15
+
16
+ let ftp = WFtp()
17
+ // console.log('ftp', ftp)
18
+
19
+ await ftp.conn({
20
+ hostname: st.dw.hostname,
21
+ port: st.dw.port,
22
+ username: st.dw.username,
23
+ password: st.dw.password,
24
+ })
25
+
26
+ let fps = await ftp.ls('.')
27
+ console.log('ftp.ls', fps[0], fps.length)
28
+
29
+ r = await ftp.download('./DECL_20210805055044.csv', './_test_download_client/DECL_20210805055044.csv', (p) => {
30
+ console.log('ftp.download p', p.name, p.progress)
31
+ })
32
+ console.log('ftp.download', r)
33
+
34
+ r = await ftp.syncToLocal('.', './_test_download_client', (p) => {
35
+ console.log('ftp.syncToLocal p', p.name, p.progress)
36
+ })
37
+ console.log('ftp.syncToLocal', r)
38
+
39
+ r = await ftp.quit()
40
+ console.log('ftp.quit', r)
41
+
42
+ }
43
+ test_dw()
44
+ .catch((err) => {
45
+ console.log(err)
46
+ })
47
+ // ftp.ls {
48
+ // name: 'DECL_202108.csv',
49
+ // type: 0,
50
+ // time: 1658302140000,
51
+ // size: '218690',
52
+ // owner: 'ftp',
53
+ // group: 'ftp',
54
+ // userPermissions: { read: true, write: true, exec: false },
55
+ // groupPermissions: { read: true, write: true, exec: false },
56
+ // otherPermissions: { read: true, write: true, exec: false }
57
+ // } 74
58
+ // ftp.download p DECL_20210805055044.csv 4.7320871554333515
59
+ // ftp.download p DECL_20210805055044.csv 9.464174310866703
60
+ // ftp.download p DECL_20210805055044.csv 14.196261466300053
61
+ // ftp.download p DECL_20210805055044.csv 18.928348621733406
62
+ // ftp.download p DECL_20210805055044.csv 23.660435777166754
63
+ // ftp.download p DECL_20210805055044.csv 28.392522932600105
64
+ // ftp.download p DECL_20210805055044.csv 33.12461008803346
65
+ // ftp.download p DECL_20210805055044.csv 37.85669724346681
66
+ // ftp.download p DECL_20210805055044.csv 42.58878439890016
67
+ // ftp.download p DECL_20210805055044.csv 47.32087155433351
68
+ // ftp.download p DECL_20210805055044.csv 52.05295870976686
69
+ // ftp.download p DECL_20210805055044.csv 56.78504586520021
70
+ // ftp.download p DECL_20210805055044.csv 61.517133020633565
71
+ // ftp.download p DECL_20210805055044.csv 66.24922017606691
72
+ // ftp.download p DECL_20210805055044.csv 70.98130733150026
73
+ // ftp.download p DECL_20210805055044.csv 75.71339448693362
74
+ // ftp.download p DECL_20210805055044.csv 80.44548164236697
75
+ // ftp.download p DECL_20210805055044.csv 85.17756879780032
76
+ // ftp.download p DECL_20210805055044.csv 89.90965595323367
77
+ // ftp.download p DECL_20210805055044.csv 94.64174310866701
78
+ // ftp.download p DECL_20210805055044.csv 99.37383026410038
79
+ // ftp.download p DECL_20210805055044.csv 100
80
+ // ftp.download ok
81
+ // ftp.syncToLocal { num: 0, files: [] }
82
+ // ftp.quit { code: 221, text: '221 Goodbye.', isMark: false, isError: false }
83
+
84
+ //node --experimental-modules --es-module-specifier-resolution=node g-download.mjs
package/g-upload.mjs ADDED
@@ -0,0 +1,65 @@
1
+ import path from 'path'
2
+ import fs from 'fs'
3
+ import WFtp from './src/WFtp.mjs'
4
+
5
+
6
+ //st
7
+ let fp = path.resolve('../', './_data', 'settings.json')
8
+ let j = fs.readFileSync(fp, 'utf8')
9
+ let st = JSON.parse(j)
10
+ console.log(st)
11
+
12
+
13
+ async function test_up() {
14
+ let r
15
+
16
+ let ftp = WFtp()
17
+ // console.log('ftp', ftp)
18
+
19
+ await ftp.conn({
20
+ hostname: st.up.hostname,
21
+ port: st.up.port,
22
+ username: st.up.username,
23
+ password: st.up.password,
24
+ })
25
+
26
+ let fps = await ftp.ls('.')
27
+ console.log('ftp.ls', fps[0], fps.length)
28
+
29
+ r = await ftp.upload('./_test_upload_client/DECL_20210805055044.csv', './DECL_20210805055044.csv', (p) => {
30
+ console.log('ftp.upload p', p.name, p.progress)
31
+ })
32
+ console.log('ftp.upload', r)
33
+
34
+ r = await ftp.syncToRemote('./_test_upload_client', '.', (p) => {
35
+ console.log('ftp.syncToRemote p', p.name, p.progress)
36
+ })
37
+ console.log('ftp.syncToRemote', r)
38
+
39
+ r = await ftp.quit()
40
+ console.log('ftp.quit', r)
41
+
42
+ }
43
+ test_up()
44
+ .catch((err) => {
45
+ console.log(err)
46
+ })
47
+ // ftp.ls {
48
+ // name: 'DECL_202108.csv',
49
+ // type: 0,
50
+ // time: 1658366760000,
51
+ // size: '218690',
52
+ // owner: 'ftp',
53
+ // group: 'ftp',
54
+ // userPermissions: { read: true, write: true, exec: false },
55
+ // groupPermissions: { read: true, write: true, exec: false },
56
+ // otherPermissions: { read: true, write: true, exec: false }
57
+ // } 73
58
+ // ftp.upload p DECL_20210805055044.csv 75.71339448693362
59
+ // drain
60
+ // ftp.upload p DECL_20210805055044.csv 100
61
+ // ftp.upload ok
62
+ // ftp.syncToRemote { num: 0, files: [] }
63
+ // ftp.quit { code: 221, text: '221 Goodbye.', isMark: false, isError: false }
64
+
65
+ //node --experimental-modules --es-module-specifier-resolution=node g-upload.mjs
package/package.json ADDED
@@ -0,0 +1,30 @@
1
+ {
2
+ "name": "w-ftp",
3
+ "version": "1.0.0",
4
+ "main": "dist/w-ftp.umd.js",
5
+ "dependencies": {
6
+ "lodash": "^4.17.21",
7
+ "wsemi": "^1.6.61"
8
+ },
9
+ "devDependencies": {
10
+ "w-package-tools": "^1.0.65"
11
+ },
12
+ "scripts": {
13
+ "test": "mocha --parallel --timeout 60000 --experimental-modules --es-module-specifier-resolution=node",
14
+ "deploy": "gh-pages -d docs"
15
+ },
16
+ "repository": {
17
+ "type": "git",
18
+ "url": "git+https://github.com/yuda-lyu/w-ftp.git"
19
+ },
20
+ "keywords": [
21
+ "package",
22
+ "tool",
23
+ "jsftp",
24
+ "ftp",
25
+ "windows",
26
+ "nodejs"
27
+ ],
28
+ "author": "yuda-lyu(semisphere)",
29
+ "license": "MIT"
30
+ }