@bitjourney/react-from-html
Version:
Builds React elements from HTML snippets, or a safe dangerouslySetInnerHTML alternative
2 lines • 12.3 kB
JavaScript
!function(e,t){for(var r in t)e[r]=t[r]}(exports,function(e){var t={};function r(n){if(t[n])return t[n].exports;var o=t[n]={i:n,l:!1,exports:{}};return e[n].call(o.exports,o,o.exports,r),o.l=!0,o.exports}return r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)r.d(n,o,function(t){return e[t]}.bind(null,o));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=8)}([function(e,t){e.exports=require("react")},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isAttributeNameSafe=function(e){if(m.call(y,e))return!0;if(m.call(v,e))return!1;if(h.test(e))return y[e]=!0,!0;v[e]=!0,0;return!1},t.shouldIgnoreAttribute=function(e,t,r){if(null!==t)return t.type===i;if(r)return!1;if(e.length>2&&("o"===e[0]||"O"===e[0])&&("n"===e[1]||"N"===e[1]))return!0;return!1},t.shouldRemoveAttributeWithWarning=g,t.shouldRemoveAttribute=function(e,t,r,n){if(null==t)return!0;if(g(e,t,r,n))return!0;if(n)return!1;if(null!==r)switch(r.type){case l:return!t;case s:return!1===t;case c:return isNaN(t);case f:return isNaN(t)||t<1}return!1},t.getPropertyInfo=function(e){return b.hasOwnProperty(e)?b[e]:null},t.VALID_ATTRIBUTE_NAME_REGEX=t.ROOT_ATTRIBUTE_NAME=t.ID_ATTRIBUTE_NAME=t.ATTRIBUTE_NAME_CHAR=t.ATTRIBUTE_NAME_START_CHAR=t.POSITIVE_NUMERIC=t.NUMERIC=t.OVERLOADED_BOOLEAN=t.BOOLEAN=t.BOOLEANISH_STRING=t.STRING=t.RESERVED=void 0;var n;(n=r(5))&&n.__esModule;function o(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=[],n=!0,o=!1,a=void 0;try{for(var i,u=e[Symbol.iterator]();!(n=(i=u.next()).done)&&(r.push(i.value),!t||r.length!==t);n=!0);}catch(e){o=!0,a=e}finally{try{n||null==u.return||u.return()}finally{if(o)throw a}}return r}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}()}function a(e){return(a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var i=0;t.RESERVED=i;t.STRING=1;var u=2;t.BOOLEANISH_STRING=u;var l=3;t.BOOLEAN=l;var s=4;t.OVERLOADED_BOOLEAN=s;var c=5;t.NUMERIC=c;var f=6;t.POSITIVE_NUMERIC=f;var d=":A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD";t.ATTRIBUTE_NAME_START_CHAR=d;var p=d+"\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040";t.ATTRIBUTE_NAME_CHAR=p;t.ID_ATTRIBUTE_NAME="data-reactid";t.ROOT_ATTRIBUTE_NAME="data-reactroot";var h=new RegExp("^["+d+"]["+p+"]*$");t.VALID_ATTRIBUTE_NAME_REGEX=h;var m=Object.prototype.hasOwnProperty,v={},y={};function g(e,t,r,n){if(null!==r&&r.type===i)return!1;switch(a(t)){case"function":case"symbol":return!0;case"boolean":if(n)return!1;if(null!==r)return!r.acceptsBooleans;var o=e.toLowerCase().slice(0,5);return"data-"!==o&&"aria-"!==o;default:return!1}}function E(e,t,r,n,o){this.acceptsBooleans=t===u||t===l||t===s,this.attributeName=n,this.attributeNamespace=o,this.mustUseProperty=r,this.propertyName=e,this.type=t}var b={};["children","dangerouslySetInnerHTML","defaultValue","defaultChecked","innerHTML","suppressContentEditableWarning","suppressHydrationWarning","style"].forEach(function(e){b[e]=new E(e,i,!1,e,null)}),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var t=o(e,2),r=t[0],n=t[1];b[r]=new E(r,1,!1,n,null)}),["contentEditable","draggable","spellCheck","value"].forEach(function(e){b[e]=new E(e,u,!1,e.toLowerCase(),null)}),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(e){b[e]=new E(e,u,!1,e,null)}),["allowFullScreen","async","autoFocus","autoPlay","controls","default","defer","disabled","formNoValidate","hidden","loop","noModule","noValidate","open","playsInline","readOnly","required","reversed","scoped","seamless","itemScope"].forEach(function(e){b[e]=new E(e,l,!1,e.toLowerCase(),null)}),["checked","multiple","muted","selected"].forEach(function(e){b[e]=new E(e,l,!0,e,null)}),["capture","download"].forEach(function(e){b[e]=new E(e,s,!1,e,null)}),["cols","rows","size","span"].forEach(function(e){b[e]=new E(e,f,!1,e,null)}),["rowSpan","start"].forEach(function(e){b[e]=new E(e,c,!1,e.toLowerCase(),null)});var N=/[\-\:]([a-z])/g,T=function(e){return e[1].toUpperCase()};["accent-height","alignment-baseline","arabic-form","baseline-shift","cap-height","clip-path","clip-rule","color-interpolation","color-interpolation-filters","color-profile","color-rendering","dominant-baseline","enable-background","fill-opacity","fill-rule","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","glyph-name","glyph-orientation-horizontal","glyph-orientation-vertical","horiz-adv-x","horiz-origin-x","image-rendering","letter-spacing","lighting-color","marker-end","marker-mid","marker-start","overline-position","overline-thickness","paint-order","panose-1","pointer-events","rendering-intent","shape-rendering","stop-color","stop-opacity","strikethrough-position","strikethrough-thickness","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","text-anchor","text-decoration","text-rendering","underline-position","underline-thickness","unicode-bidi","unicode-range","units-per-em","v-alphabetic","v-hanging","v-ideographic","v-mathematical","vector-effect","vert-adv-y","vert-origin-x","vert-origin-y","word-spacing","writing-mode","xmlns:xlink","x-height"].forEach(function(e){var t=e.replace(N,T);b[t]=new E(t,1,!1,e,null)}),["xlink:actuate","xlink:arcrole","xlink:href","xlink:role","xlink:show","xlink:title","xlink:type"].forEach(function(e){var t=e.replace(N,T);b[t]=new E(t,1,!1,e,"http://www.w3.org/1999/xlink")}),["xml:base","xml:lang","xml:space"].forEach(function(e){var t=e.replace(N,T);b[t]=new E(t,1,!1,e,"http://www.w3.org/XML/1998/namespace")}),["tabIndex","crossOrigin"].forEach(function(e){b[e]=new E(e,1,!1,e.toLowerCase(),null)}),t.properties=b},function(e,t){e.exports=require("crypto-js/sha1")},function(e,t){e.exports=require("crypto-js/enc-hex")},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isUnitlessNumber=void 0;var n={animationIterationCount:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0};t.isUnitlessNumber=n;var o=["Webkit","ms","Moz","O"];Object.keys(n).forEach(function(e){o.forEach(function(t){n[function(e,t){return e+t.charAt(0).toUpperCase()+t.substring(1)}(t,e)]=n[e]})})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=o(r(6));o(r(7));function o(e){return e&&e.__esModule?e:{default:e}}var a=n.default;t.default=a},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=function(){};t.default=n},function(e,t,r){"use strict";var n;Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=((n=r(0))&&n.__esModule?n:{default:n}).default.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;o.hasOwnProperty("ReactCurrentDispatcher")||(o.ReactCurrentDispatcher={current:null});var a=o;t.default=a},function(e,t,r){"use strict";r.r(t);var n=r(0),o=r.n(n),a=r(1),i=r(4),u=function(e){var t="function"==typeof Symbol&&e[Symbol.iterator],r=0;return t?t.call(e):{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}}},l=function(){var e,t,r=new Map,n=Object.values(a.properties);try{for(var o=u(n),i=o.next();!i.done;i=o.next()){var l=i.value;r.set(l.attributeName.toLowerCase(),l)}}catch(t){e={error:t}}finally{try{i&&!i.done&&(t=o.return)&&t.call(o)}finally{if(e)throw e.error}}return r}();function s(e,t){return i.isUnitlessNumber[e]&&function(e){var t=Number.parseFloat(e);return Number.isFinite(t)}(t)?Number.parseFloat(t):t}function c(e){for(var t={},r=0,n=e.length;r<n;r++){var o=e[r],a=e.getPropertyValue(o),i=o.replace(/^-ms\b/,"ms").replace(/-(\w)/g,function(e,t){return t.toUpperCase()});t[i]=s(i,a)}return t}function f(e,t){switch(t){case a.BOOLEAN:return null!=e;case a.NUMERIC:case a.POSITIVE_NUMERIC:return+(e||0);default:return e}}function d(e,t){var r=t.name;if("value"===r&&("INPUT"===e.nodeName||"SELECT"===e.nodeName))return{name:"defaultValue",value:t.value};var n=l.get(r);return n?n.type===a.RESERVED?"style"===n.propertyName?{name:r,value:c(e.style)}:null:{name:n.propertyName,value:f(t.value,n.type)}:{name:r,value:t.value}}function p(e){var t=e.attributes;console.assert(t,"The element must have #attributes: "+e);for(var r={},n=0,o=t.length;n<o;n++){var a=d(e,t[n]);a&&(r[a.name]=a.value)}return r}var h=r(2),m=r.n(h),v=r(3),y=r.n(v),g=function(){return(g=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var o in t=arguments[r])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)},E=function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},b=function(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(E(arguments[t]));return e};function N(e){return y.a.stringify(m()(e))}var T=function(){function e(e){void 0===e&&(e={}),this.replace=e.replace||this.nodeToReactNode.bind(this),this.digest=e.digest||this.sha1digest.bind(this),this.domParser=e.domParser||new DOMParser}return e.prototype.sha1digest=function(e,t){return"#comment"===e.nodeName?t+"/"+e.nodeName:"#text"===e.nodeName?t+"/"+e.nodeName+"/"+N(e.data):t+"/"+e.nodeName+"/"+N(e.outerHTML)},e.prototype.elementToReactNode=function(e,t){var r={},n=[];return"#comment"===e.nodeName?null:("SCRIPT"===e.nodeName||"STYLE"===e.nodeName?e.firstChild&&(r.dangerouslySetInnerHTML={__html:e.firstChild.data}):"TEXTAREA"===e.nodeName?e.firstChild&&(r.defaultValue=e.firstChild.data):n.push.apply(n,b(this.nodesToReactNodes(e.childNodes))),o.a.createElement.apply(o.a,b([e.nodeName.toLowerCase(),g({},p(e),r,t)],n)))},e.prototype.nodeToReactNode=function(e,t){return"#text"===e.nodeName?e.data:this.elementToReactNode(e,t)},e.prototype.nodesToReactNodes=function(e){for(var t=[],r=0,n=e.length;r<n;r++){var o=this.replace(e[r],{key:this.digest(e[r],r)});t.push(o)}return t},e.prototype.parseToNodeList=function(e){var t=this.domParser.parseFromString("<body>"+e,"text/html");return this.nodesToReactNodes(t.body.childNodes)},e.prototype.parseToFragment=function(e){return console.assert(o.a.Fragment,"requires React v16 or later"),o.a.createElement.apply(o.a,b([o.a.Fragment,{}],this.parseToNodeList(e)))},e}(),O=Object(n.createContext)({parseFromString:function(){throw new Error("You must setup <DOMParserContext.Provider/>")}});var _=function(e){var t=Object(n.useContext)(O);return Object(n.useMemo)(function(){return new T({domParser:t}).parseToFragment(e.html)},[e.html])};r.d(t,"ReactFromHtml",function(){return T}),r.d(t,"RawHtml",function(){return _}),r.d(t,"DOMParserContext",function(){return O})}]));
//# sourceMappingURL=react-from-html.production.js.map