@omujs/omu 0.9.48 → 0.9.50

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 (276) hide show
  1. package/dist/address.js +1 -0
  2. package/dist/address.js.map +7 -0
  3. package/dist/api/asset/extension.d.ts +25 -0
  4. package/dist/api/asset/extension.js +2 -0
  5. package/dist/api/asset/extension.js.map +7 -0
  6. package/dist/api/asset/index.d.ts +2 -0
  7. package/dist/api/asset/index.js +2 -0
  8. package/dist/api/asset/index.js.map +7 -0
  9. package/dist/api/dashboard/extension.d.ts +181 -0
  10. package/dist/api/dashboard/extension.js +2 -0
  11. package/dist/api/dashboard/extension.js.map +7 -0
  12. package/{src/api/dashboard/handler.ts → dist/api/dashboard/handler.d.ts} +3 -5
  13. package/dist/api/dashboard/handler.js +1 -0
  14. package/dist/api/dashboard/handler.js.map +7 -0
  15. package/dist/api/dashboard/index.d.ts +3 -0
  16. package/dist/api/dashboard/index.js +2 -0
  17. package/dist/api/dashboard/index.js.map +7 -0
  18. package/dist/api/dashboard/packets.d.ts +63 -0
  19. package/dist/api/dashboard/packets.js +2 -0
  20. package/dist/api/dashboard/packets.js.map +7 -0
  21. package/dist/api/endpoint/endpoint.d.ts +21 -0
  22. package/dist/api/endpoint/endpoint.js +2 -0
  23. package/dist/api/endpoint/endpoint.js.map +7 -0
  24. package/dist/api/endpoint/extension.d.ts +17 -0
  25. package/dist/api/endpoint/extension.js +2 -0
  26. package/dist/api/endpoint/extension.js.map +7 -0
  27. package/{src/api/endpoint/index.ts → dist/api/endpoint/index.d.ts} +0 -1
  28. package/dist/api/endpoint/index.js +2 -0
  29. package/dist/api/endpoint/index.js.map +7 -0
  30. package/dist/api/endpoint/packets.d.ts +51 -0
  31. package/dist/api/endpoint/packets.js +2 -0
  32. package/dist/api/endpoint/packets.js.map +7 -0
  33. package/dist/api/extension-registry.d.ts +8 -0
  34. package/dist/api/extension-registry.js +2 -0
  35. package/dist/api/extension-registry.js.map +7 -0
  36. package/dist/api/extension.d.ts +11 -0
  37. package/dist/api/extension.js +2 -0
  38. package/dist/api/extension.js.map +7 -0
  39. package/dist/api/http/extension.d.ts +41 -0
  40. package/dist/api/http/extension.js +2 -0
  41. package/dist/api/http/extension.js.map +7 -0
  42. package/dist/api/http/http.d.ts +36 -0
  43. package/dist/api/http/http.js +2 -0
  44. package/dist/api/http/http.js.map +7 -0
  45. package/{src/api/http/index.ts → dist/api/http/index.d.ts} +0 -1
  46. package/dist/api/http/index.js +2 -0
  47. package/dist/api/http/index.js.map +7 -0
  48. package/dist/api/http/websocket.d.ts +125 -0
  49. package/dist/api/http/websocket.js +2 -0
  50. package/dist/api/http/websocket.js.map +7 -0
  51. package/dist/api/i18n/extension.d.ts +19 -0
  52. package/dist/api/i18n/extension.js +2 -0
  53. package/dist/api/i18n/extension.js.map +7 -0
  54. package/{src/api/i18n/index.ts → dist/api/i18n/index.d.ts} +0 -1
  55. package/dist/api/i18n/index.js +2 -0
  56. package/dist/api/i18n/index.js.map +7 -0
  57. package/dist/api/index.d.ts +2 -0
  58. package/dist/api/index.js +2 -0
  59. package/dist/api/index.js.map +7 -0
  60. package/dist/api/logger/extension.d.ts +25 -0
  61. package/dist/api/logger/extension.js +2 -0
  62. package/dist/api/logger/extension.js.map +7 -0
  63. package/dist/api/logger/index.d.ts +1 -0
  64. package/dist/api/logger/index.js +2 -0
  65. package/dist/api/logger/index.js.map +7 -0
  66. package/dist/api/logger/packets.d.ts +18 -0
  67. package/dist/api/logger/packets.js +2 -0
  68. package/dist/api/logger/packets.js.map +7 -0
  69. package/dist/api/permission/extension.d.ts +19 -0
  70. package/dist/api/permission/extension.js +2 -0
  71. package/dist/api/permission/extension.js.map +7 -0
  72. package/{src/api/permission/index.ts → dist/api/permission/index.d.ts} +0 -1
  73. package/dist/api/permission/index.js +2 -0
  74. package/dist/api/permission/index.js.map +7 -0
  75. package/dist/api/permission/permission.d.ts +25 -0
  76. package/dist/api/permission/permission.js +2 -0
  77. package/dist/api/permission/permission.js.map +7 -0
  78. package/dist/api/plugin/extension.d.ts +43 -0
  79. package/dist/api/plugin/extension.js +2 -0
  80. package/dist/api/plugin/extension.js.map +7 -0
  81. package/{src/api/plugin/index.ts → dist/api/plugin/index.d.ts} +0 -1
  82. package/dist/api/plugin/index.js +2 -0
  83. package/dist/api/plugin/index.js.map +7 -0
  84. package/{src/api/plugin/package-info.ts → dist/api/plugin/package-info.d.ts} +0 -7
  85. package/dist/api/plugin/package-info.js +1 -0
  86. package/dist/api/plugin/package-info.js.map +7 -0
  87. package/dist/api/registry/extension.d.ts +23 -0
  88. package/dist/api/registry/extension.js +2 -0
  89. package/dist/api/registry/extension.js.map +7 -0
  90. package/{src/api/registry/index.ts → dist/api/registry/index.d.ts} +0 -1
  91. package/dist/api/registry/index.js +2 -0
  92. package/dist/api/registry/index.js.map +7 -0
  93. package/dist/api/registry/packets.d.ts +20 -0
  94. package/dist/api/registry/packets.js +2 -0
  95. package/dist/api/registry/packets.js.map +7 -0
  96. package/{src/api/registry/registry.ts → dist/api/registry/registry.d.ts} +11 -53
  97. package/dist/api/registry/registry.js +2 -0
  98. package/dist/api/registry/registry.js.map +7 -0
  99. package/dist/api/server/extension.d.ts +61 -0
  100. package/dist/api/server/extension.js +2 -0
  101. package/dist/api/server/extension.js.map +7 -0
  102. package/dist/api/server/index.d.ts +1 -0
  103. package/dist/api/server/index.js +2 -0
  104. package/dist/api/server/index.js.map +7 -0
  105. package/dist/api/session/extension.d.ts +52 -0
  106. package/dist/api/session/extension.js +2 -0
  107. package/dist/api/session/extension.js.map +7 -0
  108. package/dist/api/session/index.d.ts +1 -0
  109. package/dist/api/session/index.js +2 -0
  110. package/dist/api/session/index.js.map +7 -0
  111. package/dist/api/signal/extension.d.ts +19 -0
  112. package/dist/api/signal/extension.js +2 -0
  113. package/dist/api/signal/extension.js.map +7 -0
  114. package/dist/api/signal/index.d.ts +1 -0
  115. package/dist/api/signal/index.js +2 -0
  116. package/dist/api/signal/index.js.map +7 -0
  117. package/dist/api/signal/packets.d.ts +21 -0
  118. package/dist/api/signal/packets.js +2 -0
  119. package/dist/api/signal/packets.js.map +7 -0
  120. package/dist/api/signal/signal.d.ts +33 -0
  121. package/dist/api/signal/signal.js +2 -0
  122. package/dist/api/signal/signal.js.map +7 -0
  123. package/dist/api/table/extension.d.ts +26 -0
  124. package/dist/api/table/extension.js +2 -0
  125. package/dist/api/table/extension.js.map +7 -0
  126. package/{src/api/table/index.ts → dist/api/table/index.d.ts} +0 -1
  127. package/dist/api/table/index.js +2 -0
  128. package/dist/api/table/index.js.map +7 -0
  129. package/dist/api/table/packets.d.ts +65 -0
  130. package/dist/api/table/packets.js +2 -0
  131. package/dist/api/table/packets.js.map +7 -0
  132. package/dist/api/table/table.d.ts +75 -0
  133. package/dist/api/table/table.js +2 -0
  134. package/dist/api/table/table.js.map +7 -0
  135. package/dist/app.d.ts +49 -0
  136. package/dist/app.js +2 -0
  137. package/dist/app.js.map +7 -0
  138. package/dist/const.d.ts +2 -0
  139. package/dist/const.js +2 -0
  140. package/dist/const.js.map +7 -0
  141. package/dist/errors.d.ts +36 -0
  142. package/dist/errors.js +2 -0
  143. package/dist/errors.js.map +7 -0
  144. package/dist/event/index.d.ts +6 -0
  145. package/dist/event/index.js +2 -0
  146. package/dist/event/index.js.map +7 -0
  147. package/dist/helper.d.ts +10 -0
  148. package/dist/helper.js +2 -0
  149. package/dist/helper.js.map +7 -0
  150. package/dist/identifier.d.ts +51 -0
  151. package/dist/identifier.js +2 -0
  152. package/dist/identifier.js.map +7 -0
  153. package/dist/index.d.ts +36 -0
  154. package/dist/index.js +2 -0
  155. package/dist/index.js.map +7 -0
  156. package/{src/localization/index.ts → dist/localization/index.d.ts} +0 -1
  157. package/dist/localization/index.js +2 -0
  158. package/dist/localization/index.js.map +7 -0
  159. package/dist/localization/locale.d.ts +735 -0
  160. package/dist/localization/locale.js +2 -0
  161. package/dist/localization/locale.js.map +7 -0
  162. package/{src/localization/localization.ts → dist/localization/localization.d.ts} +0 -2
  163. package/dist/localization/localization.js +1 -0
  164. package/dist/localization/localization.js.map +7 -0
  165. package/dist/lock.d.ts +6 -0
  166. package/dist/lock.js +2 -0
  167. package/dist/lock.js.map +7 -0
  168. package/dist/network/connection.d.ts +17 -0
  169. package/dist/network/connection.js +2 -0
  170. package/dist/network/connection.js.map +7 -0
  171. package/dist/network/encryption.d.ts +38 -0
  172. package/dist/network/encryption.js +2 -0
  173. package/dist/network/encryption.js.map +7 -0
  174. package/dist/network/frame-transport.d.ts +22 -0
  175. package/dist/network/frame-transport.js +2 -0
  176. package/dist/network/frame-transport.js.map +7 -0
  177. package/{src/network/index.ts → dist/network/index.d.ts} +0 -1
  178. package/dist/network/index.js +2 -0
  179. package/dist/network/index.js.map +7 -0
  180. package/dist/network/network.d.ts +59 -0
  181. package/dist/network/network.js +2 -0
  182. package/dist/network/network.js.map +7 -0
  183. package/{src/network/packet/index.ts → dist/network/packet/index.d.ts} +0 -1
  184. package/dist/network/packet/index.js +2 -0
  185. package/dist/network/packet/index.js.map +7 -0
  186. package/dist/network/packet/packet-types.d.ts +84 -0
  187. package/dist/network/packet/packet-types.js +2 -0
  188. package/dist/network/packet/packet-types.js.map +7 -0
  189. package/dist/network/packet/packet.d.ts +25 -0
  190. package/dist/network/packet/packet.js +2 -0
  191. package/dist/network/packet/packet.js.map +7 -0
  192. package/dist/network/websocket-transport.d.ts +24 -0
  193. package/dist/network/websocket-transport.js +2 -0
  194. package/dist/network/websocket-transport.js.map +7 -0
  195. package/dist/omu.d.ts +61 -0
  196. package/dist/omu.js +2 -0
  197. package/dist/omu.js.map +7 -0
  198. package/dist/result.d.ts +26 -0
  199. package/dist/result.js +2 -0
  200. package/dist/result.js.map +7 -0
  201. package/dist/serialize/bytebuffer.d.ts +73 -0
  202. package/dist/serialize/bytebuffer.js +2 -0
  203. package/dist/serialize/bytebuffer.js.map +7 -0
  204. package/dist/serialize/index.d.ts +2 -0
  205. package/dist/serialize/index.js +2 -0
  206. package/dist/serialize/index.js.map +7 -0
  207. package/dist/serialize/serializer.d.ts +26 -0
  208. package/dist/serialize/serializer.js +2 -0
  209. package/dist/serialize/serializer.js.map +7 -0
  210. package/dist/token.d.ts +14 -0
  211. package/dist/token.js +2 -0
  212. package/dist/token.js.map +7 -0
  213. package/dist/version.d.ts +2 -0
  214. package/dist/version.js +2 -0
  215. package/dist/version.js.map +7 -0
  216. package/package.json +12 -9
  217. package/CHANGELOG.md +0 -1845
  218. package/src/api/asset/extension.ts +0 -193
  219. package/src/api/asset/index.ts +0 -5
  220. package/src/api/dashboard/extension.ts +0 -651
  221. package/src/api/dashboard/index.ts +0 -38
  222. package/src/api/dashboard/packets.ts +0 -126
  223. package/src/api/endpoint/endpoint.ts +0 -56
  224. package/src/api/endpoint/extension.ts +0 -133
  225. package/src/api/endpoint/packets.ts +0 -176
  226. package/src/api/extension-registry.ts +0 -17
  227. package/src/api/extension.ts +0 -19
  228. package/src/api/http/extension.ts +0 -401
  229. package/src/api/http/http.ts +0 -79
  230. package/src/api/http/websocket.ts +0 -283
  231. package/src/api/i18n/extension.ts +0 -65
  232. package/src/api/index.ts +0 -3
  233. package/src/api/logger/extension.ts +0 -75
  234. package/src/api/logger/index.ts +0 -4
  235. package/src/api/logger/packets.ts +0 -38
  236. package/src/api/permission/extension.ts +0 -107
  237. package/src/api/permission/permission.ts +0 -53
  238. package/src/api/plugin/extension.ts +0 -100
  239. package/src/api/registry/extension.ts +0 -326
  240. package/src/api/registry/packets.ts +0 -64
  241. package/src/api/server/extension.ts +0 -155
  242. package/src/api/server/index.ts +0 -11
  243. package/src/api/session/extension.ts +0 -205
  244. package/src/api/session/index.ts +0 -7
  245. package/src/api/signal/extension.ts +0 -125
  246. package/src/api/signal/index.ts +0 -1
  247. package/src/api/signal/packets.ts +0 -61
  248. package/src/api/signal/signal.ts +0 -67
  249. package/src/api/table/extension.ts +0 -554
  250. package/src/api/table/packets.ts +0 -252
  251. package/src/api/table/table.ts +0 -113
  252. package/src/app.ts +0 -95
  253. package/src/const.ts +0 -2
  254. package/src/errors.ts +0 -70
  255. package/src/event/index.ts +0 -18
  256. package/src/helper.ts +0 -16
  257. package/src/identifier.ts +0 -256
  258. package/src/index.ts +0 -87
  259. package/src/localization/locale.ts +0 -737
  260. package/src/lock.ts +0 -43
  261. package/src/network/connection.ts +0 -45
  262. package/src/network/encryption.ts +0 -221
  263. package/src/network/frame-transport.ts +0 -186
  264. package/src/network/network.ts +0 -322
  265. package/src/network/packet/packet-types.ts +0 -164
  266. package/src/network/packet/packet.ts +0 -55
  267. package/src/network/websocket-transport.ts +0 -123
  268. package/src/omu.ts +0 -156
  269. package/src/result.ts +0 -78
  270. package/src/serialize/bytebuffer.ts +0 -432
  271. package/src/serialize/index.ts +0 -2
  272. package/src/serialize/serializer.ts +0 -149
  273. package/src/token.ts +0 -39
  274. package/src/version.ts +0 -2
  275. package/tsconfig.json +0 -18
  276. /package/{src/address.ts → dist/address.d.ts} +0 -0
@@ -0,0 +1,65 @@
1
+ import { Identifier } from '../../identifier';
2
+ import type { TableConfig } from './table.js';
3
+ export declare class TablePacket {
4
+ readonly id: Identifier;
5
+ constructor(id: Identifier);
6
+ static serialize(packet: TablePacket): Uint8Array;
7
+ static deserialize(data: Uint8Array): TablePacket;
8
+ }
9
+ export declare class TableItemsPacket {
10
+ readonly id: Identifier;
11
+ readonly items: Record<string, Uint8Array>;
12
+ constructor(id: Identifier, items: Record<string, Uint8Array>);
13
+ static serialize(packet: TableItemsPacket): Uint8Array;
14
+ static deserialize(data: Uint8Array): TableItemsPacket;
15
+ }
16
+ export declare class TableKeysPacket {
17
+ readonly id: Identifier;
18
+ readonly keys: string[];
19
+ constructor(id: Identifier, keys: string[]);
20
+ static serialize(packet: TableKeysPacket): Uint8Array;
21
+ static deserialize(data: Uint8Array): TableKeysPacket;
22
+ }
23
+ export declare class TableProxyPacket {
24
+ readonly id: Identifier;
25
+ readonly items: Record<string, Uint8Array>;
26
+ readonly key: number;
27
+ constructor(id: Identifier, items: Record<string, Uint8Array>, key: number);
28
+ static serialize(packet: TableProxyPacket): Uint8Array;
29
+ static deserialize(data: Uint8Array): TableProxyPacket;
30
+ }
31
+ export declare class TableFetchPacket {
32
+ readonly id: Identifier;
33
+ readonly limit: number;
34
+ readonly backward: boolean;
35
+ readonly cursor: string | null;
36
+ constructor(id: Identifier, limit: number, backward?: boolean, cursor?: string | null);
37
+ static serialize(packet: TableFetchPacket): Uint8Array;
38
+ static deserialize(data: Uint8Array): TableFetchPacket;
39
+ }
40
+ export declare class TableFetchRangePacket {
41
+ readonly id: Identifier;
42
+ readonly start: string;
43
+ readonly end: string;
44
+ constructor(id: Identifier, start: string, end: string);
45
+ static serialize(packet: TableFetchRangePacket): Uint8Array;
46
+ static deserialize(data: Uint8Array): TableFetchRangePacket;
47
+ }
48
+ export declare class SetConfigPacket {
49
+ readonly id: Identifier;
50
+ readonly config: TableConfig;
51
+ constructor(id: Identifier, config: TableConfig);
52
+ static serialize(packet: SetConfigPacket): Uint8Array;
53
+ static deserialize(data: Uint8Array): SetConfigPacket;
54
+ }
55
+ export declare class SetPermissionPacket {
56
+ readonly id: Identifier;
57
+ readonly all: Identifier | null;
58
+ readonly read: Identifier | null;
59
+ readonly write: Identifier | null;
60
+ readonly remove: Identifier | null;
61
+ readonly proxy: Identifier | null;
62
+ constructor(id: Identifier, all: Identifier | null, read: Identifier | null, write: Identifier | null, remove: Identifier | null, proxy: Identifier | null);
63
+ static serialize(packet: SetPermissionPacket): Uint8Array;
64
+ static deserialize(data: Uint8Array): SetPermissionPacket;
65
+ }
@@ -0,0 +1,2 @@
1
+ import{Identifier as s}from"../../identifier";import{ByteReader as a,ByteWriter as c,Flags as A}from"../../serialize";class u{constructor(e){this.id=e}static serialize(e){const r=new c;return r.writeString(e.id.key()),r.finish()}static deserialize(e){const r=a.fromUint8Array(e),i=s.fromKey(r.readString());return new u(i)}}class f{constructor(e,r){this.id=e;this.items=r}static serialize(e){const r=new c;r.writeString(e.id.key()),r.writeULEB128(Object.keys(e.items).length);for(const[i,t]of Object.entries(e.items))r.writeString(i),r.writeUint8Array(t);return r.finish()}static deserialize(e){const r=a.fromUint8Array(e),i=s.fromKey(r.readString()),t=r.readULEB128(),n={};for(let l=0;l<t;l++){const o=r.readString(),d=r.readUint8Array();n[o]=d}return new f(i,n)}}class b{constructor(e,r){this.id=e;this.keys=r}static serialize(e){const r=new c;r.writeString(e.id.key()),r.writeULEB128(e.keys.length);for(const i of e.keys)r.writeString(i);return r.finish()}static deserialize(e){const r=a.fromUint8Array(e),i=s.fromKey(r.readString()),t=r.readULEB128(),n=[];for(let l=0;l<t;l++)n.push(r.readString());return new b(i,n)}}class g{constructor(e,r,i){this.id=e;this.items=r;this.key=i}static serialize(e){const r=new c;r.writeString(e.id.key()),r.writeULEB128(e.key),r.writeULEB128(Object.keys(e.items).length);for(const[i,t]of Object.entries(e.items))r.writeString(i),r.writeUint8Array(t);return r.finish()}static deserialize(e){const r=a.fromUint8Array(e),i=s.fromKey(r.readString()),t=r.readULEB128(),n=r.readULEB128(),l={};for(let o=0;o<n;o++){const d=r.readString(),y=r.readUint8Array();l[d]=y}return new g(i,l,t)}}class w{constructor(e,r,i=!1,t=null){this.id=e;this.limit=r;this.backward=i;this.cursor=t}static serialize(e){const r=new c;r.writeString(e.id.key()),r.writeULEB128(e.limit);const i=new A({length:2});return i.set(0,e.backward),i.set(1,e.cursor!==null),r.writeFlags(i),e.cursor!==null&&r.writeString(e.cursor),r.finish()}static deserialize(e){const r=a.fromUint8Array(e),i=s.fromKey(r.readString()),t=r.readULEB128(),n=r.readFlags(2),l=n.get(0),o=n.ifSet(1,()=>r.readString());return new w(i,t,l,o)}}class m{constructor(e,r,i){this.id=e;this.start=r;this.end=i}static serialize(e){const r=new c;return r.writeString(e.id.key()),r.writeString(e.start),r.writeString(e.end),r.finish()}static deserialize(e){const r=a.fromUint8Array(e),i=s.fromKey(r.readString()),t=r.readString(),n=r.readString();return new m(i,t,n)}}class S{constructor(e,r){this.id=e;this.config=r}static serialize(e){const r=new c;return r.writeString(e.id.key()),r.writeString(JSON.stringify(e.config)),r.finish()}static deserialize(e){const r=a.fromUint8Array(e),i=s.fromKey(r.readString()),t=JSON.parse(r.readString());return new S(i,t)}}class U{constructor(e,r,i,t,n,l){this.id=e;this.all=r;this.read=i;this.write=t;this.remove=n;this.proxy=l}static serialize(e){const r=new c;r.writeString(e.id.key());let i=0;return e.all!==null&&(i|=1),e.read!==null&&(i|=2),e.write!==null&&(i|=4),e.remove!==null&&(i|=8),e.proxy!==null&&(i|=16),r.writeUint8(i),e.all&&r.writeString(e.all.key()),e.read&&r.writeString(e.read.key()),e.write&&r.writeString(e.write.key()),e.remove&&r.writeString(e.remove.key()),e.proxy&&r.writeString(e.proxy.key()),r.finish()}static deserialize(e){const r=a.fromUint8Array(e),i=s.fromKey(r.readString()),t=r.readUint8(),n=t&1?s.fromKey(r.readString()):null,l=t&2?s.fromKey(r.readString()):null,o=t&4?s.fromKey(r.readString()):null,d=t&8?s.fromKey(r.readString()):null,y=t&16?s.fromKey(r.readString()):null;return new U(i,n,l,o,d,y)}}export{S as SetConfigPacket,U as SetPermissionPacket,w as TableFetchPacket,m as TableFetchRangePacket,f as TableItemsPacket,b as TableKeysPacket,u as TablePacket,g as TableProxyPacket};
2
+ //# sourceMappingURL=packets.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/api/table/packets.ts"],
4
+ "sourcesContent": ["import { Identifier } from '../../identifier';\nimport { ByteReader, ByteWriter, Flags } from '../../serialize';\n\nimport type { TableConfig } from './table.js';\n\nexport class TablePacket {\n constructor(public readonly id: Identifier) {}\n\n public static serialize(packet: TablePacket): Uint8Array {\n const writer = new ByteWriter();\n writer.writeString(packet.id.key());\n return writer.finish();\n }\n\n public static deserialize(data: Uint8Array): TablePacket {\n const reader = ByteReader.fromUint8Array(data);\n const id = Identifier.fromKey(reader.readString());\n return new TablePacket(id);\n }\n}\n\nexport class TableItemsPacket {\n constructor(\n public readonly id: Identifier,\n public readonly items: Record<string, Uint8Array>,\n ) {}\n\n public static serialize(packet: TableItemsPacket): Uint8Array {\n const writer = new ByteWriter();\n writer.writeString(packet.id.key());\n writer.writeULEB128(Object.keys(packet.items).length);\n for (const [key, value] of Object.entries(packet.items)) {\n writer.writeString(key);\n writer.writeUint8Array(value);\n }\n return writer.finish();\n }\n\n public static deserialize(data: Uint8Array): TableItemsPacket {\n const reader = ByteReader.fromUint8Array(data);\n const id = Identifier.fromKey(reader.readString());\n const count = reader.readULEB128();\n const items: Record<string, Uint8Array> = {};\n for (let i = 0; i < count; i++) {\n const key = reader.readString();\n const value = reader.readUint8Array();\n items[key] = value;\n }\n return new TableItemsPacket(id, items);\n }\n}\n\nexport class TableKeysPacket {\n constructor(\n public readonly id: Identifier,\n public readonly keys: string[],\n ) {}\n\n public static serialize(packet: TableKeysPacket): Uint8Array {\n const writer = new ByteWriter();\n writer.writeString(packet.id.key());\n writer.writeULEB128(packet.keys.length);\n for (const key of packet.keys) {\n writer.writeString(key);\n }\n return writer.finish();\n }\n\n public static deserialize(data: Uint8Array): TableKeysPacket {\n const reader = ByteReader.fromUint8Array(data);\n const id = Identifier.fromKey(reader.readString());\n const count = reader.readULEB128();\n const keys: string[] = [];\n for (let i = 0; i < count; i++) {\n keys.push(reader.readString());\n }\n return new TableKeysPacket(id, keys);\n }\n}\n\nexport class TableProxyPacket {\n constructor(\n public readonly id: Identifier,\n public readonly items: Record<string, Uint8Array>,\n public readonly key: number,\n ) {}\n\n public static serialize(packet: TableProxyPacket): Uint8Array {\n const writer = new ByteWriter();\n writer.writeString(packet.id.key());\n writer.writeULEB128(packet.key);\n writer.writeULEB128(Object.keys(packet.items).length);\n for (const [key, value] of Object.entries(packet.items)) {\n writer.writeString(key);\n writer.writeUint8Array(value);\n }\n return writer.finish();\n }\n\n public static deserialize(data: Uint8Array): TableProxyPacket {\n const reader = ByteReader.fromUint8Array(data);\n const id = Identifier.fromKey(reader.readString());\n const key = reader.readULEB128();\n const count = reader.readULEB128();\n const items: Record<string, Uint8Array> = {};\n for (let i = 0; i < count; i++) {\n const key = reader.readString();\n const value = reader.readUint8Array();\n items[key] = value;\n }\n return new TableProxyPacket(id, items, key);\n }\n}\nexport class TableFetchPacket {\n constructor(\n public readonly id: Identifier,\n public readonly limit: number,\n public readonly backward: boolean = false,\n public readonly cursor: string | null = null,\n ) {}\n\n public static serialize(packet: TableFetchPacket): Uint8Array {\n const writer = new ByteWriter();\n writer.writeString(packet.id.key());\n writer.writeULEB128(packet.limit);\n const flags = new Flags({ length: 2 });\n flags.set(0, packet.backward);\n flags.set(1, packet.cursor !== null);\n writer.writeFlags(flags);\n if (packet.cursor !== null) {\n writer.writeString(packet.cursor);\n }\n return writer.finish();\n }\n\n public static deserialize(data: Uint8Array): TableFetchPacket {\n const reader = ByteReader.fromUint8Array(data);\n const id = Identifier.fromKey(reader.readString());\n const limit = reader.readULEB128();\n const flags = reader.readFlags(2);\n const backward = flags.get(0);\n const cursor = flags.ifSet(1, () => reader.readString());\n return new TableFetchPacket(id, limit, backward, cursor);\n }\n}\n\nexport class TableFetchRangePacket {\n constructor(\n public readonly id: Identifier,\n public readonly start: string,\n public readonly end: string,\n ) {}\n\n public static serialize(packet: TableFetchRangePacket): Uint8Array {\n const writer = new ByteWriter();\n writer.writeString(packet.id.key());\n writer.writeString(packet.start);\n writer.writeString(packet.end);\n return writer.finish();\n }\n\n public static deserialize(data: Uint8Array): TableFetchRangePacket {\n const reader = ByteReader.fromUint8Array(data);\n const id = Identifier.fromKey(reader.readString());\n const start = reader.readString();\n const end = reader.readString();\n return new TableFetchRangePacket(id, start, end);\n }\n}\n\nexport class SetConfigPacket {\n constructor(\n public readonly id: Identifier,\n public readonly config: TableConfig,\n ) {}\n\n public static serialize(packet: SetConfigPacket): Uint8Array {\n const writer = new ByteWriter();\n writer.writeString(packet.id.key());\n writer.writeString(JSON.stringify(packet.config));\n return writer.finish();\n }\n\n public static deserialize(data: Uint8Array): SetConfigPacket {\n const reader = ByteReader.fromUint8Array(data);\n const id = Identifier.fromKey(reader.readString());\n const config = JSON.parse(reader.readString());\n return new SetConfigPacket(id, config);\n }\n}\n\nexport class SetPermissionPacket {\n constructor(\n public readonly id: Identifier,\n public readonly all: Identifier | null,\n public readonly read: Identifier | null,\n public readonly write: Identifier | null,\n public readonly remove: Identifier | null,\n public readonly proxy: Identifier | null,\n ) {}\n\n public static serialize(packet: SetPermissionPacket): Uint8Array {\n const writer = new ByteWriter();\n writer.writeString(packet.id.key());\n let flags = 0;\n if (packet.all !== null) {\n flags |= 0b1;\n }\n if (packet.read !== null) {\n flags |= 0b10;\n }\n if (packet.write !== null) {\n flags |= 0b100;\n }\n if (packet.remove !== null) {\n flags |= 0b1000;\n }\n if (packet.proxy !== null) {\n flags |= 0b10000;\n }\n writer.writeUint8(flags);\n if (packet.all) {\n writer.writeString(packet.all.key());\n }\n if (packet.read) {\n writer.writeString(packet.read.key());\n }\n if (packet.write) {\n writer.writeString(packet.write.key());\n }\n if (packet.remove) {\n writer.writeString(packet.remove.key());\n }\n if (packet.proxy) {\n writer.writeString(packet.proxy.key());\n }\n return writer.finish();\n }\n\n public static deserialize(data: Uint8Array): SetPermissionPacket {\n const reader = ByteReader.fromUint8Array(data);\n const id = Identifier.fromKey(reader.readString());\n const flags = reader.readUint8();\n const all = flags & 0b1 ? Identifier.fromKey(reader.readString()) : null;\n const read = flags & 0b10 ? Identifier.fromKey(reader.readString()) : null;\n const write = flags & 0b100 ? Identifier.fromKey(reader.readString()) : null;\n const remove = flags & 0b1000 ? Identifier.fromKey(reader.readString()) : null;\n const proxy = flags & 0b10000 ? Identifier.fromKey(reader.readString()) : null;\n return new SetPermissionPacket(id, all, read, write, remove, proxy);\n }\n}\n\n"],
5
+ "mappings": "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",
6
+ "names": ["Identifier", "ByteReader", "ByteWriter", "Flags", "TablePacket", "id", "packet", "writer", "data", "reader", "TableItemsPacket", "items", "key", "value", "count", "i", "TableKeysPacket", "keys", "TableProxyPacket", "TableFetchPacket", "limit", "backward", "cursor", "flags", "TableFetchRangePacket", "start", "end", "SetConfigPacket", "config", "SetPermissionPacket", "all", "read", "write", "remove", "proxy"]
7
+ }
@@ -0,0 +1,75 @@
1
+ import type { EventEmitter, Unlisten } from '../../event';
2
+ import { Identifier, IntoId } from '../../identifier';
3
+ import type { JsonType, Serializable } from '../../serialize';
4
+ export type TableConfig = {
5
+ cache_size: number;
6
+ };
7
+ export interface Table<T> {
8
+ readonly cache: ReadonlyMap<string, T>;
9
+ readonly event: TableEvents<T>;
10
+ get(key: string): Promise<T | undefined>;
11
+ getMany(...keys: string[]): Promise<Map<string, T>>;
12
+ add(...item: T[]): Promise<void>;
13
+ update(...item: T[]): Promise<void>;
14
+ remove(...items: T[]): Promise<void>;
15
+ clear(): Promise<void>;
16
+ has(key: string): Promise<boolean>;
17
+ hasMany<T extends Record<string, unknown>>(...keys: (keyof T)[]): Promise<{
18
+ [key in keyof T]: boolean;
19
+ }>;
20
+ hasAll(...keys: string[]): Promise<boolean>;
21
+ hasAny(...keys: string[]): Promise<boolean>;
22
+ fetchItems({ limit, backward, cursor }: {
23
+ limit: number;
24
+ backward?: boolean;
25
+ cursor?: string;
26
+ }): Promise<Map<string, T>>;
27
+ fetchRange({ start, end }: {
28
+ start: string;
29
+ end: string;
30
+ }): Promise<Map<string, T>>;
31
+ fetchAll(): Promise<Map<string, T>>;
32
+ iterate({ backward, cursor }: {
33
+ backward?: boolean;
34
+ cursor?: string;
35
+ }): AsyncIterable<T>;
36
+ size(): Promise<number>;
37
+ proxy(proxy: (item: T) => T | undefined): Unlisten;
38
+ setCacheSize(size: number): void;
39
+ setConfig(config: TableConfig): void;
40
+ setPermissions(permissions: TablePermissions): void;
41
+ listen(listener?: (items: Map<string, T>) => void): Unlisten;
42
+ }
43
+ export type TableEvents<T> = {
44
+ add: EventEmitter<[Map<string, T>]>;
45
+ update: EventEmitter<[Map<string, T>]>;
46
+ remove: EventEmitter<[Map<string, T>]>;
47
+ clear: EventEmitter<[]>;
48
+ cacheUpdate: EventEmitter<[Map<string, T>]>;
49
+ };
50
+ export type TablePermissions = {
51
+ all?: Identifier;
52
+ read?: Identifier;
53
+ write?: Identifier;
54
+ remove?: Identifier;
55
+ proxy?: Identifier;
56
+ };
57
+ export declare class TableType<T> {
58
+ id: Identifier;
59
+ serializer: Serializable<T, Uint8Array>;
60
+ keyFunction: (item: T) => string;
61
+ permissions?: TablePermissions | undefined;
62
+ constructor(id: Identifier, serializer: Serializable<T, Uint8Array>, keyFunction: (item: T) => string, permissions?: TablePermissions | undefined);
63
+ static createJson<T, D extends JsonType = JsonType>(identifier: IntoId, { name, key, permissions, serializer }: {
64
+ name: string;
65
+ key: (item: T) => string;
66
+ permissions?: TablePermissions;
67
+ serializer?: Serializable<T, D>;
68
+ }): TableType<T>;
69
+ static createSerialized<T>(identifier: IntoId, { name, key, permissions, serializer }: {
70
+ name: string;
71
+ key: (item: T) => string;
72
+ permissions?: TablePermissions;
73
+ serializer: Serializable<T, Uint8Array>;
74
+ }): TableType<T>;
75
+ }
@@ -0,0 +1,2 @@
1
+ import{Identifier as a}from"../../identifier";import{Serializer as s}from"../../serialize";class o{constructor(e,i,r,t){this.id=e;this.serializer=i;this.keyFunction=r;this.permissions=t}static createJson(e,{name:i,key:r,permissions:t,serializer:n}){return new o(a.from(e).join(i),s.pipe(n??s.noop(),s.json()),r,t)}static createSerialized(e,{name:i,key:r,permissions:t,serializer:n}){return new o(a.from(e).join(i),n,r,t)}}export{o as TableType};
2
+ //# sourceMappingURL=table.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/api/table/table.ts"],
4
+ "sourcesContent": ["import type { EventEmitter, Unlisten } from '../../event';\nimport { Identifier, IntoId } from '../../identifier';\nimport type { JsonType, Serializable } from '../../serialize';\nimport { Serializer } from '../../serialize';\n\nexport type TableConfig = {\n cache_size: number;\n};\n\nexport interface Table<T> {\n readonly cache: ReadonlyMap<string, T>;\n readonly event: TableEvents<T>;\n get(key: string): Promise<T | undefined>;\n getMany(...keys: string[]): Promise<Map<string, T>>;\n add(...item: T[]): Promise<void>;\n update(...item: T[]): Promise<void>;\n remove(...items: T[]): Promise<void>;\n clear(): Promise<void>;\n has(key: string): Promise<boolean>;\n hasMany<T extends Record<string, unknown>>(...keys: (keyof T)[]): Promise<{ [key in keyof T]: boolean }>;\n hasAll(...keys: string[]): Promise<boolean>;\n hasAny(...keys: string[]): Promise<boolean>;\n\n fetchItems({\n limit,\n backward,\n cursor,\n }: {\n limit: number;\n backward?: boolean;\n cursor?: string;\n }): Promise<Map<string, T>>;\n fetchRange({ start, end }: { start: string; end: string }): Promise<Map<string, T>>;\n fetchAll(): Promise<Map<string, T>>;\n iterate({ backward, cursor }: { backward?: boolean; cursor?: string }): AsyncIterable<T>;\n size(): Promise<number>;\n\n proxy(proxy: (item: T) => T | undefined): Unlisten;\n setCacheSize(size: number): void;\n setConfig(config: TableConfig): void;\n setPermissions(permissions: TablePermissions): void;\n\n listen(listener?: (items: Map<string, T>) => void): Unlisten;\n}\n\nexport type TableEvents<T> = {\n add: EventEmitter<[Map<string, T>]>;\n update: EventEmitter<[Map<string, T>]>;\n remove: EventEmitter<[Map<string, T>]>;\n clear: EventEmitter<[]>;\n cacheUpdate: EventEmitter<[Map<string, T>]>;\n};\n\nexport type TablePermissions = {\n all?: Identifier;\n read?: Identifier;\n write?: Identifier;\n remove?: Identifier;\n proxy?: Identifier;\n};\n\nexport class TableType<T> {\n constructor(\n public id: Identifier,\n public serializer: Serializable<T, Uint8Array>,\n public keyFunction: (item: T) => string,\n public permissions?: TablePermissions | undefined,\n ) {}\n\n public static createJson<T, D extends JsonType = JsonType>(\n identifier: IntoId,\n {\n name,\n key,\n permissions,\n serializer,\n }: {\n name: string;\n key: (item: T) => string;\n permissions?: TablePermissions;\n serializer?: Serializable<T, D>;\n },\n ): TableType<T> {\n return new TableType<T>(\n Identifier.from(identifier).join(name),\n Serializer.pipe<T, D, Uint8Array>(serializer ?? Serializer.noop(), Serializer.json()),\n key,\n permissions,\n );\n }\n\n public static createSerialized<T>(\n identifier: IntoId,\n {\n name,\n key,\n permissions,\n serializer,\n }: {\n name: string;\n key: (item: T) => string;\n permissions?: TablePermissions;\n serializer: Serializable<T, Uint8Array>;\n },\n ): TableType<T> {\n return new TableType<T>(\n Identifier.from(identifier).join(name),\n serializer,\n key,\n permissions,\n );\n }\n}\n"],
5
+ "mappings": "AACA,OAAS,cAAAA,MAA0B,mBAEnC,OAAS,cAAAC,MAAkB,kBA0DpB,MAAMC,CAAa,CACtB,YACWC,EACAC,EACAC,EACAC,EACT,CAJS,QAAAH,EACA,gBAAAC,EACA,iBAAAC,EACA,iBAAAC,CACR,CAEH,OAAc,WACVC,EACA,CACI,KAAAC,EACA,IAAAC,EACA,YAAAH,EACA,WAAAF,CACJ,EAMY,CACZ,OAAO,IAAIF,EACPF,EAAW,KAAKO,CAAU,EAAE,KAAKC,CAAI,EACrCP,EAAW,KAAuBG,GAAcH,EAAW,KAAK,EAAGA,EAAW,KAAK,CAAC,EACpFQ,EACAH,CACJ,CACJ,CAEA,OAAc,iBACVC,EACA,CACI,KAAAC,EACA,IAAAC,EACA,YAAAH,EACA,WAAAF,CACJ,EAMY,CACZ,OAAO,IAAIF,EACPF,EAAW,KAAKO,CAAU,EAAE,KAAKC,CAAI,EACrCJ,EACAK,EACAH,CACJ,CACJ,CACJ",
6
+ "names": ["Identifier", "Serializer", "TableType", "id", "serializer", "keyFunction", "permissions", "identifier", "name", "key"]
7
+ }
package/dist/app.d.ts ADDED
@@ -0,0 +1,49 @@
1
+ import { Identifier, IntoId } from './identifier';
2
+ import type { Locale } from './localization/locale.js';
3
+ import type { LocalizedText } from './localization/localization.js';
4
+ export type AppMetadata = {
5
+ locale: Locale;
6
+ name?: LocalizedText;
7
+ icon?: LocalizedText;
8
+ description?: LocalizedText;
9
+ image?: LocalizedText;
10
+ site?: LocalizedText;
11
+ repository?: LocalizedText;
12
+ authors?: LocalizedText;
13
+ license?: LocalizedText;
14
+ tags?: string[];
15
+ };
16
+ export type AppType = 'app' | 'service' | 'remote' | 'plugin' | 'dashboard';
17
+ export type DependencySpecifier = {
18
+ version: string;
19
+ index?: string;
20
+ };
21
+ export type AppJson = {
22
+ id: string;
23
+ type: AppType;
24
+ parent_id?: string;
25
+ version?: string;
26
+ url?: string;
27
+ metadata?: AppMetadata;
28
+ dependencies?: Record<string, DependencySpecifier | string>;
29
+ };
30
+ export declare class App {
31
+ readonly id: Identifier;
32
+ readonly type: AppType;
33
+ readonly parentId?: Identifier;
34
+ readonly version?: string;
35
+ readonly url?: string;
36
+ readonly metadata?: AppMetadata;
37
+ readonly dependencies: Record<string, DependencySpecifier | string>;
38
+ constructor(id: IntoId, options: {
39
+ type?: AppType;
40
+ parentId?: IntoId;
41
+ version?: string;
42
+ url?: string;
43
+ metadata?: AppMetadata;
44
+ dependencies?: Record<string, DependencySpecifier | string>;
45
+ });
46
+ static deserialize(info: AppJson): App;
47
+ static serialize(data: App): AppJson;
48
+ join(...paths: string[]): App;
49
+ }
package/dist/app.js ADDED
@@ -0,0 +1,2 @@
1
+ import{Identifier as i}from"./identifier";class r{id;type;parentId;version;url;metadata;dependencies;constructor(e,t){this.id=i.from(e),this.parentId=i.fromOptional(t.parentId),this.version=t.version,this.url=t.url,this.metadata=t.metadata,this.type=t.type??"app",this.dependencies=t.dependencies??{}}static deserialize(e){const t=i.fromKey(e.id);return new r(t,{parentId:i.fromOptional(e.parent_id),version:e.version,url:e.url,type:e.type,metadata:e.metadata,dependencies:e.dependencies??{}})}static serialize(e){return{id:e.id.key(),type:e.type,parent_id:e.parentId?.key(),version:e.version,url:e.url,metadata:e.metadata,dependencies:e.dependencies}}join(...e){return new r(this.id.join(...e),{parentId:this.parentId,version:this.version,url:this.url,type:this.type,metadata:this.metadata,dependencies:this.dependencies})}}export{r as App};
2
+ //# sourceMappingURL=app.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../src/app.ts"],
4
+ "sourcesContent": ["import { Identifier, IntoId } from './identifier';\nimport type { Locale } from './localization/locale.js';\nimport type { LocalizedText } from './localization/localization.js';\n\nexport type AppMetadata = {\n locale: Locale;\n name?: LocalizedText;\n icon?: LocalizedText;\n description?: LocalizedText;\n image?: LocalizedText;\n site?: LocalizedText;\n repository?: LocalizedText;\n authors?: LocalizedText;\n license?: LocalizedText;\n tags?: string[];\n};\n\nexport type AppType = 'app' | 'service' | 'remote' | 'plugin' | 'dashboard';\n\nexport type DependencySpecifier = {\n version: string;\n index?: string;\n};\n\nexport type AppJson = {\n id: string;\n type: AppType;\n parent_id?: string;\n version?: string;\n url?: string;\n metadata?: AppMetadata;\n dependencies?: Record<string, DependencySpecifier | string>;\n};\n\nexport class App {\n public readonly id: Identifier;\n public readonly type: AppType;\n public readonly parentId?: Identifier;\n public readonly version?: string;\n public readonly url?: string;\n public readonly metadata?: AppMetadata;\n public readonly dependencies: Record<string, DependencySpecifier | string>;\n\n constructor(id: IntoId, options: {\n type?: AppType;\n parentId?: IntoId;\n version?: string;\n url?: string;\n metadata?: AppMetadata;\n dependencies?: Record<string, DependencySpecifier | string>;\n }) {\n this.id = Identifier.from(id);\n this.parentId = Identifier.fromOptional(options.parentId);\n this.version = options.version;\n this.url = options.url;\n this.metadata = options.metadata;\n this.type = options.type ?? 'app';\n this.dependencies = options.dependencies ?? {};\n }\n\n public static deserialize(info: AppJson): App {\n const id = Identifier.fromKey(info.id);\n return new App(id, {\n parentId: Identifier.fromOptional(info.parent_id),\n version: info.version,\n url: info.url,\n type: info.type,\n metadata: info.metadata,\n dependencies: info.dependencies ?? {},\n });\n }\n\n public static serialize(data: App): AppJson {\n return {\n id: data.id.key(),\n type: data.type,\n parent_id: data.parentId?.key(),\n version: data.version,\n url: data.url,\n metadata: data.metadata,\n dependencies: data.dependencies,\n };\n }\n\n public join(...paths: string[]): App {\n return new App(this.id.join(...paths), {\n parentId: this.parentId,\n version: this.version,\n url: this.url,\n type: this.type,\n metadata: this.metadata,\n dependencies: this.dependencies,\n });\n }\n}\n"],
5
+ "mappings": "AAAA,OAAS,cAAAA,MAA0B,eAkC5B,MAAMC,CAAI,CACG,GACA,KACA,SACA,QACA,IACA,SACA,aAEhB,YAAYC,EAAYC,EAOrB,CACC,KAAK,GAAKH,EAAW,KAAKE,CAAE,EAC5B,KAAK,SAAWF,EAAW,aAAaG,EAAQ,QAAQ,EACxD,KAAK,QAAUA,EAAQ,QACvB,KAAK,IAAMA,EAAQ,IACnB,KAAK,SAAWA,EAAQ,SACxB,KAAK,KAAOA,EAAQ,MAAQ,MAC5B,KAAK,aAAeA,EAAQ,cAAgB,CAAC,CACjD,CAEA,OAAc,YAAYC,EAAoB,CAC1C,MAAMF,EAAKF,EAAW,QAAQI,EAAK,EAAE,EACrC,OAAO,IAAIH,EAAIC,EAAI,CACf,SAAUF,EAAW,aAAaI,EAAK,SAAS,EAChD,QAASA,EAAK,QACd,IAAKA,EAAK,IACV,KAAMA,EAAK,KACX,SAAUA,EAAK,SACf,aAAcA,EAAK,cAAgB,CAAC,CACxC,CAAC,CACL,CAEA,OAAc,UAAUC,EAAoB,CACxC,MAAO,CACH,GAAIA,EAAK,GAAG,IAAI,EAChB,KAAMA,EAAK,KACX,UAAWA,EAAK,UAAU,IAAI,EAC9B,QAASA,EAAK,QACd,IAAKA,EAAK,IACV,SAAUA,EAAK,SACf,aAAcA,EAAK,YACvB,CACJ,CAEO,QAAQC,EAAsB,CACjC,OAAO,IAAIL,EAAI,KAAK,GAAG,KAAK,GAAGK,CAAK,EAAG,CACnC,SAAU,KAAK,SACf,QAAS,KAAK,QACd,IAAK,KAAK,IACV,KAAM,KAAK,KACX,SAAU,KAAK,SACf,aAAc,KAAK,YACvB,CAAC,CACL,CACJ",
6
+ "names": ["Identifier", "App", "id", "options", "info", "data", "paths"]
7
+ }
@@ -0,0 +1,2 @@
1
+ export declare const textEncoder: TextEncoder;
2
+ export declare const textDecoder: TextDecoder;
package/dist/const.js ADDED
@@ -0,0 +1,2 @@
1
+ const e=new TextEncoder,t=new TextDecoder;export{t as textDecoder,e as textEncoder};
2
+ //# sourceMappingURL=const.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../src/const.ts"],
4
+ "sourcesContent": ["export const textEncoder: TextEncoder = new TextEncoder();\nexport const textDecoder: TextDecoder = new TextDecoder();\n"],
5
+ "mappings": "AAAO,MAAMA,EAA2B,IAAI,YAC/BC,EAA2B,IAAI",
6
+ "names": ["textEncoder", "textDecoder"]
7
+ }
@@ -0,0 +1,36 @@
1
+ import { DisconnectType } from './network/packet/packet-types.js';
2
+ export declare class OmuError extends Error {
3
+ constructor(message: string | null);
4
+ }
5
+ export declare class DisconnectReason extends OmuError {
6
+ type: DisconnectType;
7
+ message: string;
8
+ constructor(type: DisconnectType, message?: string);
9
+ }
10
+ export declare class ServerRestart extends DisconnectReason {
11
+ constructor(message: string);
12
+ }
13
+ export declare class AnotherConnection extends DisconnectReason {
14
+ constructor(message: string);
15
+ }
16
+ export declare class PermissionDenied extends DisconnectReason {
17
+ constructor(message: string);
18
+ }
19
+ export declare class AppRemoved extends DisconnectReason {
20
+ constructor(message: string);
21
+ }
22
+ export declare class InvalidToken extends DisconnectReason {
23
+ constructor(message: string);
24
+ }
25
+ export declare class InvalidOrigin extends DisconnectReason {
26
+ constructor(message: string);
27
+ }
28
+ export declare class InvalidVersion extends DisconnectReason {
29
+ constructor(message: string);
30
+ }
31
+ export declare class InvalidPacket extends DisconnectReason {
32
+ constructor(message: string);
33
+ }
34
+ export declare class InternalError extends DisconnectReason {
35
+ constructor(message: string);
36
+ }
package/dist/errors.js ADDED
@@ -0,0 +1,2 @@
1
+ import{DisconnectType as e}from"./network/packet/packet-types.js";class o extends Error{constructor(s){super(s??void 0),this.name=this.constructor.name}}class t extends o{constructor(c,n=""){super(n);this.type=c;this.message=n}}class p extends t{constructor(s){super(e.SERVER_RESTART,s)}}class u extends t{constructor(s){super(e.ANOTHER_CONNECTION,s)}}class x extends t{constructor(s){super(e.PERMISSION_DENIED,s)}}class a extends t{constructor(s){super(e.APP_REMOVED,s)}}class I extends t{constructor(s){super(e.INVALID_TOKEN,s)}}class l extends t{constructor(s){super(e.INVALID_ORIGIN,s)}}class d extends t{constructor(s){super(e.INVALID_VERSION,s)}}class E extends t{constructor(s){super(e.INVALID_PACKET,s)}}class R extends t{constructor(s){super(e.INTERNAL_ERROR,s)}}export{u as AnotherConnection,a as AppRemoved,t as DisconnectReason,R as InternalError,l as InvalidOrigin,E as InvalidPacket,I as InvalidToken,d as InvalidVersion,o as OmuError,x as PermissionDenied,p as ServerRestart};
2
+ //# sourceMappingURL=errors.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../src/errors.ts"],
4
+ "sourcesContent": ["import { DisconnectType } from './network/packet/packet-types.js';\nexport class OmuError extends Error {\n constructor(message: string | null) {\n super(message ?? undefined);\n this.name = this.constructor.name;\n }\n}\n\nexport class DisconnectReason extends OmuError {\n constructor(\n public type: DisconnectType,\n public message = '',\n ) {\n super(message);\n }\n}\n\nexport class ServerRestart extends DisconnectReason {\n constructor(message: string) {\n super(DisconnectType.SERVER_RESTART, message);\n }\n}\n\nexport class AnotherConnection extends DisconnectReason {\n constructor(message: string) {\n super(DisconnectType.ANOTHER_CONNECTION, message);\n }\n}\n\nexport class PermissionDenied extends DisconnectReason {\n constructor(message: string) {\n super(DisconnectType.PERMISSION_DENIED, message);\n }\n}\n\nexport class AppRemoved extends DisconnectReason {\n constructor(message: string) {\n super(DisconnectType.APP_REMOVED, message);\n }\n}\n\nexport class InvalidToken extends DisconnectReason {\n constructor(message: string) {\n super(DisconnectType.INVALID_TOKEN, message);\n }\n}\n\nexport class InvalidOrigin extends DisconnectReason {\n constructor(message: string) {\n super(DisconnectType.INVALID_ORIGIN, message);\n }\n}\n\nexport class InvalidVersion extends DisconnectReason {\n constructor(message: string) {\n super(DisconnectType.INVALID_VERSION, message);\n }\n}\n\nexport class InvalidPacket extends DisconnectReason {\n constructor(message: string) {\n super(DisconnectType.INVALID_PACKET, message);\n }\n}\n\nexport class InternalError extends DisconnectReason {\n constructor(message: string) {\n super(DisconnectType.INTERNAL_ERROR, message);\n }\n}\n"],
5
+ "mappings": "AAAA,OAAS,kBAAAA,MAAsB,mCACxB,MAAMC,UAAiB,KAAM,CAChC,YAAYC,EAAwB,CAChC,MAAMA,GAAW,MAAS,EAC1B,KAAK,KAAO,KAAK,YAAY,IACjC,CACJ,CAEO,MAAMC,UAAyBF,CAAS,CAC3C,YACWG,EACAF,EAAU,GACnB,CACE,MAAMA,CAAO,EAHN,UAAAE,EACA,aAAAF,CAGX,CACJ,CAEO,MAAMG,UAAsBF,CAAiB,CAChD,YAAYD,EAAiB,CACzB,MAAMF,EAAe,eAAgBE,CAAO,CAChD,CACJ,CAEO,MAAMI,UAA0BH,CAAiB,CACpD,YAAYD,EAAiB,CACzB,MAAMF,EAAe,mBAAoBE,CAAO,CACpD,CACJ,CAEO,MAAMK,UAAyBJ,CAAiB,CACnD,YAAYD,EAAiB,CACzB,MAAMF,EAAe,kBAAmBE,CAAO,CACnD,CACJ,CAEO,MAAMM,UAAmBL,CAAiB,CAC7C,YAAYD,EAAiB,CACzB,MAAMF,EAAe,YAAaE,CAAO,CAC7C,CACJ,CAEO,MAAMO,UAAqBN,CAAiB,CAC/C,YAAYD,EAAiB,CACzB,MAAMF,EAAe,cAAeE,CAAO,CAC/C,CACJ,CAEO,MAAMQ,UAAsBP,CAAiB,CAChD,YAAYD,EAAiB,CACzB,MAAMF,EAAe,eAAgBE,CAAO,CAChD,CACJ,CAEO,MAAMS,UAAuBR,CAAiB,CACjD,YAAYD,EAAiB,CACzB,MAAMF,EAAe,gBAAiBE,CAAO,CACjD,CACJ,CAEO,MAAMU,UAAsBT,CAAiB,CAChD,YAAYD,EAAiB,CACzB,MAAMF,EAAe,eAAgBE,CAAO,CAChD,CACJ,CAEO,MAAMW,UAAsBV,CAAiB,CAChD,YAAYD,EAAiB,CACzB,MAAMF,EAAe,eAAgBE,CAAO,CAChD,CACJ",
6
+ "names": ["DisconnectType", "OmuError", "message", "DisconnectReason", "type", "ServerRestart", "AnotherConnection", "PermissionDenied", "AppRemoved", "InvalidToken", "InvalidOrigin", "InvalidVersion", "InvalidPacket", "InternalError"]
7
+ }
@@ -0,0 +1,6 @@
1
+ export type Unlisten = () => void;
2
+ export declare class EventEmitter<P extends Array<any>> {
3
+ private readonly listeners;
4
+ listen(listener: (...args: P) => any): Unlisten;
5
+ emit(...args: P): Promise<void>;
6
+ }
@@ -0,0 +1,2 @@
1
+ class t{listeners=[];listen(e){return this.listeners.push(e),()=>{this.listeners.splice(this.listeners.indexOf(e),1)}}async emit(...e){for(const s of[...this.listeners])await s(...e)}}export{t as EventEmitter};
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/event/index.ts"],
4
+ "sourcesContent": ["export type Unlisten = () => void;\n\nexport class EventEmitter<P extends Array<any>> {\n private readonly listeners: Array<(...args: P) => Promise<void> | void> = [];\n\n public listen(listener: (...args: P) => any): Unlisten {\n this.listeners.push(listener);\n return () => {\n this.listeners.splice(this.listeners.indexOf(listener), 1);\n };\n }\n\n public async emit(...args: P): Promise<void> {\n for (const listener of [...this.listeners]) {\n await listener(...args);\n }\n }\n}\n"],
5
+ "mappings": "AAEO,MAAMA,CAAmC,CAC3B,UAAyD,CAAC,EAEpE,OAAOC,EAAyC,CACnD,YAAK,UAAU,KAAKA,CAAQ,EACrB,IAAM,CACT,KAAK,UAAU,OAAO,KAAK,UAAU,QAAQA,CAAQ,EAAG,CAAC,CAC7D,CACJ,CAEA,MAAa,QAAQC,EAAwB,CACzC,UAAWD,IAAY,CAAC,GAAG,KAAK,SAAS,EACrC,MAAMA,EAAS,GAAGC,CAAI,CAE9B,CACJ",
6
+ "names": ["EventEmitter", "listener", "args"]
7
+ }
@@ -0,0 +1,10 @@
1
+ type Ok<T> = {
2
+ ok: true;
3
+ data: T;
4
+ };
5
+ type Err<E> = {
6
+ ok: false;
7
+ data: E;
8
+ };
9
+ export declare function tryCatch<T, E = Error>(func: () => T): Ok<T> | Err<E>;
10
+ export {};
package/dist/helper.js ADDED
@@ -0,0 +1,2 @@
1
+ function a(r){try{return{ok:!0,data:r()}}catch(t){return{ok:!1,data:t}}}export{a as tryCatch};
2
+ //# sourceMappingURL=helper.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../src/helper.ts"],
4
+ "sourcesContent": ["type Ok<T> = {\n ok: true;\n data: T;\n};\ntype Err<E> = {\n ok: false;\n data: E;\n};\n\nexport function tryCatch<T, E = Error>(func: () => T): Ok<T> | Err<E> {\n try {\n return { ok: true, data: func() };\n } catch (e) {\n return { ok: false, data: e as E };\n }\n}\n"],
5
+ "mappings": "AASO,SAASA,EAAuBC,EAA+B,CAClE,GAAI,CACA,MAAO,CAAE,GAAI,GAAM,KAAMA,EAAK,CAAE,CACpC,OAASC,EAAG,CACR,MAAO,CAAE,GAAI,GAAO,KAAMA,CAAO,CACrC,CACJ",
6
+ "names": ["tryCatch", "func", "e"]
7
+ }
@@ -0,0 +1,51 @@
1
+ import type { ExtensionType } from './api';
2
+ import { App } from './app';
3
+ export type IntoId = Identifier | string | ExtensionType | App;
4
+ export declare class Identifier {
5
+ readonly namespace: string;
6
+ readonly path: string[];
7
+ constructor(namespace: string, ...path: string[]);
8
+ static serialize(identifier: Identifier): string;
9
+ static deserialize(json: string): Identifier;
10
+ static from(id: IntoId): Identifier;
11
+ static fromOptional(id: IntoId | undefined | null): Identifier | undefined;
12
+ static validate(namespace: string, path: string[]): void;
13
+ static format(namespace: string, ...path: string[]): string;
14
+ static fromKey(key: string): Identifier;
15
+ static fromUrl(url: string | URL): Identifier;
16
+ static namespaceFromUrl(url: string | URL): string;
17
+ get base(): Identifier;
18
+ toJson(): string;
19
+ static fromJson(json: string): Identifier;
20
+ key(): string;
21
+ isEqual(other: Identifier): boolean;
22
+ isNamespaceEqual(other: Identifier): boolean;
23
+ isSubpathOf(other: Identifier): boolean;
24
+ join(...path: string[]): Identifier;
25
+ }
26
+ export declare class IdentifierMap<T> {
27
+ private readonly map;
28
+ constructor(entries?: Iterable<[Identifier, T]>);
29
+ get size(): number;
30
+ set(identifier: Identifier, value: T): void;
31
+ get(identifier: Identifier): T | undefined;
32
+ has(identifier: Identifier): boolean;
33
+ delete(identifier: Identifier): void;
34
+ clear(): void;
35
+ keys(): IterableIterator<Identifier>;
36
+ values(): IterableIterator<T>;
37
+ entries(): IterableIterator<[Identifier, T]>;
38
+ [Symbol.iterator](): IterableIterator<[Identifier, T]>;
39
+ }
40
+ export declare class IdentifierSet {
41
+ private readonly set;
42
+ get size(): number;
43
+ add(identifier: Identifier): void;
44
+ has(identifier: Identifier): boolean;
45
+ delete(identifier: Identifier): void;
46
+ clear(): void;
47
+ keys(): IterableIterator<Identifier>;
48
+ values(): IterableIterator<Identifier>;
49
+ entries(): IterableIterator<[Identifier, Identifier]>;
50
+ [Symbol.iterator](): IterableIterator<[Identifier, Identifier]>;
51
+ }
@@ -0,0 +1,2 @@
1
+ import{App as p}from"./app";const s=/^(\.[^/:.]|[\w-])+$/,a=/^[^/:]+$/;class r{namespace;path;constructor(e,...t){r.validate(e,t),this.namespace=e,this.path=t}static serialize(e){return e.key()}static deserialize(e){return r.fromJson(e)}static from(e){if(e instanceof r)return e;if(e instanceof p)return e.id;if(typeof e=="string")return r.fromKey(e);{const t=e;if(typeof t.namespace=="string"&&Array.isArray(t.path)&&t.path.every(n=>typeof n=="string"))return new r(t.namespace,...t.path);const i=e;if(typeof i.id<"u")return r.from(i.id);throw new Error(`Cannot convert to Identifier: ${e}`)}}static fromOptional(e){if(e!=null)return r.from(e)}static validate(e,t){if(!e)throw new Error("Invalid namespace: Namespace cannot be empty");if(t.length===0)throw new Error("Invalid path: Path must have at least one name");if(!s.test(e))throw new Error(`Invalid namespace: Namespace must match ${s}`);for(const i of t)if(!a.test(i))throw new Error(`Invalid path: Name must match ${a} but got ${i}`)}static format(e,...t){return r.validate(e,t),`${e}:${t.join("/")}`}static fromKey(e){const t=e.indexOf(":");if(t===-1)throw new Error(`Invalid key: No separator found in ${e}`);if(e.indexOf(":",t+1)!==-1)throw new Error(`Invalid key: Multiple separators found in ${e}`);const i=e.slice(0,t),n=e.slice(t+1);if(!i||!n)throw new Error("Invalid key: Namespace and path cannot be empty");return new r(i,...n.split("/"))}static fromUrl(e){const t=new URL(e),i=r.namespaceFromUrl(t.href),n=t.pathname.slice(1).split("/");return new r(i,...n)}static namespaceFromUrl(e){return new URL(e).hostname.split(".").reverse().join(".")}get base(){return new r(this.namespace,this.path[0])}toJson(){return this.key()}static fromJson(e){return r.fromKey(e)}key(){return r.format(this.namespace,...this.path)}isEqual(e){return this.key()===e.key()}isNamespaceEqual(e){return this.namespace===e.namespace}isSubpathOf(e){if(this.namespace!==e.namespace||this.path.length<e.path.length)return!1;for(let t=0;t<e.path.length;t++)if(this.path[t]!==e.path[t])return!1;return!0}join(...e){return new r(this.namespace,...this.path,...e)}}class c{map=new Map;constructor(e){if(e)for(const[t,i]of e)this.map.set(t.key(),i)}get size(){return this.map.size}set(e,t){this.map.set(e.key(),t)}get(e){return this.map.get(e.key())}has(e){return this.map.has(e.key())}delete(e){this.map.delete(e.key())}clear(){this.map.clear()}*keys(){for(const e of this.map.keys())yield r.fromKey(e)}values(){return this.map.values()}*entries(){for(const[e,t]of this.map.entries())yield[r.fromKey(e),t]}[Symbol.iterator](){return this.entries()}}class u{set=new Set;get size(){return this.set.size}add(e){this.set.add(e.key())}has(e){return this.set.has(e.key())}delete(e){this.set.delete(e.key())}clear(){this.set.clear()}*keys(){for(const e of this.set.keys())yield r.fromKey(e)}values(){return this.keys()}*entries(){for(const e of this.set.keys()){const t=r.fromKey(e);yield[t,t]}}[Symbol.iterator](){return this.entries()}}export{r as Identifier,c as IdentifierMap,u as IdentifierSet};
2
+ //# sourceMappingURL=identifier.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../src/identifier.ts"],
4
+ "sourcesContent": ["import type { ExtensionType } from './api';\nimport { App } from './app';\n\nconst NAMESPACE_REGEX = /^(\\.[^/:.]|[\\w-])+$/;\nconst NAME_REGEX = /^[^/:]+$/;\n\nexport type IntoId = Identifier | string | ExtensionType | App;\n\nexport class Identifier {\n public readonly namespace: string;\n public readonly path: string[];\n\n constructor(\n namespace: string,\n ...path: string[]\n ) {\n Identifier.validate(namespace, path);\n this.namespace = namespace;\n this.path = path;\n }\n\n public static serialize(identifier: Identifier): string {\n return identifier.key();\n }\n\n public static deserialize(json: string): Identifier {\n return Identifier.fromJson(json);\n }\n\n public static from(id: IntoId): Identifier {\n if (id instanceof Identifier) {\n return id;\n } else if (id instanceof App) {\n return id.id;\n } else if (typeof id === 'string') {\n return Identifier.fromKey(id);\n } else {\n // Try to infer\n // Vite does not preserve class information when importing from different packages\n const idCasted = id as { namespace: string; path: string[] };\n if (\n typeof idCasted.namespace === 'string' &&\n Array.isArray(idCasted.path) &&\n idCasted.path.every((p) => typeof p === 'string')\n ) {\n return new Identifier(idCasted.namespace, ...idCasted.path);\n }\n const idWithId = id as { id: IntoId | undefined };\n if (typeof idWithId.id !== 'undefined') {\n return Identifier.from(idWithId.id);\n }\n throw new Error(`Cannot convert to Identifier: ${id}`);\n }\n }\n\n public static fromOptional(id: IntoId | undefined | null): Identifier | undefined {\n if (id === undefined || id === null) {\n return undefined;\n }\n return Identifier.from(id);\n }\n\n static validate(namespace: string, path: string[]): void {\n if (!namespace) {\n throw new Error('Invalid namespace: Namespace cannot be empty');\n }\n if (path.length === 0) {\n throw new Error('Invalid path: Path must have at least one name');\n }\n if (!NAMESPACE_REGEX.test(namespace)) {\n throw new Error(`Invalid namespace: Namespace must match ${NAMESPACE_REGEX}`);\n }\n for (const name of path) {\n if (!NAME_REGEX.test(name)) {\n throw new Error(`Invalid path: Name must match ${NAME_REGEX} but got ${name}`);\n }\n }\n }\n\n static format(namespace: string, ...path: string[]): string {\n Identifier.validate(namespace, path);\n return `${namespace}:${path.join('/')}`;\n }\n\n static fromKey(key: string): Identifier {\n const separator = key.indexOf(':');\n if (separator === -1) {\n throw new Error(`Invalid key: No separator found in ${key}`);\n }\n if (key.indexOf(':', separator + 1) !== -1) {\n throw new Error(`Invalid key: Multiple separators found in ${key}`);\n }\n const namespace = key.slice(0, separator);\n const path = key.slice(separator + 1);\n if (!namespace || !path) {\n throw new Error('Invalid key: Namespace and path cannot be empty');\n }\n return new Identifier(namespace, ...path.split('/'));\n }\n\n public static fromUrl(url: string | URL): Identifier {\n const parsedUrl = new URL(url);\n const namespace = Identifier.namespaceFromUrl(parsedUrl.href);\n const path = parsedUrl.pathname.slice(1).split('/');\n return new Identifier(namespace, ...path);\n }\n\n public static namespaceFromUrl(url: string | URL): string {\n const parsed = new URL(url);\n return parsed.hostname.split('.').reverse().join('.');\n }\n\n public get base(): Identifier {\n return new Identifier(this.namespace, this.path[0]);\n }\n\n public toJson(): string {\n return this.key();\n }\n\n static fromJson(json: string): Identifier {\n return Identifier.fromKey(json);\n }\n\n public key(): string {\n return Identifier.format(this.namespace, ...this.path);\n }\n\n public isEqual(other: Identifier): boolean {\n return this.key() === other.key();\n }\n\n public isNamespaceEqual(other: Identifier): boolean {\n return this.namespace === other.namespace;\n }\n\n public isSubpathOf(other: Identifier): boolean {\n if (this.namespace !== other.namespace) {\n return false;\n }\n if (this.path.length < other.path.length) {\n return false;\n }\n for (let i = 0; i < other.path.length; i++) {\n if (this.path[i] !== other.path[i]) {\n return false;\n }\n }\n return true;\n }\n\n public join(...path: string[]): Identifier {\n return new Identifier(this.namespace, ...this.path, ...path);\n }\n}\n\nexport class IdentifierMap<T> {\n private readonly map: Map<string, T> = new Map();\n constructor(\n entries?: Iterable<[Identifier, T]>,\n ) {\n if (!entries) return;\n for (const [id, value] of entries) {\n this.map.set(id.key(), value);\n }\n }\n\n public get size(): number {\n return this.map.size;\n }\n\n public set(identifier: Identifier, value: T): void {\n this.map.set(identifier.key(), value);\n }\n\n public get(identifier: Identifier): T | undefined {\n return this.map.get(identifier.key());\n }\n\n public has(identifier: Identifier): boolean {\n return this.map.has(identifier.key());\n }\n\n public delete(identifier: Identifier): void {\n this.map.delete(identifier.key());\n }\n\n public clear(): void {\n this.map.clear();\n }\n\n public *keys(): IterableIterator<Identifier> {\n for (const key of this.map.keys()) {\n yield Identifier.fromKey(key);\n }\n }\n\n public values(): IterableIterator<T> {\n return this.map.values();\n }\n\n public *entries(): IterableIterator<[Identifier, T]> {\n for (const [key, value] of this.map.entries()) {\n yield [Identifier.fromKey(key), value];\n }\n }\n\n public [Symbol.iterator](): IterableIterator<[Identifier, T]> {\n return this.entries();\n }\n}\n\nexport class IdentifierSet {\n private readonly set: Set<string> = new Set();\n\n public get size(): number {\n return this.set.size;\n }\n\n public add(identifier: Identifier): void {\n this.set.add(identifier.key());\n }\n\n public has(identifier: Identifier): boolean {\n return this.set.has(identifier.key());\n }\n\n public delete(identifier: Identifier): void {\n this.set.delete(identifier.key());\n }\n\n public clear(): void {\n this.set.clear();\n }\n\n public *keys(): IterableIterator<Identifier> {\n for (const key of this.set.keys()) {\n yield Identifier.fromKey(key);\n }\n }\n\n public values(): IterableIterator<Identifier> {\n return this.keys();\n }\n\n public *entries(): IterableIterator<[Identifier, Identifier]> {\n for (const key of this.set.keys()) {\n const identifier = Identifier.fromKey(key);\n yield [identifier, identifier];\n }\n }\n\n public [Symbol.iterator](): IterableIterator<[Identifier, Identifier]> {\n return this.entries();\n }\n}\n"],
5
+ "mappings": "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",
6
+ "names": ["App", "NAMESPACE_REGEX", "NAME_REGEX", "Identifier", "namespace", "path", "identifier", "json", "id", "idCasted", "p", "idWithId", "name", "key", "separator", "url", "parsedUrl", "other", "i", "IdentifierMap", "entries", "value", "IdentifierSet"]
7
+ }
@@ -0,0 +1,36 @@
1
+ export { AppIndexRegistry, type AppIndexRegistryJSON } from './api/server';
2
+ export { App, type AppMetadata } from './app.js';
3
+ export { DisconnectReason } from './errors.js';
4
+ export { Identifier, IdentifierMap, IdentifierSet, type IntoId } from './identifier';
5
+ export * as network from './network';
6
+ export { Omu } from './omu.js';
7
+ export { Serializer } from './serialize';
8
+ export type { Serializable } from './serialize';
9
+ export { BrowserSession, type SessionParam, type SessioTokenProvider } from './token';
10
+ import { Identifier } from './identifier';
11
+ export declare const OmuPermissions: {
12
+ readonly ASSET_PERMISSION_ID: Identifier;
13
+ readonly DASHBOARD_APP_INSTALL_PERMISSION_ID: Identifier;
14
+ readonly DAShBOARD_DRAG_DROP_PERMISSION_ID: Identifier;
15
+ readonly DASHBOARD_OPEN_APP_PERMISSION_ID: Identifier;
16
+ readonly DASHBOARD_SET_PERMISSION_ID: Identifier;
17
+ readonly DASHBOARD_SPEECH_RECOGNITION_PERMISSION_ID: Identifier;
18
+ readonly DASHBOARD_WEBVIEW_PERMISSION_ID: Identifier;
19
+ readonly DASHOBARD_APP_EDIT_PERMISSION_ID: Identifier;
20
+ readonly DASHOBARD_APP_READ_PERMISSION_ID: Identifier;
21
+ readonly HTTP_REQUEST_PERMISSION_ID: Identifier;
22
+ readonly I18N_GET_LOCALES_PERMISSION_ID: Identifier;
23
+ readonly I18N_SET_LOCALES_PERMISSION_ID: Identifier;
24
+ readonly LOGGER_LOG_PERMISSION_ID: Identifier;
25
+ readonly PLUGIN_MANAGE_PACKAGE_PERMISSION_ID: Identifier;
26
+ readonly PLUGIN_READ_PACKAGE_PERMISSION_ID: Identifier;
27
+ readonly REGISTRY_PERMISSION_ID: Identifier;
28
+ readonly SERVER_APPS_READ_PERMISSION_ID: Identifier;
29
+ readonly SERVER_SHUTDOWN_PERMISSION_ID: Identifier;
30
+ readonly TRUSTED_ORIGINS_GET_PERMISSION_ID: Identifier;
31
+ readonly TRUSTED_ORIGINS_SET_PERMISSION_ID: Identifier;
32
+ readonly GENERATE_TOKEN_PERMISSION_ID: Identifier;
33
+ readonly REMOTE_APP_REQUEST_PERMISSION_ID: Identifier;
34
+ readonly SESSIONS_READ_PERMISSION_ID: Identifier;
35
+ readonly TABLE_PERMISSION_ID: Identifier;
36
+ };
package/dist/index.js ADDED
@@ -0,0 +1,2 @@
1
+ import{AppIndexRegistry as g}from"./api/server";import{App as k}from"./app.js";import{DisconnectReason as w}from"./errors.js";import{Identifier as b,IdentifierMap as v,IdentifierSet as J}from"./identifier";import*as j from"./network";import{Omu as F}from"./omu.js";import{Serializer as Z}from"./serialize";import{BrowserSession as II}from"./token";import{ASSET_PERMISSION_ID as I}from"./api/asset";import{DASHBOARD_APP_INSTALL_PERMISSION_ID as S,DAShBOARD_DRAG_DROP_PERMISSION_ID as _,DASHBOARD_OPEN_APP_PERMISSION_ID as E,DASHBOARD_SET_PERMISSION_ID as e,DASHBOARD_SPEECH_RECOGNITION_PERMISSION_ID as R,DASHBOARD_WEBVIEW_PERMISSION_ID as r,DASHOBARD_APP_EDIT_PERMISSION_ID as D,DASHOBARD_APP_READ_PERMISSION_ID as O}from"./api/dashboard";import{HTTP_REQUEST_PERMISSION_ID as P}from"./api/http";import{I18N_GET_LOCALES_PERMISSION_ID as A,I18N_SET_LOCALES_PERMISSION_ID as i}from"./api/i18n";import{LOGGER_LOG_PERMISSION_ID as N}from"./api/logger";import{PLUGIN_MANAGE_PACKAGE_PERMISSION_ID as o,PLUGIN_READ_PACKAGE_PERMISSION_ID as n}from"./api/plugin";import{REGISTRY_PERMISSION_ID as t}from"./api/registry";import{SERVER_APPS_READ_PERMISSION_ID as d,SERVER_SHUTDOWN_PERMISSION_ID as M,TRUSTED_ORIGINS_GET_PERMISSION_ID as f,TRUSTED_ORIGINS_SET_PERMISSION_ID as T}from"./api/server";import{GENERATE_TOKEN_PERMISSION_ID as a,REMOTE_APP_REQUEST_PERMISSION_ID as p,SESSIONS_READ_PERMISSION_ID as m}from"./api/session";import{TABLE_PERMISSION_ID as y}from"./api/table";const c={ASSET_PERMISSION_ID:I,DASHBOARD_APP_INSTALL_PERMISSION_ID:S,DAShBOARD_DRAG_DROP_PERMISSION_ID:_,DASHBOARD_OPEN_APP_PERMISSION_ID:E,DASHBOARD_SET_PERMISSION_ID:e,DASHBOARD_SPEECH_RECOGNITION_PERMISSION_ID:R,DASHBOARD_WEBVIEW_PERMISSION_ID:r,DASHOBARD_APP_EDIT_PERMISSION_ID:D,DASHOBARD_APP_READ_PERMISSION_ID:O,HTTP_REQUEST_PERMISSION_ID:P,I18N_GET_LOCALES_PERMISSION_ID:A,I18N_SET_LOCALES_PERMISSION_ID:i,LOGGER_LOG_PERMISSION_ID:N,PLUGIN_MANAGE_PACKAGE_PERMISSION_ID:o,PLUGIN_READ_PACKAGE_PERMISSION_ID:n,REGISTRY_PERMISSION_ID:t,SERVER_APPS_READ_PERMISSION_ID:d,SERVER_SHUTDOWN_PERMISSION_ID:M,TRUSTED_ORIGINS_GET_PERMISSION_ID:f,TRUSTED_ORIGINS_SET_PERMISSION_ID:T,GENERATE_TOKEN_PERMISSION_ID:a,REMOTE_APP_REQUEST_PERMISSION_ID:p,SESSIONS_READ_PERMISSION_ID:m,TABLE_PERMISSION_ID:y};export{k as App,g as AppIndexRegistry,II as BrowserSession,w as DisconnectReason,b as Identifier,v as IdentifierMap,J as IdentifierSet,F as Omu,c as OmuPermissions,Z as Serializer,j as network};
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../src/index.ts"],
4
+ "sourcesContent": ["export { AppIndexRegistry, type AppIndexRegistryJSON } from './api/server';\nexport { App, type AppMetadata } from './app.js';\nexport { DisconnectReason } from './errors.js';\nexport { Identifier, IdentifierMap, IdentifierSet, type IntoId } from './identifier';\nexport * as network from './network';\nexport { Omu } from './omu.js';\nexport { Serializer } from './serialize';\nexport type { Serializable } from './serialize';\nexport { BrowserSession, type SessionParam, type SessioTokenProvider } from './token';\n\nimport { ASSET_PERMISSION_ID } from './api/asset';\nimport {\n DASHBOARD_APP_INSTALL_PERMISSION_ID,\n DAShBOARD_DRAG_DROP_PERMISSION_ID,\n DASHBOARD_OPEN_APP_PERMISSION_ID,\n DASHBOARD_SET_PERMISSION_ID,\n DASHBOARD_SPEECH_RECOGNITION_PERMISSION_ID,\n DASHBOARD_WEBVIEW_PERMISSION_ID,\n DASHOBARD_APP_EDIT_PERMISSION_ID,\n DASHOBARD_APP_READ_PERMISSION_ID,\n} from './api/dashboard';\nimport { HTTP_REQUEST_PERMISSION_ID } from './api/http';\nimport { I18N_GET_LOCALES_PERMISSION_ID, I18N_SET_LOCALES_PERMISSION_ID } from './api/i18n';\nimport { LOGGER_LOG_PERMISSION_ID } from './api/logger';\nimport { PLUGIN_MANAGE_PACKAGE_PERMISSION_ID, PLUGIN_READ_PACKAGE_PERMISSION_ID } from './api/plugin';\nimport { REGISTRY_PERMISSION_ID } from './api/registry';\nimport { SERVER_APPS_READ_PERMISSION_ID, SERVER_SHUTDOWN_PERMISSION_ID, TRUSTED_ORIGINS_GET_PERMISSION_ID, TRUSTED_ORIGINS_SET_PERMISSION_ID } from './api/server';\nimport { GENERATE_TOKEN_PERMISSION_ID, REMOTE_APP_REQUEST_PERMISSION_ID, SESSIONS_READ_PERMISSION_ID } from './api/session';\nimport { TABLE_PERMISSION_ID } from './api/table';\nimport { Identifier } from './identifier';\n\nexport const OmuPermissions: {\n // Asset API\n readonly ASSET_PERMISSION_ID: Identifier;\n // Dashboard API\n readonly DASHBOARD_APP_INSTALL_PERMISSION_ID: Identifier; readonly DAShBOARD_DRAG_DROP_PERMISSION_ID: Identifier; readonly DASHBOARD_OPEN_APP_PERMISSION_ID: Identifier; readonly DASHBOARD_SET_PERMISSION_ID: Identifier; readonly DASHBOARD_SPEECH_RECOGNITION_PERMISSION_ID: Identifier; readonly DASHBOARD_WEBVIEW_PERMISSION_ID: Identifier; readonly DASHOBARD_APP_EDIT_PERMISSION_ID: Identifier; readonly DASHOBARD_APP_READ_PERMISSION_ID: Identifier;\n // HTTP API\n readonly HTTP_REQUEST_PERMISSION_ID: Identifier;\n // I18n API\n readonly I18N_GET_LOCALES_PERMISSION_ID: Identifier; readonly I18N_SET_LOCALES_PERMISSION_ID: Identifier;\n // Logger API\n readonly LOGGER_LOG_PERMISSION_ID: Identifier;\n // Plugin API\n readonly PLUGIN_MANAGE_PACKAGE_PERMISSION_ID: Identifier; readonly PLUGIN_READ_PACKAGE_PERMISSION_ID: Identifier;\n // Registry API\n readonly REGISTRY_PERMISSION_ID: Identifier;\n // Server API\n readonly SERVER_APPS_READ_PERMISSION_ID: Identifier; readonly SERVER_SHUTDOWN_PERMISSION_ID: Identifier; readonly TRUSTED_ORIGINS_GET_PERMISSION_ID: Identifier; readonly TRUSTED_ORIGINS_SET_PERMISSION_ID: Identifier;\n // Session API\n readonly GENERATE_TOKEN_PERMISSION_ID: Identifier; readonly REMOTE_APP_REQUEST_PERMISSION_ID: Identifier; readonly SESSIONS_READ_PERMISSION_ID: Identifier;\n // Table API\n readonly TABLE_PERMISSION_ID: Identifier;\n} = {\n // Asset API\n ASSET_PERMISSION_ID: ASSET_PERMISSION_ID,\n // Dashboard API\n DASHBOARD_APP_INSTALL_PERMISSION_ID,\n DAShBOARD_DRAG_DROP_PERMISSION_ID,\n DASHBOARD_OPEN_APP_PERMISSION_ID,\n DASHBOARD_SET_PERMISSION_ID,\n DASHBOARD_SPEECH_RECOGNITION_PERMISSION_ID,\n DASHBOARD_WEBVIEW_PERMISSION_ID,\n DASHOBARD_APP_EDIT_PERMISSION_ID,\n DASHOBARD_APP_READ_PERMISSION_ID,\n // HTTP API\n HTTP_REQUEST_PERMISSION_ID,\n // I18n API\n I18N_GET_LOCALES_PERMISSION_ID,\n I18N_SET_LOCALES_PERMISSION_ID,\n // Logger API\n LOGGER_LOG_PERMISSION_ID,\n // Plugin API\n PLUGIN_MANAGE_PACKAGE_PERMISSION_ID,\n PLUGIN_READ_PACKAGE_PERMISSION_ID,\n // Registry API\n REGISTRY_PERMISSION_ID,\n // Server API\n SERVER_APPS_READ_PERMISSION_ID,\n SERVER_SHUTDOWN_PERMISSION_ID,\n TRUSTED_ORIGINS_GET_PERMISSION_ID,\n TRUSTED_ORIGINS_SET_PERMISSION_ID,\n // Session API\n GENERATE_TOKEN_PERMISSION_ID,\n REMOTE_APP_REQUEST_PERMISSION_ID,\n SESSIONS_READ_PERMISSION_ID,\n // Table API\n TABLE_PERMISSION_ID,\n} as const;\n"],
5
+ "mappings": "AAAA,OAAS,oBAAAA,MAAmD,eAC5D,OAAS,OAAAC,MAA6B,WACtC,OAAS,oBAAAC,MAAwB,cACjC,OAAS,cAAAC,EAAY,iBAAAC,EAAe,iBAAAC,MAAkC,eACtE,UAAYC,MAAa,YACzB,OAAS,OAAAC,MAAW,WACpB,OAAS,cAAAC,MAAkB,cAE3B,OAAS,kBAAAC,OAAmE,UAE5E,OAAS,uBAAAC,MAA2B,cACpC,OACI,uCAAAC,EACA,qCAAAC,EACA,oCAAAC,EACA,+BAAAC,EACA,8CAAAC,EACA,mCAAAC,EACA,oCAAAC,EACA,oCAAAC,MACG,kBACP,OAAS,8BAAAC,MAAkC,aAC3C,OAAS,kCAAAC,EAAgC,kCAAAC,MAAsC,aAC/E,OAAS,4BAAAC,MAAgC,eACzC,OAAS,uCAAAC,EAAqC,qCAAAC,MAAyC,eACvF,OAAS,0BAAAC,MAA8B,iBACvC,OAAS,kCAAAC,EAAgC,iCAAAC,EAA+B,qCAAAC,EAAmC,qCAAAC,MAAyC,eACpJ,OAAS,gCAAAC,EAA8B,oCAAAC,EAAkC,+BAAAC,MAAmC,gBAC5G,OAAS,uBAAAC,MAA2B,cAG7B,MAAMC,EAqBT,CAEA,oBAAqBxB,EAErB,oCAAAC,EACA,kCAAAC,EACA,iCAAAC,EACA,4BAAAC,EACA,2CAAAC,EACA,gCAAAC,EACA,iCAAAC,EACA,iCAAAC,EAEA,2BAAAC,EAEA,+BAAAC,EACA,+BAAAC,EAEA,yBAAAC,EAEA,oCAAAC,EACA,kCAAAC,EAEA,uBAAAC,EAEA,+BAAAC,EACA,8BAAAC,EACA,kCAAAC,EACA,kCAAAC,EAEA,6BAAAC,EACA,iCAAAC,EACA,4BAAAC,EAEA,oBAAAC,CACJ",
6
+ "names": ["AppIndexRegistry", "App", "DisconnectReason", "Identifier", "IdentifierMap", "IdentifierSet", "network", "Omu", "Serializer", "BrowserSession", "ASSET_PERMISSION_ID", "DASHBOARD_APP_INSTALL_PERMISSION_ID", "DAShBOARD_DRAG_DROP_PERMISSION_ID", "DASHBOARD_OPEN_APP_PERMISSION_ID", "DASHBOARD_SET_PERMISSION_ID", "DASHBOARD_SPEECH_RECOGNITION_PERMISSION_ID", "DASHBOARD_WEBVIEW_PERMISSION_ID", "DASHOBARD_APP_EDIT_PERMISSION_ID", "DASHOBARD_APP_READ_PERMISSION_ID", "HTTP_REQUEST_PERMISSION_ID", "I18N_GET_LOCALES_PERMISSION_ID", "I18N_SET_LOCALES_PERMISSION_ID", "LOGGER_LOG_PERMISSION_ID", "PLUGIN_MANAGE_PACKAGE_PERMISSION_ID", "PLUGIN_READ_PACKAGE_PERMISSION_ID", "REGISTRY_PERMISSION_ID", "SERVER_APPS_READ_PERMISSION_ID", "SERVER_SHUTDOWN_PERMISSION_ID", "TRUSTED_ORIGINS_GET_PERMISSION_ID", "TRUSTED_ORIGINS_SET_PERMISSION_ID", "GENERATE_TOKEN_PERMISSION_ID", "REMOTE_APP_REQUEST_PERMISSION_ID", "SESSIONS_READ_PERMISSION_ID", "TABLE_PERMISSION_ID", "OmuPermissions"]
7
+ }
@@ -1,3 +1,2 @@
1
1
  export { Locale as Locale, LOCALE_NAMES } from './locale.js';
2
2
  export type { LocalizedText, Translations } from './localization.js';
3
-
@@ -0,0 +1,2 @@
1
+ import{Locale as e,LOCALE_NAMES as l}from"./locale.js";export{l as LOCALE_NAMES,e as Locale};
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/localization/index.ts"],
4
+ "sourcesContent": ["export { Locale as Locale, LOCALE_NAMES } from './locale.js';\nexport type { LocalizedText, Translations } from './localization.js';\n\n"],
5
+ "mappings": "AAAA,OAAmB,UAAVA,EAAkB,gBAAAC,MAAoB",
6
+ "names": ["Locale", "LOCALE_NAMES"]
7
+ }