preact-render-to-string 3.7.1 → 3.8.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +1 -292
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +1 -1
- package/dist/index.mjs.map +1 -1
- package/dist/jsx.js +1 -721
- package/dist/jsx.js.map +1 -1
- package/dist/jsx.mjs +2 -0
- package/dist/jsx.mjs.map +1 -0
- package/package.json +46 -26
- package/src/index.js +33 -51
- package/src/jsx.js +1 -1
- package/src/util.js +37 -41
- package/.babelrc +0 -10
- package/.eslintrc +0 -55
- package/.travis.yml +0 -3
- package/rollup.config.js +0 -35
- package/test/index.js +0 -19
- package/test/jsx.js +0 -187
- package/test/pretty.js +0 -68
- package/test/render.js +0 -571
- package/test/shallowRender.js +0 -36
package/dist/jsx.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":null,"sources":["../src/polyfills.js","../src/util.js","../src/index.js","../node_modules/pretty-format/printString.js","../node_modules/pretty-format/index.js","../src/jsx.js"],"sourcesContent":["if (typeof Symbol!=='function') {\n\tlet c = 0;\n\tSymbol = function(s) {\t\t// eslint-disable-line\n\t\treturn `@@${s}${++c}`;\n\t};\n\tSymbol.for = s => `@@${s}`;\n}\n","// DOM properties that should NOT have \"px\" added when numeric\nexport const NON_DIMENSION_PROPS = {\n\tboxFlex:1, boxFlexGroup:1, columnCount:1, fillOpacity:1, flex:1, flexGrow:1,\n\tflexPositive:1, flexShrink:1, flexNegative:1, fontWeight:1, lineClamp:1, lineHeight:1,\n\topacity:1, order:1, orphans:1, strokeOpacity:1, widows:1, zIndex:1, zoom:1\n};\n\nconst ESC = {\n\t'<': '<',\n\t'>': '>',\n\t'\"': '"',\n\t'&': '&'\n};\n\nexport const objectKeys = Object.keys || (obj => {\n\tlet keys = [];\n\tfor (let i in obj) if (obj.hasOwnProperty(i)) keys.push(i);\n\treturn keys;\n});\n\nexport let encodeEntities = s => String(s).replace(/[<>\"&]/g, escapeChar);\n\nlet escapeChar = a => ESC[a] || a;\n\nexport let falsey = v => v==null || v===false;\n\nexport let memoize = (fn, mem={}) => v => mem[v] || (mem[v] = fn(v));\n\nexport let indent = (s, char) => String(s).replace(/(\\n+)/g, '$1' + (char || '\\t'));\n\nexport let isLargeString = (s, length, ignoreLines) => (String(s).length>(length || 40) || (!ignoreLines && String(s).indexOf('\\n')!==-1) || String(s).indexOf('<')!==-1);\n\n// Convert an Object style to a CSSText string\nexport function styleObjToCss(s) {\n\tlet str = '';\n\tfor (let prop in s) {\n\t\tlet val = s[prop];\n\t\tif (val!=null) {\n\t\t\tif (str) str += ' ';\n\t\t\tstr += jsToCss(prop);\n\t\t\tstr += ': ';\n\t\t\tstr += val;\n\t\t\tif (typeof val==='number' && !NON_DIMENSION_PROPS[prop]) {\n\t\t\t\tstr += 'px';\n\t\t\t}\n\t\t\tstr += ';';\n\t\t}\n\t}\n\treturn str || undefined;\n}\n\n\n// See https://github.com/developit/preact/blob/master/src/util.js#L61\nexport function hashToClassName(c) {\n\tlet str = '';\n\tfor (let prop in c) {\n\t\tif (c[prop]) {\n\t\t\tif (str) str += ' ';\n\t\t\tstr += prop;\n\t\t}\n\t}\n\treturn str;\n}\n\n// Convert a JavaScript camel-case CSS property name to a CSS property name\nexport let jsToCss = memoize( s => s.replace(/([A-Z])/g,'-$1').toLowerCase() );\n\nexport function assign(obj, props) {\n\tfor (let i in props) obj[i] = props[i];\n\treturn obj;\n}\n\nexport function getNodeProps(vnode) {\n\tlet defaultProps = vnode.nodeName.defaultProps,\n\t\tprops = assign({}, defaultProps || vnode.attributes);\n\tif (defaultProps) assign(props, vnode.attributes);\n\tif (vnode.children) props.children = vnode.children;\n\treturn props;\n}\n","import { objectKeys, encodeEntities, falsey, memoize, indent, isLargeString, styleObjToCss, hashToClassName, assign, getNodeProps } from './util';\n\nconst SHALLOW = { shallow: true };\n\n// components without names, kept as a hash for later comparison to return consistent UnnamedComponentXX names.\nconst UNNAMED = [];\n\nconst EMPTY = {};\n\nconst VOID_ELEMENTS = [\n\t'area',\n\t'base',\n\t'br',\n\t'col',\n\t'embed',\n\t'hr',\n\t'img',\n\t'input',\n\t'link',\n\t'meta',\n\t'param',\n\t'source',\n\t'track',\n\t'wbr'\n];\n\n\n/** Render Preact JSX + Components to an HTML string.\n *\t@name render\n *\t@function\n *\t@param {VNode} vnode\tJSX VNode to render.\n *\t@param {Object} [context={}]\tOptionally pass an initial context object through the render path.\n *\t@param {Object} [options={}]\tRendering options\n *\t@param {Boolean} [options.shallow=false]\tIf `true`, renders nested Components as HTML elements (`<Foo a=\"b\" />`).\n *\t@param {Boolean} [options.xml=false]\t\tIf `true`, uses self-closing tags for elements without children.\n *\t@param {Boolean} [options.pretty=false]\t\tIf `true`, adds whitespace for readability\n */\nrenderToString.render = renderToString;\n\n\n/** Only render elements, leaving Components inline as `<ComponentName ... />`.\n *\tThis method is just a convenience alias for `render(vnode, context, { shallow:true })`\n *\t@name shallow\n *\t@function\n *\t@param {VNode} vnode\tJSX VNode to render.\n *\t@param {Object} [context={}]\tOptionally pass an initial context object through the render path.\n */\nlet shallowRender = (vnode, context) => renderToString(vnode, context, SHALLOW);\n\n\n/** The default export is an alias of `render()`. */\nexport default function renderToString(vnode, context, opts, inner, isSvgMode) {\n\tlet { nodeName, attributes, children } = vnode || EMPTY,\n\t\tisComponent = false;\n\tcontext = context || {};\n\topts = opts || {};\n\n\tlet pretty = opts.pretty,\n\t\tindentChar = typeof pretty==='string' ? pretty : '\\t';\n\n\tif (vnode==null || typeof vnode==='boolean') {\n\t\treturn '';\n\t}\n\n\t// #text nodes\n\tif (typeof vnode!=='object' && !nodeName) {\n\t\treturn encodeEntities(vnode);\n\t}\n\n\t// components\n\tif (typeof nodeName==='function') {\n\t\tisComponent = true;\n\t\tif (opts.shallow && (inner || opts.renderRootComponent===false)) {\n\t\t\tnodeName = getComponentName(nodeName);\n\t\t}\n\t\telse {\n\t\t\tlet props = getNodeProps(vnode),\n\t\t\t\trendered;\n\n\t\t\tif (!nodeName.prototype || typeof nodeName.prototype.render!=='function') {\n\t\t\t\t// stateless functional components\n\t\t\t\trendered = nodeName(props, context);\n\t\t\t}\n\t\t\telse {\n\t\t\t\t// class-based components\n\t\t\t\tlet c = new nodeName(props, context);\n\t\t\t\t// turn off stateful re-rendering:\n\t\t\t\tc._disable = c.__x = true;\n\t\t\t\tc.props = props;\n\t\t\t\tc.context = context;\n\t\t\t\tif (c.componentWillMount) c.componentWillMount();\n\t\t\t\trendered = c.render(c.props, c.state, c.context);\n\n\t\t\t\tif (c.getChildContext) {\n\t\t\t\t\tcontext = assign(assign({}, context), c.getChildContext());\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn renderToString(rendered, context, opts, opts.shallowHighOrder!==false);\n\t\t}\n\t}\n\n\t// render JSX to HTML\n\tlet s = '', html;\n\n\tif (attributes) {\n\t\tlet attrs = objectKeys(attributes);\n\n\t\t// allow sorting lexicographically for more determinism (useful for tests, such as via preact-jsx-chai)\n\t\tif (opts && opts.sortAttributes===true) attrs.sort();\n\n\t\tfor (let i=0; i<attrs.length; i++) {\n\t\t\tlet name = attrs[i],\n\t\t\t\tv = attributes[name];\n\t\t\tif (name==='children') continue;\n\n\t\t\tif (name.match(/[\\s\\n\\/='\"\\0<>]/)) continue;\n\n\t\t\tif (!(opts && opts.allAttributes) && (name==='key' || name==='ref')) continue;\n\n\t\t\tif (name==='className') {\n\t\t\t\tif (attributes['class']) continue;\n\t\t\t\tname = 'class';\n\t\t\t}\n\t\t\telse if (isSvgMode && name.match(/^xlink\\:?(.+)/)) {\n\t\t\t\tname = name.toLowerCase().replace(/^xlink\\:?(.+)/, 'xlink:$1');\n\t\t\t}\n\n\t\t\tif (name==='class' && v && typeof v==='object') {\n\t\t\t\tv = hashToClassName(v);\n\t\t\t}\n\t\t\telse if (name==='style' && v && typeof v==='object') {\n\t\t\t\tv = styleObjToCss(v);\n\t\t\t}\n\n\t\t\tlet hooked = opts.attributeHook && opts.attributeHook(name, v, context, opts, isComponent);\n\t\t\tif (hooked || hooked==='') {\n\t\t\t\ts += hooked;\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tif (name==='dangerouslySetInnerHTML') {\n\t\t\t\thtml = v && v.__html;\n\t\t\t}\n\t\t\telse if ((v || v===0 || v==='') && typeof v!=='function') {\n\t\t\t\tif (v===true || v==='') {\n\t\t\t\t\tv = name;\n\t\t\t\t\t// in non-xml mode, allow boolean attributes\n\t\t\t\t\tif (!opts || !opts.xml) {\n\t\t\t\t\t\ts += ' ' + name;\n\t\t\t\t\t\tcontinue;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\ts += ` ${name}=\"${encodeEntities(v)}\"`;\n\t\t\t}\n\t\t}\n\t}\n\n\t// account for >1 multiline attribute\n\tlet sub = s.replace(/^\\n\\s*/, ' ');\n\tif (sub!==s && !~sub.indexOf('\\n')) s = sub;\n\telse if (pretty && ~s.indexOf('\\n')) s += '\\n';\n\n\ts = `<${nodeName}${s}>`;\n\n\tif (VOID_ELEMENTS.indexOf(nodeName)>-1) {\n\t\ts = s.replace(/>$/, ' />');\n\t}\n\n\tif (html) {\n\t\t// if multiline, indent.\n\t\tif (pretty && isLargeString(html)) {\n\t\t\thtml = '\\n' + indentChar + indent(html, indentChar);\n\t\t}\n\t\ts += html;\n\t}\n\telse {\n\t\tlet len = children && children.length,\n\t\t\tpieces = [],\n\t\t\thasLarge = ~s.indexOf('\\n');\n\t\tfor (let i=0; i<len; i++) {\n\t\t\tlet child = children[i];\n\t\t\tif (!falsey(child)) {\n\t\t\t\tlet childSvgMode = nodeName==='svg' ? true : nodeName==='foreignObject' ? false : isSvgMode,\n\t\t\t\t\tret = renderToString(child, context, opts, true, childSvgMode);\n\t\t\t\tif (!hasLarge && pretty && isLargeString(ret)) hasLarge = true;\n\t\t\t\tif (ret) pieces.push(ret);\n\t\t\t}\n\t\t}\n\t\tif (pretty && hasLarge) {\n\t\t\tfor (let i=pieces.length; i--; ) {\n\t\t\t\tpieces[i] = '\\n' + indentChar + indent(pieces[i], indentChar);\n\t\t\t}\n\t\t}\n\t\tif (pieces.length) {\n\t\t\ts += pieces.join('');\n\t\t}\n\t\telse if (opts && opts.xml) {\n\t\t\treturn s.substring(0, s.length-1) + ' />';\n\t\t}\n\t}\n\n\tif (VOID_ELEMENTS.indexOf(nodeName)===-1) {\n\t\tif (pretty && ~s.indexOf('\\n')) s += '\\n';\n\t\ts += `</${nodeName}>`;\n\t}\n\n\treturn s;\n}\n\nfunction getComponentName(component) {\n\treturn component.displayName || component!==Function && component.name || getFallbackComponentName(component);\n}\n\nfunction getFallbackComponentName(component) {\n\tlet str = Function.prototype.toString.call(component),\n\t\tname = (str.match(/^\\s*function\\s+([^\\( ]+)/) || EMPTY)[1];\n\tif (!name) {\n\t\t// search for an existing indexed name for the given component:\n\t\tlet index = -1;\n\t\tfor (let i=UNNAMED.length; i--; ) {\n\t\t\tif (UNNAMED[i]===component) {\n\t\t\t\tindex = i;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\t// not found, create a new indexed name:\n\t\tif (index<0) {\n\t\t\tindex = UNNAMED.push(component) - 1;\n\t\t}\n\t\tname = `UnnamedComponent${index}`;\n\t}\n\treturn name;\n}\nrenderToString.shallowRender = shallowRender;\n\n\nexport {\n\trenderToString as render,\n\trenderToString,\n\tshallowRender\n};\n","'use strict';\n\nconst ESCAPED_CHARACTERS = /(\\\\|\\\"|\\')/g;\n\nmodule.exports = function printString(val) {\n return val.replace(ESCAPED_CHARACTERS, '\\\\$1');\n}\n","'use strict';\n\nconst printString = require('./printString');\n\nconst toString = Object.prototype.toString;\nconst toISOString = Date.prototype.toISOString;\nconst errorToString = Error.prototype.toString;\nconst regExpToString = RegExp.prototype.toString;\nconst symbolToString = Symbol.prototype.toString;\n\nconst SYMBOL_REGEXP = /^Symbol\\((.*)\\)(.*)$/;\nconst NEWLINE_REGEXP = /\\n/ig;\n\nconst getSymbols = Object.getOwnPropertySymbols || (obj => []);\n\nfunction isToStringedArrayType(toStringed) {\n return (\n toStringed === '[object Array]' ||\n toStringed === '[object ArrayBuffer]' ||\n toStringed === '[object DataView]' ||\n toStringed === '[object Float32Array]' ||\n toStringed === '[object Float64Array]' ||\n toStringed === '[object Int8Array]' ||\n toStringed === '[object Int16Array]' ||\n toStringed === '[object Int32Array]' ||\n toStringed === '[object Uint8Array]' ||\n toStringed === '[object Uint8ClampedArray]' ||\n toStringed === '[object Uint16Array]' ||\n toStringed === '[object Uint32Array]'\n );\n}\n\nfunction printNumber(val) {\n if (val != +val) return 'NaN';\n const isNegativeZero = val === 0 && (1 / val) < 0;\n return isNegativeZero ? '-0' : '' + val;\n}\n\nfunction printFunction(val) {\n if (val.name === '') {\n return '[Function anonymous]'\n } else {\n return '[Function ' + val.name + ']';\n }\n}\n\nfunction printSymbol(val) {\n return symbolToString.call(val).replace(SYMBOL_REGEXP, 'Symbol($1)');\n}\n\nfunction printError(val) {\n return '[' + errorToString.call(val) + ']';\n}\n\nfunction printBasicValue(val) {\n if (val === true || val === false) return '' + val;\n if (val === undefined) return 'undefined';\n if (val === null) return 'null';\n\n const typeOf = typeof val;\n\n if (typeOf === 'number') return printNumber(val);\n if (typeOf === 'string') return '\"' + printString(val) + '\"';\n if (typeOf === 'function') return printFunction(val);\n if (typeOf === 'symbol') return printSymbol(val);\n\n const toStringed = toString.call(val);\n\n if (toStringed === '[object WeakMap]') return 'WeakMap {}';\n if (toStringed === '[object WeakSet]') return 'WeakSet {}';\n if (toStringed === '[object Function]' || toStringed === '[object GeneratorFunction]') return printFunction(val, min);\n if (toStringed === '[object Symbol]') return printSymbol(val);\n if (toStringed === '[object Date]') return toISOString.call(val);\n if (toStringed === '[object Error]') return printError(val);\n if (toStringed === '[object RegExp]') return regExpToString.call(val);\n if (toStringed === '[object Arguments]' && val.length === 0) return 'Arguments []';\n if (isToStringedArrayType(toStringed) && val.length === 0) return val.constructor.name + ' []';\n\n if (val instanceof Error) return printError(val);\n\n return false;\n}\n\nfunction printList(list, indent, prevIndent, spacing, edgeSpacing, refs, maxDepth, currentDepth, plugins, min) {\n let body = '';\n\n if (list.length) {\n body += edgeSpacing;\n\n const innerIndent = prevIndent + indent;\n\n for (let i = 0; i < list.length; i++) {\n body += innerIndent + print(list[i], indent, innerIndent, spacing, edgeSpacing, refs, maxDepth, currentDepth, plugins, min);\n\n if (i < list.length - 1) {\n body += ',' + spacing;\n }\n }\n\n body += edgeSpacing + prevIndent;\n }\n\n return '[' + body + ']';\n}\n\nfunction printArguments(val, indent, prevIndent, spacing, edgeSpacing, refs, maxDepth, currentDepth, plugins, min) {\n return (min ? '' : 'Arguments ') + printList(val, indent, prevIndent, spacing, edgeSpacing, refs, maxDepth, currentDepth, plugins, min);\n}\n\nfunction printArray(val, indent, prevIndent, spacing, edgeSpacing, refs, maxDepth, currentDepth, plugins, min) {\n return (min ? '' : val.constructor.name + ' ') + printList(val, indent, prevIndent, spacing, edgeSpacing, refs, maxDepth, currentDepth, plugins, min);\n}\n\nfunction printMap(val, indent, prevIndent, spacing, edgeSpacing, refs, maxDepth, currentDepth, plugins, min) {\n let result = 'Map {';\n const iterator = val.entries();\n let current = iterator.next();\n\n if (!current.done) {\n result += edgeSpacing;\n\n const innerIndent = prevIndent + indent;\n\n while (!current.done) {\n const key = print(current.value[0], indent, innerIndent, spacing, edgeSpacing, refs, maxDepth, currentDepth, plugins, min);\n const value = print(current.value[1], indent, innerIndent, spacing, edgeSpacing, refs, maxDepth, currentDepth, plugins, min);\n\n result += innerIndent + key + ' => ' + value;\n\n current = iterator.next();\n\n if (!current.done) {\n result += ',' + spacing;\n }\n }\n\n result += edgeSpacing + prevIndent;\n }\n\n return result + '}';\n}\n\nfunction printObject(val, indent, prevIndent, spacing, edgeSpacing, refs, maxDepth, currentDepth, plugins, min) {\n const constructor = min ? '' : (val.constructor ? val.constructor.name + ' ' : 'Object ');\n let result = constructor + '{';\n let keys = Object.keys(val).sort();\n const symbols = getSymbols(val);\n\n if (symbols.length) {\n keys = keys\n .filter(key => !(typeof key === 'symbol' || toString.call(key) === '[object Symbol]'))\n .concat(symbols);\n }\n\n if (keys.length) {\n result += edgeSpacing;\n\n const innerIndent = prevIndent + indent;\n\n for (let i = 0; i < keys.length; i++) {\n const key = keys[i];\n const name = print(key, indent, innerIndent, spacing, edgeSpacing, refs, maxDepth, currentDepth, plugins, min);\n const value = print(val[key], indent, innerIndent, spacing, edgeSpacing, refs, maxDepth, currentDepth, plugins, min);\n\n result += innerIndent + name + ': ' + value;\n\n if (i < keys.length - 1) {\n result += ',' + spacing;\n }\n }\n\n result += edgeSpacing + prevIndent;\n }\n\n return result + '}';\n}\n\nfunction printSet(val, indent, prevIndent, spacing, edgeSpacing, refs, maxDepth, currentDepth, plugins, min) {\n let result = 'Set {';\n const iterator = val.entries();\n let current = iterator.next();\n\n if (!current.done) {\n result += edgeSpacing;\n\n const innerIndent = prevIndent + indent;\n\n while (!current.done) {\n result += innerIndent + print(current.value[1], indent, innerIndent, spacing, edgeSpacing, refs, maxDepth, currentDepth, plugins, min);\n\n current = iterator.next();\n\n if (!current.done) {\n result += ',' + spacing;\n }\n }\n\n result += edgeSpacing + prevIndent;\n }\n\n return result + '}';\n}\n\nfunction printComplexValue(val, indent, prevIndent, spacing, edgeSpacing, refs, maxDepth, currentDepth, plugins, min) {\n refs = refs.slice();\n if (refs.indexOf(val) > -1) {\n return '[Circular]';\n } else {\n refs.push(val);\n }\n\n currentDepth++;\n\n const hitMaxDepth = currentDepth > maxDepth;\n\n if (!hitMaxDepth && val.toJSON && typeof val.toJSON === 'function') {\n return print(val.toJSON(), indent, prevIndent, spacing, edgeSpacing, refs, maxDepth, currentDepth, plugins, min);\n }\n\n const toStringed = toString.call(val);\n if (toStringed === '[object Arguments]') {\n return hitMaxDepth ? '[Arguments]' : printArguments(val, indent, prevIndent, spacing, edgeSpacing, refs, maxDepth, currentDepth, plugins, min);\n } else if (isToStringedArrayType(toStringed)) {\n return hitMaxDepth ? '[Array]' : printArray(val, indent, prevIndent, spacing, edgeSpacing, refs, maxDepth, currentDepth, plugins, min);\n } else if (toStringed === '[object Map]') {\n return hitMaxDepth ? '[Map]' : printMap(val, indent, prevIndent, spacing, edgeSpacing, refs, maxDepth, currentDepth, plugins, min);\n } else if (toStringed === '[object Set]') {\n return hitMaxDepth ? '[Set]' : printSet(val, indent, prevIndent, spacing, edgeSpacing, refs, maxDepth, currentDepth, plugins, min);\n } else if (typeof val === 'object') {\n return hitMaxDepth ? '[Object]' : printObject(val, indent, prevIndent, spacing, edgeSpacing, refs, maxDepth, currentDepth, plugins, min);\n }\n}\n\nfunction printPlugin(val, indent, prevIndent, spacing, edgeSpacing, refs, maxDepth, currentDepth, plugins, min) {\n let match = false;\n let plugin;\n\n for (let p = 0; p < plugins.length; p++) {\n plugin = plugins[p];\n\n if (plugin.test(val)) {\n match = true;\n break;\n }\n }\n\n if (!match) {\n return false;\n }\n\n function boundPrint(val) {\n return print(val, indent, prevIndent, spacing, edgeSpacing, refs, maxDepth, currentDepth, plugins, min);\n }\n\n function boundIndent(str) {\n const indentation = prevIndent + indent;\n return indentation + str.replace(NEWLINE_REGEXP, '\\n' + indentation);\n }\n\n return plugin.print(val, boundPrint, boundIndent, {\n edgeSpacing: edgeSpacing,\n spacing: spacing\n });\n}\n\nfunction print(val, indent, prevIndent, spacing, edgeSpacing, refs, maxDepth, currentDepth, plugins, min) {\n const basic = printBasicValue(val);\n if (basic) return basic;\n\n const plugin = printPlugin(val, indent, prevIndent, spacing, edgeSpacing, refs, maxDepth, currentDepth, plugins, min);\n if (plugin) return plugin;\n\n return printComplexValue(val, indent, prevIndent, spacing, edgeSpacing, refs, maxDepth, currentDepth, plugins, min);\n}\n\nconst DEFAULTS = {\n indent: 2,\n min: false,\n maxDepth: Infinity,\n plugins: []\n};\n\nfunction validateOptions(opts) {\n Object.keys(opts).forEach(key => {\n if (!DEFAULTS.hasOwnProperty(key)) {\n throw new Error('prettyFormat: Invalid option: ' + key);\n }\n });\n\n if (opts.min && opts.indent !== undefined && opts.indent !== 0) {\n throw new Error('prettyFormat: Cannot run with min option and indent');\n }\n}\n\nfunction normalizeOptions(opts) {\n const result = {};\n\n Object.keys(DEFAULTS).forEach(key =>\n result[key] = opts.hasOwnProperty(key) ? opts[key] : DEFAULTS[key]\n );\n\n if (result.min) {\n result.indent = 0;\n }\n\n return result;\n}\n\nfunction createIndent(indent) {\n return new Array(indent + 1).join(' ');\n}\n\nfunction prettyFormat(val, opts) {\n if (!opts) {\n opts = DEFAULTS;\n } else {\n validateOptions(opts)\n opts = normalizeOptions(opts);\n }\n\n let indent;\n let refs;\n const prevIndent = '';\n const currentDepth = 0;\n const spacing = opts.min ? ' ' : '\\n';\n const edgeSpacing = opts.min ? '' : '\\n';\n\n if (opts && opts.plugins.length) {\n indent = createIndent(opts.indent);\n refs = [];\n var pluginsResult = printPlugin(val, indent, prevIndent, spacing, edgeSpacing, refs, opts.maxDepth, currentDepth, opts.plugins, opts.min);\n if (pluginsResult) return pluginsResult;\n }\n\n var basicResult = printBasicValue(val);\n if (basicResult) return basicResult;\n\n if (!indent) indent = createIndent(opts.indent);\n if (!refs) refs = [];\n return printComplexValue(val, indent, prevIndent, spacing, edgeSpacing, refs, opts.maxDepth, currentDepth, opts.plugins, opts.min);\n}\n\nmodule.exports = prettyFormat;\n","import './polyfills';\nimport renderToString from '.';\nimport { indent, encodeEntities, assign } from './util';\nimport prettyFormat from 'pretty-format';\n\n\n// we have to patch in Array support, Possible issue in npm.im/pretty-format\nlet preactPlugin = {\n\ttest(object) {\n\t\treturn object && typeof object==='object' && 'nodeName' in object && 'attributes' in object && 'children' in object && !('nodeType' in object);\n\t},\n\tprint(val, print, indent) {\n\t\treturn renderToString(val, preactPlugin.context, preactPlugin.opts, true);\n\t}\n};\n\n\nlet prettyFormatOpts = {\n\tplugins: [preactPlugin]\n};\n\n\nfunction attributeHook(name, value, context, opts, isComponent) {\n\tlet type = typeof value;\n\t\n\t// Use render-to-string's built-in handling for these properties\n\tif (name==='dangerouslySetInnerHTML') return false;\n\n\t// always skip null & undefined values, skip false DOM attributes, skip functions if told to\n\tif (value==null || (type==='function' && !opts.functions)) return '';\n\n\tif (opts.skipFalseAttributes && !isComponent && (value===false || ((name==='class' || name==='style') && value===''))) return '';\n\n\tlet indentChar = typeof opts.pretty==='string' ? opts.pretty : '\\t';\n\tif (type!=='string') {\n\t\tif (type==='function' && !opts.functionNames) {\n\t\t\tvalue = 'Function';\n\t\t}\n\t\telse {\n\t\t\tpreactPlugin.context = context;\n\t\t\tpreactPlugin.opts = opts;\n\t\t\tvalue = prettyFormat(value, prettyFormatOpts);\n\t\t\tif (~value.indexOf('\\n')) {\n\t\t\t\tvalue = `${indent('\\n'+value, indentChar)}\\n`;\n\t\t\t}\n\t\t}\n\t\treturn indent(`\\n${name}={${value}}`, indentChar);\n\t}\n\treturn `\\n${indentChar}${name}=\"${encodeEntities(value)}\"`;\n}\n\n\nlet defaultOpts = {\n\tattributeHook,\n\tjsx: true,\n\txml: false,\n\tfunctions: true,\n\tfunctionNames: true,\n\tskipFalseAttributes: true,\n\tpretty: ' '\n};\n\n\nexport default function renderToJsxString(vnode, context, opts, inner) {\n\topts = assign(assign({}, defaultOpts), opts || {});\n\treturn renderToString(vnode, context, opts, inner);\n}\n"],"names":["Symbol","c","s","for","NON_DIMENSION_PROPS","boxFlexGroup","columnCount","fillOpacity","flex","flexGrow","flexShrink","flexNegative","fontWeight","lineClamp","lineHeight","order","orphans","strokeOpacity","widows","zIndex","zoom","ESC","objectKeys","Object","keys","i","obj","hasOwnProperty","push","encodeEntities","String","replace","escapeChar","a","falsey","v","memoize","fn","mem","indent","char","isLargeString","length","ignoreLines","indexOf","styleObjToCss","str","prop","val","jsToCss","undefined","hashToClassName","toLowerCase","assign","props","getNodeProps","vnode","defaultProps","nodeName","attributes","children","SHALLOW","shallow","UNNAMED","EMPTY","VOID_ELEMENTS","renderToString","render","shallowRender","context","opts","inner","isSvgMode","isComponent","pretty","indentChar","renderRootComponent","getComponentName","rendered","prototype","_disable","__x","componentWillMount","state","getChildContext","shallowHighOrder","html","attrs","sortAttributes","sort","name","match","allAttributes","hooked","attributeHook","__html","xml","sub","len","pieces","hasLarge","child","childSvgMode","ret","join","substring","component","displayName","Function","getFallbackComponentName","toString","call","index","ESCAPED_CHARACTERS","exports","printString","commonjsHelpers","toISOString","Date","errorToString","Error","regExpToString","RegExp","symbolToString","SYMBOL_REGEXP","NEWLINE_REGEXP","getSymbols","getOwnPropertySymbols","isToStringedArrayType","toStringed","printNumber","isNegativeZero","printFunction","printSymbol","printError","printBasicValue","typeOf","min","constructor","printList","list","prevIndent","spacing","edgeSpacing","refs","maxDepth","currentDepth","plugins","body","innerIndent","print","printArguments","printArray","printMap","result","iterator","entries","current","next","done","key","value","printObject","symbols","filter","concat","printSet","printComplexValue","slice","hitMaxDepth","toJSON","printPlugin","plugin","p","test","boundPrint","boundIndent","indentation","basic","DEFAULTS","Infinity","validateOptions","forEach","normalizeOptions","createIndent","Array","prettyFormat","pluginsResult","basicResult","preactPlugin","object","prettyFormatOpts","type","functions","skipFalseAttributes","functionNames","defaultOpts","renderToJsxString"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"jsx.js","sources":["jsx.js"],"sourcesContent":["if(\"function\"!=typeof Symbol){var t=0;Symbol=function(n){return\"@@\"+n+ ++t},Symbol.for=function(t){return\"@@\"+t}}var n=/acit|ex(?:s|g|n|p|$)|rph|ows|mnc|ntw|ine[ch]|zoo|^ord/i,e=Object.keys||function(t){var n=[];for(var e in t)t.hasOwnProperty(e)&&n.push(e);return n},r=function(t){return String(t).replace(/&/g,\"&\").replace(/</g,\"<\").replace(/>/g,\">\").replace(/\"/g,\""\")},o=function(t,n){return String(t).replace(/(\\n+)/g,\"$1\"+(n||\"\\t\"))},i=function(t,n,e){return String(t).length>(n||40)||!e&&-1!==String(t).indexOf(\"\\n\")||-1!==String(t).indexOf(\"<\")},c={};function u(t){var e=\"\";for(var r in t){var o=t[r];null!=o&&(e&&(e+=\" \"),e+=c[r]||(c[r]=r.replace(/([A-Z])/g,\"-$1\").toLowerCase()),e+=\": \",e+=o,\"number\"==typeof o&&!1===n.test(r)&&(e+=\"px\"),e+=\";\")}return e||void 0}function a(t,n){for(var e in n)t[e]=n[e];return t}var l={shallow:!0},f=[],s=/^(area|base|br|col|embed|hr|img|input|link|meta|param|source|track|wbr)$/;p.render=p;function p(t,n,c,l,y){if(null==t||\"boolean\"==typeof t)return\"\";var b=t.nodeName,g=t.attributes,m=!1;n=n||{};var d,h=(c=c||{}).pretty,v=\"string\"==typeof h?h:\"\\t\";if(\"object\"!=typeof t&&!b)return r(t);if(\"function\"==typeof b){if(m=!0,!c.shallow||!l&&!1!==c.renderRootComponent){var j,x=function(t){var n=a({},t.attributes);n.children=t.children;var e=t.nodeName.defaultProps;if(void 0!==e)for(var r in e)void 0===n[r]&&(n[r]=e[r]);return n}(t);if(b.prototype&&\"function\"==typeof b.prototype.render){var S=new b(x,n);S._disable=S.__x=!0,S.props=x,S.context=n,S.componentWillMount&&S.componentWillMount(),j=S.render(S.props,S.state,S.context),S.getChildContext&&(n=a(a({},n),S.getChildContext()))}else j=b(x,n);return p(j,n,c,!1!==c.shallowHighOrder)}b=(d=b).displayName||d!==Function&&d.name||function(t){var n=(Function.prototype.toString.call(t).match(/^\\s*function\\s+([^( ]+)/)||\"\")[1];if(!n){for(var e=-1,r=f.length;r--;)if(f[r]===t){e=r;break}e<0&&(e=f.push(t)-1),n=\"UnnamedComponent\"+e}return n}(d)}var O,A=\"\";if(g){var w=e(g);c&&!0===c.sortAttributes&&w.sort();for(var k=0;k<w.length;k++){var F=w[k],N=g[F];if(\"children\"!==F&&(!F.match(/[\\s\\n\\\\/='\"\\0<>]/)&&(c&&c.allAttributes||\"key\"!==F&&\"ref\"!==F))){if(\"className\"===F){if(g.class)continue;F=\"class\"}else y&&F.match(/^xlink:?./)&&(F=F.toLowerCase().replace(/^xlink:?/,\"xlink:\"));\"style\"===F&&N&&\"object\"==typeof N&&(N=u(N));var C=c.attributeHook&&c.attributeHook(F,N,n,c,m);if(C||\"\"===C)A+=C;else if(\"dangerouslySetInnerHTML\"===F)O=N&&N.__html;else if((N||0===N||\"\"===N)&&\"function\"!=typeof N){if(!(!0!==N&&\"\"!==N||(N=F,c&&c.xml))){A+=\" \"+F;continue}A+=\" \"+F+'=\"'+r(N)+'\"'}}}}var E=A.replace(/^\\n\\s*/,\" \");if(E===A||~E.indexOf(\"\\n\")?h&&~A.indexOf(\"\\n\")&&(A+=\"\\n\"):A=E,A=\"<\"+b+A+\">\",String(b).match(/[\\s\\n\\\\/='\"\\0<>]/))throw A;var M=String(b).match(s);M&&(A=A.replace(/>$/,\" />\"));var I=[];if(O)h&&i(O)&&(O=\"\\n\"+v+o(O,v)),A+=O;else if(t.children){for(var $=~A.indexOf(\"\\n\"),D=0;D<t.children.length;D++){var H=t.children[D];if(null!=H&&!1!==H){var W=p(H,n,c,!0,\"svg\"===b||\"foreignObject\"!==b&&y);!$&&h&&i(W)&&($=!0),W&&I.push(W)}}if(h&&$)for(var P=I.length;P--;)I[P]=\"\\n\"+v+o(I[P],v)}if(I.length)A+=I.join(\"\");else if(c&&c.xml)return A.substring(0,A.length-1)+\" />\";return M||(h&&~A.indexOf(\"\\n\")&&(A+=\"\\n\"),A+=\"</\"+b+\">\"),A}p.shallowRender=function(t,n){return p(t,n,l)};const y=/(\\\\|\\\"|\\')/g;var b=function(t){return t.replace(y,\"\\\\$1\")};const g=Object.prototype.toString,m=Date.prototype.toISOString,d=Error.prototype.toString,h=RegExp.prototype.toString,v=Symbol.prototype.toString,j=/^Symbol\\((.*)\\)(.*)$/,x=/\\n/gi,S=Object.getOwnPropertySymbols||(t=>[]);function O(t){return\"[object Array]\"===t||\"[object ArrayBuffer]\"===t||\"[object DataView]\"===t||\"[object Float32Array]\"===t||\"[object Float64Array]\"===t||\"[object Int8Array]\"===t||\"[object Int16Array]\"===t||\"[object Int32Array]\"===t||\"[object Uint8Array]\"===t||\"[object Uint8ClampedArray]\"===t||\"[object Uint16Array]\"===t||\"[object Uint32Array]\"===t}function A(t){return\"\"===t.name?\"[Function anonymous]\":\"[Function \"+t.name+\"]\"}function w(t){return v.call(t).replace(j,\"Symbol($1)\")}function k(t){return\"[\"+d.call(t)+\"]\"}function F(t){if(!0===t||!1===t)return\"\"+t;if(void 0===t)return\"undefined\";if(null===t)return\"null\";const n=typeof t;if(\"number\"===n)return function(t){return t!=+t?\"NaN\":0===t&&1/t<0?\"-0\":\"\"+t}(t);if(\"string\"===n)return'\"'+b(t)+'\"';if(\"function\"===n)return A(t);if(\"symbol\"===n)return w(t);const e=g.call(t);return\"[object WeakMap]\"===e?\"WeakMap {}\":\"[object WeakSet]\"===e?\"WeakSet {}\":\"[object Function]\"===e||\"[object GeneratorFunction]\"===e?A(t,min):\"[object Symbol]\"===e?w(t):\"[object Date]\"===e?m.call(t):\"[object Error]\"===e?k(t):\"[object RegExp]\"===e?h.call(t):\"[object Arguments]\"===e&&0===t.length?\"Arguments []\":O(e)&&0===t.length?t.constructor.name+\" []\":t instanceof Error&&k(t)}function N(t,n,e,r,o,i,c,u,a,l){let f=\"\";if(t.length){f+=o;const s=e+n;for(let e=0;e<t.length;e++)f+=s+M(t[e],n,s,r,o,i,c,u,a,l),e<t.length-1&&(f+=\",\"+r);f+=o+e}return\"[\"+f+\"]\"}function C(t,n,e,r,o,i,c,u,a,l){if((i=i.slice()).indexOf(t)>-1)return\"[Circular]\";i.push(t);const f=++u>c;if(!f&&t.toJSON&&\"function\"==typeof t.toJSON)return M(t.toJSON(),n,e,r,o,i,c,u,a,l);const s=g.call(t);return\"[object Arguments]\"===s?f?\"[Arguments]\":function(t,n,e,r,o,i,c,u,a,l){return(l?\"\":\"Arguments \")+N(t,n,e,r,o,i,c,u,a,l)}(t,n,e,r,o,i,c,u,a,l):O(s)?f?\"[Array]\":function(t,n,e,r,o,i,c,u,a,l){return(l?\"\":t.constructor.name+\" \")+N(t,n,e,r,o,i,c,u,a,l)}(t,n,e,r,o,i,c,u,a,l):\"[object Map]\"===s?f?\"[Map]\":function(t,n,e,r,o,i,c,u,a,l){let f=\"Map {\";const s=t.entries();let p=s.next();if(!p.done){f+=o;const t=e+n;for(;!p.done;)f+=t+M(p.value[0],n,t,r,o,i,c,u,a,l)+\" => \"+M(p.value[1],n,t,r,o,i,c,u,a,l),(p=s.next()).done||(f+=\",\"+r);f+=o+e}return f+\"}\"}(t,n,e,r,o,i,c,u,a,l):\"[object Set]\"===s?f?\"[Set]\":function(t,n,e,r,o,i,c,u,a,l){let f=\"Set {\";const s=t.entries();let p=s.next();if(!p.done){f+=o;const t=e+n;for(;!p.done;)f+=t+M(p.value[1],n,t,r,o,i,c,u,a,l),(p=s.next()).done||(f+=\",\"+r);f+=o+e}return f+\"}\"}(t,n,e,r,o,i,c,u,a,l):\"object\"==typeof t?f?\"[Object]\":function(t,n,e,r,o,i,c,u,a,l){let f=(l?\"\":t.constructor?t.constructor.name+\" \":\"Object \")+\"{\",s=Object.keys(t).sort();const p=S(t);if(p.length&&(s=s.filter(t=>!(\"symbol\"==typeof t||\"[object Symbol]\"===g.call(t))).concat(p)),s.length){f+=o;const p=e+n;for(let e=0;e<s.length;e++){const y=s[e];f+=p+M(y,n,p,r,o,i,c,u,a,l)+\": \"+M(t[y],n,p,r,o,i,c,u,a,l),e<s.length-1&&(f+=\",\"+r)}f+=o+e}return f+\"}\"}(t,n,e,r,o,i,c,u,a,l):void 0}function E(t,n,e,r,o,i,c,u,a,l){let f,s=!1;for(let n=0;n<a.length;n++)if((f=a[n]).test(t)){s=!0;break}if(!s)return!1;return f.print(t,function(t){return M(t,n,e,r,o,i,c,u,a,l)},function(t){const r=e+n;return r+t.replace(x,\"\\n\"+r)},{edgeSpacing:o,spacing:r})}function M(t,n,e,r,o,i,c,u,a,l){const f=F(t);if(f)return f;const s=E(t,n,e,r,o,i,c,u,a,l);return s||C(t,n,e,r,o,i,c,u,a,l)}const I={indent:2,min:!1,maxDepth:Infinity,plugins:[]};function $(t){return new Array(t+1).join(\" \")}var D=function(t,n){let e,r;n?(function(t){if(Object.keys(t).forEach(t=>{if(!I.hasOwnProperty(t))throw new Error(\"prettyFormat: Invalid option: \"+t)}),t.min&&void 0!==t.indent&&0!==t.indent)throw new Error(\"prettyFormat: Cannot run with min option and indent\")}(n),n=function(t){const n={};return Object.keys(I).forEach(e=>n[e]=t.hasOwnProperty(e)?t[e]:I[e]),n.min&&(n.indent=0),n}(n)):n=I;const o=n.min?\" \":\"\\n\",i=n.min?\"\":\"\\n\";if(n&&n.plugins.length){var c=E(t,e=$(n.indent),\"\",o,i,r=[],n.maxDepth,0,n.plugins,n.min);if(c)return c}var u=F(t);return u||(e||(e=$(n.indent)),r||(r=[]),C(t,e,\"\",o,i,r,n.maxDepth,0,n.plugins,n.min))},H={test:function(t){return t&&\"object\"==typeof t&&\"nodeName\"in t&&\"attributes\"in t&&\"children\"in t&&!(\"nodeType\"in t)},print:function(t,n,e){return p(t,H.context,H.opts,!0)}},W={plugins:[H]};var P={attributeHook:function(t,n,e,i,c){var u=typeof n;if(\"dangerouslySetInnerHTML\"===t)return!1;if(null==n||\"function\"===u&&!i.functions)return\"\";if(i.skipFalseAttributes&&!c&&(!1===n||(\"class\"===t||\"style\"===t)&&\"\"===n))return\"\";var a=\"string\"==typeof i.pretty?i.pretty:\"\\t\";return\"string\"!==u?(\"function\"!==u||i.functionNames?(H.context=e,H.opts=i,~(n=D(n,W)).indexOf(\"\\n\")&&(n=o(\"\\n\"+n,a)+\"\\n\")):n=\"Function\",o(\"\\n\"+t+\"={\"+n+\"}\",a)):\"\\n\"+a+t+'=\"'+r(n)+'\"'},jsx:!0,xml:!1,functions:!0,functionNames:!0,skipFalseAttributes:!0,pretty:\" \"};module.exports=function(t,n,e,r){return p(t,n,e=a(a({},P),e||{}),r)};\n//# sourceMappingURL=jsx.js.map\n"],"names":["Symbol","t","n","for","e","Object","keys","hasOwnProperty","push","r","String","replace","o","i","length","indexOf","c","u","toLowerCase","test","a","l","shallow","f","s","p","y","b","nodeName","g","attributes","m","d","h","pretty","v","renderRootComponent","j","x","children","defaultProps","prototype","render","S","_disable","__x","props","context","componentWillMount","state","getChildContext","shallowHighOrder","displayName","Function","name","toString","call","match","O","A","w","sortAttributes","sort","k","F","N","allAttributes","class","C","attributeHook","__html","xml","E","M","I","$","D","H","W","P","join","substring","shallowRender","const","Date","toISOString","Error","RegExp","getOwnPropertySymbols","min","constructor","let","slice","toJSON","entries","next","done","value","filter","concat","print","edgeSpacing","spacing","indent","maxDepth","Infinity","plugins","Array","opts","functions","skipFalseAttributes","functionNames","forEach","jsx","module","exports"],"mappings":"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"}
|
package/dist/jsx.mjs
ADDED
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import t from"pretty-format";if("function"!=typeof Symbol){var n=0;try{Symbol=function(t){return"@@"+t+ ++n},Symbol.for=function(t){return"@@"+t}}catch(t){}}var e=/acit|ex(?:s|g|n|p|$)|rph|ows|mnc|ntw|ine[ch]|zoo|^ord/i,r=function(t){return String(t).replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""")},o=function(t,n){return String(t).replace(/(\n+)/g,"$1"+(n||"\t"))},i=function(t,n,e){return String(t).length>(n||40)||!e&&-1!==String(t).indexOf("\n")||-1!==String(t).indexOf("<")},a={};function f(t){var n="";for(var r in t){var o=t[r];null!=o&&(n&&(n+=" "),n+=a[r]||(a[r]=r.replace(/([A-Z])/g,"-$1").toLowerCase()),n+=": ",n+=o,"number"==typeof o&&!1===e.test(r)&&(n+="px"),n+=";")}return n||void 0}function l(t,n){for(var e in n)t[e]=n[e];return t}var u={shallow:!0},c=[],s=/^(area|base|br|col|embed|hr|img|input|link|meta|param|source|track|wbr)$/;p.render=p;function p(t,n,e,a,u){if(null==t||"boolean"==typeof t)return"";var d=t.nodeName,g=t.attributes,v=!1;n=n||{};var m,h=(e=e||{}).pretty,y=h&&"string"==typeof h?h:"\t";if("object"!=typeof t&&!d)return r(t);if("function"==typeof d){if(v=!0,!e.shallow||!a&&!1!==e.renderRootComponent){var b,x=function(t){var n=l({},t.attributes);n.children=t.children;var e=t.nodeName.defaultProps;if(void 0!==e)for(var r in e)void 0===n[r]&&(n[r]=e[r]);return n}(t);if(d.prototype&&"function"==typeof d.prototype.render){var k=new d(x,n);k._disable=k.__x=!0,k.props=x,k.context=n,k.componentWillMount&&k.componentWillMount(),b=k.render(k.props,k.state,k.context),k.getChildContext&&(n=l(l({},n),k.getChildContext()))}else b=d(x,n);return p(b,n,e,!1!==e.shallowHighOrder)}d=(m=d).displayName||m!==Function&&m.name||function(t){var n=(Function.prototype.toString.call(t).match(/^\s*function\s+([^( ]+)/)||"")[1];if(!n){for(var e=-1,r=c.length;r--;)if(c[r]===t){e=r;break}e<0&&(e=c.push(t)-1),n="UnnamedComponent"+e}return n}(m)}var S,w="";if(g){var O=Object.keys(g);e&&!0===e.sortAttributes&&O.sort();for(var C=0;C<O.length;C++){var j=O[C],N=g[j];if("children"!==j&&(!j.match(/[\s\n\\/='"\0<>]/)&&(e&&e.allAttributes||"key"!==j&&"ref"!==j))){if("className"===j){if(g.class)continue;j="class"}else u&&j.match(/^xlink:?./)&&(j=j.toLowerCase().replace(/^xlink:?/,"xlink:"));"style"===j&&N&&"object"==typeof N&&(N=f(N));var H=e.attributeHook&&e.attributeHook(j,N,n,e,v);if(H||""===H)w+=H;else if("dangerouslySetInnerHTML"===j)S=N&&N.__html;else if((N||0===N||""===N)&&"function"!=typeof N){if(!(!0!==N&&""!==N||(N=j,e&&e.xml))){w+=" "+j;continue}w+=" "+j+'="'+r(N)+'"'}}}}if(h){var A=w.replace(/^\n\s*/," ");A===w||~A.indexOf("\n")?h&&~w.indexOf("\n")&&(w+="\n"):w=A}if(w="<"+d+w+">",String(d).match(/[\s\n\\/='"\0<>]/))throw w;var F=String(d).match(s);F&&(w=w.replace(/>$/," />"));var $=[];if(S)h&&i(S)&&(S="\n"+y+o(S,y)),w+=S;else if(t.children){for(var _=h&&~w.indexOf("\n"),L=0;L<t.children.length;L++){var M=t.children[L];if(null!=M&&!1!==M){var T=p(M,n,e,!0,"svg"===d||"foreignObject"!==d&&u);h&&!_&&i(T)&&(_=!0),T&&$.push(T)}}if(h&&_)for(var I=$.length;I--;)$[I]="\n"+y+o($[I],y)}if($.length)w+=$.join("");else if(e&&e.xml)return w.substring(0,w.length-1)+" />";return F||(h&&~w.indexOf("\n")&&(w+="\n"),w+="</"+d+">"),w}p.shallowRender=function(t,n){return p(t,n,u)};var d={test:function(t){return t&&"object"==typeof t&&"nodeName"in t&&"attributes"in t&&"children"in t&&!("nodeType"in t)},print:function(t,n,e){return p(t,d.context,d.opts,!0)}},g={plugins:[d]};var v={attributeHook:function(n,e,i,a,f){var l=typeof e;if("dangerouslySetInnerHTML"===n)return!1;if(null==e||"function"===l&&!a.functions)return"";if(a.skipFalseAttributes&&!f&&(!1===e||("class"===n||"style"===n)&&""===e))return"";var u="string"==typeof a.pretty?a.pretty:"\t";return"string"!==l?("function"!==l||a.functionNames?(d.context=i,d.opts=a,~(e=t(e,g)).indexOf("\n")&&(e=o("\n"+e,u)+"\n")):e="Function",o("\n"+n+"={"+e+"}",u)):"\n"+u+n+'="'+r(e)+'"'},jsx:!0,xml:!1,functions:!0,functionNames:!0,skipFalseAttributes:!0,pretty:" "};function m(t,n,e,r){return p(t,n,e=l(l({},v),e||{}),r)}export default m;export{m as render};
|
|
2
|
+
//# sourceMappingURL=jsx.mjs.map
|
package/dist/jsx.mjs.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jsx.mjs","sources":["../src/polyfills.js","../src/util.js","../src/index.js","../src/jsx.js"],"sourcesContent":["if (typeof Symbol!=='function') {\n\tlet c = 0;\n\ttry {\n\t\tSymbol = function(s) {\t\t// eslint-disable-line\n\t\t\treturn `@@${s}${++c}`;\n\t\t};\n\t\tSymbol.for = s => `@@${s}`;\n\t}\n\tcatch (e) {}\n}\n","// DOM properties that should NOT have \"px\" added when numeric\nexport const IS_NON_DIMENSIONAL = /acit|ex(?:s|g|n|p|$)|rph|ows|mnc|ntw|ine[ch]|zoo|^ord/i;\n\nexport let encodeEntities = s => String(s)\n\t.replace(/&/g, '&')\n\t.replace(/</g, '<')\n\t.replace(/>/g, '>')\n\t.replace(/\"/g, '"');\n\nexport let indent = (s, char) => String(s).replace(/(\\n+)/g, '$1' + (char || '\\t'));\n\nexport let isLargeString = (s, length, ignoreLines) => (String(s).length>(length || 40) || (!ignoreLines && String(s).indexOf('\\n')!==-1) || String(s).indexOf('<')!==-1);\n\nconst JS_TO_CSS = {};\n\n// Convert an Object style to a CSSText string\nexport function styleObjToCss(s) {\n\tlet str = '';\n\tfor (let prop in s) {\n\t\tlet val = s[prop];\n\t\tif (val!=null) {\n\t\t\tif (str) str += ' ';\n\t\t\t// str += jsToCss(prop);\n\t\t\tstr += JS_TO_CSS[prop] || (JS_TO_CSS[prop] = prop.replace(/([A-Z])/g,'-$1').toLowerCase());\n\t\t\tstr += ': ';\n\t\t\tstr += val;\n\t\t\tif (typeof val==='number' && IS_NON_DIMENSIONAL.test(prop)===false) {\n\t\t\t\tstr += 'px';\n\t\t\t}\n\t\t\tstr += ';';\n\t\t}\n\t}\n\treturn str || undefined;\n}\n\n/**\n * Copy all properties from `props` onto `obj`.\n * @param {object} obj Object onto which properties should be copied.\n * @param {object} props Object from which to copy properties.\n * @returns {object}\n * @private\n */\nexport function assign(obj, props) {\n\tfor (let i in props) obj[i] = props[i];\n\treturn obj;\n}\n\n/**\n * Reconstruct Component-style `props` from a VNode.\n * Ensures default/fallback values from `defaultProps`:\n * Own-properties of `defaultProps` not present in `vnode.attributes` are added.\n * @param {import('preact').VNode} vnode The VNode to get props for\n * @returns {object} The props to use for this VNode\n */\nexport function getNodeProps(vnode) {\n\tlet props = assign({}, vnode.attributes);\n\tprops.children = vnode.children;\n\n\tlet defaultProps = vnode.nodeName.defaultProps;\n\tif (defaultProps!==undefined) {\n\t\tfor (let i in defaultProps) {\n\t\t\tif (props[i]===undefined) {\n\t\t\t\tprops[i] = defaultProps[i];\n\t\t\t}\n\t\t}\n\t}\n\n\treturn props;\n}\n","import { encodeEntities, indent, isLargeString, styleObjToCss, assign, getNodeProps } from './util';\nimport { ENABLE_PRETTY } from '../env';\n\nconst SHALLOW = { shallow: true };\n\n// components without names, kept as a hash for later comparison to return consistent UnnamedComponentXX names.\nconst UNNAMED = [];\n\nconst VOID_ELEMENTS = /^(area|base|br|col|embed|hr|img|input|link|meta|param|source|track|wbr)$/;\n\n\n/** Render Preact JSX + Components to an HTML string.\n *\t@name render\n *\t@function\n *\t@param {VNode} vnode\tJSX VNode to render.\n *\t@param {Object} [context={}]\tOptionally pass an initial context object through the render path.\n *\t@param {Object} [options={}]\tRendering options\n *\t@param {Boolean} [options.shallow=false]\tIf `true`, renders nested Components as HTML elements (`<Foo a=\"b\" />`).\n *\t@param {Boolean} [options.xml=false]\t\tIf `true`, uses self-closing tags for elements without children.\n *\t@param {Boolean} [options.pretty=false]\t\tIf `true`, adds whitespace for readability\n */\nrenderToString.render = renderToString;\n\n\n/** Only render elements, leaving Components inline as `<ComponentName ... />`.\n *\tThis method is just a convenience alias for `render(vnode, context, { shallow:true })`\n *\t@name shallow\n *\t@function\n *\t@param {VNode} vnode\tJSX VNode to render.\n *\t@param {Object} [context={}]\tOptionally pass an initial context object through the render path.\n */\nlet shallowRender = (vnode, context) => renderToString(vnode, context, SHALLOW);\n\n\n/** The default export is an alias of `render()`. */\nfunction renderToString(vnode, context, opts, inner, isSvgMode) {\n\tif (vnode==null || typeof vnode==='boolean') {\n\t\treturn '';\n\t}\n\n\tlet nodeName = vnode.nodeName,\n\t\tattributes = vnode.attributes,\n\t\tisComponent = false;\n\tcontext = context || {};\n\topts = opts || {};\n\n\tlet pretty = ENABLE_PRETTY && opts.pretty,\n\t\tindentChar = pretty && typeof pretty==='string' ? pretty : '\\t';\n\n\t// #text nodes\n\tif (typeof vnode!=='object' && !nodeName) {\n\t\treturn encodeEntities(vnode);\n\t}\n\n\t// components\n\tif (typeof nodeName==='function') {\n\t\tisComponent = true;\n\t\tif (opts.shallow && (inner || opts.renderRootComponent===false)) {\n\t\t\tnodeName = getComponentName(nodeName);\n\t\t}\n\t\telse {\n\t\t\tlet props = getNodeProps(vnode),\n\t\t\t\trendered;\n\n\t\t\tif (!nodeName.prototype || typeof nodeName.prototype.render!=='function') {\n\t\t\t\t// stateless functional components\n\t\t\t\trendered = nodeName(props, context);\n\t\t\t}\n\t\t\telse {\n\t\t\t\t// class-based components\n\t\t\t\tlet c = new nodeName(props, context);\n\t\t\t\t// turn off stateful re-rendering:\n\t\t\t\tc._disable = c.__x = true;\n\t\t\t\tc.props = props;\n\t\t\t\tc.context = context;\n\t\t\t\tif (c.componentWillMount) c.componentWillMount();\n\t\t\t\trendered = c.render(c.props, c.state, c.context);\n\n\t\t\t\tif (c.getChildContext) {\n\t\t\t\t\tcontext = assign(assign({}, context), c.getChildContext());\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn renderToString(rendered, context, opts, opts.shallowHighOrder!==false);\n\t\t}\n\t}\n\n\t// render JSX to HTML\n\tlet s = '', html;\n\n\tif (attributes) {\n\t\tlet attrs = Object.keys(attributes);\n\n\t\t// allow sorting lexicographically for more determinism (useful for tests, such as via preact-jsx-chai)\n\t\tif (opts && opts.sortAttributes===true) attrs.sort();\n\n\t\tfor (let i=0; i<attrs.length; i++) {\n\t\t\tlet name = attrs[i],\n\t\t\t\tv = attributes[name];\n\t\t\tif (name==='children') continue;\n\n\t\t\tif (name.match(/[\\s\\n\\\\/='\"\\0<>]/)) continue;\n\n\t\t\tif (!(opts && opts.allAttributes) && (name==='key' || name==='ref')) continue;\n\n\t\t\tif (name==='className') {\n\t\t\t\tif (attributes.class) continue;\n\t\t\t\tname = 'class';\n\t\t\t}\n\t\t\telse if (isSvgMode && name.match(/^xlink:?./)) {\n\t\t\t\tname = name.toLowerCase().replace(/^xlink:?/, 'xlink:');\n\t\t\t}\n\n\t\t\tif (name==='style' && v && typeof v==='object') {\n\t\t\t\tv = styleObjToCss(v);\n\t\t\t}\n\n\t\t\tlet hooked = opts.attributeHook && opts.attributeHook(name, v, context, opts, isComponent);\n\t\t\tif (hooked || hooked==='') {\n\t\t\t\ts += hooked;\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tif (name==='dangerouslySetInnerHTML') {\n\t\t\t\thtml = v && v.__html;\n\t\t\t}\n\t\t\telse if ((v || v===0 || v==='') && typeof v!=='function') {\n\t\t\t\tif (v===true || v==='') {\n\t\t\t\t\tv = name;\n\t\t\t\t\t// in non-xml mode, allow boolean attributes\n\t\t\t\t\tif (!opts || !opts.xml) {\n\t\t\t\t\t\ts += ' ' + name;\n\t\t\t\t\t\tcontinue;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\ts += ` ${name}=\"${encodeEntities(v)}\"`;\n\t\t\t}\n\t\t}\n\t}\n\n\t// account for >1 multiline attribute\n\tif (pretty) {\n\t\tlet sub = s.replace(/^\\n\\s*/, ' ');\n\t\tif (sub!==s && !~sub.indexOf('\\n')) s = sub;\n\t\telse if (pretty && ~s.indexOf('\\n')) s += '\\n';\n\t}\n\n\ts = `<${nodeName}${s}>`;\n\tif (String(nodeName).match(/[\\s\\n\\\\/='\"\\0<>]/)) throw s;\n\n\tlet isVoid = String(nodeName).match(VOID_ELEMENTS);\n\tif (isVoid) s = s.replace(/>$/, ' />');\n\n\tlet pieces = [];\n\tif (html) {\n\t\t// if multiline, indent.\n\t\tif (pretty && isLargeString(html)) {\n\t\t\thtml = '\\n' + indentChar + indent(html, indentChar);\n\t\t}\n\t\ts += html;\n\t}\n\telse if (vnode.children) {\n\t\tlet hasLarge = pretty && ~s.indexOf('\\n');\n\t\tfor (let i=0; i<vnode.children.length; i++) {\n\t\t\tlet child = vnode.children[i];\n\t\t\tif (child!=null && child!==false) {\n\t\t\t\tlet childSvgMode = nodeName==='svg' ? true : nodeName==='foreignObject' ? false : isSvgMode,\n\t\t\t\t\tret = renderToString(child, context, opts, true, childSvgMode);\n\t\t\t\tif (pretty && !hasLarge && isLargeString(ret)) hasLarge = true;\n\t\t\t\tif (ret) pieces.push(ret);\n\t\t\t}\n\t\t}\n\t\tif (pretty && hasLarge) {\n\t\t\tfor (let i=pieces.length; i--; ) {\n\t\t\t\tpieces[i] = '\\n' + indentChar + indent(pieces[i], indentChar);\n\t\t\t}\n\t\t}\n\t}\n\n\tif (pieces.length) {\n\t\ts += pieces.join('');\n\t}\n\telse if (opts && opts.xml) {\n\t\treturn s.substring(0, s.length-1) + ' />';\n\t}\n\n\tif (!isVoid) {\n\t\tif (pretty && ~s.indexOf('\\n')) s += '\\n';\n\t\ts += `</${nodeName}>`;\n\t}\n\n\treturn s;\n}\n\nfunction getComponentName(component) {\n\treturn component.displayName || component!==Function && component.name || getFallbackComponentName(component);\n}\n\nfunction getFallbackComponentName(component) {\n\tlet str = Function.prototype.toString.call(component),\n\t\tname = (str.match(/^\\s*function\\s+([^( ]+)/) || '')[1];\n\tif (!name) {\n\t\t// search for an existing indexed name for the given component:\n\t\tlet index = -1;\n\t\tfor (let i=UNNAMED.length; i--; ) {\n\t\t\tif (UNNAMED[i]===component) {\n\t\t\t\tindex = i;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\t// not found, create a new indexed name:\n\t\tif (index<0) {\n\t\t\tindex = UNNAMED.push(component) - 1;\n\t\t}\n\t\tname = `UnnamedComponent${index}`;\n\t}\n\treturn name;\n}\nrenderToString.shallowRender = shallowRender;\n\nexport default renderToString;\n\nexport {\n\trenderToString as render,\n\trenderToString,\n\tshallowRender\n};\n","import './polyfills';\nimport renderToString from './index';\nimport { indent, encodeEntities, assign } from './util';\nimport prettyFormat from 'pretty-format';\n\n\n// we have to patch in Array support, Possible issue in npm.im/pretty-format\nlet preactPlugin = {\n\ttest(object) {\n\t\treturn object && typeof object==='object' && 'nodeName' in object && 'attributes' in object && 'children' in object && !('nodeType' in object);\n\t},\n\tprint(val, print, indent) {\n\t\treturn renderToString(val, preactPlugin.context, preactPlugin.opts, true);\n\t}\n};\n\n\nlet prettyFormatOpts = {\n\tplugins: [preactPlugin]\n};\n\n\nfunction attributeHook(name, value, context, opts, isComponent) {\n\tlet type = typeof value;\n\t\n\t// Use render-to-string's built-in handling for these properties\n\tif (name==='dangerouslySetInnerHTML') return false;\n\n\t// always skip null & undefined values, skip false DOM attributes, skip functions if told to\n\tif (value==null || (type==='function' && !opts.functions)) return '';\n\n\tif (opts.skipFalseAttributes && !isComponent && (value===false || ((name==='class' || name==='style') && value===''))) return '';\n\n\tlet indentChar = typeof opts.pretty==='string' ? opts.pretty : '\\t';\n\tif (type!=='string') {\n\t\tif (type==='function' && !opts.functionNames) {\n\t\t\tvalue = 'Function';\n\t\t}\n\t\telse {\n\t\t\tpreactPlugin.context = context;\n\t\t\tpreactPlugin.opts = opts;\n\t\t\tvalue = prettyFormat(value, prettyFormatOpts);\n\t\t\tif (~value.indexOf('\\n')) {\n\t\t\t\tvalue = `${indent('\\n'+value, indentChar)}\\n`;\n\t\t\t}\n\t\t}\n\t\treturn indent(`\\n${name}={${value}}`, indentChar);\n\t}\n\treturn `\\n${indentChar}${name}=\"${encodeEntities(value)}\"`;\n}\n\n\nlet defaultOpts = {\n\tattributeHook,\n\tjsx: true,\n\txml: false,\n\tfunctions: true,\n\tfunctionNames: true,\n\tskipFalseAttributes: true,\n\tpretty: ' '\n};\n\n\nfunction renderToJsxString(vnode, context, opts, inner) {\n\topts = assign(assign({}, defaultOpts), opts || {});\n\treturn renderToString(vnode, context, opts, inner);\n}\n\nexport default renderToJsxString;\nexport { renderToJsxString as render };\n"],"names":["Symbol","let","c","s","for","e","const","IS_NON_DIMENSIONAL","encodeEntities","String","replace","indent","char","isLargeString","length","ignoreLines","indexOf","JS_TO_CSS","styleObjToCss","str","prop","val","toLowerCase","test","undefined","assign","obj","props","i","SHALLOW","shallow","UNNAMED","VOID_ELEMENTS","renderToString","render","vnode","context","opts","inner","isSvgMode","nodeName","attributes","isComponent","component","pretty","indentChar","renderRootComponent","rendered","children","defaultProps","getNodeProps","prototype","_disable","__x","componentWillMount","state","getChildContext","shallowHighOrder","displayName","Function","name","toString","call","match","index","push","getFallbackComponentName","html","attrs","Object","keys","sortAttributes","sort","v","allAttributes","class","hooked","attributeHook","__html","xml","sub","isVoid","pieces","hasLarge","child","ret","join","substring","shallowRender","preactPlugin","object","print","prettyFormatOpts","plugins","defaultOpts","value","type","functions","skipFalseAttributes","functionNames","prettyFormat","jsx","renderToJsxString"],"mappings":"6BAAA,GAAoB,mBAATA,OAAqB,CAC/BC,IAAIC,EAAI,EACR,IACCF,OAAS,SAASG,GACjB,WAAYA,KAAMD,GAEnBF,OAAOI,aAAMD,cAAUA,SAEjBE,KCPDC,IAAMC,EAAqB,yDAEvBC,WAAiBL,UAAKM,OAAON,GACtCO,QAAQ,KAAM,SACdA,QAAQ,KAAM,QACdA,QAAQ,KAAM,QACdA,QAAQ,KAAM,WAELC,WAAUR,EAAGS,UAASH,OAAON,GAAGO,QAAQ,SAAU,MAAQE,GAAQ,QAElEC,WAAiBV,EAAGW,EAAQC,UAAiBN,OAAON,GAAGW,QAAQA,GAAU,MAASC,IAA0C,IAA3BN,OAAON,GAAGa,QAAQ,QAAyC,IAA1BP,OAAON,GAAGa,QAAQ,MAEzJC,KAGC,SAASC,EAAcf,GAC7BF,IAAIkB,EAAM,GACV,IAAKlB,IAAImB,KAAQjB,EAAG,CACnBF,IAAIoB,EAAMlB,EAAEiB,GACH,MAALC,IACCF,IAAKA,GAAO,KAEhBA,GAAOF,EAAUG,KAAUH,EAAUG,GAAQA,EAAKV,QAAQ,WAAW,OAAOY,eAC5EH,GAAO,KACPA,GAAOE,EACU,iBAANA,IAAkD,IAAhCd,EAAmBgB,KAAKH,KACpDD,GAAO,MAERA,GAAO,KAGT,OAAOA,QAAOK,EAUR,SAASC,EAAOC,EAAKC,GAC3B,IAAK1B,IAAI2B,KAAKD,EAAOD,EAAIE,GAAKD,EAAMC,GACpC,OAAOF,ECzCRpB,IAAMuB,GAAYC,SAAS,GAGrBC,KAEAC,EAAgB,2EAatBC,EAAeC,OAASD,EAcxB,SAASA,EAAeE,EAAOC,EAASC,EAAMC,EAAOC,GACpD,GAAW,MAAPJ,GAA8B,kBAARA,EACzB,MAAO,GAGRlC,IAAIuC,EAAWL,EAAMK,SACpBC,EAAaN,EAAMM,WACnBC,GAAc,EACfN,EAAUA,MAGVnC,IAoJyB0C,EApJrBC,GAFJP,EAAOA,OAE4BO,OAClCC,EAAaD,GAA0B,iBAATA,EAAoBA,EAAS,KAG5D,GAAmB,iBAART,IAAqBK,EAC/B,OAAOhC,EAAe2B,GAIvB,GAAsB,mBAAXK,EAAuB,CAEjC,GADAE,GAAc,GACVL,EAAKP,UAAYQ,IAAoC,IAA3BD,EAAKS,oBAG9B,CACJ7C,IACC8C,EADGpB,EDPA,SAAsBQ,GAC5BlC,IAAI0B,EAAQF,KAAWU,EAAMM,YAC7Bd,EAAMqB,SAAWb,EAAMa,SAEvB/C,IAAIgD,EAAed,EAAMK,SAASS,aAClC,QAAmBzB,IAAfyB,EACH,IAAKhD,IAAI2B,KAAKqB,OACEzB,IAAXG,EAAMC,KACTD,EAAMC,GAAKqB,EAAarB,IAK3B,OAAOD,ECNOuB,CAAaf,GAGzB,GAAKK,EAASW,WAAgD,mBAA5BX,EAASW,UAAUjB,OAIhD,CAEJjC,IAAIC,EAAI,IAAIsC,EAASb,EAAOS,GAE5BlC,EAAEkD,SAAWlD,EAAEmD,KAAM,EACrBnD,EAAEyB,MAAQA,EACVzB,EAAEkC,QAAUA,EACRlC,EAAEoD,oBAAoBpD,EAAEoD,qBAC5BP,EAAW7C,EAAEgC,OAAOhC,EAAEyB,MAAOzB,EAAEqD,MAAOrD,EAAEkC,SAEpClC,EAAEsD,kBACLpB,EAAUX,EAAOA,KAAWW,GAAUlC,EAAEsD,yBAbzCT,EAAWP,EAASb,EAAOS,GAiB5B,OAAOH,EAAec,EAAUX,EAASC,GAA8B,IAAxBA,EAAKoB,kBAzBpDjB,GAwIuBG,EAxIKH,GAyIbkB,aAAef,IAAYgB,UAAYhB,EAAUiB,MAGnE,SAAkCjB,GACjC1C,IACC2D,GADSD,SAASR,UAAUU,SAASC,KAAKnB,GAC9BoB,MAAM,4BAA8B,IAAI,GACrD,IAAKH,EAAM,CAGV,IADA3D,IAAI+D,GAAS,EACJpC,EAAEG,EAAQjB,OAAQc,KAC1B,GAAIG,EAAQH,KAAKe,EAAW,CAC3BqB,EAAQpC,EACR,MAIEoC,EAAM,IACTA,EAAQjC,EAAQkC,KAAKtB,GAAa,GAEnCiB,EAAO,mBAAmBI,EAE3B,OAAOJ,EArBmEM,CAAyBvB,GA3GnG1C,IAAYkE,EAARhE,EAAI,GAER,GAAIsC,EAAY,CACfxC,IAAImE,EAAQC,OAAOC,KAAK7B,GAGpBJ,IAA8B,IAAtBA,EAAKkC,gBAAuBH,EAAMI,OAE9C,IAAKvE,IAAI2B,EAAE,EAAGA,EAAEwC,EAAMtD,OAAQc,IAAK,CAClC3B,IAAI2D,EAAOQ,EAAMxC,GAChB6C,EAAIhC,EAAWmB,GAChB,GAAW,aAAPA,KAEAA,EAAKG,MAAM,sBAET1B,GAAQA,EAAKqC,eAA0B,QAAPd,GAAuB,QAAPA,IAAtD,CAEA,GAAW,cAAPA,EAAoB,CACvB,GAAInB,EAAWkC,MAAO,SACtBf,EAAO,aAECrB,GAAaqB,EAAKG,MAAM,eAChCH,EAAOA,EAAKtC,cAAcZ,QAAQ,WAAY,WAGpC,UAAPkD,GAAkBa,GAAgB,iBAAJA,IACjCA,EAAIvD,EAAcuD,IAGnBxE,IAAI2E,EAASvC,EAAKwC,eAAiBxC,EAAKwC,cAAcjB,EAAMa,EAAGrC,EAASC,EAAMK,GAC9E,GAAIkC,GAAmB,KAATA,EACbzE,GAAKyE,OAIN,GAAW,4BAAPhB,EACHO,EAAOM,GAAKA,EAAEK,YAEV,IAAKL,GAAS,IAAJA,GAAa,KAAJA,IAAsB,mBAAJA,EAAgB,CACzD,MAAQ,IAAJA,GAAgB,KAAJA,IACfA,EAAIb,EAECvB,GAASA,EAAK0C,MAAK,CACvB5E,GAAK,IAAMyD,EACX,SAGFzD,GAAK,IAAIyD,OAASpD,EAAeiE,UAMpC,GAAI7B,EAAQ,CACX3C,IAAI+E,EAAM7E,EAAEO,QAAQ,SAAU,KAC1BsE,IAAM7E,IAAO6E,EAAIhE,QAAQ,MACpB4B,IAAWzC,EAAEa,QAAQ,QAAOb,GAAK,MADNA,EAAI6E,EAKzC,GADA7E,EAAI,IAAIqC,EAAWrC,MACfM,OAAO+B,GAAUuB,MAAM,oBAAqB,MAAM5D,EAEtDF,IAAIgF,EAASxE,OAAO+B,GAAUuB,MAAM/B,GAChCiD,IAAQ9E,EAAIA,EAAEO,QAAQ,KAAM,QAEhCT,IAAIiF,KACJ,GAAIf,EAECvB,GAAU/B,EAAcsD,KAC3BA,EAAO,KAAOtB,EAAalC,EAAOwD,EAAMtB,IAEzC1C,GAAKgE,OAED,GAAIhC,EAAMa,SAAU,CAExB,IADA/C,IAAIkF,EAAWvC,IAAWzC,EAAEa,QAAQ,MAC3BY,EAAE,EAAGA,EAAEO,EAAMa,SAASlC,OAAQc,IAAK,CAC3C3B,IAAImF,EAAQjD,EAAMa,SAASpB,GAC3B,GAAW,MAAPwD,IAAuB,IAARA,EAAe,CACjCnF,IACCoF,EAAMpD,EAAemD,EAAOhD,EAASC,GAAM,EADd,QAAXG,GAAqC,kBAAXA,GAAqCD,GAE9EK,IAAWuC,GAAYtE,EAAcwE,KAAMF,GAAW,GACtDE,GAAKH,EAAOjB,KAAKoB,IAGvB,GAAIzC,GAAUuC,EACb,IAAKlF,IAAI2B,EAAEsD,EAAOpE,OAAQc,KACzBsD,EAAOtD,GAAK,KAAOiB,EAAalC,EAAOuE,EAAOtD,GAAIiB,GAKrD,GAAIqC,EAAOpE,OACVX,GAAK+E,EAAOI,KAAK,SAEb,GAAIjD,GAAQA,EAAK0C,IACrB,OAAO5E,EAAEoF,UAAU,EAAGpF,EAAEW,OAAO,GAAK,MAQrC,OALKmE,IACArC,IAAWzC,EAAEa,QAAQ,QAAOb,GAAK,MACrCA,GAAK,KAAKqC,OAGJrC,EA2BR8B,EAAeuD,uBA3LMrD,EAAOC,UAAYH,EAAeE,EAAOC,EAASP,ICxBvE5B,IAAIwF,GACHlE,cAAKmE,GACJ,OAAOA,GAA0B,iBAATA,GAAqB,aAAcA,GAAU,eAAgBA,GAAU,aAAcA,KAAY,aAAcA,IAExIC,eAAMtE,EAAKsE,EAAOhF,GACjB,OAAOsB,EAAeZ,EAAKoE,EAAarD,QAASqD,EAAapD,MAAM,KAKlEuD,GACHC,SAAUJ,IAkCXxF,IAAI6F,iBA9BJ,SAAuBlC,EAAMmC,EAAO3D,EAASC,EAAMK,GAClDzC,IAAI+F,SAAcD,EAGlB,GAAW,4BAAPnC,EAAkC,OAAO,EAG7C,GAAW,MAAPmC,GAAuB,aAAPC,IAAsB3D,EAAK4D,UAAY,MAAO,GAElE,GAAI5D,EAAK6D,sBAAwBxD,KAAwB,IAARqD,IAA0B,UAAPnC,GAAyB,UAAPA,IAA2B,KAARmC,GAAc,MAAO,GAE9H9F,IAAI4C,EAAkC,iBAAdR,EAAKO,OAAoBP,EAAKO,OAAS,KAC/D,MAAW,WAAPoD,GACQ,aAAPA,GAAsB3D,EAAK8D,eAI9BV,EAAarD,QAAUA,EACvBqD,EAAapD,KAAOA,IACpB0D,EAAQK,EAAaL,EAAOH,IACjB5E,QAAQ,QAClB+E,EAAWpF,EAAO,KAAKoF,EAAOlD,UAP/BkD,EAAQ,WAUFpF,OAAYiD,OAASmC,MAAUlD,SAE3BA,EAAae,OAASpD,EAAeuF,QAMjDM,KAAK,EACLtB,KAAK,EACLkB,WAAW,EACXE,eAAe,EACfD,qBAAqB,EACrBtD,OAAQ,MAIT,SAAS0D,EAAkBnE,EAAOC,EAASC,EAAMC,GAEhD,OAAOL,EAAeE,EAAOC,EAD7BC,EAAOZ,EAAOA,KAAWqE,GAAczD,OACKC"}
|
package/package.json
CHANGED
|
@@ -1,15 +1,17 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "preact-render-to-string",
|
|
3
3
|
"amdName": "preactRenderToString",
|
|
4
|
-
"version": "3.
|
|
4
|
+
"version": "3.8.2",
|
|
5
5
|
"description": "Render JSX to an HTML string, with support for Preact components.",
|
|
6
6
|
"main": "dist/index.js",
|
|
7
|
-
"
|
|
7
|
+
"umd:main": "dist/index.js",
|
|
8
|
+
"module": "dist/index.mjs",
|
|
9
|
+
"jsnext:main": "dist/index.mjs",
|
|
8
10
|
"scripts": {
|
|
9
11
|
"build": "npm run -s transpile && npm run -s transpile:jsx && npm run -s copy-typescript-definition",
|
|
12
|
+
"transpile": "microbundle src/index.js -f es,umd --target web --external none",
|
|
13
|
+
"transpile:jsx": "microbundle src/jsx.js -o dist/jsx.js --target web --external none && microbundle dist/jsx.js -o dist/jsx.js -f cjs",
|
|
10
14
|
"copy-typescript-definition": "copyfiles -f src/index.d.ts dist",
|
|
11
|
-
"transpile": "rollup -c rollup.config.js -m ${npm_package_main}.map -f umd -n $npm_package_amdName $npm_package_jsnext_main -o $npm_package_main",
|
|
12
|
-
"transpile:jsx": "ENTRY=jsx rollup -c rollup.config.js -m dist/jsx.js.map -f umd -n $npm_package_amdName src/jsx.js -o dist/jsx.js",
|
|
13
15
|
"test": "eslint src test && mocha --compilers js:babel-register test/**/*.js",
|
|
14
16
|
"prepublish": "npm run build",
|
|
15
17
|
"release": "npm run build && git commit -am $npm_package_version && git tag $npm_package_version && git push && git push --tags && npm publish"
|
|
@@ -20,39 +22,57 @@
|
|
|
20
22
|
"universal",
|
|
21
23
|
"isomorphic"
|
|
22
24
|
],
|
|
25
|
+
"files": [
|
|
26
|
+
"src",
|
|
27
|
+
"dist",
|
|
28
|
+
"jsx.js",
|
|
29
|
+
"typings.json"
|
|
30
|
+
],
|
|
31
|
+
"eslintConfig": {
|
|
32
|
+
"extends": "developit",
|
|
33
|
+
"rules": {
|
|
34
|
+
"react/prefer-stateless-function": 0,
|
|
35
|
+
"react/jsx-no-bind": 0,
|
|
36
|
+
"react/no-danger": 0,
|
|
37
|
+
"jest/valid-expect": 0,
|
|
38
|
+
"new-cap": 0
|
|
39
|
+
}
|
|
40
|
+
},
|
|
41
|
+
"babel": {
|
|
42
|
+
"presets": [
|
|
43
|
+
"env"
|
|
44
|
+
],
|
|
45
|
+
"plugins": [
|
|
46
|
+
[
|
|
47
|
+
"transform-react-jsx",
|
|
48
|
+
{
|
|
49
|
+
"pragma": "h"
|
|
50
|
+
}
|
|
51
|
+
],
|
|
52
|
+
"transform-object-rest-spread"
|
|
53
|
+
]
|
|
54
|
+
},
|
|
23
55
|
"author": "Jason Miller <jason@developit.ca>",
|
|
24
56
|
"license": "MIT",
|
|
25
57
|
"typings": "src/index.d.ts",
|
|
26
|
-
"repository":
|
|
27
|
-
|
|
28
|
-
"url": "https://github.com/developit/preact-render-to-string.git"
|
|
29
|
-
},
|
|
30
|
-
"bugs": {
|
|
31
|
-
"url": "https://github.com/developit/preact-render-to-string/issues"
|
|
32
|
-
},
|
|
58
|
+
"repository": "developit/preact-render-to-string",
|
|
59
|
+
"bugs": "https://github.com/developit/preact-render-to-string/issues",
|
|
33
60
|
"homepage": "https://github.com/developit/preact-render-to-string",
|
|
34
61
|
"peerDependencies": {
|
|
35
62
|
"preact": "*"
|
|
36
63
|
},
|
|
37
64
|
"devDependencies": {
|
|
38
|
-
"babel-
|
|
39
|
-
"babel-
|
|
40
|
-
"babel-
|
|
41
|
-
"babel-
|
|
42
|
-
"babel-plugin-transform-react-jsx": "^6.8.0",
|
|
43
|
-
"babel-preset-es2015": "^6.9.0",
|
|
44
|
-
"babel-preset-stage-0": "^6.5.0",
|
|
45
|
-
"babel-register": "^6.9.0",
|
|
65
|
+
"babel-plugin-transform-object-rest-spread": "^6.26.0",
|
|
66
|
+
"babel-plugin-transform-react-jsx": "^6.24.1",
|
|
67
|
+
"babel-preset-env": "^1.7.0",
|
|
68
|
+
"babel-register": "^6.26.0",
|
|
46
69
|
"chai": "^3.5.0",
|
|
47
70
|
"copyfiles": "^1.2.0",
|
|
48
|
-
"eslint": "^
|
|
49
|
-
"
|
|
71
|
+
"eslint": "^4.19.1",
|
|
72
|
+
"eslint-config-developit": "^1.1.1",
|
|
73
|
+
"microbundle": "^0.6.0",
|
|
74
|
+
"mocha": "^5.2.0",
|
|
50
75
|
"preact": "^8.1.0",
|
|
51
|
-
"rollup": "^0.34.3",
|
|
52
|
-
"rollup-plugin-babel": "^2.6.1",
|
|
53
|
-
"rollup-plugin-commonjs": "^3.3.1",
|
|
54
|
-
"rollup-plugin-memory": "^1.0.0",
|
|
55
|
-
"rollup-plugin-node-resolve": "^2.0.0",
|
|
56
76
|
"sinon": "^1.17.5",
|
|
57
77
|
"sinon-chai": "^2.8.0"
|
|
58
78
|
},
|
package/src/index.js
CHANGED
|
@@ -1,28 +1,11 @@
|
|
|
1
|
-
import { objectKeys, encodeEntities,
|
|
1
|
+
import { objectKeys, encodeEntities, indent, isLargeString, styleObjToCss, assign, getNodeProps } from './util';
|
|
2
2
|
|
|
3
3
|
const SHALLOW = { shallow: true };
|
|
4
4
|
|
|
5
5
|
// components without names, kept as a hash for later comparison to return consistent UnnamedComponentXX names.
|
|
6
6
|
const UNNAMED = [];
|
|
7
7
|
|
|
8
|
-
const
|
|
9
|
-
|
|
10
|
-
const VOID_ELEMENTS = [
|
|
11
|
-
'area',
|
|
12
|
-
'base',
|
|
13
|
-
'br',
|
|
14
|
-
'col',
|
|
15
|
-
'embed',
|
|
16
|
-
'hr',
|
|
17
|
-
'img',
|
|
18
|
-
'input',
|
|
19
|
-
'link',
|
|
20
|
-
'meta',
|
|
21
|
-
'param',
|
|
22
|
-
'source',
|
|
23
|
-
'track',
|
|
24
|
-
'wbr'
|
|
25
|
-
];
|
|
8
|
+
const VOID_ELEMENTS = /^(area|base|br|col|embed|hr|img|input|link|meta|param|source|track|wbr)$/;
|
|
26
9
|
|
|
27
10
|
|
|
28
11
|
/** Render Preact JSX + Components to an HTML string.
|
|
@@ -49,8 +32,13 @@ let shallowRender = (vnode, context) => renderToString(vnode, context, SHALLOW);
|
|
|
49
32
|
|
|
50
33
|
|
|
51
34
|
/** The default export is an alias of `render()`. */
|
|
52
|
-
|
|
53
|
-
|
|
35
|
+
function renderToString(vnode, context, opts, inner, isSvgMode) {
|
|
36
|
+
if (vnode==null || typeof vnode==='boolean') {
|
|
37
|
+
return '';
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
let nodeName = vnode.nodeName,
|
|
41
|
+
attributes = vnode.attributes,
|
|
54
42
|
isComponent = false;
|
|
55
43
|
context = context || {};
|
|
56
44
|
opts = opts || {};
|
|
@@ -58,10 +46,6 @@ export default function renderToString(vnode, context, opts, inner, isSvgMode) {
|
|
|
58
46
|
let pretty = opts.pretty,
|
|
59
47
|
indentChar = typeof pretty==='string' ? pretty : '\t';
|
|
60
48
|
|
|
61
|
-
if (vnode==null || typeof vnode==='boolean') {
|
|
62
|
-
return '';
|
|
63
|
-
}
|
|
64
|
-
|
|
65
49
|
// #text nodes
|
|
66
50
|
if (typeof vnode!=='object' && !nodeName) {
|
|
67
51
|
return encodeEntities(vnode);
|
|
@@ -114,22 +98,19 @@ export default function renderToString(vnode, context, opts, inner, isSvgMode) {
|
|
|
114
98
|
v = attributes[name];
|
|
115
99
|
if (name==='children') continue;
|
|
116
100
|
|
|
117
|
-
if (name.match(/[\s\n
|
|
101
|
+
if (name.match(/[\s\n\\/='"\0<>]/)) continue;
|
|
118
102
|
|
|
119
103
|
if (!(opts && opts.allAttributes) && (name==='key' || name==='ref')) continue;
|
|
120
104
|
|
|
121
105
|
if (name==='className') {
|
|
122
|
-
if (attributes
|
|
106
|
+
if (attributes.class) continue;
|
|
123
107
|
name = 'class';
|
|
124
108
|
}
|
|
125
|
-
else if (isSvgMode && name.match(/^xlink
|
|
126
|
-
name = name.toLowerCase().replace(/^xlink
|
|
109
|
+
else if (isSvgMode && name.match(/^xlink:?./)) {
|
|
110
|
+
name = name.toLowerCase().replace(/^xlink:?/, 'xlink:');
|
|
127
111
|
}
|
|
128
112
|
|
|
129
|
-
if (name==='
|
|
130
|
-
v = hashToClassName(v);
|
|
131
|
-
}
|
|
132
|
-
else if (name==='style' && v && typeof v==='object') {
|
|
113
|
+
if (name==='style' && v && typeof v==='object') {
|
|
133
114
|
v = styleObjToCss(v);
|
|
134
115
|
}
|
|
135
116
|
|
|
@@ -162,11 +143,12 @@ export default function renderToString(vnode, context, opts, inner, isSvgMode) {
|
|
|
162
143
|
else if (pretty && ~s.indexOf('\n')) s += '\n';
|
|
163
144
|
|
|
164
145
|
s = `<${nodeName}${s}>`;
|
|
146
|
+
if (String(nodeName).match(/[\s\n\\/='"\0<>]/)) throw s;
|
|
165
147
|
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
}
|
|
148
|
+
let isVoid = String(nodeName).match(VOID_ELEMENTS);
|
|
149
|
+
if (isVoid) s = s.replace(/>$/, ' />');
|
|
169
150
|
|
|
151
|
+
let pieces = [];
|
|
170
152
|
if (html) {
|
|
171
153
|
// if multiline, indent.
|
|
172
154
|
if (pretty && isLargeString(html)) {
|
|
@@ -174,13 +156,11 @@ export default function renderToString(vnode, context, opts, inner, isSvgMode) {
|
|
|
174
156
|
}
|
|
175
157
|
s += html;
|
|
176
158
|
}
|
|
177
|
-
else {
|
|
178
|
-
let
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
let child = children[i];
|
|
183
|
-
if (!falsey(child)) {
|
|
159
|
+
else if (vnode.children) {
|
|
160
|
+
let hasLarge = ~s.indexOf('\n');
|
|
161
|
+
for (let i=0; i<vnode.children.length; i++) {
|
|
162
|
+
let child = vnode.children[i];
|
|
163
|
+
if (child!=null && child!==false) {
|
|
184
164
|
let childSvgMode = nodeName==='svg' ? true : nodeName==='foreignObject' ? false : isSvgMode,
|
|
185
165
|
ret = renderToString(child, context, opts, true, childSvgMode);
|
|
186
166
|
if (!hasLarge && pretty && isLargeString(ret)) hasLarge = true;
|
|
@@ -192,15 +172,16 @@ export default function renderToString(vnode, context, opts, inner, isSvgMode) {
|
|
|
192
172
|
pieces[i] = '\n' + indentChar + indent(pieces[i], indentChar);
|
|
193
173
|
}
|
|
194
174
|
}
|
|
195
|
-
if (pieces.length) {
|
|
196
|
-
s += pieces.join('');
|
|
197
|
-
}
|
|
198
|
-
else if (opts && opts.xml) {
|
|
199
|
-
return s.substring(0, s.length-1) + ' />';
|
|
200
|
-
}
|
|
201
175
|
}
|
|
202
176
|
|
|
203
|
-
if (
|
|
177
|
+
if (pieces.length) {
|
|
178
|
+
s += pieces.join('');
|
|
179
|
+
}
|
|
180
|
+
else if (opts && opts.xml) {
|
|
181
|
+
return s.substring(0, s.length-1) + ' />';
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
if (!isVoid) {
|
|
204
185
|
if (pretty && ~s.indexOf('\n')) s += '\n';
|
|
205
186
|
s += `</${nodeName}>`;
|
|
206
187
|
}
|
|
@@ -214,7 +195,7 @@ function getComponentName(component) {
|
|
|
214
195
|
|
|
215
196
|
function getFallbackComponentName(component) {
|
|
216
197
|
let str = Function.prototype.toString.call(component),
|
|
217
|
-
name = (str.match(/^\s*function\s+([
|
|
198
|
+
name = (str.match(/^\s*function\s+([^( ]+)/) || '')[1];
|
|
218
199
|
if (!name) {
|
|
219
200
|
// search for an existing indexed name for the given component:
|
|
220
201
|
let index = -1;
|
|
@@ -234,6 +215,7 @@ function getFallbackComponentName(component) {
|
|
|
234
215
|
}
|
|
235
216
|
renderToString.shallowRender = shallowRender;
|
|
236
217
|
|
|
218
|
+
export default renderToString;
|
|
237
219
|
|
|
238
220
|
export {
|
|
239
221
|
renderToString as render,
|
package/src/jsx.js
CHANGED
package/src/util.js
CHANGED
|
@@ -1,16 +1,5 @@
|
|
|
1
1
|
// DOM properties that should NOT have "px" added when numeric
|
|
2
|
-
export const
|
|
3
|
-
boxFlex:1, boxFlexGroup:1, columnCount:1, fillOpacity:1, flex:1, flexGrow:1,
|
|
4
|
-
flexPositive:1, flexShrink:1, flexNegative:1, fontWeight:1, lineClamp:1, lineHeight:1,
|
|
5
|
-
opacity:1, order:1, orphans:1, strokeOpacity:1, widows:1, zIndex:1, zoom:1
|
|
6
|
-
};
|
|
7
|
-
|
|
8
|
-
const ESC = {
|
|
9
|
-
'<': '<',
|
|
10
|
-
'>': '>',
|
|
11
|
-
'"': '"',
|
|
12
|
-
'&': '&'
|
|
13
|
-
};
|
|
2
|
+
export const IS_NON_DIMENSIONAL = /acit|ex(?:s|g|n|p|$)|rph|ows|mnc|ntw|ine[ch]|zoo|^ord/i;
|
|
14
3
|
|
|
15
4
|
export const objectKeys = Object.keys || (obj => {
|
|
16
5
|
let keys = [];
|
|
@@ -18,18 +7,18 @@ export const objectKeys = Object.keys || (obj => {
|
|
|
18
7
|
return keys;
|
|
19
8
|
});
|
|
20
9
|
|
|
21
|
-
export let encodeEntities = s => String(s)
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
export let memoize = (fn, mem={}) => v => mem[v] || (mem[v] = fn(v));
|
|
10
|
+
export let encodeEntities = s => String(s)
|
|
11
|
+
.replace(/&/g, '&')
|
|
12
|
+
.replace(/</g, '<')
|
|
13
|
+
.replace(/>/g, '>')
|
|
14
|
+
.replace(/"/g, '"');
|
|
28
15
|
|
|
29
16
|
export let indent = (s, char) => String(s).replace(/(\n+)/g, '$1' + (char || '\t'));
|
|
30
17
|
|
|
31
18
|
export let isLargeString = (s, length, ignoreLines) => (String(s).length>(length || 40) || (!ignoreLines && String(s).indexOf('\n')!==-1) || String(s).indexOf('<')!==-1);
|
|
32
19
|
|
|
20
|
+
const JS_TO_CSS = {};
|
|
21
|
+
|
|
33
22
|
// Convert an Object style to a CSSText string
|
|
34
23
|
export function styleObjToCss(s) {
|
|
35
24
|
let str = '';
|
|
@@ -37,10 +26,11 @@ export function styleObjToCss(s) {
|
|
|
37
26
|
let val = s[prop];
|
|
38
27
|
if (val!=null) {
|
|
39
28
|
if (str) str += ' ';
|
|
40
|
-
str += jsToCss(prop);
|
|
29
|
+
// str += jsToCss(prop);
|
|
30
|
+
str += JS_TO_CSS[prop] || (JS_TO_CSS[prop] = prop.replace(/([A-Z])/g,'-$1').toLowerCase());
|
|
41
31
|
str += ': ';
|
|
42
32
|
str += val;
|
|
43
|
-
if (typeof val==='number' &&
|
|
33
|
+
if (typeof val==='number' && IS_NON_DIMENSIONAL.test(prop)===false) {
|
|
44
34
|
str += 'px';
|
|
45
35
|
}
|
|
46
36
|
str += ';';
|
|
@@ -49,31 +39,37 @@ export function styleObjToCss(s) {
|
|
|
49
39
|
return str || undefined;
|
|
50
40
|
}
|
|
51
41
|
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
str += prop;
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
return str;
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
// Convert a JavaScript camel-case CSS property name to a CSS property name
|
|
66
|
-
export let jsToCss = memoize( s => s.replace(/([A-Z])/g,'-$1').toLowerCase() );
|
|
67
|
-
|
|
42
|
+
/**
|
|
43
|
+
* Copy all properties from `props` onto `obj`.
|
|
44
|
+
* @param {object} obj Object onto which properties should be copied.
|
|
45
|
+
* @param {object} props Object from which to copy properties.
|
|
46
|
+
* @returns {object}
|
|
47
|
+
* @private
|
|
48
|
+
*/
|
|
68
49
|
export function assign(obj, props) {
|
|
69
50
|
for (let i in props) obj[i] = props[i];
|
|
70
51
|
return obj;
|
|
71
52
|
}
|
|
72
53
|
|
|
54
|
+
/**
|
|
55
|
+
* Reconstruct Component-style `props` from a VNode.
|
|
56
|
+
* Ensures default/fallback values from `defaultProps`:
|
|
57
|
+
* Own-properties of `defaultProps` not present in `vnode.attributes` are added.
|
|
58
|
+
* @param {import('preact').VNode} vnode The VNode to get props for
|
|
59
|
+
* @returns {object} The props to use for this VNode
|
|
60
|
+
*/
|
|
73
61
|
export function getNodeProps(vnode) {
|
|
74
|
-
let
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
62
|
+
let props = assign({}, vnode.attributes);
|
|
63
|
+
props.children = vnode.children;
|
|
64
|
+
|
|
65
|
+
let defaultProps = vnode.nodeName.defaultProps;
|
|
66
|
+
if (defaultProps!==undefined) {
|
|
67
|
+
for (let i in defaultProps) {
|
|
68
|
+
if (props[i]===undefined) {
|
|
69
|
+
props[i] = defaultProps[i];
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
|
|
78
74
|
return props;
|
|
79
75
|
}
|