mirror of
https://github.com/transloadit/uppy.git
synced 2026-07-18 00:55:35 +00:00
GitHub actions (#2617)
This commit is contained in:
parent
d3f63938b8
commit
084d17db7d
18 changed files with 6629 additions and 5186 deletions
36
.github/workflows/cdn.yml
vendored
Normal file
36
.github/workflows/cdn.yml
vendored
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
name: CDN
|
||||
on:
|
||||
push:
|
||||
branches: master
|
||||
|
||||
jobs:
|
||||
release:
|
||||
if: ${{startsWith(github.event.head_commit.message, 'Release')}}
|
||||
name: Publish releases
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout sources
|
||||
uses: actions/checkout@v2
|
||||
- name: Install Node.js
|
||||
uses: actions/setup-node@v2-beta
|
||||
with:
|
||||
node-version: 14.x
|
||||
- name: Install dependencies
|
||||
run: npm ci
|
||||
- name: Build bundles
|
||||
run: npm run build
|
||||
- name: Upload `uppy` to CDN
|
||||
run: npm run uploadcdn uppy
|
||||
env:
|
||||
EDGLY_KEY: ${{secrets.EDGLY_KEY}}
|
||||
EDGLY_SECRET: ${{secrets.EDGLY_SECRET}}
|
||||
- name: Upload `@uppy/robodog` to CDN
|
||||
run: npm run uploadcdn @uppy/robodog
|
||||
env:
|
||||
EDGLY_KEY: ${{secrets.EDGLY_KEY}}
|
||||
EDGLY_SECRET: ${{secrets.EDGLY_SECRET}}
|
||||
- name: Upload `@uppy/locales` to CDN
|
||||
run: npm run uploadcdn @uppy/locales
|
||||
env:
|
||||
EDGLY_KEY: ${{secrets.EDGLY_KEY}}
|
||||
EDGLY_SECRET: ${{secrets.EDGLY_SECRET}}
|
||||
74
.github/workflows/ci.yml
vendored
Normal file
74
.github/workflows/ci.yml
vendored
Normal file
|
|
@ -0,0 +1,74 @@
|
|||
name: Tests
|
||||
on: [push, pull_request]
|
||||
|
||||
jobs:
|
||||
unit_tests:
|
||||
name: Unit tests
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
matrix:
|
||||
node-version: [10.x, 12.x, 14.x]
|
||||
steps:
|
||||
- name: Checkout sources
|
||||
uses: actions/checkout@v2
|
||||
- name: Install Node.js
|
||||
uses: actions/setup-node@v2-beta
|
||||
with:
|
||||
node-version: ${{matrix.node-version}}
|
||||
- name: Install dependencies
|
||||
run: npm ci
|
||||
- name: Run tests
|
||||
run: npm run test:unit
|
||||
|
||||
lint_js:
|
||||
name: Lint JavaScript
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout sources
|
||||
uses: actions/checkout@v2
|
||||
- name: Install Node.js
|
||||
uses: actions/setup-node@v2-beta
|
||||
with:
|
||||
node-version: 14.x
|
||||
- name: Install dependencies
|
||||
run: npm ci
|
||||
- name: Run linter
|
||||
run: npm run lint
|
||||
|
||||
lint_md:
|
||||
name: Lint Markdown
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout sources
|
||||
uses: actions/checkout@v2
|
||||
- name: Install Node.js
|
||||
uses: actions/setup-node@v2-beta
|
||||
with:
|
||||
node-version: 14.x
|
||||
- name: Install dependencies
|
||||
run: npm ci
|
||||
- name: Run linter
|
||||
run: npm run lint:markdown
|
||||
|
||||
types:
|
||||
name: Type tests
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout sources
|
||||
uses: actions/checkout@v2
|
||||
- name: Install Node.js
|
||||
uses: actions/setup-node@v2-beta
|
||||
with:
|
||||
node-version: 14.x
|
||||
- name: Install dependencies
|
||||
run: npm ci
|
||||
- name: Run linter
|
||||
run: npm run lint:markdown
|
||||
# Need to do a bunch of work to generate the locale typings 🙃
|
||||
- name: Prepare type declarations
|
||||
run: |
|
||||
npm run build:lib
|
||||
npm run build:companion
|
||||
npm run build:locale-pack
|
||||
- name: Run type tests
|
||||
run: npm run test:type
|
||||
38
.github/workflows/companion-deploy.yml
vendored
Normal file
38
.github/workflows/companion-deploy.yml
vendored
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
name: Companion Deploy
|
||||
on:
|
||||
push:
|
||||
branches: [master]
|
||||
|
||||
jobs:
|
||||
docker:
|
||||
name: DockerHub
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout sources
|
||||
uses: actions/checkout@v2
|
||||
- name: Log in to DockerHub
|
||||
uses: docker/login-action@v1
|
||||
with:
|
||||
username: ${{secrets.DOCKER_USERNAME}}
|
||||
password: ${{secrets.DOCKER_PASSWORD}}
|
||||
- name: Build and push
|
||||
uses: docker/build-push-action@v2
|
||||
with:
|
||||
context: packages/@uppy/companion
|
||||
file: packages/@uppy/companion/Dockerfile
|
||||
# TODO add a companion version tag if this is a "Release" commit
|
||||
# Punting on that since it didn't work on travis either, so current users must already be relying on commit hashes
|
||||
tags: transloadit/companion:latest,transloadit/companion:${{github.sha}}
|
||||
|
||||
heroku:
|
||||
name: Heroku
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout sources
|
||||
uses: actions/checkout@v2
|
||||
- name: Deploy to heroku
|
||||
uses: akhileshns/heroku-deploy@v3.5.6
|
||||
with:
|
||||
heroku_api_key: ${{secrets.HEROKU_API_KEY}}
|
||||
heroku_app_name: companion-demo
|
||||
heroku_email: ${{secrets.HEROKU_EMAIL}}
|
||||
21
.github/workflows/companion.yml
vendored
Normal file
21
.github/workflows/companion.yml
vendored
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
name: Companion
|
||||
on: [push, pull_request]
|
||||
|
||||
jobs:
|
||||
test:
|
||||
name: Unit tests
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
matrix:
|
||||
node-version: [10.20.1, 12.x, 14.x]
|
||||
steps:
|
||||
- name: Checkout sources
|
||||
uses: actions/checkout@v2
|
||||
- name: Install Node.js
|
||||
uses: actions/setup-node@v2-beta
|
||||
with:
|
||||
node-version: ${{matrix.node-version}}
|
||||
- name: Install dependencies
|
||||
run: npm ci
|
||||
- name: Run tests
|
||||
run: npm run test:companion
|
||||
35
.github/workflows/end-to-end.yml
vendored
Normal file
35
.github/workflows/end-to-end.yml
vendored
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
name: End-to-end tests
|
||||
on: push
|
||||
|
||||
env:
|
||||
GIT_AUTHOR_NAME: Uppy Bot
|
||||
GIT_COMMITTER_NAME: Uppy Bot
|
||||
GIT_AUTHOR_EMAIL: uppybot@uppy.io
|
||||
GIT_COMMITTER_EMAIL: uppybot@uppy.io
|
||||
|
||||
jobs:
|
||||
e2e:
|
||||
name: Browser tests
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout sources
|
||||
uses: actions/checkout@v2
|
||||
- name: Install Node.js
|
||||
uses: actions/setup-node@v2-beta
|
||||
with:
|
||||
node-version: 14.x
|
||||
- name: Install dependencies
|
||||
run: npm ci
|
||||
- name: Start Sauce Connect
|
||||
uses: saucelabs/sauce-connect-action@v1.1.1
|
||||
with:
|
||||
username: ${{secrets.SAUCE_USERNAME}}
|
||||
accessKey: ${{secrets.SAUCE_ACCESS_KEY}}
|
||||
tunnelIdentifier: ${{github.run_id}}.${{github.run_number}}
|
||||
- name: Run end-to-end browser tests
|
||||
run: npm run test:endtoend
|
||||
env:
|
||||
SAUCE_TUNNEL_IDENTIFIER: ${{github.run_id}}.${{github.run_number}}
|
||||
SAUCE_BUILD: ${{github.run_id}}
|
||||
SAUCE_USERNAME: ${{secrets.SAUCE_USERNAME}}
|
||||
SAUCE_ACCESS_KEY: ${{secrets.SAUCE_ACCESS_KEY}}
|
||||
39
.github/workflows/website.yml
vendored
Normal file
39
.github/workflows/website.yml
vendored
Normal file
|
|
@ -0,0 +1,39 @@
|
|||
name: Deploy uppy.io
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: master
|
||||
|
||||
jobs:
|
||||
deploy:
|
||||
name: Deploy
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout sources
|
||||
uses: actions/checkout@v2
|
||||
- name: Install Node.js
|
||||
uses: actions/setup-node@v2-beta
|
||||
with:
|
||||
node-version: 14.x
|
||||
- name: Install dependencies
|
||||
run: npm ci
|
||||
- name: Build Uppy
|
||||
run: npm run build
|
||||
- name: Build website
|
||||
run: npm run web:build
|
||||
- name: Prepare deployment
|
||||
run: npm run web:prepare-deploy --quiet
|
||||
env:
|
||||
DEPLOY_DIR: ${{github.workspace}}/_deploy
|
||||
- name: Push to Github Pages
|
||||
uses: crazy-max/ghaction-github-pages@v2
|
||||
with:
|
||||
target_branch: gh-pages
|
||||
build_dir: _deploy # relative to `github.workspace`
|
||||
committer: 'Uppy Bot <uppybot@uppy.io>'
|
||||
author: 'Uppy Bot <uppybot@uppy.io>'
|
||||
commit_message: Update transloadit/uppy website
|
||||
fqdn: uppy.io
|
||||
jekyll: false
|
||||
env:
|
||||
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
|
||||
130
.travis.yml
130
.travis.yml
|
|
@ -1,130 +0,0 @@
|
|||
os: linux
|
||||
dist: bionic
|
||||
language: node_js
|
||||
".apt": &1
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
packages:
|
||||
- g++-4.8
|
||||
".hosts": &2
|
||||
- companion.test
|
||||
".sauce_connect": &3
|
||||
username:
|
||||
secure: nAMJ/d1fm9urTYsQ+1uqj6Jjf71J8rzwYBSZbTDAeUEZzAdvGc0a9H3PYWM4pnUDPo5s1c9MMetXi2XNdUbXgMKHbEnePZ2mJamqFtXMmpG8pgFmMqj+btMd7Yybt070tRsn4Vy0uBSi2H/en7F3j+grABJV+SAXqWkSB7CU1fZaN/u0DpoGBNj1ZNwkYCIhpLueYJTPRWBOodMAarXuFv5+7KFOKuZM3tF/JjsMNSSaDgTkz13BZnbX6vNPxGJJNJcyJGSaXrVW8hh1Zmvnk/XdiLy+vt7Wz1wz3A9ebiFDuydo5AAkxrLFsCJ5nGEqLg3bkr6NaTRpbM84ZT3i1FQMTdKP6OHHqwAeBscB6BkyhZhzvsFtl2YRBNK9mA3OtOYvBmTkFkNqvrPQlfu7cFtyG5+AUfSCiTTgS/vWIwoqSVAXaOEqN8Fp54ecUdkzCTttl3gXteZzNLRYvyQcFpoJb6E+dS8qAW0OFOteiwKVuPCh3nGUzBP13bRo1i9UAX7ZCTlpjinkxE8ryzbToo6ZcVQMBAkKhaw/x8GzOtfm5rgYMeQzGEoBJNfr7qqfs7JMxAIEMYjrTL9PXVOp/R8F3FdsqbV70jSyfsxMSMkwSWFRmVslG8+Djy8P3LnckGy1FEbMHnH8GZHZg+hbBzN8Be1/1fV0oRRAr939WRc=
|
||||
access_key:
|
||||
secure: OY3oWwiJghfty9wSPVvlhirvFGxPHDdIRuVkzAv6j7C/hj2BWYAP/UHrwdQ9XiYisHi/B5mGeyRVlrAf0MNGrG84rTDUbTWZbmktfuxl7A+Y6c0czk+s4SdhOiANG5b3tFl5wKq8h7uhrWH5/jWoKQ2Fz1VDCqxTvvZQbo41jSBhi7TBia626hxEePzdaiuw6HhGFZtfaoVs/FX30ylz8WDNrBjwCynjxsT52BaQrVvgEhuyzlOpI69YkZBPOq4fc3KiZ2YR43gLTx8K+sYCE9yJxdg1xT/UAawEhmedU83nyBZVo4rr7+03AixIxtI28MUCfBMlcsGwBxcKEKY/IWcp9UkPCq6+zALQoncV478tP21eYvlmxSFhYCrv+WEQlN+BcNjr4OJlmmFDbCVaF7r9qLeQPImU0+9iJU3OjrW7lpfLxORpGDEr2Nx6awKkIJCxNyK9weefeNo6Fz3V1kkyZ/7yWFeniJnRUCbahrB2XgzxIE+W307s1Qs4fm6JK7hVLTtG4fBzjChmAyGIzu744ws9WqmjvkC9D7OfnuXqanv/VcBFqPiudInerv7NL8FketUC+fxe/7XJfcxdaDGBjk8Kq7zXDohGRGymUXEoMDNJsKkMMlaKzdf7tgqdhsRJoH9NCVqrDXuG5al0UtrDP5RS7qfoxUunJmNFhlg=
|
||||
no_ssl_bump_domains: companion.test
|
||||
jobs:
|
||||
include:
|
||||
- name: Run end-to-end browser tests
|
||||
node_js: 12
|
||||
if: type = push
|
||||
addons:
|
||||
apt: *1
|
||||
hosts: *2
|
||||
sauce_connect: *3
|
||||
script: npm run test:endtoend
|
||||
- name: Run unit tests
|
||||
node_js: 14
|
||||
script: npm run test:unit
|
||||
- name: Run unit tests (Node.js 10)
|
||||
node_js: 10
|
||||
script: npm run test:unit
|
||||
- name: Run linting
|
||||
node_js: 12
|
||||
script:
|
||||
- npm run lint
|
||||
- name: Run Markdown linting
|
||||
node_js: 12
|
||||
script:
|
||||
- npm run lint:markdown
|
||||
- name: Run type tests
|
||||
node_js: 12
|
||||
script:
|
||||
- npm run build:lib
|
||||
- npm run build:companion
|
||||
- npm run build:locale-pack
|
||||
- npm run test:type
|
||||
- name: Build
|
||||
node_js: 12
|
||||
if: NOT (branch = master AND type = push AND commit_message =~ /^Release/)
|
||||
script:
|
||||
- npm run build
|
||||
- name: Build and update CDN releases
|
||||
node_js: 12
|
||||
if: branch = master AND type = push AND commit_message =~ /^Release/
|
||||
script:
|
||||
- npm run build
|
||||
- npm run uploadcdn uppy
|
||||
- npm run uploadcdn @uppy/robodog
|
||||
- npm run uploadcdn @uppy/locales
|
||||
- name: Run Companion tests
|
||||
node_js: 12
|
||||
services:
|
||||
- docker
|
||||
script: npm run test:companion
|
||||
deploy:
|
||||
- provider: heroku
|
||||
api_key:
|
||||
secure: IbnHioWy5xFxd3QjlX9cGtQVxLHgvIfYFKkdRke7QRh+Rmpt+b1KjPr2h+/SXI2OcTM+XerViQH6P8mGXCKJqPaBS0/FrabuS7blTQv3K0rP81WkgWjdWxYC04uU4GZWpyZkgnV3lJBxcfRaots2OHcnQI6+fdeP25qM9n7g+G8y+btSXru0xZVyJVJ+e0nsl38CuAnxfh0GSmS+4Dd1E1lQIxvlwORZCJmUOU31knxN7T82GQW6O8e23Yqv2HTdPFRUqhOYA0IfdqS+X55yp8GfvJJvtPe7IMr4i/Yn8M0Uhp4ZwkKjTzKYLRwWojTXUxP1zfU6qQxDKu8aWdVGRz6rm39IX9UYThaAqPNyci36fzIidJyJUosUj9WM6Ds7Qs4dLCsLIgTfb/Nl7sPT6P8SSWePb+P4jZr11qL+LlAP1ZzA7c34QCG9wxJG8Qrh2hQi9JMdupmYNF6/0q0Iisya+vPdxRFpsXVdXU7xVW28UwLxVNhw/2yhSNlRlgE/HYfr21zMyRQGW72mJ0AO5jNVbl8paGL96/W0UtjTlZrb4zu7fOW9SJdi6TWkfZx5WhSvHG59P4Ph1nMuty6LG5dYvdqDF/BV4SoK8bdJ8U6O8BOom8hhqZv+lDuP0O60gQVTR17nUQ2aRbI4OAUuJt61QTyPpO2tcJXKN6chH3s=
|
||||
skip_cleanup: true
|
||||
app: companion-demo
|
||||
on:
|
||||
branch: master
|
||||
- name: Run Companion tests (Node.js 10)
|
||||
node_js: 12
|
||||
services:
|
||||
- docker
|
||||
script:
|
||||
- nvm install 10.20.1
|
||||
- nvm use 10.20.1
|
||||
- npm run test:companion
|
||||
- name: Build website
|
||||
node_js: 12
|
||||
if: branch = master AND type = push
|
||||
script: 'true'
|
||||
deploy:
|
||||
- provider: script
|
||||
skip_cleanup: true
|
||||
script: bin/travis-deploy
|
||||
before_install:
|
||||
- nvm install-latest-npm
|
||||
install:
|
||||
- npm ci
|
||||
addons:
|
||||
apt: *1
|
||||
cache:
|
||||
apt: true
|
||||
directories:
|
||||
- "~/.npm"
|
||||
- "~/.transloadit"
|
||||
env:
|
||||
global:
|
||||
- CXX=g++-4.8
|
||||
- secure: Z+Twmk8/yo4FbeHqk3TcLVK4fR+KUoevrUxkRM6SLckVeCwlFnoD1kQ4JTVHuS2LbW9r2T4VJ/SC6yDtdjqMRvD/ZtPw//vMw9mKyBEMZN4uxOhmHp4hltkBErqeHbZpgd4eSwSVrqDwliK27Q42wIs+Rjilc3UXqddWEmmw/VuxGR3SRpACILqe2Fqm/g73iX/7PNNASuXwmWi6Vf5ZeBQTGiCfPETblBa4WSCrPpsBv5flUEGNM9uFoXXqjAC2TyZrS4yiFGxJNf5/UPp9xipr+RhoEp8NX2GP0W2jDDfUTHFGfcUyF2lluVJKpkHjYQYrYBknjTFcQHL+aE7GWU7f6kh4g3i6e9qktVFV7yNPPokxuvVG+AxExVhZHK3wBTh2ZWs5vjcd0u5w+IV9+v+d/CZWl/zGRcHDILt2eUW9KZwoGtgrcaPnlVtYPCRBXPpsoD+lE3uOuGGGS/V5lmhBnCLexj+2rzztyb8zhQgZB2rLKF1zQ5JiBE+z0ykjHtZWMECE7r4H8K4hoaeOlIG9suPSgwQgl5HFniFUBzHWXqdsOA/tAwGAtdYSlSNAPrkiMYqXjb+1Je2uhYnfV2roBolufLmgYjmDkpVtaY968Zi3qSYTDX7gkx4NEdkiZDLJK8iXXF5RlcHHaUlno+4ytvcNMpf6V9EpTVeLaIs=
|
||||
- secure: o92bhAYmfSq6G4cpWcd8pbvmcL3cQFNXvXNmrdhWsbyaDJm29MHGNfM5d0AwRhw1X/mrIB7COG8QgK9OSYvFjFsHMKUhsryl5AWJS54535RzSV/NjQAZZvFJIf4SUhu5OEPxyMFrkCaaK1yWiWRaDRTwcjmHnkCJnhrcrtiOXPnbK+oTvDFZj7/Fz8ljtdFcAt/KGnKxreF8lojCeGh/lVLmWKliA6t55buguk1fF168wzFsUawFZSsq/gCma2SuW89CdGoGJzyUtkHSrm5T4t4wA8beQElzT1cu5Yhl62XzelXSU9zwag7/N0PlTqLvji/hhPNgck2Vj37FYo99asygiGrXBkSA+wC8tnGjAvEwO9eEch7wdnFn1IFNSNI9rDrRWBWnoa0Rq2UyUtdcXuNvDIYxsZSkWf6cuNI/BaEj2eYOb9vn8GE1hHVHZ0fLDbSN/PW5htjUf/pklBSoIyQjYE7vQAEnpkiOrpacvaMEzdAQtawIIN7HBeVJeyecV0R2r8E8NzL1JcqZ8GCfEjyAeEYjlKDRGXrzu/2PfFWXarOjr+ePgKVZxd65j9Ueqv70t1kUn1Y5AfcuiqaRveVQKn3vGLzO0u6mDz8t6Ic1/8/t4gQ569AoQFm59TLlD69kZzu05r3qF9X81fPhr2UU3tX4ZpyG1K2qk+bzn0Y=
|
||||
- secure: UYwkNMvX05Wp3gafovGHi+F2ks4/Hsb1Z3tfTTSFQdocOrU64gsE4be9jhoBJm1qnkAjOegySD0/YLA+kH5EwyUVbKrCKPNRvLcUnYGV1ohR3aWZkZhKbG9vR9zl1MyHFuL/2JTg+yI5ZyXB2GkZVfZgHvWOlfsakq8JA5G4DHLoJcIA8/cKeyb4HDWm7ZsELoUW3+VKk6M7OGS5kSMeMEJHHDim3A9mT6sBraQ3ZA+Xek6vNfoDEslG2coybsLBgbTCbj/xANnPk8xWo03ZtGG8LIWkq1FcU0Eqfi0Jp9o9lYElzTW0fx6uaeLcBX/VhywszSw4EQT0dRKzUlB3H2vdRqSo71PdUwYoSV+oUSU9WlOe0Z8efRN1sXqS0BefL4vod6Rl6N4cXhQ5JNQtRoNkQ7mDzTcBudCw0jFjSyW+1ikiH19tNFd4SMBaaqLWOeia967/atwXMid7Oc1o2tFT3Lf3w9DjeTarsdW9K7zPQpN6DPUbbitEi1XqIdwXpNy5F15Jy7/qJzsaZ6xI5pRD98NePP3j2fqwLbJSyohut2mbxWPGYEfpLsYhwVPQaLm6xJZK2ThYJ3naRUzMFm4Rox+I2FhVX2j0ZsLQf9P+Xi3jahv3I3LI7iHHlLNRgyVlZ/+FcJPMPpmBqsyWnvmniZiXqk3g1499LIOjf2A=
|
||||
- secure: gAu+EDw7HOBeemDsEroMhGPkwvsnAkTlX3EbgyZUVs/QyCad9nxK5NxqSST8S7+CAqcAMtpS7HBiwjsjV2qZ3iJ12W1KuN3V7td7hDX/FC7rzSIjyNfkrgOvb/JYRG9RMtMLds2XxyojZYGjyBZyjunZwI8UquZqJwJhOQo0hdv4Fj0rCjq7jeMGrKgSiVokOqoi3KcfBugbwPLP6JMDTmcIvcD+x3HhvxMWXIfuJyaalZYu1wfD7s811iTl9IN+VT4YkXx7K0V6AmwH8zJKEG0GJdhJsjQcKOqBpk0jjfvQk/XQOFqYwimzRkYyNrzLOni7HHxyaMcv8SzwrM8beasu6o9HPsmOFtwNYiacuHi6ikan9EyGgaONk62NYtAmuV/72y2NbEbpzpSwcBvkDwyVq2iif3S5zU4qWTJh1K3YfJqOqhhNwL/j36drNb5xnRyTCl79Y+60lgv922H0FifpUZRZUc+NvRV9Q+uqJdlK2vzfr4P6BWBvOjlOfzSFqbY++UucuzfdAVblUbhTQ6bofPFw8ZLMylu7QxdCpu7htaNgxssWiNW+BaUSm6fzQD8ibP1u3n6gmSEVxZuUMBeKRE8fDR4YfSpq0BYgLrc+sUNq1iZzKnVGKL79mJkOAS1Sm9tI/vqG5f2Uf4donAWT53+d3UAH9eSKTA29meA=
|
||||
- secure: NpYqPeN/gloTHMywnfVlyLFj/IbIBRkL1nb4SdtA99NfRJo0kDB+k6wLNaLNXY2q0WhpeTQIDPJ2ptONf6u1Gu2yxFKN3myYG8XVcmYmIWbqKAaKFT9+SY0SrP22nPmXQL7oyfWxsTLUyuh8F/52FlPro/o58QZK8cJE5CCkVeGrTb5LetKqmtuvndfBRrb0cLOCkk48emUtwjbMYUMDDwCIWmtTPKMQCot8kn2XAQQZ6kDiP8tu5WhdNnS3kjfOCLW9A7EYt8ULkRXWHN1yUoVdWwLlDEMglkEthSp63bmDrx0iX00lVYFbzkohEYA4tCzXklP1TKKV6xQG6DoCsnJzyaqT6m8WNj0EWghBff7Cus0WvLKZaAOSkZfsyG/q94PdTh1PMiRbNuJQja/JnXqFrzFLF/bExA3tHZOcBajGL2fynOj+IsNuv+DdP0q+kApUwZKFG4fZ6MQkzl+R0gc4RvlVakp3sTgQwefd0VJN980+SKFzofdzEkaLCwLMXsYhBLLo6jb6/Xm0rq/uWZLM/kKdnA2qYxMUjF3KZY4HT2P4nVyFscDmuDPjJ49dtKvWK7XGCER1JtW2J+yAyZ2Slv/TzDWrM0IRZlYGbRkjq6Sly0KGABanMXC2J29Gy5Q+wNoFD5NBE+pz/Mt99ggXn7HrlCQvTpdtCoIpYpk=
|
||||
- secure: YpVwjcpc6FomKgRb0tP8MpITEOfvMP2kTAnpSfG3USMW3mZ8Zkn8CLr471DjpmVE2jHklI6AfPTpGPFb1VOsrS7Ea4jxAJOdBwH6Ab7kL52GX0GYtPsSxeTVME5IMZXsU90UCbAXKOEkZbGq5sIaIHjAePmcNSv+OHb157fqcyX0oSJWDg1eVzBikgWhpKtlcbPFp7AdoIvhDr5bPLyV1c0HmOIEirc0VcoQg3fYsKB7mY5tP7KCqCIJtZtD0+FiSamp13WImD0/7wwX0hbTG2KH3zgjyiKOLxsbwXOIpXIJ0utXY4EFZBTTSZjItbL/f5wzZ+xBhwAsy5/Vi2pCtiVI2sUZ98b3FioLdQ7+3jQviNmOam6b56KTNAy2l4Tlu5h8PGtBvsDo+ZcgJ06q65YRZQcnOIweGv0vZ31cdgcVXRb+8fWFywQeIk6DD0FluB3/zZl7pn2Olha0gv4DxiythXDAHRoTzZfFfaPL1T+kl6ViGNQvKi6ucy8/ltlO/JKAeJlWKJouWOe2TvGMNU6JKQfAiqz1y16lVa8P5VYj+cRbsfalYfhqEf96kMdelgCup7mQdTMAiOP6lhIF9ItMjVqVFQECYy6oItxAGXc8UAJJcKJSc6DwVTgOK6V7LfkoM8O6qMeFzfpPnsFEl3uwjQEmMzc7Wk2LxkrFoBI=
|
||||
- secure: gqSy8e0l5gm6xqgKtKwbE8K+bhIrL9+NwqG6nADUhEFZqtNiNzeKu2Ym++cTrRJhBaJQr9gy+GJtL2BH2rFwIhtuk+/zsdaenPC8tZ/Phof5MBVJApPJ0kgbbFpcJFx8xu6TrlOfDls0Cu8RHA6FQ/4RSoBooCZOrWHrPXpJiN04lAZUpUdJyAg/1suP2owAcvJAjKI7laWVLTkhDZNjDDJ2gSjGtF3AnWL0piRCJXAWehrgcLFC8PMC9RAG/Puxh9WH8dCH8Tp0ccfib11X2mtT1Ii6mwg8y6U6h3yoRC9dJCB+IGjDKkE8aEESzvsQBp3T6QIqxNK4gAhN90je+bT9AjoHLVcIao7aCHCAvOXlQobZCzWdbfCZJEba+Xse2Zvwyy0mjEae97eljsRwsaH7qXEMcBNipqU9S1p7DQAwLU1Wgkyn1eml65Gc12VZ+fEjzS10OfYLHnxxUnrjGGJqNOdVkj+arwGm2ZTYzrUB3csHm47mTQz2x9QqWE4ICs3D/OLK4zMNq+pSiYtYv6sbY4WDWSFXMQtkys7DgCBAiQg7Eekedp22o/mVX2b3ZQ11SUAT5MIvhGRzvsk32puaiVW2tSAXeH534diuNSUuguzoDrS1fGBsBLeQbV+f0QfhjCziF1hWzp3rwq2b3szsC3lDOxG3Zq/lCGIZ050=
|
||||
- secure: YDeqwl7CH0YoMqy+hgqcdzPUHVhiZxiHHqTt0INX6o6LdB9gh6P2II7nJYAKuXeIhboM2bVsyGoiTnx/Pxmkil8Kr7Uc5KJZ/4bHD3+MLT0gtrfh8WPyzMRePxrjn380kYFYz/N5LSWRm5A+92U7wPNRYBJIDWpVdHxE9zs7nclBJsvq/Gyidx/2A9LvEn4zmgCcKgB7GoVfXCtMUpQTtVjGCt2O+j0abeg8cyA/edxZaUvgHIZxSM7oAQjvlEloSSKPQPcrmIqru9fSN/VHyMLATUMtqp+I8jULOA+WLDgyEYUA8ofdMYlGyVlSp01fYK3bSNbcma/dln/O0wczPsIlz2ZWhwKXcGn44SQWrOOEazs/FalO1TNAql/1P2iyNd/1M77EjpLMWewpqnRCvKiCVFiJ++MfE9jEYbQtvc3jpa+seKlqPnP/4kQlINKow+J3sI7zveTf/iIcS/zN86oQw2QXlf7XoiTg5Et6zo0a+cf/uuS6e1m4cs+kvL4t+g3mMTgtou0Hifl98BmoyatP4/SszO1/lWEKi0sO06zv56A0FXtUjkZAX3MA8goOIHfpUZR1KbrbbQdI0nbAjHiIvsGg+aoAHTx9xMY3Ceb/xmK2AHZZfoH1yJFHARTbiaNcpKTPI7wp0eH4Ptbmh0u0FLQEYFtt3vQGALtueU0=
|
||||
- secure: GXEHrPdfmMrBshZqAEXzbg2vHRvammVLxo2PwAH/m4Mi30cSoRq80aYH2vrzWR07jAEM/jyS/OSY2jMBgQPGfF2c3lrdJSSkqFUnfbvHnhH+fZe9mv9T6VUyTSWPge4z8ZbjHSqZORNW31jCuZC2ftGJBJpYdfoKaladK08vcBIj+bG1bjdZwio2HjycO55saILrZQVYHu6VKe2g2oNdEC2xaP1NBuxBFpR5NZwOLQjPjR3lU8xvTy5hU+rxR0ILi7aJ+mIUzcK0q3FSoLFJTa6E6OYWw9DMamaKk6OpBqALBAWIAw37Z6qYdgolQqGR3ZSgvR3aZIDveoim6tVWJG4lLn5mD+jNuM2N3XxFOIfSafE3PDJy7HUsDFkv+nXh2TFzEsFSzNxY1I+falgkq/CEnMSeYWxdvsa+H2zuCBoi6Y33PqR9rgFjukdJ0R2Agam1Jx/wLMoOnos7gc12fm/ARlUSPMFXmuKuTLFparDPZeh/98Wz91yyI1jWww3tQOVMOTiANyxXaVhOKsmhyOqfvvaaytyWYthW1ZQCczHZYhXC5bL86hq3ZQkFFhG45Z3zxmsXMZBz8O5T1epsR8Jnsja9OmXpgLuWx4FBw8MeAtTYC1ewFFR52LMgcN2KBTs97iwT5TIPywA9NMvl9CnKK3CReEyzSaPdtECBBIY=
|
||||
- secure: h1Ye8bDFv3F4Z3wWXLHCu8fTXiHQ30pUDi5jEW+e5FoQoVAFLzZNlKTFpPKPv59DT163G6xdA5FbJ2U/8rnmKXChEP8I7p25ajK5hNYr6KKhmR0dwBzEE4Vt6pgjiWPnaeBVsI1nxb8++aWDPoAAvphfzrSvPft5HYHTjpPuHz3TDhxY2I8/bP16ohh8M1MiD+iPbk+ScGgjJhzBUcW1NgMat2j4jGYPtzyQknHM95+GSBgdpKT8GJqsgivUGX9CrnGEWHUpq6NlaGK0uba316WxVmtGGi7obNvIUrxghbN1WtrtNxkg7DnXk3HHHEupc4T339zDZ86sIdJzRqlpdp0kTsPHU/drb5jpWBtfmBjylVh8gTEwyecpUtLttf2Ex1/Am1JiwchqJfd45/fGQ411SFNlvLUH9Ew37S4Q9wG7lafpbSiG2+oFxz2OjHM6VPSTVlg5K9nA40Ipf2TE21GaPSPL2j4eGm58VFym679xeTOXo9bZ537uuiXRL4ODjg7aq/Z6VgKpbyeCiC8iucapdQcb9P6GweB7t0gB3WK6Dyh4XpwhCqOwKNPgMcyd5+6bNVAIxygmo0PLaQ8L+3huUtqqaMFm6qvy/e3djY/kDuBMVwmee3D9xoDVPcF2Mtz6pKcFjVGmYJqHM3aFk3uc420GFP9gcLStWTz84MY=
|
||||
- secure: likLGpAGYgLhnECaQjcrH6BafZOY6i+5eQgCswfcHHl7GZdRzDCYpvrb1qPWIAPkXZV9ppAoPUk4koaJnCztQqv29/Zqux3CQZoEVGhPRpbqROHAbbMjl0FdHJyVyIEhN7s4sbbYl9VZmy/hMGKgAumxnjihLU1GeEMCT3wRBpyKpNQQbyGsXTFMPikJP/qzaAUMfOHVCx3zXd4jvxZCXyTKYptqw363PgFHYOmWVqx/g3lqZyg4/B/sNdjjrEBzPIcgktX3+8sdVB7r5p6Rp+J4xG1EtyKcPjKfAWXBPPNbiSeuVz0B5uB3SmxYrgfSyU0wfUVxNu26wJAn725w8RHYg272CHUS7YMkEKx1cvUKT8f6yXBFlryZvmhr7i+PXyGij4AaqdMrEtrFPALHqgpdp+vkZvfnSzg18ROvZX8xQB+7vFOeVMXsmWMpmvcUsI2CW7Y/k8Kq8SBs2mU+S2MJqyj+Cqq3bytSrF4Hp1OI75aOIo95xB9MtzOiMhQFzH8AQ8JkbsMXEyqYJXpAIYAK/5PCipRKapeHWdSukBnPToAa5/eoSGtvRtcdkMP3Ze4SHDzXAkyi37R6sog1TC4gFuk6rBZDInTFxz6u2lew0/Twl6c+mUaWZHZ1GUuAoXUPXFM7goBhb29uliLpDSxffcgAfShLkWDthnW+hU0=
|
||||
- secure: ZwYPb/dBqPGY/PdlaLIy1au0nV7W9Os+jgAjvligvbHovfv3fWSBffpiql+h3kmCs9I9HYHHSZYJ/YMGEpa6YBKU7qWRmDxbOa4uBHmUZqW1KB7/kDbMySISs4oPhKW0qhpZBpwM7VfXFvhhSHdNs/ZhH8yqTojiAstGIBHqUjyfFBR3s1OxLJCCKTCZdHCFERYCd2gPY1aQYgQCz9ZelEx1h5NIMfGZwPX5XswlySg98sVZ3o0NGLpdiAfx5TeJeB6CnD/pvfMgu1B42wGmMCL/lLfjz+SSKF3DqMiE2FXYWgLy/2qlQ0ampTNL+tkEmxOpRrHHlWYPxUqvvppBOckO245rKTtajioR9XlKOgsGrss68plCujryMMmJvKWd8USlYSPA2OrxBVxrEavwMYUfm2H0GN31AYk8BiBtGpoPC6JN7nVxOSbnrhSca1HhWWqTlxqeM1vLi4qBL8orhl+/UhLohsiLy58rlRDZB/kEHDjeSZv6EsOmZRm/LD85sCCBfCCqhtI5+7Spt/SrRLXeLKuPx7+nNgzeAjRJPsmXrEQUjyE2Y7/WEoBPyjuxRaxqD/KNuSsC6EDGfilzn2uo7Ui8qSGlWIcz5DzVMnoVk8svN+hGU6jujs5q/xTvaUp9/4u0TnzQUfGxE0HQORlmuVDzrRzhgV56A36Kcdg=
|
||||
- secure: N3Ji0VgtTOW7hz4TcTpQniZRBoerPWxnbenVmGi4OUID0rGYo1LZZfjbcj7aybrOE8ZVl+spNaS9tdcu6zBfIFwMNzBdw7DqpZ4qVu1ZWjWi4h86lCDTcZO/qIfBXZTwnfdwm5QpOLjgPlidEY7slflqqvZTd3aCQ45uqbnGk1lF7LiYtafmXk+mcZQKJWcb0KUFKuV1V4Ongf09BS/aDd1DRJX9lNuhHAgWjmV5gkN8ns5O6D1ThdVQ2ry1Ah2L2mW4n9FNNLQtTWYAg44dtEg09mEsskGv9rOU0ZeXbQsWWRgFpjZhNOK8sU3RsFq+tgBh0eEUZhVb2f2cLAVNwOilTKoKQp2edXU5jflF4v1QHMvI4cPeVY9RcgSS/F2usxPhUk5reZRFUPSKx2xKjmZxzRmysWaut/ZY/nwcicytihzCWiY4ONcr9Jz9gSxge+R8WKelpfyta0Kw781I5uUwE4kvhpWkzZbfNmGVBIBy1bRiBtN837ri7ROg417ejQFbRVsEs85RA74xhEIIOLVZslw03alBHZ09ddfBRDTu8hTUdXWNbAcm83qGAF6ylSE6G6pCp0P5IDIGBkIf4qGtrooYZDe6E0RUTd4SU3uyy0uBk96hCmULe6qfNSDyJ/fstCcCnhpzOmf0U/mhhR0qtHSZB6502iiruNNVtns=
|
||||
- secure: MQ60bkqu3F8L0j0crjiLRKjiJEq9XA7+Evtmd7/2ePX2f2mEK/i3MHbaMbTEynHTJyJFMJvxxL/hrQsrP4afDBSi95mKT7lSMQWjS6m29OV5lw+uX6aUFyFZ3dif4Bdbpp/2KVJI9i0BFKRNGlAt9s8yVogesYTkJORZDbLOJ1Fa/XoqIkBrN8Cd55mi/d2/KUtuaEOfQL4IX/0Jav3M4iS/EUR52Ah7O3cxWM5HPlqNozfvu/9X6OpCcAZndTCx4r8OS6igsvcm4v3WusELuP2A7/jeuoXbTA4qaSi5iX2IJpSYxlf+6eKfg0jt7fRSLhy/4DJf6WK8IFgm7zynwCXlxxdce/+gVqowuv1IWs1oNVJzwUjlppX/k781Gef2OWyiW1lGk4cUPYAx4kXnT+iz+KAvf42Z9Z44Eo9bmqNcNy0jBBcq39is1Tzl3DQnMF3VdvWrZwEvjTKocGshxckdzRQ5A19LNgmJVSPIp9RuwbkbfT93g3E5H1siJ/Vd/N0cTOOX2EEN/gafHTdn3ADkFf8m8MaUFDY4dv+jpJJuAqDoTDeCahEUsPYZt6RoMbwz9CJICe7ogrKDxSUg0yHltRVAqmHsre7pg4GfHzwUjg0GQxd9M3KK9pbvbyICz80FoZX8uwYNDZGZGajbBabl2H85nVKKaQuFcVCh2bo=
|
||||
- secure: X5QNekemqk43oxStszlqBH467JnsZK7/H7B84DWy1C4T/HD79OiAOZtGIGgsA/2hRVqlC7wCrqN6PFNfzPUAXEz4Ls7aGvQUjdDSQwpqMari9+nZoBooZErpVjQ7KJyr/d11H3xLqvNUf14ECbCKean8945Js+mjfP1nyeHHGKz1K+jKMZY2oAfModQl7NAwebxo+U09U8cUev1XXkQtvHGV2fvNSSO9nt7XdAkP6dKhHdesNg1W9F4/A1di5ZjAx6i9aFDqXYDQnHGGmFicZOFBJAoIb78BbMe57iFFf1tlgTYn1LbZsf7G5dS9ZUhAWBR1MmRrn2Xru50n+bsXAxELFFSphAwqAUhp/pFNEXLgzqL9VsmicZ/HfuUxbfRvOzSA1OuP1EWEuGocSTiLx9Tb1vGjOFABDMCJ/h6sXKhTg9w8Gk1thDy6nPXp0Q8WK4oNO8YWel5/f8VnTIscaNgGXqjTocpMS4CXQXc5FmTtXs8luqJz9M8WIbzLzNqVmSEZ9PNwtswQ2PjYytq0kUU26+jB6kVkCetuS8g6J83zkq1FEKVDp7xMaQzqr6y8XYXxd6PwlpODjgKZV5Xvtvg5juCEXo7T2WYgZWrP9EzjlfFwKnzNyzF4bTfO/0NmYKeuvh5aPuqSQQNaeMzCEGkPmb0hDH4QXdW6tcTw15w=
|
||||
- secure: kpl1ZTVCzTRMmYDmtA1yYbT9PQOBB2JgnRX48kK9OcduQE7V7bLR91i8lG3JFA93RdKVqd5OOb7ExgcyU7vP36ckPZqCL9R9D1x8QjAdzBDQ8dopCxJreZyLpCjETo+vawh1TYz852kPvnEQeAAqQ4/TbPl3jG0CvxGNtI5oOKIT49/BoIeL6XRdFEuStbaXuu65xPIVvqvlWWXj4BU2KVvbQE29xonsNaIpf5nToY/IBfmmvCNEso8PTJ5CpBw+NgadPKP1z8CYtU+wRuApEyDcboyX7Z8NStvlq9pKvKltcFgSgZT1Ng5CbKrn+EA4GYfEudw7iRkopJJyA3nhSR5iPs7nlMiv7WRHzXsbUA/6G8m6/hDXdw05sfNKgVxQGdq0tmiKVvwHXJ9yldsv97lB4TZgm4SbBGXqHZAnw+m0K5rRM1WzM6QbsaXDhWwwruOU4fqs+pHr4VPR30DezDaNOO95u55r3ZSUYVg5kJLr9JUF8FPU2y7cjvX/68TsESNDD6o7o2O7S2trLsakEVuXTiO+J0XXHvtbJpwkjH3O0r/uPpaGclplm6NSRZAFqoiUSuh1Ik3GOlZx37+9Q5UTeoebGAX7AQ4Sc8ZM9wNbx1vgd2leoE7zAsFNnvDC9KTreMHlJle9zQowRjxwUSeZ8rhqjG0LO9q5GLtGk/Q=
|
||||
- secure: ZJZUbrFwWnvMVKFVhMm4W8Jgxhp6m0gY68CEHmnUlMPjjaqaAd/pxUVPhu05Ux+K2o4e5vGveTtXcd102NH+o6RdB3HwLJPEG/6L5Iy8ajDfVmQBjlNH0aNjQ0SLr/h8lHC6PKuGjFNywoX8T4FA5h14XO2QVkx5sO1piVRNFTSjNxJterzKGvuqkXqARQet1Fw/GvPjZ4WluKheTsPo2qhTA8qfz0YrS61XqEP75E3Gd9+1hO9rlOnin7EXpkKI6R5qrqNZ2RFatK5fcrLDebbBuvMZB0dYmQ6KDSSNtmF6tiupSAj0AXXNiYOzIi5WkYmft2fF8/ypGGhHnlfDTqZMZKBq9YdOXcqCuxU7ty+MWART8OQiduaVg1ftjJPtdrUlSy7zgnI3Xn7SsxZniAOTNESpcWAaWZvxBfaKwTnlQ/daQBAo8t3A72DGab3S1Tt3xgEVbmzS2u2ghKi813M6fnK3+ZiJqIMftGlq0bMhJfwiJXboLpBhUhNH9fYBz0YLwgJyDpb7AIBQOgimYTSFLFpW/Ky1wFiWXmCdY+cMIiEmgbBSftpHZQeJMNZkbE4N24ooe+Xb/tS014+uScyPbJzKQ9q7kcKUwT5VNC47RU1YwyYaILhDzCBGmN9zJ2LAXjNqPP0XqHUlrBgaey0h1T6c5lighelGUrHN/EM=
|
||||
- secure: HAPlWHSW1vI5XD5MnbTUV7KHAvgrBSFY2pF+clOCmC4A6cr0zf8N5kGPnsp0S/fU7p/BUlekTIdlsc6Q9kvTbtT1DPpGG9IUW//dlCpRBL/74FE9okp51jzJneFp7SrCBxcIB5IZvOGvQEBfHmW9dopXcwWs9AfMVArZsEeKATQFyvPNDGfssBAGYLy0J2E9s3ZRYjcYeyz/f8o8XpSJW8pgI9qcOd4vu/fuhmzNY7yYdATxv/Y8vjJ7r2p85yhk/MhW2gwJUdwGDkasCWjurR4gLp6l0lXd9jpQ69h8iEhy7lXU8VTnM8tPJ953o3FF14YesRngSrDj7zGRRsC8DMKVh53trug8COHjj9ILeDrcdl2RBBk96fdLrd83Ct9t8dqNY3myL676w3n1zA3Gt1Evln5T4lVDiq5vliWBdc2cMLZsD/n3UiwOfUId8SnjwozF0Z0yIEn0UfTNkgjARPnPkZ83d3cAlN5VyXv7AhYO6S8eu6aHTe+W3iwJ6DEb+k742x5RrY9QHrMYlMS3RoJjTpq2nuB1D7h8oqKaohWAW7Xw5jyLmJQf78Sn02it0x4ZCNwvE3f2qUHIgwejUjHQTMP4IO4kE00yCQh/SE4M7YTweL4F8kStE6sLOxN5r0dpn9FH+uJ2yzs9xLPJH6fH5WJQvy8oIZEWNTWoAks=
|
||||
- secure: ZR5wbLfraJUNQPLGr61Mvj5v4v7DsNQR1C4JmUPkEz89P3icpjYWgWvYUzeU6RiwpVw6EZvFrItosHpxN9pBgha7xrgtsJe1JoyXWmLKeDSeMSmnsW2CcTmrO4KYQ2TTBh/zQJCfkhSveQLaUdTBE/EyP1Ez8Q9sEmsldFxeDNQxf5SAaYJeY6tdIFaeh5pIRfqRUtF9BrSTj8TzBq38gW7/B6ccymL9ZeL766h60sW0Z3dt/Z4KEM4ePgxfO8B1JHdAoENfQ/eglBBV4aUdS6LA3OtEUf8ky7YEfOZVyF//mgnxetNPq+5qoDNWwMhFmGlHefza5eSqiw5YI9eWKqz76X02U8zrLtenUR9oyuq1zuXZteS2zdOBxsgNR9MdX6k4/EbOVNpO3JmBwUSODTcdae7o/HJJO7v8VjtFGdKwbBVOhHcZ2u9GFeL9X7hzXh8oBJdSbgudsWyzC/eyuEeyZY5GPmqbeGZYy4o8tB1p+29IlnOJLP2vC7ZRXQAfWkre3WDHXbRlL61Oa5W1mxyjAOjrVvRAGPtFiOavzmMD0u97DwWsTJpdZyFvUOHl9IbQYkh/j67q2BGB9fNvfvMALVbr7z5lm6+MjPH3oz4OnYYW/+fVOf/bngxw5f/JbAQbrO6bcU/uburCiB0JKnORlsN67jvoF7Dz/2mnkQM=
|
||||
- secure: V6qVB6vHAuSt1YPgzYpknLglnxbYJM5bsjAjQi78zZQSqrrWCMBgp5Q+Sq7Ad8nycgnPl8W8VpMnUIBqZcK4ciCW+vJBtZ7fBJLIEGMEk8+c8az8JePFcBRiaEicZPvZFuIHPteaAy6jK1GRVpjSjJi3NYEMpcDUs2aTM2bIpX0ks2WjUqTXiK8EvIaK2LTOgSBvyGUOiHwwTkom+PyD50t7jP98g+9Pn7GPwtWaUo1K8UpLArwR2fZ/nm0F2DU6ohz7o2t4LATFXuZhbOCj7O9vh+CmBf+/0C7giT3K23LbckDSK8CNTCDC2bsv8zDo5ZZtgdOvdatOD+VlsbAMkmUzzDgQ3410arZ8g1LVQw8eJwu1H+etcAinYf4r+Tr7s3dTBliMX70/IpjZrkHR9uXEi4LelBNYn6TKdLTW3lfVWkiFs/HPu4SoAmu1+sxSvwxVDDLeexQmb2fwp0r2tDKZ3eRfpQXLPACBaORnGW6ki9qXo8PBdaElxPbpzEWzAfT3F6zRjebpow+cdFBQrAga7/LrOrXerZxH2ekRWKgXzuhw7ERwVFrVN4/NlmDJXo+rm4na7n7CxY/QpZcdpthksDO9KYCqmn5dqMqFGislRvRe7PqIti8gC4pSdeUhDKsIh9OEgVNjCczvnA8rMRQ5aNmFx6wspmrBvO7qRLM=
|
||||
- secure: rVsiFPA9TvH/d2wkP8+1i5QGUuYw0q2BUAUdxyxO9hQcG/nRiHXtQfLbTRZHKwvqf0vyV6J1pJqLlVN4JO/bPhAvk55KAQJWl8UqyaeZiEN9KMcTr3fJuNFlBj4ciYiZ3BWwakblsiaGCjKMRdjki58a9f8XL2rcM8R6ccndjkTMYnBKaopSsAgouI8D5n74wQz6lODUayGOlbwlGLfGtPYplUfSLK4wghC+jgWsNjJySqJhfgYS0JCZc10Qw+FI2BoU4SZ4+P0L0YPIC9zV/cUW4qDT11N/oUgwfjZbPWfM9A/xn/d7sgDH+SpeoGdYler/lvxojj6L2mD/wAh8/lg1E6nL2aKgExE3z+fd2XV8L0osB/sulB7/Exrezg/mVejAx2IkWVHi4VEJmcTV+3WeEvTFOM3fID8dOVf+GUv+hcHdZMxS/hfj3keKCYG1P5ameMJO8FehRqhetNYnr6FTyrK+S+xitaZ/nXrTbHItPS0pZ4XA6CFs5uzMBPeDnk5/D7paPyrE/k2HAc1WmA6g37OyzYIMEV1laBz8IG0qMqg6JJmr09P/Iwrim5Ex2fAssT9Yr1WuOE2gWoF0A3XuVXQHVf4tJT6x/WDKChmbX588a47AvBgkFyoXLRilUYlET2tWnEpVxUovsbJXqvHwTXWMLO9riRjjeInbpvA=
|
||||
- secure: eq5hOqRBN2R7YO2dYdn5OjZc/zLLYYDZcCpCu/K/8fU4HYWTqxrBntjv8T0sZ5qdlAs3IniEfXxemz9V3zwvxR+vh2bGuYr2Xo7RRa2TIDuw+KUPZogrVxhXHPKfyJqstxy+dee2+pWhGkAP7caiu49eyqlboBMkzgpO/xcdehEWYRY5jPgvnlH+QRZ3GADKs1JEeltHDiZ6rYA7nj5Tyx9UoLgv4Av9UXdC29we7dLFTkVfCHE//7wfZW9+/IbxthA4qMjQOFaBrmagN5yweDg87iPTqNMth7FjzOavdUgQ2TW6d10VDEhLIZh36gLGreViKMDCEWKMQ8f/mv05Ao8+DXyXgxIn56II8lhUp5ukQ27ZWixfEKFx2lynJWRZE0pWwf8ec1+bXLQiBOE181Cl4nUT/TbFWzvV6yA+cMiQKe4y59bC4nhkK3IYgpR5kfCFOT+1tFknQ4hNJNacWwUmaDFMxYJaXEtRUn5jJa7eGRYSCrmnymbnzZ6w3Q3nQGNvNxpbBIXX/pzs0VDVTxSlgN4gA+n2jeCyjgVVrMQ/HoAS4uwm1cx89AttW+TANppg1PqWhhrJYuVEZSnvV8PM6R7rbvlS5tluezQj41YklgjsSopH7//+dbGGDNbrTTLic4J9PJR3yEtlAMdOCi53iT0R0Dt5X2WBv2QT5Eg=
|
||||
- secure: ZOSwtE0lBuVO8ncxedW3yGRactSMy+QH/ySPBy79eRmuqrNR+c4mfhiYQAyJ9jmw746YT+8+X/eRwlKOa0SDzUOxEdq6lHqUjubaLvLvy7mr5WHR2b2HDmVYUNNvKgLxn9QPgNwja1toSq/gtK/oi69ENbQLMOHgP8anOK4P6UK4NvoMu1DjyPmBStMAWeEMwuwAaYf4RgAkCsOLTJBejL8kCtWSZNBJmT05lBbE1oSFy77Tg4h93PESOOODek2RRgIikR7LK2rI4tG2oHeo5uFnCe83yu7ZTEI3ArxYtqynYn8iy/zOHf3ewIwgqcqRV/EcvKKwCHx7yi/VNk3qKoz5/jWzE9+ceoUd3vXaU7r1SfXX8ACTmQArZqzU7Rng2s+7r8I8//XCGAsGI6/cOOlS7I7Yr7Ack6CqLlL2HBIoNGYT+jXP/VY9pgkm6YlpNAphdoQrZ1vm/0CtQQ/q5H0fW16qgUJZ1vCk+3PZYNt//83bI7TyIwX72dCrMKzub6bhQtWRMSCfxZELFgue8f+cQf/+NmHhmd9yRJyVhiZvtE/4RN4F32dJbJjtOb4HjFTQIAyE2rZlB4tjOsTKJK7cT+X4enRzyinDYpAjMgNwloAg8xsn+YE53pZJLFUqk8q1yUE6XkSK9fYRSKVc3mb4ICDY4/hTzJRBf+tSUSI=
|
||||
- secure: I+xjM/yl9RuP3p8GcnxTnC6/0K3S3PN0o71XIjQVkSMtDwnn6qDVl6yMy6KMPlPtg1xCU59LslojTv9wKyQpECqzjR0ugIlNsvPmnmcIWuPJZlG465lwQU2ycRbNF/S2Eea/wf76HpY8hemSaXz8iXKxP3eQpFKKP+tcf8o+/g1rlbtIvVQfXb2vUb4luQdnjJFNhUt9R0JpAt6/P0mOUJuqgj3KkfwiILB6m/hZ8dWhCQ0W/S/HsZMbXcxgGmS5RL7K4jgYM4KqE5aDoZGu3dIqkjpHLqNTQGC3TK6Be2EXan+Id1jubTDnflOq6F7QRwisSnmtc8WgByjKLzJzBeM2nz+jah/kYVs3dUGxMfWR++I7t0ioPtUGRW5ZLUeIk4hrRnoLAGq9t9wladuDtdWNioZ4zY33fpDxc6B+dxuhW4pMPzKIlBBiYFBflxrHI9FnAOohFiWVwR99asAydnkNkmQLMg68VT86MpT4EQKahvM1jBHvFd7yPdSc0UCAlQWAOv7Wl2HompxJPlqPNXZcv6hdX5XkKQRlgscl7WcvXaeQV47+J4+bewUJoCOEuL9qeTke6MP74WuHQwOhnwvEf+AYhQ6G7T+jaFGghSexfvkZHesYLOG/Aln/CYk/ZJuLmH5cr6XMN28Nb5SqJdsYpfRwmU5LvT7MFqHwEqs=
|
||||
notifications:
|
||||
slack:
|
||||
secure: L3iQQE8sZ0ik1Z26gPoNMiIam9EOEwYhraHCY60Jk/wmfH6SW/727yKXpgcb/yayx37rUZplvoO7H8e05ISxTJKSepEeqbBUIBQs48S8hr+FHk0VPtpP4HGxqaITRLm+mI1coPRvfISxzrB8d240oup6muhC9Ws4/LXi6v8miyIOs2zoYmGxd56TrUeON3UYlKt6dMava0V4bugARzrafN/tfyI9ccqbHzQLBspQvBI61DzZ5I2vnWpkjfWgIHz9Fl4VzXHqMXwjuTUEu8ibA12b3dHZiJEAoqeb9Oj9QcLPbstPLhlNTZZaOrfiFtwLctI2rFh37slDpAfk5idv3ycxcoG5rbCxgyg5i6dpQqrqHxnyglgHg2/nZ+YA5okeS7nJJNtU/4S6AFRWOUUWMVVY0VBEV+8w+uurl0PDy80RUY3uyK64qAgQ8U0M81/Ys1oyWyn78TqHcbby7V2Ws5I9Yakrq8D+mdfsWYCio8F6LXHSwJ0mt2FanJtdDvpPk9sAwsXZN0n8xhELt5TiRp3bzVIQ0IPUgF54dTG9/zWRvC1P4TFaFU/2fg73ZEUC5aWJoFMnLSZjbZvp5gwpCVd0MjSBk80nF9dHYcavIgJ0wMGI3BMb8Nn6+T11Gw/ycr7OGU4NMkj7i8vSFgKF74piWZyiNW8orkMN6XZgM+o=
|
||||
30
bin/prepare-web-deploy
Executable file
30
bin/prepare-web-deploy
Executable file
|
|
@ -0,0 +1,30 @@
|
|||
#!/usr/bin/env bash
|
||||
set -o pipefail
|
||||
set -o errexit
|
||||
set -o nounset
|
||||
# set -o xtrace
|
||||
|
||||
ghpages_repo=${GHPAGES_REPO:-"transloadit/uppy"}
|
||||
ghpages_branch=${GHPAGES_BRANCH:-"gh-pages"}
|
||||
ghpages_url=${GHPAGES_URL:-"git@github.com:${ghpages_repo}.git"}
|
||||
|
||||
localDir="${DEPLOY_DIR:-${HOME:-/home/${USER:-travis}}/.${ghpages_repo}/deploy}"
|
||||
echo "--> Preparing deployment in '${localDir}'.."
|
||||
mkdir -p "${localDir}"
|
||||
|
||||
# Custom steps
|
||||
rsync \
|
||||
--archive \
|
||||
--delete \
|
||||
--exclude=.git* \
|
||||
--exclude=node_modules \
|
||||
--exclude=lib \
|
||||
--checksum \
|
||||
--no-times \
|
||||
--no-group \
|
||||
--no-motd \
|
||||
--no-owner \
|
||||
./website/public/ "${localDir}" > /dev/null
|
||||
|
||||
echo 'This branch is just a deploy target. Do not edit. You changes will be lost.' \
|
||||
|tee "${localDir}/README.md" > /dev/null
|
||||
|
|
@ -1,11 +0,0 @@
|
|||
#!/usr/bin/env bash
|
||||
set -o pipefail
|
||||
set -o errexit
|
||||
set -o nounset
|
||||
# set -o xtrace
|
||||
|
||||
git config --global user.name 'Uppy Bot'
|
||||
git config --global user.email 'uppybot@uppy.io'
|
||||
|
||||
# because a Travis deploy script has to be a real file
|
||||
npm run web:deploy --quiet
|
||||
|
|
@ -1,6 +0,0 @@
|
|||
#!/usr/bin/env bash
|
||||
set -o pipefail
|
||||
set -o errexit
|
||||
set -o nounset
|
||||
|
||||
./packages/@uppy/companion/infra/kube/gcloud-deploy.sh
|
||||
|
|
@ -1,46 +0,0 @@
|
|||
#!/usr/bin/env bash
|
||||
set -o pipefail
|
||||
set -o errexit
|
||||
set -o nounset
|
||||
# set -o xtrace
|
||||
|
||||
# Set magic variables for current file & dir
|
||||
# __dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
# __file="${__dir}/$(basename "${BASH_SOURCE[0]}")"
|
||||
# __base="$(basename ${__file} .sh)"
|
||||
|
||||
ghpages_repo=${GHPAGES_REPO:-"transloadit/uppy"}
|
||||
ghpages_branch=${GHPAGES_BRANCH:-"gh-pages"}
|
||||
ghpages_url=${GHPAGES_URL:-"git@github.com:${ghpages_repo}.git"}
|
||||
|
||||
localDir="${HOME:-/home/${USER:-travis}}/.${ghpages_repo}/deploy"
|
||||
|
||||
echo "--> Deploying to GitHub pages from '${localDir}'.."
|
||||
mkdir -p "${localDir}"
|
||||
|
||||
# Custom steps
|
||||
rsync \
|
||||
--archive \
|
||||
--delete \
|
||||
--exclude=.git* \
|
||||
--exclude=node_modules \
|
||||
--exclude=lib \
|
||||
--checksum \
|
||||
--no-times \
|
||||
--no-group \
|
||||
--no-motd \
|
||||
--no-owner \
|
||||
./website/public/ "${localDir}" > /dev/null
|
||||
|
||||
echo 'This branch is just a deploy target. Do not edit. You changes will be lost.' \
|
||||
|tee "${localDir}/README.md" > /dev/null
|
||||
|
||||
(cd "${localDir}" \
|
||||
&& ([ -d .git ] || git init) && git checkout -B "${ghpages_branch}" && (git pull origin "${ghpages_branch}" || true) && git add --all . \
|
||||
&& git commit --allow-empty --no-verify --message="Update ${ghpages_repo} website by ${USER}" \
|
||||
&& (git remote add origin "${ghpages_url}"|| true) \
|
||||
&& (git remote set-url origin "${ghpages_url}" || true) \
|
||||
&& (git push origin "${ghpages_branch}:refs/heads/${ghpages_branch}" || git push origin "${ghpages_branch}:refs/heads/${ghpages_branch}" --force) \
|
||||
) > /dev/null
|
||||
|
||||
# rm -rf "${localDir}"
|
||||
|
|
@ -7,4 +7,4 @@ ID = "uppy"
|
|||
[context.deploy-preview]
|
||||
command = "npx lerna bootstrap && npm run build && npm run web:inject-disc && npm run web:build"
|
||||
environment = { NODE_VERSION = "12" }
|
||||
publish = "website/public"
|
||||
publish = "website/public"
|
||||
11318
package-lock.json
generated
11318
package-lock.json
generated
File diff suppressed because it is too large
Load diff
|
|
@ -253,10 +253,10 @@
|
|||
"watch:js:lib": "onchange 'packages/{@uppy/,}*/src/**/*.js' --initial --verbose -- npm run build:lib",
|
||||
"watch": "npm-run-all --parallel watch:**",
|
||||
"web:build-examples": "cd website && node build-examples.js",
|
||||
"web:build": "npm-run-all web:inject-bundles-misc web:generate web:build-examples web:inject-frontpagecodesample",
|
||||
"web:build": "npm-run-all web:inject-disc web:inject-bundles-misc web:generate web:build-examples web:inject-frontpagecodesample",
|
||||
"web:bundle-watch-inject": "onchange 'packages/uppy/dist/**/*.css' 'packages/uppy/dist/**/*.js' --initial --verbose -- npm run web:inject-bundles-misc",
|
||||
"web:clean": "cd website && touch db.json && ./node_modules/.bin/hexo clean",
|
||||
"web:deploy": "npm-run-all build web:clean web:inject-disc web:build && bash ./bin/web-deploy",
|
||||
"web:prepare-deploy": "bash ./bin/prepare-web-deploy",
|
||||
"web:generate": "cd website && touch db.json && ./node_modules/.bin/hexo generate",
|
||||
"web:inject-bundles-misc": "cd website && node inject.js",
|
||||
"web:inject-disc": "npm run build:lib && node ./bin/disc.js",
|
||||
|
|
|
|||
|
|
@ -2,6 +2,10 @@ const fs = require('fs')
|
|||
const qs = require('querystring')
|
||||
const fixtures = require('../fixtures').providers
|
||||
|
||||
function has (object, property) {
|
||||
return Object.prototype.hasOwnProperty.call(object, property)
|
||||
}
|
||||
|
||||
class MockPurest {
|
||||
constructor (opts) {
|
||||
const methodsToMock = ['query', 'select', 'where', 'auth', 'json', 'options']
|
||||
|
|
@ -29,6 +33,11 @@ class MockPurest {
|
|||
const responses = fixtures[this.opts.providerName].responses
|
||||
const url = this._query ? `${this._requestUrl}?${this._query}` : this._requestUrl
|
||||
const endpointResponses = responses[url] || responses[this._requestUrl]
|
||||
if (endpointResponses == null || !has(endpointResponses, this._method)) {
|
||||
done(new Error(`No fixture for ${this._method} ${url}`))
|
||||
return
|
||||
}
|
||||
|
||||
const body = endpointResponses[this._method]
|
||||
done(null, { body, statusCode: 200 }, body)
|
||||
}
|
||||
|
|
|
|||
|
|
@ -2,8 +2,8 @@ const base = require('./wdio.base.conf')
|
|||
|
||||
function createCapability (capability) {
|
||||
return {
|
||||
'tunnel-identifier': process.env.TRAVIS_JOB_NUMBER,
|
||||
build: process.env.TRAVIS_BUILD_NUMBER,
|
||||
'tunnel-identifier': process.env.SAUCE_TUNNEL_IDENTIFIER,
|
||||
build: process.env.SAUCE_BUILD,
|
||||
extendedDebugging: true,
|
||||
...capability
|
||||
}
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
"name": "uppy.io",
|
||||
"private": true,
|
||||
"hexo": {
|
||||
"version": "4.0.0"
|
||||
"version": "4.2.1"
|
||||
},
|
||||
"dependencies": {
|
||||
"@babel/core": "^7.4.4",
|
||||
|
|
@ -16,7 +16,7 @@
|
|||
"drag-drop": "^4.2.0",
|
||||
"glob": "^7.1.2",
|
||||
"he": "^1.2.0",
|
||||
"hexo": "4.0.0",
|
||||
"hexo": "4.2.1",
|
||||
"hexo-browsersync": "^0.3.0",
|
||||
"hexo-cli": "3.1.0",
|
||||
"hexo-filter-github-emojis": "arturi/hexo-filter-github-emojis",
|
||||
|
|
@ -32,7 +32,7 @@
|
|||
"hexo-renderer-marked": "2.0.0",
|
||||
"hexo-renderer-scss": "^1.2.0",
|
||||
"hexo-server": "^1.0.0",
|
||||
"hexo-util": "^1.5.0",
|
||||
"hexo-util": "^1.9.1",
|
||||
"js-yaml": "^3.13.1",
|
||||
"locale-code": "^2.0.2",
|
||||
"marked": "^0.7.0",
|
||||
|
|
@ -44,4 +44,4 @@
|
|||
"prismjs": "^1.17.1",
|
||||
"watchify": "^3.11.0"
|
||||
}
|
||||
}
|
||||
}
|
||||
File diff suppressed because one or more lines are too long
Loading…
Add table
Add a link
Reference in a new issue