mirror of
https://github.com/scm-manager/scm-manager.git
synced 2025-11-10 15:35:49 +01:00
Feature/remark rehype (#1622)
Make remark compatible with rehype plugins so we can sanitize the content with rehype-sanitize-plugin. Co-authored-by: Konstantin Schaper <konstantin.schaper@cloudogu.com>
This commit is contained in:
@@ -68,12 +68,20 @@
|
|||||||
"react-diff-view": "^2.4.1",
|
"react-diff-view": "^2.4.1",
|
||||||
"react-dom": "^17.0.1",
|
"react-dom": "^17.0.1",
|
||||||
"react-i18next": "^10.13.1",
|
"react-i18next": "^10.13.1",
|
||||||
"react-markdown": "^5.0.3",
|
|
||||||
"react-router-dom": "^5.1.2",
|
"react-router-dom": "^5.1.2",
|
||||||
"react-select": "^2.1.2",
|
"react-select": "^2.1.2",
|
||||||
"react-syntax-highlighter": "^15.2.1",
|
"react-syntax-highlighter": "^15.2.1",
|
||||||
"refractor": "^3.0.0",
|
"refractor": "^3.0.0",
|
||||||
"remark-gfm": "^1.0.0"
|
"remark-gfm": "^1.0.0",
|
||||||
|
"rehype-react": "^6.2.0",
|
||||||
|
"remark-rehype": "^8.0.0",
|
||||||
|
"remark-parse": "^9.0.0",
|
||||||
|
"rehype-sanitize": "^4.0.0",
|
||||||
|
"rehype-raw": "^5.1.0",
|
||||||
|
"unified": "^9.2.1",
|
||||||
|
"hast-util-sanitize": "^3.0.2",
|
||||||
|
"rehype-slug": "^4.0.1",
|
||||||
|
"deepmerge": "^4.2.2"
|
||||||
},
|
},
|
||||||
"babel": {
|
"babel": {
|
||||||
"presets": [
|
"presets": [
|
||||||
|
|||||||
585
scm-ui/ui-components/src/__resources__/markdown-changelog.md.ts
Normal file
585
scm-ui/ui-components/src/__resources__/markdown-changelog.md.ts
Normal file
@@ -0,0 +1,585 @@
|
|||||||
|
export default `
|
||||||
|
# Changelog
|
||||||
|
All notable changes to this project will be documented in this file.
|
||||||
|
|
||||||
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
||||||
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||||||
|
|
||||||
|
# Compl_icated_H€aDer
|
||||||
|
|
||||||
|
## [2.16.0] - 2021-03-26
|
||||||
|
### Added
|
||||||
|
- Metrics for http requests ([#1586](https://github.com/scm-manager/scm-manager/issues/1586))
|
||||||
|
- Metrics for executor services ([#1586](https://github.com/scm-manager/scm-manager/issues/1586))
|
||||||
|
- Metrics about logging, file descriptors, process threads and process memory ([#1609](https://github.com/scm-manager/scm-manager/pull/1609))
|
||||||
|
- Metrics for events ([#1601](https://github.com/scm-manager/scm-manager/pull/1601))
|
||||||
|
- Authentication and access metrics ([#1595](https://github.com/scm-manager/scm-manager/pull/1595))
|
||||||
|
- Adds metrics over lifetime duration of working copies ([#1591](https://github.com/scm-manager/scm-manager/pull/1591))
|
||||||
|
- Collect guava caching statistics as metrics ([#1590](https://github.com/scm-manager/scm-manager/pull/1590))
|
||||||
|
- Add global flag to enable/disable api keys ([#1606](https://github.com/scm-manager/scm-manager/pull/1606))
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
- Adjust path and filename validation to prevent path traversal ([#1604](https://github.com/scm-manager/scm-manager/pull/1604))
|
||||||
|
- Wrong subject context for asynchronous subscriber ([#1601](https://github.com/scm-manager/scm-manager/pull/1601))
|
||||||
|
- Fix repository creation route from repository namespace overview page ([#1602](https://github.com/scm-manager/scm-manager/pull/1602))
|
||||||
|
- external nav links now correctly collapse when used in a menu ([#1596](https://github.com/scm-manager/scm-manager/pull/1596))
|
||||||
|
- Response with exception stack trace for invalid urls ([#1605](https://github.com/scm-manager/scm-manager/pull/1605))
|
||||||
|
- Do not show repositories on overview for not existing namespace ([#1608](https://github.com/scm-manager/scm-manager/pull/1608))
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
- Show "CUSTOM" name instead empty entry for permission roles ([#1597](https://github.com/scm-manager/scm-manager/pull/1597))
|
||||||
|
- Improve error messages for invalid media types ([#1607](https://github.com/scm-manager/scm-manager/pull/1607))
|
||||||
|
- Allow all UTF-8 characters except URL identifiers as user and group names and for namespaces. ([#1600](https://github.com/scm-manager/scm-manager/pull/1600))
|
||||||
|
|
||||||
|
## [2.15.1] - 2021-03-17
|
||||||
|
### Fixed
|
||||||
|
- Encode revision on extension points to fix breaking change ([#1585](https://github.com/scm-manager/scm-manager/pull/1585))
|
||||||
|
- Index link collection in repository initialize extensions ([#1594](https://github.com/scm-manager/scm-manager/issues/1588) and [#1587](https://github.com/scm-manager/scm-manager/issues/1594))
|
||||||
|
- Mercurial encoding configuration per repository ([#1577](https://github.com/scm-manager/scm-manager/issues/1577), [#1583](https://github.com/scm-manager/scm-manager/issues/1583))
|
||||||
|
- Authentication names in open api spec ([#1582](https://github.com/scm-manager/scm-manager/issues/1582))
|
||||||
|
- Sometimes no redirect after login ([#1592](https://github.com/scm-manager/scm-manager/pull/1592))
|
||||||
|
- Navigate after search ([#1589](https://github.com/scm-manager/scm-manager/pull/1589))
|
||||||
|
- Diff for mercurial and subversion ([#1588](https://github.com/scm-manager/scm-manager/issues/1588) and [#1587](https://github.com/scm-manager/scm-manager/issues/1587))
|
||||||
|
|
||||||
|
## [2.15.0] - 2021-03-12
|
||||||
|
### Added
|
||||||
|
- Create api for markdown ast plugins ([#1578](https://github.com/scm-manager/scm-manager/pull/1578))
|
||||||
|
- Partial diff ([#1581](https://github.com/scm-manager/scm-manager/issues/1581))
|
||||||
|
- Added filepath search ([#1568](https://github.com/scm-manager/scm-manager/issues/1568))
|
||||||
|
- API for metrics ([#1576](https://github.com/scm-manager/scm-manager/issues/1576))
|
||||||
|
- Add repository-specific non-fast-forward disallowed option ([#1579](https://github.com/scm-manager/scm-manager/issues/1579))
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
- Fix wrapping of title and actions in source view ([#1569](https://github.com/scm-manager/scm-manager/issues/1569))
|
||||||
|
- Split SetupContextListener logic into new Privileged Startup API ([#1573](https://github.com/scm-manager/scm-manager/pull/1573))
|
||||||
|
- Mark configuration files in debian package ([#1574](https://github.com/scm-manager/scm-manager/issues/1574))
|
||||||
|
|
||||||
|
## [2.14.1] - 2021-03-03
|
||||||
|
### Fixed
|
||||||
|
- Prevent breadcrumb overflow and shrink large elements ([#1563](https://github.com/scm-manager/scm-manager/pull/1563))
|
||||||
|
- Clarify that FileUpload component does not upload directly ([#1566](https://github.com/scm-manager/scm-manager/pull/1566))
|
||||||
|
- Prevent xss from stored markdown ([#1566](https://github.com/scm-manager/scm-manager/pull/1566))
|
||||||
|
- Fix endless loading spinner for sources of empty repositories ([#1565](https://github.com/scm-manager/scm-manager/issues/1565))
|
||||||
|
- Fix missing permalink button to markdown headings ([#1564](https://github.com/scm-manager/scm-manager/pull/1564))
|
||||||
|
- Fix redirect after logout if is set
|
||||||
|
|
||||||
|
## [2.14.0] - 2021-03-01
|
||||||
|
### Added
|
||||||
|
- Repository data can be migrated independently to enable the import of dumps from older versions ([#1526](https://github.com/scm-manager/scm-manager/pull/1526))
|
||||||
|
- XML attribute in root element of config entry stores ([#1545](https://github.com/scm-manager/scm-manager/pull/1545))
|
||||||
|
- Add option to encrypt repository exports with a password and decrypt them on repository import ([#1533](https://github.com/scm-manager/scm-manager/pull/1533))
|
||||||
|
- Make repository export asynchronous. ([#1533](https://github.com/scm-manager/scm-manager/pull/1533))
|
||||||
|
- Lock repository to "read-only" access during export ([#1519](https://github.com/scm-manager/scm-manager/pull/1519))
|
||||||
|
- Warn user to not leave page during repository import ([#1536](https://github.com/scm-manager/scm-manager/pull/1536))
|
||||||
|
- Import repository permissions from repository archive ([#1520](https://github.com/scm-manager/scm-manager/pull/1520))
|
||||||
|
- Added import protocols ([#1558](https://github.com/scm-manager/scm-manager/pull/1558))
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
- Loading of cache configuration from plugins ([#1540](https://github.com/scm-manager/scm-manager/pull/1540))
|
||||||
|
- Missing error message for wrong password ([#1527](https://github.com/scm-manager/scm-manager/pull/1527))
|
||||||
|
- Sporadic error in reading git pack files ([#1518](https://github.com/scm-manager/scm-manager/issues/1518))
|
||||||
|
- Fix permission check for branch deletion ([#1515](https://github.com/scm-manager/scm-manager/pull/1515))
|
||||||
|
- Fix broken mercurial http post args configuration ([#1532](https://github.com/scm-manager/scm-manager/issues/1532))
|
||||||
|
- Do not resolve external groups for system accounts ([#1541](https://github.com/scm-manager/scm-manager/pull/1541))
|
||||||
|
- Wrong redirect on paginated overviews ([#1535](https://github.com/scm-manager/scm-manager/pull/1535))
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
- Config entry stores are handled explicitly in exports ([#1545](https://github.com/scm-manager/scm-manager/pull/1545))
|
||||||
|
- Allow usage of cache as shiro authentication and authorization cache ([#1540](https://github.com/scm-manager/scm-manager/pull/1540))
|
||||||
|
- Implement new changelog process ([#1517](https://github.com/scm-manager/scm-manager/issues/1517))
|
||||||
|
- Fire post receive repository hook event after the repository import has been finished. ([#1544](https://github.com/scm-manager/scm-manager/pull/1544))
|
||||||
|
- improve frontend performance with stale while revalidate pattern ([#1555](https://github.com/scm-manager/scm-manager/pull/1555))
|
||||||
|
- Change the order of files inside the repository archive ([#1538](https://github.com/scm-manager/scm-manager/pull/1538))
|
||||||
|
|
||||||
|
## [2.13.0] - 2021-01-29
|
||||||
|
### Added
|
||||||
|
- Repository export for Subversion ([#1488](https://github.com/scm-manager/scm-manager/pull/1488))
|
||||||
|
- Provide more options for Helm chart ([#1485](https://github.com/scm-manager/scm-manager/pull/1485))
|
||||||
|
- Option to create a permanent link to a source file ([#1489](https://github.com/scm-manager/scm-manager/pull/1489))
|
||||||
|
- Markdown codeblock renderer extension point ([#1492](https://github.com/scm-manager/scm-manager/pull/1492))
|
||||||
|
- Java version added to plugin center url ([#1494](https://github.com/scm-manager/scm-manager/pull/1494))
|
||||||
|
- Font ttf-dejavu included oci image ([#1498](https://github.com/scm-manager/scm-manager/issues/1498))
|
||||||
|
- Repository import and export with metadata for Subversion ([#1501](https://github.com/scm-manager/scm-manager/pull/1501))
|
||||||
|
- API for store rename/delete in update steps ([#1505](https://github.com/scm-manager/scm-manager/pull/1505))
|
||||||
|
- Import and export for Git via dump file ([#1507](https://github.com/scm-manager/scm-manager/pull/1507))
|
||||||
|
- Import and export for Mercurial via dump file ([#1511](https://github.com/scm-manager/scm-manager/pull/1511))
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
- Directory name for git LFS files ([#1504](https://github.com/scm-manager/scm-manager/pull/1504))
|
||||||
|
- Temporary data for repositories is kept in the repository directory, not in a global directory ([#1510](https://github.com/scm-manager/scm-manager/pull/1510))
|
||||||
|
- Migrate integration tests to bdd ([#1497](https://github.com/scm-manager/scm-manager/pull/1497))
|
||||||
|
- Layout of proxy settings ([#1502](https://github.com/scm-manager/scm-manager/pull/1502))
|
||||||
|
- Apply test ids to production builds for usage in e2e tests ([#1499](https://github.com/scm-manager/scm-manager/pull/1499))
|
||||||
|
- Bump google guava version to 30.1-jre
|
||||||
|
- Refactor table component so that it can be styled by styled-components ([#1503](https://github.com/scm-manager/scm-manager/pull/1503))
|
||||||
|
- Enrich styleguide with new features, rules and changes ([#1506](https://github.com/scm-manager/scm-manager/pull/1506))
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
- Add explicit provider setup for bouncy castle ([#1500](https://github.com/scm-manager/scm-manager/pull/1500))
|
||||||
|
- Repository contact information is editable ([#1508](https://github.com/scm-manager/scm-manager/pull/1508))
|
||||||
|
- Usage of custom realm description for scm protocols ([#1512](https://github.com/scm-manager/scm-manager/pull/1512))
|
||||||
|
|
||||||
|
## [2.12.0] - 2020-12-17
|
||||||
|
### Added
|
||||||
|
- Add repository import via dump file for Subversion ([#1471](https://github.com/scm-manager/scm-manager/pull/1471))
|
||||||
|
- Add support for permalinks to lines in source code view ([#1472](https://github.com/scm-manager/scm-manager/pull/1472))
|
||||||
|
- Add "archive" flag for repositories to make them immutable ([#1477](https://github.com/scm-manager/scm-manager/pull/1477))
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
- Implement mercurial cgi protocol as extension ([#1458](https://github.com/scm-manager/scm-manager/pull/1458))
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
- Add "Api Key" page link to sub-navigation of "User" and "Me" sections ([#1464](https://github.com/scm-manager/scm-manager/pull/1464))
|
||||||
|
- Empty page on repository namespace filter ([#1476](https://github.com/scm-manager/scm-manager/pull/1476))
|
||||||
|
- Usage of namespace filter and search action together on repository overview ([#1476](https://github.com/scm-manager/scm-manager/pull/1476))
|
||||||
|
- Fix tooltip arrow height in firefox ([#1479](https://github.com/scm-manager/scm-manager/pull/1479))
|
||||||
|
- Accidentally blocked requests with non ascii characters ([#1480](https://github.com/scm-manager/scm-manager/issues/1480) and [#1469](https://github.com/scm-manager/scm-manager/issues/1469))
|
||||||
|
|
||||||
|
## [2.11.1] - 2020-12-07
|
||||||
|
### Fixed
|
||||||
|
- Initialization of new git repository with master set as default branch ([#1467](https://github.com/scm-manager/scm-manager/issues/1467) and [#1470](https://github.com/scm-manager/scm-manager/pull/1470))
|
||||||
|
|
||||||
|
## [2.11.0] - 2020-12-04
|
||||||
|
### Added
|
||||||
|
- Add tooltips to short links on repository overview ([#1441](https://github.com/scm-manager/scm-manager/pull/1441))
|
||||||
|
- Show the date of the last commit for branches in the frontend ([#1439](https://github.com/scm-manager/scm-manager/pull/1439))
|
||||||
|
- Unify and add description to key view across user settings ([#1440](https://github.com/scm-manager/scm-manager/pull/1440))
|
||||||
|
- Healthcheck for docker image ([#1428](https://github.com/scm-manager/scm-manager/issues/1428) and [#1454](https://github.com/scm-manager/scm-manager/issues/1454))
|
||||||
|
- Tags can now be added and deleted through the ui ([#1456](https://github.com/scm-manager/scm-manager/pull/1456))
|
||||||
|
- The ui now displays tag signatures ([#1456](https://github.com/scm-manager/scm-manager/pull/1456))
|
||||||
|
- Repository import via URL for git ([#1460](https://github.com/scm-manager/scm-manager/pull/1460))
|
||||||
|
- Repository import via URL for hg ([#1463](https://github.com/scm-manager/scm-manager/pull/1463))
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
- Send mercurial hook callbacks over separate tcp socket instead of http ([#1416](https://github.com/scm-manager/scm-manager/pull/1416))
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
- Language detection of files with interpreter parameters e.g.: \`#!/usr/bin/make -f\` ([#1450](https://github.com/scm-manager/scm-manager/issues/1450))
|
||||||
|
- Unexpected mercurial server pool stop ([#1446](https://github.com/scm-manager/scm-manager/issues/1446) and [#1457](https://github.com/scm-manager/scm-manager/issues/1457))
|
||||||
|
|
||||||
|
## [2.10.1] - 2020-11-24
|
||||||
|
### Fixed
|
||||||
|
- Improved logging of failures during plugin installation ([#1442](https://github.com/scm-manager/scm-manager/pull/1442))
|
||||||
|
- Do not throw exception when plugin file does not exist on cancelled installation ([#1442](https://github.com/scm-manager/scm-manager/pull/1442))
|
||||||
|
|
||||||
|
## [2.10.0] - 2020-11-20
|
||||||
|
### Added
|
||||||
|
- Delete branches directly in the UI ([#1422](https://github.com/scm-manager/scm-manager/pull/1422))
|
||||||
|
- Lookup command which provides further repository information ([#1415](https://github.com/scm-manager/scm-manager/pull/1415))
|
||||||
|
- Include messages from scm protocol in modification or merge errors ([#1420](https://github.com/scm-manager/scm-manager/pull/1420))
|
||||||
|
- Enhance trace api to accepted status codes ([#1430](https://github.com/scm-manager/scm-manager/pull/1430))
|
||||||
|
- Add examples to core resources to simplify usage of rest api ([#1434](https://github.com/scm-manager/scm-manager/pull/1434))
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
- Missing close of hg diff command ([#1417](https://github.com/scm-manager/scm-manager/pull/1417))
|
||||||
|
- Error on repository initialization with least-privilege user ([#1414](https://github.com/scm-manager/scm-manager/pull/1414))
|
||||||
|
- Adhere to git quiet flag ([#1421](https://github.com/scm-manager/scm-manager/pull/1421))
|
||||||
|
- Resolve svn binary diffs properly [#1427](https://github.com/scm-manager/scm-manager/pull/1427)
|
||||||
|
|
||||||
|
## [2.9.1] - 2020-11-11
|
||||||
|
### Fixed
|
||||||
|
- German translation for repositories view
|
||||||
|
|
||||||
|
## [2.9.0] - 2020-11-06
|
||||||
|
### Added
|
||||||
|
- Tracing api ([#1393](https://github.com/scm-manager/scm-manager/pull/#1393))
|
||||||
|
- Automatic user converter for external users ([#1380](https://github.com/scm-manager/scm-manager/pull/1380))
|
||||||
|
- Create _authenticated group on setup ([#1396](https://github.com/scm-manager/scm-manager/pull/1396))
|
||||||
|
- The name of the initial git branch can be configured and is set to \`main\` by default ([#1399](https://github.com/scm-manager/scm-manager/pull/1399))
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
- Internal server error for git sub modules without tree object ([#1397](https://github.com/scm-manager/scm-manager/pull/1397))
|
||||||
|
- Do not expose subversion commit with id 0 ([#1395](https://github.com/scm-manager/scm-manager/pull/1395))
|
||||||
|
- Cloning of Mercurial repositories with api keys ([#1407](https://github.com/scm-manager/scm-manager/pull/1407))
|
||||||
|
- Disable cloning repositories via ssh for anonymous users ([#1403](https://github.com/scm-manager/scm-manager/pull/1403))
|
||||||
|
- Support anonymous file download through rest api for non-browser clients (e.g. curl or postman) when anonymous mode is set to protocol-only ([#1402](https://github.com/scm-manager/scm-manager/pull/1402))
|
||||||
|
- SVN diff with property changes ([#1400](https://github.com/scm-manager/scm-manager/pull/1400))
|
||||||
|
- Branches link in repository overview ([#1404](https://github.com/scm-manager/scm-manager/pull/1404))
|
||||||
|
|
||||||
|
## [2.8.0] - 2020-10-27
|
||||||
|
### Added
|
||||||
|
- Generation of email addresses for users, where none is configured ([#1370](https://github.com/scm-manager/scm-manager/pull/1370))
|
||||||
|
- Source code fullscreen view ([#1376](https://github.com/scm-manager/scm-manager/pull/1376))
|
||||||
|
- Plugins can now expose ui components to be shared with other plugins ([#1382](https://github.com/scm-manager/scm-manager/pull/1382))
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
- Reduce logging of ApiTokenRealm ([#1385](https://github.com/scm-manager/scm-manager/pull/1385))
|
||||||
|
- Centralise syntax highlighting ([#1382](https://github.com/scm-manager/scm-manager/pull/1382))
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
- Handling of snapshot plugin dependencies ([#1384](https://github.com/scm-manager/scm-manager/pull/1384))
|
||||||
|
- SyntaxHighlighting for GoLang ([#1386](https://github.com/scm-manager/scm-manager/pull/1386))
|
||||||
|
- Privilege escalation for api keys ([#1388](https://github.com/scm-manager/scm-manager/pull/1388))
|
||||||
|
|
||||||
|
## [2.6.3] - 2020-10-16
|
||||||
|
### Fixed
|
||||||
|
- Missing default permission to manage public gpg keys ([#1377](https://github.com/scm-manager/scm-manager/pull/1377))
|
||||||
|
|
||||||
|
## [2.7.1] - 2020-10-14
|
||||||
|
### Fixed
|
||||||
|
- Null Pointer Exception on anonymous migration with deleted repositories ([#1371](https://github.com/scm-manager/scm-manager/pull/1371))
|
||||||
|
- Null Pointer Exception on parsing SVN properties ([#1373](https://github.com/scm-manager/scm-manager/pull/1373))
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
- Reduced logging for invalid JWT or api keys ([#1374](https://github.com/scm-manager/scm-manager/pull/1374))
|
||||||
|
|
||||||
|
## [2.7.0] - 2020-10-12
|
||||||
|
### Added
|
||||||
|
- Users can create API keys with limited permissions ([#1359](https://github.com/scm-manager/scm-manager/pull/1359))
|
||||||
|
|
||||||
|
## [2.6.2] - 2020-10-09
|
||||||
|
### Added
|
||||||
|
- Introduce api for handling token validation failed exception ([#1362](https://github.com/scm-manager/scm-manager/pull/1362))
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
- Align actionbar item horizontal and enforce correct margin between them ([#1358](https://github.com/scm-manager/scm-manager/pull/1358))
|
||||||
|
- Fix recursive browse command for git ([#1361](https://github.com/scm-manager/scm-manager/pull/1361))
|
||||||
|
- SubRepository support ([#1357](https://github.com/scm-manager/scm-manager/pull/1357))
|
||||||
|
|
||||||
|
## [2.6.1] - 2020-09-30
|
||||||
|
### Fixed
|
||||||
|
- Not found error when using browse command in empty hg repository ([#1355](https://github.com/scm-manager/scm-manager/pull/1355))
|
||||||
|
|
||||||
|
## [2.6.0] - 2020-09-25
|
||||||
|
### Added
|
||||||
|
- Add support for pr merge with prior rebase ([#1332](https://github.com/scm-manager/scm-manager/pull/1332))
|
||||||
|
- Tags overview for repository ([#1331](https://github.com/scm-manager/scm-manager/pull/1331))
|
||||||
|
- Permissions can be specified for namespaces ([#1335](https://github.com/scm-manager/scm-manager/pull/1335))
|
||||||
|
- Show update info on admin information page ([#1342](https://github.com/scm-manager/scm-manager/pull/1342))
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
- Rework modal to use react portal ([#1349](https://github.com/scm-manager/scm-manager/pull/1349))
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
- Missing synchronization during repository creation ([#1328](https://github.com/scm-manager/scm-manager/pull/1328))
|
||||||
|
- Missing BranchCreatedEvent for mercurial ([#1334](https://github.com/scm-manager/scm-manager/pull/1334))
|
||||||
|
- Branch not found right after creation ([#1334](https://github.com/scm-manager/scm-manager/pull/1334))
|
||||||
|
- Overflow for too long branch names ([#1339](https://github.com/scm-manager/scm-manager/pull/1339))
|
||||||
|
- Set default branch in branch selector if nothing is selected ([#1338](https://github.com/scm-manager/scm-manager/pull/1338))
|
||||||
|
- Handling of branch with slashes in source view ([#1340](https://github.com/scm-manager/scm-manager/pull/1340))
|
||||||
|
- Detect not existing paths correctly in Mercurial ([#1343](https://github.com/scm-manager/scm-manager/pull/1343))
|
||||||
|
- Return correct revisions for tags in hooks for git repositories ([#1344](https://github.com/scm-manager/scm-manager/pull/1344))
|
||||||
|
- Add option for concrete commit message in merges without templating ([#1351](https://github.com/scm-manager/scm-manager/pull/1351))
|
||||||
|
|
||||||
|
## [2.5.0] - 2020-09-10
|
||||||
|
### Added
|
||||||
|
- Tags now have date information attached ([#1305](https://github.com/scm-manager/scm-manager/pull/1305))
|
||||||
|
- Add support for scroll anchors in url hash of diff page ([#1304](https://github.com/scm-manager/scm-manager/pull/1304))
|
||||||
|
- Documentation regarding data and plugin migration from v1 to v2 ([#1321](https://github.com/scm-manager/scm-manager/pull/1321))
|
||||||
|
- Add RepositoryCreationDto with creation context and extension-point for repository initialization ([#1324](https://github.com/scm-manager/scm-manager/pull/1324))
|
||||||
|
- UI filter and rest endpoints for namespaces ([#1323](https://github.com/scm-manager/scm-manager/pull/1323))
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
- Redirection to requested page after login in anonymous mode
|
||||||
|
- Update filter state on property change ([#1327](https://github.com/scm-manager/scm-manager/pull/1327))
|
||||||
|
- Diff view for svn now handles whitespaces in filenames properly ([1325](https://github.com/scm-manager/scm-manager/pull/1325))
|
||||||
|
- Validate new namespace on repository rename ([#1322](https://github.com/scm-manager/scm-manager/pull/1322))
|
||||||
|
|
||||||
|
## [2.4.1] - 2020-09-01
|
||||||
|
### Added
|
||||||
|
- Add "sonia.scm.restart-migration.wait" to set wait in milliseconds before restarting scm-server after migration ([#1308](https://github.com/scm-manager/scm-manager/pull/1308))
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
- Fix detection of markdown files for files having content does not start with '#' ([#1306](https://github.com/scm-manager/scm-manager/pull/1306))
|
||||||
|
- Fix broken markdown rendering ([#1303](https://github.com/scm-manager/scm-manager/pull/1303))
|
||||||
|
- JWT token timeout is now handled properly ([#1297](https://github.com/scm-manager/scm-manager/pull/1297))
|
||||||
|
- Fix text-overflow in danger zone ([#1298](https://github.com/scm-manager/scm-manager/pull/1298))
|
||||||
|
- Fix plugin installation error if previously a plugin was installed with the same dependency which is still pending. ([#1300](https://github.com/scm-manager/scm-manager/pull/1300))
|
||||||
|
- Fix layout overflow on changesets with multiple tags ([#1314](https://github.com/scm-manager/scm-manager/pull/1314))
|
||||||
|
- Make checkbox accessible from keyboard ([#1309](https://github.com/scm-manager/scm-manager/pull/1309))
|
||||||
|
- Fix logging of large stacktrace for unknown language ([#1313](https://github.com/scm-manager/scm-manager/pull/1313))
|
||||||
|
- Fix incorrect word breaking behaviour in markdown ([#1317](https://github.com/scm-manager/scm-manager/pull/1317))
|
||||||
|
- Remove obsolete revision encoding on sources ([#1315](https://github.com/scm-manager/scm-manager/pull/1315))
|
||||||
|
- Map generic JaxRS 'web application exceptions' to appropriate response instead of "internal server error" ([#1318](https://github.com/scm-manager/scm-manager/pull/1312))
|
||||||
|
|
||||||
|
## [2.4.0] - 2020-08-14
|
||||||
|
### Added
|
||||||
|
- Introduced merge detection for receive hooks ([#1278](https://github.com/scm-manager/scm-manager/pull/1278))
|
||||||
|
- Anonymous mode for the web ui ([#1284](https://github.com/scm-manager/scm-manager/pull/1284))
|
||||||
|
- Add link to source file in diff sections ([#1267](https://github.com/scm-manager/scm-manager/pull/1267))
|
||||||
|
- Check versions of plugin dependencies on plugin installation ([#1283](https://github.com/scm-manager/scm-manager/pull/1283))
|
||||||
|
- Sign PR merges and commits performed through ui with generated private key ([#1285](https://github.com/scm-manager/scm-manager/pull/1285))
|
||||||
|
- Add generic popover component to ui-components ([#1285](https://github.com/scm-manager/scm-manager/pull/1285))
|
||||||
|
- Show changeset signatures in ui and add public keys ([#1273](https://github.com/scm-manager/scm-manager/pull/1273))
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
- Repository names may not end with ".git" ([#1277](https://github.com/scm-manager/scm-manager/pull/1277))
|
||||||
|
- Add preselected value to options in dropdown component if missing ([#1287](https://github.com/scm-manager/scm-manager/pull/1287))
|
||||||
|
- Show error message if plugin loading failed ([#1289](https://github.com/scm-manager/scm-manager/pull/1289))
|
||||||
|
- Fix timing problem with anchor links for markdown view ([#1290](https://github.com/scm-manager/scm-manager/pull/1290))
|
||||||
|
|
||||||
|
## [2.3.1] - 2020-08-04
|
||||||
|
### Added
|
||||||
|
- New api to resolve SCM-Manager root url ([#1276](https://github.com/scm-manager/scm-manager/pull/1276))
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
- Help tooltips are now multiline by default ([#1271](https://github.com/scm-manager/scm-manager/pull/1271))
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
- Fixed unnecessary horizontal scrollbar in modal dialogs ([#1271](https://github.com/scm-manager/scm-manager/pull/1271))
|
||||||
|
- Avoid stacktrace logging when protocol url is accessed outside of request scope ([#1276](https://github.com/scm-manager/scm-manager/pull/1276))
|
||||||
|
|
||||||
|
## [2.3.0] - 2020-07-23
|
||||||
|
### Added
|
||||||
|
- Add branch link provider to access branch links in plugins ([#1243](https://github.com/scm-manager/scm-manager/pull/1243))
|
||||||
|
- Add key value input field component ([#1246](https://github.com/scm-manager/scm-manager/pull/1246))
|
||||||
|
- Update installed optional plugin dependencies upon plugin upgrade ([#1260](https://github.com/scm-manager/scm-manager/pull/1260))
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
- Adding start delay to liveness and readiness probes in helm chart template
|
||||||
|
- Init svn repositories with trunk folder ([#1259](https://github.com/scm-manager/scm-manager/pull/1259))
|
||||||
|
- Show line numbers in source code view by default ([#1265](https://github.com/scm-manager/scm-manager/pull/1265))
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
- Fixed file extension detection with new spotter version
|
||||||
|
- Fixed wrong cache directory location ([#1236](https://github.com/scm-manager/scm-manager/issues/1236) and [#1242](https://github.com/scm-manager/scm-manager/issues/1242))
|
||||||
|
- Fixed error in update step ([#1237](https://github.com/scm-manager/scm-manager/issues/1237) and [#1244](https://github.com/scm-manager/scm-manager/issues/1244))
|
||||||
|
- Fix incorrect trimming of whitespaces in helm chart templates
|
||||||
|
- Fixed error on empty diff expand response ([#1247](https://github.com/scm-manager/scm-manager/pull/1247))
|
||||||
|
- Ignore ports on proxy exclusions ([#1256](https://github.com/scm-manager/scm-manager/pull/1256))
|
||||||
|
- Invalidate branches cache synchronously on create new branch ([#1261](https://github.com/scm-manager/scm-manager/pull/1261))
|
||||||
|
|
||||||
|
## [2.2.0] - 2020-07-03
|
||||||
|
### Added
|
||||||
|
- Rename repository name (and namespace if permitted) ([#1218](https://github.com/scm-manager/scm-manager/pull/1218))
|
||||||
|
- Enrich commit mentions in markdown viewer by internal links ([#1210](https://github.com/scm-manager/scm-manager/pull/1210))
|
||||||
|
- New extension point \`changeset.description.tokens\` to "enrich" commit messages ([#1231](https://github.com/scm-manager/scm-manager/pull/1231))
|
||||||
|
- Restart service after rpm or deb package upgrade
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
- Checkboxes can now be 'indeterminate' ([#1215](https://github.com/scm-manager/scm-manager/pull/1215))
|
||||||
|
- The old frontend extension point \`changeset.description\` is deprecated and should be replaced with \`changeset.description.tokens\` ([#1231](https://github.com/scm-manager/scm-manager/pull/1231))
|
||||||
|
- Required plugins will be updated, too, when a plugin is updated ([#1233](https://github.com/scm-manager/scm-manager/pull/1233))
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
- Fixed installation of debian packages on distros without preinstalled \`at\` ([#1216](https://github.com/scm-manager/scm-manager/issues/1216) and [#1217](https://github.com/scm-manager/scm-manager/pull/1217))
|
||||||
|
- Fixed restart with deb or rpm installation ([#1222](https://github.com/scm-manager/scm-manager/issues/1222) and [#1227](https://github.com/scm-manager/scm-manager/pull/1227))
|
||||||
|
- Fixed broken migration with empty security.xml ([#1219](https://github.com/scm-manager/scm-manager/issues/1219) and [#1221](https://github.com/scm-manager/scm-manager/pull/1221))
|
||||||
|
- Added missing architecture to debian installation documentation ([#1230](https://github.com/scm-manager/scm-manager/pull/1230))
|
||||||
|
- Mercurial on Python 3 ([#1232](https://github.com/scm-manager/scm-manager/pull/1232))
|
||||||
|
- Fixed wrong package information for deb and rpm packages ([#1229](https://github.com/scm-manager/scm-manager/pull/1229))
|
||||||
|
- Fixed missing content type on migration wizard ([#1234](https://github.com/scm-manager/scm-manager/pull/1234))
|
||||||
|
|
||||||
|
## [2.1.1] - 2020-06-23
|
||||||
|
### Fixed
|
||||||
|
- Wait until recommended java installation is available for deb packages ([#1209](https://github.com/scm-manager/scm-manager/pull/1209))
|
||||||
|
- Do not force java home of recommended java dependency for rpm and deb packages ([#1195](https://github.com/scm-manager/scm-manager/issues/1195) and [#1208](https://github.com/scm-manager/scm-manager/pull/1208))
|
||||||
|
- Migration of non-bare repositories ([#1213](https://github.com/scm-manager/scm-manager/pull/1213))
|
||||||
|
|
||||||
|
## [2.1.0] - 2020-06-18
|
||||||
|
### Added
|
||||||
|
- Option to configure jvm parameter of docker container with env JAVA_OPTS or with arguments ([#1175](https://github.com/scm-manager/scm-manager/pull/1175))
|
||||||
|
- Added links in diff views to expand the gaps between "hunks" ([#1178](https://github.com/scm-manager/scm-manager/pull/1178))
|
||||||
|
- Show commit contributors in table on changeset details view ([#1169](https://github.com/scm-manager/scm-manager/pull/1169))
|
||||||
|
- Show changeset parents on changeset details view ([#1189](https://github.com/scm-manager/scm-manager/pull/1189))
|
||||||
|
- Annotate view to display commit metadata for each line of a file ([#1196](https://github.com/scm-manager/scm-manager/pull/1196))
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
- Avoid caching of detected browser language ([#1176](https://github.com/scm-manager/scm-manager/pull/1176))
|
||||||
|
- Fixes configuration of jetty listener address with system property \`jetty.host\` ([#1173](https://github.com/scm-manager/scm-manager/pull/1173), [#1174](https://github.com/scm-manager/scm-manager/pull/1174))
|
||||||
|
- Fixes loading plugin bundles with context path \`/\` ([#1182](https://github.com/scm-manager/scm-manager/pull/1182/files), [#1181](https://github.com/scm-manager/scm-manager/issues/1181))
|
||||||
|
- Sets the new plugin center URL once ([#1184](https://github.com/scm-manager/scm-manager/pull/1184))
|
||||||
|
- Diffs with CR characters are parsed correctly ([#1185](https://github.com/scm-manager/scm-manager/pull/1185))
|
||||||
|
- Close file lists in migration ([#1191](https://github.com/scm-manager/scm-manager/pull/1191))
|
||||||
|
- Use command in javahg.py from registrar (Upgrade to newer javahg version) ([#1192](https://github.com/scm-manager/scm-manager/pull/1192))
|
||||||
|
- Fixed wrong e-tag format ([sdorra/web-resource #1](https://github.com/sdorra/web-resources/pull/1))
|
||||||
|
- Fixed refetching loop for non existing changesets ([#1203](https://github.com/scm-manager/scm-manager/pull/1203))
|
||||||
|
- Fixed active state of sub navigation items, which are using activeWhenMatch ([#1199](https://github.com/scm-manager/scm-manager/pull/1199))
|
||||||
|
- Handles repositories in custom directories correctly in migration from 1.x ([#1201](https://github.com/scm-manager/scm-manager/pull/1201))
|
||||||
|
- Usage of short git commit ids in changeset urls ([#1200](https://github.com/scm-manager/scm-manager/pull/1200))
|
||||||
|
- Fixes linebreaks in multiline tooltip ([#1207](https://github.com/scm-manager/scm-manager/pull/1207))
|
||||||
|
|
||||||
|
## [2.0.0] - 2020-06-04
|
||||||
|
### Added
|
||||||
|
- Detect renamed files in git and hg diffs ([#1157](https://github.com/scm-manager/scm-manager/pull/1157))
|
||||||
|
- ClassLoader and Adapter parameters to typed store apis ([#1111](https://github.com/scm-manager/scm-manager/pull/1111))
|
||||||
|
- Native packaging for Debian, Red Hat, Windows, Unix, Docker and Kubernetes ([#1165](https://github.com/scm-manager/scm-manager/pull/1165))
|
||||||
|
- Cache for working directories ([#1166](https://github.com/scm-manager/scm-manager/pull/1166))
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
- Correctly resolve Links in markdown files ([#1152](https://github.com/scm-manager/scm-manager/pull/1152))
|
||||||
|
- Missing copy on write in the data store ([#1155](https://github.com/scm-manager/scm-manager/pull/1155))
|
||||||
|
- Resolved conflicting dependencies for scm-webapp ([#1159](https://github.com/scm-manager/scm-manager/pull/1159))
|
||||||
|
|
||||||
|
## [2.0.0-rc8] - 2020-05-08
|
||||||
|
### Added
|
||||||
|
- Add iconStyle + onClick option and story shot for icon component ([#1100](https://github.com/scm-manager/scm-manager/pull/1100))
|
||||||
|
- Making WebElements (Servlet or Filter) optional by using the \`@Requires\` annotation ([#1101](https://github.com/scm-manager/scm-manager/pull/1101))
|
||||||
|
- Add class to manually validate rest data transfer objects with javax validation annotations ([#1114](https://github.com/scm-manager/scm-manager/pull/1114))
|
||||||
|
- Missing stories for ui-components ([#1140](https://github.com/scm-manager/scm-manager/pull/1140))
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
- Removed the \`requires\` attribute on the \`@Extension\` annotation and instead create a new \`@Requires\` annotation ([#1097](https://github.com/scm-manager/scm-manager/pull/1097))
|
||||||
|
- Update guide to prevent common pitfalls in ui development ([#1107](https://github.com/scm-manager/scm-manager/pull/1107))
|
||||||
|
- Use os specific locations for scm home directory ([#1109](https://github.com/scm-manager/scm-manager/pull/1109))
|
||||||
|
- Use Library/Logs/SCM-Manager on OSX for logging ([#1109](https://github.com/scm-manager/scm-manager/pull/1109))
|
||||||
|
- Cleanup outdated jaxb annotation in scm-core ([#1136](https://github.com/scm-manager/scm-manager/pull/1136))
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
- Protocol URI for git commands under windows ([#1108](https://github.com/scm-manager/scm-manager/pull/1108))
|
||||||
|
- Fix usage of invalid cipher algorithm on newer java versions ([#1110](https://github.com/scm-manager/scm-manager/issues/1110),[#1112](https://github.com/scm-manager/scm-manager/pull/1112))
|
||||||
|
- Handle obscure line breaks in diff viewer ([#1129](https://github.com/scm-manager/scm-manager/pull/1129))
|
||||||
|
- Validate subversion client checksum ([#1113](https://github.com/scm-manager/scm-manager/issues/1113))
|
||||||
|
- Fix plugin manage permission ([#1135](https://github.com/scm-manager/scm-manager/pull/1135))
|
||||||
|
|
||||||
|
## [2.0.0-rc7] - 2020-04-09
|
||||||
|
### Added
|
||||||
|
- Fire various plugin events ([#1088](https://github.com/scm-manager/scm-manager/pull/1088))
|
||||||
|
- Display version for plugins ([#1089](https://github.com/scm-manager/scm-manager/pull/1089))
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
- Simplified collapse state management of the secondary navigation ([#1086](https://github.com/scm-manager/scm-manager/pull/1086))
|
||||||
|
- Ensure same monospace font-family throughout whole SCM-Manager ([#1091](https://github.com/scm-manager/scm-manager/pull/1091))
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
- Authentication for write requests for repositories with anonymous read access ([#108](https://github.com/scm-manager/scm-manager/pull/1081))
|
||||||
|
- Submodules in git do no longer lead to a server error in the browser command ([#1093](https://github.com/scm-manager/scm-manager/pull/1093))
|
||||||
|
|
||||||
|
## [2.0.0-rc6] - 2020-03-26
|
||||||
|
### Added
|
||||||
|
- Extension point to add links to the repository cards from plug ins ([#1041](https://github.com/scm-manager/scm-manager/pull/1041))
|
||||||
|
- Libc based restart strategy for posix operating systems ([#1079](https://github.com/scm-manager/scm-manager/pull/1079))
|
||||||
|
- Simple restart strategy with System.exit ([#1079](https://github.com/scm-manager/scm-manager/pull/1079))
|
||||||
|
- Notification if restart is not supported on the underlying platform ([#1079](https://github.com/scm-manager/scm-manager/pull/1079))
|
||||||
|
- Extension point before title in repository cards ([#1080](https://github.com/scm-manager/scm-manager/pull/1080))
|
||||||
|
- Extension point after title on repository detail page ([#1080](https://github.com/scm-manager/scm-manager/pull/1080))
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
- Update resteasy to version 4.5.2.Final
|
||||||
|
- Update shiro to version 1.5.2
|
||||||
|
- Use browser built-in EventSource for apiClient subscriptions
|
||||||
|
- Changeover to MIT license ([#1066](https://github.com/scm-manager/scm-manager/pull/1066))
|
||||||
|
|
||||||
|
### Removed
|
||||||
|
- EventSource Polyfill
|
||||||
|
- ClassLoader based restart logic ([#1079](https://github.com/scm-manager/scm-manager/pull/1079))
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
- Build on windows ([#1048](https://github.com/scm-manager/scm-manager/issues/1048), [#1049](https://github.com/scm-manager/scm-manager/issues/1049), [#1056](https://github.com/scm-manager/scm-manager/pull/1056))
|
||||||
|
- Show specific notification for plugin actions on plugin administration ([#1057](https://github.com/scm-manager/scm-manager/pull/1057))
|
||||||
|
- Invalid markdown could make parts of the page inaccessible ([#1077](https://github.com/scm-manager/scm-manager/pull/1077))
|
||||||
|
|
||||||
|
## [2.0.0-rc5] - 2020-03-12
|
||||||
|
### Added
|
||||||
|
- Added footer extension points for links and avatar
|
||||||
|
- Create OpenAPI specification during build
|
||||||
|
- Extension point entries with supplied extensionName are sorted ascending
|
||||||
|
- Possibility to configure git core config entries for jgit like core.trustfolderstat and core.supportsatomicfilecreation
|
||||||
|
- Babel-plugin-styled-components for persistent generated classnames
|
||||||
|
- By default, only 100 files will be listed in source view in one request
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
- New footer design
|
||||||
|
- Update jgit to version 5.6.1.202002131546-r-scm1
|
||||||
|
- Update svnkit to version 1.10.1-scm1
|
||||||
|
- Secondary navigation collapsable
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
- Modification for mercurial repositories with enabled XSRF protection
|
||||||
|
- Does not throw NullPointerException when merge fails without normal merge conflicts
|
||||||
|
- Keep file attributes on modification
|
||||||
|
- Drop Down Component works again with translations
|
||||||
|
|
||||||
|
### Removed
|
||||||
|
- Enunciate rest documentation
|
||||||
|
- Obsolete fields in data transfer objects
|
||||||
|
|
||||||
|
## [2.0.0-rc4] - 2020-02-14
|
||||||
|
### Added
|
||||||
|
- Support for Java versions > 8
|
||||||
|
- Simple ClassLoaderLifeCycle to fix integration tests on Java > 8
|
||||||
|
- Option to use a function for default collapse state in diffs
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
- Use icon only buttons for diff file controls
|
||||||
|
- Upgrade [Legman](https://github.com/sdorra/legman) to v1.6.2 in order to fix execution on Java versions > 8
|
||||||
|
- Upgrade [Lombok](https://projectlombok.org/) to version 1.18.10 in order to fix build on Java versions > 8
|
||||||
|
- Upgrade [Mockito](https://site.mockito.org/) to version 2.28.2 in order to fix tests on Java versions > 8
|
||||||
|
- Upgrade smp-maven-plugin to version 1.0.0-rc3
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
- Committer of new Git commits set to "SCM-Manager <noreply@scm-manager.org>"
|
||||||
|
|
||||||
|
## [2.0.0-rc3] - 2020-01-31
|
||||||
|
### Fixed
|
||||||
|
- Broken plugin order fixed
|
||||||
|
- MarkdownViewer in code section renders markdown properly
|
||||||
|
|
||||||
|
## [2.0.0-rc2] - 2020-01-29
|
||||||
|
### Added
|
||||||
|
- Set individual page title
|
||||||
|
- Copy on write
|
||||||
|
- A new repository can be initialized with a branch (for git and mercurial) and custom files (README.md on default)
|
||||||
|
- Plugins are validated directly after download
|
||||||
|
- Code highlighting in diffs
|
||||||
|
- Switch between rendered version and source view for Markdown files
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
- Stop fetching commits when it takes too long
|
||||||
|
- Unification of source and commits become "code"
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
- Classloader leak which caused problems when restarting
|
||||||
|
- Failing git push does not lead to an GitAPIException
|
||||||
|
- Subversion revision 0 leads to error
|
||||||
|
- Create mock subject to satisfy legman
|
||||||
|
- Multiple versions of hibernate-validator caused problems when starting from plugins
|
||||||
|
- Page title is now set correctly
|
||||||
|
- Restart after migration
|
||||||
|
|
||||||
|
## [2.0.0-rc1] - 2019-12-02
|
||||||
|
### Added
|
||||||
|
- Namespace concept and endpoints
|
||||||
|
- File history
|
||||||
|
- Global permission concept
|
||||||
|
- Completely translated into German with all the text and controls of the UI
|
||||||
|
- Frontend provides further details on corresponding errors
|
||||||
|
- Repository branch overview, detailed view and create branch functionality
|
||||||
|
- Search and filter for repos, users and groups
|
||||||
|
- Repository Permissions roles
|
||||||
|
- Migration step framework and wizard
|
||||||
|
- Plugin center integration
|
||||||
|
- Plugins can be installed (even without restart), updated and uninstalled using the new plugins overview
|
||||||
|
- Git-LFS support (with SSH authentication)
|
||||||
|
- Anonymous access via git-clone and API access with anonymous user
|
||||||
|
- Cache and x-requested-with header to bundle requests
|
||||||
|
- remove public flag from repository and migrate permissions to anonymous user
|
||||||
|
|
||||||
|
[2.0.0-rc1]: https://www.scm-manager.org/download/2.0.0-rc1
|
||||||
|
[2.0.0-rc2]: https://www.scm-manager.org/download/2.0.0-rc2
|
||||||
|
[2.0.0-rc3]: https://www.scm-manager.org/download/2.0.0-rc3
|
||||||
|
[2.0.0-rc4]: https://www.scm-manager.org/download/2.0.0-rc4
|
||||||
|
[2.0.0-rc5]: https://www.scm-manager.org/download/2.0.0-rc5
|
||||||
|
[2.0.0-rc6]: https://www.scm-manager.org/download/2.0.0-rc6
|
||||||
|
[2.0.0-rc7]: https://www.scm-manager.org/download/2.0.0-rc7
|
||||||
|
[2.0.0-rc8]: https://www.scm-manager.org/download/2.0.0-rc8
|
||||||
|
[2.0.0]: https://www.scm-manager.org/download/2.0.0
|
||||||
|
[2.1.0]: https://www.scm-manager.org/download/2.1.0
|
||||||
|
[2.1.1]: https://www.scm-manager.org/download/2.1.1
|
||||||
|
[2.2.0]: https://www.scm-manager.org/download/2.2.0
|
||||||
|
[2.3.0]: https://www.scm-manager.org/download/2.3.0
|
||||||
|
[2.3.1]: https://www.scm-manager.org/download/2.3.1
|
||||||
|
[2.4.0]: https://www.scm-manager.org/download/2.4.0
|
||||||
|
[2.4.1]: https://www.scm-manager.org/download/2.4.1
|
||||||
|
[2.5.0]: https://www.scm-manager.org/download/2.5.0
|
||||||
|
[2.6.0]: https://www.scm-manager.org/download/2.6.0
|
||||||
|
[2.6.1]: https://www.scm-manager.org/download/2.6.1
|
||||||
|
[2.6.2]: https://www.scm-manager.org/download/2.6.2
|
||||||
|
[2.6.3]: https://www.scm-manager.org/download/2.6.3
|
||||||
|
[2.7.0]: https://www.scm-manager.org/download/2.7.0
|
||||||
|
[2.7.1]: https://www.scm-manager.org/download/2.7.1
|
||||||
|
[2.8.0]: https://www.scm-manager.org/download/2.8.0
|
||||||
|
[2.9.0]: https://www.scm-manager.org/download/2.9.0
|
||||||
|
[2.9.1]: https://www.scm-manager.org/download/2.9.1
|
||||||
|
[2.10.0]: https://www.scm-manager.org/download/2.10.0
|
||||||
|
[2.10.1]: https://www.scm-manager.org/download/2.10.1
|
||||||
|
[2.11.0]: https://www.scm-manager.org/download/2.11.0
|
||||||
|
[2.11.1]: https://www.scm-manager.org/download/2.11.1
|
||||||
|
[2.12.0]: https://www.scm-manager.org/download/2.12.0
|
||||||
|
[2.13.0]: https://www.scm-manager.org/download/2.13.0
|
||||||
|
[2.14.0]: https://www.scm-manager.org/download/2.14.0
|
||||||
|
[2.14.1]: https://www.scm-manager.org/download/2.14.1
|
||||||
|
[2.15.0]: https://www.scm-manager.org/download/2.15.0
|
||||||
|
[2.15.1]: https://www.scm-manager.org/download/2.15.1
|
||||||
|
[2.16.0]: https://www.scm-manager.org/download/2.16.0
|
||||||
|
`;
|
||||||
@@ -33,4 +33,10 @@ You should not see an alert onload.
|
|||||||
If you hover over <b onmouseover=alert("onmouseover alert")>me</b> nothing should happen.
|
If you hover over <b onmouseover=alert("onmouseover alert")>me</b> nothing should happen.
|
||||||
|
|
||||||
Not every html <strong>html</strong> <i>should</i> be removed.
|
Not every html <strong>html</strong> <i>should</i> be removed.
|
||||||
|
|
||||||
|
<IFRAME SRC="javascript:alert('iframe');"></IFRAME>
|
||||||
|
|
||||||
|
<FRAMESET><FRAME SRC="javascript:alert('frameset');"></FRAMESET>
|
||||||
|
|
||||||
|
<OBJECT TYPE="text/x-scriptlet" DATA="http://xss.rocks/scriptlet.html"></OBJECT>
|
||||||
`;
|
`;
|
||||||
|
|||||||
@@ -22,7 +22,7 @@
|
|||||||
* SOFTWARE.
|
* SOFTWARE.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
export default `# <a name="top"></a>Markdown Test Page
|
export default `# <a name="top">Markdown Test Page</a>
|
||||||
|
|
||||||
* [Headings](#Headings)
|
* [Headings](#Headings)
|
||||||
* [Paragraphs](#Paragraphs)
|
* [Paragraphs](#Paragraphs)
|
||||||
@@ -35,7 +35,7 @@ export default `# <a name="top"></a>Markdown Test Page
|
|||||||
|
|
||||||
***
|
***
|
||||||
|
|
||||||
# <a name="Headings"></a>Headings
|
# <a name="Headings">Headings</a>
|
||||||
|
|
||||||
# Heading one
|
# Heading one
|
||||||
|
|
||||||
@@ -64,7 +64,7 @@ Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor
|
|||||||
|
|
||||||
[[Top]](#top)
|
[[Top]](#top)
|
||||||
|
|
||||||
# <a name="Paragraphs"></a>Paragraphs
|
# <a name="Paragraphs">Paragraphs</a>
|
||||||
|
|
||||||
Incididunt ex adipisicing ea ullamco consectetur in voluptate proident fugiat tempor deserunt reprehenderit ullamco id dolore laborum. Do laboris laboris minim incididunt qui consectetur exercitation adipisicing dolore et magna consequat magna anim sunt. Officia fugiat Lorem sunt pariatur incididunt Lorem reprehenderit proident irure. Dolore ipsum aliqua mollit ad officia fugiat sit eu aliquip cupidatat ipsum duis laborum laborum fugiat esse. Voluptate anim ex dolore deserunt ea ex eiusmod irure. Occaecat excepteur aliqua exercitation aliquip dolor esse eu eu.
|
Incididunt ex adipisicing ea ullamco consectetur in voluptate proident fugiat tempor deserunt reprehenderit ullamco id dolore laborum. Do laboris laboris minim incididunt qui consectetur exercitation adipisicing dolore et magna consequat magna anim sunt. Officia fugiat Lorem sunt pariatur incididunt Lorem reprehenderit proident irure. Dolore ipsum aliqua mollit ad officia fugiat sit eu aliquip cupidatat ipsum duis laborum laborum fugiat esse. Voluptate anim ex dolore deserunt ea ex eiusmod irure. Occaecat excepteur aliqua exercitation aliquip dolor esse eu eu.
|
||||||
|
|
||||||
@@ -74,7 +74,7 @@ Officia irure in non voluptate adipisicing sit amet tempor duis dolore deserunt
|
|||||||
|
|
||||||
[[Top]](#top)
|
[[Top]](#top)
|
||||||
|
|
||||||
# <a name="Blockquotes"></a>Blockquotes
|
# <a name="Blockquotes">Blockquotes</a>
|
||||||
|
|
||||||
Ad nisi laborum aute cupidatat magna deserunt eu id laboris id. Aliquip nulla cupidatat sint ex Lorem mollit laborum dolor amet est ut esse aute. Nostrud ex consequat id incididunt proident ipsum minim duis aliqua ut ex et ad quis. Laborum sint esse cillum anim nulla cillum consectetur aliqua sit. Nisi excepteur cillum labore amet excepteur commodo enim occaecat consequat ipsum proident exercitation duis id in.
|
Ad nisi laborum aute cupidatat magna deserunt eu id laboris id. Aliquip nulla cupidatat sint ex Lorem mollit laborum dolor amet est ut esse aute. Nostrud ex consequat id incididunt proident ipsum minim duis aliqua ut ex et ad quis. Laborum sint esse cillum anim nulla cillum consectetur aliqua sit. Nisi excepteur cillum labore amet excepteur commodo enim occaecat consequat ipsum proident exercitation duis id in.
|
||||||
|
|
||||||
@@ -92,7 +92,7 @@ Adipisicing voluptate ipsum culpa voluptate id aute laboris labore esse fugiat v
|
|||||||
|
|
||||||
[[Top]](#top)
|
[[Top]](#top)
|
||||||
|
|
||||||
# <a name="Lists"></a>Lists
|
# <a name="Lists">Lists</a>
|
||||||
|
|
||||||
### Ordered List
|
### Ordered List
|
||||||
|
|
||||||
@@ -120,7 +120,7 @@ Adipisicing voluptate ipsum culpa voluptate id aute laboris labore esse fugiat v
|
|||||||
|
|
||||||
[[Top]](#top)
|
[[Top]](#top)
|
||||||
|
|
||||||
# <a name="Horizontal"></a>Horizontal rule
|
# <a name="Horizontal">Horizontal rule</a>
|
||||||
|
|
||||||
In dolore velit aliquip labore mollit minim tempor veniam eu veniam ad in sint aliquip mollit mollit. Ex occaecat non deserunt elit laborum sunt tempor sint consequat culpa culpa qui sit. Irure ad commodo eu voluptate mollit cillum cupidatat veniam proident amet minim reprehenderit.
|
In dolore velit aliquip labore mollit minim tempor veniam eu veniam ad in sint aliquip mollit mollit. Ex occaecat non deserunt elit laborum sunt tempor sint consequat culpa culpa qui sit. Irure ad commodo eu voluptate mollit cillum cupidatat veniam proident amet minim reprehenderit.
|
||||||
|
|
||||||
@@ -130,7 +130,7 @@ In laboris eiusmod reprehenderit aliquip sit proident occaecat. Non sit labore a
|
|||||||
|
|
||||||
[[Top]](#top)
|
[[Top]](#top)
|
||||||
|
|
||||||
# <a name="Table"></a>Table
|
# <a name="Table">Table</a>
|
||||||
|
|
||||||
Duis sunt ut pariatur reprehenderit mollit mollit magna dolore in pariatur nulla commodo sit dolor ad fugiat. Laboris amet ea occaecat duis eu enim exercitation deserunt ea laborum occaecat reprehenderit. Et incididunt dolor commodo consequat mollit nisi proident non pariatur in et incididunt id. Eu ut et Lorem ea ex magna minim ipsum ipsum do.
|
Duis sunt ut pariatur reprehenderit mollit mollit magna dolore in pariatur nulla commodo sit dolor ad fugiat. Laboris amet ea occaecat duis eu enim exercitation deserunt ea laborum occaecat reprehenderit. Et incididunt dolor commodo consequat mollit nisi proident non pariatur in et incididunt id. Eu ut et Lorem ea ex magna minim ipsum ipsum do.
|
||||||
|
|
||||||
@@ -146,7 +146,7 @@ Minim id consequat adipisicing cupidatat laborum culpa veniam non consectetur et
|
|||||||
|
|
||||||
[[Top]](#top)
|
[[Top]](#top)
|
||||||
|
|
||||||
# <a name="Code"></a>Code
|
# <a name="Code">Code</a>
|
||||||
|
|
||||||
## Inline code
|
## Inline code
|
||||||
|
|
||||||
@@ -178,7 +178,7 @@ Ex amet id ex aliquip id do laborum excepteur exercitation elit sint commodo occ
|
|||||||
|
|
||||||
[[Top]](#top)
|
[[Top]](#top)
|
||||||
|
|
||||||
# <a name="Inline"></a>Inline elements
|
# <a name="Inline">Inline elements</a>
|
||||||
|
|
||||||
Sint ea anim ipsum ad commodo cupidatat do **exercitation** incididunt et minim ad labore sunt. Minim deserunt labore laboris velit nulla incididunt ipsum nulla. Ullamco ad laborum ea qui et anim in laboris exercitation tempor sit officia laborum reprehenderit culpa velit quis. **Consequat commodo** reprehenderit duis [irure](#!) esse esse exercitation minim enim Lorem dolore duis irure. Nisi Lorem reprehenderit ea amet excepteur dolor excepteur magna labore proident voluptate ipsum. Reprehenderit ex esse deserunt aliqua ea officia mollit Lorem nulla magna enim. Et ad ipsum labore enim ipsum **cupidatat consequat**. Commodo non ea cupidatat magna deserunt dolore ipsum velit nulla elit veniam nulla eiusmod proident officia.
|
Sint ea anim ipsum ad commodo cupidatat do **exercitation** incididunt et minim ad labore sunt. Minim deserunt labore laboris velit nulla incididunt ipsum nulla. Ullamco ad laborum ea qui et anim in laboris exercitation tempor sit officia laborum reprehenderit culpa velit quis. **Consequat commodo** reprehenderit duis [irure](#!) esse esse exercitation minim enim Lorem dolore duis irure. Nisi Lorem reprehenderit ea amet excepteur dolor excepteur magna labore proident voluptate ipsum. Reprehenderit ex esse deserunt aliqua ea officia mollit Lorem nulla magna enim. Et ad ipsum labore enim ipsum **cupidatat consequat**. Commodo non ea cupidatat magna deserunt dolore ipsum velit nulla elit veniam nulla eiusmod proident officia.
|
||||||
|
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -56,6 +56,7 @@ type Props = {
|
|||||||
children: ReactNode;
|
children: ReactNode;
|
||||||
level: number;
|
level: number;
|
||||||
permalink: string;
|
permalink: string;
|
||||||
|
id?: string;
|
||||||
};
|
};
|
||||||
|
|
||||||
function flatten(text: string, child: any): any {
|
function flatten(text: string, child: any): any {
|
||||||
@@ -71,14 +72,14 @@ export function headingToAnchorId(heading: string) {
|
|||||||
return heading.toLowerCase().replace(/\W/g, "-");
|
return heading.toLowerCase().replace(/\W/g, "-");
|
||||||
}
|
}
|
||||||
|
|
||||||
const MarkdownHeadingRenderer: FC<Props> = ({ children, level, permalink }) => {
|
const MarkdownHeadingRenderer: FC<Props> = ({ children, level, permalink, id }) => {
|
||||||
const [copying, setCopying] = useState(false);
|
const [copying, setCopying] = useState(false);
|
||||||
const [t] = useTranslation("repos");
|
const [t] = useTranslation("repos");
|
||||||
const location = useLocation();
|
const location = useLocation();
|
||||||
const history = useHistory();
|
const history = useHistory();
|
||||||
const reactChildren = React.Children.toArray(children);
|
const reactChildren = React.Children.toArray(children);
|
||||||
const heading = reactChildren.reduce(flatten, "");
|
const heading = reactChildren.reduce(flatten, "");
|
||||||
const anchorId = headingToAnchorId(heading);
|
const anchorId = id || headingToAnchorId(heading);
|
||||||
const copyPermalink = (event: React.MouseEvent) => {
|
const copyPermalink = (event: React.MouseEvent) => {
|
||||||
event.preventDefault();
|
event.preventDefault();
|
||||||
setCopying(true);
|
setCopying(true);
|
||||||
@@ -93,7 +94,7 @@ const MarkdownHeadingRenderer: FC<Props> = ({ children, level, permalink }) => {
|
|||||||
<Icon name="link" onClick={copyPermalink} />
|
<Icon name="link" onClick={copyPermalink} />
|
||||||
</Tooltip>
|
</Tooltip>
|
||||||
);
|
);
|
||||||
const headingElement = React.createElement("h" + level, {}, [...reactChildren, CopyButton]);
|
const headingElement = React.createElement("h" + level, {id: anchorId}, [...reactChildren, CopyButton]);
|
||||||
const href = urls.withContextPath(location.pathname + "#" + anchorId);
|
const href = urls.withContextPath(location.pathname + "#" + anchorId);
|
||||||
const permalinkHref =
|
const permalinkHref =
|
||||||
window.location.protocol +
|
window.location.protocol +
|
||||||
@@ -102,7 +103,7 @@ const MarkdownHeadingRenderer: FC<Props> = ({ children, level, permalink }) => {
|
|||||||
urls.withContextPath((permalink || location.pathname) + "#" + anchorId);
|
urls.withContextPath((permalink || location.pathname) + "#" + anchorId);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Link id={`${anchorId}`} className="anchor" href={href}>
|
<Link className="anchor" href={href}>
|
||||||
{headingElement}
|
{headingElement}
|
||||||
</Link>
|
</Link>
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -34,6 +34,7 @@ import MarkdownInlineXml from "../__resources__/markdown-inline-xml.md";
|
|||||||
import MarkdownLinks from "../__resources__/markdown-links.md";
|
import MarkdownLinks from "../__resources__/markdown-links.md";
|
||||||
import MarkdownCommitLinks from "../__resources__/markdown-commit-link.md";
|
import MarkdownCommitLinks from "../__resources__/markdown-commit-link.md";
|
||||||
import MarkdownXss from "../__resources__/markdown-xss.md";
|
import MarkdownXss from "../__resources__/markdown-xss.md";
|
||||||
|
import MarkdownChangelog from "../__resources__/markdown-changelog.md";
|
||||||
import Title from "../layout/Title";
|
import Title from "../layout/Title";
|
||||||
import { Subtitle } from "../layout";
|
import { Subtitle } from "../layout";
|
||||||
import { MemoryRouter } from "react-router-dom";
|
import { MemoryRouter } from "react-router-dom";
|
||||||
@@ -60,7 +61,7 @@ storiesOf("MarkdownView", module)
|
|||||||
.add("Links", () => <MarkdownView content={MarkdownLinks} basePath="/" />)
|
.add("Links", () => <MarkdownView content={MarkdownLinks} basePath="/" />)
|
||||||
.add("Header Anchor Links", () => (
|
.add("Header Anchor Links", () => (
|
||||||
<MarkdownView
|
<MarkdownView
|
||||||
content={TestPage}
|
content={MarkdownChangelog}
|
||||||
basePath={"/"}
|
basePath={"/"}
|
||||||
permalink={"/?path=/story/markdownview--header-anchor-links"}
|
permalink={"/?path=/story/markdownview--header-anchor-links"}
|
||||||
enableAnchorHeadings={true}
|
enableAnchorHeadings={true}
|
||||||
|
|||||||
@@ -23,8 +23,11 @@
|
|||||||
*/
|
*/
|
||||||
import React, { FC } from "react";
|
import React, { FC } from "react";
|
||||||
import { RouteComponentProps, withRouter } from "react-router-dom";
|
import { RouteComponentProps, withRouter } from "react-router-dom";
|
||||||
import Markdown from "react-markdown";
|
import unified from "unified";
|
||||||
import MarkdownWithHtml from "react-markdown/with-html";
|
import parseMarkdown from "remark-parse";
|
||||||
|
import sanitize from "rehype-sanitize";
|
||||||
|
import remark2rehype from "remark-rehype";
|
||||||
|
import rehype2react from "rehype-react";
|
||||||
import gfm from "remark-gfm";
|
import gfm from "remark-gfm";
|
||||||
import { binder } from "@scm-manager/ui-extensions";
|
import { binder } from "@scm-manager/ui-extensions";
|
||||||
import ErrorBoundary from "../ErrorBoundary";
|
import ErrorBoundary from "../ErrorBoundary";
|
||||||
@@ -32,10 +35,17 @@ import { create as createMarkdownHeadingRenderer } from "./MarkdownHeadingRender
|
|||||||
import { create as createMarkdownLinkRenderer } from "./MarkdownLinkRenderer";
|
import { create as createMarkdownLinkRenderer } from "./MarkdownLinkRenderer";
|
||||||
import { useTranslation, WithTranslation, withTranslation } from "react-i18next";
|
import { useTranslation, WithTranslation, withTranslation } from "react-i18next";
|
||||||
import Notification from "../Notification";
|
import Notification from "../Notification";
|
||||||
import { createTransformer } from "./remarkChangesetShortLinkParser";
|
import { createTransformer as createChangesetShortlinkParser } from "./remarkChangesetShortLinkParser";
|
||||||
|
import { createTransformer as createValuelessTextAdapter } from "./remarkValuelessTextAdapter";
|
||||||
import MarkdownCodeRenderer from "./MarkdownCodeRenderer";
|
import MarkdownCodeRenderer from "./MarkdownCodeRenderer";
|
||||||
import { AstPlugin } from "./PluginApi";
|
import { AstPlugin } from "./PluginApi";
|
||||||
import createMdastPlugin from "./createMdastPlugin";
|
import createMdastPlugin from "./createMdastPlugin";
|
||||||
|
// @ts-ignore
|
||||||
|
import gh from "hast-util-sanitize/lib/github";
|
||||||
|
import raw from "rehype-raw";
|
||||||
|
import slug from "rehype-slug";
|
||||||
|
import merge from "deepmerge";
|
||||||
|
import { createComponentList } from "./createComponentList";
|
||||||
|
|
||||||
type Props = RouteComponentProps &
|
type Props = RouteComponentProps &
|
||||||
WithTranslation & {
|
WithTranslation & {
|
||||||
@@ -112,7 +122,8 @@ class MarkdownView extends React.Component<Props, State> {
|
|||||||
if (contentRef && hash) {
|
if (contentRef && hash) {
|
||||||
// we query only child elements, to avoid strange scrolling with multiple
|
// we query only child elements, to avoid strange scrolling with multiple
|
||||||
// markdown elements on one page.
|
// markdown elements on one page.
|
||||||
const element = contentRef.querySelector(hash);
|
const elementId = decodeURIComponent(hash.substring(1) /* remove # */);
|
||||||
|
const element = contentRef.querySelector(`[id="${elementId}"]`);
|
||||||
if (element && element.scrollIntoView) {
|
if (element && element.scrollIntoView) {
|
||||||
element.scrollIntoView();
|
element.scrollIntoView();
|
||||||
}
|
}
|
||||||
@@ -133,42 +144,65 @@ class MarkdownView extends React.Component<Props, State> {
|
|||||||
} = this.props;
|
} = this.props;
|
||||||
|
|
||||||
const rendererFactory = binder.getExtension("markdown-renderer-factory");
|
const rendererFactory = binder.getExtension("markdown-renderer-factory");
|
||||||
let rendererList = renderers;
|
let remarkRendererList = renderers;
|
||||||
|
|
||||||
if (rendererFactory) {
|
if (rendererFactory) {
|
||||||
rendererList = rendererFactory(renderContext);
|
remarkRendererList = rendererFactory(renderContext);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!rendererList) {
|
if (!remarkRendererList) {
|
||||||
rendererList = {};
|
remarkRendererList = {};
|
||||||
}
|
}
|
||||||
|
|
||||||
if (enableAnchorHeadings && permalink && !rendererList.heading) {
|
if (enableAnchorHeadings && permalink && !remarkRendererList.heading) {
|
||||||
rendererList.heading = createMarkdownHeadingRenderer(permalink);
|
remarkRendererList.heading = createMarkdownHeadingRenderer(permalink);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (basePath && !rendererList.link) {
|
if (basePath && !remarkRendererList.link) {
|
||||||
rendererList.link = createMarkdownLinkRenderer(basePath);
|
remarkRendererList.link = createMarkdownLinkRenderer(basePath);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!rendererList.code) {
|
if (!remarkRendererList.code) {
|
||||||
rendererList.code = MarkdownCodeRenderer;
|
remarkRendererList.code = MarkdownCodeRenderer;
|
||||||
}
|
}
|
||||||
|
|
||||||
const plugins = [...mdastPlugins, createTransformer(t)].map(createMdastPlugin);
|
const remarkPlugins = [...mdastPlugins, createChangesetShortlinkParser(t), createValuelessTextAdapter()].map(
|
||||||
|
createMdastPlugin
|
||||||
|
);
|
||||||
|
|
||||||
const baseProps = {
|
let processor = unified()
|
||||||
className: "content is-word-break",
|
.use(parseMarkdown)
|
||||||
renderers: rendererList,
|
.use(gfm)
|
||||||
plugins: [gfm],
|
.use(remarkPlugins)
|
||||||
astPlugins: plugins,
|
.use(remark2rehype, { allowDangerousHtml: true });
|
||||||
children: content
|
|
||||||
};
|
if (!skipHtml) {
|
||||||
|
processor = processor.use(raw);
|
||||||
|
}
|
||||||
|
|
||||||
|
processor = processor
|
||||||
|
.use(slug)
|
||||||
|
.use(
|
||||||
|
sanitize,
|
||||||
|
merge(gh, {
|
||||||
|
attributes: {
|
||||||
|
code: ["className"] // Allow className for code elements, this is necessary to extract the code language
|
||||||
|
},
|
||||||
|
clobberPrefix: "" // Do not prefix user-provided ids and class names
|
||||||
|
})
|
||||||
|
)
|
||||||
|
.use(rehype2react, {
|
||||||
|
createElement: React.createElement,
|
||||||
|
passNode: true,
|
||||||
|
components: createComponentList(remarkRendererList, { permalink })
|
||||||
|
});
|
||||||
|
|
||||||
|
const renderedMarkdown: any = processor.processSync(content).result;
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<ErrorBoundary fallback={MarkdownErrorNotification}>
|
<ErrorBoundary fallback={MarkdownErrorNotification}>
|
||||||
<div ref={el => this.setState({ contentRef: el })}>
|
<div ref={el => this.setState({ contentRef: el })} className="content is-word-break">
|
||||||
{skipHtml ? <Markdown {...baseProps} /> : <MarkdownWithHtml {...baseProps} allowDangerousHtml={true} />}
|
{renderedMarkdown}
|
||||||
</div>
|
</div>
|
||||||
</ErrorBoundary>
|
</ErrorBoundary>
|
||||||
);
|
);
|
||||||
|
|||||||
101
scm-ui/ui-components/src/markdown/createComponentList.ts
Normal file
101
scm-ui/ui-components/src/markdown/createComponentList.ts
Normal file
@@ -0,0 +1,101 @@
|
|||||||
|
import {
|
||||||
|
createRemark2RehypeCodeRendererAdapter,
|
||||||
|
createRemark2RehypeHeadingRendererAdapterFactory,
|
||||||
|
createRemark2RehypeLinkRendererAdapter
|
||||||
|
} from "./remarkToRehypeRendererAdapters";
|
||||||
|
|
||||||
|
export type CreateComponentListOptions = {
|
||||||
|
permalink?: string;
|
||||||
|
};
|
||||||
|
|
||||||
|
export const createComponentList = (
|
||||||
|
remarkRendererList: Record<string, any>,
|
||||||
|
{ permalink }: CreateComponentListOptions
|
||||||
|
) => {
|
||||||
|
const components: Record<string, any> = {};
|
||||||
|
|
||||||
|
if (remarkRendererList.code) {
|
||||||
|
components.code = createRemark2RehypeCodeRendererAdapter(remarkRendererList.code);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (remarkRendererList.link) {
|
||||||
|
components.a = createRemark2RehypeLinkRendererAdapter(remarkRendererList.link);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (remarkRendererList.heading) {
|
||||||
|
const createHeadingRendererAdapter = createRemark2RehypeHeadingRendererAdapterFactory(
|
||||||
|
remarkRendererList.heading,
|
||||||
|
permalink
|
||||||
|
);
|
||||||
|
components.h1 = createHeadingRendererAdapter(1);
|
||||||
|
components.h2 = createHeadingRendererAdapter(2);
|
||||||
|
components.h3 = createHeadingRendererAdapter(3);
|
||||||
|
components.h4 = createHeadingRendererAdapter(4);
|
||||||
|
components.h5 = createHeadingRendererAdapter(5);
|
||||||
|
components.h6 = createHeadingRendererAdapter(6);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (remarkRendererList.break) {
|
||||||
|
components.br = remarkRendererList.break;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (remarkRendererList.delete) {
|
||||||
|
components.del = remarkRendererList.delete;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (remarkRendererList.emphasis) {
|
||||||
|
components.em = remarkRendererList.emphasis;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (remarkRendererList.blockquote) {
|
||||||
|
components.blockquote = remarkRendererList.blockquote;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (remarkRendererList.image) {
|
||||||
|
components.img = remarkRendererList.image;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (remarkRendererList.list) {
|
||||||
|
components.ol = remarkRendererList.list;
|
||||||
|
components.ul = remarkRendererList.list;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (remarkRendererList.listItem) {
|
||||||
|
components.li = remarkRendererList.listItem;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (remarkRendererList.paragraph) {
|
||||||
|
components.p = remarkRendererList.paragraph;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (remarkRendererList.strong) {
|
||||||
|
components.strong = remarkRendererList.strong;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (remarkRendererList.table) {
|
||||||
|
components.table = remarkRendererList.table;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (remarkRendererList.tableHead) {
|
||||||
|
components.thead = remarkRendererList.tableHead;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (remarkRendererList.tableBody) {
|
||||||
|
components.tbody = remarkRendererList.tableBody;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (remarkRendererList.tableRow) {
|
||||||
|
components.tr = remarkRendererList.tableRow;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (remarkRendererList.tableCell) {
|
||||||
|
components.td = remarkRendererList.tableCell;
|
||||||
|
components.th = remarkRendererList.tableCell;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (remarkRendererList.thematicBreak) {
|
||||||
|
components.hr = remarkRendererList.thematicBreak;
|
||||||
|
}
|
||||||
|
|
||||||
|
return components;
|
||||||
|
};
|
||||||
@@ -2,11 +2,18 @@ import { AstPlugin } from "./PluginApi";
|
|||||||
// @ts-ignore No types available
|
// @ts-ignore No types available
|
||||||
import visit from "unist-util-visit";
|
import visit from "unist-util-visit";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Transforms the abstraction layer into an actual remark plugin to be used with unified.
|
||||||
|
*
|
||||||
|
* @see https://unifiedjs.com/learn/guide/create-a-plugin/
|
||||||
|
*/
|
||||||
export default function createMdastPlugin(plugin: AstPlugin): any {
|
export default function createMdastPlugin(plugin: AstPlugin): any {
|
||||||
return (tree: any) => {
|
return function attach() {
|
||||||
|
return function transform(tree: any) {
|
||||||
plugin({
|
plugin({
|
||||||
visit: (type, visitor) => visit(tree, type, visitor)
|
visit: (type, visitor) => visit(tree, type, visitor)
|
||||||
});
|
});
|
||||||
return tree;
|
return tree;
|
||||||
};
|
};
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,34 @@
|
|||||||
|
import React from "react";
|
||||||
|
|
||||||
|
export const createRemark2RehypeCodeRendererAdapter = (remarkRenderer: any) => {
|
||||||
|
return ({ node, children }: any) => {
|
||||||
|
children = children || [];
|
||||||
|
const renderProps = {
|
||||||
|
value: children[0],
|
||||||
|
language: Array.isArray(node.properties.className) ? node.properties.className[0].split("language-")[1] : ""
|
||||||
|
};
|
||||||
|
return React.createElement(remarkRenderer, renderProps, ...children);
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
export const createRemark2RehypeLinkRendererAdapter = (remarkRenderer: any) => {
|
||||||
|
return ({ node, children }: any) => {
|
||||||
|
const renderProps = {
|
||||||
|
href: node.properties.href || ""
|
||||||
|
};
|
||||||
|
children = children || [];
|
||||||
|
return React.createElement(remarkRenderer, renderProps, ...children);
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
export const createRemark2RehypeHeadingRendererAdapterFactory = (remarkRenderer: any, permalink?: string) => {
|
||||||
|
return (level: number) => ({ node, children }: any) => {
|
||||||
|
const renderProps = {
|
||||||
|
id: node.properties.id,
|
||||||
|
level,
|
||||||
|
permalink
|
||||||
|
};
|
||||||
|
children = children || [];
|
||||||
|
return React.createElement(remarkRenderer, renderProps, ...children);
|
||||||
|
};
|
||||||
|
};
|
||||||
@@ -0,0 +1,41 @@
|
|||||||
|
/*
|
||||||
|
* MIT License
|
||||||
|
*
|
||||||
|
* Copyright (c) 2020-present Cloudogu GmbH and Contributors
|
||||||
|
*
|
||||||
|
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
* of this software and associated documentation files (the "Software"), to deal
|
||||||
|
* in the Software without restriction, including without limitation the rights
|
||||||
|
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
* copies of the Software, and to permit persons to whom the Software is
|
||||||
|
* furnished to do so, subject to the following conditions:
|
||||||
|
*
|
||||||
|
* The above copyright notice and this permission notice shall be included in all
|
||||||
|
* copies or substantial portions of the Software.
|
||||||
|
*
|
||||||
|
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||||
|
* SOFTWARE.
|
||||||
|
*/
|
||||||
|
|
||||||
|
import { AstPlugin } from "./PluginApi";
|
||||||
|
import { Node, Parent } from "unist";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Some existing remark plugins (e.g. changesetShortLinkParser or the plugin for issue tracker links) create
|
||||||
|
* text nodes without values but with children. This does not get parsed properly by remark2rehype.
|
||||||
|
* This remark-plugin transforms all of these invalid text nodes to valid paragraphs.
|
||||||
|
*/
|
||||||
|
export const createTransformer = (): AstPlugin => {
|
||||||
|
return ({ visit }) => {
|
||||||
|
visit("text", (node: Node, index: number, parent?: Parent) => {
|
||||||
|
if (node.value === undefined && Array.isArray(node.children) && node.children.length > 0) {
|
||||||
|
node.type = "paragraph";
|
||||||
|
}
|
||||||
|
});
|
||||||
|
};
|
||||||
|
};
|
||||||
328
yarn.lock
328
yarn.lock
@@ -4223,6 +4223,13 @@
|
|||||||
npmlog "^4.1.2"
|
npmlog "^4.1.2"
|
||||||
write-file-atomic "^2.3.0"
|
write-file-atomic "^2.3.0"
|
||||||
|
|
||||||
|
"@mapbox/hast-util-table-cell-style@^0.1.3":
|
||||||
|
version "0.1.3"
|
||||||
|
resolved "https://registry.yarnpkg.com/@mapbox/hast-util-table-cell-style/-/hast-util-table-cell-style-0.1.3.tgz#5b7166ae01297d72216932b245e4b2f0b642dca6"
|
||||||
|
integrity sha512-QsEsh5YaDvHoMQ2YHdvZy2iDnU3GgKVBTcHf6cILyoWDZtPSdlG444pL/ioPYO/GpXSfODBb9sefEetfC4v9oA==
|
||||||
|
dependencies:
|
||||||
|
unist-util-visit "^1.3.0"
|
||||||
|
|
||||||
"@mrmlnc/readdir-enhanced@^2.2.1":
|
"@mrmlnc/readdir-enhanced@^2.2.1":
|
||||||
version "2.2.1"
|
version "2.2.1"
|
||||||
resolved "https://registry.yarnpkg.com/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz#524af240d1a360527b730475ecfa1344aa540dde"
|
resolved "https://registry.yarnpkg.com/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz#524af240d1a360527b730475ecfa1344aa540dde"
|
||||||
@@ -5441,7 +5448,7 @@
|
|||||||
dependencies:
|
dependencies:
|
||||||
"@types/react" "*"
|
"@types/react" "*"
|
||||||
|
|
||||||
"@types/mdast@^3.0.0", "@types/mdast@^3.0.3":
|
"@types/mdast@^3.0.0":
|
||||||
version "3.0.3"
|
version "3.0.3"
|
||||||
resolved "https://registry.yarnpkg.com/@types/mdast/-/mdast-3.0.3.tgz#2d7d671b1cd1ea3deb306ea75036c2a0407d2deb"
|
resolved "https://registry.yarnpkg.com/@types/mdast/-/mdast-3.0.3.tgz#2d7d671b1cd1ea3deb306ea75036c2a0407d2deb"
|
||||||
integrity sha512-SXPBMnFVQg1s00dlMCc/jCdvPqdE4mXaMMCeRlxLDmTAEoegHT53xKtkDnzDTOcmMHUfcjyf36/YYZ6SxRdnsw==
|
integrity sha512-SXPBMnFVQg1s00dlMCc/jCdvPqdE4mXaMMCeRlxLDmTAEoegHT53xKtkDnzDTOcmMHUfcjyf36/YYZ6SxRdnsw==
|
||||||
@@ -5498,6 +5505,11 @@
|
|||||||
resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0"
|
resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0"
|
||||||
integrity sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==
|
integrity sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==
|
||||||
|
|
||||||
|
"@types/parse5@^5.0.0":
|
||||||
|
version "5.0.3"
|
||||||
|
resolved "https://registry.yarnpkg.com/@types/parse5/-/parse5-5.0.3.tgz#e7b5aebbac150f8b5fdd4a46e7f0bd8e65e19109"
|
||||||
|
integrity sha512-kUNnecmtkunAoQ3CnjmMkzNU/gtxG8guhi+Fk2U/kOpIKjIMKnXGp4IJCgQJrXSgMsWYimYG4TGjz/UzbGEBTw==
|
||||||
|
|
||||||
"@types/prettier@^1.18.0":
|
"@types/prettier@^1.18.0":
|
||||||
version "1.19.1"
|
version "1.19.1"
|
||||||
resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-1.19.1.tgz#33509849f8e679e4add158959fdb086440e9553f"
|
resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-1.19.1.tgz#33509849f8e679e4add158959fdb086440e9553f"
|
||||||
@@ -9795,15 +9807,6 @@ dom-serializer@0:
|
|||||||
domelementtype "^2.0.1"
|
domelementtype "^2.0.1"
|
||||||
entities "^2.0.0"
|
entities "^2.0.0"
|
||||||
|
|
||||||
dom-serializer@^1.0.1:
|
|
||||||
version "1.3.1"
|
|
||||||
resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-1.3.1.tgz#d845a1565d7c041a95e5dab62184ab41e3a519be"
|
|
||||||
integrity sha512-Pv2ZluG5ife96udGgEDovOOOA5UELkltfJpnIExPrAk1LTvecolUGn6lIaoLh86d83GiB86CjzciMd9BuRB71Q==
|
|
||||||
dependencies:
|
|
||||||
domelementtype "^2.0.1"
|
|
||||||
domhandler "^4.0.0"
|
|
||||||
entities "^2.0.0"
|
|
||||||
|
|
||||||
dom-serializer@~0.1.1:
|
dom-serializer@~0.1.1:
|
||||||
version "0.1.1"
|
version "0.1.1"
|
||||||
resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.1.1.tgz#1ec4059e284babed36eec2941d4a970a189ce7c0"
|
resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.1.1.tgz#1ec4059e284babed36eec2941d4a970a189ce7c0"
|
||||||
@@ -9832,11 +9835,6 @@ domelementtype@^2.0.1:
|
|||||||
resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.0.2.tgz#f3b6e549201e46f588b59463dd77187131fe6971"
|
resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.0.2.tgz#f3b6e549201e46f588b59463dd77187131fe6971"
|
||||||
integrity sha512-wFwTwCVebUrMgGeAwRL/NhZtHAUyT9n9yg4IMDwf10+6iCMxSkVq9MGCVEH+QZWo1nNidy8kNvwmv4zWHDTqvA==
|
integrity sha512-wFwTwCVebUrMgGeAwRL/NhZtHAUyT9n9yg4IMDwf10+6iCMxSkVq9MGCVEH+QZWo1nNidy8kNvwmv4zWHDTqvA==
|
||||||
|
|
||||||
domelementtype@^2.2.0:
|
|
||||||
version "2.2.0"
|
|
||||||
resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.2.0.tgz#9a0b6c2782ed6a1c7323d42267183df9bd8b1d57"
|
|
||||||
integrity sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==
|
|
||||||
|
|
||||||
domexception@^1.0.1:
|
domexception@^1.0.1:
|
||||||
version "1.0.1"
|
version "1.0.1"
|
||||||
resolved "https://registry.yarnpkg.com/domexception/-/domexception-1.0.1.tgz#937442644ca6a31261ef36e3ec677fe805582c90"
|
resolved "https://registry.yarnpkg.com/domexception/-/domexception-1.0.1.tgz#937442644ca6a31261ef36e3ec677fe805582c90"
|
||||||
@@ -9858,20 +9856,6 @@ domhandler@^2.3.0:
|
|||||||
dependencies:
|
dependencies:
|
||||||
domelementtype "1"
|
domelementtype "1"
|
||||||
|
|
||||||
domhandler@^3.3.0:
|
|
||||||
version "3.3.0"
|
|
||||||
resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-3.3.0.tgz#6db7ea46e4617eb15cf875df68b2b8524ce0037a"
|
|
||||||
integrity sha512-J1C5rIANUbuYK+FuFL98650rihynUOEzRLxW+90bKZRWB6A1X1Tf82GxR1qAWLyfNPRvjqfip3Q5tdYlmAa9lA==
|
|
||||||
dependencies:
|
|
||||||
domelementtype "^2.0.1"
|
|
||||||
|
|
||||||
domhandler@^4.0.0, domhandler@^4.1.0:
|
|
||||||
version "4.1.0"
|
|
||||||
resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-4.1.0.tgz#c1d8d494d5ec6db22de99e46a149c2a4d23ddd43"
|
|
||||||
integrity sha512-/6/kmsGlMY4Tup/nGVutdrK9yQi4YjWVcVeoQmixpzjOUK1U7pQkvAPHBJeUxOgxF0J8f8lwCJSlCfD0V4CMGQ==
|
|
||||||
dependencies:
|
|
||||||
domelementtype "^2.2.0"
|
|
||||||
|
|
||||||
domutils@1.5.1:
|
domutils@1.5.1:
|
||||||
version "1.5.1"
|
version "1.5.1"
|
||||||
resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.5.1.tgz#dcd8488a26f563d61079e48c9f7b7e32373682cf"
|
resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.5.1.tgz#dcd8488a26f563d61079e48c9f7b7e32373682cf"
|
||||||
@@ -9888,15 +9872,6 @@ domutils@^1.5.1, domutils@^1.7.0:
|
|||||||
dom-serializer "0"
|
dom-serializer "0"
|
||||||
domelementtype "1"
|
domelementtype "1"
|
||||||
|
|
||||||
domutils@^2.4.2:
|
|
||||||
version "2.5.2"
|
|
||||||
resolved "https://registry.yarnpkg.com/domutils/-/domutils-2.5.2.tgz#37ef8ba087dff1a17175e7092e8a042e4b050e6c"
|
|
||||||
integrity sha512-MHTthCb1zj8f1GVfRpeZUbohQf/HdBos0oX5gZcQFepOZPLLRyj6Wn7XS7EMnY7CVpwv8863u2vyE83Hfu28HQ==
|
|
||||||
dependencies:
|
|
||||||
dom-serializer "^1.0.1"
|
|
||||||
domelementtype "^2.2.0"
|
|
||||||
domhandler "^4.1.0"
|
|
||||||
|
|
||||||
dot-case@^3.0.3:
|
dot-case@^3.0.3:
|
||||||
version "3.0.3"
|
version "3.0.3"
|
||||||
resolved "https://registry.yarnpkg.com/dot-case/-/dot-case-3.0.3.tgz#21d3b52efaaba2ea5fda875bb1aa8124521cf4aa"
|
resolved "https://registry.yarnpkg.com/dot-case/-/dot-case-3.0.3.tgz#21d3b52efaaba2ea5fda875bb1aa8124521cf4aa"
|
||||||
@@ -10058,6 +10033,11 @@ emittery@^0.7.1:
|
|||||||
resolved "https://registry.yarnpkg.com/emittery/-/emittery-0.7.1.tgz#c02375a927a40948c0345cc903072597f5270451"
|
resolved "https://registry.yarnpkg.com/emittery/-/emittery-0.7.1.tgz#c02375a927a40948c0345cc903072597f5270451"
|
||||||
integrity sha512-d34LN4L6h18Bzz9xpoku2nPwKxCPlPMr3EEKTkoEBi+1/+b0lcRkRJ1UVyyZaKNeqGR3swcGl6s390DNO4YVgQ==
|
integrity sha512-d34LN4L6h18Bzz9xpoku2nPwKxCPlPMr3EEKTkoEBi+1/+b0lcRkRJ1UVyyZaKNeqGR3swcGl6s390DNO4YVgQ==
|
||||||
|
|
||||||
|
"emoji-regex@>=6.0.0 <=6.1.1":
|
||||||
|
version "6.1.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-6.1.1.tgz#c6cd0ec1b0642e2a3c67a1137efc5e796da4f88e"
|
||||||
|
integrity sha1-xs0OwbBkLio8Z6ETfvxeeW2k+I4=
|
||||||
|
|
||||||
emoji-regex@^7.0.1:
|
emoji-regex@^7.0.1:
|
||||||
version "7.0.3"
|
version "7.0.3"
|
||||||
resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156"
|
resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156"
|
||||||
@@ -11706,6 +11686,13 @@ gitdiff-parser@^0.1.2, "gitdiff-parser@https://github.com/scm-manager/gitdiff-pa
|
|||||||
version "0.2.2"
|
version "0.2.2"
|
||||||
resolved "https://github.com/scm-manager/gitdiff-parser#420d6cfa17a6a8f9bf1a517a2c629dcb332dbe13"
|
resolved "https://github.com/scm-manager/gitdiff-parser#420d6cfa17a6a8f9bf1a517a2c629dcb332dbe13"
|
||||||
|
|
||||||
|
github-slugger@^1.1.1:
|
||||||
|
version "1.3.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/github-slugger/-/github-slugger-1.3.0.tgz#9bd0a95c5efdfc46005e82a906ef8e2a059124c9"
|
||||||
|
integrity sha512-gwJScWVNhFYSRDvURk/8yhcFBee6aFjye2a7Lhb2bUyRulpIoek9p0I9Kt7PT67d/nUlZbFu8L9RLiA0woQN8Q==
|
||||||
|
dependencies:
|
||||||
|
emoji-regex ">=6.0.0 <=6.1.1"
|
||||||
|
|
||||||
glob-base@^0.3.0:
|
glob-base@^0.3.0:
|
||||||
version "0.3.0"
|
version "0.3.0"
|
||||||
resolved "https://registry.yarnpkg.com/glob-base/-/glob-base-0.3.0.tgz#dbb164f6221b1c0b1ccf82aea328b497df0ea3c4"
|
resolved "https://registry.yarnpkg.com/glob-base/-/glob-base-0.3.0.tgz#dbb164f6221b1c0b1ccf82aea328b497df0ea3c4"
|
||||||
@@ -12049,11 +12036,86 @@ hash.js@^1.0.0, hash.js@^1.0.3:
|
|||||||
inherits "^2.0.3"
|
inherits "^2.0.3"
|
||||||
minimalistic-assert "^1.0.1"
|
minimalistic-assert "^1.0.1"
|
||||||
|
|
||||||
|
hast-to-hyperscript@^9.0.0:
|
||||||
|
version "9.0.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/hast-to-hyperscript/-/hast-to-hyperscript-9.0.1.tgz#9b67fd188e4c81e8ad66f803855334173920218d"
|
||||||
|
integrity sha512-zQgLKqF+O2F72S1aa4y2ivxzSlko3MAvxkwG8ehGmNiqd98BIN3JM1rAJPmplEyLmGLO2QZYJtIneOSZ2YbJuA==
|
||||||
|
dependencies:
|
||||||
|
"@types/unist" "^2.0.3"
|
||||||
|
comma-separated-tokens "^1.0.0"
|
||||||
|
property-information "^5.3.0"
|
||||||
|
space-separated-tokens "^1.0.0"
|
||||||
|
style-to-object "^0.3.0"
|
||||||
|
unist-util-is "^4.0.0"
|
||||||
|
web-namespaces "^1.0.0"
|
||||||
|
|
||||||
|
hast-util-from-parse5@^6.0.0:
|
||||||
|
version "6.0.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/hast-util-from-parse5/-/hast-util-from-parse5-6.0.1.tgz#554e34abdeea25ac76f5bd950a1f0180e0b3bc2a"
|
||||||
|
integrity sha512-jeJUWiN5pSxW12Rh01smtVkZgZr33wBokLzKLwinYOUfSzm1Nl/c3GUGebDyOKjdsRgMvoVbV0VpAcpjF4NrJA==
|
||||||
|
dependencies:
|
||||||
|
"@types/parse5" "^5.0.0"
|
||||||
|
hastscript "^6.0.0"
|
||||||
|
property-information "^5.0.0"
|
||||||
|
vfile "^4.0.0"
|
||||||
|
vfile-location "^3.2.0"
|
||||||
|
web-namespaces "^1.0.0"
|
||||||
|
|
||||||
|
hast-util-has-property@^1.0.0:
|
||||||
|
version "1.0.4"
|
||||||
|
resolved "https://registry.yarnpkg.com/hast-util-has-property/-/hast-util-has-property-1.0.4.tgz#9f137565fad6082524b382c1e7d7d33ca5059f36"
|
||||||
|
integrity sha512-ghHup2voGfgFoHMGnaLHOjbYFACKrRh9KFttdCzMCbFoBMJXiNi2+XTrPP8+q6cDJM/RSqlCfVWrjp1H201rZg==
|
||||||
|
|
||||||
|
hast-util-heading-rank@^1.0.0:
|
||||||
|
version "1.0.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/hast-util-heading-rank/-/hast-util-heading-rank-1.0.1.tgz#28dfd8b0724cfb0da48308e2a794b1d9f24fd80d"
|
||||||
|
integrity sha512-P6Hq7RCky9syMevlrN90QWpqWDXCxwIVOfQR2rK6P4GpY4bqjKEuCzoWSRORZ7vz+VgRpLnXimh+mkwvVFjbyQ==
|
||||||
|
|
||||||
hast-util-parse-selector@^2.0.0:
|
hast-util-parse-selector@^2.0.0:
|
||||||
version "2.2.4"
|
version "2.2.4"
|
||||||
resolved "https://registry.yarnpkg.com/hast-util-parse-selector/-/hast-util-parse-selector-2.2.4.tgz#60c99d0b519e12ab4ed32e58f150ec3f61ed1974"
|
resolved "https://registry.yarnpkg.com/hast-util-parse-selector/-/hast-util-parse-selector-2.2.4.tgz#60c99d0b519e12ab4ed32e58f150ec3f61ed1974"
|
||||||
integrity sha512-gW3sxfynIvZApL4L07wryYF4+C9VvH3AUi7LAnVXV4MneGEgwOByXvFo18BgmTWnm7oHAe874jKbIB1YhHSIzA==
|
integrity sha512-gW3sxfynIvZApL4L07wryYF4+C9VvH3AUi7LAnVXV4MneGEgwOByXvFo18BgmTWnm7oHAe874jKbIB1YhHSIzA==
|
||||||
|
|
||||||
|
hast-util-raw@^6.1.0:
|
||||||
|
version "6.1.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/hast-util-raw/-/hast-util-raw-6.1.0.tgz#e16a3c2642f65cc7c480c165400a40d604ab75d0"
|
||||||
|
integrity sha512-5FoZLDHBpka20OlZZ4I/+RBw5piVQ8iI1doEvffQhx5CbCyTtP8UCq8Tw6NmTAMtXgsQxmhW7Ly8OdFre5/YMQ==
|
||||||
|
dependencies:
|
||||||
|
"@types/hast" "^2.0.0"
|
||||||
|
hast-util-from-parse5 "^6.0.0"
|
||||||
|
hast-util-to-parse5 "^6.0.0"
|
||||||
|
html-void-elements "^1.0.0"
|
||||||
|
parse5 "^6.0.0"
|
||||||
|
unist-util-position "^3.0.0"
|
||||||
|
unist-util-visit "^2.0.0"
|
||||||
|
vfile "^4.0.0"
|
||||||
|
web-namespaces "^1.0.0"
|
||||||
|
xtend "^4.0.0"
|
||||||
|
zwitch "^1.0.0"
|
||||||
|
|
||||||
|
hast-util-sanitize@^3.0.0, hast-util-sanitize@^3.0.2:
|
||||||
|
version "3.0.2"
|
||||||
|
resolved "https://registry.yarnpkg.com/hast-util-sanitize/-/hast-util-sanitize-3.0.2.tgz#b0b783220af528ba8fe6999f092d138908678520"
|
||||||
|
integrity sha512-+2I0x2ZCAyiZOO/sb4yNLFmdwPBnyJ4PBkVTUMKMqBwYNA+lXSgOmoRXlJFazoyid9QPogRRKgKhVEodv181sA==
|
||||||
|
dependencies:
|
||||||
|
xtend "^4.0.0"
|
||||||
|
|
||||||
|
hast-util-to-parse5@^6.0.0:
|
||||||
|
version "6.0.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/hast-util-to-parse5/-/hast-util-to-parse5-6.0.0.tgz#1ec44650b631d72952066cea9b1445df699f8479"
|
||||||
|
integrity sha512-Lu5m6Lgm/fWuz8eWnrKezHtVY83JeRGaNQ2kn9aJgqaxvVkFCZQBEhgodZUDUvoodgyROHDb3r5IxAEdl6suJQ==
|
||||||
|
dependencies:
|
||||||
|
hast-to-hyperscript "^9.0.0"
|
||||||
|
property-information "^5.0.0"
|
||||||
|
web-namespaces "^1.0.0"
|
||||||
|
xtend "^4.0.0"
|
||||||
|
zwitch "^1.0.0"
|
||||||
|
|
||||||
|
hast-util-to-string@^1.0.0:
|
||||||
|
version "1.0.4"
|
||||||
|
resolved "https://registry.yarnpkg.com/hast-util-to-string/-/hast-util-to-string-1.0.4.tgz#9b24c114866bdb9478927d7e9c36a485ac728378"
|
||||||
|
integrity sha512-eK0MxRX47AV2eZ+Lyr18DCpQgodvaS3fAQO2+b9Two9F5HEoRPhiUMNzoXArMJfZi2yieFzUBMRl3HNJ3Jus3w==
|
||||||
|
|
||||||
hastscript@^6.0.0:
|
hastscript@^6.0.0:
|
||||||
version "6.0.0"
|
version "6.0.0"
|
||||||
resolved "https://registry.yarnpkg.com/hastscript/-/hastscript-6.0.0.tgz#e8768d7eac56c3fdeac8a92830d58e811e5bf640"
|
resolved "https://registry.yarnpkg.com/hastscript/-/hastscript-6.0.0.tgz#e8768d7eac56c3fdeac8a92830d58e811e5bf640"
|
||||||
@@ -12206,15 +12268,10 @@ html-parse-stringify2@2.0.1:
|
|||||||
dependencies:
|
dependencies:
|
||||||
void-elements "^2.0.1"
|
void-elements "^2.0.1"
|
||||||
|
|
||||||
html-to-react@^1.3.4:
|
html-void-elements@^1.0.0:
|
||||||
version "1.4.5"
|
version "1.0.5"
|
||||||
resolved "https://registry.yarnpkg.com/html-to-react/-/html-to-react-1.4.5.tgz#59091c11021d1ef315ef738460abb6a4a41fe1ce"
|
resolved "https://registry.yarnpkg.com/html-void-elements/-/html-void-elements-1.0.5.tgz#ce9159494e86d95e45795b166c2021c2cfca4483"
|
||||||
integrity sha512-KONZUDFPg5OodWaQu2ymfkDmU0JA7zB1iPfvyHehTmMUZnk0DS7/TyCMTzsLH6b4BvxX15g88qZCXFhJWktsmA==
|
integrity sha512-uE/TxKuyNIcx44cIWnjr/rfIATDH7ZaOMmstu0CwhFG1Dunhlp4OC6/NMbhiwoq5BpW0ubi303qnEk/PZj614w==
|
||||||
dependencies:
|
|
||||||
domhandler "^3.3.0"
|
|
||||||
htmlparser2 "^5.0"
|
|
||||||
lodash.camelcase "^4.3.0"
|
|
||||||
ramda "^0.27.1"
|
|
||||||
|
|
||||||
html-webpack-plugin@^4.2.1:
|
html-webpack-plugin@^4.2.1:
|
||||||
version "4.5.0"
|
version "4.5.0"
|
||||||
@@ -12248,16 +12305,6 @@ htmlparser2@^3.3.0, htmlparser2@^3.9.1:
|
|||||||
inherits "^2.0.1"
|
inherits "^2.0.1"
|
||||||
readable-stream "^3.1.1"
|
readable-stream "^3.1.1"
|
||||||
|
|
||||||
htmlparser2@^5.0:
|
|
||||||
version "5.0.1"
|
|
||||||
resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-5.0.1.tgz#7daa6fc3e35d6107ac95a4fc08781f091664f6e7"
|
|
||||||
integrity sha512-vKZZra6CSe9qsJzh0BjBGXo8dvzNsq/oGvsjfRdOrrryfeD9UOBEEQdeoqCRmKZchF5h2zOBMQ6YuQ0uRUmdbQ==
|
|
||||||
dependencies:
|
|
||||||
domelementtype "^2.0.1"
|
|
||||||
domhandler "^3.3.0"
|
|
||||||
domutils "^2.4.2"
|
|
||||||
entities "^2.0.0"
|
|
||||||
|
|
||||||
http-assert@^1.3.0:
|
http-assert@^1.3.0:
|
||||||
version "1.4.1"
|
version "1.4.1"
|
||||||
resolved "https://registry.yarnpkg.com/http-assert/-/http-assert-1.4.1.tgz#c5f725d677aa7e873ef736199b89686cceb37878"
|
resolved "https://registry.yarnpkg.com/http-assert/-/http-assert-1.4.1.tgz#c5f725d677aa7e873ef736199b89686cceb37878"
|
||||||
@@ -12628,6 +12675,11 @@ inline-source-map@~0.6.0:
|
|||||||
dependencies:
|
dependencies:
|
||||||
source-map "~0.5.3"
|
source-map "~0.5.3"
|
||||||
|
|
||||||
|
inline-style-parser@0.1.1:
|
||||||
|
version "0.1.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/inline-style-parser/-/inline-style-parser-0.1.1.tgz#ec8a3b429274e9c0a1f1c4ffa9453a7fef72cea1"
|
||||||
|
integrity sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==
|
||||||
|
|
||||||
inquirer@7.0.4:
|
inquirer@7.0.4:
|
||||||
version "7.0.4"
|
version "7.0.4"
|
||||||
resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-7.0.4.tgz#99af5bde47153abca23f5c7fc30db247f39da703"
|
resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-7.0.4.tgz#99af5bde47153abca23f5c7fc30db247f39da703"
|
||||||
@@ -14348,9 +14400,9 @@ js-yaml@^3.6.1, js-yaml@^3.9.0:
|
|||||||
esprima "^4.0.0"
|
esprima "^4.0.0"
|
||||||
|
|
||||||
js-yaml@^4.0.0:
|
js-yaml@^4.0.0:
|
||||||
version "4.0.0"
|
version "4.1.0"
|
||||||
resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.0.0.tgz#f426bc0ff4b4051926cd588c71113183409a121f"
|
resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602"
|
||||||
integrity sha512-pqon0s+4ScYUvX30wxQi3PogGFAlUyH0awepWvwkj4jD4v+ova3RiYw8bmA6x2rDrEaj8i/oWKoRxpVNW+Re8Q==
|
integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==
|
||||||
dependencies:
|
dependencies:
|
||||||
argparse "^2.0.1"
|
argparse "^2.0.1"
|
||||||
|
|
||||||
@@ -15022,11 +15074,6 @@ lodash._reinterpolate@^3.0.0:
|
|||||||
resolved "https://registry.yarnpkg.com/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz#0ccf2d89166af03b3663c796538b75ac6e114d9d"
|
resolved "https://registry.yarnpkg.com/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz#0ccf2d89166af03b3663c796538b75ac6e114d9d"
|
||||||
integrity sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0=
|
integrity sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0=
|
||||||
|
|
||||||
lodash.camelcase@^4.3.0:
|
|
||||||
version "4.3.0"
|
|
||||||
resolved "https://registry.yarnpkg.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz#b28aa6288a2b9fc651035c7711f65ab6190331a6"
|
|
||||||
integrity sha1-soqmKIorn8ZRA1x3EfZathkDMaY=
|
|
||||||
|
|
||||||
lodash.clonedeep@4.5.0, lodash.clonedeep@^4.5.0:
|
lodash.clonedeep@4.5.0, lodash.clonedeep@^4.5.0:
|
||||||
version "4.5.0"
|
version "4.5.0"
|
||||||
resolved "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz#e23f3f9c4f8fbdde872529c1071857a086e5ccef"
|
resolved "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz#e23f3f9c4f8fbdde872529c1071857a086e5ccef"
|
||||||
@@ -15360,18 +15407,18 @@ md5.js@^1.3.4:
|
|||||||
inherits "^2.0.1"
|
inherits "^2.0.1"
|
||||||
safe-buffer "^5.1.2"
|
safe-buffer "^5.1.2"
|
||||||
|
|
||||||
mdast-add-list-metadata@1.0.1:
|
|
||||||
version "1.0.1"
|
|
||||||
resolved "https://registry.yarnpkg.com/mdast-add-list-metadata/-/mdast-add-list-metadata-1.0.1.tgz#95e73640ce2fc1fa2dcb7ec443d09e2bfe7db4cf"
|
|
||||||
integrity sha512-fB/VP4MJ0LaRsog7hGPxgOrSL3gE/2uEdZyDuSEnKCv/8IkYHiDkIQSbChiJoHyxZZXZ9bzckyRk+vNxFzh8rA==
|
|
||||||
dependencies:
|
|
||||||
unist-util-visit-parents "1.1.2"
|
|
||||||
|
|
||||||
mdast-comment-marker@^1.0.0:
|
mdast-comment-marker@^1.0.0:
|
||||||
version "1.1.2"
|
version "1.1.2"
|
||||||
resolved "https://registry.yarnpkg.com/mdast-comment-marker/-/mdast-comment-marker-1.1.2.tgz#5ad2e42cfcc41b92a10c1421a98c288d7b447a6d"
|
resolved "https://registry.yarnpkg.com/mdast-comment-marker/-/mdast-comment-marker-1.1.2.tgz#5ad2e42cfcc41b92a10c1421a98c288d7b447a6d"
|
||||||
integrity sha512-vTFXtmbbF3rgnTh3Zl3irso4LtvwUq/jaDvT2D1JqTGAwaipcS7RpTxzi6KjoRqI9n2yuAhzLDAC8xVTF3XYVQ==
|
integrity sha512-vTFXtmbbF3rgnTh3Zl3irso4LtvwUq/jaDvT2D1JqTGAwaipcS7RpTxzi6KjoRqI9n2yuAhzLDAC8xVTF3XYVQ==
|
||||||
|
|
||||||
|
mdast-util-definitions@^4.0.0:
|
||||||
|
version "4.0.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/mdast-util-definitions/-/mdast-util-definitions-4.0.0.tgz#c5c1a84db799173b4dcf7643cda999e440c24db2"
|
||||||
|
integrity sha512-k8AJ6aNnUkB7IE+5azR9h81O5EQ/cTDXtWdMq9Kk5KcEW/8ritU5CeLg/9HhOC++nALHBlaogJ5jz0Ybk3kPMQ==
|
||||||
|
dependencies:
|
||||||
|
unist-util-visit "^2.0.0"
|
||||||
|
|
||||||
mdast-util-find-and-replace@^1.1.0:
|
mdast-util-find-and-replace@^1.1.0:
|
||||||
version "1.1.1"
|
version "1.1.1"
|
||||||
resolved "https://registry.yarnpkg.com/mdast-util-find-and-replace/-/mdast-util-find-and-replace-1.1.1.tgz#b7db1e873f96f66588c321f1363069abf607d1b5"
|
resolved "https://registry.yarnpkg.com/mdast-util-find-and-replace/-/mdast-util-find-and-replace-1.1.1.tgz#b7db1e873f96f66588c321f1363069abf607d1b5"
|
||||||
@@ -15446,6 +15493,20 @@ mdast-util-heading-style@^1.0.2:
|
|||||||
resolved "https://registry.yarnpkg.com/mdast-util-heading-style/-/mdast-util-heading-style-1.0.6.tgz#6410418926fd5673d40f519406b35d17da10e3c5"
|
resolved "https://registry.yarnpkg.com/mdast-util-heading-style/-/mdast-util-heading-style-1.0.6.tgz#6410418926fd5673d40f519406b35d17da10e3c5"
|
||||||
integrity sha512-8ZuuegRqS0KESgjAGW8zTx4tJ3VNIiIaGFNEzFpRSAQBavVc7AvOo9I4g3crcZBfYisHs4seYh0rAVimO6HyOw==
|
integrity sha512-8ZuuegRqS0KESgjAGW8zTx4tJ3VNIiIaGFNEzFpRSAQBavVc7AvOo9I4g3crcZBfYisHs4seYh0rAVimO6HyOw==
|
||||||
|
|
||||||
|
mdast-util-to-hast@^10.2.0:
|
||||||
|
version "10.2.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/mdast-util-to-hast/-/mdast-util-to-hast-10.2.0.tgz#61875526a017d8857b71abc9333942700b2d3604"
|
||||||
|
integrity sha512-JoPBfJ3gBnHZ18icCwHR50orC9kNH81tiR1gs01D8Q5YpV6adHNO9nKNuFBCJQ941/32PT1a63UF/DitmS3amQ==
|
||||||
|
dependencies:
|
||||||
|
"@types/mdast" "^3.0.0"
|
||||||
|
"@types/unist" "^2.0.0"
|
||||||
|
mdast-util-definitions "^4.0.0"
|
||||||
|
mdurl "^1.0.0"
|
||||||
|
unist-builder "^2.0.0"
|
||||||
|
unist-util-generated "^1.0.0"
|
||||||
|
unist-util-position "^3.0.0"
|
||||||
|
unist-util-visit "^2.0.0"
|
||||||
|
|
||||||
mdast-util-to-markdown@^0.6.0, mdast-util-to-markdown@^0.6.1, mdast-util-to-markdown@~0.6.0:
|
mdast-util-to-markdown@^0.6.0, mdast-util-to-markdown@^0.6.1, mdast-util-to-markdown@~0.6.0:
|
||||||
version "0.6.5"
|
version "0.6.5"
|
||||||
resolved "https://registry.yarnpkg.com/mdast-util-to-markdown/-/mdast-util-to-markdown-0.6.5.tgz#b33f67ca820d69e6cc527a93d4039249b504bebe"
|
resolved "https://registry.yarnpkg.com/mdast-util-to-markdown/-/mdast-util-to-markdown-0.6.5.tgz#b33f67ca820d69e6cc527a93d4039249b504bebe"
|
||||||
@@ -15478,6 +15539,11 @@ mdn-data@2.0.6:
|
|||||||
resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.6.tgz#852dc60fcaa5daa2e8cf6c9189c440ed3e042978"
|
resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.6.tgz#852dc60fcaa5daa2e8cf6c9189c440ed3e042978"
|
||||||
integrity sha512-rQvjv71olwNHgiTbfPZFkJtjNMciWgswYeciZhtvWLO8bmX3TnhyA62I6sTWOyZssWHJJjY6/KiWwqQsWWsqOA==
|
integrity sha512-rQvjv71olwNHgiTbfPZFkJtjNMciWgswYeciZhtvWLO8bmX3TnhyA62I6sTWOyZssWHJJjY6/KiWwqQsWWsqOA==
|
||||||
|
|
||||||
|
mdurl@^1.0.0:
|
||||||
|
version "1.0.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/mdurl/-/mdurl-1.0.1.tgz#fe85b2ec75a59037f2adfec100fd6c601761152e"
|
||||||
|
integrity sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4=
|
||||||
|
|
||||||
media-typer@0.3.0:
|
media-typer@0.3.0:
|
||||||
version "0.3.0"
|
version "0.3.0"
|
||||||
resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748"
|
resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748"
|
||||||
@@ -16978,6 +17044,11 @@ parse5@^3.0.1:
|
|||||||
dependencies:
|
dependencies:
|
||||||
"@types/node" "*"
|
"@types/node" "*"
|
||||||
|
|
||||||
|
parse5@^6.0.0:
|
||||||
|
version "6.0.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/parse5/-/parse5-6.0.1.tgz#e1a1c085c569b3dc08321184f19a39cc27f7c30b"
|
||||||
|
integrity sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==
|
||||||
|
|
||||||
parseurl@^1.3.2, parseurl@~1.3.2, parseurl@~1.3.3:
|
parseurl@^1.3.2, parseurl@~1.3.2, parseurl@~1.3.3:
|
||||||
version "1.3.3"
|
version "1.3.3"
|
||||||
resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4"
|
resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4"
|
||||||
@@ -17813,6 +17884,13 @@ property-information@^5.0.0:
|
|||||||
dependencies:
|
dependencies:
|
||||||
xtend "^4.0.0"
|
xtend "^4.0.0"
|
||||||
|
|
||||||
|
property-information@^5.3.0:
|
||||||
|
version "5.6.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/property-information/-/property-information-5.6.0.tgz#61675545fb23002f245c6540ec46077d4da3ed69"
|
||||||
|
integrity sha512-YUHSPk+A30YPv+0Qf8i9Mbfe/C0hdPXk1s1jPVToV8pk8BQtpw10ct89Eo7OWkutrwqvT0eicAxlOg3dOAu8JA==
|
||||||
|
dependencies:
|
||||||
|
xtend "^4.0.0"
|
||||||
|
|
||||||
proto-list@~1.2.1:
|
proto-list@~1.2.1:
|
||||||
version "1.2.4"
|
version "1.2.4"
|
||||||
resolved "https://registry.yarnpkg.com/proto-list/-/proto-list-1.2.4.tgz#212d5bfe1318306a420f6402b8e26ff39647a849"
|
resolved "https://registry.yarnpkg.com/proto-list/-/proto-list-1.2.4.tgz#212d5bfe1318306a420f6402b8e26ff39647a849"
|
||||||
@@ -17984,11 +18062,6 @@ ramda@^0.21.0:
|
|||||||
resolved "https://registry.yarnpkg.com/ramda/-/ramda-0.21.0.tgz#a001abedb3ff61077d4ff1d577d44de77e8d0a35"
|
resolved "https://registry.yarnpkg.com/ramda/-/ramda-0.21.0.tgz#a001abedb3ff61077d4ff1d577d44de77e8d0a35"
|
||||||
integrity sha1-oAGr7bP/YQd9T/HVd9RN536NCjU=
|
integrity sha1-oAGr7bP/YQd9T/HVd9RN536NCjU=
|
||||||
|
|
||||||
ramda@^0.27.1:
|
|
||||||
version "0.27.1"
|
|
||||||
resolved "https://registry.yarnpkg.com/ramda/-/ramda-0.27.1.tgz#66fc2df3ef873874ffc2da6aa8984658abacf5c9"
|
|
||||||
integrity sha512-PgIdVpn5y5Yns8vqb8FzBUEYn98V3xcPgawAkkgj0YJ0qDsnHCiNmZYfOGMgOvoB0eWFLpYbhxUR3mxfDIMvpw==
|
|
||||||
|
|
||||||
ramda@~0.26.1:
|
ramda@~0.26.1:
|
||||||
version "0.26.1"
|
version "0.26.1"
|
||||||
resolved "https://registry.yarnpkg.com/ramda/-/ramda-0.26.1.tgz#8d41351eb8111c55353617fc3bbffad8e4d35d06"
|
resolved "https://registry.yarnpkg.com/ramda/-/ramda-0.26.1.tgz#8d41351eb8111c55353617fc3bbffad8e4d35d06"
|
||||||
@@ -18235,7 +18308,7 @@ react-inspector@^5.0.1:
|
|||||||
is-dom "^1.0.0"
|
is-dom "^1.0.0"
|
||||||
prop-types "^15.0.0"
|
prop-types "^15.0.0"
|
||||||
|
|
||||||
react-is@^16.12.0, react-is@^16.13.1, react-is@^16.6.0, react-is@^16.7.0, react-is@^16.8.1, react-is@^16.8.4, react-is@^16.8.6:
|
react-is@^16.12.0, react-is@^16.13.1, react-is@^16.6.0, react-is@^16.7.0, react-is@^16.8.1, react-is@^16.8.4:
|
||||||
version "16.13.1"
|
version "16.13.1"
|
||||||
resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4"
|
resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4"
|
||||||
integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==
|
integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==
|
||||||
@@ -18250,22 +18323,6 @@ react-lifecycles-compat@^3.0.0, react-lifecycles-compat@^3.0.4:
|
|||||||
resolved "https://registry.yarnpkg.com/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz#4f1a273afdfc8f3488a8c516bfda78f872352362"
|
resolved "https://registry.yarnpkg.com/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz#4f1a273afdfc8f3488a8c516bfda78f872352362"
|
||||||
integrity sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA==
|
integrity sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA==
|
||||||
|
|
||||||
react-markdown@^5.0.3:
|
|
||||||
version "5.0.3"
|
|
||||||
resolved "https://registry.yarnpkg.com/react-markdown/-/react-markdown-5.0.3.tgz#41040ea7a9324b564b328fb81dd6c04f2a5373ac"
|
|
||||||
integrity sha512-jDWOc1AvWn0WahpjW6NK64mtx6cwjM4iSsLHJPNBqoAgGOVoIdJMqaKX4++plhOtdd4JksdqzlDibgPx6B/M2w==
|
|
||||||
dependencies:
|
|
||||||
"@types/mdast" "^3.0.3"
|
|
||||||
"@types/unist" "^2.0.3"
|
|
||||||
html-to-react "^1.3.4"
|
|
||||||
mdast-add-list-metadata "1.0.1"
|
|
||||||
prop-types "^15.7.2"
|
|
||||||
react-is "^16.8.6"
|
|
||||||
remark-parse "^9.0.0"
|
|
||||||
unified "^9.0.0"
|
|
||||||
unist-util-visit "^2.0.0"
|
|
||||||
xtend "^4.0.1"
|
|
||||||
|
|
||||||
react-popper-tooltip@^2.8.3:
|
react-popper-tooltip@^2.8.3:
|
||||||
version "2.11.1"
|
version "2.11.1"
|
||||||
resolved "https://registry.yarnpkg.com/react-popper-tooltip/-/react-popper-tooltip-2.11.1.tgz#3c4bdfd8bc10d1c2b9a162e859bab8958f5b2644"
|
resolved "https://registry.yarnpkg.com/react-popper-tooltip/-/react-popper-tooltip-2.11.1.tgz#3c4bdfd8bc10d1c2b9a162e859bab8958f5b2644"
|
||||||
@@ -18824,6 +18881,39 @@ regjsparser@^0.6.4:
|
|||||||
dependencies:
|
dependencies:
|
||||||
jsesc "~0.5.0"
|
jsesc "~0.5.0"
|
||||||
|
|
||||||
|
rehype-raw@^5.1.0:
|
||||||
|
version "5.1.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/rehype-raw/-/rehype-raw-5.1.0.tgz#66d5e8d7188ada2d31bc137bc19a1000cf2c6b7e"
|
||||||
|
integrity sha512-MDvHAb/5mUnif2R+0IPCYJU8WjHa9UzGtM/F4AVy5GixPlDZ1z3HacYy4xojDU+uBa+0X/3PIfyQI26/2ljJNA==
|
||||||
|
dependencies:
|
||||||
|
hast-util-raw "^6.1.0"
|
||||||
|
|
||||||
|
rehype-react@^6.2.0:
|
||||||
|
version "6.2.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/rehype-react/-/rehype-react-6.2.0.tgz#705a5b3055548848ff8a7778c978fd368b0d4425"
|
||||||
|
integrity sha512-XpR3p8ejdJ5CSEKqAfASIrkD+KaHLy0JOqXu9zM32tvkr1cUeM7AeidF6Q8eQ/wtMvcJb+h/L4QRwg1eFwBggQ==
|
||||||
|
dependencies:
|
||||||
|
"@mapbox/hast-util-table-cell-style" "^0.1.3"
|
||||||
|
hast-to-hyperscript "^9.0.0"
|
||||||
|
|
||||||
|
rehype-sanitize@^4.0.0:
|
||||||
|
version "4.0.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/rehype-sanitize/-/rehype-sanitize-4.0.0.tgz#b5241cf66bcedc49cd4e924a5f7a252f00a151ad"
|
||||||
|
integrity sha512-ZCr/iQRr4JeqPjun5i9CHHILVY7i45VnLu1CkkibDrSyFQ7dTLSvw8OIQpHhS4RSh9h/9GidxFw1bRb0LOxIag==
|
||||||
|
dependencies:
|
||||||
|
hast-util-sanitize "^3.0.0"
|
||||||
|
|
||||||
|
rehype-slug@^4.0.1:
|
||||||
|
version "4.0.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/rehype-slug/-/rehype-slug-4.0.1.tgz#313274501cffa997bd52dd57bf2da5851959747a"
|
||||||
|
integrity sha512-KIlJALf9WfHFF21icwTd2yI2IP+RQRweaxH9ChVGQwRYy36+hiomG4ZSe0yQRyCt+D/vE39LbAcOI/h4O4GPhA==
|
||||||
|
dependencies:
|
||||||
|
github-slugger "^1.1.1"
|
||||||
|
hast-util-has-property "^1.0.0"
|
||||||
|
hast-util-heading-rank "^1.0.0"
|
||||||
|
hast-util-to-string "^1.0.0"
|
||||||
|
unist-util-visit "^2.0.0"
|
||||||
|
|
||||||
relateurl@^0.2.7:
|
relateurl@^0.2.7:
|
||||||
version "0.2.7"
|
version "0.2.7"
|
||||||
resolved "https://registry.yarnpkg.com/relateurl/-/relateurl-0.2.7.tgz#54dbf377e51440aca90a4cd274600d3ff2d888a9"
|
resolved "https://registry.yarnpkg.com/relateurl/-/relateurl-0.2.7.tgz#54dbf377e51440aca90a4cd274600d3ff2d888a9"
|
||||||
@@ -19051,6 +19141,13 @@ remark-preset-lint-recommended@^5.0.0:
|
|||||||
remark-lint-no-unused-definitions "^2.0.0"
|
remark-lint-no-unused-definitions "^2.0.0"
|
||||||
remark-lint-ordered-list-marker-style "^2.0.0"
|
remark-lint-ordered-list-marker-style "^2.0.0"
|
||||||
|
|
||||||
|
remark-rehype@^8.0.0:
|
||||||
|
version "8.1.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/remark-rehype/-/remark-rehype-8.1.0.tgz#610509a043484c1e697437fa5eb3fd992617c945"
|
||||||
|
integrity sha512-EbCu9kHgAxKmW1yEYjx3QafMyGY3q8noUbNUI5xyKbaFP89wbhDrKxyIQNukNYthzjNHZu6J7hwFg7hRm1svYA==
|
||||||
|
dependencies:
|
||||||
|
mdast-util-to-hast "^10.2.0"
|
||||||
|
|
||||||
remark-stringify@^9.0.0:
|
remark-stringify@^9.0.0:
|
||||||
version "9.0.1"
|
version "9.0.1"
|
||||||
resolved "https://registry.yarnpkg.com/remark-stringify/-/remark-stringify-9.0.1.tgz#576d06e910548b0a7191a71f27b33f1218862894"
|
resolved "https://registry.yarnpkg.com/remark-stringify/-/remark-stringify-9.0.1.tgz#576d06e910548b0a7191a71f27b33f1218862894"
|
||||||
@@ -20509,6 +20606,13 @@ style-loader@^1.0.0, style-loader@^1.2.1:
|
|||||||
loader-utils "^2.0.0"
|
loader-utils "^2.0.0"
|
||||||
schema-utils "^2.6.6"
|
schema-utils "^2.6.6"
|
||||||
|
|
||||||
|
style-to-object@^0.3.0:
|
||||||
|
version "0.3.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/style-to-object/-/style-to-object-0.3.0.tgz#b1b790d205991cc783801967214979ee19a76e46"
|
||||||
|
integrity sha512-CzFnRRXhzWIdItT3OmF8SQfWyahHhjq3HwcMNCNLn+N7klOOqPjMeG/4JSu77D7ypZdGvSzvkrbyeTMizz2VrA==
|
||||||
|
dependencies:
|
||||||
|
inline-style-parser "0.1.1"
|
||||||
|
|
||||||
styled-components@^5.1.0:
|
styled-components@^5.1.0:
|
||||||
version "5.2.0"
|
version "5.2.0"
|
||||||
resolved "https://registry.yarnpkg.com/styled-components/-/styled-components-5.2.0.tgz#6dcb5aa8a629c84b8d5ab34b7167e3e0c6f7ed74"
|
resolved "https://registry.yarnpkg.com/styled-components/-/styled-components-5.2.0.tgz#6dcb5aa8a629c84b8d5ab34b7167e3e0c6f7ed74"
|
||||||
@@ -21357,7 +21461,7 @@ unified-message-control@^3.0.0:
|
|||||||
unist-util-visit "^2.0.0"
|
unist-util-visit "^2.0.0"
|
||||||
vfile-location "^3.0.0"
|
vfile-location "^3.0.0"
|
||||||
|
|
||||||
unified@^9.0.0, unified@^9.1.0:
|
unified@^9.1.0, unified@^9.2.1:
|
||||||
version "9.2.1"
|
version "9.2.1"
|
||||||
resolved "https://registry.yarnpkg.com/unified/-/unified-9.2.1.tgz#ae18d5674c114021bfdbdf73865ca60f410215a3"
|
resolved "https://registry.yarnpkg.com/unified/-/unified-9.2.1.tgz#ae18d5674c114021bfdbdf73865ca60f410215a3"
|
||||||
integrity sha512-juWjuI8Z4xFg8pJbnEZ41b5xjGUWGHqXALmBZ3FC3WX0PIx1CZBIIJ6mXbYMcf6Yw4Fi0rFUTA1cdz/BglbOhA==
|
integrity sha512-juWjuI8Z4xFg8pJbnEZ41b5xjGUWGHqXALmBZ3FC3WX0PIx1CZBIIJ6mXbYMcf6Yw4Fi0rFUTA1cdz/BglbOhA==
|
||||||
@@ -21403,6 +21507,11 @@ unique-slug@^2.0.0:
|
|||||||
dependencies:
|
dependencies:
|
||||||
imurmurhash "^0.1.4"
|
imurmurhash "^0.1.4"
|
||||||
|
|
||||||
|
unist-builder@^2.0.0:
|
||||||
|
version "2.0.3"
|
||||||
|
resolved "https://registry.yarnpkg.com/unist-builder/-/unist-builder-2.0.3.tgz#77648711b5d86af0942f334397a33c5e91516436"
|
||||||
|
integrity sha512-f98yt5pnlMWlzP539tPc4grGMsFaQQlP/vM396b00jngsiINumNmsY8rkXjfoi1c6QaM8nQ3vaGDuoKWbe/1Uw==
|
||||||
|
|
||||||
unist-util-generated@^1.0.0, unist-util-generated@^1.1.0, unist-util-generated@^1.1.6:
|
unist-util-generated@^1.0.0, unist-util-generated@^1.1.0, unist-util-generated@^1.1.6:
|
||||||
version "1.1.6"
|
version "1.1.6"
|
||||||
resolved "https://registry.yarnpkg.com/unist-util-generated/-/unist-util-generated-1.1.6.tgz#5ab51f689e2992a472beb1b35f2ce7ff2f324d4b"
|
resolved "https://registry.yarnpkg.com/unist-util-generated/-/unist-util-generated-1.1.6.tgz#5ab51f689e2992a472beb1b35f2ce7ff2f324d4b"
|
||||||
@@ -21415,6 +21524,11 @@ unist-util-inspect@^5.0.0:
|
|||||||
dependencies:
|
dependencies:
|
||||||
is-empty "^1.0.0"
|
is-empty "^1.0.0"
|
||||||
|
|
||||||
|
unist-util-is@^3.0.0:
|
||||||
|
version "3.0.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/unist-util-is/-/unist-util-is-3.0.0.tgz#d9e84381c2468e82629e4a5be9d7d05a2dd324cd"
|
||||||
|
integrity sha512-sVZZX3+kspVNmLWBPAB6r+7D9ZgAFPNWm66f7YNb420RlQSbn+n8rG8dGZSkrER7ZIXGQYNm5pqC3v3HopH24A==
|
||||||
|
|
||||||
unist-util-is@^4.0.0:
|
unist-util-is@^4.0.0:
|
||||||
version "4.0.4"
|
version "4.0.4"
|
||||||
resolved "https://registry.yarnpkg.com/unist-util-is/-/unist-util-is-4.0.4.tgz#3e9e8de6af2eb0039a59f50c9b3e99698a924f50"
|
resolved "https://registry.yarnpkg.com/unist-util-is/-/unist-util-is-4.0.4.tgz#3e9e8de6af2eb0039a59f50c9b3e99698a924f50"
|
||||||
@@ -21432,10 +21546,12 @@ unist-util-stringify-position@^2.0.0:
|
|||||||
dependencies:
|
dependencies:
|
||||||
"@types/unist" "^2.0.2"
|
"@types/unist" "^2.0.2"
|
||||||
|
|
||||||
unist-util-visit-parents@1.1.2:
|
unist-util-visit-parents@^2.0.0:
|
||||||
version "1.1.2"
|
version "2.1.2"
|
||||||
resolved "https://registry.yarnpkg.com/unist-util-visit-parents/-/unist-util-visit-parents-1.1.2.tgz#f6e3afee8bdbf961c0e6f028ea3c0480028c3d06"
|
resolved "https://registry.yarnpkg.com/unist-util-visit-parents/-/unist-util-visit-parents-2.1.2.tgz#25e43e55312166f3348cae6743588781d112c1e9"
|
||||||
integrity sha512-yvo+MMLjEwdc3RhhPYSximset7rwjMrdt9E41Smmvg25UQIenzrN83cRnF1JMzoMi9zZOQeYXHSDf7p+IQkW3Q==
|
integrity sha512-DyN5vD4NE3aSeB+PXYNKxzGsfocxp6asDc2XXE3b0ekO2BaRUpBicbbUygfSvYfUz1IkmjFR1YF7dPklraMZ2g==
|
||||||
|
dependencies:
|
||||||
|
unist-util-is "^3.0.0"
|
||||||
|
|
||||||
unist-util-visit-parents@^3.0.0:
|
unist-util-visit-parents@^3.0.0:
|
||||||
version "3.1.1"
|
version "3.1.1"
|
||||||
@@ -21445,6 +21561,13 @@ unist-util-visit-parents@^3.0.0:
|
|||||||
"@types/unist" "^2.0.0"
|
"@types/unist" "^2.0.0"
|
||||||
unist-util-is "^4.0.0"
|
unist-util-is "^4.0.0"
|
||||||
|
|
||||||
|
unist-util-visit@^1.3.0:
|
||||||
|
version "1.4.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/unist-util-visit/-/unist-util-visit-1.4.1.tgz#4724aaa8486e6ee6e26d7ff3c8685960d560b1e3"
|
||||||
|
integrity sha512-AvGNk7Bb//EmJZyhtRUnNMEpId/AZ5Ph/KUpTI09WHQuDZHKovQ1oEv3mfmKpWKtoMzyMC4GLBm1Zy5k12fjIw==
|
||||||
|
dependencies:
|
||||||
|
unist-util-visit-parents "^2.0.0"
|
||||||
|
|
||||||
unist-util-visit@^2.0.0, unist-util-visit@^2.0.3:
|
unist-util-visit@^2.0.0, unist-util-visit@^2.0.3:
|
||||||
version "2.0.3"
|
version "2.0.3"
|
||||||
resolved "https://registry.yarnpkg.com/unist-util-visit/-/unist-util-visit-2.0.3.tgz#c3703893146df47203bb8a9795af47d7b971208c"
|
resolved "https://registry.yarnpkg.com/unist-util-visit/-/unist-util-visit-2.0.3.tgz#c3703893146df47203bb8a9795af47d7b971208c"
|
||||||
@@ -21725,7 +21848,7 @@ verror@1.10.0, verror@^1.9.0:
|
|||||||
core-util-is "1.0.2"
|
core-util-is "1.0.2"
|
||||||
extsprintf "^1.2.0"
|
extsprintf "^1.2.0"
|
||||||
|
|
||||||
vfile-location@^3.0.0, vfile-location@^3.1.0:
|
vfile-location@^3.0.0, vfile-location@^3.1.0, vfile-location@^3.2.0:
|
||||||
version "3.2.0"
|
version "3.2.0"
|
||||||
resolved "https://registry.yarnpkg.com/vfile-location/-/vfile-location-3.2.0.tgz#d8e41fbcbd406063669ebf6c33d56ae8721d0f3c"
|
resolved "https://registry.yarnpkg.com/vfile-location/-/vfile-location-3.2.0.tgz#d8e41fbcbd406063669ebf6c33d56ae8721d0f3c"
|
||||||
integrity sha512-aLEIZKv/oxuCDZ8lkJGhuhztf/BW4M+iHdCwglA/eWc+vtuRFJj8EtgceYFX4LRjOhCAAiNHsKGssC6onJ+jbA==
|
integrity sha512-aLEIZKv/oxuCDZ8lkJGhuhztf/BW4M+iHdCwglA/eWc+vtuRFJj8EtgceYFX4LRjOhCAAiNHsKGssC6onJ+jbA==
|
||||||
@@ -21853,6 +21976,11 @@ wcwidth@^1.0.0:
|
|||||||
dependencies:
|
dependencies:
|
||||||
defaults "^1.0.3"
|
defaults "^1.0.3"
|
||||||
|
|
||||||
|
web-namespaces@^1.0.0:
|
||||||
|
version "1.1.4"
|
||||||
|
resolved "https://registry.yarnpkg.com/web-namespaces/-/web-namespaces-1.1.4.tgz#bc98a3de60dadd7faefc403d1076d529f5e030ec"
|
||||||
|
integrity sha512-wYxSGajtmoP4WxfejAPIr4l0fVh+jeMXZb08wNc0tMg6xsfZXj3cECqIK0G7ZAqUq0PP8WlMDtaOGVBTAWztNw==
|
||||||
|
|
||||||
webidl-conversions@^4.0.2:
|
webidl-conversions@^4.0.2:
|
||||||
version "4.0.2"
|
version "4.0.2"
|
||||||
resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-4.0.2.tgz#a855980b1f0b6b359ba1d5d9fb39ae941faa63ad"
|
resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-4.0.2.tgz#a855980b1f0b6b359ba1d5d9fb39ae941faa63ad"
|
||||||
|
|||||||
Reference in New Issue
Block a user