@actorize/core
Advanced tools
| "use strict"; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| exports.createWorkerInterface = void 0; | ||
| const index_1 = require("../index"); | ||
| const createWorkerInterface = (worker) => { | ||
| const ni = index_1.createNetworkInterface(); | ||
| worker.onmessage = (e) => { | ||
| ni.sendLocal(e.data); | ||
| }; | ||
| ni.handleLocalIncomingMessages((msg) => { | ||
| worker.postMessage(msg); | ||
| }); | ||
| return ni; | ||
| }; | ||
| exports.createWorkerInterface = createWorkerInterface; | ||
| exports.default = {}; | ||
| //# sourceMappingURL=worker.js.map |
| {"version":3,"file":"worker.js","sourceRoot":"","sources":["../../../src/interfaces/worker.ts"],"names":[],"mappings":";;;AAAA,oCAAiD;AAE1C,MAAM,qBAAqB,GAAG,CAAC,MAAc,EAAE,EAAE;IACtD,MAAM,EAAE,GAAG,8BAAsB,EAAE,CAAA;IACnC,MAAM,CAAC,SAAS,GAAG,CAAC,CAAC,EAAE,EAAE;QACvB,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;IACtB,CAAC,CAAA;IACD,EAAE,CAAC,2BAA2B,CAAC,CAAC,GAAG,EAAE,EAAE;QACrC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;IACzB,CAAC,CAAC,CAAA;IACF,OAAO,EAAE,CAAA;AACX,CAAC,CAAA;AATY,QAAA,qBAAqB,yBASjC;AAED,kBAAe,EAAE,CAAA"} |
| "use strict"; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| exports.createRemoteStorageConsumer = exports.createRemoteStorageProvider = void 0; | ||
| const index_1 = require("../index"); | ||
| function randomstring() { | ||
| return Math.random().toString(36).substring(2, 15) + Math.random().toString(36).substring(2, 15); | ||
| } | ||
| const createDefaultStorage = () => { | ||
| const data = {}; | ||
| return { | ||
| set: async (key, value) => { | ||
| data[key] = value; | ||
| }, | ||
| get: async (key) => { | ||
| return data[key]; | ||
| }, | ||
| delete: async (key) => { | ||
| delete data[key]; | ||
| }, | ||
| }; | ||
| }; | ||
| function createRemoteStorageProvider(director, opts) { | ||
| const { actorName, storage = createDefaultStorage() } = opts; | ||
| const actor = director.registerActor(actorName); | ||
| const keysSubscribed = {}; | ||
| const localStore = { | ||
| set: async (key, value) => { | ||
| await storage.set(key, value); | ||
| if (!keysSubscribed[key]) { | ||
| return; | ||
| } | ||
| keysSubscribed[key].forEach((recp) => { | ||
| actor.sendMessage(recp, { | ||
| event: 'KEY_UPDATED', | ||
| key, | ||
| value, | ||
| }); | ||
| }); | ||
| }, | ||
| get: async (key) => { | ||
| const val = await storage.get(key); | ||
| return val; | ||
| }, | ||
| delete: async (key) => { | ||
| await storage.delete(key); | ||
| } | ||
| }; | ||
| actor.onMessage((msgs) => { | ||
| msgs.forEach(async (msg) => { | ||
| if (msg.payload.action === 'SUBSCRIBE_TO_KEYS') { | ||
| msg.payload.keys.forEach((key) => { | ||
| if (!keysSubscribed[key]) { | ||
| keysSubscribed[key] = []; | ||
| } | ||
| keysSubscribed[key].push(msg.sender); | ||
| }); | ||
| } | ||
| if (msg.payload.action === 'UNSUBSCRIBE_FROM_KEYS') { | ||
| msg.payload.keys.forEach((key) => { | ||
| if (!keysSubscribed[key]) { | ||
| return; | ||
| } | ||
| keysSubscribed[key] = keysSubscribed[key].filter((elem) => elem !== msg.sender); | ||
| }); | ||
| } | ||
| if (msg.payload.action === 'SET') { | ||
| localStore.set(msg.payload.key, msg.payload.value); | ||
| } | ||
| if (msg.payload.action === 'GET') { | ||
| const resp = await localStore.get(msg.payload.key); | ||
| actor.sendMessage(msg.sender, { | ||
| event: 'GET_RETURN', | ||
| value: resp, | ||
| }); | ||
| } | ||
| }); | ||
| }); | ||
| return localStore; | ||
| } | ||
| exports.createRemoteStorageProvider = createRemoteStorageProvider; | ||
| function createRemoteStorageConsumer(director, opts) { | ||
| const { storeLocation } = opts; | ||
| const actorName = randomstring(); | ||
| const actor = director.registerActor(actorName); | ||
| let onUpdate = (key, val) => { }; | ||
| const obj = { | ||
| onUpdate: (keys, cb) => { | ||
| onUpdate = cb; | ||
| actor.sendMessage(storeLocation, { | ||
| action: 'SUBSCRIBE_TO_KEYS', | ||
| keys, | ||
| }); | ||
| return () => { | ||
| actor.sendMessage(storeLocation, { | ||
| action: 'UNSUBSCRIBE_FROM_KEYS', | ||
| keys, | ||
| }); | ||
| }; | ||
| }, | ||
| get: async (key) => { | ||
| const resp = await index_1.dispatch(director, storeLocation, { | ||
| action: 'GET', | ||
| key, | ||
| }, true); | ||
| if (!resp) { | ||
| return null; | ||
| } | ||
| return resp.payload.value; | ||
| }, | ||
| set: async (key, value) => { | ||
| actor.sendMessage(storeLocation, { | ||
| action: 'SET', | ||
| key, | ||
| value, | ||
| }); | ||
| } | ||
| }; | ||
| actor.onMessage((msgs) => { | ||
| msgs.forEach((msg) => { | ||
| if (msg.payload.event === 'KEY_UPDATED') { | ||
| onUpdate(msg.payload.key, msg.payload.value); | ||
| } | ||
| }); | ||
| }); | ||
| return obj; | ||
| } | ||
| exports.createRemoteStorageConsumer = createRemoteStorageConsumer; | ||
| //# sourceMappingURL=index.js.map |
| {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/remote-store/index.ts"],"names":[],"mappings":"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"} |
| export declare const createWorkerInterface: (worker: Worker) => import("../index").NetworkInterface; | ||
| declare const _default: {}; | ||
| export default _default; |
| import { Director } from '../index'; | ||
| export interface RemoteStorageInterface { | ||
| set: (key: string, value: any) => Promise<void>; | ||
| get: (key: string) => Promise<any>; | ||
| delete: (key: string) => Promise<void>; | ||
| } | ||
| interface CreateStoreProviderOptions { | ||
| actorName: string; | ||
| storage?: RemoteStorageInterface; | ||
| } | ||
| export declare function createRemoteStorageProvider(director: Director, opts: CreateStoreProviderOptions): { | ||
| set: (key: string, value: any) => Promise<void>; | ||
| get: (key: string) => Promise<any>; | ||
| delete: (key: string) => Promise<void>; | ||
| }; | ||
| interface CreateStoreConsumerOptions { | ||
| storeLocation: string; | ||
| } | ||
| export declare function createRemoteStorageConsumer(director: Director, opts: CreateStoreConsumerOptions): { | ||
| onUpdate: (keys: string[], cb: (key: string, val: any) => void) => () => void; | ||
| get: (key: string) => Promise<any>; | ||
| set: (key: string, value: any) => Promise<void>; | ||
| }; | ||
| export {}; |
@@ -18,3 +18,4 @@ "use strict"; | ||
| }; | ||
| const found = routers.find(router => { | ||
| // just match the first one that returns true | ||
| routers.find(router => { | ||
| const success = router.handleIncomingMessage(networkmsg, store); | ||
@@ -21,0 +22,0 @@ return success; |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"director.js","sourceRoot":"","sources":["../../../src/actor/director.ts"],"names":[],"mappings":";;;AAAA,mCAAmD;AAanD,SAAS,qBAAqB,CAAC,KAA4B,EAAE,OAAwB;IACnF,MAAM,WAAW,GAAG,KAAK,EAAE,SAAoB,EAAE,OAA+B,EAAE,MAAc,EAAE,EAAE;QAClG,MAAM,cAAc,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QAC3C,MAAM,OAAO,GAAG,cAAc,CAAC,MAAM,KAAK,CAAC,CAAC;QAC5C,IAAI,CAAC,OAAO,EAAE;YACZ,MAAM,UAAU,GAAmB;gBACjC,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC;gBACzB,OAAO,EAAE;oBACP,SAAS,EAAE,cAAc,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC;oBACpD,OAAO;oBACP,MAAM;iBACP;aACF,CAAA;YACD,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;gBAClC,MAAM,OAAO,GAAG,MAAM,CAAC,qBAAqB,CAAC,UAAU,EAAE,KAAK,CAAC,CAAA;gBAC/D,OAAO,OAAO,CAAA;YAChB,CAAC,CAAC,CAAA;YACF,OAAM;SACP;QACD,OAAO,KAAK,CAAC,WAAW,CAAC,SAAS,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;IACtD,CAAC,CAAA;IACD,OAAO;QACL,GAAG,KAAK;QACR,WAAW;KACZ,CAAA;AACH,CAAC;AAED,SAAgB,cAAc,CAAC,OAA8B;IAC3D,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,EAAE,EAAE,GAAG,OAAO,CAAA;IACvC,MAAM,YAAY,GAAG,qBAAqB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;IAC1D,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;QACvB,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;YAC5B,CAAC,CAAC,gBAAgB,CAAC,CAAC,GAAmB,EAAE,EAAE;gBACzC,MAAM,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,CAAA;gBACxF,YAAY,CAAC,WAAW,CAAC,EAAE,EAAE,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;YACvE,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IACF,MAAM,WAAW,GAAG,0BAAkB,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAA;IAE/D,MAAM,aAAa,GAAG,CAAC,IAAe,EAAS,EAAE;QAC/C,MAAM,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,CAAA;QAC/B,OAAO,KAAK,CAAA;IACd,CAAC,CAAA;IACD,OAAO;QACL,aAAa;KACd,CAAA;AACH,CAAC;AApBD,wCAoBC"} | ||
| {"version":3,"file":"director.js","sourceRoot":"","sources":["../../../src/actor/director.ts"],"names":[],"mappings":";;;AAAA,mCAAmD;AAanD,SAAS,qBAAqB,CAAC,KAA4B,EAAE,OAAwB;IACnF,MAAM,WAAW,GAAG,KAAK,EAAE,SAAoB,EAAE,OAA+B,EAAE,MAAc,EAAE,EAAE;QAClG,MAAM,cAAc,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QAC3C,MAAM,OAAO,GAAG,cAAc,CAAC,MAAM,KAAK,CAAC,CAAC;QAC5C,IAAI,CAAC,OAAO,EAAE;YACZ,MAAM,UAAU,GAAmB;gBACjC,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC;gBACzB,OAAO,EAAE;oBACP,SAAS,EAAE,cAAc,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC;oBACpD,OAAO;oBACP,MAAM;iBACP;aACF,CAAA;YACD,6CAA6C;YAC7C,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;gBACpB,MAAM,OAAO,GAAG,MAAM,CAAC,qBAAqB,CAAC,UAAU,EAAE,KAAK,CAAC,CAAA;gBAC/D,OAAO,OAAO,CAAA;YAChB,CAAC,CAAC,CAAA;YACF,OAAM;SACP;QACD,OAAO,KAAK,CAAC,WAAW,CAAC,SAAS,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;IACtD,CAAC,CAAA;IACD,OAAO;QACL,GAAG,KAAK;QACR,WAAW;KACZ,CAAA;AACH,CAAC;AAED,SAAgB,cAAc,CAAC,OAA8B;IAC3D,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,EAAE,EAAE,GAAG,OAAO,CAAA;IACvC,MAAM,YAAY,GAAG,qBAAqB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;IAC1D,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;QACvB,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;YAC5B,CAAC,CAAC,gBAAgB,CAAC,CAAC,GAAmB,EAAE,EAAE;gBACzC,MAAM,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,CAAA;gBACxF,YAAY,CAAC,WAAW,CAAC,EAAE,EAAE,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;YACvE,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IACF,MAAM,WAAW,GAAG,0BAAkB,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAA;IAE/D,MAAM,aAAa,GAAG,CAAC,IAAe,EAAS,EAAE;QAC/C,MAAM,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,CAAA;QAC/B,OAAO,KAAK,CAAA;IACd,CAAC,CAAA;IACD,OAAO;QACL,aAAa;KACd,CAAA;AACH,CAAC;AApBD,wCAoBC"} |
@@ -29,3 +29,2 @@ "use strict"; | ||
| const subscribe = (recipient, callback) => { | ||
| let timeout = -1; | ||
| const cb = async () => { | ||
@@ -36,8 +35,5 @@ const msgs = await popMessages(recipient); | ||
| } | ||
| // timeout = setTimeout(cb, 50) | ||
| }; | ||
| callbacks[recipient] = cb; | ||
| // timeout = setTimeout(cb, 50) | ||
| return () => { | ||
| // self.clearTimeout(timeout) | ||
| delete callbacks[recipient]; | ||
@@ -44,0 +40,0 @@ }; |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"store.js","sourceRoot":"","sources":["../../../src/actor/store.ts"],"names":[],"mappings":";;;AAmBA,SAAgB,WAAW;IACzB,IAAI,QAAQ,GAAc,EAAE,CAAA;IAC5B,MAAM,SAAS,GAAwB,EAAE,CAAA;IAGzC,MAAM,WAAW,GAAG,KAAK,EAAE,SAAoB,EAAE,WAAW,GAAG,KAAK,EAAE,EAAE;QACtE,MAAM,gBAAgB,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;YAC3C,OAAO,CAAC,CAAC,SAAS,KAAK,SAAS,IAAI,SAAS,KAAK,GAAG,CAAA;QACvD,CAAC,CAAC,CAAA;QACF,IAAI,CAAC,WAAW,EAAE;YAChB,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;gBAC7B,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,KAAK,SAAS,IAAI,SAAS,KAAK,GAAG,CAAC,CAAA;YAC1D,CAAC,CAAC,CAAA;SACH;QACD,OAAO,gBAAgB,CAAA;IACzB,CAAC,CAAA;IAED,MAAM,WAAW,GAAG,KAAK,EAAE,SAAoB,EAAE,OAA+B,EAAE,MAAc,EAAE,EAAE;QAClG,QAAQ,CAAC,IAAI,CAAC;YACZ,SAAS;YACT,OAAO;YACP,MAAM;SACP,CAAC,CAAA;QACF,IAAI,SAAS,CAAC,SAAS,CAAC,EAAE;YACxB,UAAU,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAA;SACpC;IACH,CAAC,CAAA;IAED,MAAM,SAAS,GAAG,CAAC,SAAoB,EAAE,QAAkC,EAAE,EAAE;QAC7E,IAAI,OAAO,GAAG,CAAC,CAAC,CAAA;QAChB,MAAM,EAAE,GAAG,KAAK,IAAI,EAAE;YACpB,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,SAAS,CAAC,CAAA;YACzC,IAAI,IAAI,CAAC,MAAM,EAAE;gBACf,QAAQ,CAAC,IAAI,CAAC,CAAA;aACf;YAED,+BAA+B;QACjC,CAAC,CAAA;QACD,SAAS,CAAC,SAAS,CAAC,GAAG,EAAE,CAAA;QACzB,+BAA+B;QAC/B,OAAO,GAAG,EAAE;YACV,6BAA6B;YAC7B,OAAO,SAAS,CAAC,SAAS,CAAC,CAAA;QAC7B,CAAC,CAAA;IACH,CAAC,CAAA;IAED,OAAO;QACL,WAAW;QACX,WAAW;QACX,SAAS;KACV,CAAA;AACH,CAAC;AAnDD,kCAmDC"} | ||
| {"version":3,"file":"store.js","sourceRoot":"","sources":["../../../src/actor/store.ts"],"names":[],"mappings":";;;AAmBA,SAAgB,WAAW;IACzB,IAAI,QAAQ,GAAc,EAAE,CAAA;IAC5B,MAAM,SAAS,GAAwB,EAAE,CAAA;IAGzC,MAAM,WAAW,GAAG,KAAK,EAAE,SAAoB,EAAE,WAAW,GAAG,KAAK,EAAE,EAAE;QACtE,MAAM,gBAAgB,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;YAC3C,OAAO,CAAC,CAAC,SAAS,KAAK,SAAS,IAAI,SAAS,KAAK,GAAG,CAAA;QACvD,CAAC,CAAC,CAAA;QACF,IAAI,CAAC,WAAW,EAAE;YAChB,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;gBAC7B,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,KAAK,SAAS,IAAI,SAAS,KAAK,GAAG,CAAC,CAAA;YAC1D,CAAC,CAAC,CAAA;SACH;QACD,OAAO,gBAAgB,CAAA;IACzB,CAAC,CAAA;IAED,MAAM,WAAW,GAAG,KAAK,EAAE,SAAoB,EAAE,OAA+B,EAAE,MAAc,EAAE,EAAE;QAClG,QAAQ,CAAC,IAAI,CAAC;YACZ,SAAS;YACT,OAAO;YACP,MAAM;SACP,CAAC,CAAA;QACF,IAAI,SAAS,CAAC,SAAS,CAAC,EAAE;YACxB,UAAU,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAA;SACpC;IACH,CAAC,CAAA;IAED,MAAM,SAAS,GAAG,CAAC,SAAoB,EAAE,QAAkC,EAAE,EAAE;QAC7E,MAAM,EAAE,GAAG,KAAK,IAAI,EAAE;YACpB,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,SAAS,CAAC,CAAA;YACzC,IAAI,IAAI,CAAC,MAAM,EAAE;gBACf,QAAQ,CAAC,IAAI,CAAC,CAAA;aACf;QACH,CAAC,CAAA;QACD,SAAS,CAAC,SAAS,CAAC,GAAG,EAAE,CAAA;QACzB,OAAO,GAAG,EAAE;YACV,OAAO,SAAS,CAAC,SAAS,CAAC,CAAA;QAC7B,CAAC,CAAA;IACH,CAAC,CAAA;IAED,OAAO;QACL,WAAW;QACX,WAAW;QACX,SAAS;KACV,CAAA;AACH,CAAC;AA9CD,kCA8CC"} |
| "use strict"; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| exports.createWorkerInterface = exports.createLocalInterface = exports.createRouter = exports.createNetworkInterface = exports.createStore = exports.dispatch = exports.createDirector = void 0; | ||
| exports.createRemoteStorageProvider = exports.createRemoteStorageConsumer = exports.createWorkerInterface = exports.createLocalInterface = exports.createRouter = exports.createNetworkInterface = exports.createStore = exports.dispatch = exports.createDirector = void 0; | ||
| const actor_1 = require("./actor"); | ||
@@ -12,4 +12,7 @@ Object.defineProperty(exports, "createDirector", { enumerable: true, get: function () { return actor_1.createDirector; } }); | ||
| Object.defineProperty(exports, "createLocalInterface", { enumerable: true, get: function () { return network_1.createLocalInterface; } }); | ||
| const worker_1 = require("./worker"); | ||
| const worker_1 = require("./interfaces/worker"); | ||
| Object.defineProperty(exports, "createWorkerInterface", { enumerable: true, get: function () { return worker_1.createWorkerInterface; } }); | ||
| const remote_store_1 = require("./remote-store"); | ||
| Object.defineProperty(exports, "createRemoteStorageConsumer", { enumerable: true, get: function () { return remote_store_1.createRemoteStorageConsumer; } }); | ||
| Object.defineProperty(exports, "createRemoteStorageProvider", { enumerable: true, get: function () { return remote_store_1.createRemoteStorageProvider; } }); | ||
| //# sourceMappingURL=index.js.map |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;AAAA,mCAAqH;AAKnH,+FALO,sBAAc,OAKP;AACd,yFANuB,gBAAQ,OAMvB;AAGR,4FAToD,mBAAW,OASpD;AARb,uCAAuI;AASrI,uGATO,gCAAsB,OASP;AACtB,6FAV+B,sBAAY,OAU/B;AAIZ,qGAd8F,8BAAoB,OAc9F;AAbtB,qCAAgD;AAc9C,sGAdO,8BAAqB,OAcP"} | ||
| {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;AAAA,mCAAqH;AAMnH,+FANO,sBAAc,OAMP;AACd,yFAPuB,gBAAQ,OAOvB;AAGR,4FAVoD,mBAAW,OAUpD;AATb,uCAAuI;AAUrI,uGAVO,gCAAsB,OAUP;AACtB,6FAX+B,sBAAY,OAW/B;AAIZ,qGAf8F,8BAAoB,OAe9F;AAdtB,gDAA2D;AAezD,sGAfO,8BAAqB,OAeP;AAdvB,iDAAiH;AAkB/G,4GAlB+B,0CAA2B,OAkB/B;AAC3B,4GAnB4D,0CAA2B,OAmB5D"} |
| import { createDirector, dispatch, Director, Message, createStore, PossibleMessagePayload, Recipient } from './actor'; | ||
| import { createNetworkInterface, createRouter, NetworkInterface, NetworkMessage, NetworkRouter, createLocalInterface } from './network'; | ||
| import { createWorkerInterface } from './worker'; | ||
| export { createDirector, dispatch, Director, Message, createStore, createNetworkInterface, createRouter, NetworkInterface, NetworkMessage, NetworkRouter, createLocalInterface, createWorkerInterface, PossibleMessagePayload, Recipient, }; | ||
| import { createWorkerInterface } from './interfaces/worker'; | ||
| import { RemoteStorageInterface, createRemoteStorageConsumer, createRemoteStorageProvider } from './remote-store'; | ||
| export { createDirector, dispatch, Director, Message, createStore, createNetworkInterface, createRouter, NetworkInterface, NetworkMessage, NetworkRouter, createLocalInterface, createWorkerInterface, PossibleMessagePayload, Recipient, RemoteStorageInterface, createRemoteStorageConsumer, createRemoteStorageProvider, }; |
+9
-9
| { | ||
| "name": "@actorize/core", | ||
| "version": "0.0.14", | ||
| "version": "0.0.15", | ||
| "description": "Actorize helps building scalable js apps with a messaging system", | ||
@@ -31,13 +31,13 @@ "keywords": [ | ||
| "devDependencies": { | ||
| "@rollup/plugin-node-resolve": "^11.2.1", | ||
| "@rollup/plugin-node-resolve": "^13.0.0", | ||
| "@rollup/plugin-typescript": "^8.2.1", | ||
| "@types/jest": "^26.0.22", | ||
| "jest": "^26.6.3", | ||
| "@types/jest": "^26.0.23", | ||
| "jest": "^27.0.6", | ||
| "rimraf": "^3.0.2", | ||
| "rollup": "^2.45.2", | ||
| "ts-jest": "^26.5.5", | ||
| "ts-node": "^9.1.1", | ||
| "tslib": "^2.2.0", | ||
| "typescript": "^4.2.4" | ||
| "rollup": "^2.52.7", | ||
| "ts-jest": "^27.0.3", | ||
| "ts-node": "^10.0.0", | ||
| "tslib": "^2.3.0", | ||
| "typescript": "^4.3.5" | ||
| } | ||
| } |
| "use strict"; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| exports.createWorkerInterface = void 0; | ||
| const index_1 = require("../index"); | ||
| const createWorkerInterface = (worker) => { | ||
| const ni = index_1.createNetworkInterface(); | ||
| worker.onmessage = (e) => { | ||
| ni.sendLocal(e.data); | ||
| }; | ||
| ni.handleLocalIncomingMessages((msg) => { | ||
| worker.postMessage(msg); | ||
| }); | ||
| return ni; | ||
| }; | ||
| exports.createWorkerInterface = createWorkerInterface; | ||
| exports.default = {}; | ||
| //# sourceMappingURL=index.js.map |
| {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/worker/index.ts"],"names":[],"mappings":";;;AAAA,oCAAiD;AAE1C,MAAM,qBAAqB,GAAG,CAAC,MAAc,EAAE,EAAE;IACtD,MAAM,EAAE,GAAG,8BAAsB,EAAE,CAAA;IACnC,MAAM,CAAC,SAAS,GAAG,CAAC,CAAC,EAAE,EAAE;QACvB,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;IACtB,CAAC,CAAA;IACD,EAAE,CAAC,2BAA2B,CAAC,CAAC,GAAG,EAAE,EAAE;QACrC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;IACzB,CAAC,CAAC,CAAA;IACF,OAAO,EAAE,CAAA;AACX,CAAC,CAAA;AATY,QAAA,qBAAqB,yBASjC;AAED,kBAAe,EAAE,CAAA"} |
| export declare const createWorkerInterface: (worker: Worker) => import("../index").NetworkInterface; | ||
| declare const _default: {}; | ||
| export default _default; |
36231
36.51%39
8.33%517
42.03%