rehype-all-the-thumbs-curate
Version:
Supporting rehype-all-the-thumbs by finding elements to be processed
1,784 lines (1,755 loc) • 101 kB
JavaScript
var __create = Object.create;
var __defProp = Object.defineProperty;
var __getProtoOf = Object.getPrototypeOf;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __markAsModule = (target) => __defProp(target, "__esModule", {value: true});
var __commonJS = (callback, module2) => () => {
if (!module2) {
module2 = {exports: {}};
callback(module2.exports, module2);
}
return module2.exports;
};
var __export = (target, all) => {
for (var name in all)
__defProp(target, name, {get: all[name], enumerable: true});
};
var __exportStar = (target, module2, desc) => {
if (module2 && typeof module2 === "object" || typeof module2 === "function") {
for (let key of __getOwnPropNames(module2))
if (!__hasOwnProp.call(target, key) && key !== "default")
__defProp(target, key, {get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable});
}
return target;
};
var __toModule = (module2) => {
if (module2 && module2.__esModule)
return module2;
return __exportStar(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", {value: module2, enumerable: true})), module2);
};
// node_modules/zwitch/index.js
var require_zwitch = __commonJS((exports2, module2) => {
"use strict";
module2.exports = factory;
var noop = Function.prototype;
var own = {}.hasOwnProperty;
function factory(key, options) {
var settings = options || {};
function one(value) {
var fn = one.invalid;
var handlers = one.handlers;
if (value && own.call(value, key)) {
fn = own.call(handlers, value[key]) ? handlers[value[key]] : one.unknown;
}
return (fn || noop).apply(this, arguments);
}
one.handlers = settings.handlers || {};
one.invalid = settings.invalid;
one.unknown = settings.unknown;
return one;
}
});
// node_modules/xtend/immutable.js
var require_immutable = __commonJS((exports2, module2) => {
module2.exports = extend;
var hasOwnProperty = Object.prototype.hasOwnProperty;
function extend() {
var target = {};
for (var i = 0; i < arguments.length; i++) {
var source = arguments[i];
for (var key in source) {
if (hasOwnProperty.call(source, key)) {
target[key] = source[key];
}
}
}
return target;
}
});
// node_modules/property-information/lib/util/schema.js
var require_schema = __commonJS((exports2, module2) => {
"use strict";
module2.exports = Schema;
var proto = Schema.prototype;
proto.space = null;
proto.normal = {};
proto.property = {};
function Schema(property, normal, space) {
this.property = property;
this.normal = normal;
if (space) {
this.space = space;
}
}
});
// node_modules/property-information/lib/util/merge.js
var require_merge = __commonJS((exports2, module2) => {
"use strict";
var xtend = require_immutable();
var Schema = require_schema();
module2.exports = merge2;
function merge2(definitions) {
var length = definitions.length;
var property = [];
var normal = [];
var index = -1;
var info;
var space;
while (++index < length) {
info = definitions[index];
property.push(info.property);
normal.push(info.normal);
space = info.space;
}
return new Schema(xtend.apply(null, property), xtend.apply(null, normal), space);
}
});
// node_modules/property-information/normalize.js
var require_normalize = __commonJS((exports2, module2) => {
"use strict";
module2.exports = normalize;
function normalize(value) {
return value.toLowerCase();
}
});
// node_modules/property-information/lib/util/info.js
var require_info = __commonJS((exports2, module2) => {
"use strict";
module2.exports = Info;
var proto = Info.prototype;
proto.space = null;
proto.attribute = null;
proto.property = null;
proto.boolean = false;
proto.booleanish = false;
proto.overloadedBoolean = false;
proto.number = false;
proto.commaSeparated = false;
proto.spaceSeparated = false;
proto.commaOrSpaceSeparated = false;
proto.mustUseProperty = false;
proto.defined = false;
function Info(property, attribute) {
this.property = property;
this.attribute = attribute;
}
});
// node_modules/property-information/lib/util/types.js
var require_types = __commonJS((exports2) => {
"use strict";
var powers = 0;
exports2.boolean = increment();
exports2.booleanish = increment();
exports2.overloadedBoolean = increment();
exports2.number = increment();
exports2.spaceSeparated = increment();
exports2.commaSeparated = increment();
exports2.commaOrSpaceSeparated = increment();
function increment() {
return Math.pow(2, ++powers);
}
});
// node_modules/property-information/lib/util/defined-info.js
var require_defined_info = __commonJS((exports2, module2) => {
"use strict";
var Info = require_info();
var types = require_types();
module2.exports = DefinedInfo;
DefinedInfo.prototype = new Info();
DefinedInfo.prototype.defined = true;
var checks = [
"boolean",
"booleanish",
"overloadedBoolean",
"number",
"commaSeparated",
"spaceSeparated",
"commaOrSpaceSeparated"
];
var checksLength = checks.length;
function DefinedInfo(property, attribute, mask, space) {
var index = -1;
var check;
mark(this, "space", space);
Info.call(this, property, attribute);
while (++index < checksLength) {
check = checks[index];
mark(this, check, (mask & types[check]) === types[check]);
}
}
function mark(values, key, value) {
if (value) {
values[key] = value;
}
}
});
// node_modules/property-information/lib/util/create.js
var require_create = __commonJS((exports2, module2) => {
"use strict";
var normalize = require_normalize();
var Schema = require_schema();
var DefinedInfo = require_defined_info();
module2.exports = create;
function create(definition) {
var space = definition.space;
var mustUseProperty = definition.mustUseProperty || [];
var attributes = definition.attributes || {};
var props = definition.properties;
var transform = definition.transform;
var property = {};
var normal = {};
var prop;
var info;
for (prop in props) {
info = new DefinedInfo(prop, transform(attributes, prop), props[prop], space);
if (mustUseProperty.indexOf(prop) !== -1) {
info.mustUseProperty = true;
}
property[prop] = info;
normal[normalize(prop)] = prop;
normal[normalize(info.attribute)] = prop;
}
return new Schema(property, normal, space);
}
});
// node_modules/property-information/lib/xlink.js
var require_xlink = __commonJS((exports2, module2) => {
"use strict";
var create = require_create();
module2.exports = create({
space: "xlink",
transform: xlinkTransform,
properties: {
xLinkActuate: null,
xLinkArcRole: null,
xLinkHref: null,
xLinkRole: null,
xLinkShow: null,
xLinkTitle: null,
xLinkType: null
}
});
function xlinkTransform(_, prop) {
return "xlink:" + prop.slice(5).toLowerCase();
}
});
// node_modules/property-information/lib/xml.js
var require_xml = __commonJS((exports2, module2) => {
"use strict";
var create = require_create();
module2.exports = create({
space: "xml",
transform: xmlTransform,
properties: {
xmlLang: null,
xmlBase: null,
xmlSpace: null
}
});
function xmlTransform(_, prop) {
return "xml:" + prop.slice(3).toLowerCase();
}
});
// node_modules/property-information/lib/util/case-sensitive-transform.js
var require_case_sensitive_transform = __commonJS((exports2, module2) => {
"use strict";
module2.exports = caseSensitiveTransform;
function caseSensitiveTransform(attributes, attribute) {
return attribute in attributes ? attributes[attribute] : attribute;
}
});
// node_modules/property-information/lib/util/case-insensitive-transform.js
var require_case_insensitive_transform = __commonJS((exports2, module2) => {
"use strict";
var caseSensitiveTransform = require_case_sensitive_transform();
module2.exports = caseInsensitiveTransform;
function caseInsensitiveTransform(attributes, property) {
return caseSensitiveTransform(attributes, property.toLowerCase());
}
});
// node_modules/property-information/lib/xmlns.js
var require_xmlns = __commonJS((exports2, module2) => {
"use strict";
var create = require_create();
var caseInsensitiveTransform = require_case_insensitive_transform();
module2.exports = create({
space: "xmlns",
attributes: {
xmlnsxlink: "xmlns:xlink"
},
transform: caseInsensitiveTransform,
properties: {
xmlns: null,
xmlnsXLink: null
}
});
});
// node_modules/property-information/lib/aria.js
var require_aria = __commonJS((exports2, module2) => {
"use strict";
var types = require_types();
var create = require_create();
var booleanish = types.booleanish;
var number = types.number;
var spaceSeparated = types.spaceSeparated;
module2.exports = create({
transform: ariaTransform,
properties: {
ariaActiveDescendant: null,
ariaAtomic: booleanish,
ariaAutoComplete: null,
ariaBusy: booleanish,
ariaChecked: booleanish,
ariaColCount: number,
ariaColIndex: number,
ariaColSpan: number,
ariaControls: spaceSeparated,
ariaCurrent: null,
ariaDescribedBy: spaceSeparated,
ariaDetails: null,
ariaDisabled: booleanish,
ariaDropEffect: spaceSeparated,
ariaErrorMessage: null,
ariaExpanded: booleanish,
ariaFlowTo: spaceSeparated,
ariaGrabbed: booleanish,
ariaHasPopup: null,
ariaHidden: booleanish,
ariaInvalid: null,
ariaKeyShortcuts: null,
ariaLabel: null,
ariaLabelledBy: spaceSeparated,
ariaLevel: number,
ariaLive: null,
ariaModal: booleanish,
ariaMultiLine: booleanish,
ariaMultiSelectable: booleanish,
ariaOrientation: null,
ariaOwns: spaceSeparated,
ariaPlaceholder: null,
ariaPosInSet: number,
ariaPressed: booleanish,
ariaReadOnly: booleanish,
ariaRelevant: null,
ariaRequired: booleanish,
ariaRoleDescription: spaceSeparated,
ariaRowCount: number,
ariaRowIndex: number,
ariaRowSpan: number,
ariaSelected: booleanish,
ariaSetSize: number,
ariaSort: null,
ariaValueMax: number,
ariaValueMin: number,
ariaValueNow: number,
ariaValueText: null,
role: null
}
});
function ariaTransform(_, prop) {
return prop === "role" ? prop : "aria-" + prop.slice(4).toLowerCase();
}
});
// node_modules/property-information/lib/html.js
var require_html = __commonJS((exports2, module2) => {
"use strict";
var types = require_types();
var create = require_create();
var caseInsensitiveTransform = require_case_insensitive_transform();
var boolean = types.boolean;
var overloadedBoolean = types.overloadedBoolean;
var booleanish = types.booleanish;
var number = types.number;
var spaceSeparated = types.spaceSeparated;
var commaSeparated = types.commaSeparated;
module2.exports = create({
space: "html",
attributes: {
acceptcharset: "accept-charset",
classname: "class",
htmlfor: "for",
httpequiv: "http-equiv"
},
transform: caseInsensitiveTransform,
mustUseProperty: ["checked", "multiple", "muted", "selected"],
properties: {
abbr: null,
accept: commaSeparated,
acceptCharset: spaceSeparated,
accessKey: spaceSeparated,
action: null,
allow: null,
allowFullScreen: boolean,
allowPaymentRequest: boolean,
allowUserMedia: boolean,
alt: null,
as: null,
async: boolean,
autoCapitalize: null,
autoComplete: spaceSeparated,
autoFocus: boolean,
autoPlay: boolean,
capture: boolean,
charSet: null,
checked: boolean,
cite: null,
className: spaceSeparated,
cols: number,
colSpan: null,
content: null,
contentEditable: booleanish,
controls: boolean,
controlsList: spaceSeparated,
coords: number | commaSeparated,
crossOrigin: null,
data: null,
dateTime: null,
decoding: null,
default: boolean,
defer: boolean,
dir: null,
dirName: null,
disabled: boolean,
download: overloadedBoolean,
draggable: booleanish,
encType: null,
enterKeyHint: null,
form: null,
formAction: null,
formEncType: null,
formMethod: null,
formNoValidate: boolean,
formTarget: null,
headers: spaceSeparated,
height: number,
hidden: boolean,
high: number,
href: null,
hrefLang: null,
htmlFor: spaceSeparated,
httpEquiv: spaceSeparated,
id: null,
imageSizes: null,
imageSrcSet: commaSeparated,
inputMode: null,
integrity: null,
is: null,
isMap: boolean,
itemId: null,
itemProp: spaceSeparated,
itemRef: spaceSeparated,
itemScope: boolean,
itemType: spaceSeparated,
kind: null,
label: null,
lang: null,
language: null,
list: null,
loading: null,
loop: boolean,
low: number,
manifest: null,
max: null,
maxLength: number,
media: null,
method: null,
min: null,
minLength: number,
multiple: boolean,
muted: boolean,
name: null,
nonce: null,
noModule: boolean,
noValidate: boolean,
onAbort: null,
onAfterPrint: null,
onAuxClick: null,
onBeforePrint: null,
onBeforeUnload: null,
onBlur: null,
onCancel: null,
onCanPlay: null,
onCanPlayThrough: null,
onChange: null,
onClick: null,
onClose: null,
onContextMenu: null,
onCopy: null,
onCueChange: null,
onCut: null,
onDblClick: null,
onDrag: null,
onDragEnd: null,
onDragEnter: null,
onDragExit: null,
onDragLeave: null,
onDragOver: null,
onDragStart: null,
onDrop: null,
onDurationChange: null,
onEmptied: null,
onEnded: null,
onError: null,
onFocus: null,
onFormData: null,
onHashChange: null,
onInput: null,
onInvalid: null,
onKeyDown: null,
onKeyPress: null,
onKeyUp: null,
onLanguageChange: null,
onLoad: null,
onLoadedData: null,
onLoadedMetadata: null,
onLoadEnd: null,
onLoadStart: null,
onMessage: null,
onMessageError: null,
onMouseDown: null,
onMouseEnter: null,
onMouseLeave: null,
onMouseMove: null,
onMouseOut: null,
onMouseOver: null,
onMouseUp: null,
onOffline: null,
onOnline: null,
onPageHide: null,
onPageShow: null,
onPaste: null,
onPause: null,
onPlay: null,
onPlaying: null,
onPopState: null,
onProgress: null,
onRateChange: null,
onRejectionHandled: null,
onReset: null,
onResize: null,
onScroll: null,
onSecurityPolicyViolation: null,
onSeeked: null,
onSeeking: null,
onSelect: null,
onSlotChange: null,
onStalled: null,
onStorage: null,
onSubmit: null,
onSuspend: null,
onTimeUpdate: null,
onToggle: null,
onUnhandledRejection: null,
onUnload: null,
onVolumeChange: null,
onWaiting: null,
onWheel: null,
open: boolean,
optimum: number,
pattern: null,
ping: spaceSeparated,
placeholder: null,
playsInline: boolean,
poster: null,
preload: null,
readOnly: boolean,
referrerPolicy: null,
rel: spaceSeparated,
required: boolean,
reversed: boolean,
rows: number,
rowSpan: number,
sandbox: spaceSeparated,
scope: null,
scoped: boolean,
seamless: boolean,
selected: boolean,
shape: null,
size: number,
sizes: null,
slot: null,
span: number,
spellCheck: booleanish,
src: null,
srcDoc: null,
srcLang: null,
srcSet: commaSeparated,
start: number,
step: null,
style: null,
tabIndex: number,
target: null,
title: null,
translate: null,
type: null,
typeMustMatch: boolean,
useMap: null,
value: booleanish,
width: number,
wrap: null,
align: null,
aLink: null,
archive: spaceSeparated,
axis: null,
background: null,
bgColor: null,
border: number,
borderColor: null,
bottomMargin: number,
cellPadding: null,
cellSpacing: null,
char: null,
charOff: null,
classId: null,
clear: null,
code: null,
codeBase: null,
codeType: null,
color: null,
compact: boolean,
declare: boolean,
event: null,
face: null,
frame: null,
frameBorder: null,
hSpace: number,
leftMargin: number,
link: null,
longDesc: null,
lowSrc: null,
marginHeight: number,
marginWidth: number,
noResize: boolean,
noHref: boolean,
noShade: boolean,
noWrap: boolean,
object: null,
profile: null,
prompt: null,
rev: null,
rightMargin: number,
rules: null,
scheme: null,
scrolling: booleanish,
standby: null,
summary: null,
text: null,
topMargin: number,
valueType: null,
version: null,
vAlign: null,
vLink: null,
vSpace: number,
allowTransparency: null,
autoCorrect: null,
autoSave: null,
disablePictureInPicture: boolean,
disableRemotePlayback: boolean,
prefix: null,
property: null,
results: number,
security: null,
unselectable: null
}
});
});
// node_modules/property-information/html.js
var require_html2 = __commonJS((exports2, module2) => {
"use strict";
var merge2 = require_merge();
var xlink = require_xlink();
var xml = require_xml();
var xmlns = require_xmlns();
var aria = require_aria();
var html = require_html();
module2.exports = merge2([xml, xlink, xmlns, aria, html]);
});
// node_modules/property-information/lib/svg.js
var require_svg = __commonJS((exports2, module2) => {
"use strict";
var types = require_types();
var create = require_create();
var caseSensitiveTransform = require_case_sensitive_transform();
var boolean = types.boolean;
var number = types.number;
var spaceSeparated = types.spaceSeparated;
var commaSeparated = types.commaSeparated;
var commaOrSpaceSeparated = types.commaOrSpaceSeparated;
module2.exports = create({
space: "svg",
attributes: {
accentHeight: "accent-height",
alignmentBaseline: "alignment-baseline",
arabicForm: "arabic-form",
baselineShift: "baseline-shift",
capHeight: "cap-height",
className: "class",
clipPath: "clip-path",
clipRule: "clip-rule",
colorInterpolation: "color-interpolation",
colorInterpolationFilters: "color-interpolation-filters",
colorProfile: "color-profile",
colorRendering: "color-rendering",
crossOrigin: "crossorigin",
dataType: "datatype",
dominantBaseline: "dominant-baseline",
enableBackground: "enable-background",
fillOpacity: "fill-opacity",
fillRule: "fill-rule",
floodColor: "flood-color",
floodOpacity: "flood-opacity",
fontFamily: "font-family",
fontSize: "font-size",
fontSizeAdjust: "font-size-adjust",
fontStretch: "font-stretch",
fontStyle: "font-style",
fontVariant: "font-variant",
fontWeight: "font-weight",
glyphName: "glyph-name",
glyphOrientationHorizontal: "glyph-orientation-horizontal",
glyphOrientationVertical: "glyph-orientation-vertical",
hrefLang: "hreflang",
horizAdvX: "horiz-adv-x",
horizOriginX: "horiz-origin-x",
horizOriginY: "horiz-origin-y",
imageRendering: "image-rendering",
letterSpacing: "letter-spacing",
lightingColor: "lighting-color",
markerEnd: "marker-end",
markerMid: "marker-mid",
markerStart: "marker-start",
navDown: "nav-down",
navDownLeft: "nav-down-left",
navDownRight: "nav-down-right",
navLeft: "nav-left",
navNext: "nav-next",
navPrev: "nav-prev",
navRight: "nav-right",
navUp: "nav-up",
navUpLeft: "nav-up-left",
navUpRight: "nav-up-right",
onAbort: "onabort",
onActivate: "onactivate",
onAfterPrint: "onafterprint",
onBeforePrint: "onbeforeprint",
onBegin: "onbegin",
onCancel: "oncancel",
onCanPlay: "oncanplay",
onCanPlayThrough: "oncanplaythrough",
onChange: "onchange",
onClick: "onclick",
onClose: "onclose",
onCopy: "oncopy",
onCueChange: "oncuechange",
onCut: "oncut",
onDblClick: "ondblclick",
onDrag: "ondrag",
onDragEnd: "ondragend",
onDragEnter: "ondragenter",
onDragExit: "ondragexit",
onDragLeave: "ondragleave",
onDragOver: "ondragover",
onDragStart: "ondragstart",
onDrop: "ondrop",
onDurationChange: "ondurationchange",
onEmptied: "onemptied",
onEnd: "onend",
onEnded: "onended",
onError: "onerror",
onFocus: "onfocus",
onFocusIn: "onfocusin",
onFocusOut: "onfocusout",
onHashChange: "onhashchange",
onInput: "oninput",
onInvalid: "oninvalid",
onKeyDown: "onkeydown",
onKeyPress: "onkeypress",
onKeyUp: "onkeyup",
onLoad: "onload",
onLoadedData: "onloadeddata",
onLoadedMetadata: "onloadedmetadata",
onLoadStart: "onloadstart",
onMessage: "onmessage",
onMouseDown: "onmousedown",
onMouseEnter: "onmouseenter",
onMouseLeave: "onmouseleave",
onMouseMove: "onmousemove",
onMouseOut: "onmouseout",
onMouseOver: "onmouseover",
onMouseUp: "onmouseup",
onMouseWheel: "onmousewheel",
onOffline: "onoffline",
onOnline: "ononline",
onPageHide: "onpagehide",
onPageShow: "onpageshow",
onPaste: "onpaste",
onPause: "onpause",
onPlay: "onplay",
onPlaying: "onplaying",
onPopState: "onpopstate",
onProgress: "onprogress",
onRateChange: "onratechange",
onRepeat: "onrepeat",
onReset: "onreset",
onResize: "onresize",
onScroll: "onscroll",
onSeeked: "onseeked",
onSeeking: "onseeking",
onSelect: "onselect",
onShow: "onshow",
onStalled: "onstalled",
onStorage: "onstorage",
onSubmit: "onsubmit",
onSuspend: "onsuspend",
onTimeUpdate: "ontimeupdate",
onToggle: "ontoggle",
onUnload: "onunload",
onVolumeChange: "onvolumechange",
onWaiting: "onwaiting",
onZoom: "onzoom",
overlinePosition: "overline-position",
overlineThickness: "overline-thickness",
paintOrder: "paint-order",
panose1: "panose-1",
pointerEvents: "pointer-events",
referrerPolicy: "referrerpolicy",
renderingIntent: "rendering-intent",
shapeRendering: "shape-rendering",
stopColor: "stop-color",
stopOpacity: "stop-opacity",
strikethroughPosition: "strikethrough-position",
strikethroughThickness: "strikethrough-thickness",
strokeDashArray: "stroke-dasharray",
strokeDashOffset: "stroke-dashoffset",
strokeLineCap: "stroke-linecap",
strokeLineJoin: "stroke-linejoin",
strokeMiterLimit: "stroke-miterlimit",
strokeOpacity: "stroke-opacity",
strokeWidth: "stroke-width",
tabIndex: "tabindex",
textAnchor: "text-anchor",
textDecoration: "text-decoration",
textRendering: "text-rendering",
typeOf: "typeof",
underlinePosition: "underline-position",
underlineThickness: "underline-thickness",
unicodeBidi: "unicode-bidi",
unicodeRange: "unicode-range",
unitsPerEm: "units-per-em",
vAlphabetic: "v-alphabetic",
vHanging: "v-hanging",
vIdeographic: "v-ideographic",
vMathematical: "v-mathematical",
vectorEffect: "vector-effect",
vertAdvY: "vert-adv-y",
vertOriginX: "vert-origin-x",
vertOriginY: "vert-origin-y",
wordSpacing: "word-spacing",
writingMode: "writing-mode",
xHeight: "x-height",
playbackOrder: "playbackorder",
timelineBegin: "timelinebegin"
},
transform: caseSensitiveTransform,
properties: {
about: commaOrSpaceSeparated,
accentHeight: number,
accumulate: null,
additive: null,
alignmentBaseline: null,
alphabetic: number,
amplitude: number,
arabicForm: null,
ascent: number,
attributeName: null,
attributeType: null,
azimuth: number,
bandwidth: null,
baselineShift: null,
baseFrequency: null,
baseProfile: null,
bbox: null,
begin: null,
bias: number,
by: null,
calcMode: null,
capHeight: number,
className: spaceSeparated,
clip: null,
clipPath: null,
clipPathUnits: null,
clipRule: null,
color: null,
colorInterpolation: null,
colorInterpolationFilters: null,
colorProfile: null,
colorRendering: null,
content: null,
contentScriptType: null,
contentStyleType: null,
crossOrigin: null,
cursor: null,
cx: null,
cy: null,
d: null,
dataType: null,
defaultAction: null,
descent: number,
diffuseConstant: number,
direction: null,
display: null,
dur: null,
divisor: number,
dominantBaseline: null,
download: boolean,
dx: null,
dy: null,
edgeMode: null,
editable: null,
elevation: number,
enableBackground: null,
end: null,
event: null,
exponent: number,
externalResourcesRequired: null,
fill: null,
fillOpacity: number,
fillRule: null,
filter: null,
filterRes: null,
filterUnits: null,
floodColor: null,
floodOpacity: null,
focusable: null,
focusHighlight: null,
fontFamily: null,
fontSize: null,
fontSizeAdjust: null,
fontStretch: null,
fontStyle: null,
fontVariant: null,
fontWeight: null,
format: null,
fr: null,
from: null,
fx: null,
fy: null,
g1: commaSeparated,
g2: commaSeparated,
glyphName: commaSeparated,
glyphOrientationHorizontal: null,
glyphOrientationVertical: null,
glyphRef: null,
gradientTransform: null,
gradientUnits: null,
handler: null,
hanging: number,
hatchContentUnits: null,
hatchUnits: null,
height: null,
href: null,
hrefLang: null,
horizAdvX: number,
horizOriginX: number,
horizOriginY: number,
id: null,
ideographic: number,
imageRendering: null,
initialVisibility: null,
in: null,
in2: null,
intercept: number,
k: number,
k1: number,
k2: number,
k3: number,
k4: number,
kernelMatrix: commaOrSpaceSeparated,
kernelUnitLength: null,
keyPoints: null,
keySplines: null,
keyTimes: null,
kerning: null,
lang: null,
lengthAdjust: null,
letterSpacing: null,
lightingColor: null,
limitingConeAngle: number,
local: null,
markerEnd: null,
markerMid: null,
markerStart: null,
markerHeight: null,
markerUnits: null,
markerWidth: null,
mask: null,
maskContentUnits: null,
maskUnits: null,
mathematical: null,
max: null,
media: null,
mediaCharacterEncoding: null,
mediaContentEncodings: null,
mediaSize: number,
mediaTime: null,
method: null,
min: null,
mode: null,
name: null,
navDown: null,
navDownLeft: null,
navDownRight: null,
navLeft: null,
navNext: null,
navPrev: null,
navRight: null,
navUp: null,
navUpLeft: null,
navUpRight: null,
numOctaves: null,
observer: null,
offset: null,
onAbort: null,
onActivate: null,
onAfterPrint: null,
onBeforePrint: null,
onBegin: null,
onCancel: null,
onCanPlay: null,
onCanPlayThrough: null,
onChange: null,
onClick: null,
onClose: null,
onCopy: null,
onCueChange: null,
onCut: null,
onDblClick: null,
onDrag: null,
onDragEnd: null,
onDragEnter: null,
onDragExit: null,
onDragLeave: null,
onDragOver: null,
onDragStart: null,
onDrop: null,
onDurationChange: null,
onEmptied: null,
onEnd: null,
onEnded: null,
onError: null,
onFocus: null,
onFocusIn: null,
onFocusOut: null,
onHashChange: null,
onInput: null,
onInvalid: null,
onKeyDown: null,
onKeyPress: null,
onKeyUp: null,
onLoad: null,
onLoadedData: null,
onLoadedMetadata: null,
onLoadStart: null,
onMessage: null,
onMouseDown: null,
onMouseEnter: null,
onMouseLeave: null,
onMouseMove: null,
onMouseOut: null,
onMouseOver: null,
onMouseUp: null,
onMouseWheel: null,
onOffline: null,
onOnline: null,
onPageHide: null,
onPageShow: null,
onPaste: null,
onPause: null,
onPlay: null,
onPlaying: null,
onPopState: null,
onProgress: null,
onRateChange: null,
onRepeat: null,
onReset: null,
onResize: null,
onScroll: null,
onSeeked: null,
onSeeking: null,
onSelect: null,
onShow: null,
onStalled: null,
onStorage: null,
onSubmit: null,
onSuspend: null,
onTimeUpdate: null,
onToggle: null,
onUnload: null,
onVolumeChange: null,
onWaiting: null,
onZoom: null,
opacity: null,
operator: null,
order: null,
orient: null,
orientation: null,
origin: null,
overflow: null,
overlay: null,
overlinePosition: number,
overlineThickness: number,
paintOrder: null,
panose1: null,
path: null,
pathLength: number,
patternContentUnits: null,
patternTransform: null,
patternUnits: null,
phase: null,
ping: spaceSeparated,
pitch: null,
playbackOrder: null,
pointerEvents: null,
points: null,
pointsAtX: number,
pointsAtY: number,
pointsAtZ: number,
preserveAlpha: null,
preserveAspectRatio: null,
primitiveUnits: null,
propagate: null,
property: commaOrSpaceSeparated,
r: null,
radius: null,
referrerPolicy: null,
refX: null,
refY: null,
rel: commaOrSpaceSeparated,
rev: commaOrSpaceSeparated,
renderingIntent: null,
repeatCount: null,
repeatDur: null,
requiredExtensions: commaOrSpaceSeparated,
requiredFeatures: commaOrSpaceSeparated,
requiredFonts: commaOrSpaceSeparated,
requiredFormats: commaOrSpaceSeparated,
resource: null,
restart: null,
result: null,
rotate: null,
rx: null,
ry: null,
scale: null,
seed: null,
shapeRendering: null,
side: null,
slope: null,
snapshotTime: null,
specularConstant: number,
specularExponent: number,
spreadMethod: null,
spacing: null,
startOffset: null,
stdDeviation: null,
stemh: null,
stemv: null,
stitchTiles: null,
stopColor: null,
stopOpacity: null,
strikethroughPosition: number,
strikethroughThickness: number,
string: null,
stroke: null,
strokeDashArray: commaOrSpaceSeparated,
strokeDashOffset: null,
strokeLineCap: null,
strokeLineJoin: null,
strokeMiterLimit: number,
strokeOpacity: number,
strokeWidth: null,
style: null,
surfaceScale: number,
syncBehavior: null,
syncBehaviorDefault: null,
syncMaster: null,
syncTolerance: null,
syncToleranceDefault: null,
systemLanguage: commaOrSpaceSeparated,
tabIndex: number,
tableValues: null,
target: null,
targetX: number,
targetY: number,
textAnchor: null,
textDecoration: null,
textRendering: null,
textLength: null,
timelineBegin: null,
title: null,
transformBehavior: null,
type: null,
typeOf: commaOrSpaceSeparated,
to: null,
transform: null,
u1: null,
u2: null,
underlinePosition: number,
underlineThickness: number,
unicode: null,
unicodeBidi: null,
unicodeRange: null,
unitsPerEm: number,
values: null,
vAlphabetic: number,
vMathematical: number,
vectorEffect: null,
vHanging: number,
vIdeographic: number,
version: null,
vertAdvY: number,
vertOriginX: number,
vertOriginY: number,
viewBox: null,
viewTarget: null,
visibility: null,
width: null,
widths: null,
wordSpacing: null,
writingMode: null,
x: null,
x1: null,
x2: null,
xChannelSelector: null,
xHeight: number,
y: null,
y1: null,
y2: null,
yChannelSelector: null,
z: null,
zoomAndPan: null
}
});
});
// node_modules/property-information/svg.js
var require_svg2 = __commonJS((exports2, module2) => {
"use strict";
var merge2 = require_merge();
var xlink = require_xlink();
var xml = require_xml();
var xmlns = require_xmlns();
var aria = require_aria();
var svg = require_svg();
module2.exports = merge2([xml, xlink, xmlns, aria, svg]);
});
// node_modules/comma-separated-tokens/index.js
var require_comma_separated_tokens = __commonJS((exports2) => {
"use strict";
exports2.parse = parse;
exports2.stringify = stringify;
var comma = ",";
var space = " ";
var empty = "";
function parse(value) {
var values = [];
var input = String(value || empty);
var index = input.indexOf(comma);
var lastIndex = 0;
var end = false;
var val;
while (!end) {
if (index === -1) {
index = input.length;
end = true;
}
val = input.slice(lastIndex, index).trim();
if (val || !end) {
values.push(val);
}
lastIndex = index + 1;
index = input.indexOf(comma, lastIndex);
}
return values;
}
function stringify(values, options) {
var settings = options || {};
var left = settings.padLeft === false ? empty : space;
var right = settings.padRight ? space : empty;
if (values[values.length - 1] === empty) {
values = values.concat(empty);
}
return values.join(right + comma + left).trim();
}
});
// node_modules/bcp-47-match/index.js
var require_bcp_47_match = __commonJS((exports2) => {
"use strict";
exports2.basicFilter = factory(basic, true);
exports2.extendedFilter = factory(extended, true);
exports2.lookup = factory(lookup);
function basic(tag, range) {
return range === "*" || tag === range || tag.indexOf(range + "-") > -1;
}
function extended(tag, range) {
var left = tag.split("-");
var right = range.split("-");
var leftIndex = 0;
var rightIndex = 0;
if (right[rightIndex] !== "*" && left[leftIndex] !== right[rightIndex]) {
return false;
}
leftIndex++;
rightIndex++;
while (rightIndex < right.length) {
if (right[rightIndex] === "*") {
rightIndex++;
continue;
}
if (!left[leftIndex])
return false;
if (left[leftIndex] === right[rightIndex]) {
leftIndex++;
rightIndex++;
continue;
}
if (left[leftIndex].length === 1)
return false;
leftIndex++;
}
return true;
}
function lookup(tag, range) {
var right = range;
var index;
while (true) {
if (right === "*" || tag === right)
return true;
index = right.lastIndexOf("-");
if (index < 0)
return false;
if (right.charAt(index - 2) === "-")
index -= 2;
right = right.slice(0, index);
}
}
function factory(check, filter) {
return match;
function match(tags, ranges) {
var left = cast(tags, "tag");
var right = cast(ranges == null ? "*" : ranges, "range");
var matches = [];
var rightIndex = -1;
var range;
var leftIndex;
var next;
while (++rightIndex < right.length) {
range = right[rightIndex].toLowerCase();
if (!filter && range === "*")
continue;
leftIndex = -1;
next = [];
while (++leftIndex < left.length) {
if (check(left[leftIndex].toLowerCase(), range)) {
if (!filter)
return left[leftIndex];
matches.push(left[leftIndex]);
} else {
next.push(left[leftIndex]);
}
}
left = next;
}
return filter ? matches : void 0;
}
}
function cast(values, name) {
var value = values && typeof values === "string" ? [values] : values;
if (!value || typeof value !== "object" || !("length" in value)) {
throw new Error("Invalid " + name + " `" + value + "`, expected non-empty string");
}
return value;
}
});
// node_modules/not/index.js
var require_not = __commonJS((exports2, module2) => {
module2.exports = not;
function not(f) {
return negation;
function negation() {
return !f.apply(this, arguments);
}
}
});
// node_modules/hast-util-is-element/convert.js
var require_convert = __commonJS((exports2, module2) => {
"use strict";
module2.exports = convert;
function convert(test) {
if (typeof test === "string") {
return tagNameFactory(test);
}
if (test === null || test === void 0) {
return element;
}
if (typeof test === "object") {
return any(test);
}
if (typeof test === "function") {
return callFactory(test);
}
throw new Error("Expected function, string, or array as test");
}
function convertAll(tests) {
var length = tests.length;
var index = -1;
var results = [];
while (++index < length) {
results[index] = convert(tests[index]);
}
return results;
}
function any(tests) {
var checks = convertAll(tests);
var length = checks.length;
return matches;
function matches() {
var index = -1;
while (++index < length) {
if (checks[index].apply(this, arguments)) {
return true;
}
}
return false;
}
}
function tagNameFactory(test) {
return tagName;
function tagName(node) {
return element(node) && node.tagName === test;
}
}
function callFactory(test) {
return call;
function call(node) {
return element(node) && Boolean(test.apply(this, arguments));
}
}
function element(node) {
return node && typeof node === "object" && node.type === "element" && typeof node.tagName === "string";
}
});
// node_modules/hast-util-is-element/index.js
var require_hast_util_is_element = __commonJS((exports2, module2) => {
"use strict";
var convert = require_convert();
module2.exports = isElement;
isElement.convert = convert;
function isElement(node, test, index, parent, context) {
var hasParent = parent !== null && parent !== void 0;
var hasIndex = index !== null && index !== void 0;
var check = convert(test);
if (hasIndex && (typeof index !== "number" || index < 0 || index === Infinity)) {
throw new Error("Expected positive finite index for child node");
}
if (hasParent && (!parent.type || !parent.children)) {
throw new Error("Expected parent node");
}
if (!node || !node.type || typeof node.type !== "string") {
return false;
}
if (hasParent !== hasIndex) {
throw new Error("Expected both parent and index");
}
return check.call(context, node, index, parent);
}
});
// node_modules/hast-util-has-property/index.js
var require_hast_util_has_property = __commonJS((exports2, module2) => {
"use strict";
var own = {}.hasOwnProperty;
module2.exports = hasProperty;
function hasProperty(node, name) {
var props;
var value;
if (!node || !name || typeof node !== "object" || node.type !== "element") {
return false;
}
props = node.properties;
value = props && own.call(props, name) && props[name];
return value !== null && value !== void 0 && value !== false;
}
});
// node_modules/hast-util-whitespace/index.js
var require_hast_util_whitespace = __commonJS((exports2, module2) => {
"use strict";
module2.exports = interElementWhiteSpace;
var re = /[ \t\n\f\r]/g;
function interElementWhiteSpace(node) {
var value;
if (node && typeof node === "object" && node.type === "text") {
value = node.value || "";
} else if (typeof node === "string") {
value = node;
} else {
return false;
}
return value.replace(re, "") === "";
}
});
// node_modules/hast-util-select/lib/pseudo.js
var require_pseudo = __commonJS((exports2, module2) => {
"use strict";
module2.exports = match;
var commaSeparated = require_comma_separated_tokens().parse;
var filter = require_bcp_47_match().extendedFilter;
var zwitch = require_zwitch();
var not = require_not();
var is = require_hast_util_is_element();
var has = require_hast_util_has_property();
var whitespace = require_hast_util_whitespace();
match.needsIndex = [
"first-child",
"first-of-type",
"last-child",
"last-of-type",
"nth-child",
"nth-last-child",
"nth-of-type",
"nth-last-of-type",
"only-child",
"only-of-type"
];
var anything = require_any();
var handle = zwitch("name");
var handlers = handle.handlers;
var roots = {html: "html", svg: "svg"};
var disableable = [
"button",
"input",
"select",
"textarea",
"optgroup",
"option",
"menuitem",
"fieldset"
];
var linkable = ["a", "area", "link"];
var requirable = ["input", "textarea", "select"];
handle.unknown = unknownPseudo;
handle.invalid = invalidPseudo;
handlers.any = matches;
handlers["any-link"] = anyLink;
handlers.blank = blank;
handlers.checked = checked;
handlers.dir = dir;
handlers.disabled = disabled;
handlers.empty = empty;
handlers.enabled = not(disabled);
handlers["first-child"] = firstChild;
handlers["first-of-type"] = firstOfType;
handlers.has = hasSelector;
handlers.lang = lang;
handlers["last-child"] = lastChild;
handlers["last-of-type"] = lastOfType;
handlers.matches = matches;
handlers.not = not(matches);
handlers["nth-child"] = nthChild;
handlers["nth-last-child"] = nthLastChild;
handlers["nth-of-type"] = nthOfType;
handlers["nth-last-of-type"] = nthLastOfType;
handlers["only-child"] = onlyChild;
handlers["only-of-type"] = onlyOfType;
handlers.optional = not(required);
handlers["read-only"] = not(readWrite);
handlers["read-write"] = readWrite;
handlers.required = required;
handlers.root = root;
handlers.scope = scope;
function match(query, node, index, parent, state) {
var pseudos = query.pseudos;
var length = pseudos.length;
var offset = -1;
while (++offset < length) {
if (!handle(pseudos[offset], node, index, parent, state)) {
return false;
}
}
return true;
}
function matches(query, node, index, parent, state) {
var shallow = state.shallow;
var one = state.one;
var result;
state.shallow = true;
state.one = true;
result = anything(query.value, node, state)[0] === node;
state.shallow = shallow;
state.one = one;
return result;
}
function anyLink(query, node) {
return is(node, linkable) && has(node, "href");
}
function checked(query, node) {
var type = node.properties.type;
if (is(node, ["input", "menuitem"]) && (type === "checkbox" || type === "radio")) {
return has(node, "checked");
}
if (is(node, "option")) {
return has(node, "selected");
}
return false;
}
function dir(query, node, index, parent, state) {
return state.direction === query.value;
}
function disabled(query, node) {
return is(node, disableable) && has(node, "disabled");
}
function required(query, node) {
return is(node, requirable) && has(node, "required");
}
function readWrite(query, node, index, parent, state) {
var inputOrArea = is(node, ["input", "textarea"]);
return inputOrArea && !has(node, "readOnly") && !has(node, "disabled") || !inputOrArea && state.editableOrEditingHost;
}
function root(query, node, index, parent, state) {
var space = state.schema.space;
return (!parent || parent.type === "root") && space in roots && is(node, roots[space]);
}
function scope(query, node, index, parent, state) {
return is(node) && state.scopeElements.indexOf(node) !== -1;
}
function empty(query, node) {
return !someChildren(node, check);
function check(child) {
return child.type === "element" || child.type === "text";
}
}
function blank(query, node) {
return !someChildren(node, check);
function check(child) {
return child.type === "element" || child.type === "text" && !whitespace(child);
}
}
function firstChild(query, node, index, parent, state) {
assertDeep(state, query);
return state.elementIndex === 0;
}
function lang(query, node, index, parent, state) {
return state.language !== "" && state.language !== void 0 && filter(state.language, commaSeparated(query.value)).length !== 0;
}
function lastChild(query, node, index, parent, state) {
assertDeep(state, query);
return state.elementIndex === state.elementCount - 1;
}
function onlyChild(query, node, index, parent, state) {
assertDeep(state, query);
return state.elementCount === 1;
}
function nthChild(query, node, index, parent, state) {
assertDeep(state, query);
return query.value(state.elementIndex);
}
function nthLastChild(query, node, index, parent, state) {
assertDeep(state, query);
return query.value(state.elementCount - state.elementIndex - 1);
}
function nthOfType(query, node, index, parent, state) {
assertDeep(state, query);
return query.value(state.typeIndex);
}
function nthLastOfType(query, node, index, parent, state) {
assertDeep(state, query);
return query.value(state.typeCount - 1 - state.typeIndex);
}
function firstOfType(query, node, index, parent, state) {
assertDeep(state, query);
return state.typeIndex === 0;
}
function lastOfType(query, node, index, parent, state) {
assertDeep(state, query);
return state.typeIndex === state.typeCount - 1;
}
function onlyOfType(query, node, index, parent, state) {
assertDeep(state, query);
return state.typeCount === 1;
}
function someChildren(node, check) {
var children = node && node.children;
var length = children && children.length;
var index = -1;
while (++index < length) {
if (check(children[index])) {
return true;
}
}
return false;
}
function invalidPseudo() {
throw new Error("Invalid pseudo-selector");
}
function unknownPseudo(query) {
if (query.name) {
throw new Error("Unknown pseudo-selector `" + query.name + "`");
}
throw new Error("Unexpected pseudo-element or empty pseudo-class");
}
function assertDeep(state, query) {
if (state.shallow) {
throw new Error("Cannot use `:" + query.name + "` without parent");
}
}
function hasSelector(query, node, index, parent, state) {
var shallow = state.shallow;
var one = state.one;
var scopeElements = state.scopeElements;
var value = appendScope(query.value);
var result;
state.shallow = false;
state.one = true;
state.scopeElements = [node];
result = anything(value, node, state)[0];
state.shallow = shallow;
state.one = one;
state.scopeElements = scopeElements;
return result;
}
function appendScope(selector) {
var selectors;
var length;
var index;
var rule;
if (selector.type === "ruleSet") {
selector = {type: "selectors", selectors: [selector]};
}
selectors = selector.selectors;
length = selectors.length;
index = -1;
while (++index < length) {
rule = selectors[index].rule;
rule.nestingOperator = null;
if (!rule.pseudos || rule.pseudos.length !== 1 || rule.pseudos[0].name !== "scope") {
rule = {type: "rule", rule, pseudos: [{name: "scope"}]};
}
selectors[index] = rule;
}
return selector;
}
});
// node_modules/hast-util-select/lib/name.js
var require_name = __commonJS((exports2, module2) => {
"use strict";
module2.exports = match;
function match(query, node) {
return query.tagName === "*" || query.tagName === node.tagName;
}
});
// node_modules/property-information/find.js
var require_find = __commonJS((exports2, module2) => {
"use strict";
var normalize = require_normalize();
var DefinedInfo = require_defined_info();
var Info = require_info();
var data = "data