diff --git a/LICENSES/OFL-1.1.txt b/LICENSES/OFL-1.1.txt deleted file mode 100644 index 0da42f86b..000000000 --- a/LICENSES/OFL-1.1.txt +++ /dev/null @@ -1,84 +0,0 @@ -SIL OPEN FONT LICENSE - -Version 1.1 - 26 February 2007 - -PREAMBLE - -The goals of the Open Font License (OFL) are to stimulate worldwide development -of collaborative font projects, to support the font creation efforts of academic -and linguistic communities, and to provide a free and open framework in which -fonts may be shared and improved in partnership with others. - -The OFL allows the licensed fonts to be used, studied, modified and redistributed -freely as long as they are not sold by themselves. The fonts, including any -derivative works, can be bundled, embedded, redistributed and/or sold with -any software provided that any reserved names are not used by derivative works. -The fonts and derivatives, however, cannot be released under any other type -of license. The requirement for fonts to remain under this license does not -apply to any document created using the fonts or their derivatives. - -DEFINITIONS - -"Font Software" refers to the set of files released by the Copyright Holder(s) -under this license and clearly marked as such. This may include source files, -build scripts and documentation. - -"Reserved Font Name" refers to any names specified as such after the copyright -statement(s). - -"Original Version" refers to the collection of Font Software components as -distributed by the Copyright Holder(s). - -"Modified Version" refers to any derivative made by adding to, deleting, or -substituting — in part or in whole — any of the components of the Original -Version, by changing formats or by porting the Font Software to a new environment. - -"Author" refers to any designer, engineer, programmer, technical writer or -other person who contributed to the Font Software. - -PERMISSION & CONDITIONS - -Permission is hereby granted, free of charge, to any person obtaining a copy -of the Font Software, to use, study, copy, merge, embed, modify, redistribute, -and sell modified and unmodified copies of the Font Software, subject to the -following conditions: - -1) Neither the Font Software nor any of its individual components, in Original -or Modified Versions, may be sold by itself. - -2) Original or Modified Versions of the Font Software may be bundled, redistributed -and/or sold with any software, provided that each copy contains the above -copyright notice and this license. These can be included either as stand-alone -text files, human-readable headers or in the appropriate machine-readable -metadata fields within text or binary files as long as those fields can be -easily viewed by the user. - -3) No Modified Version of the Font Software may use the Reserved Font Name(s) -unless explicit written permission is granted by the corresponding Copyright -Holder. This restriction only applies to the primary font name as presented -to the users. - -4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font Software -shall not be used to promote, endorse or advertise any Modified Version, except -to acknowledge the contribution(s) of the Copyright Holder(s) and the Author(s) -or with their explicit written permission. - -5) The Font Software, modified or unmodified, in part or in whole, must be -distributed entirely under this license, and must not be distributed under -any other license. The requirement for fonts to remain under this license -does not apply to any document created using the Font Software. - -TERMINATION - -This license becomes null and void if any of the above conditions are not met. - -DISCLAIMER - -THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF COPYRIGHT, PATENT, -TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE -FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, INCLUDING ANY GENERAL, SPECIAL, -INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, WHETHER IN AN ACTION OF CONTRACT, -TORT OR OTHERWISE, ARISING FROM, OUT OF THE USE OR INABILITY TO USE THE FONT -SOFTWARE OR FROM OTHER DEALINGS IN THE FONT SOFTWARE. diff --git a/docs/content/interface/toolbar.md b/docs/content/interface/toolbar.md index 3d6c327ac..9ae2c07fd 100644 --- a/docs/content/interface/toolbar.md +++ b/docs/content/interface/toolbar.md @@ -88,7 +88,7 @@ If some text is selected it will either put that as the link, if it thinks that inserting `name=$YourName`, a time by inserting `time=$time` or a color by inserting `color=#FFFFFF` in the `[]`. Please note that you can only specify one of those per `[]`, but you can use multiple `[]`. 5. **Emoji Picker** - This button opens the emoji picker, where you can choose an emoji or a fork awesome icon to insert into your note. + This button opens the emoji picker, where you can choose an emoji to insert into your note. ![Emoji Picker](../images/interface/toolbar/emoji.png) ## Settings diff --git a/docs/content/references/hfm.md b/docs/content/references/hfm.md index 379fe0ef8..12f321375 100644 --- a/docs/content/references/hfm.md +++ b/docs/content/references/hfm.md @@ -1,13 +1,12 @@ # HedgeDoc Flavored Markdown -HedgeDoc has its own markdown dialect which supports many features from [CommonMark][commonmark] and [Github Flavored Markdown][gfm]. It also adds some new extensions and is missing some. +HedgeDoc has its own markdown dialect which supports many features from [CommonMark][commonmark] +and [Github Flavored Markdown][gfm]. It also adds some new extensions and is missing some. These tables tell you what exactly we support in HedgeDoc 1.x (HFM 1) and HedgeDoc 2 (HFM 2). - ## Typography - | Feature | HFM 1 | HFM 2 | CommonMark | GFM | | ------------- | :---: | :---: | :---------------: | :---------------: | | bold | ☑️ | ☑️ | ☑️ | ☑️ | @@ -36,7 +35,8 @@ These tables tell you what exactly we support in HedgeDoc 1.x (HFM 1) and HedgeD | task list | ☑️ | ☑️ | | ☑️ | | defition list | ☑️ | ☑️ | | | | emoji | [Unicode 6.1][unicode-6] | [Unicode 13][unicode-13] | | | -| [ForkAwesome][fa] | ☑️ with `` | ☑️ with shortcodes | | | +| [ForkAwesome][fa] | ☑️ with `` | removed | | | +| [Bootstrap Icons][bootstrap-icons] | | ☑️ with shortcodes | | | | LaTeX | ☑️[^mj] | ☑️[^kt] | | | [^highlight]: Code blocks with a given language are rendered using syntax highlighting. @@ -59,7 +59,6 @@ These tables tell you what exactly we support in HedgeDoc 1.x (HFM 1) and HedgeD | image with given size | ☑️ | ☑️ | (☑️ with ``) | (☑️ with ``) | | table of contents | ☑️ | ☑️ | | | - ## Structural elements | Feature | HFM 1 | HFM 2 | CommonMark | GFM | @@ -70,7 +69,9 @@ These tables tell you what exactly we support in HedgeDoc 1.x (HFM 1) and HedgeD | Alerts | ☑️ | ☑️ | | | ## Embeddings -HFM 1 includes support for certain embeddings of external content by using the `{%keyword parameter %}` syntax. To increase the readability of the markdown code we decided that HFM 2 should just use plain links if possible. + +HFM 1 includes support for certain embeddings of external content by using the `{%keyword parameter %}` syntax. To +increase the readability of the markdown code we decided that HFM 2 should just use plain links if possible. | Feature | HFM 1 | HFM 2 | CommonMark | GFM | | --------------------------------------------------- | :---: | :---------------------: | :--------: | :---: | @@ -81,10 +82,13 @@ HFM 1 includes support for certain embeddings of external content by using the ` | [Speakerdeck][speakerdeck] (`{%speakerdeck ... %}`) | ☑️ | removed | | | | [GitHub Gist][gist] (`{%gist ... %}`) | ☑️ | with plain link[^embed] | | | -[^embed]: The special syntax from HFM 1 is deprecated, but will still work in HFM 2. However, a plain link to the content should be used. +[^embed]: The special syntax from HFM 1 is deprecated, but will still work in HFM 2. However, a plain link to the +content should be used. ## HTML -Besides the basic HTML typography elements (`
`, ``, ``, ``, ` `, ``, ``, ``, ``) the following more special HTML elements are supported by some specification.
+
+Besides the basic HTML typography elements (`
diff --git a/frontend/src/components/login-page/auth/utils/get-one-click-provider-metadata.ts b/frontend/src/components/login-page/auth/utils/get-one-click-provider-metadata.ts
index 92f53ee61..d92bdf0a7 100644
--- a/frontend/src/components/login-page/auth/utils/get-one-click-provider-metadata.ts
+++ b/frontend/src/components/login-page/auth/utils/get-one-click-provider-metadata.ts
@@ -6,12 +6,21 @@
import type { AuthProvider } from '../../../../api/config/types'
import { AuthProviderType } from '../../../../api/config/types'
import { Logger } from '../../../../utils/logger'
-import type { IconName } from '../../../common/fork-awesome/types'
import styles from '../via-one-click.module.scss'
+import type { Icon } from 'react-bootstrap-icons'
+import { Dropbox as IconDropbox } from 'react-bootstrap-icons'
+import { Exclamation as IconExclamation } from 'react-bootstrap-icons'
+import { Facebook as IconFacebook } from 'react-bootstrap-icons'
+import { Git as IconGit } from 'react-bootstrap-icons'
+import { Github as IconGithub } from 'react-bootstrap-icons'
+import { Google as IconGoogle } from 'react-bootstrap-icons'
+import { People as IconPeople } from 'react-bootstrap-icons'
+import { PersonRolodex as IconPersonRolodex } from 'react-bootstrap-icons'
+import { Twitter as IconTwitter } from 'react-bootstrap-icons'
export interface OneClickMetadata {
name: string
- icon: IconName
+ icon: Icon
className: string
url: string
}
@@ -33,56 +42,56 @@ export const getOneClickProviderMetadata = (provider: AuthProvider): OneClickMet
case AuthProviderType.DROPBOX:
return {
name: 'Dropbox',
- icon: 'dropbox',
+ icon: IconDropbox,
className: styles['btn-social-dropbox'],
url: getBackendAuthUrl('dropbox')
}
case AuthProviderType.FACEBOOK:
return {
name: 'Facebook',
- icon: 'facebook',
+ icon: IconFacebook,
className: styles['btn-social-facebook'],
url: getBackendAuthUrl('facebook')
}
case AuthProviderType.GITHUB:
return {
name: 'GitHub',
- icon: 'github',
+ icon: IconGithub,
className: styles['btn-social-github'],
url: getBackendAuthUrl('github')
}
case AuthProviderType.GITLAB:
return {
name: provider.providerName,
- icon: 'gitlab',
+ icon: IconGit, //TODO: gitlab icon
className: styles['btn-social-gitlab'],
url: getBackendAuthUrl(provider.identifier)
}
case AuthProviderType.GOOGLE:
return {
name: 'Google',
- icon: 'google',
+ icon: IconGoogle,
className: styles['btn-social-google'],
url: getBackendAuthUrl('google')
}
case AuthProviderType.OAUTH2:
return {
name: provider.providerName,
- icon: 'address-card',
+ icon: IconPersonRolodex,
className: 'btn-primary',
url: getBackendAuthUrl(provider.identifier)
}
case AuthProviderType.SAML:
return {
name: provider.providerName,
- icon: 'users',
+ icon: IconPeople,
className: 'btn-success',
url: getBackendAuthUrl(provider.identifier)
}
case AuthProviderType.TWITTER:
return {
name: 'Twitter',
- icon: 'twitter',
+ icon: IconTwitter,
className: styles['btn-social-twitter'],
url: getBackendAuthUrl('twitter')
}
@@ -90,7 +99,7 @@ export const getOneClickProviderMetadata = (provider: AuthProvider): OneClickMet
logger.warn('Metadata for one-click-provider does not exist', provider)
return {
name: '',
- icon: 'exclamation',
+ icon: IconExclamation,
className: '',
url: '#'
}
diff --git a/frontend/src/components/markdown-renderer/extensions/bootstrap-icons/__snapshots__/bootstrap-icon-markdown-extension.test.tsx.snap b/frontend/src/components/markdown-renderer/extensions/bootstrap-icons/__snapshots__/bootstrap-icon-markdown-extension.test.tsx.snap
new file mode 100644
index 000000000..a74cc484b
--- /dev/null
+++ b/frontend/src/components/markdown-renderer/extensions/bootstrap-icons/__snapshots__/bootstrap-icon-markdown-extension.test.tsx.snap
@@ -0,0 +1,35 @@
+// Jest Snapshot v1, https://goo.gl/fbAQLP
+
+exports[`bootstrap icon markdown extension doesn't render invalid icon 1`] = `
+`) the following more special HTML
+elements are supported by some specification.
| Feature | HedgeDocMark 1 | HedgeDocMark 2 | CommonMark | GFM |
| :-----------: | :------------: | :------------: | :--------: | :---: |
@@ -99,14 +103,27 @@ Besides the basic HTML typography elements (`
diff --git a/frontend/src/components/common/links/external-link.test.tsx b/frontend/src/components/common/links/external-link.test.tsx
index 66a61195a..6b126ae5e 100644
--- a/frontend/src/components/common/links/external-link.test.tsx
+++ b/frontend/src/components/common/links/external-link.test.tsx
@@ -5,6 +5,7 @@
*/
import { ExternalLink } from './external-link'
import { render } from '@testing-library/react'
+import { Heart as IconHeart } from 'react-bootstrap-icons'
describe('ExternalLink', () => {
const href = 'https://example.com'
@@ -14,7 +15,7 @@ describe('ExternalLink', () => {
expect(view.container).toMatchSnapshot()
})
it('renders an external link with an icon', () => {
- const view = render(
+ :bi-: +
+ + ++ +
+ + +- -
- - -
diff --git a/frontend/src/components/markdown-renderer/extensions/emoji/emoji-markdown-extension.test.tsx b/frontend/src/components/markdown-renderer/extensions/emoji/emoji-markdown-extension.test.tsx
index fcedfc162..dc0d9510f 100644
--- a/frontend/src/components/markdown-renderer/extensions/emoji/emoji-markdown-extension.test.tsx
+++ b/frontend/src/components/markdown-renderer/extensions/emoji/emoji-markdown-extension.test.tsx
@@ -24,13 +24,6 @@ describe('Emoji Markdown Extension', () => {
expect(view.container).toMatchSnapshot()
})
- it('renders a fork awesome code', () => {
- const view = render(
-