@lemoncloud/chatic-sockets-lib 0.2.1 → 0.3.1

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 (46) hide show
  1. package/dist/client-socket-v2/gateways/channel-gateway.d.ts +1 -1
  2. package/dist/client-socket-v2/gateways/cloud-gateway.d.ts +7 -1
  3. package/dist/client-socket-v2/gateways/cloud-gateway.js +3 -0
  4. package/dist/client-socket-v2/gateways/place-gateway.d.ts +18 -0
  5. package/dist/client-socket-v2/gateways/place-gateway.js +14 -0
  6. package/dist/client-socket-v2/gateways/profile-gateway.d.ts +18 -0
  7. package/dist/client-socket-v2/gateways/profile-gateway.js +14 -0
  8. package/dist/client-socket-v2/gateways/user-gateway.d.ts +20 -8
  9. package/dist/client-socket-v2/gateways/user-gateway.js +1 -1
  10. package/dist/client-socket-v2/index.d.ts +5 -0
  11. package/dist/client-socket-v2/index.js +5 -0
  12. package/dist/client-socket-v2/plans/channel-sync-plan.d.ts +33 -0
  13. package/dist/client-socket-v2/plans/channel-sync-plan.js +66 -0
  14. package/dist/client-socket-v2/plans/device-sync-plan.d.ts +5 -1
  15. package/dist/client-socket-v2/plans/device-sync-plan.js +6 -3
  16. package/dist/client-socket-v2/plans/place-sync-plan.d.ts +33 -0
  17. package/dist/client-socket-v2/plans/place-sync-plan.js +67 -0
  18. package/dist/client-socket-v2/plans/profile-sync-plan.d.ts +33 -0
  19. package/dist/client-socket-v2/plans/profile-sync-plan.js +67 -0
  20. package/dist/client-socket-v2/socket-runtime.d.ts +5 -1
  21. package/dist/client-socket-v2/socket-runtime.js +5 -1
  22. package/dist/client-socket-v2/sync-scheduler.d.ts +15 -1
  23. package/dist/client-socket-v2/sync-scheduler.js +89 -12
  24. package/dist/client-socket-v2/types.d.ts +22 -0
  25. package/dist/lib/channel/types.d.ts +27 -11
  26. package/dist/lib/cloud/types.d.ts +38 -2
  27. package/dist/lib/device/contracts.d.ts +4 -0
  28. package/dist/lib/device/types.d.ts +3 -1
  29. package/dist/lib/place/types.d.ts +53 -0
  30. package/dist/lib/place/types.js +2 -0
  31. package/dist/lib/profile/types.d.ts +55 -0
  32. package/dist/lib/profile/types.js +2 -0
  33. package/dist/lib/socket-actions.d.ts +55 -3
  34. package/dist/lib/socket-actions.js +44 -2
  35. package/dist/lib/socket-inputs.d.ts +3 -1
  36. package/dist/modules/chat/model.d.ts +107 -0
  37. package/dist/modules/chat/model.js +28 -0
  38. package/dist/modules/chat/views.d.ts +50 -0
  39. package/dist/modules/chat/views.js +23 -0
  40. package/dist/modules/sockets/model.d.ts +206 -0
  41. package/dist/modules/sockets/model.js +28 -0
  42. package/dist/modules/sockets/types.d.ts +100 -0
  43. package/dist/modules/sockets/types.js +86 -0
  44. package/dist/modules/sockets/views.d.ts +67 -0
  45. package/dist/modules/sockets/views.js +23 -0
  46. package/package.json +4 -2
@@ -0,0 +1,86 @@
1
+ "use strict";
2
+ /**
3
+ * `types.ts`
4
+ * - 기본 types used in `backend-proxy`
5
+ *
6
+ * **[중요! exports 순서]**
7
+ * 1. define data type in `types.ts` w/ internal types.
8
+ * 2. define Model in `model.ts`
9
+ * 3. define View/Body in `view.ts`, and external types.
10
+ *
11
+ * @author Steve <steve@lemoncloud.io>
12
+ * @date 2022-08-29 initial version.
13
+ * @author Aiden <aiden@lemocloud.io>
14
+ * @date 2025-07-23 refactored for sockets service
15
+ *
16
+ * Copyright (C) 2022 LemonCloud Co Ltd. - All Rights Reserved.
17
+ */
18
+ Object.defineProperty(exports, "__esModule", { value: true });
19
+ /**
20
+ * Lookup Table
21
+ *
22
+ * WARN! DO NOT EXPORT AS `$LUT`. use default export instead.
23
+ */
24
+ const $LUT = {
25
+ /**
26
+ * Possible type of model.
27
+ */
28
+ ModelType: {
29
+ /** socket model */
30
+ socket: 'socket',
31
+ /** connection model */
32
+ connection: 'connection',
33
+ /** device model */
34
+ device: 'device',
35
+ },
36
+ /**
37
+ * DeviceStatus
38
+ */
39
+ DeviceStatus: {
40
+ '': '',
41
+ /** green - online */
42
+ green: 'green',
43
+ /** red - offline */
44
+ red: 'red',
45
+ /** yellow - away/idle */
46
+ yellow: 'yellow',
47
+ },
48
+ /**
49
+ * DeviceEventType
50
+ */
51
+ DeviceEventType: {
52
+ '': '',
53
+ /** ping - heartbeat */
54
+ ping: 'ping',
55
+ /** status - status change */
56
+ status: 'status',
57
+ },
58
+ /**
59
+ * ViewingType — 현재 보고 있는 대상 종류
60
+ */
61
+ ViewingType: {
62
+ '': '',
63
+ /** channel */
64
+ channel: 'channel',
65
+ },
66
+ /**
67
+ * DevicePlatform
68
+ */
69
+ DevicePlatform: {
70
+ '': '',
71
+ /** iOS */
72
+ ios: 'ios',
73
+ /** Android */
74
+ android: 'android',
75
+ /** Web browser */
76
+ web: 'web',
77
+ /** macOS */
78
+ macos: 'macos',
79
+ /** Windows */
80
+ windows: 'windows',
81
+ /** Linux */
82
+ linux: 'linux',
83
+ },
84
+ };
85
+ /** must export $LUT as default */
86
+ exports.default = $LUT;
@@ -0,0 +1,67 @@
1
+ /**
2
+ * `views.ts`
3
+ * - type of views used in `backend-proxy`
4
+ *
5
+ * @author Steve <steve@lemoncloud.io>
6
+ * @date 2022-08-29 initial version.
7
+ * @author Aiden <aiden@lemoncloud.io>
8
+ * @date 2024-07-23 refactored for sockets service
9
+ *
10
+ * Copyright (C) 2022 LemonCloud Co Ltd. - All Rights Reserved.
11
+ */
12
+ import { View, Body } from 'lemon-model';
13
+ import { ConnectionModel, DeviceModel, SocketModel } from './model';
14
+ import $LUT from './types';
15
+ export * from './types';
16
+ export default $LUT;
17
+ /**!SECTION */
18
+ /**
19
+ * type: `SocketView`
20
+ * - usually same as post's body.
21
+ */
22
+ export interface SocketView extends View, Partial<SocketModel> {
23
+ }
24
+ /**
25
+ * Type `SocketBody`
26
+ */
27
+ export interface SocketBody extends Body, Partial<SocketView> {
28
+ }
29
+ /**
30
+ * type: `ConnectionView`
31
+ * - usually same as post's body.
32
+ */
33
+ export interface ConnectionView extends View, Omit<Partial<ConnectionModel>, '$device'> {
34
+ /** (internal) connected device info */
35
+ readonly $device?: DeviceView;
36
+ }
37
+ /**
38
+ * Type `ConnectionBody`
39
+ */
40
+ export interface ConnectionBody extends Body, Partial<ConnectionView> {
41
+ }
42
+ /**
43
+ * type: `DeviceView`
44
+ */
45
+ export interface DeviceView extends View, Partial<DeviceModel> {
46
+ }
47
+ /**
48
+ * Type `DeviceBody`
49
+ */
50
+ export interface DeviceBody extends Body, Partial<DeviceView> {
51
+ }
52
+ /**
53
+ * type: `ServerPingResultView`
54
+ * - 서버에서 커넥션 ping 테스트 결과
55
+ */
56
+ export interface ServerPingResultView {
57
+ /** 대상 connectionId */
58
+ connId: string;
59
+ /** ping 시도 시간 (timestamp) */
60
+ pingedAt: number;
61
+ /** 최종 활성 상태 */
62
+ isActive: boolean;
63
+ /** cleanup 수행 여부 */
64
+ isCleaned?: boolean;
65
+ /** 현재 connection 상태 */
66
+ $conn?: ConnectionView;
67
+ }
@@ -0,0 +1,23 @@
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ var __importDefault = (this && this.__importDefault) || function (mod) {
17
+ return (mod && mod.__esModule) ? mod : { "default": mod };
18
+ };
19
+ Object.defineProperty(exports, "__esModule", { value: true });
20
+ const types_1 = __importDefault(require("./types"));
21
+ //! export all internal types
22
+ __exportStar(require("./types"), exports);
23
+ exports.default = types_1.default;
package/package.json CHANGED
@@ -1,11 +1,13 @@
1
1
  {
2
2
  "name": "@lemoncloud/chatic-sockets-lib",
3
- "version": "0.2.1",
3
+ "version": "0.3.1",
4
4
  "description": "Client websocket transport and sync runtime for chatic sockets v2",
5
5
  "main": "dist/client-socket-v2/index.js",
6
6
  "types": "dist/client-socket-v2/index.d.ts",
7
7
  "files": [
8
- "dist/**/*",
8
+ "dist/client-socket-v2/**/*",
9
+ "dist/lib/**/*",
10
+ "dist/modules/**/*",
9
11
  "README.md"
10
12
  ],
11
13
  "exports": {