prettier-hook.sh - Format Helper Flow
flowchart TD
Start([Start]) --> Wrapper["Ensure Bash / win-bash-wrapper"]
Wrapper --> Args{Files provided?}
Args -->|no| Usage([Show usage + exit 2])
Args -->|yes| Local{Local Prettier in node_modules?}
Local -->|yes| RunLocal["prettier --write files"]
Local -->|no| Node{node + package.json available?}
Node -->|yes| NpmCi["npm ci (retry)"]
Node -->|no| Npx
NpmCi --> Local2{Local Prettier now present?}
Local2 -->|yes| RunLocal2["prettier --write files"]
Local2 -->|no| Npx["npx --yes prettier --write (retry)"]
RunLocal --> Done([Exit 0])
RunLocal2 --> Done
Npx --> Done
classDef action fill:#ecfeff,stroke:#06b6d4
classDef decision fill:#fef3c7,stroke:#f59e0b
classDef success fill:#d1fae5,stroke:#10b981
classDef error fill:#fee2e2,stroke:#ef4444
class Wrapper,RunLocal,RunLocal2,NpmCi,Npx action
class Args,Local,Node,Local2 decision
class Usage error
class Done success
Back to build scripts