Some checks failed
Verify / Install node dependencies (push) Failing after 2s
Verify / Build packages (push) Has been skipped
Verify / Check linting & formatting (push) Has been skipped
Verify / Run unit tests (push) Has been skipped
Verify / Run e2e tests (shard 1/4) (push) Has been skipped
Verify / Run e2e tests (shard 2/4) (push) Has been skipped
Verify / Run e2e tests (shard 3/4) (push) Has been skipped
Verify / Run e2e tests (shard 4/4) (push) Has been skipped
Publish / Resolve publish config (push) Failing after 2s
Publish / Send notification to Slack (push) Has been skipped
Publish / Send failure notification to Slack (push) Failing after 8s
Verify / Merge e2e reports (push) Has been skipped
Publish / Build (push) Has been skipped
Publish / Bump Versions OR Release to Registry (push) Has been skipped
41 lines
919 B
TypeScript
41 lines
919 B
TypeScript
const waitUntilElementExists = (selector: any, callback: (element: Element) => void) => {
|
|
const element = document.querySelector(selector)
|
|
|
|
if (element) {
|
|
return callback(element)
|
|
}
|
|
|
|
setTimeout(() => waitUntilElementExists(selector, callback), 500)
|
|
}
|
|
|
|
const sendData = (eventName: string, data: any) => {
|
|
const event = new CustomEvent(eventName, { detail: data })
|
|
|
|
window.parent.document.dispatchEvent(event)
|
|
}
|
|
|
|
export function splitName(name: string) {
|
|
const parts = name.split('/')
|
|
|
|
if (parts.length !== 3) {
|
|
throw Error(
|
|
'Demos must always be within exactly one category. Nested categories are not supported.',
|
|
)
|
|
}
|
|
|
|
return parts
|
|
}
|
|
|
|
export function debug() {
|
|
sendData('editor', null)
|
|
// @ts-ignore
|
|
sendData('source', window.source)
|
|
|
|
waitUntilElementExists('.tiptap', element => {
|
|
// @ts-ignore
|
|
const editor = element.editor
|
|
|
|
sendData('editor', editor)
|
|
})
|
|
}
|