extension-develop 4.1.18 → 4.1.19

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/dist/672~0.mjs +70 -14
  2. package/dist/832~0.mjs +1 -1
  3. package/dist/938~0.mjs +1 -1
  4. package/dist/dev-server/control-bridge/ws-control-server.d.ts +1 -0
  5. package/dist/dev-server~0.mjs +6 -1
  6. package/dist/extension-js-devtools/chrome/images/icon-128.png +0 -0
  7. package/dist/extension-js-devtools/chrome/images/icon-16.png +0 -0
  8. package/dist/extension-js-devtools/chrome/images/icon-32.png +0 -0
  9. package/dist/extension-js-devtools/chrome/images/icon-48.png +0 -0
  10. package/dist/extension-js-devtools/chrome/manifest.json +4 -1
  11. package/dist/extension-js-devtools/chrome/pages/welcome.css +1 -1
  12. package/dist/extension-js-devtools/chrome/pages/welcome.html +1 -1
  13. package/dist/extension-js-devtools/chrome/pages/welcome.js +2 -20
  14. package/dist/extension-js-devtools/chromium/images/icon-128.png +0 -0
  15. package/dist/extension-js-devtools/chromium/images/icon-16.png +0 -0
  16. package/dist/extension-js-devtools/chromium/images/icon-32.png +0 -0
  17. package/dist/extension-js-devtools/chromium/images/icon-48.png +0 -0
  18. package/dist/extension-js-devtools/chromium/manifest.json +4 -1
  19. package/dist/extension-js-devtools/chromium/pages/welcome.css +1 -1
  20. package/dist/extension-js-devtools/chromium/pages/welcome.html +1 -1
  21. package/dist/extension-js-devtools/chromium/pages/welcome.js +2 -20
  22. package/dist/extension-js-devtools/edge/images/icon-128.png +0 -0
  23. package/dist/extension-js-devtools/edge/images/icon-16.png +0 -0
  24. package/dist/extension-js-devtools/edge/images/icon-32.png +0 -0
  25. package/dist/extension-js-devtools/edge/images/icon-48.png +0 -0
  26. package/dist/extension-js-devtools/edge/manifest.json +4 -1
  27. package/dist/extension-js-devtools/edge/pages/welcome.css +1 -1
  28. package/dist/extension-js-devtools/edge/pages/welcome.html +1 -1
  29. package/dist/extension-js-devtools/edge/pages/welcome.js +2 -20
  30. package/dist/extension-js-devtools/firefox/images/icon-128.png +0 -0
  31. package/dist/extension-js-devtools/firefox/images/icon-16.png +0 -0
  32. package/dist/extension-js-devtools/firefox/images/icon-32.png +0 -0
  33. package/dist/extension-js-devtools/firefox/images/icon-48.png +0 -0
  34. package/dist/extension-js-devtools/firefox/manifest.json +4 -1
  35. package/dist/extension-js-devtools/firefox/pages/welcome.css +1 -1
  36. package/dist/extension-js-devtools/firefox/pages/welcome.html +1 -1
  37. package/dist/extension-js-devtools/firefox/pages/welcome.js +2 -20
  38. package/dist/lib/manifest-utils.d.ts +8 -0
  39. package/dist/plugin-compilation/env.d.ts +1 -0
  40. package/dist/plugin-js-frameworks/js-tools/vue.d.ts +1 -0
  41. package/dist/plugin-web-extension/feature-manifest/messages.d.ts +1 -0
  42. package/dist/rspack-config~0.mjs +28 -10
  43. package/package.json +3 -2
  44. package/dist/extension-js-devtools/chrome/images/logo.png +0 -0
  45. package/dist/extension-js-devtools/chrome/shared/framework.js +0 -1
  46. package/dist/extension-js-devtools/chromium/images/logo.png +0 -0
  47. package/dist/extension-js-devtools/chromium/shared/framework.js +0 -1
  48. package/dist/extension-js-devtools/edge/images/logo.png +0 -0
  49. package/dist/extension-js-devtools/edge/shared/framework.js +0 -1
  50. package/dist/extension-js-devtools/firefox/images/logo.png +0 -0
  51. package/dist/extension-js-devtools/firefox/shared/framework.js +0 -1
@@ -1,21 +1,3 @@
1
- (()=>{"use strict";var e,r,o,t,n={770(e){var r=()=>{};e.exports={env:{},argv:[],version:"",versions:{},platform:"browser",arch:"browser",browser:!0,title:"browser",pid:0,nextTick:function(e){var r=Array.prototype.slice.call(arguments,1),o=()=>{e.apply(null,r)};"function"==typeof queueMicrotask?queueMicrotask(o):Promise.resolve().then(o)},cwd:()=>"/",chdir:r,umask:()=>0,on:r,once:r,off:r,addListener:r,removeListener:r,removeAllListeners:r,prependListener:r,prependOnceListener:r,emit:r,listeners:()=>[]}},474(e,r,o){let t,n,s,a,l;var i,c=o(525),d=o(81),m=o(181);let p=o.p+"assets/logo.7dc70d61.png",u=(e=new Map,r=null,o)=>({nextPart:e,validators:r,classGroupId:o}),f=[],b=(e,r,o)=>{if(0==e.length-r)return o.classGroupId;let t=e[r],n=o.nextPart.get(t);if(n){let o=b(e,r+1,n);if(o)return o}let s=o.validators;if(null===s)return;let a=0===r?e.join("-"):e.slice(r).join("-"),l=s.length;for(let e=0;e<l;e++){let r=s[e];if(r.validator(a))return r.classGroupId}},g=(e,r)=>{let o=u();for(let t in e)h(e[t],o,t,r);return o},h=(e,r,o,t)=>{let n=e.length;for(let s=0;s<n;s++)x(e[s],r,o,t)},x=(e,r,o,t)=>{"string"==typeof e?k(e,r,o):"function"==typeof e?v(e,r,o,t):w(e,r,o,t)},k=(e,r,o)=>{(""===e?r:y(r,e)).classGroupId=o},v=(e,r,o,t)=>{j(e)?h(e(t),r,o,t):(null===r.validators&&(r.validators=[]),r.validators.push({classGroupId:o,validator:e}))},w=(e,r,o,t)=>{let n=Object.entries(e),s=n.length;for(let e=0;e<s;e++){let[s,a]=n[e];h(a,y(r,s),o,t)}},y=(e,r)=>{let o=e,t=r.split("-"),n=t.length;for(let e=0;e<n;e++){let r=t[e],n=o.nextPart.get(r);n||(n=u(),o.nextPart.set(r,n)),o=n}return o},j=e=>"isThemeGetter"in e&&!0===e.isThemeGetter,z=[],N=(e,r,o,t,n)=>({modifiers:e,hasImportantModifier:r,baseClassName:o,maybePostfixModifierPosition:t,isExternal:n}),_=/\s+/,E=e=>{let r;if("string"==typeof e)return e;let o="";for(let t=0;t<e.length;t++)e[t]&&(r=E(e[t]))&&(o&&(o+=" "),o+=r);return o},S=[],O=e=>{let r=r=>r[e]||S;return r.isThemeGetter=!0,r},T=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,L=/^\((?:(\w[\w-]*):)?(.+)\)$/i,M=/^\d+\/\d+$/,C=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,I=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,G=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,$=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,A=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,P=e=>M.test(e),U=e=>!!e&&!Number.isNaN(Number(e)),W=e=>!!e&&Number.isInteger(Number(e)),R=e=>e.endsWith("%")&&U(e.slice(0,-1)),q=e=>C.test(e),X=()=>!0,B=e=>I.test(e)&&!G.test(e),J=()=>!1,V=e=>$.test(e),D=e=>A.test(e),F=e=>!K(e)&&!eo(e),H=e=>ec(e,eu,J),K=e=>T.test(e),Q=e=>ec(e,ef,B),Y=e=>ec(e,eb,U),Z=e=>ec(e,em,J),ee=e=>ec(e,ep,D),er=e=>ec(e,eh,V),eo=e=>L.test(e),et=e=>ed(e,ef),en=e=>ed(e,eg),es=e=>ed(e,em),ea=e=>ed(e,eu),el=e=>ed(e,ep),ei=e=>ed(e,eh,!0),ec=(e,r,o)=>{let t=T.exec(e);return!!t&&(t[1]?r(t[1]):o(t[2]))},ed=(e,r,o=!1)=>{let t=L.exec(e);return!!t&&(t[1]?r(t[1]):o)},em=e=>"position"===e||"percentage"===e,ep=e=>"image"===e||"url"===e,eu=e=>"length"===e||"size"===e||"bg-size"===e,ef=e=>"length"===e,eb=e=>"number"===e,eg=e=>"family-name"===e,eh=e=>"shadow"===e,ex=(i=()=>{let e=O("color"),r=O("font"),o=O("text"),t=O("font-weight"),n=O("tracking"),s=O("leading"),a=O("breakpoint"),l=O("container"),i=O("spacing"),c=O("radius"),d=O("shadow"),m=O("inset-shadow"),p=O("text-shadow"),u=O("drop-shadow"),f=O("blur"),b=O("perspective"),g=O("aspect"),h=O("ease"),x=O("animate"),k=()=>["auto","avoid","all","avoid-page","page","left","right","column"],v=()=>["center","top","bottom","left","right","top-left","left-top","top-right","right-top","bottom-right","right-bottom","bottom-left","left-bottom"],w=()=>[...v(),eo,K],y=()=>["auto","hidden","clip","visible","scroll"],j=()=>["auto","contain","none"],z=()=>[eo,K,i],N=()=>[P,"full","auto",...z()],_=()=>[W,"none","subgrid",eo,K],E=()=>["auto",{span:["full",W,eo,K]},W,eo,K],S=()=>[W,"auto",eo,K],T=()=>["auto","min","max","fr",eo,K],L=()=>["start","end","center","between","around","evenly","stretch","baseline","center-safe","end-safe"],M=()=>["start","end","center","stretch","center-safe","end-safe"],C=()=>["auto",...z()],I=()=>[P,"auto","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",...z()],G=()=>[e,eo,K],$=()=>[...v(),es,Z,{position:[eo,K]}],A=()=>["no-repeat",{repeat:["","x","y","space","round"]}],B=()=>["auto","cover","contain",ea,H,{size:[eo,K]}],J=()=>[R,et,Q],V=()=>["","none","full",c,eo,K],D=()=>["",U,et,Q],ec=()=>["solid","dashed","dotted","double"],ed=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],em=()=>[U,R,es,Z],ep=()=>["","none",f,eo,K],eu=()=>["none",U,eo,K],ef=()=>["none",U,eo,K],eb=()=>[U,eo,K],eg=()=>[P,"full",...z()];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[q],breakpoint:[q],color:[X],container:[q],"drop-shadow":[q],ease:["in","out","in-out"],font:[F],"font-weight":["thin","extralight","light","normal","medium","semibold","bold","extrabold","black"],"inset-shadow":[q],leading:["none","tight","snug","normal","relaxed","loose"],perspective:["dramatic","near","normal","midrange","distant","none"],radius:[q],shadow:[q],spacing:["px",U],text:[q],"text-shadow":[q],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",P,K,eo,g]}],container:["container"],columns:[{columns:[U,K,eo,l]}],"break-after":[{"break-after":k()}],"break-before":[{"break-before":k()}],"break-inside":[{"break-inside":["auto","avoid","avoid-page","avoid-column"]}],"box-decoration":[{"box-decoration":["slice","clone"]}],box:[{box:["border","content"]}],display:["block","inline-block","inline","flex","inline-flex","table","inline-table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row-group","table-row","flow-root","grid","inline-grid","contents","list-item","hidden"],sr:["sr-only","not-sr-only"],float:[{float:["right","left","none","start","end"]}],clear:[{clear:["left","right","both","none","start","end"]}],isolation:["isolate","isolation-auto"],"object-fit":[{object:["contain","cover","fill","none","scale-down"]}],"object-position":[{object:w()}],overflow:[{overflow:y()}],"overflow-x":[{"overflow-x":y()}],"overflow-y":[{"overflow-y":y()}],overscroll:[{overscroll:j()}],"overscroll-x":[{"overscroll-x":j()}],"overscroll-y":[{"overscroll-y":j()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:N()}],"inset-x":[{"inset-x":N()}],"inset-y":[{"inset-y":N()}],start:[{start:N()}],end:[{end:N()}],top:[{top:N()}],right:[{right:N()}],bottom:[{bottom:N()}],left:[{left:N()}],visibility:["visible","invisible","collapse"],z:[{z:[W,"auto",eo,K]}],basis:[{basis:[P,"full","auto",l,...z()]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[U,P,"auto","initial","none",K]}],grow:[{grow:["",U,eo,K]}],shrink:[{shrink:["",U,eo,K]}],order:[{order:[W,"first","last","none",eo,K]}],"grid-cols":[{"grid-cols":_()}],"col-start-end":[{col:E()}],"col-start":[{"col-start":S()}],"col-end":[{"col-end":S()}],"grid-rows":[{"grid-rows":_()}],"row-start-end":[{row:E()}],"row-start":[{"row-start":S()}],"row-end":[{"row-end":S()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":T()}],"auto-rows":[{"auto-rows":T()}],gap:[{gap:z()}],"gap-x":[{"gap-x":z()}],"gap-y":[{"gap-y":z()}],"justify-content":[{justify:[...L(),"normal"]}],"justify-items":[{"justify-items":[...M(),"normal"]}],"justify-self":[{"justify-self":["auto",...M()]}],"align-content":[{content:["normal",...L()]}],"align-items":[{items:[...M(),{baseline:["","last"]}]}],"align-self":[{self:["auto",...M(),{baseline:["","last"]}]}],"place-content":[{"place-content":L()}],"place-items":[{"place-items":[...M(),"baseline"]}],"place-self":[{"place-self":["auto",...M()]}],p:[{p:z()}],px:[{px:z()}],py:[{py:z()}],ps:[{ps:z()}],pe:[{pe:z()}],pt:[{pt:z()}],pr:[{pr:z()}],pb:[{pb:z()}],pl:[{pl:z()}],m:[{m:C()}],mx:[{mx:C()}],my:[{my:C()}],ms:[{ms:C()}],me:[{me:C()}],mt:[{mt:C()}],mr:[{mr:C()}],mb:[{mb:C()}],ml:[{ml:C()}],"space-x":[{"space-x":z()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":z()}],"space-y-reverse":["space-y-reverse"],size:[{size:I()}],w:[{w:[l,"screen",...I()]}],"min-w":[{"min-w":[l,"screen","none",...I()]}],"max-w":[{"max-w":[l,"screen","none","prose",{screen:[a]},...I()]}],h:[{h:["screen","lh",...I()]}],"min-h":[{"min-h":["screen","lh","none",...I()]}],"max-h":[{"max-h":["screen","lh",...I()]}],"font-size":[{text:["base",o,et,Q]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[t,eo,Y]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",R,K]}],"font-family":[{font:[en,K,r]}],"fvn-normal":["normal-nums"],"fvn-ordinal":["ordinal"],"fvn-slashed-zero":["slashed-zero"],"fvn-figure":["lining-nums","oldstyle-nums"],"fvn-spacing":["proportional-nums","tabular-nums"],"fvn-fraction":["diagonal-fractions","stacked-fractions"],tracking:[{tracking:[n,eo,K]}],"line-clamp":[{"line-clamp":[U,"none",eo,Y]}],leading:[{leading:[s,...z()]}],"list-image":[{"list-image":["none",eo,K]}],"list-style-position":[{list:["inside","outside"]}],"list-style-type":[{list:["disc","decimal","none",eo,K]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"placeholder-color":[{placeholder:G()}],"text-color":[{text:G()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...ec(),"wavy"]}],"text-decoration-thickness":[{decoration:[U,"from-font","auto",eo,Q]}],"text-decoration-color":[{decoration:G()}],"underline-offset":[{"underline-offset":[U,"auto",eo,K]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:z()}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",eo,K]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],wrap:[{wrap:["break-word","anywhere","normal"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",eo,K]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:$()}],"bg-repeat":[{bg:A()}],"bg-size":[{bg:B()}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},W,eo,K],radial:["",eo,K],conic:[W,eo,K]},el,ee]}],"bg-color":[{bg:G()}],"gradient-from-pos":[{from:J()}],"gradient-via-pos":[{via:J()}],"gradient-to-pos":[{to:J()}],"gradient-from":[{from:G()}],"gradient-via":[{via:G()}],"gradient-to":[{to:G()}],rounded:[{rounded:V()}],"rounded-s":[{"rounded-s":V()}],"rounded-e":[{"rounded-e":V()}],"rounded-t":[{"rounded-t":V()}],"rounded-r":[{"rounded-r":V()}],"rounded-b":[{"rounded-b":V()}],"rounded-l":[{"rounded-l":V()}],"rounded-ss":[{"rounded-ss":V()}],"rounded-se":[{"rounded-se":V()}],"rounded-ee":[{"rounded-ee":V()}],"rounded-es":[{"rounded-es":V()}],"rounded-tl":[{"rounded-tl":V()}],"rounded-tr":[{"rounded-tr":V()}],"rounded-br":[{"rounded-br":V()}],"rounded-bl":[{"rounded-bl":V()}],"border-w":[{border:D()}],"border-w-x":[{"border-x":D()}],"border-w-y":[{"border-y":D()}],"border-w-s":[{"border-s":D()}],"border-w-e":[{"border-e":D()}],"border-w-t":[{"border-t":D()}],"border-w-r":[{"border-r":D()}],"border-w-b":[{"border-b":D()}],"border-w-l":[{"border-l":D()}],"divide-x":[{"divide-x":D()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":D()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[...ec(),"hidden","none"]}],"divide-style":[{divide:[...ec(),"hidden","none"]}],"border-color":[{border:G()}],"border-color-x":[{"border-x":G()}],"border-color-y":[{"border-y":G()}],"border-color-s":[{"border-s":G()}],"border-color-e":[{"border-e":G()}],"border-color-t":[{"border-t":G()}],"border-color-r":[{"border-r":G()}],"border-color-b":[{"border-b":G()}],"border-color-l":[{"border-l":G()}],"divide-color":[{divide:G()}],"outline-style":[{outline:[...ec(),"none","hidden"]}],"outline-offset":[{"outline-offset":[U,eo,K]}],"outline-w":[{outline:["",U,et,Q]}],"outline-color":[{outline:G()}],shadow:[{shadow:["","none",d,ei,er]}],"shadow-color":[{shadow:G()}],"inset-shadow":[{"inset-shadow":["none",m,ei,er]}],"inset-shadow-color":[{"inset-shadow":G()}],"ring-w":[{ring:D()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:G()}],"ring-offset-w":[{"ring-offset":[U,Q]}],"ring-offset-color":[{"ring-offset":G()}],"inset-ring-w":[{"inset-ring":D()}],"inset-ring-color":[{"inset-ring":G()}],"text-shadow":[{"text-shadow":["none",p,ei,er]}],"text-shadow-color":[{"text-shadow":G()}],opacity:[{opacity:[U,eo,K]}],"mix-blend":[{"mix-blend":[...ed(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":ed()}],"mask-clip":[{"mask-clip":["border","padding","content","fill","stroke","view"]},"mask-no-clip"],"mask-composite":[{mask:["add","subtract","intersect","exclude"]}],"mask-image-linear-pos":[{"mask-linear":[U]}],"mask-image-linear-from-pos":[{"mask-linear-from":em()}],"mask-image-linear-to-pos":[{"mask-linear-to":em()}],"mask-image-linear-from-color":[{"mask-linear-from":G()}],"mask-image-linear-to-color":[{"mask-linear-to":G()}],"mask-image-t-from-pos":[{"mask-t-from":em()}],"mask-image-t-to-pos":[{"mask-t-to":em()}],"mask-image-t-from-color":[{"mask-t-from":G()}],"mask-image-t-to-color":[{"mask-t-to":G()}],"mask-image-r-from-pos":[{"mask-r-from":em()}],"mask-image-r-to-pos":[{"mask-r-to":em()}],"mask-image-r-from-color":[{"mask-r-from":G()}],"mask-image-r-to-color":[{"mask-r-to":G()}],"mask-image-b-from-pos":[{"mask-b-from":em()}],"mask-image-b-to-pos":[{"mask-b-to":em()}],"mask-image-b-from-color":[{"mask-b-from":G()}],"mask-image-b-to-color":[{"mask-b-to":G()}],"mask-image-l-from-pos":[{"mask-l-from":em()}],"mask-image-l-to-pos":[{"mask-l-to":em()}],"mask-image-l-from-color":[{"mask-l-from":G()}],"mask-image-l-to-color":[{"mask-l-to":G()}],"mask-image-x-from-pos":[{"mask-x-from":em()}],"mask-image-x-to-pos":[{"mask-x-to":em()}],"mask-image-x-from-color":[{"mask-x-from":G()}],"mask-image-x-to-color":[{"mask-x-to":G()}],"mask-image-y-from-pos":[{"mask-y-from":em()}],"mask-image-y-to-pos":[{"mask-y-to":em()}],"mask-image-y-from-color":[{"mask-y-from":G()}],"mask-image-y-to-color":[{"mask-y-to":G()}],"mask-image-radial":[{"mask-radial":[eo,K]}],"mask-image-radial-from-pos":[{"mask-radial-from":em()}],"mask-image-radial-to-pos":[{"mask-radial-to":em()}],"mask-image-radial-from-color":[{"mask-radial-from":G()}],"mask-image-radial-to-color":[{"mask-radial-to":G()}],"mask-image-radial-shape":[{"mask-radial":["circle","ellipse"]}],"mask-image-radial-size":[{"mask-radial":[{closest:["side","corner"],farthest:["side","corner"]}]}],"mask-image-radial-pos":[{"mask-radial-at":v()}],"mask-image-conic-pos":[{"mask-conic":[U]}],"mask-image-conic-from-pos":[{"mask-conic-from":em()}],"mask-image-conic-to-pos":[{"mask-conic-to":em()}],"mask-image-conic-from-color":[{"mask-conic-from":G()}],"mask-image-conic-to-color":[{"mask-conic-to":G()}],"mask-mode":[{mask:["alpha","luminance","match"]}],"mask-origin":[{"mask-origin":["border","padding","content","fill","stroke","view"]}],"mask-position":[{mask:$()}],"mask-repeat":[{mask:A()}],"mask-size":[{mask:B()}],"mask-type":[{"mask-type":["alpha","luminance"]}],"mask-image":[{mask:["none",eo,K]}],filter:[{filter:["","none",eo,K]}],blur:[{blur:ep()}],brightness:[{brightness:[U,eo,K]}],contrast:[{contrast:[U,eo,K]}],"drop-shadow":[{"drop-shadow":["","none",u,ei,er]}],"drop-shadow-color":[{"drop-shadow":G()}],grayscale:[{grayscale:["",U,eo,K]}],"hue-rotate":[{"hue-rotate":[U,eo,K]}],invert:[{invert:["",U,eo,K]}],saturate:[{saturate:[U,eo,K]}],sepia:[{sepia:["",U,eo,K]}],"backdrop-filter":[{"backdrop-filter":["","none",eo,K]}],"backdrop-blur":[{"backdrop-blur":ep()}],"backdrop-brightness":[{"backdrop-brightness":[U,eo,K]}],"backdrop-contrast":[{"backdrop-contrast":[U,eo,K]}],"backdrop-grayscale":[{"backdrop-grayscale":["",U,eo,K]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[U,eo,K]}],"backdrop-invert":[{"backdrop-invert":["",U,eo,K]}],"backdrop-opacity":[{"backdrop-opacity":[U,eo,K]}],"backdrop-saturate":[{"backdrop-saturate":[U,eo,K]}],"backdrop-sepia":[{"backdrop-sepia":["",U,eo,K]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":z()}],"border-spacing-x":[{"border-spacing-x":z()}],"border-spacing-y":[{"border-spacing-y":z()}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["","all","colors","opacity","shadow","transform","none",eo,K]}],"transition-behavior":[{transition:["normal","discrete"]}],duration:[{duration:[U,"initial",eo,K]}],ease:[{ease:["linear","initial",h,eo,K]}],delay:[{delay:[U,eo,K]}],animate:[{animate:["none",x,eo,K]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[b,eo,K]}],"perspective-origin":[{"perspective-origin":w()}],rotate:[{rotate:eu()}],"rotate-x":[{"rotate-x":eu()}],"rotate-y":[{"rotate-y":eu()}],"rotate-z":[{"rotate-z":eu()}],scale:[{scale:ef()}],"scale-x":[{"scale-x":ef()}],"scale-y":[{"scale-y":ef()}],"scale-z":[{"scale-z":ef()}],"scale-3d":["scale-3d"],skew:[{skew:eb()}],"skew-x":[{"skew-x":eb()}],"skew-y":[{"skew-y":eb()}],transform:[{transform:[eo,K,"","none","gpu","cpu"]}],"transform-origin":[{origin:w()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:eg()}],"translate-x":[{"translate-x":eg()}],"translate-y":[{"translate-y":eg()}],"translate-z":[{"translate-z":eg()}],"translate-none":["translate-none"],accent:[{accent:G()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:G()}],"color-scheme":[{scheme:["normal","dark","light","light-dark","only-dark","only-light"]}],cursor:[{cursor:["auto","default","pointer","wait","text","move","help","not-allowed","none","context-menu","progress","cell","crosshair","vertical-text","alias","copy","no-drop","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out",eo,K]}],"field-sizing":[{"field-sizing":["fixed","content"]}],"pointer-events":[{"pointer-events":["auto","none"]}],resize:[{resize:["none","","y","x"]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scroll-m":[{"scroll-m":z()}],"scroll-mx":[{"scroll-mx":z()}],"scroll-my":[{"scroll-my":z()}],"scroll-ms":[{"scroll-ms":z()}],"scroll-me":[{"scroll-me":z()}],"scroll-mt":[{"scroll-mt":z()}],"scroll-mr":[{"scroll-mr":z()}],"scroll-mb":[{"scroll-mb":z()}],"scroll-ml":[{"scroll-ml":z()}],"scroll-p":[{"scroll-p":z()}],"scroll-px":[{"scroll-px":z()}],"scroll-py":[{"scroll-py":z()}],"scroll-ps":[{"scroll-ps":z()}],"scroll-pe":[{"scroll-pe":z()}],"scroll-pt":[{"scroll-pt":z()}],"scroll-pr":[{"scroll-pr":z()}],"scroll-pb":[{"scroll-pb":z()}],"scroll-pl":[{"scroll-pl":z()}],"snap-align":[{snap:["start","end","center","align-none"]}],"snap-stop":[{snap:["normal","always"]}],"snap-type":[{snap:["none","x","y","both"]}],"snap-strictness":[{snap:["mandatory","proximity"]}],touch:[{touch:["auto","none","manipulation"]}],"touch-x":[{"touch-pan":["x","left","right"]}],"touch-y":[{"touch-pan":["y","up","down"]}],"touch-pz":["touch-pinch-zoom"],select:[{select:["none","text","all","auto"]}],"will-change":[{"will-change":["auto","scroll","contents","transform",eo,K]}],fill:[{fill:["none",...G()]}],"stroke-w":[{stroke:[U,et,Q,Y]}],stroke:[{stroke:["none",...G()]}],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","start","end","top","right","bottom","left"],"inset-x":["right","left"],"inset-y":["top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mt","mr","mb","ml"],mx:["mr","ml"],my:["mt","mb"],size:["w","h"],"font-size":["leading"],"fvn-normal":["fvn-ordinal","fvn-slashed-zero","fvn-figure","fvn-spacing","fvn-fraction"],"fvn-ordinal":["fvn-normal"],"fvn-slashed-zero":["fvn-normal"],"fvn-figure":["fvn-normal"],"fvn-spacing":["fvn-normal"],"fvn-fraction":["fvn-normal"],"line-clamp":["display","overflow"],rounded:["rounded-s","rounded-e","rounded-t","rounded-r","rounded-b","rounded-l","rounded-ss","rounded-se","rounded-ee","rounded-es","rounded-tl","rounded-tr","rounded-br","rounded-bl"],"rounded-s":["rounded-ss","rounded-es"],"rounded-e":["rounded-se","rounded-ee"],"rounded-t":["rounded-tl","rounded-tr"],"rounded-r":["rounded-tr","rounded-br"],"rounded-b":["rounded-br","rounded-bl"],"rounded-l":["rounded-tl","rounded-bl"],"border-spacing":["border-spacing-x","border-spacing-y"],"border-w":["border-w-x","border-w-y","border-w-s","border-w-e","border-w-t","border-w-r","border-w-b","border-w-l"],"border-w-x":["border-w-r","border-w-l"],"border-w-y":["border-w-t","border-w-b"],"border-color":["border-color-x","border-color-y","border-color-s","border-color-e","border-color-t","border-color-r","border-color-b","border-color-l"],"border-color-x":["border-color-r","border-color-l"],"border-color-y":["border-color-t","border-color-b"],translate:["translate-x","translate-y","translate-none"],"translate-none":["translate","translate-x","translate-y","translate-z"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","scroll-mt","scroll-mr","scroll-mb","scroll-ml"],"scroll-mx":["scroll-mr","scroll-ml"],"scroll-my":["scroll-mt","scroll-mb"],"scroll-p":["scroll-px","scroll-py","scroll-ps","scroll-pe","scroll-pt","scroll-pr","scroll-pb","scroll-pl"],"scroll-px":["scroll-pr","scroll-pl"],"scroll-py":["scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]},orderSensitiveModifiers:["*","**","after","backdrop","before","details-content","file","first-letter","first-line","marker","placeholder","selection"]}},l=e=>{let r=n(e);if(r)return r;let o=((e,r)=>{let{parseClassName:o,getClassGroupId:t,getConflictingClassGroupIds:n,sortModifiers:s}=r,a=[],l=e.trim().split(_),i="";for(let e=l.length-1;e>=0;e-=1){let r=l[e],{isExternal:c,modifiers:d,hasImportantModifier:m,baseClassName:p,maybePostfixModifierPosition:u}=o(r);if(c){i=r+(i.length>0?" "+i:i);continue}let f=!!u,b=t(f?p.substring(0,u):p);if(!b){if(!f||!(b=t(p))){i=r+(i.length>0?" "+i:i);continue}f=!1}let g=0===d.length?"":1===d.length?d[0]:s(d).join(":"),h=m?g+"!":g,x=h+b;if(a.indexOf(x)>-1)continue;a.push(x);let k=n(b,f);for(let e=0;e<k.length;++e){let r=k[e];a.push(h+r)}i=r+(i.length>0?" "+i:i)}return i})(e,t);return s(e,o),o},a=e=>{var r;let o;return n=(t={cache:(e=>{if(e<1)return{get:()=>void 0,set:()=>{}};let r=0,o=Object.create(null),t=Object.create(null),n=(n,s)=>{o[n]=s,++r>e&&(r=0,t=o,o=Object.create(null))};return{get(e){let r=o[e];return void 0!==r?r:void 0!==(r=t[e])?(n(e,r),r):void 0},set(e,r){e in o?o[e]=r:n(e,r)}}})((r=[].reduce((e,r)=>r(e),i())).cacheSize),parseClassName:(e=>{let{prefix:r,experimentalParseClassName:o}=e,t=e=>{let r,o=[],t=0,n=0,s=0,a=e.length;for(let l=0;l<a;l++){let a=e[l];if(0===t&&0===n){if(":"===a){o.push(e.slice(s,l)),s=l+1;continue}if("/"===a){r=l;continue}}"["===a?t++:"]"===a?t--:"("===a?n++:")"===a&&n--}let l=0===o.length?e:e.slice(s),i=l,c=!1;return l.endsWith("!")?(i=l.slice(0,-1),c=!0):l.startsWith("!")&&(i=l.slice(1),c=!0),N(o,c,i,r&&r>s?r-s:void 0)};if(r){let e=r+":",o=t;t=r=>r.startsWith(e)?o(r.slice(e.length)):N(z,!1,r,void 0,!0)}if(o){let e=t;t=r=>o({className:r,parseClassName:e})}return t})(r),sortModifiers:(o=new Map,r.orderSensitiveModifiers.forEach((e,r)=>{o.set(e,1e6+r)}),e=>{let r=[],t=[];for(let n=0;n<e.length;n++){let s=e[n],a="["===s[0],l=o.has(s);a||l?(t.length>0&&(t.sort(),r.push(...t),t=[]),r.push(s)):t.push(s)}return t.length>0&&(t.sort(),r.push(...t)),r}),...(e=>{let r=(e=>{let{theme:r,classGroups:o}=e;return g(o,r)})(e),{conflictingClassGroups:o,conflictingClassGroupModifiers:t}=e;return{getClassGroupId:e=>{if(e.startsWith("[")&&e.endsWith("]")){var o;let r,t,n;return -1===(o=e).slice(1,-1).indexOf(":")?void 0:(t=(r=o.slice(1,-1)).indexOf(":"),(n=r.slice(0,t))?"arbitrary.."+n:void 0)}let t=e.split("-"),n=+(""===t[0]&&t.length>1);return b(t,n,r)},getConflictingClassGroupIds:(e,r)=>{if(r){let r=t[e],n=o[e];if(r){if(n){let e=Array(n.length+r.length);for(let r=0;r<n.length;r++)e[r]=n[r];for(let o=0;o<r.length;o++)e[n.length+o]=r[o];return e}return r}return n||f}return o[e]||f}}})(r)}).cache.get,s=t.cache.set,a=l,l(e)},(...e)=>a(((...e)=>{let r,o,t=0,n="";for(;t<e.length;)(r=e[t++])&&(o=E(r))&&(n&&(n+=" "),n+=o);return n})(...e)));async function ek(){try{if(!chrome.management.getAll)return[];return(await new Promise(e=>{chrome.management.getAll(e)})||[]).filter(e=>{let r;return e.id!==chrome.runtime.id&&"igcijhgmihmjbbahdabahfbpffalcfnn"!==e.id&&"development"===e.installType&&"theme"!==e.type&&!0===e.enabled&&!((r=String(e.name||"").toLowerCase()).includes("extension.js built-in developer tools")||r.includes("extension.js theme"))})}catch{return[]}}async function ev(){let e=await ek();return e[e.length-1]}!function(e,r=document.documentElement){"dark"===(e??function(){let e=function(){try{let e=localStorage.getItem("theme");if("light"===e||"dark"===e)return e}catch{}return null}();if(e)return e;if("u">typeof window&&"matchMedia"in window)try{return window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}catch{}return"light"}())?r.classList.add("dark"):r.classList.remove("dark")}("dark");let ew="firefox"===String("firefox").toLowerCase();function ey({className:e,...r}){return(0,c.jsx)("div",{className:function(...e){return ex(function(){for(var e,r,o=0,t="",n=arguments.length;o<n;o++)(e=arguments[o])&&(r=function e(r){var o,t,n="";if("string"==typeof r||"number"==typeof r)n+=r;else if("object"==typeof r)if(Array.isArray(r)){var s=r.length;for(o=0;o<s;o++)r[o]&&(t=e(r[o]))&&(n&&(n+=" "),n+=t)}else for(t in r)r[t]&&(n&&(n+=" "),n+=t);return n}(e))&&(t&&(t+=" "),t+=r);return t}(e))}("flex w-full items-center justify-center",e),...r,children:(0,c.jsx)("div",{className:"relative inline-flex items-center gap-3 rounded-2xl border px-4 py-2 shadow-sm backdrop-blur",children:(0,c.jsxs)("div",{className:"flex flex-wrap items-center gap-3",children:[(0,c.jsxs)("a",{href:"https://extension.js.org/",target:"_blank",rel:"noopener noreferrer",className:"inline-flex items-center gap-2","aria-label":"Visit extension.js.org",children:[(0,c.jsx)("img",{className:"size-4 select-none",alt:"Extension.js logo",src:p}),(0,c.jsx)("span",{className:"sr-only",children:"extension.js"})]}),(0,c.jsx)("a",{href:"https://extension.js.org/",target:"_blank",rel:"noopener noreferrer",className:"text-muted-foreground text-sm underline underline-offset-4 hover:opacity-90",children:"Learn more about developing cross-browser extensions."})]})})})}async function ej(e,r){let o=await ev();if(o){e(o),r(o.description);return}let t=(await new Promise(e=>{try{chrome.management.getAll(e)}catch{e([])}})||[]).filter(e=>e&&"development"===e.installType&&e.id!==chrome.runtime.id&&e.enabled&&"theme"!==e.type),n=t.length?t[t.length-1]:void 0;if(n){e(n),r(n.description);return}let s=chrome.runtime.getManifest();e({id:chrome.runtime.id,name:s?.name||"Extension",shortName:s?.short_name,description:s?.description||"",version:s?.version||"",enabled:!0,installType:"development"}),r(s?.description||"")}let ez=document.getElementById("root");ez&&m.createRoot(ez).render((0,c.jsx)(()=>{let[e,r]=(0,d.useState)(null),[o,t]=(0,d.useState)(""),[n,s]=(0,d.useState)(void 0),[a,l]=(0,d.useState)(!1);(0,d.useEffect)(()=>{ej(r,t)},[]);let i=e?.icons&&e.icons.length?[...e.icons].sort((e,r)=>(r.size||0)-(e.size||0))[0]?.url:void 0,m=ew&&!!i&&!i?.startsWith("data:");return(0,d.useEffect)(()=>{let r=!0;if(l(!1),!i)return s(void 0),()=>{r=!1};if(!m)return s(i),()=>{r=!1};s(void 0);let o=e?.icons&&e.icons.length?Math.max(...e.icons.map(e=>e.size||0)):128;return new Promise(r=>{try{let t=chrome.management.getIcon;if(!e?.id||!t)return void r(void 0);t(e.id,o,e=>{r("string"==typeof e&&e?e:void 0)})}catch{r(void 0)}}).then(e=>{if(r){if(e)return void s(e);try{chrome.runtime.sendMessage({type:"resolve-icon-url",url:i},e=>{r&&(e?.ok&&"string"==typeof e.dataUrl?s(e.dataUrl):s(void 0))})}catch{s(void 0)}}}),()=>{r=!1}},[i,m,e?.id]),(0,c.jsxs)("div",{className:"relative flex h-screen flex-col items-center justify-center bg-[#1C1C1E]",children:[(0,c.jsx)("style",{children:`
2
- @keyframes neonPulse {
3
- 0%, 100% {
4
- text-shadow:
5
- 0 0 6px rgba(25, 245, 167, 0.55),
6
- 0 0 12px rgba(25, 245, 167, 0.45),
7
- 0 0 24px rgba(25, 245, 167, 0.35);
8
- }
9
- 50% {
10
- text-shadow:
11
- 0 0 10px rgba(25, 245, 167, 0.9),
12
- 0 0 20px rgba(25, 245, 167, 0.8),
13
- 0 0 40px rgba(25, 245, 167, 0.7);
14
- }
15
- }
16
- .neon-text {
17
- animation: neonPulse 1.8s ease-in-out infinite;
18
- }
19
- `}),(0,c.jsx)("header",{className:"mb-4 flex w-full items-center justify-center",children:(0,c.jsx)("img",{className:"size-16 select-none object-contain",alt:`${e?.name||"User extension"} icon`,src:a?p:m?n||p:n||i||p,onError:()=>l(!0)})}),(0,c.jsxs)("h1",{className:"text-foreground mx-auto text-center text-3xl font-semibold leading-tight tracking-tight sm:text-4xl",children:[(0,c.jsx)("span",{children:e?.name||"My Extension"}),(0,c.jsx)("br",{}),(0,c.jsx)("span",{id:"extensionName",title:e?`• Name: ${e.name}
1
+ (()=>{"use strict";let e,t,n,r,i,o,a,s,l,c,d,m,u,p;var f={};function h(e){var t=f[e];if(void 0!==t)return t.exports;var n=f[e]={exports:{}};return __webpack_modules__[e](n,n.exports,h),n.exports}h.p="/",(()=>{var e=!!(()=>{try{return globalThis.browser.runtime.getURL("/")}catch(e){}})(),t=!!(()=>{try{return globalThis.chrome.runtime.getURL("/")}catch(e){}})(),n=e?globalThis.browser:t?globalThis.chrome:{runtime:{getURL:e=>e}},r="object"==typeof globalThis&&globalThis&&globalThis.__EXTJS_EXTENSION_BASE__?String(globalThis.__EXTJS_EXTENSION_BASE__):"";if(!r&&"object"==typeof document&&document&&document.documentElement)try{r=document.documentElement.getAttribute("data-extjs-extension-base")||""}catch(e){r=""}var i="";if("function"!=typeof importScripts&&(e||t))try{i=n.runtime.getURL("/")}catch(e){i=""}h.p="function"==typeof importScripts?"/":i||(r?r.replace(/\/+$/,"/")+String("/").replace(/^\/+/,""):"/")})();let g=h.p+"assets/logo.7dc70d61.png";async function x(){try{if(!chrome.management.getAll)return[];return(await new Promise(e=>{chrome.management.getAll(e)})||[]).filter(e=>{let t;return e.id!==chrome.runtime.id&&"igcijhgmihmjbbahdabahfbpffalcfnn"!==e.id&&"development"===e.installType&&"theme"!==e.type&&!0===e.enabled&&!((t=String(e.name||"").toLowerCase()).includes("extension.js built-in developer tools")||t.includes("extension.js theme"))})}catch{return[]}}async function b(){let e=await x();return e[e.length-1]}!function(e,t=document.documentElement){"dark"===(e??function(){let e=function(){try{let e=localStorage.getItem("theme");if("light"===e||"dark"===e)return e}catch{}return null}();if(e)return e;if("u">typeof window&&"matchMedia"in window)try{return window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}catch{}return"light"}())?t.classList.add("dark"):t.classList.remove("dark")}("dark");let y="firefox"===String("firefox").toLowerCase(),v="My Extension",w="Extension.js makes cross‑browser extension development simple.";function _(e,t,n){let r=document.createElement(e);return t&&(r.className=t),void 0!==n&&(r.textContent=n),r}function E(e){let t=_("a",e);return t.href="https://extension.js.org/",t.target="_blank",t.rel="noopener noreferrer",t}async function j(){let e=await b();if(e)return e;let t=(await new Promise(e=>{try{chrome.management.getAll(e)}catch{e([])}})||[]).filter(e=>e&&"development"===e.installType&&e.id!==chrome.runtime.id&&e.enabled&&"theme"!==e.type),n=t.length?t[t.length-1]:void 0;if(n)return n;let r=chrome.runtime.getManifest();return{id:chrome.runtime.id,name:r?.name||"Extension",shortName:r?.short_name,description:r?.description||"",version:r?.version||"",enabled:!0,installType:"development"}}let T=document.getElementById("root");T&&(e=_("div","relative flex h-screen flex-col items-center justify-center bg-[#1C1C1E]"),t=_("header","mb-4 flex w-full items-center justify-center"),(n=_("img","size-16 select-none object-contain")).alt="User extension icon",n.src=g,r=!1,n.addEventListener("error",()=>{r||(r=!0,n.src=g)}),t.append(n),i=_("h1","text-foreground mx-auto text-center text-3xl font-semibold leading-tight tracking-tight sm:text-4xl"),o=_("span",void 0,v),(a=_("span","neon-text","loaded successfully")).id="extensionName",a.style.color="var(--brand-success, #19f5a7)",i.append(o,_("br"),a),s=_("p","text-muted-foreground mx-auto mt-3 max-w-xl text-center text-base leading-relaxed sm:text-lg",w),e.append(t,i,s,(l=_("div","mt-6 flex w-full items-center justify-center"),c=_("div","relative inline-flex items-center gap-3 rounded-2xl border px-4 py-2 shadow-sm backdrop-blur"),d=_("div","flex flex-wrap items-center gap-3"),(m=E("inline-flex items-center gap-2")).setAttribute("aria-label","Visit extension.js.org"),(u=_("img","size-4 select-none")).alt="Extension.js logo",u.src=g,m.append(u,_("span","sr-only","extension.js")),(p=E("text-muted-foreground text-sm underline underline-offset-4 hover:opacity-90")).textContent="Learn more about developing cross-browser extensions.",d.append(m,p),c.append(d),l.append(c),l)),T.replaceChildren(e),j().then(async e=>{o.textContent=e.name||v,a.title=`• Name: ${e.name}
20
2
  • ID: ${e.id}
21
- • Version: ${e.version}`:"",className:"neon-text",style:{color:"var(--brand-success, #19f5a7)"},children:"loaded successfully"})]}),(0,c.jsx)("p",{className:"text-muted-foreground mx-auto mt-3 max-w-xl text-center text-base leading-relaxed sm:text-lg",children:o||e?.description||"Extension.js makes cross‑browser extension development simple."}),(0,c.jsx)(ey,{className:"mt-6"})]})},{}))}},s={};function a(e){var r=s[e];if(void 0!==r)return r.exports;var o=s[e]={exports:{}};return n[e](o,o.exports,a),o.exports}a.m=n,a.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r),e=[],a.O=(r,o,t,n)=>{if(o){n=n||0;for(var s=e.length;s>0&&e[s-1][2]>n;s--)e[s]=e[s-1];e[s]=[o,t,n];return}for(var l=1/0,s=0;s<e.length;s++){for(var[o,t,n]=e[s],i=!0,c=0;c<o.length;c++)(!1&n||l>=n)&&Object.keys(a.O).every(e=>a.O[e](o[c]))?o.splice(c--,1):(i=!1,n<l&&(l=n));if(i){e.splice(s--,1);var d=t();void 0!==d&&(r=d)}}return r},a.p="/",(()=>{var e=!!(()=>{try{return globalThis.browser.runtime.getURL("/")}catch(e){}})(),r=!!(()=>{try{return globalThis.chrome.runtime.getURL("/")}catch(e){}})(),o=e?globalThis.browser:r?globalThis.chrome:{runtime:{getURL:e=>e}},t="object"==typeof globalThis&&globalThis&&globalThis.__EXTJS_EXTENSION_BASE__?String(globalThis.__EXTJS_EXTENSION_BASE__):"";if(!t&&"object"==typeof document&&document&&document.documentElement)try{t=document.documentElement.getAttribute("data-extjs-extension-base")||""}catch(e){t=""}var n="";if("function"!=typeof importScripts&&(e||r))try{n=o.runtime.getURL("/")}catch(e){n=""}a.p="function"==typeof importScripts?"/":n||(t?t.replace(/\/+$/,"/")+String("/").replace(/^\/+/,""):"/")})(),r={725:0},a.O.j=e=>0===r[e],o=(e,o)=>{var t,n,[s,l,i]=o,c=0;if(s.some(e=>0!==r[e])){for(t in l)a.o(l,t)&&(a.m[t]=l[t]);if(i)var d=i(a)}for(e&&e(o);c<s.length;c++)n=s[c],a.o(r,n)&&r[n]&&r[n][0](),r[n]=0;return a.O(d)},(t=self.rspackChunkextension_js_devtools=self.rspackChunkextension_js_devtools||[]).forEach(o.bind(null,0)),t.push=o.bind(null,t.push.bind(t));var l=a.O(void 0,["790"],()=>a(474));l=a.O(l)})();
3
+ • Version: ${e.version}`,s.textContent=e.description||w,n.alt=`${e.name||"User extension"} icon`;let t=function(e){if(e.icons&&e.icons.length)return[...e.icons].sort((e,t)=>(t.size||0)-(e.size||0))[0]?.url}(e);if(t){if(y&&!t.startsWith("data:")){let e=await new Promise(e=>{try{chrome.runtime.sendMessage({type:"resolve-icon-url",url:t},t=>{e(t?.ok&&"string"==typeof t.dataUrl?t.dataUrl:void 0)})}catch{e(void 0)}});e&&!r&&(n.src=e);return}r||(n.src=t)}}).catch(()=>{}))})();
@@ -1,4 +1,12 @@
1
1
  import type { DevOptions, Manifest } from '../types.js';
2
+ export declare const CHROMIUM_VENDOR_PREFIXES: readonly ['chrome', 'edge'];
2
3
  export declare function filterKeysForThisBrowser(manifest: Manifest, browser: DevOptions['browser']): Manifest;
4
+ export interface DroppedVendorKey {
5
+ path: string;
6
+ familyPath: string;
7
+ vendor: (typeof CHROMIUM_VENDOR_PREFIXES)[number];
8
+ appliedBefore: boolean;
9
+ }
10
+ export declare function findDroppedVendorKeys(manifest: Manifest, browser: DevOptions['browser']): DroppedVendorKey[];
3
11
  export declare function isStaticTheme(manifest: Manifest | undefined | null): boolean;
4
12
  export declare function isStaticThemeSource(manifestPath: string | undefined, browser: DevOptions['browser'] | string | undefined): boolean;
@@ -1,5 +1,6 @@
1
1
  import { type Compiler } from '@rspack/core';
2
2
  import type { DevOptions, PluginInterface } from '../types.js';
3
+ export declare const IMPORT_META_URL_RUNTIME = "(function(){var h=typeof document!==\"undefined\"&&document.baseURI||self.location.href;try{var g=globalThis,r=(g.browser||g.chrome).runtime.getURL(\"/\");return h.indexOf(r)===0?h:r}catch(_){return h}})()";
3
4
  export declare function getEnvFileCandidates(browser: DevOptions['browser'], mode: string): string[];
4
5
  export declare class EnvPlugin {
5
6
  readonly browser: DevOptions['browser'];
@@ -1,3 +1,4 @@
1
1
  import type { JsFramework } from '../../types.js';
2
2
  export declare function isUsingVue(projectPath: string): boolean;
3
+ export declare function resolveVueBundlerEntry(requireFromProject: NodeJS.Require, id: string): string | undefined;
3
4
  export declare function maybeUseVue(projectPath: string, mode?: 'development' | 'production' | string): Promise<JsFramework | undefined>;
@@ -12,6 +12,7 @@ export declare function manifestDepsTracked(addedCount: number): string;
12
12
  export declare function manifestLegacyWarningsSummary(count: number): string;
13
13
  export declare function pageActionNotSupportedByBrowser(browser: string): string;
14
14
  export declare function pageActionDroppedForBrowserAction(browser: string): string;
15
+ export declare function vendorPrefixedKeyDropped(key: string, familyKey: string, vendor: 'chrome' | 'edge', browser: string): string;
15
16
  export declare function mv2SandboxPolicyDropped(browser: string): string;
16
17
  export declare function geckoSidePanelUnsupported(file: string): string;
17
18
  export declare function geckoActionUnsupportedOnMv2(file: string): string;
@@ -19,7 +19,7 @@ import { bundlerFatalError, bundlerRecompiling, browserRunnerDisabled, Playwrigh
19
19
  import { renderStatsBlocks, makeSanitizedConsole } from "./stats-handler~0.mjs";
20
20
  import { stripBom, findNearestProjectManifestSync, PROJECT_MANIFEST_FILENAMES, parseJsonSafe, readProjectDependencies } from "./731~0.mjs";
21
21
  import { EXTENSIONJS_CONTENT_SCRIPT_LAYER, getCanonicalContentScriptEntryName, parseCanonicalContentScriptAsset, CONTENT_SCRIPT_CSS_PROBE_MARKER_PREFIX, createContentScriptCssProbeMarkerPattern, getCanonicalContentScriptJsAssetName, getCanonicalContentScriptCssAssetName, isCanonicalContentScriptAsset } from "./640~0.mjs";
22
- import { getURLDependencyMissing, entrySplitAcrossInitialFiles, isStaticThemeSource, fetchedFileDependencyMissing, isStaticTheme, compiledSourceSpelling, filterKeysForThisBrowser, importScriptsDependencyMissing, injectedFileDependencyMissing, injectedCompiledSourceLiteral, staticImportDependencyMissing, runtimeSetSurfaceDependencyMissing } from "./672~0.mjs";
22
+ import { getURLDependencyMissing, findDroppedVendorKeys, isStaticThemeSource, entrySplitAcrossInitialFiles, isStaticTheme, fetchedFileDependencyMissing, filterKeysForThisBrowser, compiledSourceSpelling, importScriptsDependencyMissing, injectedFileDependencyMissing, injectedCompiledSourceLiteral, staticImportDependencyMissing, runtimeSetSurfaceDependencyMissing } from "./672~0.mjs";
23
23
  import { packagingSourceFiles, debugBrowser, debugExtensionsToLoad, treeWithSourceFiles, debugOutputPath, manifestInvalidJson, getDirs, asAbsolute, treeWithDistFilesBrowser, packagingDistributionFiles, treeWithSourceAndDistFiles, toPosixPath as paths_toPosixPath, debugContextPath, noCompanionExtensionsResolved } from "./950~0.mjs";
24
24
  import { cssMinifierDroppedRules, postCssConfigUnreadable, missingSassDependency, deadCssUrlRef, postCssPluginNotResolved, postCssConfigPluginsShape, cssIntegrationsEnabled, cssConfigsDetected, isUsingIntegration } from "./524~0.mjs";
25
25
  import { minifierDroppedTokens, restoreVerbatimCssAssets } from "./88~0.mjs";
@@ -1190,6 +1190,7 @@ function buildCanonicalManifest(manifestPath, manifest, browser, projectPath) {
1190
1190
  ...JSON.parse(getManifestOverrides(manifestPath, forOverrides, projectPath))
1191
1191
  }));
1192
1192
  }
1193
+ const IMPORT_META_URL_RUNTIME = '(function(){var h=typeof document!=="undefined"&&document.baseURI||self.location.href;try{var g=globalThis,r=(g.browser||g.chrome).runtime.getURL("/");return h.indexOf(r)===0?h:r}catch(_){return h}})()';
1193
1194
  function resolveProcessShim() {
1194
1195
  const candidate = __rspack_external_node_path_806ed179.join(__rspack_import_meta_dirname__, '..', 'runtime', 'process-shim.cjs');
1195
1196
  try {
@@ -1301,6 +1302,8 @@ class EnvPlugin {
1301
1302
  filteredEnvVars['import.meta.env'] = JSON.stringify(importMetaEnvObject);
1302
1303
  filteredEnvVars['import.meta.dirname'] = 'undefined';
1303
1304
  filteredEnvVars['import.meta.filename'] = 'undefined';
1305
+ filteredEnvVars.global = 'globalThis';
1306
+ filteredEnvVars['import.meta.url'] = IMPORT_META_URL_RUNTIME;
1304
1307
  const injectedCount = Object.keys(filteredEnvVars).filter((k)=>k.startsWith('process.env.EXTENSION_PUBLIC_')).length;
1305
1308
  if (isDebug()) console.log(envInjectedPublicVars(injectedCount));
1306
1309
  const processShim = resolveProcessShim();
@@ -2760,6 +2763,21 @@ function isUsingVue(projectPath) {
2760
2763
  }
2761
2764
  return using;
2762
2765
  }
2766
+ function resolveVueBundlerEntry(requireFromProject, id) {
2767
+ try {
2768
+ const manifestPath = requireFromProject.resolve(`${id}/package.json`);
2769
+ const manifest = JSON.parse(__rspack_external_node_fs_1b05aee1.readFileSync(manifestPath, 'utf8'));
2770
+ if ('string' == typeof manifest.module && manifest.module) {
2771
+ const entry = __rspack_external_node_path_806ed179.join(__rspack_external_node_path_806ed179.dirname(manifestPath), manifest.module);
2772
+ if (__rspack_external_node_fs_1b05aee1.existsSync(entry)) return entry;
2773
+ }
2774
+ } catch {}
2775
+ try {
2776
+ return requireFromProject.resolve(id);
2777
+ } catch {
2778
+ return;
2779
+ }
2780
+ }
2763
2781
  async function maybeUseVue(projectPath, mode = 'development') {
2764
2782
  if (!isUsingVue(projectPath)) return;
2765
2783
  const vueLoaderPath = await ensureOptionalContractPackageResolved({
@@ -2790,19 +2808,13 @@ async function maybeUseVue(projectPath, mode = 'development') {
2790
2808
  const defaultPlugins = [
2791
2809
  new VueLoaderPlugin(),
2792
2810
  new DefinePlugin({
2793
- __VUE_OPTIONS_API__: JSON.stringify(!isProd),
2811
+ __VUE_OPTIONS_API__: JSON.stringify(true),
2794
2812
  __VUE_PROD_DEVTOOLS__: JSON.stringify(!isProd),
2795
2813
  __VUE_PROD_HYDRATION_MISMATCH_DETAILS__: JSON.stringify(!isProd)
2796
2814
  })
2797
2815
  ];
2798
2816
  const requireFromProject = createRequire(__rspack_external_node_path_806ed179.join(projectPath, 'package.json'));
2799
- const resolveFromProject = (id)=>{
2800
- try {
2801
- return requireFromProject.resolve(id);
2802
- } catch {
2803
- return;
2804
- }
2805
- };
2817
+ const resolveFromProject = (id)=>resolveVueBundlerEntry(requireFromProject, id);
2806
2818
  const alias = {};
2807
2819
  const vuePath = resolveFromProject('vue');
2808
2820
  const vueRuntimeDom = resolveFromProject('@vue/runtime-dom');
@@ -10120,6 +10132,10 @@ function pageActionNotSupportedByBrowser(browser) {
10120
10132
  function pageActionDroppedForBrowserAction(browser) {
10121
10133
  return `${messaging_prefix('warn')} ${pintor.blue(browser)} refuses a Manifest V2 manifest that declares both ${pintor.yellow('browser_action')} and ${pintor.yellow('page_action')}.\nThe build kept ${pintor.yellow('browser_action')} and dropped ${pintor.yellow('page_action')} from the built manifest, so its page was not emitted. Remove one of the two keys, or scope page_action with the firefox: prefix.`;
10122
10134
  }
10135
+ function vendorPrefixedKeyDropped(key, familyKey, vendor, browser) {
10136
+ const vendorName = 'edge' === vendor ? 'Edge' : 'Chrome';
10137
+ return `${messaging_prefix('warn')} ${pintor.yellow(key)} now applies only to ${vendorName} builds, so the ${pintor.blue(browser)} build dropped it.\nRename it to ${pintor.yellow(familyKey)} to keep it on every Chromium-based browser. Leave it as is if it's meant for ${vendorName} only.`;
10138
+ }
10123
10139
  function mv2SandboxPolicyDropped(browser) {
10124
10140
  return `${messaging_prefix('warn')} ${pintor.blue(browser)} reads a Manifest V2 ${pintor.yellow('content_security_policy')} as one string, so the ${pintor.yellow('sandbox')} slot has nowhere to go.\nThe build wrote the ${pintor.yellow('extension_pages')} policy as that string and dropped the sandbox policy from the built manifest. Scope the object form with the chromium: prefix, or declare a Manifest V3 build for this browser.`;
10125
10141
  }
@@ -12929,6 +12945,7 @@ class UpdateManifest {
12929
12945
  const dropReason = pageActionDropReason(forBrowser, this.browser);
12930
12946
  if (dropReason) reportToCompilation(compilation, compiler, 'conflicts' === dropReason ? pageActionDroppedForBrowserAction(String(this.browser)) : pageActionNotSupportedByBrowser(String(this.browser)), 'warning', 'manifest.json');
12931
12947
  if (hasMv2SandboxPolicy(forBrowser)) reportToCompilation(compilation, compiler, mv2SandboxPolicyDropped(String(this.browser)), 'warning', 'manifest.json');
12948
+ for (const dropped of findDroppedVendorKeys(manifest, this.browser))if (dropped.appliedBefore) reportToCompilation(compilation, compiler, vendorPrefixedKeyDropped(dropped.path, dropped.familyPath, dropped.vendor, String(this.browser)), 'warning', 'manifest.json');
12932
12949
  const projectPath = compiler.options.context || __rspack_external_node_path_806ed179.dirname(this.manifestPath);
12933
12950
  let patchedManifest = buildCanonicalManifest(this.manifestPath, manifest, this.browser, projectPath);
12934
12951
  patchedManifest = patchGeckoBackground(patchedManifest, this.browser);
@@ -14279,7 +14296,8 @@ function webpackConfig(projectStructure, devOptions) {
14279
14296
  ]
14280
14297
  },
14281
14298
  node: {
14282
- __dirname: false
14299
+ __dirname: false,
14300
+ global: false
14283
14301
  },
14284
14302
  resolveLoader: {
14285
14303
  modules: [
package/package.json CHANGED
@@ -43,7 +43,7 @@
43
43
  "runtime"
44
44
  ],
45
45
  "name": "extension-develop",
46
- "version": "4.1.18",
46
+ "version": "4.1.19",
47
47
  "description": "Develop, build, preview, and package Extension.js projects.",
48
48
  "author": {
49
49
  "name": "Cezar Augusto",
@@ -99,7 +99,7 @@
99
99
  "@rspack/plugin-react-refresh": "2.0.2",
100
100
  "@vue/compiler-sfc": "3.5.26",
101
101
  "acorn": "^8.16.0",
102
- "browser-extension-manifest-fields": "^2.3.1",
102
+ "browser-extension-manifest-fields": "^3.0.1",
103
103
  "case-sensitive-paths-webpack-plugin": "^2.4.0",
104
104
  "content-security-policy-parser": "^0.6.0",
105
105
  "cross-spawn": "^7.0.6",
@@ -143,6 +143,7 @@
143
143
  "@types/webextension-polyfill": "0.12.4",
144
144
  "@types/ws": "^8.18.1",
145
145
  "addons-linter": "10.12.0",
146
+ "fast-check": "^4.10.0",
146
147
  "svelte": "5.55.9",
147
148
  "tsup": "^8.5.1",
148
149
  "typescript": "7.0.2",