@mkhuda/dom-screenshot 0.0.2 → 1.0.1

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.
Files changed (51) hide show
  1. package/.gitattributes +1 -0
  2. package/EXAMPLES_QUICKSTART.md +240 -0
  3. package/README.md +534 -33
  4. package/TESTING.md +269 -0
  5. package/TESTING_STATUS.md +215 -0
  6. package/TEST_SETUP_SUMMARY.md +335 -0
  7. package/dist/dom-screenshot.d.ts +44 -272
  8. package/dist/dom-screenshot.d.ts.map +1 -0
  9. package/dist/dom-screenshot.esm.js +753 -0
  10. package/dist/dom-screenshot.esm.js.map +1 -0
  11. package/dist/dom-screenshot.min.js +2 -1
  12. package/dist/dom-screenshot.min.js.map +1 -0
  13. package/examples/README.md +211 -0
  14. package/examples/react-app/README.md +161 -0
  15. package/examples/react-app/index.html +12 -0
  16. package/examples/react-app/node_modules/.vite/deps/_metadata.json +46 -0
  17. package/examples/react-app/node_modules/.vite/deps/chunk-FK77NBP6.js +1895 -0
  18. package/examples/react-app/node_modules/.vite/deps/chunk-FK77NBP6.js.map +7 -0
  19. package/examples/react-app/node_modules/.vite/deps/chunk-VSODSHUF.js +21647 -0
  20. package/examples/react-app/node_modules/.vite/deps/chunk-VSODSHUF.js.map +7 -0
  21. package/examples/react-app/node_modules/.vite/deps/package.json +3 -0
  22. package/examples/react-app/node_modules/.vite/deps/react-dom.js +5 -0
  23. package/examples/react-app/node_modules/.vite/deps/react-dom.js.map +7 -0
  24. package/examples/react-app/node_modules/.vite/deps/react-dom_client.js +38 -0
  25. package/examples/react-app/node_modules/.vite/deps/react-dom_client.js.map +7 -0
  26. package/examples/react-app/node_modules/.vite/deps/react.js +4 -0
  27. package/examples/react-app/node_modules/.vite/deps/react.js.map +7 -0
  28. package/examples/react-app/node_modules/.vite/deps/react_jsx-dev-runtime.js +898 -0
  29. package/examples/react-app/node_modules/.vite/deps/react_jsx-dev-runtime.js.map +7 -0
  30. package/examples/react-app/node_modules/.vite/deps/react_jsx-runtime.js +910 -0
  31. package/examples/react-app/node_modules/.vite/deps/react_jsx-runtime.js.map +7 -0
  32. package/examples/react-app/package.json +21 -0
  33. package/examples/react-app/tsconfig.json +25 -0
  34. package/examples/react-app/tsconfig.node.json +10 -0
  35. package/examples/react-app/vite.config.ts +10 -0
  36. package/package.json +75 -43
  37. package/rollup.config.mjs +35 -0
  38. package/tests/README.md +394 -0
  39. package/tests/fixtures/html.ts +192 -0
  40. package/tests/fixtures/images.ts +86 -0
  41. package/tests/fixtures/styles.ts +288 -0
  42. package/tests/helpers/dom-helpers.ts +242 -0
  43. package/tests/mocks/canvas-mock.ts +94 -0
  44. package/tests/mocks/image-mock.ts +147 -0
  45. package/tests/mocks/xhr-mock.ts +202 -0
  46. package/tests/setup.ts +103 -0
  47. package/tests/unit/basic.test.ts +263 -0
  48. package/tests/unit/simple.test.ts +172 -0
  49. package/tsconfig.json +44 -20
  50. package/vitest.config.mts +35 -0
  51. package/rollup.config.js +0 -20
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dom-screenshot.esm.js","sources":["../src/dom-screenshot.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -1 +1,2 @@
1
- !function(){"use strict";!function(e){var t=function(){return{escapeMain:function(e){return e.replace(/([.*+?^${}()|\[\]\/\\])/g,"\\$1")},parseExtension:t,mimeType:function(e){var n=t(e).toLowerCase();return(r="application/font-woff",o="image/jpeg",{woff:r,woff2:r,ttf:"application/font-truetype",eot:"application/vnd.ms-fontobject",png:"image/png",jpg:o,jpeg:o,gif:"image/gif",tiff:"image/tiff",svg:"image/svg+xml"})[n]||"";var r,o},dataAsUrl:function(e,t){return"data:"+t+";base64,"+e},isDataUrl:function(e){return-1!==e.search(/^(data:)/)},canvasToBlob:function(e){return e.toBlob?new Promise((function(t){e.toBlob(t)})):function(e){return new Promise((function(t){for(var n=window.atob(e.toDataURL().split(",")[1]),r=n.length,o=new Uint8Array(r),i=0;i<r;i++)o[i]=n.charCodeAt(i);t(new Blob([o],{type:"image/png"}))}))}(e)},resolveUrl:function(e,t){var n=document.implementation.createHTMLDocument(),r=n.createElement("base");n.head.appendChild(r);var o=n.createElement("a");return n.body.appendChild(o),r.href=t,o.href=e,o.href},getAndEncode:function(e){var t=3e4;u.impl.options.cacheBust&&(e+=(/\?/.test(e)?"&":"?")+(new Date).getTime());return new Promise((function(n){var r,o=new XMLHttpRequest;if(o.onreadystatechange=a,o.ontimeout=c,o.responseType="blob",o.timeout=t,o.open("GET",e,!0),o.send(),u.impl.options.imagePlaceholder){var i=u.impl.options.imagePlaceholder.split(/,/);i&&i[1]&&(r=i[1])}function a(){if(4===o.readyState)if(200===o.status){var t=new FileReader;t.onloadend=function(){var e=t.result.split(/,/)[1];n(e)},t.readAsDataURL(o.response)}else r?n(r):l("cannot fetch resource: "+e+", status: "+o.status)}function c(){r?n(r):l("timeout of "+t+"ms occured while fetching resource: "+e)}function l(e){console.error(e),n("")}}))},uid:(e=0,function(){return"u"+t()+e++;function t(){return("0000"+(Math.random()*Math.pow(36,4)<<0).toString(36)).slice(-4)}}),delay:function(e){return function(t){return new Promise((function(n){setTimeout((function(){n(t)}),e)}))}},asArray:function(e){for(var t=[],n=e.length,r=0;r<n;r++)t.push(e[r]);return t},escapeXhtml:function(e){return e.replace(/#/g,"%23").replace(/\n/g,"%0A")},makeImage:function(e){return new Promise((function(t,n){var r=new Image;r.onload=function(){t(r)},r.onerror=n,r.src=e}))},width:function(e){var t=n(e,"border-left-width"),r=n(e,"border-right-width");return e.scrollWidth+t+r},height:function(e){var t=n(e,"border-top-width"),r=n(e,"border-bottom-width");return e.scrollHeight+t+r}};var e;function t(e){var t=/\.([^\.\/]*?)$/g.exec(e);return t?t[1]:""}function n(e,t){var n=window.getComputedStyle(e).getPropertyValue(t);return parseFloat(n.replace("px",""))}}(),n=function(){var e=/url\(['"]?([^'"]+?)['"]?\)/g;return{inlineAll:function(e,t,i){return u()?Promise.resolve(e):Promise.resolve(e).then(r).then((function(n){var r=Promise.resolve(e);return n.forEach((function(e){r=r.then((function(n){return o(n,e,t,i)}))})),r}));function u(){return!n(e)}},shouldProcess:n,impl:{readUrls:r,inline:o}};function n(t){return-1!==t.search(e)}function r(n){for(var r,o=[];null!==(r=e.exec(n));)o.push(r[1]);return o.filter((function(e){return!t.isDataUrl(e)}))}function o(e,n,r,o){return Promise.resolve(n).then((function(e){return r?t.resolveUrl(e,r):e})).then(o||t.getAndEncode).then((function(e){return t.dataAsUrl(e,t.mimeType(n))})).then((function(r){return e.replace(function(e){return new RegExp("(url\\(['\"]?)("+t.escapeMain(e)+")(['\"]?\\))","g")}(n),"$1"+r+"$3")}))}}(),r=function(){return{resolveAll:function(){return e().then((function(e){return Promise.all(e.map((function(e){return e.resolve()})))})).then((function(e){return e.join("\n")}))},impl:{readAll:e}};function e(){return Promise.resolve(t.asArray(document.styleSheets)).then((function(e){var n=[];return e.forEach((function(e){try{t.asArray(e.cssRules||[]).forEach(n.push.bind(n))}catch(t){console.log("Error while reading CSS rules from "+e.href,t.toString())}})),n})).then((function(e){return e.filter((function(e){return e.type===CSSRule.FONT_FACE_RULE})).filter((function(e){return n.shouldProcess(e.style.getPropertyValue("src"))}))})).then((function(t){return t.map(e)}));function e(e){return{resolve:function(){var t=(e.parentStyleSheet||{}).href;return n.inlineAll(e.cssText,t)},src:function(){return e.style.getPropertyValue("src")}}}}}(),o=function(){return{inlineAll:function r(o){return o instanceof Element?i(o).then((function(){return o instanceof HTMLImageElement?e(o).inline():Promise.all(t.asArray(o.childNodes).map((function(e){return r(e)})))})):Promise.resolve(o);function i(e){var t=e.style.getPropertyValue("background");return t?n.inlineAll(t).then((function(t){e.style.setProperty("background",t,e.style.getPropertyPriority("background"))})).then((function(){return e})):Promise.resolve(e)}},impl:{newImage:e}};function e(e){return{inline:function(n){return t.isDataUrl(e.src)?Promise.resolve():Promise.resolve(e.src).then(n||t.getAndEncode).then((function(n){return t.dataAsUrl(n,t.mimeType(e.src))})).then((function(t){return new Promise((function(n,r){e.onload=n,e.onerror=r,e.src=t}))}))}}}}(),i={imagePlaceholder:void 0,cacheBust:!1},u={toSvg:a,toPng:function(e,t){return c(e,t||{}).then((function(e){return e.toDataURL()}))},toJpeg:function(e,t){return c(e,t=t||{}).then((function(e){return e.toDataURL("image/jpeg",t.quality||1)}))},toBlob:function(e,n){return c(e,n||{}).then(t.canvasToBlob)},toPixelData:function(e,n){return c(e,n||{}).then((function(n){return n.getContext("2d").getImageData(0,0,t.width(e),t.height(e)).data}))},impl:{fontFaces:r,images:o,util:t,inliner:n,options:{}}};function a(e,n){return function(e){void 0===e.imagePlaceholder?u.impl.options.imagePlaceholder=i.imagePlaceholder:u.impl.options.imagePlaceholder=e.imagePlaceholder;void 0===e.cacheBust?u.impl.options.cacheBust=i.cacheBust:u.impl.options.cacheBust=e.cacheBust}(n=n||{}),Promise.resolve(e).then((function(e){return l(e,n.filter,!0)})).then(s).then(f).then((function(e){n.bgcolor&&(e.style.backgroundColor=n.bgcolor);n.width&&(e.style.width=n.width+"px");n.height&&(e.style.height=n.height+"px");n.style&&Object.keys(n.style).forEach((function(t){e.style[t]=n.style[t]}));return e})).then((function(r){return function(e,t,n){return Promise.resolve(e).then((function(e){return e.setAttribute("xmlns","http://www.w3.org/1999/xhtml"),(new XMLSerializer).serializeToString(e)})).then((function(e){return'<foreignObject x="0" y="0" width="100%" height="100%">'+e+"</foreignObject>"})).then((function(e){return'<svg xmlns="http://www.w3.org/2000/svg" width="'+t+'" height="'+n+'">'+e+"</svg>"})).then((function(e){return"data:image/svg+xml;charset=utf-8,"+encodeURIComponent(e)}))}(r,n.width||t.width(e),n.height||t.height(e))}))}function c(e,n){return a(e,n).then(t.makeImage).then(t.delay(100)).then((function(r){var o=function(e){var r=document.createElement("canvas");if(r.width=n.width||t.width(e),r.height=n.height||t.height(e),n.bgcolor){var o=r.getContext("2d");o.fillStyle=n.bgcolor,o.fillRect(0,0,r.width,r.height)}return r}(e);return o.getContext("2d").drawImage(r,0,0),o}))}function l(e,n,r){return r||!n||n(e)?Promise.resolve(e).then((function(e){return e instanceof HTMLCanvasElement?t.makeImage(e.toDataURL()):e.cloneNode(!1)})).then((function(r){return function(e,n,r){var o=e.childNodes;return 0===o.length?Promise.resolve(n):i(n,t.asArray(o),r).then((function(){return n}));function i(e,t,n){var r=Promise.resolve();return t.forEach((function(t){r=r.then((function(){return l(t,n)})).then((function(t){t&&e.appendChild(t)}))})),r}}(e,r,n)})).then((function(n){return function(e,n){var r=n;return r instanceof Element?Promise.resolve().then(o).then(i).then(u).then(a).then(c).then((function(){return r})):r;function o(){if(r instanceof HTMLVideoElement){var t=window.getComputedStyle(e),n=document.createElement("canvas");n.width=parseInt(t.width,10),n.height=parseInt(t.height,10);var o=Math.max(e.videoWidth/n.width,e.videoHeight/n.height),i=e.videoWidth/o,u=e.videoHeight/o,a=n.width/2-i/2,c=n.height/2-u/2;n.getContext("2d").drawImage(e,a,c,i,u),r=new Image;try{r.src=n.toDataURL()}catch(e){r.src="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw=="}}}function i(){function n(e,n){function r(e,n){t.asArray(e).forEach((function(t){n.setProperty(t,e.getPropertyValue(t),e.getPropertyPriority(t))}))}e.cssText?n.cssText=e.cssText:r(e,n)}n(window.getComputedStyle(e),r.style)}function u(){function n(n){var o=window.getComputedStyle(e,n),i=o.getPropertyValue("content");if(""!==i&&"none"!==i){var u=t.uid();r.className=r.className+" "+u;var a=document.createElement("style");a.appendChild(c(u,n,o)),r.appendChild(a)}function c(e,n,r){var o="."+e+":"+n,i=r.cssText?u(r):a(r);return document.createTextNode(o+"{"+i+"}");function u(e){var t=e.getPropertyValue("content");return e.cssText+" content: "+t+";"}function a(e){return t.asArray(e).map(n).join("; ")+";";function n(t){return t+": "+e.getPropertyValue(t)+(e.getPropertyPriority(t)?" !important":"")}}}}[":before",":after"].forEach((function(e){n(e)}))}function a(){e instanceof HTMLTextAreaElement&&(r.innerHTML=e.value),e instanceof HTMLInputElement&&r.setAttribute("value",e.value)}function c(){r instanceof SVGElement&&(r.setAttribute("xmlns","http://www.w3.org/2000/svg"),r instanceof SVGRectElement&&["width","height"].forEach((function(e){var t=r.getAttribute(e);t&&r.style.setProperty(e,t)})))}}(e,n)})):Promise.resolve()}function s(e){return r.resolveAll().then((function(t){var n=document.createElement("style");return e.appendChild(n),n.appendChild(document.createTextNode(t)),e}))}function f(e){return o.inlineAll(e).then((function(){return e}))}"undefined"!=typeof module?module.exports=u:e.domtoimage=u}(void 0)}();
1
+ var domtoimage=function(e){"use strict";const t={imagePlaceholder:void 0,cacheBust:!1},n={toSvg:r,toPng:o,toJpeg:i,toBlob:l,toPixelData:s,impl:{}};function r(e,r){return function(e){void 0===e.imagePlaceholder?n.impl.options.imagePlaceholder=t.imagePlaceholder:n.impl.options.imagePlaceholder=e.imagePlaceholder;void 0===e.cacheBust?n.impl.options.cacheBust=t.cacheBust:n.impl.options.cacheBust=e.cacheBust}(r=r||{}),Promise.resolve(e).then(e=>a(e,r.filter,!0)).then(u).then(h).then(function(e){if(!(e instanceof Element))return e;r.bgcolor&&(e.style.backgroundColor=r.bgcolor);r.width&&(e.style.width=r.width+"px");r.height&&(e.style.height=r.height+"px");if(r.style){const t=r.style;Object.keys(t).forEach(n=>{e.style[n]=t[n]})}return e}).then(e=>{const t=n.impl.util;return function(e,t,r){return n.impl.util,Promise.resolve(e).then(e=>(e.setAttribute("xmlns","http://www.w3.org/1999/xhtml"),(new XMLSerializer).serializeToString(e))).then(e=>'<foreignObject x="0" y="0" width="100%" height="100%">'+e+"</foreignObject>").then(e=>'<svg xmlns="http://www.w3.org/2000/svg" width="'+t+'" height="'+r+'">'+e+"</svg>").then(e=>"data:image/svg+xml;charset=utf-8,"+encodeURIComponent(e))}(e,r.width||t.width(e),r.height||t.height(e))})}function o(e,t){return c(e,t||{}).then(e=>e.toDataURL())}function i(e,t){return c(e,t=t||{}).then(e=>e.toDataURL("image/jpeg",t.quality||1))}function l(e,t){return c(e,t||{}).then(e=>n.impl.util.canvasToBlob(e))}function s(e,t){return c(e,t||{}).then(t=>{const r=n.impl.util;return t.getContext("2d").getImageData(0,0,r.width(e),r.height(e)).data})}function c(e,t){return r(e,t).then(e=>n.impl.util.makeImage(e)).then(e=>n.impl.util.delay(100)(e)).then(r=>{const o=function(e){const r=n.impl.util,o=document.createElement("canvas");if(o.width=t.width||r.width(e),o.height=t.height||r.height(e),t.bgcolor){const e=o.getContext("2d");e.fillStyle=t.bgcolor,e.fillRect(0,0,o.width,o.height)}return o}(e);return o.getContext("2d").drawImage(r,0,0),o})}function a(e,t,r){if(!r&&t&&!t(e))return Promise.resolve(void 0);const o=n.impl.util;return Promise.resolve(e).then(function(e){return e instanceof HTMLCanvasElement?o.makeImage(e.toDataURL()):e.cloneNode(!1)}).then(n=>function(e,t,n){if(!t)return Promise.resolve(t);const r=e.childNodes;return 0===r.length?Promise.resolve(t):i(t,o.asArray(r),n).then(()=>t);function i(e,t,n){let r=Promise.resolve();return t.forEach(t=>{r=r.then(()=>a(t,n)).then(t=>{t&&e.appendChild(t)})}),r}}(e,n,t)).then(t=>function(e,t){if(!t)return Promise.resolve(t);if(!(t instanceof Element))return Promise.resolve(t);const r=t;return Promise.resolve().then(o).then(i).then(l).then(s).then(c).then(()=>r);function o(){if(!(r instanceof HTMLVideoElement))return;const t=window.getComputedStyle(e),n=document.createElement("canvas");n.width=parseInt(t.width,10),n.height=parseInt(t.height,10);const o=Math.max(e.videoWidth/n.width,e.videoHeight/n.height),i=e.videoWidth/o,l=e.videoHeight/o,s=n.width/2-i/2,c=n.height/2-l/2;n.getContext("2d").drawImage(e,s,c,i,l);const a=new Image;try{a.src=n.toDataURL()}catch(e){a.src="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw=="}const u=r.parentNode;u&&u.replaceChild(a,r)}function i(){function t(e,t){function r(e,t){n.impl.util.asArray(e).forEach(n=>{t.setProperty(n,e.getPropertyValue(n),e.getPropertyPriority(n))})}e.cssText?t.cssText=e.cssText:r(e,t)}t(window.getComputedStyle(e),r.style)}function l(){function t(t){const o=window.getComputedStyle(e,t),i=o.getPropertyValue("content");if(""===i||"none"===i)return;const l=n.impl.util.uid();r.className=r.className+" "+l;const s=document.createElement("style");function c(e,t,r){const o="."+e+":"+t,i=r.cssText?l(r):s(r);return document.createTextNode(o+"{"+i+"}");function l(e){const t=e.getPropertyValue("content");return e.cssText+" content: "+t+";"}function s(e){return n.impl.util.asArray(e).map(e=>t(e)).join("; ")+";";function t(t){return t+": "+e.getPropertyValue(t)+(e.getPropertyPriority(t)?" !important":"")}}}s.appendChild(c(l,t,o)),r.appendChild(s)}[":before",":after"].forEach(e=>{t(e)})}function s(){e instanceof HTMLTextAreaElement&&(r.innerHTML=e.value),e instanceof HTMLInputElement&&r.setAttribute("value",e.value)}function c(){r instanceof SVGElement&&(r.setAttribute("xmlns","http://www.w3.org/2000/svg"),r instanceof SVGRectElement&&["width","height"].forEach(e=>{const t=r.getAttribute(e);t&&r.style.setProperty(e,t)}))}}(e,t))}function u(e){return n.impl.fontFaces.resolveAll().then(t=>{const n=document.createElement("style");return e.appendChild(n),n.appendChild(document.createTextNode(t)),e})}function h(e){return n.impl.images.inlineAll(e).then(()=>e)}return Object.assign(n.impl,{fontFaces:function(){return{resolveAll:function(){return e().then(e=>Promise.all(e.map(e=>e.resolve()))).then(e=>e.join("\n"))},impl:{readAll:e}};function e(){const e=n.impl.util;return Promise.resolve(e.asArray(document.styleSheets)).then(function(t){const n=[];return(Array.isArray(t)?t:e.asArray(t)).forEach(t=>{try{e.asArray(t.cssRules||[]).forEach(e=>{n.push(e)})}catch(e){console.log("Error while reading CSS rules from "+t.href,e.toString())}}),n}).then(function(e){const t=n.impl.inliner;return e.filter(e=>e.type===CSSRule.FONT_FACE_RULE).filter(e=>t.shouldProcess(e.style.getPropertyValue("src")))}).then(e=>e.map(t));function t(e){return{resolve(){const t=e.parentStyleSheet?.href;return n.impl.inliner.inlineAll(e.cssText,t)},src:()=>e.style.getPropertyValue("src")}}}}(),images:function(){return{inlineAll:function t(r){if(!(r instanceof Element))return Promise.resolve(r);const o=n.impl.util;return i(r).then(()=>r instanceof HTMLImageElement?e(r).inline():Promise.all(o.asArray(r.childNodes).map(e=>t(e))).then(()=>{}));function i(e){const t=e.style?.getPropertyValue("background");if(!t)return Promise.resolve(void 0);return n.impl.inliner.inlineAll(t).then(t=>{e.style.setProperty("background",t,e.style.getPropertyPriority("background"))}).then(()=>{})}},impl:{newImage:e}};function e(e){return{inline:function(t){const r=n.impl.util;return r.isDataUrl(e.src)?Promise.resolve():Promise.resolve(e.src).then(e=>(t||r.getAndEncode)(e)).then(t=>r.dataAsUrl(t,r.mimeType(e.src))).then(t=>new Promise((n,r)=>{e.onload=()=>{n()},e.onerror=()=>{r(new Error(`Failed to load image: ${e.src}`))},e.src=t}))}}}}(),util:function(){const e=3e4;return{escapeMain:function(e){return e.replace(/([.*+?^${}()|[\]\/\\])/g,"\\$1")},parseExtension:t,mimeType:function(e){const n=t(e).toLowerCase();return function(){const e="application/font-woff",t="image/jpeg";return{woff:e,woff2:e,ttf:"application/font-truetype",eot:"application/vnd.ms-fontobject",png:"image/png",jpg:t,jpeg:t,gif:"image/gif",tiff:"image/tiff",svg:"image/svg+xml"}}()[n]||""},dataAsUrl:function(e,t){return"data:"+t+";base64,"+e},isDataUrl:function(e){return-1!==e.search(/^(data:)/)},canvasToBlob:function(e){if(e.toBlob)return new Promise(t=>{e.toBlob(e=>{t(e)})});return function(e){return new Promise(t=>{const n=window.atob(e.toDataURL().split(",")[1]),r=n.length,o=new Uint8Array(r);for(let e=0;e<r;e++)o[e]=n.charCodeAt(e);t(new Blob([o],{type:"image/png"}))})}(e)},resolveUrl:function(e,t){const n=document.implementation.createHTMLDocument(),r=n.createElement("base");n.head.appendChild(r);const o=n.createElement("a");return n.body.appendChild(o),r.href=t,o.href=e,o.href},getAndEncode:function(t){n.impl.options.cacheBust&&(t+=(/\?/.test(t)?"&":"?")+(new Date).getTime());return new Promise(r=>{const o=new XMLHttpRequest;let i;if(o.onreadystatechange=l,o.ontimeout=s,o.responseType="blob",o.timeout=e,o.open("GET",t,!0),o.send(),n.impl.options.imagePlaceholder){const e=n.impl.options.imagePlaceholder.split(/,/);e&&e[1]&&(i=e[1])}function l(){if(4!==o.readyState)return;if(200!==o.status)return void(i?r(i):c("cannot fetch resource: "+t+", status: "+o.status));const e=new FileReader;e.onloadend=()=>{const t=e.result.split(/,/)[1];r(t)},e.readAsDataURL(o.response)}function s(){i?r(i):c("timeout of 30000ms occured while fetching resource: "+t)}function c(e){console.error(e),r("")}})},uid:function(){let e=0;return function(){return"u"+t()+e++;function t(){return("0000"+(Math.random()*Math.pow(36,4)|0).toString(36)).slice(-4)}}}(),delay:function(e){return t=>new Promise(n=>{setTimeout(()=>{n(t)},e)})},asArray:function(e){const t=[],n=e.length;for(let r=0;r<n;r++)t.push(e[r]);return t},escapeXhtml:function(e){return e.replace(/#/g,"%23").replace(/\n/g,"%0A")},makeImage:function(e){return new Promise((t,n)=>{const r=new Image;r.onload=()=>{t(r)},r.onerror=()=>{n(new Error(`Failed to load image: ${e}`))},r.src=e})},width:function(e){const t=r(e,"border-left-width"),n=r(e,"border-right-width");return e.scrollWidth+t+n},height:function(e){const t=r(e,"border-top-width"),n=r(e,"border-bottom-width");return e.scrollHeight+t+n}};function t(e){const t=/\.([^\.\\/]*?)$/g.exec(e);return t?t[1]:""}function r(e,t){const n=window.getComputedStyle(e).getPropertyValue(t);return parseFloat(n.replace("px",""))}}(),inliner:function(){const e=/url\(['"]?([^'"]+?)['"]?\)/g,t=n.impl.util;return{inlineAll:function(e,t,n){return l()?Promise.resolve(e):Promise.resolve(e).then(()=>o(e)).then(r=>{let o=Promise.resolve(e);return r.forEach(e=>{o=o.then(r=>i(r,e,t,n))}),o});function l(){return!r(e)}},shouldProcess:r,impl:{readUrls:o,inline:i}};function r(t){return-1!==t.search(e)}function o(n){const r=[];let o;for(;null!==(o=e.exec(n));)r.push(o[1]);return r.filter(e=>!t.isDataUrl(e))}function i(e,n,r,o){return Promise.resolve(n).then(e=>r?t.resolveUrl(e,r):e).then(e=>(o||t.getAndEncode)(e)).then(e=>t.dataAsUrl(e,t.mimeType(n))).then(r=>e.replace(function(e){return new RegExp("(url\\(['\"]?)("+t.escapeMain(e)+")(['\"]?\\))","g")}(n),"$1"+r+"$3"))}}(),options:{}}),e.domtoimage=n,e.toBlob=l,e.toJpeg=i,e.toPixelData=s,e.toPng=o,e.toSvg=r,e}({});
2
+ //# sourceMappingURL=dom-screenshot.min.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dom-screenshot.min.js","sources":["../src/dom-screenshot.ts"],"sourcesContent":[null],"names":["defaultOptions","imagePlaceholder","undefined","cacheBust","domtoimage","toSvg","toPng","toJpeg","toBlob","toPixelData","impl","node","options","copyOptions","Promise","resolve","then","cloneNode","filter","embedFonts","inlineImages","clone","Element","bgcolor","style","backgroundColor","width","height","styleObj","Object","keys","forEach","property","util","setAttribute","XMLSerializer","serializeToString","xhtml","foreignObject","svg","encodeURIComponent","makeSvgDataUri","draw","canvas","toDataURL","quality","canvasToBlob","getContext","getImageData","data","domNode","svgUri","makeImage","image","delay","document","createElement","ctx","fillStyle","fillRect","newCanvas","drawImage","root","HTMLCanvasElement","original","children","childNodes","length","cloneChildrenInOrder","asArray","parent","done","child","childClone","appendChild","cloneChildren","originalClone","renderVideo","cloneStyle","clonePseudoElements","copyUserInput","fixSvg","HTMLVideoElement","dimensions","window","getComputedStyle","parseInt","ratio","Math","max","videoWidth","videoHeight","x","y","newImage","Image","src","err","parentClone","parentNode","replaceChild","copyStyle","source","target","copyProperties","name","setProperty","getPropertyValue","getPropertyPriority","cssText","clonePseudoElement","element","content","className","uid","styleElement","formatPseudoElementStyle","selector","formatCssText","formatCssProperties","createTextNode","map","formatProperty","join","HTMLTextAreaElement","innerHTML","value","HTMLInputElement","SVGElement","SVGRectElement","attribute","getAttribute","processClone","fontFaces","resolveAll","styleNode","images","inlineAll","assign","readAll","webFonts","all","webFont","cssStrings","styleSheets","cssRules","Array","isArray","sheet","rule","push","e","console","log","href","toString","inliner","type","CSSRule","FONT_FACE_RULE","shouldProcess","rules","newWebFont","webFontRule","baseUrl","parentStyleSheet","newFontFaces","inlineBackground","HTMLImageElement","inline","background","inlined","get","isDataUrl","getAndEncode","dataAsUrl","mimeType","dataUrl","reject","onload","onerror","Error","newImages","TIMEOUT","escapeMain","string","replace","parseExtension","url","extension","toLowerCase","WOFF","JPEG","woff","woff2","ttf","eot","png","jpg","jpeg","gif","tiff","mimes","search","blob","binaryString","atob","split","binaryArray","Uint8Array","i","charCodeAt","Blob","resolveUrl","doc","implementation","createHTMLDocument","base","head","a","body","test","Date","getTime","request","XMLHttpRequest","placeholder","onreadystatechange","ontimeout","timeout","responseType","open","send","readyState","status","fail","encoder","FileReader","onloadend","result","readAsDataURL","response","message","error","index","fourRandomChars","random","pow","slice","ms","arg","setTimeout","arrayLike","array","escapeXhtml","uri","leftBorder","px","rightBorder","scrollWidth","topBorder","bottomBorder","scrollHeight","match","exec","styleProperty","parseFloat","newUtil","URL_REGEX","nothingToInline","readUrls","urls","str","RegExp","urlAsRegex","newInliner"],"mappings":"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"}
@@ -0,0 +1,211 @@
1
+ # dom-screenshot Examples
2
+
3
+ This directory contains example applications demonstrating how to use the `@mkhuda/dom-screenshot` library in real-world scenarios.
4
+
5
+ ## Available Examples
6
+
7
+ ### React App Example
8
+
9
+ A modern React application built with **Vite** and **React 18.3.1** that demonstrates:
10
+
11
+ - 📸 Capturing DOM elements as SVG, PNG, and JPEG
12
+ - 🎨 Beautiful, responsive UI with modern styling
13
+ - 💾 Automatic file download after capture
14
+ - 🔄 Live preview of captured screenshots
15
+ - ⚡ Fast development and build times with Vite
16
+
17
+ **Location:** `react-app/`
18
+
19
+ **Quick Start:**
20
+ ```bash
21
+ cd react-app
22
+ npm install
23
+ npm run dev
24
+ ```
25
+
26
+ The app will open at `http://localhost:5173`
27
+
28
+ ---
29
+
30
+ ## Features Demonstrated
31
+
32
+ ### 1. SVG Capture
33
+ - Vector-based output
34
+ - Smallest file size
35
+ - Perfect for UI elements and icons
36
+ - Scalable without quality loss
37
+
38
+ ```tsx
39
+ const svg = await domtoimage.toSvg(element);
40
+ ```
41
+
42
+ ### 2. PNG Capture
43
+ - High-quality raster image
44
+ - Lossless compression
45
+ - Best for complex designs with gradients
46
+ - Larger file size than JPEG
47
+
48
+ ```tsx
49
+ const png = await domtoimage.toPng(element);
50
+ ```
51
+
52
+ ### 3. JPEG Capture
53
+ - Compressed raster image
54
+ - Smaller file size than PNG
55
+ - Good for photographs
56
+ - Lossy compression
57
+
58
+ ```tsx
59
+ const jpeg = await domtoimage.toJpeg(element);
60
+ ```
61
+
62
+ ---
63
+
64
+ ## Real-World Use Cases
65
+
66
+ The React example shows how to implement:
67
+
68
+ 1. **Export Feature** - Let users download rendered content
69
+ 2. **Report Generation** - Create visual reports from UI
70
+ 3. **Screenshot Tool** - Build screenshot applications
71
+ 4. **Social Media** - Generate shareable images
72
+ 5. **Documentation** - Auto-generate visual documentation
73
+
74
+ ---
75
+
76
+ ## Project Structure
77
+
78
+ ```
79
+ examples/
80
+ ├── README.md (this file)
81
+ └── react-app/
82
+ ├── src/
83
+ │ ├── App.tsx # Main app component
84
+ │ ├── App.css # Styling
85
+ │ ├── main.tsx # React entry
86
+ │ ├── index.css # Global styles
87
+ │ └── components/
88
+ │ ├── Card.tsx # Card component
89
+ │ └── ScreenshotButton.tsx # Button component
90
+ ├── index.html # HTML entry point
91
+ ├── vite.config.ts # Vite configuration
92
+ ├── tsconfig.json # TypeScript config
93
+ ├── package.json # Dependencies
94
+ └── README.md # Detailed docs
95
+ ```
96
+
97
+ ---
98
+
99
+ ## Running from Root
100
+
101
+ From the root `dom-screenshot` directory:
102
+
103
+ ```bash
104
+ # Start the React example in development mode
105
+ npm run example:dev
106
+
107
+ # Build the React example
108
+ npm run example:build
109
+ ```
110
+
111
+ ---
112
+
113
+ ## Technologies Used
114
+
115
+ - **React 18.3.1** - Latest React
116
+ - **Vite 7.2.2** - Lightning-fast build tool
117
+ - **TypeScript** - Type safety
118
+ - **CSS Grid & Flexbox** - Modern layouts
119
+ - **@mkhuda/dom-screenshot** - The star! ⭐
120
+
121
+ ---
122
+
123
+ ## Key Features to Try
124
+
125
+ 1. **Multi-format Capture**
126
+ - Try capturing the same element in different formats
127
+ - Compare file sizes and quality
128
+
129
+ 2. **Complex Elements**
130
+ - The example includes gradient backgrounds, shadows, and colors
131
+ - Shows that dom-screenshot preserves all CSS styling
132
+
133
+ 3. **Batch Processing**
134
+ - Capture multiple times and see the preview gallery
135
+ - Download any captured screenshot
136
+
137
+ 4. **Responsive Design**
138
+ - Try on different screen sizes
139
+ - The app is fully responsive
140
+
141
+ ---
142
+
143
+ ## Tips for Your Own Project
144
+
145
+ ### 1. Error Handling
146
+ ```tsx
147
+ try {
148
+ const svg = await domtoimage.toSvg(element);
149
+ // Use svg...
150
+ } catch (error) {
151
+ console.error('Capture failed:', error);
152
+ }
153
+ ```
154
+
155
+ ### 2. Performance
156
+ - For large elements, use SVG first (faster)
157
+ - Cache the element reference with `useRef`
158
+ - Provide loading feedback during capture
159
+
160
+ ### 3. File Downloads
161
+ ```tsx
162
+ const link = document.createElement('a');
163
+ link.href = dataUrl;
164
+ link.download = 'screenshot.png';
165
+ link.click();
166
+ ```
167
+
168
+ ### 4. Choose the Right Format
169
+ | Format | Best For | Size | Speed |
170
+ |--------|----------|------|-------|
171
+ | SVG | UI/Simple | Smallest | Fastest |
172
+ | PNG | General | Medium | Medium |
173
+ | JPEG | Photos | Smallest | Slow |
174
+
175
+ ---
176
+
177
+ ## Troubleshooting
178
+
179
+ **Issue: Canvas-related errors in tests**
180
+ - SVG capture should work fine in jsdom
181
+ - PNG/JPEG may need browser environment
182
+ - Use try-catch blocks
183
+
184
+ **Issue: Styles not captured**
185
+ - Ensure all styles are inline or in `<style>` tags
186
+ - External stylesheets may not be included
187
+ - Use `window.getComputedStyle()` to debug
188
+
189
+ **Issue: Performance**
190
+ - Break large captures into sections
191
+ - Use SVG for UI elements
192
+ - Use PNG/JPEG for complex content
193
+
194
+ ---
195
+
196
+ ## Next Steps
197
+
198
+ 1. **Customize** - Modify colors, layout, content
199
+ 2. **Extend** - Add more capture formats
200
+ 3. **Integrate** - Connect to your backend
201
+ 4. **Deploy** - Deploy to production
202
+
203
+ ---
204
+
205
+ ## Questions?
206
+
207
+ Check the main `README.md` at the root for library documentation, or look at the React example's `README.md` for detailed instructions.
208
+
209
+ ---
210
+
211
+ **Happy screenshotting!** 📸
@@ -0,0 +1,161 @@
1
+ # dom-screenshot React Example
2
+
3
+ A simple, real-world React application demonstrating how to use the `@mkhuda/dom-screenshot` library to capture DOM elements as SVG, PNG, or JPEG images.
4
+
5
+ ## Features
6
+
7
+ - 📸 **Multiple Format Support**: Capture as SVG, PNG, or JPEG
8
+ - 🎨 **Beautiful UI**: Modern, responsive design with Tailwind-inspired styling
9
+ - 💾 **Download Support**: Automatically download captured screenshots
10
+ - 🔄 **Live Preview**: See captured screenshots in real-time
11
+ - ⚡ **Fast**: Built with Vite for quick development and builds
12
+
13
+ ## Project Structure
14
+
15
+ ```
16
+ src/
17
+ ├── App.tsx # Main application component
18
+ ├── App.css # Main styles
19
+ ├── main.tsx # React entry point
20
+ ├── index.css # Global styles
21
+ └── components/
22
+ ├── Card.tsx # Reusable card component
23
+ └── ScreenshotButton.tsx # Screenshot button with loading state
24
+ ```
25
+
26
+ ## Getting Started
27
+
28
+ ### Prerequisites
29
+
30
+ - Node.js 22.12.0 (pinned with Volta)
31
+ - npm or yarn
32
+
33
+ ### Installation
34
+
35
+ ```bash
36
+ # From the root dom-screenshot project
37
+ cd examples/react-app
38
+
39
+ # Install dependencies
40
+ npm install
41
+
42
+ # For development, you may need to link the local library
43
+ npm link ../../
44
+ ```
45
+
46
+ ### Development
47
+
48
+ ```bash
49
+ # Start development server
50
+ npm run dev
51
+
52
+ # The app will open at http://localhost:5173
53
+ ```
54
+
55
+ ### Build
56
+
57
+ ```bash
58
+ # Build for production
59
+ npm run build
60
+
61
+ # Preview production build
62
+ npm run preview
63
+ ```
64
+
65
+ ## Usage
66
+
67
+ The application demonstrates three main capturing modes:
68
+
69
+ ### SVG Capture
70
+ ```tsx
71
+ const svg = await domtoimage.toSvg(element);
72
+ // Creates a vector-based screenshot (scalable, smaller file size)
73
+ ```
74
+
75
+ ### PNG Capture
76
+ ```tsx
77
+ const png = await domtoimage.toPng(element);
78
+ // Creates a raster PNG image (good quality, larger file size)
79
+ ```
80
+
81
+ ### JPEG Capture
82
+ ```tsx
83
+ const jpeg = await domtoimage.toJpeg(element);
84
+ // Creates a compressed JPEG image (smaller file size, lossy compression)
85
+ ```
86
+
87
+ ## Real-World Use Cases
88
+
89
+ This example demonstrates how to use dom-screenshot in:
90
+
91
+ 1. **Screenshot Tools**: Capture UI elements for sharing
92
+ 2. **Report Generation**: Generate visual reports from React components
93
+ 3. **Export Features**: Let users download rendered content as images
94
+ 4. **Documentation**: Automatically create screenshots for documentation
95
+ 5. **Social Media**: Generate share-ready images from web content
96
+
97
+ ## Components
98
+
99
+ ### App Component
100
+ - Main container that manages screenshot state
101
+ - Handles all three capture methods
102
+ - Manages preview gallery
103
+ - Download functionality
104
+
105
+ ### Card Component
106
+ - Example component to capture
107
+ - Multiple instances to show complex DOM handling
108
+ - Color-coded with styled borders
109
+
110
+ ### ScreenshotButton Component
111
+ - Reusable button for capture actions
112
+ - Shows loading state during capture
113
+ - Error handling built-in
114
+
115
+ ## Technologies
116
+
117
+ - **React 18.3.1**: Latest React for UI
118
+ - **Vite 7.2.2**: Lightning-fast build tool
119
+ - **TypeScript**: Type-safe development
120
+ - **CSS**: Modern CSS Grid and Flexbox layouts
121
+ - **dom-screenshot**: The star of the show! 🌟
122
+
123
+ ## Tips
124
+
125
+ 1. **Complex Elements**: The library can capture nested elements, flexbox layouts, gradients, and more
126
+ 2. **Performance**: For large DOM elements, SVG is usually faster than PNG/JPEG
127
+ 3. **Styling**: All CSS styles (colors, fonts, shadows) are preserved in the output
128
+ 4. **Error Handling**: Always wrap capture calls in try-catch blocks
129
+
130
+ ## Troubleshooting
131
+
132
+ **Canvas-related Errors**: Some capture modes require canvas support. Use `try-catch` blocks.
133
+
134
+ **File Size**:
135
+ - SVG: Smallest but may have resolution issues on complex designs
136
+ - PNG: Larger but best quality for most use cases
137
+ - JPEG: Compressed, good for photos and complex gradients
138
+
139
+ **Performance**:
140
+ - Use SVG for simple UI elements
141
+ - Use PNG for general purpose screenshots
142
+ - Use JPEG for image-heavy content
143
+
144
+ ## Next Steps
145
+
146
+ To extend this example:
147
+
148
+ 1. Add different capture regions
149
+ 2. Implement screenshot history
150
+ 3. Add filters or modifications
151
+ 4. Generate multiple formats at once
152
+ 5. Integrate with cloud storage
153
+ 6. Add annotation tools
154
+
155
+ ## License
156
+
157
+ MIT - Same as the main dom-screenshot package
158
+
159
+ ---
160
+
161
+ Happy screenshotting! 📸
@@ -0,0 +1,12 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8" />
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6
+ <title>dom-screenshot React Example</title>
7
+ </head>
8
+ <body>
9
+ <div id="root"></div>
10
+ <script type="module" src="/src/main.tsx"></script>
11
+ </body>
12
+ </html>
@@ -0,0 +1,46 @@
1
+ {
2
+ "hash": "4cab1632",
3
+ "configHash": "766bba4a",
4
+ "lockfileHash": "c7df036d",
5
+ "browserHash": "04a26ccd",
6
+ "optimized": {
7
+ "react": {
8
+ "src": "../../../../../node_modules/react/index.js",
9
+ "file": "react.js",
10
+ "fileHash": "f9106c88",
11
+ "needsInterop": true
12
+ },
13
+ "react-dom": {
14
+ "src": "../../../../../node_modules/react-dom/index.js",
15
+ "file": "react-dom.js",
16
+ "fileHash": "7dce797d",
17
+ "needsInterop": true
18
+ },
19
+ "react/jsx-dev-runtime": {
20
+ "src": "../../../../../node_modules/react/jsx-dev-runtime.js",
21
+ "file": "react_jsx-dev-runtime.js",
22
+ "fileHash": "5be0090f",
23
+ "needsInterop": true
24
+ },
25
+ "react/jsx-runtime": {
26
+ "src": "../../../../../node_modules/react/jsx-runtime.js",
27
+ "file": "react_jsx-runtime.js",
28
+ "fileHash": "225e0453",
29
+ "needsInterop": true
30
+ },
31
+ "react-dom/client": {
32
+ "src": "../../../../../node_modules/react-dom/client.js",
33
+ "file": "react-dom_client.js",
34
+ "fileHash": "d81281f2",
35
+ "needsInterop": true
36
+ }
37
+ },
38
+ "chunks": {
39
+ "chunk-VSODSHUF": {
40
+ "file": "chunk-VSODSHUF.js"
41
+ },
42
+ "chunk-FK77NBP6": {
43
+ "file": "chunk-FK77NBP6.js"
44
+ }
45
+ }
46
+ }