bookish-press 0.4.47 → 0.4.49

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.
Files changed (533) hide show
  1. package/components/Auth.svelte +55 -0
  2. package/components/Auth.svelte.d.ts +16 -0
  3. package/{src/lib/components/Authentication.ts → components/Authentication.d.ts} +0 -2
  4. package/components/Authentication.js +1 -0
  5. package/{src/lib/components → components}/BookPreview.svelte +22 -27
  6. package/components/BookPreview.svelte.d.ts +18 -0
  7. package/{src/lib/components → components}/External.svelte +1 -2
  8. package/components/External.svelte.d.ts +18 -0
  9. package/components/Link.svelte +51 -0
  10. package/components/Link.svelte.d.ts +18 -0
  11. package/{src/lib/components → components}/app/BookList.svelte +3 -6
  12. package/components/app/BookList.svelte.d.ts +18 -0
  13. package/{src/lib/components → components}/app/Button.svelte +4 -5
  14. package/components/app/Button.svelte.d.ts +22 -0
  15. package/{src/lib/components → components}/app/Feedback.svelte +7 -11
  16. package/components/app/Feedback.svelte.d.ts +18 -0
  17. package/{src/lib/components → components}/app/Head.svelte +1 -2
  18. package/components/app/Head.svelte.d.ts +18 -0
  19. package/{src/lib/components → components}/app/Large.svelte +0 -0
  20. package/components/app/Large.svelte.d.ts +27 -0
  21. package/{src/lib/components → components}/app/Lead.svelte +0 -0
  22. package/components/app/Lead.svelte.d.ts +27 -0
  23. package/{src/lib/components → components}/app/Link.svelte +3 -4
  24. package/components/app/Link.svelte.d.ts +20 -0
  25. package/{src/lib/components → components}/app/Options.svelte +4 -5
  26. package/components/app/Options.svelte.d.ts +19 -0
  27. package/{src/lib/components → components}/app/Paragraph.svelte +1 -2
  28. package/components/app/Paragraph.svelte.d.ts +18 -0
  29. package/{src/lib/components → components}/app/Section.svelte +0 -0
  30. package/components/app/Section.svelte.d.ts +27 -0
  31. package/{src/lib/components → components}/app/Table.svelte +0 -0
  32. package/components/app/Table.svelte.d.ts +27 -0
  33. package/{src/lib/components → components}/app/TextInput.svelte +9 -12
  34. package/components/app/TextInput.svelte.d.ts +22 -0
  35. package/{src/lib/components → components}/chapter/Atom.svelte +12 -18
  36. package/components/chapter/Atom.svelte.d.ts +19 -0
  37. package/components/chapter/Block.svelte +37 -0
  38. package/components/chapter/Block.svelte.d.ts +17 -0
  39. package/{src/lib/components → components}/chapter/Callout.svelte +3 -6
  40. package/components/chapter/Callout.svelte.d.ts +17 -0
  41. package/{src/lib/components → components}/chapter/CaptionedCode.svelte +13 -21
  42. package/components/chapter/CaptionedCode.svelte.d.ts +17 -0
  43. package/{src/lib/components → components}/chapter/ChapterBody.svelte +9 -13
  44. package/components/chapter/ChapterBody.svelte.d.ts +19 -0
  45. package/{src/lib/components → components}/chapter/Citations.svelte +33 -34
  46. package/components/chapter/Citations.svelte.d.ts +17 -0
  47. package/{src/lib/components → components}/chapter/Code.svelte +60 -64
  48. package/components/chapter/Code.svelte.d.ts +22 -0
  49. package/{src/lib/components → components}/chapter/Comment.svelte +18 -30
  50. package/components/chapter/Comment.svelte.d.ts +17 -0
  51. package/{src/lib/components → components}/chapter/Definition.svelte +17 -23
  52. package/components/chapter/Definition.svelte.d.ts +17 -0
  53. package/{src/lib/components → components}/chapter/Embed.svelte +77 -97
  54. package/components/chapter/Embed.svelte.d.ts +20 -0
  55. package/components/chapter/ErrorMessage.svelte +9 -0
  56. package/components/chapter/ErrorMessage.svelte.d.ts +17 -0
  57. package/components/chapter/ExtendedPrism.d.ts +2 -0
  58. package/{src/lib/components → components}/chapter/ExtendedPrism.js +0 -0
  59. package/{src/lib/components → components}/chapter/Figure.svelte +26 -34
  60. package/components/chapter/Figure.svelte.d.ts +24 -0
  61. package/{src/lib/components → components}/chapter/Footnote.svelte +20 -32
  62. package/components/chapter/Footnote.svelte.d.ts +19 -0
  63. package/{src/lib/components → components}/chapter/Format.svelte +34 -39
  64. package/components/chapter/Format.svelte.d.ts +19 -0
  65. package/{src/lib/components → components}/chapter/InlineCode.svelte +5 -9
  66. package/components/chapter/InlineCode.svelte.d.ts +17 -0
  67. package/{src/lib/components → components}/chapter/Label.svelte +14 -23
  68. package/components/chapter/Label.svelte.d.ts +17 -0
  69. package/{src/lib/components → components}/chapter/Link.svelte +21 -27
  70. package/components/chapter/Link.svelte.d.ts +17 -0
  71. package/{src/lib/components → components}/chapter/List.svelte +3 -5
  72. package/components/chapter/List.svelte.d.ts +17 -0
  73. package/{src/lib/components → components}/chapter/Marginal.svelte +41 -54
  74. package/components/chapter/Marginal.svelte.d.ts +22 -0
  75. package/{src/lib/components → components}/chapter/Paragraph.svelte +20 -25
  76. package/components/chapter/Paragraph.svelte.d.ts +18 -0
  77. package/{src/lib/components → components}/chapter/Positioned.svelte +1 -4
  78. package/components/chapter/Positioned.svelte.d.ts +19 -0
  79. package/{src/lib/components → components}/chapter/Problem.svelte +0 -0
  80. package/components/chapter/Problem.svelte.d.ts +27 -0
  81. package/components/chapter/Python.svelte +128 -0
  82. package/components/chapter/Python.svelte.d.ts +18 -0
  83. package/{src/lib/components → components}/chapter/Quote.svelte +19 -13
  84. package/components/chapter/Quote.svelte.d.ts +17 -0
  85. package/{src/lib/components → components}/chapter/Rule.svelte +1 -4
  86. package/components/chapter/Rule.svelte.d.ts +17 -0
  87. package/{src/lib/components → components}/chapter/Table.svelte +7 -11
  88. package/components/chapter/Table.svelte.d.ts +17 -0
  89. package/components/chapter/Text.svelte +87 -0
  90. package/components/chapter/Text.svelte.d.ts +18 -0
  91. package/components/editor/BookishEditor.svelte +884 -0
  92. package/components/editor/BookishEditor.svelte.d.ts +25 -0
  93. package/components/editor/CalloutEditor.svelte +10 -0
  94. package/components/editor/CalloutEditor.svelte.d.ts +17 -0
  95. package/{src/lib/components → components}/editor/CaptionedCodeEditor.svelte +6 -10
  96. package/components/editor/CaptionedCodeEditor.svelte.d.ts +17 -0
  97. package/components/editor/CaretContext.d.ts +50 -0
  98. package/components/editor/CaretContext.js +1 -0
  99. package/{src/lib/components/editor/CaretState.ts → components/editor/CaretState.d.ts} +7 -6
  100. package/components/editor/CaretState.js +1 -0
  101. package/{src/lib/components/editor/CaretUtilities.ts → components/editor/CaretUtilities.d.ts} +0 -1
  102. package/components/editor/CaretUtilities.js +1 -0
  103. package/{src/lib/components → components}/editor/CaretView.svelte +20 -25
  104. package/components/editor/CaretView.svelte.d.ts +25 -0
  105. package/components/editor/CitationsEditor.svelte +53 -0
  106. package/components/editor/CitationsEditor.svelte.d.ts +17 -0
  107. package/{src/lib/components/editor/Clipboard.ts → components/editor/Clipboard.d.ts} +1 -2
  108. package/components/editor/Clipboard.js +1 -0
  109. package/{src/lib/components/editor/Command.ts → components/editor/Command.d.ts} +2 -8
  110. package/components/editor/Command.js +1 -0
  111. package/components/editor/Commands.d.ts +3 -0
  112. package/{src/lib/components/editor/Commands.ts → components/editor/Commands.js} +315 -730
  113. package/components/editor/ConfirmButton.svelte +49 -0
  114. package/components/editor/ConfirmButton.svelte.d.ts +19 -0
  115. package/components/editor/DefinitionEditor.svelte +36 -0
  116. package/components/editor/DefinitionEditor.svelte.d.ts +17 -0
  117. package/components/editor/EmbedEditor.svelte +137 -0
  118. package/components/editor/EmbedEditor.svelte.d.ts +17 -0
  119. package/{src/lib/components → components}/editor/Icon.svelte +1 -2
  120. package/components/editor/Icon.svelte.d.ts +16 -0
  121. package/{src/lib/components → components}/editor/ImageChooser.svelte +19 -24
  122. package/components/editor/ImageChooser.svelte.d.ts +18 -0
  123. package/components/editor/InlineCodeEditor.svelte +12 -0
  124. package/components/editor/InlineCodeEditor.svelte.d.ts +17 -0
  125. package/{src/lib/components → components}/editor/LabelEditor.svelte +9 -14
  126. package/components/editor/LabelEditor.svelte.d.ts +17 -0
  127. package/{src/lib/components → components}/editor/LanguageEditor.svelte +5 -8
  128. package/components/editor/LanguageEditor.svelte.d.ts +17 -0
  129. package/components/editor/LinkEditor.svelte +100 -0
  130. package/components/editor/LinkEditor.svelte.d.ts +17 -0
  131. package/{src/lib/components → components}/editor/Note.svelte +0 -0
  132. package/components/editor/Note.svelte.d.ts +27 -0
  133. package/{src/lib/components → components}/editor/Permissions.svelte +36 -43
  134. package/components/editor/Permissions.svelte.d.ts +20 -0
  135. package/components/editor/PositionEditor.svelte +17 -0
  136. package/components/editor/PositionEditor.svelte.d.ts +18 -0
  137. package/components/editor/QuoteEditor.svelte +10 -0
  138. package/components/editor/QuoteEditor.svelte.d.ts +17 -0
  139. package/{src/lib/components → components}/editor/Switch.svelte +11 -14
  140. package/components/editor/Switch.svelte.d.ts +20 -0
  141. package/components/editor/TableEditor.svelte +10 -0
  142. package/components/editor/TableEditor.svelte.d.ts +17 -0
  143. package/{src/lib/components → components}/editor/TextEditor.svelte +89 -101
  144. package/components/editor/TextEditor.svelte.d.ts +24 -0
  145. package/components/editor/Toggle.svelte +41 -0
  146. package/components/editor/Toggle.svelte.d.ts +19 -0
  147. package/components/editor/Toolbar.svelte +249 -0
  148. package/components/editor/Toolbar.svelte.d.ts +17 -0
  149. package/{src/lib/components → components}/editor/ToolbarGroup.svelte +3 -5
  150. package/components/editor/ToolbarGroup.svelte.d.ts +18 -0
  151. package/{src/lib/components → components}/editor/ToolbarSpacer.svelte +0 -0
  152. package/components/editor/ToolbarSpacer.svelte.d.ts +23 -0
  153. package/components/editor/URLEditor.svelte +13 -0
  154. package/components/editor/URLEditor.svelte.d.ts +18 -0
  155. package/{src/lib/components/editor/UndoState.ts → components/editor/UndoState.d.ts} +2 -3
  156. package/components/editor/UndoState.js +1 -0
  157. package/{src/lib/components → components}/editor/icons/annotate.svg +0 -0
  158. package/{src/lib/components → components}/editor/icons/block.svg +0 -0
  159. package/{src/lib/components → components}/editor/icons/bold.svg +0 -0
  160. package/{src/lib/components → components}/editor/icons/bullets.svg +0 -0
  161. package/{src/lib/components → components}/editor/icons/callout.svg +0 -0
  162. package/{src/lib/components → components}/editor/icons/citation.svg +0 -0
  163. package/{src/lib/components → components}/editor/icons/clear.svg +0 -0
  164. package/{src/lib/components → components}/editor/icons/clipboard.svg +0 -0
  165. package/{src/lib/components → components}/editor/icons/code.svg +0 -0
  166. package/{src/lib/components → components}/editor/icons/columnafter.svg +0 -0
  167. package/{src/lib/components → components}/editor/icons/columnbefore.svg +0 -0
  168. package/{src/lib/components → components}/editor/icons/comment.svg +0 -0
  169. package/{src/lib/components → components}/editor/icons/copy.svg +0 -0
  170. package/{src/lib/components → components}/editor/icons/cut.svg +0 -0
  171. package/{src/lib/components → components}/editor/icons/define.svg +0 -0
  172. package/{src/lib/components → components}/editor/icons/deletecolumn.svg +0 -0
  173. package/{src/lib/components → components}/editor/icons/deleterow.svg +0 -0
  174. package/{src/lib/components → components}/editor/icons/footnote.svg +0 -0
  175. package/{src/lib/components → components}/editor/icons/header1.svg +0 -0
  176. package/{src/lib/components → components}/editor/icons/header2.svg +0 -0
  177. package/{src/lib/components → components}/editor/icons/header3.svg +0 -0
  178. package/{src/lib/components → components}/editor/icons/home.svg +0 -0
  179. package/{src/lib/components → components}/editor/icons/indent.svg +0 -0
  180. package/{src/lib/components → components}/editor/icons/italic.svg +0 -0
  181. package/{src/lib/components → components}/editor/icons/label.svg +0 -0
  182. package/{src/lib/components → components}/editor/icons/left.svg +0 -0
  183. package/{src/lib/components → components}/editor/icons/level.svg +0 -0
  184. package/{src/lib/components → components}/editor/icons/link.svg +0 -0
  185. package/{src/lib/components → components}/editor/icons/list.svg +0 -0
  186. package/{src/lib/components → components}/editor/icons/media.svg +0 -0
  187. package/{src/lib/components → components}/editor/icons/middle.svg +0 -0
  188. package/{src/lib/components → components}/editor/icons/numbers.svg +0 -0
  189. package/{src/lib/components → components}/editor/icons/paragraph.svg +0 -0
  190. package/{src/lib/components → components}/editor/icons/paste.svg +0 -0
  191. package/{src/lib/components → components}/editor/icons/quote.svg +0 -0
  192. package/{src/lib/components → components}/editor/icons/redo.svg +0 -0
  193. package/{src/lib/components → components}/editor/icons/right.svg +0 -0
  194. package/{src/lib/components → components}/editor/icons/rowabove.svg +0 -0
  195. package/{src/lib/components → components}/editor/icons/rowbelow.svg +0 -0
  196. package/{src/lib/components → components}/editor/icons/rule.svg +0 -0
  197. package/{src/lib/components → components}/editor/icons/sub.svg +0 -0
  198. package/{src/lib/components → components}/editor/icons/super.svg +0 -0
  199. package/{src/lib/components → components}/editor/icons/table.svg +0 -0
  200. package/{src/lib/components → components}/editor/icons/text.svg +0 -0
  201. package/{src/lib/components → components}/editor/icons/time.svg +0 -0
  202. package/{src/lib/components → components}/editor/icons/undo.svg +0 -0
  203. package/{src/lib/components → components}/editor/icons/unindent.svg +0 -0
  204. package/{src/lib/components → components}/editor/icons/unlink.svg +0 -0
  205. package/{src/lib/components → components}/page/Acknowledgements.svelte +10 -19
  206. package/components/page/Acknowledgements.svelte.d.ts +14 -0
  207. package/components/page/Authors.svelte +85 -0
  208. package/components/page/Authors.svelte.d.ts +21 -0
  209. package/components/page/BookLoader.svelte +59 -0
  210. package/components/page/BookLoader.svelte.d.ts +16 -0
  211. package/components/page/BulkReferenceEditor.svelte +63 -0
  212. package/components/page/BulkReferenceEditor.svelte.d.ts +14 -0
  213. package/components/page/Chapter.svelte +393 -0
  214. package/components/page/Chapter.svelte.d.ts +18 -0
  215. package/components/page/ChapterContext.d.ts +10 -0
  216. package/components/page/ChapterContext.js +1 -0
  217. package/{src/lib/components → components}/page/ChapterNumber.svelte +0 -0
  218. package/components/page/ChapterNumber.svelte.d.ts +27 -0
  219. package/{src/lib/components → components}/page/ChapterTitle.svelte +2 -4
  220. package/components/page/ChapterTitle.svelte.d.ts +18 -0
  221. package/components/page/Contexts.d.ts +47 -0
  222. package/components/page/Contexts.js +133 -0
  223. package/{src/lib/components → components}/page/DefinitionView.svelte +38 -53
  224. package/components/page/DefinitionView.svelte.d.ts +18 -0
  225. package/{src/lib/components → components}/page/Description.svelte +7 -15
  226. package/components/page/Description.svelte.d.ts +14 -0
  227. package/components/page/Edition.svelte +161 -0
  228. package/components/page/Edition.svelte.d.ts +20 -0
  229. package/components/page/EditionLoader.svelte +99 -0
  230. package/components/page/EditionLoader.svelte.d.ts +18 -0
  231. package/{src/lib/components → components}/page/Editions.svelte +18 -22
  232. package/components/page/Editions.svelte.d.ts +14 -0
  233. package/{src/lib/components → components}/page/Glossary.svelte +28 -33
  234. package/components/page/Glossary.svelte.d.ts +14 -0
  235. package/{src/lib/components → components}/page/Header.svelte +52 -59
  236. package/components/page/Header.svelte.d.ts +29 -0
  237. package/{src/lib/components → components}/page/Index.svelte +47 -50
  238. package/components/page/Index.svelte.d.ts +14 -0
  239. package/{src/lib/components → components}/page/Instructions.svelte +1 -2
  240. package/components/page/Instructions.svelte.d.ts +18 -0
  241. package/{src/lib/components → components}/page/License.svelte +9 -17
  242. package/components/page/License.svelte.d.ts +14 -0
  243. package/{src/lib/components → components}/page/Loading.svelte +0 -0
  244. package/components/page/Loading.svelte.d.ts +23 -0
  245. package/{src/lib/components → components}/page/Media.svelte +27 -44
  246. package/components/page/Media.svelte.d.ts +14 -0
  247. package/{src/lib/components → components}/page/MediaPreview.svelte +2 -3
  248. package/components/page/MediaPreview.svelte.d.ts +19 -0
  249. package/{src/lib/components → components}/page/Muted.svelte +0 -0
  250. package/components/page/Muted.svelte.d.ts +27 -0
  251. package/{src/lib/components → components}/page/Outline.svelte +110 -140
  252. package/components/page/Outline.svelte.d.ts +19 -0
  253. package/components/page/Page.svelte +84 -0
  254. package/components/page/Page.svelte.d.ts +19 -0
  255. package/{src/lib/components → components}/page/PageHeader.svelte +1 -2
  256. package/components/page/PageHeader.svelte.d.ts +18 -0
  257. package/{src/lib/components → components}/page/PageParagraph.svelte +0 -0
  258. package/components/page/PageParagraph.svelte.d.ts +27 -0
  259. package/components/page/PossibleChapter.svelte +14 -0
  260. package/components/page/PossibleChapter.svelte.d.ts +14 -0
  261. package/components/page/PossibleReference.svelte +11 -0
  262. package/components/page/PossibleReference.svelte.d.ts +18 -0
  263. package/{src/lib/components → components}/page/Print.svelte +3 -5
  264. package/components/page/Print.svelte.d.ts +14 -0
  265. package/{src/lib/components → components}/page/Publish.svelte +52 -59
  266. package/components/page/Publish.svelte.d.ts +14 -0
  267. package/{src/lib/components → components}/page/Reference.svelte +30 -39
  268. package/components/page/Reference.svelte.d.ts +17 -0
  269. package/{src/lib/components → components}/page/References.svelte +14 -18
  270. package/components/page/References.svelte.d.ts +14 -0
  271. package/{src/lib/components → components}/page/Rows.svelte +0 -0
  272. package/components/page/Rows.svelte.d.ts +27 -0
  273. package/components/page/Search.svelte +133 -0
  274. package/components/page/Search.svelte.d.ts +14 -0
  275. package/{src/lib/components → components}/page/Status.svelte +3 -5
  276. package/components/page/Status.svelte.d.ts +14 -0
  277. package/{src/lib/components → components}/page/SubdomainEditor.svelte +13 -16
  278. package/components/page/SubdomainEditor.svelte.d.ts +14 -0
  279. package/{src/lib/components → components}/page/TableOfContents.svelte +68 -79
  280. package/components/page/TableOfContents.svelte.d.ts +14 -0
  281. package/components/page/TableOfContentsImage.svelte +18 -0
  282. package/components/page/TableOfContentsImage.svelte.d.ts +16 -0
  283. package/{src/lib/components → components}/page/TableOfContentsRow.svelte +24 -34
  284. package/components/page/TableOfContentsRow.svelte.d.ts +24 -0
  285. package/{src/lib/components → components}/page/ThemeEditor.svelte +33 -44
  286. package/components/page/ThemeEditor.svelte.d.ts +14 -0
  287. package/{src/lib/components → components}/page/ThemeEditorPreview.svelte +12 -21
  288. package/components/page/ThemeEditorPreview.svelte.d.ts +17 -0
  289. package/components/page/ThemeSetEditor.svelte +19 -0
  290. package/components/page/ThemeSetEditor.svelte.d.ts +18 -0
  291. package/{src/lib/components → components}/page/ThemeVariableEditor.svelte +14 -18
  292. package/components/page/ThemeVariableEditor.svelte.d.ts +18 -0
  293. package/{src/lib/components → components}/page/Title.svelte +0 -0
  294. package/components/page/Title.svelte.d.ts +27 -0
  295. package/{src/lib/components → components}/page/Unknown.svelte +8 -10
  296. package/components/page/Unknown.svelte.d.ts +16 -0
  297. package/components/page/margins.d.ts +2 -0
  298. package/{src/lib/components/page/margins.ts → components/page/margins.js} +46 -79
  299. package/index.d.ts +15 -0
  300. package/{src/lib/index.js → index.js} +0 -0
  301. package/models/CRUD.d.ts +27 -0
  302. package/models/CRUD.js +262 -0
  303. package/models/Firebase.d.ts +5 -0
  304. package/{src/lib/models/Firebase.ts → models/Firebase.js} +16 -26
  305. package/models/book/Book.d.ts +61 -0
  306. package/models/book/Book.js +135 -0
  307. package/models/book/BookMedia.d.ts +23 -0
  308. package/models/book/BookMedia.js +108 -0
  309. package/models/book/BookSaveStatus.d.ts +7 -0
  310. package/models/book/BookSaveStatus.js +8 -0
  311. package/models/book/Chapter.d.ts +81 -0
  312. package/models/book/Chapter.js +212 -0
  313. package/models/book/ChapterID.d.ts +10 -0
  314. package/{src/lib/models/book/ChapterID.ts → models/book/ChapterID.js} +0 -1
  315. package/models/book/Definition.d.ts +6 -0
  316. package/models/book/Definition.js +1 -0
  317. package/models/book/Edition.d.ts +139 -0
  318. package/models/book/Edition.js +620 -0
  319. package/models/book/Reference.d.ts +24 -0
  320. package/models/book/Reference.js +78 -0
  321. package/models/book/Schema.d.ts +174 -0
  322. package/{src/lib/models/book/Schema.ts → models/book/Schema.js} +0 -1
  323. package/models/book/Theme.d.ts +113 -0
  324. package/{src/lib/models/book/Theme.ts → models/book/Theme.js} +6 -110
  325. package/{src/lib/models/book/ThemeColors.ts → models/book/ThemeColors.d.ts} +0 -6
  326. package/models/book/ThemeColors.js +1 -0
  327. package/models/book/Words.d.ts +2 -0
  328. package/{src/lib/models/book/Words.ts → models/book/Words.js} +0 -1
  329. package/models/chapter/AtomNode.d.ts +18 -0
  330. package/{src/lib/models/chapter/AtomNode.ts → models/chapter/AtomNode.js} +10 -30
  331. package/models/chapter/BlockNode.d.ts +20 -0
  332. package/{src/lib/models/chapter/BlockNode.ts → models/chapter/BlockNode.js} +47 -80
  333. package/models/chapter/BlocksNode.d.ts +50 -0
  334. package/{src/lib/models/chapter/BlocksNode.ts → models/chapter/BlocksNode.js} +359 -571
  335. package/models/chapter/BlocksNode.test.d.ts +1 -0
  336. package/models/chapter/BlocksNode.test.js +568 -0
  337. package/{src/lib/models/chapter/Bookkeeping.ts → models/chapter/Bookkeeping.d.ts} +0 -0
  338. package/models/chapter/Bookkeeping.js +1 -0
  339. package/models/chapter/CalloutNode.d.ts +17 -0
  340. package/models/chapter/CalloutNode.js +58 -0
  341. package/models/chapter/Caret.d.ts +23 -0
  342. package/{src/lib/models/chapter/Caret.ts → models/chapter/Caret.js} +26 -50
  343. package/models/chapter/ChapterNode.d.ts +34 -0
  344. package/models/chapter/ChapterNode.js +117 -0
  345. package/models/chapter/CitationsNode.d.ts +16 -0
  346. package/{src/lib/models/chapter/CitationsNode.ts → models/chapter/CitationsNode.js} +10 -17
  347. package/models/chapter/CodeNode.d.ts +35 -0
  348. package/{src/lib/models/chapter/CodeNode.ts → models/chapter/CodeNode.js} +62 -125
  349. package/models/chapter/CommentNode.d.ts +18 -0
  350. package/models/chapter/CommentNode.js +48 -0
  351. package/models/chapter/DefinitionNode.d.ts +12 -0
  352. package/{src/lib/models/chapter/DefinitionNode.ts → models/chapter/DefinitionNode.js} +8 -14
  353. package/models/chapter/Edit.d.ts +7 -0
  354. package/models/chapter/Edit.js +1 -0
  355. package/models/chapter/EmbedNode.d.ts +45 -0
  356. package/models/chapter/EmbedNode.js +168 -0
  357. package/models/chapter/ErrorNode.d.ts +17 -0
  358. package/{src/lib/models/chapter/ErrorNode.ts → models/chapter/ErrorNode.js} +8 -15
  359. package/models/chapter/FootnoteNode.d.ts +18 -0
  360. package/models/chapter/FootnoteNode.js +47 -0
  361. package/models/chapter/FormatNode.d.ts +60 -0
  362. package/{src/lib/models/chapter/FormatNode.ts → models/chapter/FormatNode.js} +262 -443
  363. package/models/chapter/FormatNode.test.d.ts +1 -0
  364. package/models/chapter/FormatNode.test.js +96 -0
  365. package/models/chapter/InlineCodeNode.d.ts +12 -0
  366. package/{src/lib/models/chapter/InlineCodeNode.ts → models/chapter/InlineCodeNode.js} +9 -17
  367. package/models/chapter/LabelNode.d.ts +17 -0
  368. package/{src/lib/models/chapter/LabelNode.ts → models/chapter/LabelNode.js} +10 -26
  369. package/models/chapter/LinkNode.d.ts +12 -0
  370. package/{src/lib/models/chapter/LinkNode.ts → models/chapter/LinkNode.js} +7 -12
  371. package/models/chapter/ListNode.d.ts +51 -0
  372. package/{src/lib/models/chapter/ListNode.ts → models/chapter/ListNode.js} +200 -277
  373. package/models/chapter/ListNode.test.d.ts +1 -0
  374. package/{src/lib/models/chapter/ListNode.test.ts → models/chapter/ListNode.test.js} +20 -57
  375. package/models/chapter/MetadataNode.d.ts +17 -0
  376. package/models/chapter/MetadataNode.js +32 -0
  377. package/models/chapter/Node.d.ts +38 -0
  378. package/{src/lib/models/chapter/Node.ts → models/chapter/Node.js} +71 -155
  379. package/models/chapter/Node.test.d.ts +1 -0
  380. package/{src/lib/models → models}/chapter/Node.test.js +0 -0
  381. package/models/chapter/ParagraphNode.d.ts +33 -0
  382. package/{src/lib/models/chapter/ParagraphNode.ts → models/chapter/ParagraphNode.js} +58 -95
  383. package/models/chapter/ParagraphNode.test.d.ts +1 -0
  384. package/models/chapter/ParagraphNode.test.js +30 -0
  385. package/models/chapter/Parser.d.ts +75 -0
  386. package/{src/lib/models/chapter/Parser.ts → models/chapter/Parser.js} +184 -369
  387. package/models/chapter/Parser.test.d.ts +1 -0
  388. package/{src/lib/models/chapter/Parser.test.ts → models/chapter/Parser.test.js} +0 -7
  389. package/{src/lib/models/chapter/Position.ts → models/chapter/Position.d.ts} +0 -0
  390. package/models/chapter/Position.js +1 -0
  391. package/models/chapter/QuoteNode.d.ts +25 -0
  392. package/models/chapter/QuoteNode.js +99 -0
  393. package/{src/lib/models/chapter/RootNode.ts → models/chapter/RootNode.d.ts} +0 -2
  394. package/models/chapter/RootNode.js +1 -0
  395. package/models/chapter/RuleNode.d.ts +15 -0
  396. package/{src/lib/models/chapter/RuleNode.ts → models/chapter/RuleNode.js} +6 -9
  397. package/models/chapter/TableNode.d.ts +37 -0
  398. package/{src/lib/models/chapter/TableNode.ts → models/chapter/TableNode.js} +82 -141
  399. package/models/chapter/TableNode.test.d.ts +1 -0
  400. package/{src/lib/models/chapter/TableNode.test.ts → models/chapter/TableNode.test.js} +10 -27
  401. package/models/chapter/TextNode.d.ts +36 -0
  402. package/{src/lib/models/chapter/TextNode.ts → models/chapter/TextNode.js} +65 -117
  403. package/models/chapter/TextNode.test.d.ts +1 -0
  404. package/{src/lib/models/chapter/TextNode.test.ts → models/chapter/TextNode.test.js} +0 -2
  405. package/package.json +270 -53
  406. package/util/getSubdomain.d.ts +3 -0
  407. package/{src/lib/util/getSubdomain.ts → util/getSubdomain.js} +8 -14
  408. package/util/isMobile.d.ts +2 -0
  409. package/{src/lib/util/isMobile.ts → util/isMobile.js} +0 -1
  410. package/util/mineReference.d.ts +4 -0
  411. package/{src/lib/util/mineReference.ts → util/mineReference.js} +25 -45
  412. package/util/scrollToEyeLevel.d.ts +2 -0
  413. package/{src/lib/util/scrollToEyeLevel.ts → util/scrollToEyeLevel.js} +2 -4
  414. package/.env.example +0 -8
  415. package/.firebaserc +0 -8
  416. package/.prettierignore +0 -8
  417. package/.prettierrc.json +0 -5
  418. package/_update-notifier-last-checked +0 -0
  419. package/firebase.json +0 -46
  420. package/firestore.indexes.json +0 -4
  421. package/firestore.rules +0 -59
  422. package/functions/.eslintrc.js +0 -28
  423. package/functions/package-lock.json +0 -12595
  424. package/functions/package.json +0 -43
  425. package/functions/src/index.ts +0 -345
  426. package/functions/tsconfig.dev.json +0 -3
  427. package/functions/tsconfig.json +0 -15
  428. package/scripts/claims.cjs +0 -99
  429. package/src/app.d.ts +0 -9
  430. package/src/app.html +0 -24
  431. package/src/lib/components/Auth.svelte +0 -65
  432. package/src/lib/components/Link.svelte +0 -58
  433. package/src/lib/components/chapter/Block.svelte +0 -42
  434. package/src/lib/components/chapter/ErrorMessage.svelte +0 -12
  435. package/src/lib/components/chapter/Python.svelte +0 -144
  436. package/src/lib/components/chapter/Text.svelte +0 -109
  437. package/src/lib/components/editor/BookishEditor.svelte +0 -1101
  438. package/src/lib/components/editor/CalloutEditor.svelte +0 -14
  439. package/src/lib/components/editor/CaretContext.ts +0 -55
  440. package/src/lib/components/editor/CitationsEditor.svelte +0 -64
  441. package/src/lib/components/editor/ConfirmButton.svelte +0 -51
  442. package/src/lib/components/editor/DefinitionEditor.svelte +0 -44
  443. package/src/lib/components/editor/EmbedEditor.svelte +0 -152
  444. package/src/lib/components/editor/InlineCodeEditor.svelte +0 -16
  445. package/src/lib/components/editor/LinkEditor.svelte +0 -110
  446. package/src/lib/components/editor/PositionEditor.svelte +0 -21
  447. package/src/lib/components/editor/QuoteEditor.svelte +0 -14
  448. package/src/lib/components/editor/TableEditor.svelte +0 -14
  449. package/src/lib/components/editor/Toggle.svelte +0 -47
  450. package/src/lib/components/editor/Toolbar.svelte +0 -297
  451. package/src/lib/components/editor/URLEditor.svelte +0 -15
  452. package/src/lib/components/page/Authors.svelte +0 -92
  453. package/src/lib/components/page/BookLoader.svelte +0 -77
  454. package/src/lib/components/page/BulkReferenceEditor.svelte +0 -86
  455. package/src/lib/components/page/Chapter.svelte +0 -449
  456. package/src/lib/components/page/ChapterContext.ts +0 -13
  457. package/src/lib/components/page/Contexts.ts +0 -176
  458. package/src/lib/components/page/Edition.svelte +0 -189
  459. package/src/lib/components/page/EditionLoader.svelte +0 -123
  460. package/src/lib/components/page/Page.svelte +0 -94
  461. package/src/lib/components/page/PossibleChapter.svelte +0 -16
  462. package/src/lib/components/page/PossibleReference.svelte +0 -14
  463. package/src/lib/components/page/Search.svelte +0 -153
  464. package/src/lib/components/page/TableOfContentsImage.svelte +0 -22
  465. package/src/lib/components/page/ThemeSetEditor.svelte +0 -21
  466. package/src/lib/models/CRUD.ts +0 -469
  467. package/src/lib/models/book/Book.ts +0 -283
  468. package/src/lib/models/book/BookMedia.ts +0 -182
  469. package/src/lib/models/book/BookSaveStatus.ts +0 -8
  470. package/src/lib/models/book/Chapter.ts +0 -462
  471. package/src/lib/models/book/Definition.ts +0 -2
  472. package/src/lib/models/book/Edition.ts +0 -1216
  473. package/src/lib/models/book/Reference.ts +0 -171
  474. package/src/lib/models/chapter/BlocksNode.test.ts +0 -867
  475. package/src/lib/models/chapter/CalloutNode.ts +0 -79
  476. package/src/lib/models/chapter/ChapterNode.ts +0 -169
  477. package/src/lib/models/chapter/CommentNode.ts +0 -61
  478. package/src/lib/models/chapter/Edit.ts +0 -6
  479. package/src/lib/models/chapter/EmbedNode.ts +0 -257
  480. package/src/lib/models/chapter/FootnoteNode.ts +0 -59
  481. package/src/lib/models/chapter/FormatNode.test.ts +0 -137
  482. package/src/lib/models/chapter/MetadataNode.ts +0 -44
  483. package/src/lib/models/chapter/ParagraphNode.test.ts +0 -54
  484. package/src/lib/models/chapter/QuoteNode.ts +0 -135
  485. package/src/params/edition.ts +0 -3
  486. package/src/routes/+error.svelte +0 -12
  487. package/src/routes/+layout.svelte +0 -241
  488. package/src/routes/+page.svelte +0 -43
  489. package/src/routes/Footer.svelte +0 -0
  490. package/src/routes/Header.svelte +0 -112
  491. package/src/routes/[bookid]/+layout.svelte +0 -5
  492. package/src/routes/[bookid]/[[editionid=edition]]/+error.svelte +0 -14
  493. package/src/routes/[bookid]/[[editionid=edition]]/+layout.svelte +0 -7
  494. package/src/routes/[bookid]/[[editionid=edition]]/+page.svelte +0 -5
  495. package/src/routes/[bookid]/[[editionid=edition]]/[chapterid]/+page.svelte +0 -5
  496. package/src/routes/[bookid]/[[editionid=edition]]/glossary/+page.svelte +0 -5
  497. package/src/routes/[bookid]/[[editionid=edition]]/index/[[letter]]/+page.svelte +0 -5
  498. package/src/routes/[bookid]/[[editionid=edition]]/media/+page.svelte +0 -5
  499. package/src/routes/[bookid]/[[editionid=edition]]/print/+page.svelte +0 -5
  500. package/src/routes/[bookid]/[[editionid=edition]]/references/+page.svelte +0 -5
  501. package/src/routes/[bookid]/[[editionid=edition]]/search/+page.svelte +0 -5
  502. package/src/routes/[bookid]/editions/+page.svelte +0 -20
  503. package/src/routes/about/+page.svelte +0 -102
  504. package/src/routes/confirm/+page.svelte +0 -62
  505. package/src/routes/email/+page.svelte +0 -99
  506. package/src/routes/login/+page.svelte +0 -66
  507. package/src/routes/read/+page.svelte +0 -38
  508. package/src/routes/write/+error.svelte +0 -10
  509. package/src/routes/write/+layout.svelte +0 -11
  510. package/src/routes/write/+page.svelte +0 -114
  511. package/src/routes/write/[bookid]/+layout.svelte +0 -5
  512. package/src/routes/write/[bookid]/[[editionid=edition]]/+layout.svelte +0 -7
  513. package/src/routes/write/[bookid]/[[editionid=edition]]/+page.svelte +0 -5
  514. package/src/routes/write/[bookid]/[[editionid=edition]]/[chapterid]/+page.svelte +0 -5
  515. package/src/routes/write/[bookid]/[[editionid=edition]]/glossary/+page.svelte +0 -5
  516. package/src/routes/write/[bookid]/[[editionid=edition]]/index/[[letter]]/+page.svelte +0 -5
  517. package/src/routes/write/[bookid]/[[editionid=edition]]/media/+page.svelte +0 -5
  518. package/src/routes/write/[bookid]/[[editionid=edition]]/print/+page.svelte +0 -5
  519. package/src/routes/write/[bookid]/[[editionid=edition]]/references/+page.svelte +0 -5
  520. package/src/routes/write/[bookid]/[[editionid=edition]]/search/+page.svelte +0 -5
  521. package/src/routes/write/[bookid]/[[editionid=edition]]/theme/+page.svelte +0 -5
  522. package/src/routes/write/[bookid]/[[editionid=edition]]/unknown/+page.svelte +0 -5
  523. package/src/routes/write/[bookid]/editions/+page.svelte +0 -20
  524. package/src/vite-env.d.ts +0 -1
  525. package/static/icons/favicon.png +0 -0
  526. package/static/icons/icon.png +0 -0
  527. package/static/icons/ios-icon.png +0 -0
  528. package/storage.rules +0 -9
  529. package/svelte.config.js +0 -19
  530. package/tsconfig.json +0 -18
  531. package/tsconfig.node.json +0 -9
  532. package/vite.config.ts +0 -8
  533. package/vite.reader.config.ts +0 -32
@@ -1,25 +1,21 @@
1
- <script lang="ts">
2
- import { createNewEdition } from '$lib/models/CRUD';
3
- import Instructions from '$lib/components/page/Instructions.svelte';
4
- import Note from '../editor/Note.svelte';
5
- import { getUser, getBook, isBookEditable } from './Contexts';
6
- import Button from '../app/Button.svelte';
7
- import Link from '../app/Link.svelte';
8
- import Format from '../chapter/Format.svelte';
9
- import Parser from '../../models/chapter/Parser';
10
- import Permissions from '../editor/Permissions.svelte';
11
-
12
- let book = getBook();
13
- let editable = isBookEditable();
14
-
15
- $: editions = $book?.getEditions();
16
-
17
- $: latestPublishedID = $book?.getLatestPublishedEditionID();
18
-
19
- async function handleDraftEdition() {
20
- if ($book === undefined) return;
21
- book.set(await createNewEdition($book));
22
- }
1
+ <script>import { createNewEdition } from '../../models/CRUD';
2
+ import Instructions from './Instructions.svelte';
3
+ import Note from '../editor/Note.svelte';
4
+ import { getUser, getBook, isBookEditable } from './Contexts';
5
+ import Button from '../app/Button.svelte';
6
+ import Link from '../app/Link.svelte';
7
+ import Format from '../chapter/Format.svelte';
8
+ import Parser from '../../models/chapter/Parser';
9
+ import Permissions from '../editor/Permissions.svelte';
10
+ let book = getBook();
11
+ let editable = isBookEditable();
12
+ $: editions = $book?.getEditions();
13
+ $: latestPublishedID = $book?.getLatestPublishedEditionID();
14
+ async function handleDraftEdition() {
15
+ if ($book === undefined)
16
+ return;
17
+ book.set(await createNewEdition($book));
18
+ }
23
19
  </script>
24
20
 
25
21
  {#if $book && editions}
@@ -0,0 +1,14 @@
1
+ import { SvelteComponentTyped } from "svelte";
2
+ declare const __propDef: {
3
+ props: Record<string, never>;
4
+ events: {
5
+ [evt: string]: CustomEvent<any>;
6
+ };
7
+ slots: {};
8
+ };
9
+ export type EditionsProps = typeof __propDef.props;
10
+ export type EditionsEvents = typeof __propDef.events;
11
+ export type EditionsSlots = typeof __propDef.slots;
12
+ export default class Editions extends SvelteComponentTyped<EditionsProps, EditionsEvents, EditionsSlots> {
13
+ }
14
+ export {};
@@ -1,37 +1,32 @@
1
- <script lang="ts">
2
- import Header from './Header.svelte';
3
- import Outline from './Outline.svelte';
4
- import Page from './Page.svelte';
5
- import ChapterIDs from '$lib/models/book/ChapterID';
6
- import DefinitionView from './DefinitionView.svelte';
7
- import { getUser, getEdition, isEditionEditable } from './Contexts';
8
- import Instructions from './Instructions.svelte';
9
- import Button from '../app/Button.svelte';
10
-
11
- let auth = getUser();
12
- let edition = getEdition();
13
- let editable = isEditionEditable();
14
-
15
- $: glossary = $edition?.getGlossary() ?? {};
16
- // Sort by canonical phrases
17
- $: keys =
18
- $edition === undefined
19
- ? []
20
- : glossary === undefined || Object.keys(glossary).length === 0
1
+ <script>import Header from './Header.svelte';
2
+ import Outline from './Outline.svelte';
3
+ import Page from './Page.svelte';
4
+ import ChapterIDs from '../../models/book/ChapterID';
5
+ import DefinitionView from './DefinitionView.svelte';
6
+ import { getUser, getEdition, isEditionEditable } from './Contexts';
7
+ import Instructions from './Instructions.svelte';
8
+ import Button from '../app/Button.svelte';
9
+ let auth = getUser();
10
+ let edition = getEdition();
11
+ let editable = isEditionEditable();
12
+ $: glossary = $edition?.getGlossary() ?? {};
13
+ // Sort by canonical phrases
14
+ $: keys =
15
+ $edition === undefined
16
+ ? []
17
+ : glossary === undefined || Object.keys(glossary).length === 0
21
18
  ? null
22
- : Object.keys(glossary).sort((a, b) =>
23
- glossary[a].phrase.localeCompare(glossary[b].phrase)
24
- );
25
-
26
- function addEmptyDefinition() {
27
- if ($edition === undefined) return;
28
- // Generate an ID.
29
- const letters = 'abcdefghijklmnopqrstuvwxyz'.split('');
30
- let id = '';
31
- while (id.length < 4 || $edition.hasDefinition(id))
32
- id = id + letters[Math.round(Math.random() * 26)];
33
- edition.set($edition.withDefinition(id, '', '', []));
34
- }
19
+ : Object.keys(glossary).sort((a, b) => glossary[a].phrase.localeCompare(glossary[b].phrase));
20
+ function addEmptyDefinition() {
21
+ if ($edition === undefined)
22
+ return;
23
+ // Generate an ID.
24
+ const letters = 'abcdefghijklmnopqrstuvwxyz'.split('');
25
+ let id = '';
26
+ while (id.length < 4 || $edition.hasDefinition(id))
27
+ id = id + letters[Math.round(Math.random() * 26)];
28
+ edition.set($edition.withDefinition(id, '', '', []));
29
+ }
35
30
  </script>
36
31
 
37
32
  {#if $edition}
@@ -0,0 +1,14 @@
1
+ import { SvelteComponentTyped } from "svelte";
2
+ declare const __propDef: {
3
+ props: Record<string, never>;
4
+ events: {
5
+ [evt: string]: CustomEvent<any>;
6
+ };
7
+ slots: {};
8
+ };
9
+ export type GlossaryProps = typeof __propDef.props;
10
+ export type GlossaryEvents = typeof __propDef.events;
11
+ export type GlossarySlots = typeof __propDef.slots;
12
+ export default class Glossary extends SvelteComponentTyped<GlossaryProps, GlossaryEvents, GlossarySlots> {
13
+ }
14
+ export {};
@@ -1,63 +1,56 @@
1
- <script lang="ts">
2
- import Parser from '$lib/models/chapter/Parser';
3
- import Embed from '$lib/components/chapter/Embed.svelte';
4
- import BookishEditor from '$lib/components/editor/BookishEditor.svelte';
5
- import Title from './Title.svelte';
6
- import { onMount } from 'svelte';
7
- import TextEditor from '$lib/components/editor/TextEditor.svelte';
8
- import { getUser, getEdition, getLeasee, lease } from './Contexts';
9
- import Button from '../app/Button.svelte';
10
-
11
- /** True if an author should be able to edit this header. */
12
- export let editable: boolean;
13
- export let label: string;
14
- export let header: string;
15
- export let id: string;
16
- export let subtitle: string | undefined = undefined;
17
- export let print: boolean = false;
18
- export let tags: string[] | undefined = undefined;
19
- export let getImage: () => string | null;
20
- export let setImage: (embed: string | null) => Promise<void> | void;
21
- export let save: ((text: string) => Promise<void> | void) | null = null;
22
-
23
- let title: HTMLHeadingElement | null = null;
24
- let showReminder: boolean = true;
25
-
26
- let auth = getUser();
27
- let edition = getEdition();
28
-
29
- function updateScrollReminder() {
30
- // If the bottom of the window is below the top of the title, hide the reminder.
31
- if (title)
32
- showReminder =
33
- window.scrollY + window.innerHeight <=
1
+ <script>import Parser from '../../models/chapter/Parser';
2
+ import Embed from '../chapter/Embed.svelte';
3
+ import BookishEditor from '../editor/BookishEditor.svelte';
4
+ import Title from './Title.svelte';
5
+ import { onMount } from 'svelte';
6
+ import TextEditor from '../editor/TextEditor.svelte';
7
+ import { getUser, getEdition, getLeasee, lease } from './Contexts';
8
+ import Button from '../app/Button.svelte';
9
+ /** True if an author should be able to edit this header. */
10
+ export let editable;
11
+ export let label;
12
+ export let header;
13
+ export let id;
14
+ export let subtitle = undefined;
15
+ export let print = false;
16
+ export let tags = undefined;
17
+ export let getImage;
18
+ export let setImage;
19
+ export let save = null;
20
+ let title = null;
21
+ let showReminder = true;
22
+ let auth = getUser();
23
+ let edition = getEdition();
24
+ function updateScrollReminder() {
25
+ // If the bottom of the window is below the top of the title, hide the reminder.
26
+ if (title)
27
+ showReminder =
28
+ window.scrollY + window.innerHeight <=
34
29
  title.getBoundingClientRect().top + window.scrollY;
35
- }
36
-
37
- function addCover() {
38
- if (setImage) setImage('|||||');
39
- }
40
- function removeCover() {
41
- if (setImage) setImage(null);
42
- }
43
-
44
- // When the title becomes visible or hidden, update the scroll reminder.
45
- onMount(() => {
46
- const intersectionObserver = new IntersectionObserver(() =>
47
- updateScrollReminder()
48
- );
49
- if (title) intersectionObserver.observe(title);
50
- updateScrollReminder();
51
-
52
- // Stop observing when unmounted.
53
- return () => {
54
- if (title) intersectionObserver.unobserve(title);
55
- };
56
- });
57
-
58
- // Get the embed, update when getImage function prop changes.
59
- let embed: string | null;
60
- $: embed = getImage();
30
+ }
31
+ function addCover() {
32
+ if (setImage)
33
+ setImage('|||||');
34
+ }
35
+ function removeCover() {
36
+ if (setImage)
37
+ setImage(null);
38
+ }
39
+ // When the title becomes visible or hidden, update the scroll reminder.
40
+ onMount(() => {
41
+ const intersectionObserver = new IntersectionObserver(() => updateScrollReminder());
42
+ if (title)
43
+ intersectionObserver.observe(title);
44
+ updateScrollReminder();
45
+ // Stop observing when unmounted.
46
+ return () => {
47
+ if (title)
48
+ intersectionObserver.unobserve(title);
49
+ };
50
+ });
51
+ // Get the embed, update when getImage function prop changes.
52
+ let embed;
53
+ $: embed = getImage();
61
54
  </script>
62
55
 
63
56
  <header class="bookish-chapter-header">
@@ -0,0 +1,29 @@
1
+ import { SvelteComponentTyped } from "svelte";
2
+ declare const __propDef: {
3
+ props: {
4
+ /** True if an author should be able to edit this header. */ editable: boolean;
5
+ label: string;
6
+ header: string;
7
+ id: string;
8
+ subtitle?: string | undefined;
9
+ print?: boolean | undefined;
10
+ tags?: string[] | undefined;
11
+ getImage: () => string | null;
12
+ setImage: (embed: string | null) => Promise<void> | void;
13
+ save?: ((text: string) => Promise<void> | void) | null | undefined;
14
+ };
15
+ events: {
16
+ [evt: string]: CustomEvent<any>;
17
+ };
18
+ slots: {
19
+ outline: {};
20
+ before: {};
21
+ after: {};
22
+ };
23
+ };
24
+ export type HeaderProps = typeof __propDef.props;
25
+ export type HeaderEvents = typeof __propDef.events;
26
+ export type HeaderSlots = typeof __propDef.slots;
27
+ export default class Header extends SvelteComponentTyped<HeaderProps, HeaderEvents, HeaderSlots> {
28
+ }
29
+ export {};
@@ -1,51 +1,44 @@
1
- <script lang="ts">
2
- import Header from '$lib/components/page/Header.svelte';
3
- import Outline from '$lib/components/page/Outline.svelte';
4
- import Page from '$lib/components/page/Page.svelte';
5
- import Instructions from '$lib/components/page/Instructions.svelte';
6
- import ChapterIDs from '$lib/models/book/ChapterID';
7
- import Link from '$lib/components/Link.svelte';
8
- import { getBase, getEdition, isEditionEditable } from './Contexts';
9
- import { page } from '$app/stores';
10
- import Muted from './Muted.svelte';
11
- import ChapterTitle from './ChapterTitle.svelte';
12
- import ChapterNumber from './ChapterNumber.svelte';
13
- import PageHeader from './PageHeader.svelte';
14
- import Rows from './Rows.svelte';
15
-
16
- let editable = isEditionEditable();
17
- let edition = getEdition();
18
- let base = getBase();
19
-
20
- // What letter are we matching?
21
- $: letter = $page.params.letter;
22
-
23
- $: bookIndex = $edition?.getBookIndex() ?? {};
24
-
25
- let letters: Record<string, boolean> = {};
26
- // Figure out what letters have words
27
- $: {
28
- for (const word of Object.keys(bookIndex).sort((a, b) =>
29
- a.localeCompare(b)
30
- ))
31
- letters[word.charAt(0).toLocaleLowerCase()] = true;
32
- }
33
-
34
- let words: (string | true)[] = [];
35
- $: {
36
- words = [];
37
- let count = 0;
38
- Object.keys(bookIndex)
39
- .sort((a, b) => a.localeCompare(b))
40
- .forEach((word) => {
41
- const firstLetter = word.charAt(0).toLowerCase();
42
- if (letter === firstLetter) {
43
- count++;
44
- if (count % 20 === 0) words.push(true);
45
- words.push(word);
46
- }
47
- });
48
- }
1
+ <script>import Header from './Header.svelte';
2
+ import Outline from './Outline.svelte';
3
+ import Page from './Page.svelte';
4
+ import Instructions from './Instructions.svelte';
5
+ import ChapterIDs from '../../models/book/ChapterID';
6
+ import Link from '../Link.svelte';
7
+ import { getBase, getEdition, isEditionEditable } from './Contexts';
8
+ import { page } from '$app/stores';
9
+ import Muted from './Muted.svelte';
10
+ import ChapterTitle from './ChapterTitle.svelte';
11
+ import ChapterNumber from './ChapterNumber.svelte';
12
+ import PageHeader from './PageHeader.svelte';
13
+ import Rows from './Rows.svelte';
14
+ let editable = isEditionEditable();
15
+ let edition = getEdition();
16
+ let base = getBase();
17
+ // What letter are we matching?
18
+ $: letter = $page.params.letter;
19
+ $: bookIndex = $edition?.getBookIndex() ?? {};
20
+ let letters = {};
21
+ // Figure out what letters have words
22
+ $: {
23
+ for (const word of Object.keys(bookIndex).sort((a, b) => a.localeCompare(b)))
24
+ letters[word.charAt(0).toLocaleLowerCase()] = true;
25
+ }
26
+ let words = [];
27
+ $: {
28
+ words = [];
29
+ let count = 0;
30
+ Object.keys(bookIndex)
31
+ .sort((a, b) => a.localeCompare(b))
32
+ .forEach((word) => {
33
+ const firstLetter = word.charAt(0).toLowerCase();
34
+ if (letter === firstLetter) {
35
+ count++;
36
+ if (count % 20 === 0)
37
+ words.push(true);
38
+ words.push(word);
39
+ }
40
+ });
41
+ }
49
42
  </script>
50
43
 
51
44
  {#if $edition}
@@ -104,13 +97,13 @@
104
97
  {#each words as word, index}
105
98
  {#if word === true}
106
99
  <tr
107
- ><td colspan={2}
100
+ ><td class="term" colspan={2}
108
101
  ><PageHeader>{words[index + 1]}</PageHeader></td
109
102
  ></tr
110
103
  >
111
104
  {:else}
112
105
  <tr>
113
- <td>{word}</td>
106
+ <td class="term">{word}</td>
114
107
  <td>
115
108
  <!-- Sort the chapters by chapter number -->
116
109
  {#each Array.from(bookIndex[word]).sort( (a, b) => {
@@ -150,6 +143,10 @@
150
143
  margin-top: 0;
151
144
  }
152
145
 
146
+ .term {
147
+ vertical-align: baseline;
148
+ }
149
+
153
150
  .letters {
154
151
  display: flex;
155
152
  flex-direction: row;
@@ -0,0 +1,14 @@
1
+ import { SvelteComponentTyped } from "svelte";
2
+ declare const __propDef: {
3
+ props: Record<string, never>;
4
+ events: {
5
+ [evt: string]: CustomEvent<any>;
6
+ };
7
+ slots: {};
8
+ };
9
+ export type IndexProps = typeof __propDef.props;
10
+ export type IndexEvents = typeof __propDef.events;
11
+ export type IndexSlots = typeof __propDef.slots;
12
+ export default class Index extends SvelteComponentTyped<IndexProps, IndexEvents, IndexSlots> {
13
+ }
14
+ export {};
@@ -1,5 +1,4 @@
1
- <script lang="ts">
2
- export let editable: boolean;
1
+ <script>export let editable;
3
2
  </script>
4
3
 
5
4
  {#if editable}
@@ -0,0 +1,18 @@
1
+ import { SvelteComponentTyped } from "svelte";
2
+ declare const __propDef: {
3
+ props: {
4
+ editable: boolean;
5
+ };
6
+ events: {
7
+ [evt: string]: CustomEvent<any>;
8
+ };
9
+ slots: {
10
+ default: {};
11
+ };
12
+ };
13
+ export type InstructionsProps = typeof __propDef.props;
14
+ export type InstructionsEvents = typeof __propDef.events;
15
+ export type InstructionsSlots = typeof __propDef.slots;
16
+ export default class Instructions extends SvelteComponentTyped<InstructionsProps, InstructionsEvents, InstructionsSlots> {
17
+ }
18
+ export {};
@@ -1,20 +1,12 @@
1
- <script lang="ts">
2
- import Parser from '$lib/models/chapter/Parser';
3
- import BookishEditor from '$lib/components/editor/BookishEditor.svelte';
4
- import Instructions from '$lib/components/page/Instructions.svelte';
5
- import Format from '$lib/components/chapter/Format.svelte';
6
- import {
7
- getUser,
8
- getEdition,
9
- getLeasee,
10
- isEditionEditable,
11
- lease,
12
- } from './Contexts';
13
- import PageHeader from './PageHeader.svelte';
14
-
15
- let auth = getUser();
16
- let edition = getEdition();
17
- let editable = isEditionEditable();
1
+ <script>import Parser from '../../models/chapter/Parser';
2
+ import BookishEditor from '../editor/BookishEditor.svelte';
3
+ import Instructions from './Instructions.svelte';
4
+ import Format from '../chapter/Format.svelte';
5
+ import { getUser, getEdition, getLeasee, isEditionEditable, lease, } from './Contexts';
6
+ import PageHeader from './PageHeader.svelte';
7
+ let auth = getUser();
8
+ let edition = getEdition();
9
+ let editable = isEditionEditable();
18
10
  </script>
19
11
 
20
12
  <PageHeader id="license">License</PageHeader>
@@ -0,0 +1,14 @@
1
+ import { SvelteComponentTyped } from "svelte";
2
+ declare const __propDef: {
3
+ props: Record<string, never>;
4
+ events: {
5
+ [evt: string]: CustomEvent<any>;
6
+ };
7
+ slots: {};
8
+ };
9
+ export type LicenseProps = typeof __propDef.props;
10
+ export type LicenseEvents = typeof __propDef.events;
11
+ export type LicenseSlots = typeof __propDef.slots;
12
+ export default class License extends SvelteComponentTyped<LicenseProps, LicenseEvents, LicenseSlots> {
13
+ }
14
+ export {};
@@ -0,0 +1,23 @@
1
+ /** @typedef {typeof __propDef.props} LoadingProps */
2
+ /** @typedef {typeof __propDef.events} LoadingEvents */
3
+ /** @typedef {typeof __propDef.slots} LoadingSlots */
4
+ export default class Loading extends SvelteComponentTyped<{
5
+ [x: string]: never;
6
+ }, {
7
+ [evt: string]: CustomEvent<any>;
8
+ }, {}> {
9
+ }
10
+ export type LoadingProps = typeof __propDef.props;
11
+ export type LoadingEvents = typeof __propDef.events;
12
+ export type LoadingSlots = typeof __propDef.slots;
13
+ import { SvelteComponentTyped } from "svelte";
14
+ declare const __propDef: {
15
+ props: {
16
+ [x: string]: never;
17
+ };
18
+ events: {
19
+ [evt: string]: CustomEvent<any>;
20
+ };
21
+ slots: {};
22
+ };
23
+ export {};
@@ -1,47 +1,30 @@
1
- <script lang="ts">
2
- import Header from '$lib/components/page/Header.svelte';
3
- import Outline from '$lib/components/page/Outline.svelte';
4
- import type { Image } from '$lib/models/book/BookMedia';
5
- import Page from '$lib/components/page/Page.svelte';
6
- import Instructions from '$lib/components/page/Instructions.svelte';
7
- import ChapterIDs from '$lib/models/book/ChapterID';
8
- import Format from '$lib/components/chapter/Format.svelte';
9
- import MediaPreview from './MediaPreview.svelte';
10
- import { onMount } from 'svelte';
11
- import {
12
- getBase,
13
- getBook,
14
- getEdition,
15
- isBookEditable,
16
- isEditionEditable,
17
- } from './Contexts';
18
- import Button from '../app/Button.svelte';
19
- import PageHeader from './PageHeader.svelte';
20
-
21
- let book = getBook();
22
- let edition = getEdition();
23
- let editable = isBookEditable();
24
- let base = getBase();
25
-
26
- let images: Image[] | undefined = [];
27
-
28
- $: embeds = $edition?.getEmbeds() ?? [];
29
- $: media = $book?.getMedia();
30
-
31
- function updateImages(newImages: Image[] | undefined) {
32
- images = newImages;
33
- }
34
-
35
- onMount(() => {
36
- // Listen to image changes.
37
- media?.notify(updateImages);
38
- return () => media?.stopNotifying(updateImages);
39
- });
40
-
41
- $: unused = images?.filter(
42
- (image) =>
43
- embeds.find((embed) => embed.getURL() === image.url) === undefined
44
- );
1
+ <script>import Header from './Header.svelte';
2
+ import Outline from './Outline.svelte';
3
+ import Page from './Page.svelte';
4
+ import Instructions from './Instructions.svelte';
5
+ import ChapterIDs from '../../models/book/ChapterID';
6
+ import Format from '../chapter/Format.svelte';
7
+ import MediaPreview from './MediaPreview.svelte';
8
+ import { onMount } from 'svelte';
9
+ import { getBase, getBook, getEdition, isBookEditable, isEditionEditable, } from './Contexts';
10
+ import Button from '../app/Button.svelte';
11
+ import PageHeader from './PageHeader.svelte';
12
+ let book = getBook();
13
+ let edition = getEdition();
14
+ let editable = isBookEditable();
15
+ let base = getBase();
16
+ let images = [];
17
+ $: embeds = $edition?.getEmbeds() ?? [];
18
+ $: media = $book?.getMedia();
19
+ function updateImages(newImages) {
20
+ images = newImages;
21
+ }
22
+ onMount(() => {
23
+ // Listen to image changes.
24
+ media?.notify(updateImages);
25
+ return () => media?.stopNotifying(updateImages);
26
+ });
27
+ $: unused = images?.filter((image) => embeds.find((embed) => embed.getURL() === image.url) === undefined);
45
28
  </script>
46
29
 
47
30
  {#if $edition}
@@ -0,0 +1,14 @@
1
+ import { SvelteComponentTyped } from "svelte";
2
+ declare const __propDef: {
3
+ props: Record<string, never>;
4
+ events: {
5
+ [evt: string]: CustomEvent<any>;
6
+ };
7
+ slots: {};
8
+ };
9
+ export type MediaProps = typeof __propDef.props;
10
+ export type MediaEvents = typeof __propDef.events;
11
+ export type MediaSlots = typeof __propDef.slots;
12
+ export default class Media extends SvelteComponentTyped<MediaProps, MediaEvents, MediaSlots> {
13
+ }
14
+ export {};
@@ -1,6 +1,5 @@
1
- <script lang="ts">
2
- export let url: string;
3
- export let alt: string;
1
+ <script>export let url;
2
+ export let alt;
4
3
  </script>
5
4
 
6
5
  <figure class={'media-preview'}>