@stacksjs/ts-cloud 0.1.8 → 0.1.9

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 (75) hide show
  1. package/dist/bin/cli.js +1 -1
  2. package/package.json +18 -16
  3. package/src/aws/acm.ts +768 -0
  4. package/src/aws/application-autoscaling.ts +845 -0
  5. package/src/aws/bedrock.ts +4074 -0
  6. package/src/aws/client.ts +891 -0
  7. package/src/aws/cloudformation.ts +896 -0
  8. package/src/aws/cloudfront.ts +1531 -0
  9. package/src/aws/cloudwatch-logs.ts +154 -0
  10. package/src/aws/comprehend.ts +839 -0
  11. package/src/aws/connect.ts +1056 -0
  12. package/src/aws/deploy-imap.ts +384 -0
  13. package/src/aws/dynamodb.ts +340 -0
  14. package/src/aws/ec2.ts +1385 -0
  15. package/src/aws/ecr.ts +621 -0
  16. package/src/aws/ecs.ts +615 -0
  17. package/src/aws/elasticache.ts +301 -0
  18. package/src/aws/elbv2.ts +942 -0
  19. package/src/aws/email.ts +928 -0
  20. package/src/aws/eventbridge.ts +248 -0
  21. package/src/aws/iam.ts +1689 -0
  22. package/src/aws/imap-server.ts +2100 -0
  23. package/src/aws/index.ts +213 -0
  24. package/src/aws/kendra.ts +1097 -0
  25. package/src/aws/lambda.ts +786 -0
  26. package/src/aws/opensearch.ts +158 -0
  27. package/src/aws/personalize.ts +977 -0
  28. package/src/aws/polly.ts +559 -0
  29. package/src/aws/rds.ts +888 -0
  30. package/src/aws/rekognition.ts +846 -0
  31. package/src/aws/route53-domains.ts +359 -0
  32. package/src/aws/route53.ts +1046 -0
  33. package/src/aws/s3.ts +2334 -0
  34. package/src/aws/scheduler.ts +571 -0
  35. package/src/aws/secrets-manager.ts +769 -0
  36. package/src/aws/ses.ts +1081 -0
  37. package/src/aws/setup-phone.ts +104 -0
  38. package/src/aws/setup-sms.ts +580 -0
  39. package/src/aws/sms.ts +1735 -0
  40. package/src/aws/smtp-server.ts +531 -0
  41. package/src/aws/sns.ts +758 -0
  42. package/src/aws/sqs.ts +382 -0
  43. package/src/aws/ssm.ts +807 -0
  44. package/src/aws/sts.ts +92 -0
  45. package/src/aws/support.ts +391 -0
  46. package/src/aws/test-imap.ts +86 -0
  47. package/src/aws/textract.ts +780 -0
  48. package/src/aws/transcribe.ts +108 -0
  49. package/src/aws/translate.ts +641 -0
  50. package/src/aws/voice.ts +1379 -0
  51. package/src/config.ts +35 -0
  52. package/src/deploy/index.ts +7 -0
  53. package/src/deploy/static-site-external-dns.ts +945 -0
  54. package/src/deploy/static-site.ts +1175 -0
  55. package/src/dns/cloudflare.ts +548 -0
  56. package/src/dns/godaddy.ts +412 -0
  57. package/src/dns/index.ts +205 -0
  58. package/src/dns/porkbun.ts +362 -0
  59. package/src/dns/route53-adapter.ts +414 -0
  60. package/src/dns/types.ts +119 -0
  61. package/src/dns/validator.ts +369 -0
  62. package/src/generators/index.ts +5 -0
  63. package/src/generators/infrastructure.ts +1660 -0
  64. package/src/index.ts +163 -0
  65. package/src/push/apns.ts +452 -0
  66. package/src/push/fcm.ts +506 -0
  67. package/src/push/index.ts +58 -0
  68. package/src/security/pre-deploy-scanner.ts +655 -0
  69. package/src/ssl/acme-client.ts +478 -0
  70. package/src/ssl/index.ts +7 -0
  71. package/src/ssl/letsencrypt.ts +747 -0
  72. package/src/types.ts +2 -0
  73. package/src/utils/cli.ts +398 -0
  74. package/src/validation/index.ts +5 -0
  75. package/src/validation/template.ts +405 -0
package/dist/bin/cli.js CHANGED
@@ -345,7 +345,7 @@ ${H.body}`:H.body}).join(`
345
345
  `).length-1;this.output.write(Y0.move(-999,$*-1))}render(){let $=O5(this._render(this)??"",Z5.stdout.columns,{hard:!0,trim:!1});if($===this._prevFrame)return;if(this.state==="initial")this.output.write(Y0.hide);else{let J=GY(this._prevFrame,$);if(this.restoreCursor(),J&&J?.length===1){let Y=J[0];this.output.write(Y0.move(0,Y)),this.output.write(p1.lines(1));let Q=$.split(`
346
346
  `);this.output.write(Q[Y]),this._prevFrame=$,this.output.write(Y0.move(0,Q.length-Y-1));return}if(J&&J?.length>1){let Y=J[0];this.output.write(Y0.move(0,Y)),this.output.write(p1.down());let W=$.split(`
347
347
  `).slice(Y);this.output.write(W.join(`
348
- `)),this._prevFrame=$;return}this.output.write(p1.down())}if(this.output.write($),this.state==="initial")this.state="active";this._prevFrame=$}}function IY($,J){if($===void 0)return 0;if(J.length===0)return 0;let Q=J.findIndex((W)=>W.value===$);return Q!==-1?Q:0}function xY($,J){return(J.label??String(J.value)).toLowerCase().includes($.toLowerCase())}function hY($,J){if(!J)return;if($)return J;return J[0]}class bY extends JJ{filteredOptions;multiple;isNavigating=!1;selectedValues=[];focusedValue;#$=0;#Y="";#Q;#J;get cursor(){return this.#$}get userInputWithCursor(){if(!this.userInput)return r1.default.inverse(r1.default.hidden("_"));if(this._cursor>=this.userInput.length)return`${this.userInput}█`;let $=this.userInput.slice(0,this._cursor),[J,...Y]=this.userInput.slice(this._cursor);return`${$}${r1.default.inverse(J)}${Y.join("")}`}get options(){if(typeof this.#J==="function")return this.#J();return this.#J}constructor($){super($);this.#J=$.options;let J=this.options;this.filteredOptions=[...J],this.multiple=$.multiple===!0,this.#Q=$.filter??xY;let Y;if($.initialValue&&Array.isArray($.initialValue))if(this.multiple)Y=$.initialValue;else Y=$.initialValue.slice(0,1);else if(!this.multiple&&this.options.length>0)Y=[this.options[0].value];if(Y)for(let Q of Y){let W=J.findIndex((U)=>U.value===Q);if(W!==-1)this.toggleSelected(Q),this.#$=W}this.focusedValue=this.options[this.#$]?.value,this.on("key",(Q,W)=>this.#W(Q,W)),this.on("userInput",(Q)=>this.#U(Q))}_isActionKey($,J){return $==="\t"||this.multiple&&this.isNavigating&&J.name==="space"&&$!==void 0&&$!==""}#W($,J){let Y=J.name==="up",Q=J.name==="down",W=J.name==="return";if(Y||Q){if(this.#$=Math.max(0,Math.min(this.#$+(Y?-1:1),this.filteredOptions.length-1)),this.focusedValue=this.filteredOptions[this.#$]?.value,!this.multiple)this.selectedValues=[this.focusedValue];this.isNavigating=!0}else if(W)this.value=hY(this.multiple,this.selectedValues);else if(this.multiple)if(this.focusedValue!==void 0&&(J.name==="tab"||this.isNavigating&&J.name==="space"))this.toggleSelected(this.focusedValue);else this.isNavigating=!1;else{if(this.focusedValue)this.selectedValues=[this.focusedValue];this.isNavigating=!1}}deselectAll(){this.selectedValues=[]}toggleSelected($){if(this.filteredOptions.length===0)return;if(this.multiple)if(this.selectedValues.includes($))this.selectedValues=this.selectedValues.filter((J)=>J!==$);else this.selectedValues=[...this.selectedValues,$];else this.selectedValues=[$]}#U($){if($!==this.#Y){this.#Y=$;let J=this.options;if($)this.filteredOptions=J.filter((Y)=>this.#Q($,Y));else this.filteredOptions=[...J];if(this.#$=IY(this.focusedValue,this.filteredOptions),this.focusedValue=this.filteredOptions[this.#$]?.value,!this.multiple)if(this.focusedValue!==void 0)this.toggleSelected(this.focusedValue);else this.deselectAll()}}}class yY extends JJ{options;cursor=0;#$;getGroupItems($){return this.options.filter((J)=>J.group===$)}isGroupSelected($){let J=this.getGroupItems($),Y=this.value;if(Y===void 0)return!1;return J.every((Q)=>Y.includes(Q.value))}toggleValue(){let $=this.options[this.cursor];if(this.value===void 0)this.value=[];if($.group===!0){let J=$.value,Y=this.getGroupItems(J);if(this.isGroupSelected(J))this.value=this.value.filter((Q)=>Y.findIndex((W)=>W.value===Q)===-1);else this.value=[...this.value,...Y.map((Q)=>Q.value)];this.value=Array.from(new Set(this.value))}else{let J=this.value.includes($.value);this.value=J?this.value.filter((Y)=>Y!==$.value):[...this.value,$.value]}}constructor($){super($,!1);let{options:J}=$;this.#$=$.selectableGroups!==!1,this.options=Object.entries(J).flatMap(([Y,Q])=>[{value:Y,group:!0,label:Y},...Q.map((W)=>({...W,group:Y}))]),this.value=[...$.initialValues??[]],this.cursor=Math.max(this.options.findIndex(({value:Y})=>Y===$.cursorAt),this.#$?0:1),this.on("cursor",(Y)=>{switch(Y){case"left":case"up":{this.cursor=this.cursor===0?this.options.length-1:this.cursor-1;let Q=this.options[this.cursor]?.group===!0;if(!this.#$&&Q)this.cursor=this.cursor===0?this.options.length-1:this.cursor-1;break}case"down":case"right":{this.cursor=this.cursor===this.options.length-1?0:this.cursor+1;let Q=this.options[this.cursor]?.group===!0;if(!this.#$&&Q)this.cursor=this.cursor===this.options.length-1?0:this.cursor+1;break}case"space":this.toggleValue();break}})}}var OU=B$(_$(),1);var XU=B$(_$(),1);var jU=B$(_$(),1),K0={red:["\x1B[31m","\x1B[39m"],green:["\x1B[32m","\x1B[39m"],blue:["\x1B[34m","\x1B[39m"],yellow:["\x1B[33m","\x1B[39m"],cyan:["\x1B[36m","\x1B[39m"],magenta:["\x1B[35m","\x1B[39m"],white:["\x1B[37m","\x1B[39m"],gray:["\x1B[90m","\x1B[39m"],bgRed:["\x1B[41m","\x1B[49m"],bgGreen:["\x1B[42m","\x1B[49m"],bgBlue:["\x1B[44m","\x1B[49m"],bgYellow:["\x1B[43m","\x1B[49m"],bgCyan:["\x1B[46m","\x1B[49m"],bgMagenta:["\x1B[45m","\x1B[49m"],bold:["\x1B[1m","\x1B[22m"],italic:["\x1B[3m","\x1B[23m"],underline:["\x1B[4m","\x1B[24m"],dim:["\x1B[2m","\x1B[22m"],inverse:["\x1B[7m","\x1B[27m"],hidden:["\x1B[8m","\x1B[28m"],strikethrough:["\x1B[9m","\x1B[29m"]},m0={primary:"blue",secondary:"cyan",success:"green",warning:"yellow",error:"red",info:"magenta",muted:"gray"};function vY(){return!0}function fY(){let $={};$.supportsColor=vY();function J(Q,W=[]){let U=Q===""?[]:[...W,Q],Z=function(H){if(!$.supportsColor)return H;let K="",B="";for(let O of U)if(O in m0&&m0[O]in K0){let X=m0[O];K+=K0[X][0],B=K0[X][1]+B}else if(O in K0)K+=K0[O][0],B=K0[O][1]+B;return K+H+B},z=[...Object.keys(K0),...Object.keys(m0)];for(let H of z)if(!(H in Z))Object.defineProperty(Z,H,{get(){return J(H,U)}});return Z}let Y=[...Object.keys(K0),...Object.keys(m0)];for(let Q of Y)if(!(Q in $))Object.defineProperty($,Q,{get(){return J(Q)}});return $}var qU=fY();var gY=JY();var G$=($,J)=>gY?$:J,VU=G$("◆","*"),MU=G$("■","x"),EU=G$("▲","x"),_U=G$("◇","o"),FU=G$("┌","T"),uY=G$("│","|"),wU=G$("└","—"),TU=G$("●",">"),LU=G$("○"," "),AU=G$("◻","[•]"),RU=G$("◼","[+]"),SU=G$("◻","[ ]"),DU=G$("▪","•"),PU=G$("─","-"),CU=G$("╮","+"),NU=G$("├","+"),kU=G$("╯","+"),IU=G$("●","•"),xU=G$("◆","*"),hU=G$("▲","!"),bU=G$("■","x");var yU=B$(_$(),1);var vU=B$(_$(),1);var fU=B$(_$(),1);var gU=B$(_$(),1);var uU=B$(_$(),1);var dU=B$(_$(),1);var mU=B$(_$(),1);var cU=B$(_$(),1);var lU=B$(_$(),1),pU=B$(_$(),1);var rU={light:G$("─","-"),heavy:G$("━","="),block:G$("█","#")};var aU=B$(_$(),1);var nU=B$(_$(),1);var dY=B$(_$(),1);function mY(){return`${dY.default.gray(uY)} `}var sU=mY();var iU=B$(_$(),1);var tU=B$(_$(),1);var YJ="0.1.8";import{existsSync as KJ}from"node:fs";import{mkdir as CQ,writeFile as c5}from"node:fs/promises";var s={reset:"\x1B[0m",bright:"\x1B[1m",dim:"\x1B[2m",red:"\x1B[31m",green:"\x1B[32m",yellow:"\x1B[33m",blue:"\x1B[34m",magenta:"\x1B[35m",cyan:"\x1B[36m",white:"\x1B[37m",gray:"\x1B[90m"};function A0($,J){return`${s[J]}${$}${s.reset}`}function A($){console.log(`${s.green}✓${s.reset} ${$}`)}function _($){console.error(`${s.red}✗${s.reset} ${$}`)}function N($){console.warn(`${s.yellow}⚠${s.reset} ${$}`)}var i$=N;function G($){console.log(`${s.blue}ℹ${s.reset} ${$}`)}function r($){console.log(`${s.cyan}→${s.reset} ${$}`)}function V($){console.log(`
348
+ `)),this._prevFrame=$;return}this.output.write(p1.down())}if(this.output.write($),this.state==="initial")this.state="active";this._prevFrame=$}}function IY($,J){if($===void 0)return 0;if(J.length===0)return 0;let Q=J.findIndex((W)=>W.value===$);return Q!==-1?Q:0}function xY($,J){return(J.label??String(J.value)).toLowerCase().includes($.toLowerCase())}function hY($,J){if(!J)return;if($)return J;return J[0]}class bY extends JJ{filteredOptions;multiple;isNavigating=!1;selectedValues=[];focusedValue;#$=0;#Y="";#Q;#J;get cursor(){return this.#$}get userInputWithCursor(){if(!this.userInput)return r1.default.inverse(r1.default.hidden("_"));if(this._cursor>=this.userInput.length)return`${this.userInput}█`;let $=this.userInput.slice(0,this._cursor),[J,...Y]=this.userInput.slice(this._cursor);return`${$}${r1.default.inverse(J)}${Y.join("")}`}get options(){if(typeof this.#J==="function")return this.#J();return this.#J}constructor($){super($);this.#J=$.options;let J=this.options;this.filteredOptions=[...J],this.multiple=$.multiple===!0,this.#Q=$.filter??xY;let Y;if($.initialValue&&Array.isArray($.initialValue))if(this.multiple)Y=$.initialValue;else Y=$.initialValue.slice(0,1);else if(!this.multiple&&this.options.length>0)Y=[this.options[0].value];if(Y)for(let Q of Y){let W=J.findIndex((U)=>U.value===Q);if(W!==-1)this.toggleSelected(Q),this.#$=W}this.focusedValue=this.options[this.#$]?.value,this.on("key",(Q,W)=>this.#W(Q,W)),this.on("userInput",(Q)=>this.#U(Q))}_isActionKey($,J){return $==="\t"||this.multiple&&this.isNavigating&&J.name==="space"&&$!==void 0&&$!==""}#W($,J){let Y=J.name==="up",Q=J.name==="down",W=J.name==="return";if(Y||Q){if(this.#$=Math.max(0,Math.min(this.#$+(Y?-1:1),this.filteredOptions.length-1)),this.focusedValue=this.filteredOptions[this.#$]?.value,!this.multiple)this.selectedValues=[this.focusedValue];this.isNavigating=!0}else if(W)this.value=hY(this.multiple,this.selectedValues);else if(this.multiple)if(this.focusedValue!==void 0&&(J.name==="tab"||this.isNavigating&&J.name==="space"))this.toggleSelected(this.focusedValue);else this.isNavigating=!1;else{if(this.focusedValue)this.selectedValues=[this.focusedValue];this.isNavigating=!1}}deselectAll(){this.selectedValues=[]}toggleSelected($){if(this.filteredOptions.length===0)return;if(this.multiple)if(this.selectedValues.includes($))this.selectedValues=this.selectedValues.filter((J)=>J!==$);else this.selectedValues=[...this.selectedValues,$];else this.selectedValues=[$]}#U($){if($!==this.#Y){this.#Y=$;let J=this.options;if($)this.filteredOptions=J.filter((Y)=>this.#Q($,Y));else this.filteredOptions=[...J];if(this.#$=IY(this.focusedValue,this.filteredOptions),this.focusedValue=this.filteredOptions[this.#$]?.value,!this.multiple)if(this.focusedValue!==void 0)this.toggleSelected(this.focusedValue);else this.deselectAll()}}}class yY extends JJ{options;cursor=0;#$;getGroupItems($){return this.options.filter((J)=>J.group===$)}isGroupSelected($){let J=this.getGroupItems($),Y=this.value;if(Y===void 0)return!1;return J.every((Q)=>Y.includes(Q.value))}toggleValue(){let $=this.options[this.cursor];if(this.value===void 0)this.value=[];if($.group===!0){let J=$.value,Y=this.getGroupItems(J);if(this.isGroupSelected(J))this.value=this.value.filter((Q)=>Y.findIndex((W)=>W.value===Q)===-1);else this.value=[...this.value,...Y.map((Q)=>Q.value)];this.value=Array.from(new Set(this.value))}else{let J=this.value.includes($.value);this.value=J?this.value.filter((Y)=>Y!==$.value):[...this.value,$.value]}}constructor($){super($,!1);let{options:J}=$;this.#$=$.selectableGroups!==!1,this.options=Object.entries(J).flatMap(([Y,Q])=>[{value:Y,group:!0,label:Y},...Q.map((W)=>({...W,group:Y}))]),this.value=[...$.initialValues??[]],this.cursor=Math.max(this.options.findIndex(({value:Y})=>Y===$.cursorAt),this.#$?0:1),this.on("cursor",(Y)=>{switch(Y){case"left":case"up":{this.cursor=this.cursor===0?this.options.length-1:this.cursor-1;let Q=this.options[this.cursor]?.group===!0;if(!this.#$&&Q)this.cursor=this.cursor===0?this.options.length-1:this.cursor-1;break}case"down":case"right":{this.cursor=this.cursor===this.options.length-1?0:this.cursor+1;let Q=this.options[this.cursor]?.group===!0;if(!this.#$&&Q)this.cursor=this.cursor===this.options.length-1?0:this.cursor+1;break}case"space":this.toggleValue();break}})}}var OU=B$(_$(),1);var XU=B$(_$(),1);var jU=B$(_$(),1),K0={red:["\x1B[31m","\x1B[39m"],green:["\x1B[32m","\x1B[39m"],blue:["\x1B[34m","\x1B[39m"],yellow:["\x1B[33m","\x1B[39m"],cyan:["\x1B[36m","\x1B[39m"],magenta:["\x1B[35m","\x1B[39m"],white:["\x1B[37m","\x1B[39m"],gray:["\x1B[90m","\x1B[39m"],bgRed:["\x1B[41m","\x1B[49m"],bgGreen:["\x1B[42m","\x1B[49m"],bgBlue:["\x1B[44m","\x1B[49m"],bgYellow:["\x1B[43m","\x1B[49m"],bgCyan:["\x1B[46m","\x1B[49m"],bgMagenta:["\x1B[45m","\x1B[49m"],bold:["\x1B[1m","\x1B[22m"],italic:["\x1B[3m","\x1B[23m"],underline:["\x1B[4m","\x1B[24m"],dim:["\x1B[2m","\x1B[22m"],inverse:["\x1B[7m","\x1B[27m"],hidden:["\x1B[8m","\x1B[28m"],strikethrough:["\x1B[9m","\x1B[29m"]},m0={primary:"blue",secondary:"cyan",success:"green",warning:"yellow",error:"red",info:"magenta",muted:"gray"};function vY(){return!0}function fY(){let $={};$.supportsColor=vY();function J(Q,W=[]){let U=Q===""?[]:[...W,Q],Z=function(H){if(!$.supportsColor)return H;let K="",B="";for(let O of U)if(O in m0&&m0[O]in K0){let X=m0[O];K+=K0[X][0],B=K0[X][1]+B}else if(O in K0)K+=K0[O][0],B=K0[O][1]+B;return K+H+B},z=[...Object.keys(K0),...Object.keys(m0)];for(let H of z)if(!(H in Z))Object.defineProperty(Z,H,{get(){return J(H,U)}});return Z}let Y=[...Object.keys(K0),...Object.keys(m0)];for(let Q of Y)if(!(Q in $))Object.defineProperty($,Q,{get(){return J(Q)}});return $}var qU=fY();var gY=JY();var G$=($,J)=>gY?$:J,VU=G$("◆","*"),MU=G$("■","x"),EU=G$("▲","x"),_U=G$("◇","o"),FU=G$("┌","T"),uY=G$("│","|"),wU=G$("└","—"),TU=G$("●",">"),LU=G$("○"," "),AU=G$("◻","[•]"),RU=G$("◼","[+]"),SU=G$("◻","[ ]"),DU=G$("▪","•"),PU=G$("─","-"),CU=G$("╮","+"),NU=G$("├","+"),kU=G$("╯","+"),IU=G$("●","•"),xU=G$("◆","*"),hU=G$("▲","!"),bU=G$("■","x");var yU=B$(_$(),1);var vU=B$(_$(),1);var fU=B$(_$(),1);var gU=B$(_$(),1);var uU=B$(_$(),1);var dU=B$(_$(),1);var mU=B$(_$(),1);var cU=B$(_$(),1);var lU=B$(_$(),1),pU=B$(_$(),1);var rU={light:G$("─","-"),heavy:G$("━","="),block:G$("█","#")};var aU=B$(_$(),1);var nU=B$(_$(),1);var dY=B$(_$(),1);function mY(){return`${dY.default.gray(uY)} `}var sU=mY();var iU=B$(_$(),1);var tU=B$(_$(),1);var YJ="0.1.9";import{existsSync as KJ}from"node:fs";import{mkdir as CQ,writeFile as c5}from"node:fs/promises";var s={reset:"\x1B[0m",bright:"\x1B[1m",dim:"\x1B[2m",red:"\x1B[31m",green:"\x1B[32m",yellow:"\x1B[33m",blue:"\x1B[34m",magenta:"\x1B[35m",cyan:"\x1B[36m",white:"\x1B[37m",gray:"\x1B[90m"};function A0($,J){return`${s[J]}${$}${s.reset}`}function A($){console.log(`${s.green}✓${s.reset} ${$}`)}function _($){console.error(`${s.red}✗${s.reset} ${$}`)}function N($){console.warn(`${s.yellow}⚠${s.reset} ${$}`)}var i$=N;function G($){console.log(`${s.blue}ℹ${s.reset} ${$}`)}function r($){console.log(`${s.cyan}→${s.reset} ${$}`)}function V($){console.log(`
349
349
  ${s.bright}${s.cyan}${$}${s.reset}
350
350
  `)}class M{frames=["⠋","⠙","⠹","⠸","⠼","⠴","⠦","⠧","⠇","⠏"];interval=null;currentFrame=0;message;constructor($){this.message=$}get text(){return this.message}set text($){this.message=$}start(){this.interval=setInterval(()=>{process.stdout.write(`\r${s.cyan}${this.frames[this.currentFrame]}${s.reset} ${this.message}`),this.currentFrame=(this.currentFrame+1)%this.frames.length},80)}succeed($){this.stop(),A($||this.message)}fail($){this.stop(),_($||this.message)}warn($){this.stop(),i$($||this.message)}stop(){if(this.interval)clearInterval(this.interval),process.stdout.write("\r")}}async function U$($,J){let Q=(await import("node:readline")).createInterface({input:process.stdin,output:process.stdout});return new Promise((W)=>{let U=J?`${s.cyan}?${s.reset} ${$} ${s.gray}(${J})${s.reset}: `:`${s.cyan}?${s.reset} ${$}: `;Q.question(U,(Z)=>{Q.close(),W(Z||J||"")})})}async function P($,J=!1){let Y=await U$(`${$} (y/n)`,J?"y":"n");return Y.toLowerCase()==="y"||Y.toLowerCase()==="yes"}async function HJ($,J){console.log(`${s.cyan}?${s.reset} ${$}`),J.forEach((W,U)=>{console.log(` ${s.gray}${U+1}.${s.reset} ${W}`)});let Y=await U$("Select","1"),Q=Number.parseInt(Y)-1;if(Q>=0&&Q<J.length)return J[Q];return J[0]}function b($,J){let Y=$.map((W,U)=>{let Z=Math.max(...J.map((z)=>(z[U]||"").length));return Math.max(W.length,Z)}),Q=$.map((W,U)=>W.padEnd(Y[U])).join(" ");console.log(A0(Q,"bright")),console.log(A0("─".repeat(Q.length),"gray")),J.forEach((W)=>{let U=W.map((Z,z)=>(Z||"").padEnd(Y[z])).join(" ");console.log(U)})}function C0($,J="cyan"){let Y=$.split(`
351
351
  `),Q=Math.max(...Y.map((U)=>U.length)),W="─".repeat(Q+2);console.log(A0(`┌${W}┐`,J)),Y.forEach((U)=>{console.log(A0(`│ ${U.padEnd(Q)} │`,J))}),console.log(A0(`└${W}┘`,J))}async function g5(){return!0}async function u5(){try{let{AWSClient:$}=await Promise.resolve().then(() => (W$(),L0));return await new $().request({service:"sts",region:"us-east-1",method:"POST",path:"/",body:new URLSearchParams({Action:"GetCallerIdentity",Version:"2011-06-15"}).toString()}),!0}catch{return!1}}async function d5(){try{let{AWSClient:$}=await Promise.resolve().then(() => (W$(),L0)),Y=await new $().request({service:"sts",region:"us-east-1",method:"POST",path:"/",body:new URLSearchParams({Action:"GetCallerIdentity",Version:"2011-06-15"}).toString()});return Y.Account||Y.GetCallerIdentityResult?.Account||null}catch{return null}}async function m5(){try{let{AWSClient:$}=await Promise.resolve().then(() => (W$(),L0)),Y=await new $().request({service:"ec2",region:"us-east-1",method:"POST",path:"/",body:new URLSearchParams({Action:"DescribeRegions",Version:"2016-11-15"}).toString()}),Q=[];if(Y.regionInfo){let W=Array.isArray(Y.regionInfo)?Y.regionInfo:[Y.regionInfo];Q.push(...W.map((U)=>U.regionName))}return Q.length>0?Q:f5()}catch{return f5()}}function f5(){return["us-east-1","us-east-2","us-west-1","us-west-2","eu-west-1","eu-central-1","ap-southeast-1","ap-northeast-1"]}function BJ($){$.command("init","Initialize a new ts-cloud project").option("--mode <mode>","Deployment mode: server, serverless, or hybrid").option("--name <name>","Project name").option("--region <region>","AWS Region").action(async(J)=>{if(V("Initializing ts-cloud Project"),KJ("cloud.config.ts")){if(!await P("cloud.config.ts already exists. Overwrite?",!1)){G("Initialization cancelled");return}}let Y=J?.name||await U$("Project name","my-app"),Q=J?.mode||await HJ("Select deployment mode",["serverless","server","hybrid"]),W=J?.region||await HJ("Select AWS region",["us-east-1","us-west-2","eu-west-1","eu-central-1","ap-southeast-1"]),U=new M("Creating configuration file...");U.start();let Z=`import { defineConfig } from '@stacksjs/ts-cloud-types'
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@stacksjs/ts-cloud",
3
3
  "type": "module",
4
- "version": "0.1.8",
4
+ "version": "0.1.9",
5
5
  "description": "A lightweight, performant infrastructure-as-code library and CLI for deploying both server-based (EC2) and serverless applications.",
6
6
  "author": "Chris Breuer <chris@stacksjs.com>",
7
7
  "license": "MIT",
@@ -28,36 +28,38 @@
28
28
  "exports": {
29
29
  ".": {
30
30
  "types": "./dist/index.d.ts",
31
- "import": "./src/index.ts"
31
+ "import": "./dist/index.js"
32
32
  },
33
33
  "./aws": {
34
- "types": "./src/aws/index.ts",
35
- "import": "./src/aws/index.ts"
34
+ "types": "./dist/aws/index.d.ts",
35
+ "import": "./dist/aws/index.js"
36
36
  },
37
37
  "./deploy": {
38
- "types": "./src/deploy/index.ts",
39
- "import": "./src/deploy/index.ts"
38
+ "types": "./dist/deploy/index.d.ts",
39
+ "import": "./dist/deploy/index.js"
40
40
  },
41
41
  "./dns": {
42
- "types": "./src/dns/index.ts",
43
- "import": "./src/dns/index.ts"
42
+ "types": "./dist/dns/index.d.ts",
43
+ "import": "./dist/dns/index.js"
44
44
  },
45
45
  "./push": {
46
- "types": "./src/push/index.ts",
47
- "import": "./src/push/index.ts"
46
+ "types": "./dist/push/index.d.ts",
47
+ "import": "./dist/push/index.js"
48
48
  },
49
49
  "./*": {
50
- "import": "./src/*"
50
+ "types": "./dist/*.d.ts",
51
+ "import": "./dist/*"
51
52
  }
52
53
  },
53
- "module": "./src/index.ts",
54
+ "module": "./dist/index.js",
54
55
  "types": "./dist/index.d.ts",
55
56
  "bin": {
56
57
  "cloud": "./dist/bin/cli.js"
57
58
  },
58
59
  "files": [
59
60
  "README.md",
60
- "dist"
61
+ "dist",
62
+ "src"
61
63
  ],
62
64
  "scripts": {
63
65
  "build": "bun --bun build.ts && bun run compile",
@@ -84,9 +86,9 @@
84
86
  "test": "bun test"
85
87
  },
86
88
  "dependencies": {
87
- "@stacksjs/ts-cloud-aws-types": "0.1.8",
88
- "@stacksjs/ts-cloud-core": "0.1.8",
89
- "@stacksjs/ts-cloud-types": "0.1.8",
89
+ "@stacksjs/ts-cloud-aws-types": "0.1.9",
90
+ "@stacksjs/ts-cloud-core": "0.1.9",
91
+ "@stacksjs/ts-cloud-types": "0.1.9",
90
92
  "fast-xml-parser": "^5.3.5"
91
93
  },
92
94
  "devDependencies": {