@5minds/processcube_app_sdk 5.1.0-alpha.3 → 5.1.0-alpha.4

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.
@@ -2,5 +2,12 @@ type DynamicLinkProps = {
2
2
  href: string;
3
3
  children: any;
4
4
  };
5
+ /**
6
+ * @deprecated This component should no longer be used.
7
+ * It will be removed in a future version of this package.
8
+ * Please use the NextJS Link component instead.
9
+ *
10
+ * Former workaround for https://github.com/vercel/next.js/issues/42991#issuecomment-1592921378
11
+ */
5
12
  export declare function DynamicLink({ href, children }: DynamicLinkProps): import("react/jsx-runtime").JSX.Element;
6
13
  export {};
@@ -1 +1 @@
1
- "use client";var m=Object.create;var i=Object.defineProperty;var f=Object.getOwnPropertyDescriptor;var u=Object.getOwnPropertyNames;var s=Object.getPrototypeOf,l=Object.prototype.hasOwnProperty;var y=(r,e)=>{for(var n in e)i(r,n,{get:e[n],enumerable:!0})},p=(r,e,n,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let t of u(e))!l.call(r,t)&&t!==n&&i(r,t,{get:()=>e[t],enumerable:!(o=f(e,t))||o.enumerable});return r};var D=(r,e,n)=>(n=r!=null?m(s(r)):{},p(e||!r||!r.__esModule?i(n,"default",{value:r,enumerable:!0}):n,r)),k=r=>p(i({},"__esModule",{value:!0}),r);var v={};y(v,{DynamicLink:()=>h});module.exports=k(v);var x=require("client-only");var a=require("next/navigation"),c=D(require("react"),1);function h({href:r,children:e}){let n=(0,a.useRouter)();return c.default.createElement("a",{href:r,onClick:o=>{o.preventDefault(),n.replace(r),n.refresh()}},e)}0&&(module.exports={DynamicLink});
1
+ "use client";var m=Object.create;var i=Object.defineProperty;var s=Object.getOwnPropertyDescriptor;var u=Object.getOwnPropertyNames;var f=Object.getPrototypeOf,l=Object.prototype.hasOwnProperty;var k=(e,n)=>{for(var r in n)i(e,r,{get:n[r],enumerable:!0})},a=(e,n,r,o)=>{if(n&&typeof n=="object"||typeof n=="function")for(let t of u(n))!l.call(e,t)&&t!==r&&i(e,t,{get:()=>n[t],enumerable:!(o=s(n,t))||o.enumerable});return e};var y=(e,n,r)=>(r=e!=null?m(f(e)):{},a(n||!e||!e.__esModule?i(r,"default",{value:e,enumerable:!0}):r,e)),D=e=>a(i({},"__esModule",{value:!0}),e);var h={};k(h,{DynamicLink:()=>d});module.exports=D(h);var x=require("client-only");var c=require("next/navigation"),p=y(require("react"),1);function d({href:e,children:n}){console.warn("The DynamicLink component is deprecated. Please use the NextJS Link component instead.");let r=(0,c.useRouter)();return p.default.createElement("a",{href:e,onClick:o=>{o.preventDefault(),r.replace(e),r.refresh()}},n)}0&&(module.exports={DynamicLink});
@@ -1 +1 @@
1
- "use client";import"client-only";import{useRouter as o}from"next/navigation";import i from"react";function c({href:r,children:n}){let e=o();return i.createElement("a",{href:r,onClick:t=>{t.preventDefault(),e.replace(r),e.refresh()}},n)}export{c as DynamicLink};
1
+ "use client";import"client-only";import{useRouter as o}from"next/navigation";import i from"react";function p({href:e,children:r}){console.warn("The DynamicLink component is deprecated. Please use the NextJS Link component instead.");let n=o();return i.createElement("a",{href:e,onClick:t=>{t.preventDefault(),n.replace(e),n.refresh()}},r)}export{p as DynamicLink};
@@ -1 +1 @@
1
- var C=Object.create;var a=Object.defineProperty;var _=Object.getOwnPropertyDescriptor;var S=Object.getOwnPropertyNames;var w=Object.getPrototypeOf,D=Object.prototype.hasOwnProperty;var x=(s,e)=>{for(var r in e)a(s,r,{get:e[r],enumerable:!0})},T=(s,e,r,t)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of S(e))!D.call(s,o)&&o!==r&&a(s,o,{get:()=>e[o],enumerable:!(t=_(e,o))||t.enumerable});return s};var y=(s,e,r)=>(r=s!=null?C(w(s)):{},T(e||!s||!s.__esModule?a(r,"default",{value:s,enumerable:!0}):r,s)),I=s=>T(a({},"__esModule",{value:!0}),s);var b={};x(b,{RemoteUserTask:()=>R,authConfigJwtCallback:()=>g,authConfigSessionCallback:()=>U,hasClaim:()=>F,mapUserTask:()=>h,mapUserTaskList:()=>A});module.exports=I(b);var f=y(require("react"),1);function R(s){return f.default.createElement("div",{style:{width:"100%",height:"100%"}},f.default.createElement("iframe",{width:"100%",height:"100%",src:s.url}))}var u=require("jwt-decode"),d=require("next-auth"),m=require("next-auth/react"),p=require("@5minds/processcube_engine_sdk"),c=new p.Logger("processcube_app_sdk:next-auth_configuration"),k="No refresh token present. Your authority might be configured incorrectly. For more information see https://processcube.io/docs/app-sdk/samples/authority/authentication-with-nextauth";async function F(s){let e;return typeof window>"u"?e=(await(0,d.getServerSession)({callbacks:{jwt:g,session:U}}))?.user:e=(await(0,m.getSession)())?.user,!e||!e.claims?!1:e.claims[s]!=null}async function g(s){let{token:e,account:r,user:t}=s;r&&(e.accessToken=r.access_token,e.idToken=r.id_token,e.refreshToken=r.refresh_token,e.expiresAt=r.expires_at??Math.floor(Date.now()/1e3+r.expires_in)),t&&(e.user=t);let o=process.env.PROCESSCUBE_AUTHORITY_URL!=null&&process.env.NEXTAUTH_CLIENT_ID!=null&&process.env.NEXTAUTH_SECRET!=null;if(o||c.warn("In order for the Access Token to be automatically renewed, PROCESSCUBE_AUTHORITY_URL, NEXTAUTH_CLIENT_ID and NEXTAUTH_SECRET must be set as an environment variable"),e.refreshToken===void 0&&c.warn(k),o&&Date.now()>=e.expiresAt*1e3){if(e.refreshToken===void 0)return c.error("Error refreshing access token.",{err:k}),e.error="RefreshAccessTokenError",e;try{let i=await fetch(`${process.env.PROCESSCUBE_AUTHORITY_URL}/token`,{headers:{"Content-Type":"application/x-www-form-urlencoded"},body:new URLSearchParams({client_id:process.env.NEXTAUTH_CLIENT_ID,client_secret:process.env.NEXTAUTH_SECRET,grant_type:"refresh_token",refresh_token:e.refreshToken}),method:"POST"}),n=await i.json();if(!i.ok)throw n;e.accessToken=n.access_token,e.idToken=n.id_token,e.expiresAt=Math.floor(Date.now()/1e3+n.expires_in),e.refreshToken=n.refresh_token??e.refreshToken}catch(i){c.error("Error refreshing access token",{err:i}),e.error="RefreshAccessTokenError"}}return e}async function U(s){let{session:e,token:r}=s,t=l(r.accessToken),o=l(r.idToken),i=Object.keys(o),n=Object.fromEntries(Object.entries(t).filter(([E,v])=>!i.includes(E)));return delete n.scope,delete n.jti,delete n.client_id,e.user=r.user??{},e.user.claims=n,e.error=r.error,e}function l(s){return(0,u.jwtDecode)(s)}function h(s){let{userTaskConfig:e,userTaskConfigModel:r,...t}=s,o={},i={};return e.formFields.forEach(n=>o[n.id]=n),r.formFields.forEach(n=>i[n.id]=n),{...t,userTaskConfig:{...e,formFieldsDict:o},userTaskConfigModel:{...r,formFieldsDict:i}}}function A(s){return{totalCount:s.totalCount,userTasks:s.userTasks.map(h)}}0&&(module.exports={RemoteUserTask,authConfigJwtCallback,authConfigSessionCallback,hasClaim,mapUserTask,mapUserTaskList});
1
+ var C=Object.create;var a=Object.defineProperty;var _=Object.getOwnPropertyDescriptor;var S=Object.getOwnPropertyNames;var w=Object.getPrototypeOf,x=Object.prototype.hasOwnProperty;var D=(s,e)=>{for(var r in e)a(s,r,{get:e[r],enumerable:!0})},T=(s,e,r,t)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of S(e))!x.call(s,o)&&o!==r&&a(s,o,{get:()=>e[o],enumerable:!(t=_(e,o))||t.enumerable});return s};var y=(s,e,r)=>(r=s!=null?C(w(s)):{},T(e||!s||!s.__esModule?a(r,"default",{value:s,enumerable:!0}):r,s)),I=s=>T(a({},"__esModule",{value:!0}),s);var b={};D(b,{RemoteUserTask:()=>R,authConfigJwtCallback:()=>g,authConfigSessionCallback:()=>U,hasClaim:()=>F,mapUserTask:()=>h,mapUserTaskList:()=>A});module.exports=I(b);var f=y(require("react"),1);function R(s){return f.default.createElement("div",{style:{width:"100%",height:"100%"}},f.default.createElement("iframe",{width:"100%",height:"100%",src:s.url}))}var u=require("jwt-decode"),d=require("next-auth"),m=require("next-auth/react"),p=require("@5minds/processcube_engine_sdk"),c=new p.Logger("processcube_app_sdk:next-auth_configuration"),k="No refresh token present. Your authority might be configured incorrectly. For more information see https://processcube.io/docs/app-sdk/samples/authority/authentication-with-nextauth";async function F(s){let e;return typeof window>"u"?e=(await(0,d.getServerSession)({callbacks:{jwt:g,session:U}}))?.user:e=(await(0,m.getSession)())?.user,!e||!e.claims?!1:e.claims[s]!=null}async function g(s){let{token:e,account:r,user:t}=s;r&&(e.accessToken=r.access_token,e.idToken=r.id_token,e.refreshToken=r.refresh_token,e.expiresAt=r.expires_at??Math.floor(Date.now()/1e3+r.expires_in)),t&&(e.user=t);let o=process.env.PROCESSCUBE_AUTHORITY_URL!=null&&process.env.NEXTAUTH_CLIENT_ID!=null&&process.env.NEXTAUTH_SECRET!=null;if(o||c.warn("In order for the Access Token to be automatically renewed, PROCESSCUBE_AUTHORITY_URL, NEXTAUTH_CLIENT_ID and NEXTAUTH_SECRET must be set as an environment variable"),e.refreshToken===void 0&&c.warn(k),o&&Date.now()>=e.expiresAt*1e3){if(e.refreshToken===void 0)return c.error("Error refreshing access token.",{err:k}),e.error="RefreshAccessTokenError",e;try{let i=await fetch(`${process.env.PROCESSCUBE_AUTHORITY_URL}/token`,{headers:{"Content-Type":"application/x-www-form-urlencoded"},body:new URLSearchParams({client_id:process.env.NEXTAUTH_CLIENT_ID,client_secret:process.env.NEXTAUTH_SECRET,grant_type:"refresh_token",refresh_token:e.refreshToken}),method:"POST"}),n=await i.json();if(!i.ok)throw n;e.accessToken=n.access_token,e.idToken=n.id_token,e.expiresAt=Math.floor(Date.now()/1e3+n.expires_in),e.refreshToken=n.refresh_token??e.refreshToken}catch(i){c.error("Error refreshing access token",{err:i}),e.error="RefreshAccessTokenError"}}return e}async function U(s){let{session:e,token:r}=s,t=l(r.accessToken),o=l(r.idToken),i=Object.keys(o),n=Object.fromEntries(Object.entries(t).filter(([E,v])=>!i.includes(E)));return delete n.scope,delete n.jti,delete n.client_id,e.user=r.user??{},e.user.claims=n,e.error=r.error,e}function l(s){return(0,u.jwtDecode)(s)}function h(s){let{userTaskConfig:e,userTaskConfigModel:r,...t}=s,o={},i={};return e.formFields.forEach(n=>o[n.id]=n),r.formFields.forEach(n=>i[n.id]=n),{...t,userTaskConfig:{...e,formFieldsDict:o},userTaskConfigModel:{...r,formFieldsDict:i}}}function A(s){return{totalCount:s.totalCount,userTasks:s.userTasks.map(h)}}0&&(module.exports={RemoteUserTask,authConfigJwtCallback,authConfigSessionCallback,hasClaim,mapUserTask,mapUserTaskList});
@@ -0,0 +1,16 @@
1
+ import { Identity } from '@5minds/processcube_engine_sdk';
2
+ export type StartPayload = {
3
+ identity: Identity;
4
+ moduleString: string;
5
+ topic: string;
6
+ workerPath: string;
7
+ };
8
+ export type IPCMessageType = {
9
+ action: 'create' | 'restart';
10
+ payload: StartPayload;
11
+ } | {
12
+ action: 'updateIdentity';
13
+ payload: {
14
+ identity: Identity;
15
+ };
16
+ };
@@ -1 +1,2 @@
1
1
  export * from './UserTaskInstance';
2
+ export * from './IPCMessageType';
@@ -1 +1 @@
1
- var R=Object.defineProperty;var Q=Object.getOwnPropertyDescriptor;var ee=Object.getOwnPropertyNames;var te=Object.prototype.hasOwnProperty;var se=(e,t)=>{for(var s in t)R(e,s,{get:t[s],enumerable:!0})},re=(e,t,s,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of ee(t))!te.call(e,n)&&n!==s&&R(e,n,{get:()=>t[n],enumerable:!(r=Q(t,n))||r.enumerable});return e};var ne=e=>re(R({},"__esModule",{value:!0}),e);var Ue={};se(Ue,{finishUserTask:()=>Pe,finishUserTaskAndGetNext:()=>Ee,getActiveProcessInstances:()=>me,getAssignedUserTasksByIdentity:()=>_e,getEngineClient:()=>fe,getIdentity:()=>Ie,getReservedUserTasksByIdentity:()=>Ce,getUserTasks:()=>G,getWaitingUserTaskByFlowNodeInstanceId:()=>Y,getWaitingUserTasks:()=>ge,getWaitingUserTasksByCorrelationId:()=>xe,getWaitingUserTasksByFlowNodeId:()=>we,getWaitingUserTasksByProcessInstanceId:()=>ye,navigateToUrl:()=>Ne,startProcess:()=>Re,waitForUserTask:()=>Te,withApplicationSdk:()=>Se});module.exports=ne(Ue);var pt=require("only-server"),ft=require("../common/index.cjs");var E=require("node:fs"),a=require("node:path"),O=require("chokidar"),v=require("esbuild"),b=require("jwt-decode"),x=require("openid-client"),W=require("@5minds/processcube_engine_client"),B=require("@5minds/processcube_engine_sdk");var L=require("@5minds/processcube_engine_client"),P=process.env.PROCESSCUBE_ENGINE_URL??"http://localhost:10560",i=new L.EngineClient(P);var oe={token:"ZHVtbXlfdG9rZW4=",userId:"dummy_token"},ie=.85,y=["external_task.ts","external_task.js"],c=new B.Logger("processcube_app_sdk:external_task_adapter"),h=process.env.PROCESSCUBE_AUTHORITY_URL!==void 0,f={};async function D(e){if(x.custom.setHttpOptionsDefaults({timeout:1e5}),e&&!(0,E.existsSync)(e))throw new Error(`Invalid customExternalTasksDirPath. The given path '${e}' does not exist`);let t=pe(e);(0,O.watch)(t).on("add",async s=>{if(!y.includes((0,a.basename)(s)))return;await q(s,t);let r=(0,a.dirname)(s),n=(0,a.relative)(t,r),o=w(n);c.info(`Started external task ${f[s].workerId} for topic ${o}`)}).on("change",async s=>{if(!y.includes((0,a.basename)(s)))return;await ae(s,t);let r=(0,a.dirname)(s),n=(0,a.relative)(t,r),o=w(n);c.info(`Restarted external task ${f[s].workerId} for topic ${o}`)}).on("unlink",async s=>{if(!y.includes((0,a.basename)(s)))return;K(s);let r=(0,a.dirname)(s),n=(0,a.relative)(t,r),o=w(n);c.info(`Stopped external task ${f[s].workerId} for topic '${o}'`,{reason:`External Task for topic '${o}' was removed`,workerId:f[s].workerId,topic:o}),delete f[s]}).on("error",s=>c.info(`Watcher error: ${s}`))}async function q(e,t,s){let r=(0,a.dirname)(e);if(!ce(r)){c.error(`Could not find external task file in directory '${r}'`);return}let o=await le(e),u=await de(o,e);if(u.default===void 0){c.info(`External task file recognized at ${e}. Please export a default handler function. For more information see https://processcube.io/docs/app-sdk/samples/nextjs/external-task-adapter-with-nextjs#external-tasks-entwickeln`);return}let m=await M(),g=$(m),p=(0,a.relative)(t,r),_=w(p),S=u.default,N={identity:g,...s,...u?.config},I=new W.ExternalTaskWorker(P,_,S,N);I.onWorkerError((T,F,J)=>{c.error(`Intercepted "${T}"-type error: ${F.message}`,{err:F,type:T,externalTask:J})}),I.start(),await U(m,I),f[e]=I}async function ae(e,t){let s=f[e]?.workerId;K(e),await q(e,t,{workerId:s})}function K(e){let t=f[e];t&&(t.stop(),t.dispose())}async function ce(e){let s=(await E.promises.readdir(e)).filter(r=>y.includes(r));if(s.length===0)return null;if(s.length>1)throw new Error(`Found more than one external task file in directory '${e}'`);return s[0]}async function M(){if(!h)return null;if(!process.env.PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_ID||!process.env.PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_SECRET){let r=new Error("Required environment variables PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_ID and PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_SECRET are missing. For help, please refer to our documentation on environment variables at: https://processcube.io/docs/app-sdk/samples/nextjs/external-task-adapter-with-nextjs#authority");throw c.error("Required environment variables PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_ID and PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_SECRET are missing",{err:r}),r}let e=await x.Issuer.discover(process.env.PROCESSCUBE_AUTHORITY_URL);return await new e.Client({client_id:process.env.PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_ID,client_secret:process.env.PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_SECRET}).grant({grant_type:"client_credentials",scope:"engine_etw"})}function $(e){if(!h||e===null)return oe;let t=e.access_token,s=(0,b.jwtDecode)(t);return{token:e.access_token,userId:s.sub}}async function U(e,t,s=5){try{if(!h||e===null||!t.pollingIsActive)return;let n=await ue(e)*ie*1e3;setTimeout(async()=>{if(!t.pollingIsActive)return;let o=await M(),u=$(o);t.identity=u,await U(o,t)},n)}catch(r){if(s===0)throw r;c.error(`Could not refresh identity for external task worker ${t.workerId}`,{err:r,workerId:t.workerId,retryCount:s});let n=2*1e3;setTimeout(async()=>await U(e,t,s-1),n)}}async function le(e){let t=await(0,v.build)({entryPoints:[e],write:!1,bundle:!0,platform:"node",target:"node18",format:"cjs",external:["@opentelemetry/api"]});if(t.errors.length>0)throw c.error(`Could not transpile file at '${e}'`,{errors:t.errors}),new Error(`Could not transpile file at '${e}'`);return t.warnings.length>0&&c.warn(`Transpiled file at '${e}' with warnings`,{warnings:t.warnings}),t.outputFiles[0].text}async function de(e,t){try{var s=module.constructor,r=new s;return r._compile(e,t),r.exports}catch(n){throw c.error("Could not require module from string",{err:n}),n}}async function ue(e){let t=e.expires_in;if(!t&&e.expires_at&&(t=Math.floor(e.expires_at-Date.now()/1e3)),t===void 0)throw new Error("Could not determine the time until the access token for external task workers expires");return t}function w(e){return e.replace(/^\.\/+|\([^)]+\)|^\/*|\/*$/g,"").replace(/[\/]{2,}/g,"/")}function pe(e){let t,s=[e,(0,a.join)(process.cwd(),"app"),(0,a.join)(process.cwd(),"src","app")];for(let r of s)if(r&&(0,E.existsSync)(r)){t=r;break}if(!t)throw new Error("Could not find external tasks directory");return t}function fe(){return i}var A=require("next-auth/jwt"),j=require("next/dist/compiled/@edge-runtime/cookies"),k=require("next/headers"),ke=process.env.NEXTAUTH_URL?.startsWith("https://"),X=`${ke?"__Secure-":""}next-auth.session-token`;async function Ie(){let e=await(0,A.getToken)({req:{cookies:(0,k.cookies)(),headers:(0,k.headers)()}});if(e?.expiresAt&&Date.now()>=e.expiresAt*1e3){let s=await fetch(`${process.env.NEXTAUTH_URL}/api/auth/session`,{method:"GET",headers:{"Content-Type":"application/json",cookie:(0,k.cookies)().toString()}}),r=new j.ResponseCookies(s.headers),n=r.get(X);if(n){let o=!1;try{(0,k.cookies)().set(X,n.value,{...n})}catch{o=!0}if(e=await(0,A.getToken)({req:{cookies:o?r:(0,k.cookies)(),headers:(0,k.headers)()}}),e?.error)throw e.error}}if(!e?.accessToken||!e?.sub)throw new Error("AccessToken or Sub could not be determined!");return{token:e?.accessToken,userId:e?.sub}}var H=require("@5minds/processcube_engine_client");async function me(e){return await i.processInstances.query({...e?.query,state:H.DataModels.ProcessInstances.ProcessInstanceState.running},e?.options)}var d=require("@5minds/processcube_engine_client"),l=require("../common/index.cjs");async function Te(e={},t){let{correlationId:s,processInstanceId:r,flowNodeId:n}=e;return new Promise(async(o,u)=>{let m=await i.userTasks.onUserTaskWaiting(async p=>{let _=s!==void 0&&p.correlationId!==s,S=p.flowNodeInstanceId===void 0,N=r!==void 0&&p.processInstanceId!==r,I=n!==void 0&&p.flowNodeId!==n;if(_||S||N||I)return;let T=await Y(p.flowNodeInstanceId,{identity:t});return i.notification.removeSubscription(m,t),T===null?u(new Error(`UserTask with instance ID "${p.flowNodeInstanceId}" does not exist.`)):o(T)},{identity:t}),g=await G({correlationId:s,processInstanceId:r,flowNodeId:n,state:d.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended},{identity:t});g.userTasks.length>0&&(i.notification.removeSubscription(m,t),o(g.userTasks[0]))})}async function Ee(e,t={},s={},r){await i.userTasks.finishUserTask(e,s,r);let n={state:d.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended,...t},o=await i.userTasks.query(n,{identity:r});return(0,l.mapUserTask)(o.userTasks[0])}async function G(...e){let t=await i.userTasks.query(...e);return(0,l.mapUserTaskList)(t)}async function ge(e){let t=await i.userTasks.query({state:d.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended},e);return(0,l.mapUserTaskList)(t)}async function ye(e,t){let s=await i.userTasks.query({processInstanceId:e,state:d.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended},t);return(0,l.mapUserTaskList)(s)}async function we(e,t){let s=await i.userTasks.query({flowNodeId:e,state:d.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended},t);return(0,l.mapUserTaskList)(s)}async function Y(e,t){let s=await i.userTasks.query({flowNodeInstanceId:e,state:d.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended},{...t,limit:1});return s.userTasks.length===0?null:(0,l.mapUserTask)(s.userTasks[0])}async function xe(e,t){let s=await i.userTasks.query({correlationId:e,state:d.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended},t);return(0,l.mapUserTaskList)(s)}async function Ce(e,t){let s=await i.userTasks.query({state:d.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended},{identity:e,...t}),r=s.userTasks.filter(n=>n.actualOwnerId===e.userId);return s.userTasks=r,(0,l.mapUserTaskList)(s)}async function _e(e,t){let s=await i.userTasks.query({state:d.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended},{identity:e,...t}),r=s.userTasks.filter(n=>n.assignedUserIds?.includes(e.userId));return s.userTasks=r,(0,l.mapUserTaskList)(s)}var C=require("next/dist/shared/lib/constants");var V=!1;function Se(e={}){let{applicationSdk:t,...s}=e;return async(r,n)=>{let o=r===C.PHASE_DEVELOPMENT_SERVER||r===C.PHASE_PRODUCTION_SERVER;return t?.useExternalTasks&&o&&!V&&(V=!0,await D(t?.customExternalTasksDirPath)),s}}var Z=require("next/cache"),z=require("next/navigation");function Ne(e){(0,Z.revalidatePath)(e),(0,z.redirect)(e)}async function Re(...e){return await i.processModels.startProcessInstance(...e)}async function Pe(...e){await i.userTasks.finishUserTask(...e)}0&&(module.exports={finishUserTask,finishUserTaskAndGetNext,getActiveProcessInstances,getAssignedUserTasksByIdentity,getEngineClient,getIdentity,getReservedUserTasksByIdentity,getUserTasks,getWaitingUserTaskByFlowNodeInstanceId,getWaitingUserTasks,getWaitingUserTasksByCorrelationId,getWaitingUserTasksByFlowNodeId,getWaitingUserTasksByProcessInstanceId,navigateToUrl,startProcess,waitForUserTask,withApplicationSdk});
1
+ var _=Object.defineProperty;var z=Object.getOwnPropertyDescriptor;var ee=Object.getOwnPropertyNames;var se=Object.prototype.hasOwnProperty;var te=(e,s)=>{for(var t in s)_(e,t,{get:s[t],enumerable:!0})},ne=(e,s,t,n)=>{if(s&&typeof s=="object"||typeof s=="function")for(let r of ee(s))!se.call(e,r)&&r!==t&&_(e,r,{get:()=>s[r],enumerable:!(n=z(s,r))||n.enumerable});return e};var re=e=>ne(_({},"__esModule",{value:!0}),e);var Re={};te(Re,{finishUserTask:()=>Ne,finishUserTaskAndGetNext:()=>me,getActiveProcessInstances:()=>Ie,getAssignedUserTasksByIdentity:()=>Se,getEngineClient:()=>ue,getIdentity:()=>fe,getReservedUserTasksByIdentity:()=>Ce,getUserTasks:()=>$,getWaitingUserTaskByFlowNodeInstanceId:()=>j,getWaitingUserTasks:()=>Ee,getWaitingUserTasksByCorrelationId:()=>we,getWaitingUserTasksByFlowNodeId:()=>ye,getWaitingUserTasksByProcessInstanceId:()=>ge,navigateToUrl:()=>xe,startProcess:()=>Pe,waitForProcessEnd:()=>Te,waitForUserTask:()=>ke,withApplicationSdk:()=>_e});module.exports=re(Re);var us=require("only-server"),ps=require("../common/index.cjs");var b=require("node:child_process"),g=require("node:fs"),c=require("node:path"),O=require("chokidar"),A=require("esbuild"),L=require("jwt-decode"),C=require("openid-client"),F=require("@5minds/processcube_engine_sdk");var U=require("@5minds/processcube_engine_client"),x=process.env.PROCESSCUBE_ENGINE_URL??"http://localhost:10560",o=new U.EngineClient(x);var oe={token:"ZHVtbXlfdG9rZW4=",userId:"dummy_token"},ie=.85,w=["external_task.ts","external_task.js"],P=process.env.PROCESSCUBE_AUTHORITY_URL!==void 0,k=new F.Logger("processcube_app_sdk:external_task_adapter"),T={},E;async function v(e){if(e&&!(0,g.existsSync)(e))throw new Error(`Invalid customExternalTasksDirPath. The given path '${e}' does not exist`);C.custom.setHttpOptionsDefaults({timeout:1e5});let s=await M();E=await W(s),await ce(s);let t=le(e);(0,O.watch)(t).on("add",async n=>{if(w.includes((0,c.basename)(n)))return D(n,t)}).on("change",async n=>{if(w.includes((0,c.basename)(n)))return ae(n,t)}).on("unlink",async n=>{w.includes((0,c.basename)(n))&&B(n)}).on("error",n=>k.error(`Watcher error: ${n}`))}async function D(e,s){let t=(0,c.dirname)(e);if((await g.promises.readdir(t)).filter(S=>w.includes(S)).length>1){k.error(`Multiple external task files found in directory ${t}. Stopping all external task workers for this directory.`),T[t]&&B(e);return}let i=await q(e),a=(0,c.relative)(s,t),p=K(a),I=(0,c.join)(__dirname,"lib/ExternalTaskWorkerProcess.cjs"),d=(0,b.fork)(I,{env:{NODE_ENV:process.env.NODE_ENV,PROCESSCUBE_ENGINE_URL:x}});T[t]=d,d.once("disconnect",()=>{delete T[t]}),d.send({action:"create",payload:{topic:p,identity:E,moduleString:i,workerPath:e}})}async function ae(e,s){let t=(0,c.dirname)(e),n=T[t];if(!n)return D(e,s);let r=await q(e),i=(0,c.relative)(s,t),a=K(i);n.send({action:"restart",payload:{topic:a,identity:E,moduleString:r,workerPath:e}})}function B(e){let s=(0,c.dirname)(e),t=T[s];t&&t.kill()}async function M(){if(!P)return null;if(!process.env.PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_ID||!process.env.PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_SECRET){let n=new Error("Required environment variables PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_ID and PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_SECRET are missing. For help, please refer to our documentation on environment variables at: https://processcube.io/docs/app-sdk/samples/nextjs/external-task-adapter-with-nextjs#authority");throw k.error("Required environment variables PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_ID and PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_SECRET are missing",{err:n}),n}let e=await C.Issuer.discover(process.env.PROCESSCUBE_AUTHORITY_URL);return await new e.Client({client_id:process.env.PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_ID,client_secret:process.env.PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_SECRET}).grant({grant_type:"client_credentials",scope:"engine_etw"})}function W(e){if(!P||e===null)return oe;let s=e.access_token,t=(0,L.jwtDecode)(s);return{token:e.access_token,userId:t.sub}}async function ce(e){let s=5;if(!P||e===null)return;let n=await de(e)*ie*1e3,r=async()=>{try{let i=await M();E=W(i);for(let a of Object.values(T))a.send({action:"updateIdentity",payload:{identity:E}});s=5,setTimeout(r,n)}catch(i){if(s===0){k.error("Could not refresh identity for external task worker processes. Stopping all external task workers.",{error:i});for(let p of Object.values(T))p.kill();return}k.error("Could not refresh identity for external task worker processes.",{error:i,retryCount:s}),s--;let a=2*1e3;setTimeout(r,a)}};setTimeout(r,n)}async function q(e){let s=await(0,A.build)({entryPoints:[e],write:!1,bundle:!0,platform:"node",target:"node18",format:"cjs",external:["@opentelemetry/api"]});if(s.errors.length>0)throw k.error(`Could not transpile file at '${e}'`,{errors:s.errors}),new Error(`Could not transpile file at '${e}'`);return s.warnings.length>0&&k.warn(`Transpiled file at '${e}' with warnings`,{warnings:s.warnings}),s.outputFiles[0].text}async function de(e){let s=e.expires_in;if(!s&&e.expires_at&&(s=Math.floor(e.expires_at-Date.now()/1e3)),s===void 0)throw new Error("Could not determine the time until the access token for external task workers expires");return s}function K(e){return e.replace(/^\.\/+|\([^)]+\)|^\/*|\/*$/g,"").replace(/[\/]{2,}/g,"/")}function le(e){let s,t=[e,(0,c.join)(process.cwd(),"app"),(0,c.join)(process.cwd(),"src","app")];for(let n of t)if(n&&(0,g.existsSync)(n)){s=n;break}if(!s)throw new Error("Could not find external tasks directory");return s}function ue(){return o}var N=require("next-auth/jwt"),G=require("next/dist/compiled/@edge-runtime/cookies"),f=require("next/headers"),pe=process.env.NEXTAUTH_URL?.startsWith("https://"),X=`${pe?"__Secure-":""}next-auth.session-token`;async function fe(){let e=await(0,N.getToken)({req:{cookies:(0,f.cookies)(),headers:(0,f.headers)()}});if(e?.expiresAt&&Date.now()>=e.expiresAt*1e3){let t=await fetch(`${process.env.NEXTAUTH_URL}/api/auth/session`,{method:"GET",headers:{"Content-Type":"application/json",cookie:(0,f.cookies)().toString()}}),n=new G.ResponseCookies(t.headers),r=n.get(X);if(r){let i=!1;try{(0,f.cookies)().set(X,r.value,{...r})}catch{i=!0}if(e=await(0,N.getToken)({req:{cookies:i?n:(0,f.cookies)(),headers:(0,f.headers)()}}),e?.error)throw e.error}}if(!e?.accessToken||!e?.sub)throw new Error("AccessToken or Sub could not be determined!");return{token:e?.accessToken,userId:e?.sub}}var y=require("@5minds/processcube_engine_client");async function Ie(e){return await o.processInstances.query({...e?.query,state:y.DataModels.ProcessInstances.ProcessInstanceState.running},e?.options)}async function Te(e){let{processInstanceId:s}=e;return new Promise(async(t,n)=>{let r=[],i=async a=>{if(s!==void 0&&a.processInstanceId!==s)return;let I=await o.processInstances.query({processInstanceId:a.processInstanceId});for(let d of r)o.notification.removeSubscription(d);return I.totalCount===0?n(new Error(`Process with instance ID "${a.processInstanceId}" does not exist.`)):t(I.processInstances[0])};if(r.push(await o.notification.onProcessEnded(i)),r.push(await o.notification.onProcessError(i)),r.push(await o.notification.onProcessTerminated(i)),s){let a=await o.processInstances.query({processInstanceId:s,state:[y.DataModels.ProcessInstances.ProcessInstanceState.finished,y.DataModels.ProcessInstances.ProcessInstanceState.terminated,y.DataModels.ProcessInstances.ProcessInstanceState.error]});if(a.totalCount>0){for(let p of r)o.notification.removeSubscription(p);t(a.processInstances[0])}}})}var u=require("@5minds/processcube_engine_client"),l=require("../common/index.cjs");async function ke(e={},s){let{correlationId:t,processInstanceId:n,flowNodeId:r}=e;return new Promise(async(i,a)=>{let p=await o.userTasks.onUserTaskWaiting(async d=>{let S=t!==void 0&&d.correlationId!==t,Z=d.flowNodeInstanceId===void 0,J=n!==void 0&&d.processInstanceId!==n,Q=r!==void 0&&d.flowNodeId!==r;if(S||Z||J||Q)return;let h=await j(d.flowNodeInstanceId,{identity:s});return o.notification.removeSubscription(p,s),h===null?a(new Error(`UserTask with instance ID "${d.flowNodeInstanceId}" does not exist.`)):i(h)},{identity:s}),I=await $({correlationId:t,processInstanceId:n,flowNodeId:r,state:u.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended},{identity:s});I.userTasks.length>0&&(o.notification.removeSubscription(p,s),i(I.userTasks[0]))})}async function me(e,s={},t={},n){await o.userTasks.finishUserTask(e,t,n);let r={state:u.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended,...s},i=await o.userTasks.query(r,{identity:n});return(0,l.mapUserTask)(i.userTasks[0])}async function $(...e){let s=await o.userTasks.query(...e);return(0,l.mapUserTaskList)(s)}async function Ee(e){let s=await o.userTasks.query({state:u.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended},e);return(0,l.mapUserTaskList)(s)}async function ge(e,s){let t=await o.userTasks.query({processInstanceId:e,state:u.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended},s);return(0,l.mapUserTaskList)(t)}async function ye(e,s){let t=await o.userTasks.query({flowNodeId:e,state:u.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended},s);return(0,l.mapUserTaskList)(t)}async function j(e,s){let t=await o.userTasks.query({flowNodeInstanceId:e,state:u.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended},{...s,limit:1});return t.userTasks.length===0?null:(0,l.mapUserTask)(t.userTasks[0])}async function we(e,s){let t=await o.userTasks.query({correlationId:e,state:u.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended},s);return(0,l.mapUserTaskList)(t)}async function Ce(e,s){let t=await o.userTasks.query({state:u.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended},{identity:e,...s}),n=t.userTasks.filter(r=>r.actualOwnerId===e.userId);return t.userTasks=n,(0,l.mapUserTaskList)(t)}async function Se(e,s){let t=await o.userTasks.query({state:u.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended},{identity:e,...s}),n=t.userTasks.filter(r=>r.assignedUserIds?.includes(e.userId));return t.userTasks=n,(0,l.mapUserTaskList)(t)}var m=require("next/dist/shared/lib/constants");var H=!1,R=!1;function _e(e={}){let{applicationSdk:s,...t}=e;return async(n,r)=>{R=R||n===m.PHASE_PRODUCTION_BUILD;let i=n===m.PHASE_DEVELOPMENT_SERVER||n===m.PHASE_PRODUCTION_SERVER;return s?.useExternalTasks&&i&&!H&&!R&&(H=!0,await v(s?.customExternalTasksDirPath)),t}}var V=require("next/cache"),Y=require("next/navigation");function xe(e){(0,V.revalidatePath)(e),(0,Y.redirect)(e)}async function Pe(...e){return await o.processModels.startProcessInstance(...e)}async function Ne(...e){await o.userTasks.finishUserTask(...e)}0&&(module.exports={finishUserTask,finishUserTaskAndGetNext,getActiveProcessInstances,getAssignedUserTasksByIdentity,getEngineClient,getIdentity,getReservedUserTasksByIdentity,getUserTasks,getWaitingUserTaskByFlowNodeInstanceId,getWaitingUserTasks,getWaitingUserTasksByCorrelationId,getWaitingUserTasksByFlowNodeId,getWaitingUserTasksByProcessInstanceId,navigateToUrl,startProcess,waitForProcessEnd,waitForUserTask,withApplicationSdk});
@@ -1,5 +1,5 @@
1
- var Sn=Object.create;var cs=Object.defineProperty;var Tn=Object.getOwnPropertyDescriptor;var Cn=Object.getOwnPropertyNames;var xn=Object.getPrototypeOf,bn=Object.prototype.hasOwnProperty;var L=(s=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(s,{get:(e,t)=>(typeof require<"u"?require:e)[t]}):s)(function(s){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+s+'" is not supported')});var v=(s,e)=>()=>(e||s((e={exports:{}}).exports,e),e.exports);var In=(s,e,t,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of Cn(e))!bn.call(s,n)&&n!==t&&cs(s,n,{get:()=>e[n],enumerable:!(r=Tn(e,n))||r.enumerable});return s};var vn=(s,e,t)=>(t=s!=null?Sn(xn(s)):{},In(e||!s||!s.__esModule?cs(t,"default",{value:s,enumerable:!0}):t,s));var Re=v((dc,hs)=>{"use strict";var kn=L("path"),ne="\\\\/",ls=`[^${ne}]`,ie="\\.",Nn="\\+",On="\\?",De="\\/",Pn="(?=.)",us="[^/]",at=`(?:${De}|$)`,fs=`(?:^|${De})`,ct=`${ie}{1,2}${at}`,Ln=`(?!${ie})`,Hn=`(?!${fs}${ct})`,Dn=`(?!${ie}{0,1}${at})`,Fn=`(?!${ct})`,$n=`[^.${De}]`,Un=`${us}*?`,ds={DOT_LITERAL:ie,PLUS_LITERAL:Nn,QMARK_LITERAL:On,SLASH_LITERAL:De,ONE_CHAR:Pn,QMARK:us,END_ANCHOR:at,DOTS_SLASH:ct,NO_DOT:Ln,NO_DOTS:Hn,NO_DOT_SLASH:Dn,NO_DOTS_SLASH:Fn,QMARK_NO_DOT:$n,STAR:Un,START_ANCHOR:fs},Mn={...ds,SLASH_LITERAL:`[${ne}]`,QMARK:ls,STAR:`${ls}*?`,DOTS_SLASH:`${ie}{1,2}(?:[${ne}]|$)`,NO_DOT:`(?!${ie})`,NO_DOTS:`(?!(?:^|[${ne}])${ie}{1,2}(?:[${ne}]|$))`,NO_DOT_SLASH:`(?!${ie}{0,1}(?:[${ne}]|$))`,NO_DOTS_SLASH:`(?!${ie}{1,2}(?:[${ne}]|$))`,QMARK_NO_DOT:`[^.${ne}]`,START_ANCHOR:`(?:^|[${ne}])`,END_ANCHOR:`(?:[${ne}]|$)`},Wn={alnum:"a-zA-Z0-9",alpha:"a-zA-Z",ascii:"\\x00-\\x7F",blank:" \\t",cntrl:"\\x00-\\x1F\\x7F",digit:"0-9",graph:"\\x21-\\x7E",lower:"a-z",print:"\\x20-\\x7E ",punct:"\\-!\"#$%&'()\\*+,./:;<=>?@[\\]^_`{|}~",space:" \\t\\r\\n\\v\\f",upper:"A-Z",word:"A-Za-z0-9_",xdigit:"A-Fa-f0-9"};hs.exports={MAX_LENGTH:1024*64,POSIX_REGEX_SOURCE:Wn,REGEX_BACKSLASH:/\\(?![*+?^${}(|)[\]])/g,REGEX_NON_SPECIAL_CHARS:/^[^@![\].,$*+?^{}()|\\/]+/,REGEX_SPECIAL_CHARS:/[-*+?.^${}(|)[\]]/,REGEX_SPECIAL_CHARS_BACKREF:/(\\?)((\W)(\3*))/g,REGEX_SPECIAL_CHARS_GLOBAL:/([-*+?.^${}(|)[\]])/g,REGEX_REMOVE_BACKSLASH:/(?:\[.*?[^\\]\]|\\(?=.))/g,REPLACEMENTS:{"***":"*","**/**":"**","**/**/**":"**"},CHAR_0:48,CHAR_9:57,CHAR_UPPERCASE_A:65,CHAR_LOWERCASE_A:97,CHAR_UPPERCASE_Z:90,CHAR_LOWERCASE_Z:122,CHAR_LEFT_PARENTHESES:40,CHAR_RIGHT_PARENTHESES:41,CHAR_ASTERISK:42,CHAR_AMPERSAND:38,CHAR_AT:64,CHAR_BACKWARD_SLASH:92,CHAR_CARRIAGE_RETURN:13,CHAR_CIRCUMFLEX_ACCENT:94,CHAR_COLON:58,CHAR_COMMA:44,CHAR_DOT:46,CHAR_DOUBLE_QUOTE:34,CHAR_EQUAL:61,CHAR_EXCLAMATION_MARK:33,CHAR_FORM_FEED:12,CHAR_FORWARD_SLASH:47,CHAR_GRAVE_ACCENT:96,CHAR_HASH:35,CHAR_HYPHEN_MINUS:45,CHAR_LEFT_ANGLE_BRACKET:60,CHAR_LEFT_CURLY_BRACE:123,CHAR_LEFT_SQUARE_BRACKET:91,CHAR_LINE_FEED:10,CHAR_NO_BREAK_SPACE:160,CHAR_PERCENT:37,CHAR_PLUS:43,CHAR_QUESTION_MARK:63,CHAR_RIGHT_ANGLE_BRACKET:62,CHAR_RIGHT_CURLY_BRACE:125,CHAR_RIGHT_SQUARE_BRACKET:93,CHAR_SEMICOLON:59,CHAR_SINGLE_QUOTE:39,CHAR_SPACE:32,CHAR_TAB:9,CHAR_UNDERSCORE:95,CHAR_VERTICAL_LINE:124,CHAR_ZERO_WIDTH_NOBREAK_SPACE:65279,SEP:kn.sep,extglobChars(s){return{"!":{type:"negate",open:"(?:(?!(?:",close:`))${s.STAR})`},"?":{type:"qmark",open:"(?:",close:")?"},"+":{type:"plus",open:"(?:",close:")+"},"*":{type:"star",open:"(?:",close:")*"},"@":{type:"at",open:"(?:",close:")"}}},globChars(s){return s===!0?Mn:ds}}});var Fe=v(Y=>{"use strict";var Bn=L("path"),Gn=process.platform==="win32",{REGEX_BACKSLASH:qn,REGEX_REMOVE_BACKSLASH:Kn,REGEX_SPECIAL_CHARS:jn,REGEX_SPECIAL_CHARS_GLOBAL:Vn}=Re();Y.isObject=s=>s!==null&&typeof s=="object"&&!Array.isArray(s);Y.hasRegexChars=s=>jn.test(s);Y.isRegexChar=s=>s.length===1&&Y.hasRegexChars(s);Y.escapeRegex=s=>s.replace(Vn,"\\$1");Y.toPosixSlashes=s=>s.replace(qn,"/");Y.removeBackslashes=s=>s.replace(Kn,e=>e==="\\"?"":e);Y.supportsLookbehinds=()=>{let s=process.version.slice(1).split(".").map(Number);return s.length===3&&s[0]>=9||s[0]===8&&s[1]>=10};Y.isWindows=s=>s&&typeof s.windows=="boolean"?s.windows:Gn===!0||Bn.sep==="\\";Y.escapeLast=(s,e,t)=>{let r=s.lastIndexOf(e,t);return r===-1?s:s[r-1]==="\\"?Y.escapeLast(s,e,r-1):`${s.slice(0,r)}\\${s.slice(r)}`};Y.removePrefix=(s,e={})=>{let t=s;return t.startsWith("./")&&(t=t.slice(2),e.prefix="./"),t};Y.wrapOutput=(s,e={},t={})=>{let r=t.contains?"":"^",n=t.contains?"":"$",o=`${r}(?:${s})${n}`;return e.negated===!0&&(o=`(?:^(?!${o}).*$)`),o}});var Rs=v((pc,ws)=>{"use strict";var ps=Fe(),{CHAR_ASTERISK:lt,CHAR_AT:Yn,CHAR_BACKWARD_SLASH:Ae,CHAR_COMMA:zn,CHAR_DOT:ut,CHAR_EXCLAMATION_MARK:ft,CHAR_FORWARD_SLASH:ys,CHAR_LEFT_CURLY_BRACE:dt,CHAR_LEFT_PARENTHESES:ht,CHAR_LEFT_SQUARE_BRACKET:Xn,CHAR_PLUS:Qn,CHAR_QUESTION_MARK:_s,CHAR_RIGHT_CURLY_BRACE:Zn,CHAR_RIGHT_PARENTHESES:Es,CHAR_RIGHT_SQUARE_BRACKET:Jn}=Re(),gs=s=>s===ys||s===Ae,ms=s=>{s.isPrefix!==!0&&(s.depth=s.isGlobstar?1/0:1)},ei=(s,e)=>{let t=e||{},r=s.length-1,n=t.parts===!0||t.scanToEnd===!0,o=[],i=[],a=[],c=s,u=-1,f=0,d=0,l=!1,m=!1,y=!1,R=!1,S=!1,x=!1,H=!1,F=!1,te=!1,q=!1,ce=0,K,A,I={value:"",depth:0,isGlob:!1},G=()=>u>=r,_=()=>c.charCodeAt(u+1),P=()=>(K=A,c.charCodeAt(++u));for(;u<r;){A=P();let j;if(A===Ae){H=I.backslashes=!0,A=P(),A===dt&&(x=!0);continue}if(x===!0||A===dt){for(ce++;G()!==!0&&(A=P());){if(A===Ae){H=I.backslashes=!0,P();continue}if(A===dt){ce++;continue}if(x!==!0&&A===ut&&(A=P())===ut){if(l=I.isBrace=!0,y=I.isGlob=!0,q=!0,n===!0)continue;break}if(x!==!0&&A===zn){if(l=I.isBrace=!0,y=I.isGlob=!0,q=!0,n===!0)continue;break}if(A===Zn&&(ce--,ce===0)){x=!1,l=I.isBrace=!0,q=!0;break}}if(n===!0)continue;break}if(A===ys){if(o.push(u),i.push(I),I={value:"",depth:0,isGlob:!1},q===!0)continue;if(K===ut&&u===f+1){f+=2;continue}d=u+1;continue}if(t.noext!==!0&&(A===Qn||A===Yn||A===lt||A===_s||A===ft)===!0&&_()===ht){if(y=I.isGlob=!0,R=I.isExtglob=!0,q=!0,A===ft&&u===f&&(te=!0),n===!0){for(;G()!==!0&&(A=P());){if(A===Ae){H=I.backslashes=!0,A=P();continue}if(A===Es){y=I.isGlob=!0,q=!0;break}}continue}break}if(A===lt){if(K===lt&&(S=I.isGlobstar=!0),y=I.isGlob=!0,q=!0,n===!0)continue;break}if(A===_s){if(y=I.isGlob=!0,q=!0,n===!0)continue;break}if(A===Xn){for(;G()!==!0&&(j=P());){if(j===Ae){H=I.backslashes=!0,P();continue}if(j===Jn){m=I.isBracket=!0,y=I.isGlob=!0,q=!0;break}}if(n===!0)continue;break}if(t.nonegate!==!0&&A===ft&&u===f){F=I.negated=!0,f++;continue}if(t.noparen!==!0&&A===ht){if(y=I.isGlob=!0,n===!0){for(;G()!==!0&&(A=P());){if(A===ht){H=I.backslashes=!0,A=P();continue}if(A===Es){q=!0;break}}continue}break}if(y===!0){if(q=!0,n===!0)continue;break}}t.noext===!0&&(R=!1,y=!1);let N=c,le="",h="";f>0&&(le=c.slice(0,f),c=c.slice(f),d-=f),N&&y===!0&&d>0?(N=c.slice(0,d),h=c.slice(d)):y===!0?(N="",h=c):N=c,N&&N!==""&&N!=="/"&&N!==c&&gs(N.charCodeAt(N.length-1))&&(N=N.slice(0,-1)),t.unescape===!0&&(h&&(h=ps.removeBackslashes(h)),N&&H===!0&&(N=ps.removeBackslashes(N)));let p={prefix:le,input:s,start:f,base:N,glob:h,isBrace:l,isBracket:m,isGlob:y,isExtglob:R,isGlobstar:S,negated:F,negatedExtglob:te};if(t.tokens===!0&&(p.maxDepth=0,gs(A)||i.push(I),p.tokens=i),t.parts===!0||t.tokens===!0){let j;for(let b=0;b<o.length;b++){let se=j?j+1:f,re=o[b],z=s.slice(se,re);t.tokens&&(b===0&&f!==0?(i[b].isPrefix=!0,i[b].value=le):i[b].value=z,ms(i[b]),p.maxDepth+=i[b].depth),(b!==0||z!=="")&&a.push(z),j=re}if(j&&j+1<s.length){let b=s.slice(j+1);a.push(b),t.tokens&&(i[i.length-1].value=b,ms(i[i.length-1]),p.maxDepth+=i[i.length-1].depth)}p.slashes=o,p.parts=a}return p};ws.exports=ei});var Ts=v((_c,Ss)=>{"use strict";var $e=Re(),X=Fe(),{MAX_LENGTH:Ue,POSIX_REGEX_SOURCE:ti,REGEX_NON_SPECIAL_CHARS:si,REGEX_SPECIAL_CHARS_BACKREF:ri,REPLACEMENTS:As}=$e,ni=(s,e)=>{if(typeof e.expandRange=="function")return e.expandRange(...s,e);s.sort();let t=`[${s.join("-")}]`;try{new RegExp(t)}catch{return s.map(n=>X.escapeRegex(n)).join("..")}return t},Ee=(s,e)=>`Missing ${s}: "${e}" - use "\\\\${e}" to match literal characters`,pt=(s,e)=>{if(typeof s!="string")throw new TypeError("Expected a string");s=As[s]||s;let t={...e},r=typeof t.maxLength=="number"?Math.min(Ue,t.maxLength):Ue,n=s.length;if(n>r)throw new SyntaxError(`Input length: ${n}, exceeds maximum allowed length: ${r}`);let o={type:"bos",value:"",output:t.prepend||""},i=[o],a=t.capture?"":"?:",c=X.isWindows(e),u=$e.globChars(c),f=$e.extglobChars(u),{DOT_LITERAL:d,PLUS_LITERAL:l,SLASH_LITERAL:m,ONE_CHAR:y,DOTS_SLASH:R,NO_DOT:S,NO_DOT_SLASH:x,NO_DOTS_SLASH:H,QMARK:F,QMARK_NO_DOT:te,STAR:q,START_ANCHOR:ce}=u,K=g=>`(${a}(?:(?!${ce}${g.dot?R:d}).)*?)`,A=t.dot?"":S,I=t.dot?F:te,G=t.bash===!0?K(t):q;t.capture&&(G=`(${G})`),typeof t.noext=="boolean"&&(t.noextglob=t.noext);let _={input:s,index:-1,start:0,dot:t.dot===!0,consumed:"",output:"",prefix:"",backtrack:!1,negated:!1,brackets:0,braces:0,parens:0,quotes:0,globstar:!1,tokens:i};s=X.removePrefix(s,_),n=s.length;let P=[],N=[],le=[],h=o,p,j=()=>_.index===n-1,b=_.peek=(g=1)=>s[_.index+g],se=_.advance=()=>s[++_.index]||"",re=()=>s.slice(_.index+1),z=(g="",O=0)=>{_.consumed+=g,_.index+=O},Oe=g=>{_.output+=g.output!=null?g.output:g.value,z(g.value)},Rn=()=>{let g=1;for(;b()==="!"&&(b(2)!=="("||b(3)==="?");)se(),_.start++,g++;return g%2===0?!1:(_.negated=!0,_.start++,!0)},Pe=g=>{_[g]++,le.push(g)},fe=g=>{_[g]--,le.pop()},C=g=>{if(h.type==="globstar"){let O=_.braces>0&&(g.type==="comma"||g.type==="brace"),E=g.extglob===!0||P.length&&(g.type==="pipe"||g.type==="paren");g.type!=="slash"&&g.type!=="paren"&&!O&&!E&&(_.output=_.output.slice(0,-h.output.length),h.type="star",h.value="*",h.output=G,_.output+=h.output)}if(P.length&&g.type!=="paren"&&(P[P.length-1].inner+=g.value),(g.value||g.output)&&Oe(g),h&&h.type==="text"&&g.type==="text"){h.value+=g.value,h.output=(h.output||"")+g.value;return}g.prev=h,i.push(g),h=g},Le=(g,O)=>{let E={...f[O],conditions:1,inner:""};E.prev=h,E.parens=_.parens,E.output=_.output;let T=(t.capture?"(":"")+E.open;Pe("parens"),C({type:g,value:O,output:_.output?"":y}),C({type:"paren",extglob:!0,value:se(),output:T}),P.push(E)},An=g=>{let O=g.close+(t.capture?")":""),E;if(g.type==="negate"){let T=G;if(g.inner&&g.inner.length>1&&g.inner.includes("/")&&(T=K(t)),(T!==G||j()||/^\)+$/.test(re()))&&(O=g.close=`)$))${T}`),g.inner.includes("*")&&(E=re())&&/^\.[^\\/.]+$/.test(E)){let D=pt(E,{...e,fastpaths:!1}).output;O=g.close=`)${D})${T})`}g.prev.type==="bos"&&(_.negatedExtglob=!0)}C({type:"paren",extglob:!0,value:p,output:O}),fe("parens")};if(t.fastpaths!==!1&&!/(^[*!]|[/()[\]{}"])/.test(s)){let g=!1,O=s.replace(ri,(E,T,D,V,M,ot)=>V==="\\"?(g=!0,E):V==="?"?T?T+V+(M?F.repeat(M.length):""):ot===0?I+(M?F.repeat(M.length):""):F.repeat(D.length):V==="."?d.repeat(D.length):V==="*"?T?T+V+(M?G:""):G:T?E:`\\${E}`);return g===!0&&(t.unescape===!0?O=O.replace(/\\/g,""):O=O.replace(/\\+/g,E=>E.length%2===0?"\\\\":E?"\\":"")),O===s&&t.contains===!0?(_.output=s,_):(_.output=X.wrapOutput(O,_,e),_)}for(;!j();){if(p=se(),p==="\0")continue;if(p==="\\"){let E=b();if(E==="/"&&t.bash!==!0||E==="."||E===";")continue;if(!E){p+="\\",C({type:"text",value:p});continue}let T=/^\\+/.exec(re()),D=0;if(T&&T[0].length>2&&(D=T[0].length,_.index+=D,D%2!==0&&(p+="\\")),t.unescape===!0?p=se():p+=se(),_.brackets===0){C({type:"text",value:p});continue}}if(_.brackets>0&&(p!=="]"||h.value==="["||h.value==="[^")){if(t.posix!==!1&&p===":"){let E=h.value.slice(1);if(E.includes("[")&&(h.posix=!0,E.includes(":"))){let T=h.value.lastIndexOf("["),D=h.value.slice(0,T),V=h.value.slice(T+2),M=ti[V];if(M){h.value=D+M,_.backtrack=!0,se(),!o.output&&i.indexOf(h)===1&&(o.output=y);continue}}}(p==="["&&b()!==":"||p==="-"&&b()==="]")&&(p=`\\${p}`),p==="]"&&(h.value==="["||h.value==="[^")&&(p=`\\${p}`),t.posix===!0&&p==="!"&&h.value==="["&&(p="^"),h.value+=p,Oe({value:p});continue}if(_.quotes===1&&p!=='"'){p=X.escapeRegex(p),h.value+=p,Oe({value:p});continue}if(p==='"'){_.quotes=_.quotes===1?0:1,t.keepQuotes===!0&&C({type:"text",value:p});continue}if(p==="("){Pe("parens"),C({type:"paren",value:p});continue}if(p===")"){if(_.parens===0&&t.strictBrackets===!0)throw new SyntaxError(Ee("opening","("));let E=P[P.length-1];if(E&&_.parens===E.parens+1){An(P.pop());continue}C({type:"paren",value:p,output:_.parens?")":"\\)"}),fe("parens");continue}if(p==="["){if(t.nobracket===!0||!re().includes("]")){if(t.nobracket!==!0&&t.strictBrackets===!0)throw new SyntaxError(Ee("closing","]"));p=`\\${p}`}else Pe("brackets");C({type:"bracket",value:p});continue}if(p==="]"){if(t.nobracket===!0||h&&h.type==="bracket"&&h.value.length===1){C({type:"text",value:p,output:`\\${p}`});continue}if(_.brackets===0){if(t.strictBrackets===!0)throw new SyntaxError(Ee("opening","["));C({type:"text",value:p,output:`\\${p}`});continue}fe("brackets");let E=h.value.slice(1);if(h.posix!==!0&&E[0]==="^"&&!E.includes("/")&&(p=`/${p}`),h.value+=p,Oe({value:p}),t.literalBrackets===!1||X.hasRegexChars(E))continue;let T=X.escapeRegex(h.value);if(_.output=_.output.slice(0,-h.value.length),t.literalBrackets===!0){_.output+=T,h.value=T;continue}h.value=`(${a}${T}|${h.value})`,_.output+=h.value;continue}if(p==="{"&&t.nobrace!==!0){Pe("braces");let E={type:"brace",value:p,output:"(",outputIndex:_.output.length,tokensIndex:_.tokens.length};N.push(E),C(E);continue}if(p==="}"){let E=N[N.length-1];if(t.nobrace===!0||!E){C({type:"text",value:p,output:p});continue}let T=")";if(E.dots===!0){let D=i.slice(),V=[];for(let M=D.length-1;M>=0&&(i.pop(),D[M].type!=="brace");M--)D[M].type!=="dots"&&V.unshift(D[M].value);T=ni(V,t),_.backtrack=!0}if(E.comma!==!0&&E.dots!==!0){let D=_.output.slice(0,E.outputIndex),V=_.tokens.slice(E.tokensIndex);E.value=E.output="\\{",p=T="\\}",_.output=D;for(let M of V)_.output+=M.output||M.value}C({type:"brace",value:p,output:T}),fe("braces"),N.pop();continue}if(p==="|"){P.length>0&&P[P.length-1].conditions++,C({type:"text",value:p});continue}if(p===","){let E=p,T=N[N.length-1];T&&le[le.length-1]==="braces"&&(T.comma=!0,E="|"),C({type:"comma",value:p,output:E});continue}if(p==="/"){if(h.type==="dot"&&_.index===_.start+1){_.start=_.index+1,_.consumed="",_.output="",i.pop(),h=o;continue}C({type:"slash",value:p,output:m});continue}if(p==="."){if(_.braces>0&&h.type==="dot"){h.value==="."&&(h.output=d);let E=N[N.length-1];h.type="dots",h.output+=p,h.value+=p,E.dots=!0;continue}if(_.braces+_.parens===0&&h.type!=="bos"&&h.type!=="slash"){C({type:"text",value:p,output:d});continue}C({type:"dot",value:p,output:d});continue}if(p==="?"){if(!(h&&h.value==="(")&&t.noextglob!==!0&&b()==="("&&b(2)!=="?"){Le("qmark",p);continue}if(h&&h.type==="paren"){let T=b(),D=p;if(T==="<"&&!X.supportsLookbehinds())throw new Error("Node.js v10 or higher is required for regex lookbehinds");(h.value==="("&&!/[!=<:]/.test(T)||T==="<"&&!/<([!=]|\w+>)/.test(re()))&&(D=`\\${p}`),C({type:"text",value:p,output:D});continue}if(t.dot!==!0&&(h.type==="slash"||h.type==="bos")){C({type:"qmark",value:p,output:te});continue}C({type:"qmark",value:p,output:F});continue}if(p==="!"){if(t.noextglob!==!0&&b()==="("&&(b(2)!=="?"||!/[!=<:]/.test(b(3)))){Le("negate",p);continue}if(t.nonegate!==!0&&_.index===0){Rn();continue}}if(p==="+"){if(t.noextglob!==!0&&b()==="("&&b(2)!=="?"){Le("plus",p);continue}if(h&&h.value==="("||t.regex===!1){C({type:"plus",value:p,output:l});continue}if(h&&(h.type==="bracket"||h.type==="paren"||h.type==="brace")||_.parens>0){C({type:"plus",value:p});continue}C({type:"plus",value:l});continue}if(p==="@"){if(t.noextglob!==!0&&b()==="("&&b(2)!=="?"){C({type:"at",extglob:!0,value:p,output:""});continue}C({type:"text",value:p});continue}if(p!=="*"){(p==="$"||p==="^")&&(p=`\\${p}`);let E=si.exec(re());E&&(p+=E[0],_.index+=E[0].length),C({type:"text",value:p});continue}if(h&&(h.type==="globstar"||h.star===!0)){h.type="star",h.star=!0,h.value+=p,h.output=G,_.backtrack=!0,_.globstar=!0,z(p);continue}let g=re();if(t.noextglob!==!0&&/^\([^?]/.test(g)){Le("star",p);continue}if(h.type==="star"){if(t.noglobstar===!0){z(p);continue}let E=h.prev,T=E.prev,D=E.type==="slash"||E.type==="bos",V=T&&(T.type==="star"||T.type==="globstar");if(t.bash===!0&&(!D||g[0]&&g[0]!=="/")){C({type:"star",value:p,output:""});continue}let M=_.braces>0&&(E.type==="comma"||E.type==="brace"),ot=P.length&&(E.type==="pipe"||E.type==="paren");if(!D&&E.type!=="paren"&&!M&&!ot){C({type:"star",value:p,output:""});continue}for(;g.slice(0,3)==="/**";){let He=s[_.index+4];if(He&&He!=="/")break;g=g.slice(3),z("/**",3)}if(E.type==="bos"&&j()){h.type="globstar",h.value+=p,h.output=K(t),_.output=h.output,_.globstar=!0,z(p);continue}if(E.type==="slash"&&E.prev.type!=="bos"&&!V&&j()){_.output=_.output.slice(0,-(E.output+h.output).length),E.output=`(?:${E.output}`,h.type="globstar",h.output=K(t)+(t.strictSlashes?")":"|$)"),h.value+=p,_.globstar=!0,_.output+=E.output+h.output,z(p);continue}if(E.type==="slash"&&E.prev.type!=="bos"&&g[0]==="/"){let He=g[1]!==void 0?"|$":"";_.output=_.output.slice(0,-(E.output+h.output).length),E.output=`(?:${E.output}`,h.type="globstar",h.output=`${K(t)}${m}|${m}${He})`,h.value+=p,_.output+=E.output+h.output,_.globstar=!0,z(p+se()),C({type:"slash",value:"/",output:""});continue}if(E.type==="bos"&&g[0]==="/"){h.type="globstar",h.value+=p,h.output=`(?:^|${m}|${K(t)}${m})`,_.output=h.output,_.globstar=!0,z(p+se()),C({type:"slash",value:"/",output:""});continue}_.output=_.output.slice(0,-h.output.length),h.type="globstar",h.output=K(t),h.value+=p,_.output+=h.output,_.globstar=!0,z(p);continue}let O={type:"star",value:p,output:G};if(t.bash===!0){O.output=".*?",(h.type==="bos"||h.type==="slash")&&(O.output=A+O.output),C(O);continue}if(h&&(h.type==="bracket"||h.type==="paren")&&t.regex===!0){O.output=p,C(O);continue}(_.index===_.start||h.type==="slash"||h.type==="dot")&&(h.type==="dot"?(_.output+=x,h.output+=x):t.dot===!0?(_.output+=H,h.output+=H):(_.output+=A,h.output+=A),b()!=="*"&&(_.output+=y,h.output+=y)),C(O)}for(;_.brackets>0;){if(t.strictBrackets===!0)throw new SyntaxError(Ee("closing","]"));_.output=X.escapeLast(_.output,"["),fe("brackets")}for(;_.parens>0;){if(t.strictBrackets===!0)throw new SyntaxError(Ee("closing",")"));_.output=X.escapeLast(_.output,"("),fe("parens")}for(;_.braces>0;){if(t.strictBrackets===!0)throw new SyntaxError(Ee("closing","}"));_.output=X.escapeLast(_.output,"{"),fe("braces")}if(t.strictSlashes!==!0&&(h.type==="star"||h.type==="bracket")&&C({type:"maybe_slash",value:"",output:`${m}?`}),_.backtrack===!0){_.output="";for(let g of _.tokens)_.output+=g.output!=null?g.output:g.value,g.suffix&&(_.output+=g.suffix)}return _};pt.fastpaths=(s,e)=>{let t={...e},r=typeof t.maxLength=="number"?Math.min(Ue,t.maxLength):Ue,n=s.length;if(n>r)throw new SyntaxError(`Input length: ${n}, exceeds maximum allowed length: ${r}`);s=As[s]||s;let o=X.isWindows(e),{DOT_LITERAL:i,SLASH_LITERAL:a,ONE_CHAR:c,DOTS_SLASH:u,NO_DOT:f,NO_DOTS:d,NO_DOTS_SLASH:l,STAR:m,START_ANCHOR:y}=$e.globChars(o),R=t.dot?d:f,S=t.dot?l:f,x=t.capture?"":"?:",H={negated:!1,prefix:""},F=t.bash===!0?".*?":m;t.capture&&(F=`(${F})`);let te=A=>A.noglobstar===!0?F:`(${x}(?:(?!${y}${A.dot?u:i}).)*?)`,q=A=>{switch(A){case"*":return`${R}${c}${F}`;case".*":return`${i}${c}${F}`;case"*.*":return`${R}${F}${i}${c}${F}`;case"*/*":return`${R}${F}${a}${c}${S}${F}`;case"**":return R+te(t);case"**/*":return`(?:${R}${te(t)}${a})?${S}${c}${F}`;case"**/*.*":return`(?:${R}${te(t)}${a})?${S}${F}${i}${c}${F}`;case"**/.*":return`(?:${R}${te(t)}${a})?${i}${c}${F}`;default:{let I=/^(.*?)\.(\w+)$/.exec(A);if(!I)return;let G=q(I[1]);return G?G+i+I[2]:void 0}}},ce=X.removePrefix(s,H),K=q(ce);return K&&t.strictSlashes!==!0&&(K+=`${a}?`),K};Ss.exports=pt});var xs=v((Ec,Cs)=>{"use strict";var ii=L("path"),oi=Rs(),_t=Ts(),Et=Fe(),ai=Re(),ci=s=>s&&typeof s=="object"&&!Array.isArray(s),U=(s,e,t=!1)=>{if(Array.isArray(s)){let f=s.map(l=>U(l,e,t));return l=>{for(let m of f){let y=m(l);if(y)return y}return!1}}let r=ci(s)&&s.tokens&&s.input;if(s===""||typeof s!="string"&&!r)throw new TypeError("Expected pattern to be a non-empty string");let n=e||{},o=Et.isWindows(e),i=r?U.compileRe(s,e):U.makeRe(s,e,!1,!0),a=i.state;delete i.state;let c=()=>!1;if(n.ignore){let f={...e,ignore:null,onMatch:null,onResult:null};c=U(n.ignore,f,t)}let u=(f,d=!1)=>{let{isMatch:l,match:m,output:y}=U.test(f,i,e,{glob:s,posix:o}),R={glob:s,state:a,regex:i,posix:o,input:f,output:y,match:m,isMatch:l};return typeof n.onResult=="function"&&n.onResult(R),l===!1?(R.isMatch=!1,d?R:!1):c(f)?(typeof n.onIgnore=="function"&&n.onIgnore(R),R.isMatch=!1,d?R:!1):(typeof n.onMatch=="function"&&n.onMatch(R),d?R:!0)};return t&&(u.state=a),u};U.test=(s,e,t,{glob:r,posix:n}={})=>{if(typeof s!="string")throw new TypeError("Expected input to be a string");if(s==="")return{isMatch:!1,output:""};let o=t||{},i=o.format||(n?Et.toPosixSlashes:null),a=s===r,c=a&&i?i(s):s;return a===!1&&(c=i?i(s):s,a=c===r),(a===!1||o.capture===!0)&&(o.matchBase===!0||o.basename===!0?a=U.matchBase(s,e,t,n):a=e.exec(c)),{isMatch:!!a,match:a,output:c}};U.matchBase=(s,e,t,r=Et.isWindows(t))=>(e instanceof RegExp?e:U.makeRe(e,t)).test(ii.basename(s));U.isMatch=(s,e,t)=>U(e,t)(s);U.parse=(s,e)=>Array.isArray(s)?s.map(t=>U.parse(t,e)):_t(s,{...e,fastpaths:!1});U.scan=(s,e)=>oi(s,e);U.compileRe=(s,e,t=!1,r=!1)=>{if(t===!0)return s.output;let n=e||{},o=n.contains?"":"^",i=n.contains?"":"$",a=`${o}(?:${s.output})${i}`;s&&s.negated===!0&&(a=`^(?!${a}).*$`);let c=U.toRegex(a,e);return r===!0&&(c.state=s),c};U.makeRe=(s,e={},t=!1,r=!1)=>{if(!s||typeof s!="string")throw new TypeError("Expected a non-empty string");let n={negated:!1,fastpaths:!0};return e.fastpaths!==!1&&(s[0]==="."||s[0]==="*")&&(n.output=_t.fastpaths(s,e)),n.output||(n=_t(s,e)),U.compileRe(n,e,t,r)};U.toRegex=(s,e)=>{try{let t=e||{};return new RegExp(s,t.flags||(t.nocase?"i":""))}catch(t){if(e&&e.debug===!0)throw t;return/$^/}};U.constants=ai;Cs.exports=U});var gt=v((gc,bs)=>{"use strict";bs.exports=xs()});var Hs=v((mc,Ls)=>{"use strict";var Te=L("fs"),{Readable:li}=L("stream"),Se=L("path"),{promisify:Ge}=L("util"),mt=gt(),ui=Ge(Te.readdir),fi=Ge(Te.stat),Is=Ge(Te.lstat),di=Ge(Te.realpath),hi="!",Os="READDIRP_RECURSIVE_ERROR",pi=new Set(["ENOENT","EPERM","EACCES","ELOOP",Os]),yt="files",Ps="directories",We="files_directories",Me="all",vs=[yt,Ps,We,Me],_i=s=>pi.has(s.code),[ks,Ei]=process.versions.node.split(".").slice(0,2).map(s=>Number.parseInt(s,10)),gi=process.platform==="win32"&&(ks>10||ks===10&&Ei>=5),Ns=s=>{if(s!==void 0){if(typeof s=="function")return s;if(typeof s=="string"){let e=mt(s.trim());return t=>e(t.basename)}if(Array.isArray(s)){let e=[],t=[];for(let r of s){let n=r.trim();n.charAt(0)===hi?t.push(mt(n.slice(1))):e.push(mt(n))}return t.length>0?e.length>0?r=>e.some(n=>n(r.basename))&&!t.some(n=>n(r.basename)):r=>!t.some(n=>n(r.basename)):r=>e.some(n=>n(r.basename))}}},Be=class s extends li{static get defaultOptions(){return{root:".",fileFilter:e=>!0,directoryFilter:e=>!0,type:yt,lstat:!1,depth:2147483648,alwaysStat:!1}}constructor(e={}){super({objectMode:!0,autoDestroy:!0,highWaterMark:e.highWaterMark||4096});let t={...s.defaultOptions,...e},{root:r,type:n}=t;this._fileFilter=Ns(t.fileFilter),this._directoryFilter=Ns(t.directoryFilter);let o=t.lstat?Is:fi;gi?this._stat=i=>o(i,{bigint:!0}):this._stat=o,this._maxDepth=t.depth,this._wantsDir=[Ps,We,Me].includes(n),this._wantsFile=[yt,We,Me].includes(n),this._wantsEverything=n===Me,this._root=Se.resolve(r),this._isDirent="Dirent"in Te&&!t.alwaysStat,this._statsProp=this._isDirent?"dirent":"stats",this._rdOptions={encoding:"utf8",withFileTypes:this._isDirent},this.parents=[this._exploreDir(r,1)],this.reading=!1,this.parent=void 0}async _read(e){if(!this.reading){this.reading=!0;try{for(;!this.destroyed&&e>0;){let{path:t,depth:r,files:n=[]}=this.parent||{};if(n.length>0){let o=n.splice(0,e).map(i=>this._formatEntry(i,t));for(let i of await Promise.all(o)){if(this.destroyed)return;let a=await this._getEntryType(i);a==="directory"&&this._directoryFilter(i)?(r<=this._maxDepth&&this.parents.push(this._exploreDir(i.fullPath,r+1)),this._wantsDir&&(this.push(i),e--)):(a==="file"||this._includeAsFile(i))&&this._fileFilter(i)&&this._wantsFile&&(this.push(i),e--)}}else{let o=this.parents.pop();if(!o){this.push(null);break}if(this.parent=await o,this.destroyed)return}}}catch(t){this.destroy(t)}finally{this.reading=!1}}}async _exploreDir(e,t){let r;try{r=await ui(e,this._rdOptions)}catch(n){this._onError(n)}return{files:r,depth:t,path:e}}async _formatEntry(e,t){let r;try{let n=this._isDirent?e.name:e,o=Se.resolve(Se.join(t,n));r={path:Se.relative(this._root,o),fullPath:o,basename:n},r[this._statsProp]=this._isDirent?e:await this._stat(o)}catch(n){this._onError(n)}return r}_onError(e){_i(e)&&!this.destroyed?this.emit("warn",e):this.destroy(e)}async _getEntryType(e){let t=e&&e[this._statsProp];if(t){if(t.isFile())return"file";if(t.isDirectory())return"directory";if(t&&t.isSymbolicLink()){let r=e.fullPath;try{let n=await di(r),o=await Is(n);if(o.isFile())return"file";if(o.isDirectory()){let i=n.length;if(r.startsWith(n)&&r.substr(i,1)===Se.sep){let a=new Error(`Circular symlink detected: "${r}" points to "${n}"`);return a.code=Os,this._onError(a)}return"directory"}}catch(n){this._onError(n)}}}}_includeAsFile(e){let t=e&&e[this._statsProp];return t&&this._wantsEverything&&!t.isDirectory()}},ge=(s,e={})=>{let t=e.entryType||e.type;if(t==="both"&&(t=We),t&&(e.type=t),s){if(typeof s!="string")throw new TypeError("readdirp: root argument must be a string. Usage: readdirp(root, options)");if(t&&!vs.includes(t))throw new Error(`readdirp: Invalid type passed. Use one of ${vs.join(", ")}`)}else throw new Error("readdirp: root argument is required. Usage: readdirp(root, options)");return e.root=s,new Be(e)},mi=(s,e={})=>new Promise((t,r)=>{let n=[];ge(s,e).on("data",o=>n.push(o)).on("end",()=>t(n)).on("error",o=>r(o))});ge.promise=mi;ge.ReaddirpStream=Be;ge.default=ge;Ls.exports=ge});var wt=v((yc,Ds)=>{Ds.exports=function(s,e){if(typeof s!="string")throw new TypeError("expected path to be a string");if(s==="\\"||s==="/")return"/";var t=s.length;if(t<=1)return s;var r="";if(t>4&&s[3]==="\\"){var n=s[2];(n==="?"||n===".")&&s.slice(0,2)==="\\\\"&&(s=s.slice(2),r="//")}var o=s.split(/[/\\]+/);return e!==!1&&o[o.length-1]===""&&o.pop(),r+o.join("/")}});var Bs=v((Ms,Ws)=>{"use strict";Object.defineProperty(Ms,"__esModule",{value:!0});var Us=gt(),yi=wt(),Fs="!",wi={returnIndex:!1},Ri=s=>Array.isArray(s)?s:[s],Ai=(s,e)=>{if(typeof s=="function")return s;if(typeof s=="string"){let t=Us(s,e);return r=>s===r||t(r)}return s instanceof RegExp?t=>s.test(t):t=>!1},$s=(s,e,t,r)=>{let n=Array.isArray(t),o=n?t[0]:t;if(!n&&typeof o!="string")throw new TypeError("anymatch: second argument must be a string: got "+Object.prototype.toString.call(o));let i=yi(o,!1);for(let c=0;c<e.length;c++){let u=e[c];if(u(i))return r?-1:!1}let a=n&&[i].concat(t.slice(1));for(let c=0;c<s.length;c++){let u=s[c];if(n?u(...a):u(i))return r?c:!0}return r?-1:!1},Rt=(s,e,t=wi)=>{if(s==null)throw new TypeError("anymatch: specify first argument");let r=typeof t=="boolean"?{returnIndex:t}:t,n=r.returnIndex||!1,o=Ri(s),i=o.filter(c=>typeof c=="string"&&c.charAt(0)===Fs).map(c=>c.slice(1)).map(c=>Us(c,r)),a=o.filter(c=>typeof c!="string"||typeof c=="string"&&c.charAt(0)!==Fs).map(c=>Ai(c,r));return e==null?(c,u=!1)=>$s(a,i,c,typeof u=="boolean"?u:!1):$s(a,i,e,n)};Rt.default=Rt;Ws.exports=Rt});var qs=v((wc,Gs)=>{Gs.exports=function(e){if(typeof e!="string"||e==="")return!1;for(var t;t=/(\\).|([@?!+*]\(.*\))/g.exec(e);){if(t[2])return!0;e=e.slice(t.index+t[0].length)}return!1}});var At=v((Rc,js)=>{var Si=qs(),Ks={"{":"}","(":")","[":"]"},Ti=function(s){if(s[0]==="!")return!0;for(var e=0,t=-2,r=-2,n=-2,o=-2,i=-2;e<s.length;){if(s[e]==="*"||s[e+1]==="?"&&/[\].+)]/.test(s[e])||r!==-1&&s[e]==="["&&s[e+1]!=="]"&&(r<e&&(r=s.indexOf("]",e)),r>e&&(i===-1||i>r||(i=s.indexOf("\\",e),i===-1||i>r)))||n!==-1&&s[e]==="{"&&s[e+1]!=="}"&&(n=s.indexOf("}",e),n>e&&(i=s.indexOf("\\",e),i===-1||i>n))||o!==-1&&s[e]==="("&&s[e+1]==="?"&&/[:!=]/.test(s[e+2])&&s[e+3]!==")"&&(o=s.indexOf(")",e),o>e&&(i=s.indexOf("\\",e),i===-1||i>o))||t!==-1&&s[e]==="("&&s[e+1]!=="|"&&(t<e&&(t=s.indexOf("|",e)),t!==-1&&s[t+1]!==")"&&(o=s.indexOf(")",t),o>t&&(i=s.indexOf("\\",t),i===-1||i>o))))return!0;if(s[e]==="\\"){var a=s[e+1];e+=2;var c=Ks[a];if(c){var u=s.indexOf(c,e);u!==-1&&(e=u+1)}if(s[e]==="!")return!0}else e++}return!1},Ci=function(s){if(s[0]==="!")return!0;for(var e=0;e<s.length;){if(/[*?{}()[\]]/.test(s[e]))return!0;if(s[e]==="\\"){var t=s[e+1];e+=2;var r=Ks[t];if(r){var n=s.indexOf(r,e);n!==-1&&(e=n+1)}if(s[e]==="!")return!0}else e++}return!1};js.exports=function(e,t){if(typeof e!="string"||e==="")return!1;if(Si(e))return!0;var r=Ti;return t&&t.strict===!1&&(r=Ci),r(e)}});var Ys=v((Ac,Vs)=>{"use strict";var xi=At(),bi=L("path").posix.dirname,Ii=L("os").platform()==="win32",St="/",vi=/\\/g,ki=/[\{\[].*[\}\]]$/,Ni=/(^|[^\\])([\{\[]|\([^\)]+$)/,Oi=/\\([\!\*\?\|\[\]\(\)\{\}])/g;Vs.exports=function(e,t){var r=Object.assign({flipBackslashes:!0},t);r.flipBackslashes&&Ii&&e.indexOf(St)<0&&(e=e.replace(vi,St)),ki.test(e)&&(e+=St),e+="a";do e=bi(e);while(xi(e)||Ni.test(e));return e.replace(Oi,"$1")}});var qe=v(Z=>{"use strict";Z.isInteger=s=>typeof s=="number"?Number.isInteger(s):typeof s=="string"&&s.trim()!==""?Number.isInteger(Number(s)):!1;Z.find=(s,e)=>s.nodes.find(t=>t.type===e);Z.exceedsLimit=(s,e,t=1,r)=>r===!1||!Z.isInteger(s)||!Z.isInteger(e)?!1:(Number(e)-Number(s))/Number(t)>=r;Z.escapeNode=(s,e=0,t)=>{let r=s.nodes[e];r&&(t&&r.type===t||r.type==="open"||r.type==="close")&&r.escaped!==!0&&(r.value="\\"+r.value,r.escaped=!0)};Z.encloseBrace=s=>s.type!=="brace"||s.commas>>0+s.ranges>>0?!1:(s.invalid=!0,!0);Z.isInvalidBrace=s=>s.type!=="brace"?!1:s.invalid===!0||s.dollar?!0:!(s.commas>>0+s.ranges>>0)||s.open!==!0||s.close!==!0?(s.invalid=!0,!0):!1;Z.isOpenOrClose=s=>s.type==="open"||s.type==="close"?!0:s.open===!0||s.close===!0;Z.reduce=s=>s.reduce((e,t)=>(t.type==="text"&&e.push(t.value),t.type==="range"&&(t.type="text"),e),[]);Z.flatten=(...s)=>{let e=[],t=r=>{for(let n=0;n<r.length;n++){let o=r[n];Array.isArray(o)?t(o,e):o!==void 0&&e.push(o)}return e};return t(s),e}});var Ke=v((Tc,Xs)=>{"use strict";var zs=qe();Xs.exports=(s,e={})=>{let t=(r,n={})=>{let o=e.escapeInvalid&&zs.isInvalidBrace(n),i=r.invalid===!0&&e.escapeInvalid===!0,a="";if(r.value)return(o||i)&&zs.isOpenOrClose(r)?"\\"+r.value:r.value;if(r.value)return r.value;if(r.nodes)for(let c of r.nodes)a+=t(c);return a};return t(s)}});var Zs=v((Cc,Qs)=>{"use strict";Qs.exports=function(s){return typeof s=="number"?s-s===0:typeof s=="string"&&s.trim()!==""?Number.isFinite?Number.isFinite(+s):isFinite(+s):!1}});var ar=v((xc,or)=>{"use strict";var Js=Zs(),de=(s,e,t)=>{if(Js(s)===!1)throw new TypeError("toRegexRange: expected the first argument to be a number");if(e===void 0||s===e)return String(s);if(Js(e)===!1)throw new TypeError("toRegexRange: expected the second argument to be a number.");let r={relaxZeros:!0,...t};typeof r.strictZeros=="boolean"&&(r.relaxZeros=r.strictZeros===!1);let n=String(r.relaxZeros),o=String(r.shorthand),i=String(r.capture),a=String(r.wrap),c=s+":"+e+"="+n+o+i+a;if(de.cache.hasOwnProperty(c))return de.cache[c].result;let u=Math.min(s,e),f=Math.max(s,e);if(Math.abs(u-f)===1){let R=s+"|"+e;return r.capture?`(${R})`:r.wrap===!1?R:`(?:${R})`}let d=ir(s)||ir(e),l={min:s,max:e,a:u,b:f},m=[],y=[];if(d&&(l.isPadded=d,l.maxLen=String(l.max).length),u<0){let R=f<0?Math.abs(f):1;y=er(R,Math.abs(u),l,r),u=l.a=0}return f>=0&&(m=er(u,f,l,r)),l.negatives=y,l.positives=m,l.result=Pi(y,m,r),r.capture===!0?l.result=`(${l.result})`:r.wrap!==!1&&m.length+y.length>1&&(l.result=`(?:${l.result})`),de.cache[c]=l,l.result};function Pi(s,e,t){let r=Tt(s,e,"-",!1,t)||[],n=Tt(e,s,"",!1,t)||[],o=Tt(s,e,"-?",!0,t)||[];return r.concat(o).concat(n).join("|")}function Li(s,e){let t=1,r=1,n=sr(s,t),o=new Set([e]);for(;s<=n&&n<=e;)o.add(n),t+=1,n=sr(s,t);for(n=rr(e+1,r)-1;s<n&&n<=e;)o.add(n),r+=1,n=rr(e+1,r)-1;return o=[...o],o.sort(Fi),o}function Hi(s,e,t){if(s===e)return{pattern:s,count:[],digits:0};let r=Di(s,e),n=r.length,o="",i=0;for(let a=0;a<n;a++){let[c,u]=r[a];c===u?o+=c:c!=="0"||u!=="9"?o+=$i(c,u,t):i++}return i&&(o+=t.shorthand===!0?"\\d":"[0-9]"),{pattern:o,count:[i],digits:n}}function er(s,e,t,r){let n=Li(s,e),o=[],i=s,a;for(let c=0;c<n.length;c++){let u=n[c],f=Hi(String(i),String(u),r),d="";if(!t.isPadded&&a&&a.pattern===f.pattern){a.count.length>1&&a.count.pop(),a.count.push(f.count[0]),a.string=a.pattern+nr(a.count),i=u+1;continue}t.isPadded&&(d=Ui(u,t,r)),f.string=d+f.pattern+nr(f.count),o.push(f),i=u+1,a=f}return o}function Tt(s,e,t,r,n){let o=[];for(let i of s){let{string:a}=i;!r&&!tr(e,"string",a)&&o.push(t+a),r&&tr(e,"string",a)&&o.push(t+a)}return o}function Di(s,e){let t=[];for(let r=0;r<s.length;r++)t.push([s[r],e[r]]);return t}function Fi(s,e){return s>e?1:e>s?-1:0}function tr(s,e,t){return s.some(r=>r[e]===t)}function sr(s,e){return Number(String(s).slice(0,-e)+"9".repeat(e))}function rr(s,e){return s-s%Math.pow(10,e)}function nr(s){let[e=0,t=""]=s;return t||e>1?`{${e+(t?","+t:"")}}`:""}function $i(s,e,t){return`[${s}${e-s===1?"":"-"}${e}]`}function ir(s){return/^-?(0+)\d/.test(s)}function Ui(s,e,t){if(!e.isPadded)return s;let r=Math.abs(e.maxLen-String(s).length),n=t.relaxZeros!==!1;switch(r){case 0:return"";case 1:return n?"0?":"0";case 2:return n?"0{0,2}":"00";default:return n?`0{0,${r}}`:`0{${r}}`}}de.cache={};de.clearCache=()=>de.cache={};or.exports=de});var bt=v((bc,_r)=>{"use strict";var Mi=L("util"),ur=ar(),cr=s=>s!==null&&typeof s=="object"&&!Array.isArray(s),Wi=s=>e=>s===!0?Number(e):String(e),Ct=s=>typeof s=="number"||typeof s=="string"&&s!=="",Ce=s=>Number.isInteger(+s),xt=s=>{let e=`${s}`,t=-1;if(e[0]==="-"&&(e=e.slice(1)),e==="0")return!1;for(;e[++t]==="0";);return t>0},Bi=(s,e,t)=>typeof s=="string"||typeof e=="string"?!0:t.stringify===!0,Gi=(s,e,t)=>{if(e>0){let r=s[0]==="-"?"-":"";r&&(s=s.slice(1)),s=r+s.padStart(r?e-1:e,"0")}return t===!1?String(s):s},lr=(s,e)=>{let t=s[0]==="-"?"-":"";for(t&&(s=s.slice(1),e--);s.length<e;)s="0"+s;return t?"-"+s:s},qi=(s,e)=>{s.negatives.sort((i,a)=>i<a?-1:i>a?1:0),s.positives.sort((i,a)=>i<a?-1:i>a?1:0);let t=e.capture?"":"?:",r="",n="",o;return s.positives.length&&(r=s.positives.join("|")),s.negatives.length&&(n=`-(${t}${s.negatives.join("|")})`),r&&n?o=`${r}|${n}`:o=r||n,e.wrap?`(${t}${o})`:o},fr=(s,e,t,r)=>{if(t)return ur(s,e,{wrap:!1,...r});let n=String.fromCharCode(s);if(s===e)return n;let o=String.fromCharCode(e);return`[${n}-${o}]`},dr=(s,e,t)=>{if(Array.isArray(s)){let r=t.wrap===!0,n=t.capture?"":"?:";return r?`(${n}${s.join("|")})`:s.join("|")}return ur(s,e,t)},hr=(...s)=>new RangeError("Invalid range arguments: "+Mi.inspect(...s)),pr=(s,e,t)=>{if(t.strictRanges===!0)throw hr([s,e]);return[]},Ki=(s,e)=>{if(e.strictRanges===!0)throw new TypeError(`Expected step "${s}" to be a number`);return[]},ji=(s,e,t=1,r={})=>{let n=Number(s),o=Number(e);if(!Number.isInteger(n)||!Number.isInteger(o)){if(r.strictRanges===!0)throw hr([s,e]);return[]}n===0&&(n=0),o===0&&(o=0);let i=n>o,a=String(s),c=String(e),u=String(t);t=Math.max(Math.abs(t),1);let f=xt(a)||xt(c)||xt(u),d=f?Math.max(a.length,c.length,u.length):0,l=f===!1&&Bi(s,e,r)===!1,m=r.transform||Wi(l);if(r.toRegex&&t===1)return fr(lr(s,d),lr(e,d),!0,r);let y={negatives:[],positives:[]},R=H=>y[H<0?"negatives":"positives"].push(Math.abs(H)),S=[],x=0;for(;i?n>=o:n<=o;)r.toRegex===!0&&t>1?R(n):S.push(Gi(m(n,x),d,l)),n=i?n-t:n+t,x++;return r.toRegex===!0?t>1?qi(y,r):dr(S,null,{wrap:!1,...r}):S},Vi=(s,e,t=1,r={})=>{if(!Ce(s)&&s.length>1||!Ce(e)&&e.length>1)return pr(s,e,r);let n=r.transform||(l=>String.fromCharCode(l)),o=`${s}`.charCodeAt(0),i=`${e}`.charCodeAt(0),a=o>i,c=Math.min(o,i),u=Math.max(o,i);if(r.toRegex&&t===1)return fr(c,u,!1,r);let f=[],d=0;for(;a?o>=i:o<=i;)f.push(n(o,d)),o=a?o-t:o+t,d++;return r.toRegex===!0?dr(f,null,{wrap:!1,options:r}):f},je=(s,e,t,r={})=>{if(e==null&&Ct(s))return[s];if(!Ct(s)||!Ct(e))return pr(s,e,r);if(typeof t=="function")return je(s,e,1,{transform:t});if(cr(t))return je(s,e,0,t);let n={...r};return n.capture===!0&&(n.wrap=!0),t=t||n.step||1,Ce(t)?Ce(s)&&Ce(e)?ji(s,e,t,n):Vi(s,e,Math.max(Math.abs(t),1),n):t!=null&&!cr(t)?Ki(t,n):je(s,e,1,t)};_r.exports=je});var mr=v((Ic,gr)=>{"use strict";var Yi=bt(),Er=qe(),zi=(s,e={})=>{let t=(r,n={})=>{let o=Er.isInvalidBrace(n),i=r.invalid===!0&&e.escapeInvalid===!0,a=o===!0||i===!0,c=e.escapeInvalid===!0?"\\":"",u="";if(r.isOpen===!0||r.isClose===!0)return c+r.value;if(r.type==="open")return a?c+r.value:"(";if(r.type==="close")return a?c+r.value:")";if(r.type==="comma")return r.prev.type==="comma"?"":a?r.value:"|";if(r.value)return r.value;if(r.nodes&&r.ranges>0){let f=Er.reduce(r.nodes),d=Yi(...f,{...e,wrap:!1,toRegex:!0});if(d.length!==0)return f.length>1&&d.length>1?`(${d})`:d}if(r.nodes)for(let f of r.nodes)u+=t(f,r);return u};return t(s)};gr.exports=zi});var Rr=v((vc,wr)=>{"use strict";var Xi=bt(),yr=Ke(),me=qe(),he=(s="",e="",t=!1)=>{let r=[];if(s=[].concat(s),e=[].concat(e),!e.length)return s;if(!s.length)return t?me.flatten(e).map(n=>`{${n}}`):e;for(let n of s)if(Array.isArray(n))for(let o of n)r.push(he(o,e,t));else for(let o of e)t===!0&&typeof o=="string"&&(o=`{${o}}`),r.push(Array.isArray(o)?he(n,o,t):n+o);return me.flatten(r)},Qi=(s,e={})=>{let t=e.rangeLimit===void 0?1e3:e.rangeLimit,r=(n,o={})=>{n.queue=[];let i=o,a=o.queue;for(;i.type!=="brace"&&i.type!=="root"&&i.parent;)i=i.parent,a=i.queue;if(n.invalid||n.dollar){a.push(he(a.pop(),yr(n,e)));return}if(n.type==="brace"&&n.invalid!==!0&&n.nodes.length===2){a.push(he(a.pop(),["{}"]));return}if(n.nodes&&n.ranges>0){let d=me.reduce(n.nodes);if(me.exceedsLimit(...d,e.step,t))throw new RangeError("expanded array length exceeds range limit. Use options.rangeLimit to increase or disable the limit.");let l=Xi(...d,e);l.length===0&&(l=yr(n,e)),a.push(he(a.pop(),l)),n.nodes=[];return}let c=me.encloseBrace(n),u=n.queue,f=n;for(;f.type!=="brace"&&f.type!=="root"&&f.parent;)f=f.parent,u=f.queue;for(let d=0;d<n.nodes.length;d++){let l=n.nodes[d];if(l.type==="comma"&&n.type==="brace"){d===1&&u.push(""),u.push("");continue}if(l.type==="close"){a.push(he(a.pop(),u,c));continue}if(l.value&&l.type!=="open"){u.push(he(u.pop(),l.value));continue}l.nodes&&r(l,n)}return u};return me.flatten(r(s))};wr.exports=Qi});var Sr=v((kc,Ar)=>{"use strict";Ar.exports={MAX_LENGTH:1024*64,CHAR_0:"0",CHAR_9:"9",CHAR_UPPERCASE_A:"A",CHAR_LOWERCASE_A:"a",CHAR_UPPERCASE_Z:"Z",CHAR_LOWERCASE_Z:"z",CHAR_LEFT_PARENTHESES:"(",CHAR_RIGHT_PARENTHESES:")",CHAR_ASTERISK:"*",CHAR_AMPERSAND:"&",CHAR_AT:"@",CHAR_BACKSLASH:"\\",CHAR_BACKTICK:"`",CHAR_CARRIAGE_RETURN:"\r",CHAR_CIRCUMFLEX_ACCENT:"^",CHAR_COLON:":",CHAR_COMMA:",",CHAR_DOLLAR:"$",CHAR_DOT:".",CHAR_DOUBLE_QUOTE:'"',CHAR_EQUAL:"=",CHAR_EXCLAMATION_MARK:"!",CHAR_FORM_FEED:"\f",CHAR_FORWARD_SLASH:"/",CHAR_HASH:"#",CHAR_HYPHEN_MINUS:"-",CHAR_LEFT_ANGLE_BRACKET:"<",CHAR_LEFT_CURLY_BRACE:"{",CHAR_LEFT_SQUARE_BRACKET:"[",CHAR_LINE_FEED:`
2
- `,CHAR_NO_BREAK_SPACE:"\xA0",CHAR_PERCENT:"%",CHAR_PLUS:"+",CHAR_QUESTION_MARK:"?",CHAR_RIGHT_ANGLE_BRACKET:">",CHAR_RIGHT_CURLY_BRACE:"}",CHAR_RIGHT_SQUARE_BRACKET:"]",CHAR_SEMICOLON:";",CHAR_SINGLE_QUOTE:"'",CHAR_SPACE:" ",CHAR_TAB:" ",CHAR_UNDERSCORE:"_",CHAR_VERTICAL_LINE:"|",CHAR_ZERO_WIDTH_NOBREAK_SPACE:"\uFEFF"}});var Ir=v((Nc,br)=>{"use strict";var Zi=Ke(),{MAX_LENGTH:Tr,CHAR_BACKSLASH:It,CHAR_BACKTICK:Ji,CHAR_COMMA:eo,CHAR_DOT:to,CHAR_LEFT_PARENTHESES:so,CHAR_RIGHT_PARENTHESES:ro,CHAR_LEFT_CURLY_BRACE:no,CHAR_RIGHT_CURLY_BRACE:io,CHAR_LEFT_SQUARE_BRACKET:Cr,CHAR_RIGHT_SQUARE_BRACKET:xr,CHAR_DOUBLE_QUOTE:oo,CHAR_SINGLE_QUOTE:ao,CHAR_NO_BREAK_SPACE:co,CHAR_ZERO_WIDTH_NOBREAK_SPACE:lo}=Sr(),uo=(s,e={})=>{if(typeof s!="string")throw new TypeError("Expected a string");let t=e||{},r=typeof t.maxLength=="number"?Math.min(Tr,t.maxLength):Tr;if(s.length>r)throw new SyntaxError(`Input length (${s.length}), exceeds max characters (${r})`);let n={type:"root",input:s,nodes:[]},o=[n],i=n,a=n,c=0,u=s.length,f=0,d=0,l,m={},y=()=>s[f++],R=S=>{if(S.type==="text"&&a.type==="dot"&&(a.type="text"),a&&a.type==="text"&&S.type==="text"){a.value+=S.value;return}return i.nodes.push(S),S.parent=i,S.prev=a,a=S,S};for(R({type:"bos"});f<u;)if(i=o[o.length-1],l=y(),!(l===lo||l===co)){if(l===It){R({type:"text",value:(e.keepEscaping?l:"")+y()});continue}if(l===xr){R({type:"text",value:"\\"+l});continue}if(l===Cr){c++;let S=!0,x;for(;f<u&&(x=y());){if(l+=x,x===Cr){c++;continue}if(x===It){l+=y();continue}if(x===xr&&(c--,c===0))break}R({type:"text",value:l});continue}if(l===so){i=R({type:"paren",nodes:[]}),o.push(i),R({type:"text",value:l});continue}if(l===ro){if(i.type!=="paren"){R({type:"text",value:l});continue}i=o.pop(),R({type:"text",value:l}),i=o[o.length-1];continue}if(l===oo||l===ao||l===Ji){let S=l,x;for(e.keepQuotes!==!0&&(l="");f<u&&(x=y());){if(x===It){l+=x+y();continue}if(x===S){e.keepQuotes===!0&&(l+=x);break}l+=x}R({type:"text",value:l});continue}if(l===no){d++;let x={type:"brace",open:!0,close:!1,dollar:a.value&&a.value.slice(-1)==="$"||i.dollar===!0,depth:d,commas:0,ranges:0,nodes:[]};i=R(x),o.push(i),R({type:"open",value:l});continue}if(l===io){if(i.type!=="brace"){R({type:"text",value:l});continue}let S="close";i=o.pop(),i.close=!0,R({type:S,value:l}),d--,i=o[o.length-1];continue}if(l===eo&&d>0){if(i.ranges>0){i.ranges=0;let S=i.nodes.shift();i.nodes=[S,{type:"text",value:Zi(i)}]}R({type:"comma",value:l}),i.commas++;continue}if(l===to&&d>0&&i.commas===0){let S=i.nodes;if(d===0||S.length===0){R({type:"text",value:l});continue}if(a.type==="dot"){if(i.range=[],a.value+=l,a.type="range",i.nodes.length!==3&&i.nodes.length!==5){i.invalid=!0,i.ranges=0,a.type="text";continue}i.ranges++,i.args=[];continue}if(a.type==="range"){S.pop();let x=S[S.length-1];x.value+=a.value+l,a=x,i.ranges--;continue}R({type:"dot",value:l});continue}R({type:"text",value:l})}do if(i=o.pop(),i.type!=="root"){i.nodes.forEach(H=>{H.nodes||(H.type==="open"&&(H.isOpen=!0),H.type==="close"&&(H.isClose=!0),H.nodes||(H.type="text"),H.invalid=!0)});let S=o[o.length-1],x=S.nodes.indexOf(i);S.nodes.splice(x,1,...i.nodes)}while(o.length>0);return R({type:"eos"}),n};br.exports=uo});var Nr=v((Oc,kr)=>{"use strict";var vr=Ke(),fo=mr(),ho=Rr(),po=Ir(),Q=(s,e={})=>{let t=[];if(Array.isArray(s))for(let r of s){let n=Q.create(r,e);Array.isArray(n)?t.push(...n):t.push(n)}else t=[].concat(Q.create(s,e));return e&&e.expand===!0&&e.nodupes===!0&&(t=[...new Set(t)]),t};Q.parse=(s,e={})=>po(s,e);Q.stringify=(s,e={})=>vr(typeof s=="string"?Q.parse(s,e):s,e);Q.compile=(s,e={})=>(typeof s=="string"&&(s=Q.parse(s,e)),fo(s,e));Q.expand=(s,e={})=>{typeof s=="string"&&(s=Q.parse(s,e));let t=ho(s,e);return e.noempty===!0&&(t=t.filter(Boolean)),e.nodupes===!0&&(t=[...new Set(t)]),t};Q.create=(s,e={})=>s===""||s.length<3?[s]:e.expand!==!0?Q.compile(s,e):Q.expand(s,e);kr.exports=Q});var Or=v((Pc,_o)=>{_o.exports=["3dm","3ds","3g2","3gp","7z","a","aac","adp","afdesign","afphoto","afpub","ai","aif","aiff","alz","ape","apk","appimage","ar","arj","asf","au","avi","bak","baml","bh","bin","bk","bmp","btif","bz2","bzip2","cab","caf","cgm","class","cmx","cpio","cr2","cur","dat","dcm","deb","dex","djvu","dll","dmg","dng","doc","docm","docx","dot","dotm","dra","DS_Store","dsk","dts","dtshd","dvb","dwg","dxf","ecelp4800","ecelp7470","ecelp9600","egg","eol","eot","epub","exe","f4v","fbs","fh","fla","flac","flatpak","fli","flv","fpx","fst","fvt","g3","gh","gif","graffle","gz","gzip","h261","h263","h264","icns","ico","ief","img","ipa","iso","jar","jpeg","jpg","jpgv","jpm","jxr","key","ktx","lha","lib","lvp","lz","lzh","lzma","lzo","m3u","m4a","m4v","mar","mdi","mht","mid","midi","mj2","mka","mkv","mmr","mng","mobi","mov","movie","mp3","mp4","mp4a","mpeg","mpg","mpga","mxu","nef","npx","numbers","nupkg","o","odp","ods","odt","oga","ogg","ogv","otf","ott","pages","pbm","pcx","pdb","pdf","pea","pgm","pic","png","pnm","pot","potm","potx","ppa","ppam","ppm","pps","ppsm","ppsx","ppt","pptm","pptx","psd","pya","pyc","pyo","pyv","qt","rar","ras","raw","resources","rgb","rip","rlc","rmf","rmvb","rpm","rtf","rz","s3m","s7z","scpt","sgi","shar","snap","sil","sketch","slk","smv","snk","so","stl","suo","sub","swf","tar","tbz","tbz2","tga","tgz","thmx","tif","tiff","tlz","ttc","ttf","txz","udf","uvh","uvi","uvm","uvp","uvs","uvu","viv","vob","war","wav","wax","wbmp","wdp","weba","webm","webp","whl","wim","wm","wma","wmv","wmx","woff","woff2","wrm","wvx","xbm","xif","xla","xlam","xls","xlsb","xlsm","xlsx","xlt","xltm","xltx","xm","xmind","xpi","xpm","xwd","xz","z","zip","zipx"]});var Lr=v((Lc,Pr)=>{Pr.exports=Or()});var Dr=v((Hc,Hr)=>{"use strict";var Eo=L("path"),go=Lr(),mo=new Set(go);Hr.exports=s=>mo.has(Eo.extname(s).slice(1).toLowerCase())});var Ve=v(w=>{"use strict";var{sep:yo}=L("path"),{platform:vt}=process,wo=L("os");w.EV_ALL="all";w.EV_READY="ready";w.EV_ADD="add";w.EV_CHANGE="change";w.EV_ADD_DIR="addDir";w.EV_UNLINK="unlink";w.EV_UNLINK_DIR="unlinkDir";w.EV_RAW="raw";w.EV_ERROR="error";w.STR_DATA="data";w.STR_END="end";w.STR_CLOSE="close";w.FSEVENT_CREATED="created";w.FSEVENT_MODIFIED="modified";w.FSEVENT_DELETED="deleted";w.FSEVENT_MOVED="moved";w.FSEVENT_CLONED="cloned";w.FSEVENT_UNKNOWN="unknown";w.FSEVENT_FLAG_MUST_SCAN_SUBDIRS=1;w.FSEVENT_TYPE_FILE="file";w.FSEVENT_TYPE_DIRECTORY="directory";w.FSEVENT_TYPE_SYMLINK="symlink";w.KEY_LISTENERS="listeners";w.KEY_ERR="errHandlers";w.KEY_RAW="rawEmitters";w.HANDLER_KEYS=[w.KEY_LISTENERS,w.KEY_ERR,w.KEY_RAW];w.DOT_SLASH=`.${yo}`;w.BACK_SLASH_RE=/\\/g;w.DOUBLE_SLASH_RE=/\/\//;w.SLASH_OR_BACK_SLASH_RE=/[/\\]/;w.DOT_RE=/\..*\.(sw[px])$|~$|\.subl.*\.tmp/;w.REPLACER_RE=/^\.[/\\]/;w.SLASH="/";w.SLASH_SLASH="//";w.BRACE_START="{";w.BANG="!";w.ONE_DOT=".";w.TWO_DOTS="..";w.STAR="*";w.GLOBSTAR="**";w.ROOT_GLOBSTAR="/**/*";w.SLASH_GLOBSTAR="/**";w.DIR_SUFFIX="Dir";w.ANYMATCH_OPTS={dot:!0};w.STRING_TYPE="string";w.FUNCTION_TYPE="function";w.EMPTY_STR="";w.EMPTY_FN=()=>{};w.IDENTITY_FN=s=>s;w.isWindows=vt==="win32";w.isMacos=vt==="darwin";w.isLinux=vt==="linux";w.isIBMi=wo.type()==="OS400"});var Br=v((Fc,Wr)=>{"use strict";var oe=L("fs"),W=L("path"),{promisify:ve}=L("util"),Ro=Dr(),{isWindows:Ao,isLinux:So,EMPTY_FN:To,EMPTY_STR:Co,KEY_LISTENERS:ye,KEY_ERR:kt,KEY_RAW:xe,HANDLER_KEYS:xo,EV_CHANGE:ze,EV_ADD:Ye,EV_ADD_DIR:bo,EV_ERROR:$r,STR_DATA:Io,STR_END:vo,BRACE_START:ko,STAR:No}=Ve(),Oo="watch",Po=ve(oe.open),Ur=ve(oe.stat),Lo=ve(oe.lstat),Ho=ve(oe.close),Nt=ve(oe.realpath),Do={lstat:Lo,stat:Ur},Pt=(s,e)=>{s instanceof Set?s.forEach(e):e(s)},be=(s,e,t)=>{let r=s[e];r instanceof Set||(s[e]=r=new Set([r])),r.add(t)},Fo=s=>e=>{let t=s[e];t instanceof Set?t.clear():delete s[e]},Ie=(s,e,t)=>{let r=s[e];r instanceof Set?r.delete(t):r===t&&delete s[e]},Mr=s=>s instanceof Set?s.size===0:!s,Xe=new Map;function Fr(s,e,t,r,n){let o=(i,a)=>{t(s),n(i,a,{watchedPath:s}),a&&s!==a&&Qe(W.resolve(s,a),ye,W.join(s,a))};try{return oe.watch(s,e,o)}catch(i){r(i)}}var Qe=(s,e,t,r,n)=>{let o=Xe.get(s);o&&Pt(o[e],i=>{i(t,r,n)})},$o=(s,e,t,r)=>{let{listener:n,errHandler:o,rawEmitter:i}=r,a=Xe.get(e),c;if(!t.persistent)return c=Fr(s,t,n,o,i),c.close.bind(c);if(a)be(a,ye,n),be(a,kt,o),be(a,xe,i);else{if(c=Fr(s,t,Qe.bind(null,e,ye),o,Qe.bind(null,e,xe)),!c)return;c.on($r,async u=>{let f=Qe.bind(null,e,kt);if(a.watcherUnusable=!0,Ao&&u.code==="EPERM")try{let d=await Po(s,"r");await Ho(d),f(u)}catch{}else f(u)}),a={listeners:n,errHandlers:o,rawEmitters:i,watcher:c},Xe.set(e,a)}return()=>{Ie(a,ye,n),Ie(a,kt,o),Ie(a,xe,i),Mr(a.listeners)&&(a.watcher.close(),Xe.delete(e),xo.forEach(Fo(a)),a.watcher=void 0,Object.freeze(a))}},Ot=new Map,Uo=(s,e,t,r)=>{let{listener:n,rawEmitter:o}=r,i=Ot.get(e),a=new Set,c=new Set,u=i&&i.options;return u&&(u.persistent<t.persistent||u.interval>t.interval)&&(a=i.listeners,c=i.rawEmitters,oe.unwatchFile(e),i=void 0),i?(be(i,ye,n),be(i,xe,o)):(i={listeners:n,rawEmitters:o,options:t,watcher:oe.watchFile(e,t,(f,d)=>{Pt(i.rawEmitters,m=>{m(ze,e,{curr:f,prev:d})});let l=f.mtimeMs;(f.size!==d.size||l>d.mtimeMs||l===0)&&Pt(i.listeners,m=>m(s,f))})},Ot.set(e,i)),()=>{Ie(i,ye,n),Ie(i,xe,o),Mr(i.listeners)&&(Ot.delete(e),oe.unwatchFile(e),i.options=i.watcher=void 0,Object.freeze(i))}},Lt=class{constructor(e){this.fsw=e,this._boundHandleError=t=>e._handleError(t)}_watchWithNodeFs(e,t){let r=this.fsw.options,n=W.dirname(e),o=W.basename(e);this.fsw._getWatchedDir(n).add(o);let a=W.resolve(e),c={persistent:r.persistent};t||(t=To);let u;return r.usePolling?(c.interval=r.enableBinaryInterval&&Ro(o)?r.binaryInterval:r.interval,u=Uo(e,a,c,{listener:t,rawEmitter:this.fsw._emitRaw})):u=$o(e,a,c,{listener:t,errHandler:this._boundHandleError,rawEmitter:this.fsw._emitRaw}),u}_handleFile(e,t,r){if(this.fsw.closed)return;let n=W.dirname(e),o=W.basename(e),i=this.fsw._getWatchedDir(n),a=t;if(i.has(o))return;let c=async(f,d)=>{if(this.fsw._throttle(Oo,e,5)){if(!d||d.mtimeMs===0)try{let l=await Ur(e);if(this.fsw.closed)return;let m=l.atimeMs,y=l.mtimeMs;(!m||m<=y||y!==a.mtimeMs)&&this.fsw._emit(ze,e,l),So&&a.ino!==l.ino?(this.fsw._closeFile(f),a=l,this.fsw._addPathCloser(f,this._watchWithNodeFs(e,c))):a=l}catch{this.fsw._remove(n,o)}else if(i.has(o)){let l=d.atimeMs,m=d.mtimeMs;(!l||l<=m||m!==a.mtimeMs)&&this.fsw._emit(ze,e,d),a=d}}},u=this._watchWithNodeFs(e,c);if(!(r&&this.fsw.options.ignoreInitial)&&this.fsw._isntIgnored(e)){if(!this.fsw._throttle(Ye,e,0))return;this.fsw._emit(Ye,e,t)}return u}async _handleSymlink(e,t,r,n){if(this.fsw.closed)return;let o=e.fullPath,i=this.fsw._getWatchedDir(t);if(!this.fsw.options.followSymlinks){this.fsw._incrReadyCount();let a;try{a=await Nt(r)}catch{return this.fsw._emitReady(),!0}return this.fsw.closed?void 0:(i.has(n)?this.fsw._symlinkPaths.get(o)!==a&&(this.fsw._symlinkPaths.set(o,a),this.fsw._emit(ze,r,e.stats)):(i.add(n),this.fsw._symlinkPaths.set(o,a),this.fsw._emit(Ye,r,e.stats)),this.fsw._emitReady(),!0)}if(this.fsw._symlinkPaths.has(o))return!0;this.fsw._symlinkPaths.set(o,!0)}_handleRead(e,t,r,n,o,i,a){if(e=W.join(e,Co),!r.hasGlob&&(a=this.fsw._throttle("readdir",e,1e3),!a))return;let c=this.fsw._getWatchedDir(r.path),u=new Set,f=this.fsw._readdirp(e,{fileFilter:d=>r.filterPath(d),directoryFilter:d=>r.filterDir(d),depth:0}).on(Io,async d=>{if(this.fsw.closed){f=void 0;return}let l=d.path,m=W.join(e,l);if(u.add(l),!(d.stats.isSymbolicLink()&&await this._handleSymlink(d,e,m,l))){if(this.fsw.closed){f=void 0;return}(l===n||!n&&!c.has(l))&&(this.fsw._incrReadyCount(),m=W.join(o,W.relative(o,m)),this._addToNodeFs(m,t,r,i+1))}}).on($r,this._boundHandleError);return new Promise(d=>f.once(vo,()=>{if(this.fsw.closed){f=void 0;return}let l=a?a.clear():!1;d(),c.getChildren().filter(m=>m!==e&&!u.has(m)&&(!r.hasGlob||r.filterPath({fullPath:W.resolve(e,m)}))).forEach(m=>{this.fsw._remove(e,m)}),f=void 0,l&&this._handleRead(e,!1,r,n,o,i,a)}))}async _handleDir(e,t,r,n,o,i,a){let c=this.fsw._getWatchedDir(W.dirname(e)),u=c.has(W.basename(e));!(r&&this.fsw.options.ignoreInitial)&&!o&&!u&&(!i.hasGlob||i.globFilter(e))&&this.fsw._emit(bo,e,t),c.add(W.basename(e)),this.fsw._getWatchedDir(e);let f,d,l=this.fsw.options.depth;if((l==null||n<=l)&&!this.fsw._symlinkPaths.has(a)){if(!o&&(await this._handleRead(e,r,i,o,e,n,f),this.fsw.closed))return;d=this._watchWithNodeFs(e,(m,y)=>{y&&y.mtimeMs===0||this._handleRead(m,!1,i,o,e,n,f)})}return d}async _addToNodeFs(e,t,r,n,o){let i=this.fsw._emitReady;if(this.fsw._isIgnored(e)||this.fsw.closed)return i(),!1;let a=this.fsw._getWatchHelpers(e,n);!a.hasGlob&&r&&(a.hasGlob=r.hasGlob,a.globFilter=r.globFilter,a.filterPath=c=>r.filterPath(c),a.filterDir=c=>r.filterDir(c));try{let c=await Do[a.statMethod](a.watchPath);if(this.fsw.closed)return;if(this.fsw._isIgnored(a.watchPath,c))return i(),!1;let u=this.fsw.options.followSymlinks&&!e.includes(No)&&!e.includes(ko),f;if(c.isDirectory()){let d=W.resolve(e),l=u?await Nt(e):e;if(this.fsw.closed||(f=await this._handleDir(a.watchPath,c,t,n,o,a,l),this.fsw.closed))return;d!==l&&l!==void 0&&this.fsw._symlinkPaths.set(d,l)}else if(c.isSymbolicLink()){let d=u?await Nt(e):e;if(this.fsw.closed)return;let l=W.dirname(a.watchPath);if(this.fsw._getWatchedDir(l).add(a.watchPath),this.fsw._emit(Ye,a.watchPath,c),f=await this._handleDir(l,c,t,n,e,a,d),this.fsw.closed)return;d!==void 0&&this.fsw._symlinkPaths.set(W.resolve(e),d)}else f=this._handleFile(a.watchPath,c,t);return i(),this.fsw._addPathCloser(e,f),!1}catch(c){if(this.fsw._handleError(c))return i(),e}}};Wr.exports=Lt});var zr=v(($c,Bt)=>{"use strict";var Mt=L("fs"),B=L("path"),{promisify:Wt}=L("util"),we;try{we=L("fsevents")}catch(s){process.env.CHOKIDAR_PRINT_FSEVENTS_REQUIRE_ERROR&&console.error(s)}if(we){let s=process.version.match(/v(\d+)\.(\d+)/);if(s&&s[1]&&s[2]){let e=Number.parseInt(s[1],10),t=Number.parseInt(s[2],10);e===8&&t<16&&(we=void 0)}}var{EV_ADD:Ht,EV_CHANGE:Mo,EV_ADD_DIR:Gr,EV_UNLINK:Ze,EV_ERROR:Wo,STR_DATA:Bo,STR_END:Go,FSEVENT_CREATED:qo,FSEVENT_MODIFIED:Ko,FSEVENT_DELETED:jo,FSEVENT_MOVED:Vo,FSEVENT_UNKNOWN:Yo,FSEVENT_FLAG_MUST_SCAN_SUBDIRS:zo,FSEVENT_TYPE_FILE:Xo,FSEVENT_TYPE_DIRECTORY:ke,FSEVENT_TYPE_SYMLINK:Yr,ROOT_GLOBSTAR:qr,DIR_SUFFIX:Qo,DOT_SLASH:Kr,FUNCTION_TYPE:Dt,EMPTY_FN:Zo,IDENTITY_FN:Jo}=Ve(),ea=s=>isNaN(s)?{}:{depth:s},$t=Wt(Mt.stat),ta=Wt(Mt.lstat),jr=Wt(Mt.realpath),sa={stat:$t,lstat:ta},pe=new Map,ra=10,na=new Set([69888,70400,71424,72704,73472,131328,131840,262912]),ia=(s,e)=>({stop:we.watch(s,e)});function oa(s,e,t,r){let n=B.extname(e)?B.dirname(e):e,o=B.dirname(n),i=pe.get(n);aa(o)&&(n=o);let a=B.resolve(s),c=a!==e,u=(d,l,m)=>{c&&(d=d.replace(e,a)),(d===a||!d.indexOf(a+B.sep))&&t(d,l,m)},f=!1;for(let d of pe.keys())if(e.indexOf(B.resolve(d)+B.sep)===0){n=d,i=pe.get(n),f=!0;break}return i||f?i.listeners.add(u):(i={listeners:new Set([u]),rawEmitter:r,watcher:ia(n,(d,l)=>{if(!i.listeners.size||l&zo)return;let m=we.getInfo(d,l);i.listeners.forEach(y=>{y(d,l,m)}),i.rawEmitter(m.event,d,m)})},pe.set(n,i)),()=>{let d=i.listeners;if(d.delete(u),!d.size&&(pe.delete(n),i.watcher))return i.watcher.stop().then(()=>{i.rawEmitter=i.watcher=void 0,Object.freeze(i)})}}var aa=s=>{let e=0;for(let t of pe.keys())if(t.indexOf(s)===0&&(e++,e>=ra))return!0;return!1},ca=()=>we&&pe.size<128,Ft=(s,e)=>{let t=0;for(;!s.indexOf(e)&&(s=B.dirname(s))!==e;)t++;return t},Vr=(s,e)=>s.type===ke&&e.isDirectory()||s.type===Yr&&e.isSymbolicLink()||s.type===Xo&&e.isFile(),Ut=class{constructor(e){this.fsw=e}checkIgnored(e,t){let r=this.fsw._ignoredPaths;if(this.fsw._isIgnored(e,t))return r.add(e),t&&t.isDirectory()&&r.add(e+qr),!0;r.delete(e),r.delete(e+qr)}addOrChange(e,t,r,n,o,i,a,c){let u=o.has(i)?Mo:Ht;this.handleEvent(u,e,t,r,n,o,i,a,c)}async checkExists(e,t,r,n,o,i,a,c){try{let u=await $t(e);if(this.fsw.closed)return;Vr(a,u)?this.addOrChange(e,t,r,n,o,i,a,c):this.handleEvent(Ze,e,t,r,n,o,i,a,c)}catch(u){u.code==="EACCES"?this.addOrChange(e,t,r,n,o,i,a,c):this.handleEvent(Ze,e,t,r,n,o,i,a,c)}}handleEvent(e,t,r,n,o,i,a,c,u){if(!(this.fsw.closed||this.checkIgnored(t)))if(e===Ze){let f=c.type===ke;(f||i.has(a))&&this.fsw._remove(o,a,f)}else{if(e===Ht){if(c.type===ke&&this.fsw._getWatchedDir(t),c.type===Yr&&u.followSymlinks){let d=u.depth===void 0?void 0:Ft(r,n)+1;return this._addToFsEvents(t,!1,!0,d)}this.fsw._getWatchedDir(o).add(a)}let f=c.type===ke?e+Qo:e;this.fsw._emit(f,t),f===Gr&&this._addToFsEvents(t,!1,!0)}}_watchWithFsEvents(e,t,r,n){if(this.fsw.closed||this.fsw._isIgnored(e))return;let o=this.fsw.options,a=oa(e,t,async(c,u,f)=>{if(this.fsw.closed||o.depth!==void 0&&Ft(c,t)>o.depth)return;let d=r(B.join(e,B.relative(e,c)));if(n&&!n(d))return;let l=B.dirname(d),m=B.basename(d),y=this.fsw._getWatchedDir(f.type===ke?d:l);if(na.has(u)||f.event===Yo)if(typeof o.ignored===Dt){let R;try{R=await $t(d)}catch{}if(this.fsw.closed||this.checkIgnored(d,R))return;Vr(f,R)?this.addOrChange(d,c,t,l,y,m,f,o):this.handleEvent(Ze,d,c,t,l,y,m,f,o)}else this.checkExists(d,c,t,l,y,m,f,o);else switch(f.event){case qo:case Ko:return this.addOrChange(d,c,t,l,y,m,f,o);case jo:case Vo:return this.checkExists(d,c,t,l,y,m,f,o)}},this.fsw._emitRaw);return this.fsw._emitReady(),a}async _handleFsEventsSymlink(e,t,r,n){if(!(this.fsw.closed||this.fsw._symlinkPaths.has(t))){this.fsw._symlinkPaths.set(t,!0),this.fsw._incrReadyCount();try{let o=await jr(e);if(this.fsw.closed)return;if(this.fsw._isIgnored(o))return this.fsw._emitReady();this.fsw._incrReadyCount(),this._addToFsEvents(o||e,i=>{let a=e;return o&&o!==Kr?a=i.replace(o,e):i!==Kr&&(a=B.join(e,i)),r(a)},!1,n)}catch(o){if(this.fsw._handleError(o))return this.fsw._emitReady()}}}emitAdd(e,t,r,n,o){let i=r(e),a=t.isDirectory(),c=this.fsw._getWatchedDir(B.dirname(i)),u=B.basename(i);a&&this.fsw._getWatchedDir(i),!c.has(u)&&(c.add(u),(!n.ignoreInitial||o===!0)&&this.fsw._emit(a?Gr:Ht,i,t))}initWatch(e,t,r,n){if(this.fsw.closed)return;let o=this._watchWithFsEvents(r.watchPath,B.resolve(e||r.watchPath),n,r.globFilter);this.fsw._addPathCloser(t,o)}async _addToFsEvents(e,t,r,n){if(this.fsw.closed)return;let o=this.fsw.options,i=typeof t===Dt?t:Jo,a=this.fsw._getWatchHelpers(e);try{let c=await sa[a.statMethod](a.watchPath);if(this.fsw.closed)return;if(this.fsw._isIgnored(a.watchPath,c))throw null;if(c.isDirectory()){if(a.globFilter||this.emitAdd(i(e),c,i,o,r),n&&n>o.depth)return;this.fsw._readdirp(a.watchPath,{fileFilter:u=>a.filterPath(u),directoryFilter:u=>a.filterDir(u),...ea(o.depth-(n||0))}).on(Bo,u=>{if(this.fsw.closed||u.stats.isDirectory()&&!a.filterPath(u))return;let f=B.join(a.watchPath,u.path),{fullPath:d}=u;if(a.followSymlinks&&u.stats.isSymbolicLink()){let l=o.depth===void 0?void 0:Ft(f,B.resolve(a.watchPath))+1;this._handleFsEventsSymlink(f,d,i,l)}else this.emitAdd(f,u.stats,i,o,r)}).on(Wo,Zo).on(Go,()=>{this.fsw._emitReady()})}else this.emitAdd(a.watchPath,c,i,o,r),this.fsw._emitReady()}catch(c){(!c||this.fsw._handleError(c))&&(this.fsw._emitReady(),this.fsw._emitReady())}if(o.persistent&&r!==!0)if(typeof t===Dt)this.initWatch(void 0,e,a,i);else{let c;try{c=await jr(a.watchPath)}catch{}this.initWatch(c,e,a,i)}}};Bt.exports=Ut;Bt.exports.canUse=ca});var an=v(rs=>{"use strict";var{EventEmitter:la}=L("events"),ts=L("fs"),k=L("path"),{promisify:sn}=L("util"),ua=Hs(),Yt=Bs().default,fa=Ys(),Gt=At(),da=Nr(),ha=wt(),pa=Br(),Xr=zr(),{EV_ALL:qt,EV_READY:_a,EV_ADD:Je,EV_CHANGE:Ne,EV_UNLINK:Qr,EV_ADD_DIR:Ea,EV_UNLINK_DIR:ga,EV_RAW:ma,EV_ERROR:Kt,STR_CLOSE:ya,STR_END:wa,BACK_SLASH_RE:Ra,DOUBLE_SLASH_RE:Zr,SLASH_OR_BACK_SLASH_RE:Aa,DOT_RE:Sa,REPLACER_RE:Ta,SLASH:jt,SLASH_SLASH:Ca,BRACE_START:xa,BANG:zt,ONE_DOT:rn,TWO_DOTS:ba,GLOBSTAR:Ia,SLASH_GLOBSTAR:Vt,ANYMATCH_OPTS:Xt,STRING_TYPE:ss,FUNCTION_TYPE:va,EMPTY_STR:Qt,EMPTY_FN:ka,isWindows:Na,isMacos:Oa,isIBMi:Pa}=Ve(),La=sn(ts.stat),Ha=sn(ts.readdir),Zt=(s=[])=>Array.isArray(s)?s:[s],nn=(s,e=[])=>(s.forEach(t=>{Array.isArray(t)?nn(t,e):e.push(t)}),e),Jr=s=>{let e=nn(Zt(s));if(!e.every(t=>typeof t===ss))throw new TypeError(`Non-string provided as watch path: ${e}`);return e.map(on)},en=s=>{let e=s.replace(Ra,jt),t=!1;for(e.startsWith(Ca)&&(t=!0);e.match(Zr);)e=e.replace(Zr,jt);return t&&(e=jt+e),e},on=s=>en(k.normalize(en(s))),tn=(s=Qt)=>e=>typeof e!==ss?e:on(k.isAbsolute(e)?e:k.join(s,e)),Da=(s,e)=>k.isAbsolute(s)?s:s.startsWith(zt)?zt+k.join(e,s.slice(1)):k.join(e,s),ee=(s,e)=>s[e]===void 0,Jt=class{constructor(e,t){this.path=e,this._removeWatcher=t,this.items=new Set}add(e){let{items:t}=this;t&&e!==rn&&e!==ba&&t.add(e)}async remove(e){let{items:t}=this;if(!t||(t.delete(e),t.size>0))return;let r=this.path;try{await Ha(r)}catch{this._removeWatcher&&this._removeWatcher(k.dirname(r),k.basename(r))}}has(e){let{items:t}=this;if(t)return t.has(e)}getChildren(){let{items:e}=this;if(e)return[...e.values()]}dispose(){this.items.clear(),delete this.path,delete this._removeWatcher,delete this.items,Object.freeze(this)}},Fa="stat",$a="lstat",es=class{constructor(e,t,r,n){this.fsw=n,this.path=e=e.replace(Ta,Qt),this.watchPath=t,this.fullWatchPath=k.resolve(t),this.hasGlob=t!==e,e===Qt&&(this.hasGlob=!1),this.globSymlink=this.hasGlob&&r?void 0:!1,this.globFilter=this.hasGlob?Yt(e,void 0,Xt):!1,this.dirParts=this.getDirParts(e),this.dirParts.forEach(o=>{o.length>1&&o.pop()}),this.followSymlinks=r,this.statMethod=r?Fa:$a}checkGlobSymlink(e){return this.globSymlink===void 0&&(this.globSymlink=e.fullParentDir===this.fullWatchPath?!1:{realPath:e.fullParentDir,linkPath:this.fullWatchPath}),this.globSymlink?e.fullPath.replace(this.globSymlink.realPath,this.globSymlink.linkPath):e.fullPath}entryPath(e){return k.join(this.watchPath,k.relative(this.watchPath,this.checkGlobSymlink(e)))}filterPath(e){let{stats:t}=e;if(t&&t.isSymbolicLink())return this.filterDir(e);let r=this.entryPath(e);return(this.hasGlob&&typeof this.globFilter===va?this.globFilter(r):!0)&&this.fsw._isntIgnored(r,t)&&this.fsw._hasReadPermissions(t)}getDirParts(e){if(!this.hasGlob)return[];let t=[];return(e.includes(xa)?da.expand(e):[e]).forEach(n=>{t.push(k.relative(this.watchPath,n).split(Aa))}),t}filterDir(e){if(this.hasGlob){let t=this.getDirParts(this.checkGlobSymlink(e)),r=!1;this.unmatchedGlob=!this.dirParts.some(n=>n.every((o,i)=>(o===Ia&&(r=!0),r||!t[0][i]||Yt(o,t[0][i],Xt))))}return!this.unmatchedGlob&&this.fsw._isntIgnored(this.entryPath(e),e.stats)}},et=class extends la{constructor(e){super();let t={};e&&Object.assign(t,e),this._watched=new Map,this._closers=new Map,this._ignoredPaths=new Set,this._throttled=new Map,this._symlinkPaths=new Map,this._streams=new Set,this.closed=!1,ee(t,"persistent")&&(t.persistent=!0),ee(t,"ignoreInitial")&&(t.ignoreInitial=!1),ee(t,"ignorePermissionErrors")&&(t.ignorePermissionErrors=!1),ee(t,"interval")&&(t.interval=100),ee(t,"binaryInterval")&&(t.binaryInterval=300),ee(t,"disableGlobbing")&&(t.disableGlobbing=!1),t.enableBinaryInterval=t.binaryInterval!==t.interval,ee(t,"useFsEvents")&&(t.useFsEvents=!t.usePolling),Xr.canUse()||(t.useFsEvents=!1),ee(t,"usePolling")&&!t.useFsEvents&&(t.usePolling=Oa),Pa&&(t.usePolling=!0);let n=process.env.CHOKIDAR_USEPOLLING;if(n!==void 0){let c=n.toLowerCase();c==="false"||c==="0"?t.usePolling=!1:c==="true"||c==="1"?t.usePolling=!0:t.usePolling=!!c}let o=process.env.CHOKIDAR_INTERVAL;o&&(t.interval=Number.parseInt(o,10)),ee(t,"atomic")&&(t.atomic=!t.usePolling&&!t.useFsEvents),t.atomic&&(this._pendingUnlinks=new Map),ee(t,"followSymlinks")&&(t.followSymlinks=!0),ee(t,"awaitWriteFinish")&&(t.awaitWriteFinish=!1),t.awaitWriteFinish===!0&&(t.awaitWriteFinish={});let i=t.awaitWriteFinish;i&&(i.stabilityThreshold||(i.stabilityThreshold=2e3),i.pollInterval||(i.pollInterval=100),this._pendingWrites=new Map),t.ignored&&(t.ignored=Zt(t.ignored));let a=0;this._emitReady=()=>{a++,a>=this._readyCount&&(this._emitReady=ka,this._readyEmitted=!0,process.nextTick(()=>this.emit(_a)))},this._emitRaw=(...c)=>this.emit(ma,...c),this._readyEmitted=!1,this.options=t,t.useFsEvents?this._fsEventsHandler=new Xr(this):this._nodeFsHandler=new pa(this),Object.freeze(t)}add(e,t,r){let{cwd:n,disableGlobbing:o}=this.options;this.closed=!1;let i=Jr(e);return n&&(i=i.map(a=>{let c=Da(a,n);return o||!Gt(a)?c:ha(c)})),i=i.filter(a=>a.startsWith(zt)?(this._ignoredPaths.add(a.slice(1)),!1):(this._ignoredPaths.delete(a),this._ignoredPaths.delete(a+Vt),this._userIgnored=void 0,!0)),this.options.useFsEvents&&this._fsEventsHandler?(this._readyCount||(this._readyCount=i.length),this.options.persistent&&(this._readyCount+=i.length),i.forEach(a=>this._fsEventsHandler._addToFsEvents(a))):(this._readyCount||(this._readyCount=0),this._readyCount+=i.length,Promise.all(i.map(async a=>{let c=await this._nodeFsHandler._addToNodeFs(a,!r,0,0,t);return c&&this._emitReady(),c})).then(a=>{this.closed||a.filter(c=>c).forEach(c=>{this.add(k.dirname(c),k.basename(t||c))})})),this}unwatch(e){if(this.closed)return this;let t=Jr(e),{cwd:r}=this.options;return t.forEach(n=>{!k.isAbsolute(n)&&!this._closers.has(n)&&(r&&(n=k.join(r,n)),n=k.resolve(n)),this._closePath(n),this._ignoredPaths.add(n),this._watched.has(n)&&this._ignoredPaths.add(n+Vt),this._userIgnored=void 0}),this}close(){if(this.closed)return this._closePromise;this.closed=!0,this.removeAllListeners();let e=[];return this._closers.forEach(t=>t.forEach(r=>{let n=r();n instanceof Promise&&e.push(n)})),this._streams.forEach(t=>t.destroy()),this._userIgnored=void 0,this._readyCount=0,this._readyEmitted=!1,this._watched.forEach(t=>t.dispose()),["closers","watched","streams","symlinkPaths","throttled"].forEach(t=>{this[`_${t}`].clear()}),this._closePromise=e.length?Promise.all(e).then(()=>{}):Promise.resolve(),this._closePromise}getWatched(){let e={};return this._watched.forEach((t,r)=>{let n=this.options.cwd?k.relative(this.options.cwd,r):r;e[n||rn]=t.getChildren().sort()}),e}emitWithAll(e,t){this.emit(...t),e!==Kt&&this.emit(qt,...t)}async _emit(e,t,r,n,o){if(this.closed)return;let i=this.options;Na&&(t=k.normalize(t)),i.cwd&&(t=k.relative(i.cwd,t));let a=[e,t];o!==void 0?a.push(r,n,o):n!==void 0?a.push(r,n):r!==void 0&&a.push(r);let c=i.awaitWriteFinish,u;if(c&&(u=this._pendingWrites.get(t)))return u.lastChange=new Date,this;if(i.atomic){if(e===Qr)return this._pendingUnlinks.set(t,a),setTimeout(()=>{this._pendingUnlinks.forEach((f,d)=>{this.emit(...f),this.emit(qt,...f),this._pendingUnlinks.delete(d)})},typeof i.atomic=="number"?i.atomic:100),this;e===Je&&this._pendingUnlinks.has(t)&&(e=a[0]=Ne,this._pendingUnlinks.delete(t))}if(c&&(e===Je||e===Ne)&&this._readyEmitted){let f=(d,l)=>{d?(e=a[0]=Kt,a[1]=d,this.emitWithAll(e,a)):l&&(a.length>2?a[2]=l:a.push(l),this.emitWithAll(e,a))};return this._awaitWriteFinish(t,c.stabilityThreshold,e,f),this}if(e===Ne&&!this._throttle(Ne,t,50))return this;if(i.alwaysStat&&r===void 0&&(e===Je||e===Ea||e===Ne)){let f=i.cwd?k.join(i.cwd,t):t,d;try{d=await La(f)}catch{}if(!d||this.closed)return;a.push(d)}return this.emitWithAll(e,a),this}_handleError(e){let t=e&&e.code;return e&&t!=="ENOENT"&&t!=="ENOTDIR"&&(!this.options.ignorePermissionErrors||t!=="EPERM"&&t!=="EACCES")&&this.emit(Kt,e),e||this.closed}_throttle(e,t,r){this._throttled.has(e)||this._throttled.set(e,new Map);let n=this._throttled.get(e),o=n.get(t);if(o)return o.count++,!1;let i,a=()=>{let u=n.get(t),f=u?u.count:0;return n.delete(t),clearTimeout(i),u&&clearTimeout(u.timeoutObject),f};i=setTimeout(a,r);let c={timeoutObject:i,clear:a,count:0};return n.set(t,c),c}_incrReadyCount(){return this._readyCount++}_awaitWriteFinish(e,t,r,n){let o,i=e;this.options.cwd&&!k.isAbsolute(e)&&(i=k.join(this.options.cwd,e));let a=new Date,c=u=>{ts.stat(i,(f,d)=>{if(f||!this._pendingWrites.has(e)){f&&f.code!=="ENOENT"&&n(f);return}let l=Number(new Date);u&&d.size!==u.size&&(this._pendingWrites.get(e).lastChange=l);let m=this._pendingWrites.get(e);l-m.lastChange>=t?(this._pendingWrites.delete(e),n(void 0,d)):o=setTimeout(c,this.options.awaitWriteFinish.pollInterval,d)})};this._pendingWrites.has(e)||(this._pendingWrites.set(e,{lastChange:a,cancelWait:()=>(this._pendingWrites.delete(e),clearTimeout(o),r)}),o=setTimeout(c,this.options.awaitWriteFinish.pollInterval))}_getGlobIgnored(){return[...this._ignoredPaths.values()]}_isIgnored(e,t){if(this.options.atomic&&Sa.test(e))return!0;if(!this._userIgnored){let{cwd:r}=this.options,n=this.options.ignored,o=n&&n.map(tn(r)),i=Zt(o).filter(c=>typeof c===ss&&!Gt(c)).map(c=>c+Vt),a=this._getGlobIgnored().map(tn(r)).concat(o,i);this._userIgnored=Yt(a,void 0,Xt)}return this._userIgnored([e,t])}_isntIgnored(e,t){return!this._isIgnored(e,t)}_getWatchHelpers(e,t){let r=t||this.options.disableGlobbing||!Gt(e)?e:fa(e),n=this.options.followSymlinks;return new es(e,r,n,this)}_getWatchedDir(e){this._boundRemove||(this._boundRemove=this._remove.bind(this));let t=k.resolve(e);return this._watched.has(t)||this._watched.set(t,new Jt(t,this._boundRemove)),this._watched.get(t)}_hasReadPermissions(e){if(this.options.ignorePermissionErrors)return!0;let r=(e&&Number.parseInt(e.mode,10))&511;return!!(4&Number.parseInt(r.toString(8)[0],10))}_remove(e,t,r){let n=k.join(e,t),o=k.resolve(n);if(r=r??(this._watched.has(n)||this._watched.has(o)),!this._throttle("remove",n,100))return;!r&&!this.options.useFsEvents&&this._watched.size===1&&this.add(e,t,!0),this._getWatchedDir(n).getChildren().forEach(l=>this._remove(n,l));let c=this._getWatchedDir(e),u=c.has(t);c.remove(t),this._symlinkPaths.has(o)&&this._symlinkPaths.delete(o);let f=n;if(this.options.cwd&&(f=k.relative(this.options.cwd,n)),this.options.awaitWriteFinish&&this._pendingWrites.has(f)&&this._pendingWrites.get(f).cancelWait()===Je)return;this._watched.delete(n),this._watched.delete(o);let d=r?ga:Qr;u&&!this._isIgnored(n)&&this._emit(d,n),this.options.useFsEvents||this._closePath(n)}_closePath(e){this._closeFile(e);let t=k.dirname(e);this._getWatchedDir(t).remove(k.basename(e))}_closeFile(e){let t=this._closers.get(e);t&&(t.forEach(r=>r()),this._closers.delete(e))}_addPathCloser(e,t){if(!t)return;let r=this._closers.get(e);r||(r=[],this._closers.set(e,r)),r.push(t)}_readdirp(e,t){if(this.closed)return;let r={type:qt,alwaysStat:!0,lstat:!0,...t},n=ua(e,r);return this._streams.add(n),n.once(ya,()=>{n=void 0}),n.once(wa,()=>{n&&(this._streams.delete(n),n=void 0)}),n}};rs.FSWatcher=et;var Ua=(s,e)=>{let t=new et(e);return t.add(s),t};rs.watch=Ua});import"only-server";import"../common/index.mjs";var un=vn(an(),1);import{existsSync as ln,promises as Wa}from"node:fs";import{basename as is,dirname as tt,join as cn,relative as st}from"node:path";import{build as Ba}from"esbuild";import{jwtDecode as Ga}from"jwt-decode";import{Issuer as qa,custom as Ka}from"openid-client";import{ExternalTaskWorker as ja}from"@5minds/processcube_engine_client";import{Logger as Va}from"@5minds/processcube_engine_sdk";import{EngineClient as Ma}from"@5minds/processcube_engine_client";var ns=process.env.PROCESSCUBE_ENGINE_URL??"http://localhost:10560",$=new Ma(ns);var Ya={token:"ZHVtbXlfdG9rZW4=",userId:"dummy_token"},za=.85,rt=["external_task.ts","external_task.js"],J=new Va("processcube_app_sdk:external_task_adapter"),as=process.env.PROCESSCUBE_AUTHORITY_URL!==void 0,ue={};async function fn(s){if(Ka.setHttpOptionsDefaults({timeout:1e5}),s&&!ln(s))throw new Error(`Invalid customExternalTasksDirPath. The given path '${s}' does not exist`);let e=tc(s);(0,un.watch)(e).on("add",async t=>{if(!rt.includes(is(t)))return;await dn(t,e);let r=tt(t),n=st(e,r),o=nt(n);J.info(`Started external task ${ue[t].workerId} for topic ${o}`)}).on("change",async t=>{if(!rt.includes(is(t)))return;await Xa(t,e);let r=tt(t),n=st(e,r),o=nt(n);J.info(`Restarted external task ${ue[t].workerId} for topic ${o}`)}).on("unlink",async t=>{if(!rt.includes(is(t)))return;hn(t);let r=tt(t),n=st(e,r),o=nt(n);J.info(`Stopped external task ${ue[t].workerId} for topic '${o}'`,{reason:`External Task for topic '${o}' was removed`,workerId:ue[t].workerId,topic:o}),delete ue[t]}).on("error",t=>J.info(`Watcher error: ${t}`))}async function dn(s,e,t){let r=tt(s);if(!Qa(r)){J.error(`Could not find external task file in directory '${r}'`);return}let o=await Za(s),i=await Ja(o,s);if(i.default===void 0){J.info(`External task file recognized at ${s}. Please export a default handler function. For more information see https://processcube.io/docs/app-sdk/samples/nextjs/external-task-adapter-with-nextjs#external-tasks-entwickeln`);return}let a=await pn(),c=_n(a),u=st(e,r),f=nt(u),d=i.default,l={identity:c,...t,...i?.config},m=new ja(ns,f,d,l);m.onWorkerError((y,R,S)=>{J.error(`Intercepted "${y}"-type error: ${R.message}`,{err:R,type:y,externalTask:S})}),m.start(),await os(a,m),ue[s]=m}async function Xa(s,e){let t=ue[s]?.workerId;hn(s),await dn(s,e,{workerId:t})}function hn(s){let e=ue[s];e&&(e.stop(),e.dispose())}async function Qa(s){let t=(await Wa.readdir(s)).filter(r=>rt.includes(r));if(t.length===0)return null;if(t.length>1)throw new Error(`Found more than one external task file in directory '${s}'`);return t[0]}async function pn(){if(!as)return null;if(!process.env.PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_ID||!process.env.PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_SECRET){let r=new Error("Required environment variables PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_ID and PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_SECRET are missing. For help, please refer to our documentation on environment variables at: https://processcube.io/docs/app-sdk/samples/nextjs/external-task-adapter-with-nextjs#authority");throw J.error("Required environment variables PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_ID and PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_SECRET are missing",{err:r}),r}let s=await qa.discover(process.env.PROCESSCUBE_AUTHORITY_URL);return await new s.Client({client_id:process.env.PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_ID,client_secret:process.env.PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_SECRET}).grant({grant_type:"client_credentials",scope:"engine_etw"})}function _n(s){if(!as||s===null)return Ya;let e=s.access_token,t=Ga(e);return{token:s.access_token,userId:t.sub}}async function os(s,e,t=5){try{if(!as||s===null||!e.pollingIsActive)return;let n=await ec(s)*za*1e3;setTimeout(async()=>{if(!e.pollingIsActive)return;let o=await pn(),i=_n(o);e.identity=i,await os(o,e)},n)}catch(r){if(t===0)throw r;J.error(`Could not refresh identity for external task worker ${e.workerId}`,{err:r,workerId:e.workerId,retryCount:t});let n=2*1e3;setTimeout(async()=>await os(s,e,t-1),n)}}async function Za(s){let e=await Ba({entryPoints:[s],write:!1,bundle:!0,platform:"node",target:"node18",format:"cjs",external:["@opentelemetry/api"]});if(e.errors.length>0)throw J.error(`Could not transpile file at '${s}'`,{errors:e.errors}),new Error(`Could not transpile file at '${s}'`);return e.warnings.length>0&&J.warn(`Transpiled file at '${s}' with warnings`,{warnings:e.warnings}),e.outputFiles[0].text}async function Ja(s,e){try{var t=module.constructor,r=new t;return r._compile(s,e),r.exports}catch(n){throw J.error("Could not require module from string",{err:n}),n}}async function ec(s){let e=s.expires_in;if(!e&&s.expires_at&&(e=Math.floor(s.expires_at-Date.now()/1e3)),e===void 0)throw new Error("Could not determine the time until the access token for external task workers expires");return e}function nt(s){return s.replace(/^\.\/+|\([^)]+\)|^\/*|\/*$/g,"").replace(/[\/]{2,}/g,"/")}function tc(s){let e,t=[s,cn(process.cwd(),"app"),cn(process.cwd(),"src","app")];for(let r of t)if(r&&ln(r)){e=r;break}if(!e)throw new Error("Could not find external tasks directory");return e}function tl(){return $}import{getToken as En}from"next-auth/jwt";import{ResponseCookies as sc}from"next/dist/compiled/@edge-runtime/cookies";import{cookies as it,headers as gn}from"next/headers";var rc=process.env.NEXTAUTH_URL?.startsWith("https://"),mn=`${rc?"__Secure-":""}next-auth.session-token`;async function ol(){let s=await En({req:{cookies:it(),headers:gn()}});if(s?.expiresAt&&Date.now()>=s.expiresAt*1e3){let t=await fetch(`${process.env.NEXTAUTH_URL}/api/auth/session`,{method:"GET",headers:{"Content-Type":"application/json",cookie:it().toString()}}),r=new sc(t.headers),n=r.get(mn);if(n){let o=!1;try{it().set(mn,n.value,{...n})}catch{o=!0}if(s=await En({req:{cookies:o?r:it(),headers:gn()}}),s?.error)throw s.error}}if(!s?.accessToken||!s?.sub)throw new Error("AccessToken or Sub could not be determined!");return{token:s?.accessToken,userId:s?.sub}}import{DataModels as nc}from"@5minds/processcube_engine_client";async function ul(s){return await $.processInstances.query({...s?.query,state:nc.ProcessInstances.ProcessInstanceState.running},s?.options)}import{DataModels as ae}from"@5minds/processcube_engine_client";import{mapUserTask as yn,mapUserTaskList as _e}from"../common/index.mjs";async function gl(s={},e){let{correlationId:t,processInstanceId:r,flowNodeId:n}=s;return new Promise(async(o,i)=>{let a=await $.userTasks.onUserTaskWaiting(async u=>{let f=t!==void 0&&u.correlationId!==t,d=u.flowNodeInstanceId===void 0,l=r!==void 0&&u.processInstanceId!==r,m=n!==void 0&&u.flowNodeId!==n;if(f||d||l||m)return;let y=await oc(u.flowNodeInstanceId,{identity:e});return $.notification.removeSubscription(a,e),y===null?i(new Error(`UserTask with instance ID "${u.flowNodeInstanceId}" does not exist.`)):o(y)},{identity:e}),c=await ic({correlationId:t,processInstanceId:r,flowNodeId:n,state:ae.FlowNodeInstances.FlowNodeInstanceState.suspended},{identity:e});c.userTasks.length>0&&($.notification.removeSubscription(a,e),o(c.userTasks[0]))})}async function ml(s,e={},t={},r){await $.userTasks.finishUserTask(s,t,r);let n={state:ae.FlowNodeInstances.FlowNodeInstanceState.suspended,...e},o=await $.userTasks.query(n,{identity:r});return yn(o.userTasks[0])}async function ic(...s){let e=await $.userTasks.query(...s);return _e(e)}async function yl(s){let e=await $.userTasks.query({state:ae.FlowNodeInstances.FlowNodeInstanceState.suspended},s);return _e(e)}async function wl(s,e){let t=await $.userTasks.query({processInstanceId:s,state:ae.FlowNodeInstances.FlowNodeInstanceState.suspended},e);return _e(t)}async function Rl(s,e){let t=await $.userTasks.query({flowNodeId:s,state:ae.FlowNodeInstances.FlowNodeInstanceState.suspended},e);return _e(t)}async function oc(s,e){let t=await $.userTasks.query({flowNodeInstanceId:s,state:ae.FlowNodeInstances.FlowNodeInstanceState.suspended},{...e,limit:1});return t.userTasks.length===0?null:yn(t.userTasks[0])}async function Al(s,e){let t=await $.userTasks.query({correlationId:s,state:ae.FlowNodeInstances.FlowNodeInstanceState.suspended},e);return _e(t)}async function Sl(s,e){let t=await $.userTasks.query({state:ae.FlowNodeInstances.FlowNodeInstanceState.suspended},{identity:s,...e}),r=t.userTasks.filter(n=>n.actualOwnerId===s.userId);return t.userTasks=r,_e(t)}async function Tl(s,e){let t=await $.userTasks.query({state:ae.FlowNodeInstances.FlowNodeInstanceState.suspended},{identity:s,...e}),r=t.userTasks.filter(n=>n.assignedUserIds?.includes(s.userId));return t.userTasks=r,_e(t)}import{PHASE_DEVELOPMENT_SERVER as ac,PHASE_PRODUCTION_SERVER as cc}from"next/dist/shared/lib/constants";var wn=!1;function Hl(s={}){let{applicationSdk:e,...t}=s;return async(r,n)=>{let o=r===ac||r===cc;return e?.useExternalTasks&&o&&!wn&&(wn=!0,await fn(e?.customExternalTasksDirPath)),t}}import{revalidatePath as lc}from"next/cache";import{redirect as uc}from"next/navigation";function Wl(s){lc(s),uc(s)}async function ql(...s){return await $.processModels.startProcessInstance(...s)}async function Vl(...s){await $.userTasks.finishUserTask(...s)}export{Vl as finishUserTask,ml as finishUserTaskAndGetNext,ul as getActiveProcessInstances,Tl as getAssignedUserTasksByIdentity,tl as getEngineClient,ol as getIdentity,Sl as getReservedUserTasksByIdentity,ic as getUserTasks,oc as getWaitingUserTaskByFlowNodeInstanceId,yl as getWaitingUserTasks,Al as getWaitingUserTasksByCorrelationId,Rl as getWaitingUserTasksByFlowNodeId,wl as getWaitingUserTasksByProcessInstanceId,Wl as navigateToUrl,ql as startProcess,gl as waitForUserTask,Hl as withApplicationSdk};
1
+ var xn=Object.create;var ls=Object.defineProperty;var bn=Object.getOwnPropertyDescriptor;var In=Object.getOwnPropertyNames;var vn=Object.getPrototypeOf,kn=Object.prototype.hasOwnProperty;var H=(t=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(t,{get:(e,s)=>(typeof require<"u"?require:e)[s]}):t)(function(t){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+t+'" is not supported')});var v=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports);var Nn=(t,e,s,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of In(e))!kn.call(t,n)&&n!==s&&ls(t,n,{get:()=>e[n],enumerable:!(r=bn(e,n))||r.enumerable});return t};var Pn=(t,e,s)=>(s=t!=null?xn(vn(t)):{},Nn(e||!t||!t.__esModule?ls(s,"default",{value:t,enumerable:!0}):s,t));var we=v((dc,ps)=>{"use strict";var On=H("path"),re="\\\\/",us=`[^${re}]`,ne="\\.",Ln="\\+",Hn="\\?",Fe="\\/",Dn="(?=.)",fs="[^/]",ot=`(?:${Fe}|$)`,hs=`(?:^|${Fe})`,at=`${ne}{1,2}${ot}`,Fn=`(?!${ne})`,$n=`(?!${hs}${at})`,Mn=`(?!${ne}{0,1}${ot})`,Un=`(?!${at})`,Wn=`[^.${Fe}]`,Bn=`${fs}*?`,ds={DOT_LITERAL:ne,PLUS_LITERAL:Ln,QMARK_LITERAL:Hn,SLASH_LITERAL:Fe,ONE_CHAR:Dn,QMARK:fs,END_ANCHOR:ot,DOTS_SLASH:at,NO_DOT:Fn,NO_DOTS:$n,NO_DOT_SLASH:Mn,NO_DOTS_SLASH:Un,QMARK_NO_DOT:Wn,STAR:Bn,START_ANCHOR:hs},Gn={...ds,SLASH_LITERAL:`[${re}]`,QMARK:us,STAR:`${us}*?`,DOTS_SLASH:`${ne}{1,2}(?:[${re}]|$)`,NO_DOT:`(?!${ne})`,NO_DOTS:`(?!(?:^|[${re}])${ne}{1,2}(?:[${re}]|$))`,NO_DOT_SLASH:`(?!${ne}{0,1}(?:[${re}]|$))`,NO_DOTS_SLASH:`(?!${ne}{1,2}(?:[${re}]|$))`,QMARK_NO_DOT:`[^.${re}]`,START_ANCHOR:`(?:^|[${re}])`,END_ANCHOR:`(?:[${re}]|$)`},qn={alnum:"a-zA-Z0-9",alpha:"a-zA-Z",ascii:"\\x00-\\x7F",blank:" \\t",cntrl:"\\x00-\\x1F\\x7F",digit:"0-9",graph:"\\x21-\\x7E",lower:"a-z",print:"\\x20-\\x7E ",punct:"\\-!\"#$%&'()\\*+,./:;<=>?@[\\]^_`{|}~",space:" \\t\\r\\n\\v\\f",upper:"A-Z",word:"A-Za-z0-9_",xdigit:"A-Fa-f0-9"};ps.exports={MAX_LENGTH:1024*64,POSIX_REGEX_SOURCE:qn,REGEX_BACKSLASH:/\\(?![*+?^${}(|)[\]])/g,REGEX_NON_SPECIAL_CHARS:/^[^@![\].,$*+?^{}()|\\/]+/,REGEX_SPECIAL_CHARS:/[-*+?.^${}(|)[\]]/,REGEX_SPECIAL_CHARS_BACKREF:/(\\?)((\W)(\3*))/g,REGEX_SPECIAL_CHARS_GLOBAL:/([-*+?.^${}(|)[\]])/g,REGEX_REMOVE_BACKSLASH:/(?:\[.*?[^\\]\]|\\(?=.))/g,REPLACEMENTS:{"***":"*","**/**":"**","**/**/**":"**"},CHAR_0:48,CHAR_9:57,CHAR_UPPERCASE_A:65,CHAR_LOWERCASE_A:97,CHAR_UPPERCASE_Z:90,CHAR_LOWERCASE_Z:122,CHAR_LEFT_PARENTHESES:40,CHAR_RIGHT_PARENTHESES:41,CHAR_ASTERISK:42,CHAR_AMPERSAND:38,CHAR_AT:64,CHAR_BACKWARD_SLASH:92,CHAR_CARRIAGE_RETURN:13,CHAR_CIRCUMFLEX_ACCENT:94,CHAR_COLON:58,CHAR_COMMA:44,CHAR_DOT:46,CHAR_DOUBLE_QUOTE:34,CHAR_EQUAL:61,CHAR_EXCLAMATION_MARK:33,CHAR_FORM_FEED:12,CHAR_FORWARD_SLASH:47,CHAR_GRAVE_ACCENT:96,CHAR_HASH:35,CHAR_HYPHEN_MINUS:45,CHAR_LEFT_ANGLE_BRACKET:60,CHAR_LEFT_CURLY_BRACE:123,CHAR_LEFT_SQUARE_BRACKET:91,CHAR_LINE_FEED:10,CHAR_NO_BREAK_SPACE:160,CHAR_PERCENT:37,CHAR_PLUS:43,CHAR_QUESTION_MARK:63,CHAR_RIGHT_ANGLE_BRACKET:62,CHAR_RIGHT_CURLY_BRACE:125,CHAR_RIGHT_SQUARE_BRACKET:93,CHAR_SEMICOLON:59,CHAR_SINGLE_QUOTE:39,CHAR_SPACE:32,CHAR_TAB:9,CHAR_UNDERSCORE:95,CHAR_VERTICAL_LINE:124,CHAR_ZERO_WIDTH_NOBREAK_SPACE:65279,SEP:On.sep,extglobChars(t){return{"!":{type:"negate",open:"(?:(?!(?:",close:`))${t.STAR})`},"?":{type:"qmark",open:"(?:",close:")?"},"+":{type:"plus",open:"(?:",close:")+"},"*":{type:"star",open:"(?:",close:")*"},"@":{type:"at",open:"(?:",close:")"}}},globChars(t){return t===!0?Gn:ds}}});var $e=v(Y=>{"use strict";var Kn=H("path"),Vn=process.platform==="win32",{REGEX_BACKSLASH:jn,REGEX_REMOVE_BACKSLASH:Yn,REGEX_SPECIAL_CHARS:zn,REGEX_SPECIAL_CHARS_GLOBAL:Xn}=we();Y.isObject=t=>t!==null&&typeof t=="object"&&!Array.isArray(t);Y.hasRegexChars=t=>zn.test(t);Y.isRegexChar=t=>t.length===1&&Y.hasRegexChars(t);Y.escapeRegex=t=>t.replace(Xn,"\\$1");Y.toPosixSlashes=t=>t.replace(jn,"/");Y.removeBackslashes=t=>t.replace(Yn,e=>e==="\\"?"":e);Y.supportsLookbehinds=()=>{let t=process.version.slice(1).split(".").map(Number);return t.length===3&&t[0]>=9||t[0]===8&&t[1]>=10};Y.isWindows=t=>t&&typeof t.windows=="boolean"?t.windows:Vn===!0||Kn.sep==="\\";Y.escapeLast=(t,e,s)=>{let r=t.lastIndexOf(e,s);return r===-1?t:t[r-1]==="\\"?Y.escapeLast(t,e,r-1):`${t.slice(0,r)}\\${t.slice(r)}`};Y.removePrefix=(t,e={})=>{let s=t;return s.startsWith("./")&&(s=s.slice(2),e.prefix="./"),s};Y.wrapOutput=(t,e={},s={})=>{let r=s.contains?"":"^",n=s.contains?"":"$",o=`${r}(?:${t})${n}`;return e.negated===!0&&(o=`(?:^(?!${o}).*$)`),o}});var As=v((_c,ws)=>{"use strict";var _s=$e(),{CHAR_ASTERISK:ct,CHAR_AT:Qn,CHAR_BACKWARD_SLASH:Ae,CHAR_COMMA:Zn,CHAR_DOT:lt,CHAR_EXCLAMATION_MARK:ut,CHAR_FORWARD_SLASH:Rs,CHAR_LEFT_CURLY_BRACE:ft,CHAR_LEFT_PARENTHESES:ht,CHAR_LEFT_SQUARE_BRACKET:Jn,CHAR_PLUS:ei,CHAR_QUESTION_MARK:Es,CHAR_RIGHT_CURLY_BRACE:ti,CHAR_RIGHT_PARENTHESES:gs,CHAR_RIGHT_SQUARE_BRACKET:si}=we(),ms=t=>t===Rs||t===Ae,ys=t=>{t.isPrefix!==!0&&(t.depth=t.isGlobstar?1/0:1)},ri=(t,e)=>{let s=e||{},r=t.length-1,n=s.parts===!0||s.scanToEnd===!0,o=[],i=[],a=[],c=t,u=-1,f=0,h=0,l=!1,m=!1,y=!1,w=!1,S=!1,x=!1,D=!1,$=!1,ee=!1,q=!1,ae=0,K,A,I={value:"",depth:0,isGlob:!1},G=()=>u>=r,_=()=>c.charCodeAt(u+1),L=()=>(K=A,c.charCodeAt(++u));for(;u<r;){A=L();let V;if(A===Ae){D=I.backslashes=!0,A=L(),A===ft&&(x=!0);continue}if(x===!0||A===ft){for(ae++;G()!==!0&&(A=L());){if(A===Ae){D=I.backslashes=!0,L();continue}if(A===ft){ae++;continue}if(x!==!0&&A===lt&&(A=L())===lt){if(l=I.isBrace=!0,y=I.isGlob=!0,q=!0,n===!0)continue;break}if(x!==!0&&A===Zn){if(l=I.isBrace=!0,y=I.isGlob=!0,q=!0,n===!0)continue;break}if(A===ti&&(ae--,ae===0)){x=!1,l=I.isBrace=!0,q=!0;break}}if(n===!0)continue;break}if(A===Rs){if(o.push(u),i.push(I),I={value:"",depth:0,isGlob:!1},q===!0)continue;if(K===lt&&u===f+1){f+=2;continue}h=u+1;continue}if(s.noext!==!0&&(A===ei||A===Qn||A===ct||A===Es||A===ut)===!0&&_()===ht){if(y=I.isGlob=!0,w=I.isExtglob=!0,q=!0,A===ut&&u===f&&(ee=!0),n===!0){for(;G()!==!0&&(A=L());){if(A===Ae){D=I.backslashes=!0,A=L();continue}if(A===gs){y=I.isGlob=!0,q=!0;break}}continue}break}if(A===ct){if(K===ct&&(S=I.isGlobstar=!0),y=I.isGlob=!0,q=!0,n===!0)continue;break}if(A===Es){if(y=I.isGlob=!0,q=!0,n===!0)continue;break}if(A===Jn){for(;G()!==!0&&(V=L());){if(V===Ae){D=I.backslashes=!0,L();continue}if(V===si){m=I.isBracket=!0,y=I.isGlob=!0,q=!0;break}}if(n===!0)continue;break}if(s.nonegate!==!0&&A===ut&&u===f){$=I.negated=!0,f++;continue}if(s.noparen!==!0&&A===ht){if(y=I.isGlob=!0,n===!0){for(;G()!==!0&&(A=L());){if(A===ht){D=I.backslashes=!0,A=L();continue}if(A===gs){q=!0;break}}continue}break}if(y===!0){if(q=!0,n===!0)continue;break}}s.noext===!0&&(w=!1,y=!1);let P=c,ce="",d="";f>0&&(ce=c.slice(0,f),c=c.slice(f),h-=f),P&&y===!0&&h>0?(P=c.slice(0,h),d=c.slice(h)):y===!0?(P="",d=c):P=c,P&&P!==""&&P!=="/"&&P!==c&&ms(P.charCodeAt(P.length-1))&&(P=P.slice(0,-1)),s.unescape===!0&&(d&&(d=_s.removeBackslashes(d)),P&&D===!0&&(P=_s.removeBackslashes(P)));let p={prefix:ce,input:t,start:f,base:P,glob:d,isBrace:l,isBracket:m,isGlob:y,isExtglob:w,isGlobstar:S,negated:$,negatedExtglob:ee};if(s.tokens===!0&&(p.maxDepth=0,ms(A)||i.push(I),p.tokens=i),s.parts===!0||s.tokens===!0){let V;for(let b=0;b<o.length;b++){let te=V?V+1:f,se=o[b],z=t.slice(te,se);s.tokens&&(b===0&&f!==0?(i[b].isPrefix=!0,i[b].value=ce):i[b].value=z,ys(i[b]),p.maxDepth+=i[b].depth),(b!==0||z!=="")&&a.push(z),V=se}if(V&&V+1<t.length){let b=t.slice(V+1);a.push(b),s.tokens&&(i[i.length-1].value=b,ys(i[i.length-1]),p.maxDepth+=i[i.length-1].depth)}p.slashes=o,p.parts=a}return p};ws.exports=ri});var Cs=v((Ec,Ts)=>{"use strict";var Me=we(),X=$e(),{MAX_LENGTH:Ue,POSIX_REGEX_SOURCE:ni,REGEX_NON_SPECIAL_CHARS:ii,REGEX_SPECIAL_CHARS_BACKREF:oi,REPLACEMENTS:Ss}=Me,ai=(t,e)=>{if(typeof e.expandRange=="function")return e.expandRange(...t,e);t.sort();let s=`[${t.join("-")}]`;try{new RegExp(s)}catch{return t.map(n=>X.escapeRegex(n)).join("..")}return s},Ee=(t,e)=>`Missing ${t}: "${e}" - use "\\\\${e}" to match literal characters`,dt=(t,e)=>{if(typeof t!="string")throw new TypeError("Expected a string");t=Ss[t]||t;let s={...e},r=typeof s.maxLength=="number"?Math.min(Ue,s.maxLength):Ue,n=t.length;if(n>r)throw new SyntaxError(`Input length: ${n}, exceeds maximum allowed length: ${r}`);let o={type:"bos",value:"",output:s.prepend||""},i=[o],a=s.capture?"":"?:",c=X.isWindows(e),u=Me.globChars(c),f=Me.extglobChars(u),{DOT_LITERAL:h,PLUS_LITERAL:l,SLASH_LITERAL:m,ONE_CHAR:y,DOTS_SLASH:w,NO_DOT:S,NO_DOT_SLASH:x,NO_DOTS_SLASH:D,QMARK:$,QMARK_NO_DOT:ee,STAR:q,START_ANCHOR:ae}=u,K=g=>`(${a}(?:(?!${ae}${g.dot?w:h}).)*?)`,A=s.dot?"":S,I=s.dot?$:ee,G=s.bash===!0?K(s):q;s.capture&&(G=`(${G})`),typeof s.noext=="boolean"&&(s.noextglob=s.noext);let _={input:t,index:-1,start:0,dot:s.dot===!0,consumed:"",output:"",prefix:"",backtrack:!1,negated:!1,brackets:0,braces:0,parens:0,quotes:0,globstar:!1,tokens:i};t=X.removePrefix(t,_),n=t.length;let L=[],P=[],ce=[],d=o,p,V=()=>_.index===n-1,b=_.peek=(g=1)=>t[_.index+g],te=_.advance=()=>t[++_.index]||"",se=()=>t.slice(_.index+1),z=(g="",O=0)=>{_.consumed+=g,_.index+=O},Oe=g=>{_.output+=g.output!=null?g.output:g.value,z(g.value)},Tn=()=>{let g=1;for(;b()==="!"&&(b(2)!=="("||b(3)==="?");)te(),_.start++,g++;return g%2===0?!1:(_.negated=!0,_.start++,!0)},Le=g=>{_[g]++,ce.push(g)},le=g=>{_[g]--,ce.pop()},C=g=>{if(d.type==="globstar"){let O=_.braces>0&&(g.type==="comma"||g.type==="brace"),E=g.extglob===!0||L.length&&(g.type==="pipe"||g.type==="paren");g.type!=="slash"&&g.type!=="paren"&&!O&&!E&&(_.output=_.output.slice(0,-d.output.length),d.type="star",d.value="*",d.output=G,_.output+=d.output)}if(L.length&&g.type!=="paren"&&(L[L.length-1].inner+=g.value),(g.value||g.output)&&Oe(g),d&&d.type==="text"&&g.type==="text"){d.value+=g.value,d.output=(d.output||"")+g.value;return}g.prev=d,i.push(g),d=g},He=(g,O)=>{let E={...f[O],conditions:1,inner:""};E.prev=d,E.parens=_.parens,E.output=_.output;let T=(s.capture?"(":"")+E.open;Le("parens"),C({type:g,value:O,output:_.output?"":y}),C({type:"paren",extglob:!0,value:te(),output:T}),L.push(E)},Cn=g=>{let O=g.close+(s.capture?")":""),E;if(g.type==="negate"){let T=G;if(g.inner&&g.inner.length>1&&g.inner.includes("/")&&(T=K(s)),(T!==G||V()||/^\)+$/.test(se()))&&(O=g.close=`)$))${T}`),g.inner.includes("*")&&(E=se())&&/^\.[^\\/.]+$/.test(E)){let F=dt(E,{...e,fastpaths:!1}).output;O=g.close=`)${F})${T})`}g.prev.type==="bos"&&(_.negatedExtglob=!0)}C({type:"paren",extglob:!0,value:p,output:O}),le("parens")};if(s.fastpaths!==!1&&!/(^[*!]|[/()[\]{}"])/.test(t)){let g=!1,O=t.replace(oi,(E,T,F,j,U,it)=>j==="\\"?(g=!0,E):j==="?"?T?T+j+(U?$.repeat(U.length):""):it===0?I+(U?$.repeat(U.length):""):$.repeat(F.length):j==="."?h.repeat(F.length):j==="*"?T?T+j+(U?G:""):G:T?E:`\\${E}`);return g===!0&&(s.unescape===!0?O=O.replace(/\\/g,""):O=O.replace(/\\+/g,E=>E.length%2===0?"\\\\":E?"\\":"")),O===t&&s.contains===!0?(_.output=t,_):(_.output=X.wrapOutput(O,_,e),_)}for(;!V();){if(p=te(),p==="\0")continue;if(p==="\\"){let E=b();if(E==="/"&&s.bash!==!0||E==="."||E===";")continue;if(!E){p+="\\",C({type:"text",value:p});continue}let T=/^\\+/.exec(se()),F=0;if(T&&T[0].length>2&&(F=T[0].length,_.index+=F,F%2!==0&&(p+="\\")),s.unescape===!0?p=te():p+=te(),_.brackets===0){C({type:"text",value:p});continue}}if(_.brackets>0&&(p!=="]"||d.value==="["||d.value==="[^")){if(s.posix!==!1&&p===":"){let E=d.value.slice(1);if(E.includes("[")&&(d.posix=!0,E.includes(":"))){let T=d.value.lastIndexOf("["),F=d.value.slice(0,T),j=d.value.slice(T+2),U=ni[j];if(U){d.value=F+U,_.backtrack=!0,te(),!o.output&&i.indexOf(d)===1&&(o.output=y);continue}}}(p==="["&&b()!==":"||p==="-"&&b()==="]")&&(p=`\\${p}`),p==="]"&&(d.value==="["||d.value==="[^")&&(p=`\\${p}`),s.posix===!0&&p==="!"&&d.value==="["&&(p="^"),d.value+=p,Oe({value:p});continue}if(_.quotes===1&&p!=='"'){p=X.escapeRegex(p),d.value+=p,Oe({value:p});continue}if(p==='"'){_.quotes=_.quotes===1?0:1,s.keepQuotes===!0&&C({type:"text",value:p});continue}if(p==="("){Le("parens"),C({type:"paren",value:p});continue}if(p===")"){if(_.parens===0&&s.strictBrackets===!0)throw new SyntaxError(Ee("opening","("));let E=L[L.length-1];if(E&&_.parens===E.parens+1){Cn(L.pop());continue}C({type:"paren",value:p,output:_.parens?")":"\\)"}),le("parens");continue}if(p==="["){if(s.nobracket===!0||!se().includes("]")){if(s.nobracket!==!0&&s.strictBrackets===!0)throw new SyntaxError(Ee("closing","]"));p=`\\${p}`}else Le("brackets");C({type:"bracket",value:p});continue}if(p==="]"){if(s.nobracket===!0||d&&d.type==="bracket"&&d.value.length===1){C({type:"text",value:p,output:`\\${p}`});continue}if(_.brackets===0){if(s.strictBrackets===!0)throw new SyntaxError(Ee("opening","["));C({type:"text",value:p,output:`\\${p}`});continue}le("brackets");let E=d.value.slice(1);if(d.posix!==!0&&E[0]==="^"&&!E.includes("/")&&(p=`/${p}`),d.value+=p,Oe({value:p}),s.literalBrackets===!1||X.hasRegexChars(E))continue;let T=X.escapeRegex(d.value);if(_.output=_.output.slice(0,-d.value.length),s.literalBrackets===!0){_.output+=T,d.value=T;continue}d.value=`(${a}${T}|${d.value})`,_.output+=d.value;continue}if(p==="{"&&s.nobrace!==!0){Le("braces");let E={type:"brace",value:p,output:"(",outputIndex:_.output.length,tokensIndex:_.tokens.length};P.push(E),C(E);continue}if(p==="}"){let E=P[P.length-1];if(s.nobrace===!0||!E){C({type:"text",value:p,output:p});continue}let T=")";if(E.dots===!0){let F=i.slice(),j=[];for(let U=F.length-1;U>=0&&(i.pop(),F[U].type!=="brace");U--)F[U].type!=="dots"&&j.unshift(F[U].value);T=ai(j,s),_.backtrack=!0}if(E.comma!==!0&&E.dots!==!0){let F=_.output.slice(0,E.outputIndex),j=_.tokens.slice(E.tokensIndex);E.value=E.output="\\{",p=T="\\}",_.output=F;for(let U of j)_.output+=U.output||U.value}C({type:"brace",value:p,output:T}),le("braces"),P.pop();continue}if(p==="|"){L.length>0&&L[L.length-1].conditions++,C({type:"text",value:p});continue}if(p===","){let E=p,T=P[P.length-1];T&&ce[ce.length-1]==="braces"&&(T.comma=!0,E="|"),C({type:"comma",value:p,output:E});continue}if(p==="/"){if(d.type==="dot"&&_.index===_.start+1){_.start=_.index+1,_.consumed="",_.output="",i.pop(),d=o;continue}C({type:"slash",value:p,output:m});continue}if(p==="."){if(_.braces>0&&d.type==="dot"){d.value==="."&&(d.output=h);let E=P[P.length-1];d.type="dots",d.output+=p,d.value+=p,E.dots=!0;continue}if(_.braces+_.parens===0&&d.type!=="bos"&&d.type!=="slash"){C({type:"text",value:p,output:h});continue}C({type:"dot",value:p,output:h});continue}if(p==="?"){if(!(d&&d.value==="(")&&s.noextglob!==!0&&b()==="("&&b(2)!=="?"){He("qmark",p);continue}if(d&&d.type==="paren"){let T=b(),F=p;if(T==="<"&&!X.supportsLookbehinds())throw new Error("Node.js v10 or higher is required for regex lookbehinds");(d.value==="("&&!/[!=<:]/.test(T)||T==="<"&&!/<([!=]|\w+>)/.test(se()))&&(F=`\\${p}`),C({type:"text",value:p,output:F});continue}if(s.dot!==!0&&(d.type==="slash"||d.type==="bos")){C({type:"qmark",value:p,output:ee});continue}C({type:"qmark",value:p,output:$});continue}if(p==="!"){if(s.noextglob!==!0&&b()==="("&&(b(2)!=="?"||!/[!=<:]/.test(b(3)))){He("negate",p);continue}if(s.nonegate!==!0&&_.index===0){Tn();continue}}if(p==="+"){if(s.noextglob!==!0&&b()==="("&&b(2)!=="?"){He("plus",p);continue}if(d&&d.value==="("||s.regex===!1){C({type:"plus",value:p,output:l});continue}if(d&&(d.type==="bracket"||d.type==="paren"||d.type==="brace")||_.parens>0){C({type:"plus",value:p});continue}C({type:"plus",value:l});continue}if(p==="@"){if(s.noextglob!==!0&&b()==="("&&b(2)!=="?"){C({type:"at",extglob:!0,value:p,output:""});continue}C({type:"text",value:p});continue}if(p!=="*"){(p==="$"||p==="^")&&(p=`\\${p}`);let E=ii.exec(se());E&&(p+=E[0],_.index+=E[0].length),C({type:"text",value:p});continue}if(d&&(d.type==="globstar"||d.star===!0)){d.type="star",d.star=!0,d.value+=p,d.output=G,_.backtrack=!0,_.globstar=!0,z(p);continue}let g=se();if(s.noextglob!==!0&&/^\([^?]/.test(g)){He("star",p);continue}if(d.type==="star"){if(s.noglobstar===!0){z(p);continue}let E=d.prev,T=E.prev,F=E.type==="slash"||E.type==="bos",j=T&&(T.type==="star"||T.type==="globstar");if(s.bash===!0&&(!F||g[0]&&g[0]!=="/")){C({type:"star",value:p,output:""});continue}let U=_.braces>0&&(E.type==="comma"||E.type==="brace"),it=L.length&&(E.type==="pipe"||E.type==="paren");if(!F&&E.type!=="paren"&&!U&&!it){C({type:"star",value:p,output:""});continue}for(;g.slice(0,3)==="/**";){let De=t[_.index+4];if(De&&De!=="/")break;g=g.slice(3),z("/**",3)}if(E.type==="bos"&&V()){d.type="globstar",d.value+=p,d.output=K(s),_.output=d.output,_.globstar=!0,z(p);continue}if(E.type==="slash"&&E.prev.type!=="bos"&&!j&&V()){_.output=_.output.slice(0,-(E.output+d.output).length),E.output=`(?:${E.output}`,d.type="globstar",d.output=K(s)+(s.strictSlashes?")":"|$)"),d.value+=p,_.globstar=!0,_.output+=E.output+d.output,z(p);continue}if(E.type==="slash"&&E.prev.type!=="bos"&&g[0]==="/"){let De=g[1]!==void 0?"|$":"";_.output=_.output.slice(0,-(E.output+d.output).length),E.output=`(?:${E.output}`,d.type="globstar",d.output=`${K(s)}${m}|${m}${De})`,d.value+=p,_.output+=E.output+d.output,_.globstar=!0,z(p+te()),C({type:"slash",value:"/",output:""});continue}if(E.type==="bos"&&g[0]==="/"){d.type="globstar",d.value+=p,d.output=`(?:^|${m}|${K(s)}${m})`,_.output=d.output,_.globstar=!0,z(p+te()),C({type:"slash",value:"/",output:""});continue}_.output=_.output.slice(0,-d.output.length),d.type="globstar",d.output=K(s),d.value+=p,_.output+=d.output,_.globstar=!0,z(p);continue}let O={type:"star",value:p,output:G};if(s.bash===!0){O.output=".*?",(d.type==="bos"||d.type==="slash")&&(O.output=A+O.output),C(O);continue}if(d&&(d.type==="bracket"||d.type==="paren")&&s.regex===!0){O.output=p,C(O);continue}(_.index===_.start||d.type==="slash"||d.type==="dot")&&(d.type==="dot"?(_.output+=x,d.output+=x):s.dot===!0?(_.output+=D,d.output+=D):(_.output+=A,d.output+=A),b()!=="*"&&(_.output+=y,d.output+=y)),C(O)}for(;_.brackets>0;){if(s.strictBrackets===!0)throw new SyntaxError(Ee("closing","]"));_.output=X.escapeLast(_.output,"["),le("brackets")}for(;_.parens>0;){if(s.strictBrackets===!0)throw new SyntaxError(Ee("closing",")"));_.output=X.escapeLast(_.output,"("),le("parens")}for(;_.braces>0;){if(s.strictBrackets===!0)throw new SyntaxError(Ee("closing","}"));_.output=X.escapeLast(_.output,"{"),le("braces")}if(s.strictSlashes!==!0&&(d.type==="star"||d.type==="bracket")&&C({type:"maybe_slash",value:"",output:`${m}?`}),_.backtrack===!0){_.output="";for(let g of _.tokens)_.output+=g.output!=null?g.output:g.value,g.suffix&&(_.output+=g.suffix)}return _};dt.fastpaths=(t,e)=>{let s={...e},r=typeof s.maxLength=="number"?Math.min(Ue,s.maxLength):Ue,n=t.length;if(n>r)throw new SyntaxError(`Input length: ${n}, exceeds maximum allowed length: ${r}`);t=Ss[t]||t;let o=X.isWindows(e),{DOT_LITERAL:i,SLASH_LITERAL:a,ONE_CHAR:c,DOTS_SLASH:u,NO_DOT:f,NO_DOTS:h,NO_DOTS_SLASH:l,STAR:m,START_ANCHOR:y}=Me.globChars(o),w=s.dot?h:f,S=s.dot?l:f,x=s.capture?"":"?:",D={negated:!1,prefix:""},$=s.bash===!0?".*?":m;s.capture&&($=`(${$})`);let ee=A=>A.noglobstar===!0?$:`(${x}(?:(?!${y}${A.dot?u:i}).)*?)`,q=A=>{switch(A){case"*":return`${w}${c}${$}`;case".*":return`${i}${c}${$}`;case"*.*":return`${w}${$}${i}${c}${$}`;case"*/*":return`${w}${$}${a}${c}${S}${$}`;case"**":return w+ee(s);case"**/*":return`(?:${w}${ee(s)}${a})?${S}${c}${$}`;case"**/*.*":return`(?:${w}${ee(s)}${a})?${S}${$}${i}${c}${$}`;case"**/.*":return`(?:${w}${ee(s)}${a})?${i}${c}${$}`;default:{let I=/^(.*?)\.(\w+)$/.exec(A);if(!I)return;let G=q(I[1]);return G?G+i+I[2]:void 0}}},ae=X.removePrefix(t,D),K=q(ae);return K&&s.strictSlashes!==!0&&(K+=`${a}?`),K};Ts.exports=dt});var bs=v((gc,xs)=>{"use strict";var ci=H("path"),li=As(),pt=Cs(),_t=$e(),ui=we(),fi=t=>t&&typeof t=="object"&&!Array.isArray(t),M=(t,e,s=!1)=>{if(Array.isArray(t)){let f=t.map(l=>M(l,e,s));return l=>{for(let m of f){let y=m(l);if(y)return y}return!1}}let r=fi(t)&&t.tokens&&t.input;if(t===""||typeof t!="string"&&!r)throw new TypeError("Expected pattern to be a non-empty string");let n=e||{},o=_t.isWindows(e),i=r?M.compileRe(t,e):M.makeRe(t,e,!1,!0),a=i.state;delete i.state;let c=()=>!1;if(n.ignore){let f={...e,ignore:null,onMatch:null,onResult:null};c=M(n.ignore,f,s)}let u=(f,h=!1)=>{let{isMatch:l,match:m,output:y}=M.test(f,i,e,{glob:t,posix:o}),w={glob:t,state:a,regex:i,posix:o,input:f,output:y,match:m,isMatch:l};return typeof n.onResult=="function"&&n.onResult(w),l===!1?(w.isMatch=!1,h?w:!1):c(f)?(typeof n.onIgnore=="function"&&n.onIgnore(w),w.isMatch=!1,h?w:!1):(typeof n.onMatch=="function"&&n.onMatch(w),h?w:!0)};return s&&(u.state=a),u};M.test=(t,e,s,{glob:r,posix:n}={})=>{if(typeof t!="string")throw new TypeError("Expected input to be a string");if(t==="")return{isMatch:!1,output:""};let o=s||{},i=o.format||(n?_t.toPosixSlashes:null),a=t===r,c=a&&i?i(t):t;return a===!1&&(c=i?i(t):t,a=c===r),(a===!1||o.capture===!0)&&(o.matchBase===!0||o.basename===!0?a=M.matchBase(t,e,s,n):a=e.exec(c)),{isMatch:!!a,match:a,output:c}};M.matchBase=(t,e,s,r=_t.isWindows(s))=>(e instanceof RegExp?e:M.makeRe(e,s)).test(ci.basename(t));M.isMatch=(t,e,s)=>M(e,s)(t);M.parse=(t,e)=>Array.isArray(t)?t.map(s=>M.parse(s,e)):pt(t,{...e,fastpaths:!1});M.scan=(t,e)=>li(t,e);M.compileRe=(t,e,s=!1,r=!1)=>{if(s===!0)return t.output;let n=e||{},o=n.contains?"":"^",i=n.contains?"":"$",a=`${o}(?:${t.output})${i}`;t&&t.negated===!0&&(a=`^(?!${a}).*$`);let c=M.toRegex(a,e);return r===!0&&(c.state=t),c};M.makeRe=(t,e={},s=!1,r=!1)=>{if(!t||typeof t!="string")throw new TypeError("Expected a non-empty string");let n={negated:!1,fastpaths:!0};return e.fastpaths!==!1&&(t[0]==="."||t[0]==="*")&&(n.output=pt.fastpaths(t,e)),n.output||(n=pt(t,e)),M.compileRe(n,e,s,r)};M.toRegex=(t,e)=>{try{let s=e||{};return new RegExp(t,s.flags||(s.nocase?"i":""))}catch(s){if(e&&e.debug===!0)throw s;return/$^/}};M.constants=ui;xs.exports=M});var Et=v((mc,Is)=>{"use strict";Is.exports=bs()});var Ds=v((yc,Hs)=>{"use strict";var Te=H("fs"),{Readable:hi}=H("stream"),Se=H("path"),{promisify:qe}=H("util"),gt=Et(),di=qe(Te.readdir),pi=qe(Te.stat),vs=qe(Te.lstat),_i=qe(Te.realpath),Ei="!",Os="READDIRP_RECURSIVE_ERROR",gi=new Set(["ENOENT","EPERM","EACCES","ELOOP",Os]),mt="files",Ls="directories",Be="files_directories",We="all",ks=[mt,Ls,Be,We],mi=t=>gi.has(t.code),[Ns,yi]=process.versions.node.split(".").slice(0,2).map(t=>Number.parseInt(t,10)),Ri=process.platform==="win32"&&(Ns>10||Ns===10&&yi>=5),Ps=t=>{if(t!==void 0){if(typeof t=="function")return t;if(typeof t=="string"){let e=gt(t.trim());return s=>e(s.basename)}if(Array.isArray(t)){let e=[],s=[];for(let r of t){let n=r.trim();n.charAt(0)===Ei?s.push(gt(n.slice(1))):e.push(gt(n))}return s.length>0?e.length>0?r=>e.some(n=>n(r.basename))&&!s.some(n=>n(r.basename)):r=>!s.some(n=>n(r.basename)):r=>e.some(n=>n(r.basename))}}},Ge=class t extends hi{static get defaultOptions(){return{root:".",fileFilter:e=>!0,directoryFilter:e=>!0,type:mt,lstat:!1,depth:2147483648,alwaysStat:!1}}constructor(e={}){super({objectMode:!0,autoDestroy:!0,highWaterMark:e.highWaterMark||4096});let s={...t.defaultOptions,...e},{root:r,type:n}=s;this._fileFilter=Ps(s.fileFilter),this._directoryFilter=Ps(s.directoryFilter);let o=s.lstat?vs:pi;Ri?this._stat=i=>o(i,{bigint:!0}):this._stat=o,this._maxDepth=s.depth,this._wantsDir=[Ls,Be,We].includes(n),this._wantsFile=[mt,Be,We].includes(n),this._wantsEverything=n===We,this._root=Se.resolve(r),this._isDirent="Dirent"in Te&&!s.alwaysStat,this._statsProp=this._isDirent?"dirent":"stats",this._rdOptions={encoding:"utf8",withFileTypes:this._isDirent},this.parents=[this._exploreDir(r,1)],this.reading=!1,this.parent=void 0}async _read(e){if(!this.reading){this.reading=!0;try{for(;!this.destroyed&&e>0;){let{path:s,depth:r,files:n=[]}=this.parent||{};if(n.length>0){let o=n.splice(0,e).map(i=>this._formatEntry(i,s));for(let i of await Promise.all(o)){if(this.destroyed)return;let a=await this._getEntryType(i);a==="directory"&&this._directoryFilter(i)?(r<=this._maxDepth&&this.parents.push(this._exploreDir(i.fullPath,r+1)),this._wantsDir&&(this.push(i),e--)):(a==="file"||this._includeAsFile(i))&&this._fileFilter(i)&&this._wantsFile&&(this.push(i),e--)}}else{let o=this.parents.pop();if(!o){this.push(null);break}if(this.parent=await o,this.destroyed)return}}}catch(s){this.destroy(s)}finally{this.reading=!1}}}async _exploreDir(e,s){let r;try{r=await di(e,this._rdOptions)}catch(n){this._onError(n)}return{files:r,depth:s,path:e}}async _formatEntry(e,s){let r;try{let n=this._isDirent?e.name:e,o=Se.resolve(Se.join(s,n));r={path:Se.relative(this._root,o),fullPath:o,basename:n},r[this._statsProp]=this._isDirent?e:await this._stat(o)}catch(n){this._onError(n)}return r}_onError(e){mi(e)&&!this.destroyed?this.emit("warn",e):this.destroy(e)}async _getEntryType(e){let s=e&&e[this._statsProp];if(s){if(s.isFile())return"file";if(s.isDirectory())return"directory";if(s&&s.isSymbolicLink()){let r=e.fullPath;try{let n=await _i(r),o=await vs(n);if(o.isFile())return"file";if(o.isDirectory()){let i=n.length;if(r.startsWith(n)&&r.substr(i,1)===Se.sep){let a=new Error(`Circular symlink detected: "${r}" points to "${n}"`);return a.code=Os,this._onError(a)}return"directory"}}catch(n){this._onError(n)}}}}_includeAsFile(e){let s=e&&e[this._statsProp];return s&&this._wantsEverything&&!s.isDirectory()}},ge=(t,e={})=>{let s=e.entryType||e.type;if(s==="both"&&(s=Be),s&&(e.type=s),t){if(typeof t!="string")throw new TypeError("readdirp: root argument must be a string. Usage: readdirp(root, options)");if(s&&!ks.includes(s))throw new Error(`readdirp: Invalid type passed. Use one of ${ks.join(", ")}`)}else throw new Error("readdirp: root argument is required. Usage: readdirp(root, options)");return e.root=t,new Ge(e)},wi=(t,e={})=>new Promise((s,r)=>{let n=[];ge(t,e).on("data",o=>n.push(o)).on("end",()=>s(n)).on("error",o=>r(o))});ge.promise=wi;ge.ReaddirpStream=Ge;ge.default=ge;Hs.exports=ge});var yt=v((Rc,Fs)=>{Fs.exports=function(t,e){if(typeof t!="string")throw new TypeError("expected path to be a string");if(t==="\\"||t==="/")return"/";var s=t.length;if(s<=1)return t;var r="";if(s>4&&t[3]==="\\"){var n=t[2];(n==="?"||n===".")&&t.slice(0,2)==="\\\\"&&(t=t.slice(2),r="//")}var o=t.split(/[/\\]+/);return e!==!1&&o[o.length-1]===""&&o.pop(),r+o.join("/")}});var Gs=v((Ws,Bs)=>{"use strict";Object.defineProperty(Ws,"__esModule",{value:!0});var Us=Et(),Ai=yt(),$s="!",Si={returnIndex:!1},Ti=t=>Array.isArray(t)?t:[t],Ci=(t,e)=>{if(typeof t=="function")return t;if(typeof t=="string"){let s=Us(t,e);return r=>t===r||s(r)}return t instanceof RegExp?s=>t.test(s):s=>!1},Ms=(t,e,s,r)=>{let n=Array.isArray(s),o=n?s[0]:s;if(!n&&typeof o!="string")throw new TypeError("anymatch: second argument must be a string: got "+Object.prototype.toString.call(o));let i=Ai(o,!1);for(let c=0;c<e.length;c++){let u=e[c];if(u(i))return r?-1:!1}let a=n&&[i].concat(s.slice(1));for(let c=0;c<t.length;c++){let u=t[c];if(n?u(...a):u(i))return r?c:!0}return r?-1:!1},Rt=(t,e,s=Si)=>{if(t==null)throw new TypeError("anymatch: specify first argument");let r=typeof s=="boolean"?{returnIndex:s}:s,n=r.returnIndex||!1,o=Ti(t),i=o.filter(c=>typeof c=="string"&&c.charAt(0)===$s).map(c=>c.slice(1)).map(c=>Us(c,r)),a=o.filter(c=>typeof c!="string"||typeof c=="string"&&c.charAt(0)!==$s).map(c=>Ci(c,r));return e==null?(c,u=!1)=>Ms(a,i,c,typeof u=="boolean"?u:!1):Ms(a,i,e,n)};Rt.default=Rt;Bs.exports=Rt});var Ks=v((wc,qs)=>{qs.exports=function(e){if(typeof e!="string"||e==="")return!1;for(var s;s=/(\\).|([@?!+*]\(.*\))/g.exec(e);){if(s[2])return!0;e=e.slice(s.index+s[0].length)}return!1}});var wt=v((Ac,js)=>{var xi=Ks(),Vs={"{":"}","(":")","[":"]"},bi=function(t){if(t[0]==="!")return!0;for(var e=0,s=-2,r=-2,n=-2,o=-2,i=-2;e<t.length;){if(t[e]==="*"||t[e+1]==="?"&&/[\].+)]/.test(t[e])||r!==-1&&t[e]==="["&&t[e+1]!=="]"&&(r<e&&(r=t.indexOf("]",e)),r>e&&(i===-1||i>r||(i=t.indexOf("\\",e),i===-1||i>r)))||n!==-1&&t[e]==="{"&&t[e+1]!=="}"&&(n=t.indexOf("}",e),n>e&&(i=t.indexOf("\\",e),i===-1||i>n))||o!==-1&&t[e]==="("&&t[e+1]==="?"&&/[:!=]/.test(t[e+2])&&t[e+3]!==")"&&(o=t.indexOf(")",e),o>e&&(i=t.indexOf("\\",e),i===-1||i>o))||s!==-1&&t[e]==="("&&t[e+1]!=="|"&&(s<e&&(s=t.indexOf("|",e)),s!==-1&&t[s+1]!==")"&&(o=t.indexOf(")",s),o>s&&(i=t.indexOf("\\",s),i===-1||i>o))))return!0;if(t[e]==="\\"){var a=t[e+1];e+=2;var c=Vs[a];if(c){var u=t.indexOf(c,e);u!==-1&&(e=u+1)}if(t[e]==="!")return!0}else e++}return!1},Ii=function(t){if(t[0]==="!")return!0;for(var e=0;e<t.length;){if(/[*?{}()[\]]/.test(t[e]))return!0;if(t[e]==="\\"){var s=t[e+1];e+=2;var r=Vs[s];if(r){var n=t.indexOf(r,e);n!==-1&&(e=n+1)}if(t[e]==="!")return!0}else e++}return!1};js.exports=function(e,s){if(typeof e!="string"||e==="")return!1;if(xi(e))return!0;var r=bi;return s&&s.strict===!1&&(r=Ii),r(e)}});var zs=v((Sc,Ys)=>{"use strict";var vi=wt(),ki=H("path").posix.dirname,Ni=H("os").platform()==="win32",At="/",Pi=/\\/g,Oi=/[\{\[].*[\}\]]$/,Li=/(^|[^\\])([\{\[]|\([^\)]+$)/,Hi=/\\([\!\*\?\|\[\]\(\)\{\}])/g;Ys.exports=function(e,s){var r=Object.assign({flipBackslashes:!0},s);r.flipBackslashes&&Ni&&e.indexOf(At)<0&&(e=e.replace(Pi,At)),Oi.test(e)&&(e+=At),e+="a";do e=ki(e);while(vi(e)||Li.test(e));return e.replace(Hi,"$1")}});var Ke=v(Z=>{"use strict";Z.isInteger=t=>typeof t=="number"?Number.isInteger(t):typeof t=="string"&&t.trim()!==""?Number.isInteger(Number(t)):!1;Z.find=(t,e)=>t.nodes.find(s=>s.type===e);Z.exceedsLimit=(t,e,s=1,r)=>r===!1||!Z.isInteger(t)||!Z.isInteger(e)?!1:(Number(e)-Number(t))/Number(s)>=r;Z.escapeNode=(t,e=0,s)=>{let r=t.nodes[e];r&&(s&&r.type===s||r.type==="open"||r.type==="close")&&r.escaped!==!0&&(r.value="\\"+r.value,r.escaped=!0)};Z.encloseBrace=t=>t.type!=="brace"||t.commas>>0+t.ranges>>0?!1:(t.invalid=!0,!0);Z.isInvalidBrace=t=>t.type!=="brace"?!1:t.invalid===!0||t.dollar?!0:!(t.commas>>0+t.ranges>>0)||t.open!==!0||t.close!==!0?(t.invalid=!0,!0):!1;Z.isOpenOrClose=t=>t.type==="open"||t.type==="close"?!0:t.open===!0||t.close===!0;Z.reduce=t=>t.reduce((e,s)=>(s.type==="text"&&e.push(s.value),s.type==="range"&&(s.type="text"),e),[]);Z.flatten=(...t)=>{let e=[],s=r=>{for(let n=0;n<r.length;n++){let o=r[n];Array.isArray(o)?s(o,e):o!==void 0&&e.push(o)}return e};return s(t),e}});var Ve=v((Cc,Qs)=>{"use strict";var Xs=Ke();Qs.exports=(t,e={})=>{let s=(r,n={})=>{let o=e.escapeInvalid&&Xs.isInvalidBrace(n),i=r.invalid===!0&&e.escapeInvalid===!0,a="";if(r.value)return(o||i)&&Xs.isOpenOrClose(r)?"\\"+r.value:r.value;if(r.value)return r.value;if(r.nodes)for(let c of r.nodes)a+=s(c);return a};return s(t)}});var Js=v((xc,Zs)=>{"use strict";Zs.exports=function(t){return typeof t=="number"?t-t===0:typeof t=="string"&&t.trim()!==""?Number.isFinite?Number.isFinite(+t):isFinite(+t):!1}});var cr=v((bc,ar)=>{"use strict";var er=Js(),ue=(t,e,s)=>{if(er(t)===!1)throw new TypeError("toRegexRange: expected the first argument to be a number");if(e===void 0||t===e)return String(t);if(er(e)===!1)throw new TypeError("toRegexRange: expected the second argument to be a number.");let r={relaxZeros:!0,...s};typeof r.strictZeros=="boolean"&&(r.relaxZeros=r.strictZeros===!1);let n=String(r.relaxZeros),o=String(r.shorthand),i=String(r.capture),a=String(r.wrap),c=t+":"+e+"="+n+o+i+a;if(ue.cache.hasOwnProperty(c))return ue.cache[c].result;let u=Math.min(t,e),f=Math.max(t,e);if(Math.abs(u-f)===1){let w=t+"|"+e;return r.capture?`(${w})`:r.wrap===!1?w:`(?:${w})`}let h=or(t)||or(e),l={min:t,max:e,a:u,b:f},m=[],y=[];if(h&&(l.isPadded=h,l.maxLen=String(l.max).length),u<0){let w=f<0?Math.abs(f):1;y=tr(w,Math.abs(u),l,r),u=l.a=0}return f>=0&&(m=tr(u,f,l,r)),l.negatives=y,l.positives=m,l.result=Di(y,m,r),r.capture===!0?l.result=`(${l.result})`:r.wrap!==!1&&m.length+y.length>1&&(l.result=`(?:${l.result})`),ue.cache[c]=l,l.result};function Di(t,e,s){let r=St(t,e,"-",!1,s)||[],n=St(e,t,"",!1,s)||[],o=St(t,e,"-?",!0,s)||[];return r.concat(o).concat(n).join("|")}function Fi(t,e){let s=1,r=1,n=rr(t,s),o=new Set([e]);for(;t<=n&&n<=e;)o.add(n),s+=1,n=rr(t,s);for(n=nr(e+1,r)-1;t<n&&n<=e;)o.add(n),r+=1,n=nr(e+1,r)-1;return o=[...o],o.sort(Ui),o}function $i(t,e,s){if(t===e)return{pattern:t,count:[],digits:0};let r=Mi(t,e),n=r.length,o="",i=0;for(let a=0;a<n;a++){let[c,u]=r[a];c===u?o+=c:c!=="0"||u!=="9"?o+=Wi(c,u,s):i++}return i&&(o+=s.shorthand===!0?"\\d":"[0-9]"),{pattern:o,count:[i],digits:n}}function tr(t,e,s,r){let n=Fi(t,e),o=[],i=t,a;for(let c=0;c<n.length;c++){let u=n[c],f=$i(String(i),String(u),r),h="";if(!s.isPadded&&a&&a.pattern===f.pattern){a.count.length>1&&a.count.pop(),a.count.push(f.count[0]),a.string=a.pattern+ir(a.count),i=u+1;continue}s.isPadded&&(h=Bi(u,s,r)),f.string=h+f.pattern+ir(f.count),o.push(f),i=u+1,a=f}return o}function St(t,e,s,r,n){let o=[];for(let i of t){let{string:a}=i;!r&&!sr(e,"string",a)&&o.push(s+a),r&&sr(e,"string",a)&&o.push(s+a)}return o}function Mi(t,e){let s=[];for(let r=0;r<t.length;r++)s.push([t[r],e[r]]);return s}function Ui(t,e){return t>e?1:e>t?-1:0}function sr(t,e,s){return t.some(r=>r[e]===s)}function rr(t,e){return Number(String(t).slice(0,-e)+"9".repeat(e))}function nr(t,e){return t-t%Math.pow(10,e)}function ir(t){let[e=0,s=""]=t;return s||e>1?`{${e+(s?","+s:"")}}`:""}function Wi(t,e,s){return`[${t}${e-t===1?"":"-"}${e}]`}function or(t){return/^-?(0+)\d/.test(t)}function Bi(t,e,s){if(!e.isPadded)return t;let r=Math.abs(e.maxLen-String(t).length),n=s.relaxZeros!==!1;switch(r){case 0:return"";case 1:return n?"0?":"0";case 2:return n?"0{0,2}":"00";default:return n?`0{0,${r}}`:`0{${r}}`}}ue.cache={};ue.clearCache=()=>ue.cache={};ar.exports=ue});var xt=v((Ic,Er)=>{"use strict";var Gi=H("util"),fr=cr(),lr=t=>t!==null&&typeof t=="object"&&!Array.isArray(t),qi=t=>e=>t===!0?Number(e):String(e),Tt=t=>typeof t=="number"||typeof t=="string"&&t!=="",Ce=t=>Number.isInteger(+t),Ct=t=>{let e=`${t}`,s=-1;if(e[0]==="-"&&(e=e.slice(1)),e==="0")return!1;for(;e[++s]==="0";);return s>0},Ki=(t,e,s)=>typeof t=="string"||typeof e=="string"?!0:s.stringify===!0,Vi=(t,e,s)=>{if(e>0){let r=t[0]==="-"?"-":"";r&&(t=t.slice(1)),t=r+t.padStart(r?e-1:e,"0")}return s===!1?String(t):t},ur=(t,e)=>{let s=t[0]==="-"?"-":"";for(s&&(t=t.slice(1),e--);t.length<e;)t="0"+t;return s?"-"+t:t},ji=(t,e)=>{t.negatives.sort((i,a)=>i<a?-1:i>a?1:0),t.positives.sort((i,a)=>i<a?-1:i>a?1:0);let s=e.capture?"":"?:",r="",n="",o;return t.positives.length&&(r=t.positives.join("|")),t.negatives.length&&(n=`-(${s}${t.negatives.join("|")})`),r&&n?o=`${r}|${n}`:o=r||n,e.wrap?`(${s}${o})`:o},hr=(t,e,s,r)=>{if(s)return fr(t,e,{wrap:!1,...r});let n=String.fromCharCode(t);if(t===e)return n;let o=String.fromCharCode(e);return`[${n}-${o}]`},dr=(t,e,s)=>{if(Array.isArray(t)){let r=s.wrap===!0,n=s.capture?"":"?:";return r?`(${n}${t.join("|")})`:t.join("|")}return fr(t,e,s)},pr=(...t)=>new RangeError("Invalid range arguments: "+Gi.inspect(...t)),_r=(t,e,s)=>{if(s.strictRanges===!0)throw pr([t,e]);return[]},Yi=(t,e)=>{if(e.strictRanges===!0)throw new TypeError(`Expected step "${t}" to be a number`);return[]},zi=(t,e,s=1,r={})=>{let n=Number(t),o=Number(e);if(!Number.isInteger(n)||!Number.isInteger(o)){if(r.strictRanges===!0)throw pr([t,e]);return[]}n===0&&(n=0),o===0&&(o=0);let i=n>o,a=String(t),c=String(e),u=String(s);s=Math.max(Math.abs(s),1);let f=Ct(a)||Ct(c)||Ct(u),h=f?Math.max(a.length,c.length,u.length):0,l=f===!1&&Ki(t,e,r)===!1,m=r.transform||qi(l);if(r.toRegex&&s===1)return hr(ur(t,h),ur(e,h),!0,r);let y={negatives:[],positives:[]},w=D=>y[D<0?"negatives":"positives"].push(Math.abs(D)),S=[],x=0;for(;i?n>=o:n<=o;)r.toRegex===!0&&s>1?w(n):S.push(Vi(m(n,x),h,l)),n=i?n-s:n+s,x++;return r.toRegex===!0?s>1?ji(y,r):dr(S,null,{wrap:!1,...r}):S},Xi=(t,e,s=1,r={})=>{if(!Ce(t)&&t.length>1||!Ce(e)&&e.length>1)return _r(t,e,r);let n=r.transform||(l=>String.fromCharCode(l)),o=`${t}`.charCodeAt(0),i=`${e}`.charCodeAt(0),a=o>i,c=Math.min(o,i),u=Math.max(o,i);if(r.toRegex&&s===1)return hr(c,u,!1,r);let f=[],h=0;for(;a?o>=i:o<=i;)f.push(n(o,h)),o=a?o-s:o+s,h++;return r.toRegex===!0?dr(f,null,{wrap:!1,options:r}):f},je=(t,e,s,r={})=>{if(e==null&&Tt(t))return[t];if(!Tt(t)||!Tt(e))return _r(t,e,r);if(typeof s=="function")return je(t,e,1,{transform:s});if(lr(s))return je(t,e,0,s);let n={...r};return n.capture===!0&&(n.wrap=!0),s=s||n.step||1,Ce(s)?Ce(t)&&Ce(e)?zi(t,e,s,n):Xi(t,e,Math.max(Math.abs(s),1),n):s!=null&&!lr(s)?Yi(s,n):je(t,e,1,s)};Er.exports=je});var yr=v((vc,mr)=>{"use strict";var Qi=xt(),gr=Ke(),Zi=(t,e={})=>{let s=(r,n={})=>{let o=gr.isInvalidBrace(n),i=r.invalid===!0&&e.escapeInvalid===!0,a=o===!0||i===!0,c=e.escapeInvalid===!0?"\\":"",u="";if(r.isOpen===!0||r.isClose===!0)return c+r.value;if(r.type==="open")return a?c+r.value:"(";if(r.type==="close")return a?c+r.value:")";if(r.type==="comma")return r.prev.type==="comma"?"":a?r.value:"|";if(r.value)return r.value;if(r.nodes&&r.ranges>0){let f=gr.reduce(r.nodes),h=Qi(...f,{...e,wrap:!1,toRegex:!0});if(h.length!==0)return f.length>1&&h.length>1?`(${h})`:h}if(r.nodes)for(let f of r.nodes)u+=s(f,r);return u};return s(t)};mr.exports=Zi});var Ar=v((kc,wr)=>{"use strict";var Ji=xt(),Rr=Ve(),me=Ke(),fe=(t="",e="",s=!1)=>{let r=[];if(t=[].concat(t),e=[].concat(e),!e.length)return t;if(!t.length)return s?me.flatten(e).map(n=>`{${n}}`):e;for(let n of t)if(Array.isArray(n))for(let o of n)r.push(fe(o,e,s));else for(let o of e)s===!0&&typeof o=="string"&&(o=`{${o}}`),r.push(Array.isArray(o)?fe(n,o,s):n+o);return me.flatten(r)},eo=(t,e={})=>{let s=e.rangeLimit===void 0?1e3:e.rangeLimit,r=(n,o={})=>{n.queue=[];let i=o,a=o.queue;for(;i.type!=="brace"&&i.type!=="root"&&i.parent;)i=i.parent,a=i.queue;if(n.invalid||n.dollar){a.push(fe(a.pop(),Rr(n,e)));return}if(n.type==="brace"&&n.invalid!==!0&&n.nodes.length===2){a.push(fe(a.pop(),["{}"]));return}if(n.nodes&&n.ranges>0){let h=me.reduce(n.nodes);if(me.exceedsLimit(...h,e.step,s))throw new RangeError("expanded array length exceeds range limit. Use options.rangeLimit to increase or disable the limit.");let l=Ji(...h,e);l.length===0&&(l=Rr(n,e)),a.push(fe(a.pop(),l)),n.nodes=[];return}let c=me.encloseBrace(n),u=n.queue,f=n;for(;f.type!=="brace"&&f.type!=="root"&&f.parent;)f=f.parent,u=f.queue;for(let h=0;h<n.nodes.length;h++){let l=n.nodes[h];if(l.type==="comma"&&n.type==="brace"){h===1&&u.push(""),u.push("");continue}if(l.type==="close"){a.push(fe(a.pop(),u,c));continue}if(l.value&&l.type!=="open"){u.push(fe(u.pop(),l.value));continue}l.nodes&&r(l,n)}return u};return me.flatten(r(t))};wr.exports=eo});var Tr=v((Nc,Sr)=>{"use strict";Sr.exports={MAX_LENGTH:1024*64,CHAR_0:"0",CHAR_9:"9",CHAR_UPPERCASE_A:"A",CHAR_LOWERCASE_A:"a",CHAR_UPPERCASE_Z:"Z",CHAR_LOWERCASE_Z:"z",CHAR_LEFT_PARENTHESES:"(",CHAR_RIGHT_PARENTHESES:")",CHAR_ASTERISK:"*",CHAR_AMPERSAND:"&",CHAR_AT:"@",CHAR_BACKSLASH:"\\",CHAR_BACKTICK:"`",CHAR_CARRIAGE_RETURN:"\r",CHAR_CIRCUMFLEX_ACCENT:"^",CHAR_COLON:":",CHAR_COMMA:",",CHAR_DOLLAR:"$",CHAR_DOT:".",CHAR_DOUBLE_QUOTE:'"',CHAR_EQUAL:"=",CHAR_EXCLAMATION_MARK:"!",CHAR_FORM_FEED:"\f",CHAR_FORWARD_SLASH:"/",CHAR_HASH:"#",CHAR_HYPHEN_MINUS:"-",CHAR_LEFT_ANGLE_BRACKET:"<",CHAR_LEFT_CURLY_BRACE:"{",CHAR_LEFT_SQUARE_BRACKET:"[",CHAR_LINE_FEED:`
2
+ `,CHAR_NO_BREAK_SPACE:"\xA0",CHAR_PERCENT:"%",CHAR_PLUS:"+",CHAR_QUESTION_MARK:"?",CHAR_RIGHT_ANGLE_BRACKET:">",CHAR_RIGHT_CURLY_BRACE:"}",CHAR_RIGHT_SQUARE_BRACKET:"]",CHAR_SEMICOLON:";",CHAR_SINGLE_QUOTE:"'",CHAR_SPACE:" ",CHAR_TAB:" ",CHAR_UNDERSCORE:"_",CHAR_VERTICAL_LINE:"|",CHAR_ZERO_WIDTH_NOBREAK_SPACE:"\uFEFF"}});var vr=v((Pc,Ir)=>{"use strict";var to=Ve(),{MAX_LENGTH:Cr,CHAR_BACKSLASH:bt,CHAR_BACKTICK:so,CHAR_COMMA:ro,CHAR_DOT:no,CHAR_LEFT_PARENTHESES:io,CHAR_RIGHT_PARENTHESES:oo,CHAR_LEFT_CURLY_BRACE:ao,CHAR_RIGHT_CURLY_BRACE:co,CHAR_LEFT_SQUARE_BRACKET:xr,CHAR_RIGHT_SQUARE_BRACKET:br,CHAR_DOUBLE_QUOTE:lo,CHAR_SINGLE_QUOTE:uo,CHAR_NO_BREAK_SPACE:fo,CHAR_ZERO_WIDTH_NOBREAK_SPACE:ho}=Tr(),po=(t,e={})=>{if(typeof t!="string")throw new TypeError("Expected a string");let s=e||{},r=typeof s.maxLength=="number"?Math.min(Cr,s.maxLength):Cr;if(t.length>r)throw new SyntaxError(`Input length (${t.length}), exceeds max characters (${r})`);let n={type:"root",input:t,nodes:[]},o=[n],i=n,a=n,c=0,u=t.length,f=0,h=0,l,m={},y=()=>t[f++],w=S=>{if(S.type==="text"&&a.type==="dot"&&(a.type="text"),a&&a.type==="text"&&S.type==="text"){a.value+=S.value;return}return i.nodes.push(S),S.parent=i,S.prev=a,a=S,S};for(w({type:"bos"});f<u;)if(i=o[o.length-1],l=y(),!(l===ho||l===fo)){if(l===bt){w({type:"text",value:(e.keepEscaping?l:"")+y()});continue}if(l===br){w({type:"text",value:"\\"+l});continue}if(l===xr){c++;let S=!0,x;for(;f<u&&(x=y());){if(l+=x,x===xr){c++;continue}if(x===bt){l+=y();continue}if(x===br&&(c--,c===0))break}w({type:"text",value:l});continue}if(l===io){i=w({type:"paren",nodes:[]}),o.push(i),w({type:"text",value:l});continue}if(l===oo){if(i.type!=="paren"){w({type:"text",value:l});continue}i=o.pop(),w({type:"text",value:l}),i=o[o.length-1];continue}if(l===lo||l===uo||l===so){let S=l,x;for(e.keepQuotes!==!0&&(l="");f<u&&(x=y());){if(x===bt){l+=x+y();continue}if(x===S){e.keepQuotes===!0&&(l+=x);break}l+=x}w({type:"text",value:l});continue}if(l===ao){h++;let x={type:"brace",open:!0,close:!1,dollar:a.value&&a.value.slice(-1)==="$"||i.dollar===!0,depth:h,commas:0,ranges:0,nodes:[]};i=w(x),o.push(i),w({type:"open",value:l});continue}if(l===co){if(i.type!=="brace"){w({type:"text",value:l});continue}let S="close";i=o.pop(),i.close=!0,w({type:S,value:l}),h--,i=o[o.length-1];continue}if(l===ro&&h>0){if(i.ranges>0){i.ranges=0;let S=i.nodes.shift();i.nodes=[S,{type:"text",value:to(i)}]}w({type:"comma",value:l}),i.commas++;continue}if(l===no&&h>0&&i.commas===0){let S=i.nodes;if(h===0||S.length===0){w({type:"text",value:l});continue}if(a.type==="dot"){if(i.range=[],a.value+=l,a.type="range",i.nodes.length!==3&&i.nodes.length!==5){i.invalid=!0,i.ranges=0,a.type="text";continue}i.ranges++,i.args=[];continue}if(a.type==="range"){S.pop();let x=S[S.length-1];x.value+=a.value+l,a=x,i.ranges--;continue}w({type:"dot",value:l});continue}w({type:"text",value:l})}do if(i=o.pop(),i.type!=="root"){i.nodes.forEach(D=>{D.nodes||(D.type==="open"&&(D.isOpen=!0),D.type==="close"&&(D.isClose=!0),D.nodes||(D.type="text"),D.invalid=!0)});let S=o[o.length-1],x=S.nodes.indexOf(i);S.nodes.splice(x,1,...i.nodes)}while(o.length>0);return w({type:"eos"}),n};Ir.exports=po});var Pr=v((Oc,Nr)=>{"use strict";var kr=Ve(),_o=yr(),Eo=Ar(),go=vr(),Q=(t,e={})=>{let s=[];if(Array.isArray(t))for(let r of t){let n=Q.create(r,e);Array.isArray(n)?s.push(...n):s.push(n)}else s=[].concat(Q.create(t,e));return e&&e.expand===!0&&e.nodupes===!0&&(s=[...new Set(s)]),s};Q.parse=(t,e={})=>go(t,e);Q.stringify=(t,e={})=>kr(typeof t=="string"?Q.parse(t,e):t,e);Q.compile=(t,e={})=>(typeof t=="string"&&(t=Q.parse(t,e)),_o(t,e));Q.expand=(t,e={})=>{typeof t=="string"&&(t=Q.parse(t,e));let s=Eo(t,e);return e.noempty===!0&&(s=s.filter(Boolean)),e.nodupes===!0&&(s=[...new Set(s)]),s};Q.create=(t,e={})=>t===""||t.length<3?[t]:e.expand!==!0?Q.compile(t,e):Q.expand(t,e);Nr.exports=Q});var Or=v((Lc,mo)=>{mo.exports=["3dm","3ds","3g2","3gp","7z","a","aac","adp","afdesign","afphoto","afpub","ai","aif","aiff","alz","ape","apk","appimage","ar","arj","asf","au","avi","bak","baml","bh","bin","bk","bmp","btif","bz2","bzip2","cab","caf","cgm","class","cmx","cpio","cr2","cur","dat","dcm","deb","dex","djvu","dll","dmg","dng","doc","docm","docx","dot","dotm","dra","DS_Store","dsk","dts","dtshd","dvb","dwg","dxf","ecelp4800","ecelp7470","ecelp9600","egg","eol","eot","epub","exe","f4v","fbs","fh","fla","flac","flatpak","fli","flv","fpx","fst","fvt","g3","gh","gif","graffle","gz","gzip","h261","h263","h264","icns","ico","ief","img","ipa","iso","jar","jpeg","jpg","jpgv","jpm","jxr","key","ktx","lha","lib","lvp","lz","lzh","lzma","lzo","m3u","m4a","m4v","mar","mdi","mht","mid","midi","mj2","mka","mkv","mmr","mng","mobi","mov","movie","mp3","mp4","mp4a","mpeg","mpg","mpga","mxu","nef","npx","numbers","nupkg","o","odp","ods","odt","oga","ogg","ogv","otf","ott","pages","pbm","pcx","pdb","pdf","pea","pgm","pic","png","pnm","pot","potm","potx","ppa","ppam","ppm","pps","ppsm","ppsx","ppt","pptm","pptx","psd","pya","pyc","pyo","pyv","qt","rar","ras","raw","resources","rgb","rip","rlc","rmf","rmvb","rpm","rtf","rz","s3m","s7z","scpt","sgi","shar","snap","sil","sketch","slk","smv","snk","so","stl","suo","sub","swf","tar","tbz","tbz2","tga","tgz","thmx","tif","tiff","tlz","ttc","ttf","txz","udf","uvh","uvi","uvm","uvp","uvs","uvu","viv","vob","war","wav","wax","wbmp","wdp","weba","webm","webp","whl","wim","wm","wma","wmv","wmx","woff","woff2","wrm","wvx","xbm","xif","xla","xlam","xls","xlsb","xlsm","xlsx","xlt","xltm","xltx","xm","xmind","xpi","xpm","xwd","xz","z","zip","zipx"]});var Hr=v((Hc,Lr)=>{Lr.exports=Or()});var Fr=v((Dc,Dr)=>{"use strict";var yo=H("path"),Ro=Hr(),wo=new Set(Ro);Dr.exports=t=>wo.has(yo.extname(t).slice(1).toLowerCase())});var Ye=v(R=>{"use strict";var{sep:Ao}=H("path"),{platform:It}=process,So=H("os");R.EV_ALL="all";R.EV_READY="ready";R.EV_ADD="add";R.EV_CHANGE="change";R.EV_ADD_DIR="addDir";R.EV_UNLINK="unlink";R.EV_UNLINK_DIR="unlinkDir";R.EV_RAW="raw";R.EV_ERROR="error";R.STR_DATA="data";R.STR_END="end";R.STR_CLOSE="close";R.FSEVENT_CREATED="created";R.FSEVENT_MODIFIED="modified";R.FSEVENT_DELETED="deleted";R.FSEVENT_MOVED="moved";R.FSEVENT_CLONED="cloned";R.FSEVENT_UNKNOWN="unknown";R.FSEVENT_FLAG_MUST_SCAN_SUBDIRS=1;R.FSEVENT_TYPE_FILE="file";R.FSEVENT_TYPE_DIRECTORY="directory";R.FSEVENT_TYPE_SYMLINK="symlink";R.KEY_LISTENERS="listeners";R.KEY_ERR="errHandlers";R.KEY_RAW="rawEmitters";R.HANDLER_KEYS=[R.KEY_LISTENERS,R.KEY_ERR,R.KEY_RAW];R.DOT_SLASH=`.${Ao}`;R.BACK_SLASH_RE=/\\/g;R.DOUBLE_SLASH_RE=/\/\//;R.SLASH_OR_BACK_SLASH_RE=/[/\\]/;R.DOT_RE=/\..*\.(sw[px])$|~$|\.subl.*\.tmp/;R.REPLACER_RE=/^\.[/\\]/;R.SLASH="/";R.SLASH_SLASH="//";R.BRACE_START="{";R.BANG="!";R.ONE_DOT=".";R.TWO_DOTS="..";R.STAR="*";R.GLOBSTAR="**";R.ROOT_GLOBSTAR="/**/*";R.SLASH_GLOBSTAR="/**";R.DIR_SUFFIX="Dir";R.ANYMATCH_OPTS={dot:!0};R.STRING_TYPE="string";R.FUNCTION_TYPE="function";R.EMPTY_STR="";R.EMPTY_FN=()=>{};R.IDENTITY_FN=t=>t;R.isWindows=It==="win32";R.isMacos=It==="darwin";R.isLinux=It==="linux";R.isIBMi=So.type()==="OS400"});var Gr=v(($c,Br)=>{"use strict";var ie=H("fs"),W=H("path"),{promisify:ve}=H("util"),To=Fr(),{isWindows:Co,isLinux:xo,EMPTY_FN:bo,EMPTY_STR:Io,KEY_LISTENERS:ye,KEY_ERR:vt,KEY_RAW:xe,HANDLER_KEYS:vo,EV_CHANGE:Xe,EV_ADD:ze,EV_ADD_DIR:ko,EV_ERROR:Mr,STR_DATA:No,STR_END:Po,BRACE_START:Oo,STAR:Lo}=Ye(),Ho="watch",Do=ve(ie.open),Ur=ve(ie.stat),Fo=ve(ie.lstat),$o=ve(ie.close),kt=ve(ie.realpath),Mo={lstat:Fo,stat:Ur},Pt=(t,e)=>{t instanceof Set?t.forEach(e):e(t)},be=(t,e,s)=>{let r=t[e];r instanceof Set||(t[e]=r=new Set([r])),r.add(s)},Uo=t=>e=>{let s=t[e];s instanceof Set?s.clear():delete t[e]},Ie=(t,e,s)=>{let r=t[e];r instanceof Set?r.delete(s):r===s&&delete t[e]},Wr=t=>t instanceof Set?t.size===0:!t,Qe=new Map;function $r(t,e,s,r,n){let o=(i,a)=>{s(t),n(i,a,{watchedPath:t}),a&&t!==a&&Ze(W.resolve(t,a),ye,W.join(t,a))};try{return ie.watch(t,e,o)}catch(i){r(i)}}var Ze=(t,e,s,r,n)=>{let o=Qe.get(t);o&&Pt(o[e],i=>{i(s,r,n)})},Wo=(t,e,s,r)=>{let{listener:n,errHandler:o,rawEmitter:i}=r,a=Qe.get(e),c;if(!s.persistent)return c=$r(t,s,n,o,i),c.close.bind(c);if(a)be(a,ye,n),be(a,vt,o),be(a,xe,i);else{if(c=$r(t,s,Ze.bind(null,e,ye),o,Ze.bind(null,e,xe)),!c)return;c.on(Mr,async u=>{let f=Ze.bind(null,e,vt);if(a.watcherUnusable=!0,Co&&u.code==="EPERM")try{let h=await Do(t,"r");await $o(h),f(u)}catch{}else f(u)}),a={listeners:n,errHandlers:o,rawEmitters:i,watcher:c},Qe.set(e,a)}return()=>{Ie(a,ye,n),Ie(a,vt,o),Ie(a,xe,i),Wr(a.listeners)&&(a.watcher.close(),Qe.delete(e),vo.forEach(Uo(a)),a.watcher=void 0,Object.freeze(a))}},Nt=new Map,Bo=(t,e,s,r)=>{let{listener:n,rawEmitter:o}=r,i=Nt.get(e),a=new Set,c=new Set,u=i&&i.options;return u&&(u.persistent<s.persistent||u.interval>s.interval)&&(a=i.listeners,c=i.rawEmitters,ie.unwatchFile(e),i=void 0),i?(be(i,ye,n),be(i,xe,o)):(i={listeners:n,rawEmitters:o,options:s,watcher:ie.watchFile(e,s,(f,h)=>{Pt(i.rawEmitters,m=>{m(Xe,e,{curr:f,prev:h})});let l=f.mtimeMs;(f.size!==h.size||l>h.mtimeMs||l===0)&&Pt(i.listeners,m=>m(t,f))})},Nt.set(e,i)),()=>{Ie(i,ye,n),Ie(i,xe,o),Wr(i.listeners)&&(Nt.delete(e),ie.unwatchFile(e),i.options=i.watcher=void 0,Object.freeze(i))}},Ot=class{constructor(e){this.fsw=e,this._boundHandleError=s=>e._handleError(s)}_watchWithNodeFs(e,s){let r=this.fsw.options,n=W.dirname(e),o=W.basename(e);this.fsw._getWatchedDir(n).add(o);let a=W.resolve(e),c={persistent:r.persistent};s||(s=bo);let u;return r.usePolling?(c.interval=r.enableBinaryInterval&&To(o)?r.binaryInterval:r.interval,u=Bo(e,a,c,{listener:s,rawEmitter:this.fsw._emitRaw})):u=Wo(e,a,c,{listener:s,errHandler:this._boundHandleError,rawEmitter:this.fsw._emitRaw}),u}_handleFile(e,s,r){if(this.fsw.closed)return;let n=W.dirname(e),o=W.basename(e),i=this.fsw._getWatchedDir(n),a=s;if(i.has(o))return;let c=async(f,h)=>{if(this.fsw._throttle(Ho,e,5)){if(!h||h.mtimeMs===0)try{let l=await Ur(e);if(this.fsw.closed)return;let m=l.atimeMs,y=l.mtimeMs;(!m||m<=y||y!==a.mtimeMs)&&this.fsw._emit(Xe,e,l),xo&&a.ino!==l.ino?(this.fsw._closeFile(f),a=l,this.fsw._addPathCloser(f,this._watchWithNodeFs(e,c))):a=l}catch{this.fsw._remove(n,o)}else if(i.has(o)){let l=h.atimeMs,m=h.mtimeMs;(!l||l<=m||m!==a.mtimeMs)&&this.fsw._emit(Xe,e,h),a=h}}},u=this._watchWithNodeFs(e,c);if(!(r&&this.fsw.options.ignoreInitial)&&this.fsw._isntIgnored(e)){if(!this.fsw._throttle(ze,e,0))return;this.fsw._emit(ze,e,s)}return u}async _handleSymlink(e,s,r,n){if(this.fsw.closed)return;let o=e.fullPath,i=this.fsw._getWatchedDir(s);if(!this.fsw.options.followSymlinks){this.fsw._incrReadyCount();let a;try{a=await kt(r)}catch{return this.fsw._emitReady(),!0}return this.fsw.closed?void 0:(i.has(n)?this.fsw._symlinkPaths.get(o)!==a&&(this.fsw._symlinkPaths.set(o,a),this.fsw._emit(Xe,r,e.stats)):(i.add(n),this.fsw._symlinkPaths.set(o,a),this.fsw._emit(ze,r,e.stats)),this.fsw._emitReady(),!0)}if(this.fsw._symlinkPaths.has(o))return!0;this.fsw._symlinkPaths.set(o,!0)}_handleRead(e,s,r,n,o,i,a){if(e=W.join(e,Io),!r.hasGlob&&(a=this.fsw._throttle("readdir",e,1e3),!a))return;let c=this.fsw._getWatchedDir(r.path),u=new Set,f=this.fsw._readdirp(e,{fileFilter:h=>r.filterPath(h),directoryFilter:h=>r.filterDir(h),depth:0}).on(No,async h=>{if(this.fsw.closed){f=void 0;return}let l=h.path,m=W.join(e,l);if(u.add(l),!(h.stats.isSymbolicLink()&&await this._handleSymlink(h,e,m,l))){if(this.fsw.closed){f=void 0;return}(l===n||!n&&!c.has(l))&&(this.fsw._incrReadyCount(),m=W.join(o,W.relative(o,m)),this._addToNodeFs(m,s,r,i+1))}}).on(Mr,this._boundHandleError);return new Promise(h=>f.once(Po,()=>{if(this.fsw.closed){f=void 0;return}let l=a?a.clear():!1;h(),c.getChildren().filter(m=>m!==e&&!u.has(m)&&(!r.hasGlob||r.filterPath({fullPath:W.resolve(e,m)}))).forEach(m=>{this.fsw._remove(e,m)}),f=void 0,l&&this._handleRead(e,!1,r,n,o,i,a)}))}async _handleDir(e,s,r,n,o,i,a){let c=this.fsw._getWatchedDir(W.dirname(e)),u=c.has(W.basename(e));!(r&&this.fsw.options.ignoreInitial)&&!o&&!u&&(!i.hasGlob||i.globFilter(e))&&this.fsw._emit(ko,e,s),c.add(W.basename(e)),this.fsw._getWatchedDir(e);let f,h,l=this.fsw.options.depth;if((l==null||n<=l)&&!this.fsw._symlinkPaths.has(a)){if(!o&&(await this._handleRead(e,r,i,o,e,n,f),this.fsw.closed))return;h=this._watchWithNodeFs(e,(m,y)=>{y&&y.mtimeMs===0||this._handleRead(m,!1,i,o,e,n,f)})}return h}async _addToNodeFs(e,s,r,n,o){let i=this.fsw._emitReady;if(this.fsw._isIgnored(e)||this.fsw.closed)return i(),!1;let a=this.fsw._getWatchHelpers(e,n);!a.hasGlob&&r&&(a.hasGlob=r.hasGlob,a.globFilter=r.globFilter,a.filterPath=c=>r.filterPath(c),a.filterDir=c=>r.filterDir(c));try{let c=await Mo[a.statMethod](a.watchPath);if(this.fsw.closed)return;if(this.fsw._isIgnored(a.watchPath,c))return i(),!1;let u=this.fsw.options.followSymlinks&&!e.includes(Lo)&&!e.includes(Oo),f;if(c.isDirectory()){let h=W.resolve(e),l=u?await kt(e):e;if(this.fsw.closed||(f=await this._handleDir(a.watchPath,c,s,n,o,a,l),this.fsw.closed))return;h!==l&&l!==void 0&&this.fsw._symlinkPaths.set(h,l)}else if(c.isSymbolicLink()){let h=u?await kt(e):e;if(this.fsw.closed)return;let l=W.dirname(a.watchPath);if(this.fsw._getWatchedDir(l).add(a.watchPath),this.fsw._emit(ze,a.watchPath,c),f=await this._handleDir(l,c,s,n,e,a,h),this.fsw.closed)return;h!==void 0&&this.fsw._symlinkPaths.set(W.resolve(e),h)}else f=this._handleFile(a.watchPath,c,s);return i(),this.fsw._addPathCloser(e,f),!1}catch(c){if(this.fsw._handleError(c))return i(),e}}};Br.exports=Ot});var Xr=v((Mc,Wt)=>{"use strict";var Mt=H("fs"),B=H("path"),{promisify:Ut}=H("util"),Re;try{Re=H("fsevents")}catch(t){process.env.CHOKIDAR_PRINT_FSEVENTS_REQUIRE_ERROR&&console.error(t)}if(Re){let t=process.version.match(/v(\d+)\.(\d+)/);if(t&&t[1]&&t[2]){let e=Number.parseInt(t[1],10),s=Number.parseInt(t[2],10);e===8&&s<16&&(Re=void 0)}}var{EV_ADD:Lt,EV_CHANGE:Go,EV_ADD_DIR:qr,EV_UNLINK:Je,EV_ERROR:qo,STR_DATA:Ko,STR_END:Vo,FSEVENT_CREATED:jo,FSEVENT_MODIFIED:Yo,FSEVENT_DELETED:zo,FSEVENT_MOVED:Xo,FSEVENT_UNKNOWN:Qo,FSEVENT_FLAG_MUST_SCAN_SUBDIRS:Zo,FSEVENT_TYPE_FILE:Jo,FSEVENT_TYPE_DIRECTORY:ke,FSEVENT_TYPE_SYMLINK:zr,ROOT_GLOBSTAR:Kr,DIR_SUFFIX:ea,DOT_SLASH:Vr,FUNCTION_TYPE:Ht,EMPTY_FN:ta,IDENTITY_FN:sa}=Ye(),ra=t=>isNaN(t)?{}:{depth:t},Ft=Ut(Mt.stat),na=Ut(Mt.lstat),jr=Ut(Mt.realpath),ia={stat:Ft,lstat:na},he=new Map,oa=10,aa=new Set([69888,70400,71424,72704,73472,131328,131840,262912]),ca=(t,e)=>({stop:Re.watch(t,e)});function la(t,e,s,r){let n=B.extname(e)?B.dirname(e):e,o=B.dirname(n),i=he.get(n);ua(o)&&(n=o);let a=B.resolve(t),c=a!==e,u=(h,l,m)=>{c&&(h=h.replace(e,a)),(h===a||!h.indexOf(a+B.sep))&&s(h,l,m)},f=!1;for(let h of he.keys())if(e.indexOf(B.resolve(h)+B.sep)===0){n=h,i=he.get(n),f=!0;break}return i||f?i.listeners.add(u):(i={listeners:new Set([u]),rawEmitter:r,watcher:ca(n,(h,l)=>{if(!i.listeners.size||l&Zo)return;let m=Re.getInfo(h,l);i.listeners.forEach(y=>{y(h,l,m)}),i.rawEmitter(m.event,h,m)})},he.set(n,i)),()=>{let h=i.listeners;if(h.delete(u),!h.size&&(he.delete(n),i.watcher))return i.watcher.stop().then(()=>{i.rawEmitter=i.watcher=void 0,Object.freeze(i)})}}var ua=t=>{let e=0;for(let s of he.keys())if(s.indexOf(t)===0&&(e++,e>=oa))return!0;return!1},fa=()=>Re&&he.size<128,Dt=(t,e)=>{let s=0;for(;!t.indexOf(e)&&(t=B.dirname(t))!==e;)s++;return s},Yr=(t,e)=>t.type===ke&&e.isDirectory()||t.type===zr&&e.isSymbolicLink()||t.type===Jo&&e.isFile(),$t=class{constructor(e){this.fsw=e}checkIgnored(e,s){let r=this.fsw._ignoredPaths;if(this.fsw._isIgnored(e,s))return r.add(e),s&&s.isDirectory()&&r.add(e+Kr),!0;r.delete(e),r.delete(e+Kr)}addOrChange(e,s,r,n,o,i,a,c){let u=o.has(i)?Go:Lt;this.handleEvent(u,e,s,r,n,o,i,a,c)}async checkExists(e,s,r,n,o,i,a,c){try{let u=await Ft(e);if(this.fsw.closed)return;Yr(a,u)?this.addOrChange(e,s,r,n,o,i,a,c):this.handleEvent(Je,e,s,r,n,o,i,a,c)}catch(u){u.code==="EACCES"?this.addOrChange(e,s,r,n,o,i,a,c):this.handleEvent(Je,e,s,r,n,o,i,a,c)}}handleEvent(e,s,r,n,o,i,a,c,u){if(!(this.fsw.closed||this.checkIgnored(s)))if(e===Je){let f=c.type===ke;(f||i.has(a))&&this.fsw._remove(o,a,f)}else{if(e===Lt){if(c.type===ke&&this.fsw._getWatchedDir(s),c.type===zr&&u.followSymlinks){let h=u.depth===void 0?void 0:Dt(r,n)+1;return this._addToFsEvents(s,!1,!0,h)}this.fsw._getWatchedDir(o).add(a)}let f=c.type===ke?e+ea:e;this.fsw._emit(f,s),f===qr&&this._addToFsEvents(s,!1,!0)}}_watchWithFsEvents(e,s,r,n){if(this.fsw.closed||this.fsw._isIgnored(e))return;let o=this.fsw.options,a=la(e,s,async(c,u,f)=>{if(this.fsw.closed||o.depth!==void 0&&Dt(c,s)>o.depth)return;let h=r(B.join(e,B.relative(e,c)));if(n&&!n(h))return;let l=B.dirname(h),m=B.basename(h),y=this.fsw._getWatchedDir(f.type===ke?h:l);if(aa.has(u)||f.event===Qo)if(typeof o.ignored===Ht){let w;try{w=await Ft(h)}catch{}if(this.fsw.closed||this.checkIgnored(h,w))return;Yr(f,w)?this.addOrChange(h,c,s,l,y,m,f,o):this.handleEvent(Je,h,c,s,l,y,m,f,o)}else this.checkExists(h,c,s,l,y,m,f,o);else switch(f.event){case jo:case Yo:return this.addOrChange(h,c,s,l,y,m,f,o);case zo:case Xo:return this.checkExists(h,c,s,l,y,m,f,o)}},this.fsw._emitRaw);return this.fsw._emitReady(),a}async _handleFsEventsSymlink(e,s,r,n){if(!(this.fsw.closed||this.fsw._symlinkPaths.has(s))){this.fsw._symlinkPaths.set(s,!0),this.fsw._incrReadyCount();try{let o=await jr(e);if(this.fsw.closed)return;if(this.fsw._isIgnored(o))return this.fsw._emitReady();this.fsw._incrReadyCount(),this._addToFsEvents(o||e,i=>{let a=e;return o&&o!==Vr?a=i.replace(o,e):i!==Vr&&(a=B.join(e,i)),r(a)},!1,n)}catch(o){if(this.fsw._handleError(o))return this.fsw._emitReady()}}}emitAdd(e,s,r,n,o){let i=r(e),a=s.isDirectory(),c=this.fsw._getWatchedDir(B.dirname(i)),u=B.basename(i);a&&this.fsw._getWatchedDir(i),!c.has(u)&&(c.add(u),(!n.ignoreInitial||o===!0)&&this.fsw._emit(a?qr:Lt,i,s))}initWatch(e,s,r,n){if(this.fsw.closed)return;let o=this._watchWithFsEvents(r.watchPath,B.resolve(e||r.watchPath),n,r.globFilter);this.fsw._addPathCloser(s,o)}async _addToFsEvents(e,s,r,n){if(this.fsw.closed)return;let o=this.fsw.options,i=typeof s===Ht?s:sa,a=this.fsw._getWatchHelpers(e);try{let c=await ia[a.statMethod](a.watchPath);if(this.fsw.closed)return;if(this.fsw._isIgnored(a.watchPath,c))throw null;if(c.isDirectory()){if(a.globFilter||this.emitAdd(i(e),c,i,o,r),n&&n>o.depth)return;this.fsw._readdirp(a.watchPath,{fileFilter:u=>a.filterPath(u),directoryFilter:u=>a.filterDir(u),...ra(o.depth-(n||0))}).on(Ko,u=>{if(this.fsw.closed||u.stats.isDirectory()&&!a.filterPath(u))return;let f=B.join(a.watchPath,u.path),{fullPath:h}=u;if(a.followSymlinks&&u.stats.isSymbolicLink()){let l=o.depth===void 0?void 0:Dt(f,B.resolve(a.watchPath))+1;this._handleFsEventsSymlink(f,h,i,l)}else this.emitAdd(f,u.stats,i,o,r)}).on(qo,ta).on(Vo,()=>{this.fsw._emitReady()})}else this.emitAdd(a.watchPath,c,i,o,r),this.fsw._emitReady()}catch(c){(!c||this.fsw._handleError(c))&&(this.fsw._emitReady(),this.fsw._emitReady())}if(o.persistent&&r!==!0)if(typeof s===Ht)this.initWatch(void 0,e,a,i);else{let c;try{c=await jr(a.watchPath)}catch{}this.initWatch(c,e,a,i)}}};Wt.exports=$t;Wt.exports.canUse=fa});var cn=v(ss=>{"use strict";var{EventEmitter:ha}=H("events"),es=H("fs"),k=H("path"),{promisify:rn}=H("util"),da=Ds(),jt=Gs().default,pa=zs(),Bt=wt(),_a=Pr(),Ea=yt(),ga=Gr(),Qr=Xr(),{EV_ALL:Gt,EV_READY:ma,EV_ADD:et,EV_CHANGE:Ne,EV_UNLINK:Zr,EV_ADD_DIR:ya,EV_UNLINK_DIR:Ra,EV_RAW:wa,EV_ERROR:qt,STR_CLOSE:Aa,STR_END:Sa,BACK_SLASH_RE:Ta,DOUBLE_SLASH_RE:Jr,SLASH_OR_BACK_SLASH_RE:Ca,DOT_RE:xa,REPLACER_RE:ba,SLASH:Kt,SLASH_SLASH:Ia,BRACE_START:va,BANG:Yt,ONE_DOT:nn,TWO_DOTS:ka,GLOBSTAR:Na,SLASH_GLOBSTAR:Vt,ANYMATCH_OPTS:zt,STRING_TYPE:ts,FUNCTION_TYPE:Pa,EMPTY_STR:Xt,EMPTY_FN:Oa,isWindows:La,isMacos:Ha,isIBMi:Da}=Ye(),Fa=rn(es.stat),$a=rn(es.readdir),Qt=(t=[])=>Array.isArray(t)?t:[t],on=(t,e=[])=>(t.forEach(s=>{Array.isArray(s)?on(s,e):e.push(s)}),e),en=t=>{let e=on(Qt(t));if(!e.every(s=>typeof s===ts))throw new TypeError(`Non-string provided as watch path: ${e}`);return e.map(an)},tn=t=>{let e=t.replace(Ta,Kt),s=!1;for(e.startsWith(Ia)&&(s=!0);e.match(Jr);)e=e.replace(Jr,Kt);return s&&(e=Kt+e),e},an=t=>tn(k.normalize(tn(t))),sn=(t=Xt)=>e=>typeof e!==ts?e:an(k.isAbsolute(e)?e:k.join(t,e)),Ma=(t,e)=>k.isAbsolute(t)?t:t.startsWith(Yt)?Yt+k.join(e,t.slice(1)):k.join(e,t),J=(t,e)=>t[e]===void 0,Zt=class{constructor(e,s){this.path=e,this._removeWatcher=s,this.items=new Set}add(e){let{items:s}=this;s&&e!==nn&&e!==ka&&s.add(e)}async remove(e){let{items:s}=this;if(!s||(s.delete(e),s.size>0))return;let r=this.path;try{await $a(r)}catch{this._removeWatcher&&this._removeWatcher(k.dirname(r),k.basename(r))}}has(e){let{items:s}=this;if(s)return s.has(e)}getChildren(){let{items:e}=this;if(e)return[...e.values()]}dispose(){this.items.clear(),delete this.path,delete this._removeWatcher,delete this.items,Object.freeze(this)}},Ua="stat",Wa="lstat",Jt=class{constructor(e,s,r,n){this.fsw=n,this.path=e=e.replace(ba,Xt),this.watchPath=s,this.fullWatchPath=k.resolve(s),this.hasGlob=s!==e,e===Xt&&(this.hasGlob=!1),this.globSymlink=this.hasGlob&&r?void 0:!1,this.globFilter=this.hasGlob?jt(e,void 0,zt):!1,this.dirParts=this.getDirParts(e),this.dirParts.forEach(o=>{o.length>1&&o.pop()}),this.followSymlinks=r,this.statMethod=r?Ua:Wa}checkGlobSymlink(e){return this.globSymlink===void 0&&(this.globSymlink=e.fullParentDir===this.fullWatchPath?!1:{realPath:e.fullParentDir,linkPath:this.fullWatchPath}),this.globSymlink?e.fullPath.replace(this.globSymlink.realPath,this.globSymlink.linkPath):e.fullPath}entryPath(e){return k.join(this.watchPath,k.relative(this.watchPath,this.checkGlobSymlink(e)))}filterPath(e){let{stats:s}=e;if(s&&s.isSymbolicLink())return this.filterDir(e);let r=this.entryPath(e);return(this.hasGlob&&typeof this.globFilter===Pa?this.globFilter(r):!0)&&this.fsw._isntIgnored(r,s)&&this.fsw._hasReadPermissions(s)}getDirParts(e){if(!this.hasGlob)return[];let s=[];return(e.includes(va)?_a.expand(e):[e]).forEach(n=>{s.push(k.relative(this.watchPath,n).split(Ca))}),s}filterDir(e){if(this.hasGlob){let s=this.getDirParts(this.checkGlobSymlink(e)),r=!1;this.unmatchedGlob=!this.dirParts.some(n=>n.every((o,i)=>(o===Na&&(r=!0),r||!s[0][i]||jt(o,s[0][i],zt))))}return!this.unmatchedGlob&&this.fsw._isntIgnored(this.entryPath(e),e.stats)}},tt=class extends ha{constructor(e){super();let s={};e&&Object.assign(s,e),this._watched=new Map,this._closers=new Map,this._ignoredPaths=new Set,this._throttled=new Map,this._symlinkPaths=new Map,this._streams=new Set,this.closed=!1,J(s,"persistent")&&(s.persistent=!0),J(s,"ignoreInitial")&&(s.ignoreInitial=!1),J(s,"ignorePermissionErrors")&&(s.ignorePermissionErrors=!1),J(s,"interval")&&(s.interval=100),J(s,"binaryInterval")&&(s.binaryInterval=300),J(s,"disableGlobbing")&&(s.disableGlobbing=!1),s.enableBinaryInterval=s.binaryInterval!==s.interval,J(s,"useFsEvents")&&(s.useFsEvents=!s.usePolling),Qr.canUse()||(s.useFsEvents=!1),J(s,"usePolling")&&!s.useFsEvents&&(s.usePolling=Ha),Da&&(s.usePolling=!0);let n=process.env.CHOKIDAR_USEPOLLING;if(n!==void 0){let c=n.toLowerCase();c==="false"||c==="0"?s.usePolling=!1:c==="true"||c==="1"?s.usePolling=!0:s.usePolling=!!c}let o=process.env.CHOKIDAR_INTERVAL;o&&(s.interval=Number.parseInt(o,10)),J(s,"atomic")&&(s.atomic=!s.usePolling&&!s.useFsEvents),s.atomic&&(this._pendingUnlinks=new Map),J(s,"followSymlinks")&&(s.followSymlinks=!0),J(s,"awaitWriteFinish")&&(s.awaitWriteFinish=!1),s.awaitWriteFinish===!0&&(s.awaitWriteFinish={});let i=s.awaitWriteFinish;i&&(i.stabilityThreshold||(i.stabilityThreshold=2e3),i.pollInterval||(i.pollInterval=100),this._pendingWrites=new Map),s.ignored&&(s.ignored=Qt(s.ignored));let a=0;this._emitReady=()=>{a++,a>=this._readyCount&&(this._emitReady=Oa,this._readyEmitted=!0,process.nextTick(()=>this.emit(ma)))},this._emitRaw=(...c)=>this.emit(wa,...c),this._readyEmitted=!1,this.options=s,s.useFsEvents?this._fsEventsHandler=new Qr(this):this._nodeFsHandler=new ga(this),Object.freeze(s)}add(e,s,r){let{cwd:n,disableGlobbing:o}=this.options;this.closed=!1;let i=en(e);return n&&(i=i.map(a=>{let c=Ma(a,n);return o||!Bt(a)?c:Ea(c)})),i=i.filter(a=>a.startsWith(Yt)?(this._ignoredPaths.add(a.slice(1)),!1):(this._ignoredPaths.delete(a),this._ignoredPaths.delete(a+Vt),this._userIgnored=void 0,!0)),this.options.useFsEvents&&this._fsEventsHandler?(this._readyCount||(this._readyCount=i.length),this.options.persistent&&(this._readyCount+=i.length),i.forEach(a=>this._fsEventsHandler._addToFsEvents(a))):(this._readyCount||(this._readyCount=0),this._readyCount+=i.length,Promise.all(i.map(async a=>{let c=await this._nodeFsHandler._addToNodeFs(a,!r,0,0,s);return c&&this._emitReady(),c})).then(a=>{this.closed||a.filter(c=>c).forEach(c=>{this.add(k.dirname(c),k.basename(s||c))})})),this}unwatch(e){if(this.closed)return this;let s=en(e),{cwd:r}=this.options;return s.forEach(n=>{!k.isAbsolute(n)&&!this._closers.has(n)&&(r&&(n=k.join(r,n)),n=k.resolve(n)),this._closePath(n),this._ignoredPaths.add(n),this._watched.has(n)&&this._ignoredPaths.add(n+Vt),this._userIgnored=void 0}),this}close(){if(this.closed)return this._closePromise;this.closed=!0,this.removeAllListeners();let e=[];return this._closers.forEach(s=>s.forEach(r=>{let n=r();n instanceof Promise&&e.push(n)})),this._streams.forEach(s=>s.destroy()),this._userIgnored=void 0,this._readyCount=0,this._readyEmitted=!1,this._watched.forEach(s=>s.dispose()),["closers","watched","streams","symlinkPaths","throttled"].forEach(s=>{this[`_${s}`].clear()}),this._closePromise=e.length?Promise.all(e).then(()=>{}):Promise.resolve(),this._closePromise}getWatched(){let e={};return this._watched.forEach((s,r)=>{let n=this.options.cwd?k.relative(this.options.cwd,r):r;e[n||nn]=s.getChildren().sort()}),e}emitWithAll(e,s){this.emit(...s),e!==qt&&this.emit(Gt,...s)}async _emit(e,s,r,n,o){if(this.closed)return;let i=this.options;La&&(s=k.normalize(s)),i.cwd&&(s=k.relative(i.cwd,s));let a=[e,s];o!==void 0?a.push(r,n,o):n!==void 0?a.push(r,n):r!==void 0&&a.push(r);let c=i.awaitWriteFinish,u;if(c&&(u=this._pendingWrites.get(s)))return u.lastChange=new Date,this;if(i.atomic){if(e===Zr)return this._pendingUnlinks.set(s,a),setTimeout(()=>{this._pendingUnlinks.forEach((f,h)=>{this.emit(...f),this.emit(Gt,...f),this._pendingUnlinks.delete(h)})},typeof i.atomic=="number"?i.atomic:100),this;e===et&&this._pendingUnlinks.has(s)&&(e=a[0]=Ne,this._pendingUnlinks.delete(s))}if(c&&(e===et||e===Ne)&&this._readyEmitted){let f=(h,l)=>{h?(e=a[0]=qt,a[1]=h,this.emitWithAll(e,a)):l&&(a.length>2?a[2]=l:a.push(l),this.emitWithAll(e,a))};return this._awaitWriteFinish(s,c.stabilityThreshold,e,f),this}if(e===Ne&&!this._throttle(Ne,s,50))return this;if(i.alwaysStat&&r===void 0&&(e===et||e===ya||e===Ne)){let f=i.cwd?k.join(i.cwd,s):s,h;try{h=await Fa(f)}catch{}if(!h||this.closed)return;a.push(h)}return this.emitWithAll(e,a),this}_handleError(e){let s=e&&e.code;return e&&s!=="ENOENT"&&s!=="ENOTDIR"&&(!this.options.ignorePermissionErrors||s!=="EPERM"&&s!=="EACCES")&&this.emit(qt,e),e||this.closed}_throttle(e,s,r){this._throttled.has(e)||this._throttled.set(e,new Map);let n=this._throttled.get(e),o=n.get(s);if(o)return o.count++,!1;let i,a=()=>{let u=n.get(s),f=u?u.count:0;return n.delete(s),clearTimeout(i),u&&clearTimeout(u.timeoutObject),f};i=setTimeout(a,r);let c={timeoutObject:i,clear:a,count:0};return n.set(s,c),c}_incrReadyCount(){return this._readyCount++}_awaitWriteFinish(e,s,r,n){let o,i=e;this.options.cwd&&!k.isAbsolute(e)&&(i=k.join(this.options.cwd,e));let a=new Date,c=u=>{es.stat(i,(f,h)=>{if(f||!this._pendingWrites.has(e)){f&&f.code!=="ENOENT"&&n(f);return}let l=Number(new Date);u&&h.size!==u.size&&(this._pendingWrites.get(e).lastChange=l);let m=this._pendingWrites.get(e);l-m.lastChange>=s?(this._pendingWrites.delete(e),n(void 0,h)):o=setTimeout(c,this.options.awaitWriteFinish.pollInterval,h)})};this._pendingWrites.has(e)||(this._pendingWrites.set(e,{lastChange:a,cancelWait:()=>(this._pendingWrites.delete(e),clearTimeout(o),r)}),o=setTimeout(c,this.options.awaitWriteFinish.pollInterval))}_getGlobIgnored(){return[...this._ignoredPaths.values()]}_isIgnored(e,s){if(this.options.atomic&&xa.test(e))return!0;if(!this._userIgnored){let{cwd:r}=this.options,n=this.options.ignored,o=n&&n.map(sn(r)),i=Qt(o).filter(c=>typeof c===ts&&!Bt(c)).map(c=>c+Vt),a=this._getGlobIgnored().map(sn(r)).concat(o,i);this._userIgnored=jt(a,void 0,zt)}return this._userIgnored([e,s])}_isntIgnored(e,s){return!this._isIgnored(e,s)}_getWatchHelpers(e,s){let r=s||this.options.disableGlobbing||!Bt(e)?e:pa(e),n=this.options.followSymlinks;return new Jt(e,r,n,this)}_getWatchedDir(e){this._boundRemove||(this._boundRemove=this._remove.bind(this));let s=k.resolve(e);return this._watched.has(s)||this._watched.set(s,new Zt(s,this._boundRemove)),this._watched.get(s)}_hasReadPermissions(e){if(this.options.ignorePermissionErrors)return!0;let r=(e&&Number.parseInt(e.mode,10))&511;return!!(4&Number.parseInt(r.toString(8)[0],10))}_remove(e,s,r){let n=k.join(e,s),o=k.resolve(n);if(r=r??(this._watched.has(n)||this._watched.has(o)),!this._throttle("remove",n,100))return;!r&&!this.options.useFsEvents&&this._watched.size===1&&this.add(e,s,!0),this._getWatchedDir(n).getChildren().forEach(l=>this._remove(n,l));let c=this._getWatchedDir(e),u=c.has(s);c.remove(s),this._symlinkPaths.has(o)&&this._symlinkPaths.delete(o);let f=n;if(this.options.cwd&&(f=k.relative(this.options.cwd,n)),this.options.awaitWriteFinish&&this._pendingWrites.has(f)&&this._pendingWrites.get(f).cancelWait()===et)return;this._watched.delete(n),this._watched.delete(o);let h=r?Ra:Zr;u&&!this._isIgnored(n)&&this._emit(h,n),this.options.useFsEvents||this._closePath(n)}_closePath(e){this._closeFile(e);let s=k.dirname(e);this._getWatchedDir(s).remove(k.basename(e))}_closeFile(e){let s=this._closers.get(e);s&&(s.forEach(r=>r()),this._closers.delete(e))}_addPathCloser(e,s){if(!s)return;let r=this._closers.get(e);r||(r=[],this._closers.set(e,r)),r.push(s)}_readdirp(e,s){if(this.closed)return;let r={type:Gt,alwaysStat:!0,lstat:!0,...s},n=da(e,r);return this._streams.add(n),n.once(Aa,()=>{n=void 0}),n.once(Sa,()=>{n&&(this._streams.delete(n),n=void 0)}),n}};ss.FSWatcher=tt;var Ba=(t,e)=>{let s=new tt(e);return s.add(t),s};ss.watch=Ba});import"only-server";import"../common/index.mjs";var fn=Pn(cn(),1);import{fork as qa}from"node:child_process";import{existsSync as ln,promises as Ka}from"node:fs";import{basename as ns,dirname as os,join as is,relative as un}from"node:path";import{build as Va}from"esbuild";import{jwtDecode as ja}from"jwt-decode";import{Issuer as Ya,custom as za}from"openid-client";import{Logger as Xa}from"@5minds/processcube_engine_sdk";import{EngineClient as Ga}from"@5minds/processcube_engine_client";var rs=process.env.PROCESSCUBE_ENGINE_URL??"http://localhost:10560",N=new Ga(rs);var Qa={token:"ZHVtbXlfdG9rZW4=",userId:"dummy_token"},Za=.85,st=["external_task.ts","external_task.js"],as=process.env.PROCESSCUBE_AUTHORITY_URL!==void 0,pe=new Xa("processcube_app_sdk:external_task_adapter"),de={},Pe;async function hn(t){if(t&&!ln(t))throw new Error(`Invalid customExternalTasksDirPath. The given path '${t}' does not exist`);za.setHttpOptionsDefaults({timeout:1e5});let e=await _n();Pe=await En(e),await ec(e);let s=sc(t);(0,fn.watch)(s).on("add",async r=>{if(st.includes(ns(r)))return dn(r,s)}).on("change",async r=>{if(st.includes(ns(r)))return Ja(r,s)}).on("unlink",async r=>{st.includes(ns(r))&&pn(r)}).on("error",r=>pe.error(`Watcher error: ${r}`))}async function dn(t,e){let s=os(t);if((await Ka.readdir(s)).filter(f=>st.includes(f)).length>1){pe.error(`Multiple external task files found in directory ${s}. Stopping all external task workers for this directory.`),de[s]&&pn(t);return}let o=await gn(t),i=un(e,s),a=mn(i),c=is(__dirname,"lib/ExternalTaskWorkerProcess.cjs"),u=qa(c,{env:{NODE_ENV:process.env.NODE_ENV,PROCESSCUBE_ENGINE_URL:rs}});de[s]=u,u.once("disconnect",()=>{delete de[s]}),u.send({action:"create",payload:{topic:a,identity:Pe,moduleString:o,workerPath:t}})}async function Ja(t,e){let s=os(t),r=de[s];if(!r)return dn(t,e);let n=await gn(t),o=un(e,s),i=mn(o);r.send({action:"restart",payload:{topic:i,identity:Pe,moduleString:n,workerPath:t}})}function pn(t){let e=os(t),s=de[e];s&&s.kill()}async function _n(){if(!as)return null;if(!process.env.PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_ID||!process.env.PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_SECRET){let r=new Error("Required environment variables PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_ID and PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_SECRET are missing. For help, please refer to our documentation on environment variables at: https://processcube.io/docs/app-sdk/samples/nextjs/external-task-adapter-with-nextjs#authority");throw pe.error("Required environment variables PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_ID and PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_SECRET are missing",{err:r}),r}let t=await Ya.discover(process.env.PROCESSCUBE_AUTHORITY_URL);return await new t.Client({client_id:process.env.PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_ID,client_secret:process.env.PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_SECRET}).grant({grant_type:"client_credentials",scope:"engine_etw"})}function En(t){if(!as||t===null)return Qa;let e=t.access_token,s=ja(e);return{token:t.access_token,userId:s.sub}}async function ec(t){let e=5;if(!as||t===null)return;let r=await tc(t)*Za*1e3,n=async()=>{try{let o=await _n();Pe=En(o);for(let i of Object.values(de))i.send({action:"updateIdentity",payload:{identity:Pe}});e=5,setTimeout(n,r)}catch(o){if(e===0){pe.error("Could not refresh identity for external task worker processes. Stopping all external task workers.",{error:o});for(let a of Object.values(de))a.kill();return}pe.error("Could not refresh identity for external task worker processes.",{error:o,retryCount:e}),e--;let i=2*1e3;setTimeout(n,i)}};setTimeout(n,r)}async function gn(t){let e=await Va({entryPoints:[t],write:!1,bundle:!0,platform:"node",target:"node18",format:"cjs",external:["@opentelemetry/api"]});if(e.errors.length>0)throw pe.error(`Could not transpile file at '${t}'`,{errors:e.errors}),new Error(`Could not transpile file at '${t}'`);return e.warnings.length>0&&pe.warn(`Transpiled file at '${t}' with warnings`,{warnings:e.warnings}),e.outputFiles[0].text}async function tc(t){let e=t.expires_in;if(!e&&t.expires_at&&(e=Math.floor(t.expires_at-Date.now()/1e3)),e===void 0)throw new Error("Could not determine the time until the access token for external task workers expires");return e}function mn(t){return t.replace(/^\.\/+|\([^)]+\)|^\/*|\/*$/g,"").replace(/[\/]{2,}/g,"/")}function sc(t){let e,s=[t,is(process.cwd(),"app"),is(process.cwd(),"src","app")];for(let r of s)if(r&&ln(r)){e=r;break}if(!e)throw new Error("Could not find external tasks directory");return e}function sl(){return N}import{getToken as yn}from"next-auth/jwt";import{ResponseCookies as rc}from"next/dist/compiled/@edge-runtime/cookies";import{cookies as rt,headers as Rn}from"next/headers";var nc=process.env.NEXTAUTH_URL?.startsWith("https://"),wn=`${nc?"__Secure-":""}next-auth.session-token`;async function al(){let t=await yn({req:{cookies:rt(),headers:Rn()}});if(t?.expiresAt&&Date.now()>=t.expiresAt*1e3){let s=await fetch(`${process.env.NEXTAUTH_URL}/api/auth/session`,{method:"GET",headers:{"Content-Type":"application/json",cookie:rt().toString()}}),r=new rc(s.headers),n=r.get(wn);if(n){let o=!1;try{rt().set(wn,n.value,{...n})}catch{o=!0}if(t=await yn({req:{cookies:o?r:rt(),headers:Rn()}}),t?.error)throw t.error}}if(!t?.accessToken||!t?.sub)throw new Error("AccessToken or Sub could not be determined!");return{token:t?.accessToken,userId:t?.sub}}import{DataModels as nt}from"@5minds/processcube_engine_client";async function fl(t){return await N.processInstances.query({...t?.query,state:nt.ProcessInstances.ProcessInstanceState.running},t?.options)}async function hl(t){let{processInstanceId:e}=t;return new Promise(async(s,r)=>{let n=[],o=async i=>{if(e!==void 0&&i.processInstanceId!==e)return;let c=await N.processInstances.query({processInstanceId:i.processInstanceId});for(let u of n)N.notification.removeSubscription(u);return c.totalCount===0?r(new Error(`Process with instance ID "${i.processInstanceId}" does not exist.`)):s(c.processInstances[0])};if(n.push(await N.notification.onProcessEnded(o)),n.push(await N.notification.onProcessError(o)),n.push(await N.notification.onProcessTerminated(o)),e){let i=await N.processInstances.query({processInstanceId:e,state:[nt.ProcessInstances.ProcessInstanceState.finished,nt.ProcessInstances.ProcessInstanceState.terminated,nt.ProcessInstances.ProcessInstanceState.error]});if(i.totalCount>0){for(let a of n)N.notification.removeSubscription(a);s(i.processInstances[0])}}})}import{DataModels as oe}from"@5minds/processcube_engine_client";import{mapUserTask as An,mapUserTaskList as _e}from"../common/index.mjs";async function yl(t={},e){let{correlationId:s,processInstanceId:r,flowNodeId:n}=t;return new Promise(async(o,i)=>{let a=await N.userTasks.onUserTaskWaiting(async u=>{let f=s!==void 0&&u.correlationId!==s,h=u.flowNodeInstanceId===void 0,l=r!==void 0&&u.processInstanceId!==r,m=n!==void 0&&u.flowNodeId!==n;if(f||h||l||m)return;let y=await oc(u.flowNodeInstanceId,{identity:e});return N.notification.removeSubscription(a,e),y===null?i(new Error(`UserTask with instance ID "${u.flowNodeInstanceId}" does not exist.`)):o(y)},{identity:e}),c=await ic({correlationId:s,processInstanceId:r,flowNodeId:n,state:oe.FlowNodeInstances.FlowNodeInstanceState.suspended},{identity:e});c.userTasks.length>0&&(N.notification.removeSubscription(a,e),o(c.userTasks[0]))})}async function Rl(t,e={},s={},r){await N.userTasks.finishUserTask(t,s,r);let n={state:oe.FlowNodeInstances.FlowNodeInstanceState.suspended,...e},o=await N.userTasks.query(n,{identity:r});return An(o.userTasks[0])}async function ic(...t){let e=await N.userTasks.query(...t);return _e(e)}async function wl(t){let e=await N.userTasks.query({state:oe.FlowNodeInstances.FlowNodeInstanceState.suspended},t);return _e(e)}async function Al(t,e){let s=await N.userTasks.query({processInstanceId:t,state:oe.FlowNodeInstances.FlowNodeInstanceState.suspended},e);return _e(s)}async function Sl(t,e){let s=await N.userTasks.query({flowNodeId:t,state:oe.FlowNodeInstances.FlowNodeInstanceState.suspended},e);return _e(s)}async function oc(t,e){let s=await N.userTasks.query({flowNodeInstanceId:t,state:oe.FlowNodeInstances.FlowNodeInstanceState.suspended},{...e,limit:1});return s.userTasks.length===0?null:An(s.userTasks[0])}async function Tl(t,e){let s=await N.userTasks.query({correlationId:t,state:oe.FlowNodeInstances.FlowNodeInstanceState.suspended},e);return _e(s)}async function Cl(t,e){let s=await N.userTasks.query({state:oe.FlowNodeInstances.FlowNodeInstanceState.suspended},{identity:t,...e}),r=s.userTasks.filter(n=>n.actualOwnerId===t.userId);return s.userTasks=r,_e(s)}async function xl(t,e){let s=await N.userTasks.query({state:oe.FlowNodeInstances.FlowNodeInstanceState.suspended},{identity:t,...e}),r=s.userTasks.filter(n=>n.assignedUserIds?.includes(t.userId));return s.userTasks=r,_e(s)}import{PHASE_DEVELOPMENT_SERVER as ac,PHASE_PRODUCTION_BUILD as cc,PHASE_PRODUCTION_SERVER as lc}from"next/dist/shared/lib/constants";var Sn=!1,cs=!1;function Fl(t={}){let{applicationSdk:e,...s}=t;return async(r,n)=>{cs=cs||r===cc;let o=r===ac||r===lc;return e?.useExternalTasks&&o&&!Sn&&!cs&&(Sn=!0,await hn(e?.customExternalTasksDirPath)),s}}import{revalidatePath as uc}from"next/cache";import{redirect as fc}from"next/navigation";function Gl(t){uc(t),fc(t)}async function Vl(...t){return await N.processModels.startProcessInstance(...t)}async function zl(...t){await N.userTasks.finishUserTask(...t)}export{zl as finishUserTask,Rl as finishUserTaskAndGetNext,fl as getActiveProcessInstances,xl as getAssignedUserTasksByIdentity,sl as getEngineClient,al as getIdentity,Cl as getReservedUserTasksByIdentity,ic as getUserTasks,oc as getWaitingUserTaskByFlowNodeInstanceId,wl as getWaitingUserTasks,Tl as getWaitingUserTasksByCorrelationId,Sl as getWaitingUserTasksByFlowNodeId,Al as getWaitingUserTasksByProcessInstanceId,Gl as navigateToUrl,Vl as startProcess,hl as waitForProcessEnd,yl as waitForUserTask,Fl as withApplicationSdk};
3
3
  /*! Bundled license information:
4
4
 
5
5
  normalize-path/index.js:
@@ -2,7 +2,7 @@ import { IExternalTaskWorkerConfig } from '@5minds/processcube_engine_client';
2
2
  export type ExternalTaskConfig = Omit<IExternalTaskWorkerConfig, 'identity' | 'workerId'>;
3
3
  /**
4
4
  * Subscribe to external tasks.
5
- * @param {string} customExternalTasksDirPath Optional path to the external tasks directory. Uses the Next.js app directory by default.
5
+ * @param {string} customEtwRootDirectory Optional path to the external tasks directory. Uses the Next.js app directory by default.
6
6
  * @returns {Promise<void>} A promise that resolves when the external tasks are subscribed
7
7
  * */
8
- export declare function subscribeToExternalTasks(customExternalTasksDirPath?: string): Promise<void>;
8
+ export declare function subscribeToExternalTasks(customEtwRootDirectory?: string): Promise<void>;
@@ -0,0 +1,5 @@
1
+ var a=require("node:process"),p=require("@5minds/processcube_engine_client"),f=require("@5minds/processcube_engine_sdk"),i=new f.Logger("processcube_app_sdk:external_task_worker_process"),d=process.env.PROCESSCUBE_ENGINE_URL??null,e=null,c;process.on("message",async r=>{switch(r.action){case"create":await w(r.payload);break;case"restart":T(r.payload);break;case"updateIdentity":E(r.payload);break}});process.once("SIGTERM",()=>{k("External Task Worker Process received SIGTERM signal")});process.once("SIGINT",()=>{k("External Task Worker Process received SIGINT signal")});process.once("SIGHUP",()=>{k("External Task Worker Process received SIGHUP signal")});process.once("disconnect",()=>{k("External Task Worker Process received disconnect signal")});async function w({topic:r,identity:t,moduleString:o,workerPath:n,workerId:s}){c=r;let l=await m(o,n);l===null&&process.exit(1),"default"in l||(i.error(`Failed starting external task worker ${e?.workerId??""} for topic ${r}. Please export a default handler function. For more information see https://processcube.io/docs/app-sdk/samples/nextjs/external-task-adapter-with-nextjs#external-tasks-entwickeln`,{workerId:e?.workerId,topic:r,pid:a.pid}),process.exit(2));let I={identity:t,...l?.config,workerId:s},g=l.default;u(d,"EngineURL"),e=new p.ExternalTaskWorker(d,r,g,I),e.onWorkerError(y=>{u(e,"externalTaskWorker"),i.error(`External task worker ${e.workerId} for topic ${r} ran into an error`,{error:y,workerId:e.workerId,topic:r,pid:a.pid}),e.stop(),e.dispose(),process.exit(3)}),e.start(),i.info(`Started external task worker ${e.workerId} for topic ${r}`,{workerId:e.workerId,topic:r,pid:a.pid})}function T({topic:r,identity:t,moduleString:o,workerPath:n}){let s=e?.workerId;i.info(`Restarting external task worker ${s??""} for topic ${r}`,{reason:`Code changes in External Task for ${r}`,workerId:s,topic:r,pid:a.pid}),x("External Task Worker restarting"),w({topic:r,identity:t,moduleString:o,workerPath:n,workerId:s})}function E({identity:r}){e&&(e.identity=r)}function k(r){x(r),process.exit()}function x(r){i.info(`Stopping external task worker ${e?.workerId??""} for topic ${c}`,{reason:r,workerId:e?.workerId,topic:c,pid:a.pid}),e?.stop(),e?.dispose()}function m(r,t){try{var o=module.constructor,n=new o;return n._compile(r,t),n.exports}catch(s){return i.error("Could not start external task worker due to error while requiring module from string",{err:s,pid:a.pid}),null}}function u(r,t,o){if(r==null){let n=o==null?"":`
2
+
3
+ Context:
4
+
5
+ ${JSON.stringify(o,null,2)}`;throw new Error(`Unexpected value: \`${t}\` should not be null here.${n}`)}}
@@ -0,0 +1 @@
1
+ export {};
@@ -9,3 +9,14 @@ export declare function getActiveProcessInstances(query?: {
9
9
  query?: Omit<DataModels.ProcessInstances.ProcessInstanceQuery, 'state'>;
10
10
  options?: Parameters<typeof Client.processInstances.query>[1];
11
11
  }): Promise<DataModels.ProcessInstances.ProcessInstanceList>;
12
+ /**
13
+ * This function will wait until a ProcessInstance is finished, terminated or errored.
14
+ * If the processInstance is already finished, it will instantly be returned.
15
+ *
16
+ * @param filterBy Additional filter options
17
+ * @param filterBy.processInstanceId The ID of the ProcessInstance to wait for
18
+ * @returns {Promise<DataModels.ProcessInstances.ProcessInstance>} The ProcessInstance.
19
+ */
20
+ export declare function waitForProcessEnd(filterBy: {
21
+ processInstanceId?: string;
22
+ }): Promise<DataModels.ProcessInstances.ProcessInstance>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@5minds/processcube_app_sdk",
3
- "version": "5.1.0-alpha.3",
3
+ "version": "5.1.0-alpha.4",
4
4
  "description": "The SDK for ProcessCube Apps",
5
5
  "type": "module",
6
6
  "main": "build/common/index.cjs",