@learncard/create-http-bridge 1.1.89 → 1.1.91

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 (3) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/dist/index.js +169 -133
  3. package/package.json +2 -2
package/CHANGELOG.md CHANGED
@@ -1,5 +1,19 @@
1
1
  # @learncard/create-http-bridge
2
2
 
3
+ ## 1.1.91
4
+
5
+ ### Patch Changes
6
+
7
+ - Updated dependencies []:
8
+ - @learncard/init@1.2.28
9
+
10
+ ## 1.1.90
11
+
12
+ ### Patch Changes
13
+
14
+ - Updated dependencies []:
15
+ - @learncard/init@1.2.27
16
+
3
17
  ## 1.1.89
4
18
 
5
19
  ### Patch Changes
package/dist/index.js CHANGED
@@ -66,15 +66,21 @@ var __objRest$2 = (source, exclude) => {
66
66
  const FullScreenBox = React__default["default"].forwardRef(function FullScreenBox2(_a, ref) {
67
67
  var _b = _a, { children } = _b, props = __objRest$2(_b, ["children"]);
68
68
  const [width, height] = useStdOutDimensions__default["default"]();
69
- return (
70
- // eslint-disable-next-line react/jsx-props-no-spreading
71
- /* @__PURE__ */ React__default["default"].createElement(ink.Box, __spreadProps$2(__spreadValues$3({ width: Math.min(width, 150), height: Math.min(height - 1, 50) }, props), { ref }), children)
72
- );
69
+ return /* @__PURE__ */ React__default["default"].createElement(ink.Box, __spreadProps$2(__spreadValues$3({
70
+ width: Math.min(width, 150),
71
+ height: Math.min(height - 1, 50)
72
+ }, props), {
73
+ ref
74
+ }), children);
73
75
  });
74
76
 
75
77
  const banner = figlet__default["default"].textSync("Learn Card", "Big Money-ne");
76
78
  const Banner = () => {
77
- return /* @__PURE__ */ React__default["default"].createElement(ink.Box, { marginBottom: 4 }, /* @__PURE__ */ React__default["default"].createElement(Gradient__default["default"], { colors: ["cyan", "green"] }, /* @__PURE__ */ React__default["default"].createElement(ink.Text, null, banner)));
79
+ return /* @__PURE__ */ React__default["default"].createElement(ink.Box, {
80
+ marginBottom: 4
81
+ }, /* @__PURE__ */ React__default["default"].createElement(Gradient__default["default"], {
82
+ colors: ["cyan", "green"]
83
+ }, /* @__PURE__ */ React__default["default"].createElement(ink.Text, null, banner)));
78
84
  };
79
85
 
80
86
  var __defProp$2 = Object.defineProperty;
@@ -198,10 +204,18 @@ var __objRest$1 = (source, exclude) => {
198
204
  const Input = React__default["default"].forwardRef(function Input2(_a, ref) {
199
205
  var _b = _a, { disabled = false, autoFocus = false, focusId, prompt, value, onChange, onSubmit } = _b, props = __objRest$1(_b, ["disabled", "autoFocus", "focusId", "prompt", "value", "onChange", "onSubmit"]);
200
206
  const { isFocused } = ink.useFocus({ autoFocus, id: focusId, isActive: !disabled });
201
- return (
202
- // eslint-disable-next-line react/jsx-props-no-spreading
203
- /* @__PURE__ */ React__default["default"].createElement(ink.Box, __spreadValues$1({ ref }, props), /* @__PURE__ */ React__default["default"].createElement(ink.Box, { marginRight: 1 }, /* @__PURE__ */ React__default["default"].createElement(ink.Text, { color: "blueBright" }, prompt)), /* @__PURE__ */ React__default["default"].createElement(TextInput__default["default"], { value, onChange, focus: isFocused, onSubmit }))
204
- );
207
+ return /* @__PURE__ */ React__default["default"].createElement(ink.Box, __spreadValues$1({
208
+ ref
209
+ }, props), /* @__PURE__ */ React__default["default"].createElement(ink.Box, {
210
+ marginRight: 1
211
+ }, /* @__PURE__ */ React__default["default"].createElement(ink.Text, {
212
+ color: "blueBright"
213
+ }, prompt)), /* @__PURE__ */ React__default["default"].createElement(TextInput__default["default"], {
214
+ value,
215
+ onChange,
216
+ focus: isFocused,
217
+ onSubmit
218
+ }));
205
219
  });
206
220
 
207
221
  var __defProp = Object.defineProperty;
@@ -249,29 +263,24 @@ const RawButton = React__default["default"].forwardRef(function RawButton2(_a, r
249
263
  onClick();
250
264
  }
251
265
  });
252
- return (
253
- // eslint-disable-next-line react/jsx-props-no-spreading
254
- /* @__PURE__ */ React__default["default"].createElement(ink.Box, __spreadValues(__spreadProps(__spreadValues({}, props), { ref }), isFocused ? focusedProps : {}), children)
255
- );
266
+ return /* @__PURE__ */ React__default["default"].createElement(ink.Box, __spreadValues(__spreadProps(__spreadValues({}, props), {
267
+ ref
268
+ }), isFocused ? focusedProps : {}), children);
256
269
  });
257
270
  const Button = React__default["default"].forwardRef(function Button2(_c, ref) {
258
271
  var _d = _c, { children } = _d, props = __objRest(_d, ["children"]);
259
- return /* @__PURE__ */ React__default["default"].createElement(
260
- RawButton,
261
- __spreadProps(__spreadValues({
262
- height: 3,
263
- width: 15,
264
- borderStyle: "round",
265
- justifyContent: "center",
266
- alignItems: "center",
267
- focusedProps: {
268
- borderColor: "cyan"
269
- }
270
- }, props), {
271
- ref
272
- }),
273
- /* @__PURE__ */ React__default["default"].createElement(ink.Text, null, children)
274
- );
272
+ return /* @__PURE__ */ React__default["default"].createElement(RawButton, __spreadProps(__spreadValues({
273
+ height: 3,
274
+ width: 15,
275
+ borderStyle: "round",
276
+ justifyContent: "center",
277
+ alignItems: "center",
278
+ focusedProps: {
279
+ borderColor: "cyan"
280
+ }
281
+ }, props), {
282
+ ref
283
+ }), /* @__PURE__ */ React__default["default"].createElement(ink.Text, null, children));
275
284
  });
276
285
 
277
286
  const generateRandomSeed = () => crypto__default["default"].randomBytes(32).toString("hex");
@@ -279,50 +288,61 @@ const generateRandomSeed = () => crypto__default["default"].randomBytes(32).toSt
279
288
  const Form = ({ state, setState, onSubmit, onCancel }) => {
280
289
  const { focus } = ink.useFocusManager();
281
290
  const updateSlice = curriedStateSlice(setState);
282
- return /* @__PURE__ */ React__default["default"].createElement(
283
- ink.Box,
284
- {
285
- flexGrow: 1,
286
- flexDirection: "column",
287
- padding: 2,
288
- borderStyle: "round",
289
- borderColor: "yellow"
291
+ return /* @__PURE__ */ React__default["default"].createElement(ink.Box, {
292
+ flexGrow: 1,
293
+ flexDirection: "column",
294
+ padding: 2,
295
+ borderStyle: "round",
296
+ borderColor: "yellow"
297
+ }, /* @__PURE__ */ React__default["default"].createElement(ink.Box, {
298
+ flexGrow: 1,
299
+ flexDirection: "column",
300
+ alignItems: "center"
301
+ }, /* @__PURE__ */ React__default["default"].createElement(ink.Box, {
302
+ marginBottom: 2,
303
+ padding: 1,
304
+ flexDirection: "column",
305
+ borderStyle: "round"
306
+ }, /* @__PURE__ */ React__default["default"].createElement(Input, {
307
+ disabled: true,
308
+ focusId: "name",
309
+ prompt: "Name:",
310
+ value: state.name,
311
+ onChange: updateSlice("name"),
312
+ onSubmit: () => focus("editName")
313
+ }), /* @__PURE__ */ React__default["default"].createElement(Input, {
314
+ marginTop: 1,
315
+ disabled: true,
316
+ focusId: "seed",
317
+ prompt: "Seed:",
318
+ value: state.seed,
319
+ onChange: updateSlice("seed"),
320
+ onSubmit: () => focus("editSeed")
321
+ })), /* @__PURE__ */ React__default["default"].createElement(Button, {
322
+ autoFocus: true,
323
+ focusId: "editName",
324
+ onClick: () => focus("name"),
325
+ width: 25
326
+ }, "Edit Name"), /* @__PURE__ */ React__default["default"].createElement(Button, {
327
+ onClick: () => updateSlice("seed", generateRandomSeed()),
328
+ width: 25
329
+ }, "Generate Random Seed"), /* @__PURE__ */ React__default["default"].createElement(Button, {
330
+ focusId: "editSeed",
331
+ onClick: () => {
332
+ updateSlice("seed", "");
333
+ focus("seed");
290
334
  },
291
- /* @__PURE__ */ React__default["default"].createElement(ink.Box, { flexGrow: 1, flexDirection: "column", alignItems: "center" }, /* @__PURE__ */ React__default["default"].createElement(ink.Box, { marginBottom: 2, padding: 1, flexDirection: "column", borderStyle: "round" }, /* @__PURE__ */ React__default["default"].createElement(
292
- Input,
293
- {
294
- disabled: true,
295
- focusId: "name",
296
- prompt: "Name:",
297
- value: state.name,
298
- onChange: updateSlice("name"),
299
- onSubmit: () => focus("editName")
300
- }
301
- ), /* @__PURE__ */ React__default["default"].createElement(
302
- Input,
303
- {
304
- marginTop: 1,
305
- disabled: true,
306
- focusId: "seed",
307
- prompt: "Seed:",
308
- value: state.seed,
309
- onChange: updateSlice("seed"),
310
- onSubmit: () => focus("editSeed")
311
- }
312
- )), /* @__PURE__ */ React__default["default"].createElement(Button, { autoFocus: true, focusId: "editName", onClick: () => focus("name"), width: 25 }, "Edit Name"), /* @__PURE__ */ React__default["default"].createElement(Button, { onClick: () => updateSlice("seed", generateRandomSeed()), width: 25 }, "Generate Random Seed"), /* @__PURE__ */ React__default["default"].createElement(
313
- Button,
314
- {
315
- focusId: "editSeed",
316
- onClick: () => {
317
- updateSlice("seed", "");
318
- focus("seed");
319
- },
320
- width: 25
321
- },
322
- "Enter Custom Seed"
323
- )),
324
- /* @__PURE__ */ React__default["default"].createElement(ink.Box, { height: 5, width: "100%", padding: 2, justifyContent: "space-between" }, /* @__PURE__ */ React__default["default"].createElement(Button, { onClick: onSubmit }, "Ok"), /* @__PURE__ */ React__default["default"].createElement(Button, { onClick: onCancel }, "Cancel"))
325
- );
335
+ width: 25
336
+ }, "Enter Custom Seed")), /* @__PURE__ */ React__default["default"].createElement(ink.Box, {
337
+ height: 5,
338
+ width: "100%",
339
+ padding: 2,
340
+ justifyContent: "space-between"
341
+ }, /* @__PURE__ */ React__default["default"].createElement(Button, {
342
+ onClick: onSubmit
343
+ }, "Ok"), /* @__PURE__ */ React__default["default"].createElement(Button, {
344
+ onClick: onCancel
345
+ }, "Cancel")));
326
346
  };
327
347
 
328
348
  const git = simpleGit__default["default"]();
@@ -334,21 +354,23 @@ const Cloning = ({ path, onFinished }) => {
334
354
  console.error(error);
335
355
  });
336
356
  }, []);
337
- return /* @__PURE__ */ React__default["default"].createElement(
338
- ink.Box,
339
- {
340
- flexGrow: 1,
341
- flexDirection: "column",
342
- justifyContent: "center",
343
- alignItems: "center",
344
- padding: 2,
345
- borderStyle: "round",
346
- borderColor: "yellow"
347
- },
348
- /* @__PURE__ */ React__default["default"].createElement(Gradient__default["default"], { name: "rainbow" }, /* @__PURE__ */ React__default["default"].createElement(ink.Text, null, /* @__PURE__ */ React__default["default"].createElement(Spinner__default["default"], { type: "material" }))),
349
- /* @__PURE__ */ React__default["default"].createElement(ink.Text, null, "Cloning into ", path, "..."),
350
- /* @__PURE__ */ React__default["default"].createElement(Gradient__default["default"], { name: "rainbow" }, /* @__PURE__ */ React__default["default"].createElement(ink.Text, null, /* @__PURE__ */ React__default["default"].createElement(Spinner__default["default"], { type: "material" })))
351
- );
357
+ return /* @__PURE__ */ React__default["default"].createElement(ink.Box, {
358
+ flexGrow: 1,
359
+ flexDirection: "column",
360
+ justifyContent: "center",
361
+ alignItems: "center",
362
+ padding: 2,
363
+ borderStyle: "round",
364
+ borderColor: "yellow"
365
+ }, /* @__PURE__ */ React__default["default"].createElement(Gradient__default["default"], {
366
+ name: "rainbow"
367
+ }, /* @__PURE__ */ React__default["default"].createElement(ink.Text, null, /* @__PURE__ */ React__default["default"].createElement(Spinner__default["default"], {
368
+ type: "material"
369
+ }))), /* @__PURE__ */ React__default["default"].createElement(ink.Text, null, "Cloning into ", path, "..."), /* @__PURE__ */ React__default["default"].createElement(Gradient__default["default"], {
370
+ name: "rainbow"
371
+ }, /* @__PURE__ */ React__default["default"].createElement(ink.Text, null, /* @__PURE__ */ React__default["default"].createElement(Spinner__default["default"], {
372
+ type: "material"
373
+ }))));
352
374
  };
353
375
 
354
376
  const Info = ({ path }) => {
@@ -361,28 +383,38 @@ const Info = ({ path }) => {
361
383
  };
362
384
  checkForBinaries();
363
385
  }, []);
364
- return /* @__PURE__ */ React__default["default"].createElement(
365
- ink.Box,
366
- {
367
- flexGrow: 1,
368
- flexDirection: "column",
369
- justifyContent: "center",
370
- alignItems: "center",
371
- padding: 2,
372
- borderStyle: "round",
373
- borderColor: "yellow"
374
- },
375
- /* @__PURE__ */ React__default["default"].createElement(ink.Text, null, "Success!"),
376
- /* @__PURE__ */ React__default["default"].createElement(ink.Text, null, "Your new Learn Card HTTP Bridge is ready to deploy!"),
377
- aws ? /* @__PURE__ */ React__default["default"].createElement(ink.Text, null, "To deploy, run the following commands:") : /* @__PURE__ */ React__default["default"].createElement(React__default["default"].Fragment, null, /* @__PURE__ */ React__default["default"].createElement(ink.Text, null, "It looks like you might not have serverless/AWS set up yet!"), /* @__PURE__ */ React__default["default"].createElement(ink.Text, null, "Please review the instructions at https://www.serverless.com/framework/docs/tutorial if you have any issues deploying the Learn Card HTTP Bridge!"), /* @__PURE__ */ React__default["default"].createElement(ink.Text, null, "After you're all set up, run the following commands to deploy the Learn Card HTTP Bridge!")),
378
- /* @__PURE__ */ React__default["default"].createElement(ink.Box, { borderStyle: "round", flexDirection: "column" }, !pnpm && /* @__PURE__ */ React__default["default"].createElement(ink.Text, null, /* @__PURE__ */ React__default["default"].createElement(ink.Text, { color: "green" }, "$ "), /* @__PURE__ */ React__default["default"].createElement(SyntaxHighlight__default["default"], { code: "npm i -g pnpm # must use pnpm!", language: "bash" })), /* @__PURE__ */ React__default["default"].createElement(ink.Text, null, /* @__PURE__ */ React__default["default"].createElement(ink.Text, { color: "green" }, "$ "), /* @__PURE__ */ React__default["default"].createElement(
379
- SyntaxHighlight__default["default"],
380
- {
381
- code: `cd ${path}/packages/learn-card-bridge-http`,
382
- language: "bash"
383
- }
384
- )), /* @__PURE__ */ React__default["default"].createElement(ink.Text, null, /* @__PURE__ */ React__default["default"].createElement(ink.Text, { color: "green" }, "$ "), /* @__PURE__ */ React__default["default"].createElement(SyntaxHighlight__default["default"], { code: "pnpm i", language: "bash" })), /* @__PURE__ */ React__default["default"].createElement(ink.Text, null, /* @__PURE__ */ React__default["default"].createElement(ink.Text, { color: "green" }, "$ "), /* @__PURE__ */ React__default["default"].createElement(SyntaxHighlight__default["default"], { code: "pnpm serverless-deploy", language: "bash" })))
385
- );
386
+ return /* @__PURE__ */ React__default["default"].createElement(ink.Box, {
387
+ flexGrow: 1,
388
+ flexDirection: "column",
389
+ justifyContent: "center",
390
+ alignItems: "center",
391
+ padding: 2,
392
+ borderStyle: "round",
393
+ borderColor: "yellow"
394
+ }, /* @__PURE__ */ React__default["default"].createElement(ink.Text, null, "Success!"), /* @__PURE__ */ React__default["default"].createElement(ink.Text, null, "Your new Learn Card HTTP Bridge is ready to deploy!"), aws ? /* @__PURE__ */ React__default["default"].createElement(ink.Text, null, "To deploy, run the following commands:") : /* @__PURE__ */ React__default["default"].createElement(React__default["default"].Fragment, null, /* @__PURE__ */ React__default["default"].createElement(ink.Text, null, "It looks like you might not have serverless/AWS set up yet!"), /* @__PURE__ */ React__default["default"].createElement(ink.Text, null, "Please review the instructions at https://www.serverless.com/framework/docs/tutorial if you have any issues deploying the Learn Card HTTP Bridge!"), /* @__PURE__ */ React__default["default"].createElement(ink.Text, null, "After you're all set up, run the following commands to deploy the Learn Card HTTP Bridge!")), /* @__PURE__ */ React__default["default"].createElement(ink.Box, {
395
+ borderStyle: "round",
396
+ flexDirection: "column"
397
+ }, !pnpm && /* @__PURE__ */ React__default["default"].createElement(ink.Text, null, /* @__PURE__ */ React__default["default"].createElement(ink.Text, {
398
+ color: "green"
399
+ }, "$ "), /* @__PURE__ */ React__default["default"].createElement(SyntaxHighlight__default["default"], {
400
+ code: "npm i -g pnpm # must use pnpm!",
401
+ language: "bash"
402
+ })), /* @__PURE__ */ React__default["default"].createElement(ink.Text, null, /* @__PURE__ */ React__default["default"].createElement(ink.Text, {
403
+ color: "green"
404
+ }, "$ "), /* @__PURE__ */ React__default["default"].createElement(SyntaxHighlight__default["default"], {
405
+ code: `cd ${path}/packages/learn-card-bridge-http`,
406
+ language: "bash"
407
+ })), /* @__PURE__ */ React__default["default"].createElement(ink.Text, null, /* @__PURE__ */ React__default["default"].createElement(ink.Text, {
408
+ color: "green"
409
+ }, "$ "), /* @__PURE__ */ React__default["default"].createElement(SyntaxHighlight__default["default"], {
410
+ code: "pnpm i",
411
+ language: "bash"
412
+ })), /* @__PURE__ */ React__default["default"].createElement(ink.Text, null, /* @__PURE__ */ React__default["default"].createElement(ink.Text, {
413
+ color: "green"
414
+ }, "$ "), /* @__PURE__ */ React__default["default"].createElement(SyntaxHighlight__default["default"], {
415
+ code: "pnpm serverless-deploy",
416
+ language: "bash"
417
+ }))));
386
418
  };
387
419
 
388
420
  const randomSeed = generateRandomSeed();
@@ -401,33 +433,35 @@ const App = ({ name = "LearnCardHTTPBridge" }) => {
401
433
  setStep("info");
402
434
  };
403
435
  const COMPONENTS = {
404
- form: /* @__PURE__ */ React__default["default"].createElement(
405
- Form,
406
- {
407
- state,
408
- setState,
409
- onSubmit: () => setStep("cloning"),
410
- onCancel: () => app.exit()
411
- }
412
- ),
413
- cloning: /* @__PURE__ */ React__default["default"].createElement(Cloning, { path: state.name, onFinished: postClone }),
414
- info: /* @__PURE__ */ React__default["default"].createElement(Info, { path: state.name })
436
+ form: /* @__PURE__ */ React__default["default"].createElement(Form, {
437
+ state,
438
+ setState,
439
+ onSubmit: () => setStep("cloning"),
440
+ onCancel: () => app.exit()
441
+ }),
442
+ cloning: /* @__PURE__ */ React__default["default"].createElement(Cloning, {
443
+ path: state.name,
444
+ onFinished: postClone
445
+ }),
446
+ info: /* @__PURE__ */ React__default["default"].createElement(Info, {
447
+ path: state.name
448
+ })
415
449
  };
416
- return /* @__PURE__ */ React__default["default"].createElement(
417
- FullScreenBox,
418
- {
419
- flexDirection: "column",
420
- justifyContent: "center",
421
- alignItems: "center",
422
- borderStyle: "double",
423
- borderColor: "green"
424
- },
425
- /* @__PURE__ */ React__default["default"].createElement(ink.Box, { flexDirection: "column", padding: 2, height: "100%" }, /* @__PURE__ */ React__default["default"].createElement(Banner, null), COMPONENTS[step])
426
- );
450
+ return /* @__PURE__ */ React__default["default"].createElement(FullScreenBox, {
451
+ flexDirection: "column",
452
+ justifyContent: "center",
453
+ alignItems: "center",
454
+ borderStyle: "double",
455
+ borderColor: "green"
456
+ }, /* @__PURE__ */ React__default["default"].createElement(ink.Box, {
457
+ flexDirection: "column",
458
+ padding: 2,
459
+ height: "100%"
460
+ }, /* @__PURE__ */ React__default["default"].createElement(Banner, null), COMPONENTS[step]));
427
461
  };
428
462
 
429
463
  var name = "@learncard/create-http-bridge";
430
- var version = "1.1.89";
464
+ var version = "1.1.91";
431
465
  var description = "Instantly create and deploy a Learn Card Bridge HTTP API via AWS Lambda!";
432
466
  var main = "dist/index.js";
433
467
  var bin = "dist/index.js";
@@ -495,5 +529,7 @@ var packageJson = {
495
529
 
496
530
  commander.program.version(packageJson.version).argument("[name]").action(async (name) => {
497
531
  console.clear();
498
- ink.render(/* @__PURE__ */ React__default["default"].createElement(App, { name }));
532
+ ink.render(/* @__PURE__ */ React__default["default"].createElement(App, {
533
+ name
534
+ }));
499
535
  }).parse(process.argv);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@learncard/create-http-bridge",
3
- "version": "1.1.89",
3
+ "version": "1.1.91",
4
4
  "description": "Instantly create and deploy a Learn Card Bridge HTTP API via AWS Lambda!",
5
5
  "main": "dist/index.js",
6
6
  "bin": "dist/index.js",
@@ -30,7 +30,7 @@
30
30
  "simple-git": "^3.9.0",
31
31
  "use-immer": "^0.7.0",
32
32
  "zod": "^3.20.2",
33
- "@learncard/init": "1.2.26",
33
+ "@learncard/init": "1.2.28",
34
34
  "@learncard/types": "5.5.1"
35
35
  },
36
36
  "devDependencies": {