@defai.digital/ax-cli 3.6.0 → 3.6.1

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 (104) hide show
  1. package/.ax-cli/checkpoints/2025-11-20/checkpoint-11e9e0ba-c39d-4fd2-aa77-bc818811c921.json +69 -0
  2. package/.ax-cli/checkpoints/2025-11-20/checkpoint-2b260b98-b418-4c7c-9694-e2b94967e662.json +24 -0
  3. package/.ax-cli/checkpoints/2025-11-20/checkpoint-7e03601e-e8ab-4cd7-9841-a74b66adf78f.json +69 -0
  4. package/.ax-cli/checkpoints/2025-11-20/checkpoint-7f9c6562-771f-4fd0-adcf-9e7e9ac34ae8.json +44 -0
  5. package/.ax-cli/checkpoints/2025-11-20/checkpoint-e1ebe666-4c3a-4367-ba5c-27fe512a9c70.json +24 -0
  6. package/.ax-cli/checkpoints/2025-11-21/checkpoint-15743e7d-430c-4d76-b6fc-955d7a5c250c.json +44 -0
  7. package/.ax-cli/checkpoints/2025-11-21/checkpoint-25cf7679-0b3f-4988-83d7-704548fbba91.json +69 -0
  8. package/.ax-cli/checkpoints/2025-11-21/checkpoint-54aedbac-6db0-464e-8ebb-dbb3979e6dca.json +24 -0
  9. package/.ax-cli/checkpoints/2025-11-21/checkpoint-7658aed8-fe5d-4222-903f-1a7c63717ea7.json +24 -0
  10. package/.ax-cli/checkpoints/2025-11-21/checkpoint-c9c13497-40dc-4294-a327-6a5fc854eaa1.json +69 -0
  11. package/.ax-cli/memory.json +8 -1
  12. package/README.md +423 -89
  13. package/ax.config.json +333 -0
  14. package/dist/analyzers/code-smells/detectors/data-clumps-detector.js +7 -9
  15. package/dist/analyzers/code-smells/detectors/data-clumps-detector.js.map +1 -1
  16. package/dist/analyzers/code-smells/detectors/dead-code-detector.js +1 -1
  17. package/dist/analyzers/code-smells/detectors/dead-code-detector.js.map +1 -1
  18. package/dist/analyzers/code-smells/detectors/duplicate-code-detector.js +22 -10
  19. package/dist/analyzers/code-smells/detectors/duplicate-code-detector.js.map +1 -1
  20. package/dist/analyzers/code-smells/detectors/feature-envy-detector.js +1 -1
  21. package/dist/analyzers/code-smells/detectors/feature-envy-detector.js.map +1 -1
  22. package/dist/analyzers/code-smells/detectors/inappropriate-intimacy-detector.js +1 -1
  23. package/dist/analyzers/code-smells/detectors/inappropriate-intimacy-detector.js.map +1 -1
  24. package/dist/analyzers/code-smells/detectors/large-class-detector.js +4 -1
  25. package/dist/analyzers/code-smells/detectors/large-class-detector.js.map +1 -1
  26. package/dist/analyzers/code-smells/detectors/long-method-detector.js +4 -1
  27. package/dist/analyzers/code-smells/detectors/long-method-detector.js.map +1 -1
  28. package/dist/analyzers/code-smells/detectors/long-parameter-list-detector.js +4 -1
  29. package/dist/analyzers/code-smells/detectors/long-parameter-list-detector.js.map +1 -1
  30. package/dist/analyzers/code-smells/detectors/magic-numbers-detector.js +4 -5
  31. package/dist/analyzers/code-smells/detectors/magic-numbers-detector.js.map +1 -1
  32. package/dist/analyzers/code-smells/detectors/nested-conditionals-detector.js +4 -1
  33. package/dist/analyzers/code-smells/detectors/nested-conditionals-detector.js.map +1 -1
  34. package/dist/hooks/use-chat-reducer.d.ts +61 -0
  35. package/dist/hooks/use-chat-reducer.js +118 -0
  36. package/dist/hooks/use-chat-reducer.js.map +1 -0
  37. package/dist/hooks/use-enhanced-input.d.ts +40 -0
  38. package/dist/hooks/use-enhanced-input.js +249 -0
  39. package/dist/hooks/use-enhanced-input.js.map +1 -0
  40. package/dist/hooks/use-input-handler.d.ts +46 -0
  41. package/dist/hooks/use-input-handler.js +1430 -0
  42. package/dist/hooks/use-input-handler.js.map +1 -0
  43. package/dist/hooks/use-input-history.d.ts +9 -0
  44. package/dist/hooks/use-input-history.js +112 -0
  45. package/dist/hooks/use-input-history.js.map +1 -0
  46. package/dist/index.js +0 -0
  47. package/dist/index.js.bak +664 -0
  48. package/dist/schemas/settings-schemas.d.ts +23 -0
  49. package/dist/schemas/settings-schemas.js +17 -0
  50. package/dist/schemas/settings-schemas.js.map +1 -1
  51. package/dist/tools/web-search/index.d.ts +0 -2
  52. package/dist/tools/web-search/index.js +0 -2
  53. package/dist/tools/web-search/index.js.map +1 -1
  54. package/dist/tools/web-search/router.d.ts +0 -2
  55. package/dist/tools/web-search/router.js +2 -37
  56. package/dist/tools/web-search/router.js.map +1 -1
  57. package/dist/tools/web-search/web-search-tool.js +2 -12
  58. package/dist/tools/web-search/web-search-tool.js.map +1 -1
  59. package/dist/ui/components/chat-input.d.ts +4 -1
  60. package/dist/ui/components/chat-input.js +133 -52
  61. package/dist/ui/components/chat-input.js.map +1 -1
  62. package/dist/ui/components/chat-interface.js +2 -2
  63. package/dist/ui/components/chat-interface.js.map +1 -1
  64. package/dist/ui/components/keyboard-hints.js +2 -0
  65. package/dist/ui/components/keyboard-hints.js.map +1 -1
  66. package/dist/ui/components/status-bar.js +1 -11
  67. package/dist/ui/components/status-bar.js.map +1 -1
  68. package/dist/ui/components/welcome-panel.js +4 -0
  69. package/dist/ui/components/welcome-panel.js.map +1 -1
  70. package/dist/ui/hooks/use-enhanced-input.d.ts +4 -0
  71. package/dist/ui/hooks/use-enhanced-input.js +119 -9
  72. package/dist/ui/hooks/use-enhanced-input.js.map +1 -1
  73. package/dist/ui/hooks/use-input-handler.d.ts +2 -0
  74. package/dist/ui/hooks/use-input-handler.js +15 -3
  75. package/dist/ui/hooks/use-input-handler.js.map +1 -1
  76. package/dist/utils/audit-logger.d.ts +28 -70
  77. package/dist/utils/audit-logger.js +30 -135
  78. package/dist/utils/audit-logger.js.map +1 -1
  79. package/dist/utils/paste-collapse.d.ts +46 -0
  80. package/dist/utils/paste-collapse.js +77 -0
  81. package/dist/utils/paste-collapse.js.map +1 -0
  82. package/dist/utils/paste-utils.d.ts +99 -0
  83. package/dist/utils/paste-utils.js +239 -0
  84. package/dist/utils/paste-utils.js.map +1 -0
  85. package/dist/utils/rate-limiter.d.ts +15 -1
  86. package/dist/utils/rate-limiter.js +15 -1
  87. package/dist/utils/rate-limiter.js.map +1 -1
  88. package/package.json +3 -7
  89. package/packages/schemas/dist/index.d.ts +14 -0
  90. package/packages/schemas/dist/index.d.ts.map +1 -0
  91. package/packages/schemas/dist/index.js +19 -0
  92. package/packages/schemas/dist/index.js.map +1 -0
  93. package/packages/schemas/dist/public/core/brand-types.d.ts +308 -0
  94. package/packages/schemas/dist/public/core/brand-types.d.ts.map +1 -0
  95. package/packages/schemas/dist/public/core/brand-types.js +243 -0
  96. package/packages/schemas/dist/public/core/brand-types.js.map +1 -0
  97. package/packages/schemas/dist/public/core/enums.d.ts +227 -0
  98. package/packages/schemas/dist/public/core/enums.d.ts.map +1 -0
  99. package/packages/schemas/dist/public/core/enums.js +222 -0
  100. package/packages/schemas/dist/public/core/enums.js.map +1 -0
  101. package/packages/schemas/dist/public/core/id-types.d.ts +286 -0
  102. package/packages/schemas/dist/public/core/id-types.d.ts.map +1 -0
  103. package/packages/schemas/dist/public/core/id-types.js +136 -0
  104. package/packages/schemas/dist/public/core/id-types.js.map +1 -0
@@ -1 +1 @@
1
- {"version":3,"file":"audit-logger.js","sourceRoot":"","sources":["../../src/utils/audit-logger.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AACpC,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC;AAC3G,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;AAE7B;;GAEG;AACH,MAAM,CAAN,IAAY,aAKX;AALD,WAAY,aAAa;IACvB,8BAAa,CAAA;IACb,oCAAmB,CAAA;IACnB,gCAAe,CAAA;IACf,sCAAqB,CAAA;AACvB,CAAC,EALW,aAAa,KAAb,aAAa,QAKxB;AAED;;GAEG;AACH,MAAM,CAAN,IAAY,aAaX;AAbD,WAAY,aAAa;IACvB,kDAAiC,CAAA;IACjC,gDAA+B,CAAA;IAC/B,4CAA2B,CAAA;IAC3B,wDAAuC,CAAA;IACvC,wDAAuC,CAAA;IACvC,sCAAqB,CAAA;IACrB,0CAAyB,CAAA;IACzB,sDAAqC,CAAA;IACrC,0CAAyB,CAAA;IACzB,gDAA+B,CAAA;IAC/B,kDAAiC,CAAA;IACjC,8CAA6B,CAAA;AAC/B,CAAC,EAbW,aAAa,KAAb,aAAa,QAaxB;AAsGD;;GAEG;AACH,MAAM,cAAc,GAA6B;IAC/C,YAAY,EAAE,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,YAAY,CAAC;IACtD,aAAa,EAAE,EAAE;IACjB,YAAY,EAAE,IAAI;IAClB,cAAc,EAAE,IAAI;IACpB,WAAW,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI,EAAE,OAAO;CACvC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAM,OAAO,WAAW;IACd,MAAM,CAAC,QAAQ,GAAuB,IAAI,CAAC;IAC3C,MAAM,CAA2B;IACjC,cAAc,CAAS;IACvB,QAAQ,GAAkB,IAAI,CAAC;IAC/B,UAAU,GAAW,CAAC,CAAC;IACvB,cAAc,GAAuC,EAAE,CAAC;IAEhE,YAAoB,SAAyB,EAAE;QAC7C,IAAI,CAAC,MAAM,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,MAAM,EAAE,CAAC;QAE/C,8BAA8B;QAC9B,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC;YAC1C,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC3D,CAAC;QAED,sBAAsB;QACtB,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAE/C,8BAA8B;QAC9B,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;YAC/B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QACtC,CAAC;QAED,6CAA6C;QAC7C,IAAI,CAAC,cAAc,EAAE,CAAC;IACxB,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,WAAW,CAAC,MAAuB;QACxC,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC;YAC1B,WAAW,CAAC,QAAQ,GAAG,IAAI,WAAW,CAAC,MAAM,CAAC,CAAC;QACjD,CAAC;QACD,OAAO,WAAW,CAAC,QAAQ,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,aAAa;QAClB,WAAW,CAAC,QAAQ,GAAG,IAAI,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,eAAe,CAAC,QAAqC;QACnD,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACrC,CAAC;IAED;;OAEG;IACH,GAAG,CAAC,KAAqE;QACvE,MAAM,SAAS,GAAe;YAC5B,EAAE,EAAE,IAAI,CAAC,eAAe,EAAE;YAC1B,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,GAAG,KAAK;SACT,CAAC;QAEF,sCAAsC;QACtC,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;YAC/B,SAAS,CAAC,YAAY,GAAG,IAAI,CAAC,QAAQ,IAAI,SAAS,CAAC;YACpD,SAAS,CAAC,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;YAC/C,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC;QACjC,CAAC;QAED,oBAAoB;QACpB,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QAE3B,iCAAiC;QACjC,IAAI,IAAI,CAAC,MAAM,CAAC,YAAY,IAAI,SAAS,CAAC,QAAQ,KAAK,aAAa,CAAC,QAAQ,EAAE,CAAC;YAC9E,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QAC5B,CAAC;QAED,sCAAsC;QACtC,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAExB,IAAI,CAAC,UAAU,EAAE,CAAC;IACpB,CAAC;IAED;;OAEG;IACH,WAAW,CACT,KAAkF;QAElF,IAAI,CAAC,GAAG,CAAC;YACP,GAAG,KAAK;YACR,QAAQ,EAAE,aAAa,CAAC,QAAQ;SACjC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,UAAU,CACR,KAAkF;QAElF,IAAI,CAAC,GAAG,CAAC;YACP,GAAG,KAAK;YACR,QAAQ,EAAE,aAAa,CAAC,OAAO;SAChC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,QAAQ,CACN,KAAkF;QAElF,IAAI,CAAC,GAAG,CAAC;YACP,GAAG,KAAK;YACR,QAAQ,EAAE,aAAa,CAAC,KAAK;SAC9B,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,OAAO,CACL,KAAkF;QAElF,IAAI,CAAC,GAAG,CAAC;YACP,GAAG,KAAK;YACR,QAAQ,EAAE,aAAa,CAAC,IAAI;SAC7B,CAAC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACH,eAAe,CAAC,OAAgB;QAC9B,MAAM,IAAI,GAAG,OAAO,IAAI,IAAI,CAAC,cAAc,CAAC;QAE5C,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACtB,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,yBAAyB,CAAC,EAAE,CAAC;QAC/D,CAAC;QAED,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QAE3E,IAAI,YAAY,GAAkB,IAAI,CAAC;QAEvC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACtC,IAAI,CAAC;gBACH,MAAM,KAAK,GAAe,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;gBAE/C,iEAAiE;gBACjE,MAAM,aAAa,GAAG,KAAK,CAAC,YAAY,IAAI,IAAI,CAAC;gBACjD,IAAI,aAAa,KAAK,YAAY,EAAE,CAAC;oBACnC,MAAM,CAAC,IAAI,CACT,SAAS,KAAK,CAAC,EAAE,UAAU,CAAC,GAAG,CAAC,wBAAwB;wBACxD,2BAA2B,YAAY,UAAU,aAAa,EAAE,CACjE,CAAC;gBACJ,CAAC;gBAED,oBAAoB;gBACpB,MAAM,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;gBACjD,IAAI,KAAK,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;oBAClC,MAAM,CAAC,IAAI,CACT,SAAS,KAAK,CAAC,EAAE,UAAU,CAAC,GAAG,CAAC,oBAAoB;wBACpD,oCAAoC,CACrC,CAAC;gBACJ,CAAC;gBAED,YAAY,GAAG,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC;YACpC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,oBAAoB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,CAAC,CAAC;YAC3G,CAAC;QACH,CAAC;QAED,OAAO;YACL,KAAK,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC;YAC1B,MAAM;SACP,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,QAAQ;QAMN,OAAO;YACL,WAAW,EAAE,IAAI,CAAC,UAAU;YAC5B,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,YAAY;YACtC,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa;SACzC,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,eAAe;QACrB,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC3D,OAAO,OAAO,SAAS,IAAI,MAAM,EAAE,CAAC;IACtC,CAAC;IAED;;OAEG;IACK,aAAa,CAAC,KAAiB;QACrC,iCAAiC;QACjC,MAAM,EAAE,IAAI,EAAE,GAAG,gBAAgB,EAAE,GAAG,KAAK,CAAC;QAE5C,gEAAgE;QAChE,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC;aAC7C,MAAM,CAAC,GAAG,CAAC,EAAE,CAAE,gBAAwB,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC;aAC3D,IAAI,EAAE,CAAC;QAEV,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;YAChC,MAAM,KAAK,GAAI,gBAAwB,CAAC,GAAG,CAAC,CAAC;YAC7C,OAAO,GAAG,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3C,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAEb,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACzD,CAAC;IAED;;OAEG;IACK,UAAU,CAAC,KAAiB;QAClC,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;QAE7C,IAAI,CAAC;YACH,aAAa,CAAC,IAAI,CAAC,cAAc,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC;QAC7D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,oEAAoE;YACpE,OAAO,CAAC,KAAK,CAAC,+BAA+B,EAAE,KAAK,CAAC,CAAC;YACtD,IAAI,CAAC,aAAa,EAAE,CAAC;YACrB,aAAa,CAAC,IAAI,CAAC,cAAc,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC;QAC7D,CAAC;IACH,CAAC;IAED;;OAEG;IACK,iBAAiB;QACvB,MAAM,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa;QAClE,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,SAAS,IAAI,QAAQ,CAAC,CAAC;IAC/D,CAAC;IAED;;OAEG;IACK,YAAY;QAClB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC;YACrC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;YAC1F,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,IAAI,CAAC;YAEpC,MAAM,SAAS,GAAe,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;YAClE,OAAO,SAAS,CAAC,IAAI,IAAI,IAAI,CAAC;QAChC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED;;OAEG;IACK,gBAAgB;QACtB,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAC5C,IAAI,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;gBAC1C,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,sEAAsE;QACxE,CAAC;QAED,kCAAkC;QAClC,MAAM,YAAY,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC9C,IAAI,YAAY,KAAK,IAAI,CAAC,cAAc,EAAE,CAAC;YACzC,IAAI,CAAC,aAAa,EAAE,CAAC;QACvB,CAAC;IACH,CAAC;IAED;;OAEG;IACK,aAAa;QACnB,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC/C,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;IACtC,CAAC;IAED;;OAEG;IACK,cAAc;QACpB,IAAI,CAAC;YACH,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC;gBAC1C,OAAO;YACT,CAAC;YAED,MAAM,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;YACpD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACvB,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,aAAa,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;YAEpE,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAC3D,SAAS;gBACX,CAAC;gBAED,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;gBACtD,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;gBACjC,MAAM,GAAG,GAAG,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC;gBAEhC,IAAI,GAAG,GAAG,WAAW,EAAE,CAAC;oBACtB,UAAU,CAAC,QAAQ,CAAC,CAAC;gBACvB,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,oCAAoC,EAAE,KAAK,CAAC,CAAC;QAC7D,CAAC;IACH,CAAC;IAED;;OAEG;IACK,SAAS,CAAC,KAAiB;QACjC,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YAC3C,IAAI,CAAC;gBACH,QAAQ,CAAC,KAAK,CAAC,CAAC;YAClB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,wBAAwB,EAAE,KAAK,CAAC,CAAC;YACjD,CAAC;QACH,CAAC;IACH,CAAC;;AAGH;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,MAAuB;IACpD,OAAO,WAAW,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;AACzC,CAAC"}
1
+ {"version":3,"file":"audit-logger.js","sourceRoot":"","sources":["../../src/utils/audit-logger.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,46 @@
1
+ /**
2
+ * Paste Collapse Utility
3
+ * Handles collapsing and expanding large pasted content (Claude Code style)
4
+ */
5
+ export interface CollapsedPaste {
6
+ id: number;
7
+ fullText: string;
8
+ lineCount: number;
9
+ isCollapsed: boolean;
10
+ placeholder: string;
11
+ }
12
+ /**
13
+ * Count number of lines in text
14
+ */
15
+ export declare function countLines(text: string): number;
16
+ /**
17
+ * Check if text should be collapsed (>50 lines or >2000 chars)
18
+ */
19
+ export declare function shouldCollapsePaste(text: string): boolean;
20
+ /**
21
+ * Create a collapsed paste object
22
+ */
23
+ export declare function createCollapsedPaste(text: string): CollapsedPaste;
24
+ /**
25
+ * Replace collapsed paste placeholder with full text
26
+ */
27
+ export declare function expandPaste(input: string, paste: CollapsedPaste): string;
28
+ /**
29
+ * Replace full text with collapsed paste placeholder
30
+ */
31
+ export declare function collapsePaste(input: string, paste: CollapsedPaste): string;
32
+ /**
33
+ * Find all collapsed paste placeholders in text
34
+ */
35
+ export declare function findCollapsedPastes(input: string): RegExpMatchArray[];
36
+ /**
37
+ * Toggle between collapsed and expanded state
38
+ */
39
+ export declare function togglePasteState(input: string, paste: CollapsedPaste): {
40
+ newInput: string;
41
+ newState: boolean;
42
+ };
43
+ /**
44
+ * Reset paste counter (for testing)
45
+ */
46
+ export declare function resetPasteCounter(): void;
@@ -0,0 +1,77 @@
1
+ /**
2
+ * Paste Collapse Utility
3
+ * Handles collapsing and expanding large pasted content (Claude Code style)
4
+ */
5
+ let pasteCounter = 0;
6
+ /**
7
+ * Count number of lines in text
8
+ */
9
+ export function countLines(text) {
10
+ if (!text)
11
+ return 0;
12
+ return text.split('\n').length;
13
+ }
14
+ /**
15
+ * Check if text should be collapsed (>50 lines or >2000 chars)
16
+ */
17
+ export function shouldCollapsePaste(text) {
18
+ const lineCount = countLines(text);
19
+ const charCount = text.length;
20
+ return lineCount > 50 || charCount > 2000;
21
+ }
22
+ /**
23
+ * Create a collapsed paste object
24
+ */
25
+ export function createCollapsedPaste(text) {
26
+ pasteCounter++;
27
+ const lineCount = countLines(text);
28
+ const placeholder = `[Pasted text #${pasteCounter} +${lineCount - 1} lines]`;
29
+ return {
30
+ id: pasteCounter,
31
+ fullText: text,
32
+ lineCount,
33
+ isCollapsed: true,
34
+ placeholder,
35
+ };
36
+ }
37
+ /**
38
+ * Replace collapsed paste placeholder with full text
39
+ */
40
+ export function expandPaste(input, paste) {
41
+ return input.replace(paste.placeholder, paste.fullText);
42
+ }
43
+ /**
44
+ * Replace full text with collapsed paste placeholder
45
+ */
46
+ export function collapsePaste(input, paste) {
47
+ return input.replace(paste.fullText, paste.placeholder);
48
+ }
49
+ /**
50
+ * Find all collapsed paste placeholders in text
51
+ */
52
+ export function findCollapsedPastes(input) {
53
+ const regex = /\[Pasted text #(\d+) \+(\d+) lines\]/g;
54
+ return Array.from(input.matchAll(regex));
55
+ }
56
+ /**
57
+ * Toggle between collapsed and expanded state
58
+ */
59
+ export function togglePasteState(input, paste) {
60
+ if (paste.isCollapsed) {
61
+ // Expand: replace placeholder with full text
62
+ const newInput = expandPaste(input, paste);
63
+ return { newInput, newState: false };
64
+ }
65
+ else {
66
+ // Collapse: replace full text with placeholder
67
+ const newInput = collapsePaste(input, paste);
68
+ return { newInput, newState: true };
69
+ }
70
+ }
71
+ /**
72
+ * Reset paste counter (for testing)
73
+ */
74
+ export function resetPasteCounter() {
75
+ pasteCounter = 0;
76
+ }
77
+ //# sourceMappingURL=paste-collapse.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"paste-collapse.js","sourceRoot":"","sources":["../../src/utils/paste-collapse.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAUH,IAAI,YAAY,GAAG,CAAC,CAAC;AAErB;;GAEG;AACH,MAAM,UAAU,UAAU,CAAC,IAAY;IACrC,IAAI,CAAC,IAAI;QAAE,OAAO,CAAC,CAAC;IACpB,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;AACjC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAY;IAC9C,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;IACnC,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC;IAC9B,OAAO,SAAS,GAAG,EAAE,IAAI,SAAS,GAAG,IAAI,CAAC;AAC5C,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAAC,IAAY;IAC/C,YAAY,EAAE,CAAC;IACf,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;IACnC,MAAM,WAAW,GAAG,iBAAiB,YAAY,KAAK,SAAS,GAAG,CAAC,SAAS,CAAC;IAE7E,OAAO;QACL,EAAE,EAAE,YAAY;QAChB,QAAQ,EAAE,IAAI;QACd,SAAS;QACT,WAAW,EAAE,IAAI;QACjB,WAAW;KACZ,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,KAAa,EAAE,KAAqB;IAC9D,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;AAC1D,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa,CAAC,KAAa,EAAE,KAAqB;IAChE,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;AAC1D,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,KAAa;IAC/C,MAAM,KAAK,GAAG,uCAAuC,CAAC;IACtD,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;AAC3C,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAC9B,KAAa,EACb,KAAqB;IAErB,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;QACtB,6CAA6C;QAC7C,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAC3C,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;IACvC,CAAC;SAAM,CAAC;QACN,+CAA+C;QAC/C,MAAM,QAAQ,GAAG,aAAa,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAC7C,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IACtC,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB;IAC/B,YAAY,GAAG,CAAC,CAAC;AACnB,CAAC"}
@@ -0,0 +1,99 @@
1
+ /**
2
+ * Paste handling utilities for detecting and managing large paste operations
3
+ * Implements smart paste detection, collapsing, and expansion
4
+ */
5
+ /**
6
+ * Represents a pasted block of text
7
+ */
8
+ export interface PastedBlock {
9
+ id: number;
10
+ content: string;
11
+ lineCount: number;
12
+ collapsed: boolean;
13
+ startPosition: number;
14
+ previewLines: string[];
15
+ }
16
+ /**
17
+ * Paste detection and management class
18
+ */
19
+ export declare class PasteDetector {
20
+ private inputBuffer;
21
+ private readonly PASTE_DETECTION_WINDOW;
22
+ private readonly PASTE_THRESHOLD;
23
+ private accumulatedInput;
24
+ private lastInputTime;
25
+ /**
26
+ * Detect if input is part of a paste operation
27
+ * @param inputChar - Character(s) being input
28
+ * @returns true if paste detected
29
+ */
30
+ detectPaste(inputChar: string): boolean;
31
+ /**
32
+ * Accumulate input during paste operation
33
+ * @param inputChar - Character(s) being input
34
+ * @param timeout - Timeout to consider paste complete (ms)
35
+ * @returns accumulated paste content or null if still accumulating
36
+ */
37
+ accumulatePasteInput(inputChar: string, timeout?: number): string | null;
38
+ /**
39
+ * Get and clear accumulated input
40
+ */
41
+ getAccumulatedInput(): string;
42
+ /**
43
+ * Reset detector state
44
+ */
45
+ reset(): void;
46
+ }
47
+ /**
48
+ * Check if pasted content should be collapsed
49
+ * @param content - Pasted content
50
+ * @returns true if should collapse
51
+ */
52
+ export declare function shouldCollapsePaste(content: string): boolean;
53
+ /**
54
+ * Count lines in text (handles different line endings)
55
+ * @param text - Text to count lines in
56
+ * @returns number of lines
57
+ */
58
+ export declare function countLines(text: string): number;
59
+ /**
60
+ * Create a pasted block from content
61
+ * @param id - Unique block ID
62
+ * @param content - Pasted content
63
+ * @param startPosition - Position in input where inserted
64
+ * @returns PastedBlock object
65
+ */
66
+ export declare function createPastedBlock(id: number, content: string, startPosition: number): PastedBlock;
67
+ /**
68
+ * Generate placeholder text for collapsed paste
69
+ * @param block - Pasted block
70
+ * @returns placeholder string
71
+ */
72
+ export declare function generatePlaceholder(block: PastedBlock): string;
73
+ /**
74
+ * Extract placeholder ID from placeholder text
75
+ * @param placeholder - Placeholder text
76
+ * @returns block ID or null if not a placeholder
77
+ */
78
+ export declare function extractPlaceholderId(placeholder: string): number | null;
79
+ /**
80
+ * Find pasted block at cursor position
81
+ * @param input - Current input text
82
+ * @param cursorPosition - Cursor position
83
+ * @param pastedBlocks - Array of pasted blocks
84
+ * @returns PastedBlock if cursor is on one, null otherwise
85
+ */
86
+ export declare function findBlockAtCursor(input: string, cursorPosition: number, pastedBlocks: PastedBlock[]): PastedBlock | null;
87
+ /**
88
+ * Expand all placeholders in text
89
+ * @param text - Text with placeholders
90
+ * @param pastedBlocks - Array of pasted blocks
91
+ * @returns text with all placeholders expanded
92
+ */
93
+ export declare function expandAllPlaceholders(text: string, pastedBlocks: PastedBlock[]): string;
94
+ /**
95
+ * Validate paste settings
96
+ * @param settings - Paste settings to validate
97
+ * @returns true if valid
98
+ */
99
+ export declare function validatePasteSettings(settings: any): boolean;
@@ -0,0 +1,239 @@
1
+ /**
2
+ * Paste handling utilities for detecting and managing large paste operations
3
+ * Implements smart paste detection, collapsing, and expansion
4
+ */
5
+ import { getSettingsManager } from "./settings-manager.js";
6
+ /**
7
+ * Paste detection and management class
8
+ */
9
+ export class PasteDetector {
10
+ inputBuffer = [];
11
+ PASTE_DETECTION_WINDOW = 100; // 100ms window
12
+ PASTE_THRESHOLD = 10; // 10+ chars = paste
13
+ accumulatedInput = "";
14
+ lastInputTime = 0;
15
+ /**
16
+ * Detect if input is part of a paste operation
17
+ * @param inputChar - Character(s) being input
18
+ * @returns true if paste detected
19
+ */
20
+ detectPaste(inputChar) {
21
+ const now = Date.now();
22
+ // Add to buffer
23
+ this.inputBuffer.push({ char: inputChar, timestamp: now });
24
+ // Clean old entries (older than detection window)
25
+ this.inputBuffer = this.inputBuffer.filter(entry => now - entry.timestamp < this.PASTE_DETECTION_WINDOW);
26
+ // Count total characters in window
27
+ const totalChars = this.inputBuffer.reduce((sum, entry) => sum + entry.char.length, 0);
28
+ return totalChars >= this.PASTE_THRESHOLD;
29
+ }
30
+ /**
31
+ * Accumulate input during paste operation
32
+ * @param inputChar - Character(s) being input
33
+ * @param timeout - Timeout to consider paste complete (ms)
34
+ * @returns accumulated paste content or null if still accumulating
35
+ */
36
+ accumulatePasteInput(inputChar, timeout = 50) {
37
+ const now = Date.now();
38
+ // If too much time passed, start new accumulation
39
+ if (now - this.lastInputTime > timeout && this.accumulatedInput) {
40
+ const result = this.accumulatedInput;
41
+ this.accumulatedInput = inputChar;
42
+ this.lastInputTime = now;
43
+ return result;
44
+ }
45
+ // Accumulate
46
+ this.accumulatedInput += inputChar;
47
+ this.lastInputTime = now;
48
+ return null;
49
+ }
50
+ /**
51
+ * Get and clear accumulated input
52
+ */
53
+ getAccumulatedInput() {
54
+ const result = this.accumulatedInput;
55
+ this.accumulatedInput = "";
56
+ this.lastInputTime = 0;
57
+ return result;
58
+ }
59
+ /**
60
+ * Reset detector state
61
+ */
62
+ reset() {
63
+ this.inputBuffer = [];
64
+ this.accumulatedInput = "";
65
+ this.lastInputTime = 0;
66
+ }
67
+ }
68
+ /**
69
+ * Check if pasted content should be collapsed
70
+ * @param content - Pasted content
71
+ * @returns true if should collapse
72
+ */
73
+ export function shouldCollapsePaste(content) {
74
+ const settings = getSettingsManager();
75
+ const userSettings = settings.loadUserSettings();
76
+ // Check if auto-collapse is enabled (default: true)
77
+ const autoCollapse = userSettings.paste?.autoCollapse ?? true;
78
+ if (!autoCollapse) {
79
+ return false;
80
+ }
81
+ // Get collapse threshold (default: 20 lines)
82
+ const threshold = userSettings.paste?.collapseThreshold ?? 20;
83
+ // Count lines
84
+ const lineCount = countLines(content);
85
+ return lineCount >= threshold;
86
+ }
87
+ /**
88
+ * Count lines in text (handles different line endings)
89
+ * @param text - Text to count lines in
90
+ * @returns number of lines
91
+ */
92
+ export function countLines(text) {
93
+ if (!text)
94
+ return 0;
95
+ // Normalize line endings to \n
96
+ const normalized = text.replace(/\r\n/g, '\n').replace(/\r/g, '\n');
97
+ // Count newlines + 1 (for last line without \n)
98
+ const newlineCount = (normalized.match(/\n/g) || []).length;
99
+ // If text ends with newline, don't count extra line
100
+ return text.endsWith('\n') || text.endsWith('\r\n') ? newlineCount : newlineCount + 1;
101
+ }
102
+ /**
103
+ * Create a pasted block from content
104
+ * @param id - Unique block ID
105
+ * @param content - Pasted content
106
+ * @param startPosition - Position in input where inserted
107
+ * @returns PastedBlock object
108
+ */
109
+ export function createPastedBlock(id, content, startPosition) {
110
+ const settings = getSettingsManager();
111
+ const userSettings = settings.loadUserSettings();
112
+ const lineCount = countLines(content);
113
+ const previewLineCount = userSettings.paste?.previewLines ?? 2;
114
+ // Extract preview lines
115
+ const lines = content.split(/\r?\n/);
116
+ const previewLines = lines.slice(0, previewLineCount);
117
+ return {
118
+ id,
119
+ content,
120
+ lineCount,
121
+ collapsed: true,
122
+ startPosition,
123
+ previewLines,
124
+ };
125
+ }
126
+ /**
127
+ * Generate placeholder text for collapsed paste
128
+ * @param block - Pasted block
129
+ * @returns placeholder string
130
+ */
131
+ export function generatePlaceholder(block) {
132
+ const settings = getSettingsManager();
133
+ const userSettings = settings.loadUserSettings();
134
+ const showLineCount = userSettings.paste?.showLineCount ?? true;
135
+ const showPreview = userSettings.paste?.showPreview ?? false;
136
+ let placeholder = `[Pasted text #${block.id}`;
137
+ if (showLineCount) {
138
+ placeholder += ` +${block.lineCount} lines`;
139
+ }
140
+ placeholder += `]`;
141
+ // Add preview if enabled
142
+ if (showPreview && block.previewLines.length > 0) {
143
+ const preview = block.previewLines
144
+ .map(line => line.slice(0, 60)) // Max 60 chars per line
145
+ .join('\n');
146
+ placeholder += `\n${preview}`;
147
+ if (block.lineCount > block.previewLines.length) {
148
+ placeholder += `\n... (${block.lineCount - block.previewLines.length} more lines)`;
149
+ }
150
+ }
151
+ return placeholder;
152
+ }
153
+ /**
154
+ * Extract placeholder ID from placeholder text
155
+ * @param placeholder - Placeholder text
156
+ * @returns block ID or null if not a placeholder
157
+ */
158
+ export function extractPlaceholderId(placeholder) {
159
+ const match = placeholder.match(/\[Pasted text #(\d+)/);
160
+ return match ? parseInt(match[1], 10) : null;
161
+ }
162
+ /**
163
+ * Find pasted block at cursor position
164
+ * @param input - Current input text
165
+ * @param cursorPosition - Cursor position
166
+ * @param pastedBlocks - Array of pasted blocks
167
+ * @returns PastedBlock if cursor is on one, null otherwise
168
+ */
169
+ export function findBlockAtCursor(input, cursorPosition, pastedBlocks) {
170
+ for (const block of pastedBlocks) {
171
+ // Check if block is collapsed (placeholder in input)
172
+ if (block.collapsed) {
173
+ const placeholder = generatePlaceholder(block);
174
+ const blockStart = input.indexOf(placeholder);
175
+ if (blockStart === -1)
176
+ continue;
177
+ const blockEnd = blockStart + placeholder.length;
178
+ if (cursorPosition >= blockStart && cursorPosition <= blockEnd) {
179
+ return block;
180
+ }
181
+ }
182
+ else {
183
+ // Block is expanded (full content in input)
184
+ const blockStart = input.indexOf(block.content);
185
+ if (blockStart === -1)
186
+ continue;
187
+ const blockEnd = blockStart + block.content.length;
188
+ if (cursorPosition >= blockStart && cursorPosition <= blockEnd) {
189
+ return block;
190
+ }
191
+ }
192
+ }
193
+ return null;
194
+ }
195
+ /**
196
+ * Expand all placeholders in text
197
+ * @param text - Text with placeholders
198
+ * @param pastedBlocks - Array of pasted blocks
199
+ * @returns text with all placeholders expanded
200
+ */
201
+ export function expandAllPlaceholders(text, pastedBlocks) {
202
+ let result = text;
203
+ // Sort blocks by ID descending to replace from end to start
204
+ // This prevents position shifts during replacement
205
+ const sortedBlocks = [...pastedBlocks].sort((a, b) => b.id - a.id);
206
+ for (const block of sortedBlocks) {
207
+ const placeholder = generatePlaceholder(block);
208
+ result = result.replace(placeholder, block.content);
209
+ }
210
+ return result;
211
+ }
212
+ /**
213
+ * Validate paste settings
214
+ * @param settings - Paste settings to validate
215
+ * @returns true if valid
216
+ */
217
+ export function validatePasteSettings(settings) {
218
+ if (!settings)
219
+ return true;
220
+ if (typeof settings.autoCollapse !== 'undefined' && typeof settings.autoCollapse !== 'boolean') {
221
+ return false;
222
+ }
223
+ if (typeof settings.collapseThreshold !== 'undefined') {
224
+ if (typeof settings.collapseThreshold !== 'number' ||
225
+ settings.collapseThreshold < 1 ||
226
+ settings.collapseThreshold > 100) {
227
+ return false;
228
+ }
229
+ }
230
+ if (typeof settings.previewLines !== 'undefined') {
231
+ if (typeof settings.previewLines !== 'number' ||
232
+ settings.previewLines < 0 ||
233
+ settings.previewLines > 10) {
234
+ return false;
235
+ }
236
+ }
237
+ return true;
238
+ }
239
+ //# sourceMappingURL=paste-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"paste-utils.js","sourceRoot":"","sources":["../../src/utils/paste-utils.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,23 @@
1
1
  /**
2
- * Rate Limiting Utilities (REQ-SEC-006)
2
+ * Basic Rate Limiting Utilities (Free Tier) - REQ-SEC-006
3
3
  *
4
4
  * Implements token bucket algorithm for rate limiting API calls and user actions
5
5
  * Prevents API abuse and ensures fair resource usage
6
6
  *
7
+ * Free Tier Features:
8
+ * ✅ Token bucket rate limiting
9
+ * ✅ Multi-tier limits (per-second, per-minute)
10
+ * ✅ Per-key limits (per-user, per-IP)
11
+ * ✅ In-memory state (lightweight)
12
+ *
13
+ * Enterprise features (requires @ax-cli/enterprise):
14
+ * - Custom quotas per user/team/project
15
+ * - Cost analytics & forecasting
16
+ * - Budget alerts ($X/day threshold)
17
+ * - Persistent state (survives restarts)
18
+ * - Multi-tenant quota management
19
+ * - Usage optimization tips
20
+ *
7
21
  * Security: Protects against:
8
22
  * - API abuse (excessive requests)
9
23
  * - Resource exhaustion
@@ -1,9 +1,23 @@
1
1
  /**
2
- * Rate Limiting Utilities (REQ-SEC-006)
2
+ * Basic Rate Limiting Utilities (Free Tier) - REQ-SEC-006
3
3
  *
4
4
  * Implements token bucket algorithm for rate limiting API calls and user actions
5
5
  * Prevents API abuse and ensures fair resource usage
6
6
  *
7
+ * Free Tier Features:
8
+ * ✅ Token bucket rate limiting
9
+ * ✅ Multi-tier limits (per-second, per-minute)
10
+ * ✅ Per-key limits (per-user, per-IP)
11
+ * ✅ In-memory state (lightweight)
12
+ *
13
+ * Enterprise features (requires @ax-cli/enterprise):
14
+ * - Custom quotas per user/team/project
15
+ * - Cost analytics & forecasting
16
+ * - Budget alerts ($X/day threshold)
17
+ * - Persistent state (survives restarts)
18
+ * - Multi-tenant quota management
19
+ * - Usage optimization tips
20
+ *
7
21
  * Security: Protects against:
8
22
  * - API abuse (excessive requests)
9
23
  * - Resource exhaustion
@@ -1 +1 @@
1
- {"version":3,"file":"rate-limiter.js","sourceRoot":"","sources":["../../src/utils/rate-limiter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rate-limiter.js","sourceRoot":"","sources":["../../src/utils/rate-limiter.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@defai.digital/ax-cli",
3
- "version": "3.6.0",
3
+ "version": "3.6.1",
4
4
  "description": "Enterprise-Class AI Command Line Interface - Primary support for GLM (General Language Model) with multi-provider AI orchestration powered by AutomatosX.",
5
5
  "type": "module",
6
6
  "workspaces": [
@@ -39,18 +39,14 @@
39
39
  "scripts": {
40
40
  "build": "npm run build:schemas && tsc && chmod +x dist/index.js",
41
41
  "build:schemas": "cd packages/schemas && npm run build",
42
- "build:bun": "bun run tsc && chmod +x dist/index.js",
43
- "dev": "bun run src/index.ts",
44
- "dev:node": "tsx src/index.ts",
42
+ "dev": "tsx src/index.ts",
45
43
  "start": "node dist/index.js",
46
- "start:bun": "bun run dist/index.js",
47
44
  "lint": "eslint . --ext .js,.jsx,.ts,.tsx",
48
45
  "typecheck": "tsc --noEmit",
49
46
  "test": "vitest run",
50
47
  "test:watch": "vitest",
51
48
  "test:ui": "vitest --ui",
52
- "test:coverage": "vitest run --coverage",
53
- "install:bun": "bun install"
49
+ "test:coverage": "vitest run --coverage"
54
50
  },
55
51
  "keywords": [
56
52
  "cli",
@@ -0,0 +1,14 @@
1
+ /**
2
+ * @ax-cli/schemas - Single Source of Truth Type System
3
+ *
4
+ * This package provides centralized Zod schemas, brand types, and enums
5
+ * for the entire ax-cli ecosystem.
6
+ *
7
+ * SECURITY: All exports are controlled. Internal helpers are not exposed.
8
+ *
9
+ * @packageDocumentation
10
+ */
11
+ export { brand, unbrand, isBranded, createBrandFactory, type __brand, type Brand, type ExtractBrand, type ExtractBase, } from './public/core/brand-types.js';
12
+ export { ApiResponseId, ToolCallId, ToolCallIdSchema, ModelId, ModelIdSchema, TenantId, ApiKeyId, MCPServerId, MCPServerIdSchema, UsageRecordId, PlanId, SessionId, RequestId, type ApiResponseId as ApiResponseIdType, type ToolCallId as ToolCallIdType, type ModelId as ModelIdType, type TenantId as TenantIdType, type ApiKeyId as ApiKeyIdType, type MCPServerId as MCPServerIdType, type UsageRecordId as UsageRecordIdType, type PlanId as PlanIdType, type SessionId as SessionIdType, type RequestId as RequestIdType, } from './public/core/id-types.js';
13
+ export { MessageRoleEnum, FinishReasonEnum, TransportEnum, EditorCommandEnum, type MessageRole, type FinishReason, type Transport, type EditorCommand, } from './public/core/enums.js';
14
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,EACL,KAAK,EACL,OAAO,EACP,SAAS,EACT,kBAAkB,EAClB,KAAK,OAAO,EACZ,KAAK,KAAK,EACV,KAAK,YAAY,EACjB,KAAK,WAAW,GACjB,MAAM,8BAA8B,CAAC;AAGtC,OAAO,EACL,aAAa,EACb,UAAU,EACV,gBAAgB,EAChB,OAAO,EACP,aAAa,EACb,QAAQ,EACR,QAAQ,EACR,WAAW,EACX,iBAAiB,EACjB,aAAa,EACb,MAAM,EACN,SAAS,EACT,SAAS,EACT,KAAK,aAAa,IAAI,iBAAiB,EACvC,KAAK,UAAU,IAAI,cAAc,EACjC,KAAK,OAAO,IAAI,WAAW,EAC3B,KAAK,QAAQ,IAAI,YAAY,EAC7B,KAAK,QAAQ,IAAI,YAAY,EAC7B,KAAK,WAAW,IAAI,eAAe,EACnC,KAAK,aAAa,IAAI,iBAAiB,EACvC,KAAK,MAAM,IAAI,UAAU,EACzB,KAAK,SAAS,IAAI,aAAa,EAC/B,KAAK,SAAS,IAAI,aAAa,GAChC,MAAM,2BAA2B,CAAC;AAGnC,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,aAAa,EACb,iBAAiB,EACjB,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,SAAS,EACd,KAAK,aAAa,GACnB,MAAM,wBAAwB,CAAC"}