{"classData":[{"comment":"/**\n * @class Neo.data.connection.WebSocket\n * @extends Neo.core.Base\n */","meta":{"filename":"WebSocket.mjs","lineno":5,"columnno":0,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/data/connection","code":{}},"kind":"class","name":"WebSocket","augments":["Neo.core.Base"],"memberof":"Neo.data.connection","longname":"Neo.data.connection.WebSocket","scope":"static","$longname":"Neo.data.connection.WebSocket","$kind":"class","id":1390,"neoClassName":"Neo.data.connection.WebSocket"},{"comment":"/**\n     * @member {String|null} channel=null\n     */","meta":{"filename":"WebSocket.mjs","lineno":13,"columnno":4,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/data/connection","code":{}},"kind":"member","name":"channel","type":{"names":["String","null"]},"defaultvalue":null,"longname":"channel","scope":"global","$longname":"channel","$kind":"property","id":1391,"neoClassName":"Neo.data.connection.WebSocket"},{"comment":"/**\n     * @member {Number} maxReconnectAttempts=5\n     */","meta":{"filename":"WebSocket.mjs","lineno":17,"columnno":4,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/data/connection","code":{}},"kind":"member","name":"maxReconnectAttempts","type":{"names":["Number"]},"defaultvalue":5,"longname":"maxReconnectAttempts","scope":"global","$longname":"maxReconnectAttempts","$kind":"property","id":1392,"neoClassName":"Neo.data.connection.WebSocket"},{"comment":"/**\n     * @member {Object} messageCallbacks={}\n     */","meta":{"filename":"WebSocket.mjs","lineno":21,"columnno":4,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/data/connection","code":{}},"kind":"member","name":"messageCallbacks","type":{"names":["Object"]},"defaultvalue":"{}","longname":"messageCallbacks","scope":"global","$longname":"messageCallbacks","$kind":"property","id":1393,"neoClassName":"Neo.data.connection.WebSocket"},{"comment":"/**\n     * @member {Number} messageId=1\n     * @protected\n     */","meta":{"filename":"WebSocket.mjs","lineno":26,"columnno":4,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/data/connection","code":{}},"kind":"member","name":"messageId","type":{"names":["Number"]},"defaultvalue":1,"access":"protected","longname":"messageId","scope":"global","$longname":"messageId","$kind":"property","id":1394,"neoClassName":"Neo.data.connection.WebSocket"},{"comment":"/**\n     * @member {Number} reconnectAttempts=0\n     * @protected\n     */","meta":{"filename":"WebSocket.mjs","lineno":31,"columnno":4,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/data/connection","code":{}},"kind":"member","name":"reconnectAttempts","type":{"names":["Number"]},"defaultvalue":0,"access":"protected","longname":"reconnectAttempts","scope":"global","$longname":"reconnectAttempts","$kind":"property","id":1395,"neoClassName":"Neo.data.connection.WebSocket"},{"comment":"/**\n     * @member {String|null} serverAddress=null\n     */","meta":{"filename":"WebSocket.mjs","lineno":35,"columnno":4,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/data/connection","code":{}},"kind":"member","name":"serverAddress","type":{"names":["String","null"]},"defaultvalue":null,"longname":"serverAddress","scope":"global","$longname":"serverAddress","$kind":"property","id":1396,"neoClassName":"Neo.data.connection.WebSocket"},{"comment":"/**\n         * True automatically applies the core.Observable mixin\n         * @member {Boolean} observable=true\n         * @static\n         */","meta":{"filename":"WebSocket.mjs","lineno":43,"columnno":8,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/data/connection","code":{}},"description":"True automatically applies the core.Observable mixin","kind":"member","name":"observable","type":{"names":["Boolean"]},"defaultvalue":true,"scope":"static","longname":"observable","$longname":"observable","$kind":"property","id":1397,"neoClassName":"Neo.data.connection.WebSocket"},{"comment":"/**\n         * @member {String} className='Neo.data.connection.WebSocket'\n         * @protected\n         */","meta":{"filename":"WebSocket.mjs","lineno":51,"columnno":8,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/data/connection","code":{}},"kind":"member","name":"className","type":{"names":["String"]},"defaultvalue":"'Neo.data.connection.WebSocket'","access":"protected","longname":"className","scope":"global","$longname":"className","$kind":"property","id":1398,"neoClassName":"Neo.data.connection.WebSocket"},{"comment":"/**\n         * @member {String} ntype='socket-connection'\n         * @protected\n         */","meta":{"filename":"WebSocket.mjs","lineno":56,"columnno":8,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/data/connection","code":{}},"kind":"member","name":"ntype","type":{"names":["String"]},"defaultvalue":"'socket-connection'","access":"protected","longname":"ntype","scope":"global","$longname":"ntype","$kind":"property","id":1399,"neoClassName":"Neo.data.connection.WebSocket"},{"comment":"/**\n         * @member {WebSocket|null} socket_=null\n         * @protected\n         */","meta":{"filename":"WebSocket.mjs","lineno":61,"columnno":8,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/data/connection","code":{}},"kind":"member","name":"socket_","type":{"names":["WebSocket","null"]},"defaultvalue":null,"access":"protected","longname":"socket_","scope":"global","$longname":"socket_","$kind":"property","id":1400,"neoClassName":"Neo.data.connection.WebSocket"},{"comment":"/**\n     * @param {Object} config\n     */","meta":{"range":[1527,1614],"filename":"WebSocket.mjs","lineno":67,"columnno":4,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/data/connection","code":{"id":"astnode100047353","name":"Socket#construct","type":"MethodDefinition","paramnames":["config"]},"vars":{"":null}},"params":[{"type":{"names":["Object"]},"name":"config"}],"name":"construct","longname":"Socket#construct","kind":"function","memberof":"Socket","scope":"instance","$longname":"Socket#construct","$kind":"method","id":1401,"neoClassName":"Neo.data.connection.WebSocket"},{"comment":"/**\n     * @param {Function} callback\n     * @param {Object} scope\n     */","meta":{"range":[1699,2049],"filename":"WebSocket.mjs","lineno":76,"columnno":4,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/data/connection","code":{"id":"astnode100047369","name":"Socket#attemptReconnect","type":"MethodDefinition","paramnames":["callback","scope"]},"vars":{"":null}},"params":[{"type":{"names":["function"]},"name":"callback"},{"type":{"names":["Object"]},"name":"scope"}],"name":"attemptReconnect","longname":"Socket#attemptReconnect","kind":"function","memberof":"Socket","scope":"instance","$longname":"Socket#attemptReconnect","$kind":"method","id":1402,"neoClassName":"Neo.data.connection.WebSocket"},{"comment":"/**\n     * Intercepts the WebSocket send calls\n     * @param {Object} data\n     * @returns {String}\n     */","meta":{"range":[2167,2423],"filename":"WebSocket.mjs","lineno":97,"columnno":4,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/data/connection","code":{"id":"astnode100047415","name":"Socket#beforeSend","type":"MethodDefinition","paramnames":["data"]},"vars":{"":null}},"description":"Intercepts the WebSocket send calls","params":[{"type":{"names":["Object"]},"name":"data"}],"returns":[{"type":{"names":["String"]}}],"name":"beforeSend","longname":"Socket#beforeSend","kind":"function","memberof":"Socket","scope":"instance","$longname":"Socket#beforeSend","$kind":"method","id":1403,"neoClassName":"Neo.data.connection.WebSocket"},{"comment":"/**\n     * Triggered before the socket config gets changed.\n     * @param {WebSocket|null} value\n     * @param {WebSocket|null} oldValue\n     * @returns {WebSocket|null}\n     * @protected\n     */","meta":{"range":[2629,3079],"filename":"WebSocket.mjs","lineno":113,"columnno":4,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/data/connection","code":{"id":"astnode100047456","name":"Socket#beforeSetSocket","type":"MethodDefinition","paramnames":["value","oldValue"]},"vars":{"":null}},"description":"Triggered before the socket config gets changed.","params":[{"type":{"names":["WebSocket","null"]},"name":"value"},{"type":{"names":["WebSocket","null"]},"name":"oldValue"}],"returns":[{"type":{"names":["WebSocket","null"]}}],"access":"protected","name":"beforeSetSocket","longname":"Socket#beforeSetSocket","kind":"function","memberof":"Socket","scope":"instance","$longname":"Socket#beforeSetSocket","$kind":"method","id":1404,"neoClassName":"Neo.data.connection.WebSocket"},{"comment":"/**\n     * @param {Number} [code] defaults to 1000\n     * @param {String} [reason]\n     */","meta":{"range":[3180,3248],"filename":"WebSocket.mjs","lineno":134,"columnno":4,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/data/connection","code":{"id":"astnode100047521","name":"Socket#close","type":"MethodDefinition","paramnames":["code","reason"]},"vars":{"":null}},"params":[{"type":{"names":["Number"]},"optional":true,"description":"defaults to 1000","name":"code"},{"type":{"names":["String"]},"optional":true,"name":"reason"}],"name":"close","longname":"Socket#close","kind":"function","memberof":"Socket","scope":"instance","$longname":"Socket#close","$kind":"method","id":1405,"neoClassName":"Neo.data.connection.WebSocket"},{"comment":"/**\n     *\n     */","meta":{"range":[3277,3356],"filename":"WebSocket.mjs","lineno":141,"columnno":4,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/data/connection","code":{"id":"astnode100047536","name":"Socket#createSocket","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"name":"createSocket","longname":"Socket#createSocket","kind":"function","memberof":"Socket","scope":"instance","params":[],"$longname":"Socket#createSocket","$kind":"method","id":1406,"neoClassName":"Neo.data.connection.WebSocket"},{"comment":"/**\n     *\n     */","meta":{"range":[3385,3463],"filename":"WebSocket.mjs","lineno":148,"columnno":4,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/data/connection","code":{"id":"astnode100047550","name":"Socket#destroy","type":"MethodDefinition","paramnames":["args"]},"vars":{"":null}},"name":"destroy","longname":"Socket#destroy","kind":"function","memberof":"Socket","scope":"instance","params":[],"$longname":"Socket#destroy","$kind":"method","id":1407,"neoClassName":"Neo.data.connection.WebSocket"},{"comment":"/**\n     * @param {CloseEvent} event The Websocket generated CloseEvent\n     * @param {Number}     event.code The WebSocket connection close code provided by the server\n     *\n     *        Code        Name                  Description\n     *        0-999                             Reserved and not used.\n     *        1000        CLOSE_NORMAL          Normal closure; the connection successfully completed whatever purpose for which it was created.\n     *        1001        CLOSE_GOING_AWAY      The endpoint is going away, either because of a server failure or because the browser is navigating away from the page that opened the connection.\n     *        1002        CLOSE_PROTOCOL_ERROR  The endpoint is terminating the connection due to a protocol error.\n     *        1003        CLOSE_UNSUPPORTED     The connection is being terminated because the endpoint received data of a type it cannot accept (for example, a text-only endpoint received binary data).\n     *        1004        CLOSE_TOO_LARGE       The endpoint is terminating the connection because a data frame was received that is too large.\n     *        1005        CLOSE_NO_STATUS       Reserved.  Indicates that no status code was provided even though one was expected.\n     *        1006        CLOSE_ABNORMAL        Reserved. Used to indicate that a connection was closed abnormally (that is, with no close frame being sent) when a status code is expected.\n     *        1007-1999                         Reserved for future use by the WebSocket standard.\n     *        2000-2999                         Reserved for use by WebSocket extensions.\n     *        3000-3999                         Available for use by libraries and frameworks. May not be used by applications.\n     *        4000-4999                         Available for use by applications.\n     *\n     * @param {String}     reason A string indicating the reason the server closed the connection. This is specific to the particular server and sub-protocol.\n     * @param {Boolean}    wasClean Indicates whether or not the connection was cleanly closed.\n     */","meta":{"range":[5574,5671],"filename":"WebSocket.mjs","lineno":174,"columnno":4,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/data/connection","code":{"id":"astnode100047568","name":"Socket#onClose","type":"MethodDefinition","paramnames":["event","reason","wasClean"]},"vars":{"":null}},"params":[{"type":{"names":["CloseEvent"]},"description":"The Websocket generated CloseEvent","name":"event"},{"type":{"names":["Number"]},"description":"The WebSocket connection close code provided by the server<br /><br />       Code        Name                  Description<br />       0-999                             Reserved and not used.<br />       1000        CLOSE_NORMAL          Normal closure; the connection successfully completed whatever purpose for which it was created.<br />       1001        CLOSE_GOING_AWAY      The endpoint is going away, either because of a server failure or because the browser is navigating away from the page that opened the connection.<br />       1002        CLOSE_PROTOCOL_ERROR  The endpoint is terminating the connection due to a protocol error.<br />       1003        CLOSE_UNSUPPORTED     The connection is being terminated because the endpoint received data of a type it cannot accept (for example, a text-only endpoint received binary data).<br />       1004        CLOSE_TOO_LARGE       The endpoint is terminating the connection because a data frame was received that is too large.<br />       1005        CLOSE_NO_STATUS       Reserved.  Indicates that no status code was provided even though one was expected.<br />       1006        CLOSE_ABNORMAL        Reserved. Used to indicate that a connection was closed abnormally (that is, with no close frame being sent) when a status code is expected.<br />       1007-1999                         Reserved for future use by the WebSocket standard.<br />       2000-2999                         Reserved for use by WebSocket extensions.<br />       3000-3999                         Available for use by libraries and frameworks. May not be used by applications.<br />       4000-4999                         Available for use by applications.","name":"event.code"},{"type":{"names":["String"]},"description":"A string indicating the reason the server closed the connection. This is specific to the particular server and sub-protocol.","name":"reason"},{"type":{"names":["Boolean"]},"description":"Indicates whether or not the connection was cleanly closed.","name":"wasClean"}],"name":"onClose","longname":"Socket#onClose","kind":"function","memberof":"Socket","scope":"instance","$longname":"Socket#onClose","$kind":"method","id":1408,"neoClassName":"Neo.data.connection.WebSocket"},{"comment":"/**\n     *\n     */","meta":{"range":[5700,5760],"filename":"WebSocket.mjs","lineno":181,"columnno":4,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/data/connection","code":{"id":"astnode100047584","name":"Socket#onError","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"name":"onError","longname":"Socket#onError","kind":"function","memberof":"Socket","scope":"instance","params":[],"$longname":"Socket#onError","$kind":"method","id":1409,"neoClassName":"Neo.data.connection.WebSocket"},{"comment":"/**\n     * @param {MessageEvent} event\n     */","meta":{"range":[5817,6097],"filename":"WebSocket.mjs","lineno":188,"columnno":4,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/data/connection","code":{"id":"astnode100047595","name":"Socket#onMessage","type":"MethodDefinition","paramnames":["event"]},"vars":{"":null}},"params":[{"type":{"names":["MessageEvent"]},"name":"event"}],"name":"onMessage","longname":"Socket#onMessage","kind":"function","memberof":"Socket","scope":"instance","$longname":"Socket#onMessage","$kind":"method","id":1410,"neoClassName":"Neo.data.connection.WebSocket"},{"comment":"/**\n     *\n     */","meta":{"range":[6126,6184],"filename":"WebSocket.mjs","lineno":203,"columnno":4,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/data/connection","code":{"id":"astnode100047648","name":"Socket#onOpen","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"name":"onOpen","longname":"Socket#onOpen","kind":"function","memberof":"Socket","scope":"instance","params":[],"$longname":"Socket#onOpen","$kind":"method","id":1411,"neoClassName":"Neo.data.connection.WebSocket"},{"comment":"/**\n     * @param {Object} data\n     * @returns {Promise<any>}\n     */","meta":{"range":[6265,6530],"filename":"WebSocket.mjs","lineno":211,"columnno":4,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/data/connection","code":{"id":"astnode100047661","name":"Socket#promiseMessage","type":"MethodDefinition","paramnames":["data"]},"vars":{"":null}},"params":[{"type":{"names":["Object"]},"name":"data"}],"returns":[{"type":{"names":["Promise.<any>"]}}],"name":"promiseMessage","longname":"Socket#promiseMessage","kind":"function","memberof":"Socket","scope":"instance","$longname":"Socket#promiseMessage","$kind":"method","id":1412,"neoClassName":"Neo.data.connection.WebSocket"},{"comment":"/**\n     * @param {Object} data\n     */","meta":{"range":[6580,7569],"filename":"WebSocket.mjs","lineno":225,"columnno":4,"path":"/Users/Shared/github/neomjs/neomjs-realworld-example-app/node_modules/neo.mjs/src/data/connection","code":{"id":"astnode100047708","name":"Socket#sendMessage","type":"MethodDefinition","paramnames":["data"]},"vars":{"":null}},"params":[{"type":{"names":["Object"]},"name":"data"}],"name":"sendMessage","longname":"Socket#sendMessage","kind":"function","memberof":"Socket","scope":"instance","$longname":"Socket#sendMessage","$kind":"method","id":1413,"neoClassName":"Neo.data.connection.WebSocket"}]}