diff --git a/dist/components/index.js b/dist/components/index.js index 1dab4fb..9d46d2e 100644 --- a/dist/components/index.js +++ b/dist/components/index.js @@ -1,7 +1,2124 @@ -import { htmlToJsx } from '@quartz-community/utils/jsx'; -import { jsx } from 'preact/jsx-runtime'; +import { jsx, jsxs, Fragment } from 'preact/jsx-runtime'; +import { h } from 'preact'; -// src/components/ContentBody.tsx +var __create = Object.create; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __getProtoOf = Object.getPrototypeOf; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __commonJS = (cb, mod) => function __require() { + return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports; +}; +var __export = (target, all) => { + for (var name2 in all) + __defProp(target, name2, { get: all[name2], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( + // If the importer is in node compatibility mode or this is not an ESM + // file that has been converted to a CommonJS file using a Babel- + // compatible transform (i.e. "__esModule" has not been set), then set + // "default" to the CommonJS "module.exports" for node compatibility. + __defProp(target, "default", { value: mod, enumerable: true }) , + mod +)); + +// node_modules/inline-style-parser/cjs/index.js +var require_cjs = __commonJS({ + "node_modules/inline-style-parser/cjs/index.js"(exports$1, module) { + var COMMENT_REGEX = /\/\*[^*]*\*+([^/*][^*]*\*+)*\//g; + var NEWLINE_REGEX = /\n/g; + var WHITESPACE_REGEX = /^\s*/; + var PROPERTY_REGEX = /^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/; + var COLON_REGEX = /^:\s*/; + var VALUE_REGEX = /^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/; + var SEMICOLON_REGEX = /^[;\s]*/; + var TRIM_REGEX = /^\s+|\s+$/g; + var NEWLINE = "\n"; + var FORWARD_SLASH = "/"; + var ASTERISK = "*"; + var EMPTY_STRING = ""; + var TYPE_COMMENT = "comment"; + var TYPE_DECLARATION = "declaration"; + function index2(style, options) { + if (typeof style !== "string") { + throw new TypeError("First argument must be a string"); + } + if (!style) return []; + options = options || {}; + var lineno = 1; + var column = 1; + function updatePosition(str) { + var lines = str.match(NEWLINE_REGEX); + if (lines) lineno += lines.length; + var i = str.lastIndexOf(NEWLINE); + column = ~i ? str.length - i : column + str.length; + } + function position3() { + var start2 = { line: lineno, column }; + return function(node) { + node.position = new Position(start2); + whitespace2(); + return node; + }; + } + function Position(start2) { + this.start = start2; + this.end = { line: lineno, column }; + this.source = options.source; + } + Position.prototype.content = style; + function error(msg) { + var err = new Error( + options.source + ":" + lineno + ":" + column + ": " + msg + ); + err.reason = msg; + err.filename = options.source; + err.line = lineno; + err.column = column; + err.source = style; + if (options.silent) ; + else { + throw err; + } + } + function match(re2) { + var m = re2.exec(style); + if (!m) return; + var str = m[0]; + updatePosition(str); + style = style.slice(str.length); + return m; + } + function whitespace2() { + match(WHITESPACE_REGEX); + } + function comments(rules) { + var c; + rules = rules || []; + while (c = comment()) { + if (c !== false) { + rules.push(c); + } + } + return rules; + } + function comment() { + var pos = position3(); + if (FORWARD_SLASH != style.charAt(0) || ASTERISK != style.charAt(1)) return; + var i = 2; + while (EMPTY_STRING != style.charAt(i) && (ASTERISK != style.charAt(i) || FORWARD_SLASH != style.charAt(i + 1))) { + ++i; + } + i += 2; + if (EMPTY_STRING === style.charAt(i - 1)) { + return error("End of comment missing"); + } + var str = style.slice(2, i - 2); + column += 2; + updatePosition(str); + style = style.slice(i); + column += 2; + return pos({ + type: TYPE_COMMENT, + comment: str + }); + } + function declaration() { + var pos = position3(); + var prop = match(PROPERTY_REGEX); + if (!prop) return; + comment(); + if (!match(COLON_REGEX)) return error("property missing ':'"); + var val = match(VALUE_REGEX); + var ret = pos({ + type: TYPE_DECLARATION, + property: trim(prop[0].replace(COMMENT_REGEX, EMPTY_STRING)), + value: val ? trim(val[0].replace(COMMENT_REGEX, EMPTY_STRING)) : EMPTY_STRING + }); + match(SEMICOLON_REGEX); + return ret; + } + function declarations() { + var decls = []; + comments(decls); + var decl; + while (decl = declaration()) { + if (decl !== false) { + decls.push(decl); + comments(decls); + } + } + return decls; + } + whitespace2(); + return declarations(); + } + function trim(str) { + return str ? str.replace(TRIM_REGEX, EMPTY_STRING) : EMPTY_STRING; + } + module.exports = index2; + } +}); + +// node_modules/style-to-object/cjs/index.js +var require_cjs2 = __commonJS({ + "node_modules/style-to-object/cjs/index.js"(exports$1) { + var __importDefault = exports$1 && exports$1.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + Object.defineProperty(exports$1, "__esModule", { value: true }); + exports$1.default = StyleToObject; + var inline_style_parser_1 = __importDefault(require_cjs()); + function StyleToObject(style, iterator) { + let styleObject = null; + if (!style || typeof style !== "string") { + return styleObject; + } + const declarations = (0, inline_style_parser_1.default)(style); + const hasIterator = typeof iterator === "function"; + declarations.forEach((declaration) => { + if (declaration.type !== "declaration") { + return; + } + const { property, value } = declaration; + if (hasIterator) { + iterator(property, value, declaration); + } else if (value) { + styleObject = styleObject || {}; + styleObject[property] = value; + } + }); + return styleObject; + } + } +}); + +// node_modules/style-to-js/cjs/utilities.js +var require_utilities = __commonJS({ + "node_modules/style-to-js/cjs/utilities.js"(exports$1) { + Object.defineProperty(exports$1, "__esModule", { value: true }); + exports$1.camelCase = void 0; + var CUSTOM_PROPERTY_REGEX = /^--[a-zA-Z0-9_-]+$/; + var HYPHEN_REGEX = /-([a-z])/g; + var NO_HYPHEN_REGEX = /^[^-]+$/; + var VENDOR_PREFIX_REGEX = /^-(webkit|moz|ms|o|khtml)-/; + var MS_VENDOR_PREFIX_REGEX = /^-(ms)-/; + var skipCamelCase = function(property) { + return !property || NO_HYPHEN_REGEX.test(property) || CUSTOM_PROPERTY_REGEX.test(property); + }; + var capitalize = function(match, character) { + return character.toUpperCase(); + }; + var trimHyphen = function(match, prefix) { + return "".concat(prefix, "-"); + }; + var camelCase = function(property, options) { + if (options === void 0) { + options = {}; + } + if (skipCamelCase(property)) { + return property; + } + property = property.toLowerCase(); + if (options.reactCompat) { + property = property.replace(MS_VENDOR_PREFIX_REGEX, trimHyphen); + } else { + property = property.replace(VENDOR_PREFIX_REGEX, trimHyphen); + } + return property.replace(HYPHEN_REGEX, capitalize); + }; + exports$1.camelCase = camelCase; + } +}); + +// node_modules/style-to-js/cjs/index.js +var require_cjs3 = __commonJS({ + "node_modules/style-to-js/cjs/index.js"(exports$1, module) { + var __importDefault = exports$1 && exports$1.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { "default": mod }; + }; + var style_to_object_1 = __importDefault(require_cjs2()); + var utilities_1 = require_utilities(); + function StyleToJS(style, options) { + var output = {}; + if (!style || typeof style !== "string") { + return output; + } + (0, style_to_object_1.default)(style, function(property, value) { + if (property && value) { + output[(0, utilities_1.camelCase)(property, options)] = value; + } + }); + return output; + } + StyleToJS.default = StyleToJS; + module.exports = StyleToJS; + } +}); + +// node_modules/comma-separated-tokens/index.js +function stringify(values, options) { + const settings = {}; + const input = values[values.length - 1] === "" ? [...values, ""] : values; + return input.join( + (settings.padRight ? " " : "") + "," + (settings.padLeft === false ? "" : " ") + ).trim(); +} + +// node_modules/devlop/lib/default.js +function ok() { +} + +// node_modules/estree-util-is-identifier-name/lib/index.js +var nameRe = /^[$_\p{ID_Start}][$_\u{200C}\u{200D}\p{ID_Continue}]*$/u; +var nameReJsx = /^[$_\p{ID_Start}][-$_\u{200C}\u{200D}\p{ID_Continue}]*$/u; +var emptyOptions = {}; +function name(name2, options) { + const settings = emptyOptions; + const re2 = settings.jsx ? nameReJsx : nameRe; + return re2.test(name2); +} + +// node_modules/hast-util-whitespace/lib/index.js +var re = /[ \t\n\f\r]/g; +function whitespace(thing) { + return typeof thing === "object" ? thing.type === "text" ? empty(thing.value) : false : empty(thing); +} +function empty(value) { + return value.replace(re, "") === ""; +} + +// node_modules/property-information/lib/util/schema.js +var Schema = class { + /** + * @param {SchemaType['property']} property + * Property. + * @param {SchemaType['normal']} normal + * Normal. + * @param {Space | undefined} [space] + * Space. + * @returns + * Schema. + */ + constructor(property, normal, space) { + this.normal = normal; + this.property = property; + if (space) { + this.space = space; + } + } +}; +Schema.prototype.normal = {}; +Schema.prototype.property = {}; +Schema.prototype.space = void 0; + +// node_modules/property-information/lib/util/merge.js +function merge(definitions, space) { + const property = {}; + const normal = {}; + for (const definition of definitions) { + Object.assign(property, definition.property); + Object.assign(normal, definition.normal); + } + return new Schema(property, normal, space); +} + +// node_modules/property-information/lib/normalize.js +function normalize(value) { + return value.toLowerCase(); +} + +// node_modules/property-information/lib/util/info.js +var Info = class { + /** + * @param {string} property + * Property. + * @param {string} attribute + * Attribute. + * @returns + * Info. + */ + constructor(property, attribute) { + this.attribute = attribute; + this.property = property; + } +}; +Info.prototype.attribute = ""; +Info.prototype.booleanish = false; +Info.prototype.boolean = false; +Info.prototype.commaOrSpaceSeparated = false; +Info.prototype.commaSeparated = false; +Info.prototype.defined = false; +Info.prototype.mustUseProperty = false; +Info.prototype.number = false; +Info.prototype.overloadedBoolean = false; +Info.prototype.property = ""; +Info.prototype.spaceSeparated = false; +Info.prototype.space = void 0; + +// node_modules/property-information/lib/util/types.js +var types_exports = {}; +__export(types_exports, { + boolean: () => boolean, + booleanish: () => booleanish, + commaOrSpaceSeparated: () => commaOrSpaceSeparated, + commaSeparated: () => commaSeparated, + number: () => number, + overloadedBoolean: () => overloadedBoolean, + spaceSeparated: () => spaceSeparated +}); +var powers = 0; +var boolean = increment(); +var booleanish = increment(); +var overloadedBoolean = increment(); +var number = increment(); +var spaceSeparated = increment(); +var commaSeparated = increment(); +var commaOrSpaceSeparated = increment(); +function increment() { + return 2 ** ++powers; +} + +// node_modules/property-information/lib/util/defined-info.js +var checks = ( + /** @type {ReadonlyArray} */ + Object.keys(types_exports) +); +var DefinedInfo = class extends Info { + /** + * @constructor + * @param {string} property + * Property. + * @param {string} attribute + * Attribute. + * @param {number | null | undefined} [mask] + * Mask. + * @param {Space | undefined} [space] + * Space. + * @returns + * Info. + */ + constructor(property, attribute, mask, space) { + let index2 = -1; + super(property, attribute); + mark(this, "space", space); + if (typeof mask === "number") { + while (++index2 < checks.length) { + const check = checks[index2]; + mark(this, checks[index2], (mask & types_exports[check]) === types_exports[check]); + } + } + } +}; +DefinedInfo.prototype.defined = true; +function mark(values, key, value) { + if (value) { + values[key] = value; + } +} + +// node_modules/property-information/lib/util/create.js +function create(definition) { + const properties = {}; + const normals = {}; + for (const [property, value] of Object.entries(definition.properties)) { + const info = new DefinedInfo( + property, + definition.transform(definition.attributes || {}, property), + value, + definition.space + ); + if (definition.mustUseProperty && definition.mustUseProperty.includes(property)) { + info.mustUseProperty = true; + } + properties[property] = info; + normals[normalize(property)] = property; + normals[normalize(info.attribute)] = property; + } + return new Schema(properties, normals, definition.space); +} + +// node_modules/property-information/lib/aria.js +var aria = create({ + 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 + }, + transform(_, property) { + return property === "role" ? property : "aria-" + property.slice(4).toLowerCase(); + } +}); + +// node_modules/property-information/lib/util/case-sensitive-transform.js +function caseSensitiveTransform(attributes, attribute) { + return attribute in attributes ? attributes[attribute] : attribute; +} + +// node_modules/property-information/lib/util/case-insensitive-transform.js +function caseInsensitiveTransform(attributes, property) { + return caseSensitiveTransform(attributes, property.toLowerCase()); +} + +// node_modules/property-information/lib/html.js +var html = create({ + attributes: { + acceptcharset: "accept-charset", + classname: "class", + htmlfor: "for", + httpequiv: "http-equiv" + }, + mustUseProperty: ["checked", "multiple", "muted", "selected"], + properties: { + // Standard 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, + blocking: spaceSeparated, + capture: null, + 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, + fetchPriority: null, + form: null, + formAction: null, + formEncType: null, + formMethod: null, + formNoValidate: boolean, + formTarget: null, + headers: spaceSeparated, + height: number, + hidden: overloadedBoolean, + high: number, + href: null, + hrefLang: null, + htmlFor: spaceSeparated, + httpEquiv: spaceSeparated, + id: null, + imageSizes: null, + imageSrcSet: null, + inert: boolean, + 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, + onBeforeMatch: null, + onBeforePrint: null, + onBeforeToggle: null, + onBeforeUnload: null, + onBlur: null, + onCancel: null, + onCanPlay: null, + onCanPlayThrough: null, + onChange: null, + onClick: null, + onClose: null, + onContextLost: null, + onContextMenu: null, + onContextRestored: 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, + onScrollEnd: 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, + popover: null, + popoverTarget: null, + popoverTargetAction: null, + 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, + shadowRootClonable: boolean, + shadowRootDelegatesFocus: boolean, + shadowRootMode: null, + shape: null, + size: number, + sizes: null, + slot: null, + span: number, + spellCheck: booleanish, + src: null, + srcDoc: null, + srcLang: null, + srcSet: null, + 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, + writingSuggestions: null, + // Legacy. + // See: https://html.spec.whatwg.org/#other-elements,-attributes-and-apis + align: null, + // Several. Use CSS `text-align` instead, + aLink: null, + // ``. Use CSS `a:active {color}` instead + archive: spaceSeparated, + // ``. List of URIs to archives + axis: null, + // `` and ``. Use `scope` on `` + background: null, + // ``. Use CSS `background-image` instead + bgColor: null, + // `` and table elements. Use CSS `background-color` instead + border: number, + // ``. Use CSS `border-width` instead, + borderColor: null, + // `
`. Use CSS `border-color` instead, + bottomMargin: number, + // `` + cellPadding: null, + // `
` + cellSpacing: null, + // `
` + char: null, + // Several table elements. When `align=char`, sets the character to align on + charOff: null, + // Several table elements. When `char`, offsets the alignment + classId: null, + // `` + clear: null, + // `
`. Use CSS `clear` instead + code: null, + // `` + codeBase: null, + // `` + codeType: null, + // `` + color: null, + // `` and `
`. Use CSS instead + compact: boolean, + // Lists. Use CSS to reduce space between items instead + declare: boolean, + // `` + event: null, + // `