@mytechtoday/augment-extensions 1.7.0 → 2.2.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/README.md +119 -8
- package/augment-extensions/coding-standards/bash/CHANGELOG.md +51 -0
- package/augment-extensions/coding-standards/bash/metadata.json +21 -0
- package/augment-extensions/coding-standards/c/metadata.json +50 -0
- package/augment-extensions/coding-standards/css/CHANGELOG.md +51 -0
- package/augment-extensions/coding-standards/css/metadata.json +30 -0
- package/augment-extensions/coding-standards/go/CHANGELOG.md +51 -0
- package/augment-extensions/coding-standards/go/metadata.json +57 -0
- package/augment-extensions/coding-standards/html/CHANGELOG.md +51 -0
- package/augment-extensions/coding-standards/html/metadata.json +25 -0
- package/augment-extensions/coding-standards/html-css-js/CHANGELOG.md +51 -0
- package/augment-extensions/coding-standards/html-css-js/metadata.json +40 -0
- package/augment-extensions/coding-standards/js/CHANGELOG.md +51 -0
- package/augment-extensions/coding-standards/js/metadata.json +37 -0
- package/augment-extensions/coding-standards/php/CHANGELOG.md +51 -0
- package/augment-extensions/coding-standards/php/metadata.json +35 -0
- package/augment-extensions/coding-standards/powershell/CHANGELOG.md +51 -0
- package/augment-extensions/coding-standards/powershell/metadata.json +33 -0
- package/augment-extensions/coding-standards/python/CHANGELOG.md +51 -0
- package/augment-extensions/coding-standards/python/metadata.json +38 -0
- package/augment-extensions/coding-standards/react/CHANGELOG.md +51 -0
- package/augment-extensions/coding-standards/react/metadata.json +31 -0
- package/augment-extensions/coding-standards/typescript/CHANGELOG.md +39 -0
- package/augment-extensions/coding-standards/typescript/README.md +248 -19
- package/augment-extensions/coding-standards/typescript/VERSION +2 -0
- package/augment-extensions/coding-standards/typescript/examples/biome.json +199 -0
- package/augment-extensions/coding-standards/typescript/examples/eslint-flat-config.js +166 -0
- package/augment-extensions/coding-standards/typescript/examples/monorepo-config/README.md +47 -0
- package/augment-extensions/coding-standards/typescript/examples/monorepo-config/package.json +37 -0
- package/augment-extensions/coding-standards/typescript/examples/monorepo-config/pnpm-workspace.yaml +5 -0
- package/augment-extensions/coding-standards/typescript/examples/monorepo-config/tsconfig.base.json +50 -0
- package/augment-extensions/coding-standards/typescript/examples/monorepo-config/turbo.json +47 -0
- package/augment-extensions/coding-standards/typescript/examples/vitest-setup.ts +198 -0
- package/augment-extensions/coding-standards/typescript/metadata.json +46 -0
- package/augment-extensions/coding-standards/typescript/module.json +25 -7
- package/augment-extensions/coding-standards/typescript/rules/architecture.md +1096 -0
- package/augment-extensions/coding-standards/typescript/rules/error-handling.md +1174 -0
- package/augment-extensions/coding-standards/typescript/rules/modern-features.md +625 -0
- package/augment-extensions/coding-standards/typescript/rules/monorepo.md +745 -0
- package/augment-extensions/coding-standards/typescript/rules/security-performance.md +850 -0
- package/augment-extensions/coding-standards/typescript/rules/testing.md +918 -0
- package/augment-extensions/coding-standards/typescript/rules/tooling.md +1071 -0
- package/augment-extensions/coding-standards/typescript/rules/type-patterns.md +750 -0
- package/augment-extensions/domain-rules/api-design/CHANGELOG.md +51 -0
- package/augment-extensions/domain-rules/api-design/metadata.json +32 -0
- package/augment-extensions/domain-rules/database/CHANGELOG.md +51 -0
- package/augment-extensions/domain-rules/database/metadata.json +50 -0
- package/augment-extensions/domain-rules/design/color/themes/catppuccin-latte/CHANGELOG.md +51 -0
- package/augment-extensions/domain-rules/design/color/themes/catppuccin-latte/metadata.json +18 -0
- package/augment-extensions/domain-rules/design/color/themes/catppuccin-mocha/CHANGELOG.md +51 -0
- package/augment-extensions/domain-rules/design/color/themes/catppuccin-mocha/metadata.json +18 -0
- package/augment-extensions/domain-rules/design/color/themes/dracula/CHANGELOG.md +51 -0
- package/augment-extensions/domain-rules/design/color/themes/dracula/metadata.json +18 -0
- package/augment-extensions/domain-rules/design/color/themes/gruvbox-dark/CHANGELOG.md +51 -0
- package/augment-extensions/domain-rules/design/color/themes/gruvbox-dark/metadata.json +18 -0
- package/augment-extensions/domain-rules/design/color/themes/gruvbox-light/CHANGELOG.md +51 -0
- package/augment-extensions/domain-rules/design/color/themes/gruvbox-light/metadata.json +18 -0
- package/augment-extensions/domain-rules/design/color/themes/high-contrast/CHANGELOG.md +51 -0
- package/augment-extensions/domain-rules/design/color/themes/high-contrast/metadata.json +18 -0
- package/augment-extensions/domain-rules/design/color/themes/monokai/CHANGELOG.md +51 -0
- package/augment-extensions/domain-rules/design/color/themes/monokai/metadata.json +18 -0
- package/augment-extensions/domain-rules/design/color/themes/nord/CHANGELOG.md +51 -0
- package/augment-extensions/domain-rules/design/color/themes/nord/metadata.json +18 -0
- package/augment-extensions/domain-rules/design/color/themes/one-dark/CHANGELOG.md +51 -0
- package/augment-extensions/domain-rules/design/color/themes/one-dark/metadata.json +18 -0
- package/augment-extensions/domain-rules/design/color/themes/one-light/CHANGELOG.md +51 -0
- package/augment-extensions/domain-rules/design/color/themes/one-light/metadata.json +18 -0
- package/augment-extensions/domain-rules/design/color/themes/solarized-dark/CHANGELOG.md +51 -0
- package/augment-extensions/domain-rules/design/color/themes/solarized-dark/metadata.json +18 -0
- package/augment-extensions/domain-rules/design/color/themes/solarized-light/CHANGELOG.md +51 -0
- package/augment-extensions/domain-rules/design/color/themes/solarized-light/metadata.json +18 -0
- package/augment-extensions/domain-rules/design/color/themes/tokyo-night/CHANGELOG.md +51 -0
- package/augment-extensions/domain-rules/design/color/themes/tokyo-night/metadata.json +18 -0
- package/augment-extensions/domain-rules/mcp/CHANGELOG.md +51 -0
- package/augment-extensions/domain-rules/mcp/metadata.json +42 -0
- package/augment-extensions/domain-rules/security/CHANGELOG.md +51 -0
- package/augment-extensions/domain-rules/security/metadata.json +33 -0
- package/augment-extensions/domain-rules/seo-sales-marketing/CHANGELOG.md +51 -0
- package/augment-extensions/domain-rules/seo-sales-marketing/metadata.json +40 -0
- package/augment-extensions/domain-rules/software-architecture/CHANGELOG.md +51 -0
- package/augment-extensions/domain-rules/software-architecture/metadata.json +55 -0
- package/augment-extensions/domain-rules/wordpress/CHANGELOG.md +51 -0
- package/augment-extensions/domain-rules/wordpress/metadata.json +42 -0
- package/augment-extensions/domain-rules/wordpress-plugin/CHANGELOG.md +51 -0
- package/augment-extensions/domain-rules/wordpress-plugin/metadata.json +70 -0
- package/augment-extensions/examples/design-patterns/CHANGELOG.md +51 -0
- package/augment-extensions/examples/design-patterns/metadata.json +29 -0
- package/augment-extensions/examples/gutenberg-block-plugin/CHANGELOG.md +51 -0
- package/augment-extensions/examples/gutenberg-block-plugin/metadata.json +26 -0
- package/augment-extensions/examples/rest-api-plugin/CHANGELOG.md +51 -0
- package/augment-extensions/examples/rest-api-plugin/metadata.json +27 -0
- package/augment-extensions/examples/woocommerce-extension/CHANGELOG.md +51 -0
- package/augment-extensions/examples/woocommerce-extension/metadata.json +27 -0
- package/augment-extensions/visual-design/metadata.json +34 -0
- package/augment-extensions/workflows/adr-support/CHANGELOG.md +51 -0
- package/augment-extensions/workflows/adr-support/metadata.json +41 -0
- package/augment-extensions/workflows/beads/CHANGELOG.md +51 -0
- package/augment-extensions/workflows/beads/metadata.json +23 -0
- package/augment-extensions/workflows/beads-integration/CHANGELOG.md +51 -0
- package/augment-extensions/workflows/beads-integration/metadata.json +30 -0
- package/augment-extensions/workflows/database/CHANGELOG.md +51 -0
- package/augment-extensions/workflows/database/metadata.json +30 -0
- package/augment-extensions/workflows/wordpress-plugin/CHANGELOG.md +51 -0
- package/augment-extensions/workflows/wordpress-plugin/metadata.json +41 -0
- package/augment-extensions/writing-standards/literature/shakespeare/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/literature/shakespeare/metadata.json +60 -0
- package/augment-extensions/writing-standards/screenplay/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/comedy-formats/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/comedy-formats/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/comedy-formats/monty-python/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/comedy-formats/monty-python/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/comedy-formats/saturday-night-live/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/comedy-formats/saturday-night-live/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/alfred-hitchcock/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/alfred-hitchcock/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/ari-aster/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/ari-aster/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/brad-bird/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/brad-bird/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/brian-de-palma/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/brian-de-palma/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/buster-keaton/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/buster-keaton/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/christopher-nolan/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/christopher-nolan/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/clint-eastwood/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/clint-eastwood/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/coen-brothers/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/coen-brothers/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/darren-aronofsky/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/darren-aronofsky/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/david-fincher/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/david-fincher/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/david-lynch/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/david-lynch/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/denis-villeneuve/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/denis-villeneuve/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/francis-ford-coppola/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/francis-ford-coppola/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/gary-marshall/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/gary-marshall/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/george-a-romero/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/george-a-romero/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/george-lucas/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/george-lucas/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/guillermo-del-toro/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/guillermo-del-toro/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/gus-van-sant/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/gus-van-sant/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/james-ivory-ismail-merchant/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/james-ivory-ismail-merchant/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/jim-jarmusch/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/jim-jarmusch/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/john-carpenter/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/john-carpenter/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/john-ford/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/john-ford/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/john-huston/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/john-huston/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/john-landis/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/john-landis/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/jonathan-demme/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/jonathan-demme/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/joseph-l-mankiewicz/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/joseph-l-mankiewicz/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/kathryn-bigelow/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/kathryn-bigelow/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/kelly-reichardt/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/kelly-reichardt/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/kevin-smith/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/kevin-smith/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/linda-shayne/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/linda-shayne/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/martin-scorsese/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/martin-scorsese/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/mel-brooks/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/mel-brooks/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/metadata.json +25 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/michael-curtiz/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/michael-curtiz/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/michael-mann/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/michael-mann/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/mike-nichols/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/mike-nichols/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/orson-welles/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/orson-welles/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/park-chan-wook/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/park-chan-wook/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/paul-thomas-anderson/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/paul-thomas-anderson/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/penny-marshall/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/penny-marshall/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/peter-bogdanovich/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/peter-bogdanovich/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/quentin-tarantino/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/quentin-tarantino/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/richard-linklater/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/richard-linklater/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/rob-reiner/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/rob-reiner/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/robert-altman/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/robert-altman/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/robert-eggers/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/robert-eggers/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/robert-zemeckis/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/robert-zemeckis/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/sam-peckinpah/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/sam-peckinpah/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/sidney-lumet/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/sidney-lumet/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/spike-lee/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/spike-lee/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/stanley-donen-gene-kelly/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/stanley-donen-gene-kelly/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/stanley-kubrick/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/stanley-kubrick/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/steve-martin/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/steve-martin/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/steven-spielberg/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/steven-spielberg/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/sydney-pollack/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/sydney-pollack/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/terry-gilliam/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/terry-gilliam/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/tim-burton/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/tim-burton/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/tobe-hooper/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/tobe-hooper/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/wes-anderson/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/wes-anderson/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/william-friedkin/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/william-friedkin/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/films/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/films/blue-ruin/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/films/blue-ruin/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/films/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/franchises/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/franchises/fast-and-furious/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/franchises/fast-and-furious/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/franchises/harry-potter/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/franchises/harry-potter/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/franchises/james-bond/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/franchises/james-bond/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/franchises/john-wick/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/franchises/john-wick/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/franchises/lord-of-the-rings/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/franchises/lord-of-the-rings/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/franchises/mcu/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/franchises/mcu/metadata.json +25 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/franchises/metadata.json +25 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/franchises/star-trek/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/franchises/star-trek/metadata.json +33 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/franchises/star-wars/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/franchises/star-wars/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/metadata.json +50 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/narrative-theory/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/narrative-theory/joseph-campbell/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/narrative-theory/joseph-campbell/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/narrative-theory/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/producers/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/producers/bruckheimer-and-simpson/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/producers/bruckheimer-and-simpson/metadata.json +24 -0
- package/augment-extensions/writing-standards/screenplay/cinematic-styles/producers/metadata.json +23 -0
- package/augment-extensions/writing-standards/screenplay/genres/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/genres/metadata.json +43 -0
- package/augment-extensions/writing-standards/screenplay/metadata.json +65 -0
- package/augment-extensions/writing-standards/screenplay/styles/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/styles/metadata.json +38 -0
- package/augment-extensions/writing-standards/screenplay/themes/CHANGELOG.md +51 -0
- package/augment-extensions/writing-standards/screenplay/themes/metadata.json +47 -0
- package/cli/dist/__test_health-checker.d.ts +2 -0
- package/cli/dist/__test_health-checker.d.ts.map +1 -0
- package/cli/dist/__test_health-checker.js +4 -0
- package/cli/dist/__test_health-checker.js.map +1 -0
- package/cli/dist/__test_template-engine.d.ts +2 -0
- package/cli/dist/__test_template-engine.d.ts.map +1 -0
- package/cli/dist/__test_template-engine.js +4 -0
- package/cli/dist/__test_template-engine.js.map +1 -0
- package/cli/dist/cli.js +25 -0
- package/cli/dist/cli.js.map +1 -1
- package/cli/dist/commands/generate-shot-list/generator/index.d.ts +8 -2
- package/cli/dist/commands/generate-shot-list/generator/index.d.ts.map +1 -1
- package/cli/dist/commands/generate-shot-list/generator/index.js +28 -3
- package/cli/dist/commands/generate-shot-list/generator/index.js.map +1 -1
- package/cli/dist/commands/generate-shot-list/generator/types.d.ts +3 -0
- package/cli/dist/commands/generate-shot-list/generator/types.d.ts.map +1 -1
- package/cli/dist/commands/generate-shot-list/help-text.d.ts +1 -1
- package/cli/dist/commands/generate-shot-list/help-text.d.ts.map +1 -1
- package/cli/dist/commands/generate-shot-list/help-text.js +48 -5
- package/cli/dist/commands/generate-shot-list/help-text.js.map +1 -1
- package/cli/dist/commands/generate-shot-list/logger/jsonl-writer.d.ts +11 -1
- package/cli/dist/commands/generate-shot-list/logger/jsonl-writer.d.ts.map +1 -1
- package/cli/dist/commands/generate-shot-list/logger/jsonl-writer.js +61 -1
- package/cli/dist/commands/generate-shot-list/logger/jsonl-writer.js.map +1 -1
- package/cli/dist/commands/generate-shot-list/parser/docx-parser.d.ts +29 -0
- package/cli/dist/commands/generate-shot-list/parser/docx-parser.d.ts.map +1 -0
- package/cli/dist/commands/generate-shot-list/parser/docx-parser.js +111 -0
- package/cli/dist/commands/generate-shot-list/parser/docx-parser.js.map +1 -0
- package/cli/dist/commands/generate-shot-list/parser/finaldraft-parser.d.ts +18 -0
- package/cli/dist/commands/generate-shot-list/parser/finaldraft-parser.d.ts.map +1 -0
- package/cli/dist/commands/generate-shot-list/parser/finaldraft-parser.js +184 -0
- package/cli/dist/commands/generate-shot-list/parser/finaldraft-parser.js.map +1 -0
- package/cli/dist/commands/generate-shot-list/parser/index.d.ts +4 -3
- package/cli/dist/commands/generate-shot-list/parser/index.d.ts.map +1 -1
- package/cli/dist/commands/generate-shot-list/parser/index.js +54 -3
- package/cli/dist/commands/generate-shot-list/parser/index.js.map +1 -1
- package/cli/dist/commands/generate-shot-list/parser/pdf-parser.d.ts +24 -0
- package/cli/dist/commands/generate-shot-list/parser/pdf-parser.d.ts.map +1 -0
- package/cli/dist/commands/generate-shot-list/parser/pdf-parser.js +84 -0
- package/cli/dist/commands/generate-shot-list/parser/pdf-parser.js.map +1 -0
- package/cli/dist/commands/generate-shot-list/parser/rtf-parser.d.ts +28 -0
- package/cli/dist/commands/generate-shot-list/parser/rtf-parser.d.ts.map +1 -0
- package/cli/dist/commands/generate-shot-list/parser/rtf-parser.js +143 -0
- package/cli/dist/commands/generate-shot-list/parser/rtf-parser.js.map +1 -0
- package/cli/dist/commands/generate-shot-list/parser/types.d.ts +9 -6
- package/cli/dist/commands/generate-shot-list/parser/types.d.ts.map +1 -1
- package/cli/dist/commands/generate-shot-list/parser/types.js.map +1 -1
- package/cli/dist/commands/generate-shot-list/style/guideline-parser.d.ts +36 -0
- package/cli/dist/commands/generate-shot-list/style/guideline-parser.d.ts.map +1 -0
- package/cli/dist/commands/generate-shot-list/style/guideline-parser.js +108 -0
- package/cli/dist/commands/generate-shot-list/style/guideline-parser.js.map +1 -0
- package/cli/dist/commands/generate-shot-list/style/index.d.ts +39 -0
- package/cli/dist/commands/generate-shot-list/style/index.d.ts.map +1 -0
- package/cli/dist/commands/generate-shot-list/style/index.js +85 -0
- package/cli/dist/commands/generate-shot-list/style/index.js.map +1 -0
- package/cli/dist/commands/generate-shot-list/style/style-loader.d.ts +35 -0
- package/cli/dist/commands/generate-shot-list/style/style-loader.d.ts.map +1 -0
- package/cli/dist/commands/generate-shot-list/style/style-loader.js +178 -0
- package/cli/dist/commands/generate-shot-list/style/style-loader.js.map +1 -0
- package/cli/dist/commands/generate-shot-list/style/style-merger.d.ts +36 -0
- package/cli/dist/commands/generate-shot-list/style/style-merger.d.ts.map +1 -0
- package/cli/dist/commands/generate-shot-list/style/style-merger.js +123 -0
- package/cli/dist/commands/generate-shot-list/style/style-merger.js.map +1 -0
- package/cli/dist/commands/generate-shot-list/style/types.d.ts +105 -0
- package/cli/dist/commands/generate-shot-list/style/types.d.ts.map +1 -0
- package/cli/dist/commands/generate-shot-list/style/types.js +8 -0
- package/cli/dist/commands/generate-shot-list/style/types.js.map +1 -0
- package/cli/dist/commands/generate-shot-list.d.ts +1 -0
- package/cli/dist/commands/generate-shot-list.d.ts.map +1 -1
- package/cli/dist/commands/generate-shot-list.js +44 -1
- package/cli/dist/commands/generate-shot-list.js.map +1 -1
- package/cli/dist/commands/list.d.ts +1 -0
- package/cli/dist/commands/list.d.ts.map +1 -1
- package/cli/dist/commands/list.js +21 -5
- package/cli/dist/commands/list.js.map +1 -1
- package/cli/dist/commands/upgrade.d.ts +15 -0
- package/cli/dist/commands/upgrade.d.ts.map +1 -0
- package/cli/dist/commands/upgrade.js +229 -0
- package/cli/dist/commands/upgrade.js.map +1 -0
- package/cli/dist/commands/use.d.ts +15 -0
- package/cli/dist/commands/use.d.ts.map +1 -0
- package/cli/dist/commands/use.js +180 -0
- package/cli/dist/commands/use.js.map +1 -0
- package/cli/dist/commands/version-info.d.ts +15 -0
- package/cli/dist/commands/version-info.d.ts.map +1 -0
- package/cli/dist/commands/version-info.js +194 -0
- package/cli/dist/commands/version-info.js.map +1 -0
- package/cli/dist/core/compatibility-checker.d.ts +73 -0
- package/cli/dist/core/compatibility-checker.d.ts.map +1 -0
- package/cli/dist/core/compatibility-checker.js +188 -0
- package/cli/dist/core/compatibility-checker.js.map +1 -0
- package/cli/dist/core/index.d.ts +9 -0
- package/cli/dist/core/index.d.ts.map +1 -0
- package/cli/dist/core/index.js +16 -0
- package/cli/dist/core/index.js.map +1 -0
- package/cli/dist/core/module-loader.d.ts +68 -0
- package/cli/dist/core/module-loader.d.ts.map +1 -0
- package/cli/dist/core/module-loader.js +137 -0
- package/cli/dist/core/module-loader.js.map +1 -0
- package/cli/dist/core/version-manager.d.ts +62 -0
- package/cli/dist/core/version-manager.d.ts.map +1 -0
- package/cli/dist/core/version-manager.js +157 -0
- package/cli/dist/core/version-manager.js.map +1 -0
- package/cli/dist/core/version-resolver.d.ts +63 -0
- package/cli/dist/core/version-resolver.d.ts.map +1 -0
- package/cli/dist/core/version-resolver.js +163 -0
- package/cli/dist/core/version-resolver.js.map +1 -0
- package/cli/dist/gui/app.d.ts +17 -0
- package/cli/dist/gui/app.d.ts.map +1 -0
- package/cli/dist/gui/app.js +79 -0
- package/cli/dist/gui/app.js.map +1 -0
- package/cli/dist/gui/components/preview-pane.d.ts +40 -0
- package/cli/dist/gui/components/preview-pane.d.ts.map +1 -0
- package/cli/dist/gui/components/preview-pane.js +90 -0
- package/cli/dist/gui/components/preview-pane.js.map +1 -0
- package/cli/dist/gui/components/search-filter.d.ts +26 -0
- package/cli/dist/gui/components/search-filter.d.ts.map +1 -0
- package/cli/dist/gui/components/search-filter.js +168 -0
- package/cli/dist/gui/components/search-filter.js.map +1 -0
- package/cli/dist/gui/components/status-bar.d.ts +22 -0
- package/cli/dist/gui/components/status-bar.d.ts.map +1 -0
- package/cli/dist/gui/components/status-bar.js +58 -0
- package/cli/dist/gui/components/status-bar.js.map +1 -0
- package/cli/dist/gui/components/tree-navigator.d.ts +30 -0
- package/cli/dist/gui/components/tree-navigator.d.ts.map +1 -0
- package/cli/dist/gui/components/tree-navigator.js +133 -0
- package/cli/dist/gui/components/tree-navigator.js.map +1 -0
- package/cli/dist/gui/components/version-selector.d.ts +27 -0
- package/cli/dist/gui/components/version-selector.d.ts.map +1 -0
- package/cli/dist/gui/components/version-selector.js +110 -0
- package/cli/dist/gui/components/version-selector.js.map +1 -0
- package/cli/dist/gui/hooks/use-version-loader.d.ts +25 -0
- package/cli/dist/gui/hooks/use-version-loader.d.ts.map +1 -0
- package/cli/dist/gui/hooks/use-version-loader.js +116 -0
- package/cli/dist/gui/hooks/use-version-loader.js.map +1 -0
- package/cli/dist/gui/index.d.ts +15 -0
- package/cli/dist/gui/index.d.ts.map +1 -0
- package/cli/dist/gui/index.js +39 -0
- package/cli/dist/gui/index.js.map +1 -0
- package/cli/dist/gui/layouts/main-layout.d.ts +14 -0
- package/cli/dist/gui/layouts/main-layout.d.ts.map +1 -0
- package/cli/dist/gui/layouts/main-layout.js +205 -0
- package/cli/dist/gui/layouts/main-layout.js.map +1 -0
- package/cli/dist/gui/state/navigation-state.d.ts +39 -0
- package/cli/dist/gui/state/navigation-state.d.ts.map +1 -0
- package/cli/dist/gui/state/navigation-state.js +151 -0
- package/cli/dist/gui/state/navigation-state.js.map +1 -0
- package/cli/dist/gui/state/selection-state.d.ts +36 -0
- package/cli/dist/gui/state/selection-state.d.ts.map +1 -0
- package/cli/dist/gui/state/selection-state.js +132 -0
- package/cli/dist/gui/state/selection-state.js.map +1 -0
- package/cli/dist/gui/theme.d.ts +50 -0
- package/cli/dist/gui/theme.d.ts.map +1 -0
- package/cli/dist/gui/theme.js +73 -0
- package/cli/dist/gui/theme.js.map +1 -0
- package/cli/dist/utils/help.d.ts +13 -0
- package/cli/dist/utils/help.d.ts.map +1 -0
- package/cli/dist/utils/help.js +137 -0
- package/cli/dist/utils/help.js.map +1 -0
- package/cli/dist/utils/module-system.d.ts +8 -0
- package/cli/dist/utils/module-system.d.ts.map +1 -1
- package/cli/dist/utils/module-system.js +38 -3
- package/cli/dist/utils/module-system.js.map +1 -1
- package/cli/dist/utils/validate-versioning.d.ts +43 -0
- package/cli/dist/utils/validate-versioning.d.ts.map +1 -0
- package/cli/dist/utils/validate-versioning.js +258 -0
- package/cli/dist/utils/validate-versioning.js.map +1 -0
- package/package.json +10 -1
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Search/Filter Component
|
|
4
|
+
* Provides search and filtering functionality with real-time search,
|
|
5
|
+
* category filtering, and tag filtering
|
|
6
|
+
*/
|
|
7
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
8
|
+
if (k2 === undefined) k2 = k;
|
|
9
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
10
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
11
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
12
|
+
}
|
|
13
|
+
Object.defineProperty(o, k2, desc);
|
|
14
|
+
}) : (function(o, m, k, k2) {
|
|
15
|
+
if (k2 === undefined) k2 = k;
|
|
16
|
+
o[k2] = m[k];
|
|
17
|
+
}));
|
|
18
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
19
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
20
|
+
}) : function(o, v) {
|
|
21
|
+
o["default"] = v;
|
|
22
|
+
});
|
|
23
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
24
|
+
var ownKeys = function(o) {
|
|
25
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
26
|
+
var ar = [];
|
|
27
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
28
|
+
return ar;
|
|
29
|
+
};
|
|
30
|
+
return ownKeys(o);
|
|
31
|
+
};
|
|
32
|
+
return function (mod) {
|
|
33
|
+
if (mod && mod.__esModule) return mod;
|
|
34
|
+
var result = {};
|
|
35
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
36
|
+
__setModuleDefault(result, mod);
|
|
37
|
+
return result;
|
|
38
|
+
};
|
|
39
|
+
})();
|
|
40
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
41
|
+
exports.SearchFilter = void 0;
|
|
42
|
+
const react_1 = __importStar(require("react"));
|
|
43
|
+
const ink_1 = require("ink");
|
|
44
|
+
/**
|
|
45
|
+
* Search/Filter Component
|
|
46
|
+
* Real-time search with category and tag filtering
|
|
47
|
+
*/
|
|
48
|
+
const SearchFilter = ({ theme, onSearch, onFilterChange, availableCategories = [], availableTags = [], focused = false, }) => {
|
|
49
|
+
const [query, setQuery] = (0, react_1.useState)('');
|
|
50
|
+
const [selectedCategories, setSelectedCategories] = (0, react_1.useState)([]);
|
|
51
|
+
const [selectedTags, setSelectedTags] = (0, react_1.useState)([]);
|
|
52
|
+
const [mode, setMode] = (0, react_1.useState)('search');
|
|
53
|
+
const [categoryIndex, setCategoryIndex] = (0, react_1.useState)(0);
|
|
54
|
+
const [tagIndex, setTagIndex] = (0, react_1.useState)(0);
|
|
55
|
+
// Real-time search: trigger callback whenever filters change
|
|
56
|
+
(0, react_1.useEffect)(() => {
|
|
57
|
+
const filters = {
|
|
58
|
+
query,
|
|
59
|
+
categories: selectedCategories,
|
|
60
|
+
tags: selectedTags,
|
|
61
|
+
};
|
|
62
|
+
onFilterChange?.(filters);
|
|
63
|
+
// Also trigger search callback for backward compatibility
|
|
64
|
+
if (query) {
|
|
65
|
+
onSearch?.(query);
|
|
66
|
+
}
|
|
67
|
+
}, [query, selectedCategories, selectedTags, onSearch, onFilterChange]);
|
|
68
|
+
(0, ink_1.useInput)((input, key) => {
|
|
69
|
+
if (!focused)
|
|
70
|
+
return;
|
|
71
|
+
// Mode switching
|
|
72
|
+
if (input === 'c' && !key.ctrl && !key.meta) {
|
|
73
|
+
setMode('category');
|
|
74
|
+
return;
|
|
75
|
+
}
|
|
76
|
+
else if (input === 't' && !key.ctrl && !key.meta) {
|
|
77
|
+
setMode('tag');
|
|
78
|
+
return;
|
|
79
|
+
}
|
|
80
|
+
else if (input === 's' && !key.ctrl && !key.meta) {
|
|
81
|
+
setMode('search');
|
|
82
|
+
return;
|
|
83
|
+
}
|
|
84
|
+
else if (key.escape) {
|
|
85
|
+
setMode('search');
|
|
86
|
+
return;
|
|
87
|
+
}
|
|
88
|
+
// Search mode
|
|
89
|
+
if (mode === 'search') {
|
|
90
|
+
if (key.backspace || key.delete) {
|
|
91
|
+
setQuery((prev) => prev.slice(0, -1));
|
|
92
|
+
}
|
|
93
|
+
else if (input && !key.ctrl && !key.meta && input !== 'c' && input !== 't' && input !== 's') {
|
|
94
|
+
setQuery((prev) => prev + input);
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
// Category filter mode
|
|
98
|
+
if (mode === 'category') {
|
|
99
|
+
if (key.upArrow) {
|
|
100
|
+
setCategoryIndex((prev) => Math.max(0, prev - 1));
|
|
101
|
+
}
|
|
102
|
+
else if (key.downArrow) {
|
|
103
|
+
setCategoryIndex((prev) => Math.min(availableCategories.length - 1, prev + 1));
|
|
104
|
+
}
|
|
105
|
+
else if (key.return || input === ' ') {
|
|
106
|
+
const category = availableCategories[categoryIndex];
|
|
107
|
+
if (category) {
|
|
108
|
+
setSelectedCategories((prev) => prev.includes(category)
|
|
109
|
+
? prev.filter((c) => c !== category)
|
|
110
|
+
: [...prev, category]);
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
// Tag filter mode
|
|
115
|
+
if (mode === 'tag') {
|
|
116
|
+
if (key.upArrow) {
|
|
117
|
+
setTagIndex((prev) => Math.max(0, prev - 1));
|
|
118
|
+
}
|
|
119
|
+
else if (key.downArrow) {
|
|
120
|
+
setTagIndex((prev) => Math.min(availableTags.length - 1, prev + 1));
|
|
121
|
+
}
|
|
122
|
+
else if (key.return || input === ' ') {
|
|
123
|
+
const tag = availableTags[tagIndex];
|
|
124
|
+
if (tag) {
|
|
125
|
+
setSelectedTags((prev) => prev.includes(tag) ? prev.filter((t) => t !== tag) : [...prev, tag]);
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
}, { isActive: focused });
|
|
130
|
+
return (react_1.default.createElement(ink_1.Box, { flexDirection: "column", borderStyle: "round", borderColor: focused ? theme.colors.primary : theme.colors.border, padding: 1 },
|
|
131
|
+
react_1.default.createElement(ink_1.Text, { bold: true, color: theme.colors.primary }, "\uD83D\uDD0D Search & Filter"),
|
|
132
|
+
react_1.default.createElement(ink_1.Box, { marginTop: 1, flexDirection: "column" },
|
|
133
|
+
react_1.default.createElement(ink_1.Text, { color: mode === 'search' ? theme.colors.highlight : theme.colors.text },
|
|
134
|
+
"Search: ",
|
|
135
|
+
query || react_1.default.createElement(ink_1.Text, { color: theme.colors.textDim }, "Type to search..."))),
|
|
136
|
+
availableCategories.length > 0 && (react_1.default.createElement(ink_1.Box, { marginTop: 1, flexDirection: "column" },
|
|
137
|
+
react_1.default.createElement(ink_1.Text, { color: mode === 'category' ? theme.colors.highlight : theme.colors.text, bold: mode === 'category' },
|
|
138
|
+
"Categories (",
|
|
139
|
+
selectedCategories.length,
|
|
140
|
+
" selected):"),
|
|
141
|
+
mode === 'category' && (react_1.default.createElement(ink_1.Box, { flexDirection: "column", marginLeft: 2 }, availableCategories.slice(0, 3).map((cat, idx) => {
|
|
142
|
+
const isSelected = selectedCategories.includes(cat);
|
|
143
|
+
const isFocused = idx === categoryIndex;
|
|
144
|
+
return (react_1.default.createElement(ink_1.Text, { key: cat, color: isFocused ? theme.colors.highlight : theme.colors.text, backgroundColor: isFocused ? theme.colors.selected : undefined },
|
|
145
|
+
isSelected ? '✓' : '○',
|
|
146
|
+
" ",
|
|
147
|
+
cat));
|
|
148
|
+
}))),
|
|
149
|
+
mode !== 'category' && selectedCategories.length > 0 && (react_1.default.createElement(ink_1.Text, { color: theme.colors.textDim }, selectedCategories.join(', '))))),
|
|
150
|
+
availableTags.length > 0 && (react_1.default.createElement(ink_1.Box, { marginTop: 1, flexDirection: "column" },
|
|
151
|
+
react_1.default.createElement(ink_1.Text, { color: mode === 'tag' ? theme.colors.highlight : theme.colors.text, bold: mode === 'tag' },
|
|
152
|
+
"Tags (",
|
|
153
|
+
selectedTags.length,
|
|
154
|
+
" selected):"),
|
|
155
|
+
mode === 'tag' && (react_1.default.createElement(ink_1.Box, { flexDirection: "column", marginLeft: 2 }, availableTags.slice(0, 3).map((tag, idx) => {
|
|
156
|
+
const isSelected = selectedTags.includes(tag);
|
|
157
|
+
const isFocused = idx === tagIndex;
|
|
158
|
+
return (react_1.default.createElement(ink_1.Text, { key: tag, color: isFocused ? theme.colors.highlight : theme.colors.text, backgroundColor: isFocused ? theme.colors.selected : undefined },
|
|
159
|
+
isSelected ? '✓' : '○',
|
|
160
|
+
" ",
|
|
161
|
+
tag));
|
|
162
|
+
}))),
|
|
163
|
+
mode !== 'tag' && selectedTags.length > 0 && (react_1.default.createElement(ink_1.Text, { color: theme.colors.textDim }, selectedTags.join(', '))))),
|
|
164
|
+
react_1.default.createElement(ink_1.Box, { marginTop: 1 },
|
|
165
|
+
react_1.default.createElement(ink_1.Text, { color: theme.colors.textDim }, "S: Search | C: Categories | T: Tags | Esc: Back"))));
|
|
166
|
+
};
|
|
167
|
+
exports.SearchFilter = SearchFilter;
|
|
168
|
+
//# sourceMappingURL=search-filter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search-filter.js","sourceRoot":"","sources":["../../../src/gui/components/search-filter.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Status Bar Component
|
|
3
|
+
* Displays current state, module count, and comprehensive help hints
|
|
4
|
+
*/
|
|
5
|
+
import React from 'react';
|
|
6
|
+
import { Theme } from '../theme';
|
|
7
|
+
export interface StatusBarProps {
|
|
8
|
+
theme: Theme;
|
|
9
|
+
currentModule?: string;
|
|
10
|
+
currentVersion?: string;
|
|
11
|
+
totalModules?: number;
|
|
12
|
+
linkedModules?: number;
|
|
13
|
+
focusedComponent?: string;
|
|
14
|
+
isLoading?: boolean;
|
|
15
|
+
errorMessage?: string;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Status Bar Component
|
|
19
|
+
* Shows current state with module/version info, counts, and help hints
|
|
20
|
+
*/
|
|
21
|
+
export declare const StatusBar: React.FC<StatusBarProps>;
|
|
22
|
+
//# sourceMappingURL=status-bar.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"status-bar.d.ts","sourceRoot":"","sources":["../../../src/gui/components/status-bar.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAEjC,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,KAAK,CAAC;IACb,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;;GAGG;AACH,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CAyE9C,CAAC"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Status Bar Component
|
|
4
|
+
* Displays current state, module count, and comprehensive help hints
|
|
5
|
+
*/
|
|
6
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
7
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
8
|
+
};
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
exports.StatusBar = void 0;
|
|
11
|
+
const react_1 = __importDefault(require("react"));
|
|
12
|
+
const ink_1 = require("ink");
|
|
13
|
+
/**
|
|
14
|
+
* Status Bar Component
|
|
15
|
+
* Shows current state with module/version info, counts, and help hints
|
|
16
|
+
*/
|
|
17
|
+
const StatusBar = ({ theme, currentModule, currentVersion, totalModules = 0, linkedModules = 0, focusedComponent, isLoading = false, errorMessage, }) => {
|
|
18
|
+
// Get help hints based on focused component
|
|
19
|
+
const getHelpHints = () => {
|
|
20
|
+
switch (focusedComponent) {
|
|
21
|
+
case 'tree':
|
|
22
|
+
return '↑↓: Navigate | Enter: Select | Space: Expand/Collapse | Tab: Switch';
|
|
23
|
+
case 'version':
|
|
24
|
+
return '↑↓: Navigate | Enter: Select | P: Pin/Unpin | Tab: Switch';
|
|
25
|
+
case 'search':
|
|
26
|
+
return 'S: Search | C: Categories | T: Tags | Esc: Back | Tab: Switch';
|
|
27
|
+
case 'preview':
|
|
28
|
+
return 'Tab: Switch | Q: Quit';
|
|
29
|
+
default:
|
|
30
|
+
return 'Tab: Switch | Q: Quit';
|
|
31
|
+
}
|
|
32
|
+
};
|
|
33
|
+
return (react_1.default.createElement(ink_1.Box, { borderStyle: "single", borderColor: theme.colors.border, padding: 0, paddingX: 1, flexDirection: "column" },
|
|
34
|
+
react_1.default.createElement(ink_1.Box, null,
|
|
35
|
+
react_1.default.createElement(ink_1.Box, { flexGrow: 1 }, isLoading ? (react_1.default.createElement(ink_1.Text, { color: theme.colors.warning }, "\u23F3 Loading...")) : errorMessage ? (react_1.default.createElement(ink_1.Text, { color: theme.colors.error },
|
|
36
|
+
"\u274C ",
|
|
37
|
+
errorMessage)) : currentModule ? (react_1.default.createElement(ink_1.Text, { color: theme.colors.text },
|
|
38
|
+
react_1.default.createElement(ink_1.Text, { bold: true }, currentModule),
|
|
39
|
+
currentVersion && react_1.default.createElement(ink_1.Text, { color: theme.colors.info },
|
|
40
|
+
" v",
|
|
41
|
+
currentVersion))) : (react_1.default.createElement(ink_1.Text, { color: theme.colors.textDim }, "No module selected"))),
|
|
42
|
+
react_1.default.createElement(ink_1.Box, { marginLeft: 2 },
|
|
43
|
+
react_1.default.createElement(ink_1.Text, { color: theme.colors.textDim },
|
|
44
|
+
totalModules,
|
|
45
|
+
" total",
|
|
46
|
+
linkedModules > 0 && (react_1.default.createElement(ink_1.Text, { color: theme.colors.success },
|
|
47
|
+
" | ",
|
|
48
|
+
linkedModules,
|
|
49
|
+
" linked")),
|
|
50
|
+
' | ',
|
|
51
|
+
react_1.default.createElement(ink_1.Text, { bold: true },
|
|
52
|
+
"Focus: ",
|
|
53
|
+
focusedComponent || 'tree')))),
|
|
54
|
+
react_1.default.createElement(ink_1.Box, { marginTop: 0 },
|
|
55
|
+
react_1.default.createElement(ink_1.Text, { color: theme.colors.textDim }, getHelpHints()))));
|
|
56
|
+
};
|
|
57
|
+
exports.StatusBar = StatusBar;
|
|
58
|
+
//# sourceMappingURL=status-bar.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"status-bar.js","sourceRoot":"","sources":["../../../src/gui/components/status-bar.tsx"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;AAEH,kDAA0B;AAC1B,6BAAgC;AAchC;;;GAGG;AACI,MAAM,SAAS,GAA6B,CAAC,EAClD,KAAK,EACL,aAAa,EACb,cAAc,EACd,YAAY,GAAG,CAAC,EAChB,aAAa,GAAG,CAAC,EACjB,gBAAgB,EAChB,SAAS,GAAG,KAAK,EACjB,YAAY,GACb,EAAE,EAAE;IACH,4CAA4C;IAC5C,MAAM,YAAY,GAAG,GAAW,EAAE;QAChC,QAAQ,gBAAgB,EAAE,CAAC;YACzB,KAAK,MAAM;gBACT,OAAO,qEAAqE,CAAC;YAC/E,KAAK,SAAS;gBACZ,OAAO,2DAA2D,CAAC;YACrE,KAAK,QAAQ;gBACX,OAAO,+DAA+D,CAAC;YACzE,KAAK,SAAS;gBACZ,OAAO,uBAAuB,CAAC;YACjC;gBACE,OAAO,uBAAuB,CAAC;QACnC,CAAC;IACH,CAAC,CAAC;IAEF,OAAO,CACL,8BAAC,SAAG,IACF,WAAW,EAAC,QAAQ,EACpB,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,EAChC,OAAO,EAAE,CAAC,EACV,QAAQ,EAAE,CAAC,EACX,aAAa,EAAC,QAAQ;QAGtB,8BAAC,SAAG;YAEF,8BAAC,SAAG,IAAC,QAAQ,EAAE,CAAC,IACb,SAAS,CAAC,CAAC,CAAC,CACX,8BAAC,UAAI,IAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO,wBAAqB,CACvD,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CACjB,8BAAC,UAAI,IAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,KAAK;;gBAAK,YAAY,CAAQ,CACzD,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAClB,8BAAC,UAAI,IAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,IAAI;gBAC5B,8BAAC,UAAI,IAAC,IAAI,UAAE,aAAa,CAAQ;gBAChC,cAAc,IAAI,8BAAC,UAAI,IAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,IAAI;;oBAAK,cAAc,CAAQ,CACvE,CACR,CAAC,CAAC,CAAC,CACF,8BAAC,UAAI,IAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO,yBAA2B,CAC7D,CACG;YAGN,8BAAC,SAAG,IAAC,UAAU,EAAE,CAAC;gBAChB,8BAAC,UAAI,IAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO;oBAC9B,YAAY;;oBACZ,aAAa,GAAG,CAAC,IAAI,CACpB,8BAAC,UAAI,IAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO;;wBAAM,aAAa;kCAAe,CACpE;oBACA,KAAK;oBACN,8BAAC,UAAI,IAAC,IAAI;;wBAAS,gBAAgB,IAAI,MAAM,CAAQ,CAChD,CACH,CACF;QAGN,8BAAC,SAAG,IAAC,SAAS,EAAE,CAAC;YACf,8BAAC,UAAI,IAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO,IAC9B,YAAY,EAAE,CACV,CACH,CACF,CACP,CAAC;AACJ,CAAC,CAAC;AAzEW,QAAA,SAAS,aAyEpB"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Tree Navigator Component
|
|
3
|
+
* Displays modules in a tree structure with category grouping
|
|
4
|
+
*/
|
|
5
|
+
import React from 'react';
|
|
6
|
+
import { Theme } from '../theme';
|
|
7
|
+
export interface TreeNode {
|
|
8
|
+
id: string;
|
|
9
|
+
label: string;
|
|
10
|
+
type: 'category' | 'module';
|
|
11
|
+
children?: TreeNode[];
|
|
12
|
+
metadata?: {
|
|
13
|
+
version?: string;
|
|
14
|
+
description?: string;
|
|
15
|
+
linked?: boolean;
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
export interface TreeNavigatorProps {
|
|
19
|
+
nodes: TreeNode[];
|
|
20
|
+
theme: Theme;
|
|
21
|
+
onSelect?: (node: TreeNode) => void;
|
|
22
|
+
onExpand?: (nodeId: string) => void;
|
|
23
|
+
onCollapse?: (nodeId: string) => void;
|
|
24
|
+
focused?: boolean;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Tree Navigator Component
|
|
28
|
+
*/
|
|
29
|
+
export declare const TreeNavigator: React.FC<TreeNavigatorProps>;
|
|
30
|
+
//# sourceMappingURL=tree-navigator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tree-navigator.d.ts","sourceRoot":"","sources":["../../../src/gui/components/tree-navigator.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAA8B,MAAM,OAAO,CAAC;AAEnD,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAEjC,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,UAAU,GAAG,QAAQ,CAAC;IAC5B,QAAQ,CAAC,EAAE,QAAQ,EAAE,CAAC;IACtB,QAAQ,CAAC,EAAE;QACT,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,MAAM,CAAC,EAAE,OAAO,CAAC;KAClB,CAAC;CACH;AAED,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,KAAK,EAAE,KAAK,CAAC;IACb,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IACpC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CA6GtD,CAAC"}
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Tree Navigator Component
|
|
4
|
+
* Displays modules in a tree structure with category grouping
|
|
5
|
+
*/
|
|
6
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
7
|
+
if (k2 === undefined) k2 = k;
|
|
8
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
9
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
10
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
11
|
+
}
|
|
12
|
+
Object.defineProperty(o, k2, desc);
|
|
13
|
+
}) : (function(o, m, k, k2) {
|
|
14
|
+
if (k2 === undefined) k2 = k;
|
|
15
|
+
o[k2] = m[k];
|
|
16
|
+
}));
|
|
17
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
18
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
19
|
+
}) : function(o, v) {
|
|
20
|
+
o["default"] = v;
|
|
21
|
+
});
|
|
22
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
23
|
+
var ownKeys = function(o) {
|
|
24
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
25
|
+
var ar = [];
|
|
26
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
27
|
+
return ar;
|
|
28
|
+
};
|
|
29
|
+
return ownKeys(o);
|
|
30
|
+
};
|
|
31
|
+
return function (mod) {
|
|
32
|
+
if (mod && mod.__esModule) return mod;
|
|
33
|
+
var result = {};
|
|
34
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
35
|
+
__setModuleDefault(result, mod);
|
|
36
|
+
return result;
|
|
37
|
+
};
|
|
38
|
+
})();
|
|
39
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
40
|
+
exports.TreeNavigator = void 0;
|
|
41
|
+
const react_1 = __importStar(require("react"));
|
|
42
|
+
const ink_1 = require("ink");
|
|
43
|
+
/**
|
|
44
|
+
* Tree Navigator Component
|
|
45
|
+
*/
|
|
46
|
+
const TreeNavigator = ({ nodes, theme, onSelect, onExpand, onCollapse, focused = false, }) => {
|
|
47
|
+
const [selectedIndex, setSelectedIndex] = (0, react_1.useState)(0);
|
|
48
|
+
const [expandedNodes, setExpandedNodes] = (0, react_1.useState)(new Set());
|
|
49
|
+
const [flattenedNodes, setFlattenedNodes] = (0, react_1.useState)([]);
|
|
50
|
+
// Flatten tree for navigation
|
|
51
|
+
(0, react_1.useEffect)(() => {
|
|
52
|
+
const flatten = (nodes, depth = 0) => {
|
|
53
|
+
const result = [];
|
|
54
|
+
for (const node of nodes) {
|
|
55
|
+
result.push({ ...node, depth });
|
|
56
|
+
if (node.children && expandedNodes.has(node.id)) {
|
|
57
|
+
result.push(...flatten(node.children, depth + 1));
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
return result;
|
|
61
|
+
};
|
|
62
|
+
setFlattenedNodes(flatten(nodes));
|
|
63
|
+
}, [nodes, expandedNodes]);
|
|
64
|
+
// Handle keyboard input
|
|
65
|
+
(0, ink_1.useInput)((input, key) => {
|
|
66
|
+
if (!focused)
|
|
67
|
+
return;
|
|
68
|
+
if (key.upArrow) {
|
|
69
|
+
setSelectedIndex((prev) => Math.max(0, prev - 1));
|
|
70
|
+
}
|
|
71
|
+
else if (key.downArrow) {
|
|
72
|
+
setSelectedIndex((prev) => Math.min(flattenedNodes.length - 1, prev + 1));
|
|
73
|
+
}
|
|
74
|
+
else if (key.rightArrow || input === ' ') {
|
|
75
|
+
const node = flattenedNodes[selectedIndex];
|
|
76
|
+
if (node && node.type === 'category') {
|
|
77
|
+
setExpandedNodes((prev) => new Set(prev).add(node.id));
|
|
78
|
+
onExpand?.(node.id);
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
else if (key.leftArrow) {
|
|
82
|
+
const node = flattenedNodes[selectedIndex];
|
|
83
|
+
if (node && node.type === 'category' && expandedNodes.has(node.id)) {
|
|
84
|
+
setExpandedNodes((prev) => {
|
|
85
|
+
const next = new Set(prev);
|
|
86
|
+
next.delete(node.id);
|
|
87
|
+
return next;
|
|
88
|
+
});
|
|
89
|
+
onCollapse?.(node.id);
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
else if (key.return) {
|
|
93
|
+
const node = flattenedNodes[selectedIndex];
|
|
94
|
+
if (node) {
|
|
95
|
+
if (node.type === 'category') {
|
|
96
|
+
setExpandedNodes((prev) => {
|
|
97
|
+
const next = new Set(prev);
|
|
98
|
+
if (next.has(node.id)) {
|
|
99
|
+
next.delete(node.id);
|
|
100
|
+
onCollapse?.(node.id);
|
|
101
|
+
}
|
|
102
|
+
else {
|
|
103
|
+
next.add(node.id);
|
|
104
|
+
onExpand?.(node.id);
|
|
105
|
+
}
|
|
106
|
+
return next;
|
|
107
|
+
});
|
|
108
|
+
}
|
|
109
|
+
else {
|
|
110
|
+
onSelect?.(node);
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
}, { isActive: focused });
|
|
115
|
+
return (react_1.default.createElement(ink_1.Box, { flexDirection: "column", borderStyle: "round", borderColor: focused ? theme.colors.primary : theme.colors.border, padding: 1 },
|
|
116
|
+
react_1.default.createElement(ink_1.Text, { bold: true, color: theme.colors.primary }, "\uD83D\uDCE6 Modules"),
|
|
117
|
+
react_1.default.createElement(ink_1.Box, { flexDirection: "column", marginTop: 1 }, flattenedNodes.map((node, index) => {
|
|
118
|
+
const isSelected = index === selectedIndex && focused;
|
|
119
|
+
const isExpanded = expandedNodes.has(node.id);
|
|
120
|
+
const indent = ' '.repeat(node.depth);
|
|
121
|
+
const icon = node.type === 'category'
|
|
122
|
+
? (isExpanded ? '📂' : '📁')
|
|
123
|
+
: (node.metadata?.linked ? '✓' : '○');
|
|
124
|
+
return (react_1.default.createElement(ink_1.Box, { key: node.id },
|
|
125
|
+
react_1.default.createElement(ink_1.Text, { color: isSelected ? theme.colors.highlight : theme.colors.text, backgroundColor: isSelected ? theme.colors.selected : undefined, bold: isSelected },
|
|
126
|
+
indent,
|
|
127
|
+
icon,
|
|
128
|
+
" ",
|
|
129
|
+
node.label)));
|
|
130
|
+
}))));
|
|
131
|
+
};
|
|
132
|
+
exports.TreeNavigator = TreeNavigator;
|
|
133
|
+
//# sourceMappingURL=tree-navigator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tree-navigator.js","sourceRoot":"","sources":["../../../src/gui/components/tree-navigator.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Version Selector Component
|
|
3
|
+
* Displays and allows selection of module versions
|
|
4
|
+
*/
|
|
5
|
+
import React from 'react';
|
|
6
|
+
import { Theme } from '../theme';
|
|
7
|
+
export interface VersionInfo {
|
|
8
|
+
version: string;
|
|
9
|
+
isCurrent: boolean;
|
|
10
|
+
isPinned: boolean;
|
|
11
|
+
releaseDate?: string;
|
|
12
|
+
description?: string;
|
|
13
|
+
}
|
|
14
|
+
export interface VersionSelectorProps {
|
|
15
|
+
versions: VersionInfo[];
|
|
16
|
+
theme: Theme;
|
|
17
|
+
onSelect?: (version: string) => void;
|
|
18
|
+
onPin?: (version: string) => void;
|
|
19
|
+
onUnpin?: (version: string) => void;
|
|
20
|
+
focused?: boolean;
|
|
21
|
+
moduleName?: string;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Version Selector Component
|
|
25
|
+
*/
|
|
26
|
+
export declare const VersionSelector: React.FC<VersionSelectorProps>;
|
|
27
|
+
//# sourceMappingURL=version-selector.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"version-selector.d.ts","sourceRoot":"","sources":["../../../src/gui/components/version-selector.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAmB,MAAM,OAAO,CAAC;AAExC,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAEjC,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,KAAK,EAAE,KAAK,CAAC;IACb,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CAgH1D,CAAC"}
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Version Selector Component
|
|
4
|
+
* Displays and allows selection of module versions
|
|
5
|
+
*/
|
|
6
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
7
|
+
if (k2 === undefined) k2 = k;
|
|
8
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
9
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
10
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
11
|
+
}
|
|
12
|
+
Object.defineProperty(o, k2, desc);
|
|
13
|
+
}) : (function(o, m, k, k2) {
|
|
14
|
+
if (k2 === undefined) k2 = k;
|
|
15
|
+
o[k2] = m[k];
|
|
16
|
+
}));
|
|
17
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
18
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
19
|
+
}) : function(o, v) {
|
|
20
|
+
o["default"] = v;
|
|
21
|
+
});
|
|
22
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
23
|
+
var ownKeys = function(o) {
|
|
24
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
25
|
+
var ar = [];
|
|
26
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
27
|
+
return ar;
|
|
28
|
+
};
|
|
29
|
+
return ownKeys(o);
|
|
30
|
+
};
|
|
31
|
+
return function (mod) {
|
|
32
|
+
if (mod && mod.__esModule) return mod;
|
|
33
|
+
var result = {};
|
|
34
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
35
|
+
__setModuleDefault(result, mod);
|
|
36
|
+
return result;
|
|
37
|
+
};
|
|
38
|
+
})();
|
|
39
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
40
|
+
exports.VersionSelector = void 0;
|
|
41
|
+
const react_1 = __importStar(require("react"));
|
|
42
|
+
const ink_1 = require("ink");
|
|
43
|
+
/**
|
|
44
|
+
* Version Selector Component
|
|
45
|
+
*/
|
|
46
|
+
const VersionSelector = ({ versions, theme, onSelect, onPin, onUnpin, focused = false, moduleName, }) => {
|
|
47
|
+
const [selectedIndex, setSelectedIndex] = (0, react_1.useState)(0);
|
|
48
|
+
// Handle keyboard input
|
|
49
|
+
(0, ink_1.useInput)((input, key) => {
|
|
50
|
+
if (!focused)
|
|
51
|
+
return;
|
|
52
|
+
if (key.upArrow) {
|
|
53
|
+
setSelectedIndex((prev) => Math.max(0, prev - 1));
|
|
54
|
+
}
|
|
55
|
+
else if (key.downArrow) {
|
|
56
|
+
setSelectedIndex((prev) => Math.min(versions.length - 1, prev + 1));
|
|
57
|
+
}
|
|
58
|
+
else if (key.return) {
|
|
59
|
+
const version = versions[selectedIndex];
|
|
60
|
+
if (version) {
|
|
61
|
+
onSelect?.(version.version);
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
else if (input === 'p') {
|
|
65
|
+
const version = versions[selectedIndex];
|
|
66
|
+
if (version) {
|
|
67
|
+
if (version.isPinned) {
|
|
68
|
+
onUnpin?.(version.version);
|
|
69
|
+
}
|
|
70
|
+
else {
|
|
71
|
+
onPin?.(version.version);
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
}, { isActive: focused });
|
|
76
|
+
if (versions.length === 0) {
|
|
77
|
+
return (react_1.default.createElement(ink_1.Box, { flexDirection: "column", borderStyle: "round", borderColor: focused ? theme.colors.primary : theme.colors.border, padding: 1 },
|
|
78
|
+
react_1.default.createElement(ink_1.Text, { bold: true, color: theme.colors.primary }, "\uD83C\uDFF7\uFE0F Versions"),
|
|
79
|
+
react_1.default.createElement(ink_1.Box, { marginTop: 1 },
|
|
80
|
+
react_1.default.createElement(ink_1.Text, { color: theme.colors.textDim }, "No versions available"))));
|
|
81
|
+
}
|
|
82
|
+
return (react_1.default.createElement(ink_1.Box, { flexDirection: "column", borderStyle: "round", borderColor: focused ? theme.colors.primary : theme.colors.border, padding: 1 },
|
|
83
|
+
react_1.default.createElement(ink_1.Text, { bold: true, color: theme.colors.primary },
|
|
84
|
+
"\uD83C\uDFF7\uFE0F Versions ",
|
|
85
|
+
moduleName ? `- ${moduleName}` : ''),
|
|
86
|
+
react_1.default.createElement(ink_1.Box, { flexDirection: "column", marginTop: 1 }, versions.map((version, index) => {
|
|
87
|
+
const isSelected = index === selectedIndex && focused;
|
|
88
|
+
const icon = version.isCurrent ? '●' : '○';
|
|
89
|
+
const pinIcon = version.isPinned ? '📌' : '';
|
|
90
|
+
return (react_1.default.createElement(ink_1.Box, { key: version.version, flexDirection: "column" },
|
|
91
|
+
react_1.default.createElement(ink_1.Box, null,
|
|
92
|
+
react_1.default.createElement(ink_1.Text, { color: isSelected ? theme.colors.highlight : theme.colors.text, backgroundColor: isSelected ? theme.colors.selected : undefined, bold: isSelected || version.isCurrent },
|
|
93
|
+
icon,
|
|
94
|
+
" ",
|
|
95
|
+
version.version,
|
|
96
|
+
" ",
|
|
97
|
+
pinIcon,
|
|
98
|
+
version.isCurrent && (react_1.default.createElement(ink_1.Text, { color: theme.colors.success }, " (current)")))),
|
|
99
|
+
isSelected && version.description && (react_1.default.createElement(ink_1.Box, { marginLeft: 2 },
|
|
100
|
+
react_1.default.createElement(ink_1.Text, { color: theme.colors.textDim }, version.description))),
|
|
101
|
+
isSelected && version.releaseDate && (react_1.default.createElement(ink_1.Box, { marginLeft: 2 },
|
|
102
|
+
react_1.default.createElement(ink_1.Text, { color: theme.colors.textDim },
|
|
103
|
+
"Released: ",
|
|
104
|
+
version.releaseDate)))));
|
|
105
|
+
})),
|
|
106
|
+
react_1.default.createElement(ink_1.Box, { marginTop: 1 },
|
|
107
|
+
react_1.default.createElement(ink_1.Text, { color: theme.colors.textDim }, "\u2191\u2193: Navigate | Enter: Select | P: Pin/Unpin"))));
|
|
108
|
+
};
|
|
109
|
+
exports.VersionSelector = VersionSelector;
|
|
110
|
+
//# sourceMappingURL=version-selector.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"version-selector.js","sourceRoot":"","sources":["../../../src/gui/components/version-selector.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Version Loader Hook
|
|
3
|
+
* Integrates VersionManager with GUI state management
|
|
4
|
+
*/
|
|
5
|
+
import { VersionManager } from '../../core/version-manager';
|
|
6
|
+
import { VersionResolver } from '../../core/version-resolver';
|
|
7
|
+
import { CompatibilityChecker } from '../../core/compatibility-checker';
|
|
8
|
+
import { SelectionActions, SelectionState } from '../state/selection-state';
|
|
9
|
+
export interface UseVersionLoaderOptions {
|
|
10
|
+
selectionState: SelectionState;
|
|
11
|
+
selectionActions: SelectionActions;
|
|
12
|
+
versionManager?: VersionManager;
|
|
13
|
+
versionResolver?: VersionResolver;
|
|
14
|
+
compatibilityChecker?: CompatibilityChecker;
|
|
15
|
+
}
|
|
16
|
+
export interface VersionLoaderResult {
|
|
17
|
+
loadVersions: (modulePath: string) => Promise<void>;
|
|
18
|
+
selectAndValidateVersion: (version: string) => Promise<boolean>;
|
|
19
|
+
isCompatible: (modulePath: string) => Promise<boolean>;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Hook for loading and validating module versions
|
|
23
|
+
*/
|
|
24
|
+
export declare function useVersionLoader(options: UseVersionLoaderOptions): VersionLoaderResult;
|
|
25
|
+
//# sourceMappingURL=use-version-loader.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-version-loader.d.ts","sourceRoot":"","sources":["../../../src/gui/hooks/use-version-loader.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE5E,MAAM,WAAW,uBAAuB;IACtC,cAAc,EAAE,cAAc,CAAC;IAC/B,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,oBAAoB,CAAC,EAAE,oBAAoB,CAAC;CAC7C;AAED,MAAM,WAAW,mBAAmB;IAClC,YAAY,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACpD,wBAAwB,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAChE,YAAY,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CACxD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,uBAAuB,GAAG,mBAAmB,CA8HtF"}
|