@microsoft/teams-js 2.33.0-beta.0 → 3.0.0-beta.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -300,7 +300,10 @@ export declare const enum ApiName {
300
300
  Sharing_ShareWebContent = "sharing.shareWebContent",
301
301
  StageView_Open = "stageView.open",
302
302
  StageView_Self_Close = "stageView.self.close",
303
- Store_Open = "store.open",
303
+ Store_OpenFullStore = "store.openFullStore",
304
+ Store_OpenAppDetail = "store.openAppDetail",
305
+ Store_OpenInContextStore = "store.openInContextStore",
306
+ Store_OpenSpecificStore = "store.openSpecificStore",
304
307
  Tasks_StartTask = "tasks.startTask",
305
308
  Tasks_SubmitTask = "tasks.submitTask",
306
309
  Tasks_UpdateTask = "tasks.updateTask",
@@ -1,41 +1,57 @@
1
+ import { DialogSize } from '../public';
1
2
  import { AppId } from '../public/appId';
2
3
  /**
3
4
  * @beta
4
5
  * @hidden
5
- * Enum of store dialog type
6
+ * @module
7
+ * Namespace to open app store
6
8
  * @internal
7
9
  * Limited to Microsoft-internal use
8
10
  */
9
- export declare enum StoreDialogType {
10
- /**
11
- * open a store without navigation
12
- */
13
- FullStore = "fullstore",
14
- /**
15
- * open a store with navigation to a specific collection
16
- */
17
- SpecificStore = "specificstore",
18
- /**
19
- * open in-context-store
20
- */
21
- InContextStore = "ics",
11
+ /**
12
+ * @beta
13
+ * @hidden
14
+ * Interface for opening the full store function parameters
15
+ * @internal
16
+ * Limited to Microsoft-internal use
17
+ */
18
+ export interface OpenFullStoreParams {
22
19
  /**
23
- * open detail dialog (DD)
20
+ * the store dialog size, defined by {@link DialogSize}, if not present, the host will choose an appropriate size
24
21
  */
25
- AppDetail = "appdetail"
22
+ size?: DialogSize;
26
23
  }
27
24
  /**
28
25
  * @beta
29
26
  * @hidden
30
- * Interface of open full store, copilot store and in-context-store function parameter
27
+ * Interface for opening the in-context store function parameters
31
28
  * @internal
32
29
  * Limited to Microsoft-internal use
33
30
  */
34
- export interface OpenFullStoreAndICSParams {
31
+ export interface OpenInContextStoreParams {
32
+ /**
33
+ * the store dialog size, defined by {@link DialogSize}, if not present, the host will choose an appropriate size
34
+ */
35
+ size?: DialogSize;
36
+ /**
37
+ * The application capability (e.g., "Tab", "Bot", "Messaging", "Connector", "CUSTOMBOT").
38
+ * Defaults to "Tab".
39
+ */
40
+ appCapability?: string;
41
+ /**
42
+ * The application meta capabilities (e.g., ["copilotPlugins", "copilotExtensions"]).
43
+ * Defaults to "[]".
44
+ */
45
+ appMetaCapabilities?: string[];
35
46
  /**
36
- * the store dialog type, defined by {@link StoreDialogType}
47
+ * The installation scope (e.g., "Personal" | "Team").
48
+ * Defaults to "Personal".
37
49
  */
38
- dialogType: StoreDialogType.FullStore | StoreDialogType.InContextStore;
50
+ installationScope?: string;
51
+ /**
52
+ * A list of app IDs to be filtered out.
53
+ */
54
+ filteredOutAppIds?: AppId[];
39
55
  }
40
56
  /**
41
57
  * @beta
@@ -45,14 +61,14 @@ export interface OpenFullStoreAndICSParams {
45
61
  * Limited to Microsoft-internal use
46
62
  */
47
63
  export interface OpenAppDetailParams {
48
- /**
49
- * need to be app detail type, defined by {@link StoreDialogType}
50
- */
51
- dialogType: StoreDialogType.AppDetail;
52
64
  /**
53
65
  * app id of the dialog to open
54
66
  */
55
67
  appId: AppId;
68
+ /**
69
+ * the store dialog size, defined by {@link DialogSize}, if not present, the host will choose an appropriate size
70
+ */
71
+ size?: DialogSize;
56
72
  }
57
73
  /**
58
74
  * @beta
@@ -62,58 +78,47 @@ export interface OpenAppDetailParams {
62
78
  * Limited to Microsoft-internal use
63
79
  */
64
80
  export interface OpenSpecificStoreParams {
65
- /**
66
- * need to be specific store type, defined by {@link StoreDialogType}
67
- */
68
- dialogType: StoreDialogType.SpecificStore;
69
81
  /**
70
82
  * collection id of the plugin store to open
71
83
  */
72
84
  collectionId: string;
85
+ /**
86
+ * the store dialog size, defined by {@link DialogSize}, if not present, the host will choose an appropriate size
87
+ */
88
+ size?: DialogSize;
73
89
  }
74
90
  /**
75
91
  * @beta
76
92
  * @hidden
77
- * Interface of open store function parameters, including OpenFullStoreAndICSParams, OpenAppDetailParams, OpenSpecificStoreParams
93
+ * Api to open a full store without navigation
78
94
  * @internal
79
95
  * Limited to Microsoft-internal use
80
96
  */
81
- export type OpenStoreParams = OpenFullStoreAndICSParams | OpenAppDetailParams | OpenSpecificStoreParams;
97
+ export declare function openFullStore(params: OpenFullStoreParams | undefined): Promise<void>;
82
98
  /**
83
99
  * @beta
84
100
  * @hidden
85
- * error message when getting invalid store dialog type
101
+ * Api to open an app detail dialog
86
102
  * @internal
87
103
  * Limited to Microsoft-internal use
88
104
  */
89
- export declare const errorInvalidDialogType = "Invalid store dialog type, but type needed to specify store to open";
105
+ export declare function openAppDetail(params: OpenAppDetailParams): Promise<void>;
90
106
  /**
91
107
  * @beta
92
108
  * @hidden
93
- * error message when getting wrong app id or missing app id
109
+ * Api to open an in-context-store dialog
94
110
  * @internal
95
111
  * Limited to Microsoft-internal use
96
112
  */
97
- export declare const errorMissingAppId = "No App Id present, but AppId needed to open AppDetail store";
113
+ export declare function openInContextStore(params: OpenInContextStoreParams | undefined): Promise<void>;
98
114
  /**
99
115
  * @beta
100
116
  * @hidden
101
- * error message when getting wrong collection id or missing collection id
102
- * @internal
103
- * Limited to Microsoft-internal use
104
- */
105
- export declare const errorMissingCollectionId = "No Collection Id present, but CollectionId needed to open a store specific to a collection";
106
- /**
107
- * @beta
108
- * @hidden
109
- * Api to open a store
110
- *
111
- * @param openStoreParams - params to call openStoreExperience
112
- *
117
+ * Api to open an store with navigation to a specific collection
113
118
  * @internal
114
119
  * Limited to Microsoft-internal use
115
120
  */
116
- export declare function openStoreExperience(openStoreParams: OpenStoreParams): Promise<void>;
121
+ export declare function openSpecificStore(params: OpenSpecificStoreParams): Promise<void>;
117
122
  /**
118
123
  * Checks if the store capability is supported by the host
119
124
  * @returns boolean to represent whether the store capability is supported
@@ -1 +1 @@
1
- import{__awaiter as e}from"../../../../node_modules/.pnpm/@rollup_plugin-typescript@11.1.6_rollup@4.24.4_tslib@2.6.3_typescript@4.9.5/node_modules/tslib/tslib.es6.js";import{callFunctionInHost as o}from"../internal/communication.js";import{ensureInitialized as t}from"../internal/internalAPIs.js";import{getApiVersionTag as i}from"../internal/telemetry.js";import{AppId as r}from"../public/appId.js";import{FrameContexts as p,errorNotSupportedOnPlatform as n}from"../public/constants.js";import{runtime as l}from"../public/runtime.js";var s;!function(e){e.FullStore="fullstore",e.SpecificStore="specificstore",e.InContextStore="ics",e.AppDetail="appdetail"}(s||(s={}));const c="Invalid store dialog type, but type needed to specify store to open",d="No App Id present, but AppId needed to open AppDetail store",a="No Collection Id present, but CollectionId needed to open a store specific to a collection";function u(u){return e(this,void 0,void 0,(function*(){if(t(l,p.content,p.sidePanel,p.meetingStage),!f())throw n;if(void 0===u||!Object.values(s).includes(u.dialogType))throw new Error(c);if(u.dialogType===s.AppDetail&&!(u.appId instanceof r))throw new Error(d);if(u.dialogType===s.SpecificStore&&!u.collectionId)throw new Error(a);return o("store.open",[u.dialogType,u.appId,u.collectionId],i("v2","store.open"))}))}function f(){return t(l)&&!!l.supports.store}export{s as StoreDialogType,c as errorInvalidDialogType,d as errorMissingAppId,a as errorMissingCollectionId,f as isSupported,u as openStoreExperience};
1
+ import{__awaiter as t}from"../../../../node_modules/.pnpm/@rollup_plugin-typescript@11.1.6_rollup@4.24.4_tslib@2.6.3_typescript@4.9.5/node_modules/tslib/tslib.es6.js";import{callFunctionInHost as o}from"../internal/communication.js";import{ensureInitialized as e}from"../internal/internalAPIs.js";import{getApiVersionTag as n}from"../internal/telemetry.js";import{AppId as i}from"../public/appId.js";import{FrameContexts as r,errorNotSupportedOnPlatform as p}from"../public/constants.js";import{runtime as s}from"../public/runtime.js";const l="v2",u="Invalid store dialog size";function c(e){return t(this,void 0,void 0,(function*(){v();const{size:t}=null!=e?e:{};return o("store.openFullStore",[b(t)],n(l,"store.openFullStore"))}))}function d(e){return t(this,void 0,void 0,(function*(){v();const{size:t,appId:r}=e;if(!(r instanceof i))throw new Error("No App Id present, but AppId needed to open AppDetail store");return o("store.openAppDetail",[b(t),r],n(l,"store.openAppDetail"))}))}function f(e){return t(this,void 0,void 0,(function*(){v();const{size:t,appCapability:i,appMetaCapabilities:r,installationScope:p,filteredOutAppIds:s}=null!=e?e:{};return o("store.openInContextStore",[b(t),i,r,p,null==s?void 0:s.map((t=>t.toString()))],n(l,"store.openInContextStore"))}))}function a(e){return t(this,void 0,void 0,(function*(){v();const{size:t,collectionId:i}=e;if(void 0===i)throw new Error("No Collection Id present, but CollectionId needed to open a store specific to a collection");return o("store.openSpecificStore",[b(t),i],n(l,"store.openSpecificStore"))}))}function m(){return e(s)&&!!s.supports.store}function v(){if(e(s,r.content,r.sidePanel,r.meetingStage),!m())throw p}function b(t){if(void 0===t)return;const{width:o,height:e}=t;if(void 0!==o&&"number"==typeof o&&o<0)throw new Error(u);if(void 0!==e&&"number"==typeof e&&e<0)throw new Error(u);return JSON.stringify(t)}export{m as isSupported,d as openAppDetail,c as openFullStore,f as openInContextStore,a as openSpecificStore};
@@ -1 +1 @@
1
- const t="2.33.0-beta.0";export{t as version};
1
+ const t="3.0.0-beta.0";export{t as version};
@@ -1607,12 +1607,11 @@ __webpack_require__.d(hostEntity_namespaceObject, {
1607
1607
  var store_namespaceObject = {};
1608
1608
  __webpack_require__.r(store_namespaceObject);
1609
1609
  __webpack_require__.d(store_namespaceObject, {
1610
- StoreDialogType: () => (StoreDialogType),
1611
- errorInvalidDialogType: () => (errorInvalidDialogType),
1612
- errorMissingAppId: () => (errorMissingAppId),
1613
- errorMissingCollectionId: () => (errorMissingCollectionId),
1614
1610
  isSupported: () => (store_isSupported),
1615
- openStoreExperience: () => (openStoreExperience)
1611
+ openAppDetail: () => (openAppDetail),
1612
+ openFullStore: () => (openFullStore),
1613
+ openInContextStore: () => (openInContextStore),
1614
+ openSpecificStore: () => (openSpecificStore)
1616
1615
  });
1617
1616
 
1618
1617
  // NAMESPACE OBJECT: ./src/public/appInstallDialog.ts
@@ -4461,7 +4460,7 @@ function isSerializable(arg) {
4461
4460
  * @hidden
4462
4461
  * Package version.
4463
4462
  */
4464
- const version = "2.33.0-beta.0";
4463
+ const version = "3.0.0-beta.0";
4465
4464
 
4466
4465
  ;// ./src/internal/internalAPIs.ts
4467
4466
 
@@ -13023,95 +13022,76 @@ var store_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _ar
13023
13022
 
13024
13023
 
13025
13024
 
13026
- /**
13027
- * @beta
13028
- * @hidden
13029
- * @module
13030
- * Namespace to open app store
13031
- * @internal
13032
- * Limited to Microsoft-internal use
13033
- */
13034
13025
  const StoreVersionTagNum = "v2" /* ApiVersionNumber.V_2 */;
13026
+ const errorInvalidDialogSize = 'Invalid store dialog size';
13027
+ const errorMissingAppId = 'No App Id present, but AppId needed to open AppDetail store';
13028
+ const errorMissingCollectionId = 'No Collection Id present, but CollectionId needed to open a store specific to a collection';
13035
13029
  /**
13036
13030
  * @beta
13037
13031
  * @hidden
13038
- * Enum of store dialog type
13039
- * @internal
13040
- * Limited to Microsoft-internal use
13041
- */
13042
- var StoreDialogType;
13043
- (function (StoreDialogType) {
13044
- /**
13045
- * open a store without navigation
13046
- */
13047
- StoreDialogType["FullStore"] = "fullstore";
13048
- /**
13049
- * open a store with navigation to a specific collection
13050
- */
13051
- StoreDialogType["SpecificStore"] = "specificstore";
13052
- /**
13053
- * open in-context-store
13054
- */
13055
- StoreDialogType["InContextStore"] = "ics";
13056
- /**
13057
- * open detail dialog (DD)
13058
- */
13059
- StoreDialogType["AppDetail"] = "appdetail";
13060
- })(StoreDialogType || (StoreDialogType = {}));
13061
- /**
13062
- * @beta
13063
- * @hidden
13064
- * error message when getting invalid store dialog type
13032
+ * Api to open a full store without navigation
13065
13033
  * @internal
13066
13034
  * Limited to Microsoft-internal use
13067
13035
  */
13068
- const errorInvalidDialogType = 'Invalid store dialog type, but type needed to specify store to open';
13036
+ function openFullStore(params) {
13037
+ return store_awaiter(this, void 0, void 0, function* () {
13038
+ ensureStoreReady();
13039
+ const { size } = params !== null && params !== void 0 ? params : {};
13040
+ return callFunctionInHost("store.openFullStore" /* ApiName.Store_OpenFullStore */, [serializeValidSize(size)], getApiVersionTag(StoreVersionTagNum, "store.openFullStore" /* ApiName.Store_OpenFullStore */));
13041
+ });
13042
+ }
13069
13043
  /**
13070
13044
  * @beta
13071
13045
  * @hidden
13072
- * error message when getting wrong app id or missing app id
13046
+ * Api to open an app detail dialog
13073
13047
  * @internal
13074
13048
  * Limited to Microsoft-internal use
13075
13049
  */
13076
- const errorMissingAppId = 'No App Id present, but AppId needed to open AppDetail store';
13050
+ function openAppDetail(params) {
13051
+ return store_awaiter(this, void 0, void 0, function* () {
13052
+ ensureStoreReady();
13053
+ const { size, appId } = params;
13054
+ if (!(appId instanceof AppId)) {
13055
+ throw new Error(errorMissingAppId);
13056
+ }
13057
+ return callFunctionInHost("store.openAppDetail" /* ApiName.Store_OpenAppDetail */, [serializeValidSize(size), appId], getApiVersionTag(StoreVersionTagNum, "store.openAppDetail" /* ApiName.Store_OpenAppDetail */));
13058
+ });
13059
+ }
13077
13060
  /**
13078
13061
  * @beta
13079
13062
  * @hidden
13080
- * error message when getting wrong collection id or missing collection id
13063
+ * Api to open an in-context-store dialog
13081
13064
  * @internal
13082
13065
  * Limited to Microsoft-internal use
13083
13066
  */
13084
- const errorMissingCollectionId = 'No Collection Id present, but CollectionId needed to open a store specific to a collection';
13067
+ function openInContextStore(params) {
13068
+ return store_awaiter(this, void 0, void 0, function* () {
13069
+ ensureStoreReady();
13070
+ const { size, appCapability, appMetaCapabilities, installationScope, filteredOutAppIds } = params !== null && params !== void 0 ? params : {};
13071
+ return callFunctionInHost("store.openInContextStore" /* ApiName.Store_OpenInContextStore */, [
13072
+ serializeValidSize(size),
13073
+ appCapability,
13074
+ appMetaCapabilities,
13075
+ installationScope,
13076
+ filteredOutAppIds === null || filteredOutAppIds === void 0 ? void 0 : filteredOutAppIds.map((id) => id.toString()),
13077
+ ], getApiVersionTag(StoreVersionTagNum, "store.openInContextStore" /* ApiName.Store_OpenInContextStore */));
13078
+ });
13079
+ }
13085
13080
  /**
13086
13081
  * @beta
13087
13082
  * @hidden
13088
- * Api to open a store
13089
- *
13090
- * @param openStoreParams - params to call openStoreExperience
13091
- *
13083
+ * Api to open an store with navigation to a specific collection
13092
13084
  * @internal
13093
13085
  * Limited to Microsoft-internal use
13094
13086
  */
13095
- function openStoreExperience(openStoreParams) {
13087
+ function openSpecificStore(params) {
13096
13088
  return store_awaiter(this, void 0, void 0, function* () {
13097
- ensureInitialized(runtime, FrameContexts.content, FrameContexts.sidePanel, FrameContexts.meetingStage);
13098
- if (!store_isSupported()) {
13099
- throw errorNotSupportedOnPlatform;
13100
- }
13101
- if (openStoreParams === undefined || !Object.values(StoreDialogType).includes(openStoreParams.dialogType)) {
13102
- throw new Error(errorInvalidDialogType);
13103
- }
13104
- if (openStoreParams.dialogType === StoreDialogType.AppDetail && !(openStoreParams.appId instanceof AppId)) {
13105
- throw new Error(errorMissingAppId);
13106
- }
13107
- if (openStoreParams.dialogType === StoreDialogType.SpecificStore && !openStoreParams.collectionId) {
13089
+ ensureStoreReady();
13090
+ const { size, collectionId } = params;
13091
+ if (collectionId === undefined) {
13108
13092
  throw new Error(errorMissingCollectionId);
13109
13093
  }
13110
- return callFunctionInHost("store.open" /* ApiName.Store_Open */, [
13111
- openStoreParams.dialogType,
13112
- openStoreParams.appId,
13113
- openStoreParams.collectionId,
13114
- ], getApiVersionTag(StoreVersionTagNum, "store.open" /* ApiName.Store_Open */));
13094
+ return callFunctionInHost("store.openSpecificStore" /* ApiName.Store_OpenSpecificStore */, [serializeValidSize(size), collectionId], getApiVersionTag(StoreVersionTagNum, "store.openSpecificStore" /* ApiName.Store_OpenSpecificStore */));
13115
13095
  });
13116
13096
  }
13117
13097
  /**
@@ -13123,6 +13103,25 @@ function openStoreExperience(openStoreParams) {
13123
13103
  function store_isSupported() {
13124
13104
  return ensureInitialized(runtime) && !!runtime.supports.store;
13125
13105
  }
13106
+ function ensureStoreReady() {
13107
+ ensureInitialized(runtime, FrameContexts.content, FrameContexts.sidePanel, FrameContexts.meetingStage);
13108
+ if (!store_isSupported()) {
13109
+ throw errorNotSupportedOnPlatform;
13110
+ }
13111
+ }
13112
+ function serializeValidSize(size) {
13113
+ if (size === undefined) {
13114
+ return undefined;
13115
+ }
13116
+ const { width, height } = size;
13117
+ if (width !== undefined && typeof width === 'number' && width < 0) {
13118
+ throw new Error(errorInvalidDialogSize);
13119
+ }
13120
+ if (height !== undefined && typeof height === 'number' && height < 0) {
13121
+ throw new Error(errorInvalidDialogSize);
13122
+ }
13123
+ return JSON.stringify(size);
13124
+ }
13126
13125
 
13127
13126
  ;// ./src/private/index.ts
13128
13127