@toa.io/extensions.storages 1.0.0-alpha.13 → 1.0.0-alpha.143

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 (90) hide show
  1. package/package.json +13 -14
  2. package/readme.md +94 -49
  3. package/schemas/annotation.cos.yaml +1 -0
  4. package/schemas/cloudinary.cos.yaml +30 -0
  5. package/schemas/fs.cos.yaml +2 -0
  6. package/schemas/s3.cos.yaml +1 -0
  7. package/schemas/tmp.cos.yaml +0 -1
  8. package/source/Entry.ts +11 -11
  9. package/source/Factory.ts +16 -9
  10. package/source/Provider.ts +19 -19
  11. package/source/Scanner.ts +57 -24
  12. package/source/Secrets.ts +6 -0
  13. package/source/Storage.test.ts +103 -279
  14. package/source/Storage.ts +55 -204
  15. package/source/deployment.ts +48 -15
  16. package/source/errors.ts +3 -0
  17. package/source/index.ts +1 -1
  18. package/source/manifest.ts +7 -6
  19. package/source/providers/Cloudinary.ts +274 -0
  20. package/source/providers/Declaration.ts +2 -1
  21. package/source/providers/FileSystem.ts +79 -25
  22. package/source/providers/S3.ts +81 -80
  23. package/source/providers/Temporary.ts +2 -3
  24. package/source/providers/Test.ts +4 -4
  25. package/source/providers/index.test.ts +102 -76
  26. package/source/providers/index.ts +9 -4
  27. package/source/schemas.ts +1 -0
  28. package/source/test/.env.example +4 -0
  29. package/source/test/arny.jpg +0 -0
  30. package/source/test/lenna.48x48.jpeg +0 -0
  31. package/source/test/sample.avi +0 -0
  32. package/source/test/sample.svg +4 -0
  33. package/source/test/sample.wav +0 -0
  34. package/source/test/util.ts +54 -12
  35. package/transpiled/Entry.d.ts +12 -10
  36. package/transpiled/Factory.js +11 -5
  37. package/transpiled/Factory.js.map +1 -1
  38. package/transpiled/Provider.d.ts +15 -15
  39. package/transpiled/Provider.js +3 -3
  40. package/transpiled/Provider.js.map +1 -1
  41. package/transpiled/Scanner.d.ts +5 -2
  42. package/transpiled/Scanner.js +49 -22
  43. package/transpiled/Scanner.js.map +1 -1
  44. package/transpiled/Secrets.d.ts +5 -0
  45. package/transpiled/Secrets.js +3 -0
  46. package/transpiled/Secrets.js.map +1 -0
  47. package/transpiled/Storage.d.ts +10 -19
  48. package/transpiled/Storage.js +47 -153
  49. package/transpiled/Storage.js.map +1 -1
  50. package/transpiled/deployment.d.ts +1 -1
  51. package/transpiled/deployment.js +40 -15
  52. package/transpiled/deployment.js.map +1 -1
  53. package/transpiled/errors.d.ts +2 -0
  54. package/transpiled/errors.js +6 -0
  55. package/transpiled/errors.js.map +1 -0
  56. package/transpiled/index.d.ts +1 -1
  57. package/transpiled/manifest.js +5 -2
  58. package/transpiled/manifest.js.map +1 -1
  59. package/transpiled/providers/Cloudinary.d.ts +42 -0
  60. package/transpiled/providers/Cloudinary.js +189 -0
  61. package/transpiled/providers/Cloudinary.js.map +1 -0
  62. package/transpiled/providers/Declaration.d.ts +3 -2
  63. package/transpiled/providers/FileSystem.d.ts +15 -7
  64. package/transpiled/providers/FileSystem.js +64 -24
  65. package/transpiled/providers/FileSystem.js.map +1 -1
  66. package/transpiled/providers/S3.d.ts +14 -14
  67. package/transpiled/providers/S3.js +62 -60
  68. package/transpiled/providers/S3.js.map +1 -1
  69. package/transpiled/providers/Temporary.d.ts +1 -2
  70. package/transpiled/providers/Temporary.js +2 -2
  71. package/transpiled/providers/Temporary.js.map +1 -1
  72. package/transpiled/providers/Test.d.ts +3 -3
  73. package/transpiled/providers/Test.js +2 -2
  74. package/transpiled/providers/Test.js.map +1 -1
  75. package/transpiled/providers/index.d.ts +6 -2
  76. package/transpiled/providers/index.js +2 -2
  77. package/transpiled/providers/index.js.map +1 -1
  78. package/transpiled/schemas.d.ts +1 -0
  79. package/transpiled/schemas.js +2 -1
  80. package/transpiled/schemas.js.map +1 -1
  81. package/transpiled/test/util.d.ts +70 -5
  82. package/transpiled/test/util.js +43 -4
  83. package/transpiled/test/util.js.map +1 -1
  84. package/transpiled/tsconfig.tsbuildinfo +1 -1
  85. package/source/providers/FileSystem.test.ts +0 -5
  86. package/source/providers/Memory.ts +0 -41
  87. package/source/providers/S3.test.ts +0 -133
  88. package/transpiled/providers/Memory.d.ts +0 -13
  89. package/transpiled/providers/Memory.js +0 -60
  90. package/transpiled/providers/Memory.js.map +0 -1
@@ -1,3 +1,5 @@
1
+ import type { Secrets } from '../Secrets';
2
+ import type { providers, S3Options, CloudinaryOptions, FileSystemOptions, TemporaryOptions } from '../providers';
1
3
  export declare const suites: ({
2
4
  run: true;
3
5
  provider: "tmp";
@@ -6,13 +8,12 @@ export declare const suites: ({
6
8
  endpoint?: undefined;
7
9
  region?: undefined;
8
10
  bucket?: undefined;
11
+ environment?: undefined;
12
+ type?: undefined;
13
+ prefix?: undefined;
14
+ transformations?: undefined;
9
15
  };
10
16
  secrets?: undefined;
11
- } | {
12
- run: true;
13
- provider: "mem";
14
- options?: undefined;
15
- secrets?: undefined;
16
17
  } | {
17
18
  run: boolean;
18
19
  provider: "s3";
@@ -21,9 +22,73 @@ export declare const suites: ({
21
22
  region: string;
22
23
  bucket: string;
23
24
  directory?: undefined;
25
+ environment?: undefined;
26
+ type?: undefined;
27
+ prefix?: undefined;
28
+ transformations?: undefined;
24
29
  };
25
30
  secrets: {
26
31
  ACCESS_KEY_ID: string;
27
32
  SECRET_ACCESS_KEY: string;
33
+ API_KEY?: undefined;
34
+ API_SECRET?: undefined;
35
+ };
36
+ } | {
37
+ run: boolean;
38
+ provider: "cloudinary";
39
+ options: {
40
+ environment: string;
41
+ type: "image";
42
+ prefix: string;
43
+ transformations: ({
44
+ extension: string;
45
+ transformation: {
46
+ width: string;
47
+ height: string;
48
+ zoom: string;
49
+ crop: string;
50
+ gravity: string;
51
+ fetch_format?: undefined;
52
+ };
53
+ optional: true;
54
+ } | {
55
+ extension: string;
56
+ transformation: {
57
+ width: string;
58
+ height: string;
59
+ zoom: string;
60
+ crop: string;
61
+ gravity?: undefined;
62
+ fetch_format?: undefined;
63
+ };
64
+ optional: true;
65
+ } | {
66
+ extension: string;
67
+ transformation: {
68
+ fetch_format: string;
69
+ width?: undefined;
70
+ height?: undefined;
71
+ zoom?: undefined;
72
+ crop?: undefined;
73
+ gravity?: undefined;
74
+ };
75
+ optional: true;
76
+ })[];
77
+ directory?: undefined;
78
+ endpoint?: undefined;
79
+ region?: undefined;
80
+ bucket?: undefined;
81
+ };
82
+ secrets: {
83
+ API_KEY: string;
84
+ API_SECRET: string;
85
+ ACCESS_KEY_ID?: undefined;
86
+ SECRET_ACCESS_KEY?: undefined;
28
87
  };
29
88
  })[];
89
+ export interface Suite {
90
+ run: boolean;
91
+ provider: keyof typeof providers;
92
+ options?: S3Options | CloudinaryOptions | FileSystemOptions | TemporaryOptions;
93
+ secrets?: Secrets;
94
+ }
@@ -15,10 +15,6 @@ exports.suites = [
15
15
  directory: 'toa-storages-temp'
16
16
  }
17
17
  },
18
- {
19
- run: true,
20
- provider: 'mem'
21
- },
22
18
  {
23
19
  run: process.env.RUN_S3 === '1',
24
20
  provider: 's3',
@@ -31,6 +27,49 @@ exports.suites = [
31
27
  ACCESS_KEY_ID: 'developer',
32
28
  SECRET_ACCESS_KEY: 'secret'
33
29
  }
30
+ },
31
+ {
32
+ run: process.env.RUN_CLOUDINARY === '1',
33
+ provider: 'cloudinary',
34
+ options: {
35
+ environment: 'dl5z4zgth',
36
+ type: 'image',
37
+ prefix: 'toa-dev',
38
+ transformations: [
39
+ {
40
+ extension: '(?<width>\\d*)x(?<height>\\d*)(z(?<zoom>\\d*))?',
41
+ transformation: {
42
+ width: '<width>',
43
+ height: '<height>',
44
+ zoom: '<zoom>',
45
+ crop: 'thumb',
46
+ gravity: 'face'
47
+ },
48
+ optional: true
49
+ },
50
+ {
51
+ extension: '\\[(?<width>\\d*)x(?<height>\\d*)\\](z(?<zoom>\\d+))?',
52
+ transformation: {
53
+ width: '<width>',
54
+ height: '<height>',
55
+ zoom: '<zoom>',
56
+ crop: 'fit'
57
+ },
58
+ optional: true
59
+ },
60
+ {
61
+ extension: '(?<format>jpeg|webp)',
62
+ transformation: {
63
+ fetch_format: '<format>'
64
+ },
65
+ optional: true
66
+ }
67
+ ]
68
+ },
69
+ secrets: {
70
+ API_KEY: process.env.CLOUDINARY_API_KEY ?? '',
71
+ API_SECRET: process.env.CLOUDINARY_API_SECRET ?? ''
72
+ }
34
73
  }
35
74
  // add more providers here, use `run` as a condition to run the test
36
75
  // e.g.: `run: process.env.ACCESS_KEY_ID !== undefined`
@@ -1 +1 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../../source/test/util.ts"],"names":[],"mappings":";;;;;;AAAA,yCAAgC;AAChC,oDAA2B;AAO3B,gBAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,IAAA,gBAAI,EAAC,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC,CAAA;AAEnC,QAAA,MAAM,GAAG;IACpB;QACE,GAAG,EAAE,IAAI;QACT,QAAQ,EAAE,KAAK;QACf,OAAO,EAAE;YACP,SAAS,EAAE,mBAAmB;SAC/B;KACF;IACD;QACE,GAAG,EAAE,IAAI;QACT,QAAQ,EAAE,KAAK;KAChB;IACD;QACE,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,MAAM,KAAK,GAAG;QAC/B,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE;YACP,QAAQ,EAAE,uBAAuB;YACjC,MAAM,EAAE,WAAW;YACnB,MAAM,EAAE,aAAa;SACtB;QACD,OAAO,EAAE;YACP,aAAa,EAAE,WAAW;YAC1B,iBAAiB,EAAE,QAAQ;SAC5B;KACF;IACD,oEAAoE;IACpE,uDAAuD;CACtC,CAAA"}
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../../source/test/util.ts"],"names":[],"mappings":";;;;;;AAAA,yCAAgC;AAChC,oDAA2B;AAU3B,gBAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,IAAA,gBAAI,EAAC,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC,CAAA;AAEnC,QAAA,MAAM,GAAG;IACpB;QACE,GAAG,EAAE,IAAI;QACT,QAAQ,EAAE,KAAK;QACf,OAAO,EAAE;YACP,SAAS,EAAE,mBAAmB;SAC/B;KACF;IACD;QACE,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,MAAM,KAAK,GAAG;QAC/B,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE;YACP,QAAQ,EAAE,uBAAuB;YACjC,MAAM,EAAE,WAAW;YACnB,MAAM,EAAE,aAAa;SACtB;QACD,OAAO,EAAE;YACP,aAAa,EAAE,WAAW;YAC1B,iBAAiB,EAAE,QAAQ;SAC5B;KACF;IACD;QACE,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc,KAAK,GAAG;QACvC,QAAQ,EAAE,YAAY;QACtB,OAAO,EAAE;YACP,WAAW,EAAE,WAAW;YACxB,IAAI,EAAE,OAAO;YACb,MAAM,EAAE,SAAS;YACjB,eAAe,EAAE;gBACf;oBACE,SAAS,EAAE,iDAAiD;oBAC5D,cAAc,EAAE;wBACd,KAAK,EAAE,SAAS;wBAChB,MAAM,EAAE,UAAU;wBAClB,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,OAAO;wBACb,OAAO,EAAE,MAAM;qBAChB;oBACD,QAAQ,EAAE,IAAI;iBACf;gBACD;oBACE,SAAS,EAAE,uDAAuD;oBAClE,cAAc,EAAE;wBACd,KAAK,EAAE,SAAS;wBAChB,MAAM,EAAE,UAAU;wBAClB,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,KAAK;qBACZ;oBACD,QAAQ,EAAE,IAAI;iBACf;gBACD;oBACE,SAAS,EAAE,sBAAsB;oBACjC,cAAc,EAAE;wBACd,YAAY,EAAE,UAAU;qBACzB;oBACD,QAAQ,EAAE,IAAI;iBACf;aACF;SACF;QACD,OAAO,EAAE;YACP,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAI,EAAE;YAC7C,UAAU,EAAE,OAAO,CAAC,GAAG,CAAC,qBAAqB,IAAI,EAAE;SACpD;KACF;IACD,oEAAoE;IACpE,uDAAuD;CACtC,CAAA"}