@channel.io/app-sdk-core 0.26.0 → 0.28.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 (35) hide show
  1. package/dist/extensions/calendar.d.ts +2 -2
  2. package/dist/extensions/commerce.d.ts +12 -12
  3. package/dist/extensions/config.d.ts +80 -80
  4. package/dist/extensions/hook.d.ts +274 -0
  5. package/dist/extensions/hook.d.ts.map +1 -1
  6. package/dist/extensions/hook.js +11 -2
  7. package/dist/extensions/hook.js.map +1 -1
  8. package/dist/extensions/index.d.ts +1 -0
  9. package/dist/extensions/index.d.ts.map +1 -1
  10. package/dist/extensions/index.js +1 -0
  11. package/dist/extensions/index.js.map +1 -1
  12. package/dist/extensions/notebook.d.ts +6 -6
  13. package/dist/extensions/oauth.d.ts +211 -21
  14. package/dist/extensions/oauth.d.ts.map +1 -1
  15. package/dist/extensions/oauth.js +43 -2
  16. package/dist/extensions/oauth.js.map +1 -1
  17. package/dist/gen/channel/app/sdk/v1/common.zod.d.ts +4 -4
  18. package/dist/gen/channel/app/sdk/v1/extension.d.ts +33 -1
  19. package/dist/gen/channel/app/sdk/v1/extension.d.ts.map +1 -1
  20. package/dist/gen/channel/app/sdk/v1/extension.zod.d.ts +454 -150
  21. package/dist/gen/channel/app/sdk/v1/extension.zod.d.ts.map +1 -1
  22. package/dist/gen/channel/app/sdk/v1/extension.zod.js +22 -0
  23. package/dist/gen/channel/app/sdk/v1/extension.zod.js.map +1 -1
  24. package/dist/gen/channel/app/sdk/v1/native.d.ts +5 -0
  25. package/dist/gen/channel/app/sdk/v1/native.d.ts.map +1 -1
  26. package/dist/gen/channel/app/sdk/v1/native.js.map +1 -1
  27. package/dist/gen/channel/app/sdk/v1/native.zod.d.ts +107 -6
  28. package/dist/gen/channel/app/sdk/v1/native.zod.d.ts.map +1 -1
  29. package/dist/gen/channel/app/sdk/v1/native.zod.js +5 -0
  30. package/dist/gen/channel/app/sdk/v1/native.zod.js.map +1 -1
  31. package/dist/schemas/native.d.ts +168 -10
  32. package/dist/schemas/native.d.ts.map +1 -1
  33. package/dist/schemas/native.js +4 -1
  34. package/dist/schemas/native.js.map +1 -1
  35. package/package.json +1 -1
@@ -434,8 +434,8 @@ export declare const AppNotebookSchema: z.ZodObject<{
434
434
  notebookKey: string;
435
435
  version: number;
436
436
  description?: string | undefined;
437
- initialVisibility?: "hidden" | "visible" | undefined;
438
437
  icon?: string | undefined;
438
+ initialVisibility?: "hidden" | "visible" | undefined;
439
439
  }, {
440
440
  notebook: {
441
441
  cells: {
@@ -464,8 +464,8 @@ export declare const AppNotebookSchema: z.ZodObject<{
464
464
  notebookKey: string;
465
465
  version: number;
466
466
  description?: string | undefined;
467
- initialVisibility?: "hidden" | "visible" | undefined;
468
467
  icon?: string | undefined;
468
+ initialVisibility?: "hidden" | "visible" | undefined;
469
469
  }>;
470
470
  export type AppNotebook = ProtoBacked<z.infer<typeof AppNotebookSchema>, ProtoAppNotebook>;
471
471
  export declare const GetNotebooksInputSchema: z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>;
@@ -635,8 +635,8 @@ export declare const GetNotebooksResponseSchema: z.ZodObject<{
635
635
  notebookKey: string;
636
636
  version: number;
637
637
  description?: string | undefined;
638
- initialVisibility?: "hidden" | "visible" | undefined;
639
638
  icon?: string | undefined;
639
+ initialVisibility?: "hidden" | "visible" | undefined;
640
640
  }, {
641
641
  notebook: {
642
642
  cells: {
@@ -665,8 +665,8 @@ export declare const GetNotebooksResponseSchema: z.ZodObject<{
665
665
  notebookKey: string;
666
666
  version: number;
667
667
  description?: string | undefined;
668
- initialVisibility?: "hidden" | "visible" | undefined;
669
668
  icon?: string | undefined;
669
+ initialVisibility?: "hidden" | "visible" | undefined;
670
670
  }>, "many">;
671
671
  }, "strip", z.ZodTypeAny, {
672
672
  notebooks: {
@@ -697,8 +697,8 @@ export declare const GetNotebooksResponseSchema: z.ZodObject<{
697
697
  notebookKey: string;
698
698
  version: number;
699
699
  description?: string | undefined;
700
- initialVisibility?: "hidden" | "visible" | undefined;
701
700
  icon?: string | undefined;
701
+ initialVisibility?: "hidden" | "visible" | undefined;
702
702
  }[];
703
703
  }, {
704
704
  notebooks: {
@@ -729,8 +729,8 @@ export declare const GetNotebooksResponseSchema: z.ZodObject<{
729
729
  notebookKey: string;
730
730
  version: number;
731
731
  description?: string | undefined;
732
- initialVisibility?: "hidden" | "visible" | undefined;
733
732
  icon?: string | undefined;
733
+ initialVisibility?: "hidden" | "visible" | undefined;
734
734
  }[];
735
735
  }>;
736
736
  export type GetNotebooksResponse = ProtoBacked<z.infer<typeof GetNotebooksResponseSchema>, ProtoGetNotebooksResponse>;
@@ -1,5 +1,5 @@
1
1
  import { z } from "zod";
2
- import type { OAuthConfig as ProtoOAuthConfig, OAuthCredentialValidationInput as ProtoCredentialValidationInput, OAuthCredentialValidationResult as ProtoCredentialValidationResult, OAuthProvider as ProtoOAuthProvider, OAuthProviderLocalizedText as ProtoOAuthProviderLocalizedText, OAuthTokenRequestMapping as ProtoTokenRequestMapping, OAuthTokenResponseMapping as ProtoTokenResponseMapping } from "../gen/channel/app/sdk/v1/extension.js";
2
+ import type { OAuthConfig as ProtoOAuthConfig, OAuthStepDisplay as ProtoOAuthStepDisplay, OAuthStepLocalizedText as ProtoOAuthStepLocalizedText, OAuthFlowStep as ProtoOAuthFlowStep, OAuthCredentialValidationInput as ProtoCredentialValidationInput, OAuthCredentialValidationResult as ProtoCredentialValidationResult, OAuthProvider as ProtoOAuthProvider, OAuthProviderLocalizedText as ProtoOAuthProviderLocalizedText, OAuthTokenRequestMapping as ProtoTokenRequestMapping, OAuthTokenResponseMapping as ProtoTokenResponseMapping } from "../gen/channel/app/sdk/v1/extension.js";
3
3
  type ProtoBacked<T, Proto> = T & Proto;
4
4
  /**
5
5
  * OAuth standard parameter naming convention.
@@ -20,13 +20,83 @@ export type AuthorizationOpenMode = z.infer<typeof AuthorizationOpenModeSchema>;
20
20
  *
21
21
  * - channel: always use the shared channel credential
22
22
  * - manager: only a manager caller can use that manager's credential
23
- * - caller: use the manager credential for manager callers and the channel
24
- * credential for every other caller
23
+ * - caller: prefer the manager credential for manager callers, falling back to
24
+ * the channel only when none is registered and allowChannelFallback is not false.
25
+ * Every other caller uses the channel credential.
25
26
  */
26
27
  export declare const OAuthAuthScopeSchema: z.ZodEnum<["channel", "manager", "caller"]>;
27
28
  export type OAuthAuthScope = z.infer<typeof OAuthAuthScopeSchema>;
28
29
  export declare const OAuthProviderSupportedLocaleSchema: z.ZodEnum<["ko", "ja", "en"]>;
29
30
  export type OAuthProviderSupportedLocale = z.infer<typeof OAuthProviderSupportedLocaleSchema>;
31
+ /** Built-in semantic icons rendered by App Store. No URLs or SVGs. */
32
+ export declare const OAuthStepIconSchema: z.ZodEnum<["installation", "account", "organization", "permission", "settings"]>;
33
+ export type OAuthStepIcon = z.infer<typeof OAuthStepIconSchema>;
34
+ export declare const OAuthStepLocalizedTextSchema: z.ZodObject<{
35
+ title: z.ZodOptional<z.ZodString>;
36
+ description: z.ZodOptional<z.ZodString>;
37
+ }, "strict", z.ZodTypeAny, {
38
+ description?: string | undefined;
39
+ title?: string | undefined;
40
+ }, {
41
+ description?: string | undefined;
42
+ title?: string | undefined;
43
+ }>;
44
+ export type OAuthStepLocalizedText = ProtoBacked<z.infer<typeof OAuthStepLocalizedTextSchema>, ProtoOAuthStepLocalizedText>;
45
+ export declare const OAuthStepDisplaySchema: z.ZodObject<{
46
+ title: z.ZodString;
47
+ description: z.ZodOptional<z.ZodString>;
48
+ icon: z.ZodOptional<z.ZodEnum<["installation", "account", "organization", "permission", "settings"]>>;
49
+ i18nMap: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
50
+ title: z.ZodOptional<z.ZodString>;
51
+ description: z.ZodOptional<z.ZodString>;
52
+ }, "strict", z.ZodTypeAny, {
53
+ description?: string | undefined;
54
+ title?: string | undefined;
55
+ }, {
56
+ description?: string | undefined;
57
+ title?: string | undefined;
58
+ }>>>;
59
+ }, "strict", z.ZodTypeAny, {
60
+ title: string;
61
+ description?: string | undefined;
62
+ icon?: "installation" | "account" | "organization" | "permission" | "settings" | undefined;
63
+ i18nMap?: Record<string, {
64
+ description?: string | undefined;
65
+ title?: string | undefined;
66
+ }> | undefined;
67
+ }, {
68
+ title: string;
69
+ description?: string | undefined;
70
+ icon?: "installation" | "account" | "organization" | "permission" | "settings" | undefined;
71
+ i18nMap?: Record<string, {
72
+ description?: string | undefined;
73
+ title?: string | undefined;
74
+ }> | undefined;
75
+ }>;
76
+ export type OAuthStepDisplay = ProtoBacked<z.infer<typeof OAuthStepDisplaySchema>, ProtoOAuthStepDisplay>;
77
+ export declare const OAuthFlowStepSchema: z.ZodObject<{
78
+ id: z.ZodEnum<["before", "oauth", "after"]>;
79
+ title: z.ZodString;
80
+ description: z.ZodOptional<z.ZodString>;
81
+ icon: z.ZodEnum<["installation", "account", "organization", "permission", "settings"]>;
82
+ status: z.ZodEnum<["pending", "in_progress", "completed", "failed", "unknown"]>;
83
+ detail: z.ZodOptional<z.ZodString>;
84
+ }, "strict", z.ZodTypeAny, {
85
+ status: "completed" | "unknown" | "pending" | "in_progress" | "failed";
86
+ id: "oauth" | "before" | "after";
87
+ title: string;
88
+ icon: "installation" | "account" | "organization" | "permission" | "settings";
89
+ description?: string | undefined;
90
+ detail?: string | undefined;
91
+ }, {
92
+ status: "completed" | "unknown" | "pending" | "in_progress" | "failed";
93
+ id: "oauth" | "before" | "after";
94
+ title: string;
95
+ icon: "installation" | "account" | "organization" | "permission" | "settings";
96
+ description?: string | undefined;
97
+ detail?: string | undefined;
98
+ }>;
99
+ export type OAuthFlowStep = ProtoBacked<z.infer<typeof OAuthFlowStepSchema>, ProtoOAuthFlowStep>;
30
100
  export declare const OAuthProviderLocalizedTextSchema: z.ZodObject<{
31
101
  providerName: z.ZodOptional<z.ZodString>;
32
102
  providerDescription: z.ZodOptional<z.ZodString>;
@@ -98,6 +168,37 @@ export type OAuthTokenResponseMapping = ProtoBacked<z.infer<typeof OAuthTokenRes
98
168
  * provider client ID/secret separately through Desk APIs/UI.
99
169
  */
100
170
  export declare const OAuthProviderSchema: z.ZodObject<{
171
+ authorizationDisplay: z.ZodOptional<z.ZodObject<{
172
+ title: z.ZodString;
173
+ description: z.ZodOptional<z.ZodString>;
174
+ icon: z.ZodOptional<z.ZodEnum<["installation", "account", "organization", "permission", "settings"]>>;
175
+ i18nMap: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
176
+ title: z.ZodOptional<z.ZodString>;
177
+ description: z.ZodOptional<z.ZodString>;
178
+ }, "strict", z.ZodTypeAny, {
179
+ description?: string | undefined;
180
+ title?: string | undefined;
181
+ }, {
182
+ description?: string | undefined;
183
+ title?: string | undefined;
184
+ }>>>;
185
+ }, "strict", z.ZodTypeAny, {
186
+ title: string;
187
+ description?: string | undefined;
188
+ icon?: "installation" | "account" | "organization" | "permission" | "settings" | undefined;
189
+ i18nMap?: Record<string, {
190
+ description?: string | undefined;
191
+ title?: string | undefined;
192
+ }> | undefined;
193
+ }, {
194
+ title: string;
195
+ description?: string | undefined;
196
+ icon?: "installation" | "account" | "organization" | "permission" | "settings" | undefined;
197
+ i18nMap?: Record<string, {
198
+ description?: string | undefined;
199
+ title?: string | undefined;
200
+ }> | undefined;
201
+ }>>;
101
202
  provider: z.ZodString;
102
203
  authorizationUrl: z.ZodString;
103
204
  tokenUrl: z.ZodString;
@@ -190,13 +291,22 @@ export declare const OAuthProviderSchema: z.ZodObject<{
190
291
  authorizationUrl: string;
191
292
  tokenUrl: string;
192
293
  scopes: string[];
193
- providerDescription?: string | undefined;
194
- authorizationCodeParamName?: string | undefined;
195
- refreshTokenUrl?: string | undefined;
196
294
  i18nMap?: Record<string, {
197
295
  providerName?: string | undefined;
198
296
  providerDescription?: string | undefined;
199
297
  }> | undefined;
298
+ providerDescription?: string | undefined;
299
+ authorizationCodeParamName?: string | undefined;
300
+ authorizationDisplay?: {
301
+ title: string;
302
+ description?: string | undefined;
303
+ icon?: "installation" | "account" | "organization" | "permission" | "settings" | undefined;
304
+ i18nMap?: Record<string, {
305
+ description?: string | undefined;
306
+ title?: string | undefined;
307
+ }> | undefined;
308
+ } | undefined;
309
+ refreshTokenUrl?: string | undefined;
200
310
  providerIconUrl?: string | undefined;
201
311
  pkceRequired?: boolean | undefined;
202
312
  additionalParams?: Record<string, string> | undefined;
@@ -219,13 +329,22 @@ export declare const OAuthProviderSchema: z.ZodObject<{
219
329
  authorizationUrl: string;
220
330
  tokenUrl: string;
221
331
  scopes: string[];
222
- providerDescription?: string | undefined;
223
- authorizationCodeParamName?: string | undefined;
224
- refreshTokenUrl?: string | undefined;
225
332
  i18nMap?: Record<string, {
226
333
  providerName?: string | undefined;
227
334
  providerDescription?: string | undefined;
228
335
  }> | undefined;
336
+ providerDescription?: string | undefined;
337
+ authorizationCodeParamName?: string | undefined;
338
+ authorizationDisplay?: {
339
+ title: string;
340
+ description?: string | undefined;
341
+ icon?: "installation" | "account" | "organization" | "permission" | "settings" | undefined;
342
+ i18nMap?: Record<string, {
343
+ description?: string | undefined;
344
+ title?: string | undefined;
345
+ }> | undefined;
346
+ } | undefined;
347
+ refreshTokenUrl?: string | undefined;
229
348
  providerIconUrl?: string | undefined;
230
349
  pkceRequired?: boolean | undefined;
231
350
  additionalParams?: Record<string, string> | undefined;
@@ -251,6 +370,37 @@ export declare const OAuthConfigSchema: z.ZodObject<{
251
370
  authType: z.ZodLiteral<"oauth">;
252
371
  authScope: z.ZodEnum<["channel", "manager", "caller"]>;
253
372
  oauthProvider: z.ZodObject<{
373
+ authorizationDisplay: z.ZodOptional<z.ZodObject<{
374
+ title: z.ZodString;
375
+ description: z.ZodOptional<z.ZodString>;
376
+ icon: z.ZodOptional<z.ZodEnum<["installation", "account", "organization", "permission", "settings"]>>;
377
+ i18nMap: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
378
+ title: z.ZodOptional<z.ZodString>;
379
+ description: z.ZodOptional<z.ZodString>;
380
+ }, "strict", z.ZodTypeAny, {
381
+ description?: string | undefined;
382
+ title?: string | undefined;
383
+ }, {
384
+ description?: string | undefined;
385
+ title?: string | undefined;
386
+ }>>>;
387
+ }, "strict", z.ZodTypeAny, {
388
+ title: string;
389
+ description?: string | undefined;
390
+ icon?: "installation" | "account" | "organization" | "permission" | "settings" | undefined;
391
+ i18nMap?: Record<string, {
392
+ description?: string | undefined;
393
+ title?: string | undefined;
394
+ }> | undefined;
395
+ }, {
396
+ title: string;
397
+ description?: string | undefined;
398
+ icon?: "installation" | "account" | "organization" | "permission" | "settings" | undefined;
399
+ i18nMap?: Record<string, {
400
+ description?: string | undefined;
401
+ title?: string | undefined;
402
+ }> | undefined;
403
+ }>>;
254
404
  provider: z.ZodString;
255
405
  authorizationUrl: z.ZodString;
256
406
  tokenUrl: z.ZodString;
@@ -343,13 +493,22 @@ export declare const OAuthConfigSchema: z.ZodObject<{
343
493
  authorizationUrl: string;
344
494
  tokenUrl: string;
345
495
  scopes: string[];
346
- providerDescription?: string | undefined;
347
- authorizationCodeParamName?: string | undefined;
348
- refreshTokenUrl?: string | undefined;
349
496
  i18nMap?: Record<string, {
350
497
  providerName?: string | undefined;
351
498
  providerDescription?: string | undefined;
352
499
  }> | undefined;
500
+ providerDescription?: string | undefined;
501
+ authorizationCodeParamName?: string | undefined;
502
+ authorizationDisplay?: {
503
+ title: string;
504
+ description?: string | undefined;
505
+ icon?: "installation" | "account" | "organization" | "permission" | "settings" | undefined;
506
+ i18nMap?: Record<string, {
507
+ description?: string | undefined;
508
+ title?: string | undefined;
509
+ }> | undefined;
510
+ } | undefined;
511
+ refreshTokenUrl?: string | undefined;
353
512
  providerIconUrl?: string | undefined;
354
513
  pkceRequired?: boolean | undefined;
355
514
  additionalParams?: Record<string, string> | undefined;
@@ -372,13 +531,22 @@ export declare const OAuthConfigSchema: z.ZodObject<{
372
531
  authorizationUrl: string;
373
532
  tokenUrl: string;
374
533
  scopes: string[];
375
- providerDescription?: string | undefined;
376
- authorizationCodeParamName?: string | undefined;
377
- refreshTokenUrl?: string | undefined;
378
534
  i18nMap?: Record<string, {
379
535
  providerName?: string | undefined;
380
536
  providerDescription?: string | undefined;
381
537
  }> | undefined;
538
+ providerDescription?: string | undefined;
539
+ authorizationCodeParamName?: string | undefined;
540
+ authorizationDisplay?: {
541
+ title: string;
542
+ description?: string | undefined;
543
+ icon?: "installation" | "account" | "organization" | "permission" | "settings" | undefined;
544
+ i18nMap?: Record<string, {
545
+ description?: string | undefined;
546
+ title?: string | undefined;
547
+ }> | undefined;
548
+ } | undefined;
549
+ refreshTokenUrl?: string | undefined;
382
550
  providerIconUrl?: string | undefined;
383
551
  pkceRequired?: boolean | undefined;
384
552
  additionalParams?: Record<string, string> | undefined;
@@ -396,6 +564,8 @@ export declare const OAuthConfigSchema: z.ZodObject<{
396
564
  refreshTokenExpiresInPath?: string | undefined;
397
565
  } | undefined;
398
566
  }>;
567
+ /** Caller scope only. Defaults to true; registered but unusable credentials never fall back. */
568
+ allowChannelFallback: z.ZodOptional<z.ZodBoolean>;
399
569
  }, "strip", z.ZodTypeAny, {
400
570
  authScope: "manager" | "channel" | "caller";
401
571
  authType: "oauth";
@@ -405,13 +575,22 @@ export declare const OAuthConfigSchema: z.ZodObject<{
405
575
  authorizationUrl: string;
406
576
  tokenUrl: string;
407
577
  scopes: string[];
408
- providerDescription?: string | undefined;
409
- authorizationCodeParamName?: string | undefined;
410
- refreshTokenUrl?: string | undefined;
411
578
  i18nMap?: Record<string, {
412
579
  providerName?: string | undefined;
413
580
  providerDescription?: string | undefined;
414
581
  }> | undefined;
582
+ providerDescription?: string | undefined;
583
+ authorizationCodeParamName?: string | undefined;
584
+ authorizationDisplay?: {
585
+ title: string;
586
+ description?: string | undefined;
587
+ icon?: "installation" | "account" | "organization" | "permission" | "settings" | undefined;
588
+ i18nMap?: Record<string, {
589
+ description?: string | undefined;
590
+ title?: string | undefined;
591
+ }> | undefined;
592
+ } | undefined;
593
+ refreshTokenUrl?: string | undefined;
415
594
  providerIconUrl?: string | undefined;
416
595
  pkceRequired?: boolean | undefined;
417
596
  additionalParams?: Record<string, string> | undefined;
@@ -429,6 +608,7 @@ export declare const OAuthConfigSchema: z.ZodObject<{
429
608
  refreshTokenExpiresInPath?: string | undefined;
430
609
  } | undefined;
431
610
  };
611
+ allowChannelFallback?: boolean | undefined;
432
612
  }, {
433
613
  authScope: "manager" | "channel" | "caller";
434
614
  authType: "oauth";
@@ -438,13 +618,22 @@ export declare const OAuthConfigSchema: z.ZodObject<{
438
618
  authorizationUrl: string;
439
619
  tokenUrl: string;
440
620
  scopes: string[];
441
- providerDescription?: string | undefined;
442
- authorizationCodeParamName?: string | undefined;
443
- refreshTokenUrl?: string | undefined;
444
621
  i18nMap?: Record<string, {
445
622
  providerName?: string | undefined;
446
623
  providerDescription?: string | undefined;
447
624
  }> | undefined;
625
+ providerDescription?: string | undefined;
626
+ authorizationCodeParamName?: string | undefined;
627
+ authorizationDisplay?: {
628
+ title: string;
629
+ description?: string | undefined;
630
+ icon?: "installation" | "account" | "organization" | "permission" | "settings" | undefined;
631
+ i18nMap?: Record<string, {
632
+ description?: string | undefined;
633
+ title?: string | undefined;
634
+ }> | undefined;
635
+ } | undefined;
636
+ refreshTokenUrl?: string | undefined;
448
637
  providerIconUrl?: string | undefined;
449
638
  pkceRequired?: boolean | undefined;
450
639
  additionalParams?: Record<string, string> | undefined;
@@ -462,6 +651,7 @@ export declare const OAuthConfigSchema: z.ZodObject<{
462
651
  refreshTokenExpiresInPath?: string | undefined;
463
652
  } | undefined;
464
653
  };
654
+ allowChannelFallback?: boolean | undefined;
465
655
  }>;
466
656
  export type OAuthConfig = ProtoBacked<z.infer<typeof OAuthConfigSchema>, ProtoOAuthConfig>;
467
657
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"oauth.d.ts","sourceRoot":"","sources":["../../src/extensions/oauth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"oauth.d.ts","sourceRoot":"","sources":["../../src/extensions/oauth.ts"],"names":[],"mappings":"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"}
@@ -15,11 +15,49 @@ export const AuthorizationOpenModeSchema = z.enum(["popup", "currentTab"]);
15
15
  *
16
16
  * - channel: always use the shared channel credential
17
17
  * - manager: only a manager caller can use that manager's credential
18
- * - caller: use the manager credential for manager callers and the channel
19
- * credential for every other caller
18
+ * - caller: prefer the manager credential for manager callers, falling back to
19
+ * the channel only when none is registered and allowChannelFallback is not false.
20
+ * Every other caller uses the channel credential.
20
21
  */
21
22
  export const OAuthAuthScopeSchema = z.enum(["channel", "manager", "caller"]);
22
23
  export const OAuthProviderSupportedLocaleSchema = z.enum(["ko", "ja", "en"]);
24
+ /** Built-in semantic icons rendered by App Store. No URLs or SVGs. */
25
+ export const OAuthStepIconSchema = z.enum([
26
+ "installation",
27
+ "account",
28
+ "organization",
29
+ "permission",
30
+ "settings",
31
+ ]);
32
+ export const OAuthStepLocalizedTextSchema = z
33
+ .object({
34
+ title: z.string().min(1).max(80).regex(/\S/, "OAuth step title must not be blank").optional(),
35
+ description: z.string().max(300).optional(),
36
+ })
37
+ .strict();
38
+ export const OAuthStepDisplaySchema = z
39
+ .object({
40
+ title: z.string().min(1).max(80).regex(/\S/, "OAuth step title must not be blank"),
41
+ description: z.string().max(300).optional(),
42
+ icon: OAuthStepIconSchema.optional(),
43
+ i18nMap: z
44
+ .record(z
45
+ .string()
46
+ .length(2)
47
+ .regex(/^(ko|en|ja)$/), OAuthStepLocalizedTextSchema)
48
+ .optional(),
49
+ })
50
+ .strict();
51
+ export const OAuthFlowStepSchema = z
52
+ .object({
53
+ id: z.enum(["before", "oauth", "after"]),
54
+ title: z.string(),
55
+ description: z.string().optional(),
56
+ icon: OAuthStepIconSchema,
57
+ status: z.enum(["pending", "in_progress", "completed", "failed", "unknown"]),
58
+ detail: z.string().optional(),
59
+ })
60
+ .strict();
23
61
  const OAuthParamNameSchema = z.string().regex(/^[A-Za-z0-9_.-]+$/);
24
62
  const OAuthJSONPathSchema = z.string().regex(/^[A-Za-z0-9_-]+(?:\.[A-Za-z0-9_-]+)*$/);
25
63
  export const OAuthProviderLocalizedTextSchema = z.object({
@@ -64,6 +102,7 @@ export const OAuthTokenResponseMappingSchema = z.object({
64
102
  * provider client ID/secret separately through Desk APIs/UI.
65
103
  */
66
104
  export const OAuthProviderSchema = z.object({
105
+ authorizationDisplay: OAuthStepDisplaySchema.optional(),
67
106
  provider: z.string().min(1),
68
107
  authorizationUrl: z.string().url(),
69
108
  tokenUrl: z.string().url(),
@@ -113,6 +152,8 @@ export const OAuthConfigSchema = z.object({
113
152
  authType: z.literal("oauth"),
114
153
  authScope: OAuthAuthScopeSchema,
115
154
  oauthProvider: OAuthProviderSchema,
155
+ /** Caller scope only. Defaults to true; registered but unusable credentials never fall back. */
156
+ allowChannelFallback: z.boolean().optional(),
116
157
  });
117
158
  /**
118
159
  * Input schema for extension.oauth.validation.validateCredentials.
@@ -1 +1 @@
1
- {"version":3,"file":"oauth.js","sourceRoot":"","sources":["../../src/extensions/oauth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"oauth.js","sourceRoot":"","sources":["../../src/extensions/oauth.ts"],"names":[],"mappings":"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"}
@@ -261,9 +261,9 @@ export declare const ChannelMessageProtoSchema: z.ZodObject<{
261
261
  id?: string | undefined;
262
262
  channelId?: string | undefined;
263
263
  requestId?: string | undefined;
264
+ form?: Record<string, any> | undefined;
264
265
  version?: string | undefined;
265
266
  updatedAt?: string | undefined;
266
- form?: Record<string, any> | undefined;
267
267
  blocks?: Record<string, any>[] | undefined;
268
268
  state?: "MESSAGE_STATE_UNSPECIFIED" | "MESSAGE_STATE_SENDING" | "MESSAGE_STATE_SENT" | "MESSAGE_STATE_FAILED" | "MESSAGE_STATE_REMOVED" | undefined;
269
269
  createdAt?: string | undefined;
@@ -324,9 +324,9 @@ export declare const ChannelMessageProtoSchema: z.ZodObject<{
324
324
  id?: string | undefined;
325
325
  channelId?: string | undefined;
326
326
  requestId?: string | undefined;
327
+ form?: Record<string, any> | undefined;
327
328
  version?: string | undefined;
328
329
  updatedAt?: string | undefined;
329
- form?: Record<string, any> | undefined;
330
330
  blocks?: Record<string, any>[] | undefined;
331
331
  state?: "MESSAGE_STATE_UNSPECIFIED" | "MESSAGE_STATE_SENDING" | "MESSAGE_STATE_SENT" | "MESSAGE_STATE_FAILED" | "MESSAGE_STATE_REMOVED" | undefined;
332
332
  createdAt?: string | undefined;
@@ -543,9 +543,9 @@ export declare const ChannelUserChatProtoSchema: z.ZodObject<{
543
543
  userId?: string | undefined;
544
544
  mediumType?: string | undefined;
545
545
  title?: string | undefined;
546
+ expiresAt?: string | undefined;
546
547
  version?: string | undefined;
547
548
  updatedAt?: string | undefined;
548
- expiresAt?: string | undefined;
549
549
  state?: "USER_CHAT_STATE_UNSPECIFIED" | "USER_CHAT_STATE_CLOSED" | "USER_CHAT_STATE_OPENED" | "USER_CHAT_STATE_SNOOZED" | "USER_CHAT_STATE_INITIAL" | "USER_CHAT_STATE_MISSED" | "USER_CHAT_STATE_QUEUED" | undefined;
550
550
  source?: Record<string, any> | undefined;
551
551
  tags?: string[] | undefined;
@@ -604,9 +604,9 @@ export declare const ChannelUserChatProtoSchema: z.ZodObject<{
604
604
  userId?: string | undefined;
605
605
  mediumType?: string | undefined;
606
606
  title?: string | undefined;
607
+ expiresAt?: string | undefined;
607
608
  version?: string | undefined;
608
609
  updatedAt?: string | undefined;
609
- expiresAt?: string | undefined;
610
610
  state?: "USER_CHAT_STATE_UNSPECIFIED" | "USER_CHAT_STATE_CLOSED" | "USER_CHAT_STATE_OPENED" | "USER_CHAT_STATE_SNOOZED" | "USER_CHAT_STATE_INITIAL" | "USER_CHAT_STATE_MISSED" | "USER_CHAT_STATE_QUEUED" | undefined;
611
611
  source?: Record<string, any> | undefined;
612
612
  tags?: string[] | undefined;
@@ -424,6 +424,32 @@ export interface OAuthProviderLocalizedText {
424
424
  providerName?: string | undefined;
425
425
  providerDescription?: string | undefined;
426
426
  }
427
+ /** Plain presentation only. Icons: installation, account, organization, permission, settings. */
428
+ export interface OAuthStepDisplay {
429
+ title?: string | undefined;
430
+ description?: string | undefined;
431
+ icon?: string | undefined;
432
+ i18nMap?: {
433
+ [key: string]: OAuthStepLocalizedText;
434
+ } | undefined;
435
+ }
436
+ export interface OAuthStepDisplay_I18nMapEntry {
437
+ key: string;
438
+ value?: OAuthStepLocalizedText | undefined;
439
+ }
440
+ export interface OAuthStepLocalizedText {
441
+ title?: string | undefined;
442
+ description?: string | undefined;
443
+ }
444
+ /** Platform-owned progress; apps cannot declare execution steps or statuses. */
445
+ export interface OAuthFlowStep {
446
+ id?: string | undefined;
447
+ title?: string | undefined;
448
+ description?: string | undefined;
449
+ icon?: string | undefined;
450
+ status?: string | undefined;
451
+ detail?: string | undefined;
452
+ }
427
453
  export interface OAuthProvider {
428
454
  provider?: string | undefined;
429
455
  authorizationUrl?: string | undefined;
@@ -446,6 +472,7 @@ export interface OAuthProvider {
446
472
  i18nMap?: {
447
473
  [key: string]: OAuthProviderLocalizedText;
448
474
  } | undefined;
475
+ authorizationDisplay?: OAuthStepDisplay | undefined;
449
476
  }
450
477
  export interface OAuthProvider_AdditionalParamsEntry {
451
478
  key: string;
@@ -461,6 +488,8 @@ export interface OAuthConfig {
461
488
  authType?: string | undefined;
462
489
  authScope?: string | undefined;
463
490
  oauthProvider?: OAuthProvider | undefined;
491
+ /** Caller scope only: use channel credentials when the manager has none. Defaults to true. */
492
+ allowChannelFallback?: boolean | undefined;
464
493
  }
465
494
  export interface OAuthCredentialValidationInput {
466
495
  accessToken?: string | undefined;
@@ -733,6 +762,8 @@ export interface HookConfig {
733
762
  redirectOrigins?: string[] | undefined;
734
763
  /** OAuth hooks only: channel or manager. Omit for the shared fallback. */
735
764
  authScope?: string | undefined;
765
+ /** Authorization flow hooks only. */
766
+ display?: OAuthStepDisplay | undefined;
736
767
  }
737
768
  /**
738
769
  * Optional OAuth flow hooks are ordinary app functions registered by getHooks.
@@ -744,12 +775,13 @@ export interface OAuthFlowHookInput {
744
775
  expiresAt?: string | undefined;
745
776
  }
746
777
  /**
747
- * Exactly {type: "continue"} or {type: "redirect", url: "https://..."}.
778
+ * Continue or redirect action, with an optional plain-text result summary.
748
779
  * Runtime validation rejects additional fields and URL on a continue result.
749
780
  */
750
781
  export interface OAuthFlowHookResult {
751
782
  type?: string | undefined;
752
783
  url?: string | undefined;
784
+ detail?: string | undefined;
753
785
  }
754
786
  export interface HookGetHooksInput {
755
787
  }