bookish-press 0.4.232 → 0.5.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/{components → package/components}/Auth.svelte +11 -13
- package/{components → package/components}/Auth.svelte.d.ts +0 -0
- package/{components → package/components}/Authentication.d.ts +0 -0
- package/{components → package/components}/Authentication.js +0 -0
- package/{components → package/components}/BookPreview.svelte +13 -17
- package/{components → package/components}/BookPreview.svelte.d.ts +0 -0
- package/{components → package/components}/Link.svelte +2 -1
- package/{components → package/components}/Link.svelte.d.ts +1 -0
- package/{components → package/components}/app/BookList.svelte +0 -0
- package/{components → package/components}/app/BookList.svelte.d.ts +0 -0
- package/{components → package/components}/app/Button.svelte +5 -2
- package/{components → package/components}/app/Button.svelte.d.ts +0 -0
- package/{components → package/components}/app/Feedback.svelte +4 -9
- package/{components → package/components}/app/Feedback.svelte.d.ts +0 -0
- package/{components → package/components}/app/Head.svelte +4 -1
- package/{components → package/components}/app/Head.svelte.d.ts +6 -15
- package/{components → package/components}/app/Large.svelte +0 -0
- package/{components → package/components}/app/Large.svelte.d.ts +0 -0
- package/{components → package/components}/app/Lead.svelte +0 -0
- package/{components → package/components}/app/Lead.svelte.d.ts +0 -0
- package/package/components/app/Link.svelte +36 -0
- package/{components → package/components}/app/Link.svelte.d.ts +1 -0
- package/{components → package/components}/app/Options.svelte +0 -0
- package/{components → package/components}/app/Options.svelte.d.ts +0 -0
- package/{components → package/components}/app/Paragraph.svelte +1 -0
- package/{components → package/components}/app/Paragraph.svelte.d.ts +0 -0
- package/{components/app/Writing.svelte → package/components/app/Section.svelte} +0 -1
- package/package/components/app/Section.svelte.d.ts +27 -0
- package/{components → package/components}/app/Table.svelte +0 -0
- package/{components → package/components}/app/Table.svelte.d.ts +0 -0
- package/{components → package/components}/app/TextInput.svelte +2 -0
- package/{components → package/components}/app/TextInput.svelte.d.ts +0 -0
- package/{components → package/components}/chapter/Atom.svelte +1 -8
- package/{components → package/components}/chapter/Atom.svelte.d.ts +0 -0
- package/{components → package/components}/chapter/Block.svelte +3 -1
- package/{components → package/components}/chapter/Block.svelte.d.ts +0 -0
- package/{components → package/components}/chapter/Callout.svelte +0 -0
- package/{components → package/components}/chapter/Callout.svelte.d.ts +0 -0
- package/{components → package/components}/chapter/CaptionedCode.svelte +2 -2
- package/{components → package/components}/chapter/CaptionedCode.svelte.d.ts +0 -0
- package/{components → package/components}/chapter/ChapterBody.svelte +9 -16
- package/{components → package/components}/chapter/ChapterBody.svelte.d.ts +1 -0
- package/{components → package/components}/chapter/Citations.svelte +13 -11
- package/{components → package/components}/chapter/Citations.svelte.d.ts +0 -0
- package/{components → package/components}/chapter/Code.svelte +3 -2
- package/{components → package/components}/chapter/Code.svelte.d.ts +0 -0
- package/{components → package/components}/chapter/Comment.svelte +7 -13
- package/{components → package/components}/chapter/Comment.svelte.d.ts +0 -0
- package/{components → package/components}/chapter/Definition.svelte +8 -3
- package/{components → package/components}/chapter/Definition.svelte.d.ts +0 -0
- package/{components → package/components}/chapter/Embed.svelte +6 -5
- package/{components → package/components}/chapter/Embed.svelte.d.ts +1 -0
- package/{components → package/components}/chapter/ErrorMessage.svelte +0 -0
- package/{components → package/components}/chapter/ErrorMessage.svelte.d.ts +0 -0
- package/{components → package/components}/chapter/ExtendedPrism.d.ts +0 -0
- package/{components → package/components}/chapter/ExtendedPrism.js +0 -0
- package/{components → package/components}/chapter/Figure.svelte +8 -8
- package/{components → package/components}/chapter/Figure.svelte.d.ts +0 -0
- package/{components → package/components}/chapter/Footnote.svelte +13 -24
- package/{components → package/components}/chapter/Footnote.svelte.d.ts +0 -2
- package/{components → package/components}/chapter/Format.svelte +5 -4
- package/{components → package/components}/chapter/Format.svelte.d.ts +0 -0
- package/{components → package/components}/chapter/InlineCode.svelte +2 -2
- package/{components → package/components}/chapter/InlineCode.svelte.d.ts +0 -0
- package/{components → package/components}/chapter/Label.svelte +5 -7
- package/{components → package/components}/chapter/Label.svelte.d.ts +0 -0
- package/{components → package/components}/chapter/Link.svelte +8 -6
- package/{components → package/components}/chapter/Link.svelte.d.ts +0 -0
- package/{components → package/components}/chapter/List.svelte +5 -0
- package/{components → package/components}/chapter/List.svelte.d.ts +0 -0
- package/{components → package/components}/chapter/Marginal.svelte +30 -12
- package/{components → package/components}/chapter/Marginal.svelte.d.ts +0 -0
- package/{components → package/components}/chapter/Paragraph.svelte +23 -10
- package/{components → package/components}/chapter/Paragraph.svelte.d.ts +0 -0
- package/{components → package/components}/chapter/Positioned.svelte +0 -0
- package/{components → package/components}/chapter/Positioned.svelte.d.ts +0 -0
- package/{components → package/components}/chapter/Problem.svelte +0 -0
- package/{components → package/components}/chapter/Problem.svelte.d.ts +0 -0
- package/{components → package/components}/chapter/Python.svelte +0 -0
- package/{components → package/components}/chapter/Python.svelte.d.ts +0 -0
- package/{components → package/components}/chapter/Quote.svelte +20 -10
- package/{components → package/components}/chapter/Quote.svelte.d.ts +0 -0
- package/{components → package/components}/chapter/Rule.svelte +0 -0
- package/{components → package/components}/chapter/Rule.svelte.d.ts +0 -0
- package/{components → package/components}/chapter/Table.svelte +2 -2
- package/{components → package/components}/chapter/Table.svelte.d.ts +0 -0
- package/{components → package/components}/chapter/Text.svelte +2 -2
- package/{components → package/components}/chapter/Text.svelte.d.ts +0 -0
- package/package/components/controls/DarkToggle.svelte +38 -0
- package/package/components/controls/DarkToggle.svelte.d.ts +17 -0
- package/{components → package/components}/editor/BookishEditor.svelte +57 -32
- package/{components → package/components}/editor/BookishEditor.svelte.d.ts +4 -1
- package/{components → package/components}/editor/CalloutEditor.svelte +0 -0
- package/{components → package/components}/editor/CalloutEditor.svelte.d.ts +0 -0
- package/{components → package/components}/editor/CaptionedCodeEditor.svelte +0 -0
- package/{components → package/components}/editor/CaptionedCodeEditor.svelte.d.ts +0 -0
- package/{components → package/components}/editor/CaretContext.d.ts +0 -0
- package/{components → package/components}/editor/CaretContext.js +0 -0
- package/{components → package/components}/editor/CaretState.d.ts +0 -0
- package/{components → package/components}/editor/CaretState.js +0 -0
- package/{components → package/components}/editor/CaretUtilities.d.ts +0 -0
- package/{components → package/components}/editor/CaretUtilities.js +0 -0
- package/{components → package/components}/editor/CaretView.svelte +4 -2
- package/{components → package/components}/editor/CaretView.svelte.d.ts +1 -0
- package/{components → package/components}/editor/CitationsEditor.svelte +0 -0
- package/{components → package/components}/editor/CitationsEditor.svelte.d.ts +0 -0
- package/{components → package/components}/editor/Clipboard.d.ts +0 -0
- package/{components → package/components}/editor/Clipboard.js +0 -0
- package/{components → package/components}/editor/Command.d.ts +0 -0
- package/{components → package/components}/editor/Command.js +0 -0
- package/{components → package/components}/editor/Commands.d.ts +0 -0
- package/{components → package/components}/editor/Commands.js +0 -0
- package/package/components/editor/ConfirmButton.svelte +23 -0
- package/{components → package/components}/editor/ConfirmButton.svelte.d.ts +4 -3
- package/{components → package/components}/editor/DefinitionEditor.svelte +0 -0
- package/{components → package/components}/editor/DefinitionEditor.svelte.d.ts +0 -0
- package/{components → package/components}/editor/EmbedEditor.svelte +1 -1
- package/{components → package/components}/editor/EmbedEditor.svelte.d.ts +0 -0
- package/{components → package/components}/editor/Icon.svelte +0 -0
- package/{components → package/components}/editor/Icon.svelte.d.ts +0 -0
- package/{components → package/components}/editor/ImageChooser.svelte +0 -0
- package/{components → package/components}/editor/ImageChooser.svelte.d.ts +0 -0
- package/{components → package/components}/editor/InlineCodeEditor.svelte +0 -0
- package/{components → package/components}/editor/InlineCodeEditor.svelte.d.ts +0 -0
- package/{components → package/components}/editor/LabelEditor.svelte +0 -0
- package/{components → package/components}/editor/LabelEditor.svelte.d.ts +0 -0
- package/{components → package/components}/editor/LanguageEditor.svelte +0 -0
- package/{components → package/components}/editor/LanguageEditor.svelte.d.ts +0 -0
- package/{components → package/components}/editor/LinkEditor.svelte +4 -3
- package/{components → package/components}/editor/LinkEditor.svelte.d.ts +0 -0
- package/{components → package/components}/editor/Note.svelte +1 -0
- package/{components → package/components}/editor/Note.svelte.d.ts +0 -0
- package/package/components/editor/Permissions.svelte +93 -0
- package/package/components/editor/Permissions.svelte.d.ts +20 -0
- package/{components → package/components}/editor/PositionEditor.svelte +0 -0
- package/{components → package/components}/editor/PositionEditor.svelte.d.ts +0 -0
- package/{components → package/components}/editor/QuoteEditor.svelte +0 -0
- package/{components → package/components}/editor/QuoteEditor.svelte.d.ts +0 -0
- package/{components → package/components}/editor/Switch.svelte +0 -0
- package/{components → package/components}/editor/Switch.svelte.d.ts +0 -0
- package/{components → package/components}/editor/TableEditor.svelte +0 -0
- package/{components → package/components}/editor/TableEditor.svelte.d.ts +0 -0
- package/{components → package/components}/editor/TextEditor.svelte +2 -3
- package/{components → package/components}/editor/TextEditor.svelte.d.ts +0 -0
- package/{components → package/components}/editor/Toggle.svelte +0 -0
- package/{components → package/components}/editor/Toggle.svelte.d.ts +0 -0
- package/{components → package/components}/editor/Toolbar.svelte +8 -3
- package/{components → package/components}/editor/Toolbar.svelte.d.ts +0 -0
- package/{components → package/components}/editor/ToolbarGroup.svelte +0 -1
- package/{components → package/components}/editor/ToolbarGroup.svelte.d.ts +0 -0
- package/{components → package/components}/editor/ToolbarSpacer.svelte +0 -0
- package/{components → package/components}/editor/ToolbarSpacer.svelte.d.ts +0 -0
- package/{components → package/components}/editor/URLEditor.svelte +2 -0
- package/{components → package/components}/editor/URLEditor.svelte.d.ts +0 -0
- package/{components → package/components}/editor/UndoState.d.ts +0 -0
- package/{components → package/components}/editor/UndoState.js +0 -0
- package/{components → package/components}/editor/icons/annotate.svg +0 -0
- package/{components → package/components}/editor/icons/block.svg +0 -0
- package/{components → package/components}/editor/icons/bold.svg +0 -0
- package/{components → package/components}/editor/icons/bullets.svg +0 -0
- package/{components → package/components}/editor/icons/callout.svg +0 -0
- package/{components → package/components}/editor/icons/citation.svg +0 -0
- package/{components → package/components}/editor/icons/clear.svg +0 -0
- package/{components → package/components}/editor/icons/clipboard.svg +0 -0
- package/{components → package/components}/editor/icons/code.svg +0 -0
- package/{components → package/components}/editor/icons/columnafter.svg +0 -0
- package/{components → package/components}/editor/icons/columnbefore.svg +0 -0
- package/{components → package/components}/editor/icons/comment.svg +0 -0
- package/{components → package/components}/editor/icons/copy.svg +0 -0
- package/{components → package/components}/editor/icons/cut.svg +0 -0
- package/{components → package/components}/editor/icons/define.svg +0 -0
- package/{components → package/components}/editor/icons/deletecolumn.svg +0 -0
- package/{components → package/components}/editor/icons/deleterow.svg +0 -0
- package/{components → package/components}/editor/icons/footnote.svg +0 -0
- package/{components → package/components}/editor/icons/header1.svg +0 -0
- package/{components → package/components}/editor/icons/header2.svg +0 -0
- package/{components → package/components}/editor/icons/header3.svg +0 -0
- package/{components → package/components}/editor/icons/home.svg +0 -0
- package/{components → package/components}/editor/icons/indent.svg +0 -0
- package/{components → package/components}/editor/icons/italic.svg +0 -0
- package/{components → package/components}/editor/icons/label.svg +0 -0
- package/{components → package/components}/editor/icons/left.svg +0 -0
- package/{components → package/components}/editor/icons/level.svg +0 -0
- package/{components → package/components}/editor/icons/link.svg +0 -0
- package/{components → package/components}/editor/icons/list.svg +0 -0
- package/{components → package/components}/editor/icons/media.svg +0 -0
- package/{components → package/components}/editor/icons/middle.svg +0 -0
- package/{components → package/components}/editor/icons/numbers.svg +0 -0
- package/{components → package/components}/editor/icons/paragraph.svg +0 -0
- package/{components → package/components}/editor/icons/paste.svg +0 -0
- package/{components → package/components}/editor/icons/quote.svg +0 -0
- package/{components → package/components}/editor/icons/redo.svg +0 -0
- package/{components → package/components}/editor/icons/right.svg +0 -0
- package/{components → package/components}/editor/icons/rowabove.svg +0 -0
- package/{components → package/components}/editor/icons/rowbelow.svg +0 -0
- package/{components → package/components}/editor/icons/rule.svg +0 -0
- package/{components → package/components}/editor/icons/sub.svg +0 -0
- package/{components → package/components}/editor/icons/super.svg +0 -0
- package/{components → package/components}/editor/icons/table.svg +0 -0
- package/{components → package/components}/editor/icons/text.svg +0 -0
- package/{components → package/components}/editor/icons/time.svg +0 -0
- package/{components → package/components}/editor/icons/undo.svg +0 -0
- package/{components → package/components}/editor/icons/unindent.svg +0 -0
- package/{components → package/components}/editor/icons/unlink.svg +0 -0
- package/{components → package/components}/page/Acknowledgements.svelte +13 -11
- package/{components → package/components}/page/Acknowledgements.svelte.d.ts +0 -0
- package/package/components/page/Authors.svelte +86 -0
- package/{components → package/components}/page/Authors.svelte.d.ts +1 -0
- package/package/components/page/BookLoader.svelte +59 -0
- package/package/components/page/BookLoader.svelte.d.ts +16 -0
- package/{components → package/components}/page/BulkReferenceEditor.svelte +8 -8
- package/{components → package/components}/page/BulkReferenceEditor.svelte.d.ts +0 -0
- package/{components → package/components}/page/Chapter.svelte +69 -30
- package/{components → package/components}/page/Chapter.svelte.d.ts +0 -0
- package/{components → package/components}/page/ChapterContext.d.ts +0 -0
- package/{components → package/components}/page/ChapterContext.js +0 -0
- package/{components → package/components}/page/ChapterNumber.svelte +0 -0
- package/{components → package/components}/page/ChapterNumber.svelte.d.ts +0 -0
- package/{components → package/components}/page/ChapterTitle.svelte +0 -0
- package/{components → package/components}/page/ChapterTitle.svelte.d.ts +0 -0
- package/{components → package/components}/page/Contexts.d.ts +21 -5
- package/package/components/page/Contexts.js +144 -0
- package/{components → package/components}/page/DefinitionView.svelte +23 -14
- package/{components → package/components}/page/DefinitionView.svelte.d.ts +0 -0
- package/{components → package/components}/page/Description.svelte +12 -9
- package/{components → package/components}/page/Description.svelte.d.ts +0 -0
- package/{components → package/components}/page/Edition.svelte +9 -23
- package/{components → package/components}/page/Edition.svelte.d.ts +1 -2
- package/package/components/page/EditionLoader.svelte +99 -0
- package/package/components/page/EditionLoader.svelte.d.ts +18 -0
- package/package/components/page/Editions.svelte +109 -0
- package/{components → package/components}/page/Editions.svelte.d.ts +3 -1
- package/{components → package/components}/page/Glossary.svelte +13 -6
- package/{components → package/components}/page/Glossary.svelte.d.ts +0 -0
- package/{components → package/components}/page/Header.svelte +26 -21
- package/{components → package/components}/page/Header.svelte.d.ts +2 -0
- package/{components → package/components}/page/Index.svelte +14 -8
- package/{components → package/components}/page/Index.svelte.d.ts +0 -0
- package/{components → package/components}/page/Instructions.svelte +1 -2
- package/{components → package/components}/page/Instructions.svelte.d.ts +3 -1
- package/package/components/page/License.svelte +45 -0
- package/{components → package/components}/page/License.svelte.d.ts +0 -0
- package/{components → package/components}/page/Loading.svelte +0 -0
- package/{components → package/components}/page/Loading.svelte.d.ts +0 -0
- package/{components → package/components}/page/Media.svelte +40 -36
- package/{components → package/components}/page/Media.svelte.d.ts +0 -0
- package/package/components/page/MediaPreview.svelte +55 -0
- package/{components → package/components}/page/MediaPreview.svelte.d.ts +0 -0
- package/{components → package/components}/page/Muted.svelte +0 -0
- package/{components → package/components}/page/Muted.svelte.d.ts +0 -0
- package/{components → package/components}/page/Outline.svelte +69 -96
- package/{components → package/components}/page/Outline.svelte.d.ts +0 -0
- package/{components → package/components}/page/Page.svelte +4 -4
- package/{components → package/components}/page/Page.svelte.d.ts +0 -0
- package/{components → package/components}/page/PageHeader.svelte +5 -0
- package/{components → package/components}/page/PageHeader.svelte.d.ts +0 -0
- package/{components → package/components}/page/PageParagraph.svelte +0 -0
- package/{components → package/components}/page/PageParagraph.svelte.d.ts +0 -0
- package/{components → package/components}/page/PossibleChapter.svelte +0 -0
- package/{components → package/components}/page/PossibleChapter.svelte.d.ts +0 -0
- package/{components → package/components}/page/PossibleReference.svelte +2 -1
- package/{components → package/components}/page/PossibleReference.svelte.d.ts +1 -0
- package/{components → package/components}/page/Print.svelte +0 -0
- package/{components → package/components}/page/Print.svelte.d.ts +0 -0
- package/package/components/page/Publish.svelte +135 -0
- package/package/components/page/Publish.svelte.d.ts +14 -0
- package/{components → package/components}/page/Reference.svelte +54 -51
- package/{components → package/components}/page/Reference.svelte.d.ts +1 -0
- package/{components → package/components}/page/References.svelte +9 -4
- package/{components → package/components}/page/References.svelte.d.ts +0 -0
- package/{components → package/components}/page/Rows.svelte +0 -0
- package/{components → package/components}/page/Rows.svelte.d.ts +0 -0
- package/{components → package/components}/page/Search.svelte +27 -10
- package/{components → package/components}/page/Search.svelte.d.ts +0 -0
- package/package/components/page/Status.svelte +58 -0
- package/{components → package/components}/page/Status.svelte.d.ts +0 -0
- package/{components → package/components}/page/SubdomainEditor.svelte +5 -3
- package/{components → package/components}/page/SubdomainEditor.svelte.d.ts +0 -0
- package/{components → package/components}/page/TableOfContents.svelte +83 -37
- package/{components → package/components}/page/TableOfContents.svelte.d.ts +0 -0
- package/package/components/page/TableOfContentsImage.svelte +27 -0
- package/{components → package/components}/page/TableOfContentsImage.svelte.d.ts +1 -0
- package/{components → package/components}/page/TableOfContentsRow.svelte +11 -12
- package/{components → package/components}/page/TableOfContentsRow.svelte.d.ts +0 -0
- package/{components → package/components}/page/ThemeEditor.svelte +12 -10
- package/{components → package/components}/page/ThemeEditor.svelte.d.ts +0 -0
- package/{components → package/components}/page/ThemeEditorPreview.svelte +0 -0
- package/{components → package/components}/page/ThemeEditorPreview.svelte.d.ts +0 -0
- package/{components → package/components}/page/ThemeSetEditor.svelte +0 -0
- package/{components → package/components}/page/ThemeSetEditor.svelte.d.ts +0 -0
- package/{components → package/components}/page/ThemeVariableEditor.svelte +0 -0
- package/{components → package/components}/page/ThemeVariableEditor.svelte.d.ts +0 -0
- package/{components → package/components}/page/Title.svelte +0 -0
- package/{components → package/components}/page/Title.svelte.d.ts +0 -0
- package/{components → package/components}/page/Unknown.svelte +5 -2
- package/{components → package/components}/page/Unknown.svelte.d.ts +0 -0
- package/{components → package/components}/page/margins.d.ts +0 -0
- package/{components → package/components}/page/margins.js +0 -0
- package/{index.d.ts → package/index.d.ts} +3 -3
- package/{index.js → package/index.js} +3 -3
- package/package/models/CRUD.d.ts +28 -0
- package/package/models/CRUD.js +263 -0
- package/{models → package/models}/Firebase.d.ts +0 -0
- package/package/models/Firebase.js +36 -0
- package/{models → package/models}/book/Book.d.ts +23 -18
- package/package/models/book/Book.js +135 -0
- package/{models → package/models}/book/BookMedia.d.ts +1 -1
- package/{models → package/models}/book/BookMedia.js +9 -10
- package/{models → package/models}/book/BookSaveStatus.d.ts +0 -0
- package/{models → package/models}/book/BookSaveStatus.js +0 -0
- package/{models → package/models}/book/Chapter.d.ts +5 -1
- package/{models → package/models}/book/Chapter.js +24 -15
- package/{models → package/models}/book/ChapterID.d.ts +0 -0
- package/{models → package/models}/book/ChapterID.js +0 -0
- package/{models → package/models}/book/Definition.d.ts +0 -0
- package/{models → package/models}/book/Definition.js +0 -0
- package/{models → package/models}/book/Edition.d.ts +33 -7
- package/{models → package/models}/book/Edition.js +104 -32
- package/{models → package/models}/book/Reference.d.ts +0 -0
- package/{models → package/models}/book/Reference.js +0 -0
- package/{models → package/models}/book/Schema.d.ts +20 -15
- package/{models → package/models}/book/Schema.js +17 -16
- package/{models → package/models}/book/Theme.d.ts +0 -0
- package/{models → package/models}/book/Theme.js +7 -6
- package/{models → package/models}/book/ThemeColors.d.ts +0 -0
- package/{models → package/models}/book/ThemeColors.js +0 -0
- package/{models → package/models}/book/Words.d.ts +0 -0
- package/{models → package/models}/book/Words.js +0 -0
- package/{models → package/models}/chapter/AtomNode.d.ts +0 -0
- package/{models → package/models}/chapter/AtomNode.js +0 -0
- package/{models → package/models}/chapter/BlockNode.d.ts +0 -0
- package/{models → package/models}/chapter/BlockNode.js +0 -0
- package/{models → package/models}/chapter/BlocksNode.d.ts +0 -0
- package/{models → package/models}/chapter/BlocksNode.js +0 -0
- package/{models → package/models}/chapter/BlocksNode.test.d.ts +0 -0
- package/{models → package/models}/chapter/BlocksNode.test.js +0 -0
- package/{models → package/models}/chapter/Bookkeeping.d.ts +0 -0
- package/{models → package/models}/chapter/Bookkeeping.js +0 -0
- package/{models → package/models}/chapter/CalloutNode.d.ts +0 -0
- package/{models → package/models}/chapter/CalloutNode.js +0 -0
- package/{models → package/models}/chapter/Caret.d.ts +0 -0
- package/{models → package/models}/chapter/Caret.js +0 -0
- package/{models → package/models}/chapter/ChapterNode.d.ts +0 -0
- package/{models → package/models}/chapter/ChapterNode.js +0 -0
- package/{models → package/models}/chapter/CitationsNode.d.ts +0 -0
- package/{models → package/models}/chapter/CitationsNode.js +0 -0
- package/{models → package/models}/chapter/CodeNode.d.ts +0 -0
- package/{models → package/models}/chapter/CodeNode.js +0 -0
- package/{models → package/models}/chapter/CommentNode.d.ts +0 -0
- package/{models → package/models}/chapter/CommentNode.js +13 -3
- package/{models → package/models}/chapter/DefinitionNode.d.ts +0 -0
- package/{models → package/models}/chapter/DefinitionNode.js +0 -0
- package/{models → package/models}/chapter/Edit.d.ts +0 -0
- package/{models → package/models}/chapter/Edit.js +0 -0
- package/{models → package/models}/chapter/EmbedNode.d.ts +1 -0
- package/{models → package/models}/chapter/EmbedNode.js +6 -0
- package/{models → package/models}/chapter/ErrorNode.d.ts +0 -0
- package/{models → package/models}/chapter/ErrorNode.js +0 -0
- package/{models → package/models}/chapter/FootnoteNode.d.ts +0 -0
- package/{models → package/models}/chapter/FootnoteNode.js +0 -0
- package/{models → package/models}/chapter/FormatNode.d.ts +0 -0
- package/{models → package/models}/chapter/FormatNode.js +1 -6
- package/{models → package/models}/chapter/FormatNode.test.d.ts +0 -0
- package/{models → package/models}/chapter/FormatNode.test.js +0 -0
- package/{models → package/models}/chapter/InlineCodeNode.d.ts +0 -0
- package/{models → package/models}/chapter/InlineCodeNode.js +0 -0
- package/{models → package/models}/chapter/LabelNode.d.ts +0 -0
- package/{models → package/models}/chapter/LabelNode.js +0 -0
- package/{models → package/models}/chapter/LinkNode.d.ts +0 -0
- package/{models → package/models}/chapter/LinkNode.js +0 -0
- package/{models → package/models}/chapter/ListNode.d.ts +0 -0
- package/{models → package/models}/chapter/ListNode.js +0 -0
- package/{models → package/models}/chapter/ListNode.test.d.ts +0 -0
- package/{models → package/models}/chapter/ListNode.test.js +0 -0
- package/{models → package/models}/chapter/MetadataNode.d.ts +0 -0
- package/{models → package/models}/chapter/MetadataNode.js +0 -0
- package/{models → package/models}/chapter/Node.d.ts +0 -0
- package/{models → package/models}/chapter/Node.js +0 -0
- package/{models → package/models}/chapter/Node.test.d.ts +0 -0
- package/{models → package/models}/chapter/Node.test.js +0 -0
- package/{models → package/models}/chapter/ParagraphNode.d.ts +0 -0
- package/{models → package/models}/chapter/ParagraphNode.js +0 -0
- package/{models → package/models}/chapter/ParagraphNode.test.d.ts +0 -0
- package/{models → package/models}/chapter/ParagraphNode.test.js +0 -0
- package/{models → package/models}/chapter/Parser.d.ts +2 -2
- package/{models → package/models}/chapter/Parser.js +26 -24
- package/{models → package/models}/chapter/Parser.test.d.ts +0 -0
- package/{models → package/models}/chapter/Parser.test.js +0 -0
- package/{models → package/models}/chapter/Position.d.ts +0 -0
- package/{models → package/models}/chapter/Position.js +0 -0
- package/{models → package/models}/chapter/QuoteNode.d.ts +0 -0
- package/{models → package/models}/chapter/QuoteNode.js +0 -0
- package/{models → package/models}/chapter/RootNode.d.ts +0 -0
- package/{models → package/models}/chapter/RootNode.js +0 -0
- package/{models → package/models}/chapter/RuleNode.d.ts +0 -0
- package/{models → package/models}/chapter/RuleNode.js +0 -0
- package/{models → package/models}/chapter/TableNode.d.ts +0 -0
- package/{models → package/models}/chapter/TableNode.js +0 -0
- package/{models → package/models}/chapter/TableNode.test.d.ts +0 -0
- package/{models → package/models}/chapter/TableNode.test.js +0 -0
- package/{models → package/models}/chapter/TextNode.d.ts +0 -0
- package/{models → package/models}/chapter/TextNode.js +0 -0
- package/{models → package/models}/chapter/TextNode.test.d.ts +0 -0
- package/{models → package/models}/chapter/TextNode.test.js +0 -0
- package/package/util/dark.d.ts +2 -0
- package/package/util/dark.js +16 -0
- package/{util → package/util}/getSubdomain.d.ts +0 -0
- package/{util → package/util}/getSubdomain.js +0 -0
- package/{util → package/util}/isMobile.d.ts +0 -0
- package/{util → package/util}/isMobile.js +0 -0
- package/{util → package/util}/mineReference.d.ts +0 -0
- package/{util → package/util}/mineReference.js +0 -0
- package/{util → package/util}/scrollToEyeLevel.d.ts +0 -0
- package/{util → package/util}/scrollToEyeLevel.js +0 -0
- package/package.json +131 -267
- package/components/External.svelte +0 -4
- package/components/External.svelte.d.ts +0 -18
- package/components/app/Link.svelte +0 -24
- package/components/app/Writing.svelte.d.ts +0 -27
- package/components/editor/ConfirmButton.svelte +0 -49
- package/components/page/Authors.svelte +0 -82
- package/components/page/Contexts.js +0 -51
- package/components/page/Editions.svelte +0 -158
- package/components/page/License.svelte +0 -37
- package/components/page/MediaPreview.svelte +0 -29
- package/components/page/Status.svelte +0 -57
- package/components/page/TableOfContentsImage.svelte +0 -15
- package/models/CRUD.d.ts +0 -17
- package/models/CRUD.js +0 -207
- package/models/Firebase.js +0 -32
- package/models/book/Book.js +0 -142
- package/models/loadEdition.d.ts +0 -5
- package/models/loadEdition.js +0 -20
|
@@ -10,19 +10,25 @@ import SubdomainEditor from './SubdomainEditor.svelte';
|
|
|
10
10
|
import Description from './Description.svelte';
|
|
11
11
|
import Acknowledgements from './Acknowledgements.svelte';
|
|
12
12
|
import License from './License.svelte';
|
|
13
|
-
import Revisions from './Editions.svelte';
|
|
14
13
|
import Authors from './Authors.svelte';
|
|
15
14
|
import TextEditor from '../editor/TextEditor.svelte';
|
|
16
15
|
import Toggle from '../editor/Toggle.svelte';
|
|
17
|
-
import { getBase, getEdition,
|
|
16
|
+
import { getUser, getBase, getBook, getEdition, isBookEditable, isEditionEditable, isEditionPartiallyEditable, setChapter, } from './Contexts';
|
|
18
17
|
import Muted from './Muted.svelte';
|
|
19
18
|
import Button from '../app/Button.svelte';
|
|
20
19
|
import PageHeader from './PageHeader.svelte';
|
|
21
20
|
import Rows from './Rows.svelte';
|
|
22
21
|
import PageParagraph from './PageParagraph.svelte';
|
|
22
|
+
import Note from '../editor/Note.svelte';
|
|
23
|
+
import Permissions from '../editor/Permissions.svelte';
|
|
24
|
+
import Publish from './Publish.svelte';
|
|
25
|
+
import { onMount } from 'svelte';
|
|
26
|
+
import Editions from './Editions.svelte';
|
|
27
|
+
let auth = getUser();
|
|
28
|
+
let book = getBook();
|
|
23
29
|
let edition = getEdition();
|
|
24
30
|
let base = getBase();
|
|
25
|
-
let editable =
|
|
31
|
+
let editable = isEditionEditable();
|
|
26
32
|
function getProgressDescription(progress) {
|
|
27
33
|
if (progress === null)
|
|
28
34
|
return '';
|
|
@@ -57,11 +63,17 @@ function addChapter() {
|
|
|
57
63
|
if ($edition)
|
|
58
64
|
edition.set($edition.withNewChapter());
|
|
59
65
|
}
|
|
66
|
+
/** Doing this on mount allows for prerendering an an update. */
|
|
67
|
+
let bookURL = '…';
|
|
68
|
+
onMount(() => {
|
|
69
|
+
bookURL = location.protocol + '//' + location.host + location.pathname;
|
|
70
|
+
});
|
|
60
71
|
</script>
|
|
61
72
|
|
|
62
73
|
{#if $edition}
|
|
63
74
|
<Page title={$edition.getTitle()}>
|
|
64
75
|
<Header
|
|
76
|
+
editable={isEditionEditable()}
|
|
65
77
|
label="Book title"
|
|
66
78
|
getImage={() => $edition?.getImage('cover') ?? null}
|
|
67
79
|
setImage={(embed) =>
|
|
@@ -69,6 +81,7 @@ function addChapter() {
|
|
|
69
81
|
? edition.set($edition.withImage('cover', embed))
|
|
70
82
|
: undefined}
|
|
71
83
|
header={title}
|
|
84
|
+
id="toc"
|
|
72
85
|
{subtitle}
|
|
73
86
|
tags={$edition.getTags()}
|
|
74
87
|
save={(text) =>
|
|
@@ -84,36 +97,41 @@ function addChapter() {
|
|
|
84
97
|
previous={null}
|
|
85
98
|
next={$edition.getNextChapterID('')}
|
|
86
99
|
/>
|
|
87
|
-
<
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
100
|
+
<div slot="after">
|
|
101
|
+
<Authors
|
|
102
|
+
editable={isBookEditable()}
|
|
103
|
+
authors={$edition.getAuthors()}
|
|
104
|
+
add={() =>
|
|
105
|
+
$edition
|
|
106
|
+
? edition.set($edition.withAuthor(''))
|
|
107
|
+
: undefined}
|
|
108
|
+
edit={(index, text) =>
|
|
109
|
+
$edition
|
|
110
|
+
? edition.set($edition.withAuthorName(index, text))
|
|
111
|
+
: undefined}
|
|
112
|
+
remove={(index) =>
|
|
113
|
+
$edition
|
|
114
|
+
? edition.set($edition.withoutAuthor(index))
|
|
115
|
+
: undefined}
|
|
116
|
+
/>
|
|
117
|
+
<Note>{$edition.getEditionLabel()} edition</Note>
|
|
118
|
+
</div>
|
|
101
119
|
</Header>
|
|
102
120
|
|
|
103
|
-
<Instructions>
|
|
104
|
-
|
|
121
|
+
<Instructions {editable}>
|
|
122
|
+
Edit this book's cover image, ID, title, and authors above. The book
|
|
123
|
+
ID appears in the book's URL (e.g., bookish.press/<em>bookid</em>).
|
|
105
124
|
</Instructions>
|
|
106
125
|
|
|
107
126
|
<Description />
|
|
108
127
|
|
|
109
|
-
<Instructions>
|
|
110
|
-
This will appear on the <Link to={$base
|
|
111
|
-
|
|
112
|
-
> page and in your table of contents. Write an informative description
|
|
128
|
+
<Instructions {editable}>
|
|
129
|
+
This will appear on the <Link to="{$base}/read">book browsing</Link>
|
|
130
|
+
page and in your table of contents. Write an informative description
|
|
113
131
|
of what your book is about.
|
|
114
132
|
</Instructions>
|
|
115
133
|
|
|
116
|
-
<Instructions>
|
|
134
|
+
<Instructions {editable}>
|
|
117
135
|
Add, remove, and reorder chapters here. You can add optional book
|
|
118
136
|
sections to each chapter, toggle chapters as numbered/unnumbered or
|
|
119
137
|
published/forthcoming. Click the title to edit the chapter.
|
|
@@ -160,7 +178,7 @@ function addChapter() {
|
|
|
160
178
|
<TextEditor
|
|
161
179
|
label={'Chapter section editor'}
|
|
162
180
|
text={section ? section : ''}
|
|
163
|
-
placeholder="
|
|
181
|
+
placeholder="section"
|
|
164
182
|
valid={() => undefined}
|
|
165
183
|
save={(text) =>
|
|
166
184
|
setChapter(
|
|
@@ -170,6 +188,9 @@ function addChapter() {
|
|
|
170
188
|
)}
|
|
171
189
|
/>
|
|
172
190
|
{:else if section}{section}{/if}
|
|
191
|
+
{#if !editable && $auth !== undefined && $auth.user !== null && chapter.uids.includes($auth.user.uid)}
|
|
192
|
+
You can edit this chapter.
|
|
193
|
+
{/if}
|
|
173
194
|
</span>
|
|
174
195
|
<span slot="etc">
|
|
175
196
|
<Muted>
|
|
@@ -233,22 +254,21 @@ function addChapter() {
|
|
|
233
254
|
|
|
234
255
|
<PageHeader id="print">Print</PageHeader>
|
|
235
256
|
|
|
236
|
-
<Instructions>
|
|
237
|
-
This
|
|
238
|
-
|
|
257
|
+
<Instructions {editable}>
|
|
258
|
+
This link will generate the entire book on a single page, suitable
|
|
259
|
+
for printing.
|
|
239
260
|
</Instructions>
|
|
240
261
|
|
|
241
262
|
<PageParagraph>
|
|
242
263
|
Want to print this book or generate a PDF? See <Link
|
|
243
|
-
to={$base
|
|
264
|
+
to="{$base}/print">all chapters on a single page</Link
|
|
244
265
|
> and then print or export. Long books can take some time to render.
|
|
245
266
|
</PageParagraph>
|
|
246
267
|
|
|
247
268
|
<PageHeader id="citation">Citation</PageHeader>
|
|
248
269
|
|
|
249
|
-
<Instructions>
|
|
250
|
-
This citation is
|
|
251
|
-
title, and date.
|
|
270
|
+
<Instructions {editable}>
|
|
271
|
+
This citation is created from the current authors, title, and date.
|
|
252
272
|
</Instructions>
|
|
253
273
|
|
|
254
274
|
<!-- Book citation -->
|
|
@@ -257,13 +277,39 @@ function addChapter() {
|
|
|
257
277
|
.getAuthors()
|
|
258
278
|
.map((author) => Parser.parseFormat($edition, author).toText())
|
|
259
279
|
.join(', ')} ({new Date().getFullYear()}).
|
|
260
|
-
<em>{$edition.getTitle()}</em>. {
|
|
261
|
-
'//' +
|
|
262
|
-
location.host +
|
|
263
|
-
location.pathname},
|
|
280
|
+
<em>{$edition.getTitle()}</em>. {bookURL},
|
|
264
281
|
<em>retrieved {new Date().toLocaleDateString('en-US')}</em>.
|
|
265
282
|
</PageParagraph>
|
|
266
283
|
|
|
267
|
-
|
|
284
|
+
{#if editable}
|
|
285
|
+
<PageHeader id="publish">Publish</PageHeader>
|
|
286
|
+
<Publish />
|
|
287
|
+
{/if}
|
|
288
|
+
|
|
289
|
+
{#if $book}
|
|
290
|
+
<PageHeader id="editions">Editions</PageHeader>
|
|
291
|
+
<Editions editors={false} />
|
|
292
|
+
{/if}
|
|
293
|
+
|
|
294
|
+
{#if $book && (editable || isEditionPartiallyEditable())}
|
|
295
|
+
<PageHeader>Editors</PageHeader>
|
|
296
|
+
<Instructions {editable}>
|
|
297
|
+
These authors can edit this edition and its chapters. To give
|
|
298
|
+
book-level permissions, edit the book editors on the <Link
|
|
299
|
+
to="/write/{$book.getID()}/editions">editions</Link
|
|
300
|
+
>
|
|
301
|
+
page. To give chapter-level permissions, navigate to the chapter.
|
|
302
|
+
</Instructions>
|
|
303
|
+
<Permissions
|
|
304
|
+
uids={$edition.uids}
|
|
305
|
+
inheriteduids={$book.uids}
|
|
306
|
+
atleastone={false}
|
|
307
|
+
writable={editable}
|
|
308
|
+
change={(uids) =>
|
|
309
|
+
$edition
|
|
310
|
+
? edition.set($edition.withEditors(uids))
|
|
311
|
+
: undefined}
|
|
312
|
+
/>
|
|
313
|
+
{/if}
|
|
268
314
|
</Page>
|
|
269
315
|
{/if}
|
|
File without changes
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
<script>import EmbedNode from '../../models/chapter/EmbedNode';
|
|
2
|
+
import Parser from '../../models/chapter/Parser';
|
|
3
|
+
import { getBase, getEdition } from './Contexts';
|
|
4
|
+
import Link from '../Link.svelte';
|
|
5
|
+
export let embed;
|
|
6
|
+
export let url;
|
|
7
|
+
let edition = getEdition();
|
|
8
|
+
let base = getBase();
|
|
9
|
+
$: embedNode = embed === null ? null : Parser.parseEmbed($edition, embed);
|
|
10
|
+
</script>
|
|
11
|
+
|
|
12
|
+
{#if embedNode instanceof EmbedNode}
|
|
13
|
+
<Link to={url ?? ''} linked={url !== undefined}>
|
|
14
|
+
<img
|
|
15
|
+
src={embedNode.isLocal()
|
|
16
|
+
? `${$base}/${embedNode.getSmallURL()}`
|
|
17
|
+
: embedNode.getSmallURL()}
|
|
18
|
+
alt={embedNode.getDescription()}
|
|
19
|
+
/>
|
|
20
|
+
</Link>
|
|
21
|
+
{/if}
|
|
22
|
+
|
|
23
|
+
<style>
|
|
24
|
+
img {
|
|
25
|
+
width: 5em;
|
|
26
|
+
}
|
|
27
|
+
</style>
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<script>import TableOfContentsImage from './TableOfContentsImage.svelte';
|
|
2
2
|
import Toggle from '../editor/Toggle.svelte';
|
|
3
3
|
import ConfirmButton from '../editor/ConfirmButton.svelte';
|
|
4
|
-
import { getBase, getEdition,
|
|
4
|
+
import { getBase, getEdition, isEditionEditable, setChapter, } from './Contexts';
|
|
5
5
|
import Muted from './Muted.svelte';
|
|
6
6
|
import ChapterNumber from './ChapterNumber.svelte';
|
|
7
7
|
import Button from '../app/Button.svelte';
|
|
@@ -13,7 +13,7 @@ export let number = undefined;
|
|
|
13
13
|
export let forthcoming = false;
|
|
14
14
|
let edition = getEdition();
|
|
15
15
|
let base = getBase();
|
|
16
|
-
let editable =
|
|
16
|
+
let editable = isEditionEditable();
|
|
17
17
|
function moveUp() {
|
|
18
18
|
if ($edition && chapter)
|
|
19
19
|
edition.set($edition.withMovedChapter(chapter.getID(), -1));
|
|
@@ -22,6 +22,8 @@ function moveDown() {
|
|
|
22
22
|
if ($edition && chapter)
|
|
23
23
|
edition.set($edition.withMovedChapter(chapter.getID(), 1));
|
|
24
24
|
}
|
|
25
|
+
$: chapterURL =
|
|
26
|
+
forthcoming && !editable ? undefined : `${$base}/${chapterID}`;
|
|
25
27
|
</script>
|
|
26
28
|
|
|
27
29
|
<tr class="toc-row" class:forthcoming>
|
|
@@ -30,6 +32,7 @@ function moveDown() {
|
|
|
30
32
|
embed={chapter
|
|
31
33
|
? chapter.getImage()
|
|
32
34
|
: $edition?.getImage(chapterID) ?? null}
|
|
35
|
+
url={chapterURL}
|
|
33
36
|
/></td
|
|
34
37
|
>
|
|
35
38
|
<td>
|
|
@@ -52,10 +55,7 @@ function moveDown() {
|
|
|
52
55
|
{:else if number !== undefined}
|
|
53
56
|
<ChapterNumber>{'Chapter ' + number}</ChapterNumber>
|
|
54
57
|
{/if}
|
|
55
|
-
<ChapterTitle
|
|
56
|
-
link={forthcoming && !editable ? undefined : `${$base}${chapterID}`}
|
|
57
|
-
>{title}</ChapterTitle
|
|
58
|
-
>
|
|
58
|
+
<ChapterTitle link={chapterURL}>{title}</ChapterTitle>
|
|
59
59
|
<p><Muted><em><slot name="annotation" /></em></Muted></p>
|
|
60
60
|
</td>
|
|
61
61
|
<td><slot name="etc" /></td>
|
|
@@ -63,28 +63,27 @@ function moveDown() {
|
|
|
63
63
|
<td class="controls">
|
|
64
64
|
{#if chapter}
|
|
65
65
|
<Button
|
|
66
|
-
tooltip="move chapter up"
|
|
66
|
+
tooltip="move chapter {title} up"
|
|
67
67
|
disabled={$edition.getChapterPosition(chapter.getID()) ===
|
|
68
68
|
0}
|
|
69
69
|
command={moveUp}>{'↑'}</Button
|
|
70
70
|
>
|
|
71
71
|
<Button
|
|
72
|
-
tooltip="move chapter down"
|
|
72
|
+
tooltip="move chapter {title} down"
|
|
73
73
|
disabled={$edition.getChapterPosition(chapter.getID()) ===
|
|
74
74
|
$edition.getChapterCount() - 1}
|
|
75
75
|
command={moveDown}>{'↓'}</Button
|
|
76
76
|
>
|
|
77
77
|
<ConfirmButton
|
|
78
78
|
tooltip="delete chapter {title}"
|
|
79
|
-
|
|
80
|
-
confirmLabel="confirm"
|
|
79
|
+
confirm="delete?"
|
|
81
80
|
command={() =>
|
|
82
81
|
chapter && $edition
|
|
83
82
|
? edition.set(
|
|
84
83
|
$edition.withoutChapter(chapter.getID())
|
|
85
84
|
)
|
|
86
|
-
: undefined}
|
|
87
|
-
|
|
85
|
+
: undefined}>- chapter</ConfirmButton
|
|
86
|
+
>
|
|
88
87
|
{/if}
|
|
89
88
|
</td>
|
|
90
89
|
{/if}
|
|
File without changes
|
|
@@ -6,7 +6,7 @@ import ConfirmButton from '../editor/ConfirmButton.svelte';
|
|
|
6
6
|
import Instructions from './Instructions.svelte';
|
|
7
7
|
import ThemeSetEditor from './ThemeSetEditor.svelte';
|
|
8
8
|
import ThemeEditorPreview from './ThemeEditorPreview.svelte';
|
|
9
|
-
import { getEdition } from './Contexts';
|
|
9
|
+
import { getEdition, isEditionEditable } from './Contexts';
|
|
10
10
|
import TextEditor from '../editor/TextEditor.svelte';
|
|
11
11
|
import Button from '../app/Button.svelte';
|
|
12
12
|
import Switch from '../editor/Switch.svelte';
|
|
@@ -20,6 +20,7 @@ const themes = {
|
|
|
20
20
|
Sketchy: SketchyTheme,
|
|
21
21
|
Critical: CriticalTheme,
|
|
22
22
|
};
|
|
23
|
+
let editable = isEditionEditable();
|
|
23
24
|
let edition = getEdition();
|
|
24
25
|
$: theme = $edition ? $edition.getTheme() : null;
|
|
25
26
|
$: isDefault =
|
|
@@ -32,10 +33,12 @@ function getEmptyGroup(group) {
|
|
|
32
33
|
}
|
|
33
34
|
</script>
|
|
34
35
|
|
|
35
|
-
{#if
|
|
36
|
+
{#if $edition}
|
|
36
37
|
<Page title={`${$edition?.getTitle()} - Theme`}>
|
|
37
38
|
<Header
|
|
39
|
+
editable={isEditionEditable()}
|
|
38
40
|
label="Theme"
|
|
41
|
+
id="theme"
|
|
39
42
|
getImage={() => null}
|
|
40
43
|
setImage={() => undefined}
|
|
41
44
|
header="Theme"
|
|
@@ -43,7 +46,7 @@ function getEmptyGroup(group) {
|
|
|
43
46
|
<Outline slot="outline" previous={null} next={null} />
|
|
44
47
|
</Header>
|
|
45
48
|
|
|
46
|
-
<Instructions>
|
|
49
|
+
<Instructions {editable}>
|
|
47
50
|
This is the theme editor. You can use it to choose from existing
|
|
48
51
|
themes or create a custom theme for your book's appearance. To use
|
|
49
52
|
it, you'll need to know a bit about how to format CSS <Link
|
|
@@ -83,14 +86,13 @@ function getEmptyGroup(group) {
|
|
|
83
86
|
>
|
|
84
87
|
{:else}
|
|
85
88
|
<ConfirmButton
|
|
86
|
-
tooltip="
|
|
87
|
-
|
|
88
|
-
confirmLabel="delete your theme?"
|
|
89
|
+
tooltip="change theme to the default"
|
|
90
|
+
confirm="delete your theme?"
|
|
89
91
|
command={() =>
|
|
90
92
|
$edition
|
|
91
93
|
? edition.set($edition.withTheme(null))
|
|
92
|
-
: undefined}
|
|
93
|
-
|
|
94
|
+
: undefined}>- theme</ConfirmButton
|
|
95
|
+
>
|
|
94
96
|
{/if}
|
|
95
97
|
|
|
96
98
|
<ThemeEditorPreview {theme} />
|
|
@@ -139,7 +141,7 @@ function getEmptyGroup(group) {
|
|
|
139
141
|
</td>
|
|
140
142
|
<td style="text-align:right;">
|
|
141
143
|
<Button
|
|
142
|
-
tooltip="
|
|
144
|
+
tooltip="add CSS URL import"
|
|
143
145
|
command={() => {
|
|
144
146
|
if (theme === null) return;
|
|
145
147
|
if (theme.imports === undefined)
|
|
@@ -171,7 +173,7 @@ function getEmptyGroup(group) {
|
|
|
171
173
|
</td>
|
|
172
174
|
<td style="text-align: right">
|
|
173
175
|
<Button
|
|
174
|
-
tooltip="Remove
|
|
176
|
+
tooltip="Remove CSS URL import"
|
|
175
177
|
command={() => {
|
|
176
178
|
theme?.imports?.splice(index, 1);
|
|
177
179
|
if ($edition)
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -3,14 +3,17 @@ import Outline from './Outline.svelte';
|
|
|
3
3
|
import Page from './Page.svelte';
|
|
4
4
|
import Instructions from './Instructions.svelte';
|
|
5
5
|
import ChapterIDs from '../../models/book/ChapterID';
|
|
6
|
-
import { getEdition } from './Contexts';
|
|
6
|
+
import { getEdition, isEditionEditable } from './Contexts';
|
|
7
|
+
let editable = isEditionEditable();
|
|
7
8
|
let edition = getEdition();
|
|
8
9
|
</script>
|
|
9
10
|
|
|
10
11
|
{#if $edition}
|
|
11
12
|
<Page title={`${$edition.getTitle()} - Unknown Page`}>
|
|
12
13
|
<Header
|
|
14
|
+
editable={isEditionEditable()}
|
|
13
15
|
label="Unknown page title"
|
|
16
|
+
id="unknown"
|
|
14
17
|
getImage={() => $edition?.getImage(ChapterIDs.UnknownID) ?? null}
|
|
15
18
|
setImage={(embed) =>
|
|
16
19
|
$edition
|
|
@@ -23,7 +26,7 @@ let edition = getEdition();
|
|
|
23
26
|
<Outline slot="outline" previous={null} next={null} />
|
|
24
27
|
</Header>
|
|
25
28
|
|
|
26
|
-
<Instructions>
|
|
29
|
+
<Instructions {editable}>
|
|
27
30
|
This page will be shown if the reader somehow ends up on a page that
|
|
28
31
|
doesn't exist. You can customize the image shown.
|
|
29
32
|
</Instructions>
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
+
export { default as Schema } from "./models/book/Schema";
|
|
2
|
+
export { EDITION } from "./components/page/Contexts";
|
|
1
3
|
export { default as TableOfContents } from "./components/page/TableOfContents.svelte";
|
|
2
4
|
export { default as Search } from "./components/page/Search.svelte";
|
|
3
5
|
export { default as Index } from "./components/page/Index.svelte";
|
|
4
6
|
export { default as References } from "./components/page/References.svelte";
|
|
5
|
-
export { default as PossibleChapter } from "./components/page/PossibleChapter.svelte";
|
|
6
7
|
export { default as Media } from "./components/page/Media.svelte";
|
|
7
8
|
export { default as Print } from "./components/page/Print.svelte";
|
|
9
|
+
export { default as Unknown } from "./components/page/Unknown.svelte";
|
|
8
10
|
export { default as Glossary } from "./components/page/Glossary.svelte";
|
|
9
11
|
export { default as Edition } from "./components/page/Edition.svelte";
|
|
10
12
|
export { default as Feedback } from "./components/app/Feedback.svelte";
|
|
11
13
|
export { default as Loading } from "./components/page/Loading.svelte";
|
|
12
14
|
export { default as EditionModel } from "./models/book/Edition";
|
|
13
|
-
export { EDITION } from "./components/page/Contexts";
|
|
14
|
-
export { Schema } from "./models/book/Schema";
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
+
export { default as Schema } from './models/book/Schema';
|
|
2
|
+
export { EDITION } from './components/page/Contexts';
|
|
1
3
|
export { default as TableOfContents } from './components/page/TableOfContents.svelte';
|
|
2
4
|
export { default as Search } from './components/page/Search.svelte';
|
|
3
5
|
export { default as Index } from './components/page/Index.svelte';
|
|
4
6
|
export { default as References } from './components/page/References.svelte';
|
|
5
|
-
export { default as PossibleChapter } from './components/page/PossibleChapter.svelte';
|
|
6
7
|
export { default as Media } from './components/page/Media.svelte';
|
|
7
8
|
export { default as Print } from './components/page/Print.svelte';
|
|
9
|
+
export { default as Unknown } from './components/page/Unknown.svelte';
|
|
8
10
|
export { default as Glossary } from './components/page/Glossary.svelte';
|
|
9
11
|
export { default as Edition } from './components/page/Edition.svelte';
|
|
10
12
|
export { default as Feedback } from './components/app/Feedback.svelte';
|
|
11
13
|
export { default as Loading } from './components/page/Loading.svelte';
|
|
12
14
|
export { default as EditionModel } from './models/book/Edition';
|
|
13
|
-
export { EDITION } from './components/page/Contexts';
|
|
14
|
-
export { Schema } from './models/book/Schema';
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { DocumentReference } from 'firebase/firestore';
|
|
2
|
+
import Edition from './book/Edition';
|
|
3
|
+
import Book from './book/Book';
|
|
4
|
+
import type { Unsubscribe } from 'firebase/auth';
|
|
5
|
+
export declare function listenToPublishedBooks(react: (books: Book[]) => void): Unsubscribe;
|
|
6
|
+
export declare function listenToEditableBooks(userID: string, react: (books: Book[]) => void): Unsubscribe;
|
|
7
|
+
export declare function listenToPartiallyEditableBooks(userID: string, react: (books: Book[]) => void): Unsubscribe;
|
|
8
|
+
export declare function listenToBooksByName(name: string, react: (book: Book[]) => void): Unsubscribe;
|
|
9
|
+
export declare function listenToBookWithID(id: string, react: (book: Book | null) => void): Unsubscribe;
|
|
10
|
+
export declare function listenToEdition(bookID: string, editionID: string, react: (edition: Edition | null) => void): Unsubscribe;
|
|
11
|
+
export declare function listenToChapters(bookID: string, editionID: string, react: (chapters: [DocumentReference, string][]) => void): Unsubscribe;
|
|
12
|
+
/** Hit the authentication database to get user emails. */
|
|
13
|
+
export declare function getUserEmails(uids: string[]): Promise<Map<string, string> | null>;
|
|
14
|
+
export declare function createUser(email: string): Promise<string | null>;
|
|
15
|
+
export declare function createBook(userID: string): Promise<string>;
|
|
16
|
+
export declare function createNewEdition(book: Book): Promise<Book>;
|
|
17
|
+
export declare function updateLock(edition: Edition, uid: string, content: string, lock: boolean): Promise<boolean>;
|
|
18
|
+
/**
|
|
19
|
+
* Persists the edition in the database, creating and deleting chapters as necessary.
|
|
20
|
+
* returns a map of DocumentReferences for new chapters so they can be persisted client side.
|
|
21
|
+
*/
|
|
22
|
+
export declare function updateEdition(book: Book, previousEdition: Edition | undefined, newEdition: Edition): Promise<Map<string, DocumentReference>>;
|
|
23
|
+
export declare function updateBook(book: Book): Promise<void>;
|
|
24
|
+
export declare function isSubdomainAvailable(subdomain: string, book: Book): Promise<boolean>;
|
|
25
|
+
export declare function getBookIDWithSubdomain(subdomain: string): Promise<string | null>;
|
|
26
|
+
export declare function publish(edition: Edition): Promise<string | {
|
|
27
|
+
url: string;
|
|
28
|
+
}>;
|