@mtcute/core 0.16.1 → 0.16.4

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.
Files changed (52) hide show
  1. package/README.md +2 -3
  2. package/cjs/highlevel/client.d.ts +1 -0
  3. package/cjs/highlevel/client.js.map +1 -1
  4. package/cjs/highlevel/methods/auth/run.d.ts +1 -0
  5. package/cjs/highlevel/methods/auth/run.js +1 -0
  6. package/cjs/highlevel/methods/auth/run.js.map +1 -1
  7. package/cjs/highlevel/methods/files/normalize-input-media.js +1 -1
  8. package/cjs/highlevel/methods/files/normalize-input-media.js.map +1 -1
  9. package/cjs/highlevel/types/media/video.d.ts +1 -0
  10. package/cjs/highlevel/types/media/video.js +3 -0
  11. package/cjs/highlevel/types/media/video.js.map +1 -1
  12. package/cjs/highlevel/types/messages/message-action.d.ts +15 -1
  13. package/cjs/highlevel/types/messages/message-action.js +9 -0
  14. package/cjs/highlevel/types/messages/message-action.js.map +1 -1
  15. package/cjs/highlevel/types/peers/user.d.ts +4 -0
  16. package/cjs/highlevel/types/peers/user.js +8 -0
  17. package/cjs/highlevel/types/peers/user.js.map +1 -1
  18. package/cjs/highlevel/types/stories/interactive/index.d.ts +3 -2
  19. package/cjs/highlevel/types/stories/interactive/index.js +5 -1
  20. package/cjs/highlevel/types/stories/interactive/index.js.map +1 -1
  21. package/cjs/highlevel/types/stories/interactive/weather.d.ts +15 -0
  22. package/cjs/highlevel/types/stories/interactive/weather.js +30 -0
  23. package/cjs/highlevel/types/stories/interactive/weather.js.map +1 -0
  24. package/cjs/highlevel/worker/protocol.js +4 -0
  25. package/cjs/highlevel/worker/protocol.js.map +1 -1
  26. package/cjs/network/network-manager.js +1 -1
  27. package/esm/highlevel/client.d.ts +1 -0
  28. package/esm/highlevel/client.js.map +1 -1
  29. package/esm/highlevel/methods/auth/run.d.ts +1 -0
  30. package/esm/highlevel/methods/auth/run.js +1 -0
  31. package/esm/highlevel/methods/auth/run.js.map +1 -1
  32. package/esm/highlevel/methods/files/normalize-input-media.js +1 -1
  33. package/esm/highlevel/methods/files/normalize-input-media.js.map +1 -1
  34. package/esm/highlevel/types/media/video.d.ts +1 -0
  35. package/esm/highlevel/types/media/video.js +3 -0
  36. package/esm/highlevel/types/media/video.js.map +1 -1
  37. package/esm/highlevel/types/messages/message-action.d.ts +15 -1
  38. package/esm/highlevel/types/messages/message-action.js +9 -0
  39. package/esm/highlevel/types/messages/message-action.js.map +1 -1
  40. package/esm/highlevel/types/peers/user.d.ts +4 -0
  41. package/esm/highlevel/types/peers/user.js +8 -0
  42. package/esm/highlevel/types/peers/user.js.map +1 -1
  43. package/esm/highlevel/types/stories/interactive/index.d.ts +3 -2
  44. package/esm/highlevel/types/stories/interactive/index.js +4 -1
  45. package/esm/highlevel/types/stories/interactive/index.js.map +1 -1
  46. package/esm/highlevel/types/stories/interactive/weather.d.ts +15 -0
  47. package/esm/highlevel/types/stories/interactive/weather.js +27 -0
  48. package/esm/highlevel/types/stories/interactive/weather.js.map +1 -0
  49. package/esm/highlevel/worker/protocol.js +4 -0
  50. package/esm/highlevel/worker/protocol.js.map +1 -1
  51. package/esm/network/network-manager.js +1 -1
  52. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/highlevel/types/stories/interactive/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAEA,2DAAkE;AAElE,uDAA+D;AAQ3D,4GARK,6CAA2B,OAQL;AAP/B,+CAAwD;AAQpD,yGARK,sCAAwB,OAQL;AAP5B,+CAAwD;AAQpD,yGARK,sCAAwB,OAQL;AAP5B,qCAA8C;AAQ1C,oGARK,4BAAmB,OAQL;AAPvB,yCAAkD;AAQ9C,sGARK,gCAAqB,OAQL;AANzB,6CAA0B;AAgB1B,SAAgB,8BAA8B,CAAC,GAAqB,EAAE,KAAiB;IACnF,QAAQ,GAAG,CAAC,CAAC,EAAE,CAAC;QACZ,KAAK,4BAA4B;YAC7B,OAAO,IAAI,sCAAwB,CAAC,GAAG,CAAC,CAAA;QAC5C,KAAK,mBAAmB;YACpB,OAAO,IAAI,sCAAwB,CAAC,GAAG,CAAC,CAAA;QAC5C,KAAK,gBAAgB;YACjB,OAAO,IAAI,gCAAqB,CAAC,GAAG,CAAC,CAAA;QACzC,KAAK,sBAAsB;YACvB,OAAO,IAAI,6CAA2B,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;QACtD,KAAK,cAAc;YACf,OAAO,IAAI,4BAAmB,CAAC,GAAG,CAAC,CAAA;QACvC,KAAK,qBAAqB,CAAC;QAC3B,KAAK,2BAA2B;YAC5B,MAAM,IAAI,gCAAoB,CAAC,yBAAyB,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC,CAAA;IACnF,CAAC;AACL,CAAC;AAhBD,wEAgBC","sourcesContent":["import { tl } from '@mtcute/tl'\n\nimport { MtTypeAssertionError } from '../../../../types/errors.js'\nimport { PeersIndex } from '../../peers/index.js'\nimport { StoryInteractiveChannelPost } from './channel-post.js'\nimport { StoryInteractiveLocation } from './location.js'\nimport { StoryInteractiveReaction } from './reaction.js'\nimport { StoryInteractiveUrl } from './url.js'\nimport { StoryInteractiveVenue } from './venue.js'\n\nexport * from './input.js'\nexport {\n StoryInteractiveChannelPost,\n StoryInteractiveLocation,\n StoryInteractiveReaction,\n StoryInteractiveUrl,\n StoryInteractiveVenue,\n}\n\nexport type StoryInteractiveElement =\n | StoryInteractiveReaction\n | StoryInteractiveLocation\n | StoryInteractiveVenue\n | StoryInteractiveChannelPost\n | StoryInteractiveUrl\n\nexport function _storyInteractiveElementFromTl(raw: tl.TypeMediaArea, peers: PeersIndex): StoryInteractiveElement {\n switch (raw._) {\n case 'mediaAreaSuggestedReaction':\n return new StoryInteractiveReaction(raw)\n case 'mediaAreaGeoPoint':\n return new StoryInteractiveLocation(raw)\n case 'mediaAreaVenue':\n return new StoryInteractiveVenue(raw)\n case 'mediaAreaChannelPost':\n return new StoryInteractiveChannelPost(raw, peers)\n case 'mediaAreaUrl':\n return new StoryInteractiveUrl(raw)\n case 'inputMediaAreaVenue':\n case 'inputMediaAreaChannelPost':\n throw new MtTypeAssertionError('StoryInteractiveElement', '!input*', raw._)\n }\n}\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/highlevel/types/stories/interactive/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAEA,2DAAkE;AAElE,uDAA+D;AAS3D,4GATK,6CAA2B,OASL;AAR/B,+CAAwD;AASpD,yGATK,sCAAwB,OASL;AAR5B,+CAAwD;AASpD,yGATK,sCAAwB,OASL;AAR5B,qCAA8C;AAS1C,oGATK,4BAAmB,OASL;AARvB,yCAAkD;AAS9C,sGATK,gCAAqB,OASL;AARzB,6CAAsD;AASlD,wGATK,oCAAuB,OASL;AAP3B,6CAA0B;AAkB1B,SAAgB,8BAA8B,CAAC,GAAqB,EAAE,KAAiB;IACnF,QAAQ,GAAG,CAAC,CAAC,EAAE,CAAC;QACZ,KAAK,4BAA4B;YAC7B,OAAO,IAAI,sCAAwB,CAAC,GAAG,CAAC,CAAA;QAC5C,KAAK,mBAAmB;YACpB,OAAO,IAAI,sCAAwB,CAAC,GAAG,CAAC,CAAA;QAC5C,KAAK,gBAAgB;YACjB,OAAO,IAAI,gCAAqB,CAAC,GAAG,CAAC,CAAA;QACzC,KAAK,sBAAsB;YACvB,OAAO,IAAI,6CAA2B,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;QACtD,KAAK,cAAc;YACf,OAAO,IAAI,4BAAmB,CAAC,GAAG,CAAC,CAAA;QACvC,KAAK,kBAAkB;YACnB,OAAO,IAAI,oCAAuB,CAAC,GAAG,CAAC,CAAA;QAC3C,KAAK,qBAAqB,CAAC;QAC3B,KAAK,2BAA2B;YAC5B,MAAM,IAAI,gCAAoB,CAAC,yBAAyB,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC,CAAA;IACnF,CAAC;AACL,CAAC;AAlBD,wEAkBC","sourcesContent":["import { tl } from '@mtcute/tl'\n\nimport { MtTypeAssertionError } from '../../../../types/errors.js'\nimport { PeersIndex } from '../../peers/index.js'\nimport { StoryInteractiveChannelPost } from './channel-post.js'\nimport { StoryInteractiveLocation } from './location.js'\nimport { StoryInteractiveReaction } from './reaction.js'\nimport { StoryInteractiveUrl } from './url.js'\nimport { StoryInteractiveVenue } from './venue.js'\nimport { StoryInteractiveWeather } from './weather.js'\n\nexport * from './input.js'\nexport {\n StoryInteractiveChannelPost,\n StoryInteractiveLocation,\n StoryInteractiveReaction,\n StoryInteractiveUrl,\n StoryInteractiveVenue,\n StoryInteractiveWeather,\n}\n\nexport type StoryInteractiveElement =\n | StoryInteractiveReaction\n | StoryInteractiveLocation\n | StoryInteractiveVenue\n | StoryInteractiveChannelPost\n | StoryInteractiveUrl\n | StoryInteractiveWeather\n\nexport function _storyInteractiveElementFromTl(raw: tl.TypeMediaArea, peers: PeersIndex): StoryInteractiveElement {\n switch (raw._) {\n case 'mediaAreaSuggestedReaction':\n return new StoryInteractiveReaction(raw)\n case 'mediaAreaGeoPoint':\n return new StoryInteractiveLocation(raw)\n case 'mediaAreaVenue':\n return new StoryInteractiveVenue(raw)\n case 'mediaAreaChannelPost':\n return new StoryInteractiveChannelPost(raw, peers)\n case 'mediaAreaUrl':\n return new StoryInteractiveUrl(raw)\n case 'mediaAreaWeather':\n return new StoryInteractiveWeather(raw)\n case 'inputMediaAreaVenue':\n case 'inputMediaAreaChannelPost':\n throw new MtTypeAssertionError('StoryInteractiveElement', '!input*', raw._)\n }\n}\n"]}
@@ -0,0 +1,15 @@
1
+ import { tl } from '@mtcute/tl';
2
+ import { StoryInteractiveArea } from './base.js';
3
+ /**
4
+ * Interactive element containing a weather info
5
+ */
6
+ export declare class StoryInteractiveWeather extends StoryInteractiveArea {
7
+ readonly raw: tl.RawMediaAreaWeather;
8
+ readonly type: "weather";
9
+ constructor(raw: tl.RawMediaAreaWeather);
10
+ /** Emoji representing the weather */
11
+ get emoji(): string;
12
+ /** Temperature in Celsius */
13
+ get temperature(): number;
14
+ get color(): number;
15
+ }
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.StoryInteractiveWeather = void 0;
4
+ const index_js_1 = require("../../../utils/index.js");
5
+ const base_js_1 = require("./base.js");
6
+ /**
7
+ * Interactive element containing a weather info
8
+ */
9
+ class StoryInteractiveWeather extends base_js_1.StoryInteractiveArea {
10
+ raw;
11
+ type = 'weather';
12
+ constructor(raw) {
13
+ super(raw);
14
+ this.raw = raw;
15
+ }
16
+ /** Emoji representing the weather */
17
+ get emoji() {
18
+ return this.raw.emoji;
19
+ }
20
+ /** Temperature in Celsius */
21
+ get temperature() {
22
+ return this.raw.temperatureC;
23
+ }
24
+ get color() {
25
+ return this.raw.color;
26
+ }
27
+ }
28
+ exports.StoryInteractiveWeather = StoryInteractiveWeather;
29
+ (0, index_js_1.makeInspectable)(StoryInteractiveWeather);
30
+ //# sourceMappingURL=weather.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"weather.js","sourceRoot":"","sources":["../../../../../../src/highlevel/types/stories/interactive/weather.ts"],"names":[],"mappings":";;;AAEA,sDAAyD;AACzD,uCAAgD;AAEhD;;GAEG;AACH,MAAa,uBAAwB,SAAQ,8BAAoB;IAGxC;IAFZ,IAAI,GAAG,SAAkB,CAAA;IAElC,YAAqB,GAA2B;QAC5C,KAAK,CAAC,GAAG,CAAC,CAAA;QADO,QAAG,GAAH,GAAG,CAAwB;IAEhD,CAAC;IAED,qCAAqC;IACrC,IAAI,KAAK;QACL,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,CAAA;IACzB,CAAC;IAED,6BAA6B;IAC7B,IAAI,WAAW;QACX,OAAO,IAAI,CAAC,GAAG,CAAC,YAAY,CAAA;IAChC,CAAC;IAED,IAAI,KAAK;QACL,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,CAAA;IACzB,CAAC;CACJ;AApBD,0DAoBC;AAED,IAAA,0BAAe,EAAC,uBAAuB,CAAC,CAAA","sourcesContent":["import { tl } from '@mtcute/tl'\n\nimport { makeInspectable } from '../../../utils/index.js'\nimport { StoryInteractiveArea } from './base.js'\n\n/**\n * Interactive element containing a weather info\n */\nexport class StoryInteractiveWeather extends StoryInteractiveArea {\n readonly type = 'weather' as const\n\n constructor(readonly raw: tl.RawMediaAreaWeather) {\n super(raw)\n }\n\n /** Emoji representing the weather */\n get emoji(): string {\n return this.raw.emoji\n }\n\n /** Temperature in Celsius */\n get temperature(): number {\n return this.raw.temperatureC\n }\n\n get color(): number {\n return this.raw.color\n }\n}\n\nmakeInspectable(StoryInteractiveWeather)\n"]}
@@ -6,6 +6,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.deserializeResult = exports.serializeResult = void 0;
7
7
  const long_1 = __importDefault(require("long"));
8
8
  function serializeResult(result) {
9
+ if (ArrayBuffer.isView(result))
10
+ return result;
9
11
  if (Array.isArray(result)) {
10
12
  return result.map(serializeResult);
11
13
  }
@@ -42,6 +44,8 @@ function serializeResult(result) {
42
44
  }
43
45
  exports.serializeResult = serializeResult;
44
46
  function deserializeResult(result) {
47
+ if (ArrayBuffer.isView(result))
48
+ return result;
45
49
  if (Array.isArray(result)) {
46
50
  return result.map(deserializeResult);
47
51
  }
@@ -1 +1 @@
1
- {"version":3,"file":"protocol.js","sourceRoot":"","sources":["../../../../src/highlevel/worker/protocol.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAuB;AA+DvB,SAAgB,eAAe,CAAI,MAAS;IACxC,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QACxB,OAAO,MAAM,CAAC,GAAG,CAAC,eAAe,CAAmC,CAAA;IACxE,CAAC;IAED,IAAI,MAAM,YAAY,GAAG,EAAE,CAAC;QACxB,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC;YAC1C,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,eAAe,CAAC,KAAK,CAAC,CAAC,CAAA;QAC3C,CAAC;QAED,OAAO,MAAwC,CAAA;IACnD,CAAC;IAED,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QACvC,+CAA+C;QAC/C,MAAM,SAAS,GAA4B,EAAE,CAAA;QAE7C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YAChD,IAAI,cAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;gBACrB,2BAA2B;gBAC3B,SAAS,CAAC,GAAG,CAAC,GAAG;oBACb,MAAM,EAAE,MAAM;oBACd,GAAG,EAAE,KAAK,CAAC,GAAG;oBACd,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,QAAQ,EAAE,KAAK,CAAC,QAAQ;iBAC3B,CAAA;YACL,CAAC;iBAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBACnC,2BAA2B;gBAC3B,SAAS,CAAC,GAAG,CAAC,GAAG,eAAe,CAAC,KAAK,CAAC,CAAA;YAC3C,CAAC;iBAAM,CAAC;gBACJ,SAAS,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;YAC1B,CAAC;QACL,CAAC;QAED,OAAO,SAA2C,CAAA;IACtD,CAAC;IAED,OAAO,MAAwC,CAAA;AACnD,CAAC;AAtCD,0CAsCC;AAED,SAAgB,iBAAiB,CAAI,MAA2B;IAC5D,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QACxB,OAAO,MAAM,CAAC,GAAG,CAAC,iBAAiB,CAAiB,CAAA;IACxD,CAAC;IAED,IAAI,MAAM,YAAY,GAAG,EAAE,CAAC;QACxB,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC;YAC1C,iEAAiE;YACjE,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAA;QAC7C,CAAC;QAED,OAAO,MAAsB,CAAA;IACjC,CAAC;IAED,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QACvC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YAChD,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAK,KAAgC,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;gBAC5F,2BAA2B;gBAC3B,CAAC;gBAAC,MAAc,CAAC,GAAG,CAAC,GAAG,cAAI,CAAC,SAAS,CAAC,KAAwB,CAAC,CAAA;YACpE,CAAC;iBAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBACnC,2BAA2B;gBAC3B,CAAC;gBAAC,MAAc,CAAC,GAAG,CAAC,GAAG,iBAAiB,CAAC,KAAkC,CAAC,CAAA;YACjF,CAAC;QACL,CAAC;IACL,CAAC;IAED,OAAO,MAAsB,CAAA;AACjC,CAAC;AA3BD,8CA2BC","sourcesContent":["import Long from 'long'\nimport type { Worker as NodeWorker } from 'node:worker_threads'\n\nimport { tl } from '@mtcute/tl'\n\nimport { ConnectionState } from '../client.types.js'\nimport { SerializedError } from './errors.js'\n\nexport type WorkerInboundMessage =\n | {\n type: 'invoke'\n id: number\n target: 'custom' | 'client' | 'storage' | 'storage-self' | 'storage-peers' | 'app-config'\n method: string\n args: SerializedResult<unknown[]>\n void: boolean\n withAbort: boolean\n }\n | {\n type: 'abort'\n id: number\n }\n\nexport type WorkerOutboundMessage =\n | { type: 'server_update'; update: SerializedResult<tl.TypeUpdates> }\n | {\n type: 'update'\n update: SerializedResult<tl.TypeUpdate>\n users: SerializedResult<Map<number, tl.TypeUser>>\n chats: SerializedResult<Map<number, tl.TypeChat>>\n hasMin: boolean\n }\n | { type: 'error'; error: unknown }\n | { type: 'stop' }\n | { type: 'conn_state'; state: ConnectionState }\n | {\n type: 'log'\n color: number\n level: number\n tag: string\n fmt: string\n args: unknown[]\n }\n | {\n type: 'result'\n id: number\n result?: SerializedResult<unknown>\n error?: SerializedError\n }\n\nexport type SomeWorker = NodeWorker | Worker | SharedWorker\n\nexport type SendFn = (message: WorkerInboundMessage) => void\nexport type ClientMessageHandler = (message: WorkerOutboundMessage) => void\n\nexport type RespondFn = (message: WorkerOutboundMessage) => void\nexport type WorkerMessageHandler = (message: WorkerInboundMessage, respond: RespondFn) => void\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport type WorkerCustomMethods = Record<string, (...args: any[]) => Promise<any>>\n\nexport type SerializedResult<T> = { __serialized__: T }\n\nexport function serializeResult<T>(result: T): SerializedResult<T> {\n if (Array.isArray(result)) {\n return result.map(serializeResult) as unknown as SerializedResult<T>\n }\n\n if (result instanceof Map) {\n for (const [key, value] of result.entries()) {\n result.set(key, serializeResult(value))\n }\n\n return result as unknown as SerializedResult<T>\n }\n\n if (result && typeof result === 'object') {\n // replace Long instances with a special object\n const newResult: Record<string, unknown> = {}\n\n for (const [key, value] of Object.entries(result)) {\n if (Long.isLong(value)) {\n // eslint-disable-next-line\n newResult[key] = {\n __type: 'long',\n low: value.low,\n high: value.high,\n unsigned: value.unsigned,\n }\n } else if (typeof value === 'object') {\n // eslint-disable-next-line\n newResult[key] = serializeResult(value)\n } else {\n newResult[key] = value\n }\n }\n\n return newResult as unknown as SerializedResult<T>\n }\n\n return result as unknown as SerializedResult<T>\n}\n\nexport function deserializeResult<T>(result: SerializedResult<T>): T {\n if (Array.isArray(result)) {\n return result.map(deserializeResult) as unknown as T\n }\n\n if (result instanceof Map) {\n for (const [key, value] of result.entries()) {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-argument\n result.set(key, deserializeResult(value))\n }\n\n return result as unknown as T\n }\n\n if (result && typeof result === 'object') {\n for (const [key, value] of Object.entries(result)) {\n if (value && typeof value === 'object' && (value as Record<string, string>).__type === 'long') {\n // eslint-disable-next-line\n ;(result as any)[key] = Long.fromValue(value as unknown as Long)\n } else if (typeof value === 'object') {\n // eslint-disable-next-line\n ;(result as any)[key] = deserializeResult(value as SerializedResult<unknown>)\n }\n }\n }\n\n return result as unknown as T\n}\n"]}
1
+ {"version":3,"file":"protocol.js","sourceRoot":"","sources":["../../../../src/highlevel/worker/protocol.ts"],"names":[],"mappings":"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","sourcesContent":["import Long from 'long'\nimport type { Worker as NodeWorker } from 'node:worker_threads'\n\nimport { tl } from '@mtcute/tl'\n\nimport { ConnectionState } from '../client.types.js'\nimport { SerializedError } from './errors.js'\n\nexport type WorkerInboundMessage =\n | {\n type: 'invoke'\n id: number\n target: 'custom' | 'client' | 'storage' | 'storage-self' | 'storage-peers' | 'app-config'\n method: string\n args: SerializedResult<unknown[]>\n void: boolean\n withAbort: boolean\n }\n | {\n type: 'abort'\n id: number\n }\n\nexport type WorkerOutboundMessage =\n | { type: 'server_update'; update: SerializedResult<tl.TypeUpdates> }\n | {\n type: 'update'\n update: SerializedResult<tl.TypeUpdate>\n users: SerializedResult<Map<number, tl.TypeUser>>\n chats: SerializedResult<Map<number, tl.TypeChat>>\n hasMin: boolean\n }\n | { type: 'error'; error: unknown }\n | { type: 'stop' }\n | { type: 'conn_state'; state: ConnectionState }\n | {\n type: 'log'\n color: number\n level: number\n tag: string\n fmt: string\n args: unknown[]\n }\n | {\n type: 'result'\n id: number\n result?: SerializedResult<unknown>\n error?: SerializedError\n }\n\nexport type SomeWorker = NodeWorker | Worker | SharedWorker\n\nexport type SendFn = (message: WorkerInboundMessage) => void\nexport type ClientMessageHandler = (message: WorkerOutboundMessage) => void\n\nexport type RespondFn = (message: WorkerOutboundMessage) => void\nexport type WorkerMessageHandler = (message: WorkerInboundMessage, respond: RespondFn) => void\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport type WorkerCustomMethods = Record<string, (...args: any[]) => Promise<any>>\n\nexport type SerializedResult<T> = { __serialized__: T }\n\nexport function serializeResult<T>(result: T): SerializedResult<T> {\n if (ArrayBuffer.isView(result)) return result as unknown as SerializedResult<T>\n\n if (Array.isArray(result)) {\n return result.map(serializeResult) as unknown as SerializedResult<T>\n }\n\n if (result instanceof Map) {\n for (const [key, value] of result.entries()) {\n result.set(key, serializeResult(value))\n }\n\n return result as unknown as SerializedResult<T>\n }\n\n if (result && typeof result === 'object') {\n // replace Long instances with a special object\n const newResult: Record<string, unknown> = {}\n\n for (const [key, value] of Object.entries(result)) {\n if (Long.isLong(value)) {\n // eslint-disable-next-line\n newResult[key] = {\n __type: 'long',\n low: value.low,\n high: value.high,\n unsigned: value.unsigned,\n }\n } else if (typeof value === 'object') {\n // eslint-disable-next-line\n newResult[key] = serializeResult(value)\n } else {\n newResult[key] = value\n }\n }\n\n return newResult as unknown as SerializedResult<T>\n }\n\n return result as unknown as SerializedResult<T>\n}\n\nexport function deserializeResult<T>(result: SerializedResult<T>): T {\n if (ArrayBuffer.isView(result)) return result as unknown as T\n\n if (Array.isArray(result)) {\n return result.map(deserializeResult) as unknown as T\n }\n\n if (result instanceof Map) {\n for (const [key, value] of result.entries()) {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-argument\n result.set(key, deserializeResult(value))\n }\n\n return result as unknown as T\n }\n\n if (result && typeof result === 'object') {\n for (const [key, value] of Object.entries(result)) {\n if (value && typeof value === 'object' && (value as Record<string, string>).__type === 'long') {\n // eslint-disable-next-line\n ;(result as any)[key] = Long.fromValue(value as unknown as Long)\n } else if (typeof value === 'object') {\n // eslint-disable-next-line\n ;(result as any)[key] = deserializeResult(value as SerializedResult<unknown>)\n }\n }\n }\n\n return result as unknown as T\n}\n"]}
@@ -259,7 +259,7 @@ class NetworkManager {
259
259
  _: 'initConnection',
260
260
  deviceModel,
261
261
  systemVersion: '1.0',
262
- appVersion: '0.16.1',
262
+ appVersion: '0.16.4',
263
263
  systemLangCode: 'en',
264
264
  langPack: '', // "langPacks are for official apps only"
265
265
  langCode: 'en',
@@ -357,6 +357,7 @@ export interface TelegramClient extends ITelegramClient {
357
357
  *
358
358
  * @param params Parameters to be passed to {@link start}
359
359
  * @param then Function to be called after {@link start} returns
360
+ * @deprecated This method provides no real value over {@link start}, please use it instead
360
361
  */
361
362
  run(params: Parameters<typeof start>[1], then?: (user: User) => void | Promise<void>): void;
362
363
  /**