{"classData":[{"comment":"/**\n * @class Neo.worker.ServiceBase\n * @extends Neo.core.Base\n * @abstract\n */","meta":{"filename":"ServiceBase.mjs","lineno":5,"columnno":0,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/worker","code":{}},"kind":"class","name":"ServiceBase","augments":["Neo.core.Base"],"virtual":true,"memberof":"Neo.worker","longname":"Neo.worker.ServiceBase","scope":"static","$longname":"Neo.worker.ServiceBase","$kind":"class","id":3778,"neoClassName":"Neo.worker.ServiceBase"},{"comment":"/**\n     * @member {String} cacheName='neo-runtime'\n     */","meta":{"filename":"ServiceBase.mjs","lineno":14,"columnno":4,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/worker","code":{}},"kind":"member","name":"cacheName","type":{"names":["String"]},"defaultvalue":"'neo-runtime'","longname":"cacheName","scope":"global","$longname":"cacheName","$kind":"property","id":3779,"neoClassName":"Neo.worker.ServiceBase"},{"comment":"/**\n     * @member {String[]} cachePaths\n     */","meta":{"filename":"ServiceBase.mjs","lineno":18,"columnno":4,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/worker","code":{}},"kind":"member","name":"cachePaths","type":{"names":["Array.<String>"]},"longname":"cachePaths","scope":"global","$longname":"cachePaths","$kind":"property","id":3780,"neoClassName":"Neo.worker.ServiceBase"},{"comment":"/**\n     * @member {Object[]|null} channelPorts=null\n     * @protected\n     */","meta":{"filename":"ServiceBase.mjs","lineno":28,"columnno":4,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/worker","code":{}},"kind":"member","name":"channelPorts","type":{"names":["Array.<Object>","null"]},"defaultvalue":null,"access":"protected","longname":"channelPorts","scope":"global","$longname":"channelPorts","$kind":"property","id":3781,"neoClassName":"Neo.worker.ServiceBase"},{"comment":"/**\n     * @member {Client|null} lastClient=null\n     * @protected\n     */","meta":{"filename":"ServiceBase.mjs","lineno":33,"columnno":4,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/worker","code":{}},"kind":"member","name":"lastClient","type":{"names":["Client","null"]},"defaultvalue":null,"access":"protected","longname":"lastClient","scope":"global","$longname":"lastClient","$kind":"property","id":3782,"neoClassName":"Neo.worker.ServiceBase"},{"comment":"/**\n     * @member {Object[]} promises=[]\n     * @protected\n     */","meta":{"filename":"ServiceBase.mjs","lineno":38,"columnno":4,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/worker","code":{}},"kind":"member","name":"promises","type":{"names":["Array.<Object>"]},"defaultvalue":"[]","access":"protected","longname":"promises","scope":"global","$longname":"promises","$kind":"property","id":3783,"neoClassName":"Neo.worker.ServiceBase"},{"comment":"/**\n     * @member {String[]} remotes=[]\n     * @protected\n     */","meta":{"filename":"ServiceBase.mjs","lineno":43,"columnno":4,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/worker","code":{}},"kind":"member","name":"remotes","type":{"names":["Array.<String>"]},"defaultvalue":"[]","access":"protected","longname":"remotes","scope":"global","$longname":"remotes","$kind":"property","id":3784,"neoClassName":"Neo.worker.ServiceBase"},{"comment":"/**\n     * @member {String|null} workerId=null\n     * @protected\n     */","meta":{"filename":"ServiceBase.mjs","lineno":48,"columnno":4,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/worker","code":{}},"kind":"member","name":"workerId","type":{"names":["String","null"]},"defaultvalue":null,"access":"protected","longname":"workerId","scope":"global","$longname":"workerId","$kind":"property","id":3785,"neoClassName":"Neo.worker.ServiceBase"},{"comment":"/**\n         * @member {String} className='Neo.worker.ServiceBase'\n         * @protected\n         */","meta":{"filename":"ServiceBase.mjs","lineno":55,"columnno":8,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/worker","code":{}},"kind":"member","name":"className","type":{"names":["String"]},"defaultvalue":"'Neo.worker.ServiceBase'","access":"protected","longname":"className","scope":"global","$longname":"className","$kind":"property","id":3786,"neoClassName":"Neo.worker.ServiceBase"},{"comment":"/**\n         * @member {String[]|Neo.core.Base[]|null} mixins=[RemoteMethodAccess]\n         */","meta":{"filename":"ServiceBase.mjs","lineno":59,"columnno":8,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/worker","code":{}},"kind":"member","name":"mixins","type":{"names":["Array.<String>","Array.<Neo.core.Base>","null"]},"defaultvalue":"[RemoteMethodAccess]","longname":"mixins","scope":"global","$longname":"mixins","$kind":"property","id":3787,"neoClassName":"Neo.worker.ServiceBase"},{"comment":"/**\n         * Remote method access for other workers\n         * @member {Object} remote={app: [//...]}\n         * @protected\n         */","meta":{"filename":"ServiceBase.mjs","lineno":65,"columnno":8,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/worker","code":{}},"description":"Remote method access for other workers","kind":"member","name":"remote","type":{"names":["Object"]},"defaultvalue":"{app: [//...]}","access":"protected","longname":"remote","scope":"global","$longname":"remote","$kind":"property","id":3788,"neoClassName":"Neo.worker.ServiceBase"},{"comment":"/**\n     * @param {Object} config\n     */","meta":{"range":[1765,2219],"filename":"ServiceBase.mjs","lineno":78,"columnno":4,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/worker","code":{"id":"astnode100120722","name":"ServiceBase#construct","type":"MethodDefinition","paramnames":["config"]},"vars":{"":null}},"params":[{"type":{"names":["Object"]},"name":"config"}],"name":"construct","longname":"ServiceBase#construct","kind":"function","memberof":"ServiceBase","scope":"instance","$longname":"ServiceBase#construct","$kind":"method","id":3789,"neoClassName":"Neo.worker.ServiceBase"},{"comment":"/**\n     * @param {String} name=this.cacheName\n     * @returns {Object}\n     */","meta":{"range":[2309,2420],"filename":"ServiceBase.mjs","lineno":101,"columnno":4,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/worker","code":{"id":"astnode100120791","name":"ServiceBase#clearCache","type":"MethodDefinition","paramnames":["name"]},"vars":{"":null}},"params":[{"type":{"names":["String"]},"defaultvalue":"this.cacheName","name":"name"}],"returns":[{"type":{"names":["Object"]}}],"name":"clearCache","longname":"ServiceBase#clearCache","kind":"function","memberof":"ServiceBase","scope":"instance","async":true,"$longname":"ServiceBase#clearCache","$kind":"method","id":3790,"neoClassName":"Neo.worker.ServiceBase"},{"comment":"/**\n     * @returns {Object}\n     */","meta":{"range":[2467,2631],"filename":"ServiceBase.mjs","lineno":109,"columnno":4,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/worker","code":{"id":"astnode100120811","name":"ServiceBase#clearCaches","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"returns":[{"type":{"names":["Object"]}}],"name":"clearCaches","longname":"ServiceBase#clearCaches","kind":"function","memberof":"ServiceBase","scope":"instance","params":[],"async":true,"$longname":"ServiceBase#clearCaches","$kind":"method","id":3791,"neoClassName":"Neo.worker.ServiceBase"},{"comment":"/**\n     * @param {Client} client\n     */","meta":{"range":[2683,3120],"filename":"ServiceBase.mjs","lineno":118,"columnno":4,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/worker","code":{"id":"astnode100120844","name":"ServiceBase#createMessageChannel","type":"MethodDefinition","paramnames":["client"]},"vars":{"":null}},"params":[{"type":{"names":["Client"]},"name":"client"}],"name":"createMessageChannel","longname":"ServiceBase#createMessageChannel","kind":"function","memberof":"ServiceBase","scope":"instance","$longname":"ServiceBase#createMessageChannel","$kind":"method","id":3792,"neoClassName":"Neo.worker.ServiceBase"},{"comment":"/**\n     *\n     * @param {String} destination\n     * @param {String} clientId=this.lastClient.id\n     * @returns {MessagePort|null}\n     */","meta":{"range":[3270,3536],"filename":"ServiceBase.mjs","lineno":140,"columnno":4,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/worker","code":{"id":"astnode100120905","name":"ServiceBase#getPort","type":"MethodDefinition","paramnames":["destination","clientId"]},"vars":{"":null}},"params":[{"type":{"names":["String"]},"name":"destination"},{"type":{"names":["String"]},"defaultvalue":"this.lastClient.id","name":"clientId"}],"returns":[{"type":{"names":["MessagePort","null"]}}],"name":"getPort","longname":"ServiceBase#getPort","kind":"function","memberof":"ServiceBase","scope":"instance","$longname":"ServiceBase#getPort","$kind":"method","id":3793,"neoClassName":"Neo.worker.ServiceBase"},{"comment":"/**\n     * Ignore the call in case there is no connected client in place yet\n     */","meta":{"range":[3631,3882],"filename":"ServiceBase.mjs","lineno":153,"columnno":4,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/worker","code":{"id":"astnode100120940","name":"ServiceBase#initRemote","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Ignore the call in case there is no connected client in place yet","name":"initRemote","longname":"ServiceBase#initRemote","kind":"function","memberof":"ServiceBase","scope":"instance","params":[],"$longname":"ServiceBase#initRemote","$kind":"method","id":3794,"neoClassName":"Neo.worker.ServiceBase"},{"comment":"/**\n     * @param {ExtendableMessageEvent} event\n     */","meta":{"range":[3949,4016],"filename":"ServiceBase.mjs","lineno":166,"columnno":4,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/worker","code":{"id":"astnode100120976","name":"ServiceBase#onActivate","type":"MethodDefinition","paramnames":["event"]},"vars":{"":null}},"params":[{"type":{"names":["ExtendableMessageEvent"]},"name":"event"}],"name":"onActivate","longname":"ServiceBase#onActivate","kind":"function","memberof":"ServiceBase","scope":"instance","$longname":"ServiceBase#onActivate","$kind":"method","id":3795,"neoClassName":"Neo.worker.ServiceBase"},{"comment":"/**\n     * @param {Client} source\n     */","meta":{"range":[4068,4206],"filename":"ServiceBase.mjs","lineno":173,"columnno":4,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/worker","code":{"id":"astnode100120988","name":"ServiceBase#onConnect","type":"MethodDefinition","paramnames":["source"]},"vars":{"":null}},"params":[{"type":{"names":["Client"]},"name":"source"}],"name":"onConnect","longname":"ServiceBase#onConnect","kind":"function","memberof":"ServiceBase","scope":"instance","$longname":"ServiceBase#onConnect","$kind":"method","id":3796,"neoClassName":"Neo.worker.ServiceBase"},{"comment":"/**\n     * @param {ExtendableMessageEvent} event\n     */","meta":{"range":[4273,4914],"filename":"ServiceBase.mjs","lineno":183,"columnno":4,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/worker","code":{"id":"astnode100121011","name":"ServiceBase#onFetch","type":"MethodDefinition","paramnames":["event"]},"vars":{"":null}},"params":[{"type":{"names":["ExtendableMessageEvent"]},"name":"event"}],"name":"onFetch","longname":"ServiceBase#onFetch","kind":"function","memberof":"ServiceBase","scope":"instance","$longname":"ServiceBase#onFetch","$kind":"method","id":3797,"neoClassName":"Neo.worker.ServiceBase"},{"comment":"/**\n     * @param {ExtendableMessageEvent} event\n     */","meta":{"range":[4981,5080],"filename":"ServiceBase.mjs","lineno":208,"columnno":4,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/worker","code":{"id":"astnode100121100","name":"ServiceBase#onInstall","type":"MethodDefinition","paramnames":["event"]},"vars":{"":null}},"params":[{"type":{"names":["ExtendableMessageEvent"]},"name":"event"}],"name":"onInstall","longname":"ServiceBase#onInstall","kind":"function","memberof":"ServiceBase","scope":"instance","$longname":"ServiceBase#onInstall","$kind":"method","id":3798,"neoClassName":"Neo.worker.ServiceBase"},{"comment":"/**\n     * For a client based message we receive an ExtendableMessageEvent,\n     * for a MessageChannel based message a MessageEvent\n     * @param {ExtendableMessageEvent|MessageEvent} event\n     */","meta":{"range":[5289,5967],"filename":"ServiceBase.mjs","lineno":218,"columnno":4,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/worker","code":{"id":"astnode100121117","name":"ServiceBase#onMessage","type":"MethodDefinition","paramnames":["event"]},"vars":{"":null}},"description":"For a client based message we receive an ExtendableMessageEvent,<br />for a MessageChannel based message a MessageEvent","params":[{"type":{"names":["ExtendableMessageEvent","MessageEvent"]},"name":"event"}],"name":"onMessage","longname":"ServiceBase#onMessage","kind":"function","memberof":"ServiceBase","scope":"instance","$longname":"ServiceBase#onMessage","$kind":"method","id":3799,"neoClassName":"Neo.worker.ServiceBase"},{"comment":"/**\n     * @param {Object} msg\n     * @param {ExtendableMessageEvent} event\n     */","meta":{"range":[6061,6132],"filename":"ServiceBase.mjs","lineno":245,"columnno":4,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/worker","code":{"id":"astnode100121219","name":"ServiceBase#onPing","type":"MethodDefinition","paramnames":["msg","event"]},"vars":{"":null}},"params":[{"type":{"names":["Object"]},"name":"msg"},{"type":{"names":["ExtendableMessageEvent"]},"name":"event"}],"name":"onPing","longname":"ServiceBase#onPing","kind":"function","memberof":"ServiceBase","scope":"instance","$longname":"ServiceBase#onPing","$kind":"method","id":3800,"neoClassName":"Neo.worker.ServiceBase"},{"comment":"/**\n     * @param {Object} msg\n     * @param {ExtendableMessageEvent} event\n     */","meta":{"range":[6226,6388],"filename":"ServiceBase.mjs","lineno":253,"columnno":4,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/worker","code":{"id":"astnode100121234","name":"ServiceBase#onRegisterNeoConfig","type":"MethodDefinition","paramnames":["msg","event"]},"vars":{"":null}},"params":[{"type":{"names":["Object"]},"name":"msg"},{"type":{"names":["ExtendableMessageEvent"]},"name":"event"}],"name":"onRegisterNeoConfig","longname":"ServiceBase#onRegisterNeoConfig","kind":"function","memberof":"ServiceBase","scope":"instance","$longname":"ServiceBase#onRegisterNeoConfig","$kind":"method","id":3801,"neoClassName":"Neo.worker.ServiceBase"},{"comment":"/**\n     * @param {Object} msg\n     * @param {ExtendableMessageEvent} event\n     */","meta":{"range":[6482,6737],"filename":"ServiceBase.mjs","lineno":264,"columnno":4,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/worker","code":{"id":"astnode100121269","name":"ServiceBase#onUnregisterPort","type":"MethodDefinition","paramnames":["msg","event"]},"vars":{"":null}},"params":[{"type":{"names":["Object"]},"name":"msg"},{"type":{"names":["ExtendableMessageEvent"]},"name":"event"}],"name":"onUnregisterPort","longname":"ServiceBase#onUnregisterPort","kind":"function","memberof":"ServiceBase","scope":"instance","$longname":"ServiceBase#onUnregisterPort","$kind":"method","id":3802,"neoClassName":"Neo.worker.ServiceBase"},{"comment":"/**\n     * @param {Object} data\n     * @param {String} [data.cacheName=this.cacheName]\n     * @param {String[]|String} data.files\n     * @param {Boolean} [data.foreReload=false]\n     */","meta":{"range":[6933,7624],"filename":"ServiceBase.mjs","lineno":279,"columnno":4,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/worker","code":{"id":"astnode100121307","name":"ServiceBase#preloadAssets","type":"MethodDefinition","paramnames":["data"]},"vars":{"":null}},"params":[{"type":{"names":["Object"]},"name":"data"},{"type":{"names":["String"]},"optional":true,"defaultvalue":"this.cacheName","name":"data.cacheName"},{"type":{"names":["Array.<String>","String"]},"name":"data.files"},{"type":{"names":["Boolean"]},"optional":true,"defaultvalue":false,"name":"data.foreReload"}],"name":"preloadAssets","longname":"ServiceBase#preloadAssets","kind":"function","memberof":"ServiceBase","scope":"instance","async":true,"$longname":"ServiceBase#preloadAssets","$kind":"method","id":3803,"neoClassName":"Neo.worker.ServiceBase"},{"comment":"/**\n     * @param {String} dest app, data, main or vdom (excluding the current worker)\n     * @param {Object} opts configs for Neo.worker.Message\n     * @param {Array} [transfer] An optional array of Transferable objects to transfer ownership of.\n     * If the ownership of an object is transferred, it becomes unusable (neutered) in the context it was sent from\n     * and becomes available only to the worker it was sent to.\n     * @returns {Promise<any>}\n     */","meta":{"range":[8100,8390],"filename":"ServiceBase.mjs","lineno":316,"columnno":4,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/worker","code":{"id":"astnode100121413","name":"ServiceBase#promiseMessage","type":"MethodDefinition","paramnames":["dest","opts","transfer"]},"vars":{"":null}},"params":[{"type":{"names":["String"]},"description":"app, data, main or vdom (excluding the current worker)","name":"dest"},{"type":{"names":["Object"]},"description":"configs for Neo.worker.Message","name":"opts"},{"type":{"names":["Array"]},"optional":true,"description":"An optional array of Transferable objects to transfer ownership of.<br />If the ownership of an object is transferred, it becomes unusable (neutered) in the context it was sent from<br />and becomes available only to the worker it was sent to.","name":"transfer"}],"returns":[{"type":{"names":["Promise.<any>"]}}],"name":"promiseMessage","longname":"ServiceBase#promiseMessage","kind":"function","memberof":"ServiceBase","scope":"instance","$longname":"ServiceBase#promiseMessage","$kind":"method","id":3804,"neoClassName":"Neo.worker.ServiceBase"},{"comment":"/**\n     * You can either pass an url, an array of urls or an object with additional options\n     * See: https://developer.mozilla.org/en-US/docs/Web/API/Cache/delete\n     * @param {String|String[]|Object} data\n     * @param {String|String[]} data.assets\n     * @param {String} data.cacheName=this.cacheName\n     * @param {Object} data.options\n     * @param {Boolean} data.options.ignoreMethod=false\n     * @param {Boolean} data.options.ignoreSearch=false\n     * @param {Boolean} data.options.ignoreVary=false\n     * @returns {Object}\n     */","meta":{"range":[8943,9562],"filename":"ServiceBase.mjs","lineno":339,"columnno":4,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/worker","code":{"id":"astnode100121458","name":"ServiceBase#removeAssets","type":"MethodDefinition","paramnames":["data"]},"vars":{"":null}},"description":"You can either pass an url, an array of urls or an object with additional options<br />See: https://developer.mozilla.org/en-US/docs/Web/API/Cache/delete","params":[{"type":{"names":["String","Array.<String>","Object"]},"name":"data"},{"type":{"names":["String","Array.<String>"]},"name":"data.assets"},{"type":{"names":["String"]},"defaultvalue":"this.cacheName","name":"data.cacheName"},{"type":{"names":["Object"]},"name":"data.options"},{"type":{"names":["Boolean"]},"defaultvalue":false,"name":"data.options.ignoreMethod"},{"type":{"names":["Boolean"]},"defaultvalue":false,"name":"data.options.ignoreSearch"},{"type":{"names":["Boolean"]},"defaultvalue":false,"name":"data.options.ignoreVary"}],"returns":[{"type":{"names":["Object"]}}],"name":"removeAssets","longname":"ServiceBase#removeAssets","kind":"function","memberof":"ServiceBase","scope":"instance","async":true,"$longname":"ServiceBase#removeAssets","$kind":"method","id":3805,"neoClassName":"Neo.worker.ServiceBase"},{"comment":"/**\n     * @param {String} dest app, data, main or vdom (excluding the current worker)\n     * @param {Object} opts configs for Neo.worker.Message\n     * @param {Array} [transfer] An optional array of Transferable objects to transfer ownership of.\n     * If the ownership of an object is transferred, it becomes unusable (neutered) in the context it was sent from\n     * and becomes available only to the worker it was sent to.\n     * @returns {Neo.worker.Message}\n     * @protected\n     */","meta":{"range":[10062,10309],"filename":"ServiceBase.mjs","lineno":374,"columnno":4,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/worker","code":{"id":"astnode100121553","name":"ServiceBase#sendMessage","type":"MethodDefinition","paramnames":["dest","opts","transfer"]},"vars":{"":null}},"params":[{"type":{"names":["String"]},"description":"app, data, main or vdom (excluding the current worker)","name":"dest"},{"type":{"names":["Object"]},"description":"configs for Neo.worker.Message","name":"opts"},{"type":{"names":["Array"]},"optional":true,"description":"An optional array of Transferable objects to transfer ownership of.<br />If the ownership of an object is transferred, it becomes unusable (neutered) in the context it was sent from<br />and becomes available only to the worker it was sent to.","name":"transfer"}],"returns":[{"type":{"names":["Neo.worker.Message"]}}],"access":"protected","name":"sendMessage","longname":"ServiceBase#sendMessage","kind":"function","memberof":"ServiceBase","scope":"instance","$longname":"ServiceBase#sendMessage","$kind":"method","id":3806,"neoClassName":"Neo.worker.ServiceBase"}]}