@portaidentity/cli 1.7.3 → 1.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (328) hide show
  1. package/CHANGELOG.md +5 -0
  2. package/README.md +125 -105
  3. package/dist/admin/admin-date-time.d.ts +6 -0
  4. package/dist/admin/admin-date-time.d.ts.map +1 -0
  5. package/dist/admin/admin-date-time.js +33 -0
  6. package/dist/admin/admin-date-time.js.map +1 -0
  7. package/dist/admin/application-client-features.d.ts +38 -0
  8. package/dist/admin/application-client-features.d.ts.map +1 -0
  9. package/dist/admin/application-client-features.js +545 -0
  10. package/dist/admin/application-client-features.js.map +1 -0
  11. package/dist/admin/application-controller.d.ts +58 -0
  12. package/dist/admin/application-controller.d.ts.map +1 -0
  13. package/dist/admin/application-controller.js +286 -0
  14. package/dist/admin/application-controller.js.map +1 -0
  15. package/dist/admin/application-dialogs.d.ts +91 -0
  16. package/dist/admin/application-dialogs.d.ts.map +1 -0
  17. package/dist/admin/application-dialogs.js +250 -0
  18. package/dist/admin/application-dialogs.js.map +1 -0
  19. package/dist/admin/application-rbac-controller.d.ts +56 -0
  20. package/dist/admin/application-rbac-controller.d.ts.map +1 -0
  21. package/dist/admin/application-rbac-controller.js +280 -0
  22. package/dist/admin/application-rbac-controller.js.map +1 -0
  23. package/dist/admin/application-rbac-features.d.ts +51 -0
  24. package/dist/admin/application-rbac-features.d.ts.map +1 -0
  25. package/dist/admin/application-rbac-features.js +175 -0
  26. package/dist/admin/application-rbac-features.js.map +1 -0
  27. package/dist/admin/application-rbac-workspace.d.ts +62 -0
  28. package/dist/admin/application-rbac-workspace.d.ts.map +1 -0
  29. package/dist/admin/application-rbac-workspace.js +344 -0
  30. package/dist/admin/application-rbac-workspace.js.map +1 -0
  31. package/dist/admin/application-runtime.d.ts +44 -0
  32. package/dist/admin/application-runtime.d.ts.map +1 -0
  33. package/dist/admin/application-runtime.js +183 -0
  34. package/dist/admin/application-runtime.js.map +1 -0
  35. package/dist/admin/application-service.d.ts +39 -0
  36. package/dist/admin/application-service.d.ts.map +1 -0
  37. package/dist/admin/application-service.js +248 -0
  38. package/dist/admin/application-service.js.map +1 -0
  39. package/dist/admin/application-state.d.ts +109 -0
  40. package/dist/admin/application-state.d.ts.map +1 -0
  41. package/dist/admin/application-state.js +3 -0
  42. package/dist/admin/application-state.js.map +1 -0
  43. package/dist/admin/application-workspace.d.ts +77 -0
  44. package/dist/admin/application-workspace.d.ts.map +1 -0
  45. package/dist/admin/application-workspace.js +302 -0
  46. package/dist/admin/application-workspace.js.map +1 -0
  47. package/dist/admin/application.d.ts +88 -0
  48. package/dist/admin/application.d.ts.map +1 -0
  49. package/dist/admin/application.js +932 -0
  50. package/dist/admin/application.js.map +1 -0
  51. package/dist/admin/client-authentication-dialog.d.ts +77 -0
  52. package/dist/admin/client-authentication-dialog.d.ts.map +1 -0
  53. package/dist/admin/client-authentication-dialog.js +217 -0
  54. package/dist/admin/client-authentication-dialog.js.map +1 -0
  55. package/dist/admin/client-controller.d.ts +58 -0
  56. package/dist/admin/client-controller.d.ts.map +1 -0
  57. package/dist/admin/client-controller.js +462 -0
  58. package/dist/admin/client-controller.js.map +1 -0
  59. package/dist/admin/client-credential-dialogs.d.ts +36 -0
  60. package/dist/admin/client-credential-dialogs.d.ts.map +1 -0
  61. package/dist/admin/client-credential-dialogs.js +145 -0
  62. package/dist/admin/client-credential-dialogs.js.map +1 -0
  63. package/dist/admin/client-dialogs.d.ts +64 -0
  64. package/dist/admin/client-dialogs.d.ts.map +1 -0
  65. package/dist/admin/client-dialogs.js +110 -0
  66. package/dist/admin/client-dialogs.js.map +1 -0
  67. package/dist/admin/client-form-scroller.d.ts +17 -0
  68. package/dist/admin/client-form-scroller.d.ts.map +1 -0
  69. package/dist/admin/client-form-scroller.js +67 -0
  70. package/dist/admin/client-form-scroller.js.map +1 -0
  71. package/dist/admin/client-registration-dialog.d.ts +27 -0
  72. package/dist/admin/client-registration-dialog.d.ts.map +1 -0
  73. package/dist/admin/client-registration-dialog.js +195 -0
  74. package/dist/admin/client-registration-dialog.js.map +1 -0
  75. package/dist/admin/client-service.d.ts +41 -0
  76. package/dist/admin/client-service.d.ts.map +1 -0
  77. package/dist/admin/client-service.js +484 -0
  78. package/dist/admin/client-service.js.map +1 -0
  79. package/dist/admin/client-state.d.ts +157 -0
  80. package/dist/admin/client-state.d.ts.map +1 -0
  81. package/dist/admin/client-state.js +3 -0
  82. package/dist/admin/client-state.js.map +1 -0
  83. package/dist/admin/client-workspace.d.ts +88 -0
  84. package/dist/admin/client-workspace.d.ts.map +1 -0
  85. package/dist/admin/client-workspace.js +484 -0
  86. package/dist/admin/client-workspace.js.map +1 -0
  87. package/dist/admin/delete-confirmation-layout.d.ts +38 -0
  88. package/dist/admin/delete-confirmation-layout.d.ts.map +1 -0
  89. package/dist/admin/delete-confirmation-layout.js +52 -0
  90. package/dist/admin/delete-confirmation-layout.js.map +1 -0
  91. package/dist/admin/index.d.ts +64 -0
  92. package/dist/admin/index.d.ts.map +1 -0
  93. package/dist/admin/index.js +31 -0
  94. package/dist/admin/index.js.map +1 -0
  95. package/dist/admin/organization-controller.d.ts +77 -0
  96. package/dist/admin/organization-controller.d.ts.map +1 -0
  97. package/dist/admin/organization-controller.js +472 -0
  98. package/dist/admin/organization-controller.js.map +1 -0
  99. package/dist/admin/organization-dialogs.d.ts +63 -0
  100. package/dist/admin/organization-dialogs.d.ts.map +1 -0
  101. package/dist/admin/organization-dialogs.js +303 -0
  102. package/dist/admin/organization-dialogs.js.map +1 -0
  103. package/dist/admin/organization-service.d.ts +110 -0
  104. package/dist/admin/organization-service.d.ts.map +1 -0
  105. package/dist/admin/organization-service.js +548 -0
  106. package/dist/admin/organization-service.js.map +1 -0
  107. package/dist/admin/organization-workspace.d.ts +29 -0
  108. package/dist/admin/organization-workspace.d.ts.map +1 -0
  109. package/dist/admin/organization-workspace.js +421 -0
  110. package/dist/admin/organization-workspace.js.map +1 -0
  111. package/dist/admin/portability-controller.d.ts +83 -0
  112. package/dist/admin/portability-controller.d.ts.map +1 -0
  113. package/dist/admin/portability-controller.js +466 -0
  114. package/dist/admin/portability-controller.js.map +1 -0
  115. package/dist/admin/portability-service.d.ts +31 -0
  116. package/dist/admin/portability-service.d.ts.map +1 -0
  117. package/dist/admin/portability-service.js +51 -0
  118. package/dist/admin/portability-service.js.map +1 -0
  119. package/dist/admin/portability-state.d.ts +88 -0
  120. package/dist/admin/portability-state.d.ts.map +1 -0
  121. package/dist/admin/portability-state.js +3 -0
  122. package/dist/admin/portability-state.js.map +1 -0
  123. package/dist/admin/portability-workspace.d.ts +78 -0
  124. package/dist/admin/portability-workspace.d.ts.map +1 -0
  125. package/dist/admin/portability-workspace.js +337 -0
  126. package/dist/admin/portability-workspace.js.map +1 -0
  127. package/dist/admin/presentation.d.ts +46 -0
  128. package/dist/admin/presentation.d.ts.map +1 -0
  129. package/dist/admin/presentation.js +271 -0
  130. package/dist/admin/presentation.js.map +1 -0
  131. package/dist/admin/rbac-dialogs.d.ts +73 -0
  132. package/dist/admin/rbac-dialogs.d.ts.map +1 -0
  133. package/dist/admin/rbac-dialogs.js +345 -0
  134. package/dist/admin/rbac-dialogs.js.map +1 -0
  135. package/dist/admin/rbac-service.d.ts +47 -0
  136. package/dist/admin/rbac-service.d.ts.map +1 -0
  137. package/dist/admin/rbac-service.js +258 -0
  138. package/dist/admin/rbac-service.js.map +1 -0
  139. package/dist/admin/rbac-state.d.ts +129 -0
  140. package/dist/admin/rbac-state.d.ts.map +1 -0
  141. package/dist/admin/rbac-state.js +136 -0
  142. package/dist/admin/rbac-state.js.map +1 -0
  143. package/dist/admin/selectable-read-only-input.d.ts +18 -0
  144. package/dist/admin/selectable-read-only-input.d.ts.map +1 -0
  145. package/dist/admin/selectable-read-only-input.js +24 -0
  146. package/dist/admin/selectable-read-only-input.js.map +1 -0
  147. package/dist/admin/session-service.d.ts +169 -0
  148. package/dist/admin/session-service.d.ts.map +1 -0
  149. package/dist/admin/session-service.js +353 -0
  150. package/dist/admin/session-service.js.map +1 -0
  151. package/dist/admin/state.d.ts +301 -0
  152. package/dist/admin/state.d.ts.map +1 -0
  153. package/dist/admin/state.js +10 -0
  154. package/dist/admin/state.js.map +1 -0
  155. package/dist/admin/system-config-controller.d.ts +58 -0
  156. package/dist/admin/system-config-controller.d.ts.map +1 -0
  157. package/dist/admin/system-config-controller.js +218 -0
  158. package/dist/admin/system-config-controller.js.map +1 -0
  159. package/dist/admin/system-config-service.d.ts +54 -0
  160. package/dist/admin/system-config-service.d.ts.map +1 -0
  161. package/dist/admin/system-config-service.js +180 -0
  162. package/dist/admin/system-config-service.js.map +1 -0
  163. package/dist/admin/system-config-state.d.ts +77 -0
  164. package/dist/admin/system-config-state.d.ts.map +1 -0
  165. package/dist/admin/system-config-state.js +78 -0
  166. package/dist/admin/system-config-state.js.map +1 -0
  167. package/dist/admin/system-config-workspace.d.ts +47 -0
  168. package/dist/admin/system-config-workspace.d.ts.map +1 -0
  169. package/dist/admin/system-config-workspace.js +217 -0
  170. package/dist/admin/system-config-workspace.js.map +1 -0
  171. package/dist/admin/user-controller-types.d.ts +67 -0
  172. package/dist/admin/user-controller-types.d.ts.map +1 -0
  173. package/dist/admin/user-controller-types.js +3 -0
  174. package/dist/admin/user-controller-types.js.map +1 -0
  175. package/dist/admin/user-controller.d.ts +6 -0
  176. package/dist/admin/user-controller.d.ts.map +1 -0
  177. package/dist/admin/user-controller.js +674 -0
  178. package/dist/admin/user-controller.js.map +1 -0
  179. package/dist/admin/user-dialog-fields.d.ts +44 -0
  180. package/dist/admin/user-dialog-fields.d.ts.map +1 -0
  181. package/dist/admin/user-dialog-fields.js +130 -0
  182. package/dist/admin/user-dialog-fields.js.map +1 -0
  183. package/dist/admin/user-dialogs.d.ts +66 -0
  184. package/dist/admin/user-dialogs.d.ts.map +1 -0
  185. package/dist/admin/user-dialogs.js +374 -0
  186. package/dist/admin/user-dialogs.js.map +1 -0
  187. package/dist/admin/user-role-controller.d.ts +82 -0
  188. package/dist/admin/user-role-controller.d.ts.map +1 -0
  189. package/dist/admin/user-role-controller.js +337 -0
  190. package/dist/admin/user-role-controller.js.map +1 -0
  191. package/dist/admin/user-role-dialog.d.ts +94 -0
  192. package/dist/admin/user-role-dialog.d.ts.map +1 -0
  193. package/dist/admin/user-role-dialog.js +265 -0
  194. package/dist/admin/user-role-dialog.js.map +1 -0
  195. package/dist/admin/user-service-types.d.ts +100 -0
  196. package/dist/admin/user-service-types.d.ts.map +1 -0
  197. package/dist/admin/user-service-types.js +3 -0
  198. package/dist/admin/user-service-types.js.map +1 -0
  199. package/dist/admin/user-service.d.ts +14 -0
  200. package/dist/admin/user-service.d.ts.map +1 -0
  201. package/dist/admin/user-service.js +612 -0
  202. package/dist/admin/user-service.js.map +1 -0
  203. package/dist/admin/user-state.d.ts +158 -0
  204. package/dist/admin/user-state.d.ts.map +1 -0
  205. package/dist/admin/user-state.js +3 -0
  206. package/dist/admin/user-state.js.map +1 -0
  207. package/dist/admin/user-workspace.d.ts +65 -0
  208. package/dist/admin/user-workspace.d.ts.map +1 -0
  209. package/dist/admin/user-workspace.js +366 -0
  210. package/dist/admin/user-workspace.js.map +1 -0
  211. package/dist/auth/browser-flow.d.ts +27 -1
  212. package/dist/auth/browser-flow.d.ts.map +1 -1
  213. package/dist/auth/browser-flow.js +55 -33
  214. package/dist/auth/browser-flow.js.map +1 -1
  215. package/dist/auth/callback-server.d.ts.map +1 -1
  216. package/dist/auth/callback-server.js +5 -9
  217. package/dist/auth/callback-server.js.map +1 -1
  218. package/dist/auth/id-token-verifier.d.ts +39 -0
  219. package/dist/auth/id-token-verifier.d.ts.map +1 -0
  220. package/dist/auth/id-token-verifier.js +104 -0
  221. package/dist/auth/id-token-verifier.js.map +1 -0
  222. package/dist/auth/login-coordinator.d.ts +72 -0
  223. package/dist/auth/login-coordinator.d.ts.map +1 -0
  224. package/dist/auth/login-coordinator.js +190 -0
  225. package/dist/auth/login-coordinator.js.map +1 -0
  226. package/dist/auth/metadata.d.ts +2 -1
  227. package/dist/auth/metadata.d.ts.map +1 -1
  228. package/dist/auth/metadata.js +67 -6
  229. package/dist/auth/metadata.js.map +1 -1
  230. package/dist/auth/types.d.ts +14 -0
  231. package/dist/auth/types.d.ts.map +1 -1
  232. package/dist/client-factory.d.ts.map +1 -1
  233. package/dist/client-factory.js +15 -2
  234. package/dist/client-factory.js.map +1 -1
  235. package/dist/commands/admin.d.ts +22 -0
  236. package/dist/commands/admin.d.ts.map +1 -0
  237. package/dist/commands/admin.js +112 -0
  238. package/dist/commands/admin.js.map +1 -0
  239. package/dist/commands/app-claim.d.ts.map +1 -1
  240. package/dist/commands/app-claim.js +11 -4
  241. package/dist/commands/app-claim.js.map +1 -1
  242. package/dist/commands/app-module.d.ts.map +1 -1
  243. package/dist/commands/app-module.js +61 -12
  244. package/dist/commands/app-module.js.map +1 -1
  245. package/dist/commands/app-permission.d.ts.map +1 -1
  246. package/dist/commands/app-permission.js +66 -24
  247. package/dist/commands/app-permission.js.map +1 -1
  248. package/dist/commands/app-role.d.ts.map +1 -1
  249. package/dist/commands/app-role.js +48 -27
  250. package/dist/commands/app-role.js.map +1 -1
  251. package/dist/commands/app.d.ts.map +1 -1
  252. package/dist/commands/app.js +37 -25
  253. package/dist/commands/app.js.map +1 -1
  254. package/dist/commands/bulk.d.ts.map +1 -1
  255. package/dist/commands/bulk.js +9 -2
  256. package/dist/commands/bulk.js.map +1 -1
  257. package/dist/commands/client-secret.d.ts.map +1 -1
  258. package/dist/commands/client-secret.js +12 -6
  259. package/dist/commands/client-secret.js.map +1 -1
  260. package/dist/commands/client.d.ts +3 -2
  261. package/dist/commands/client.d.ts.map +1 -1
  262. package/dist/commands/client.js +87 -43
  263. package/dist/commands/client.js.map +1 -1
  264. package/dist/commands/config.d.ts +4 -0
  265. package/dist/commands/config.d.ts.map +1 -1
  266. package/dist/commands/config.js +68 -7
  267. package/dist/commands/config.js.map +1 -1
  268. package/dist/commands/export.d.ts +6 -0
  269. package/dist/commands/export.d.ts.map +1 -0
  270. package/dist/commands/export.js +182 -0
  271. package/dist/commands/export.js.map +1 -0
  272. package/dist/commands/import.d.ts +6 -0
  273. package/dist/commands/import.d.ts.map +1 -0
  274. package/dist/commands/import.js +142 -0
  275. package/dist/commands/import.js.map +1 -0
  276. package/dist/commands/keys.d.ts.map +1 -1
  277. package/dist/commands/keys.js +11 -4
  278. package/dist/commands/keys.js.map +1 -1
  279. package/dist/commands/login.d.ts.map +1 -1
  280. package/dist/commands/login.js +24 -10
  281. package/dist/commands/login.js.map +1 -1
  282. package/dist/commands/org.d.ts +2 -4
  283. package/dist/commands/org.d.ts.map +1 -1
  284. package/dist/commands/org.js +16 -76
  285. package/dist/commands/org.js.map +1 -1
  286. package/dist/commands/user-role.d.ts.map +1 -1
  287. package/dist/commands/user-role.js +19 -14
  288. package/dist/commands/user-role.js.map +1 -1
  289. package/dist/commands/user.d.ts +3 -2
  290. package/dist/commands/user.d.ts.map +1 -1
  291. package/dist/commands/user.js +47 -71
  292. package/dist/commands/user.js.map +1 -1
  293. package/dist/commands/version.d.ts +1 -1
  294. package/dist/commands/version.js +1 -1
  295. package/dist/credential-lock.d.ts +20 -0
  296. package/dist/credential-lock.d.ts.map +1 -0
  297. package/dist/credential-lock.js +130 -0
  298. package/dist/credential-lock.js.map +1 -0
  299. package/dist/credential-store.d.ts +14 -0
  300. package/dist/credential-store.d.ts.map +1 -1
  301. package/dist/credential-store.js +114 -3
  302. package/dist/credential-store.js.map +1 -1
  303. package/dist/error-handler.d.ts.map +1 -1
  304. package/dist/error-handler.js +2 -0
  305. package/dist/error-handler.js.map +1 -1
  306. package/dist/global-options.d.ts +8 -0
  307. package/dist/global-options.d.ts.map +1 -1
  308. package/dist/global-options.js +19 -8
  309. package/dist/global-options.js.map +1 -1
  310. package/dist/index.js +7 -5
  311. package/dist/index.js.map +1 -1
  312. package/dist/output.d.ts +11 -0
  313. package/dist/output.d.ts.map +1 -1
  314. package/dist/output.js +25 -6
  315. package/dist/output.js.map +1 -1
  316. package/dist/prompt.d.ts +2 -2
  317. package/dist/prompt.d.ts.map +1 -1
  318. package/dist/prompt.js +27 -7
  319. package/dist/prompt.js.map +1 -1
  320. package/package.json +7 -3
  321. package/dist/commands/gui.d.ts +0 -21
  322. package/dist/commands/gui.d.ts.map +0 -1
  323. package/dist/commands/gui.js +0 -67
  324. package/dist/commands/gui.js.map +0 -1
  325. package/dist/commands/provision.d.ts +0 -47
  326. package/dist/commands/provision.d.ts.map +0 -1
  327. package/dist/commands/provision.js +0 -444
  328. package/dist/commands/provision.js.map +0 -1
@@ -0,0 +1,38 @@
1
+ /** Shared bounded layout for irreversible Admin UI confirmation dialogs. */
2
+ import { Button, col, Scroller } from '@jsvision/ui';
3
+ /** Inputs required to render one complete deletion target and its fixed cascade warning. */
4
+ export interface DeleteConfirmationLayoutOptions {
5
+ /** Live dialog width, already capped to the terminal viewport. */
6
+ readonly dialogWidth: number;
7
+ /** Complete target and parent context retained for vertical inspection. */
8
+ readonly details: string;
9
+ /** Short affected-data warning kept visible above the action row. */
10
+ readonly warning: string;
11
+ /** Safe default action. */
12
+ readonly keep: Button;
13
+ /** Destructive action whose face may be clipped on a narrow terminal. */
14
+ readonly remove: Button;
15
+ }
16
+ /** Result used by a dialog to mount the layout and explicitly restore safe initial focus. */
17
+ export interface DeleteConfirmationLayout {
18
+ /** Complete Layout DSL tree. */
19
+ readonly content: ReturnType<typeof col>;
20
+ /** Scrollable target details that remain inspectable on a small terminal. */
21
+ readonly details: Scroller;
22
+ }
23
+ /**
24
+ * Returns a destructive button label that fits the confirmation row while retaining its action.
25
+ *
26
+ * The complete target remains available in the scrollable details; only the redundant button copy
27
+ * is shortened.
28
+ */
29
+ export declare function deleteActionLabel(target: string, dialogWidth: number): string;
30
+ /**
31
+ * Builds a compact confirmation layout without truncating the authoritative target text.
32
+ *
33
+ * The cascade warning remains visible while long target details scroll vertically. Button bounds
34
+ * are capped to the available row, and only the redundant target copy in an oversized destructive
35
+ * label is shortened with an ellipsis.
36
+ */
37
+ export declare function deleteConfirmationLayout(options: DeleteConfirmationLayoutOptions): DeleteConfirmationLayout;
38
+ //# sourceMappingURL=delete-confirmation-layout.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete-confirmation-layout.d.ts","sourceRoot":"","sources":["../../src/admin/delete-confirmation-layout.ts"],"names":[],"mappings":"AAAA,4EAA4E;AAE5E,OAAO,EAEL,MAAM,EACN,GAAG,EAKH,QAAQ,EAKT,MAAM,cAAc,CAAC;AAEtB,4FAA4F;AAC5F,MAAM,WAAW,+BAA+B;IAC9C,kEAAkE;IAClE,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,2EAA2E;IAC3E,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,qEAAqE;IACrE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,2BAA2B;IAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,yEAAyE;IACzE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,6FAA6F;AAC7F,MAAM,WAAW,wBAAwB;IACvC,gCAAgC;IAChC,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC,OAAO,GAAG,CAAC,CAAC;IACzC,6EAA6E;IAC7E,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC;CAC5B;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAiB7E;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,+BAA+B,GACvC,wBAAwB,CAsB1B"}
@@ -0,0 +1,52 @@
1
+ /** Shared bounded layout for irreversible Admin UI confirmation dialogs. */
2
+ import { at, Button, col, fixed, Group, grow, row, Scroller, spacer, stringWidth, Text, wrapText, } from '@jsvision/ui';
3
+ /**
4
+ * Returns a destructive button label that fits the confirmation row while retaining its action.
5
+ *
6
+ * The complete target remains available in the scrollable details; only the redundant button copy
7
+ * is shortened.
8
+ */
9
+ export function deleteActionLabel(target, dialogWidth) {
10
+ const full = `Delete ${target}`;
11
+ const contentWidth = Math.max(1, dialogWidth - 6);
12
+ const keepWidth = new Button('Keep').measure().width;
13
+ const maximumButtonWidth = Math.max(1, contentWidth - keepWidth - 2);
14
+ const chromeWidth = new Button('').measure().width;
15
+ const maximumTextWidth = Math.max(1, maximumButtonWidth - chromeWidth);
16
+ if (stringWidth(full) <= maximumTextWidth)
17
+ return full;
18
+ const prefix = 'Delete ';
19
+ const targetWidth = Math.max(0, maximumTextWidth - stringWidth(prefix) - 1);
20
+ let clippedTarget = '';
21
+ for (const character of target) {
22
+ if (stringWidth(clippedTarget + character) > targetWidth)
23
+ break;
24
+ clippedTarget += character;
25
+ }
26
+ return `${prefix}${clippedTarget}…`;
27
+ }
28
+ /**
29
+ * Builds a compact confirmation layout without truncating the authoritative target text.
30
+ *
31
+ * The cascade warning remains visible while long target details scroll vertically. Button bounds
32
+ * are capped to the available row, and only the redundant target copy in an oversized destructive
33
+ * label is shortened with an ellipsis.
34
+ */
35
+ export function deleteConfirmationLayout(options) {
36
+ const contentWidth = Math.max(1, options.dialogWidth - 6);
37
+ const detailsWidth = Math.max(1, contentWidth - 1);
38
+ const detailsHeight = Math.max(1, wrapText(options.details, detailsWidth).length);
39
+ const detailsContent = new Group();
40
+ detailsContent.add(at(new Text(options.details), 0, 0, detailsWidth, detailsHeight));
41
+ const details = new Scroller({
42
+ content: detailsContent,
43
+ extent: { width: detailsWidth, height: detailsHeight },
44
+ scrollbars: 'vertical',
45
+ });
46
+ const warningHeight = Math.max(1, wrapText(options.warning, contentWidth).length);
47
+ return {
48
+ content: col({ gap: 1, padding: { top: 1, right: 2, bottom: 1, left: 2 } }, fixed(new Text(options.warning), warningHeight), grow(details), fixed(row({ gap: 1 }, spacer(), options.keep, options.remove), 2)),
49
+ details,
50
+ };
51
+ }
52
+ //# sourceMappingURL=delete-confirmation-layout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete-confirmation-layout.js","sourceRoot":"","sources":["../../src/admin/delete-confirmation-layout.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,64 @@
1
+ /** Public entry point for the administration application owned by the CLI. */
2
+ export { runAdminApplication } from './application.js';
3
+ export type { AdminApplicationOptions, AdminApplicationSession, AdminExitCode, } from './application.js';
4
+ export { showCreateOrganizationDialog, showOrganizationChooser, showWhoAmIDialog, } from './organization-dialogs.js';
5
+ export type { AuthenticatedAdminState, CreateOrganizationDialogResult, OrganizationChoiceResult, OrganizationChooserOptions, } from './organization-dialogs.js';
6
+ export { ADMIN_COMMANDS } from './presentation.js';
7
+ export type { AdminCapabilities, AdminConnectionState, AdminFailureKind, AdminOrganizationContext, AdminOrganizationFailureKind, AdminPublicFailure, } from './state.js';
8
+ export { createAdminUserOperations } from './user-service.js';
9
+ export { createAdminUserController } from './user-controller.js';
10
+ export type { AdminUserController, AdminUserControllerDialogs, AdminUserControllerOptions, } from './user-controller.js';
11
+ export { showCreateUserDialog, showEditUserDialog, showInviteUserDialog, showDeleteUserDialog, showSetUserPasswordDialog, showUserConfirmationDialog, } from './user-dialogs.js';
12
+ export type { AdminUserDialogHost, CreateUserDialogResult, EditUserDialogResult, InviteUserDialogResult, DeleteUserDialogResult, SetUserPasswordDialogResult, UserConfirmationAction, UserConfirmationDialogResult, } from './user-dialogs.js';
13
+ export type { AdminCreateUserInput, AdminInviteUserInput, AdminInvitedUser, AdminSetPasswordInput, AdminUserDetailResult, AdminUserListRequest, AdminUserMutationResult, AdminUserOperations, AdminUserReadResult, } from './user-service.js';
14
+ export type { AdminInvitationPreview, AdminUserDetail, AdminUserFailureKind, AdminUserHistory, AdminUserHistoryEntry, AdminUserListItem, AdminUserOutcome, AdminUserPage, AdminUserProjection, AdminUserSelection, AdminUserStatus, AdminUserViewState, } from './user-state.js';
15
+ export { createAdminUserWorkspace } from './user-workspace.js';
16
+ export type { AdminUserIntent, AdminUserWorkspace, AdminUserWorkspaceOptions, } from './user-workspace.js';
17
+ export { createAdminUserRoleController, openAdminUserRoleWorkflow, } from './user-role-controller.js';
18
+ export type { AdminUserRoleContext, AdminUserRoleController, AdminUserRoleControllerOptions, AdminUserRoleOperations, AdminUserRoleWorkflow, AdminUserRoleWorkflowOptions, } from './user-role-controller.js';
19
+ export { createAdminUserRoleDialog } from './user-role-dialog.js';
20
+ export type { AdminAssignedUserRole, AdminUserRoleDialog, AdminUserRoleDialogOptions, AdminUserRoleIntent, AdminUserRoleReadyProjection, AdminUserRoleViewState, } from './user-role-dialog.js';
21
+ export { createAdminApplicationOperations } from './application-service.js';
22
+ export type { AdminApplicationOperations } from './application-service.js';
23
+ export { createAdminApplicationController } from './application-controller.js';
24
+ export type { AdminApplicationController, AdminApplicationControllerOptions, } from './application-controller.js';
25
+ export type { AdminApplication, AdminApplicationDetailProjection, AdminApplicationFailureKind, AdminApplicationListProjection, AdminApplicationModule, AdminApplicationModuleStatus, AdminApplicationMutationResult, AdminApplicationProjection, AdminApplicationReadResult, AdminApplicationStatus, AdminApplicationViewState, } from './application-state.js';
26
+ export { createAdminApplicationWorkspace } from './application-workspace.js';
27
+ export type { AdminApplicationIntent, AdminApplicationWorkspace, AdminApplicationWorkspaceOptions, } from './application-workspace.js';
28
+ export { createAdminApplicationRbacController } from './application-rbac-controller.js';
29
+ export type { AdminApplicationRbacContext, AdminApplicationRbacController, AdminApplicationRbacControllerOptions, } from './application-rbac-controller.js';
30
+ export { createAdminApplicationRbacFeatures } from './application-rbac-features.js';
31
+ export type { AdminApplicationRbacFeatures, AdminApplicationRbacFeaturesOptions, AdminApplicationRbacSelection, } from './application-rbac-features.js';
32
+ export { createAdminApplicationRbacWorkspace } from './application-rbac-workspace.js';
33
+ export type { AdminApplicationRbacIntent, AdminApplicationRbacWorkspace, AdminApplicationRbacWorkspaceOptions, } from './application-rbac-workspace.js';
34
+ export { showCreatePermissionDialog, showCreateRoleDialog, showDeletePermissionDialog, showDeleteRoleDialog, showEditPermissionDialog, showEditRoleDialog, showManageRolePermissionsDialog, } from './rbac-dialogs.js';
35
+ export type { CreatePermissionDialogResult, CreateRoleDialogResult, DeletePermissionDialogResult, DeleteRoleDialogResult, EditPermissionDialogResult, EditRoleDialogResult, ManageRolePermissionsDialogResult, } from './rbac-dialogs.js';
36
+ export { showApplicationLifecycleDialog, showCreateApplicationDialog, showCreateModuleDialog, showEditApplicationDialog, showEditModuleDialog, showModuleDeactivationDialog, } from './application-dialogs.js';
37
+ export type { AdminApplicationDialogHost, ApplicationLifecycleAction, ApplicationLifecycleDialogResult, CreateApplicationDialogResult, CreateModuleDialogResult, EditApplicationDialogResult, EditModuleDialogResult, ModuleDeactivationDialogResult, } from './application-dialogs.js';
38
+ export { createAdminClientOperations } from './client-service.js';
39
+ export type { AdminClientCreateResult, AdminClientOperations } from './client-service.js';
40
+ export { createAdminClientController } from './client-controller.js';
41
+ export type { AdminClientController, AdminClientControllerOptions } from './client-controller.js';
42
+ export type { AdminClient, AdminClientDetailProjection, AdminClientFailureKind, AdminClientListProjection, AdminClientMutationResult, AdminClientProjection, AdminClientReadResult, AdminClientSecret, AdminClientSecretPresentation, AdminClientStatus, AdminClientViewState, AdminGeneratedClientSecret, } from './client-state.js';
43
+ export { createAdminClientWorkspace } from './client-workspace.js';
44
+ export type { AdminClientIntent, AdminClientWorkspace, AdminClientWorkspaceOptions, } from './client-workspace.js';
45
+ export { AUTHENTICATION_URL_CHOICES, authenticationUrlRows, buildAuthenticationUrlUpdate, showAuthenticationUrlDialog, showDeleteAuthenticationUrlDialog, showClientLifecycleDialog, showClientRegistrationDialog, showDeleteClientDialog, showEditClientNameDialog, showGenerateClientSecretDialog, showOneTimeClientSecretDialog, showRevokeClientSecretDialog, } from './client-dialogs.js';
46
+ export { createAdminApplicationClientFeatures } from './application-client-features.js';
47
+ export type { AdminApplicationClientFeatures, AdminApplicationClientFeaturesOptions, } from './application-client-features.js';
48
+ export { createAdminPortabilityController, PORTABILITY_COMMAND } from './portability-controller.js';
49
+ export type { AdminPortabilityController, AdminPortabilityControllerHost, AdminPortabilityControllerOptions, AdminPortabilityDialogs, AdminPortabilityFiles, } from './portability-controller.js';
50
+ export { createAdminPortabilityOperations } from './portability-service.js';
51
+ export { createAdminSystemConfigController, SYSTEM_CONFIG_COMMAND, } from './system-config-controller.js';
52
+ export type { AdminSystemConfigController, AdminSystemConfigControllerHost, AdminSystemConfigControllerOptions, } from './system-config-controller.js';
53
+ export { ADMIN_CONFIG_KEYS, createAdminSystemConfigOperations, isAdminConfigKey, isAdminConfigValue, validateAdminConfigEntries, } from './system-config-service.js';
54
+ export type { AdminConfigFailure, AdminConfigReadResult, AdminConfigMutationResult, AdminSystemConfigOperations, } from './system-config-service.js';
55
+ export { formatAdminConfigDuration, parseAdminConfigDraft, projectAdminConfigDrafts, setAdminConfigDraft, } from './system-config-state.js';
56
+ export type { AdminSystemConfigIntent, AdminSystemConfigReadyState, AdminSystemConfigWorkspaceState, AdminSystemConfigDraftProjection, } from './system-config-state.js';
57
+ export { createAdminSystemConfigWorkspace, SYSTEM_CONFIG_MINIMUM_SIZE, } from './system-config-workspace.js';
58
+ export type { AdminSystemConfigCapabilities, AdminSystemConfigWorkspace, AdminSystemConfigWorkspaceOptions, } from './system-config-workspace.js';
59
+ export type { AdminPortabilityOperations } from './portability-service.js';
60
+ export { createAdminPortabilityWorkspace } from './portability-workspace.js';
61
+ export type { AdminPortabilityCapabilities, AdminPortabilityWorkspace, AdminPortabilityWorkspaceOptions, } from './portability-workspace.js';
62
+ export type { AdminPortabilityAppliedResult, AdminPortabilityExportSelection, AdminPortabilityFeedback, AdminPortabilityImportMode, AdminPortabilityImportSelection, AdminPortabilityIntent, AdminPortabilityPendingOperation, AdminPortabilityWorkspaceState, } from './portability-state.js';
63
+ export type { AdminAuthenticationUrlRow, AuthenticationUrlChoice, AuthenticationUrlDialogResult, AuthenticationUrlDraft, AuthenticationUrlKind, AuthenticationUrlMutation, AdminClientRegistrationDialogHost, AdminClientRegistrationDialogOptions, AdminClientRegistrationDialogResult, AdminClientDialogHost, ClientAuthenticationDialogHost, DeleteAuthenticationUrlDialogResult, ClientCredentialDialogHost, ClientLifecycleDialogResult, DeleteClientDialogResult, EditClientNameDialogResult, GenerateClientSecretDialogResult, RevokeClientSecretDialogResult, } from './client-dialogs.js';
64
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/admin/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,31 @@
1
+ /** Public entry point for the administration application owned by the CLI. */
2
+ export { runAdminApplication } from './application.js';
3
+ export { showCreateOrganizationDialog, showOrganizationChooser, showWhoAmIDialog, } from './organization-dialogs.js';
4
+ export { ADMIN_COMMANDS } from './presentation.js';
5
+ export { createAdminUserOperations } from './user-service.js';
6
+ export { createAdminUserController } from './user-controller.js';
7
+ export { showCreateUserDialog, showEditUserDialog, showInviteUserDialog, showDeleteUserDialog, showSetUserPasswordDialog, showUserConfirmationDialog, } from './user-dialogs.js';
8
+ export { createAdminUserWorkspace } from './user-workspace.js';
9
+ export { createAdminUserRoleController, openAdminUserRoleWorkflow, } from './user-role-controller.js';
10
+ export { createAdminUserRoleDialog } from './user-role-dialog.js';
11
+ export { createAdminApplicationOperations } from './application-service.js';
12
+ export { createAdminApplicationController } from './application-controller.js';
13
+ export { createAdminApplicationWorkspace } from './application-workspace.js';
14
+ export { createAdminApplicationRbacController } from './application-rbac-controller.js';
15
+ export { createAdminApplicationRbacFeatures } from './application-rbac-features.js';
16
+ export { createAdminApplicationRbacWorkspace } from './application-rbac-workspace.js';
17
+ export { showCreatePermissionDialog, showCreateRoleDialog, showDeletePermissionDialog, showDeleteRoleDialog, showEditPermissionDialog, showEditRoleDialog, showManageRolePermissionsDialog, } from './rbac-dialogs.js';
18
+ export { showApplicationLifecycleDialog, showCreateApplicationDialog, showCreateModuleDialog, showEditApplicationDialog, showEditModuleDialog, showModuleDeactivationDialog, } from './application-dialogs.js';
19
+ export { createAdminClientOperations } from './client-service.js';
20
+ export { createAdminClientController } from './client-controller.js';
21
+ export { createAdminClientWorkspace } from './client-workspace.js';
22
+ export { AUTHENTICATION_URL_CHOICES, authenticationUrlRows, buildAuthenticationUrlUpdate, showAuthenticationUrlDialog, showDeleteAuthenticationUrlDialog, showClientLifecycleDialog, showClientRegistrationDialog, showDeleteClientDialog, showEditClientNameDialog, showGenerateClientSecretDialog, showOneTimeClientSecretDialog, showRevokeClientSecretDialog, } from './client-dialogs.js';
23
+ export { createAdminApplicationClientFeatures } from './application-client-features.js';
24
+ export { createAdminPortabilityController, PORTABILITY_COMMAND } from './portability-controller.js';
25
+ export { createAdminPortabilityOperations } from './portability-service.js';
26
+ export { createAdminSystemConfigController, SYSTEM_CONFIG_COMMAND, } from './system-config-controller.js';
27
+ export { ADMIN_CONFIG_KEYS, createAdminSystemConfigOperations, isAdminConfigKey, isAdminConfigValue, validateAdminConfigEntries, } from './system-config-service.js';
28
+ export { formatAdminConfigDuration, parseAdminConfigDraft, projectAdminConfigDrafts, setAdminConfigDraft, } from './system-config-state.js';
29
+ export { createAdminSystemConfigWorkspace, SYSTEM_CONFIG_MINIMUM_SIZE, } from './system-config-workspace.js';
30
+ export { createAdminPortabilityWorkspace } from './portability-workspace.js';
31
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/admin/index.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAE9E,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAMvD,OAAO,EACL,4BAA4B,EAC5B,uBAAuB,EACvB,gBAAgB,GACjB,MAAM,2BAA2B,CAAC;AAOnC,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AASnD,OAAO,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AAMjE,OAAO,EACL,oBAAoB,EACpB,kBAAkB,EAClB,oBAAoB,EACpB,oBAAoB,EACpB,yBAAyB,EACzB,0BAA0B,GAC3B,MAAM,mBAAmB,CAAC;AAoC3B,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAM/D,OAAO,EACL,6BAA6B,EAC7B,yBAAyB,GAC1B,MAAM,2BAA2B,CAAC;AASnC,OAAO,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AASlE,OAAO,EAAE,gCAAgC,EAAE,MAAM,0BAA0B,CAAC;AAE5E,OAAO,EAAE,gCAAgC,EAAE,MAAM,6BAA6B,CAAC;AAkB/E,OAAO,EAAE,+BAA+B,EAAE,MAAM,4BAA4B,CAAC;AAM7E,OAAO,EAAE,oCAAoC,EAAE,MAAM,kCAAkC,CAAC;AAMxF,OAAO,EAAE,kCAAkC,EAAE,MAAM,gCAAgC,CAAC;AAMpF,OAAO,EAAE,mCAAmC,EAAE,MAAM,iCAAiC,CAAC;AAMtF,OAAO,EACL,0BAA0B,EAC1B,oBAAoB,EACpB,0BAA0B,EAC1B,oBAAoB,EACpB,wBAAwB,EACxB,kBAAkB,EAClB,+BAA+B,GAChC,MAAM,mBAAmB,CAAC;AAU3B,OAAO,EACL,8BAA8B,EAC9B,2BAA2B,EAC3B,sBAAsB,EACtB,yBAAyB,EACzB,oBAAoB,EACpB,4BAA4B,GAC7B,MAAM,0BAA0B,CAAC;AAWlC,OAAO,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAC;AAElE,OAAO,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AAgBrE,OAAO,EAAE,0BAA0B,EAAE,MAAM,uBAAuB,CAAC;AAMnE,OAAO,EACL,0BAA0B,EAC1B,qBAAqB,EACrB,4BAA4B,EAC5B,2BAA2B,EAC3B,iCAAiC,EACjC,yBAAyB,EACzB,4BAA4B,EAC5B,sBAAsB,EACtB,wBAAwB,EACxB,8BAA8B,EAC9B,6BAA6B,EAC7B,4BAA4B,GAC7B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,oCAAoC,EAAE,MAAM,kCAAkC,CAAC;AAKxF,OAAO,EAAE,gCAAgC,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAQpG,OAAO,EAAE,gCAAgC,EAAE,MAAM,0BAA0B,CAAC;AAC5E,OAAO,EACL,iCAAiC,EACjC,qBAAqB,GACtB,MAAM,+BAA+B,CAAC;AAMvC,OAAO,EACL,iBAAiB,EACjB,iCAAiC,EACjC,gBAAgB,EAChB,kBAAkB,EAClB,0BAA0B,GAC3B,MAAM,4BAA4B,CAAC;AAOpC,OAAO,EACL,yBAAyB,EACzB,qBAAqB,EACrB,wBAAwB,EACxB,mBAAmB,GACpB,MAAM,0BAA0B,CAAC;AAOlC,OAAO,EACL,gCAAgC,EAChC,0BAA0B,GAC3B,MAAM,8BAA8B,CAAC;AAOtC,OAAO,EAAE,+BAA+B,EAAE,MAAM,4BAA4B,CAAC"}
@@ -0,0 +1,77 @@
1
+ /** Operation ownership for the selected-organization management workspace. */
2
+ import type { OpenFileOptions } from '@jsvision/files';
3
+ import type { EventLoop, ModalDialogHost, View } from '@jsvision/ui';
4
+ import type { AdminOrganizationWorkspaceOperations } from './organization-service.js';
5
+ import type { AdminConnectionState, AdminOrganizationIntent, AdminOrganizationSettings, AdminOrganizationWorkspaceState } from './state.js';
6
+ /** Command value shared with the Organizations menu. */
7
+ export declare const MANAGE_ORGANIZATION_COMMAND = "manage-organization";
8
+ /** Minimal mounted workspace contract owned by the controller. */
9
+ export interface AdminOrganizationWorkspace {
10
+ /** Content mounted into the existing administration presentation. */
11
+ readonly content: View;
12
+ /** Replaces the complete immutable workspace state. */
13
+ readonly setState: (state: AdminOrganizationWorkspaceState) => void;
14
+ /** Restores focus within the current tab. */
15
+ readonly focusCurrent: () => void;
16
+ /** Releases retained bindings and state. */
17
+ readonly clear?: () => void;
18
+ }
19
+ /** Construction values supplied to the direct organization workspace. */
20
+ export interface AdminOrganizationWorkspaceOptions {
21
+ /** Capabilities from the current verified session. */
22
+ readonly capabilities: Extract<AdminConnectionState, {
23
+ readonly kind: 'authenticated';
24
+ }>['capabilities'];
25
+ /** Receives only closed organization intents; the controller owns remote work. */
26
+ readonly onIntent: (intent: AdminOrganizationIntent) => void;
27
+ /** Focuses a mounted view through the owning application loop. */
28
+ readonly focusView?: (view: View) => void;
29
+ /** Reports a direct modeless-window close to the controller. */
30
+ readonly onClose?: () => void;
31
+ }
32
+ /** Modal host needed for focused lifecycle and asset confirmations. */
33
+ export interface AdminOrganizationControllerHost extends ModalDialogHost {
34
+ /** Event loop operations used by the focused dialogs. */
35
+ readonly loop: ModalDialogHost['loop'] & Pick<EventLoop, 'focusView'>;
36
+ }
37
+ /** Dependencies for one direct selected-organization controller. */
38
+ export interface AdminOrganizationControllerOptions {
39
+ /** Existing JSVision application host. */
40
+ readonly host: AdminOrganizationControllerHost;
41
+ /** Reads the latest application-owned session and organization context. */
42
+ readonly readState: () => AdminConnectionState;
43
+ /** Reads the focused organization operations for the current verified session. */
44
+ readonly readOperations: () => AdminOrganizationWorkspaceOperations | undefined;
45
+ /** Mounts or removes only the organization workspace. */
46
+ readonly mountWorkspace: (content: View | null) => void;
47
+ /** Enters the existing reauthentication flow after a final session failure. */
48
+ readonly requestAuthentication: () => void;
49
+ /** Constructs the direct workspace; tests may inject a deterministic implementation. */
50
+ readonly workspaceFactory: (options: AdminOrganizationWorkspaceOptions) => AdminOrganizationWorkspace;
51
+ /** Opens the native file picker; injectable only for deterministic tests. */
52
+ readonly openFile?: (options: OpenFileOptions) => Promise<string | null | undefined>;
53
+ /** Reads the selected file bytes; injectable only for deterministic tests. */
54
+ readonly readFile?: (path: string) => Promise<Uint8Array>;
55
+ /** Reconciles selected-organization fields after an authoritative reload. */
56
+ readonly onOrganizationChange?: (organization: AdminOrganizationSettings) => void;
57
+ /** Refreshes application command availability after a direct window close. */
58
+ readonly onWorkspaceClosed?: () => void;
59
+ }
60
+ /** Application-owned organization workspace boundary. */
61
+ export interface AdminOrganizationController {
62
+ /** Applies the latest organization and verified-session epoch. */
63
+ readonly syncContext: (state: AdminConnectionState, sessionEpoch: number) => void;
64
+ /** Handles the recognized top-level Manage command. */
65
+ readonly handleCommand: (command: string) => boolean;
66
+ /** Handles a workspace intent without exposing asynchronous ownership to the view. */
67
+ readonly handleIntent: (intent: AdminOrganizationIntent) => void;
68
+ /** Returns whether this controller currently owns a workspace. */
69
+ readonly isOpen: () => boolean;
70
+ /** Closes the current workspace while retaining the reusable controller. */
71
+ readonly close: () => void;
72
+ /** Cancels current ownership and removes the workspace. */
73
+ readonly dispose: () => void;
74
+ }
75
+ /** Creates the small controller for one active organization at a time. */
76
+ export declare function createAdminOrganizationController(options: AdminOrganizationControllerOptions): AdminOrganizationController;
77
+ //# sourceMappingURL=organization-controller.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"organization-controller.d.ts","sourceRoot":"","sources":["../../src/admin/organization-controller.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAK9E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAYvD,OAAO,KAAK,EAAE,SAAS,EAAE,eAAe,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAErE,OAAO,KAAK,EAAE,oCAAoC,EAAE,MAAM,2BAA2B,CAAC;AACtF,OAAO,KAAK,EACV,oBAAoB,EAGpB,uBAAuB,EACvB,yBAAyB,EAGzB,+BAA+B,EAEhC,MAAM,YAAY,CAAC;AAEpB,wDAAwD;AACxD,eAAO,MAAM,2BAA2B,wBAAwB,CAAC;AAEjE,kEAAkE;AAClE,MAAM,WAAW,0BAA0B;IACzC,qEAAqE;IACrE,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC;IACvB,uDAAuD;IACvD,QAAQ,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,+BAA+B,KAAK,IAAI,CAAC;IACpE,6CAA6C;IAC7C,QAAQ,CAAC,YAAY,EAAE,MAAM,IAAI,CAAC;IAClC,4CAA4C;IAC5C,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,IAAI,CAAC;CAC7B;AAED,yEAAyE;AACzE,MAAM,WAAW,iCAAiC;IAChD,sDAAsD;IACtD,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC,oBAAoB,EAAE;QAAE,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAA;KAAE,CAAC,CAAC,cAAc,CAAC,CAAC;IACzG,kFAAkF;IAClF,QAAQ,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,uBAAuB,KAAK,IAAI,CAAC;IAC7D,kEAAkE;IAClE,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;IAC1C,gEAAgE;IAChE,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CAC/B;AAED,uEAAuE;AACvE,MAAM,WAAW,+BAAgC,SAAQ,eAAe;IACtE,yDAAyD;IACzD,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;CACvE;AAED,oEAAoE;AACpE,MAAM,WAAW,kCAAkC;IACjD,0CAA0C;IAC1C,QAAQ,CAAC,IAAI,EAAE,+BAA+B,CAAC;IAC/C,2EAA2E;IAC3E,QAAQ,CAAC,SAAS,EAAE,MAAM,oBAAoB,CAAC;IAC/C,kFAAkF;IAClF,QAAQ,CAAC,cAAc,EAAE,MAAM,oCAAoC,GAAG,SAAS,CAAC;IAChF,yDAAyD;IACzD,QAAQ,CAAC,cAAc,EAAE,CAAC,OAAO,EAAE,IAAI,GAAG,IAAI,KAAK,IAAI,CAAC;IACxD,+EAA+E;IAC/E,QAAQ,CAAC,qBAAqB,EAAE,MAAM,IAAI,CAAC;IAC3C,wFAAwF;IACxF,QAAQ,CAAC,gBAAgB,EAAE,CACzB,OAAO,EAAE,iCAAiC,KACvC,0BAA0B,CAAC;IAChC,6EAA6E;IAC7E,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,eAAe,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,CAAC;IACrF,8EAA8E;IAC9E,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,UAAU,CAAC,CAAC;IAC1D,6EAA6E;IAC7E,QAAQ,CAAC,oBAAoB,CAAC,EAAE,CAAC,YAAY,EAAE,yBAAyB,KAAK,IAAI,CAAC;IAClF,8EAA8E;IAC9E,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,IAAI,CAAC;CACzC;AAED,yDAAyD;AACzD,MAAM,WAAW,2BAA2B;IAC1C,kEAAkE;IAClE,QAAQ,CAAC,WAAW,EAAE,CAAC,KAAK,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,KAAK,IAAI,CAAC;IAClF,uDAAuD;IACvD,QAAQ,CAAC,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC;IACrD,sFAAsF;IACtF,QAAQ,CAAC,YAAY,EAAE,CAAC,MAAM,EAAE,uBAAuB,KAAK,IAAI,CAAC;IACjE,kEAAkE;IAClE,QAAQ,CAAC,MAAM,EAAE,MAAM,OAAO,CAAC;IAC/B,4EAA4E;IAC5E,QAAQ,CAAC,KAAK,EAAE,MAAM,IAAI,CAAC;IAC3B,2DAA2D;IAC3D,QAAQ,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC;CAC9B;AA6FD,0EAA0E;AAC1E,wBAAgB,iCAAiC,CAC/C,OAAO,EAAE,kCAAkC,GAC1C,2BAA2B,CAmc7B"}