@faiber/sdk-core 0.12.0 → 0.13.0

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/README.md CHANGED
@@ -45,3 +45,32 @@ The client provides typed `get`, `post`, `put`, `patch`, `delete`, and generic `
45
45
  ## Authentication refresh and errors
46
46
 
47
47
  Configure `refreshAuth` for one shared refresh when concurrent calls receive `401`. Retried calls obtain the new token; in cookie mode the callback may return `null` after the server rotates its HttpOnly cookie and the protected request is still retried once. Failed refreshes clear stale credentials. A refresh failure preserves the original protected-request Axios error (and attaches the refresh error as its `cause` when possible), so applications retain the operation's status, response body, headers, request IDs, cancellation, and timeout details.
48
+
49
+ ## Sockudo realtime subscriptions
50
+
51
+ `subscribeRealtime` connects a private Sockudo channel over the Pusher-compatible WebSocket protocol. Fetch the browser-safe configuration from the owning service and authorize through its authenticated Faiber client. Chat owns conversation channels; Messenger owns notification channels. No app secret belongs in the browser.
52
+
53
+ ```ts
54
+ import { FaiberClient, subscribeRealtime } from '@faiber/sdk-core';
55
+ import { ChatApi } from '@faiber/faiber-chat';
56
+ const chat = new ChatApi(new FaiberClient('chat', {
57
+ domains: { chat: 'https://chat.example.com' }, authMode: 'cookie',
58
+ }));
59
+ const conversationId = 'your-conversation-id';
60
+ const config = (await chat.realtimeConfig(conversationId)).data.data;
61
+ const reloadMessages = async () => {
62
+ const response = await chat.messages(conversationId);
63
+ console.log(response.data.data);
64
+ };
65
+ const subscription = subscribeRealtime({
66
+ config,
67
+ authorize: async input => (await chat.realtimeAuth(conversationId, input)).data,
68
+ onEvent: () => { void reloadMessages(); },
69
+ onSubscribed: () => { void reloadMessages(); },
70
+ onError: error => console.error(error.message),
71
+ });
72
+ // On logout or component teardown:
73
+ subscription.close();
74
+ ```
75
+
76
+ Subscription authorization is repeated on reconnect. `onSubscribed` runs after every successful subscription: reload persisted data to recover events missed while offline. Events are invalidation hints and their service-specific payload is intentionally `unknown`; service HTTP responses remain authoritative. `onError` reports connection/authorization failures; HTTP authorization failures retain normal Axios behavior within your callback. Close cancels the connection and ignores late authorization results. HTTPS pages require `wss:`; allow the exact WebSocket origin in your Content Security Policy.
package/dist/.tsbuildinfo CHANGED
@@ -1 +1 @@
1
- {"fileNames":["../../../node_modules/typescript/lib/lib.es5.d.ts","../../../node_modules/typescript/lib/lib.es2015.d.ts","../../../node_modules/typescript/lib/lib.es2016.d.ts","../../../node_modules/typescript/lib/lib.es2017.d.ts","../../../node_modules/typescript/lib/lib.es2018.d.ts","../../../node_modules/typescript/lib/lib.es2019.d.ts","../../../node_modules/typescript/lib/lib.es2020.d.ts","../../../node_modules/typescript/lib/lib.es2021.d.ts","../../../node_modules/typescript/lib/lib.es2022.d.ts","../../../node_modules/typescript/lib/lib.dom.d.ts","../../../node_modules/typescript/lib/lib.dom.iterable.d.ts","../../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../node_modules/typescript/lib/lib.es2016.intl.d.ts","../../../node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","../../../node_modules/typescript/lib/lib.es2017.date.d.ts","../../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../node_modules/typescript/lib/lib.es2019.intl.d.ts","../../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../node_modules/typescript/lib/lib.es2020.date.d.ts","../../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../node_modules/typescript/lib/lib.es2020.number.d.ts","../../../node_modules/typescript/lib/lib.es2021.promise.d.ts","../../../node_modules/typescript/lib/lib.es2021.string.d.ts","../../../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../../node_modules/typescript/lib/lib.es2021.intl.d.ts","../../../node_modules/typescript/lib/lib.es2022.array.d.ts","../../../node_modules/typescript/lib/lib.es2022.error.d.ts","../../../node_modules/typescript/lib/lib.es2022.intl.d.ts","../../../node_modules/typescript/lib/lib.es2022.object.d.ts","../../../node_modules/typescript/lib/lib.es2022.string.d.ts","../../../node_modules/typescript/lib/lib.es2022.regexp.d.ts","../../../node_modules/typescript/lib/lib.decorators.d.ts","../../../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../../../node_modules/axios/index.d.ts","../src/types.ts","../src/auth.ts","../src/env.ts","../src/client.ts","../src/resource.ts","../src/openapi.ts","../src/index.ts"],"fileIdsList":[[61],[60,61,62,63],[60,61,62,63,64,65,66],[60,61,64],[60]],"fileInfos":[{"version":"c430d44666289dae81f30fa7b2edebf186ecc91a2d4c71266ea6ae76388792e1","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","impliedFormat":1},{"version":"e44bb8bbac7f10ecc786703fe0a6a4b952189f908707980ba8f3c8975a760962","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","impliedFormat":1},{"version":"ee7bad0c15b58988daa84371e0b89d313b762ab83cb5b31b8a2d1162e8eb41c2","impliedFormat":1},{"version":"080941d9f9ff9307f7e27a83bcd888b7c8270716c39af943532438932ec1d0b9","affectsGlobalScope":true,"impliedFormat":1},{"version":"2e80ee7a49e8ac312cc11b77f1475804bee36b3b2bc896bead8b6e1266befb43","affectsGlobalScope":true,"impliedFormat":1},{"version":"c57796738e7f83dbc4b8e65132f11a377649c00dd3eee333f672b8f0a6bea671","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true,"impliedFormat":1},{"version":"515d0b7b9bea2e31ea4ec968e9edd2c39d3eebf4a2d5cbd04e88639819ae3b71","affectsGlobalScope":true,"impliedFormat":1},{"version":"0559b1f683ac7505ae451f9a96ce4c3c92bdc71411651ca6ddb0e88baaaad6a3","affectsGlobalScope":true,"impliedFormat":1},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"fb0f136d372979348d59b3f5020b4cdb81b5504192b1cacff5d1fbba29378aa1","affectsGlobalScope":true,"impliedFormat":1},{"version":"d15bea3d62cbbdb9797079416b8ac375ae99162a7fba5de2c6c505446486ac0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"68d18b664c9d32a7336a70235958b8997ebc1c3b8505f4f1ae2b7e7753b87618","affectsGlobalScope":true,"impliedFormat":1},{"version":"eb3d66c8327153d8fa7dd03f9c58d351107fe824c79e9b56b462935176cdf12a","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"69ab18c3b76cd9b1be3d188eaf8bba06112ebbe2f47f6c322b5105a6fbc45a2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"a680117f487a4d2f30ea46f1b4b7f58bef1480456e18ba53ee85c2746eeca012","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"954296b30da6d508a104a3a0b5d96b76495c709785c1d11610908e63481ee667","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac9538681b19688c8eae65811b329d3744af679e0bdfa5d842d0e32524c73e1c","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a969edff4bd52585473d24995c5ef223f6652d6ef46193309b3921d65dd4376","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true,"impliedFormat":1},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"d6d7ae4d1f1f3772e2a3cde568ed08991a8ae34a080ff1151af28b7f798e22ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true,"impliedFormat":1},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true,"impliedFormat":1},{"version":"52ada8e0b6e0482b728070b7639ee42e83a9b1c22d205992756fe020fd9f4a47","affectsGlobalScope":true,"impliedFormat":1},{"version":"3bdefe1bfd4d6dee0e26f928f93ccc128f1b64d5d501ff4a8cf3c6371200e5e6","affectsGlobalScope":true,"impliedFormat":1},{"version":"59fb2c069260b4ba00b5643b907ef5d5341b167e7d1dbf58dfd895658bda2867","affectsGlobalScope":true,"impliedFormat":1},{"version":"639e512c0dfc3fad96a84caad71b8834d66329a1f28dc95e3946c9b58176c73a","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"af3dd424cf267428f30ccfc376f47a2c0114546b55c44d8c0f1d57d841e28d74","affectsGlobalScope":true,"impliedFormat":1},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true,"impliedFormat":1},{"version":"959d36cddf5e7d572a65045b876f2956c973a586da58e5d26cde519184fd9b8a","affectsGlobalScope":true,"impliedFormat":1},{"version":"965f36eae237dd74e6cca203a43e9ca801ce38824ead814728a2807b1910117d","affectsGlobalScope":true,"impliedFormat":1},{"version":"3925a6c820dcb1a06506c90b1577db1fdbf7705d65b62b99dce4be75c637e26b","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a3d63ef2b853447ec4f749d3f368ce642264246e02911fcb1590d8c161b8005","affectsGlobalScope":true,"impliedFormat":1},{"version":"8cdf8847677ac7d20486e54dd3fcf09eda95812ac8ace44b4418da1bbbab6eb8","affectsGlobalScope":true,"impliedFormat":1},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","affectsGlobalScope":true,"impliedFormat":1},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","affectsGlobalScope":true,"impliedFormat":1},{"version":"b4b67b1a91182421f5df999988c690f14d813b9850b40acd06ed44691f6727ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e7f8264d0fb4c5339605a15daadb037bf238c10b654bb3eee14208f860a32ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"2343ec253c90c370449755739733f5f429f58cffdb51a50977bb4a042012fa8f","impliedFormat":99},{"version":"ce13f6f403fd48c59af1b69357f6679c964033f1688206861e95743065c69b88","signature":"6cc1f17dc5454eb1112cfb4a2e2ddc93de8c3f9016c8db7bdf0328caac374ffa","impliedFormat":99},{"version":"7c7f1d5e69fb194b4edbe21e3ee034f6bb1c642281f59aecc4a8c8864ba59b45","signature":"ed17ed1b2bcf384c88bc6cec6b427989b98db99fc7ad35a50605501a463bbc53","impliedFormat":99},{"version":"0609abe7da88b6e9e4cd16120fb97de69cbe890494b83c17a20b0c652ac5744c","signature":"82065c5512d8d6f81b26cf13ea9ecd3e558be9560f7b5c62260858219ecd87f7","impliedFormat":99},{"version":"faecbab9d2035edfa9943469e5a873ed561c31e1a5a1be16b455488a819b2708","signature":"82bf4efcca8ab8764a91ac126c0af605ab6717ee94b2316461b5fa388b27e165","impliedFormat":99},{"version":"5b1f4b39684b56e8a55bf4d7bad5d9af28299ba66dace40feb443a5a89d7a3ff","signature":"82ffc9a1d95766c8f6f6bb4316b1d83e9d6a1d4ec41057d1a897cca70176bfc1","impliedFormat":99},{"version":"f17ce0aa3c617bbc42d9ec936b01fe5e298d3283925274c0b33de67392ad82fd","signature":"3f5eeb0a84713ccf640b9a6af4629e006f59d7629abc3fc95af2efb062fd0b83","impliedFormat":99},{"version":"66a0cb4d019dd780c2fb5c2942778929ec55715bb5a0f3b80aac4c0b92e35d16","impliedFormat":99}],"root":[[61,67]],"options":{"composite":true,"declaration":true,"declarationMap":true,"exactOptionalPropertyTypes":true,"module":199,"noUncheckedIndexedAccess":true,"outDir":"./","rootDir":"../src","skipLibCheck":true,"sourceMap":true,"strict":true,"target":9,"tsBuildInfoFile":"./.tsbuildinfo","verbatimModuleSyntax":true},"referencedMap":[[62,1],[64,2],[63,1],[67,3],[66,4],[65,4],[61,5]],"latestChangedDtsFile":"./index.d.ts","version":"5.9.3"}
1
+ {"fileNames":["../../../node_modules/typescript/lib/lib.es5.d.ts","../../../node_modules/typescript/lib/lib.es2015.d.ts","../../../node_modules/typescript/lib/lib.es2016.d.ts","../../../node_modules/typescript/lib/lib.es2017.d.ts","../../../node_modules/typescript/lib/lib.es2018.d.ts","../../../node_modules/typescript/lib/lib.es2019.d.ts","../../../node_modules/typescript/lib/lib.es2020.d.ts","../../../node_modules/typescript/lib/lib.es2021.d.ts","../../../node_modules/typescript/lib/lib.es2022.d.ts","../../../node_modules/typescript/lib/lib.dom.d.ts","../../../node_modules/typescript/lib/lib.dom.iterable.d.ts","../../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../node_modules/typescript/lib/lib.es2016.intl.d.ts","../../../node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","../../../node_modules/typescript/lib/lib.es2017.date.d.ts","../../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../node_modules/typescript/lib/lib.es2019.intl.d.ts","../../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../node_modules/typescript/lib/lib.es2020.date.d.ts","../../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../node_modules/typescript/lib/lib.es2020.number.d.ts","../../../node_modules/typescript/lib/lib.es2021.promise.d.ts","../../../node_modules/typescript/lib/lib.es2021.string.d.ts","../../../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../../node_modules/typescript/lib/lib.es2021.intl.d.ts","../../../node_modules/typescript/lib/lib.es2022.array.d.ts","../../../node_modules/typescript/lib/lib.es2022.error.d.ts","../../../node_modules/typescript/lib/lib.es2022.intl.d.ts","../../../node_modules/typescript/lib/lib.es2022.object.d.ts","../../../node_modules/typescript/lib/lib.es2022.string.d.ts","../../../node_modules/typescript/lib/lib.es2022.regexp.d.ts","../../../node_modules/typescript/lib/lib.decorators.d.ts","../../../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../../../node_modules/axios/index.d.ts","../src/types.ts","../src/auth.ts","../src/env.ts","../src/client.ts","../src/resource.ts","../src/openapi.ts","../../../node_modules/pusher-js/types/src/core/channels/metadata.d.ts","../../../node_modules/pusher-js/types/src/core/events/callback.d.ts","../../../node_modules/pusher-js/types/src/core/events/callback_table.d.ts","../../../node_modules/pusher-js/types/src/core/events/callback_registry.d.ts","../../../node_modules/pusher-js/types/src/core/events/dispatcher.d.ts","../../../node_modules/pusher-js/types/src/core/auth/options.d.ts","../../../node_modules/pusher-js/types/src/core/auth/auth_transports.d.ts","../../../node_modules/pusher-js/types/src/core/timeline/level.d.ts","../../../node_modules/pusher-js/types/src/core/timeline/timeline.d.ts","../../../node_modules/pusher-js/types/src/core/timeline/timeline_sender.d.ts","../../../node_modules/pusher-js/types/src/core/timeline/timeline_transport.d.ts","../../../node_modules/pusher-js/types/src/core/http/ajax.d.ts","../../../node_modules/pusher-js/types/src/core/reachability.d.ts","../../../node_modules/pusher-js/types/src/core/transports/url_scheme.d.ts","../../../node_modules/pusher-js/types/src/core/socket.d.ts","../../../node_modules/pusher-js/types/src/core/transports/transport_hooks.d.ts","../../../node_modules/pusher-js/types/src/core/transports/transport_connection_options.d.ts","../../../node_modules/pusher-js/types/src/core/transports/transport_connection.d.ts","../../../node_modules/pusher-js/types/src/core/transports/transport.d.ts","../../../node_modules/pusher-js/types/src/core/transports/transports_table.d.ts","../../../node_modules/pusher-js/types/src/core/http/url_location.d.ts","../../../node_modules/pusher-js/types/src/core/http/state.d.ts","../../../node_modules/pusher-js/types/src/core/http/socket_hooks.d.ts","../../../node_modules/pusher-js/types/src/core/http/request_hooks.d.ts","../../../node_modules/pusher-js/types/src/core/http/http_request.d.ts","../../../node_modules/pusher-js/types/src/core/http/http_socket.d.ts","../../../node_modules/pusher-js/types/src/core/http/http_factory.d.ts","../../../node_modules/pusher-js/types/src/runtimes/web/dom/script_receiver.d.ts","../../../node_modules/pusher-js/types/src/runtimes/web/dom/script_request.d.ts","../../../node_modules/pusher-js/types/src/runtimes/web/dom/jsonp_request.d.ts","../../../node_modules/pusher-js/types/src/core/strategies/strategy_runner.d.ts","../../../node_modules/pusher-js/types/src/core/strategies/strategy.d.ts","../../../node_modules/tweetnacl/nacl.d.ts","../../../node_modules/pusher-js/types/src/core/options.d.ts","../../../node_modules/pusher-js/types/src/core/config.d.ts","../../../node_modules/pusher-js/types/src/core/strategies/strategy_options.d.ts","../../../node_modules/pusher-js/types/src/runtimes/interface.d.ts","../../../node_modules/pusher-js/types/src/core/channels/channel_table.d.ts","../../../node_modules/pusher-js/types/src/core/channels/channels.d.ts","../../../node_modules/pusher-js/types/src/core/utils/timers/timed_callback.d.ts","../../../node_modules/pusher-js/types/src/core/utils/timers/scheduling.d.ts","../../../node_modules/pusher-js/types/src/core/utils/timers/abstract_timer.d.ts","../../../node_modules/pusher-js/types/src/core/utils/timers/index.d.ts","../../../node_modules/pusher-js/types/src/core/connection/connection.d.ts","../../../node_modules/pusher-js/types/src/core/connection/connection_manager_options.d.ts","../../../node_modules/pusher-js/types/src/core/connection/protocol/action.d.ts","../../../node_modules/pusher-js/types/src/core/connection/handshake/handshake_payload.d.ts","../../../node_modules/pusher-js/types/src/core/connection/callbacks.d.ts","../../../node_modules/pusher-js/types/src/core/connection/connection_manager.d.ts","../../../node_modules/pusher-js/types/src/core/watchlist.d.ts","../../../node_modules/pusher-js/types/src/core/user.d.ts","../../../node_modules/pusher-js/types/src/core/pusher.d.ts","../../../node_modules/pusher-js/types/src/core/connection/protocol/message-types.d.ts","../../../node_modules/pusher-js/types/src/core/channels/channel.d.ts","../../../node_modules/pusher-js/types/src/core/auth/deprecated_channel_authorizer.d.ts","../../../node_modules/pusher-js/types/src/core/channels/private_channel.d.ts","../../../node_modules/pusher-js/types/src/core/channels/members.d.ts","../../../node_modules/pusher-js/types/src/core/channels/presence_channel.d.ts","../../../node_modules/pusher-js/index.d.ts","../src/realtime.ts","../src/index.ts"],"fileIdsList":[[72,100,103,115,118,120,121,123,124],[72,103],[72,120],[71,72,118,119],[120],[104,118,120],[118,119,122,123],[72,99,100],[112,113],[71,81,84],[71,75,97,98,109,110,111,114],[75,98],[84,110,112],[68,69],[68],[67,70],[89,90,91,92],[71,78,90],[81,87,88,89,91],[78],[87],[72,99,101,121],[71,75,76,100,101,103,105,109,115,117,120],[71],[97],[75],[74],[76],[82,84],[71,75,81,82,83],[80,81],[85],[71,116,118,120],[106,107],[106,107,108],[71,118],[73,77,78,79,81,86,91,93,96,98,101,102,118],[94,95],[94],[61],[60,61,62,63],[60,61,62,63,64,65,66,126],[60,61,64],[125],[60]],"fileInfos":[{"version":"c430d44666289dae81f30fa7b2edebf186ecc91a2d4c71266ea6ae76388792e1","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","impliedFormat":1},{"version":"e44bb8bbac7f10ecc786703fe0a6a4b952189f908707980ba8f3c8975a760962","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","impliedFormat":1},{"version":"ee7bad0c15b58988daa84371e0b89d313b762ab83cb5b31b8a2d1162e8eb41c2","impliedFormat":1},{"version":"080941d9f9ff9307f7e27a83bcd888b7c8270716c39af943532438932ec1d0b9","affectsGlobalScope":true,"impliedFormat":1},{"version":"2e80ee7a49e8ac312cc11b77f1475804bee36b3b2bc896bead8b6e1266befb43","affectsGlobalScope":true,"impliedFormat":1},{"version":"c57796738e7f83dbc4b8e65132f11a377649c00dd3eee333f672b8f0a6bea671","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true,"impliedFormat":1},{"version":"515d0b7b9bea2e31ea4ec968e9edd2c39d3eebf4a2d5cbd04e88639819ae3b71","affectsGlobalScope":true,"impliedFormat":1},{"version":"0559b1f683ac7505ae451f9a96ce4c3c92bdc71411651ca6ddb0e88baaaad6a3","affectsGlobalScope":true,"impliedFormat":1},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"fb0f136d372979348d59b3f5020b4cdb81b5504192b1cacff5d1fbba29378aa1","affectsGlobalScope":true,"impliedFormat":1},{"version":"d15bea3d62cbbdb9797079416b8ac375ae99162a7fba5de2c6c505446486ac0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"68d18b664c9d32a7336a70235958b8997ebc1c3b8505f4f1ae2b7e7753b87618","affectsGlobalScope":true,"impliedFormat":1},{"version":"eb3d66c8327153d8fa7dd03f9c58d351107fe824c79e9b56b462935176cdf12a","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"69ab18c3b76cd9b1be3d188eaf8bba06112ebbe2f47f6c322b5105a6fbc45a2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"a680117f487a4d2f30ea46f1b4b7f58bef1480456e18ba53ee85c2746eeca012","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"954296b30da6d508a104a3a0b5d96b76495c709785c1d11610908e63481ee667","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac9538681b19688c8eae65811b329d3744af679e0bdfa5d842d0e32524c73e1c","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a969edff4bd52585473d24995c5ef223f6652d6ef46193309b3921d65dd4376","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true,"impliedFormat":1},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"d6d7ae4d1f1f3772e2a3cde568ed08991a8ae34a080ff1151af28b7f798e22ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true,"impliedFormat":1},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true,"impliedFormat":1},{"version":"52ada8e0b6e0482b728070b7639ee42e83a9b1c22d205992756fe020fd9f4a47","affectsGlobalScope":true,"impliedFormat":1},{"version":"3bdefe1bfd4d6dee0e26f928f93ccc128f1b64d5d501ff4a8cf3c6371200e5e6","affectsGlobalScope":true,"impliedFormat":1},{"version":"59fb2c069260b4ba00b5643b907ef5d5341b167e7d1dbf58dfd895658bda2867","affectsGlobalScope":true,"impliedFormat":1},{"version":"639e512c0dfc3fad96a84caad71b8834d66329a1f28dc95e3946c9b58176c73a","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"af3dd424cf267428f30ccfc376f47a2c0114546b55c44d8c0f1d57d841e28d74","affectsGlobalScope":true,"impliedFormat":1},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true,"impliedFormat":1},{"version":"959d36cddf5e7d572a65045b876f2956c973a586da58e5d26cde519184fd9b8a","affectsGlobalScope":true,"impliedFormat":1},{"version":"965f36eae237dd74e6cca203a43e9ca801ce38824ead814728a2807b1910117d","affectsGlobalScope":true,"impliedFormat":1},{"version":"3925a6c820dcb1a06506c90b1577db1fdbf7705d65b62b99dce4be75c637e26b","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a3d63ef2b853447ec4f749d3f368ce642264246e02911fcb1590d8c161b8005","affectsGlobalScope":true,"impliedFormat":1},{"version":"8cdf8847677ac7d20486e54dd3fcf09eda95812ac8ace44b4418da1bbbab6eb8","affectsGlobalScope":true,"impliedFormat":1},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","affectsGlobalScope":true,"impliedFormat":1},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","affectsGlobalScope":true,"impliedFormat":1},{"version":"b4b67b1a91182421f5df999988c690f14d813b9850b40acd06ed44691f6727ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e7f8264d0fb4c5339605a15daadb037bf238c10b654bb3eee14208f860a32ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"2343ec253c90c370449755739733f5f429f58cffdb51a50977bb4a042012fa8f","impliedFormat":99},{"version":"ce13f6f403fd48c59af1b69357f6679c964033f1688206861e95743065c69b88","signature":"6cc1f17dc5454eb1112cfb4a2e2ddc93de8c3f9016c8db7bdf0328caac374ffa","impliedFormat":99},{"version":"7c7f1d5e69fb194b4edbe21e3ee034f6bb1c642281f59aecc4a8c8864ba59b45","signature":"ed17ed1b2bcf384c88bc6cec6b427989b98db99fc7ad35a50605501a463bbc53","impliedFormat":99},{"version":"0609abe7da88b6e9e4cd16120fb97de69cbe890494b83c17a20b0c652ac5744c","signature":"82065c5512d8d6f81b26cf13ea9ecd3e558be9560f7b5c62260858219ecd87f7","impliedFormat":99},{"version":"faecbab9d2035edfa9943469e5a873ed561c31e1a5a1be16b455488a819b2708","signature":"82bf4efcca8ab8764a91ac126c0af605ab6717ee94b2316461b5fa388b27e165","impliedFormat":99},{"version":"5b1f4b39684b56e8a55bf4d7bad5d9af28299ba66dace40feb443a5a89d7a3ff","signature":"82ffc9a1d95766c8f6f6bb4316b1d83e9d6a1d4ec41057d1a897cca70176bfc1","impliedFormat":99},{"version":"f17ce0aa3c617bbc42d9ec936b01fe5e298d3283925274c0b33de67392ad82fd","signature":"3f5eeb0a84713ccf640b9a6af4629e006f59d7629abc3fc95af2efb062fd0b83","impliedFormat":99},{"version":"4ad9db67e5dca7eaea61601bdf94fb9bcfae6c1262653c87ec7b0fed65570c47","impliedFormat":1},{"version":"0e56d1b1dbcbaa8bd7b394ca5ef33ba179da1b307dce43efe64fab2c59677473","impliedFormat":1},{"version":"4012b56e9c68a3ff1821a5a9a79afca27b12e44ee5be48ec948ecec0a11a2f6d","impliedFormat":1},{"version":"bea047fd01700b84a8a0ada15c6a58372d2c638dc7f25c400a9487e0c46577b1","impliedFormat":1},{"version":"5746c9cf416e2587d990c35bc70d20a11b7cd5c2eee75802c544d73e280230a6","impliedFormat":1},{"version":"18fec1e5f6a2b310ee849388aeb4976a8073824e3a5c764a614eefb74b0ee75f","impliedFormat":1},{"version":"a8aa4e856bb519e7346bff17153a961e4d11119c0d53ec7f8c9c27462cc6cbdc","impliedFormat":1},{"version":"6c06eca61bcfe68d1c7ad08934c61ddf9f50958248b4c7f6db52775f8bf2fcc1","impliedFormat":1},{"version":"8dcb95d099cfe6c11f0373e97f45d64705e7587eba406a24b05fe5337630bad3","impliedFormat":1},{"version":"825c789d4b97f29eddc651166cab4e6eced8b9d1a82cf7f510204a0fda740955","impliedFormat":1},{"version":"f39aceb7dffed5e136a19e198523861647dde8534766b536a952b399ff14d8bd","impliedFormat":1},{"version":"56090e2abb34bbcb8ab8a4c231d11229ef11cd3049dd3533e7fc17226213dde2","impliedFormat":1},{"version":"5c666bb3bbb644340b5a96ad0ff87fda493949d7d7f9f6a70c0ffc384e1c855e","impliedFormat":1},{"version":"3aaf01c163166619954c2926b28fb8cd2fcec14b6d8dc8c47679f20d260646f6","impliedFormat":1},{"version":"aada47961584993b85ecc16cf7892ca1aee7f155b551c87ad5d4e5653fc93d01","impliedFormat":1},{"version":"6d2ac9b263640636711eb1890af44b826efb544b19898be5cd305d9520f56ebd","impliedFormat":1},{"version":"9b2105dbc097751b021ff5a929c6c43787cafb92d6077063356bc4bd84c06e5d","impliedFormat":1},{"version":"1737068184624c11ea5cb80ce38f6fdae5b4f2c72e3392a5b81091825ab6b0fa","impliedFormat":1},{"version":"609309a59bf2cd5b4a0c4de303628cd6f943b7ab28df889e271877710e19287b","impliedFormat":1},{"version":"7328288e0844003afc2c7234b97730709da11754fa893725d4f0bc469dddf26c","impliedFormat":1},{"version":"65f5b2909c837c00cc041c211255331fd27d5a4a1577b8522ae96c3d786a3f02","impliedFormat":1},{"version":"5f04560387f63cde52012c86f1e3ba6c326e1c40a19c57b64017894155596b6d","impliedFormat":1},{"version":"830cbe1a51d623659ba2e24a7cf8bcd9695d3949a45306534771f76ef4cd8453","impliedFormat":1},{"version":"31379a2b3215695f89b5836d0223cba57260336abe5587b60df3d880a042a317","impliedFormat":1},{"version":"cbb35dd569cb307f2acca537b7c2fdbbd2655f462d52391503cb598c4eadb52a","impliedFormat":1},{"version":"fd7818f21f2a644f920f213f1f7252b6f404dfce9fbd1a9807ae17a256e5a504","impliedFormat":1},{"version":"7834ac5397663464e58c46a425ef71e5408c5322c3343ba8baeda55ebedf98f7","impliedFormat":1},{"version":"fb73c6742a0c6f9535c5a2eb2dc8a2e527161d030d097d00a27000d37d6de0a0","impliedFormat":1},{"version":"0c0f91442b5723f56c8c66855a633759765f7b0f02b844af7e9069081b6cec7b","impliedFormat":1},{"version":"f37278938644338a7b11e1110421f6558e0b01521abb343bec823967f2a32cc1","impliedFormat":1},{"version":"6c59a1bf57edeb35d881aee905b29fb012490271b01c18a23429f22459209797","impliedFormat":1},{"version":"83f32c63f95f265dc88b97c871c1917f6d173405a0fbc76510b3dfb7bccb3eab","impliedFormat":1},{"version":"60592f5ae1b739c9607a99895d4a3ad5c865b16903e4180e50b256e360a4a104","impliedFormat":1},{"version":"fcf9e3c6116cdb40bf449a04252e5542cc2415a9951520f78d5d53f3843f6d41","impliedFormat":1},{"version":"dd5174a945c3fe9c3b0f3313b3c2d8b6ddea499f6c58b07cbec276e4fb6f38a1","impliedFormat":1},{"version":"14027b0cb243dc38bf2c6eee349f394bd0f39e874750ec684e3ce79a4699fef6","impliedFormat":1},{"version":"0989775a5282ebfcfb0cffa9448c244ee5b98a6062560fb0d149d4a127b6d6d4","impliedFormat":1},{"version":"6ea9f58525df9eebec7edfd17c4e73c448c15469a8c1981050ee0e420d7a5e82","impliedFormat":1},{"version":"abbb91b10ae2333c5bad6181fb6e8b0969b0c54732f9195deb4ed8249545619e","impliedFormat":1},{"version":"de96d2dcd32e755378bbf9b68637538c1a9b105266438d7e8587f7e513c59b04","impliedFormat":1},{"version":"a3055c3b793e3f8c47c73c8b2ea15bfb416f9dfba8816b14e68a8671c54972c1","impliedFormat":1},{"version":"d10342a0fe537ba711bb78b9d6cc4bf6520001b129cb1fb040f8c2246e2e06eb","impliedFormat":1},{"version":"c8b94161756b6302cf9c3dbec891a33a32de3c538122003f3bb0734da3ec105a","impliedFormat":1},{"version":"e3ae2c8650333ad77dc5266c92d0dd234339fe3ed9d8a478c12c5f61e4370291","impliedFormat":1},{"version":"366b151c73da1214ff57bc4c6a652b2897ee44f91c79221eb793283903536049","impliedFormat":1},{"version":"83873a4d84feed7e565d557bb00cb2c9b1ec16af5ae07ba6c377d4e8a58bfc3a","impliedFormat":1},{"version":"1b95f9541e9e3bf7678a2363ca8a57c56ae4cae62e591ba0d6e4b17a3ac0ddb8","impliedFormat":1},{"version":"0149a2fa9081d851291b38ca6fcff443cbe6b469aa8fe3a90e480b5a25779bbc","impliedFormat":1},{"version":"c180e917d9a8e3021a4079b080f4b355ff14f20c8a39bdfe62203da8775c5554","impliedFormat":1},{"version":"70586d64418781789683102ec7bed48e9fbb8fe2b47475ded705d80de4ebe2e7","impliedFormat":1},{"version":"540f4003460aa3b0166fb30860f7a0bec6f00800c79240ddc2d7e677e3f5de8b","impliedFormat":1},{"version":"1614962993ecfaa38794a82aa834516c352aa568990ad32e1c07d9a379cbd9d7","impliedFormat":1},{"version":"9948b10e00a9c4bbda115d8f8af9ec34982b76febed849c42c32a394d866d98b","impliedFormat":1},{"version":"81faa939cf04300efa880aa2152cd2544ac2428854f4115afc8b6625c10c2fd3","impliedFormat":1},{"version":"9dc910b0e83d022087419eb73f0827e0baea72911579f6878c7d39e7b36a6be3","impliedFormat":1},{"version":"bdf947a02286beec509b82301f12016663fe488b4719fdfef91b35ea955ea7b6","impliedFormat":1},{"version":"ba8eb330f0624bc4251fb7a071ec3a0a5ea3b7f11bee52b88a9f522e9da5570e","impliedFormat":1},{"version":"ef0417f84513e3478a01d76ed56bc6be1b1832506582efa5decaa84cc49e2105","impliedFormat":1},{"version":"2c83b4ec0eae2f8dd6470367bbebcce3254fb3eace0da824a6262d74a3a50b37","impliedFormat":1},{"version":"f54a28dd5bb4db5bac1ab9eb8f8a1a031f2a85fc426bf480e70d601bd274fdd0","signature":"ac62f6b0f2e963ea9a251ee8384e64cebe0fe4acd32ca177d838d7c5a7ad2b43","impliedFormat":99},{"version":"fdd1b5a8a2b98f82c94e4dc4e3b207ca81766b656d23acd3c7458fffd9af21dd","impliedFormat":99}],"root":[[61,66],126,127],"options":{"composite":true,"declaration":true,"declarationMap":true,"exactOptionalPropertyTypes":true,"module":199,"noUncheckedIndexedAccess":true,"outDir":"./","rootDir":"../src","skipLibCheck":true,"sourceMap":true,"strict":true,"target":9,"tsBuildInfoFile":"./.tsbuildinfo","verbatimModuleSyntax":true},"referencedMap":[[125,1],[73,2],[121,3],[120,4],[104,5],[105,6],[124,7],[122,3],[101,8],[114,9],[110,10],[115,11],[111,12],[113,13],[70,14],[69,15],[71,16],[93,17],[91,18],[92,19],[90,20],[89,21],[100,22],[118,23],[79,24],[98,25],[102,26],[75,27],[76,26],[77,28],[85,29],[84,30],[83,26],[82,31],[86,32],[117,33],[108,34],[109,35],[116,36],[103,37],[96,38],[95,39],[62,40],[64,41],[63,40],[127,42],[66,43],[126,44],[65,43],[61,45]],"latestChangedDtsFile":"./index.d.ts","version":"5.9.3"}
package/dist/index.d.ts CHANGED
@@ -6,4 +6,5 @@ export * from "./auth.js";
6
6
  export * from "./client.js";
7
7
  export * from "./resource.js";
8
8
  export * from "./openapi.js";
9
+ export * from "./realtime.js";
9
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,OAAO,CAAC;AACzC,mBAAmB,OAAO,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,OAAO,CAAC;AACzC,mBAAmB,OAAO,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC"}
package/dist/index.js CHANGED
@@ -5,4 +5,5 @@ export * from "./auth.js";
5
5
  export * from "./client.js";
6
6
  export * from "./resource.js";
7
7
  export * from "./openapi.js";
8
+ export * from "./realtime.js";
8
9
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,OAAO,CAAC;AAEzC,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,OAAO,CAAC;AAEzC,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC"}
@@ -0,0 +1,38 @@
1
+ /** Browser-safe configuration returned by a Faiber service; never include an app secret. */
2
+ export interface RealtimeConfig {
3
+ ws_url: string;
4
+ app_key: string;
5
+ channel: string;
6
+ }
7
+ export interface RealtimeAuthorizationInput {
8
+ [key: string]: string;
9
+ socket_id: string;
10
+ channel_name: string;
11
+ }
12
+ export interface RealtimeAuthorization {
13
+ auth: string;
14
+ }
15
+ export interface RealtimeEvent {
16
+ event: string;
17
+ data: unknown;
18
+ }
19
+ export interface RealtimeSubscriptionOptions {
20
+ config: RealtimeConfig;
21
+ /** Authorize through the service's FaiberClient operation using the current user's credentials. */
22
+ authorize(input: RealtimeAuthorizationInput): Promise<RealtimeAuthorization>;
23
+ /** Events are invalidation hints. Reload authoritative records through the service SDK. */
24
+ onEvent(event: RealtimeEvent): void;
25
+ /** Called after every successful subscription, including reconnects, to recover missed updates. */
26
+ onSubscribed?(): void;
27
+ onError?(error: Error): void;
28
+ }
29
+ export interface RealtimeSubscription {
30
+ close(): void;
31
+ }
32
+ /**
33
+ * Subscribe to a private Sockudo channel using the Pusher-compatible protocol.
34
+ * Authorization runs again on reconnect. The connection handles heartbeat and retry;
35
+ * call close on logout/unmount. HTTPS pages require WSS. HTTP reads remain authoritative.
36
+ */
37
+ export declare function subscribeRealtime(options: RealtimeSubscriptionOptions): RealtimeSubscription;
38
+ //# sourceMappingURL=realtime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"realtime.d.ts","sourceRoot":"","sources":["../src/realtime.ts"],"names":[],"mappings":"AAUA,4FAA4F;AAC5F,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CACjB;AACD,MAAM,WAAW,0BAA0B;IAAG,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE;AAC9G,MAAM,WAAW,qBAAqB;IAAG,IAAI,EAAE,MAAM,CAAA;CAAE;AACvD,MAAM,WAAW,aAAa;IAAG,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,OAAO,CAAA;CAAE;AAC/D,MAAM,WAAW,2BAA2B;IAC1C,MAAM,EAAE,cAAc,CAAC;IACvB,mGAAmG;IACnG,SAAS,CAAC,KAAK,EAAE,0BAA0B,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAC;IAC7E,2FAA2F;IAC3F,OAAO,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI,CAAC;IACpC,mGAAmG;IACnG,YAAY,CAAC,IAAI,IAAI,CAAC;IACtB,OAAO,CAAC,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;CAC9B;AACD,MAAM,WAAW,oBAAoB;IAAG,KAAK,IAAI,IAAI,CAAA;CAAE;AAEvD;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,2BAA2B,GAAG,oBAAoB,CAwC5F"}
@@ -0,0 +1,55 @@
1
+ import PusherModule, {} from "pusher-js";
2
+ // pusher-js exposes a CommonJS constructor; its default type is ambiguous under NodeNext.
3
+ const Pusher = PusherModule;
4
+ /**
5
+ * Subscribe to a private Sockudo channel using the Pusher-compatible protocol.
6
+ * Authorization runs again on reconnect. The connection handles heartbeat and retry;
7
+ * call close on logout/unmount. HTTPS pages require WSS. HTTP reads remain authoritative.
8
+ */
9
+ export function subscribeRealtime(options) {
10
+ const { config } = options;
11
+ const url = new URL(config.ws_url);
12
+ if (!["wss:", "ws:"].includes(url.protocol) || url.username || url.password || url.search || url.hash
13
+ || (typeof location !== "undefined" && location.protocol === "https:" && url.protocol !== "wss:")) {
14
+ throw new Error("Invalid Sockudo WebSocket URL");
15
+ }
16
+ if (!config.app_key || !config.channel.startsWith("private-"))
17
+ throw new Error("A private realtime channel is required");
18
+ let closed = false;
19
+ const connection = new Pusher(config.app_key, {
20
+ cluster: "faiber", wsHost: url.hostname,
21
+ wsPort: Number(url.port || 80), wssPort: Number(url.port || 443),
22
+ wsPath: url.pathname.replace(/\/$/, ""), forceTLS: url.protocol === "wss:",
23
+ enabledTransports: ["ws", "wss"], disableStats: true,
24
+ channelAuthorization: {
25
+ transport: "ajax", endpoint: "",
26
+ customHandler: (params, callback) => {
27
+ void options.authorize({ socket_id: params.socketId, channel_name: params.channelName }).then(result => { if (!closed)
28
+ callback(null, result); }, error => { if (!closed)
29
+ callback(error instanceof Error ? error : new Error("Realtime authorization failed"), null); });
30
+ },
31
+ },
32
+ });
33
+ const channel = connection.subscribe(config.channel);
34
+ channel.bind("pusher:subscription_succeeded", () => { if (!closed)
35
+ options.onSubscribed?.(); });
36
+ channel.bind("pusher:subscription_error", () => { if (!closed)
37
+ options.onError?.(new Error("Realtime subscription failed")); });
38
+ channel.bind_global((event, data) => {
39
+ if (!closed && !event.startsWith("pusher:"))
40
+ options.onEvent({ event, data });
41
+ });
42
+ connection.connection.bind("error", () => { if (!closed)
43
+ options.onError?.(new Error("Realtime connection unavailable")); });
44
+ return { close() {
45
+ if (closed)
46
+ return;
47
+ closed = true;
48
+ channel.unbind_all();
49
+ channel.unbind_global();
50
+ connection.unsubscribe(config.channel);
51
+ connection.connection.unbind_all();
52
+ connection.disconnect();
53
+ } };
54
+ }
55
+ //# sourceMappingURL=realtime.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"realtime.js","sourceRoot":"","sources":["../src/realtime.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,EAAE,EAAsD,MAAM,WAAW,CAAC;AAE7F,0FAA0F;AAC1F,MAAM,MAAM,GAAG,YAKd,CAAC;AAuBF;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAoC;IACpE,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IAC3B,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACnC,IAAI,CAAC,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,IAAI;WAC9F,CAAC,OAAO,QAAQ,KAAK,WAAW,IAAI,QAAQ,CAAC,QAAQ,KAAK,QAAQ,IAAI,GAAG,CAAC,QAAQ,KAAK,MAAM,CAAC,EAAE,CAAC;QACtG,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACnD,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;IACzH,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,MAAM,UAAU,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE;QAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,CAAC,QAAQ;QACvC,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC;QAChE,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,KAAK,MAAM;QAC1E,iBAAiB,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,YAAY,EAAE,IAAI;QACpD,oBAAoB,EAAE;YACpB,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE;YAC/B,aAAa,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE;gBAClC,KAAK,OAAO,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,QAAQ,EAAE,YAAY,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,IAAI,CAC3F,MAAM,CAAC,EAAE,GAAG,IAAI,CAAC,MAAM;oBAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAClD,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC,MAAM;oBAAE,QAAQ,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,+BAA+B,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CACvH,CAAC;YACJ,CAAC;SACF;KACF,CAAC,CAAC;IACH,MAAM,OAAO,GAAG,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACrD,OAAO,CAAC,IAAI,CAAC,+BAA+B,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM;QAAE,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAChG,OAAO,CAAC,IAAI,CAAC,2BAA2B,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM;QAAE,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAChI,OAAO,CAAC,WAAW,CAAC,CAAC,KAAa,EAAE,IAAa,EAAE,EAAE;QACnD,IAAI,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC;YAAE,OAAO,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAChF,CAAC,CAAC,CAAC;IACH,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM;QAAE,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7H,OAAO,EAAE,KAAK;YACZ,IAAI,MAAM;gBAAE,OAAO;YACnB,MAAM,GAAG,IAAI,CAAC;YACd,OAAO,CAAC,UAAU,EAAE,CAAC;YACrB,OAAO,CAAC,aAAa,EAAE,CAAC;YACxB,UAAU,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YACvC,UAAU,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC;YACnC,UAAU,CAAC,UAAU,EAAE,CAAC;QAC1B,CAAC,EAAE,CAAC;AACN,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@faiber/sdk-core",
3
- "version": "0.12.0",
3
+ "version": "0.13.0",
4
4
  "type": "module",
5
5
  "sideEffects": false,
6
6
  "main": "./dist/index.js",
@@ -16,6 +16,7 @@
16
16
  "README.md"
17
17
  ],
18
18
  "dependencies": {
19
- "axios": "^1.18.1"
19
+ "axios": "^1.18.1",
20
+ "pusher-js": "^8.4.0"
20
21
  }
21
22
  }