@iterable/cli 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/COMMANDS.md +1574 -0
- package/LICENSE.md +21 -0
- package/README.md +194 -0
- package/dist/commands/campaigns.d.ts +3 -0
- package/dist/commands/campaigns.d.ts.map +1 -0
- package/dist/commands/campaigns.js +106 -0
- package/dist/commands/campaigns.js.map +1 -0
- package/dist/commands/catalogs.d.ts +3 -0
- package/dist/commands/catalogs.d.ts.map +1 -0
- package/dist/commands/catalogs.js +99 -0
- package/dist/commands/catalogs.js.map +1 -0
- package/dist/commands/events.d.ts +3 -0
- package/dist/commands/events.d.ts.map +1 -0
- package/dist/commands/events.js +33 -0
- package/dist/commands/events.js.map +1 -0
- package/dist/commands/experiments.d.ts +3 -0
- package/dist/commands/experiments.d.ts.map +1 -0
- package/dist/commands/experiments.js +33 -0
- package/dist/commands/experiments.js.map +1 -0
- package/dist/commands/export.d.ts +3 -0
- package/dist/commands/export.d.ts.map +1 -0
- package/dist/commands/export.js +33 -0
- package/dist/commands/export.js.map +1 -0
- package/dist/commands/journeys.d.ts +3 -0
- package/dist/commands/journeys.d.ts.map +1 -0
- package/dist/commands/journeys.js +21 -0
- package/dist/commands/journeys.js.map +1 -0
- package/dist/commands/lists.d.ts +3 -0
- package/dist/commands/lists.d.ts.map +1 -0
- package/dist/commands/lists.js +64 -0
- package/dist/commands/lists.js.map +1 -0
- package/dist/commands/messaging.d.ts +3 -0
- package/dist/commands/messaging.d.ts.map +1 -0
- package/dist/commands/messaging.js +120 -0
- package/dist/commands/messaging.js.map +1 -0
- package/dist/commands/registry.d.ts +46 -0
- package/dist/commands/registry.d.ts.map +1 -0
- package/dist/commands/registry.js +42 -0
- package/dist/commands/registry.js.map +1 -0
- package/dist/commands/snippets.d.ts +3 -0
- package/dist/commands/snippets.d.ts.map +1 -0
- package/dist/commands/snippets.js +42 -0
- package/dist/commands/snippets.js.map +1 -0
- package/dist/commands/subscriptions.d.ts +3 -0
- package/dist/commands/subscriptions.d.ts.map +1 -0
- package/dist/commands/subscriptions.js +40 -0
- package/dist/commands/subscriptions.js.map +1 -0
- package/dist/commands/templates.d.ts +3 -0
- package/dist/commands/templates.d.ts.map +1 -0
- package/dist/commands/templates.js +160 -0
- package/dist/commands/templates.js.map +1 -0
- package/dist/commands/transforms.d.ts +3 -0
- package/dist/commands/transforms.d.ts.map +1 -0
- package/dist/commands/transforms.js +24 -0
- package/dist/commands/transforms.js.map +1 -0
- package/dist/commands/types.d.ts +40 -0
- package/dist/commands/types.d.ts.map +1 -0
- package/dist/commands/types.js +15 -0
- package/dist/commands/types.js.map +1 -0
- package/dist/commands/users.d.ts +3 -0
- package/dist/commands/users.d.ts.map +1 -0
- package/dist/commands/users.js +103 -0
- package/dist/commands/users.js.map +1 -0
- package/dist/commands/webhooks.d.ts +3 -0
- package/dist/commands/webhooks.d.ts.map +1 -0
- package/dist/commands/webhooks.js +21 -0
- package/dist/commands/webhooks.js.map +1 -0
- package/dist/config.d.ts +14 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +60 -0
- package/dist/config.js.map +1 -0
- package/dist/errors.d.ts +11 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/errors.js +21 -0
- package/dist/errors.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +107 -0
- package/dist/index.js.map +1 -0
- package/dist/key-manager.d.ts +280 -0
- package/dist/key-manager.d.ts.map +1 -0
- package/dist/key-manager.js +989 -0
- package/dist/key-manager.js.map +1 -0
- package/dist/keys-cli.d.ts +3 -0
- package/dist/keys-cli.d.ts.map +1 -0
- package/dist/keys-cli.js +396 -0
- package/dist/keys-cli.js.map +1 -0
- package/dist/output.d.ts +5 -0
- package/dist/output.d.ts.map +1 -0
- package/dist/output.js +104 -0
- package/dist/output.js.map +1 -0
- package/dist/parser.d.ts +26 -0
- package/dist/parser.d.ts.map +1 -0
- package/dist/parser.js +281 -0
- package/dist/parser.js.map +1 -0
- package/dist/router.d.ts +20 -0
- package/dist/router.d.ts.map +1 -0
- package/dist/router.js +137 -0
- package/dist/router.js.map +1 -0
- package/dist/utils/cli-env.d.ts +10 -0
- package/dist/utils/cli-env.d.ts.map +1 -0
- package/dist/utils/cli-env.js +21 -0
- package/dist/utils/cli-env.js.map +1 -0
- package/dist/utils/command-info.d.ts +7 -0
- package/dist/utils/command-info.d.ts.map +1 -0
- package/dist/utils/command-info.js +36 -0
- package/dist/utils/command-info.js.map +1 -0
- package/dist/utils/detect-background.d.ts +3 -0
- package/dist/utils/detect-background.d.ts.map +1 -0
- package/dist/utils/detect-background.js +33 -0
- package/dist/utils/detect-background.js.map +1 -0
- package/dist/utils/endpoint-prompt.d.ts +5 -0
- package/dist/utils/endpoint-prompt.d.ts.map +1 -0
- package/dist/utils/endpoint-prompt.js +98 -0
- package/dist/utils/endpoint-prompt.js.map +1 -0
- package/dist/utils/formatting.d.ts +3 -0
- package/dist/utils/formatting.d.ts.map +1 -0
- package/dist/utils/formatting.js +5 -0
- package/dist/utils/formatting.js.map +1 -0
- package/dist/utils/password-prompt.d.ts +3 -0
- package/dist/utils/password-prompt.d.ts.map +1 -0
- package/dist/utils/password-prompt.js +21 -0
- package/dist/utils/password-prompt.js.map +1 -0
- package/dist/utils/sanitize.d.ts +13 -0
- package/dist/utils/sanitize.d.ts.map +1 -0
- package/dist/utils/sanitize.js +23 -0
- package/dist/utils/sanitize.js.map +1 -0
- package/dist/utils/theme.d.ts +11 -0
- package/dist/utils/theme.d.ts.map +1 -0
- package/dist/utils/theme.js +14 -0
- package/dist/utils/theme.js.map +1 -0
- package/dist/utils/ui.d.ts +22 -0
- package/dist/utils/ui.d.ts.map +1 -0
- package/dist/utils/ui.js +107 -0
- package/dist/utils/ui.js.map +1 -0
- package/dist/utils/url.d.ts +13 -0
- package/dist/utils/url.d.ts.map +1 -0
- package/dist/utils/url.js +20 -0
- package/dist/utils/url.js.map +1 -0
- package/package.json +90 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"key-manager.js","sourceRoot":"","sources":["../src/key-manager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AACpC,OAAO,EAAE,QAAQ,IAAI,EAAE,EAAE,MAAM,IAAI,CAAC;AACpC,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;AAEjC,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAErE,oCAAoC;AACpC,gFAAgF;AAChF,wEAAwE;AACxE,MAAM,YAAY,GAAG,cAAc,CAAC;AAEpC,MAAM,aAAa,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;AAE1C;;;GAGG;AACH,KAAK,UAAU,mBAAmB,CAAC,IAAc;IAC/C,IAAI,CAAC;QACH,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,aAAa,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QACzD,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC;IACvB,CAAC;IAAC,OAAO,KAAc,EAAE,CAAC;QACxB,MAAM,MAAM,GAAG,KAGd,CAAC;QACF,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;QAChD,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvE,MAAM,IAAI,KAAK,CAAC,4BAA4B,MAAM,IAAI,OAAO,EAAE,CAAC,CAAC;IACnE,CAAC;AACH,CAAC;AAKD;;GAEG;AACH,IAAK,aAOJ;AAPD,WAAK,aAAa;IAChB,wEAAwE;IACxE,sCAAqB,CAAA;IACrB,mFAAmF;IACnF,gCAAe,CAAA;IACf,4FAA4F;IAC5F,8BAAa,CAAA;AACf,CAAC,EAPI,aAAa,KAAb,aAAa,QAOjB;AA8BD,MAAM,OAAO,UAAU;IACJ,SAAS,CAAS;IAClB,YAAY,CAAS;IACrB,QAAQ,CAAS;IAC1B,KAAK,GAAoB,IAAI,CAAC;IAC9B,QAAQ,GAAyB,IAAI,CAAC;IAC7B,YAAY,CAAmB;IAC/B,aAAa,CAAgB;IAE9C;;;;;OAKG;IACH,YAAY,SAAkB,EAAE,YAA+B;QAC7D,IAAI,CAAC,SAAS,GAAG,SAAS,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,WAAW,CAAC,CAAC;QACnE,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;QAC3D,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;QACvD,IAAI,CAAC,YAAY,GAAG,YAAY,IAAI,mBAAmB,CAAC;QAExD,6CAA6C;QAC7C,yDAAyD;QACzD,IAAI,OAAO,CAAC,GAAG,CAAC,2BAA2B,KAAK,MAAM,EAAE,CAAC;YACvD,qDAAqD;YACrD,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC,IAAI,CAAC;QAC1C,CAAC;aAAM,IAAI,YAAY,IAAI,OAAO,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;YACzD,qEAAqE;YACrE,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC,QAAQ,CAAC;QAC9C,CAAC;aAAM,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;YACxC,uBAAuB;YACvB,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC,KAAK,CAAC;QAC3C,CAAC;aAAM,CAAC;YACN,sCAAsC;YACtC,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC,IAAI,CAAC;QAC1C,CAAC;IACH,CAAC;IAED;;;;;;;;OAQG;IACK,KAAK,CAAC,kBAAkB;QAC9B,kCAAkC;QAClC,IACE,IAAI,CAAC,aAAa,KAAK,aAAa,CAAC,QAAQ;YAC7C,CAAC,IAAI,CAAC,KAAK;YACX,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAC5B,CAAC;YACD,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,YAAY,GAAqB,EAAE,CAAC;QAE1C,iDAAiD;QACjD,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YACtC,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,YAAY,CAAC;oBACtB,uBAAuB;oBACvB,IAAI;oBACJ,OAAO,CAAC,EAAE;oBACV,IAAI;oBACJ,YAAY;oBACZ,IAAI;iBACL,CAAC,CAAC;gBACH,gCAAgC;YAClC,CAAC;YAAC,OAAO,KAAc,EAAE,CAAC;gBACxB,mDAAmD;gBACnD,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACvE,IAAI,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,CAAC;oBAC3C,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAC7B,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5B,gFAAgF;YAChF,kFAAkF;YAClF,MAAM,OAAO,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;YACtE,MAAM,CAAC,IAAI,CACT,gEAAgE,EAChE;gBACE,MAAM,EAAE,aAAa;gBACrB,KAAK,EAAE,YAAY,CAAC,MAAM;aAC3B,CACF,CAAC;YAEF,2DAA2D;YAC3D,OAAO,CAAC,IAAI,CACV,uGAAuG,CACxG,CAAC;YACF,KAAK,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,OAAO,EAAE,CAAC;gBACnC,OAAO,CAAC,IAAI,CAAC,OAAO,IAAI,UAAU,EAAE,GAAG,CAAC,CAAC;gBACzC,OAAO,CAAC,IAAI,CACV,+BAA+B,YAAY,iBAAiB,EAAE,GAAG,CAClE,CAAC;gBACF,OAAO,CAAC,IAAI,CACV,kEAAkE,EAAE,SAAS,YAAY,GAAG,CAC7F,CAAC;YACJ,CAAC;YACD,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YAC9B,OAAO,CAAC,IAAI,CAAC,sBAAsB,YAAY,YAAY,CAAC,CAAC;YAC7D,OAAO,CAAC,IAAI,CAAC,wDAAwD,CAAC,CAAC;YACvE,OAAO,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAC;YAEzD,4CAA4C;YAC5C,uEAAuE;YACvE,oFAAoF;YAEpF,OAAO,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACzC,CAAC;QAED,OAAO,EAAE,CAAC;IACZ,CAAC;IAED;;;;;;;;;;;;OAYG;IACK,KAAK,CAAC,WAAW;QACvB,MAAM,WAAW,GAAG,EAAE,CAAC,CAAC,6CAA6C;QACrE,MAAM,YAAY,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,YAAY;QAEhD,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,WAAW,EAAE,OAAO,EAAE,EAAE,CAAC;YACvD,IAAI,CAAC;gBACH,yDAAyD;gBACzD,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC;oBAC9B,GAAG,EAAE,OAAO,CAAC,GAAG;oBAChB,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE;iBACpB,CAAC,CAAC;gBACH,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE;oBAC1C,oEAAoE;oBACpE,IAAI,EAAE,IAAI,EAAE,uCAAuC;oBACnD,IAAI,EAAE,KAAK,EAAE,wBAAwB;iBACtC,CAAC,CAAC;gBAEH,sDAAsD;gBACtD,OAAO,KAAK,IAAI,EAAE;oBAChB,IAAI,CAAC;wBACH,2DAA2D;wBAC3D,MAAM,IAAI,GAAG,MAAM,EAAE;6BAClB,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC;6BAChC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;wBACnB,IAAI,IAAI,EAAE,CAAC;4BACT,IAAI,CAAC;gCACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gCAChC,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,OAAO,CAAC,GAAG,EAAE,CAAC;oCACxC,OAAO,CAAC,oCAAoC;gCAC9C,CAAC;4BACH,CAAC;4BAAC,MAAM,CAAC;gCACP,sDAAsD;4BACxD,CAAC;wBACH,CAAC;wBACD,MAAM,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBACjC,CAAC;oBAAC,MAAM,CAAC;wBACP,yDAAyD;oBAC3D,CAAC;gBACH,CAAC,CAAC;YACJ,CAAC;YAAC,OAAO,KAAc,EAAE,CAAC;gBACxB,MAAM,IAAI,GAAI,KAA2B,CAAC,IAAI,CAAC;gBAC/C,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;oBACtB,kDAAkD;oBAClD,MAAM,KAAK,CAAC;gBACd,CAAC;gBAED,iDAAiD;gBACjD,IAAI,CAAC;oBACH,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;oBACtD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC;oBACvC,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;oBAChC,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;oBAExC,MAAM,KAAK,GACT,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,GAAG,YAAY,CAAC;oBAClE,IAAI,QAAQ,GAAG,IAAI,CAAC;oBACpB,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,EAAE,CAAC;wBACpC,IAAI,CAAC;4BACH,oEAAoE;4BACpE,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;4BACrB,QAAQ,GAAG,IAAI,CAAC;wBAClB,CAAC;wBAAC,MAAM,CAAC;4BACP,QAAQ,GAAG,KAAK,CAAC;wBACnB,CAAC;oBACH,CAAC;oBAED,IAAI,KAAK,IAAI,CAAC,QAAQ,EAAE,CAAC;wBACvB,4BAA4B;wBAC5B,MAAM,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;oBACjD,CAAC;gBACH,CAAC;gBAAC,MAAM,CAAC;oBACP,0DAA0D;gBAC5D,CAAC;gBAED,iBAAiB;gBACjB,IAAI,OAAO,GAAG,WAAW,GAAG,CAAC,EAAE,CAAC;oBAC9B,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;gBAC1D,CAAC;YACH,CAAC;QACH,CAAC;QAED,uDAAuD;QACvD,MAAM,IAAI,KAAK,CACb,8EAA8E,CAC/E,CAAC;IACJ,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,UAAU;QACd,IAAI,CAAC;YACH,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;YAEjE,6DAA6D;YAC7D,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;YAC5B,CAAC;YAAC,OAAO,KAAc,EAAE,CAAC;gBACxB,IAAK,KAA2B,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;oBACnD,wCAAwC;oBACxC,IAAI,CAAC,KAAK,GAAG;wBACX,IAAI,EAAE,EAAE;wBACR,OAAO,EAAE,CAAC;qBACX,CAAC;oBACF,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;gBAC5B,CAAC;qBAAM,CAAC;oBACN,0DAA0D;oBAC1D,MAAM,KAAK,CAAC;gBACd,CAAC;YACH,CAAC;YAED,8CAA8C;YAC9C,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAClC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,kCAAkC,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;YAC5D,MAAM,IAAI,KAAK,CACb,qCAAqC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAC9F,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,YAAY;QACxB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QACxC,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;YAC3D,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAChC,CAAC;gBAAS,CAAC;YACT,MAAM,MAAM,EAAE,CAAC;QACjB,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,cAAc;QAC1B,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,GAAG,IAAI,CAAC,YAAY,SAAS,CAAC;YACjD,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;YAC3D,MAAM,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;QACxD,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,+DAA+D;YAC/D,IAAK,KAA2B,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACnD,MAAM,CAAC,IAAI,CAAC,kCAAkC,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;YAC7D,CAAC;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,YAAY;QACxB,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAC/C,CAAC;QAED,gDAAgD;QAChD,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,MAAM,IAAI,CAAC,QAAQ,CAAC;QACtB,CAAC;QAED,wBAAwB;QACxB,IAAI,CAAC,QAAQ,GAAG,CAAC,KAAK,IAAI,EAAE;YAC1B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;YACxC,IAAI,CAAC;gBACH,0DAA0D;gBAC1D,IAAI,CAAC;oBACH,MAAM,YAAY,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;oBACnE,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;oBAC1C,IAAI,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBAC9C,2DAA2D;wBAC3D,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;oBAC9B,CAAC;gBACH,CAAC;gBAAC,MAAM,CAAC;oBACP,sCAAsC;gBACxC,CAAC;gBAED,MAAM,EAAE,CAAC,SAAS,CAChB,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,EACnC,EAAE,IAAI,EAAE,KAAK,EAAE,CAChB,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,KAAK,CAAC,6BAA6B,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;gBACvD,MAAM,IAAI,KAAK,CACb,gCAAgC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CACzF,CAAC;YACJ,CAAC;oBAAS,CAAC;gBACT,MAAM,MAAM,EAAE,CAAC;gBACf,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;YACvB,CAAC;QACH,CAAC,CAAC,EAAE,CAAC;QAEL,MAAM,IAAI,CAAC,QAAQ,CAAC;IACtB,CAAC;IAED;;;OAGG;IACK,UAAU;QAChB,OAAO,UAAU,EAAE,CAAC;IACtB,CAAC;IAED;;OAEG;IACK,cAAc,CAAC,MAAc;QACnC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;QACzC,CAAC;QACD,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YACnC,MAAM,IAAI,KAAK,CACb,6DAA6D,CAC9D,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;OAEG;IACK,eAAe,CAAC,OAAe;QACrC,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;QAC1C,CAAC;QAED,IAAI,GAAQ,CAAC;QACb,IAAI,CAAC;YACH,GAAG,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC;QACzB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CACb,4BAA4B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CACrF,CAAC;QACJ,CAAC;QAED,uFAAuF;QACvF,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC;YAC7B,MAAM,IAAI,KAAK,CACb,+FAA+F,CAChG,CAAC;QACJ,CAAC;QAED,yCAAyC;QACzC,MAAM,gBAAgB,GACpB,GAAG,CAAC,QAAQ,KAAK,cAAc,IAAI,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;QAC5E,MAAM,WAAW,GAAG,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAElD,IAAI,CAAC,gBAAgB,IAAI,CAAC,WAAW,EAAE,CAAC;YACtC,MAAM,CAAC,IAAI,CAAC,uCAAuC,EAAE;gBACnD,QAAQ,EAAE,GAAG,CAAC,QAAQ;aACvB,CAAC,CAAC;YACH,OAAO,CAAC,IAAI,CACV,oDAAoD,GAAG,CAAC,QAAQ,EAAE,CACnE,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;OAYG;IACK,KAAK,CAAC,cAAc,CAAC,IAAY;QACvC,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;YACjC,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;QACnE,CAAC;QAED,IAAI,CAAC;YACH,yEAAyE;YACzE,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAC;YAEhD,4CAA4C;YAC5C,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YAE/C,2CAA2C;YAC3C,kEAAkE;YAClE,MAAM,cAAc,GAAG,KAAK,CAAC,WAAW,CACtC,WAAW,EACX,IAAI,EACJ,aAAa,CACd,CAAC;YAEF,0DAA0D;YAC1D,OAAO,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACxD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,yBAAyB,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;YACnD,MAAM,IAAI,KAAK,CACb,8CAA8C,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CACvG,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;;;;;;;;OAWG;IACK,KAAK,CAAC,cAAc,CAAC,eAAuB;QAClD,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;YACjC,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;QACnE,CAAC;QAED,qEAAqE;QACrE,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;YAChD,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;QACtE,CAAC;QAED,IAAI,CAAC;YACH,yEAAyE;YACzE,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAC;YAEhD,0BAA0B;YAC1B,MAAM,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;YAE/D,2CAA2C;YAC3C,2EAA2E;YAC3E,MAAM,cAAc,GAAG,KAAK,CAAC,aAAa,CACxC,eAAe,EACf,IAAI,EACJ,aAAa,CACd,CAAC;YAEF,wCAAwC;YACxC,OAAO,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACvD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,yBAAyB,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;YACnD,MAAM,IAAI,KAAK,CACb,8CAA8C,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CACvG,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;OAYG;IACK,KAAK,CAAC,OAAO,CACnB,IAAY,EACZ,MAAc,EACd,OAAe,EACf,YAAqC,EACrC,QAAiB;QAEjB,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QAC1B,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAC/C,CAAC;QAED,kBAAkB;QAClB,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtC,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;QAC1C,CAAC;QAED,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QAC5B,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;QAE9B,MAAM,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC;QAC5B,IAAI,aAAa,GAAG,CAAC,CAAC,CAAC;QACvB,IAAI,WAAuC,CAAC;QAE5C,IAAI,QAAQ,EAAE,CAAC;YACb,iCAAiC;YACjC,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CACvC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,CAChD,CAAC;YAEF,IAAI,aAAa,KAAK,CAAC,CAAC,EAAE,CAAC;gBACzB,MAAM,IAAI,KAAK,CAAC,kBAAkB,QAAQ,EAAE,CAAC,CAAC;YAChD,CAAC;YAED,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YAClD,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,MAAM,IAAI,KAAK,CAAC,kBAAkB,QAAQ,EAAE,CAAC,CAAC;YAChD,CAAC;YACD,WAAW,GAAG,UAAU,CAAC;QAC3B,CAAC;QAED,4BAA4B;QAC5B,IAAI,WAAW,EAAE,IAAI,KAAK,IAAI,EAAE,CAAC;YAC/B,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;gBACjD,MAAM,IAAI,KAAK,CAAC,kBAAkB,IAAI,kBAAkB,CAAC,CAAC;YAC5D,CAAC;QACH,CAAC;QAED,IAAI,QAAwB,CAAC;QAC7B,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CAAC,kBAAkB,QAAQ,EAAE,CAAC,CAAC;YAChD,CAAC;YACD,QAAQ,GAAG;gBACT,GAAG,WAAW;gBACd,IAAI;gBACJ,OAAO;gBACP,OAAO,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACjC,GAAG,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC7D,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,QAAQ,GAAG;gBACT,EAAE,EAAE,IAAI,CAAC,UAAU,EAAE;gBACrB,IAAI;gBACJ,OAAO;gBACP,OAAO,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACjC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC;gBACtC,GAAG,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC7D,CAAC;QACJ,CAAC;QAED,kCAAkC;QAClC,QAAQ,IAAI,CAAC,aAAa,EAAE,CAAC;YAC3B,KAAK,aAAa,CAAC,QAAQ;gBACzB,IAAI,CAAC;oBACH,MAAM,IAAI,CAAC,YAAY,CAAC;wBACtB,sBAAsB;wBACtB,IAAI;wBACJ,QAAQ,CAAC,EAAE;wBACX,IAAI;wBACJ,YAAY;wBACZ,IAAI;wBACJ,MAAM;wBACN,IAAI;qBACL,CAAC,CAAC;gBACL,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,MAAM,CAAC,KAAK,CAAC,iCAAiC,EAAE;wBAC9C,KAAK;wBACL,EAAE,EAAE,QAAQ,CAAC,EAAE;qBAChB,CAAC,CAAC;oBACH,MAAM,IAAI,KAAK,CACb,0CAA0C,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CACnG,CAAC;gBACJ,CAAC;gBACD,MAAM;YAER,KAAK,aAAa,CAAC,KAAK;gBACtB,IAAI,CAAC;oBACH,QAAQ,CAAC,eAAe,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;gBAC/D,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,MAAM,CAAC,KAAK,CAAC,kCAAkC,EAAE;wBAC/C,KAAK;wBACL,EAAE,EAAE,QAAQ,CAAC,EAAE;qBAChB,CAAC,CAAC;oBACH,MAAM,IAAI,KAAK,CACb,6CAA6C,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CACtG,CAAC;gBACJ,CAAC;gBACD,MAAM;YAER;gBACE,6BAA6B;gBAC7B,QAAQ,CAAC,MAAM,GAAG,MAAM,CAAC;gBACzB,MAAM;QACV,CAAC;QAED,2BAA2B;QAC3B,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,QAAQ,CAAC;QAC5C,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACjC,CAAC;QAED,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;QAE1B,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,eAAe,EAAE;YAC3D,EAAE,EAAE,QAAQ,CAAC,EAAE;YACf,IAAI,EAAE,QAAQ,CAAC,IAAI;SACpB,CAAC,CAAC;QAEH,OAAO,QAAQ,CAAC,EAAE,CAAC;IACrB,CAAC;IAED;;;;;;;;;;;OAWG;IACH,KAAK,CAAC,MAAM,CACV,IAAY,EACZ,MAAc,EACd,OAAe,EACf,YAAqC;QAErC,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC;IAC3D,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,KAAK,CAAC,SAAS,CACb,QAAgB,EAChB,IAAY,EACZ,MAAc,EACd,OAAe,EACf,YAAqC;QAErC,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAC;IACrE,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,QAAQ;QACZ,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QAC1B,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAC/C,CAAC;QAED,OAAO,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,cAAc,CAAC,QAAgB;QACnC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;QACnC,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,IAAI,IAAI,CAAC;IAC5E,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,MAAM,CAAC,QAAgB;QAC3B,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QAC1B,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAC/C,CAAC;QAED,wBAAwB;QACxB,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAClC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,CAChD,CAAC;QAEF,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,IAAI,CAAC;QACd,CAAC;QAED,cAAc;QACd,QAAQ,IAAI,CAAC,aAAa,EAAE,CAAC;YAC3B,KAAK,aAAa,CAAC,QAAQ;gBACzB,2BAA2B;gBAC3B,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC;wBACrC,uBAAuB;wBACvB,IAAI;wBACJ,OAAO,CAAC,EAAE;wBACV,IAAI;wBACJ,YAAY;wBACZ,IAAI;qBACL,CAAC,CAAC;oBAEH,IAAI,CAAC,MAAM,EAAE,CAAC;wBACZ,MAAM,CAAC,KAAK,CAAC,2BAA2B,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;wBAC9D,MAAM,IAAI,KAAK,CACb,0CAA0C,OAAO,CAAC,EAAE,EAAE,CACvD,CAAC;oBACJ,CAAC;oBAED,OAAO,MAAM,CAAC;gBAChB,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,MAAM,CAAC,KAAK,CAAC,sCAAsC,EAAE;wBACnD,KAAK;wBACL,EAAE,EAAE,OAAO,CAAC,EAAE;qBACf,CAAC,CAAC;oBACH,MAAM,IAAI,KAAK,CACb,+CAA+C,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CACxG,CAAC;gBACJ,CAAC;YAEH,KAAK,aAAa,CAAC,KAAK;gBACtB,6BAA6B;gBAC7B,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;oBAC5B,IAAI,CAAC;wBACH,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;oBAC5D,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACf,MAAM,CAAC,KAAK,CAAC,kCAAkC,EAAE;4BAC/C,KAAK;4BACL,EAAE,EAAE,OAAO,CAAC,EAAE;yBACf,CAAC,CAAC;wBACH,MAAM,IAAI,KAAK,CACb,6CAA6C,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CACtG,CAAC;oBACJ,CAAC;gBACH,CAAC;qBAAM,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;oBAC1B,0DAA0D;oBAC1D,OAAO,OAAO,CAAC,MAAM,CAAC;gBACxB,CAAC;qBAAM,CAAC;oBACN,MAAM,CAAC,KAAK,CAAC,2BAA2B,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;oBAC9D,MAAM,IAAI,KAAK,CAAC,mCAAmC,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;gBACnE,CAAC;YAEH;gBACE,6BAA6B;gBAC7B,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;oBACpB,MAAM,CAAC,KAAK,CAAC,2BAA2B,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;oBAC9D,MAAM,IAAI,KAAK,CAAC,mCAAmC,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;gBACnE,CAAC;gBACD,OAAO,OAAO,CAAC,MAAM,CAAC;QAC1B,CAAC;IACH,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,YAAY;QAChB,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QAC1B,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAC/C,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;QAC1D,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IACnC,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,oBAAoB;QACxB,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QAC1B,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAC/C,CAAC;QAED,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC;IACzD,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,YAAY,CAAC,QAAgB;QACjC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QAC1B,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAC/C,CAAC;QAED,eAAe;QACf,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAClC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,CAChD,CAAC;QAEF,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,kBAAkB,QAAQ,EAAE,CAAC,CAAC;QAChD,CAAC;QAED,sBAAsB;QACtB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YAC5B,CAAC,CAAC,QAAQ,GAAG,KAAK,CAAC;QACrB,CAAC,CAAC,CAAC;QAEH,4BAA4B;QAC5B,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;QAExB,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;IAC5B,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,SAAS,CAAC,EAAU;QACxB,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QAC1B,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAC/C,CAAC;QAED,0BAA0B;QAC1B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QAE5D,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,0BAA0B,EAAE,EAAE,CAAC,CAAC;QAClD,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACvC,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,0BAA0B,EAAE,EAAE,CAAC,CAAC;QAClD,CAAC;QAED,sBAAsB;QACtB,IAAI,IAAI,CAAC,aAAa,KAAK,aAAa,CAAC,QAAQ,EAAE,CAAC;YAClD,8BAA8B;YAC9B,IAAI,eAAe,GAAG,KAAK,CAAC;YAC5B,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,YAAY,CAAC;oBACtB,yBAAyB;oBACzB,IAAI;oBACJ,OAAO,CAAC,EAAE;oBACV,IAAI;oBACJ,YAAY;iBACb,CAAC,CAAC;gBACH,eAAe,GAAG,IAAI,CAAC;YACzB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,KAAK,CAAC,oCAAoC,EAAE;oBACjD,KAAK;oBACL,EAAE,EAAE,OAAO,CAAC,EAAE;iBACf,CAAC,CAAC;gBACH,0DAA0D;YAC5D,CAAC;YAED,uBAAuB;YACvB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YACjC,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;YAE1B,IAAI,CAAC,eAAe,EAAE,CAAC;gBACrB,MAAM,CAAC,IAAI,CACT,2DAA2D,EAC3D;oBACE,EAAE,EAAE,OAAO,CAAC,EAAE;oBACd,IAAI,EAAE,OAAO,CAAC,IAAI;iBACnB,CACF,CAAC;gBACF,OAAO,CAAC,IAAI,CACV,qBAAqB,OAAO,CAAC,IAAI,0DAA0D,CAC5F,CAAC;gBACF,OAAO,CAAC,IAAI,CACV,gEAAgE,OAAO,CAAC,EAAE,SAAS,YAAY,GAAG,CACnG,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,KAAK,CAAC,iBAAiB,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;YAC1E,CAAC;QACH,CAAC;aAAM,CAAC;YACN,uCAAuC;YACvC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YACjC,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;YAC1B,MAAM,CAAC,KAAK,CAAC,iBAAiB,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;QAC1E,CAAC;IACH,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,OAAO;QACX,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QAC1B,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAC/C,CAAC;QAED,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;IACpC,CAAC;IAED,wFAAwF;IACxF,KAAK,CAAC,YAAY;QAChB,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QAC1B,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAC/C,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IACjD,CAAC;IAED,mDAAmD;IACnD,KAAK,CAAC,iBAAiB;QACrB,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAC/C,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YAC5B,CAAC,CAAC,QAAQ,GAAG,KAAK,CAAC;QACrB,CAAC,CAAC,CAAC;QACH,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;IAC5B,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,cAAc,CAAC,WAAmB;QACtC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QAC1B,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAC/C,CAAC;QAED,6CAA6C;QAC7C,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YACtC,IAAI,CAAC;gBACH,IAAI,SAAiB,CAAC;gBAEtB,QAAQ,IAAI,CAAC,aAAa,EAAE,CAAC;oBAC3B,KAAK,aAAa,CAAC,QAAQ;wBACzB,SAAS,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC;4BAClC,uBAAuB;4BACvB,IAAI;4BACJ,OAAO,CAAC,EAAE;4BACV,IAAI;4BACJ,YAAY;4BACZ,IAAI;yBACL,CAAC,CAAC;wBACH,MAAM;oBAER,KAAK,aAAa,CAAC,KAAK;wBACtB,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;4BAC5B,SAAS,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;wBACjE,CAAC;6BAAM,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;4BAC1B,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC;wBAC7B,CAAC;6BAAM,CAAC;4BACN,SAAS;wBACX,CAAC;wBACD,MAAM;oBAER;wBACE,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;4BACpB,SAAS;wBACX,CAAC;wBACD,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC;wBAC3B,MAAM;gBACV,CAAC;gBAED,IAAI,SAAS,CAAC,IAAI,EAAE,KAAK,WAAW,EAAE,CAAC;oBACrC,OAAO,OAAO,CAAC;gBACjB,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,qEAAqE;gBACrE,SAAS;YACX,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AAED,qBAAqB;AACrB,IAAI,kBAAkB,GAAsB,IAAI,CAAC;AAEjD;;GAEG;AACH,MAAM,UAAU,aAAa;IAC3B,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACxB,kBAAkB,GAAG,IAAI,UAAU,EAAE,CAAC;IACxC,CAAC;IACD,OAAO,kBAAkB,CAAC;AAC5B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"keys-cli.d.ts","sourceRoot":"","sources":["../src/keys-cli.ts"],"names":[],"mappings":"AAoQA,0CAA0C;AAC1C,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAyQrE"}
|
package/dist/keys-cli.js
ADDED
|
@@ -0,0 +1,396 @@
|
|
|
1
|
+
/* eslint-disable no-console */
|
|
2
|
+
import chalk from "chalk";
|
|
3
|
+
import inquirer from "inquirer";
|
|
4
|
+
import { getKeyManager } from "./key-manager.js";
|
|
5
|
+
import { getSpinner, isTestEnv } from "./utils/cli-env.js";
|
|
6
|
+
import { COMMAND_NAME, KEYS_COMMAND_TABLE } from "./utils/command-info.js";
|
|
7
|
+
import { promptForIterableBaseUrl } from "./utils/endpoint-prompt.js";
|
|
8
|
+
import { getKeyStorageMessage } from "./utils/formatting.js";
|
|
9
|
+
import { promptForApiKey } from "./utils/password-prompt.js";
|
|
10
|
+
import { sanitizeString } from "./utils/sanitize.js";
|
|
11
|
+
import { createTable, icons, linkColor, showBox, showError, showInfo, showSection, showSuccess, } from "./utils/ui.js";
|
|
12
|
+
function displayKeyDetails(meta) {
|
|
13
|
+
const w = 12;
|
|
14
|
+
console.log();
|
|
15
|
+
console.log(` ${"Name:".padEnd(w)} ${chalk.white.bold(meta.name)}`);
|
|
16
|
+
console.log(` ${"ID:".padEnd(w)} ${chalk.gray(meta.id)}`);
|
|
17
|
+
console.log(` ${"Endpoint:".padEnd(w)} ${linkColor()(meta.baseUrl)}`);
|
|
18
|
+
}
|
|
19
|
+
async function findKeyOrExit(keyManager, idOrName, commandName) {
|
|
20
|
+
if (!idOrName) {
|
|
21
|
+
showError("Missing key name or ID");
|
|
22
|
+
console.log(` Usage: ${COMMAND_NAME} keys ${commandName} <name-or-id>`);
|
|
23
|
+
showInfo("If your key name has spaces, wrap it in quotes");
|
|
24
|
+
process.exit(1);
|
|
25
|
+
}
|
|
26
|
+
const keys = await keyManager.listKeys();
|
|
27
|
+
const key = keys.find((k) => k.id === idOrName || k.name === idOrName);
|
|
28
|
+
if (!key) {
|
|
29
|
+
showError(`Key not found: ${idOrName}`);
|
|
30
|
+
showInfo(`Run '${COMMAND_NAME} keys list' to view all keys`);
|
|
31
|
+
process.exit(1);
|
|
32
|
+
}
|
|
33
|
+
return key;
|
|
34
|
+
}
|
|
35
|
+
async function saveKeyInteractive(keyManager, existingKeyArg) {
|
|
36
|
+
const spinner = await getSpinner();
|
|
37
|
+
let isUpdate = existingKeyArg !== null;
|
|
38
|
+
let existingKey = existingKeyArg;
|
|
39
|
+
const maybeActivateKey = async (key) => {
|
|
40
|
+
if (key.isActive) {
|
|
41
|
+
showSuccess(`"${key.name}" is already your active key`);
|
|
42
|
+
return key;
|
|
43
|
+
}
|
|
44
|
+
const { activateNow } = await inquirer.prompt([
|
|
45
|
+
{
|
|
46
|
+
type: "confirm",
|
|
47
|
+
name: "activateNow",
|
|
48
|
+
message: `Set "${key.name}" as your active API key now?`,
|
|
49
|
+
default: !isUpdate,
|
|
50
|
+
},
|
|
51
|
+
]);
|
|
52
|
+
const shouldActivate = activateNow;
|
|
53
|
+
if (shouldActivate) {
|
|
54
|
+
await keyManager.setActiveKey(key.id);
|
|
55
|
+
showSuccess(`"${key.name}" is now your active API key`);
|
|
56
|
+
const updatedKey = await keyManager.getKeyMetadata(key.id);
|
|
57
|
+
return updatedKey ?? key;
|
|
58
|
+
}
|
|
59
|
+
showInfo(`Keeping your current active key. Run '${COMMAND_NAME} keys activate "${key.name}"' to switch later.`);
|
|
60
|
+
return key;
|
|
61
|
+
};
|
|
62
|
+
// Step 1: Get API key value
|
|
63
|
+
let apiKey;
|
|
64
|
+
if (isUpdate && existingKey) {
|
|
65
|
+
const { updateApiKey } = await inquirer.prompt([
|
|
66
|
+
{
|
|
67
|
+
type: "confirm",
|
|
68
|
+
name: "updateApiKey",
|
|
69
|
+
message: "Update the API key value?",
|
|
70
|
+
default: false,
|
|
71
|
+
},
|
|
72
|
+
]);
|
|
73
|
+
if (updateApiKey) {
|
|
74
|
+
apiKey = await promptForApiKey("Enter your new Iterable API key:");
|
|
75
|
+
}
|
|
76
|
+
else {
|
|
77
|
+
spinner.start("Retrieving existing API key...");
|
|
78
|
+
try {
|
|
79
|
+
const existing = await keyManager.getKey(existingKey.id);
|
|
80
|
+
if (!existing) {
|
|
81
|
+
spinner.fail("Failed to retrieve existing API key");
|
|
82
|
+
showError("Could not access the existing API key value");
|
|
83
|
+
showInfo("You'll need to enter a new API key value");
|
|
84
|
+
apiKey = await promptForApiKey("Enter your Iterable API key:");
|
|
85
|
+
}
|
|
86
|
+
else {
|
|
87
|
+
spinner.succeed("Using existing API key");
|
|
88
|
+
apiKey = existing;
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
catch (error) {
|
|
92
|
+
spinner.fail("Failed to retrieve existing API key");
|
|
93
|
+
showError(error instanceof Error ? error.message : "Could not access key");
|
|
94
|
+
showInfo("You'll need to enter a new API key value");
|
|
95
|
+
apiKey = await promptForApiKey("Enter your Iterable API key:");
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
else {
|
|
100
|
+
apiKey = await promptForApiKey("Enter your Iterable API key:");
|
|
101
|
+
}
|
|
102
|
+
// Step 2: Check for duplicate keys (new keys only)
|
|
103
|
+
if (!isUpdate) {
|
|
104
|
+
const existingKeyWithValue = await keyManager.findKeyByValue(apiKey);
|
|
105
|
+
if (existingKeyWithValue) {
|
|
106
|
+
showInfo(`This API key is already stored as "${existingKeyWithValue.name}"`);
|
|
107
|
+
displayKeyDetails(existingKeyWithValue);
|
|
108
|
+
console.log();
|
|
109
|
+
const { updateExisting } = await inquirer.prompt([
|
|
110
|
+
{
|
|
111
|
+
type: "confirm",
|
|
112
|
+
name: "updateExisting",
|
|
113
|
+
message: "Update this key with new settings?",
|
|
114
|
+
default: true,
|
|
115
|
+
},
|
|
116
|
+
]);
|
|
117
|
+
if (!updateExisting) {
|
|
118
|
+
await maybeActivateKey(existingKeyWithValue);
|
|
119
|
+
return existingKeyWithValue.id;
|
|
120
|
+
}
|
|
121
|
+
isUpdate = true;
|
|
122
|
+
existingKey = existingKeyWithValue;
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
// Step 3: Prompt for endpoint
|
|
126
|
+
let baseUrl;
|
|
127
|
+
try {
|
|
128
|
+
baseUrl = await promptForIterableBaseUrl(existingKey?.baseUrl ? { defaultBaseUrl: existingKey.baseUrl } : undefined);
|
|
129
|
+
}
|
|
130
|
+
catch {
|
|
131
|
+
process.exit(1);
|
|
132
|
+
}
|
|
133
|
+
if (isUpdate && existingKey && existingKey.baseUrl !== baseUrl) {
|
|
134
|
+
showInfo(`Endpoint changing from ${existingKey.baseUrl} to ${baseUrl}`);
|
|
135
|
+
}
|
|
136
|
+
// Step 4: Prompt for name
|
|
137
|
+
const validateKeyName = async (input) => {
|
|
138
|
+
if (!input)
|
|
139
|
+
return "Name is required";
|
|
140
|
+
if (input.length > 50)
|
|
141
|
+
return "Name must be 50 characters or less";
|
|
142
|
+
if (input !== existingKey?.name) {
|
|
143
|
+
const keys = await keyManager.listKeys();
|
|
144
|
+
if (keys.some((k) => k.name === input)) {
|
|
145
|
+
return `A key named "${input}" already exists. Please choose a different name.`;
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
return true;
|
|
149
|
+
};
|
|
150
|
+
const { name } = await inquirer.prompt([
|
|
151
|
+
{
|
|
152
|
+
type: "input",
|
|
153
|
+
name: "name",
|
|
154
|
+
message: isUpdate
|
|
155
|
+
? "Enter a new name, or press Enter to keep current name:"
|
|
156
|
+
: "Enter a name for this API key:",
|
|
157
|
+
default: existingKey?.name ?? "default",
|
|
158
|
+
validate: validateKeyName,
|
|
159
|
+
},
|
|
160
|
+
]);
|
|
161
|
+
// Step 5: Save the key
|
|
162
|
+
spinner.start(isUpdate ? "Updating API key..." : "Storing API key securely...");
|
|
163
|
+
try {
|
|
164
|
+
const id = isUpdate && existingKey
|
|
165
|
+
? await keyManager.updateKey(existingKey.id, name, apiKey, baseUrl)
|
|
166
|
+
: await keyManager.addKey(name, apiKey, baseUrl);
|
|
167
|
+
spinner.succeed(isUpdate
|
|
168
|
+
? "API key updated successfully!"
|
|
169
|
+
: "API key stored successfully!");
|
|
170
|
+
const w = 12;
|
|
171
|
+
console.log();
|
|
172
|
+
console.log(` ${"Name:".padEnd(w)} ${chalk.white.bold(name)}`);
|
|
173
|
+
console.log(` ${"ID:".padEnd(w)} ${chalk.gray(id)}`);
|
|
174
|
+
console.log(` ${"Endpoint:".padEnd(w)} ${linkColor()(baseUrl)}`);
|
|
175
|
+
console.log();
|
|
176
|
+
showSuccess(isUpdate
|
|
177
|
+
? "Your API key has been updated (encrypted at rest)"
|
|
178
|
+
: "Your API key is now securely stored (encrypted at rest)");
|
|
179
|
+
const savedKey = await keyManager.getKeyMetadata(id);
|
|
180
|
+
if (savedKey) {
|
|
181
|
+
await maybeActivateKey(savedKey);
|
|
182
|
+
}
|
|
183
|
+
else {
|
|
184
|
+
showError("Failed to get key metadata after saving");
|
|
185
|
+
process.exit(1);
|
|
186
|
+
}
|
|
187
|
+
return id;
|
|
188
|
+
}
|
|
189
|
+
catch (error) {
|
|
190
|
+
spinner.fail(isUpdate ? "Failed to update API key" : "Failed to add API key");
|
|
191
|
+
const msg = error instanceof Error ? sanitizeString(error.message) : "Unknown error";
|
|
192
|
+
showError(msg);
|
|
193
|
+
process.exit(1);
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
/** Handle `iterable keys <subcommand>` */
|
|
197
|
+
export async function handleKeysCommand(args) {
|
|
198
|
+
const subCommand = args[0];
|
|
199
|
+
const positionalArgs = args.filter((arg) => !arg.startsWith("--"));
|
|
200
|
+
const spinner = await getSpinner();
|
|
201
|
+
const keyManager = getKeyManager();
|
|
202
|
+
try {
|
|
203
|
+
await keyManager.initialize();
|
|
204
|
+
}
|
|
205
|
+
catch (error) {
|
|
206
|
+
showError(`Failed to initialize key manager: ${error instanceof Error ? error.message : "Unknown error"}`);
|
|
207
|
+
if (isTestEnv())
|
|
208
|
+
return;
|
|
209
|
+
process.exit(1);
|
|
210
|
+
}
|
|
211
|
+
switch (subCommand) {
|
|
212
|
+
case "list": {
|
|
213
|
+
const keys = await keyManager.listKeys();
|
|
214
|
+
if (keys.length === 0) {
|
|
215
|
+
showBox("No API Keys Found", [
|
|
216
|
+
chalk.gray("You haven't added any API keys yet."),
|
|
217
|
+
"",
|
|
218
|
+
chalk.cyan("Get started by running:"),
|
|
219
|
+
chalk.bold.white(` ${COMMAND_NAME} keys add`),
|
|
220
|
+
], { icon: icons.key, theme: "info" });
|
|
221
|
+
}
|
|
222
|
+
else {
|
|
223
|
+
showSection("Stored API Keys", icons.key);
|
|
224
|
+
console.log();
|
|
225
|
+
const table = createTable({
|
|
226
|
+
head: ["Name", "ID", "Endpoint", "Modified", "Status"],
|
|
227
|
+
style: "normal",
|
|
228
|
+
});
|
|
229
|
+
for (const key of keys) {
|
|
230
|
+
const statusBadge = key.isActive
|
|
231
|
+
? chalk.bgGreen.black(" ACTIVE ")
|
|
232
|
+
: chalk.gray("INACTIVE");
|
|
233
|
+
const dateToShow = key.updated ?? key.created;
|
|
234
|
+
const formattedDate = new Date(dateToShow).toLocaleDateString("en-US", { year: "numeric", month: "short", day: "numeric" });
|
|
235
|
+
const endpoint = key.baseUrl.replace("https://", "");
|
|
236
|
+
table.push([
|
|
237
|
+
chalk.white.bold(key.name),
|
|
238
|
+
chalk.gray(key.id),
|
|
239
|
+
linkColor()(endpoint),
|
|
240
|
+
chalk.gray(formattedDate),
|
|
241
|
+
statusBadge,
|
|
242
|
+
]);
|
|
243
|
+
}
|
|
244
|
+
console.log(table.toString());
|
|
245
|
+
console.log();
|
|
246
|
+
showBox("Key Management", [
|
|
247
|
+
...KEYS_COMMAND_TABLE.map(([cmd, desc]) => `${chalk.cyan(cmd)} - ${chalk.gray(desc)}`),
|
|
248
|
+
"",
|
|
249
|
+
getKeyStorageMessage(),
|
|
250
|
+
], { icon: icons.key, theme: "info", padding: 1 });
|
|
251
|
+
}
|
|
252
|
+
break;
|
|
253
|
+
}
|
|
254
|
+
case "add": {
|
|
255
|
+
await saveKeyInteractive(keyManager, null);
|
|
256
|
+
break;
|
|
257
|
+
}
|
|
258
|
+
case "update": {
|
|
259
|
+
const existingKey = await findKeyOrExit(keyManager, positionalArgs[1], "update");
|
|
260
|
+
await saveKeyInteractive(keyManager, existingKey);
|
|
261
|
+
break;
|
|
262
|
+
}
|
|
263
|
+
case "activate": {
|
|
264
|
+
const keyToActivate = await findKeyOrExit(keyManager, positionalArgs[1], "activate");
|
|
265
|
+
spinner.start(`Activating key "${keyToActivate.name}"...`);
|
|
266
|
+
try {
|
|
267
|
+
await keyManager.getKey(keyToActivate.id);
|
|
268
|
+
}
|
|
269
|
+
catch (error) {
|
|
270
|
+
spinner.fail("Failed to activate key");
|
|
271
|
+
showError(error instanceof Error ? error.message : "Failed to access key");
|
|
272
|
+
showInfo(`This key's value is not accessible. Update it with: ${COMMAND_NAME} keys update "${keyToActivate.name}"`);
|
|
273
|
+
process.exit(1);
|
|
274
|
+
}
|
|
275
|
+
await keyManager.setActiveKey(keyToActivate.id);
|
|
276
|
+
spinner.stop();
|
|
277
|
+
const meta = await keyManager.getActiveKeyMetadata();
|
|
278
|
+
if (meta) {
|
|
279
|
+
showSuccess(`Switched to "${meta.name}"`);
|
|
280
|
+
console.log();
|
|
281
|
+
displayKeyDetails(meta);
|
|
282
|
+
console.log();
|
|
283
|
+
}
|
|
284
|
+
else {
|
|
285
|
+
showSuccess(`"${keyToActivate.name}" is now your active API key`);
|
|
286
|
+
}
|
|
287
|
+
break;
|
|
288
|
+
}
|
|
289
|
+
case "deactivate": {
|
|
290
|
+
if (!(await keyManager.hasActiveKey())) {
|
|
291
|
+
showInfo("No key is currently active.");
|
|
292
|
+
break;
|
|
293
|
+
}
|
|
294
|
+
const activeMeta = await keyManager.getActiveKeyMetadata();
|
|
295
|
+
await keyManager.deactivateAllKeys();
|
|
296
|
+
showSuccess(`Deactivated "${activeMeta?.name ?? "active key"}". Commands will require ITERABLE_API_KEY env var until a key is activated.`);
|
|
297
|
+
break;
|
|
298
|
+
}
|
|
299
|
+
case "delete": {
|
|
300
|
+
const keyToDelete = await findKeyOrExit(keyManager, positionalArgs[1], "delete");
|
|
301
|
+
const allKeys = await keyManager.listKeys();
|
|
302
|
+
const otherKeys = allKeys.filter((k) => k.id !== keyToDelete.id);
|
|
303
|
+
if (keyToDelete.isActive && otherKeys.length === 0) {
|
|
304
|
+
showInfo("This is your active key and the only key stored.");
|
|
305
|
+
}
|
|
306
|
+
else if (keyToDelete.isActive) {
|
|
307
|
+
showInfo("This is your active key.");
|
|
308
|
+
}
|
|
309
|
+
let confirmDelete = false;
|
|
310
|
+
if (isTestEnv()) {
|
|
311
|
+
confirmDelete = true;
|
|
312
|
+
}
|
|
313
|
+
else {
|
|
314
|
+
({ confirmDelete } = await inquirer.prompt([
|
|
315
|
+
{
|
|
316
|
+
type: "confirm",
|
|
317
|
+
name: "confirmDelete",
|
|
318
|
+
message: `Permanently delete key "${keyToDelete.name}"?`,
|
|
319
|
+
default: false,
|
|
320
|
+
},
|
|
321
|
+
]));
|
|
322
|
+
}
|
|
323
|
+
if (!confirmDelete) {
|
|
324
|
+
showInfo("Deletion cancelled.");
|
|
325
|
+
return;
|
|
326
|
+
}
|
|
327
|
+
if (keyToDelete.isActive && otherKeys.length > 0) {
|
|
328
|
+
const { newActiveKey } = await inquirer.prompt([
|
|
329
|
+
{
|
|
330
|
+
type: "list",
|
|
331
|
+
name: "newActiveKey",
|
|
332
|
+
message: "Select a new active key:",
|
|
333
|
+
choices: [
|
|
334
|
+
...otherKeys.map((k) => ({
|
|
335
|
+
name: `${k.name} (${k.baseUrl})`,
|
|
336
|
+
value: k.id,
|
|
337
|
+
})),
|
|
338
|
+
{ name: "Don't activate any key", value: "none" },
|
|
339
|
+
],
|
|
340
|
+
},
|
|
341
|
+
]);
|
|
342
|
+
if (newActiveKey !== "none") {
|
|
343
|
+
await keyManager.setActiveKey(newActiveKey);
|
|
344
|
+
const activated = otherKeys.find((k) => k.id === newActiveKey);
|
|
345
|
+
if (activated) {
|
|
346
|
+
showSuccess(`Switched to "${activated.name}"`);
|
|
347
|
+
}
|
|
348
|
+
}
|
|
349
|
+
}
|
|
350
|
+
try {
|
|
351
|
+
await keyManager.deleteKey(keyToDelete.id);
|
|
352
|
+
showSuccess("Key securely removed");
|
|
353
|
+
}
|
|
354
|
+
catch (error) {
|
|
355
|
+
showError(error instanceof Error ? error.message : "Unknown error");
|
|
356
|
+
process.exit(1);
|
|
357
|
+
}
|
|
358
|
+
break;
|
|
359
|
+
}
|
|
360
|
+
default: {
|
|
361
|
+
showSection("Available Commands", icons.key);
|
|
362
|
+
console.log();
|
|
363
|
+
const commandsTable = createTable({
|
|
364
|
+
head: ["Command", "Description"],
|
|
365
|
+
colWidths: [45, 40],
|
|
366
|
+
style: "normal",
|
|
367
|
+
});
|
|
368
|
+
commandsTable.push(...KEYS_COMMAND_TABLE.map(([cmd, desc]) => [cmd, chalk.gray(desc)]));
|
|
369
|
+
console.log(commandsTable.toString());
|
|
370
|
+
console.log();
|
|
371
|
+
showSection("Examples", icons.fire);
|
|
372
|
+
console.log();
|
|
373
|
+
console.log(chalk.white.bold(" Add API keys"));
|
|
374
|
+
console.log(chalk.gray(" (Interactive prompts: name, region, API key)"));
|
|
375
|
+
console.log();
|
|
376
|
+
console.log(chalk.cyan(` ${COMMAND_NAME} keys add`));
|
|
377
|
+
console.log();
|
|
378
|
+
console.log(chalk.white.bold(" Manage your keys"));
|
|
379
|
+
console.log();
|
|
380
|
+
console.log(chalk.cyan(` ${COMMAND_NAME} keys list`));
|
|
381
|
+
console.log(chalk.cyan(` ${COMMAND_NAME} keys add`));
|
|
382
|
+
console.log(chalk.cyan(` ${COMMAND_NAME} keys update production`));
|
|
383
|
+
console.log(chalk.cyan(` ${COMMAND_NAME} keys activate production`));
|
|
384
|
+
console.log(chalk.cyan(` ${COMMAND_NAME} keys delete 3f5d2b07-5b1c-4e86-8f3c-9a1b2c3d4e5f`));
|
|
385
|
+
console.log();
|
|
386
|
+
showBox("Important Notes", [
|
|
387
|
+
"API keys are prompted interactively - never stored in shell history",
|
|
388
|
+
"Each API key is tightly coupled to its endpoint (US/EU/custom)",
|
|
389
|
+
getKeyStorageMessage(),
|
|
390
|
+
"The active key (● ACTIVE) is what your CLI commands will use",
|
|
391
|
+
], { icon: icons.bulb, theme: "info", padding: 1 });
|
|
392
|
+
break;
|
|
393
|
+
}
|
|
394
|
+
}
|
|
395
|
+
}
|
|
396
|
+
//# sourceMappingURL=keys-cli.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"keys-cli.js","sourceRoot":"","sources":["../src/keys-cli.ts"],"names":[],"mappings":"AAAA,+BAA+B;AAC/B,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,QAAQ,MAAM,UAAU,CAAC;AAGhC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC3E,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EACL,WAAW,EACX,KAAK,EACL,SAAS,EACT,OAAO,EACP,SAAS,EACT,QAAQ,EACR,WAAW,EACX,WAAW,GACZ,MAAM,eAAe,CAAC;AAEvB,SAAS,iBAAiB,CAAC,IAAoB;IAC7C,MAAM,CAAC,GAAG,EAAE,CAAC;IACb,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,OAAO,CAAC,GAAG,CAAC,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACrE,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IAC3D,OAAO,CAAC,GAAG,CAAC,KAAK,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,SAAS,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;AACzE,CAAC;AAED,KAAK,UAAU,aAAa,CAC1B,UAAsB,EACtB,QAA4B,EAC5B,WAAmB;IAEnB,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,SAAS,CAAC,wBAAwB,CAAC,CAAC;QACpC,OAAO,CAAC,GAAG,CAAC,YAAY,YAAY,SAAS,WAAW,eAAe,CAAC,CAAC;QACzE,QAAQ,CAAC,gDAAgD,CAAC,CAAC;QAC3D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,QAAQ,EAAE,CAAC;IACzC,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CACnB,CAAC,CAAiB,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,CAChE,CAAC;IAEF,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,SAAS,CAAC,kBAAkB,QAAQ,EAAE,CAAC,CAAC;QACxC,QAAQ,CAAC,QAAQ,YAAY,8BAA8B,CAAC,CAAC;QAC7D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAED,KAAK,UAAU,kBAAkB,CAC/B,UAAsB,EACtB,cAAqC;IAErC,MAAM,OAAO,GAAG,MAAM,UAAU,EAAE,CAAC;IAEnC,IAAI,QAAQ,GAAG,cAAc,KAAK,IAAI,CAAC;IACvC,IAAI,WAAW,GAAG,cAAc,CAAC;IAEjC,MAAM,gBAAgB,GAAG,KAAK,EAC5B,GAAmB,EACM,EAAE;QAC3B,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC;YACjB,WAAW,CAAC,IAAI,GAAG,CAAC,IAAI,8BAA8B,CAAC,CAAC;YACxD,OAAO,GAAG,CAAC;QACb,CAAC;QAED,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;YAC5C;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,aAAa;gBACnB,OAAO,EAAE,QAAQ,GAAG,CAAC,IAAI,+BAA+B;gBACxD,OAAO,EAAE,CAAC,QAAQ;aACnB;SACF,CAAC,CAAC;QACH,MAAM,cAAc,GAAG,WAAsB,CAAC;QAE9C,IAAI,cAAc,EAAE,CAAC;YACnB,MAAM,UAAU,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACtC,WAAW,CAAC,IAAI,GAAG,CAAC,IAAI,8BAA8B,CAAC,CAAC;YACxD,MAAM,UAAU,GAAG,MAAM,UAAU,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC3D,OAAO,UAAU,IAAI,GAAG,CAAC;QAC3B,CAAC;QAED,QAAQ,CACN,yCAAyC,YAAY,mBAAmB,GAAG,CAAC,IAAI,qBAAqB,CACtG,CAAC;QACF,OAAO,GAAG,CAAC;IACb,CAAC,CAAC;IAEF,4BAA4B;IAC5B,IAAI,MAAc,CAAC;IACnB,IAAI,QAAQ,IAAI,WAAW,EAAE,CAAC;QAC5B,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;YAC7C;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,cAAc;gBACpB,OAAO,EAAE,2BAA2B;gBACpC,OAAO,EAAE,KAAK;aACf;SACF,CAAC,CAAC;QAEH,IAAI,YAAY,EAAE,CAAC;YACjB,MAAM,GAAG,MAAM,eAAe,CAAC,kCAAkC,CAAC,CAAC;QACrE,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC;YAChD,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;gBACzD,IAAI,CAAC,QAAQ,EAAE,CAAC;oBACd,OAAO,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC;oBACpD,SAAS,CAAC,6CAA6C,CAAC,CAAC;oBACzD,QAAQ,CAAC,0CAA0C,CAAC,CAAC;oBACrD,MAAM,GAAG,MAAM,eAAe,CAAC,8BAA8B,CAAC,CAAC;gBACjE,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;oBAC1C,MAAM,GAAG,QAAQ,CAAC;gBACpB,CAAC;YACH,CAAC;YAAC,OAAO,KAAc,EAAE,CAAC;gBACxB,OAAO,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC;gBACpD,SAAS,CACP,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,sBAAsB,CAChE,CAAC;gBACF,QAAQ,CAAC,0CAA0C,CAAC,CAAC;gBACrD,MAAM,GAAG,MAAM,eAAe,CAAC,8BAA8B,CAAC,CAAC;YACjE,CAAC;QACH,CAAC;IACH,CAAC;SAAM,CAAC;QACN,MAAM,GAAG,MAAM,eAAe,CAAC,8BAA8B,CAAC,CAAC;IACjE,CAAC;IAED,mDAAmD;IACnD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,oBAAoB,GAAG,MAAM,UAAU,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QAErE,IAAI,oBAAoB,EAAE,CAAC;YACzB,QAAQ,CACN,sCAAsC,oBAAoB,CAAC,IAAI,GAAG,CACnE,CAAC;YAEF,iBAAiB,CAAC,oBAAoB,CAAC,CAAC;YACxC,OAAO,CAAC,GAAG,EAAE,CAAC;YAEd,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;gBAC/C;oBACE,IAAI,EAAE,SAAS;oBACf,IAAI,EAAE,gBAAgB;oBACtB,OAAO,EAAE,oCAAoC;oBAC7C,OAAO,EAAE,IAAI;iBACd;aACF,CAAC,CAAC;YAEH,IAAI,CAAC,cAAc,EAAE,CAAC;gBACpB,MAAM,gBAAgB,CAAC,oBAAoB,CAAC,CAAC;gBAC7C,OAAO,oBAAoB,CAAC,EAAE,CAAC;YACjC,CAAC;YAED,QAAQ,GAAG,IAAI,CAAC;YAChB,WAAW,GAAG,oBAAoB,CAAC;QACrC,CAAC;IACH,CAAC;IAED,8BAA8B;IAC9B,IAAI,OAAe,CAAC;IACpB,IAAI,CAAC;QACH,OAAO,GAAG,MAAM,wBAAwB,CACtC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,SAAS,CAC3E,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,QAAQ,IAAI,WAAW,IAAI,WAAW,CAAC,OAAO,KAAK,OAAO,EAAE,CAAC;QAC/D,QAAQ,CAAC,0BAA0B,WAAW,CAAC,OAAO,OAAO,OAAO,EAAE,CAAC,CAAC;IAC1E,CAAC;IAED,0BAA0B;IAC1B,MAAM,eAAe,GAAG,KAAK,EAAE,KAAa,EAA0B,EAAE;QACtE,IAAI,CAAC,KAAK;YAAE,OAAO,kBAAkB,CAAC;QACtC,IAAI,KAAK,CAAC,MAAM,GAAG,EAAE;YAAE,OAAO,oCAAoC,CAAC;QACnE,IAAI,KAAK,KAAK,WAAW,EAAE,IAAI,EAAE,CAAC;YAChC,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,QAAQ,EAAE,CAAC;YACzC,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;gBACvC,OAAO,gBAAgB,KAAK,mDAAmD,CAAC;YAClF,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;IAEF,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;QACrC;YACE,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,QAAQ;gBACf,CAAC,CAAC,wDAAwD;gBAC1D,CAAC,CAAC,gCAAgC;YACpC,OAAO,EAAE,WAAW,EAAE,IAAI,IAAI,SAAS;YACvC,QAAQ,EAAE,eAAe;SAC1B;KACF,CAAC,CAAC;IAEH,uBAAuB;IACvB,OAAO,CAAC,KAAK,CACX,QAAQ,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,6BAA6B,CACjE,CAAC;IACF,IAAI,CAAC;QACH,MAAM,EAAE,GACN,QAAQ,IAAI,WAAW;YACrB,CAAC,CAAC,MAAM,UAAU,CAAC,SAAS,CACxB,WAAW,CAAC,EAAE,EACd,IAAc,EACd,MAAM,EACN,OAAO,CACR;YACH,CAAC,CAAC,MAAM,UAAU,CAAC,MAAM,CAAC,IAAc,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;QAE/D,OAAO,CAAC,OAAO,CACb,QAAQ;YACN,CAAC,CAAC,+BAA+B;YACjC,CAAC,CAAC,8BAA8B,CACnC,CAAC;QAEF,MAAM,CAAC,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,GAAG,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CAAC,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAc,CAAC,EAAE,CAAC,CAAC;QAC1E,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACtD,OAAO,CAAC,GAAG,CAAC,KAAK,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,SAAS,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAClE,OAAO,CAAC,GAAG,EAAE,CAAC;QACd,WAAW,CACT,QAAQ;YACN,CAAC,CAAC,mDAAmD;YACrD,CAAC,CAAC,yDAAyD,CAC9D,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;QACrD,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,gBAAgB,CAAC,QAAQ,CAAC,CAAC;QACnC,CAAC;aAAM,CAAC;YACN,SAAS,CAAC,yCAAyC,CAAC,CAAC;YACrD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,OAAO,EAAE,CAAC;IACZ,CAAC;IAAC,OAAO,KAAc,EAAE,CAAC;QACxB,OAAO,CAAC,IAAI,CACV,QAAQ,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC,CAAC,uBAAuB,CAChE,CAAC;QACF,MAAM,GAAG,GACP,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC;QAC3E,SAAS,CAAC,GAAG,CAAC,CAAC;QACf,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED,0CAA0C;AAC1C,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,IAAc;IACpD,MAAM,UAAU,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IAC3B,MAAM,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;IAEnE,MAAM,OAAO,GAAG,MAAM,UAAU,EAAE,CAAC;IACnC,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;IAEnC,IAAI,CAAC;QACH,MAAM,UAAU,CAAC,UAAU,EAAE,CAAC;IAChC,CAAC;IAAC,OAAO,KAAc,EAAE,CAAC;QACxB,SAAS,CACP,qCAAqC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,CAChG,CAAC;QACF,IAAI,SAAS,EAAE;YAAE,OAAO;QACxB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,QAAQ,UAAU,EAAE,CAAC;QACnB,KAAK,MAAM,CAAC,CAAC,CAAC;YACZ,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,QAAQ,EAAE,CAAC;YAEzC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACtB,OAAO,CACL,mBAAmB,EACnB;oBACE,KAAK,CAAC,IAAI,CAAC,qCAAqC,CAAC;oBACjD,EAAE;oBACF,KAAK,CAAC,IAAI,CAAC,yBAAyB,CAAC;oBACrC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,YAAY,WAAW,CAAC;iBAC/C,EACD,EAAE,IAAI,EAAE,KAAK,CAAC,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,CACnC,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,WAAW,CAAC,iBAAiB,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;gBAC1C,OAAO,CAAC,GAAG,EAAE,CAAC;gBAEd,MAAM,KAAK,GAAG,WAAW,CAAC;oBACxB,IAAI,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,CAAC;oBACtD,KAAK,EAAE,QAAQ;iBAChB,CAAC,CAAC;gBAEH,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;oBACvB,MAAM,WAAW,GAAG,GAAG,CAAC,QAAQ;wBAC9B,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC;wBACjC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;oBAE3B,MAAM,UAAU,GAAG,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC;oBAC9C,MAAM,aAAa,GAAG,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC,kBAAkB,CAC3D,OAAO,EACP,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,CACpD,CAAC;oBAEF,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;oBAErD,KAAK,CAAC,IAAI,CAAC;wBACT,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;wBAC1B,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;wBAClB,SAAS,EAAE,CAAC,QAAQ,CAAC;wBACrB,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC;wBACzB,WAAW;qBACZ,CAAC,CAAC;gBACL,CAAC;gBAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;gBAC9B,OAAO,CAAC,GAAG,EAAE,CAAC;gBAEd,OAAO,CACL,gBAAgB,EAChB;oBACE,GAAG,kBAAkB,CAAC,GAAG,CACvB,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC5D;oBACD,EAAE;oBACF,oBAAoB,EAAE;iBACvB,EACD,EAAE,IAAI,EAAE,KAAK,CAAC,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,CAC/C,CAAC;YACJ,CAAC;YACD,MAAM;QACR,CAAC;QAED,KAAK,KAAK,CAAC,CAAC,CAAC;YACX,MAAM,kBAAkB,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;YAC3C,MAAM;QACR,CAAC;QAED,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,MAAM,WAAW,GAAG,MAAM,aAAa,CACrC,UAAU,EACV,cAAc,CAAC,CAAC,CAAC,EACjB,QAAQ,CACT,CAAC;YACF,MAAM,kBAAkB,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;YAClD,MAAM;QACR,CAAC;QAED,KAAK,UAAU,CAAC,CAAC,CAAC;YAChB,MAAM,aAAa,GAAG,MAAM,aAAa,CACvC,UAAU,EACV,cAAc,CAAC,CAAC,CAAC,EACjB,UAAU,CACX,CAAC;YAEF,OAAO,CAAC,KAAK,CAAC,mBAAmB,aAAa,CAAC,IAAI,MAAM,CAAC,CAAC;YAE3D,IAAI,CAAC;gBACH,MAAM,UAAU,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;YAC5C,CAAC;YAAC,OAAO,KAAc,EAAE,CAAC;gBACxB,OAAO,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;gBACvC,SAAS,CACP,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,sBAAsB,CAChE,CAAC;gBACF,QAAQ,CACN,uDAAuD,YAAY,iBAAiB,aAAa,CAAC,IAAI,GAAG,CAC1G,CAAC;gBACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YAED,MAAM,UAAU,CAAC,YAAY,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;YAChD,OAAO,CAAC,IAAI,EAAE,CAAC;YAEf,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,oBAAoB,EAAE,CAAC;YACrD,IAAI,IAAI,EAAE,CAAC;gBACT,WAAW,CAAC,gBAAgB,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC;gBAC1C,OAAO,CAAC,GAAG,EAAE,CAAC;gBACd,iBAAiB,CAAC,IAAI,CAAC,CAAC;gBACxB,OAAO,CAAC,GAAG,EAAE,CAAC;YAChB,CAAC;iBAAM,CAAC;gBACN,WAAW,CAAC,IAAI,aAAa,CAAC,IAAI,8BAA8B,CAAC,CAAC;YACpE,CAAC;YACD,MAAM;QACR,CAAC;QAED,KAAK,YAAY,CAAC,CAAC,CAAC;YAClB,IAAI,CAAC,CAAC,MAAM,UAAU,CAAC,YAAY,EAAE,CAAC,EAAE,CAAC;gBACvC,QAAQ,CAAC,6BAA6B,CAAC,CAAC;gBACxC,MAAM;YACR,CAAC;YACD,MAAM,UAAU,GAAG,MAAM,UAAU,CAAC,oBAAoB,EAAE,CAAC;YAC3D,MAAM,UAAU,CAAC,iBAAiB,EAAE,CAAC;YACrC,WAAW,CACT,gBAAgB,UAAU,EAAE,IAAI,IAAI,YAAY,6EAA6E,CAC9H,CAAC;YACF,MAAM;QACR,CAAC;QAED,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,MAAM,WAAW,GAAG,MAAM,aAAa,CACrC,UAAU,EACV,cAAc,CAAC,CAAC,CAAC,EACjB,QAAQ,CACT,CAAC;YAEF,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,QAAQ,EAAE,CAAC;YAC5C,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,WAAW,CAAC,EAAE,CAAC,CAAC;YAEjE,IAAI,WAAW,CAAC,QAAQ,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACnD,QAAQ,CAAC,kDAAkD,CAAC,CAAC;YAC/D,CAAC;iBAAM,IAAI,WAAW,CAAC,QAAQ,EAAE,CAAC;gBAChC,QAAQ,CAAC,0BAA0B,CAAC,CAAC;YACvC,CAAC;YAED,IAAI,aAAa,GAAG,KAAK,CAAC;YAC1B,IAAI,SAAS,EAAE,EAAE,CAAC;gBAChB,aAAa,GAAG,IAAI,CAAC;YACvB,CAAC;iBAAM,CAAC;gBACN,CAAC,EAAE,aAAa,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;oBACzC;wBACE,IAAI,EAAE,SAAS;wBACf,IAAI,EAAE,eAAe;wBACrB,OAAO,EAAE,2BAA2B,WAAW,CAAC,IAAI,IAAI;wBACxD,OAAO,EAAE,KAAK;qBACf;iBACF,CAAC,CAAC,CAAC;YACN,CAAC;YAED,IAAI,CAAC,aAAa,EAAE,CAAC;gBACnB,QAAQ,CAAC,qBAAqB,CAAC,CAAC;gBAChC,OAAO;YACT,CAAC;YAED,IAAI,WAAW,CAAC,QAAQ,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACjD,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;oBAC7C;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,cAAc;wBACpB,OAAO,EAAE,0BAA0B;wBACnC,OAAO,EAAE;4BACP,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gCACvB,IAAI,EAAE,GAAG,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,OAAO,GAAG;gCAChC,KAAK,EAAE,CAAC,CAAC,EAAE;6BACZ,CAAC,CAAC;4BACH,EAAE,IAAI,EAAE,wBAAwB,EAAE,KAAK,EAAE,MAAM,EAAE;yBAClD;qBACF;iBACF,CAAC,CAAC;gBACH,IAAI,YAAY,KAAK,MAAM,EAAE,CAAC;oBAC5B,MAAM,UAAU,CAAC,YAAY,CAAC,YAAsB,CAAC,CAAC;oBACtD,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,YAAY,CAAC,CAAC;oBAC/D,IAAI,SAAS,EAAE,CAAC;wBACd,WAAW,CAAC,gBAAgB,SAAS,CAAC,IAAI,GAAG,CAAC,CAAC;oBACjD,CAAC;gBACH,CAAC;YACH,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,UAAU,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;gBAC3C,WAAW,CAAC,sBAAsB,CAAC,CAAC;YACtC,CAAC;YAAC,OAAO,KAAc,EAAE,CAAC;gBACxB,SAAS,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC;gBACpE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,MAAM;QACR,CAAC;QAED,OAAO,CAAC,CAAC,CAAC;YACR,WAAW,CAAC,oBAAoB,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;YAC7C,OAAO,CAAC,GAAG,EAAE,CAAC;YAEd,MAAM,aAAa,GAAG,WAAW,CAAC;gBAChC,IAAI,EAAE,CAAC,SAAS,EAAE,aAAa,CAAC;gBAChC,SAAS,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;gBACnB,KAAK,EAAE,QAAQ;aAChB,CAAC,CAAC;YAEH,aAAa,CAAC,IAAI,CAChB,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CACpE,CAAC;YAEF,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,CAAC;YACtC,OAAO,CAAC,GAAG,EAAE,CAAC;YAEd,WAAW,CAAC,UAAU,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;YACpC,OAAO,CAAC,GAAG,EAAE,CAAC;YACd,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC;YAChD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAC,CAAC;YAC1E,OAAO,CAAC,GAAG,EAAE,CAAC;YACd,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,YAAY,WAAW,CAAC,CAAC,CAAC;YACxD,OAAO,CAAC,GAAG,EAAE,CAAC;YACd,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC;YACpD,OAAO,CAAC,GAAG,EAAE,CAAC;YACd,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,YAAY,YAAY,CAAC,CAAC,CAAC;YACzD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,YAAY,WAAW,CAAC,CAAC,CAAC;YACxD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,YAAY,yBAAyB,CAAC,CAAC,CAAC;YACtE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,YAAY,2BAA2B,CAAC,CAAC,CAAC;YACxE,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,IAAI,CACR,OAAO,YAAY,mDAAmD,CACvE,CACF,CAAC;YACF,OAAO,CAAC,GAAG,EAAE,CAAC;YAEd,OAAO,CACL,iBAAiB,EACjB;gBACE,qEAAqE;gBACrE,gEAAgE;gBAChE,oBAAoB,EAAE;gBACtB,8DAA8D;aAC/D,EACD,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,CAChD,CAAC;YACF,MAAM;QACR,CAAC;IACH,CAAC;AACH,CAAC"}
|
package/dist/output.d.ts
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export declare const OUTPUT_FORMATS: readonly ["json", "pretty", "table"];
|
|
2
|
+
export type OutputFormat = (typeof OUTPUT_FORMATS)[number];
|
|
3
|
+
export declare function getDefaultFormat(): OutputFormat;
|
|
4
|
+
export declare function formatOutput(data: unknown, format: OutputFormat, columns?: string[]): string;
|
|
5
|
+
//# sourceMappingURL=output.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"output.d.ts","sourceRoot":"","sources":["../src/output.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,cAAc,sCAAuC,CAAC;AACnE,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC;AAE3D,wBAAgB,gBAAgB,IAAI,YAAY,CAE/C;AAED,wBAAgB,YAAY,CAC1B,IAAI,EAAE,OAAO,EACb,MAAM,EAAE,YAAY,EACpB,OAAO,CAAC,EAAE,MAAM,EAAE,GACjB,MAAM,CAaR"}
|
package/dist/output.js
ADDED
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
import Table from "cli-table3";
|
|
2
|
+
import { theme } from "./utils/theme.js";
|
|
3
|
+
export const OUTPUT_FORMATS = ["json", "pretty", "table"];
|
|
4
|
+
export function getDefaultFormat() {
|
|
5
|
+
return process.stdout.isTTY ? "pretty" : "json";
|
|
6
|
+
}
|
|
7
|
+
export function formatOutput(data, format, columns) {
|
|
8
|
+
switch (format) {
|
|
9
|
+
case "json":
|
|
10
|
+
return JSON.stringify(data, null, 2);
|
|
11
|
+
case "pretty":
|
|
12
|
+
return colorizeJson(JSON.stringify(data, null, 2));
|
|
13
|
+
case "table":
|
|
14
|
+
return formatTable(data, columns);
|
|
15
|
+
default: {
|
|
16
|
+
const _exhaustive = format;
|
|
17
|
+
throw new Error(`Unknown format: ${_exhaustive}`);
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
function colorizeJson(json) {
|
|
22
|
+
return json
|
|
23
|
+
.replace(/("(?:[^"\\]|\\.)*")\s*:/g, (_match, key) => `${theme.key(key)}:`)
|
|
24
|
+
.replace(/:\s*("(?:[^"\\]|\\.)*")/g, (_match, value) => `: ${theme.value(value)}`)
|
|
25
|
+
.replace(/:\s*(\d+(?:\.\d+)?)/g, (_match, num) => `: ${theme.number(num)}`)
|
|
26
|
+
.replace(/:\s*(true|false)/g, (_match, bool) => `: ${theme.boolean(bool)}`)
|
|
27
|
+
.replace(/:\s*(null)/g, () => `: ${theme.muted("null")}`)
|
|
28
|
+
.replace(/(?<=[[,])\s*("(?:[^"\\]|\\.)*")/g, (_match, str) => ` ${theme.value(str)}`)
|
|
29
|
+
.replace(/(?<=[[,])\s*(\d+(?:\.\d+)?)\b/g, (_match, num) => ` ${theme.number(num)}`);
|
|
30
|
+
}
|
|
31
|
+
function findTableData(data) {
|
|
32
|
+
if (Array.isArray(data))
|
|
33
|
+
return data;
|
|
34
|
+
if (data && typeof data === "object") {
|
|
35
|
+
const entries = Object.entries(data);
|
|
36
|
+
for (const [, value] of entries) {
|
|
37
|
+
if (Array.isArray(value) && value.length > 0) {
|
|
38
|
+
return value;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
return null;
|
|
43
|
+
}
|
|
44
|
+
function formatTable(data, columns) {
|
|
45
|
+
if (data === null || data === undefined) {
|
|
46
|
+
return theme.muted("(empty)");
|
|
47
|
+
}
|
|
48
|
+
const arrayData = findTableData(data);
|
|
49
|
+
if (arrayData && arrayData.length > 0) {
|
|
50
|
+
const firstItem = arrayData[0];
|
|
51
|
+
if (firstItem && typeof firstItem === "object") {
|
|
52
|
+
let selectedColumns;
|
|
53
|
+
if (columns && columns.length > 0) {
|
|
54
|
+
selectedColumns = columns;
|
|
55
|
+
}
|
|
56
|
+
else {
|
|
57
|
+
const allKeys = new Set();
|
|
58
|
+
for (const item of arrayData) {
|
|
59
|
+
if (item && typeof item === "object") {
|
|
60
|
+
Object.keys(item).forEach((k) => allKeys.add(k));
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
selectedColumns = [...allKeys];
|
|
64
|
+
}
|
|
65
|
+
const table = new Table({
|
|
66
|
+
head: selectedColumns.map((c) => theme.bold(c)),
|
|
67
|
+
wordWrap: true,
|
|
68
|
+
});
|
|
69
|
+
for (const item of arrayData) {
|
|
70
|
+
const obj = (item ?? {});
|
|
71
|
+
table.push(selectedColumns.map((col) => formatCellValue(obj[col])));
|
|
72
|
+
}
|
|
73
|
+
return table.toString();
|
|
74
|
+
}
|
|
75
|
+
const table = new Table({ head: [theme.bold("Value")] });
|
|
76
|
+
for (const item of arrayData) {
|
|
77
|
+
table.push([formatCellValue(item)]);
|
|
78
|
+
}
|
|
79
|
+
return table.toString();
|
|
80
|
+
}
|
|
81
|
+
if (data && typeof data === "object" && !Array.isArray(data)) {
|
|
82
|
+
const entries = Object.entries(data);
|
|
83
|
+
const filteredEntries = columns && columns.length > 0
|
|
84
|
+
? entries.filter(([key]) => columns.includes(key))
|
|
85
|
+
: entries;
|
|
86
|
+
const table = new Table({
|
|
87
|
+
head: [theme.bold("Key"), theme.bold("Value")],
|
|
88
|
+
});
|
|
89
|
+
for (const [key, value] of filteredEntries) {
|
|
90
|
+
table.push([theme.key(key), formatCellValue(value)]);
|
|
91
|
+
}
|
|
92
|
+
return table.toString();
|
|
93
|
+
}
|
|
94
|
+
return String(data);
|
|
95
|
+
}
|
|
96
|
+
function formatCellValue(value) {
|
|
97
|
+
if (value === null || value === undefined)
|
|
98
|
+
return theme.muted("null");
|
|
99
|
+
if (typeof value === "object") {
|
|
100
|
+
return JSON.stringify(value);
|
|
101
|
+
}
|
|
102
|
+
return String(value);
|
|
103
|
+
}
|
|
104
|
+
//# sourceMappingURL=output.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"output.js","sourceRoot":"","sources":["../src/output.ts"],"names":[],"mappings":"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"}
|
package/dist/parser.d.ts
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import type { CliTransform, CommandDefinition } from "./commands/types.js";
|
|
3
|
+
/** Structured description of a command's fields for help text and docs. */
|
|
4
|
+
export interface FieldInfo {
|
|
5
|
+
name: string;
|
|
6
|
+
type: string;
|
|
7
|
+
required: boolean;
|
|
8
|
+
description: string;
|
|
9
|
+
defaultValue?: string | number | boolean | undefined;
|
|
10
|
+
isPositional: boolean;
|
|
11
|
+
isJsonFallback: boolean;
|
|
12
|
+
isTransform: boolean;
|
|
13
|
+
enumValues?: string[] | undefined;
|
|
14
|
+
objectKeys?: string[] | undefined;
|
|
15
|
+
}
|
|
16
|
+
/** Describe all fields of a command — single source of truth for --help and COMMANDS.md. */
|
|
17
|
+
export declare function describeCommand(cmd: CommandDefinition): FieldInfo[];
|
|
18
|
+
export interface BuiltParser {
|
|
19
|
+
parse: (argv: string[]) => Record<string, unknown>;
|
|
20
|
+
showHelp: () => void;
|
|
21
|
+
jsonFallbackFields: string[];
|
|
22
|
+
}
|
|
23
|
+
/** Build a zod-opts parser from describeCommand metadata. */
|
|
24
|
+
export declare function buildParser(schema: z.ZodType, commandName: string, positionalArgs?: string[], cliTransforms?: Record<string, CliTransform>): BuiltParser;
|
|
25
|
+
export declare function parseCommand(schema: z.ZodType, commandName: string, argv: string[], positionalArgs?: string[], cliTransforms?: Record<string, CliTransform>): Promise<Record<string, unknown>>;
|
|
26
|
+
//# sourceMappingURL=parser.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAuF3E,2EAA2E;AAC3E,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC;IACrD,YAAY,EAAE,OAAO,CAAC;IACtB,cAAc,EAAE,OAAO,CAAC;IACxB,WAAW,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IAClC,UAAU,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;CACnC;AAED,4FAA4F;AAC5F,wBAAgB,eAAe,CAAC,GAAG,EAAE,iBAAiB,GAAG,SAAS,EAAE,CAkEnE;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnD,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,kBAAkB,EAAE,MAAM,EAAE,CAAC;CAC9B;AAED,6DAA6D;AAC7D,wBAAgB,WAAW,CACzB,MAAM,EAAE,CAAC,CAAC,OAAO,EACjB,WAAW,EAAE,MAAM,EACnB,cAAc,CAAC,EAAE,MAAM,EAAE,EACzB,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,GAC3C,WAAW,CAsEb;AA6BD,wBAAsB,YAAY,CAChC,MAAM,EAAE,CAAC,CAAC,OAAO,EACjB,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,MAAM,EAAE,EACd,cAAc,CAAC,EAAE,MAAM,EAAE,EACzB,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,GAC3C,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAuDlC"}
|