@ibgib/space-gib 0.0.32 → 0.0.34

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (112) hide show
  1. package/dist/client/bootstrap.mjs +24 -51
  2. package/dist/client/chunk-25PXC4HP.mjs +9914 -0
  3. package/dist/client/chunk-RXWLL2AI.mjs +30 -0
  4. package/dist/client/css/activity-bar.css +417 -0
  5. package/dist/client/css/base.css +167 -0
  6. package/dist/client/css/components.css +218 -0
  7. package/dist/client/css/cosmic.css +557 -0
  8. package/dist/client/css/dev-tools.css +163 -0
  9. package/dist/client/css/landing.css +184 -0
  10. package/dist/client/css/layout.css +896 -0
  11. package/dist/client/css/onboarding.css +181 -0
  12. package/dist/client/css/repos.css +740 -0
  13. package/dist/client/css/variables.css +64 -0
  14. package/dist/client/index.html +202 -31
  15. package/dist/client/index.mjs +31 -31
  16. package/dist/client/script.mjs +1 -1
  17. package/dist/client/style.css +11 -1056
  18. package/dist/respec-gib.node.mjs +5 -0
  19. package/dist/server/server.mjs +6879 -3109
  20. package/package.json +6 -6
  21. package/src/client/AUTO-GENERATED-version.mts +1 -1
  22. package/src/client/cosmos/seed-cosmos-workspace.mts +69 -0
  23. package/src/client/css/activity-bar.css +417 -0
  24. package/src/client/css/base.css +167 -0
  25. package/src/client/css/components.css +218 -0
  26. package/src/client/css/cosmic.css +557 -0
  27. package/src/client/css/dev-tools.css +163 -0
  28. package/src/client/css/landing.css +184 -0
  29. package/src/client/css/layout.css +896 -0
  30. package/src/client/css/onboarding.css +181 -0
  31. package/src/client/css/repos.css +740 -0
  32. package/src/client/css/variables.css +64 -0
  33. package/src/client/dev-tools/vcs-workspace.mts +3 -3
  34. package/src/client/index.html +202 -31
  35. package/src/client/style.css +11 -1056
  36. package/src/client/ui/component/chat-view/IMPLEMENTATION.md +48 -0
  37. package/src/client/ui/component/chat-view/chat-view.css +381 -0
  38. package/src/client/ui/component/chat-view/chat-view.html +104 -0
  39. package/src/client/ui/component/chat-view/chat-view.mts +277 -0
  40. package/src/client/ui/component/chat-view/index.mts +9 -0
  41. package/src/client/ui/component/clone/IMPLEMENTATION.md +68 -0
  42. package/src/client/ui/component/clone/clone-constants.mts +16 -0
  43. package/src/client/ui/component/clone/clone-types.mts +60 -0
  44. package/src/client/ui/component/clone/clone.css +383 -0
  45. package/src/client/ui/component/clone/clone.html +89 -0
  46. package/src/client/ui/component/clone/clone.mts +620 -0
  47. package/src/client/ui/component/clone/index.mts +11 -0
  48. package/src/client/ui/component/code-editor/IMPLEMENTATION.md +89 -0
  49. package/src/client/ui/component/code-editor/code-editor.css +275 -0
  50. package/src/client/ui/component/code-editor/code-editor.html +54 -0
  51. package/src/client/ui/component/code-editor/code-editor.mts +427 -0
  52. package/src/client/ui/component/code-editor/index.mts +9 -0
  53. package/src/client/ui/component/cosmos-navigator/IMPLEMENTATION.md +31 -0
  54. package/src/client/ui/component/cosmos-navigator/cosmos-navigator.css +864 -0
  55. package/src/client/ui/component/cosmos-navigator/cosmos-navigator.html +97 -0
  56. package/src/client/ui/component/cosmos-navigator/cosmos-navigator.mts +1084 -0
  57. package/src/client/ui/component/cosmos-navigator/index.mts +18 -0
  58. package/src/client/ui/component/file-explorer/IMPLEMENTATION.md +42 -0
  59. package/src/client/ui/component/file-explorer/file-explorer.css +256 -0
  60. package/src/client/ui/component/file-explorer/file-explorer.html +75 -0
  61. package/src/client/ui/component/file-explorer/file-explorer.mts +346 -0
  62. package/src/client/ui/component/file-explorer/index.mts +9 -0
  63. package/src/client/ui/component/nested-chat/IMPLEMENTATION.md +18 -0
  64. package/src/client/ui/component/nested-chat/chat/IMPLEMENTATION.md +14 -0
  65. package/src/client/ui/component/nested-chat/chat/chat-constants.mts +14 -0
  66. package/src/client/ui/component/nested-chat/chat/chat-helpers.mts +66 -0
  67. package/src/client/ui/component/nested-chat/chat/chat.css +654 -0
  68. package/src/client/ui/component/nested-chat/chat/chat.html +90 -0
  69. package/src/client/ui/component/nested-chat/chat/chat.mts +646 -0
  70. package/src/client/ui/component/nested-chat/chat/index.mts +7 -0
  71. package/src/client/ui/component/nested-chat/index.mts +14 -0
  72. package/src/client/ui/component/nested-chat/nested-chat-constants.mts +12 -0
  73. package/src/client/ui/component/nested-chat/nested-chat-types.mts +53 -0
  74. package/src/client/ui/component/nested-chat/nested-chat.css +142 -0
  75. package/src/client/ui/component/nested-chat/nested-chat.html +11 -0
  76. package/src/client/ui/component/nested-chat/nested-chat.mts +393 -0
  77. package/src/client/ui/component/notes-explorer/index.mts +9 -0
  78. package/src/client/ui/component/notes-explorer/notes-explorer.css +313 -0
  79. package/src/client/ui/component/notes-explorer/notes-explorer.html +136 -0
  80. package/src/client/ui/component/notes-explorer/notes-explorer.mts +240 -0
  81. package/src/client/ui/component/notes-inspector/index.mts +9 -0
  82. package/src/client/ui/component/notes-inspector/notes-inspector.css +244 -0
  83. package/src/client/ui/component/notes-inspector/notes-inspector.html +97 -0
  84. package/src/client/ui/component/notes-inspector/notes-inspector.mts +152 -0
  85. package/src/client/ui/component/pitch/IMPLEMENTATION.md +48 -0
  86. package/src/client/ui/component/pitch/index.mts +9 -0
  87. package/src/client/ui/component/pitch/pitch.css +295 -0
  88. package/src/client/ui/component/pitch/pitch.html +97 -0
  89. package/src/client/ui/component/pitch/pitch.mts +135 -0
  90. package/src/client/ui/component/timeline/IMPLEMENTATION.md +33 -0
  91. package/src/client/ui/component/timeline/index.mts +9 -0
  92. package/src/client/ui/component/timeline/timeline.css +264 -0
  93. package/src/client/ui/component/timeline/timeline.html +23 -0
  94. package/src/client/ui/component/timeline/timeline.mts +317 -0
  95. package/src/client/ui/component/timeline-item-details/IMPLEMENTATION.md +28 -0
  96. package/src/client/ui/component/timeline-item-details/index.mts +9 -0
  97. package/src/client/ui/component/timeline-item-details/timeline-item-details.css +286 -0
  98. package/src/client/ui/component/timeline-item-details/timeline-item-details.html +64 -0
  99. package/src/client/ui/component/timeline-item-details/timeline-item-details.mts +194 -0
  100. package/src/client/ui/router/index.mts +3 -0
  101. package/src/client/ui/router/space-gib-router-helpers.mts +272 -0
  102. package/src/client/ui/router/space-gib-router-helpers.respec.mts +353 -0
  103. package/src/client/ui/router/space-gib-router-service.mts +186 -0
  104. package/src/client/ui/router/space-gib-router-types.mts +93 -0
  105. package/src/client/ui/shell/cosmic-big-bang.mts +844 -0
  106. package/src/client/ui/shell/space-gib-shell-constants.mts +7 -0
  107. package/src/client/ui/shell/space-gib-shell-service.mts +1728 -31
  108. package/src/server/server.mts +20 -1
  109. package/tsconfig.test.json +5 -1
  110. package/dist/client/chunk-AX6BROMT.mjs +0 -1
  111. package/dist/client/chunk-CIQUGV7U.mjs +0 -25
  112. package/dist/client/chunk-YPCHYDKL.mjs +0 -3102
@@ -56,6 +56,21 @@ async function main(): Promise<void> {
56
56
  console.info(`${lc} ℹ️ STAGING CUSTODIAN KEYSTONE PROFILE ACTIVE ('${custodianPrimaryProfile}')`);
57
57
  }
58
58
 
59
+ // Fail-fast check for Keystone Admin credentials (prohibit default credentials; ADMIN_INFOS only)
60
+ const rawAdminInfos = process.env.ADMIN_INFOS?.trim();
61
+ if (!rawAdminInfos) {
62
+ throw new Error(`${lc} Fatal Error: Admin credentials missing in environment. ADMIN_INFOS must be explicitly configured in the environment (.env). Default credentials are strictly prohibited. (E: 83920192837465019283746501928374)`);
63
+ }
64
+ try {
65
+ const parsed = JSON.parse(rawAdminInfos);
66
+ if (!Array.isArray(parsed) || parsed.length === 0 || parsed.some((a: any) => !(a.id || a.adminId) || !(a.password || a.adminPassword || a.adminSecret))) {
67
+ throw new Error(`ADMIN_INFOS must be a non-empty array of objects with id/adminId and password/adminSecret.`);
68
+ }
69
+ } catch (parseErr) {
70
+ throw new Error(`${lc} Fatal Error: Malformed ADMIN_INFOS in environment: ${extractErrorMsg(parseErr)} (E: 73829102938475610293847561029384)`);
71
+ }
72
+ console.log(`${lc} Keystone Admin credentials verified in environment. (I: a9283746501928374650192837465019)`);
73
+
59
74
  const syncUpgradeHandler = new SyncUpgradeHandler();
60
75
 
61
76
  // Initialize serve-gib using standard handler preset from @ibgib/node-gib
@@ -89,7 +104,11 @@ async function main(): Promise<void> {
89
104
  });
90
105
 
91
106
  server.listen(PORT, '0.0.0.0', () => {
92
- console.log(`${lc} listening on http://0.0.0.0:${PORT}`);
107
+ console.log(`\n==========================================================`);
108
+ console.log(`${lc} space-gib server running behind reverse proxy.`);
109
+ console.log(`${lc} 🔒 Primary (Password-based): https://space-gib.localhost`);
110
+ console.log(`${lc} 🔑 OAuth2 (Google/GitHub SSO): https://local.ibgib.space`);
111
+ console.log(`==========================================================\n (I: 4397ee251dad3f29bae8d7aea0397126)`);
93
112
  });
94
113
 
95
114
  } catch (error) {
@@ -10,7 +10,8 @@
10
10
  "module": "ESNext",
11
11
  "lib": [
12
12
  "ES2022",
13
- "ES2023"
13
+ "ES2023",
14
+ "DOM"
14
15
  ],
15
16
  "types": ["node"]
16
17
  },
@@ -18,6 +19,9 @@
18
19
  "src/server/**/*.ts",
19
20
  "src/server/**/*.mts",
20
21
  "src/server/**/*.d.ts",
22
+ "src/client/ui/router/space-gib-router-types.mts",
23
+ "src/client/ui/router/space-gib-router-helpers.mts",
24
+ "src/client/ui/router/space-gib-router-helpers.respec.mts",
21
25
  "src/respec-gib.node.mts"
22
26
  ],
23
27
  "exclude": [
@@ -1 +0,0 @@
1
- import{F as I,Va as A,a as l,j as o,ka as i,la as G,nc as S,sd as _,w as u,yd as D,zd as T}from"./chunk-CIQUGV7U.mjs";var L={undefined:"undefined",preparing:"preparing",started:"started",inserted:"inserted",updated:"updated",merged_dna:"merged_dna",merged_state:"merged_state",already_synced:"already_synced",completed:"completed"},O={...G},U={...O,sync:"sync"};var v=" ";var C=!1;function x({sagaId:c,statusCode:e,spaceType:t,spaceSubtype:r,delimiter:s}){let n=`[${x.name}]`;try{if(!c)throw new Error("sagaId required. (E: cfc923bb29ee4aa788e947b6416740e6)");if(e==null)throw new Error("status code required. (E: 4e0d232a9955496695012623c2e17ca2)");if(!Object.values(L).includes(e))throw new Error(`invalid status code (${e}) (E: 91d7655424c44d9680fff099ee2b54d2)`);if(!t)throw new Error("spaceType required. (E: 86e98694a56a4f599e98e50abf0eed43)");if(!r)throw new Error("spaceSubtype required. (E: 4857d4677ee34e95aeb2251dd633909e)");return s=s||v,`status ${c} ${e} ${t} ${r}`}catch(a){throw console.error(`${n} ${o(a)}`),a}}l(x,"getStatusIb");function j({participants:c}){let e=`[${j.name}]`;try{C&&console.log(`${e} starting... (I: 43c9a4f1fa1bbc944b98f8eed2f81924)`);let t=c.filter(r=>r.s_d==="src");if(t.length!==1)throw new Error("(UNEXPECTED) participants_src.length !== 1? atow (03/2024) only one src participant is expected. (E: ed4b3ae15f5da34c77655553aaf82224)");return t.at(0).id}catch(t){throw console.error(`${e} ${o(t)}`),t}finally{C&&console.log(`${e} complete.`)}}l(j,"getSrcLocalSpaceId");var d=!1,P=class c extends _{static{l(this,"SpaceBase_V1")}lc=`[${c.name}]`;cacheSvc;constructor(e,t){super(e,t),this.initialized=this.initialize()}async witnessImpl(e){let t=`${this.lc}[${this.witnessImpl.name}]`;return d&&console.log(`${t}`),await this.routeAndDoCommand({cmd:e.data.cmd,cmdModifiers:e.data.cmdModifiers??[],arg:e})}routeAndDoCommand({cmd:e,cmdModifiers:t,arg:r}){let s=`${this.lc}[${this.routeAndDoCommand.name}]`;switch(e){case i.get:return(t??[]).length===0?this.get(r):t.includes("can")?this.canGet(r):t.includes("latest")?t.includes("addrs")?this.getLatestAddrs(r):this.getLatestIbGibs(r):t.includes("tjps")?t.includes("addrs")?this.getTjpAddrs(r):this.getTjpIbGibs(r):t.includes("addrs")?this.getAddrs(r):t.includes("dependency-graph")?this.getDependencyGraph(r):this.get(r);case i.put:return(t??[]).length===0?this.put(r):t.includes("can")?this.canPut(r):this.put(r);case i.delete:return(t??[]).length===0?this.delete(r):t.includes("can")?this.canDelete(r):this.delete(r);default:throw new Error(`${s} unknown cmd: ${e}. cmdModifiers: ${t}`)}}get(e){return this.getImpl(e)}put(e){return this.putImpl(e)}delete(e){return this.deleteImpl(e)}deleteImpl(e){let t=`${this.lc}[${this.deleteImpl.name}]`;throw new Error(`${t} not implemented in base class`)}getAddrs(e){return this.getAddrsImpl(e)}getAddrsImpl(e){let t=`${this.lc}[${this.getAddrsImpl.name}]`;throw new Error(`${t} not implemented in base class`)}getLatestIbGibs(e){return this.getLatestIbGibsImpl(e)}getLatestIbGibsImpl(e){let t=`${this.lc}[${this.getLatestIbGibsImpl.name}]`;throw new Error(`${t} not implemented in base class`)}getLatestAddrs(e){return this.getLatestAddrsImpl(e)}getLatestAddrsImpl(e){let t=`${this.lc}[${this.getLatestAddrsImpl.name}]`;throw new Error(`${t} not implemented in base class`)}getTjpIbGibs(e){return this.getTjpIbGibsImpl(e)}getTjpIbGibsImpl(e){let t=`${this.lc}[${this.getTjpIbGibsImpl.name}]`;throw new Error(`${t} not implemented in base class`)}getTjpAddrs(e){return this.getTjpAddrsImpl(e)}getTjpAddrsImpl(e){let t=`${this.lc}[${this.getTjpAddrsImpl.name}]`;throw new Error(`${t} not implemented in base class`)}canGet(e){return this.canGetImpl(e)}canGetImpl(e){let t=`${this.lc}[${this.canGetImpl.name}]`;throw new Error(`${t} not implemented in base class`)}canPut(e){return this.canPutImpl(e)}canPutImpl(e){let t=`${this.lc}[${this.canPutImpl.name}]`;throw new Error(`${t} not implemented in base class`)}canDelete(e){return this.canPutImpl(e)}canDeleteImpl(e){let t=`${this.lc}[${this.canDeleteImpl.name}]`;throw new Error(`${t} not implemented in base class`)}getDependencyGraph(e){return this.getDependencyGraphImpl(e)}async getDependencyGraphImpl(e){let t=`${this.lc}[${this.getDependencyGraphImpl.name}]`;try{if(d&&console.log(`${t} starting... (I: 0e5fe807a0169224781f6c2833f34826)`),!e.data)throw new Error("(UNEXPECTED) arg.data falsy? (E: 45eba816295a97a0e55f981861a03f26)");if((e.data.ibGibAddrs??[]).length===0)throw new Error("arg.data.ibGibAddrs is falsy/empty (E: 70adc939c7b80c9938d8fa18fd7c5826)");let r={space:this,ibGibAddrs:e.data.ibGibAddrs,live:e.data.live||!0},s=await S(r),n=Object.values(s),a={optsAddr:u({ibGib:e}),count:n.length,addrs:Object.keys(s)};return this.resulty({resultData:a,ibGibs:n})}catch(r){throw console.error(`${t} ${o(r)}`),r}finally{d&&console.log(`${t} complete.`)}}async validateWitnessArg(e){let t=`${this.lc}[${this.validateWitnessArg.name}]`,r=[];try{if(r=await super.validateWitnessArg(e),!e.data)return r.push("arg.data required (E: 8ee544d7d88a45c6adcbc15838a283a7)"),r;if(!this.data)return r.push("this.data required (E: 64f80642d7de44329355d6f907e272c8)"),r;let{cmd:s,ibGibAddrs:n}=e.data,a=e.data.cmdModifiers??[],f=e.ibGibs;s||r.push("arg.data.cmd required (E: 72a11ee87a0d4896bcacd65a9c0284d9)"),Object.values(i).includes(s)||r.push(`unknown arg.data.cmd: ${s}. (E: 95282ce61e97429f8049e61ec9f14f0b)`);let w=n?.length??0;if(s===i.get&&!a?.includes("addrs")&&!a?.includes("latest")&&w===0&&r.push(`ibGibAddrs required when cmd is ${s}. (E: ee55a3f60b90423cbe054f27c34ab7d5)`),s===i.put){d&&console.log(`${t} validate put cmd`);let g=f?.length??0;if(g===0)r.push(`ibGibs required when cmd is ${s}. (E: b3a422169f7344a48a1d44e7ad1ba44e)`);else if(this.data.validateIbGibAddrsMatchIbGibs)if(d&&console.log(`${t} validateIbGibAddrsMatchIbGibs true, so doing so.`),g!==w)r.push("ibGibsLength !== ibGibAddrsLength and this.data.validateIbGibAddrsMatchIbGibs is true. (E: 6c6bf824ab32443aa4d6b8bf4f8113dd)");else{d&&console.log(`${t} validateIbGibAddrsMatchIbGibs, lengths match. validating intrinsically`);let $=n.concat();for(let h=0;h<f.length;h++){let m=f[h],y=await I({ibGib:m});if(y?.length??!1){let p=u({ibGib:m});y.forEach(b=>r.push(`(${p}) ERROR: ${b}`))}else{let p=u({ibGib:m}),b=$.indexOf(p);if(b===-1){r.push(`ibGibAddrs don't map to calculated ibGib addrs. calculated Addr: (${p}) (E: b21b3a7a74db43e5a8722acc97274646)`);break}else $.splice(b,1)}}}}return r}catch(s){throw console.error(`${t} ${o(s)}`),s}finally{r?.length>0&&console.error(`${t} errors: ${r}`)}}async argy({argData:e,ibMetadata:t,noTimestamp:r,ibGibs:s}){let n=await D({argData:e,ibMetadata:t,noTimestamp:r});return s&&(n.ibGibs=s),n}async resulty({resultData:e,ibGibs:t}){let r=await T({ibMetadata:A({space:this}),resultData:e});return t&&(r.ibGibs=t),r}};export{P as a,L as b,x as c,j as d};