mirror of
https://github.com/ad-aures/castopod.git
synced 2026-03-30 21:09:22 +02:00
docs(init): create documentation website using vitepress
- rename podlibre to adaures - rename castopod-host to castopod - simplify README and redirect to docs site - move INSTALL and UPDATE docs - add new gitlabci pipeline to deploy docs - upgrade node to v16 in Dockerfile
This commit is contained in:
parent
472842fae6
commit
fa5b5f51a4
327 changed files with 5619 additions and 1445 deletions
|
|
@ -1,10 +1,10 @@
|
|||
// For format details, see https://aka.ms/vscode-remote/devcontainer.json or this file's README at:
|
||||
// https://github.com/microsoft/vscode-dev-containers/tree/v0.117.1/containers/docker-existing-dockerfile
|
||||
{
|
||||
"name": "Castopod Host dev",
|
||||
"name": "Castopod dev",
|
||||
"dockerComposeFile": ["../docker-compose.yml", "./docker-compose.yml"],
|
||||
"service": "app",
|
||||
"workspaceFolder": "/castopod-host",
|
||||
"workspaceFolder": "/castopod",
|
||||
"postCreateCommand": "composer install && npm install && npm run build:static",
|
||||
"postStartCommand": "crontab ./crontab && cron && php spark serve --host 0.0.0.0",
|
||||
"postAttachCommand": "crontab ./crontab && service cron reload",
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ services:
|
|||
volumes:
|
||||
# Mounts the project folder to '/workspace'. While this file is in .devcontainer,
|
||||
# mounts are relative to the first file in the list, which is a level up.
|
||||
- .:/castopod-host:cached
|
||||
- .:/castopod:cached
|
||||
|
||||
# Overrides default command so things don't shut down after the process ends.
|
||||
command: /bin/sh -c "while sleep 1000; do :; done"
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
# Example Environment Configuration file
|
||||
#
|
||||
# This file can be used as a starting point for
|
||||
# your Castopod Host instance settings.
|
||||
# your Castopod instance settings.
|
||||
#
|
||||
# For manual configuration:
|
||||
# - copy this file's contents to a file named `.env`
|
||||
|
|
|
|||
8
.gitignore
vendored
8
.gitignore
vendored
|
|
@ -173,7 +173,7 @@ mariadb
|
|||
phpmyadmin
|
||||
sessions
|
||||
|
||||
# Castopod Host bundle & packages
|
||||
castopod-host/
|
||||
castopod-host-*.zip
|
||||
castopod-host-*.tar.gz
|
||||
# Castopod bundle & packages
|
||||
castopod/
|
||||
castopod-*.zip
|
||||
castopod-*.tar.gz
|
||||
|
|
|
|||
|
|
@ -1,10 +1,11 @@
|
|||
image: code.podlibre.org:5050/podlibre/castopod-host:latest
|
||||
image: code.castopod.org:5050/ad-aures/castopod:latest
|
||||
|
||||
stages:
|
||||
- prepare
|
||||
- quality
|
||||
- bundle
|
||||
- release
|
||||
- deploy
|
||||
|
||||
php-dependencies:
|
||||
stage: prepare
|
||||
|
|
@ -76,15 +77,15 @@ bundle:
|
|||
# make scripts/bundle.sh executable
|
||||
- chmod +x ./scripts/bundle.sh
|
||||
|
||||
# bundle castopod-host with commit ref as version
|
||||
# bundle castopod with commit ref as version
|
||||
- ./scripts/bundle.sh ${CI_COMMIT_REF_SLUG}_${CI_COMMIT_SHORT_SHA}
|
||||
dependencies:
|
||||
- php-dependencies
|
||||
- js-dependencies
|
||||
artifacts:
|
||||
name: "castopod-host-${CI_COMMIT_REF_SLUG}_${CI_COMMIT_SHORT_SHA}"
|
||||
name: "castopod-${CI_COMMIT_REF_SLUG}_${CI_COMMIT_SHORT_SHA}"
|
||||
paths:
|
||||
- castopod-host
|
||||
- castopod
|
||||
except:
|
||||
- main
|
||||
- beta
|
||||
|
|
@ -113,3 +114,12 @@ release:
|
|||
- main
|
||||
- beta
|
||||
- alpha
|
||||
|
||||
documentation:
|
||||
stage: deploy
|
||||
trigger:
|
||||
include: docs/.gitlab-ci.yml
|
||||
strategy: depend
|
||||
only:
|
||||
changes:
|
||||
- docs/**/*
|
||||
|
|
|
|||
17
.gitlab/issue_templates/default.md
Normal file
17
.gitlab/issue_templates/default.md
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
### Before submitting an issue
|
||||
|
||||
1. **Use the issue search** — check if the issue has already been
|
||||
reported.
|
||||
|
||||
2. **Check if the issue has been fixed** — try to reproduce it using the
|
||||
latest release.
|
||||
|
||||
3. **Isolate the problem** — ideally create a
|
||||
[reduced test case](https://css-tricks.com/reduced-test-cases/) and a live
|
||||
example.
|
||||
|
||||
4. **Select an issue template** — choose a template from `bug` or
|
||||
`feature-request` and fill out the info you deem necessary. The more context
|
||||
we get, the easier it is to implement the feature or fix the bug you report.
|
||||
|
||||
Check out the [CONTRIBUTING manual](../../CONTRIBUTING.md) for more info.
|
||||
|
|
@ -1,8 +1,14 @@
|
|||
{
|
||||
"branches": [
|
||||
"main",
|
||||
{ "name": "alpha", "prerelease": true },
|
||||
{ "name": "beta", "prerelease": true }
|
||||
{
|
||||
"name": "alpha",
|
||||
"prerelease": true
|
||||
},
|
||||
{
|
||||
"name": "beta",
|
||||
"prerelease": true
|
||||
}
|
||||
],
|
||||
"plugins": [
|
||||
"@semantic-release/commit-analyzer",
|
||||
|
|
@ -30,15 +36,15 @@
|
|||
[
|
||||
"@semantic-release/gitlab",
|
||||
{
|
||||
"gitlabUrl": "https://code.podlibre.org/",
|
||||
"gitlabUrl": "https://code.castopod.org/",
|
||||
"assets": [
|
||||
{
|
||||
"path": "castopod-host-*.zip",
|
||||
"label": "Castopod Host Package (zip)"
|
||||
"path": "castopod-*.zip",
|
||||
"label": "Castopod Package (zip)"
|
||||
},
|
||||
{
|
||||
"path": "castopod-host-*.tar.gz",
|
||||
"label": "Castopod Host Package (tar.gz)"
|
||||
"path": "castopod-*.tar.gz",
|
||||
"label": "Castopod Package (tar.gz)"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
# rsync filter rules to copy required files for Castopod Host's bundle
|
||||
# rsync filter rules to copy required files for Castopod's bundle
|
||||
|
||||
- app/Views/_assets/
|
||||
+ app/***
|
||||
|
|
@ -10,6 +10,4 @@
|
|||
+ .env.example
|
||||
+ LICENSE.md
|
||||
+ README.md
|
||||
+ INSTALL.md
|
||||
+ UPDATE.md
|
||||
- **
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
# Authors
|
||||
|
||||
- [Benjamin Bellamy](https://code.podlibre.org/benjamin) <ben@podlibre.org>
|
||||
- [Yassine Doghri](https://code.podlibre.org/yassine) <yassine@podlibre.org>
|
||||
- [Benjamin Bellamy](https://code.castopod.org/benjamin) <ben@castopod.org>
|
||||
- [Yassine Doghri](https://code.castopod.org/yassine) <yassine@castopod.org>
|
||||
|
|
|
|||
1412
CHANGELOG.md
1412
CHANGELOG.md
|
|
@ -1,103 +1,103 @@
|
|||
# [1.0.0-beta.8](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-beta.7...v1.0.0-beta.8) (2022-02-10)
|
||||
# [1.0.0-beta.8](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-beta.7...v1.0.0-beta.8) (2022-02-10)
|
||||
|
||||
### Features
|
||||
|
||||
- **podcast-form:** add new_feed_url field to set an url when changing domain or
|
||||
host
|
||||
([e7eec48](https://code.podlibre.org/podlibre/castopod-host/commit/e7eec48e7bc06a9aa907db01ed3e5b536e7dd8be))
|
||||
([e7eec48](https://code.castopod.org/ad-aures/castopod/commit/e7eec48e7bc06a9aa907db01ed3e5b536e7dd8be))
|
||||
|
||||
# [1.0.0-beta.7](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-beta.6...v1.0.0-beta.7) (2022-02-05)
|
||||
# [1.0.0-beta.7](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-beta.6...v1.0.0-beta.7) (2022-02-05)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- **activitypub:** allow cors on get requests for routes exposing acitivitypub
|
||||
objects
|
||||
([2f24809](https://code.podlibre.org/podlibre/castopod-host/commit/2f2480998f9abb34f02ab186c65d462a74b4e640))
|
||||
([2f24809](https://code.castopod.org/ad-aures/castopod/commit/2f2480998f9abb34f02ab186c65d462a74b4e640))
|
||||
- **fediverse:** set model instances as non shared to prevent overlapping
|
||||
([91128fa](https://code.podlibre.org/podlibre/castopod-host/commit/91128fad7a68e1f4e5acacba90b6899288699e61))
|
||||
([91128fa](https://code.castopod.org/ad-aures/castopod/commit/91128fad7a68e1f4e5acacba90b6899288699e61))
|
||||
- **htaccess:** add ? after index.php in RewriteRule
|
||||
([d9d139e](https://code.podlibre.org/podlibre/castopod-host/commit/d9d139eefa03c28d1a064b3b32c9036193497e57)),
|
||||
closes [#152](https://code.podlibre.org/podlibre/castopod-host/issues/152)
|
||||
([d9d139e](https://code.castopod.org/ad-aures/castopod/commit/d9d139eefa03c28d1a064b3b32c9036193497e57)),
|
||||
closes [#152](https://code.castopod.org/ad-aures/castopod/issues/152)
|
||||
|
||||
### Features
|
||||
|
||||
- **home:** sort podcasts by recent activity + add dropdown menu to choose
|
||||
between sorting options
|
||||
([7b89da6](https://code.podlibre.org/podlibre/castopod-host/commit/7b89da6106c150708782d39ed2742fe416c41e89)),
|
||||
closes [#164](https://code.podlibre.org/podlibre/castopod-host/issues/164)
|
||||
([7b89da6](https://code.castopod.org/ad-aures/castopod/commit/7b89da6106c150708782d39ed2742fe416c41e89)),
|
||||
closes [#164](https://code.castopod.org/ad-aures/castopod/issues/164)
|
||||
|
||||
# [1.0.0-beta.6](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-beta.5...v1.0.0-beta.6) (2022-02-03)
|
||||
# [1.0.0-beta.6](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-beta.5...v1.0.0-beta.6) (2022-02-03)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- **activitypub:** add conditions for possibly missing actor properties + add
|
||||
user-agent to requests
|
||||
([8fbf948](https://code.podlibre.org/podlibre/castopod-host/commit/8fbf948fbba22ffd33966a1b2ccd42e8f7c1f8a2))
|
||||
([8fbf948](https://code.castopod.org/ad-aures/castopod/commit/8fbf948fbba22ffd33966a1b2ccd42e8f7c1f8a2))
|
||||
- **activitypub:** add target actor id to like / announce activities to send
|
||||
directly to note's actor
|
||||
([962dd30](https://code.podlibre.org/podlibre/castopod-host/commit/962dd305f5d3f6eadc68f400e0e8f953827fe20d))
|
||||
([962dd30](https://code.castopod.org/ad-aures/castopod/commit/962dd305f5d3f6eadc68f400e0e8f953827fe20d))
|
||||
- **activitypub:** add target_actor_id for create activity to broadcast post
|
||||
reply
|
||||
([0128a21](https://code.podlibre.org/podlibre/castopod-host/commit/0128a21ec55dcc0a2fbf4081dadb4c4737735ba1))
|
||||
([0128a21](https://code.castopod.org/ad-aures/castopod/commit/0128a21ec55dcc0a2fbf4081dadb4c4737735ba1))
|
||||
- **http-signature:** update SIGNATURE_PATTERN allowing signature keys to be
|
||||
sent in any order
|
||||
([b7f285e](https://code.podlibre.org/podlibre/castopod-host/commit/b7f285e4e24247fedb94f030356fa6f291f525cc))
|
||||
([b7f285e](https://code.castopod.org/ad-aures/castopod/commit/b7f285e4e24247fedb94f030356fa6f291f525cc))
|
||||
- **install:** set message block on forms to show error messages
|
||||
([3a0a20d](https://code.podlibre.org/podlibre/castopod-host/commit/3a0a20d59cdae7f166325efb750eaa6e9800ba6e)),
|
||||
closes [#157](https://code.podlibre.org/podlibre/castopod-host/issues/157)
|
||||
([3a0a20d](https://code.castopod.org/ad-aures/castopod/commit/3a0a20d59cdae7f166325efb750eaa6e9800ba6e)),
|
||||
closes [#157](https://code.castopod.org/ad-aures/castopod/issues/157)
|
||||
- **markdown-editor:** remove unnecessary buttons for podcast and episode
|
||||
editors + add extensions
|
||||
([9c4f60e](https://code.podlibre.org/podlibre/castopod-host/commit/9c4f60e00bcbd4f784f12d2a6fed357ad402ee2e))
|
||||
([9c4f60e](https://code.castopod.org/ad-aures/castopod/commit/9c4f60e00bcbd4f784f12d2a6fed357ad402ee2e))
|
||||
- **podcast-activity:** check if transcript and chapters are set before
|
||||
including them in audio
|
||||
([5855a25](https://code.podlibre.org/podlibre/castopod-host/commit/5855a250936f91641efef77650890a18d8e9917f))
|
||||
([5855a25](https://code.castopod.org/ad-aures/castopod/commit/5855a250936f91641efef77650890a18d8e9917f))
|
||||
- **podcast:** use markdown description value for editor + set prose class to
|
||||
about description
|
||||
([f304d97](https://code.podlibre.org/podlibre/castopod-host/commit/f304d97b14e0ef383509cb3bba50beb55bf701ba)),
|
||||
closes [#156](https://code.podlibre.org/podlibre/castopod-host/issues/156)
|
||||
([f304d97](https://code.castopod.org/ad-aures/castopod/commit/f304d97b14e0ef383509cb3bba50beb55bf701ba)),
|
||||
closes [#156](https://code.castopod.org/ad-aures/castopod/issues/156)
|
||||
|
||||
# [1.0.0-beta.5](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-beta.4...v1.0.0-beta.5) (2022-01-31)
|
||||
# [1.0.0-beta.5](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-beta.4...v1.0.0-beta.5) (2022-01-31)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- **analytics:** set initial value for duration and bandwidth
|
||||
([ee50539](https://code.podlibre.org/podlibre/castopod-host/commit/ee5053959154b1a2e5fbe4b43162968425206a26))
|
||||
([ee50539](https://code.castopod.org/ad-aures/castopod/commit/ee5053959154b1a2e5fbe4b43162968425206a26))
|
||||
|
||||
# [1.0.0-beta.4](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-beta.3...v1.0.0-beta.4) (2022-01-29)
|
||||
# [1.0.0-beta.4](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-beta.3...v1.0.0-beta.4) (2022-01-29)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- **housekeeping:** replace the use of GLOB_BRACE with looping over file
|
||||
extensions
|
||||
([42d92d0](https://code.podlibre.org/podlibre/castopod-host/commit/42d92d0c8dfe0c567c28f5bfdda129890fa4c2ec)),
|
||||
closes [#154](https://code.podlibre.org/podlibre/castopod-host/issues/154)
|
||||
([42d92d0](https://code.castopod.org/ad-aures/castopod/commit/42d92d0c8dfe0c567c28f5bfdda129890fa4c2ec)),
|
||||
closes [#154](https://code.castopod.org/ad-aures/castopod/issues/154)
|
||||
- **housekeeping:** set default sizes value + ignore illegal IFD size error to
|
||||
proceed with script
|
||||
([f21ca57](https://code.podlibre.org/podlibre/castopod-host/commit/f21ca57603cfa503699b7e09a155e18d876d65fe))
|
||||
([f21ca57](https://code.castopod.org/ad-aures/castopod/commit/f21ca57603cfa503699b7e09a155e18d876d65fe))
|
||||
|
||||
### Features
|
||||
|
||||
- **housekeeping:** add clear_cache option to flush redis or files cache
|
||||
([99bfac0](https://code.podlibre.org/podlibre/castopod-host/commit/99bfac0b428a4bc6fe8bfd10a355dfd93f42ba5c))
|
||||
([99bfac0](https://code.castopod.org/ad-aures/castopod/commit/99bfac0b428a4bc6fe8bfd10a355dfd93f42ba5c))
|
||||
|
||||
# [1.0.0-beta.3](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-beta.2...v1.0.0-beta.3) (2022-01-28)
|
||||
# [1.0.0-beta.3](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-beta.2...v1.0.0-beta.3) (2022-01-28)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- revert to beta.1's codeigniter4 version
|
||||
([e831411](https://code.podlibre.org/podlibre/castopod-host/commit/e83141127080ccde44987195db46ba97fd6cc2ca))
|
||||
([e831411](https://code.castopod.org/ad-aures/castopod/commit/e83141127080ccde44987195db46ba97fd6cc2ca))
|
||||
|
||||
# [1.0.0-beta.2](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-beta.1...v1.0.0-beta.2) (2022-01-28)
|
||||
# [1.0.0-beta.2](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-beta.1...v1.0.0-beta.2) (2022-01-28)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- **migrations:** ignore invalid utf8 chars for media files metadata + update
|
||||
transcript parser
|
||||
([45e8f99](https://code.podlibre.org/podlibre/castopod-host/commit/45e8f99e753cc02ec105e6f4d7fe026a205724f8))
|
||||
([45e8f99](https://code.castopod.org/ad-aures/castopod/commit/45e8f99e753cc02ec105e6f4d7fe026a205724f8))
|
||||
- **video-clips:** set audio codec to aac, fixing audio issue on twitter
|
||||
([3c22c68](https://code.podlibre.org/podlibre/castopod-host/commit/3c22c68ee81f77bd7fcf7e2739ee6af016407843))
|
||||
([3c22c68](https://code.castopod.org/ad-aures/castopod/commit/3c22c68ee81f77bd7fcf7e2739ee6af016407843))
|
||||
- **video-clips:** set longer podcast and episode lengths for squared format
|
||||
([c030113](https://code.podlibre.org/podlibre/castopod-host/commit/c0301134c2048dc29eb2b995e4d5c22c49444100))
|
||||
([c030113](https://code.castopod.org/ad-aures/castopod/commit/c0301134c2048dc29eb2b995e4d5c22c49444100))
|
||||
|
||||
# 1.0.0-beta.1 (2022-01-23)
|
||||
|
||||
|
|
@ -105,1589 +105,1589 @@
|
|||
|
||||
- **a11y:** replace active tab color to contrast with background on podcast and
|
||||
episode pages
|
||||
([f3785e1](https://code.podlibre.org/podlibre/castopod-host/commit/f3785e140147d085a2fb6a62ded87cdfe360f442))
|
||||
([f3785e1](https://code.castopod.org/ad-aures/castopod/commit/f3785e140147d085a2fb6a62ded87cdfe360f442))
|
||||
- **activity-pub:** cache issues when navigating to activity stream urls
|
||||
([7bcbfb3](https://code.podlibre.org/podlibre/castopod-host/commit/7bcbfb32f7cca08d111be46c7f1640e372d4a4b0))
|
||||
([7bcbfb3](https://code.castopod.org/ad-aures/castopod/commit/7bcbfb32f7cca08d111be46c7f1640e372d4a4b0))
|
||||
- **activity-pub:** get database records using new model instances
|
||||
([92536dd](https://code.podlibre.org/podlibre/castopod-host/commit/92536ddb3812214a9c5682b92e547e5c1998a5d7))
|
||||
([92536dd](https://code.castopod.org/ad-aures/castopod/commit/92536ddb3812214a9c5682b92e547e5c1998a5d7))
|
||||
- **activitypub:** set created_by to null for reblog if no user + update episode
|
||||
oembed data
|
||||
([209dfbd](https://code.podlibre.org/podlibre/castopod-host/commit/209dfbd134e1a2cc02e7c24c158d786fa4dda61d))
|
||||
([209dfbd](https://code.castopod.org/ad-aures/castopod/commit/209dfbd134e1a2cc02e7c24c158d786fa4dda61d))
|
||||
- add admin-audio-player to vite config to have admin player show up
|
||||
([93cb9b2](https://code.podlibre.org/podlibre/castopod-host/commit/93cb9b24701c09b92820204a67c1fc1b3c044708))
|
||||
([93cb9b2](https://code.castopod.org/ad-aures/castopod/commit/93cb9b24701c09b92820204a67c1fc1b3c044708))
|
||||
- add application/octet-stream mimetype to mp3 and m4a extensions to prevent
|
||||
ext_in error
|
||||
([339bef8](https://code.podlibre.org/podlibre/castopod-host/commit/339bef878e54983d86e91e6ff7a931a843d321b3)),
|
||||
closes [#145](https://code.podlibre.org/podlibre/castopod-host/issues/145)
|
||||
([339bef8](https://code.castopod.org/ad-aures/castopod/commit/339bef878e54983d86e91e6ff7a931a843d321b3)),
|
||||
closes [#145](https://code.castopod.org/ad-aures/castopod/issues/145)
|
||||
- add category_label component to include parent category in about podcast page
|
||||
([74e7d68](https://code.podlibre.org/podlibre/castopod-host/commit/74e7d68ac834885c4b89ee6e7d60db2157165799))
|
||||
([74e7d68](https://code.castopod.org/ad-aures/castopod/commit/74e7d68ac834885c4b89ee6e7d60db2157165799))
|
||||
- add head request to analytics_hit route
|
||||
([f0a2f0b](https://code.podlibre.org/podlibre/castopod-host/commit/f0a2f0bea491ca91976b351bb79837e95c9d094b))
|
||||
([f0a2f0b](https://code.castopod.org/ad-aures/castopod/commit/f0a2f0bea491ca91976b351bb79837e95c9d094b))
|
||||
- add missing explicit badge for podcasts and episodes
|
||||
([cdf9f9d](https://code.podlibre.org/podlibre/castopod-host/commit/cdf9f9d53f2597f19455cb65c51da4677bb99327))
|
||||
([cdf9f9d](https://code.castopod.org/ad-aures/castopod/commit/cdf9f9d53f2597f19455cb65c51da4677bb99327))
|
||||
- add open graph size for podcast images to replace the inadequate large format
|
||||
([33aae1f](https://code.podlibre.org/podlibre/castopod-host/commit/33aae1f7934e4962116e94e477dbf48e24971f5f))
|
||||
([33aae1f](https://code.castopod.org/ad-aures/castopod/commit/33aae1f7934e4962116e94e477dbf48e24971f5f))
|
||||
- add public/media folder to castopod bundle
|
||||
([8053d35](https://code.podlibre.org/podlibre/castopod-host/commit/8053d3521b481872711dabaaf265d08b9bfbaa87)),
|
||||
closes [#52](https://code.podlibre.org/podlibre/castopod-host/issues/52)
|
||||
([8053d35](https://code.castopod.org/ad-aures/castopod/commit/8053d3521b481872711dabaaf265d08b9bfbaa87)),
|
||||
closes [#52](https://code.castopod.org/ad-aures/castopod/issues/52)
|
||||
- add translation key for audio-clipper trim labels
|
||||
([db191ac](https://code.podlibre.org/podlibre/castopod-host/commit/db191ac31bd16bad2a72afdb8b25c685adf86a6e))
|
||||
([db191ac](https://code.castopod.org/ad-aures/castopod/commit/db191ac31bd16bad2a72afdb8b25c685adf86a6e))
|
||||
- add where condition to get episode count without deleted episodes
|
||||
([7661734](https://code.podlibre.org/podlibre/castopod-host/commit/7661734ed296654630f3668132671117519145dd)),
|
||||
closes [#67](https://code.podlibre.org/podlibre/castopod-host/issues/67)
|
||||
([7661734](https://code.castopod.org/ad-aures/castopod/commit/7661734ed296654630f3668132671117519145dd)),
|
||||
closes [#67](https://code.castopod.org/ad-aures/castopod/issues/67)
|
||||
- **admin:** save block and lock switches
|
||||
([b66c0af](https://code.podlibre.org/podlibre/castopod-host/commit/b66c0afc8fab2e338402a9a4f8105e5f5459e208))
|
||||
([b66c0af](https://code.castopod.org/ad-aures/castopod/commit/b66c0afc8fab2e338402a9a4f8105e5f5459e208))
|
||||
- **analytics:** redirect to mp3 file even when referer was not set
|
||||
([9fc388d](https://code.podlibre.org/podlibre/castopod-host/commit/9fc388d154f29c335dedcd624abe8c1751762c07))
|
||||
([9fc388d](https://code.castopod.org/ad-aures/castopod/commit/9fc388d154f29c335dedcd624abe8c1751762c07))
|
||||
- **analytics:** remove charts empty values + remove useless language cache
|
||||
([1678794](https://code.podlibre.org/podlibre/castopod-host/commit/16787941539ba4014281a366789ea896a9cd2afc))
|
||||
([1678794](https://code.castopod.org/ad-aures/castopod/commit/16787941539ba4014281a366789ea896a9cd2afc))
|
||||
- **analytics:** set duration field to precise decimal as episode's audio file
|
||||
duration
|
||||
([d772685](https://code.podlibre.org/podlibre/castopod-host/commit/d77268540569b2be9d91d5e09aefb3ff5ac2b071))
|
||||
([d772685](https://code.castopod.org/ad-aures/castopod/commit/d77268540569b2be9d91d5e09aefb3ff5ac2b071))
|
||||
- **analytics:** update migrations to set decimal precision for latitude and
|
||||
longitude
|
||||
([714d6b5](https://code.podlibre.org/podlibre/castopod-host/commit/714d6b5d4950e52cf1c3170bb59954f98ffd48bd))
|
||||
([714d6b5](https://code.castopod.org/ad-aures/castopod/commit/714d6b5d4950e52cf1c3170bb59954f98ffd48bd))
|
||||
- **analytics:** update service management so that it works with new OPAWG slug
|
||||
values
|
||||
([7fe9d42](https://code.podlibre.org/podlibre/castopod-host/commit/7fe9d42500ade2c6fa3ff4365b4affc475af0e51))
|
||||
([7fe9d42](https://code.castopod.org/ad-aures/castopod/commit/7fe9d42500ade2c6fa3ff4365b4affc475af0e51))
|
||||
- **audio-clipper:** add mouse position offset when stretching clip to prevent
|
||||
content from jumping
|
||||
([602654b](https://code.podlibre.org/podlibre/castopod-host/commit/602654b99b33ee8c29da080058a0aaea976cd484))
|
||||
([602654b](https://code.castopod.org/ad-aures/castopod/commit/602654b99b33ee8c29da080058a0aaea976cd484))
|
||||
- **audio-clipper:** show audio playing progress + put waveform behind audio
|
||||
clipper
|
||||
([01a09dc](https://code.podlibre.org/podlibre/castopod-host/commit/01a09dc447b81c5412ceb45d6706a867939fd4dd))
|
||||
([01a09dc](https://code.castopod.org/ad-aures/castopod/commit/01a09dc447b81c5412ceb45d6706a867939fd4dd))
|
||||
- **avatar:** use default avatar when no avatar url has been set
|
||||
([9d23c7e](https://code.podlibre.org/podlibre/castopod-host/commit/9d23c7e7e142c6cf1a1418e37e41d711064593c4)),
|
||||
closes [#111](https://code.podlibre.org/podlibre/castopod-host/issues/111)
|
||||
([9d23c7e](https://code.castopod.org/ad-aures/castopod/commit/9d23c7e7e142c6cf1a1418e37e41d711064593c4)),
|
||||
closes [#111](https://code.castopod.org/ad-aures/castopod/issues/111)
|
||||
- **bundle:** include modules and themes when copying files with rsync
|
||||
([cd5bb88](https://code.podlibre.org/podlibre/castopod-host/commit/cd5bb8835c6e259408a8c13a2196a347e161da83))
|
||||
([cd5bb88](https://code.castopod.org/ad-aures/castopod/commit/cd5bb8835c6e259408a8c13a2196a347e161da83))
|
||||
- **bundle:** update vite input files path + add `set -e` in bash scripts to
|
||||
fail if command fails
|
||||
([0ee53c7](https://code.podlibre.org/podlibre/castopod-host/commit/0ee53c71ffadb8a6ddb1febd9f912bc99f5f7a0b))
|
||||
([0ee53c7](https://code.castopod.org/ad-aures/castopod/commit/0ee53c71ffadb8a6ddb1febd9f912bc99f5f7a0b))
|
||||
- **cache:** add locale for podcast and episode pages + clear some persisting
|
||||
cache in models
|
||||
([9cec8a8](https://code.podlibre.org/podlibre/castopod-host/commit/9cec8a81ccbb7239402fe6633dbc31979272302a)),
|
||||
closes [#42](https://code.podlibre.org/podlibre/castopod-host/issues/42)
|
||||
[#61](https://code.podlibre.org/podlibre/castopod-host/issues/61)
|
||||
([9cec8a8](https://code.castopod.org/ad-aures/castopod/commit/9cec8a81ccbb7239402fe6633dbc31979272302a)),
|
||||
closes [#42](https://code.castopod.org/ad-aures/castopod/issues/42)
|
||||
[#61](https://code.castopod.org/ad-aures/castopod/issues/61)
|
||||
- **cache:** return a non cached view when connected
|
||||
([e2e7358](https://code.podlibre.org/podlibre/castopod-host/commit/e2e735815d805a48eed2ea3288d060d0ddb253a3))
|
||||
([e2e7358](https://code.castopod.org/ad-aures/castopod/commit/e2e735815d805a48eed2ea3288d060d0ddb253a3))
|
||||
- **cache:** suffix cache names with authenticated for credits, map and pages
|
||||
([418a70b](https://code.podlibre.org/podlibre/castopod-host/commit/418a70b2a670d8ba0ab6c15fa5faa41f6be55e53))
|
||||
([418a70b](https://code.castopod.org/ad-aures/castopod/commit/418a70b2a670d8ba0ab6c15fa5faa41f6be55e53))
|
||||
- cast actor_id to pass as int to set_interact_as_actor() function
|
||||
([56a8e5d](https://code.podlibre.org/podlibre/castopod-host/commit/56a8e5d7dd615322aeb007e730801c65d0b02e5c))
|
||||
([56a8e5d](https://code.castopod.org/ad-aures/castopod/commit/56a8e5d7dd615322aeb007e730801c65d0b02e5c))
|
||||
- **category:** remove uncategorized option to enforce users in choosing a
|
||||
category
|
||||
([8c64f25](https://code.podlibre.org/podlibre/castopod-host/commit/8c64f25a0e72fec03d25544797d32623b2276fce))
|
||||
([8c64f25](https://code.castopod.org/ad-aures/castopod/commit/8c64f25a0e72fec03d25544797d32623b2276fce))
|
||||
- check for database connection and podcasts table existence before redirecting
|
||||
to install
|
||||
([eb74e81](https://code.podlibre.org/podlibre/castopod-host/commit/eb74e81c3d93581e310b391cd029e62a0d690a8a))
|
||||
([eb74e81](https://code.castopod.org/ad-aures/castopod/commit/eb74e81c3d93581e310b391cd029e62a0d690a8a))
|
||||
- check that additional files are valid when creating episode
|
||||
([eac5bc8](https://code.podlibre.org/podlibre/castopod-host/commit/eac5bc876de125e1fe08d1b89f767a04fc0fbfb6))
|
||||
([eac5bc8](https://code.castopod.org/ad-aures/castopod/commit/eac5bc876de125e1fe08d1b89f767a04fc0fbfb6))
|
||||
- check that note has a preview_card_id before displaying it
|
||||
([acb8b3a](https://code.podlibre.org/podlibre/castopod-host/commit/acb8b3a40172ccb184ffe544760601d756692e6c)),
|
||||
closes [#114](https://code.podlibre.org/podlibre/castopod-host/issues/114)
|
||||
([acb8b3a](https://code.castopod.org/ad-aures/castopod/commit/acb8b3a40172ccb184ffe544760601d756692e6c)),
|
||||
closes [#114](https://code.castopod.org/ad-aures/castopod/issues/114)
|
||||
- clear cache when deleting podcast banner
|
||||
([99bb40b](https://code.podlibre.org/podlibre/castopod-host/commit/99bb40b8bc17b8ee2cd8468a82e46ea280c92cb6))
|
||||
([99bb40b](https://code.castopod.org/ad-aures/castopod/commit/99bb40b8bc17b8ee2cd8468a82e46ea280c92cb6))
|
||||
- comment all cache clean after page update to prevent analytics cache deletion
|
||||
([e6197a4](https://code.podlibre.org/podlibre/castopod-host/commit/e6197a4972a3cce3d67dd7972bb54f8720b8e5b7))
|
||||
([e6197a4](https://code.castopod.org/ad-aures/castopod/commit/e6197a4972a3cce3d67dd7972bb54f8720b8e5b7))
|
||||
- **comments:** add comment view partials for public pages
|
||||
([fcecbe1](https://code.podlibre.org/podlibre/castopod-host/commit/fcecbe1c68b0d28d19454fba65caf3ab769fbc75))
|
||||
([fcecbe1](https://code.castopod.org/ad-aures/castopod/commit/fcecbe1c68b0d28d19454fba65caf3ab769fbc75))
|
||||
- correct chart data
|
||||
([4d3e9c8](https://code.podlibre.org/podlibre/castopod-host/commit/4d3e9c8c02cdc882e9fe1c29625695b6f83c820a))
|
||||
([4d3e9c8](https://code.castopod.org/ad-aures/castopod/commit/4d3e9c8c02cdc882e9fe1c29625695b6f83c820a))
|
||||
- correct percona compatibility issue
|
||||
([e53f819](https://code.podlibre.org/podlibre/castopod-host/commit/e53f819264b2d6902996f11ffcbb7c99295a90ef))
|
||||
([e53f819](https://code.castopod.org/ad-aures/castopod/commit/e53f819264b2d6902996f11ffcbb7c99295a90ef))
|
||||
- correct php-fpm issues
|
||||
([1ef55d7](https://code.podlibre.org/podlibre/castopod-host/commit/1ef55d7315bb44abe05f02ec8a84b6b6a557a9a0))
|
||||
([1ef55d7](https://code.castopod.org/ad-aures/castopod/commit/1ef55d7315bb44abe05f02ec8a84b6b6a557a9a0))
|
||||
- correct referrer bug
|
||||
([ed69b2f](https://code.podlibre.org/podlibre/castopod-host/commit/ed69b2f5004ed1cd18bac824c08a0df01f5d2637))
|
||||
([ed69b2f](https://code.castopod.org/ad-aures/castopod/commit/ed69b2f5004ed1cd18bac824c08a0df01f5d2637))
|
||||
- correction for servers with low int precision
|
||||
([31b7828](https://code.podlibre.org/podlibre/castopod-host/commit/31b7828e77519ef43e9bcfcbdf6c21712f97a571))
|
||||
([31b7828](https://code.castopod.org/ad-aures/castopod/commit/31b7828e77519ef43e9bcfcbdf6c21712f97a571))
|
||||
- **cors:** add preflight option routes for episode, podcast and status objects
|
||||
([a281abf](https://code.podlibre.org/podlibre/castopod-host/commit/a281abfda475388a07943c169dab460cc2d4f944))
|
||||
([a281abf](https://code.castopod.org/ad-aures/castopod/commit/a281abfda475388a07943c169dab460cc2d4f944))
|
||||
- declare typed properties in PHPDoc for php<7.4
|
||||
([14dd44d](https://code.podlibre.org/podlibre/castopod-host/commit/14dd44d03d6db0d9ae4198db8e65c92a0e45cb31)),
|
||||
closes [#23](https://code.podlibre.org/podlibre/castopod-host/issues/23)
|
||||
([14dd44d](https://code.castopod.org/ad-aures/castopod/commit/14dd44d03d6db0d9ae4198db8e65c92a0e45cb31)),
|
||||
closes [#23](https://code.castopod.org/ad-aures/castopod/issues/23)
|
||||
- define podcast_id and platform_slug as foreign keys in podcasts_plaforms table
|
||||
([6e9451a](https://code.podlibre.org/podlibre/castopod-host/commit/6e9451a1103b43750fa70ad576de36af25ca29cb))
|
||||
([6e9451a](https://code.castopod.org/ad-aures/castopod/commit/6e9451a1103b43750fa70ad576de36af25ca29cb))
|
||||
- define podcastNamespaceLink value
|
||||
([0d744d2](https://code.podlibre.org/podlibre/castopod-host/commit/0d744d212df0d070ceea185068eaf2746e1ccd48))
|
||||
([0d744d2](https://code.castopod.org/ad-aures/castopod/commit/0d744d212df0d070ceea185068eaf2746e1ccd48))
|
||||
- **embeddable-player:** enable any ancestor when X-Frame-Options is set on
|
||||
server
|
||||
([44a4962](https://code.podlibre.org/podlibre/castopod-host/commit/44a4962e0b7e3ed87e9914b4e7792a0d52330ff8))
|
||||
([44a4962](https://code.castopod.org/ad-aures/castopod/commit/44a4962e0b7e3ed87e9914b4e7792a0d52330ff8))
|
||||
- **embed:** open embedded player's links in new tab
|
||||
([4aa73d7](https://code.podlibre.org/podlibre/castopod-host/commit/4aa73d71e3b8c0a6c3f75f4d1d45c4d693aba64c))
|
||||
([4aa73d7](https://code.castopod.org/ad-aures/castopod/commit/4aa73d71e3b8c0a6c3f75f4d1d45c4d693aba64c))
|
||||
- **episode-form:** show warning to set `memory_limit`, `upload_max_filesize` &
|
||||
`post_max_size`
|
||||
([3b3c218](https://code.podlibre.org/podlibre/castopod-host/commit/3b3c218b9c868e9f12c54d7670e69d84c9ee79c0)),
|
||||
closes [#5](https://code.podlibre.org/podlibre/castopod-host/issues/5)
|
||||
[#86](https://code.podlibre.org/podlibre/castopod-host/issues/86)
|
||||
([3b3c218](https://code.castopod.org/ad-aures/castopod/commit/3b3c218b9c868e9f12c54d7670e69d84c9ee79c0)),
|
||||
closes [#5](https://code.castopod.org/ad-aures/castopod/issues/5)
|
||||
[#86](https://code.castopod.org/ad-aures/castopod/issues/86)
|
||||
- **episodeCount:** add missing brackets to French language file
|
||||
([c1b4112](https://code.podlibre.org/podlibre/castopod-host/commit/c1b411265ad9b06e95a8b097ecf73445b88dcb45))
|
||||
([c1b4112](https://code.castopod.org/ad-aures/castopod/commit/c1b411265ad9b06e95a8b097ecf73445b88dcb45))
|
||||
- **episode:** replace guid's empty string value to null
|
||||
([441052a](https://code.podlibre.org/podlibre/castopod-host/commit/441052af8d99e6e317edefd1e58ad71799357088))
|
||||
([441052a](https://code.castopod.org/ad-aures/castopod/commit/441052af8d99e6e317edefd1e58ad71799357088))
|
||||
- **episodes-page:** handle defaultQuery being null when no podcast episodes
|
||||
([15183b7](https://code.podlibre.org/podlibre/castopod-host/commit/15183b7eab57dac007bcdfa8c3651239de1ae05a)),
|
||||
closes [#100](https://code.podlibre.org/podlibre/castopod-host/issues/100)
|
||||
([15183b7](https://code.castopod.org/ad-aures/castopod/commit/15183b7eab57dac007bcdfa8c3651239de1ae05a)),
|
||||
closes [#100](https://code.castopod.org/ad-aures/castopod/issues/100)
|
||||
- **episodes-table:** set descriptions to be not null
|
||||
([6774ec1](https://code.podlibre.org/podlibre/castopod-host/commit/6774ec10fa78527be6b7548ca1dc34ad0ada090c))
|
||||
([6774ec1](https://code.castopod.org/ad-aures/castopod/commit/6774ec10fa78527be6b7548ca1dc34ad0ada090c))
|
||||
- **episodes:** add publication status + set publication date to null when none
|
||||
has been set
|
||||
([d882981](https://code.podlibre.org/podlibre/castopod-host/commit/d882981b3a86c81921ce6b07d4cf61fc13983689)),
|
||||
closes [#70](https://code.podlibre.org/podlibre/castopod-host/issues/70)
|
||||
([d882981](https://code.castopod.org/ad-aures/castopod/commit/d882981b3a86c81921ce6b07d4cf61fc13983689)),
|
||||
closes [#70](https://code.castopod.org/ad-aures/castopod/issues/70)
|
||||
- escape generated feed tag values and remove new lines from public pages meta
|
||||
description
|
||||
([6238a43](https://code.podlibre.org/podlibre/castopod-host/commit/6238a43863210afe8988ad7cf251e6bfc6c8557c)),
|
||||
closes [#57](https://code.podlibre.org/podlibre/castopod-host/issues/57)
|
||||
[#46](https://code.podlibre.org/podlibre/castopod-host/issues/46)
|
||||
([6238a43](https://code.castopod.org/ad-aures/castopod/commit/6238a43863210afe8988ad7cf251e6bfc6c8557c)),
|
||||
closes [#57](https://code.castopod.org/ad-aures/castopod/issues/57)
|
||||
[#46](https://code.castopod.org/ad-aures/castopod/issues/46)
|
||||
- expire default query cache upon scheduled episode publication
|
||||
([b72e7c8](https://code.podlibre.org/podlibre/castopod-host/commit/b72e7c8691c887e41107baea0a4d50a39eaf8c8b)),
|
||||
closes [#81](https://code.podlibre.org/podlibre/castopod-host/issues/81)
|
||||
([b72e7c8](https://code.castopod.org/ad-aures/castopod/commit/b72e7c8691c887e41107baea0a4d50a39eaf8c8b)),
|
||||
closes [#81](https://code.castopod.org/ad-aures/castopod/issues/81)
|
||||
- fix layout bugs in admin and update translation files
|
||||
([a834171](https://code.podlibre.org/podlibre/castopod-host/commit/a83417180cf61cdfadc5509b0aaa2fdb66592be3)),
|
||||
closes [#40](https://code.podlibre.org/podlibre/castopod-host/issues/40)
|
||||
([a834171](https://code.castopod.org/ad-aures/castopod/commit/a83417180cf61cdfadc5509b0aaa2fdb66592be3)),
|
||||
closes [#40](https://code.castopod.org/ad-aures/castopod/issues/40)
|
||||
- **follow:** add missing helpers to Actor controller
|
||||
([ee53a73](https://code.podlibre.org/podlibre/castopod-host/commit/ee53a732dc12ebbf5706e14969749a12cfd9d559))
|
||||
([ee53a73](https://code.castopod.org/ad-aures/castopod/commit/ee53a732dc12ebbf5706e14969749a12cfd9d559))
|
||||
- handle HEAD requests on podcast_feed route
|
||||
([74b2640](https://code.podlibre.org/podlibre/castopod-host/commit/74b2640f2a25c4cd6fd8835fc492c2a6893d4950)),
|
||||
closes [#79](https://code.podlibre.org/podlibre/castopod-host/issues/79)
|
||||
([74b2640](https://code.castopod.org/ad-aures/castopod/commit/74b2640f2a25c4cd6fd8835fc492c2a6893d4950)),
|
||||
closes [#79](https://code.castopod.org/ad-aures/castopod/issues/79)
|
||||
- **images:** set default mimetype if none is specified when getting size info
|
||||
([6e4acc6](https://code.podlibre.org/podlibre/castopod-host/commit/6e4acc64ad256178cee7905402b48bafcd49f84c))
|
||||
([6e4acc6](https://code.castopod.org/ad-aures/castopod/commit/6e4acc64ad256178cee7905402b48bafcd49f84c))
|
||||
- **import-with-escaped-characters:** remove \CodeIgniter\HTTP\URI in
|
||||
download_file, closes
|
||||
[#103](https://code.podlibre.org/podlibre/castopod-host/issues/103)
|
||||
([35b5be0](https://code.podlibre.org/podlibre/castopod-host/commit/35b5be095ff54d27acec1610a846ec0cdbdf1d65))
|
||||
[#103](https://code.castopod.org/ad-aures/castopod/issues/103)
|
||||
([35b5be0](https://code.castopod.org/ad-aures/castopod/commit/35b5be095ff54d27acec1610a846ec0cdbdf1d65))
|
||||
- **import:** add extension when downloading file without + truncate slug if too
|
||||
long
|
||||
([c5f18bb](https://code.podlibre.org/podlibre/castopod-host/commit/c5f18bb6dc08a758ff735454bbe9cfa45a68c09b))
|
||||
([c5f18bb](https://code.castopod.org/ad-aures/castopod/commit/c5f18bb6dc08a758ff735454bbe9cfa45a68c09b))
|
||||
- **import:** add validation for handle field to prevent
|
||||
Router.invalidParameterType error
|
||||
([5bf7200](https://code.podlibre.org/podlibre/castopod-host/commit/5bf7200fb390f2447b29f24b495f24483cf7b205)),
|
||||
closes [#119](https://code.podlibre.org/podlibre/castopod-host/issues/119)
|
||||
([5bf7200](https://code.castopod.org/ad-aures/castopod/commit/5bf7200fb390f2447b29f24b495f24483cf7b205)),
|
||||
closes [#119](https://code.castopod.org/ad-aures/castopod/issues/119)
|
||||
- **import:** cast description's SimpleXMLElement to string
|
||||
([02d17be](https://code.podlibre.org/podlibre/castopod-host/commit/02d17be4ffe229fc6657207d31eba0543b5f1a4c))
|
||||
([02d17be](https://code.castopod.org/ad-aures/castopod/commit/02d17be4ffe229fc6657207d31eba0543b5f1a4c))
|
||||
- **import:** remove query string from files url
|
||||
([109c4aa](https://code.podlibre.org/podlibre/castopod-host/commit/109c4aa1afb72dd8b99c0302d74a7fef5a38638e))
|
||||
([109c4aa](https://code.castopod.org/ad-aures/castopod/commit/109c4aa1afb72dd8b99c0302d74a7fef5a38638e))
|
||||
- **import:** save media files during podcast import + set missing media fields
|
||||
([a9989d8](https://code.podlibre.org/podlibre/castopod-host/commit/a9989d841a634f8cf6c04df25f40bb1e7d4fcdcc))
|
||||
([a9989d8](https://code.castopod.org/ad-aures/castopod/commit/a9989d841a634f8cf6c04df25f40bb1e7d4fcdcc))
|
||||
- **import:** set episode and season numbers to null when not present in item
|
||||
tag
|
||||
([3211398](https://code.podlibre.org/podlibre/castopod-host/commit/3211398c78b1b28b76a46427ee07874bbf84a85d))
|
||||
([3211398](https://code.castopod.org/ad-aures/castopod/commit/3211398c78b1b28b76a46427ee07874bbf84a85d))
|
||||
- **import:** use <image><url> tag when no <itunes:image> is present
|
||||
([20e607a](https://code.podlibre.org/podlibre/castopod-host/commit/20e607afb755bc75056041738fa7cbf6723d754c))
|
||||
([20e607a](https://code.castopod.org/ad-aures/castopod/commit/20e607afb755bc75056041738fa7cbf6723d754c))
|
||||
- include missing variables on public ui's episode page and remote_actions
|
||||
([193b373](https://code.podlibre.org/podlibre/castopod-host/commit/193b373bc94a5270acae99b637aa84b6cb2dedfe))
|
||||
([193b373](https://code.castopod.org/ad-aures/castopod/commit/193b373bc94a5270acae99b637aa84b6cb2dedfe))
|
||||
- **install:** redirect manually to install wizard on first visit
|
||||
([2ceaaca](https://code.podlibre.org/podlibre/castopod-host/commit/2ceaaca44f1b82fc64d961e2fb4f4aaeade7e736))
|
||||
([2ceaaca](https://code.castopod.org/ad-aures/castopod/commit/2ceaaca44f1b82fc64d961e2fb4f4aaeade7e736))
|
||||
- **install:** redirect to host_url install route on instanceConfig validation
|
||||
error
|
||||
([99250b1](https://code.podlibre.org/podlibre/castopod-host/commit/99250b1868657c249a447399c7ebc69e00d43d1a))
|
||||
([99250b1](https://code.castopod.org/ad-aures/castopod/commit/99250b1868657c249a447399c7ebc69e00d43d1a))
|
||||
- **install:** redirect to input baseUrl after instance config
|
||||
([2426af7](https://code.podlibre.org/podlibre/castopod-host/commit/2426af7de8c9d426aaf534ff17b67f71c2e9f374)),
|
||||
closes [#53](https://code.podlibre.org/podlibre/castopod-host/issues/53)
|
||||
([2426af7](https://code.castopod.org/ad-aures/castopod/commit/2426af7de8c9d426aaf534ff17b67f71c2e9f374)),
|
||||
closes [#53](https://code.castopod.org/ad-aures/castopod/issues/53)
|
||||
- **interact-as:** set actor_id instead of podcast id upon login event
|
||||
([5dfade7](https://code.podlibre.org/podlibre/castopod-host/commit/5dfade7cf37f339c56d2e577c679b88a1b1d9336)),
|
||||
closes [#104](https://code.podlibre.org/podlibre/castopod-host/issues/104)
|
||||
([5dfade7](https://code.castopod.org/ad-aures/castopod/commit/5dfade7cf37f339c56d2e577c679b88a1b1d9336)),
|
||||
closes [#104](https://code.castopod.org/ad-aures/castopod/issues/104)
|
||||
- **json-ld:** add missing properties to PodcastSeries object
|
||||
([e97266c](https://code.podlibre.org/podlibre/castopod-host/commit/e97266c5d4883a10f68b3685ecc0d1942f54d658))
|
||||
([e97266c](https://code.castopod.org/ad-aures/castopod/commit/e97266c5d4883a10f68b3685ecc0d1942f54d658))
|
||||
- keep subtitle line breaks when parsing srt file to json
|
||||
([cfb3da6](https://code.podlibre.org/podlibre/castopod-host/commit/cfb3da6592f2de23cb1a7ac420f19fc77fa338aa))
|
||||
([cfb3da6](https://code.castopod.org/ad-aures/castopod/commit/cfb3da6592f2de23cb1a7ac420f19fc77fa338aa))
|
||||
- **layouts:** replace holy-grail layout with tailwind config + widen public
|
||||
podcast layout
|
||||
([be5a287](https://code.podlibre.org/podlibre/castopod-host/commit/be5a28787fdb180b64d9bf570120eff7072ab9aa))
|
||||
([be5a287](https://code.castopod.org/ad-aures/castopod/commit/be5a28787fdb180b64d9bf570120eff7072ab9aa))
|
||||
- **map:** update episode markers query to discard unpublished episodes
|
||||
([b3caac4](https://code.podlibre.org/podlibre/castopod-host/commit/b3caac45b12a23e4289d00133d2ad7915d084c44))
|
||||
([b3caac4](https://code.castopod.org/ad-aures/castopod/commit/b3caac45b12a23e4289d00133d2ad7915d084c44))
|
||||
- **md-editor:** build new markdown editor with lit +
|
||||
github/markdown-toolbar-element
|
||||
([9ec1cb9](https://code.podlibre.org/podlibre/castopod-host/commit/9ec1cb93da6f41124c48b8cf14ee6942e865bede)),
|
||||
closes [#93](https://code.podlibre.org/podlibre/castopod-host/issues/93)
|
||||
[#94](https://code.podlibre.org/podlibre/castopod-host/issues/94)
|
||||
[#120](https://code.podlibre.org/podlibre/castopod-host/issues/120)
|
||||
([9ec1cb9](https://code.castopod.org/ad-aures/castopod/commit/9ec1cb93da6f41124c48b8cf14ee6942e865bede)),
|
||||
closes [#93](https://code.castopod.org/ad-aures/castopod/issues/93)
|
||||
[#94](https://code.castopod.org/ad-aures/castopod/issues/94)
|
||||
[#120](https://code.castopod.org/ad-aures/castopod/issues/120)
|
||||
- minor corrections
|
||||
([13be386](https://code.podlibre.org/podlibre/castopod-host/commit/13be386842e94d9def1f7de4720931d8f6935171))
|
||||
([13be386](https://code.castopod.org/ad-aures/castopod/commit/13be386842e94d9def1f7de4720931d8f6935171))
|
||||
- move analytics to helper
|
||||
([d311917](https://code.podlibre.org/podlibre/castopod-host/commit/d31191732e41aa106234b5ebe6e54ee02f0ce603))
|
||||
([d311917](https://code.castopod.org/ad-aures/castopod/commit/d31191732e41aa106234b5ebe6e54ee02f0ce603))
|
||||
- **multiselect:** add missing class names in choices options for purge to work
|
||||
properly
|
||||
([719538d](https://code.podlibre.org/podlibre/castopod-host/commit/719538d0ccb28af3c3c5e1a4b6468d4b772fe819))
|
||||
([719538d](https://code.castopod.org/ad-aures/castopod/commit/719538d0ccb28af3c3c5e1a4b6468d4b772fe819))
|
||||
- **open-graph:** replace non existant episode description to podcast
|
||||
description in podcast page
|
||||
([b02584e](https://code.podlibre.org/podlibre/castopod-host/commit/b02584ee609af1ad1b5680cc28208d113eb0410b))
|
||||
([b02584e](https://code.castopod.org/ad-aures/castopod/commit/b02584ee609af1ad1b5680cc28208d113eb0410b))
|
||||
- **package.json:** update destination of postcss generation scripts
|
||||
([21413f8](https://code.podlibre.org/podlibre/castopod-host/commit/21413f8af3b8a0ac01d8c6f15bcd7a63e524e964))
|
||||
([21413f8](https://code.castopod.org/ad-aures/castopod/commit/21413f8af3b8a0ac01d8c6f15bcd7a63e524e964))
|
||||
- **pages:** add locale to page cache
|
||||
([8f999ce](https://code.podlibre.org/podlibre/castopod-host/commit/8f999ce2f7ee1416c30cf58c84f67b3d11b3f142))
|
||||
([8f999ce](https://code.castopod.org/ad-aures/castopod/commit/8f999ce2f7ee1416c30cf58c84f67b3d11b3f142))
|
||||
- **partner:** set correct image URL
|
||||
([61554be](https://code.podlibre.org/podlibre/castopod-host/commit/61554be12a64d59ab99fab810b1b05632b408f3a))
|
||||
([61554be](https://code.castopod.org/ad-aures/castopod/commit/61554be12a64d59ab99fab810b1b05632b408f3a))
|
||||
- pass timezone to relative time component to show the localized time in the UI
|
||||
([b9db936](https://code.podlibre.org/podlibre/castopod-host/commit/b9db936461d4cb914958bb3256bb910bbd7ba815))
|
||||
([b9db936](https://code.castopod.org/ad-aures/castopod/commit/b9db936461d4cb914958bb3256bb910bbd7ba815))
|
||||
- **persons:** prevent overflow of persons list by adding horizontal scroll
|
||||
([9e8995d](https://code.podlibre.org/podlibre/castopod-host/commit/9e8995dc6e039032cc65f87895cf770f99e8b244))
|
||||
([9e8995d](https://code.castopod.org/ad-aures/castopod/commit/9e8995dc6e039032cc65f87895cf770f99e8b244))
|
||||
- **persons:** set person picture as optional for better ux
|
||||
([7fdea63](https://code.podlibre.org/podlibre/castopod-host/commit/7fdea63de7e572810082c84fff3013af580df58b)),
|
||||
closes [#125](https://code.podlibre.org/podlibre/castopod-host/issues/125)
|
||||
([7fdea63](https://code.castopod.org/ad-aures/castopod/commit/7fdea63de7e572810082c84fff3013af580df58b)),
|
||||
closes [#125](https://code.castopod.org/ad-aures/castopod/issues/125)
|
||||
- **platforms:** display platform link only when visible is toggled on
|
||||
([6e503c8](https://code.podlibre.org/podlibre/castopod-host/commit/6e503c8d6182987e48892370623183f871bbd1c1)),
|
||||
closes [#39](https://code.podlibre.org/podlibre/castopod-host/issues/39)
|
||||
([6e503c8](https://code.castopod.org/ad-aures/castopod/commit/6e503c8d6182987e48892370623183f871bbd1c1)),
|
||||
closes [#39](https://code.castopod.org/ad-aures/castopod/issues/39)
|
||||
- **podcast-import:** move guid attribute declaration for Episode entity to
|
||||
include slug data
|
||||
([5d02ae3](https://code.podlibre.org/podlibre/castopod-host/commit/5d02ae39908a9d743627135b372bf981134c4328))
|
||||
([5d02ae3](https://code.castopod.org/ad-aures/castopod/commit/5d02ae39908a9d743627135b372bf981134c4328))
|
||||
- **pwa:** add scope to webmanifests to allow installing an app per podcast
|
||||
([74c683e](https://code.podlibre.org/podlibre/castopod-host/commit/74c683eb44398a84443ec17903c3e002bb5ea9b9))
|
||||
([74c683e](https://code.castopod.org/ad-aures/castopod/commit/74c683eb44398a84443ec17903c3e002bb5ea9b9))
|
||||
- **pwa:** set app display as standalone in the webmanifests
|
||||
([7aa37d2](https://code.podlibre.org/podlibre/castopod-host/commit/7aa37d24ac13a1ee160c01a56b43621d7efcfbbc))
|
||||
([7aa37d2](https://code.castopod.org/ad-aures/castopod/commit/7aa37d24ac13a1ee160c01a56b43621d7efcfbbc))
|
||||
- re-order graph values
|
||||
([35f633b](https://code.podlibre.org/podlibre/castopod-host/commit/35f633b4c71c087d1ddc9bba9e9bbe18de09204f))
|
||||
([35f633b](https://code.castopod.org/ad-aures/castopod/commit/35f633b4c71c087d1ddc9bba9e9bbe18de09204f))
|
||||
- redirect to non cached views when authenticated in public views
|
||||
([482b47b](https://code.podlibre.org/podlibre/castopod-host/commit/482b47ba6bdab7f27fc5704a559567228e07cd14))
|
||||
([482b47b](https://code.castopod.org/ad-aures/castopod/commit/482b47ba6bdab7f27fc5704a559567228e07cd14))
|
||||
- **release:** add missing version number to castopod-host package
|
||||
([8f3e9d9](https://code.podlibre.org/podlibre/castopod-host/commit/8f3e9d90c14545d3f84d4469b26a53db4554b4dc))
|
||||
([8f3e9d9](https://code.castopod.org/ad-aures/castopod/commit/8f3e9d90c14545d3f84d4469b26a53db4554b4dc))
|
||||
- remove defer from js script declaration as it is a module
|
||||
([18ae557](https://code.podlibre.org/podlibre/castopod-host/commit/18ae557e97f1cef775cd1e75fb1fedee7f1c0cc9))
|
||||
([18ae557](https://code.castopod.org/ad-aures/castopod/commit/18ae557e97f1cef775cd1e75fb1fedee7f1c0cc9))
|
||||
- remove fixed size from podcast sidebar + rearrange account info + space out
|
||||
import radio inputs
|
||||
([776eec6](https://code.podlibre.org/podlibre/castopod-host/commit/776eec6f0d533d6c92ebec16f7a9dbfcde1f41f4))
|
||||
([776eec6](https://code.castopod.org/ad-aures/castopod/commit/776eec6f0d533d6c92ebec16f7a9dbfcde1f41f4))
|
||||
- remove required for other_categories field and add podcast_id to latest
|
||||
podcasts query
|
||||
([5417be0](https://code.podlibre.org/podlibre/castopod-host/commit/5417be0049288489a19c7b575aa77bd1e2bc0243))
|
||||
([5417be0](https://code.castopod.org/ad-aures/castopod/commit/5417be0049288489a19c7b575aa77bd1e2bc0243))
|
||||
- remove required property to persons picture
|
||||
([c546be3](https://code.podlibre.org/podlibre/castopod-host/commit/c546be385b243014243ae93356006cd126d2f00d)),
|
||||
closes [#125](https://code.podlibre.org/podlibre/castopod-host/issues/125)
|
||||
([c546be3](https://code.castopod.org/ad-aures/castopod/commit/c546be385b243014243ae93356006cd126d2f00d)),
|
||||
closes [#125](https://code.castopod.org/ad-aures/castopod/issues/125)
|
||||
- rename field status to task_status to get scheduled activities
|
||||
([4ff82a5](https://code.podlibre.org/podlibre/castopod-host/commit/4ff82a5f0a38dbbc9e272fca7df70ea5a190e334))
|
||||
([4ff82a5](https://code.castopod.org/ad-aures/castopod/commit/4ff82a5f0a38dbbc9e272fca7df70ea5a190e334))
|
||||
- rename issue_templates labels
|
||||
([9f00305](https://code.podlibre.org/podlibre/castopod-host/commit/9f00305844e5a168e89d727fe29892b4ad5e48d6))
|
||||
([9f00305](https://code.castopod.org/ad-aures/castopod/commit/9f00305844e5a168e89d727fe29892b4ad5e48d6))
|
||||
- rename MyAccount controller file
|
||||
([e109df3](https://code.podlibre.org/podlibre/castopod-host/commit/e109df3004a3a98d72de39532e062fff9917f50f)),
|
||||
closes [#60](https://code.podlibre.org/podlibre/castopod-host/issues/60)
|
||||
([e109df3](https://code.castopod.org/ad-aures/castopod/commit/e109df3004a3a98d72de39532e062fff9917f50f)),
|
||||
closes [#60](https://code.castopod.org/ad-aures/castopod/issues/60)
|
||||
- rename podcast name to podcast handle to clarify field usage
|
||||
([9dd4c77](https://code.podlibre.org/podlibre/castopod-host/commit/9dd4c7741eb1b7cb5fc214ff674697f3aa986df0)),
|
||||
closes [#126](https://code.podlibre.org/podlibre/castopod-host/issues/126)
|
||||
([9dd4c77](https://code.castopod.org/ad-aures/castopod/commit/9dd4c7741eb1b7cb5fc214ff674697f3aa986df0)),
|
||||
closes [#126](https://code.castopod.org/ad-aures/castopod/issues/126)
|
||||
- reorder fields as composite primary keys for analytics tables
|
||||
([9660aa9](https://code.podlibre.org/podlibre/castopod-host/commit/9660aa97c8ffd4fe61f3a388d52b9ac5dd8e1d63))
|
||||
([9660aa9](https://code.castopod.org/ad-aures/castopod/commit/9660aa97c8ffd4fe61f3a388d52b9ac5dd8e1d63))
|
||||
- replace getWebEnclosureUrl with getEnclosureWebUrl
|
||||
([8122cea](https://code.podlibre.org/podlibre/castopod-host/commit/8122ceaf8a70050f14b3078f28b024e7d7cdb9ac))
|
||||
([8122cea](https://code.castopod.org/ad-aures/castopod/commit/8122ceaf8a70050f14b3078f28b024e7d7cdb9ac))
|
||||
- replace hardcoded style links with vite service + set default value for remote
|
||||
transcript url
|
||||
([3f2e056](https://code.podlibre.org/podlibre/castopod-host/commit/3f2e05608e43d47bbb518a9acfaf56ec3eefafb4)),
|
||||
closes [#149](https://code.podlibre.org/podlibre/castopod-host/issues/149)
|
||||
[#150](https://code.podlibre.org/podlibre/castopod-host/issues/150)
|
||||
([3f2e056](https://code.castopod.org/ad-aures/castopod/commit/3f2e05608e43d47bbb518a9acfaf56ec3eefafb4)),
|
||||
closes [#149](https://code.castopod.org/ad-aures/castopod/issues/149)
|
||||
[#150](https://code.castopod.org/ad-aures/castopod/issues/150)
|
||||
- replace website key for webpages in breadcrumb translate file
|
||||
([50e32ff](https://code.podlibre.org/podlibre/castopod-host/commit/50e32ff75636c1d4c5d945a267e884cb26ad7191))
|
||||
([50e32ff](https://code.castopod.org/ad-aures/castopod/commit/50e32ff75636c1d4c5d945a267e884cb26ad7191))
|
||||
- rewrite regenerate image function to use saveSizes method from Image entity
|
||||
([3889912](https://code.podlibre.org/podlibre/castopod-host/commit/38899124ec27e94a8c798bc2db528f9f785eec20))
|
||||
([3889912](https://code.castopod.org/ad-aures/castopod/commit/38899124ec27e94a8c798bc2db528f9f785eec20))
|
||||
- **rss-import:** add Castopod user-agent, handle redirects for downloaded
|
||||
files, add Content namespace
|
||||
([214243b](https://code.podlibre.org/podlibre/castopod-host/commit/214243b3fec4937e45ef1ceaba1149004cdf3b44))
|
||||
([214243b](https://code.castopod.org/ad-aures/castopod/commit/214243b3fec4937e45ef1ceaba1149004cdf3b44))
|
||||
- **rss:** cast number type values to string in rss_helper
|
||||
([7180ae9](https://code.podlibre.org/podlibre/castopod-host/commit/7180ae9ec700930b69c04ed91f8eceea16ad77ce)),
|
||||
closes [#148](https://code.podlibre.org/podlibre/castopod-host/issues/148)
|
||||
([7180ae9](https://code.castopod.org/ad-aures/castopod/commit/7180ae9ec700930b69c04ed91f8eceea16ad77ce)),
|
||||
closes [#148](https://code.castopod.org/ad-aures/castopod/issues/148)
|
||||
- **rss:** do not escape podcast and episode titles in the xml
|
||||
([0dd3b7e](https://code.podlibre.org/podlibre/castopod-host/commit/0dd3b7e0bf00d5a9eb80c93cba1efcada59ec3c1)),
|
||||
closes [#138](https://code.podlibre.org/podlibre/castopod-host/issues/138)
|
||||
[#71](https://code.podlibre.org/podlibre/castopod-host/issues/71)
|
||||
([0dd3b7e](https://code.castopod.org/ad-aures/castopod/commit/0dd3b7e0bf00d5a9eb80c93cba1efcada59ec3c1)),
|
||||
closes [#138](https://code.castopod.org/ad-aures/castopod/issues/138)
|
||||
[#71](https://code.castopod.org/ad-aures/castopod/issues/71)
|
||||
- **rss:** set ❬itunes:author❭ tag to owner_name if publisher not specified
|
||||
([2271c14](https://code.podlibre.org/podlibre/castopod-host/commit/2271c1445b1ded12bc53b5d23b5e59d12b17c71a)),
|
||||
closes [#96](https://code.podlibre.org/podlibre/castopod-host/issues/96)
|
||||
([2271c14](https://code.castopod.org/ad-aures/castopod/commit/2271c1445b1ded12bc53b5d23b5e59d12b17c71a)),
|
||||
closes [#96](https://code.castopod.org/ad-aures/castopod/issues/96)
|
||||
- **rss:** use originalPath instead of originalMediaPath in Image library
|
||||
([b4012b7](https://code.podlibre.org/podlibre/castopod-host/commit/b4012b7d2ed6b34b69ad767570dd33f0dc7db920))
|
||||
([b4012b7](https://code.castopod.org/ad-aures/castopod/commit/b4012b7d2ed6b34b69ad767570dd33f0dc7db920))
|
||||
- save transcript and chapters files to podcasts folder
|
||||
([63f49c7](https://code.podlibre.org/podlibre/castopod-host/commit/63f49c719f672b615c5a8893d3868dffcd332e47))
|
||||
([63f49c7](https://code.castopod.org/ad-aures/castopod/commit/63f49c719f672b615c5a8893d3868dffcd332e47))
|
||||
- set cache expiration to next note publish to show note on publication date
|
||||
([0a66de3](https://code.podlibre.org/podlibre/castopod-host/commit/0a66de3e6c17d4ac94ee8e13bd00ceaf64b1303e))
|
||||
([0a66de3](https://code.castopod.org/ad-aures/castopod/commit/0a66de3e6c17d4ac94ee8e13bd00ceaf64b1303e))
|
||||
- set episode description footer to null when empty value
|
||||
([3a7d97d](https://code.podlibre.org/podlibre/castopod-host/commit/3a7d97d660046d80698611311ff3708110d2af82))
|
||||
([3a7d97d](https://code.castopod.org/ad-aures/castopod/commit/3a7d97d660046d80698611311ff3708110d2af82))
|
||||
- set episode duration translation to hardcoded english
|
||||
([c39efc9](https://code.podlibre.org/podlibre/castopod-host/commit/c39efc9489180662edcebd142d4476c0617ea97f)),
|
||||
closes [#64](https://code.podlibre.org/podlibre/castopod-host/issues/64)
|
||||
([c39efc9](https://code.castopod.org/ad-aures/castopod/commit/c39efc9489180662edcebd142d4476c0617ea97f)),
|
||||
closes [#64](https://code.castopod.org/ad-aures/castopod/issues/64)
|
||||
- set episode guid upon episode creation
|
||||
([ad8b153](https://code.podlibre.org/podlibre/castopod-host/commit/ad8b153f2a3b1a3b1751bf63785c4950e1516e6b)),
|
||||
closes [#48](https://code.podlibre.org/podlibre/castopod-host/issues/48)
|
||||
([ad8b153](https://code.castopod.org/ad-aures/castopod/commit/ad8b153f2a3b1a3b1751bf63785c4950e1516e6b)),
|
||||
closes [#48](https://code.castopod.org/ad-aures/castopod/issues/48)
|
||||
- set episode numbers during import + remove all custom form_helpers + minor ui
|
||||
issues
|
||||
([99a3b8d](https://code.podlibre.org/podlibre/castopod-host/commit/99a3b8d33e00482da50dd62bdaa9215a351a56e4))
|
||||
([99a3b8d](https://code.castopod.org/ad-aures/castopod/commit/99a3b8d33e00482da50dd62bdaa9215a351a56e4))
|
||||
- set localized slug_field key as string in french language
|
||||
([17fb29b](https://code.podlibre.org/podlibre/castopod-host/commit/17fb29b20993b7deee4e252e0e3a4a2459ee0d98))
|
||||
([17fb29b](https://code.castopod.org/ad-aures/castopod/commit/17fb29b20993b7deee4e252e0e3a4a2459ee0d98))
|
||||
- set location to null when getting empty string
|
||||
([71b1b5f](https://code.podlibre.org/podlibre/castopod-host/commit/71b1b5f775af475b1dc78328330e277f565e41b6))
|
||||
([71b1b5f](https://code.castopod.org/ad-aures/castopod/commit/71b1b5f775af475b1dc78328330e277f565e41b6))
|
||||
- **settings:** add .jpg extension to site-icon file input to display all jpeg
|
||||
images
|
||||
([f611a16](https://code.podlibre.org/podlibre/castopod-host/commit/f611a16cd0c1a389e1c5a287eaec9d2a927a4bb6))
|
||||
([f611a16](https://code.castopod.org/ad-aures/castopod/commit/f611a16cd0c1a389e1c5a287eaec9d2a927a4bb6))
|
||||
- sort episodic podcasts by season
|
||||
([d7b6794](https://code.podlibre.org/podlibre/castopod-host/commit/d7b6794f68f9a01fd606a407c6eb4c12d15dee74))
|
||||
([d7b6794](https://code.castopod.org/ad-aures/castopod/commit/d7b6794f68f9a01fd606a407c6eb4c12d15dee74))
|
||||
- **themes:** update themes stylesheet route and remove css extension
|
||||
([e4e7e00](https://code.podlibre.org/podlibre/castopod-host/commit/e4e7e0005e931967dd6162588f1c5913dbf4603e))
|
||||
([e4e7e00](https://code.castopod.org/ad-aures/castopod/commit/e4e7e0005e931967dd6162588f1c5913dbf4603e))
|
||||
- **types:** update fake seeders types + fix bugs
|
||||
([76a4bf3](https://code.podlibre.org/podlibre/castopod-host/commit/76a4bf344160df679db29e236e7df7822970fb60))
|
||||
([76a4bf3](https://code.castopod.org/ad-aures/castopod/commit/76a4bf344160df679db29e236e7df7822970fb60))
|
||||
- unpublish episode before deleting it + add validation step before deletion
|
||||
([f75bd76](https://code.podlibre.org/podlibre/castopod-host/commit/f75bd76458eeb01a2d37912695e33f77d03b7a69)),
|
||||
closes [#112](https://code.podlibre.org/podlibre/castopod-host/issues/112)
|
||||
[#55](https://code.podlibre.org/podlibre/castopod-host/issues/55)
|
||||
([f75bd76](https://code.castopod.org/ad-aures/castopod/commit/f75bd76458eeb01a2d37912695e33f77d03b7a69)),
|
||||
closes [#112](https://code.castopod.org/ad-aures/castopod/issues/112)
|
||||
[#55](https://code.castopod.org/ad-aures/castopod/issues/55)
|
||||
- update .htaccess for shared hosting config
|
||||
([2379826](https://code.podlibre.org/podlibre/castopod-host/commit/2379826352e2f4b5060910bf9f29268610102f2e))
|
||||
([2379826](https://code.castopod.org/ad-aures/castopod/commit/2379826352e2f4b5060910bf9f29268610102f2e))
|
||||
- update broken contributor dropdown fields
|
||||
([e5b7515](https://code.podlibre.org/podlibre/castopod-host/commit/e5b75150234bd7f19e01def93425d3bda7379dd3))
|
||||
([e5b7515](https://code.castopod.org/ad-aures/castopod/commit/e5b75150234bd7f19e01def93425d3bda7379dd3))
|
||||
- update condition in AnalyticsTrait
|
||||
([fbc0967](https://code.podlibre.org/podlibre/castopod-host/commit/fbc0967caa81630d514ddb1b93b0834ebb4d913b))
|
||||
([fbc0967](https://code.castopod.org/ad-aures/castopod/commit/fbc0967caa81630d514ddb1b93b0834ebb4d913b))
|
||||
- update condition in home controller to redirect to install page
|
||||
([33f1b91](https://code.podlibre.org/podlibre/castopod-host/commit/33f1b91d55dd0652c979d50fc85879dbf88a4a42))
|
||||
([33f1b91](https://code.castopod.org/ad-aures/castopod/commit/33f1b91d55dd0652c979d50fc85879dbf88a4a42))
|
||||
- update conditions when checking for empty max_episodes and season_number
|
||||
([fbad0b5](https://code.podlibre.org/podlibre/castopod-host/commit/fbad0b59f68c65eba2fdcd5a8d3b312b622e9a45))
|
||||
([fbad0b5](https://code.castopod.org/ad-aures/castopod/commit/fbad0b59f68c65eba2fdcd5a8d3b312b622e9a45))
|
||||
- update iso-369 language table seeder
|
||||
([0c90db4](https://code.podlibre.org/podlibre/castopod-host/commit/0c90db44c40de5af5b0b32b54489bda9424d9ef6))
|
||||
([0c90db4](https://code.castopod.org/ad-aures/castopod/commit/0c90db44c40de5af5b0b32b54489bda9424d9ef6))
|
||||
- update MarkdownEditor component + restyle Button and other components
|
||||
([b05d177](https://code.podlibre.org/podlibre/castopod-host/commit/b05d177f1b7f44fef043ac5eb41f07133a2cf52d))
|
||||
([b05d177](https://code.castopod.org/ad-aures/castopod/commit/b05d177f1b7f44fef043ac5eb41f07133a2cf52d))
|
||||
- update purgecss content path for php helper files
|
||||
([eb70bb4](https://code.podlibre.org/podlibre/castopod-host/commit/eb70bb4f7078ff347aeb8f5dcc7896311d289466)),
|
||||
closes [#59](https://code.podlibre.org/podlibre/castopod-host/issues/59)
|
||||
([eb70bb4](https://code.castopod.org/ad-aures/castopod/commit/eb70bb4f7078ff347aeb8f5dcc7896311d289466)),
|
||||
closes [#59](https://code.castopod.org/ad-aures/castopod/issues/59)
|
||||
- update translations for settings' tasks to include what they should be used
|
||||
for
|
||||
([06b1a8b](https://code.podlibre.org/podlibre/castopod-host/commit/06b1a8b29b6ce5d81c5570d250bdac4e0c9ee5ca))
|
||||
([06b1a8b](https://code.castopod.org/ad-aures/castopod/commit/06b1a8b29b6ce5d81c5570d250bdac4e0c9ee5ca))
|
||||
- use slash instead of backslash to call layout
|
||||
([a80adb2](https://code.podlibre.org/podlibre/castopod-host/commit/a80adb22958fc0a38374cbce2d950a0042e699eb))
|
||||
([a80adb2](https://code.castopod.org/ad-aures/castopod/commit/a80adb22958fc0a38374cbce2d950a0042e699eb))
|
||||
- **ux:** allow for empty message upon episode publication and warn user on
|
||||
submit
|
||||
([33d01b8](https://code.podlibre.org/podlibre/castopod-host/commit/33d01b8d4fd6ebf24e9f011aa705c456c846956c)),
|
||||
closes [#129](https://code.podlibre.org/podlibre/castopod-host/issues/129)
|
||||
([33d01b8](https://code.castopod.org/ad-aures/castopod/commit/33d01b8d4fd6ebf24e9f011aa705c456c846956c)),
|
||||
closes [#129](https://code.castopod.org/ad-aures/castopod/issues/129)
|
||||
- **ux:** redirect user to install page on database error in home page
|
||||
([9017e30](https://code.podlibre.org/podlibre/castopod-host/commit/9017e30bf41bed8c2be65091bbc5fb1e63aef87a))
|
||||
([9017e30](https://code.castopod.org/ad-aures/castopod/commit/9017e30bf41bed8c2be65091bbc5fb1e63aef87a))
|
||||
- **video-clips:** check if created video exists before recreating it and
|
||||
failing
|
||||
([dff1208](https://code.podlibre.org/podlibre/castopod-host/commit/dff12087251b2b89e195604202094b5ddd9a0936))
|
||||
([dff1208](https://code.castopod.org/ad-aures/castopod/commit/dff12087251b2b89e195604202094b5ddd9a0936))
|
||||
- **video-clips:** clear video clip cache after process has finished
|
||||
([3ae6232](https://code.podlibre.org/podlibre/castopod-host/commit/3ae62325856f6ff331a5d9ed901b9fa097ca7055))
|
||||
([3ae6232](https://code.castopod.org/ad-aures/castopod/commit/3ae62325856f6ff331a5d9ed901b9fa097ca7055))
|
||||
- **video-clips:** create unique temporary files for resources to be deleted
|
||||
after generation
|
||||
([7f7c878](https://code.podlibre.org/podlibre/castopod-host/commit/7f7c878cb6ecf7b4a967b2af87da82bc6593081e))
|
||||
([7f7c878](https://code.castopod.org/ad-aures/castopod/commit/7f7c878cb6ecf7b4a967b2af87da82bc6593081e))
|
||||
- **video-clips:** tweak portrait parameters to have subtitles display without
|
||||
overflowing
|
||||
([2385b1a](https://code.podlibre.org/podlibre/castopod-host/commit/2385b1a2926d1344569836e18cb30adb4c604664))
|
||||
([2385b1a](https://code.castopod.org/ad-aures/castopod/commit/2385b1a2926d1344569836e18cb30adb4c604664))
|
||||
- **xml-editor:** escape xml editor's content + restyle form sections to prevent
|
||||
overflowing
|
||||
([588590b](https://code.podlibre.org/podlibre/castopod-host/commit/588590bd2c0346e2465ff8f1930580d76a3bf068))
|
||||
([588590b](https://code.castopod.org/ad-aures/castopod/commit/588590bd2c0346e2465ff8f1930580d76a3bf068))
|
||||
|
||||
### Features
|
||||
|
||||
- **activitypub:** add Podcast actor and PodcastEpisode object with comments
|
||||
([9e1e5d2](https://code.podlibre.org/podlibre/castopod-host/commit/9e1e5d2e862d6a3345d11ca7f96b955c76bfa013))
|
||||
([9e1e5d2](https://code.castopod.org/ad-aures/castopod/commit/9e1e5d2e862d6a3345d11ca7f96b955c76bfa013))
|
||||
- add alternate rss feed link tag to podcast page head
|
||||
([a973c09](https://code.podlibre.org/podlibre/castopod-host/commit/a973c097d54a3d0186c4079b9d4d3e81aae38505)),
|
||||
closes [#35](https://code.podlibre.org/podlibre/castopod-host/issues/35)
|
||||
([a973c09](https://code.castopod.org/ad-aures/castopod/commit/a973c097d54a3d0186c4079b9d4d3e81aae38505)),
|
||||
closes [#35](https://code.castopod.org/ad-aures/castopod/issues/35)
|
||||
- add analytics and unknown useragents
|
||||
([ec92e65](https://code.podlibre.org/podlibre/castopod-host/commit/ec92e65aa42e09b1df04600b52a0c679dfc494bb))
|
||||
([ec92e65](https://code.castopod.org/ad-aures/castopod/commit/ec92e65aa42e09b1df04600b52a0c679dfc494bb))
|
||||
- add audio-clipper toolbar + add video-clip-previewer
|
||||
([0255753](https://code.podlibre.org/podlibre/castopod-host/commit/02557539e6eb48fc23ee2ee3b0c75aee3310965b))
|
||||
([0255753](https://code.castopod.org/ad-aures/castopod/commit/02557539e6eb48fc23ee2ee3b0c75aee3310965b))
|
||||
- add audio-clipper webcomponent (wip)
|
||||
([21d4251](https://code.podlibre.org/podlibre/castopod-host/commit/21d4251b9bcd5acb0f8a1761bc4edc34a3dbc228))
|
||||
([21d4251](https://code.castopod.org/ad-aures/castopod/commit/21d4251b9bcd5acb0f8a1761bc4edc34a3dbc228))
|
||||
- add basic stats on podcast about page
|
||||
([1670558](https://code.podlibre.org/podlibre/castopod-host/commit/1670558473dba47219d470ff21d6224db6ab42ba))
|
||||
([1670558](https://code.castopod.org/ad-aures/castopod/commit/1670558473dba47219d470ff21d6224db6ab42ba))
|
||||
- add breadcrumb in admin area
|
||||
([7fb1de2](https://code.podlibre.org/podlibre/castopod-host/commit/7fb1de2cf3c97c4cd7afe3bd71bbe66041786ecd)),
|
||||
closes [#17](https://code.podlibre.org/podlibre/castopod-host/issues/17)
|
||||
([7fb1de2](https://code.castopod.org/ad-aures/castopod/commit/7fb1de2cf3c97c4cd7afe3bd71bbe66041786ecd)),
|
||||
closes [#17](https://code.castopod.org/ad-aures/castopod/issues/17)
|
||||
- add cache to ActivityPub sql queries + cache activity and note pages
|
||||
([2d297f4](https://code.podlibre.org/podlibre/castopod-host/commit/2d297f45b3d7ef6e8711875a0b9b908e878115fa))
|
||||
([2d297f4](https://code.castopod.org/ad-aures/castopod/commit/2d297f45b3d7ef6e8711875a0b9b908e878115fa))
|
||||
- add CDN url
|
||||
([972bcbf](https://code.podlibre.org/podlibre/castopod-host/commit/972bcbf65ee119b8641ca3c4e5c0e8cf9ca8dd4f)),
|
||||
closes [#37](https://code.podlibre.org/podlibre/castopod-host/issues/37)
|
||||
([972bcbf](https://code.castopod.org/ad-aures/castopod/commit/972bcbf65ee119b8641ca3c4e5c0e8cf9ca8dd4f)),
|
||||
closes [#37](https://code.castopod.org/ad-aures/castopod/issues/37)
|
||||
- add codemirror to display xml editor for custom rss field
|
||||
([f15f262](https://code.podlibre.org/podlibre/castopod-host/commit/f15f26240cd5311fa9d07779f364b6639a501dec))
|
||||
([f15f262](https://code.castopod.org/ad-aures/castopod/commit/f15f26240cd5311fa9d07779f364b6639a501dec))
|
||||
- add cumulative listening time charts
|
||||
([588b4d2](https://code.podlibre.org/podlibre/castopod-host/commit/588b4d28da00bc12d02126e23181690f54d81716))
|
||||
([588b4d2](https://code.castopod.org/ad-aures/castopod/commit/588b4d28da00bc12d02126e23181690f54d81716))
|
||||
- add DropdownMenu component + remove global audio player in admin
|
||||
([abb7fba](https://code.podlibre.org/podlibre/castopod-host/commit/abb7fbac276d77b7d31a0aeba75d464f3ba3ad46))
|
||||
([abb7fba](https://code.castopod.org/ad-aures/castopod/commit/abb7fbac276d77b7d31a0aeba75d464f3ba3ad46))
|
||||
- add episode_numbering() component helper to display episode and season numbers
|
||||
([3f4a6bd](https://code.podlibre.org/podlibre/castopod-host/commit/3f4a6bd0b9f870f16107a41b102b6bf734868198))
|
||||
([3f4a6bd](https://code.castopod.org/ad-aures/castopod/commit/3f4a6bd0b9f870f16107a41b102b6bf734868198))
|
||||
- add french translation
|
||||
([196920d](https://code.podlibre.org/podlibre/castopod-host/commit/196920d62f1810b4c35f800d17d7f93627319091))
|
||||
([196920d](https://code.castopod.org/ad-aures/castopod/commit/196920d62f1810b4c35f800d17d7f93627319091))
|
||||
- add heading component + update ecs rules to fix views
|
||||
([23bdc6f](https://code.podlibre.org/podlibre/castopod-host/commit/23bdc6f8e36b7e8dfbe32755a54dea59ad913432))
|
||||
([23bdc6f](https://code.castopod.org/ad-aures/castopod/commit/23bdc6f8e36b7e8dfbe32755a54dea59ad913432))
|
||||
- add housekeeping task to run after migrations
|
||||
([89dee41](https://code.podlibre.org/podlibre/castopod-host/commit/89dee41d583e57251ea9315402a757f03571d7ad))
|
||||
([89dee41](https://code.castopod.org/ad-aures/castopod/commit/89dee41d583e57251ea9315402a757f03571d7ad))
|
||||
- add install wizard form to bootstrap database and create the first superadmin
|
||||
user
|
||||
([cba871c](https://code.podlibre.org/podlibre/castopod-host/commit/cba871c5df9f7120c44d9952456ebbd0d220669e)),
|
||||
closes [#2](https://code.podlibre.org/podlibre/castopod-host/issues/2)
|
||||
([cba871c](https://code.castopod.org/ad-aures/castopod/commit/cba871c5df9f7120c44d9952456ebbd0d220669e)),
|
||||
closes [#2](https://code.castopod.org/ad-aures/castopod/issues/2)
|
||||
- add ISO 3166 country codes
|
||||
([97cd94b](https://code.podlibre.org/podlibre/castopod-host/commit/97cd94b47494b66faf43fbbe0748872da80020a4))
|
||||
([97cd94b](https://code.castopod.org/ad-aures/castopod/commit/97cd94b47494b66faf43fbbe0748872da80020a4))
|
||||
- add js audio player on podcast, admin and embeddable player pages + fix admon
|
||||
episodes ux
|
||||
([0e14eb4](https://code.podlibre.org/podlibre/castopod-host/commit/0e14eb4d3f526b0fd256a6144f3fbfc3fe52a357)),
|
||||
closes [#131](https://code.podlibre.org/podlibre/castopod-host/issues/131)
|
||||
([0e14eb4](https://code.castopod.org/ad-aures/castopod/commit/0e14eb4d3f526b0fd256a6144f3fbfc3fe52a357)),
|
||||
closes [#131](https://code.castopod.org/ad-aures/castopod/issues/131)
|
||||
- add lock podcast according to the Podcastindex podcast-namespace to prevent
|
||||
unauthozized import
|
||||
([72b3012](https://code.podlibre.org/podlibre/castopod-host/commit/72b301272e0b70ded3e2b237391909e3f152ad0b))
|
||||
([72b3012](https://code.castopod.org/ad-aures/castopod/commit/72b301272e0b70ded3e2b237391909e3f152ad0b))
|
||||
- add map analytics, add episodes analytics, clean analytics page layout,
|
||||
translate countries
|
||||
([07eae83](https://code.podlibre.org/podlibre/castopod-host/commit/07eae83a00d860e149359fae67d549488403d88b))
|
||||
([07eae83](https://code.castopod.org/ad-aures/castopod/commit/07eae83a00d860e149359fae67d549488403d88b))
|
||||
- add media entity and link documents, images and audio files to it
|
||||
([6ecf286](https://code.podlibre.org/podlibre/castopod-host/commit/6ecf2866cfcde31a0840f15c3340808ce14b44cf))
|
||||
([6ecf286](https://code.castopod.org/ad-aures/castopod/commit/6ecf2866cfcde31a0840f15c3340808ce14b44cf))
|
||||
- add Noto Sans Mono font to use for durations + button to access new video clip
|
||||
form in list
|
||||
([7609bb6](https://code.podlibre.org/podlibre/castopod-host/commit/7609bb60330539aa91bfdafbb35c2d585624218a))
|
||||
([7609bb6](https://code.castopod.org/ad-aures/castopod/commit/7609bb60330539aa91bfdafbb35c2d585624218a))
|
||||
- add npm for js dependencies + move src/ files to root folder
|
||||
([cbb83a6](https://code.podlibre.org/podlibre/castopod-host/commit/cbb83a6f308ac9357e9fb0cca5edae9d3fee5b48))
|
||||
([cbb83a6](https://code.castopod.org/ad-aures/castopod/commit/cbb83a6f308ac9357e9fb0cca5edae9d3fee5b48))
|
||||
- add Open Graph and Twitter meta tags
|
||||
([af970b8](https://code.podlibre.org/podlibre/castopod-host/commit/af970b8bac949e4c63047e04aca1b7403a4e8deb)),
|
||||
closes [#41](https://code.podlibre.org/podlibre/castopod-host/issues/41)
|
||||
([af970b8](https://code.castopod.org/ad-aures/castopod/commit/af970b8bac949e4c63047e04aca1b7403a4e8deb)),
|
||||
closes [#41](https://code.castopod.org/ad-aures/castopod/issues/41)
|
||||
- add pages table to store custom instance pages (eg. legal-notice, cookie
|
||||
policy, etc.)
|
||||
([9c224a8](https://code.podlibre.org/podlibre/castopod-host/commit/9c224a8ac6dd95f3c6c087a300fc8bac48e8090f)),
|
||||
closes [#24](https://code.podlibre.org/podlibre/castopod-host/issues/24)
|
||||
([9c224a8](https://code.castopod.org/ad-aures/castopod/commit/9c224a8ac6dd95f3c6c087a300fc8bac48e8090f)),
|
||||
closes [#24](https://code.castopod.org/ad-aures/castopod/issues/24)
|
||||
- add platform models
|
||||
([a333d29](https://code.podlibre.org/podlibre/castopod-host/commit/a333d291966229a909c0851fd8b890ed97c48ceb))
|
||||
([a333d29](https://code.castopod.org/ad-aures/castopod/commit/a333d291966229a909c0851fd8b890ed97c48ceb))
|
||||
- add platforms form in podcast settings
|
||||
([043f49c](https://code.podlibre.org/podlibre/castopod-host/commit/043f49c784bc007ca0fa756ca4ed2d3b08843ad9))
|
||||
([043f49c](https://code.castopod.org/ad-aures/castopod/commit/043f49c784bc007ca0fa756ca4ed2d3b08843ad9))
|
||||
- add platforms tables
|
||||
([ce59344](https://code.podlibre.org/podlibre/castopod-host/commit/ce5934419a516c9926dd3fd0ace3c11a95b60722))
|
||||
([ce59344](https://code.castopod.org/ad-aures/castopod/commit/ce5934419a516c9926dd3fd0ace3c11a95b60722))
|
||||
- add podcast banner field for each podcast + refactor images configuration
|
||||
([4a8147b](https://code.podlibre.org/podlibre/castopod-host/commit/4a8147bfbbd98d9badfc57a0f2a18bdd5812e802))
|
||||
([4a8147b](https://code.castopod.org/ad-aures/castopod/commit/4a8147bfbbd98d9badfc57a0f2a18bdd5812e802))
|
||||
- add remote_url alternative for transcript and chapters files
|
||||
([3143c9a](https://code.podlibre.org/podlibre/castopod-host/commit/3143c9ad36e4cf1364205cf2be39c0c96f80fdd2))
|
||||
([3143c9a](https://code.castopod.org/ad-aures/castopod/commit/3143c9ad36e4cf1364205cf2be39c0c96f80fdd2))
|
||||
- add replied to post or comment to reply element
|
||||
([d0f9c60](https://code.podlibre.org/podlibre/castopod-host/commit/d0f9c6018f1af527099f3e26b5d824710fa11caf))
|
||||
([d0f9c60](https://code.castopod.org/ad-aures/castopod/commit/d0f9c6018f1af527099f3e26b5d824710fa11caf))
|
||||
- add schema.org json-ld objects to podcasts, episodes, posts and comments pages
|
||||
([902f959](https://code.podlibre.org/podlibre/castopod-host/commit/902f959b30a10839684f093eb86edebc5d826a0b))
|
||||
([902f959](https://code.castopod.org/ad-aures/castopod/commit/902f959b30a10839684f093eb86edebc5d826a0b))
|
||||
- add task to housekeeping setting for resetting all instance counts
|
||||
([9303e51](https://code.podlibre.org/podlibre/castopod-host/commit/9303e51bc50d730a8026f58984e83b840360ee88))
|
||||
([9303e51](https://code.castopod.org/ad-aures/castopod/commit/9303e51bc50d730a8026f58984e83b840360ee88))
|
||||
- add unique listeners analytics
|
||||
([3a49258](https://code.podlibre.org/podlibre/castopod-host/commit/3a4925816f3268230640525ad7af507aab8eecb9))
|
||||
([3a49258](https://code.castopod.org/ad-aures/castopod/commit/3a4925816f3268230640525ad7af507aab8eecb9))
|
||||
- add user permissions and basic groups to handle authorizations
|
||||
([d58e518](https://code.podlibre.org/podlibre/castopod-host/commit/d58e51874a4722921b75b0049117015c2380406e)),
|
||||
closes [#3](https://code.podlibre.org/podlibre/castopod-host/issues/3)
|
||||
[#18](https://code.podlibre.org/podlibre/castopod-host/issues/18)
|
||||
([d58e518](https://code.castopod.org/ad-aures/castopod/commit/d58e51874a4722921b75b0049117015c2380406e)),
|
||||
closes [#3](https://code.castopod.org/ad-aures/castopod/issues/3)
|
||||
[#18](https://code.castopod.org/ad-aures/castopod/issues/18)
|
||||
- **admin:** make header stick on scroll and show title + action buttons using
|
||||
css only
|
||||
([d60498c](https://code.podlibre.org/podlibre/castopod-host/commit/d60498c1beb970a14eeb3bbe02d1b1d8116624b0))
|
||||
([d60498c](https://code.castopod.org/ad-aures/castopod/commit/d60498c1beb970a14eeb3bbe02d1b1d8116624b0))
|
||||
- **admin:** update admin layout for better ux + update brand pine colors
|
||||
([d86142e](https://code.podlibre.org/podlibre/castopod-host/commit/d86142ebe7cd7582835f180b79fbeaaaba703528))
|
||||
([d86142e](https://code.castopod.org/ad-aures/castopod/commit/d86142ebe7cd7582835f180b79fbeaaaba703528))
|
||||
- allow cross origin requests on episode comments
|
||||
([e12f95a](https://code.podlibre.org/podlibre/castopod-host/commit/e12f95aca13c6d54489a9cfd99d4cd2490fe83ab))
|
||||
([e12f95a](https://code.castopod.org/ad-aures/castopod/commit/e12f95aca13c6d54489a9cfd99d4cd2490fe83ab))
|
||||
- **analytics:** add 'other' group to pie charts in order to display more
|
||||
accurate data
|
||||
([73acef9](https://code.podlibre.org/podlibre/castopod-host/commit/73acef933ff3485987afc5157de022910876fc12))
|
||||
([73acef9](https://code.castopod.org/ad-aures/castopod/commit/73acef933ff3485987afc5157de022910876fc12))
|
||||
- **analytics:** add charts and data export
|
||||
([78625c4](https://code.podlibre.org/podlibre/castopod-host/commit/78625c471b4f03a09bd42f72b82217e1f2d01cef))
|
||||
([78625c4](https://code.castopod.org/ad-aures/castopod/commit/78625c471b4f03a09bd42f72b82217e1f2d01cef))
|
||||
- **analytics:** add service name from rss user-agent
|
||||
([7202b98](https://code.podlibre.org/podlibre/castopod-host/commit/7202b9867bd59aafa8c338a4230fb5e5c55b24c6))
|
||||
([7202b98](https://code.castopod.org/ad-aures/castopod/commit/7202b9867bd59aafa8c338a4230fb5e5c55b24c6))
|
||||
- **analytics:** add weekday and hour bar charts
|
||||
([8ab3132](https://code.podlibre.org/podlibre/castopod-host/commit/8ab313296bb4a254ab05e90b17d896039839b784))
|
||||
([8ab3132](https://code.castopod.org/ad-aures/castopod/commit/8ab313296bb4a254ab05e90b17d896039839b784))
|
||||
- build hashed static files to renew browser cache
|
||||
([37c54d2](https://code.podlibre.org/podlibre/castopod-host/commit/37c54d247749bdf8f528babd4a78f24d48051063)),
|
||||
closes [#107](https://code.podlibre.org/podlibre/castopod-host/issues/107)
|
||||
([37c54d2](https://code.castopod.org/ad-aures/castopod/commit/37c54d247749bdf8f528babd4a78f24d48051063)),
|
||||
closes [#107](https://code.castopod.org/ad-aures/castopod/issues/107)
|
||||
- **cache:** add podcast and episode pages to cache + clear them after insert or
|
||||
update
|
||||
([da0f047](https://code.podlibre.org/podlibre/castopod-host/commit/da0f0472819007e02e5da37399f2377772c618b9))
|
||||
([da0f047](https://code.castopod.org/ad-aures/castopod/commit/da0f0472819007e02e5da37399f2377772c618b9))
|
||||
- **categories:** create model, entity, migrations and seeds
|
||||
([f73b042](https://code.podlibre.org/podlibre/castopod-host/commit/f73b042cc091be82abdbbca8992080875d526972))
|
||||
([f73b042](https://code.castopod.org/ad-aures/castopod/commit/f73b042cc091be82abdbbca8992080875d526972))
|
||||
- **clips:** setup clip entities and model + save video clip to have it
|
||||
generated in the background
|
||||
([2f6fdf9](https://code.podlibre.org/podlibre/castopod-host/commit/2f6fdf9091d52ca49709fc82621ba1c6dd0e817d))
|
||||
([2f6fdf9](https://code.castopod.org/ad-aures/castopod/commit/2f6fdf9091d52ca49709fc82621ba1c6dd0e817d))
|
||||
- **comments:** add comments to episodes + update naming of status to post
|
||||
([bb4752c](https://code.podlibre.org/podlibre/castopod-host/commit/bb4752c35e086664f5fd75fdc0d56546a1e356f6))
|
||||
([bb4752c](https://code.castopod.org/ad-aures/castopod/commit/bb4752c35e086664f5fd75fdc0d56546a1e356f6))
|
||||
- **comments:** add like / undo like to comment + add comment page
|
||||
([0c187ef](https://code.podlibre.org/podlibre/castopod-host/commit/0c187ef7a9278a60bcc6e5ee4d69d948b51e5c54))
|
||||
([0c187ef](https://code.castopod.org/ad-aures/castopod/commit/0c187ef7a9278a60bcc6e5ee4d69d948b51e5c54))
|
||||
- **components:** add custom view renderer with ComponentRenderer adapted from
|
||||
bonfire2
|
||||
([a95de8b](https://code.podlibre.org/podlibre/castopod-host/commit/a95de8bab010f6b01c598da72191abe97e473687))
|
||||
([a95de8b](https://code.castopod.org/ad-aures/castopod/commit/a95de8bab010f6b01c598da72191abe97e473687))
|
||||
- create optimized & resized images upon upload
|
||||
([02e4441](https://code.podlibre.org/podlibre/castopod-host/commit/02e4441f98f27e9534e5b9b63279153d14632ccd)),
|
||||
closes [#6](https://code.podlibre.org/podlibre/castopod-host/issues/6)
|
||||
([02e4441](https://code.castopod.org/ad-aures/castopod/commit/02e4441f98f27e9534e5b9b63279153d14632ccd)),
|
||||
closes [#6](https://code.castopod.org/ad-aures/castopod/issues/6)
|
||||
- **custom-rss:** add custom xml tag injection in rss feed for ❬channel❭ and
|
||||
❬item❭
|
||||
([6ecdaad](https://code.podlibre.org/podlibre/castopod-host/commit/6ecdaad911d06b7f7a2b7d24710968c7eb9118f6))
|
||||
([6ecdaad](https://code.castopod.org/ad-aures/castopod/commit/6ecdaad911d06b7f7a2b7d24710968c7eb9118f6))
|
||||
- **devcontainer:** add devcontainer settings for dev environment
|
||||
([69e7266](https://code.podlibre.org/podlibre/castopod-host/commit/69e72667365247b63430dee88194e8f0d7c28edc))
|
||||
([69e7266](https://code.castopod.org/ad-aures/castopod/commit/69e72667365247b63430dee88194e8f0d7c28edc))
|
||||
- display castopod version in admin footer
|
||||
([9f2574e](https://code.podlibre.org/podlibre/castopod-host/commit/9f2574e6fbb61dac4e1a4252dff30017685da5f0)),
|
||||
closes [#68](https://code.podlibre.org/podlibre/castopod-host/issues/68)
|
||||
([9f2574e](https://code.castopod.org/ad-aures/castopod/commit/9f2574e6fbb61dac4e1a4252dff30017685da5f0)),
|
||||
closes [#68](https://code.castopod.org/ad-aures/castopod/issues/68)
|
||||
- display legal disclaimer and warning on podcast import page
|
||||
([2f07992](https://code.podlibre.org/podlibre/castopod-host/commit/2f07992e5508b34b91f194eebfac80c51e80e90a)),
|
||||
closes [#34](https://code.podlibre.org/podlibre/castopod-host/issues/34)
|
||||
([2f07992](https://code.castopod.org/ad-aures/castopod/commit/2f07992e5508b34b91f194eebfac80c51e80e90a)),
|
||||
closes [#34](https://code.castopod.org/ad-aures/castopod/issues/34)
|
||||
- edit + delete podcast and episode
|
||||
([ac5f0c7](https://code.podlibre.org/podlibre/castopod-host/commit/ac5f0c732806e955c01e05b7867801bc938c6bd5))
|
||||
([ac5f0c7](https://code.castopod.org/ad-aures/castopod/commit/ac5f0c732806e955c01e05b7867801bc938c6bd5))
|
||||
- **embeddable-player:** add embeddable player widget
|
||||
([141788f](https://code.podlibre.org/podlibre/castopod-host/commit/141788fa089f9dedc8956c64ca515a4a4625f904))
|
||||
([141788f](https://code.castopod.org/ad-aures/castopod/commit/141788fa089f9dedc8956c64ca515a4a4625f904))
|
||||
- enhance admin ui with responsive design and ux improvements
|
||||
([2d44b45](https://code.podlibre.org/podlibre/castopod-host/commit/2d44b457a02205d2e7da258d7029b8bc5da39533)),
|
||||
closes [#31](https://code.podlibre.org/podlibre/castopod-host/issues/31)
|
||||
[#9](https://code.podlibre.org/podlibre/castopod-host/issues/9)
|
||||
([2d44b45](https://code.castopod.org/ad-aures/castopod/commit/2d44b457a02205d2e7da258d7029b8bc5da39533)),
|
||||
closes [#31](https://code.castopod.org/ad-aures/castopod/issues/31)
|
||||
[#9](https://code.castopod.org/ad-aures/castopod/issues/9)
|
||||
- enhance ui using javascript in admin area
|
||||
([c0e66d5](https://code.podlibre.org/podlibre/castopod-host/commit/c0e66d5f7012026e145d106f4d6bd3ba792a1b77))
|
||||
([c0e66d5](https://code.castopod.org/ad-aures/castopod/commit/c0e66d5f7012026e145d106f4d6bd3ba792a1b77))
|
||||
- **episodes:** add create form and view pages for episode
|
||||
([f3b2c8b](https://code.podlibre.org/podlibre/castopod-host/commit/f3b2c8b84f3d93bef734e34dbe8ed729535e45e9)),
|
||||
closes [#1](https://code.podlibre.org/podlibre/castopod-host/issues/1)
|
||||
([f3b2c8b](https://code.castopod.org/ad-aures/castopod/commit/f3b2c8b84f3d93bef734e34dbe8ed729535e45e9)),
|
||||
closes [#1](https://code.castopod.org/ad-aures/castopod/issues/1)
|
||||
- **episodes:** add migrations, model and entity for episodes table
|
||||
([0444821](https://code.podlibre.org/podlibre/castopod-host/commit/044482174ede555ce19a2d8c6f48771cc8e7d27b))
|
||||
([0444821](https://code.castopod.org/ad-aures/castopod/commit/044482174ede555ce19a2d8c6f48771cc8e7d27b))
|
||||
- **episodes:** replace all audio file URL parameters with base64 encoded data
|
||||
([e1f65cd](https://code.podlibre.org/podlibre/castopod-host/commit/e1f65cd3b53353a30d4ab6eb5312393cf04a1676))
|
||||
([e1f65cd](https://code.castopod.org/ad-aures/castopod/commit/e1f65cd3b53353a30d4ab6eb5312393cf04a1676))
|
||||
- **episodes:** schedule episode with future publication_date by using cache
|
||||
expiration time
|
||||
([4f1e773](https://code.podlibre.org/podlibre/castopod-host/commit/4f1e773c0f9e4c2597f6c1b0a4773dfb34b2f203)),
|
||||
closes [#47](https://code.podlibre.org/podlibre/castopod-host/issues/47)
|
||||
([4f1e773](https://code.castopod.org/ad-aures/castopod/commit/4f1e773c0f9e4c2597f6c1b0a4773dfb34b2f203)),
|
||||
closes [#47](https://code.castopod.org/ad-aures/castopod/issues/47)
|
||||
- **fediverse:** implement activitypub protocols + update user interface
|
||||
([2f525c0](https://code.podlibre.org/podlibre/castopod-host/commit/2f525c0f6e44d320bff16e22c223481923ba683e)),
|
||||
closes [#69](https://code.podlibre.org/podlibre/castopod-host/issues/69)
|
||||
[#65](https://code.podlibre.org/podlibre/castopod-host/issues/65)
|
||||
[#85](https://code.podlibre.org/podlibre/castopod-host/issues/85)
|
||||
[#51](https://code.podlibre.org/podlibre/castopod-host/issues/51)
|
||||
[#91](https://code.podlibre.org/podlibre/castopod-host/issues/91)
|
||||
[#92](https://code.podlibre.org/podlibre/castopod-host/issues/92)
|
||||
[#88](https://code.podlibre.org/podlibre/castopod-host/issues/88)
|
||||
([2f525c0](https://code.castopod.org/ad-aures/castopod/commit/2f525c0f6e44d320bff16e22c223481923ba683e)),
|
||||
closes [#69](https://code.castopod.org/ad-aures/castopod/issues/69)
|
||||
[#65](https://code.castopod.org/ad-aures/castopod/issues/65)
|
||||
[#85](https://code.castopod.org/ad-aures/castopod/issues/85)
|
||||
[#51](https://code.castopod.org/ad-aures/castopod/issues/51)
|
||||
[#91](https://code.castopod.org/ad-aures/castopod/issues/91)
|
||||
[#92](https://code.castopod.org/ad-aures/castopod/issues/92)
|
||||
[#88](https://code.castopod.org/ad-aures/castopod/issues/88)
|
||||
- **fonts:** replace Montserrat with Inter for better readablity
|
||||
([bfa11d0](https://code.podlibre.org/podlibre/castopod-host/commit/bfa11d007d04b8ac714c8cf3b8050a6aaf177a26))
|
||||
([bfa11d0](https://code.castopod.org/ad-aures/castopod/commit/bfa11d007d04b8ac714c8cf3b8050a6aaf177a26))
|
||||
- import podcast from an rss feed url
|
||||
([9a5d5a1](https://code.podlibre.org/podlibre/castopod-host/commit/9a5d5a15b4945eb319da9e999c4ca60a0a4f6d2d)),
|
||||
closes [#21](https://code.podlibre.org/podlibre/castopod-host/issues/21)
|
||||
([9a5d5a1](https://code.castopod.org/ad-aures/castopod/commit/9a5d5a15b4945eb319da9e999c4ca60a0a4f6d2d)),
|
||||
closes [#21](https://code.castopod.org/ad-aures/castopod/issues/21)
|
||||
- integrate stylized form components and update podcast edit page
|
||||
([6536729](https://code.podlibre.org/podlibre/castopod-host/commit/653672954606a23796e8a7bda3c34fd6b92f84e0))
|
||||
([6536729](https://code.castopod.org/ad-aures/castopod/commit/653672954606a23796e8a7bda3c34fd6b92f84e0))
|
||||
- make displayed publication time as relative time using @github/time-elements
|
||||
([230e139](https://code.podlibre.org/podlibre/castopod-host/commit/230e139e43324b9ebef06ca8f6e13b3d9a7bdc70))
|
||||
([230e139](https://code.castopod.org/ad-aures/castopod/commit/230e139e43324b9ebef06ca8f6e13b3d9a7bdc70))
|
||||
- **map:** display geolocated episodes on a map page
|
||||
([4357cc2](https://code.podlibre.org/podlibre/castopod-host/commit/4357cc25ccc585ce398035c1c25d566b6a9df775))
|
||||
([4357cc2](https://code.castopod.org/ad-aures/castopod/commit/4357cc25ccc585ce398035c1c25d566b6a9df775))
|
||||
- **media:** clean media api + create an entity per media type
|
||||
([fafaa7e](https://code.podlibre.org/podlibre/castopod-host/commit/fafaa7e689b17f09a2b056081fa1f4fc53bf716b))
|
||||
([fafaa7e](https://code.castopod.org/ad-aures/castopod/commit/fafaa7e689b17f09a2b056081fa1f4fc53bf716b))
|
||||
- **media:** save audio, images, transcripts and chapters to media for episode
|
||||
and persons
|
||||
([58e2a00](https://code.podlibre.org/podlibre/castopod-host/commit/58e2a00a87fa7d5b188e13cc521d94f0cfddba50))
|
||||
([58e2a00](https://code.castopod.org/ad-aures/castopod/commit/58e2a00a87fa7d5b188e13cc521d94f0cfddba50))
|
||||
- **meta-tags:** add activitypub alternate links to podcast, episode, comment
|
||||
and post pages
|
||||
([bd61752](https://code.podlibre.org/podlibre/castopod-host/commit/bd61752be2f574323b05d1d0aee0df55adf9a74e))
|
||||
([bd61752](https://code.castopod.org/ad-aures/castopod/commit/bd61752be2f574323b05d1d0aee0df55adf9a74e))
|
||||
- minor corrections to some tables
|
||||
([3bf9420](https://code.podlibre.org/podlibre/castopod-host/commit/3bf9420b5956a501b3b24405d243a71a928d6086))
|
||||
([3bf9420](https://code.castopod.org/ad-aures/castopod/commit/3bf9420b5956a501b3b24405d243a71a928d6086))
|
||||
- **monetization:** add Web Monetization support
|
||||
([96a6026](https://code.podlibre.org/podlibre/castopod-host/commit/96a6026f1db452085360f5fe248de82a2ec06468))
|
||||
([96a6026](https://code.castopod.org/ad-aures/castopod/commit/96a6026f1db452085360f5fe248de82a2ec06468))
|
||||
- **nodeinfo2:** add .well-known route for nodeinfo2 containing metadata about
|
||||
the castopod instance
|
||||
([88fddc8](https://code.podlibre.org/podlibre/castopod-host/commit/88fddc81d730978f2a4d8a671936b54041e3fe45))
|
||||
([88fddc8](https://code.castopod.org/ad-aures/castopod/commit/88fddc81d730978f2a4d8a671936b54041e3fe45))
|
||||
- **partner:** add link and image in episode description
|
||||
([ad07bb9](https://code.podlibre.org/podlibre/castopod-host/commit/ad07bb9330dc9493813368e969e1f3a3def44614))
|
||||
([ad07bb9](https://code.castopod.org/ad-aures/castopod/commit/ad07bb9330dc9493813368e969e1f3a3def44614))
|
||||
- **person:** add podcastindex.org namespace person tag
|
||||
([8acd011](https://code.podlibre.org/podlibre/castopod-host/commit/8acd011f13e99492ef4b44b327685bb006fe5f8f))
|
||||
([8acd011](https://code.castopod.org/ad-aures/castopod/commit/8acd011f13e99492ef4b44b327685bb006fe5f8f))
|
||||
- **platforms:** add AntennaPod
|
||||
([53e9cfd](https://code.podlibre.org/podlibre/castopod-host/commit/53e9cfd61c794b1539e9d4691d3c4e73c4b7aaa7))
|
||||
([53e9cfd](https://code.castopod.org/ad-aures/castopod/commit/53e9cfd61c794b1539e9d4691d3c4e73c4b7aaa7))
|
||||
- **platforms:** add Fediverse and some funding platforms, add link on logo
|
||||
([afc3d50](https://code.podlibre.org/podlibre/castopod-host/commit/afc3d50289bb4173e0697d109ffe72f6814b93d1))
|
||||
([afc3d50](https://code.castopod.org/ad-aures/castopod/commit/afc3d50289bb4173e0697d109ffe72f6814b93d1))
|
||||
- **platforms:** add helloasso
|
||||
([16cb993](https://code.podlibre.org/podlibre/castopod-host/commit/16cb993ee6e28987a840fc27a9c2c73794c67697))
|
||||
([16cb993](https://code.castopod.org/ad-aures/castopod/commit/16cb993ee6e28987a840fc27a9c2c73794c67697))
|
||||
- **platforms:** add missing newpodcastapps.com's platforms
|
||||
([92dd370](https://code.podlibre.org/podlibre/castopod-host/commit/92dd370e2f9a464edd26cddcde96d0e16f91548d))
|
||||
([92dd370](https://code.castopod.org/ad-aures/castopod/commit/92dd370e2f9a464edd26cddcde96d0e16f91548d))
|
||||
- **platforms:** add pod.link
|
||||
([3d7a232](https://code.podlibre.org/podlibre/castopod-host/commit/3d7a2320ddd116e4a311605421126aff57243219))
|
||||
([3d7a232](https://code.castopod.org/ad-aures/castopod/commit/3d7a2320ddd116e4a311605421126aff57243219))
|
||||
- **platforms:** add Podcast Index
|
||||
([ad52b1c](https://code.podlibre.org/podlibre/castopod-host/commit/ad52b1cc2b7d0bc844970214d205961a7196b4a9))
|
||||
([ad52b1c](https://code.castopod.org/ad-aures/castopod/commit/ad52b1cc2b7d0bc844970214d205961a7196b4a9))
|
||||
- **platforms:** add podfriend
|
||||
([9fdc8d3](https://code.podlibre.org/podlibre/castopod-host/commit/9fdc8d32930234c7ffd2be6892be57febcef1086))
|
||||
([9fdc8d3](https://code.castopod.org/ad-aures/castopod/commit/9fdc8d32930234c7ffd2be6892be57febcef1086))
|
||||
- **podcast-form:** update routes and redirect to podcast page
|
||||
([12ce905](https://code.podlibre.org/podlibre/castopod-host/commit/12ce905799002dc9c07e6de092342d30ba9fd7d8))
|
||||
([12ce905](https://code.castopod.org/ad-aures/castopod/commit/12ce905799002dc9c07e6de092342d30ba9fd7d8))
|
||||
- **podcast:** create a podcast using form
|
||||
([1202ba3](https://code.podlibre.org/podlibre/castopod-host/commit/1202ba3545f521097c60a6a2af95e70527cd1d34))
|
||||
([1202ba3](https://code.castopod.org/ad-aures/castopod/commit/1202ba3545f521097c60a6a2af95e70527cd1d34))
|
||||
- prefill season and episode numbers + set episode number as mandatory for
|
||||
serial podcasts
|
||||
([07d740b](https://code.podlibre.org/podlibre/castopod-host/commit/07d740b79f9283e389e723954f680f909ce5de4a)),
|
||||
closes [#134](https://code.podlibre.org/podlibre/castopod-host/issues/134)
|
||||
[#136](https://code.podlibre.org/podlibre/castopod-host/issues/136)
|
||||
([07d740b](https://code.castopod.org/ad-aures/castopod/commit/07d740b79f9283e389e723954f680f909ce5de4a)),
|
||||
closes [#134](https://code.castopod.org/ad-aures/castopod/issues/134)
|
||||
[#136](https://code.castopod.org/ad-aures/castopod/issues/136)
|
||||
- **public-ui:** adapt public podcast and episode pages to wireframes
|
||||
([40a0535](https://code.podlibre.org/podlibre/castopod-host/commit/40a0535fc1bc12a24994b651f5e00b35995cbdda)),
|
||||
closes [#30](https://code.podlibre.org/podlibre/castopod-host/issues/30)
|
||||
[#13](https://code.podlibre.org/podlibre/castopod-host/issues/13)
|
||||
([40a0535](https://code.castopod.org/ad-aures/castopod/commit/40a0535fc1bc12a24994b651f5e00b35995cbdda)),
|
||||
closes [#30](https://code.castopod.org/ad-aures/castopod/issues/30)
|
||||
[#13](https://code.castopod.org/ad-aures/castopod/issues/13)
|
||||
- **pwa:** add service-worker + webmanifest for each podcasts to have them
|
||||
install on devices
|
||||
([fee2c1c](https://code.podlibre.org/podlibre/castopod-host/commit/fee2c1c0d0d03c4ff0a6a207b0a5e0c22bb7b13a))
|
||||
([fee2c1c](https://code.castopod.org/ad-aures/castopod/commit/fee2c1c0d0d03c4ff0a6a207b0a5e0c22bb7b13a))
|
||||
- redesign public podcast and episode pages + remove any information clutter for
|
||||
better ux
|
||||
([9321400](https://code.podlibre.org/podlibre/castopod-host/commit/932140077c671f0486a2cd08ceb6126c7ecde87f))
|
||||
([9321400](https://code.castopod.org/ad-aures/castopod/commit/932140077c671f0486a2cd08ceb6126c7ecde87f))
|
||||
- replace form helper functions with components in admin template
|
||||
([e64548b](https://code.podlibre.org/podlibre/castopod-host/commit/e64548b982ba47ff35f2272e2e30dd85eeba950b))
|
||||
([e64548b](https://code.castopod.org/ad-aures/castopod/commit/e64548b982ba47ff35f2272e2e30dd85eeba950b))
|
||||
- replace slug field with interactive permalink component
|
||||
([578022b](https://code.podlibre.org/podlibre/castopod-host/commit/578022b8c5163ffaf8db5870ed5ec9d5d9536477))
|
||||
([578022b](https://code.castopod.org/ad-aures/castopod/commit/578022b8c5163ffaf8db5870ed5ec9d5d9536477))
|
||||
- restyle episode and person cards + add focus style to interactive elements for
|
||||
a11y
|
||||
([a505a1d](https://code.podlibre.org/podlibre/castopod-host/commit/a505a1de56e8e3056379bd60d0595f432e294728))
|
||||
([a505a1d](https://code.castopod.org/ad-aures/castopod/commit/a505a1de56e8e3056379bd60d0595f432e294728))
|
||||
- **rss:** add ˂podcast:guid˃ tag for channel
|
||||
([1fab10e](https://code.podlibre.org/podlibre/castopod-host/commit/1fab10eb0d63bb7c3edf34ffe691e2aec2c2e43c))
|
||||
([1fab10e](https://code.castopod.org/ad-aures/castopod/commit/1fab10eb0d63bb7c3edf34ffe691e2aec2c2e43c))
|
||||
- **rss:** add podcast-namespace tags for platforms + previousUrl tag
|
||||
([dbba8dc](https://code.podlibre.org/podlibre/castopod-host/commit/dbba8dc58133967c778514268cbfed8098ed1dbc)),
|
||||
closes [#73](https://code.podlibre.org/podlibre/castopod-host/issues/73)
|
||||
[#75](https://code.podlibre.org/podlibre/castopod-host/issues/75)
|
||||
[#76](https://code.podlibre.org/podlibre/castopod-host/issues/76)
|
||||
[#80](https://code.podlibre.org/podlibre/castopod-host/issues/80)
|
||||
([dbba8dc](https://code.castopod.org/ad-aures/castopod/commit/dbba8dc58133967c778514268cbfed8098ed1dbc)),
|
||||
closes [#73](https://code.castopod.org/ad-aures/castopod/issues/73)
|
||||
[#75](https://code.castopod.org/ad-aures/castopod/issues/75)
|
||||
[#76](https://code.castopod.org/ad-aures/castopod/issues/76)
|
||||
[#80](https://code.castopod.org/ad-aures/castopod/issues/80)
|
||||
- **rss:** add podcast:comments tag to link to episode comments
|
||||
([32e8c7c](https://code.podlibre.org/podlibre/castopod-host/commit/32e8c7c16a61ffe08e2f3bfbdeda556811a0358c))
|
||||
([32e8c7c](https://code.castopod.org/ad-aures/castopod/commit/32e8c7c16a61ffe08e2f3bfbdeda556811a0358c))
|
||||
- **rss:** add podcast:location tag
|
||||
([c0a2282](https://code.podlibre.org/podlibre/castopod-host/commit/c0a22829bd87d48535a86e60c6cd7280e44683a2))
|
||||
([c0a2282](https://code.castopod.org/ad-aures/castopod/commit/c0a22829bd87d48535a86e60c6cd7280e44683a2))
|
||||
- **rss:** add soundbites according to the podcastindex specs
|
||||
([6b34617](https://code.podlibre.org/podlibre/castopod-host/commit/6b34617d07c70522cb941e96d91d9987493413eb)),
|
||||
closes [#83](https://code.podlibre.org/podlibre/castopod-host/issues/83)
|
||||
([6b34617](https://code.castopod.org/ad-aures/castopod/commit/6b34617d07c70522cb941e96d91d9987493413eb)),
|
||||
closes [#83](https://code.castopod.org/ad-aures/castopod/issues/83)
|
||||
- **rss:** add transcript and chapters support
|
||||
([e769d83](https://code.podlibre.org/podlibre/castopod-host/commit/e769d83a932c169e52a630a17cd4dd8ac5cebaf6)),
|
||||
closes [#72](https://code.podlibre.org/podlibre/castopod-host/issues/72)
|
||||
[#82](https://code.podlibre.org/podlibre/castopod-host/issues/82)
|
||||
([e769d83](https://code.castopod.org/ad-aures/castopod/commit/e769d83a932c169e52a630a17cd4dd8ac5cebaf6)),
|
||||
closes [#72](https://code.castopod.org/ad-aures/castopod/issues/72)
|
||||
[#82](https://code.castopod.org/ad-aures/castopod/issues/82)
|
||||
- **rss:** generate rss feed from podcast entity
|
||||
([c815ecd](https://code.podlibre.org/podlibre/castopod-host/commit/c815ecd6640931fee0895f80908a3ddfac482666))
|
||||
([c815ecd](https://code.castopod.org/ad-aures/castopod/commit/c815ecd6640931fee0895f80908a3ddfac482666))
|
||||
- **rss:** update monetization tag so that it meets PodcastIndex requirements
|
||||
([4c7ecbe](https://code.podlibre.org/podlibre/castopod-host/commit/4c7ecbee83950e5f9f2482cedaab18a1ac9bfc9e))
|
||||
([4c7ecbe](https://code.castopod.org/ad-aures/castopod/commit/4c7ecbee83950e5f9f2482cedaab18a1ac9bfc9e))
|
||||
- **select:** enhance select input with choices.js
|
||||
([910d457](https://code.podlibre.org/podlibre/castopod-host/commit/910d457cf843e0fc334b3505a4727d51633395ac))
|
||||
([910d457](https://code.castopod.org/ad-aures/castopod/commit/910d457cf843e0fc334b3505a4727d51633395ac))
|
||||
- set app parameter forceGlobalSecureRequests = true forcing requests to go
|
||||
through https
|
||||
([d9dff1b](https://code.podlibre.org/podlibre/castopod-host/commit/d9dff1b8bf89c8b526ad6cb89f98a1f160d49117))
|
||||
([d9dff1b](https://code.castopod.org/ad-aures/castopod/commit/d9dff1b8bf89c8b526ad6cb89f98a1f160d49117))
|
||||
- set podcast / episode description in the pages description meta tag
|
||||
([1c4a504](https://code.podlibre.org/podlibre/castopod-host/commit/1c4a50442bea2d3449efce9c5ff1c80743152f55)),
|
||||
closes [#44](https://code.podlibre.org/podlibre/castopod-host/issues/44)
|
||||
([1c4a504](https://code.castopod.org/ad-aures/castopod/commit/1c4a50442bea2d3449efce9c5ff1c80743152f55)),
|
||||
closes [#44](https://code.castopod.org/ad-aures/castopod/issues/44)
|
||||
- **settings:** add general config for instance (site name, description and
|
||||
icon)
|
||||
([5c56f3e](https://code.podlibre.org/podlibre/castopod-host/commit/5c56f3e6f00a61af2ccf50811c155c325f2b10fa))
|
||||
([5c56f3e](https://code.castopod.org/ad-aures/castopod/commit/5c56f3e6f00a61af2ccf50811c155c325f2b10fa))
|
||||
- **settings:** add theme settings to set an accent color for all public pages
|
||||
([5c529a8](https://code.podlibre.org/podlibre/castopod-host/commit/5c529a83aa6d6147d94e5aee996e6b0ab02f0ce4))
|
||||
([5c529a8](https://code.castopod.org/ad-aures/castopod/commit/5c529a83aa6d6147d94e5aee996e6b0ab02f0ce4))
|
||||
- simplify podcast page's layout for better ux
|
||||
([2c0efc6](https://code.podlibre.org/podlibre/castopod-host/commit/2c0efc6563604dd067be88cfc9ddd88a01745e64))
|
||||
([2c0efc6](https://code.castopod.org/ad-aures/castopod/commit/2c0efc6563604dd067be88cfc9ddd88a01745e64))
|
||||
- **soundbites:** add soundbite list and creation forms with audio-clipper
|
||||
component
|
||||
([de19317](https://code.podlibre.org/podlibre/castopod-host/commit/de19317138a2106deb825c1eed7dda036ed7dac3))
|
||||
([de19317](https://code.castopod.org/ad-aures/castopod/commit/de19317138a2106deb825c1eed7dda036ed7dac3))
|
||||
- style file inputs using tailwind's file class
|
||||
([8208ab6](https://code.podlibre.org/podlibre/castopod-host/commit/8208ab6785aae8c49f78eb9ac8cd53d77ec8e5e5))
|
||||
([8208ab6](https://code.castopod.org/ad-aures/castopod/commit/8208ab6785aae8c49f78eb9ac8cd53d77ec8e5e5))
|
||||
- **themes:** add ViewThemes library to set views in root themes folder
|
||||
([7a27676](https://code.podlibre.org/podlibre/castopod-host/commit/7a276764e6a1ee3619d9d3488f6163215db75338))
|
||||
([7a27676](https://code.castopod.org/ad-aures/castopod/commit/7a276764e6a1ee3619d9d3488f6163215db75338))
|
||||
- **themes:** set different default banner per theme
|
||||
([11c916f](https://code.podlibre.org/podlibre/castopod-host/commit/11c916fe433eb749ac32230c48e256057564cbb0))
|
||||
([11c916f](https://code.castopod.org/ad-aures/castopod/commit/11c916fe433eb749ac32230c48e256057564cbb0))
|
||||
- **themes:** set generic css variables for colors to enable instance themes
|
||||
([a746a78](https://code.podlibre.org/podlibre/castopod-host/commit/a746a781b4bfc78209cf8302c6d7bb3cb452e446))
|
||||
([a746a78](https://code.castopod.org/ad-aures/castopod/commit/a746a781b4bfc78209cf8302c6d7bb3cb452e446))
|
||||
- toggle podcast sidebar on smaller screens
|
||||
([f0205ec](https://code.podlibre.org/podlibre/castopod-host/commit/f0205ec274414e881cba40d6776126f05eaee583))
|
||||
([f0205ec](https://code.castopod.org/ad-aures/castopod/commit/f0205ec274414e881cba40d6776126f05eaee583))
|
||||
- **transcript:** parse srt subtitles into json file + add max file size info
|
||||
below audio file input
|
||||
([0098761](https://code.podlibre.org/podlibre/castopod-host/commit/00987610a068c8d6cdd4421ea16585fa037eb61a))
|
||||
([0098761](https://code.castopod.org/ad-aures/castopod/commit/00987610a068c8d6cdd4421ea16585fa037eb61a))
|
||||
- **ui:** create ViewComponents library to enable building class and view files
|
||||
components
|
||||
([94872f2](https://code.podlibre.org/podlibre/castopod-host/commit/94872f2338e6025c2f3770be256160838dae9003))
|
||||
([94872f2](https://code.castopod.org/ad-aures/castopod/commit/94872f2338e6025c2f3770be256160838dae9003))
|
||||
- update analytics so to meet IABv2 requirements
|
||||
([03e23a2](https://code.podlibre.org/podlibre/castopod-host/commit/03e23a28bf9b1b73fba55352c36a8cd6cc8ae729)),
|
||||
closes [#10](https://code.podlibre.org/podlibre/castopod-host/issues/10)
|
||||
([03e23a2](https://code.castopod.org/ad-aures/castopod/commit/03e23a28bf9b1b73fba55352c36a8cd6cc8ae729)),
|
||||
closes [#10](https://code.castopod.org/ad-aures/castopod/issues/10)
|
||||
- update pine colors + create charts components
|
||||
([a50abc1](https://code.podlibre.org/podlibre/castopod-host/commit/a50abc138d4997b564e3065b37504cda5ce62da6))
|
||||
([a50abc1](https://code.castopod.org/ad-aures/castopod/commit/a50abc138d4997b564e3065b37504cda5ce62da6))
|
||||
- **users:** add myth-auth to handle users crud + add admin gateway only
|
||||
accessible by login
|
||||
([c63a077](https://code.podlibre.org/podlibre/castopod-host/commit/c63a077618c61b4cde7f25ffc650a4b0e1495f44)),
|
||||
closes [#11](https://code.podlibre.org/podlibre/castopod-host/issues/11)
|
||||
([c63a077](https://code.castopod.org/ad-aures/castopod/commit/c63a077618c61b4cde7f25ffc650a4b0e1495f44)),
|
||||
closes [#11](https://code.castopod.org/ad-aures/castopod/issues/11)
|
||||
- **ux:** remove admin dashboard and redirect directly to podcast list
|
||||
([27c48b8](https://code.podlibre.org/podlibre/castopod-host/commit/27c48b8fa930b33e5e15f0c8685e468e857ca9cd))
|
||||
([27c48b8](https://code.castopod.org/ad-aures/castopod/commit/27c48b8fa930b33e5e15f0c8685e468e857ca9cd))
|
||||
- **video-clip:** add video-clip page with video preview + logs
|
||||
([42538dd](https://code.podlibre.org/podlibre/castopod-host/commit/42538dd7577be0ffe59b4fdfadbd76cc89e5ef30))
|
||||
([42538dd](https://code.castopod.org/ad-aures/castopod/commit/42538dd7577be0ffe59b4fdfadbd76cc89e5ef30))
|
||||
- **video-clip:** generate video clips in the bg using a cron job + add video
|
||||
clip page + tidy up UI
|
||||
([db0e427](https://code.podlibre.org/podlibre/castopod-host/commit/db0e4272bd6d307c562e1f961d2747cb62de0f35))
|
||||
([db0e427](https://code.castopod.org/ad-aures/castopod/commit/db0e4272bd6d307c562e1f961d2747cb62de0f35))
|
||||
- **video-clips:** add dimensions for portrait and squared formats
|
||||
([3af404d](https://code.podlibre.org/podlibre/castopod-host/commit/3af404da3dd1901c78cc7e1778fc225f6716207d))
|
||||
([3af404d](https://code.castopod.org/ad-aures/castopod/commit/3af404da3dd1901c78cc7e1778fc225f6716207d))
|
||||
- **video-clips:** add new themes + add castopod logo as a watermark
|
||||
([1d1490b](https://code.podlibre.org/podlibre/castopod-host/commit/1d1490b06a1f5ecb10b3b98a72efc55d09c10944))
|
||||
([1d1490b](https://code.castopod.org/ad-aures/castopod/commit/1d1490b06a1f5ecb10b3b98a72efc55d09c10944))
|
||||
- **video-clips:** add route for scheduled video clips + list video clips with
|
||||
status
|
||||
([2065ebb](https://code.podlibre.org/podlibre/castopod-host/commit/2065ebbee5e3d0f890ac90b55ca984f1d62a184c))
|
||||
([2065ebb](https://code.castopod.org/ad-aures/castopod/commit/2065ebbee5e3d0f890ac90b55ca984f1d62a184c))
|
||||
- **video-clips:** allow episodeNumbering text to stand in the indent of
|
||||
episodeTitle paragraph
|
||||
([71a063d](https://code.podlibre.org/podlibre/castopod-host/commit/71a063dac311cb21639801fbae6af7c5106c2699))
|
||||
([71a063d](https://code.castopod.org/ad-aures/castopod/commit/71a063dac311cb21639801fbae6af7c5106c2699))
|
||||
- **video-clips:** generate a 16:9 video using ffmpeg
|
||||
([35aa7ea](https://code.podlibre.org/podlibre/castopod-host/commit/35aa7ea5d9a339b3e6f745137282268d69fe2231))
|
||||
([35aa7ea](https://code.castopod.org/ad-aures/castopod/commit/35aa7ea5d9a339b3e6f745137282268d69fe2231))
|
||||
- **video-clips:** generate subtitles clip using transcript json to have
|
||||
subtitles accross video
|
||||
([3ce07e4](https://code.podlibre.org/podlibre/castopod-host/commit/3ce07e455d171e29be30d8ad45055510eb8d363c))
|
||||
([3ce07e4](https://code.castopod.org/ad-aures/castopod/commit/3ce07e455d171e29be30d8ad45055510eb8d363c))
|
||||
- **video-clips:** replace hardcoded colors with config's theme colors
|
||||
([e462abf](https://code.podlibre.org/podlibre/castopod-host/commit/e462abf6d660e41d2170c52caf45704008de58e9))
|
||||
([e462abf](https://code.castopod.org/ad-aures/castopod/commit/e462abf6d660e41d2170c52caf45704008de58e9))
|
||||
- **vite:** add vite config to decouple it from CI_ENVIRONMENT
|
||||
([8721719](https://code.podlibre.org/podlibre/castopod-host/commit/8721719cd7cf32e94823541eafaba1e9309355a8))
|
||||
([8721719](https://code.castopod.org/ad-aures/castopod/commit/8721719cd7cf32e94823541eafaba1e9309355a8))
|
||||
- write id3v2 tags to episode's audio file
|
||||
([4651d01](https://code.podlibre.org/podlibre/castopod-host/commit/4651d01a84ff3ea8433a8ae26cfd750a1ec9e88d))
|
||||
([4651d01](https://code.castopod.org/ad-aures/castopod/commit/4651d01a84ff3ea8433a8ae26cfd750a1ec9e88d))
|
||||
|
||||
### Performance Improvements
|
||||
|
||||
- **cache:** update CI4 to use cache's deleteMatching method
|
||||
([54b84f9](https://code.podlibre.org/podlibre/castopod-host/commit/54b84f96843af13f579fea49102c8c2ef81b0a54))
|
||||
([54b84f9](https://code.castopod.org/ad-aures/castopod/commit/54b84f96843af13f579fea49102c8c2ef81b0a54))
|
||||
- **cache:** use deleteMatching method to prevent forgetting cached elements in
|
||||
models
|
||||
([76afc0c](https://code.podlibre.org/podlibre/castopod-host/commit/76afc0cfa2feb087697bae4bc138e4956873dd62))
|
||||
([76afc0c](https://code.castopod.org/ad-aures/castopod/commit/76afc0cfa2feb087697bae4bc138e4956873dd62))
|
||||
- defer javascript + lazy load images for faster page loads
|
||||
([f0685e4](https://code.podlibre.org/podlibre/castopod-host/commit/f0685e44799dfb494592ff97841c0ae035381db8))
|
||||
([f0685e4](https://code.castopod.org/ad-aures/castopod/commit/f0685e44799dfb494592ff97841c0ae035381db8))
|
||||
- **docker:** add redis caching service for development
|
||||
([05ace8c](https://code.podlibre.org/podlibre/castopod-host/commit/05ace8cff2ef02d19abd40097ac5546dca6a54ca))
|
||||
([05ace8c](https://code.castopod.org/ad-aures/castopod/commit/05ace8cff2ef02d19abd40097ac5546dca6a54ca))
|
||||
|
||||
### Reverts
|
||||
|
||||
- set deprecated config options back in App config
|
||||
([433745f](https://code.podlibre.org/podlibre/castopod-host/commit/433745f194c73407999b207090478563283876a5))
|
||||
([433745f](https://code.castopod.org/ad-aures/castopod/commit/433745f194c73407999b207090478563283876a5))
|
||||
- **soundbites:** remove soundbite table from episode's public page
|
||||
([5dc0f19](https://code.podlibre.org/podlibre/castopod-host/commit/5dc0f19656de0d764f627d6ae78a9e306c901835))
|
||||
([5dc0f19](https://code.castopod.org/ad-aures/castopod/commit/5dc0f19656de0d764f627d6ae78a9e306c901835))
|
||||
- use basic input file for episodes audio files instead of button for better UX
|
||||
([d5f22fb](https://code.podlibre.org/podlibre/castopod-host/commit/d5f22fbb38c43d9b37df401eff655958a57cb40a))
|
||||
([d5f22fb](https://code.castopod.org/ad-aures/castopod/commit/d5f22fbb38c43d9b37df401eff655958a57cb40a))
|
||||
|
||||
### BREAKING CHANGES
|
||||
|
||||
- **analytics:** analytics_podcasts_by_player table and analytics_podcasts
|
||||
procedure were updated
|
||||
|
||||
# [1.0.0-alpha.80](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.79...v1.0.0-alpha.80) (2021-12-29)
|
||||
# [1.0.0-alpha.80](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.79...v1.0.0-alpha.80) (2021-12-29)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- add application/octet-stream mimetype to mp3 and m4a extensions to prevent
|
||||
ext_in error
|
||||
([339bef8](https://code.podlibre.org/podlibre/castopod-host/commit/339bef878e54983d86e91e6ff7a931a843d321b3)),
|
||||
closes [#145](https://code.podlibre.org/podlibre/castopod-host/issues/145)
|
||||
([339bef8](https://code.castopod.org/ad-aures/castopod/commit/339bef878e54983d86e91e6ff7a931a843d321b3)),
|
||||
closes [#145](https://code.castopod.org/ad-aures/castopod/issues/145)
|
||||
|
||||
# [1.0.0-alpha.79](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.78...v1.0.0-alpha.79) (2021-12-20)
|
||||
# [1.0.0-alpha.79](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.78...v1.0.0-alpha.79) (2021-12-20)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- **import:** set episode and season numbers to null when not present in item
|
||||
tag
|
||||
([3211398](https://code.podlibre.org/podlibre/castopod-host/commit/3211398c78b1b28b76a46427ee07874bbf84a85d))
|
||||
([3211398](https://code.castopod.org/ad-aures/castopod/commit/3211398c78b1b28b76a46427ee07874bbf84a85d))
|
||||
|
||||
# [1.0.0-alpha.78](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.77...v1.0.0-alpha.78) (2021-12-15)
|
||||
# [1.0.0-alpha.78](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.77...v1.0.0-alpha.78) (2021-12-15)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- **import:** add extension when downloading file without + truncate slug if too
|
||||
long
|
||||
([c5f18bb](https://code.podlibre.org/podlibre/castopod-host/commit/c5f18bb6dc08a758ff735454bbe9cfa45a68c09b))
|
||||
([c5f18bb](https://code.castopod.org/ad-aures/castopod/commit/c5f18bb6dc08a758ff735454bbe9cfa45a68c09b))
|
||||
|
||||
# [1.0.0-alpha.77](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.76...v1.0.0-alpha.77) (2021-11-23)
|
||||
# [1.0.0-alpha.77](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.76...v1.0.0-alpha.77) (2021-11-23)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- **cors:** add preflight option routes for episode, podcast and status objects
|
||||
([a281abf](https://code.podlibre.org/podlibre/castopod-host/commit/a281abfda475388a07943c169dab460cc2d4f944))
|
||||
([a281abf](https://code.castopod.org/ad-aures/castopod/commit/a281abfda475388a07943c169dab460cc2d4f944))
|
||||
- **podcast-import:** move guid attribute declaration for Episode entity to
|
||||
include slug data
|
||||
([5d02ae3](https://code.podlibre.org/podlibre/castopod-host/commit/5d02ae39908a9d743627135b372bf981134c4328))
|
||||
([5d02ae3](https://code.castopod.org/ad-aures/castopod/commit/5d02ae39908a9d743627135b372bf981134c4328))
|
||||
|
||||
# [1.0.0-alpha.76](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.75...v1.0.0-alpha.76) (2021-10-26)
|
||||
# [1.0.0-alpha.76](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.75...v1.0.0-alpha.76) (2021-10-26)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- replace hardcoded style links with vite service + set default value for remote
|
||||
transcript url
|
||||
([3f2e056](https://code.podlibre.org/podlibre/castopod-host/commit/3f2e05608e43d47bbb518a9acfaf56ec3eefafb4)),
|
||||
closes [#149](https://code.podlibre.org/podlibre/castopod-host/issues/149)
|
||||
[#150](https://code.podlibre.org/podlibre/castopod-host/issues/150)
|
||||
([3f2e056](https://code.castopod.org/ad-aures/castopod/commit/3f2e05608e43d47bbb518a9acfaf56ec3eefafb4)),
|
||||
closes [#149](https://code.castopod.org/ad-aures/castopod/issues/149)
|
||||
[#150](https://code.castopod.org/ad-aures/castopod/issues/150)
|
||||
|
||||
# [1.0.0-alpha.75](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.74...v1.0.0-alpha.75) (2021-10-05)
|
||||
# [1.0.0-alpha.75](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.74...v1.0.0-alpha.75) (2021-10-05)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- **rss:** cast number type values to string in rss_helper
|
||||
([7180ae9](https://code.podlibre.org/podlibre/castopod-host/commit/7180ae9ec700930b69c04ed91f8eceea16ad77ce)),
|
||||
closes [#148](https://code.podlibre.org/podlibre/castopod-host/issues/148)
|
||||
([7180ae9](https://code.castopod.org/ad-aures/castopod/commit/7180ae9ec700930b69c04ed91f8eceea16ad77ce)),
|
||||
closes [#148](https://code.castopod.org/ad-aures/castopod/issues/148)
|
||||
|
||||
# [1.0.0-alpha.74](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.73...v1.0.0-alpha.74) (2021-09-28)
|
||||
# [1.0.0-alpha.74](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.73...v1.0.0-alpha.74) (2021-09-28)
|
||||
|
||||
### Features
|
||||
|
||||
- **platforms:** add missing newpodcastapps.com's platforms
|
||||
([92dd370](https://code.podlibre.org/podlibre/castopod-host/commit/92dd370e2f9a464edd26cddcde96d0e16f91548d))
|
||||
([92dd370](https://code.castopod.org/ad-aures/castopod/commit/92dd370e2f9a464edd26cddcde96d0e16f91548d))
|
||||
|
||||
# [1.0.0-alpha.73](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.72...v1.0.0-alpha.73) (2021-09-22)
|
||||
# [1.0.0-alpha.73](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.72...v1.0.0-alpha.73) (2021-09-22)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- **map:** update episode markers query to discard unpublished episodes
|
||||
([b3caac4](https://code.podlibre.org/podlibre/castopod-host/commit/b3caac45b12a23e4289d00133d2ad7915d084c44))
|
||||
([b3caac4](https://code.castopod.org/ad-aures/castopod/commit/b3caac45b12a23e4289d00133d2ad7915d084c44))
|
||||
|
||||
# [1.0.0-alpha.72](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.71...v1.0.0-alpha.72) (2021-09-20)
|
||||
# [1.0.0-alpha.72](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.71...v1.0.0-alpha.72) (2021-09-20)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- rename field status to task_status to get scheduled activities
|
||||
([4ff82a5](https://code.podlibre.org/podlibre/castopod-host/commit/4ff82a5f0a38dbbc9e272fca7df70ea5a190e334))
|
||||
([4ff82a5](https://code.castopod.org/ad-aures/castopod/commit/4ff82a5f0a38dbbc9e272fca7df70ea5a190e334))
|
||||
|
||||
# [1.0.0-alpha.71](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.70...v1.0.0-alpha.71) (2021-09-17)
|
||||
# [1.0.0-alpha.71](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.70...v1.0.0-alpha.71) (2021-09-17)
|
||||
|
||||
### Features
|
||||
|
||||
- **map:** display geolocated episodes on a map page
|
||||
([4357cc2](https://code.podlibre.org/podlibre/castopod-host/commit/4357cc25ccc585ce398035c1c25d566b6a9df775))
|
||||
([4357cc2](https://code.castopod.org/ad-aures/castopod/commit/4357cc25ccc585ce398035c1c25d566b6a9df775))
|
||||
|
||||
# [1.0.0-alpha.70](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.69...v1.0.0-alpha.70) (2021-08-31)
|
||||
# [1.0.0-alpha.70](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.69...v1.0.0-alpha.70) (2021-08-31)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- **partner:** set correct image URL
|
||||
([61554be](https://code.podlibre.org/podlibre/castopod-host/commit/61554be12a64d59ab99fab810b1b05632b408f3a))
|
||||
([61554be](https://code.castopod.org/ad-aures/castopod/commit/61554be12a64d59ab99fab810b1b05632b408f3a))
|
||||
|
||||
# [1.0.0-alpha.69](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.68...v1.0.0-alpha.69) (2021-08-23)
|
||||
# [1.0.0-alpha.69](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.68...v1.0.0-alpha.69) (2021-08-23)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- **import:** cast description's SimpleXMLElement to string
|
||||
([02d17be](https://code.podlibre.org/podlibre/castopod-host/commit/02d17be4ffe229fc6657207d31eba0543b5f1a4c))
|
||||
([02d17be](https://code.castopod.org/ad-aures/castopod/commit/02d17be4ffe229fc6657207d31eba0543b5f1a4c))
|
||||
|
||||
# [1.0.0-alpha.68](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.67...v1.0.0-alpha.68) (2021-08-19)
|
||||
# [1.0.0-alpha.68](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.67...v1.0.0-alpha.68) (2021-08-19)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- **analytics:** redirect to mp3 file even when referer was not set
|
||||
([9fc388d](https://code.podlibre.org/podlibre/castopod-host/commit/9fc388d154f29c335dedcd624abe8c1751762c07))
|
||||
([9fc388d](https://code.castopod.org/ad-aures/castopod/commit/9fc388d154f29c335dedcd624abe8c1751762c07))
|
||||
|
||||
# [1.0.0-alpha.67](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.66...v1.0.0-alpha.67) (2021-07-24)
|
||||
# [1.0.0-alpha.67](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.66...v1.0.0-alpha.67) (2021-07-24)
|
||||
|
||||
### Features
|
||||
|
||||
- allow cross origin requests on episode comments
|
||||
([e12f95a](https://code.podlibre.org/podlibre/castopod-host/commit/e12f95aca13c6d54489a9cfd99d4cd2490fe83ab))
|
||||
([e12f95a](https://code.castopod.org/ad-aures/castopod/commit/e12f95aca13c6d54489a9cfd99d4cd2490fe83ab))
|
||||
|
||||
# [1.0.0-alpha.66](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.65...v1.0.0-alpha.66) (2021-07-24)
|
||||
# [1.0.0-alpha.66](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.65...v1.0.0-alpha.66) (2021-07-24)
|
||||
|
||||
### Features
|
||||
|
||||
- **rss:** add podcast:comments tag to link to episode comments
|
||||
([32e8c7c](https://code.podlibre.org/podlibre/castopod-host/commit/32e8c7c16a61ffe08e2f3bfbdeda556811a0358c))
|
||||
([32e8c7c](https://code.castopod.org/ad-aures/castopod/commit/32e8c7c16a61ffe08e2f3bfbdeda556811a0358c))
|
||||
|
||||
# [1.0.0-alpha.65](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.64...v1.0.0-alpha.65) (2021-07-22)
|
||||
# [1.0.0-alpha.65](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.64...v1.0.0-alpha.65) (2021-07-22)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- update conditions when checking for empty max_episodes and season_number
|
||||
([fbad0b5](https://code.podlibre.org/podlibre/castopod-host/commit/fbad0b59f68c65eba2fdcd5a8d3b312b622e9a45))
|
||||
([fbad0b5](https://code.castopod.org/ad-aures/castopod/commit/fbad0b59f68c65eba2fdcd5a8d3b312b622e9a45))
|
||||
|
||||
# [1.0.0-alpha.64](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.63...v1.0.0-alpha.64) (2021-07-12)
|
||||
# [1.0.0-alpha.64](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.63...v1.0.0-alpha.64) (2021-07-12)
|
||||
|
||||
### Features
|
||||
|
||||
- **activitypub:** add Podcast actor and PodcastEpisode object with comments
|
||||
([9e1e5d2](https://code.podlibre.org/podlibre/castopod-host/commit/9e1e5d2e862d6a3345d11ca7f96b955c76bfa013))
|
||||
([9e1e5d2](https://code.castopod.org/ad-aures/castopod/commit/9e1e5d2e862d6a3345d11ca7f96b955c76bfa013))
|
||||
|
||||
# [1.0.0-alpha.63](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.62...v1.0.0-alpha.63) (2021-07-12)
|
||||
# [1.0.0-alpha.63](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.62...v1.0.0-alpha.63) (2021-07-12)
|
||||
|
||||
### Features
|
||||
|
||||
- build hashed static files to renew browser cache
|
||||
([37c54d2](https://code.podlibre.org/podlibre/castopod-host/commit/37c54d247749bdf8f528babd4a78f24d48051063)),
|
||||
closes [#107](https://code.podlibre.org/podlibre/castopod-host/issues/107)
|
||||
([37c54d2](https://code.castopod.org/ad-aures/castopod/commit/37c54d247749bdf8f528babd4a78f24d48051063)),
|
||||
closes [#107](https://code.castopod.org/ad-aures/castopod/issues/107)
|
||||
|
||||
# [1.0.0-alpha.62](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.61...v1.0.0-alpha.62) (2021-07-02)
|
||||
# [1.0.0-alpha.62](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.61...v1.0.0-alpha.62) (2021-07-02)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- **episode:** replace guid's empty string value to null
|
||||
([441052a](https://code.podlibre.org/podlibre/castopod-host/commit/441052af8d99e6e317edefd1e58ad71799357088))
|
||||
([441052a](https://code.castopod.org/ad-aures/castopod/commit/441052af8d99e6e317edefd1e58ad71799357088))
|
||||
|
||||
# [1.0.0-alpha.61](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.60...v1.0.0-alpha.61) (2021-06-23)
|
||||
# [1.0.0-alpha.61](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.60...v1.0.0-alpha.61) (2021-06-23)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- **release:** add missing version number to castopod-host package
|
||||
([8f3e9d9](https://code.podlibre.org/podlibre/castopod-host/commit/8f3e9d90c14545d3f84d4469b26a53db4554b4dc))
|
||||
([8f3e9d9](https://code.castopod.org/ad-aures/castopod/commit/8f3e9d90c14545d3f84d4469b26a53db4554b4dc))
|
||||
- **ux:** allow for empty message upon episode publication and warn user on
|
||||
submit
|
||||
([33d01b8](https://code.podlibre.org/podlibre/castopod-host/commit/33d01b8d4fd6ebf24e9f011aa705c456c846956c)),
|
||||
closes [#129](https://code.podlibre.org/podlibre/castopod-host/issues/129)
|
||||
([33d01b8](https://code.castopod.org/ad-aures/castopod/commit/33d01b8d4fd6ebf24e9f011aa705c456c846956c)),
|
||||
closes [#129](https://code.castopod.org/ad-aures/castopod/issues/129)
|
||||
|
||||
# [1.0.0-alpha.60](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.59...v1.0.0-alpha.60) (2021-06-21)
|
||||
# [1.0.0-alpha.60](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.59...v1.0.0-alpha.60) (2021-06-21)
|
||||
|
||||
### Features
|
||||
|
||||
- **rss:** add ˂podcast:guid˃ tag for channel
|
||||
([1fab10e](https://code.podlibre.org/podlibre/castopod-host/commit/1fab10eb0d63bb7c3edf34ffe691e2aec2c2e43c))
|
||||
([1fab10e](https://code.castopod.org/ad-aures/castopod/commit/1fab10eb0d63bb7c3edf34ffe691e2aec2c2e43c))
|
||||
|
||||
# [1.0.0-alpha.59](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.58...v1.0.0-alpha.59) (2021-06-15)
|
||||
# [1.0.0-alpha.59](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.58...v1.0.0-alpha.59) (2021-06-15)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- check that additional files are valid when creating episode
|
||||
([eac5bc8](https://code.podlibre.org/podlibre/castopod-host/commit/eac5bc876de125e1fe08d1b89f767a04fc0fbfb6))
|
||||
([eac5bc8](https://code.castopod.org/ad-aures/castopod/commit/eac5bc876de125e1fe08d1b89f767a04fc0fbfb6))
|
||||
|
||||
# [1.0.0-alpha.58](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.57...v1.0.0-alpha.58) (2021-06-11)
|
||||
# [1.0.0-alpha.58](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.57...v1.0.0-alpha.58) (2021-06-11)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- cast actor_id to pass as int to set_interact_as_actor() function
|
||||
([56a8e5d](https://code.podlibre.org/podlibre/castopod-host/commit/56a8e5d7dd615322aeb007e730801c65d0b02e5c))
|
||||
([56a8e5d](https://code.castopod.org/ad-aures/castopod/commit/56a8e5d7dd615322aeb007e730801c65d0b02e5c))
|
||||
- **analytics:** set duration field to precise decimal as episode's audio file
|
||||
duration
|
||||
([d772685](https://code.podlibre.org/podlibre/castopod-host/commit/d77268540569b2be9d91d5e09aefb3ff5ac2b071))
|
||||
([d772685](https://code.castopod.org/ad-aures/castopod/commit/d77268540569b2be9d91d5e09aefb3ff5ac2b071))
|
||||
- **analytics:** update migrations to set decimal precision for latitude and
|
||||
longitude
|
||||
([714d6b5](https://code.podlibre.org/podlibre/castopod-host/commit/714d6b5d4950e52cf1c3170bb59954f98ffd48bd))
|
||||
([714d6b5](https://code.castopod.org/ad-aures/castopod/commit/714d6b5d4950e52cf1c3170bb59954f98ffd48bd))
|
||||
- check for database connection and podcasts table existence before redirecting
|
||||
to install
|
||||
([eb74e81](https://code.podlibre.org/podlibre/castopod-host/commit/eb74e81c3d93581e310b391cd029e62a0d690a8a))
|
||||
([eb74e81](https://code.castopod.org/ad-aures/castopod/commit/eb74e81c3d93581e310b391cd029e62a0d690a8a))
|
||||
- save transcript and chapters files to podcasts folder
|
||||
([63f49c7](https://code.podlibre.org/podlibre/castopod-host/commit/63f49c719f672b615c5a8893d3868dffcd332e47))
|
||||
([63f49c7](https://code.castopod.org/ad-aures/castopod/commit/63f49c719f672b615c5a8893d3868dffcd332e47))
|
||||
- set cache expiration to next note publish to show note on publication date
|
||||
([0a66de3](https://code.podlibre.org/podlibre/castopod-host/commit/0a66de3e6c17d4ac94ee8e13bd00ceaf64b1303e))
|
||||
([0a66de3](https://code.castopod.org/ad-aures/castopod/commit/0a66de3e6c17d4ac94ee8e13bd00ceaf64b1303e))
|
||||
- set episode description footer to null when empty value
|
||||
([3a7d97d](https://code.podlibre.org/podlibre/castopod-host/commit/3a7d97d660046d80698611311ff3708110d2af82))
|
||||
([3a7d97d](https://code.castopod.org/ad-aures/castopod/commit/3a7d97d660046d80698611311ff3708110d2af82))
|
||||
- set location to null when getting empty string
|
||||
([71b1b5f](https://code.podlibre.org/podlibre/castopod-host/commit/71b1b5f775af475b1dc78328330e277f565e41b6))
|
||||
([71b1b5f](https://code.castopod.org/ad-aures/castopod/commit/71b1b5f775af475b1dc78328330e277f565e41b6))
|
||||
- update condition in home controller to redirect to install page
|
||||
([33f1b91](https://code.podlibre.org/podlibre/castopod-host/commit/33f1b91d55dd0652c979d50fc85879dbf88a4a42))
|
||||
([33f1b91](https://code.castopod.org/ad-aures/castopod/commit/33f1b91d55dd0652c979d50fc85879dbf88a4a42))
|
||||
- **activity-pub:** cache issues when navigating to activity stream urls
|
||||
([7bcbfb3](https://code.podlibre.org/podlibre/castopod-host/commit/7bcbfb32f7cca08d111be46c7f1640e372d4a4b0))
|
||||
([7bcbfb3](https://code.castopod.org/ad-aures/castopod/commit/7bcbfb32f7cca08d111be46c7f1640e372d4a4b0))
|
||||
- **activity-pub:** get database records using new model instances
|
||||
([92536dd](https://code.podlibre.org/podlibre/castopod-host/commit/92536ddb3812214a9c5682b92e547e5c1998a5d7))
|
||||
([92536dd](https://code.castopod.org/ad-aures/castopod/commit/92536ddb3812214a9c5682b92e547e5c1998a5d7))
|
||||
- **category:** remove uncategorized option to enforce users in choosing a
|
||||
category
|
||||
([8c64f25](https://code.podlibre.org/podlibre/castopod-host/commit/8c64f25a0e72fec03d25544797d32623b2276fce))
|
||||
([8c64f25](https://code.castopod.org/ad-aures/castopod/commit/8c64f25a0e72fec03d25544797d32623b2276fce))
|
||||
- **install:** redirect manually to install wizard on first visit
|
||||
([2ceaaca](https://code.podlibre.org/podlibre/castopod-host/commit/2ceaaca44f1b82fc64d961e2fb4f4aaeade7e736))
|
||||
([2ceaaca](https://code.castopod.org/ad-aures/castopod/commit/2ceaaca44f1b82fc64d961e2fb4f4aaeade7e736))
|
||||
- **types:** update fake seeders types + fix bugs
|
||||
([76a4bf3](https://code.podlibre.org/podlibre/castopod-host/commit/76a4bf344160df679db29e236e7df7822970fb60))
|
||||
([76a4bf3](https://code.castopod.org/ad-aures/castopod/commit/76a4bf344160df679db29e236e7df7822970fb60))
|
||||
- update broken contributor dropdown fields
|
||||
([e5b7515](https://code.podlibre.org/podlibre/castopod-host/commit/e5b75150234bd7f19e01def93425d3bda7379dd3))
|
||||
([e5b7515](https://code.castopod.org/ad-aures/castopod/commit/e5b75150234bd7f19e01def93425d3bda7379dd3))
|
||||
- **ux:** redirect user to install page on database error in home page
|
||||
([9017e30](https://code.podlibre.org/podlibre/castopod-host/commit/9017e30bf41bed8c2be65091bbc5fb1e63aef87a))
|
||||
([9017e30](https://code.castopod.org/ad-aures/castopod/commit/9017e30bf41bed8c2be65091bbc5fb1e63aef87a))
|
||||
- update condition in AnalyticsTrait
|
||||
([fbc0967](https://code.podlibre.org/podlibre/castopod-host/commit/fbc0967caa81630d514ddb1b93b0834ebb4d913b))
|
||||
([fbc0967](https://code.castopod.org/ad-aures/castopod/commit/fbc0967caa81630d514ddb1b93b0834ebb4d913b))
|
||||
|
||||
### Performance Improvements
|
||||
|
||||
- **cache:** use deleteMatching method to prevent forgetting cached elements in
|
||||
models
|
||||
([76afc0c](https://code.podlibre.org/podlibre/castopod-host/commit/76afc0cfa2feb087697bae4bc138e4956873dd62))
|
||||
([76afc0c](https://code.castopod.org/ad-aures/castopod/commit/76afc0cfa2feb087697bae4bc138e4956873dd62))
|
||||
|
||||
### Reverts
|
||||
|
||||
- set deprecated config options back in App config
|
||||
([433745f](https://code.podlibre.org/podlibre/castopod-host/commit/433745f194c73407999b207090478563283876a5))
|
||||
([433745f](https://code.castopod.org/ad-aures/castopod/commit/433745f194c73407999b207090478563283876a5))
|
||||
|
||||
# [1.0.0-alpha.57](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.56...v1.0.0-alpha.57) (2021-05-12)
|
||||
# [1.0.0-alpha.57](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.56...v1.0.0-alpha.57) (2021-05-12)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- **follow:** add missing helpers to Actor controller
|
||||
([ee53a73](https://code.podlibre.org/podlibre/castopod-host/commit/ee53a732dc12ebbf5706e14969749a12cfd9d559))
|
||||
([ee53a73](https://code.castopod.org/ad-aures/castopod/commit/ee53a732dc12ebbf5706e14969749a12cfd9d559))
|
||||
|
||||
# [1.0.0-alpha.56](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.55...v1.0.0-alpha.56) (2021-05-12)
|
||||
# [1.0.0-alpha.56](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.55...v1.0.0-alpha.56) (2021-05-12)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- **rss:** use originalPath instead of originalMediaPath in Image library
|
||||
([b4012b7](https://code.podlibre.org/podlibre/castopod-host/commit/b4012b7d2ed6b34b69ad767570dd33f0dc7db920))
|
||||
([b4012b7](https://code.castopod.org/ad-aures/castopod/commit/b4012b7d2ed6b34b69ad767570dd33f0dc7db920))
|
||||
|
||||
# [1.0.0-alpha.55](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.54...v1.0.0-alpha.55) (2021-05-03)
|
||||
# [1.0.0-alpha.55](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.54...v1.0.0-alpha.55) (2021-05-03)
|
||||
|
||||
### Features
|
||||
|
||||
- add remote_url alternative for transcript and chapters files
|
||||
([3143c9a](https://code.podlibre.org/podlibre/castopod-host/commit/3143c9ad36e4cf1364205cf2be39c0c96f80fdd2))
|
||||
([3143c9a](https://code.castopod.org/ad-aures/castopod/commit/3143c9ad36e4cf1364205cf2be39c0c96f80fdd2))
|
||||
|
||||
# [1.0.0-alpha.54](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.53...v1.0.0-alpha.54) (2021-05-03)
|
||||
# [1.0.0-alpha.54](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.53...v1.0.0-alpha.54) (2021-05-03)
|
||||
|
||||
### Features
|
||||
|
||||
- set app parameter forceGlobalSecureRequests = true forcing requests to go
|
||||
through https
|
||||
([d9dff1b](https://code.podlibre.org/podlibre/castopod-host/commit/d9dff1b8bf89c8b526ad6cb89f98a1f160d49117))
|
||||
([d9dff1b](https://code.castopod.org/ad-aures/castopod/commit/d9dff1b8bf89c8b526ad6cb89f98a1f160d49117))
|
||||
- **ux:** remove admin dashboard and redirect directly to podcast list
|
||||
([27c48b8](https://code.podlibre.org/podlibre/castopod-host/commit/27c48b8fa930b33e5e15f0c8685e468e857ca9cd))
|
||||
([27c48b8](https://code.castopod.org/ad-aures/castopod/commit/27c48b8fa930b33e5e15f0c8685e468e857ca9cd))
|
||||
- add cache to ActivityPub sql queries + cache activity and note pages
|
||||
([2d297f4](https://code.podlibre.org/podlibre/castopod-host/commit/2d297f45b3d7ef6e8711875a0b9b908e878115fa))
|
||||
([2d297f4](https://code.castopod.org/ad-aures/castopod/commit/2d297f45b3d7ef6e8711875a0b9b908e878115fa))
|
||||
|
||||
### Performance Improvements
|
||||
|
||||
- **cache:** update CI4 to use cache's deleteMatching method
|
||||
([54b84f9](https://code.podlibre.org/podlibre/castopod-host/commit/54b84f96843af13f579fea49102c8c2ef81b0a54))
|
||||
([54b84f9](https://code.castopod.org/ad-aures/castopod/commit/54b84f96843af13f579fea49102c8c2ef81b0a54))
|
||||
- **docker:** add redis caching service for development
|
||||
([05ace8c](https://code.podlibre.org/podlibre/castopod-host/commit/05ace8cff2ef02d19abd40097ac5546dca6a54ca))
|
||||
([05ace8c](https://code.castopod.org/ad-aures/castopod/commit/05ace8cff2ef02d19abd40097ac5546dca6a54ca))
|
||||
|
||||
# [1.0.0-alpha.53](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.52...v1.0.0-alpha.53) (2021-04-16)
|
||||
# [1.0.0-alpha.53](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.52...v1.0.0-alpha.53) (2021-04-16)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- check that note has a preview_card_id before displaying it
|
||||
([acb8b3a](https://code.podlibre.org/podlibre/castopod/commit/acb8b3a40172ccb184ffe544760601d756692e6c)),
|
||||
closes [#114](https://code.podlibre.org/podlibre/castopod/issues/114)
|
||||
([acb8b3a](https://code.castopod.org/ad-aures/castopod/commit/acb8b3a40172ccb184ffe544760601d756692e6c)),
|
||||
closes [#114](https://code.castopod.org/ad-aures/castopod/issues/114)
|
||||
|
||||
# [1.0.0-alpha.52](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.51...v1.0.0-alpha.52) (2021-04-16)
|
||||
# [1.0.0-alpha.52](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.51...v1.0.0-alpha.52) (2021-04-16)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- **avatar:** use default avatar when no avatar url has been set
|
||||
([9d23c7e](https://code.podlibre.org/podlibre/castopod/commit/9d23c7e7e142c6cf1a1418e37e41d711064593c4)),
|
||||
closes [#111](https://code.podlibre.org/podlibre/castopod/issues/111)
|
||||
([9d23c7e](https://code.castopod.org/ad-aures/castopod/commit/9d23c7e7e142c6cf1a1418e37e41d711064593c4)),
|
||||
closes [#111](https://code.castopod.org/ad-aures/castopod/issues/111)
|
||||
|
||||
# [1.0.0-alpha.51](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.50...v1.0.0-alpha.51) (2021-04-15)
|
||||
# [1.0.0-alpha.51](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.50...v1.0.0-alpha.51) (2021-04-15)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- **interact-as:** set actor_id instead of podcast id upon login event
|
||||
([5dfade7](https://code.podlibre.org/podlibre/castopod/commit/5dfade7cf37f339c56d2e577c679b88a1b1d9336)),
|
||||
closes [#104](https://code.podlibre.org/podlibre/castopod/issues/104)
|
||||
([5dfade7](https://code.castopod.org/ad-aures/castopod/commit/5dfade7cf37f339c56d2e577c679b88a1b1d9336)),
|
||||
closes [#104](https://code.castopod.org/ad-aures/castopod/issues/104)
|
||||
|
||||
# [1.0.0-alpha.50](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.49...v1.0.0-alpha.50) (2021-04-14)
|
||||
# [1.0.0-alpha.50](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.49...v1.0.0-alpha.50) (2021-04-14)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- **persons:** prevent overflow of persons list by adding horizontal scroll
|
||||
([9e8995d](https://code.podlibre.org/podlibre/castopod/commit/9e8995dc6e039032cc65f87895cf770f99e8b244))
|
||||
([9e8995d](https://code.castopod.org/ad-aures/castopod/commit/9e8995dc6e039032cc65f87895cf770f99e8b244))
|
||||
|
||||
# [1.0.0-alpha.49](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.48...v1.0.0-alpha.49) (2021-04-12)
|
||||
# [1.0.0-alpha.49](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.48...v1.0.0-alpha.49) (2021-04-12)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- **multiselect:** add missing class names in choices options for purge to work
|
||||
properly
|
||||
([719538d](https://code.podlibre.org/podlibre/castopod/commit/719538d0ccb28af3c3c5e1a4b6468d4b772fe819))
|
||||
([719538d](https://code.castopod.org/ad-aures/castopod/commit/719538d0ccb28af3c3c5e1a4b6468d4b772fe819))
|
||||
|
||||
# [1.0.0-alpha.48](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.47...v1.0.0-alpha.48) (2021-04-10)
|
||||
# [1.0.0-alpha.48](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.47...v1.0.0-alpha.48) (2021-04-10)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- **import-with-escaped-characters:** remove \CodeIgniter\HTTP\URI in
|
||||
download_file, closes
|
||||
[#103](https://code.podlibre.org/podlibre/castopod/issues/103)
|
||||
([35b5be0](https://code.podlibre.org/podlibre/castopod/commit/35b5be095ff54d27acec1610a846ec0cdbdf1d65))
|
||||
[#103](https://code.castopod.org/ad-aures/castopod/issues/103)
|
||||
([35b5be0](https://code.castopod.org/ad-aures/castopod/commit/35b5be095ff54d27acec1610a846ec0cdbdf1d65))
|
||||
|
||||
# [1.0.0-alpha.47](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.46...v1.0.0-alpha.47) (2021-04-10)
|
||||
# [1.0.0-alpha.47](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.46...v1.0.0-alpha.47) (2021-04-10)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- **episodeCount:** add missing brackets to French language file
|
||||
([c1b4112](https://code.podlibre.org/podlibre/castopod/commit/c1b411265ad9b06e95a8b097ecf73445b88dcb45))
|
||||
([c1b4112](https://code.castopod.org/ad-aures/castopod/commit/c1b411265ad9b06e95a8b097ecf73445b88dcb45))
|
||||
|
||||
# [1.0.0-alpha.46](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.45...v1.0.0-alpha.46) (2021-04-09)
|
||||
# [1.0.0-alpha.46](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.45...v1.0.0-alpha.46) (2021-04-09)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- **episodes-page:** handle defaultQuery being null when no podcast episodes
|
||||
([15183b7](https://code.podlibre.org/podlibre/castopod/commit/15183b7eab57dac007bcdfa8c3651239de1ae05a)),
|
||||
closes [#100](https://code.podlibre.org/podlibre/castopod/issues/100)
|
||||
([15183b7](https://code.castopod.org/ad-aures/castopod/commit/15183b7eab57dac007bcdfa8c3651239de1ae05a)),
|
||||
closes [#100](https://code.castopod.org/ad-aures/castopod/issues/100)
|
||||
|
||||
# [1.0.0-alpha.45](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.44...v1.0.0-alpha.45) (2021-04-08)
|
||||
# [1.0.0-alpha.45](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.44...v1.0.0-alpha.45) (2021-04-08)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- add head request to analytics_hit route
|
||||
([f0a2f0b](https://code.podlibre.org/podlibre/castopod/commit/f0a2f0bea491ca91976b351bb79837e95c9d094b))
|
||||
([f0a2f0b](https://code.castopod.org/ad-aures/castopod/commit/f0a2f0bea491ca91976b351bb79837e95c9d094b))
|
||||
|
||||
# [1.0.0-alpha.44](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.43...v1.0.0-alpha.44) (2021-04-08)
|
||||
# [1.0.0-alpha.44](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.43...v1.0.0-alpha.44) (2021-04-08)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- **rss:** set ❬itunes:author❭ tag to owner_name if publisher not specified
|
||||
([2271c14](https://code.podlibre.org/podlibre/castopod/commit/2271c1445b1ded12bc53b5d23b5e59d12b17c71a)),
|
||||
closes [#96](https://code.podlibre.org/podlibre/castopod/issues/96)
|
||||
([2271c14](https://code.castopod.org/ad-aures/castopod/commit/2271c1445b1ded12bc53b5d23b5e59d12b17c71a)),
|
||||
closes [#96](https://code.castopod.org/ad-aures/castopod/issues/96)
|
||||
|
||||
# [1.0.0-alpha.43](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.42...v1.0.0-alpha.43) (2021-04-08)
|
||||
# [1.0.0-alpha.43](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.42...v1.0.0-alpha.43) (2021-04-08)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- **episode-form:** show warning to set `memory_limit`, `upload_max_filesize` &
|
||||
`post_max_size`
|
||||
([3b3c218](https://code.podlibre.org/podlibre/castopod/commit/3b3c218b9c868e9f12c54d7670e69d84c9ee79c0)),
|
||||
closes [#5](https://code.podlibre.org/podlibre/castopod/issues/5)
|
||||
[#86](https://code.podlibre.org/podlibre/castopod/issues/86)
|
||||
([3b3c218](https://code.castopod.org/ad-aures/castopod/commit/3b3c218b9c868e9f12c54d7670e69d84c9ee79c0)),
|
||||
closes [#5](https://code.castopod.org/ad-aures/castopod/issues/5)
|
||||
[#86](https://code.castopod.org/ad-aures/castopod/issues/86)
|
||||
|
||||
# [1.0.0-alpha.42](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.41...v1.0.0-alpha.42) (2021-04-02)
|
||||
# [1.0.0-alpha.42](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.41...v1.0.0-alpha.42) (2021-04-02)
|
||||
|
||||
### Features
|
||||
|
||||
- **fediverse:** implement activitypub protocols + update user interface
|
||||
([2f525c0](https://code.podlibre.org/podlibre/castopod/commit/2f525c0f6e44d320bff16e22c223481923ba683e)),
|
||||
closes [#69](https://code.podlibre.org/podlibre/castopod/issues/69)
|
||||
[#65](https://code.podlibre.org/podlibre/castopod/issues/65)
|
||||
[#85](https://code.podlibre.org/podlibre/castopod/issues/85)
|
||||
[#51](https://code.podlibre.org/podlibre/castopod/issues/51)
|
||||
[#91](https://code.podlibre.org/podlibre/castopod/issues/91)
|
||||
[#92](https://code.podlibre.org/podlibre/castopod/issues/92)
|
||||
[#88](https://code.podlibre.org/podlibre/castopod/issues/88)
|
||||
([2f525c0](https://code.castopod.org/ad-aures/castopod/commit/2f525c0f6e44d320bff16e22c223481923ba683e)),
|
||||
closes [#69](https://code.castopod.org/ad-aures/castopod/issues/69)
|
||||
[#65](https://code.castopod.org/ad-aures/castopod/issues/65)
|
||||
[#85](https://code.castopod.org/ad-aures/castopod/issues/85)
|
||||
[#51](https://code.castopod.org/ad-aures/castopod/issues/51)
|
||||
[#91](https://code.castopod.org/ad-aures/castopod/issues/91)
|
||||
[#92](https://code.castopod.org/ad-aures/castopod/issues/92)
|
||||
[#88](https://code.castopod.org/ad-aures/castopod/issues/88)
|
||||
|
||||
# [1.0.0-alpha.41](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.40...v1.0.0-alpha.41) (2021-03-30)
|
||||
# [1.0.0-alpha.41](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.40...v1.0.0-alpha.41) (2021-03-30)
|
||||
|
||||
### Features
|
||||
|
||||
- **partner:** add link and image in episode description
|
||||
([ad07bb9](https://code.podlibre.org/podlibre/castopod/commit/ad07bb9330dc9493813368e969e1f3a3def44614))
|
||||
([ad07bb9](https://code.castopod.org/ad-aures/castopod/commit/ad07bb9330dc9493813368e969e1f3a3def44614))
|
||||
|
||||
# [1.0.0-alpha.40](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.39...v1.0.0-alpha.40) (2021-03-19)
|
||||
# [1.0.0-alpha.40](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.39...v1.0.0-alpha.40) (2021-03-19)
|
||||
|
||||
### Features
|
||||
|
||||
- **custom-rss:** add custom xml tag injection in rss feed for ❬channel❭ and
|
||||
❬item❭
|
||||
([6ecdaad](https://code.podlibre.org/podlibre/castopod/commit/6ecdaad911d06b7f7a2b7d24710968c7eb9118f6))
|
||||
([6ecdaad](https://code.castopod.org/ad-aures/castopod/commit/6ecdaad911d06b7f7a2b7d24710968c7eb9118f6))
|
||||
|
||||
# [1.0.0-alpha.39](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.38...v1.0.0-alpha.39) (2021-03-01)
|
||||
# [1.0.0-alpha.39](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.38...v1.0.0-alpha.39) (2021-03-01)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- **embeddable-player:** enable any ancestor when X-Frame-Options is set on
|
||||
server
|
||||
([44a4962](https://code.podlibre.org/podlibre/castopod/commit/44a4962e0b7e3ed87e9914b4e7792a0d52330ff8))
|
||||
([44a4962](https://code.castopod.org/ad-aures/castopod/commit/44a4962e0b7e3ed87e9914b4e7792a0d52330ff8))
|
||||
|
||||
# [1.0.0-alpha.38](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.37...v1.0.0-alpha.38) (2021-02-27)
|
||||
# [1.0.0-alpha.38](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.37...v1.0.0-alpha.38) (2021-02-27)
|
||||
|
||||
### Features
|
||||
|
||||
- **embeddable-player:** add embeddable player widget
|
||||
([141788f](https://code.podlibre.org/podlibre/castopod/commit/141788fa089f9dedc8956c64ca515a4a4625f904))
|
||||
([141788f](https://code.castopod.org/ad-aures/castopod/commit/141788fa089f9dedc8956c64ca515a4a4625f904))
|
||||
|
||||
# [1.0.0-alpha.37](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.36...v1.0.0-alpha.37) (2021-02-17)
|
||||
# [1.0.0-alpha.37](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.36...v1.0.0-alpha.37) (2021-02-17)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- **import:** remove query string from files url
|
||||
([109c4aa](https://code.podlibre.org/podlibre/castopod/commit/109c4aa1afb72dd8b99c0302d74a7fef5a38638e))
|
||||
([109c4aa](https://code.castopod.org/ad-aures/castopod/commit/109c4aa1afb72dd8b99c0302d74a7fef5a38638e))
|
||||
|
||||
# [1.0.0-alpha.36](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.35...v1.0.0-alpha.36) (2021-02-16)
|
||||
# [1.0.0-alpha.36](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.35...v1.0.0-alpha.36) (2021-02-16)
|
||||
|
||||
### Features
|
||||
|
||||
- **platforms:** add pod.link
|
||||
([3d7a232](https://code.podlibre.org/podlibre/castopod/commit/3d7a2320ddd116e4a311605421126aff57243219))
|
||||
([3d7a232](https://code.castopod.org/ad-aures/castopod/commit/3d7a2320ddd116e4a311605421126aff57243219))
|
||||
|
||||
# [1.0.0-alpha.35](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.34...v1.0.0-alpha.35) (2021-02-12)
|
||||
# [1.0.0-alpha.35](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.34...v1.0.0-alpha.35) (2021-02-12)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- **admin:** save block and lock switches
|
||||
([b66c0af](https://code.podlibre.org/podlibre/castopod/commit/b66c0afc8fab2e338402a9a4f8105e5f5459e208))
|
||||
([b66c0af](https://code.castopod.org/ad-aures/castopod/commit/b66c0afc8fab2e338402a9a4f8105e5f5459e208))
|
||||
|
||||
# [1.0.0-alpha.34](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.33...v1.0.0-alpha.34) (2021-02-11)
|
||||
# [1.0.0-alpha.34](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.33...v1.0.0-alpha.34) (2021-02-11)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- **rss-import:** add Castopod user-agent, handle redirects for downloaded
|
||||
files, add Content namespace
|
||||
([214243b](https://code.podlibre.org/podlibre/castopod/commit/214243b3fec4937e45ef1ceaba1149004cdf3b44))
|
||||
([214243b](https://code.castopod.org/ad-aures/castopod/commit/214243b3fec4937e45ef1ceaba1149004cdf3b44))
|
||||
|
||||
# [1.0.0-alpha.33](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.32...v1.0.0-alpha.33) (2021-02-10)
|
||||
# [1.0.0-alpha.33](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.32...v1.0.0-alpha.33) (2021-02-10)
|
||||
|
||||
### Features
|
||||
|
||||
- **platforms:** add helloasso
|
||||
([16cb993](https://code.podlibre.org/podlibre/castopod/commit/16cb993ee6e28987a840fc27a9c2c73794c67697))
|
||||
([16cb993](https://code.castopod.org/ad-aures/castopod/commit/16cb993ee6e28987a840fc27a9c2c73794c67697))
|
||||
|
||||
# [1.0.0-alpha.32](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.31...v1.0.0-alpha.32) (2021-02-10)
|
||||
# [1.0.0-alpha.32](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.31...v1.0.0-alpha.32) (2021-02-10)
|
||||
|
||||
### Features
|
||||
|
||||
- **person:** add podcastindex.org namespace person tag
|
||||
([8acd011](https://code.podlibre.org/podlibre/castopod/commit/8acd011f13e99492ef4b44b327685bb006fe5f8f))
|
||||
([8acd011](https://code.castopod.org/ad-aures/castopod/commit/8acd011f13e99492ef4b44b327685bb006fe5f8f))
|
||||
|
||||
# [1.0.0-alpha.31](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.30...v1.0.0-alpha.31) (2020-12-23)
|
||||
# [1.0.0-alpha.31](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.30...v1.0.0-alpha.31) (2020-12-23)
|
||||
|
||||
### Features
|
||||
|
||||
- **rss:** add podcast:location tag
|
||||
([c0a2282](https://code.podlibre.org/podlibre/castopod/commit/c0a22829bd87d48535a86e60c6cd7280e44683a2))
|
||||
([c0a2282](https://code.castopod.org/ad-aures/castopod/commit/c0a22829bd87d48535a86e60c6cd7280e44683a2))
|
||||
|
||||
# [1.0.0-alpha.30](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.29...v1.0.0-alpha.30) (2020-12-21)
|
||||
# [1.0.0-alpha.30](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.29...v1.0.0-alpha.30) (2020-12-21)
|
||||
|
||||
### Features
|
||||
|
||||
- **rss:** update monetization tag so that it meets PodcastIndex requirements
|
||||
([4c7ecbe](https://code.podlibre.org/podlibre/castopod/commit/4c7ecbee83950e5f9f2482cedaab18a1ac9bfc9e))
|
||||
([4c7ecbe](https://code.castopod.org/ad-aures/castopod/commit/4c7ecbee83950e5f9f2482cedaab18a1ac9bfc9e))
|
||||
|
||||
# [1.0.0-alpha.29](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.28...v1.0.0-alpha.29) (2020-12-10)
|
||||
# [1.0.0-alpha.29](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.28...v1.0.0-alpha.29) (2020-12-10)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- **episodes:** add publication status + set publication date to null when none
|
||||
has been set
|
||||
([d882981](https://code.podlibre.org/podlibre/castopod/commit/d882981b3a86c81921ce6b07d4cf61fc13983689)),
|
||||
closes [#70](https://code.podlibre.org/podlibre/castopod/issues/70)
|
||||
([d882981](https://code.castopod.org/ad-aures/castopod/commit/d882981b3a86c81921ce6b07d4cf61fc13983689)),
|
||||
closes [#70](https://code.castopod.org/ad-aures/castopod/issues/70)
|
||||
|
||||
### Reverts
|
||||
|
||||
- **soundbites:** remove soundbite table from episode's public page
|
||||
([5dc0f19](https://code.podlibre.org/podlibre/castopod/commit/5dc0f19656de0d764f627d6ae78a9e306c901835))
|
||||
([5dc0f19](https://code.castopod.org/ad-aures/castopod/commit/5dc0f19656de0d764f627d6ae78a9e306c901835))
|
||||
|
||||
# [1.0.0-alpha.28](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.27...v1.0.0-alpha.28) (2020-12-07)
|
||||
# [1.0.0-alpha.28](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.27...v1.0.0-alpha.28) (2020-12-07)
|
||||
|
||||
### Features
|
||||
|
||||
- **rss:** add soundbites according to the podcastindex specs
|
||||
([6b34617](https://code.podlibre.org/podlibre/castopod/commit/6b34617d07c70522cb941e96d91d9987493413eb)),
|
||||
closes [#83](https://code.podlibre.org/podlibre/castopod/issues/83)
|
||||
([6b34617](https://code.castopod.org/ad-aures/castopod/commit/6b34617d07c70522cb941e96d91d9987493413eb)),
|
||||
closes [#83](https://code.castopod.org/ad-aures/castopod/issues/83)
|
||||
|
||||
# [1.0.0-alpha.27](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.26...v1.0.0-alpha.27) (2020-12-07)
|
||||
# [1.0.0-alpha.27](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.26...v1.0.0-alpha.27) (2020-12-07)
|
||||
|
||||
### Features
|
||||
|
||||
- **platforms:** add AntennaPod
|
||||
([53e9cfd](https://code.podlibre.org/podlibre/castopod/commit/53e9cfd61c794b1539e9d4691d3c4e73c4b7aaa7))
|
||||
([53e9cfd](https://code.castopod.org/ad-aures/castopod/commit/53e9cfd61c794b1539e9d4691d3c4e73c4b7aaa7))
|
||||
|
||||
# [1.0.0-alpha.26](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.25...v1.0.0-alpha.26) (2020-11-30)
|
||||
# [1.0.0-alpha.26](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.25...v1.0.0-alpha.26) (2020-11-30)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- **analytics:** update service management so that it works with new OPAWG slug
|
||||
values
|
||||
([7fe9d42](https://code.podlibre.org/podlibre/castopod/commit/7fe9d42500ade2c6fa3ff4365b4affc475af0e51))
|
||||
([7fe9d42](https://code.castopod.org/ad-aures/castopod/commit/7fe9d42500ade2c6fa3ff4365b4affc475af0e51))
|
||||
|
||||
# [1.0.0-alpha.25](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.24...v1.0.0-alpha.25) (2020-11-30)
|
||||
# [1.0.0-alpha.25](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.24...v1.0.0-alpha.25) (2020-11-30)
|
||||
|
||||
### Features
|
||||
|
||||
- **platforms:** add podfriend
|
||||
([9fdc8d3](https://code.podlibre.org/podlibre/castopod/commit/9fdc8d32930234c7ffd2be6892be57febcef1086))
|
||||
([9fdc8d3](https://code.castopod.org/ad-aures/castopod/commit/9fdc8d32930234c7ffd2be6892be57febcef1086))
|
||||
|
||||
# [1.0.0-alpha.24](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.23...v1.0.0-alpha.24) (2020-11-26)
|
||||
# [1.0.0-alpha.24](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.23...v1.0.0-alpha.24) (2020-11-26)
|
||||
|
||||
### Features
|
||||
|
||||
- **monetization:** add Web Monetization support
|
||||
([96a6026](https://code.podlibre.org/podlibre/castopod/commit/96a6026f1db452085360f5fe248de82a2ec06468))
|
||||
([96a6026](https://code.castopod.org/ad-aures/castopod/commit/96a6026f1db452085360f5fe248de82a2ec06468))
|
||||
|
||||
# [1.0.0-alpha.23](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.22...v1.0.0-alpha.23) (2020-11-24)
|
||||
# [1.0.0-alpha.23](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.22...v1.0.0-alpha.23) (2020-11-24)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- define podcastNamespaceLink value
|
||||
([0d744d2](https://code.podlibre.org/podlibre/castopod/commit/0d744d212df0d070ceea185068eaf2746e1ccd48))
|
||||
([0d744d2](https://code.castopod.org/ad-aures/castopod/commit/0d744d212df0d070ceea185068eaf2746e1ccd48))
|
||||
|
||||
# [1.0.0-alpha.22](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.21...v1.0.0-alpha.22) (2020-11-24)
|
||||
# [1.0.0-alpha.22](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.21...v1.0.0-alpha.22) (2020-11-24)
|
||||
|
||||
### Features
|
||||
|
||||
- **rss:** add transcript and chapters support
|
||||
([e769d83](https://code.podlibre.org/podlibre/castopod/commit/e769d83a932c169e52a630a17cd4dd8ac5cebaf6)),
|
||||
closes [#72](https://code.podlibre.org/podlibre/castopod/issues/72)
|
||||
[#82](https://code.podlibre.org/podlibre/castopod/issues/82)
|
||||
([e769d83](https://code.castopod.org/ad-aures/castopod/commit/e769d83a932c169e52a630a17cd4dd8ac5cebaf6)),
|
||||
closes [#72](https://code.castopod.org/ad-aures/castopod/issues/72)
|
||||
[#82](https://code.castopod.org/ad-aures/castopod/issues/82)
|
||||
|
||||
# [1.0.0-alpha.21](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.20...v1.0.0-alpha.21) (2020-11-24)
|
||||
# [1.0.0-alpha.21](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.20...v1.0.0-alpha.21) (2020-11-24)
|
||||
|
||||
### Features
|
||||
|
||||
- **platforms:** add Fediverse and some funding platforms, add link on logo
|
||||
([afc3d50](https://code.podlibre.org/podlibre/castopod/commit/afc3d50289bb4173e0697d109ffe72f6814b93d1))
|
||||
([afc3d50](https://code.castopod.org/ad-aures/castopod/commit/afc3d50289bb4173e0697d109ffe72f6814b93d1))
|
||||
|
||||
# [1.0.0-alpha.20](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.19...v1.0.0-alpha.20) (2020-11-24)
|
||||
# [1.0.0-alpha.20](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.19...v1.0.0-alpha.20) (2020-11-24)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- **import:** use <image><url> tag when no <itunes:image> is present
|
||||
([20e607a](https://code.podlibre.org/podlibre/castopod/commit/20e607afb755bc75056041738fa7cbf6723d754c))
|
||||
([20e607a](https://code.castopod.org/ad-aures/castopod/commit/20e607afb755bc75056041738fa7cbf6723d754c))
|
||||
|
||||
### Features
|
||||
|
||||
- **rss:** add podcast-namespace tags for platforms + previousUrl tag
|
||||
([dbba8dc](https://code.podlibre.org/podlibre/castopod/commit/dbba8dc58133967c778514268cbfed8098ed1dbc)),
|
||||
closes [#73](https://code.podlibre.org/podlibre/castopod/issues/73)
|
||||
[#75](https://code.podlibre.org/podlibre/castopod/issues/75)
|
||||
[#76](https://code.podlibre.org/podlibre/castopod/issues/76)
|
||||
[#80](https://code.podlibre.org/podlibre/castopod/issues/80)
|
||||
([dbba8dc](https://code.castopod.org/ad-aures/castopod/commit/dbba8dc58133967c778514268cbfed8098ed1dbc)),
|
||||
closes [#73](https://code.castopod.org/ad-aures/castopod/issues/73)
|
||||
[#75](https://code.castopod.org/ad-aures/castopod/issues/75)
|
||||
[#76](https://code.castopod.org/ad-aures/castopod/issues/76)
|
||||
[#80](https://code.castopod.org/ad-aures/castopod/issues/80)
|
||||
|
||||
# [1.0.0-alpha.19](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.18...v1.0.0-alpha.19) (2020-11-13)
|
||||
# [1.0.0-alpha.19](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.18...v1.0.0-alpha.19) (2020-11-13)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- handle HEAD requests on podcast_feed route
|
||||
([74b2640](https://code.podlibre.org/podlibre/castopod/commit/74b2640f2a25c4cd6fd8835fc492c2a6893d4950)),
|
||||
closes [#79](https://code.podlibre.org/podlibre/castopod/issues/79)
|
||||
([74b2640](https://code.castopod.org/ad-aures/castopod/commit/74b2640f2a25c4cd6fd8835fc492c2a6893d4950)),
|
||||
closes [#79](https://code.castopod.org/ad-aures/castopod/issues/79)
|
||||
|
||||
# [1.0.0-alpha.18](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.17...v1.0.0-alpha.18) (2020-11-09)
|
||||
# [1.0.0-alpha.18](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.17...v1.0.0-alpha.18) (2020-11-09)
|
||||
|
||||
### Features
|
||||
|
||||
- **platforms:** add Podcast Index
|
||||
([ad52b1c](https://code.podlibre.org/podlibre/castopod/commit/ad52b1cc2b7d0bc844970214d205961a7196b4a9))
|
||||
([ad52b1c](https://code.castopod.org/ad-aures/castopod/commit/ad52b1cc2b7d0bc844970214d205961a7196b4a9))
|
||||
|
||||
# [1.0.0-alpha.17](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.16...v1.0.0-alpha.17) (2020-11-05)
|
||||
# [1.0.0-alpha.17](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.16...v1.0.0-alpha.17) (2020-11-05)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- **open-graph:** replace non existant episode description to podcast
|
||||
description in podcast page
|
||||
([b02584e](https://code.podlibre.org/podlibre/castopod/commit/b02584ee609af1ad1b5680cc28208d113eb0410b))
|
||||
([b02584e](https://code.castopod.org/ad-aures/castopod/commit/b02584ee609af1ad1b5680cc28208d113eb0410b))
|
||||
|
||||
# [1.0.0-alpha.16](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.15...v1.0.0-alpha.16) (2020-11-04)
|
||||
# [1.0.0-alpha.16](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.15...v1.0.0-alpha.16) (2020-11-04)
|
||||
|
||||
### Features
|
||||
|
||||
- add Open Graph and Twitter meta tags
|
||||
([af970b8](https://code.podlibre.org/podlibre/castopod/commit/af970b8bac949e4c63047e04aca1b7403a4e8deb)),
|
||||
closes [#41](https://code.podlibre.org/podlibre/castopod/issues/41)
|
||||
([af970b8](https://code.castopod.org/ad-aures/castopod/commit/af970b8bac949e4c63047e04aca1b7403a4e8deb)),
|
||||
closes [#41](https://code.castopod.org/ad-aures/castopod/issues/41)
|
||||
|
||||
# [1.0.0-alpha.15](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.14...v1.0.0-alpha.15) (2020-11-03)
|
||||
# [1.0.0-alpha.15](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.14...v1.0.0-alpha.15) (2020-11-03)
|
||||
|
||||
### Features
|
||||
|
||||
- **analytics:** add 'other' group to pie charts in order to display more
|
||||
accurate data
|
||||
([73acef9](https://code.podlibre.org/podlibre/castopod/commit/73acef933ff3485987afc5157de022910876fc12))
|
||||
([73acef9](https://code.castopod.org/ad-aures/castopod/commit/73acef933ff3485987afc5157de022910876fc12))
|
||||
|
||||
# [1.0.0-alpha.14](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.13...v1.0.0-alpha.14) (2020-11-02)
|
||||
# [1.0.0-alpha.14](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.13...v1.0.0-alpha.14) (2020-11-02)
|
||||
|
||||
### Features
|
||||
|
||||
- **analytics:** add weekday and hour bar charts
|
||||
([8ab3132](https://code.podlibre.org/podlibre/castopod/commit/8ab313296bb4a254ab05e90b17d896039839b784))
|
||||
([8ab3132](https://code.castopod.org/ad-aures/castopod/commit/8ab313296bb4a254ab05e90b17d896039839b784))
|
||||
|
||||
# [1.0.0-alpha.13](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.12...v1.0.0-alpha.13) (2020-10-29)
|
||||
# [1.0.0-alpha.13](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.12...v1.0.0-alpha.13) (2020-10-29)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- **episodes-table:** set descriptions to be not null
|
||||
([6774ec1](https://code.podlibre.org/podlibre/castopod/commit/6774ec10fa78527be6b7548ca1dc34ad0ada090c))
|
||||
([6774ec1](https://code.castopod.org/ad-aures/castopod/commit/6774ec10fa78527be6b7548ca1dc34ad0ada090c))
|
||||
|
||||
### Features
|
||||
|
||||
- add episode_numbering() component helper to display episode and season numbers
|
||||
([3f4a6bd](https://code.podlibre.org/podlibre/castopod/commit/3f4a6bd0b9f870f16107a41b102b6bf734868198))
|
||||
([3f4a6bd](https://code.castopod.org/ad-aures/castopod/commit/3f4a6bd0b9f870f16107a41b102b6bf734868198))
|
||||
- **episodes:** replace all audio file URL parameters with base64 encoded data
|
||||
([e1f65cd](https://code.podlibre.org/podlibre/castopod/commit/e1f65cd3b53353a30d4ab6eb5312393cf04a1676))
|
||||
([e1f65cd](https://code.castopod.org/ad-aures/castopod/commit/e1f65cd3b53353a30d4ab6eb5312393cf04a1676))
|
||||
|
||||
# [1.0.0-alpha.12](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.11...v1.0.0-alpha.12) (2020-10-26)
|
||||
# [1.0.0-alpha.12](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.11...v1.0.0-alpha.12) (2020-10-26)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- replace getWebEnclosureUrl with getEnclosureWebUrl
|
||||
([8122cea](https://code.podlibre.org/podlibre/castopod/commit/8122ceaf8a70050f14b3078f28b024e7d7cdb9ac))
|
||||
([8122cea](https://code.castopod.org/ad-aures/castopod/commit/8122ceaf8a70050f14b3078f28b024e7d7cdb9ac))
|
||||
|
||||
# [1.0.0-alpha.11](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.10...v1.0.0-alpha.11) (2020-10-26)
|
||||
# [1.0.0-alpha.11](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.10...v1.0.0-alpha.11) (2020-10-26)
|
||||
|
||||
### Features
|
||||
|
||||
- add CDN url
|
||||
([972bcbf](https://code.podlibre.org/podlibre/castopod/commit/972bcbf65ee119b8641ca3c4e5c0e8cf9ca8dd4f)),
|
||||
closes [#37](https://code.podlibre.org/podlibre/castopod/issues/37)
|
||||
([972bcbf](https://code.castopod.org/ad-aures/castopod/commit/972bcbf65ee119b8641ca3c4e5c0e8cf9ca8dd4f)),
|
||||
closes [#37](https://code.castopod.org/ad-aures/castopod/issues/37)
|
||||
|
||||
# [1.0.0-alpha.10](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.9...v1.0.0-alpha.10) (2020-10-26)
|
||||
# [1.0.0-alpha.10](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.9...v1.0.0-alpha.10) (2020-10-26)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- **install:** redirect to host_url install route on instanceConfig validation
|
||||
error
|
||||
([99250b1](https://code.podlibre.org/podlibre/castopod/commit/99250b1868657c249a447399c7ebc69e00d43d1a))
|
||||
([99250b1](https://code.castopod.org/ad-aures/castopod/commit/99250b1868657c249a447399c7ebc69e00d43d1a))
|
||||
|
||||
# [1.0.0-alpha.9](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.8...v1.0.0-alpha.9) (2020-10-26)
|
||||
# [1.0.0-alpha.9](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.8...v1.0.0-alpha.9) (2020-10-26)
|
||||
|
||||
### Features
|
||||
|
||||
- display castopod version in admin footer
|
||||
([9f2574e](https://code.podlibre.org/podlibre/castopod/commit/9f2574e6fbb61dac4e1a4252dff30017685da5f0)),
|
||||
closes [#68](https://code.podlibre.org/podlibre/castopod/issues/68)
|
||||
([9f2574e](https://code.castopod.org/ad-aures/castopod/commit/9f2574e6fbb61dac4e1a4252dff30017685da5f0)),
|
||||
closes [#68](https://code.castopod.org/ad-aures/castopod/issues/68)
|
||||
|
||||
# [1.0.0-alpha.8](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.7...v1.0.0-alpha.8) (2020-10-22)
|
||||
# [1.0.0-alpha.8](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.7...v1.0.0-alpha.8) (2020-10-22)
|
||||
|
||||
### Features
|
||||
|
||||
- **episodes:** schedule episode with future publication_date by using cache
|
||||
expiration time
|
||||
([4f1e773](https://code.podlibre.org/podlibre/castopod/commit/4f1e773c0f9e4c2597f6c1b0a4773dfb34b2f203)),
|
||||
closes [#47](https://code.podlibre.org/podlibre/castopod/issues/47)
|
||||
([4f1e773](https://code.castopod.org/ad-aures/castopod/commit/4f1e773c0f9e4c2597f6c1b0a4773dfb34b2f203)),
|
||||
closes [#47](https://code.castopod.org/ad-aures/castopod/issues/47)
|
||||
|
||||
# [1.0.0-alpha.7](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.6...v1.0.0-alpha.7) (2020-10-21)
|
||||
# [1.0.0-alpha.7](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.6...v1.0.0-alpha.7) (2020-10-21)
|
||||
|
||||
### Features
|
||||
|
||||
- **analytics:** add service name from rss user-agent
|
||||
([7202b98](https://code.podlibre.org/podlibre/castopod/commit/7202b9867bd59aafa8c338a4230fb5e5c55b24c6))
|
||||
([7202b98](https://code.castopod.org/ad-aures/castopod/commit/7202b9867bd59aafa8c338a4230fb5e5c55b24c6))
|
||||
|
||||
### BREAKING CHANGES
|
||||
|
||||
- **analytics:** analytics_podcasts_by_player table and analytics_podcasts
|
||||
procedure were updated
|
||||
|
||||
# [1.0.0-alpha.6](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.5...v1.0.0-alpha.6) (2020-10-20)
|
||||
# [1.0.0-alpha.6](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.5...v1.0.0-alpha.6) (2020-10-20)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- **cache:** add locale for podcast and episode pages + clear some persisting
|
||||
cache in models
|
||||
([9cec8a8](https://code.podlibre.org/podlibre/castopod/commit/9cec8a81ccbb7239402fe6633dbc31979272302a)),
|
||||
closes [#42](https://code.podlibre.org/podlibre/castopod/issues/42)
|
||||
[#61](https://code.podlibre.org/podlibre/castopod/issues/61)
|
||||
([9cec8a8](https://code.castopod.org/ad-aures/castopod/commit/9cec8a81ccbb7239402fe6633dbc31979272302a)),
|
||||
closes [#42](https://code.castopod.org/ad-aures/castopod/issues/42)
|
||||
[#61](https://code.castopod.org/ad-aures/castopod/issues/61)
|
||||
|
||||
# [1.0.0-alpha.5](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.4...v1.0.0-alpha.5) (2020-10-20)
|
||||
# [1.0.0-alpha.5](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.4...v1.0.0-alpha.5) (2020-10-20)
|
||||
|
||||
### Features
|
||||
|
||||
- add lock podcast according to the Podcastindex podcast-namespace to prevent
|
||||
unauthozized import
|
||||
([72b3012](https://code.podlibre.org/podlibre/castopod/commit/72b301272e0b70ded3e2b237391909e3f152ad0b))
|
||||
([72b3012](https://code.castopod.org/ad-aures/castopod/commit/72b301272e0b70ded3e2b237391909e3f152ad0b))
|
||||
|
||||
# [1.0.0-alpha.4](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.3...v1.0.0-alpha.4) (2020-10-20)
|
||||
# [1.0.0-alpha.4](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.3...v1.0.0-alpha.4) (2020-10-20)
|
||||
|
||||
### Features
|
||||
|
||||
- **analytics:** add charts and data export
|
||||
([78625c4](https://code.podlibre.org/podlibre/castopod/commit/78625c471b4f03a09bd42f72b82217e1f2d01cef))
|
||||
([78625c4](https://code.castopod.org/ad-aures/castopod/commit/78625c471b4f03a09bd42f72b82217e1f2d01cef))
|
||||
|
||||
# [1.0.0-alpha.3](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.2...v1.0.0-alpha.3) (2020-10-19)
|
||||
# [1.0.0-alpha.3](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.2...v1.0.0-alpha.3) (2020-10-19)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- **analytics:** remove charts empty values + remove useless language cache
|
||||
([1678794](https://code.podlibre.org/podlibre/castopod/commit/16787941539ba4014281a366789ea896a9cd2afc))
|
||||
([1678794](https://code.castopod.org/ad-aures/castopod/commit/16787941539ba4014281a366789ea896a9cd2afc))
|
||||
|
||||
# [1.0.0-alpha.2](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.1...v1.0.0-alpha.2) (2020-10-19)
|
||||
# [1.0.0-alpha.2](https://code.castopod.org/ad-aures/castopod/compare/v1.0.0-alpha.1...v1.0.0-alpha.2) (2020-10-19)
|
||||
|
||||
### Features
|
||||
|
||||
- add cumulative listening time charts
|
||||
([588b4d2](https://code.podlibre.org/podlibre/castopod/commit/588b4d28da00bc12d02126e23181690f54d81716))
|
||||
([588b4d2](https://code.castopod.org/ad-aures/castopod/commit/588b4d28da00bc12d02126e23181690f54d81716))
|
||||
|
||||
# 1.0.0-alpha.1 (2020-10-16)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- add public/media folder to castopod bundle
|
||||
([8053d35](https://code.podlibre.org/podlibre/castopod/commit/8053d3521b481872711dabaaf265d08b9bfbaa87)),
|
||||
closes [#52](https://code.podlibre.org/podlibre/castopod/issues/52)
|
||||
([8053d35](https://code.castopod.org/ad-aures/castopod/commit/8053d3521b481872711dabaaf265d08b9bfbaa87)),
|
||||
closes [#52](https://code.castopod.org/ad-aures/castopod/issues/52)
|
||||
- add where condition to get episode count without deleted episodes
|
||||
([7661734](https://code.podlibre.org/podlibre/castopod/commit/7661734ed296654630f3668132671117519145dd)),
|
||||
closes [#67](https://code.podlibre.org/podlibre/castopod/issues/67)
|
||||
([7661734](https://code.castopod.org/ad-aures/castopod/commit/7661734ed296654630f3668132671117519145dd)),
|
||||
closes [#67](https://code.castopod.org/ad-aures/castopod/issues/67)
|
||||
- comment all cache clean after page update to prevent analytics cache deletion
|
||||
([e6197a4](https://code.podlibre.org/podlibre/castopod/commit/e6197a4972a3cce3d67dd7972bb54f8720b8e5b7))
|
||||
([e6197a4](https://code.castopod.org/ad-aures/castopod/commit/e6197a4972a3cce3d67dd7972bb54f8720b8e5b7))
|
||||
- correct chart data
|
||||
([4d3e9c8](https://code.podlibre.org/podlibre/castopod/commit/4d3e9c8c02cdc882e9fe1c29625695b6f83c820a))
|
||||
([4d3e9c8](https://code.castopod.org/ad-aures/castopod/commit/4d3e9c8c02cdc882e9fe1c29625695b6f83c820a))
|
||||
- correct percona compatibility issue
|
||||
([e53f819](https://code.podlibre.org/podlibre/castopod/commit/e53f819264b2d6902996f11ffcbb7c99295a90ef))
|
||||
([e53f819](https://code.castopod.org/ad-aures/castopod/commit/e53f819264b2d6902996f11ffcbb7c99295a90ef))
|
||||
- correct php-fpm issues
|
||||
([1ef55d7](https://code.podlibre.org/podlibre/castopod/commit/1ef55d7315bb44abe05f02ec8a84b6b6a557a9a0))
|
||||
([1ef55d7](https://code.castopod.org/ad-aures/castopod/commit/1ef55d7315bb44abe05f02ec8a84b6b6a557a9a0))
|
||||
- correct referrer bug
|
||||
([ed69b2f](https://code.podlibre.org/podlibre/castopod/commit/ed69b2f5004ed1cd18bac824c08a0df01f5d2637))
|
||||
([ed69b2f](https://code.castopod.org/ad-aures/castopod/commit/ed69b2f5004ed1cd18bac824c08a0df01f5d2637))
|
||||
- correction for servers with low int precision
|
||||
([31b7828](https://code.podlibre.org/podlibre/castopod/commit/31b7828e77519ef43e9bcfcbdf6c21712f97a571))
|
||||
([31b7828](https://code.castopod.org/ad-aures/castopod/commit/31b7828e77519ef43e9bcfcbdf6c21712f97a571))
|
||||
- declare typed properties in PHPDoc for php<7.4
|
||||
([14dd44d](https://code.podlibre.org/podlibre/castopod/commit/14dd44d03d6db0d9ae4198db8e65c92a0e45cb31)),
|
||||
closes [#23](https://code.podlibre.org/podlibre/castopod/issues/23)
|
||||
([14dd44d](https://code.castopod.org/ad-aures/castopod/commit/14dd44d03d6db0d9ae4198db8e65c92a0e45cb31)),
|
||||
closes [#23](https://code.castopod.org/ad-aures/castopod/issues/23)
|
||||
- escape generated feed tag values and remove new lines from public pages meta
|
||||
description
|
||||
([6238a43](https://code.podlibre.org/podlibre/castopod/commit/6238a43863210afe8988ad7cf251e6bfc6c8557c)),
|
||||
closes [#57](https://code.podlibre.org/podlibre/castopod/issues/57)
|
||||
[#46](https://code.podlibre.org/podlibre/castopod/issues/46)
|
||||
([6238a43](https://code.castopod.org/ad-aures/castopod/commit/6238a43863210afe8988ad7cf251e6bfc6c8557c)),
|
||||
closes [#57](https://code.castopod.org/ad-aures/castopod/issues/57)
|
||||
[#46](https://code.castopod.org/ad-aures/castopod/issues/46)
|
||||
- fix layout bugs in admin and update translation files
|
||||
([a834171](https://code.podlibre.org/podlibre/castopod/commit/a83417180cf61cdfadc5509b0aaa2fdb66592be3)),
|
||||
closes [#40](https://code.podlibre.org/podlibre/castopod/issues/40)
|
||||
([a834171](https://code.castopod.org/ad-aures/castopod/commit/a83417180cf61cdfadc5509b0aaa2fdb66592be3)),
|
||||
closes [#40](https://code.castopod.org/ad-aures/castopod/issues/40)
|
||||
- minor corrections
|
||||
([13be386](https://code.podlibre.org/podlibre/castopod/commit/13be386842e94d9def1f7de4720931d8f6935171))
|
||||
([13be386](https://code.castopod.org/ad-aures/castopod/commit/13be386842e94d9def1f7de4720931d8f6935171))
|
||||
- move analytics to helper
|
||||
([d311917](https://code.podlibre.org/podlibre/castopod/commit/d31191732e41aa106234b5ebe6e54ee02f0ce603))
|
||||
([d311917](https://code.castopod.org/ad-aures/castopod/commit/d31191732e41aa106234b5ebe6e54ee02f0ce603))
|
||||
- re-order graph values
|
||||
([35f633b](https://code.podlibre.org/podlibre/castopod/commit/35f633b4c71c087d1ddc9bba9e9bbe18de09204f))
|
||||
([35f633b](https://code.castopod.org/ad-aures/castopod/commit/35f633b4c71c087d1ddc9bba9e9bbe18de09204f))
|
||||
- remove required for other_categories field and add podcast_id to latest
|
||||
podcasts query
|
||||
([5417be0](https://code.podlibre.org/podlibre/castopod/commit/5417be0049288489a19c7b575aa77bd1e2bc0243))
|
||||
([5417be0](https://code.castopod.org/ad-aures/castopod/commit/5417be0049288489a19c7b575aa77bd1e2bc0243))
|
||||
- rename issue_templates labels
|
||||
([9f00305](https://code.podlibre.org/podlibre/castopod/commit/9f00305844e5a168e89d727fe29892b4ad5e48d6))
|
||||
([9f00305](https://code.castopod.org/ad-aures/castopod/commit/9f00305844e5a168e89d727fe29892b4ad5e48d6))
|
||||
- rename MyAccount controller file
|
||||
([e109df3](https://code.podlibre.org/podlibre/castopod/commit/e109df3004a3a98d72de39532e062fff9917f50f)),
|
||||
closes [#60](https://code.podlibre.org/podlibre/castopod/issues/60)
|
||||
([e109df3](https://code.castopod.org/ad-aures/castopod/commit/e109df3004a3a98d72de39532e062fff9917f50f)),
|
||||
closes [#60](https://code.castopod.org/ad-aures/castopod/issues/60)
|
||||
- reorder fields as composite primary keys for analytics tables
|
||||
([9660aa9](https://code.podlibre.org/podlibre/castopod/commit/9660aa97c8ffd4fe61f3a388d52b9ac5dd8e1d63))
|
||||
([9660aa9](https://code.castopod.org/ad-aures/castopod/commit/9660aa97c8ffd4fe61f3a388d52b9ac5dd8e1d63))
|
||||
- replace website key for webpages in breadcrumb translate file
|
||||
([50e32ff](https://code.podlibre.org/podlibre/castopod/commit/50e32ff75636c1d4c5d945a267e884cb26ad7191))
|
||||
([50e32ff](https://code.castopod.org/ad-aures/castopod/commit/50e32ff75636c1d4c5d945a267e884cb26ad7191))
|
||||
- set episode duration translation to hardcoded english
|
||||
([c39efc9](https://code.podlibre.org/podlibre/castopod/commit/c39efc9489180662edcebd142d4476c0617ea97f)),
|
||||
closes [#64](https://code.podlibre.org/podlibre/castopod/issues/64)
|
||||
([c39efc9](https://code.castopod.org/ad-aures/castopod/commit/c39efc9489180662edcebd142d4476c0617ea97f)),
|
||||
closes [#64](https://code.castopod.org/ad-aures/castopod/issues/64)
|
||||
- set episode guid upon episode creation
|
||||
([ad8b153](https://code.podlibre.org/podlibre/castopod/commit/ad8b153f2a3b1a3b1751bf63785c4950e1516e6b)),
|
||||
closes [#48](https://code.podlibre.org/podlibre/castopod/issues/48)
|
||||
([ad8b153](https://code.castopod.org/ad-aures/castopod/commit/ad8b153f2a3b1a3b1751bf63785c4950e1516e6b)),
|
||||
closes [#48](https://code.castopod.org/ad-aures/castopod/issues/48)
|
||||
- update purgecss content path for php helper files
|
||||
([eb70bb4](https://code.podlibre.org/podlibre/castopod/commit/eb70bb4f7078ff347aeb8f5dcc7896311d289466)),
|
||||
closes [#59](https://code.podlibre.org/podlibre/castopod/issues/59)
|
||||
([eb70bb4](https://code.castopod.org/ad-aures/castopod/commit/eb70bb4f7078ff347aeb8f5dcc7896311d289466)),
|
||||
closes [#59](https://code.castopod.org/ad-aures/castopod/issues/59)
|
||||
- **install:** redirect to input baseUrl after instance config
|
||||
([2426af7](https://code.podlibre.org/podlibre/castopod/commit/2426af7de8c9d426aaf534ff17b67f71c2e9f374)),
|
||||
closes [#53](https://code.podlibre.org/podlibre/castopod/issues/53)
|
||||
([2426af7](https://code.castopod.org/ad-aures/castopod/commit/2426af7de8c9d426aaf534ff17b67f71c2e9f374)),
|
||||
closes [#53](https://code.castopod.org/ad-aures/castopod/issues/53)
|
||||
- **platforms:** display platform link only when visible is toggled on
|
||||
([6e503c8](https://code.podlibre.org/podlibre/castopod/commit/6e503c8d6182987e48892370623183f871bbd1c1)),
|
||||
closes [#39](https://code.podlibre.org/podlibre/castopod/issues/39)
|
||||
([6e503c8](https://code.castopod.org/ad-aures/castopod/commit/6e503c8d6182987e48892370623183f871bbd1c1)),
|
||||
closes [#39](https://code.castopod.org/ad-aures/castopod/issues/39)
|
||||
- sort episodic podcasts by season
|
||||
([d7b6794](https://code.podlibre.org/podlibre/castopod/commit/d7b6794f68f9a01fd606a407c6eb4c12d15dee74))
|
||||
([d7b6794](https://code.castopod.org/ad-aures/castopod/commit/d7b6794f68f9a01fd606a407c6eb4c12d15dee74))
|
||||
- update .htaccess for shared hosting config
|
||||
([2379826](https://code.podlibre.org/podlibre/castopod/commit/2379826352e2f4b5060910bf9f29268610102f2e))
|
||||
([2379826](https://code.castopod.org/ad-aures/castopod/commit/2379826352e2f4b5060910bf9f29268610102f2e))
|
||||
- update iso-369 language table seeder
|
||||
([0c90db4](https://code.podlibre.org/podlibre/castopod/commit/0c90db44c40de5af5b0b32b54489bda9424d9ef6))
|
||||
([0c90db4](https://code.castopod.org/ad-aures/castopod/commit/0c90db44c40de5af5b0b32b54489bda9424d9ef6))
|
||||
- **package.json:** update destination of postcss generation scripts
|
||||
([21413f8](https://code.podlibre.org/podlibre/castopod/commit/21413f8af3b8a0ac01d8c6f15bcd7a63e524e964))
|
||||
([21413f8](https://code.castopod.org/ad-aures/castopod/commit/21413f8af3b8a0ac01d8c6f15bcd7a63e524e964))
|
||||
- use slash instead of backslash to call layout
|
||||
([a80adb2](https://code.podlibre.org/podlibre/castopod/commit/a80adb22958fc0a38374cbce2d950a0042e699eb))
|
||||
([a80adb2](https://code.castopod.org/ad-aures/castopod/commit/a80adb22958fc0a38374cbce2d950a0042e699eb))
|
||||
|
||||
### Features
|
||||
|
||||
- add alternate rss feed link tag to podcast page head
|
||||
([a973c09](https://code.podlibre.org/podlibre/castopod/commit/a973c097d54a3d0186c4079b9d4d3e81aae38505)),
|
||||
closes [#35](https://code.podlibre.org/podlibre/castopod/issues/35)
|
||||
([a973c09](https://code.castopod.org/ad-aures/castopod/commit/a973c097d54a3d0186c4079b9d4d3e81aae38505)),
|
||||
closes [#35](https://code.castopod.org/ad-aures/castopod/issues/35)
|
||||
- add analytics and unknown useragents
|
||||
([ec92e65](https://code.podlibre.org/podlibre/castopod/commit/ec92e65aa42e09b1df04600b52a0c679dfc494bb))
|
||||
([ec92e65](https://code.castopod.org/ad-aures/castopod/commit/ec92e65aa42e09b1df04600b52a0c679dfc494bb))
|
||||
- add breadcrumb in admin area
|
||||
([7fb1de2](https://code.podlibre.org/podlibre/castopod/commit/7fb1de2cf3c97c4cd7afe3bd71bbe66041786ecd)),
|
||||
closes [#17](https://code.podlibre.org/podlibre/castopod/issues/17)
|
||||
([7fb1de2](https://code.castopod.org/ad-aures/castopod/commit/7fb1de2cf3c97c4cd7afe3bd71bbe66041786ecd)),
|
||||
closes [#17](https://code.castopod.org/ad-aures/castopod/issues/17)
|
||||
- add french translation
|
||||
([196920d](https://code.podlibre.org/podlibre/castopod/commit/196920d62f1810b4c35f800d17d7f93627319091))
|
||||
([196920d](https://code.castopod.org/ad-aures/castopod/commit/196920d62f1810b4c35f800d17d7f93627319091))
|
||||
- add install wizard form to bootstrap database and create the first superadmin
|
||||
user
|
||||
([cba871c](https://code.podlibre.org/podlibre/castopod/commit/cba871c5df9f7120c44d9952456ebbd0d220669e)),
|
||||
closes [#2](https://code.podlibre.org/podlibre/castopod/issues/2)
|
||||
([cba871c](https://code.castopod.org/ad-aures/castopod/commit/cba871c5df9f7120c44d9952456ebbd0d220669e)),
|
||||
closes [#2](https://code.castopod.org/ad-aures/castopod/issues/2)
|
||||
- add ISO 3166 country codes
|
||||
([97cd94b](https://code.podlibre.org/podlibre/castopod/commit/97cd94b47494b66faf43fbbe0748872da80020a4))
|
||||
([97cd94b](https://code.castopod.org/ad-aures/castopod/commit/97cd94b47494b66faf43fbbe0748872da80020a4))
|
||||
- add map analytics, add episodes analytics, clean analytics page layout,
|
||||
translate countries
|
||||
([07eae83](https://code.podlibre.org/podlibre/castopod/commit/07eae83a00d860e149359fae67d549488403d88b))
|
||||
([07eae83](https://code.castopod.org/ad-aures/castopod/commit/07eae83a00d860e149359fae67d549488403d88b))
|
||||
- add npm for js dependencies + move src/ files to root folder
|
||||
([cbb83a6](https://code.podlibre.org/podlibre/castopod/commit/cbb83a6f308ac9357e9fb0cca5edae9d3fee5b48))
|
||||
([cbb83a6](https://code.castopod.org/ad-aures/castopod/commit/cbb83a6f308ac9357e9fb0cca5edae9d3fee5b48))
|
||||
- add pages table to store custom instance pages (eg. legal-notice, cookie
|
||||
policy, etc.)
|
||||
([9c224a8](https://code.podlibre.org/podlibre/castopod/commit/9c224a8ac6dd95f3c6c087a300fc8bac48e8090f)),
|
||||
closes [#24](https://code.podlibre.org/podlibre/castopod/issues/24)
|
||||
([9c224a8](https://code.castopod.org/ad-aures/castopod/commit/9c224a8ac6dd95f3c6c087a300fc8bac48e8090f)),
|
||||
closes [#24](https://code.castopod.org/ad-aures/castopod/issues/24)
|
||||
- add platform models
|
||||
([a333d29](https://code.podlibre.org/podlibre/castopod/commit/a333d291966229a909c0851fd8b890ed97c48ceb))
|
||||
([a333d29](https://code.castopod.org/ad-aures/castopod/commit/a333d291966229a909c0851fd8b890ed97c48ceb))
|
||||
- add platforms form in podcast settings
|
||||
([043f49c](https://code.podlibre.org/podlibre/castopod/commit/043f49c784bc007ca0fa756ca4ed2d3b08843ad9))
|
||||
([043f49c](https://code.castopod.org/ad-aures/castopod/commit/043f49c784bc007ca0fa756ca4ed2d3b08843ad9))
|
||||
- add platforms tables
|
||||
([ce59344](https://code.podlibre.org/podlibre/castopod/commit/ce5934419a516c9926dd3fd0ace3c11a95b60722))
|
||||
([ce59344](https://code.castopod.org/ad-aures/castopod/commit/ce5934419a516c9926dd3fd0ace3c11a95b60722))
|
||||
- add unique listeners analytics
|
||||
([3a49258](https://code.podlibre.org/podlibre/castopod/commit/3a4925816f3268230640525ad7af507aab8eecb9))
|
||||
([3a49258](https://code.castopod.org/ad-aures/castopod/commit/3a4925816f3268230640525ad7af507aab8eecb9))
|
||||
- add user permissions and basic groups to handle authorizations
|
||||
([d58e518](https://code.podlibre.org/podlibre/castopod/commit/d58e51874a4722921b75b0049117015c2380406e)),
|
||||
closes [#3](https://code.podlibre.org/podlibre/castopod/issues/3)
|
||||
[#18](https://code.podlibre.org/podlibre/castopod/issues/18)
|
||||
([d58e518](https://code.castopod.org/ad-aures/castopod/commit/d58e51874a4722921b75b0049117015c2380406e)),
|
||||
closes [#3](https://code.castopod.org/ad-aures/castopod/issues/3)
|
||||
[#18](https://code.castopod.org/ad-aures/castopod/issues/18)
|
||||
- create optimized & resized images upon upload
|
||||
([02e4441](https://code.podlibre.org/podlibre/castopod/commit/02e4441f98f27e9534e5b9b63279153d14632ccd)),
|
||||
closes [#6](https://code.podlibre.org/podlibre/castopod/issues/6)
|
||||
([02e4441](https://code.castopod.org/ad-aures/castopod/commit/02e4441f98f27e9534e5b9b63279153d14632ccd)),
|
||||
closes [#6](https://code.castopod.org/ad-aures/castopod/issues/6)
|
||||
- display legal disclaimer and warning on podcast import page
|
||||
([2f07992](https://code.podlibre.org/podlibre/castopod/commit/2f07992e5508b34b91f194eebfac80c51e80e90a)),
|
||||
closes [#34](https://code.podlibre.org/podlibre/castopod/issues/34)
|
||||
([2f07992](https://code.castopod.org/ad-aures/castopod/commit/2f07992e5508b34b91f194eebfac80c51e80e90a)),
|
||||
closes [#34](https://code.castopod.org/ad-aures/castopod/issues/34)
|
||||
- edit + delete podcast and episode
|
||||
([ac5f0c7](https://code.podlibre.org/podlibre/castopod/commit/ac5f0c732806e955c01e05b7867801bc938c6bd5))
|
||||
([ac5f0c7](https://code.castopod.org/ad-aures/castopod/commit/ac5f0c732806e955c01e05b7867801bc938c6bd5))
|
||||
- enhance admin ui with responsive design and ux improvements
|
||||
([2d44b45](https://code.podlibre.org/podlibre/castopod/commit/2d44b457a02205d2e7da258d7029b8bc5da39533)),
|
||||
closes [#31](https://code.podlibre.org/podlibre/castopod/issues/31)
|
||||
[#9](https://code.podlibre.org/podlibre/castopod/issues/9)
|
||||
([2d44b45](https://code.castopod.org/ad-aures/castopod/commit/2d44b457a02205d2e7da258d7029b8bc5da39533)),
|
||||
closes [#31](https://code.castopod.org/ad-aures/castopod/issues/31)
|
||||
[#9](https://code.castopod.org/ad-aures/castopod/issues/9)
|
||||
- enhance ui using javascript in admin area
|
||||
([c0e66d5](https://code.podlibre.org/podlibre/castopod/commit/c0e66d5f7012026e145d106f4d6bd3ba792a1b77))
|
||||
([c0e66d5](https://code.castopod.org/ad-aures/castopod/commit/c0e66d5f7012026e145d106f4d6bd3ba792a1b77))
|
||||
- import podcast from an rss feed url
|
||||
([9a5d5a1](https://code.podlibre.org/podlibre/castopod/commit/9a5d5a15b4945eb319da9e999c4ca60a0a4f6d2d)),
|
||||
closes [#21](https://code.podlibre.org/podlibre/castopod/issues/21)
|
||||
([9a5d5a1](https://code.castopod.org/ad-aures/castopod/commit/9a5d5a15b4945eb319da9e999c4ca60a0a4f6d2d)),
|
||||
closes [#21](https://code.castopod.org/ad-aures/castopod/issues/21)
|
||||
- set podcast / episode description in the pages description meta tag
|
||||
([1c4a504](https://code.podlibre.org/podlibre/castopod/commit/1c4a50442bea2d3449efce9c5ff1c80743152f55)),
|
||||
closes [#44](https://code.podlibre.org/podlibre/castopod/issues/44)
|
||||
([1c4a504](https://code.castopod.org/ad-aures/castopod/commit/1c4a50442bea2d3449efce9c5ff1c80743152f55)),
|
||||
closes [#44](https://code.castopod.org/ad-aures/castopod/issues/44)
|
||||
- update analytics so to meet IABv2 requirements
|
||||
([03e23a2](https://code.podlibre.org/podlibre/castopod/commit/03e23a28bf9b1b73fba55352c36a8cd6cc8ae729)),
|
||||
closes [#10](https://code.podlibre.org/podlibre/castopod/issues/10)
|
||||
([03e23a2](https://code.castopod.org/ad-aures/castopod/commit/03e23a28bf9b1b73fba55352c36a8cd6cc8ae729)),
|
||||
closes [#10](https://code.castopod.org/ad-aures/castopod/issues/10)
|
||||
- **cache:** add podcast and episode pages to cache + clear them after insert or
|
||||
update
|
||||
([da0f047](https://code.podlibre.org/podlibre/castopod/commit/da0f0472819007e02e5da37399f2377772c618b9))
|
||||
([da0f047](https://code.castopod.org/ad-aures/castopod/commit/da0f0472819007e02e5da37399f2377772c618b9))
|
||||
- **categories:** create model, entity, migrations and seeds
|
||||
([f73b042](https://code.podlibre.org/podlibre/castopod/commit/f73b042cc091be82abdbbca8992080875d526972))
|
||||
([f73b042](https://code.castopod.org/ad-aures/castopod/commit/f73b042cc091be82abdbbca8992080875d526972))
|
||||
- **devcontainer:** add devcontainer settings for dev environment
|
||||
([69e7266](https://code.podlibre.org/podlibre/castopod/commit/69e72667365247b63430dee88194e8f0d7c28edc))
|
||||
([69e7266](https://code.castopod.org/ad-aures/castopod/commit/69e72667365247b63430dee88194e8f0d7c28edc))
|
||||
- **episodes:** add create form and view pages for episode
|
||||
([f3b2c8b](https://code.podlibre.org/podlibre/castopod/commit/f3b2c8b84f3d93bef734e34dbe8ed729535e45e9)),
|
||||
closes [#1](https://code.podlibre.org/podlibre/castopod/issues/1)
|
||||
([f3b2c8b](https://code.castopod.org/ad-aures/castopod/commit/f3b2c8b84f3d93bef734e34dbe8ed729535e45e9)),
|
||||
closes [#1](https://code.castopod.org/ad-aures/castopod/issues/1)
|
||||
- **episodes:** add migrations, model and entity for episodes table
|
||||
([0444821](https://code.podlibre.org/podlibre/castopod/commit/044482174ede555ce19a2d8c6f48771cc8e7d27b))
|
||||
([0444821](https://code.castopod.org/ad-aures/castopod/commit/044482174ede555ce19a2d8c6f48771cc8e7d27b))
|
||||
- **podcast:** create a podcast using form
|
||||
([1202ba3](https://code.podlibre.org/podlibre/castopod/commit/1202ba3545f521097c60a6a2af95e70527cd1d34))
|
||||
([1202ba3](https://code.castopod.org/ad-aures/castopod/commit/1202ba3545f521097c60a6a2af95e70527cd1d34))
|
||||
- **podcast-form:** update routes and redirect to podcast page
|
||||
([12ce905](https://code.podlibre.org/podlibre/castopod/commit/12ce905799002dc9c07e6de092342d30ba9fd7d8))
|
||||
([12ce905](https://code.castopod.org/ad-aures/castopod/commit/12ce905799002dc9c07e6de092342d30ba9fd7d8))
|
||||
- **public-ui:** adapt public podcast and episode pages to wireframes
|
||||
([40a0535](https://code.podlibre.org/podlibre/castopod/commit/40a0535fc1bc12a24994b651f5e00b35995cbdda)),
|
||||
closes [#30](https://code.podlibre.org/podlibre/castopod/issues/30)
|
||||
[#13](https://code.podlibre.org/podlibre/castopod/issues/13)
|
||||
([40a0535](https://code.castopod.org/ad-aures/castopod/commit/40a0535fc1bc12a24994b651f5e00b35995cbdda)),
|
||||
closes [#30](https://code.castopod.org/ad-aures/castopod/issues/30)
|
||||
[#13](https://code.castopod.org/ad-aures/castopod/issues/13)
|
||||
- **rss:** generate rss feed from podcast entity
|
||||
([c815ecd](https://code.podlibre.org/podlibre/castopod/commit/c815ecd6640931fee0895f80908a3ddfac482666))
|
||||
([c815ecd](https://code.castopod.org/ad-aures/castopod/commit/c815ecd6640931fee0895f80908a3ddfac482666))
|
||||
- **users:** add myth-auth to handle users crud + add admin gateway only
|
||||
accessible by login
|
||||
([c63a077](https://code.podlibre.org/podlibre/castopod/commit/c63a077618c61b4cde7f25ffc650a4b0e1495f44)),
|
||||
closes [#11](https://code.podlibre.org/podlibre/castopod/issues/11)
|
||||
([c63a077](https://code.castopod.org/ad-aures/castopod/commit/c63a077618c61b4cde7f25ffc650a4b0e1495f44)),
|
||||
closes [#11](https://code.castopod.org/ad-aures/castopod/issues/11)
|
||||
- minor corrections to some tables
|
||||
([3bf9420](https://code.podlibre.org/podlibre/castopod/commit/3bf9420b5956a501b3b24405d243a71a928d6086))
|
||||
([3bf9420](https://code.castopod.org/ad-aures/castopod/commit/3bf9420b5956a501b3b24405d243a71a928d6086))
|
||||
- write id3v2 tags to episode's audio file
|
||||
([4651d01](https://code.podlibre.org/podlibre/castopod/commit/4651d01a84ff3ea8433a8ae26cfd750a1ec9e88d))
|
||||
([4651d01](https://code.castopod.org/ad-aures/castopod/commit/4651d01a84ff3ea8433a8ae26cfd750a1ec9e88d))
|
||||
|
||||
### Reverts
|
||||
|
||||
- use basic input file for episodes audio files instead of button for better UX
|
||||
([d5f22fb](https://code.podlibre.org/podlibre/castopod/commit/d5f22fbb38c43d9b37df401eff655958a57cb40a))
|
||||
([d5f22fb](https://code.castopod.org/ad-aures/castopod/commit/d5f22fbb38c43d9b37df401eff655958a57cb40a))
|
||||
|
|
|
|||
|
|
@ -60,7 +60,7 @@ representative at an online or offline event.
|
|||
|
||||
Instances of abusive, harassing, or otherwise unacceptable behavior may be
|
||||
reported to the community leaders responsible for enforcement at
|
||||
[abuse@podlibre.org](mailto:abuse@podlibre.org). All complaints will be reviewed
|
||||
[abuse@castopod.org](mailto:abuse@castopod.org). All complaints will be reviewed
|
||||
and investigated promptly and fairly.
|
||||
|
||||
All community leaders are obligated to respect the privacy and security of the
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
# Castopod Host dependencies
|
||||
# Castopod dependencies
|
||||
|
||||
Castopod Host uses the following components:
|
||||
Castopod uses the following components:
|
||||
|
||||
## PHP Dependencies
|
||||
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
####################################################
|
||||
# Castopod Host development Docker file
|
||||
# Castopod development Docker file
|
||||
####################################################
|
||||
# ⚠️ NOT optimized for production
|
||||
# should be used only for development purposes
|
||||
|
|
@ -8,8 +8,8 @@ FROM php:8.0-fpm
|
|||
|
||||
LABEL maintainer="Yassine Doghri <yassine@doghri.fr>"
|
||||
|
||||
COPY . /castopod-host
|
||||
WORKDIR /castopod-host
|
||||
COPY . /castopod
|
||||
WORKDIR /castopod
|
||||
|
||||
# Install composer
|
||||
COPY --from=composer:2 /usr/bin/composer /usr/bin/composer
|
||||
|
|
@ -19,7 +19,7 @@ RUN apt-get update \
|
|||
# gnupg to sign commits with gpg
|
||||
&& apt-get install --yes --no-install-recommends gnupg \
|
||||
# npm through the nodejs package
|
||||
&& curl -fsSL https://deb.nodesource.com/setup_14.x | bash - \
|
||||
&& curl -fsSL https://deb.nodesource.com/setup_16.x | bash - \
|
||||
&& apt-get update \
|
||||
&& apt-get install --yes --no-install-recommends nodejs \
|
||||
# update npm
|
||||
|
|
|
|||
144
INSTALL.md
144
INSTALL.md
|
|
@ -1,144 +0,0 @@
|
|||
# How to install Castopod Host <!-- omit in toc -->
|
||||
|
||||
_Castopod Host_ was thought-out to be easy to install. Whether using dedicated
|
||||
or shared hosting, you can install it on most PHP-MySQL compatible web servers.
|
||||
|
||||
## Table of contents <!-- omit in toc -->
|
||||
|
||||
- [Install instructions](#install-instructions)
|
||||
- [0. Pre-requisites](#0-pre-requisites)
|
||||
- [(recommended) Install Wizard](#recommended-install-wizard)
|
||||
- [(alternative) Manual configuration](#alternative-manual-configuration)
|
||||
- [Web Server Requirements](#web-server-requirements)
|
||||
- [PHP v8.0 or higher](#php-v80-or-higher)
|
||||
- [FFmpeg v4.1.8 or higher for Video Clips](#ffmpeg-v418-or-higher-for-video-clips)
|
||||
- [MySQL compatible database](#mysql-compatible-database)
|
||||
- [Privileges](#privileges)
|
||||
- [(Optional) Other recommendations](#optional-other-recommendations)
|
||||
- [Security concerns](#security-concerns)
|
||||
|
||||
## Install instructions
|
||||
|
||||
### 0. Pre-requisites
|
||||
|
||||
0. Get a Web Server with [requirements](#web-server-requirements) installed
|
||||
1. Create a MySQL database for Castopod Host with a user having access and
|
||||
modification privileges (for more info, see
|
||||
[MySQL compatible database](#mysql-compatible-database)).
|
||||
2. Activate HTTPS on your domain with an _SSL certificate_.
|
||||
3. Download and unzip the latest
|
||||
[Castopod Host Package](https://code.podlibre.org/podlibre/castopod-host/-/releases)
|
||||
onto the web server if you haven’t already.
|
||||
- ⚠️ Set the web server document root to the `public/` sub-folder.
|
||||
4. Add **cron tasks** on your web server for various background processes
|
||||
(replace the paths accordingly):
|
||||
|
||||
- For social features to work properly, this task is used to broadcast social
|
||||
activities to your followers on the fediverse:
|
||||
|
||||
```bash
|
||||
* * * * * /path/to/php /path/to/castopod-host/public/index.php scheduled-activities
|
||||
```
|
||||
|
||||
- For Video Clips to be created (see
|
||||
[FFmpeg requirements](#ffmpeg-v418-or-higher-for-video-clips)):
|
||||
|
||||
```bash
|
||||
* * * * * /path/to/php /path/to/castopod-host/public/index.php scheduled-video-clips
|
||||
```
|
||||
|
||||
> These tasks run **every minute**. You may set the frequency depending on
|
||||
> your needs: every 5, 10 minutes or more.
|
||||
|
||||
### (recommended) Install Wizard
|
||||
|
||||
1. Run the Castopod Host install script by going to the install wizard page
|
||||
(`https://your_domain_name.com/cp-install`) in your favorite web browser.
|
||||
2. Follow the instructions on your screen.
|
||||
3. Start podcasting!
|
||||
|
||||
> **Note:**
|
||||
>
|
||||
> The install script writes a `.env` file in the package root. If you cannot go
|
||||
> through the install wizard, you can
|
||||
> [create and update the `.env` file manually](#alternative-manual-configuration).
|
||||
|
||||
### (alternative) Manual configuration
|
||||
|
||||
1. Rename the `.env.example` file to `.env` and update the default values with
|
||||
your own.
|
||||
2. Upload the `.env` file to the Castopod Host Package root on your server.
|
||||
3. Go to `/cp-install` to finish the install process.
|
||||
4. Start podcasting!
|
||||
|
||||
## Web Server Requirements
|
||||
|
||||
### PHP v8.0 or higher
|
||||
|
||||
PHP version 8.0 or higher is required, with the following extensions installed:
|
||||
|
||||
- [intl](https://php.net/manual/en/intl.requirements.php)
|
||||
- [libcurl](https://php.net/manual/en/curl.requirements.php)
|
||||
- [mbstring](https://php.net/manual/en/mbstring.installation.php)
|
||||
- [gd](https://www.php.net/manual/en/image.installation.php) with **JPEG**,
|
||||
**PNG** and **WEBP** libraries.
|
||||
|
||||
Additionally, make sure that the following extensions are enabled in your PHP:
|
||||
|
||||
- json (enabled by default - don't turn it off)
|
||||
- xml (enabled by default - don't turn it off)
|
||||
- [mysqlnd](https://php.net/manual/en/mysqlnd.install.php)
|
||||
|
||||
### FFmpeg v4.1.8 or higher for Video Clips
|
||||
|
||||
[FFmpeg](https://www.ffmpeg.org/) version 4.1.8 or higher is required, with the
|
||||
following extensions:
|
||||
|
||||
- **FreeType 2** library for
|
||||
[gd](https://www.php.net/manual/en/image.installation.php).
|
||||
|
||||
### MySQL compatible database
|
||||
|
||||
> We recommend using [MariaDB](https://mariadb.org).
|
||||
|
||||
You will need the server hostname, database name, username and password to
|
||||
complete the installation process. If you do not have these, please contact your
|
||||
server administrator.
|
||||
|
||||
> NB. Castopod Host only works with supported MySQL compatible databases. It
|
||||
> will break with MySQL v5.6 for example as its end of life was on February
|
||||
> 5, 2021.
|
||||
|
||||
#### Privileges
|
||||
|
||||
User must have at least these privileges on the database for Castopod Host to
|
||||
work: `CREATE`, `ALTER`, `DELETE`, `EXECUTE`, `INDEX`, `INSERT`, `SELECT`,
|
||||
`UPDATE`.
|
||||
|
||||
### (Optional) Other recommendations
|
||||
|
||||
- Redis for better cache performances.
|
||||
- CDN for static files caching and better performances.
|
||||
- e-mail gateway for lost passwords.
|
||||
|
||||
## Security concerns
|
||||
|
||||
Castopod Host is built on top of Codeigniter, a PHP framework that encourages
|
||||
[good security practices](https://codeigniter.com/user_guide/concepts/security.html).
|
||||
|
||||
To maximize your instance safety and prevent any malicious attack, we recommend
|
||||
you update all your Castopod Host files permissions after installation (to avoid
|
||||
any permission error):
|
||||
|
||||
- `writable/` folder must be **readable** and **writable**.
|
||||
- `public/media/` folder must be **readable** and **writable**.
|
||||
- any other file must be set to **readonly**.
|
||||
|
||||
For instance, if you are using Apache or NGINX with Ubuntu you may do the
|
||||
following:
|
||||
|
||||
```bash
|
||||
sudo chown -R root:root /path/to/castopod-host
|
||||
sudo chown -R www-data:www-data /path/to/castopod-host/writable
|
||||
sudo chown -R www-data:www-data /path/to/castopod-host/public/media
|
||||
```
|
||||
85
README.md
85
README.md
|
|
@ -1,74 +1,75 @@
|
|||
<h1 align="center">
|
||||
<a href="https://castopod.org/">
|
||||
<img src="https://podlibre.org/static/images/Castopod-Title.svg" alt="Castopod Host" />
|
||||
<img src="https://docs.castopod.org/images/logo-inline.svg" alt="Castopod" />
|
||||
</a>
|
||||
</h1>
|
||||
|
||||
> **Castopod Host is in beta version**. We are working on getting the last
|
||||
> features needed for v1, making performance improvements and fixing any bugs
|
||||
> that may arise along the way.
|
||||
[![release-badge]][release] [![license-badge]][license] [![semantic-release-badge]][semantic-release] [![discord-badge]][discord] [![stars-badge]][stars]
|
||||
|
||||
_Castopod Host_ is a free and open-source podcast hosting solution made for
|
||||
podcasters who want engage and interact with their audience.
|
||||
Castopod is a free and open-source podcast hosting solution made for podcasters
|
||||
who want engage and interact with their audience.
|
||||
|
||||
Create, upload, publish, interact with your followers and get comprehensive
|
||||
audience measurements that respect your listeners privacy.
|
||||
|
||||
Whether you choose to install it on your own server or have it hosted by a
|
||||
professional, all your data and analytics belong to you and you only!
|
||||
|
||||
You may find Castopod Host's source code on the
|
||||
[original repository](https://code.podlibre.org/podlibre/castopod-host) or,
|
||||
alternatively, on the
|
||||
[github repository (mirror)](https://github.com/podlibre/castopod-host).
|
||||
|
||||
## Install / Update
|
||||
|
||||
To install or update Castopod Host on your PHP/MySQL server:
|
||||
|
||||
- Download
|
||||
[Castopod Host's latest Package (zip or tar.gz)](https://code.podlibre.org/podlibre/castopod-host/-/releases):
|
||||
|
||||
- Follow one of the procedures on:
|
||||
|
||||
- [“How to **install** Castopod Host”](./INSTALL.md)
|
||||
- or [“How to **update** Castopod Host”](./UPDATE.md)
|
||||
> Castopod is currently in **beta** but already quite stable and used by
|
||||
> podcasters around the world!
|
||||
|
||||
## Documentation
|
||||
|
||||
You can check Castopod Host's documentation for
|
||||
[setting up a development environment](./docs/setup-development.md).
|
||||
To get started with Castopod, you may
|
||||
[check out the documentation](https://docs.castopod.org/), everything should be
|
||||
there!
|
||||
|
||||
## Security issues and vulnerabilities
|
||||
|
||||
If you encounter any security issue or vulnerability in the Castopod source,
|
||||
please contact us directly by email at
|
||||
[security@castopod.org](mailto:security@castopod.org)
|
||||
|
||||
## Contributing
|
||||
|
||||
Love Castopod Host and would like to help? Check out the
|
||||
[contribution guidelines](./CONTRIBUTING.md) for this project, everything should
|
||||
be there!
|
||||
Love Castopod and would like to help? Check out the
|
||||
[contribution guidelines](https://docs.castopod.org/contributing/guidelines) for
|
||||
this project, everything should be there!
|
||||
|
||||
⚠️ Note that **any** contribution made on a repository other than
|
||||
[the original repository](https://code.podlibre.org/podlibre/castopod-host) will
|
||||
not be accepted.
|
||||
[the original repository](https://code.castopod.org/ad-aures/castopod) will not
|
||||
be accepted.
|
||||
|
||||
## Support
|
||||
## Contact
|
||||
|
||||
You may reach us for help or ask any question you have on:
|
||||
|
||||
- [Discord](https://castopod.org/discord) (for direct interaction with
|
||||
developers and the community)
|
||||
- [Issue tracker](https://code.castopod.org/ad-aures/castopod/-/issues) (for
|
||||
feature requests & bug reports)
|
||||
|
||||
Alternatively, you can follow us on social media platforms to get news about
|
||||
Castopod:
|
||||
|
||||
- [podlibre.social](https://podlibre.social/@Castopod) (Mastodon instance)
|
||||
- [Twitter](https://twitter.com/castopod)
|
||||
- [LinkedIn](https://linkedin.com/company/castopod)
|
||||
- [Facebook](https://www.facebook.com/castopod)
|
||||
|
||||
## Sponsors
|
||||
|
||||
[Castopod](https://nlnet.nl/project/Castopod/) was funded through the
|
||||
[NGI0 Discovery](https://nlnet.nl/discovery/) Fund under grant agreement
|
||||
Nº 825322.
|
||||
<div style="display:flex;flex-wrap:wrap;column-gap:4rem;row-gap:2rem;">
|
||||
<a href="https://adaures.com/" target="_blank" rel="noopener noreferrer"><img src="https://docs.castopod.org/images/sponsors/adaures.svg" alt="Ad Aures Logo" style="height:4rem;" /></a>
|
||||
<a href="https://nlnet.nl/project/Castopod/" target="_blank" rel="noopener noreferrer"><img src="https://docs.castopod.org/images/sponsors/adaures.svg" alt="NLnet Logo" style="height:4rem;" /></a>
|
||||
<a href="https://opencollective.com/castopod/contribute" target="_blank" rel="noopener noreferrer">Become a sponsor</a>
|
||||
</div>
|
||||
|
||||
The fund was established by NLnet with financial support from the European
|
||||
Commission's [Next Generation Internet](https://www.ngi.eu/) programme, under
|
||||
the aegis of DG Communications Networks, Content and Technology.
|
||||
[release]: https://code.castopod.org/ad-aures/castopod/-/releases
|
||||
[release-badge]:
|
||||
https://img.shields.io/gitlab/v/release/2?color=brightgreen&gitlab_url=https%3A%2F%2Fcode.castopod.org%2F&include_prereleases&label=release
|
||||
[license]: https://code.castopod.org/ad-aures/castopod/-/blob/beta/LICENSE.md
|
||||
[license-badge]:
|
||||
https://img.shields.io/github/license/ad-aures/castopod?color=blue
|
||||
[semantic-release]: https://github.com/semantic-release/semantic-release
|
||||
[semantic-release-badge]:
|
||||
https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg
|
||||
[discord]: https://castopod.org/discord
|
||||
[discord-badge]: https://img.shields.io/badge/chat-on%20discord-7389D8
|
||||
[stars]: https://github.com/ad-aures/castopod/stargazers
|
||||
[stars-badge]:
|
||||
https://img.shields.io/github/stars/ad-aures/castopod?style=social
|
||||
|
|
|
|||
|
|
@ -437,7 +437,7 @@ class App extends BaseConfig
|
|||
|
||||
public string $siteTitleSeparator = ' | ';
|
||||
|
||||
public string $siteDescription = 'Castopod Host is an open-source hosting platform made for podcasters who want engage and interact with their audience.';
|
||||
public string $siteDescription = 'Castopod is an open-source hosting platform made for podcasters who want engage and interact with their audience.';
|
||||
|
||||
/**
|
||||
* @var array<int|string, string>
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2022 Podlibre
|
||||
* @copyright 2022 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2021 Podlibre
|
||||
* @copyright 2021 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
@ -21,7 +21,7 @@ class HomeController extends BaseController
|
|||
$db = db_connect();
|
||||
if ($db->getDatabase() === '' || ! $db->tableExists('podcasts')) {
|
||||
// Database connection has not been set or could not find the podcasts table
|
||||
// Redirecting to install page because it is likely that Castopod Host has not been installed yet.
|
||||
// Redirecting to install page because it is likely that Castopod has not been installed yet.
|
||||
// NB: as base_url wouldn't have been defined here, redirect to install wizard manually
|
||||
$route = Services::routes()->reverseRoute('install');
|
||||
return redirect()->to(rtrim(host_url(), '/') . $route);
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2021 Podlibre
|
||||
* @copyright 2021 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ declare(strict_types=1);
|
|||
/**
|
||||
* Class AddCategories Creates categories table in database
|
||||
*
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ declare(strict_types=1);
|
|||
/**
|
||||
* Class AddLanguages Creates languages table in database
|
||||
*
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ declare(strict_types=1);
|
|||
/**
|
||||
* Class AddPodcasts Creates podcasts table in database
|
||||
*
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ declare(strict_types=1);
|
|||
/**
|
||||
* Class AddEpisodes Creates episodes table in database
|
||||
*
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ declare(strict_types=1);
|
|||
/**
|
||||
* Class AddPlatforms Creates platforms table in database
|
||||
*
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ declare(strict_types=1);
|
|||
/**
|
||||
* Class AddAddPodcastsPlatforms Creates podcasts_platforms table in database
|
||||
*
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ declare(strict_types=1);
|
|||
/**
|
||||
* Class AddPages Creates pages table in database
|
||||
*
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ declare(strict_types=1);
|
|||
/**
|
||||
* Class AddPodcastsCategories Creates podcasts_categories table in database
|
||||
*
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ declare(strict_types=1);
|
|||
/**
|
||||
* Class Persons Creates persons table in database
|
||||
*
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ declare(strict_types=1);
|
|||
/**
|
||||
* Class AddPodcastsPersons Creates podcasts_persons table in database
|
||||
*
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ declare(strict_types=1);
|
|||
/**
|
||||
* Class AddEpisodesPersons Creates episodes_persons table in database
|
||||
*
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ declare(strict_types=1);
|
|||
/**
|
||||
* Class AddCreditView Creates Credit View in database
|
||||
*
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ declare(strict_types=1);
|
|||
/**
|
||||
* Class AddEpisodeIdToPosts Adds episode_id field to posts table in database
|
||||
*
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ declare(strict_types=1);
|
|||
/**
|
||||
* Class AddCreatedByToPosts Adds created_by field to posts table in database
|
||||
*
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ declare(strict_types=1);
|
|||
/**
|
||||
* Class AddEpisodeComments creates episode_comments table in database
|
||||
*
|
||||
* @copyright 2021 Podlibre
|
||||
* @copyright 2021 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ declare(strict_types=1);
|
|||
/**
|
||||
* Class AddLikes Creates likes table in database
|
||||
*
|
||||
* @copyright 2021 Podlibre
|
||||
* @copyright 2021 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2021 Podlibre
|
||||
* @copyright 2021 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ declare(strict_types=1);
|
|||
/**
|
||||
* Class AppSeeder Calls all required seeders for castopod to work properly
|
||||
*
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ declare(strict_types=1);
|
|||
/**
|
||||
* Class PermissionSeeder Inserts permissions
|
||||
*
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ declare(strict_types=1);
|
|||
/**
|
||||
* Class CategorySeeder Inserts values in categories table in database
|
||||
*
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ declare(strict_types=1);
|
|||
/**
|
||||
* Class FakePodcastsAnalyticsSeeder Inserts Fake Analytics in the database
|
||||
*
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ declare(strict_types=1);
|
|||
/**
|
||||
* Class FakeWebsiteAnalyticsSeeder Inserts Fake Analytics in the database
|
||||
*
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ declare(strict_types=1);
|
|||
/**
|
||||
* Class LanguageSeeder Inserts values in languages table in database
|
||||
*
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ declare(strict_types=1);
|
|||
/**
|
||||
* Class PlatformsSeeder Inserts values in platforms table in database
|
||||
*
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ declare(strict_types=1);
|
|||
/**
|
||||
* Class TestSeeder Inserts a superadmin user in the database
|
||||
*
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2021 Podlibre
|
||||
* @copyright 2021 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2021 Podlibre
|
||||
* @copyright 2021 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2021 Podlibre
|
||||
* @copyright 2021 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2021 Podlibre
|
||||
* @copyright 2021 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2021 Podlibre
|
||||
* @copyright 2021 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2021 Podlibre
|
||||
* @copyright 2021 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2021 Podlibre
|
||||
* @copyright 2021 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2021 Podlibre
|
||||
* @copyright 2021 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2021 Podlibre
|
||||
* @copyright 2021 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2021 Podlibre
|
||||
* @copyright 2021 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
@ -47,7 +47,7 @@ if (! function_exists('get_rss_feed')) {
|
|||
|
||||
// the last build date corresponds to the creation of the feed.xml cache
|
||||
$channel->addChild('lastBuildDate', (new Time('now'))->format(DATE_RFC1123));
|
||||
$channel->addChild('generator', 'Castopod Host - https://castopod.org/');
|
||||
$channel->addChild('generator', 'Castopod - https://castopod.org/');
|
||||
$channel->addChild('docs', 'https://cyber.harvard.edu/rss/rss.html');
|
||||
|
||||
$channel->addChild('guid', $podcast->guid, $podcastNamespace);
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@ use Melbahja\Seo\Schema;
|
|||
use Melbahja\Seo\Schema\Thing;
|
||||
|
||||
/**
|
||||
* @copyright 2021 Podlibre
|
||||
* @copyright 2021 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2021 Podlibre
|
||||
* @copyright 2021 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2021 Podlibre
|
||||
* @copyright 2021 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ declare(strict_types=1);
|
|||
/**
|
||||
* Generates and renders a breadcrumb based on the current url segments
|
||||
*
|
||||
* @copyright 2021 Podlibre
|
||||
* @copyright 2021 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2021 Podlibre
|
||||
* @copyright 2021 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2021 Podlibre
|
||||
* @copyright 2021 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2021 Podlibre
|
||||
* @copyright 2021 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2021 Podlibre
|
||||
* @copyright 2021 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2021 Podlibre
|
||||
* @copyright 2021 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@ declare(strict_types=1);
|
|||
*
|
||||
* It introduces the alternate-content option for a route.
|
||||
*
|
||||
* @copyright 2021 Podlibre
|
||||
* @copyright 2021 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2021 Podlibre
|
||||
* @copyright 2021 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ declare(strict_types=1);
|
|||
/**
|
||||
* Generates and renders a breadcrumb based on the current url segments
|
||||
*
|
||||
* @copyright 2022 Podlibre
|
||||
* @copyright 2022 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2021 Podlibre
|
||||
* @copyright 2021 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ declare(strict_types=1);
|
|||
/**
|
||||
* Class SoundbiteModel Model for podcasts_soundbites table in database
|
||||
*
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2021 Podlibre
|
||||
* @copyright 2021 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2021 Podlibre
|
||||
* @copyright 2021 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2021 Podlibre
|
||||
* @copyright 2021 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ declare(strict_types=1);
|
|||
/**
|
||||
* Class PlatformModel Model for platforms table in database
|
||||
*
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2021 Podlibre
|
||||
* @copyright 2021 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2021 Podlibre
|
||||
* @copyright 2021 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
"name": "podlibre/castopod-host",
|
||||
"version": "1.0.0-beta8",
|
||||
"type": "project",
|
||||
"description": "Castopod Host is an open-source hosting platform made for podcasters who want engage and interact with their audience.",
|
||||
"description": "Castopod is an open-source hosting platform made for podcasters who want engage and interact with their audience.",
|
||||
"homepage": "https://castopod.org",
|
||||
"license": "AGPL-3.0-or-later",
|
||||
"require": {
|
||||
|
|
@ -16,8 +16,8 @@
|
|||
"vlucas/phpdotenv": "^v5.3.0",
|
||||
"league/html-to-markdown": "^v5.0.1",
|
||||
"opawg/user-agents-php": "^v1.0",
|
||||
"podlibre/ipcat": "^v1.0",
|
||||
"podlibre/podcast-namespace": "^v1.0.6",
|
||||
"adaures/ipcat-php": "^1.0",
|
||||
"adaures/podcast-persons-taxonomy": "^1.0",
|
||||
"phpseclib/phpseclib": "~2.0.30",
|
||||
"michalsn/codeigniter4-uuid": "dev-develop",
|
||||
"essence/essence": "^3.5.4",
|
||||
|
|
@ -59,25 +59,25 @@
|
|||
"style": "vendor/bin/ecs check --ansi",
|
||||
"style:fix": "vendor/bin/ecs check --fix --ansi",
|
||||
"post-install-cmd": [
|
||||
"@php vendor/opawg/user-agents-php/src/UserAgentsGenerate.php > vendor/opawg/user-agents-php/src/UserAgents.php",
|
||||
"@php vendor/opawg/user-agents-php/src/UserAgentsRSSGenerate.php > vendor/opawg/user-agents-php/src/UserAgentsRSS.php",
|
||||
"@php vendor/podlibre/ipcat/IpDbGenerate.php > vendor/podlibre/ipcat/IpDb.php",
|
||||
"@php vendor/podlibre/podcast-namespace/src/TaxonomyGenerate.php https://raw.githubusercontent.com/Podcastindex-org/podcast-namespace/main/taxonomy-en.json > modules/Admin/Language/en/PersonsTaxonomy.php",
|
||||
"@php vendor/podlibre/podcast-namespace/src/TaxonomyGenerate.php https://raw.githubusercontent.com/Podcastindex-org/podcast-namespace/main/taxonomy-fr.json > modules/Admin/Language/fr/PersonsTaxonomy.php",
|
||||
"@php vendor/podlibre/podcast-namespace/src/ReversedTaxonomyGenerate.php https://raw.githubusercontent.com/Podcastindex-org/podcast-namespace/main/taxonomy-en.json > vendor/podlibre/podcast-namespace/src/ReversedTaxonomy.php"
|
||||
"@php vendor/opawg/user-agents-php/src/UserAgentsGenerate.php > vendor/opawg/user-agents-php/src/UserAgents.php",
|
||||
"@php vendor/opawg/user-agents-php/src/UserAgentsRSSGenerate.php > vendor/opawg/user-agents-php/src/UserAgentsRSS.php",
|
||||
"@php vendor/adaures/ipcat-php/src/IpDbGenerate.php > vendor/adaures/ipcat-php/src/IpDb.php",
|
||||
"@php vendor/adaures/podcast-persons-taxonomy/src/TaxonomyGenerate.php https://raw.githubusercontent.com/Podcastindex-org/podcast-namespace/main/taxonomy-en.json > modules/Admin/Language/en/PersonsTaxonomy.php",
|
||||
"@php vendor/adaures/podcast-persons-taxonomy/src/TaxonomyGenerate.php https://raw.githubusercontent.com/Podcastindex-org/podcast-namespace/main/taxonomy-fr.json > modules/Admin/Language/fr/PersonsTaxonomy.php",
|
||||
"@php vendor/adaures/podcast-persons-taxonomy/src/ReversedTaxonomyGenerate.php https://raw.githubusercontent.com/Podcastindex-org/podcast-namespace/main/taxonomy-en.json > vendor/adaures/podcast-persons-taxonomy/src/ReversedTaxonomy.php"
|
||||
],
|
||||
"post-update-cmd": [
|
||||
"@composer dump-autoload",
|
||||
"@php vendor/opawg/user-agents-php/src/UserAgentsGenerate.php > vendor/opawg/user-agents-php/src/UserAgents.php",
|
||||
"@php vendor/opawg/user-agents-php/src/UserAgentsRSSGenerate.php > vendor/opawg/user-agents-php/src/UserAgentsRSS.php",
|
||||
"@php vendor/podlibre/ipcat/IpDbGenerate.php > vendor/podlibre/ipcat/IpDb.php",
|
||||
"@php vendor/podlibre/podcast-namespace/src/TaxonomyGenerate.php https://raw.githubusercontent.com/Podcastindex-org/podcast-namespace/main/taxonomy-en.json > modules/Admin/Language/en/PersonsTaxonomy.php",
|
||||
"@php vendor/podlibre/podcast-namespace/src/TaxonomyGenerate.php https://raw.githubusercontent.com/Podcastindex-org/podcast-namespace/main/taxonomy-fr.json > modules/Admin/Language/fr/PersonsTaxonomy.php",
|
||||
"@php vendor/podlibre/podcast-namespace/src/ReversedTaxonomyGenerate.php https://raw.githubusercontent.com/Podcastindex-org/podcast-namespace/main/taxonomy-en.json > vendor/podlibre/podcast-namespace/src/ReversedTaxonomy.php"
|
||||
"@php vendor/opawg/user-agents-php/src/UserAgentsGenerate.php > vendor/opawg/user-agents-php/src/UserAgents.php",
|
||||
"@php vendor/opawg/user-agents-php/src/UserAgentsRSSGenerate.php > vendor/opawg/user-agents-php/src/UserAgentsRSS.php",
|
||||
"@php vendor/adaures/ipcat-php/src/IpDbGenerate.php > vendor/adaures/ipcat-php/src/IpDb.php",
|
||||
"@php vendor/adaures/podcast-persons-taxonomy/src/TaxonomyGenerate.php https://raw.githubusercontent.com/Podcastindex-org/podcast-namespace/main/taxonomy-en.json > modules/Admin/Language/en/PersonsTaxonomy.php",
|
||||
"@php vendor/adaures/podcast-persons-taxonomy/src/TaxonomyGenerate.php https://raw.githubusercontent.com/Podcastindex-org/podcast-namespace/main/taxonomy-fr.json > modules/Admin/Language/fr/PersonsTaxonomy.php",
|
||||
"@php vendor/adaures/podcast-persons-taxonomy/src/ReversedTaxonomyGenerate.php https://raw.githubusercontent.com/Podcastindex-org/podcast-namespace/main/taxonomy-en.json > vendor/adaures/podcast-persons-taxonomy/src/ReversedTaxonomy.php"
|
||||
]
|
||||
},
|
||||
"support": {
|
||||
"source": "https://code.podlibre.org/podlibre/castopod-host.git",
|
||||
"source": "https://code.castopod.org/ad-aures/castopod.git",
|
||||
"discord": "https://castopod.org/discord"
|
||||
},
|
||||
"minimum-stability": "dev",
|
||||
|
|
|
|||
132
composer.lock
generated
132
composer.lock
generated
|
|
@ -4,8 +4,75 @@
|
|||
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
|
||||
"This file is @generated automatically"
|
||||
],
|
||||
"content-hash": "bf66875f72680d0f5953f03bf31c8612",
|
||||
"content-hash": "ec7b17f7a9846c6f31606bcd2dea17ab",
|
||||
"packages": [
|
||||
{
|
||||
"name": "adaures/ipcat-php",
|
||||
"version": "v1.0.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://code.castopod.org/ad-aures/ipcat-php",
|
||||
"reference": "478a121cc32147359df27d2f5d087595ddcdc8b4"
|
||||
},
|
||||
"require": {
|
||||
"php": ">=5.4"
|
||||
},
|
||||
"type": "library",
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"AdAures\\Ipcat\\": ""
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": ["GPL-3.0-only"],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Benjamin Bellamy",
|
||||
"email": "ben@castopod.org",
|
||||
"homepage": "https://code.castopod.org/benjamin"
|
||||
},
|
||||
{
|
||||
"name": "Yassine Doghri",
|
||||
"email": "yassine@doghri.fr",
|
||||
"homepage": "https://code.castopod.org/yassine"
|
||||
}
|
||||
],
|
||||
"description": "Categorization of IP Addresses adapted to PHP 5.4+ from https://github.com/client9/ipcat",
|
||||
"homepage": "https://code.castopod.org/ad-aures/ipcat-php",
|
||||
"time": "2022-02-12T10:19:28+00:00"
|
||||
},
|
||||
{
|
||||
"name": "adaures/podcast-persons-taxonomy",
|
||||
"version": "v1.0.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://code.castopod.org/ad-aures/podcast-persons-taxonomy",
|
||||
"reference": "9cb2bc9a36700f28ae907482a6ee2017aa4c38b0"
|
||||
},
|
||||
"type": "library",
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"AdAures\\PodcastPersonsTaxonomy\\": "src/"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": ["MIT"],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Benjamin Bellamy",
|
||||
"email": "ben@castopod.org",
|
||||
"homepage": "https://code.castopod.org/benjamin"
|
||||
},
|
||||
{
|
||||
"name": "Yassine Doghri",
|
||||
"email": "yassine@doghri.fr",
|
||||
"homepage": "https://code.castopod.org/yassine"
|
||||
}
|
||||
],
|
||||
"description": "Generate PHP translation files for CodeIgniter4 from the podcast-namespace's Persons Taxonomy json files.",
|
||||
"homepage": "https://code.castopod.org/ad-aures/podcast-persons-taxonomy",
|
||||
"time": "2022-02-12T10:45:50+00:00"
|
||||
},
|
||||
{
|
||||
"name": "brick/math",
|
||||
"version": "0.9.2",
|
||||
|
|
@ -1724,69 +1791,6 @@
|
|||
],
|
||||
"time": "2021-04-06T13:56:45+00:00"
|
||||
},
|
||||
{
|
||||
"name": "podlibre/ipcat",
|
||||
"version": "v1.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/podlibre/ipcat.git",
|
||||
"reference": "1adfc821be508ddc8a742f6a5d5e6e42fdf28e86"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/podlibre/ipcat/zipball/1adfc821be508ddc8a742f6a5d5e6e42fdf28e86",
|
||||
"reference": "1adfc821be508ddc8a742f6a5d5e6e42fdf28e86",
|
||||
"shasum": ""
|
||||
},
|
||||
"type": "library",
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"Podlibre\\Ipcat\\": ""
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": ["GPL-3.0-only"],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Benjamin Bellamy",
|
||||
"email": "ben@podlibre.org",
|
||||
"homepage": "https://podlibre.org/"
|
||||
}
|
||||
],
|
||||
"description": "Categorization of IP Addresses forked from https://github.com/client9/ipcat",
|
||||
"homepage": "https://github.com/podlibre/ipcat",
|
||||
"support": {
|
||||
"source": "https://github.com/podlibre/ipcat/tree/v1.0"
|
||||
},
|
||||
"time": "2020-10-05T17:15:07+00:00"
|
||||
},
|
||||
{
|
||||
"name": "podlibre/podcast-namespace",
|
||||
"version": "v1.0.6",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://code.podlibre.org/podlibre/podcastnamespace",
|
||||
"reference": "4525c06ee9dd95bb745ee875d55b64a053c74cd6"
|
||||
},
|
||||
"type": "library",
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"Podlibre\\PodcastNamespace\\": "src/"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": ["MIT"],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Benjamin Bellamy",
|
||||
"email": "ben@podlibre.org",
|
||||
"homepage": "https://podlibre.org/"
|
||||
}
|
||||
],
|
||||
"description": "PHP implementation for the Podcast Namespace.",
|
||||
"homepage": "https://code.podlibre.org/podlibre/podcastnamespace",
|
||||
"time": "2021-01-14T15:47:06+00:00"
|
||||
},
|
||||
{
|
||||
"name": "psr/cache",
|
||||
"version": "1.0.1",
|
||||
|
|
|
|||
4
crontab
4
crontab
|
|
@ -1,2 +1,2 @@
|
|||
* * * * * /usr/local/bin/php /castopod-host/public/index.php scheduled-activities
|
||||
* * * * * /usr/local/bin/php /castopod-host/public/index.php scheduled-video-clips
|
||||
* * * * * /usr/local/bin/php /castopod/public/index.php scheduled-activities
|
||||
* * * * * /usr/local/bin/php /castopod/public/index.php scheduled-video-clips
|
||||
|
|
|
|||
|
|
@ -8,12 +8,12 @@ services:
|
|||
build:
|
||||
context: .
|
||||
dockerfile: Dockerfile
|
||||
container_name: castopod-host
|
||||
command: /bin/sh -c "crontab ./crontab && cron && service cron reload && php spark serve --host 0.0.0.0"
|
||||
container_name: app
|
||||
command: /bin/sh -c "crontab ./crontab && cron && service cron reload && php spark serve - 0.0.0.0"
|
||||
ports:
|
||||
- 8080:8080
|
||||
volumes:
|
||||
- .:/castopod-host
|
||||
- .:/castopod
|
||||
depends_on:
|
||||
- redis
|
||||
- mariadb
|
||||
|
|
@ -22,7 +22,7 @@ services:
|
|||
|
||||
redis:
|
||||
image: redis:alpine
|
||||
container_name: castopod-host_redis
|
||||
container_name: castopod_redis
|
||||
ports:
|
||||
- 6379:6379
|
||||
volumes:
|
||||
|
|
@ -32,7 +32,7 @@ services:
|
|||
|
||||
mariadb:
|
||||
image: mariadb:latest
|
||||
container_name: castopod-host_mariadb
|
||||
container_name: castopod_mariadb
|
||||
ports:
|
||||
- 3306:3306
|
||||
volumes:
|
||||
|
|
@ -40,14 +40,14 @@ services:
|
|||
environment:
|
||||
MYSQL_ROOT_PASSWORD: root
|
||||
MYSQL_DATABASE: castopod
|
||||
MYSQL_USER: podlibre
|
||||
MYSQL_USER: castopod
|
||||
MYSQL_PASSWORD: castopod
|
||||
networks:
|
||||
- castopod
|
||||
|
||||
phpmyadmin:
|
||||
image: phpmyadmin/phpmyadmin:latest
|
||||
container_name: castopod-host_phpmyadmin
|
||||
container_name: castopod_phpmyadmin
|
||||
environment:
|
||||
PMA_HOST: mariadb
|
||||
PMA_PORT: 3306
|
||||
|
|
|
|||
76
docs/.gitlab-ci.yml
Normal file
76
docs/.gitlab-ci.yml
Normal file
|
|
@ -0,0 +1,76 @@
|
|||
image: node:16
|
||||
|
||||
stages:
|
||||
- build
|
||||
- deploy
|
||||
|
||||
.documentation-setup:
|
||||
before_script:
|
||||
- cd docs
|
||||
- npm ci
|
||||
|
||||
cache:
|
||||
paths:
|
||||
- docs/node_modules/
|
||||
|
||||
# This job only serves for validating that the docs builds correctly on all non deployment branches
|
||||
build:
|
||||
extends: .documentation-setup
|
||||
stage: build
|
||||
script:
|
||||
- npm run build
|
||||
except:
|
||||
- develop
|
||||
- main
|
||||
- beta
|
||||
- alpha
|
||||
|
||||
build-production:
|
||||
extends: .documentation-setup
|
||||
stage: build
|
||||
environment:
|
||||
name: production
|
||||
url: https://docs.castopod.org/
|
||||
script:
|
||||
- npm run build
|
||||
artifacts:
|
||||
paths:
|
||||
- docs/.vitepress/dist
|
||||
expire_in: 30 mins
|
||||
only:
|
||||
- develop
|
||||
- main
|
||||
- beta
|
||||
- alpha
|
||||
|
||||
deploy:
|
||||
stage: deploy
|
||||
environment:
|
||||
name: production
|
||||
url: https://docs.castopod.org/
|
||||
variables:
|
||||
HOST: $DOCS_HOST
|
||||
USER: $DOCS_USER
|
||||
TEMP_DIRECTORY: $DOCS_TEMP_DIRECTORY
|
||||
DIRECTORY: $DOCS_DIRECTORY
|
||||
SSH_PORT: 3242
|
||||
SOURCE_FOLDER: "docs/.vitepress/dist/"
|
||||
before_script:
|
||||
# install rsync for file transfers
|
||||
- apt-get update && apt-get install rsync -y
|
||||
# ssh config
|
||||
- "which ssh-agent || ( apt-get update -y && apt-get install openssh-client -y )"
|
||||
# Run ssh-agent (inside the build environment)
|
||||
- eval $(ssh-agent -s)
|
||||
# Add the SSH key stored in SSH_PRIVATE_KEY variable to the agent store
|
||||
- ssh-add <(echo "$SSH_PRIVATE_KEY" | base64 --decode)
|
||||
- mkdir -p ~/.ssh
|
||||
- '[[ -f /.dockerenv ]] && echo -e "Host *\n\tStrictHostKeyChecking no\n\n" > ~/.ssh/config'
|
||||
script:
|
||||
- rsync -avzuh -e "ssh -p $SSH_PORT" $SOURCE_FOLDER $USER@$HOST:$TEMP_DIRECTORY --progress
|
||||
- ssh $USER@$HOST -p $SSH_PORT "rsync -rtv $TEMP_DIRECTORY $DIRECTORY"
|
||||
only:
|
||||
- develop
|
||||
- main
|
||||
- beta
|
||||
- alpha
|
||||
74
docs/.vitepress/config.ts
Normal file
74
docs/.vitepress/config.ts
Normal file
|
|
@ -0,0 +1,74 @@
|
|||
import { defineConfig } from "vitepress";
|
||||
|
||||
export default defineConfig({
|
||||
title: "Castopod docs",
|
||||
description:
|
||||
"Get started with Castopod, install it, contribute and learn more!",
|
||||
srcDir: "src",
|
||||
|
||||
head: [
|
||||
["link", { rel: "icon", type: "image/x-icon", href: "/favicon.ico" }],
|
||||
["meta", { name: "twitter:site", content: "@castopod" }],
|
||||
["meta", { name: "twitter:card", content: "summary" }],
|
||||
[
|
||||
"meta",
|
||||
{
|
||||
name: "twitter:image",
|
||||
content: "https://docs.castopod.org/images/logo.png",
|
||||
},
|
||||
],
|
||||
[
|
||||
"script",
|
||||
{
|
||||
defer: "defer",
|
||||
"data-domain": "docs.castopod.org",
|
||||
src: "https://analytics.castopod.org/js/plausible.js",
|
||||
},
|
||||
],
|
||||
],
|
||||
|
||||
themeConfig: {
|
||||
nav: [
|
||||
{
|
||||
text: "Home",
|
||||
link: "https://castopod.org/",
|
||||
},
|
||||
{
|
||||
text: "Blog",
|
||||
link: "https://blog.castopod.org/",
|
||||
},
|
||||
{
|
||||
text: "Github",
|
||||
link: "https://github.com/ad-aures/castopod",
|
||||
},
|
||||
],
|
||||
|
||||
sidebar: {
|
||||
"/": getGuideSidebar(),
|
||||
},
|
||||
},
|
||||
});
|
||||
|
||||
function getGuideSidebar() {
|
||||
return [
|
||||
{
|
||||
text: "Introduction",
|
||||
link: "/",
|
||||
},
|
||||
{
|
||||
text: "Getting started",
|
||||
children: [
|
||||
{ text: "Install", link: "/getting-started/install" },
|
||||
{ text: "Security", link: "/getting-started/security" },
|
||||
{ text: "Update", link: "/getting-started/update" },
|
||||
],
|
||||
},
|
||||
{
|
||||
text: "Contributing",
|
||||
children: [
|
||||
{ text: "Guide", link: "/contributing/guidelines" },
|
||||
{ text: "Dev Setup", link: "/contributing/setup-development" },
|
||||
],
|
||||
},
|
||||
];
|
||||
}
|
||||
6
docs/.vitepress/theme/index.ts
Normal file
6
docs/.vitepress/theme/index.ts
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
import Theme from "vitepress/theme";
|
||||
import "./tailwind.css";
|
||||
|
||||
export default {
|
||||
...Theme,
|
||||
};
|
||||
2
docs/.vitepress/theme/tailwind.css
Normal file
2
docs/.vitepress/theme/tailwind.css
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
@tailwind components;
|
||||
@tailwind utilities;
|
||||
3552
docs/package-lock.json
generated
Normal file
3552
docs/package-lock.json
generated
Normal file
|
|
@ -0,0 +1,3552 @@
|
|||
{
|
||||
"name": "castopod-docs",
|
||||
"version": "0.0.0-development",
|
||||
"lockfileVersion": 2,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "castopod-docs",
|
||||
"version": "0.0.0-development",
|
||||
"license": "AGPL-3.0-or-later",
|
||||
"devDependencies": {
|
||||
"tailwindcss": "^3.0.22",
|
||||
"vitepress": "^0.22.2"
|
||||
}
|
||||
},
|
||||
"node_modules/@algolia/autocomplete-core": {
|
||||
"version": "1.5.2",
|
||||
"resolved": "https://registry.npmjs.org/@algolia/autocomplete-core/-/autocomplete-core-1.5.2.tgz",
|
||||
"integrity": "sha512-DY0bhyczFSS1b/CqJlTE/nQRtnTAHl6IemIkBy0nEWnhDzRDdtdx4p5Uuk3vwAFxwEEgi1WqKwgSSMx6DpNL4A==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@algolia/autocomplete-shared": "1.5.2"
|
||||
}
|
||||
},
|
||||
"node_modules/@algolia/autocomplete-preset-algolia": {
|
||||
"version": "1.5.2",
|
||||
"resolved": "https://registry.npmjs.org/@algolia/autocomplete-preset-algolia/-/autocomplete-preset-algolia-1.5.2.tgz",
|
||||
"integrity": "sha512-3MRYnYQFJyovANzSX2CToS6/5cfVjbLLqFsZTKcvF3abhQzxbqwwaMBlJtt620uBUOeMzhdfasKhCc40+RHiZw==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@algolia/autocomplete-shared": "1.5.2"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"@algolia/client-search": "^4.9.1",
|
||||
"algoliasearch": "^4.9.1"
|
||||
}
|
||||
},
|
||||
"node_modules/@algolia/autocomplete-shared": {
|
||||
"version": "1.5.2",
|
||||
"resolved": "https://registry.npmjs.org/@algolia/autocomplete-shared/-/autocomplete-shared-1.5.2.tgz",
|
||||
"integrity": "sha512-ylQAYv5H0YKMfHgVWX0j0NmL8XBcAeeeVQUmppnnMtzDbDnca6CzhKj3Q8eF9cHCgcdTDdb5K+3aKyGWA0obug==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/@algolia/cache-browser-local-storage": {
|
||||
"version": "4.12.1",
|
||||
"resolved": "https://registry.npmjs.org/@algolia/cache-browser-local-storage/-/cache-browser-local-storage-4.12.1.tgz",
|
||||
"integrity": "sha512-ERFFOnC9740xAkuO0iZTQqm2AzU7Dpz/s+g7o48GlZgx5p9GgNcsuK5eS0GoW/tAK+fnKlizCtlFHNuIWuvfsg==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@algolia/cache-common": "4.12.1"
|
||||
}
|
||||
},
|
||||
"node_modules/@algolia/cache-common": {
|
||||
"version": "4.12.1",
|
||||
"resolved": "https://registry.npmjs.org/@algolia/cache-common/-/cache-common-4.12.1.tgz",
|
||||
"integrity": "sha512-UugTER3V40jT+e19Dmph5PKMeliYKxycNPwrPNADin0RcWNfT2QksK9Ff2N2W7UKraqMOzoeDb4LAJtxcK1a8Q==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/@algolia/cache-in-memory": {
|
||||
"version": "4.12.1",
|
||||
"resolved": "https://registry.npmjs.org/@algolia/cache-in-memory/-/cache-in-memory-4.12.1.tgz",
|
||||
"integrity": "sha512-U6iaunaxK1lHsAf02UWF58foKFEcrVLsHwN56UkCtwn32nlP9rz52WOcHsgk6TJrL8NDcO5swMjtOQ5XHESFLw==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@algolia/cache-common": "4.12.1"
|
||||
}
|
||||
},
|
||||
"node_modules/@algolia/client-account": {
|
||||
"version": "4.12.1",
|
||||
"resolved": "https://registry.npmjs.org/@algolia/client-account/-/client-account-4.12.1.tgz",
|
||||
"integrity": "sha512-jGo4ConJNoMdTCR2zouO0jO/JcJmzOK6crFxMMLvdnB1JhmMbuIKluOTJVlBWeivnmcsqb7r0v7qTCPW5PAyxQ==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@algolia/client-common": "4.12.1",
|
||||
"@algolia/client-search": "4.12.1",
|
||||
"@algolia/transporter": "4.12.1"
|
||||
}
|
||||
},
|
||||
"node_modules/@algolia/client-analytics": {
|
||||
"version": "4.12.1",
|
||||
"resolved": "https://registry.npmjs.org/@algolia/client-analytics/-/client-analytics-4.12.1.tgz",
|
||||
"integrity": "sha512-h1It7KXzIthlhuhfBk7LteYq72tym9maQDUsyRW0Gft8b6ZQahnRak9gcCvKwhcJ1vJoP7T7JrNYGiYSicTD9g==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@algolia/client-common": "4.12.1",
|
||||
"@algolia/client-search": "4.12.1",
|
||||
"@algolia/requester-common": "4.12.1",
|
||||
"@algolia/transporter": "4.12.1"
|
||||
}
|
||||
},
|
||||
"node_modules/@algolia/client-common": {
|
||||
"version": "4.12.1",
|
||||
"resolved": "https://registry.npmjs.org/@algolia/client-common/-/client-common-4.12.1.tgz",
|
||||
"integrity": "sha512-obnJ8eSbv+h94Grk83DTGQ3bqhViSWureV6oK1s21/KMGWbb3DkduHm+lcwFrMFkjSUSzosLBHV9EQUIBvueTw==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@algolia/requester-common": "4.12.1",
|
||||
"@algolia/transporter": "4.12.1"
|
||||
}
|
||||
},
|
||||
"node_modules/@algolia/client-personalization": {
|
||||
"version": "4.12.1",
|
||||
"resolved": "https://registry.npmjs.org/@algolia/client-personalization/-/client-personalization-4.12.1.tgz",
|
||||
"integrity": "sha512-sMSnjjPjRgByGHYygV+5L/E8a6RgU7l2GbpJukSzJ9GRY37tHmBHuvahv8JjdCGJ2p7QDYLnQy5bN5Z02qjc7Q==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@algolia/client-common": "4.12.1",
|
||||
"@algolia/requester-common": "4.12.1",
|
||||
"@algolia/transporter": "4.12.1"
|
||||
}
|
||||
},
|
||||
"node_modules/@algolia/client-search": {
|
||||
"version": "4.12.1",
|
||||
"resolved": "https://registry.npmjs.org/@algolia/client-search/-/client-search-4.12.1.tgz",
|
||||
"integrity": "sha512-MwwKKprfY6X2nJ5Ki/ccXM2GDEePvVjZnnoOB2io3dLKW4fTqeSRlC5DRXeFD7UM0vOPPHr4ItV2aj19APKNVQ==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@algolia/client-common": "4.12.1",
|
||||
"@algolia/requester-common": "4.12.1",
|
||||
"@algolia/transporter": "4.12.1"
|
||||
}
|
||||
},
|
||||
"node_modules/@algolia/logger-common": {
|
||||
"version": "4.12.1",
|
||||
"resolved": "https://registry.npmjs.org/@algolia/logger-common/-/logger-common-4.12.1.tgz",
|
||||
"integrity": "sha512-fCgrzlXGATNqdFTxwx0GsyPXK+Uqrx1SZ3iuY2VGPPqdt1a20clAG2n2OcLHJpvaa6vMFPlJyWvbqAgzxdxBlQ==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/@algolia/logger-console": {
|
||||
"version": "4.12.1",
|
||||
"resolved": "https://registry.npmjs.org/@algolia/logger-console/-/logger-console-4.12.1.tgz",
|
||||
"integrity": "sha512-0owaEnq/davngQMYqxLA4KrhWHiXujQ1CU3FFnyUcMyBR7rGHI48zSOUpqnsAXrMBdSH6rH5BDkSUUFwsh8RkQ==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@algolia/logger-common": "4.12.1"
|
||||
}
|
||||
},
|
||||
"node_modules/@algolia/requester-browser-xhr": {
|
||||
"version": "4.12.1",
|
||||
"resolved": "https://registry.npmjs.org/@algolia/requester-browser-xhr/-/requester-browser-xhr-4.12.1.tgz",
|
||||
"integrity": "sha512-OaMxDyG0TZG0oqz1lQh9e3woantAG1bLnuwq3fmypsrQxra4IQZiyn1x+kEb69D2TcXApI5gOgrD4oWhtEVMtw==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@algolia/requester-common": "4.12.1"
|
||||
}
|
||||
},
|
||||
"node_modules/@algolia/requester-common": {
|
||||
"version": "4.12.1",
|
||||
"resolved": "https://registry.npmjs.org/@algolia/requester-common/-/requester-common-4.12.1.tgz",
|
||||
"integrity": "sha512-XWIrWQNJ1vIrSuL/bUk3ZwNMNxl+aWz6dNboRW6+lGTcMIwc3NBFE90ogbZKhNrFRff8zI4qCF15tjW+Fyhpow==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/@algolia/requester-node-http": {
|
||||
"version": "4.12.1",
|
||||
"resolved": "https://registry.npmjs.org/@algolia/requester-node-http/-/requester-node-http-4.12.1.tgz",
|
||||
"integrity": "sha512-awBtwaD+s0hxkA1aehYn8F0t9wqGoBVWgY4JPHBmp1ChO3pK7RKnnvnv7QQa9vTlllX29oPt/BBVgMo1Z3n1Qg==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@algolia/requester-common": "4.12.1"
|
||||
}
|
||||
},
|
||||
"node_modules/@algolia/transporter": {
|
||||
"version": "4.12.1",
|
||||
"resolved": "https://registry.npmjs.org/@algolia/transporter/-/transporter-4.12.1.tgz",
|
||||
"integrity": "sha512-BGeNgdEHc6dXIk2g8kdlOoQ6fQ6OIaKQcplEj7HPoi+XZUeAvRi3Pff3QWd7YmybWkjzd9AnTzieTASDWhL+sQ==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@algolia/cache-common": "4.12.1",
|
||||
"@algolia/logger-common": "4.12.1",
|
||||
"@algolia/requester-common": "4.12.1"
|
||||
}
|
||||
},
|
||||
"node_modules/@babel/code-frame": {
|
||||
"version": "7.16.7",
|
||||
"resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.16.7.tgz",
|
||||
"integrity": "sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@babel/highlight": "^7.16.7"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=6.9.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@babel/helper-validator-identifier": {
|
||||
"version": "7.16.7",
|
||||
"resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.16.7.tgz",
|
||||
"integrity": "sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw==",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">=6.9.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@babel/highlight": {
|
||||
"version": "7.16.10",
|
||||
"resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.16.10.tgz",
|
||||
"integrity": "sha512-5FnTQLSLswEj6IkgVw5KusNUUFY9ZGqe/TRFnP/BKYHYgfh7tc+C7mwiy95/yNP7Dh9x580Vv8r7u7ZfTBFxdw==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@babel/helper-validator-identifier": "^7.16.7",
|
||||
"chalk": "^2.0.0",
|
||||
"js-tokens": "^4.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=6.9.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@babel/highlight/node_modules/ansi-styles": {
|
||||
"version": "3.2.1",
|
||||
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
|
||||
"integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"color-convert": "^1.9.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=4"
|
||||
}
|
||||
},
|
||||
"node_modules/@babel/highlight/node_modules/chalk": {
|
||||
"version": "2.4.2",
|
||||
"resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
|
||||
"integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"ansi-styles": "^3.2.1",
|
||||
"escape-string-regexp": "^1.0.5",
|
||||
"supports-color": "^5.3.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=4"
|
||||
}
|
||||
},
|
||||
"node_modules/@babel/highlight/node_modules/color-convert": {
|
||||
"version": "1.9.3",
|
||||
"resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
|
||||
"integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"color-name": "1.1.3"
|
||||
}
|
||||
},
|
||||
"node_modules/@babel/highlight/node_modules/color-name": {
|
||||
"version": "1.1.3",
|
||||
"resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
|
||||
"integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/@babel/highlight/node_modules/has-flag": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
|
||||
"integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">=4"
|
||||
}
|
||||
},
|
||||
"node_modules/@babel/highlight/node_modules/supports-color": {
|
||||
"version": "5.5.0",
|
||||
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
|
||||
"integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"has-flag": "^3.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=4"
|
||||
}
|
||||
},
|
||||
"node_modules/@babel/parser": {
|
||||
"version": "7.17.0",
|
||||
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.0.tgz",
|
||||
"integrity": "sha512-VKXSCQx5D8S04ej+Dqsr1CzYvvWgf20jIw2D+YhQCrIlr2UZGaDds23Y0xg75/skOxpLCRpUZvk/1EAVkGoDOw==",
|
||||
"dev": true,
|
||||
"bin": {
|
||||
"parser": "bin/babel-parser.js"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=6.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@docsearch/css": {
|
||||
"version": "3.0.0-alpha.50",
|
||||
"resolved": "https://registry.npmjs.org/@docsearch/css/-/css-3.0.0-alpha.50.tgz",
|
||||
"integrity": "sha512-QeWFCQOtS9D+Fi20liKsPXF2j/xWKh52e+P2Z1UATIdPMqmH6zoB2lcUz+cgv6PPVgWUtECeR6VSSUm71LT94w==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/@docsearch/js": {
|
||||
"version": "3.0.0-alpha.50",
|
||||
"resolved": "https://registry.npmjs.org/@docsearch/js/-/js-3.0.0-alpha.50.tgz",
|
||||
"integrity": "sha512-1ap9Wz5oR/Z8yybaCZhsptXU43es3H52eEQUZtmzb8dUWyCW+3iXaKVB/qeMJOQWtggZ/WvZV3YknVIbCMR2dQ==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@docsearch/react": "3.0.0-alpha.50",
|
||||
"preact": "^10.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@docsearch/react": {
|
||||
"version": "3.0.0-alpha.50",
|
||||
"resolved": "https://registry.npmjs.org/@docsearch/react/-/react-3.0.0-alpha.50.tgz",
|
||||
"integrity": "sha512-oDGV1zZCRYv7MWsh6CyQVthYTRc3b4q+6kKwNYb1/g/Wf/4nJHutpxolFLHdEUDhrJ4Xi8wxwQG+lEwAVBTHPg==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@algolia/autocomplete-core": "1.5.2",
|
||||
"@algolia/autocomplete-preset-algolia": "1.5.2",
|
||||
"@docsearch/css": "3.0.0-alpha.50",
|
||||
"algoliasearch": "^4.0.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"@types/react": ">= 16.8.0 < 18.0.0",
|
||||
"react": ">= 16.8.0 < 18.0.0",
|
||||
"react-dom": ">= 16.8.0 < 18.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@nodelib/fs.scandir": {
|
||||
"version": "2.1.5",
|
||||
"resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
|
||||
"integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@nodelib/fs.stat": "2.0.5",
|
||||
"run-parallel": "^1.1.9"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 8"
|
||||
}
|
||||
},
|
||||
"node_modules/@nodelib/fs.stat": {
|
||||
"version": "2.0.5",
|
||||
"resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz",
|
||||
"integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">= 8"
|
||||
}
|
||||
},
|
||||
"node_modules/@nodelib/fs.walk": {
|
||||
"version": "1.2.8",
|
||||
"resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz",
|
||||
"integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@nodelib/fs.scandir": "2.1.5",
|
||||
"fastq": "^1.6.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 8"
|
||||
}
|
||||
},
|
||||
"node_modules/@types/parse-json": {
|
||||
"version": "4.0.0",
|
||||
"resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz",
|
||||
"integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/@types/prop-types": {
|
||||
"version": "15.7.4",
|
||||
"resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.4.tgz",
|
||||
"integrity": "sha512-rZ5drC/jWjrArrS8BR6SIr4cWpW09RNTYt9AMZo3Jwwif+iacXAqgVjm0B0Bv/S1jhDXKHqRVNCbACkJ89RAnQ==",
|
||||
"dev": true,
|
||||
"peer": true
|
||||
},
|
||||
"node_modules/@types/react": {
|
||||
"version": "17.0.39",
|
||||
"resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.39.tgz",
|
||||
"integrity": "sha512-UVavlfAxDd/AgAacMa60Azl7ygyQNRwC/DsHZmKgNvPmRR5p70AJ5Q9EAmL2NWOJmeV+vVUI4IAP7GZrN8h8Ug==",
|
||||
"dev": true,
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"@types/prop-types": "*",
|
||||
"@types/scheduler": "*",
|
||||
"csstype": "^3.0.2"
|
||||
}
|
||||
},
|
||||
"node_modules/@types/scheduler": {
|
||||
"version": "0.16.2",
|
||||
"resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.2.tgz",
|
||||
"integrity": "sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew==",
|
||||
"dev": true,
|
||||
"peer": true
|
||||
},
|
||||
"node_modules/@vitejs/plugin-vue": {
|
||||
"version": "2.2.0",
|
||||
"resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-2.2.0.tgz",
|
||||
"integrity": "sha512-wXigM1EwN2G7rZcwG6kLk9ivvIMhx2363tCEvMBiXcTu5nePM/12hUPVzPb83Uugt6U+zom1gTpJopi/Ow/jwg==",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">=12.0.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"vite": "^2.5.10",
|
||||
"vue": "^3.2.25"
|
||||
}
|
||||
},
|
||||
"node_modules/@vue/compiler-core": {
|
||||
"version": "3.2.31",
|
||||
"resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.31.tgz",
|
||||
"integrity": "sha512-aKno00qoA4o+V/kR6i/pE+aP+esng5siNAVQ422TkBNM6qA4veXiZbSe8OTXHXquEi/f6Akc+nLfB4JGfe4/WQ==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@babel/parser": "^7.16.4",
|
||||
"@vue/shared": "3.2.31",
|
||||
"estree-walker": "^2.0.2",
|
||||
"source-map": "^0.6.1"
|
||||
}
|
||||
},
|
||||
"node_modules/@vue/compiler-dom": {
|
||||
"version": "3.2.31",
|
||||
"resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.31.tgz",
|
||||
"integrity": "sha512-60zIlFfzIDf3u91cqfqy9KhCKIJgPeqxgveH2L+87RcGU/alT6BRrk5JtUso0OibH3O7NXuNOQ0cDc9beT0wrg==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@vue/compiler-core": "3.2.31",
|
||||
"@vue/shared": "3.2.31"
|
||||
}
|
||||
},
|
||||
"node_modules/@vue/compiler-sfc": {
|
||||
"version": "3.2.31",
|
||||
"resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.31.tgz",
|
||||
"integrity": "sha512-748adc9msSPGzXgibHiO6T7RWgfnDcVQD+VVwYgSsyyY8Ans64tALHZANrKtOzvkwznV/F4H7OAod/jIlp/dkQ==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@babel/parser": "^7.16.4",
|
||||
"@vue/compiler-core": "3.2.31",
|
||||
"@vue/compiler-dom": "3.2.31",
|
||||
"@vue/compiler-ssr": "3.2.31",
|
||||
"@vue/reactivity-transform": "3.2.31",
|
||||
"@vue/shared": "3.2.31",
|
||||
"estree-walker": "^2.0.2",
|
||||
"magic-string": "^0.25.7",
|
||||
"postcss": "^8.1.10",
|
||||
"source-map": "^0.6.1"
|
||||
}
|
||||
},
|
||||
"node_modules/@vue/compiler-ssr": {
|
||||
"version": "3.2.31",
|
||||
"resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.31.tgz",
|
||||
"integrity": "sha512-mjN0rqig+A8TVDnsGPYJM5dpbjlXeHUm2oZHZwGyMYiGT/F4fhJf/cXy8QpjnLQK4Y9Et4GWzHn9PS8AHUnSkw==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@vue/compiler-dom": "3.2.31",
|
||||
"@vue/shared": "3.2.31"
|
||||
}
|
||||
},
|
||||
"node_modules/@vue/reactivity": {
|
||||
"version": "3.2.31",
|
||||
"resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.2.31.tgz",
|
||||
"integrity": "sha512-HVr0l211gbhpEKYr2hYe7hRsV91uIVGFYNHj73njbARVGHQvIojkImKMaZNDdoDZOIkMsBc9a1sMqR+WZwfSCw==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@vue/shared": "3.2.31"
|
||||
}
|
||||
},
|
||||
"node_modules/@vue/reactivity-transform": {
|
||||
"version": "3.2.31",
|
||||
"resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.31.tgz",
|
||||
"integrity": "sha512-uS4l4z/W7wXdI+Va5pgVxBJ345wyGFKvpPYtdSgvfJfX/x2Ymm6ophQlXXB6acqGHtXuBqNyyO3zVp9b1r0MOA==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@babel/parser": "^7.16.4",
|
||||
"@vue/compiler-core": "3.2.31",
|
||||
"@vue/shared": "3.2.31",
|
||||
"estree-walker": "^2.0.2",
|
||||
"magic-string": "^0.25.7"
|
||||
}
|
||||
},
|
||||
"node_modules/@vue/runtime-core": {
|
||||
"version": "3.2.31",
|
||||
"resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.2.31.tgz",
|
||||
"integrity": "sha512-Kcog5XmSY7VHFEMuk4+Gap8gUssYMZ2+w+cmGI6OpZWYOEIcbE0TPzzPHi+8XTzAgx1w/ZxDFcXhZeXN5eKWsA==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@vue/reactivity": "3.2.31",
|
||||
"@vue/shared": "3.2.31"
|
||||
}
|
||||
},
|
||||
"node_modules/@vue/runtime-dom": {
|
||||
"version": "3.2.31",
|
||||
"resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.2.31.tgz",
|
||||
"integrity": "sha512-N+o0sICVLScUjfLG7u9u5XCjvmsexAiPt17GNnaWHJUfsKed5e85/A3SWgKxzlxx2SW/Hw7RQxzxbXez9PtY3g==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@vue/runtime-core": "3.2.31",
|
||||
"@vue/shared": "3.2.31",
|
||||
"csstype": "^2.6.8"
|
||||
}
|
||||
},
|
||||
"node_modules/@vue/runtime-dom/node_modules/csstype": {
|
||||
"version": "2.6.19",
|
||||
"resolved": "https://registry.npmjs.org/csstype/-/csstype-2.6.19.tgz",
|
||||
"integrity": "sha512-ZVxXaNy28/k3kJg0Fou5MiYpp88j7H9hLZp8PDC3jV0WFjfH5E9xHb56L0W59cPbKbcHXeP4qyT8PrHp8t6LcQ==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/@vue/server-renderer": {
|
||||
"version": "3.2.31",
|
||||
"resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.2.31.tgz",
|
||||
"integrity": "sha512-8CN3Zj2HyR2LQQBHZ61HexF5NReqngLT3oahyiVRfSSvak+oAvVmu8iNLSu6XR77Ili2AOpnAt1y8ywjjqtmkg==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@vue/compiler-ssr": "3.2.31",
|
||||
"@vue/shared": "3.2.31"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"vue": "3.2.31"
|
||||
}
|
||||
},
|
||||
"node_modules/@vue/shared": {
|
||||
"version": "3.2.31",
|
||||
"resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.31.tgz",
|
||||
"integrity": "sha512-ymN2pj6zEjiKJZbrf98UM2pfDd6F2H7ksKw7NDt/ZZ1fh5Ei39X5tABugtT03ZRlWd9imccoK0hE8hpjpU7irQ==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/acorn": {
|
||||
"version": "7.4.1",
|
||||
"resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz",
|
||||
"integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==",
|
||||
"dev": true,
|
||||
"bin": {
|
||||
"acorn": "bin/acorn"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=0.4.0"
|
||||
}
|
||||
},
|
||||
"node_modules/acorn-node": {
|
||||
"version": "1.8.2",
|
||||
"resolved": "https://registry.npmjs.org/acorn-node/-/acorn-node-1.8.2.tgz",
|
||||
"integrity": "sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"acorn": "^7.0.0",
|
||||
"acorn-walk": "^7.0.0",
|
||||
"xtend": "^4.0.2"
|
||||
}
|
||||
},
|
||||
"node_modules/acorn-walk": {
|
||||
"version": "7.2.0",
|
||||
"resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz",
|
||||
"integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">=0.4.0"
|
||||
}
|
||||
},
|
||||
"node_modules/algoliasearch": {
|
||||
"version": "4.12.1",
|
||||
"resolved": "https://registry.npmjs.org/algoliasearch/-/algoliasearch-4.12.1.tgz",
|
||||
"integrity": "sha512-c0dM1g3zZBJrkzE5GA/Nu1y3fFxx3LCzxKzcmp2dgGS8P4CjszB/l3lsSh2MSrrK1Hn/KV4BlbBMXtYgG1Bfrw==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@algolia/cache-browser-local-storage": "4.12.1",
|
||||
"@algolia/cache-common": "4.12.1",
|
||||
"@algolia/cache-in-memory": "4.12.1",
|
||||
"@algolia/client-account": "4.12.1",
|
||||
"@algolia/client-analytics": "4.12.1",
|
||||
"@algolia/client-common": "4.12.1",
|
||||
"@algolia/client-personalization": "4.12.1",
|
||||
"@algolia/client-search": "4.12.1",
|
||||
"@algolia/logger-common": "4.12.1",
|
||||
"@algolia/logger-console": "4.12.1",
|
||||
"@algolia/requester-browser-xhr": "4.12.1",
|
||||
"@algolia/requester-common": "4.12.1",
|
||||
"@algolia/requester-node-http": "4.12.1",
|
||||
"@algolia/transporter": "4.12.1"
|
||||
}
|
||||
},
|
||||
"node_modules/ansi-styles": {
|
||||
"version": "4.3.0",
|
||||
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
|
||||
"integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"color-convert": "^2.0.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/chalk/ansi-styles?sponsor=1"
|
||||
}
|
||||
},
|
||||
"node_modules/anymatch": {
|
||||
"version": "3.1.2",
|
||||
"resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz",
|
||||
"integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"normalize-path": "^3.0.0",
|
||||
"picomatch": "^2.0.4"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 8"
|
||||
}
|
||||
},
|
||||
"node_modules/arg": {
|
||||
"version": "5.0.1",
|
||||
"resolved": "https://registry.npmjs.org/arg/-/arg-5.0.1.tgz",
|
||||
"integrity": "sha512-e0hDa9H2Z9AwFkk2qDlwhoMYE4eToKarchkQHovNdLTCYMHZHeRjI71crOh+dio4K6u1IcwubQqo79Ga4CyAQA==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/autoprefixer": {
|
||||
"version": "10.4.2",
|
||||
"resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.2.tgz",
|
||||
"integrity": "sha512-9fOPpHKuDW1w/0EKfRmVnxTDt8166MAnLI3mgZ1JCnhNtYWxcJ6Ud5CO/AVOZi/AvFa8DY9RTy3h3+tFBlrrdQ==",
|
||||
"dev": true,
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"browserslist": "^4.19.1",
|
||||
"caniuse-lite": "^1.0.30001297",
|
||||
"fraction.js": "^4.1.2",
|
||||
"normalize-range": "^0.1.2",
|
||||
"picocolors": "^1.0.0",
|
||||
"postcss-value-parser": "^4.2.0"
|
||||
},
|
||||
"bin": {
|
||||
"autoprefixer": "bin/autoprefixer"
|
||||
},
|
||||
"engines": {
|
||||
"node": "^10 || ^12 || >=14"
|
||||
},
|
||||
"funding": {
|
||||
"type": "opencollective",
|
||||
"url": "https://opencollective.com/postcss/"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"postcss": "^8.1.0"
|
||||
}
|
||||
},
|
||||
"node_modules/binary-extensions": {
|
||||
"version": "2.2.0",
|
||||
"resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz",
|
||||
"integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/braces": {
|
||||
"version": "3.0.2",
|
||||
"resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
|
||||
"integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"fill-range": "^7.0.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/browserslist": {
|
||||
"version": "4.19.1",
|
||||
"resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.19.1.tgz",
|
||||
"integrity": "sha512-u2tbbG5PdKRTUoctO3NBD8FQ5HdPh1ZXPHzp1rwaa5jTc+RV9/+RlWiAIKmjRPQF+xbGM9Kklj5bZQFa2s/38A==",
|
||||
"dev": true,
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"caniuse-lite": "^1.0.30001286",
|
||||
"electron-to-chromium": "^1.4.17",
|
||||
"escalade": "^3.1.1",
|
||||
"node-releases": "^2.0.1",
|
||||
"picocolors": "^1.0.0"
|
||||
},
|
||||
"bin": {
|
||||
"browserslist": "cli.js"
|
||||
},
|
||||
"engines": {
|
||||
"node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7"
|
||||
},
|
||||
"funding": {
|
||||
"type": "opencollective",
|
||||
"url": "https://opencollective.com/browserslist"
|
||||
}
|
||||
},
|
||||
"node_modules/callsites": {
|
||||
"version": "3.1.0",
|
||||
"resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
|
||||
"integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">=6"
|
||||
}
|
||||
},
|
||||
"node_modules/camelcase-css": {
|
||||
"version": "2.0.1",
|
||||
"resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz",
|
||||
"integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">= 6"
|
||||
}
|
||||
},
|
||||
"node_modules/caniuse-lite": {
|
||||
"version": "1.0.30001312",
|
||||
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001312.tgz",
|
||||
"integrity": "sha512-Wiz1Psk2MEK0pX3rUzWaunLTZzqS2JYZFzNKqAiJGiuxIjRPLgV6+VDPOg6lQOUxmDwhTlh198JsTTi8Hzw6aQ==",
|
||||
"dev": true,
|
||||
"peer": true,
|
||||
"funding": {
|
||||
"type": "opencollective",
|
||||
"url": "https://opencollective.com/browserslist"
|
||||
}
|
||||
},
|
||||
"node_modules/chalk": {
|
||||
"version": "4.1.2",
|
||||
"resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
|
||||
"integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"ansi-styles": "^4.1.0",
|
||||
"supports-color": "^7.1.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=10"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/chalk/chalk?sponsor=1"
|
||||
}
|
||||
},
|
||||
"node_modules/chokidar": {
|
||||
"version": "3.5.3",
|
||||
"resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz",
|
||||
"integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==",
|
||||
"dev": true,
|
||||
"funding": [
|
||||
{
|
||||
"type": "individual",
|
||||
"url": "https://paulmillr.com/funding/"
|
||||
}
|
||||
],
|
||||
"dependencies": {
|
||||
"anymatch": "~3.1.2",
|
||||
"braces": "~3.0.2",
|
||||
"glob-parent": "~5.1.2",
|
||||
"is-binary-path": "~2.1.0",
|
||||
"is-glob": "~4.0.1",
|
||||
"normalize-path": "~3.0.0",
|
||||
"readdirp": "~3.6.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 8.10.0"
|
||||
},
|
||||
"optionalDependencies": {
|
||||
"fsevents": "~2.3.2"
|
||||
}
|
||||
},
|
||||
"node_modules/chokidar/node_modules/glob-parent": {
|
||||
"version": "5.1.2",
|
||||
"resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
|
||||
"integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"is-glob": "^4.0.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 6"
|
||||
}
|
||||
},
|
||||
"node_modules/color-convert": {
|
||||
"version": "2.0.1",
|
||||
"resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
|
||||
"integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"color-name": "~1.1.4"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=7.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/color-name": {
|
||||
"version": "1.1.4",
|
||||
"resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
|
||||
"integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/cosmiconfig": {
|
||||
"version": "7.0.1",
|
||||
"resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.0.1.tgz",
|
||||
"integrity": "sha512-a1YWNUV2HwGimB7dU2s1wUMurNKjpx60HxBB6xUM8Re+2s1g1IIfJvFR0/iCF+XHdE0GMTKTuLR32UQff4TEyQ==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@types/parse-json": "^4.0.0",
|
||||
"import-fresh": "^3.2.1",
|
||||
"parse-json": "^5.0.0",
|
||||
"path-type": "^4.0.0",
|
||||
"yaml": "^1.10.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=10"
|
||||
}
|
||||
},
|
||||
"node_modules/cssesc": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz",
|
||||
"integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==",
|
||||
"dev": true,
|
||||
"bin": {
|
||||
"cssesc": "bin/cssesc"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=4"
|
||||
}
|
||||
},
|
||||
"node_modules/csstype": {
|
||||
"version": "3.0.10",
|
||||
"resolved": "https://registry.npmjs.org/csstype/-/csstype-3.0.10.tgz",
|
||||
"integrity": "sha512-2u44ZG2OcNUO9HDp/Jl8C07x6pU/eTR3ncV91SiK3dhG9TWvRVsCoJw14Ckx5DgWkzGA3waZWO3d7pgqpUI/XA==",
|
||||
"dev": true,
|
||||
"peer": true
|
||||
},
|
||||
"node_modules/defined": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/defined/-/defined-1.0.0.tgz",
|
||||
"integrity": "sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM=",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/detective": {
|
||||
"version": "5.2.0",
|
||||
"resolved": "https://registry.npmjs.org/detective/-/detective-5.2.0.tgz",
|
||||
"integrity": "sha512-6SsIx+nUUbuK0EthKjv0zrdnajCCXVYGmbYYiYjFVpzcjwEs/JMDZ8tPRG29J/HhN56t3GJp2cGSWDRjjot8Pg==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"acorn-node": "^1.6.1",
|
||||
"defined": "^1.0.0",
|
||||
"minimist": "^1.1.1"
|
||||
},
|
||||
"bin": {
|
||||
"detective": "bin/detective.js"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=0.8.0"
|
||||
}
|
||||
},
|
||||
"node_modules/didyoumean": {
|
||||
"version": "1.2.2",
|
||||
"resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz",
|
||||
"integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/dlv": {
|
||||
"version": "1.1.3",
|
||||
"resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz",
|
||||
"integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/electron-to-chromium": {
|
||||
"version": "1.4.71",
|
||||
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.71.tgz",
|
||||
"integrity": "sha512-Hk61vXXKRb2cd3znPE9F+2pLWdIOmP7GjiTj45y6L3W/lO+hSnUSUhq+6lEaERWBdZOHbk2s3YV5c9xVl3boVw==",
|
||||
"dev": true,
|
||||
"peer": true
|
||||
},
|
||||
"node_modules/error-ex": {
|
||||
"version": "1.3.2",
|
||||
"resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz",
|
||||
"integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"is-arrayish": "^0.2.1"
|
||||
}
|
||||
},
|
||||
"node_modules/esbuild": {
|
||||
"version": "0.14.21",
|
||||
"resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.14.21.tgz",
|
||||
"integrity": "sha512-7WEoNMBJdLN993dr9h0CpFHPRc3yFZD+EAVY9lg6syJJ12gc5fHq8d75QRExuhnMkT2DaRiIKFThRvDWP+fO+A==",
|
||||
"dev": true,
|
||||
"hasInstallScript": true,
|
||||
"bin": {
|
||||
"esbuild": "bin/esbuild"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=12"
|
||||
},
|
||||
"optionalDependencies": {
|
||||
"esbuild-android-arm64": "0.14.21",
|
||||
"esbuild-darwin-64": "0.14.21",
|
||||
"esbuild-darwin-arm64": "0.14.21",
|
||||
"esbuild-freebsd-64": "0.14.21",
|
||||
"esbuild-freebsd-arm64": "0.14.21",
|
||||
"esbuild-linux-32": "0.14.21",
|
||||
"esbuild-linux-64": "0.14.21",
|
||||
"esbuild-linux-arm": "0.14.21",
|
||||
"esbuild-linux-arm64": "0.14.21",
|
||||
"esbuild-linux-mips64le": "0.14.21",
|
||||
"esbuild-linux-ppc64le": "0.14.21",
|
||||
"esbuild-linux-riscv64": "0.14.21",
|
||||
"esbuild-linux-s390x": "0.14.21",
|
||||
"esbuild-netbsd-64": "0.14.21",
|
||||
"esbuild-openbsd-64": "0.14.21",
|
||||
"esbuild-sunos-64": "0.14.21",
|
||||
"esbuild-windows-32": "0.14.21",
|
||||
"esbuild-windows-64": "0.14.21",
|
||||
"esbuild-windows-arm64": "0.14.21"
|
||||
}
|
||||
},
|
||||
"node_modules/esbuild-android-arm64": {
|
||||
"version": "0.14.21",
|
||||
"resolved": "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.14.21.tgz",
|
||||
"integrity": "sha512-Bqgld1TY0wZv8TqiQmVxQFgYzz8ZmyzT7clXBDZFkOOdRybzsnj8AZuK1pwcLVA7Ya6XncHgJqIao7NFd3s0RQ==",
|
||||
"cpu": [
|
||||
"arm64"
|
||||
],
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"os": [
|
||||
"android"
|
||||
],
|
||||
"engines": {
|
||||
"node": ">=12"
|
||||
}
|
||||
},
|
||||
"node_modules/esbuild-darwin-64": {
|
||||
"version": "0.14.21",
|
||||
"resolved": "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.14.21.tgz",
|
||||
"integrity": "sha512-j+Eg+e13djzyYINVvAbOo2/zvZ2DivuJJTaBrJnJHSD7kUNuGHRkHoSfFjbI80KHkn091w350wdmXDNSgRjfYQ==",
|
||||
"cpu": [
|
||||
"x64"
|
||||
],
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"os": [
|
||||
"darwin"
|
||||
],
|
||||
"engines": {
|
||||
"node": ">=12"
|
||||
}
|
||||
},
|
||||
"node_modules/esbuild-darwin-arm64": {
|
||||
"version": "0.14.21",
|
||||
"resolved": "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.14.21.tgz",
|
||||
"integrity": "sha512-nDNTKWDPI0RuoPj5BhcSB2z5EmZJJAyRtZLIjyXSqSpAyoB8eyAKXl4lB8U2P78Fnh4Lh1le/fmpewXE04JhBQ==",
|
||||
"cpu": [
|
||||
"arm64"
|
||||
],
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"os": [
|
||||
"darwin"
|
||||
],
|
||||
"engines": {
|
||||
"node": ">=12"
|
||||
}
|
||||
},
|
||||
"node_modules/esbuild-freebsd-64": {
|
||||
"version": "0.14.21",
|
||||
"resolved": "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.14.21.tgz",
|
||||
"integrity": "sha512-zIurkCHXhxELiDZtLGiexi8t8onQc2LtuE+S7457H/pP0g0MLRKMrsn/IN4LDkNe6lvBjuoZZi2OfelOHn831g==",
|
||||
"cpu": [
|
||||
"x64"
|
||||
],
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"os": [
|
||||
"freebsd"
|
||||
],
|
||||
"engines": {
|
||||
"node": ">=12"
|
||||
}
|
||||
},
|
||||
"node_modules/esbuild-freebsd-arm64": {
|
||||
"version": "0.14.21",
|
||||
"resolved": "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.14.21.tgz",
|
||||
"integrity": "sha512-wdxMmkJfbwcN+q85MpeUEamVZ40FNsBa9mPq8tAszDn8TRT2HoJvVRADPIIBa9SWWwlDChIMjkDKAnS3KS/sPA==",
|
||||
"cpu": [
|
||||
"arm64"
|
||||
],
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"os": [
|
||||
"freebsd"
|
||||
],
|
||||
"engines": {
|
||||
"node": ">=12"
|
||||
}
|
||||
},
|
||||
"node_modules/esbuild-linux-32": {
|
||||
"version": "0.14.21",
|
||||
"resolved": "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.14.21.tgz",
|
||||
"integrity": "sha512-fmxvyzOPPh2xiEHojpCeIQP6pXcoKsWbz3ryDDIKLOsk4xp3GbpHIEAWP0xTeuhEbendmvBDVKbAVv3PnODXLg==",
|
||||
"cpu": [
|
||||
"ia32"
|
||||
],
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"os": [
|
||||
"linux"
|
||||
],
|
||||
"engines": {
|
||||
"node": ">=12"
|
||||
}
|
||||
},
|
||||
"node_modules/esbuild-linux-64": {
|
||||
"version": "0.14.21",
|
||||
"resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.14.21.tgz",
|
||||
"integrity": "sha512-edZyNOv1ql+kpmlzdqzzDjRQYls+tSyi4QFi+PdBhATJFUqHsnNELWA9vMSzAaInPOEaVUTA5Ml28XFChcy4DA==",
|
||||
"cpu": [
|
||||
"x64"
|
||||
],
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"os": [
|
||||
"linux"
|
||||
],
|
||||
"engines": {
|
||||
"node": ">=12"
|
||||
}
|
||||
},
|
||||
"node_modules/esbuild-linux-arm": {
|
||||
"version": "0.14.21",
|
||||
"resolved": "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.14.21.tgz",
|
||||
"integrity": "sha512-aSU5pUueK6afqmLQsbU+QcFBT62L+4G9hHMJDHWfxgid6hzhSmfRH9U/f+ymvxsSTr/HFRU4y7ox8ZyhlVl98w==",
|
||||
"cpu": [
|
||||
"arm"
|
||||
],
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"os": [
|
||||
"linux"
|
||||
],
|
||||
"engines": {
|
||||
"node": ">=12"
|
||||
}
|
||||
},
|
||||
"node_modules/esbuild-linux-arm64": {
|
||||
"version": "0.14.21",
|
||||
"resolved": "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.14.21.tgz",
|
||||
"integrity": "sha512-t5qxRkq4zdQC0zXpzSB2bTtfLgOvR0C6BXYaRE/6/k8/4SrkZcTZBeNu+xGvwCU4b5dU9ST9pwIWkK6T1grS8g==",
|
||||
"cpu": [
|
||||
"arm64"
|
||||
],
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"os": [
|
||||
"linux"
|
||||
],
|
||||
"engines": {
|
||||
"node": ">=12"
|
||||
}
|
||||
},
|
||||
"node_modules/esbuild-linux-mips64le": {
|
||||
"version": "0.14.21",
|
||||
"resolved": "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.14.21.tgz",
|
||||
"integrity": "sha512-jLZLQGCNlUsmIHtGqNvBs3zN+7a4D9ckf0JZ+jQTwHdZJ1SgV9mAjbB980OFo66LoY+WeM7t3WEnq3FjI1zw4A==",
|
||||
"cpu": [
|
||||
"mips64el"
|
||||
],
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"os": [
|
||||
"linux"
|
||||
],
|
||||
"engines": {
|
||||
"node": ">=12"
|
||||
}
|
||||
},
|
||||
"node_modules/esbuild-linux-ppc64le": {
|
||||
"version": "0.14.21",
|
||||
"resolved": "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.14.21.tgz",
|
||||
"integrity": "sha512-4TWxpK391en2UBUw6GSrukToTDu6lL9vkm3Ll40HrI08WG3qcnJu7bl8e1+GzelDsiw1QmfAY/nNvJ6iaHRpCQ==",
|
||||
"cpu": [
|
||||
"ppc64"
|
||||
],
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"os": [
|
||||
"linux"
|
||||
],
|
||||
"engines": {
|
||||
"node": ">=12"
|
||||
}
|
||||
},
|
||||
"node_modules/esbuild-linux-riscv64": {
|
||||
"version": "0.14.21",
|
||||
"resolved": "https://registry.npmjs.org/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.14.21.tgz",
|
||||
"integrity": "sha512-fElngqOaOfTsF+u+oetDLHsPG74vB2ZaGZUqmGefAJn3a5z9Z2pNa4WpVbbKgHpaAAy5tWM1m1sbGohj6Ki6+Q==",
|
||||
"cpu": [
|
||||
"riscv64"
|
||||
],
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"os": [
|
||||
"linux"
|
||||
],
|
||||
"engines": {
|
||||
"node": ">=12"
|
||||
}
|
||||
},
|
||||
"node_modules/esbuild-linux-s390x": {
|
||||
"version": "0.14.21",
|
||||
"resolved": "https://registry.npmjs.org/esbuild-linux-s390x/-/esbuild-linux-s390x-0.14.21.tgz",
|
||||
"integrity": "sha512-brleZ6R5fYv0qQ7ZBwenQmP6i9TdvJCB092c/3D3pTLQHBGHJb5zWgKxOeS7bdHzmLy6a6W7GbFk6QKpjyD6QA==",
|
||||
"cpu": [
|
||||
"s390x"
|
||||
],
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"os": [
|
||||
"linux"
|
||||
],
|
||||
"engines": {
|
||||
"node": ">=12"
|
||||
}
|
||||
},
|
||||
"node_modules/esbuild-netbsd-64": {
|
||||
"version": "0.14.21",
|
||||
"resolved": "https://registry.npmjs.org/esbuild-netbsd-64/-/esbuild-netbsd-64-0.14.21.tgz",
|
||||
"integrity": "sha512-nCEgsLCQ8RoFWVV8pVI+kX66ICwbPP/M9vEa0NJGIEB/Vs5sVGMqkf67oln90XNSkbc0bPBDuo4G6FxlF7PN8g==",
|
||||
"cpu": [
|
||||
"x64"
|
||||
],
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"os": [
|
||||
"netbsd"
|
||||
],
|
||||
"engines": {
|
||||
"node": ">=12"
|
||||
}
|
||||
},
|
||||
"node_modules/esbuild-openbsd-64": {
|
||||
"version": "0.14.21",
|
||||
"resolved": "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.14.21.tgz",
|
||||
"integrity": "sha512-h9zLMyVD0T73MDTVYIb/qUTokwI6EJH9O6wESuTNq6+XpMSr6C5aYZ4fvFKdNELW+Xsod+yDS2hV2JTUAbFrLA==",
|
||||
"cpu": [
|
||||
"x64"
|
||||
],
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"os": [
|
||||
"openbsd"
|
||||
],
|
||||
"engines": {
|
||||
"node": ">=12"
|
||||
}
|
||||
},
|
||||
"node_modules/esbuild-sunos-64": {
|
||||
"version": "0.14.21",
|
||||
"resolved": "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.14.21.tgz",
|
||||
"integrity": "sha512-Kl+7Cot32qd9oqpLdB1tEGXEkjBlijrIxMJ0+vlDFaqsODutif25on0IZlFxEBtL2Gosd4p5WCV1U7UskNQfXA==",
|
||||
"cpu": [
|
||||
"x64"
|
||||
],
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"os": [
|
||||
"sunos"
|
||||
],
|
||||
"engines": {
|
||||
"node": ">=12"
|
||||
}
|
||||
},
|
||||
"node_modules/esbuild-windows-32": {
|
||||
"version": "0.14.21",
|
||||
"resolved": "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.14.21.tgz",
|
||||
"integrity": "sha512-V7vnTq67xPBUCk/9UtlolmQ798Ecjdr1ZoI1vcSgw7M82aSSt0eZdP6bh5KAFZU8pxDcx3qoHyWQfHYr11f22A==",
|
||||
"cpu": [
|
||||
"ia32"
|
||||
],
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"os": [
|
||||
"win32"
|
||||
],
|
||||
"engines": {
|
||||
"node": ">=12"
|
||||
}
|
||||
},
|
||||
"node_modules/esbuild-windows-64": {
|
||||
"version": "0.14.21",
|
||||
"resolved": "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.14.21.tgz",
|
||||
"integrity": "sha512-kDgHjKOHwjfJDCyRGELzVxiP/RBJBTA+wyspf78MTTJQkyPuxH2vChReNdWc+dU2S4gIZFHMdP1Qrl/k22ZmaA==",
|
||||
"cpu": [
|
||||
"x64"
|
||||
],
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"os": [
|
||||
"win32"
|
||||
],
|
||||
"engines": {
|
||||
"node": ">=12"
|
||||
}
|
||||
},
|
||||
"node_modules/esbuild-windows-arm64": {
|
||||
"version": "0.14.21",
|
||||
"resolved": "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.14.21.tgz",
|
||||
"integrity": "sha512-8Sbo0zpzgwWrwjQYLmHF78f7E2xg5Ve63bjB2ng3V2aManilnnTGaliq2snYg+NOX60+hEvJHRdVnuIAHW0lVw==",
|
||||
"cpu": [
|
||||
"arm64"
|
||||
],
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"os": [
|
||||
"win32"
|
||||
],
|
||||
"engines": {
|
||||
"node": ">=12"
|
||||
}
|
||||
},
|
||||
"node_modules/escalade": {
|
||||
"version": "3.1.1",
|
||||
"resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz",
|
||||
"integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==",
|
||||
"dev": true,
|
||||
"peer": true,
|
||||
"engines": {
|
||||
"node": ">=6"
|
||||
}
|
||||
},
|
||||
"node_modules/escape-string-regexp": {
|
||||
"version": "1.0.5",
|
||||
"resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
|
||||
"integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">=0.8.0"
|
||||
}
|
||||
},
|
||||
"node_modules/estree-walker": {
|
||||
"version": "2.0.2",
|
||||
"resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz",
|
||||
"integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/fast-glob": {
|
||||
"version": "3.2.11",
|
||||
"resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.11.tgz",
|
||||
"integrity": "sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@nodelib/fs.stat": "^2.0.2",
|
||||
"@nodelib/fs.walk": "^1.2.3",
|
||||
"glob-parent": "^5.1.2",
|
||||
"merge2": "^1.3.0",
|
||||
"micromatch": "^4.0.4"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8.6.0"
|
||||
}
|
||||
},
|
||||
"node_modules/fast-glob/node_modules/glob-parent": {
|
||||
"version": "5.1.2",
|
||||
"resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
|
||||
"integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"is-glob": "^4.0.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 6"
|
||||
}
|
||||
},
|
||||
"node_modules/fastq": {
|
||||
"version": "1.13.0",
|
||||
"resolved": "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz",
|
||||
"integrity": "sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"reusify": "^1.0.4"
|
||||
}
|
||||
},
|
||||
"node_modules/fill-range": {
|
||||
"version": "7.0.1",
|
||||
"resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
|
||||
"integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"to-regex-range": "^5.0.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/fraction.js": {
|
||||
"version": "4.1.3",
|
||||
"resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.1.3.tgz",
|
||||
"integrity": "sha512-pUHWWt6vHzZZiQJcM6S/0PXfS+g6FM4BF5rj9wZyreivhQPdsh5PpE25VtSNxq80wHS5RfY51Ii+8Z0Zl/pmzg==",
|
||||
"dev": true,
|
||||
"peer": true,
|
||||
"engines": {
|
||||
"node": "*"
|
||||
},
|
||||
"funding": {
|
||||
"type": "patreon",
|
||||
"url": "https://www.patreon.com/infusion"
|
||||
}
|
||||
},
|
||||
"node_modules/fsevents": {
|
||||
"version": "2.3.2",
|
||||
"resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz",
|
||||
"integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==",
|
||||
"dev": true,
|
||||
"hasInstallScript": true,
|
||||
"optional": true,
|
||||
"os": [
|
||||
"darwin"
|
||||
],
|
||||
"engines": {
|
||||
"node": "^8.16.0 || ^10.6.0 || >=11.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/function-bind": {
|
||||
"version": "1.1.1",
|
||||
"resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
|
||||
"integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/glob-parent": {
|
||||
"version": "6.0.2",
|
||||
"resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz",
|
||||
"integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"is-glob": "^4.0.3"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=10.13.0"
|
||||
}
|
||||
},
|
||||
"node_modules/has": {
|
||||
"version": "1.0.3",
|
||||
"resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
|
||||
"integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"function-bind": "^1.1.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 0.4.0"
|
||||
}
|
||||
},
|
||||
"node_modules/has-flag": {
|
||||
"version": "4.0.0",
|
||||
"resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
|
||||
"integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/import-fresh": {
|
||||
"version": "3.3.0",
|
||||
"resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz",
|
||||
"integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"parent-module": "^1.0.0",
|
||||
"resolve-from": "^4.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=6"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/sindresorhus"
|
||||
}
|
||||
},
|
||||
"node_modules/is-arrayish": {
|
||||
"version": "0.2.1",
|
||||
"resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz",
|
||||
"integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/is-binary-path": {
|
||||
"version": "2.1.0",
|
||||
"resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz",
|
||||
"integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"binary-extensions": "^2.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/is-core-module": {
|
||||
"version": "2.8.1",
|
||||
"resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.1.tgz",
|
||||
"integrity": "sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"has": "^1.0.3"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/ljharb"
|
||||
}
|
||||
},
|
||||
"node_modules/is-extglob": {
|
||||
"version": "2.1.1",
|
||||
"resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
|
||||
"integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">=0.10.0"
|
||||
}
|
||||
},
|
||||
"node_modules/is-glob": {
|
||||
"version": "4.0.3",
|
||||
"resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
|
||||
"integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"is-extglob": "^2.1.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=0.10.0"
|
||||
}
|
||||
},
|
||||
"node_modules/is-number": {
|
||||
"version": "7.0.0",
|
||||
"resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
|
||||
"integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">=0.12.0"
|
||||
}
|
||||
},
|
||||
"node_modules/js-tokens": {
|
||||
"version": "4.0.0",
|
||||
"resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
|
||||
"integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/json-parse-even-better-errors": {
|
||||
"version": "2.3.1",
|
||||
"resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
|
||||
"integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/lilconfig": {
|
||||
"version": "2.0.4",
|
||||
"resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.4.tgz",
|
||||
"integrity": "sha512-bfTIN7lEsiooCocSISTWXkiWJkRqtL9wYtYy+8EK3Y41qh3mpwPU0ycTOgjdY9ErwXCc8QyrQp82bdL0Xkm9yA==",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">=10"
|
||||
}
|
||||
},
|
||||
"node_modules/lines-and-columns": {
|
||||
"version": "1.2.4",
|
||||
"resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz",
|
||||
"integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/loose-envify": {
|
||||
"version": "1.4.0",
|
||||
"resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz",
|
||||
"integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==",
|
||||
"dev": true,
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"js-tokens": "^3.0.0 || ^4.0.0"
|
||||
},
|
||||
"bin": {
|
||||
"loose-envify": "cli.js"
|
||||
}
|
||||
},
|
||||
"node_modules/magic-string": {
|
||||
"version": "0.25.7",
|
||||
"resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.7.tgz",
|
||||
"integrity": "sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"sourcemap-codec": "^1.4.4"
|
||||
}
|
||||
},
|
||||
"node_modules/merge2": {
|
||||
"version": "1.4.1",
|
||||
"resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz",
|
||||
"integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">= 8"
|
||||
}
|
||||
},
|
||||
"node_modules/micromatch": {
|
||||
"version": "4.0.4",
|
||||
"resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz",
|
||||
"integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"braces": "^3.0.1",
|
||||
"picomatch": "^2.2.3"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8.6"
|
||||
}
|
||||
},
|
||||
"node_modules/minimist": {
|
||||
"version": "1.2.5",
|
||||
"resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz",
|
||||
"integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/nanoid": {
|
||||
"version": "3.2.0",
|
||||
"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.2.0.tgz",
|
||||
"integrity": "sha512-fmsZYa9lpn69Ad5eDn7FMcnnSR+8R34W9qJEijxYhTbfOWzr22n1QxCMzXLK+ODyW2973V3Fux959iQoUxzUIA==",
|
||||
"dev": true,
|
||||
"bin": {
|
||||
"nanoid": "bin/nanoid.cjs"
|
||||
},
|
||||
"engines": {
|
||||
"node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
|
||||
}
|
||||
},
|
||||
"node_modules/node-releases": {
|
||||
"version": "2.0.2",
|
||||
"resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.2.tgz",
|
||||
"integrity": "sha512-XxYDdcQ6eKqp/YjI+tb2C5WM2LgjnZrfYg4vgQt49EK268b6gYCHsBLrK2qvJo4FmCtqmKezb0WZFK4fkrZNsg==",
|
||||
"dev": true,
|
||||
"peer": true
|
||||
},
|
||||
"node_modules/normalize-path": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
|
||||
"integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">=0.10.0"
|
||||
}
|
||||
},
|
||||
"node_modules/normalize-range": {
|
||||
"version": "0.1.2",
|
||||
"resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz",
|
||||
"integrity": "sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=",
|
||||
"dev": true,
|
||||
"peer": true,
|
||||
"engines": {
|
||||
"node": ">=0.10.0"
|
||||
}
|
||||
},
|
||||
"node_modules/object-assign": {
|
||||
"version": "4.1.1",
|
||||
"resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
|
||||
"integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=",
|
||||
"dev": true,
|
||||
"peer": true,
|
||||
"engines": {
|
||||
"node": ">=0.10.0"
|
||||
}
|
||||
},
|
||||
"node_modules/object-hash": {
|
||||
"version": "2.2.0",
|
||||
"resolved": "https://registry.npmjs.org/object-hash/-/object-hash-2.2.0.tgz",
|
||||
"integrity": "sha512-gScRMn0bS5fH+IuwyIFgnh9zBdo4DV+6GhygmWM9HyNJSgS0hScp1f5vjtm7oIIOiT9trXrShAkLFSc2IqKNgw==",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">= 6"
|
||||
}
|
||||
},
|
||||
"node_modules/parent-module": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
|
||||
"integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"callsites": "^3.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=6"
|
||||
}
|
||||
},
|
||||
"node_modules/parse-json": {
|
||||
"version": "5.2.0",
|
||||
"resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz",
|
||||
"integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@babel/code-frame": "^7.0.0",
|
||||
"error-ex": "^1.3.1",
|
||||
"json-parse-even-better-errors": "^2.3.0",
|
||||
"lines-and-columns": "^1.1.6"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/sindresorhus"
|
||||
}
|
||||
},
|
||||
"node_modules/path-parse": {
|
||||
"version": "1.0.7",
|
||||
"resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
|
||||
"integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/path-type": {
|
||||
"version": "4.0.0",
|
||||
"resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz",
|
||||
"integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/picocolors": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
|
||||
"integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/picomatch": {
|
||||
"version": "2.3.1",
|
||||
"resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz",
|
||||
"integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">=8.6"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/jonschlinkert"
|
||||
}
|
||||
},
|
||||
"node_modules/postcss": {
|
||||
"version": "8.4.6",
|
||||
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.6.tgz",
|
||||
"integrity": "sha512-OovjwIzs9Te46vlEx7+uXB0PLijpwjXGKXjVGGPIGubGpq7uh5Xgf6D6FiJ/SzJMBosHDp6a2hiXOS97iBXcaA==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"nanoid": "^3.2.0",
|
||||
"picocolors": "^1.0.0",
|
||||
"source-map-js": "^1.0.2"
|
||||
},
|
||||
"engines": {
|
||||
"node": "^10 || ^12 || >=14"
|
||||
},
|
||||
"funding": {
|
||||
"type": "opencollective",
|
||||
"url": "https://opencollective.com/postcss/"
|
||||
}
|
||||
},
|
||||
"node_modules/postcss-js": {
|
||||
"version": "4.0.0",
|
||||
"resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.0.0.tgz",
|
||||
"integrity": "sha512-77QESFBwgX4irogGVPgQ5s07vLvFqWr228qZY+w6lW599cRlK/HmnlivnnVUxkjHnCu4J16PDMHcH+e+2HbvTQ==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"camelcase-css": "^2.0.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": "^12 || ^14 || >= 16"
|
||||
},
|
||||
"funding": {
|
||||
"type": "opencollective",
|
||||
"url": "https://opencollective.com/postcss/"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"postcss": "^8.3.3"
|
||||
}
|
||||
},
|
||||
"node_modules/postcss-load-config": {
|
||||
"version": "3.1.3",
|
||||
"resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-3.1.3.tgz",
|
||||
"integrity": "sha512-5EYgaM9auHGtO//ljHH+v/aC/TQ5LHXtL7bQajNAUBKUVKiYE8rYpFms7+V26D9FncaGe2zwCoPQsFKb5zF/Hw==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"lilconfig": "^2.0.4",
|
||||
"yaml": "^1.10.2"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 10"
|
||||
},
|
||||
"funding": {
|
||||
"type": "opencollective",
|
||||
"url": "https://opencollective.com/postcss/"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"ts-node": ">=9.0.0"
|
||||
},
|
||||
"peerDependenciesMeta": {
|
||||
"ts-node": {
|
||||
"optional": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"node_modules/postcss-nested": {
|
||||
"version": "5.0.6",
|
||||
"resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-5.0.6.tgz",
|
||||
"integrity": "sha512-rKqm2Fk0KbA8Vt3AdGN0FB9OBOMDVajMG6ZCf/GoHgdxUJ4sBFp0A/uMIRm+MJUdo33YXEtjqIz8u7DAp8B7DA==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"postcss-selector-parser": "^6.0.6"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=12.0"
|
||||
},
|
||||
"funding": {
|
||||
"type": "opencollective",
|
||||
"url": "https://opencollective.com/postcss/"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"postcss": "^8.2.14"
|
||||
}
|
||||
},
|
||||
"node_modules/postcss-selector-parser": {
|
||||
"version": "6.0.9",
|
||||
"resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.9.tgz",
|
||||
"integrity": "sha512-UO3SgnZOVTwu4kyLR22UQ1xZh086RyNZppb7lLAKBFK8a32ttG5i87Y/P3+2bRSjZNyJ1B7hfFNo273tKe9YxQ==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"cssesc": "^3.0.0",
|
||||
"util-deprecate": "^1.0.2"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=4"
|
||||
}
|
||||
},
|
||||
"node_modules/postcss-value-parser": {
|
||||
"version": "4.2.0",
|
||||
"resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz",
|
||||
"integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/preact": {
|
||||
"version": "10.6.6",
|
||||
"resolved": "https://registry.npmjs.org/preact/-/preact-10.6.6.tgz",
|
||||
"integrity": "sha512-dgxpTFV2vs4vizwKohYKkk7g7rmp1wOOcfd4Tz3IB3Wi+ivZzsn/SpeKJhRENSE+n8sUfsAl4S3HiCVT923ABw==",
|
||||
"dev": true,
|
||||
"funding": {
|
||||
"type": "opencollective",
|
||||
"url": "https://opencollective.com/preact"
|
||||
}
|
||||
},
|
||||
"node_modules/prismjs": {
|
||||
"version": "1.26.0",
|
||||
"resolved": "https://registry.npmjs.org/prismjs/-/prismjs-1.26.0.tgz",
|
||||
"integrity": "sha512-HUoH9C5Z3jKkl3UunCyiD5jwk0+Hz0fIgQ2nbwU2Oo/ceuTAQAg+pPVnfdt2TJWRVLcxKh9iuoYDUSc8clb5UQ==",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">=6"
|
||||
}
|
||||
},
|
||||
"node_modules/queue-microtask": {
|
||||
"version": "1.2.3",
|
||||
"resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz",
|
||||
"integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==",
|
||||
"dev": true,
|
||||
"funding": [
|
||||
{
|
||||
"type": "github",
|
||||
"url": "https://github.com/sponsors/feross"
|
||||
},
|
||||
{
|
||||
"type": "patreon",
|
||||
"url": "https://www.patreon.com/feross"
|
||||
},
|
||||
{
|
||||
"type": "consulting",
|
||||
"url": "https://feross.org/support"
|
||||
}
|
||||
]
|
||||
},
|
||||
"node_modules/quick-lru": {
|
||||
"version": "5.1.1",
|
||||
"resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz",
|
||||
"integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">=10"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/sindresorhus"
|
||||
}
|
||||
},
|
||||
"node_modules/react": {
|
||||
"version": "17.0.2",
|
||||
"resolved": "https://registry.npmjs.org/react/-/react-17.0.2.tgz",
|
||||
"integrity": "sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==",
|
||||
"dev": true,
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"loose-envify": "^1.1.0",
|
||||
"object-assign": "^4.1.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=0.10.0"
|
||||
}
|
||||
},
|
||||
"node_modules/react-dom": {
|
||||
"version": "17.0.2",
|
||||
"resolved": "https://registry.npmjs.org/react-dom/-/react-dom-17.0.2.tgz",
|
||||
"integrity": "sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA==",
|
||||
"dev": true,
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"loose-envify": "^1.1.0",
|
||||
"object-assign": "^4.1.1",
|
||||
"scheduler": "^0.20.2"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"react": "17.0.2"
|
||||
}
|
||||
},
|
||||
"node_modules/readdirp": {
|
||||
"version": "3.6.0",
|
||||
"resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz",
|
||||
"integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"picomatch": "^2.2.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8.10.0"
|
||||
}
|
||||
},
|
||||
"node_modules/resolve": {
|
||||
"version": "1.22.0",
|
||||
"resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz",
|
||||
"integrity": "sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"is-core-module": "^2.8.1",
|
||||
"path-parse": "^1.0.7",
|
||||
"supports-preserve-symlinks-flag": "^1.0.0"
|
||||
},
|
||||
"bin": {
|
||||
"resolve": "bin/resolve"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/ljharb"
|
||||
}
|
||||
},
|
||||
"node_modules/resolve-from": {
|
||||
"version": "4.0.0",
|
||||
"resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
|
||||
"integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">=4"
|
||||
}
|
||||
},
|
||||
"node_modules/reusify": {
|
||||
"version": "1.0.4",
|
||||
"resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz",
|
||||
"integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"iojs": ">=1.0.0",
|
||||
"node": ">=0.10.0"
|
||||
}
|
||||
},
|
||||
"node_modules/rollup": {
|
||||
"version": "2.67.2",
|
||||
"resolved": "https://registry.npmjs.org/rollup/-/rollup-2.67.2.tgz",
|
||||
"integrity": "sha512-hoEiBWwZtf1QdK3jZIq59L0FJj4Fiv4RplCO4pvCRC86qsoFurWB4hKQIjoRf3WvJmk5UZ9b0y5ton+62fC7Tw==",
|
||||
"dev": true,
|
||||
"bin": {
|
||||
"rollup": "dist/bin/rollup"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=10.0.0"
|
||||
},
|
||||
"optionalDependencies": {
|
||||
"fsevents": "~2.3.2"
|
||||
}
|
||||
},
|
||||
"node_modules/run-parallel": {
|
||||
"version": "1.2.0",
|
||||
"resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz",
|
||||
"integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==",
|
||||
"dev": true,
|
||||
"funding": [
|
||||
{
|
||||
"type": "github",
|
||||
"url": "https://github.com/sponsors/feross"
|
||||
},
|
||||
{
|
||||
"type": "patreon",
|
||||
"url": "https://www.patreon.com/feross"
|
||||
},
|
||||
{
|
||||
"type": "consulting",
|
||||
"url": "https://feross.org/support"
|
||||
}
|
||||
],
|
||||
"dependencies": {
|
||||
"queue-microtask": "^1.2.2"
|
||||
}
|
||||
},
|
||||
"node_modules/scheduler": {
|
||||
"version": "0.20.2",
|
||||
"resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.20.2.tgz",
|
||||
"integrity": "sha512-2eWfGgAqqWFGqtdMmcL5zCMK1U8KlXv8SQFGglL3CEtd0aDVDWgeF/YoCmvln55m5zSk3J/20hTaSBeSObsQDQ==",
|
||||
"dev": true,
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"loose-envify": "^1.1.0",
|
||||
"object-assign": "^4.1.1"
|
||||
}
|
||||
},
|
||||
"node_modules/source-map": {
|
||||
"version": "0.6.1",
|
||||
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
|
||||
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">=0.10.0"
|
||||
}
|
||||
},
|
||||
"node_modules/source-map-js": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz",
|
||||
"integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">=0.10.0"
|
||||
}
|
||||
},
|
||||
"node_modules/sourcemap-codec": {
|
||||
"version": "1.4.8",
|
||||
"resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz",
|
||||
"integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/supports-color": {
|
||||
"version": "7.2.0",
|
||||
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
|
||||
"integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"has-flag": "^4.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/supports-preserve-symlinks-flag": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz",
|
||||
"integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">= 0.4"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/ljharb"
|
||||
}
|
||||
},
|
||||
"node_modules/tailwindcss": {
|
||||
"version": "3.0.22",
|
||||
"resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.0.22.tgz",
|
||||
"integrity": "sha512-F8lt74RlNZirnkaSk310+vGQta7c0/hgx7/bqxruM4wS9lp8oqV93lzavajC3VT0Lp4UUtUVIt8ifKcmGzkr0A==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"arg": "^5.0.1",
|
||||
"chalk": "^4.1.2",
|
||||
"chokidar": "^3.5.3",
|
||||
"color-name": "^1.1.4",
|
||||
"cosmiconfig": "^7.0.1",
|
||||
"detective": "^5.2.0",
|
||||
"didyoumean": "^1.2.2",
|
||||
"dlv": "^1.1.3",
|
||||
"fast-glob": "^3.2.11",
|
||||
"glob-parent": "^6.0.2",
|
||||
"is-glob": "^4.0.3",
|
||||
"normalize-path": "^3.0.0",
|
||||
"object-hash": "^2.2.0",
|
||||
"postcss": "^8.4.6",
|
||||
"postcss-js": "^4.0.0",
|
||||
"postcss-load-config": "^3.1.0",
|
||||
"postcss-nested": "5.0.6",
|
||||
"postcss-selector-parser": "^6.0.9",
|
||||
"postcss-value-parser": "^4.2.0",
|
||||
"quick-lru": "^5.1.1",
|
||||
"resolve": "^1.22.0"
|
||||
},
|
||||
"bin": {
|
||||
"tailwind": "lib/cli.js",
|
||||
"tailwindcss": "lib/cli.js"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=12.13.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"autoprefixer": "^10.0.2",
|
||||
"postcss": "^8.0.9"
|
||||
}
|
||||
},
|
||||
"node_modules/to-regex-range": {
|
||||
"version": "5.0.1",
|
||||
"resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
|
||||
"integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"is-number": "^7.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8.0"
|
||||
}
|
||||
},
|
||||
"node_modules/util-deprecate": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
|
||||
"integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/vite": {
|
||||
"version": "2.8.2",
|
||||
"resolved": "https://registry.npmjs.org/vite/-/vite-2.8.2.tgz",
|
||||
"integrity": "sha512-zawfykcPVPYva4KusIWORNLr324Qx86/3NpfQSIOJdjnL5pYhwDoImLYMOh4lFLcP/7//tNuWM2vx2F5OSVC9w==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"esbuild": "^0.14.14",
|
||||
"postcss": "^8.4.6",
|
||||
"resolve": "^1.22.0",
|
||||
"rollup": "^2.59.0"
|
||||
},
|
||||
"bin": {
|
||||
"vite": "bin/vite.js"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=12.2.0"
|
||||
},
|
||||
"optionalDependencies": {
|
||||
"fsevents": "~2.3.2"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"less": "*",
|
||||
"sass": "*",
|
||||
"stylus": "*"
|
||||
},
|
||||
"peerDependenciesMeta": {
|
||||
"less": {
|
||||
"optional": true
|
||||
},
|
||||
"sass": {
|
||||
"optional": true
|
||||
},
|
||||
"stylus": {
|
||||
"optional": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"node_modules/vitepress": {
|
||||
"version": "0.22.2",
|
||||
"resolved": "https://registry.npmjs.org/vitepress/-/vitepress-0.22.2.tgz",
|
||||
"integrity": "sha512-L6ykQzBXKzLTSU3zZbILeF1TONO6juV/RrL0DsA9OayomVQjEOoFY7cVdKOpIBb3T5Jy/GAAVxcvWtU/XJ5k4g==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@docsearch/css": "^3.0.0-alpha.41",
|
||||
"@docsearch/js": "^3.0.0-alpha.41",
|
||||
"@vitejs/plugin-vue": "^2.2.0",
|
||||
"prismjs": "^1.25.0",
|
||||
"vite": "^2.8.1",
|
||||
"vue": "^3.2.31"
|
||||
},
|
||||
"bin": {
|
||||
"vitepress": "bin/vitepress.js"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=12.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/vue": {
|
||||
"version": "3.2.31",
|
||||
"resolved": "https://registry.npmjs.org/vue/-/vue-3.2.31.tgz",
|
||||
"integrity": "sha512-odT3W2tcffTiQCy57nOT93INw1auq5lYLLYtWpPYQQYQOOdHiqFct9Xhna6GJ+pJQaF67yZABraH47oywkJgFw==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@vue/compiler-dom": "3.2.31",
|
||||
"@vue/compiler-sfc": "3.2.31",
|
||||
"@vue/runtime-dom": "3.2.31",
|
||||
"@vue/server-renderer": "3.2.31",
|
||||
"@vue/shared": "3.2.31"
|
||||
}
|
||||
},
|
||||
"node_modules/xtend": {
|
||||
"version": "4.0.2",
|
||||
"resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz",
|
||||
"integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">=0.4"
|
||||
}
|
||||
},
|
||||
"node_modules/yaml": {
|
||||
"version": "1.10.2",
|
||||
"resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz",
|
||||
"integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">= 6"
|
||||
}
|
||||
}
|
||||
},
|
||||
"dependencies": {
|
||||
"@algolia/autocomplete-core": {
|
||||
"version": "1.5.2",
|
||||
"resolved": "https://registry.npmjs.org/@algolia/autocomplete-core/-/autocomplete-core-1.5.2.tgz",
|
||||
"integrity": "sha512-DY0bhyczFSS1b/CqJlTE/nQRtnTAHl6IemIkBy0nEWnhDzRDdtdx4p5Uuk3vwAFxwEEgi1WqKwgSSMx6DpNL4A==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@algolia/autocomplete-shared": "1.5.2"
|
||||
}
|
||||
},
|
||||
"@algolia/autocomplete-preset-algolia": {
|
||||
"version": "1.5.2",
|
||||
"resolved": "https://registry.npmjs.org/@algolia/autocomplete-preset-algolia/-/autocomplete-preset-algolia-1.5.2.tgz",
|
||||
"integrity": "sha512-3MRYnYQFJyovANzSX2CToS6/5cfVjbLLqFsZTKcvF3abhQzxbqwwaMBlJtt620uBUOeMzhdfasKhCc40+RHiZw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@algolia/autocomplete-shared": "1.5.2"
|
||||
}
|
||||
},
|
||||
"@algolia/autocomplete-shared": {
|
||||
"version": "1.5.2",
|
||||
"resolved": "https://registry.npmjs.org/@algolia/autocomplete-shared/-/autocomplete-shared-1.5.2.tgz",
|
||||
"integrity": "sha512-ylQAYv5H0YKMfHgVWX0j0NmL8XBcAeeeVQUmppnnMtzDbDnca6CzhKj3Q8eF9cHCgcdTDdb5K+3aKyGWA0obug==",
|
||||
"dev": true
|
||||
},
|
||||
"@algolia/cache-browser-local-storage": {
|
||||
"version": "4.12.1",
|
||||
"resolved": "https://registry.npmjs.org/@algolia/cache-browser-local-storage/-/cache-browser-local-storage-4.12.1.tgz",
|
||||
"integrity": "sha512-ERFFOnC9740xAkuO0iZTQqm2AzU7Dpz/s+g7o48GlZgx5p9GgNcsuK5eS0GoW/tAK+fnKlizCtlFHNuIWuvfsg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@algolia/cache-common": "4.12.1"
|
||||
}
|
||||
},
|
||||
"@algolia/cache-common": {
|
||||
"version": "4.12.1",
|
||||
"resolved": "https://registry.npmjs.org/@algolia/cache-common/-/cache-common-4.12.1.tgz",
|
||||
"integrity": "sha512-UugTER3V40jT+e19Dmph5PKMeliYKxycNPwrPNADin0RcWNfT2QksK9Ff2N2W7UKraqMOzoeDb4LAJtxcK1a8Q==",
|
||||
"dev": true
|
||||
},
|
||||
"@algolia/cache-in-memory": {
|
||||
"version": "4.12.1",
|
||||
"resolved": "https://registry.npmjs.org/@algolia/cache-in-memory/-/cache-in-memory-4.12.1.tgz",
|
||||
"integrity": "sha512-U6iaunaxK1lHsAf02UWF58foKFEcrVLsHwN56UkCtwn32nlP9rz52WOcHsgk6TJrL8NDcO5swMjtOQ5XHESFLw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@algolia/cache-common": "4.12.1"
|
||||
}
|
||||
},
|
||||
"@algolia/client-account": {
|
||||
"version": "4.12.1",
|
||||
"resolved": "https://registry.npmjs.org/@algolia/client-account/-/client-account-4.12.1.tgz",
|
||||
"integrity": "sha512-jGo4ConJNoMdTCR2zouO0jO/JcJmzOK6crFxMMLvdnB1JhmMbuIKluOTJVlBWeivnmcsqb7r0v7qTCPW5PAyxQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@algolia/client-common": "4.12.1",
|
||||
"@algolia/client-search": "4.12.1",
|
||||
"@algolia/transporter": "4.12.1"
|
||||
}
|
||||
},
|
||||
"@algolia/client-analytics": {
|
||||
"version": "4.12.1",
|
||||
"resolved": "https://registry.npmjs.org/@algolia/client-analytics/-/client-analytics-4.12.1.tgz",
|
||||
"integrity": "sha512-h1It7KXzIthlhuhfBk7LteYq72tym9maQDUsyRW0Gft8b6ZQahnRak9gcCvKwhcJ1vJoP7T7JrNYGiYSicTD9g==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@algolia/client-common": "4.12.1",
|
||||
"@algolia/client-search": "4.12.1",
|
||||
"@algolia/requester-common": "4.12.1",
|
||||
"@algolia/transporter": "4.12.1"
|
||||
}
|
||||
},
|
||||
"@algolia/client-common": {
|
||||
"version": "4.12.1",
|
||||
"resolved": "https://registry.npmjs.org/@algolia/client-common/-/client-common-4.12.1.tgz",
|
||||
"integrity": "sha512-obnJ8eSbv+h94Grk83DTGQ3bqhViSWureV6oK1s21/KMGWbb3DkduHm+lcwFrMFkjSUSzosLBHV9EQUIBvueTw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@algolia/requester-common": "4.12.1",
|
||||
"@algolia/transporter": "4.12.1"
|
||||
}
|
||||
},
|
||||
"@algolia/client-personalization": {
|
||||
"version": "4.12.1",
|
||||
"resolved": "https://registry.npmjs.org/@algolia/client-personalization/-/client-personalization-4.12.1.tgz",
|
||||
"integrity": "sha512-sMSnjjPjRgByGHYygV+5L/E8a6RgU7l2GbpJukSzJ9GRY37tHmBHuvahv8JjdCGJ2p7QDYLnQy5bN5Z02qjc7Q==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@algolia/client-common": "4.12.1",
|
||||
"@algolia/requester-common": "4.12.1",
|
||||
"@algolia/transporter": "4.12.1"
|
||||
}
|
||||
},
|
||||
"@algolia/client-search": {
|
||||
"version": "4.12.1",
|
||||
"resolved": "https://registry.npmjs.org/@algolia/client-search/-/client-search-4.12.1.tgz",
|
||||
"integrity": "sha512-MwwKKprfY6X2nJ5Ki/ccXM2GDEePvVjZnnoOB2io3dLKW4fTqeSRlC5DRXeFD7UM0vOPPHr4ItV2aj19APKNVQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@algolia/client-common": "4.12.1",
|
||||
"@algolia/requester-common": "4.12.1",
|
||||
"@algolia/transporter": "4.12.1"
|
||||
}
|
||||
},
|
||||
"@algolia/logger-common": {
|
||||
"version": "4.12.1",
|
||||
"resolved": "https://registry.npmjs.org/@algolia/logger-common/-/logger-common-4.12.1.tgz",
|
||||
"integrity": "sha512-fCgrzlXGATNqdFTxwx0GsyPXK+Uqrx1SZ3iuY2VGPPqdt1a20clAG2n2OcLHJpvaa6vMFPlJyWvbqAgzxdxBlQ==",
|
||||
"dev": true
|
||||
},
|
||||
"@algolia/logger-console": {
|
||||
"version": "4.12.1",
|
||||
"resolved": "https://registry.npmjs.org/@algolia/logger-console/-/logger-console-4.12.1.tgz",
|
||||
"integrity": "sha512-0owaEnq/davngQMYqxLA4KrhWHiXujQ1CU3FFnyUcMyBR7rGHI48zSOUpqnsAXrMBdSH6rH5BDkSUUFwsh8RkQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@algolia/logger-common": "4.12.1"
|
||||
}
|
||||
},
|
||||
"@algolia/requester-browser-xhr": {
|
||||
"version": "4.12.1",
|
||||
"resolved": "https://registry.npmjs.org/@algolia/requester-browser-xhr/-/requester-browser-xhr-4.12.1.tgz",
|
||||
"integrity": "sha512-OaMxDyG0TZG0oqz1lQh9e3woantAG1bLnuwq3fmypsrQxra4IQZiyn1x+kEb69D2TcXApI5gOgrD4oWhtEVMtw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@algolia/requester-common": "4.12.1"
|
||||
}
|
||||
},
|
||||
"@algolia/requester-common": {
|
||||
"version": "4.12.1",
|
||||
"resolved": "https://registry.npmjs.org/@algolia/requester-common/-/requester-common-4.12.1.tgz",
|
||||
"integrity": "sha512-XWIrWQNJ1vIrSuL/bUk3ZwNMNxl+aWz6dNboRW6+lGTcMIwc3NBFE90ogbZKhNrFRff8zI4qCF15tjW+Fyhpow==",
|
||||
"dev": true
|
||||
},
|
||||
"@algolia/requester-node-http": {
|
||||
"version": "4.12.1",
|
||||
"resolved": "https://registry.npmjs.org/@algolia/requester-node-http/-/requester-node-http-4.12.1.tgz",
|
||||
"integrity": "sha512-awBtwaD+s0hxkA1aehYn8F0t9wqGoBVWgY4JPHBmp1ChO3pK7RKnnvnv7QQa9vTlllX29oPt/BBVgMo1Z3n1Qg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@algolia/requester-common": "4.12.1"
|
||||
}
|
||||
},
|
||||
"@algolia/transporter": {
|
||||
"version": "4.12.1",
|
||||
"resolved": "https://registry.npmjs.org/@algolia/transporter/-/transporter-4.12.1.tgz",
|
||||
"integrity": "sha512-BGeNgdEHc6dXIk2g8kdlOoQ6fQ6OIaKQcplEj7HPoi+XZUeAvRi3Pff3QWd7YmybWkjzd9AnTzieTASDWhL+sQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@algolia/cache-common": "4.12.1",
|
||||
"@algolia/logger-common": "4.12.1",
|
||||
"@algolia/requester-common": "4.12.1"
|
||||
}
|
||||
},
|
||||
"@babel/code-frame": {
|
||||
"version": "7.16.7",
|
||||
"resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.16.7.tgz",
|
||||
"integrity": "sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/highlight": "^7.16.7"
|
||||
}
|
||||
},
|
||||
"@babel/helper-validator-identifier": {
|
||||
"version": "7.16.7",
|
||||
"resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.16.7.tgz",
|
||||
"integrity": "sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw==",
|
||||
"dev": true
|
||||
},
|
||||
"@babel/highlight": {
|
||||
"version": "7.16.10",
|
||||
"resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.16.10.tgz",
|
||||
"integrity": "sha512-5FnTQLSLswEj6IkgVw5KusNUUFY9ZGqe/TRFnP/BKYHYgfh7tc+C7mwiy95/yNP7Dh9x580Vv8r7u7ZfTBFxdw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/helper-validator-identifier": "^7.16.7",
|
||||
"chalk": "^2.0.0",
|
||||
"js-tokens": "^4.0.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"ansi-styles": {
|
||||
"version": "3.2.1",
|
||||
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
|
||||
"integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"color-convert": "^1.9.0"
|
||||
}
|
||||
},
|
||||
"chalk": {
|
||||
"version": "2.4.2",
|
||||
"resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
|
||||
"integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"ansi-styles": "^3.2.1",
|
||||
"escape-string-regexp": "^1.0.5",
|
||||
"supports-color": "^5.3.0"
|
||||
}
|
||||
},
|
||||
"color-convert": {
|
||||
"version": "1.9.3",
|
||||
"resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
|
||||
"integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"color-name": "1.1.3"
|
||||
}
|
||||
},
|
||||
"color-name": {
|
||||
"version": "1.1.3",
|
||||
"resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
|
||||
"integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=",
|
||||
"dev": true
|
||||
},
|
||||
"has-flag": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
|
||||
"integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
|
||||
"dev": true
|
||||
},
|
||||
"supports-color": {
|
||||
"version": "5.5.0",
|
||||
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
|
||||
"integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"has-flag": "^3.0.0"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"@babel/parser": {
|
||||
"version": "7.17.0",
|
||||
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.0.tgz",
|
||||
"integrity": "sha512-VKXSCQx5D8S04ej+Dqsr1CzYvvWgf20jIw2D+YhQCrIlr2UZGaDds23Y0xg75/skOxpLCRpUZvk/1EAVkGoDOw==",
|
||||
"dev": true
|
||||
},
|
||||
"@docsearch/css": {
|
||||
"version": "3.0.0-alpha.50",
|
||||
"resolved": "https://registry.npmjs.org/@docsearch/css/-/css-3.0.0-alpha.50.tgz",
|
||||
"integrity": "sha512-QeWFCQOtS9D+Fi20liKsPXF2j/xWKh52e+P2Z1UATIdPMqmH6zoB2lcUz+cgv6PPVgWUtECeR6VSSUm71LT94w==",
|
||||
"dev": true
|
||||
},
|
||||
"@docsearch/js": {
|
||||
"version": "3.0.0-alpha.50",
|
||||
"resolved": "https://registry.npmjs.org/@docsearch/js/-/js-3.0.0-alpha.50.tgz",
|
||||
"integrity": "sha512-1ap9Wz5oR/Z8yybaCZhsptXU43es3H52eEQUZtmzb8dUWyCW+3iXaKVB/qeMJOQWtggZ/WvZV3YknVIbCMR2dQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@docsearch/react": "3.0.0-alpha.50",
|
||||
"preact": "^10.0.0"
|
||||
}
|
||||
},
|
||||
"@docsearch/react": {
|
||||
"version": "3.0.0-alpha.50",
|
||||
"resolved": "https://registry.npmjs.org/@docsearch/react/-/react-3.0.0-alpha.50.tgz",
|
||||
"integrity": "sha512-oDGV1zZCRYv7MWsh6CyQVthYTRc3b4q+6kKwNYb1/g/Wf/4nJHutpxolFLHdEUDhrJ4Xi8wxwQG+lEwAVBTHPg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@algolia/autocomplete-core": "1.5.2",
|
||||
"@algolia/autocomplete-preset-algolia": "1.5.2",
|
||||
"@docsearch/css": "3.0.0-alpha.50",
|
||||
"algoliasearch": "^4.0.0"
|
||||
}
|
||||
},
|
||||
"@nodelib/fs.scandir": {
|
||||
"version": "2.1.5",
|
||||
"resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
|
||||
"integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@nodelib/fs.stat": "2.0.5",
|
||||
"run-parallel": "^1.1.9"
|
||||
}
|
||||
},
|
||||
"@nodelib/fs.stat": {
|
||||
"version": "2.0.5",
|
||||
"resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz",
|
||||
"integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==",
|
||||
"dev": true
|
||||
},
|
||||
"@nodelib/fs.walk": {
|
||||
"version": "1.2.8",
|
||||
"resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz",
|
||||
"integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@nodelib/fs.scandir": "2.1.5",
|
||||
"fastq": "^1.6.0"
|
||||
}
|
||||
},
|
||||
"@types/parse-json": {
|
||||
"version": "4.0.0",
|
||||
"resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz",
|
||||
"integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==",
|
||||
"dev": true
|
||||
},
|
||||
"@types/prop-types": {
|
||||
"version": "15.7.4",
|
||||
"resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.4.tgz",
|
||||
"integrity": "sha512-rZ5drC/jWjrArrS8BR6SIr4cWpW09RNTYt9AMZo3Jwwif+iacXAqgVjm0B0Bv/S1jhDXKHqRVNCbACkJ89RAnQ==",
|
||||
"dev": true,
|
||||
"peer": true
|
||||
},
|
||||
"@types/react": {
|
||||
"version": "17.0.39",
|
||||
"resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.39.tgz",
|
||||
"integrity": "sha512-UVavlfAxDd/AgAacMa60Azl7ygyQNRwC/DsHZmKgNvPmRR5p70AJ5Q9EAmL2NWOJmeV+vVUI4IAP7GZrN8h8Ug==",
|
||||
"dev": true,
|
||||
"peer": true,
|
||||
"requires": {
|
||||
"@types/prop-types": "*",
|
||||
"@types/scheduler": "*",
|
||||
"csstype": "^3.0.2"
|
||||
}
|
||||
},
|
||||
"@types/scheduler": {
|
||||
"version": "0.16.2",
|
||||
"resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.2.tgz",
|
||||
"integrity": "sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew==",
|
||||
"dev": true,
|
||||
"peer": true
|
||||
},
|
||||
"@vitejs/plugin-vue": {
|
||||
"version": "2.2.0",
|
||||
"resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-2.2.0.tgz",
|
||||
"integrity": "sha512-wXigM1EwN2G7rZcwG6kLk9ivvIMhx2363tCEvMBiXcTu5nePM/12hUPVzPb83Uugt6U+zom1gTpJopi/Ow/jwg==",
|
||||
"dev": true,
|
||||
"requires": {}
|
||||
},
|
||||
"@vue/compiler-core": {
|
||||
"version": "3.2.31",
|
||||
"resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.31.tgz",
|
||||
"integrity": "sha512-aKno00qoA4o+V/kR6i/pE+aP+esng5siNAVQ422TkBNM6qA4veXiZbSe8OTXHXquEi/f6Akc+nLfB4JGfe4/WQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/parser": "^7.16.4",
|
||||
"@vue/shared": "3.2.31",
|
||||
"estree-walker": "^2.0.2",
|
||||
"source-map": "^0.6.1"
|
||||
}
|
||||
},
|
||||
"@vue/compiler-dom": {
|
||||
"version": "3.2.31",
|
||||
"resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.31.tgz",
|
||||
"integrity": "sha512-60zIlFfzIDf3u91cqfqy9KhCKIJgPeqxgveH2L+87RcGU/alT6BRrk5JtUso0OibH3O7NXuNOQ0cDc9beT0wrg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@vue/compiler-core": "3.2.31",
|
||||
"@vue/shared": "3.2.31"
|
||||
}
|
||||
},
|
||||
"@vue/compiler-sfc": {
|
||||
"version": "3.2.31",
|
||||
"resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.31.tgz",
|
||||
"integrity": "sha512-748adc9msSPGzXgibHiO6T7RWgfnDcVQD+VVwYgSsyyY8Ans64tALHZANrKtOzvkwznV/F4H7OAod/jIlp/dkQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/parser": "^7.16.4",
|
||||
"@vue/compiler-core": "3.2.31",
|
||||
"@vue/compiler-dom": "3.2.31",
|
||||
"@vue/compiler-ssr": "3.2.31",
|
||||
"@vue/reactivity-transform": "3.2.31",
|
||||
"@vue/shared": "3.2.31",
|
||||
"estree-walker": "^2.0.2",
|
||||
"magic-string": "^0.25.7",
|
||||
"postcss": "^8.1.10",
|
||||
"source-map": "^0.6.1"
|
||||
}
|
||||
},
|
||||
"@vue/compiler-ssr": {
|
||||
"version": "3.2.31",
|
||||
"resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.31.tgz",
|
||||
"integrity": "sha512-mjN0rqig+A8TVDnsGPYJM5dpbjlXeHUm2oZHZwGyMYiGT/F4fhJf/cXy8QpjnLQK4Y9Et4GWzHn9PS8AHUnSkw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@vue/compiler-dom": "3.2.31",
|
||||
"@vue/shared": "3.2.31"
|
||||
}
|
||||
},
|
||||
"@vue/reactivity": {
|
||||
"version": "3.2.31",
|
||||
"resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.2.31.tgz",
|
||||
"integrity": "sha512-HVr0l211gbhpEKYr2hYe7hRsV91uIVGFYNHj73njbARVGHQvIojkImKMaZNDdoDZOIkMsBc9a1sMqR+WZwfSCw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@vue/shared": "3.2.31"
|
||||
}
|
||||
},
|
||||
"@vue/reactivity-transform": {
|
||||
"version": "3.2.31",
|
||||
"resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.31.tgz",
|
||||
"integrity": "sha512-uS4l4z/W7wXdI+Va5pgVxBJ345wyGFKvpPYtdSgvfJfX/x2Ymm6ophQlXXB6acqGHtXuBqNyyO3zVp9b1r0MOA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/parser": "^7.16.4",
|
||||
"@vue/compiler-core": "3.2.31",
|
||||
"@vue/shared": "3.2.31",
|
||||
"estree-walker": "^2.0.2",
|
||||
"magic-string": "^0.25.7"
|
||||
}
|
||||
},
|
||||
"@vue/runtime-core": {
|
||||
"version": "3.2.31",
|
||||
"resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.2.31.tgz",
|
||||
"integrity": "sha512-Kcog5XmSY7VHFEMuk4+Gap8gUssYMZ2+w+cmGI6OpZWYOEIcbE0TPzzPHi+8XTzAgx1w/ZxDFcXhZeXN5eKWsA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@vue/reactivity": "3.2.31",
|
||||
"@vue/shared": "3.2.31"
|
||||
}
|
||||
},
|
||||
"@vue/runtime-dom": {
|
||||
"version": "3.2.31",
|
||||
"resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.2.31.tgz",
|
||||
"integrity": "sha512-N+o0sICVLScUjfLG7u9u5XCjvmsexAiPt17GNnaWHJUfsKed5e85/A3SWgKxzlxx2SW/Hw7RQxzxbXez9PtY3g==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@vue/runtime-core": "3.2.31",
|
||||
"@vue/shared": "3.2.31",
|
||||
"csstype": "^2.6.8"
|
||||
},
|
||||
"dependencies": {
|
||||
"csstype": {
|
||||
"version": "2.6.19",
|
||||
"resolved": "https://registry.npmjs.org/csstype/-/csstype-2.6.19.tgz",
|
||||
"integrity": "sha512-ZVxXaNy28/k3kJg0Fou5MiYpp88j7H9hLZp8PDC3jV0WFjfH5E9xHb56L0W59cPbKbcHXeP4qyT8PrHp8t6LcQ==",
|
||||
"dev": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"@vue/server-renderer": {
|
||||
"version": "3.2.31",
|
||||
"resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.2.31.tgz",
|
||||
"integrity": "sha512-8CN3Zj2HyR2LQQBHZ61HexF5NReqngLT3oahyiVRfSSvak+oAvVmu8iNLSu6XR77Ili2AOpnAt1y8ywjjqtmkg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@vue/compiler-ssr": "3.2.31",
|
||||
"@vue/shared": "3.2.31"
|
||||
}
|
||||
},
|
||||
"@vue/shared": {
|
||||
"version": "3.2.31",
|
||||
"resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.31.tgz",
|
||||
"integrity": "sha512-ymN2pj6zEjiKJZbrf98UM2pfDd6F2H7ksKw7NDt/ZZ1fh5Ei39X5tABugtT03ZRlWd9imccoK0hE8hpjpU7irQ==",
|
||||
"dev": true
|
||||
},
|
||||
"acorn": {
|
||||
"version": "7.4.1",
|
||||
"resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz",
|
||||
"integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==",
|
||||
"dev": true
|
||||
},
|
||||
"acorn-node": {
|
||||
"version": "1.8.2",
|
||||
"resolved": "https://registry.npmjs.org/acorn-node/-/acorn-node-1.8.2.tgz",
|
||||
"integrity": "sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"acorn": "^7.0.0",
|
||||
"acorn-walk": "^7.0.0",
|
||||
"xtend": "^4.0.2"
|
||||
}
|
||||
},
|
||||
"acorn-walk": {
|
||||
"version": "7.2.0",
|
||||
"resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz",
|
||||
"integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==",
|
||||
"dev": true
|
||||
},
|
||||
"algoliasearch": {
|
||||
"version": "4.12.1",
|
||||
"resolved": "https://registry.npmjs.org/algoliasearch/-/algoliasearch-4.12.1.tgz",
|
||||
"integrity": "sha512-c0dM1g3zZBJrkzE5GA/Nu1y3fFxx3LCzxKzcmp2dgGS8P4CjszB/l3lsSh2MSrrK1Hn/KV4BlbBMXtYgG1Bfrw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@algolia/cache-browser-local-storage": "4.12.1",
|
||||
"@algolia/cache-common": "4.12.1",
|
||||
"@algolia/cache-in-memory": "4.12.1",
|
||||
"@algolia/client-account": "4.12.1",
|
||||
"@algolia/client-analytics": "4.12.1",
|
||||
"@algolia/client-common": "4.12.1",
|
||||
"@algolia/client-personalization": "4.12.1",
|
||||
"@algolia/client-search": "4.12.1",
|
||||
"@algolia/logger-common": "4.12.1",
|
||||
"@algolia/logger-console": "4.12.1",
|
||||
"@algolia/requester-browser-xhr": "4.12.1",
|
||||
"@algolia/requester-common": "4.12.1",
|
||||
"@algolia/requester-node-http": "4.12.1",
|
||||
"@algolia/transporter": "4.12.1"
|
||||
}
|
||||
},
|
||||
"ansi-styles": {
|
||||
"version": "4.3.0",
|
||||
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
|
||||
"integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"color-convert": "^2.0.1"
|
||||
}
|
||||
},
|
||||
"anymatch": {
|
||||
"version": "3.1.2",
|
||||
"resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz",
|
||||
"integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"normalize-path": "^3.0.0",
|
||||
"picomatch": "^2.0.4"
|
||||
}
|
||||
},
|
||||
"arg": {
|
||||
"version": "5.0.1",
|
||||
"resolved": "https://registry.npmjs.org/arg/-/arg-5.0.1.tgz",
|
||||
"integrity": "sha512-e0hDa9H2Z9AwFkk2qDlwhoMYE4eToKarchkQHovNdLTCYMHZHeRjI71crOh+dio4K6u1IcwubQqo79Ga4CyAQA==",
|
||||
"dev": true
|
||||
},
|
||||
"autoprefixer": {
|
||||
"version": "10.4.2",
|
||||
"resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.2.tgz",
|
||||
"integrity": "sha512-9fOPpHKuDW1w/0EKfRmVnxTDt8166MAnLI3mgZ1JCnhNtYWxcJ6Ud5CO/AVOZi/AvFa8DY9RTy3h3+tFBlrrdQ==",
|
||||
"dev": true,
|
||||
"peer": true,
|
||||
"requires": {
|
||||
"browserslist": "^4.19.1",
|
||||
"caniuse-lite": "^1.0.30001297",
|
||||
"fraction.js": "^4.1.2",
|
||||
"normalize-range": "^0.1.2",
|
||||
"picocolors": "^1.0.0",
|
||||
"postcss-value-parser": "^4.2.0"
|
||||
}
|
||||
},
|
||||
"binary-extensions": {
|
||||
"version": "2.2.0",
|
||||
"resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz",
|
||||
"integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==",
|
||||
"dev": true
|
||||
},
|
||||
"braces": {
|
||||
"version": "3.0.2",
|
||||
"resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
|
||||
"integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"fill-range": "^7.0.1"
|
||||
}
|
||||
},
|
||||
"browserslist": {
|
||||
"version": "4.19.1",
|
||||
"resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.19.1.tgz",
|
||||
"integrity": "sha512-u2tbbG5PdKRTUoctO3NBD8FQ5HdPh1ZXPHzp1rwaa5jTc+RV9/+RlWiAIKmjRPQF+xbGM9Kklj5bZQFa2s/38A==",
|
||||
"dev": true,
|
||||
"peer": true,
|
||||
"requires": {
|
||||
"caniuse-lite": "^1.0.30001286",
|
||||
"electron-to-chromium": "^1.4.17",
|
||||
"escalade": "^3.1.1",
|
||||
"node-releases": "^2.0.1",
|
||||
"picocolors": "^1.0.0"
|
||||
}
|
||||
},
|
||||
"callsites": {
|
||||
"version": "3.1.0",
|
||||
"resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
|
||||
"integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
|
||||
"dev": true
|
||||
},
|
||||
"camelcase-css": {
|
||||
"version": "2.0.1",
|
||||
"resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz",
|
||||
"integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==",
|
||||
"dev": true
|
||||
},
|
||||
"caniuse-lite": {
|
||||
"version": "1.0.30001312",
|
||||
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001312.tgz",
|
||||
"integrity": "sha512-Wiz1Psk2MEK0pX3rUzWaunLTZzqS2JYZFzNKqAiJGiuxIjRPLgV6+VDPOg6lQOUxmDwhTlh198JsTTi8Hzw6aQ==",
|
||||
"dev": true,
|
||||
"peer": true
|
||||
},
|
||||
"chalk": {
|
||||
"version": "4.1.2",
|
||||
"resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
|
||||
"integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"ansi-styles": "^4.1.0",
|
||||
"supports-color": "^7.1.0"
|
||||
}
|
||||
},
|
||||
"chokidar": {
|
||||
"version": "3.5.3",
|
||||
"resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz",
|
||||
"integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"anymatch": "~3.1.2",
|
||||
"braces": "~3.0.2",
|
||||
"fsevents": "~2.3.2",
|
||||
"glob-parent": "~5.1.2",
|
||||
"is-binary-path": "~2.1.0",
|
||||
"is-glob": "~4.0.1",
|
||||
"normalize-path": "~3.0.0",
|
||||
"readdirp": "~3.6.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"glob-parent": {
|
||||
"version": "5.1.2",
|
||||
"resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
|
||||
"integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"is-glob": "^4.0.1"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"color-convert": {
|
||||
"version": "2.0.1",
|
||||
"resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
|
||||
"integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"color-name": "~1.1.4"
|
||||
}
|
||||
},
|
||||
"color-name": {
|
||||
"version": "1.1.4",
|
||||
"resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
|
||||
"integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
|
||||
"dev": true
|
||||
},
|
||||
"cosmiconfig": {
|
||||
"version": "7.0.1",
|
||||
"resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.0.1.tgz",
|
||||
"integrity": "sha512-a1YWNUV2HwGimB7dU2s1wUMurNKjpx60HxBB6xUM8Re+2s1g1IIfJvFR0/iCF+XHdE0GMTKTuLR32UQff4TEyQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@types/parse-json": "^4.0.0",
|
||||
"import-fresh": "^3.2.1",
|
||||
"parse-json": "^5.0.0",
|
||||
"path-type": "^4.0.0",
|
||||
"yaml": "^1.10.0"
|
||||
}
|
||||
},
|
||||
"cssesc": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz",
|
||||
"integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==",
|
||||
"dev": true
|
||||
},
|
||||
"csstype": {
|
||||
"version": "3.0.10",
|
||||
"resolved": "https://registry.npmjs.org/csstype/-/csstype-3.0.10.tgz",
|
||||
"integrity": "sha512-2u44ZG2OcNUO9HDp/Jl8C07x6pU/eTR3ncV91SiK3dhG9TWvRVsCoJw14Ckx5DgWkzGA3waZWO3d7pgqpUI/XA==",
|
||||
"dev": true,
|
||||
"peer": true
|
||||
},
|
||||
"defined": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/defined/-/defined-1.0.0.tgz",
|
||||
"integrity": "sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM=",
|
||||
"dev": true
|
||||
},
|
||||
"detective": {
|
||||
"version": "5.2.0",
|
||||
"resolved": "https://registry.npmjs.org/detective/-/detective-5.2.0.tgz",
|
||||
"integrity": "sha512-6SsIx+nUUbuK0EthKjv0zrdnajCCXVYGmbYYiYjFVpzcjwEs/JMDZ8tPRG29J/HhN56t3GJp2cGSWDRjjot8Pg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"acorn-node": "^1.6.1",
|
||||
"defined": "^1.0.0",
|
||||
"minimist": "^1.1.1"
|
||||
}
|
||||
},
|
||||
"didyoumean": {
|
||||
"version": "1.2.2",
|
||||
"resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz",
|
||||
"integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==",
|
||||
"dev": true
|
||||
},
|
||||
"dlv": {
|
||||
"version": "1.1.3",
|
||||
"resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz",
|
||||
"integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==",
|
||||
"dev": true
|
||||
},
|
||||
"electron-to-chromium": {
|
||||
"version": "1.4.71",
|
||||
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.71.tgz",
|
||||
"integrity": "sha512-Hk61vXXKRb2cd3znPE9F+2pLWdIOmP7GjiTj45y6L3W/lO+hSnUSUhq+6lEaERWBdZOHbk2s3YV5c9xVl3boVw==",
|
||||
"dev": true,
|
||||
"peer": true
|
||||
},
|
||||
"error-ex": {
|
||||
"version": "1.3.2",
|
||||
"resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz",
|
||||
"integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"is-arrayish": "^0.2.1"
|
||||
}
|
||||
},
|
||||
"esbuild": {
|
||||
"version": "0.14.21",
|
||||
"resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.14.21.tgz",
|
||||
"integrity": "sha512-7WEoNMBJdLN993dr9h0CpFHPRc3yFZD+EAVY9lg6syJJ12gc5fHq8d75QRExuhnMkT2DaRiIKFThRvDWP+fO+A==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"esbuild-android-arm64": "0.14.21",
|
||||
"esbuild-darwin-64": "0.14.21",
|
||||
"esbuild-darwin-arm64": "0.14.21",
|
||||
"esbuild-freebsd-64": "0.14.21",
|
||||
"esbuild-freebsd-arm64": "0.14.21",
|
||||
"esbuild-linux-32": "0.14.21",
|
||||
"esbuild-linux-64": "0.14.21",
|
||||
"esbuild-linux-arm": "0.14.21",
|
||||
"esbuild-linux-arm64": "0.14.21",
|
||||
"esbuild-linux-mips64le": "0.14.21",
|
||||
"esbuild-linux-ppc64le": "0.14.21",
|
||||
"esbuild-linux-riscv64": "0.14.21",
|
||||
"esbuild-linux-s390x": "0.14.21",
|
||||
"esbuild-netbsd-64": "0.14.21",
|
||||
"esbuild-openbsd-64": "0.14.21",
|
||||
"esbuild-sunos-64": "0.14.21",
|
||||
"esbuild-windows-32": "0.14.21",
|
||||
"esbuild-windows-64": "0.14.21",
|
||||
"esbuild-windows-arm64": "0.14.21"
|
||||
}
|
||||
},
|
||||
"esbuild-android-arm64": {
|
||||
"version": "0.14.21",
|
||||
"resolved": "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.14.21.tgz",
|
||||
"integrity": "sha512-Bqgld1TY0wZv8TqiQmVxQFgYzz8ZmyzT7clXBDZFkOOdRybzsnj8AZuK1pwcLVA7Ya6XncHgJqIao7NFd3s0RQ==",
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"esbuild-darwin-64": {
|
||||
"version": "0.14.21",
|
||||
"resolved": "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.14.21.tgz",
|
||||
"integrity": "sha512-j+Eg+e13djzyYINVvAbOo2/zvZ2DivuJJTaBrJnJHSD7kUNuGHRkHoSfFjbI80KHkn091w350wdmXDNSgRjfYQ==",
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"esbuild-darwin-arm64": {
|
||||
"version": "0.14.21",
|
||||
"resolved": "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.14.21.tgz",
|
||||
"integrity": "sha512-nDNTKWDPI0RuoPj5BhcSB2z5EmZJJAyRtZLIjyXSqSpAyoB8eyAKXl4lB8U2P78Fnh4Lh1le/fmpewXE04JhBQ==",
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"esbuild-freebsd-64": {
|
||||
"version": "0.14.21",
|
||||
"resolved": "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.14.21.tgz",
|
||||
"integrity": "sha512-zIurkCHXhxELiDZtLGiexi8t8onQc2LtuE+S7457H/pP0g0MLRKMrsn/IN4LDkNe6lvBjuoZZi2OfelOHn831g==",
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"esbuild-freebsd-arm64": {
|
||||
"version": "0.14.21",
|
||||
"resolved": "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.14.21.tgz",
|
||||
"integrity": "sha512-wdxMmkJfbwcN+q85MpeUEamVZ40FNsBa9mPq8tAszDn8TRT2HoJvVRADPIIBa9SWWwlDChIMjkDKAnS3KS/sPA==",
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"esbuild-linux-32": {
|
||||
"version": "0.14.21",
|
||||
"resolved": "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.14.21.tgz",
|
||||
"integrity": "sha512-fmxvyzOPPh2xiEHojpCeIQP6pXcoKsWbz3ryDDIKLOsk4xp3GbpHIEAWP0xTeuhEbendmvBDVKbAVv3PnODXLg==",
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"esbuild-linux-64": {
|
||||
"version": "0.14.21",
|
||||
"resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.14.21.tgz",
|
||||
"integrity": "sha512-edZyNOv1ql+kpmlzdqzzDjRQYls+tSyi4QFi+PdBhATJFUqHsnNELWA9vMSzAaInPOEaVUTA5Ml28XFChcy4DA==",
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"esbuild-linux-arm": {
|
||||
"version": "0.14.21",
|
||||
"resolved": "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.14.21.tgz",
|
||||
"integrity": "sha512-aSU5pUueK6afqmLQsbU+QcFBT62L+4G9hHMJDHWfxgid6hzhSmfRH9U/f+ymvxsSTr/HFRU4y7ox8ZyhlVl98w==",
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"esbuild-linux-arm64": {
|
||||
"version": "0.14.21",
|
||||
"resolved": "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.14.21.tgz",
|
||||
"integrity": "sha512-t5qxRkq4zdQC0zXpzSB2bTtfLgOvR0C6BXYaRE/6/k8/4SrkZcTZBeNu+xGvwCU4b5dU9ST9pwIWkK6T1grS8g==",
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"esbuild-linux-mips64le": {
|
||||
"version": "0.14.21",
|
||||
"resolved": "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.14.21.tgz",
|
||||
"integrity": "sha512-jLZLQGCNlUsmIHtGqNvBs3zN+7a4D9ckf0JZ+jQTwHdZJ1SgV9mAjbB980OFo66LoY+WeM7t3WEnq3FjI1zw4A==",
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"esbuild-linux-ppc64le": {
|
||||
"version": "0.14.21",
|
||||
"resolved": "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.14.21.tgz",
|
||||
"integrity": "sha512-4TWxpK391en2UBUw6GSrukToTDu6lL9vkm3Ll40HrI08WG3qcnJu7bl8e1+GzelDsiw1QmfAY/nNvJ6iaHRpCQ==",
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"esbuild-linux-riscv64": {
|
||||
"version": "0.14.21",
|
||||
"resolved": "https://registry.npmjs.org/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.14.21.tgz",
|
||||
"integrity": "sha512-fElngqOaOfTsF+u+oetDLHsPG74vB2ZaGZUqmGefAJn3a5z9Z2pNa4WpVbbKgHpaAAy5tWM1m1sbGohj6Ki6+Q==",
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"esbuild-linux-s390x": {
|
||||
"version": "0.14.21",
|
||||
"resolved": "https://registry.npmjs.org/esbuild-linux-s390x/-/esbuild-linux-s390x-0.14.21.tgz",
|
||||
"integrity": "sha512-brleZ6R5fYv0qQ7ZBwenQmP6i9TdvJCB092c/3D3pTLQHBGHJb5zWgKxOeS7bdHzmLy6a6W7GbFk6QKpjyD6QA==",
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"esbuild-netbsd-64": {
|
||||
"version": "0.14.21",
|
||||
"resolved": "https://registry.npmjs.org/esbuild-netbsd-64/-/esbuild-netbsd-64-0.14.21.tgz",
|
||||
"integrity": "sha512-nCEgsLCQ8RoFWVV8pVI+kX66ICwbPP/M9vEa0NJGIEB/Vs5sVGMqkf67oln90XNSkbc0bPBDuo4G6FxlF7PN8g==",
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"esbuild-openbsd-64": {
|
||||
"version": "0.14.21",
|
||||
"resolved": "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.14.21.tgz",
|
||||
"integrity": "sha512-h9zLMyVD0T73MDTVYIb/qUTokwI6EJH9O6wESuTNq6+XpMSr6C5aYZ4fvFKdNELW+Xsod+yDS2hV2JTUAbFrLA==",
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"esbuild-sunos-64": {
|
||||
"version": "0.14.21",
|
||||
"resolved": "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.14.21.tgz",
|
||||
"integrity": "sha512-Kl+7Cot32qd9oqpLdB1tEGXEkjBlijrIxMJ0+vlDFaqsODutif25on0IZlFxEBtL2Gosd4p5WCV1U7UskNQfXA==",
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"esbuild-windows-32": {
|
||||
"version": "0.14.21",
|
||||
"resolved": "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.14.21.tgz",
|
||||
"integrity": "sha512-V7vnTq67xPBUCk/9UtlolmQ798Ecjdr1ZoI1vcSgw7M82aSSt0eZdP6bh5KAFZU8pxDcx3qoHyWQfHYr11f22A==",
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"esbuild-windows-64": {
|
||||
"version": "0.14.21",
|
||||
"resolved": "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.14.21.tgz",
|
||||
"integrity": "sha512-kDgHjKOHwjfJDCyRGELzVxiP/RBJBTA+wyspf78MTTJQkyPuxH2vChReNdWc+dU2S4gIZFHMdP1Qrl/k22ZmaA==",
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"esbuild-windows-arm64": {
|
||||
"version": "0.14.21",
|
||||
"resolved": "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.14.21.tgz",
|
||||
"integrity": "sha512-8Sbo0zpzgwWrwjQYLmHF78f7E2xg5Ve63bjB2ng3V2aManilnnTGaliq2snYg+NOX60+hEvJHRdVnuIAHW0lVw==",
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"escalade": {
|
||||
"version": "3.1.1",
|
||||
"resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz",
|
||||
"integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==",
|
||||
"dev": true,
|
||||
"peer": true
|
||||
},
|
||||
"escape-string-regexp": {
|
||||
"version": "1.0.5",
|
||||
"resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
|
||||
"integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=",
|
||||
"dev": true
|
||||
},
|
||||
"estree-walker": {
|
||||
"version": "2.0.2",
|
||||
"resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz",
|
||||
"integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==",
|
||||
"dev": true
|
||||
},
|
||||
"fast-glob": {
|
||||
"version": "3.2.11",
|
||||
"resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.11.tgz",
|
||||
"integrity": "sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@nodelib/fs.stat": "^2.0.2",
|
||||
"@nodelib/fs.walk": "^1.2.3",
|
||||
"glob-parent": "^5.1.2",
|
||||
"merge2": "^1.3.0",
|
||||
"micromatch": "^4.0.4"
|
||||
},
|
||||
"dependencies": {
|
||||
"glob-parent": {
|
||||
"version": "5.1.2",
|
||||
"resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
|
||||
"integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"is-glob": "^4.0.1"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"fastq": {
|
||||
"version": "1.13.0",
|
||||
"resolved": "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz",
|
||||
"integrity": "sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"reusify": "^1.0.4"
|
||||
}
|
||||
},
|
||||
"fill-range": {
|
||||
"version": "7.0.1",
|
||||
"resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
|
||||
"integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"to-regex-range": "^5.0.1"
|
||||
}
|
||||
},
|
||||
"fraction.js": {
|
||||
"version": "4.1.3",
|
||||
"resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.1.3.tgz",
|
||||
"integrity": "sha512-pUHWWt6vHzZZiQJcM6S/0PXfS+g6FM4BF5rj9wZyreivhQPdsh5PpE25VtSNxq80wHS5RfY51Ii+8Z0Zl/pmzg==",
|
||||
"dev": true,
|
||||
"peer": true
|
||||
},
|
||||
"fsevents": {
|
||||
"version": "2.3.2",
|
||||
"resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz",
|
||||
"integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==",
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"function-bind": {
|
||||
"version": "1.1.1",
|
||||
"resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
|
||||
"integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==",
|
||||
"dev": true
|
||||
},
|
||||
"glob-parent": {
|
||||
"version": "6.0.2",
|
||||
"resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz",
|
||||
"integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"is-glob": "^4.0.3"
|
||||
}
|
||||
},
|
||||
"has": {
|
||||
"version": "1.0.3",
|
||||
"resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
|
||||
"integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"function-bind": "^1.1.1"
|
||||
}
|
||||
},
|
||||
"has-flag": {
|
||||
"version": "4.0.0",
|
||||
"resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
|
||||
"integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
|
||||
"dev": true
|
||||
},
|
||||
"import-fresh": {
|
||||
"version": "3.3.0",
|
||||
"resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz",
|
||||
"integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"parent-module": "^1.0.0",
|
||||
"resolve-from": "^4.0.0"
|
||||
}
|
||||
},
|
||||
"is-arrayish": {
|
||||
"version": "0.2.1",
|
||||
"resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz",
|
||||
"integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=",
|
||||
"dev": true
|
||||
},
|
||||
"is-binary-path": {
|
||||
"version": "2.1.0",
|
||||
"resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz",
|
||||
"integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"binary-extensions": "^2.0.0"
|
||||
}
|
||||
},
|
||||
"is-core-module": {
|
||||
"version": "2.8.1",
|
||||
"resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.1.tgz",
|
||||
"integrity": "sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"has": "^1.0.3"
|
||||
}
|
||||
},
|
||||
"is-extglob": {
|
||||
"version": "2.1.1",
|
||||
"resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
|
||||
"integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=",
|
||||
"dev": true
|
||||
},
|
||||
"is-glob": {
|
||||
"version": "4.0.3",
|
||||
"resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
|
||||
"integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"is-extglob": "^2.1.1"
|
||||
}
|
||||
},
|
||||
"is-number": {
|
||||
"version": "7.0.0",
|
||||
"resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
|
||||
"integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
|
||||
"dev": true
|
||||
},
|
||||
"js-tokens": {
|
||||
"version": "4.0.0",
|
||||
"resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
|
||||
"integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==",
|
||||
"dev": true
|
||||
},
|
||||
"json-parse-even-better-errors": {
|
||||
"version": "2.3.1",
|
||||
"resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
|
||||
"integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==",
|
||||
"dev": true
|
||||
},
|
||||
"lilconfig": {
|
||||
"version": "2.0.4",
|
||||
"resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.4.tgz",
|
||||
"integrity": "sha512-bfTIN7lEsiooCocSISTWXkiWJkRqtL9wYtYy+8EK3Y41qh3mpwPU0ycTOgjdY9ErwXCc8QyrQp82bdL0Xkm9yA==",
|
||||
"dev": true
|
||||
},
|
||||
"lines-and-columns": {
|
||||
"version": "1.2.4",
|
||||
"resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz",
|
||||
"integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==",
|
||||
"dev": true
|
||||
},
|
||||
"loose-envify": {
|
||||
"version": "1.4.0",
|
||||
"resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz",
|
||||
"integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==",
|
||||
"dev": true,
|
||||
"peer": true,
|
||||
"requires": {
|
||||
"js-tokens": "^3.0.0 || ^4.0.0"
|
||||
}
|
||||
},
|
||||
"magic-string": {
|
||||
"version": "0.25.7",
|
||||
"resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.7.tgz",
|
||||
"integrity": "sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"sourcemap-codec": "^1.4.4"
|
||||
}
|
||||
},
|
||||
"merge2": {
|
||||
"version": "1.4.1",
|
||||
"resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz",
|
||||
"integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==",
|
||||
"dev": true
|
||||
},
|
||||
"micromatch": {
|
||||
"version": "4.0.4",
|
||||
"resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz",
|
||||
"integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"braces": "^3.0.1",
|
||||
"picomatch": "^2.2.3"
|
||||
}
|
||||
},
|
||||
"minimist": {
|
||||
"version": "1.2.5",
|
||||
"resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz",
|
||||
"integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==",
|
||||
"dev": true
|
||||
},
|
||||
"nanoid": {
|
||||
"version": "3.2.0",
|
||||
"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.2.0.tgz",
|
||||
"integrity": "sha512-fmsZYa9lpn69Ad5eDn7FMcnnSR+8R34W9qJEijxYhTbfOWzr22n1QxCMzXLK+ODyW2973V3Fux959iQoUxzUIA==",
|
||||
"dev": true
|
||||
},
|
||||
"node-releases": {
|
||||
"version": "2.0.2",
|
||||
"resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.2.tgz",
|
||||
"integrity": "sha512-XxYDdcQ6eKqp/YjI+tb2C5WM2LgjnZrfYg4vgQt49EK268b6gYCHsBLrK2qvJo4FmCtqmKezb0WZFK4fkrZNsg==",
|
||||
"dev": true,
|
||||
"peer": true
|
||||
},
|
||||
"normalize-path": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
|
||||
"integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
|
||||
"dev": true
|
||||
},
|
||||
"normalize-range": {
|
||||
"version": "0.1.2",
|
||||
"resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz",
|
||||
"integrity": "sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=",
|
||||
"dev": true,
|
||||
"peer": true
|
||||
},
|
||||
"object-assign": {
|
||||
"version": "4.1.1",
|
||||
"resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
|
||||
"integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=",
|
||||
"dev": true,
|
||||
"peer": true
|
||||
},
|
||||
"object-hash": {
|
||||
"version": "2.2.0",
|
||||
"resolved": "https://registry.npmjs.org/object-hash/-/object-hash-2.2.0.tgz",
|
||||
"integrity": "sha512-gScRMn0bS5fH+IuwyIFgnh9zBdo4DV+6GhygmWM9HyNJSgS0hScp1f5vjtm7oIIOiT9trXrShAkLFSc2IqKNgw==",
|
||||
"dev": true
|
||||
},
|
||||
"parent-module": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
|
||||
"integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"callsites": "^3.0.0"
|
||||
}
|
||||
},
|
||||
"parse-json": {
|
||||
"version": "5.2.0",
|
||||
"resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz",
|
||||
"integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/code-frame": "^7.0.0",
|
||||
"error-ex": "^1.3.1",
|
||||
"json-parse-even-better-errors": "^2.3.0",
|
||||
"lines-and-columns": "^1.1.6"
|
||||
}
|
||||
},
|
||||
"path-parse": {
|
||||
"version": "1.0.7",
|
||||
"resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
|
||||
"integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==",
|
||||
"dev": true
|
||||
},
|
||||
"path-type": {
|
||||
"version": "4.0.0",
|
||||
"resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz",
|
||||
"integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==",
|
||||
"dev": true
|
||||
},
|
||||
"picocolors": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
|
||||
"integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==",
|
||||
"dev": true
|
||||
},
|
||||
"picomatch": {
|
||||
"version": "2.3.1",
|
||||
"resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz",
|
||||
"integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==",
|
||||
"dev": true
|
||||
},
|
||||
"postcss": {
|
||||
"version": "8.4.6",
|
||||
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.6.tgz",
|
||||
"integrity": "sha512-OovjwIzs9Te46vlEx7+uXB0PLijpwjXGKXjVGGPIGubGpq7uh5Xgf6D6FiJ/SzJMBosHDp6a2hiXOS97iBXcaA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"nanoid": "^3.2.0",
|
||||
"picocolors": "^1.0.0",
|
||||
"source-map-js": "^1.0.2"
|
||||
}
|
||||
},
|
||||
"postcss-js": {
|
||||
"version": "4.0.0",
|
||||
"resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.0.0.tgz",
|
||||
"integrity": "sha512-77QESFBwgX4irogGVPgQ5s07vLvFqWr228qZY+w6lW599cRlK/HmnlivnnVUxkjHnCu4J16PDMHcH+e+2HbvTQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"camelcase-css": "^2.0.1"
|
||||
}
|
||||
},
|
||||
"postcss-load-config": {
|
||||
"version": "3.1.3",
|
||||
"resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-3.1.3.tgz",
|
||||
"integrity": "sha512-5EYgaM9auHGtO//ljHH+v/aC/TQ5LHXtL7bQajNAUBKUVKiYE8rYpFms7+V26D9FncaGe2zwCoPQsFKb5zF/Hw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"lilconfig": "^2.0.4",
|
||||
"yaml": "^1.10.2"
|
||||
}
|
||||
},
|
||||
"postcss-nested": {
|
||||
"version": "5.0.6",
|
||||
"resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-5.0.6.tgz",
|
||||
"integrity": "sha512-rKqm2Fk0KbA8Vt3AdGN0FB9OBOMDVajMG6ZCf/GoHgdxUJ4sBFp0A/uMIRm+MJUdo33YXEtjqIz8u7DAp8B7DA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"postcss-selector-parser": "^6.0.6"
|
||||
}
|
||||
},
|
||||
"postcss-selector-parser": {
|
||||
"version": "6.0.9",
|
||||
"resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.9.tgz",
|
||||
"integrity": "sha512-UO3SgnZOVTwu4kyLR22UQ1xZh086RyNZppb7lLAKBFK8a32ttG5i87Y/P3+2bRSjZNyJ1B7hfFNo273tKe9YxQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"cssesc": "^3.0.0",
|
||||
"util-deprecate": "^1.0.2"
|
||||
}
|
||||
},
|
||||
"postcss-value-parser": {
|
||||
"version": "4.2.0",
|
||||
"resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz",
|
||||
"integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==",
|
||||
"dev": true
|
||||
},
|
||||
"preact": {
|
||||
"version": "10.6.6",
|
||||
"resolved": "https://registry.npmjs.org/preact/-/preact-10.6.6.tgz",
|
||||
"integrity": "sha512-dgxpTFV2vs4vizwKohYKkk7g7rmp1wOOcfd4Tz3IB3Wi+ivZzsn/SpeKJhRENSE+n8sUfsAl4S3HiCVT923ABw==",
|
||||
"dev": true
|
||||
},
|
||||
"prismjs": {
|
||||
"version": "1.26.0",
|
||||
"resolved": "https://registry.npmjs.org/prismjs/-/prismjs-1.26.0.tgz",
|
||||
"integrity": "sha512-HUoH9C5Z3jKkl3UunCyiD5jwk0+Hz0fIgQ2nbwU2Oo/ceuTAQAg+pPVnfdt2TJWRVLcxKh9iuoYDUSc8clb5UQ==",
|
||||
"dev": true
|
||||
},
|
||||
"queue-microtask": {
|
||||
"version": "1.2.3",
|
||||
"resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz",
|
||||
"integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==",
|
||||
"dev": true
|
||||
},
|
||||
"quick-lru": {
|
||||
"version": "5.1.1",
|
||||
"resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz",
|
||||
"integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==",
|
||||
"dev": true
|
||||
},
|
||||
"react": {
|
||||
"version": "17.0.2",
|
||||
"resolved": "https://registry.npmjs.org/react/-/react-17.0.2.tgz",
|
||||
"integrity": "sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==",
|
||||
"dev": true,
|
||||
"peer": true,
|
||||
"requires": {
|
||||
"loose-envify": "^1.1.0",
|
||||
"object-assign": "^4.1.1"
|
||||
}
|
||||
},
|
||||
"react-dom": {
|
||||
"version": "17.0.2",
|
||||
"resolved": "https://registry.npmjs.org/react-dom/-/react-dom-17.0.2.tgz",
|
||||
"integrity": "sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA==",
|
||||
"dev": true,
|
||||
"peer": true,
|
||||
"requires": {
|
||||
"loose-envify": "^1.1.0",
|
||||
"object-assign": "^4.1.1",
|
||||
"scheduler": "^0.20.2"
|
||||
}
|
||||
},
|
||||
"readdirp": {
|
||||
"version": "3.6.0",
|
||||
"resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz",
|
||||
"integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"picomatch": "^2.2.1"
|
||||
}
|
||||
},
|
||||
"resolve": {
|
||||
"version": "1.22.0",
|
||||
"resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz",
|
||||
"integrity": "sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"is-core-module": "^2.8.1",
|
||||
"path-parse": "^1.0.7",
|
||||
"supports-preserve-symlinks-flag": "^1.0.0"
|
||||
}
|
||||
},
|
||||
"resolve-from": {
|
||||
"version": "4.0.0",
|
||||
"resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
|
||||
"integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
|
||||
"dev": true
|
||||
},
|
||||
"reusify": {
|
||||
"version": "1.0.4",
|
||||
"resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz",
|
||||
"integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==",
|
||||
"dev": true
|
||||
},
|
||||
"rollup": {
|
||||
"version": "2.67.2",
|
||||
"resolved": "https://registry.npmjs.org/rollup/-/rollup-2.67.2.tgz",
|
||||
"integrity": "sha512-hoEiBWwZtf1QdK3jZIq59L0FJj4Fiv4RplCO4pvCRC86qsoFurWB4hKQIjoRf3WvJmk5UZ9b0y5ton+62fC7Tw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"fsevents": "~2.3.2"
|
||||
}
|
||||
},
|
||||
"run-parallel": {
|
||||
"version": "1.2.0",
|
||||
"resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz",
|
||||
"integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"queue-microtask": "^1.2.2"
|
||||
}
|
||||
},
|
||||
"scheduler": {
|
||||
"version": "0.20.2",
|
||||
"resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.20.2.tgz",
|
||||
"integrity": "sha512-2eWfGgAqqWFGqtdMmcL5zCMK1U8KlXv8SQFGglL3CEtd0aDVDWgeF/YoCmvln55m5zSk3J/20hTaSBeSObsQDQ==",
|
||||
"dev": true,
|
||||
"peer": true,
|
||||
"requires": {
|
||||
"loose-envify": "^1.1.0",
|
||||
"object-assign": "^4.1.1"
|
||||
}
|
||||
},
|
||||
"source-map": {
|
||||
"version": "0.6.1",
|
||||
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
|
||||
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
|
||||
"dev": true
|
||||
},
|
||||
"source-map-js": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz",
|
||||
"integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==",
|
||||
"dev": true
|
||||
},
|
||||
"sourcemap-codec": {
|
||||
"version": "1.4.8",
|
||||
"resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz",
|
||||
"integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==",
|
||||
"dev": true
|
||||
},
|
||||
"supports-color": {
|
||||
"version": "7.2.0",
|
||||
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
|
||||
"integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"has-flag": "^4.0.0"
|
||||
}
|
||||
},
|
||||
"supports-preserve-symlinks-flag": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz",
|
||||
"integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==",
|
||||
"dev": true
|
||||
},
|
||||
"tailwindcss": {
|
||||
"version": "3.0.22",
|
||||
"resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.0.22.tgz",
|
||||
"integrity": "sha512-F8lt74RlNZirnkaSk310+vGQta7c0/hgx7/bqxruM4wS9lp8oqV93lzavajC3VT0Lp4UUtUVIt8ifKcmGzkr0A==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"arg": "^5.0.1",
|
||||
"chalk": "^4.1.2",
|
||||
"chokidar": "^3.5.3",
|
||||
"color-name": "^1.1.4",
|
||||
"cosmiconfig": "^7.0.1",
|
||||
"detective": "^5.2.0",
|
||||
"didyoumean": "^1.2.2",
|
||||
"dlv": "^1.1.3",
|
||||
"fast-glob": "^3.2.11",
|
||||
"glob-parent": "^6.0.2",
|
||||
"is-glob": "^4.0.3",
|
||||
"normalize-path": "^3.0.0",
|
||||
"object-hash": "^2.2.0",
|
||||
"postcss": "^8.4.6",
|
||||
"postcss-js": "^4.0.0",
|
||||
"postcss-load-config": "^3.1.0",
|
||||
"postcss-nested": "5.0.6",
|
||||
"postcss-selector-parser": "^6.0.9",
|
||||
"postcss-value-parser": "^4.2.0",
|
||||
"quick-lru": "^5.1.1",
|
||||
"resolve": "^1.22.0"
|
||||
}
|
||||
},
|
||||
"to-regex-range": {
|
||||
"version": "5.0.1",
|
||||
"resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
|
||||
"integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"is-number": "^7.0.0"
|
||||
}
|
||||
},
|
||||
"util-deprecate": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
|
||||
"integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=",
|
||||
"dev": true
|
||||
},
|
||||
"vite": {
|
||||
"version": "2.8.2",
|
||||
"resolved": "https://registry.npmjs.org/vite/-/vite-2.8.2.tgz",
|
||||
"integrity": "sha512-zawfykcPVPYva4KusIWORNLr324Qx86/3NpfQSIOJdjnL5pYhwDoImLYMOh4lFLcP/7//tNuWM2vx2F5OSVC9w==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"esbuild": "^0.14.14",
|
||||
"fsevents": "~2.3.2",
|
||||
"postcss": "^8.4.6",
|
||||
"resolve": "^1.22.0",
|
||||
"rollup": "^2.59.0"
|
||||
}
|
||||
},
|
||||
"vitepress": {
|
||||
"version": "0.22.2",
|
||||
"resolved": "https://registry.npmjs.org/vitepress/-/vitepress-0.22.2.tgz",
|
||||
"integrity": "sha512-L6ykQzBXKzLTSU3zZbILeF1TONO6juV/RrL0DsA9OayomVQjEOoFY7cVdKOpIBb3T5Jy/GAAVxcvWtU/XJ5k4g==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@docsearch/css": "^3.0.0-alpha.41",
|
||||
"@docsearch/js": "^3.0.0-alpha.41",
|
||||
"@vitejs/plugin-vue": "^2.2.0",
|
||||
"prismjs": "^1.25.0",
|
||||
"vite": "^2.8.1",
|
||||
"vue": "^3.2.31"
|
||||
}
|
||||
},
|
||||
"vue": {
|
||||
"version": "3.2.31",
|
||||
"resolved": "https://registry.npmjs.org/vue/-/vue-3.2.31.tgz",
|
||||
"integrity": "sha512-odT3W2tcffTiQCy57nOT93INw1auq5lYLLYtWpPYQQYQOOdHiqFct9Xhna6GJ+pJQaF67yZABraH47oywkJgFw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@vue/compiler-dom": "3.2.31",
|
||||
"@vue/compiler-sfc": "3.2.31",
|
||||
"@vue/runtime-dom": "3.2.31",
|
||||
"@vue/server-renderer": "3.2.31",
|
||||
"@vue/shared": "3.2.31"
|
||||
}
|
||||
},
|
||||
"xtend": {
|
||||
"version": "4.0.2",
|
||||
"resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz",
|
||||
"integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==",
|
||||
"dev": true
|
||||
},
|
||||
"yaml": {
|
||||
"version": "1.10.2",
|
||||
"resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz",
|
||||
"integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==",
|
||||
"dev": true
|
||||
}
|
||||
}
|
||||
}
|
||||
21
docs/package.json
Normal file
21
docs/package.json
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
{
|
||||
"name": "castopod-docs",
|
||||
"version": "0.0.0-development",
|
||||
"description": "Castopod documentation using vitepress",
|
||||
"main": "index.js",
|
||||
"scripts": {
|
||||
"dev": "vitepress --port=3050",
|
||||
"build": "vitepress build",
|
||||
"serve": "vitepress serve"
|
||||
},
|
||||
"author": {
|
||||
"name": "Yassine Doghri",
|
||||
"email": "yassine@doghri.fr",
|
||||
"url": "https://code.castopod.org/yassine"
|
||||
},
|
||||
"license": "AGPL-3.0-or-later",
|
||||
"devDependencies": {
|
||||
"tailwindcss": "^3.0.22",
|
||||
"vitepress": "^0.22.2"
|
||||
}
|
||||
}
|
||||
5
docs/postcss.config.js
Normal file
5
docs/postcss.config.js
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
/* eslint-disable */
|
||||
|
||||
module.exports = {
|
||||
plugins: [require("tailwindcss")],
|
||||
};
|
||||
4
docs/src/contributing/_category_.json
Normal file
4
docs/src/contributing/_category_.json
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
{
|
||||
"label": "Contributing",
|
||||
"position": 3
|
||||
}
|
||||
|
|
@ -1,6 +1,10 @@
|
|||
# Contributing to Castopod Host
|
||||
---
|
||||
title: Guidelines
|
||||
---
|
||||
|
||||
Love Castopod Host and want to help? Thanks so much, there's something to do for
|
||||
# Contributing to Castopod
|
||||
|
||||
Love Castopod and want to help? Thanks so much, there's something to do for
|
||||
everybody!
|
||||
|
||||
Please take a moment to review this document in order to make the contribution
|
||||
|
|
@ -12,13 +16,13 @@ should reciprocate that respect in addressing your issue or assessing patches
|
|||
and features.
|
||||
|
||||
⚠️ Note that **any** contribution made on a repository other than
|
||||
[the original repository](https://code.podlibre.org/podlibre/castopod-host) will
|
||||
not be accepted.
|
||||
[the original repository](https://code.castopod.org/ad-aures/castopod) will not
|
||||
be accepted.
|
||||
|
||||
## Using the issue tracker
|
||||
|
||||
The [issue tracker](https://code.podlibre.org/podlibre/castopod-host/-/issues)
|
||||
is the preferred channel for [bug reports](#bug-reports),
|
||||
The [issue tracker](https://code.castopod.org/ad-aures/castopod/-/issues) is the
|
||||
preferred channel for [bug reports](#bug-reports),
|
||||
[features requests](#feature-requests) and
|
||||
[submitting pull requests](#pull-requests).
|
||||
|
||||
|
|
@ -77,13 +81,13 @@ the project:
|
|||
|
||||
```bash
|
||||
# Clone your fork of the repo into the current directory
|
||||
git clone https://code.podlibre.org/<your-username>/castopod-host.git
|
||||
git clone https://code.castopod.org/<your-username>/castopod.git
|
||||
|
||||
# Navigate to the newly cloned directory
|
||||
cd castopod-host
|
||||
cd castopod
|
||||
|
||||
# Assign the original repo to a remote called "upstream"
|
||||
git remote add upstream https://code.podlibre.org/podlibre/castopod-host.git
|
||||
git remote add upstream https://code.castopod.org/ad-aures/castopod.git
|
||||
```
|
||||
|
||||
2. If you cloned a while ago, get the latest changes from upstream:
|
||||
|
|
@ -123,7 +127,7 @@ git push origin <topic-branch-name>
|
|||
|
||||
**IMPORTANT**: By submitting a patch, you agree to allow the project owners to
|
||||
license your work under the terms of the
|
||||
[GNU AGPLv3](https://code.podlibre.org/podlibre/castopod-host/-/blob/main/LICENSE).
|
||||
[GNU AGPLv3](https://code.castopod.org/ad-aures/castopod/-/blob/main/LICENSE).
|
||||
|
||||
## Collaborating guidelines
|
||||
|
||||
|
|
@ -1,40 +1,32 @@
|
|||
# Setup your development environment <!-- omit in toc -->
|
||||
---
|
||||
title: Development setup
|
||||
sidebarDepth: 3
|
||||
---
|
||||
|
||||
## Table of contents <!-- omit in toc -->
|
||||
|
||||
- [Introduction](#introduction)
|
||||
- [Pre-requisites](#pre-requisites)
|
||||
- [(recommended) Develop inside the app Container with VSCode](#recommended-develop-inside-the-app-container-with-vscode)
|
||||
- [(not-recommended) Develop outside the app container](#not-recommended-develop-outside-the-app-container)
|
||||
- [Install Castopod Host's dependencies](#install-castopod-hosts-dependencies)
|
||||
- [Initialize and populate database](#initialize-and-populate-database)
|
||||
- [Start hacking](#start-hacking)
|
||||
- [Going Further](#going-further)
|
||||
- [Useful docker / docker-compose commands](#useful-docker--docker-compose-commands)
|
||||
- [Known issues](#known-issues)
|
||||
- [Allocation failed - JavaScript heap out of memory](#allocation-failed---javascript-heap-out-of-memory)
|
||||
- [Files created inside container are attributed to root locally (Linux)](#files-created-inside-container-are-attributed-to-root-locally-linux)
|
||||
# Setup your development environment
|
||||
|
||||
## Introduction
|
||||
|
||||
Castopod Host is a web app based on the `php` framework
|
||||
Castopod is a web app based on the `php` framework
|
||||
[CodeIgniter 4](https://codeigniter.com).
|
||||
|
||||
To setup a dev environment, we use [Docker](https://www.docker.com/). A
|
||||
We use [Docker](https://www.docker.com/) quickly setup a dev environment. A
|
||||
`docker-compose.yml` and `Dockerfile` are included in the project's root folder
|
||||
to help you kickstart your contribution.
|
||||
|
||||
> Know that you don't need any prior knowledge of Docker to follow the next
|
||||
> steps. However, if you wish to use your own environment, feel free to do so!
|
||||
> You don't need any prior knowledge of Docker to follow the next steps.
|
||||
> However, if you wish to use your own environment, feel free to do so!
|
||||
|
||||
## Pre-requisites
|
||||
## Setup instructions
|
||||
|
||||
### 1. Pre-requisites
|
||||
|
||||
0. Install [docker](https://docs.docker.com/get-docker).
|
||||
|
||||
1. Clone Castopod Host project by running:
|
||||
1. Clone Castopod project by running:
|
||||
|
||||
```bash
|
||||
git clone https://code.podlibre.org/podlibre/castopod-host.git
|
||||
git clone https://code.castopod.org/ad-aures/castopod.git
|
||||
```
|
||||
|
||||
2. Create a `.env` file with the minimum required config to connect the app to
|
||||
|
|
@ -58,7 +50,7 @@ to help you kickstart your contribution.
|
|||
|
||||
database.default.hostname="mariadb"
|
||||
database.default.database="castopod"
|
||||
database.default.username="podlibre"
|
||||
database.default.username="castopod"
|
||||
database.default.password="castopod"
|
||||
|
||||
cache.handler="redis"
|
||||
|
|
@ -78,12 +70,12 @@ to help you kickstart your contribution.
|
|||
3. (for docker desktop) Add the repository you've cloned to docker desktop's
|
||||
`Settings` > `Resources` > `File Sharing`
|
||||
|
||||
## (recommended) Develop inside the app Container with VSCode
|
||||
### 2. (recommended) Develop inside the app Container with VSCode
|
||||
|
||||
If you're working in VSCode, you can take advantage of the `.devcontainer/`
|
||||
folder. It defines a development environment (dev container) with preinstalled
|
||||
requirements and VSCode extensions so you don't have to worry about them. All
|
||||
required services will be loaded automagically!
|
||||
required services will be loaded automagically! 🪄
|
||||
|
||||
1. Install the VSCode extension
|
||||
[Remote - Containers](https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-containers)
|
||||
|
|
@ -92,7 +84,7 @@ required services will be loaded automagically!
|
|||
> The VSCode window will reload inside the dev container. Expect several
|
||||
> minutes during first load as it is building all necessary services.
|
||||
|
||||
**Note**: The dev container will start by running Castopod Host's php server.
|
||||
**Note**: The dev container will start by running Castopod's php server.
|
||||
During development, you will have to start [Vite](https://vitejs.dev)'s dev
|
||||
server for compiling the typescript code and styles:
|
||||
|
||||
|
|
@ -105,8 +97,8 @@ required services will be loaded automagically!
|
|||
using the following commands:
|
||||
|
||||
```bash
|
||||
# run Castopod host server
|
||||
php spark serve --host 0.0.0.0
|
||||
# run Castopod server
|
||||
php spark serve - 0.0.0.0
|
||||
```
|
||||
|
||||
3. You're all set! 🎉
|
||||
|
|
@ -131,7 +123,22 @@ required services will be loaded automagically!
|
|||
For more info, see
|
||||
[VSCode Remote Containers](https://code.visualstudio.com/docs/remote/containers)
|
||||
|
||||
## (not-recommended) Develop outside the app container
|
||||
### 3. Start hacking
|
||||
|
||||
You're all set! Start working your magic by updating the project's files! Help
|
||||
yourself to the
|
||||
[CodeIgniter4 User Guide](https://codeigniter.com/user_guide/index.html) for
|
||||
more insights.
|
||||
|
||||
To see your changes, go to:
|
||||
|
||||
- `http://localhost:8080/` for the Castopod app
|
||||
- `http://localhost:8888/` for the phpmyadmin interface:
|
||||
|
||||
- username: **castopod**
|
||||
- password: **castopod**
|
||||
|
||||
### 2-alt. Develop outside the app container
|
||||
|
||||
You do not wish to use the VSCode devcontainer? No problem!
|
||||
|
||||
|
|
@ -155,16 +162,17 @@ You do not wish to use the VSCode devcontainer? No problem!
|
|||
> The `docker-compose up -d` command will boot 4 containers in the
|
||||
> background:
|
||||
>
|
||||
> - `castopod-host_app`: a php based container with Castopod Host
|
||||
> requirements installed
|
||||
> - `castopod-host_redis`: a [redis](https://redis.io/) database to handle
|
||||
> queries and pages caching
|
||||
> - `castopod-host_mariadb`: a [mariadb](https://mariadb.org/) server for
|
||||
> - `castopod_app`: a php based container with Castopod requirements
|
||||
> installed
|
||||
> - `castopod_redis`: a [redis](https://redis.io/) database to handle queries
|
||||
> and pages caching
|
||||
> - `castopod_mariadb`: a [mariadb](https://mariadb.org/) server for
|
||||
> persistent data
|
||||
> - `castopod-host_phpmyadmin`: a phpmyadmin server to visualize the mariadb
|
||||
> - `castopod_phpmyadmin`: a phpmyadmin server to visualize the mariadb
|
||||
> database.
|
||||
|
||||
2. Run any command by prefixing them with `docker-compose run --rm app`:
|
||||
2. Run any command inside the containers by prefixing them with
|
||||
`docker-compose run --rm app`:
|
||||
|
||||
```bash
|
||||
# use PHP
|
||||
|
|
@ -180,7 +188,11 @@ You do not wish to use the VSCode devcontainer? No problem!
|
|||
docker-compose run --rm app git version
|
||||
```
|
||||
|
||||
## Install Castopod Host's dependencies
|
||||
---
|
||||
|
||||
## Going Further
|
||||
|
||||
### Install Castopod's dependencies
|
||||
|
||||
1. Install php dependencies with [Composer](https://getcomposer.org/)
|
||||
|
||||
|
|
@ -188,13 +200,15 @@ You do not wish to use the VSCode devcontainer? No problem!
|
|||
composer install
|
||||
```
|
||||
|
||||
> **Note:**
|
||||
>
|
||||
> The php dependencies aren't included in the repository. Composer will check
|
||||
> the `composer.json` and `composer.lock` files to download the packages with
|
||||
> the right versions. The dependencies will live under the `vendor/` folder.
|
||||
> For more info, check out the
|
||||
> [Composer documentation](https://getcomposer.org/doc/).
|
||||
::: info Note
|
||||
|
||||
The php dependencies aren't included in the repository. Composer will check
|
||||
the `composer.json` and `composer.lock` files to download the packages with
|
||||
the right versions. The dependencies will live under the `vendor/` folder.
|
||||
For more info, check out the
|
||||
[Composer documentation](https://getcomposer.org/doc/).
|
||||
|
||||
:::
|
||||
|
||||
2. Install javascript dependencies with [npm](https://www.npmjs.com/)
|
||||
|
||||
|
|
@ -202,13 +216,14 @@ You do not wish to use the VSCode devcontainer? No problem!
|
|||
npm install
|
||||
```
|
||||
|
||||
> **Note:**
|
||||
>
|
||||
> The javascript dependencies aren't included in the repository. Npm will
|
||||
> check the `package.json` and `package.lock` files to download the packages
|
||||
> with the right versions. The dependencies will live under the `node_module`
|
||||
> folder. For more info, check out the
|
||||
> [NPM documentation](https://docs.npmjs.com/).
|
||||
::: info Note
|
||||
|
||||
The javascript dependencies aren't included in the repository. Npm will check
|
||||
the `package.json` and `package.lock` files to download the packages with the
|
||||
right versions. The dependencies will live under the `node_module` folder.
|
||||
For more info, check out the [NPM documentation](https://docs.npmjs.com/).
|
||||
|
||||
:::
|
||||
|
||||
3. Generate static assets:
|
||||
|
||||
|
|
@ -221,17 +236,21 @@ You do not wish to use the VSCode devcontainer? No problem!
|
|||
npm run build:svg
|
||||
```
|
||||
|
||||
> **Note:**
|
||||
>
|
||||
> The static assets generated live under the `public/assets` folder, it
|
||||
> includes javascript, styles, images, fonts, icons and svg files.
|
||||
::: info Note
|
||||
|
||||
## Initialize and populate database
|
||||
The static assets generated live under the `public/assets` folder, it
|
||||
includes javascript, styles, images, fonts, icons and svg files.
|
||||
|
||||
> **Note:**
|
||||
>
|
||||
> You may skip this section if you go through the install wizard (go to
|
||||
> `/cp-install`).
|
||||
:::
|
||||
|
||||
### Initialize and populate database
|
||||
|
||||
::: tip
|
||||
|
||||
You may skip this section if you go through the install wizard (go to
|
||||
`/cp-install`).
|
||||
|
||||
:::
|
||||
|
||||
1. Build the database with the migrate command:
|
||||
|
||||
|
|
@ -272,14 +291,21 @@ You do not wish to use the VSCode devcontainer? No problem!
|
|||
|
||||
3. (optionnal) Populate the database with test data:
|
||||
|
||||
- Populate test data (login: admin / password: AGUehL3P)
|
||||
|
||||
```bash
|
||||
# Populates test data (login: admin / password: AGUehL3P)
|
||||
php spark db:seed TestSeeder
|
||||
```
|
||||
|
||||
# Populates with fake podcast analytics
|
||||
- Populate with fake podcast analytics:
|
||||
|
||||
```bash
|
||||
php spark db:seed FakePodcastsAnalyticsSeeder
|
||||
```
|
||||
|
||||
# Populates with fake website analytics
|
||||
- Populate with fake website analytics:
|
||||
|
||||
```bash
|
||||
php spark db:seed FakeWebsiteAnalyticsSeeder
|
||||
```
|
||||
|
||||
|
|
@ -288,50 +314,53 @@ You do not wish to use the VSCode devcontainer? No problem!
|
|||
- username: **admin**
|
||||
- password: **AGUehL3P**
|
||||
|
||||
## Start hacking
|
||||
|
||||
You're all set! Start working your magic by updating the project's files! Help
|
||||
yourself to the
|
||||
[CodeIgniter4 User Guide](https://codeigniter.com/user_guide/index.html) for
|
||||
more insights.
|
||||
|
||||
To see your changes, go to:
|
||||
|
||||
- [localhost:8080](http://localhost:8080/) for the Castopod Host app
|
||||
- [localhost:8888](http://localhost:8888/) for the phpmyadmin interface:
|
||||
|
||||
- username: **podlibre**
|
||||
- password: **castopod**
|
||||
|
||||
---
|
||||
|
||||
## Going Further
|
||||
|
||||
### Useful docker / docker-compose commands
|
||||
|
||||
- Monitor the app container:
|
||||
|
||||
```bash
|
||||
# monitor the app container
|
||||
docker-compose logs --tail 50 --follow --timestamps app
|
||||
```
|
||||
|
||||
# interact with redis server using included redis-cli command
|
||||
docker exec -it castopod-host_redis redis-cli
|
||||
- Interact with redis server using included redis-cli command:
|
||||
|
||||
# monitor the redis container
|
||||
```bash
|
||||
docker exec -it castopod_redis redis-cli
|
||||
```
|
||||
|
||||
- Monitor the redis container:
|
||||
|
||||
```bash
|
||||
docker-compose logs --tail 50 --follow --timestamps redis
|
||||
```
|
||||
|
||||
# monitor the mariadb container
|
||||
- Monitor the mariadb container:
|
||||
|
||||
```bash
|
||||
docker-compose logs --tail 50 --follow --timestamps mariadb
|
||||
```
|
||||
|
||||
# monitor the phpmyadmin container
|
||||
- Monitor the phpmyadmin container:
|
||||
|
||||
```bash
|
||||
docker-compose logs --tail 50 --follow --timestamps phpmyadmin
|
||||
```
|
||||
|
||||
# restart docker containers
|
||||
- Restart docker containers:
|
||||
|
||||
```bash
|
||||
docker-compose restart
|
||||
```
|
||||
|
||||
# Destroy all containers, opposite of `up` command
|
||||
- Destroy all containers, opposite of `up` command:
|
||||
|
||||
```bash
|
||||
docker-compose down
|
||||
```
|
||||
|
||||
# Rebuild app container
|
||||
- Rebuild app container:
|
||||
|
||||
```bash
|
||||
docker-compose build app
|
||||
```
|
||||
|
||||
|
|
@ -348,13 +377,15 @@ This happens when running `npm install`.
|
|||
👉 By default, docker might not have access to enough RAM. Allocate more memory
|
||||
and run `npm install` again.
|
||||
|
||||
### Files created inside container are attributed to root locally (Linux)
|
||||
### (Linux) Files created inside container are attributed to root locally
|
||||
|
||||
You may use Linux user namespaces to fix this on your machine:
|
||||
|
||||
> **Note:**
|
||||
>
|
||||
> Replace "username" with your local username
|
||||
::: info Note
|
||||
|
||||
Replace "username" with your local username
|
||||
|
||||
:::
|
||||
|
||||
1. Go to `/etc/docker/daemon.json` and add:
|
||||
|
||||
4
docs/src/getting-started/_category_.json
Normal file
4
docs/src/getting-started/_category_.json
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
{
|
||||
"label": "Getting Started",
|
||||
"position": 2
|
||||
}
|
||||
154
docs/src/getting-started/install.md
Normal file
154
docs/src/getting-started/install.md
Normal file
|
|
@ -0,0 +1,154 @@
|
|||
---
|
||||
title: Installation
|
||||
sidebarDepth: 3
|
||||
---
|
||||
|
||||
# How to install Castopod?
|
||||
|
||||
Castopod was thought-out to be easy to install. Whether using dedicated or
|
||||
shared hosting, you can install it on most PHP-MySQL compatible web servers.
|
||||
|
||||
## Requirements
|
||||
|
||||
- PHP v8.0 or higher
|
||||
- MySQL version 5.7 or higher or MariaDB version 10.2 or higher
|
||||
- HTTPS support
|
||||
|
||||
### PHP v8.0 or higher
|
||||
|
||||
PHP version 8.0 or higher is required, with the following extensions installed:
|
||||
|
||||
- [intl](https://php.net/manual/en/intl.requirements.php)
|
||||
- [libcurl](https://php.net/manual/en/curl.requirements.php)
|
||||
- [mbstring](https://php.net/manual/en/mbstring.installation.php)
|
||||
- [gd](https://www.php.net/manual/en/image.installation.php) with **JPEG**,
|
||||
**PNG** and **WEBP** libraries.
|
||||
|
||||
Additionally, make sure that the following extensions are enabled in your PHP:
|
||||
|
||||
- json (enabled by default - don't turn it off)
|
||||
- xml (enabled by default - don't turn it off)
|
||||
- [mysqlnd](https://php.net/manual/en/mysqlnd.install.php)
|
||||
|
||||
### MySQL compatible database
|
||||
|
||||
> We recommend using [MariaDB](https://mariadb.org).
|
||||
|
||||
::: warning
|
||||
|
||||
Castopod only works with supported MySQL 5.7 or higher compatible databases. It
|
||||
will break with the previous MySQL v5.6 for example as its end of life was on
|
||||
February 5, 2021.
|
||||
|
||||
:::
|
||||
|
||||
You will need the server hostname, database name, username and password to
|
||||
complete the installation process. If you do not have these, please contact your
|
||||
server administrator.
|
||||
|
||||
#### Privileges
|
||||
|
||||
User must have at least these privileges on the database for Castopod to work:
|
||||
`CREATE`, `ALTER`, `DELETE`, `EXECUTE`, `INDEX`, `INSERT`, `SELECT`, `UPDATE`.
|
||||
|
||||
### (Optional) FFmpeg v4.1.8 or higher for Video Clips
|
||||
|
||||
[FFmpeg](https://www.ffmpeg.org/) version 4.1.8 or higher is required if you
|
||||
want to generate Video Clips. The following extensions must be installed:
|
||||
|
||||
- **FreeType 2** library for
|
||||
[gd](https://www.php.net/manual/en/image.installation.php).
|
||||
|
||||
### (Optional) Other recommendations
|
||||
|
||||
- Redis for better cache performances.
|
||||
- CDN for static files caching and better performances.
|
||||
- e-mail gateway for lost passwords.
|
||||
|
||||
## Install instructions
|
||||
|
||||
### Pre-requisites
|
||||
|
||||
0. Get a Web Server with [requirements](#requirements) installed
|
||||
1. Create a MySQL database for Castopod with a user having access and
|
||||
modification privileges (for more info, see
|
||||
[MySQL compatible database](#mysql-compatible-database)).
|
||||
2. Activate HTTPS on your domain with an _SSL certificate_.
|
||||
3. Download and unzip the latest [Castopod Package](https://castopod.org/) onto
|
||||
the web server if you haven’t already.
|
||||
- ⚠️ Set the web server document root to the `public/` sub-folder within the
|
||||
`castopod` folder.
|
||||
4. Add **cron tasks** on your web server for various background processes
|
||||
(replace the paths accordingly):
|
||||
|
||||
- For social features to work properly, this task is used to broadcast social
|
||||
activities to your followers on the fediverse:
|
||||
|
||||
```bash
|
||||
* * * * * /path/to/php /path/to/castopod/public/index.php scheduled-activities
|
||||
```
|
||||
|
||||
- For Video Clips to be created (see
|
||||
[FFmpeg requirements](#ffmpeg-v418-or-higher-for-video-clips)):
|
||||
|
||||
```bash
|
||||
* * * * * /path/to/php /path/to/castopod/public/index.php scheduled-video-clips
|
||||
```
|
||||
|
||||
> These tasks run **every minute**. You may set the frequency depending on
|
||||
> your needs: every 5, 10 minutes or more.
|
||||
|
||||
### (recommended) Install Wizard
|
||||
|
||||
1. Run the Castopod install script by going to the install wizard page
|
||||
(`https://your_domain_name.com/cp-install`) in your favorite web browser.
|
||||
2. Follow the instructions on your screen.
|
||||
3. Start podcasting!
|
||||
|
||||
::: info Note
|
||||
|
||||
The install script writes a `.env` file in the package root. If you cannot go
|
||||
through the install wizard, you can
|
||||
[create and update the `.env` file manually](#alternative-manual-configuration).
|
||||
|
||||
:::
|
||||
|
||||
## Community packages
|
||||
|
||||
If you don't want to bother with installing Castopod manually, you may use one
|
||||
of the packages created and maintained by the open-source community.
|
||||
|
||||
### Install with YunoHost
|
||||
|
||||
[YunoHost](https://yunohost.org/) is a distribution based on Debian GNU/Linux
|
||||
made up of free and open-source software packages. It manages the hardships of
|
||||
self-hosting for you.
|
||||
|
||||
<div class="flex flex-wrap items-center gap-4">
|
||||
|
||||
<a href="https://install-app.yunohost.org/?app=castopod" target="_blank" rel="noopener noreferrer">
|
||||
<img src="https://install-app.yunohost.org/install-with-yunohost.svg" alt="Install Castopod with YunoHost" class="align-middle" />
|
||||
</a>
|
||||
|
||||
<a href="https://github.com/YunoHost-Apps/castopod_ynh" target="_blank" rel="noopener noreferrer" class="inline-flex items-center px-4 py-[.3rem] mx-auto font-semibold text-center text-black rounded-md gap-x-1 border-2 border-solid border-[#333] hover:no-underline hover:bg-gray-100"><svg
|
||||
xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="1em" height="1em"
|
||||
class="text-xl"><path fill="none" d="M0 0h24v24H0z"/><path d="M12 2A10 10 0 0 0 2 12a10 10 0 0 0 6.84 9.49c.5.09.69-.21.69-.48l-.02-1.86c-2.51.46-3.16-.61-3.36-1.18-.11-.28-.6-1.17-1.02-1.4-.35-.2-.85-.66-.02-.67.79-.01 1.35.72 1.54 1.02.9 1.52 2.34 1.1 2.91.83a2.1 2.1 0 0 1 .64-1.34c-2.22-.25-4.55-1.11-4.55-4.94A3.9 3.9 0 0 1 6.68 8.8a3.6 3.6 0 0 1 .1-2.65s.83-.27 2.75 1.02a9.28 9.28 0 0 1 2.5-.34c.85 0 1.7.12 2.5.34 1.9-1.3 2.75-1.02 2.75-1.02.54 1.37.2 2.4.1 2.65.63.7 1.02 1.58 1.02 2.68 0 3.84-2.34 4.7-4.56 4.94.36.31.67.91.67 1.85l-.01 2.75c0 .26.19.58.69.48A10.02 10.02 0 0 0 22 12 10 10 0 0 0 12 2z"/></svg>Github
|
||||
Repo</a>
|
||||
|
||||
</div>
|
||||
|
||||
### Install with Docker
|
||||
|
||||
I you wish to use Docker to install Castopod, it is possible thanks to
|
||||
[Romain de Laage](https://podcastindex.social/web/@rdelaage@mamot.fr)!
|
||||
|
||||
<a href="https://gitlab.utc.fr/picasoft/projets/services/castopod" target="_blank" rel="noopener noreferrer" class="inline-flex items-center px-4 py-2 mx-auto font-semibold text-center text-white rounded-md shadow gap-x-1 bg-[#1282d7] hover:no-underline hover:bg-[#0f6eb5]">Install
|
||||
with
|
||||
Docker<svg viewBox="0 0 24 24" width="1em" height="1em" class="text-xl text-pine-200"><path fill="currentColor" d="m16.172 11-5.364-5.364 1.414-1.414L20 12l-7.778 7.778-1.414-1.414L16.172 13H4v-2z"></path></svg></a>
|
||||
|
||||
::: info Note
|
||||
|
||||
Given high demand for docker, we are planning on maintaining an official Docker
|
||||
image directly into the Castopod repository.
|
||||
|
||||
:::
|
||||
26
docs/src/getting-started/security.md
Normal file
26
docs/src/getting-started/security.md
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
---
|
||||
title: Security
|
||||
---
|
||||
|
||||
# Security concerns
|
||||
|
||||
Castopod is built on top of [CodeIgniter4](https://codeigniter.com/), a PHP
|
||||
framework that encourages
|
||||
[good security practices](https://codeigniter.com/user_guide/concepts/security.html).
|
||||
|
||||
To maximize your instance's safety and prevent any malicious attack, we
|
||||
recommend you update all your Castopod files permissions after installation or
|
||||
updates (to avoid any prior permission error):
|
||||
|
||||
- `writable/` folder must be **readable** and **writable**.
|
||||
- `public/media/` folder must be **readable** and **writable**.
|
||||
- any other file must be set to **readonly**.
|
||||
|
||||
For instance, if you are using Apache or NGINX with Ubuntu you may do the
|
||||
following:
|
||||
|
||||
```bash
|
||||
sudo chown -R root:root /path/to/castopod
|
||||
sudo chown -R www-data:www-data /path/to/castopod/writable
|
||||
sudo chown -R www-data:www-data /path/to/castopod/public/media
|
||||
```
|
||||
|
|
@ -1,44 +1,46 @@
|
|||
# How to update Castopod Host <!-- omit in toc -->
|
||||
---
|
||||
title: Update
|
||||
sidebarDepth: 3
|
||||
---
|
||||
|
||||
After installing _Castopod Host_, you may want to update your instance to the
|
||||
latest version in order to enjoy the latest features ✨, bug fixes 🐛 and
|
||||
performance improvements ⚡.
|
||||
# How to update Castopod?
|
||||
|
||||
## Table of contents <!-- omit in toc -->
|
||||
After installing Castopod, you may want to update your instance to the latest
|
||||
version in order to enjoy the latest features ✨, bug fixes 🐛 and performance
|
||||
improvements ⚡.
|
||||
|
||||
- [Manual update instructions](#manual-update-instructions)
|
||||
- [Automatic update instructions](#automatic-update-instructions)
|
||||
- [Frequently asked questions (FAQ)](#frequently-asked-questions-faq)
|
||||
- [Where can I find my _Castopod Host_ version?](#where-can-i-find-my-castopod-host-version)
|
||||
- [I haven't updated my instance in a long time… What should I do?](#i-havent-updated-my-instance-in-a-long-time-what-should-i-do)
|
||||
- [Should I make a backup before updating?](#should-i-make-a-backup-before-updating)
|
||||
## Automatic update instructions
|
||||
|
||||
> Coming soon... 👀
|
||||
|
||||
## Manual update instructions
|
||||
|
||||
1. Go to the
|
||||
[releases page](https://code.podlibre.org/podlibre/castopod-host/-/releases)
|
||||
and see if your instance is up to date with the latest _Castopod Host_
|
||||
version
|
||||
[releases page](https://code.castopod.org/ad-aures/castopod/-/releases) and
|
||||
see if your instance is up to date with the latest Castopod version
|
||||
|
||||
- cf.
|
||||
[Where can I find my _Castopod Host_ version?](#where-can-i-find-my-castopod-host-version)
|
||||
[Where can I find my Castopod version?](#where-can-i-find-my-castopod-version)
|
||||
|
||||
2. Download the latest release package named `Castopod Host Package`, you may
|
||||
choose between the `zip` or `tar.gz` archives
|
||||
2. Download the latest release package named `Castopod Package`, you may choose
|
||||
between the `zip` or `tar.gz` archives
|
||||
|
||||
- ⚠️ Make sure you download the Castopod Host Package and **NOT** the Source
|
||||
Code
|
||||
- ⚠️ Make sure you download the Castopod Package and **NOT** the Source Code
|
||||
|
||||
3. On your server:
|
||||
|
||||
- Remove all files except `.env` and `public/media`
|
||||
- Copy the new files from the downloaded package into your server
|
||||
- Note: you may need to reset files permissions as during the install
|
||||
process. Check
|
||||
[Security Concerns section in INSTALL.md](./INSTALL.md#security-concerns).
|
||||
|
||||
::: info Note
|
||||
|
||||
You may need to reset files permissions as during the install process.
|
||||
Check [Security Concerns](./security.md).
|
||||
|
||||
:::
|
||||
|
||||
4. Releases may come with additional update instructions (see
|
||||
[releases page](https://code.podlibre.org/podlibre/castopod-host/-/releases)).
|
||||
[releases page](https://code.castopod.org/ad-aures/castopod/-/releases)).
|
||||
They are usually database migration scripts in `.sql` format to update your
|
||||
database schema.
|
||||
|
||||
|
|
@ -50,16 +52,12 @@ performance improvements ⚡.
|
|||
5. If you are using redis, clear your cache.
|
||||
6. ✨ Enjoy your fresh instance, you're all done!
|
||||
|
||||
## Automatic update instructions
|
||||
|
||||
> Coming soon... 👀
|
||||
|
||||
## Frequently asked questions (FAQ)
|
||||
|
||||
### Where can I find my _Castopod Host_ version?
|
||||
### Where can I find my Castopod version?
|
||||
|
||||
Go to your _Castopod Host_ admin panel, the version is displayed on the bottom
|
||||
left corner.
|
||||
Go to your Castopod admin panel, the version is displayed on the bottom left
|
||||
corner.
|
||||
|
||||
Alternatively, you can find the version in the `app > Config > Constants.php`
|
||||
file.
|
||||
|
|
@ -71,12 +69,12 @@ through the release instructions (4), perform them sequentially, from the oldest
|
|||
to the newest.
|
||||
|
||||
> You may want to backup your instance depending on how long you haven't updated
|
||||
> _Castopod Host_.
|
||||
> Castopod.
|
||||
|
||||
For example, if you're on `v1.0.0-alpha.42` and would like to upgrade to
|
||||
`v1.0.0-beta.1`:
|
||||
|
||||
0. (recommended) Make a backup of your files and database.
|
||||
0. (highly recommended) Make a backup of your files and database.
|
||||
|
||||
1. Download the latest release, overwrite your files whilst keeping `.env` and
|
||||
`public/media`.
|
||||
|
|
@ -91,5 +89,5 @@ For example, if you're on `v1.0.0-alpha.42` and would like to upgrade to
|
|||
|
||||
We advise you do, so you don't lose everything if anything goes wrong!
|
||||
|
||||
More generally, we advise you make regular backups of your Castopod Host files
|
||||
and database to prevent you from losing it all…
|
||||
More generally, we advise you make regular backups of your Castopod files and
|
||||
database to prevent you from losing it all…
|
||||
207
docs/src/index.md
Normal file
207
docs/src/index.md
Normal file
|
|
@ -0,0 +1,207 @@
|
|||
---
|
||||
sidebarDepth: 2
|
||||
---
|
||||
|
||||
# Welcome 👋
|
||||
|
||||
[![release-badge]][release] [![license-badge]][license] [![semantic-release-badge]][semantic-release] [![discord-badge]][discord] [![stars-badge]][stars]
|
||||
|
||||
Castopod is a free & open-source hosting platform made for podcasters who want
|
||||
engage and interact with their audience.
|
||||
|
||||
Castopod is easy to install and was built on top of
|
||||
[CodeIgniter4](https://codeigniter.com/), a powerful PHP framework with a very
|
||||
small footprint.
|
||||
|
||||
::: info Note
|
||||
|
||||
Castopod is currently in **beta** but already quite stable and used by
|
||||
podcasters around the world!
|
||||
|
||||
:::
|
||||
|
||||
<div class="flex items-center">
|
||||
<a href="/getting-started/install" class="inline-flex items-center px-4 py-2 mx-auto font-semibold text-center text-white rounded-full shadow gap-x-1 bg-pine-500 hover:no-underline hover:bg-pine-600">Install<svg viewBox="0 0 24 24" width="1em" height="1em" class="text-xl text-pine-200"><path fill="currentColor" d="m16.172 11-5.364-5.364 1.414-1.414L20 12l-7.778 7.778-1.414-1.414L16.172 13H4v-2z"></path></svg></a>
|
||||
</div>
|
||||
|
||||
## Features
|
||||
|
||||
- 🌱 Free & open-source (AGPL v3 License)
|
||||
- 🔐 Focused on data sovereignty: your content, audience, and analytics
|
||||
belong to you, and you only
|
||||
- 🪄 Podcasting 2.0 features: GUID, locked, transcripts, funding, chapters,
|
||||
location, persons, soundbites, …
|
||||
- 💬 Built-in social network:
|
||||
- 🚀 Castopod is part of the Fediverse, a decentralized social network
|
||||
- ❤️ Create posts, share, favourite, and comment on episodes
|
||||
- 📈 Built-in analytics:
|
||||
- ⚖️ GDPR / CCPA / LGPD compliant
|
||||
- 🪙 Standard IABv2 audience measurement
|
||||
- 🏡 On-premises analytics, no third party involved
|
||||
- 📢 Built-in marketing tools:
|
||||
- ✅ SEO ready (open-graph meta-tags, JSON-LD, …)
|
||||
- 📱 PWA: install as a standalone app
|
||||
- 🎨 Customizable theme colors
|
||||
- 🎬 Generate ready-to-share Video clips from episodes
|
||||
- 🎵 Generate Soundbites
|
||||
- ▶️ Embeddable player, embed your episodes on any website
|
||||
- 💸 Monetization
|
||||
- 🔗 Funding links
|
||||
- 📲 listen-to-click ads
|
||||
- 🤝 value4value / WebMonetization
|
||||
- 📡 Publish and broadcast everywhere with RSS: Podcast Index, Apple
|
||||
Podcasts, Spotify, Google Podcasts, Deezer, Podcast Addict, Podfriend, …
|
||||
- 📥 Podcast import: move your existing podcast into Castopod
|
||||
- 📤 Move your podcast out of Castopod
|
||||
- 🔀 Multi-tenant: host as many podcasts as you want
|
||||
- 👥 Multi-user: add contributors and set roles
|
||||
- 🌎 i18n support: translated in English & French, and more to come!
|
||||
|
||||
## Motivation
|
||||
|
||||
The podcasting ecosystem is decentralized by nature: you can create your podcast
|
||||
as an RSS file, publish it on the web and have it shared everywhere online.
|
||||
|
||||
It is in fact one of the only media to have stayed this way for a long time.
|
||||
|
||||
As usages are evolving, more and more people are getting into podcasts: whether
|
||||
it is creators finding new ways to share their ideas, or listeners in the search
|
||||
for better content.
|
||||
|
||||
With podcasting becoming more widely used, some companies are trying to shift it
|
||||
towards a more controlled and centralized medium.
|
||||
|
||||
Castopod was created in an effort to provide an open and sustainable alternative
|
||||
to hosting your podcasts, promoting decentralization to ensure that podcasters
|
||||
creativity can express itself.
|
||||
|
||||
This project is pushed by the open-source community, and specifically by the
|
||||
[Fediverse](https://fediverse.party/en/fediverse/) and
|
||||
[Podcasting 2.0](https://podcastindex.org/) movements.
|
||||
|
||||
## Comparison with other solutions
|
||||
|
||||
We believe that a solution is not necessarily right for everyone, it highly
|
||||
depends on your needs. So, here are comparisons with other tools to help you to
|
||||
gauge whether Castopod is the right fit for you.
|
||||
|
||||
### Castopod vs Wordpress
|
||||
|
||||
Castopod is often referred to as "the Wordpress for podcasts" because of the
|
||||
similarities between the two. In some ways this is true. And actually, Castopod
|
||||
was greatly inspired by the Wordpress ecosystem, seeing the ease of adoption
|
||||
from the community and the number of websites running it.
|
||||
|
||||
Just like Wordpress, Castopod is free & open source, built using PHP with a
|
||||
MySQL database and is packaged in a way that you can easily install on most web
|
||||
servers.
|
||||
|
||||
Wordpress is a great way to create your website and extend it with plugins to
|
||||
get what you want. It is a full fledged CMS that helps you get any type of
|
||||
website online.
|
||||
|
||||
On the other hand, Castopod is meant to address the podcasters needs
|
||||
specifically, focusing on podcasting, and nothing else. You don't need any
|
||||
plugin to get you started on your podcasting journey.
|
||||
|
||||
This allows optimizing the processes specific to podcasting: ranging from the
|
||||
creation of your podcasts and the publication of new episodes all the way to
|
||||
broadcasting, marketing and analytics.
|
||||
|
||||
Finally, depending on your needs, Wordpress and Castopod can even live side by
|
||||
side as they share the same requirements!
|
||||
|
||||
### Castopod vs Funkwhale
|
||||
|
||||
Funkwhale is a self-hosted, modern free and open-source music server. Just as
|
||||
Castopod, Funkwhale is on the fediverse, a decentralized social network allowing
|
||||
interoperability between the two.
|
||||
|
||||
Funkwhale was initially built around music. And later on, as the project
|
||||
evolved, the ability to host podcasts was introduced.
|
||||
|
||||
Unlike Funkwhale, Castopod has been designed and built around podcasting
|
||||
exclusively. This allows easier implementation for features related to the
|
||||
podcasting ecosystem, such as the podcasting 2.0 features (transcripts,
|
||||
chapters, locations, persons, …).
|
||||
|
||||
So, you should probably use Funkwhale if you want to host your music, and use
|
||||
Castopod if you want to host your podcasts.
|
||||
|
||||
### Castopod vs other podcast hosts
|
||||
|
||||
There are many solutions for you to host your podcasts, some of which are really
|
||||
great and [a lot of them](https://podcastindex.org/apps) are jumping into the
|
||||
Podcasting 2.0 wagon just like Castopod!
|
||||
|
||||
Each of these solutions differ from one another, you may compare with the
|
||||
[list of features](#features).
|
||||
|
||||
That being said, there are two main differences with any other podcasting
|
||||
solution:
|
||||
|
||||
- Castopod can be self-hosted and is the only solution that allows you to keep
|
||||
full control over what you produce. Also, as it is open-source, you can even
|
||||
customize it as you wish.
|
||||
|
||||
- Castopod is the only solution that currently integrates both a decentralized
|
||||
social network with ActivityPub as well as many of the podcasting 2.0
|
||||
features, hoping to bridge the gap between the two.
|
||||
|
||||
## Contributing
|
||||
|
||||
Love Castopod and would like to help? Take a look at the following documentation
|
||||
to get you started.
|
||||
|
||||
### Code of conduct
|
||||
|
||||
Castopod has adopted a Code of Conduct that we expect project participants to
|
||||
adhere to. Please read the
|
||||
[CODE_OF_CONDUCT manual](https://code.castopod.org/ad-aures/castopod/-/blob/beta/CODE_OF_CONDUCT.md)
|
||||
so that you can understand what actions will and will not be tolerated.
|
||||
|
||||
### Contributing guide
|
||||
|
||||
Read our [contributing guide](./contributing/guidelines.md) to learn about our
|
||||
development process, how to propose bugfixes and improvements, and how to build
|
||||
and test your changes to Castopod.
|
||||
|
||||
## Contact
|
||||
|
||||
You may reach us for help or ask any question you have on:
|
||||
|
||||
- [Discord](https://castopod.org/discord) (for direct interaction with
|
||||
developers and the community)
|
||||
- [Issue tracker](https://code.castopod.org/ad-aures/castopod/-/issues) (for
|
||||
feature requests & bug reports)
|
||||
|
||||
Alternatively, you can follow us on social media platforms to get news about
|
||||
Castopod:
|
||||
|
||||
- [podlibre.social](https://podlibre.social/@Castopod) (Mastodon instance)
|
||||
- [Twitter](https://twitter.com/castopod)
|
||||
- [LinkedIn](https://linkedin.com/company/castopod)
|
||||
- [Facebook](https://www.facebook.com/castopod)
|
||||
|
||||
## Sponsors
|
||||
|
||||
<div class="flex flex-wrap gap-x-16 gap-y-8">
|
||||
<a href="https://adaures.com/" target="_blank" rel="noopener noreferrer"><img src="/images/sponsors/adaures.svg" alt="Ad Aures Logo" class="h-16" /></a>
|
||||
<a href="https://nlnet.nl/project/Castopod/" target="_blank" rel="noopener noreferrer"><img src="/images/sponsors/nlnet.svg" alt="NLnet Logo" class="h-16" /></a>
|
||||
<a href="https://opencollective.com/castopod/contribute" class="inline-flex items-center font-semibold text-black underline gap-x-1 decoration-pine-500 decoration-4 hover:no-underline" target="_blank" rel="noopener noreferrer">Become a sponsor<svg viewBox="0 0 24 24" class="h-6"><path fill="currentColor" d="m16.172 11-5.364-5.364 1.414-1.414L20 12l-7.778 7.778-1.414-1.414L16.172 13H4v-2z"></path></svg></a>
|
||||
</div>
|
||||
|
||||
[release]: https://code.castopod.org/ad-aures/castopod/-/releases
|
||||
[release-badge]:
|
||||
https://img.shields.io/gitlab/v/release/2?color=brightgreen&gitlab_url=https%3A%2F%2Fcode.castopod.org%2F&include_prereleases&label=release
|
||||
[license]: https://code.castopod.org/ad-aures/castopod/-/blob/beta/LICENSE.md
|
||||
[license-badge]:
|
||||
https://img.shields.io/github/license/ad-aures/castopod?color=blue
|
||||
[semantic-release]: https://github.com/semantic-release/semantic-release
|
||||
[semantic-release-badge]:
|
||||
https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg
|
||||
[discord]: https://castopod.org/discord
|
||||
[discord-badge]: https://img.shields.io/badge/chat-on%20discord-7389D8
|
||||
[stars]: https://github.com/ad-aures/castopod/stargazers
|
||||
[stars-badge]:
|
||||
https://img.shields.io/github/stars/ad-aures/castopod?style=social
|
||||
BIN
docs/src/public/favicon.ico
Normal file
BIN
docs/src/public/favicon.ico
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 21 KiB |
5
docs/src/public/images/logo-inline.svg
Normal file
5
docs/src/public/images/logo-inline.svg
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 324 65">
|
||||
<path fill="#009486" d="M26.6 40.2c-1.4 1.3-3 2.3-4.9 3.1-1.9.7-4 1.1-6.2 1.1-3 0-5.6-.6-8-1.9-2.3-1.3-4.2-3-5.5-5.2-1.3-2.2-2-4.7-2-7.5s.7-5.3 2-7.5 3.2-3.9 5.5-5.2c2.3-1.3 5-1.9 8-1.9 2.2 0 4.3.4 6.2 1.1 1.9.7 3.5 1.7 4.9 3.1l-5.7 5.4c-1.3-1.7-3.1-2.5-5.4-2.5-2.1 0-3.8.7-5.1 2.2-1.3 1.4-2 3.2-2 5.4s.7 4 2 5.4c1.3 1.4 3 2.2 5.1 2.2 2.2 0 4-.8 5.4-2.5l5.7 5.2ZM31.1 36.1c0-1.9.5-3.5 1.6-5s2.6-2.6 4.4-3.5c1.9-.9 4.1-1.3 6.5-1.3a23.36 23.36 0 0 1 5 .5c-.6-3.1-2.8-4.6-6.7-4.6-2.3 0-4.5.9-6.8 2.6L32.3 18c1.9-.9 3.9-1.6 5.8-2.1 1.9-.4 3.7-.7 5.4-.7 2.7 0 5.1.5 7.1 1.5s3.5 2.5 4.6 4.3c1.1 1.9 1.7 4 1.7 6.6v16.2h-6.8l-.5-3c-1 1.1-2.3 2-3.8 2.6-1.5.6-3.2 1-5 1-2.8 0-5.2-.8-7-2.3a7.42 7.42 0 0 1-2.7-6Zm8-1.8c0 .9.4 1.7 1.1 2.3.7.6 1.7.9 2.8.9 1.6 0 3-.5 4.1-1.5 1.1-1 1.6-2.2 1.6-3.6v-.6c-.7-.2-1.4-.4-2.2-.5-.8-.1-1.6-.2-2.3-.2-1.6 0-2.8.3-3.7.8-.9.5-1.4 1.3-1.4 2.4ZM61.9 40.3l3.8-6.1c1.6 1.1 3.1 1.9 4.4 2.5 1.4.6 2.6.9 3.6.9.8 0 1.5-.2 2-.6.5-.4.8-.9.8-1.4 0-.8-.5-1.5-1.4-2-.9-.5-2-1-3.3-1.5-1.3-.5-2.6-1.2-3.9-1.8-1.3-.7-2.4-1.6-3.3-2.7a6.4 6.4 0 0 1-1.3-4.2c0-2.4.9-4.3 2.8-5.9 1.9-1.5 4.5-2.3 8-2.3 1.7 0 3.5.2 5.3.6 1.9.4 3.6 1.1 5.1 2l-3.6 6.1c-.8-.5-1.9-1-3.2-1.4-1.3-.4-2.4-.6-3.4-.6-.5 0-1.1.1-1.7.3-.6.2-.9.6-.9 1.2 0 .7.4 1.3 1.3 1.7.9.4 1.9.9 3.1 1.4 1.3.5 2.6 1.1 4 1.8s2.5 1.6 3.5 2.7c.9 1.1 1.4 2.6 1.4 4.4 0 1.8-.5 3.4-1.5 4.7-1 1.3-2.4 2.3-4 3-1.7.7-3.5 1.1-5.6 1.1-1.9 0-3.9-.3-6-1-2.1-.5-4.1-1.5-6-2.9ZM88.6 15.8h4.6v-7h8.1v7h6.8v7h-6.8v10.3c0 1.3.4 2.4 1.3 3.1.9.8 1.9 1.1 3.2 1.1 1 0 2-.2 3-.6v6.6c-1.8.7-3.5 1-5.2 1-3.3 0-5.9-.9-7.7-2.7-1.8-1.8-2.7-4.3-2.7-7.7V22.5h-4.6v-6.7ZM113.1 29.8c0-2.8.6-5.3 2-7.5 1.3-2.2 3.1-3.9 5.3-5.2 2.3-1.3 4.8-1.9 7.7-1.9 2.9 0 5.4.6 7.7 1.9 2.2 1.3 4 3 5.3 5.2 1.3 2.2 2 4.7 2 7.5s-.7 5.3-2 7.5-3.1 3.9-5.3 5.2c-2.2 1.3-4.8 1.9-7.7 1.9-2.9 0-5.5-.6-7.7-1.9-2.3-1.3-4-3-5.3-5.2-1.4-2.2-2-4.7-2-7.5Zm7.8 0c0 2.2.7 4 2 5.4 1.3 1.4 3 2.2 5.1 2.2 2.1 0 3.8-.7 5.1-2.2 1.3-1.4 2-3.2 2-5.4s-.7-4-2-5.4a6.87 6.87 0 0 0-5.1-2.2c-2.1 0-3.8.7-5.1 2.2-1.3 1.4-2 3.2-2 5.4ZM148.4 15.8h7.6l.2 3c1.2-1.1 2.6-2 4.1-2.7 1.6-.6 3.3-.9 5.1-.9 2.6 0 5 .6 7 1.9 2.1 1.3 3.7 3 4.9 5.2 1.2 2.2 1.8 4.7 1.8 7.5s-.6 5.3-1.8 7.5c-1.2 2.2-2.8 3.9-4.9 5.2-2.1 1.3-4.4 1.9-7 1.9-1.8 0-3.4-.3-4.9-.9-1.5-.6-2.9-1.4-4-2.5v23.8h-8.1v-49Zm15.2 6.4c-2.1 0-3.8.7-5.1 2.2-1.3 1.4-2 3.2-2 5.4s.7 4 2 5.4c1.3 1.4 3 2.2 5.1 2.2 2.1 0 3.8-.7 5.1-2.2 1.3-1.4 2-3.2 2-5.4s-.7-4-2-5.4a6.67 6.67 0 0 0-5.1-2.2ZM182.4 29.8c0-2.8.6-5.3 2-7.5 1.3-2.2 3.1-3.9 5.3-5.2 2.3-1.3 4.8-1.9 7.7-1.9 2.9 0 5.4.6 7.7 1.9 2.2 1.3 4 3 5.3 5.2 1.3 2.2 2 4.7 2 7.5s-.7 5.3-2 7.5-3.1 3.9-5.3 5.2c-2.2 1.3-4.8 1.9-7.7 1.9-2.9 0-5.5-.6-7.7-1.9-2.3-1.3-4-3-5.3-5.2-1.3-2.2-2-4.7-2-7.5Zm7.9 0c0 2.2.7 4 2 5.4 1.3 1.4 3 2.2 5.1 2.2 2.1 0 3.8-.7 5.1-2.2 1.3-1.4 2-3.2 2-5.4s-.7-4-2-5.4a6.87 6.87 0 0 0-5.1-2.2c-2.1 0-3.8.7-5.1 2.2-1.3 1.4-2 3.2-2 5.4ZM215.8 29.8c0-2.8.6-5.3 1.8-7.5 1.2-2.2 2.8-3.9 4.9-5.2 2.1-1.3 4.4-1.9 7-1.9 1.8 0 3.4.3 4.9.9 1.5.6 2.9 1.4 4 2.5V0h8.1v43.9h-7.6l-.2-3c-1.2 1.1-2.6 2-4.1 2.7-1.6.6-3.3.9-5.1.9-2.6 0-5-.6-7-1.9-2.1-1.3-3.7-3-4.9-5.2-1.2-2.3-1.8-4.8-1.8-7.6Zm8.3 0c0 2.2.7 4 2 5.4 1.3 1.4 3 2.2 5.1 2.2 2.1 0 3.8-.7 5.1-2.2 1.3-1.4 2-3.2 2-5.4s-.7-4-2-5.4a6.87 6.87 0 0 0-5.1-2.2c-2.1 0-3.8.7-5.1 2.2-1.3 1.4-2 3.2-2 5.4ZM318.7 44h-10.82s-1.13-2.41-1.6-3.26c-.45-.86-1.55-.82-1.55-.82h-29.38s-1.07-.14-1.6.82c-.57.95-1.63 3.26-1.63 3.26h-10.65a4.47 4.47 0 0 1-4.47-4.44V4.47A4.47 4.47 0 0 1 261.44 0h57.23a4.47 4.47 0 0 1 4.47 4.44v35.09a4.45 4.45 0 0 1-4.43 4.47Z"></path>
|
||||
<path fill="#E7F9E4" d="M274.95 9.51h30.2a9.34 9.34 0 0 1 9.4 9.44c0 5.18-4.22 9.4-9.4 9.4h-30.2a9.42 9.42 0 0 1 0-18.84Z"></path>
|
||||
<path fill="#009486" d="M302.77 15.36a4.61 4.61 0 0 0-3.64 7.46s1.58-1.18 3.8-1.18c1.67 0 3.6 1.01 3.6 1.01a4.61 4.61 0 0 0-3.76-7.29ZM277.23 15.36a4.61 4.61 0 0 0-3.77 7.3s1.94-1.02 3.6-1.02c2.23 0 3.8 1.18 3.8 1.18a4.61 4.61 0 0 0-3.64-7.45Z"></path>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 3.9 KiB |
BIN
docs/src/public/images/logo.png
Normal file
BIN
docs/src/public/images/logo.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 2.7 KiB |
10
docs/src/public/images/sponsors/adaures.svg
Normal file
10
docs/src/public/images/sponsors/adaures.svg
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
viewBox="0 0 104 20"
|
||||
fill="#2A2D7C"
|
||||
height="4rem"
|
||||
>
|
||||
<path
|
||||
d="M38.56 6.39v9.18h-2.44l-.27-.65a4.35 4.35 0 01-2.77 1A4.68 4.68 0 0128.26 11a4.66 4.66 0 014.82-4.86 4.37 4.37 0 012.8 1l.33-.71zm-3 4.6a2.06 2.06 0 10-4.11 0 2.06 2.06 0 104.11 0zM50.25 3.09v12.49h-2.34l-.3-.68a4.22 4.22 0 01-2.77 1A4.68 4.68 0 0140 11a4.68 4.68 0 014.84-4.9 4.25 4.25 0 012.28.64V3.09zM47.32 11a2.06 2.06 0 10-4.11 0 2.06 2.06 0 104.11 0zM65.69 6.39v9.18h-2.44l-.25-.65a4.33 4.33 0 01-2.77 1A4.67 4.67 0 0155.4 11a4.65 4.65 0 014.81-4.86 4.35 4.35 0 012.8 1l.33-.71zm-3 4.6a2.06 2.06 0 10-4.11 0 2.06 2.06 0 104.11 0zM67.57 11.64V6.4h3.16v5.1c0 1 .52 1.54 1.37 1.54s1.35-.58 1.35-1.54V6.4h3.16v5.24c0 2.57-1.8 4.24-4.51 4.24s-4.53-1.67-4.53-4.24zM84.46 6.36v2.89h-1.23c-1.12 0-1.59.49-1.59 1.66v4.67h-3.16V6.4h2.12l.49 1a3.07 3.07 0 012.53-1.06zM95 10.91a5.9 5.9 0 01-.06.83h-6.86a1.79 1.79 0 001.92 1.6 1.85 1.85 0 001.66-.86h3.14A5 5 0 0185 11a5 5 0 0110-.08zM88.14 10h3.71A1.84 1.84 0 0090 8.58 1.77 1.77 0 0088.14 10zM99.94 15.88c-2.5 0-4-1.32-4-3.31h3a.94.94 0 001.07 1c.46 0 .9-.23.9-.71s-.69-.68-1.57-.82C97.9 11.79 96 11.36 96 9.13c0-1.84 1.57-3 3.92-3s3.86 1.25 3.89 3.11h-3c0-.59-.39-.86-1-.86s-.85.25-.85.67.7.65 1.57.8c1.45.26 3.38.56 3.38 2.89 0 1.92-1.62 3.17-4.06 3.17zM0 0v20h20V0zm13.34 12.66a3.84 3.84 0 01-2.51 3.6 3.9 3.9 0 01-1.33.24 3.84 3.84 0 01-1.33-7.44 1 1 0 011.32.61A1 1 0 018.88 11a1.78 1.78 0 001.24 3.34 1.76 1.76 0 001.16-1.67V7.19a1.64 1.64 0 00-3.28 0 1 1 0 11-2 0 3.69 3.69 0 017.38 0z"
|
||||
></path>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.5 KiB |
64
docs/src/public/images/sponsors/nlnet.svg
Normal file
64
docs/src/public/images/sponsors/nlnet.svg
Normal file
|
|
@ -0,0 +1,64 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 449 168" height="4rem">
|
||||
<path
|
||||
fill="#98bf00"
|
||||
d="m446.6 73.88 2.5-13.65h-12.9l3.76-20.08-15.45 6.04-2.5 14.04h-9.4l-2.5 13.65h9.25l-3.15 17.3c-.14.94-.4 2.34-.64 4.14-.25 1.8-.4 3.4-.4 4.75.04 6.25 1.54 11.4 4.5 15.45 2.94 4.14 7.74 6.59 14.44 7.34l6.44-13.3c-3.44-.44-6.04-1.8-7.89-4.1-1.85-2.34-2.75-5.3-2.75-8.89 0-.7.1-1.7.25-3.05.15-1.35.3-2.45.45-3.3l3-16.34h13ZM310.7 72.33c2.4-.85 4.5-1.3 6.26-1.3 1.9 0 3.5.55 4.8 1.65 1.24 1.05 1.84 2.6 1.84 4.75 0 .6-.1 1.5-.3 2.75-.2 1.15-.35 2.2-.5 3.1l-3.6 16.89-.75 4.05c-.25 1.45-.34 2.7-.34 3.75 0 4.05 1.1 7.44 3.34 10.14 2.15 2.7 6 4.3 11.55 4.75l6.35-12.84c-2.16-.35-3.7-1.15-4.65-2.4-1-1.2-1.5-2.9-1.5-5.05 0-.5.05-1.1.15-1.75.05-.65.15-1.2.2-1.6l3.64-17.2c.3-1.44.56-2.9.75-4.34.2-1.4.3-2.8.3-4.15 0-4.95-1.44-8.94-4.34-11.9-2.95-2.94-7.05-4.44-12.3-4.44-3.05 0-5.94.5-8.8 1.5-2.8.95-6.2 2.54-10.14 4.9a17.35 17.35 0 0 0-2.8-6.75l-13.4 5.75a20.5 20.5 0 0 1 2.6 5.5 21.16 21.16 0 0 1 .56 8.4c-.1 1.14-.25 2.04-.4 2.69l-7.95 42.33h14.4l8.44-45.68a23.33 23.33 0 0 1 6.6-3.5Z"
|
||||
></path>
|
||||
<path
|
||||
fill="#98bf00"
|
||||
fill-rule="evenodd"
|
||||
d="M350.74 80.08c-1.55 4.6-2.3 9.5-2.3 14.64 0 4.5.6 8.5 1.75 12s2.8 6.44 4.9 8.8a20.1 20.1 0 0 0 7.55 5.44 25.05 25.05 0 0 0 9.84 1.9c4.35 0 8.65-.8 12.95-2.4a30.3 30.3 0 0 0 11.4-7.44l-5.4-12.5c-2.5 2.8-5.25 4.9-8.3 6.35a21.07 21.07 0 0 1-9.1 2.15c-3.5 0-6.24-1.1-8.24-3.3a12.35 12.35 0 0 1-2.95-8.35v-.95c0-.4.05-.8.15-1.2a203.42 203.42 0 0 0 19.19-3.5c3.45-.84 6.8-1.8 10.1-2.8 3.24-1 6.14-2.05 8.6-3.1v-5.74c0-3.55-.56-6.75-1.66-9.6a23.32 23.32 0 0 0-4.6-7.2c-1.94-2-4.3-3.5-6.94-4.5a22.59 22.59 0 0 0-8.5-1.6c-4.45 0-8.6 1-12.34 2.96a28.48 28.48 0 0 0-9.7 8.1 38.55 38.55 0 0 0-6.4 11.84Zm21.64-10.1c1.55-.85 3.3-1.25 5.25-1.25 2.65 0 4.85.85 6.6 2.6 1.75 1.7 2.65 4.25 2.65 7.7-1.45.45-3.15 1-5.15 1.55-2.05.5-4.1 1-6.2 1.45-2.15.45-4.2.9-6.24 1.3l-5.3.9c.24-2.1.7-4.1 1.4-5.95.75-1.85 1.7-3.5 2.84-4.9 1.25-1.4 2.6-2.55 4.15-3.4Z"
|
||||
></path>
|
||||
<path
|
||||
fill-rule="evenodd"
|
||||
d="M404.17 140.45c0-1.25-.2-2.4-.6-3.4-.4-1-.95-1.84-1.6-2.6-.7-.7-1.5-1.24-2.45-1.6-.95-.34-2-.54-3.1-.54a9.95 9.95 0 0 0-7.34 3.2 11.49 11.49 0 0 0-3.1 7.9c0 1.24.2 2.34.6 3.4.35 1 .9 1.84 1.6 2.54.65.75 1.5 1.3 2.44 1.7.95.35 2 .55 3.15.55a9.87 9.87 0 0 0 7.3-3.2c.95-.95 1.7-2.15 2.25-3.5s.85-2.84.85-4.45Zm-13.9-.05c.3-.9.7-1.7 1.2-2.4.55-.7 1.2-1.25 1.96-1.7a4.66 4.66 0 0 1 2.5-.64c1.44 0 2.5.45 3.24 1.34.75.86 1.15 2.1 1.15 3.65 0 .95-.15 1.9-.45 2.85a6.75 6.75 0 0 1-3.15 4.1c-.75.4-1.6.6-2.5.6-1.45 0-2.5-.45-3.24-1.3a5.5 5.5 0 0 1-1.16-3.65c0-.94.16-1.9.46-2.85Z"
|
||||
></path>
|
||||
<path
|
||||
d="M434.56 132.56H431l-1.9 11.04c-.05.15-.1.4-.1.75v.85h-.15l-6.4-12.64h-3.35l-3.34 18.74h3.6l2-11.3c.04-.14.04-.4.04-.64v-.86h.15l6.55 12.95 3.2-.3 3.25-18.6ZM374.38 132.56h-3.65l-3.34 18.74h3.7l3.3-18.74Z"
|
||||
></path>
|
||||
<path
|
||||
fill-rule="evenodd"
|
||||
d="M328.95 132.56h-4.25c-.8 1.35-1.65 2.9-2.6 4.55-.95 1.64-1.85 3.34-2.75 5.04-.9 1.7-1.7 3.35-2.44 4.95-.75 1.6-1.36 3-1.8 4.2h3.84c.16-.35.3-.8.5-1.25.2-.45.4-.95.66-1.4l.6-1.35c.2-.45.4-.85.54-1.2h6.5c.05.45.05.9.1 1.4l.15 1.45.15 1.35c.05.45.05.8.05 1.15l3.7-.3c0-.7-.05-1.5-.15-2.45-.05-.95-.2-1.95-.35-3-.15-1.05-.3-2.2-.5-3.35-.15-1.15-.35-2.3-.6-3.44-.2-1.16-.4-2.25-.65-3.35-.25-1.05-.45-2.05-.7-3Zm-2.35 5.55.3 1.8c.1.6.2 1.2.25 1.74.1.55.15.95.2 1.3h-4.65c.25-.45.5-.95.75-1.5.3-.55.6-1.14.9-1.75.35-.6.65-1.14.95-1.7.3-.55.55-1.04.8-1.4h.2c.1.4.2.9.3 1.5Z"
|
||||
></path>
|
||||
<path
|
||||
d="m357.64 135.96.55-3.4h-12.8l-.55 3.4h4.55l-2.65 15.34h3.65l2.7-15.34h4.55Z"
|
||||
></path>
|
||||
<path
|
||||
fill-rule="evenodd"
|
||||
d="M297.46 132.3c-1.05 0-2.1.06-3.15.16-1.04.15-2.04.3-3 .55l-3.14 17.84c.95.25 2.04.4 3.24.55 1.16.15 2.25.2 3.3.2a11.19 11.19 0 0 0 7.85-2.95c1-.95 1.8-2.1 2.4-3.45.55-1.35.85-2.9.85-4.6 0-1.35-.2-2.5-.6-3.54a7.4 7.4 0 0 0-1.75-2.6 7.56 7.56 0 0 0-2.65-1.6 10.5 10.5 0 0 0-3.35-.55Zm-.8 3.4c.75 0 1.45.1 2.1.26.65.15 1.2.45 1.65.84.5.4.9.9 1.15 1.56.25.6.4 1.34.4 2.3 0 1.2-.15 2.24-.5 3.2a5.79 5.79 0 0 1-3.5 3.85 7.1 7.1 0 0 1-2.8.49c-.45 0-.9 0-1.45-.05-.55-.05-1.05-.1-1.4-.15l2.15-12.1 1.15-.15c.45-.04.8-.04 1.05-.04Z"
|
||||
></path>
|
||||
<path
|
||||
d="M185.8 62.59a20.53 20.53 0 0 1 2.6 5.5 21.16 21.16 0 0 1 .56 8.4c-.1 1.14-.25 2.04-.4 2.69l-7.95 42.33H195l8.44-45.68a23.33 23.33 0 0 1 6.6-3.5c2.4-.85 4.5-1.3 6.25-1.3 1.9 0 3.5.55 4.8 1.65 1.24 1.05 1.84 2.6 1.84 4.75 0 .6-.1 1.5-.3 2.75-.2 1.15-.35 2.2-.5 3.1l-3.6 16.89-.75 4.05c-.24 1.45-.34 2.7-.34 3.75 0 4.05 1.1 7.44 3.34 10.14 2.15 2.7 6 4.3 11.55 4.75l6.35-12.84c-2.15-.35-3.7-1.15-4.65-2.4-1-1.2-1.5-2.9-1.5-5.05 0-.5.05-1.1.15-1.75.05-.65.15-1.2.2-1.6l3.65-17.2c.3-1.44.55-2.9.75-4.34.2-1.4.3-2.8.3-4.15 0-4.95-1.45-8.94-4.35-11.9-2.95-2.94-7.05-4.44-12.3-4.44-3.04 0-5.94.5-8.8 1.5-2.8.95-6.2 2.54-10.14 4.9a17.35 17.35 0 0 0-2.8-6.75l-13.4 5.75ZM276.82 31.55h-14.14l-10.8 58.47c-.45 1.95-.8 4-1.05 6.15-.25 2.1-.4 4.05-.4 5.85 0 5.8 1.1 10.55 3.35 14.24 2.25 3.7 6.05 5.9 11.4 6.6l6.5-13.3a18.96 18.96 0 0 1-2.8-1.64 7.2 7.2 0 0 1-2.1-2.15 8.1 8.1 0 0 1-1.3-3.05c-.25-1.2-.4-2.7-.4-4.45 0-.85.05-1.8.15-2.8l.45-3.2 11.14-60.72ZM246.43 132.56h-3.65l-2.4 13.69a5.7 5.7 0 0 1-4.3 1.95c-.9 0-1.6-.2-2.1-.6-.54-.45-.8-1.15-.8-2.2 0-.2.06-.5.1-.9.06-.35.06-.7.1-1l2-10.94h-3.7l-1.94 10.9-.15 1.34c-.05.45-.05.8-.05 1.15 0 1 .15 1.85.45 2.6a4.55 4.55 0 0 0 3 2.75 7.94 7.94 0 0 0 7.15-1.4c0 .25 0 .55.05.85 0 .25 0 .5.04.75l3.65-.25c-.04-.25-.04-.5-.04-.8-.06-.25-.06-.55-.06-.9 0-.6.06-1.25.1-1.9.05-.7.1-1.35.25-1.95l2.3-13.14ZM276.62 132.56h-3.55l-1.9 11.04c-.05.15-.1.4-.1.75v.85h-.15l-6.4-12.64h-3.34l-3.35 18.74h3.6l2-11.3c.05-.14.05-.4.05-.64v-.86h.14l6.56 12.95 3.2-.3 3.24-18.6Z"
|
||||
></path>
|
||||
<path
|
||||
fill-rule="evenodd"
|
||||
d="M214.8 134.46c-.7-.7-1.5-1.25-2.45-1.6-.95-.35-2-.55-3.1-.55a9.97 9.97 0 0 0-7.35 3.2 11.5 11.5 0 0 0-3.1 7.9c0 1.24.2 2.34.6 3.4.35 1 .9 1.84 1.6 2.54.65.75 1.5 1.3 2.45 1.7.95.35 2 .55 3.15.55a9.87 9.87 0 0 0 7.3-3.2 10.5 10.5 0 0 0 2.25-3.5c.54-1.35.85-2.84.85-4.45 0-1.25-.2-2.4-.6-3.4a9.1 9.1 0 0 0-1.6-2.6ZM204.3 138c.55-.7 1.2-1.25 1.95-1.7a4.68 4.68 0 0 1 2.5-.64c1.45 0 2.5.45 3.25 1.34.75.86 1.15 2.1 1.15 3.65 0 .95-.15 1.9-.46 2.85a6.75 6.75 0 0 1-3.14 4.1c-.75.4-1.6.6-2.5.6-1.45 0-2.5-.45-3.25-1.3a5.5 5.5 0 0 1-1.15-3.65 8.99 8.99 0 0 1 1.65-5.25Z"
|
||||
></path>
|
||||
<path
|
||||
d="M188.26 132.56h-10.3l-3.35 18.74h3.7l1.25-7.15h6.75l.6-3.4h-6.75l.85-4.8h6.65l.6-3.4Z"
|
||||
></path>
|
||||
<path
|
||||
fill="#98bf00"
|
||||
d="M127.08 44.9c1.35-10.95-1.4-20.8-8.2-29.5C112.08 6.7 103.2 1.66 92.25.3c-10.95-1.34-20.8 1.41-29.5 8.2-8.04 6.25-12.94 14.3-14.69 24.15-.15.85-.3 1.65-.4 2.5-.1.85-.15 1.65-.2 2.44-.35 4.6.1 9 1.3 13.2a39.3 39.3 0 0 0 7.1 13.84 40.1 40.1 0 0 0 11.75 10.3c3.74 2.15 7.89 3.6 12.44 4.4.8.15 1.6.25 2.45.4l1.35.15A42.3 42.3 0 0 1 89 67.53c-1.55.05-3.15 0-4.75-.15-.1-.05-.15-.05-.2-.05-1.85-.25-3.65-.6-5.3-1.15a26.51 26.51 0 0 1-13.04-9.24 26.5 26.5 0 0 1-5.6-20.24v-.2c.95-7.45 4.4-13.5 10.34-18.15 6-4.65 12.75-6.55 20.3-5.6a26.2 26.2 0 0 1 18.29 10.35c4.65 6 6.55 12.74 5.65 20.3-.25 1.7-.55 3.3-1 4.84a41.3 41.3 0 0 1 13.2-2c.04-.45.14-.9.2-1.35Z"
|
||||
></path>
|
||||
<path
|
||||
fill="#98bf00"
|
||||
d="M132.33 51.49c-.85-.1-1.65-.2-2.5-.25-4.6-.3-9 .15-13.2 1.3a39.42 39.42 0 0 0-13.84 7.15 38.4 38.4 0 0 0-14.7 24.14c4.36.74 8.36 2 12.05 3.85a26.53 26.53 0 0 1 10.35-18.14 26.59 26.59 0 0 1 20.3-5.66h.14c7.44.96 13.5 4.45 18.14 10.4 4.7 5.95 6.6 12.7 5.65 20.24a26.77 26.77 0 0 1-10.34 18.34 26.42 26.42 0 0 1-20.15 5.6c.85 4.05 1.1 8.3.8 12.7 9.95.65 18.94-2.2 26.99-8.45 8.7-6.8 13.75-15.7 15.1-26.64 1.34-10.94-1.4-20.79-8.2-29.49-6.3-8.05-14.35-12.94-24.14-14.69-.85-.15-1.65-.3-2.45-.4Z"
|
||||
></path>
|
||||
<path
|
||||
d="M128.93 78.73c-3.45-.4-6.5.45-9.25 2.6a11.9 11.9 0 0 0-4.7 8.3c-.45 3.44.4 6.5 2.55 9.24a11.9 11.9 0 0 0 8.35 4.7c3.4.45 6.45-.4 9.2-2.55 2.75-2.15 4.3-4.9 4.74-8.35.4-3.4-.44-6.44-2.6-9.2a12.15 12.15 0 0 0-8.29-4.74Z"
|
||||
></path>
|
||||
<path
|
||||
fill="#98bf00"
|
||||
d="M12.83 73.63c.95-7.55 4.4-13.7 10.4-18.34a26.12 26.12 0 0 1 20.09-5.6 44.33 44.33 0 0 1-.8-12.7c-9.95-.65-18.95 2.16-27 8.45C6.79 52.24 1.79 61.14.44 72.08c-1.35 10.95 1.35 20.74 8.2 29.49 6.24 8.05 14.3 12.95 24.14 14.7.8.14 1.6.24 2.45.4.85.1 1.65.2 2.5.24 4.6.3 9-.15 13.19-1.3 4.85-1.4 9.5-3.8 13.85-7.14 4.3-3.4 7.7-7.3 10.24-11.7a39.2 39.2 0 0 0 4.45-12.44 44.68 44.68 0 0 1-12.04-3.85c-.25 1.75-.6 3.45-1.1 5.1a26.53 26.53 0 0 1-9.25 13.04 26.59 26.59 0 0 1-20.3 5.65c-.04 0-.1 0-.14-.05a26.46 26.46 0 0 1-18.15-10.35 26.3 26.3 0 0 1-5.64-20.24Z"
|
||||
></path>
|
||||
<path
|
||||
d="M32.47 67.13c-2.75 2.1-4.3 4.9-4.75 8.35a12 12 0 0 0 2.6 9.14 12 12 0 0 0 8.3 4.8 12.55 12.55 0 0 0 13.94-10.9c.45-3.44-.4-6.54-2.55-9.24a11.9 11.9 0 0 0-8.35-4.7c-3.45-.45-6.5.4-9.2 2.55ZM97.3 32.35a12 12 0 0 0-8.35-4.7c-3.45-.45-6.5.4-9.2 2.55A11.84 11.84 0 0 0 75 38.54c-.45 3.4.45 6.45 2.6 9.2a12.1 12.1 0 0 0 8.3 4.75c3.4.35 6.44-.5 9.2-2.6a12.26 12.26 0 0 0 4.74-8.3c.4-3.45-.45-6.54-2.55-9.24Z"
|
||||
></path>
|
||||
<path
|
||||
fill="#98bf00"
|
||||
d="m85.05 88.43-1.35-.16a42.3 42.3 0 0 1-5.15 12.35c1.55-.1 3.15-.05 4.8.15.05 0 .1 0 .15.05 1.85.2 3.6.55 5.3 1.1a26.63 26.63 0 0 1 13.04 9.3 26.23 26.23 0 0 1 5.6 20.24v.2a26.47 26.47 0 0 1-10.35 18.14 26.52 26.52 0 0 1-20.29 5.6 26.56 26.56 0 0 1-18.3-10.35c-4.7-6-6.59-12.74-5.64-20.29.2-1.7.55-3.3 1.05-4.85a43.3 43.3 0 0 1-13.25 2c-.04.45-.14.9-.2 1.35-1.34 10.95 1.36 20.74 8.2 29.49 6.8 8.7 15.7 13.74 26.64 15.1 10.95 1.34 20.74-1.4 29.49-8.2 8.05-6.3 12.94-14.35 14.7-24.2.14-.8.24-1.6.4-2.44.04-.85.14-1.65.2-2.45.3-4.65-.16-9.05-1.3-13.2a40.16 40.16 0 0 0-7.1-13.84 39.9 39.9 0 0 0-11.7-10.3 38.72 38.72 0 0 0-12.5-4.4c-.8-.14-1.6-.3-2.44-.4Z"
|
||||
></path>
|
||||
<path
|
||||
d="M90 120.41a12.14 12.14 0 0 0-8.35-4.75c-3.45-.4-6.5.45-9.2 2.6a12.14 12.14 0 0 0-4.75 8.3c-.45 3.45.46 6.5 2.6 9.25 2.1 2.75 4.85 4.3 8.3 4.7 3.45.44 6.5-.4 9.25-2.56 2.7-2.14 4.24-4.9 4.7-8.34.4-3.4-.46-6.45-2.55-9.2Z"
|
||||
></path>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 9.6 KiB |
24
docs/tailwind.config.js
Normal file
24
docs/tailwind.config.js
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
/* eslint-disable */
|
||||
|
||||
module.exports = {
|
||||
content: ["./src/**/*.md"],
|
||||
theme: {
|
||||
extend: {
|
||||
colors: {
|
||||
pine: {
|
||||
50: "#F2FAF9",
|
||||
100: "#E7F9E4",
|
||||
200: "#bfe4e1",
|
||||
300: "#99d4cf",
|
||||
400: "#4db4aa",
|
||||
500: "#009486",
|
||||
600: "#008579",
|
||||
700: "#006D60",
|
||||
800: "#00564A",
|
||||
900: "#003D0B",
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
plugins: [],
|
||||
};
|
||||
16
docs/tsconfig.json
Normal file
16
docs/tsconfig.json
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"compilerOptions": {
|
||||
"outDir": "dist",
|
||||
"target": "esnext",
|
||||
"moduleResolution": "node",
|
||||
"esModuleInterop": true,
|
||||
"resolveJsonModule": true,
|
||||
"allowJs": true,
|
||||
"strict": true,
|
||||
"baseUrl": ".",
|
||||
"paths": {
|
||||
"/@theme/*": [".vitepress/theme/*"]
|
||||
}
|
||||
},
|
||||
"include": ["src/**/*", ".vitepress/**/*"]
|
||||
}
|
||||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2021 Podlibre
|
||||
* @copyright 2021 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,13 +3,14 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
||||
namespace Modules\Admin\Controllers;
|
||||
|
||||
use AdAures\PodcastPersonsTaxonomy\ReversedTaxonomy;
|
||||
use App\Entities\Episode;
|
||||
use App\Entities\Location;
|
||||
use App\Entities\Person;
|
||||
|
|
@ -25,7 +26,6 @@ use CodeIgniter\HTTP\RedirectResponse;
|
|||
use Config\Services;
|
||||
use ErrorException;
|
||||
use League\HTMLToMarkdown\HtmlConverter;
|
||||
use Podlibre\PodcastNamespace\ReversedTaxonomy;
|
||||
|
||||
class PodcastImportController extends BaseController
|
||||
{
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2021 Podlibre
|
||||
* @copyright 2021 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ declare(strict_types=1);
|
|||
/**
|
||||
* ISO 3166 country codes
|
||||
*
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2021 Podlibre
|
||||
* @copyright 2021 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* @copyright 2020 Podlibre
|
||||
* @copyright 2020 Ad Aures
|
||||
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
||||
* @link https://castopod.org/
|
||||
*/
|
||||
|
|
|
|||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue