@inkeep/open-knowledge 0.28.2-beta.6 → 0.28.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/skills/discovery/SKILL.md +1 -1
- package/dist/assets/skills/project/SKILL.md +1 -1
- package/dist/cli.mjs +6 -6
- package/dist/constants-Br0O5zjA.mjs +2 -0
- package/dist/{dist-BVDj7oJZ.mjs → dist-AMcKbNor.mjs} +3 -3
- package/dist/{dist-72is7jRd.mjs → dist-B3w6eOOV.mjs} +1 -1
- package/dist/index.mjs +1 -1
- package/dist/init-CdmFBgOe.mjs +1 -0
- package/dist/{init-DbIWjtgk.mjs → init-gfjsyIYB.mjs} +4 -4
- package/dist/{loader-B0Qz1cKw.mjs → loader-DglCaNtQ.mjs} +2 -2
- package/dist/loader-LMMChOMd.mjs +1 -0
- package/dist/native/native-config.linux-x64-gnu.node +0 -0
- package/dist/{open-browser-R_RWX931.mjs → open-browser-D9No9V7u.mjs} +2 -2
- package/dist/preview-CP53jEdN.mjs +1 -0
- package/dist/{preview-D7QFb3z-.mjs → preview-CVMx2nNA.mjs} +2 -2
- package/dist/public/assets/{ShareReceiveDialog-Cr2ZBMyN.js → ShareReceiveDialog-BV-gfJdd.js} +1 -1
- package/dist/public/assets/index-Ba1S3D-p.css +1 -0
- package/dist/public/assets/{index-D-bcDJA-.js → index-C9zQWSQP.js} +2 -2
- package/dist/public/index.html +2 -2
- package/dist/{repair-launch-json-YSEX06r6.mjs → repair-launch-json-BXcID4fT.mjs} +2 -2
- package/dist/{repair-mcp-configs-DYnBA3lP.mjs → repair-mcp-configs-BUblf8y6.mjs} +2 -2
- package/dist/repair-skills-0DLicwIy.mjs +1 -0
- package/dist/{repair-skills-B_aLnXpL.mjs → repair-skills-oX4aXhcO.mjs} +2 -2
- package/dist/{src-CYDzs5xp.mjs → src-BOlpZYXP.mjs} +2 -2
- package/dist/{start-C9XLq-od.mjs → start-CQ5WKopr.mjs} +2 -2
- package/dist/start-CX_XR9zV.mjs +1 -0
- package/dist/{write-project-skill-ClrMnKU-.mjs → write-project-skill-Dw9Did_1.mjs} +2 -2
- package/package.json +1 -1
- package/dist/constants-Jtdc3RKL.mjs +0 -2
- package/dist/init-GUas2Dw-.mjs +0 -1
- package/dist/loader-BgFE7-QX.mjs +0 -1
- package/dist/preview-iuopu7b0.mjs +0 -1
- package/dist/public/assets/index-DF9NM9XW.css +0 -1
- package/dist/repair-skills-D_mTmSrp.mjs +0 -1
- package/dist/start-CMg-lpLY.mjs +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Fi as e,Gt as t,Hi as n,Pn as r,Q as i,_ as a,a as o,an as s,b as c,c as l,di as u,f as d,g as f,gn as p,h as m,i as h,kn as g,l as _,m as v,n as y,o as b,p as x,r as S,s as C,t as w,u as T,ua as E,un as D,v as O,y as k}from"./server-lock-iLcBw_q0-pnLGEjec.mjs";import{$ as A,$i as j,$n as M,$r as N,$t as P,A as F,Ai as I,An as L,Ar as R,At as z,B,Bi as V,Bn as H,Br as U,Bt as W,C as G,Ci as K,Cn as q,Cr as J,Ct as Y,D as X,Di as Z,Dn as Q,Dr as $,Dt as ee,E as te,Ei as ne,En as re,Er as ie,Et as ae,F as oe,Fi as se,Fn as ce,Fr as le,Ft as ue,G as de,Gi as fe,Gn as pe,Gr as me,Gt as he,H as ge,Hi as _e,Hn as ve,Hr as ye,Ht as be,I as xe,Ii as Se,In as Ce,Ir as we,It as Te,J as Ee,Ji as De,Jn as Oe,Jr as ke,Jt as Ae,K as je,Ki as Me,Kn as Ne,Kr as Pe,Kt as Fe,L as Ie,Li as Le,Ln as Re,Lr as ze,Lt as Be,M as Ve,Mi as He,Mn as Ue,Mr as We,Mt as Ge,N as Ke,Ni as qe,Nn as Je,Nr as Ye,Nt as Xe,O as Ze,Oi as Qe,On as $e,Or as et,Ot as tt,P as nt,Pi as rt,Pn as it,Pr as at,Pt as ot,Q as st,Qi as ct,Qn as lt,Qr as ut,Qt as dt,R as ft,Ri as pt,Rn as mt,Rr as ht,Rt as gt,S as _t,Sa as vt,Si as yt,Sn as bt,Sr as xt,St,T as Ct,Ti as wt,Tn as Tt,Tr as Et,Tt as Dt,U as Ot,Ui as kt,Un as At,Ur as jt,Ut as Mt,V as Nt,Vi as Pt,Vn as Ft,Vr as It,Vt as Lt,W as Rt,Wi as zt,Wn as Bt,Wr as Vt,Wt as Ht,X as Ut,Xi as Wt,Xn as Gt,Xr as Kt,Xt as qt,Y as Jt,Yi as Yt,Yn as Xt,Yr as Zt,Yt as Qt,Z as $t,Zi as en,Zn as tn,Zr as nn,Zt as rn,_ as an,_i as on,_n as sn,_r as cn,_t as ln,a as un,aa as dn,ai as fn,an as pn,ar as mn,at as hn,b as gn,bi as _n,bn as vn,br as yn,bt as bn,c as xn,ca as Sn,ci as Cn,cn as wn,cr as Tn,ct as En,d as Dn,di as On,dn as kn,dr as An,dt as jn,ea as Mn,ei as Nn,en as Pn,er as Fn,et as In,f as Ln,fi as Rn,fn as zn,fr as Bn,ft as Vn,g as Hn,gi as Un,gn as Wn,gr as Gn,gt as Kn,h as qn,hi as Jn,hn as Yn,hr as Xn,ht as Zn,i as Qn,ia as $n,ii as er,in as tr,ir as nr,it as rr,j as ir,ji as ar,jn as or,jr as sr,jt as cr,k as lr,ki as ur,kn as dr,kr as fr,kt as pr,l as mr,la as hr,li as gr,ln as _r,lr as vr,lt as yr,m as br,mi as xr,mn as Sr,mr as Cr,mt as wr,n as Tr,na as Er,ni as Dr,nn as Or,nr as kr,nt as Ar,o as jr,oa as Mr,oi as Nr,on as Pr,or as Fr,ot as Ir,p as Lr,pi as Rr,pn as zr,pr as Br,pt as Vr,q as Hr,qi as Ur,qn as Wr,qr as Gr,qt as Kr,r as qr,ra as Jr,ri as Yr,rn as Xr,rr as Zr,rt as Qr,s as $r,sa as ei,si as ti,sn as ni,sr as ri,st as ii,t as ai,ta as oi,ti as si,tn as ci,tr as li,tt as ui,u as di,ui as fi,un as pi,ur as mi,ut as hi,v as gi,vi as _i,vn as vi,vr as yi,vt as bi,w as xi,wi as Si,wn as Ci,wr as wi,wt as Ti,x as Ei,xa as Di,xi as Oi,xn as ki,xr as Ai,xt as ji,y as Mi,yi as Ni,yn as Pi,yr as Fi,yt as Ii,z as Li,zi as Ri,zn as zi,zr as Bi,zt as Vi}from"./dist-BVDj7oJZ.mjs";export{ai as AGENT_ID_MAX_LEN,Tr as AGENT_ID_RE,qr as AGENT_WRITE_ORIGIN,Qn as AgentFocusBroadcaster,un as AgentPresenceBroadcaster,jr as AgentSessionCapacityError,$r as AgentSessionManager,xn as AutoStartDisabledError,mr as BUNDLE_IDS,di as BUNDLE_SCOPE,Dn as BUNDLE_SKILL_NAME,Ln as BacklinkIndex,Lr as CC1Broadcaster,i as CC1_CONTRACT_VERSION,br as CONFIG_FILENAME,qn as CONFLICT_MARKER_RE,Hn as CURSOR_BUNDLE_PATHS_BY_PLATFORM,an as ConfigSchema,gi as DEFAULT_CHECKPOINT_RETENTION,Mi as DEFAULT_EMBEDDINGS_DIMENSIONS,gn as DEFAULT_PACK_ID,Ei as EMBEDDINGS_API_KEY_ENV,_t as FILE_SYSTEM_WRITER,G as FILE_WATCHER_ORIGIN,xi as FileEmbeddingsBackend,Ct as GIT_PREFLIGHT_FAIL_SPAN_NAME,te as GIT_UPSTREAM_WRITER,Di as GitDirAccessError,X as GitNotAvailableError,Ze as GitTooOldError,lr as HOCUSPOCUS_AUTH_REJECTION_REASONS,F as HocuspocusAuthRejection,ir as HocuspocusAuthTokenSchema,Ve as INSTALLED_AGENTS_SCHEMES,t as LINEAGE_EPOCH_KEY,Ke as LIVE_DERIVED_INDEX_DEBOUNCE_MS,nt as LOG_MD_TEMPLATE,oe as MANAGED_RENAME_ORIGIN,xe as MAX_AGENT_SESSIONS,Ie as MCP_CONNECTION_ID_HEADER,s as MCP_SERVER_NAME,ft as MIN_GIT_VERSION,Li as MISSING_OK_CONFIG_MESSAGE,vt as MalformedGitPointerError,B as McpLogger,Nt as MissingOkConfigError,ge as OBSERVER_SYNC_ORIGIN,Ot as OK_OKIGNORE_TEMPLATE,D as ORPHAN_MODES,Rt as PANE_TARGET_TTL_MS,p as PROTOCOL_VERSION,de as PinoLogger,w as ProcessLockCollisionError,je as ProjectGitInitError,Hr as ROLLBACK_ORIGIN,Ee as ROOT_GITIGNORE_TEMPLATE,y as RUNTIME_VERSION,Jt as SERVICE_WRITER,Ut as SKILL_INSTALL_EVENTS_FILE_REL,g as SKILL_STATE_TARGETS,$t as STARTER_FOLDERS,st as STARTER_FOLDER_FRONTMATTER_FILENAME,A as STARTER_PACKS,In as STARTER_PACK_IDS,ui as STARTER_TEMPLATES,Ar as STATE_MANIFEST_FILENAME,S as STATE_SCHEMA_VERSION,r as SYSTEM_DOC_NAME,Qr as SeedPrerequisiteError,rr as SeedRootDirError,h as ServerLockCollisionError,hn as SingleFileNotAFileError,Ir as SingleFileNotFoundError,ii as SingleFileNotMarkdownError,En as StateManifestError,yr as TagIndex,hi as USER_GLOBAL_BUNDLE_IDS,jn as UiLockCollisionError,Vn as __getShowAllWalkStatsForTesting,Vr as __resetShowAllWalkStatsForTesting,o as acquireProcessLock,b as acquireServerLock,wr as acquireUiLock,Zn as applyAgentMarkdownWrite,Kn as applyExternalChange,ln as applySeed,bi as armPaneTarget,Ii as assertCompatibleStateManifest,bn as assertGitAvailable,ji as assertNeverDiskEvent,St as attachIdleShutdown,Y as bootServer,Ti as buildAndOpenSkill,Dt as buildConfigYmlContent,ae as buildExecResult,ee as buildSkillZip,tt as buildStarterFolderFrontmatterYaml,pr as buildWipTree,z as bundleSkillMdPath,cr as classifyEvents,Ge as classifyFsPath,Xe as clearArmedPaneTarget,ot as clearContributors,ue as clearEmbeddingsKeyFromAllBackends,Te as coercePackId,u as colorFromSeed,Be as commitUpstreamImport,gt as commitWip,Vi as commitWipFromTree,W as compareSemver,Lt as containsConflictMarkers,be as contentHash,Mt as contributorCount,Ht as countShadowObjects,he as countStaleAgentWipRefs,Fe as countWipRefs,Kr as createApiExtension,Ae as createAssetServeMiddleware,Qt as createContentFilter,qt as createContentFilterAsync,rn as createEmbeddingsSecretStore,dt as createEphemeralProjectDir,P as createExternalChangeHandler,Pn as createFileLogger,ci as createLiveDerivedIndexExtension,Or as createMcpHttpHandler,Xr as createOsProbe,tr as createPersistenceExtension,pn as createServer,Pr as createServerObserverExtension,ni as createStreamingErrorWriter,wn as createTestLogger,_r as describeStoredEmbeddingsKey,pi as detectClaudeDesktopPresence,kn as detectGit,zn as detectProjectShape,zr as discoverLockDirs,Sr as emitPreflightFailureSpan,Yn as encodeDocName,Wn as encodeFolderRoute,sn as encodeSkillRoute,vi as ensureProjectGit,Pi as errorResponse,vn as evictStaleTrackerEntries,ki as extractOkBinaryPath,bt as extractWikiLinksFromMarkdown,q as fallbackPaths,Ci as findEnclosingGitRoot,Tt as findEnclosingProjectRoot,re as flushFileLogger,Q as formatAuthRejectionWire,$e as formatContributors,dr as formatContributorsFrom,L as formatPackRationale,or as gcCheckpointRefs,Ue as getCurrentMcpLogger,Je as getLocalDir,it as getLogFilePath,ce as getLogger,Ce as getLogsDir,C as getMachineId,Re as getMeter,mt as getMetrics,zi as getTracer,H as handleCollabSocketError,Ft as handleSpawnCursor,ve as hasGcLogLatch,e as iconFromClientName,At as incrementCollabSocketFilteredError,Bt as incrementServerObserverFire,pe as initContent,Ne as initShadowRepo,Wr as initTelemetry,Oe as initToleranceTelemetryWriter,Xt as installPrettyZodErrors,Gt as installTestLoggers,tn as installUserSkill,lt as isAllowedApiOrigin,M as isAllowedWorkspaceHostHeader,Fn as isConfigDoc,li as isHocuspocusAuthRejectionReason,kr as isKnownPackId,Zr as isLinkIndexExcludedDoc,nr as isLoopbackAddress,mn as isManagedArtifactDoc,n as isOrphanMode,Fr as isPairedWriteOrigin,ri as isPathWithinDir,l as isProcessAlive,Tn as isProjectRoot,vr as isProjectSkillManaged,mi as isReservedForUserTree,An as isSelfWrite,Bn as isSystemDoc,Br as isToleranceTelemetryEnabled,_ as isValidLockPid,Cr as lastKnownHash,Xn as listRescueCheckpoints,Gn as listStarterPacks,cn as loadPrincipal,T as lockFilePath,yi as loggerFactory,Fi as logsCurrentPath,yn as logsPreviousPath,Ai as makeLazyEmbeddingsKeyStore,d as markServerLockDraining,xt as mountMcpAndApi,J as normalizeFsPath,wi as packageVersionMajorMinor,Et as parseAuthRejectionWire,ie as parseGitVersion,$ as parseHocuspocusAuthToken,et as parseKeepaliveConnectionId,fr as pathToDocName,R as planSeed,sr as prepareSingleFileOpen,We as processCommand,Ye as processUsage,at as readAllTargets,le as readArmedPaneTarget,we as readBranchFromHead,ze as readBundleDecision,x as readProcessLock,v as readProcessLockDetailed,ht as readProjectLocalSemanticConfig,m as readServerLock,Bi as readServerPackageVersion,U as readSkillInstallStateSnapshot,It as readSkillManagement,ye as readStateManifest,jt as readTargetRecordedAt,Vt as readTargetVersion,me as readUiLock,Pe as reconcile,Gr as recordContributor,ke as recordSkillInstallEvent,Zt as registerAllTools,Kt as registerWrite,f as releaseProcessLock,a as releaseServerLock,nn as releaseUiLock,ut as removeLastKnownHash,N as resetMetrics,E as resolveBundleEnabled,Nn as resolveBundledSkillDir,si as resolveContentDir,Dr as resolveCursorBinaryDefault,Yr as resolveCursorSpawnInvocation,er as resolveLockDir,fn as resolvePack,Nr as resolvePackageVersion,ti as resolveUiInfo,Cn as restoreContributors,gr as restoreLifecycleFromConflictsJson,fi as rewriteMarkdownLinksForDocumentRename,On as rewriteWikiLinksForDocumentRename,Rn as runAuthReposSubprocess,Rr as runAuthStatusSubprocess,xr as runCloneSubprocess,Jn as runDeviceFlowSubprocess,Un as runWithMcpLogger,on as safeContentPath,_i as safeSubdir,Ni as safetyCheckpoint,_n as sanitizeClientName,Oi as saveInMemoryCheckpoint,yt as saveVersion,K as seedBasenameIndex,Si as serializeError,wt as setActiveSpanAttributes,ne as setupServerObservers,Z as shadowGit,Qe as shutdownTelemetry,ur as skillManagementPath,I as spansCurrentPath,ar as spansPreviousPath,He as spawnDetached,qe as splitMarkdownBlocks,rt as startWatcher,se as streamingProblemEvent,Se as swapContributors,Le as teardownToleranceTelemetryWriter,pt as toBroadcasterKey,Ri as tracedAppendFileSync,V as tracedLinkSync,Pt as tracedMkdir,_e as tracedMkdirSync,kt as tracedRename,zt as tracedRenameSync,fe as tracedRmSync,Me as tracedRmdirSync,Ur as tracedUnlinkSync,De as tracedWriteFile,Yt as tracedWriteFileSync,Wt as updateLastKnownHash,O as updateProcessLockPort,k as updateServerLockPort,en as updateUiLockPort,ct as validateAgentId,j as validateCloneInputs,Mn as validateSkillZip,c as waitForServerLockDrain,oi as withHiddenWindowsConsole,Er as withSpan,Jr as withSpanSync,$n as writeBundleDecision,dn as writeRootGitignoreForNewRepo,Mr as writeSkillManagement,ei as writeStateManifest,Sn as writeTargetVersion,hr as writeTracker};
|
|
1
|
+
import{Fi as e,Gt as t,Hi as n,Pn as r,Q as i,_ as a,a as o,an as s,b as c,c as l,di as u,f as d,g as f,gn as p,h as m,i as h,kn as g,l as _,m as v,n as y,o as b,p as x,r as S,s as C,t as w,u as T,ua as E,un as D,v as O,y as k}from"./server-lock-iLcBw_q0-pnLGEjec.mjs";import{$ as A,$i as j,$n as M,$r as N,$t as P,A as F,Ai as I,An as L,Ar as R,At as z,B,Bi as V,Bn as H,Br as U,Bt as W,C as G,Ci as K,Cn as q,Cr as J,Ct as Y,D as X,Di as Z,Dn as Q,Dr as $,Dt as ee,E as te,Ei as ne,En as re,Er as ie,Et as ae,F as oe,Fi as se,Fn as ce,Fr as le,Ft as ue,G as de,Gi as fe,Gn as pe,Gr as me,Gt as he,H as ge,Hi as _e,Hn as ve,Hr as ye,Ht as be,I as xe,Ii as Se,In as Ce,Ir as we,It as Te,J as Ee,Ji as De,Jn as Oe,Jr as ke,Jt as Ae,K as je,Ki as Me,Kn as Ne,Kr as Pe,Kt as Fe,L as Ie,Li as Le,Ln as Re,Lr as ze,Lt as Be,M as Ve,Mi as He,Mn as Ue,Mr as We,Mt as Ge,N as Ke,Ni as qe,Nn as Je,Nr as Ye,Nt as Xe,O as Ze,Oi as Qe,On as $e,Or as et,Ot as tt,P as nt,Pi as rt,Pn as it,Pr as at,Pt as ot,Q as st,Qi as ct,Qn as lt,Qr as ut,Qt as dt,R as ft,Ri as pt,Rn as mt,Rr as ht,Rt as gt,S as _t,Sa as vt,Si as yt,Sn as bt,Sr as xt,St,T as Ct,Ti as wt,Tn as Tt,Tr as Et,Tt as Dt,U as Ot,Ui as kt,Un as At,Ur as jt,Ut as Mt,V as Nt,Vi as Pt,Vn as Ft,Vr as It,Vt as Lt,W as Rt,Wi as zt,Wn as Bt,Wr as Vt,Wt as Ht,X as Ut,Xi as Wt,Xn as Gt,Xr as Kt,Xt as qt,Y as Jt,Yi as Yt,Yn as Xt,Yr as Zt,Yt as Qt,Z as $t,Zi as en,Zn as tn,Zr as nn,Zt as rn,_ as an,_i as on,_n as sn,_r as cn,_t as ln,a as un,aa as dn,ai as fn,an as pn,ar as mn,at as hn,b as gn,bi as _n,bn as vn,br as yn,bt as bn,c as xn,ca as Sn,ci as Cn,cn as wn,cr as Tn,ct as En,d as Dn,di as On,dn as kn,dr as An,dt as jn,ea as Mn,ei as Nn,en as Pn,er as Fn,et as In,f as Ln,fi as Rn,fn as zn,fr as Bn,ft as Vn,g as Hn,gi as Un,gn as Wn,gr as Gn,gt as Kn,h as qn,hi as Jn,hn as Yn,hr as Xn,ht as Zn,i as Qn,ia as $n,ii as er,in as tr,ir as nr,it as rr,j as ir,ji as ar,jn as or,jr as sr,jt as cr,k as lr,ki as ur,kn as dr,kr as fr,kt as pr,l as mr,la as hr,li as gr,ln as _r,lr as vr,lt as yr,m as br,mi as xr,mn as Sr,mr as Cr,mt as wr,n as Tr,na as Er,ni as Dr,nn as Or,nr as kr,nt as Ar,o as jr,oa as Mr,oi as Nr,on as Pr,or as Fr,ot as Ir,p as Lr,pi as Rr,pn as zr,pr as Br,pt as Vr,q as Hr,qi as Ur,qn as Wr,qr as Gr,qt as Kr,r as qr,ra as Jr,ri as Yr,rn as Xr,rr as Zr,rt as Qr,s as $r,sa as ei,si as ti,sn as ni,sr as ri,st as ii,t as ai,ta as oi,ti as si,tn as ci,tr as li,tt as ui,u as di,ui as fi,un as pi,ur as mi,ut as hi,v as gi,vi as _i,vn as vi,vr as yi,vt as bi,w as xi,wi as Si,wn as Ci,wr as wi,wt as Ti,x as Ei,xa as Di,xi as Oi,xn as ki,xr as Ai,xt as ji,y as Mi,yi as Ni,yn as Pi,yr as Fi,yt as Ii,z as Li,zi as Ri,zn as zi,zr as Bi,zt as Vi}from"./dist-AMcKbNor.mjs";export{ai as AGENT_ID_MAX_LEN,Tr as AGENT_ID_RE,qr as AGENT_WRITE_ORIGIN,Qn as AgentFocusBroadcaster,un as AgentPresenceBroadcaster,jr as AgentSessionCapacityError,$r as AgentSessionManager,xn as AutoStartDisabledError,mr as BUNDLE_IDS,di as BUNDLE_SCOPE,Dn as BUNDLE_SKILL_NAME,Ln as BacklinkIndex,Lr as CC1Broadcaster,i as CC1_CONTRACT_VERSION,br as CONFIG_FILENAME,qn as CONFLICT_MARKER_RE,Hn as CURSOR_BUNDLE_PATHS_BY_PLATFORM,an as ConfigSchema,gi as DEFAULT_CHECKPOINT_RETENTION,Mi as DEFAULT_EMBEDDINGS_DIMENSIONS,gn as DEFAULT_PACK_ID,Ei as EMBEDDINGS_API_KEY_ENV,_t as FILE_SYSTEM_WRITER,G as FILE_WATCHER_ORIGIN,xi as FileEmbeddingsBackend,Ct as GIT_PREFLIGHT_FAIL_SPAN_NAME,te as GIT_UPSTREAM_WRITER,Di as GitDirAccessError,X as GitNotAvailableError,Ze as GitTooOldError,lr as HOCUSPOCUS_AUTH_REJECTION_REASONS,F as HocuspocusAuthRejection,ir as HocuspocusAuthTokenSchema,Ve as INSTALLED_AGENTS_SCHEMES,t as LINEAGE_EPOCH_KEY,Ke as LIVE_DERIVED_INDEX_DEBOUNCE_MS,nt as LOG_MD_TEMPLATE,oe as MANAGED_RENAME_ORIGIN,xe as MAX_AGENT_SESSIONS,Ie as MCP_CONNECTION_ID_HEADER,s as MCP_SERVER_NAME,ft as MIN_GIT_VERSION,Li as MISSING_OK_CONFIG_MESSAGE,vt as MalformedGitPointerError,B as McpLogger,Nt as MissingOkConfigError,ge as OBSERVER_SYNC_ORIGIN,Ot as OK_OKIGNORE_TEMPLATE,D as ORPHAN_MODES,Rt as PANE_TARGET_TTL_MS,p as PROTOCOL_VERSION,de as PinoLogger,w as ProcessLockCollisionError,je as ProjectGitInitError,Hr as ROLLBACK_ORIGIN,Ee as ROOT_GITIGNORE_TEMPLATE,y as RUNTIME_VERSION,Jt as SERVICE_WRITER,Ut as SKILL_INSTALL_EVENTS_FILE_REL,g as SKILL_STATE_TARGETS,$t as STARTER_FOLDERS,st as STARTER_FOLDER_FRONTMATTER_FILENAME,A as STARTER_PACKS,In as STARTER_PACK_IDS,ui as STARTER_TEMPLATES,Ar as STATE_MANIFEST_FILENAME,S as STATE_SCHEMA_VERSION,r as SYSTEM_DOC_NAME,Qr as SeedPrerequisiteError,rr as SeedRootDirError,h as ServerLockCollisionError,hn as SingleFileNotAFileError,Ir as SingleFileNotFoundError,ii as SingleFileNotMarkdownError,En as StateManifestError,yr as TagIndex,hi as USER_GLOBAL_BUNDLE_IDS,jn as UiLockCollisionError,Vn as __getShowAllWalkStatsForTesting,Vr as __resetShowAllWalkStatsForTesting,o as acquireProcessLock,b as acquireServerLock,wr as acquireUiLock,Zn as applyAgentMarkdownWrite,Kn as applyExternalChange,ln as applySeed,bi as armPaneTarget,Ii as assertCompatibleStateManifest,bn as assertGitAvailable,ji as assertNeverDiskEvent,St as attachIdleShutdown,Y as bootServer,Ti as buildAndOpenSkill,Dt as buildConfigYmlContent,ae as buildExecResult,ee as buildSkillZip,tt as buildStarterFolderFrontmatterYaml,pr as buildWipTree,z as bundleSkillMdPath,cr as classifyEvents,Ge as classifyFsPath,Xe as clearArmedPaneTarget,ot as clearContributors,ue as clearEmbeddingsKeyFromAllBackends,Te as coercePackId,u as colorFromSeed,Be as commitUpstreamImport,gt as commitWip,Vi as commitWipFromTree,W as compareSemver,Lt as containsConflictMarkers,be as contentHash,Mt as contributorCount,Ht as countShadowObjects,he as countStaleAgentWipRefs,Fe as countWipRefs,Kr as createApiExtension,Ae as createAssetServeMiddleware,Qt as createContentFilter,qt as createContentFilterAsync,rn as createEmbeddingsSecretStore,dt as createEphemeralProjectDir,P as createExternalChangeHandler,Pn as createFileLogger,ci as createLiveDerivedIndexExtension,Or as createMcpHttpHandler,Xr as createOsProbe,tr as createPersistenceExtension,pn as createServer,Pr as createServerObserverExtension,ni as createStreamingErrorWriter,wn as createTestLogger,_r as describeStoredEmbeddingsKey,pi as detectClaudeDesktopPresence,kn as detectGit,zn as detectProjectShape,zr as discoverLockDirs,Sr as emitPreflightFailureSpan,Yn as encodeDocName,Wn as encodeFolderRoute,sn as encodeSkillRoute,vi as ensureProjectGit,Pi as errorResponse,vn as evictStaleTrackerEntries,ki as extractOkBinaryPath,bt as extractWikiLinksFromMarkdown,q as fallbackPaths,Ci as findEnclosingGitRoot,Tt as findEnclosingProjectRoot,re as flushFileLogger,Q as formatAuthRejectionWire,$e as formatContributors,dr as formatContributorsFrom,L as formatPackRationale,or as gcCheckpointRefs,Ue as getCurrentMcpLogger,Je as getLocalDir,it as getLogFilePath,ce as getLogger,Ce as getLogsDir,C as getMachineId,Re as getMeter,mt as getMetrics,zi as getTracer,H as handleCollabSocketError,Ft as handleSpawnCursor,ve as hasGcLogLatch,e as iconFromClientName,At as incrementCollabSocketFilteredError,Bt as incrementServerObserverFire,pe as initContent,Ne as initShadowRepo,Wr as initTelemetry,Oe as initToleranceTelemetryWriter,Xt as installPrettyZodErrors,Gt as installTestLoggers,tn as installUserSkill,lt as isAllowedApiOrigin,M as isAllowedWorkspaceHostHeader,Fn as isConfigDoc,li as isHocuspocusAuthRejectionReason,kr as isKnownPackId,Zr as isLinkIndexExcludedDoc,nr as isLoopbackAddress,mn as isManagedArtifactDoc,n as isOrphanMode,Fr as isPairedWriteOrigin,ri as isPathWithinDir,l as isProcessAlive,Tn as isProjectRoot,vr as isProjectSkillManaged,mi as isReservedForUserTree,An as isSelfWrite,Bn as isSystemDoc,Br as isToleranceTelemetryEnabled,_ as isValidLockPid,Cr as lastKnownHash,Xn as listRescueCheckpoints,Gn as listStarterPacks,cn as loadPrincipal,T as lockFilePath,yi as loggerFactory,Fi as logsCurrentPath,yn as logsPreviousPath,Ai as makeLazyEmbeddingsKeyStore,d as markServerLockDraining,xt as mountMcpAndApi,J as normalizeFsPath,wi as packageVersionMajorMinor,Et as parseAuthRejectionWire,ie as parseGitVersion,$ as parseHocuspocusAuthToken,et as parseKeepaliveConnectionId,fr as pathToDocName,R as planSeed,sr as prepareSingleFileOpen,We as processCommand,Ye as processUsage,at as readAllTargets,le as readArmedPaneTarget,we as readBranchFromHead,ze as readBundleDecision,x as readProcessLock,v as readProcessLockDetailed,ht as readProjectLocalSemanticConfig,m as readServerLock,Bi as readServerPackageVersion,U as readSkillInstallStateSnapshot,It as readSkillManagement,ye as readStateManifest,jt as readTargetRecordedAt,Vt as readTargetVersion,me as readUiLock,Pe as reconcile,Gr as recordContributor,ke as recordSkillInstallEvent,Zt as registerAllTools,Kt as registerWrite,f as releaseProcessLock,a as releaseServerLock,nn as releaseUiLock,ut as removeLastKnownHash,N as resetMetrics,E as resolveBundleEnabled,Nn as resolveBundledSkillDir,si as resolveContentDir,Dr as resolveCursorBinaryDefault,Yr as resolveCursorSpawnInvocation,er as resolveLockDir,fn as resolvePack,Nr as resolvePackageVersion,ti as resolveUiInfo,Cn as restoreContributors,gr as restoreLifecycleFromConflictsJson,fi as rewriteMarkdownLinksForDocumentRename,On as rewriteWikiLinksForDocumentRename,Rn as runAuthReposSubprocess,Rr as runAuthStatusSubprocess,xr as runCloneSubprocess,Jn as runDeviceFlowSubprocess,Un as runWithMcpLogger,on as safeContentPath,_i as safeSubdir,Ni as safetyCheckpoint,_n as sanitizeClientName,Oi as saveInMemoryCheckpoint,yt as saveVersion,K as seedBasenameIndex,Si as serializeError,wt as setActiveSpanAttributes,ne as setupServerObservers,Z as shadowGit,Qe as shutdownTelemetry,ur as skillManagementPath,I as spansCurrentPath,ar as spansPreviousPath,He as spawnDetached,qe as splitMarkdownBlocks,rt as startWatcher,se as streamingProblemEvent,Se as swapContributors,Le as teardownToleranceTelemetryWriter,pt as toBroadcasterKey,Ri as tracedAppendFileSync,V as tracedLinkSync,Pt as tracedMkdir,_e as tracedMkdirSync,kt as tracedRename,zt as tracedRenameSync,fe as tracedRmSync,Me as tracedRmdirSync,Ur as tracedUnlinkSync,De as tracedWriteFile,Yt as tracedWriteFileSync,Wt as updateLastKnownHash,O as updateProcessLockPort,k as updateServerLockPort,en as updateUiLockPort,ct as validateAgentId,j as validateCloneInputs,Mn as validateSkillZip,c as waitForServerLockDrain,oi as withHiddenWindowsConsole,Er as withSpan,Jr as withSpanSync,$n as writeBundleDecision,dn as writeRootGitignoreForNewRepo,Mr as writeSkillManagement,ei as writeStateManifest,Sn as writeTargetVersion,hr as writeTracker};
|
package/dist/index.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{i as e,r as t,t as n}from"./gh-detect-RYp8nY6_.mjs";import{B as r,H as i,I as a,L as o,O as s,R as c,S as l,T as u,V as d,a as f,d as p,f as m,g as h,i as g,n as _,w as v,z as y}from"./init-
|
|
1
|
+
import{i as e,r as t,t as n}from"./gh-detect-RYp8nY6_.mjs";import{B as r,H as i,I as a,L as o,O as s,R as c,S as l,T as u,V as d,a as f,d as p,f as m,g as h,i as g,n as _,w as v,z as y}from"./init-gfjsyIYB.mjs";import{_ as b,b as x,d as S,f as C,i as w,l as T,m as E,n as D,r as O,t as k,u as A,v as j,y as M}from"./src-BOlpZYXP.mjs";import{_ as N,a as P,d as F,f as I,g as L,i as R,o as z,r as B,s as V,t as H,u as U,v as W}from"./write-project-skill-Dw9Did_1.mjs";import{n as G}from"./loader-DglCaNtQ.mjs";import{n as K}from"./preview-CVMx2nNA.mjs";import{n as q,t as J}from"./mcp-migrate-event-D0NrGjvc.mjs";export{V as ALL_EDITOR_IDS,U as EDITOR_LABELS,F as EDITOR_TARGETS,I as HOSTS_WITH_USER_SKILL_DIR,_ as LAUNCH_CONFIG_NAME,g as LAUNCH_UI_CHAIN_SENTINEL,f as LAUNCH_UI_CHAIN_V1,A as PATH_SHIM_BEGIN,S as PATH_SHIM_BLOCK_RE,C as PATH_SHIM_END,a as addOkPathsToGitExclude,H as assertProjectPathSafe,L as buildManagedServerEntry,O as buildMcpConfigDeclineEvent,J as buildMcpConfigMigrateEvent,p as classifyExistingMcpEntry,t as createTokenStore,n as detectGh,m as detectInstalledEditors,o as formatTrackedRemediation,c as getExcludedOkPaths,y as getOkArtifactPaths,N as isEntryUpToDate,W as isOwnManagedEntry,G as loadConfig,e as makeLazyProbeTokenStore,b as parseGitHubBlobUrl,j as parseGitHubShareUrl,M as parseGitHubTreeUrl,x as parseGitUrl,E as pathInstallMarkerPath,K as previewContent,r as probeTrackedOkPaths,h as readExistingMcpEntry,d as readSharingMode,i as removeOkPathsFromGitExclude,T as removeOwnMcpEntry,B as removeProjectSkill,P as removeUserGlobalSkillBundle,s as resolveProjectRoot,w as runStop,l as scaffoldLaunchJson,q as truncatePriorEntry,z as userGlobalSkillBundleTargets,D as validateLocalFolderForShare,v as writeEditorMcpConfig,k as writeProjectAiIntegrations,R as writeProjectSkill,u as writeUserMcpConfigs};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{x as e}from"./init-gfjsyIYB.mjs";export{e as runInit};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{a as e,s as t,t as n}from"./chunk-C94x7I9S.mjs";import{Ba as r,Bt as i,Et as a,Va as o,Xi as s,bi as c,bn as l,ja as u,mt as d}from"./server-lock-iLcBw_q0-pnLGEjec.mjs";import{$n as f,D as p,Gn as m,K as h,O as g,Qn as _,Zn as v,aa as y,cr as b,d as x,ga as S,ia as C,ir as w,ta as T,ut as E,vn as ee,wa as D,ya as O}from"./dist-BVDj7oJZ.mjs";import{r as k,t as te}from"./esm-CsQUg9js.mjs";import{t as ne}from"./constants-Jtdc3RKL.mjs";import{a as re,b as ie,d as A,g as ae,h as oe,i as se,m as ce,p as le,s as ue,t as j,x as M}from"./write-project-skill-ClrMnKU-.mjs";import{t as N}from"./is-object-Cg453afR.mjs";import{i as P,n as de,o as F,r as fe,s as I,t as L}from"./colors-8SzMRIVy.mjs";import{t as pe}from"./preview-D7QFb3z-.mjs";import{createRequire as me}from"node:module";import{execFileSync as he}from"node:child_process";import ge,{dirname as R,isAbsolute as _e,join as z,relative as B,resolve as ve,sep as ye}from"node:path";import V from"node:process";import{fileURLToPath as be}from"node:url";import{homedir as xe}from"node:os";import{existsSync as H,lstatSync as Se,mkdirSync as Ce,readFileSync as U,readlinkSync as we,realpathSync as Te,statSync as Ee,writeFileSync as De}from"node:fs";import{randomUUID as Oe}from"node:crypto";import{inspect as ke,stripVTControlCharacters as Ae,styleText as W}from"node:util";import{AsyncLocalStorage as je,AsyncResource as Me}from"node:async_hooks";import{createServer as Ne,request as Pe}from"node:http";import*as Fe from"node:readline";import{connect as Ie}from"node:net";const Le=new Set([`emacs`,`vim`]);function Re(e){return Le.has(e)}function ze(){let e=process.env.INQUIRER_KEYBINDINGS;return e?Array.from(new Set(e.toLowerCase().split(/[\s,]+/).filter(Re))):[]}const Be=(e,t=[])=>e.name===`up`||t.includes(`vim`)&&e.name===`k`||t.includes(`emacs`)&&e.ctrl&&e.name===`p`,Ve=(e,t=[])=>e.name===`down`||t.includes(`vim`)&&e.name===`j`||t.includes(`emacs`)&&e.ctrl&&e.name===`n`,He=e=>e.name===`space`,Ue=e=>e.name===`backspace`,We=e=>`1234567890`.includes(e.name),Ge=e=>e.name===`enter`||e.name===`return`;var Ke=class extends Error{name=`AbortPromptError`;message=`Prompt was aborted`;constructor(e){super(),this.cause=e?.cause}},qe=class extends Error{name=`CancelPromptError`;message=`Prompt was canceled`},Je=class extends Error{name=`ExitPromptError`},Ye=class extends Error{name=`HookError`},Xe=class extends Error{name=`ValidationError`};const Ze=new je;function Qe(e){return{rl:e,hooks:[],hooksCleanup:[],hooksEffect:[],index:0,handleChange(){}}}function $e(e,t){let n=Qe(e);return Ze.run(n,()=>{function e(e){n.handleChange=()=>{n.index=0,e()},n.handleChange()}return t(e)})}function G(){let e=Ze.getStore();if(!e)throw new Ye(`[Inquirer] Hook functions can only be called from within a prompt`);return e}function et(){return G().rl}function tt(e){return Me.bind((...t)=>{let n=G(),r=!1,i=n.handleChange;n.handleChange=()=>{r=!0};let a=e(...t);return r&&i(),n.handleChange=i,a})}function nt(e){let t=G(),{index:n}=t,r=e({get(){return t.hooks[n]},set(e){t.hooks[n]=e},initialized:n in t.hooks});return t.index++,r}function rt(){G().handleChange()}const it={queue(e){let t=G(),{index:n}=t;t.hooksEffect.push(()=>{t.hooksCleanup[n]?.();let r=e(et());if(r!=null&&typeof r!=`function`)throw new Xe(`useEffect return value must be a cleanup function or nothing.`);t.hooksCleanup[n]=r})},run(){let e=G();tt(()=>{e.hooksEffect.forEach(e=>{e()}),e.hooksEffect.length=0})()},clearAll(){let e=G();e.hooksCleanup.forEach(e=>{e?.()}),e.hooksEffect.length=0,e.hooksCleanup.length=0}};function at(e){return typeof e==`function`}function K(e){return nt(t=>{let n=Me.bind(function(e){t.get()!==e&&(t.set(e),rt())});if(t.initialized)return[t.get(),n];let r=at(e)?e():e;return t.set(r),[r,n]})}function ot(e,t){nt(n=>{let r=n.get();(!Array.isArray(r)||t.some((e,t)=>!Object.is(e,r[t])))&&it.queue(e),n.set(t)})}function st(){return V.platform.startsWith(`win`)?!!V.env.CI||!!V.env.WT_SESSION||!!V.env.TERMINUS_SUBLIME||V.env.ConEmuTask===`{cmd::Cmder}`||V.env.TERM_PROGRAM===`Terminus-Sublime`||V.env.TERM_PROGRAM===`vscode`||V.env.TERM===`xterm-256color`||V.env.TERM===`alacritty`||V.env.TERMINAL_EMULATOR===`JetBrains-JediTerm`:V.env.TERM!==`linux`}const ct={circleQuestionMark:`(?)`,questionMarkPrefix:`(?)`,square:`█`,squareDarkShade:`▓`,squareMediumShade:`▒`,squareLightShade:`░`,squareTop:`▀`,squareBottom:`▄`,squareLeft:`▌`,squareRight:`▐`,squareCenter:`■`,bullet:`●`,dot:`․`,ellipsis:`…`,pointerSmall:`›`,triangleUp:`▲`,triangleUpSmall:`▴`,triangleDown:`▼`,triangleDownSmall:`▾`,triangleLeftSmall:`◂`,triangleRightSmall:`▸`,home:`⌂`,heart:`♥`,musicNote:`♪`,musicNoteBeamed:`♫`,arrowUp:`↑`,arrowDown:`↓`,arrowLeft:`←`,arrowRight:`→`,arrowLeftRight:`↔`,arrowUpDown:`↕`,almostEqual:`≈`,notEqual:`≠`,lessOrEqual:`≤`,greaterOrEqual:`≥`,identical:`≡`,infinity:`∞`,subscriptZero:`₀`,subscriptOne:`₁`,subscriptTwo:`₂`,subscriptThree:`₃`,subscriptFour:`₄`,subscriptFive:`₅`,subscriptSix:`₆`,subscriptSeven:`₇`,subscriptEight:`₈`,subscriptNine:`₉`,oneHalf:`½`,oneThird:`⅓`,oneQuarter:`¼`,oneFifth:`⅕`,oneSixth:`⅙`,oneEighth:`⅛`,twoThirds:`⅔`,twoFifths:`⅖`,threeQuarters:`¾`,threeFifths:`⅗`,threeEighths:`⅜`,fourFifths:`⅘`,fiveSixths:`⅚`,fiveEighths:`⅝`,sevenEighths:`⅞`,line:`─`,lineBold:`━`,lineDouble:`═`,lineDashed0:`┄`,lineDashed1:`┅`,lineDashed2:`┈`,lineDashed3:`┉`,lineDashed4:`╌`,lineDashed5:`╍`,lineDashed6:`╴`,lineDashed7:`╶`,lineDashed8:`╸`,lineDashed9:`╺`,lineDashed10:`╼`,lineDashed11:`╾`,lineDashed12:`−`,lineDashed13:`–`,lineDashed14:`‐`,lineDashed15:`⁃`,lineVertical:`│`,lineVerticalBold:`┃`,lineVerticalDouble:`║`,lineVerticalDashed0:`┆`,lineVerticalDashed1:`┇`,lineVerticalDashed2:`┊`,lineVerticalDashed3:`┋`,lineVerticalDashed4:`╎`,lineVerticalDashed5:`╏`,lineVerticalDashed6:`╵`,lineVerticalDashed7:`╷`,lineVerticalDashed8:`╹`,lineVerticalDashed9:`╻`,lineVerticalDashed10:`╽`,lineVerticalDashed11:`╿`,lineDownLeft:`┐`,lineDownLeftArc:`╮`,lineDownBoldLeftBold:`┓`,lineDownBoldLeft:`┒`,lineDownLeftBold:`┑`,lineDownDoubleLeftDouble:`╗`,lineDownDoubleLeft:`╖`,lineDownLeftDouble:`╕`,lineDownRight:`┌`,lineDownRightArc:`╭`,lineDownBoldRightBold:`┏`,lineDownBoldRight:`┎`,lineDownRightBold:`┍`,lineDownDoubleRightDouble:`╔`,lineDownDoubleRight:`╓`,lineDownRightDouble:`╒`,lineUpLeft:`┘`,lineUpLeftArc:`╯`,lineUpBoldLeftBold:`┛`,lineUpBoldLeft:`┚`,lineUpLeftBold:`┙`,lineUpDoubleLeftDouble:`╝`,lineUpDoubleLeft:`╜`,lineUpLeftDouble:`╛`,lineUpRight:`└`,lineUpRightArc:`╰`,lineUpBoldRightBold:`┗`,lineUpBoldRight:`┖`,lineUpRightBold:`┕`,lineUpDoubleRightDouble:`╚`,lineUpDoubleRight:`╙`,lineUpRightDouble:`╘`,lineUpDownLeft:`┤`,lineUpBoldDownBoldLeftBold:`┫`,lineUpBoldDownBoldLeft:`┨`,lineUpDownLeftBold:`┥`,lineUpBoldDownLeftBold:`┩`,lineUpDownBoldLeftBold:`┪`,lineUpDownBoldLeft:`┧`,lineUpBoldDownLeft:`┦`,lineUpDoubleDownDoubleLeftDouble:`╣`,lineUpDoubleDownDoubleLeft:`╢`,lineUpDownLeftDouble:`╡`,lineUpDownRight:`├`,lineUpBoldDownBoldRightBold:`┣`,lineUpBoldDownBoldRight:`┠`,lineUpDownRightBold:`┝`,lineUpBoldDownRightBold:`┡`,lineUpDownBoldRightBold:`┢`,lineUpDownBoldRight:`┟`,lineUpBoldDownRight:`┞`,lineUpDoubleDownDoubleRightDouble:`╠`,lineUpDoubleDownDoubleRight:`╟`,lineUpDownRightDouble:`╞`,lineDownLeftRight:`┬`,lineDownBoldLeftBoldRightBold:`┳`,lineDownLeftBoldRightBold:`┯`,lineDownBoldLeftRight:`┰`,lineDownBoldLeftBoldRight:`┱`,lineDownBoldLeftRightBold:`┲`,lineDownLeftRightBold:`┮`,lineDownLeftBoldRight:`┭`,lineDownDoubleLeftDoubleRightDouble:`╦`,lineDownDoubleLeftRight:`╥`,lineDownLeftDoubleRightDouble:`╤`,lineUpLeftRight:`┴`,lineUpBoldLeftBoldRightBold:`┻`,lineUpLeftBoldRightBold:`┷`,lineUpBoldLeftRight:`┸`,lineUpBoldLeftBoldRight:`┹`,lineUpBoldLeftRightBold:`┺`,lineUpLeftRightBold:`┶`,lineUpLeftBoldRight:`┵`,lineUpDoubleLeftDoubleRightDouble:`╩`,lineUpDoubleLeftRight:`╨`,lineUpLeftDoubleRightDouble:`╧`,lineUpDownLeftRight:`┼`,lineUpBoldDownBoldLeftBoldRightBold:`╋`,lineUpDownBoldLeftBoldRightBold:`╈`,lineUpBoldDownLeftBoldRightBold:`╇`,lineUpBoldDownBoldLeftRightBold:`╊`,lineUpBoldDownBoldLeftBoldRight:`╉`,lineUpBoldDownLeftRight:`╀`,lineUpDownBoldLeftRight:`╁`,lineUpDownLeftBoldRight:`┽`,lineUpDownLeftRightBold:`┾`,lineUpBoldDownBoldLeftRight:`╂`,lineUpDownLeftBoldRightBold:`┿`,lineUpBoldDownLeftBoldRight:`╃`,lineUpBoldDownLeftRightBold:`╄`,lineUpDownBoldLeftBoldRight:`╅`,lineUpDownBoldLeftRightBold:`╆`,lineUpDoubleDownDoubleLeftDoubleRightDouble:`╬`,lineUpDoubleDownDoubleLeftRight:`╫`,lineUpDownLeftDoubleRightDouble:`╪`,lineCross:`╳`,lineBackslash:`╲`,lineSlash:`╱`},lt={tick:`✔`,info:`ℹ`,warning:`⚠`,cross:`✘`,squareSmall:`◻`,squareSmallFilled:`◼`,circle:`◯`,circleFilled:`◉`,circleDotted:`◌`,circleDouble:`◎`,circleCircle:`ⓞ`,circleCross:`ⓧ`,circlePipe:`Ⓘ`,radioOn:`◉`,radioOff:`◯`,checkboxOn:`☒`,checkboxOff:`☐`,checkboxCircleOn:`ⓧ`,checkboxCircleOff:`Ⓘ`,pointer:`❯`,triangleUpOutline:`△`,triangleLeft:`◀`,triangleRight:`▶`,lozenge:`◆`,lozengeOutline:`◇`,hamburger:`☰`,smiley:`㋡`,mustache:`෴`,star:`★`,play:`▶`,nodejs:`⬢`,oneSeventh:`⅐`,oneNinth:`⅑`,oneTenth:`⅒`},ut={tick:`√`,info:`i`,warning:`‼`,cross:`×`,squareSmall:`□`,squareSmallFilled:`■`,circle:`( )`,circleFilled:`(*)`,circleDotted:`( )`,circleDouble:`( )`,circleCircle:`(○)`,circleCross:`(×)`,circlePipe:`(│)`,radioOn:`(*)`,radioOff:`( )`,checkboxOn:`[×]`,checkboxOff:`[ ]`,checkboxCircleOn:`(×)`,checkboxCircleOff:`( )`,pointer:`>`,triangleUpOutline:`∆`,triangleLeft:`◄`,triangleRight:`►`,lozenge:`♦`,lozengeOutline:`◊`,hamburger:`≡`,smiley:`☺`,mustache:`┌─┐`,star:`✶`,play:`►`,nodejs:`♦`,oneSeventh:`1/7`,oneNinth:`1/9`,oneTenth:`1/10`},dt={...ct,...lt},ft={...ct,...ut},q=st()?dt:ft;Object.entries(lt);const pt={prefix:{idle:W(`blue`,`?`),done:W(`green`,q.tick)},spinner:{interval:80,frames:[`⠋`,`⠙`,`⠹`,`⠸`,`⠼`,`⠴`,`⠦`,`⠧`,`⠇`,`⠏`].map(e=>W(`yellow`,e))},keybindings:[],style:{answer:e=>W(`cyan`,e),message:e=>W(`bold`,e),error:e=>W(`red`,`> ${e}`),defaultAnswer:e=>W(`dim`,`(${e})`),help:e=>W(`dim`,e),highlight:e=>W(`cyan`,e),key:e=>W(`cyan`,W(`bold`,`<${e}>`))}};function mt(){return{...pt,keybindings:ze()}}function ht(e){if(typeof e!=`object`||!e)return!1;let t=e;for(;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}function gt(...e){let t={};for(let n of e)for(let[e,r]of Object.entries(n)){let n=t[e];t[e]=ht(n)&&ht(r)?gt(n,r):r}return t}function _t(...e){return gt(mt(),...e.filter(e=>e!=null))}function vt({status:e=`idle`,theme:t}){let[n,r]=K(!1),[i,a]=K(0),{prefix:o,spinner:s}=_t(t);return ot(()=>{if(e===`loading`){let e,t=-1,n=setTimeout(()=>{r(!0),e=setInterval(()=>{t+=1,a(t%s.frames.length)},s.interval)},300);return()=>{clearTimeout(n),clearInterval(e)}}else r(!1)},[e]),n?s.frames[i]:typeof o==`string`?o:o[e===`loading`?`idle`:e]??o.idle}function yt(e,t){return nt(n=>{let r=n.get();if(!r||r.dependencies.length!==t.length||r.dependencies.some((e,n)=>e!==t[n])){let r=e();return n.set({value:r,dependencies:t}),r}return r.value})}function bt(e){return K({current:e})[0]}function xt(e){let t=bt(e);t.current=e,ot(e=>{let n=!1,r=tt((r,i)=>{n||t.current(i,e)});return e.input.on(`keypress`,r),()=>{n=!0,e.input.removeListener(`keypress`,r)}},[])}var St=n(((t,n)=>{n.exports=i;function r(t){let n={defaultWidth:0,output:process.stdout,tty:e(`tty`)};return t?(Object.keys(n).forEach(function(e){t[e]||(t[e]=n[e])}),t):n}function i(e){let t=r(e);if(t.output.getWindowSize)return t.output.getWindowSize()[0]||t.defaultWidth;if(t.tty.getWindowSize)return t.tty.getWindowSize()[1]||t.defaultWidth;if(t.output.columns)return t.output.columns;if(process.env.CLI_WIDTH){let e=parseInt(process.env.CLI_WIDTH,10);if(!isNaN(e)&&e!==0)return e}return t.defaultWidth}}));const Ct=(()=>{let e=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g;return t=>{let n=0;for(e.lastIndex=0;e.test(t);)n+=1;return t.length-n}})(),wt=e=>e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510,Tt=e=>e===8987||e===9001||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12771||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=19903||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||e>=131072&&e<=196605||e>=196608&&e<=262141,Et=/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]|\u001b\]8;[^;]*;.*?(?:\u0007|\u001b\u005c)/y,Dt=/[\x00-\x08\x0A-\x1F\x7F-\x9F]{1,1000}/y,Ot=/(?:(?![\uFF61-\uFF9F\uFF00-\uFFEF])[\p{Script=Han}\p{Script=Hiragana}\p{Script=Katakana}\p{Script=Hangul}\p{Script=Tangut}]){1,1000}/uy,kt=/\t{1,1000}/y,At=/[\u{1F1E6}-\u{1F1FF}]{2}|\u{1F3F4}[\u{E0061}-\u{E007A}]{2}[\u{E0030}-\u{E0039}\u{E0061}-\u{E007A}]{1,3}\u{E007F}|(?:\p{Emoji}\uFE0F\u20E3?|\p{Emoji_Modifier_Base}\p{Emoji_Modifier}?|\p{Emoji_Presentation})(?:\u200D(?:\p{Emoji_Modifier_Base}\p{Emoji_Modifier}?|\p{Emoji_Presentation}|\p{Emoji}\uFE0F\u20E3?))*/uy,jt=/(?:[\x20-\x7E\xA0-\xFF](?!\uFE0F)){1,1000}/y,Mt=/\p{M}+/gu,Nt={limit:1/0,ellipsis:``},Pt=(e,t={},n={})=>{let r=t.limit??1/0,i=t.ellipsis??``,a=t?.ellipsisWidth??(i?Pt(i,Nt,n).width:0),o=n.controlWidth??0,s=n.tabWidth??8,c=n.emojiWidth??2,l=n.regularWidth??1,u=n.wideWidth??2,d=[[jt,l],[Et,0],[Dt,o],[kt,s],[At,c],[Ot,u]],f=0,p=0,m=e.length,h=0,g=!1,_=m,v=Math.max(0,r-a),y=0,b=0,x=0,S=0;outer:for(;;){if(b>y||p>=m&&p>f){let t=e.slice(y,b)||e.slice(f,p);h=0;for(let e of t.replaceAll(Mt,``)){let t=e.codePointAt(0)||0;if(S=wt(t)?2:Tt(t)?u:l,x+S>v&&(_=Math.min(_,Math.max(y,f)+h)),x+S>r){g=!0;break outer}h+=e.length,x+=S}y=b=0}if(p>=m)break outer;for(let t=0,n=d.length;t<n;t++){let[n,i]=d[t];if(n.lastIndex=p,n.test(e)){if(h=n===Ot?Ct(e.slice(p,n.lastIndex)):n===At?1:n.lastIndex-p,S=h*i,x+S>v&&(_=Math.min(_,p+Math.floor((v-x)/i))),x+S>r){g=!0;break outer}x+=S,y=f,b=p,p=f=n.lastIndex;continue outer}}p+=1}return{width:g?v:x,index:g?_:m,truncated:g,ellipsed:g&&r>=a}},Ft={limit:1/0,ellipsis:``,ellipsisWidth:0},J=(e,t={})=>Pt(e,Ft,t).width,It=`]8;;`,Lt=RegExp(`(?:\\[(?<code>\\d+)m|\\${It}(?<uri>.*))`,`y`),Rt=e=>{if(e>=30&&e<=37||e>=90&&e<=97)return 39;if(e>=40&&e<=47||e>=100&&e<=107)return 49;if(e===1||e===2)return 22;if(e===3)return 23;if(e===4)return 24;if(e===7)return 27;if(e===8)return 28;if(e===9)return 29;if(e===0)return 0},zt=e=>`[${e}m`,Bt=e=>`${It}${e}`,Vt=(e,t,n)=>{let r=t[Symbol.iterator](),i=!1,a=!1,o=e.at(-1),s=o===void 0?0:J(o),c=r.next(),l=r.next(),u=0;for(;!c.done;){let o=c.value,d=J(o);s+d<=n?e[e.length-1]+=o:(e.push(o),s=0),(o===`\x1B`||o===``)&&(i=!0,a=t.startsWith(It,u+1)),i?a?o===`\x07`&&(i=!1,a=!1):o===`m`&&(i=!1):(s+=d,s===n&&!l.done&&(e.push(``),s=0)),c=l,l=r.next(),u+=o.length}o=e.at(-1),!s&&o!==void 0&&o.length&&e.length>1&&(e[e.length-2]+=e.pop())},Ht=e=>{let t=e.split(` `),n=t.length;for(;n&&!J(t[n-1]);)n--;return n===t.length?e:t.slice(0,n).join(` `)+t.slice(n).join(``)},Ut=(e,t,n={})=>{if(n.trim!==!1&&e.trim()===``)return``;let r=``,i,a,o=e.split(` `),s=[``],c=0;for(let e=0;e<o.length;e++){let r=o[e];if(n.trim!==!1){let e=s.at(-1)??``,t=e.trimStart();e.length!==t.length&&(s[s.length-1]=t,c=J(t))}e!==0&&(c>=t&&(n.wordWrap===!1||n.trim===!1)&&(s.push(``),c=0),(c||n.trim===!1)&&(s[s.length-1]+=` `,c++));let i=J(r);if(n.hard&&i>t){let e=t-c,n=1+Math.floor((i-e-1)/t);Math.floor((i-1)/t)<n&&s.push(``),Vt(s,r,t),c=J(s.at(-1)??``);continue}if(c+i>t&&c&&i){if(n.wordWrap===!1&&c<t){Vt(s,r,t),c=J(s.at(-1)??``);continue}s.push(``),c=0}if(c+i>t&&n.wordWrap===!1){Vt(s,r,t),c=J(s.at(-1)??``);continue}s[s.length-1]+=r,c+=i}n.trim!==!1&&(s=s.map(e=>Ht(e)));let l=s.join(`
|
|
1
|
+
import{a as e,s as t,t as n}from"./chunk-C94x7I9S.mjs";import{Ba as r,Bt as i,Et as a,Va as o,Xi as s,bi as c,bn as l,ja as u,mt as d}from"./server-lock-iLcBw_q0-pnLGEjec.mjs";import{$n as f,D as p,Gn as m,K as h,O as g,Qn as _,Zn as v,aa as y,cr as b,d as x,ga as S,ia as C,ir as w,ta as T,ut as E,vn as ee,wa as D,ya as O}from"./dist-AMcKbNor.mjs";import{r as k,t as te}from"./esm-CsQUg9js.mjs";import{t as ne}from"./constants-Br0O5zjA.mjs";import{a as re,b as ie,d as A,g as ae,h as oe,i as se,m as ce,p as le,s as ue,t as j,x as M}from"./write-project-skill-Dw9Did_1.mjs";import{t as N}from"./is-object-Cg453afR.mjs";import{i as P,n as de,o as F,r as fe,s as I,t as L}from"./colors-8SzMRIVy.mjs";import{t as pe}from"./preview-CVMx2nNA.mjs";import{createRequire as me}from"node:module";import{execFileSync as he}from"node:child_process";import ge,{dirname as R,isAbsolute as _e,join as z,relative as B,resolve as ve,sep as ye}from"node:path";import V from"node:process";import{fileURLToPath as be}from"node:url";import{homedir as xe}from"node:os";import{existsSync as H,lstatSync as Se,mkdirSync as Ce,readFileSync as U,readlinkSync as we,realpathSync as Te,statSync as Ee,writeFileSync as De}from"node:fs";import{randomUUID as Oe}from"node:crypto";import{inspect as ke,stripVTControlCharacters as Ae,styleText as W}from"node:util";import{AsyncLocalStorage as je,AsyncResource as Me}from"node:async_hooks";import{createServer as Ne,request as Pe}from"node:http";import*as Fe from"node:readline";import{connect as Ie}from"node:net";const Le=new Set([`emacs`,`vim`]);function Re(e){return Le.has(e)}function ze(){let e=process.env.INQUIRER_KEYBINDINGS;return e?Array.from(new Set(e.toLowerCase().split(/[\s,]+/).filter(Re))):[]}const Be=(e,t=[])=>e.name===`up`||t.includes(`vim`)&&e.name===`k`||t.includes(`emacs`)&&e.ctrl&&e.name===`p`,Ve=(e,t=[])=>e.name===`down`||t.includes(`vim`)&&e.name===`j`||t.includes(`emacs`)&&e.ctrl&&e.name===`n`,He=e=>e.name===`space`,Ue=e=>e.name===`backspace`,We=e=>`1234567890`.includes(e.name),Ge=e=>e.name===`enter`||e.name===`return`;var Ke=class extends Error{name=`AbortPromptError`;message=`Prompt was aborted`;constructor(e){super(),this.cause=e?.cause}},qe=class extends Error{name=`CancelPromptError`;message=`Prompt was canceled`},Je=class extends Error{name=`ExitPromptError`},Ye=class extends Error{name=`HookError`},Xe=class extends Error{name=`ValidationError`};const Ze=new je;function Qe(e){return{rl:e,hooks:[],hooksCleanup:[],hooksEffect:[],index:0,handleChange(){}}}function $e(e,t){let n=Qe(e);return Ze.run(n,()=>{function e(e){n.handleChange=()=>{n.index=0,e()},n.handleChange()}return t(e)})}function G(){let e=Ze.getStore();if(!e)throw new Ye(`[Inquirer] Hook functions can only be called from within a prompt`);return e}function et(){return G().rl}function tt(e){return Me.bind((...t)=>{let n=G(),r=!1,i=n.handleChange;n.handleChange=()=>{r=!0};let a=e(...t);return r&&i(),n.handleChange=i,a})}function nt(e){let t=G(),{index:n}=t,r=e({get(){return t.hooks[n]},set(e){t.hooks[n]=e},initialized:n in t.hooks});return t.index++,r}function rt(){G().handleChange()}const it={queue(e){let t=G(),{index:n}=t;t.hooksEffect.push(()=>{t.hooksCleanup[n]?.();let r=e(et());if(r!=null&&typeof r!=`function`)throw new Xe(`useEffect return value must be a cleanup function or nothing.`);t.hooksCleanup[n]=r})},run(){let e=G();tt(()=>{e.hooksEffect.forEach(e=>{e()}),e.hooksEffect.length=0})()},clearAll(){let e=G();e.hooksCleanup.forEach(e=>{e?.()}),e.hooksEffect.length=0,e.hooksCleanup.length=0}};function at(e){return typeof e==`function`}function K(e){return nt(t=>{let n=Me.bind(function(e){t.get()!==e&&(t.set(e),rt())});if(t.initialized)return[t.get(),n];let r=at(e)?e():e;return t.set(r),[r,n]})}function ot(e,t){nt(n=>{let r=n.get();(!Array.isArray(r)||t.some((e,t)=>!Object.is(e,r[t])))&&it.queue(e),n.set(t)})}function st(){return V.platform.startsWith(`win`)?!!V.env.CI||!!V.env.WT_SESSION||!!V.env.TERMINUS_SUBLIME||V.env.ConEmuTask===`{cmd::Cmder}`||V.env.TERM_PROGRAM===`Terminus-Sublime`||V.env.TERM_PROGRAM===`vscode`||V.env.TERM===`xterm-256color`||V.env.TERM===`alacritty`||V.env.TERMINAL_EMULATOR===`JetBrains-JediTerm`:V.env.TERM!==`linux`}const ct={circleQuestionMark:`(?)`,questionMarkPrefix:`(?)`,square:`█`,squareDarkShade:`▓`,squareMediumShade:`▒`,squareLightShade:`░`,squareTop:`▀`,squareBottom:`▄`,squareLeft:`▌`,squareRight:`▐`,squareCenter:`■`,bullet:`●`,dot:`․`,ellipsis:`…`,pointerSmall:`›`,triangleUp:`▲`,triangleUpSmall:`▴`,triangleDown:`▼`,triangleDownSmall:`▾`,triangleLeftSmall:`◂`,triangleRightSmall:`▸`,home:`⌂`,heart:`♥`,musicNote:`♪`,musicNoteBeamed:`♫`,arrowUp:`↑`,arrowDown:`↓`,arrowLeft:`←`,arrowRight:`→`,arrowLeftRight:`↔`,arrowUpDown:`↕`,almostEqual:`≈`,notEqual:`≠`,lessOrEqual:`≤`,greaterOrEqual:`≥`,identical:`≡`,infinity:`∞`,subscriptZero:`₀`,subscriptOne:`₁`,subscriptTwo:`₂`,subscriptThree:`₃`,subscriptFour:`₄`,subscriptFive:`₅`,subscriptSix:`₆`,subscriptSeven:`₇`,subscriptEight:`₈`,subscriptNine:`₉`,oneHalf:`½`,oneThird:`⅓`,oneQuarter:`¼`,oneFifth:`⅕`,oneSixth:`⅙`,oneEighth:`⅛`,twoThirds:`⅔`,twoFifths:`⅖`,threeQuarters:`¾`,threeFifths:`⅗`,threeEighths:`⅜`,fourFifths:`⅘`,fiveSixths:`⅚`,fiveEighths:`⅝`,sevenEighths:`⅞`,line:`─`,lineBold:`━`,lineDouble:`═`,lineDashed0:`┄`,lineDashed1:`┅`,lineDashed2:`┈`,lineDashed3:`┉`,lineDashed4:`╌`,lineDashed5:`╍`,lineDashed6:`╴`,lineDashed7:`╶`,lineDashed8:`╸`,lineDashed9:`╺`,lineDashed10:`╼`,lineDashed11:`╾`,lineDashed12:`−`,lineDashed13:`–`,lineDashed14:`‐`,lineDashed15:`⁃`,lineVertical:`│`,lineVerticalBold:`┃`,lineVerticalDouble:`║`,lineVerticalDashed0:`┆`,lineVerticalDashed1:`┇`,lineVerticalDashed2:`┊`,lineVerticalDashed3:`┋`,lineVerticalDashed4:`╎`,lineVerticalDashed5:`╏`,lineVerticalDashed6:`╵`,lineVerticalDashed7:`╷`,lineVerticalDashed8:`╹`,lineVerticalDashed9:`╻`,lineVerticalDashed10:`╽`,lineVerticalDashed11:`╿`,lineDownLeft:`┐`,lineDownLeftArc:`╮`,lineDownBoldLeftBold:`┓`,lineDownBoldLeft:`┒`,lineDownLeftBold:`┑`,lineDownDoubleLeftDouble:`╗`,lineDownDoubleLeft:`╖`,lineDownLeftDouble:`╕`,lineDownRight:`┌`,lineDownRightArc:`╭`,lineDownBoldRightBold:`┏`,lineDownBoldRight:`┎`,lineDownRightBold:`┍`,lineDownDoubleRightDouble:`╔`,lineDownDoubleRight:`╓`,lineDownRightDouble:`╒`,lineUpLeft:`┘`,lineUpLeftArc:`╯`,lineUpBoldLeftBold:`┛`,lineUpBoldLeft:`┚`,lineUpLeftBold:`┙`,lineUpDoubleLeftDouble:`╝`,lineUpDoubleLeft:`╜`,lineUpLeftDouble:`╛`,lineUpRight:`└`,lineUpRightArc:`╰`,lineUpBoldRightBold:`┗`,lineUpBoldRight:`┖`,lineUpRightBold:`┕`,lineUpDoubleRightDouble:`╚`,lineUpDoubleRight:`╙`,lineUpRightDouble:`╘`,lineUpDownLeft:`┤`,lineUpBoldDownBoldLeftBold:`┫`,lineUpBoldDownBoldLeft:`┨`,lineUpDownLeftBold:`┥`,lineUpBoldDownLeftBold:`┩`,lineUpDownBoldLeftBold:`┪`,lineUpDownBoldLeft:`┧`,lineUpBoldDownLeft:`┦`,lineUpDoubleDownDoubleLeftDouble:`╣`,lineUpDoubleDownDoubleLeft:`╢`,lineUpDownLeftDouble:`╡`,lineUpDownRight:`├`,lineUpBoldDownBoldRightBold:`┣`,lineUpBoldDownBoldRight:`┠`,lineUpDownRightBold:`┝`,lineUpBoldDownRightBold:`┡`,lineUpDownBoldRightBold:`┢`,lineUpDownBoldRight:`┟`,lineUpBoldDownRight:`┞`,lineUpDoubleDownDoubleRightDouble:`╠`,lineUpDoubleDownDoubleRight:`╟`,lineUpDownRightDouble:`╞`,lineDownLeftRight:`┬`,lineDownBoldLeftBoldRightBold:`┳`,lineDownLeftBoldRightBold:`┯`,lineDownBoldLeftRight:`┰`,lineDownBoldLeftBoldRight:`┱`,lineDownBoldLeftRightBold:`┲`,lineDownLeftRightBold:`┮`,lineDownLeftBoldRight:`┭`,lineDownDoubleLeftDoubleRightDouble:`╦`,lineDownDoubleLeftRight:`╥`,lineDownLeftDoubleRightDouble:`╤`,lineUpLeftRight:`┴`,lineUpBoldLeftBoldRightBold:`┻`,lineUpLeftBoldRightBold:`┷`,lineUpBoldLeftRight:`┸`,lineUpBoldLeftBoldRight:`┹`,lineUpBoldLeftRightBold:`┺`,lineUpLeftRightBold:`┶`,lineUpLeftBoldRight:`┵`,lineUpDoubleLeftDoubleRightDouble:`╩`,lineUpDoubleLeftRight:`╨`,lineUpLeftDoubleRightDouble:`╧`,lineUpDownLeftRight:`┼`,lineUpBoldDownBoldLeftBoldRightBold:`╋`,lineUpDownBoldLeftBoldRightBold:`╈`,lineUpBoldDownLeftBoldRightBold:`╇`,lineUpBoldDownBoldLeftRightBold:`╊`,lineUpBoldDownBoldLeftBoldRight:`╉`,lineUpBoldDownLeftRight:`╀`,lineUpDownBoldLeftRight:`╁`,lineUpDownLeftBoldRight:`┽`,lineUpDownLeftRightBold:`┾`,lineUpBoldDownBoldLeftRight:`╂`,lineUpDownLeftBoldRightBold:`┿`,lineUpBoldDownLeftBoldRight:`╃`,lineUpBoldDownLeftRightBold:`╄`,lineUpDownBoldLeftBoldRight:`╅`,lineUpDownBoldLeftRightBold:`╆`,lineUpDoubleDownDoubleLeftDoubleRightDouble:`╬`,lineUpDoubleDownDoubleLeftRight:`╫`,lineUpDownLeftDoubleRightDouble:`╪`,lineCross:`╳`,lineBackslash:`╲`,lineSlash:`╱`},lt={tick:`✔`,info:`ℹ`,warning:`⚠`,cross:`✘`,squareSmall:`◻`,squareSmallFilled:`◼`,circle:`◯`,circleFilled:`◉`,circleDotted:`◌`,circleDouble:`◎`,circleCircle:`ⓞ`,circleCross:`ⓧ`,circlePipe:`Ⓘ`,radioOn:`◉`,radioOff:`◯`,checkboxOn:`☒`,checkboxOff:`☐`,checkboxCircleOn:`ⓧ`,checkboxCircleOff:`Ⓘ`,pointer:`❯`,triangleUpOutline:`△`,triangleLeft:`◀`,triangleRight:`▶`,lozenge:`◆`,lozengeOutline:`◇`,hamburger:`☰`,smiley:`㋡`,mustache:`෴`,star:`★`,play:`▶`,nodejs:`⬢`,oneSeventh:`⅐`,oneNinth:`⅑`,oneTenth:`⅒`},ut={tick:`√`,info:`i`,warning:`‼`,cross:`×`,squareSmall:`□`,squareSmallFilled:`■`,circle:`( )`,circleFilled:`(*)`,circleDotted:`( )`,circleDouble:`( )`,circleCircle:`(○)`,circleCross:`(×)`,circlePipe:`(│)`,radioOn:`(*)`,radioOff:`( )`,checkboxOn:`[×]`,checkboxOff:`[ ]`,checkboxCircleOn:`(×)`,checkboxCircleOff:`( )`,pointer:`>`,triangleUpOutline:`∆`,triangleLeft:`◄`,triangleRight:`►`,lozenge:`♦`,lozengeOutline:`◊`,hamburger:`≡`,smiley:`☺`,mustache:`┌─┐`,star:`✶`,play:`►`,nodejs:`♦`,oneSeventh:`1/7`,oneNinth:`1/9`,oneTenth:`1/10`},dt={...ct,...lt},ft={...ct,...ut},q=st()?dt:ft;Object.entries(lt);const pt={prefix:{idle:W(`blue`,`?`),done:W(`green`,q.tick)},spinner:{interval:80,frames:[`⠋`,`⠙`,`⠹`,`⠸`,`⠼`,`⠴`,`⠦`,`⠧`,`⠇`,`⠏`].map(e=>W(`yellow`,e))},keybindings:[],style:{answer:e=>W(`cyan`,e),message:e=>W(`bold`,e),error:e=>W(`red`,`> ${e}`),defaultAnswer:e=>W(`dim`,`(${e})`),help:e=>W(`dim`,e),highlight:e=>W(`cyan`,e),key:e=>W(`cyan`,W(`bold`,`<${e}>`))}};function mt(){return{...pt,keybindings:ze()}}function ht(e){if(typeof e!=`object`||!e)return!1;let t=e;for(;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}function gt(...e){let t={};for(let n of e)for(let[e,r]of Object.entries(n)){let n=t[e];t[e]=ht(n)&&ht(r)?gt(n,r):r}return t}function _t(...e){return gt(mt(),...e.filter(e=>e!=null))}function vt({status:e=`idle`,theme:t}){let[n,r]=K(!1),[i,a]=K(0),{prefix:o,spinner:s}=_t(t);return ot(()=>{if(e===`loading`){let e,t=-1,n=setTimeout(()=>{r(!0),e=setInterval(()=>{t+=1,a(t%s.frames.length)},s.interval)},300);return()=>{clearTimeout(n),clearInterval(e)}}else r(!1)},[e]),n?s.frames[i]:typeof o==`string`?o:o[e===`loading`?`idle`:e]??o.idle}function yt(e,t){return nt(n=>{let r=n.get();if(!r||r.dependencies.length!==t.length||r.dependencies.some((e,n)=>e!==t[n])){let r=e();return n.set({value:r,dependencies:t}),r}return r.value})}function bt(e){return K({current:e})[0]}function xt(e){let t=bt(e);t.current=e,ot(e=>{let n=!1,r=tt((r,i)=>{n||t.current(i,e)});return e.input.on(`keypress`,r),()=>{n=!0,e.input.removeListener(`keypress`,r)}},[])}var St=n(((t,n)=>{n.exports=i;function r(t){let n={defaultWidth:0,output:process.stdout,tty:e(`tty`)};return t?(Object.keys(n).forEach(function(e){t[e]||(t[e]=n[e])}),t):n}function i(e){let t=r(e);if(t.output.getWindowSize)return t.output.getWindowSize()[0]||t.defaultWidth;if(t.tty.getWindowSize)return t.tty.getWindowSize()[1]||t.defaultWidth;if(t.output.columns)return t.output.columns;if(process.env.CLI_WIDTH){let e=parseInt(process.env.CLI_WIDTH,10);if(!isNaN(e)&&e!==0)return e}return t.defaultWidth}}));const Ct=(()=>{let e=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g;return t=>{let n=0;for(e.lastIndex=0;e.test(t);)n+=1;return t.length-n}})(),wt=e=>e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510,Tt=e=>e===8987||e===9001||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12771||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=19903||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||e>=131072&&e<=196605||e>=196608&&e<=262141,Et=/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]|\u001b\]8;[^;]*;.*?(?:\u0007|\u001b\u005c)/y,Dt=/[\x00-\x08\x0A-\x1F\x7F-\x9F]{1,1000}/y,Ot=/(?:(?![\uFF61-\uFF9F\uFF00-\uFFEF])[\p{Script=Han}\p{Script=Hiragana}\p{Script=Katakana}\p{Script=Hangul}\p{Script=Tangut}]){1,1000}/uy,kt=/\t{1,1000}/y,At=/[\u{1F1E6}-\u{1F1FF}]{2}|\u{1F3F4}[\u{E0061}-\u{E007A}]{2}[\u{E0030}-\u{E0039}\u{E0061}-\u{E007A}]{1,3}\u{E007F}|(?:\p{Emoji}\uFE0F\u20E3?|\p{Emoji_Modifier_Base}\p{Emoji_Modifier}?|\p{Emoji_Presentation})(?:\u200D(?:\p{Emoji_Modifier_Base}\p{Emoji_Modifier}?|\p{Emoji_Presentation}|\p{Emoji}\uFE0F\u20E3?))*/uy,jt=/(?:[\x20-\x7E\xA0-\xFF](?!\uFE0F)){1,1000}/y,Mt=/\p{M}+/gu,Nt={limit:1/0,ellipsis:``},Pt=(e,t={},n={})=>{let r=t.limit??1/0,i=t.ellipsis??``,a=t?.ellipsisWidth??(i?Pt(i,Nt,n).width:0),o=n.controlWidth??0,s=n.tabWidth??8,c=n.emojiWidth??2,l=n.regularWidth??1,u=n.wideWidth??2,d=[[jt,l],[Et,0],[Dt,o],[kt,s],[At,c],[Ot,u]],f=0,p=0,m=e.length,h=0,g=!1,_=m,v=Math.max(0,r-a),y=0,b=0,x=0,S=0;outer:for(;;){if(b>y||p>=m&&p>f){let t=e.slice(y,b)||e.slice(f,p);h=0;for(let e of t.replaceAll(Mt,``)){let t=e.codePointAt(0)||0;if(S=wt(t)?2:Tt(t)?u:l,x+S>v&&(_=Math.min(_,Math.max(y,f)+h)),x+S>r){g=!0;break outer}h+=e.length,x+=S}y=b=0}if(p>=m)break outer;for(let t=0,n=d.length;t<n;t++){let[n,i]=d[t];if(n.lastIndex=p,n.test(e)){if(h=n===Ot?Ct(e.slice(p,n.lastIndex)):n===At?1:n.lastIndex-p,S=h*i,x+S>v&&(_=Math.min(_,p+Math.floor((v-x)/i))),x+S>r){g=!0;break outer}x+=S,y=f,b=p,p=f=n.lastIndex;continue outer}}p+=1}return{width:g?v:x,index:g?_:m,truncated:g,ellipsed:g&&r>=a}},Ft={limit:1/0,ellipsis:``,ellipsisWidth:0},J=(e,t={})=>Pt(e,Ft,t).width,It=`]8;;`,Lt=RegExp(`(?:\\[(?<code>\\d+)m|\\${It}(?<uri>.*))`,`y`),Rt=e=>{if(e>=30&&e<=37||e>=90&&e<=97)return 39;if(e>=40&&e<=47||e>=100&&e<=107)return 49;if(e===1||e===2)return 22;if(e===3)return 23;if(e===4)return 24;if(e===7)return 27;if(e===8)return 28;if(e===9)return 29;if(e===0)return 0},zt=e=>`[${e}m`,Bt=e=>`${It}${e}`,Vt=(e,t,n)=>{let r=t[Symbol.iterator](),i=!1,a=!1,o=e.at(-1),s=o===void 0?0:J(o),c=r.next(),l=r.next(),u=0;for(;!c.done;){let o=c.value,d=J(o);s+d<=n?e[e.length-1]+=o:(e.push(o),s=0),(o===`\x1B`||o===``)&&(i=!0,a=t.startsWith(It,u+1)),i?a?o===`\x07`&&(i=!1,a=!1):o===`m`&&(i=!1):(s+=d,s===n&&!l.done&&(e.push(``),s=0)),c=l,l=r.next(),u+=o.length}o=e.at(-1),!s&&o!==void 0&&o.length&&e.length>1&&(e[e.length-2]+=e.pop())},Ht=e=>{let t=e.split(` `),n=t.length;for(;n&&!J(t[n-1]);)n--;return n===t.length?e:t.slice(0,n).join(` `)+t.slice(n).join(``)},Ut=(e,t,n={})=>{if(n.trim!==!1&&e.trim()===``)return``;let r=``,i,a,o=e.split(` `),s=[``],c=0;for(let e=0;e<o.length;e++){let r=o[e];if(n.trim!==!1){let e=s.at(-1)??``,t=e.trimStart();e.length!==t.length&&(s[s.length-1]=t,c=J(t))}e!==0&&(c>=t&&(n.wordWrap===!1||n.trim===!1)&&(s.push(``),c=0),(c||n.trim===!1)&&(s[s.length-1]+=` `,c++));let i=J(r);if(n.hard&&i>t){let e=t-c,n=1+Math.floor((i-e-1)/t);Math.floor((i-1)/t)<n&&s.push(``),Vt(s,r,t),c=J(s.at(-1)??``);continue}if(c+i>t&&c&&i){if(n.wordWrap===!1&&c<t){Vt(s,r,t),c=J(s.at(-1)??``);continue}s.push(``),c=0}if(c+i>t&&n.wordWrap===!1){Vt(s,r,t),c=J(s.at(-1)??``);continue}s[s.length-1]+=r,c+=i}n.trim!==!1&&(s=s.map(e=>Ht(e)));let l=s.join(`
|
|
2
2
|
`),u=!1;for(let e=0;e<l.length;e++){let t=l[e];if(r+=t,u)u=!1;else if(u=t>=`\ud800`&&t<=`\udbff`,u)continue;if(t===`\x1B`||t===``){Lt.lastIndex=e+1;let t=Lt.exec(l)?.groups;if(t?.code!==void 0){let e=Number.parseFloat(t.code);i=e===39?void 0:e}else t?.uri!==void 0&&(a=t.uri.length===0?void 0:t.uri)}if(l[e+1]===`
|
|
3
3
|
`){a&&(r+=Bt(``));let e=i?Rt(i):void 0;i&&e&&(r+=zt(e))}else t===`
|
|
4
4
|
`&&(i&&Rt(i)&&(r+=zt(i)),a&&(r+=Bt(a)))}return r},Wt=/\r?\n/;function Gt(e,t,n){return String(e).normalize().split(Wt).map(e=>Ut(e,t,n)).join(`
|
|
@@ -632,7 +632,7 @@ export default function okBridge(pi: {
|
|
|
632
632
|
});
|
|
633
633
|
}
|
|
634
634
|
`}function xi(e,t){let n=B(t,e);return n.length>0&&!n.startsWith(`..`)&&!_e(n)}const Si=e=>{try{let t=he(`git`,[`rev-parse`,`--show-toplevel`],T({cwd:e,encoding:`utf8`,stdio:[`ignore`,`pipe`,`ignore`]})).trim();return t.length>0?t:null}catch{return null}};function Ci(e,t={}){let n=t.homeDir??xe(),r=t.gitTopLevel??Si,i=ve(e),a;try{a=Te(i)}catch{a=i}let o=a,s=0;for(;s<30&&!(o===n||o===`/`||o===``);){if(b(o))return{projectRoot:o,defaultContentDir:`.`,ancestorPromoted:o!==a,gitRootPromoted:!1};let e=R(o);if(e===o)break;o=e,s+=1}let c=r(a);return c!==null&&xi(c,n)?c===a?{projectRoot:i,defaultContentDir:`.`,ancestorPromoted:!1,gitRootPromoted:!1}:{projectRoot:c,defaultContentDir:`.`,ancestorPromoted:!1,gitRootPromoted:!0}:{projectRoot:i,defaultContentDir:`.`,ancestorPromoted:!1,gitRootPromoted:!1}}function wi(e){let t=e&&typeof e==`object`&&`code`in e?e.code:void 0;return t===`MODULE_NOT_FOUND`||t===`ERR_MODULE_NOT_FOUND`}function $(e,t){if(!process.env.OK_DEBUG_NATIVE)return;let n=t instanceof Error?t.message:String(t);process.stderr.write(`[ok] native-config ${e}: ${n}\n`)}const Ti=[`native`,`index.js`];function Ei(e={}){let t=e.moduleUrl??import.meta.url,n=e.requireModule??me(t);try{return n(z(R(be(t)),...Ti))}catch(e){wi(e)||$(`bundled loader failed to load`,e)}try{return n(`@inkeep/open-knowledge-native-config`)}catch(e){return wi(e)||$(`workspace addon failed to load`,e),null}}function Di(){let e=Ei();return e&&typeof e.resolveSymlinkWritePath==`function`?e:null}function Oi(e){let t=e,n=new Set;for(;;){let r;try{r=Se(t).isSymbolicLink()}catch(n){return n.code===`ENOENT`?{readPath:t,writePath:t}:{readPath:null,writePath:e}}if(!r)return{readPath:t,writePath:t};if(n.has(t))return{readPath:null,writePath:e};n.add(t);let i;try{i=we(t)}catch(t){return $(`readlinkSync threw during symlink walk`,t),{readPath:null,writePath:e}}t=_e(i)?i:z(R(t),i)}}let ki;function Ai(){return ki===void 0&&(ki=Di()),ki}function ji(e,t=Ai){let n=t();if(n)try{let t=n.resolveSymlinkWritePath(e);return{readPath:t.readPath??null,writePath:t.writePath}}catch(e){$(`resolveSymlinkWritePath threw`,e)}return Oi(e)}function Mi(){let e=Ei();return e&&typeof e.parseTomlToJson==`function`?e:null}function Ni(e){try{let t=e.parseTomlToJson(`probe = 1`);return typeof t==`string`&&t.includes(`probe`)}catch(e){return $(`addon loaded but probe failed`,e),!1}}function Pi(e){if(!N(e))throw Error(`TOML root is not a table`);return e}function Fi(e){return{backend:`native`,parseToObject(t){return Pi(JSON.parse(e.parseTomlToJson(t)))},upsertEntry(t,n,r){let i=e.upsertMcpServer(t,n,JSON.stringify(r));return{text:i.text,existed:i.existed}},removeEntry(t,n){let r=e.removeMcpServer(t,n);return{text:r.text,existed:r.existed}}}}function Ii(){return{backend:`fallback`,parseToObject(e){return Pi(ai(e))}}}function Li(e=Mi){let t=e();return t&&Ni(t)?Fi(t):Ii()}let Ri=null;function zi(){return Ri===null&&(Ri=Li()),Ri}function Bi(e,t,n,r,i){let a=`urn:uuid:${Oe()}`;if(e.headersSent||e.writableEnded||e.destroyed){console.error(`[ok ui] emitProblem called after headers sent — suppressed`,{type:n,status:t,instance:a});return}let o={type:n,title:r,status:t,instance:a,...i===void 0?{}:{detail:i}},s=l.safeParse(o);if(!s.success){console.error(`[ok ui] emitProblem produced an invalid ProblemDetails body:`,{issues:s.error.issues,originalStatus:t,body:o}),e.writeHead(500,{"Content-Type":`application/problem+json`,"X-Content-Type-Options":`nosniff`,"Cache-Control":`no-store`}),e.end(JSON.stringify({type:`urn:ok:error:internal-server-error`,title:`Internal server error.`,status:500,instance:a}));return}e.writeHead(t,{"Content-Type":`application/problem+json`,"X-Content-Type-Options":`nosniff`,"Cache-Control":`no-store`}),e.end(JSON.stringify(o))}const Vi=1e4;function Hi(e,t){let n=e.socket?.remoteAddress;if(n!==void 0&&!w(n))return Bi(t,403,`urn:ok:error:loopback-required`,`Request must originate from a loopback address.`),!0;if(!f(e.headers.host))return Bi(t,403,`urn:ok:error:host-not-allowed`,`Host header is not in the loopback allowlist.`),!0;let r=e.headers.origin;return r!==void 0&&!_(r)?(Bi(t,403,`urn:ok:error:invalid-origin`,`Origin header is not in the loopback allowlist.`),!0):!1}const Ui=3e4;function Wi(e,t){let n=e.socket?.remoteAddress;if(n!==void 0&&!w(n)||!f(e.headers.host))return t.destroy(),!0;let r=e.headers.origin;return typeof r==`string`&&!_(r)?(t.destroy(),!0):!1}function Gi(e,t,n,r,i,a){a.add(t),t.once(`close`,()=>a.delete(t));let o=Ie({host:r,port:i,timeout:Vi});a.add(o),o.once(`close`,()=>a.delete(o));let s=!1,c=n=>{if(!s){if(s=!0,n!==void 0){let t=n.err;console.warn(JSON.stringify({event:n.event,upstreamHost:r,upstreamPort:i,url:e.url,code:t instanceof Error?t.code:void 0,message:t instanceof Error?t.message:void 0}))}try{o.destroy()}catch{}try{t.destroy()}catch{}}};o.once(`connect`,()=>{o.setTimeout(0);let a=[`${e.method??`GET`} ${e.url??`/`} HTTP/1.1`,`host: ${r}:${i}`];for(let[t,n]of Object.entries(e.headers))if(t.toLowerCase()!==`host`&&n!==void 0)if(Array.isArray(n))for(let e of n)a.push(`${t}: ${e}`);else a.push(`${t}: ${n}`);try{o.write(`${a.join(`\r
|
|
635
|
-
`)}\r\n\r\n`),n.length>0&&o.write(n)}catch(e){c({event:`proxy-upgrade-handshake-write-failed`,err:e});return}o.on(`data`,e=>{t.writable&&t.write(e)}),t.on(`data`,e=>{o.writable&&o.write(e)})}),o.once(`timeout`,()=>{c({event:`proxy-upgrade-upstream-connect-timeout`})}),o.on(`error`,e=>c({event:`proxy-upgrade-upstream-error`,err:e})),t.on(`error`,e=>c({event:`proxy-upgrade-client-error`,err:e})),o.once(`close`,()=>c()),t.once(`close`,()=>c())}const Ki=[`connection`,`keep-alive`,`proxy-authenticate`,`proxy-authorization`,`te`,`trailer`,`transfer-encoding`,`upgrade`,`cookie`,`set-cookie`];async function qi(e){let t=e.upstreamTimeoutMs??Vi,n=new Set,r=Ne((n,r)=>{Hi(n,r)||Yi(n,r,e.upstreamHost,e.upstreamPort,t)});r.on(`upgrade`,(t,r,i)=>{Wi(t,r)||Gi(t,r,i,e.upstreamHost,e.upstreamPort,n)}),await new Promise((t,n)=>{let i=e=>n(e);r.once(`error`,i),r.listen(e.listenPort,e.host,()=>{r.off(`error`,i),t()})});let i=r.address();return{httpServer:r,port:typeof i==`object`&&i?i.port:e.listenPort,close:()=>new Promise(e=>{for(let e of n)try{e.destroy()}catch{}n.clear(),r.close(()=>e()),r.closeIdleConnections()})}}function Ji(e,t,n){Yi(e,t,n.upstreamHost,n.upstreamPort,n.upstreamTimeoutMs??Vi)}function Yi(e,t,n,r,i){let a={...e.headers};delete a.host;for(let e of Ki)delete a[e];e.setTimeout(Ui,()=>{if(t.headersSent)try{t.end()}catch{}else try{Bi(t,408,`urn:ok:error:request-timeout`,`Proxy request exceeded the per-request deadline.`,`Slow-loris-class: client did not finish within ${Ui/1e3}s.`)}catch{}try{e.socket?.destroy()}catch{}});let o=Pe({host:n,port:r,method:e.method,path:e.url,headers:{...a,host:`${n}:${r}`}},e=>{let n={...e.headers};for(let e of Ki)delete n[e];t.writeHead(e.statusCode??502,n),e.pipe(t),e.once(`error`,()=>{try{t.end()}catch{}})});i>0&&o.setTimeout(i,()=>{if(!t.headersSent)Bi(t,504,`urn:ok:error:gateway-timeout`,`Upstream did not respond before the gateway deadline.`,`Upstream timeout: ${i/1e3}s elapsed without a response.`);else try{t.end()}catch{}o.destroy()}),o.on(`error`,()=>{if(!t.headersSent)Bi(t,502,`urn:ok:error:collab-server-not-running`,`Collab server is unreachable.`,`Upstream connection failed or dropped before a response was received.`);else try{t.end()}catch{}}),e.on(`error`,()=>{o.destroy()}),e.pipe(o)}const Xi=39847,Zi=39848;async function Qi(e){await Promise.all(e.map(e=>new Promise(t=>{e.close(()=>t())})))}async function $i(e){let{existsSync:t}=await import(`node:fs`),{createServer:n}=await import(`node:http`),{resolve:i}=await import(`node:path`),{acquireUiLock:a,clearArmedPaneTarget:s,createAssetServeMiddleware:l,createContentFilter:f,readArmedPaneTarget:p,readServerLock:m,releaseUiLock:h,updateUiLockPort:g}=await import(`./dist-72is7jRd.mjs`),{default:_}=await import(`./build-gfyDk62R.mjs`),{resolveContentDir:v,resolveLockDir:y}=await import(`./dist-72is7jRd.mjs`),b=v(e.config,e.cwd),x=y(e.cwd);a(x,{port:0,worktreeRoot:e.cwd});let S=import.meta.dirname??new URL(`.`,import.meta.url).pathname,C=[i(S,`public`),i(S,`../../app/dist`),i(S,`../../../app/dist`)],w=e.assetDir??C.find(e=>t(e)),T=w?_(w,{single:!0,gzip:!0,etag:!0,dev:!0,extensions:[]}):null,E=t(b)?l({contentFilter:f({projectDir:e.cwd,contentDir:b}),contentSirv:_(b,{dotfiles:!1,dev:!0,extensions:[]}),inlineExtensions:o,assetExtensions:u,blocklistExtensions:r}):null,ee=e.port,D=null,O=(e,t)=>{let n=e.url?.split(`?`)[0];if(e.method===`GET`&&(n===`/`||n===``)){let e=p(x);if(e&&!/[\r\n]/.test(e)){s(x),t.statusCode=302,t.setHeader(`Location`,`/${e}`),t.setHeader(`Cache-Control`,`no-store`),t.end();return}}if((n===`/`||n===``)&&(e.url=`/index.html`),!(n?.startsWith(`/api/`)&&Hi(e,t))){if(n===`/api/config`&&e.method===`DELETE`){s(x),t.setHeader(`Cache-Control`,`no-store`),t.statusCode=204,t.end();return}if(n===`/api/config`&&(e.method===`GET`||e.method===`HEAD`)){D?.();let n=m(x),r=e.headers.host??`localhost:${ee}`,i=n&&n.port>0?`ws://${r}/collab`:null,a=p(x),o=JSON.stringify({collabUrl:i,previewUrl:null,port:ee,paneTarget:a});t.setHeader(`Content-Type`,`application/json`),t.setHeader(`Cache-Control`,`no-store`),t.setHeader(`X-Content-Type-Options`,`nosniff`),t.statusCode=200,e.method===`HEAD`?t.end():t.end(o);return}if(n?.startsWith(`/api/`)){D?.();let r=m(x);if(!r||r.port<=0){Bi(t,503,`urn:ok:error:collab-server-not-running`,"Collab server not running. Start `ok start` or run `ok status`.",`Path: ${n}`);return}Ji(e,t,{upstreamHost:d,upstreamPort:r.port});return}if(T&&n?.startsWith(`/assets/`)){T(e,t,()=>{E?E(e,t,()=>ea(t)):ea(t)});return}if(E){E(e,t,()=>{T?T(e,t):ea(t)});return}if(T){T(e,t);return}ea(t)}},k=new Set,te=(e,t,n)=>{if(Wi(e,t))return;let r=e.url?.split(`?`)[0]??``;if(r!==`/collab`&&!r.startsWith(`/collab/`)){t.destroy();return}let i=m(x);if(!i||i.port<=0){console.warn(JSON.stringify({event:`ok-ui-upgrade-no-collab-lock`,url:r,reason:"server.lock missing or port unbound — is `ok start` running?"})),t.destroy();return}Gi(e,t,n,d,i.port,k)},ne=()=>{for(let e of k)try{e.destroy()}catch{}k.clear()},re=e.host===void 0?[`::1`,`127.0.0.1`]:[e.host],ie=[],A=e.port,ae=e=>e instanceof Error&&e.code===`EADDRINUSE`,oe=async()=>{await Promise.all(ie.splice(0).map(e=>new Promise(t=>{try{e.close(()=>t())}catch{t()}})))},se=async e=>{A=e;for(let e of re){let t=n(O);t.on(`upgrade`,te),ie.push(t),await new Promise((n,r)=>{let i=e=>r(e);t.once(`error`,i),t.listen(A,e,()=>{t.off(`error`,i);let e=t.address();typeof e==`object`&&e&&(A=e.port),n()})})}};try{try{await se(e.port)}catch(t){if(e.fallbackToKernel===!0&&ae(t))await oe(),await se(0);else throw t}}catch(e){await oe();try{h(x)}catch{}throw e}let ce=A;ee=ce,g(x,ce);let le=e.scheduler??c,ue=e.safetyNetMs??432e5,j=null,M=!1,N=!1,P=()=>{M||(M=!0,j!==null&&(le.clearTimeout(j),j=null))},de=()=>{if(P(),!N){N=!0;try{h(x)}catch{}}},F=()=>{M||ue<=0||(j!==null&&(le.clearTimeout(j),j=null),j=le.setTimeout(()=>{j=null,console.warn(`[ui] safety-net (${ue}ms) reached — shutting down (D-025 backstop)`);try{e.onSafetyNet?.()}catch{}ne();for(let e of ie)try{e.close()}catch{}de()},ue))},fe=()=>{M||ue<=0||F()};return D=fe,F(),{httpServers:ie,port:ce,release:de,detachSafetyNet:P,nudgeSafetyNet:fe,drainUpgradeSockets:ne}}function ea(e){e.headersSent||e.writableEnded||e.destroyed||(e.setHeader(`X-Content-Type-Options`,`nosniff`),e.setHeader(`Cache-Control`,`no-store`),e.statusCode=404,e.end())}function ta(e,t){if(e!==void 0){let t=Number.parseInt(e,10);if(Number.isNaN(t)||t<0||t>65535)throw Error(`Invalid --port value '${e}'`);return{port:t,fallbackToKernel:!1}}if(t!==void 0&&t!==``){let e=Number.parseInt(t,10);if(Number.isNaN(e)||e<0||e>65535)throw Error(`Invalid PORT env value '${t}'`);return{port:e,fallbackToKernel:!1}}return{port:Xi,fallbackToKernel:!0}}async function na(e){let t=e.readLock??(async()=>{let{readUiLock:t}=await import(`./dist-72is7jRd.mjs`);return t(e.lockDir)}),n=await t();if(!n)throw Error(`UI lock collision reported but the lock disappeared before handling — retry acquiring.`);if(n.port===e.requestedPort&&n.port>0)return{mode:`already-running`,port:n.port};let r=n.port;if(r===0){let n=Date.now()+(e.pollDeadlineMs??2e3),i=e.pollIntervalMs??100;for(;Date.now()<n;){await new Promise(e=>{setTimeout(e,i)});let e=await t();if(e&&e.port>0){r=e.port;break}}if(r===0)throw Error("UI did not bind within 2s; run `ok clean`");if(r===e.requestedPort)return{mode:`already-running`,port:r}}return{mode:`proxy`,handle:await qi({listenPort:e.requestedPort,host:e.host,upstreamHost:`localhost`,upstreamPort:r}),upstreamPort:r}}function ra(e){return new te(`ui`).description(`Serve the OpenKnowledge React editor UI`).option(`-p, --port <port>`,`UI port (default: $PORT env or ${Xi}, kernel-allocated fallback if busy)`).option(`-H, --host <host>`,"UI host. Default: two-socket loopback bind (`[::1]` + `127.0.0.1`) so cross-family collisions fail loud. Pass an explicit host (e.g. `127.0.0.1`, `0.0.0.0`) to bind a single socket on that host.").action(async t=>{let{dim:n}=await import(`./colors-CmkIIbww.mjs`),{UiLockCollisionError:r}=await import(`./dist-72is7jRd.mjs`),{resolveLockDir:i}=await import(`./dist-72is7jRd.mjs`),a=e(),o=t.host,s;try{s=ta(t.port,process.env.PORT)}catch(e){console.error(e instanceof Error?e.message:String(e)),process.exitCode=1;return}let c=s.port;try{let e=await $i({config:a,cwd:process.cwd(),port:c,fallbackToKernel:s.fallbackToKernel,host:o}),t=o===void 0||o===`::`||o===`0.0.0.0`?`localhost`:o;console.log(`${n(`[ui]`)} listening on http://${t}:${e.port}`);let r=!1,i=t=>{if(r)return;r=!0,console.log(n(`\n[ui] Shutting down (${t})`)),e.detachSafetyNet();let i=()=>{try{e.release()}finally{process.exit(process.exitCode??0)}};e.drainUpgradeSockets(),Qi(e.httpServers).then(i,i),setTimeout(i,2e3).unref()};process.once(`SIGINT`,()=>i(`SIGINT`)),process.once(`SIGTERM`,()=>i(`SIGTERM`));return}catch(e){if(!(e instanceof r))throw e;let t=i(process.cwd()),a=o??`localhost`,s;try{s=await na({requestedPort:c,host:a,lockDir:t})}catch(e){console.error(e instanceof Error?e.message:String(e)),process.exit(1)}if(s.mode===`already-running`){if(console.log(`UI already running at http://${a}:${s.port}`),ia(process)){await new Promise(e=>{let t=t=>{console.log(n(`\n[ui-keepalive] Shutting down (${t})`)),e()};process.once(`SIGINT`,()=>t(`SIGINT`)),process.once(`SIGTERM`,()=>t(`SIGTERM`))});return}process.exit(0)}console.log(`UI running at http://${a}:${s.upstreamPort}; acting as HTTP proxy on port ${s.handle.port}`);let l=!1,u=e=>{l||(l=!0,console.log(n(`\n[ui-proxy] Shutting down (${e})`)),s.handle.close().finally(()=>process.exit(process.exitCode??0)),setTimeout(()=>process.exit(process.exitCode??0),2e3).unref())};process.once(`SIGINT`,()=>u(`SIGINT`)),process.once(`SIGTERM`,()=>u(`SIGTERM`))}})}function ia(e){let t=e.stdout.isTTY===!0,n=typeof e.env.PORT==`string`&&e.env.PORT!==``;return!t||n}const aa={allowTrailingComma:!0,disallowComments:!1};function oa(e,t){return e.error===1&&e.offset===0&&t.charCodeAt(0)===65279}function sa(e){let t=[],n=mr(e,t,aa);return t.some(t=>!oa(t,e))||!n||n.type!==`object`?null:n}function ca(e,t){let n=0;for(let r of e.children??[]){let e=r.children?.[0];e!==void 0&&hr(e)===t&&(n+=1)}return n}function la(e,t){S(e,`${JSON.stringify(t,null,2)}\n`)}function ua(e,t){let n=hi(t);S(e,n.endsWith(`
|
|
635
|
+
`)}\r\n\r\n`),n.length>0&&o.write(n)}catch(e){c({event:`proxy-upgrade-handshake-write-failed`,err:e});return}o.on(`data`,e=>{t.writable&&t.write(e)}),t.on(`data`,e=>{o.writable&&o.write(e)})}),o.once(`timeout`,()=>{c({event:`proxy-upgrade-upstream-connect-timeout`})}),o.on(`error`,e=>c({event:`proxy-upgrade-upstream-error`,err:e})),t.on(`error`,e=>c({event:`proxy-upgrade-client-error`,err:e})),o.once(`close`,()=>c()),t.once(`close`,()=>c())}const Ki=[`connection`,`keep-alive`,`proxy-authenticate`,`proxy-authorization`,`te`,`trailer`,`transfer-encoding`,`upgrade`,`cookie`,`set-cookie`];async function qi(e){let t=e.upstreamTimeoutMs??Vi,n=new Set,r=Ne((n,r)=>{Hi(n,r)||Yi(n,r,e.upstreamHost,e.upstreamPort,t)});r.on(`upgrade`,(t,r,i)=>{Wi(t,r)||Gi(t,r,i,e.upstreamHost,e.upstreamPort,n)}),await new Promise((t,n)=>{let i=e=>n(e);r.once(`error`,i),r.listen(e.listenPort,e.host,()=>{r.off(`error`,i),t()})});let i=r.address();return{httpServer:r,port:typeof i==`object`&&i?i.port:e.listenPort,close:()=>new Promise(e=>{for(let e of n)try{e.destroy()}catch{}n.clear(),r.close(()=>e()),r.closeIdleConnections()})}}function Ji(e,t,n){Yi(e,t,n.upstreamHost,n.upstreamPort,n.upstreamTimeoutMs??Vi)}function Yi(e,t,n,r,i){let a={...e.headers};delete a.host;for(let e of Ki)delete a[e];e.setTimeout(Ui,()=>{if(t.headersSent)try{t.end()}catch{}else try{Bi(t,408,`urn:ok:error:request-timeout`,`Proxy request exceeded the per-request deadline.`,`Slow-loris-class: client did not finish within ${Ui/1e3}s.`)}catch{}try{e.socket?.destroy()}catch{}});let o=Pe({host:n,port:r,method:e.method,path:e.url,headers:{...a,host:`${n}:${r}`}},e=>{let n={...e.headers};for(let e of Ki)delete n[e];t.writeHead(e.statusCode??502,n),e.pipe(t),e.once(`error`,()=>{try{t.end()}catch{}})});i>0&&o.setTimeout(i,()=>{if(!t.headersSent)Bi(t,504,`urn:ok:error:gateway-timeout`,`Upstream did not respond before the gateway deadline.`,`Upstream timeout: ${i/1e3}s elapsed without a response.`);else try{t.end()}catch{}o.destroy()}),o.on(`error`,()=>{if(!t.headersSent)Bi(t,502,`urn:ok:error:collab-server-not-running`,`Collab server is unreachable.`,`Upstream connection failed or dropped before a response was received.`);else try{t.end()}catch{}}),e.on(`error`,()=>{o.destroy()}),e.pipe(o)}const Xi=39847,Zi=39848;async function Qi(e){await Promise.all(e.map(e=>new Promise(t=>{e.close(()=>t())})))}async function $i(e){let{existsSync:t}=await import(`node:fs`),{createServer:n}=await import(`node:http`),{resolve:i}=await import(`node:path`),{acquireUiLock:a,clearArmedPaneTarget:s,createAssetServeMiddleware:l,createContentFilter:f,readArmedPaneTarget:p,readServerLock:m,releaseUiLock:h,updateUiLockPort:g}=await import(`./dist-B3w6eOOV.mjs`),{default:_}=await import(`./build-gfyDk62R.mjs`),{resolveContentDir:v,resolveLockDir:y}=await import(`./dist-B3w6eOOV.mjs`),b=v(e.config,e.cwd),x=y(e.cwd);a(x,{port:0,worktreeRoot:e.cwd});let S=import.meta.dirname??new URL(`.`,import.meta.url).pathname,C=[i(S,`public`),i(S,`../../app/dist`),i(S,`../../../app/dist`)],w=e.assetDir??C.find(e=>t(e)),T=w?_(w,{single:!0,gzip:!0,etag:!0,dev:!0,extensions:[]}):null,E=t(b)?l({contentFilter:f({projectDir:e.cwd,contentDir:b}),contentSirv:_(b,{dotfiles:!1,dev:!0,extensions:[]}),inlineExtensions:o,assetExtensions:u,blocklistExtensions:r}):null,ee=e.port,D=null,O=(e,t)=>{let n=e.url?.split(`?`)[0];if(e.method===`GET`&&(n===`/`||n===``)){let e=p(x);if(e&&!/[\r\n]/.test(e)){s(x),t.statusCode=302,t.setHeader(`Location`,`/${e}`),t.setHeader(`Cache-Control`,`no-store`),t.end();return}}if((n===`/`||n===``)&&(e.url=`/index.html`),!(n?.startsWith(`/api/`)&&Hi(e,t))){if(n===`/api/config`&&e.method===`DELETE`){s(x),t.setHeader(`Cache-Control`,`no-store`),t.statusCode=204,t.end();return}if(n===`/api/config`&&(e.method===`GET`||e.method===`HEAD`)){D?.();let n=m(x),r=e.headers.host??`localhost:${ee}`,i=n&&n.port>0?`ws://${r}/collab`:null,a=p(x),o=JSON.stringify({collabUrl:i,previewUrl:null,port:ee,paneTarget:a});t.setHeader(`Content-Type`,`application/json`),t.setHeader(`Cache-Control`,`no-store`),t.setHeader(`X-Content-Type-Options`,`nosniff`),t.statusCode=200,e.method===`HEAD`?t.end():t.end(o);return}if(n?.startsWith(`/api/`)){D?.();let r=m(x);if(!r||r.port<=0){Bi(t,503,`urn:ok:error:collab-server-not-running`,"Collab server not running. Start `ok start` or run `ok status`.",`Path: ${n}`);return}Ji(e,t,{upstreamHost:d,upstreamPort:r.port});return}if(T&&n?.startsWith(`/assets/`)){T(e,t,()=>{E?E(e,t,()=>ea(t)):ea(t)});return}if(E){E(e,t,()=>{T?T(e,t):ea(t)});return}if(T){T(e,t);return}ea(t)}},k=new Set,te=(e,t,n)=>{if(Wi(e,t))return;let r=e.url?.split(`?`)[0]??``;if(r!==`/collab`&&!r.startsWith(`/collab/`)){t.destroy();return}let i=m(x);if(!i||i.port<=0){console.warn(JSON.stringify({event:`ok-ui-upgrade-no-collab-lock`,url:r,reason:"server.lock missing or port unbound — is `ok start` running?"})),t.destroy();return}Gi(e,t,n,d,i.port,k)},ne=()=>{for(let e of k)try{e.destroy()}catch{}k.clear()},re=e.host===void 0?[`::1`,`127.0.0.1`]:[e.host],ie=[],A=e.port,ae=e=>e instanceof Error&&e.code===`EADDRINUSE`,oe=async()=>{await Promise.all(ie.splice(0).map(e=>new Promise(t=>{try{e.close(()=>t())}catch{t()}})))},se=async e=>{A=e;for(let e of re){let t=n(O);t.on(`upgrade`,te),ie.push(t),await new Promise((n,r)=>{let i=e=>r(e);t.once(`error`,i),t.listen(A,e,()=>{t.off(`error`,i);let e=t.address();typeof e==`object`&&e&&(A=e.port),n()})})}};try{try{await se(e.port)}catch(t){if(e.fallbackToKernel===!0&&ae(t))await oe(),await se(0);else throw t}}catch(e){await oe();try{h(x)}catch{}throw e}let ce=A;ee=ce,g(x,ce);let le=e.scheduler??c,ue=e.safetyNetMs??432e5,j=null,M=!1,N=!1,P=()=>{M||(M=!0,j!==null&&(le.clearTimeout(j),j=null))},de=()=>{if(P(),!N){N=!0;try{h(x)}catch{}}},F=()=>{M||ue<=0||(j!==null&&(le.clearTimeout(j),j=null),j=le.setTimeout(()=>{j=null,console.warn(`[ui] safety-net (${ue}ms) reached — shutting down (D-025 backstop)`);try{e.onSafetyNet?.()}catch{}ne();for(let e of ie)try{e.close()}catch{}de()},ue))},fe=()=>{M||ue<=0||F()};return D=fe,F(),{httpServers:ie,port:ce,release:de,detachSafetyNet:P,nudgeSafetyNet:fe,drainUpgradeSockets:ne}}function ea(e){e.headersSent||e.writableEnded||e.destroyed||(e.setHeader(`X-Content-Type-Options`,`nosniff`),e.setHeader(`Cache-Control`,`no-store`),e.statusCode=404,e.end())}function ta(e,t){if(e!==void 0){let t=Number.parseInt(e,10);if(Number.isNaN(t)||t<0||t>65535)throw Error(`Invalid --port value '${e}'`);return{port:t,fallbackToKernel:!1}}if(t!==void 0&&t!==``){let e=Number.parseInt(t,10);if(Number.isNaN(e)||e<0||e>65535)throw Error(`Invalid PORT env value '${t}'`);return{port:e,fallbackToKernel:!1}}return{port:Xi,fallbackToKernel:!0}}async function na(e){let t=e.readLock??(async()=>{let{readUiLock:t}=await import(`./dist-B3w6eOOV.mjs`);return t(e.lockDir)}),n=await t();if(!n)throw Error(`UI lock collision reported but the lock disappeared before handling — retry acquiring.`);if(n.port===e.requestedPort&&n.port>0)return{mode:`already-running`,port:n.port};let r=n.port;if(r===0){let n=Date.now()+(e.pollDeadlineMs??2e3),i=e.pollIntervalMs??100;for(;Date.now()<n;){await new Promise(e=>{setTimeout(e,i)});let e=await t();if(e&&e.port>0){r=e.port;break}}if(r===0)throw Error("UI did not bind within 2s; run `ok clean`");if(r===e.requestedPort)return{mode:`already-running`,port:r}}return{mode:`proxy`,handle:await qi({listenPort:e.requestedPort,host:e.host,upstreamHost:`localhost`,upstreamPort:r}),upstreamPort:r}}function ra(e){return new te(`ui`).description(`Serve the OpenKnowledge React editor UI`).option(`-p, --port <port>`,`UI port (default: $PORT env or ${Xi}, kernel-allocated fallback if busy)`).option(`-H, --host <host>`,"UI host. Default: two-socket loopback bind (`[::1]` + `127.0.0.1`) so cross-family collisions fail loud. Pass an explicit host (e.g. `127.0.0.1`, `0.0.0.0`) to bind a single socket on that host.").action(async t=>{let{dim:n}=await import(`./colors-CmkIIbww.mjs`),{UiLockCollisionError:r}=await import(`./dist-B3w6eOOV.mjs`),{resolveLockDir:i}=await import(`./dist-B3w6eOOV.mjs`),a=e(),o=t.host,s;try{s=ta(t.port,process.env.PORT)}catch(e){console.error(e instanceof Error?e.message:String(e)),process.exitCode=1;return}let c=s.port;try{let e=await $i({config:a,cwd:process.cwd(),port:c,fallbackToKernel:s.fallbackToKernel,host:o}),t=o===void 0||o===`::`||o===`0.0.0.0`?`localhost`:o;console.log(`${n(`[ui]`)} listening on http://${t}:${e.port}`);let r=!1,i=t=>{if(r)return;r=!0,console.log(n(`\n[ui] Shutting down (${t})`)),e.detachSafetyNet();let i=()=>{try{e.release()}finally{process.exit(process.exitCode??0)}};e.drainUpgradeSockets(),Qi(e.httpServers).then(i,i),setTimeout(i,2e3).unref()};process.once(`SIGINT`,()=>i(`SIGINT`)),process.once(`SIGTERM`,()=>i(`SIGTERM`));return}catch(e){if(!(e instanceof r))throw e;let t=i(process.cwd()),a=o??`localhost`,s;try{s=await na({requestedPort:c,host:a,lockDir:t})}catch(e){console.error(e instanceof Error?e.message:String(e)),process.exit(1)}if(s.mode===`already-running`){if(console.log(`UI already running at http://${a}:${s.port}`),ia(process)){await new Promise(e=>{let t=t=>{console.log(n(`\n[ui-keepalive] Shutting down (${t})`)),e()};process.once(`SIGINT`,()=>t(`SIGINT`)),process.once(`SIGTERM`,()=>t(`SIGTERM`))});return}process.exit(0)}console.log(`UI running at http://${a}:${s.upstreamPort}; acting as HTTP proxy on port ${s.handle.port}`);let l=!1,u=e=>{l||(l=!0,console.log(n(`\n[ui-proxy] Shutting down (${e})`)),s.handle.close().finally(()=>process.exit(process.exitCode??0)),setTimeout(()=>process.exit(process.exitCode??0),2e3).unref())};process.once(`SIGINT`,()=>u(`SIGINT`)),process.once(`SIGTERM`,()=>u(`SIGTERM`))}})}function ia(e){let t=e.stdout.isTTY===!0,n=typeof e.env.PORT==`string`&&e.env.PORT!==``;return!t||n}const aa={allowTrailingComma:!0,disallowComments:!1};function oa(e,t){return e.error===1&&e.offset===0&&t.charCodeAt(0)===65279}function sa(e){let t=[],n=mr(e,t,aa);return t.some(t=>!oa(t,e))||!n||n.type!==`object`?null:n}function ca(e,t){let n=0;for(let r of e.children??[]){let e=r.children?.[0];e!==void 0&&hr(e)===t&&(n+=1)}return n}function la(e,t){S(e,`${JSON.stringify(t,null,2)}\n`)}function ua(e,t){let n=hi(t);S(e,n.endsWith(`
|
|
636
636
|
`)?n:`${n}\n`)}const da=10*1024*1024;function fa(e,t){if(e===t)return!0;if(Array.isArray(e)||Array.isArray(t))return!Array.isArray(e)||!Array.isArray(t)||e.length!==t.length?!1:e.every((e,n)=>fa(e,t[n]));if(N(e)&&N(t)){let n=Object.keys(e);return n.length===Object.keys(t).length?n.every(n=>Object.hasOwn(t,n)&&fa(e[n],t[n])):!1}return!1}function pa(e){for(let t of e.split(`
|
|
637
637
|
`)){let e=t.trimStart();if(!(e.length===0||e.length===t.length))return t.charCodeAt(0)===9?{insertSpaces:!1,tabSize:1}:{insertSpaces:!0,tabSize:t.length-e.length}}return{insertSpaces:!0,tabSize:2}}function ma(e,t,n){return t===void 0?[e,n]:[e,t,n]}function ha(e,t,n,r){let i={[n]:r};return{[e]:t===void 0?i:{[t]:i}}}function ga(e,t,n){let r=e[t];return n===void 0?r:N(r)?r[n]:void 0}function _a(e,t,n,r,i){if(!H(e))return la(e,ha(t,i,n,r)),{kind:`written`};let a;try{a=U(e,`utf-8`)}catch(e){return $(`json config read failed`,e),{kind:`declined`,reason:`unparseable`}}if(a.trim()===``)return la(e,ha(t,i,n,r)),{kind:`written`};if(Buffer.byteLength(a,`utf-8`)>da)return{kind:`declined`,reason:`oversize`};let o=sa(a);if(!o)return{kind:`declined`,reason:`unparseable`};if(ca(o,t)>1)return{kind:`declined`,reason:`duplicate-container`};let s=ga(hr(o),t,i),c=N(s)?s[n]:void 0,l=c!==void 0;if(l&&fa(c,r))return{kind:`overwritten`};let u=a.charCodeAt(0)===65279,d=u?a.slice(1):a,f=d.includes(`\r
|
|
638
638
|
`)?`\r
|
|
@@ -685,6 +685,6 @@ UIPORT="\${PORT:-${Zi}}"
|
|
|
685
685
|
unset PORT
|
|
686
686
|
exec node "${ie()}" start --ui-port "$UIPORT"`,i=t.platformName??process.platform,a=t.mode===`dev`?{name:Aa,runtimeExecutable:`/bin/sh`,runtimeArgs:[`-l`,`-c`,r()],port:Zi,autoPort:!0}:i===`win32`?{name:Aa,runtimeExecutable:`powershell`,runtimeArgs:[`-NoProfile`,`-NonInteractive`,`-Command`,Fa],port:Zi,autoPort:!0}:{name:Aa,runtimeExecutable:`/bin/sh`,runtimeArgs:[`-l`,`-c`,Na],port:Zi,autoPort:!0};try{if(j(n,e),!H(n))return Ce(R(n),{recursive:!0}),De(n,`${JSON.stringify({version:ka,configurations:[a]},null,2)}\n`,`utf-8`),{action:`created`,configPath:n};let t=U(n,`utf-8`).trim(),r=t?JSON.parse(t):{};if(!N(r))return{action:`failed`,configPath:n,error:`launch.json root is not an object`};let i=Array.isArray(r.configurations)?r.configurations:[],o=i.findIndex(e=>N(e)&&e.name===`open-knowledge-ui`);o>=0?i[o]=a:i.push(a);let s={...r,version:r.version??ka,configurations:i};return De(n,`${JSON.stringify(s,null,2)}\n`,`utf-8`),{action:o>=0?`merged`:`created`,configPath:n}}catch(e){return{action:`failed`,configPath:n,error:e instanceof Error?e.message:String(e)}}}function La(e,t,n){try{return H(e.detectPath?.(t,n)??R(e.configPath(t,n)))}catch{return!1}}function Ra(e,t,n,r,i){let a=e.serverName(t),o;try{o=i??e.configPath(t,r)}catch(t){return{editorId:e.id,label:e.label,action:`failed`,configPath:``,serverName:a,error:t instanceof Error?t.message:String(t)}}let s=!n.skipAvailabilityCheck||e.offerOnlyWhenDetected===!0;if(!i&&s&&!La(e,t,r))return{editorId:e.id,label:e.label,action:`skipped-missing`,configPath:o,serverName:a};if(i!==void 0)try{j(o,t)}catch(t){return{editorId:e.id,label:e.label,action:`failed`,configPath:o,serverName:a,error:t instanceof Error?t.message:String(t),configScope:`project`}}if(e.format===`file`)return Ba(e,o,a,n,{isProjectScope:i!==void 0});let c;try{c=e.buildEntry(t,n)}catch(t){return{editorId:e.id,label:e.label,action:`failed`,configPath:o,serverName:a,error:t instanceof Error?t.message:String(t),...i===void 0?{}:{configScope:`project`}}}try{Ce(R(o),{recursive:!0})}catch(t){return{editorId:e.id,label:e.label,action:`failed`,configPath:o,serverName:a,error:t instanceof Error?t.message:String(t),...i===void 0?{}:{configScope:`project`}}}let l={action:`written`},u;try{O(`${o}.lock`,()=>{let t=ji(o).writePath;if(Ce(R(t),{recursive:!0}),e.format===`toml`){let n=va(zi(),t,e.topLevelKey,a,c);l.action=n.kind,n.kind===`declined`&&(l.declineReason=n.reason);return}let n=_a(t,e.topLevelKey,a,c,e.serverMapSubKey);l.action=n.kind,n.kind===`declined`&&(l.declineReason=n.reason)},{onWarn:(e,t)=>process.stderr.write(`[ok] ${e} ${JSON.stringify(t)}\n`)})}catch(e){u=e instanceof Error?e:Error(String(e))}return u?{editorId:e.id,label:e.label,action:`failed`,configPath:o,serverName:a,error:u.message,...i===void 0?{}:{configScope:`project`}}:l.action===`declined`?{editorId:e.id,label:e.label,action:`declined`,configPath:o,serverName:a,declineReason:l.declineReason,...i===void 0?{}:{configScope:`project`}}:{editorId:e.id,label:e.label,action:l.action,configPath:o,serverName:a,...i===void 0?{}:{configScope:`project`}}}const za={pi:bi};function Ba(e,t,n,r,i){let a=i.isProjectScope?{configScope:`project`}:{},o=r=>({editorId:e.id,label:e.label,action:`failed`,configPath:t,serverName:n,error:r instanceof Error?r.message:String(r),...a}),s=za[e.id];if(!s)return o(Error(`No managed-file builder registered for editor "${e.id}" (format: 'file' targets need a MANAGED_FILE_BUILDERS entry).`));let c;try{c=s(r)}catch(e){return o(e)}try{Ce(R(t),{recursive:!0})}catch(e){return o(e)}let l={action:`written`};try{O(`${t}.lock`,()=>{let e=null;try{e=U(t,`utf-8`)}catch{e=null}if(e===c){l.action=`overwritten`;return}S(t,c,e===null?void 0:{mode:xr(t)}),l.action=e===null?`written`:`overwritten`},{onWarn:(e,t)=>process.stderr.write(`[ok] ${e} ${JSON.stringify(t)}\n`)})}catch(e){return o(e)}return{editorId:e.id,label:e.label,action:l.action,configPath:t,serverName:n,...a}}function Va(e,t){let n=e.projectConfigPath?.(t);if(!(!n||!H(n)))return{editorId:e.id,label:e.label,path:n}}async function Ha(e){let t=M(e.editors).filter(e=>e.scope===`global`),n={mode:`published`,skipAvailabilityCheck:!0};return t.map(t=>Ra(t,``,n,e.home))}function Ua(e,t,n,r){let i=Ga(e,t,n,r);return i.kind===`present`?i.entry:null}function Wa(e,t,n,r){let i=ga(e,t,r);if(!N(i))return{kind:`no-entry`};let a=i[n];return N(a)?{kind:`present`,entry:a}:{kind:`no-entry`}}function Ga(e,t,n,r){let i;try{i=r??e.configPath(t,n)}catch{return{kind:`absent`}}if(!H(i))return{kind:`absent`};try{if(Ee(i).size>da)return{kind:`decline`,reason:`oversize`}}catch{return{kind:`decline`,reason:`unparseable`}}let a;try{a=U(i,`utf-8`)}catch{return{kind:`decline`,reason:`unparseable`}}if(a.trim()===``)return{kind:`absent`};if(e.format===`file`)return{kind:`present`,entry:yi(a)};let o=e.serverName(t);if(e.format===`toml`){let t;try{t=zi().parseToObject(a)}catch{return{kind:`decline`,reason:`unparseable`}}return Wa(t,e.topLevelKey,o,e.serverMapSubKey)}let s=sa(a);return s?ca(s,e.topLevelKey)>1?{kind:`decline`,reason:`duplicate-container`}:Wa(hr(s),e.topLevelKey,o,e.serverMapSubKey):{kind:`decline`,reason:`unparseable`}}async function Ka(e={}){let t=ve(e.cwd??process.cwd()),n=Ci(t,{homeDir:e.home}),r=n.projectRoot,i=!H(z(r,`.ok`)),a=n.gitRootPromoted?B(r,t):void 0,o=e.contentDir===void 0?n.defaultContentDir:Da(e.contentDir,r,t);n.ancestorPromoted?console.log(`[ok] Opened existing project at ${r}`):n.gitRootPromoted&&i&&o===`.`&&process.stderr.write(`${I(`[ok] Content scope promoted to the git repo root: ${r}`)}\n Ran in ${a}/, but .ok/ lives at the git root (one .ok/ per git repo),\n so the whole repo is now the content scope. To narrow it, re-run with\n \`ok init --content-dir .\`, or set content.dir: ${a} in .ok/config.yml.\n`);let s={mode:e.devMcp?`dev`:`published`},c=await ee(r),l;try{l=m(r,{contentDir:o})}catch(t){let i=A.claude.configPath(r,e.home);return{projectRoot:r,contentCreated:[],contentUpdated:[],contentSkipped:[],editors:[],projectSkills:[],legacyProjectConfigs:[],didGitInit:c.didInit,rootGitignoreCreated:!1,gitRootPromoted:n.gitRootPromoted,promotedFromDir:a,contentDirRequested:e.contentDir,contentScaffoldFailed:!0,mcpAction:`failed`,mcpPath:i,mcpError:`Content scaffolding failed: ${t instanceof Error?t.message:String(t)}`,sharing:{kind:`no-exclude`,reason:`no-git`,localOnlyRequested:!1}}}let u=l.created.includes(ne),d=!1;if(c.didInit)try{d=y(r)===`created`}catch(e){console.warn(`[ok] Skipping .gitignore seed at ${r}: ${e instanceof Error?e.message:String(e)}`)}let f=await Sa({scope:e.scope,mcp:e.mcp,isTTY:e.isTTY,promptFn:e.promptFn}),p=e.editors??Qa(r,e.home),h=e.editors??ue.filter(e=>A[e].projectConfigPath!==void 0),g=M(p),_=M(h),b=e.mcp===!1||f===null,S=Array.from(new Map([...g,...b?[]:_].map(e=>[e.id,e])).values()),w=g.filter(t=>La(t,r,e.home)),T=[],D=[],O=new Set;for(let t of S){if(b){let n=``;try{n=t.configPath(r,e.home)}catch{}T.push({editorId:t.id,label:t.label,action:`skipped-flag`,configPath:n,serverName:t.serverName(r)});continue}if(ya(f)&&g.includes(t)&&t.scope===`global`&&T.push(Ra(t,r,s,e.home)),ba(f)&&_.includes(t)&&t.projectConfigPath){let n=t.projectConfigPath(r),i=Ra(t,r,s,e.home,n);T.push(i),(i.action===`written`||i.action===`overwritten`)&&O.add(n)}}let k=new Set;for(let e of _){let t=e.projectSkillPath?.(r);!t||k.has(t)||(k.add(t),D.push(se(e,r)))}let te=!b&&f!==null&&ba(f)?_.filter(e=>!e.projectConfigPath).map(e=>e.label):void 0,ie=b?[]:w.map(e=>Va(e,r)).filter(e=>e!==void 0).filter(e=>!O.has(e.path)),ae=w.some(e=>e.id===`claude`)&&!b?Ia(r,s):void 0,oe=e.installUserSkill??v,ce=e.home??xe(),le=Ea(e.skills),j=!1,N=!1,P=!1,de=!1;for(let t of E){let n=le.has(t);if(await C(ce,x[t],n).catch(()=>{}),n){j=!0;let n=await oe({home:e.home,bundleId:t,force:!0});n===`installed`?N=!0:n===`failed`?P=!0:de=!0}else try{re(ce,t)}catch{}}let F=P?`failed`:N?`installed`:j&&de?`skip-current`:`declined`,fe=b?`skipped-flag`:`skipped-missing`,L=T.find(e=>e.editorId===`claude`)??T[0]??{action:fe,configPath:A.claude.configPath(r,e.home)},pe=await qa({projectRoot:r,desiredMode:await wa({sharing:e.sharing,projectRoot:r,isTTY:e.isTTY,promptFn:e.sharingPromptFn}),explicitFlag:e.sharing});return{projectRoot:r,contentCreated:l.created,contentUpdated:l.updated,contentSkipped:l.skipped,editors:T,projectSkills:D,legacyProjectConfigs:ie,launchJson:ae,skillInstall:F,didGitInit:c.didInit,rootGitignoreCreated:d,gitRootPromoted:n.gitRootPromoted,promotedFromDir:a,contentDir:u?o:void 0,contentDirRequested:e.contentDir,contentScaffoldFailed:!1,mcpAction:L.action,mcpPath:L.configPath,mcpError:`error`in L?L.error:void 0,projectScopeUnsupportedLabels:te,sharing:pe}}async function qa(e){let{projectRoot:t,desiredMode:n,explicitFlag:r}=e,i=An(t);if(i===`no-git`)return{kind:`no-exclude`,reason:`no-git`,localOnlyRequested:r===`local-only`};let a=Dn(t);if(n===`local-only`){let e=On(t,a);if(e.kind===`refused-tracked`){let t=e;return{kind:`refused-tracked`,tracked:t.tracked,remediation:t.remediation}}return e.kind===`no-exclude`?{kind:`no-exclude`,reason:e.reason,localOnlyRequested:r===`local-only`}:Ja(t,e,`add`)}if(i===`shared`)return{kind:`applied`,mode:`shared`,action:`noop`,appended:[],alreadyPresent:[],removed:[]};let o=kn(t,a);return o.kind===`no-exclude`?{kind:`no-exclude`,reason:o.reason,localOnlyRequested:!1}:Ja(t,o,`remove`)}function Ja(e,t,n){let r=An(e);return n===`add`?{kind:`applied`,mode:r,action:t.appended.length>0?`added`:`noop`,appended:t.appended,alreadyPresent:t.alreadyPresent,removed:[]}:{kind:`applied`,mode:r,action:`removed`,appended:[],alreadyPresent:[],removed:t.removed}}function Ya(e){switch(e){case`oversize`:return`config too large to edit safely`;case`duplicate-container`:return`duplicate server block`;case`no-native-writer`:return`no format-preserving writer available`;default:return`config not readable`}}function Xa(e,t){let n=[],r=e.editors.some(e=>e.action===`written`||e.action===`overwritten`),i=e.editors.some(e=>e.action===`failed`)||e.projectSkills.some(e=>e.action===`failed`),a=e.editors.length>0&&e.editors.every(e=>e.action===`skipped-flag`),o=e.editors.length>0&&e.editors.every(e=>e.action===`skipped-missing`),s=e=>{let n=e.configPath.startsWith(t)?B(t,e.configPath):e.configPath;switch(e.action){case`created`:return` app preview server ${n} configured for Claude Code Desktop embedded browser`;case`merged`:return` app preview server ${n} updated for Claude Code Desktop embedded browser`;case`failed`:return` app preview server ${n} FAILED: ${e.error}`}};e.didGitInit&&n.push(`Initialized git repo at ${t}/.git/ (default branch: main)`),e.rootGitignoreCreated&&n.push(`Seeded .gitignore at ${t}/.gitignore (.DS_Store)`);let c=z(t,`.ok`);if(e.contentCreated.length>0||e.contentUpdated.length>0?(n.push(L(`Content scaffolded at ${c}/`)),e.contentCreated.length>0&&n.push(` Created: ${e.contentCreated.join(`, `)}`),e.contentUpdated.length>0&&n.push(` Updated: ${e.contentUpdated.join(`, `)}`)):n.push(L(`Content already present at ${c}/`)),e.contentSkipped.length>0&&n.push(` Skipped (already exist): ${e.contentSkipped.join(`, `)}`),n.push(``),e.mcpError&&e.editors.length===0)n.push(`Warning: ${e.mcpError}`);else if(e.editors.length===0)if(n.push(L(`MCP server configuration:`)),e.mcpAction===`skipped-flag`)n.push(` MCP config not written — use without --no-mcp to configure editors`);else if(e.projectScopeUnsupportedLabels&&e.projectScopeUnsupportedLabels.length>0){let t=e.projectScopeUnsupportedLabels.join(`, `),r=e.projectScopeUnsupportedLabels.length===1?`does`:`do`;n.push(` ${t} ${r} not support project-level config; skipped`)}else n.push(` No supported editor config directories detected; skipped MCP registration`);else if(a)n.push(`MCP config not written — use without --no-mcp to configure editors`);else if(o)n.push(L(`MCP server configuration:`)),n.push(` No supported editor config directories detected; skipped MCP registration`);else{n.push(L(`MCP server configuration:`));for(let r of e.editors){let i=r.configPath.startsWith(t)?B(t,r.configPath):r.configPath.replace(/^\/Users\/[^/]+/,`~`),a=r.serverName===`open-knowledge`?``:` (${r.serverName})`,o=r.configScope===`project`?` (project)`:``,c=`${r.label}${o}`,l=` `.repeat(Math.max(1,20-c.length)),u=r.editorId===`claude-desktop`&&(r.action===`written`||r.action===`overwritten`)?` — quit and relaunch Claude Desktop to activate`:``;switch(r.action){case`written`:n.push(` ${c}${l}${i} ${F(`registered`)}${a}${u}`);break;case`overwritten`:n.push(` ${c}${l}${i} ${F(`updated`)}${a}${u}`);break;case`skipped-missing`:n.push(` ${c}${l}${i} config root missing; skipped`);break;case`failed`:n.push(` ${c}${l}${i} ${fe(`FAILED`)}: ${r.error}`);break;case`declined`:n.push(` ${c}${l}${i} left unchanged (${Ya(r.declineReason)})`);break;case`skipped-flag`:break;default:r.action}r.editorId===`claude`&&e.launchJson&&n.push(s(e.launchJson))}if(e.projectScopeUnsupportedLabels&&e.projectScopeUnsupportedLabels.length>0){let t=e.projectScopeUnsupportedLabels.join(`, `),r=e.projectScopeUnsupportedLabels.length===1?`does`:`do`;n.push(` ${t} ${r} not support project-level config; skipped`)}}if(e.projectSkills.length>0){n.push(``),n.push(L(`Project-local skills:`));for(let r of e.projectSkills){let e=`${r.label} (project)`,i=` `.repeat(Math.max(1,20-e.length)),a=r.path?B(t,r.path):``;switch(r.action){case`written`:n.push(` ${e}${i}${a} ${F(`installed`)}`);break;case`overwritten`:n.push(` ${e}${i}${a} ${F(`updated`)}`);break;case`skipped-unsupported`:n.push(` ${e}${i}no known project skill surface; skipped`);break;case`failed`:n.push(` ${e}${i}${a} ${fe(`FAILED`)}: ${r.error}`);break}}}if(i&&(n.push(``),n.push(`For failed editors, add the MCP server entry or project skill manually. See:`),n.push(` https://github.com/inkeep/open-knowledge#mcp-setup`)),e.legacyProjectConfigs.length>0){n.push(``),n.push(`Project MCP configs found:`);for(let r of e.legacyProjectConfigs)n.push(` ${r.label} ${B(t,r.path)}`);n.push(` These project-local files may override the global config. Remove them if you want fully user-scoped MCP setup in this project.`)}if(e.skillInstall)switch(n.push(``),n.push(L(`User-global skill:`)),e.skillInstall){case`installed`:n.push(` open-knowledge ${F(`installed to detected agent hosts`)} via \`npx skills\``);break;case`skip-current`:n.push(` open-knowledge ${F(`already installed at current version`)}`);break;case`declined`:n.push(` open-knowledge ${de(`skipped (opted out via --no-skills)`)}`);break;case`failed`:n.push(` ${I(`open-knowledge install failed — MCP still configured; run manually:`)}`),n.push(` ${I(` npx skills@~1.5.0 add <bundled-path> --agent '*' -g -y --copy`)}`);break}if(e.contentDirRequested!==void 0&&e.contentDir===void 0&&!e.contentScaffoldFailed?(n.push(``),n.push(I(`⚠ --content-dir ${e.contentDirRequested} ignored — .ok/config.yml already exists`)),n.push(` Edit .ok/config.yml → content.dir directly to change the content scope.`)):e.contentDir!==void 0&&e.contentDir!==`.`?(n.push(``),n.push(`Content scope set to ${e.contentDir}/ (content.dir in .ok/config.yml).`)):e.gitRootPromoted&&e.contentDir===`.`&&e.contentDirRequested===void 0&&(n.push(``),n.push(I(`⚠ Content scope promoted to the git repo root`)),n.push(` .ok/ was initialized at ${t} because it contains a .git folder (one .ok/ per git repo),`),n.push(` not the sub-folder you ran \`ok init\` in${e.promotedFromDir?` (${e.promotedFromDir})`:``}. The whole repo is now the content scope.`),e.promotedFromDir&&(n.push(" To scope to just that sub-folder, re-run `ok init --content-dir .` from there, or set"),n.push(` content.dir: ${e.promotedFromDir} in .ok/config.yml.`))),e.preview?(n.push(``),n.push(pe(e.preview,t))):e.previewWarning&&(n.push(``),n.push(`Content preview unavailable: ${e.previewWarning}`)),n.push(``),n.push(...to(e.sharing,t)),r){let t=new Set,r=e.editors.filter(e=>e.action===`written`||e.action===`overwritten`).filter(e=>!t.has(e.editorId)&&t.add(e.editorId)).map(e=>e.label);n.push(``),n.push(`${F(`✓`)} ${L(`Next steps:`)}`),n.push(` 1. Open your editor (${P(r.join(` / `))})`),n.push(` 2. Approve the MCP server when prompted`),n.push(` 3. (Optional) scaffold the starter knowledge-base structure:`),n.push(` - ${P(`ok seed`)} — empty repo, Karpathy 3-layer`),n.push(` - ${P(`mcp__open-knowledge__discover`)} — existing repo, extract conventions`),n.push(` 4. Use the MCP workflow tools as you build the wiki:`),n.push(` - ${P(`mcp__open-knowledge__ingest`)} — capture an external source`),n.push(` - ${P(`mcp__open-knowledge__research`)} — gather sources and write findings`),n.push(` - ${P(`mcp__open-knowledge__consolidate`)} — promote research to canonical articles`)}return n.join(`
|
|
687
687
|
`)}function Za(e,t){return{projectRoot:e.projectRoot,gitRootPromoted:e.gitRootPromoted,promotedFromDir:e.promotedFromDir??null,contentDir:t.contentDir,contentDirRequested:e.contentDirRequested??null,contentDirApplied:e.contentDir!==void 0,contentFileCount:t.contentFileCount,previewError:e.previewWarning??null,didGitInit:e.didGitInit,mcpAction:e.mcpAction,editors:e.editors.map(e=>({editorId:e.editorId,label:e.label,action:e.action,configPath:e.configPath,scope:e.configScope===`project`?`project`:`user`}))}}function Qa(e,t){let n=[];for(let r of ue)La(A[r],e,t)&&n.push(r);return n}function $a(){let e={log:console.log,info:console.info,debug:console.debug},t=(...e)=>{process.stderr.write(`${e.map(e=>typeof e==`string`?e:ke(e)).join(` `)}\n`)};return console.log=t,console.info=t,console.debug=t,()=>{console.log=e.log,console.info=e.info,console.debug=e.debug}}function eo(){return new te(`init`).description(`Scaffold .ok/ in the current directory and register the MCP server for your editor(s)`).option(`--mcp`,`Register the MCP server for selected editors (default: true)`,!0).option(`--no-mcp`,`Scaffold the .ok/ directory but do not touch MCP config`).option(`--dev-mcp`,`Register a local dev MCP entry using node + packages/cli/dist/cli.mjs with debug logging`).option(`--content-dir <dir>`,`Limit content to <dir> instead of the whole project. <dir> is interpreted relative to your current directory (e.g. "." = the folder you run the command in), then saved to .ok/config.yml as content.dir.`).option(`--json`,`Emit a structured JSON summary to stdout (diagnostics stay on stderr)`).option(`--skills <ids>`,`Install only the named user-global skill bundles (comma list: discovery,write-skill)`).option(`--no-skills`,`Do not install any user-global skill bundles`).addOption(new k(`--scope <scope>`,`Write MCP config at user level, project level, or both`).choices([`user`,`project`,`both`])).addOption(new k(`--shared`,`Commit OK config alongside content (the default for fresh repos)`).conflicts(`localOnly`)).addOption(new k(`--local-only`,`Keep OK config out of git via .git/info/exclude (per-clone, not committed)`).conflicts(`shared`)).action(async e=>{let t=process.cwd(),n=e.shared?`shared`:e.localOnly?`local-only`:void 0,r=e.json?$a():null;try{let r;try{r=await Ka({cwd:t,mcp:e.mcp,devMcp:e.devMcp,scope:e.scope,sharing:n,contentDir:e.contentDir,skills:e.skills})}catch(e){if(e instanceof Ta){process.stderr.write(`${e.message}\n`),process.exitCode=64;return}if(e instanceof p||e instanceof g){process.stderr.write(`${e.message}\n`),process.exitCode=78;return}if(e instanceof h){process.stderr.write(`open-knowledge could not initialize a git repo for this project. Re-run, or run 'git init' yourself in the project folder.
|
|
688
|
-
`),e.stderr&&process.stderr.write(`${e.stderr.trim()}\n`),process.exitCode=1;return}throw e}let i=r.contentDir??`.`,a=null,{loadConfig:o}=await import(`./loader-
|
|
688
|
+
`),e.stderr&&process.stderr.write(`${e.stderr.trim()}\n`),process.exitCode=1;return}throw e}let i=r.contentDir??`.`,a=null,{loadConfig:o}=await import(`./loader-LMMChOMd.mjs`),{resolveContentDir:s}=await import(`./dist-B3w6eOOV.mjs`),c;try{c=o(r.projectRoot).config,i=c.content.dir}catch(e){r.previewWarning=e instanceof Error?e.message:String(e)}if(c)try{let{previewContent:e}=await import(`./preview-CP53jEdN.mjs`),t=s(c,r.projectRoot);r.preview=e({projectDir:r.projectRoot,contentDir:t}),a=r.preview.totalCount}catch(e){r.previewWarning=e instanceof Error?e.message:String(e)}e.json?process.stdout.write(`${JSON.stringify(Za(r,{contentDir:i,contentFileCount:a}),null,2)}\n`):process.stdout.write(`${Xa(r,r.projectRoot)}\n`),(r.editors.some(e=>e.action===`failed`)||r.mcpAction===`failed`)&&(process.exitCode=1)}finally{r?.()}})}function to(e,t){let n=[];switch(e.kind){case`applied`:return n.push(L(`Sharing mode:`)),e.mode===`local-only`?e.action===`added`?n.push(` ${F(`local-only`)} — appended ${e.appended.length} path(s) to ${L(`${t}/.git/info/exclude`)} (per-clone, not committed).`):e.action===`noop`&&e.alreadyPresent.length>0?n.push(` ${F(`local-only`)} — already excluded; nothing to do.`):n.push(` ${F(`local-only`)}`):e.action===`removed`?n.push(` ${F(`shared`)} — removed OK paths from ${L(`${t}/.git/info/exclude`)}; commit the files to share with teammates.`):n.push(` ${F(`shared`)} — OK config will be committed alongside content.`),n;case`refused-tracked`:n.push(I(`Sharing mode: switch to local-only deferred`));for(let t of e.remediation.split(`
|
|
689
689
|
`))n.push(t.length>0?` ${t}`:``);return n.push(` Re-run ${P(`ok config-sharing unshare`)} after resolving to complete the switch.`),n;case`no-exclude`:if(e.localOnlyRequested)n.push(I(`Sharing mode: --local-only requested but no git repo found — option ignored`)),n.push(` Run ${P(`git init`)} (or open this folder via OK Desktop, which can scaffold a repo) and then ${P(`ok config-sharing unshare`)}.`);else if(e.reason===`no-git`)return[];else n.push(I(`Sharing mode unavailable: ${e.reason}.`));return n}}export{Ar as A,Mn as B,ma as C,zi as D,ra as E,mr as F,xt as G,kn as H,On as I,K as J,vt as K,Nn as L,br as M,Sr as N,Ci as O,hr as P,jn as R,Ia as S,Ha as T,En as U,An as V,pn as W,Ge as Y,Ea as _,Na as a,wa as b,za as c,Ga as d,Qa as f,Ua as g,eo as h,Ma as i,xr as j,vi as k,qa as l,to as m,Aa as n,Pa as o,Xa as p,_t as q,ja as r,Fa as s,Ta as t,Za as u,Sa as v,Ra as w,Ka as x,Da as y,Dn as z};
|
|
690
|
-
//# sourceMappingURL=init-
|
|
690
|
+
//# sourceMappingURL=init-gfjsyIYB.mjs.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{Ko as e,Xa as t,Za as n,to as r}from"./server-lock-iLcBw_q0-pnLGEjec.mjs";import{_ as i,_a as a,va as o}from"./dist-
|
|
1
|
+
import{Ko as e,Xa as t,Za as n,to as r}from"./server-lock-iLcBw_q0-pnLGEjec.mjs";import{_ as i,_a as a,va as o}from"./dist-AMcKbNor.mjs";import{t as s}from"./constants-Br0O5zjA.mjs";import{t as c}from"./is-object-Cg453afR.mjs";import{resolve as l}from"node:path";import{existsSync as u,readFileSync as d}from"node:fs";import{realpath as f}from"node:fs/promises";async function p(e){let t=l(e);try{return await f(t)}catch(e){if(e.code!==`ENOENT`){let n=e instanceof Error?e.message:String(e);console.warn(`[normalize-cwd] realpath failed for ${t}: ${n}`)}return t}}var m=e();function h(e,t){let n={...e};for(let r of Object.keys(t)){let i=e[r],a=t[r];c(a)&&c(i)?n[r]=h(i,a):a!==void 0&&(n[r]=a)}return n}function g(e){if(!u(e))return{value:null,path:e,source:null,doc:null};let t;try{t=d(e,`utf-8`)}catch(t){return console.warn(`[config] Failed to read ${e}: ${t instanceof Error?t.message:t}`),{value:null,path:e,source:null,doc:null}}let n=(0,m.parseDocument)(t);if(n.errors.length>0)return console.warn(`[config] Failed to parse ${e}: ${n.errors.map(e=>e.message).join(`; `)}`),{value:null,path:e,source:t,doc:null};let r=n.toJSON();return c(r)?{value:r,path:e,source:t,doc:n}:{value:null,path:e,source:t,doc:n}}function _(e,t){return e.map(e=>{let n=e.path.map(e=>typeof e==`symbol`?String(e):e),i={path:n,message:e.message,issueCode:e.code};if(t.doc!==null&&t.source!==null){let e=r({file:t.path,source:t.source,doc:t.doc,path:n});if(e!==void 0)return{...i,source:e}}return i})}function v(e){let r=e??process.cwd(),c=[],u=o(`user`,r),d=a({absPath:u}),f={};d.valid&&d.source!==void 0?(f=h(f,d.value),c.push(u)):d.valid;let p=l(r,`.ok`,s),m=g(p);if(m.value!==null){let e=t({value:m.value,file:m.path,source:m.source,doc:m.doc});if(e.length>0)throw Error(e.map(n).join(`
|
|
2
2
|
|
|
3
3
|
`));f=h(f,m.value),c.push(p)}let v=i.safeParse(f);if(!v.success){let e={code:`SCHEMA_INVALID`,issues:_(v.error.issues,m)};throw Error(n(e))}return{config:v.data,sources:c}}function y(e){let t=e.cacheMs??1e3,n=e.loadConfigFn??v,r=new Map,i=new Map,a=p(e.startupCwd);return async o=>{let s=await p(o??e.startupCwd),c=Date.now(),l=r.get(s);if(l&&l.expiresAt>c)return l.config;let u=i.get(s);if(u)return await u;let d=(async()=>{if(s===await a)return r.set(s,{config:e.startupConfig,expiresAt:Date.now()+t}),e.startupConfig;let i=n(s).config;return r.set(s,{config:i,expiresAt:Date.now()+t}),i})();i.set(s,d);try{return await d}finally{i.delete(s)}}}export{v as n,y as t};
|
|
4
|
-
//# sourceMappingURL=loader-
|
|
4
|
+
//# sourceMappingURL=loader-DglCaNtQ.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{n as e}from"./loader-DglCaNtQ.mjs";export{e as loadConfig};
|
|
Binary file
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{ta as e}from"./dist-
|
|
2
|
-
//# sourceMappingURL=open-browser-
|
|
1
|
+
import{ta as e}from"./dist-AMcKbNor.mjs";import{execFile as t}from"node:child_process";const n=new Set([`http:`,`https:`]),r=/[\u0000-\u0020\u007F-\u009F"'`\\&|<>^()$;{}[\]*?!~]/;function i(e,t){console.warn(`Could not auto-open browser (${t}); visit ${e} manually`)}function a(a){let o;try{o=new URL(a)}catch{i(a,`invalid URL`);return}if(!n.has(o.protocol)){i(a,`unsupported scheme '${o.protocol}'`);return}if(r.test(a)){i(a,`URL contains unsafe characters`);return}t(process.platform===`darwin`?`open`:process.platform===`win32`?`cmd`:`xdg-open`,process.platform===`win32`?[`/c`,`start`,``,a]:[a],e({}),e=>{e&&console.warn(`Could not auto-open browser (${e.message}); visit ${a} manually`)})}export{a as openBrowser};
|
|
2
|
+
//# sourceMappingURL=open-browser-D9No9V7u.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{n as e,t}from"./preview-CVMx2nNA.mjs";export{t as formatPreviewBlock,e as previewContent};
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import{Yt as e}from"./dist-
|
|
1
|
+
import{Yt as e}from"./dist-AMcKbNor.mjs";import"./constants-Br0O5zjA.mjs";import{join as t,relative as n}from"node:path";import{existsSync as r,lstatSync as i,readdirSync as a,realpathSync as o,statSync as s}from"node:fs";function c(r){let{projectDir:c,contentDir:l,sampleCap:u=5}=r,d=[],f=[];try{i(l)}catch(e){return{totalCount:0,sample:[],contentDir:l,warnings:[`cannot access content directory ${l}: ${e instanceof Error?e.message:String(e)}`]}}let p;try{p=e({projectDir:c,contentDir:l})}catch(e){return{totalCount:0,sample:[],contentDir:l,warnings:[e instanceof Error?e.message:String(e)]}}function m(e){let r;try{r=a(e,{withFileTypes:!0})}catch(t){let r=t instanceof Error?t.message:String(t);d.push(`could not read directory ${n(l,e)||`.`}: ${r}`);return}for(let i of r){let r=t(e,i.name);if(i.isSymbolicLink()){let e;try{e=o(r)}catch(e){let t=e.code;t===`ENOENT`||t===`ELOOP`?d.push(`broken or cyclic symlink: ${n(l,r)}`):d.push(`cannot resolve symlink ${n(l,r)}: ${t??`unknown error`}`);continue}let t;try{t=s(e)}catch{continue}if(t.isDirectory()){let e=n(l,r);if(p.isDirExcluded(e))continue;m(r)}else if(t.isFile()){let e=n(l,r);if(p.isExcluded(e))continue;f.push(e)}}else if(i.isDirectory()){let e=n(l,r);if(p.isDirExcluded(e))continue;m(r)}else if(i.isFile()){let e=n(l,r);if(p.isExcluded(e))continue;f.push(e)}}}return m(l),{totalCount:f.length,sample:f.slice(0,u),contentDir:l,warnings:d}}function l(e,i){let a=[],o=n(i,e.contentDir),s=o===``?`./`:`./${o}`;if(a.push(`Content:`),a.push(` Found ${e.totalCount} markdown files in ${s}`),e.sample.length>0){let t=e.sample.join(`, `),n=e.totalCount>e.sample.length?`, …`:``;a.push(` Sample: ${t}${n}`)}if(e.warnings.length>0)for(let t of e.warnings)a.push(` Warning: ${t}`);return a.push(``),r(t(i,`.ok`,`config.yml`))?(a.push(` To adjust scope, add patterns to .okignore at the project root.`),a.push(` To change the content root, edit .ok/config.yml → content.dir.`)):a.push(" Run `open-knowledge init` to scaffold config + .okignore."),a.push(``),a.push(` Re-check anytime: open-knowledge preview`),a.join(`
|
|
2
2
|
`)}export{c as n,l as t};
|
|
3
|
-
//# sourceMappingURL=preview-
|
|
3
|
+
//# sourceMappingURL=preview-CVMx2nNA.mjs.map
|
package/dist/public/assets/{ShareReceiveDialog-Cr2ZBMyN.js → ShareReceiveDialog-BV-gfJdd.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./chunk-CFjPhJqf.js";import{n as t,r as n,t as r}from"./compiler-runtime-CVnuRdak.js";import{n as i,r as a}from"./dist-CQw2y-s3.js";import{Gt as o,Ut as s}from"./dist-w6PaZv_P.js";import{t as c}from"./button-cneJOVxD.js";import{t as ee}from"./loader-circle-B7Gv_Djz.js";import{n as l}from"./dist-CoyydoqN.js";import{a as te,c as u,i as d,n as f,o as ne,s as p,t as m}from"./dialog-DdHaoAGK.js";import{t as h}from"./desktop-bridge-types-NXCK8Pd7.js";import{a as re,i as g,n as _,o as v,r as ie,s as y}from"./receive-store-BI47GRKC.js";import{t as ae}from"./share-metadata-rows-ZQ-JmihW.js";var b=e(t(),1),x=r(),S=e=>({phase:`ready`,seed:e});function C(e){return e.phase===`ready`?{phase:`initializing`,seed:e.seed}:e}function w(e,t){return e.phase===`initializing`?t.ok?{phase:`opening`,seed:e.seed}:{phase:`error`,seed:e.seed,reason:t.reason,message:t.message}:e}function T(e,t){return e.phase===`opening`?t.ok?{phase:`done`,seed:e.seed}:{phase:`error`,seed:e.seed,reason:`network-error`,message:t.message}:e}function E(e){return e.phase===`done`||e.phase===`cancelled`||e.phase===`error`?e:{phase:`cancelled`,seed:e.seed}}var D=n();function O(e){return e!==null&&e.kind===`launcher-consent`}function k(e){return e!==null&&e.kind===`launcher-miss`}function A(e){let t=(0,x.c)(14),{bridge:n,cloneController:r,store:i}=e,a=i===void 0?_:i,o=(0,b.useSyncExternalStore)(a.subscribe,a.getSnapshot,M),[s,c]=(0,b.useState)(0),[ee,te]=(0,b.useState)(o);o!==ee&&(te(o),c(j));let u,d;t[0]!==o||t[1]!==a?(u=()=>{if(!o)return;let e=y(o);e&&(l.error(e.message),a.dismiss())},d=[o,a],t[0]=o,t[1]=a,t[2]=u,t[3]=d):(u=t[2],d=t[3]),(0,b.useEffect)(u,d);let f;t[4]===o?f=t[5]:(f=k(o)?o:null,t[4]=o,t[5]=f);let ne=f,p;t[6]===o?p=t[7]:(p=O(o)?o:null,t[6]=o,t[7]=p);let m=p??ne;if(!m)return null;let h;return t[8]!==m||t[9]!==n||t[10]!==r||t[11]!==s||t[12]!==a?(h=(0,D.jsx)(N,{payload:m,bridge:n,cloneController:r,store:a},s),t[8]=m,t[9]=n,t[10]=r,t[11]=s,t[12]=a,t[13]=h):h=t[13],h}function j(e){return e+1}function M(){return null}function N(e){let t=(0,x.c)(165),{payload:n,bridge:r,cloneController:_,store:y}=e,{_:C}=a(),[E,A]=(0,b.useState)(!1),[j,M]=(0,b.useState)(null),[N,ue]=(0,b.useState)(!1),[F,de]=(0,b.useState)(!1),[I,fe]=(0,b.useState)(null),[L,R]=(0,b.useState)(null),pe=(0,b.useRef)(!1),me=(0,b.useRef)(null),he,ge;t[0]===I?(he=t[1],ge=t[2]):(he=()=>{I&&me.current?.focus()},ge=[I],t[0]=I,t[1]=he,t[2]=ge),(0,b.useEffect)(he,ge);let _e;t[3]!==L||t[4]!==n?(_e=()=>{O(n)&&L===null&&(console.warn(`[receive] q1_hit=true selection=branch_match_non_ok candidate=${n.candidatePath}`),R(S({candidatePath:n.candidatePath,branch:n.share.branch,targetPath:h(n.share.target),targetKind:n.share.target.kind,parentProjectName:n.parentProjectName})))},t[3]=L,t[4]=n,t[5]=_e):_e=t[5];let ve;t[6]===n?ve=t[7]:(ve=[n],t[6]=n,t[7]=ve),(0,b.useEffect)(_e,ve);let ye;t[8]!==j||t[9]!==_||t[10]!==n?(ye=()=>{_&&k(n)&&j===null&&(pe.current||(pe.current=!0,ue(!0),_.getAuthStatus().then(e=>{M(e)}).catch(e=>{console.warn(`[receive] auth pre-flight probe failed`,e instanceof Error?e.message:e),M({authenticated:!1,host:`github.com`})}).finally(()=>{ue(!1)})))},t[8]=j,t[9]=_,t[10]=n,t[11]=ye):ye=t[11];let be;t[12]!==j||t[13]!==n?(be=[n,j],t[12]=j,t[13]=n,t[14]=be):be=t[14],(0,b.useEffect)(ye,be);let z=k(n)?n:null,xe=O(n)?n:null,B=z?.share??xe?.share??null,V,H,U,W,G,Se,K,q;if(t[15]!==C||t[16]!==N||t[17]!==r||t[18]!==_||t[19]!==F||t[20]!==L||t[21]!==z||t[22]!==E||t[23]!==B||t[24]!==y){K=Symbol.for(`react.early_return_sentinel`);bb0:{let e=B?{owner:B.owner,repo:B.repo}:null,n;t[33]!==C||t[34]!==B?.target.kind?(n=B?.target.kind===`folder`?C({id:`ugoTXs`}):C({id:`XH30C4`}),t[33]=C,t[34]=B?.target.kind,t[35]=n):n=t[35],q=n,U=async function(){if(!z||!e)return;if(console.log(re({q2_path:`clone`})),!_){l.info(C({id:`27XW26`}),{action:{label:C({id:`B3NAZC`}),onClick:()=>{r.navigator.open()}},duration:8e3});return}if(F)return;fe(null),de(!0);let t=ie(e),n;try{n=await _.runClone({url:t,branch:z.share.branch})}catch(e){let t=e;console.warn(`[receive] runClone threw unexpectedly`,t),de(!1),fe({detail:t instanceof Error?t.message:String(t)});return}if(de(!1),n.kind===`error`){fe({detail:n.detail??null});return}if(n.kind===`ok`){try{await r.project.open({path:n.dir,target:`new-window`,entryPoint:`share-receive`,pendingDeepLinkTarget:{kind:z.share.target.kind,path:h(z.share.target)}}),y.dismiss()}catch(e){let t=e;console.warn(`[receive] project open after clone failed`,t instanceof Error?t.message:t),l.error(C({id:`438Fca`}))}return}};let a;t[36]!==C||t[37]!==N||t[38]!==_?(a=async function(){if(!(!_||N)){ue(!0);try{let e=await _.startSignIn();ue(!1),e!==null&&M(e)}catch(e){let t=e;ue(!1),console.warn(`[receive] startSignIn failed`,t instanceof Error?t.message:t),l.error(C({id:`lzwo7p`}))}}},t[36]=C,t[37]=N,t[38]=_,t[39]=a):a=t[39],G=a,W=async function(){if(!(!z||!e||E)){fe(null),A(!0),console.log(re({q2_path:`local`}));try{for(;;){let t=await r.dialog.openFolder();if(!t)break;let n=await r.share.validateLocalFolder({folderPath:t,owner:e.owner,repo:e.repo});if(console.log(re({folder_validate:n.kind})),n.kind===`ok`){let e=z.share.branch,n={currentBranch:null,headSha:null,detached:!1};try{n=await r.project.readHeadBranch(t)}catch(e){let t=e;console.warn(`[receive] local-folder readHeadBranch failed`,t instanceof Error?t.message:t)}let i=o(e,n)!==`true`;try{await r.project.open({path:t,target:`new-window`,entryPoint:`share-receive`,...i?{pendingShareBranchSwitch:{share:z.share,projectPath:t,currentBranch:n.currentBranch}}:{pendingDeepLinkTarget:{kind:z.share.target.kind,path:h(z.share.target)}}}),y.dismiss()}catch(e){let t=e;console.warn(`[receive] local-folder-open failed`,t instanceof Error?t.message:t),l.error(C({id:`phM8Kh`}))}break}let i=v(n,e);i&&l.error(i)}}catch(e){let t=e;console.warn(`[receive] local-folder-validate failed`,t instanceof Error?t.message:t),l.error(C({id:`rlUzXK`}))}A(!1)}};let g;t[40]!==C||t[41]!==r||t[42]!==L||t[43]!==y?(g=function(){if(L===null||L.phase!==`ready`)return;let e=L.seed;console.warn(`[receive] consent_dialog action=initialize worktree=${e.candidatePath}`),R(le),r.project.okInit({projectPath:e.candidatePath}).then(async t=>{if(t.ok===!0){R(e=>e===null?e:w(e,{ok:!0,projectPath:t.projectPath}));try{await r.project.open({path:t.projectPath,target:`new-window`,entryPoint:`share-receive`,pendingDeepLinkTarget:{kind:e.targetKind,path:e.targetPath},pendingBranch:e.branch}),R(ce),y.dismiss()}catch(t){let n=t,r=n instanceof Error?n.message:String(n);R(e=>e===null?e:T(e,{ok:!1,message:r})),l.error(C({id:`nDT8qt`,values:{0:e.candidatePath}}))}return}let n=t.reason,i=t.message||`Initialization failed.`;R(e=>e===null?e:w(e,{ok:!1,reason:n,message:i})),l.error(i)}).catch(t=>{let n=t instanceof Error?t.message:String(t);R(e=>e===null?e:w(e,{ok:!1,reason:`network-error`,message:n})),l.error(C({id:`3Mwaly`,values:{0:e.candidatePath}}))})},t[40]=C,t[41]=r,t[42]=L,t[43]=y,t[44]=g):g=t[44];let b=g,x;t[45]!==L||t[46]!==y?(x=function(){L!==null&&console.warn(`[receive] consent_dialog action=cancel worktree=${L.seed.candidatePath}`),R(P),y.dismiss()},t[45]=L,t[46]=y,t[47]=x):x=t[47];let S=x;if(L!==null&&L.phase!==`cancelled`&&L.phase!==`done`&&B!==null){let e=L.seed,n=L.phase===`initializing`||L.phase===`opening`,r;t[48]===S?r=t[49]:(r=e=>{e||S()},t[48]=S,t[49]=r);let a;t[50]===q?a=t[51]:(a=(0,D.jsx)(u,{children:(0,D.jsx)(i,{id:`RY6Bq1`,values:{targetNoun:q}})}),t[50]=q,t[51]=a);let o;t[52]===B.target?o=t[53]:(o=h(B.target)?`— ${h(B.target)}`:``,t[52]=B.target,t[53]=o);let s;t[54]!==B.owner||t[55]!==B.repo||t[56]!==o?(s=(0,D.jsx)(te,{className:`sr-only`,children:(0,D.jsx)(i,{id:`pgq_xf`,values:{0:B.owner,1:B.repo,2:o}})}),t[54]=B.owner,t[55]=B.repo,t[56]=o,t[57]=s):s=t[57];let l=B.owner,re=B.repo,g;t[58]===B.target?g=t[59]:(g=h(B.target),t[58]=B.target,t[59]=g);let _;t[60]!==B.branch||t[61]!==B.owner||t[62]!==B.repo||t[63]!==B.target.kind||t[64]!==g?(_=(0,D.jsx)(ae,{owner:l,repo:re,path:g,kind:B.target.kind,branch:B.branch,testId:`share-receive-metadata`,branchTestId:`share-receive-metadata-branch`}),t[60]=B.branch,t[61]=B.owner,t[62]=B.repo,t[63]=B.target.kind,t[64]=g,t[65]=_):_=t[65];let v;t[66]!==a||t[67]!==s||t[68]!==_?(v=(0,D.jsxs)(p,{children:[a,s,_]}),t[66]=a,t[67]=s,t[68]=_,t[69]=v):v=t[69];let ie;t[70]===Symbol.for(`react.memo_cache_sentinel`)?(ie=(0,D.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:(0,D.jsx)(i,{id:`KsAPaB`})}),t[70]=ie):ie=t[70];let y;t[71]===e.candidatePath?y=t[72]:(y=(0,D.jsx)(`p`,{className:`mt-2 break-all rounded bg-muted px-2 py-1 font-mono text-xs text-foreground/80`,"data-testid":`share-receive-consent-path`,children:e.candidatePath}),t[71]=e.candidatePath,t[72]=y);let x;t[73]===e.parentProjectName?x=t[74]:(x=e.parentProjectName===null?null:(0,D.jsx)(`p`,{className:`mt-2 text-xs text-muted-foreground`,"data-testid":`share-receive-consent-parent`,children:(0,D.jsx)(i,{id:`JmfgFc`,values:{0:e.parentProjectName}})}),t[73]=e.parentProjectName,t[74]=x);let C;t[75]===Symbol.for(`react.memo_cache_sentinel`)?(C=(0,D.jsx)(`p`,{className:`mt-3 text-sm text-muted-foreground`,children:(0,D.jsx)(i,{id:`w7SsvI`})}),t[75]=C):C=t[75];let w;t[76]!==L.message||t[77]!==L.phase?(w=L.phase===`error`?(0,D.jsx)(`p`,{className:`mt-3 text-sm text-destructive`,"data-testid":`share-receive-consent-error`,role:`alert`,children:L.message}):null,t[76]=L.message,t[77]=L.phase,t[78]=w):w=t[78];let T;t[79]!==y||t[80]!==x||t[81]!==w?(T=(0,D.jsxs)(f,{children:[ie,y,x,C,w]}),t[79]=y,t[80]=x,t[81]=w,t[82]=T):T=t[82];let E;t[83]===Symbol.for(`react.memo_cache_sentinel`)?(E=(0,D.jsx)(i,{id:`dEgA5A`}),t[83]=E):E=t[83];let O;t[84]===S?O=t[85]:(O=(0,D.jsx)(c,{variant:`ghost`,onClick:S,"data-testid":`share-receive-consent-cancel`,children:E}),t[84]=S,t[85]=O);let k=n||L.phase===`error`,A=n||L.phase===`error`,j;t[86]===n?j=t[87]:(j=n?(0,D.jsxs)(D.Fragment,{children:[(0,D.jsx)(ee,{className:`mr-2 h-4 w-4 animate-spin`,"aria-hidden":`true`}),(0,D.jsx)(i,{id:`NKkZXl`})]}):(0,D.jsx)(i,{id:`NKkZXl`}),t[86]=n,t[87]=j);let M;t[88]!==b||t[89]!==k||t[90]!==A||t[91]!==j?(M=(0,D.jsx)(c,{onClick:b,disabled:k,"aria-disabled":A,"data-testid":`share-receive-consent-initialize`,children:j}),t[88]=b,t[89]=k,t[90]=A,t[91]=j,t[92]=M):M=t[92];let N;t[93]!==O||t[94]!==M?(N=(0,D.jsxs)(ne,{children:[O,M]}),t[93]=O,t[94]=M,t[95]=N):N=t[95];let P;t[96]!==v||t[97]!==T||t[98]!==N?(P=(0,D.jsxs)(d,{className:`sm:max-w-xl`,"data-testid":`share-receive-consent-dialog`,onInteractOutside:se,onPointerDownOutside:oe,children:[v,T,N]}),t[96]=v,t[97]=T,t[98]=N,t[99]=P):P=t[99];let ce;t[100]!==r||t[101]!==P?(ce=(0,D.jsx)(m,{open:!0,onOpenChange:r,children:P}),t[100]=r,t[101]=P,t[102]=ce):ce=t[102],K=ce;break bb0}if(!z||!B||!e){K=null;break bb0}V=_!==void 0&&!F;let O;t[103]!==C||t[104]!==F?(O=C(F?{id:`YjhKI5`}:{id:`LE7t79`}),t[103]=C,t[104]=F,t[105]=O):O=t[105],H=O,Se=s(e)}t[15]=C,t[16]=N,t[17]=r,t[18]=_,t[19]=F,t[20]=L,t[21]=z,t[22]=E,t[23]=B,t[24]=y,t[25]=V,t[26]=H,t[27]=U,t[28]=W,t[29]=G,t[30]=Se,t[31]=K,t[32]=q}else V=t[25],H=t[26],U=t[27],W=t[28],G=t[29],Se=t[30],K=t[31],q=t[32];if(K!==Symbol.for(`react.early_return_sentinel`))return K;let Ce=Se,we=j?.authenticated?j.login:void 0,Te;t[106]===I?Te=t[107]:(Te=I?.detail?g(I.detail):``,t[106]=I,t[107]=Te);let Ee=Te,J;t[108]===y?J=t[109]:(J=e=>{e||y.dismiss()},t[108]=y,t[109]=J);let Y;t[110]===q?Y=t[111]:(Y=(0,D.jsx)(u,{children:(0,D.jsx)(i,{id:`RY6Bq1`,values:{targetNoun:q}})}),t[110]=q,t[111]=Y);let X;t[112]===B.target?X=t[113]:(X=h(B.target)?` — ${h(B.target)}`:null,t[112]=B.target,t[113]=X);let Z;t[114]!==B.owner||t[115]!==B.repo||t[116]!==X?(Z=(0,D.jsxs)(te,{className:`sr-only`,children:[B.owner,`/`,B.repo,X]}),t[114]=B.owner,t[115]=B.repo,t[116]=X,t[117]=Z):Z=t[117];let De=B.owner,Oe=B.repo,Q;t[118]===B.target?Q=t[119]:(Q=h(B.target),t[118]=B.target,t[119]=Q);let ke;t[120]!==B.branch||t[121]!==B.owner||t[122]!==B.repo||t[123]!==B.target.kind||t[124]!==Q?(ke=(0,D.jsx)(ae,{owner:De,repo:Oe,path:Q,kind:B.target.kind,branch:B.branch,testId:`share-receive-metadata`,branchTestId:`share-receive-metadata-branch`}),t[120]=B.branch,t[121]=B.owner,t[122]=B.repo,t[123]=B.target.kind,t[124]=Q,t[125]=ke):ke=t[125];let Ae;t[126]!==Y||t[127]!==Z||t[128]!==ke?(Ae=(0,D.jsxs)(p,{children:[Y,Z,ke]}),t[126]=Y,t[127]=Z,t[128]=ke,t[129]=Ae):Ae=t[129];let $;t[130]!==_||t[131]!==V||t[132]!==I||t[133]!==Ee||t[134]!==H||t[135]!==F||t[136]!==U||t[137]!==W||t[138]!==E?($=I?(0,D.jsxs)(`div`,{ref:me,tabIndex:-1,className:`rounded-lg border border-destructive/40 bg-destructive/5 p-4 outline-none`,"data-testid":`share-receive-clone-error`,children:[(0,D.jsx)(`p`,{className:`text-sm font-semibold text-foreground`,role:`alert`,children:(0,D.jsx)(i,{id:`aiArms`})}),Ee?(0,D.jsxs)(`p`,{className:`mt-2 break-words text-xs text-destructive`,"data-testid":`share-receive-clone-error-message`,children:[(0,D.jsx)(i,{id:`4BITzH`}),` `,(0,D.jsxs)(`span`,{className:`font-mono text-foreground/80`,children:[`"`,Ee,`"`]})]}):null,(0,D.jsx)(`p`,{className:`mt-3 text-sm text-muted-foreground`,children:(0,D.jsx)(i,{id:`Llyqvo`})}),(0,D.jsxs)(`ul`,{className:`mt-1 list-disc space-y-1 pl-5 text-sm text-muted-foreground`,"data-testid":`share-receive-clone-error-reasons`,children:[(0,D.jsx)(`li`,{children:(0,D.jsx)(i,{id:`6LbUG7`})}),(0,D.jsx)(`li`,{children:(0,D.jsx)(i,{id:`_pY_Vq`})}),(0,D.jsx)(`li`,{children:(0,D.jsx)(i,{id:`J6mxC1`})})]}),(0,D.jsxs)(`div`,{className:`mt-4 flex flex-wrap gap-2`,children:[(0,D.jsx)(c,{onClick:()=>{U()},"data-testid":`share-receive-clone-retry`,children:(0,D.jsx)(i,{id:`KDw4GX`})}),(0,D.jsx)(c,{variant:`outline`,onClick:()=>{W()},disabled:E||F,"data-testid":`share-receive-error-local`,children:(0,D.jsx)(i,{id:`xFQRu4`})})]})]}):(0,D.jsxs)(`div`,{className:`grid grid-cols-2 gap-3`,children:[(0,D.jsxs)(`button`,{type:`button`,"data-testid":`share-receive-clone`,className:`flex flex-col items-start gap-2 rounded-lg border-2 border-primary/40 bg-card p-4 text-left transition hover:border-primary hover:bg-accent focus:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 disabled:hover:border-primary/40 disabled:hover:bg-card`,onClick:()=>{U()},disabled:_!==void 0&&!V,"aria-disabled":_!==void 0&&!V,children:[(0,D.jsx)(`span`,{className:`text-sm font-semibold`,children:H}),(0,D.jsx)(`span`,{className:`line-clamp-2 text-1sm text-muted-foreground`,children:(0,D.jsx)(i,{id:`fj5YiP`})})]}),(0,D.jsxs)(`button`,{type:`button`,"data-testid":`share-receive-local`,className:`flex flex-col items-start gap-2 rounded-lg border border-border bg-card p-4 text-left transition hover:border-foreground/50 hover:bg-accent focus:outline-none focus-visible:ring-2 focus-visible:ring-ring`,onClick:()=>{W()},disabled:E||F,children:[(0,D.jsx)(`span`,{className:`text-sm font-semibold`,children:(0,D.jsx)(i,{id:`HfI1dR`})}),(0,D.jsx)(`span`,{className:`line-clamp-2 text-1sm text-muted-foreground`,children:(0,D.jsx)(i,{id:`_qD6mn`})})]})]}),t[130]=_,t[131]=V,t[132]=I,t[133]=Ee,t[134]=H,t[135]=F,t[136]=U,t[137]=W,t[138]=E,t[139]=$):$=t[139];let je;t[140]!==N||t[141]!==j||t[142]!==_||t[143]!==G||t[144]!==we?(je=_?(0,D.jsx)(`div`,{className:`mt-3 flex items-center justify-between rounded-md border border-border bg-muted/30 px-3 py-2 text-xs`,"data-testid":`share-receive-auth-banner`,role:`status`,"aria-live":`polite`,children:j===null?(0,D.jsx)(`span`,{className:`text-muted-foreground`,children:(0,D.jsx)(i,{id:`UDFrWm`})}):j.authenticated?(0,D.jsx)(`span`,{className:`text-muted-foreground`,children:(0,D.jsx)(i,{id:`VAHWL_`,values:{signedInLogin:we},components:{0:(0,D.jsx)(`span`,{className:`font-medium text-foreground/90`})}})}):(0,D.jsxs)(D.Fragment,{children:[(0,D.jsx)(`span`,{className:`text-muted-foreground`,children:(0,D.jsx)(i,{id:`SgKLfA`})}),(0,D.jsx)(`button`,{type:`button`,"data-testid":`share-receive-signin`,className:`font-medium text-primary underline-offset-2 hover:underline focus:outline-none focus-visible:ring-2 focus-visible:ring-ring rounded`,onClick:()=>{G()},disabled:N,children:N?(0,D.jsx)(i,{id:`PKLY-1`}):(0,D.jsx)(i,{id:`3jod3l`})})]})}):null,t[140]=N,t[141]=j,t[142]=_,t[143]=G,t[144]=we,t[145]=je):je=t[145];let Me;t[146]!==I||t[147]!==Ce?(Me=I?null:(0,D.jsx)(`p`,{className:`mt-3 text-1sm text-muted-foreground`,children:(0,D.jsx)(i,{id:`RJ3a8Z`,values:{lookingForUrl:Ce},components:{0:(0,D.jsx)(`code`,{className:`rounded-sm bg-muted px-1 py-0.5 text-foreground/80`})}})}),t[146]=I,t[147]=Ce,t[148]=Me):Me=t[148];let Ne;t[149]!==$||t[150]!==je||t[151]!==Me?(Ne=(0,D.jsxs)(f,{children:[$,je,Me]}),t[149]=$,t[150]=je,t[151]=Me,t[152]=Ne):Ne=t[152];let Pe;t[153]===y?Pe=t[154]:(Pe=()=>y.dismiss(),t[153]=y,t[154]=Pe);let Fe;t[155]===Symbol.for(`react.memo_cache_sentinel`)?(Fe=(0,D.jsx)(i,{id:`dEgA5A`}),t[155]=Fe):Fe=t[155];let Ie;t[156]===Pe?Ie=t[157]:(Ie=(0,D.jsx)(ne,{children:(0,D.jsx)(c,{variant:`outline`,className:`font-mono uppercase`,onClick:Pe,children:Fe})}),t[156]=Pe,t[157]=Ie);let Le;t[158]!==Ae||t[159]!==Ne||t[160]!==Ie?(Le=(0,D.jsxs)(d,{className:`sm:max-w-xl`,"data-testid":`share-receive-dialog`,children:[Ae,Ne,Ie]}),t[158]=Ae,t[159]=Ne,t[160]=Ie,t[161]=Le):Le=t[161];let Re;return t[162]!==J||t[163]!==Le?(Re=(0,D.jsx)(m,{open:!0,onOpenChange:J,children:Le}),t[162]=J,t[163]=Le,t[164]=Re):Re=t[164],Re}function oe(e){return e.preventDefault()}function se(e){return e.preventDefault()}function P(e){return e===null?e:E(e)}function ce(e){return e===null?e:T(e,{ok:!0})}function le(e){return e===null?e:C(e)}export{A as ShareReceiveDialog};
|
|
1
|
+
import{o as e}from"./chunk-CFjPhJqf.js";import{n as t,r as n,t as r}from"./compiler-runtime-CVnuRdak.js";import{n as i,r as a}from"./dist-CQw2y-s3.js";import{Gt as o,Ut as s}from"./dist-w6PaZv_P.js";import{t as c}from"./button-cneJOVxD.js";import{t as ee}from"./loader-circle-B7Gv_Djz.js";import{n as l}from"./dist-CoyydoqN.js";import{a as te,c as u,i as d,n as f,o as ne,s as p,t as m}from"./dialog-DdHaoAGK.js";import{t as h}from"./desktop-bridge-types-NXCK8Pd7.js";import{a as re,i as g,n as _,o as v,r as ie,s as y}from"./receive-store-BI47GRKC.js";import{t as ae}from"./share-metadata-rows-ZQ-JmihW.js";var b=e(t(),1),x=r(),S=e=>({phase:`ready`,seed:e});function C(e){return e.phase===`ready`?{phase:`initializing`,seed:e.seed}:e}function w(e,t){return e.phase===`initializing`?t.ok?{phase:`opening`,seed:e.seed}:{phase:`error`,seed:e.seed,reason:t.reason,message:t.message}:e}function T(e,t){return e.phase===`opening`?t.ok?{phase:`done`,seed:e.seed}:{phase:`error`,seed:e.seed,reason:`network-error`,message:t.message}:e}function E(e){return e.phase===`done`||e.phase===`cancelled`||e.phase===`error`?e:{phase:`cancelled`,seed:e.seed}}var D=n();function O(e){return e!==null&&e.kind===`launcher-consent`}function k(e){return e!==null&&e.kind===`launcher-miss`}function A(e){let t=(0,x.c)(14),{bridge:n,cloneController:r,store:i}=e,a=i===void 0?_:i,o=(0,b.useSyncExternalStore)(a.subscribe,a.getSnapshot,M),[s,c]=(0,b.useState)(0),[ee,te]=(0,b.useState)(o);o!==ee&&(te(o),c(j));let u,d;t[0]!==o||t[1]!==a?(u=()=>{if(!o)return;let e=y(o);e&&(l.error(e.message),a.dismiss())},d=[o,a],t[0]=o,t[1]=a,t[2]=u,t[3]=d):(u=t[2],d=t[3]),(0,b.useEffect)(u,d);let f;t[4]===o?f=t[5]:(f=k(o)?o:null,t[4]=o,t[5]=f);let ne=f,p;t[6]===o?p=t[7]:(p=O(o)?o:null,t[6]=o,t[7]=p);let m=p??ne;if(!m)return null;let h;return t[8]!==m||t[9]!==n||t[10]!==r||t[11]!==s||t[12]!==a?(h=(0,D.jsx)(N,{payload:m,bridge:n,cloneController:r,store:a},s),t[8]=m,t[9]=n,t[10]=r,t[11]=s,t[12]=a,t[13]=h):h=t[13],h}function j(e){return e+1}function M(){return null}function N(e){let t=(0,x.c)(165),{payload:n,bridge:r,cloneController:_,store:y}=e,{_:C}=a(),[E,A]=(0,b.useState)(!1),[j,M]=(0,b.useState)(null),[N,ue]=(0,b.useState)(!1),[F,de]=(0,b.useState)(!1),[I,fe]=(0,b.useState)(null),[L,R]=(0,b.useState)(null),pe=(0,b.useRef)(!1),me=(0,b.useRef)(null),he,ge;t[0]===I?(he=t[1],ge=t[2]):(he=()=>{I&&me.current?.focus()},ge=[I],t[0]=I,t[1]=he,t[2]=ge),(0,b.useEffect)(he,ge);let _e;t[3]!==L||t[4]!==n?(_e=()=>{O(n)&&L===null&&(console.warn(`[receive] q1_hit=true selection=branch_match_non_ok candidate=${n.candidatePath}`),R(S({candidatePath:n.candidatePath,branch:n.share.branch,targetPath:h(n.share.target),targetKind:n.share.target.kind,parentProjectName:n.parentProjectName})))},t[3]=L,t[4]=n,t[5]=_e):_e=t[5];let ve;t[6]===n?ve=t[7]:(ve=[n],t[6]=n,t[7]=ve),(0,b.useEffect)(_e,ve);let ye;t[8]!==j||t[9]!==_||t[10]!==n?(ye=()=>{_&&k(n)&&j===null&&(pe.current||(pe.current=!0,ue(!0),_.getAuthStatus().then(e=>{M(e)}).catch(e=>{console.warn(`[receive] auth pre-flight probe failed`,e instanceof Error?e.message:e),M({authenticated:!1,host:`github.com`})}).finally(()=>{ue(!1)})))},t[8]=j,t[9]=_,t[10]=n,t[11]=ye):ye=t[11];let be;t[12]!==j||t[13]!==n?(be=[n,j],t[12]=j,t[13]=n,t[14]=be):be=t[14],(0,b.useEffect)(ye,be);let z=k(n)?n:null,xe=O(n)?n:null,B=z?.share??xe?.share??null,V,H,U,W,G,Se,K,q;if(t[15]!==C||t[16]!==N||t[17]!==r||t[18]!==_||t[19]!==F||t[20]!==L||t[21]!==z||t[22]!==E||t[23]!==B||t[24]!==y){K=Symbol.for(`react.early_return_sentinel`);bb0:{let e=B?{owner:B.owner,repo:B.repo}:null,n;t[33]!==C||t[34]!==B?.target.kind?(n=B?.target.kind===`folder`?C({id:`ugoTXs`}):C({id:`XH30C4`}),t[33]=C,t[34]=B?.target.kind,t[35]=n):n=t[35],q=n,U=async function(){if(!z||!e)return;if(console.log(re({q2_path:`clone`})),!_){l.info(C({id:`27XW26`}),{action:{label:C({id:`B3NAZC`}),onClick:()=>{r.navigator.open()}},duration:8e3});return}if(F)return;fe(null),de(!0);let t=ie(e),n;try{n=await _.runClone({url:t,branch:z.share.branch})}catch(e){let t=e;console.warn(`[receive] runClone threw unexpectedly`,t),de(!1),fe({detail:t instanceof Error?t.message:String(t)});return}if(de(!1),n.kind===`error`){fe({detail:n.detail??null});return}if(n.kind===`ok`){try{await r.project.open({path:n.dir,target:`new-window`,entryPoint:`share-receive`,pendingDeepLinkTarget:{kind:z.share.target.kind,path:h(z.share.target)}}),y.dismiss()}catch(e){let t=e;console.warn(`[receive] project open after clone failed`,t instanceof Error?t.message:t),l.error(C({id:`438Fca`}))}return}};let a;t[36]!==C||t[37]!==N||t[38]!==_?(a=async function(){if(!(!_||N)){ue(!0);try{let e=await _.startSignIn();ue(!1),e!==null&&M(e)}catch(e){let t=e;ue(!1),console.warn(`[receive] startSignIn failed`,t instanceof Error?t.message:t),l.error(C({id:`lzwo7p`}))}}},t[36]=C,t[37]=N,t[38]=_,t[39]=a):a=t[39],G=a,W=async function(){if(!(!z||!e||E)){fe(null),A(!0),console.log(re({q2_path:`local`}));try{for(;;){let t=await r.dialog.openFolder();if(!t)break;let n=await r.share.validateLocalFolder({folderPath:t,owner:e.owner,repo:e.repo});if(console.log(re({folder_validate:n.kind})),n.kind===`ok`){let e=z.share.branch,n={currentBranch:null,headSha:null,detached:!1};try{n=await r.project.readHeadBranch(t)}catch(e){let t=e;console.warn(`[receive] local-folder readHeadBranch failed`,t instanceof Error?t.message:t)}let i=o(e,n)!==`true`;try{await r.project.open({path:t,target:`new-window`,entryPoint:`share-receive`,...i?{pendingShareBranchSwitch:{share:z.share,projectPath:t,currentBranch:n.currentBranch}}:{pendingDeepLinkTarget:{kind:z.share.target.kind,path:h(z.share.target)}}}),y.dismiss()}catch(e){let t=e;console.warn(`[receive] local-folder-open failed`,t instanceof Error?t.message:t),l.error(C({id:`phM8Kh`}))}break}let i=v(n,e);i&&l.error(i)}}catch(e){let t=e;console.warn(`[receive] local-folder-validate failed`,t instanceof Error?t.message:t),l.error(C({id:`rlUzXK`}))}A(!1)}};let g;t[40]!==C||t[41]!==r||t[42]!==L||t[43]!==y?(g=function(){if(L===null||L.phase!==`ready`)return;let e=L.seed;console.warn(`[receive] consent_dialog action=initialize worktree=${e.candidatePath}`),R(le),r.project.okInit({projectPath:e.candidatePath}).then(async t=>{if(t.ok===!0){R(e=>e===null?e:w(e,{ok:!0,projectPath:t.projectPath}));try{await r.project.open({path:t.projectPath,target:`new-window`,entryPoint:`share-receive`,pendingDeepLinkTarget:{kind:e.targetKind,path:e.targetPath},pendingBranch:e.branch}),R(ce),y.dismiss()}catch(t){let n=t,r=n instanceof Error?n.message:String(n);R(e=>e===null?e:T(e,{ok:!1,message:r})),l.error(C({id:`nDT8qt`,values:{0:e.candidatePath}}))}return}let n=t.reason,i=t.message||`Initialization failed.`;R(e=>e===null?e:w(e,{ok:!1,reason:n,message:i})),l.error(i)}).catch(t=>{let n=t instanceof Error?t.message:String(t);R(e=>e===null?e:w(e,{ok:!1,reason:`network-error`,message:n})),l.error(C({id:`3Mwaly`,values:{0:e.candidatePath}}))})},t[40]=C,t[41]=r,t[42]=L,t[43]=y,t[44]=g):g=t[44];let b=g,x;t[45]!==L||t[46]!==y?(x=function(){L!==null&&console.warn(`[receive] consent_dialog action=cancel worktree=${L.seed.candidatePath}`),R(P),y.dismiss()},t[45]=L,t[46]=y,t[47]=x):x=t[47];let S=x;if(L!==null&&L.phase!==`cancelled`&&L.phase!==`done`&&B!==null){let e=L.seed,n=L.phase===`initializing`||L.phase===`opening`,r;t[48]===S?r=t[49]:(r=e=>{e||S()},t[48]=S,t[49]=r);let a;t[50]===q?a=t[51]:(a=(0,D.jsx)(u,{children:(0,D.jsx)(i,{id:`RY6Bq1`,values:{targetNoun:q}})}),t[50]=q,t[51]=a);let o;t[52]===B.target?o=t[53]:(o=h(B.target)?`— ${h(B.target)}`:``,t[52]=B.target,t[53]=o);let s;t[54]!==B.owner||t[55]!==B.repo||t[56]!==o?(s=(0,D.jsx)(te,{className:`sr-only`,children:(0,D.jsx)(i,{id:`pgq_xf`,values:{0:B.owner,1:B.repo,2:o}})}),t[54]=B.owner,t[55]=B.repo,t[56]=o,t[57]=s):s=t[57];let l=B.owner,re=B.repo,g;t[58]===B.target?g=t[59]:(g=h(B.target),t[58]=B.target,t[59]=g);let _;t[60]!==B.branch||t[61]!==B.owner||t[62]!==B.repo||t[63]!==B.target.kind||t[64]!==g?(_=(0,D.jsx)(ae,{owner:l,repo:re,path:g,kind:B.target.kind,branch:B.branch,testId:`share-receive-metadata`,branchTestId:`share-receive-metadata-branch`}),t[60]=B.branch,t[61]=B.owner,t[62]=B.repo,t[63]=B.target.kind,t[64]=g,t[65]=_):_=t[65];let v;t[66]!==a||t[67]!==s||t[68]!==_?(v=(0,D.jsxs)(p,{children:[a,s,_]}),t[66]=a,t[67]=s,t[68]=_,t[69]=v):v=t[69];let ie;t[70]===Symbol.for(`react.memo_cache_sentinel`)?(ie=(0,D.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:(0,D.jsx)(i,{id:`KsAPaB`})}),t[70]=ie):ie=t[70];let y;t[71]===e.candidatePath?y=t[72]:(y=(0,D.jsx)(`p`,{className:`mt-2 break-all rounded bg-muted px-2 py-1 font-mono text-xs text-foreground/80`,"data-testid":`share-receive-consent-path`,children:e.candidatePath}),t[71]=e.candidatePath,t[72]=y);let x;t[73]===e.parentProjectName?x=t[74]:(x=e.parentProjectName===null?null:(0,D.jsx)(`p`,{className:`mt-2 text-xs text-muted-foreground`,"data-testid":`share-receive-consent-parent`,children:(0,D.jsx)(i,{id:`JmfgFc`,values:{0:e.parentProjectName}})}),t[73]=e.parentProjectName,t[74]=x);let C;t[75]===Symbol.for(`react.memo_cache_sentinel`)?(C=(0,D.jsx)(`p`,{className:`mt-3 text-sm text-muted-foreground`,children:(0,D.jsx)(i,{id:`w7SsvI`})}),t[75]=C):C=t[75];let w;t[76]!==L.message||t[77]!==L.phase?(w=L.phase===`error`?(0,D.jsx)(`p`,{className:`mt-3 text-sm text-destructive`,"data-testid":`share-receive-consent-error`,role:`alert`,children:L.message}):null,t[76]=L.message,t[77]=L.phase,t[78]=w):w=t[78];let T;t[79]!==y||t[80]!==x||t[81]!==w?(T=(0,D.jsxs)(f,{children:[ie,y,x,C,w]}),t[79]=y,t[80]=x,t[81]=w,t[82]=T):T=t[82];let E;t[83]===Symbol.for(`react.memo_cache_sentinel`)?(E=(0,D.jsx)(i,{id:`dEgA5A`}),t[83]=E):E=t[83];let O;t[84]===S?O=t[85]:(O=(0,D.jsx)(c,{variant:`ghost`,onClick:S,"data-testid":`share-receive-consent-cancel`,children:E}),t[84]=S,t[85]=O);let k=n||L.phase===`error`,A=n||L.phase===`error`,j;t[86]===n?j=t[87]:(j=n?(0,D.jsxs)(D.Fragment,{children:[(0,D.jsx)(ee,{className:`mr-2 h-4 w-4 animate-spin`,"aria-hidden":`true`}),(0,D.jsx)(i,{id:`NKkZXl`})]}):(0,D.jsx)(i,{id:`NKkZXl`}),t[86]=n,t[87]=j);let M;t[88]!==b||t[89]!==k||t[90]!==A||t[91]!==j?(M=(0,D.jsx)(c,{onClick:b,disabled:k,"aria-disabled":A,"data-testid":`share-receive-consent-initialize`,children:j}),t[88]=b,t[89]=k,t[90]=A,t[91]=j,t[92]=M):M=t[92];let N;t[93]!==O||t[94]!==M?(N=(0,D.jsxs)(ne,{children:[O,M]}),t[93]=O,t[94]=M,t[95]=N):N=t[95];let P;t[96]!==v||t[97]!==T||t[98]!==N?(P=(0,D.jsxs)(d,{className:`sm:max-w-xl`,"data-testid":`share-receive-consent-dialog`,onInteractOutside:se,onPointerDownOutside:oe,children:[v,T,N]}),t[96]=v,t[97]=T,t[98]=N,t[99]=P):P=t[99];let ce;t[100]!==r||t[101]!==P?(ce=(0,D.jsx)(m,{open:!0,onOpenChange:r,children:P}),t[100]=r,t[101]=P,t[102]=ce):ce=t[102],K=ce;break bb0}if(!z||!B||!e){K=null;break bb0}V=_!==void 0&&!F;let O;t[103]!==C||t[104]!==F?(O=C(F?{id:`YjhKI5`}:{id:`LE7t79`}),t[103]=C,t[104]=F,t[105]=O):O=t[105],H=O,Se=s(e)}t[15]=C,t[16]=N,t[17]=r,t[18]=_,t[19]=F,t[20]=L,t[21]=z,t[22]=E,t[23]=B,t[24]=y,t[25]=V,t[26]=H,t[27]=U,t[28]=W,t[29]=G,t[30]=Se,t[31]=K,t[32]=q}else V=t[25],H=t[26],U=t[27],W=t[28],G=t[29],Se=t[30],K=t[31],q=t[32];if(K!==Symbol.for(`react.early_return_sentinel`))return K;let Ce=Se,we=j?.authenticated?j.login:void 0,Te;t[106]===I?Te=t[107]:(Te=I?.detail?g(I.detail):``,t[106]=I,t[107]=Te);let Ee=Te,J;t[108]===y?J=t[109]:(J=e=>{e||y.dismiss()},t[108]=y,t[109]=J);let Y;t[110]===q?Y=t[111]:(Y=(0,D.jsx)(u,{children:(0,D.jsx)(i,{id:`RY6Bq1`,values:{targetNoun:q}})}),t[110]=q,t[111]=Y);let X;t[112]===B.target?X=t[113]:(X=h(B.target)?` — ${h(B.target)}`:null,t[112]=B.target,t[113]=X);let Z;t[114]!==B.owner||t[115]!==B.repo||t[116]!==X?(Z=(0,D.jsxs)(te,{className:`sr-only`,children:[B.owner,`/`,B.repo,X]}),t[114]=B.owner,t[115]=B.repo,t[116]=X,t[117]=Z):Z=t[117];let De=B.owner,Oe=B.repo,Q;t[118]===B.target?Q=t[119]:(Q=h(B.target),t[118]=B.target,t[119]=Q);let ke;t[120]!==B.branch||t[121]!==B.owner||t[122]!==B.repo||t[123]!==B.target.kind||t[124]!==Q?(ke=(0,D.jsx)(ae,{owner:De,repo:Oe,path:Q,kind:B.target.kind,branch:B.branch,testId:`share-receive-metadata`,branchTestId:`share-receive-metadata-branch`}),t[120]=B.branch,t[121]=B.owner,t[122]=B.repo,t[123]=B.target.kind,t[124]=Q,t[125]=ke):ke=t[125];let Ae;t[126]!==Y||t[127]!==Z||t[128]!==ke?(Ae=(0,D.jsxs)(p,{children:[Y,Z,ke]}),t[126]=Y,t[127]=Z,t[128]=ke,t[129]=Ae):Ae=t[129];let $;t[130]!==_||t[131]!==V||t[132]!==I||t[133]!==Ee||t[134]!==H||t[135]!==F||t[136]!==U||t[137]!==W||t[138]!==E?($=I?(0,D.jsxs)(`div`,{ref:me,tabIndex:-1,className:`rounded-lg border border-destructive/40 bg-destructive/5 p-4 outline-none`,"data-testid":`share-receive-clone-error`,children:[(0,D.jsx)(`p`,{className:`text-sm font-semibold text-foreground`,role:`alert`,children:(0,D.jsx)(i,{id:`aiArms`})}),Ee?(0,D.jsxs)(`p`,{className:`mt-2 break-words text-xs text-destructive`,"data-testid":`share-receive-clone-error-message`,children:[(0,D.jsx)(i,{id:`4BITzH`}),` `,(0,D.jsxs)(`span`,{className:`font-mono text-foreground/80`,children:[`"`,Ee,`"`]})]}):null,(0,D.jsx)(`p`,{className:`mt-3 text-sm text-muted-foreground`,children:(0,D.jsx)(i,{id:`Llyqvo`})}),(0,D.jsxs)(`ul`,{className:`mt-1 list-disc space-y-1 pl-5 text-sm text-muted-foreground`,"data-testid":`share-receive-clone-error-reasons`,children:[(0,D.jsx)(`li`,{children:(0,D.jsx)(i,{id:`6LbUG7`})}),(0,D.jsx)(`li`,{children:(0,D.jsx)(i,{id:`_pY_Vq`})}),(0,D.jsx)(`li`,{children:(0,D.jsx)(i,{id:`J6mxC1`})})]}),(0,D.jsxs)(`div`,{className:`mt-4 flex flex-wrap gap-2`,children:[(0,D.jsx)(c,{onClick:()=>{U()},"data-testid":`share-receive-clone-retry`,children:(0,D.jsx)(i,{id:`KDw4GX`})}),(0,D.jsx)(c,{variant:`outline`,onClick:()=>{W()},disabled:E||F,"data-testid":`share-receive-error-local`,children:(0,D.jsx)(i,{id:`xFQRu4`})})]})]}):(0,D.jsxs)(`div`,{className:`grid grid-cols-2 gap-3`,children:[(0,D.jsxs)(`button`,{type:`button`,"data-testid":`share-receive-clone`,className:`flex flex-col items-start gap-2 rounded-lg border border-primary/50 bg-primary/5 p-4 text-left transition hover:border-primary hover:bg-primary/10 focus-visible:border-ring focus-visible:outline-none focus-visible:ring-3 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 disabled:hover:border-primary/50 disabled:hover:bg-primary/5`,onClick:()=>{U()},disabled:_!==void 0&&!V,"aria-disabled":_!==void 0&&!V,children:[(0,D.jsx)(`span`,{className:`text-sm font-semibold`,children:H}),(0,D.jsx)(`span`,{className:`line-clamp-2 text-1sm text-muted-foreground`,children:(0,D.jsx)(i,{id:`fj5YiP`})})]}),(0,D.jsxs)(`button`,{type:`button`,"data-testid":`share-receive-local`,className:`flex flex-col items-start gap-2 rounded-lg border border-border bg-card p-4 text-left transition hover:border-foreground/50 hover:bg-accent focus-visible:border-ring focus-visible:outline-none focus-visible:ring-3 focus-visible:ring-ring/50`,onClick:()=>{W()},disabled:E||F,children:[(0,D.jsx)(`span`,{className:`text-sm font-semibold`,children:(0,D.jsx)(i,{id:`HfI1dR`})}),(0,D.jsx)(`span`,{className:`line-clamp-2 text-1sm text-muted-foreground`,children:(0,D.jsx)(i,{id:`_qD6mn`})})]})]}),t[130]=_,t[131]=V,t[132]=I,t[133]=Ee,t[134]=H,t[135]=F,t[136]=U,t[137]=W,t[138]=E,t[139]=$):$=t[139];let je;t[140]!==N||t[141]!==j||t[142]!==_||t[143]!==G||t[144]!==we?(je=_?(0,D.jsx)(`div`,{className:`mt-3 flex items-center justify-between rounded-md border border-border bg-muted/30 px-3 py-2 text-xs`,"data-testid":`share-receive-auth-banner`,role:`status`,"aria-live":`polite`,children:j===null?(0,D.jsx)(`span`,{className:`text-muted-foreground`,children:(0,D.jsx)(i,{id:`UDFrWm`})}):j.authenticated?(0,D.jsx)(`span`,{className:`text-muted-foreground`,children:(0,D.jsx)(i,{id:`VAHWL_`,values:{signedInLogin:we},components:{0:(0,D.jsx)(`span`,{className:`font-medium text-foreground/90`})}})}):(0,D.jsxs)(D.Fragment,{children:[(0,D.jsx)(`span`,{className:`text-muted-foreground`,children:(0,D.jsx)(i,{id:`SgKLfA`})}),(0,D.jsx)(`button`,{type:`button`,"data-testid":`share-receive-signin`,className:`font-medium text-primary underline-offset-2 hover:underline focus:outline-none focus-visible:ring-2 focus-visible:ring-ring rounded`,onClick:()=>{G()},disabled:N,children:N?(0,D.jsx)(i,{id:`PKLY-1`}):(0,D.jsx)(i,{id:`3jod3l`})})]})}):null,t[140]=N,t[141]=j,t[142]=_,t[143]=G,t[144]=we,t[145]=je):je=t[145];let Me;t[146]!==I||t[147]!==Ce?(Me=I?null:(0,D.jsx)(`p`,{className:`mt-3 text-1sm text-muted-foreground`,children:(0,D.jsx)(i,{id:`RJ3a8Z`,values:{lookingForUrl:Ce},components:{0:(0,D.jsx)(`code`,{className:`rounded-sm bg-muted px-1 py-0.5 text-foreground/80`})}})}),t[146]=I,t[147]=Ce,t[148]=Me):Me=t[148];let Ne;t[149]!==$||t[150]!==je||t[151]!==Me?(Ne=(0,D.jsxs)(f,{children:[$,je,Me]}),t[149]=$,t[150]=je,t[151]=Me,t[152]=Ne):Ne=t[152];let Pe;t[153]===y?Pe=t[154]:(Pe=()=>y.dismiss(),t[153]=y,t[154]=Pe);let Fe;t[155]===Symbol.for(`react.memo_cache_sentinel`)?(Fe=(0,D.jsx)(i,{id:`dEgA5A`}),t[155]=Fe):Fe=t[155];let Ie;t[156]===Pe?Ie=t[157]:(Ie=(0,D.jsx)(ne,{children:(0,D.jsx)(c,{variant:`outline`,className:`font-mono uppercase`,onClick:Pe,children:Fe})}),t[156]=Pe,t[157]=Ie);let Le;t[158]!==Ae||t[159]!==Ne||t[160]!==Ie?(Le=(0,D.jsxs)(d,{className:`sm:max-w-xl`,"data-testid":`share-receive-dialog`,children:[Ae,Ne,Ie]}),t[158]=Ae,t[159]=Ne,t[160]=Ie,t[161]=Le):Le=t[161];let Re;return t[162]!==J||t[163]!==Le?(Re=(0,D.jsx)(m,{open:!0,onOpenChange:J,children:Le}),t[162]=J,t[163]=Le,t[164]=Re):Re=t[164],Re}function oe(e){return e.preventDefault()}function se(e){return e.preventDefault()}function P(e){return e===null?e:E(e)}function ce(e){return e===null?e:T(e,{ok:!0})}function le(e){return e===null?e:C(e)}export{A as ShareReceiveDialog};
|