Skip to content

Commit

Permalink
Merge pull request #12080 from quarto-dev/book/output-file
Browse files Browse the repository at this point in the history
  • Loading branch information
cderv authored Feb 13, 2025
2 parents 7c59022 + 77f0686 commit febb497
Show file tree
Hide file tree
Showing 6 changed files with 65 additions and 35 deletions.
43 changes: 29 additions & 14 deletions src/resources/editor/tools/vs-code.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -10105,7 +10105,7 @@ var require_yaml_intelligence_resources = __commonJS({
},
"output-file": {
path: {
description: "Base name for single-file output (e.g. PDF, ePub)"
description: "Base name for single-file output (e.g. PDF, ePub, docx)"
}
},
"cover-image": {
Expand Down Expand Up @@ -21651,7 +21651,7 @@ var require_yaml_intelligence_resources = __commonJS({
"Short/abbreviated form of container-title;",
"A minor contributor to the item; typically cited using \u201Cwith\u201D before\nthe name when listed in a bibliography.",
"Curator of an exhibit or collection (e.g. in a museum).",
"Physical (e.g. size) or temporal (e.g.\uFFFD\uFFFDrunning time) dimensions of\nthe item.",
"Physical (e.g. size) or temporal (e.g. running time) dimensions of\nthe item.",
"Director (e.g. of a film).",
"Minor subdivision of a court with a <code>jurisdiction</code> for a\nlegal item",
"(Container) edition holding the item (e.g.&nbsp;\u201C3\u201D when citing a chapter\nin the third edition of a book).",
Expand Down Expand Up @@ -24817,8 +24817,8 @@ function mappedIndexToLineCol(eitherText) {
};
}
function mappedLines(str2, keepNewLines = false) {
const lines3 = rangedLines(str2.value, keepNewLines);
return lines3.map((v) => mappedString(str2, [v.range]));
const lines2 = rangedLines(str2.value, keepNewLines);
return lines2.map((v) => mappedString(str2, [v.range]));
}

// parsing.ts
Expand Down Expand Up @@ -30795,6 +30795,27 @@ function createLocalizedError(obj) {
};
}

// ../is-circular.ts
var isCircular = (obj) => {
const objectSet = /* @__PURE__ */ new WeakSet();
const detect = (obj2) => {
if (obj2 && typeof obj2 === "object") {
if (objectSet.has(obj2)) {
return true;
}
objectSet.add(obj2);
for (const key in obj2) {
if (Object.hasOwn(obj2, key) && detect(obj2[key])) {
return true;
}
}
objectSet.delete(obj2);
}
return false;
};
return detect(obj);
};

// annotated-yaml.ts
function postProcessAnnotation(parse) {
if (parse.components.length === 1 && parse.start === parse.components[0].start && parse.end === parse.components[0].end) {
Expand Down Expand Up @@ -30945,16 +30966,10 @@ function buildJsYamlAnnotation(mappedYaml) {
`Expected a single result, got ${results.length} instead`
);
}
try {
JSON.stringify(results[0]);
} catch (e) {
if (e.message.match("invalid string length")) {
} else if (e.message.match(/circular structure/)) {
throw new InternalError(
`Circular structure detected in parsed yaml: ${e.message}`
);
} else {
}
if (isCircular(results[0])) {
throw new InternalError(
`Circular structure detected in yaml`
);
}
return postProcessAnnotation(results[0]);
}
Expand Down
43 changes: 29 additions & 14 deletions src/resources/editor/tools/yaml/web-worker.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Original file line number Diff line number Diff line change
Expand Up @@ -3077,7 +3077,7 @@
},
"output-file": {
"path": {
"description": "Base name for single-file output (e.g. PDF, ePub)"
"description": "Base name for single-file output (e.g. PDF, ePub, docx)"
}
},
"cover-image": {
Expand Down Expand Up @@ -14623,7 +14623,7 @@
"Short/abbreviated form of container-title;",
"A minor contributor to the item; typically cited using “with” before\nthe name when listed in a bibliography.",
"Curator of an exhibit or collection (e.g.&nbsp;in a museum).",
"Physical (e.g.&nbsp;size) or temporal (e.g.��running time) dimensions of\nthe item.",
"Physical (e.g.&nbsp;size) or temporal (e.g.&nbsp;running time) dimensions of\nthe item.",
"Director (e.g.&nbsp;of a film).",
"Minor subdivision of a court with a <code>jurisdiction</code> for a\nlegal item",
"(Container) edition holding the item (e.g.&nbsp;“3” when citing a chapter\nin the third edition of a book).",
Expand Down
6 changes: 3 additions & 3 deletions src/resources/formats/html/esbuild-analysis-cache.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"quarto.js": {
"inputs": {
"quarto.js": {
"bytes": 26327,
"bytes": 26396,
"imports": [],
"format": "esm"
}
Expand All @@ -20,10 +20,10 @@
"entryPoint": "quarto.js",
"inputs": {
"quarto.js": {
"bytesInOutput": 21890
"bytesInOutput": 21946
}
},
"bytes": 21890
"bytes": 21946
}
}
}
Expand Down
2 changes: 1 addition & 1 deletion src/resources/schema/definitions.yml
Original file line number Diff line number Diff line change
Expand Up @@ -1203,7 +1203,7 @@
description: "Book references file"
output-file:
path:
description: "Base name for single-file output (e.g. PDF, ePub)"
description: "Base name for single-file output (e.g. PDF, ePub, docx)"
cover-image:
path:
description: "Cover image (used in HTML and ePub formats)"
Expand Down
2 changes: 1 addition & 1 deletion src/resources/types/schema-types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -609,7 +609,7 @@ The user’s cookie preferences will automatically control Google Analytics (if
export type BookSchema = {
"date-format"?: string /* Format string for dates in the book */;
"output-file"?:
string /* Base name for single-file output (e.g. PDF, ePub) */;
string /* Base name for single-file output (e.g. PDF, ePub, docx) */;
"cover-image"?: string /* Cover image (used in HTML and ePub formats) */;
"cover-image-alt"?:
string /* Alternative text for cover image (used in HTML format) */;
Expand Down

0 comments on commit febb497

Please sign in to comment.