@getxflow/cli 1.8.0 → 1.9.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.
- package/dist/args.js +1 -0
- package/dist/bin.js +9 -1
- package/dist/commands/db.js +87 -6
- package/dist/flags.js +6 -3
- package/dist/help.js +672 -647
- package/dist/limits.js +3 -4
- package/dist/moment.js +24 -0
- package/dist/version.js +1 -1
- package/package.json +24 -24
- package/skills/xflow/SKILL.md +700 -685
package/dist/limits.js
CHANGED
|
@@ -15,6 +15,7 @@ const DENIAL_LABELS = {
|
|
|
15
15
|
limit_seats: 'people in the organization',
|
|
16
16
|
limit_schedule_interval: 'schedule frequency',
|
|
17
17
|
limit_schedules: 'schedules in the organization',
|
|
18
|
+
limit_branches: 'database branches in the project',
|
|
18
19
|
db_write_locked: 'database volume, writes are off',
|
|
19
20
|
plan_no_schedules: 'schedules',
|
|
20
21
|
subscription_blocked: 'the subscription is unpaid',
|
|
@@ -40,8 +41,7 @@ const QUOTA_ORDER = [
|
|
|
40
41
|
'functions',
|
|
41
42
|
'schedules',
|
|
42
43
|
'people',
|
|
43
|
-
'
|
|
44
|
-
'files_mb',
|
|
44
|
+
'space_mb',
|
|
45
45
|
'function_minutes',
|
|
46
46
|
'db_hours',
|
|
47
47
|
'builds',
|
|
@@ -52,8 +52,7 @@ const QUOTA_LABELS = {
|
|
|
52
52
|
functions: 'Cloud functions',
|
|
53
53
|
schedules: 'Schedules',
|
|
54
54
|
people: 'People',
|
|
55
|
-
|
|
56
|
-
files_mb: 'Files',
|
|
55
|
+
space_mb: 'Space (databases and files together)',
|
|
57
56
|
function_minutes: 'Function minutes',
|
|
58
57
|
db_hours: 'Database hours',
|
|
59
58
|
builds: 'Builds this month',
|
package/dist/moment.js
ADDED
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.parseMoment = parseMoment;
|
|
4
|
+
const errors_1 = require("./errors");
|
|
5
|
+
const UNIT_MS = { m: 60_000, h: 3_600_000, d: 86_400_000 };
|
|
6
|
+
/** `30m`/`2h`/`1d` ago, `14:05` local (yesterday if still ahead), or an ISO date. */
|
|
7
|
+
function parseMoment(text, now = new Date()) {
|
|
8
|
+
const ago = /^(\d{1,4})([mhd])$/.exec(text);
|
|
9
|
+
if (ago)
|
|
10
|
+
return new Date(now.getTime() - Number(ago[1]) * UNIT_MS[ago[2]]).toISOString();
|
|
11
|
+
const clock = /^(\d{1,2}):(\d{2})$/.exec(text);
|
|
12
|
+
if (clock && Number(clock[1]) < 24 && Number(clock[2]) < 60) {
|
|
13
|
+
const at = new Date(now);
|
|
14
|
+
at.setHours(Number(clock[1]), Number(clock[2]), 0, 0);
|
|
15
|
+
if (at > now)
|
|
16
|
+
at.setDate(at.getDate() - 1);
|
|
17
|
+
return at.toISOString();
|
|
18
|
+
}
|
|
19
|
+
const at = new Date(text);
|
|
20
|
+
if (!/^\d{4}-\d{2}-\d{2}/.test(text) || Number.isNaN(at.getTime())) {
|
|
21
|
+
throw new errors_1.CliError(`--at ${text} is not a moment`, 'For example: --at 2h (two hours ago), --at 14:05 (today), --at 2026-10-30T14:05+03:00');
|
|
22
|
+
}
|
|
23
|
+
return at.toISOString();
|
|
24
|
+
}
|
package/dist/version.js
CHANGED
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.DEFAULT_API_URL = exports.CLI_VERSION = void 0;
|
|
4
4
|
/** Keep in sync with cli/package.json. */
|
|
5
|
-
exports.CLI_VERSION = '1.
|
|
5
|
+
exports.CLI_VERSION = '1.9.0';
|
|
6
6
|
/** Overridden by XFLOW_API_URL or the `api` field in xflow.json. */
|
|
7
7
|
exports.DEFAULT_API_URL = 'https://app.getxflow.com';
|
package/package.json
CHANGED
|
@@ -1,24 +1,24 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "@getxflow/cli",
|
|
3
|
-
"version": "1.
|
|
4
|
-
"description": "CLI for the XFlow platform: projects with apps, functions and a database; source sync, deployment and publishing",
|
|
5
|
-
"license": "UNLICENSED",
|
|
6
|
-
"engines": {
|
|
7
|
-
"node": ">=22"
|
|
8
|
-
},
|
|
9
|
-
"bin": {
|
|
10
|
-
"xflow": "dist/bin.js"
|
|
11
|
-
},
|
|
12
|
-
"files": [
|
|
13
|
-
"dist",
|
|
14
|
-
"skills"
|
|
15
|
-
],
|
|
16
|
-
"scripts": {
|
|
17
|
-
"clean": "node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"",
|
|
18
|
-
"build": "npm run clean && tsc -p tsconfig.json",
|
|
19
|
-
"prepublishOnly": "npm run build"
|
|
20
|
-
},
|
|
21
|
-
"publishConfig": {
|
|
22
|
-
"access": "public"
|
|
23
|
-
}
|
|
24
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "@getxflow/cli",
|
|
3
|
+
"version": "1.9.0",
|
|
4
|
+
"description": "CLI for the XFlow platform: projects with apps, functions and a database; source sync, deployment and publishing",
|
|
5
|
+
"license": "UNLICENSED",
|
|
6
|
+
"engines": {
|
|
7
|
+
"node": ">=22"
|
|
8
|
+
},
|
|
9
|
+
"bin": {
|
|
10
|
+
"xflow": "dist/bin.js"
|
|
11
|
+
},
|
|
12
|
+
"files": [
|
|
13
|
+
"dist",
|
|
14
|
+
"skills"
|
|
15
|
+
],
|
|
16
|
+
"scripts": {
|
|
17
|
+
"clean": "node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"",
|
|
18
|
+
"build": "npm run clean && tsc -p tsconfig.json",
|
|
19
|
+
"prepublishOnly": "npm run build"
|
|
20
|
+
},
|
|
21
|
+
"publishConfig": {
|
|
22
|
+
"access": "public"
|
|
23
|
+
}
|
|
24
|
+
}
|