@atjson/renderer-hir
Advanced tools
Comparing version 0.24.2 to 0.25.0
@@ -6,2 +6,8 @@ # Change Log | ||
# [0.25.0](https://github.com/CondeNast/atjson/compare/@atjson/renderer-hir@0.24.2...@atjson/renderer-hir@0.25.0) (2022-12-15) | ||
### Features | ||
- use @atjson/util in @atjson/renderer-hir ([1ffccf8](https://github.com/CondeNast/atjson/commit/1ffccf8cfb5b1d67ddca6e5b80504a2bd09e1cef)) | ||
## [0.24.2](https://github.com/CondeNast/atjson/compare/@atjson/renderer-hir@0.24.1...@atjson/renderer-hir@0.24.2) (2022-11-29) | ||
@@ -8,0 +14,0 @@ |
@@ -1,14 +0,14 @@ | ||
import Document, { Annotation, AnnotationJSON } from "@atjson/document"; | ||
import Document, { Block, Mark } from "@atjson/document"; | ||
export declare function escapeHTML(text: string): string; | ||
export declare function classify(type: string): string; | ||
export interface Context { | ||
parent: Annotation<any>; | ||
previous: Annotation<any> | (AnnotationJSON & { | ||
toJSON(): Record<string, unknown>; | ||
}) | null; | ||
next: Annotation<any> | (AnnotationJSON & { | ||
toJSON(): Record<string, unknown>; | ||
}) | null; | ||
children: Array<Annotation<any>>; | ||
document: Document; | ||
parent: Block | Mark | null; | ||
previous: Block | Mark | string | null; | ||
next: Block | Mark | string | null; | ||
children: Array<Block | Mark | string>; | ||
document: { | ||
text: string; | ||
blocks: Block[]; | ||
marks: Mark[]; | ||
}; | ||
} | ||
@@ -18,5 +18,14 @@ export default class Renderer { | ||
private slices; | ||
constructor(_document: Document | null, ..._args: any[]); | ||
renderAnnotation(annotation: Annotation<any>, context: Context): Iterator<void, any, any>; | ||
getSlice(sliceId: string): Document; | ||
constructor(_document: Document | { | ||
text: string; | ||
marks: Mark[]; | ||
blocks: Block[]; | ||
} | null, ..._args: any[]); | ||
renderBlock(block: Block, context: Context): Iterator<void, any, any>; | ||
renderMark(mark: Mark, context: Context): Iterator<void, any, any>; | ||
getSlice(sliceId: string): { | ||
text: string; | ||
marks: Mark<null>[]; | ||
blocks: Block<null>[]; | ||
}; | ||
root(): Iterator<void, any, any>; | ||
@@ -23,0 +32,0 @@ text(text: string, _: Context): string; |
"use strict"; | ||
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { | ||
if (k2 === undefined) k2 = k; | ||
var desc = Object.getOwnPropertyDescriptor(m, k); | ||
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { | ||
desc = { enumerable: true, get: function() { return m[k]; } }; | ||
} | ||
Object.defineProperty(o, k2, desc); | ||
}) : (function(o, m, k, k2) { | ||
if (k2 === undefined) k2 = k; | ||
o[k2] = m[k]; | ||
})); | ||
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { | ||
Object.defineProperty(o, "default", { enumerable: true, value: v }); | ||
}) : function(o, v) { | ||
o["default"] = v; | ||
}); | ||
var __importStar = (this && this.__importStar) || function (mod) { | ||
if (mod && mod.__esModule) return mod; | ||
var result = {}; | ||
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); | ||
__setModuleDefault(result, mod); | ||
return result; | ||
}; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.classify = exports.escapeHTML = void 0; | ||
const document_1 = require("@atjson/document"); | ||
const hir_1 = require("@atjson/hir"); | ||
const document_1 = __importStar(require("@atjson/document")); | ||
const util_1 = require("@atjson/util"); | ||
const escape = { | ||
@@ -45,32 +68,16 @@ "&": "&", | ||
exports.classify = classify; | ||
function isTextAnnotation(a) { | ||
return a.vendorPrefix === "atjson" && a.type === "text"; | ||
} | ||
function attrs(attributes) { | ||
if (attributes == null) { | ||
return attributes; | ||
} | ||
else if (Array.isArray(attributes)) { | ||
return attributes.map((item) => attrs(item)); | ||
} | ||
else if (typeof attributes === "object") { | ||
let props = {}; | ||
for (let key in attributes) { | ||
props[key] = attrs(attributes[key]); | ||
} | ||
return props; | ||
} | ||
return attributes; | ||
} | ||
function compile(renderer, node, context) { | ||
let annotation = node.annotation; | ||
let childNodes = node.children(); | ||
let childAnnotations = childNodes.map(normalizeChildNode); | ||
function compile(renderer, value, map, key, context) { | ||
var _a; | ||
let children = (_a = map[key]) !== null && _a !== void 0 ? _a : []; | ||
let generator; | ||
if (context.parent == null) { | ||
if (value == null) { | ||
generator = renderer.root(); | ||
} | ||
else { | ||
annotation.attributes = attrs(annotation.attributes); | ||
generator = renderer.renderAnnotation(annotation, Object.assign(Object.assign({}, context), { children: childAnnotations })); | ||
if ("parents" in value) { | ||
generator = renderer.renderBlock(value, Object.assign(Object.assign({}, context), { children })); | ||
} | ||
else { | ||
generator = renderer.renderMark(value, Object.assign(Object.assign({}, context), { children })); | ||
} | ||
} | ||
@@ -81,48 +88,15 @@ let result = generator.next(); | ||
} | ||
return generator.next(flatten(childNodes.map(function compileChildNode(childNode, idx) { | ||
return generator.next(flatten(children.map(function compileChildNode(child, idx) { | ||
let childContext = { | ||
parent: annotation || null, | ||
previous: childAnnotations[idx - 1] || null, | ||
next: childAnnotations[idx + 1] || null, | ||
parent: value || null, | ||
previous: children[idx - 1] || null, | ||
next: children[idx + 1] || null, | ||
document: context.document, | ||
}; | ||
if (childNode.type === "text") { | ||
return renderer.text(childNode.text, Object.assign(Object.assign({}, childContext), { children: [] })); | ||
if (typeof child === "string") { | ||
return renderer.text(child, Object.assign(Object.assign({}, childContext), { children: [] })); | ||
} | ||
return compile(renderer, childNode, childContext); | ||
return compile(renderer, child, map, child.id, childContext); | ||
}))).value; | ||
} | ||
function normalizeChildNode(childNode) { | ||
if (isTextAnnotation(childNode.annotation)) { | ||
return textAnnotationFromNode(childNode); | ||
} | ||
else if ((0, document_1.is)(childNode.annotation, document_1.UnknownAnnotation)) { | ||
console.debug("Encountered unknown annotation in render:", childNode.annotation); | ||
throw new Error("Cannot render an unknown annotation. Ensure all annotations are converted or removed before attempting to render."); | ||
} | ||
else { | ||
return childNode.annotation; | ||
} | ||
} | ||
function textAnnotationFromNode(childNode) { | ||
return { | ||
type: "text", | ||
start: childNode.start, | ||
end: childNode.end, | ||
attributes: { | ||
text: childNode.text, | ||
}, | ||
toJSON() { | ||
return { | ||
id: childNode.id, | ||
type: "-atjson-text", | ||
start: childNode.start, | ||
end: childNode.end, | ||
attributes: { | ||
"-atjson-text": childNode.text, | ||
}, | ||
}; | ||
}, | ||
}; | ||
} | ||
class Renderer { | ||
@@ -135,6 +109,8 @@ static render(...params) { | ||
let renderer = new this(document, ...params.slice(1)); | ||
let hir = new hir_1.HIR(document); | ||
renderer.slices = hir.slices; | ||
return compile(renderer, hir.rootNode, { | ||
document: hir.document, | ||
let [remainder, slices] = (0, util_1.extractSlices)(document instanceof document_1.default | ||
? (0, document_1.serialize)(document, { onUnknown: "throw" }) | ||
: document); | ||
renderer.slices = slices; | ||
return compile(renderer, null, (0, util_1.createTree)(remainder), util_1.ROOT, { | ||
document: remainder, | ||
}); | ||
@@ -145,14 +121,24 @@ } | ||
} | ||
*renderAnnotation(annotation, context) { | ||
let generator = this[annotation.type] || | ||
this[classify(annotation.type)]; | ||
*renderBlock(block, context) { | ||
let generator = this[block.type] || this[classify(block.type)]; | ||
if (generator) { | ||
return yield* generator.call(this, annotation, context); | ||
return yield* generator.call(this, block, context); | ||
} | ||
else { | ||
console.warn(`[${this.constructor.name}]: No handler present for annotations of type ${annotation.type}. Possibly important information has been dropped.`); | ||
console.debug("Unsupported annotation:", annotation); | ||
console.warn(`[${this.constructor.name}]: No handler present for block of type ${block.type}. Possibly important information has been dropped.`); | ||
console.debug("Unsupported block:", block); | ||
return yield; | ||
} | ||
} | ||
*renderMark(mark, context) { | ||
let generator = this[mark.type] || this[classify(mark.type)]; | ||
if (generator) { | ||
return yield* generator.call(this, mark, context); | ||
} | ||
else { | ||
console.warn(`[${this.constructor.name}]: No handler present for mark of type ${mark.type}. Possibly important information has been dropped.`); | ||
console.debug("Unsupported mark:", mark); | ||
return yield; | ||
} | ||
} | ||
getSlice(sliceId) { | ||
@@ -170,2 +156,2 @@ var _a; | ||
exports.default = Renderer; | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsK0NBSzBCO0FBRTFCLHFDQUEyRDtBQU0zRCxNQUFNLE1BQU0sR0FBWTtJQUN0QixHQUFHLEVBQUUsT0FBTztJQUNaLEdBQUcsRUFBRSxNQUFNO0lBQ1gsR0FBRyxFQUFFLE1BQU07SUFDWCxHQUFHLEVBQUUsUUFBUTtJQUNiLEdBQUcsRUFBRSxRQUFRO0lBQ2IsR0FBRyxFQUFFLFFBQVE7SUFDYixHQUFHLEVBQUUsUUFBUTtDQUNkLENBQUM7QUFJRixTQUFTLFFBQVEsQ0FBQyxHQUFvQjtJQUNwQyxPQUFPLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUNyQixDQUFDO0FBRUQsU0FBZ0IsVUFBVSxDQUFDLElBQVk7SUFDckMsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksRUFBRSxRQUFRLENBQUMsQ0FBQztBQUM5QyxDQUFDO0FBRkQsZ0NBRUM7QUFFRCxTQUFTLE9BQU8sQ0FBSSxLQUFxQjtJQUN2QyxJQUFJLGNBQWMsR0FBRyxFQUFFLENBQUM7SUFDeEIsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsR0FBRyxHQUFHLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLEdBQUcsRUFBRSxDQUFDLEVBQUUsRUFBRTtRQUNoRCxJQUFJLElBQUksR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDcEIsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ3ZCLGNBQWMsQ0FBQyxJQUFJLENBQUMsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztTQUN2QzthQUFNLElBQUksSUFBSSxJQUFJLElBQUksRUFBRTtZQUN2QixjQUFjLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQzNCO0tBQ0Y7SUFDRCxPQUFPLGNBQWMsQ0FBQztB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 | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSw2REFBb0U7QUFDcEUsdUNBQStEO0FBTS9ELE1BQU0sTUFBTSxHQUFZO0lBQ3RCLEdBQUcsRUFBRSxPQUFPO0lBQ1osR0FBRyxFQUFFLE1BQU07SUFDWCxHQUFHLEVBQUUsTUFBTTtJQUNYLEdBQUcsRUFBRSxRQUFRO0lBQ2IsR0FBRyxFQUFFLFFBQVE7SUFDYixHQUFHLEVBQUUsUUFBUTtJQUNiLEdBQUcsRUFBRSxRQUFRO0NBQ2QsQ0FBQztBQUlGLFNBQVMsUUFBUSxDQUFDLEdBQW9CO0lBQ3BDLE9BQU8sTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBQ3JCLENBQUM7QUFFRCxTQUFnQixVQUFVLENBQUMsSUFBWTtJQUNyQyxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxFQUFFLFFBQVEsQ0FBQyxDQUFDO0FBQzlDLENBQUM7QUFGRCxnQ0FFQztBQUVELFNBQVMsT0FBTyxDQUFJLEtBQXFCO0lBQ3ZDLElBQUksY0FBYyxHQUFHLEVBQUUsQ0FBQztJQUN4QixLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxHQUFHLEdBQUcsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDLEdBQUcsR0FBRyxFQUFFLENBQUMsRUFBRSxFQUFFO1FBQ2hELElBQUksSUFBSSxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNwQixJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDdkIsY0FBYyxDQUFDLElBQUksQ0FBQyxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1NBQ3ZDO2FBQU0sSUFBSSxJQUFJLElBQUksSUFBSSxFQUFFO1lBQ3ZCLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDM0I7S0FD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 |
@@ -1,14 +0,14 @@ | ||
import Document, { Annotation, AnnotationJSON } from "@atjson/document"; | ||
import Document, { Block, Mark } from "@atjson/document"; | ||
export declare function escapeHTML(text: string): string; | ||
export declare function classify(type: string): string; | ||
export interface Context { | ||
parent: Annotation<any>; | ||
previous: Annotation<any> | (AnnotationJSON & { | ||
toJSON(): Record<string, unknown>; | ||
}) | null; | ||
next: Annotation<any> | (AnnotationJSON & { | ||
toJSON(): Record<string, unknown>; | ||
}) | null; | ||
children: Array<Annotation<any>>; | ||
document: Document; | ||
parent: Block | Mark | null; | ||
previous: Block | Mark | string | null; | ||
next: Block | Mark | string | null; | ||
children: Array<Block | Mark | string>; | ||
document: { | ||
text: string; | ||
blocks: Block[]; | ||
marks: Mark[]; | ||
}; | ||
} | ||
@@ -18,5 +18,14 @@ export default class Renderer { | ||
private slices; | ||
constructor(_document: Document | null, ..._args: any[]); | ||
renderAnnotation(annotation: Annotation<any>, context: Context): Iterator<void, any, any>; | ||
getSlice(sliceId: string): Document; | ||
constructor(_document: Document | { | ||
text: string; | ||
marks: Mark[]; | ||
blocks: Block[]; | ||
} | null, ..._args: any[]); | ||
renderBlock(block: Block, context: Context): Iterator<void, any, any>; | ||
renderMark(mark: Mark, context: Context): Iterator<void, any, any>; | ||
getSlice(sliceId: string): { | ||
text: string; | ||
marks: Mark<null>[]; | ||
blocks: Block<null>[]; | ||
}; | ||
root(): Iterator<void, any, any>; | ||
@@ -23,0 +32,0 @@ text(text: string, _: Context): string; |
@@ -1,3 +0,3 @@ | ||
import { UnknownAnnotation, is, } from "@atjson/document"; | ||
import { HIR } from "@atjson/hir"; | ||
import Document, { serialize } from "@atjson/document"; | ||
import { createTree, extractSlices, ROOT } from "@atjson/util"; | ||
const escape = { | ||
@@ -40,35 +40,22 @@ "&": "&", | ||
} | ||
function isTextAnnotation(a) { | ||
return a.vendorPrefix === "atjson" && a.type === "text"; | ||
} | ||
function attrs(attributes) { | ||
if (attributes == null) { | ||
return attributes; | ||
} | ||
else if (Array.isArray(attributes)) { | ||
return attributes.map((item) => attrs(item)); | ||
} | ||
else if (typeof attributes === "object") { | ||
let props = {}; | ||
for (let key in attributes) { | ||
props[key] = attrs(attributes[key]); | ||
} | ||
return props; | ||
} | ||
return attributes; | ||
} | ||
function compile(renderer, node, context) { | ||
let annotation = node.annotation; | ||
let childNodes = node.children(); | ||
let childAnnotations = childNodes.map(normalizeChildNode); | ||
function compile(renderer, value, map, key, context) { | ||
var _a; | ||
let children = (_a = map[key]) !== null && _a !== void 0 ? _a : []; | ||
let generator; | ||
if (context.parent == null) { | ||
if (value == null) { | ||
generator = renderer.root(); | ||
} | ||
else { | ||
annotation.attributes = attrs(annotation.attributes); | ||
generator = renderer.renderAnnotation(annotation, { | ||
...context, | ||
children: childAnnotations, | ||
}); | ||
if ("parents" in value) { | ||
generator = renderer.renderBlock(value, { | ||
...context, | ||
children, | ||
}); | ||
} | ||
else { | ||
generator = renderer.renderMark(value, { | ||
...context, | ||
children, | ||
}); | ||
} | ||
} | ||
@@ -79,11 +66,11 @@ let result = generator.next(); | ||
} | ||
return generator.next(flatten(childNodes.map(function compileChildNode(childNode, idx) { | ||
return generator.next(flatten(children.map(function compileChildNode(child, idx) { | ||
let childContext = { | ||
parent: annotation || null, | ||
previous: childAnnotations[idx - 1] || null, | ||
next: childAnnotations[idx + 1] || null, | ||
parent: value || null, | ||
previous: children[idx - 1] || null, | ||
next: children[idx + 1] || null, | ||
document: context.document, | ||
}; | ||
if (childNode.type === "text") { | ||
return renderer.text(childNode.text, { | ||
if (typeof child === "string") { | ||
return renderer.text(child, { | ||
...childContext, | ||
@@ -93,38 +80,5 @@ children: [], | ||
} | ||
return compile(renderer, childNode, childContext); | ||
return compile(renderer, child, map, child.id, childContext); | ||
}))).value; | ||
} | ||
function normalizeChildNode(childNode) { | ||
if (isTextAnnotation(childNode.annotation)) { | ||
return textAnnotationFromNode(childNode); | ||
} | ||
else if (is(childNode.annotation, UnknownAnnotation)) { | ||
console.debug("Encountered unknown annotation in render:", childNode.annotation); | ||
throw new Error("Cannot render an unknown annotation. Ensure all annotations are converted or removed before attempting to render."); | ||
} | ||
else { | ||
return childNode.annotation; | ||
} | ||
} | ||
function textAnnotationFromNode(childNode) { | ||
return { | ||
type: "text", | ||
start: childNode.start, | ||
end: childNode.end, | ||
attributes: { | ||
text: childNode.text, | ||
}, | ||
toJSON() { | ||
return { | ||
id: childNode.id, | ||
type: "-atjson-text", | ||
start: childNode.start, | ||
end: childNode.end, | ||
attributes: { | ||
"-atjson-text": childNode.text, | ||
}, | ||
}; | ||
}, | ||
}; | ||
} | ||
export default class Renderer { | ||
@@ -137,6 +91,8 @@ static render(...params) { | ||
let renderer = new this(document, ...params.slice(1)); | ||
let hir = new HIR(document); | ||
renderer.slices = hir.slices; | ||
return compile(renderer, hir.rootNode, { | ||
document: hir.document, | ||
let [remainder, slices] = extractSlices(document instanceof Document | ||
? serialize(document, { onUnknown: "throw" }) | ||
: document); | ||
renderer.slices = slices; | ||
return compile(renderer, null, createTree(remainder), ROOT, { | ||
document: remainder, | ||
}); | ||
@@ -147,14 +103,24 @@ } | ||
} | ||
*renderAnnotation(annotation, context) { | ||
let generator = this[annotation.type] || | ||
this[classify(annotation.type)]; | ||
*renderBlock(block, context) { | ||
let generator = this[block.type] || this[classify(block.type)]; | ||
if (generator) { | ||
return yield* generator.call(this, annotation, context); | ||
return yield* generator.call(this, block, context); | ||
} | ||
else { | ||
console.warn(`[${this.constructor.name}]: No handler present for annotations of type ${annotation.type}. Possibly important information has been dropped.`); | ||
console.debug("Unsupported annotation:", annotation); | ||
console.warn(`[${this.constructor.name}]: No handler present for block of type ${block.type}. Possibly important information has been dropped.`); | ||
console.debug("Unsupported block:", block); | ||
return yield; | ||
} | ||
} | ||
*renderMark(mark, context) { | ||
let generator = this[mark.type] || this[classify(mark.type)]; | ||
if (generator) { | ||
return yield* generator.call(this, mark, context); | ||
} | ||
else { | ||
console.warn(`[${this.constructor.name}]: No handler present for mark of type ${mark.type}. Possibly important information has been dropped.`); | ||
console.debug("Unsupported mark:", mark); | ||
return yield; | ||
} | ||
} | ||
getSlice(sliceId) { | ||
@@ -171,2 +137,2 @@ var _a; | ||
} | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBaUIsRUFHZixpQkFBaUIsRUFDakIsRUFBRSxHQUNILE1BQU0sa0JBQWtCLENBQUM7QUFFMUIsT0FBTyxFQUFFLEdBQUcsRUFBMkIsTUFBTSxhQUFhLENBQUM7QUFNM0QsTUFBTSxNQUFNLEdBQVk7SUFDdEIsR0FBRyxFQUFFLE9BQU87SUFDWixHQUFHLEVBQUUsTUFBTTtJQUNYLEdBQUcsRUFBRSxNQUFNO0lBQ1gsR0FBRyxFQUFFLFFBQVE7SUFDYixHQUFHLEVBQUUsUUFBUTtJQUNiLEdBQUcsRUFBRSxRQUFRO0lBQ2IsR0FBRyxFQUFFLFFBQVE7Q0FDZCxDQUFDO0FBSUYsU0FBUyxRQUFRLENBQUMsR0FBb0I7SUFDcEMsT0FBTyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7QUFDckIsQ0FBQztBQUVELE1BQU0sVUFBVSxVQUFVLENBQUMsSUFBWTtJQUNyQyxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxFQUFFLFFBQVEsQ0FBQyxDQUFDO0FBQzlDLENBQUM7QUFFRCxTQUFTLE9BQU8sQ0FBSSxLQUFxQjtJQUN2QyxJQUFJLGNBQWMsR0FBRyxFQUFFLENBQUM7SUFDeEIsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsR0FBRyxHQUFHLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLEdBQUcsRUFBRSxDQUFDLEVBQUUsRUFBRTtRQUNoRCxJQUFJLElBQUksR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDcEIsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ3ZCLGNBQWMsQ0FBQyxJQUFJLENBQUMsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztTQUN2QzthQUFNLElBQUksSUFBSSxJQUFJLElBQUksRUFBRTtZQUN2QixjQUFj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 | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxRQUFRLEVBQUUsRUFBRSxTQUFTLEVBQWUsTUFBTSxrQkFBa0IsQ0FBQztBQUNwRSxPQUFPLEVBQUUsVUFBVSxFQUFFLGFBQWEsRUFBRSxJQUFJLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFNL0QsTUFBTSxNQUFNLEdBQVk7SUFDdEIsR0FBRyxFQUFFLE9BQU87SUFDWixHQUFHLEVBQUUsTUFBTTtJQUNYLEdBQUcsRUFBRSxNQUFNO0lBQ1gsR0FBRyxFQUFFLFFBQVE7SUFDYixHQUFHLEVBQUUsUUFBUTtJQUNiLEdBQUcsRUFBRSxRQUFRO0lBQ2IsR0FBRyxFQUFFLFFBQVE7Q0FDZCxDQUFDO0FBSUYsU0FBUyxRQUFRLENBQUMsR0FBb0I7SUFDcEMsT0FBTyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7QUFDckIsQ0FBQztBQUVELE1BQU0sVUFBVSxVQUFVLENBQUMsSUFBWTtJQUNyQyxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxFQUFFLFFBQVEsQ0FBQyxDQUFDO0FBQzlDLENBQUM7QUFFRCxTQUFTLE9BQU8sQ0FBSSxLQUFxQjtJQUN2QyxJQUFJLGNBQWMsR0FBRyxFQUFFLENBQUM7SUFDeEIsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsR0FBRyxHQUFHLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLEdBQUcsRUFBRSxDQUFDLEVBQUUsRUFBRTtRQUNoRCxJQUFJLElBQUksR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDcEIsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ3ZCLGNBQWMsQ0FBQyxJQUFJLENBQUMsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztTQUN2QzthQUFNLElBQUksSUFBSSxJQUFJLElBQUksRUFBRTtZQUN2QixjQUFjLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQzNCO0tBQ0Y7SUFDRCxPQUFPLGNBQWMsQ0FBQztBQUN4QixDQUFDO0FBRUQsU0FBUyxZQUFZLENBQUMsSUFBWTtJQUNoQyxJQUFJLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1FBQ25CLE9BQU8sSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7S0FDOUM7SUFDRCxPQUFPLEVBQUUsQ0FBQztBQUNaLENBQUM7QUFJRCxNQUFNLFVBQVUsUUFBUSxDQUFDLElBQVk7SUFDbkMsT0FBTyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7QUFDbEUsQ0FBQztBQWNELFNBQVMsT0FBTyxDQUNkLFFBQWtCLEVBQ2xCLEtBQTBCLEVBQzFCLEdBQWlELEVBQ2pELEdBQVcsRUFDWCxPQU1DOztJQUVELElBQUksUUFBUSxHQUFHLE1BQUEsR0FBRyxDQUFDLEdBQUcsQ0FBQyxtQ0FBSSxFQUFFLENBQUM7SUFDOUIsSUFBSSxTQUFxQyxDQUFDO0lBRTFDLElBQUksS0FBSyxJQUFJLElBQUksRUFBRTtRQUNqQixTQUFTLEdBQUcsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO0tBQzdCO1NBQU07UUFDTCxJQUFJLFNBQVMsSUFBSSxLQUFLLEVBQUU7WUFDdEIsU0FBUyxHQUFHLFFBQVEsQ0FBQyxXQUFXLENBQUMsS0FBSyxFQUFFO2dCQUN0QyxHQUFHLE9BQU87Z0JBQ1YsUUFBUTthQUNFLENBQUMsQ0FBQztTQUNmO2FBQU07WUFDTCxTQUFTLEdBQUcsUUFBUSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUU7Z0JBQ3JDLEdBQUcsT0FBTztnQkFDVixRQUFRO2FBQ0UsQ0FBQyxDQUFDO1NBQ2Y7S0FDRjtJQUVELElBQUksTUFBTSxHQUFHLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUM5QixJQUFJLE1BQU0sQ0FBQyxJQUFJLEVBQUU7UUFDZixPQUFPLE1BQU0sQ0FBQyxLQUFLLENBQUM7S0FDckI7SUFFRCxPQUFPLFNBQVMsQ0FBQyxJQUFJLENBQ25CLE9BQU8sQ0FDTCxRQUFRLENBQUMsR0FBRyxDQUFDLFNBQVMsZ0JBQWdCLENBQUMsS0FBSyxFQUFFLEdBQUc7UUFDL0MsSUFBSSxZQUFZLEdBQUc7WUFDakIsTUFBTSxFQUFFLEtBQUssSUFBSSxJQUFJO1lBQ3JCLFFBQVEsRUFBRSxRQUFRLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxJQUFJLElBQUk7WUFDbkMsSUFBSSxFQUFFLFFBQVEsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDLElBQUksSUFBSTtZQUMvQixRQUFRLEVBQUUsT0FBTyxDQUFDLFFBQVE7U0FDM0IsQ0FBQztRQUVGLElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxFQUFFO1lBQzdCLE9BQU8sUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUU7Z0JBQzFCLEdBQUcsWUFBWTtnQkFDZixRQUFRLEVBQUUsRUFBRTthQUNiLENBQUMsQ0FBQztTQUNKO1FBRUQsT0FBTyxPQUFPLENBQUMsUUFBUSxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRSxZQUFZLENBQVUsQ0FBQztJQUN4RSxDQUFDLENBQUMsQ0FDSCxDQUNGLENBQUMsS0FBSyxDQUFDO0FBQ1YsQ0FBQztBQUVELE1BQU0sQ0FBQyxPQUFPLE9BQU8sUUFBUTtJQUMzQixNQUFNLENBQUMsTUFBTSxDQUVYLEdBQUcsTUFBZ0M7UUFFbkMsSUFBSSxRQUFRLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3pCLElBQUksUUFBUSxJQUFJLElBQUksRUFBRTtZQUNwQixPQUFPO1NBQ1I7UUFDRCxJQUFJLFFBQVEsR0FBRyxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDdEQsSUFBSSxDQUFDLFNBQVMsRUFBRSxNQUFNLENBQUMsR0FBRyxhQUFhLENBQ3JDLFFBQVEsWUFBWSxRQUFRO1lBQzFCLENBQUMsQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxDQUFDO1lBQzdDLENBQUMsQ0FBQyxRQUFRLENBQ2IsQ0FBQztRQUNGLFFBQVEsQ0FBQyxNQUFNLEdBQUcsTUFHakIsQ0FBQztRQUNGLE9BQU8sT0FBTyxDQUNaLFFBQVEsRUFDUixJQUFJLEVBQ0osVUFBVSxDQUFDLFNBQVMsQ0FBaUQsRUFDckUsSUFBSSxFQUNKO1lBQ0UsUUFBUSxFQUFFLFNBQTZEO1NBQ3hFLENBQ0YsQ0FBQztJQUNKLENBQUM7SUFRRCxZQUNFLFNBR1EsRUFDUixHQUFHLEtBQVk7UUFFZixJQUFJLENBQUMsTUFBTSxHQUFHLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBRUQsQ0FBQyxXQUFXLENBQUMsS0FBWSxFQUFFLE9BQWdCO1FBQ3pDLElBQUksU0FBUyxHQUNWLElBQVksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUssSUFBWSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNuRSxJQUFJLFNBQVMsRUFBRTtZQUNiLE9BQU8sS0FBSyxDQUFDLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1NBQ3BEO2FBQU07WUFFTCxPQUFPLENBQUMsSUFBSSxDQUNWLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLDJDQUEyQyxLQUFLLENBQUMsSUFBSSxvREFBb0QsQ0FDbkksQ0FBQztZQUVGLE9BQU8sQ0FBQyxLQUFLLENBQUMsb0JBQW9CLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFDM0MsT0FBTyxLQUFLLENBQUM7U0FDZDtJQUNILENBQUM7SUFFRCxDQUFDLFVBQVUsQ0FBQyxJQUFVLEVBQUUsT0FBZ0I7UUFDdEMsSUFBSSxTQUFTLEdBQ1YsSUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSyxJQUFZLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ2pFLElBQUksU0FBUyxFQUFFO1lBQ2IsT0FBTyxLQUFLLENBQUMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsT0FBTyxDQUFDLENBQUM7U0FDbkQ7YUFBTTtZQUVMLE9BQU8sQ0FBQyxJQUFJLENBQ1YsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksMENBQTBDLElBQUksQ0FBQyxJQUFJLG9EQUFvRCxDQUNqSSxDQUFDO1lBRUYsT0FBTyxDQUFDLEtBQUssQ0FBQyxtQkFBbUIsRUFBRSxJQUFJLENBQUMsQ0FBQztZQUN6QyxPQUFPLEtBQUssQ0FBQztTQUNkO0lBQ0gsQ0FBQztJQVVELFFBQVEsQ0FBQyxPQUFlOztRQUN0QixPQUFPLE1BQUEsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsbUNBQUksSUFBSSxDQUFDO0lBQ3RDLENBQUM7SUFFRCxDQUFDLElBQUk7UUFDSCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFHRCxJQUFJLENBQUMsSUFBWSxFQUFFLENBQVU7UUFDM0IsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0NBQ0YifQ== |
{ | ||
"name": "@atjson/renderer-hir", | ||
"version": "0.24.2", | ||
"version": "0.25.0", | ||
"description": "Generalized tools for generating documents in a hierarchical fashion", | ||
@@ -13,6 +13,6 @@ "main": "dist/commonjs/index.js", | ||
"dependencies": { | ||
"@atjson/hir": "0.24.2" | ||
"@atjson/util": "0.2.0" | ||
}, | ||
"devDependencies": { | ||
"@atjson/document": "0.27.1" | ||
"@atjson/document": "0.28.0" | ||
}, | ||
@@ -22,3 +22,3 @@ "peerDependencies": { | ||
}, | ||
"gitHead": "6d762326b22a4260390d6bd467d56427fc21aec8" | ||
"gitHead": "58cc0b71ad764bd8a90516e0e681e730ef6bd831" | ||
} |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
133266
354
1
+ Added@atjson/util@0.2.0
+ Added@atjson/util@0.2.0(transitive)
- Removed@atjson/hir@0.24.2
- Removed@atjson/hir@0.24.2(transitive)