@underdogai/mesh-event-schemas 0.1.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 (53) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +62 -0
  3. package/dist/apppacks.d.ts +15652 -0
  4. package/dist/apppacks.d.ts.map +1 -0
  5. package/dist/apppacks.js +71 -0
  6. package/dist/apppacks.js.map +1 -0
  7. package/dist/blocks.d.ts +2320 -0
  8. package/dist/blocks.d.ts.map +1 -0
  9. package/dist/blocks.js +472 -0
  10. package/dist/blocks.js.map +1 -0
  11. package/dist/capabilities.d.ts +35 -0
  12. package/dist/capabilities.d.ts.map +1 -0
  13. package/dist/capabilities.js +37 -0
  14. package/dist/capabilities.js.map +1 -0
  15. package/dist/events.d.ts +4557 -0
  16. package/dist/events.d.ts.map +1 -0
  17. package/dist/events.js +571 -0
  18. package/dist/events.js.map +1 -0
  19. package/dist/index.d.ts +16 -0
  20. package/dist/index.d.ts.map +1 -0
  21. package/dist/index.js +16 -0
  22. package/dist/index.js.map +1 -0
  23. package/dist/namespace.d.ts +56 -0
  24. package/dist/namespace.d.ts.map +1 -0
  25. package/dist/namespace.js +60 -0
  26. package/dist/namespace.js.map +1 -0
  27. package/dist/plugins.d.ts +131 -0
  28. package/dist/plugins.d.ts.map +1 -0
  29. package/dist/plugins.js +66 -0
  30. package/dist/plugins.js.map +1 -0
  31. package/dist/registry.d.ts +67 -0
  32. package/dist/registry.d.ts.map +1 -0
  33. package/dist/registry.js +212 -0
  34. package/dist/registry.js.map +1 -0
  35. package/dist/surfaces.d.ts +54323 -0
  36. package/dist/surfaces.d.ts.map +1 -0
  37. package/dist/surfaces.js +523 -0
  38. package/dist/surfaces.js.map +1 -0
  39. package/dist/templates.d.ts +390 -0
  40. package/dist/templates.d.ts.map +1 -0
  41. package/dist/templates.js +493 -0
  42. package/dist/templates.js.map +1 -0
  43. package/package.json +50 -0
  44. package/src/apppacks.ts +90 -0
  45. package/src/blocks.ts +544 -0
  46. package/src/capabilities.ts +58 -0
  47. package/src/events.ts +758 -0
  48. package/src/index.ts +15 -0
  49. package/src/namespace.ts +64 -0
  50. package/src/plugins.ts +118 -0
  51. package/src/registry.ts +261 -0
  52. package/src/surfaces.ts +610 -0
  53. package/src/templates.ts +736 -0
@@ -0,0 +1,390 @@
1
+ /**
2
+ * Composite 템플릿 — 프리미티브 블록을 조합한 고수준 카드 빌더 (작성자 DX).
3
+ *
4
+ * 작성자는 매번 블록 트리를 손으로 쌓지 않고 templates.approval(...) 처럼 의도 단위로 만든다.
5
+ * registerTemplate() 로 작성자가 자기 템플릿을 등록할 수도 있다(클라이언트 릴리스 불필요 —
6
+ * 템플릿은 프리미티브로 "확장"되어 기존 렌더러가 그대로 그린다).
7
+ */
8
+ import { type TaskSummary, type UiCardContent } from "./events.js";
9
+ import type { Block, ButtonStyle, Tone } from "./blocks.js";
10
+ export type Template<P = unknown> = (params: P) => UiCardContent;
11
+ export declare function registerTemplate<P>(name: string, fn: Template<P>): void;
12
+ export declare function hasTemplate(name: string): boolean;
13
+ export declare function renderTemplate(name: string, params: unknown): UiCardContent;
14
+ export interface ApprovalParams {
15
+ card_id: string;
16
+ title?: string;
17
+ fields: {
18
+ label: string;
19
+ value: string;
20
+ short?: boolean;
21
+ }[];
22
+ note?: boolean;
23
+ approveText?: string;
24
+ rejectText?: string;
25
+ confirm?: boolean;
26
+ context?: UiCardContent["context"];
27
+ }
28
+ declare function approval(p: ApprovalParams): UiCardContent;
29
+ export interface MultiApprovalParams {
30
+ card_id: string;
31
+ title?: string;
32
+ /** 요청 요약 필드(금액·대상 등). */
33
+ fields?: {
34
+ label: string;
35
+ value: string;
36
+ short?: boolean;
37
+ }[];
38
+ /** 순차 승인자 목록(순서대로). status 미지정 시 pending(아직 결재 전). */
39
+ approvers: {
40
+ name: string;
41
+ status?: "approved" | "rejected" | "active" | "pending";
42
+ note?: string;
43
+ }[];
44
+ /** 통과에 필요한 최소 승인 수(미지정 시 approvers 전원). */
45
+ required?: number;
46
+ /** 진행 안내/메모(markdown). */
47
+ note?: string;
48
+ /** 액션(미지정 시 Approve/Reject 기본). 종료 상태면 호출부에서 [] 전달해 숨긴다. */
49
+ actions?: ActionDef[];
50
+ state?: UiCardContent["state"];
51
+ context?: UiCardContent["context"];
52
+ }
53
+ /**
54
+ * 다단계 승인 카드 (HITL) — 0/N 승인 카운터(metric) + 순차 승인자 타임라인(steps) + 액션.
55
+ * approval.request/.decision 이벤트의 표시면. 승인자 status 가 done/active/error/todo 로 매핑되고
56
+ * approved/required 카운터가 진행도를 보여준다(색-only 회피: 숫자 병기).
57
+ */
58
+ declare function multiApproval(p: MultiApprovalParams): UiCardContent;
59
+ export interface TaskListParams {
60
+ card_id: string;
61
+ title?: string;
62
+ /** summarizeTasks(creates, updates) 의 결과 — 카운트/공정률을 손으로 박지 않고 데이터로 받는다. */
63
+ summary: TaskSummary;
64
+ actions?: ActionDef[];
65
+ state?: UiCardContent["state"];
66
+ context?: UiCardContent["context"];
67
+ }
68
+ /**
69
+ * 작업 진척 카드 (C층 프리미티브) — task.* 이벤트에서 파생한 TaskSummary 를 0/N metric + 전체 progress +
70
+ * 작업별 steps 로 렌더. 공정률·카운트는 모두 summary(데이터)에서 오고 카드는 손데이터를 만들지 않는다
71
+ * (done_when "진척도 실데이터"). 상태는 단계 note 에 텍스트로 병기(접근성). multiApproval(0/N)·checklist 와 동형.
72
+ */
73
+ declare function taskList(p: TaskListParams): UiCardContent;
74
+ export interface WizardParams {
75
+ card_id: string;
76
+ title?: string;
77
+ steps: {
78
+ title?: string;
79
+ blocks: Block[];
80
+ }[];
81
+ submitId?: string;
82
+ submitText?: string;
83
+ }
84
+ declare function wizard(p: WizardParams): UiCardContent;
85
+ export interface ListParams {
86
+ card_id: string;
87
+ title?: string;
88
+ columns: string[];
89
+ rows: string[][];
90
+ }
91
+ declare function list(p: ListParams): UiCardContent;
92
+ export interface ProgressParams {
93
+ card_id: string;
94
+ title?: string;
95
+ value?: number;
96
+ label?: string;
97
+ steps?: {
98
+ label: string;
99
+ status?: "done" | "active" | "todo" | "error";
100
+ note?: string;
101
+ }[];
102
+ state?: UiCardContent["state"];
103
+ }
104
+ declare function progress(p: ProgressParams): UiCardContent;
105
+ export interface InfoParams {
106
+ card_id: string;
107
+ title?: string;
108
+ badge?: {
109
+ text: string;
110
+ tone?: "neutral" | "success" | "warning" | "danger" | "info";
111
+ };
112
+ fields: {
113
+ label: string;
114
+ value: string;
115
+ short?: boolean;
116
+ }[];
117
+ note?: string;
118
+ context?: UiCardContent["context"];
119
+ }
120
+ /** 정보/조사 결과 카드 — (선택) badge + 키-값 fields + (선택) 메모 텍스트. */
121
+ declare function info(p: InfoParams): UiCardContent;
122
+ export interface DocParams {
123
+ card_id: string;
124
+ title?: string;
125
+ fileName: string;
126
+ fileMeta?: string;
127
+ summary?: string;
128
+ previewId?: string;
129
+ previewText?: string;
130
+ context?: UiCardContent["context"];
131
+ }
132
+ /** 문서/파일 카드 — 파일명·메타 fields + (선택) 요약 + 미리보기 액션. */
133
+ declare function doc(p: DocParams): UiCardContent;
134
+ export interface PlanParams {
135
+ card_id: string;
136
+ title?: string;
137
+ value?: number;
138
+ label?: string;
139
+ steps: {
140
+ label: string;
141
+ status?: "done" | "active" | "todo" | "error";
142
+ note?: string;
143
+ }[];
144
+ context?: UiCardContent["context"];
145
+ }
146
+ /** 에이전트 실행 계획 카드 — progress + steps 타임라인 (Agent Plan). */
147
+ declare function plan(p: PlanParams): UiCardContent;
148
+ export interface FormParams {
149
+ card_id: string;
150
+ title?: string;
151
+ /** input/radio/select/checkbox/text 등 임의 블록 — 마지막에 제출 액션이 붙는다. */
152
+ blocks: Block[];
153
+ submitId?: string;
154
+ submitText?: string;
155
+ context?: UiCardContent["context"];
156
+ }
157
+ /** 단일 단계 입력 폼 카드 — 임의 입력 블록 + 제출 액션(마법사 wizard 와 달리 단일 화면). */
158
+ declare function form(p: FormParams): UiCardContent;
159
+ export interface ScorecardParams {
160
+ card_id: string;
161
+ title?: string;
162
+ progress?: number;
163
+ progressLabel?: string;
164
+ /** 기준(DoD) 체크리스트 */
165
+ criteria?: {
166
+ label: string;
167
+ done: boolean;
168
+ }[];
169
+ /** 임팩트 지표 */
170
+ metrics?: {
171
+ label: string;
172
+ value: string;
173
+ target?: string;
174
+ delta?: string;
175
+ tone?: Tone;
176
+ }[];
177
+ context?: UiCardContent["context"];
178
+ }
179
+ /** 진척도·임팩트 스코어카드 — 공정률(progress) + 기준 체크리스트 + 임팩트 KPI(metric). */
180
+ declare function scorecard(p: ScorecardParams): UiCardContent;
181
+ /** 액션 버튼 정의(템플릿 공용). */
182
+ export type ActionDef = {
183
+ action_id: string;
184
+ text: string;
185
+ style?: ButtonStyle;
186
+ value?: string;
187
+ };
188
+ export interface ContactCardParams {
189
+ card_id: string;
190
+ title?: string;
191
+ name: string;
192
+ /** 직함/역할(아바타 보조텍스트). */
193
+ role?: string;
194
+ status?: "online" | "away" | "busy" | "offline";
195
+ fields?: {
196
+ label: string;
197
+ value: string;
198
+ short?: boolean;
199
+ }[];
200
+ /** 연결된 엔티티(예: CRM 리드) 칩. */
201
+ ref?: {
202
+ entity?: string;
203
+ label: string;
204
+ url?: string;
205
+ };
206
+ actions?: ActionDef[];
207
+ context?: UiCardContent["context"];
208
+ }
209
+ /** 인물 카드 — 아바타 + 연락 fields + (선택) 엔티티 칩 + 액션. */
210
+ declare function contactCard(p: ContactCardParams): UiCardContent;
211
+ export interface DigestParams {
212
+ card_id: string;
213
+ title?: string;
214
+ summary: string;
215
+ /** 핵심 포인트(불릿). */
216
+ points?: string[];
217
+ /** 출처 — 칩/링크. */
218
+ sources?: {
219
+ label: string;
220
+ url?: string;
221
+ }[];
222
+ actions?: ActionDef[];
223
+ context?: UiCardContent["context"];
224
+ }
225
+ /** AI 브리핑 카드 — 요약 + 포인트 + 출처 칩 + 액션. */
226
+ declare function digest(p: DigestParams): UiCardContent;
227
+ export interface IncidentParams {
228
+ card_id: string;
229
+ title?: string;
230
+ /** 심각도 라벨(예: "SEV1"). */
231
+ severity?: string;
232
+ /** 심각도 톤(기본 warning). */
233
+ tone?: Tone;
234
+ summary?: string;
235
+ fields?: {
236
+ label: string;
237
+ value: string;
238
+ short?: boolean;
239
+ }[];
240
+ steps?: {
241
+ label: string;
242
+ status?: "done" | "active" | "todo" | "error";
243
+ note?: string;
244
+ }[];
245
+ actions?: ActionDef[];
246
+ context?: UiCardContent["context"];
247
+ }
248
+ /** 인시던트 카드 — 심각도 콜아웃 + 메타 fields + 대응 steps + 액션. */
249
+ declare function incident(p: IncidentParams): UiCardContent;
250
+ export interface KpiGridParams {
251
+ card_id: string;
252
+ title?: string;
253
+ metrics: {
254
+ label: string;
255
+ value: string;
256
+ target?: string;
257
+ delta?: string;
258
+ tone?: Tone;
259
+ }[];
260
+ /** 선택 차트(추세). */
261
+ chart?: {
262
+ variant: "sparkline" | "bar" | "line" | "donut";
263
+ data: {
264
+ label?: string;
265
+ value: number;
266
+ tone?: Tone;
267
+ }[];
268
+ caption?: string;
269
+ unit?: string;
270
+ };
271
+ context?: UiCardContent["context"];
272
+ }
273
+ /** KPI 그리드 카드 — metric 묶음 + (선택) 추세 차트. */
274
+ declare function kpiGrid(p: KpiGridParams): UiCardContent;
275
+ export interface InvoiceParams {
276
+ card_id: string;
277
+ title?: string;
278
+ number?: string;
279
+ vendor?: string;
280
+ amount: string;
281
+ due?: string;
282
+ /** 상태 배지(예: {label:"Pending", tone:"warning"}). */
283
+ status?: {
284
+ label: string;
285
+ tone?: Tone;
286
+ };
287
+ /** 액션(미지정 시 Approve/Reject 기본). */
288
+ actions?: ActionDef[];
289
+ context?: UiCardContent["context"];
290
+ }
291
+ /** 송장 카드 — 금액·기한 등 fields + (선택) 상태 배지 + 승인/반려 액션. */
292
+ declare function invoice(p: InvoiceParams): UiCardContent;
293
+ export interface EstimateParams {
294
+ card_id: string;
295
+ title?: string;
296
+ lines: {
297
+ label: string;
298
+ qty?: string;
299
+ amount: string;
300
+ }[];
301
+ total?: string;
302
+ note?: string;
303
+ actions?: ActionDef[];
304
+ context?: UiCardContent["context"];
305
+ }
306
+ /** 견적 카드 — 라인아이템 table + (선택) 합계 metric + 액션. */
307
+ declare function estimate(p: EstimateParams): UiCardContent;
308
+ export interface ComparisonParams {
309
+ card_id: string;
310
+ title?: string;
311
+ /** 비교 대상 열 제목(예: ["Plan A","Plan B"]). */
312
+ options: string[];
313
+ /** 각 기준 행: label + 옵션 수만큼의 값. */
314
+ rows: {
315
+ label: string;
316
+ values: string[];
317
+ }[];
318
+ context?: UiCardContent["context"];
319
+ }
320
+ /** 비교 카드 — A vs B 표(첫 열=기준, 나머지=옵션 값). */
321
+ declare function comparison(p: ComparisonParams): UiCardContent;
322
+ export interface ChecklistParams {
323
+ card_id: string;
324
+ title?: string;
325
+ items: {
326
+ label: string;
327
+ done?: boolean;
328
+ note?: string;
329
+ }[];
330
+ /** 담당자(아바타로 표시). */
331
+ owner?: string;
332
+ context?: UiCardContent["context"];
333
+ }
334
+ /** 체크리스트 카드 — (선택) 담당 아바타 + 진행률 progress + 항목 steps(done/todo). */
335
+ declare function checklist(p: ChecklistParams): UiCardContent;
336
+ export interface MeetingParams {
337
+ card_id: string;
338
+ title?: string;
339
+ agenda?: string;
340
+ when?: string;
341
+ duration?: string;
342
+ attendees?: string[];
343
+ /** 시간 후보(라디오). 미지정 시 즉시 확정 버튼만. */
344
+ options?: {
345
+ label: string;
346
+ value: string;
347
+ }[];
348
+ confirmText?: string;
349
+ context?: UiCardContent["context"];
350
+ }
351
+ /** 회의 카드 — 안건/일시 fields + 참석자 avatarGroup + (선택) 시간 후보 radio + 확정 액션. */
352
+ declare function meeting(p: MeetingParams): UiCardContent;
353
+ export interface ErrorRecoveryParams {
354
+ card_id: string;
355
+ title?: string;
356
+ message: string;
357
+ /** 기술 상세(코드/로그). */
358
+ detail?: string;
359
+ retryText?: string;
360
+ escalateText?: string;
361
+ context?: UiCardContent["context"];
362
+ }
363
+ /** 오류 복구 카드 — danger 콜아웃 + (선택) 상세 code + Retry/Escalate 액션. */
364
+ declare function errorRecovery(p: ErrorRecoveryParams): UiCardContent;
365
+ /** 내장 템플릿 모음 (타입드 SDK 진입점). */
366
+ export declare const templates: {
367
+ approval: typeof approval;
368
+ multiApproval: typeof multiApproval;
369
+ taskList: typeof taskList;
370
+ wizard: typeof wizard;
371
+ list: typeof list;
372
+ progress: typeof progress;
373
+ info: typeof info;
374
+ doc: typeof doc;
375
+ plan: typeof plan;
376
+ form: typeof form;
377
+ scorecard: typeof scorecard;
378
+ contactCard: typeof contactCard;
379
+ digest: typeof digest;
380
+ incident: typeof incident;
381
+ kpiGrid: typeof kpiGrid;
382
+ invoice: typeof invoice;
383
+ estimate: typeof estimate;
384
+ comparison: typeof comparison;
385
+ checklist: typeof checklist;
386
+ meeting: typeof meeting;
387
+ errorRecovery: typeof errorRecovery;
388
+ };
389
+ export {};
390
+ //# sourceMappingURL=templates.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"templates.d.ts","sourceRoot":"","sources":["../src/templates.ts"],"names":[],"mappings":"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"}