@blackbaud/sky-addin-client 1.2.1 → 1.3.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.
- package/CHANGELOG.md +6 -0
- package/README.md +18 -0
- package/bundles/sky-addin-client.global-es2015.js +105 -14
- package/bundles/sky-addin-client.global-es2015.min.js +1 -1
- package/bundles/sky-addin-client.global.js +106 -15
- package/bundles/sky-addin-client.global.min.js +1 -1
- package/bundles/sky-addin-client.umd-es2015.js +105 -14
- package/bundles/sky-addin-client.umd-es2015.min.js +1 -1
- package/bundles/sky-addin-client.umd.js +106 -15
- package/bundles/sky-addin-client.umd.min.js +1 -1
- package/package.json +2 -2
- package/src/addin/addin-client.d.ts +5 -0
- package/src/addin/addin-client.js +87 -5
- package/src/addin/addin-client.js.map +1 -1
- package/src/addin/addin-client.spec.js +107 -3
- package/src/addin/addin-client.spec.js.map +1 -1
- package/src/addin/client-interfaces/addin-client-args.d.ts +5 -0
- package/src/addin/client-interfaces/addin-client-config.d.ts +9 -0
- package/src/addin/client-interfaces/addin-client-config.js +3 -0
- package/src/addin/client-interfaces/addin-client-config.js.map +1 -0
- package/src/addin/client-interfaces/index.d.ts +1 -0
- package/src/addin/client-interfaces/index.js +1 -0
- package/src/addin/client-interfaces/index.js.map +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,9 @@
|
|
|
1
|
+
# 1.3.0 (2024-06-18)
|
|
2
|
+
- Added `AddinClientConfig` interface to allow additional host origins to be supplied by an `AddinClient`.
|
|
3
|
+
|
|
4
|
+
# 1.2.2 (2024-04-25)
|
|
5
|
+
- Updated `allowedOrigins` to support Good Move and fix EMC portal issues
|
|
6
|
+
|
|
1
7
|
# 1.2.1 (2024-04-01)
|
|
2
8
|
- Package updates
|
|
3
9
|
|
package/README.md
CHANGED
|
@@ -69,6 +69,24 @@ var client = new AddinClient({
|
|
|
69
69
|
});
|
|
70
70
|
```
|
|
71
71
|
|
|
72
|
+
You can also allow additional origins where your add-in client may run within a Blackbaud host page. Additional origins are supplied as regular expression patterns. The `AddinClient` already allows several Blackbaud host origins by default. If you find a need to extend the defaults, you may do so by populating the `AddinClientConfig`'s `allowedOrigins` property.
|
|
73
|
+
|
|
74
|
+
```js
|
|
75
|
+
var client = new AddinClient({
|
|
76
|
+
callbacks: {
|
|
77
|
+
init: (args) => {
|
|
78
|
+
args.ready({
|
|
79
|
+
showUI: true,
|
|
80
|
+
title: 'My Custom Tile Title'
|
|
81
|
+
});
|
|
82
|
+
}
|
|
83
|
+
},
|
|
84
|
+
allowedOrigins: [
|
|
85
|
+
/^https\:\/\/[\w\-\.]+\.additionalblackbauddomain\.com$/,
|
|
86
|
+
]
|
|
87
|
+
});
|
|
88
|
+
```
|
|
89
|
+
|
|
72
90
|
#### Tile add-ins
|
|
73
91
|
For tile add-ins, the URL for the add-in will be rendered in a visible iframe on the page, where you can render any custom content. The iframe will initially be hidden until an initialize protocol is completed between the host and the add-in.
|
|
74
92
|
|
|
@@ -45,7 +45,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
45
45
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
46
46
|
__exportStar(__webpack_require__(2), exports);
|
|
47
47
|
__exportStar(__webpack_require__(3), exports);
|
|
48
|
-
__exportStar(__webpack_require__(
|
|
48
|
+
__exportStar(__webpack_require__(32), exports);
|
|
49
49
|
|
|
50
50
|
|
|
51
51
|
/***/ }),
|
|
@@ -56,8 +56,8 @@ __exportStar(__webpack_require__(31), exports);
|
|
|
56
56
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
57
57
|
exports.AddinClient = void 0;
|
|
58
58
|
/**
|
|
59
|
-
|
|
60
|
-
|
|
59
|
+
* Collection of regexs for our whitelist of host origins.
|
|
60
|
+
*/
|
|
61
61
|
const allowedOrigins = [
|
|
62
62
|
/^https\:\/\/[\w\-\.]+\.blackbaud\.com$/,
|
|
63
63
|
/^https\:\/\/[\w\-\.]+\.blackbaud\-dev\.com$/,
|
|
@@ -76,7 +76,70 @@ const allowedOrigins = [
|
|
|
76
76
|
/^https\:\/\/[\w\-\.]+\.myschoolapp\.com$/,
|
|
77
77
|
/^https\:\/\/[\w\-\.]+\.myschoolautomation\.com$/,
|
|
78
78
|
/^https\:\/\/[\w\-\.]+\.myschooldemo\.com$/,
|
|
79
|
-
/^https\:\/\/[\w\-\.]+\.myschooltraining\.com
|
|
79
|
+
/^https\:\/\/[\w\-\.]+\.myschooltraining\.com$/,
|
|
80
|
+
/^https\:\/\/[\w\-\.]+\.blackbaudwp\.com$/,
|
|
81
|
+
/^https\:\/\/[\w\-\.]+\.carrytheload\.org$/,
|
|
82
|
+
/^https\:\/\/[\w\-\.]+\.ummsfoundation\.org$/,
|
|
83
|
+
/^http\:\/\/[\w\-\.]+\.lcrf\.org$/,
|
|
84
|
+
/^https\:\/\/[\w\-\.]+\.go2\.org$/,
|
|
85
|
+
/^https\:\/\/[\w\-\.]+\.nationwidechildrens\.org$/,
|
|
86
|
+
/^https\:\/\/[\w\-\.]+\.lupus\.org$/,
|
|
87
|
+
/^https\:\/\/[\w\-\.]+\.operationsmile\.ca$/,
|
|
88
|
+
/^https\:\/\/[\w\-\.]+\.convio\.net$/,
|
|
89
|
+
/^https\:\/\/[\w\-\.]+\.ontariospca\.ca$/,
|
|
90
|
+
/^https\:\/\/[\w\-\.]+\.brighamandwomens\.org$/,
|
|
91
|
+
/^https\:\/\/[\w\-\.]+\.northernlighthealth\.org$/,
|
|
92
|
+
/^http\:\/\/[\w\-\.]+\.convio\.net$/,
|
|
93
|
+
/^https\:\/\/[\w\-\.]+\.alpha1\.org$/,
|
|
94
|
+
/^https\:\/\/[\w\-\.]+\.pscpartners\.org$/,
|
|
95
|
+
/^https\:\/\/[\w\-\.]+\.mercyforanimals\.org$/,
|
|
96
|
+
/^https\:\/\/[\w\-\.]+\.braintumor\.org$/,
|
|
97
|
+
/^https\:\/\/[\w\-\.]+\.cancer\.ca$/,
|
|
98
|
+
/^https\:\/\/[\w\-\.]+\.phoenixchildrensfoundation\.org$/,
|
|
99
|
+
/^https\:\/\/[\w\-\.]+\.ocmc\.org$/,
|
|
100
|
+
/^https\:\/\/[\w\-\.]+\.stlouischildrens\.org$/,
|
|
101
|
+
/^https\:\/\/[\w\-\.]+\.choa\.org$/,
|
|
102
|
+
/^https\:\/\/[\w\-\.]+\.acsevents\.org$/,
|
|
103
|
+
/^https\:\/\/[\w\-\.]+\.operationsmile\.org$/,
|
|
104
|
+
/^https\:\/\/[\w\-\.]+\.mdmercy\.com$/,
|
|
105
|
+
/^https\:\/\/[\w\-\.]+\.cookchildrens\.org$/,
|
|
106
|
+
/^https\:\/\/[\w\-\.]+\.chla\.org$/,
|
|
107
|
+
/^https\:\/\/[\w\-\.]+\.nleomf\.org$/,
|
|
108
|
+
/^https\:\/\/[\w\-\.]+\.pwatoronto\.org$/,
|
|
109
|
+
/^https\:\/\/[\w\-\.]+\.jfsla\.org$/,
|
|
110
|
+
/^https\:\/\/[\w\-\.]+\.roswellpark\.org$/,
|
|
111
|
+
/^https\:\/\/[\w\-\.]+\.alsagoldenwest\.org$/,
|
|
112
|
+
/^https\:\/\/[\w\-\.]+\.cancercarefoundation\.ca$/,
|
|
113
|
+
/^https\:\/\/[\w\-\.]+\.alsnc\.org$/,
|
|
114
|
+
/^https\:\/\/[\w\-\.]+\.alsanm\.org$/,
|
|
115
|
+
/^https\:\/\/[\w\-\.]+\.waysidewaifs\.org$/,
|
|
116
|
+
/^https\:\/\/[\w\-\.]+\.bladdercancercanada\.org$/,
|
|
117
|
+
/^https\:\/\/[\w\-\.]+\.jimmyfund\.org$/,
|
|
118
|
+
/^https\:\/\/[\w\-\.]+\.info\-komen\.org$/,
|
|
119
|
+
/^https\:\/\/[\w\-\.]+\.mountsinai\.org$/,
|
|
120
|
+
/^https\:\/\/[\w\-\.]+\.walkforpd\.ca$/,
|
|
121
|
+
/^https\:\/\/[\w\-\.]+\.alsoregon\.org$/,
|
|
122
|
+
/^https\:\/\/[\w\-\.]+\.feedhopenow\.org$/,
|
|
123
|
+
/^https\:\/\/[\w\-\.]+\.trilliumgiving\.ca$/,
|
|
124
|
+
/^https\:\/\/[\w\-\.]+\.swimacrossamerica\.org$/,
|
|
125
|
+
/^https\:\/\/ovariancanada\.org$/,
|
|
126
|
+
/^https\:\/\/[\w\-\.]+\.ovariancanada\.org$/,
|
|
127
|
+
/^https\:\/\/[\w\-\.]+\.alsunitedchicago\.org$/,
|
|
128
|
+
/^https\:\/\/[\w\-\.]+\.fredhutch\.org$/,
|
|
129
|
+
/^https\:\/\/[\w\-\.]+\.hss\.edu$/,
|
|
130
|
+
/^https\:\/\/[\w\-\.]+\.nyghfoundation\.ca$/,
|
|
131
|
+
/^https\:\/\/[\w\-\.]+\.natureconservancy\.ca$/,
|
|
132
|
+
/^https\:\/\/[\w\-\.]+\.llscanada\.org$/,
|
|
133
|
+
/^https\:\/\/[\w\-\.]+\.als\-ny\.org$/,
|
|
134
|
+
/^https\:\/\/[\w\-\.]+\.zerocancer\.org$/,
|
|
135
|
+
/^https\:\/\/[\w\-\.]+\.alsmidatlantic\.org$/,
|
|
136
|
+
/^https\:\/\/[\w\-\.]+\.habitat\.ca$/,
|
|
137
|
+
/^https\:\/\/[\w\-\.]+\.stamfordhospitalfoundation\.org$/,
|
|
138
|
+
/^https\:\/\/[\w\-\.]+\.alsohio\.org$/,
|
|
139
|
+
/^https\:\/\/[\w\-\.]+\.cancercarefdn\.mb\.ca$/,
|
|
140
|
+
/^https\:\/\/[\w\-\.]+\.baycrestfoundation\.org$/,
|
|
141
|
+
/^https\:\/\/[\w\-\.]+\.southlake\.ca$/,
|
|
142
|
+
/^https\:\/\/[\w\-\.]+\.parkinson\.ca$/,
|
|
80
143
|
];
|
|
81
144
|
/**
|
|
82
145
|
* Client for interacting with the parent page hosting the add-in.
|
|
@@ -136,6 +199,11 @@ class AddinClient {
|
|
|
136
199
|
* The add-in client will throw an error if an event is attempted but not one the supported types.
|
|
137
200
|
*/
|
|
138
201
|
this.supportedEventTypes = [];
|
|
202
|
+
/**
|
|
203
|
+
* Collection of regexs for our whitelist of host origins.
|
|
204
|
+
*/
|
|
205
|
+
this.allowedOrigins = allowedOrigins;
|
|
206
|
+
this.initConfig(args.config);
|
|
139
207
|
this.windowMessageHandler = (event) => {
|
|
140
208
|
this.handleMessage(event);
|
|
141
209
|
};
|
|
@@ -369,6 +437,20 @@ class AddinClient {
|
|
|
369
437
|
};
|
|
370
438
|
});
|
|
371
439
|
}
|
|
440
|
+
initConfig(config) {
|
|
441
|
+
var _a;
|
|
442
|
+
if (((_a = config === null || config === void 0 ? void 0 : config.allowedOrigins) === null || _a === void 0 ? void 0 : _a.length) > 0) {
|
|
443
|
+
// append custom allowed origins
|
|
444
|
+
this.allowedOrigins = this.allowedOrigins.concat(config.allowedOrigins);
|
|
445
|
+
// remove duplicates
|
|
446
|
+
this.allowedOrigins = this.allowedOrigins.reduce((acc, curr) => {
|
|
447
|
+
if (!acc.find((a) => a.source === curr.source)) {
|
|
448
|
+
acc.push(curr);
|
|
449
|
+
}
|
|
450
|
+
return acc;
|
|
451
|
+
}, []);
|
|
452
|
+
}
|
|
453
|
+
}
|
|
372
454
|
/**
|
|
373
455
|
* Post a message to the host page informing it that the add-in is
|
|
374
456
|
* now started and listening for messages from the host.
|
|
@@ -530,7 +612,7 @@ class AddinClient {
|
|
|
530
612
|
* @param hostOrigin
|
|
531
613
|
*/
|
|
532
614
|
setKnownAllowedHostOrigin(hostOrigin) {
|
|
533
|
-
for (const allowedOrigin of allowedOrigins) {
|
|
615
|
+
for (const allowedOrigin of this.allowedOrigins) {
|
|
534
616
|
if (allowedOrigin.test(hostOrigin)) {
|
|
535
617
|
this.trustedOrigin = hostOrigin;
|
|
536
618
|
return;
|
|
@@ -729,6 +811,7 @@ __exportStar(__webpack_require__(27), exports);
|
|
|
729
811
|
__exportStar(__webpack_require__(28), exports);
|
|
730
812
|
__exportStar(__webpack_require__(29), exports);
|
|
731
813
|
__exportStar(__webpack_require__(30), exports);
|
|
814
|
+
__exportStar(__webpack_require__(31), exports);
|
|
732
815
|
|
|
733
816
|
|
|
734
817
|
/***/ }),
|
|
@@ -919,6 +1002,14 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
|
919
1002
|
/***/ ((__unused_webpack_module, exports) => {
|
|
920
1003
|
|
|
921
1004
|
|
|
1005
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
1006
|
+
|
|
1007
|
+
|
|
1008
|
+
/***/ }),
|
|
1009
|
+
/* 26 */
|
|
1010
|
+
/***/ ((__unused_webpack_module, exports) => {
|
|
1011
|
+
|
|
1012
|
+
|
|
922
1013
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
923
1014
|
exports.AddinConfirmButtonStyle = void 0;
|
|
924
1015
|
/**
|
|
@@ -937,7 +1028,7 @@ var AddinConfirmButtonStyle;
|
|
|
937
1028
|
|
|
938
1029
|
|
|
939
1030
|
/***/ }),
|
|
940
|
-
/*
|
|
1031
|
+
/* 27 */
|
|
941
1032
|
/***/ ((__unused_webpack_module, exports) => {
|
|
942
1033
|
|
|
943
1034
|
|
|
@@ -945,7 +1036,7 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
|
945
1036
|
|
|
946
1037
|
|
|
947
1038
|
/***/ }),
|
|
948
|
-
/*
|
|
1039
|
+
/* 28 */
|
|
949
1040
|
/***/ ((__unused_webpack_module, exports) => {
|
|
950
1041
|
|
|
951
1042
|
|
|
@@ -964,7 +1055,7 @@ var AddinTabSummaryStyle;
|
|
|
964
1055
|
|
|
965
1056
|
|
|
966
1057
|
/***/ }),
|
|
967
|
-
/*
|
|
1058
|
+
/* 29 */
|
|
968
1059
|
/***/ ((__unused_webpack_module, exports) => {
|
|
969
1060
|
|
|
970
1061
|
|
|
@@ -972,7 +1063,7 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
|
972
1063
|
|
|
973
1064
|
|
|
974
1065
|
/***/ }),
|
|
975
|
-
/*
|
|
1066
|
+
/* 30 */
|
|
976
1067
|
/***/ ((__unused_webpack_module, exports) => {
|
|
977
1068
|
|
|
978
1069
|
|
|
@@ -993,7 +1084,7 @@ var AddinTileSummaryStyle;
|
|
|
993
1084
|
|
|
994
1085
|
|
|
995
1086
|
/***/ }),
|
|
996
|
-
/*
|
|
1087
|
+
/* 31 */
|
|
997
1088
|
/***/ ((__unused_webpack_module, exports) => {
|
|
998
1089
|
|
|
999
1090
|
|
|
@@ -1016,7 +1107,7 @@ var AddinToastStyle;
|
|
|
1016
1107
|
|
|
1017
1108
|
|
|
1018
1109
|
/***/ }),
|
|
1019
|
-
/*
|
|
1110
|
+
/* 32 */
|
|
1020
1111
|
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
1021
1112
|
|
|
1022
1113
|
|
|
@@ -1035,12 +1126,12 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
1035
1126
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
1036
1127
|
};
|
|
1037
1128
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
1038
|
-
__exportStar(__webpack_require__(32), exports);
|
|
1039
1129
|
__exportStar(__webpack_require__(33), exports);
|
|
1130
|
+
__exportStar(__webpack_require__(34), exports);
|
|
1040
1131
|
|
|
1041
1132
|
|
|
1042
1133
|
/***/ }),
|
|
1043
|
-
/*
|
|
1134
|
+
/* 33 */
|
|
1044
1135
|
/***/ ((__unused_webpack_module, exports) => {
|
|
1045
1136
|
|
|
1046
1137
|
|
|
@@ -1048,7 +1139,7 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
|
1048
1139
|
|
|
1049
1140
|
|
|
1050
1141
|
/***/ }),
|
|
1051
|
-
/*
|
|
1142
|
+
/* 34 */
|
|
1052
1143
|
/***/ ((__unused_webpack_module, exports) => {
|
|
1053
1144
|
|
|
1054
1145
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(()=>{"use strict";var e={789:function(e,t,s){var o=this&&this.__createBinding||(Object.create?function(e,t,s,o){void 0===o&&(o=s);var i=Object.getOwnPropertyDescriptor(t,s);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[s]}}),Object.defineProperty(e,o,i)}:function(e,t,s,o){void 0===o&&(o=s),e[o]=t[s]}),i=this&&this.__exportStar||function(e,t){for(var s in e)"default"===s||Object.prototype.hasOwnProperty.call(t,s)||o(t,e,s)};Object.defineProperty(t,"__esModule",{value:!0}),i(s(983),t)},903:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.AddinClient=void 0;const s=[/^https\:\/\/[\w\-\.]+\.blackbaud\.com$/,/^https\:\/\/[\w\-\.]+\.blackbaud\-dev\.com$/,/^http\:\/\/[\w\-\.]+\.blackbaud\-dev\.com$/,/^https\:\/\/[\w\-\.]+\.blackbaudhosting\.com$/,/^https\:\/\/[\w\-\.]+\.bbcloudservices\.com$/,/^https\:\/\/localhost(\:[0-9]+)?$/,/^https\:\/\/secure[2|3|8]\.convio\.net$/,/^https\:\/\/testweb\.convio\.com$/,/^https\:\/\/[\w\-\.]+\.conviocloud\.com$/,/^https\:\/\/[\w\-\.]+\.blackbaudcloud\.com$/,/^https\:\/\/[\w\-\.]+\.blackbaudfaith\.com$/,/^https\:\/\/[\w\-\.]+\.blackbaudportal\.com$/,/^https\:\/\/[\w\-\.]+\.bbk12\.com$/,/^https\:\/\/[\w\-\.]+\.mycampus\-app\.com$/,/^https\:\/\/[\w\-\.]+\.myschoolapp\.com$/,/^https\:\/\/[\w\-\.]+\.myschoolautomation\.com$/,/^https\:\/\/[\w\-\.]+\.myschooldemo\.com$/,/^https\:\/\/[\w\-\.]+\.myschooltraining\.com$/];class o{static getQueryString(){return window.location.search}constructor(e){this.args=e,this.authTokenRequests=[],this.lastAuthTokenRequestId=0,this.modalRequests=[],this.lastModalRequestId=0,this.registeredAddinEvents={},this.sentEvents={},this.pendingSentEvents={},this.eventRequestId=0,this.supportedEventTypes=[],this.windowMessageHandler=e=>{this.handleMessage(e)},window.addEventListener("message",this.windowMessageHandler),this.raiseAddinReadyMessage()}destroy(){window.removeEventListener("message",this.windowMessageHandler),this.heightChangeIntervalId&&clearInterval(this.heightChangeIntervalId)}navigate(e){this.postMessageToHostPage({message:{url:e.url},messageType:"navigate"})}getAuthToken(){return this.getUserIdentityToken()}getUserIdentityToken(){return new Promise(((e,t)=>{const s=++this.lastAuthTokenRequestId;this.authTokenRequests[s]={reject:t,resolve:e},this.postMessageToHostPage({message:{authTokenRequestId:s},messageType:"get-auth-token"})}))}showModal(e){return{modalClosed:new Promise(((t,s)=>{const o=++this.lastModalRequestId;this.modalRequests[o]={reject:s,resolve:t},this.postMessageToHostPage({message:{args:e,modalRequestId:o},messageType:"show-modal"})}))}}closeModal(e){this.postMessageToHostPage({message:e,messageType:"close-modal"})}openHelp(e){this.postMessageToHostPage({message:{helpKey:e.helpKey},messageType:"open-help"})}showToast(e){this.postMessageToHostPage({message:e,messageType:"show-toast"})}showFlyout(e){return{flyoutClosed:new Promise(((t,s)=>{e.defaultWidth=e.defaultWidth,e.maxWidth=e.maxWidth,e.minWidth=e.minWidth,this.flyoutRequest={reject:s,resolve:t},this.postMessageToHostPage({message:e,messageType:"show-flyout"})}))}}closeFlyout(){this.postMessageToHostPage({messageType:"close-flyout"})}showConfirm(e){return new Promise(((t,s)=>{this.confirmRequest={reject:s,resolve:t},this.postMessageToHostPage({message:e,messageType:"show-confirm"})}))}showError(e){this.postMessageToHostPage({message:e,messageType:"show-error"})}showWait(){this.postMessageToHostPage({messageType:"show-wait"})}hideWait(){this.postMessageToHostPage({messageType:"hide-wait"})}addEventHandler(e,t){this.registeredAddinEvents[e]=t}sendEvent(e){return new Promise(((t,s)=>{const o=e.type;this.supportedEventTypes.includes(o)||s("Event type not supported");const i=this.pendingSentEvents[o];i&&(clearTimeout(i.timeoutId),i.reject("Event cancelled"));const n=setTimeout((()=>{delete this.pendingSentEvents[o],this.postMessageToHostPage({message:{event:e,eventRequestId:this.eventRequestId},messageType:"client-event"}),this.sentEvents[this.eventRequestId]=t,this.eventRequestId++}),200);this.pendingSentEvents[o]={reject:s,timeoutId:n}}))}raiseAddinReadyMessage(){this.postMessageToHostPage({messageType:"ready"},"*")}handleModalClosedMessage(e){const t=this.modalRequests,s=e.modalRequestId;t[s].resolve(e.context),t[s]=void 0}handleAuthTokenMessage(e){const t=this.authTokenRequests,s=e.message.authTokenRequestId,o=t[s];switch(e.messageType){case"auth-token":const t=e.message.authToken;o.resolve(t);break;case"auth-token-fail":o.reject(e.message.reason)}t[s]=void 0}handleMessage(e){const t=e.data;if(t&&"bb-addin-host"===t.source)if("host-ready"===t.messageType)this.setKnownAllowedHostOrigin(e.origin),this.trackHeightChangesOfAddinContent(),this.supportedEventTypes=t.message.supportedEventTypes,this.args.callbacks.init({context:t.message.context,envId:t.message.envId,ready:e=>{this.checkForHeightChangesOfAddinContent(),this.postMessageToHostPage({message:e,messageType:"addin-ready"})},supportedEventTypes:t.message.supportedEventTypes,themeSettings:t.message.themeSettings});else if(this.isFromValidOrigin(e))switch(t.messageType){case"auth-token":case"auth-token-fail":this.handleAuthTokenMessage(t);break;case"modal-closed":this.handleModalClosedMessage(t.message);break;case"button-click":this.args.callbacks.buttonClick&&this.args.callbacks.buttonClick();break;case"update-context":this.args.callbacks.updateContext&&this.args.callbacks.updateContext(t.message);break;case"confirm-closed":this.confirmRequest&&(this.confirmRequest.resolve(t.message.reason),this.confirmRequest=void 0);break;case"flyout-closed":this.flyoutRequest&&(this.flyoutRequest.resolve(),this.flyoutRequest=void 0);break;case"flyout-next-click":this.args.callbacks.flyoutNextClick&&this.args.callbacks.flyoutNextClick();break;case"flyout-previous-click":this.args.callbacks.flyoutPreviousClick&&this.args.callbacks.flyoutPreviousClick();break;case"help-click":this.args.callbacks.helpClick&&this.args.callbacks.helpClick();break;case"settings-click":this.args.callbacks.settingsClick&&this.args.callbacks.settingsClick();break;case"theme-change":this.args.callbacks.themeChange&&this.args.callbacks.themeChange(t.message.themeSettings);break;case"host-event":this.processHostEvent(t.message);break;case"event-received":this.resolveClientEvent(t.message)}else this.warnInvalidOrigin()}setKnownAllowedHostOrigin(e){for(const t of s)if(t.test(e))return void(this.trustedOrigin=e)}checkForHeightChangesOfAddinContent(){const e=document.documentElement.offsetHeight;e!==this.lastPostedIframeHeight&&(this.lastPostedIframeHeight=e,this.postMessageToHostPage({message:{height:e+"px"},messageType:"height-change"}))}trackHeightChangesOfAddinContent(){this.heightChangeIntervalId=setInterval((()=>{this.checkForHeightChangesOfAddinContent()}),1e3)}postMessageToHostPage(e,t){e.source="bb-addin-client",e.addinId=this.getQueryVariable("addinId"),(t=t||this.trustedOrigin)?window.parent.postMessage(e,t):this.warnInvalidOrigin()}processHostEvent(e){const t=e.context,s=this.registeredAddinEvents[t.type];let o;o=s?this.isBlockingEventType(t.type)?new Promise((e=>{s(t.context,(()=>{e()}))})):new Promise((e=>{s(t.context),e()})):Promise.resolve(),o.then((()=>this.postEventReceivedMessage(e.eventRequestId)))}isBlockingEventType(e){switch(e){case"form-save":case"form-cancel":return!0}return!1}postEventReceivedMessage(e){this.postMessageToHostPage({message:{eventRequestId:e},messageType:"event-received"})}resolveClientEvent(e){const t=e.eventRequestId,s=this.sentEvents[t];s&&(s(),delete this.sentEvents[t])}isFromValidOrigin(e){return e.origin===this.trustedOrigin}warnInvalidOrigin(){console.warn("The origin is not trusted because the host-ready message has not been sent or because the host origin is not a whitelisted origin.")}getQueryVariable(e){const t=o.getQueryString().substring(1).split("&");for(const s of t){const t=s.split("=");if(decodeURIComponent(t[0])===e)return decodeURIComponent(t[1])}}}t.AddinClient=o},714:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},819:(e,t)=>{var s;Object.defineProperty(t,"__esModule",{value:!0}),t.AddinButtonStyle=void 0,(s=t.AddinButtonStyle||(t.AddinButtonStyle={}))[s.None=0]="None",s[s.Add=1]="Add",s[s.Edit=2]="Edit",s[s.Delete=3]="Delete"},676:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},233:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},455:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},75:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},258:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},413:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},954:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},663:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},542:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},610:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},95:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},581:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},342:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},790:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},212:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},88:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},90:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},948:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},468:(e,t)=>{var s;Object.defineProperty(t,"__esModule",{value:!0}),t.AddinConfirmButtonStyle=void 0,(s=t.AddinConfirmButtonStyle||(t.AddinConfirmButtonStyle={}))[s.Default=0]="Default",s[s.Primary=1]="Primary",s[s.Link=2]="Link"},756:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},545:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},993:(e,t)=>{var s;Object.defineProperty(t,"__esModule",{value:!0}),t.AddinTabSummaryStyle=void 0,(s=t.AddinTabSummaryStyle||(t.AddinTabSummaryStyle={}))[s.None=0]="None",s[s.Text=1]="Text"},518:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},590:(e,t)=>{var s;Object.defineProperty(t,"__esModule",{value:!0}),t.AddinTileSummaryStyle=void 0,(s=t.AddinTileSummaryStyle||(t.AddinTileSummaryStyle={}))[s.None=0]="None",s[s.Text=1]="Text",s[s.Check=2]="Check"},480:(e,t)=>{var s;Object.defineProperty(t,"__esModule",{value:!0}),t.AddinToastStyle=void 0,(s=t.AddinToastStyle||(t.AddinToastStyle={}))[s.Danger=0]="Danger",s[s.Info=1]="Info",s[s.Success=2]="Success",s[s.Warning=3]="Warning"},142:function(e,t,s){var o=this&&this.__createBinding||(Object.create?function(e,t,s,o){void 0===o&&(o=s);var i=Object.getOwnPropertyDescriptor(t,s);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[s]}}),Object.defineProperty(e,o,i)}:function(e,t,s,o){void 0===o&&(o=s),e[o]=t[s]}),i=this&&this.__exportStar||function(e,t){for(var s in e)"default"===s||Object.prototype.hasOwnProperty.call(t,s)||o(t,e,s)};Object.defineProperty(t,"__esModule",{value:!0}),i(s(714),t),i(s(819),t),i(s(676),t),i(s(233),t),i(s(455),t),i(s(75),t),i(s(258),t),i(s(413),t),i(s(954),t),i(s(663),t),i(s(542),t),i(s(610),t),i(s(95),t),i(s(581),t),i(s(342),t),i(s(790),t),i(s(212),t),i(s(88),t),i(s(90),t),i(s(948),t),i(s(756),t),i(s(468),t),i(s(545),t),i(s(993),t),i(s(518),t),i(s(590),t),i(s(480),t)},220:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},606:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},57:function(e,t,s){var o=this&&this.__createBinding||(Object.create?function(e,t,s,o){void 0===o&&(o=s);var i=Object.getOwnPropertyDescriptor(t,s);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[s]}}),Object.defineProperty(e,o,i)}:function(e,t,s,o){void 0===o&&(o=s),e[o]=t[s]}),i=this&&this.__exportStar||function(e,t){for(var s in e)"default"===s||Object.prototype.hasOwnProperty.call(t,s)||o(t,e,s)};Object.defineProperty(t,"__esModule",{value:!0}),i(s(220),t),i(s(606),t)},983:function(e,t,s){var o=this&&this.__createBinding||(Object.create?function(e,t,s,o){void 0===o&&(o=s);var i=Object.getOwnPropertyDescriptor(t,s);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[s]}}),Object.defineProperty(e,o,i)}:function(e,t,s,o){void 0===o&&(o=s),e[o]=t[s]}),i=this&&this.__exportStar||function(e,t){for(var s in e)"default"===s||Object.prototype.hasOwnProperty.call(t,s)||o(t,e,s)};Object.defineProperty(t,"__esModule",{value:!0}),i(s(903),t),i(s(142),t),i(s(57),t)}},t={},s=function s(o){var i=t[o];if(void 0!==i)return i.exports;var n=t[o]={exports:{}};return e[o].call(n.exports,n,n.exports,s),n.exports}(789);window.BBSkyAddinClient=s})();
|
|
1
|
+
(()=>{"use strict";var e={789:function(e,t,s){var o=this&&this.__createBinding||(Object.create?function(e,t,s,o){void 0===o&&(o=s);var a=Object.getOwnPropertyDescriptor(t,s);a&&!("get"in a?!t.__esModule:a.writable||a.configurable)||(a={enumerable:!0,get:function(){return t[s]}}),Object.defineProperty(e,o,a)}:function(e,t,s,o){void 0===o&&(o=s),e[o]=t[s]}),a=this&&this.__exportStar||function(e,t){for(var s in e)"default"===s||Object.prototype.hasOwnProperty.call(t,s)||o(t,e,s)};Object.defineProperty(t,"__esModule",{value:!0}),a(s(983),t)},903:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.AddinClient=void 0;const s=[/^https\:\/\/[\w\-\.]+\.blackbaud\.com$/,/^https\:\/\/[\w\-\.]+\.blackbaud\-dev\.com$/,/^http\:\/\/[\w\-\.]+\.blackbaud\-dev\.com$/,/^https\:\/\/[\w\-\.]+\.blackbaudhosting\.com$/,/^https\:\/\/[\w\-\.]+\.bbcloudservices\.com$/,/^https\:\/\/localhost(\:[0-9]+)?$/,/^https\:\/\/secure[2|3|8]\.convio\.net$/,/^https\:\/\/testweb\.convio\.com$/,/^https\:\/\/[\w\-\.]+\.conviocloud\.com$/,/^https\:\/\/[\w\-\.]+\.blackbaudcloud\.com$/,/^https\:\/\/[\w\-\.]+\.blackbaudfaith\.com$/,/^https\:\/\/[\w\-\.]+\.blackbaudportal\.com$/,/^https\:\/\/[\w\-\.]+\.bbk12\.com$/,/^https\:\/\/[\w\-\.]+\.mycampus\-app\.com$/,/^https\:\/\/[\w\-\.]+\.myschoolapp\.com$/,/^https\:\/\/[\w\-\.]+\.myschoolautomation\.com$/,/^https\:\/\/[\w\-\.]+\.myschooldemo\.com$/,/^https\:\/\/[\w\-\.]+\.myschooltraining\.com$/,/^https\:\/\/[\w\-\.]+\.blackbaudwp\.com$/,/^https\:\/\/[\w\-\.]+\.carrytheload\.org$/,/^https\:\/\/[\w\-\.]+\.ummsfoundation\.org$/,/^http\:\/\/[\w\-\.]+\.lcrf\.org$/,/^https\:\/\/[\w\-\.]+\.go2\.org$/,/^https\:\/\/[\w\-\.]+\.nationwidechildrens\.org$/,/^https\:\/\/[\w\-\.]+\.lupus\.org$/,/^https\:\/\/[\w\-\.]+\.operationsmile\.ca$/,/^https\:\/\/[\w\-\.]+\.convio\.net$/,/^https\:\/\/[\w\-\.]+\.ontariospca\.ca$/,/^https\:\/\/[\w\-\.]+\.brighamandwomens\.org$/,/^https\:\/\/[\w\-\.]+\.northernlighthealth\.org$/,/^http\:\/\/[\w\-\.]+\.convio\.net$/,/^https\:\/\/[\w\-\.]+\.alpha1\.org$/,/^https\:\/\/[\w\-\.]+\.pscpartners\.org$/,/^https\:\/\/[\w\-\.]+\.mercyforanimals\.org$/,/^https\:\/\/[\w\-\.]+\.braintumor\.org$/,/^https\:\/\/[\w\-\.]+\.cancer\.ca$/,/^https\:\/\/[\w\-\.]+\.phoenixchildrensfoundation\.org$/,/^https\:\/\/[\w\-\.]+\.ocmc\.org$/,/^https\:\/\/[\w\-\.]+\.stlouischildrens\.org$/,/^https\:\/\/[\w\-\.]+\.choa\.org$/,/^https\:\/\/[\w\-\.]+\.acsevents\.org$/,/^https\:\/\/[\w\-\.]+\.operationsmile\.org$/,/^https\:\/\/[\w\-\.]+\.mdmercy\.com$/,/^https\:\/\/[\w\-\.]+\.cookchildrens\.org$/,/^https\:\/\/[\w\-\.]+\.chla\.org$/,/^https\:\/\/[\w\-\.]+\.nleomf\.org$/,/^https\:\/\/[\w\-\.]+\.pwatoronto\.org$/,/^https\:\/\/[\w\-\.]+\.jfsla\.org$/,/^https\:\/\/[\w\-\.]+\.roswellpark\.org$/,/^https\:\/\/[\w\-\.]+\.alsagoldenwest\.org$/,/^https\:\/\/[\w\-\.]+\.cancercarefoundation\.ca$/,/^https\:\/\/[\w\-\.]+\.alsnc\.org$/,/^https\:\/\/[\w\-\.]+\.alsanm\.org$/,/^https\:\/\/[\w\-\.]+\.waysidewaifs\.org$/,/^https\:\/\/[\w\-\.]+\.bladdercancercanada\.org$/,/^https\:\/\/[\w\-\.]+\.jimmyfund\.org$/,/^https\:\/\/[\w\-\.]+\.info\-komen\.org$/,/^https\:\/\/[\w\-\.]+\.mountsinai\.org$/,/^https\:\/\/[\w\-\.]+\.walkforpd\.ca$/,/^https\:\/\/[\w\-\.]+\.alsoregon\.org$/,/^https\:\/\/[\w\-\.]+\.feedhopenow\.org$/,/^https\:\/\/[\w\-\.]+\.trilliumgiving\.ca$/,/^https\:\/\/[\w\-\.]+\.swimacrossamerica\.org$/,/^https\:\/\/ovariancanada\.org$/,/^https\:\/\/[\w\-\.]+\.ovariancanada\.org$/,/^https\:\/\/[\w\-\.]+\.alsunitedchicago\.org$/,/^https\:\/\/[\w\-\.]+\.fredhutch\.org$/,/^https\:\/\/[\w\-\.]+\.hss\.edu$/,/^https\:\/\/[\w\-\.]+\.nyghfoundation\.ca$/,/^https\:\/\/[\w\-\.]+\.natureconservancy\.ca$/,/^https\:\/\/[\w\-\.]+\.llscanada\.org$/,/^https\:\/\/[\w\-\.]+\.als\-ny\.org$/,/^https\:\/\/[\w\-\.]+\.zerocancer\.org$/,/^https\:\/\/[\w\-\.]+\.alsmidatlantic\.org$/,/^https\:\/\/[\w\-\.]+\.habitat\.ca$/,/^https\:\/\/[\w\-\.]+\.stamfordhospitalfoundation\.org$/,/^https\:\/\/[\w\-\.]+\.alsohio\.org$/,/^https\:\/\/[\w\-\.]+\.cancercarefdn\.mb\.ca$/,/^https\:\/\/[\w\-\.]+\.baycrestfoundation\.org$/,/^https\:\/\/[\w\-\.]+\.southlake\.ca$/,/^https\:\/\/[\w\-\.]+\.parkinson\.ca$/];class o{static getQueryString(){return window.location.search}constructor(e){this.args=e,this.authTokenRequests=[],this.lastAuthTokenRequestId=0,this.modalRequests=[],this.lastModalRequestId=0,this.registeredAddinEvents={},this.sentEvents={},this.pendingSentEvents={},this.eventRequestId=0,this.supportedEventTypes=[],this.allowedOrigins=s,this.initConfig(e.config),this.windowMessageHandler=e=>{this.handleMessage(e)},window.addEventListener("message",this.windowMessageHandler),this.raiseAddinReadyMessage()}destroy(){window.removeEventListener("message",this.windowMessageHandler),this.heightChangeIntervalId&&clearInterval(this.heightChangeIntervalId)}navigate(e){this.postMessageToHostPage({message:{url:e.url},messageType:"navigate"})}getAuthToken(){return this.getUserIdentityToken()}getUserIdentityToken(){return new Promise(((e,t)=>{const s=++this.lastAuthTokenRequestId;this.authTokenRequests[s]={reject:t,resolve:e},this.postMessageToHostPage({message:{authTokenRequestId:s},messageType:"get-auth-token"})}))}showModal(e){return{modalClosed:new Promise(((t,s)=>{const o=++this.lastModalRequestId;this.modalRequests[o]={reject:s,resolve:t},this.postMessageToHostPage({message:{args:e,modalRequestId:o},messageType:"show-modal"})}))}}closeModal(e){this.postMessageToHostPage({message:e,messageType:"close-modal"})}openHelp(e){this.postMessageToHostPage({message:{helpKey:e.helpKey},messageType:"open-help"})}showToast(e){this.postMessageToHostPage({message:e,messageType:"show-toast"})}showFlyout(e){return{flyoutClosed:new Promise(((t,s)=>{e.defaultWidth=e.defaultWidth,e.maxWidth=e.maxWidth,e.minWidth=e.minWidth,this.flyoutRequest={reject:s,resolve:t},this.postMessageToHostPage({message:e,messageType:"show-flyout"})}))}}closeFlyout(){this.postMessageToHostPage({messageType:"close-flyout"})}showConfirm(e){return new Promise(((t,s)=>{this.confirmRequest={reject:s,resolve:t},this.postMessageToHostPage({message:e,messageType:"show-confirm"})}))}showError(e){this.postMessageToHostPage({message:e,messageType:"show-error"})}showWait(){this.postMessageToHostPage({messageType:"show-wait"})}hideWait(){this.postMessageToHostPage({messageType:"hide-wait"})}addEventHandler(e,t){this.registeredAddinEvents[e]=t}sendEvent(e){return new Promise(((t,s)=>{const o=e.type;this.supportedEventTypes.includes(o)||s("Event type not supported");const a=this.pendingSentEvents[o];a&&(clearTimeout(a.timeoutId),a.reject("Event cancelled"));const i=setTimeout((()=>{delete this.pendingSentEvents[o],this.postMessageToHostPage({message:{event:e,eventRequestId:this.eventRequestId},messageType:"client-event"}),this.sentEvents[this.eventRequestId]=t,this.eventRequestId++}),200);this.pendingSentEvents[o]={reject:s,timeoutId:i}}))}initConfig(e){var t;(null===(t=null==e?void 0:e.allowedOrigins)||void 0===t?void 0:t.length)>0&&(this.allowedOrigins=this.allowedOrigins.concat(e.allowedOrigins),this.allowedOrigins=this.allowedOrigins.reduce(((e,t)=>(e.find((e=>e.source===t.source))||e.push(t),e)),[]))}raiseAddinReadyMessage(){this.postMessageToHostPage({messageType:"ready"},"*")}handleModalClosedMessage(e){const t=this.modalRequests,s=e.modalRequestId;t[s].resolve(e.context),t[s]=void 0}handleAuthTokenMessage(e){const t=this.authTokenRequests,s=e.message.authTokenRequestId,o=t[s];switch(e.messageType){case"auth-token":const t=e.message.authToken;o.resolve(t);break;case"auth-token-fail":o.reject(e.message.reason)}t[s]=void 0}handleMessage(e){const t=e.data;if(t&&"bb-addin-host"===t.source)if("host-ready"===t.messageType)this.setKnownAllowedHostOrigin(e.origin),this.trackHeightChangesOfAddinContent(),this.supportedEventTypes=t.message.supportedEventTypes,this.args.callbacks.init({context:t.message.context,envId:t.message.envId,ready:e=>{this.checkForHeightChangesOfAddinContent(),this.postMessageToHostPage({message:e,messageType:"addin-ready"})},supportedEventTypes:t.message.supportedEventTypes,themeSettings:t.message.themeSettings});else if(this.isFromValidOrigin(e))switch(t.messageType){case"auth-token":case"auth-token-fail":this.handleAuthTokenMessage(t);break;case"modal-closed":this.handleModalClosedMessage(t.message);break;case"button-click":this.args.callbacks.buttonClick&&this.args.callbacks.buttonClick();break;case"update-context":this.args.callbacks.updateContext&&this.args.callbacks.updateContext(t.message);break;case"confirm-closed":this.confirmRequest&&(this.confirmRequest.resolve(t.message.reason),this.confirmRequest=void 0);break;case"flyout-closed":this.flyoutRequest&&(this.flyoutRequest.resolve(),this.flyoutRequest=void 0);break;case"flyout-next-click":this.args.callbacks.flyoutNextClick&&this.args.callbacks.flyoutNextClick();break;case"flyout-previous-click":this.args.callbacks.flyoutPreviousClick&&this.args.callbacks.flyoutPreviousClick();break;case"help-click":this.args.callbacks.helpClick&&this.args.callbacks.helpClick();break;case"settings-click":this.args.callbacks.settingsClick&&this.args.callbacks.settingsClick();break;case"theme-change":this.args.callbacks.themeChange&&this.args.callbacks.themeChange(t.message.themeSettings);break;case"host-event":this.processHostEvent(t.message);break;case"event-received":this.resolveClientEvent(t.message)}else this.warnInvalidOrigin()}setKnownAllowedHostOrigin(e){for(const t of this.allowedOrigins)if(t.test(e))return void(this.trustedOrigin=e)}checkForHeightChangesOfAddinContent(){const e=document.documentElement.offsetHeight;e!==this.lastPostedIframeHeight&&(this.lastPostedIframeHeight=e,this.postMessageToHostPage({message:{height:e+"px"},messageType:"height-change"}))}trackHeightChangesOfAddinContent(){this.heightChangeIntervalId=setInterval((()=>{this.checkForHeightChangesOfAddinContent()}),1e3)}postMessageToHostPage(e,t){e.source="bb-addin-client",e.addinId=this.getQueryVariable("addinId"),(t=t||this.trustedOrigin)?window.parent.postMessage(e,t):this.warnInvalidOrigin()}processHostEvent(e){const t=e.context,s=this.registeredAddinEvents[t.type];let o;o=s?this.isBlockingEventType(t.type)?new Promise((e=>{s(t.context,(()=>{e()}))})):new Promise((e=>{s(t.context),e()})):Promise.resolve(),o.then((()=>this.postEventReceivedMessage(e.eventRequestId)))}isBlockingEventType(e){switch(e){case"form-save":case"form-cancel":return!0}return!1}postEventReceivedMessage(e){this.postMessageToHostPage({message:{eventRequestId:e},messageType:"event-received"})}resolveClientEvent(e){const t=e.eventRequestId,s=this.sentEvents[t];s&&(s(),delete this.sentEvents[t])}isFromValidOrigin(e){return e.origin===this.trustedOrigin}warnInvalidOrigin(){console.warn("The origin is not trusted because the host-ready message has not been sent or because the host origin is not a whitelisted origin.")}getQueryVariable(e){const t=o.getQueryString().substring(1).split("&");for(const s of t){const t=s.split("=");if(decodeURIComponent(t[0])===e)return decodeURIComponent(t[1])}}}t.AddinClient=o},714:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},819:(e,t)=>{var s;Object.defineProperty(t,"__esModule",{value:!0}),t.AddinButtonStyle=void 0,(s=t.AddinButtonStyle||(t.AddinButtonStyle={}))[s.None=0]="None",s[s.Add=1]="Add",s[s.Edit=2]="Edit",s[s.Delete=3]="Delete"},676:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},233:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},455:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},407:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},75:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},258:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},413:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},954:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},663:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},542:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},610:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},95:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},581:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},342:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},790:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},212:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},88:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},90:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},948:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},468:(e,t)=>{var s;Object.defineProperty(t,"__esModule",{value:!0}),t.AddinConfirmButtonStyle=void 0,(s=t.AddinConfirmButtonStyle||(t.AddinConfirmButtonStyle={}))[s.Default=0]="Default",s[s.Primary=1]="Primary",s[s.Link=2]="Link"},756:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},545:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},993:(e,t)=>{var s;Object.defineProperty(t,"__esModule",{value:!0}),t.AddinTabSummaryStyle=void 0,(s=t.AddinTabSummaryStyle||(t.AddinTabSummaryStyle={}))[s.None=0]="None",s[s.Text=1]="Text"},518:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},590:(e,t)=>{var s;Object.defineProperty(t,"__esModule",{value:!0}),t.AddinTileSummaryStyle=void 0,(s=t.AddinTileSummaryStyle||(t.AddinTileSummaryStyle={}))[s.None=0]="None",s[s.Text=1]="Text",s[s.Check=2]="Check"},480:(e,t)=>{var s;Object.defineProperty(t,"__esModule",{value:!0}),t.AddinToastStyle=void 0,(s=t.AddinToastStyle||(t.AddinToastStyle={}))[s.Danger=0]="Danger",s[s.Info=1]="Info",s[s.Success=2]="Success",s[s.Warning=3]="Warning"},142:function(e,t,s){var o=this&&this.__createBinding||(Object.create?function(e,t,s,o){void 0===o&&(o=s);var a=Object.getOwnPropertyDescriptor(t,s);a&&!("get"in a?!t.__esModule:a.writable||a.configurable)||(a={enumerable:!0,get:function(){return t[s]}}),Object.defineProperty(e,o,a)}:function(e,t,s,o){void 0===o&&(o=s),e[o]=t[s]}),a=this&&this.__exportStar||function(e,t){for(var s in e)"default"===s||Object.prototype.hasOwnProperty.call(t,s)||o(t,e,s)};Object.defineProperty(t,"__esModule",{value:!0}),a(s(714),t),a(s(819),t),a(s(676),t),a(s(233),t),a(s(455),t),a(s(407),t),a(s(75),t),a(s(258),t),a(s(413),t),a(s(954),t),a(s(663),t),a(s(542),t),a(s(610),t),a(s(95),t),a(s(581),t),a(s(342),t),a(s(790),t),a(s(212),t),a(s(88),t),a(s(90),t),a(s(948),t),a(s(756),t),a(s(468),t),a(s(545),t),a(s(993),t),a(s(518),t),a(s(590),t),a(s(480),t)},220:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},606:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},57:function(e,t,s){var o=this&&this.__createBinding||(Object.create?function(e,t,s,o){void 0===o&&(o=s);var a=Object.getOwnPropertyDescriptor(t,s);a&&!("get"in a?!t.__esModule:a.writable||a.configurable)||(a={enumerable:!0,get:function(){return t[s]}}),Object.defineProperty(e,o,a)}:function(e,t,s,o){void 0===o&&(o=s),e[o]=t[s]}),a=this&&this.__exportStar||function(e,t){for(var s in e)"default"===s||Object.prototype.hasOwnProperty.call(t,s)||o(t,e,s)};Object.defineProperty(t,"__esModule",{value:!0}),a(s(220),t),a(s(606),t)},983:function(e,t,s){var o=this&&this.__createBinding||(Object.create?function(e,t,s,o){void 0===o&&(o=s);var a=Object.getOwnPropertyDescriptor(t,s);a&&!("get"in a?!t.__esModule:a.writable||a.configurable)||(a={enumerable:!0,get:function(){return t[s]}}),Object.defineProperty(e,o,a)}:function(e,t,s,o){void 0===o&&(o=s),e[o]=t[s]}),a=this&&this.__exportStar||function(e,t){for(var s in e)"default"===s||Object.prototype.hasOwnProperty.call(t,s)||o(t,e,s)};Object.defineProperty(t,"__esModule",{value:!0}),a(s(903),t),a(s(142),t),a(s(57),t)}},t={},s=function s(o){var a=t[o];if(void 0!==a)return a.exports;var i=t[o]={exports:{}};return e[o].call(i.exports,i,i.exports,s),i.exports}(789);window.BBSkyAddinClient=s})();
|
|
@@ -45,7 +45,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
45
45
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
46
46
|
__exportStar(__webpack_require__(2), exports);
|
|
47
47
|
__exportStar(__webpack_require__(3), exports);
|
|
48
|
-
__exportStar(__webpack_require__(
|
|
48
|
+
__exportStar(__webpack_require__(32), exports);
|
|
49
49
|
|
|
50
50
|
|
|
51
51
|
/***/ }),
|
|
@@ -56,8 +56,8 @@ __exportStar(__webpack_require__(31), exports);
|
|
|
56
56
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
57
57
|
exports.AddinClient = void 0;
|
|
58
58
|
/**
|
|
59
|
-
|
|
60
|
-
|
|
59
|
+
* Collection of regexs for our whitelist of host origins.
|
|
60
|
+
*/
|
|
61
61
|
var allowedOrigins = [
|
|
62
62
|
/^https\:\/\/[\w\-\.]+\.blackbaud\.com$/,
|
|
63
63
|
/^https\:\/\/[\w\-\.]+\.blackbaud\-dev\.com$/,
|
|
@@ -76,7 +76,70 @@ var allowedOrigins = [
|
|
|
76
76
|
/^https\:\/\/[\w\-\.]+\.myschoolapp\.com$/,
|
|
77
77
|
/^https\:\/\/[\w\-\.]+\.myschoolautomation\.com$/,
|
|
78
78
|
/^https\:\/\/[\w\-\.]+\.myschooldemo\.com$/,
|
|
79
|
-
/^https\:\/\/[\w\-\.]+\.myschooltraining\.com
|
|
79
|
+
/^https\:\/\/[\w\-\.]+\.myschooltraining\.com$/,
|
|
80
|
+
/^https\:\/\/[\w\-\.]+\.blackbaudwp\.com$/,
|
|
81
|
+
/^https\:\/\/[\w\-\.]+\.carrytheload\.org$/,
|
|
82
|
+
/^https\:\/\/[\w\-\.]+\.ummsfoundation\.org$/,
|
|
83
|
+
/^http\:\/\/[\w\-\.]+\.lcrf\.org$/,
|
|
84
|
+
/^https\:\/\/[\w\-\.]+\.go2\.org$/,
|
|
85
|
+
/^https\:\/\/[\w\-\.]+\.nationwidechildrens\.org$/,
|
|
86
|
+
/^https\:\/\/[\w\-\.]+\.lupus\.org$/,
|
|
87
|
+
/^https\:\/\/[\w\-\.]+\.operationsmile\.ca$/,
|
|
88
|
+
/^https\:\/\/[\w\-\.]+\.convio\.net$/,
|
|
89
|
+
/^https\:\/\/[\w\-\.]+\.ontariospca\.ca$/,
|
|
90
|
+
/^https\:\/\/[\w\-\.]+\.brighamandwomens\.org$/,
|
|
91
|
+
/^https\:\/\/[\w\-\.]+\.northernlighthealth\.org$/,
|
|
92
|
+
/^http\:\/\/[\w\-\.]+\.convio\.net$/,
|
|
93
|
+
/^https\:\/\/[\w\-\.]+\.alpha1\.org$/,
|
|
94
|
+
/^https\:\/\/[\w\-\.]+\.pscpartners\.org$/,
|
|
95
|
+
/^https\:\/\/[\w\-\.]+\.mercyforanimals\.org$/,
|
|
96
|
+
/^https\:\/\/[\w\-\.]+\.braintumor\.org$/,
|
|
97
|
+
/^https\:\/\/[\w\-\.]+\.cancer\.ca$/,
|
|
98
|
+
/^https\:\/\/[\w\-\.]+\.phoenixchildrensfoundation\.org$/,
|
|
99
|
+
/^https\:\/\/[\w\-\.]+\.ocmc\.org$/,
|
|
100
|
+
/^https\:\/\/[\w\-\.]+\.stlouischildrens\.org$/,
|
|
101
|
+
/^https\:\/\/[\w\-\.]+\.choa\.org$/,
|
|
102
|
+
/^https\:\/\/[\w\-\.]+\.acsevents\.org$/,
|
|
103
|
+
/^https\:\/\/[\w\-\.]+\.operationsmile\.org$/,
|
|
104
|
+
/^https\:\/\/[\w\-\.]+\.mdmercy\.com$/,
|
|
105
|
+
/^https\:\/\/[\w\-\.]+\.cookchildrens\.org$/,
|
|
106
|
+
/^https\:\/\/[\w\-\.]+\.chla\.org$/,
|
|
107
|
+
/^https\:\/\/[\w\-\.]+\.nleomf\.org$/,
|
|
108
|
+
/^https\:\/\/[\w\-\.]+\.pwatoronto\.org$/,
|
|
109
|
+
/^https\:\/\/[\w\-\.]+\.jfsla\.org$/,
|
|
110
|
+
/^https\:\/\/[\w\-\.]+\.roswellpark\.org$/,
|
|
111
|
+
/^https\:\/\/[\w\-\.]+\.alsagoldenwest\.org$/,
|
|
112
|
+
/^https\:\/\/[\w\-\.]+\.cancercarefoundation\.ca$/,
|
|
113
|
+
/^https\:\/\/[\w\-\.]+\.alsnc\.org$/,
|
|
114
|
+
/^https\:\/\/[\w\-\.]+\.alsanm\.org$/,
|
|
115
|
+
/^https\:\/\/[\w\-\.]+\.waysidewaifs\.org$/,
|
|
116
|
+
/^https\:\/\/[\w\-\.]+\.bladdercancercanada\.org$/,
|
|
117
|
+
/^https\:\/\/[\w\-\.]+\.jimmyfund\.org$/,
|
|
118
|
+
/^https\:\/\/[\w\-\.]+\.info\-komen\.org$/,
|
|
119
|
+
/^https\:\/\/[\w\-\.]+\.mountsinai\.org$/,
|
|
120
|
+
/^https\:\/\/[\w\-\.]+\.walkforpd\.ca$/,
|
|
121
|
+
/^https\:\/\/[\w\-\.]+\.alsoregon\.org$/,
|
|
122
|
+
/^https\:\/\/[\w\-\.]+\.feedhopenow\.org$/,
|
|
123
|
+
/^https\:\/\/[\w\-\.]+\.trilliumgiving\.ca$/,
|
|
124
|
+
/^https\:\/\/[\w\-\.]+\.swimacrossamerica\.org$/,
|
|
125
|
+
/^https\:\/\/ovariancanada\.org$/,
|
|
126
|
+
/^https\:\/\/[\w\-\.]+\.ovariancanada\.org$/,
|
|
127
|
+
/^https\:\/\/[\w\-\.]+\.alsunitedchicago\.org$/,
|
|
128
|
+
/^https\:\/\/[\w\-\.]+\.fredhutch\.org$/,
|
|
129
|
+
/^https\:\/\/[\w\-\.]+\.hss\.edu$/,
|
|
130
|
+
/^https\:\/\/[\w\-\.]+\.nyghfoundation\.ca$/,
|
|
131
|
+
/^https\:\/\/[\w\-\.]+\.natureconservancy\.ca$/,
|
|
132
|
+
/^https\:\/\/[\w\-\.]+\.llscanada\.org$/,
|
|
133
|
+
/^https\:\/\/[\w\-\.]+\.als\-ny\.org$/,
|
|
134
|
+
/^https\:\/\/[\w\-\.]+\.zerocancer\.org$/,
|
|
135
|
+
/^https\:\/\/[\w\-\.]+\.alsmidatlantic\.org$/,
|
|
136
|
+
/^https\:\/\/[\w\-\.]+\.habitat\.ca$/,
|
|
137
|
+
/^https\:\/\/[\w\-\.]+\.stamfordhospitalfoundation\.org$/,
|
|
138
|
+
/^https\:\/\/[\w\-\.]+\.alsohio\.org$/,
|
|
139
|
+
/^https\:\/\/[\w\-\.]+\.cancercarefdn\.mb\.ca$/,
|
|
140
|
+
/^https\:\/\/[\w\-\.]+\.baycrestfoundation\.org$/,
|
|
141
|
+
/^https\:\/\/[\w\-\.]+\.southlake\.ca$/,
|
|
142
|
+
/^https\:\/\/[\w\-\.]+\.parkinson\.ca$/,
|
|
80
143
|
];
|
|
81
144
|
/**
|
|
82
145
|
* Client for interacting with the parent page hosting the add-in.
|
|
@@ -130,6 +193,11 @@ var AddinClient = /** @class */ (function () {
|
|
|
130
193
|
* The add-in client will throw an error if an event is attempted but not one the supported types.
|
|
131
194
|
*/
|
|
132
195
|
this.supportedEventTypes = [];
|
|
196
|
+
/**
|
|
197
|
+
* Collection of regexs for our whitelist of host origins.
|
|
198
|
+
*/
|
|
199
|
+
this.allowedOrigins = allowedOrigins;
|
|
200
|
+
this.initConfig(args.config);
|
|
133
201
|
this.windowMessageHandler = function (event) {
|
|
134
202
|
_this.handleMessage(event);
|
|
135
203
|
};
|
|
@@ -375,6 +443,20 @@ var AddinClient = /** @class */ (function () {
|
|
|
375
443
|
};
|
|
376
444
|
});
|
|
377
445
|
};
|
|
446
|
+
AddinClient.prototype.initConfig = function (config) {
|
|
447
|
+
var _a;
|
|
448
|
+
if (((_a = config === null || config === void 0 ? void 0 : config.allowedOrigins) === null || _a === void 0 ? void 0 : _a.length) > 0) {
|
|
449
|
+
// append custom allowed origins
|
|
450
|
+
this.allowedOrigins = this.allowedOrigins.concat(config.allowedOrigins);
|
|
451
|
+
// remove duplicates
|
|
452
|
+
this.allowedOrigins = this.allowedOrigins.reduce(function (acc, curr) {
|
|
453
|
+
if (!acc.find(function (a) { return a.source === curr.source; })) {
|
|
454
|
+
acc.push(curr);
|
|
455
|
+
}
|
|
456
|
+
return acc;
|
|
457
|
+
}, []);
|
|
458
|
+
}
|
|
459
|
+
};
|
|
378
460
|
/**
|
|
379
461
|
* Post a message to the host page informing it that the add-in is
|
|
380
462
|
* now started and listening for messages from the host.
|
|
@@ -537,8 +619,8 @@ var AddinClient = /** @class */ (function () {
|
|
|
537
619
|
* @param hostOrigin
|
|
538
620
|
*/
|
|
539
621
|
AddinClient.prototype.setKnownAllowedHostOrigin = function (hostOrigin) {
|
|
540
|
-
for (var _i = 0,
|
|
541
|
-
var allowedOrigin =
|
|
622
|
+
for (var _i = 0, _a = this.allowedOrigins; _i < _a.length; _i++) {
|
|
623
|
+
var allowedOrigin = _a[_i];
|
|
542
624
|
if (allowedOrigin.test(hostOrigin)) {
|
|
543
625
|
this.trustedOrigin = hostOrigin;
|
|
544
626
|
return;
|
|
@@ -741,6 +823,7 @@ __exportStar(__webpack_require__(27), exports);
|
|
|
741
823
|
__exportStar(__webpack_require__(28), exports);
|
|
742
824
|
__exportStar(__webpack_require__(29), exports);
|
|
743
825
|
__exportStar(__webpack_require__(30), exports);
|
|
826
|
+
__exportStar(__webpack_require__(31), exports);
|
|
744
827
|
|
|
745
828
|
|
|
746
829
|
/***/ }),
|
|
@@ -931,6 +1014,14 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
|
931
1014
|
/***/ ((__unused_webpack_module, exports) => {
|
|
932
1015
|
|
|
933
1016
|
|
|
1017
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
1018
|
+
|
|
1019
|
+
|
|
1020
|
+
/***/ }),
|
|
1021
|
+
/* 26 */
|
|
1022
|
+
/***/ ((__unused_webpack_module, exports) => {
|
|
1023
|
+
|
|
1024
|
+
|
|
934
1025
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
935
1026
|
exports.AddinConfirmButtonStyle = void 0;
|
|
936
1027
|
/**
|
|
@@ -949,7 +1040,7 @@ var AddinConfirmButtonStyle;
|
|
|
949
1040
|
|
|
950
1041
|
|
|
951
1042
|
/***/ }),
|
|
952
|
-
/*
|
|
1043
|
+
/* 27 */
|
|
953
1044
|
/***/ ((__unused_webpack_module, exports) => {
|
|
954
1045
|
|
|
955
1046
|
|
|
@@ -957,7 +1048,7 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
|
957
1048
|
|
|
958
1049
|
|
|
959
1050
|
/***/ }),
|
|
960
|
-
/*
|
|
1051
|
+
/* 28 */
|
|
961
1052
|
/***/ ((__unused_webpack_module, exports) => {
|
|
962
1053
|
|
|
963
1054
|
|
|
@@ -976,7 +1067,7 @@ var AddinTabSummaryStyle;
|
|
|
976
1067
|
|
|
977
1068
|
|
|
978
1069
|
/***/ }),
|
|
979
|
-
/*
|
|
1070
|
+
/* 29 */
|
|
980
1071
|
/***/ ((__unused_webpack_module, exports) => {
|
|
981
1072
|
|
|
982
1073
|
|
|
@@ -984,7 +1075,7 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
|
984
1075
|
|
|
985
1076
|
|
|
986
1077
|
/***/ }),
|
|
987
|
-
/*
|
|
1078
|
+
/* 30 */
|
|
988
1079
|
/***/ ((__unused_webpack_module, exports) => {
|
|
989
1080
|
|
|
990
1081
|
|
|
@@ -1005,7 +1096,7 @@ var AddinTileSummaryStyle;
|
|
|
1005
1096
|
|
|
1006
1097
|
|
|
1007
1098
|
/***/ }),
|
|
1008
|
-
/*
|
|
1099
|
+
/* 31 */
|
|
1009
1100
|
/***/ ((__unused_webpack_module, exports) => {
|
|
1010
1101
|
|
|
1011
1102
|
|
|
@@ -1028,7 +1119,7 @@ var AddinToastStyle;
|
|
|
1028
1119
|
|
|
1029
1120
|
|
|
1030
1121
|
/***/ }),
|
|
1031
|
-
/*
|
|
1122
|
+
/* 32 */
|
|
1032
1123
|
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
1033
1124
|
|
|
1034
1125
|
|
|
@@ -1047,12 +1138,12 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
1047
1138
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
1048
1139
|
};
|
|
1049
1140
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
1050
|
-
__exportStar(__webpack_require__(32), exports);
|
|
1051
1141
|
__exportStar(__webpack_require__(33), exports);
|
|
1142
|
+
__exportStar(__webpack_require__(34), exports);
|
|
1052
1143
|
|
|
1053
1144
|
|
|
1054
1145
|
/***/ }),
|
|
1055
|
-
/*
|
|
1146
|
+
/* 33 */
|
|
1056
1147
|
/***/ ((__unused_webpack_module, exports) => {
|
|
1057
1148
|
|
|
1058
1149
|
|
|
@@ -1060,7 +1151,7 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
|
1060
1151
|
|
|
1061
1152
|
|
|
1062
1153
|
/***/ }),
|
|
1063
|
-
/*
|
|
1154
|
+
/* 34 */
|
|
1064
1155
|
/***/ ((__unused_webpack_module, exports) => {
|
|
1065
1156
|
|
|
1066
1157
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(()=>{"use strict";var e={789:function(e,t,s){var o=this&&this.__createBinding||(Object.create?function(e,t,s,o){void 0===o&&(o=s);var n=Object.getOwnPropertyDescriptor(t,s);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[s]}}),Object.defineProperty(e,o,n)}:function(e,t,s,o){void 0===o&&(o=s),e[o]=t[s]}),n=this&&this.__exportStar||function(e,t){for(var s in e)"default"===s||Object.prototype.hasOwnProperty.call(t,s)||o(t,e,s)};Object.defineProperty(t,"__esModule",{value:!0}),n(s(983),t)},903:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.AddinClient=void 0;var s=[/^https\:\/\/[\w\-\.]+\.blackbaud\.com$/,/^https\:\/\/[\w\-\.]+\.blackbaud\-dev\.com$/,/^http\:\/\/[\w\-\.]+\.blackbaud\-dev\.com$/,/^https\:\/\/[\w\-\.]+\.blackbaudhosting\.com$/,/^https\:\/\/[\w\-\.]+\.bbcloudservices\.com$/,/^https\:\/\/localhost(\:[0-9]+)?$/,/^https\:\/\/secure[2|3|8]\.convio\.net$/,/^https\:\/\/testweb\.convio\.com$/,/^https\:\/\/[\w\-\.]+\.conviocloud\.com$/,/^https\:\/\/[\w\-\.]+\.blackbaudcloud\.com$/,/^https\:\/\/[\w\-\.]+\.blackbaudfaith\.com$/,/^https\:\/\/[\w\-\.]+\.blackbaudportal\.com$/,/^https\:\/\/[\w\-\.]+\.bbk12\.com$/,/^https\:\/\/[\w\-\.]+\.mycampus\-app\.com$/,/^https\:\/\/[\w\-\.]+\.myschoolapp\.com$/,/^https\:\/\/[\w\-\.]+\.myschoolautomation\.com$/,/^https\:\/\/[\w\-\.]+\.myschooldemo\.com$/,/^https\:\/\/[\w\-\.]+\.myschooltraining\.com$/],o=function(){function e(e){var t=this;this.args=e,this.authTokenRequests=[],this.lastAuthTokenRequestId=0,this.modalRequests=[],this.lastModalRequestId=0,this.registeredAddinEvents={},this.sentEvents={},this.pendingSentEvents={},this.eventRequestId=0,this.supportedEventTypes=[],this.windowMessageHandler=function(e){t.handleMessage(e)},window.addEventListener("message",this.windowMessageHandler),this.raiseAddinReadyMessage()}return e.getQueryString=function(){return window.location.search},e.prototype.destroy=function(){window.removeEventListener("message",this.windowMessageHandler),this.heightChangeIntervalId&&clearInterval(this.heightChangeIntervalId)},e.prototype.navigate=function(e){this.postMessageToHostPage({message:{url:e.url},messageType:"navigate"})},e.prototype.getAuthToken=function(){return this.getUserIdentityToken()},e.prototype.getUserIdentityToken=function(){var e=this;return new Promise((function(t,s){var o=++e.lastAuthTokenRequestId;e.authTokenRequests[o]={reject:s,resolve:t},e.postMessageToHostPage({message:{authTokenRequestId:o},messageType:"get-auth-token"})}))},e.prototype.showModal=function(e){var t=this;return{modalClosed:new Promise((function(s,o){var n=++t.lastModalRequestId;t.modalRequests[n]={reject:o,resolve:s},t.postMessageToHostPage({message:{args:e,modalRequestId:n},messageType:"show-modal"})}))}},e.prototype.closeModal=function(e){this.postMessageToHostPage({message:e,messageType:"close-modal"})},e.prototype.openHelp=function(e){this.postMessageToHostPage({message:{helpKey:e.helpKey},messageType:"open-help"})},e.prototype.showToast=function(e){this.postMessageToHostPage({message:e,messageType:"show-toast"})},e.prototype.showFlyout=function(e){var t=this;return{flyoutClosed:new Promise((function(s,o){e.defaultWidth=e.defaultWidth,e.maxWidth=e.maxWidth,e.minWidth=e.minWidth,t.flyoutRequest={reject:o,resolve:s},t.postMessageToHostPage({message:e,messageType:"show-flyout"})}))}},e.prototype.closeFlyout=function(){this.postMessageToHostPage({messageType:"close-flyout"})},e.prototype.showConfirm=function(e){var t=this;return new Promise((function(s,o){t.confirmRequest={reject:o,resolve:s},t.postMessageToHostPage({message:e,messageType:"show-confirm"})}))},e.prototype.showError=function(e){this.postMessageToHostPage({message:e,messageType:"show-error"})},e.prototype.showWait=function(){this.postMessageToHostPage({messageType:"show-wait"})},e.prototype.hideWait=function(){this.postMessageToHostPage({messageType:"hide-wait"})},e.prototype.addEventHandler=function(e,t){this.registeredAddinEvents[e]=t},e.prototype.sendEvent=function(e){var t=this;return new Promise((function(s,o){var n=e.type;t.supportedEventTypes.includes(n)||o("Event type not supported");var i=t.pendingSentEvents[n];i&&(clearTimeout(i.timeoutId),i.reject("Event cancelled"));var a=setTimeout((function(){delete t.pendingSentEvents[n],t.postMessageToHostPage({message:{event:e,eventRequestId:t.eventRequestId},messageType:"client-event"}),t.sentEvents[t.eventRequestId]=s,t.eventRequestId++}),200);t.pendingSentEvents[n]={reject:o,timeoutId:a}}))},e.prototype.raiseAddinReadyMessage=function(){this.postMessageToHostPage({messageType:"ready"},"*")},e.prototype.handleModalClosedMessage=function(e){var t=this.modalRequests,s=e.modalRequestId;t[s].resolve(e.context),t[s]=void 0},e.prototype.handleAuthTokenMessage=function(e){var t=this.authTokenRequests,s=e.message.authTokenRequestId,o=t[s];switch(e.messageType){case"auth-token":var n=e.message.authToken;o.resolve(n);break;case"auth-token-fail":o.reject(e.message.reason)}t[s]=void 0},e.prototype.handleMessage=function(e){var t=this,s=e.data;if(s&&"bb-addin-host"===s.source)if("host-ready"===s.messageType)this.setKnownAllowedHostOrigin(e.origin),this.trackHeightChangesOfAddinContent(),this.supportedEventTypes=s.message.supportedEventTypes,this.args.callbacks.init({context:s.message.context,envId:s.message.envId,ready:function(e){t.checkForHeightChangesOfAddinContent(),t.postMessageToHostPage({message:e,messageType:"addin-ready"})},supportedEventTypes:s.message.supportedEventTypes,themeSettings:s.message.themeSettings});else if(this.isFromValidOrigin(e))switch(s.messageType){case"auth-token":case"auth-token-fail":this.handleAuthTokenMessage(s);break;case"modal-closed":this.handleModalClosedMessage(s.message);break;case"button-click":this.args.callbacks.buttonClick&&this.args.callbacks.buttonClick();break;case"update-context":this.args.callbacks.updateContext&&this.args.callbacks.updateContext(s.message);break;case"confirm-closed":this.confirmRequest&&(this.confirmRequest.resolve(s.message.reason),this.confirmRequest=void 0);break;case"flyout-closed":this.flyoutRequest&&(this.flyoutRequest.resolve(),this.flyoutRequest=void 0);break;case"flyout-next-click":this.args.callbacks.flyoutNextClick&&this.args.callbacks.flyoutNextClick();break;case"flyout-previous-click":this.args.callbacks.flyoutPreviousClick&&this.args.callbacks.flyoutPreviousClick();break;case"help-click":this.args.callbacks.helpClick&&this.args.callbacks.helpClick();break;case"settings-click":this.args.callbacks.settingsClick&&this.args.callbacks.settingsClick();break;case"theme-change":this.args.callbacks.themeChange&&this.args.callbacks.themeChange(s.message.themeSettings);break;case"host-event":this.processHostEvent(s.message);break;case"event-received":this.resolveClientEvent(s.message)}else this.warnInvalidOrigin()},e.prototype.setKnownAllowedHostOrigin=function(e){for(var t=0,o=s;t<o.length;t++)if(o[t].test(e))return void(this.trustedOrigin=e)},e.prototype.checkForHeightChangesOfAddinContent=function(){var e=document.documentElement.offsetHeight;e!==this.lastPostedIframeHeight&&(this.lastPostedIframeHeight=e,this.postMessageToHostPage({message:{height:e+"px"},messageType:"height-change"}))},e.prototype.trackHeightChangesOfAddinContent=function(){var e=this;this.heightChangeIntervalId=setInterval((function(){e.checkForHeightChangesOfAddinContent()}),1e3)},e.prototype.postMessageToHostPage=function(e,t){e.source="bb-addin-client",e.addinId=this.getQueryVariable("addinId"),(t=t||this.trustedOrigin)?window.parent.postMessage(e,t):this.warnInvalidOrigin()},e.prototype.processHostEvent=function(e){var t=this,s=e.context,o=this.registeredAddinEvents[s.type];(o?this.isBlockingEventType(s.type)?new Promise((function(e){o(s.context,(function(){e()}))})):new Promise((function(e){o(s.context),e()})):Promise.resolve()).then((function(){return t.postEventReceivedMessage(e.eventRequestId)}))},e.prototype.isBlockingEventType=function(e){switch(e){case"form-save":case"form-cancel":return!0}return!1},e.prototype.postEventReceivedMessage=function(e){this.postMessageToHostPage({message:{eventRequestId:e},messageType:"event-received"})},e.prototype.resolveClientEvent=function(e){var t=e.eventRequestId,s=this.sentEvents[t];s&&(s(),delete this.sentEvents[t])},e.prototype.isFromValidOrigin=function(e){return e.origin===this.trustedOrigin},e.prototype.warnInvalidOrigin=function(){console.warn("The origin is not trusted because the host-ready message has not been sent or because the host origin is not a whitelisted origin.")},e.prototype.getQueryVariable=function(t){for(var s=0,o=e.getQueryString().substring(1).split("&");s<o.length;s++){var n=o[s].split("=");if(decodeURIComponent(n[0])===t)return decodeURIComponent(n[1])}},e}();t.AddinClient=o},714:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},819:(e,t)=>{var s;Object.defineProperty(t,"__esModule",{value:!0}),t.AddinButtonStyle=void 0,(s=t.AddinButtonStyle||(t.AddinButtonStyle={}))[s.None=0]="None",s[s.Add=1]="Add",s[s.Edit=2]="Edit",s[s.Delete=3]="Delete"},676:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},233:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},455:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},75:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},258:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},413:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},954:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},663:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},542:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},610:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},95:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},581:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},342:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},790:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},212:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},88:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},90:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},948:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},468:(e,t)=>{var s;Object.defineProperty(t,"__esModule",{value:!0}),t.AddinConfirmButtonStyle=void 0,(s=t.AddinConfirmButtonStyle||(t.AddinConfirmButtonStyle={}))[s.Default=0]="Default",s[s.Primary=1]="Primary",s[s.Link=2]="Link"},756:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},545:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},993:(e,t)=>{var s;Object.defineProperty(t,"__esModule",{value:!0}),t.AddinTabSummaryStyle=void 0,(s=t.AddinTabSummaryStyle||(t.AddinTabSummaryStyle={}))[s.None=0]="None",s[s.Text=1]="Text"},518:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},590:(e,t)=>{var s;Object.defineProperty(t,"__esModule",{value:!0}),t.AddinTileSummaryStyle=void 0,(s=t.AddinTileSummaryStyle||(t.AddinTileSummaryStyle={}))[s.None=0]="None",s[s.Text=1]="Text",s[s.Check=2]="Check"},480:(e,t)=>{var s;Object.defineProperty(t,"__esModule",{value:!0}),t.AddinToastStyle=void 0,(s=t.AddinToastStyle||(t.AddinToastStyle={}))[s.Danger=0]="Danger",s[s.Info=1]="Info",s[s.Success=2]="Success",s[s.Warning=3]="Warning"},142:function(e,t,s){var o=this&&this.__createBinding||(Object.create?function(e,t,s,o){void 0===o&&(o=s);var n=Object.getOwnPropertyDescriptor(t,s);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[s]}}),Object.defineProperty(e,o,n)}:function(e,t,s,o){void 0===o&&(o=s),e[o]=t[s]}),n=this&&this.__exportStar||function(e,t){for(var s in e)"default"===s||Object.prototype.hasOwnProperty.call(t,s)||o(t,e,s)};Object.defineProperty(t,"__esModule",{value:!0}),n(s(714),t),n(s(819),t),n(s(676),t),n(s(233),t),n(s(455),t),n(s(75),t),n(s(258),t),n(s(413),t),n(s(954),t),n(s(663),t),n(s(542),t),n(s(610),t),n(s(95),t),n(s(581),t),n(s(342),t),n(s(790),t),n(s(212),t),n(s(88),t),n(s(90),t),n(s(948),t),n(s(756),t),n(s(468),t),n(s(545),t),n(s(993),t),n(s(518),t),n(s(590),t),n(s(480),t)},220:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},606:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},57:function(e,t,s){var o=this&&this.__createBinding||(Object.create?function(e,t,s,o){void 0===o&&(o=s);var n=Object.getOwnPropertyDescriptor(t,s);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[s]}}),Object.defineProperty(e,o,n)}:function(e,t,s,o){void 0===o&&(o=s),e[o]=t[s]}),n=this&&this.__exportStar||function(e,t){for(var s in e)"default"===s||Object.prototype.hasOwnProperty.call(t,s)||o(t,e,s)};Object.defineProperty(t,"__esModule",{value:!0}),n(s(220),t),n(s(606),t)},983:function(e,t,s){var o=this&&this.__createBinding||(Object.create?function(e,t,s,o){void 0===o&&(o=s);var n=Object.getOwnPropertyDescriptor(t,s);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[s]}}),Object.defineProperty(e,o,n)}:function(e,t,s,o){void 0===o&&(o=s),e[o]=t[s]}),n=this&&this.__exportStar||function(e,t){for(var s in e)"default"===s||Object.prototype.hasOwnProperty.call(t,s)||o(t,e,s)};Object.defineProperty(t,"__esModule",{value:!0}),n(s(903),t),n(s(142),t),n(s(57),t)}},t={},s=function s(o){var n=t[o];if(void 0!==n)return n.exports;var i=t[o]={exports:{}};return e[o].call(i.exports,i,i.exports,s),i.exports}(789);window.BBSkyAddinClient=s})();
|
|
1
|
+
(()=>{"use strict";var e={789:function(e,t,s){var o=this&&this.__createBinding||(Object.create?function(e,t,s,o){void 0===o&&(o=s);var n=Object.getOwnPropertyDescriptor(t,s);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[s]}}),Object.defineProperty(e,o,n)}:function(e,t,s,o){void 0===o&&(o=s),e[o]=t[s]}),n=this&&this.__exportStar||function(e,t){for(var s in e)"default"===s||Object.prototype.hasOwnProperty.call(t,s)||o(t,e,s)};Object.defineProperty(t,"__esModule",{value:!0}),n(s(983),t)},903:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.AddinClient=void 0;var s=[/^https\:\/\/[\w\-\.]+\.blackbaud\.com$/,/^https\:\/\/[\w\-\.]+\.blackbaud\-dev\.com$/,/^http\:\/\/[\w\-\.]+\.blackbaud\-dev\.com$/,/^https\:\/\/[\w\-\.]+\.blackbaudhosting\.com$/,/^https\:\/\/[\w\-\.]+\.bbcloudservices\.com$/,/^https\:\/\/localhost(\:[0-9]+)?$/,/^https\:\/\/secure[2|3|8]\.convio\.net$/,/^https\:\/\/testweb\.convio\.com$/,/^https\:\/\/[\w\-\.]+\.conviocloud\.com$/,/^https\:\/\/[\w\-\.]+\.blackbaudcloud\.com$/,/^https\:\/\/[\w\-\.]+\.blackbaudfaith\.com$/,/^https\:\/\/[\w\-\.]+\.blackbaudportal\.com$/,/^https\:\/\/[\w\-\.]+\.bbk12\.com$/,/^https\:\/\/[\w\-\.]+\.mycampus\-app\.com$/,/^https\:\/\/[\w\-\.]+\.myschoolapp\.com$/,/^https\:\/\/[\w\-\.]+\.myschoolautomation\.com$/,/^https\:\/\/[\w\-\.]+\.myschooldemo\.com$/,/^https\:\/\/[\w\-\.]+\.myschooltraining\.com$/,/^https\:\/\/[\w\-\.]+\.blackbaudwp\.com$/,/^https\:\/\/[\w\-\.]+\.carrytheload\.org$/,/^https\:\/\/[\w\-\.]+\.ummsfoundation\.org$/,/^http\:\/\/[\w\-\.]+\.lcrf\.org$/,/^https\:\/\/[\w\-\.]+\.go2\.org$/,/^https\:\/\/[\w\-\.]+\.nationwidechildrens\.org$/,/^https\:\/\/[\w\-\.]+\.lupus\.org$/,/^https\:\/\/[\w\-\.]+\.operationsmile\.ca$/,/^https\:\/\/[\w\-\.]+\.convio\.net$/,/^https\:\/\/[\w\-\.]+\.ontariospca\.ca$/,/^https\:\/\/[\w\-\.]+\.brighamandwomens\.org$/,/^https\:\/\/[\w\-\.]+\.northernlighthealth\.org$/,/^http\:\/\/[\w\-\.]+\.convio\.net$/,/^https\:\/\/[\w\-\.]+\.alpha1\.org$/,/^https\:\/\/[\w\-\.]+\.pscpartners\.org$/,/^https\:\/\/[\w\-\.]+\.mercyforanimals\.org$/,/^https\:\/\/[\w\-\.]+\.braintumor\.org$/,/^https\:\/\/[\w\-\.]+\.cancer\.ca$/,/^https\:\/\/[\w\-\.]+\.phoenixchildrensfoundation\.org$/,/^https\:\/\/[\w\-\.]+\.ocmc\.org$/,/^https\:\/\/[\w\-\.]+\.stlouischildrens\.org$/,/^https\:\/\/[\w\-\.]+\.choa\.org$/,/^https\:\/\/[\w\-\.]+\.acsevents\.org$/,/^https\:\/\/[\w\-\.]+\.operationsmile\.org$/,/^https\:\/\/[\w\-\.]+\.mdmercy\.com$/,/^https\:\/\/[\w\-\.]+\.cookchildrens\.org$/,/^https\:\/\/[\w\-\.]+\.chla\.org$/,/^https\:\/\/[\w\-\.]+\.nleomf\.org$/,/^https\:\/\/[\w\-\.]+\.pwatoronto\.org$/,/^https\:\/\/[\w\-\.]+\.jfsla\.org$/,/^https\:\/\/[\w\-\.]+\.roswellpark\.org$/,/^https\:\/\/[\w\-\.]+\.alsagoldenwest\.org$/,/^https\:\/\/[\w\-\.]+\.cancercarefoundation\.ca$/,/^https\:\/\/[\w\-\.]+\.alsnc\.org$/,/^https\:\/\/[\w\-\.]+\.alsanm\.org$/,/^https\:\/\/[\w\-\.]+\.waysidewaifs\.org$/,/^https\:\/\/[\w\-\.]+\.bladdercancercanada\.org$/,/^https\:\/\/[\w\-\.]+\.jimmyfund\.org$/,/^https\:\/\/[\w\-\.]+\.info\-komen\.org$/,/^https\:\/\/[\w\-\.]+\.mountsinai\.org$/,/^https\:\/\/[\w\-\.]+\.walkforpd\.ca$/,/^https\:\/\/[\w\-\.]+\.alsoregon\.org$/,/^https\:\/\/[\w\-\.]+\.feedhopenow\.org$/,/^https\:\/\/[\w\-\.]+\.trilliumgiving\.ca$/,/^https\:\/\/[\w\-\.]+\.swimacrossamerica\.org$/,/^https\:\/\/ovariancanada\.org$/,/^https\:\/\/[\w\-\.]+\.ovariancanada\.org$/,/^https\:\/\/[\w\-\.]+\.alsunitedchicago\.org$/,/^https\:\/\/[\w\-\.]+\.fredhutch\.org$/,/^https\:\/\/[\w\-\.]+\.hss\.edu$/,/^https\:\/\/[\w\-\.]+\.nyghfoundation\.ca$/,/^https\:\/\/[\w\-\.]+\.natureconservancy\.ca$/,/^https\:\/\/[\w\-\.]+\.llscanada\.org$/,/^https\:\/\/[\w\-\.]+\.als\-ny\.org$/,/^https\:\/\/[\w\-\.]+\.zerocancer\.org$/,/^https\:\/\/[\w\-\.]+\.alsmidatlantic\.org$/,/^https\:\/\/[\w\-\.]+\.habitat\.ca$/,/^https\:\/\/[\w\-\.]+\.stamfordhospitalfoundation\.org$/,/^https\:\/\/[\w\-\.]+\.alsohio\.org$/,/^https\:\/\/[\w\-\.]+\.cancercarefdn\.mb\.ca$/,/^https\:\/\/[\w\-\.]+\.baycrestfoundation\.org$/,/^https\:\/\/[\w\-\.]+\.southlake\.ca$/,/^https\:\/\/[\w\-\.]+\.parkinson\.ca$/],o=function(){function e(e){var t=this;this.args=e,this.authTokenRequests=[],this.lastAuthTokenRequestId=0,this.modalRequests=[],this.lastModalRequestId=0,this.registeredAddinEvents={},this.sentEvents={},this.pendingSentEvents={},this.eventRequestId=0,this.supportedEventTypes=[],this.allowedOrigins=s,this.initConfig(e.config),this.windowMessageHandler=function(e){t.handleMessage(e)},window.addEventListener("message",this.windowMessageHandler),this.raiseAddinReadyMessage()}return e.getQueryString=function(){return window.location.search},e.prototype.destroy=function(){window.removeEventListener("message",this.windowMessageHandler),this.heightChangeIntervalId&&clearInterval(this.heightChangeIntervalId)},e.prototype.navigate=function(e){this.postMessageToHostPage({message:{url:e.url},messageType:"navigate"})},e.prototype.getAuthToken=function(){return this.getUserIdentityToken()},e.prototype.getUserIdentityToken=function(){var e=this;return new Promise((function(t,s){var o=++e.lastAuthTokenRequestId;e.authTokenRequests[o]={reject:s,resolve:t},e.postMessageToHostPage({message:{authTokenRequestId:o},messageType:"get-auth-token"})}))},e.prototype.showModal=function(e){var t=this;return{modalClosed:new Promise((function(s,o){var n=++t.lastModalRequestId;t.modalRequests[n]={reject:o,resolve:s},t.postMessageToHostPage({message:{args:e,modalRequestId:n},messageType:"show-modal"})}))}},e.prototype.closeModal=function(e){this.postMessageToHostPage({message:e,messageType:"close-modal"})},e.prototype.openHelp=function(e){this.postMessageToHostPage({message:{helpKey:e.helpKey},messageType:"open-help"})},e.prototype.showToast=function(e){this.postMessageToHostPage({message:e,messageType:"show-toast"})},e.prototype.showFlyout=function(e){var t=this;return{flyoutClosed:new Promise((function(s,o){e.defaultWidth=e.defaultWidth,e.maxWidth=e.maxWidth,e.minWidth=e.minWidth,t.flyoutRequest={reject:o,resolve:s},t.postMessageToHostPage({message:e,messageType:"show-flyout"})}))}},e.prototype.closeFlyout=function(){this.postMessageToHostPage({messageType:"close-flyout"})},e.prototype.showConfirm=function(e){var t=this;return new Promise((function(s,o){t.confirmRequest={reject:o,resolve:s},t.postMessageToHostPage({message:e,messageType:"show-confirm"})}))},e.prototype.showError=function(e){this.postMessageToHostPage({message:e,messageType:"show-error"})},e.prototype.showWait=function(){this.postMessageToHostPage({messageType:"show-wait"})},e.prototype.hideWait=function(){this.postMessageToHostPage({messageType:"hide-wait"})},e.prototype.addEventHandler=function(e,t){this.registeredAddinEvents[e]=t},e.prototype.sendEvent=function(e){var t=this;return new Promise((function(s,o){var n=e.type;t.supportedEventTypes.includes(n)||o("Event type not supported");var a=t.pendingSentEvents[n];a&&(clearTimeout(a.timeoutId),a.reject("Event cancelled"));var i=setTimeout((function(){delete t.pendingSentEvents[n],t.postMessageToHostPage({message:{event:e,eventRequestId:t.eventRequestId},messageType:"client-event"}),t.sentEvents[t.eventRequestId]=s,t.eventRequestId++}),200);t.pendingSentEvents[n]={reject:o,timeoutId:i}}))},e.prototype.initConfig=function(e){var t;(null===(t=null==e?void 0:e.allowedOrigins)||void 0===t?void 0:t.length)>0&&(this.allowedOrigins=this.allowedOrigins.concat(e.allowedOrigins),this.allowedOrigins=this.allowedOrigins.reduce((function(e,t){return e.find((function(e){return e.source===t.source}))||e.push(t),e}),[]))},e.prototype.raiseAddinReadyMessage=function(){this.postMessageToHostPage({messageType:"ready"},"*")},e.prototype.handleModalClosedMessage=function(e){var t=this.modalRequests,s=e.modalRequestId;t[s].resolve(e.context),t[s]=void 0},e.prototype.handleAuthTokenMessage=function(e){var t=this.authTokenRequests,s=e.message.authTokenRequestId,o=t[s];switch(e.messageType){case"auth-token":var n=e.message.authToken;o.resolve(n);break;case"auth-token-fail":o.reject(e.message.reason)}t[s]=void 0},e.prototype.handleMessage=function(e){var t=this,s=e.data;if(s&&"bb-addin-host"===s.source)if("host-ready"===s.messageType)this.setKnownAllowedHostOrigin(e.origin),this.trackHeightChangesOfAddinContent(),this.supportedEventTypes=s.message.supportedEventTypes,this.args.callbacks.init({context:s.message.context,envId:s.message.envId,ready:function(e){t.checkForHeightChangesOfAddinContent(),t.postMessageToHostPage({message:e,messageType:"addin-ready"})},supportedEventTypes:s.message.supportedEventTypes,themeSettings:s.message.themeSettings});else if(this.isFromValidOrigin(e))switch(s.messageType){case"auth-token":case"auth-token-fail":this.handleAuthTokenMessage(s);break;case"modal-closed":this.handleModalClosedMessage(s.message);break;case"button-click":this.args.callbacks.buttonClick&&this.args.callbacks.buttonClick();break;case"update-context":this.args.callbacks.updateContext&&this.args.callbacks.updateContext(s.message);break;case"confirm-closed":this.confirmRequest&&(this.confirmRequest.resolve(s.message.reason),this.confirmRequest=void 0);break;case"flyout-closed":this.flyoutRequest&&(this.flyoutRequest.resolve(),this.flyoutRequest=void 0);break;case"flyout-next-click":this.args.callbacks.flyoutNextClick&&this.args.callbacks.flyoutNextClick();break;case"flyout-previous-click":this.args.callbacks.flyoutPreviousClick&&this.args.callbacks.flyoutPreviousClick();break;case"help-click":this.args.callbacks.helpClick&&this.args.callbacks.helpClick();break;case"settings-click":this.args.callbacks.settingsClick&&this.args.callbacks.settingsClick();break;case"theme-change":this.args.callbacks.themeChange&&this.args.callbacks.themeChange(s.message.themeSettings);break;case"host-event":this.processHostEvent(s.message);break;case"event-received":this.resolveClientEvent(s.message)}else this.warnInvalidOrigin()},e.prototype.setKnownAllowedHostOrigin=function(e){for(var t=0,s=this.allowedOrigins;t<s.length;t++)if(s[t].test(e))return void(this.trustedOrigin=e)},e.prototype.checkForHeightChangesOfAddinContent=function(){var e=document.documentElement.offsetHeight;e!==this.lastPostedIframeHeight&&(this.lastPostedIframeHeight=e,this.postMessageToHostPage({message:{height:e+"px"},messageType:"height-change"}))},e.prototype.trackHeightChangesOfAddinContent=function(){var e=this;this.heightChangeIntervalId=setInterval((function(){e.checkForHeightChangesOfAddinContent()}),1e3)},e.prototype.postMessageToHostPage=function(e,t){e.source="bb-addin-client",e.addinId=this.getQueryVariable("addinId"),(t=t||this.trustedOrigin)?window.parent.postMessage(e,t):this.warnInvalidOrigin()},e.prototype.processHostEvent=function(e){var t=this,s=e.context,o=this.registeredAddinEvents[s.type];(o?this.isBlockingEventType(s.type)?new Promise((function(e){o(s.context,(function(){e()}))})):new Promise((function(e){o(s.context),e()})):Promise.resolve()).then((function(){return t.postEventReceivedMessage(e.eventRequestId)}))},e.prototype.isBlockingEventType=function(e){switch(e){case"form-save":case"form-cancel":return!0}return!1},e.prototype.postEventReceivedMessage=function(e){this.postMessageToHostPage({message:{eventRequestId:e},messageType:"event-received"})},e.prototype.resolveClientEvent=function(e){var t=e.eventRequestId,s=this.sentEvents[t];s&&(s(),delete this.sentEvents[t])},e.prototype.isFromValidOrigin=function(e){return e.origin===this.trustedOrigin},e.prototype.warnInvalidOrigin=function(){console.warn("The origin is not trusted because the host-ready message has not been sent or because the host origin is not a whitelisted origin.")},e.prototype.getQueryVariable=function(t){for(var s=0,o=e.getQueryString().substring(1).split("&");s<o.length;s++){var n=o[s].split("=");if(decodeURIComponent(n[0])===t)return decodeURIComponent(n[1])}},e}();t.AddinClient=o},714:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},819:(e,t)=>{var s;Object.defineProperty(t,"__esModule",{value:!0}),t.AddinButtonStyle=void 0,(s=t.AddinButtonStyle||(t.AddinButtonStyle={}))[s.None=0]="None",s[s.Add=1]="Add",s[s.Edit=2]="Edit",s[s.Delete=3]="Delete"},676:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},233:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},455:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},407:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},75:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},258:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},413:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},954:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},663:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},542:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},610:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},95:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},581:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},342:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},790:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},212:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},88:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},90:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},948:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},468:(e,t)=>{var s;Object.defineProperty(t,"__esModule",{value:!0}),t.AddinConfirmButtonStyle=void 0,(s=t.AddinConfirmButtonStyle||(t.AddinConfirmButtonStyle={}))[s.Default=0]="Default",s[s.Primary=1]="Primary",s[s.Link=2]="Link"},756:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},545:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},993:(e,t)=>{var s;Object.defineProperty(t,"__esModule",{value:!0}),t.AddinTabSummaryStyle=void 0,(s=t.AddinTabSummaryStyle||(t.AddinTabSummaryStyle={}))[s.None=0]="None",s[s.Text=1]="Text"},518:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},590:(e,t)=>{var s;Object.defineProperty(t,"__esModule",{value:!0}),t.AddinTileSummaryStyle=void 0,(s=t.AddinTileSummaryStyle||(t.AddinTileSummaryStyle={}))[s.None=0]="None",s[s.Text=1]="Text",s[s.Check=2]="Check"},480:(e,t)=>{var s;Object.defineProperty(t,"__esModule",{value:!0}),t.AddinToastStyle=void 0,(s=t.AddinToastStyle||(t.AddinToastStyle={}))[s.Danger=0]="Danger",s[s.Info=1]="Info",s[s.Success=2]="Success",s[s.Warning=3]="Warning"},142:function(e,t,s){var o=this&&this.__createBinding||(Object.create?function(e,t,s,o){void 0===o&&(o=s);var n=Object.getOwnPropertyDescriptor(t,s);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[s]}}),Object.defineProperty(e,o,n)}:function(e,t,s,o){void 0===o&&(o=s),e[o]=t[s]}),n=this&&this.__exportStar||function(e,t){for(var s in e)"default"===s||Object.prototype.hasOwnProperty.call(t,s)||o(t,e,s)};Object.defineProperty(t,"__esModule",{value:!0}),n(s(714),t),n(s(819),t),n(s(676),t),n(s(233),t),n(s(455),t),n(s(407),t),n(s(75),t),n(s(258),t),n(s(413),t),n(s(954),t),n(s(663),t),n(s(542),t),n(s(610),t),n(s(95),t),n(s(581),t),n(s(342),t),n(s(790),t),n(s(212),t),n(s(88),t),n(s(90),t),n(s(948),t),n(s(756),t),n(s(468),t),n(s(545),t),n(s(993),t),n(s(518),t),n(s(590),t),n(s(480),t)},220:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},606:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},57:function(e,t,s){var o=this&&this.__createBinding||(Object.create?function(e,t,s,o){void 0===o&&(o=s);var n=Object.getOwnPropertyDescriptor(t,s);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[s]}}),Object.defineProperty(e,o,n)}:function(e,t,s,o){void 0===o&&(o=s),e[o]=t[s]}),n=this&&this.__exportStar||function(e,t){for(var s in e)"default"===s||Object.prototype.hasOwnProperty.call(t,s)||o(t,e,s)};Object.defineProperty(t,"__esModule",{value:!0}),n(s(220),t),n(s(606),t)},983:function(e,t,s){var o=this&&this.__createBinding||(Object.create?function(e,t,s,o){void 0===o&&(o=s);var n=Object.getOwnPropertyDescriptor(t,s);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[s]}}),Object.defineProperty(e,o,n)}:function(e,t,s,o){void 0===o&&(o=s),e[o]=t[s]}),n=this&&this.__exportStar||function(e,t){for(var s in e)"default"===s||Object.prototype.hasOwnProperty.call(t,s)||o(t,e,s)};Object.defineProperty(t,"__esModule",{value:!0}),n(s(903),t),n(s(142),t),n(s(57),t)}},t={},s=function s(o){var n=t[o];if(void 0!==n)return n.exports;var a=t[o]={exports:{}};return e[o].call(a.exports,a,a.exports,s),a.exports}(789);window.BBSkyAddinClient=s})();
|