mirror of
https://github.com/outline/outline.git
synced 2026-06-13 11:25:03 +03:00
feat: Support embed configuration (#3980)
* wip
* stash
* fix: make authenticationId nullable fk
* fix: apply generics to resolve compile time type errors
* fix: loosen integration settings
* chore: refactor into functional component
* feat: pass integrations all the way to embeds
* perf: avoid re-fetching integrations
* fix: change attr name to avoid type overlap
* feat: use hostname from embed settings in matcher
* Revert "feat: use hostname from embed settings in matcher"
This reverts commit e7485d9cda.
* feat: refactor into a class
* chore: refactor url regex formation as a util
* fix: escape regex special chars
* fix: remove in-house escapeRegExp in favor of lodash's
* fix: sanitize url
* perf: memoize embeds
* fix: rename hostname to url and allow spreading entire settings instead of just url
* fix: replace diagrams with drawio
* fix: rename
* fix: support self-hosted and saas both
* fix: assert on settings url
* fix: move embed integrations loading to hook
* fix: address review comments
* fix: use observer in favor of explicit state setters
* fix: refactor useEmbedIntegrations into useEmbeds
* fix: use translations for toasts
Co-authored-by: Tom Moor <tom.moor@gmail.com>
This commit is contained in:
@@ -50,6 +50,17 @@ export const assertEmail = (value = "", message?: string) => {
|
||||
}
|
||||
};
|
||||
|
||||
export const assertUrl = (value = "", message?: string) => {
|
||||
if (
|
||||
!validator.isURL(value, {
|
||||
protocols: ["http", "https"],
|
||||
require_valid_protocol: true,
|
||||
})
|
||||
) {
|
||||
throw ValidationError(message ?? `${value} is an invalid url!`);
|
||||
}
|
||||
};
|
||||
|
||||
export const assertUuid = (value: unknown, message?: string) => {
|
||||
if (typeof value !== "string") {
|
||||
throw ValidationError(message);
|
||||
|
||||
Reference in New Issue
Block a user