Compare commits

..

28 Commits

Author SHA1 Message Date
Mario Linz
b8571c8854 Beispiel für field tabs in top of the entry view. 2022-05-23 21:45:27 +02:00
Mario Linz
67f8e74f7f Neue Beispiel-Struktur für einen Artikel angelegt. 2022-05-09 14:18:35 +02:00
Mario Linz
fba9830368 Collection für MediaLibrary eingefügt (noch nicht in Production) 2022-05-09 14:17:14 +02:00
Mario Linz
10720ac6ff Tags Collection in Config eingebunden 2022-05-09 14:15:12 +02:00
Mario Linz
2b400e8cad Tags Collection hinzugfügt 2022-05-09 14:14:43 +02:00
Mario Linz
027cdba67d Prototype Article und Theme Files hinzugefügt 2022-04-01 22:46:54 +02:00
969ebabd18 XXErste Collections für eine Media-Library. Weitere Collections für spätere neue Projekte hinzugefügt. (alles WorkInProgress) 2022-04-01 14:16:41 +02:00
Mario Linz
2ab447274a Prototyp - Neue allgemeine Collection für Artikel. Durch das Svend-Walter Projekt und ein paaar Gesprächen mit Daniela, was in einem Projekt typischerwise für typische Inhalts-Artikel benötigt wird, ist diese Collection entstanden. 2022-03-20 15:43:08 +01:00
Mario Linz
258d89d339 Collections für neue Projekte optimiert...work in progress... 2022-03-18 21:33:01 +01:00
c723f1e1d4 Erste kleine Anpassungen am Tibi-Svelte-Starter um später mehr Zeit in neuen Projekten zu sparen. Hier werden noch weitere Anpassungen folgen, die grundlegend in den meisten Projekten benötigt werden. 2022-03-17 11:12:06 +01:00
44270c6187
modrewrite proxy added 2022-03-14 17:18:18 +01:00
e7126b86d6
cypress tsconfig.json fix 2022-02-26 17:43:34 +01:00
d119c39a72
fixed cy:docker: 2022-02-26 11:39:25 +01:00
e3ba15dd6b
renamed to tibi-svelte-starter 2022-02-26 11:09:53 +01:00
abc657252c
api schema 2022-02-01 19:03:49 +01:00
6c24732380
ssr 404 2022-01-25 16:21:54 +01:00
46c8119548
fixed ssr 2022-01-19 18:50:58 +01:00
71fd86b376
upgrade 2021-12-08 12:56:19 +01:00
45c628fef8
fixed secret exploit via ssr code sourcemap 2021-09-14 15:51:05 +02:00
73bfe07b11
cypress and instanbul 2021-09-14 14:45:47 +02:00
6f0e4da0d2
browsersync 2021-09-14 13:26:35 +02:00
0d05965ddb
sourcemap tests 2021-09-13 18:12:40 +02:00
fdadede25f
Merge branch 'master' of ssh://gitbase.de:2222/cms/wmbasic-svelte-starter 2021-08-16 11:08:19 +02:00
a3892ef9e1
using wmbasic-api-types 2021-08-16 11:07:11 +02:00
d5fcfe2d05 „api/hooks/types.d.ts“ ändern 2021-04-29 15:43:03 +02:00
b8810b8bcb
readme 2021-03-30 17:45:09 +02:00
61ddf2e5d0
init 2021-03-22 16:54:31 +01:00
626e83d010
init 2021-03-22 15:59:05 +01:00
1921 changed files with 10057 additions and 17156 deletions
.basic-auth-code.basic-auth-web.drone.yml.env.gitattributes.gitignore
.vscode
.yarn/cache
@ampproject-remapping-npm-2.2.0-114878fa50-d74d170d06.zip@aws-crypto-ie11-detection-npm-2.0.2-58e49ef996-713293deea.zip@aws-crypto-sha256-browser-npm-2.0.0-cc43d01c67-7bc1ff042d.zip@aws-crypto-sha256-js-npm-2.0.0-352a1e69d9-e4abf9baec.zip@aws-crypto-sha256-js-npm-2.0.2-09dc003206-9125ec65a2.zip@aws-crypto-supports-web-crypto-npm-2.0.2-8a95e196ac-03d04d2929.zip@aws-crypto-util-npm-2.0.2-aebd3ca6c4-13cb33a390.zip@aws-sdk-abort-controller-npm-3.212.0-6506486df1-ba69d926f6.zip@aws-sdk-client-cognito-identity-npm-3.212.0-8987577411-65725ee9ca.zip@aws-sdk-client-sso-npm-3.212.0-af9e1bd554-14426e2001.zip@aws-sdk-client-sso-oidc-npm-3.212.0-52df0682c6-45f32b8c0a.zip@aws-sdk-client-sts-npm-3.212.0-e6a545cbba-6ac588957b.zip@aws-sdk-config-resolver-npm-3.212.0-f9d6133b0d-2d2844b93c.zip@aws-sdk-credential-provider-cognito-identity-npm-3.212.0-4ce81eb386-4a96d5bcac.zip@aws-sdk-credential-provider-env-npm-3.212.0-112714f16a-da7af6765a.zip@aws-sdk-credential-provider-imds-npm-3.212.0-ffe3fc32db-4b3c31bc88.zip@aws-sdk-credential-provider-ini-npm-3.212.0-1cd414a39e-de60d4729e.zip@aws-sdk-credential-provider-node-npm-3.212.0-6ac44759c0-421a65b57c.zip@aws-sdk-credential-provider-process-npm-3.212.0-1a23c0dbee-4842577d8c.zip@aws-sdk-credential-provider-sso-npm-3.212.0-b9b5c2f982-b575af71e2.zip@aws-sdk-credential-provider-web-identity-npm-3.212.0-535b6f61bb-1bef8b133f.zip@aws-sdk-credential-providers-npm-3.212.0-3f2adce2d8-d74428fade.zip@aws-sdk-fetch-http-handler-npm-3.212.0-2f06e7cc19-477601560d.zip@aws-sdk-hash-node-npm-3.212.0-12275bfb8c-f5855ff20e.zip@aws-sdk-invalid-dependency-npm-3.212.0-c92913e1a0-c71f32895f.zip@aws-sdk-is-array-buffer-npm-3.201.0-ecd842dff4-295450b417.zip@aws-sdk-middleware-content-length-npm-3.212.0-31b14ea8f9-ef6a5467b8.zip@aws-sdk-middleware-endpoint-npm-3.212.0-b82c45b8a6-0b34bd25df.zip@aws-sdk-middleware-host-header-npm-3.212.0-07032a8e25-c852de97a8.zip@aws-sdk-middleware-logger-npm-3.212.0-7043fa72db-1bc12d88da.zip@aws-sdk-middleware-recursion-detection-npm-3.212.0-67e052cf2c-65cb31460d.zip@aws-sdk-middleware-retry-npm-3.212.0-bb19a165d3-1e221bf495.zip@aws-sdk-middleware-sdk-sts-npm-3.212.0-2c8f0552d4-af3a03802e.zip@aws-sdk-middleware-serde-npm-3.212.0-23e638ed44-1d9438e1e3.zip@aws-sdk-middleware-signing-npm-3.212.0-b4020e1b37-f9e2c07a9e.zip@aws-sdk-middleware-stack-npm-3.212.0-cbe72a2bb8-b9ce8fdae5.zip@aws-sdk-middleware-user-agent-npm-3.212.0-3368020f1e-ef18b7b775.zip@aws-sdk-node-config-provider-npm-3.212.0-7d9b9e74b7-c8e742c225.zip@aws-sdk-node-http-handler-npm-3.212.0-6e14326df6-052e4a3854.zip@aws-sdk-property-provider-npm-3.212.0-0fa9a34660-ac30dd5777.zip@aws-sdk-protocol-http-npm-3.212.0-76444391f0-6330d3259a.zip@aws-sdk-querystring-builder-npm-3.212.0-8cf8ed4ace-0bbd748f54.zip@aws-sdk-querystring-parser-npm-3.212.0-225a339a24-ab73e0d3a4.zip@aws-sdk-service-error-classification-npm-3.212.0-ebdc3a85b4-844f149d4a.zip@aws-sdk-shared-ini-file-loader-npm-3.212.0-6513db38d0-2c4f78b163.zip@aws-sdk-signature-v4-npm-3.212.0-351297d360-dcbdb41fcb.zip@aws-sdk-smithy-client-npm-3.212.0-ef4b32aed3-ecaa51cd72.zip@aws-sdk-token-providers-npm-3.212.0-7b2ed13f3c-be11407716.zip@aws-sdk-types-npm-3.212.0-a8e918442e-ba085aa2f7.zip@aws-sdk-url-parser-npm-3.212.0-998b61f48b-cd1c837a25.zip@aws-sdk-util-base64-npm-3.208.0-5d53487036-2ccab3453a.zip@aws-sdk-util-body-length-browser-npm-3.188.0-373c33bcdb-1b08bd1e63.zip@aws-sdk-util-body-length-node-npm-3.208.0-f5dbedc375-986b42b358.zip@aws-sdk-util-buffer-from-npm-3.208.0-71caf9e48b-00bfa4d449.zip@aws-sdk-util-config-provider-npm-3.208.0-0655efa646-97b0414b12.zip@aws-sdk-util-defaults-mode-browser-npm-3.212.0-d0a893ef2f-75fd275426.zip@aws-sdk-util-defaults-mode-node-npm-3.212.0-527ffc0901-ab2151cce3.zip@aws-sdk-util-endpoints-npm-3.212.0-915e8170c0-6c1d9e47de.zip@aws-sdk-util-hex-encoding-npm-3.201.0-77317d3d40-a27f3365df.zip@aws-sdk-util-locate-window-npm-3.208.0-a3531f344f-7518c110c4.zip@aws-sdk-util-middleware-npm-3.212.0-469103c5bc-d4bd527193.zip@aws-sdk-util-uri-escape-npm-3.201.0-5b81898fe5-8bd751459e.zip@aws-sdk-util-user-agent-browser-npm-3.212.0-e32cb81060-e55abbde07.zip@aws-sdk-util-user-agent-node-npm-3.212.0-12e21ef1f3-6d5f0bb7f6.zip@aws-sdk-util-utf8-browser-npm-3.188.0-2fece0e84a-dacd27164a.zip@aws-sdk-util-utf8-node-npm-3.208.0-1def8be722-0f4c1d0d3f.zip@babel-cli-npm-7.19.3-1e9432d014-baa2317754.zip@babel-code-frame-npm-7.18.6-25229a7e34-195e2be317.zip@babel-compat-data-npm-7.20.1-4eea2d1c20-989b9b7a6f.zip@babel-core-npm-7.20.2-7fb00344fc-98faaaef26.zip@babel-generator-npm-7.20.4-97edf6df16-967b59f18e.zip@babel-helper-annotate-as-pure-npm-7.18.6-36e25293d8-88ccd15ced.zip@babel-helper-builder-binary-assignment-operator-visitor-npm-7.18.9-a2c86d7a16-b4bc214cb5.zip@babel-helper-compilation-targets-npm-7.20.0-f842a8700a-bc183f2109.zip@babel-helper-create-class-features-plugin-npm-7.20.2-ec8dd54035-e89a8841db.zip@babel-helper-create-regexp-features-plugin-npm-7.19.0-664f2c7fc6-811cc90afe.zip@babel-helper-define-polyfill-provider-npm-0.3.3-8c896ae707-8e3fe75513.zip@babel-helper-environment-visitor-npm-7.18.9-9f5b3635a1-b25101f616.zip@babel-helper-explode-assignable-expression-npm-7.18.6-9b20d989e6-225cfcc337.zip@babel-helper-function-name-npm-7.19.0-5bcf55236f-eac1f5db42.zip@babel-helper-hoist-variables-npm-7.18.6-6eb061f405-fd9c35bb43.zip@babel-helper-member-expression-to-functions-npm-7.18.9-3d2128582a-fcf8184e3b.zip@babel-helper-module-imports-npm-7.18.6-1031faa864-f393f8a3b3.zip@babel-helper-module-transforms-npm-7.20.2-9a4905d6a2-33a60ca115.zip@babel-helper-optimise-call-expression-npm-7.18.6-65705387c4-e518fe8418.zip@babel-helper-plugin-utils-npm-7.20.2-63f605bb73-f6cae53b7f.zip@babel-helper-remap-async-to-generator-npm-7.18.9-c29d128186-4be6076192.zip@babel-helper-replace-supers-npm-7.19.1-669aa2ecc7-a0e4bf79eb.zip@babel-helper-simple-access-npm-7.20.2-842ec98fbb-ad1e96ee2e.zip@babel-helper-skip-transparent-expression-wrappers-npm-7.20.0-3370bb1f83-34da8c832d.zip@babel-helper-split-export-declaration-npm-7.18.6-53ebf8ad4c-c6d3dede53.zip@babel-helper-string-parser-npm-7.19.4-0db110dc3a-b2f8a3920b.zip

@ -1 +0,0 @@
code:$apr1$AeePIAei$E9E6E6jtFFtwmtGhIEG.Y/

@ -1,2 +0,0 @@
code:$apr1$AeePIAei$E9E6E6jtFFtwmtGhIEG.Y/
web:$apr1$/zc/TBtD$ZGr3RqPiULYMD0kJUup5E0

@ -7,112 +7,185 @@ workspace:
steps:
- name: load dependencies
image: node:18
image: node
pull: if-not-exists
environment:
FORCE_COLOR: "true"
volumes:
- name: cache
path: /cache
commands:
- yarn install
- mkdir -p /cache/node_modules
- mkdir -p /cache/user-cache
- ln -s /cache/node_modules ./node_modules
- ln -s /cache/user-cache ~/.cache
- echo cache=/cache/npm-cache >> .npmrc
- "echo 'enableGlobalCache: false' >> .yarnrc"
- 'echo ''cacheFolder: "/cache/yarn-cache"'' >> .yarnrc'
- 'echo ''yarn-offline-mirror "/cache/npm-packages-offline-cache"'' >> .yarnrc'
- "echo 'yarn-offline-mirror-pruning: true' >> .yarnrc"
- cat .yarnrc
- yarn install --verbose --frozen-lockfile
- name: mongo
image: mongo
pull: if-not-exists
detach: true
- name: maildev
image: node
pull: if-not-exists
volumes:
- name: cache
path: /cache
commands:
- yarn run maildev --web 80 --smtp 25 -v --hide-extensions=STARTTLS
detach: true
- name: liveserver
image: node
pull: if-not-exists
volumes:
- name: cache
path: /cache
commands:
- yarn run -- live-server --no-browser --port=80 --ignore='*' --entry-file=spa.html --no-css-inject --proxy=/api:http://tibi-server:8080/api/v1/_/__NAMESPACE__ dist
detach: true
- name: tibi-server
image: registry.webmakers.de/tibi/tibi-server
pull: never
environment:
DB_DIAL: mongodb://mongo
API_PORT: 8080
MAIL_HOST: maildev:25
detach: true
- name: cypress run
image: cypress/base
pull: if-not-exists
volumes:
- name: cache
path: /cache
environment:
FORCE_COLOR: "true"
CYPRESS_BASE_URL: http://liveserver
CYPRESS_CI: "true"
CYPRESS_mongodbUri: mongodb://mongo
CYPRESS_tibiApiUrl: http://tibi-server:8080/api/v1
CYPRESS_projectApiConfig: /drone/workdir/api/config.yml
commands:
- ln -s /cache/user-cache ~/.cache
- yarn build:instanbul
- yarn cy:run
- yarn run nyc report --exclude-after-remap false
- name: modify master config
image: bash
pull: if-not-exists
commands:
- bash scripts/modify-config.sh master https://tibi-svelte-starter.code.testversion.online/
- bash scripts/modify-config.sh master __MASTER_URL__
when:
branch: [master]
# - name: modify dev config
# image: bash
# commands:
# - bash scripts/modify-config.sh dev http://tibi-svelte-starter.code.testversion.online/
# when:
# branch: [dev]
- name: modify dev config
image: bash
pull: if-not-exists
commands:
- bash scripts/modify-config.sh dev __DEV_URL__
when:
branch: [dev]
- name: build
image: node:18
image: node
pull: if-not-exists
volumes:
- name: cache
path: /cache
commands:
- yarn build
# - name: build admin
# image: node:18
# commands:
# - yarn build:admin
- name: build ssr
image: node
pull: if-not-exists
volumes:
- name: cache
path: /cache
commands:
- yarn build:server
# - name: build ssr
# image: node:18
# commands:
# - yarn build:server
# - name: build legacy
# image: node:18
# commands:
# - yarn build:legacy
- name: build legacy
image: node
pull: if-not-exists
volumes:
- name: cache
path: /cache
commands:
- yarn build:legacy
- name: modify html
image: bash
pull: if-not-exists
commands:
- bash scripts/preload-meta.sh public/spa.html
- bash scripts/preload-meta.sh public/spa.html > frontend/spa.html
- bash scripts/preload-meta.sh public/spa.html > dist/spa.html
- export stamp=`date +%s`
- echo $$stamp
- sed -i s/__TIMESTAMP__/$$stamp/g frontend/spa.html
- sed -i s/__TIMESTAMP__/$$stamp/g frontend/serviceworker.js
- cat frontend/serviceworker.js
- cp frontend/spa.html api/templates/spa.html
- cat frontend/spa.html
- cat api/templates/spa.html
# - name: deploy dev
# image: instrumentisto/rsync-ssh
# environment:
# RSYNC_USER: rkarchitekten_rsync_dev
# RSYNC_PASS:
# from_secret: rsync_dev
# commands:
# - apk add --no-cache sshpass
# - scripts/deploy.sh ftp1.webmakers.de $${RSYNC_USER} $${RSYNC_PASS}
# when:
# branch: [dev]
# event: [push]
- name: copy api config to staging
image: instrumentisto/rsync-ssh
volumes:
- name: data
path: /data
commands:
- rsync -av api /data/
when:
branch: [dev]
event: [push]
- name: review in staging
image: docker/compose:1.22.0
commands:
- docker-compose -p ${DRONE_BRANCH}-${DRONE_REPO_NAME}-${DRONE_REPO_OWNER} up -d --build --remove-orphans
volumes:
- name: docker
path: /var/run/docker.sock
when:
branch: [dev]
event: [push]
- sed -i s/__TIMESTAMP__/$$stamp/g dist/spa.html
- sed -i s/__TIMESTAMP__/$$stamp/g dist/serviceworker.js
- cat dist/serviceworker.js
- cp dist/spa.html api/templates/spa.html
- cat dist/spa.html
- name: deploy master
image: instrumentisto/rsync-ssh
pull: if-not-exists
environment:
RSYNC_USER: rkarchitekten_rsync_master
RSYNC_USER: USER_PROJECT_master
RSYNC_PASS:
from_secret: rsync_master
commands:
- apk add --no-cache sshpass curl
- apk add --no-cache sshpass
- scripts/deploy.sh ftp1.webmakers.de $${RSYNC_USER} $${RSYNC_PASS}
- curl -X POST "https://tibi-svelte-starter.code.testversion.online//api/ssr?token=__SSR_TOKEN__&clear=1"
when:
branch: [master]
event: [push]
########
- name: deploy dev
image: instrumentisto/rsync-ssh
pull: if-not-exists
environment:
RSYNC_USER: USER_PROJECT_dev
RSYNC_PASS:
from_secret: rsync_dev
commands:
- apk add --no-cache sshpass
- scripts/deploy.sh ftp1.webmakers.de $${RSYNC_USER} $${RSYNC_PASS}
when:
branch: [dev]
event: [push]
- name: prepare notify
image: cypress/base
pull: if-not-exists
commands:
- find cypress -type f -wholename "cypress/videos/*" -or -wholename "cypress/screenshots/*" | tar -cvf cypress-media.tar -T -
when:
status:
- failure
- name: notify
image: drillster/drone-email
pull: if-not-exists
settings:
from: noreply@ci.gitbase.de
host: smtp.basehosts.de
attachment: cypress-media.tar
when:
status:
- failure
volumes:
- name: data
- name: cache
host:
path: /data/${DRONE_REPO_OWNER}/${DRONE_REPO_NAME}/${DRONE_BRANCH}
- name: docker
host:
path: /var/run/docker.sock
path: /tmp/cache/drone/${DRONE_REPO}

6
.env

@ -1,6 +0,0 @@
PROJECT_NAME=tibi-svelte-starter
TIBI_PREFIX=tibi
TIBI_NAMESPACE=__NAMESPACE__
# code-server user
UID=100
GID=101

1
.gitattributes vendored

@ -1 +0,0 @@
.yarn/cache/** filter=lfs diff=lfs merge=lfs -text

3
.gitignore vendored

@ -1,6 +1,6 @@
_temp/
node_modules/
frontend/
dist/
build/
build_ssr/
stat/
@ -15,4 +15,3 @@ cypress/screenshots
.~lock.*
coverage/
.nyc_output/
/tmp/

15
.vscode/launch.json vendored

@ -1,15 +0,0 @@
{
// Verwendet IntelliSense zum Ermitteln möglicher Attribute.
// Zeigen Sie auf vorhandene Attribute, um die zugehörigen Beschreibungen anzuzeigen.
// Weitere Informationen finden Sie unter https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"type": "pwa-msedge",
"request": "launch",
"name": "Launch Edge against localhost",
"url": "http://localhost:5501/",
"webRoot": "${workspaceFolder}/dist"
}
]
}

36
.vscode/settings.json vendored

@ -30,39 +30,5 @@
"node_modules/tibi-types/schemas/api-config/collection.json": "api/collections/*.y*ml",
"node_modules/tibi-types/schemas/api-config/field.json": "api/collections/fields/*.y*ml"
},
"yaml.customTags": ["!include scalar"],
"filewatcher.commands": [
{
"match": "/api/.*(\\.ya?ml|js|env)$",
"isAsync": false,
"cmd": "docker compose -p tibi-svelte-starter-local restart tibiserver",
"event": "onFileChange"
}
],
"i18n-ally.localesPaths": [],
"workbench.colorCustomizations": {
"activityBar.activeBackground": "#296221",
"activityBar.background": "#296221",
"activityBar.foreground": "#ffffff",
"activityBar.inactiveForeground": "#ffffff99",
"activityBarBadge.background": "#2fce11",
"activityBarBadge.foreground": "#15202b",
"commandCenter.border": "#00000099",
"editorGroup.border": "#296221",
"panel.border": "#296221",
"sash.hoverBorder": "#296221",
"sideBar.border": "#296221",
"statusBar.background": "#58585a",
"statusBar.border": "#58585a",
"statusBar.foreground": "#ffffff",
"statusBarItem.hoverBackground": "#296221",
"statusBarItem.remoteBackground": "#58585a",
"statusBarItem.remoteForeground": "#ffffff",
"tab.activeBorder": "#296221",
"titleBar.activeBackground": "#58585a",
"titleBar.activeForeground": "#ffffff",
"titleBar.border": "#58585a",
"titleBar.inactiveBackground": "#58585a99",
"titleBar.inactiveForeground": "#ffffff99"
}
"yaml.customTags": ["!include scalar"]
}

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Some files were not shown because too many files have changed in this diff Show More