mirror of
https://gitlab.com/timvisee/send.git
synced 2025-12-06 14:10:53 +03:00
Compare commits
12 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
638f68334a | ||
|
|
d2907c6d8b | ||
|
|
4b05a2f705 | ||
|
|
6960cc75fa | ||
|
|
7f3da34318 | ||
|
|
4369baa258 | ||
|
|
6f1942a446 | ||
|
|
b6d2e7c1ca | ||
|
|
58dd5b7a70 | ||
|
|
4f3a2e4fc1 | ||
|
|
a798b14620 | ||
|
|
2bc1a13ae6 |
15
README.md
15
README.md
@@ -68,7 +68,7 @@ Thanks [Mozilla][mozilla] for building this amazing tool!
|
||||
* [Contributing](#contributing)
|
||||
* [Testing](#testing)
|
||||
* [Deployment](#deployment)
|
||||
* [Android](#android)
|
||||
* [Clients](#clients)
|
||||
* [License](#license)
|
||||
|
||||
---
|
||||
@@ -149,9 +149,18 @@ see also [docs/deployment.md](docs/deployment.md)
|
||||
|
||||
---
|
||||
|
||||
## Android
|
||||
## Clients
|
||||
|
||||
The android implementation is contained in the `android` directory, and can be viewed locally for easy testing and editing by running `ANDROID=1 npm start` and then visiting <http://localhost:8080>. CSS and image files are located in the `android/app/src/main/assets` directory.
|
||||
- Web: _this repository_
|
||||
- Command-line: [`ffsend`](https://github.com/timvisee/ffsend)
|
||||
- Android: _see [Android](#android) section_
|
||||
|
||||
#### Android
|
||||
|
||||
The android implementation is contained in the `android` directory,
|
||||
and can be viewed locally for easy testing and editing by running `ANDROID=1 npm
|
||||
start` and then visiting <http://localhost:8080>. CSS and image files are
|
||||
located in the `android/app/src/main/assets` directory.
|
||||
|
||||
---
|
||||
|
||||
|
||||
@@ -69,9 +69,10 @@ function body(main) {
|
||||
(async function start() {
|
||||
const translate = await getTranslator('en-US');
|
||||
setTranslate(translate);
|
||||
const { LIMITS, DEFAULTS } = await getConstants();
|
||||
const { LIMITS, WEB_UI, DEFAULTS } = await getConstants();
|
||||
app.use(state => {
|
||||
state.LIMITS = LIMITS;
|
||||
state.WEB_UI = WEB_UI;
|
||||
state.DEFAULTS = DEFAULTS;
|
||||
state.translate = translate;
|
||||
state.capabilities = {
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
/* global DEFAULTS LIMITS PREFS */
|
||||
/* global DEFAULTS LIMITS WEB_UI PREFS */
|
||||
import 'core-js';
|
||||
import 'fast-text-encoding'; // MS Edge support
|
||||
import 'intl-pluralrules';
|
||||
@@ -51,6 +51,7 @@ if (process.env.NODE_ENV === 'production') {
|
||||
window.initialState = {
|
||||
LIMITS,
|
||||
DEFAULTS,
|
||||
WEB_UI,
|
||||
PREFS,
|
||||
archive: new Archive([], DEFAULTS.EXPIRE_SECONDS),
|
||||
capabilities,
|
||||
|
||||
@@ -13,6 +13,58 @@ class Footer extends Component {
|
||||
|
||||
createElement() {
|
||||
const translate = this.state.translate;
|
||||
|
||||
// Add additional links from configuration if available
|
||||
var links = [];
|
||||
if (this.state != undefined && this.state.WEB_UI != undefined) {
|
||||
const WEB_UI = this.state.WEB_UI;
|
||||
|
||||
if (WEB_UI.FOOTER_DONATE_URL != '') {
|
||||
links.push(html`
|
||||
<li class="m-2">
|
||||
<a href="${WEB_UI.FOOTER_DONATE_URL}" target="_blank">
|
||||
${translate('footerLinkDonate')}
|
||||
</a>
|
||||
</li>
|
||||
`);
|
||||
}
|
||||
if (WEB_UI.FOOTER_CLI_URL != '') {
|
||||
links.push(html`
|
||||
<li class="m-2">
|
||||
<a href="${WEB_UI.FOOTER_CLI_URL}" target="_blank">
|
||||
${translate('footerLinkCli')}
|
||||
</a>
|
||||
</li>
|
||||
`);
|
||||
}
|
||||
if (WEB_UI.FOOTER_DMCA_URL != '') {
|
||||
links.push(html`
|
||||
<li class="m-2">
|
||||
<a href="${WEB_UI.FOOTER_DMCA_URL}" target="_blank">
|
||||
${translate('footerLinkDmca')}
|
||||
</a>
|
||||
</li>
|
||||
`);
|
||||
}
|
||||
if (WEB_UI.FOOTER_SOURCE_URL != '') {
|
||||
links.push(html`
|
||||
<li class="m-2">
|
||||
<a href="${WEB_UI.FOOTER_SOURCE_URL}" target="_blank">
|
||||
${translate('footerLinkSource')}
|
||||
</a>
|
||||
</li>
|
||||
`);
|
||||
}
|
||||
} else {
|
||||
links.push(html`
|
||||
<li class="m-2">
|
||||
<a href="https://gitlab.com/timvisee/send" target="_blank">
|
||||
${translate('footerLinkSource')}
|
||||
</a>
|
||||
</li>
|
||||
`);
|
||||
}
|
||||
|
||||
return html`
|
||||
<footer
|
||||
class="flex flex-col md:flex-row items-start w-full flex-none self-start p-6 md:p-8 font-medium text-xs text-grey-60 dark:text-grey-40 md:items-center justify-between"
|
||||
@@ -21,11 +73,7 @@ class Footer extends Component {
|
||||
<ul
|
||||
class="flex flex-col md:flex-row items-start md:items-center md:justify-end"
|
||||
>
|
||||
<li class="m-2">
|
||||
<a href="https://gitlab.com/timvisee/send"
|
||||
>${translate('footerLinkSource')}</a
|
||||
>
|
||||
</li>
|
||||
${links}
|
||||
</ul>
|
||||
</footer>
|
||||
`;
|
||||
|
||||
@@ -16,6 +16,7 @@ class Header extends Component {
|
||||
this.account.render();
|
||||
return false;
|
||||
}
|
||||
|
||||
createElement() {
|
||||
const title =
|
||||
platform() === 'android'
|
||||
|
||||
@@ -12,18 +12,24 @@ Or run `docker build -t send:latest .` to create an image locally or `docker-com
|
||||
|
||||
| Name | Description
|
||||
|------------------|-------------|
|
||||
| `BASE_URL` | The HTTPS URL where traffic will be served (e.g. `https://send.firefox.com`)
|
||||
| `PORT` | Port the server will listen on (defaults to 1443).
|
||||
| `NODE_ENV` | `"production"`
|
||||
| `FILE_DIR` | Uploads directory for local storage
|
||||
| `S3_BUCKET` | The S3 bucket name.
|
||||
| `S3_ENDPOINT`| Optional custom S3 endpoint host.
|
||||
| `S3_USE_PATH_STYLE_ENDPOINTS`| `true` or `false`
|
||||
| `AWS_ACCESS_KEY_ID` | S3 access key ID
|
||||
| `AWS_SECRET_ACCESS_KEY` | S3 secret access key ID
|
||||
| `MAX_FILE_SIZE` | Maximum upload file size in bytes (defaults to 2147483648)
|
||||
| `MAX_EXPIRE_SECONDS` | Maximum upload expiry time in seconds (defaults to 604800)
|
||||
| `REDIS_HOST` | Host name of the Redis server.
|
||||
| `SENTRY_CLIENT` | Sentry Client ID
|
||||
| `SENTRY_DSN` | Sentry DSN
|
||||
| `MAX_FILE_SIZE` | in bytes (defaults to 2147483648)
|
||||
| `NODE_ENV` | "production"
|
||||
| `BASE_URL` | The HTTPS URL where traffic will be served (e.g. `https://send.firefox.com`)
|
||||
|
||||
## Example:
|
||||
|
||||
```sh
|
||||
```bash
|
||||
$ docker run --net=host -e 'NODE_ENV=production' \
|
||||
-e 'S3_BUCKET=testpilot-p2p-dev' \
|
||||
-e 'REDIS_HOST=dyf9s2r4vo3.bolxr4.0001.usw2.cache.amazonaws.com' \
|
||||
@@ -32,3 +38,9 @@ $ docker run --net=host -e 'NODE_ENV=production' \
|
||||
-e 'BASE_URL=https://send.firefox.com' \
|
||||
registry.gitlab.com/timvisee/send:latest
|
||||
```
|
||||
|
||||
## Docker compose
|
||||
|
||||
For a Docker compose configuration example, see:
|
||||
|
||||
https://github.com/timvisee/send-docker-compose
|
||||
|
||||
349
package-lock.json
generated
349
package-lock.json
generated
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "send",
|
||||
"version": "3.4.0",
|
||||
"version": "3.4.1",
|
||||
"lockfileVersion": 1,
|
||||
"requires": true,
|
||||
"dependencies": {
|
||||
@@ -2922,14 +2922,15 @@
|
||||
"integrity": "sha512-d4VSA86eL/AFTe5xtyZX+ePUjE8dIFu2T8zmdeNBSa5/kNgXPCx/o/wbFNHAGLJdGnk1vddRuMESD9HbOC8irw=="
|
||||
},
|
||||
"@google-cloud/storage": {
|
||||
"version": "5.7.1",
|
||||
"resolved": "https://registry.npmjs.org/@google-cloud/storage/-/storage-5.7.1.tgz",
|
||||
"integrity": "sha512-/HmQNwmyP9eyD7emU/X0tXS2P4BTrcRVYwyygDhcX2pmV73hXL6BklsrkMPYU8ZdgGQgMYVZXboFFGOIanoTYA==",
|
||||
"version": "5.7.3",
|
||||
"resolved": "https://registry.npmjs.org/@google-cloud/storage/-/storage-5.7.3.tgz",
|
||||
"integrity": "sha512-1or09kfx8bmSMG5MvTCiuooCfS0btDtchvwQpIx/iF2IogzmFhLFFtmCeEpstTsfql6bHAnvN8Up7W5+9kMgdA==",
|
||||
"requires": {
|
||||
"@google-cloud/common": "^3.5.0",
|
||||
"@google-cloud/paginator": "^3.0.0",
|
||||
"@google-cloud/promisify": "^2.0.0",
|
||||
"arrify": "^2.0.0",
|
||||
"async-retry": "^1.3.1",
|
||||
"compressible": "^2.0.12",
|
||||
"date-and-time": "^0.14.2",
|
||||
"duplexify": "^4.0.0",
|
||||
@@ -3019,59 +3020,59 @@
|
||||
}
|
||||
},
|
||||
"@sentry/browser": {
|
||||
"version": "5.29.2",
|
||||
"resolved": "https://registry.npmjs.org/@sentry/browser/-/browser-5.29.2.tgz",
|
||||
"integrity": "sha512-uxZ7y7rp85tJll+RZtXRhXPbnFnOaxZqJEv05vJlXBtBNLQtlczV5iCtU9mZRLVHDtmZ5VVKUV8IKXntEqqDpQ==",
|
||||
"version": "5.30.0",
|
||||
"resolved": "https://registry.npmjs.org/@sentry/browser/-/browser-5.30.0.tgz",
|
||||
"integrity": "sha512-rOb58ZNVJWh1VuMuBG1mL9r54nZqKeaIlwSlvzJfc89vyfd7n6tQ1UXMN383QBz/MS5H5z44Hy5eE+7pCrYAfw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@sentry/core": "5.29.2",
|
||||
"@sentry/types": "5.29.2",
|
||||
"@sentry/utils": "5.29.2",
|
||||
"@sentry/core": "5.30.0",
|
||||
"@sentry/types": "5.30.0",
|
||||
"@sentry/utils": "5.30.0",
|
||||
"tslib": "^1.9.3"
|
||||
}
|
||||
},
|
||||
"@sentry/core": {
|
||||
"version": "5.29.2",
|
||||
"resolved": "https://registry.npmjs.org/@sentry/core/-/core-5.29.2.tgz",
|
||||
"integrity": "sha512-7WYkoxB5IdlNEbwOwqSU64erUKH4laavPsM0/yQ+jojM76ErxlgEF0u//p5WaLPRzh3iDSt6BH+9TL45oNZeZw==",
|
||||
"version": "5.30.0",
|
||||
"resolved": "https://registry.npmjs.org/@sentry/core/-/core-5.30.0.tgz",
|
||||
"integrity": "sha512-TmfrII8w1PQZSZgPpUESqjB+jC6MvZJZdLtE/0hZ+SrnKhW3x5WlYLvTXZpcWePYBku7rl2wn1RZu6uT0qCTeg==",
|
||||
"requires": {
|
||||
"@sentry/hub": "5.29.2",
|
||||
"@sentry/minimal": "5.29.2",
|
||||
"@sentry/types": "5.29.2",
|
||||
"@sentry/utils": "5.29.2",
|
||||
"@sentry/hub": "5.30.0",
|
||||
"@sentry/minimal": "5.30.0",
|
||||
"@sentry/types": "5.30.0",
|
||||
"@sentry/utils": "5.30.0",
|
||||
"tslib": "^1.9.3"
|
||||
}
|
||||
},
|
||||
"@sentry/hub": {
|
||||
"version": "5.29.2",
|
||||
"resolved": "https://registry.npmjs.org/@sentry/hub/-/hub-5.29.2.tgz",
|
||||
"integrity": "sha512-LaAIo2hwUk9ykeh9RF0cwLy6IRw+DjEee8l1HfEaDFUM6TPGlNNGObMJNXb9/95jzWp7jWwOpQjoIE3jepdQJQ==",
|
||||
"version": "5.30.0",
|
||||
"resolved": "https://registry.npmjs.org/@sentry/hub/-/hub-5.30.0.tgz",
|
||||
"integrity": "sha512-2tYrGnzb1gKz2EkMDQcfLrDTvmGcQPuWxLnJKXJvYTQDGLlEvi2tWz1VIHjunmOvJrB5aIQLhm+dcMRwFZDCqQ==",
|
||||
"requires": {
|
||||
"@sentry/types": "5.29.2",
|
||||
"@sentry/utils": "5.29.2",
|
||||
"@sentry/types": "5.30.0",
|
||||
"@sentry/utils": "5.30.0",
|
||||
"tslib": "^1.9.3"
|
||||
}
|
||||
},
|
||||
"@sentry/minimal": {
|
||||
"version": "5.29.2",
|
||||
"resolved": "https://registry.npmjs.org/@sentry/minimal/-/minimal-5.29.2.tgz",
|
||||
"integrity": "sha512-0aINSm8fGA1KyM7PavOBe1GDZDxrvnKt+oFnU0L+bTcw8Lr+of+v6Kwd97rkLRNOLw621xP076dL/7LSIzMuhw==",
|
||||
"version": "5.30.0",
|
||||
"resolved": "https://registry.npmjs.org/@sentry/minimal/-/minimal-5.30.0.tgz",
|
||||
"integrity": "sha512-BwWb/owZKtkDX+Sc4zCSTNcvZUq7YcH3uAVlmh/gtR9rmUvbzAA3ewLuB3myi4wWRAMEtny6+J/FN/x+2wn9Xw==",
|
||||
"requires": {
|
||||
"@sentry/hub": "5.29.2",
|
||||
"@sentry/types": "5.29.2",
|
||||
"@sentry/hub": "5.30.0",
|
||||
"@sentry/types": "5.30.0",
|
||||
"tslib": "^1.9.3"
|
||||
}
|
||||
},
|
||||
"@sentry/node": {
|
||||
"version": "5.29.2",
|
||||
"resolved": "https://registry.npmjs.org/@sentry/node/-/node-5.29.2.tgz",
|
||||
"integrity": "sha512-98m1ZejmJgA+eiz6jEFyYYfp6kJZQnx6d6KrJDMxGfss4YTmmJY57bE4xStnjjk7WINDGzlCiHuk+wJFMBjuoA==",
|
||||
"version": "5.30.0",
|
||||
"resolved": "https://registry.npmjs.org/@sentry/node/-/node-5.30.0.tgz",
|
||||
"integrity": "sha512-Br5oyVBF0fZo6ZS9bxbJZG4ApAjRqAnqFFurMVJJdunNb80brh7a5Qva2kjhm+U6r9NJAB5OmDyPkA1Qnt+QVg==",
|
||||
"requires": {
|
||||
"@sentry/core": "5.29.2",
|
||||
"@sentry/hub": "5.29.2",
|
||||
"@sentry/tracing": "5.29.2",
|
||||
"@sentry/types": "5.29.2",
|
||||
"@sentry/utils": "5.29.2",
|
||||
"@sentry/core": "5.30.0",
|
||||
"@sentry/hub": "5.30.0",
|
||||
"@sentry/tracing": "5.30.0",
|
||||
"@sentry/types": "5.30.0",
|
||||
"@sentry/utils": "5.30.0",
|
||||
"cookie": "^0.4.1",
|
||||
"https-proxy-agent": "^5.0.0",
|
||||
"lru_map": "^0.3.3",
|
||||
@@ -3079,28 +3080,28 @@
|
||||
}
|
||||
},
|
||||
"@sentry/tracing": {
|
||||
"version": "5.29.2",
|
||||
"resolved": "https://registry.npmjs.org/@sentry/tracing/-/tracing-5.29.2.tgz",
|
||||
"integrity": "sha512-iumYbVRpvoU3BUuIooxibydeaOOjl5ysc+mzsqhRs2NGW/C3uKAsFXdvyNfqt3bxtRQwJEhwJByLP2u3pLThpw==",
|
||||
"version": "5.30.0",
|
||||
"resolved": "https://registry.npmjs.org/@sentry/tracing/-/tracing-5.30.0.tgz",
|
||||
"integrity": "sha512-dUFowCr0AIMwiLD7Fs314Mdzcug+gBVo/+NCMyDw8tFxJkwWAKl7Qa2OZxLQ0ZHjakcj1hNKfCQJ9rhyfOl4Aw==",
|
||||
"requires": {
|
||||
"@sentry/hub": "5.29.2",
|
||||
"@sentry/minimal": "5.29.2",
|
||||
"@sentry/types": "5.29.2",
|
||||
"@sentry/utils": "5.29.2",
|
||||
"@sentry/hub": "5.30.0",
|
||||
"@sentry/minimal": "5.30.0",
|
||||
"@sentry/types": "5.30.0",
|
||||
"@sentry/utils": "5.30.0",
|
||||
"tslib": "^1.9.3"
|
||||
}
|
||||
},
|
||||
"@sentry/types": {
|
||||
"version": "5.29.2",
|
||||
"resolved": "https://registry.npmjs.org/@sentry/types/-/types-5.29.2.tgz",
|
||||
"integrity": "sha512-dM9wgt8wy4WRty75QkqQgrw9FV9F+BOMfmc0iaX13Qos7i6Qs2Q0dxtJ83SoR4YGtW8URaHzlDtWlGs5egBiMA=="
|
||||
"version": "5.30.0",
|
||||
"resolved": "https://registry.npmjs.org/@sentry/types/-/types-5.30.0.tgz",
|
||||
"integrity": "sha512-R8xOqlSTZ+htqrfteCWU5Nk0CDN5ApUTvrlvBuiH1DyP6czDZ4ktbZB0hAgBlVcK0U+qpD3ag3Tqqpa5Q67rPw=="
|
||||
},
|
||||
"@sentry/utils": {
|
||||
"version": "5.29.2",
|
||||
"resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-5.29.2.tgz",
|
||||
"integrity": "sha512-nEwQIDjtFkeE4k6yIk4Ka5XjGRklNLThWLs2xfXlL7uwrYOH2B9UBBOOIRUraBm/g/Xrra3xsam/kRxuiwtXZQ==",
|
||||
"version": "5.30.0",
|
||||
"resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-5.30.0.tgz",
|
||||
"integrity": "sha512-zaYmoH0NWWtvnJjC9/CBseXMtKHm/tm40sz3YfJRxeQjyzRqNQPgivpd9R/oDJCYj999mzdW382p/qi2ypjLww==",
|
||||
"requires": {
|
||||
"@sentry/types": "5.29.2",
|
||||
"@sentry/types": "5.30.0",
|
||||
"tslib": "^1.9.3"
|
||||
}
|
||||
},
|
||||
@@ -3938,6 +3939,14 @@
|
||||
"integrity": "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==",
|
||||
"dev": true
|
||||
},
|
||||
"async-retry": {
|
||||
"version": "1.3.1",
|
||||
"resolved": "https://registry.npmjs.org/async-retry/-/async-retry-1.3.1.tgz",
|
||||
"integrity": "sha512-aiieFW/7h3hY0Bq5d+ktDBejxuwR78vRu9hDUdR8rNhSaQ29VzPL4AoIRG7D/c7tdenwOcKvgPM6tIxB3cB6HA==",
|
||||
"requires": {
|
||||
"retry": "0.12.0"
|
||||
}
|
||||
},
|
||||
"atob": {
|
||||
"version": "2.1.2",
|
||||
"resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz",
|
||||
@@ -3991,9 +4000,9 @@
|
||||
}
|
||||
},
|
||||
"aws-sdk": {
|
||||
"version": "2.824.0",
|
||||
"resolved": "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.824.0.tgz",
|
||||
"integrity": "sha512-9KNRQBkIMPn+6DWb4gR+RzqTMNyGLEwOgXbE4dDehOIAflfLnv3IFwLnzrhxJnleB4guYrILIsBroJFBzjiekg==",
|
||||
"version": "2.831.0",
|
||||
"resolved": "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.831.0.tgz",
|
||||
"integrity": "sha512-lrOjbGFpjk2xpESyUx2PGsTZgptCy5xycZazPeakNbFO19cOoxjHx3xyxOHsMCYb3pQwns35UvChQT60B4u6cw==",
|
||||
"requires": {
|
||||
"buffer": "4.9.2",
|
||||
"events": "1.1.1",
|
||||
@@ -6174,9 +6183,9 @@
|
||||
}
|
||||
},
|
||||
"core-js": {
|
||||
"version": "3.8.2",
|
||||
"resolved": "https://registry.npmjs.org/core-js/-/core-js-3.8.2.tgz",
|
||||
"integrity": "sha512-FfApuSRgrR6G5s58casCBd9M2k+4ikuu4wbW6pJyYU7bd9zvFc9qf7vr5xmrZOhT9nn+8uwlH1oRR9jTnFoA3A==",
|
||||
"version": "3.8.3",
|
||||
"resolved": "https://registry.npmjs.org/core-js/-/core-js-3.8.3.tgz",
|
||||
"integrity": "sha512-KPYXeVZYemC2TkNEkX/01I+7yd+nX3KddKwZ1Ww7SKWdI2wQprSgLmrTddT8nw92AjEklTsPBoSdQBhbI1bQ6Q==",
|
||||
"dev": true
|
||||
},
|
||||
"core-js-compat": {
|
||||
@@ -9210,12 +9219,6 @@
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"ini": {
|
||||
"version": "1.3.5",
|
||||
"bundled": true,
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"is-fullwidth-code-point": {
|
||||
"version": "1.0.0",
|
||||
"bundled": true,
|
||||
@@ -9597,31 +9600,17 @@
|
||||
}
|
||||
},
|
||||
"gcs-resumable-upload": {
|
||||
"version": "3.1.1",
|
||||
"resolved": "https://registry.npmjs.org/gcs-resumable-upload/-/gcs-resumable-upload-3.1.1.tgz",
|
||||
"integrity": "sha512-RS1osvAicj9+MjCc6jAcVL1Pt3tg7NK2C2gXM5nqD1Gs0klF2kj5nnAFSBy97JrtslMIQzpb7iSuxaG8rFWd2A==",
|
||||
"version": "3.1.2",
|
||||
"resolved": "https://registry.npmjs.org/gcs-resumable-upload/-/gcs-resumable-upload-3.1.2.tgz",
|
||||
"integrity": "sha512-VKWP3Xju1JmNX3N4ossnGp3DfIRZjOsMj8sDGPBGnvn8YSruCOVGQBvELfStfIFPybScv/e5sEdWx/qzfnS3+w==",
|
||||
"requires": {
|
||||
"abort-controller": "^3.0.0",
|
||||
"configstore": "^5.0.0",
|
||||
"extend": "^3.0.2",
|
||||
"gaxios": "^3.0.0",
|
||||
"gaxios": "^4.0.0",
|
||||
"google-auth-library": "^6.0.0",
|
||||
"pumpify": "^2.0.0",
|
||||
"stream-events": "^1.0.4"
|
||||
},
|
||||
"dependencies": {
|
||||
"gaxios": {
|
||||
"version": "3.2.0",
|
||||
"resolved": "https://registry.npmjs.org/gaxios/-/gaxios-3.2.0.tgz",
|
||||
"integrity": "sha512-+6WPeVzPvOshftpxJwRi2Ozez80tn/hdtOUag7+gajDHRJvAblKxTFSSMPtr2hmnLy7p0mvYz0rMXLBl8pSO7Q==",
|
||||
"requires": {
|
||||
"abort-controller": "^3.0.0",
|
||||
"extend": "^3.0.2",
|
||||
"https-proxy-agent": "^5.0.0",
|
||||
"is-stream": "^2.0.0",
|
||||
"node-fetch": "^2.3.0"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"gensync": {
|
||||
@@ -9790,9 +9779,9 @@
|
||||
}
|
||||
},
|
||||
"google-auth-library": {
|
||||
"version": "6.1.4",
|
||||
"resolved": "https://registry.npmjs.org/google-auth-library/-/google-auth-library-6.1.4.tgz",
|
||||
"integrity": "sha512-q0kYtGWnDd9XquwiQGAZeI2Jnglk7NDi0cChE4tWp6Kpo/kbqnt9scJb0HP+/xqt03Beqw/xQah1OPrci+pOxw==",
|
||||
"version": "6.1.5",
|
||||
"resolved": "https://registry.npmjs.org/google-auth-library/-/google-auth-library-6.1.5.tgz",
|
||||
"integrity": "sha512-vlizrMSlHIu6blPtSC9AJZ1xYQWqUp1xqhcMzYff+hNKTSqVlsynMQIE8BdCo/FhPib4U1fvv1gnczMDHB2Wmg==",
|
||||
"requires": {
|
||||
"arrify": "^2.0.0",
|
||||
"base64-js": "^1.3.0",
|
||||
@@ -9859,14 +9848,13 @@
|
||||
"dev": true
|
||||
},
|
||||
"gtoken": {
|
||||
"version": "5.1.0",
|
||||
"resolved": "https://registry.npmjs.org/gtoken/-/gtoken-5.1.0.tgz",
|
||||
"integrity": "sha512-4d8N6Lk8TEAHl9vVoRVMh9BNOKWVgl2DdNtr3428O75r3QFrF/a5MMu851VmK0AA8+iSvbwRv69k5XnMLURGhg==",
|
||||
"version": "5.2.1",
|
||||
"resolved": "https://registry.npmjs.org/gtoken/-/gtoken-5.2.1.tgz",
|
||||
"integrity": "sha512-OY0BfPKe3QnMsY9MzTHTSKn+Vl2l1CcLe6BwDEQj00mbbkl5nyQ/7EUREstg4fQNZ8iYE7br4JJ7TdKeDOPWmw==",
|
||||
"requires": {
|
||||
"gaxios": "^4.0.0",
|
||||
"google-p12-pem": "^3.0.3",
|
||||
"jws": "^4.0.0",
|
||||
"mime": "^2.2.0"
|
||||
"jws": "^4.0.0"
|
||||
}
|
||||
},
|
||||
"handle-thing": {
|
||||
@@ -10733,9 +10721,9 @@
|
||||
"integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
|
||||
},
|
||||
"ini": {
|
||||
"version": "1.3.5",
|
||||
"resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz",
|
||||
"integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==",
|
||||
"version": "1.3.8",
|
||||
"resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz",
|
||||
"integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==",
|
||||
"dev": true
|
||||
},
|
||||
"inquirer": {
|
||||
@@ -12313,21 +12301,22 @@
|
||||
}
|
||||
},
|
||||
"mdast-util-from-markdown": {
|
||||
"version": "0.8.1",
|
||||
"resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-0.8.1.tgz",
|
||||
"integrity": "sha512-qJXNcFcuCSPqUF0Tb0uYcFDIq67qwB3sxo9RPdf9vG8T90ViKnksFqdB/Coq2a7sTnxL/Ify2y7aIQXDkQFH0w==",
|
||||
"version": "0.8.4",
|
||||
"resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-0.8.4.tgz",
|
||||
"integrity": "sha512-jj891B5pV2r63n2kBTFh8cRI2uR9LQHsXG1zSDqfhXkIlDzrTcIlbB5+5aaYEkl8vOPIOPLf8VT7Ere1wWTMdw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@types/mdast": "^3.0.0",
|
||||
"mdast-util-to-string": "^1.0.0",
|
||||
"micromark": "~2.10.0",
|
||||
"parse-entities": "^2.0.0"
|
||||
"mdast-util-to-string": "^2.0.0",
|
||||
"micromark": "~2.11.0",
|
||||
"parse-entities": "^2.0.0",
|
||||
"unist-util-stringify-position": "^2.0.0"
|
||||
}
|
||||
},
|
||||
"mdast-util-to-markdown": {
|
||||
"version": "0.5.4",
|
||||
"resolved": "https://registry.npmjs.org/mdast-util-to-markdown/-/mdast-util-to-markdown-0.5.4.tgz",
|
||||
"integrity": "sha512-0jQTkbWYx0HdEA/h++7faebJWr5JyBoBeiRf0u3F4F3QtnyyGaWIsOwo749kRb1ttKrLLr+wRtOkfou9yB0p6A==",
|
||||
"version": "0.6.2",
|
||||
"resolved": "https://registry.npmjs.org/mdast-util-to-markdown/-/mdast-util-to-markdown-0.6.2.tgz",
|
||||
"integrity": "sha512-iRczns6WMvu0hUw02LXsPDJshBIwtUPbvHBWo19IQeU0YqmzlA8Pd30U8V7uiI0VPkxzS7A/NXBXH6u+HS87Zg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@types/unist": "^2.0.0",
|
||||
@@ -12336,20 +12325,12 @@
|
||||
"parse-entities": "^2.0.0",
|
||||
"repeat-string": "^1.0.0",
|
||||
"zwitch": "^1.0.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"mdast-util-to-string": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-2.0.0.tgz",
|
||||
"integrity": "sha512-AW4DRS3QbBayY/jJmD8437V1Gombjf8RSOUCMFBuo5iHi58AGEgVCKQ+ezHkZZDpAQS75hcBMpLqjpJTjtUL7w==",
|
||||
"dev": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"mdast-util-to-string": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-1.1.0.tgz",
|
||||
"integrity": "sha512-jVU0Nr2B9X3MU4tSK7JP1CMkSvOj7X5l/GboG1tKRw52lLF1x2Ju92Ms9tNetCcbfX3hzlM73zYo2NKkWSfF/A==",
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-2.0.0.tgz",
|
||||
"integrity": "sha512-AW4DRS3QbBayY/jJmD8437V1Gombjf8RSOUCMFBuo5iHi58AGEgVCKQ+ezHkZZDpAQS75hcBMpLqjpJTjtUL7w==",
|
||||
"dev": true
|
||||
},
|
||||
"mdn-data": {
|
||||
@@ -12397,13 +12378,14 @@
|
||||
"dev": true
|
||||
},
|
||||
"meow": {
|
||||
"version": "8.0.0",
|
||||
"resolved": "https://registry.npmjs.org/meow/-/meow-8.0.0.tgz",
|
||||
"integrity": "sha512-nbsTRz2fwniJBFgUkcdISq8y/q9n9VbiHYbfwklFh5V4V2uAcxtKQkDc0yCLPM/kP0d+inZBewn3zJqewHE7kg==",
|
||||
"version": "9.0.0",
|
||||
"resolved": "https://registry.npmjs.org/meow/-/meow-9.0.0.tgz",
|
||||
"integrity": "sha512-+obSblOQmRhcyBt62furQqRAQpNyWXo8BuQ5bN7dG8wmwQ+vwHKp/rCFD4CrTP8CsDQD1sjoZ94K417XEUk8IQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@types/minimist": "^1.2.0",
|
||||
"camelcase-keys": "^6.2.2",
|
||||
"decamelize": "^1.2.0",
|
||||
"decamelize-keys": "^1.1.0",
|
||||
"hard-rejection": "^2.1.0",
|
||||
"minimist-options": "4.1.0",
|
||||
@@ -12474,9 +12456,9 @@
|
||||
}
|
||||
},
|
||||
"parse-json": {
|
||||
"version": "5.1.0",
|
||||
"resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.1.0.tgz",
|
||||
"integrity": "sha512-+mi/lmVVNKFNVyLXV31ERiy2CY5E1/F6QtJFEzoChPRwwngMNXRDQ9GJ5WdE2Z2P4AujsOi0/+2qHID68KwfIQ==",
|
||||
"version": "5.2.0",
|
||||
"resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz",
|
||||
"integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/code-frame": "^7.0.0",
|
||||
@@ -12555,10 +12537,13 @@
|
||||
}
|
||||
},
|
||||
"semver": {
|
||||
"version": "7.3.2",
|
||||
"resolved": "https://registry.npmjs.org/semver/-/semver-7.3.2.tgz",
|
||||
"integrity": "sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ==",
|
||||
"dev": true
|
||||
"version": "7.3.4",
|
||||
"resolved": "https://registry.npmjs.org/semver/-/semver-7.3.4.tgz",
|
||||
"integrity": "sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"lru-cache": "^6.0.0"
|
||||
}
|
||||
},
|
||||
"type-fest": {
|
||||
"version": "0.18.1",
|
||||
@@ -12616,9 +12601,9 @@
|
||||
"integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4="
|
||||
},
|
||||
"micromark": {
|
||||
"version": "2.10.1",
|
||||
"resolved": "https://registry.npmjs.org/micromark/-/micromark-2.10.1.tgz",
|
||||
"integrity": "sha512-fUuVF8sC1X7wsCS29SYQ2ZfIZYbTymp0EYr6sab3idFjigFFjGa5UwoniPlV9tAgntjuapW1t9U+S0yDYeGKHQ==",
|
||||
"version": "2.11.2",
|
||||
"resolved": "https://registry.npmjs.org/micromark/-/micromark-2.11.2.tgz",
|
||||
"integrity": "sha512-IXuP76p2uj8uMg4FQc1cRE7lPCLsfAXuEfdjtdO55VRiFO1asrCSQ5g43NmPqFtRwzEnEhafRVzn2jg0UiKArQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"debug": "^4.0.0",
|
||||
@@ -16389,12 +16374,12 @@
|
||||
}
|
||||
},
|
||||
"remark-stringify": {
|
||||
"version": "9.0.0",
|
||||
"resolved": "https://registry.npmjs.org/remark-stringify/-/remark-stringify-9.0.0.tgz",
|
||||
"integrity": "sha512-8x29DpTbVzEc6Dwb90qhxCtbZ6hmj3BxWWDpMhA+1WM4dOEGH5U5/GFe3Be5Hns5MvPSFAr1e2KSVtKZkK5nUw==",
|
||||
"version": "9.0.1",
|
||||
"resolved": "https://registry.npmjs.org/remark-stringify/-/remark-stringify-9.0.1.tgz",
|
||||
"integrity": "sha512-mWmNg3ZtESvZS8fv5PTvaPckdL4iNlCHTt8/e/8oN08nArHRHjNZMKzA/YW3+p7/lYqIw4nx1XsjCBo/AxNChg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"mdast-util-to-markdown": "^0.5.0"
|
||||
"mdast-util-to-markdown": "^0.6.0"
|
||||
}
|
||||
},
|
||||
"remove-array-items": {
|
||||
@@ -16429,18 +16414,18 @@
|
||||
"is-finite": "^1.0.0"
|
||||
}
|
||||
},
|
||||
"replace-ext": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-1.0.0.tgz",
|
||||
"integrity": "sha1-3mMSg3P8v3w8z6TeWkgMRaZ5WOs=",
|
||||
"dev": true
|
||||
},
|
||||
"require-directory": {
|
||||
"version": "2.1.1",
|
||||
"resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
|
||||
"integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=",
|
||||
"dev": true
|
||||
},
|
||||
"require-from-string": {
|
||||
"version": "2.0.2",
|
||||
"resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz",
|
||||
"integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==",
|
||||
"dev": true
|
||||
},
|
||||
"require-main-filename": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz",
|
||||
@@ -16551,8 +16536,7 @@
|
||||
"retry": {
|
||||
"version": "0.12.0",
|
||||
"resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz",
|
||||
"integrity": "sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs=",
|
||||
"dev": true
|
||||
"integrity": "sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs="
|
||||
},
|
||||
"retry-request": {
|
||||
"version": "4.1.3",
|
||||
@@ -17787,9 +17771,9 @@
|
||||
}
|
||||
},
|
||||
"stylelint": {
|
||||
"version": "13.8.0",
|
||||
"resolved": "https://registry.npmjs.org/stylelint/-/stylelint-13.8.0.tgz",
|
||||
"integrity": "sha512-iHH3dv3UI23SLDrH4zMQDjLT9/dDIz/IpoFeuNxZmEx86KtfpjDOscxLTFioQyv+2vQjPlRZnK0UoJtfxLICXQ==",
|
||||
"version": "13.9.0",
|
||||
"resolved": "https://registry.npmjs.org/stylelint/-/stylelint-13.9.0.tgz",
|
||||
"integrity": "sha512-VVWH2oixOAxpWL1vH+V42ReCzBjW2AeqskSAbi8+3OjV1Xg3VZkmTcAqBZfRRvJeF4BvYuDLXebW3tIHxgZDEg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@stylelint/postcss-css-in-js": "^0.37.2",
|
||||
@@ -17798,14 +17782,14 @@
|
||||
"balanced-match": "^1.0.0",
|
||||
"chalk": "^4.1.0",
|
||||
"cosmiconfig": "^7.0.0",
|
||||
"debug": "^4.2.0",
|
||||
"debug": "^4.3.1",
|
||||
"execall": "^2.0.0",
|
||||
"fast-glob": "^3.2.4",
|
||||
"fast-glob": "^3.2.5",
|
||||
"fastest-levenshtein": "^1.0.12",
|
||||
"file-entry-cache": "^6.0.0",
|
||||
"get-stdin": "^8.0.0",
|
||||
"global-modules": "^2.0.0",
|
||||
"globby": "^11.0.1",
|
||||
"globby": "^11.0.2",
|
||||
"globjoin": "^0.1.4",
|
||||
"html-tags": "^3.1.0",
|
||||
"ignore": "^5.1.8",
|
||||
@@ -17815,7 +17799,7 @@
|
||||
"lodash": "^4.17.20",
|
||||
"log-symbols": "^4.0.0",
|
||||
"mathml-tag-names": "^2.1.3",
|
||||
"meow": "^8.0.0",
|
||||
"meow": "^9.0.0",
|
||||
"micromatch": "^4.0.2",
|
||||
"normalize-selector": "^0.2.0",
|
||||
"postcss": "^7.0.35",
|
||||
@@ -17837,20 +17821,20 @@
|
||||
"style-search": "^0.1.0",
|
||||
"sugarss": "^2.0.0",
|
||||
"svg-tags": "^1.0.0",
|
||||
"table": "^6.0.3",
|
||||
"table": "^6.0.7",
|
||||
"v8-compile-cache": "^2.2.0",
|
||||
"write-file-atomic": "^3.0.3"
|
||||
},
|
||||
"dependencies": {
|
||||
"ajv": {
|
||||
"version": "6.12.6",
|
||||
"resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
|
||||
"integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==",
|
||||
"version": "7.0.3",
|
||||
"resolved": "https://registry.npmjs.org/ajv/-/ajv-7.0.3.tgz",
|
||||
"integrity": "sha512-R50QRlXSxqXcQP5SvKUrw8VZeypvo12i2IX0EeR5PiZ7bEKeHWgzgo264LDadUsCU42lTJVhFikTqJwNeH34gQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"fast-deep-equal": "^3.1.1",
|
||||
"fast-json-stable-stringify": "^2.0.0",
|
||||
"json-schema-traverse": "^0.4.1",
|
||||
"json-schema-traverse": "^1.0.0",
|
||||
"require-from-string": "^2.0.2",
|
||||
"uri-js": "^4.2.2"
|
||||
}
|
||||
},
|
||||
@@ -17897,9 +17881,9 @@
|
||||
}
|
||||
},
|
||||
"caniuse-lite": {
|
||||
"version": "1.0.30001161",
|
||||
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001161.tgz",
|
||||
"integrity": "sha512-JharrCDxOqPLBULF9/SPa6yMcBRTjZARJ6sc3cuKrPfyIk64JN6kuMINWqA99Xc8uElMFcROliwtz0n9pYej+g==",
|
||||
"version": "1.0.30001179",
|
||||
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001179.tgz",
|
||||
"integrity": "sha512-blMmO0QQujuUWZKyVrD1msR4WNDAqb/UPO1Sw2WWsQ7deoM5bJiicKnWJ1Y0NS/aGINSnKPIWBMw5luX+NDUCA==",
|
||||
"dev": true
|
||||
},
|
||||
"chalk": {
|
||||
@@ -17991,9 +17975,9 @@
|
||||
"dev": true
|
||||
},
|
||||
"fast-glob": {
|
||||
"version": "3.2.4",
|
||||
"resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.4.tgz",
|
||||
"integrity": "sha512-kr/Oo6PX51265qeuCYsyGypiO5uJFgBS0jksyG7FUeCyQzNwYnzrNIMR1NXfkZXsMYXYLRAHgISHBz8gQcxKHQ==",
|
||||
"version": "3.2.5",
|
||||
"resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.5.tgz",
|
||||
"integrity": "sha512-2DtFcgT68wiTTiwZ2hNdJfcHNke9XOfnwmBRWXhmeKM8rF0TGwmC/Qto3S7RoZKp5cilZbxzO5iTNTQsJ+EeDg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@nodelib/fs.stat": "^2.0.2",
|
||||
@@ -18024,9 +18008,9 @@
|
||||
}
|
||||
},
|
||||
"flatted": {
|
||||
"version": "3.1.0",
|
||||
"resolved": "https://registry.npmjs.org/flatted/-/flatted-3.1.0.tgz",
|
||||
"integrity": "sha512-tW+UkmtNg/jv9CSofAKvgVcO7c2URjhTdW1ZTkcAritblu8tajiYy7YisnIflEwtKssCtOxpnBRoCB7iap0/TA==",
|
||||
"version": "3.1.1",
|
||||
"resolved": "https://registry.npmjs.org/flatted/-/flatted-3.1.1.tgz",
|
||||
"integrity": "sha512-zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA==",
|
||||
"dev": true
|
||||
},
|
||||
"get-stdin": {
|
||||
@@ -18045,9 +18029,9 @@
|
||||
}
|
||||
},
|
||||
"globby": {
|
||||
"version": "11.0.1",
|
||||
"resolved": "https://registry.npmjs.org/globby/-/globby-11.0.1.tgz",
|
||||
"integrity": "sha512-iH9RmgwCmUJHi2z5o2l3eTtGBtXek1OYlHrbcxOYugyHLmAsZrPj43OtHThd62Buh/Vv6VyCBD2bdyWcGNQqoQ==",
|
||||
"version": "11.0.2",
|
||||
"resolved": "https://registry.npmjs.org/globby/-/globby-11.0.2.tgz",
|
||||
"integrity": "sha512-2ZThXDvvV8fYFRVIxnrMQBipZQDr7MxKAmQK1vujaj9/7eF0efG7BPUKJ7jP7G5SLF37xKDXvO4S/KKLj/Z0og==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"array-union": "^2.1.0",
|
||||
@@ -18065,9 +18049,9 @@
|
||||
"dev": true
|
||||
},
|
||||
"import-fresh": {
|
||||
"version": "3.2.2",
|
||||
"resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.2.2.tgz",
|
||||
"integrity": "sha512-cTPNrlvJT6twpYy+YmKUKrTSjWFs3bjYjAhCwm+z4EOCubZxAuO+hHpRN64TqjEaYSHs7tJAE0w1CKMGmsG/lw==",
|
||||
"version": "3.3.0",
|
||||
"resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz",
|
||||
"integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"parent-module": "^1.0.0",
|
||||
@@ -18088,6 +18072,12 @@
|
||||
"integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
|
||||
"dev": true
|
||||
},
|
||||
"json-schema-traverse": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz",
|
||||
"integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==",
|
||||
"dev": true
|
||||
},
|
||||
"log-symbols": {
|
||||
"version": "4.0.0",
|
||||
"resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.0.0.tgz",
|
||||
@@ -18098,9 +18088,9 @@
|
||||
}
|
||||
},
|
||||
"parse-json": {
|
||||
"version": "5.1.0",
|
||||
"resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.1.0.tgz",
|
||||
"integrity": "sha512-+mi/lmVVNKFNVyLXV31ERiy2CY5E1/F6QtJFEzoChPRwwngMNXRDQ9GJ5WdE2Z2P4AujsOi0/+2qHID68KwfIQ==",
|
||||
"version": "5.2.0",
|
||||
"resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz",
|
||||
"integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/code-frame": "^7.0.0",
|
||||
@@ -18241,12 +18231,12 @@
|
||||
}
|
||||
},
|
||||
"table": {
|
||||
"version": "6.0.4",
|
||||
"resolved": "https://registry.npmjs.org/table/-/table-6.0.4.tgz",
|
||||
"integrity": "sha512-sBT4xRLdALd+NFBvwOz8bw4b15htyythha+q+DVZqy2RS08PPC8O2sZFgJYEY7bJvbCFKccs+WIZ/cd+xxTWCw==",
|
||||
"version": "6.0.7",
|
||||
"resolved": "https://registry.npmjs.org/table/-/table-6.0.7.tgz",
|
||||
"integrity": "sha512-rxZevLGTUzWna/qBLObOe16kB2RTnnbhciwgPbMMlazz1yZGVEgnZK762xyVdVznhqxrfCeBMmMkgOOaPwjH7g==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"ajv": "^6.12.4",
|
||||
"ajv": "^7.0.2",
|
||||
"lodash": "^4.17.20",
|
||||
"slice-ansi": "^4.0.0",
|
||||
"string-width": "^4.2.0"
|
||||
@@ -19072,9 +19062,9 @@
|
||||
}
|
||||
},
|
||||
"unist-util-is": {
|
||||
"version": "4.0.3",
|
||||
"resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-4.0.3.tgz",
|
||||
"integrity": "sha512-bTofCFVx0iQM8Jqb1TBDVRIQW03YkD3p66JOd/aCWuqzlLyUtx1ZAGw/u+Zw+SttKvSVcvTiKYbfrtLoLefykw==",
|
||||
"version": "4.0.4",
|
||||
"resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-4.0.4.tgz",
|
||||
"integrity": "sha512-3dF39j/u423v4BBQrk1AQ2Ve1FxY5W3JKwXxVFzBODQ6WEvccguhgp802qQLKSnxPODE6WuRZtV+ohlUg4meBA==",
|
||||
"dev": true
|
||||
},
|
||||
"unist-util-stringify-position": {
|
||||
@@ -19312,14 +19302,13 @@
|
||||
"dev": true
|
||||
},
|
||||
"vfile": {
|
||||
"version": "4.2.0",
|
||||
"resolved": "https://registry.npmjs.org/vfile/-/vfile-4.2.0.tgz",
|
||||
"integrity": "sha512-a/alcwCvtuc8OX92rqqo7PflxiCgXRFjdyoGVuYV+qbgCb0GgZJRvIgCD4+U/Kl1yhaRsaTwksF88xbPyGsgpw==",
|
||||
"version": "4.2.1",
|
||||
"resolved": "https://registry.npmjs.org/vfile/-/vfile-4.2.1.tgz",
|
||||
"integrity": "sha512-O6AE4OskCG5S1emQ/4gl8zK586RqA3srz3nfK/Viy0UPToBc5Trp9BVFb1u0CjsKrAWwnpr4ifM/KBXPWwJbCA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@types/unist": "^2.0.0",
|
||||
"is-buffer": "^2.0.0",
|
||||
"replace-ext": "1.0.0",
|
||||
"unist-util-stringify-position": "^2.0.0",
|
||||
"vfile-message": "^2.0.0"
|
||||
}
|
||||
@@ -19688,9 +19677,9 @@
|
||||
}
|
||||
},
|
||||
"webpack-dev-server": {
|
||||
"version": "3.11.1",
|
||||
"resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-3.11.1.tgz",
|
||||
"integrity": "sha512-u4R3mRzZkbxQVa+MBWi2uVpB5W59H3ekZAJsQlKUTdl7Elcah2EhygTPLmeFXybQkf9i2+L0kn7ik9SnXa6ihQ==",
|
||||
"version": "3.11.2",
|
||||
"resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-3.11.2.tgz",
|
||||
"integrity": "sha512-A80BkuHRQfCiNtGBS1EMf2ChTUs0x+B3wGDFmOeT4rmJOHhHTCH2naNxIHhmkr0/UillP4U3yeIyv1pNp+QDLQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"ansi-html": "0.0.7",
|
||||
|
||||
16
package.json
16
package.json
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "send",
|
||||
"description": "File Sharing Experiment",
|
||||
"version": "3.4.0",
|
||||
"version": "3.4.1",
|
||||
"author": "Mozilla (https://mozilla.org)",
|
||||
"contributors": [
|
||||
"Tim Visee <3a4fb3964f@sinenomine.email> (https://timvisee.com)"
|
||||
@@ -71,14 +71,14 @@
|
||||
"@dannycoates/webcrypto-liner": "^0.1.37",
|
||||
"@fullhuman/postcss-purgecss": "^1.3.0",
|
||||
"@mattiasbuelens/web-streams-polyfill": "0.2.1",
|
||||
"@sentry/browser": "^5.29.2",
|
||||
"@sentry/browser": "^5.30.0",
|
||||
"asmcrypto.js": "^0.22.0",
|
||||
"babel-loader": "^8.2.2",
|
||||
"babel-plugin-istanbul": "^5.2.0",
|
||||
"base64-js": "^1.5.1",
|
||||
"content-disposition": "^0.5.3",
|
||||
"copy-webpack-plugin": "^5.1.2",
|
||||
"core-js": "^3.8.2",
|
||||
"core-js": "^3.8.3",
|
||||
"crc": "^3.8.0",
|
||||
"cross-env": "^6.0.3",
|
||||
"css-loader": "^3.6.0",
|
||||
@@ -118,7 +118,7 @@
|
||||
"script-loader": "^0.7.2",
|
||||
"sinon": "^7.5.0",
|
||||
"string-hash": "^1.1.3",
|
||||
"stylelint": "^13.8.0",
|
||||
"stylelint": "^13.9.0",
|
||||
"stylelint-config-standard": "^19.0.0",
|
||||
"stylelint-no-unsupported-browser-features": "^4.1.4",
|
||||
"svgo": "^1.3.2",
|
||||
@@ -128,7 +128,7 @@
|
||||
"webpack": "4.38.0",
|
||||
"webpack-cli": "^3.3.12",
|
||||
"webpack-dev-middleware": "^3.7.3",
|
||||
"webpack-dev-server": "^3.11.1",
|
||||
"webpack-dev-server": "^3.11.2",
|
||||
"webpack-manifest-plugin": "^2.2.0",
|
||||
"webpack-unassert-loader": "^1.2.0"
|
||||
},
|
||||
@@ -136,9 +136,9 @@
|
||||
"@dannycoates/express-ws": "^5.0.3",
|
||||
"@fluent/bundle": "^0.13.0",
|
||||
"@fluent/langneg": "^0.3.0",
|
||||
"@google-cloud/storage": "^5.7.1",
|
||||
"@sentry/node": "^5.29.2",
|
||||
"aws-sdk": "^2.824.0",
|
||||
"@google-cloud/storage": "^5.7.3",
|
||||
"@sentry/node": "^5.30.0",
|
||||
"aws-sdk": "^2.831.0",
|
||||
"body-parser": "^1.19.0",
|
||||
"choo": "^7.0.0",
|
||||
"cldr-core": "^35.1.0",
|
||||
|
||||
@@ -29,6 +29,9 @@ updateFirefox = Update Firefox
|
||||
deletePopupCancel = Cancel
|
||||
deleteButtonHover = Delete
|
||||
footerText = Not affiliated with Mozilla or Firefox.
|
||||
footerLinkDonate = Donate
|
||||
footerLinkCli = CLI
|
||||
footerLinkDmca = DMCA
|
||||
footerLinkSource = Source
|
||||
passwordTryAgain = Incorrect password. Try again.
|
||||
javascriptRequired = Send requires JavaScript
|
||||
|
||||
@@ -27,6 +27,9 @@ updateFirefox = Update Firefox
|
||||
deletePopupCancel = Cancel
|
||||
deleteButtonHover = Delete
|
||||
footerText = Not affiliated with Mozilla or Firefox.
|
||||
footerLinkDonate = Donate
|
||||
footerLinkCli = CLI
|
||||
footerLinkDmca = DMCA
|
||||
footerLinkSource = Source
|
||||
passwordTryAgain = Incorrect password. Try again.
|
||||
javascriptRequired = Send requires JavaScript
|
||||
|
||||
@@ -29,6 +29,9 @@ updateFirefox = Firefox bijwerken
|
||||
deletePopupCancel = Annuleren
|
||||
deleteButtonHover = Verwijderen
|
||||
footerText = Niet aangesloten aan Mozilla of Firefox.
|
||||
footerLinkDonate = Doneren
|
||||
footerLinkCli = CLI
|
||||
footerLinkDmca = DMCA
|
||||
footerLinkSource = Broncode
|
||||
passwordTryAgain = Onjuist wachtwoord. Probeer het opnieuw.
|
||||
javascriptRequired = Send vereist JavaScript
|
||||
|
||||
39
s3-lifecycle-example.xml
Normal file
39
s3-lifecycle-example.xml
Normal file
@@ -0,0 +1,39 @@
|
||||
<?xml version="1.0" ?>
|
||||
<LifecycleConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
|
||||
<!-- remove files for 1 day after 1 day -->
|
||||
<Rule>
|
||||
<ID>1skjet8gxudyans73v3p3d6hvq6yn3w02kq7931h81ohopd3</ID>
|
||||
<Prefix>1-</Prefix>
|
||||
<Status>Enabled</Status>
|
||||
<Expiration>
|
||||
<Days>1</Days>
|
||||
</Expiration>
|
||||
</Rule>
|
||||
<!-- remove files for 7 days after 7 days -->
|
||||
<Rule>
|
||||
<ID>1skjet8gxudyans73v3p3d6hvq6yn3w02kq7931h81ohopd4</ID>
|
||||
<Prefix>7-</Prefix>
|
||||
<Status>Enabled</Status>
|
||||
<Expiration>
|
||||
<Days>7</Days>
|
||||
</Expiration>
|
||||
</Rule>
|
||||
<!-- remove all files after 1 month -->
|
||||
<Rule>
|
||||
<ID>1skjet8gxudyans73v3p3d6hvq6yn3w02kq7931h81ohopd5</ID>
|
||||
<Prefix/>
|
||||
<Status>Enabled</Status>
|
||||
<Expiration>
|
||||
<Days>30</Days>
|
||||
</Expiration>
|
||||
</Rule>
|
||||
<!-- remove aborted uploads after 1 day -->
|
||||
<Rule>
|
||||
<ID>1skjet8gxudyans73v3p3d6hvq6yn3w02kq7931h81ohopd6</ID>
|
||||
<Prefix></Prefix>
|
||||
<Status>Enabled</Status>
|
||||
<AbortIncompleteMultipartUpload>
|
||||
<DaysAfterInitiation>1</DaysAfterInitiation>
|
||||
</AbortIncompleteMultipartUpload>
|
||||
</Rule>
|
||||
</LifecycleConfiguration>
|
||||
@@ -13,6 +13,12 @@ module.exports = {
|
||||
MAX_FILES_PER_ARCHIVE: config.max_files_per_archive,
|
||||
MAX_ARCHIVES_PER_USER: config.max_archives_per_user
|
||||
},
|
||||
WEB_UI: {
|
||||
FOOTER_DONATE_URL: config.footer_donate_url,
|
||||
FOOTER_CLI_URL: config.footer_cli_url,
|
||||
FOOTER_DMCA_URL: config.footer_dmca_url,
|
||||
FOOTER_SOURCE_URL: config.footer_source_url
|
||||
},
|
||||
DEFAULTS: {
|
||||
DOWNLOAD_COUNTS: config.download_counts,
|
||||
EXPIRE_TIMES_SECONDS: config.expire_times_seconds,
|
||||
|
||||
@@ -194,6 +194,26 @@ const conf = convict({
|
||||
format: String,
|
||||
default: '',
|
||||
env: 'IP_DB'
|
||||
},
|
||||
footer_donate_url: {
|
||||
format: String,
|
||||
default: '',
|
||||
env: 'SEND_FOOTER_DONATE_URL'
|
||||
},
|
||||
footer_cli_url: {
|
||||
format: String,
|
||||
default: 'https://github.com/timvisee/ffsend',
|
||||
env: 'SEND_FOOTER_CLI_URL'
|
||||
},
|
||||
footer_dmca_url: {
|
||||
format: String,
|
||||
default: '',
|
||||
env: 'SEND_FOOTER_DMCA_URL'
|
||||
},
|
||||
footer_source_url: {
|
||||
format: String,
|
||||
default: 'https://github.com/timvisee/send',
|
||||
env: 'SEND_FOOTER_CLI_URL'
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
@@ -43,6 +43,7 @@ module.exports = function(state) {
|
||||
}
|
||||
|
||||
var LIMITS = ${JSON.stringify(clientConstants.LIMITS)};
|
||||
var WEB_UI = ${JSON.stringify(clientConstants.WEB_UI)};
|
||||
var DEFAULTS = ${JSON.stringify(clientConstants.DEFAULTS)};
|
||||
var PREFS = ${JSON.stringify(state.prefs)};
|
||||
var downloadMetadata = ${
|
||||
|
||||
@@ -6,9 +6,9 @@ class S3Storage {
|
||||
this.log = log;
|
||||
const cfg = {};
|
||||
if (config.s3_endpoint != '') {
|
||||
cfg['endpoint'] = config.s3_endpoint;
|
||||
cfg['endpoint'] = config.s3_endpoint;
|
||||
}
|
||||
cfg['s3ForcePathStyle'] = config.s3_use_path_style_endpoint
|
||||
cfg['s3ForcePathStyle'] = config.s3_use_path_style_endpoint;
|
||||
AWS.config.update(cfg);
|
||||
this.s3 = new AWS.S3();
|
||||
}
|
||||
@@ -21,7 +21,9 @@ class S3Storage {
|
||||
}
|
||||
|
||||
getStream(id) {
|
||||
return this.s3.getObject({ Bucket: this.bucket, Key: id }).createReadStream();
|
||||
return this.s3
|
||||
.getObject({ Bucket: this.bucket, Key: id })
|
||||
.createReadStream();
|
||||
}
|
||||
|
||||
set(id, file) {
|
||||
|
||||
Reference in New Issue
Block a user