@pc-nexus/models 0.5.0-next.26 → 0.5.0-next.28

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.
@@ -1 +1 @@
1
- {"version":3,"file":"pc-nexus-models.mjs","sources":["../../../../web/models/src/environment.ts","../../../../web/models/src/locale.ts","../../../../web/models/src/navigation.ts","../../../../web/models/src/notify.ts","../../../../web/models/src/richtext.ts","../../../../web/models/src/view.ts","../../../../web/models/src/workitem.ts","../../../../web/models/src/public-api.ts","../../../../web/models/src/pc-nexus-models.ts"],"sourcesContent":["export enum NexusAppEnvironment {\n Development = \"development\",\n Production = \"production\",\n}\n","export const SUPPORTED_LOCALE_CODES = [\"zh-CN\", \"en-US\"] as const;\n\nexport type SupportedLocaleCode = (typeof SUPPORTED_LOCALE_CODES)[number];\n\nexport interface Translator {\n translate: (key: string, params?: Record<string, any>) => TranslationsResourceContent | string;\n}\nexport interface GetTranslationsResult {\n locale: SupportedLocaleCode;\n translations: TranslationsResourceContent | null;\n}\n\nexport interface TranslationsResourceContent {\n [key: string]: string | TranslationsResourceContent;\n}\n","export enum NavigationTarget {\n Workitem = \"workitem\",\n Testcase = \"testcase\",\n Page = \"page\",\n Idea = \"idea\",\n Ticket = \"ticket\",\n Project = \"project\",\n Library = \"library\",\n Space = \"space\",\n Product = \"product\",\n}\n\ninterface NavigationTargetParams {\n target: NavigationTarget;\n id: string;\n}\n\nexport type NavigationLocation = NavigationTargetParams;\n","export enum NotifyType {\n Success = \"success\",\n Error = \"error\",\n Warning = \"warning\",\n Info = \"info\",\n}\n\nexport interface NotifyOptions {\n type: NotifyType;\n title?: string;\n description?: string;\n detail?: string | NotifyDetail;\n actions?: NotifyAction[];\n isAutoClose?: boolean;\n}\n\nexport interface NotifyRef {\n readonly close: () => void;\n}\n\nexport interface NotifyDetail {\n link?: string;\n content?: string;\n}\n\nexport interface NotifyAction {\n text: string;\n icon?: string;\n onClick: (event?: Event) => void;\n}\n","export const NEXUS_CONTENT_UPDATE_EVENT = \"nexus:content:update\";\nexport const NEXUS_CONTENT_CHANGE_EVENT = \"nexus:content:change\";\nexport const NEXUS_CONFIG_READY_EVENT = \"nexus:config:ready\";\n\nexport interface RichtextText {\n text: string;\n [key: string]: unknown;\n}\n\nexport interface RichtextElement {\n type: string;\n children: (RichtextDescendant | RichtextText)[];\n [key: string]: unknown;\n}\n\nexport type RichtextDescendant = RichtextElement;\nexport type RichtextContent = RichtextDescendant[];\n\nexport interface RichtextRendererRef {\n readonly iframe: HTMLIFrameElement;\n readonly update: (content: RichtextContent) => void;\n}\n\nexport interface RichtextEditorRef extends RichtextRendererRef {\n readonly destroy: () => void;\n}\n\nexport interface RichtextRendererOptions {\n content?: RichtextContent;\n}\n\nexport interface RichtextEditorOptions extends RichtextRendererOptions {\n onContentChange?: (content: RichtextContent) => void;\n}\n\nexport interface RichtextBridgeMessage {\n type: string;\n content?: any;\n timestamp?: number;\n source?: string;\n readonly?: boolean;\n}\n","export enum HistoryAction {\n Pop = \"POP\",\n Push = \"PUSH\",\n Replace = \"REPLACE\",\n}\n\nexport interface LocationDescriptor {\n pathname: string;\n search?: string;\n hash?: string;\n state?: unknown;\n}\n\nexport type UnlistenCallback = () => void;\n\nexport interface NexusHistory {\n action: HistoryAction;\n location: LocationDescriptor;\n push(path: string, state?: unknown): void;\n push(location: LocationDescriptor): void;\n replace(path: string, state?: unknown): void;\n replace(location: LocationDescriptor): void;\n go(n: number): void;\n back(): void;\n forward(): void;\n listen(listener: (location: LocationDescriptor, action: HistoryAction) => void): Promise<UnlistenCallback>;\n}\n","export enum WorkitemTypeGroup {\n Requirement = 1,\n Task = 2,\n Bug = 3,\n Issue = 4,\n Plan = 5,\n}\n\nexport interface Workitem {\n id: string;\n short_id: string;\n identifier: string;\n title: string;\n type_group?: WorkitemTypeGroup;\n type_id?: string;\n}\n\nexport interface WorkitemOpenCreateOptions {\n defaultValues?: {\n title?: string;\n project_id?: string;\n description?: string;\n };\n onSuccess?: (payload: Workitem) => void;\n}\n","/*\n * Public API Surface of models\n */\n\nexport * from \"./context\";\nexport * from \"./condition\";\nexport * from \"./dialog\";\nexport * from \"./environment\";\nexport * from \"./events\";\nexport * from \"./extension\";\nexport * from \"./invoke\";\nexport * from \"./locale\";\nexport * from \"./navigation\";\nexport * from \"./notify\";\nexport * from \"./processor\";\nexport * from \"./api\";\nexport * from \"./remote\";\nexport * from \"./richtext\";\nexport * from \"./user\";\nexport * from \"./view\";\nexport * from \"./viewport\";\nexport * from \"./workitem\";\nexport * from \"./idea\";\nexport * from \"./testcase\";\nexport * from \"./ticket\";\nexport * from \"./page\";\nexport * from \"./store\";\nexport * from \"./baseline\";\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"IAAY;AAAZ,CAAA,UAAY,mBAAmB,EAAA;AAC3B,IAAA,mBAAA,CAAA,aAAA,CAAA,GAAA,aAA2B;AAC3B,IAAA,mBAAA,CAAA,YAAA,CAAA,GAAA,YAAyB;AAC7B,CAAC,EAHW,mBAAmB,KAAnB,mBAAmB,GAAA,EAAA,CAAA,CAAA;;MCAlB,sBAAsB,GAAG,CAAC,OAAO,EAAE,OAAO;;ICA3C;AAAZ,CAAA,UAAY,gBAAgB,EAAA;AACxB,IAAA,gBAAA,CAAA,UAAA,CAAA,GAAA,UAAqB;AACrB,IAAA,gBAAA,CAAA,UAAA,CAAA,GAAA,UAAqB;AACrB,IAAA,gBAAA,CAAA,MAAA,CAAA,GAAA,MAAa;AACb,IAAA,gBAAA,CAAA,MAAA,CAAA,GAAA,MAAa;AACb,IAAA,gBAAA,CAAA,QAAA,CAAA,GAAA,QAAiB;AACjB,IAAA,gBAAA,CAAA,SAAA,CAAA,GAAA,SAAmB;AACnB,IAAA,gBAAA,CAAA,SAAA,CAAA,GAAA,SAAmB;AACnB,IAAA,gBAAA,CAAA,OAAA,CAAA,GAAA,OAAe;AACf,IAAA,gBAAA,CAAA,SAAA,CAAA,GAAA,SAAmB;AACvB,CAAC,EAVW,gBAAgB,KAAhB,gBAAgB,GAAA,EAAA,CAAA,CAAA;;ICAhB;AAAZ,CAAA,UAAY,UAAU,EAAA;AAClB,IAAA,UAAA,CAAA,SAAA,CAAA,GAAA,SAAmB;AACnB,IAAA,UAAA,CAAA,OAAA,CAAA,GAAA,OAAe;AACf,IAAA,UAAA,CAAA,SAAA,CAAA,GAAA,SAAmB;AACnB,IAAA,UAAA,CAAA,MAAA,CAAA,GAAA,MAAa;AACjB,CAAC,EALW,UAAU,KAAV,UAAU,GAAA,EAAA,CAAA,CAAA;;ACAf,MAAM,0BAA0B,GAAG;AACnC,MAAM,0BAA0B,GAAG;AACnC,MAAM,wBAAwB,GAAG;;ICF5B;AAAZ,CAAA,UAAY,aAAa,EAAA;AACrB,IAAA,aAAA,CAAA,KAAA,CAAA,GAAA,KAAW;AACX,IAAA,aAAA,CAAA,MAAA,CAAA,GAAA,MAAa;AACb,IAAA,aAAA,CAAA,SAAA,CAAA,GAAA,SAAmB;AACvB,CAAC,EAJW,aAAa,KAAb,aAAa,GAAA,EAAA,CAAA,CAAA;;ICAb;AAAZ,CAAA,UAAY,iBAAiB,EAAA;AACzB,IAAA,iBAAA,CAAA,iBAAA,CAAA,aAAA,CAAA,GAAA,CAAA,CAAA,GAAA,aAAe;AACf,IAAA,iBAAA,CAAA,iBAAA,CAAA,MAAA,CAAA,GAAA,CAAA,CAAA,GAAA,MAAQ;AACR,IAAA,iBAAA,CAAA,iBAAA,CAAA,KAAA,CAAA,GAAA,CAAA,CAAA,GAAA,KAAO;AACP,IAAA,iBAAA,CAAA,iBAAA,CAAA,OAAA,CAAA,GAAA,CAAA,CAAA,GAAA,OAAS;AACT,IAAA,iBAAA,CAAA,iBAAA,CAAA,MAAA,CAAA,GAAA,CAAA,CAAA,GAAA,MAAQ;AACZ,CAAC,EANW,iBAAiB,KAAjB,iBAAiB,GAAA,EAAA,CAAA,CAAA;;ACA7B;;AAEG;;ACFH;;AAEG;;;;"}
1
+ {"version":3,"file":"pc-nexus-models.mjs","sources":["../../../../web/models/src/environment.ts","../../../../web/models/src/locale.ts","../../../../web/models/src/navigation.ts","../../../../web/models/src/notify.ts","../../../../web/models/src/richtext.ts","../../../../web/models/src/view.ts","../../../../web/models/src/workitem.ts","../../../../web/models/src/public-api.ts","../../../../web/models/src/pc-nexus-models.ts"],"sourcesContent":["export enum NexusAppEnvironment {\n Development = \"development\",\n Production = \"production\",\n}\n","export const SUPPORTED_LOCALE_CODES = [\"zh-CN\", \"en-US\"] as const;\n\nexport type SupportedLocaleCode = (typeof SUPPORTED_LOCALE_CODES)[number];\n\nexport interface Translator {\n translate: (key: string, params?: Record<string, any>) => TranslationsResourceContent | string;\n}\nexport interface GetTranslationsResult {\n locale: SupportedLocaleCode;\n translations: TranslationsResourceContent | null;\n}\n\nexport interface TranslationsResourceContent {\n [key: string]: string | TranslationsResourceContent;\n}\n","export enum NavigationTarget {\n Workitem = \"workitem\",\n Testcase = \"testcase\",\n Page = \"page\",\n Idea = \"idea\",\n Ticket = \"ticket\",\n Project = \"project\",\n Library = \"library\",\n Space = \"space\",\n Product = \"product\",\n}\n\ninterface NavigationTargetParams {\n target: NavigationTarget;\n id: string;\n}\n\nexport type NavigationLocation = NavigationTargetParams;\n","export enum NotifyType {\n Success = \"success\",\n Error = \"error\",\n Warning = \"warning\",\n Info = \"info\",\n}\n\nexport interface NotifyOptions {\n type: NotifyType;\n title?: string;\n description?: string;\n detail?: string | NotifyDetail;\n actions?: NotifyAction[];\n isAutoClose?: boolean;\n}\n\nexport interface NotifyRef {\n readonly close: () => void;\n}\n\nexport interface NotifyDetail {\n link?: string;\n content?: string;\n}\n\nexport interface NotifyAction {\n text: string;\n icon?: string;\n onClick: (event?: Event) => void;\n}\n","export const NEXUS_CONTENT_UPDATE_EVENT = \"nexus:content:update\";\nexport const NEXUS_CONTENT_CHANGE_EVENT = \"nexus:content:change\";\nexport const NEXUS_CONFIG_READY_EVENT = \"nexus:config:ready\";\n\nexport interface RichtextText {\n text: string;\n [key: string]: unknown;\n}\n\nexport interface RichtextElement {\n type: string;\n children: (RichtextDescendant | RichtextText)[];\n [key: string]: unknown;\n}\n\nexport type RichtextDescendant = RichtextElement;\nexport type RichtextContent = RichtextDescendant[];\n\nexport interface RichtextRendererRef {\n readonly iframe: HTMLIFrameElement;\n readonly update: (content: RichtextContent) => void;\n}\n\nexport interface RichtextEditorRef extends RichtextRendererRef {\n readonly destroy: () => void;\n}\n\nexport interface RichtextRendererOptions {\n content?: RichtextContent;\n}\n\nexport interface RichtextEditorOptions extends RichtextRendererOptions {\n onContentChange?: (content: RichtextContent) => void;\n}\n\nexport interface RichtextBridgeMessage {\n type: string;\n content?: any;\n timestamp?: number;\n source?: string;\n readonly?: boolean;\n}\n","export enum HistoryAction {\n Pop = \"POP\",\n Push = \"PUSH\",\n Replace = \"REPLACE\",\n}\n\nexport interface HistoryPath {\n pathname: string;\n search: string;\n hash: string;\n}\n\nexport type HistoryTo = string | Partial<HistoryPath>;\n\nexport type HistoryState = unknown;\n\nexport interface HistoryLocation extends HistoryPath {\n state: HistoryState;\n}\n\nexport interface HistoryUpdate {\n action: HistoryAction;\n location: HistoryLocation;\n}\n\nexport interface HistoryListener {\n (update: HistoryUpdate): void;\n}\n\nexport type UnlistenCallback = () => void;\n\nexport interface NexusHistory {\n action: HistoryAction;\n location: HistoryLocation;\n push(to: HistoryTo, state?: HistoryState): void;\n replace(to: HistoryTo, state?: HistoryState): void;\n go(delta: number): void;\n back(): void;\n forward(): void;\n listen(listener: HistoryListener): Promise<UnlistenCallback>;\n}\n","export enum WorkitemTypeGroup {\n Requirement = 1,\n Task = 2,\n Bug = 3,\n Issue = 4,\n Plan = 5,\n}\n\nexport interface Workitem {\n id: string;\n short_id: string;\n identifier: string;\n title: string;\n type_group?: WorkitemTypeGroup;\n type_id?: string;\n}\n\nexport interface WorkitemOpenCreateOptions {\n defaultValues?: {\n title?: string;\n project_id?: string;\n description?: string;\n };\n onSuccess?: (payload: Workitem) => void;\n}\n","/*\n * Public API Surface of models\n */\n\nexport * from \"./api\";\nexport * from \"./baseline\";\nexport * from \"./condition\";\nexport * from \"./context\";\nexport * from \"./dialog\";\nexport * from \"./environment\";\nexport * from \"./events\";\nexport * from \"./extension\";\nexport * from \"./idea\";\nexport * from \"./invoke\";\nexport * from \"./locale\";\nexport * from \"./navigation\";\nexport * from \"./notify\";\nexport * from \"./page\";\nexport * from \"./processor\";\nexport * from \"./remote\";\nexport * from \"./richtext\";\nexport * from \"./store\";\nexport * from \"./testcase\";\nexport * from \"./ticket\";\nexport * from \"./user\";\nexport * from \"./v-dom\";\nexport * from \"./view\";\nexport * from \"./viewport\";\nexport * from \"./workitem\";\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"IAAY;AAAZ,CAAA,UAAY,mBAAmB,EAAA;AAC3B,IAAA,mBAAA,CAAA,aAAA,CAAA,GAAA,aAA2B;AAC3B,IAAA,mBAAA,CAAA,YAAA,CAAA,GAAA,YAAyB;AAC7B,CAAC,EAHW,mBAAmB,KAAnB,mBAAmB,GAAA,EAAA,CAAA,CAAA;;MCAlB,sBAAsB,GAAG,CAAC,OAAO,EAAE,OAAO;;ICA3C;AAAZ,CAAA,UAAY,gBAAgB,EAAA;AACxB,IAAA,gBAAA,CAAA,UAAA,CAAA,GAAA,UAAqB;AACrB,IAAA,gBAAA,CAAA,UAAA,CAAA,GAAA,UAAqB;AACrB,IAAA,gBAAA,CAAA,MAAA,CAAA,GAAA,MAAa;AACb,IAAA,gBAAA,CAAA,MAAA,CAAA,GAAA,MAAa;AACb,IAAA,gBAAA,CAAA,QAAA,CAAA,GAAA,QAAiB;AACjB,IAAA,gBAAA,CAAA,SAAA,CAAA,GAAA,SAAmB;AACnB,IAAA,gBAAA,CAAA,SAAA,CAAA,GAAA,SAAmB;AACnB,IAAA,gBAAA,CAAA,OAAA,CAAA,GAAA,OAAe;AACf,IAAA,gBAAA,CAAA,SAAA,CAAA,GAAA,SAAmB;AACvB,CAAC,EAVW,gBAAgB,KAAhB,gBAAgB,GAAA,EAAA,CAAA,CAAA;;ICAhB;AAAZ,CAAA,UAAY,UAAU,EAAA;AAClB,IAAA,UAAA,CAAA,SAAA,CAAA,GAAA,SAAmB;AACnB,IAAA,UAAA,CAAA,OAAA,CAAA,GAAA,OAAe;AACf,IAAA,UAAA,CAAA,SAAA,CAAA,GAAA,SAAmB;AACnB,IAAA,UAAA,CAAA,MAAA,CAAA,GAAA,MAAa;AACjB,CAAC,EALW,UAAU,KAAV,UAAU,GAAA,EAAA,CAAA,CAAA;;ACAf,MAAM,0BAA0B,GAAG;AACnC,MAAM,0BAA0B,GAAG;AACnC,MAAM,wBAAwB,GAAG;;ICF5B;AAAZ,CAAA,UAAY,aAAa,EAAA;AACrB,IAAA,aAAA,CAAA,KAAA,CAAA,GAAA,KAAW;AACX,IAAA,aAAA,CAAA,MAAA,CAAA,GAAA,MAAa;AACb,IAAA,aAAA,CAAA,SAAA,CAAA,GAAA,SAAmB;AACvB,CAAC,EAJW,aAAa,KAAb,aAAa,GAAA,EAAA,CAAA,CAAA;;ICAb;AAAZ,CAAA,UAAY,iBAAiB,EAAA;AACzB,IAAA,iBAAA,CAAA,iBAAA,CAAA,aAAA,CAAA,GAAA,CAAA,CAAA,GAAA,aAAe;AACf,IAAA,iBAAA,CAAA,iBAAA,CAAA,MAAA,CAAA,GAAA,CAAA,CAAA,GAAA,MAAQ;AACR,IAAA,iBAAA,CAAA,iBAAA,CAAA,KAAA,CAAA,GAAA,CAAA,CAAA,GAAA,KAAO;AACP,IAAA,iBAAA,CAAA,iBAAA,CAAA,OAAA,CAAA,GAAA,CAAA,CAAA,GAAA,OAAS;AACT,IAAA,iBAAA,CAAA,iBAAA,CAAA,MAAA,CAAA,GAAA,CAAA,CAAA,GAAA,MAAQ;AACZ,CAAC,EANW,iBAAiB,KAAjB,iBAAiB,GAAA,EAAA,CAAA,CAAA;;ACA7B;;AAEG;;ACFH;;AAEG;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pc-nexus/models",
3
- "version": "0.5.0-next.26",
3
+ "version": "0.5.0-next.28",
4
4
  "peerDependencies": {},
5
5
  "dependencies": {
6
6
  "tslib": "^2.3.0"
@@ -1,3 +1,28 @@
1
+ interface InvokeResponseData {
2
+ status: number;
3
+ headers?: Record<string, string>;
4
+ body?: Record<string, any>;
5
+ }
6
+ type ApiInvokeOptions = Omit<RequestInit, "signal">;
7
+
8
+ interface Baseline {
9
+ id: string;
10
+ short_id: string;
11
+ name: string;
12
+ }
13
+
14
+ type ConditionPrimitive = string | number | boolean | null;
15
+ type ConditionValue = ConditionPrimitive | ConditionPrimitive[];
16
+ interface Conditions {
17
+ and?: Conditions;
18
+ or?: Conditions;
19
+ not?: Conditions;
20
+ hasPermission?: string;
21
+ isAdmin?: boolean;
22
+ isLoggedIn?: boolean;
23
+ [path: string]: ConditionValue | Conditions | undefined;
24
+ }
25
+
1
26
  declare enum NexusAppEnvironment {
2
27
  Development = "development",
3
28
  Production = "production"
@@ -49,18 +74,6 @@ interface NexusAppContext<T = ExtensionData> {
49
74
  };
50
75
  }
51
76
 
52
- type ConditionPrimitive = string | number | boolean | null;
53
- type ConditionValue = ConditionPrimitive | ConditionPrimitive[];
54
- interface Conditions {
55
- and?: Conditions;
56
- or?: Conditions;
57
- not?: Conditions;
58
- hasPermission?: string;
59
- isAdmin?: boolean;
60
- isLoggedIn?: boolean;
61
- [path: string]: ConditionValue | Conditions | undefined;
62
- }
63
-
64
77
  interface Viewport {
65
78
  size?: ViewportSize;
66
79
  }
@@ -122,6 +135,20 @@ interface NexusAppExtension<T extends ExtensionProperties = ExtensionProperties>
122
135
  resource_ports?: Record<string, number>;
123
136
  }
124
137
 
138
+ interface Idea {
139
+ id: string;
140
+ short_id: string;
141
+ identifier: string;
142
+ title: string;
143
+ }
144
+ interface IdeaOpenCreateOptions {
145
+ defaultValues?: {
146
+ title?: string;
147
+ product_id?: string;
148
+ };
149
+ onSuccess?: (payload: Idea) => void;
150
+ }
151
+
125
152
  interface InvokeFunctionParams<T = unknown> {
126
153
  function: string;
127
154
  payload: T;
@@ -171,6 +198,15 @@ interface NotifyAction {
171
198
  onClick: (event?: Event) => void;
172
199
  }
173
200
 
201
+ interface Page {
202
+ id: string;
203
+ short_id: string;
204
+ name: string;
205
+ }
206
+ interface PageOpenCreateOptions {
207
+ onSuccess?: (payload: Page) => void;
208
+ }
209
+
174
210
  type ProcessOptions = File | CustomProcessItem;
175
211
  interface CustomProcessItem {
176
212
  name: string;
@@ -186,13 +222,6 @@ interface ProcessRef {
186
222
  readonly cancel: () => void;
187
223
  }
188
224
 
189
- interface InvokeResponseData {
190
- status: number;
191
- headers?: Record<string, string>;
192
- body?: Record<string, any>;
193
- }
194
- type ApiInvokeOptions = Omit<RequestInit, "signal">;
195
-
196
225
  type RemoteInvokeOptions = {
197
226
  path: string;
198
227
  } & Pick<RequestInit, "headers" | "body" | "method">;
@@ -264,6 +293,58 @@ interface RichtextBridgeMessage {
264
293
  readonly?: boolean;
265
294
  }
266
295
 
296
+ interface UploadResult {
297
+ success: boolean;
298
+ key: string;
299
+ status?: number;
300
+ error?: string;
301
+ }
302
+ interface DownloadResult {
303
+ success: boolean;
304
+ key: string;
305
+ blob?: Blob;
306
+ name?: string;
307
+ status?: number;
308
+ error?: string;
309
+ }
310
+ interface GetMetadataResult {
311
+ key: string;
312
+ name: string;
313
+ mime_type: string;
314
+ checksum: string;
315
+ size: number;
316
+ created_at: string;
317
+ error?: string;
318
+ }
319
+
320
+ interface Testcase {
321
+ id: string;
322
+ short_id: string;
323
+ identifier: string;
324
+ title: string;
325
+ }
326
+ interface TestcaseOpenCreateOptions {
327
+ defaultValues?: {
328
+ title?: string;
329
+ library_id?: string;
330
+ };
331
+ onSuccess?: (payload: Testcase) => void;
332
+ }
333
+
334
+ interface Ticket {
335
+ id: string;
336
+ short_id: string;
337
+ identifier: string;
338
+ title: string;
339
+ }
340
+ interface TicketOpenCreateOptions {
341
+ defaultValues?: {
342
+ title?: string;
343
+ product_id?: string;
344
+ };
345
+ onSuccess?: (payload: Ticket) => void;
346
+ }
347
+
267
348
  interface UserInfo {
268
349
  id: string;
269
350
  display_name?: string;
@@ -298,29 +379,68 @@ interface UserOpenDialogRef {
298
379
  readonly close: () => void;
299
380
  }
300
381
 
382
+ interface VirtualNodeSnapshot {
383
+ kind: string;
384
+ id: number;
385
+ tagName?: string;
386
+ namespace?: string | null;
387
+ value?: string;
388
+ attributes?: Record<string, string>;
389
+ classes?: string[];
390
+ styles?: Record<string, VirtualStyle>;
391
+ properties?: Record<string, unknown>;
392
+ listeners?: VirtualListener[];
393
+ children?: VirtualNodeSnapshot[];
394
+ }
395
+ interface VirtualStyle {
396
+ value: string;
397
+ flags?: number;
398
+ }
399
+ interface VirtualListener {
400
+ name: string;
401
+ id: string;
402
+ options?: unknown;
403
+ }
404
+ interface DispatchEventPayload {
405
+ id: string;
406
+ name: string;
407
+ nodeId: number;
408
+ /** 组件 output 等场景下的回调参数(如 Switch 的 checked 值) */
409
+ detail?: unknown;
410
+ }
411
+
301
412
  declare enum HistoryAction {
302
413
  Pop = "POP",
303
414
  Push = "PUSH",
304
415
  Replace = "REPLACE"
305
416
  }
306
- interface LocationDescriptor {
417
+ interface HistoryPath {
307
418
  pathname: string;
308
- search?: string;
309
- hash?: string;
310
- state?: unknown;
419
+ search: string;
420
+ hash: string;
421
+ }
422
+ type HistoryTo = string | Partial<HistoryPath>;
423
+ type HistoryState = unknown;
424
+ interface HistoryLocation extends HistoryPath {
425
+ state: HistoryState;
426
+ }
427
+ interface HistoryUpdate {
428
+ action: HistoryAction;
429
+ location: HistoryLocation;
430
+ }
431
+ interface HistoryListener {
432
+ (update: HistoryUpdate): void;
311
433
  }
312
434
  type UnlistenCallback = () => void;
313
435
  interface NexusHistory {
314
436
  action: HistoryAction;
315
- location: LocationDescriptor;
316
- push(path: string, state?: unknown): void;
317
- push(location: LocationDescriptor): void;
318
- replace(path: string, state?: unknown): void;
319
- replace(location: LocationDescriptor): void;
320
- go(n: number): void;
437
+ location: HistoryLocation;
438
+ push(to: HistoryTo, state?: HistoryState): void;
439
+ replace(to: HistoryTo, state?: HistoryState): void;
440
+ go(delta: number): void;
321
441
  back(): void;
322
442
  forward(): void;
323
- listen(listener: (location: LocationDescriptor, action: HistoryAction) => void): Promise<UnlistenCallback>;
443
+ listen(listener: HistoryListener): Promise<UnlistenCallback>;
324
444
  }
325
445
 
326
446
  declare enum WorkitemTypeGroup {
@@ -347,86 +467,5 @@ interface WorkitemOpenCreateOptions {
347
467
  onSuccess?: (payload: Workitem) => void;
348
468
  }
349
469
 
350
- interface Idea {
351
- id: string;
352
- short_id: string;
353
- identifier: string;
354
- title: string;
355
- }
356
- interface IdeaOpenCreateOptions {
357
- defaultValues?: {
358
- title?: string;
359
- product_id?: string;
360
- };
361
- onSuccess?: (payload: Idea) => void;
362
- }
363
-
364
- interface Testcase {
365
- id: string;
366
- short_id: string;
367
- identifier: string;
368
- title: string;
369
- }
370
- interface TestcaseOpenCreateOptions {
371
- defaultValues?: {
372
- title?: string;
373
- library_id?: string;
374
- };
375
- onSuccess?: (payload: Testcase) => void;
376
- }
377
-
378
- interface Ticket {
379
- id: string;
380
- short_id: string;
381
- identifier: string;
382
- title: string;
383
- }
384
- interface TicketOpenCreateOptions {
385
- defaultValues?: {
386
- title?: string;
387
- product_id?: string;
388
- };
389
- onSuccess?: (payload: Ticket) => void;
390
- }
391
-
392
- interface Page {
393
- id: string;
394
- short_id: string;
395
- name: string;
396
- }
397
- interface PageOpenCreateOptions {
398
- onSuccess?: (payload: Page) => void;
399
- }
400
-
401
- interface UploadResult {
402
- success: boolean;
403
- key: string;
404
- status?: number;
405
- error?: string;
406
- }
407
- interface DownloadResult {
408
- success: boolean;
409
- key: string;
410
- blob?: Blob;
411
- name?: string;
412
- status?: number;
413
- error?: string;
414
- }
415
- interface GetMetadataResult {
416
- key: string;
417
- name: string;
418
- mime_type: string;
419
- checksum: string;
420
- size: number;
421
- created_at: string;
422
- error?: string;
423
- }
424
-
425
- interface Baseline {
426
- id: string;
427
- short_id: string;
428
- name: string;
429
- }
430
-
431
470
  export { HistoryAction, NEXUS_CONFIG_READY_EVENT, NEXUS_CONTENT_CHANGE_EVENT, NEXUS_CONTENT_UPDATE_EVENT, NavigationTarget, NexusAppEnvironment, NotifyType, SUPPORTED_LOCALE_CODES, WorkitemTypeGroup };
432
- export type { ApiInvokeOptions, Baseline, ConditionPrimitive, ConditionValue, Conditions, DialogConfirmOptions, DialogOpenOptions, DialogRef, DownloadResult, EgressItem, ExtensionData, ExtensionProperties, GetMetadataResult, GetTranslationsResult, Idea, IdeaOpenCreateOptions, InvokeFunctionParams, InvokeResponseData, LocationDescriptor, MultipleUserOpenPopoverOptions, NavigationLocation, NexusAppContext, NexusAppExtension, NexusHistory, NotifyAction, NotifyDetail, NotifyOptions, NotifyRef, Page, PageOpenCreateOptions, ProcessOptions, ProcessRef, RemoteInvokeOptions, RemoteRequestBody, RemoteRequestOptions, RemoteRequestPayload, RemoteRequestResponseData, RemoteRequestSerializedInit, RemoteSerializedBlob, RemoteSerializedFormDataEntry, RichtextBridgeMessage, RichtextContent, RichtextDescendant, RichtextEditorOptions, RichtextEditorRef, RichtextElement, RichtextRendererOptions, RichtextRendererRef, RichtextText, SingleUserOpenPopoverOptions, Subscription, SupportedLocaleCode, Testcase, TestcaseOpenCreateOptions, Ticket, TicketOpenCreateOptions, TranslationsResourceContent, Translator, UnlistenCallback, UploadResult, UserInfo, UserOpenDialogOptions, UserOpenDialogRef, UserOpenPopoverOptions, UserOpenPopoverRef, Viewport, ViewportSize, Workitem, WorkitemOpenCreateOptions };
471
+ export type { ApiInvokeOptions, Baseline, ConditionPrimitive, ConditionValue, Conditions, DialogConfirmOptions, DialogOpenOptions, DialogRef, DispatchEventPayload, DownloadResult, EgressItem, ExtensionData, ExtensionProperties, GetMetadataResult, GetTranslationsResult, HistoryListener, HistoryLocation, HistoryPath, HistoryState, HistoryTo, HistoryUpdate, Idea, IdeaOpenCreateOptions, InvokeFunctionParams, InvokeResponseData, MultipleUserOpenPopoverOptions, NavigationLocation, NexusAppContext, NexusAppExtension, NexusHistory, NotifyAction, NotifyDetail, NotifyOptions, NotifyRef, Page, PageOpenCreateOptions, ProcessOptions, ProcessRef, RemoteInvokeOptions, RemoteRequestBody, RemoteRequestOptions, RemoteRequestPayload, RemoteRequestResponseData, RemoteRequestSerializedInit, RemoteSerializedBlob, RemoteSerializedFormDataEntry, RichtextBridgeMessage, RichtextContent, RichtextDescendant, RichtextEditorOptions, RichtextEditorRef, RichtextElement, RichtextRendererOptions, RichtextRendererRef, RichtextText, SingleUserOpenPopoverOptions, Subscription, SupportedLocaleCode, Testcase, TestcaseOpenCreateOptions, Ticket, TicketOpenCreateOptions, TranslationsResourceContent, Translator, UnlistenCallback, UploadResult, UserInfo, UserOpenDialogOptions, UserOpenDialogRef, UserOpenPopoverOptions, UserOpenPopoverRef, Viewport, ViewportSize, VirtualListener, VirtualNodeSnapshot, VirtualStyle, Workitem, WorkitemOpenCreateOptions };