@fiduswriter/bibliography-manager 0.1.6 → 0.1.8

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 (175) hide show
  1. package/dist/database/index.d.ts +12 -11
  2. package/dist/database/index.d.ts.map +1 -1
  3. package/dist/database/index.js +22 -16
  4. package/dist/database/index.js.map +1 -1
  5. package/dist/database/server_connector.d.ts +14 -15
  6. package/dist/database/server_connector.d.ts.map +1 -1
  7. package/dist/database/server_connector.js +17 -9
  8. package/dist/database/server_connector.js.map +1 -1
  9. package/dist/export/index.d.ts +6 -4
  10. package/dist/export/index.d.ts.map +1 -1
  11. package/dist/export/index.js +7 -1
  12. package/dist/export/index.js.map +1 -1
  13. package/dist/form/cats.d.ts +5 -4
  14. package/dist/form/cats.d.ts.map +1 -1
  15. package/dist/form/cats.js +2 -0
  16. package/dist/form/cats.js.map +1 -1
  17. package/dist/form/fields/date.d.ts +4 -4
  18. package/dist/form/fields/date.d.ts.map +1 -1
  19. package/dist/form/fields/date.js +5 -1
  20. package/dist/form/fields/date.js.map +1 -1
  21. package/dist/form/fields/key.d.ts +11 -9
  22. package/dist/form/fields/key.d.ts.map +1 -1
  23. package/dist/form/fields/key.js +13 -6
  24. package/dist/form/fields/key.js.map +1 -1
  25. package/dist/form/fields/key_list.d.ts +10 -8
  26. package/dist/form/fields/key_list.d.ts.map +1 -1
  27. package/dist/form/fields/key_list.js +4 -0
  28. package/dist/form/fields/key_list.js.map +1 -1
  29. package/dist/form/fields/literal.d.ts +4 -4
  30. package/dist/form/fields/literal.d.ts.map +1 -1
  31. package/dist/form/fields/literal.js +2 -1
  32. package/dist/form/fields/literal.js.map +1 -1
  33. package/dist/form/fields/literal_list.d.ts +8 -7
  34. package/dist/form/fields/literal_list.d.ts.map +1 -1
  35. package/dist/form/fields/literal_list.js +3 -0
  36. package/dist/form/fields/literal_list.js.map +1 -1
  37. package/dist/form/fields/literal_long.d.ts +4 -4
  38. package/dist/form/fields/literal_long.d.ts.map +1 -1
  39. package/dist/form/fields/literal_long.js +1 -0
  40. package/dist/form/fields/literal_long.js.map +1 -1
  41. package/dist/form/fields/name.d.ts +10 -27
  42. package/dist/form/fields/name.d.ts.map +1 -1
  43. package/dist/form/fields/name.js +22 -18
  44. package/dist/form/fields/name.js.map +1 -1
  45. package/dist/form/fields/name_list.d.ts +9 -7
  46. package/dist/form/fields/name_list.d.ts.map +1 -1
  47. package/dist/form/fields/name_list.js +5 -2
  48. package/dist/form/fields/name_list.js.map +1 -1
  49. package/dist/form/fields/range.d.ts +10 -8
  50. package/dist/form/fields/range.d.ts.map +1 -1
  51. package/dist/form/fields/range.js +13 -9
  52. package/dist/form/fields/range.js.map +1 -1
  53. package/dist/form/fields/range_list.d.ts +9 -7
  54. package/dist/form/fields/range_list.d.ts.map +1 -1
  55. package/dist/form/fields/range_list.js +3 -0
  56. package/dist/form/fields/range_list.js.map +1 -1
  57. package/dist/form/fields/tag_list.d.ts +7 -6
  58. package/dist/form/fields/tag_list.d.ts.map +1 -1
  59. package/dist/form/fields/tag_list.js +3 -0
  60. package/dist/form/fields/tag_list.js.map +1 -1
  61. package/dist/form/fields/title.d.ts +4 -4
  62. package/dist/form/fields/title.d.ts.map +1 -1
  63. package/dist/form/fields/title.js +1 -0
  64. package/dist/form/fields/title.js.map +1 -1
  65. package/dist/form/fields/uri.d.ts +4 -4
  66. package/dist/form/fields/uri.d.ts.map +1 -1
  67. package/dist/form/fields/uri.js +5 -1
  68. package/dist/form/fields/uri.js.map +1 -1
  69. package/dist/form/fields/verbatim.d.ts +4 -4
  70. package/dist/form/fields/verbatim.d.ts.map +1 -1
  71. package/dist/form/fields/verbatim.js +5 -1
  72. package/dist/form/fields/verbatim.js.map +1 -1
  73. package/dist/form/index.d.ts +32 -30
  74. package/dist/form/index.d.ts.map +1 -1
  75. package/dist/form/index.js +33 -11
  76. package/dist/form/index.js.map +1 -1
  77. package/dist/form/strings.d.ts +11 -11
  78. package/dist/form/strings.d.ts.map +1 -1
  79. package/dist/form/strings.js +5 -5
  80. package/dist/form/strings.js.map +1 -1
  81. package/dist/form/templates.d.ts +6 -5
  82. package/dist/form/templates.d.ts.map +1 -1
  83. package/dist/form/templates.js +2 -2
  84. package/dist/form/templates.js.map +1 -1
  85. package/dist/import/bibliography_import.d.ts +20 -7
  86. package/dist/import/bibliography_import.d.ts.map +1 -1
  87. package/dist/import/bibliography_import.js +15 -7
  88. package/dist/import/bibliography_import.js.map +1 -1
  89. package/dist/import/dialog.d.ts +6 -5
  90. package/dist/import/dialog.d.ts.map +1 -1
  91. package/dist/import/dialog.js +27 -12
  92. package/dist/import/dialog.js.map +1 -1
  93. package/dist/import/index.d.ts +2 -0
  94. package/dist/import/index.d.ts.map +1 -1
  95. package/dist/import/index.js +5 -0
  96. package/dist/import/index.js.map +1 -1
  97. package/dist/import/templates.d.ts +2 -1
  98. package/dist/import/templates.d.ts.map +1 -1
  99. package/dist/import/templates.js.map +1 -1
  100. package/dist/index.d.ts +2 -0
  101. package/dist/index.d.ts.map +1 -1
  102. package/dist/index.js.map +1 -1
  103. package/dist/overview/index.d.ts +43 -27
  104. package/dist/overview/index.d.ts.map +1 -1
  105. package/dist/overview/index.js +59 -23
  106. package/dist/overview/index.js.map +1 -1
  107. package/dist/overview/menu.d.ts +13 -12
  108. package/dist/overview/menu.d.ts.map +1 -1
  109. package/dist/overview/menu.js +13 -10
  110. package/dist/overview/menu.js.map +1 -1
  111. package/dist/overview/templates.d.ts +5 -3
  112. package/dist/overview/templates.d.ts.map +1 -1
  113. package/dist/overview/templates.js.map +1 -1
  114. package/dist/plugins/bibliography_overview/index.d.ts +1 -1
  115. package/dist/plugins/bibliography_overview/index.d.ts.map +1 -1
  116. package/dist/plugins/bibliography_overview/index.js.map +1 -1
  117. package/dist/schema/csl_bib.d.ts +1 -1
  118. package/dist/schema/literal.d.ts +1 -1
  119. package/dist/schema/literal.d.ts.map +1 -1
  120. package/dist/schema/literal.js.map +1 -1
  121. package/dist/schema/literal_long.d.ts +1 -1
  122. package/dist/schema/literal_long.d.ts.map +1 -1
  123. package/dist/schema/literal_long.js +1 -7
  124. package/dist/schema/literal_long.js.map +1 -1
  125. package/dist/schema/title.d.ts +1 -1
  126. package/dist/schema/title.d.ts.map +1 -1
  127. package/dist/schema/title.js.map +1 -1
  128. package/dist/tools.d.ts +4 -3
  129. package/dist/tools.d.ts.map +1 -1
  130. package/dist/tools.js.map +1 -1
  131. package/dist/types/biblio.d.ts +138 -0
  132. package/dist/types/biblio.d.ts.map +1 -0
  133. package/dist/types/biblio.js +2 -0
  134. package/dist/types/biblio.js.map +1 -0
  135. package/package.json +1 -1
  136. package/src/database/{index.js → index.ts} +60 -38
  137. package/src/database/server_connector.ts +92 -0
  138. package/src/export/{index.js → index.ts} +16 -4
  139. package/src/form/{cats.js → cats.ts} +11 -3
  140. package/src/form/fields/{date.js → date.ts} +10 -5
  141. package/src/form/fields/{key.js → key.ts} +37 -19
  142. package/src/form/fields/{key_list.js → key_list.ts} +18 -7
  143. package/src/form/fields/{literal.js → literal.ts} +11 -5
  144. package/src/form/fields/{literal_list.js → literal_list.ts} +19 -10
  145. package/src/form/fields/{literal_long.js → literal_long.ts} +6 -4
  146. package/src/form/fields/{name.js → name.ts} +53 -39
  147. package/src/form/fields/name_list.ts +49 -0
  148. package/src/form/fields/{range.js → range.ts} +34 -22
  149. package/src/form/fields/{range_list.js → range_list.ts} +17 -10
  150. package/src/form/fields/{tag_list.js → tag_list.ts} +9 -5
  151. package/src/form/fields/{title.js → title.ts} +6 -4
  152. package/src/form/fields/{uri.js → uri.ts} +11 -6
  153. package/src/form/fields/{verbatim.js → verbatim.ts} +10 -5
  154. package/src/form/{index.js → index.ts} +113 -60
  155. package/src/form/{strings.js → strings.ts} +24 -22
  156. package/src/form/{templates.js → templates.ts} +14 -5
  157. package/src/global.d.ts +75 -0
  158. package/src/import/{bibliography_import.js → bibliography_import.ts} +42 -16
  159. package/src/import/{dialog.js → dialog.ts} +47 -23
  160. package/src/import/index.ts +14 -0
  161. package/src/import/{templates.js → templates.ts} +1 -1
  162. package/src/overview/{index.js → index.ts} +150 -81
  163. package/src/overview/{menu.js → menu.ts} +18 -12
  164. package/src/overview/{templates.js → templates.ts} +3 -2
  165. package/src/plugins/bibliography_overview/index.ts +1 -0
  166. package/src/schema/{literal_long.js → literal_long.ts} +3 -8
  167. package/src/schema/{title.js → title.ts} +1 -1
  168. package/src/{tools.js → tools.ts} +7 -5
  169. package/src/types/biblio.ts +189 -0
  170. package/src/database/server_connector.js +0 -57
  171. package/src/form/fields/name_list.js +0 -42
  172. package/src/import/index.js +0 -2
  173. package/src/plugins/bibliography_overview/index.js +0 -1
  174. /package/src/{index.js → index.ts} +0 -0
  175. /package/src/schema/{literal.js → literal.ts} +0 -0
@@ -5,27 +5,27 @@ export const bulkMenuModel = () => ({
5
5
  {
6
6
  title: gettext("Delete selected"),
7
7
  tooltip: gettext("Delete selected bibliography entries."),
8
- action: overview => {
8
+ action: (overview) => {
9
9
  const ids = overview
10
10
  .getSelected()
11
- .map(id => Number.parseInt(id));
11
+ .map(id => Number.parseInt(String(id)));
12
12
  if (ids.length) {
13
13
  overview.deleteBibEntryDialog(ids);
14
14
  }
15
15
  },
16
- disabled: overview => !overview.getSelected().length || overview.app.isOffline()
16
+ disabled: (overview) => !overview.getSelected().length || overview.app.isOffline()
17
17
  },
18
18
  {
19
19
  title: gettext("Export selected"),
20
20
  tooltip: gettext("Export selected bibliography entries."),
21
- action: overview => {
21
+ action: (overview) => {
22
22
  const ids = overview.getSelected();
23
23
  if (ids.length) {
24
24
  const exporter = new BibLatexFileExporter(overview.app.bibDB, ids);
25
25
  exporter.init();
26
26
  }
27
27
  },
28
- disabled: overview => !overview.getSelected().length || overview.app.isOffline()
28
+ disabled: (overview) => !overview.getSelected().length || overview.app.isOffline()
29
29
  }
30
30
  ]
31
31
  });
@@ -38,7 +38,7 @@ export const menuModel = () => ({
38
38
  content: [
39
39
  {
40
40
  title: gettext("All categories"),
41
- action: _overview => {
41
+ action: (_overview) => {
42
42
  const trs = document.querySelectorAll("#bibliography > tbody > tr");
43
43
  trs.forEach(tr => (tr.style.display = ""));
44
44
  }
@@ -50,17 +50,20 @@ export const menuModel = () => ({
50
50
  type: "text",
51
51
  title: gettext("Edit categories"),
52
52
  keys: "Alt-e",
53
- action: overview => overview.editCategoriesDialog(),
53
+ action: (overview) => overview.editCategoriesDialog(),
54
54
  order: 2
55
55
  },
56
56
  {
57
57
  type: "text",
58
58
  title: gettext("Register new source"),
59
59
  keys: "Alt-n",
60
- action: overview => {
60
+ action: (overview) => {
61
61
  import("../form/index.js").then(({ BibEntryForm }) => {
62
62
  const form = new BibEntryForm(overview.app.bibDB, overview.app);
63
- form.init().then(idTranslations => {
63
+ form.init().then((idTranslations) => {
64
+ if (!idTranslations) {
65
+ return;
66
+ }
64
67
  const ids = idTranslations.map(idTrans => idTrans[1]);
65
68
  return overview.updateTable(ids);
66
69
  });
@@ -72,7 +75,7 @@ export const menuModel = () => ({
72
75
  type: "text",
73
76
  title: gettext("Import bibliography"),
74
77
  keys: "Alt-u",
75
- action: overview => {
78
+ action: (overview) => {
76
79
  const fileImporter = new BibliographyFileImportDialog(overview.app.bibDB, ids => overview.updateTable(ids), overview.app);
77
80
  fileImporter.init();
78
81
  },
@@ -1 +1 @@
1
- {"version":3,"file":"menu.js","sourceRoot":"","sources":["../../src/overview/menu.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"menu.js","sourceRoot":"","sources":["../../src/overview/menu.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,6 @@
1
- export function editCategoriesTemplate({ categories }: {
2
- categories: any;
3
- }): string;
1
+ import type { BibCategory } from "../types/biblio.js";
2
+ /** A template for the editing of bibliography categories list. */
3
+ export declare const editCategoriesTemplate: ({ categories }: {
4
+ categories: BibCategory[];
5
+ }) => string;
4
6
  //# sourceMappingURL=templates.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"templates.d.ts","sourceRoot":"","sources":["../../src/overview/templates.js"],"names":[],"mappings":"AAwBO;;WAKM"}
1
+ {"version":3,"file":"templates.d.ts","sourceRoot":"","sources":["../../src/overview/templates.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,oBAAoB,CAAA;AAuBnD,kEAAkE;AAClE,eAAO,MAAM,sBAAsB,GAAI,gBAAc;IAAC,UAAU,EAAE,WAAW,EAAE,CAAA;CAAC,WAKnE,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"templates.js","sourceRoot":"","sources":["../../src/overview/templates.js"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,WAAW,CAAA;AAEpC,kGAAkG;AAClG,MAAM,qBAAqB,GAAG,CAAC,EAAC,UAAU,EAAC,EAAE,EAAE,CAC3C,GAAG,UAAU;KACR,GAAG,CACA,GAAG,CAAC,EAAE,CACF,sBAAsB,GAAG,CAAC,EAAE;;iFAEqC,GAAG,CAAC,EAAE;qCAClD,UAAU,CAAC,GAAG,CAAC,cAAc,CAAC,cAAc,GAAG,CAAC,EAAE;;;kBAGrE,CACT;KACA,IAAI,CAAC,EAAE,CAAC;;;;;;UAMP,CAAA;AAEV,kEAAkE;AAClE,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,EAAC,UAAU,EAAC,EAAE,EAAE,CACnD;;cAEU,qBAAqB,CAAC,EAAC,UAAU,EAAC,CAAC;;aAEpC,CAAA"}
1
+ {"version":3,"file":"templates.js","sourceRoot":"","sources":["../../src/overview/templates.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,WAAW,CAAA;AAGpC,kGAAkG;AAClG,MAAM,qBAAqB,GAAG,CAAC,EAAC,UAAU,EAA8B,EAAE,EAAE,CACxE,GAAG,UAAU;KACR,GAAG,CACA,GAAG,CAAC,EAAE,CACF,sBAAsB,GAAG,CAAC,EAAE;;iFAEqC,GAAG,CAAC,EAAE;qCAClD,UAAU,CAAC,GAAG,CAAC,cAAc,CAAC,cAAc,GAAG,CAAC,EAAE;;;kBAGrE,CACT;KACA,IAAI,CAAC,EAAE,CAAC;;;;;;UAMP,CAAA;AAEV,kEAAkE;AAClE,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,EAAC,UAAU,EAA8B,EAAE,EAAE,CAChF;;cAEU,qBAAqB,CAAC,EAAC,UAAU,EAAC,CAAC;;aAEpC,CAAA"}
@@ -1,2 +1,2 @@
1
- export const plugins: any[];
1
+ export declare const plugins: unknown[];
2
2
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/plugins/bibliography_overview/index.js"],"names":[],"mappings":"AAAA,4BAAyB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/plugins/bibliography_overview/index.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,OAAO,EAAE,OAAO,EAAO,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/plugins/bibliography_overview/index.js"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,OAAO,GAAG,EAAE,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/plugins/bibliography_overview/index.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,OAAO,GAAc,EAAE,CAAA"}
@@ -1,3 +1,3 @@
1
1
  import { Schema } from "prosemirror-model";
2
- export declare const cslBibSchema: Schema<"cslbib" | "doc" | "cslentry" | "cslinline" | "cslblock" | "cslleftmargin" | "cslrightinline" | "cslindent" | "text", "sup" | "sub" | "smallcaps" | "em" | "strong">;
2
+ export declare const cslBibSchema: Schema<"text" | "doc" | "cslbib" | "cslentry" | "cslinline" | "cslblock" | "cslleftmargin" | "cslrightinline" | "cslindent", "em" | "strong" | "sub" | "sup" | "smallcaps">;
3
3
  //# sourceMappingURL=csl_bib.d.ts.map
@@ -1,3 +1,3 @@
1
- export const litSchema: Schema<"literal" | "variable" | "doc" | "text", "sup" | "sub" | "smallcaps" | "url" | "enquote" | "em" | "strong">;
2
1
  import { Schema } from "prosemirror-model";
2
+ export declare const litSchema: Schema<"text" | "literal" | "variable" | "doc", "em" | "strong" | "sub" | "sup" | "smallcaps" | "url" | "enquote">;
3
3
  //# sourceMappingURL=literal.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"literal.d.ts","sourceRoot":"","sources":["../../src/schema/literal.js"],"names":[],"mappings":"AAiBA,2IAgBE;uBAvBmB,mBAAmB"}
1
+ {"version":3,"file":"literal.d.ts","sourceRoot":"","sources":["../../src/schema/literal.ts"],"names":[],"mappings":"AAUA,OAAO,EAAC,MAAM,EAAC,MAAM,mBAAmB,CAAA;AAOxC,eAAO,MAAM,SAAS,oHAgBpB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"literal.js","sourceRoot":"","sources":["../../src/schema/literal.js"],"names":[],"mappings":"AAAA,OAAO,EACH,GAAG,EACH,OAAO,EACP,OAAO,EACP,SAAS,EACT,GAAG,EACH,GAAG,EACH,IAAI,EACJ,QAAQ,EACX,MAAM,aAAa,CAAA;AACpB,OAAO,EAAC,MAAM,EAAC,MAAM,mBAAmB,CAAA;AACxC,OAAO,EAAC,KAAK,EAAC,MAAM,0BAA0B,CAAA;AAE9C,MAAM,GAAG,GAAG;IACR,OAAO,EAAE,SAAS;CACrB,CAAA;AAED,MAAM,CAAC,MAAM,SAAS,GAAG,IAAI,MAAM,CAAC;IAChC,KAAK,EAAE;QACH,GAAG;QACH,OAAO;QACP,IAAI;QACJ,QAAQ;KACX;IACD,KAAK,EAAE;QACH,EAAE,EAAE,KAAK,CAAC,EAAE;QACZ,OAAO;QACP,SAAS;QACT,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,GAAG;QACH,GAAG;QACH,GAAG;KACN;CACJ,CAAC,CAAA"}
1
+ {"version":3,"file":"literal.js","sourceRoot":"","sources":["../../src/schema/literal.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,GAAG,EACH,OAAO,EACP,OAAO,EACP,SAAS,EACT,GAAG,EACH,GAAG,EACH,IAAI,EACJ,QAAQ,EACX,MAAM,aAAa,CAAA;AACpB,OAAO,EAAC,MAAM,EAAC,MAAM,mBAAmB,CAAA;AACxC,OAAO,EAAC,KAAK,EAAC,MAAM,0BAA0B,CAAA;AAE9C,MAAM,GAAG,GAAG;IACR,OAAO,EAAE,SAAS;CACrB,CAAA;AAED,MAAM,CAAC,MAAM,SAAS,GAAG,IAAI,MAAM,CAAC;IAChC,KAAK,EAAE;QACH,GAAG;QACH,OAAO;QACP,IAAI;QACJ,QAAQ;KACX;IACD,KAAK,EAAE;QACH,EAAE,EAAE,KAAK,CAAC,EAAE;QACZ,OAAO;QACP,SAAS;QACT,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,GAAG;QACH,GAAG;QACH,GAAG;KACN;CACJ,CAAC,CAAA"}
@@ -1,3 +1,3 @@
1
- export const longLitSchema: Schema<"variable" | "doc" | "text" | "longliteral", "sup" | "sub" | "smallcaps" | "url" | "enquote" | "em" | "strong">;
2
1
  import { Schema } from "prosemirror-model";
2
+ export declare const longLitSchema: Schema<"text" | "variable" | "doc" | "longliteral", "em" | "strong" | "sub" | "sup" | "smallcaps" | "url" | "enquote">;
3
3
  //# sourceMappingURL=literal_long.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"literal_long.d.ts","sourceRoot":"","sources":["../../src/schema/literal_long.js"],"names":[],"mappings":"AAiCA,mJAgBE;uBAxCmB,mBAAmB"}
1
+ {"version":3,"file":"literal_long.d.ts","sourceRoot":"","sources":["../../src/schema/literal_long.ts"],"names":[],"mappings":"AAUA,OAAO,EAAC,MAAM,EAAC,MAAM,mBAAmB,CAAA;AAkBxC,eAAO,MAAM,aAAa,wHAgBxB,CAAA"}
@@ -8,13 +8,7 @@ const longliteral = {
8
8
  defining: true,
9
9
  parseDOM: [{ tag: "pre.long-literal" }],
10
10
  toDOM(_node) {
11
- return [
12
- "pre",
13
- {
14
- class: "long-literal"
15
- },
16
- 0
17
- ];
11
+ return ["pre", { class: "long-literal" }, 0];
18
12
  }
19
13
  };
20
14
  const doc = {
@@ -1 +1 @@
1
- {"version":3,"file":"literal_long.js","sourceRoot":"","sources":["../../src/schema/literal_long.js"],"names":[],"mappings":"AAAA,OAAO,EACH,GAAG,EACH,OAAO,EACP,SAAS,EACT,GAAG,EACH,GAAG,EACH,IAAI,EACJ,QAAQ,EACX,MAAM,aAAa,CAAA;AACpB,OAAO,EAAC,MAAM,EAAC,MAAM,mBAAmB,CAAA;AACxC,OAAO,EAAC,KAAK,EAAC,MAAM,0BAA0B,CAAA;AAE9C,MAAM,WAAW,GAAG;IAChB,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,GAAG;IACV,IAAI,EAAE,IAAI;IACV,QAAQ,EAAE,IAAI;IACd,QAAQ,EAAE,CAAC,EAAC,GAAG,EAAE,kBAAkB,EAAC,CAAC;IACrC,KAAK,CAAC,KAAK;QACP,OAAO;YACH,KAAK;YACL;gBACI,KAAK,EAAE,cAAc;aACxB;YACD,CAAC;SACJ,CAAA;IACL,CAAC;CACJ,CAAA;AAED,MAAM,GAAG,GAAG;IACR,OAAO,EAAE,aAAa;CACzB,CAAA;AAED,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,MAAM,CAAC;IACpC,KAAK,EAAE;QACH,GAAG;QACH,WAAW;QACX,IAAI;QACJ,QAAQ;KACX;IACD,KAAK,EAAE;QACH,EAAE,EAAE,KAAK,CAAC,EAAE;QACZ,OAAO;QACP,SAAS;QACT,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,GAAG;QACH,GAAG;QACH,GAAG;KACN;CACJ,CAAC,CAAA"}
1
+ {"version":3,"file":"literal_long.js","sourceRoot":"","sources":["../../src/schema/literal_long.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,GAAG,EACH,OAAO,EACP,SAAS,EACT,GAAG,EACH,GAAG,EACH,IAAI,EACJ,QAAQ,EACX,MAAM,aAAa,CAAA;AAEpB,OAAO,EAAC,MAAM,EAAC,MAAM,mBAAmB,CAAA;AACxC,OAAO,EAAC,KAAK,EAAC,MAAM,0BAA0B,CAAA;AAE9C,MAAM,WAAW,GAAG;IAChB,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,GAAG;IACV,IAAI,EAAE,IAAI;IACV,QAAQ,EAAE,IAAI;IACd,QAAQ,EAAE,CAAC,EAAC,GAAG,EAAE,kBAAkB,EAAC,CAAC;IACrC,KAAK,CAAC,KAAW;QACb,OAAO,CAAC,KAAK,EAAE,EAAC,KAAK,EAAE,cAAc,EAAC,EAAE,CAAC,CAAU,CAAA;IACvD,CAAC;CACJ,CAAA;AAED,MAAM,GAAG,GAAG;IACR,OAAO,EAAE,aAAa;CACzB,CAAA;AAED,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,MAAM,CAAC;IACpC,KAAK,EAAE;QACH,GAAG;QACH,WAAW;QACX,IAAI;QACJ,QAAQ;KACX;IACD,KAAK,EAAE;QACH,EAAE,EAAE,KAAK,CAAC,EAAE;QACZ,OAAO;QACP,SAAS;QACT,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,GAAG;QACH,GAAG;QACH,GAAG;KACN;CACJ,CAAC,CAAA"}
@@ -1,3 +1,3 @@
1
- export const titleSchema: Schema<"literal" | "variable" | "doc" | "text", "sup" | "sub" | "smallcaps" | "url" | "enquote" | "em" | "strong" | "nocase">;
2
1
  import { Schema } from "prosemirror-model";
2
+ export declare const titleSchema: Schema<"text" | "literal" | "variable" | "doc", "em" | "strong" | "sub" | "sup" | "smallcaps" | "url" | "enquote" | "nocase">;
3
3
  //# sourceMappingURL=title.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"title.d.ts","sourceRoot":"","sources":["../../src/schema/title.js"],"names":[],"mappings":"AAwBA,wJAiBE;uBA/BmB,mBAAmB"}
1
+ {"version":3,"file":"title.d.ts","sourceRoot":"","sources":["../../src/schema/title.ts"],"names":[],"mappings":"AAUA,OAAO,EAAC,MAAM,EAAC,MAAM,mBAAmB,CAAA;AAcxC,eAAO,MAAM,WAAW,+HAiBtB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"title.js","sourceRoot":"","sources":["../../src/schema/title.js"],"names":[],"mappings":"AAAA,OAAO,EACH,GAAG,EACH,OAAO,EACP,OAAO,EACP,SAAS,EACT,GAAG,EACH,GAAG,EACH,IAAI,EACJ,QAAQ,EACX,MAAM,aAAa,CAAA;AACpB,OAAO,EAAC,MAAM,EAAC,MAAM,mBAAmB,CAAA;AACxC,OAAO,EAAC,KAAK,EAAC,MAAM,0BAA0B,CAAA;AAE9C,MAAM,MAAM,GAAG;IACX,QAAQ,EAAE,CAAC,EAAC,GAAG,EAAE,aAAa,EAAC,CAAC;IAChC,KAAK;QACD,OAAO,CAAC,MAAM,EAAE,EAAC,KAAK,EAAE,QAAQ,EAAC,CAAC,CAAA;IACtC,CAAC;CACJ,CAAA;AAED,MAAM,GAAG,GAAG;IACR,OAAO,EAAE,SAAS;CACrB,CAAA;AAED,MAAM,CAAC,MAAM,WAAW,GAAG,IAAI,MAAM,CAAC;IAClC,KAAK,EAAE;QACH,GAAG;QACH,OAAO;QACP,IAAI;QACJ,QAAQ;KACX;IACD,KAAK,EAAE;QACH,EAAE,EAAE,KAAK,CAAC,EAAE;QACZ,OAAO;QACP,MAAM;QACN,SAAS;QACT,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,GAAG;QACH,GAAG;QACH,GAAG;KACN;CACJ,CAAC,CAAA"}
1
+ {"version":3,"file":"title.js","sourceRoot":"","sources":["../../src/schema/title.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,GAAG,EACH,OAAO,EACP,OAAO,EACP,SAAS,EACT,GAAG,EACH,GAAG,EACH,IAAI,EACJ,QAAQ,EACX,MAAM,aAAa,CAAA;AACpB,OAAO,EAAC,MAAM,EAAC,MAAM,mBAAmB,CAAA;AACxC,OAAO,EAAC,KAAK,EAAC,MAAM,0BAA0B,CAAA;AAE9C,MAAM,MAAM,GAAG;IACX,QAAQ,EAAE,CAAC,EAAC,GAAG,EAAE,aAAa,EAAC,CAAC;IAChC,KAAK;QACD,OAAO,CAAC,MAAM,EAAE,EAAC,KAAK,EAAE,QAAQ,EAAC,CAAU,CAAA;IAC/C,CAAC;CACJ,CAAA;AAED,MAAM,GAAG,GAAG;IACR,OAAO,EAAE,SAAS;CACrB,CAAA;AAED,MAAM,CAAC,MAAM,WAAW,GAAG,IAAI,MAAM,CAAC;IAClC,KAAK,EAAE;QACH,GAAG;QACH,OAAO;QACP,IAAI;QACJ,QAAQ;KACX;IACD,KAAK,EAAE;QACH,EAAE,EAAE,KAAK,CAAC,EAAE;QACZ,OAAO;QACP,MAAM;QACN,SAAS;QACT,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,GAAG;QACH,GAAG;QACH,GAAG;KACN;CACJ,CAAC,CAAA"}
package/dist/tools.d.ts CHANGED
@@ -1,4 +1,5 @@
1
- export function dateToYear(dateStr: any): any;
2
- export function litToText(litStringArray: any): string;
3
- export function nameToText(nameList: any): string;
1
+ import type { NameDictObject, NodeArray } from "./types/biblio.js";
2
+ export declare function dateToYear(dateStr: string): string;
3
+ export declare function litToText(litStringArray: NodeArray): string;
4
+ export declare function nameToText(nameList: NameDictObject[]): string;
4
5
  //# sourceMappingURL=tools.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.js"],"names":[],"mappings":"AAEA,8CAQC;AAGD,uDAQC;AAeD,kDAqBC"}
1
+ {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,cAAc,EAAE,SAAS,EAAiB,MAAM,mBAAmB,CAAA;AAIhF,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAQlD;AAGD,wBAAgB,SAAS,CAAC,cAAc,EAAE,SAAS,GAAG,MAAM,CAQ3D;AAeD,wBAAgB,UAAU,CAAC,QAAQ,EAAE,cAAc,EAAE,GAAG,MAAM,CAqB7D"}
package/dist/tools.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.js"],"names":[],"mappings":"AAAA,mDAAmD;AACnD,yFAAyF;AACzF,MAAM,UAAU,UAAU,CAAC,OAAO;IAC9B,IAAI,CAAC,OAAO,EAAE,CAAC;QACX,OAAO,EAAE,CAAA;IACb,CAAC;IACD,4EAA4E;IAC5E,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;IACvC,4DAA4D;IAC5D,OAAO,SAAS,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAA;AAC3C,CAAC;AAED,sFAAsF;AACtF,MAAM,UAAU,SAAS,CAAC,cAAc;IACpC,IAAI,OAAO,GAAG,EAAE,CAAA;IAChB,cAAc,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;QAC/B,IAAI,SAAS,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YAC5B,OAAO,IAAI,SAAS,CAAC,IAAI,CAAA;QAC7B,CAAC;IACL,CAAC,CAAC,CAAA;IACF,OAAO,OAAO,CAAA;AAClB,CAAC;AAED,SAAS,oBAAoB,CAAC,YAAY;IACtC,IAAI,UAAU,GAAG,EAAE,CAAA;IACnB,IAAI,YAAY,CAAC,QAAQ,CAAC,EAAE,CAAC;QACzB,UAAU,IAAI,SAAS,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAA;QAC/C,IAAI,YAAY,CAAC,OAAO,CAAC,EAAE,CAAC;YACxB,UAAU,IAAI,KAAK,SAAS,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,EAAE,CAAA;QACzD,CAAC;IACL,CAAC;SAAM,IAAI,YAAY,CAAC,SAAS,CAAC,EAAE,CAAC;QACjC,UAAU,IAAI,SAAS,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAA;IACpD,CAAC;IACD,OAAO,UAAU,CAAA;AACrB,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,QAAQ;IAC/B,IAAI,UAAU,CAAA;IACd,QAAQ,QAAQ,CAAC,MAAM,EAAE,CAAC;QACtB,KAAK,CAAC;YACF,UAAU,GAAG,EAAE,CAAA;YACf,MAAK;QACT,KAAK,CAAC;YACF,UAAU,GAAG,oBAAoB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;YAC9C,MAAK;QACT,KAAK,CAAC;YACF,UAAU,GAAG,GAAG,oBAAoB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,OAAO,CACxD,KAAK,CACR,IAAI,oBAAoB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;YACxC,MAAK;QACT;YACI,UAAU,GAAG,GAAG,oBAAoB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,OAAO,CACxD,YAAY,CACf,EAAE,CAAA;YACH,MAAK;IACb,CAAC;IACD,OAAO,UAAU,CAAA;AACrB,CAAC"}
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAEA,mDAAmD;AACnD,yFAAyF;AACzF,MAAM,UAAU,UAAU,CAAC,OAAe;IACtC,IAAI,CAAC,OAAO,EAAE,CAAC;QACX,OAAO,EAAE,CAAA;IACb,CAAC;IACD,4EAA4E;IAC5E,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;IACvC,4DAA4D;IAC5D,OAAO,SAAS,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAA;AAC3C,CAAC;AAED,sFAAsF;AACtF,MAAM,UAAU,SAAS,CAAC,cAAyB;IAC/C,IAAI,OAAO,GAAG,EAAE,CAAA;IAChB,cAAc,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;QAC/B,IAAI,SAAS,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YAC5B,OAAO,IAAK,SAA4B,CAAC,IAAI,CAAA;QACjD,CAAC;IACL,CAAC,CAAC,CAAA;IACF,OAAO,OAAO,CAAA;AAClB,CAAC;AAED,SAAS,oBAAoB,CAAC,YAA4B;IACtD,IAAI,UAAU,GAAG,EAAE,CAAA;IACnB,IAAI,YAAY,CAAC,QAAQ,CAAC,EAAE,CAAC;QACzB,UAAU,IAAI,SAAS,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAA;QAC/C,IAAI,YAAY,CAAC,OAAO,CAAC,EAAE,CAAC;YACxB,UAAU,IAAI,KAAK,SAAS,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,EAAE,CAAA;QACzD,CAAC;IACL,CAAC;SAAM,IAAI,YAAY,CAAC,SAAS,CAAC,EAAE,CAAC;QACjC,UAAU,IAAI,SAAS,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAA;IACpD,CAAC;IACD,OAAO,UAAU,CAAA;AACrB,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,QAA0B;IACjD,IAAI,UAAU,CAAA;IACd,QAAQ,QAAQ,CAAC,MAAM,EAAE,CAAC;QACtB,KAAK,CAAC;YACF,UAAU,GAAG,EAAE,CAAA;YACf,MAAK;QACT,KAAK,CAAC;YACF,UAAU,GAAG,oBAAoB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;YAC9C,MAAK;QACT,KAAK,CAAC;YACF,UAAU,GAAG,GAAG,oBAAoB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,OAAO,CACxD,KAAK,CACR,IAAI,oBAAoB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;YACxC,MAAK;QACT;YACI,UAAU,GAAG,GAAG,oBAAoB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,OAAO,CACxD,YAAY,CACf,EAAE,CAAA;YACH,MAAK;IACb,CAAC;IACD,OAAO,UAAU,CAAA;AACrB,CAAC"}
@@ -0,0 +1,138 @@
1
+ import { BibFieldTypes, BibTypes } from "bibliojson";
2
+ import type { BibDB as BiblioBibDB } from "bibliojson";
3
+ export type EntryObject = BiblioBibDB[number];
4
+ export type BibFieldType = (typeof BibFieldTypes)[string] & {
5
+ title?: string;
6
+ };
7
+ export type BibType = (typeof BibTypes)[string];
8
+ export interface MarkObject {
9
+ type: string;
10
+ }
11
+ export interface TextNodeObject {
12
+ type: "text";
13
+ text: string;
14
+ marks?: MarkObject[];
15
+ attrs?: Record<string, unknown>;
16
+ }
17
+ export interface OtherNodeObject {
18
+ type: string;
19
+ marks?: MarkObject[];
20
+ attrs?: Record<string, unknown>;
21
+ }
22
+ export type NodeObject = OtherNodeObject | TextNodeObject;
23
+ export type NodeArray = NodeObject[];
24
+ export type NameDictObject = {
25
+ literal?: NodeArray;
26
+ family?: NodeArray;
27
+ given?: NodeArray;
28
+ prefix?: NodeArray;
29
+ suffix?: NodeArray;
30
+ useprefix?: boolean;
31
+ };
32
+ export type RangeArray = [NodeArray, NodeArray] | [NodeArray];
33
+ /** A single bibliography category stored on the client. */
34
+ export interface BibCategory {
35
+ id: number;
36
+ category_title: string;
37
+ }
38
+ /** Client-side bibliography entry.
39
+ *
40
+ * Composes bibliojson's `EntryObject` with the extra `cats` field and the
41
+ * server-side `id` the Fidus Writer backend attaches to each entry.
42
+ */
43
+ export interface BibDBEntry extends EntryObject {
44
+ /** Categories the entry belongs to. */
45
+ cats: number[];
46
+ /** Server-side primary key (present in entries received from the server). */
47
+ id?: number;
48
+ }
49
+ /** Client-side bibliography database, keyed by server id. */
50
+ export type BibDB = Record<number, BibDBEntry>;
51
+ /** Translation of a temporary client-side id to the server-side id. */
52
+ export type IdTranslation = [number, number];
53
+ /** Single bibliography item as returned in the server's `bib_list` array. */
54
+ export interface ServerBibItem {
55
+ id: number;
56
+ bibDBEntry: BibDBEntry;
57
+ }
58
+ /** Shape of the response from `POST /api/bibliography/biblist/`. */
59
+ export interface BiblistResponse {
60
+ bib_categories: BibCategory[];
61
+ bib_list?: BibDBEntry[];
62
+ last_modified: number;
63
+ number_of_entries: number;
64
+ user_id: number;
65
+ }
66
+ /** Shape of the request body for `POST /api/bibliography/save/`. */
67
+ export interface SaveBibEntriesRequest {
68
+ is_new: boolean;
69
+ bibs: Record<number, BibDBEntry>;
70
+ }
71
+ /** Shape of the response from `POST /api/bibliography/save/`. */
72
+ export interface SaveBibEntriesResponse {
73
+ id_translations: IdTranslation[];
74
+ }
75
+ /** Shape of the request body for `POST /api/bibliography/save_category/`. */
76
+ export interface SaveCategoriesRequest {
77
+ ids: number[];
78
+ titles: string[];
79
+ }
80
+ /** Shape of the response from `POST /api/bibliography/save_category/`. */
81
+ export interface SaveCategoriesResponse {
82
+ entries: BibCategory[];
83
+ }
84
+ /** Shape of the request body for `POST /api/bibliography/delete_category/`. */
85
+ export interface DeleteCategoryRequest {
86
+ ids: number[];
87
+ }
88
+ /** Shape of the request body for `POST /api/bibliography/delete/`. */
89
+ export interface DeleteBibEntriesRequest {
90
+ ids: number[];
91
+ }
92
+ /** Union of all possible field values handled by the form field classes. */
93
+ export type FieldValue = string | number | boolean | NodeArray | NameDictObject[] | RangeArray[] | string[] | number[];
94
+ /** Common interface implemented by every bibliography form field class. */
95
+ export interface FieldForm {
96
+ init(): void;
97
+ readonly value: unknown;
98
+ check(): boolean;
99
+ }
100
+ /** Constructor signature for a class that implements `FieldForm`. */
101
+ export interface FieldFormConstructor {
102
+ new (dom: HTMLElement, initialValue?: unknown, placeHolder?: string | false, fieldType?: BibFieldType): FieldForm;
103
+ }
104
+ /** Map from `BibFieldType.type` to the form field class that renders it. */
105
+ export type FieldFormsMap = Record<string, FieldFormConstructor | undefined>;
106
+ /** Object describing the current values of a bibliography entry being edited. */
107
+ export interface CurrentBibValues {
108
+ bib_type: string | false;
109
+ cats: number[];
110
+ entry_key: string;
111
+ fields: Record<string, unknown>;
112
+ }
113
+ /** Shape returned by `BibEntryForm.value`. */
114
+ export interface FormValue {
115
+ bib_type: string;
116
+ cats: (string | number)[];
117
+ entry_key: string;
118
+ fields: Record<string, unknown>;
119
+ }
120
+ /** Operations exposed by the bibliography database manager. */
121
+ export interface BibDBCollection {
122
+ db: BibDB;
123
+ cats: BibCategory[];
124
+ saveBibEntries(tmpDB: Record<number, BibDBEntry>, isNew: boolean): Promise<IdTranslation[]>;
125
+ saveCategories(cats: SaveCategoriesRequest): Promise<BibCategory[]>;
126
+ deleteBibEntries(ids: number[]): Promise<number[]>;
127
+ }
128
+ /** Subset of the main Fidus Writer app object used by bibliography code. */
129
+ export interface BibliographyApp {
130
+ bibDB: BibDBCollection;
131
+ isOffline: () => boolean;
132
+ settings: {
133
+ APPS: string[];
134
+ };
135
+ name: string;
136
+ }
137
+ export type { BiblioBibDB };
138
+ //# sourceMappingURL=biblio.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"biblio.d.ts","sourceRoot":"","sources":["../../src/types/biblio.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=biblio.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"biblio.js","sourceRoot":"","sources":["../../src/types/biblio.ts"],"names":[],"mappings":""}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fiduswriter/bibliography-manager",
3
- "version": "0.1.6",
3
+ "version": "0.1.8",
4
4
  "description": "Fidus Writer bibliography manager",
5
5
  "repository": {
6
6
  "type": "git",
@@ -1,10 +1,23 @@
1
1
  import {activateWait, addAlert, deactivateWait} from "fwtoolkit"
2
2
  import {BibliographyDBServerConnector} from "./server_connector.js"
3
+ import type {
4
+ BibCategory,
5
+ BibDBEntry,
6
+ BibliographyApp,
7
+ IdTranslation,
8
+ SaveCategoriesRequest,
9
+ ServerBibItem
10
+ } from "../types/biblio.js"
3
11
 
4
12
  const FW_LOCALSTORAGE_VERSION = "1.2"
5
13
 
6
14
  export class BibliographyDB {
7
- constructor(app) {
15
+ app: BibliographyApp
16
+ db: Record<number, BibDBEntry>
17
+ cats: BibCategory[]
18
+ sc: BibliographyDBServerConnector
19
+
20
+ constructor(app: BibliographyApp) {
8
21
  this.app = app
9
22
  this.db = {}
10
23
  this.cats = []
@@ -15,16 +28,16 @@ export class BibliographyDB {
15
28
  * @function getDB
16
29
  */
17
30
 
18
- getDB() {
31
+ getDB(): Promise<void> {
19
32
  const localStorageVersion = window.localStorage.getItem("version")
20
33
  let lastModified = Number.parseInt(
21
- window.localStorage.getItem("last_modified_biblist")
34
+ window.localStorage.getItem("last_modified_biblist") || ""
22
35
  ),
23
36
  numberOfEntries = Number.parseInt(
24
- window.localStorage.getItem("number_of_entries")
37
+ window.localStorage.getItem("number_of_entries") || ""
25
38
  ),
26
39
  localStorageOwnerId = Number.parseInt(
27
- window.localStorage.getItem("owner_id")
40
+ window.localStorage.getItem("owner_id") || ""
28
41
  )
29
42
 
30
43
  // A dictionary to look up bib fields by their fw type name.
@@ -54,35 +67,32 @@ export class BibliographyDB {
54
67
  .then(
55
68
  ({bibCats, bibList, lastModified, numberOfEntries, userId}) => {
56
69
  bibCats.forEach(bibCat => this.cats.push(bibCat))
70
+ let bibListItems: ServerBibItem[]
57
71
  if (bibList) {
58
- try {
59
- window.localStorage.setItem(
60
- "biblist",
61
- JSON.stringify(bibList)
62
- )
63
- window.localStorage.setItem(
64
- "last_modified_biblist",
65
- lastModified
66
- )
67
- window.localStorage.setItem(
68
- "number_of_entries",
69
- numberOfEntries
70
- )
71
- window.localStorage.setItem("owner_id", userId)
72
- window.localStorage.setItem(
73
- "version",
74
- FW_LOCALSTORAGE_VERSION
75
- )
76
- } catch (error) {
77
- // The local storage was likely too small
78
- throw error
79
- }
72
+ bibListItems = bibList
73
+ window.localStorage.setItem(
74
+ "biblist",
75
+ JSON.stringify(bibListItems)
76
+ )
77
+ window.localStorage.setItem(
78
+ "last_modified_biblist",
79
+ String(lastModified)
80
+ )
81
+ window.localStorage.setItem(
82
+ "number_of_entries",
83
+ String(numberOfEntries)
84
+ )
85
+ window.localStorage.setItem("owner_id", String(userId))
86
+ window.localStorage.setItem(
87
+ "version",
88
+ FW_LOCALSTORAGE_VERSION
89
+ )
80
90
  } else {
81
- bibList = JSON.parse(
82
- window.localStorage.getItem("biblist")
91
+ bibListItems = JSON.parse(
92
+ window.localStorage.getItem("biblist") || "[]"
83
93
  )
84
94
  }
85
- bibList.forEach(({id, bibDBEntry}) => {
95
+ bibListItems.forEach(({id, bibDBEntry}) => {
86
96
  this.db[id] = bibDBEntry
87
97
  })
88
98
  deactivateWait()
@@ -100,7 +110,10 @@ export class BibliographyDB {
100
110
  * @function saveBibEntries
101
111
  * @param tmpDB The bibliography DB with temporary IDs to be send to the server.
102
112
  */
103
- saveBibEntries(tmpDB, isNew) {
113
+ saveBibEntries(
114
+ tmpDB: Record<number, BibDBEntry>,
115
+ isNew: boolean
116
+ ): Promise<IdTranslation[]> {
104
117
  return this.sc
105
118
  .saveBibEntries(tmpDB, isNew)
106
119
  .then(idTranslations =>
@@ -121,10 +134,14 @@ export class BibliographyDB {
121
134
  } else {
122
135
  throw error
123
136
  }
137
+ return []
124
138
  })
125
139
  }
126
140
 
127
- updateLocalBibEntries(tmpDB, idTranslations) {
141
+ updateLocalBibEntries(
142
+ tmpDB: Record<number, BibDBEntry>,
143
+ idTranslations: IdTranslation[]
144
+ ): IdTranslation[] {
128
145
  idTranslations.forEach(bibTrans => {
129
146
  this.db[bibTrans[1]] = tmpDB[bibTrans[0]]
130
147
  })
@@ -136,7 +153,7 @@ export class BibliographyDB {
136
153
  * @function saveCategories
137
154
  * @param cats The category objects to add.
138
155
  */
139
- saveCategories(cats) {
156
+ saveCategories(cats: SaveCategoriesRequest): Promise<BibCategory[]> {
140
157
  activateWait()
141
158
 
142
159
  return this.sc
@@ -147,7 +164,10 @@ export class BibliographyDB {
147
164
  this.cats.pop()
148
165
  }
149
166
  while (bibCats.length > 0) {
150
- this.cats.push(bibCats.pop())
167
+ const cat = bibCats.pop()
168
+ if (cat) {
169
+ this.cats.push(cat)
170
+ }
151
171
  }
152
172
  addAlert("success", gettext("The categories have been updated"))
153
173
  deactivateWait()
@@ -169,6 +189,7 @@ export class BibliographyDB {
169
189
  } else {
170
190
  throw error
171
191
  }
192
+ return []
172
193
  })
173
194
  }
174
195
 
@@ -176,10 +197,10 @@ export class BibliographyDB {
176
197
  * @function deleteCategory
177
198
  * @param ids A list of ids to delete.
178
199
  */
179
- deleteCategory(ids) {
200
+ deleteCategory(ids: number[]): Promise<number[]> {
180
201
  return this.sc.deleteCategory(ids).then(() => {
181
202
  const deletedPks = ids.slice()
182
- const deletedBibCats = []
203
+ const deletedBibCats: BibCategory[] = []
183
204
  this.cats.forEach(bibCat => {
184
205
  if (ids.indexOf(bibCat.id) !== -1) {
185
206
  deletedBibCats.push(bibCat)
@@ -197,9 +218,9 @@ export class BibliographyDB {
197
218
  * @function deleteBibEntries
198
219
  * @param ids A list of bibliography item ids that are to be deleted.
199
220
  */
200
- deleteBibEntries(ids) {
221
+ deleteBibEntries(ids: number[]): Promise<number[]> {
201
222
  activateWait()
202
- ids = ids.map(id => Number.parseInt(id))
223
+ ids = ids.map(id => Number.parseInt(String(id)))
203
224
  return this.sc
204
225
  .deleteBibEntries(ids)
205
226
  .then(() => {
@@ -229,6 +250,7 @@ export class BibliographyDB {
229
250
  } else {
230
251
  throw error
231
252
  }
253
+ return []
232
254
  })
233
255
  }
234
256
  }