library.dr-conversion 0.1.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.
Files changed (78) hide show
  1. package/API.md +592 -0
  2. package/CHANGELOG.md +96 -0
  3. package/LICENSE +21 -0
  4. package/README.md +445 -0
  5. package/cli.js +186 -0
  6. package/dist/client.d.ts +31 -0
  7. package/dist/client.d.ts.map +1 -0
  8. package/dist/client.js +99 -0
  9. package/dist/client.js.map +1 -0
  10. package/dist/index.d.ts +14 -0
  11. package/dist/index.d.ts.map +1 -0
  12. package/dist/index.js +37 -0
  13. package/dist/index.js.map +1 -0
  14. package/dist/providers/base.d.ts +33 -0
  15. package/dist/providers/base.d.ts.map +1 -0
  16. package/dist/providers/base.js +64 -0
  17. package/dist/providers/base.js.map +1 -0
  18. package/dist/providers/discord/converters.d.ts +39 -0
  19. package/dist/providers/discord/converters.d.ts.map +1 -0
  20. package/dist/providers/discord/converters.js +471 -0
  21. package/dist/providers/discord/converters.js.map +1 -0
  22. package/dist/providers/discord/provider.d.ts +26 -0
  23. package/dist/providers/discord/provider.d.ts.map +1 -0
  24. package/dist/providers/discord/provider.js +336 -0
  25. package/dist/providers/discord/provider.js.map +1 -0
  26. package/dist/providers/discord/types.d.ts +11 -0
  27. package/dist/providers/discord/types.d.ts.map +1 -0
  28. package/dist/providers/discord/types.js +24 -0
  29. package/dist/providers/discord/types.js.map +1 -0
  30. package/dist/providers/root/converters.d.ts +13 -0
  31. package/dist/providers/root/converters.d.ts.map +1 -0
  32. package/dist/providers/root/converters.js +215 -0
  33. package/dist/providers/root/converters.js.map +1 -0
  34. package/dist/providers/root/http-client.d.ts +15 -0
  35. package/dist/providers/root/http-client.d.ts.map +1 -0
  36. package/dist/providers/root/http-client.js +84 -0
  37. package/dist/providers/root/http-client.js.map +1 -0
  38. package/dist/providers/root/provider.d.ts +25 -0
  39. package/dist/providers/root/provider.d.ts.map +1 -0
  40. package/dist/providers/root/provider.js +118 -0
  41. package/dist/providers/root/provider.js.map +1 -0
  42. package/dist/providers/root/types.d.ts +171 -0
  43. package/dist/providers/root/types.d.ts.map +1 -0
  44. package/dist/providers/root/types.js +63 -0
  45. package/dist/providers/root/types.js.map +1 -0
  46. package/dist/providers/root/websocket-client.d.ts +23 -0
  47. package/dist/providers/root/websocket-client.d.ts.map +1 -0
  48. package/dist/providers/root/websocket-client.js +176 -0
  49. package/dist/providers/root/websocket-client.js.map +1 -0
  50. package/dist/types/common.d.ts +77 -0
  51. package/dist/types/common.d.ts.map +1 -0
  52. package/dist/types/common.js +3 -0
  53. package/dist/types/common.js.map +1 -0
  54. package/dist/types/embeds.d.ts +93 -0
  55. package/dist/types/embeds.d.ts.map +1 -0
  56. package/dist/types/embeds.js +19 -0
  57. package/dist/types/embeds.js.map +1 -0
  58. package/dist/types/events.d.ts +28 -0
  59. package/dist/types/events.d.ts.map +1 -0
  60. package/dist/types/events.js +3 -0
  61. package/dist/types/events.js.map +1 -0
  62. package/dist/types/index.d.ts +5 -0
  63. package/dist/types/index.d.ts.map +1 -0
  64. package/dist/types/index.js +21 -0
  65. package/dist/types/index.js.map +1 -0
  66. package/dist/types/platform.d.ts +39 -0
  67. package/dist/types/platform.d.ts.map +1 -0
  68. package/dist/types/platform.js +3 -0
  69. package/dist/types/platform.js.map +1 -0
  70. package/dist/utils/errors.d.ts +35 -0
  71. package/dist/utils/errors.d.ts.map +1 -0
  72. package/dist/utils/errors.js +86 -0
  73. package/dist/utils/errors.js.map +1 -0
  74. package/dist/utils/logger.d.ts +24 -0
  75. package/dist/utils/logger.d.ts.map +1 -0
  76. package/dist/utils/logger.js +64 -0
  77. package/dist/utils/logger.js.map +1 -0
  78. package/package.json +90 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"http-client.d.ts","sourceRoot":"","sources":["../../../src/providers/root/http-client.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAGrC,qBAAa,cAAc;IACzB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,OAAO,CAAyB;gBAE5B,MAAM,EAAE,UAAU;IAaxB,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IAOpC,IAAI,CAAC,CAAC,GAAG,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC;IAO/D,GAAG,CAAC,CAAC,GAAG,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC;IAO9D,KAAK,CAAC,CAAC,GAAG,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC;IAOhE,MAAM,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;YAO/B,OAAO;YAqCP,mBAAmB;CA4BlC"}
@@ -0,0 +1,84 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RootHTTPClient = void 0;
4
+ const errors_1 = require("../../utils/errors");
5
+ class RootHTTPClient {
6
+ constructor(config) {
7
+ this.baseUrl = config.apiUrl || 'https://api.rootapp.com/v1';
8
+ this.token = config.token;
9
+ this.headers = {
10
+ 'Authorization': `Bot ${this.token}`,
11
+ 'Content-Type': 'application/json',
12
+ 'User-Agent': 'Library.DR-Conversion/v0.1.0',
13
+ };
14
+ }
15
+ async get(endpoint) {
16
+ return this.request('GET', endpoint);
17
+ }
18
+ async post(endpoint, data) {
19
+ return this.request('POST', endpoint, data);
20
+ }
21
+ async put(endpoint, data) {
22
+ return this.request('PUT', endpoint, data);
23
+ }
24
+ async patch(endpoint, data) {
25
+ return this.request('PATCH', endpoint, data);
26
+ }
27
+ async delete(endpoint) {
28
+ return this.request('DELETE', endpoint);
29
+ }
30
+ async request(method, endpoint, data) {
31
+ const url = `${this.baseUrl}${endpoint}`;
32
+ const options = {
33
+ method,
34
+ headers: this.headers,
35
+ };
36
+ if (data) {
37
+ options.body = JSON.stringify(data);
38
+ }
39
+ try {
40
+ const response = await fetch(url, options);
41
+ if (!response.ok) {
42
+ await this.handleErrorResponse(response);
43
+ }
44
+ if (response.status === 204) {
45
+ return {};
46
+ }
47
+ const result = await response.json();
48
+ return result;
49
+ }
50
+ catch (error) {
51
+ if (error instanceof Error) {
52
+ throw new errors_1.MessageError(`HTTP request failed: ${error.message}`);
53
+ }
54
+ throw error;
55
+ }
56
+ }
57
+ async handleErrorResponse(response) {
58
+ let errorMessage = `HTTP ${response.status}: ${response.statusText}`;
59
+ try {
60
+ const errorData = await response.json();
61
+ if (errorData && typeof errorData === 'object' && 'message' in errorData) {
62
+ const error = errorData;
63
+ errorMessage = error.message;
64
+ }
65
+ }
66
+ catch {
67
+ }
68
+ switch (response.status) {
69
+ case 401:
70
+ case 403:
71
+ throw new errors_1.AuthenticationError(errorMessage);
72
+ case 404:
73
+ throw new errors_1.ResourceNotFoundError(errorMessage, 'resource');
74
+ case 429: {
75
+ const retryAfter = response.headers.get('Retry-After');
76
+ throw new errors_1.MessageError(`Rate limited. Retry after: ${retryAfter || 'unknown'}`);
77
+ }
78
+ default:
79
+ throw new errors_1.MessageError(errorMessage);
80
+ }
81
+ }
82
+ }
83
+ exports.RootHTTPClient = RootHTTPClient;
84
+ //# sourceMappingURL=http-client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"http-client.js","sourceRoot":"","sources":["../../../src/providers/root/http-client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ import { BaseProvider } from '../base';
2
+ import { Message, User, Channel, Guild } from '../../types/common';
3
+ import { MessageOptions } from '../../types/embeds';
4
+ import { RootConfig } from './types';
5
+ export declare class RootProvider extends BaseProvider {
6
+ private client;
7
+ readonly platformName = "root";
8
+ readonly platformVersion = "1.0.0";
9
+ constructor(config: RootConfig);
10
+ private setupEventListeners;
11
+ connect(): Promise<void>;
12
+ disconnect(): Promise<void>;
13
+ sendMessage(_channelId: string, _options: string | MessageOptions): Promise<Message>;
14
+ editMessage(_messageId: string, _channelId: string, _content: string): Promise<Message>;
15
+ deleteMessage(_messageId: string, _channelId: string): Promise<void>;
16
+ getUser(userId: string): Promise<User>;
17
+ getChannel(channelId: string): Promise<Channel>;
18
+ getGuild(guildId: string): Promise<Guild>;
19
+ convertMessage(rootMsg: unknown): Message;
20
+ convertUser(rootUser: unknown): User;
21
+ convertChannel(rootChannel: unknown): Channel;
22
+ convertGuild(rootCommunity: unknown): Guild;
23
+ getClient(): unknown;
24
+ }
25
+ //# sourceMappingURL=provider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../../src/providers/root/provider.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD,OAAO,EAAE,UAAU,EAAqD,MAAM,SAAS,CAAC;AAYxF,qBAAa,YAAa,SAAQ,YAAY;IAE5C,OAAO,CAAC,MAAM,CAAiB;IAC/B,QAAQ,CAAC,YAAY,UAAU;IAC/B,QAAQ,CAAC,eAAe,WAAW;gBAEvB,MAAM,EAAE,UAAU;IAoB9B,OAAO,CAAC,mBAAmB;IAsC3B,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAyBlB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAejC,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC;IAUpF,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IASvF,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IASpE,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAStC,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAS/C,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;IAQzC,cAAc,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO;IAOzC,WAAW,CAAC,QAAQ,EAAE,OAAO,GAAG,IAAI;IAQpC,cAAc,CAAC,WAAW,EAAE,OAAO,GAAG,OAAO;IAQ7C,YAAY,CAAC,aAAa,EAAE,OAAO,GAAG,KAAK;IAS3C,SAAS,IAAI,OAAO;CAGrB"}
@@ -0,0 +1,118 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.RootProvider = void 0;
37
+ const base_1 = require("../base");
38
+ const Converters = __importStar(require("./converters"));
39
+ const errors_1 = require("../../utils/errors");
40
+ class RootProvider extends base_1.BaseProvider {
41
+ constructor(config) {
42
+ super(config);
43
+ this.client = null;
44
+ this.platformName = 'root';
45
+ this.platformVersion = '1.0.0';
46
+ this.initLogger();
47
+ this.validateConfig('token');
48
+ this.logger.warn('Root provider is a stub implementation. Complete the implementation with actual Root API.');
49
+ this.setupEventListeners();
50
+ }
51
+ setupEventListeners() {
52
+ }
53
+ connect() {
54
+ return new Promise((resolve, reject) => {
55
+ try {
56
+ this.logger.info('Connecting to Root...');
57
+ this._isConnected = true;
58
+ this.emitGenericEvent('ready');
59
+ this.logger.info('Connected to Root (stub mode)');
60
+ resolve();
61
+ }
62
+ catch (error) {
63
+ this._isConnected = false;
64
+ reject(new errors_1.AuthenticationError('root', error.message));
65
+ }
66
+ });
67
+ }
68
+ async disconnect() {
69
+ this.logger.info('Disconnecting from Root...');
70
+ this._isConnected = false;
71
+ this.logger.info('Disconnected from Root');
72
+ return Promise.resolve();
73
+ }
74
+ sendMessage(_channelId, _options) {
75
+ this.ensureConnected();
76
+ return Promise.reject(new errors_1.UnsupportedFeatureError('sendMessage', 'root (stub implementation)'));
77
+ }
78
+ editMessage(_messageId, _channelId, _content) {
79
+ this.ensureConnected();
80
+ return Promise.reject(new errors_1.UnsupportedFeatureError('editMessage', 'root (stub implementation)'));
81
+ }
82
+ deleteMessage(_messageId, _channelId) {
83
+ this.ensureConnected();
84
+ return Promise.reject(new errors_1.UnsupportedFeatureError('deleteMessage', 'root (stub implementation)'));
85
+ }
86
+ getUser(userId) {
87
+ this.ensureConnected();
88
+ return Promise.reject(new errors_1.ResourceNotFoundError('User', userId));
89
+ }
90
+ getChannel(channelId) {
91
+ this.ensureConnected();
92
+ return Promise.reject(new errors_1.ResourceNotFoundError('Channel', channelId));
93
+ }
94
+ getGuild(guildId) {
95
+ this.ensureConnected();
96
+ return Promise.reject(new errors_1.ResourceNotFoundError('Guild', guildId));
97
+ }
98
+ convertMessage(rootMsg) {
99
+ return Converters.toGenericMessage(rootMsg, this);
100
+ }
101
+ convertUser(rootUser) {
102
+ const typedUser = rootUser;
103
+ return Converters.toGenericUser(typedUser);
104
+ }
105
+ convertChannel(rootChannel) {
106
+ const typedChannel = rootChannel;
107
+ return Converters.toGenericChannel(typedChannel);
108
+ }
109
+ convertGuild(rootCommunity) {
110
+ const typedCommunity = rootCommunity;
111
+ return Converters.toGenericGuild(typedCommunity);
112
+ }
113
+ getClient() {
114
+ return this.client;
115
+ }
116
+ }
117
+ exports.RootProvider = RootProvider;
118
+ //# sourceMappingURL=provider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provider.js","sourceRoot":"","sources":["../../../src/providers/root/provider.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,171 @@
1
+ import { PlatformConfig, PlatformCapabilities } from '../../types/platform';
2
+ export interface RootConfig extends PlatformConfig {
3
+ token: string;
4
+ apiUrl?: string;
5
+ wsUrl?: string;
6
+ communityId?: string;
7
+ autoReconnect?: boolean;
8
+ reconnectDelay?: number;
9
+ maxReconnectAttempts?: number;
10
+ debug?: boolean;
11
+ }
12
+ export interface RootMessage {
13
+ id: string;
14
+ content: string;
15
+ author: RootUser;
16
+ channelId: string;
17
+ communityId: string;
18
+ timestamp: string;
19
+ edited?: boolean;
20
+ editedTimestamp?: string;
21
+ mentions?: string[];
22
+ mentionRoles?: string[];
23
+ attachments?: RootAttachment[];
24
+ embeds?: RootEmbed[];
25
+ reactions?: RootReaction[];
26
+ replyTo?: string;
27
+ threadId?: string;
28
+ type?: 'text' | 'system' | 'bot' | 'announcement';
29
+ }
30
+ export interface RootUser {
31
+ id: string;
32
+ username: string;
33
+ displayName: string;
34
+ avatarUrl?: string;
35
+ bot?: boolean;
36
+ status?: 'online' | 'away' | 'busy' | 'offline';
37
+ statusText?: string;
38
+ badges?: string[];
39
+ createdAt?: string;
40
+ }
41
+ export interface RootChannel {
42
+ id: string;
43
+ name: string;
44
+ type: 'text' | 'voice' | 'announcement' | 'thread';
45
+ topic?: string;
46
+ communityId: string;
47
+ parentId?: string;
48
+ position?: number;
49
+ nsfw?: boolean;
50
+ rateLimit?: number;
51
+ }
52
+ export interface RootCommunity {
53
+ id: string;
54
+ name: string;
55
+ iconUrl?: string;
56
+ bannerUrl?: string;
57
+ description?: string;
58
+ ownerId: string;
59
+ memberCount?: number;
60
+ features?: string[];
61
+ createdAt?: string;
62
+ }
63
+ export interface RootMember {
64
+ userId: string;
65
+ communityId: string;
66
+ nickname?: string;
67
+ roles: string[];
68
+ joinedAt: string;
69
+ permissions?: string[];
70
+ }
71
+ export interface RootRole {
72
+ id: string;
73
+ name: string;
74
+ color: string;
75
+ hoist: boolean;
76
+ position: number;
77
+ permissions: string;
78
+ mentionable: boolean;
79
+ managed?: boolean;
80
+ }
81
+ export interface RootAttachment {
82
+ id: string;
83
+ filename: string;
84
+ url: string;
85
+ size: number;
86
+ contentType?: string;
87
+ width?: number;
88
+ height?: number;
89
+ }
90
+ export interface RootEmbed {
91
+ title?: string;
92
+ description?: string;
93
+ url?: string;
94
+ color?: string;
95
+ fields?: Array<{
96
+ name: string;
97
+ value: string;
98
+ inline?: boolean;
99
+ }>;
100
+ author?: {
101
+ name: string;
102
+ url?: string;
103
+ iconUrl?: string;
104
+ };
105
+ footer?: {
106
+ text: string;
107
+ iconUrl?: string;
108
+ };
109
+ image?: {
110
+ url: string;
111
+ width?: number;
112
+ height?: number;
113
+ };
114
+ thumbnail?: {
115
+ url: string;
116
+ width?: number;
117
+ height?: number;
118
+ };
119
+ timestamp?: string;
120
+ }
121
+ export interface RootReaction {
122
+ emoji: string;
123
+ count: number;
124
+ me: boolean;
125
+ }
126
+ export declare enum RootEventType {
127
+ READY = "READY",
128
+ RECONNECT = "RECONNECT",
129
+ ERROR = "ERROR",
130
+ MESSAGE_CREATE = "MESSAGE_CREATE",
131
+ MESSAGE_UPDATE = "MESSAGE_UPDATE",
132
+ MESSAGE_DELETE = "MESSAGE_DELETE",
133
+ CHANNEL_CREATE = "CHANNEL_CREATE",
134
+ CHANNEL_UPDATE = "CHANNEL_UPDATE",
135
+ CHANNEL_DELETE = "CHANNEL_DELETE",
136
+ MEMBER_JOIN = "MEMBER_JOIN",
137
+ MEMBER_LEAVE = "MEMBER_LEAVE",
138
+ MEMBER_UPDATE = "MEMBER_UPDATE",
139
+ USER_UPDATE = "USER_UPDATE",
140
+ PRESENCE_UPDATE = "PRESENCE_UPDATE",
141
+ REACTION_ADD = "REACTION_ADD",
142
+ REACTION_REMOVE = "REACTION_REMOVE",
143
+ ROLE_CREATE = "ROLE_CREATE",
144
+ ROLE_UPDATE = "ROLE_UPDATE",
145
+ ROLE_DELETE = "ROLE_DELETE",
146
+ COMMUNITY_UPDATE = "COMMUNITY_UPDATE"
147
+ }
148
+ export interface RootWSPayload {
149
+ op: number;
150
+ t?: RootEventType;
151
+ d?: unknown;
152
+ s?: number;
153
+ }
154
+ export declare const ROOT_API_ENDPOINTS: {
155
+ sendMessage: (channelId: string) => string;
156
+ getMessage: (channelId: string, messageId: string) => string;
157
+ editMessage: (channelId: string, messageId: string) => string;
158
+ deleteMessage: (channelId: string, messageId: string) => string;
159
+ getMessages: (channelId: string) => string;
160
+ getChannel: (channelId: string) => string;
161
+ getUser: (userId: string) => string;
162
+ getCurrentUser: () => string;
163
+ getCommunity: (communityId: string) => string;
164
+ getCommunityMembers: (communityId: string) => string;
165
+ getMember: (communityId: string, userId: string) => string;
166
+ addReaction: (channelId: string, messageId: string, emoji: string) => string;
167
+ removeReaction: (channelId: string, messageId: string, emoji: string) => string;
168
+ };
169
+ export declare const ROOT_CAPABILITIES: PlatformCapabilities;
170
+ export declare const DEFAULT_ROOT_CONFIG: Partial<RootConfig>;
171
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/providers/root/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DEFAULT_ROOT_CONFIG = exports.ROOT_CAPABILITIES = exports.ROOT_API_ENDPOINTS = exports.RootEventType = void 0;
4
+ var RootEventType;
5
+ (function (RootEventType) {
6
+ RootEventType["READY"] = "READY";
7
+ RootEventType["RECONNECT"] = "RECONNECT";
8
+ RootEventType["ERROR"] = "ERROR";
9
+ RootEventType["MESSAGE_CREATE"] = "MESSAGE_CREATE";
10
+ RootEventType["MESSAGE_UPDATE"] = "MESSAGE_UPDATE";
11
+ RootEventType["MESSAGE_DELETE"] = "MESSAGE_DELETE";
12
+ RootEventType["CHANNEL_CREATE"] = "CHANNEL_CREATE";
13
+ RootEventType["CHANNEL_UPDATE"] = "CHANNEL_UPDATE";
14
+ RootEventType["CHANNEL_DELETE"] = "CHANNEL_DELETE";
15
+ RootEventType["MEMBER_JOIN"] = "MEMBER_JOIN";
16
+ RootEventType["MEMBER_LEAVE"] = "MEMBER_LEAVE";
17
+ RootEventType["MEMBER_UPDATE"] = "MEMBER_UPDATE";
18
+ RootEventType["USER_UPDATE"] = "USER_UPDATE";
19
+ RootEventType["PRESENCE_UPDATE"] = "PRESENCE_UPDATE";
20
+ RootEventType["REACTION_ADD"] = "REACTION_ADD";
21
+ RootEventType["REACTION_REMOVE"] = "REACTION_REMOVE";
22
+ RootEventType["ROLE_CREATE"] = "ROLE_CREATE";
23
+ RootEventType["ROLE_UPDATE"] = "ROLE_UPDATE";
24
+ RootEventType["ROLE_DELETE"] = "ROLE_DELETE";
25
+ RootEventType["COMMUNITY_UPDATE"] = "COMMUNITY_UPDATE";
26
+ })(RootEventType || (exports.RootEventType = RootEventType = {}));
27
+ exports.ROOT_API_ENDPOINTS = {
28
+ sendMessage: (channelId) => `/channels/${channelId}/messages`,
29
+ getMessage: (channelId, messageId) => `/channels/${channelId}/messages/${messageId}`,
30
+ editMessage: (channelId, messageId) => `/channels/${channelId}/messages/${messageId}`,
31
+ deleteMessage: (channelId, messageId) => `/channels/${channelId}/messages/${messageId}`,
32
+ getMessages: (channelId) => `/channels/${channelId}/messages`,
33
+ getChannel: (channelId) => `/channels/${channelId}`,
34
+ getUser: (userId) => `/users/${userId}`,
35
+ getCurrentUser: () => `/users/@me`,
36
+ getCommunity: (communityId) => `/communities/${communityId}`,
37
+ getCommunityMembers: (communityId) => `/communities/${communityId}/members`,
38
+ getMember: (communityId, userId) => `/communities/${communityId}/members/${userId}`,
39
+ addReaction: (channelId, messageId, emoji) => `/channels/${channelId}/messages/${messageId}/reactions/${emoji}/@me`,
40
+ removeReaction: (channelId, messageId, emoji) => `/channels/${channelId}/messages/${messageId}/reactions/${emoji}/@me`,
41
+ };
42
+ exports.ROOT_CAPABILITIES = {
43
+ embeds: true,
44
+ buttons: true,
45
+ selectMenus: true,
46
+ reactions: true,
47
+ attachments: true,
48
+ threads: true,
49
+ voice: true,
50
+ slashCommands: true,
51
+ maxMessageLength: 4000,
52
+ maxEmbedsPerMessage: 10,
53
+ maxFieldsPerEmbed: 25,
54
+ };
55
+ exports.DEFAULT_ROOT_CONFIG = {
56
+ apiUrl: 'https://api.rootapp.com/v1',
57
+ wsUrl: 'wss://gateway.rootapp.com',
58
+ autoReconnect: true,
59
+ reconnectDelay: 5000,
60
+ maxReconnectAttempts: 5,
61
+ debug: false,
62
+ };
63
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/providers/root/types.ts"],"names":[],"mappings":";;;AA+LA,IAAY,aAqBX;AArBD,WAAY,aAAa;IACvB,gCAAe,CAAA;IACf,wCAAuB,CAAA;IACvB,gCAAe,CAAA;IACf,kDAAiC,CAAA;IACjC,kDAAiC,CAAA;IACjC,kDAAiC,CAAA;IACjC,kDAAiC,CAAA;IACjC,kDAAiC,CAAA;IACjC,kDAAiC,CAAA;IACjC,4CAA2B,CAAA;IAC3B,8CAA6B,CAAA;IAC7B,gDAA+B,CAAA;IAC/B,4CAA2B,CAAA;IAC3B,oDAAmC,CAAA;IACnC,8CAA6B,CAAA;IAC7B,oDAAmC,CAAA;IACnC,4CAA2B,CAAA;IAC3B,4CAA2B,CAAA;IAC3B,4CAA2B,CAAA;IAC3B,sDAAqC,CAAA;AACvC,CAAC,EArBW,aAAa,6BAAb,aAAa,QAqBxB;AAeY,QAAA,kBAAkB,GAAG;IAChC,WAAW,EAAE,CAAC,SAAiB,EAAE,EAAE,CAAC,aAAa,SAAS,WAAW;IACrE,UAAU,EAAE,CAAC,SAAiB,EAAE,SAAiB,EAAE,EAAE,CAAC,aAAa,SAAS,aAAa,SAAS,EAAE;IACpG,WAAW,EAAE,CAAC,SAAiB,EAAE,SAAiB,EAAE,EAAE,CAAC,aAAa,SAAS,aAAa,SAAS,EAAE;IACrG,aAAa,EAAE,CAAC,SAAiB,EAAE,SAAiB,EAAE,EAAE,CAAC,aAAa,SAAS,aAAa,SAAS,EAAE;IACvG,WAAW,EAAE,CAAC,SAAiB,EAAE,EAAE,CAAC,aAAa,SAAS,WAAW;IACrE,UAAU,EAAE,CAAC,SAAiB,EAAE,EAAE,CAAC,aAAa,SAAS,EAAE;IAC3D,OAAO,EAAE,CAAC,MAAc,EAAE,EAAE,CAAC,UAAU,MAAM,EAAE;IAC/C,cAAc,EAAE,GAAG,EAAE,CAAC,YAAY;IAClC,YAAY,EAAE,CAAC,WAAmB,EAAE,EAAE,CAAC,gBAAgB,WAAW,EAAE;IACpE,mBAAmB,EAAE,CAAC,WAAmB,EAAE,EAAE,CAAC,gBAAgB,WAAW,UAAU;IACnF,SAAS,EAAE,CAAC,WAAmB,EAAE,MAAc,EAAE,EAAE,CAAC,gBAAgB,WAAW,YAAY,MAAM,EAAE;IACnG,WAAW,EAAE,CAAC,SAAiB,EAAE,SAAiB,EAAE,KAAa,EAAE,EAAE,CACnE,aAAa,SAAS,aAAa,SAAS,cAAc,KAAK,MAAM;IACvE,cAAc,EAAE,CAAC,SAAiB,EAAE,SAAiB,EAAE,KAAa,EAAE,EAAE,CACtE,aAAa,SAAS,aAAa,SAAS,cAAc,KAAK,MAAM;CACxE,CAAC;AAKW,QAAA,iBAAiB,GAAyB;IACrD,MAAM,EAAE,IAAI;IACZ,OAAO,EAAE,IAAI;IACb,WAAW,EAAE,IAAI;IACjB,SAAS,EAAE,IAAI;IACf,WAAW,EAAE,IAAI;IACjB,OAAO,EAAE,IAAI;IACb,KAAK,EAAE,IAAI;IACX,aAAa,EAAE,IAAI;IACnB,gBAAgB,EAAE,IAAI;IACtB,mBAAmB,EAAE,EAAE;IACvB,iBAAiB,EAAE,EAAE;CACtB,CAAC;AAKW,QAAA,mBAAmB,GAAwB;IACtD,MAAM,EAAE,4BAA4B;IACpC,KAAK,EAAE,2BAA2B;IAClC,aAAa,EAAE,IAAI;IACnB,cAAc,EAAE,IAAI;IACpB,oBAAoB,EAAE,CAAC;IACvB,KAAK,EAAE,KAAK;CACb,CAAA"}
@@ -0,0 +1,23 @@
1
+ import { EventEmitter } from 'events';
2
+ import { RootConfig } from './types';
3
+ import { Logger } from '../../utils/logger';
4
+ export declare class RootWebSocketClient extends EventEmitter {
5
+ private ws;
6
+ private config;
7
+ private logger;
8
+ private heartbeatInterval;
9
+ private sequence;
10
+ private reconnectAttempts;
11
+ private isReconnecting;
12
+ constructor(config: RootConfig, logger: Logger);
13
+ connect(): Promise<void>;
14
+ disconnect(): void;
15
+ private handleMessage;
16
+ private sendIdentify;
17
+ private startHeartbeat;
18
+ private sendHeartbeat;
19
+ private send;
20
+ private cleanup;
21
+ private attemptReconnect;
22
+ }
23
+ //# sourceMappingURL=websocket-client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"websocket-client.d.ts","sourceRoot":"","sources":["../../../src/providers/root/websocket-client.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEtC,OAAO,EAAE,UAAU,EAAgC,MAAM,SAAS,CAAC;AACnE,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAW5C,qBAAa,mBAAoB,SAAQ,YAAY;IACnD,OAAO,CAAC,EAAE,CAA0B;IACpC,OAAO,CAAC,MAAM,CAAa;IAC3B,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,iBAAiB,CAA+B;IACxD,OAAO,CAAC,QAAQ,CAAuB;IACvC,OAAO,CAAC,iBAAiB,CAAK;IAC9B,OAAO,CAAC,cAAc,CAAS;gBAEnB,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM;IASxC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAgD9B,UAAU,IAAI,IAAI;IAalB,OAAO,CAAC,aAAa;IAyDrB,OAAO,CAAC,YAAY;IAmBpB,OAAO,CAAC,cAAc;IAStB,OAAO,CAAC,aAAa;IAarB,OAAO,CAAC,IAAI;IAWZ,OAAO,CAAC,OAAO;IAUf,OAAO,CAAC,gBAAgB;CA+BzB"}