stepzen 0.45.0-beta.2 → 0.45.0-beta.4
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/README.md +18 -46
- package/bin/dev.js +33 -2
- package/bin/run.js +34 -2
- package/lib/commands/import/db2.d.ts +3 -43
- package/lib/commands/import/db2.d.ts.map +1 -1
- package/lib/commands/import/db2.js +18 -131
- package/lib/commands/import/db2.js.map +1 -1
- package/lib/commands/import/index.d.ts.map +1 -1
- package/lib/commands/import/index.js +2 -1
- package/lib/commands/import/index.js.map +1 -1
- package/lib/commands/import/oracle.d.ts +3 -39
- package/lib/commands/import/oracle.d.ts.map +1 -1
- package/lib/commands/import/oracle.js +16 -120
- package/lib/commands/import/oracle.js.map +1 -1
- package/lib/generate/flags.d.ts +1 -0
- package/lib/generate/flags.d.ts.map +1 -1
- package/lib/generate/flags.js +3 -0
- package/lib/generate/flags.js.map +1 -1
- package/lib/generate/questions.d.ts +4 -0
- package/lib/generate/questions.d.ts.map +1 -1
- package/lib/generate/questions.js +24 -5
- package/lib/generate/questions.js.map +1 -1
- package/lib/generate/sql2sdl.d.ts +9 -3
- package/lib/generate/sql2sdl.d.ts.map +1 -1
- package/lib/generate/sql2sdl.js +56 -41
- package/lib/generate/sql2sdl.js.map +1 -1
- package/lib/shared/segment.d.ts +7 -0
- package/lib/shared/segment.d.ts.map +1 -1
- package/lib/shared/segment.js +54 -243
- package/lib/shared/segment.js.map +1 -1
- package/lib/shared/url-helpers.d.ts +4 -0
- package/lib/shared/url-helpers.d.ts.map +1 -1
- package/lib/shared/url-helpers.js +9 -0
- package/lib/shared/url-helpers.js.map +1 -1
- package/oclif.manifest.json +7 -69
- package/package.json +6 -6
package/lib/shared/segment.d.ts
CHANGED
|
@@ -1,8 +1,15 @@
|
|
|
1
|
+
import { Analytics } from '@segment/analytics-node';
|
|
2
|
+
export declare let analytics: Analytics | undefined;
|
|
1
3
|
export declare const PRODUCT_INFO: {
|
|
2
4
|
code: string;
|
|
3
5
|
codeType: string;
|
|
4
6
|
title: string;
|
|
5
7
|
};
|
|
8
|
+
export declare const trackEvent: ({ name, objectType, processType, }: {
|
|
9
|
+
name: string;
|
|
10
|
+
objectType?: string | undefined;
|
|
11
|
+
processType?: string | undefined;
|
|
12
|
+
}) => Promise<boolean>;
|
|
6
13
|
export declare const trackLoginEvent: () => Promise<boolean>;
|
|
7
14
|
export declare const trackDeployEvent: (endpoint: string) => Promise<boolean>;
|
|
8
15
|
export declare const trackInitCommand: (workspace: string) => Promise<boolean>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"segment.d.ts","sourceRoot":"","sources":["../../src/shared/segment.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"segment.d.ts","sourceRoot":"","sources":["../../src/shared/segment.ts"],"names":[],"mappings":"AAGA,OAAO,EAAC,SAAS,EAAC,MAAM,yBAAyB,CAAA;AASjD,eAAO,IAAI,SAAS,EAAE,SAAS,GAAG,SAAS,CAAA;AAqD3C,eAAO,MAAM,YAAY;;;;CAIxB,CAAA;AAED,eAAO,MAAM,UAAU;UAKf,MAAM;;;sBAkCb,CAAA;AAGD,eAAO,MAAM,eAAe,wBAAkD,CAAA;AAG9E,eAAO,MAAM,gBAAgB,aAAoB,MAAM,qBAInD,CAAA;AAGJ,eAAO,MAAM,gBAAgB,cAAqB,MAAM,qBAIpD,CAAA;AAGJ,eAAO,MAAM,kBAAkB,WAAkB,MAAM,qBAInD,CAAA;AAGJ,eAAO,MAAM,gBAAgB,wBAIzB,CAAA;AAGJ,eAAO,MAAM,mBAAmB,wBAI5B,CAAA;AAGJ,eAAO,MAAM,kBAAkB,wBAG3B,CAAA;AAGJ,eAAO,MAAM,mBAAmB,wBAI5B,CAAA;AAGJ,eAAO,MAAM,iBAAiB,wBAI1B,CAAA;AAGJ,eAAO,MAAM,kBAAkB,wBAI3B,CAAA"}
|
package/lib/shared/segment.js
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
// Copyright IBM Corp. 2020, 2024
|
|
2
|
+
import { Performance } from '@oclif/core';
|
|
2
3
|
import { Analytics } from '@segment/analytics-node';
|
|
3
4
|
import { readConfiguration } from './configuration.js';
|
|
4
5
|
import { SEGMENT_REALM_NAME, STEPZEN_SEGMENT_TEST_WRITE_KEY, STEPZEN_SEGMENT_WRITE_KEY, } from './constants.js';
|
|
5
|
-
let analytics;
|
|
6
|
+
export let analytics;
|
|
6
7
|
let UUID;
|
|
7
8
|
let accountId;
|
|
8
9
|
const prodHosts = new Set([
|
|
@@ -37,287 +38,97 @@ const getSegmentWriteKey = async () => {
|
|
|
37
38
|
}
|
|
38
39
|
};
|
|
39
40
|
const initializeAnalytics = async () => {
|
|
41
|
+
const marker = Performance.mark('stepzen', 'segment.initialize');
|
|
40
42
|
const isAnalyticsDisabled = process.env.STEPZEN_DISABLE_ANALYTICS !== undefined &&
|
|
41
43
|
process.env.STEPZEN_DISABLE_ANALYTICS.toLowerCase() !== 'false';
|
|
42
44
|
if (!isAnalyticsDisabled) {
|
|
43
45
|
const writeKey = await getSegmentWriteKey();
|
|
44
46
|
if (writeKey) {
|
|
45
47
|
analytics = new Analytics({ writeKey });
|
|
46
|
-
return analytics;
|
|
47
48
|
}
|
|
48
49
|
}
|
|
50
|
+
marker?.stop();
|
|
51
|
+
return analytics;
|
|
49
52
|
};
|
|
50
53
|
export const PRODUCT_INFO = {
|
|
51
54
|
code: 'WW1843',
|
|
52
55
|
codeType: 'WWPC',
|
|
53
56
|
title: 'StepZen',
|
|
54
57
|
};
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
if (!hasWritekey) {
|
|
58
|
+
export const trackEvent = async ({ name, objectType, processType, }) => {
|
|
59
|
+
await initializeAnalytics();
|
|
60
|
+
if (!analytics) {
|
|
59
61
|
// do not track if the cli using in on-prem
|
|
60
62
|
return false;
|
|
61
63
|
}
|
|
64
|
+
const marker = Performance.mark('stepzen', 'segment.track');
|
|
62
65
|
try {
|
|
63
|
-
const
|
|
66
|
+
const eventProperties = {
|
|
64
67
|
accountId,
|
|
65
68
|
productCode: PRODUCT_INFO.code,
|
|
66
69
|
productCodeType: PRODUCT_INFO.codeType,
|
|
67
70
|
productTitle: PRODUCT_INFO.title,
|
|
71
|
+
...(objectType === undefined ? {} : { objectType }),
|
|
72
|
+
...(processType === undefined ? {} : { processType }),
|
|
68
73
|
};
|
|
69
74
|
analytics.track({
|
|
70
75
|
userId: `${SEGMENT_REALM_NAME}${UUID}`,
|
|
71
|
-
event:
|
|
76
|
+
event: name,
|
|
72
77
|
timestamp: new Date().toISOString(),
|
|
73
|
-
properties:
|
|
78
|
+
properties: eventProperties,
|
|
74
79
|
});
|
|
80
|
+
marker?.stop();
|
|
75
81
|
return true;
|
|
76
82
|
}
|
|
77
83
|
catch {
|
|
84
|
+
marker?.stop();
|
|
78
85
|
return false;
|
|
79
86
|
}
|
|
80
87
|
};
|
|
88
|
+
// track stepzen login command
|
|
89
|
+
export const trackLoginEvent = async () => trackEvent({ name: 'Service Login' });
|
|
81
90
|
// track stepzen deploy command
|
|
82
|
-
export const trackDeployEvent = async (endpoint) => {
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
return false;
|
|
87
|
-
}
|
|
88
|
-
try {
|
|
89
|
-
const deployEventProperties = {
|
|
90
|
-
accountId,
|
|
91
|
-
objectType: `Deploy Endpoint - ${endpoint}`,
|
|
92
|
-
productCode: PRODUCT_INFO.code,
|
|
93
|
-
productCodeType: PRODUCT_INFO.codeType,
|
|
94
|
-
productTitle: PRODUCT_INFO.title,
|
|
95
|
-
};
|
|
96
|
-
analytics.track({
|
|
97
|
-
userId: `${SEGMENT_REALM_NAME}${UUID}`,
|
|
98
|
-
event: 'Created Object',
|
|
99
|
-
timestamp: new Date().toISOString(),
|
|
100
|
-
properties: deployEventProperties,
|
|
101
|
-
});
|
|
102
|
-
return true;
|
|
103
|
-
}
|
|
104
|
-
catch {
|
|
105
|
-
return false;
|
|
106
|
-
}
|
|
107
|
-
};
|
|
91
|
+
export const trackDeployEvent = async (endpoint) => trackEvent({
|
|
92
|
+
name: 'Created Object',
|
|
93
|
+
objectType: `Deploy Endpoint - ${endpoint}`,
|
|
94
|
+
});
|
|
108
95
|
// track stpezen init command
|
|
109
|
-
export const trackInitCommand = async (workspace) => {
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
return false;
|
|
114
|
-
}
|
|
115
|
-
try {
|
|
116
|
-
const initEventProperties = {
|
|
117
|
-
accountId,
|
|
118
|
-
objectType: `Initiate Workspace - ${workspace}`,
|
|
119
|
-
productCode: PRODUCT_INFO.code,
|
|
120
|
-
productCodeType: PRODUCT_INFO.codeType,
|
|
121
|
-
productTitle: PRODUCT_INFO.title,
|
|
122
|
-
};
|
|
123
|
-
analytics.track({
|
|
124
|
-
userId: `${SEGMENT_REALM_NAME}${UUID}`,
|
|
125
|
-
event: 'Created Object',
|
|
126
|
-
timestamp: new Date().toISOString(),
|
|
127
|
-
properties: initEventProperties,
|
|
128
|
-
});
|
|
129
|
-
return true;
|
|
130
|
-
}
|
|
131
|
-
catch {
|
|
132
|
-
return false;
|
|
133
|
-
}
|
|
134
|
-
};
|
|
96
|
+
export const trackInitCommand = async (workspace) => trackEvent({
|
|
97
|
+
name: 'Created Object',
|
|
98
|
+
objectType: `Initiate Workspace - ${workspace}`,
|
|
99
|
+
});
|
|
135
100
|
// Track stepzen import command
|
|
136
|
-
export const trackImportCommand = async (source) => {
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
return false;
|
|
141
|
-
}
|
|
142
|
-
try {
|
|
143
|
-
const importEventProperties = {
|
|
144
|
-
accountId,
|
|
145
|
-
objectType: `Imported ${source} data source in GraphQL Schema`,
|
|
146
|
-
productCode: PRODUCT_INFO.code,
|
|
147
|
-
productCodeType: PRODUCT_INFO.codeType,
|
|
148
|
-
productTitle: PRODUCT_INFO.title,
|
|
149
|
-
};
|
|
150
|
-
analytics.track({
|
|
151
|
-
userId: `${SEGMENT_REALM_NAME}${UUID}`,
|
|
152
|
-
event: 'Created Object',
|
|
153
|
-
timestamp: new Date().toISOString(),
|
|
154
|
-
properties: importEventProperties,
|
|
155
|
-
});
|
|
156
|
-
return true;
|
|
157
|
-
}
|
|
158
|
-
catch {
|
|
159
|
-
return false;
|
|
160
|
-
}
|
|
161
|
-
};
|
|
101
|
+
export const trackImportCommand = async (source) => trackEvent({
|
|
102
|
+
name: 'Created Object',
|
|
103
|
+
objectType: `Imported ${source} data source in GraphQL Schema`,
|
|
104
|
+
});
|
|
162
105
|
// Track stepzen list command
|
|
163
|
-
export const trackListCommand = async () => {
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
return false;
|
|
168
|
-
}
|
|
169
|
-
try {
|
|
170
|
-
const listEventProperties = {
|
|
171
|
-
accountId,
|
|
172
|
-
objectType: `Lists the assets`,
|
|
173
|
-
productCode: PRODUCT_INFO.code,
|
|
174
|
-
productCodeType: PRODUCT_INFO.codeType,
|
|
175
|
-
productTitle: PRODUCT_INFO.title,
|
|
176
|
-
};
|
|
177
|
-
analytics.track({
|
|
178
|
-
userId: `${SEGMENT_REALM_NAME}${UUID}`,
|
|
179
|
-
event: 'Read Object',
|
|
180
|
-
timestamp: new Date().toISOString(),
|
|
181
|
-
properties: listEventProperties,
|
|
182
|
-
});
|
|
183
|
-
return true;
|
|
184
|
-
}
|
|
185
|
-
catch {
|
|
186
|
-
return false;
|
|
187
|
-
}
|
|
188
|
-
};
|
|
106
|
+
export const trackListCommand = async () => trackEvent({
|
|
107
|
+
name: 'Read Object',
|
|
108
|
+
objectType: 'Lists the assets',
|
|
109
|
+
});
|
|
189
110
|
// Track stepzen request command
|
|
190
|
-
export const trackRequestCommand = async () => {
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
return false;
|
|
195
|
-
}
|
|
196
|
-
try {
|
|
197
|
-
const requestEventProperties = {
|
|
198
|
-
accountId,
|
|
199
|
-
objectType: 'Send a GraphQL request',
|
|
200
|
-
productCode: PRODUCT_INFO.code,
|
|
201
|
-
productCodeType: PRODUCT_INFO.codeType,
|
|
202
|
-
productTitle: PRODUCT_INFO.title,
|
|
203
|
-
};
|
|
204
|
-
analytics.track({
|
|
205
|
-
userId: `${SEGMENT_REALM_NAME}${UUID}`,
|
|
206
|
-
event: 'Read Object',
|
|
207
|
-
timestamp: new Date().toISOString(),
|
|
208
|
-
properties: requestEventProperties,
|
|
209
|
-
});
|
|
210
|
-
return true;
|
|
211
|
-
}
|
|
212
|
-
catch {
|
|
213
|
-
return false;
|
|
214
|
-
}
|
|
215
|
-
};
|
|
111
|
+
export const trackRequestCommand = async () => trackEvent({
|
|
112
|
+
name: 'Read Object',
|
|
113
|
+
objectType: 'Send a GraphQL request',
|
|
114
|
+
});
|
|
216
115
|
// Track stepzen logout command
|
|
217
|
-
export const trackLogoutCommand = async () => {
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
// do not track if the cli using in on-prem
|
|
221
|
-
return false;
|
|
222
|
-
}
|
|
223
|
-
try {
|
|
224
|
-
const logoutEventProperties = {
|
|
225
|
-
accountId,
|
|
226
|
-
productCode: PRODUCT_INFO.code,
|
|
227
|
-
productCodeType: PRODUCT_INFO.codeType,
|
|
228
|
-
productTitle: PRODUCT_INFO.title,
|
|
229
|
-
};
|
|
230
|
-
analytics.track({
|
|
231
|
-
userId: `${SEGMENT_REALM_NAME}${UUID}`,
|
|
232
|
-
event: 'Service Logout',
|
|
233
|
-
timestamp: new Date().toISOString(),
|
|
234
|
-
properties: logoutEventProperties,
|
|
235
|
-
});
|
|
236
|
-
return true;
|
|
237
|
-
}
|
|
238
|
-
catch {
|
|
239
|
-
return false;
|
|
240
|
-
}
|
|
241
|
-
};
|
|
116
|
+
export const trackLogoutCommand = async () => trackEvent({
|
|
117
|
+
name: 'Service Logout',
|
|
118
|
+
});
|
|
242
119
|
// Track stepzen service command
|
|
243
|
-
export const trackServiceCommand = async () => {
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
return false;
|
|
248
|
-
}
|
|
249
|
-
try {
|
|
250
|
-
const serviceEventProperties = {
|
|
251
|
-
accountId,
|
|
252
|
-
productCode: PRODUCT_INFO.code,
|
|
253
|
-
processType: 'Manage the local StepZen service instance',
|
|
254
|
-
productCodeType: PRODUCT_INFO.codeType,
|
|
255
|
-
productTitle: PRODUCT_INFO.title,
|
|
256
|
-
};
|
|
257
|
-
analytics.track({
|
|
258
|
-
userId: `${SEGMENT_REALM_NAME}${UUID}`,
|
|
259
|
-
event: 'Started Process',
|
|
260
|
-
timestamp: new Date().toISOString(),
|
|
261
|
-
properties: serviceEventProperties,
|
|
262
|
-
});
|
|
263
|
-
return true;
|
|
264
|
-
}
|
|
265
|
-
catch {
|
|
266
|
-
return false;
|
|
267
|
-
}
|
|
268
|
-
};
|
|
120
|
+
export const trackServiceCommand = async () => trackEvent({
|
|
121
|
+
name: 'Started Process',
|
|
122
|
+
processType: 'Manage the local StepZen service instance',
|
|
123
|
+
});
|
|
269
124
|
// Track stepzen start command
|
|
270
|
-
export const trackStartCommand = async () => {
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
productCode: PRODUCT_INFO.code,
|
|
280
|
-
processType: 'Deployed schema to StepZen',
|
|
281
|
-
productCodeType: PRODUCT_INFO.codeType,
|
|
282
|
-
productTitle: PRODUCT_INFO.title,
|
|
283
|
-
};
|
|
284
|
-
analytics.track({
|
|
285
|
-
userId: `${SEGMENT_REALM_NAME}${UUID}`,
|
|
286
|
-
event: 'Started Process',
|
|
287
|
-
timestamp: new Date().toISOString(),
|
|
288
|
-
properties: startEventProperties,
|
|
289
|
-
});
|
|
290
|
-
return true;
|
|
291
|
-
}
|
|
292
|
-
catch {
|
|
293
|
-
return false;
|
|
294
|
-
}
|
|
295
|
-
};
|
|
296
|
-
// Track stepzen start command
|
|
297
|
-
export const trackDeleteCommand = async () => {
|
|
298
|
-
const hasWritekey = await initializeAnalytics();
|
|
299
|
-
if (!hasWritekey) {
|
|
300
|
-
// do not track if the cli using in on-prem
|
|
301
|
-
return false;
|
|
302
|
-
}
|
|
303
|
-
try {
|
|
304
|
-
const deleteEventProperties = {
|
|
305
|
-
accountId,
|
|
306
|
-
productCode: PRODUCT_INFO.code,
|
|
307
|
-
objectType: 'Delete an endpoint',
|
|
308
|
-
productCodeType: PRODUCT_INFO.codeType,
|
|
309
|
-
productTitle: PRODUCT_INFO.title,
|
|
310
|
-
};
|
|
311
|
-
analytics.track({
|
|
312
|
-
userId: `${SEGMENT_REALM_NAME}${UUID}`,
|
|
313
|
-
event: 'Deleted Object',
|
|
314
|
-
timestamp: new Date().toISOString(),
|
|
315
|
-
properties: deleteEventProperties,
|
|
316
|
-
});
|
|
317
|
-
return true;
|
|
318
|
-
}
|
|
319
|
-
catch {
|
|
320
|
-
return false;
|
|
321
|
-
}
|
|
322
|
-
};
|
|
125
|
+
export const trackStartCommand = async () => trackEvent({
|
|
126
|
+
name: 'Started Process',
|
|
127
|
+
processType: 'Deployed schema to StepZen',
|
|
128
|
+
});
|
|
129
|
+
// Track stepzen delete command
|
|
130
|
+
export const trackDeleteCommand = async () => trackEvent({
|
|
131
|
+
name: 'Deleted Object',
|
|
132
|
+
objectType: 'Delete an endpoint',
|
|
133
|
+
});
|
|
323
134
|
//# sourceMappingURL=segment.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"segment.js","sourceRoot":"","sources":["../../src/shared/segment.ts"],"names":[],"mappings":"AAAA,iCAAiC;AAEjC,OAAO,EAAC,SAAS,EAAC,MAAM,yBAAyB,CAAA;AAEjD,OAAO,EAAC,iBAAiB,EAAC,MAAM,oBAAoB,CAAA;AACpD,OAAO,EACL,kBAAkB,EAClB,8BAA8B,EAC9B,yBAAyB,GAC1B,MAAM,gBAAgB,CAAA;AAEvB,IAAI,
|
|
1
|
+
{"version":3,"file":"segment.js","sourceRoot":"","sources":["../../src/shared/segment.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,6 +11,10 @@ export declare const parseHost: (host?: string) => {
|
|
|
11
11
|
port?: string | undefined;
|
|
12
12
|
isValid: boolean;
|
|
13
13
|
};
|
|
14
|
+
export declare const isValidJdbcUrl: (jdbcUrl: string) => {
|
|
15
|
+
status: boolean;
|
|
16
|
+
message?: string;
|
|
17
|
+
};
|
|
14
18
|
/**
|
|
15
19
|
*
|
|
16
20
|
* Returns whether the given URL or hostname refers to localhost (by name or loopback IP).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"url-helpers.d.ts","sourceRoot":"","sources":["../../src/shared/url-helpers.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"url-helpers.d.ts","sourceRoot":"","sources":["../../src/shared/url-helpers.ts"],"names":[],"mappings":"AAGA;;;;;;GAMG;AACH,eAAO,MAAM,qBAAqB,QAAS,MAAM,QAAQ,MAAM,KAAG,MAQjE,CAAA;AAED,eAAO,MAAM,SAAS,UACb,MAAM;;;aAC4B,OAAO;CA6BjD,CAAA;AAED,eAAO,MAAM,cAAc,YAChB,MAAM,KACd;IAAC,QAAQ,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CASpC,CAAA;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,aAAa,EAAE,MAAM,GAAG,GAAG,WAYtD;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAgBlD"}
|
|
@@ -44,6 +44,15 @@ export const parseHost = (host) => {
|
|
|
44
44
|
isValid: true,
|
|
45
45
|
};
|
|
46
46
|
};
|
|
47
|
+
export const isValidJdbcUrl = (jdbcUrl) => {
|
|
48
|
+
if (!jdbcUrl || !jdbcUrl.startsWith('jdbc:')) {
|
|
49
|
+
return {
|
|
50
|
+
status: false,
|
|
51
|
+
message: `The provided JDBC URL does not look valid (expected it to begin with jdbc:).`,
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
return { status: true };
|
|
55
|
+
};
|
|
47
56
|
/**
|
|
48
57
|
*
|
|
49
58
|
* Returns whether the given URL or hostname refers to localhost (by name or loopback IP).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"url-helpers.js","sourceRoot":"","sources":["../../src/shared/url-helpers.ts"],"names":[],"mappings":"AAAA,iCAAiC;AAEjC,OAAO,EAAC,QAAQ,EAAC,MAAM,oBAAoB,CAAA;
|
|
1
|
+
{"version":3,"file":"url-helpers.js","sourceRoot":"","sources":["../../src/shared/url-helpers.ts"],"names":[],"mappings":"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"}
|
package/oclif.manifest.json
CHANGED
|
@@ -1101,9 +1101,9 @@
|
|
|
1101
1101
|
"import:db2": {
|
|
1102
1102
|
"aliases": [],
|
|
1103
1103
|
"args": {
|
|
1104
|
-
"
|
|
1105
|
-
"description": "(optional)
|
|
1106
|
-
"name": "
|
|
1104
|
+
"jdbcUrl": {
|
|
1105
|
+
"description": "(optional) JDBC URL of a Db2 database.\nExample: 'jdbc:db2://host:port/db:user=username;password=password;schema=schema;sslConnection=true/false;'\n\nThe --db-schema flag overrides the schema part of the JDBC URL (if both are provided).",
|
|
1106
|
+
"name": "jdbcUrl"
|
|
1107
1107
|
}
|
|
1108
1108
|
},
|
|
1109
1109
|
"description": "Import a schema for a Db2 data source into your GraphQL API.\n\nstepzen import db2 automatically introspects a Db2 database, generates a GraphQL schema for accessing this database through a StepZen API, and merges the generated types, queries and mutations into your GraphQL schema.",
|
|
@@ -1152,34 +1152,6 @@
|
|
|
1152
1152
|
"allowNo": false,
|
|
1153
1153
|
"type": "boolean"
|
|
1154
1154
|
},
|
|
1155
|
-
"db-host": {
|
|
1156
|
-
"description": "Database host and optional port (as HOST[:PORT])",
|
|
1157
|
-
"name": "db-host",
|
|
1158
|
-
"hasDynamicHelp": false,
|
|
1159
|
-
"multiple": false,
|
|
1160
|
-
"type": "option"
|
|
1161
|
-
},
|
|
1162
|
-
"db-user": {
|
|
1163
|
-
"description": "Database user name",
|
|
1164
|
-
"name": "db-user",
|
|
1165
|
-
"hasDynamicHelp": false,
|
|
1166
|
-
"multiple": false,
|
|
1167
|
-
"type": "option"
|
|
1168
|
-
},
|
|
1169
|
-
"db-password": {
|
|
1170
|
-
"description": "Database password",
|
|
1171
|
-
"name": "db-password",
|
|
1172
|
-
"hasDynamicHelp": false,
|
|
1173
|
-
"multiple": false,
|
|
1174
|
-
"type": "option"
|
|
1175
|
-
},
|
|
1176
|
-
"db-database": {
|
|
1177
|
-
"description": "Name of database to import",
|
|
1178
|
-
"name": "db-database",
|
|
1179
|
-
"hasDynamicHelp": false,
|
|
1180
|
-
"multiple": false,
|
|
1181
|
-
"type": "option"
|
|
1182
|
-
},
|
|
1183
1155
|
"db-schema": {
|
|
1184
1156
|
"description": "Database schema to import tables from (default: public)",
|
|
1185
1157
|
"name": "db-schema",
|
|
@@ -1210,12 +1182,6 @@
|
|
|
1210
1182
|
"name": "db-use-deprecated-2022-naming",
|
|
1211
1183
|
"allowNo": false,
|
|
1212
1184
|
"type": "boolean"
|
|
1213
|
-
},
|
|
1214
|
-
"ssl-connection": {
|
|
1215
|
-
"description": "Is SSL enabled?",
|
|
1216
|
-
"name": "ssl-connection",
|
|
1217
|
-
"allowNo": false,
|
|
1218
|
-
"type": "boolean"
|
|
1219
1185
|
}
|
|
1220
1186
|
},
|
|
1221
1187
|
"hasDynamicHelp": false,
|
|
@@ -1660,9 +1626,9 @@
|
|
|
1660
1626
|
"import:oracle": {
|
|
1661
1627
|
"aliases": [],
|
|
1662
1628
|
"args": {
|
|
1663
|
-
"
|
|
1664
|
-
"description": "(optional)
|
|
1665
|
-
"name": "
|
|
1629
|
+
"jdbcUrl": {
|
|
1630
|
+
"description": "(optional) JDBC URL of an Oracle database.\nExample: 'jdbc:oracle:thin:user/password@//host:port/db?currentschema=schema'\n\nThe --db-schema flag overrides the schema part of the JDBC URL (if both are provided).",
|
|
1631
|
+
"name": "jdbcUrl"
|
|
1666
1632
|
}
|
|
1667
1633
|
},
|
|
1668
1634
|
"description": "Import a schema for a oracle data source into your GraphQL API.\n\nstepzen import oracle automatically introspects an Oracle database, generates a GraphQL schema for accessing this database through a StepZen API, and merges the generated types, queries and mutations into your GraphQL schema.",
|
|
@@ -1711,34 +1677,6 @@
|
|
|
1711
1677
|
"allowNo": false,
|
|
1712
1678
|
"type": "boolean"
|
|
1713
1679
|
},
|
|
1714
|
-
"db-host": {
|
|
1715
|
-
"description": "Database host and optional port (as HOST[:PORT])",
|
|
1716
|
-
"name": "db-host",
|
|
1717
|
-
"hasDynamicHelp": false,
|
|
1718
|
-
"multiple": false,
|
|
1719
|
-
"type": "option"
|
|
1720
|
-
},
|
|
1721
|
-
"db-user": {
|
|
1722
|
-
"description": "Database user name",
|
|
1723
|
-
"name": "db-user",
|
|
1724
|
-
"hasDynamicHelp": false,
|
|
1725
|
-
"multiple": false,
|
|
1726
|
-
"type": "option"
|
|
1727
|
-
},
|
|
1728
|
-
"db-password": {
|
|
1729
|
-
"description": "Database password",
|
|
1730
|
-
"name": "db-password",
|
|
1731
|
-
"hasDynamicHelp": false,
|
|
1732
|
-
"multiple": false,
|
|
1733
|
-
"type": "option"
|
|
1734
|
-
},
|
|
1735
|
-
"db-database": {
|
|
1736
|
-
"description": "Name of database to import",
|
|
1737
|
-
"name": "db-database",
|
|
1738
|
-
"hasDynamicHelp": false,
|
|
1739
|
-
"multiple": false,
|
|
1740
|
-
"type": "option"
|
|
1741
|
-
},
|
|
1742
1680
|
"db-schema": {
|
|
1743
1681
|
"description": "Database schema to import tables from (default: public)",
|
|
1744
1682
|
"name": "db-schema",
|
|
@@ -2182,5 +2120,5 @@
|
|
|
2182
2120
|
]
|
|
2183
2121
|
}
|
|
2184
2122
|
},
|
|
2185
|
-
"version": "0.45.0-beta.
|
|
2123
|
+
"version": "0.45.0-beta.4"
|
|
2186
2124
|
}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "stepzen",
|
|
3
3
|
"description": "The StepZen CLI",
|
|
4
|
-
"version": "0.45.0-beta.
|
|
4
|
+
"version": "0.45.0-beta.4",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "Darren Waddell <darren@stepzen.com>",
|
|
7
7
|
"contributors": [
|
|
@@ -31,10 +31,10 @@
|
|
|
31
31
|
"@oclif/plugin-version": "^2.2.16",
|
|
32
32
|
"@segment/analytics-node": "^2.2.0",
|
|
33
33
|
"@soluble/dsn-parser": "^1.7.5",
|
|
34
|
-
"@stepzen/fetch": "0.45.0-beta.
|
|
35
|
-
"@stepzen/graphiql-proxy": "0.45.0-beta.
|
|
36
|
-
"@stepzen/sdk": "0.45.0-beta.
|
|
37
|
-
"@stepzen/transpiler": "0.45.0-beta.
|
|
34
|
+
"@stepzen/fetch": "0.45.0-beta.4",
|
|
35
|
+
"@stepzen/graphiql-proxy": "0.45.0-beta.4",
|
|
36
|
+
"@stepzen/sdk": "0.45.0-beta.4",
|
|
37
|
+
"@stepzen/transpiler": "0.45.0-beta.4",
|
|
38
38
|
"chalk": "^4.1.2",
|
|
39
39
|
"chokidar": "^3.5.3",
|
|
40
40
|
"compare-versions": "^5.0.3",
|
|
@@ -153,5 +153,5 @@
|
|
|
153
153
|
"micromatch": "^4.0.8",
|
|
154
154
|
"cross-spawn": "^7.0.6"
|
|
155
155
|
},
|
|
156
|
-
"gitHead": "
|
|
156
|
+
"gitHead": "fb688a215511194c4d73e904a1ef2edbe226ffe7"
|
|
157
157
|
}
|