Merge branch 'main' into fix_security_link

This commit is contained in:
Dessalines 2024-02-05 23:32:35 -05:00 committed by GitHub
commit 568c073e08
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
22 changed files with 8076 additions and 10462 deletions

View file

@ -15,6 +15,6 @@
"plugins": [ "plugins": [
"@babel/plugin-transform-runtime", "@babel/plugin-transform-runtime",
["babel-plugin-inferno", { "imports": true }], ["babel-plugin-inferno", { "imports": true }],
["@babel/plugin-proposal-class-properties", { "loose": true }] ["@babel/plugin-transform-class-properties", { "loose": true }]
] ]
} }

View file

@ -1,4 +1 @@
#!/bin/sh pnpm lint-staged
. "$(dirname "$0")/_/husky.sh"
yarn lint-staged

View file

@ -1,3 +1,6 @@
variables:
- &install_pnpm "corepack enable pnpm"
steps: steps:
fetch_git_submodules: fetch_git_submodules:
image: node:20-alpine image: node:20-alpine
@ -5,22 +8,25 @@ steps:
- apk add git - apk add git
- git submodule init - git submodule init
- git submodule update --recursive --remote - git submodule update --recursive --remote
# - git fetch --tags
yarn: install:
image: node:20-alpine image: node:20-alpine
commands: commands:
- yarn - *install_pnpm
- pnpm i
yarn_lint: lint:
image: node:20-alpine image: node:20-alpine
commands: commands:
- yarn lint - *install_pnpm
- pnpm lint
yarn_build_dev: build_dev:
image: node:20-alpine image: node:20-alpine
commands: commands:
- yarn build:dev - *install_pnpm
- pnpm prebuild:dev
- pnpm build:dev
publish_release_docker: publish_release_docker:
image: woodpeckerci/plugin-docker-buildx image: woodpeckerci/plugin-docker-buildx

View file

@ -4,10 +4,10 @@ FROM node:21-alpine as builder
# Done for two reasons: # Done for two reasons:
# - libvips binaries are not available for ARM32 # - libvips binaries are not available for ARM32
# - It can break depending on the CPU (https://github.com/LemmyNet/lemmy-ui/issues/1566) # - It can break depending on the CPU (https://github.com/LemmyNet/lemmy-ui/issues/1566)
RUN apk update && apk upgrade && apk add --no-cache curl yarn python3 build-base gcc wget git vips-dev pkgconfig RUN apk update && apk upgrade && apk add --no-cache curl python3 build-base gcc wget git vips-dev pkgconfig
# Install node-gyp # Install node-gyp and pnpm
RUN npm install -g node-gyp RUN npm install -g pnpm node-gyp
WORKDIR /usr/src/app WORKDIR /usr/src/app
@ -15,10 +15,8 @@ ENV npm_config_target_platform=linux
ENV npm_config_target_libc=musl ENV npm_config_target_libc=musl
# Cache deps # Cache deps
COPY package.json yarn.lock ./ COPY package.json pnpm-lock.yaml ./
RUN pnpm i
RUN yarn --production --prefer-offline --pure-lockfile --network-timeout 100000
# Build # Build
COPY generate_translations.js \ COPY generate_translations.js \
tsconfig.json \ tsconfig.json \
@ -34,15 +32,14 @@ COPY .git .git
RUN echo "export const VERSION = '$(git describe --tag)';" > "src/shared/version.ts" RUN echo "export const VERSION = '$(git describe --tag)';" > "src/shared/version.ts"
RUN echo "export const BUILD_DATE_ISO8601 = '$(date -u +"%Y-%m-%dT%H:%M:%SZ")';" > "src/shared/build-date.ts" RUN echo "export const BUILD_DATE_ISO8601 = '$(date -u +"%Y-%m-%dT%H:%M:%SZ")';" > "src/shared/build-date.ts"
RUN yarn --production --prefer-offline --network-timeout 100000 RUN pnpm i
RUN yarn build:prod RUN pnpm prebuild:prod
RUN pnpm build:prod
RUN rm -rf ./node_modules/import-sort-parser-typescript RUN rm -rf ./node_modules/import-sort-parser-typescript
RUN rm -rf ./node_modules/typescript RUN rm -rf ./node_modules/typescript
RUN rm -rf ./node_modules/npm RUN rm -rf ./node_modules/npm
RUN du -sh ./node_modules/* | sort -nr | grep '\dM.*'
FROM node:21-alpine as runner FROM node:21-alpine as runner
ENV NODE_ENV=production ENV NODE_ENV=production

View file

@ -9,7 +9,7 @@ new_tag="$1"
# sudo docker push dessalines/lemmy-ui:$new_tag # sudo docker push dessalines/lemmy-ui:$new_tag
# Upgrade version # Upgrade version
yarn version --new-version $new_tag pnpm version $new_tag
git push git push
git tag $new_tag git tag $new_tag

View file

@ -1,5 +1,6 @@
FROM node:20-alpine as builder FROM node:20-alpine as builder
RUN apk update && apk add curl yarn python3 build-base gcc wget git --no-cache RUN apk update && apk add curl python3 build-base gcc wget git --no-cache
RUN npm install -g pnpm
WORKDIR /usr/src/app WORKDIR /usr/src/app
@ -8,8 +9,8 @@ ENV npm_config_target_platform=linux
ENV npm_config_target_libc=musl ENV npm_config_target_libc=musl
# Cache deps # Cache deps
COPY package.json yarn.lock ./ COPY package.json pnpm-lock.yaml ./
RUN yarn --prefer-offline --pure-lockfile RUN pnpm i --prefer-offline
# Build # Build
COPY generate_translations.js \ COPY generate_translations.js \
@ -26,8 +27,8 @@ COPY .git .git
RUN echo "export const VERSION = 'dev';" > "src/shared/version.ts" RUN echo "export const VERSION = 'dev';" > "src/shared/version.ts"
RUN echo "export const BUILD_DATE_ISO8601 = '$(date -u +"%Y-%m-%dT%H:%M:%SZ")';" > "src/shared/build-date.ts" RUN echo "export const BUILD_DATE_ISO8601 = '$(date -u +"%Y-%m-%dT%H:%M:%SZ")';" > "src/shared/build-date.ts"
RUN yarn --prefer-offline RUN pnpm i --prefer-offline
RUN yarn build:dev RUN pnpm build:dev
FROM node:20-alpine as runner FROM node:20-alpine as runner
COPY --from=builder /usr/src/app/dist /app/dist COPY --from=builder /usr/src/app/dist /app/dist

@ -1 +1 @@
Subproject commit c3e61706e2ff7977db83e964e3010f72cad5e408 Subproject commit 5d4946e598630e06b890400ca92696d533ad9edb

View file

@ -8,17 +8,16 @@
"analyze": "webpack --mode=none", "analyze": "webpack --mode=none",
"build:dev": "webpack --env COMMIT_HASH=$(git rev-parse --short HEAD) --mode=development", "build:dev": "webpack --env COMMIT_HASH=$(git rev-parse --short HEAD) --mode=development",
"build:prod": "webpack --env COMMIT_HASH=$(git rev-parse --short HEAD) --mode=production", "build:prod": "webpack --env COMMIT_HASH=$(git rev-parse --short HEAD) --mode=production",
"clean": "yarn run rimraf dist", "clean": "pnpm rimraf dist",
"dev": "yarn build:dev --watch", "dev": "pnpm build:dev --watch",
"lint": "yarn translations:generate && tsc --noEmit && eslint --report-unused-disable-directives --ext .js,.ts,.tsx \"src/**\" && prettier --check \"src/**/*.{ts,tsx,js,css,scss}\"", "lint": "pnpm translations:generate && tsc --noEmit && eslint --report-unused-disable-directives --ext .js,.ts,.tsx \"src/**\" && prettier --check \"src/**/*.{ts,tsx,js,css,scss}\"",
"postinstall": "husky install", "prebuild:dev": "pnpm clean && node generate_translations.js",
"prebuild:dev": "yarn clean && node generate_translations.js", "prebuild:prod": "pnpm clean && node generate_translations.js",
"prebuild:prod": "yarn clean && node generate_translations.js", "prepare": "husky",
"prepare": "husky install",
"themes:build": "sass src/assets/css/themes/:src/assets/css/themes", "themes:build": "sass src/assets/css/themes/:src/assets/css/themes",
"themes:watch": "sass --watch src/assets/css/themes/:src/assets/css/themes", "themes:watch": "sass --watch src/assets/css/themes/:src/assets/css/themes",
"translations:generate": "node generate_translations.js", "translations:generate": "node generate_translations.js",
"translations:init": "git submodule init && yarn translations:update", "translations:init": "git submodule init && pnpm translations:update",
"translations:update": "git submodule update --remote --recursive" "translations:update": "git submodule update --remote --recursive"
}, },
"repository": "https://github.com/LemmyNet/lemmy-ui", "repository": "https://github.com/LemmyNet/lemmy-ui",
@ -26,33 +25,32 @@
"node": ">=8.9.0" "node": ">=8.9.0"
}, },
"dependencies": { "dependencies": {
"@babel/plugin-proposal-class-properties": "^7.18.6", "@babel/plugin-proposal-decorators": "^7.23.9",
"@babel/plugin-proposal-decorators": "^7.23.7", "@babel/plugin-transform-class-properties": "^7.23.3",
"@babel/plugin-transform-runtime": "^7.23.7", "@babel/plugin-transform-runtime": "^7.23.9",
"@babel/plugin-transform-typescript": "^7.23.6", "@babel/plugin-transform-typescript": "^7.23.6",
"@babel/preset-env": "^7.23.8", "@babel/preset-env": "^7.23.9",
"@babel/preset-typescript": "^7.21.5", "@babel/preset-typescript": "^7.23.3",
"@babel/runtime": "^7.23.8", "@babel/runtime": "^7.23.9",
"@emoji-mart/data": "^1.1.0", "@emoji-mart/data": "^1.1.2",
"@shortcm/qr-image": "^9.0.2", "@shortcm/qr-image": "^9.0.4",
"autosize": "^6.0.1", "autosize": "^6.0.1",
"babel-loader": "^9.1.3", "babel-loader": "^9.1.3",
"babel-plugin-inferno": "^6.7.1", "babel-plugin-inferno": "^6.7.1",
"bootstrap": "^5.3.1", "bootstrap": "^5.3.2",
"check-password-strength": "^2.0.7", "check-password-strength": "^2.0.7",
"classnames": "^2.5.1", "classnames": "^2.5.1",
"clean-webpack-plugin": "^4.0.0", "clean-webpack-plugin": "^4.0.0",
"cookie": "^0.6.0", "cookie": "^0.6.0",
"copy-webpack-plugin": "^12.0.2", "copy-webpack-plugin": "^12.0.2",
"css-loader": "^6.9.1", "css-loader": "^6.10.0",
"date-fns": "^3.2.0", "date-fns": "^3.3.1",
"emoji-mart": "^5.4.0", "emoji-mart": "^5.5.2",
"emoji-short-name": "^2.0.0", "emoji-short-name": "^2.0.0",
"express": "~4.18.2", "express": "~4.18.2",
"history": "^5.3.0", "history": "^5.3.0",
"html-to-text": "^9.0.5", "html-to-text": "^9.0.5",
"husky": "^8.0.3", "i18next": "^23.8.2",
"i18next": "^23.7.16",
"inferno": "^8.2.3", "inferno": "^8.2.3",
"inferno-create-element": "^8.2.3", "inferno-create-element": "^8.2.3",
"inferno-helmet": "^5.2.1", "inferno-helmet": "^5.2.1",
@ -61,7 +59,7 @@
"inferno-router": "^8.2.3", "inferno-router": "^8.2.3",
"inferno-server": "^8.2.3", "inferno-server": "^8.2.3",
"jwt-decode": "^4.0.0", "jwt-decode": "^4.0.0",
"lemmy-js-client": "0.19.2-alpha.1", "lemmy-js-client": "0.19.3-alpha.6",
"lodash.isequal": "^4.5.0", "lodash.isequal": "^4.5.0",
"markdown-it": "^14.0.0", "markdown-it": "^14.0.0",
"markdown-it-bidi": "^0.1.0", "markdown-it-bidi": "^0.1.0",
@ -73,57 +71,59 @@
"markdown-it-ruby": "^0.1.1", "markdown-it-ruby": "^0.1.1",
"markdown-it-sub": "^2.0.0", "markdown-it-sub": "^2.0.0",
"markdown-it-sup": "^2.0.0", "markdown-it-sup": "^2.0.0",
"mini-css-extract-plugin": "^2.7.7", "mini-css-extract-plugin": "^2.8.0",
"register-service-worker": "^1.7.2", "register-service-worker": "^1.7.2",
"run-node-webpack-plugin": "^1.3.0", "run-node-webpack-plugin": "^1.3.0",
"rxjs": "^7.8.1", "rxjs": "^7.8.1",
"sanitize-html": "^2.11.0", "sanitize-html": "^2.11.0",
"sass": "^1.70.0", "sass": "^1.70.0",
"sass-loader": "^14.0.0", "sass-loader": "^14.1.0",
"serialize-javascript": "^6.0.2", "serialize-javascript": "^6.0.2",
"service-worker-webpack": "^1.0.0", "service-worker-webpack": "^1.0.0",
"sharp": "0.32.6", "sharp": "0.33.2",
"tippy.js": "^6.3.7", "tippy.js": "^6.3.7",
"toastify-js": "^1.12.0", "toastify-js": "^1.12.0",
"tributejs": "^5.1.3", "tributejs": "^5.1.3",
"webpack": "^5.89.0", "webpack": "^5.90.1",
"webpack-cli": "^5.1.4", "webpack-cli": "^5.1.4",
"webpack-node-externals": "^3.0.0" "webpack-node-externals": "^3.0.0"
}, },
"devDependencies": { "devDependencies": {
"@babel/core": "^7.23.7", "@babel/core": "^7.23.9",
"@types/autosize": "^4.0.0", "@types/autosize": "^4.0.3",
"@types/bootstrap": "^5.2.6", "@types/bootstrap": "^5.2.10",
"@types/cookie": "^0.6.0", "@types/cookie": "^0.6.0",
"@types/express": "^4.17.17", "@types/express": "^4.17.21",
"@types/html-to-text": "^9.0.0", "@types/html-to-text": "^9.0.4",
"@types/lodash.isequal": "^4.5.6", "@types/lodash.isequal": "^4.5.8",
"@types/markdown-it": "^13.0.7", "@types/markdown-it": "^13.0.7",
"@types/markdown-it-container": "^2.0.6", "@types/markdown-it-container": "^2.0.9",
"@types/node": "^20.11.5", "@types/node": "^20.11.16",
"@types/path-browserify": "^1.0.0", "@types/path-browserify": "^1.0.2",
"@types/sanitize-html": "^2.9.0", "@types/sanitize-html": "^2.9.5",
"@types/serialize-javascript": "^5.0.1", "@types/serialize-javascript": "^5.0.4",
"@types/toastify-js": "^1.12.0", "@types/toastify-js": "^1.12.3",
"@typescript-eslint/eslint-plugin": "^6.19.0", "@typescript-eslint/eslint-plugin": "^6.20.0",
"@typescript-eslint/parser": "^6.19.0", "@typescript-eslint/parser": "^6.20.0",
"eslint": "^8.56.0", "eslint": "^8.56.0",
"eslint-plugin-inferno": "^7.33.3", "eslint-plugin-inferno": "^7.33.3",
"eslint-plugin-jsx-a11y": "^6.7.1", "eslint-plugin-jsx-a11y": "^6.8.0",
"eslint-plugin-prettier": "^5.1.3", "eslint-plugin-prettier": "^5.1.3",
"husky": "^9.0.10",
"import-sort-style-module": "^6.0.0", "import-sort-style-module": "^6.0.0",
"lint-staged": "^15.2.0", "lint-staged": "^15.2.1",
"prettier": "^3.2.4", "prettier": "^3.2.5",
"prettier-plugin-import-sort": "^0.0.7", "prettier-plugin-import-sort": "^0.0.7",
"prettier-plugin-organize-imports": "^3.2.3", "prettier-plugin-organize-imports": "^3.2.4",
"prettier-plugin-packagejson": "^2.4.9", "prettier-plugin-packagejson": "^2.4.10",
"rimraf": "^5.0.0", "qs": "^6.11.2",
"rimraf": "^5.0.5",
"sortpack": "^2.4.0", "sortpack": "^2.4.0",
"style-loader": "^3.3.4", "style-loader": "^3.3.4",
"terser": "^5.27.0", "terser": "^5.27.0",
"typescript": "^5.3.3", "typescript": "^5.3.3",
"typescript-language-server": "^4.3.1", "typescript-language-server": "^4.3.2",
"webpack-bundle-analyzer": "^4.9.0", "webpack-bundle-analyzer": "^4.10.1",
"webpack-dev-server": "4.15.1" "webpack-dev-server": "4.15.1"
}, },
"lint-staged": { "lint-staged": {
@ -138,7 +138,7 @@
"sortpack" "sortpack"
] ]
}, },
"packageManager": "yarn@1.22.19", "packageManager": "pnpm@8.14.3",
"engineStrict": true, "engineStrict": true,
"importSort": { "importSort": {
".js, .jsx, .ts, .tsx": { ".js, .jsx, .ts, .tsx": {

7942
pnpm-lock.yaml Normal file

File diff suppressed because it is too large Load diff

View file

@ -43,7 +43,7 @@ $font-family-sans-serif:
"Apple Color Emoji", "Apple Color Emoji",
"Segoe UI Emoji", "Segoe UI Emoji",
"Segoe UI Symbol"; "Segoe UI Symbol";
$font-size-base: 0.9375rem; $font-size-base: 1rem;
$h1-font-size: 3rem; $h1-font-size: 3rem;
$h2-font-size: 2.5rem; $h2-font-size: 2.5rem;
$h3-font-size: 2rem; $h3-font-size: 2rem;

View file

@ -1,3 +1,3 @@
$link-decoration: none; $link-decoration: none;
$min-contrast-ratio: 3; $min-contrast-ratio: 3;
$font-size-root: 93.75%; $font-size-root: 100%;

View file

@ -114,7 +114,7 @@ hr.my-3 {
--bs-font-sans-serif: "Lato", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"; --bs-font-sans-serif: "Lato", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
--bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
--bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0)); --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
--bs-root-font-size: 93.75%; --bs-root-font-size: 100%;
--bs-body-font-family: var(--bs-font-sans-serif); --bs-body-font-family: var(--bs-font-sans-serif);
--bs-body-font-size: 1rem; --bs-body-font-size: 1rem;
--bs-body-font-weight: 400; --bs-body-font-weight: 400;

View file

@ -74,9 +74,9 @@
--bs-font-sans-serif: "Lato", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"; --bs-font-sans-serif: "Lato", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
--bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
--bs-gradient: linear-gradient(180deg, rgba(243, 243, 243, 0.15), rgba(243, 243, 243, 0)); --bs-gradient: linear-gradient(180deg, rgba(243, 243, 243, 0.15), rgba(243, 243, 243, 0));
--bs-root-font-size: 93.75%; --bs-root-font-size: 100%;
--bs-body-font-family: var(--bs-font-sans-serif); --bs-body-font-family: var(--bs-font-sans-serif);
--bs-body-font-size: 0.9375rem; --bs-body-font-size: 1rem;
--bs-body-font-weight: 400; --bs-body-font-weight: 400;
--bs-body-line-height: 1.5; --bs-body-line-height: 1.5;
--bs-body-color: #ebebeb; --bs-body-color: #ebebeb;
@ -254,20 +254,20 @@ h3, .h3 {
} }
h4, .h4 { h4, .h4 {
font-size: calc(1.265625rem + 0.1875vw); font-size: calc(1.275rem + 0.3vw);
} }
@media (min-width: 1200px) { @media (min-width: 1200px) {
h4, .h4 { h4, .h4 {
font-size: 1.40625rem; font-size: 1.5rem;
} }
} }
h5, .h5 { h5, .h5 {
font-size: 1.171875rem; font-size: 1.25rem;
} }
h6, .h6 { h6, .h6 {
font-size: 0.9375rem; font-size: 1rem;
} }
p { p {
@ -594,7 +594,7 @@ progress {
} }
.lead { .lead {
font-size: 1.171875rem; font-size: 1.25rem;
font-weight: 300; font-weight: 300;
} }
@ -688,7 +688,7 @@ progress {
.blockquote { .blockquote {
margin-bottom: 1rem; margin-bottom: 1rem;
font-size: 1.171875rem; font-size: 1.25rem;
} }
.blockquote > :last-child { .blockquote > :last-child {
margin-bottom: 0; margin-bottom: 0;
@ -2095,13 +2095,13 @@ progress {
.col-form-label-lg { .col-form-label-lg {
padding-top: calc(0.5rem + var(--bs-border-width)); padding-top: calc(0.5rem + var(--bs-border-width));
padding-bottom: calc(0.5rem + var(--bs-border-width)); padding-bottom: calc(0.5rem + var(--bs-border-width));
font-size: 1.171875rem; font-size: 1.25rem;
} }
.col-form-label-sm { .col-form-label-sm {
padding-top: calc(0.25rem + var(--bs-border-width)); padding-top: calc(0.25rem + var(--bs-border-width));
padding-bottom: calc(0.25rem + var(--bs-border-width)); padding-bottom: calc(0.25rem + var(--bs-border-width));
font-size: 0.8203125rem; font-size: 0.875rem;
} }
.form-text { .form-text {
@ -2114,7 +2114,7 @@ progress {
display: block; display: block;
width: 100%; width: 100%;
padding: 0.375rem 0.75rem; padding: 0.375rem 0.75rem;
font-size: 0.9375rem; font-size: 1rem;
font-weight: 400; font-weight: 400;
line-height: 1.5; line-height: 1.5;
color: #f3f3f3; color: #f3f3f3;
@ -2205,7 +2205,7 @@ progress {
.form-control-sm { .form-control-sm {
min-height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2)); min-height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2));
padding: 0.25rem 0.5rem; padding: 0.25rem 0.5rem;
font-size: 0.8203125rem; font-size: 0.875rem;
border-radius: var(--bs-border-radius-sm); border-radius: var(--bs-border-radius-sm);
} }
.form-control-sm::file-selector-button { .form-control-sm::file-selector-button {
@ -2217,7 +2217,7 @@ progress {
.form-control-lg { .form-control-lg {
min-height: calc(1.5em + 1rem + calc(var(--bs-border-width) * 2)); min-height: calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));
padding: 0.5rem 1rem; padding: 0.5rem 1rem;
font-size: 1.171875rem; font-size: 1.25rem;
border-radius: var(--bs-border-radius-lg); border-radius: var(--bs-border-radius-lg);
} }
.form-control-lg::file-selector-button { .form-control-lg::file-selector-button {
@ -2264,7 +2264,7 @@ textarea.form-control-lg {
display: block; display: block;
width: 100%; width: 100%;
padding: 0.375rem 2.25rem 0.375rem 0.75rem; padding: 0.375rem 2.25rem 0.375rem 0.75rem;
font-size: 0.9375rem; font-size: 1rem;
font-weight: 400; font-weight: 400;
line-height: 1.5; line-height: 1.5;
color: #f3f3f3; color: #f3f3f3;
@ -2304,7 +2304,7 @@ textarea.form-control-lg {
padding-top: 0.25rem; padding-top: 0.25rem;
padding-bottom: 0.25rem; padding-bottom: 0.25rem;
padding-left: 0.5rem; padding-left: 0.5rem;
font-size: 0.8203125rem; font-size: 0.875rem;
border-radius: var(--bs-border-radius-sm); border-radius: var(--bs-border-radius-sm);
} }
@ -2312,7 +2312,7 @@ textarea.form-control-lg {
padding-top: 0.5rem; padding-top: 0.5rem;
padding-bottom: 0.5rem; padding-bottom: 0.5rem;
padding-left: 1rem; padding-left: 1rem;
font-size: 1.171875rem; font-size: 1.25rem;
border-radius: var(--bs-border-radius-lg); border-radius: var(--bs-border-radius-lg);
} }
@ -2322,7 +2322,7 @@ textarea.form-control-lg {
.form-check { .form-check {
display: block; display: block;
min-height: 1.40625rem; min-height: 1.5rem;
padding-left: 1.5em; padding-left: 1.5em;
margin-bottom: 0.125rem; margin-bottom: 0.125rem;
} }
@ -2653,7 +2653,7 @@ textarea.form-control-lg {
display: flex; display: flex;
align-items: center; align-items: center;
padding: 0.375rem 0.75rem; padding: 0.375rem 0.75rem;
font-size: 0.9375rem; font-size: 1rem;
font-weight: 400; font-weight: 400;
line-height: 1.5; line-height: 1.5;
color: #202020; color: #202020;
@ -2669,7 +2669,7 @@ textarea.form-control-lg {
.input-group-lg > .input-group-text, .input-group-lg > .input-group-text,
.input-group-lg > .btn { .input-group-lg > .btn {
padding: 0.5rem 1rem; padding: 0.5rem 1rem;
font-size: 1.171875rem; font-size: 1.25rem;
border-radius: var(--bs-border-radius-lg); border-radius: var(--bs-border-radius-lg);
} }
@ -2678,7 +2678,7 @@ textarea.form-control-lg {
.input-group-sm > .input-group-text, .input-group-sm > .input-group-text,
.input-group-sm > .btn { .input-group-sm > .btn {
padding: 0.25rem 0.5rem; padding: 0.25rem 0.5rem;
font-size: 0.8203125rem; font-size: 0.875rem;
border-radius: var(--bs-border-radius-sm); border-radius: var(--bs-border-radius-sm);
} }
@ -2728,7 +2728,7 @@ textarea.form-control-lg {
max-width: 100%; max-width: 100%;
padding: 0.25rem 0.5rem; padding: 0.25rem 0.5rem;
margin-top: 0.1rem; margin-top: 0.1rem;
font-size: 0.8203125rem; font-size: 0.875rem;
color: #fff; color: #fff;
background-color: var(--bs-success); background-color: var(--bs-success);
border-radius: var(--bs-border-radius); border-radius: var(--bs-border-radius);
@ -2818,7 +2818,7 @@ textarea.form-control-lg {
max-width: 100%; max-width: 100%;
padding: 0.25rem 0.5rem; padding: 0.25rem 0.5rem;
margin-top: 0.1rem; margin-top: 0.1rem;
font-size: 0.8203125rem; font-size: 0.875rem;
color: #fff; color: #fff;
background-color: var(--bs-danger); background-color: var(--bs-danger);
border-radius: var(--bs-border-radius); border-radius: var(--bs-border-radius);
@ -2896,7 +2896,7 @@ textarea.form-control-lg {
--bs-btn-padding-x: 0.75rem; --bs-btn-padding-x: 0.75rem;
--bs-btn-padding-y: 0.375rem; --bs-btn-padding-y: 0.375rem;
--bs-btn-font-family: ; --bs-btn-font-family: ;
--bs-btn-font-size: 0.9375rem; --bs-btn-font-size: 1rem;
--bs-btn-font-weight: 400; --bs-btn-font-weight: 400;
--bs-btn-line-height: 1.5; --bs-btn-line-height: 1.5;
--bs-btn-color: var(--bs-body-color); --bs-btn-color: var(--bs-body-color);
@ -3264,14 +3264,14 @@ textarea.form-control-lg {
.btn-lg, .btn-group-lg > .btn { .btn-lg, .btn-group-lg > .btn {
--bs-btn-padding-y: 0.5rem; --bs-btn-padding-y: 0.5rem;
--bs-btn-padding-x: 1rem; --bs-btn-padding-x: 1rem;
--bs-btn-font-size: 1.171875rem; --bs-btn-font-size: 1.25rem;
--bs-btn-border-radius: var(--bs-border-radius-lg); --bs-btn-border-radius: var(--bs-border-radius-lg);
} }
.btn-sm, .btn-group-sm > .btn { .btn-sm, .btn-group-sm > .btn {
--bs-btn-padding-y: 0.25rem; --bs-btn-padding-y: 0.25rem;
--bs-btn-padding-x: 0.5rem; --bs-btn-padding-x: 0.5rem;
--bs-btn-font-size: 0.8203125rem; --bs-btn-font-size: 0.875rem;
--bs-btn-border-radius: var(--bs-border-radius-sm); --bs-btn-border-radius: var(--bs-border-radius-sm);
} }
@ -3344,7 +3344,7 @@ textarea.form-control-lg {
--bs-dropdown-padding-x: 0; --bs-dropdown-padding-x: 0;
--bs-dropdown-padding-y: 0.5rem; --bs-dropdown-padding-y: 0.5rem;
--bs-dropdown-spacer: 0.125rem; --bs-dropdown-spacer: 0.125rem;
--bs-dropdown-font-size: 0.9375rem; --bs-dropdown-font-size: 1rem;
--bs-dropdown-color: var(--bs-body-color); --bs-dropdown-color: var(--bs-body-color);
--bs-dropdown-bg: #111; --bs-dropdown-bg: #111;
--bs-dropdown-border-color: #202020; --bs-dropdown-border-color: #202020;
@ -3602,7 +3602,7 @@ textarea.form-control-lg {
display: block; display: block;
padding: var(--bs-dropdown-header-padding-y) var(--bs-dropdown-header-padding-x); padding: var(--bs-dropdown-header-padding-y) var(--bs-dropdown-header-padding-x);
margin-bottom: 0; margin-bottom: 0;
font-size: 0.8203125rem; font-size: 0.875rem;
color: var(--bs-dropdown-header-color); color: var(--bs-dropdown-header-color);
white-space: nowrap; white-space: nowrap;
} }
@ -3869,15 +3869,15 @@ textarea.form-control-lg {
--bs-navbar-hover-color: #f3f3f3; --bs-navbar-hover-color: #f3f3f3;
--bs-navbar-disabled-color: rgba(var(--bs-emphasis-color-rgb), 0.3); --bs-navbar-disabled-color: rgba(var(--bs-emphasis-color-rgb), 0.3);
--bs-navbar-active-color: #f3f3f3; --bs-navbar-active-color: #f3f3f3;
--bs-navbar-brand-padding-y: 0.32421875rem; --bs-navbar-brand-padding-y: 0.3125rem;
--bs-navbar-brand-margin-end: 1rem; --bs-navbar-brand-margin-end: 1rem;
--bs-navbar-brand-font-size: 1.171875rem; --bs-navbar-brand-font-size: 1.25rem;
--bs-navbar-brand-color: #f3f3f3; --bs-navbar-brand-color: #f3f3f3;
--bs-navbar-brand-hover-color: #f3f3f3; --bs-navbar-brand-hover-color: #f3f3f3;
--bs-navbar-nav-link-padding-x: 0.5rem; --bs-navbar-nav-link-padding-x: 0.5rem;
--bs-navbar-toggler-padding-y: 0.25rem; --bs-navbar-toggler-padding-y: 0.25rem;
--bs-navbar-toggler-padding-x: 0.75rem; --bs-navbar-toggler-padding-x: 0.75rem;
--bs-navbar-toggler-font-size: 1.171875rem; --bs-navbar-toggler-font-size: 1.25rem;
--bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28235, 235, 235, 0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e"); --bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28235, 235, 235, 0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
--bs-navbar-toggler-border-color: rgba(17, 17, 17, 0.1); --bs-navbar-toggler-border-color: rgba(17, 17, 17, 0.1);
--bs-navbar-toggler-border-radius: var(--bs-border-radius); --bs-navbar-toggler-border-radius: var(--bs-border-radius);
@ -4506,7 +4506,7 @@ textarea.form-control-lg {
align-items: center; align-items: center;
width: 100%; width: 100%;
padding: var(--bs-accordion-btn-padding-y) var(--bs-accordion-btn-padding-x); padding: var(--bs-accordion-btn-padding-y) var(--bs-accordion-btn-padding-x);
font-size: 0.9375rem; font-size: 1rem;
color: var(--bs-accordion-btn-color); color: var(--bs-accordion-btn-color);
text-align: left; text-align: left;
background-color: var(--bs-accordion-btn-bg); background-color: var(--bs-accordion-btn-bg);
@ -4650,7 +4650,7 @@ textarea.form-control-lg {
.pagination { .pagination {
--bs-pagination-padding-x: 0.75rem; --bs-pagination-padding-x: 0.75rem;
--bs-pagination-padding-y: 0.375rem; --bs-pagination-padding-y: 0.375rem;
--bs-pagination-font-size: 0.9375rem; --bs-pagination-font-size: 1rem;
--bs-pagination-color: #f3f3f3; --bs-pagination-color: #f3f3f3;
--bs-pagination-bg: #00bc8c; --bs-pagination-bg: #00bc8c;
--bs-pagination-border-width: 0; --bs-pagination-border-width: 0;
@ -4729,14 +4729,14 @@ textarea.form-control-lg {
.pagination-lg { .pagination-lg {
--bs-pagination-padding-x: 1.5rem; --bs-pagination-padding-x: 1.5rem;
--bs-pagination-padding-y: 0.75rem; --bs-pagination-padding-y: 0.75rem;
--bs-pagination-font-size: 1.171875rem; --bs-pagination-font-size: 1.25rem;
--bs-pagination-border-radius: var(--bs-border-radius-lg); --bs-pagination-border-radius: var(--bs-border-radius-lg);
} }
.pagination-sm { .pagination-sm {
--bs-pagination-padding-x: 0.5rem; --bs-pagination-padding-x: 0.5rem;
--bs-pagination-padding-y: 0.25rem; --bs-pagination-padding-y: 0.25rem;
--bs-pagination-font-size: 0.8203125rem; --bs-pagination-font-size: 0.875rem;
--bs-pagination-border-radius: var(--bs-border-radius-sm); --bs-pagination-border-radius: var(--bs-border-radius-sm);
} }
@ -4870,7 +4870,7 @@ textarea.form-control-lg {
.progress, .progress,
.progress-stacked { .progress-stacked {
--bs-progress-height: 1rem; --bs-progress-height: 1rem;
--bs-progress-font-size: 0.703125rem; --bs-progress-font-size: 0.75rem;
--bs-progress-bg: #333; --bs-progress-bg: #333;
--bs-progress-border-radius: var(--bs-border-radius); --bs-progress-border-radius: var(--bs-border-radius);
--bs-progress-box-shadow: var(--bs-box-shadow-inset); --bs-progress-box-shadow: var(--bs-box-shadow-inset);
@ -5674,7 +5674,7 @@ textarea.form-control-lg {
--bs-tooltip-padding-x: 0.5rem; --bs-tooltip-padding-x: 0.5rem;
--bs-tooltip-padding-y: 0.25rem; --bs-tooltip-padding-y: 0.25rem;
--bs-tooltip-margin: ; --bs-tooltip-margin: ;
--bs-tooltip-font-size: 0.8203125rem; --bs-tooltip-font-size: 0.875rem;
--bs-tooltip-color: var(--bs-body-bg); --bs-tooltip-color: var(--bs-body-bg);
--bs-tooltip-bg: var(--bs-emphasis-color); --bs-tooltip-bg: var(--bs-emphasis-color);
--bs-tooltip-border-radius: var(--bs-border-radius); --bs-tooltip-border-radius: var(--bs-border-radius);
@ -5773,7 +5773,7 @@ textarea.form-control-lg {
.popover { .popover {
--bs-popover-zindex: 1070; --bs-popover-zindex: 1070;
--bs-popover-max-width: 276px; --bs-popover-max-width: 276px;
--bs-popover-font-size: 0.8203125rem; --bs-popover-font-size: 0.875rem;
--bs-popover-bg: #111; --bs-popover-bg: #111;
--bs-popover-border-width: var(--bs-border-width); --bs-popover-border-width: var(--bs-border-width);
--bs-popover-border-color: var(--bs-border-color-translucent); --bs-popover-border-color: var(--bs-border-color-translucent);
@ -5782,7 +5782,7 @@ textarea.form-control-lg {
--bs-popover-box-shadow: var(--bs-box-shadow); --bs-popover-box-shadow: var(--bs-box-shadow);
--bs-popover-header-padding-x: 1rem; --bs-popover-header-padding-x: 1rem;
--bs-popover-header-padding-y: 0.5rem; --bs-popover-header-padding-y: 0.5rem;
--bs-popover-header-font-size: 0.9375rem; --bs-popover-header-font-size: 1rem;
--bs-popover-header-color: inherit; --bs-popover-header-color: inherit;
--bs-popover-header-bg: #111; --bs-popover-header-bg: #111;
--bs-popover-body-padding-x: 1rem; --bs-popover-body-padding-x: 1rem;
@ -8256,15 +8256,15 @@ textarea.form-control-lg {
} }
.fs-4 { .fs-4 {
font-size: calc(1.265625rem + 0.1875vw) !important; font-size: calc(1.275rem + 0.3vw) !important;
} }
.fs-5 { .fs-5 {
font-size: 1.171875rem !important; font-size: 1.25rem !important;
} }
.fs-6 { .fs-6 {
font-size: 0.9375rem !important; font-size: 1rem !important;
} }
.fst-italic { .fst-italic {
@ -11816,7 +11816,7 @@ textarea.form-control-lg {
font-size: 2rem !important; font-size: 2rem !important;
} }
.fs-4 { .fs-4 {
font-size: 1.40625rem !important; font-size: 1.5rem !important;
} }
} }
@media print { @media print {

View file

@ -74,7 +74,7 @@
--bs-font-sans-serif: "Lato", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"; --bs-font-sans-serif: "Lato", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
--bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
--bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0)); --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
--bs-root-font-size: 93.75%; --bs-root-font-size: 100%;
--bs-body-font-family: var(--bs-font-sans-serif); --bs-body-font-family: var(--bs-font-sans-serif);
--bs-body-font-size: 1rem; --bs-body-font-size: 1rem;
--bs-body-font-weight: 400; --bs-body-font-weight: 400;

View file

@ -74,7 +74,7 @@
--bs-font-sans-serif: "Lato", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"; --bs-font-sans-serif: "Lato", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
--bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
--bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0)); --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
--bs-root-font-size: 93.75%; --bs-root-font-size: 100%;
--bs-body-font-family: var(--bs-font-sans-serif); --bs-body-font-family: var(--bs-font-sans-serif);
--bs-body-font-size: 1rem; --bs-body-font-size: 1rem;
--bs-body-font-weight: 400; --bs-body-font-weight: 400;

View file

@ -74,7 +74,7 @@
--bs-font-sans-serif: DOS, Monaco, Menlo, Consolas, "Courier New", monospace; --bs-font-sans-serif: DOS, Monaco, Menlo, Consolas, "Courier New", monospace;
--bs-font-monospace: DOS, Monaco, Menlo, Consolas, "Courier New", monospace; --bs-font-monospace: DOS, Monaco, Menlo, Consolas, "Courier New", monospace;
--bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0)); --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
--bs-root-font-size: 93.75%; --bs-root-font-size: 100%;
--bs-body-font-family: var(--bs-font-sans-serif); --bs-body-font-family: var(--bs-font-sans-serif);
--bs-body-font-size: 1rem; --bs-body-font-size: 1rem;
--bs-body-font-weight: 400; --bs-body-font-weight: 400;

View file

@ -114,7 +114,7 @@ hr.my-3 {
--bs-font-sans-serif: -apple-system, BlinkMacSystemFont, "Droid Sans", "Segoe UI", "Helvetica", Arial, sans-serif; --bs-font-sans-serif: -apple-system, BlinkMacSystemFont, "Droid Sans", "Segoe UI", "Helvetica", Arial, sans-serif;
--bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
--bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0)); --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
--bs-root-font-size: 93.75%; --bs-root-font-size: 100%;
--bs-body-font-family: var(--bs-font-sans-serif); --bs-body-font-family: var(--bs-font-sans-serif);
--bs-body-font-size: 1rem; --bs-body-font-size: 1rem;
--bs-body-font-weight: 400; --bs-body-font-weight: 400;

View file

@ -74,7 +74,7 @@
--bs-font-sans-serif: -apple-system, BlinkMacSystemFont, "Droid Sans", "Segoe UI", "Helvetica", Arial, sans-serif; --bs-font-sans-serif: -apple-system, BlinkMacSystemFont, "Droid Sans", "Segoe UI", "Helvetica", Arial, sans-serif;
--bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
--bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0)); --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
--bs-root-font-size: 93.75%; --bs-root-font-size: 100%;
--bs-body-font-family: var(--bs-font-sans-serif); --bs-body-font-family: var(--bs-font-sans-serif);
--bs-body-font-size: 1rem; --bs-body-font-size: 1rem;
--bs-body-font-weight: 400; --bs-body-font-weight: 400;

View file

@ -74,7 +74,7 @@
--bs-font-sans-serif: -apple-system, BlinkMacSystemFont, "Droid Sans", "Segoe UI", "Helvetica", Arial, sans-serif; --bs-font-sans-serif: -apple-system, BlinkMacSystemFont, "Droid Sans", "Segoe UI", "Helvetica", Arial, sans-serif;
--bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
--bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0)); --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
--bs-root-font-size: 93.75%; --bs-root-font-size: 100%;
--bs-body-font-family: var(--bs-font-sans-serif); --bs-body-font-family: var(--bs-font-sans-serif);
--bs-body-font-size: 1rem; --bs-body-font-size: 1rem;
--bs-body-font-weight: 400; --bs-body-font-weight: 400;

View file

@ -74,7 +74,7 @@
--bs-font-sans-serif: "Lucida Console", Monaco, monospace; --bs-font-sans-serif: "Lucida Console", Monaco, monospace;
--bs-font-monospace: Arial, "Noto Sans", sans-serif; --bs-font-monospace: Arial, "Noto Sans", sans-serif;
--bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0)); --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
--bs-root-font-size: 93.75%; --bs-root-font-size: 100%;
--bs-body-font-family: var(--bs-font-sans-serif); --bs-body-font-family: var(--bs-font-sans-serif);
--bs-body-font-size: 1rem; --bs-body-font-size: 1rem;
--bs-body-font-weight: 400; --bs-body-font-weight: 400;

View file

@ -74,7 +74,7 @@
--bs-font-sans-serif: "Lucida Console", Monaco, monospace; --bs-font-sans-serif: "Lucida Console", Monaco, monospace;
--bs-font-monospace: Arial, "Noto Sans", sans-serif; --bs-font-monospace: Arial, "Noto Sans", sans-serif;
--bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0)); --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
--bs-root-font-size: 93.75%; --bs-root-font-size: 100%;
--bs-body-font-family: var(--bs-font-sans-serif); --bs-body-font-family: var(--bs-font-sans-serif);
--bs-body-font-size: 1rem; --bs-body-font-size: 1rem;
--bs-body-font-weight: 400; --bs-body-font-weight: 400;

10329
yarn.lock

File diff suppressed because it is too large Load diff