@positronic/cli 0.0.66 → 0.0.67
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/src/cli.js +11 -2
- package/dist/src/commands/schedule.js +10 -0
- package/dist/src/components/schedule-create.js +7 -1
- package/dist/src/components/schedule-list.js +9 -0
- package/dist/src/components/schedule-timezone.js +299 -0
- package/dist/types/cli.d.ts.map +1 -1
- package/dist/types/commands/schedule.d.ts +4 -0
- package/dist/types/commands/schedule.d.ts.map +1 -1
- package/dist/types/components/schedule-create.d.ts.map +1 -1
- package/dist/types/components/schedule-list.d.ts.map +1 -1
- package/dist/types/components/schedule-timezone.d.ts +6 -0
- package/dist/types/components/schedule-timezone.d.ts.map +1 -0
- package/package.json +4 -4
package/dist/src/cli.js
CHANGED
|
@@ -694,10 +694,11 @@ export function buildCli(options) {
|
|
|
694
694
|
argv.list,
|
|
695
695
|
argv.delete,
|
|
696
696
|
argv._.includes('create') || argv._.includes('c'),
|
|
697
|
-
argv._.includes('runs')
|
|
697
|
+
argv._.includes('runs'),
|
|
698
|
+
argv._.includes('timezone')
|
|
698
699
|
].filter(Boolean).length;
|
|
699
700
|
if (operations === 0) {
|
|
700
|
-
throw new Error('You must specify an operation: create, -l (list), -d (delete), or
|
|
701
|
+
throw new Error('You must specify an operation: create, -l (list), -d (delete), runs, or timezone');
|
|
701
702
|
}
|
|
702
703
|
if (operations > 1) {
|
|
703
704
|
throw new Error('You can only specify one operation at a time');
|
|
@@ -783,6 +784,14 @@ export function buildCli(options) {
|
|
|
783
784
|
}, function(argv) {
|
|
784
785
|
var element = scheduleCommand.create(argv);
|
|
785
786
|
render(element);
|
|
787
|
+
}).command('timezone [timezone]', 'Get or set the project timezone for schedules\n', function(yargsTimezone) {
|
|
788
|
+
return yargsTimezone.positional('timezone', {
|
|
789
|
+
describe: 'IANA timezone (e.g., "America/Chicago", "Europe/London")',
|
|
790
|
+
type: 'string'
|
|
791
|
+
}).example('$0 schedule timezone', 'Show current project timezone').example('$0 schedule timezone America/Chicago', 'Set timezone to Central');
|
|
792
|
+
}, function(argv) {
|
|
793
|
+
var element = scheduleCommand.timezone(argv);
|
|
794
|
+
render(element);
|
|
786
795
|
}).command('runs', 'List scheduled run history\n', function(yargsRuns) {
|
|
787
796
|
return yargsRuns.option('schedule-id', {
|
|
788
797
|
describe: 'Filter runs by schedule ID',
|
|
@@ -22,6 +22,7 @@ import { ScheduleCreate } from '../components/schedule-create.js';
|
|
|
22
22
|
import { ScheduleList } from '../components/schedule-list.js';
|
|
23
23
|
import { ScheduleDelete } from '../components/schedule-delete.js';
|
|
24
24
|
import { ScheduleRuns } from '../components/schedule-runs.js';
|
|
25
|
+
import { ScheduleTimezone } from '../components/schedule-timezone.js';
|
|
25
26
|
import { BrainResolver } from '../components/brain-resolver.js';
|
|
26
27
|
export var ScheduleCommand = /*#__PURE__*/ function() {
|
|
27
28
|
"use strict";
|
|
@@ -73,6 +74,15 @@ export var ScheduleCommand = /*#__PURE__*/ function() {
|
|
|
73
74
|
status: status
|
|
74
75
|
});
|
|
75
76
|
}
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
key: "timezone",
|
|
80
|
+
value: function timezone(param) {
|
|
81
|
+
var timezone = param.timezone;
|
|
82
|
+
return React.createElement(ScheduleTimezone, {
|
|
83
|
+
timezone: timezone
|
|
84
|
+
});
|
|
85
|
+
}
|
|
76
86
|
}
|
|
77
87
|
]);
|
|
78
88
|
return ScheduleCommand;
|
|
@@ -247,9 +247,15 @@ export var ScheduleCreate = function(param) {
|
|
|
247
247
|
bold: true
|
|
248
248
|
}, "Cron Expression:"), " ", schedule.cronExpression), /*#__PURE__*/ React.createElement(Text, null, /*#__PURE__*/ React.createElement(Text, {
|
|
249
249
|
bold: true
|
|
250
|
+
}, "Timezone:"), " ", schedule.timezone), /*#__PURE__*/ React.createElement(Text, null, /*#__PURE__*/ React.createElement(Text, {
|
|
251
|
+
bold: true
|
|
250
252
|
}, "Status:"), " ", schedule.enabled ? 'Enabled' : 'Disabled'), schedule.nextRunAt && /*#__PURE__*/ React.createElement(Text, null, /*#__PURE__*/ React.createElement(Text, {
|
|
251
253
|
bold: true
|
|
252
|
-
}, "Next Run:"),
|
|
254
|
+
}, "Next Run:"), ' ', new Date(schedule.nextRunAt).toLocaleString('en-US', {
|
|
255
|
+
timeZone: schedule.timezone,
|
|
256
|
+
dateStyle: 'medium',
|
|
257
|
+
timeStyle: 'short'
|
|
258
|
+
}))), /*#__PURE__*/ React.createElement(Box, {
|
|
253
259
|
marginTop: 1
|
|
254
260
|
}, /*#__PURE__*/ React.createElement(Text, {
|
|
255
261
|
dimColor: true
|
|
@@ -111,6 +111,10 @@ export var ScheduleList = function(param) {
|
|
|
111
111
|
header: 'Status',
|
|
112
112
|
width: 10
|
|
113
113
|
},
|
|
114
|
+
timezone: {
|
|
115
|
+
header: 'Timezone',
|
|
116
|
+
width: 18
|
|
117
|
+
},
|
|
114
118
|
nextRun: {
|
|
115
119
|
header: 'Next Run',
|
|
116
120
|
width: 12
|
|
@@ -149,6 +153,9 @@ export var ScheduleList = function(param) {
|
|
|
149
153
|
}, padRight(columns.status.header, columns.status.width)), /*#__PURE__*/ React.createElement(Text, null, " "), /*#__PURE__*/ React.createElement(Text, {
|
|
150
154
|
bold: true,
|
|
151
155
|
color: "cyan"
|
|
156
|
+
}, padRight(columns.timezone.header, columns.timezone.width)), /*#__PURE__*/ React.createElement(Text, null, " "), /*#__PURE__*/ React.createElement(Text, {
|
|
157
|
+
bold: true,
|
|
158
|
+
color: "cyan"
|
|
152
159
|
}, padRight(columns.nextRun.header, columns.nextRun.width)), /*#__PURE__*/ React.createElement(Text, null, " "), /*#__PURE__*/ React.createElement(Text, {
|
|
153
160
|
bold: true,
|
|
154
161
|
color: "cyan"
|
|
@@ -166,6 +173,8 @@ export var ScheduleList = function(param) {
|
|
|
166
173
|
}, /*#__PURE__*/ React.createElement(Text, null, padRight(truncate(schedule.brainTitle, columns.brainTitle.width), columns.brainTitle.width)), /*#__PURE__*/ React.createElement(Text, null, " "), /*#__PURE__*/ React.createElement(Text, null, padRight(truncate(schedule.cronExpression, columns.schedule.width), columns.schedule.width)), /*#__PURE__*/ React.createElement(Text, null, " "), /*#__PURE__*/ React.createElement(Text, {
|
|
167
174
|
color: schedule.enabled ? 'green' : 'red'
|
|
168
175
|
}, padRight(schedule.enabled ? 'Enabled' : 'Disabled', columns.status.width)), /*#__PURE__*/ React.createElement(Text, null, " "), /*#__PURE__*/ React.createElement(Text, {
|
|
176
|
+
dimColor: true
|
|
177
|
+
}, padRight(truncate(schedule.timezone || 'UTC', columns.timezone.width), columns.timezone.width)), /*#__PURE__*/ React.createElement(Text, null, " "), /*#__PURE__*/ React.createElement(Text, {
|
|
169
178
|
color: isOverdue ? 'red' : undefined
|
|
170
179
|
}, padRight(nextRunDate ? formatRelativeTime(nextRunDate) : 'N/A', columns.nextRun.width)), /*#__PURE__*/ React.createElement(Text, null, " "), /*#__PURE__*/ React.createElement(Text, {
|
|
171
180
|
dimColor: true
|
|
@@ -0,0 +1,299 @@
|
|
|
1
|
+
function _array_like_to_array(arr, len) {
|
|
2
|
+
if (len == null || len > arr.length) len = arr.length;
|
|
3
|
+
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
4
|
+
return arr2;
|
|
5
|
+
}
|
|
6
|
+
function _array_with_holes(arr) {
|
|
7
|
+
if (Array.isArray(arr)) return arr;
|
|
8
|
+
}
|
|
9
|
+
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
|
|
10
|
+
try {
|
|
11
|
+
var info = gen[key](arg);
|
|
12
|
+
var value = info.value;
|
|
13
|
+
} catch (error) {
|
|
14
|
+
reject(error);
|
|
15
|
+
return;
|
|
16
|
+
}
|
|
17
|
+
if (info.done) {
|
|
18
|
+
resolve(value);
|
|
19
|
+
} else {
|
|
20
|
+
Promise.resolve(value).then(_next, _throw);
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
function _async_to_generator(fn) {
|
|
24
|
+
return function() {
|
|
25
|
+
var self = this, args = arguments;
|
|
26
|
+
return new Promise(function(resolve, reject) {
|
|
27
|
+
var gen = fn.apply(self, args);
|
|
28
|
+
function _next(value) {
|
|
29
|
+
asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
|
|
30
|
+
}
|
|
31
|
+
function _throw(err) {
|
|
32
|
+
asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
|
|
33
|
+
}
|
|
34
|
+
_next(undefined);
|
|
35
|
+
});
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
function _iterable_to_array_limit(arr, i) {
|
|
39
|
+
var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
|
|
40
|
+
if (_i == null) return;
|
|
41
|
+
var _arr = [];
|
|
42
|
+
var _n = true;
|
|
43
|
+
var _d = false;
|
|
44
|
+
var _s, _e;
|
|
45
|
+
try {
|
|
46
|
+
for(_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true){
|
|
47
|
+
_arr.push(_s.value);
|
|
48
|
+
if (i && _arr.length === i) break;
|
|
49
|
+
}
|
|
50
|
+
} catch (err) {
|
|
51
|
+
_d = true;
|
|
52
|
+
_e = err;
|
|
53
|
+
} finally{
|
|
54
|
+
try {
|
|
55
|
+
if (!_n && _i["return"] != null) _i["return"]();
|
|
56
|
+
} finally{
|
|
57
|
+
if (_d) throw _e;
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
return _arr;
|
|
61
|
+
}
|
|
62
|
+
function _non_iterable_rest() {
|
|
63
|
+
throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
64
|
+
}
|
|
65
|
+
function _sliced_to_array(arr, i) {
|
|
66
|
+
return _array_with_holes(arr) || _iterable_to_array_limit(arr, i) || _unsupported_iterable_to_array(arr, i) || _non_iterable_rest();
|
|
67
|
+
}
|
|
68
|
+
function _unsupported_iterable_to_array(o, minLen) {
|
|
69
|
+
if (!o) return;
|
|
70
|
+
if (typeof o === "string") return _array_like_to_array(o, minLen);
|
|
71
|
+
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
72
|
+
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
73
|
+
if (n === "Map" || n === "Set") return Array.from(n);
|
|
74
|
+
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
|
|
75
|
+
}
|
|
76
|
+
function _ts_generator(thisArg, body) {
|
|
77
|
+
var f, y, t, _ = {
|
|
78
|
+
label: 0,
|
|
79
|
+
sent: function() {
|
|
80
|
+
if (t[0] & 1) throw t[1];
|
|
81
|
+
return t[1];
|
|
82
|
+
},
|
|
83
|
+
trys: [],
|
|
84
|
+
ops: []
|
|
85
|
+
}, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
|
|
86
|
+
return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() {
|
|
87
|
+
return this;
|
|
88
|
+
}), g;
|
|
89
|
+
function verb(n) {
|
|
90
|
+
return function(v) {
|
|
91
|
+
return step([
|
|
92
|
+
n,
|
|
93
|
+
v
|
|
94
|
+
]);
|
|
95
|
+
};
|
|
96
|
+
}
|
|
97
|
+
function step(op) {
|
|
98
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
99
|
+
while(g && (g = 0, op[0] && (_ = 0)), _)try {
|
|
100
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
101
|
+
if (y = 0, t) op = [
|
|
102
|
+
op[0] & 2,
|
|
103
|
+
t.value
|
|
104
|
+
];
|
|
105
|
+
switch(op[0]){
|
|
106
|
+
case 0:
|
|
107
|
+
case 1:
|
|
108
|
+
t = op;
|
|
109
|
+
break;
|
|
110
|
+
case 4:
|
|
111
|
+
_.label++;
|
|
112
|
+
return {
|
|
113
|
+
value: op[1],
|
|
114
|
+
done: false
|
|
115
|
+
};
|
|
116
|
+
case 5:
|
|
117
|
+
_.label++;
|
|
118
|
+
y = op[1];
|
|
119
|
+
op = [
|
|
120
|
+
0
|
|
121
|
+
];
|
|
122
|
+
continue;
|
|
123
|
+
case 7:
|
|
124
|
+
op = _.ops.pop();
|
|
125
|
+
_.trys.pop();
|
|
126
|
+
continue;
|
|
127
|
+
default:
|
|
128
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
|
|
129
|
+
_ = 0;
|
|
130
|
+
continue;
|
|
131
|
+
}
|
|
132
|
+
if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
|
|
133
|
+
_.label = op[1];
|
|
134
|
+
break;
|
|
135
|
+
}
|
|
136
|
+
if (op[0] === 6 && _.label < t[1]) {
|
|
137
|
+
_.label = t[1];
|
|
138
|
+
t = op;
|
|
139
|
+
break;
|
|
140
|
+
}
|
|
141
|
+
if (t && _.label < t[2]) {
|
|
142
|
+
_.label = t[2];
|
|
143
|
+
_.ops.push(op);
|
|
144
|
+
break;
|
|
145
|
+
}
|
|
146
|
+
if (t[2]) _.ops.pop();
|
|
147
|
+
_.trys.pop();
|
|
148
|
+
continue;
|
|
149
|
+
}
|
|
150
|
+
op = body.call(thisArg, _);
|
|
151
|
+
} catch (e) {
|
|
152
|
+
op = [
|
|
153
|
+
6,
|
|
154
|
+
e
|
|
155
|
+
];
|
|
156
|
+
y = 0;
|
|
157
|
+
} finally{
|
|
158
|
+
f = t = 0;
|
|
159
|
+
}
|
|
160
|
+
if (op[0] & 5) throw op[1];
|
|
161
|
+
return {
|
|
162
|
+
value: op[0] ? op[1] : void 0,
|
|
163
|
+
done: true
|
|
164
|
+
};
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
import React, { useState, useEffect } from 'react';
|
|
168
|
+
import { Box, Text } from 'ink';
|
|
169
|
+
import { ErrorComponent } from './error.js';
|
|
170
|
+
import { useApiGet, useApiPost } from '../hooks/useApi.js';
|
|
171
|
+
var formatTimezoneDisplay = function(tz) {
|
|
172
|
+
try {
|
|
173
|
+
var formatter = new Intl.DateTimeFormat('en-US', {
|
|
174
|
+
timeZone: tz,
|
|
175
|
+
timeZoneName: 'shortOffset'
|
|
176
|
+
});
|
|
177
|
+
var parts = formatter.formatToParts(new Date());
|
|
178
|
+
var offsetPart = parts.find(function(p) {
|
|
179
|
+
return p.type === 'timeZoneName';
|
|
180
|
+
});
|
|
181
|
+
var offset = offsetPart ? offsetPart.value : '';
|
|
182
|
+
return "".concat(tz, " (").concat(offset, ")");
|
|
183
|
+
} catch (e) {
|
|
184
|
+
return tz;
|
|
185
|
+
}
|
|
186
|
+
};
|
|
187
|
+
var TimezoneGet = function() {
|
|
188
|
+
var _useApiGet = useApiGet('/brains/schedules/timezone'), data = _useApiGet.data, loading = _useApiGet.loading, error = _useApiGet.error;
|
|
189
|
+
if (error) {
|
|
190
|
+
return /*#__PURE__*/ React.createElement(ErrorComponent, {
|
|
191
|
+
error: error
|
|
192
|
+
});
|
|
193
|
+
}
|
|
194
|
+
if (loading) {
|
|
195
|
+
return /*#__PURE__*/ React.createElement(Box, null, /*#__PURE__*/ React.createElement(Text, null, "Loading timezone..."));
|
|
196
|
+
}
|
|
197
|
+
if (!data) {
|
|
198
|
+
return null;
|
|
199
|
+
}
|
|
200
|
+
return /*#__PURE__*/ React.createElement(Box, {
|
|
201
|
+
flexDirection: "column"
|
|
202
|
+
}, /*#__PURE__*/ React.createElement(Text, null, /*#__PURE__*/ React.createElement(Text, {
|
|
203
|
+
bold: true
|
|
204
|
+
}, "Project timezone:"), ' ', formatTimezoneDisplay(data.timezone)));
|
|
205
|
+
};
|
|
206
|
+
var TimezoneSet = function(param) {
|
|
207
|
+
var timezone = param.timezone;
|
|
208
|
+
var _useState = _sliced_to_array(useState(false), 2), done = _useState[0], setDone = _useState[1];
|
|
209
|
+
var _useState1 = _sliced_to_array(useState(null), 2), result = _useState1[0], setResult = _useState1[1];
|
|
210
|
+
var _useApiPost = useApiPost('/brains/schedules/timezone', {
|
|
211
|
+
headers: {
|
|
212
|
+
'Content-Type': 'application/json'
|
|
213
|
+
},
|
|
214
|
+
method: 'PUT'
|
|
215
|
+
}), execute = _useApiPost.execute, loading = _useApiPost.loading, error = _useApiPost.error;
|
|
216
|
+
useEffect(function() {
|
|
217
|
+
var setTz = function() {
|
|
218
|
+
return _async_to_generator(function() {
|
|
219
|
+
var body, res, e;
|
|
220
|
+
return _ts_generator(this, function(_state) {
|
|
221
|
+
switch(_state.label){
|
|
222
|
+
case 0:
|
|
223
|
+
_state.trys.push([
|
|
224
|
+
0,
|
|
225
|
+
2,
|
|
226
|
+
,
|
|
227
|
+
3
|
|
228
|
+
]);
|
|
229
|
+
body = JSON.stringify({
|
|
230
|
+
timezone: timezone
|
|
231
|
+
});
|
|
232
|
+
return [
|
|
233
|
+
4,
|
|
234
|
+
execute(body)
|
|
235
|
+
];
|
|
236
|
+
case 1:
|
|
237
|
+
res = _state.sent();
|
|
238
|
+
setResult(res);
|
|
239
|
+
setDone(true);
|
|
240
|
+
return [
|
|
241
|
+
3,
|
|
242
|
+
3
|
|
243
|
+
];
|
|
244
|
+
case 2:
|
|
245
|
+
e = _state.sent();
|
|
246
|
+
return [
|
|
247
|
+
3,
|
|
248
|
+
3
|
|
249
|
+
];
|
|
250
|
+
case 3:
|
|
251
|
+
return [
|
|
252
|
+
2
|
|
253
|
+
];
|
|
254
|
+
}
|
|
255
|
+
});
|
|
256
|
+
})();
|
|
257
|
+
};
|
|
258
|
+
setTz();
|
|
259
|
+
}, []);
|
|
260
|
+
if (error) {
|
|
261
|
+
return /*#__PURE__*/ React.createElement(ErrorComponent, {
|
|
262
|
+
error: error
|
|
263
|
+
});
|
|
264
|
+
}
|
|
265
|
+
if (loading) {
|
|
266
|
+
return /*#__PURE__*/ React.createElement(Box, null, /*#__PURE__*/ React.createElement(Text, null, "Setting timezone..."));
|
|
267
|
+
}
|
|
268
|
+
if (done && result) {
|
|
269
|
+
return /*#__PURE__*/ React.createElement(Box, {
|
|
270
|
+
flexDirection: "column"
|
|
271
|
+
}, /*#__PURE__*/ React.createElement(Text, {
|
|
272
|
+
color: "green"
|
|
273
|
+
}, "Timezone set to ", formatTimezoneDisplay(result.timezone)));
|
|
274
|
+
}
|
|
275
|
+
return null;
|
|
276
|
+
};
|
|
277
|
+
export var ScheduleTimezone = function(param) {
|
|
278
|
+
var timezone = param.timezone;
|
|
279
|
+
if (timezone) {
|
|
280
|
+
// Validate timezone locally before sending to server
|
|
281
|
+
try {
|
|
282
|
+
Intl.DateTimeFormat(undefined, {
|
|
283
|
+
timeZone: timezone
|
|
284
|
+
});
|
|
285
|
+
} catch (e) {
|
|
286
|
+
return /*#__PURE__*/ React.createElement(ErrorComponent, {
|
|
287
|
+
error: {
|
|
288
|
+
title: 'Invalid Timezone',
|
|
289
|
+
message: '"'.concat(timezone, '" is not a valid IANA timezone.'),
|
|
290
|
+
details: 'Use a valid IANA timezone like "America/Chicago", "Europe/London", or "Asia/Tokyo".'
|
|
291
|
+
}
|
|
292
|
+
});
|
|
293
|
+
}
|
|
294
|
+
return /*#__PURE__*/ React.createElement(TimezoneSet, {
|
|
295
|
+
timezone: timezone
|
|
296
|
+
});
|
|
297
|
+
}
|
|
298
|
+
return /*#__PURE__*/ React.createElement(TimezoneGet, null);
|
|
299
|
+
};
|
package/dist/types/cli.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/cli.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAU1B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAK5D,MAAM,WAAW,UAAU;IACzB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,MAAM,CAAC,EAAE,mBAAmB,CAAC;IAC7B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,MAAM,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,YAAY,KAAK,GAAG,CAAC;IAC7C,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAoBD,wBAAgB,QAAQ,CAAC,OAAO,EAAE,UAAU,
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/cli.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAU1B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAK5D,MAAM,WAAW,UAAU;IACzB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,MAAM,CAAC,EAAE,mBAAmB,CAAC;IAC7B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,MAAM,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,YAAY,KAAK,GAAG,CAAC;IAC7C,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAoBD,wBAAgB,QAAQ,CAAC,OAAO,EAAE,UAAU,4BAi7C3C"}
|
|
@@ -16,12 +16,16 @@ interface ScheduleRunsArgs {
|
|
|
16
16
|
limit: number;
|
|
17
17
|
status?: 'triggered' | 'failed' | 'complete';
|
|
18
18
|
}
|
|
19
|
+
interface ScheduleTimezoneArgs {
|
|
20
|
+
timezone?: string;
|
|
21
|
+
}
|
|
19
22
|
export declare class ScheduleCommand {
|
|
20
23
|
constructor();
|
|
21
24
|
create({ brain, cronExpression, }: ArgumentsCamelCase<ScheduleCreateArgs>): React.ReactElement;
|
|
22
25
|
list({ brain }: ArgumentsCamelCase<ScheduleListArgs>): React.ReactElement;
|
|
23
26
|
delete({ scheduleId, force }: ArgumentsCamelCase<ScheduleDeleteArgs>): React.ReactElement;
|
|
24
27
|
runs({ scheduleId, limit, status, }: ArgumentsCamelCase<ScheduleRunsArgs>): React.ReactElement;
|
|
28
|
+
timezone({ timezone, }: ArgumentsCamelCase<ScheduleTimezoneArgs>): React.ReactElement;
|
|
25
29
|
}
|
|
26
30
|
export {};
|
|
27
31
|
//# sourceMappingURL=schedule.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schedule.d.ts","sourceRoot":"","sources":["../../../src/commands/schedule.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,OAAO,CAAC;AAChD,OAAO,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"schedule.d.ts","sourceRoot":"","sources":["../../../src/commands/schedule.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,OAAO,CAAC;AAChD,OAAO,KAAK,MAAM,OAAO,CAAC;AAQ1B,UAAU,kBAAkB;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,UAAU,gBAAgB;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,UAAU,kBAAkB;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,OAAO,CAAC;CAChB;AAED,UAAU,gBAAgB;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,WAAW,GAAG,QAAQ,GAAG,UAAU,CAAC;CAC9C;AAED,UAAU,oBAAoB;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,qBAAa,eAAe;;IAG1B,MAAM,CAAC,EACL,KAAK,EACL,cAAc,GACf,EAAE,kBAAkB,CAAC,kBAAkB,CAAC,GAAG,KAAK,CAAC,YAAY;IAW9D,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,kBAAkB,CAAC,gBAAgB,CAAC,GAAG,KAAK,CAAC,YAAY;IAMzE,MAAM,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,kBAAkB,CAAC,kBAAkB,CAAC,GAAG,KAAK,CAAC,YAAY;IAOzF,IAAI,CAAC,EACH,UAAU,EACV,KAAK,EACL,MAAM,GACP,EAAE,kBAAkB,CAAC,gBAAgB,CAAC,GAAG,KAAK,CAAC,YAAY;IAQ5D,QAAQ,CAAC,EACP,QAAQ,GACT,EAAE,kBAAkB,CAAC,oBAAoB,CAAC,GAAG,KAAK,CAAC,YAAY;CAKjE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schedule-create.d.ts","sourceRoot":"","sources":["../../../src/components/schedule-create.tsx"],"names":[],"mappings":"AAKA,UAAU,mBAAmB;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;CACxB;
|
|
1
|
+
{"version":3,"file":"schedule-create.d.ts","sourceRoot":"","sources":["../../../src/components/schedule-create.tsx"],"names":[],"mappings":"AAKA,UAAU,mBAAmB;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;CACxB;AAYD,eAAO,MAAM,cAAc,GAAI,gCAAgC,mBAAmB,mDA8EjF,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schedule-list.d.ts","sourceRoot":"","sources":["../../../src/components/schedule-list.tsx"],"names":[],"mappings":"AAKA,UAAU,iBAAiB;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;
|
|
1
|
+
{"version":3,"file":"schedule-list.d.ts","sourceRoot":"","sources":["../../../src/components/schedule-list.tsx"],"names":[],"mappings":"AAKA,UAAU,iBAAiB;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAuDD,eAAO,MAAM,YAAY,GAAI,iBAAiB,iBAAiB,4CAiI9D,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schedule-timezone.d.ts","sourceRoot":"","sources":["../../../src/components/schedule-timezone.tsx"],"names":[],"mappings":"AAKA,UAAU,qBAAqB;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAwGD,eAAO,MAAM,gBAAgB,GAAI,cAAc,qBAAqB,4CAqBnE,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@positronic/cli",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.67",
|
|
4
4
|
"publishConfig": {
|
|
5
5
|
"access": "public"
|
|
6
6
|
},
|
|
@@ -23,9 +23,9 @@
|
|
|
23
23
|
"clean": "rm -rf tsconfig.tsbuildinfo dist node_modules"
|
|
24
24
|
},
|
|
25
25
|
"dependencies": {
|
|
26
|
-
"@positronic/core": "^0.0.
|
|
27
|
-
"@positronic/spec": "^0.0.
|
|
28
|
-
"@positronic/template-new-project": "^0.0.
|
|
26
|
+
"@positronic/core": "^0.0.67",
|
|
27
|
+
"@positronic/spec": "^0.0.67",
|
|
28
|
+
"@positronic/template-new-project": "^0.0.67",
|
|
29
29
|
"caz": "^2.0.0",
|
|
30
30
|
"chokidar": "^3.6.0",
|
|
31
31
|
"dotenv": "^16.4.7",
|