Browse Source

Forked minio npm package to @wekanteam/minio to update package dependencies. S3/MinIO support In Progress.

Thanks to xet7 !

Related #142
Lauri Ojansivu 2 years ago
parent
commit
cd1750f368
4 changed files with 54 additions and 65 deletions
  1. 2 2
      models/attachments.js
  2. 1 1
      models/lib/fileStoreStrategy.js
  3. 50 61
      package-lock.json
  4. 1 1
      package.json

+ 2 - 2
models/attachments.js

@@ -4,8 +4,8 @@ import { isFileValid } from './fileValidation';
 import { createBucket } from './lib/grid/createBucket';
 import fs from 'fs';
 import path from 'path';
-import { AttachmentStoreStrategyFilesystem, AttachmentStoreStrategyGridFs} from '/models/lib/attachmentStoreStrategy';
-import FileStoreStrategyFactory, {moveToStorage, rename, STORAGE_NAME_FILESYSTEM, STORAGE_NAME_GRIDFS} from '/models/lib/fileStoreStrategy';
+import { AttachmentStoreStrategyFilesystem, AttachmentStoreStrategyGridFs, AttachmentStoreStrategyS3 } from '/models/lib/attachmentStoreStrategy';
+import FileStoreStrategyFactory, {moveToStorage, rename, STORAGE_NAME_FILESYSTEM, STORAGE_NAME_GRIDFS, STORAGE_NAME_S3} from '/models/lib/fileStoreStrategy';
 
 let attachmentUploadExternalProgram;
 let attachmentUploadMimeTypes = [];

+ 1 - 1
models/lib/fileStoreStrategy.js

@@ -4,7 +4,7 @@ import { createObjectId } from './grid/createObjectId';
 import { httpStreamOutput } from './httpStream.js';
 //import {} from './s3/Server-side-file-store.js';
 import { ObjectID } from 'bson';
-var Minio = require('minio');
+var Minio = require('@wekanteam/minio');
 
 export const STORAGE_NAME_FILESYSTEM = "fs";
 export const STORAGE_NAME_GRIDFS     = "gridfs";

+ 50 - 61
package-lock.json

@@ -449,6 +449,29 @@
         "mermaid": "^9.3.0"
       }
     },
+    "@wekanteam/minio": {
+      "version": "7.0.34",
+      "resolved": "https://registry.npmjs.org/@wekanteam/minio/-/minio-7.0.34.tgz",
+      "integrity": "sha512-lL1FjJqUa387raM+0cVw+C9HvGWFP7tRZW1go8QP0f6y88iQ/eMdJkNk9ZzqQ1XsBZsMBJvVu+a1lF5M17vc3w==",
+      "requires": {
+        "async": "^3.1.0",
+        "block-stream2": "^2.0.0",
+        "browser-or-node": "^1.3.0",
+        "buffer-crc32": "^0.2.13",
+        "crypto-browserify": "^3.12.0",
+        "es6-error": "^4.1.1",
+        "fast-xml-parser": "^3.17.5",
+        "ipaddr.js": "^2.0.1",
+        "json-stream": "^1.0.0",
+        "lodash": "^4.17.21",
+        "mime-types": "^2.1.14",
+        "query-string": "^7.1.1",
+        "through2": "^3.0.1",
+        "web-encoding": "^1.1.5",
+        "xml": "^1.0.0",
+        "xml2js": "^0.4.15"
+      }
+    },
     "@zxing/text-encoding": {
       "version": "0.9.0",
       "resolved": "https://registry.npmjs.org/@zxing/text-encoding/-/text-encoding-0.9.0.tgz",
@@ -822,9 +845,9 @@
       }
     },
     "bson": {
-      "version": "4.7.1",
-      "resolved": "https://registry.npmjs.org/bson/-/bson-4.7.1.tgz",
-      "integrity": "sha512-XkuFtlCzi0WSy8D6PMhvrQ/q8VlZHN/2bJ/shJglwuA6TPD2ZP/hHLB7iDxOEWVINHN/UVTxP4pqZqOKMXPIXg==",
+      "version": "4.7.2",
+      "resolved": "https://registry.npmjs.org/bson/-/bson-4.7.2.tgz",
+      "integrity": "sha512-Ry9wCtIZ5kGqkJoi6aD8KjxFZEx78guTQDnpXWiNthsxzrxAK/i8E6pCHAIZTbaEFWcOCvbecMukfK7XUvyLpQ==",
       "requires": {
         "buffer": "^5.6.0"
       }
@@ -890,9 +913,9 @@
       "dev": true
     },
     "caniuse-lite": {
-      "version": "1.0.30001442",
-      "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001442.tgz",
-      "integrity": "sha512-239m03Pqy0hwxYPYR5JwOIxRJfLTWtle9FV8zosfV5pHg+/51uD4nxcUlM8+mWWGfwKtt8lJNHnD3cWw9VZ6ow=="
+      "version": "1.0.30001445",
+      "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001445.tgz",
+      "integrity": "sha512-8sdQIdMztYmzfTMO6KfLny878Ln9c2M0fc7EH60IjlP4Dc4PiCy7K2Vl3ITmWgOyPgVQKa5x+UP/KqFsxj4mBg=="
     },
     "chai": {
       "version": "4.3.7",
@@ -1144,9 +1167,9 @@
       "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw=="
     },
     "d3": {
-      "version": "7.8.0",
-      "resolved": "https://registry.npmjs.org/d3/-/d3-7.8.0.tgz",
-      "integrity": "sha512-a5rNemRadWkEfqnY5NsD4RdCP9vn8EIJ4I5Rl14U0uKH1SXqcNmk/h9aGaAF1O98lz6L9M0IeUcuPa9GUYbI5A==",
+      "version": "7.8.1",
+      "resolved": "https://registry.npmjs.org/d3/-/d3-7.8.1.tgz",
+      "integrity": "sha512-fdipulGWUYTZTxxU9gDJ2P4mpZL2u7Oqe6n2FI95Q8UY0AjbKNYjPHvhLOsvR+HcSao4vo3YYy4Bk9CWOrt1Vw==",
       "requires": {
         "d3-array": "3",
         "d3-axis": "3",
@@ -1219,9 +1242,9 @@
       "integrity": "sha512-zg/chbXyeBtMQ1LbD/WSoW2DpC3I0mpmPdW+ynRTj/x2DAWYrIY7qeZIHidozwV24m4iavr15lNwIwLxRmOxhA=="
     },
     "d3-contour": {
-      "version": "4.0.1",
-      "resolved": "https://registry.npmjs.org/d3-contour/-/d3-contour-4.0.1.tgz",
-      "integrity": "sha512-CMSllVHhBsqw3xrOCMXn5PCRZbLIMmsVj922YdqTiVMxi5jLHwg5y3mnZAC1Cm4xKgmx3sLjaSkuBKfZwx8LEQ==",
+      "version": "4.0.2",
+      "resolved": "https://registry.npmjs.org/d3-contour/-/d3-contour-4.0.2.tgz",
+      "integrity": "sha512-4EzFTRIikzs47RGmdxbeUvLWtGedDUNkTcmzoeyg4sP/dvCexO47AaQL7VKy/gul85TOxw+IBgA8US2xwbToNA==",
       "requires": {
         "d3-array": "^3.2.0"
       }
@@ -3406,40 +3429,6 @@
       "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz",
       "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g=="
     },
-    "minio": {
-      "version": "7.0.32",
-      "resolved": "https://registry.npmjs.org/minio/-/minio-7.0.32.tgz",
-      "integrity": "sha512-txa7Vr0N24MKzeAybP/wY1jxbLnfGHXwZYyfFXuMW55HX2+HOcKEIgH4hU6Qj/kiMgyXs/ozHjAuLIDrR8nwLg==",
-      "requires": {
-        "async": "^3.1.0",
-        "block-stream2": "^2.0.0",
-        "browser-or-node": "^1.3.0",
-        "buffer-crc32": "^0.2.13",
-        "crypto-browserify": "^3.12.0",
-        "es6-error": "^4.1.1",
-        "fast-xml-parser": "^3.17.5",
-        "ipaddr.js": "^2.0.1",
-        "json-stream": "^1.0.0",
-        "lodash": "^4.17.21",
-        "mime-types": "^2.1.14",
-        "mkdirp": "^0.5.1",
-        "query-string": "^7.1.1",
-        "through2": "^3.0.1",
-        "web-encoding": "^1.1.5",
-        "xml": "^1.0.0",
-        "xml2js": "^0.4.15"
-      },
-      "dependencies": {
-        "mkdirp": {
-          "version": "0.5.6",
-          "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz",
-          "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==",
-          "requires": {
-            "minimist": "^1.2.6"
-          }
-        }
-      }
-    },
     "minipass": {
       "version": "4.0.0",
       "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.0.0.tgz",
@@ -3614,9 +3603,9 @@
       }
     },
     "node-fetch": {
-      "version": "2.6.7",
-      "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz",
-      "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==",
+      "version": "2.6.8",
+      "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.8.tgz",
+      "integrity": "sha512-RZ6dBYuj8dRSfxpUSu+NsdF1dpPpluJxwOp+6IoDp/sH2QNDSvurYsAa+F1WxY2RjA1iP93xhcsUoYbF2XBqVg==",
       "requires": {
         "whatwg-url": "^5.0.0"
       }
@@ -3627,9 +3616,9 @@
       "integrity": "sha512-dFSmB8fFHEH/s81Xi+Y/15DQY6VHW81nXRj86EMSL3lmuTmK1e+aT4wrFCkTbm+gSwkw4KpX+rT/pMM2c1mF+A=="
     },
     "nodemailer": {
-      "version": "6.8.0",
-      "resolved": "https://registry.npmjs.org/nodemailer/-/nodemailer-6.8.0.tgz",
-      "integrity": "sha512-EjYvSmHzekz6VNkNd12aUqAco+bOkRe3Of5jVhltqKhEsjw/y0PYPJfp83+s9Wzh1dspYAkUW/YNQ350NATbSQ=="
+      "version": "6.9.0",
+      "resolved": "https://registry.npmjs.org/nodemailer/-/nodemailer-6.9.0.tgz",
+      "integrity": "sha512-jFaCEGTeT3E/m/5R2MHWiyQH3pSARECRUDM+1hokOYc3lQAAG7ASuy+2jIsYVf+RVa9zePopSQwKNVFH8DKUpA=="
     },
     "non-layered-tidy-tree-layout": {
       "version": "2.0.2",
@@ -3674,9 +3663,9 @@
       "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg=="
     },
     "object-inspect": {
-      "version": "1.12.2",
-      "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz",
-      "integrity": "sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ=="
+      "version": "1.12.3",
+      "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz",
+      "integrity": "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g=="
     },
     "once": {
       "version": "1.4.0",
@@ -3856,9 +3845,9 @@
       }
     },
     "punycode": {
-      "version": "2.1.1",
-      "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz",
-      "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A=="
+      "version": "2.2.0",
+      "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.2.0.tgz",
+      "integrity": "sha512-LN6QV1IJ9ZhxWTNdktaPClrNfp8xdSAYS0Zk2ddX7XsXZAxckMHPCBcHRo0cTcEIgYPRiGEkmji3Idkh2yFtYw=="
     },
     "qs": {
       "version": "6.11.0",
@@ -3931,9 +3920,9 @@
           }
         },
         "minimatch": {
-          "version": "5.1.2",
-          "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.2.tgz",
-          "integrity": "sha512-bNH9mmM9qsJ2X4r2Nat1B//1dJVcn3+iBLa3IgqJ7EbGaDNepL9QSHOxN4ng33s52VMMhhIfgCYDk3C4ZmlDAg==",
+          "version": "5.1.4",
+          "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.4.tgz",
+          "integrity": "sha512-U0iNYXt9wALljzfnGkhFSy5sAC6/SCR3JrHrlsdJz4kF8MvhTRQNiC59iUi1iqsitV7abrNAJWElVL9pdnoUgw==",
           "requires": {
             "brace-expansion": "^2.0.1"
           }

+ 1 - 1
package.json

@@ -25,6 +25,7 @@
     "@babel/runtime": "^7.15.4",
     "@mapbox/node-pre-gyp": "^1.0.8",
     "@wekanteam/markdown-it-mermaid": "^0.6.2",
+    "@wekanteam/minio": "^7.0.34",
     "ajv": "^6.12.6",
     "babel-runtime": "^6.26.0",
     "bcryptjs": "^2.4.3",
@@ -50,7 +51,6 @@
     "markdown-it-mathjax3": "^4.3.1",
     "meteor-accounts-t9n": "^2.6.0",
     "meteor-node-stubs": "^1.1.0",
-    "minio": "^7.0.32",
     "moment": "^2.29.4",
     "nodemailer": "^6.6.3",
     "os": "^0.1.2",