@blackbaud/sky-addin-client 1.1.5 → 1.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (96) hide show
  1. package/CHANGELOG.md +121 -114
  2. package/README.md +470 -470
  3. package/bundles/sky-addin-client.global-es2015.js +1094 -0
  4. package/bundles/sky-addin-client.global-es2015.min.js +1 -0
  5. package/bundles/sky-addin-client.global.js +1106 -0
  6. package/bundles/sky-addin-client.global.min.js +1 -0
  7. package/bundles/sky-addin-client.umd-es2015.js +1105 -0
  8. package/bundles/sky-addin-client.umd-es2015.min.js +1 -0
  9. package/bundles/sky-addin-client.umd.js +1117 -1
  10. package/bundles/sky-addin-client.umd.min.js +1 -1
  11. package/index.d.ts +1 -1
  12. package/index.js +17 -6
  13. package/index.js.map +1 -1
  14. package/package.json +67 -70
  15. package/src/addin/addin-client.d.ts +277 -277
  16. package/src/addin/addin-client.js +640 -640
  17. package/src/addin/addin-client.js.map +1 -1
  18. package/src/addin/addin-client.spec.d.ts +1 -0
  19. package/src/addin/addin-client.spec.js +1415 -0
  20. package/src/addin/addin-client.spec.js.map +1 -0
  21. package/src/addin/client-interfaces/addin-action-button-config.d.ts +10 -10
  22. package/src/addin/client-interfaces/addin-action-button-config.js +2 -2
  23. package/src/addin/client-interfaces/addin-button-config.d.ts +10 -10
  24. package/src/addin/client-interfaces/addin-button-config.js +2 -2
  25. package/src/addin/client-interfaces/addin-button-style.d.ts +6 -6
  26. package/src/addin/client-interfaces/addin-button-style.js +17 -16
  27. package/src/addin/client-interfaces/addin-button-style.js.map +1 -1
  28. package/src/addin/client-interfaces/addin-client-args.d.ts +10 -10
  29. package/src/addin/client-interfaces/addin-client-args.js +2 -2
  30. package/src/addin/client-interfaces/addin-client-callbacks.d.ts +40 -40
  31. package/src/addin/client-interfaces/addin-client-callbacks.js +2 -2
  32. package/src/addin/client-interfaces/addin-client-close-modal-args.d.ts +10 -10
  33. package/src/addin/client-interfaces/addin-client-close-modal-args.js +2 -2
  34. package/src/addin/client-interfaces/addin-client-event-args.d.ts +13 -13
  35. package/src/addin/client-interfaces/addin-client-event-args.js +2 -2
  36. package/src/addin/client-interfaces/addin-client-flyout-permalink.d.ts +14 -14
  37. package/src/addin/client-interfaces/addin-client-flyout-permalink.js +2 -2
  38. package/src/addin/client-interfaces/addin-client-init-args.d.ts +28 -28
  39. package/src/addin/client-interfaces/addin-client-init-args.js +2 -2
  40. package/src/addin/client-interfaces/addin-client-navigate-args.d.ts +9 -9
  41. package/src/addin/client-interfaces/addin-client-navigate-args.js +2 -2
  42. package/src/addin/client-interfaces/addin-client-open-help-args.d.ts +10 -10
  43. package/src/addin/client-interfaces/addin-client-open-help-args.js +2 -2
  44. package/src/addin/client-interfaces/addin-client-ready-args.d.ts +39 -39
  45. package/src/addin/client-interfaces/addin-client-ready-args.js +2 -2
  46. package/src/addin/client-interfaces/addin-client-ready-button-config.d.ts +10 -10
  47. package/src/addin/client-interfaces/addin-client-ready-button-config.js +2 -2
  48. package/src/addin/client-interfaces/addin-client-show-confirm-args.d.ts +19 -19
  49. package/src/addin/client-interfaces/addin-client-show-confirm-args.js +2 -2
  50. package/src/addin/client-interfaces/addin-client-show-error-args.d.ts +18 -18
  51. package/src/addin/client-interfaces/addin-client-show-error-args.js +2 -2
  52. package/src/addin/client-interfaces/addin-client-show-flyout-args.d.ts +46 -46
  53. package/src/addin/client-interfaces/addin-client-show-flyout-args.js +2 -2
  54. package/src/addin/client-interfaces/addin-client-show-flyout-result.d.ts +9 -9
  55. package/src/addin/client-interfaces/addin-client-show-flyout-result.js +2 -2
  56. package/src/addin/client-interfaces/addin-client-show-modal-args.d.ts +14 -14
  57. package/src/addin/client-interfaces/addin-client-show-modal-args.js +2 -2
  58. package/src/addin/client-interfaces/addin-client-show-modal-result.d.ts +10 -10
  59. package/src/addin/client-interfaces/addin-client-show-modal-result.js +2 -2
  60. package/src/addin/client-interfaces/addin-client-show-toast-args.d.ts +15 -15
  61. package/src/addin/client-interfaces/addin-client-show-toast-args.js +2 -2
  62. package/src/addin/client-interfaces/addin-client-theme-settings.d.ts +13 -13
  63. package/src/addin/client-interfaces/addin-client-theme-settings.js +2 -2
  64. package/src/addin/client-interfaces/addin-confirm-button-style.d.ts +8 -8
  65. package/src/addin/client-interfaces/addin-confirm-button-style.js +16 -15
  66. package/src/addin/client-interfaces/addin-confirm-button-style.js.map +1 -1
  67. package/src/addin/client-interfaces/addin-confirm-button.d.ts +26 -26
  68. package/src/addin/client-interfaces/addin-confirm-button.js +2 -2
  69. package/src/addin/client-interfaces/addin-modal-config.d.ts +12 -12
  70. package/src/addin/client-interfaces/addin-modal-config.js +2 -2
  71. package/src/addin/client-interfaces/addin-tab-config.d.ts +9 -9
  72. package/src/addin/client-interfaces/addin-tab-config.js +2 -2
  73. package/src/addin/client-interfaces/addin-tab-summary-style.d.ts +4 -4
  74. package/src/addin/client-interfaces/addin-tab-summary-style.js +13 -12
  75. package/src/addin/client-interfaces/addin-tab-summary-style.js.map +1 -1
  76. package/src/addin/client-interfaces/addin-tile-config.d.ts +32 -32
  77. package/src/addin/client-interfaces/addin-tile-config.js +2 -2
  78. package/src/addin/client-interfaces/addin-tile-summary-style.d.ts +5 -5
  79. package/src/addin/client-interfaces/addin-tile-summary-style.js +15 -14
  80. package/src/addin/client-interfaces/addin-tile-summary-style.js.map +1 -1
  81. package/src/addin/client-interfaces/addin-toast-style.d.ts +6 -6
  82. package/src/addin/client-interfaces/addin-toast-style.js +17 -16
  83. package/src/addin/client-interfaces/addin-toast-style.js.map +1 -1
  84. package/src/addin/client-interfaces/index.d.ts +27 -27
  85. package/src/addin/client-interfaces/index.js +43 -10
  86. package/src/addin/client-interfaces/index.js.map +1 -1
  87. package/src/addin/host-interfaces/addin-host-message-event-data.d.ts +23 -23
  88. package/src/addin/host-interfaces/addin-host-message-event-data.js +2 -2
  89. package/src/addin/host-interfaces/addin-host-message.d.ts +44 -44
  90. package/src/addin/host-interfaces/addin-host-message.js +2 -2
  91. package/src/addin/host-interfaces/index.d.ts +2 -2
  92. package/src/addin/host-interfaces/index.js +18 -2
  93. package/src/addin/host-interfaces/index.js.map +1 -1
  94. package/src/addin/index.d.ts +3 -3
  95. package/src/addin/index.js +19 -7
  96. package/src/addin/index.js.map +1 -1
@@ -0,0 +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})();