bookish-press 0.6.53 → 0.7.0

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 (140) hide show
  1. package/dist/components/Auth.svelte.d.ts +2 -0
  2. package/dist/components/BookPreview.svelte.d.ts +3 -1
  3. package/dist/components/Link.svelte.d.ts +3 -1
  4. package/dist/components/app/BookList.svelte.d.ts +2 -0
  5. package/dist/components/app/Button.svelte.d.ts +2 -0
  6. package/dist/components/app/Feedback.svelte.d.ts +3 -1
  7. package/dist/components/app/Head.svelte.d.ts +3 -1
  8. package/dist/components/app/Large.svelte.d.ts +2 -0
  9. package/dist/components/app/Lead.svelte.d.ts +2 -0
  10. package/dist/components/app/Link.svelte.d.ts +3 -1
  11. package/dist/components/app/Options.svelte.d.ts +2 -0
  12. package/dist/components/app/Paragraph.svelte.d.ts +3 -1
  13. package/dist/components/app/Section.svelte.d.ts +2 -0
  14. package/dist/components/app/Table.svelte.d.ts +2 -0
  15. package/dist/components/app/TextInput.svelte.d.ts +5 -3
  16. package/dist/components/chapter/Atom.svelte.d.ts +2 -0
  17. package/dist/components/chapter/Block.svelte.d.ts +2 -0
  18. package/dist/components/chapter/Callout.svelte.d.ts +2 -0
  19. package/dist/components/chapter/CaptionedCode.svelte.d.ts +2 -0
  20. package/dist/components/chapter/ChapterBody.svelte.d.ts +4 -2
  21. package/dist/components/chapter/Citations.svelte.d.ts +2 -0
  22. package/dist/components/chapter/Code.svelte.d.ts +2 -0
  23. package/dist/components/chapter/Comment.svelte.d.ts +2 -0
  24. package/dist/components/chapter/Definition.svelte.d.ts +2 -0
  25. package/dist/components/chapter/Embed.svelte.d.ts +5 -3
  26. package/dist/components/chapter/ErrorMessage.svelte.d.ts +2 -0
  27. package/dist/components/chapter/Figure.svelte.d.ts +3 -1
  28. package/dist/components/chapter/Footnote.svelte.d.ts +2 -0
  29. package/dist/components/chapter/Format.svelte.d.ts +2 -0
  30. package/dist/components/chapter/InlineCode.svelte.d.ts +2 -0
  31. package/dist/components/chapter/Label.svelte.d.ts +2 -0
  32. package/dist/components/chapter/LineBreak.svelte.d.ts +2 -0
  33. package/dist/components/chapter/Link.svelte.d.ts +2 -0
  34. package/dist/components/chapter/List.svelte.d.ts +2 -0
  35. package/dist/components/chapter/Marginal.svelte.d.ts +2 -0
  36. package/dist/components/chapter/Paragraph.svelte.d.ts +2 -0
  37. package/dist/components/chapter/Positioned.svelte.d.ts +2 -0
  38. package/dist/components/chapter/Problem.svelte.d.ts +2 -0
  39. package/dist/components/chapter/Python.svelte.d.ts +2 -0
  40. package/dist/components/chapter/Quote.svelte.d.ts +2 -0
  41. package/dist/components/chapter/Rule.svelte.d.ts +2 -0
  42. package/dist/components/chapter/Table.svelte.d.ts +2 -0
  43. package/dist/components/chapter/Text.svelte.d.ts +2 -0
  44. package/dist/components/controls/DarkToggle.svelte.d.ts +2 -0
  45. package/dist/components/editor/BookishEditor.svelte.d.ts +4 -2
  46. package/dist/components/editor/CalloutEditor.svelte.d.ts +2 -0
  47. package/dist/components/editor/CaptionedCodeEditor.svelte.d.ts +2 -0
  48. package/dist/components/editor/CaretView.svelte.d.ts +2 -0
  49. package/dist/components/editor/CitationsEditor.svelte.d.ts +2 -0
  50. package/dist/components/editor/ConfirmButton.svelte.d.ts +2 -0
  51. package/dist/components/editor/DefinitionEditor.svelte.d.ts +2 -0
  52. package/dist/components/editor/EmbedEditor.svelte.d.ts +2 -0
  53. package/dist/components/editor/Icon.svelte.d.ts +2 -0
  54. package/dist/components/editor/ImageChooser.svelte.d.ts +2 -0
  55. package/dist/components/editor/ImageThumbnail.svelte.d.ts +2 -0
  56. package/dist/components/editor/InlineCodeEditor.svelte.d.ts +2 -0
  57. package/dist/components/editor/LabelEditor.svelte.d.ts +2 -0
  58. package/dist/components/editor/LanguageEditor.svelte.d.ts +2 -0
  59. package/dist/components/editor/LinkEditor.svelte.d.ts +2 -0
  60. package/dist/components/editor/Note.svelte.d.ts +2 -0
  61. package/dist/components/editor/Permissions.svelte.d.ts +2 -0
  62. package/dist/components/editor/PositionEditor.svelte.d.ts +2 -0
  63. package/dist/components/editor/QuoteEditor.svelte.d.ts +2 -0
  64. package/dist/components/editor/Switch.svelte.d.ts +2 -0
  65. package/dist/components/editor/TableEditor.svelte.d.ts +2 -0
  66. package/dist/components/editor/TextEditor.svelte +1 -0
  67. package/dist/components/editor/TextEditor.svelte.d.ts +4 -2
  68. package/dist/components/editor/Toggle.svelte.d.ts +2 -0
  69. package/dist/components/editor/Toolbar.svelte.d.ts +2 -0
  70. package/dist/components/editor/ToolbarGroup.svelte.d.ts +2 -0
  71. package/dist/components/editor/ToolbarSpacer.svelte.d.ts +2 -0
  72. package/dist/components/editor/URLEditor.svelte.d.ts +2 -0
  73. package/dist/components/page/Acknowledgements.svelte +12 -5
  74. package/dist/components/page/Acknowledgements.svelte.d.ts +2 -0
  75. package/dist/components/page/Analytics.svelte.d.ts +3 -1
  76. package/dist/components/page/Authors.svelte.d.ts +3 -1
  77. package/dist/components/page/BookLoader.svelte.d.ts +2 -0
  78. package/dist/components/page/BulkReferenceEditor.svelte.d.ts +2 -0
  79. package/dist/components/page/Chapter.svelte.d.ts +3 -1
  80. package/dist/components/page/ChapterNumber.svelte.d.ts +2 -0
  81. package/dist/components/page/ChapterTitle.svelte.d.ts +2 -0
  82. package/dist/components/page/DefinitionView.svelte.d.ts +2 -0
  83. package/dist/components/page/Description.svelte.d.ts +2 -0
  84. package/dist/components/page/EditableHeader.svelte +25 -0
  85. package/dist/components/page/EditableHeader.svelte.d.ts +20 -0
  86. package/dist/components/page/Edition.svelte.d.ts +3 -1
  87. package/dist/components/page/EditionLoader.svelte.d.ts +2 -0
  88. package/dist/components/page/Editions.svelte.d.ts +3 -1
  89. package/dist/components/page/Glossary.svelte +10 -4
  90. package/dist/components/page/Glossary.svelte.d.ts +2 -0
  91. package/dist/components/page/Header.svelte +1 -0
  92. package/dist/components/page/Header.svelte.d.ts +5 -3
  93. package/dist/components/page/Index.svelte +9 -5
  94. package/dist/components/page/Index.svelte.d.ts +2 -0
  95. package/dist/components/page/Instructions.svelte.d.ts +2 -0
  96. package/dist/components/page/License.svelte +3 -3
  97. package/dist/components/page/License.svelte.d.ts +2 -0
  98. package/dist/components/page/Loading.svelte.d.ts +2 -0
  99. package/dist/components/page/Media.svelte +6 -2
  100. package/dist/components/page/Media.svelte.d.ts +2 -0
  101. package/dist/components/page/MediaPreview.svelte.d.ts +2 -0
  102. package/dist/components/page/Muted.svelte.d.ts +2 -0
  103. package/dist/components/page/Outline.svelte.d.ts +3 -1
  104. package/dist/components/page/Page.svelte.d.ts +2 -0
  105. package/dist/components/page/PageHeader.svelte.d.ts +3 -1
  106. package/dist/components/page/PageParagraph.svelte.d.ts +2 -0
  107. package/dist/components/page/PossibleChapter.svelte.d.ts +2 -0
  108. package/dist/components/page/PossibleReference.svelte.d.ts +2 -0
  109. package/dist/components/page/Print.svelte.d.ts +2 -0
  110. package/dist/components/page/Publish.svelte.d.ts +2 -0
  111. package/dist/components/page/Reference.svelte.d.ts +3 -1
  112. package/dist/components/page/References.svelte +7 -1
  113. package/dist/components/page/References.svelte.d.ts +2 -0
  114. package/dist/components/page/Rows.svelte.d.ts +2 -0
  115. package/dist/components/page/Search.svelte +11 -5
  116. package/dist/components/page/Search.svelte.d.ts +2 -0
  117. package/dist/components/page/Status.svelte.d.ts +2 -0
  118. package/dist/components/page/SubdomainEditor.svelte.d.ts +2 -0
  119. package/dist/components/page/TableOfContents.svelte +9 -16
  120. package/dist/components/page/TableOfContents.svelte.d.ts +2 -0
  121. package/dist/components/page/TableOfContentsImage.svelte.d.ts +2 -0
  122. package/dist/components/page/TableOfContentsRow.svelte +25 -13
  123. package/dist/components/page/TableOfContentsRow.svelte.d.ts +6 -5
  124. package/dist/components/page/ThemeEditor.svelte.d.ts +2 -0
  125. package/dist/components/page/ThemeEditorPreview.svelte.d.ts +2 -0
  126. package/dist/components/page/ThemeSetEditor.svelte.d.ts +2 -0
  127. package/dist/components/page/ThemeVariableEditor.svelte.d.ts +2 -0
  128. package/dist/components/page/Title.svelte.d.ts +2 -0
  129. package/dist/components/page/Unknown.svelte +2 -2
  130. package/dist/components/page/Unknown.svelte.d.ts +2 -0
  131. package/dist/models/CRUD.js +3 -3
  132. package/dist/models/book/ChapterID.d.ts +3 -9
  133. package/dist/models/book/ChapterID.js +1 -1
  134. package/dist/models/book/Edition.d.ts +12 -4
  135. package/dist/models/book/Edition.js +56 -22
  136. package/dist/models/chapter/AtomNode.d.ts +2 -2
  137. package/dist/models/chapter/FormatNode.d.ts +5 -5
  138. package/dist/models/chapter/FormatNode.js +10 -5
  139. package/dist/models/chapter/MetadataNode.d.ts +3 -3
  140. package/package.json +22 -17
@@ -8,6 +8,8 @@ declare const __propDef: {
8
8
  [evt: string]: CustomEvent<any>;
9
9
  };
10
10
  slots: {};
11
+ exports?: {} | undefined;
12
+ bindings?: string | undefined;
11
13
  };
12
14
  export type InlineCodeEditorProps = typeof __propDef.props;
13
15
  export type InlineCodeEditorEvents = typeof __propDef.events;
@@ -8,6 +8,8 @@ declare const __propDef: {
8
8
  [evt: string]: CustomEvent<any>;
9
9
  };
10
10
  slots: {};
11
+ exports?: {} | undefined;
12
+ bindings?: string | undefined;
11
13
  };
12
14
  export type LabelEditorProps = typeof __propDef.props;
13
15
  export type LabelEditorEvents = typeof __propDef.events;
@@ -8,6 +8,8 @@ declare const __propDef: {
8
8
  [evt: string]: CustomEvent<any>;
9
9
  };
10
10
  slots: {};
11
+ exports?: {} | undefined;
12
+ bindings?: string | undefined;
11
13
  };
12
14
  export type LanguageEditorProps = typeof __propDef.props;
13
15
  export type LanguageEditorEvents = typeof __propDef.events;
@@ -8,6 +8,8 @@ declare const __propDef: {
8
8
  [evt: string]: CustomEvent<any>;
9
9
  };
10
10
  slots: {};
11
+ exports?: {} | undefined;
12
+ bindings?: string | undefined;
11
13
  };
12
14
  export type LinkEditorProps = typeof __propDef.props;
13
15
  export type LinkEditorEvents = typeof __propDef.events;
@@ -23,5 +23,7 @@ declare const __propDef: {
23
23
  slots: {
24
24
  default: {};
25
25
  };
26
+ exports?: undefined;
27
+ bindings?: undefined;
26
28
  };
27
29
  export {};
@@ -11,6 +11,8 @@ declare const __propDef: {
11
11
  [evt: string]: CustomEvent<any>;
12
12
  };
13
13
  slots: {};
14
+ exports?: {} | undefined;
15
+ bindings?: string | undefined;
14
16
  };
15
17
  export type PermissionsProps = typeof __propDef.props;
16
18
  export type PermissionsEvents = typeof __propDef.events;
@@ -9,6 +9,8 @@ declare const __propDef: {
9
9
  [evt: string]: CustomEvent<any>;
10
10
  };
11
11
  slots: {};
12
+ exports?: {} | undefined;
13
+ bindings?: string | undefined;
12
14
  };
13
15
  export type PositionEditorProps = typeof __propDef.props;
14
16
  export type PositionEditorEvents = typeof __propDef.events;
@@ -8,6 +8,8 @@ declare const __propDef: {
8
8
  [evt: string]: CustomEvent<any>;
9
9
  };
10
10
  slots: {};
11
+ exports?: {} | undefined;
12
+ bindings?: string | undefined;
11
13
  };
12
14
  export type QuoteEditorProps = typeof __propDef.props;
13
15
  export type QuoteEditorEvents = typeof __propDef.events;
@@ -11,6 +11,8 @@ declare const __propDef: {
11
11
  [evt: string]: CustomEvent<any>;
12
12
  };
13
13
  slots: {};
14
+ exports?: {} | undefined;
15
+ bindings?: string | undefined;
14
16
  };
15
17
  export type SwitchProps = typeof __propDef.props;
16
18
  export type SwitchEvents = typeof __propDef.events;
@@ -8,6 +8,8 @@ declare const __propDef: {
8
8
  [evt: string]: CustomEvent<any>;
9
9
  };
10
10
  slots: {};
11
+ exports?: {} | undefined;
12
+ bindings?: string | undefined;
11
13
  };
12
14
  export type TableEditorProps = typeof __propDef.props;
13
15
  export type TableEditorEvents = typeof __propDef.events;
@@ -131,6 +131,7 @@ function handleKeyPress(event) {
131
131
  </span>
132
132
  {/if}
133
133
  </span>
134
+ <span style:font-size="small">✐</span>
134
135
 
135
136
  <style>
136
137
  .text-editor {
@@ -6,15 +6,17 @@ declare const __propDef: {
6
6
  placeholder: string;
7
7
  valid: (text: string) => string | undefined;
8
8
  save: (text: string) => Promise<void> | undefined | void | string;
9
- saveOnExit?: boolean | undefined;
9
+ saveOnExit?: boolean;
10
10
  width?: number | undefined;
11
- clip?: boolean | undefined;
11
+ clip?: boolean;
12
12
  move?: ((el: HTMLElement, direction: -1 | 1) => void) | undefined;
13
13
  };
14
14
  events: {
15
15
  [evt: string]: CustomEvent<any>;
16
16
  };
17
17
  slots: {};
18
+ exports?: {} | undefined;
19
+ bindings?: string | undefined;
18
20
  };
19
21
  export type TextEditorProps = typeof __propDef.props;
20
22
  export type TextEditorEvents = typeof __propDef.events;
@@ -10,6 +10,8 @@ declare const __propDef: {
10
10
  slots: {
11
11
  default: {};
12
12
  };
13
+ exports?: {} | undefined;
14
+ bindings?: string | undefined;
13
15
  };
14
16
  export type ToggleProps = typeof __propDef.props;
15
17
  export type ToggleEvents = typeof __propDef.events;
@@ -8,6 +8,8 @@ declare const __propDef: {
8
8
  [evt: string]: CustomEvent<any>;
9
9
  };
10
10
  slots: {};
11
+ exports?: {} | undefined;
12
+ bindings?: string | undefined;
11
13
  };
12
14
  export type ToolbarProps = typeof __propDef.props;
13
15
  export type ToolbarEvents = typeof __propDef.events;
@@ -9,6 +9,8 @@ declare const __propDef: {
9
9
  slots: {
10
10
  default: {};
11
11
  };
12
+ exports?: {} | undefined;
13
+ bindings?: string | undefined;
12
14
  };
13
15
  export type ToolbarGroupProps = typeof __propDef.props;
14
16
  export type ToolbarGroupEvents = typeof __propDef.events;
@@ -19,5 +19,7 @@ declare const __propDef: {
19
19
  [evt: string]: CustomEvent<any>;
20
20
  };
21
21
  slots: {};
22
+ exports?: undefined;
23
+ bindings?: undefined;
22
24
  };
23
25
  export {};
@@ -9,6 +9,8 @@ declare const __propDef: {
9
9
  [evt: string]: CustomEvent<any>;
10
10
  };
11
11
  slots: {};
12
+ exports?: {} | undefined;
13
+ bindings?: string | undefined;
12
14
  };
13
15
  export type UrlEditorProps = typeof __propDef.props;
14
16
  export type UrlEditorEvents = typeof __propDef.events;
@@ -4,6 +4,7 @@ import BookishEditor from '../editor/BookishEditor.svelte';
4
4
  import Instructions from './Instructions.svelte';
5
5
  import { getUser, getEdition, getLeasee, isEditionEditable, lease, } from './Contexts';
6
6
  import PageHeader from './PageHeader.svelte';
7
+ import EditableHeader from './EditableHeader.svelte';
7
8
  let auth = getUser();
8
9
  let edition = getEdition();
9
10
  let editable = isEditionEditable();
@@ -16,10 +17,14 @@ $: acknowledgements = $edition?.getAcknowledgements();
16
17
  </Instructions>
17
18
 
18
19
  <!-- If editable, show acknowledgements even if they're empty, otherwise hide -->
19
- {#if $edition && acknowledgements}
20
+ {#if $edition}
20
21
  {#if editable}
22
+ <EditableHeader
23
+ id="acknowledgements"
24
+ label="Edit acknowledgements header"
25
+ />
21
26
  <BookishEditor
22
- text={acknowledgements}
27
+ text={acknowledgements ?? ''}
23
28
  parser={(text) => Parser.parseChapter($edition, text)}
24
29
  chapter={false}
25
30
  component={ChapterBody}
@@ -27,14 +32,16 @@ $: acknowledgements = $edition?.getAcknowledgements();
27
32
  save={(node) =>
28
33
  $edition
29
34
  ? edition.set(
30
- $edition.withAcknowledgements(node.toBookdown())
35
+ $edition.withAcknowledgements(node.toBookdown()),
31
36
  )
32
37
  : undefined}
33
38
  leasee={getLeasee(auth, edition, `acks`)}
34
39
  lease={(lock) => lease(auth, edition, `acks`, lock)}
35
40
  />
36
- {:else if acknowledgements.length > 0}
37
- <PageHeader id="acknowledgements">Acknowledgements</PageHeader>
41
+ {:else if acknowledgements && acknowledgements.length > 0}
42
+ <PageHeader id="acknowledgements"
43
+ >{$edition.getHeader('acknowledgements')}</PageHeader
44
+ >
38
45
  <ChapterBody node={Parser.parseChapter($edition, acknowledgements)} />
39
46
  {/if}
40
47
  {/if}
@@ -5,6 +5,8 @@ declare const __propDef: {
5
5
  [evt: string]: CustomEvent<any>;
6
6
  };
7
7
  slots: {};
8
+ exports?: {} | undefined;
9
+ bindings?: string | undefined;
8
10
  };
9
11
  export type AcknowledgementsProps = typeof __propDef.props;
10
12
  export type AcknowledgementsEvents = typeof __propDef.events;
@@ -1,12 +1,14 @@
1
1
  import { SvelteComponent } from "svelte";
2
2
  declare const __propDef: {
3
3
  props: {
4
- /** By default, we use the Bookish.press Google Analytics tag */ gtagid?: string | null | undefined;
4
+ /** By default, we use the Bookish.press Google Analytics tag */ gtagid?: string | null;
5
5
  };
6
6
  events: {
7
7
  [evt: string]: CustomEvent<any>;
8
8
  };
9
9
  slots: {};
10
+ exports?: {} | undefined;
11
+ bindings?: string | undefined;
10
12
  };
11
13
  export type AnalyticsProps = typeof __propDef.props;
12
14
  export type AnalyticsEvents = typeof __propDef.events;
@@ -7,12 +7,14 @@ declare const __propDef: {
7
7
  add: () => Promise<void> | void;
8
8
  edit: (index: number, text: string) => Promise<void> | void;
9
9
  remove: (index: number) => Promise<void> | void;
10
- editors?: boolean | undefined;
10
+ editors?: boolean;
11
11
  };
12
12
  events: {
13
13
  [evt: string]: CustomEvent<any>;
14
14
  };
15
15
  slots: {};
16
+ exports?: {} | undefined;
17
+ bindings?: string | undefined;
16
18
  };
17
19
  export type AuthorsProps = typeof __propDef.props;
18
20
  export type AuthorsEvents = typeof __propDef.events;
@@ -7,6 +7,8 @@ declare const __propDef: {
7
7
  slots: {
8
8
  default: {};
9
9
  };
10
+ exports?: {} | undefined;
11
+ bindings?: string | undefined;
10
12
  };
11
13
  export type BookLoaderProps = typeof __propDef.props;
12
14
  export type BookLoaderEvents = typeof __propDef.events;
@@ -5,6 +5,8 @@ declare const __propDef: {
5
5
  [evt: string]: CustomEvent<any>;
6
6
  };
7
7
  slots: {};
8
+ exports?: {} | undefined;
9
+ bindings?: string | undefined;
8
10
  };
9
11
  export type BulkReferenceEditorProps = typeof __propDef.props;
10
12
  export type BulkReferenceEditorEvents = typeof __propDef.events;
@@ -3,12 +3,14 @@ import type ChapterModel from '../../models/book/Chapter';
3
3
  declare const __propDef: {
4
4
  props: {
5
5
  chapter: ChapterModel;
6
- print?: boolean | undefined;
6
+ print?: boolean;
7
7
  };
8
8
  events: {
9
9
  [evt: string]: CustomEvent<any>;
10
10
  };
11
11
  slots: {};
12
+ exports?: {} | undefined;
13
+ bindings?: string | undefined;
12
14
  };
13
15
  export type ChapterProps = typeof __propDef.props;
14
16
  export type ChapterEvents = typeof __propDef.events;
@@ -23,5 +23,7 @@ declare const __propDef: {
23
23
  slots: {
24
24
  default: {};
25
25
  };
26
+ exports?: undefined;
27
+ bindings?: undefined;
26
28
  };
27
29
  export {};
@@ -9,6 +9,8 @@ declare const __propDef: {
9
9
  slots: {
10
10
  default: {};
11
11
  };
12
+ exports?: {} | undefined;
13
+ bindings?: string | undefined;
12
14
  };
13
15
  export type ChapterTitleProps = typeof __propDef.props;
14
16
  export type ChapterTitleEvents = typeof __propDef.events;
@@ -9,6 +9,8 @@ declare const __propDef: {
9
9
  [evt: string]: CustomEvent<any>;
10
10
  };
11
11
  slots: {};
12
+ exports?: {} | undefined;
13
+ bindings?: string | undefined;
12
14
  };
13
15
  export type DefinitionViewProps = typeof __propDef.props;
14
16
  export type DefinitionViewEvents = typeof __propDef.events;
@@ -5,6 +5,8 @@ declare const __propDef: {
5
5
  [evt: string]: CustomEvent<any>;
6
6
  };
7
7
  slots: {};
8
+ exports?: {} | undefined;
9
+ bindings?: string | undefined;
8
10
  };
9
11
  export type DescriptionProps = typeof __propDef.props;
10
12
  export type DescriptionEvents = typeof __propDef.events;
@@ -0,0 +1,25 @@
1
+ <script>import TextEditor from '../editor/TextEditor.svelte';
2
+ import { getEdition, isEditionEditable } from './Contexts';
3
+ import PageHeader from './PageHeader.svelte';
4
+ export let id;
5
+ /** ARIA label */
6
+ export let label;
7
+ let edition = getEdition();
8
+ let editable = isEditionEditable();
9
+ </script>
10
+
11
+ <PageHeader {id}>
12
+ {#if $edition}
13
+ {#if editable}
14
+ <TextEditor
15
+ text={$edition.getHeader(id)}
16
+ placeholder="header"
17
+ {label}
18
+ valid={() => undefined}
19
+ save={(text) => edition.set($edition.withHeader(id, text))}
20
+ />
21
+ {:else}
22
+ {$edition.getHeader(id)}
23
+ {/if}
24
+ {/if}
25
+ </PageHeader>
@@ -0,0 +1,20 @@
1
+ import { SvelteComponent } from "svelte";
2
+ import type { TOCHeaderKey } from '../../models/book/ChapterID';
3
+ declare const __propDef: {
4
+ props: {
5
+ id: TOCHeaderKey;
6
+ /** ARIA label */ label: string;
7
+ };
8
+ events: {
9
+ [evt: string]: CustomEvent<any>;
10
+ };
11
+ slots: {};
12
+ exports?: {} | undefined;
13
+ bindings?: string | undefined;
14
+ };
15
+ export type EditableHeaderProps = typeof __propDef.props;
16
+ export type EditableHeaderEvents = typeof __propDef.events;
17
+ export type EditableHeaderSlots = typeof __propDef.slots;
18
+ export default class EditableHeader extends SvelteComponent<EditableHeaderProps, EditableHeaderEvents, EditableHeaderSlots> {
19
+ }
20
+ export {};
@@ -3,7 +3,7 @@ import type EditionModel from '../../models/book/Edition';
3
3
  declare const __propDef: {
4
4
  props: {
5
5
  edition: EditionModel | undefined;
6
- base?: string | undefined;
6
+ base?: string;
7
7
  };
8
8
  events: {
9
9
  [evt: string]: CustomEvent<any>;
@@ -11,6 +11,8 @@ declare const __propDef: {
11
11
  slots: {
12
12
  default: {};
13
13
  };
14
+ exports?: {} | undefined;
15
+ bindings?: string | undefined;
14
16
  };
15
17
  export type EditionProps = typeof __propDef.props;
16
18
  export type EditionEvents = typeof __propDef.events;
@@ -9,6 +9,8 @@ declare const __propDef: {
9
9
  slots: {
10
10
  default: {};
11
11
  };
12
+ exports?: {} | undefined;
13
+ bindings?: string | undefined;
12
14
  };
13
15
  export type EditionLoaderProps = typeof __propDef.props;
14
16
  export type EditionLoaderEvents = typeof __propDef.events;
@@ -1,12 +1,14 @@
1
1
  import { SvelteComponent } from "svelte";
2
2
  declare const __propDef: {
3
3
  props: {
4
- editors?: boolean | undefined;
4
+ editors?: boolean;
5
5
  };
6
6
  events: {
7
7
  [evt: string]: CustomEvent<any>;
8
8
  };
9
9
  slots: {};
10
+ exports?: {} | undefined;
11
+ bindings?: string | undefined;
10
12
  };
11
13
  export type EditionsProps = typeof __propDef.props;
12
14
  export type EditionsEvents = typeof __propDef.events;
@@ -42,21 +42,27 @@ function addEmptyDefinition() {
42
42
  setImage={(embed) =>
43
43
  $edition
44
44
  ? edition.set(
45
- $edition.withImage(ChapterIDs.GlossaryID, embed)
45
+ $edition.withImage(ChapterIDs.GlossaryID, embed),
46
46
  )
47
47
  : undefined}
48
- header="Glossary"
48
+ header={$edition.getHeader(ChapterIDs.GlossaryID)}
49
49
  tags={$edition.getTags()}
50
+ save={(text) =>
51
+ $edition
52
+ ? edition.set(
53
+ $edition.withHeader(ChapterIDs.GlossaryID, text),
54
+ )
55
+ : undefined}
50
56
  >
51
57
  <Outline
52
58
  slot="outline"
53
59
  previous={$edition.getPreviousChapterID(
54
60
  ChapterIDs.GlossaryID,
55
- editable
61
+ editable,
56
62
  )}
57
63
  next={$edition.getNextChapterID(
58
64
  ChapterIDs.GlossaryID,
59
- editable
65
+ editable,
60
66
  )}
61
67
  />
62
68
  </Header>
@@ -5,6 +5,8 @@ declare const __propDef: {
5
5
  [evt: string]: CustomEvent<any>;
6
6
  };
7
7
  slots: {};
8
+ exports?: {} | undefined;
9
+ bindings?: string | undefined;
8
10
  };
9
11
  export type GlossaryProps = typeof __propDef.props;
10
12
  export type GlossaryEvents = typeof __propDef.events;
@@ -17,6 +17,7 @@ export let print = false;
17
17
  export let tags = undefined;
18
18
  export let getImage = undefined;
19
19
  export let setImage = undefined;
20
+ /** For saving the revised chapter title*/
20
21
  export let save = null;
21
22
  let title = null;
22
23
  let showReminder = true;
@@ -6,11 +6,11 @@ declare const __propDef: {
6
6
  header: string;
7
7
  id: string;
8
8
  subtitle?: string | undefined;
9
- print?: boolean | undefined;
9
+ print?: boolean;
10
10
  tags?: string[] | undefined;
11
11
  getImage?: undefined | (() => string | null);
12
- setImage?: ((embed: string | null) => Promise<void> | void) | undefined;
13
- save?: ((text: string) => Promise<void> | void) | null | undefined;
12
+ setImage?: undefined | ((embed: string | null) => Promise<void> | void);
13
+ /** For saving the revised chapter title*/ save?: ((text: string) => Promise<void> | void) | null;
14
14
  };
15
15
  events: {
16
16
  [evt: string]: CustomEvent<any>;
@@ -20,6 +20,8 @@ declare const __propDef: {
20
20
  before: {};
21
21
  after: {};
22
22
  };
23
+ exports?: {} | undefined;
24
+ bindings?: string | undefined;
23
25
  };
24
26
  export type HeaderProps = typeof __propDef.props;
25
27
  export type HeaderEvents = typeof __propDef.events;
@@ -52,14 +52,18 @@ $: {
52
52
  $edition
53
53
  ? edition.set($edition.withImage(ChapterIDs.IndexID, embed))
54
54
  : undefined}
55
- header="Index"
55
+ header={$edition.getHeader(ChapterIDs.IndexID)}
56
56
  tags={$edition.getTags()}
57
+ save={(text) =>
58
+ $edition
59
+ ? edition.set($edition.withHeader(ChapterIDs.IndexID, text))
60
+ : undefined}
57
61
  >
58
62
  <Outline
59
63
  slot="outline"
60
64
  previous={$edition.getPreviousChapterID(
61
65
  ChapterIDs.IndexID,
62
- editable
66
+ editable,
63
67
  )}
64
68
  next={$edition.getNextChapterID(ChapterIDs.IndexID, editable)}
65
69
  />
@@ -115,19 +119,19 @@ $: {
115
119
  if (numberA === undefined) return -1;
116
120
  if (numberB === undefined) return 1;
117
121
  return numberA - numberB;
118
- } ) as chapterID}
122
+ }, ) as chapterID}
119
123
  <!-- Map them to links to the first occurrence in the chapter. -->
120
124
  <p>
121
125
  <ChapterNumber
122
126
  >Chapter {#if $edition.getChapterNumber(chapterID) !== undefined}{$edition.getChapterNumber(
123
- chapterID
127
+ chapterID,
124
128
  )}.
125
129
  {/if}</ChapterNumber
126
130
  >
127
131
  <ChapterTitle
128
132
  link={`${$base}/${chapterID}?word=${word}`}
129
133
  >{$edition.getChapterName(
130
- chapterID
134
+ chapterID,
131
135
  )}</ChapterTitle
132
136
  >
133
137
  </p>
@@ -5,6 +5,8 @@ declare const __propDef: {
5
5
  [evt: string]: CustomEvent<any>;
6
6
  };
7
7
  slots: {};
8
+ exports?: {} | undefined;
9
+ bindings?: string | undefined;
8
10
  };
9
11
  export type IndexProps = typeof __propDef.props;
10
12
  export type IndexEvents = typeof __propDef.events;
@@ -9,6 +9,8 @@ declare const __propDef: {
9
9
  slots: {
10
10
  default: {};
11
11
  };
12
+ exports?: {} | undefined;
13
+ bindings?: string | undefined;
12
14
  };
13
15
  export type InstructionsProps = typeof __propDef.props;
14
16
  export type InstructionsEvents = typeof __propDef.events;
@@ -3,13 +3,13 @@ import BookishEditor from '../editor/BookishEditor.svelte';
3
3
  import Instructions from './Instructions.svelte';
4
4
  import Format from '../chapter/Format.svelte';
5
5
  import { getUser, getEdition, getLeasee, isEditionEditable, lease, } from './Contexts';
6
- import PageHeader from './PageHeader.svelte';
6
+ import EditableHeader from './EditableHeader.svelte';
7
7
  let auth = getUser();
8
8
  let edition = getEdition();
9
9
  let editable = isEditionEditable();
10
10
  </script>
11
11
 
12
- <PageHeader id="license">License</PageHeader>
12
+ <EditableHeader id="license" label="Edit license header" />
13
13
 
14
14
  <Instructions {editable}>
15
15
  Do you want to specify rights other than your region's default copyrights?
@@ -38,7 +38,7 @@ let editable = isEditionEditable();
38
38
  <Format
39
39
  node={Parser.parseFormat(
40
40
  $edition,
41
- $edition.getLicense()
41
+ $edition.getLicense(),
42
42
  ).withTextIfEmpty()}
43
43
  />
44
44
  {/if}
@@ -5,6 +5,8 @@ declare const __propDef: {
5
5
  [evt: string]: CustomEvent<any>;
6
6
  };
7
7
  slots: {};
8
+ exports?: {} | undefined;
9
+ bindings?: string | undefined;
8
10
  };
9
11
  export type LicenseProps = typeof __propDef.props;
10
12
  export type LicenseEvents = typeof __propDef.events;
@@ -19,5 +19,7 @@ declare const __propDef: {
19
19
  [evt: string]: CustomEvent<any>;
20
20
  };
21
21
  slots: {};
22
+ exports?: undefined;
23
+ bindings?: undefined;
22
24
  };
23
25
  export {};
@@ -38,14 +38,18 @@ $: unused = images?.filter((image) => !embeds.some((embed) => image.url.includes
38
38
  $edition
39
39
  ? edition.set($edition.withImage(ChapterIDs.MediaID, embed))
40
40
  : undefined}
41
- header="Media"
41
+ header={$edition.getHeader(ChapterIDs.MediaID)}
42
42
  tags={$edition.getTags()}
43
+ save={(text) =>
44
+ $edition
45
+ ? edition.set($edition.withHeader(ChapterIDs.MediaID, text))
46
+ : undefined}
43
47
  >
44
48
  <Outline
45
49
  slot="outline"
46
50
  previous={$edition.getPreviousChapterID(
47
51
  ChapterIDs.MediaID,
48
- editable
52
+ editable,
49
53
  )}
50
54
  next={$edition.getNextChapterID(ChapterIDs.MediaID, editable)}
51
55
  />