@frontfriend/sdk 1.0.0 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +14 -3
- package/dist/browser.mjs +1 -1
- package/dist/cli.js +154 -154
- package/dist/components-config-schema.d.ts +9 -1
- package/dist/components-config-schema.js +1 -1
- package/dist/ffdc.js +1 -1
- package/dist/ffdc.mjs +1 -1
- package/dist/index.js +1 -1
- package/dist/index.mjs +1 -1
- package/dist/lib/core/adoption.js +1 -1
- package/dist/lib/core/api-client.js +1 -1
- package/dist/lib/core/application-adoption.js +1 -1
- package/dist/lib/core/classes-source.js +1 -1
- package/dist/lib/core/components-config-schema.js +1 -1
- package/dist/lib/core/credentials.js +2 -2
- package/dist/lib/core/token-artifact-client.js +6 -6
- package/dist/lib/core/token-artifact.d.ts +12 -0
- package/dist/lib/core/token-artifact.js +1 -1
- package/dist/lib/core/token-processor.js +5 -5
- package/dist/mcp.cjs +32 -32
- package/dist/next.js +2 -2
- package/dist/package.json +1 -1
- package/dist/vite.js +2 -2
- package/package.json +14 -15
|
@@ -1,2 +1,10 @@
|
|
|
1
1
|
export const componentsConfigSchema: Record<string, any>;
|
|
2
|
-
export function isCSSClassString(value: string): boolean;
|
|
2
|
+
export function isCSSClassString(value: string): boolean;
|
|
3
|
+
export function isCompilableClass(className: string): boolean;
|
|
4
|
+
export function uncompilableClass(className: string): {
|
|
5
|
+
className: string;
|
|
6
|
+
pseudoElement: string;
|
|
7
|
+
chained: string[];
|
|
8
|
+
suggestion: string;
|
|
9
|
+
reason: string;
|
|
10
|
+
} | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var t={$id:"https://frontfriend.dev/schemas/components-config.schema.json",type:"object",additionalProperties:{$ref:"#/$defs/componentConfig"},$defs:{componentConfig:{$ref:"#/$defs/componentEnvelope"},styleTree:{anyOf:[{type:"string"},{type:"object",additionalProperties:{$ref:"#/$defs/styleTree"}}]},behaviorTree:{anyOf:[{type:["string","number","boolean","null"]},{type:"array",items:{$ref:"#/$defs/behaviorTree"}},{type:"object",additionalProperties:{$ref:"#/$defs/behaviorTree"}}]},componentEnvelope:{type:"object",additionalProperties:!1,required:["styles"],properties:{styles:{type:"object",additionalProperties:{$ref:"#/$defs/styleTree"}},behavior:{type:"object",additionalProperties:{$ref:"#/$defs/behaviorTree"}}}}}};function
|
|
1
|
+
var T=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports);var m=T((W,h)=>{var E=new Set(["after","backdrop","before","details-content","file","first-letter","first-line","marker","placeholder","selection"]),C=new Set(["active","focus","focus-visible","focus-within","hover"]),S=new Set(["sm","md","lg","xl","2xl","any-pointer-coarse","any-pointer-fine","any-pointer-none","contrast-less","contrast-more","forced-colors","inverted-colors","landscape","motion-reduce","motion-safe","noscript","pointer-coarse","pointer-fine","pointer-none","portrait","print","starting"]),A=/^(?:min-|max-|@|supports-|in-(?!range$))/,j=/^\[&(?::(?:active|focus|focus-visible|focus-within|hover))+\]$/;function P(t){let e=[],n=0,s=0;for(let o=0;o<t.length;o+=1){let i=t[o];i==="["||i==="("?n+=1:(i==="]"||i===")")&&n>0?n-=1:i===":"&&n===0&&(e.push(t.slice(s,o)),s=o+1)}return e.push(t.slice(s)),{variants:e.slice(0,-1),utility:e[e.length-1]}}function u(t){return t.replace(/\/[\w-]+$/,"")}function l(t){let e=u(t);return E.has(e)||e.startsWith("[")&&e.includes("::")}function a(t){let e=u(t);return C.has(e)||S.has(e)?!0:e.startsWith("[")?e.startsWith("[@")||j.test(e):e.startsWith("not-")?a(e.slice(4)):A.test(e)}function d(t){if(typeof t!="string"||!t.includes(":"))return null;let e=t.startsWith("!")?"!":"",{variants:n,utility:s}=P(t.slice(e.length)),o=null,i=[];for(let r of n)o!==null&&!a(r)&&i.push(r),o===null&&l(r)&&(o=r);if(i.length===0)return null;let c=n.reduce((r,g,v)=>l(g)?v:r,-1),y=n.slice(0,c).filter(r=>!l(r)),f=n.slice(c+1),$=`${e}${[...y,...f.filter(r=>!a(r)),n[c],...f.filter(a),s].join(":")}`,p=n.filter(l),b=p.length>1?`${p.join(" and ")} are pseudo-elements, and a selector can hold only one`:`${i.join(", ")} cannot follow the pseudo-element ${o}; only hover, focus, focus-visible, focus-within, active, in-* and media, container or supports variants can`;return{className:t,pseudoElement:o,chained:i,suggestion:$,reason:b}}function R(t){return d(t)===null}h.exports={isCompilableClass:R,uncompilableClass:d}});var{isCompilableClass:_,uncompilableClass:w}=m(),I={$id:"https://frontfriend.dev/schemas/components-config.schema.json",type:"object",additionalProperties:{$ref:"#/$defs/componentConfig"},$defs:{componentConfig:{$ref:"#/$defs/componentEnvelope"},styleTree:{anyOf:[{type:"string"},{type:"object",additionalProperties:{$ref:"#/$defs/styleTree"}}]},behaviorTree:{anyOf:[{type:["string","number","boolean","null"]},{type:"array",items:{$ref:"#/$defs/behaviorTree"}},{type:"object",additionalProperties:{$ref:"#/$defs/behaviorTree"}}]},componentEnvelope:{type:"object",additionalProperties:!1,required:["styles"],properties:{styles:{type:"object",additionalProperties:{$ref:"#/$defs/styleTree"}},behavior:{type:"object",additionalProperties:{$ref:"#/$defs/behaviorTree"}}}}}};function O(t){return typeof t=="string"&&t.trim().length>0}module.exports={componentsConfigSchema:I,isCSSClassString:O,isCompilableClass:_,uncompilableClass:w};
|
package/dist/ffdc.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var
|
|
1
|
+
var h=Object.defineProperty;var F=Object.getOwnPropertyDescriptor;var Y=Object.getOwnPropertyNames;var X=Object.prototype.hasOwnProperty;var k=(e,n)=>()=>(e&&(n=e(e=0)),n);var x=(e,n)=>()=>(n||e((n={exports:{}}).exports,n),n.exports),H=(e,n)=>{for(var o in n)h(e,o,{get:n[o],enumerable:!0})},J=(e,n,o,t)=>{if(n&&typeof n=="object"||typeof n=="function")for(let s of Y(n))!X.call(e,s)&&s!==o&&h(e,s,{get:()=>n[s],enumerable:!(t=F(n,s))||t.enumerable});return e};var Q=e=>J(h({},"__esModule",{value:!0}),e);var z=x((Ae,D)=>{var Z=new Set(["after","backdrop","before","details-content","file","first-letter","first-line","marker","placeholder","selection"]),ee=new Set(["active","focus","focus-visible","focus-within","hover"]),ne=new Set(["sm","md","lg","xl","2xl","any-pointer-coarse","any-pointer-fine","any-pointer-none","contrast-less","contrast-more","forced-colors","inverted-colors","landscape","motion-reduce","motion-safe","noscript","pointer-coarse","pointer-fine","pointer-none","portrait","print","starting"]),oe=/^(?:min-|max-|@|supports-|in-(?!range$))/,te=/^\[&(?::(?:active|focus|focus-visible|focus-within|hover))+\]$/;function se(e){let n=[],o=0,t=0;for(let s=0;s<e.length;s+=1){let a=e[s];a==="["||a==="("?o+=1:(a==="]"||a===")")&&o>0?o-=1:a===":"&&o===0&&(n.push(e.slice(t,s)),t=s+1)}return n.push(e.slice(t)),{variants:n.slice(0,-1),utility:n[n.length-1]}}function M(e){return e.replace(/\/[\w-]+$/,"")}function y(e){let n=M(e);return Z.has(n)||n.startsWith("[")&&n.includes("::")}function v(e){let n=M(e);return ee.has(n)||ne.has(n)?!0:n.startsWith("[")?n.startsWith("[@")||te.test(n):n.startsWith("not-")?v(n.slice(4)):oe.test(n)}function w(e){if(typeof e!="string"||!e.includes(":"))return null;let n=e.startsWith("!")?"!":"",{variants:o,utility:t}=se(e.slice(n.length)),s=null,a=[];for(let u of o)s!==null&&!v(u)&&a.push(u),s===null&&y(u)&&(s=u);if(a.length===0)return null;let d=o.reduce((u,W,q)=>y(W)?q:u,-1),S=o.slice(0,d).filter(u=>!y(u)),p=o.slice(d+1),R=`${n}${[...S,...p.filter(u=>!v(u)),o[d],...p.filter(v),t].join(":")}`,C=o.filter(y),O=C.length>1?`${C.join(" and ")} are pseudo-elements, and a selector can hold only one`:`${a.join(", ")} cannot follow the pseudo-element ${s}; only hover, focus, focus-visible, focus-within, active, in-* and media, container or supports variants can`;return{className:e,pseudoElement:s,chained:a,suggestion:R,reason:O}}function re(e){return w(e)===null}D.exports={isCompilableClass:re,uncompilableClass:w}});var T=x((Te,A)=>{var{isCompilableClass:ie,uncompilableClass:ae}=z(),le={$id:"https://frontfriend.dev/schemas/components-config.schema.json",type:"object",additionalProperties:{$ref:"#/$defs/componentConfig"},$defs:{componentConfig:{$ref:"#/$defs/componentEnvelope"},styleTree:{anyOf:[{type:"string"},{type:"object",additionalProperties:{$ref:"#/$defs/styleTree"}}]},behaviorTree:{anyOf:[{type:["string","number","boolean","null"]},{type:"array",items:{$ref:"#/$defs/behaviorTree"}},{type:"object",additionalProperties:{$ref:"#/$defs/behaviorTree"}}]},componentEnvelope:{type:"object",additionalProperties:!1,required:["styles"],properties:{styles:{type:"object",additionalProperties:{$ref:"#/$defs/styleTree"}},behavior:{type:"object",additionalProperties:{$ref:"#/$defs/behaviorTree"}}}}}};function pe(e){return typeof e=="string"&&e.trim().length>0}A.exports={componentsConfigSchema:le,isCSSClassString:pe,isCompilableClass:ie,uncompilableClass:ae}});var V=x((je,E)=>{function c(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function b(e,n){if(!c(e)||!c(n))return n===void 0?e:n;let o={...e};for(let[t,s]of Object.entries(n))o[t]=t in o?b(o[t],s):s;return o}function N(e,n,o=[],t=[]){if(e===void 0||n===void 0)return t;if(!c(e)||!c(n))return t.push(o.join(".")),t;for(let s of Object.keys(e))s in n&&N(e[s],n[s],[...o,s],t);return t}function j(e){return c(e)&&("styles"in e||"behavior"in e)}function $(e,n="component"){if(!j(e)||!c(e.styles)||e.behavior!==void 0&&!c(e.behavior)||Object.keys(e).some(t=>!["styles","behavior"].includes(t)))throw new TypeError(`Component ${n} must use the styles/behavior envelope`);let o=N(e.styles,e.behavior,[n]);if(o.length>0)throw new Error(`Component config styles/behavior conflict at ${o.join(", ")}`);return b(e.styles||{},e.behavior||{})}function ue(e){if(!c(e))return e;let n=!1,o={};for(let[t,s]of Object.entries(e))o[t]=$(s,t),o[t]!==s&&(n=!0);return n?o:e}E.exports={isPlainObject:c,deepMerge:b,findTreeConflicts:N,isComponentEnvelope:j,toRuntimeComponentConfig:$,toRuntimeComponentsConfig:ue}});function I(e){return typeof e=="object"&&e!==null||typeof e=="function"}function r(e,n){return I(e)?e[n]:void 0}function i(e,n){let o=I(e)?e:null,t=o?Object.create(o):{},s=(a,d)=>Object.defineProperty(t,a,{value:d,enumerable:!0,writable:!0,configurable:!0});if(o)for(let a of Object.keys(o))s(a,o[a]);for(let a of Object.keys(n))s(a,n[a]);return t}function de(e,n){let o={};for(let t of n){let s=r(e,t);s!==void 0&&(o[t]=s)}return o}function l(...e){return e.find(n=>n!=null)||""}function f(...e){return e.find(Boolean)||{}}function g(e,n,o){return e[n]||de(e,o)}function _(e){return i(e,{default:l(e.default,e.main),outline:l(e.outline,e.tertiary),linkDestructive:l(e.linkDestructive,e.linkdestructive)})}function ce(e){let n=r(e,"variants"),o=f(e.variant,r(n,"variant")),t=f(e.size,r(n,"size")),s=f(e.iconPosition,r(n,"iconPosition")),a=f(e.fullwidth,r(n,"fullwidth")),d=r(e.slots,"icon")||{},S=r(d,"variants"),p=f(d.size,r(S,"size")),R=f(d.color,r(S,"color")),C=O=>{let u=r(s,O);return i(u,{sm:l(r(u,"sm"),r(u,"small")),lg:l(r(u,"lg"),r(u,"large"))})};return i(e,{variant:_(o),size:i(t,{icon:l(t.icon,r(r(s,"default"),"default")),"icon-xs":l(t["icon-xs"],t.xs,t.small,t.sm),"icon-sm":l(t["icon-sm"],t.small,t.sm),"icon-lg":l(t["icon-lg"],t.large,t.lg)}),iconPosition:i(s,{prefix:C("prefix"),suffix:C("suffix"),default:C("default")}),fullwidth:a,slots:i(e.slots,{icon:i(d,{size:i(p,{icon:l(p.icon,p.default),"icon-xs":l(p["icon-xs"],p.xs,p.small,p.sm,p.default),"icon-sm":l(p["icon-sm"],p.sm,p.default),"icon-lg":l(p["icon-lg"],p.lg,p.default)}),color:_(R)})})})}function Ce(e){let n=e.variant,o=r(n,"subtle");return i(e,{variant:i(n,{default:l(r(n,"default"),r(n,"main")),outline:l(r(n,"outline"),r(n,"tertiary")),ghost:l(r(n,"ghost"),r(n,"tertiary")),link:l(r(n,"link"),r(n,"tertiary")),subtle:i(o,{default:l(r(o,"default"),r(o,"main"))})})})}function fe(e){let n=e.slots,o=r(n,"caption");return i(e,{slots:i(n,{caption:i(o,{overlay:r(o,"overlay")??r(o,"root")})})})}function ge(e,n={}){let o=r(e.slots,"calendar")??n.calendar,t=r(o,"slots"),s=r(t,"range");return i(e,{slots:i(e.slots,{calendar:i(o,{slots:i(t,{range:i(s,{root:r(s,"root")??r(t,"root"),container:r(s,"container")??r(t,"content"),row:r(s,"row")??r(t,"row")})})})})})}function ve(e){return i(e,{slots:g(e,"slots",me),states:g(e,"states",Se),props:g(e,"props",ye)})}function Oe(e){return i(e,{slots:g(e,"slots",Re)})}function xe(e){return i(e,{slots:g(e,"slots",he)})}function G(e){return i(e.props,{padding:r(e.props,"padding")||e.padding})}function be(e){return i(e,{props:G(e)})}function Pe(e){return i(e,{slots:g(e,"slots",Ne),props:G(e)})}function Ie(e){return i(e,{root:e.root,slots:i(e.slots,{track:r(e.slots,"track")})})}function B(e,n,...o){if(!Object.prototype.hasOwnProperty.call(P,e))throw new TypeError(`No component configuration policy for "${String(e)}".`);if(n==null)return n;if(!I(n))throw new TypeError("Component config must be an object.");let t=n;return P[e](t,o[0])}var me,Se,ye,Re,he,Ne,P,$e,K=k(()=>{me=["header","title","description","content","action","footer"],Se=["noContent","outside"],ye=["footerAlign"];Re=["dialog","input","list","empty","group","separator","item","shortcut","combobox"];he=["addon","button","text","input","textarea"];Ne=["horizontal","vertical","container"];P={button:ce,badge:Ce,calendar:fe,card:ve,command:Oe,"date-slider":ge,"input-group":xe,popover:be,separator:Pe,spinner:Ie};$e=Object.freeze(Object.keys(P))});var L={};H(L,{componentConfig:()=>Be});function Be(e,n){let o=e[n];return n==="date-slider"?B(n,o,{get calendar(){return e.calendar}}):B(n,o)}var U=k(()=>{K()});var{componentsConfigSchema:ke,isCSSClassString:Me}=T(),{toRuntimeComponentsConfig:we}=V(),{componentConfig:De}=(U(),Q(L));function m(e,n){if(typeof n=="string")return De(m(e),n);if(!e)return{};if(typeof e!="object")throw new Error("Config must be an object");return we(e)}m.componentsConfigSchema=ke;m.isCSSClassString=Me;module.exports=m;module.exports.default=m;module.exports.ffdc=m;
|
package/dist/ffdc.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var
|
|
1
|
+
var J=Object.create;var y=Object.defineProperty;var Q=Object.getOwnPropertyDescriptor;var Z=Object.getOwnPropertyNames;var ee=Object.getPrototypeOf,ne=Object.prototype.hasOwnProperty;var w=(e,n)=>()=>(e&&(n=e(e=0)),n);var v=(e,n)=>()=>(n||e((n={exports:{}}).exports,n),n.exports),oe=(e,n)=>{for(var o in n)y(e,o,{get:n[o],enumerable:!0})},D=(e,n,o,t)=>{if(n&&typeof n=="object"||typeof n=="function")for(let s of Z(n))!ne.call(e,s)&&s!==o&&y(e,s,{get:()=>n[s],enumerable:!(t=Q(n,s))||t.enumerable});return e};var te=(e,n,o)=>(o=e!=null?J(ee(e)):{},D(n||!e||!e.__esModule?y(o,"default",{value:e,enumerable:!0}):o,e)),se=e=>D(y({},"__esModule",{value:!0}),e);var j=v((_e,T)=>{var re=new Set(["after","backdrop","before","details-content","file","first-letter","first-line","marker","placeholder","selection"]),ie=new Set(["active","focus","focus-visible","focus-within","hover"]),ae=new Set(["sm","md","lg","xl","2xl","any-pointer-coarse","any-pointer-fine","any-pointer-none","contrast-less","contrast-more","forced-colors","inverted-colors","landscape","motion-reduce","motion-safe","noscript","pointer-coarse","pointer-fine","pointer-none","portrait","print","starting"]),le=/^(?:min-|max-|@|supports-|in-(?!range$))/,pe=/^\[&(?::(?:active|focus|focus-visible|focus-within|hover))+\]$/;function ue(e){let n=[],o=0,t=0;for(let s=0;s<e.length;s+=1){let a=e[s];a==="["||a==="("?o+=1:(a==="]"||a===")")&&o>0?o-=1:a===":"&&o===0&&(n.push(e.slice(t,s)),t=s+1)}return n.push(e.slice(t)),{variants:n.slice(0,-1),utility:n[n.length-1]}}function z(e){return e.replace(/\/[\w-]+$/,"")}function R(e){let n=z(e);return re.has(n)||n.startsWith("[")&&n.includes("::")}function O(e){let n=z(e);return ie.has(n)||ae.has(n)?!0:n.startsWith("[")?n.startsWith("[@")||pe.test(n):n.startsWith("not-")?O(n.slice(4)):le.test(n)}function A(e){if(typeof e!="string"||!e.includes(":"))return null;let n=e.startsWith("!")?"!":"",{variants:o,utility:t}=ue(e.slice(n.length)),s=null,a=[];for(let u of o)s!==null&&!O(u)&&a.push(u),s===null&&R(u)&&(s=u);if(a.length===0)return null;let d=o.reduce((u,X,H)=>R(X)?H:u,-1),S=o.slice(0,d).filter(u=>!R(u)),p=o.slice(d+1),x=`${n}${[...S,...p.filter(u=>!O(u)),o[d],...p.filter(O),t].join(":")}`,C=o.filter(R),b=C.length>1?`${C.join(" and ")} are pseudo-elements, and a selector can hold only one`:`${a.join(", ")} cannot follow the pseudo-element ${s}; only hover, focus, focus-visible, focus-within, active, in-* and media, container or supports variants can`;return{className:e,pseudoElement:s,chained:a,suggestion:x,reason:b}}function de(e){return A(e)===null}T.exports={isCompilableClass:de,uncompilableClass:A}});var E=v((Ge,$)=>{var{isCompilableClass:ce,uncompilableClass:Ce}=j(),fe={$id:"https://frontfriend.dev/schemas/components-config.schema.json",type:"object",additionalProperties:{$ref:"#/$defs/componentConfig"},$defs:{componentConfig:{$ref:"#/$defs/componentEnvelope"},styleTree:{anyOf:[{type:"string"},{type:"object",additionalProperties:{$ref:"#/$defs/styleTree"}}]},behaviorTree:{anyOf:[{type:["string","number","boolean","null"]},{type:"array",items:{$ref:"#/$defs/behaviorTree"}},{type:"object",additionalProperties:{$ref:"#/$defs/behaviorTree"}}]},componentEnvelope:{type:"object",additionalProperties:!1,required:["styles"],properties:{styles:{type:"object",additionalProperties:{$ref:"#/$defs/styleTree"}},behavior:{type:"object",additionalProperties:{$ref:"#/$defs/behaviorTree"}}}}}};function ge(e){return typeof e=="string"&&e.trim().length>0}$.exports={componentsConfigSchema:fe,isCSSClassString:ge,isCompilableClass:ce,uncompilableClass:Ce}});var K=v((Ke,G)=>{function c(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function N(e,n){if(!c(e)||!c(n))return n===void 0?e:n;let o={...e};for(let[t,s]of Object.entries(n))o[t]=t in o?N(o[t],s):s;return o}function P(e,n,o=[],t=[]){if(e===void 0||n===void 0)return t;if(!c(e)||!c(n))return t.push(o.join(".")),t;for(let s of Object.keys(e))s in n&&P(e[s],n[s],[...o,s],t);return t}function V(e){return c(e)&&("styles"in e||"behavior"in e)}function _(e,n="component"){if(!V(e)||!c(e.styles)||e.behavior!==void 0&&!c(e.behavior)||Object.keys(e).some(t=>!["styles","behavior"].includes(t)))throw new TypeError(`Component ${n} must use the styles/behavior envelope`);let o=P(e.styles,e.behavior,[n]);if(o.length>0)throw new Error(`Component config styles/behavior conflict at ${o.join(", ")}`);return N(e.styles||{},e.behavior||{})}function me(e){if(!c(e))return e;let n=!1,o={};for(let[t,s]of Object.entries(e))o[t]=_(s,t),o[t]!==s&&(n=!0);return n?o:e}G.exports={isPlainObject:c,deepMerge:N,findTreeConflicts:P,isComponentEnvelope:V,toRuntimeComponentConfig:_,toRuntimeComponentsConfig:me}});function B(e){return typeof e=="object"&&e!==null||typeof e=="function"}function r(e,n){return B(e)?e[n]:void 0}function i(e,n){let o=B(e)?e:null,t=o?Object.create(o):{},s=(a,d)=>Object.defineProperty(t,a,{value:d,enumerable:!0,writable:!0,configurable:!0});if(o)for(let a of Object.keys(o))s(a,o[a]);for(let a of Object.keys(n))s(a,n[a]);return t}function Se(e,n){let o={};for(let t of n){let s=r(e,t);s!==void 0&&(o[t]=s)}return o}function l(...e){return e.find(n=>n!=null)||""}function f(...e){return e.find(Boolean)||{}}function g(e,n,o){return e[n]||Se(e,o)}function L(e){return i(e,{default:l(e.default,e.main),outline:l(e.outline,e.tertiary),linkDestructive:l(e.linkDestructive,e.linkdestructive)})}function ye(e){let n=r(e,"variants"),o=f(e.variant,r(n,"variant")),t=f(e.size,r(n,"size")),s=f(e.iconPosition,r(n,"iconPosition")),a=f(e.fullwidth,r(n,"fullwidth")),d=r(e.slots,"icon")||{},S=r(d,"variants"),p=f(d.size,r(S,"size")),x=f(d.color,r(S,"color")),C=b=>{let u=r(s,b);return i(u,{sm:l(r(u,"sm"),r(u,"small")),lg:l(r(u,"lg"),r(u,"large"))})};return i(e,{variant:L(o),size:i(t,{icon:l(t.icon,r(r(s,"default"),"default")),"icon-xs":l(t["icon-xs"],t.xs,t.small,t.sm),"icon-sm":l(t["icon-sm"],t.small,t.sm),"icon-lg":l(t["icon-lg"],t.large,t.lg)}),iconPosition:i(s,{prefix:C("prefix"),suffix:C("suffix"),default:C("default")}),fullwidth:a,slots:i(e.slots,{icon:i(d,{size:i(p,{icon:l(p.icon,p.default),"icon-xs":l(p["icon-xs"],p.xs,p.small,p.sm,p.default),"icon-sm":l(p["icon-sm"],p.sm,p.default),"icon-lg":l(p["icon-lg"],p.lg,p.default)}),color:L(x)})})})}function ve(e){let n=e.variant,o=r(n,"subtle");return i(e,{variant:i(n,{default:l(r(n,"default"),r(n,"main")),outline:l(r(n,"outline"),r(n,"tertiary")),ghost:l(r(n,"ghost"),r(n,"tertiary")),link:l(r(n,"link"),r(n,"tertiary")),subtle:i(o,{default:l(r(o,"default"),r(o,"main"))})})})}function Re(e){let n=e.slots,o=r(n,"caption");return i(e,{slots:i(n,{caption:i(o,{overlay:r(o,"overlay")??r(o,"root")})})})}function Oe(e,n={}){let o=r(e.slots,"calendar")??n.calendar,t=r(o,"slots"),s=r(t,"range");return i(e,{slots:i(e.slots,{calendar:i(o,{slots:i(t,{range:i(s,{root:r(s,"root")??r(t,"root"),container:r(s,"container")??r(t,"content"),row:r(s,"row")??r(t,"row")})})})})})}function Ne(e){return i(e,{slots:g(e,"slots",he),states:g(e,"states",xe),props:g(e,"props",be)})}function Ie(e){return i(e,{slots:g(e,"slots",Pe)})}function ke(e){return i(e,{slots:g(e,"slots",Be)})}function U(e){return i(e.props,{padding:r(e.props,"padding")||e.padding})}function Me(e){return i(e,{props:U(e)})}function De(e){return i(e,{slots:g(e,"slots",we),props:U(e)})}function ze(e){return i(e,{root:e.root,slots:i(e.slots,{track:r(e.slots,"track")})})}function k(e,n,...o){if(!Object.prototype.hasOwnProperty.call(I,e))throw new TypeError(`No component configuration policy for "${String(e)}".`);if(n==null)return n;if(!B(n))throw new TypeError("Component config must be an object.");let t=n;return I[e](t,o[0])}var he,xe,be,Pe,Be,we,I,Le,W=w(()=>{he=["header","title","description","content","action","footer"],xe=["noContent","outside"],be=["footerAlign"];Pe=["dialog","input","list","empty","group","separator","item","shortcut","combobox"];Be=["addon","button","text","input","textarea"];we=["horizontal","vertical","container"];I={button:ye,badge:ve,calendar:Re,card:Ne,command:Ie,"date-slider":Oe,"input-group":ke,popover:Me,separator:De,spinner:ze};Le=Object.freeze(Object.keys(I))});var q={};oe(q,{componentConfig:()=>Ae});function Ae(e,n){let o=e[n];return n==="date-slider"?k(n,o,{get calendar(){return e.calendar}}):k(n,o)}var F=w(()=>{W()});var Y=v((qe,h)=>{var{componentsConfigSchema:Te,isCSSClassString:je}=E(),{toRuntimeComponentsConfig:$e}=K(),{componentConfig:Ee}=(F(),se(q));function m(e,n){if(typeof n=="string")return Ee(m(e),n);if(!e)return{};if(typeof e!="object")throw new Error("Config must be an object");return $e(e)}m.componentsConfigSchema=Te;m.isCSSClassString=je;h.exports=m;h.exports.default=m;h.exports.ffdc=m});var M=te(Y(),1),{componentsConfigSchema:Fe,isCSSClassString:Ye}=M.default;var Xe=M.default;var export_ffdc=M.default;export{Fe as componentsConfigSchema,Xe as default,export_ffdc as ffdc,Ye as isCSSClassString};
|
package/dist/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var
|
|
1
|
+
var I=Object.defineProperty;var H=Object.getOwnPropertyDescriptor;var J=Object.getOwnPropertyNames;var Q=Object.prototype.hasOwnProperty;var M=(e,n)=>()=>(e&&(n=e(e=0)),n);var y=(e,n)=>()=>(n||e((n={exports:{}}).exports,n),n.exports),Z=(e,n)=>{for(var o in n)I(e,o,{get:n[o],enumerable:!0})},ee=(e,n,o,t)=>{if(n&&typeof n=="object"||typeof n=="function")for(let s of J(n))!Q.call(e,s)&&s!==o&&I(e,s,{get:()=>n[s],enumerable:!(t=H(n,s))||t.enumerable});return e};var ne=e=>ee(I({},"__esModule",{value:!0}),e);var T=y((Ee,A)=>{var oe=new Set(["after","backdrop","before","details-content","file","first-letter","first-line","marker","placeholder","selection"]),te=new Set(["active","focus","focus-visible","focus-within","hover"]),se=new Set(["sm","md","lg","xl","2xl","any-pointer-coarse","any-pointer-fine","any-pointer-none","contrast-less","contrast-more","forced-colors","inverted-colors","landscape","motion-reduce","motion-safe","noscript","pointer-coarse","pointer-fine","pointer-none","portrait","print","starting"]),re=/^(?:min-|max-|@|supports-|in-(?!range$))/,ie=/^\[&(?::(?:active|focus|focus-visible|focus-within|hover))+\]$/;function ae(e){let n=[],o=0,t=0;for(let s=0;s<e.length;s+=1){let a=e[s];a==="["||a==="("?o+=1:(a==="]"||a===")")&&o>0?o-=1:a===":"&&o===0&&(n.push(e.slice(t,s)),t=s+1)}return n.push(e.slice(t)),{variants:n.slice(0,-1),utility:n[n.length-1]}}function D(e){return e.replace(/\/[\w-]+$/,"")}function v(e){let n=D(e);return oe.has(n)||n.startsWith("[")&&n.includes("::")}function R(e){let n=D(e);return te.has(n)||se.has(n)?!0:n.startsWith("[")?n.startsWith("[@")||ie.test(n):n.startsWith("not-")?R(n.slice(4)):re.test(n)}function z(e){if(typeof e!="string"||!e.includes(":"))return null;let n=e.startsWith("!")?"!":"",{variants:o,utility:t}=ae(e.slice(n.length)),s=null,a=[];for(let u of o)s!==null&&!R(u)&&a.push(u),s===null&&v(u)&&(s=u);if(a.length===0)return null;let d=o.reduce((u,Y,X)=>v(Y)?X:u,-1),S=o.slice(0,d).filter(u=>!v(u)),p=o.slice(d+1),x=`${n}${[...S,...p.filter(u=>!R(u)),o[d],...p.filter(R),t].join(":")}`,C=o.filter(v),N=C.length>1?`${C.join(" and ")} are pseudo-elements, and a selector can hold only one`:`${a.join(", ")} cannot follow the pseudo-element ${s}; only hover, focus, focus-visible, focus-within, active, in-* and media, container or supports variants can`;return{className:e,pseudoElement:s,chained:a,suggestion:x,reason:N}}function le(e){return z(e)===null}A.exports={isCompilableClass:le,uncompilableClass:z}});var b=y((Ve,j)=>{var{isCompilableClass:pe,uncompilableClass:ue}=T(),de={$id:"https://frontfriend.dev/schemas/components-config.schema.json",type:"object",additionalProperties:{$ref:"#/$defs/componentConfig"},$defs:{componentConfig:{$ref:"#/$defs/componentEnvelope"},styleTree:{anyOf:[{type:"string"},{type:"object",additionalProperties:{$ref:"#/$defs/styleTree"}}]},behaviorTree:{anyOf:[{type:["string","number","boolean","null"]},{type:"array",items:{$ref:"#/$defs/behaviorTree"}},{type:"object",additionalProperties:{$ref:"#/$defs/behaviorTree"}}]},componentEnvelope:{type:"object",additionalProperties:!1,required:["styles"],properties:{styles:{type:"object",additionalProperties:{$ref:"#/$defs/styleTree"}},behavior:{type:"object",additionalProperties:{$ref:"#/$defs/behaviorTree"}}}}}};function ce(e){return typeof e=="string"&&e.trim().length>0}j.exports={componentsConfigSchema:de,isCSSClassString:ce,isCompilableClass:pe,uncompilableClass:ue}});var F=y((Fe,V)=>{function c(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function P(e,n){if(!c(e)||!c(n))return n===void 0?e:n;let o={...e};for(let[t,s]of Object.entries(n))o[t]=t in o?P(o[t],s):s;return o}function w(e,n,o=[],t=[]){if(e===void 0||n===void 0)return t;if(!c(e)||!c(n))return t.push(o.join(".")),t;for(let s of Object.keys(e))s in n&&w(e[s],n[s],[...o,s],t);return t}function $(e){return c(e)&&("styles"in e||"behavior"in e)}function E(e,n="component"){if(!$(e)||!c(e.styles)||e.behavior!==void 0&&!c(e.behavior)||Object.keys(e).some(t=>!["styles","behavior"].includes(t)))throw new TypeError(`Component ${n} must use the styles/behavior envelope`);let o=w(e.styles,e.behavior,[n]);if(o.length>0)throw new Error(`Component config styles/behavior conflict at ${o.join(", ")}`);return P(e.styles||{},e.behavior||{})}function Ce(e){if(!c(e))return e;let n=!1,o={};for(let[t,s]of Object.entries(e))o[t]=E(s,t),o[t]!==s&&(n=!0);return n?o:e}V.exports={isPlainObject:c,deepMerge:P,findTreeConflicts:w,isComponentEnvelope:$,toRuntimeComponentConfig:E,toRuntimeComponentsConfig:Ce}});function _(e){return typeof e=="object"&&e!==null||typeof e=="function"}function r(e,n){return _(e)?e[n]:void 0}function i(e,n){let o=_(e)?e:null,t=o?Object.create(o):{},s=(a,d)=>Object.defineProperty(t,a,{value:d,enumerable:!0,writable:!0,configurable:!0});if(o)for(let a of Object.keys(o))s(a,o[a]);for(let a of Object.keys(n))s(a,n[a]);return t}function fe(e,n){let o={};for(let t of n){let s=r(e,t);s!==void 0&&(o[t]=s)}return o}function l(...e){return e.find(n=>n!=null)||""}function f(...e){return e.find(Boolean)||{}}function g(e,n,o){return e[n]||fe(e,o)}function G(e){return i(e,{default:l(e.default,e.main),outline:l(e.outline,e.tertiary),linkDestructive:l(e.linkDestructive,e.linkdestructive)})}function ge(e){let n=r(e,"variants"),o=f(e.variant,r(n,"variant")),t=f(e.size,r(n,"size")),s=f(e.iconPosition,r(n,"iconPosition")),a=f(e.fullwidth,r(n,"fullwidth")),d=r(e.slots,"icon")||{},S=r(d,"variants"),p=f(d.size,r(S,"size")),x=f(d.color,r(S,"color")),C=N=>{let u=r(s,N);return i(u,{sm:l(r(u,"sm"),r(u,"small")),lg:l(r(u,"lg"),r(u,"large"))})};return i(e,{variant:G(o),size:i(t,{icon:l(t.icon,r(r(s,"default"),"default")),"icon-xs":l(t["icon-xs"],t.xs,t.small,t.sm),"icon-sm":l(t["icon-sm"],t.small,t.sm),"icon-lg":l(t["icon-lg"],t.large,t.lg)}),iconPosition:i(s,{prefix:C("prefix"),suffix:C("suffix"),default:C("default")}),fullwidth:a,slots:i(e.slots,{icon:i(d,{size:i(p,{icon:l(p.icon,p.default),"icon-xs":l(p["icon-xs"],p.xs,p.small,p.sm,p.default),"icon-sm":l(p["icon-sm"],p.sm,p.default),"icon-lg":l(p["icon-lg"],p.lg,p.default)}),color:G(x)})})})}function me(e){let n=e.variant,o=r(n,"subtle");return i(e,{variant:i(n,{default:l(r(n,"default"),r(n,"main")),outline:l(r(n,"outline"),r(n,"tertiary")),ghost:l(r(n,"ghost"),r(n,"tertiary")),link:l(r(n,"link"),r(n,"tertiary")),subtle:i(o,{default:l(r(o,"default"),r(o,"main"))})})})}function Se(e){let n=e.slots,o=r(n,"caption");return i(e,{slots:i(n,{caption:i(o,{overlay:r(o,"overlay")??r(o,"root")})})})}function ye(e,n={}){let o=r(e.slots,"calendar")??n.calendar,t=r(o,"slots"),s=r(t,"range");return i(e,{slots:i(e.slots,{calendar:i(o,{slots:i(t,{range:i(s,{root:r(s,"root")??r(t,"root"),container:r(s,"container")??r(t,"content"),row:r(s,"row")??r(t,"row")})})})})})}function he(e){return i(e,{slots:g(e,"slots",ve),states:g(e,"states",Re),props:g(e,"props",Oe)})}function Ne(e){return i(e,{slots:g(e,"slots",xe)})}function be(e){return i(e,{slots:g(e,"slots",Ie)})}function K(e){return i(e.props,{padding:r(e.props,"padding")||e.padding})}function Pe(e){return i(e,{props:K(e)})}function Be(e){return i(e,{slots:g(e,"slots",we),props:K(e)})}function _e(e){return i(e,{root:e.root,slots:i(e.slots,{track:r(e.slots,"track")})})}function k(e,n,...o){if(!Object.prototype.hasOwnProperty.call(B,e))throw new TypeError(`No component configuration policy for "${String(e)}".`);if(n==null)return n;if(!_(n))throw new TypeError("Component config must be an object.");let t=n;return B[e](t,o[0])}var ve,Re,Oe,xe,Ie,we,B,Ge,L=M(()=>{ve=["header","title","description","content","action","footer"],Re=["noContent","outside"],Oe=["footerAlign"];xe=["dialog","input","list","empty","group","separator","item","shortcut","combobox"];Ie=["addon","button","text","input","textarea"];we=["horizontal","vertical","container"];B={button:ge,badge:me,calendar:Se,card:he,command:Ne,"date-slider":ye,"input-group":be,popover:Pe,separator:Be,spinner:_e};Ge=Object.freeze(Object.keys(B))});var q={};Z(q,{componentConfig:()=>ke});function ke(e,n){let o=e[n];return n==="date-slider"?k(n,o,{get calendar(){return e.calendar}}):k(n,o)}var U=M(()=>{L()});var W=y((qe,O)=>{var{componentsConfigSchema:Me,isCSSClassString:De}=b(),{toRuntimeComponentsConfig:ze}=F(),{componentConfig:Ae}=(U(),ne(q));function m(e,n){if(typeof n=="string")return Ae(m(e),n);if(!e)return{};if(typeof e!="object")throw new Error("Config must be an object");return ze(e)}m.componentsConfigSchema=Me;m.isCSSClassString=De;O.exports=m;O.exports.default=m;O.exports.ffdc=m});var{componentsConfigSchema:Te,isCSSClassString:je}=b(),h=require("./lib/core/cache-manager");module.exports={};Object.defineProperty(module.exports,"config",{get:function(){if(typeof __FF_CONFIG__<"u")return __FF_CONFIG__;if(typeof window<"u"&&window.__FF_CONFIG__)return window.__FF_CONFIG__;if(h)try{let e=new h(process.cwd());if(e.exists()){let n=e.load();if(n)return n.componentsConfig||null}}catch{}return null}});Object.defineProperty(module.exports,"iconSet",{get:function(){if(typeof __FF_ICONS__<"u")return __FF_ICONS__;if(typeof window<"u"&&window.__FF_ICONS__)return window.__FF_ICONS__;if(h)try{let e=new h(process.cwd());if(e.exists()){let n=e.load();if(n)return n.icons||null}}catch{}return null}});module.exports.componentsConfigSchema=Te;module.exports.isCSSClassString=je;module.exports.ffdc=W();
|
package/dist/index.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var Y=Object.create;var y=Object.defineProperty;var Z=Object.getOwnPropertyDescriptor;var ee=Object.getOwnPropertyNames;var ne=Object.getPrototypeOf,te=Object.prototype.hasOwnProperty;var oe=(e,n)=>()=>(e&&(n=e(e=0)),n);var O=(e,n)=>()=>(n||e((n={exports:{}}).exports,n),n.exports),se=(e,n)=>{for(var t in n)y(e,t,{get:n[t],enumerable:!0})},M=(e,n,t,o)=>{if(n&&typeof n=="object"||typeof n=="function")for(let r of ee(n))!te.call(e,r)&&r!==t&&y(e,r,{get:()=>n[r],enumerable:!(o=Z(n,r))||o.enumerable});return e};var _=(e,n,t)=>(t=e!=null?Y(ne(e)):{},M(n||!e||!e.__esModule?y(t,"default",{value:e,enumerable:!0}):t,e)),re=e=>M(y({},"__esModule",{value:!0}),e);var F=O(($e,z)=>{function p(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function R(e,n){if(!p(e)||!p(n))return n===void 0?e:n;let t={...e};for(let[o,r]of Object.entries(n))t[o]=o in t?R(t[o],r):r;return t}function b(e,n,t=[],o=[]){if(e===void 0||n===void 0)return o;if(!p(e)||!p(n))return o.push(t.join(".")),o;for(let r of Object.keys(e))r in n&&b(e[r],n[r],[...t,r],o);return o}function D(e){return p(e)&&("styles"in e||"behavior"in e)}function j(e,n="component"){if(!D(e)||!p(e.styles)||e.behavior!==void 0&&!p(e.behavior)||Object.keys(e).some(o=>!["styles","behavior"].includes(o)))throw new TypeError(`Component ${n} must use the styles/behavior envelope`);let t=b(e.styles,e.behavior,[n]);if(t.length>0)throw new Error(`Component config styles/behavior conflict at ${t.join(", ")}`);return R(e.styles||{},e.behavior||{})}function ie(e){if(!p(e))return e;let n=!1,t={};for(let[o,r]of Object.entries(e))t[o]=j(r,o),t[o]!==r&&(n=!0);return n?t:e}z.exports={isPlainObject:p,deepMerge:R,findTreeConflicts:b,isComponentEnvelope:D,toRuntimeComponentConfig:j,toRuntimeComponentsConfig:ie}});var A=O((Ve,T)=>{var ae={$id:"https://frontfriend.dev/schemas/components-config.schema.json",type:"object",additionalProperties:{$ref:"#/$defs/componentConfig"},$defs:{componentConfig:{$ref:"#/$defs/componentEnvelope"},styleTree:{anyOf:[{type:"string"},{type:"object",additionalProperties:{$ref:"#/$defs/styleTree"}}]},behaviorTree:{anyOf:[{type:["string","number","boolean","null"]},{type:"array",items:{$ref:"#/$defs/behaviorTree"}},{type:"object",additionalProperties:{$ref:"#/$defs/behaviorTree"}}]},componentEnvelope:{type:"object",additionalProperties:!1,required:["styles"],properties:{styles:{type:"object",additionalProperties:{$ref:"#/$defs/styleTree"}},behavior:{type:"object",additionalProperties:{$ref:"#/$defs/behaviorTree"}}}}}};function le(e){return typeof e=="string"&&e.trim().length>0}T.exports={componentsConfigSchema:ae,isCSSClassString:le}});var V={};se(V,{CONFIGURED_COMPONENTS:()=>Ie,resolveComponentConfig:()=>xe});function N(e){return typeof e=="object"&&e!==null||typeof e=="function"}function s(e,n){return N(e)?e[n]:void 0}function i(e,n){let t=N(e)?e:null,o=t?Object.create(t):{},r=(u,d)=>Object.defineProperty(o,u,{value:d,enumerable:!0,writable:!0,configurable:!0});if(t)for(let u of Object.keys(t))r(u,t[u]);for(let u of Object.keys(n))r(u,n[u]);return o}function ue(e,n){let t={};for(let o of n){let r=s(e,o);r!==void 0&&(t[o]=r)}return t}function a(...e){return e.find(n=>n!=null)||""}function c(...e){return e.find(Boolean)||{}}function C(e,n,t){return e[n]||ue(e,t)}function G(e){return i(e,{default:a(e.default,e.main),outline:a(e.outline,e.tertiary),linkDestructive:a(e.linkDestructive,e.linkdestructive)})}function pe(e){let n=s(e,"variants"),t=c(e.variant,s(n,"variant")),o=c(e.size,s(n,"size")),r=c(e.iconPosition,s(n,"iconPosition")),u=c(e.fullwidth,s(n,"fullwidth")),d=s(e.slots,"icon")||{},k=s(d,"variants"),l=c(d.size,s(k,"size")),H=c(d.color,s(k,"color")),v=Q=>{let g=s(r,Q);return i(g,{sm:a(s(g,"sm"),s(g,"small")),lg:a(s(g,"lg"),s(g,"large"))})};return i(e,{variant:G(t),size:i(o,{icon:a(o.icon,s(s(r,"default"),"default")),"icon-xs":a(o["icon-xs"],o.xs,o.small,o.sm),"icon-sm":a(o["icon-sm"],o.small,o.sm),"icon-lg":a(o["icon-lg"],o.large,o.lg)}),iconPosition:i(r,{prefix:v("prefix"),suffix:v("suffix"),default:v("default")}),fullwidth:u,slots:i(e.slots,{icon:i(d,{size:i(l,{icon:a(l.icon,l.default),"icon-xs":a(l["icon-xs"],l.xs,l.small,l.sm,l.default),"icon-sm":a(l["icon-sm"],l.sm,l.default),"icon-lg":a(l["icon-lg"],l.lg,l.default)}),color:G(H)})})})}function de(e){let n=e.variant,t=s(n,"subtle");return i(e,{variant:i(n,{default:a(s(n,"default"),s(n,"main")),outline:a(s(n,"outline"),s(n,"tertiary")),ghost:a(s(n,"ghost"),s(n,"tertiary")),link:a(s(n,"link"),s(n,"tertiary")),subtle:i(t,{default:a(s(t,"default"),s(t,"main"))})})})}function ce(e){let n=e.slots,t=s(n,"caption");return i(e,{slots:i(n,{caption:i(t,{overlay:s(t,"overlay")??s(t,"root")})})})}function Ce(e,n={}){let t=s(e.slots,"calendar")??n.calendar,o=s(t,"slots"),r=s(o,"range");return i(e,{slots:i(e.slots,{calendar:i(t,{slots:i(o,{range:i(r,{root:s(r,"root")??s(o,"root"),container:s(r,"container")??s(o,"content"),row:s(r,"row")??s(o,"row")})})})})})}function ye(e){return i(e,{slots:C(e,"slots",fe),states:C(e,"states",ge),props:C(e,"props",me)})}function ve(e){return i(e,{slots:C(e,"slots",Se)})}function _e(e){return i(e,{slots:C(e,"slots",Oe)})}function $(e){return i(e.props,{padding:s(e.props,"padding")||e.padding})}function Re(e){return i(e,{props:$(e)})}function Pe(e){return i(e,{slots:C(e,"slots",be),props:$(e)})}function Ne(e){return i(e,{root:e.root,slots:i(e.slots,{track:s(e.slots,"track")})})}function xe(e,n,...t){if(!Object.prototype.hasOwnProperty.call(P,e))throw new TypeError(`No component configuration policy for "${String(e)}".`);if(n==null)return n;if(!N(n))throw new TypeError("Component config must be an object.");let o=n;return P[e](o,t[0])}var fe,ge,me,Se,Oe,be,P,Ie,E=oe(()=>{fe=["header","title","description","content","action","footer"],ge=["noContent","outside"],me=["footerAlign"];Se=["dialog","input","list","empty","group","separator","item","shortcut","combobox"];Oe=["addon","button","text","input","textarea"];be=["horizontal","vertical","container"];P={button:pe,badge:de,calendar:ce,card:ye,command:ve,"date-slider":Ce,"input-group":_e,popover:Re,separator:Pe,spinner:Ne};Ie=Object.freeze(Object.keys(P))});var q=O((Ee,U)=>{var x=Object.defineProperty,he=Object.getOwnPropertyDescriptor,we=Object.getOwnPropertyNames,Be=Object.prototype.hasOwnProperty,ke=(e,n)=>{for(var t in n)x(e,t,{get:n[t],enumerable:!0})},Me=(e,n,t,o)=>{if(n&&typeof n=="object"||typeof n=="function")for(let r of we(n))!Be.call(e,r)&&r!==t&&x(e,r,{get:()=>n[r],enumerable:!(o=he(n,r))||o.enumerable});return e},De=e=>Me(x({},"__esModule",{value:!0}),e),L={};ke(L,{componentConfig:()=>je});U.exports=De(L);var K=(E(),re(V));function je(e,n){let t=e[n];return n==="date-slider"?(0,K.resolveComponentConfig)(n,t,{get calendar(){return e.calendar}}):(0,K.resolveComponentConfig)(n,t)}});var f=_(F(),1),S=_(A(),1),W=_(q(),1),ze=typeof window<"u"&&typeof window.document<"u";function I(e){return typeof e!="string"?!1:e.startsWith("__v_")||e==="then"}function B(e=""){let n=new Map;return new Proxy({},{get(t,o){if(o===Symbol.toPrimitive||o==="valueOf")return()=>e;if(o==="toString"||o===Symbol.toStringTag)return()=>e;if(o==="constructor")return Object;if(!I(o))return n.has(o)||n.set(o,B(e)),n.get(o)},has(t,o){return!I(o)},ownKeys(){return[]},getOwnPropertyDescriptor(t,o){if(!I(o))return{enumerable:!0,configurable:!0}}})}var J=new Map;function Fe(e){try{let n=e==="__FF_CONFIG__"?process.env.NEXT_PUBLIC_FF_CONFIG:process.env.NEXT_PUBLIC_FF_ICONS;if(!n)return null;let t=J.get(e);if(t?.serialized===n)return t.value;let o=JSON.parse(n);return(0,f.isPlainObject)(o)?(J.set(e,{serialized:n,value:o}),o):null}catch{return null}}function m(e){return e==="__FF_CONFIG__"&&typeof __FF_CONFIG__<"u"?__FF_CONFIG__:e==="__FF_ICONS__"&&typeof __FF_ICONS__<"u"?__FF_ICONS__:typeof globalThis<"u"&&globalThis[e]?globalThis[e]:ze&&window[e]?window[e]:Fe(e)}function X(e,n){return typeof n=="string"?(0,W.componentConfig)(X(e),n):!e||typeof e!="object"?B():(0,f.toRuntimeComponentsConfig)(e)}var h=new Map,w=new WeakMap,Te=new Proxy({},{get(e,n){if(n===Symbol.toPrimitive||n==="valueOf")return()=>"";if(n==="toString"||n===Symbol.toStringTag)return()=>"[object Object]";if(n==="constructor")return Object;let t=m("__FF_CONFIG__");if(t&&n in t){let o=t[n];return w.has(o)||w.set(o,(0,f.toRuntimeComponentConfig)(o,String(n))),w.get(o)}return h.has(n)||h.set(n,B()),h.get(n)},has(){return!0},ownKeys(){return[]},getOwnPropertyDescriptor(){return{enumerable:!0,configurable:!0}}}),Ae=new Proxy({},{get(e,n){if(n===Symbol.toPrimitive||n==="valueOf")return()=>"";if(n==="toString"||n===Symbol.toStringTag)return()=>"[object Object]";if(n==="constructor")return Object;let t=m("__FF_ICONS__");return t&&n in t?t[n]:null},has(e,n){let t=m("__FF_ICONS__");return t?n in t:!1},ownKeys(){let e=m("__FF_ICONS__");return e?Object.keys(e):[]},getOwnPropertyDescriptor(e,n){let t=m("__FF_ICONS__");if(t&&n in t)return{enumerable:!0,configurable:!0,value:t[n]}}});var export_componentsConfigSchema=S.componentsConfigSchema;var export_isCSSClassString=S.isCSSClassString;export{export_componentsConfigSchema as componentsConfigSchema,Te as config,X as ffdc,Ae as iconSet,export_isCSSClassString as isCSSClassString};
|
|
1
|
+
var ie=Object.create;var v=Object.defineProperty;var ae=Object.getOwnPropertyDescriptor;var le=Object.getOwnPropertyNames;var ue=Object.getPrototypeOf,pe=Object.prototype.hasOwnProperty;var de=(e,t)=>()=>(e&&(t=e(e=0)),t);var O=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),ce=(e,t)=>{for(var n in t)v(e,n,{get:t[n],enumerable:!0})},z=(e,t,n,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of le(t))!pe.call(e,s)&&s!==n&&v(e,s,{get:()=>t[s],enumerable:!(o=ae(t,s))||o.enumerable});return e};var N=(e,t,n)=>(n=e!=null?ie(ue(e)):{},z(t||!e||!e.__esModule?v(n,"default",{value:e,enumerable:!0}):n,e)),fe=e=>z(v({},"__esModule",{value:!0}),e);var $=O((ot,E)=>{function c(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function x(e,t){if(!c(e)||!c(t))return t===void 0?e:t;let n={...e};for(let[o,s]of Object.entries(t))n[o]=o in n?x(n[o],s):s;return n}function I(e,t,n=[],o=[]){if(e===void 0||t===void 0)return o;if(!c(e)||!c(t))return o.push(n.join(".")),o;for(let s of Object.keys(e))s in t&&I(e[s],t[s],[...n,s],o);return o}function F(e){return c(e)&&("styles"in e||"behavior"in e)}function A(e,t="component"){if(!F(e)||!c(e.styles)||e.behavior!==void 0&&!c(e.behavior)||Object.keys(e).some(o=>!["styles","behavior"].includes(o)))throw new TypeError(`Component ${t} must use the styles/behavior envelope`);let n=I(e.styles,e.behavior,[t]);if(n.length>0)throw new Error(`Component config styles/behavior conflict at ${n.join(", ")}`);return x(e.styles||{},e.behavior||{})}function Ce(e){if(!c(e))return e;let t=!1,n={};for(let[o,s]of Object.entries(e))n[o]=A(s,o),n[o]!==s&&(t=!0);return t?n:e}E.exports={isPlainObject:c,deepMerge:x,findTreeConflicts:I,isComponentEnvelope:F,toRuntimeComponentConfig:A,toRuntimeComponentsConfig:Ce}});var L=O((st,K)=>{var ge=new Set(["after","backdrop","before","details-content","file","first-letter","first-line","marker","placeholder","selection"]),me=new Set(["active","focus","focus-visible","focus-within","hover"]),ye=new Set(["sm","md","lg","xl","2xl","any-pointer-coarse","any-pointer-fine","any-pointer-none","contrast-less","contrast-more","forced-colors","inverted-colors","landscape","motion-reduce","motion-safe","noscript","pointer-coarse","pointer-fine","pointer-none","portrait","print","starting"]),Se=/^(?:min-|max-|@|supports-|in-(?!range$))/,ve=/^\[&(?::(?:active|focus|focus-visible|focus-within|hover))+\]$/;function Oe(e){let t=[],n=0,o=0;for(let s=0;s<e.length;s+=1){let a=e[s];a==="["||a==="("?n+=1:(a==="]"||a===")")&&n>0?n-=1:a===":"&&n===0&&(t.push(e.slice(o,s)),o=s+1)}return t.push(e.slice(o)),{variants:t.slice(0,-1),utility:t[t.length-1]}}function G(e){return e.replace(/\/[\w-]+$/,"")}function _(e){let t=G(e);return ge.has(t)||t.startsWith("[")&&t.includes("::")}function R(e){let t=G(e);return me.has(t)||ye.has(t)?!0:t.startsWith("[")?t.startsWith("[@")||ve.test(t):t.startsWith("not-")?R(t.slice(4)):Se.test(t)}function V(e){if(typeof e!="string"||!e.includes(":"))return null;let t=e.startsWith("!")?"!":"",{variants:n,utility:o}=Oe(e.slice(t.length)),s=null,a=[];for(let p of n)s!==null&&!R(p)&&a.push(p),s===null&&_(p)&&(s=p);if(a.length===0)return null;let d=n.reduce((p,se,re)=>_(se)?re:p,-1),S=n.slice(0,d).filter(p=>!_(p)),u=n.slice(d+1),h=`${t}${[...S,...u.filter(p=>!R(p)),n[d],...u.filter(R),o].join(":")}`,f=n.filter(_),P=f.length>1?`${f.join(" and ")} are pseudo-elements, and a selector can hold only one`:`${a.join(", ")} cannot follow the pseudo-element ${s}; only hover, focus, focus-visible, focus-within, active, in-* and media, container or supports variants can`;return{className:e,pseudoElement:s,chained:a,suggestion:h,reason:P}}function _e(e){return V(e)===null}K.exports={isCompilableClass:_e,uncompilableClass:V}});var W=O((rt,U)=>{var{isCompilableClass:Re,uncompilableClass:be}=L(),he={$id:"https://frontfriend.dev/schemas/components-config.schema.json",type:"object",additionalProperties:{$ref:"#/$defs/componentConfig"},$defs:{componentConfig:{$ref:"#/$defs/componentEnvelope"},styleTree:{anyOf:[{type:"string"},{type:"object",additionalProperties:{$ref:"#/$defs/styleTree"}}]},behaviorTree:{anyOf:[{type:["string","number","boolean","null"]},{type:"array",items:{$ref:"#/$defs/behaviorTree"}},{type:"object",additionalProperties:{$ref:"#/$defs/behaviorTree"}}]},componentEnvelope:{type:"object",additionalProperties:!1,required:["styles"],properties:{styles:{type:"object",additionalProperties:{$ref:"#/$defs/styleTree"}},behavior:{type:"object",additionalProperties:{$ref:"#/$defs/behaviorTree"}}}}}};function Pe(e){return typeof e=="string"&&e.trim().length>0}U.exports={componentsConfigSchema:he,isCSSClassString:Pe,isCompilableClass:Re,uncompilableClass:be}});var J={};ce(J,{CONFIGURED_COMPONENTS:()=>Le,resolveComponentConfig:()=>Ke});function B(e){return typeof e=="object"&&e!==null||typeof e=="function"}function r(e,t){return B(e)?e[t]:void 0}function i(e,t){let n=B(e)?e:null,o=n?Object.create(n):{},s=(a,d)=>Object.defineProperty(o,a,{value:d,enumerable:!0,writable:!0,configurable:!0});if(n)for(let a of Object.keys(n))s(a,n[a]);for(let a of Object.keys(t))s(a,t[a]);return o}function Ne(e,t){let n={};for(let o of t){let s=r(e,o);s!==void 0&&(n[o]=s)}return n}function l(...e){return e.find(t=>t!=null)||""}function C(...e){return e.find(Boolean)||{}}function g(e,t,n){return e[t]||Ne(e,n)}function q(e){return i(e,{default:l(e.default,e.main),outline:l(e.outline,e.tertiary),linkDestructive:l(e.linkDestructive,e.linkdestructive)})}function xe(e){let t=r(e,"variants"),n=C(e.variant,r(t,"variant")),o=C(e.size,r(t,"size")),s=C(e.iconPosition,r(t,"iconPosition")),a=C(e.fullwidth,r(t,"fullwidth")),d=r(e.slots,"icon")||{},S=r(d,"variants"),u=C(d.size,r(S,"size")),h=C(d.color,r(S,"color")),f=P=>{let p=r(s,P);return i(p,{sm:l(r(p,"sm"),r(p,"small")),lg:l(r(p,"lg"),r(p,"large"))})};return i(e,{variant:q(n),size:i(o,{icon:l(o.icon,r(r(s,"default"),"default")),"icon-xs":l(o["icon-xs"],o.xs,o.small,o.sm),"icon-sm":l(o["icon-sm"],o.small,o.sm),"icon-lg":l(o["icon-lg"],o.large,o.lg)}),iconPosition:i(s,{prefix:f("prefix"),suffix:f("suffix"),default:f("default")}),fullwidth:a,slots:i(e.slots,{icon:i(d,{size:i(u,{icon:l(u.icon,u.default),"icon-xs":l(u["icon-xs"],u.xs,u.small,u.sm,u.default),"icon-sm":l(u["icon-sm"],u.sm,u.default),"icon-lg":l(u["icon-lg"],u.lg,u.default)}),color:q(h)})})})}function Ie(e){let t=e.variant,n=r(t,"subtle");return i(e,{variant:i(t,{default:l(r(t,"default"),r(t,"main")),outline:l(r(t,"outline"),r(t,"tertiary")),ghost:l(r(t,"ghost"),r(t,"tertiary")),link:l(r(t,"link"),r(t,"tertiary")),subtle:i(n,{default:l(r(n,"default"),r(n,"main"))})})})}function we(e){let t=e.slots,n=r(t,"caption");return i(e,{slots:i(t,{caption:i(n,{overlay:r(n,"overlay")??r(n,"root")})})})}function Be(e,t={}){let n=r(e.slots,"calendar")??t.calendar,o=r(n,"slots"),s=r(o,"range");return i(e,{slots:i(e.slots,{calendar:i(n,{slots:i(o,{range:i(s,{root:r(s,"root")??r(o,"root"),container:r(s,"container")??r(o,"content"),row:r(s,"row")??r(o,"row")})})})})})}function je(e){return i(e,{slots:g(e,"slots",ke),states:g(e,"states",Me),props:g(e,"props",De)})}function ze(e){return i(e,{slots:g(e,"slots",Te)})}function Ae(e){return i(e,{slots:g(e,"slots",Fe)})}function X(e){return i(e.props,{padding:r(e.props,"padding")||e.padding})}function Ee(e){return i(e,{props:X(e)})}function Ge(e){return i(e,{slots:g(e,"slots",$e),props:X(e)})}function Ve(e){return i(e,{root:e.root,slots:i(e.slots,{track:r(e.slots,"track")})})}function Ke(e,t,...n){if(!Object.prototype.hasOwnProperty.call(w,e))throw new TypeError(`No component configuration policy for "${String(e)}".`);if(t==null)return t;if(!B(t))throw new TypeError("Component config must be an object.");let o=t;return w[e](o,n[0])}var ke,Me,De,Te,Fe,$e,w,Le,Y=de(()=>{ke=["header","title","description","content","action","footer"],Me=["noContent","outside"],De=["footerAlign"];Te=["dialog","input","list","empty","group","separator","item","shortcut","combobox"];Fe=["addon","button","text","input","textarea"];$e=["horizontal","vertical","container"];w={button:xe,badge:Ie,calendar:we,card:je,command:ze,"date-slider":Be,"input-group":Ae,popover:Ee,separator:Ge,spinner:Ve};Le=Object.freeze(Object.keys(w))});var ee=O((it,Z)=>{var k=Object.defineProperty,Ue=Object.getOwnPropertyDescriptor,We=Object.getOwnPropertyNames,qe=Object.prototype.hasOwnProperty,Xe=(e,t)=>{for(var n in t)k(e,n,{get:t[n],enumerable:!0})},Je=(e,t,n,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of We(t))!qe.call(e,s)&&s!==n&&k(e,s,{get:()=>t[s],enumerable:!(o=Ue(t,s))||o.enumerable});return e},Ye=e=>Je(k({},"__esModule",{value:!0}),e),Q={};Xe(Q,{componentConfig:()=>He});Z.exports=Ye(Q);var H=(Y(),fe(J));function He(e,t){let n=e[t];return t==="date-slider"?(0,H.resolveComponentConfig)(t,n,{get calendar(){return e.calendar}}):(0,H.resolveComponentConfig)(t,n)}});var m=N($(),1),b=N(W(),1),ne=N(ee(),1),Qe=typeof window<"u"&&typeof window.document<"u";function M(e){return typeof e!="string"?!1:e.startsWith("__v_")||e==="then"}function T(e=""){let t=new Map;return new Proxy({},{get(n,o){if(o===Symbol.toPrimitive||o==="valueOf")return()=>e;if(o==="toString"||o===Symbol.toStringTag)return()=>e;if(o==="constructor")return Object;if(!M(o))return t.has(o)||t.set(o,T(e)),t.get(o)},has(n,o){return!M(o)},ownKeys(){return[]},getOwnPropertyDescriptor(n,o){if(!M(o))return{enumerable:!0,configurable:!0}}})}var te=new Map;function Ze(e){try{let t=e==="__FF_CONFIG__"?process.env.NEXT_PUBLIC_FF_CONFIG:process.env.NEXT_PUBLIC_FF_ICONS;if(!t)return null;let n=te.get(e);if(n?.serialized===t)return n.value;let o=JSON.parse(t);return(0,m.isPlainObject)(o)?(te.set(e,{serialized:t,value:o}),o):null}catch{return null}}function y(e){return e==="__FF_CONFIG__"&&typeof __FF_CONFIG__<"u"?__FF_CONFIG__:e==="__FF_ICONS__"&&typeof __FF_ICONS__<"u"?__FF_ICONS__:typeof globalThis<"u"&&globalThis[e]?globalThis[e]:Qe&&window[e]?window[e]:Ze(e)}function oe(e,t){return typeof t=="string"?(0,ne.componentConfig)(oe(e),t):!e||typeof e!="object"?T():(0,m.toRuntimeComponentsConfig)(e)}var D=new Map,j=new WeakMap,et=new Proxy({},{get(e,t){if(t===Symbol.toPrimitive||t==="valueOf")return()=>"";if(t==="toString"||t===Symbol.toStringTag)return()=>"[object Object]";if(t==="constructor")return Object;let n=y("__FF_CONFIG__");if(n&&t in n){let o=n[t];return j.has(o)||j.set(o,(0,m.toRuntimeComponentConfig)(o,String(t))),j.get(o)}return D.has(t)||D.set(t,T()),D.get(t)},has(){return!0},ownKeys(){return[]},getOwnPropertyDescriptor(){return{enumerable:!0,configurable:!0}}}),tt=new Proxy({},{get(e,t){if(t===Symbol.toPrimitive||t==="valueOf")return()=>"";if(t==="toString"||t===Symbol.toStringTag)return()=>"[object Object]";if(t==="constructor")return Object;let n=y("__FF_ICONS__");return n&&t in n?n[t]:null},has(e,t){let n=y("__FF_ICONS__");return n?t in n:!1},ownKeys(){let e=y("__FF_ICONS__");return e?Object.keys(e):[]},getOwnPropertyDescriptor(e,t){let n=y("__FF_ICONS__");if(n&&t in n)return{enumerable:!0,configurable:!0,value:n[t]}}});var export_componentsConfigSchema=b.componentsConfigSchema;var export_isCSSClassString=b.isCSSClassString;export{export_componentsConfigSchema as componentsConfigSchema,et as config,oe as ffdc,tt as iconSet,export_isCSSClassString as isCSSClassString};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var j=(n,e)=>()=>(e||n((e={exports:{}}).exports,e),e.exports);var S=j((q,F)=>{F.exports={name:"@frontfriend/sdk",version:"1.
|
|
1
|
+
var j=(n,e)=>()=>(e||n((e={exports:{}}).exports,e),e.exports);var S=j((q,F)=>{F.exports={name:"@frontfriend/sdk",version:"1.2.0"}});var C=j(($,b)=>{var{name:w}=S();b.exports={PACKAGE_NAME:w}});var{PACKAGE_NAME:m}=C(),u=require("fs"),E=require("http"),O=require("https"),i=require("path"),g=["contracts","tokens","components"],T=["app/globals.css","src/app/globals.css","styles/globals.css","src/styles/globals.css","src/styles.css","src/index.css","src/style.css"],k={next:["next.config.js","next.config.mjs","next.config.ts"],vite:["vite.config.ts","vite.config.js","vite.config.mts","vite.config.mjs"]},x=["primereact","@mui/material","antd","@chakra-ui/react","@mantine/core","@fluentui/react"],I=["style-dictionary","@tokens-studio/sd-transforms","@vanilla-extract/css","styled-components","@emotion/react"];function A(n){try{return JSON.parse(u.readFileSync(n,"utf8"))}catch{return{}}}function h(n){if(n===void 0)return null;if(!Array.isArray(n)){let t=new Error("`adopt` in frontfriend.config.js must be an array.");throw t.code="FRONTFRIEND_CONFIG_VALIDATION",t}let e=n.filter(t=>!g.includes(t));if(e.length>0){let t=new Error(`Unknown Frontfriend adoption level: ${e.join(", ")}.`);throw t.code="FRONTFRIEND_CONFIG_VALIDATION",t}let o=n.includes("components")?2:n.includes("tokens")?1:0;return g.slice(0,o+1)}function _(n){for(let[e,o]of Object.entries(k)){let t=o.find(s=>u.existsSync(i.join(n,s)));if(!t)continue;let r=u.readFileSync(i.join(n,t),"utf8");return{buildTool:e,present:r.includes(`${m}/${e}`)}}return{buildTool:null,present:!1}}function v(n){let e=[i.join(n,"components","ui"),i.join(n,"src","components","ui"),i.join(n,"app","components","ui")].filter(r=>u.existsSync(r)),o=new Set;function t(r){for(let s of u.readdirSync(r,{withFileTypes:!0})){let c=i.join(r,s.name);if(s.isDirectory())t(c);else if(/\.(js|jsx|ts|tsx|vue)$/.test(s.name)){if(!u.readFileSync(c,"utf8").includes(m))continue;let a=i.basename(s.name,i.extname(s.name));o.add(a.toLowerCase()==="index"?i.basename(r):a.toLowerCase())}}}return e.forEach(t),[...o].sort()}function P(n){let e=A(i.join(n,"package.json")),o={...e.dependencies||{},...e.devDependencies||{}},t=o.tailwindcss||null,s=[A(i.join(n,"components.json"))?.tailwind?.css,...T].filter(Boolean).find(a=>u.existsSync(i.join(n,a))),c=s?u.readFileSync(i.join(n,s),"utf8"):"",l=I.filter(a=>o[a]);return!l.length&&/:root[\s\S]*--(?:color|spacing|font|radius)-[\w-]+\s*:/.test(c)&&!c.includes(`${m}/theme.css`)&&l.push("css-custom-properties"),{nativeTokens:{present:c.includes("/* Frontfriend managed native tokens: start */"),file:s||null},tailwind:{present:!!t,version:t,major:t&&Number((String(t).match(/\d+/)||[])[0])||null},componentsJson:u.existsSync(i.join(n,"components.json")),themeImport:{present:c.includes(`${m}/theme.css`)||/@import\s+["'][^"']*node_modules\/\.cache\/frontfriend\/theme\.css["']/.test(c),file:s||null},plugin:_(n),frontfriendComponents:v(n),foreignComponentLibraries:x.filter(a=>o[a]),foreignTokenSystems:l}}function D(n,e){let o=h(n)||g,t=o.includes("tokens"),r=o.includes("components"),s=[];return t&&!e.themeImport.present&&!e.nativeTokens?.present&&s.push("Config adopts tokens, but the Frontfriend theme import was not observed."),!t&&e.themeImport.present&&s.push("Frontfriend tokens are present in CSS but are not adopted in config."),r&&!e.componentsJson&&s.push("Config adopts components, but components.json was not observed."),!r&&e.frontfriendComponents.length>0&&s.push("Frontfriend components are installed but are not adopted in config."),s}function L({apiUrl:n,token:e,ffId:o,name:t,adopt:r,observed:s,framework:c,primitive:l}){if(!n||!e||!o||!t||!c||l===void 0)return Promise.resolve({reported:!1,unavailable:!0});let a=new URL("/api/apps/sync",n),y=JSON.stringify({ffId:o,name:t,adopt:h(r),observed:s,runtime:"sdk",framework:c,primitive:l}),N=a.protocol==="https:"?O:E;return new Promise(d=>{let f=N.request(a,{method:"POST",headers:{authorization:`Bearer ${e}`,"content-type":"application/json","content-length":Buffer.byteLength(y)}},p=>{p.resume(),p.on("end",()=>{p.statusCode>=200&&p.statusCode<300?d({reported:!0,unavailable:!1}):d({reported:!1,unavailable:!0})})});f.on("error",()=>d({reported:!1,unavailable:!0})),f.setTimeout(1500,()=>{f.destroy(),d({reported:!1,unavailable:!0})}),f.end(y)})}module.exports={ADOPTION_LEVELS:g,normalizeAdopt:h,probeAdoption:P,adoptionWarnings:D,reportAdoption:L};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
var m=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports);var W=m((Ha,st)=>{var pn="https://app.frontfriend.dev",mn=".cache/frontfriend",En={JS:["tokens.js","variables.js","semanticVariables.js","semanticDarkVariables.js","keyframes.js","animations.js","safelist.js","custom.js"],JSON:["fonts.json","icons.json","components-config.json","iconLibrary.json","version.json","versionMetadata.json","metadata.json","base.json","nativeTokens.json"]},gn={FF_ID:"FF_ID",FF_API_URL:"FF_API_URL",FF_AUTH_TOKEN:"FF_AUTH_TOKEN",FF_MACHINE_TOKEN:"FRONTFRIEND_MACHINE_TOKEN"};function $n(t){if(!t)return null;try{let e=new URL(t);return e.hostname.startsWith("app.")?`${e.protocol}//${e.hostname.replace(/^app\./,"registry.")}`:null}catch{return null}}st.exports={DEFAULT_API_URL:pn,CACHE_DIR_NAME:mn,CACHE_TTL_DAYS:7,CACHE_TTL_MS:6048e5,CACHE_FILES:En,ENV_VARS:gn,deriveRegistryFromApiUrl:$n}});var we=m((Va,nt)=>{var me=class extends Error{constructor(e,r,s){super(e),this.name="APIError",this.statusCode=r,this.url=s,this.code=`API_${r}`}},Ee=class extends Error{constructor(e,r){super(e),this.name="CacheError",this.operation=r,this.code=`CACHE_${r.toUpperCase()}`}},ge=class extends Error{constructor(e,r){super(e),this.name="ConfigError",this.field=r,this.code=r?`CONFIG_${String(r).toUpperCase()}`:"CONFIG_ERROR"}},$e=class extends Error{constructor(e,r){super(e),this.name="ProcessingError",this.token=r,this.code="PROCESSING_ERROR"}};nt.exports={APIError:me,CacheError:Ee,ConfigError:ge,ProcessingError:$e}});var ot=m((Xa,it)=>{var R=require("fs");function wn(t){try{let e=R.readFileSync(t,"utf8");return JSON.parse(e)}catch(e){if(e.code==="ENOENT")return null;throw e}}function Rn(t){try{return R.readFileSync(t,"utf8").replace(/^\uFEFF/,"")}catch(e){if(e.code==="ENOENT")return null;throw e}}function In(t,e,r=2){let s=JSON.stringify(e,null,r);R.writeFileSync(t,s,"utf8")}function Sn(t,e){R.writeFileSync(t,e,"utf8")}function yn(t,e){if(e==null||typeof e=="object"&&Object.keys(e).length===0||Array.isArray(e)&&e.length===0){let s=`module.exports = ${Array.isArray(e)?"[]":"{}"};`;R.writeFileSync(t,s,"utf8")}else{let r=`module.exports = ${JSON.stringify(e,null,2)};`;R.writeFileSync(t,r,"utf8")}}function Tn(t){return R.existsSync(t)}function Nn(t){R.mkdirSync(t,{recursive:!0})}function An(t){R.rmSync(t,{recursive:!0,force:!0})}function Ln(t){R.rmSync(t,{force:!0})}function On(t,e){R.mkdirSync(require("path").dirname(t),{recursive:!0,mode:448});let r=`${t}.${process.pid}.${Date.now()}.tmp`;try{R.writeFileSync(r,`${JSON.stringify(e,null,2)}
|
|
2
|
-
`,{mode:384}),R.renameSync(r,t);try{R.chmodSync(t,384)}catch{}}finally{R.rmSync(r,{force:!0})}}async function Cn(t,e,r){R.mkdirSync(require("path").dirname(t),{recursive:!0,mode:448});let s=`${t}.lock`,n=Date.now()+2e4,i;for(;i===void 0;)try{i=R.openSync(s,"wx",384),R.writeFileSync(i,String(process.pid))}catch(o){if(o.code!=="EEXIST")throw o;try{let a=Number(R.readFileSync(s,"utf8"));if(Number.isInteger(a)&&a>0)try{process.kill(a,0)}catch(c){if(c.code==="ESRCH"){R.unlinkSync(s);continue}}}catch(a){if(a.code==="ENOENT")continue}if(Date.now()>=n)throw r();await new Promise(a=>setTimeout(a,50))}try{return await e()}finally{R.closeSync(i),R.unlinkSync(s)}}it.exports={writePrivateJsonFileAtomic:On,withPrivateFileLock:Cn,readJsonFileSafe:wn,readFileSafe:Rn,writeJsonFile:In,writeTextFile:Sn,writeModuleExportsFile:yn,fileExists:Tn,ensureDirectoryExists:Nn,removeDirectory:An,removeFile:Ln}});var dt=m((Ja,ht)=>{var{fileExists:vn,readJsonFileSafe:qn,removeFile:xn,writePrivateJsonFileAtomic:Pn,withPrivateFileLock:Fn}=ot(),ct=require("path"),kn=require("os"),Dn=require("https"),_n=require("http"),{URL:F}=require("url"),{DEFAULT_API_URL:D}=W(),Un=ct.join(kn.homedir(),".frontfriend"),_=ct.join(Un,"credentials");function bn(){return _}function z(){try{return qn(_)}catch{return null}}function at(t){try{let e=JSON.parse(Buffer.from(String(t).split(".")[1],"base64url").toString("utf8"));return typeof e.email=="string"?e.email:null}catch{return null}}function jn(){let t=z();if(!t||!t.accessToken)return null;let e=Number(t.refreshExpiresAt)||0;return{email:at(t.accessToken),apiUrl:t.ffApiUrl||null,expired:e>0&&e<Date.now()}}function ut(t){Pn(_,t)}function Gn(){return vn(_)?(xn(_),!0):!1}function Re(t,e=60*1e3){return!t?.accessToken||!t.expiresAt||Date.now()+e>=t.expiresAt}function P(t){let e=new Error(`${t}. Run \`frontfriend login\` to re-authenticate.`);return e.code="FF_AUTH_REFRESH_FAILED",e}function lt(t,e,r){return new Promise((s,n)=>{let i=new F(t);if(i.protocol!=="https:"&&!(i.protocol==="http:"&&["localhost","127.0.0.1","[::1]"].includes(i.hostname))){n(new Error("Frontfriend API URLs require HTTPS except on localhost"));return}let o=i.protocol==="https:"?Dn:_n,a=JSON.stringify(e||{}),c=o.request({hostname:i.hostname,port:i.port,path:`${i.pathname}${i.search}`,method:"POST",headers:{"content-type":"application/json","content-length":Buffer.byteLength(a),...r?{authorization:`Bearer ${r}`}:{}}},u=>{let l="";u.on("data",h=>{l+=h}),u.on("end",()=>{if(u.statusCode>=300&&u.statusCode<400){let E=u.headers.location?` to ${u.headers.location}`:"",f=new Error(`HTTP ${u.statusCode}: redirected${E}`);f.statusCode=u.statusCode,f.body=l,n(f);return}let h=null;try{h=l?JSON.parse(l):null}catch{let f=u.headers["content-type"]||"unknown content-type",I=new Error(`Expected JSON from FrontFriend API at ${t}, but received ${f} (HTTP ${u.statusCode}). Check FF_API_URL or pass --api-url with the FrontFriend app URL.`);if(I.statusCode=u.statusCode,I.body=l,u.statusCode>=400){n(I);return}n(I);return}if(u.statusCode>=400){let E=new Error(h?.error_description||h?.error||`HTTP ${u.statusCode}`);E.statusCode=u.statusCode,E.body=h,n(E);return}s(h)})});c.setTimeout(15e3,()=>c.destroy(new Error("Frontfriend API request timed out"))),c.on("error",n),c.write(a),c.end()})}async function Mn(t){return Fn(_,t,()=>P("Another process is refreshing the session"))}async function ft(t,e=D){return Mn(async()=>{let r=z();if(r&&new F(r.ffApiUrl||D).origin===new F(e).origin){if(!Re(r))return r;t=r}return Hn(t,e)})}async function Hn(t,e=D){if(new F(e).origin!==new F(t.ffApiUrl||D).origin)throw P("The stored session belongs to a different API origin");if(!t?.refreshToken||!t?.deviceId)throw P("FrontFriend session expired");let r;try{r=await lt(`${e}/api/plugin/token`,{grant_type:"refresh_token",refresh_token:t.refreshToken,device_id:t.deviceId})}catch(n){throw P(n?.message||"Could not refresh FrontFriend session")}if(!r?.access_token||!r?.refresh_token)throw P("Could not refresh FrontFriend session");let s={accessToken:r.access_token,refreshToken:r.refresh_token,deviceId:r.device_id||t.deviceId,expiresAt:Date.now()+(r.expires_in||900)*1e3,refreshExpiresAt:Date.now()+(r.refresh_expires_in||604800)*1e3,ffApiUrl:e};return ut(s),s}async function Vn(t={}){if(t.envToken)return t.envToken;if(!t.skipCredentials){let e=z();if(e?.accessToken||e?.refreshToken){let r=t.baseURL||e.ffApiUrl||D;if(new F(r).origin!==new F(e.ffApiUrl||D).origin)throw P("The stored session belongs to a different API origin");return e.accessToken&&!Re(e)?e.accessToken:(await ft(e,r)).accessToken}}return t.configuredToken?(t.silent||console.warn("\u26A0\uFE0F auth-token in frontfriend.config.js is deprecated. Run `frontfriend login` to store credentials outside the repo."),t.configuredToken):null}ht.exports={accountEmail:at,signedInAccount:jn,getCredentialsPath:bn,readCredentials:z,writeCredentials:ut,deleteCredentials:Gn,isExpired:Re,postJson:lt,refreshCredentials:ft,resolveAuthToken:Vn,createAuthRefreshError:P}});var Rt=m((Ba,wt)=>{var{ConfigError:Xn}=we(),{DEFAULT_API_URL:Jn}=W(),pt="DESIGN_SYSTEM_REQUIRED",Ie="DESIGN_SYSTEM_NOT_FOUND",mt="DESIGN_SYSTEM_FORBIDDEN",Et="DESIGN_SYSTEM_OPERATION_DENIED",Bn=new Set(["TENANT_MISMATCH","RESOURCE_MISMATCH","UNAUTHENTICATED"]);function gt(t){return String(t||Jn).replace(/\/+$/,"")}function Yn({apiUrl:t,flagHint:e}){return[` 1. Create a Design System at ${gt(t)} (or open an existing one) and copy its ff-id.`," 2. Connect it to this project:"," npx frontfriend login"," npx frontfriend setup --ff-id <ff-id>",` or add "ff-id": "<ff-id>" to frontfriend.config.js${e?`, ${e}`:""}.`]}function $t({command:t,apiUrl:e,flagHint:r,reportOnly:s=!1}={}){return["\u{1F517} No Design System connected to this project.",` ${t?`\`frontfriend ${t}\` works`:"Frontfriend works"} on a Design System (ff-id), and frontfriend.config.js has none yet.`," Connect one first:",...Yn({apiUrl:e,flagHint:r}),...s?[]:[" Nothing in this project was changed."]]}var K=class extends Xn{constructor({command:e,apiUrl:r,flagHint:s}={}){let n=$t({command:e,apiUrl:r,flagHint:s});super(n.join(`
|
|
2
|
+
`,{mode:384}),R.renameSync(r,t);try{R.chmodSync(t,384)}catch{}}finally{R.rmSync(r,{force:!0})}}async function Cn(t,e,r){R.mkdirSync(require("path").dirname(t),{recursive:!0,mode:448});let s=`${t}.lock`,n=Date.now()+2e4,i;for(;i===void 0;)try{i=R.openSync(s,"wx",384),R.writeFileSync(i,String(process.pid))}catch(o){if(o.code!=="EEXIST")throw o;try{let a=Number(R.readFileSync(s,"utf8"));if(Number.isInteger(a)&&a>0)try{process.kill(a,0)}catch(c){if(c.code==="ESRCH"){R.unlinkSync(s);continue}}}catch(a){if(a.code==="ENOENT")continue}if(Date.now()>=n)throw r();await new Promise(a=>setTimeout(a,50))}try{return await e()}finally{R.closeSync(i),R.unlinkSync(s)}}it.exports={writePrivateJsonFileAtomic:On,withPrivateFileLock:Cn,readJsonFileSafe:wn,readFileSafe:Rn,writeJsonFile:In,writeTextFile:Sn,writeModuleExportsFile:yn,fileExists:Tn,ensureDirectoryExists:Nn,removeDirectory:An,removeFile:Ln}});var dt=m((Ja,ht)=>{var{fileExists:vn,readJsonFileSafe:qn,removeFile:xn,writePrivateJsonFileAtomic:Pn,withPrivateFileLock:Fn}=ot(),ct=require("path"),kn=require("os"),Dn=require("https"),_n=require("http"),{URL:F}=require("url"),{DEFAULT_API_URL:D}=W(),Un=ct.join(kn.homedir(),".frontfriend"),_=ct.join(Un,"credentials");function bn(){return _}function z(){try{return qn(_)}catch{return null}}function at(t){try{let e=JSON.parse(Buffer.from(String(t).split(".")[1],"base64url").toString("utf8"));return typeof e.email=="string"?e.email:null}catch{return null}}function jn(){let t=z();if(!t||!t.accessToken)return null;let e=Number(t.refreshExpiresAt)||0;return{email:at(t.accessToken),apiUrl:t.ffApiUrl||null,expired:e>0&&e<Date.now()}}function ut(t){Pn(_,t)}function Gn(){return vn(_)?(xn(_),!0):!1}function Re(t,e=60*1e3){return!t?.accessToken||!t.expiresAt||Date.now()+e>=t.expiresAt}function P(t){let e=new Error(`${t}. Run \`frontfriend login\` to re-authenticate.`);return e.code="FF_AUTH_REFRESH_FAILED",e}function lt(t,e,r){return new Promise((s,n)=>{let i=new F(t);if(i.protocol!=="https:"&&!(i.protocol==="http:"&&["localhost","127.0.0.1","[::1]"].includes(i.hostname))){n(new Error("Frontfriend API URLs require HTTPS except on localhost"));return}let o=i.protocol==="https:"?Dn:_n,a=JSON.stringify(e||{}),c=o.request({hostname:i.hostname,port:i.port,path:`${i.pathname}${i.search}`,method:"POST",headers:{"content-type":"application/json","content-length":Buffer.byteLength(a),...r?{authorization:`Bearer ${r}`}:{}}},u=>{let l="";u.on("data",h=>{l+=h}),u.on("end",()=>{if(u.statusCode>=300&&u.statusCode<400){let E=u.headers.location?` to ${u.headers.location}`:"",f=new Error(`HTTP ${u.statusCode}: redirected${E}`);f.statusCode=u.statusCode,f.body=l,n(f);return}let h=null;try{h=l?JSON.parse(l):null}catch{let f=u.headers["content-type"]||"unknown content-type",I=new Error(`Expected JSON from FrontFriend API at ${t}, but received ${f} (HTTP ${u.statusCode}). Check FF_API_URL or pass --api-url with the FrontFriend app URL.`);if(I.statusCode=u.statusCode,I.body=l,u.statusCode>=400){n(I);return}n(I);return}if(u.statusCode>=400){let E=new Error(h?.error_description||h?.error||`HTTP ${u.statusCode}`);E.statusCode=u.statusCode,E.body=h,n(E);return}s(h)})});c.setTimeout(15e3,()=>c.destroy(Object.assign(new Error("Frontfriend API request timed out"),{code:"ETIMEDOUT"}))),c.on("error",n),c.write(a),c.end()})}async function Mn(t){return Fn(_,t,()=>P("Another process is refreshing the session"))}async function ft(t,e=D){return Mn(async()=>{let r=z();if(r&&new F(r.ffApiUrl||D).origin===new F(e).origin){if(!Re(r))return r;t=r}return Hn(t,e)})}async function Hn(t,e=D){if(new F(e).origin!==new F(t.ffApiUrl||D).origin)throw P("The stored session belongs to a different API origin");if(!t?.refreshToken||!t?.deviceId)throw P("FrontFriend session expired");let r;try{r=await lt(`${e}/api/plugin/token`,{grant_type:"refresh_token",refresh_token:t.refreshToken,device_id:t.deviceId})}catch(n){throw Object.assign(P(n?.message||"Could not refresh FrontFriend session"),{cause:n})}if(!r?.access_token||!r?.refresh_token)throw P("Could not refresh FrontFriend session");let s={accessToken:r.access_token,refreshToken:r.refresh_token,deviceId:r.device_id||t.deviceId,expiresAt:Date.now()+(r.expires_in||900)*1e3,refreshExpiresAt:Date.now()+(r.refresh_expires_in||604800)*1e3,ffApiUrl:e};return ut(s),s}async function Vn(t={}){if(t.envToken)return t.envToken;if(!t.skipCredentials){let e=z();if(e?.accessToken||e?.refreshToken){let r=t.baseURL||e.ffApiUrl||D;if(new F(r).origin!==new F(e.ffApiUrl||D).origin)throw P("The stored session belongs to a different API origin");return e.accessToken&&!Re(e)?e.accessToken:(await ft(e,r)).accessToken}}return t.configuredToken?(t.silent||console.warn("\u26A0\uFE0F auth-token in frontfriend.config.js is deprecated. Run `frontfriend login` to store credentials outside the repo."),t.configuredToken):null}ht.exports={accountEmail:at,signedInAccount:jn,getCredentialsPath:bn,readCredentials:z,writeCredentials:ut,deleteCredentials:Gn,isExpired:Re,postJson:lt,refreshCredentials:ft,resolveAuthToken:Vn,createAuthRefreshError:P}});var Rt=m((Ba,wt)=>{var{ConfigError:Xn}=we(),{DEFAULT_API_URL:Jn}=W(),pt="DESIGN_SYSTEM_REQUIRED",Ie="DESIGN_SYSTEM_NOT_FOUND",mt="DESIGN_SYSTEM_FORBIDDEN",Et="DESIGN_SYSTEM_OPERATION_DENIED",Bn=new Set(["TENANT_MISMATCH","RESOURCE_MISMATCH","UNAUTHENTICATED"]);function gt(t){return String(t||Jn).replace(/\/+$/,"")}function Yn({apiUrl:t,flagHint:e}){return[` 1. Create a Design System at ${gt(t)} (or open an existing one) and copy its ff-id.`," 2. Connect it to this project:"," npx frontfriend login"," npx frontfriend setup --ff-id <ff-id>",` or add "ff-id": "<ff-id>" to frontfriend.config.js${e?`, ${e}`:""}.`]}function $t({command:t,apiUrl:e,flagHint:r,reportOnly:s=!1}={}){return["\u{1F517} No Design System connected to this project.",` ${t?`\`frontfriend ${t}\` works`:"Frontfriend works"} on a Design System (ff-id), and frontfriend.config.js has none yet.`," Connect one first:",...Yn({apiUrl:e,flagHint:r}),...s?[]:[" Nothing in this project was changed."]]}var K=class extends Xn{constructor({command:e,apiUrl:r,flagHint:s}={}){let n=$t({command:e,apiUrl:r,flagHint:s});super(n.join(`
|
|
3
3
|
`),"ff-id"),this.name="DesignSystemRequiredError",this.code=pt,this.command=e,this.lines=n}};function Wn(t,{command:e,apiUrl:r,flagHint:s}={}){if(t&&typeof t.ffId=="string"&&t.ffId.trim())return t.ffId;throw new K({command:e,apiUrl:r,flagHint:s})}function zn(t){if(!t)return null;try{let e=new URL(t),r=e.pathname.match(/\/design-systems\/([^/]+)/);return r?decodeURIComponent(r[1]):e.searchParams.get("ffId")}catch{return null}}function Kn(t){try{return new URL(t).origin}catch{return null}}function Qn(t,{ffId:e,apiUrl:r}={}){if(!t||typeof t!="object")return null;let s=t.statusCode,n=`${t.message||""} ${t.serverMessage||""}`,i=e||zn(t.url),o=i?`"${i}"`:"configured in frontfriend.config.js",a=gt(r||Kn(t.url));if(s===404&&(t.serverCode===Ie||/design system not found/i.test(n)))return{code:Ie,lines:[`\u{1F517} Design System ${o} was not found on ${a}.`," The ff-id in frontfriend.config.js does not match any Design System there."," Copy the ff-id again from the Design System in Frontfriend, or connect another one:"," npx frontfriend setup --ff-id <ff-id>"]};let c=/\/design-systems\/|[?&]ffId=/.test(t.url||"");return s===403&&c&&t.serverCode&&!Bn.has(t.serverCode)?{code:Et,lines:[`\u{1F512} Frontfriend denied this operation on Design System ${o}.`,` ${t.serverMessage||"The operation is not allowed."} (${t.serverCode})`," Your login reaches this Design System: check your workspace role and plan, or ask a workspace admin."]}:s===403&&c?{code:mt,lines:[`\u{1F512} Design System ${o} is not accessible with your current Frontfriend login or permissions.`," Sign in with an account that belongs to its workspace (npx frontfriend login),"," or ask the workspace administrator to invite your sign-in email. For help, contact support@frontfriend.dev."," or connect a Design System you can access:"," npx frontfriend setup --ff-id <ff-id>"]}:null}wt.exports={DESIGN_SYSTEM_REQUIRED:pt,DESIGN_SYSTEM_NOT_FOUND:Ie,DESIGN_SYSTEM_FORBIDDEN:mt,DESIGN_SYSTEM_OPERATION_DENIED:Et,DesignSystemRequiredError:K,missingDesignSystemLines:$t,requireDesignSystem:Wn,describeDesignSystemAccessError:Qn}});var Nt=m((Ya,Tt)=>{Tt.exports=yt;yt.sync=ei;var It=require("fs");function Zn(t,e){var r=e.pathExt!==void 0?e.pathExt:process.env.PATHEXT;if(!r||(r=r.split(";"),r.indexOf("")!==-1))return!0;for(var s=0;s<r.length;s++){var n=r[s].toLowerCase();if(n&&t.substr(-n.length).toLowerCase()===n)return!0}return!1}function St(t,e,r){return!t.isSymbolicLink()&&!t.isFile()?!1:Zn(e,r)}function yt(t,e,r){It.stat(t,function(s,n){r(s,s?!1:St(n,t,e))})}function ei(t,e){return St(It.statSync(t),t,e)}});var vt=m((Wa,Ct)=>{Ct.exports=Lt;Lt.sync=ti;var At=require("fs");function Lt(t,e,r){At.stat(t,function(s,n){r(s,s?!1:Ot(n,e))})}function ti(t,e){return Ot(At.statSync(t),e)}function Ot(t,e){return t.isFile()&&ri(t,e)}function ri(t,e){var r=t.mode,s=t.uid,n=t.gid,i=e.uid!==void 0?e.uid:process.getuid&&process.getuid(),o=e.gid!==void 0?e.gid:process.getgid&&process.getgid(),a=parseInt("100",8),c=parseInt("010",8),u=parseInt("001",8),l=a|c,h=r&u||r&c&&n===o||r&a&&s===i||r&l&&i===0;return h}});var xt=m((Ka,qt)=>{var za=require("fs"),Q;process.platform==="win32"||global.TESTING_WINDOWS?Q=Nt():Q=vt();qt.exports=Se;Se.sync=si;function Se(t,e,r){if(typeof e=="function"&&(r=e,e={}),!r){if(typeof Promise!="function")throw new TypeError("callback not provided");return new Promise(function(s,n){Se(t,e||{},function(i,o){i?n(i):s(o)})})}Q(t,e||{},function(s,n){s&&(s.code==="EACCES"||e&&e.ignoreErrors)&&(s=null,n=!1),r(s,n)})}function si(t,e){try{return Q.sync(t,e||{})}catch(r){if(e&&e.ignoreErrors||r.code==="EACCES")return!1;throw r}}});var bt=m((Qa,Ut)=>{var U=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",Pt=require("path"),ni=U?";":":",Ft=xt(),kt=t=>Object.assign(new Error(`not found: ${t}`),{code:"ENOENT"}),Dt=(t,e)=>{let r=e.colon||ni,s=t.match(/\//)||U&&t.match(/\\/)?[""]:[...U?[process.cwd()]:[],...(e.path||process.env.PATH||"").split(r)],n=U?e.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",i=U?n.split(r):[""];return U&&t.indexOf(".")!==-1&&i[0]!==""&&i.unshift(""),{pathEnv:s,pathExt:i,pathExtExe:n}},_t=(t,e,r)=>{typeof e=="function"&&(r=e,e={}),e||(e={});let{pathEnv:s,pathExt:n,pathExtExe:i}=Dt(t,e),o=[],a=u=>new Promise((l,h)=>{if(u===s.length)return e.all&&o.length?l(o):h(kt(t));let E=s[u],f=/^".*"$/.test(E)?E.slice(1,-1):E,I=Pt.join(f,t),v=!f&&/^\.[\\\/]/.test(t)?t.slice(0,2)+I:I;l(c(v,u,0))}),c=(u,l,h)=>new Promise((E,f)=>{if(h===n.length)return E(a(l+1));let I=n[h];Ft(u+I,{pathExt:i},(v,dn)=>{if(!v&&dn)if(e.all)o.push(u+I);else return E(u+I);return E(c(u,l,h+1))})});return r?a(0).then(u=>r(null,u),r):a(0)},ii=(t,e)=>{e=e||{};let{pathEnv:r,pathExt:s,pathExtExe:n}=Dt(t,e),i=[];for(let o=0;o<r.length;o++){let a=r[o],c=/^".*"$/.test(a)?a.slice(1,-1):a,u=Pt.join(c,t),l=!c&&/^\.[\\\/]/.test(t)?t.slice(0,2)+u:u;for(let h=0;h<s.length;h++){let E=l+s[h];try{if(Ft.sync(E,{pathExt:n}))if(e.all)i.push(E);else return E}catch{}}}if(e.all&&i.length)return i;if(e.nothrow)return null;throw kt(t)};Ut.exports=_t;_t.sync=ii});var Gt=m((Za,ye)=>{"use strict";var jt=(t={})=>{let e=t.env||process.env;return(t.platform||process.platform)!=="win32"?"PATH":Object.keys(e).reverse().find(s=>s.toUpperCase()==="PATH")||"Path"};ye.exports=jt;ye.exports.default=jt});var Xt=m((eu,Vt)=>{"use strict";var Mt=require("path"),oi=bt(),ci=Gt();function Ht(t,e){let r=t.options.env||process.env,s=process.cwd(),n=t.options.cwd!=null,i=n&&process.chdir!==void 0&&!process.chdir.disabled;if(i)try{process.chdir(t.options.cwd)}catch{}let o;try{o=oi.sync(t.command,{path:r[ci({env:r})],pathExt:e?Mt.delimiter:void 0})}catch{}finally{i&&process.chdir(s)}return o&&(o=Mt.resolve(n?t.options.cwd:"",o)),o}function ai(t){return Ht(t)||Ht(t,!0)}Vt.exports=ai});var Jt=m((tu,Ne)=>{"use strict";var Te=/([()\][%!^"`<>&|;, *?])/g;function ui(t){return t=t.replace(Te,"^$1"),t}function li(t,e){return t=`${t}`,t=t.replace(/(?=(\\+?)?)\1"/g,'$1$1\\"'),t=t.replace(/(?=(\\+?)?)\1$/,"$1$1"),t=`"${t}"`,t=t.replace(Te,"^$1"),e&&(t=t.replace(Te,"^$1")),t}Ne.exports.command=ui;Ne.exports.argument=li});var Yt=m((ru,Bt)=>{"use strict";Bt.exports=/^#!(.*)/});var zt=m((su,Wt)=>{"use strict";var fi=Yt();Wt.exports=(t="")=>{let e=t.match(fi);if(!e)return null;let[r,s]=e[0].replace(/#! ?/,"").split(" "),n=r.split("/").pop();return n==="env"?s:s?`${n} ${s}`:n}});var Qt=m((nu,Kt)=>{"use strict";var Ae=require("fs"),hi=zt();function di(t){let r=Buffer.alloc(150),s;try{s=Ae.openSync(t,"r"),Ae.readSync(s,r,0,150,0),Ae.closeSync(s)}catch{}return hi(r.toString())}Kt.exports=di});var rr=m((iu,tr)=>{"use strict";var pi=require("path"),Zt=Xt(),er=Jt(),mi=Qt(),Ei=process.platform==="win32",gi=/\.(?:com|exe)$/i,$i=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function wi(t){t.file=Zt(t);let e=t.file&&mi(t.file);return e?(t.args.unshift(t.file),t.command=e,Zt(t)):t.file}function Ri(t){if(!Ei)return t;let e=wi(t),r=!gi.test(e);if(t.options.forceShell||r){let s=$i.test(e);t.command=pi.normalize(t.command),t.command=er.command(t.command),t.args=t.args.map(i=>er.argument(i,s));let n=[t.command].concat(t.args).join(" ");t.args=["/d","/s","/c",`"${n}"`],t.command=process.env.comspec||"cmd.exe",t.options.windowsVerbatimArguments=!0}return t}function Ii(t,e,r){e&&!Array.isArray(e)&&(r=e,e=null),e=e?e.slice(0):[],r=Object.assign({},r);let s={command:t,args:e,options:r,file:void 0,original:{command:t,args:e}};return r.shell?s:Ri(s)}tr.exports=Ii});var ir=m((ou,nr)=>{"use strict";var Le=process.platform==="win32";function Oe(t,e){return Object.assign(new Error(`${e} ${t.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${e} ${t.command}`,path:t.command,spawnargs:t.args})}function Si(t,e){if(!Le)return;let r=t.emit;t.emit=function(s,n){if(s==="exit"){let i=sr(n,e);if(i)return r.call(t,"error",i)}return r.apply(t,arguments)}}function sr(t,e){return Le&&t===1&&!e.file?Oe(e.original,"spawn"):null}function yi(t,e){return Le&&t===1&&!e.file?Oe(e.original,"spawnSync"):null}nr.exports={hookChildProcess:Si,verifyENOENT:sr,verifyENOENTSync:yi,notFoundError:Oe}});var ar=m((cu,b)=>{"use strict";var or=require("child_process"),Ce=rr(),ve=ir();function cr(t,e,r){let s=Ce(t,e,r),n=or.spawn(s.command,s.args,s.options);return ve.hookChildProcess(n,s),n}function Ti(t,e,r){let s=Ce(t,e,r),n=or.spawnSync(s.command,s.args,s.options);return n.error=n.error||ve.verifyENOENTSync(n.status,s),n}b.exports=cr;b.exports.spawn=cr;b.exports.sync=Ti;b.exports._parse=Ce;b.exports._enoent=ve});var j=m((au,ur)=>{"use strict";var Ni="2.0.0",Ai=Number.MAX_SAFE_INTEGER||9007199254740991,Li=16,Oi=250,Ci=["major","premajor","minor","preminor","patch","prepatch","prerelease"];ur.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:Li,MAX_SAFE_BUILD_LENGTH:Oi,MAX_SAFE_INTEGER:Ai,RELEASE_TYPES:Ci,SEMVER_SPEC_VERSION:Ni,FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var V=m((uu,lr)=>{"use strict";var vi=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...t)=>console.error("SEMVER",...t):()=>{};lr.exports=vi});var G=m((C,fr)=>{"use strict";var{MAX_SAFE_COMPONENT_LENGTH:qe,MAX_SAFE_BUILD_LENGTH:qi,MAX_LENGTH:xi}=j(),Pi=V();C=fr.exports={};var Fi=C.re=[],ki=C.safeRe=[],d=C.src=[],Di=C.safeSrc=[],p=C.t={},_i=0,xe="[a-zA-Z0-9-]",Ui=[["\\s",1],["\\d",xi],[xe,qi]],bi=t=>{for(let[e,r]of Ui)t=t.split(`${e}*`).join(`${e}{0,${r}}`).split(`${e}+`).join(`${e}{1,${r}}`);return t},g=(t,e,r)=>{let s=bi(e),n=_i++;Pi(t,n,e),p[t]=n,d[n]=e,Di[n]=s,Fi[n]=new RegExp(e,r?"g":void 0),ki[n]=new RegExp(s,r?"g":void 0)};g("NUMERICIDENTIFIER","0|[1-9]\\d*");g("NUMERICIDENTIFIERLOOSE","\\d+");g("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${xe}*`);g("MAINVERSION",`(${d[p.NUMERICIDENTIFIER]})\\.(${d[p.NUMERICIDENTIFIER]})\\.(${d[p.NUMERICIDENTIFIER]})`);g("MAINVERSIONLOOSE",`(${d[p.NUMERICIDENTIFIERLOOSE]})\\.(${d[p.NUMERICIDENTIFIERLOOSE]})\\.(${d[p.NUMERICIDENTIFIERLOOSE]})`);g("PRERELEASEIDENTIFIER",`(?:${d[p.NONNUMERICIDENTIFIER]}|${d[p.NUMERICIDENTIFIER]})`);g("PRERELEASEIDENTIFIERLOOSE",`(?:${d[p.NONNUMERICIDENTIFIER]}|${d[p.NUMERICIDENTIFIERLOOSE]})`);g("PRERELEASE",`(?:-(${d[p.PRERELEASEIDENTIFIER]}(?:\\.${d[p.PRERELEASEIDENTIFIER]})*))`);g("PRERELEASELOOSE",`(?:-?(${d[p.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${d[p.PRERELEASEIDENTIFIERLOOSE]})*))`);g("BUILDIDENTIFIER",`${xe}+`);g("BUILD",`(?:\\+(${d[p.BUILDIDENTIFIER]}(?:\\.${d[p.BUILDIDENTIFIER]})*))`);g("FULLPLAIN",`v?${d[p.MAINVERSION]}${d[p.PRERELEASE]}?${d[p.BUILD]}?`);g("FULL",`^${d[p.FULLPLAIN]}$`);g("LOOSEPLAIN",`[v=\\s]*${d[p.MAINVERSIONLOOSE]}${d[p.PRERELEASELOOSE]}?${d[p.BUILD]}?`);g("LOOSE",`^${d[p.LOOSEPLAIN]}$`);g("GTLT","((?:<|>)?=?)");g("XRANGEIDENTIFIERLOOSE",`${d[p.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);g("XRANGEIDENTIFIER",`${d[p.NUMERICIDENTIFIER]}|x|X|\\*`);g("XRANGEPLAIN",`[v=\\s]*(${d[p.XRANGEIDENTIFIER]})(?:\\.(${d[p.XRANGEIDENTIFIER]})(?:\\.(${d[p.XRANGEIDENTIFIER]})(?:${d[p.PRERELEASE]})?${d[p.BUILD]}?)?)?`);g("XRANGEPLAINLOOSE",`[v=\\s]*(${d[p.XRANGEIDENTIFIERLOOSE]})(?:\\.(${d[p.XRANGEIDENTIFIERLOOSE]})(?:\\.(${d[p.XRANGEIDENTIFIERLOOSE]})(?:${d[p.PRERELEASELOOSE]})?${d[p.BUILD]}?)?)?`);g("XRANGE",`^${d[p.GTLT]}\\s*${d[p.XRANGEPLAIN]}$`);g("XRANGELOOSE",`^${d[p.GTLT]}\\s*${d[p.XRANGEPLAINLOOSE]}$`);g("COERCEPLAIN",`(^|[^\\d])(\\d{1,${qe}})(?:\\.(\\d{1,${qe}}))?(?:\\.(\\d{1,${qe}}))?`);g("COERCE",`${d[p.COERCEPLAIN]}(?:$|[^\\d])`);g("COERCEFULL",d[p.COERCEPLAIN]+`(?:${d[p.PRERELEASE]})?(?:${d[p.BUILD]})?(?:$|[^\\d])`);g("COERCERTL",d[p.COERCE],!0);g("COERCERTLFULL",d[p.COERCEFULL],!0);g("LONETILDE","(?:~>?)");g("TILDETRIM",`(\\s*)${d[p.LONETILDE]}\\s+`,!0);C.tildeTrimReplace="$1~";g("TILDE",`^${d[p.LONETILDE]}${d[p.XRANGEPLAIN]}$`);g("TILDELOOSE",`^${d[p.LONETILDE]}${d[p.XRANGEPLAINLOOSE]}$`);g("LONECARET","(?:\\^)");g("CARETTRIM",`(\\s*)${d[p.LONECARET]}\\s+`,!0);C.caretTrimReplace="$1^";g("CARET",`^${d[p.LONECARET]}${d[p.XRANGEPLAIN]}$`);g("CARETLOOSE",`^${d[p.LONECARET]}${d[p.XRANGEPLAINLOOSE]}$`);g("COMPARATORLOOSE",`^${d[p.GTLT]}\\s*(${d[p.LOOSEPLAIN]})$|^$`);g("COMPARATOR",`^${d[p.GTLT]}\\s*(${d[p.FULLPLAIN]})$|^$`);g("COMPARATORTRIM",`(\\s*)${d[p.GTLT]}\\s*(${d[p.LOOSEPLAIN]}|${d[p.XRANGEPLAIN]})`,!0);C.comparatorTrimReplace="$1$2$3";g("HYPHENRANGE",`^\\s*(${d[p.XRANGEPLAIN]})\\s+-\\s+(${d[p.XRANGEPLAIN]})\\s*$`);g("HYPHENRANGELOOSE",`^\\s*(${d[p.XRANGEPLAINLOOSE]})\\s+-\\s+(${d[p.XRANGEPLAINLOOSE]})\\s*$`);g("STAR","(<|>)?=?\\s*\\*");g("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");g("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var Z=m((lu,hr)=>{"use strict";var ji=Object.freeze({loose:!0}),Gi=Object.freeze({}),Mi=t=>t?typeof t!="object"?ji:t:Gi;hr.exports=Mi});var Pe=m((fu,mr)=>{"use strict";var dr=/^[0-9]+$/,pr=(t,e)=>{if(typeof t=="number"&&typeof e=="number")return t===e?0:t<e?-1:1;let r=dr.test(t),s=dr.test(e);return r&&s&&(t=+t,e=+e),t===e?0:r&&!s?-1:s&&!r?1:t<e?-1:1},Hi=(t,e)=>pr(e,t);mr.exports={compareIdentifiers:pr,rcompareIdentifiers:Hi}});var y=m((hu,gr)=>{"use strict";var ee=V(),{MAX_LENGTH:Er,MAX_SAFE_INTEGER:te}=j(),{safeRe:re,t:se}=G(),Vi=Z(),{compareIdentifiers:Fe}=Pe(),Xi=(t,e)=>{let r=e.split(".");if(r.length>t.length)return!1;for(let s=0;s<r.length;s++)if(Fe(t[s],r[s])!==0)return!1;return!0},ke=class t{constructor(e,r){if(r=Vi(r),e instanceof t){if(e.loose===!!r.loose&&e.includePrerelease===!!r.includePrerelease)return e;e=e.version}else if(typeof e!="string")throw new TypeError(`Invalid version. Must be a string. Got type "${typeof e}".`);if(e.length>Er)throw new TypeError(`version is longer than ${Er} characters`);ee("SemVer",e,r),this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease;let s=e.trim().match(r.loose?re[se.LOOSE]:re[se.FULL]);if(!s)throw new TypeError(`Invalid Version: ${e}`);if(this.raw=e,this.major=+s[1],this.minor=+s[2],this.patch=+s[3],this.major>te||this.major<0)throw new TypeError("Invalid major version");if(this.minor>te||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>te||this.patch<0)throw new TypeError("Invalid patch version");s[4]?this.prerelease=s[4].split(".").map(n=>{if(/^[0-9]+$/.test(n)){let i=+n;if(i>=0&&i<te)return i}return n}):this.prerelease=[],this.build=s[5]?s[5].split("."):[],this.format()}format(){return this.version=`${this.major}.${this.minor}.${this.patch}`,this.prerelease.length&&(this.version+=`-${this.prerelease.join(".")}`),this.version}toString(){return this.version}compare(e){if(ee("SemVer.compare",this.version,this.options,e),!(e instanceof t)){if(typeof e=="string"&&e===this.version)return 0;e=new t(e,this.options)}return e.version===this.version?0:this.compareMain(e)||this.comparePre(e)}compareMain(e){return e instanceof t||(e=new t(e,this.options)),this.major<e.major?-1:this.major>e.major?1:this.minor<e.minor?-1:this.minor>e.minor?1:this.patch<e.patch?-1:this.patch>e.patch?1:0}comparePre(e){if(e instanceof t||(e=new t(e,this.options)),this.prerelease.length&&!e.prerelease.length)return-1;if(!this.prerelease.length&&e.prerelease.length)return 1;if(!this.prerelease.length&&!e.prerelease.length)return 0;let r=0;do{let s=this.prerelease[r],n=e.prerelease[r];if(ee("prerelease compare",r,s,n),s===void 0&&n===void 0)return 0;if(n===void 0)return 1;if(s===void 0)return-1;if(s===n)continue;return Fe(s,n)}while(++r)}compareBuild(e){e instanceof t||(e=new t(e,this.options));let r=0;do{let s=this.build[r],n=e.build[r];if(ee("build compare",r,s,n),s===void 0&&n===void 0)return 0;if(n===void 0)return 1;if(s===void 0)return-1;if(s===n)continue;return Fe(s,n)}while(++r)}inc(e,r,s){if(e.startsWith("pre")){if(!r&&s===!1)throw new Error("invalid increment argument: identifier is empty");if(r){let n=`-${r}`.match(this.options.loose?re[se.PRERELEASELOOSE]:re[se.PRERELEASE]);if(!n||n[1]!==r)throw new Error(`invalid identifier: ${r}`)}}switch(e){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",r,s);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",r,s);break;case"prepatch":this.prerelease.length=0,this.inc("patch",r,s),this.inc("pre",r,s);break;case"prerelease":this.prerelease.length===0&&this.inc("patch",r,s),this.inc("pre",r,s);break;case"release":if(this.prerelease.length===0)throw new Error(`version ${this.raw} is not a prerelease`);this.prerelease.length=0;break;case"major":(this.minor!==0||this.patch!==0||this.prerelease.length===0)&&this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":(this.patch!==0||this.prerelease.length===0)&&this.minor++,this.patch=0,this.prerelease=[];break;case"patch":this.prerelease.length===0&&this.patch++,this.prerelease=[];break;case"pre":{let n=Number(s)?1:0;if(this.prerelease.length===0)this.prerelease=[n];else{let i=this.prerelease.length;for(;--i>=0;)typeof this.prerelease[i]=="number"&&(this.prerelease[i]++,i=-2);if(i===-1){if(r===this.prerelease.join(".")&&s===!1)throw new Error("invalid increment argument: identifier already exists");this.prerelease.push(n)}}if(r){let i=[r,n];if(s===!1&&(i=[r]),Xi(this.prerelease,r)){let o=this.prerelease[r.split(".").length];isNaN(o)&&(this.prerelease=i)}else this.prerelease=i}break}default:throw new Error(`invalid increment argument: ${e}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(".")}`),this}};gr.exports=ke});var q=m((du,wr)=>{"use strict";var $r=y(),Ji=(t,e,r=!1)=>{if(t instanceof $r)return t;try{return new $r(t,e)}catch(s){if(!r)return null;throw s}};wr.exports=Ji});var Ir=m((pu,Rr)=>{"use strict";var Bi=q(),Yi=(t,e)=>{let r=Bi(t,e);return r?r.version:null};Rr.exports=Yi});var yr=m((mu,Sr)=>{"use strict";var Wi=q(),zi=(t,e)=>{let r=Wi(t.trim().replace(/^[=v]+/,""),e);return r?r.version:null};Sr.exports=zi});var Ar=m((Eu,Nr)=>{"use strict";var Tr=y(),Ki=(t,e,r,s,n)=>{typeof r=="string"&&(n=s,s=r,r=void 0);try{return new Tr(t instanceof Tr?t.version:t,r).inc(e,s,n).version}catch{return null}};Nr.exports=Ki});var Cr=m((gu,Or)=>{"use strict";var Lr=q(),Qi=(t,e)=>{let r=Lr(t,null,!0),s=Lr(e,null,!0),n=r.compare(s);if(n===0)return null;let i=n>0,o=i?r:s,a=i?s:r,c=!!o.prerelease.length;if(!!a.prerelease.length&&!c){if(!a.patch&&!a.minor)return"major";if(a.compareMain(o)===0)return a.minor&&!a.patch?"minor":"patch"}let l=c?"pre":"";return r.major!==s.major?l+"major":r.minor!==s.minor?l+"minor":r.patch!==s.patch?l+"patch":"prerelease"};Or.exports=Qi});var qr=m(($u,vr)=>{"use strict";var Zi=y(),eo=(t,e)=>new Zi(t,e).major;vr.exports=eo});var Pr=m((wu,xr)=>{"use strict";var to=y(),ro=(t,e)=>new to(t,e).minor;xr.exports=ro});var kr=m((Ru,Fr)=>{"use strict";var so=y(),no=(t,e)=>new so(t,e).patch;Fr.exports=no});var _r=m((Iu,Dr)=>{"use strict";var io=q(),oo=(t,e)=>{let r=io(t,e);return r&&r.prerelease.length?r.prerelease:null};Dr.exports=oo});var A=m((Su,br)=>{"use strict";var Ur=y(),co=(t,e,r)=>new Ur(t,r).compare(new Ur(e,r));br.exports=co});var Gr=m((yu,jr)=>{"use strict";var ao=A(),uo=(t,e,r)=>ao(e,t,r);jr.exports=uo});var Hr=m((Tu,Mr)=>{"use strict";var lo=A(),fo=(t,e)=>lo(t,e,!0);Mr.exports=fo});var ne=m((Nu,Xr)=>{"use strict";var Vr=y(),ho=(t,e,r)=>{let s=new Vr(t,r),n=new Vr(e,r);return s.compare(n)||s.compareBuild(n)};Xr.exports=ho});var Br=m((Au,Jr)=>{"use strict";var po=ne(),mo=(t,e)=>t.sort((r,s)=>po(r,s,e));Jr.exports=mo});var Wr=m((Lu,Yr)=>{"use strict";var Eo=ne(),go=(t,e)=>t.sort((r,s)=>Eo(s,r,e));Yr.exports=go});var X=m((Ou,zr)=>{"use strict";var $o=A(),wo=(t,e,r)=>$o(t,e,r)>0;zr.exports=wo});var ie=m((Cu,Kr)=>{"use strict";var Ro=A(),Io=(t,e,r)=>Ro(t,e,r)<0;Kr.exports=Io});var De=m((vu,Qr)=>{"use strict";var So=A(),yo=(t,e,r)=>So(t,e,r)===0;Qr.exports=yo});var _e=m((qu,Zr)=>{"use strict";var To=A(),No=(t,e,r)=>To(t,e,r)!==0;Zr.exports=No});var oe=m((xu,es)=>{"use strict";var Ao=A(),Lo=(t,e,r)=>Ao(t,e,r)>=0;es.exports=Lo});var ce=m((Pu,ts)=>{"use strict";var Oo=A(),Co=(t,e,r)=>Oo(t,e,r)<=0;ts.exports=Co});var Ue=m((Fu,rs)=>{"use strict";var vo=De(),qo=_e(),xo=X(),Po=oe(),Fo=ie(),ko=ce(),Do=(t,e,r,s)=>{switch(e){case"===":return typeof t=="object"&&(t=t.version),typeof r=="object"&&(r=r.version),t===r;case"!==":return typeof t=="object"&&(t=t.version),typeof r=="object"&&(r=r.version),t!==r;case"":case"=":case"==":return vo(t,r,s);case"!=":return qo(t,r,s);case">":return xo(t,r,s);case">=":return Po(t,r,s);case"<":return Fo(t,r,s);case"<=":return ko(t,r,s);default:throw new TypeError(`Invalid operator: ${e}`)}};rs.exports=Do});var ns=m((ku,ss)=>{"use strict";var _o=y(),Uo=q(),{safeRe:ae,t:ue}=G(),bo=(t,e)=>{if(t instanceof _o)return t;if(typeof t=="number"&&(t=String(t)),typeof t!="string")return null;e=e||{};let r=null;if(!e.rtl)r=t.match(e.includePrerelease?ae[ue.COERCEFULL]:ae[ue.COERCE]);else{let c=e.includePrerelease?ae[ue.COERCERTLFULL]:ae[ue.COERCERTL],u;for(;(u=c.exec(t))&&(!r||r.index+r[0].length!==t.length);)(!r||u.index+u[0].length!==r.index+r[0].length)&&(r=u),c.lastIndex=u.index+u[1].length+u[2].length;c.lastIndex=-1}if(r===null)return null;let s=r[2],n=r[3]||"0",i=r[4]||"0",o=e.includePrerelease&&r[5]?`-${r[5]}`:"",a=e.includePrerelease&&r[6]?`+${r[6]}`:"";return Uo(`${s}.${n}.${i}${o}${a}`,e)};ss.exports=bo});var os=m((Du,is)=>{"use strict";var jo=q(),Go=j(),Mo=y(),Ho=(t,e,r)=>{if(!Go.RELEASE_TYPES.includes(e))return null;let s=Vo(t,r);return s&&Xo(s,e)},Vo=(t,e)=>{let r=t instanceof Mo?t.version:t;return jo(r,e)},Xo=(t,e)=>{if(Jo(e))return t.version;switch(t.prerelease=[],e){case"major":t.minor=0,t.patch=0;break;case"minor":t.patch=0;break}return t.format()},Jo=t=>t.startsWith("pre");is.exports=Ho});var as=m((_u,cs)=>{"use strict";var be=class{constructor(){this.max=1e3,this.map=new Map}get(e){let r=this.map.get(e);if(r!==void 0)return this.map.delete(e),this.map.set(e,r),r}delete(e){return this.map.delete(e)}set(e,r){if(!this.delete(e)&&r!==void 0){if(this.map.size>=this.max){let n=this.map.keys().next().value;this.delete(n)}this.map.set(e,r)}return this}};cs.exports=be});var L=m((Uu,hs)=>{"use strict";var Bo=/\s+/g,je=class t{constructor(e,r){if(r=Wo(r),e instanceof t)return e.loose===!!r.loose&&e.includePrerelease===!!r.includePrerelease?e:new t(e.raw,r);if(e instanceof Ge)return this.raw=e.value,this.set=[[e]],this.formatted=void 0,this;if(this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease,this.raw=e.trim().replace(Bo," "),this.set=this.raw.split("||").map(s=>this.parseRange(s.trim())).filter(s=>s.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let s=this.set[0];if(this.set=this.set.filter(n=>!ls(n[0])),this.set.length===0)this.set=[s];else if(this.set.length>1){for(let n of this.set)if(n.length===1&&nc(n[0])){this.set=[n];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let e=0;e<this.set.length;e++){e>0&&(this.formatted+="||");let r=this.set[e];for(let s=0;s<r.length;s++)s>0&&(this.formatted+=" "),this.formatted+=r[s].toString().trim()}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(e){e=e.replace(sc,"");let s=((this.options.includePrerelease&&tc)|(this.options.loose&&rc))+":"+e,n=us.get(s);if(n)return n;let i=this.options.loose,o=i?N[T.HYPHENRANGELOOSE]:N[T.HYPHENRANGE];e=e.replace(o,mc(this.options.includePrerelease)),w("hyphen replace",e),e=e.replace(N[T.COMPARATORTRIM],Qo),w("comparator trim",e),e=e.replace(N[T.TILDETRIM],Zo),w("tilde trim",e),e=e.replace(N[T.CARETTRIM],ec),w("caret trim",e);let a=e.split(" ").map(h=>ic(h,this.options)).join(" ").split(/\s+/).map(h=>pc(h,this.options));i&&(a=a.filter(h=>(w("loose invalid filter",h,this.options),!!h.match(N[T.COMPARATORLOOSE])))),w("range list",a);let c=new Map,u=a.map(h=>new Ge(h,this.options));for(let h of u){if(ls(h))return[h];c.set(h.value,h)}c.size>1&&c.has("")&&c.delete("");let l=[...c.values()];return us.set(s,l),l}intersects(e,r){if(!(e instanceof t))throw new TypeError("a Range is required");return this.set.some(s=>fs(s,r)&&e.set.some(n=>fs(n,r)&&s.every(i=>n.every(o=>i.intersects(o,r)))))}test(e){if(!e)return!1;if(typeof e=="string")try{e=new zo(e,this.options)}catch{return!1}for(let r=0;r<this.set.length;r++)if(Ec(this.set[r],e,this.options))return!0;return!1}};hs.exports=je;var Yo=as(),us=new Yo,Wo=Z(),Ge=J(),w=V(),zo=y(),{safeRe:N,src:Ko,t:T,comparatorTrimReplace:Qo,tildeTrimReplace:Zo,caretTrimReplace:ec}=G(),{FLAG_INCLUDE_PRERELEASE:tc,FLAG_LOOSE:rc}=j(),sc=new RegExp(Ko[T.BUILD],"g"),ls=t=>t.value==="<0.0.0-0",nc=t=>t.value==="",fs=(t,e)=>{let r=!0,s=t.slice(),n=s.pop();for(;r&&s.length;)r=s.every(i=>n.intersects(i,e)),n=s.pop();return r},ic=(t,e)=>(t=t.replace(N[T.BUILD],""),w("comp",t,e),t=uc(t,e),w("caret",t),t=cc(t,e),w("tildes",t),t=fc(t,e),w("xrange",t),t=dc(t,e),w("stars",t),t),S=t=>!t||t.toLowerCase()==="x"||t==="*",oc=(t,e,r)=>S(t)&&!S(e)||S(e)&&r&&!S(r),cc=(t,e)=>t.trim().split(/\s+/).map(r=>ac(r,e)).join(" "),ac=(t,e)=>{let r=e.loose?N[T.TILDELOOSE]:N[T.TILDE],s=e.includePrerelease?"-0":"";return t.replace(r,(n,i,o,a,c)=>{w("tilde",t,n,i,o,a,c);let u;return S(i)?u="":S(o)?u=`>=${i}.0.0${s} <${+i+1}.0.0-0`:S(a)?u=`>=${i}.${o}.0${s} <${i}.${+o+1}.0-0`:c?(w("replaceTilde pr",c),u=`>=${i}.${o}.${a}-${c} <${i}.${+o+1}.0-0`):u=`>=${i}.${o}.${a} <${i}.${+o+1}.0-0`,w("tilde return",u),u})},uc=(t,e)=>t.trim().split(/\s+/).map(r=>lc(r,e)).join(" "),lc=(t,e)=>{w("caret",t,e);let r=e.loose?N[T.CARETLOOSE]:N[T.CARET],s=e.includePrerelease?"-0":"";return t.replace(r,(n,i,o,a,c)=>{w("caret",t,n,i,o,a,c);let u;return S(i)?u="":S(o)?u=`>=${i}.0.0${s} <${+i+1}.0.0-0`:S(a)?i==="0"?u=`>=${i}.${o}.0${s} <${i}.${+o+1}.0-0`:u=`>=${i}.${o}.0${s} <${+i+1}.0.0-0`:c?(w("replaceCaret pr",c),i==="0"?o==="0"?u=`>=${i}.${o}.${a}-${c} <${i}.${o}.${+a+1}-0`:u=`>=${i}.${o}.${a}-${c} <${i}.${+o+1}.0-0`:u=`>=${i}.${o}.${a}-${c} <${+i+1}.0.0-0`):(w("no pr"),i==="0"?o==="0"?u=`>=${i}.${o}.${a} <${i}.${o}.${+a+1}-0`:u=`>=${i}.${o}.${a} <${i}.${+o+1}.0-0`:u=`>=${i}.${o}.${a} <${+i+1}.0.0-0`),w("caret return",u),u})},fc=(t,e)=>(w("replaceXRanges",t,e),t.split(/\s+/).map(r=>hc(r,e)).join(" ")),hc=(t,e)=>{t=t.trim();let r=e.loose?N[T.XRANGELOOSE]:N[T.XRANGE];return t.replace(r,(s,n,i,o,a,c)=>{if(w("xRange",t,s,n,i,o,a,c),oc(i,o,a))return t;let u=S(i),l=u||S(o),h=l||S(a),E=h;return n==="="&&E&&(n=""),c=e.includePrerelease?"-0":"",u?n===">"||n==="<"?s="<0.0.0-0":s="*":n&&E?(l&&(o=0),a=0,n===">"?(n=">=",l?(i=+i+1,o=0,a=0):(o=+o+1,a=0)):n==="<="&&(n="<",l?i=+i+1:o=+o+1),n==="<"&&(c="-0"),s=`${n+i}.${o}.${a}${c}`):l?s=`>=${i}.0.0${c} <${+i+1}.0.0-0`:h&&(s=`>=${i}.${o}.0${c} <${i}.${+o+1}.0-0`),w("xRange return",s),s})},dc=(t,e)=>(w("replaceStars",t,e),t.trim().replace(N[T.STAR],"")),pc=(t,e)=>(w("replaceGTE0",t,e),t.trim().replace(N[e.includePrerelease?T.GTE0PRE:T.GTE0],"")),mc=t=>(e,r,s,n,i,o,a,c,u,l,h,E)=>(S(s)?r="":S(n)?r=`>=${s}.0.0${t?"-0":""}`:S(i)?r=`>=${s}.${n}.0${t?"-0":""}`:o?r=`>=${r}`:r=`>=${r}${t?"-0":""}`,S(u)?c="":S(l)?c=`<${+u+1}.0.0-0`:S(h)?c=`<${u}.${+l+1}.0-0`:E?c=`<=${u}.${l}.${h}-${E}`:t?c=`<${u}.${l}.${+h+1}-0`:c=`<=${c}`,`${r} ${c}`.trim()),Ec=(t,e,r)=>{for(let s=0;s<t.length;s++)if(!t[s].test(e))return!1;if(e.prerelease.length&&!r.includePrerelease){for(let s=0;s<t.length;s++)if(w(t[s].semver),t[s].semver!==Ge.ANY&&t[s].semver.prerelease.length>0){let n=t[s].semver;if(n.major===e.major&&n.minor===e.minor&&n.patch===e.patch)return!0}return!1}return!0}});var J=m((bu,$s)=>{"use strict";var B=Symbol("SemVer ANY"),Ve=class t{static get ANY(){return B}constructor(e,r){if(r=ds(r),e instanceof t){if(e.loose===!!r.loose)return e;e=e.value}e=e.trim().split(/\s+/).join(" "),He("comparator",e,r),this.options=r,this.loose=!!r.loose,this.parse(e),this.semver===B?this.value="":this.value=this.operator+this.semver.version,He("comp",this)}parse(e){let r=this.options.loose?ps[ms.COMPARATORLOOSE]:ps[ms.COMPARATOR],s=e.match(r);if(!s)throw new TypeError(`Invalid comparator: ${e}`);this.operator=s[1]!==void 0?s[1]:"",this.operator==="="&&(this.operator=""),s[2]?this.semver=new Es(s[2],this.options.loose):this.semver=B}toString(){return this.value}test(e){if(He("Comparator.test",e,this.options.loose),this.semver===B||e===B)return!0;if(typeof e=="string")try{e=new Es(e,this.options)}catch{return!1}return Me(e,this.operator,this.semver,this.options)}intersects(e,r){if(!(e instanceof t))throw new TypeError("a Comparator is required");return this.operator===""?this.value===""?!0:new gs(e.value,r).test(this.value):e.operator===""?e.value===""?!0:new gs(this.value,r).test(e.semver):(r=ds(r),r.includePrerelease&&(this.value==="<0.0.0-0"||e.value==="<0.0.0-0")||!r.includePrerelease&&(this.value.startsWith("<0.0.0")||e.value.startsWith("<0.0.0"))?!1:!!(this.operator.startsWith(">")&&e.operator.startsWith(">")||this.operator.startsWith("<")&&e.operator.startsWith("<")||this.semver.version===e.semver.version&&this.operator.includes("=")&&e.operator.includes("=")||Me(this.semver,"<",e.semver,r)&&this.operator.startsWith(">")&&e.operator.startsWith("<")||Me(this.semver,">",e.semver,r)&&this.operator.startsWith("<")&&e.operator.startsWith(">")))}};$s.exports=Ve;var ds=Z(),{safeRe:ps,t:ms}=G(),Me=Ue(),He=V(),Es=y(),gs=L()});var Y=m((ju,ws)=>{"use strict";var gc=L(),$c=(t,e,r)=>{try{e=new gc(e,r)}catch{return!1}return e.test(t)};ws.exports=$c});var Is=m((Gu,Rs)=>{"use strict";var wc=L(),Rc=(t,e)=>new wc(t,e).set.map(r=>r.map(s=>s.value).join(" ").trim().split(" "));Rs.exports=Rc});var ys=m((Mu,Ss)=>{"use strict";var Ic=y(),Sc=L(),yc=(t,e,r)=>{let s=null,n=null,i=null;try{i=new Sc(e,r)}catch{return null}return t.forEach(o=>{i.test(o)&&(!s||n.compare(o)===-1)&&(s=o,n=new Ic(s,r))}),s};Ss.exports=yc});var Ns=m((Hu,Ts)=>{"use strict";var Tc=y(),Nc=L(),Ac=(t,e,r)=>{let s=null,n=null,i=null;try{i=new Nc(e,r)}catch{return null}return t.forEach(o=>{i.test(o)&&(!s||n.compare(o)===1)&&(s=o,n=new Tc(s,r))}),s};Ts.exports=Ac});var Os=m((Vu,Ls)=>{"use strict";var Xe=y(),Lc=L(),As=X(),Oc=(t,e)=>{t=new Lc(t,e);let r=new Xe("0.0.0");if(t.test(r)||(r=new Xe("0.0.0-0"),t.test(r)))return r;r=null;for(let s=0;s<t.set.length;++s){let n=t.set[s],i=null;n.forEach(o=>{let a=new Xe(o.semver.version);switch(o.operator){case">":a.prerelease.length===0?a.patch++:a.prerelease.push(0),a.raw=a.format();case"":case">=":(!i||As(a,i))&&(i=a);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${o.operator}`)}}),i&&(!r||As(r,i))&&(r=i)}return r&&t.test(r)?r:null};Ls.exports=Oc});var vs=m((Xu,Cs)=>{"use strict";var Cc=L(),vc=(t,e)=>{try{return new Cc(t,e).range||"*"}catch{return null}};Cs.exports=vc});var le=m((Ju,Fs)=>{"use strict";var qc=y(),Ps=J(),{ANY:xc}=Ps,Pc=L(),Fc=Y(),qs=X(),xs=ie(),kc=ce(),Dc=oe(),_c=(t,e,r,s)=>{t=new qc(t,s),e=new Pc(e,s);let n,i,o,a,c;switch(r){case">":n=qs,i=kc,o=xs,a=">",c=">=";break;case"<":n=xs,i=Dc,o=qs,a="<",c="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(Fc(t,e,s))return!1;for(let u=0;u<e.set.length;++u){let l=e.set[u],h=null,E=null;if(l.forEach(f=>{f.semver===xc&&(f=new Ps(">=0.0.0")),h=h||f,E=E||f,n(f.semver,h.semver,s)?h=f:o(f.semver,E.semver,s)&&(E=f)}),h.operator===a||h.operator===c||(!E.operator||E.operator===a)&&i(t,E.semver))return!1;if(E.operator===c&&o(t,E.semver))return!1}return!0};Fs.exports=_c});var Ds=m((Bu,ks)=>{"use strict";var Uc=le(),bc=(t,e,r)=>Uc(t,e,">",r);ks.exports=bc});var Us=m((Yu,_s)=>{"use strict";var jc=le(),Gc=(t,e,r)=>jc(t,e,"<",r);_s.exports=Gc});var Gs=m((Wu,js)=>{"use strict";var bs=L(),Mc=(t,e,r)=>(t=new bs(t,r),e=new bs(e,r),t.intersects(e,r));js.exports=Mc});var Hs=m((zu,Ms)=>{"use strict";var Hc=Y(),Vc=A();Ms.exports=(t,e,r)=>{let s=[],n=null,i=null,o=t.sort((l,h)=>Vc(l,h,r));for(let l of o)Hc(l,e,r)?(i=l,n||(n=l)):(i&&s.push([n,i]),i=null,n=null);n&&s.push([n,null]);let a=[];for(let[l,h]of s)l===h?a.push(l):!h&&l===o[0]?a.push("*"):h?l===o[0]?a.push(`<=${h}`):a.push(`${l} - ${h}`):a.push(`>=${l}`);let c=a.join(" || "),u=typeof e.raw=="string"?e.raw:String(e);return c.length<u.length?c:e}});var Ws=m((Ku,Ys)=>{"use strict";var Vs=L(),Ye=J(),{ANY:Je}=Ye,Be=Y(),We=A(),Xc=(t,e,r={})=>{if(t===e)return!0;t=new Vs(t,r),e=new Vs(e,r);let s=!1;e:for(let n of t.set){for(let i of e.set){let o=Bc(n,i,r);if(s=s||o!==null,o)continue e}if(s)return!1}return!0},Jc=[new Ye(">=0.0.0-0")],Xs=[new Ye(">=0.0.0")],Bc=(t,e,r)=>{if(t===e)return!0;if(t.length===1&&t[0].semver===Je){if(e.length===1&&e[0].semver===Je)return!0;r.includePrerelease?t=Jc:t=Xs}if(e.length===1&&e[0].semver===Je){if(r.includePrerelease)return!0;e=Xs}let s=new Set,n,i;for(let f of t)f.operator===">"||f.operator===">="?n=Js(n,f,r):f.operator==="<"||f.operator==="<="?i=Bs(i,f,r):s.add(f.semver);if(s.size>1)return null;let o;if(n&&i){if(o=We(n.semver,i.semver,r),o>0)return null;if(o===0&&(n.operator!==">="||i.operator!=="<="))return null}for(let f of s){if(n&&!Be(f,String(n),r)||i&&!Be(f,String(i),r))return null;for(let I of e)if(!Be(f,String(I),r))return!1;return!0}let a,c,u,l,h=i&&!r.includePrerelease&&i.semver.prerelease.length?i.semver:!1,E=n&&!r.includePrerelease&&n.semver.prerelease.length?n.semver:!1;h&&h.prerelease.length===1&&i.operator==="<"&&h.prerelease[0]===0&&(h=!1);for(let f of e){if(l=l||f.operator===">"||f.operator===">=",u=u||f.operator==="<"||f.operator==="<=",n){if(E&&f.semver.prerelease&&f.semver.prerelease.length&&f.semver.major===E.major&&f.semver.minor===E.minor&&f.semver.patch===E.patch&&(E=!1),f.operator===">"||f.operator===">="){if(a=Js(n,f,r),a===f&&a!==n)return!1}else if(n.operator===">="&&!f.test(n.semver))return!1}if(i){if(h&&f.semver.prerelease&&f.semver.prerelease.length&&f.semver.major===h.major&&f.semver.minor===h.minor&&f.semver.patch===h.patch&&(h=!1),f.operator==="<"||f.operator==="<="){if(c=Bs(i,f,r),c===f&&c!==i)return!1}else if(i.operator==="<="&&!f.test(i.semver))return!1}if(!f.operator&&(i||n)&&o!==0)return!1}return!(n&&u&&!i&&o!==0||i&&l&&!n&&o!==0||E||h)},Js=(t,e,r)=>{if(!t)return e;let s=We(t.semver,e.semver,r);return s>0?t:s<0||e.operator===">"&&t.operator===">="?e:t},Bs=(t,e,r)=>{if(!t)return e;let s=We(t.semver,e.semver,r);return s<0?t:s>0||e.operator==="<"&&t.operator==="<="?e:t};Ys.exports=Xc});var Zs=m((Qu,Qs)=>{"use strict";var ze=G(),zs=j(),Yc=y(),Ks=Pe(),Wc=q(),zc=Ir(),Kc=yr(),Qc=Ar(),Zc=Cr(),ea=qr(),ta=Pr(),ra=kr(),sa=_r(),na=A(),ia=Gr(),oa=Hr(),ca=ne(),aa=Br(),ua=Wr(),la=X(),fa=ie(),ha=De(),da=_e(),pa=oe(),ma=ce(),Ea=Ue(),ga=ns(),$a=os(),wa=J(),Ra=L(),Ia=Y(),Sa=Is(),ya=ys(),Ta=Ns(),Na=Os(),Aa=vs(),La=le(),Oa=Ds(),Ca=Us(),va=Gs(),qa=Hs(),xa=Ws();Qs.exports={parse:Wc,valid:zc,clean:Kc,inc:Qc,diff:Zc,major:ea,minor:ta,patch:ra,prerelease:sa,compare:na,rcompare:ia,compareLoose:oa,compareBuild:ca,sort:aa,rsort:ua,gt:la,lt:fa,eq:ha,neq:da,gte:pa,lte:ma,cmp:Ea,coerce:ga,truncate:$a,Comparator:wa,Range:Ra,satisfies:Ia,toComparators:Sa,maxSatisfying:ya,minSatisfying:Ta,minVersion:Na,validRange:Aa,outside:La,gtr:Oa,ltr:Ca,intersects:va,simplifyRange:qa,subset:xa,SemVer:Yc,re:ze.re,src:ze.src,tokens:ze.t,SEMVER_SPEC_VERSION:zs.SEMVER_SPEC_VERSION,RELEASE_TYPES:zs.RELEASE_TYPES,compareIdentifiers:Ks.compareIdentifiers,rcompareIdentifiers:Ks.rcompareIdentifiers}});var ln=m((Zu,un)=>{var x=require("fs"),O=require("path"),tn=ar(),k=Zs(),Ke=["dependencies","devDependencies","optionalDependencies","peerDependencies"];function rn(t){let e=new Map;for(let r of t){let s=typeof r=="string"&&r.match(/^((?:@[a-z0-9][a-z0-9._-]*\/)?[a-z0-9][a-z0-9._-]*)(?:@([^\r\n]+))?$/);if(!s)throw new Error(`Invalid npm dependency: ${String(r)}`);let[,n,i]=s,o=e.get(n);e.set(n,o&&i?Pa(n,o,i):i||o)}return e}function Pa(t,e,r){if(e===r)return e;let s=k.validRange(e),n=k.validRange(r);if(s&&n)try{if(k.subset(n,s))return r;if(k.subset(s,n))return e}catch{}throw new Error(`Conflicting registry versions for ${t}: ${e} and ${r}`)}function sn(t,e){let r=typeof t=="string"&&k.validRange(t),s=k.validRange(e);if(!r||!s)return!1;try{return k.subset(r,s)}catch{return!1}}function nn(t,e){let r=rn(e);if(r.size===0)return;let s=O.join(t,"package.json"),n=JSON.parse(x.readFileSync(s,"utf8"));for(let[i,o]of r){let a=Ke.find(u=>Object.hasOwn(n[u]||{},i))||"dependencies";n[a]||={};let c=n[a][i];n[a][i]=o?sn(c,o)?c:o:c||"latest"}x.writeFileSync(s,`${JSON.stringify(n,null,2)}
|
|
4
4
|
`)}function fe(t){let e=[["pnpm-lock.yaml","pnpm"],["yarn.lock","yarn"],["bun.lock","bun"],["bun.lockb","bun"],["package-lock.json","npm"],["npm-shrinkwrap.json","npm"]];for(let r=O.resolve(t);;r=O.dirname(r)){let s=O.join(r,"package.json");if(x.existsSync(s)){let n=JSON.parse(x.readFileSync(s,"utf8")),i=String(n.packageManager||"").split("@")[0];if(["npm","pnpm","yarn","bun"].includes(i))return i}for(let[n,i]of e)if(x.existsSync(O.join(r,n)))return i;if(O.dirname(r)===r)return"npm"}}var en={npm:"npx",pnpm:"pnpm exec",yarn:"yarn",bun:"bunx"};function Fa(t,e=process.cwd()){let r;try{r=fe(e)}catch{r="npm"}return`${en[r]||en.npm} frontfriend ${t}`}function Qe(t,e){let r=rn(e);if(r.size===0)return[];let s=JSON.parse(x.readFileSync(O.join(t,"package.json"),"utf8")),n=[];for(let[i,o]of r){let a=Ke.find(c=>Object.hasOwn(s[c]||{},i));a&&(!o||sn(s[a][i],o))||n.push(o?`${i}@${o}`:i)}return n}function on(t,e){return[t==="npm"?"install":"add",...e]}function ka(t){return/^[\w@/.:^~=+-]+$/.test(t)?t:`'${t.replace(/'/g,"'\\''")}'`}function cn(t,e){let r=fe(t);return[r,...on(r,e)].map(ka).join(" ")}function an(t,e,{stdio:r="inherit"}={}){let s=Qe(t,e);if(s.length===0)return;let n=fe(t),i=tn.sync(n,on(n,s),{cwd:t,stdio:r});if(i.error||i.status!==0)throw nn(t,e),i.error||new Error(`${n} dependency installation failed with status ${i.status}. Dependencies were saved; run ${n} install.`)}function Da(t,e,{install:r=!0,stdio:s="inherit",log:n=console.log}={}){let i=Qe(t,e);if(i.length===0)return{missing:i,command:null,installed:!1};let o=cn(t,i);if(!r)return n(`\u{1F4E6} Component dependencies missing from package.json. Install them with:
|
|
5
5
|
${o}`),{missing:i,command:o,installed:!1};n(`\u{1F4E6} Installing component dependencies: ${o}`);try{return an(t,i,{stdio:s}),{missing:i,command:o,installed:!0}}catch(a){return n(`\u26A0\uFE0F Component dependencies were not installed: ${a.message}
|