@nekutima/biome-sdk 0.19.3 → 0.29.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 (219) hide show
  1. package/dist/admin/admin.model.d.ts +70 -0
  2. package/dist/admin/admin.model.d.ts.map +1 -1
  3. package/dist/admin/admin.schema.json +339 -0
  4. package/dist/admin/admin.service.d.ts +9 -1
  5. package/dist/admin/admin.service.d.ts.map +1 -1
  6. package/dist/admin/admin.service.js +79 -4
  7. package/dist/admin/admin.service.js.map +1 -1
  8. package/dist/agents/agent-identity.d.ts +19 -0
  9. package/dist/agents/agent-identity.d.ts.map +1 -0
  10. package/dist/agents/agent-identity.js +36 -0
  11. package/dist/agents/agent-identity.js.map +1 -0
  12. package/dist/agents/agent-resource.d.ts +0 -1
  13. package/dist/agents/agent-resource.d.ts.map +1 -1
  14. package/dist/agents/agent.model.d.ts +13 -40
  15. package/dist/agents/agent.model.d.ts.map +1 -1
  16. package/dist/agents/agent.service.d.ts +9 -3
  17. package/dist/agents/agent.service.d.ts.map +1 -1
  18. package/dist/agents/agent.service.js +37 -8
  19. package/dist/agents/agent.service.js.map +1 -1
  20. package/dist/ai/yuri.service.d.ts +39 -5
  21. package/dist/ai/yuri.service.d.ts.map +1 -1
  22. package/dist/ai/yuri.service.js +64 -34
  23. package/dist/ai/yuri.service.js.map +1 -1
  24. package/dist/alexandria/nugget.model.d.ts +77 -0
  25. package/dist/alexandria/nugget.model.d.ts.map +1 -0
  26. package/dist/alexandria/nugget.model.js +7 -0
  27. package/dist/alexandria/nugget.model.js.map +1 -0
  28. package/dist/alexandria/nugget.service.d.ts +21 -0
  29. package/dist/alexandria/nugget.service.d.ts.map +1 -0
  30. package/dist/alexandria/nugget.service.js +127 -0
  31. package/dist/alexandria/nugget.service.js.map +1 -0
  32. package/dist/alexandria/problem.model.d.ts +48 -0
  33. package/dist/alexandria/problem.model.d.ts.map +1 -0
  34. package/dist/alexandria/problem.model.js +7 -0
  35. package/dist/alexandria/problem.model.js.map +1 -0
  36. package/dist/alexandria/problem.service.d.ts +17 -0
  37. package/dist/alexandria/problem.service.d.ts.map +1 -0
  38. package/dist/alexandria/problem.service.js +98 -0
  39. package/dist/alexandria/problem.service.js.map +1 -0
  40. package/dist/alexandria/progress.model.d.ts +19 -0
  41. package/dist/alexandria/progress.model.d.ts.map +1 -0
  42. package/dist/alexandria/progress.model.js +3 -0
  43. package/dist/alexandria/progress.model.js.map +1 -0
  44. package/dist/alexandria/progress.service.d.ts +10 -0
  45. package/dist/alexandria/progress.service.d.ts.map +1 -0
  46. package/dist/alexandria/progress.service.js +38 -0
  47. package/dist/alexandria/progress.service.js.map +1 -0
  48. package/dist/api-keys/api-key.model.d.ts +30 -0
  49. package/dist/api-keys/api-key.model.d.ts.map +1 -0
  50. package/dist/api-keys/api-key.model.js +3 -0
  51. package/dist/api-keys/api-key.model.js.map +1 -0
  52. package/dist/api-keys/api-key.service.d.ts +16 -0
  53. package/dist/api-keys/api-key.service.d.ts.map +1 -0
  54. package/dist/api-keys/api-key.service.js +34 -0
  55. package/dist/api-keys/api-key.service.js.map +1 -0
  56. package/dist/auth/auth.schema.json +106 -0
  57. package/dist/auth/auth.service.d.ts +8 -1
  58. package/dist/auth/auth.service.d.ts.map +1 -1
  59. package/dist/auth/auth.service.js +23 -10
  60. package/dist/auth/auth.service.js.map +1 -1
  61. package/dist/chat/chat.service.d.ts.map +1 -1
  62. package/dist/chat/chat.service.js +60 -68
  63. package/dist/chat/chat.service.js.map +1 -1
  64. package/dist/circles/circle.model.d.ts +25 -0
  65. package/dist/circles/circle.model.d.ts.map +1 -0
  66. package/dist/circles/circle.model.js +3 -0
  67. package/dist/circles/circle.model.js.map +1 -0
  68. package/dist/circles/circle.schema.json +332 -0
  69. package/dist/circles/circle.service.d.ts +14 -0
  70. package/dist/circles/circle.service.d.ts.map +1 -0
  71. package/dist/circles/circle.service.js +50 -0
  72. package/dist/circles/circle.service.js.map +1 -0
  73. package/dist/communities/community.model.d.ts +72 -0
  74. package/dist/communities/community.model.d.ts.map +1 -0
  75. package/dist/communities/community.model.js +3 -0
  76. package/dist/communities/community.model.js.map +1 -0
  77. package/dist/communities/community.service.d.ts +26 -0
  78. package/dist/communities/community.service.d.ts.map +1 -0
  79. package/dist/communities/community.service.js +140 -0
  80. package/dist/communities/community.service.js.map +1 -0
  81. package/dist/contacts/contact.model.d.ts +97 -0
  82. package/dist/contacts/contact.model.d.ts.map +1 -0
  83. package/dist/contacts/contact.model.js +3 -0
  84. package/dist/contacts/contact.model.js.map +1 -0
  85. package/dist/contacts/contact.schema.json +312 -0
  86. package/dist/contacts/contact.service.d.ts +28 -0
  87. package/dist/contacts/contact.service.d.ts.map +1 -0
  88. package/dist/contacts/contact.service.js +109 -0
  89. package/dist/contacts/contact.service.js.map +1 -0
  90. package/dist/core/api-diagnostics.d.ts +91 -0
  91. package/dist/core/api-diagnostics.d.ts.map +1 -0
  92. package/dist/core/api-diagnostics.js +211 -0
  93. package/dist/core/api-diagnostics.js.map +1 -0
  94. package/dist/core/configuration.d.ts +12 -0
  95. package/dist/core/configuration.d.ts.map +1 -1
  96. package/dist/core/error-handler.d.ts +5 -1
  97. package/dist/core/error-handler.d.ts.map +1 -1
  98. package/dist/core/error-handler.js +45 -21
  99. package/dist/core/error-handler.js.map +1 -1
  100. package/dist/core/http-client.d.ts +33 -6
  101. package/dist/core/http-client.d.ts.map +1 -1
  102. package/dist/core/http-client.js +193 -31
  103. package/dist/core/http-client.js.map +1 -1
  104. package/dist/core/node-cookie-jar.d.ts +14 -0
  105. package/dist/core/node-cookie-jar.d.ts.map +1 -0
  106. package/dist/core/node-cookie-jar.js +58 -0
  107. package/dist/core/node-cookie-jar.js.map +1 -0
  108. package/dist/core/request-scheduler.d.ts +56 -0
  109. package/dist/core/request-scheduler.d.ts.map +1 -0
  110. package/dist/core/request-scheduler.js +176 -0
  111. package/dist/core/request-scheduler.js.map +1 -0
  112. package/dist/core/resilience.d.ts +10 -0
  113. package/dist/core/resilience.d.ts.map +1 -1
  114. package/dist/core/resilience.js +27 -0
  115. package/dist/core/resilience.js.map +1 -1
  116. package/dist/ecosystem/organization.model.d.ts +4 -4
  117. package/dist/ecosystem/organization.model.d.ts.map +1 -1
  118. package/dist/errors/error-codes.d.ts +3 -1
  119. package/dist/errors/error-codes.d.ts.map +1 -1
  120. package/dist/errors/error-codes.js +2 -0
  121. package/dist/errors/error-codes.js.map +1 -1
  122. package/dist/events/event-edition.model.d.ts +5 -0
  123. package/dist/events/event-edition.model.d.ts.map +1 -1
  124. package/dist/events/event.model.d.ts +5 -0
  125. package/dist/events/event.model.d.ts.map +1 -1
  126. package/dist/follows/follow.model.d.ts +1 -1
  127. package/dist/follows/follow.model.d.ts.map +1 -1
  128. package/dist/follows/follow.service.d.ts.map +1 -1
  129. package/dist/follows/follow.service.js +1 -0
  130. package/dist/follows/follow.service.js.map +1 -1
  131. package/dist/guilds/guild.model.d.ts +36 -0
  132. package/dist/guilds/guild.model.d.ts.map +1 -1
  133. package/dist/guilds/guild.service.d.ts +7 -1
  134. package/dist/guilds/guild.service.d.ts.map +1 -1
  135. package/dist/guilds/guild.service.js +52 -0
  136. package/dist/guilds/guild.service.js.map +1 -1
  137. package/dist/index.d.ts +50 -6
  138. package/dist/index.d.ts.map +1 -1
  139. package/dist/index.js +70 -4
  140. package/dist/index.js.map +1 -1
  141. package/dist/memberships/membership.model.d.ts +34 -0
  142. package/dist/memberships/membership.model.d.ts.map +1 -0
  143. package/dist/memberships/membership.model.js +3 -0
  144. package/dist/memberships/membership.model.js.map +1 -0
  145. package/dist/memberships/membership.service.d.ts +22 -0
  146. package/dist/memberships/membership.service.d.ts.map +1 -0
  147. package/dist/memberships/membership.service.js +111 -0
  148. package/dist/memberships/membership.service.js.map +1 -0
  149. package/dist/missions/mission.model.d.ts +4 -4
  150. package/dist/missions/mission.model.d.ts.map +1 -1
  151. package/dist/missions/mission.schema.json +204 -0
  152. package/dist/missions/mission.service.d.ts +2 -2
  153. package/dist/missions/mission.service.d.ts.map +1 -1
  154. package/dist/missions/mission.service.js.map +1 -1
  155. package/dist/models/chat.model.d.ts +11 -1
  156. package/dist/models/chat.model.d.ts.map +1 -1
  157. package/dist/models/chat.model.js +4 -0
  158. package/dist/models/chat.model.js.map +1 -1
  159. package/dist/notifications/notification.service.d.ts.map +1 -1
  160. package/dist/notifications/notification.service.js +10 -2
  161. package/dist/notifications/notification.service.js.map +1 -1
  162. package/dist/profiles/person.model.d.ts +26 -26
  163. package/dist/profiles/person.model.d.ts.map +1 -1
  164. package/dist/profiles/profile.schema.json +269 -0
  165. package/dist/project/schemas.js +2 -1
  166. package/dist/project/schemas.js.map +1 -1
  167. package/dist/projects/project.service.d.ts +1 -1
  168. package/dist/projects/project.service.d.ts.map +1 -1
  169. package/dist/projects/project.service.js +2 -2
  170. package/dist/projects/project.service.js.map +1 -1
  171. package/dist/rewards/reward.model.d.ts +2 -2
  172. package/dist/rewards/reward.model.d.ts.map +1 -1
  173. package/dist/rewards/reward.service.d.ts +9 -0
  174. package/dist/rewards/reward.service.d.ts.map +1 -1
  175. package/dist/rewards/reward.service.js +32 -0
  176. package/dist/rewards/reward.service.js.map +1 -1
  177. package/dist/support/support.model.d.ts +6 -0
  178. package/dist/support/support.model.d.ts.map +1 -0
  179. package/dist/support/support.model.js +3 -0
  180. package/dist/support/support.model.js.map +1 -0
  181. package/dist/support/support.schema.json +25 -0
  182. package/dist/support/support.service.d.ts +11 -0
  183. package/dist/support/support.service.d.ts.map +1 -0
  184. package/dist/support/support.service.js +22 -0
  185. package/dist/support/support.service.js.map +1 -0
  186. package/dist/tasks/schemas.js +4 -3
  187. package/dist/tasks/schemas.js.map +1 -1
  188. package/dist/tasks/task.model.d.ts +40 -15
  189. package/dist/tasks/task.model.d.ts.map +1 -1
  190. package/dist/tasks/task.model.js +1 -1
  191. package/dist/tasks/task.model.js.map +1 -1
  192. package/dist/tasks/task.schema.json +780 -0
  193. package/dist/tasks/task.service.d.ts +108 -9
  194. package/dist/tasks/task.service.d.ts.map +1 -1
  195. package/dist/tasks/task.service.js +184 -47
  196. package/dist/tasks/task.service.js.map +1 -1
  197. package/dist/timezone/time.helper.d.ts +9 -0
  198. package/dist/timezone/time.helper.d.ts.map +1 -1
  199. package/dist/timezone/time.helper.js +31 -2
  200. package/dist/timezone/time.helper.js.map +1 -1
  201. package/dist/users/user.model.d.ts +2 -1
  202. package/dist/users/user.model.d.ts.map +1 -1
  203. package/dist/users/user.model.js.map +1 -1
  204. package/dist/users/user.schema.json +429 -0
  205. package/dist/users/user.service.d.ts +2 -2
  206. package/dist/users/user.service.d.ts.map +1 -1
  207. package/dist/users/user.service.js +29 -35
  208. package/dist/users/user.service.js.map +1 -1
  209. package/dist/utils/validation.utils.d.ts +0 -4
  210. package/dist/utils/validation.utils.d.ts.map +1 -1
  211. package/dist/utils/validation.utils.js +1 -11
  212. package/dist/utils/validation.utils.js.map +1 -1
  213. package/dist/wallet/wallet.model.d.ts +5 -0
  214. package/dist/wallet/wallet.model.d.ts.map +1 -1
  215. package/dist/wallet/wallet.service.d.ts +2 -1
  216. package/dist/wallet/wallet.service.d.ts.map +1 -1
  217. package/dist/wallet/wallet.service.js +9 -0
  218. package/dist/wallet/wallet.service.js.map +1 -1
  219. package/package.json +19 -6
@@ -0,0 +1,176 @@
1
+ "use strict";
2
+ /**
3
+ * Priority-aware concurrency limiter for browser HTTP/1.1.
4
+ *
5
+ * Browsers allow ~6 connections per origin. Chat SSE holds one permanently.
6
+ * Without a client-side cap, task detail storms + polls + mutations all race
7
+ * and low-priority work (unread count) times out while never leaving the queue.
8
+ *
9
+ * Default maxConcurrent=4 leaves ~1–2 slots free for EventSource and bursts.
10
+ * Default reservedForHigh=1 keeps one slot that normal/low cannot fill so
11
+ * mutations and user-opened panels (high) can still start under GET storms.
12
+ *
13
+ * See `sst/guidelines/http-concurrency.md` for the system-wide policy.
14
+ */
15
+ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
16
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
17
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
18
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
19
+ };
20
+ var _RequestScheduler_instances, _RequestScheduler_capFor, _RequestScheduler_pump;
21
+ Object.defineProperty(exports, "__esModule", { value: true });
22
+ exports.RequestScheduler = void 0;
23
+ exports.getSharedRequestScheduler = getSharedRequestScheduler;
24
+ exports.resetSharedRequestScheduler = resetSharedRequestScheduler;
25
+ const PRIORITY_RANK = {
26
+ high: 0,
27
+ normal: 1,
28
+ low: 2,
29
+ };
30
+ class RequestScheduler {
31
+ /**
32
+ * @param maxConcurrent total in-flight slots (default 4)
33
+ * @param reservedForHigh slots only high priority may use (default 1).
34
+ * Clamped so at least one slot remains available to normal/low.
35
+ */
36
+ constructor(maxConcurrent = 4, reservedForHigh = 1) {
37
+ _RequestScheduler_instances.add(this);
38
+ this.maxConcurrent = maxConcurrent;
39
+ this.active = 0;
40
+ this.queue = [];
41
+ if (maxConcurrent < 1) {
42
+ throw new Error("maxConcurrent must be >= 1");
43
+ }
44
+ this.reservedForHigh = Math.min(Math.max(0, reservedForHigh), Math.max(0, maxConcurrent - 1));
45
+ }
46
+ get activeCount() {
47
+ return this.active;
48
+ }
49
+ get queuedCount() {
50
+ return this.queue.length;
51
+ }
52
+ get maxConcurrentSlots() {
53
+ return this.maxConcurrent;
54
+ }
55
+ get reservedHighSlots() {
56
+ return this.reservedForHigh;
57
+ }
58
+ /** Snapshot for diagnostics when a waiter times out or for FE overlays. */
59
+ snapshot() {
60
+ const queuedByPriority = {
61
+ high: 0,
62
+ normal: 0,
63
+ low: 0,
64
+ };
65
+ for (const entry of this.queue) {
66
+ queuedByPriority[entry.priority] += 1;
67
+ }
68
+ return {
69
+ active: this.active,
70
+ queued: this.queue.length,
71
+ maxConcurrent: this.maxConcurrent,
72
+ reservedForHigh: this.reservedForHigh,
73
+ queuedByPriority,
74
+ };
75
+ }
76
+ /**
77
+ * Reserve a connection slot. Resolves when the caller may start an HTTP request.
78
+ * @param priority high jumps the queue and may use reserved capacity; low yields to normal/high
79
+ * @param maxWaitMs reject if still waiting this long (background polls should fail fast)
80
+ */
81
+ acquire(priority = "normal", maxWaitMs = 30000) {
82
+ if (this.active < __classPrivateFieldGet(this, _RequestScheduler_instances, "m", _RequestScheduler_capFor).call(this, priority)) {
83
+ this.active += 1;
84
+ return Promise.resolve();
85
+ }
86
+ return new Promise((resolve, reject) => {
87
+ const entry = {
88
+ priority,
89
+ resolve: () => {
90
+ if (entry.timer)
91
+ clearTimeout(entry.timer);
92
+ entry.timer = null;
93
+ resolve();
94
+ },
95
+ reject: (err) => {
96
+ if (entry.timer)
97
+ clearTimeout(entry.timer);
98
+ entry.timer = null;
99
+ reject(err);
100
+ },
101
+ enqueuedAt: Date.now(),
102
+ maxWaitMs,
103
+ timer: null,
104
+ };
105
+ entry.timer = setTimeout(() => {
106
+ const idx = this.queue.indexOf(entry);
107
+ if (idx >= 0) {
108
+ this.queue.splice(idx, 1);
109
+ // Snapshot *after* removing this waiter so counts reflect remaining pressure.
110
+ const scheduler = this.snapshot();
111
+ entry.reject(Object.assign(new Error("Request queue wait timed out"), {
112
+ code: "ERR_QUEUE_TIMEOUT",
113
+ isQueueTimeout: true,
114
+ priority,
115
+ maxWaitMs,
116
+ scheduler,
117
+ }));
118
+ }
119
+ }, maxWaitMs);
120
+ this.queue.push(entry);
121
+ this.queue.sort((a, b) => {
122
+ const pr = PRIORITY_RANK[a.priority] - PRIORITY_RANK[b.priority];
123
+ if (pr !== 0)
124
+ return pr;
125
+ return a.enqueuedAt - b.enqueuedAt;
126
+ });
127
+ });
128
+ }
129
+ /** Release a slot after the HTTP call finishes (success or error). */
130
+ release() {
131
+ this.active = Math.max(0, this.active - 1);
132
+ __classPrivateFieldGet(this, _RequestScheduler_instances, "m", _RequestScheduler_pump).call(this);
133
+ }
134
+ /** Test helper — drain queue without running requests. */
135
+ reset() {
136
+ for (const entry of this.queue) {
137
+ if (entry.timer)
138
+ clearTimeout(entry.timer);
139
+ entry.reject(new Error("RequestScheduler reset"));
140
+ }
141
+ this.queue.length = 0;
142
+ this.active = 0;
143
+ }
144
+ }
145
+ exports.RequestScheduler = RequestScheduler;
146
+ _RequestScheduler_instances = new WeakSet(), _RequestScheduler_capFor = function _RequestScheduler_capFor(priority) {
147
+ if (priority === "high")
148
+ return this.maxConcurrent;
149
+ return this.maxConcurrent - this.reservedForHigh;
150
+ }, _RequestScheduler_pump = function _RequestScheduler_pump() {
151
+ // Admit waiters in priority order, respecting per-priority caps so a full
152
+ // normal queue cannot claim the reserved high slot.
153
+ while (this.queue.length > 0) {
154
+ const next = this.queue[0];
155
+ if (this.active >= __classPrivateFieldGet(this, _RequestScheduler_instances, "m", _RequestScheduler_capFor).call(this, next.priority)) {
156
+ break;
157
+ }
158
+ this.queue.shift();
159
+ this.active += 1;
160
+ next.resolve();
161
+ }
162
+ };
163
+ /** Shared browser-side scheduler so one BiomeSDK instance coordinates all API traffic. */
164
+ let sharedScheduler = null;
165
+ function getSharedRequestScheduler(maxConcurrent = 4) {
166
+ if (!sharedScheduler) {
167
+ sharedScheduler = new RequestScheduler(maxConcurrent);
168
+ }
169
+ return sharedScheduler;
170
+ }
171
+ /** Test-only: drop shared instance. */
172
+ function resetSharedRequestScheduler() {
173
+ sharedScheduler?.reset();
174
+ sharedScheduler = null;
175
+ }
176
+ //# sourceMappingURL=request-scheduler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"request-scheduler.js","sourceRoot":"","sources":["../../src/core/request-scheduler.ts"],"names":[],"mappings":"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"}
@@ -77,4 +77,14 @@ export declare class RateLimitExceededError extends Error {
77
77
  readonly code = "RATE_LIMIT_EXCEEDED";
78
78
  constructor(message: string, retryAfter: number, limit: number, windowSeconds: number);
79
79
  }
80
+ /**
81
+ * Checks a rate limiter and throws RateLimitExceededError if the limit was exceeded.
82
+ * Shared by services that guard endpoints with the same checkLimit-then-throw pattern.
83
+ */
84
+ export declare function checkRateLimit(rateLimiter: RateLimiter, key: string, message: string, limit: number, windowSeconds: number): void;
85
+ /**
86
+ * Runs an operation through a circuit breaker, passing CircuitBreakerOpenError and
87
+ * RateLimitExceededError through untouched and routing any other failure to onError.
88
+ */
89
+ export declare function executeWithCircuitBreaker<T>(circuitBreaker: CircuitBreaker, operation: () => Promise<T>, onError: (error: unknown) => never): Promise<T>;
80
90
  //# sourceMappingURL=resilience.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"resilience.d.ts","sourceRoot":"","sources":["../../src/core/resilience.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,QAAQ,CAAoC;IACpD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;gBAEzB,WAAW,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM;IAKtD;;;;OAIG;IACH,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc;IAiCvC;;OAEG;IACH,KAAK,IAAI,IAAI;CAGd;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,IAAI,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;GAGG;AACH,qBAAa,cAAc;IAOvB,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IARnC,OAAO,CAAC,KAAK,CAAiC;IAC9C,OAAO,CAAC,YAAY,CAAK;IACzB,OAAO,CAAC,eAAe,CAAC,CAAS;IACjC,OAAO,CAAC,WAAW,CAAK;gBAGL,gBAAgB,SAAI,EACpB,cAAc,SAAQ,EACtB,gBAAgB,SAAI;IAGvC;;;;;;OAMG;IACG,OAAO,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAsBzD,OAAO,CAAC,SAAS;IAOjB,OAAO,CAAC,SAAS;IAUjB;;OAEG;IACH,QAAQ,IAAI,mBAAmB;IAI/B;;OAEG;IACH,KAAK,IAAI,IAAI;CAMd;AAED,MAAM,MAAM,mBAAmB,GAAG,QAAQ,GAAG,MAAM,GAAG,WAAW,CAAC;AAElE;;GAEG;AACH,qBAAa,uBAAwB,SAAQ,KAAK;IAM9C,QAAQ,CAAC,UAAU,EAAE,MAAM;IAL7B,QAAQ,CAAC,MAAM,OAAO;IACtB,QAAQ,CAAC,IAAI,0BAA0B;gBAGrC,OAAO,EAAE,MAAM,EACN,UAAU,EAAE,MAAM;CAK9B;AAED;;GAEG;AACH,qBAAa,sBAAuB,SAAQ,KAAK;IAM7C,QAAQ,CAAC,UAAU,EAAE,MAAM;IAC3B,QAAQ,CAAC,KAAK,EAAE,MAAM;IACtB,QAAQ,CAAC,aAAa,EAAE,MAAM;IAPhC,QAAQ,CAAC,MAAM,OAAO;IACtB,QAAQ,CAAC,IAAI,yBAAyB;gBAGpC,OAAO,EAAE,MAAM,EACN,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EACb,aAAa,EAAE,MAAM;CAKjC"}
1
+ {"version":3,"file":"resilience.d.ts","sourceRoot":"","sources":["../../src/core/resilience.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,QAAQ,CAAoC;IACpD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;gBAEzB,WAAW,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM;IAKtD;;;;OAIG;IACH,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc;IAiCvC;;OAEG;IACH,KAAK,IAAI,IAAI;CAGd;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,IAAI,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;GAGG;AACH,qBAAa,cAAc;IAOvB,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IARnC,OAAO,CAAC,KAAK,CAAiC;IAC9C,OAAO,CAAC,YAAY,CAAK;IACzB,OAAO,CAAC,eAAe,CAAC,CAAS;IACjC,OAAO,CAAC,WAAW,CAAK;gBAGL,gBAAgB,SAAI,EACpB,cAAc,SAAQ,EACtB,gBAAgB,SAAI;IAGvC;;;;;;OAMG;IACG,OAAO,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAsBzD,OAAO,CAAC,SAAS;IAOjB,OAAO,CAAC,SAAS;IAUjB;;OAEG;IACH,QAAQ,IAAI,mBAAmB;IAI/B;;OAEG;IACH,KAAK,IAAI,IAAI;CAMd;AAED,MAAM,MAAM,mBAAmB,GAAG,QAAQ,GAAG,MAAM,GAAG,WAAW,CAAC;AAElE;;GAEG;AACH,qBAAa,uBAAwB,SAAQ,KAAK;IAM9C,QAAQ,CAAC,UAAU,EAAE,MAAM;IAL7B,QAAQ,CAAC,MAAM,OAAO;IACtB,QAAQ,CAAC,IAAI,0BAA0B;gBAGrC,OAAO,EAAE,MAAM,EACN,UAAU,EAAE,MAAM;CAK9B;AAED;;GAEG;AACH,qBAAa,sBAAuB,SAAQ,KAAK;IAM7C,QAAQ,CAAC,UAAU,EAAE,MAAM;IAC3B,QAAQ,CAAC,KAAK,EAAE,MAAM;IACtB,QAAQ,CAAC,aAAa,EAAE,MAAM;IAPhC,QAAQ,CAAC,MAAM,OAAO;IACtB,QAAQ,CAAC,IAAI,yBAAyB;gBAGpC,OAAO,EAAE,MAAM,EACN,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EACb,aAAa,EAAE,MAAM;CAKjC;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAC5B,WAAW,EAAE,WAAW,EACxB,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,EACb,aAAa,EAAE,MAAM,GACpB,IAAI,CAKN;AAED;;;GAGG;AACH,wBAAsB,yBAAyB,CAAC,CAAC,EAC/C,cAAc,EAAE,cAAc,EAC9B,SAAS,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAC3B,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,KAAK,GACjC,OAAO,CAAC,CAAC,CAAC,CASZ"}
@@ -1,6 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.RateLimitExceededError = exports.CircuitBreakerOpenError = exports.CircuitBreaker = exports.RateLimiter = void 0;
4
+ exports.checkRateLimit = checkRateLimit;
5
+ exports.executeWithCircuitBreaker = executeWithCircuitBreaker;
4
6
  /**
5
7
  * Rate limiter for SDK operations
6
8
  * Implements sliding window rate limiting per operation per user
@@ -148,4 +150,29 @@ class RateLimitExceededError extends Error {
148
150
  }
149
151
  }
150
152
  exports.RateLimitExceededError = RateLimitExceededError;
153
+ /**
154
+ * Checks a rate limiter and throws RateLimitExceededError if the limit was exceeded.
155
+ * Shared by services that guard endpoints with the same checkLimit-then-throw pattern.
156
+ */
157
+ function checkRateLimit(rateLimiter, key, message, limit, windowSeconds) {
158
+ const rateCheck = rateLimiter.checkLimit(key);
159
+ if (!rateCheck.allowed) {
160
+ throw new RateLimitExceededError(message, rateCheck.retryAfter || windowSeconds, limit, windowSeconds);
161
+ }
162
+ }
163
+ /**
164
+ * Runs an operation through a circuit breaker, passing CircuitBreakerOpenError and
165
+ * RateLimitExceededError through untouched and routing any other failure to onError.
166
+ */
167
+ async function executeWithCircuitBreaker(circuitBreaker, operation, onError) {
168
+ try {
169
+ return await circuitBreaker.execute(operation);
170
+ }
171
+ catch (error) {
172
+ if (error instanceof CircuitBreakerOpenError || error instanceof RateLimitExceededError) {
173
+ throw error;
174
+ }
175
+ return onError(error);
176
+ }
177
+ }
151
178
  //# sourceMappingURL=resilience.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"resilience.js","sourceRoot":"","sources":["../../src/core/resilience.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resilience.js","sourceRoot":"","sources":["../../src/core/resilience.ts"],"names":[],"mappings":"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"}
@@ -12,7 +12,7 @@ export interface Organization {
12
12
  description?: string;
13
13
  website?: string;
14
14
  logoFileId?: number;
15
- type?: OrganizationType;
15
+ type?: OrganizationType | null;
16
16
  size?: number;
17
17
  markets?: string[];
18
18
  techVertical?: string[];
@@ -29,14 +29,14 @@ export interface OrganizationMinimal {
29
29
  id: number;
30
30
  name: string;
31
31
  logoFileId?: number;
32
- type?: OrganizationType;
32
+ type?: OrganizationType | null;
33
33
  }
34
34
  export interface CreateOrganizationRequest {
35
35
  name: string;
36
36
  description?: string;
37
37
  website?: string;
38
38
  logoFileId?: number;
39
- type?: OrganizationType;
39
+ type?: OrganizationType | null;
40
40
  size?: number;
41
41
  markets?: string[];
42
42
  techVertical?: string[];
@@ -48,7 +48,7 @@ export interface UpdateOrganizationRequest {
48
48
  description?: string;
49
49
  website?: string;
50
50
  logoFileId?: number;
51
- type?: OrganizationType;
51
+ type?: OrganizationType | null;
52
52
  size?: number;
53
53
  markets?: string[];
54
54
  techVertical?: string[];
@@ -1 +1 @@
1
- {"version":3,"file":"organization.model.d.ts","sourceRoot":"","sources":["../../src/ecosystem/organization.model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"organization.model.d.ts","sourceRoot":"","sources":["../../src/ecosystem/organization.model.ts"],"names":[],"mappings":"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"}
@@ -20,6 +20,8 @@ export declare enum ErrorCode {
20
20
  /** Generic validation error */
21
21
  VALIDATION_ERROR = "VALIDATION_ERROR",
22
22
  /** Account is blocked/pending approval */
23
- ACCOUNT_BLOCKED = "ACCOUNT_BLOCKED"
23
+ ACCOUNT_BLOCKED = "ACCOUNT_BLOCKED",
24
+ /** CSRF token missing or mismatched on an otherwise-authenticated request */
25
+ CSRF_TOKEN_INVALID = "CSRF_TOKEN_INVALID"
24
26
  }
25
27
  //# sourceMappingURL=error-codes.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"error-codes.d.ts","sourceRoot":"","sources":["../../src/errors/error-codes.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,oBAAY,SAAS;IACjB,2CAA2C;IAC3C,mBAAmB,wBAAwB;IAE3C,6DAA6D;IAC7D,cAAc,mBAAmB;IAEjC,4DAA4D;IAC5D,eAAe,oBAAoB;IAEnC,gDAAgD;IAChD,aAAa,kBAAkB;IAE/B,kDAAkD;IAClD,gBAAgB,qBAAqB;IAErC,6CAA6C;IAC7C,mBAAmB,wBAAwB;IAE3C,mCAAmC;IACnC,mBAAmB,wBAAwB;IAE3C,+BAA+B;IAC/B,gBAAgB,qBAAqB;IAErC,0CAA0C;IAC1C,eAAe,oBAAoB;CACtC"}
1
+ {"version":3,"file":"error-codes.d.ts","sourceRoot":"","sources":["../../src/errors/error-codes.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,oBAAY,SAAS;IACjB,2CAA2C;IAC3C,mBAAmB,wBAAwB;IAE3C,6DAA6D;IAC7D,cAAc,mBAAmB;IAEjC,4DAA4D;IAC5D,eAAe,oBAAoB;IAEnC,gDAAgD;IAChD,aAAa,kBAAkB;IAE/B,kDAAkD;IAClD,gBAAgB,qBAAqB;IAErC,6CAA6C;IAC7C,mBAAmB,wBAAwB;IAE3C,mCAAmC;IACnC,mBAAmB,wBAAwB;IAE3C,+BAA+B;IAC/B,gBAAgB,qBAAqB;IAErC,0CAA0C;IAC1C,eAAe,oBAAoB;IAEnC,6EAA6E;IAC7E,kBAAkB,uBAAuB;CAC5C"}
@@ -25,5 +25,7 @@ var ErrorCode;
25
25
  ErrorCode["VALIDATION_ERROR"] = "VALIDATION_ERROR";
26
26
  /** Account is blocked/pending approval */
27
27
  ErrorCode["ACCOUNT_BLOCKED"] = "ACCOUNT_BLOCKED";
28
+ /** CSRF token missing or mismatched on an otherwise-authenticated request */
29
+ ErrorCode["CSRF_TOKEN_INVALID"] = "CSRF_TOKEN_INVALID";
28
30
  })(ErrorCode || (exports.ErrorCode = ErrorCode = {}));
29
31
  //# sourceMappingURL=error-codes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"error-codes.js","sourceRoot":"","sources":["../../src/errors/error-codes.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,IAAY,SA2BX;AA3BD,WAAY,SAAS;IACjB,2CAA2C;IAC3C,wDAA2C,CAAA;IAE3C,6DAA6D;IAC7D,8CAAiC,CAAA;IAEjC,4DAA4D;IAC5D,gDAAmC,CAAA;IAEnC,gDAAgD;IAChD,4CAA+B,CAAA;IAE/B,kDAAkD;IAClD,kDAAqC,CAAA;IAErC,6CAA6C;IAC7C,wDAA2C,CAAA;IAE3C,mCAAmC;IACnC,wDAA2C,CAAA;IAE3C,+BAA+B;IAC/B,kDAAqC,CAAA;IAErC,0CAA0C;IAC1C,gDAAmC,CAAA;AACvC,CAAC,EA3BW,SAAS,yBAAT,SAAS,QA2BpB"}
1
+ {"version":3,"file":"error-codes.js","sourceRoot":"","sources":["../../src/errors/error-codes.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,IAAY,SA8BX;AA9BD,WAAY,SAAS;IACjB,2CAA2C;IAC3C,wDAA2C,CAAA;IAE3C,6DAA6D;IAC7D,8CAAiC,CAAA;IAEjC,4DAA4D;IAC5D,gDAAmC,CAAA;IAEnC,gDAAgD;IAChD,4CAA+B,CAAA;IAE/B,kDAAkD;IAClD,kDAAqC,CAAA;IAErC,6CAA6C;IAC7C,wDAA2C,CAAA;IAE3C,mCAAmC;IACnC,wDAA2C,CAAA;IAE3C,+BAA+B;IAC/B,kDAAqC,CAAA;IAErC,0CAA0C;IAC1C,gDAAmC,CAAA;IAEnC,6EAA6E;IAC7E,sDAAyC,CAAA;AAC7C,CAAC,EA9BW,SAAS,yBAAT,SAAS,QA8BpB"}
@@ -8,6 +8,9 @@ export interface EventEdition {
8
8
  address?: string | null;
9
9
  theme?: string | null;
10
10
  maxVisitors?: number | null;
11
+ url?: string | null;
12
+ thumbnailUrl?: string | null;
13
+ siteName?: string | null;
11
14
  subscriberCount?: number;
12
15
  isSubscribed?: boolean;
13
16
  ticketTiers?: EventTicketTier[];
@@ -29,6 +32,7 @@ export interface CreateEventEditionRequest {
29
32
  address?: string;
30
33
  theme?: string;
31
34
  maxVisitors?: number;
35
+ url?: string;
32
36
  }
33
37
  export interface UpdateEventEditionRequest {
34
38
  name?: string;
@@ -37,6 +41,7 @@ export interface UpdateEventEditionRequest {
37
41
  address?: string | null;
38
42
  theme?: string | null;
39
43
  maxVisitors?: number | null;
44
+ url?: string | null;
40
45
  }
41
46
  export interface EditionSubscriber {
42
47
  id: number;
@@ -1 +1 @@
1
- {"version":3,"file":"event-edition.model.d.ts","sourceRoot":"","sources":["../../src/events/event-edition.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAE5D,MAAM,WAAW,YAAY;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,WAAW,CAAC,EAAE,eAAe,EAAE,CAAC;IAChC,aAAa,CAAC,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACnF,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,yBAAyB;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,yBAAyB;IACtC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/B;AAED,MAAM,WAAW,iBAAiB;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;CACtB"}
1
+ {"version":3,"file":"event-edition.model.d.ts","sourceRoot":"","sources":["../../src/events/event-edition.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAE5D,MAAM,WAAW,YAAY;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,WAAW,CAAC,EAAE,eAAe,EAAE,CAAC;IAChC,aAAa,CAAC,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACnF,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,yBAAyB;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,GAAG,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,yBAAyB;IACtC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB;AAED,MAAM,WAAW,iBAAiB;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;CACtB"}
@@ -4,6 +4,9 @@ export interface BiomeEvent {
4
4
  description?: string | null;
5
5
  ownerId?: number | null;
6
6
  logoFileId?: number | null;
7
+ url?: string | null;
8
+ thumbnailUrl?: string | null;
9
+ siteName?: string | null;
7
10
  createdBy: number;
8
11
  updatedBy?: number | null;
9
12
  createdAt: string;
@@ -14,12 +17,14 @@ export interface CreateEventRequest {
14
17
  name: string;
15
18
  description?: string;
16
19
  ownerId?: number;
20
+ url?: string;
17
21
  }
18
22
  export interface UpdateEventRequest {
19
23
  name?: string;
20
24
  description?: string | null;
21
25
  ownerId?: number;
22
26
  logoFileId?: number | null;
27
+ url?: string | null;
23
28
  }
24
29
  export interface EventListResponse {
25
30
  events: BiomeEvent[];
@@ -1 +1 @@
1
- {"version":3,"file":"event.model.d.ts","sourceRoot":"","sources":["../../src/events/event.model.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,UAAU;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,EAAE,IAAI,GAAG,MAAM,GAAG,aAAa,CAAC,CAAC;AAE3E,MAAM,WAAW,kBAAkB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,kBAAkB;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B;AAED,MAAM,WAAW,iBAAiB;IAC9B,MAAM,EAAE,UAAU,EAAE,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;CACjB"}
1
+ {"version":3,"file":"event.model.d.ts","sourceRoot":"","sources":["../../src/events/event.model.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,UAAU;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,EAAE,IAAI,GAAG,MAAM,GAAG,aAAa,CAAC,CAAC;AAE3E,MAAM,WAAW,kBAAkB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,kBAAkB;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB;AAED,MAAM,WAAW,iBAAiB;IAC9B,MAAM,EAAE,UAAU,EAAE,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;CACjB"}
@@ -1,4 +1,4 @@
1
- export type FollowableEntityType = 'ecosystem' | 'organization' | 'event';
1
+ export type FollowableEntityType = 'ecosystem' | 'organization' | 'event' | 'project';
2
2
  export interface FollowStatus {
3
3
  isFollowing: boolean;
4
4
  followerCount: number;
@@ -1 +1 @@
1
- {"version":3,"file":"follow.model.d.ts","sourceRoot":"","sources":["../../src/follows/follow.model.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,oBAAoB,GAAG,WAAW,GAAG,cAAc,GAAG,OAAO,CAAC;AAE1E,MAAM,WAAW,YAAY;IACzB,WAAW,EAAE,OAAO,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;CACzB"}
1
+ {"version":3,"file":"follow.model.d.ts","sourceRoot":"","sources":["../../src/follows/follow.model.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,oBAAoB,GAAG,WAAW,GAAG,cAAc,GAAG,OAAO,GAAG,SAAS,CAAC;AAEtF,MAAM,WAAW,YAAY;IACzB,WAAW,EAAE,OAAO,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;CACzB"}
@@ -1 +1 @@
1
- {"version":3,"file":"follow.service.d.ts","sourceRoot":"","sources":["../../src/follows/follow.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAGtD,OAAO,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAQpE;;GAEG;AACH,qBAAa,YAAY;IACT,OAAO,CAAC,IAAI;gBAAJ,IAAI,EAAE,eAAe;IAEnC,MAAM,CAAC,UAAU,EAAE,oBAAoB,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAWzE,QAAQ,CAAC,UAAU,EAAE,oBAAoB,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAW3E,SAAS,CAAC,UAAU,EAAE,oBAAoB,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;CAU7F"}
1
+ {"version":3,"file":"follow.service.d.ts","sourceRoot":"","sources":["../../src/follows/follow.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAGtD,OAAO,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AASpE;;GAEG;AACH,qBAAa,YAAY;IACT,OAAO,CAAC,IAAI;gBAAJ,IAAI,EAAE,eAAe;IAEnC,MAAM,CAAC,UAAU,EAAE,oBAAoB,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAWzE,QAAQ,CAAC,UAAU,EAAE,oBAAoB,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAW3E,SAAS,CAAC,UAAU,EAAE,oBAAoB,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;CAU7F"}
@@ -6,6 +6,7 @@ const ENTITY_PATH_SEGMENTS = {
6
6
  ecosystem: "ecosystems",
7
7
  organization: "organizations",
8
8
  event: "events",
9
+ project: "projects",
9
10
  };
10
11
  /**
11
12
  * Follow/unfollow management for ecosystems, organizations, and events
@@ -1 +1 @@
1
- {"version":3,"file":"follow.service.js","sourceRoot":"","sources":["../../src/follows/follow.service.ts"],"names":[],"mappings":";;;AACA,yDAAuD;AAIvD,MAAM,oBAAoB,GAAyC;IAC/D,SAAS,EAAE,YAAY;IACvB,YAAY,EAAE,eAAe;IAC7B,KAAK,EAAE,QAAQ;CAClB,CAAC;AAEF;;GAEG;AACH,MAAa,YAAY;IACrB,YAAoB,IAAqB;QAArB,SAAI,GAAJ,IAAI,CAAiB;IAAG,CAAC;IAE7C,KAAK,CAAC,MAAM,CAAC,UAAgC,EAAE,QAAgB;QAC3D,IAAI,CAAC;YACD,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAChB,IAAI,oBAAoB,CAAC,UAAU,CAAC,IAAI,QAAQ,SAAS,EACzD,EAAE,CACL,CAAC;QACN,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,IAAA,8BAAc,EAAC,KAAK,EAAE,kBAAkB,CAAC,CAAC;QACpD,CAAC;IACL,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,UAAgC,EAAE,QAAgB;QAC7D,IAAI,CAAC;YACD,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAChB,IAAI,oBAAoB,CAAC,UAAU,CAAC,IAAI,QAAQ,WAAW,EAC3D,EAAE,CACL,CAAC;QACN,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,IAAA,8BAAc,EAAC,KAAK,EAAE,oBAAoB,CAAC,CAAC;QACtD,CAAC;IACL,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,UAAgC,EAAE,QAAgB;QAC9D,IAAI,CAAC;YACD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAChC,IAAI,oBAAoB,CAAC,UAAU,CAAC,IAAI,QAAQ,gBAAgB,CACnE,CAAC;YACF,OAAO,QAAQ,CAAC,OAAO,CAAC;QAC5B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,IAAA,8BAAc,EAAC,KAAK,EAAE,6BAA6B,CAAC,CAAC;QAC/D,CAAC;IACL,CAAC;CACJ;AAnCD,oCAmCC"}
1
+ {"version":3,"file":"follow.service.js","sourceRoot":"","sources":["../../src/follows/follow.service.ts"],"names":[],"mappings":";;;AACA,yDAAuD;AAIvD,MAAM,oBAAoB,GAAyC;IAC/D,SAAS,EAAE,YAAY;IACvB,YAAY,EAAE,eAAe;IAC7B,KAAK,EAAE,QAAQ;IACf,OAAO,EAAE,UAAU;CACtB,CAAC;AAEF;;GAEG;AACH,MAAa,YAAY;IACrB,YAAoB,IAAqB;QAArB,SAAI,GAAJ,IAAI,CAAiB;IAAG,CAAC;IAE7C,KAAK,CAAC,MAAM,CAAC,UAAgC,EAAE,QAAgB;QAC3D,IAAI,CAAC;YACD,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAChB,IAAI,oBAAoB,CAAC,UAAU,CAAC,IAAI,QAAQ,SAAS,EACzD,EAAE,CACL,CAAC;QACN,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,IAAA,8BAAc,EAAC,KAAK,EAAE,kBAAkB,CAAC,CAAC;QACpD,CAAC;IACL,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,UAAgC,EAAE,QAAgB;QAC7D,IAAI,CAAC;YACD,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAChB,IAAI,oBAAoB,CAAC,UAAU,CAAC,IAAI,QAAQ,WAAW,EAC3D,EAAE,CACL,CAAC;QACN,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,IAAA,8BAAc,EAAC,KAAK,EAAE,oBAAoB,CAAC,CAAC;QACtD,CAAC;IACL,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,UAAgC,EAAE,QAAgB;QAC9D,IAAI,CAAC;YACD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAChC,IAAI,oBAAoB,CAAC,UAAU,CAAC,IAAI,QAAQ,gBAAgB,CACnE,CAAC;YACF,OAAO,QAAQ,CAAC,OAAO,CAAC;QAC5B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,IAAA,8BAAc,EAAC,KAAK,EAAE,6BAA6B,CAAC,CAAC;QAC/D,CAAC;IACL,CAAC;CACJ;AAnCD,oCAmCC"}
@@ -1,3 +1,18 @@
1
+ export interface GuildChatResponse {
2
+ id: number;
3
+ contextType: string | null;
4
+ contextId: number | null;
5
+ membershipBinding?: 'independent' | 'mirrored';
6
+ createdAt: string;
7
+ updatedAt: string;
8
+ participants: Array<{
9
+ userId: number;
10
+ displayName: string | null;
11
+ email: string;
12
+ avatarFileId?: number | null;
13
+ role?: string | null;
14
+ }>;
15
+ }
1
16
  export interface Guild {
2
17
  id: number;
3
18
  name: string;
@@ -7,6 +22,8 @@ export interface Guild {
7
22
  memberCount: number;
8
23
  isEnrolled: boolean;
9
24
  rules?: string | null;
25
+ /** File id in trunk_files; required for new guilds. */
26
+ logoFileId?: number | null;
10
27
  createdAt: string;
11
28
  updatedAt: string;
12
29
  }
@@ -14,6 +31,7 @@ export interface UpdateGuildRequest {
14
31
  name?: string;
15
32
  description?: string;
16
33
  rules?: string | null;
34
+ logoFileId?: number | null;
17
35
  }
18
36
  export interface GuildPost {
19
37
  id: number;
@@ -53,12 +71,30 @@ export interface GuildArticlesResponse {
53
71
  export interface CreateGuildRequest {
54
72
  name: string;
55
73
  description: string;
74
+ /** Optional: id of an uploaded image in trunk_files. */
75
+ logoFileId?: number | null;
56
76
  }
57
77
  export interface CreateGuildPostRequest {
58
78
  content: string;
59
79
  }
80
+ export interface UpdateGuildPostRequest {
81
+ content: string;
82
+ }
60
83
  export interface CreateGuildArticleRequest {
61
84
  title: string;
62
85
  content: string;
63
86
  }
87
+ export interface UpdateGuildArticleRequest {
88
+ title?: string;
89
+ content?: string;
90
+ }
91
+ export interface GuildMember {
92
+ userId: number;
93
+ username: string;
94
+ joinedAt: string;
95
+ }
96
+ export interface GuildMembersResponse {
97
+ members: GuildMember[];
98
+ total: number;
99
+ }
64
100
  //# sourceMappingURL=guild.model.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"guild.model.d.ts","sourceRoot":"","sources":["../../src/guilds/guild.model.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,KAAK;IAClB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,OAAO,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,kBAAkB;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB;AAED,MAAM,WAAW,SAAS;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,YAAY;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,iBAAiB;IAC9B,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,kBAAkB;IAC/B,KAAK,EAAE,SAAS,EAAE,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,qBAAqB;IAClC,QAAQ,EAAE,YAAY,EAAE,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,kBAAkB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,sBAAsB;IACnC,OAAO,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,yBAAyB;IACtC,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACnB"}
1
+ {"version":3,"file":"guild.model.d.ts","sourceRoot":"","sources":["../../src/guilds/guild.model.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { BiomeHttpClient } from '../core/http-client';
2
- import { Guild, GuildListResponse, GuildPost, GuildPostsResponse, GuildArticle, GuildArticlesResponse, CreateGuildRequest, UpdateGuildRequest, CreateGuildPostRequest, CreateGuildArticleRequest } from './guild.model';
2
+ import { Guild, GuildListResponse, GuildPost, GuildPostsResponse, GuildArticle, GuildArticlesResponse, GuildMembersResponse, GuildChatResponse, CreateGuildRequest, UpdateGuildRequest, CreateGuildPostRequest, UpdateGuildPostRequest, CreateGuildArticleRequest, UpdateGuildArticleRequest } from './guild.model';
3
3
  export declare class BiomeGuilds {
4
4
  private http;
5
5
  constructor(http: BiomeHttpClient);
@@ -7,13 +7,19 @@ export declare class BiomeGuilds {
7
7
  get(id: number): Promise<Guild>;
8
8
  create(data: CreateGuildRequest): Promise<Guild>;
9
9
  update(id: number, data: UpdateGuildRequest): Promise<void>;
10
+ getChat(id: number): Promise<GuildChatResponse>;
10
11
  enroll(id: number): Promise<void>;
11
12
  disenroll(id: number): Promise<void>;
12
13
  transferChief(id: number, newChiefId: number): Promise<void>;
13
14
  delete(id: number): Promise<void>;
15
+ listMembers(id: number): Promise<GuildMembersResponse>;
14
16
  listPosts(id: number, page?: number, limit?: number): Promise<GuildPostsResponse>;
15
17
  createPost(id: number, data: CreateGuildPostRequest): Promise<GuildPost>;
18
+ updatePost(guildId: number, postId: number, data: UpdateGuildPostRequest): Promise<GuildPost>;
19
+ deletePost(guildId: number, postId: number): Promise<void>;
16
20
  listArticles(id: number, page?: number, limit?: number): Promise<GuildArticlesResponse>;
17
21
  createArticle(id: number, data: CreateGuildArticleRequest): Promise<GuildArticle>;
22
+ updateArticle(guildId: number, articleId: number, data: UpdateGuildArticleRequest): Promise<GuildArticle>;
23
+ deleteArticle(guildId: number, articleId: number): Promise<void>;
18
24
  }
19
25
  //# sourceMappingURL=guild.service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"guild.service.d.ts","sourceRoot":"","sources":["../../src/guilds/guild.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAGtD,OAAO,EACH,KAAK,EACL,iBAAiB,EACjB,SAAS,EACT,kBAAkB,EAClB,YAAY,EACZ,qBAAqB,EACrB,kBAAkB,EAClB,kBAAkB,EAClB,sBAAsB,EACtB,yBAAyB,EAC5B,MAAM,eAAe,CAAC;AAEvB,qBAAa,WAAW;IACR,OAAO,CAAC,IAAI;gBAAJ,IAAI,EAAE,eAAe;IAEnC,IAAI,IAAI,OAAO,CAAC,iBAAiB,CAAC;IASlC,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;IAS/B,MAAM,CAAC,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,KAAK,CAAC;IAShD,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ3D,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQjC,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQpC,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ5D,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQjC,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,SAAI,EAAE,KAAK,SAAK,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAWxE,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,sBAAsB,GAAG,OAAO,CAAC,SAAS,CAAC;IASxE,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,SAAI,EAAE,KAAK,SAAK,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAW9E,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,yBAAyB,GAAG,OAAO,CAAC,YAAY,CAAC;CAQ1F"}
1
+ {"version":3,"file":"guild.service.d.ts","sourceRoot":"","sources":["../../src/guilds/guild.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAGtD,OAAO,EACH,KAAK,EACL,iBAAiB,EACjB,SAAS,EACT,kBAAkB,EAClB,YAAY,EACZ,qBAAqB,EACrB,oBAAoB,EACpB,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,EAClB,sBAAsB,EACtB,sBAAsB,EACtB,yBAAyB,EACzB,yBAAyB,EAC5B,MAAM,eAAe,CAAC;AAEvB,qBAAa,WAAW;IACR,OAAO,CAAC,IAAI;gBAAJ,IAAI,EAAE,eAAe;IAEnC,IAAI,IAAI,OAAO,CAAC,iBAAiB,CAAC;IASlC,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;IAS/B,MAAM,CAAC,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,KAAK,CAAC;IAShD,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ3D,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAS/C,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQjC,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQpC,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ5D,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQjC,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAStD,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,SAAI,EAAE,KAAK,SAAK,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAWxE,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,sBAAsB,GAAG,OAAO,CAAC,SAAS,CAAC;IASxE,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,sBAAsB,GAAG,OAAO,CAAC,SAAS,CAAC;IAY7F,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ1D,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,SAAI,EAAE,KAAK,SAAK,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAW9E,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,yBAAyB,GAAG,OAAO,CAAC,YAAY,CAAC;IASjF,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,yBAAyB,GAAG,OAAO,CAAC,YAAY,CAAC;IAYzG,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAOzE"}