@overaihq/cli 0.1.0 → 0.2.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.
@@ -0,0 +1,394 @@
1
+ import {
2
+ external_exports
3
+ } from "./chunk-UMCJCOZX.js";
4
+ import "./chunk-MLKGABMK.js";
5
+
6
+ // ../common/src/types/value-type.ts
7
+ var TypeEnum = /* @__PURE__ */ ((TypeEnum2) => {
8
+ TypeEnum2["ActionRunner"] = "ACTION_RUNNER";
9
+ TypeEnum2["Boolean"] = "BOOLEAN";
10
+ TypeEnum2["CidrSubnet"] = "CIDR_SUBNET";
11
+ TypeEnum2["Coordinate"] = "COORDINATE";
12
+ TypeEnum2["Date"] = "DATE";
13
+ TypeEnum2["HttpUrl"] = "HTTP_URL";
14
+ TypeEnum2["Hub"] = "HUB";
15
+ TypeEnum2["ImageUrl"] = "IMAGE_URL";
16
+ TypeEnum2["Interval"] = "INTERVAL";
17
+ TypeEnum2["IpAddress"] = "IP_ADDRESS";
18
+ TypeEnum2["MacAddress"] = "MAC_ADDRESS";
19
+ TypeEnum2["Number"] = "NUMBER";
20
+ TypeEnum2["Percent"] = "PERCENT";
21
+ TypeEnum2["Text"] = "TEXT";
22
+ TypeEnum2["Timestamp"] = "TIMESTAMP";
23
+ TypeEnum2["TimeOfDay"] = "TIME_OF_DAY";
24
+ TypeEnum2["User"] = "USER";
25
+ return TypeEnum2;
26
+ })(TypeEnum || {});
27
+ var NonTypeEnumDataType = /* @__PURE__ */ ((NonTypeEnumDataType2) => {
28
+ NonTypeEnumDataType2["Color"] = "color";
29
+ NonTypeEnumDataType2["Email"] = "Email";
30
+ NonTypeEnumDataType2["PositiveInteger"] = "Positive Integer";
31
+ NonTypeEnumDataType2["Attribute"] = "Attribute";
32
+ NonTypeEnumDataType2["NumericAttribute"] = "Numeric Attribute";
33
+ NonTypeEnumDataType2["RichText"] = "Rich Text";
34
+ NonTypeEnumDataType2["Regex"] = "regex";
35
+ NonTypeEnumDataType2["Record"] = "Record";
36
+ return NonTypeEnumDataType2;
37
+ })(NonTypeEnumDataType || {});
38
+ var AllValueTypes = {
39
+ ...NonTypeEnumDataType,
40
+ ...TypeEnum
41
+ };
42
+ var valueTypeSchema = external_exports.union([
43
+ external_exports.enum(TypeEnum),
44
+ external_exports.enum(NonTypeEnumDataType)
45
+ ]);
46
+ var valueVariableSchema = external_exports.object({
47
+ name: external_exports.string(),
48
+ id: external_exports.string(),
49
+ type: valueTypeSchema,
50
+ defaultValue: external_exports.string().optional()
51
+ });
52
+
53
+ // ../common/src/filters/types.ts
54
+ var validOperationsByType = {
55
+ ["BOOLEAN" /* Boolean */]: ["_eq", "_neq", "_is_null"],
56
+ ["COORDINATE" /* Coordinate */]: [
57
+ "_coord_lat_lt",
58
+ "_coord_lat_lte",
59
+ "_coord_lat_eq",
60
+ "_coord_lat_gt",
61
+ "_coord_lat_gte",
62
+ "_coord_lat_neq",
63
+ "_coord_lng_lt",
64
+ "_coord_lng_lte",
65
+ "_coord_lng_eq",
66
+ "_coord_lng_gt",
67
+ "_coord_lng_gte",
68
+ "_coord_lng_neq",
69
+ "_is_null"
70
+ ],
71
+ ["DATE" /* Date */]: [
72
+ "_chrono_date_lt",
73
+ "_chrono_date_lte",
74
+ "_chrono_date_gt",
75
+ "_chrono_date_gte",
76
+ "_chrono_date_eq",
77
+ "_chrono_date_neq",
78
+ "_is_null"
79
+ ],
80
+ ["HTTP_URL" /* HttpUrl */]: [
81
+ "_includes",
82
+ "_nincludes",
83
+ "_starts_with",
84
+ "_ends_with",
85
+ "_is_null",
86
+ "_eq",
87
+ "_neq",
88
+ "_regex",
89
+ "_nregex"
90
+ ],
91
+ ["IMAGE_URL" /* ImageUrl */]: ["_eq", "_neq", "_is_null"],
92
+ ["INTERVAL" /* Interval */]: [
93
+ "_gt",
94
+ "_gte",
95
+ "_lt",
96
+ "_lte",
97
+ "_eq",
98
+ "_neq",
99
+ "_is_null"
100
+ ],
101
+ ["IP_ADDRESS" /* IpAddress */]: [
102
+ "_includes",
103
+ "_nincludes",
104
+ "_starts_with",
105
+ "_ends_with",
106
+ "_eq",
107
+ "_neq",
108
+ "_is_null",
109
+ "_regex",
110
+ "_nregex",
111
+ "_contained_by_inet",
112
+ "_ncontained_by_inet"
113
+ ],
114
+ ["MAC_ADDRESS" /* MacAddress */]: [
115
+ "_includes",
116
+ "_nincludes",
117
+ "_starts_with",
118
+ "_ends_with",
119
+ "_eq",
120
+ "_neq",
121
+ "_is_null",
122
+ "_regex",
123
+ "_nregex"
124
+ ],
125
+ ["NUMBER" /* Number */]: ["_gt", "_gte", "_lt", "_lte", "_eq", "_neq", "_is_null"],
126
+ ["PERCENT" /* Percent */]: ["_gt", "_gte", "_lt", "_lte", "_eq", "_neq", "_is_null"],
127
+ ["TEXT" /* Text */]: [
128
+ "_includes",
129
+ "_nincludes",
130
+ "_starts_with",
131
+ "_ends_with",
132
+ "_eq",
133
+ "_neq",
134
+ "_is_null",
135
+ "_regex",
136
+ "_nregex"
137
+ ],
138
+ ["TIME_OF_DAY" /* TimeOfDay */]: [
139
+ "_chrono_time_lt",
140
+ "_chrono_time_lte",
141
+ "_chrono_time_gt",
142
+ "_chrono_time_gte",
143
+ "_chrono_time_eq",
144
+ "_chrono_time_neq",
145
+ "_is_null"
146
+ ],
147
+ ["TIMESTAMP" /* Timestamp */]: [
148
+ "_chrono_datetime_lt",
149
+ "_chrono_datetime_lte",
150
+ "_chrono_datetime_gt",
151
+ "_chrono_datetime_gte",
152
+ "_chrono_datetime_eq",
153
+ "_chrono_datetime_neq",
154
+ "_is_null"
155
+ ],
156
+ ["USER" /* User */]: ["_eq", "_neq", "_is_null"],
157
+ ["HUB" /* Hub */]: ["_eq", "_neq", "_is_null"],
158
+ ["ACTION_RUNNER" /* ActionRunner */]: ["_eq", "_neq", "_is_null"],
159
+ ["CIDR_SUBNET" /* CidrSubnet */]: ["_eq", "_neq", "_is_null"]
160
+ };
161
+ var itemAttributeFilterClauseSchema = external_exports.object({
162
+ _eq: external_exports.union([external_exports.string(), external_exports.number(), external_exports.boolean()]).optional(),
163
+ _neq: external_exports.union([external_exports.string(), external_exports.number(), external_exports.boolean()]).optional(),
164
+ _like: external_exports.string().optional(),
165
+ _nlike: external_exports.string().optional(),
166
+ _ilike: external_exports.string().optional(),
167
+ _nilike: external_exports.string().optional(),
168
+ _similar: external_exports.string().optional(),
169
+ _nsimilar: external_exports.string().optional(),
170
+ _regex: external_exports.string().optional(),
171
+ _nregex: external_exports.string().optional(),
172
+ _iregex: external_exports.string().optional(),
173
+ _niregex: external_exports.string().optional(),
174
+ _is_null: external_exports.boolean().optional(),
175
+ _gt: external_exports.union([external_exports.string(), external_exports.number()]).optional(),
176
+ _lt: external_exports.union([external_exports.string(), external_exports.number()]).optional(),
177
+ _gte: external_exports.union([external_exports.string(), external_exports.number()]).optional(),
178
+ _lte: external_exports.union([external_exports.string(), external_exports.number()]).optional(),
179
+ _eq_ts: external_exports.union([external_exports.date(), external_exports.string()]).optional(),
180
+ _neq_ts: external_exports.union([external_exports.date(), external_exports.string()]).optional(),
181
+ _gt_ts: external_exports.union([external_exports.date(), external_exports.string()]).optional(),
182
+ _lt_ts: external_exports.union([external_exports.date(), external_exports.string()]).optional(),
183
+ _gte_ts: external_exports.union([external_exports.date(), external_exports.string()]).optional(),
184
+ _lte_ts: external_exports.union([external_exports.date(), external_exports.string()]).optional(),
185
+ _contained_by_inet: external_exports.string().optional(),
186
+ _ncontained_by_inet: external_exports.string().optional(),
187
+ _includes: external_exports.string().optional(),
188
+ _nincludes: external_exports.string().optional(),
189
+ _starts_with: external_exports.string().optional(),
190
+ _ends_with: external_exports.string().optional(),
191
+ _coord_lat_lt: external_exports.number().optional(),
192
+ _coord_lat_lte: external_exports.number().optional(),
193
+ _coord_lat_eq: external_exports.number().optional(),
194
+ _coord_lat_gt: external_exports.number().optional(),
195
+ _coord_lat_gte: external_exports.number().optional(),
196
+ _coord_lat_neq: external_exports.number().optional(),
197
+ _coord_lng_lt: external_exports.number().optional(),
198
+ _coord_lng_lte: external_exports.number().optional(),
199
+ _coord_lng_eq: external_exports.number().optional(),
200
+ _coord_lng_gt: external_exports.number().optional(),
201
+ _coord_lng_gte: external_exports.number().optional(),
202
+ _coord_lng_neq: external_exports.number().optional(),
203
+ _chrono_date_lt: external_exports.union([external_exports.date(), external_exports.string()]).optional(),
204
+ _chrono_date_lte: external_exports.union([external_exports.date(), external_exports.string()]).optional(),
205
+ _chrono_date_eq: external_exports.union([external_exports.date(), external_exports.string()]).optional(),
206
+ _chrono_date_gt: external_exports.union([external_exports.date(), external_exports.string()]).optional(),
207
+ _chrono_date_gte: external_exports.union([external_exports.date(), external_exports.string()]).optional(),
208
+ _chrono_date_neq: external_exports.union([external_exports.date(), external_exports.string()]).optional(),
209
+ _chrono_time_lt: external_exports.union([external_exports.date(), external_exports.string()]).optional(),
210
+ _chrono_time_lte: external_exports.union([external_exports.date(), external_exports.string()]).optional(),
211
+ _chrono_time_eq: external_exports.union([external_exports.date(), external_exports.string()]).optional(),
212
+ _chrono_time_gte: external_exports.union([external_exports.date(), external_exports.string()]).optional(),
213
+ _chrono_time_gt: external_exports.union([external_exports.date(), external_exports.string()]).optional(),
214
+ _chrono_time_neq: external_exports.union([external_exports.date(), external_exports.string()]).optional(),
215
+ _chrono_datetime_lt: external_exports.union([external_exports.date(), external_exports.string()]).optional(),
216
+ _chrono_datetime_lte: external_exports.union([external_exports.date(), external_exports.string()]).optional(),
217
+ _chrono_datetime_eq: external_exports.union([external_exports.date(), external_exports.string()]).optional(),
218
+ _chrono_datetime_gte: external_exports.union([external_exports.date(), external_exports.string()]).optional(),
219
+ _chrono_datetime_gt: external_exports.union([external_exports.date(), external_exports.string()]).optional(),
220
+ _chrono_datetime_neq: external_exports.union([external_exports.date(), external_exports.string()]).optional()
221
+ });
222
+ var itemTypeFilterClauseSchema = external_exports.object({
223
+ _includes: external_exports.string().optional(),
224
+ _includesAll: external_exports.array(external_exports.string()).optional(),
225
+ _includesAny: external_exports.array(external_exports.string()).optional()
226
+ });
227
+ var linkFilterClauseSchema = external_exports.object({
228
+ linkTypeId: external_exports.object({ _eq: external_exports.string() }).optional(),
229
+ side: external_exports.union([external_exports.literal("to"), external_exports.literal("from"), external_exports.literal("both")]).optional(),
230
+ linkedItem: external_exports.lazy(() => itemFilterExpressionSchema.optional()),
231
+ maxDepth: external_exports.number().optional()
232
+ });
233
+ var attributeFilterClauseSchema = external_exports.object({
234
+ attributeId: external_exports.object({ _eq: external_exports.string() }),
235
+ value: itemAttributeFilterClauseSchema
236
+ });
237
+ var idFilterClauseSchema = external_exports.object({ _eq: external_exports.string() });
238
+ var queryFilterClauseSchema = external_exports.object({
239
+ _includes: external_exports.string().optional(),
240
+ _includesAll: external_exports.array(external_exports.string()).optional(),
241
+ _includesAny: external_exports.array(external_exports.string()).optional()
242
+ });
243
+ var itemFilterExpressionSchema = external_exports.lazy(
244
+ () => external_exports.object({
245
+ _and: external_exports.union([
246
+ external_exports.array(itemFilterExpressionSchema),
247
+ itemFilterExpressionSchema
248
+ ]).optional(),
249
+ _or: external_exports.union([
250
+ external_exports.array(itemFilterExpressionSchema),
251
+ itemFilterExpressionSchema
252
+ ]).optional(),
253
+ _not: itemFilterExpressionSchema.optional(),
254
+ id: idFilterClauseSchema.optional(),
255
+ attributes: attributeFilterClauseSchema.optional(),
256
+ links: linkFilterClauseSchema.optional(),
257
+ itemTypeIds: itemTypeFilterClauseSchema.optional(),
258
+ queries: queryFilterClauseSchema.optional()
259
+ })
260
+ );
261
+ var itemFilterExpressionRootSchema = external_exports.object({
262
+ _and: external_exports.union([
263
+ external_exports.array(itemFilterExpressionSchema),
264
+ itemFilterExpressionSchema
265
+ ])
266
+ });
267
+ var itemFilterAggregateExpressionSchema = external_exports.discriminatedUnion(
268
+ "type",
269
+ [
270
+ external_exports.object({
271
+ type: external_exports.literal("count"),
272
+ filter: itemFilterExpressionSchema
273
+ }),
274
+ external_exports.object({
275
+ type: external_exports.literal("sum"),
276
+ filter: itemFilterExpressionSchema,
277
+ attributeId: external_exports.string()
278
+ }),
279
+ external_exports.object({
280
+ type: external_exports.literal("min"),
281
+ filter: itemFilterExpressionSchema,
282
+ attributeId: external_exports.string()
283
+ }),
284
+ external_exports.object({
285
+ type: external_exports.literal("max"),
286
+ filter: itemFilterExpressionSchema,
287
+ attributeId: external_exports.string()
288
+ }),
289
+ external_exports.object({
290
+ type: external_exports.literal("average"),
291
+ filter: itemFilterExpressionSchema,
292
+ attributeId: external_exports.string()
293
+ })
294
+ ]
295
+ );
296
+ var invalidAttributeTypesForNumericalItemFilterAggregation = [
297
+ "BOOLEAN" /* Boolean */,
298
+ "COORDINATE" /* Coordinate */,
299
+ "HTTP_URL" /* HttpUrl */,
300
+ "IMAGE_URL" /* ImageUrl */,
301
+ "IP_ADDRESS" /* IpAddress */,
302
+ "MAC_ADDRESS" /* MacAddress */,
303
+ "TEXT" /* Text */,
304
+ "USER" /* User */
305
+ ];
306
+ var itemFilterGroupExpressionSchema = external_exports.object({
307
+ // We wrap the attribute id in "attributes" and "attributeId" as one
308
+ // day we will likely enable grouping by links
309
+ attributes: external_exports.object({ attributeId: external_exports.string() })
310
+ });
311
+ var itemFilterGroupAggregateExpressionSchema = itemFilterAggregateExpressionSchema.and(
312
+ external_exports.object({
313
+ groupBy: external_exports.array(itemFilterGroupExpressionSchema)
314
+ })
315
+ );
316
+
317
+ // ../common/src/programmaticPage.ts
318
+ var reactDefaultTemplate = `function App() {
319
+ return (
320
+ <div className="page">
321
+ <h1>My Page Title</h1>
322
+ <p>Page content goes here...</p>
323
+ </div>
324
+ );
325
+ }`;
326
+ var setSearchParamPayloadSchema = external_exports.object({
327
+ params: external_exports.record(external_exports.string(), external_exports.string().nullable())
328
+ });
329
+ var graphqlRequestPayloadSchema = external_exports.object({
330
+ document: external_exports.string(),
331
+ variables: external_exports.record(external_exports.string(), external_exports.unknown()).nullish(),
332
+ requestId: external_exports.string()
333
+ });
334
+ var llmCompletionPayloadSchema = external_exports.object({
335
+ message: external_exports.string(),
336
+ systemPrompt: external_exports.string().optional(),
337
+ model: external_exports.string().optional(),
338
+ requestId: external_exports.string()
339
+ });
340
+ var fileUploadPayloadSchema = external_exports.object({
341
+ file: external_exports.instanceof(ArrayBuffer),
342
+ filename: external_exports.string(),
343
+ requestId: external_exports.string()
344
+ });
345
+ var navigateToPagePayloadSchema = external_exports.object({
346
+ webPageId: external_exports.string(),
347
+ queryParameters: external_exports.record(external_exports.string(), external_exports.string()).optional()
348
+ });
349
+ var openPrintablePagePayloadSchema = external_exports.object({
350
+ printablePageId: external_exports.string(),
351
+ queryParameters: external_exports.record(external_exports.string(), external_exports.string()).optional()
352
+ });
353
+ var consoleLogsPayloadSchema = external_exports.object({
354
+ logs: external_exports.array(
355
+ external_exports.object({
356
+ level: external_exports.enum(["log", "warn", "error", "info"]),
357
+ timestamp: external_exports.number(),
358
+ args: external_exports.array(external_exports.unknown()),
359
+ message: external_exports.string()
360
+ })
361
+ )
362
+ });
363
+ var runtimeErrorPayloadSchema = external_exports.object({
364
+ error: external_exports.string().nullable()
365
+ });
366
+
367
+ // ../common/src/webPage.ts
368
+ var webPageLanguage = ["react"];
369
+ var configFlag = external_exports.union([external_exports.boolean(), external_exports.string()]).nullish().transform((value) => value === true || value === "true").catch(false);
370
+ var webPageConfigSchema = external_exports.object({
371
+ language: external_exports.enum(["react"]).catch("react"),
372
+ customTitle: external_exports.string().nullish(),
373
+ code: external_exports.string().default(reactDefaultTemplate),
374
+ dataSourceUrl: external_exports.string().nullish(),
375
+ filter: itemFilterExpressionRootSchema.nullish().catch(null),
376
+ /* Drops the iframe's sandbox attribute — needed for storage, cookies, forms. */
377
+ noSandbox: configFlag,
378
+ /* Renders the page fullscreen for guests by hiding the workspace top bar. */
379
+ hideTopBar: configFlag
380
+ });
381
+ var webPageConfigWriteSchema = webPageConfigSchema.extend({
382
+ noSandbox: external_exports.union([external_exports.boolean(), external_exports.enum(["true", "false"])]).nullish(),
383
+ hideTopBar: external_exports.union([external_exports.boolean(), external_exports.enum(["true", "false"])]).nullish()
384
+ });
385
+ var defaultWebPageTemplate = reactDefaultTemplate.replace(
386
+ 'className="page"',
387
+ 'className="web-page"'
388
+ );
389
+ export {
390
+ defaultWebPageTemplate,
391
+ webPageConfigSchema,
392
+ webPageConfigWriteSchema,
393
+ webPageLanguage
394
+ };
package/package.json CHANGED
@@ -1,16 +1,11 @@
1
1
  {
2
2
  "name": "@overaihq/cli",
3
- "version": "0.1.0",
3
+ "version": "0.2.0",
4
4
  "description": "OverAI command-line interface — edit workspace automations, pages, functions, and tablespaces as local files",
5
5
  "type": "module",
6
6
  "homepage": "https://overai.com",
7
- "repository": {
8
- "type": "git",
9
- "url": "https://github.com/perygee/perygee.git",
10
- "directory": "cloud/cli"
11
- },
12
7
  "engines": {
13
- "node": ">=22.22.0"
8
+ "node": ">=24.19.0"
14
9
  },
15
10
  "bin": {
16
11
  "overai": "./dist/index.js"
@@ -25,9 +20,9 @@
25
20
  "access": "public"
26
21
  },
27
22
  "devDependencies": {
28
- "@types/node": "^22.20.1",
23
+ "@types/node": "^24.13.3",
29
24
  "tsup": "^8.5.1",
30
- "typescript": "5.9.3",
25
+ "typescript": "7.0.2",
31
26
  "vitest": "^4.1.10",
32
27
  "@perygee/common": "0.0.0"
33
28
  },