@progress/kendo-ui
Version:
This package is part of the [Kendo UI for jQuery](http://www.telerik.com/kendo-ui) suite.
3 lines (2 loc) • 2.02 kB
JavaScript
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("kendo.data.js")):"function"==typeof define&&define.amd?define(["exports","kendo.data"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).kendo=e.kendo||{},e.kendo._globals=e.kendo._globals||{},e.kendo._globals.DataSignalr={}))}(this,(function(e){!function(e){var t=window.kendo,n=t.isFunction;function o(e){return e&&n(e.done)&&n(e.fail)}function r(e){return e&&n(e.then)&&n(e.catch)}var i=t.data.RemoteTransport.extend({init:function(e){var n=e&&e.signalr?e.signalr:{},i=n.promise;if(!i)throw new Error('The "promise" option must be set.');if(!o(i)&&!r(i))throw new Error('The "promise" option must be a Promise.');this.promise=i;var a=n.hub;if(!a)throw new Error('The "hub" option must be set.');if("function"!=typeof a.on||"function"!=typeof a.invoke)throw new Error('The "hub" option is not a valid SignalR hub proxy.');this.hub=a,t.data.RemoteTransport.fn.init.call(this,e)},push:function(e){var t=this.options.signalr.client||{};t.create&&this.hub.on(t.create,e.pushCreate),t.update&&this.hub.on(t.update,e.pushUpdate),t.destroy&&this.hub.on(t.destroy,e.pushDestroy)},_crud:function(n,i){var a=this.hub,s=this.promise,d=this.options.signalr.server;if(!d||!d[i])throw new Error(t.format('The "server.{0}" option must be set.',i));var u=[d[i]],h=this.parameterMap(n.data,i);e.isEmptyObject(h)||u.push(h),o(s)?s.done((function(){a.invoke.apply(a,u).done(n.success).fail(n.error)})):r(s)&&s.then((function(){a.invoke.apply(a,u).then(n.success).catch(n.error)}))},read:function(e){this._crud(e,"read")},create:function(e){this._crud(e,"create")},update:function(e){this._crud(e,"update")},destroy:function(e){this._crud(e,"destroy")}});e.extend(!0,t.data,{transports:{signalr:i}})}(window.kendo.jQuery);var t=kendo;e.__meta__={id:"data.signalr",name:"SignalR",category:"framework",depends:["data"],hidden:!0},e.default=t,Object.defineProperty(e,"__esModule",{value:!0})}));
//# sourceMappingURL=kendo.data.signalr.min.js.map