fable-serviceproviderbase 3.0.10 → 3.0.12
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/dist/fable-serviceproviderbase.compatible.js +55 -51
- package/dist/fable-serviceproviderbase.compatible.min.js +1 -1
- package/dist/fable-serviceproviderbase.compatible.min.js.map +1 -1
- package/dist/fable-serviceproviderbase.js +47 -44
- package/dist/fable-serviceproviderbase.min.js +1 -1
- package/dist/fable-serviceproviderbase.min.js.map +1 -1
- package/package.json +3 -5
- package/source/Fable-ServiceProviderBase.js +61 -15
- package/source/Fable-ServiceProviderBase-Preinit.js +0 -38
|
@@ -6,7 +6,7 @@ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _d
|
|
|
6
6
|
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
7
7
|
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
|
8
8
|
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
9
|
-
function _typeof(
|
|
9
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
10
10
|
(function (f) {
|
|
11
11
|
if ((typeof exports === "undefined" ? "undefined" : _typeof(exports)) === "object" && typeof module !== "undefined") {
|
|
12
12
|
module.exports = f();
|
|
@@ -55,65 +55,69 @@ function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" =
|
|
|
55
55
|
}()({
|
|
56
56
|
1: [function (require, module, exports) {
|
|
57
57
|
/**
|
|
58
|
-
* Fable
|
|
59
|
-
*
|
|
60
|
-
* For a couple services, we need to be able to instantiate them before the Fable object is fully initialized.
|
|
61
|
-
* This is a base class for those services.
|
|
62
|
-
*
|
|
58
|
+
* Fable Service Base
|
|
63
59
|
* @author <steven@velozo.com>
|
|
64
60
|
*/
|
|
65
|
-
var
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
this
|
|
61
|
+
var FableServiceProviderBase = /*#__PURE__*/function () {
|
|
62
|
+
// The constructor can be used in two ways:
|
|
63
|
+
// 1) With a fable, options object and service hash (the options object and service hash are optional)
|
|
64
|
+
// 2) With an object or nothing as the first parameter, where it will be treated as the options object
|
|
65
|
+
function FableServiceProviderBase(pFable, pOptions, pServiceHash) {
|
|
66
|
+
_classCallCheck(this, FableServiceProviderBase);
|
|
67
|
+
// Check if a fable was passed in; connect it if so
|
|
68
|
+
if (_typeof(pFable) === 'object' && pFable.isFable) {
|
|
69
|
+
this.connectFable(pFable);
|
|
70
|
+
} else {
|
|
71
|
+
this.fable = false;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
// initialize options and UUID based on whether the fable was passed in or not.
|
|
75
|
+
if (this.fable) {
|
|
76
|
+
this.UUID = pFable.getUUID();
|
|
77
|
+
this.options = _typeof(pOptions) === 'object' ? pOptions : {};
|
|
78
|
+
} else {
|
|
79
|
+
// With no fable, check to see if there was an object passed into either of the first two
|
|
80
|
+
// Parameters, and if so, treat it as the options object
|
|
81
|
+
this.options = _typeof(pFable) === 'object' && !pFable.isFable ? pFable : _typeof(pOptions) === 'object' ? pOptions : {};
|
|
82
|
+
this.UUID = "CORE-SVC-".concat(Math.floor(Math.random() * (99999 - 10000) + 10000));
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
// It's expected that the deriving class will set this
|
|
86
|
+
this.serviceType = "Unknown-".concat(this.UUID);
|
|
71
87
|
|
|
72
|
-
// The hash
|
|
73
|
-
this.
|
|
74
|
-
this.Hash = typeof pServiceHash === 'string' ? pServiceHash : "".concat(this.UUID);
|
|
88
|
+
// The service hash is used to identify the specific instantiation of the service in the services map
|
|
89
|
+
this.Hash = typeof pServiceHash === 'string' ? pServiceHash : !this.fable && typeof pOptions === 'string' ? pOptions : "".concat(this.UUID);
|
|
75
90
|
}
|
|
76
|
-
_createClass(
|
|
91
|
+
_createClass(FableServiceProviderBase, [{
|
|
77
92
|
key: "connectFable",
|
|
78
|
-
value:
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
93
|
+
value: function connectFable(pFable) {
|
|
94
|
+
if (_typeof(pFable) !== 'object' || !pFable.isFable) {
|
|
95
|
+
var tmpErrorMessage = "Fable Service Provider Base: Cannot connect to Fable, invalid Fable object passed in. The pFable parameter was a [".concat(_typeof(pFable), "].}");
|
|
96
|
+
console.log(tmpErrorMessage);
|
|
97
|
+
return new Error(tmpErrorMessage);
|
|
98
|
+
}
|
|
99
|
+
if (!this.fable) {
|
|
100
|
+
this.fable = pFable;
|
|
101
|
+
}
|
|
102
|
+
if (!this.log) {
|
|
103
|
+
this.log = this.fable.Logging;
|
|
104
|
+
}
|
|
105
|
+
if (!this.services) {
|
|
106
|
+
this.services = this.fable.services;
|
|
107
|
+
}
|
|
108
|
+
if (!this.servicesMap) {
|
|
109
|
+
this.servicesMap = this.fable.servicesMap;
|
|
110
|
+
}
|
|
82
111
|
return true;
|
|
83
112
|
}
|
|
84
113
|
}]);
|
|
85
|
-
return
|
|
114
|
+
return FableServiceProviderBase;
|
|
86
115
|
}();
|
|
87
|
-
_defineProperty(FableCoreServiceProviderBase, "isFableService", true);
|
|
88
|
-
module.exports = FableCoreServiceProviderBase;
|
|
89
|
-
}, {}],
|
|
90
|
-
2: [function (require, module, exports) {
|
|
91
|
-
/**
|
|
92
|
-
* Fable Service Base
|
|
93
|
-
* @author <steven@velozo.com>
|
|
94
|
-
*/
|
|
95
|
-
var FableServiceProviderBase = /*#__PURE__*/_createClass(function FableServiceProviderBase(pFable, pOptions, pServiceHash) {
|
|
96
|
-
_classCallCheck(this, FableServiceProviderBase);
|
|
97
|
-
this.fable = pFable;
|
|
98
|
-
this.options = _typeof(pOptions) === 'object' ? pOptions : _typeof(pFable) === 'object' && !pFable.isFable ? pFable : {};
|
|
99
|
-
this.serviceType = 'Unknown';
|
|
100
|
-
if (typeof pFable.getUUID == 'function') {
|
|
101
|
-
this.UUID = pFable.getUUID();
|
|
102
|
-
} else {
|
|
103
|
-
this.UUID = "NoFABLESVC-".concat(Math.floor(Math.random() * (99999 - 10000) + 10000));
|
|
104
|
-
}
|
|
105
|
-
this.Hash = typeof pServiceHash === 'string' ? pServiceHash : "".concat(this.UUID);
|
|
106
|
-
|
|
107
|
-
// Pull back a few things
|
|
108
|
-
this.log = this.fable.log;
|
|
109
|
-
this.servicesMap = this.fable.servicesMap;
|
|
110
|
-
this.services = this.fable.services;
|
|
111
|
-
});
|
|
112
116
|
_defineProperty(FableServiceProviderBase, "isFableService", true);
|
|
113
117
|
module.exports = FableServiceProviderBase;
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
}]
|
|
118
|
-
}, {}, [
|
|
118
|
+
|
|
119
|
+
// This is left here in case we want to go back to having different code/base class for "core" services
|
|
120
|
+
module.exports.CoreServiceProviderBase = FableServiceProviderBase;
|
|
121
|
+
}, {}]
|
|
122
|
+
}, {}, [1])(1);
|
|
119
123
|
});
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _defineProperties(e,t){for(var r=0;r<t.length;r++){var o=t[r];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,_toPropertyKey(o.key),o)}}function _createClass(e,t,r){return t&&_defineProperties(e.prototype,t),r&&_defineProperties(e,r),Object.defineProperty(e,"prototype",{writable:!1}),e}function _defineProperty(e,t,r){return(t=_toPropertyKey(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function _toPropertyKey(e){var t=_toPrimitive(e,"string");return"symbol"===_typeof(t)?t:String(t)}function _toPrimitive(e,t){if("object"!==_typeof(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var o=r.call(e,t||"default");if("object"!==_typeof(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}function _typeof(e){return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},_typeof(e)}!function(e){if("object"===("undefined"==typeof exports?"undefined":_typeof(exports))&&"undefined"!=typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{("undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this).FableServiceproviderbase=e()}}((function(){return function e(t,r,o){function i(f,s){if(!r[f]){if(!t[f]){var a="function"==typeof require&&require;if(!s&&a)return a(f,!0);if(n)return n(f,!0);var c=new Error("Cannot find module '"+f+"'");throw c.code="MODULE_NOT_FOUND",c}var l=r[f]={exports:{}};t[f][0].call(l.exports,(function(e){return i(t[f][1][e]||e)}),l,l.exports,e,t,r,o)}return r[f].exports}for(var n="function"==typeof require&&require,f=0;f<o.length;f++)i(o[f]);return i}({1:[function(e,t,r){var o=function(){function e(t,r){_classCallCheck(this,e),this.fable=!1,this.options="object"===_typeof(
|
|
1
|
+
"use strict";function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _defineProperties(e,t){for(var r=0;r<t.length;r++){var o=t[r];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,_toPropertyKey(o.key),o)}}function _createClass(e,t,r){return t&&_defineProperties(e.prototype,t),r&&_defineProperties(e,r),Object.defineProperty(e,"prototype",{writable:!1}),e}function _defineProperty(e,t,r){return(t=_toPropertyKey(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function _toPropertyKey(e){var t=_toPrimitive(e,"string");return"symbol"===_typeof(t)?t:String(t)}function _toPrimitive(e,t){if("object"!==_typeof(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var o=r.call(e,t||"default");if("object"!==_typeof(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}function _typeof(e){return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},_typeof(e)}!function(e){if("object"===("undefined"==typeof exports?"undefined":_typeof(exports))&&"undefined"!=typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{("undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this).FableServiceproviderbase=e()}}((function(){return function e(t,r,o){function i(f,s){if(!r[f]){if(!t[f]){var a="function"==typeof require&&require;if(!s&&a)return a(f,!0);if(n)return n(f,!0);var c=new Error("Cannot find module '"+f+"'");throw c.code="MODULE_NOT_FOUND",c}var l=r[f]={exports:{}};t[f][0].call(l.exports,(function(e){return i(t[f][1][e]||e)}),l,l.exports,e,t,r,o)}return r[f].exports}for(var n="function"==typeof require&&require,f=0;f<o.length;f++)i(o[f]);return i}({1:[function(e,t,r){var o=function(){function e(t,r,o){_classCallCheck(this,e),"object"===_typeof(t)&&t.isFable?this.connectFable(t):this.fable=!1,this.fable?(this.UUID=t.getUUID(),this.options="object"===_typeof(r)?r:{}):(this.options="object"!==_typeof(t)||t.isFable?"object"===_typeof(r)?r:{}:t,this.UUID="CORE-SVC-".concat(Math.floor(89999*Math.random()+1e4))),this.serviceType="Unknown-".concat(this.UUID),this.Hash="string"==typeof o?o:this.fable||"string"!=typeof r?"".concat(this.UUID):r}return _createClass(e,[{key:"connectFable",value:function(e){if("object"!==_typeof(e)||!e.isFable){var t="Fable Service Provider Base: Cannot connect to Fable, invalid Fable object passed in. The pFable parameter was a [".concat(_typeof(e),"].}");return console.log(t),new Error(t)}return this.fable||(this.fable=e),this.log||(this.log=this.fable.Logging),this.services||(this.services=this.fable.services),this.servicesMap||(this.servicesMap=this.fable.servicesMap),!0}}]),e}();_defineProperty(o,"isFableService",!0),t.exports=o,t.exports.CoreServiceProviderBase=o},{}]},{},[1])(1)}));
|
|
2
2
|
//# sourceMappingURL=fable-serviceproviderbase.compatible.min.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["fable-serviceproviderbase.compatible.min.js","node_modules/browser-pack/_prelude.js","source/Fable-ServiceProviderBase-Preinit.js","source/Fable-ServiceProviderBase.js"],"names":["_classCallCheck","instance","Constructor","TypeError","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","_toPropertyKey","key","_createClass","protoProps","staticProps","prototype","_defineProperty","obj","value","arg","_toPrimitive","_typeof","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","Number","iterator","constructor","f","exports","module","define","amd","window","global","self","this","FableServiceproviderbase","r","e","n","t","o","c","require","u","a","Error","code","p","FableCoreServiceProviderBase","pOptions","pServiceHash","fable","options","serviceType","UUID","concat","Math","floor","random","Hash","pFable","FableServiceProviderBase","isFable","getUUID","log","servicesMap","services","CoreServiceProviderBase"],"mappings":"AAAA,aAEA,SAASA,gBAAgBC,EAAUC,GAAe,KAAMD,aAAoBC,GAAgB,MAAM,IAAIC,UAAU,oCAAwC,CACxJ,SAASC,kBAAkBC,EAAQC,GAAS,IAAK,IAAIC,EAAI,EAAGA,EAAID,EAAME,OAAQD,IAAK,CAAE,IAAIE,EAAaH,EAAMC,GAAIE,EAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,UAAWF,IAAYA,EAAWG,UAAW,GAAMC,OAAOC,eAAeT,EAAQU,eAAeN,EAAWO,KAAMP,EAAa,CAAE,CAC5U,SAASQ,aAAaf,EAAagB,EAAYC,GAAyN,OAAtMD,GAAYd,kBAAkBF,EAAYkB,UAAWF,GAAiBC,GAAaf,kBAAkBF,EAAaiB,GAAcN,OAAOC,eAAeZ,EAAa,YAAa,CAAEU,UAAU,IAAiBV,CAAa,CAC5R,SAASmB,gBAAgBC,EAAKN,EAAKO,GAA4L,OAAnLP,EAAMD,eAAeC,MAAiBM,EAAOT,OAAOC,eAAeQ,EAAKN,EAAK,CAAEO,MAAOA,EAAOb,YAAY,EAAMC,cAAc,EAAMC,UAAU,IAAkBU,EAAIN,GAAOO,EAAgBD,CAAK,CAC3O,SAASP,eAAeS,GAAO,IAAIR,EAAMS,aAAaD,EAAK,UAAW,MAAwB,WAAjBE,QAAQV,GAAoBA,EAAMW,OAAOX,EAAM,CAC5H,SAASS,aAAaG,EAAOC,GAAQ,GAAuB,WAAnBH,QAAQE,IAAiC,OAAVA,EAAgB,OAAOA,EAAO,IAAIE,EAAOF,EAAMG,OAAOC,aAAc,QAAaC,IAATH,EAAoB,CAAE,IAAII,EAAMJ,EAAKK,KAAKP,EAAOC,GAAQ,WAAY,GAAqB,WAAjBH,QAAQQ,GAAmB,OAAOA,EAAK,MAAM,IAAI/B,UAAU,+CAAiD,CAAE,OAAiB,WAAT0B,EAAoBF,OAASS,QAAQR,EAAQ,CAC5X,SAASF,QAAQJ,GAAkC,OAAOI,QAAU,mBAAqBK,QAAU,iBAAmBA,OAAOM,SAAW,SAAUf,GAAO,cAAcA,CAAK,EAAI,SAAUA,GAAO,OAAOA,GAAO,mBAAqBS,QAAUT,EAAIgB,cAAgBP,QAAUT,IAAQS,OAAOX,UAAY,gBAAkBE,CAAK,EAAGI,QAAQJ,EAAM,ECR/U,SAAAiB,GAAA,GAAA,YAAA,oBAAAC,QAAA,YAAAd,QAAAc,WAAA,oBAAAC,OAAAA,OAAAD,QAAAD,SAAA,GAAA,mBAAAG,QAAAA,OAAAC,IAAAD,OAAA,GAAAH,OAAA,EAAA,oBAAAK,OAAAA,OAAA,oBAAAC,OAAAA,OAAA,oBAAAC,KAAAA,KAAAC,MAAAC,yBAAAT,GAAA,CAAA,CAAA,EAAA,WAAA,OAAA,SAAAU,EAAAC,EAAAC,EAAAC,GAAA,SAAAC,EAAA9C,EAAAgC,GAAA,IAAAY,EAAA5C,GAAA,CAAA,IAAA2C,EAAA3C,GAAA,CAAA,IAAA+C,EAAA,mBAAAC,SAAAA,QAAA,IAAAhB,GAAAe,EAAA,OAAAA,EAAA/C,GAAA,GAAA,GAAAiD,EAAA,OAAAA,EAAAjD,GAAA,GAAA,IAAAkD,EAAA,IAAAC,MAAA,uBAAAnD,EAAA,KAAA,MAAAkD,EAAAE,KAAA,mBAAAF,CAAA,CAAA,IAAAG,EAAAT,EAAA5C,GAAA,CAAAiC,QAAA,CAAA,GAAAU,EAAA3C,GAAA,GAAA4B,KAAAyB,EAAApB,SAAA,SAAAS,GAAA,OAAAI,EAAAH,EAAA3C,GAAA,GAAA0C,IAAAA,EAAA,GAAAW,EAAAA,EAAApB,QAAAS,EAAAC,EAAAC,EAAAC,EAAA,CAAA,OAAAD,EAAA5C,GAAAiC,OAAA,CAAA,IAAA,IAAAgB,EAAA,mBAAAD,SAAAA,QAAAhD,EAAA,EAAAA,EAAA6C,EAAA5C,OAAAD,IAAA8C,EAAAD,EAAA7C,IAAA,OAAA8C,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,SAAAE,EAAAd,EAAAD,GCAA,IASAqB,EAAA,WAEA,SAAAA,EAAAC,EAAAC,GACA/D,gBAAA+C,KAAAc,GACAd,KAAAiB,OAAA,EAEAjB,KAAAkB,QAAA,WAAAvC,QAAAoC,GAAAA,EAAA,CAAA,EAEAf,KAAAmB,YAAA,UAGAnB,KAAAoB,KAAA,WAAAC,OAAAC,KAAAC,MAAA,MAAAD,KAAAE,SAAA,MAEAxB,KAAAyB,KAAA,iBAAAT,EAAAA,EAAA,GAAAK,OAAArB,KAAAoB,KACA,CAWA,OAXAlD,aAAA4C,EAAA,CAAA,CAAA7C,IAAA,eAAAO,MAMA,SAAAkD,GAIA,OAFA1B,KAAAiB,MAAAS,GAEA,CACA,KAAAZ,CAAA,CAzBA,GAyBAxC,gBAzBAwC,EAAA,kBAiBA,GAWApB,EAAAD,QAAAqB,CFGA,EAAE,CAAC,GAAG,EAAE,CAAC,SAASN,EAAQd,EAAOD,GGxCjC,IAKAkC,EAAAzD,cAEA,SAAAyD,EAAAD,EAAAX,EAAAC,GACA/D,gBAAA+C,KAAA2B,GACA3B,KAAAiB,MAAAS,EAEA1B,KAAAkB,QAAA,WAAAvC,QAAAoC,GAAAA,EACA,WAAApC,QAAA+C,IAAAA,EAAAE,QACA,CAAA,EADAF,EAGA1B,KAAAmB,YAAA,UAEA,mBAAAO,EAAAG,QAEA7B,KAAAoB,KAAAM,EAAAG,UAIA7B,KAAAoB,KAAA,cAAAC,OAAAC,KAAAC,MAAA,MAAAD,KAAAE,SAAA,MAGAxB,KAAAyB,KAAA,iBAAAT,EAAAA,EAAA,GAAAK,OAAArB,KAAAoB,MAGApB,KAAA8B,IAAA9B,KAAAiB,MAAAa,IACA9B,KAAA+B,YAAA/B,KAAAiB,MAAAc,YACA/B,KAAAgC,SAAAhC,KAAAiB,MAAAe,QACA,IAAA1D,gBA3BAqD,EAAA,kBA6BA,GAGAjC,EAAAD,QAAAkC,EAEAjC,EAAAD,QAAAwC,wBAAAzB,EAAA,yCH0CA,EAAE,CAAC,yCAAyC,KAAK,CAAC,EAAE,CAAC,GCjFrD,CDiFyD,EACzD","file":"fable-serviceproviderbase.compatible.min.js","sourcesContent":["(function(f){if(typeof exports===\"object\"&&typeof module!==\"undefined\"){module.exports=f()}else if(typeof define===\"function\"&&define.amd){define([],f)}else{var g;if(typeof window!==\"undefined\"){g=window}else if(typeof global!==\"undefined\"){g=global}else if(typeof self!==\"undefined\"){g=self}else{g=this}g.FableServiceproviderbase = f()}})(function(){var define,module,exports;return (function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c=\"function\"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error(\"Cannot find module '\"+i+\"'\");throw a.code=\"MODULE_NOT_FOUND\",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u=\"function\"==typeof require&&require,i=0;i<t.length;i++)o(t[i]);return o}return r})()({1:[function(require,module,exports){\n/**\n* Fable Core Pre-initialization Service Base\n*\n* For a couple services, we need to be able to instantiate them before the Fable object is fully initialized.\n* This is a base class for those services.\n*\n* @author <steven@velozo.com>\n*/\n\nclass FableCoreServiceProviderBase\n{\n\tconstructor(pOptions, pServiceHash)\n\t{\n\t\tthis.fable = false;\n\n\t\tthis.options = (typeof(pOptions) === 'object') ? pOptions : {};\n\n\t\tthis.serviceType = 'Unknown';\n\n\t\t// The hash will be a non-standard UUID ... the UUID service uses this base class!\n\t\tthis.UUID = `CORESVC-${Math.floor((Math.random() * (99999 - 10000)) + 10000)}`;\n\n\t\tthis.Hash = (typeof(pServiceHash) === 'string') ? pServiceHash : `${this.UUID}`;\n\t}\n\n\n\tstatic isFableService = true;\n\n\t// After fable is initialized, it would be expected to be wired in as a normal service.\n\tconnectFable(pFable)\n\t{\n\t\tthis.fable = pFable;\n\n\t\treturn true;\n\t}\n}\n\nmodule.exports = FableCoreServiceProviderBase;\n\n},{}],2:[function(require,module,exports){\n/**\n* Fable Service Base\n* @author <steven@velozo.com>\n*/\n\nclass FableServiceProviderBase\n{\n\tconstructor(pFable, pOptions, pServiceHash)\n\t{\n\t\tthis.fable = pFable;\n\n\t\tthis.options = (typeof(pOptions) === 'object') ? pOptions\n\t\t\t\t\t\t: ((typeof(pFable) === 'object') && !pFable.isFable) ? pFable\n\t\t\t\t\t\t: {};\n\n\t\tthis.serviceType = 'Unknown';\n\n\t\tif (typeof(pFable.getUUID) == 'function')\n\t\t{\n\t\t\tthis.UUID = pFable.getUUID();\n\t\t}\n\t\telse\n\t\t{\n\t\t\tthis.UUID = `NoFABLESVC-${Math.floor((Math.random() * (99999 - 10000)) + 10000)}`\n\t\t}\n\n\t\tthis.Hash = (typeof(pServiceHash) === 'string') ? pServiceHash : `${this.UUID}`;\n\n\t\t// Pull back a few things\n\t\tthis.log = this.fable.log;\n\t\tthis.servicesMap = this.fable.servicesMap;\n\t\tthis.services = this.fable.services;\n\t}\n\n\tstatic isFableService = true;\n}\n\nmodule.exports = FableServiceProviderBase;\n\nmodule.exports.CoreServiceProviderBase = require('./Fable-ServiceProviderBase-Preinit.js');\n},{\"./Fable-ServiceProviderBase-Preinit.js\":1}]},{},[2])(2)\n});\n\n","(function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c=\"function\"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error(\"Cannot find module '\"+i+\"'\");throw a.code=\"MODULE_NOT_FOUND\",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u=\"function\"==typeof require&&require,i=0;i<t.length;i++)o(t[i]);return o}return r})()","/**\n* Fable Core Pre-initialization Service Base\n*\n* For a couple services, we need to be able to instantiate them before the Fable object is fully initialized.\n* This is a base class for those services.\n*\n* @author <steven@velozo.com>\n*/\n\nclass FableCoreServiceProviderBase\n{\n\tconstructor(pOptions, pServiceHash)\n\t{\n\t\tthis.fable = false;\n\n\t\tthis.options = (typeof(pOptions) === 'object') ? pOptions : {};\n\n\t\tthis.serviceType = 'Unknown';\n\n\t\t// The hash will be a non-standard UUID ... the UUID service uses this base class!\n\t\tthis.UUID = `CORESVC-${Math.floor((Math.random() * (99999 - 10000)) + 10000)}`;\n\n\t\tthis.Hash = (typeof(pServiceHash) === 'string') ? pServiceHash : `${this.UUID}`;\n\t}\n\n\n\tstatic isFableService = true;\n\n\t// After fable is initialized, it would be expected to be wired in as a normal service.\n\tconnectFable(pFable)\n\t{\n\t\tthis.fable = pFable;\n\n\t\treturn true;\n\t}\n}\n\nmodule.exports = FableCoreServiceProviderBase;\n","/**\n* Fable Service Base\n* @author <steven@velozo.com>\n*/\n\nclass FableServiceProviderBase\n{\n\tconstructor(pFable, pOptions, pServiceHash)\n\t{\n\t\tthis.fable = pFable;\n\n\t\tthis.options = (typeof(pOptions) === 'object') ? pOptions\n\t\t\t\t\t\t: ((typeof(pFable) === 'object') && !pFable.isFable) ? pFable\n\t\t\t\t\t\t: {};\n\n\t\tthis.serviceType = 'Unknown';\n\n\t\tif (typeof(pFable.getUUID) == 'function')\n\t\t{\n\t\t\tthis.UUID = pFable.getUUID();\n\t\t}\n\t\telse\n\t\t{\n\t\t\tthis.UUID = `NoFABLESVC-${Math.floor((Math.random() * (99999 - 10000)) + 10000)}`\n\t\t}\n\n\t\tthis.Hash = (typeof(pServiceHash) === 'string') ? pServiceHash : `${this.UUID}`;\n\n\t\t// Pull back a few things\n\t\tthis.log = this.fable.log;\n\t\tthis.servicesMap = this.fable.servicesMap;\n\t\tthis.services = this.fable.services;\n\t}\n\n\tstatic isFableService = true;\n}\n\nmodule.exports = FableServiceProviderBase;\n\nmodule.exports.CoreServiceProviderBase = require('./Fable-ServiceProviderBase-Preinit.js');"]}
|
|
1
|
+
{"version":3,"sources":["fable-serviceproviderbase.compatible.min.js","node_modules/browser-pack/_prelude.js","source/Fable-ServiceProviderBase.js"],"names":["_classCallCheck","instance","Constructor","TypeError","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","_toPropertyKey","key","_createClass","protoProps","staticProps","prototype","_defineProperty","obj","value","arg","_toPrimitive","_typeof","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","Number","o","iterator","constructor","f","exports","module","define","amd","window","global","self","this","FableServiceproviderbase","r","e","n","t","c","require","u","a","Error","code","p","FableServiceProviderBase","pFable","pOptions","pServiceHash","isFable","connectFable","fable","UUID","getUUID","options","concat","Math","floor","random","serviceType","Hash","tmpErrorMessage","console","log","Logging","services","servicesMap","CoreServiceProviderBase"],"mappings":"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","file":"fable-serviceproviderbase.compatible.min.js","sourcesContent":["(function(f){if(typeof exports===\"object\"&&typeof module!==\"undefined\"){module.exports=f()}else if(typeof define===\"function\"&&define.amd){define([],f)}else{var g;if(typeof window!==\"undefined\"){g=window}else if(typeof global!==\"undefined\"){g=global}else if(typeof self!==\"undefined\"){g=self}else{g=this}g.FableServiceproviderbase = f()}})(function(){var define,module,exports;return (function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c=\"function\"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error(\"Cannot find module '\"+i+\"'\");throw a.code=\"MODULE_NOT_FOUND\",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u=\"function\"==typeof require&&require,i=0;i<t.length;i++)o(t[i]);return o}return r})()({1:[function(require,module,exports){\n/**\n* Fable Service Base\n* @author <steven@velozo.com>\n*/\n\nclass FableServiceProviderBase\n{\n\t// The constructor can be used in two ways:\n\t// 1) With a fable, options object and service hash (the options object and service hash are optional)\n\t// 2) With an object or nothing as the first parameter, where it will be treated as the options object\n\tconstructor(pFable, pOptions, pServiceHash)\n\t{\n\t\t// Check if a fable was passed in; connect it if so\n\t\tif ((typeof(pFable) === 'object') && pFable.isFable)\n\t\t{\n\t\t\tthis.connectFable(pFable);\n\t\t}\n\t\telse\n\t\t{\n\t\t\tthis.fable = false;\n\t\t}\n\n\t\t// initialize options and UUID based on whether the fable was passed in or not.\n\t\tif (this.fable)\n\t\t{\n\t\t\tthis.UUID = pFable.getUUID();\n\t\t\tthis.options = (typeof(pOptions) === 'object') ? pOptions\n\t\t\t\t\t\t\t: {};\n\t\t}\n\t\telse\n\t\t{\n\t\t\t// With no fable, check to see if there was an object passed into either of the first two\n\t\t\t// Parameters, and if so, treat it as the options object\n\t\t\tthis.options = ((typeof(pFable) === 'object') && !pFable.isFable) ? pFable\n\t\t\t\t\t\t\t: (typeof(pOptions) === 'object') ? pOptions\n\t\t\t\t\t\t\t: {};\n\t\t\tthis.UUID = `CORE-SVC-${Math.floor((Math.random() * (99999 - 10000)) + 10000)}`\n\t\t}\n\n\t\t// It's expected that the deriving class will set this\n\t\tthis.serviceType = `Unknown-${this.UUID}`;\n\n\t\t// The service hash is used to identify the specific instantiation of the service in the services map\n\t\tthis.Hash = (typeof(pServiceHash) === 'string') ? pServiceHash \n\t\t\t\t\t: (!this.fable && (typeof(pOptions) === 'string')) ? pOptions\n\t\t\t\t\t: `${this.UUID}`;\n\t}\n\n\tconnectFable(pFable)\n\t{\n\t\tif ((typeof(pFable) !== 'object') || (!pFable.isFable))\n\t\t{\n\t\t\tlet tmpErrorMessage = `Fable Service Provider Base: Cannot connect to Fable, invalid Fable object passed in. The pFable parameter was a [${typeof(pFable)}].}`;\n\t\t\tconsole.log(tmpErrorMessage);\n\t\t\treturn new Error(tmpErrorMessage);\n\t\t}\n\n\t\tif (!this.fable)\n\t\t{\n\t\t\tthis.fable = pFable;\n\t\t}\n\n\t\tif (!this.log)\n\t\t{\n\t\t\tthis.log = this.fable.Logging;\n\t\t}\n\t\tif (!this.services)\n\t\t{\n\t\t\tthis.services = this.fable.services;\n\t\t}\n\n\t\tif (!this.servicesMap)\n\t\t{\n\t\t\tthis.servicesMap = this.fable.servicesMap;\n\t\t}\n\n\t\treturn true;\n\t}\n\n\tstatic isFableService = true;\n}\n\nmodule.exports = FableServiceProviderBase;\n\n// This is left here in case we want to go back to having different code/base class for \"core\" services\nmodule.exports.CoreServiceProviderBase = FableServiceProviderBase;\n},{}]},{},[1])(1)\n});\n\n","(function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c=\"function\"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error(\"Cannot find module '\"+i+\"'\");throw a.code=\"MODULE_NOT_FOUND\",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u=\"function\"==typeof require&&require,i=0;i<t.length;i++)o(t[i]);return o}return r})()","/**\n* Fable Service Base\n* @author <steven@velozo.com>\n*/\n\nclass FableServiceProviderBase\n{\n\t// The constructor can be used in two ways:\n\t// 1) With a fable, options object and service hash (the options object and service hash are optional)\n\t// 2) With an object or nothing as the first parameter, where it will be treated as the options object\n\tconstructor(pFable, pOptions, pServiceHash)\n\t{\n\t\t// Check if a fable was passed in; connect it if so\n\t\tif ((typeof(pFable) === 'object') && pFable.isFable)\n\t\t{\n\t\t\tthis.connectFable(pFable);\n\t\t}\n\t\telse\n\t\t{\n\t\t\tthis.fable = false;\n\t\t}\n\n\t\t// initialize options and UUID based on whether the fable was passed in or not.\n\t\tif (this.fable)\n\t\t{\n\t\t\tthis.UUID = pFable.getUUID();\n\t\t\tthis.options = (typeof(pOptions) === 'object') ? pOptions\n\t\t\t\t\t\t\t: {};\n\t\t}\n\t\telse\n\t\t{\n\t\t\t// With no fable, check to see if there was an object passed into either of the first two\n\t\t\t// Parameters, and if so, treat it as the options object\n\t\t\tthis.options = ((typeof(pFable) === 'object') && !pFable.isFable) ? pFable\n\t\t\t\t\t\t\t: (typeof(pOptions) === 'object') ? pOptions\n\t\t\t\t\t\t\t: {};\n\t\t\tthis.UUID = `CORE-SVC-${Math.floor((Math.random() * (99999 - 10000)) + 10000)}`\n\t\t}\n\n\t\t// It's expected that the deriving class will set this\n\t\tthis.serviceType = `Unknown-${this.UUID}`;\n\n\t\t// The service hash is used to identify the specific instantiation of the service in the services map\n\t\tthis.Hash = (typeof(pServiceHash) === 'string') ? pServiceHash \n\t\t\t\t\t: (!this.fable && (typeof(pOptions) === 'string')) ? pOptions\n\t\t\t\t\t: `${this.UUID}`;\n\t}\n\n\tconnectFable(pFable)\n\t{\n\t\tif ((typeof(pFable) !== 'object') || (!pFable.isFable))\n\t\t{\n\t\t\tlet tmpErrorMessage = `Fable Service Provider Base: Cannot connect to Fable, invalid Fable object passed in. The pFable parameter was a [${typeof(pFable)}].}`;\n\t\t\tconsole.log(tmpErrorMessage);\n\t\t\treturn new Error(tmpErrorMessage);\n\t\t}\n\n\t\tif (!this.fable)\n\t\t{\n\t\t\tthis.fable = pFable;\n\t\t}\n\n\t\tif (!this.log)\n\t\t{\n\t\t\tthis.log = this.fable.Logging;\n\t\t}\n\t\tif (!this.services)\n\t\t{\n\t\t\tthis.services = this.fable.services;\n\t\t}\n\n\t\tif (!this.servicesMap)\n\t\t{\n\t\t\tthis.servicesMap = this.fable.servicesMap;\n\t\t}\n\n\t\treturn true;\n\t}\n\n\tstatic isFableService = true;\n}\n\nmodule.exports = FableServiceProviderBase;\n\n// This is left here in case we want to go back to having different code/base class for \"core\" services\nmodule.exports.CoreServiceProviderBase = FableServiceProviderBase;"]}
|
|
@@ -50,63 +50,66 @@ function _toPrimitive(input, hint) { if (typeof input !== "object" || input ===
|
|
|
50
50
|
return r;
|
|
51
51
|
}()({
|
|
52
52
|
1: [function (require, module, exports) {
|
|
53
|
-
/**
|
|
54
|
-
* Fable Core Pre-initialization Service Base
|
|
55
|
-
*
|
|
56
|
-
* For a couple services, we need to be able to instantiate them before the Fable object is fully initialized.
|
|
57
|
-
* This is a base class for those services.
|
|
58
|
-
*
|
|
59
|
-
* @author <steven@velozo.com>
|
|
60
|
-
*/
|
|
61
|
-
|
|
62
|
-
class FableCoreServiceProviderBase {
|
|
63
|
-
constructor(pOptions, pServiceHash) {
|
|
64
|
-
this.fable = false;
|
|
65
|
-
this.options = typeof pOptions === 'object' ? pOptions : {};
|
|
66
|
-
this.serviceType = 'Unknown';
|
|
67
|
-
|
|
68
|
-
// The hash will be a non-standard UUID ... the UUID service uses this base class!
|
|
69
|
-
this.UUID = "CORESVC-".concat(Math.floor(Math.random() * (99999 - 10000) + 10000));
|
|
70
|
-
this.Hash = typeof pServiceHash === 'string' ? pServiceHash : "".concat(this.UUID);
|
|
71
|
-
}
|
|
72
|
-
// After fable is initialized, it would be expected to be wired in as a normal service.
|
|
73
|
-
connectFable(pFable) {
|
|
74
|
-
this.fable = pFable;
|
|
75
|
-
return true;
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
_defineProperty(FableCoreServiceProviderBase, "isFableService", true);
|
|
79
|
-
module.exports = FableCoreServiceProviderBase;
|
|
80
|
-
}, {}],
|
|
81
|
-
2: [function (require, module, exports) {
|
|
82
53
|
/**
|
|
83
54
|
* Fable Service Base
|
|
84
55
|
* @author <steven@velozo.com>
|
|
85
56
|
*/
|
|
86
57
|
|
|
87
58
|
class FableServiceProviderBase {
|
|
59
|
+
// The constructor can be used in two ways:
|
|
60
|
+
// 1) With a fable, options object and service hash (the options object and service hash are optional)
|
|
61
|
+
// 2) With an object or nothing as the first parameter, where it will be treated as the options object
|
|
88
62
|
constructor(pFable, pOptions, pServiceHash) {
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
63
|
+
// Check if a fable was passed in; connect it if so
|
|
64
|
+
if (typeof pFable === 'object' && pFable.isFable) {
|
|
65
|
+
this.connectFable(pFable);
|
|
66
|
+
} else {
|
|
67
|
+
this.fable = false;
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
// initialize options and UUID based on whether the fable was passed in or not.
|
|
71
|
+
if (this.fable) {
|
|
93
72
|
this.UUID = pFable.getUUID();
|
|
73
|
+
this.options = typeof pOptions === 'object' ? pOptions : {};
|
|
94
74
|
} else {
|
|
95
|
-
|
|
75
|
+
// With no fable, check to see if there was an object passed into either of the first two
|
|
76
|
+
// Parameters, and if so, treat it as the options object
|
|
77
|
+
this.options = typeof pFable === 'object' && !pFable.isFable ? pFable : typeof pOptions === 'object' ? pOptions : {};
|
|
78
|
+
this.UUID = "CORE-SVC-".concat(Math.floor(Math.random() * (99999 - 10000) + 10000));
|
|
96
79
|
}
|
|
97
|
-
this.Hash = typeof pServiceHash === 'string' ? pServiceHash : "".concat(this.UUID);
|
|
98
80
|
|
|
99
|
-
//
|
|
100
|
-
this.
|
|
101
|
-
|
|
102
|
-
|
|
81
|
+
// It's expected that the deriving class will set this
|
|
82
|
+
this.serviceType = "Unknown-".concat(this.UUID);
|
|
83
|
+
|
|
84
|
+
// The service hash is used to identify the specific instantiation of the service in the services map
|
|
85
|
+
this.Hash = typeof pServiceHash === 'string' ? pServiceHash : !this.fable && typeof pOptions === 'string' ? pOptions : "".concat(this.UUID);
|
|
86
|
+
}
|
|
87
|
+
connectFable(pFable) {
|
|
88
|
+
if (typeof pFable !== 'object' || !pFable.isFable) {
|
|
89
|
+
let tmpErrorMessage = "Fable Service Provider Base: Cannot connect to Fable, invalid Fable object passed in. The pFable parameter was a [".concat(typeof pFable, "].}");
|
|
90
|
+
console.log(tmpErrorMessage);
|
|
91
|
+
return new Error(tmpErrorMessage);
|
|
92
|
+
}
|
|
93
|
+
if (!this.fable) {
|
|
94
|
+
this.fable = pFable;
|
|
95
|
+
}
|
|
96
|
+
if (!this.log) {
|
|
97
|
+
this.log = this.fable.Logging;
|
|
98
|
+
}
|
|
99
|
+
if (!this.services) {
|
|
100
|
+
this.services = this.fable.services;
|
|
101
|
+
}
|
|
102
|
+
if (!this.servicesMap) {
|
|
103
|
+
this.servicesMap = this.fable.servicesMap;
|
|
104
|
+
}
|
|
105
|
+
return true;
|
|
103
106
|
}
|
|
104
107
|
}
|
|
105
108
|
_defineProperty(FableServiceProviderBase, "isFableService", true);
|
|
106
109
|
module.exports = FableServiceProviderBase;
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
}]
|
|
111
|
-
}, {}, [
|
|
110
|
+
|
|
111
|
+
// This is left here in case we want to go back to having different code/base class for "core" services
|
|
112
|
+
module.exports.CoreServiceProviderBase = FableServiceProviderBase;
|
|
113
|
+
}, {}]
|
|
114
|
+
}, {}, [1])(1);
|
|
112
115
|
});
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";function _defineProperty(e,t,
|
|
1
|
+
"use strict";function _defineProperty(e,t,i){return(t=_toPropertyKey(t))in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function _toPropertyKey(e){var t=_toPrimitive(e,"string");return"symbol"==typeof t?t:String(t)}function _toPrimitive(e,t){if("object"!=typeof e||null===e)return e;var i=e[Symbol.toPrimitive];if(void 0!==i){var r=i.call(e,t||"default");if("object"!=typeof r)return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}!function(e){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{("undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this).FableServiceproviderbase=e()}}((function(){return function e(t,i,r){function o(s,f){if(!i[s]){if(!t[s]){var a="function"==typeof require&&require;if(!f&&a)return a(s,!0);if(n)return n(s,!0);var c=new Error("Cannot find module '"+s+"'");throw c.code="MODULE_NOT_FOUND",c}var l=i[s]={exports:{}};t[s][0].call(l.exports,(function(e){return o(t[s][1][e]||e)}),l,l.exports,e,t,i,r)}return i[s].exports}for(var n="function"==typeof require&&require,s=0;s<r.length;s++)o(r[s]);return o}({1:[function(e,t,i){class r{constructor(e,t,i){"object"==typeof e&&e.isFable?this.connectFable(e):this.fable=!1,this.fable?(this.UUID=e.getUUID(),this.options="object"==typeof t?t:{}):(this.options="object"!=typeof e||e.isFable?"object"==typeof t?t:{}:e,this.UUID="CORE-SVC-".concat(Math.floor(89999*Math.random()+1e4))),this.serviceType="Unknown-".concat(this.UUID),this.Hash="string"==typeof i?i:this.fable||"string"!=typeof t?"".concat(this.UUID):t}connectFable(e){if("object"!=typeof e||!e.isFable){let t="Fable Service Provider Base: Cannot connect to Fable, invalid Fable object passed in. The pFable parameter was a [".concat(typeof e,"].}");return console.log(t),new Error(t)}return this.fable||(this.fable=e),this.log||(this.log=this.fable.Logging),this.services||(this.services=this.fable.services),this.servicesMap||(this.servicesMap=this.fable.servicesMap),!0}}_defineProperty(r,"isFableService",!0),t.exports=r,t.exports.CoreServiceProviderBase=r},{}]},{},[1])(1)}));
|
|
2
2
|
//# sourceMappingURL=fable-serviceproviderbase.min.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["fable-serviceproviderbase.min.js","node_modules/browser-pack/_prelude.js","source/Fable-ServiceProviderBase
|
|
1
|
+
{"version":3,"sources":["fable-serviceproviderbase.min.js","node_modules/browser-pack/_prelude.js","source/Fable-ServiceProviderBase.js"],"names":["_defineProperty","obj","key","value","_toPropertyKey","Object","defineProperty","enumerable","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","TypeError","Number","f","exports","module","define","amd","window","global","self","this","FableServiceproviderbase","r","e","n","t","o","i","c","require","u","a","Error","code","p","length","FableServiceProviderBase","constructor","pFable","pOptions","pServiceHash","isFable","connectFable","fable","UUID","getUUID","options","concat","Math","floor","random","serviceType","Hash","tmpErrorMessage","console","log","Logging","services","servicesMap","CoreServiceProviderBase"],"mappings":"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","file":"fable-serviceproviderbase.min.js","sourcesContent":["(function(f){if(typeof exports===\"object\"&&typeof module!==\"undefined\"){module.exports=f()}else if(typeof define===\"function\"&&define.amd){define([],f)}else{var g;if(typeof window!==\"undefined\"){g=window}else if(typeof global!==\"undefined\"){g=global}else if(typeof self!==\"undefined\"){g=self}else{g=this}g.FableServiceproviderbase = f()}})(function(){var define,module,exports;return (function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c=\"function\"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error(\"Cannot find module '\"+i+\"'\");throw a.code=\"MODULE_NOT_FOUND\",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u=\"function\"==typeof require&&require,i=0;i<t.length;i++)o(t[i]);return o}return r})()({1:[function(require,module,exports){\n/**\n* Fable Service Base\n* @author <steven@velozo.com>\n*/\n\nclass FableServiceProviderBase\n{\n\t// The constructor can be used in two ways:\n\t// 1) With a fable, options object and service hash (the options object and service hash are optional)\n\t// 2) With an object or nothing as the first parameter, where it will be treated as the options object\n\tconstructor(pFable, pOptions, pServiceHash)\n\t{\n\t\t// Check if a fable was passed in; connect it if so\n\t\tif ((typeof(pFable) === 'object') && pFable.isFable)\n\t\t{\n\t\t\tthis.connectFable(pFable);\n\t\t}\n\t\telse\n\t\t{\n\t\t\tthis.fable = false;\n\t\t}\n\n\t\t// initialize options and UUID based on whether the fable was passed in or not.\n\t\tif (this.fable)\n\t\t{\n\t\t\tthis.UUID = pFable.getUUID();\n\t\t\tthis.options = (typeof(pOptions) === 'object') ? pOptions\n\t\t\t\t\t\t\t: {};\n\t\t}\n\t\telse\n\t\t{\n\t\t\t// With no fable, check to see if there was an object passed into either of the first two\n\t\t\t// Parameters, and if so, treat it as the options object\n\t\t\tthis.options = ((typeof(pFable) === 'object') && !pFable.isFable) ? pFable\n\t\t\t\t\t\t\t: (typeof(pOptions) === 'object') ? pOptions\n\t\t\t\t\t\t\t: {};\n\t\t\tthis.UUID = `CORE-SVC-${Math.floor((Math.random() * (99999 - 10000)) + 10000)}`\n\t\t}\n\n\t\t// It's expected that the deriving class will set this\n\t\tthis.serviceType = `Unknown-${this.UUID}`;\n\n\t\t// The service hash is used to identify the specific instantiation of the service in the services map\n\t\tthis.Hash = (typeof(pServiceHash) === 'string') ? pServiceHash \n\t\t\t\t\t: (!this.fable && (typeof(pOptions) === 'string')) ? pOptions\n\t\t\t\t\t: `${this.UUID}`;\n\t}\n\n\tconnectFable(pFable)\n\t{\n\t\tif ((typeof(pFable) !== 'object') || (!pFable.isFable))\n\t\t{\n\t\t\tlet tmpErrorMessage = `Fable Service Provider Base: Cannot connect to Fable, invalid Fable object passed in. The pFable parameter was a [${typeof(pFable)}].}`;\n\t\t\tconsole.log(tmpErrorMessage);\n\t\t\treturn new Error(tmpErrorMessage);\n\t\t}\n\n\t\tif (!this.fable)\n\t\t{\n\t\t\tthis.fable = pFable;\n\t\t}\n\n\t\tif (!this.log)\n\t\t{\n\t\t\tthis.log = this.fable.Logging;\n\t\t}\n\t\tif (!this.services)\n\t\t{\n\t\t\tthis.services = this.fable.services;\n\t\t}\n\n\t\tif (!this.servicesMap)\n\t\t{\n\t\t\tthis.servicesMap = this.fable.servicesMap;\n\t\t}\n\n\t\treturn true;\n\t}\n\n\tstatic isFableService = true;\n}\n\nmodule.exports = FableServiceProviderBase;\n\n// This is left here in case we want to go back to having different code/base class for \"core\" services\nmodule.exports.CoreServiceProviderBase = FableServiceProviderBase;\n},{}]},{},[1])(1)\n});\n\n","(function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c=\"function\"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error(\"Cannot find module '\"+i+\"'\");throw a.code=\"MODULE_NOT_FOUND\",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u=\"function\"==typeof require&&require,i=0;i<t.length;i++)o(t[i]);return o}return r})()","/**\n* Fable Service Base\n* @author <steven@velozo.com>\n*/\n\nclass FableServiceProviderBase\n{\n\t// The constructor can be used in two ways:\n\t// 1) With a fable, options object and service hash (the options object and service hash are optional)\n\t// 2) With an object or nothing as the first parameter, where it will be treated as the options object\n\tconstructor(pFable, pOptions, pServiceHash)\n\t{\n\t\t// Check if a fable was passed in; connect it if so\n\t\tif ((typeof(pFable) === 'object') && pFable.isFable)\n\t\t{\n\t\t\tthis.connectFable(pFable);\n\t\t}\n\t\telse\n\t\t{\n\t\t\tthis.fable = false;\n\t\t}\n\n\t\t// initialize options and UUID based on whether the fable was passed in or not.\n\t\tif (this.fable)\n\t\t{\n\t\t\tthis.UUID = pFable.getUUID();\n\t\t\tthis.options = (typeof(pOptions) === 'object') ? pOptions\n\t\t\t\t\t\t\t: {};\n\t\t}\n\t\telse\n\t\t{\n\t\t\t// With no fable, check to see if there was an object passed into either of the first two\n\t\t\t// Parameters, and if so, treat it as the options object\n\t\t\tthis.options = ((typeof(pFable) === 'object') && !pFable.isFable) ? pFable\n\t\t\t\t\t\t\t: (typeof(pOptions) === 'object') ? pOptions\n\t\t\t\t\t\t\t: {};\n\t\t\tthis.UUID = `CORE-SVC-${Math.floor((Math.random() * (99999 - 10000)) + 10000)}`\n\t\t}\n\n\t\t// It's expected that the deriving class will set this\n\t\tthis.serviceType = `Unknown-${this.UUID}`;\n\n\t\t// The service hash is used to identify the specific instantiation of the service in the services map\n\t\tthis.Hash = (typeof(pServiceHash) === 'string') ? pServiceHash \n\t\t\t\t\t: (!this.fable && (typeof(pOptions) === 'string')) ? pOptions\n\t\t\t\t\t: `${this.UUID}`;\n\t}\n\n\tconnectFable(pFable)\n\t{\n\t\tif ((typeof(pFable) !== 'object') || (!pFable.isFable))\n\t\t{\n\t\t\tlet tmpErrorMessage = `Fable Service Provider Base: Cannot connect to Fable, invalid Fable object passed in. The pFable parameter was a [${typeof(pFable)}].}`;\n\t\t\tconsole.log(tmpErrorMessage);\n\t\t\treturn new Error(tmpErrorMessage);\n\t\t}\n\n\t\tif (!this.fable)\n\t\t{\n\t\t\tthis.fable = pFable;\n\t\t}\n\n\t\tif (!this.log)\n\t\t{\n\t\t\tthis.log = this.fable.Logging;\n\t\t}\n\t\tif (!this.services)\n\t\t{\n\t\t\tthis.services = this.fable.services;\n\t\t}\n\n\t\tif (!this.servicesMap)\n\t\t{\n\t\t\tthis.servicesMap = this.fable.servicesMap;\n\t\t}\n\n\t\treturn true;\n\t}\n\n\tstatic isFableService = true;\n}\n\nmodule.exports = FableServiceProviderBase;\n\n// This is left here in case we want to go back to having different code/base class for \"core\" services\nmodule.exports.CoreServiceProviderBase = FableServiceProviderBase;"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "fable-serviceproviderbase",
|
|
3
|
-
"version": "3.0.
|
|
3
|
+
"version": "3.0.12",
|
|
4
4
|
"description": "Simple base classes for fable services.",
|
|
5
5
|
"main": "source/Fable-ServiceProviderBase.js",
|
|
6
6
|
"scripts": {
|
|
@@ -41,9 +41,7 @@
|
|
|
41
41
|
},
|
|
42
42
|
"homepage": "https://github.com/stevenvelozo/fable-serviceproviderbase",
|
|
43
43
|
"devDependencies": {
|
|
44
|
-
"fable": "^3.0.
|
|
45
|
-
|
|
46
|
-
"dependencies": {
|
|
47
|
-
"quackage": "^1.0.14"
|
|
44
|
+
"fable": "^3.0.86",
|
|
45
|
+
"quackage": "^1.0.19"
|
|
48
46
|
}
|
|
49
47
|
}
|
|
@@ -5,31 +5,76 @@
|
|
|
5
5
|
|
|
6
6
|
class FableServiceProviderBase
|
|
7
7
|
{
|
|
8
|
+
// The constructor can be used in two ways:
|
|
9
|
+
// 1) With a fable, options object and service hash (the options object and service hash are optional)
|
|
10
|
+
// 2) With an object or nothing as the first parameter, where it will be treated as the options object
|
|
8
11
|
constructor(pFable, pOptions, pServiceHash)
|
|
9
12
|
{
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
13
|
+
// Check if a fable was passed in; connect it if so
|
|
14
|
+
if ((typeof(pFable) === 'object') && pFable.isFable)
|
|
15
|
+
{
|
|
16
|
+
this.connectFable(pFable);
|
|
17
|
+
}
|
|
18
|
+
else
|
|
19
|
+
{
|
|
20
|
+
this.fable = false;
|
|
21
|
+
}
|
|
17
22
|
|
|
18
|
-
|
|
23
|
+
// initialize options and UUID based on whether the fable was passed in or not.
|
|
24
|
+
if (this.fable)
|
|
19
25
|
{
|
|
20
26
|
this.UUID = pFable.getUUID();
|
|
27
|
+
this.options = (typeof(pOptions) === 'object') ? pOptions
|
|
28
|
+
: {};
|
|
21
29
|
}
|
|
22
30
|
else
|
|
23
31
|
{
|
|
24
|
-
|
|
32
|
+
// With no fable, check to see if there was an object passed into either of the first two
|
|
33
|
+
// Parameters, and if so, treat it as the options object
|
|
34
|
+
this.options = ((typeof(pFable) === 'object') && !pFable.isFable) ? pFable
|
|
35
|
+
: (typeof(pOptions) === 'object') ? pOptions
|
|
36
|
+
: {};
|
|
37
|
+
this.UUID = `CORE-SVC-${Math.floor((Math.random() * (99999 - 10000)) + 10000)}`
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
// It's expected that the deriving class will set this
|
|
41
|
+
this.serviceType = `Unknown-${this.UUID}`;
|
|
42
|
+
|
|
43
|
+
// The service hash is used to identify the specific instantiation of the service in the services map
|
|
44
|
+
this.Hash = (typeof(pServiceHash) === 'string') ? pServiceHash
|
|
45
|
+
: (!this.fable && (typeof(pOptions) === 'string')) ? pOptions
|
|
46
|
+
: `${this.UUID}`;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
connectFable(pFable)
|
|
50
|
+
{
|
|
51
|
+
if ((typeof(pFable) !== 'object') || (!pFable.isFable))
|
|
52
|
+
{
|
|
53
|
+
let tmpErrorMessage = `Fable Service Provider Base: Cannot connect to Fable, invalid Fable object passed in. The pFable parameter was a [${typeof(pFable)}].}`;
|
|
54
|
+
console.log(tmpErrorMessage);
|
|
55
|
+
return new Error(tmpErrorMessage);
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
if (!this.fable)
|
|
59
|
+
{
|
|
60
|
+
this.fable = pFable;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
if (!this.log)
|
|
64
|
+
{
|
|
65
|
+
this.log = this.fable.Logging;
|
|
66
|
+
}
|
|
67
|
+
if (!this.services)
|
|
68
|
+
{
|
|
69
|
+
this.services = this.fable.services;
|
|
25
70
|
}
|
|
26
71
|
|
|
27
|
-
|
|
72
|
+
if (!this.servicesMap)
|
|
73
|
+
{
|
|
74
|
+
this.servicesMap = this.fable.servicesMap;
|
|
75
|
+
}
|
|
28
76
|
|
|
29
|
-
|
|
30
|
-
this.log = this.fable.log;
|
|
31
|
-
this.servicesMap = this.fable.servicesMap;
|
|
32
|
-
this.services = this.fable.services;
|
|
77
|
+
return true;
|
|
33
78
|
}
|
|
34
79
|
|
|
35
80
|
static isFableService = true;
|
|
@@ -37,4 +82,5 @@ class FableServiceProviderBase
|
|
|
37
82
|
|
|
38
83
|
module.exports = FableServiceProviderBase;
|
|
39
84
|
|
|
40
|
-
|
|
85
|
+
// This is left here in case we want to go back to having different code/base class for "core" services
|
|
86
|
+
module.exports.CoreServiceProviderBase = FableServiceProviderBase;
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Fable Core Pre-initialization Service Base
|
|
3
|
-
*
|
|
4
|
-
* For a couple services, we need to be able to instantiate them before the Fable object is fully initialized.
|
|
5
|
-
* This is a base class for those services.
|
|
6
|
-
*
|
|
7
|
-
* @author <steven@velozo.com>
|
|
8
|
-
*/
|
|
9
|
-
|
|
10
|
-
class FableCoreServiceProviderBase
|
|
11
|
-
{
|
|
12
|
-
constructor(pOptions, pServiceHash)
|
|
13
|
-
{
|
|
14
|
-
this.fable = false;
|
|
15
|
-
|
|
16
|
-
this.options = (typeof(pOptions) === 'object') ? pOptions : {};
|
|
17
|
-
|
|
18
|
-
this.serviceType = 'Unknown';
|
|
19
|
-
|
|
20
|
-
// The hash will be a non-standard UUID ... the UUID service uses this base class!
|
|
21
|
-
this.UUID = `CORESVC-${Math.floor((Math.random() * (99999 - 10000)) + 10000)}`;
|
|
22
|
-
|
|
23
|
-
this.Hash = (typeof(pServiceHash) === 'string') ? pServiceHash : `${this.UUID}`;
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
static isFableService = true;
|
|
28
|
-
|
|
29
|
-
// After fable is initialized, it would be expected to be wired in as a normal service.
|
|
30
|
-
connectFable(pFable)
|
|
31
|
-
{
|
|
32
|
-
this.fable = pFable;
|
|
33
|
-
|
|
34
|
-
return true;
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
module.exports = FableCoreServiceProviderBase;
|