@fiduswriter/bibliography-manager 0.1.3 → 0.1.4

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.
@@ -1,4 +1,4 @@
1
- import { ZipFileCreator } from "@fiduswriter/document/exporter/tools/zip";
1
+ import { ZipFileCreator } from "fwtoolkit/file/zip";
2
2
  import download from "downloadjs";
3
3
  export class BibLatexFileExporter {
4
4
  constructor(bibDB, pks) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/export/index.js"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAC,MAAM,0CAA0C,CAAA;AACvE,OAAO,QAAQ,MAAM,YAAY,CAAA;AAEjC,MAAM,OAAO,oBAAoB;IAC7B,YAAY,KAAK,EAAE,GAAG;QAClB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAA,CAAC,gEAAgE;QAC/E,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA,CAAC,4CAA4C;IACnE,CAAC;IAED,IAAI;QACA,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,EAAC,gBAAgB,EAAC,EAAE,EAAE;YAC7C,MAAM,QAAQ,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,CAAA;YAE9D,MAAM,MAAM,GAAG,IAAI,cAAc,CAAC;gBAC9B;oBACI,QAAQ,EAAE,kBAAkB;oBAC5B,QAAQ,EAAE,QAAQ,CAAC,MAAM;iBAC5B;aACJ,CAAC,CAAA;YACF,MAAM;iBACD,IAAI,EAAE;iBACN,IAAI,CAAC,IAAI,CAAC,EAAE,CACT,QAAQ,CAAC,IAAI,EAAE,kBAAkB,EAAE,iBAAiB,CAAC,CACxD,CAAA;QACT,CAAC,CAAC,CAAA;IACN,CAAC;CACJ"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/export/index.js"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAC,MAAM,oBAAoB,CAAA;AACjD,OAAO,QAAQ,MAAM,YAAY,CAAA;AAEjC,MAAM,OAAO,oBAAoB;IAC7B,YAAY,KAAK,EAAE,GAAG;QAClB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAA,CAAC,gEAAgE;QAC/E,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA,CAAC,4CAA4C;IACnE,CAAC;IAED,IAAI;QACA,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,EAAC,gBAAgB,EAAC,EAAE,EAAE;YAC7C,MAAM,QAAQ,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,CAAA;YAE9D,MAAM,MAAM,GAAG,IAAI,cAAc,CAAC;gBAC9B;oBACI,QAAQ,EAAE,kBAAkB;oBAC5B,QAAQ,EAAE,QAAQ,CAAC,MAAM;iBAC5B;aACJ,CAAC,CAAA;YACF,MAAM;iBACD,IAAI,EAAE;iBACN,IAAI,CAAC,IAAI,CAAC,EAAE,CACT,QAAQ,CAAC,IAAI,EAAE,kBAAkB,EAAE,iBAAiB,CAAC,CACxD,CAAA;QACT,CAAC,CAAC,CAAA;IACN,CAAC;CACJ"}
@@ -0,0 +1,86 @@
1
+ export const text = {
2
+ group: "inline"
3
+ };
4
+ export const literal = {
5
+ content: "inline*",
6
+ marks: "_",
7
+ parseDOM: [{ tag: "div.literal" }],
8
+ toDOM() {
9
+ return [
10
+ "div",
11
+ {
12
+ class: "literal"
13
+ },
14
+ 0
15
+ ];
16
+ }
17
+ };
18
+ export const variable = {
19
+ inline: true,
20
+ group: "inline",
21
+ attrs: {
22
+ variable: { default: "" }
23
+ },
24
+ parseDOM: [
25
+ {
26
+ tag: "span[data-variable]",
27
+ getAttrs(dom) {
28
+ const element = dom;
29
+ return {
30
+ variable: element.getAttribute("data-variable")
31
+ };
32
+ }
33
+ }
34
+ ],
35
+ toDOM(node) {
36
+ return [
37
+ "span",
38
+ { "data-variable": node.attrs.variable },
39
+ node.attrs.variable
40
+ ];
41
+ }
42
+ };
43
+ export const sup = {
44
+ parseDOM: [
45
+ { tag: "sup" },
46
+ { style: "vertical-align", getAttrs: value => value == "super" && null }
47
+ ],
48
+ toDOM() {
49
+ return ["sup"];
50
+ }
51
+ };
52
+ export const sub = {
53
+ parseDOM: [
54
+ { tag: "sub" },
55
+ { style: "vertical-align", getAttrs: value => value == "sub" && null }
56
+ ],
57
+ toDOM() {
58
+ return ["sub"];
59
+ }
60
+ };
61
+ export const smallcaps = {
62
+ parseDOM: [
63
+ { tag: "span.smallcaps" },
64
+ {
65
+ style: "font-variant",
66
+ getAttrs: value => value == "small-caps" && null
67
+ }
68
+ ],
69
+ toDOM() {
70
+ return ["span", { class: "smallcaps" }];
71
+ }
72
+ };
73
+ // Currently unsupported
74
+ export const url = {
75
+ parseDOM: [{ tag: "span.url" }],
76
+ toDOM() {
77
+ return ["span", { class: "url" }];
78
+ }
79
+ };
80
+ export const enquote = {
81
+ parseDOM: [{ tag: "span.enquote" }],
82
+ toDOM() {
83
+ return ["span", { class: "enquote" }];
84
+ }
85
+ };
86
+ //# sourceMappingURL=common.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"common.js","sourceRoot":"","sources":["../../src/schema/common.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,IAAI,GAAa;IAC1B,KAAK,EAAE,QAAQ;CAClB,CAAA;AAED,MAAM,CAAC,MAAM,OAAO,GAAa;IAC7B,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,GAAG;IACV,QAAQ,EAAE,CAAC,EAAC,GAAG,EAAE,aAAa,EAAC,CAAC;IAChC,KAAK;QACD,OAAO;YACH,KAAK;YACL;gBACI,KAAK,EAAE,SAAS;aACnB;YACD,CAAC;SACJ,CAAA;IACL,CAAC;CACJ,CAAA;AAED,MAAM,CAAC,MAAM,QAAQ,GAAa;IAC9B,MAAM,EAAE,IAAI;IACZ,KAAK,EAAE,QAAQ;IACf,KAAK,EAAE;QACH,QAAQ,EAAE,EAAC,OAAO,EAAE,EAAE,EAAC;KAC1B;IACD,QAAQ,EAAE;QACN;YACI,GAAG,EAAE,qBAAqB;YAC1B,QAAQ,CAAC,GAAG;gBACR,MAAM,OAAO,GAAG,GAAc,CAAA;gBAC9B,OAAO;oBACH,QAAQ,EAAE,OAAO,CAAC,YAAY,CAAC,eAAe,CAAC;iBAClD,CAAA;YACL,CAAC;SACJ;KACJ;IACD,KAAK,CAAC,IAAI;QACN,OAAO;YACH,MAAM;YACN,EAAC,eAAe,EAAE,IAAI,CAAC,KAAK,CAAC,QAAkB,EAAC;YAChD,IAAI,CAAC,KAAK,CAAC,QAAkB;SAChC,CAAA;IACL,CAAC;CACJ,CAAA;AAED,MAAM,CAAC,MAAM,GAAG,GAAa;IACzB,QAAQ,EAAE;QACN,EAAC,GAAG,EAAE,KAAK,EAAC;QACZ,EAAC,KAAK,EAAE,gBAAgB,EAAE,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,IAAI,OAAO,IAAI,IAAI,EAAC;KACzE;IACD,KAAK;QACD,OAAO,CAAC,KAAK,CAAC,CAAA;IAClB,CAAC;CACJ,CAAA;AAED,MAAM,CAAC,MAAM,GAAG,GAAa;IACzB,QAAQ,EAAE;QACN,EAAC,GAAG,EAAE,KAAK,EAAC;QACZ,EAAC,KAAK,EAAE,gBAAgB,EAAE,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,IAAI,KAAK,IAAI,IAAI,EAAC;KACvE;IACD,KAAK;QACD,OAAO,CAAC,KAAK,CAAC,CAAA;IAClB,CAAC;CACJ,CAAA;AAED,MAAM,CAAC,MAAM,SAAS,GAAa;IAC/B,QAAQ,EAAE;QACN,EAAC,GAAG,EAAE,gBAAgB,EAAC;QACvB;YACI,KAAK,EAAE,cAAc;YACrB,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,IAAI,YAAY,IAAI,IAAI;SACnD;KACJ;IACD,KAAK;QACD,OAAO,CAAC,MAAM,EAAE,EAAC,KAAK,EAAE,WAAW,EAAC,CAAC,CAAA;IACzC,CAAC;CACJ,CAAA;AAED,wBAAwB;AAExB,MAAM,CAAC,MAAM,GAAG,GAAa;IACzB,QAAQ,EAAE,CAAC,EAAC,GAAG,EAAE,UAAU,EAAC,CAAC;IAC7B,KAAK;QACD,OAAO,CAAC,MAAM,EAAE,EAAC,KAAK,EAAE,KAAK,EAAC,CAAC,CAAA;IACnC,CAAC;CACJ,CAAA;AAED,MAAM,CAAC,MAAM,OAAO,GAAa;IAC7B,QAAQ,EAAE,CAAC,EAAC,GAAG,EAAE,cAAc,EAAC,CAAC;IACjC,KAAK;QACD,OAAO,CAAC,MAAM,EAAE,EAAC,KAAK,EAAE,SAAS,EAAC,CAAC,CAAA;IACvC,CAAC;CACJ,CAAA"}
@@ -0,0 +1,131 @@
1
+ import { Schema } from "prosemirror-model";
2
+ import { marks } from "prosemirror-schema-basic";
3
+ import { smallcaps, sub, sup, text } from "./common.js";
4
+ const doc = { content: "cslbib" };
5
+ const cslbib = {
6
+ content: "cslentry*",
7
+ parseDOM: [{ tag: "div.csl-bib-body" }],
8
+ toDOM() {
9
+ return [
10
+ "div",
11
+ {
12
+ class: "csl-bib-body"
13
+ },
14
+ 0
15
+ ];
16
+ }
17
+ };
18
+ const cslentry = {
19
+ content: "block*",
20
+ parseDOM: [{ tag: "div.csl-entry" }],
21
+ toDOM() {
22
+ return [
23
+ "div",
24
+ {
25
+ class: "csl-entry"
26
+ },
27
+ 0
28
+ ];
29
+ }
30
+ };
31
+ // This block doesn't actually appear in the HTML output, but because the schema
32
+ // system doesn't allow for the mixing of inline and block content, it "imagines"
33
+ // that this block exists. This---rather than other blocks---is chosen, because
34
+ // it's the first in the list.
35
+ const cslinline = {
36
+ group: "block",
37
+ content: "text*",
38
+ marks: "_",
39
+ parseDOM: [{ tag: "div.csl-inline" }],
40
+ toDOM() {
41
+ return [
42
+ "div",
43
+ {
44
+ class: "csl-inline"
45
+ },
46
+ 0
47
+ ];
48
+ }
49
+ };
50
+ const cslblock = {
51
+ group: "block",
52
+ content: "text*",
53
+ marks: "_",
54
+ parseDOM: [{ tag: "div.csl-block" }],
55
+ toDOM() {
56
+ return [
57
+ "div",
58
+ {
59
+ class: "csl-block"
60
+ },
61
+ 0
62
+ ];
63
+ }
64
+ };
65
+ const cslleftmargin = {
66
+ group: "block",
67
+ content: "text*",
68
+ marks: "_",
69
+ parseDOM: [{ tag: "div.csl-left-margin" }],
70
+ toDOM() {
71
+ return [
72
+ "div",
73
+ {
74
+ class: "csl-left-margin"
75
+ },
76
+ 0
77
+ ];
78
+ }
79
+ };
80
+ const cslrightinline = {
81
+ group: "block",
82
+ content: "text*",
83
+ marks: "_",
84
+ parseDOM: [{ tag: "div.csl-right-inline" }],
85
+ toDOM() {
86
+ return [
87
+ "div",
88
+ {
89
+ class: "csl-right-inline"
90
+ },
91
+ 0
92
+ ];
93
+ }
94
+ };
95
+ const cslindent = {
96
+ group: "block",
97
+ content: "text*",
98
+ marks: "_",
99
+ parseDOM: [{ tag: "div.csl-indent" }],
100
+ toDOM() {
101
+ return [
102
+ "div",
103
+ {
104
+ class: "csl-indent"
105
+ },
106
+ 0
107
+ ];
108
+ }
109
+ };
110
+ // A schema to express the citeproc HTML bibliography output
111
+ export const cslBibSchema = new Schema({
112
+ nodes: {
113
+ doc,
114
+ cslbib,
115
+ cslentry,
116
+ cslinline,
117
+ cslblock,
118
+ cslleftmargin,
119
+ cslrightinline,
120
+ cslindent,
121
+ text
122
+ },
123
+ marks: {
124
+ em: marks.em,
125
+ strong: marks.strong,
126
+ smallcaps,
127
+ sup,
128
+ sub
129
+ }
130
+ });
131
+ //# sourceMappingURL=csl_bib.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"csl_bib.js","sourceRoot":"","sources":["../../src/schema/csl_bib.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { url, enquote, literal, smallcaps, sub, sup, text, variable } from "@fiduswriter/document/bibliography/common";
1
+ import { url, enquote, literal, smallcaps, sub, sup, text, variable } from "@fiduswriter./common.js";
2
2
  import { Schema } from "prosemirror-model";
3
3
  import { marks } from "prosemirror-schema-basic";
4
4
  const doc = {
@@ -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,2CAA2C,CAAA;AAClD,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.js"],"names":[],"mappings":"AAAA,OAAO,EACH,GAAG,EACH,OAAO,EACP,OAAO,EACP,SAAS,EACT,GAAG,EACH,GAAG,EACH,IAAI,EACJ,QAAQ,EACX,MAAM,yBAAyB,CAAA;AAChC,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,4 +1,4 @@
1
- import { url, enquote, smallcaps, sub, sup, text, variable } from "@fiduswriter/document/bibliography/common";
1
+ import { url, enquote, smallcaps, sub, sup, text, variable } from "@fiduswriter./common.js";
2
2
  import { Schema } from "prosemirror-model";
3
3
  import { marks } from "prosemirror-schema-basic";
4
4
  const longliteral = {
@@ -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,2CAA2C,CAAA;AAClD,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.js"],"names":[],"mappings":"AAAA,OAAO,EACH,GAAG,EACH,OAAO,EACP,SAAS,EACT,GAAG,EACH,GAAG,EACH,IAAI,EACJ,QAAQ,EACX,MAAM,yBAAyB,CAAA;AAChC,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,4 +1,4 @@
1
- import { url, enquote, literal, smallcaps, sub, sup, text, variable } from "@fiduswriter/document/bibliography/common";
1
+ import { url, enquote, literal, smallcaps, sub, sup, text, variable } from "@fiduswriter./common.js";
2
2
  import { Schema } from "prosemirror-model";
3
3
  import { marks } from "prosemirror-schema-basic";
4
4
  const nocase = {
@@ -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,2CAA2C,CAAA;AAClD,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.js"],"names":[],"mappings":"AAAA,OAAO,EACH,GAAG,EACH,OAAO,EACP,OAAO,EACP,SAAS,EACT,GAAG,EACH,GAAG,EACH,IAAI,EACJ,QAAQ,EACX,MAAM,yBAAyB,CAAA;AAChC,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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fiduswriter/bibliography-manager",
3
- "version": "0.1.3",
3
+ "version": "0.1.4",
4
4
  "description": "Fidus Writer bibliography manager",
5
5
  "repository": {
6
6
  "type": "git",
@@ -38,10 +38,11 @@
38
38
  },
39
39
  "dependencies": {
40
40
  "@fiduswriter/common": "^0.1.3",
41
- "@fiduswriter/document": "^0.2.17",
42
41
  "bibliojson": "^4.0.0",
43
42
  "fix-utf8": "2.0.1",
44
43
  "fwtoolkit": "^0.1.4",
44
+ "prosemirror-model": "^1.25.0",
45
+ "prosemirror-schema-basic": "^1.2.4",
45
46
  "tokenfield": "^1.2.2"
46
47
  },
47
48
  "devDependencies": {
@@ -1,4 +1,4 @@
1
- import {ZipFileCreator} from "@fiduswriter/document/exporter/tools/zip"
1
+ import {ZipFileCreator} from "fwtoolkit/file/zip"
2
2
  import download from "downloadjs"
3
3
 
4
4
  export class BibLatexFileExporter {
@@ -0,0 +1,95 @@
1
+ import type {MarkSpec, NodeSpec} from "prosemirror-model"
2
+
3
+ export const text: NodeSpec = {
4
+ group: "inline"
5
+ }
6
+
7
+ export const literal: NodeSpec = {
8
+ content: "inline*",
9
+ marks: "_",
10
+ parseDOM: [{tag: "div.literal"}],
11
+ toDOM() {
12
+ return [
13
+ "div",
14
+ {
15
+ class: "literal"
16
+ },
17
+ 0
18
+ ]
19
+ }
20
+ }
21
+
22
+ export const variable: NodeSpec = {
23
+ inline: true,
24
+ group: "inline",
25
+ attrs: {
26
+ variable: {default: ""}
27
+ },
28
+ parseDOM: [
29
+ {
30
+ tag: "span[data-variable]",
31
+ getAttrs(dom) {
32
+ const element = dom as Element
33
+ return {
34
+ variable: element.getAttribute("data-variable")
35
+ }
36
+ }
37
+ }
38
+ ],
39
+ toDOM(node) {
40
+ return [
41
+ "span",
42
+ {"data-variable": node.attrs.variable as string},
43
+ node.attrs.variable as string
44
+ ]
45
+ }
46
+ }
47
+
48
+ export const sup: MarkSpec = {
49
+ parseDOM: [
50
+ {tag: "sup"},
51
+ {style: "vertical-align", getAttrs: value => value == "super" && null}
52
+ ],
53
+ toDOM() {
54
+ return ["sup"]
55
+ }
56
+ }
57
+
58
+ export const sub: MarkSpec = {
59
+ parseDOM: [
60
+ {tag: "sub"},
61
+ {style: "vertical-align", getAttrs: value => value == "sub" && null}
62
+ ],
63
+ toDOM() {
64
+ return ["sub"]
65
+ }
66
+ }
67
+
68
+ export const smallcaps: MarkSpec = {
69
+ parseDOM: [
70
+ {tag: "span.smallcaps"},
71
+ {
72
+ style: "font-variant",
73
+ getAttrs: value => value == "small-caps" && null
74
+ }
75
+ ],
76
+ toDOM() {
77
+ return ["span", {class: "smallcaps"}]
78
+ }
79
+ }
80
+
81
+ // Currently unsupported
82
+
83
+ export const url: MarkSpec = {
84
+ parseDOM: [{tag: "span.url"}],
85
+ toDOM() {
86
+ return ["span", {class: "url"}]
87
+ }
88
+ }
89
+
90
+ export const enquote: MarkSpec = {
91
+ parseDOM: [{tag: "span.enquote"}],
92
+ toDOM() {
93
+ return ["span", {class: "enquote"}]
94
+ }
95
+ }
@@ -0,0 +1,140 @@
1
+ import {Schema} from "prosemirror-model"
2
+ import {marks} from "prosemirror-schema-basic"
3
+
4
+ import {smallcaps, sub, sup, text} from "./common.js"
5
+
6
+ const doc: import("prosemirror-model").NodeSpec = {content: "cslbib"}
7
+
8
+ const cslbib: import("prosemirror-model").NodeSpec = {
9
+ content: "cslentry*",
10
+ parseDOM: [{tag: "div.csl-bib-body"}],
11
+ toDOM() {
12
+ return [
13
+ "div",
14
+ {
15
+ class: "csl-bib-body"
16
+ },
17
+ 0
18
+ ]
19
+ }
20
+ }
21
+
22
+ const cslentry: import("prosemirror-model").NodeSpec = {
23
+ content: "block*",
24
+ parseDOM: [{tag: "div.csl-entry"}],
25
+ toDOM() {
26
+ return [
27
+ "div",
28
+ {
29
+ class: "csl-entry"
30
+ },
31
+ 0
32
+ ]
33
+ }
34
+ }
35
+
36
+ // This block doesn't actually appear in the HTML output, but because the schema
37
+ // system doesn't allow for the mixing of inline and block content, it "imagines"
38
+ // that this block exists. This---rather than other blocks---is chosen, because
39
+ // it's the first in the list.
40
+ const cslinline: import("prosemirror-model").NodeSpec = {
41
+ group: "block",
42
+ content: "text*",
43
+ marks: "_",
44
+ parseDOM: [{tag: "div.csl-inline"}],
45
+ toDOM() {
46
+ return [
47
+ "div",
48
+ {
49
+ class: "csl-inline"
50
+ },
51
+ 0
52
+ ]
53
+ }
54
+ }
55
+
56
+ const cslblock: import("prosemirror-model").NodeSpec = {
57
+ group: "block",
58
+ content: "text*",
59
+ marks: "_",
60
+ parseDOM: [{tag: "div.csl-block"}],
61
+ toDOM() {
62
+ return [
63
+ "div",
64
+ {
65
+ class: "csl-block"
66
+ },
67
+ 0
68
+ ]
69
+ }
70
+ }
71
+
72
+ const cslleftmargin: import("prosemirror-model").NodeSpec = {
73
+ group: "block",
74
+ content: "text*",
75
+ marks: "_",
76
+ parseDOM: [{tag: "div.csl-left-margin"}],
77
+ toDOM() {
78
+ return [
79
+ "div",
80
+ {
81
+ class: "csl-left-margin"
82
+ },
83
+ 0
84
+ ]
85
+ }
86
+ }
87
+
88
+ const cslrightinline: import("prosemirror-model").NodeSpec = {
89
+ group: "block",
90
+ content: "text*",
91
+ marks: "_",
92
+ parseDOM: [{tag: "div.csl-right-inline"}],
93
+ toDOM() {
94
+ return [
95
+ "div",
96
+ {
97
+ class: "csl-right-inline"
98
+ },
99
+ 0
100
+ ]
101
+ }
102
+ }
103
+
104
+ const cslindent: import("prosemirror-model").NodeSpec = {
105
+ group: "block",
106
+ content: "text*",
107
+ marks: "_",
108
+ parseDOM: [{tag: "div.csl-indent"}],
109
+ toDOM() {
110
+ return [
111
+ "div",
112
+ {
113
+ class: "csl-indent"
114
+ },
115
+ 0
116
+ ]
117
+ }
118
+ }
119
+
120
+ // A schema to express the citeproc HTML bibliography output
121
+ export const cslBibSchema = new Schema({
122
+ nodes: {
123
+ doc,
124
+ cslbib,
125
+ cslentry,
126
+ cslinline,
127
+ cslblock,
128
+ cslleftmargin,
129
+ cslrightinline,
130
+ cslindent,
131
+ text
132
+ },
133
+ marks: {
134
+ em: marks.em,
135
+ strong: marks.strong,
136
+ smallcaps,
137
+ sup,
138
+ sub
139
+ }
140
+ })
@@ -7,7 +7,7 @@ import {
7
7
  sup,
8
8
  text,
9
9
  variable
10
- } from "@fiduswriter/document/bibliography/common"
10
+ } from "@fiduswriter./common.js"
11
11
  import {Schema} from "prosemirror-model"
12
12
  import {marks} from "prosemirror-schema-basic"
13
13
 
@@ -6,7 +6,7 @@ import {
6
6
  sup,
7
7
  text,
8
8
  variable
9
- } from "@fiduswriter/document/bibliography/common"
9
+ } from "@fiduswriter./common.js"
10
10
  import {Schema} from "prosemirror-model"
11
11
  import {marks} from "prosemirror-schema-basic"
12
12
 
@@ -7,7 +7,7 @@ import {
7
7
  sup,
8
8
  text,
9
9
  variable
10
- } from "@fiduswriter/document/bibliography/common"
10
+ } from "@fiduswriter./common.js"
11
11
  import {Schema} from "prosemirror-model"
12
12
  import {marks} from "prosemirror-schema-basic"
13
13