vibedoc 1.4.0 → 1.4.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.
- package/.next/BUILD_ID +1 -1
- package/.next/build-manifest.json +2 -2
- package/.next/prerender-manifest.json +3 -3
- package/.next/required-server-files.json +1 -1
- package/.next/server/app/(app)/activity/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/board/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/docs/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/explorer/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/memory/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/settings/page_client-reference-manifest.js +1 -1
- package/.next/server/app/(app)/setup/page_client-reference-manifest.js +1 -1
- package/.next/server/app/_global-error.html +2 -2
- package/.next/server/app/_global-error.rsc +1 -1
- package/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/_not-found.html +1 -1
- package/.next/server/app/_not-found.rsc +1 -1
- package/.next/server/app/_not-found.segments/_full.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_index.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/activity.html +1 -1
- package/.next/server/app/activity.rsc +4 -4
- package/.next/server/app/activity.segments/!KGFwcCk/activity/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/activity.segments/!KGFwcCk/activity.segment.rsc +1 -1
- package/.next/server/app/activity.segments/!KGFwcCk.segment.rsc +3 -3
- package/.next/server/app/activity.segments/_full.segment.rsc +4 -4
- package/.next/server/app/activity.segments/_head.segment.rsc +1 -1
- package/.next/server/app/activity.segments/_index.segment.rsc +1 -1
- package/.next/server/app/activity.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/api/activity/route.js.nft.json +1 -1
- package/.next/server/app/api/backlinks/route.js.nft.json +1 -1
- package/.next/server/app/api/context/route.js.nft.json +1 -1
- package/.next/server/app/api/decisions/route.js.nft.json +1 -1
- package/.next/server/app/api/docs/route.js.nft.json +1 -1
- package/.next/server/app/api/explorer/route.js.nft.json +1 -1
- package/.next/server/app/api/mcp/route.js.nft.json +1 -1
- package/.next/server/app/api/memory/route.js.nft.json +1 -1
- package/.next/server/app/api/projects/route.js.nft.json +1 -1
- package/.next/server/app/api/registry/route.js.nft.json +1 -1
- package/.next/server/app/api/settings/route.js.nft.json +1 -1
- package/.next/server/app/api/setup/generate/route.js.nft.json +1 -1
- package/.next/server/app/api/setup/write/route.js.nft.json +1 -1
- package/.next/server/app/api/summary/route.js.nft.json +1 -1
- package/.next/server/app/api/tasks/create/route.js.nft.json +1 -1
- package/.next/server/app/api/tasks/route.js.nft.json +1 -1
- package/.next/server/app/board.html +1 -1
- package/.next/server/app/board.rsc +4 -4
- package/.next/server/app/board.segments/!KGFwcCk/board/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/board.segments/!KGFwcCk/board.segment.rsc +1 -1
- package/.next/server/app/board.segments/!KGFwcCk.segment.rsc +3 -3
- package/.next/server/app/board.segments/_full.segment.rsc +4 -4
- package/.next/server/app/board.segments/_head.segment.rsc +1 -1
- package/.next/server/app/board.segments/_index.segment.rsc +1 -1
- package/.next/server/app/board.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/docs.html +1 -1
- package/.next/server/app/docs.rsc +4 -4
- package/.next/server/app/docs.segments/!KGFwcCk/docs/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/docs.segments/!KGFwcCk/docs.segment.rsc +1 -1
- package/.next/server/app/docs.segments/!KGFwcCk.segment.rsc +3 -3
- package/.next/server/app/docs.segments/_full.segment.rsc +4 -4
- package/.next/server/app/docs.segments/_head.segment.rsc +1 -1
- package/.next/server/app/docs.segments/_index.segment.rsc +1 -1
- package/.next/server/app/docs.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/explorer.html +1 -1
- package/.next/server/app/explorer.rsc +4 -4
- package/.next/server/app/explorer.segments/!KGFwcCk/explorer/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/explorer.segments/!KGFwcCk/explorer.segment.rsc +1 -1
- package/.next/server/app/explorer.segments/!KGFwcCk.segment.rsc +3 -3
- package/.next/server/app/explorer.segments/_full.segment.rsc +4 -4
- package/.next/server/app/explorer.segments/_head.segment.rsc +1 -1
- package/.next/server/app/explorer.segments/_index.segment.rsc +1 -1
- package/.next/server/app/explorer.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/index.html +1 -1
- package/.next/server/app/index.rsc +1 -1
- package/.next/server/app/index.segments/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/index.segments/_full.segment.rsc +1 -1
- package/.next/server/app/index.segments/_head.segment.rsc +1 -1
- package/.next/server/app/index.segments/_index.segment.rsc +1 -1
- package/.next/server/app/index.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/memory.html +1 -1
- package/.next/server/app/memory.rsc +4 -4
- package/.next/server/app/memory.segments/!KGFwcCk/memory/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/memory.segments/!KGFwcCk/memory.segment.rsc +1 -1
- package/.next/server/app/memory.segments/!KGFwcCk.segment.rsc +3 -3
- package/.next/server/app/memory.segments/_full.segment.rsc +4 -4
- package/.next/server/app/memory.segments/_head.segment.rsc +1 -1
- package/.next/server/app/memory.segments/_index.segment.rsc +1 -1
- package/.next/server/app/memory.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/settings.html +1 -1
- package/.next/server/app/settings.rsc +4 -4
- package/.next/server/app/settings.segments/!KGFwcCk/settings/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/settings.segments/!KGFwcCk/settings.segment.rsc +1 -1
- package/.next/server/app/settings.segments/!KGFwcCk.segment.rsc +3 -3
- package/.next/server/app/settings.segments/_full.segment.rsc +4 -4
- package/.next/server/app/settings.segments/_head.segment.rsc +1 -1
- package/.next/server/app/settings.segments/_index.segment.rsc +1 -1
- package/.next/server/app/settings.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/setup.html +1 -1
- package/.next/server/app/setup.rsc +4 -4
- package/.next/server/app/setup.segments/!KGFwcCk/setup/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/setup.segments/!KGFwcCk/setup.segment.rsc +1 -1
- package/.next/server/app/setup.segments/!KGFwcCk.segment.rsc +3 -3
- package/.next/server/app/setup.segments/_full.segment.rsc +4 -4
- package/.next/server/app/setup.segments/_head.segment.rsc +1 -1
- package/.next/server/app/setup.segments/_index.segment.rsc +1 -1
- package/.next/server/app/setup.segments/_tree.segment.rsc +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__add7ce25._.js +1 -1
- package/.next/server/chunks/ssr/_10c46cea._.js +1 -1
- package/.next/server/chunks/ssr/_15efe9a8._.js +1 -1
- package/.next/server/chunks/ssr/_15efe9a8._.js.map +1 -1
- package/.next/server/chunks/ssr/_acb63a7d._.js +1 -1
- package/.next/server/chunks/ssr/_acb63a7d._.js.map +1 -1
- package/.next/server/chunks/ssr/src_app_(app)_setup_page_tsx_effb3116._.js +1 -1
- package/.next/server/chunks/ssr/src_app_(app)_setup_page_tsx_effb3116._.js.map +1 -1
- package/.next/server/chunks/ssr/src_components_docs_MarkdownRenderer_tsx_c2823695._.js +2 -2
- package/.next/server/chunks/ssr/src_components_docs_MarkdownRenderer_tsx_c2823695._.js.map +1 -1
- package/.next/server/pages/404.html +1 -1
- package/.next/server/pages/500.html +2 -2
- package/.next/server/server-reference-manifest.js +1 -1
- package/.next/server/server-reference-manifest.json +1 -1
- package/.next/static/chunks/{c613844e13174012.js → 13bb47148aab2650.js} +2 -2
- package/.next/static/chunks/58191ebe3f737b95.js +10 -0
- package/.next/static/chunks/{a573ce301ebe6879.js → 76dd41a0a6e00541.js} +3 -3
- package/.next/static/chunks/918b80a98b47faa7.js +1 -0
- package/.next/static/chunks/{25d2e746e06b38ba.js → c5cf10f92eba82e6.js} +2 -2
- package/README.md +85 -18
- package/package.json +3 -2
- package/.next/static/chunks/2899688335d3adb2.js +0 -10
- package/.next/static/chunks/9ef7e8256638a410.js +0 -1
- /package/.next/static/{3qaTeSReklR4iA-D6kF9C → 5YfD8cBCzJoKPTXc-Q0s5}/_buildManifest.js +0 -0
- /package/.next/static/{3qaTeSReklR4iA-D6kF9C → 5YfD8cBCzJoKPTXc-Q0s5}/_clientMiddlewareManifest.json +0 -0
- /package/.next/static/{3qaTeSReklR4iA-D6kF9C → 5YfD8cBCzJoKPTXc-Q0s5}/_ssgManifest.js +0 -0
package/README.md
CHANGED
|
@@ -5,15 +5,19 @@
|
|
|
5
5
|
[](https://www.npmjs.com/package/vibedoc)
|
|
6
6
|
[](https://nodejs.org)
|
|
7
7
|
[](./LICENSE)
|
|
8
|
+
[](https://github.com/quanghoangf/vibedoc/actions/workflows/ci.yml)
|
|
8
9
|
|
|
9
10
|
A kanban board + docs viewer + MCP server — all in one process, zero config.
|
|
10
11
|
Point your AI agent at it. Watch tasks move in real time.
|
|
12
|
+

|
|
11
13
|
|
|
12
14
|
```
|
|
13
|
-
http://localhost:<port> ← your browser (kanban, docs, activity, memory)
|
|
15
|
+
http://localhost:<port> ← your browser (kanban, docs, activity, memory, explorer)
|
|
14
16
|
http://localhost:<port>/api/mcp ← AI agent connects here via MCP
|
|
15
17
|
```
|
|
16
18
|
|
|
19
|
+
**Why VibeDoc?** Most AI coding sessions lose context between chats. VibeDoc gives your agent a persistent home: it reads tasks from markdown files, writes decisions as ADRs, and updates a memory file at session end — so the next agent picks up exactly where the last one left off. The browser UI lets you watch everything happen live.
|
|
20
|
+
|
|
17
21
|
---
|
|
18
22
|
|
|
19
23
|
## Quick start
|
|
@@ -23,7 +27,8 @@ cd your-project
|
|
|
23
27
|
npx vibedoc
|
|
24
28
|
```
|
|
25
29
|
|
|
26
|
-
VibeDoc picks a free port automatically and opens the setup page in your browser.
|
|
30
|
+
VibeDoc picks a free port automatically and opens the setup page in your browser.
|
|
31
|
+
The port is printed in the terminal — use it when configuring your AI agent.
|
|
27
32
|
|
|
28
33
|
### Options
|
|
29
34
|
|
|
@@ -42,15 +47,16 @@ VIBEDOC_ROOT=/path/to/project npx vibedoc
|
|
|
42
47
|
- **Kanban board** — tasks live in `plans/tasks/*.md`, rendered as draggable cards
|
|
43
48
|
- **Docs viewer** — browse and edit every markdown file in `docs/`
|
|
44
49
|
- **Live activity feed** — every AI action appears instantly via SSE, no polling
|
|
45
|
-
- **Memory tab** — persistent `MEMORY.md` for session handoffs
|
|
50
|
+
- **Memory tab** — persistent `MEMORY.md` for session handoffs between AI agents
|
|
46
51
|
- **File explorer** — treemap/tree/heatmap views of your docs with AI-generated descriptions
|
|
47
|
-
- **MCP server** —
|
|
52
|
+
- **MCP server** — 21 tools your AI agent can call to read docs, move tasks, write ADRs, and more
|
|
48
53
|
|
|
49
54
|
---
|
|
50
55
|
|
|
51
56
|
## Connect your AI agent
|
|
52
57
|
|
|
53
58
|
### Claude Code (`~/.claude/claude_desktop_config.json`)
|
|
59
|
+
|
|
54
60
|
```json
|
|
55
61
|
{
|
|
56
62
|
"mcpServers": {
|
|
@@ -62,6 +68,7 @@ VIBEDOC_ROOT=/path/to/project npx vibedoc
|
|
|
62
68
|
```
|
|
63
69
|
|
|
64
70
|
### Cursor (`.cursor/mcp.json` in project root)
|
|
71
|
+
|
|
65
72
|
```json
|
|
66
73
|
{
|
|
67
74
|
"mcpServers": {
|
|
@@ -73,6 +80,7 @@ VIBEDOC_ROOT=/path/to/project npx vibedoc
|
|
|
73
80
|
```
|
|
74
81
|
|
|
75
82
|
### Windsurf (`~/.codeium/windsurf/mcp_config.json`)
|
|
83
|
+
|
|
76
84
|
```json
|
|
77
85
|
{
|
|
78
86
|
"mcpServers": {
|
|
@@ -87,20 +95,55 @@ VIBEDOC_ROOT=/path/to/project npx vibedoc
|
|
|
87
95
|
|
|
88
96
|
---
|
|
89
97
|
|
|
90
|
-
##
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
|
97
|
-
|
|
|
98
|
-
| `
|
|
99
|
-
| `
|
|
100
|
-
| `
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
98
|
+
## MCP tools
|
|
99
|
+
|
|
100
|
+
21 tools your AI agent can call, grouped by category.
|
|
101
|
+
|
|
102
|
+
### Session & status
|
|
103
|
+
|
|
104
|
+
| Tool | Effect |
|
|
105
|
+
| ----------------------- | ---------------------------------------------------------------- |
|
|
106
|
+
| `vibedoc_read_memory` | Read `MEMORY.md` — triggers "session start" in the activity feed |
|
|
107
|
+
| `vibedoc_update_memory` | Write end-of-session summary and handoff note |
|
|
108
|
+
| `vibedoc_get_status` | Board snapshot — active tasks, blockers, doc count |
|
|
109
|
+
|
|
110
|
+
### Tasks
|
|
111
|
+
|
|
112
|
+
| Tool | Effect |
|
|
113
|
+
| --------------------- | ------------------------------------------------------- |
|
|
114
|
+
| `vibedoc_list_tasks` | Full kanban board, filterable by status |
|
|
115
|
+
| `vibedoc_get_task` | Read a specific task with scope and acceptance criteria |
|
|
116
|
+
| `vibedoc_update_task` | Move task status → **you see it live in the browser** |
|
|
117
|
+
|
|
118
|
+
### Docs
|
|
119
|
+
|
|
120
|
+
| Tool | Effect |
|
|
121
|
+
| ------------------------ | -------------------------------------- |
|
|
122
|
+
| `vibedoc_list_docs` | Discover all docs grouped by section |
|
|
123
|
+
| `vibedoc_read_doc` | Load any doc by name + shows backlinks |
|
|
124
|
+
| `vibedoc_search_docs` | Full-text search across all docs |
|
|
125
|
+
| `vibedoc_write_doc` | Write or overwrite a doc file |
|
|
126
|
+
| `vibedoc_create_doc` | Create a doc from a template |
|
|
127
|
+
| `vibedoc_append_doc` | Append content to an existing doc |
|
|
128
|
+
| `vibedoc_rename_doc` | Move or rename a doc |
|
|
129
|
+
| `vibedoc_delete_doc` | Delete a doc |
|
|
130
|
+
| `vibedoc_list_templates` | List available doc templates with IDs |
|
|
131
|
+
|
|
132
|
+
### Context & registry
|
|
133
|
+
|
|
134
|
+
| Tool | Effect |
|
|
135
|
+
| -------------------------- | ----------------------------------------------------------- |
|
|
136
|
+
| `vibedoc_get_context` | Bundle multiple docs into a single context block |
|
|
137
|
+
| `vibedoc_get_file_map` | Structured map of all docs with descriptions and dates |
|
|
138
|
+
| `vibedoc_read_registry` | Read `docs/REGISTRY.md` — file tree + annotations |
|
|
139
|
+
| `vibedoc_rebuild_registry` | Regenerate `REGISTRY.md` after adding or removing docs |
|
|
140
|
+
| `vibedoc_annotate_doc` | Update description and keywords for one doc in the registry |
|
|
141
|
+
|
|
142
|
+
### Decisions
|
|
143
|
+
|
|
144
|
+
| Tool | Effect |
|
|
145
|
+
| ---------------------- | ---------------------------------------------- |
|
|
146
|
+
| `vibedoc_log_decision` | Write a new Architecture Decision Record (ADR) |
|
|
104
147
|
|
|
105
148
|
---
|
|
106
149
|
|
|
@@ -112,17 +155,21 @@ Add this to your project's `CLAUDE.md` to guide your AI agent:
|
|
|
112
155
|
## Session protocol
|
|
113
156
|
|
|
114
157
|
**Start of session:**
|
|
158
|
+
|
|
115
159
|
1. Call `vibedoc_read_memory` — read handoff from last session
|
|
116
160
|
2. Call `vibedoc_get_status` — check what's active and blocked
|
|
117
161
|
|
|
118
162
|
**Before working on a task:**
|
|
163
|
+
|
|
119
164
|
- Call `vibedoc_get_task <id>` — read full spec and acceptance criteria
|
|
120
165
|
- Call `vibedoc_update_task <id> in-progress`
|
|
121
166
|
|
|
122
167
|
**When making architectural decisions:**
|
|
168
|
+
|
|
123
169
|
- Call `vibedoc_log_decision` — record it as an ADR
|
|
124
170
|
|
|
125
171
|
**End of session:**
|
|
172
|
+
|
|
126
173
|
- Call `vibedoc_update_task` for each task touched
|
|
127
174
|
- Call `vibedoc_update_memory` with full summary and handoff note
|
|
128
175
|
```
|
|
@@ -148,6 +195,7 @@ your-project/
|
|
|
148
195
|
│ │ │ └── EVENTS.md
|
|
149
196
|
│ │ └── decisions/
|
|
150
197
|
│ │ └── ADR-001-*.md
|
|
198
|
+
│ └── REGISTRY.md ← auto-generated file index
|
|
151
199
|
├── plans/tasks/
|
|
152
200
|
│ ├── T001-scaffold.md ← **Status:** 📋 Ready
|
|
153
201
|
│ └── T002-auth.md
|
|
@@ -171,6 +219,19 @@ The Activity tab shows the last 30 events in real time via SSE.
|
|
|
171
219
|
|
|
172
220
|
---
|
|
173
221
|
|
|
222
|
+
## Development
|
|
223
|
+
|
|
224
|
+
```bash
|
|
225
|
+
git clone https://github.com/quanghoangf/vibedoc.git
|
|
226
|
+
cd vibedoc
|
|
227
|
+
pnpm install
|
|
228
|
+
VIBEDOC_ROOT=/path/to/test-project pnpm dev
|
|
229
|
+
```
|
|
230
|
+
|
|
231
|
+
See [CONTRIBUTING.md](./CONTRIBUTING.md) for architecture rules, commit conventions, and how to submit a PR.
|
|
232
|
+
|
|
233
|
+
---
|
|
234
|
+
|
|
174
235
|
## Requirements
|
|
175
236
|
|
|
176
237
|
- **Node.js 18+**
|
|
@@ -188,6 +249,12 @@ The Activity tab shows the last 30 events in real time via SSE.
|
|
|
188
249
|
|
|
189
250
|
---
|
|
190
251
|
|
|
252
|
+
## Contributing
|
|
253
|
+
|
|
254
|
+
Pull requests are welcome. Check [CONTRIBUTING.md](./CONTRIBUTING.md) for the development setup, architecture rules, and commit conventions. For ideas and questions, open a [Discussion](https://github.com/quanghoangf/vibedoc/discussions).
|
|
255
|
+
|
|
256
|
+
---
|
|
257
|
+
|
|
191
258
|
## License
|
|
192
259
|
|
|
193
260
|
MIT
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "vibedoc",
|
|
3
|
-
"version": "1.4.
|
|
3
|
+
"version": "1.4.1",
|
|
4
4
|
"description": "Local-first project intelligence for AI-assisted development. Web UI + MCP server in one.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"bin": {
|
|
@@ -36,7 +36,8 @@
|
|
|
36
36
|
"dev:ws": "node ws-server.js",
|
|
37
37
|
"build": "next build",
|
|
38
38
|
"start": "next start",
|
|
39
|
-
"lint": "
|
|
39
|
+
"lint": "eslint src --ext .ts,.tsx",
|
|
40
|
+
"typecheck": "tsc --noEmit",
|
|
40
41
|
"release": "semantic-release",
|
|
41
42
|
"prepublishOnly": "next build"
|
|
42
43
|
},
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,98822,e=>{"use strict";var t=e.i(76809),s=e.i(65773);function n(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}let r=n(),i=/[&<>"']/,l=RegExp(i.source,"g"),a=/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,o=RegExp(a.source,"g"),c={"&":"&","<":"<",">":">",'"':""","'":"'"},d=e=>c[e];function h(e,t){if(t){if(i.test(e))return e.replace(l,d)}else if(a.test(e))return e.replace(o,d);return e}let p=/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig,u=/(^|[^\[])\^/g;function x(e,t){let s="string"==typeof e?e:e.source;t=t||"";let n={replace:(e,t)=>{let r="string"==typeof t?t:t.source;return r=r.replace(u,"$1"),s=s.replace(e,r),n},getRegex:()=>new RegExp(s,t)};return n}function m(e){try{e=encodeURI(e).replace(/%25/g,"%")}catch(e){return null}return e}let g={exec:()=>null};function b(e,t){let s=e.replace(/\|/g,(e,t,s)=>{let n=!1,r=t;for(;--r>=0&&"\\"===s[r];)n=!n;return n?"|":" |"}).split(/ \|/),n=0;if(s[0].trim()||s.shift(),s.length>0&&!s[s.length-1].trim()&&s.pop(),t)if(s.length>t)s.splice(t);else for(;s.length<t;)s.push("");for(;n<s.length;n++)s[n]=s[n].trim().replace(/\\\|/g,"|");return s}function f(e,t,s){let n=e.length;if(0===n)return"";let r=0;for(;r<n;){let i=e.charAt(n-r-1);if(i!==t||s)if(i!==t&&s)r++;else break;else r++}return e.slice(0,n-r)}function k(e,t,s,n){let r=t.href,i=t.title?h(t.title):null,l=e[1].replace(/\\([\[\]])/g,"$1");if("!"!==e[0].charAt(0)){n.state.inLink=!0;let e={type:"link",raw:s,href:r,title:i,text:l,tokens:n.inlineTokens(l)};return n.state.inLink=!1,e}return{type:"image",raw:s,href:r,title:i,text:h(l)}}class y{options;rules;lexer;constructor(e){this.options=e||r}space(e){let t=this.rules.block.newline.exec(e);if(t&&t[0].length>0)return{type:"space",raw:t[0]}}code(e){let t=this.rules.block.code.exec(e);if(t){let e=t[0].replace(/^ {1,4}/gm,"");return{type:"code",raw:t[0],codeBlockStyle:"indented",text:this.options.pedantic?e:f(e,"\n")}}}fences(e){let t=this.rules.block.fences.exec(e);if(t){let e=t[0],s=function(e,t){let s=e.match(/^(\s+)(?:```)/);if(null===s)return t;let n=s[1];return t.split("\n").map(e=>{let t=e.match(/^\s+/);if(null===t)return e;let[s]=t;return s.length>=n.length?e.slice(n.length):e}).join("\n")}(e,t[3]||"");return{type:"code",raw:e,lang:t[2]?t[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):t[2],text:s}}}heading(e){let t=this.rules.block.heading.exec(e);if(t){let e=t[2].trim();if(/#$/.test(e)){let t=f(e,"#");this.options.pedantic?e=t.trim():(!t||/ $/.test(t))&&(e=t.trim())}return{type:"heading",raw:t[0],depth:t[1].length,text:e,tokens:this.lexer.inline(e)}}}hr(e){let t=this.rules.block.hr.exec(e);if(t)return{type:"hr",raw:t[0]}}blockquote(e){let t=this.rules.block.blockquote.exec(e);if(t){let e=t[0].replace(/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,"\n $1");e=f(e.replace(/^ *>[ \t]?/gm,""),"\n");let s=this.lexer.state.top;this.lexer.state.top=!0;let n=this.lexer.blockTokens(e);return this.lexer.state.top=s,{type:"blockquote",raw:t[0],tokens:n,text:e}}}list(e){let t=this.rules.block.list.exec(e);if(t){let s=t[1].trim(),n=s.length>1,r={type:"list",raw:"",ordered:n,start:n?+s.slice(0,-1):"",loose:!1,items:[]};s=n?`\\d{1,9}\\${s.slice(-1)}`:`\\${s}`,this.options.pedantic&&(s=n?s:"[*+-]");let i=RegExp(`^( {0,3}${s})((?:[ ][^\\n]*)?(?:\\n|$))`),l="",a="",o=!1;for(;e;){let s,n=!1;if(!(t=i.exec(e))||this.rules.block.hr.test(e))break;l=t[0],e=e.substring(l.length);let c=t[2].split("\n",1)[0].replace(/^\t+/,e=>" ".repeat(3*e.length)),d=e.split("\n",1)[0],h=0;this.options.pedantic?(h=2,a=c.trimStart()):(h=(h=t[2].search(/[^ ]/))>4?1:h,a=c.slice(h),h+=t[1].length);let p=!1;if(!c&&/^ *$/.test(d)&&(l+=d+"\n",e=e.substring(d.length+1),n=!0),!n){let t=RegExp(`^ {0,${Math.min(3,h-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),s=RegExp(`^ {0,${Math.min(3,h-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),n=RegExp(`^ {0,${Math.min(3,h-1)}}(?:\`\`\`|~~~)`),r=RegExp(`^ {0,${Math.min(3,h-1)}}#`);for(;e;){let i=e.split("\n",1)[0];if(d=i,this.options.pedantic&&(d=d.replace(/^ {1,4}(?=( {4})*[^ ])/g," ")),n.test(d)||r.test(d)||t.test(d)||s.test(e))break;if(d.search(/[^ ]/)>=h||!d.trim())a+="\n"+d.slice(h);else{if(p||c.search(/[^ ]/)>=4||n.test(c)||r.test(c)||s.test(c))break;a+="\n"+d}p||d.trim()||(p=!0),l+=i+"\n",e=e.substring(i.length+1),c=d.slice(h)}}!r.loose&&(o?r.loose=!0:/\n *\n *$/.test(l)&&(o=!0));let u=null;this.options.gfm&&(u=/^\[[ xX]\] /.exec(a))&&(s="[ ] "!==u[0],a=a.replace(/^\[[ xX]\] +/,"")),r.items.push({type:"list_item",raw:l,task:!!u,checked:s,loose:!1,text:a,tokens:[]}),r.raw+=l}r.items[r.items.length-1].raw=l.trimEnd(),r.items[r.items.length-1].text=a.trimEnd(),r.raw=r.raw.trimEnd();for(let e=0;e<r.items.length;e++)if(this.lexer.state.top=!1,r.items[e].tokens=this.lexer.blockTokens(r.items[e].text,[]),!r.loose){let t=r.items[e].tokens.filter(e=>"space"===e.type);r.loose=t.length>0&&t.some(e=>/\n.*\n/.test(e.raw))}if(r.loose)for(let e=0;e<r.items.length;e++)r.items[e].loose=!0;return r}}html(e){let t=this.rules.block.html.exec(e);if(t)return{type:"html",block:!0,raw:t[0],pre:"pre"===t[1]||"script"===t[1]||"style"===t[1],text:t[0]}}def(e){let t=this.rules.block.def.exec(e);if(t){let e=t[1].toLowerCase().replace(/\s+/g," "),s=t[2]?t[2].replace(/^<(.*)>$/,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",n=t[3]?t[3].substring(1,t[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):t[3];return{type:"def",tag:e,raw:t[0],href:s,title:n}}}table(e){let t=this.rules.block.table.exec(e);if(!t||!/[:|]/.test(t[2]))return;let s=b(t[1]),n=t[2].replace(/^\||\| *$/g,"").split("|"),r=t[3]&&t[3].trim()?t[3].replace(/\n[ \t]*$/,"").split("\n"):[],i={type:"table",raw:t[0],header:[],align:[],rows:[]};if(s.length===n.length){for(let e of n)/^ *-+: *$/.test(e)?i.align.push("right"):/^ *:-+: *$/.test(e)?i.align.push("center"):/^ *:-+ *$/.test(e)?i.align.push("left"):i.align.push(null);for(let e of s)i.header.push({text:e,tokens:this.lexer.inline(e)});for(let e of r)i.rows.push(b(e,i.header.length).map(e=>({text:e,tokens:this.lexer.inline(e)})));return i}}lheading(e){let t=this.rules.block.lheading.exec(e);if(t)return{type:"heading",raw:t[0],depth:"="===t[2].charAt(0)?1:2,text:t[1],tokens:this.lexer.inline(t[1])}}paragraph(e){let t=this.rules.block.paragraph.exec(e);if(t){let e="\n"===t[1].charAt(t[1].length-1)?t[1].slice(0,-1):t[1];return{type:"paragraph",raw:t[0],text:e,tokens:this.lexer.inline(e)}}}text(e){let t=this.rules.block.text.exec(e);if(t)return{type:"text",raw:t[0],text:t[0],tokens:this.lexer.inline(t[0])}}escape(e){let t=this.rules.inline.escape.exec(e);if(t)return{type:"escape",raw:t[0],text:h(t[1])}}tag(e){let t=this.rules.inline.tag.exec(e);if(t)return!this.lexer.state.inLink&&/^<a /i.test(t[0])?this.lexer.state.inLink=!0:this.lexer.state.inLink&&/^<\/a>/i.test(t[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&/^<(pre|code|kbd|script)(\s|>)/i.test(t[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(t[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:t[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:t[0]}}link(e){let t=this.rules.inline.link.exec(e);if(t){let e=t[2].trim();if(!this.options.pedantic&&/^</.test(e)){if(!/>$/.test(e))return;let t=f(e.slice(0,-1),"\\");if((e.length-t.length)%2==0)return}else{let e=function(e,t){if(-1===e.indexOf(")"))return -1;let s=0;for(let t=0;t<e.length;t++)if("\\"===e[t])t++;else if("("===e[t])s++;else if(")"===e[t]&&--s<0)return t;return -1}(t[2],0);if(e>-1){let s=(0===t[0].indexOf("!")?5:4)+t[1].length+e;t[2]=t[2].substring(0,e),t[0]=t[0].substring(0,s).trim(),t[3]=""}}let s=t[2],n="";if(this.options.pedantic){let e=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(s);e&&(s=e[1],n=e[3])}else n=t[3]?t[3].slice(1,-1):"";return s=s.trim(),/^</.test(s)&&(s=this.options.pedantic&&!/>$/.test(e)?s.slice(1):s.slice(1,-1)),k(t,{href:s?s.replace(this.rules.inline.anyPunctuation,"$1"):s,title:n?n.replace(this.rules.inline.anyPunctuation,"$1"):n},t[0],this.lexer)}}reflink(e,t){let s;if((s=this.rules.inline.reflink.exec(e))||(s=this.rules.inline.nolink.exec(e))){let e=t[(s[2]||s[1]).replace(/\s+/g," ").toLowerCase()];if(!e){let e=s[0].charAt(0);return{type:"text",raw:e,text:e}}return k(s,e,s[0],this.lexer)}}emStrong(e,t,s=""){let n=this.rules.inline.emStrongLDelim.exec(e);if(!(!n||n[3]&&s.match(/[\p{L}\p{N}]/u))&&(!(n[1]||n[2])||!s||this.rules.inline.punctuation.exec(s))){let s=[...n[0]].length-1,r,i,l=s,a=0,o="*"===n[0][0]?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(o.lastIndex=0,t=t.slice(-1*e.length+s);null!=(n=o.exec(t));){if(!(r=n[1]||n[2]||n[3]||n[4]||n[5]||n[6]))continue;if(i=[...r].length,n[3]||n[4]){l+=i;continue}if((n[5]||n[6])&&s%3&&!((s+i)%3)){a+=i;continue}if((l-=i)>0)continue;i=Math.min(i,i+l+a);let t=[...n[0]][0].length,o=e.slice(0,s+n.index+t+i);if(Math.min(s,i)%2){let e=o.slice(1,-1);return{type:"em",raw:o,text:e,tokens:this.lexer.inlineTokens(e)}}let c=o.slice(2,-2);return{type:"strong",raw:o,text:c,tokens:this.lexer.inlineTokens(c)}}}}codespan(e){let t=this.rules.inline.code.exec(e);if(t){let e=t[2].replace(/\n/g," "),s=/[^ ]/.test(e),n=/^ /.test(e)&&/ $/.test(e);return s&&n&&(e=e.substring(1,e.length-1)),e=h(e,!0),{type:"codespan",raw:t[0],text:e}}}br(e){let t=this.rules.inline.br.exec(e);if(t)return{type:"br",raw:t[0]}}del(e){let t=this.rules.inline.del.exec(e);if(t)return{type:"del",raw:t[0],text:t[2],tokens:this.lexer.inlineTokens(t[2])}}autolink(e){let t=this.rules.inline.autolink.exec(e);if(t){let e,s;return s="@"===t[2]?"mailto:"+(e=h(t[1])):e=h(t[1]),{type:"link",raw:t[0],text:e,href:s,tokens:[{type:"text",raw:e,text:e}]}}}url(e){let t;if(t=this.rules.inline.url.exec(e)){let e,s;if("@"===t[2])s="mailto:"+(e=h(t[0]));else{let n;do n=t[0],t[0]=this.rules.inline._backpedal.exec(t[0])?.[0]??"";while(n!==t[0])e=h(t[0]),s="www."===t[1]?"http://"+t[0]:t[0]}return{type:"link",raw:t[0],text:e,href:s,tokens:[{type:"text",raw:e,text:e}]}}}inlineText(e){let t=this.rules.inline.text.exec(e);if(t){let e;return e=this.lexer.state.inRawBlock?t[0]:h(t[0]),{type:"text",raw:t[0],text:e}}}}let w=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,v=/(?:[*+-]|\d{1,9}[.)])/,j=x(/^(?!bull |blockCode|fences|blockquote|heading|html)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html))+?)\n {0,3}(=+|-+) *(?:\n+|$)/).replace(/bull/g,v).replace(/blockCode/g,/ {4}/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).getRegex(),N=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,T=/(?!\s*\])(?:\\.|[^\[\]\\])+/,S=x(/^ {0,3}\[(label)\]: *(?:\n *)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n *)?| *\n *)(title))? *(?:\n+|$)/).replace("label",T).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),C=x(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,v).getRegex(),$="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",z=/<!--(?:-?>|[\s\S]*?(?:-->|$))/,A=x("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n *)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$))","i").replace("comment",z).replace("tag",$).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),R=x(N).replace("hr",w).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",$).getRegex(),I={blockquote:x(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",R).getRegex(),code:/^( {4}[^\n]+(?:\n(?: *(?:\n|$))*)?)+/,def:S,fences:/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,heading:/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,hr:w,html:A,lheading:j,list:C,newline:/^(?: *(?:\n|$))+/,paragraph:R,table:g,text:/^[^\n]+/},M=x("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",w).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",$).getRegex(),P={...I,table:M,paragraph:x(N).replace("hr",w).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",M).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",$).getRegex()},L={...I,html:x("^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:\"[^\"]*\"|'[^']*'|\\s[^'\"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))").replace("comment",z).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:g,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:x(N).replace("hr",w).replace("heading"," *#{1,6} *[^\n]").replace("lheading",j).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},_=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,E=/^( {2,}|\\)\n(?!\s*$)/,q="\\p{P}\\p{S}",B=x(/^((?![*_])[\spunctuation])/,"u").replace(/punctuation/g,q).getRegex(),D=x(/^(?:\*+(?:((?!\*)[punct])|[^\s*]))|^_+(?:((?!_)[punct])|([^\s_]))/,"u").replace(/punct/g,q).getRegex(),F=x("^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)[punct](\\*+)(?=[\\s]|$)|[^punct\\s](\\*+)(?!\\*)(?=[punct\\s]|$)|(?!\\*)[punct\\s](\\*+)(?=[^punct\\s])|[\\s](\\*+)(?!\\*)(?=[punct])|(?!\\*)[punct](\\*+)(?!\\*)(?=[punct])|[^punct\\s](\\*+)(?=[^punct\\s])","gu").replace(/punct/g,q).getRegex(),Q=x("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)[punct](_+)(?=[\\s]|$)|[^punct\\s](_+)(?!_)(?=[punct\\s]|$)|(?!_)[punct\\s](_+)(?=[^punct\\s])|[\\s](_+)(?!_)(?=[punct])|(?!_)[punct](_+)(?!_)(?=[punct])","gu").replace(/punct/g,q).getRegex(),O=x(/\\([punct])/,"gu").replace(/punct/g,q).getRegex(),Z=x(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),G=x(z).replace("(?:-->|$)","-->").getRegex(),H=x("^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>").replace("comment",G).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),V=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,K=x(/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/).replace("label",V).replace("href",/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),U=x(/^!?\[(label)\]\[(ref)\]/).replace("label",V).replace("ref",T).getRegex(),J=x(/^!?\[(ref)\](?:\[\])?/).replace("ref",T).getRegex(),W=x("reflink|nolink(?!\\()","g").replace("reflink",U).replace("nolink",J).getRegex(),X={_backpedal:g,anyPunctuation:O,autolink:Z,blockSkip:/\[[^[\]]*?\]\([^\(\)]*?\)|`[^`]*?`|<[^<>]*?>/g,br:E,code:/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,del:g,emStrongLDelim:D,emStrongRDelimAst:F,emStrongRDelimUnd:Q,escape:_,link:K,nolink:J,punctuation:B,reflink:U,reflinkSearch:W,tag:H,text:/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,url:g},Y={...X,link:x(/^!?\[(label)\]\((.*?)\)/).replace("label",V).getRegex(),reflink:x(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",V).getRegex()},ee={...X,escape:x(_).replace("])","~|])").getRegex(),url:x(/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,"i").replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])([\s\S]*?[^\s~])\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|https?:\/\/|ftp:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/},et={...ee,br:x(E).replace("{2,}","*").getRegex(),text:x(ee.text).replace("\\b_","\\b_| {2,}\\n").replace(/\{2,\}/g,"*").getRegex()},es={normal:I,gfm:P,pedantic:L},en={normal:X,gfm:ee,breaks:et,pedantic:Y};class er{tokens;options;state;tokenizer;inlineQueue;constructor(e){this.tokens=[],this.tokens.links=Object.create(null),this.options=e||r,this.options.tokenizer=this.options.tokenizer||new y,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};const t={block:es.normal,inline:en.normal};this.options.pedantic?(t.block=es.pedantic,t.inline=en.pedantic):this.options.gfm&&(t.block=es.gfm,this.options.breaks?t.inline=en.breaks:t.inline=en.gfm),this.tokenizer.rules=t}static get rules(){return{block:es,inline:en}}static lex(e,t){return new er(t).lex(e)}static lexInline(e,t){return new er(t).inlineTokens(e)}lex(e){e=e.replace(/\r\n|\r/g,"\n"),this.blockTokens(e,this.tokens);for(let e=0;e<this.inlineQueue.length;e++){let t=this.inlineQueue[e];this.inlineTokens(t.src,t.tokens)}return this.inlineQueue=[],this.tokens}blockTokens(e,t=[]){let s,n,r,i;for(e=this.options.pedantic?e.replace(/\t/g," ").replace(/^ +$/gm,""):e.replace(/^( *)(\t+)/gm,(e,t,s)=>t+" ".repeat(s.length));e;)if(!(this.options.extensions&&this.options.extensions.block&&this.options.extensions.block.some(n=>!!(s=n.call({lexer:this},e,t))&&(e=e.substring(s.raw.length),t.push(s),!0)))){if(s=this.tokenizer.space(e)){e=e.substring(s.raw.length),1===s.raw.length&&t.length>0?t[t.length-1].raw+="\n":t.push(s);continue}if(s=this.tokenizer.code(e)){e=e.substring(s.raw.length),(n=t[t.length-1])&&("paragraph"===n.type||"text"===n.type)?(n.raw+="\n"+s.raw,n.text+="\n"+s.text,this.inlineQueue[this.inlineQueue.length-1].src=n.text):t.push(s);continue}if((s=this.tokenizer.fences(e))||(s=this.tokenizer.heading(e))||(s=this.tokenizer.hr(e))||(s=this.tokenizer.blockquote(e))||(s=this.tokenizer.list(e))||(s=this.tokenizer.html(e))){e=e.substring(s.raw.length),t.push(s);continue}if(s=this.tokenizer.def(e)){e=e.substring(s.raw.length),(n=t[t.length-1])&&("paragraph"===n.type||"text"===n.type)?(n.raw+="\n"+s.raw,n.text+="\n"+s.raw,this.inlineQueue[this.inlineQueue.length-1].src=n.text):this.tokens.links[s.tag]||(this.tokens.links[s.tag]={href:s.href,title:s.title});continue}if((s=this.tokenizer.table(e))||(s=this.tokenizer.lheading(e))){e=e.substring(s.raw.length),t.push(s);continue}if(r=e,this.options.extensions&&this.options.extensions.startBlock){let t,s=1/0,n=e.slice(1);this.options.extensions.startBlock.forEach(e=>{"number"==typeof(t=e.call({lexer:this},n))&&t>=0&&(s=Math.min(s,t))}),s<1/0&&s>=0&&(r=e.substring(0,s+1))}if(this.state.top&&(s=this.tokenizer.paragraph(r))){n=t[t.length-1],i&&"paragraph"===n.type?(n.raw+="\n"+s.raw,n.text+="\n"+s.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=n.text):t.push(s),i=r.length!==e.length,e=e.substring(s.raw.length);continue}if(s=this.tokenizer.text(e)){e=e.substring(s.raw.length),(n=t[t.length-1])&&"text"===n.type?(n.raw+="\n"+s.raw,n.text+="\n"+s.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=n.text):t.push(s);continue}if(e){let t="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(t);break}throw Error(t)}}return this.state.top=!0,t}inline(e,t=[]){return this.inlineQueue.push({src:e,tokens:t}),t}inlineTokens(e,t=[]){let s,n,r,i,l,a,o=e;if(this.tokens.links){let e=Object.keys(this.tokens.links);if(e.length>0)for(;null!=(i=this.tokenizer.rules.inline.reflinkSearch.exec(o));)e.includes(i[0].slice(i[0].lastIndexOf("[")+1,-1))&&(o=o.slice(0,i.index)+"["+"a".repeat(i[0].length-2)+"]"+o.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;null!=(i=this.tokenizer.rules.inline.blockSkip.exec(o));)o=o.slice(0,i.index)+"["+"a".repeat(i[0].length-2)+"]"+o.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);for(;null!=(i=this.tokenizer.rules.inline.anyPunctuation.exec(o));)o=o.slice(0,i.index)+"++"+o.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);for(;e;)if(l||(a=""),l=!1,!(this.options.extensions&&this.options.extensions.inline&&this.options.extensions.inline.some(n=>!!(s=n.call({lexer:this},e,t))&&(e=e.substring(s.raw.length),t.push(s),!0)))){if(s=this.tokenizer.escape(e)){e=e.substring(s.raw.length),t.push(s);continue}if(s=this.tokenizer.tag(e)){e=e.substring(s.raw.length),(n=t[t.length-1])&&"text"===s.type&&"text"===n.type?(n.raw+=s.raw,n.text+=s.text):t.push(s);continue}if(s=this.tokenizer.link(e)){e=e.substring(s.raw.length),t.push(s);continue}if(s=this.tokenizer.reflink(e,this.tokens.links)){e=e.substring(s.raw.length),(n=t[t.length-1])&&"text"===s.type&&"text"===n.type?(n.raw+=s.raw,n.text+=s.text):t.push(s);continue}if((s=this.tokenizer.emStrong(e,o,a))||(s=this.tokenizer.codespan(e))||(s=this.tokenizer.br(e))||(s=this.tokenizer.del(e))||(s=this.tokenizer.autolink(e))||!this.state.inLink&&(s=this.tokenizer.url(e))){e=e.substring(s.raw.length),t.push(s);continue}if(r=e,this.options.extensions&&this.options.extensions.startInline){let t,s=1/0,n=e.slice(1);this.options.extensions.startInline.forEach(e=>{"number"==typeof(t=e.call({lexer:this},n))&&t>=0&&(s=Math.min(s,t))}),s<1/0&&s>=0&&(r=e.substring(0,s+1))}if(s=this.tokenizer.inlineText(r)){e=e.substring(s.raw.length),"_"!==s.raw.slice(-1)&&(a=s.raw.slice(-1)),l=!0,(n=t[t.length-1])&&"text"===n.type?(n.raw+=s.raw,n.text+=s.text):t.push(s);continue}if(e){let t="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(t);break}throw Error(t)}}return t}}class ei{options;constructor(e){this.options=e||r}code(e,t,s){let n=(t||"").match(/^\S*/)?.[0];return(e=e.replace(/\n$/,"")+"\n",n)?'<pre><code class="language-'+h(n)+'">'+(s?e:h(e,!0))+"</code></pre>\n":"<pre><code>"+(s?e:h(e,!0))+"</code></pre>\n"}blockquote(e){return`<blockquote>
|
|
2
|
-
${e}</blockquote>
|
|
3
|
-
`}html(e,t){return e}heading(e,t,s){return`<h${t}>${e}</h${t}>
|
|
4
|
-
`}hr(){return"<hr>\n"}list(e,t,s){let n=t?"ol":"ul";return"<"+n+(t&&1!==s?' start="'+s+'"':"")+">\n"+e+"</"+n+">\n"}listitem(e,t,s){return`<li>${e}</li>
|
|
5
|
-
`}checkbox(e){return"<input "+(e?'checked="" ':"")+'disabled="" type="checkbox">'}paragraph(e){return`<p>${e}</p>
|
|
6
|
-
`}table(e,t){return t&&(t=`<tbody>${t}</tbody>`),"<table>\n<thead>\n"+e+"</thead>\n"+t+"</table>\n"}tablerow(e){return`<tr>
|
|
7
|
-
${e}</tr>
|
|
8
|
-
`}tablecell(e,t){let s=t.header?"th":"td";return(t.align?`<${s} align="${t.align}">`:`<${s}>`)+e+`</${s}>
|
|
9
|
-
`}strong(e){return`<strong>${e}</strong>`}em(e){return`<em>${e}</em>`}codespan(e){return`<code>${e}</code>`}br(){return"<br>"}del(e){return`<del>${e}</del>`}link(e,t,s){let n=m(e);if(null===n)return s;let r='<a href="'+(e=n)+'"';return t&&(r+=' title="'+t+'"'),r+=">"+s+"</a>"}image(e,t,s){let n=m(e);if(null===n)return s;e=n;let r=`<img src="${e}" alt="${s}"`;return t&&(r+=` title="${t}"`),r+=">"}text(e){return e}}class el{strong(e){return e}em(e){return e}codespan(e){return e}del(e){return e}html(e){return e}text(e){return e}link(e,t,s){return""+s}image(e,t,s){return""+s}br(){return""}}class ea{options;renderer;textRenderer;constructor(e){this.options=e||r,this.options.renderer=this.options.renderer||new ei,this.renderer=this.options.renderer,this.renderer.options=this.options,this.textRenderer=new el}static parse(e,t){return new ea(t).parse(e)}static parseInline(e,t){return new ea(t).parseInline(e)}parse(e,t=!0){let s="";for(let n=0;n<e.length;n++){let r=e[n];if(this.options.extensions&&this.options.extensions.renderers&&this.options.extensions.renderers[r.type]){let e=this.options.extensions.renderers[r.type].call({parser:this},r);if(!1!==e||!["space","hr","heading","code","table","blockquote","list","html","paragraph","text"].includes(r.type)){s+=e||"";continue}}switch(r.type){case"space":continue;case"hr":s+=this.renderer.hr();continue;case"heading":s+=this.renderer.heading(this.parseInline(r.tokens),r.depth,this.parseInline(r.tokens,this.textRenderer).replace(p,(e,t)=>"colon"===(t=t.toLowerCase())?":":"#"===t.charAt(0)?"x"===t.charAt(1)?String.fromCharCode(parseInt(t.substring(2),16)):String.fromCharCode(+t.substring(1)):""));continue;case"code":s+=this.renderer.code(r.text,r.lang,!!r.escaped);continue;case"table":{let e="",t="";for(let e=0;e<r.header.length;e++)t+=this.renderer.tablecell(this.parseInline(r.header[e].tokens),{header:!0,align:r.align[e]});e+=this.renderer.tablerow(t);let n="";for(let e=0;e<r.rows.length;e++){let s=r.rows[e];t="";for(let e=0;e<s.length;e++)t+=this.renderer.tablecell(this.parseInline(s[e].tokens),{header:!1,align:r.align[e]});n+=this.renderer.tablerow(t)}s+=this.renderer.table(e,n);continue}case"blockquote":{let e=this.parse(r.tokens);s+=this.renderer.blockquote(e);continue}case"list":{let e=r.ordered,t=r.start,n=r.loose,i="";for(let e=0;e<r.items.length;e++){let t=r.items[e],s=t.checked,l=t.task,a="";if(t.task){let e=this.renderer.checkbox(!!s);n?t.tokens.length>0&&"paragraph"===t.tokens[0].type?(t.tokens[0].text=e+" "+t.tokens[0].text,t.tokens[0].tokens&&t.tokens[0].tokens.length>0&&"text"===t.tokens[0].tokens[0].type&&(t.tokens[0].tokens[0].text=e+" "+t.tokens[0].tokens[0].text)):t.tokens.unshift({type:"text",text:e+" "}):a+=e+" "}a+=this.parse(t.tokens,n),i+=this.renderer.listitem(a,l,!!s)}s+=this.renderer.list(i,e,t);continue}case"html":s+=this.renderer.html(r.text,r.block);continue;case"paragraph":s+=this.renderer.paragraph(this.parseInline(r.tokens));continue;case"text":{let i=r,l=i.tokens?this.parseInline(i.tokens):i.text;for(;n+1<e.length&&"text"===e[n+1].type;)l+="\n"+((i=e[++n]).tokens?this.parseInline(i.tokens):i.text);s+=t?this.renderer.paragraph(l):l;continue}default:{let e='Token with "'+r.type+'" type was not found.';if(this.options.silent)return console.error(e),"";throw Error(e)}}}return s}parseInline(e,t){t=t||this.renderer;let s="";for(let n=0;n<e.length;n++){let r=e[n];if(this.options.extensions&&this.options.extensions.renderers&&this.options.extensions.renderers[r.type]){let e=this.options.extensions.renderers[r.type].call({parser:this},r);if(!1!==e||!["escape","html","link","image","strong","em","codespan","br","del","text"].includes(r.type)){s+=e||"";continue}}switch(r.type){case"escape":case"text":s+=t.text(r.text);break;case"html":s+=t.html(r.text);break;case"link":s+=t.link(r.href,r.title,this.parseInline(r.tokens,t));break;case"image":s+=t.image(r.href,r.title,r.text);break;case"strong":s+=t.strong(this.parseInline(r.tokens,t));break;case"em":s+=t.em(this.parseInline(r.tokens,t));break;case"codespan":s+=t.codespan(r.text);break;case"br":s+=t.br();break;case"del":s+=t.del(this.parseInline(r.tokens,t));break;default:{let e='Token with "'+r.type+'" type was not found.';if(this.options.silent)return console.error(e),"";throw Error(e)}}}return s}}class eo{options;constructor(e){this.options=e||r}static passThroughHooks=new Set(["preprocess","postprocess","processAllTokens"]);preprocess(e){return e}postprocess(e){return e}processAllTokens(e){return e}}class ec{defaults=n();options=this.setOptions;parse=this.#e(er.lex,ea.parse);parseInline=this.#e(er.lexInline,ea.parseInline);Parser=ea;Renderer=ei;TextRenderer=el;Lexer=er;Tokenizer=y;Hooks=eo;constructor(...e){this.use(...e)}walkTokens(e,t){let s=[];for(let n of e)switch(s=s.concat(t.call(this,n)),n.type){case"table":for(let e of n.header)s=s.concat(this.walkTokens(e.tokens,t));for(let e of n.rows)for(let n of e)s=s.concat(this.walkTokens(n.tokens,t));break;case"list":s=s.concat(this.walkTokens(n.items,t));break;default:{let e=n;this.defaults.extensions?.childTokens?.[e.type]?this.defaults.extensions.childTokens[e.type].forEach(n=>{let r=e[n].flat(1/0);s=s.concat(this.walkTokens(r,t))}):e.tokens&&(s=s.concat(this.walkTokens(e.tokens,t)))}}return s}use(...e){let t=this.defaults.extensions||{renderers:{},childTokens:{}};return e.forEach(e=>{let s={...e};if(s.async=this.defaults.async||s.async||!1,e.extensions&&(e.extensions.forEach(e=>{if(!e.name)throw Error("extension name required");if("renderer"in e){let s=t.renderers[e.name];s?t.renderers[e.name]=function(...t){let n=e.renderer.apply(this,t);return!1===n&&(n=s.apply(this,t)),n}:t.renderers[e.name]=e.renderer}if("tokenizer"in e){if(!e.level||"block"!==e.level&&"inline"!==e.level)throw Error("extension level must be 'block' or 'inline'");let s=t[e.level];s?s.unshift(e.tokenizer):t[e.level]=[e.tokenizer],e.start&&("block"===e.level?t.startBlock?t.startBlock.push(e.start):t.startBlock=[e.start]:"inline"===e.level&&(t.startInline?t.startInline.push(e.start):t.startInline=[e.start]))}"childTokens"in e&&e.childTokens&&(t.childTokens[e.name]=e.childTokens)}),s.extensions=t),e.renderer){let t=this.defaults.renderer||new ei(this.defaults);for(let s in e.renderer){if(!(s in t))throw Error(`renderer '${s}' does not exist`);if("options"===s)continue;let n=e.renderer[s],r=t[s];t[s]=(...e)=>{let s=n.apply(t,e);return!1===s&&(s=r.apply(t,e)),s||""}}s.renderer=t}if(e.tokenizer){let t=this.defaults.tokenizer||new y(this.defaults);for(let s in e.tokenizer){if(!(s in t))throw Error(`tokenizer '${s}' does not exist`);if(["options","rules","lexer"].includes(s))continue;let n=e.tokenizer[s],r=t[s];t[s]=(...e)=>{let s=n.apply(t,e);return!1===s&&(s=r.apply(t,e)),s}}s.tokenizer=t}if(e.hooks){let t=this.defaults.hooks||new eo;for(let s in e.hooks){if(!(s in t))throw Error(`hook '${s}' does not exist`);if("options"===s)continue;let n=e.hooks[s],r=t[s];eo.passThroughHooks.has(s)?t[s]=e=>{if(this.defaults.async)return Promise.resolve(n.call(t,e)).then(e=>r.call(t,e));let s=n.call(t,e);return r.call(t,s)}:t[s]=(...e)=>{let s=n.apply(t,e);return!1===s&&(s=r.apply(t,e)),s}}s.hooks=t}if(e.walkTokens){let t=this.defaults.walkTokens,n=e.walkTokens;s.walkTokens=function(e){let s=[];return s.push(n.call(this,e)),t&&(s=s.concat(t.call(this,e))),s}}this.defaults={...this.defaults,...s}}),this}setOptions(e){return this.defaults={...this.defaults,...e},this}lexer(e,t){return er.lex(e,t??this.defaults)}parser(e,t){return ea.parse(e,t??this.defaults)}#e(e,t){return(s,n)=>{let r={...n},i={...this.defaults,...r};!0===this.defaults.async&&!1===r.async&&(i.silent||console.warn("marked(): The async option was set to true by an extension. The async: false option sent to parse will be ignored."),i.async=!0);let l=this.#t(!!i.silent,!!i.async);if(null==s)return l(Error("marked(): input parameter is undefined or null"));if("string"!=typeof s)return l(Error("marked(): input parameter is of type "+Object.prototype.toString.call(s)+", string expected"));if(i.hooks&&(i.hooks.options=i),i.async)return Promise.resolve(i.hooks?i.hooks.preprocess(s):s).then(t=>e(t,i)).then(e=>i.hooks?i.hooks.processAllTokens(e):e).then(e=>i.walkTokens?Promise.all(this.walkTokens(e,i.walkTokens)).then(()=>e):e).then(e=>t(e,i)).then(e=>i.hooks?i.hooks.postprocess(e):e).catch(l);try{i.hooks&&(s=i.hooks.preprocess(s));let n=e(s,i);i.hooks&&(n=i.hooks.processAllTokens(n)),i.walkTokens&&this.walkTokens(n,i.walkTokens);let r=t(n,i);return i.hooks&&(r=i.hooks.postprocess(r)),r}catch(e){return l(e)}}}#t(e,t){return s=>{if(s.message+="\nPlease report this to https://github.com/markedjs/marked.",e){let e="<p>An error occurred:</p><pre>"+h(s.message+"",!0)+"</pre>";return t?Promise.resolve(e):e}if(t)return Promise.reject(s);throw s}}}let ed=new ec;function eh(e,t){return ed.parse(e,t)}eh.options=eh.setOptions=function(e){return ed.setOptions(e),eh.defaults=ed.defaults,r=eh.defaults,eh},eh.getDefaults=n,eh.defaults=r,eh.use=function(...e){return ed.use(...e),eh.defaults=ed.defaults,r=eh.defaults,eh},eh.walkTokens=function(e,t){return ed.walkTokens(e,t)},eh.parseInline=ed.parseInline,eh.Parser=ea,eh.parser=ea.parse,eh.Renderer=ei,eh.TextRenderer=el,eh.Lexer=er,eh.lexer=er.lex,eh.Tokenizer=y,eh.Hooks=eo,eh.parse=eh,eh.options,eh.setOptions,eh.use,eh.walkTokens,eh.parseInline,ea.parse,er.lex;var ep=e.i(75157);function eu({content:n,className:r}){let i=eh.parse(n).replace(/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,"").replace(/\son\w+="[^"]*"/gi,"").replace(/\son\w+='[^']*'/gi,""),l=(0,s.useRef)(null);return(0,s.useEffect)(()=>{let t=l.current;if(!t)return;let s=!1,n=setTimeout(()=>{s||e.A(4352).then(e=>{if(s||!t.isConnected)return;let n=Array.from(t.querySelectorAll(".mermaid:not([data-processed])"));0!==n.length&&(e.default.initialize({startOnLoad:!1,theme:"dark",darkMode:!0,securityLevel:"antiscript"}),e.default.run({nodes:n,suppressErrors:!0}).catch(e=>{console.error("[mermaid]",e)}))})},120);return()=>{s=!0,clearTimeout(n)}},[i]),(0,t.jsx)("div",{ref:l,className:(0,ep.cn)("prose-dark",r),dangerouslySetInnerHTML:{__html:i}})}eh.setOptions({gfm:!0,breaks:!1}),eh.use({renderer:{code(e,t){if("mermaid"===t){let t=e.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">");return`<div class="mermaid">${t}</div>`}return!1}}}),eh.use({renderer:{heading(e,t){let s=e.toLowerCase().replace(/[^\w\s-]/g,"").replace(/\s+/g,"-");return`<h${t} id="${s}">${e}</h${t}>
|
|
10
|
-
`}}}),e.s(["MarkdownRenderer",()=>eu],98822)},62950,e=>{"use strict";let t=(0,e.i(11415).default)("triangle-alert",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]]);e.s(["AlertTriangle",()=>t],62950)},84295,e=>{"use strict";let t=(0,e.i(11415).default)("loader-circle",[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]]);e.s(["Loader2",()=>t],84295)},14054,e=>{"use strict";let t=(0,e.i(11415).default)("bot",[["path",{d:"M12 8V4H8",key:"hb8ula"}],["rect",{width:"16",height:"12",x:"4",y:"8",rx:"2",key:"enze0r"}],["path",{d:"M2 14h2",key:"vft8re"}],["path",{d:"M20 14h2",key:"4cs60a"}],["path",{d:"M15 13v2",key:"1xurst"}],["path",{d:"M9 13v2",key:"rq6x2g"}]]);e.s(["Bot",()=>t],14054)},96372,29257,60888,e=>{"use strict";var t=e.i(11415);let s=(0,t.default)("users",[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["path",{d:"M16 3.128a4 4 0 0 1 0 7.744",key:"16gr8j"}],["path",{d:"M22 21v-2a4 4 0 0 0-3-3.87",key:"kshegd"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}]]);e.s(["Users",()=>s],96372);let n=(0,t.default)("code-xml",[["path",{d:"m18 16 4-4-4-4",key:"1inbqp"}],["path",{d:"m6 8-4 4 4 4",key:"15zrgr"}],["path",{d:"m14.5 4-5 16",key:"e7oirm"}]]);e.s(["Code2",()=>n],29257);let r=(0,t.default)("list",[["path",{d:"M3 5h.01",key:"18ugdj"}],["path",{d:"M3 12h.01",key:"nlz23k"}],["path",{d:"M3 19h.01",key:"noohij"}],["path",{d:"M8 5h13",key:"1pao27"}],["path",{d:"M8 12h13",key:"1za7za"}],["path",{d:"M8 19h13",key:"m83p4d"}]]);e.s(["List",()=>r],60888)},94895,e=>{"use strict";var t=e.i(76809),s=e.i(65773),n=e.i(63371),r=e.i(11415);let i=(0,r.default)("chevron-left",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]);var l=e.i(41988);let a=(0,r.default)("sparkles",[["path",{d:"M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z",key:"1s2grr"}],["path",{d:"M20 2v4",key:"1rf3ol"}],["path",{d:"M22 4h-4",key:"gwowj6"}],["circle",{cx:"4",cy:"20",r:"2",key:"6kqj1y"}]]);var o=e.i(84526),c=e.i(84295),d=e.i(75157),h=e.i(14054),p=e.i(89117);let u=(0,r.default)("building-2",[["path",{d:"M10 12h4",key:"a56b0p"}],["path",{d:"M10 8h4",key:"1sr2af"}],["path",{d:"M14 21v-3a2 2 0 0 0-4 0v3",key:"1rgiei"}],["path",{d:"M6 10H4a2 2 0 0 0-2 2v7a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2h-2",key:"secmi2"}],["path",{d:"M6 21V5a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v16",key:"16ra0t"}]]),x=(0,r.default)("server",[["rect",{width:"20",height:"8",x:"2",y:"2",rx:"2",ry:"2",key:"ngkwjq"}],["rect",{width:"20",height:"8",x:"2",y:"14",rx:"2",ry:"2",key:"iecqi9"}],["line",{x1:"6",x2:"6.01",y1:"6",y2:"6",key:"16zg32"}],["line",{x1:"6",x2:"6.01",y1:"18",y2:"18",key:"nzw8ys"}]]);var m=e.i(81009),g=e.i(62950);let b=(0,r.default)("calendar",[["path",{d:"M8 2v4",key:"1cmpym"}],["path",{d:"M16 2v4",key:"4m81vk"}],["rect",{width:"18",height:"18",x:"3",y:"4",rx:"2",key:"1hopcy"}],["path",{d:"M3 10h18",key:"8toen8"}]]);var f=e.i(96372);let k=(0,r.default)("git-branch",[["path",{d:"M15 6a9 9 0 0 0-9 9V3",key:"1cii5b"}],["circle",{cx:"18",cy:"6",r:"3",key:"1h7g24"}],["circle",{cx:"6",cy:"18",r:"3",key:"fqmcym"}]]),y=(0,r.default)("shield",[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}]]),w=(0,r.default)("database",[["ellipse",{cx:"12",cy:"5",rx:"9",ry:"3",key:"msslwz"}],["path",{d:"M3 5V19A9 3 0 0 0 21 19V5",key:"1wlel7"}],["path",{d:"M3 12A9 3 0 0 0 21 12",key:"mv7ke4"}]]);var v=e.i(29257);let j=(0,r.default)("workflow",[["rect",{width:"8",height:"8",x:"3",y:"3",rx:"2",key:"by2w9f"}],["path",{d:"M7 11v4a2 2 0 0 0 2 2h4",key:"xkn7yn"}],["rect",{width:"8",height:"8",x:"13",y:"13",rx:"2",key:"1cgmvn"}]]);var N=e.i(60888),T=e.i(49021);let S=[{id:"nextjs-production",name:"Next.js Production",description:"Complete setup for a production Next.js application with CI/CD, Docker, and code quality tools",projectTypes:["web-app"],templateIds:["claude-md","architecture-overview","contributing","security","pr-template","changelog","testing","onboarding","dockerfile","docker-compose","dockerignore","env-example","ci-workflow","cd-workflow","dependabot-config","eslintrc","prettierrc","tsconfig-strict","vscode-settings","vscode-extensions"]},{id:"api-backend",name:"API Backend",description:"Production API service with OpenAPI spec, Docker, monitoring, and runbook",projectTypes:["api-backend"],templateIds:["claude-md","architecture-overview","api-reference","openapi","runbook","contributing","security","pr-template","changelog","testing","dockerfile","docker-compose","dockerignore","env-example","ci-workflow","cd-workflow","health-check-doc","slo-doc"]},{id:"library-sdk",name:"Library / SDK",description:"Open-source library with strict TypeScript, changelog, and release automation",projectTypes:["library"],templateIds:["claude-md","contributing","security","pr-template","changelog","testing","tsconfig-strict","eslintrc","prettierrc","editorconfig","commitlint","dependabot-config","release-workflow","codeowners"]},{id:"cli-tool",name:"CLI Tool",description:"Command-line tool with Makefile automation and release workflow",projectTypes:["cli-tool"],templateIds:["claude-md","contributing","security","pr-template","changelog","testing","makefile","env-example","ci-workflow","release-workflow","commitlint","editorconfig","eslintrc"]},{id:"monorepo",name:"Monorepo",description:"Multi-package monorepo with code ownership, commit conventions, and architecture docs",projectTypes:["monorepo"],templateIds:["claude-md","architecture-overview","contributing","security","pr-template","changelog","testing","onboarding","codeowners","commitlint","ci-workflow","cd-workflow","dockerfile","env-example","eslintrc","lint-staged"]},{id:"ai-first",name:"AI-First",description:"Cross-cutting preset for projects that heavily use AI coding agents",projectTypes:[],templateIds:["claude-md","agents-md","gemini-md","cursorrules","copilot-instructions","contributing","pr-template","changelog"]},{id:"minimal",name:"Minimal",description:"Just the essentials — get started fast with 5 key files",projectTypes:[],templateIds:["claude-md","contributing","pr-template","changelog","env-example"]}],C={"ai-agent":"AI Agent Config",github:"GitHub",process:"Process Docs",technical:"Technical Docs",infrastructure:"Infrastructure","github-actions":"GitHub Actions","code-quality":"Code Quality",monitoring:"Monitoring"},$={"ai-agent":h.Bot,github:k,process:j,technical:p.FileText,infrastructure:x,"github-actions":j,"code-quality":o.Check,monitoring:g.AlertTriangle},z={"claude-md":h.Bot,"agents-md":h.Bot,"gemini-md":h.Bot,cursorrules:v.Code2,windsurfrules:v.Code2,"copilot-instructions":h.Bot,contributing:k,security:y,"pr-template":k,"bug-report":g.AlertTriangle,"feature-request":p.FileText,changelog:N.List,deployment:j,testing:o.Check,glossary:m.BookOpen,prd:p.FileText,"architecture-overview":u,"api-reference":x,runbook:m.BookOpen,adr:g.AlertTriangle,onboarding:f.Users,database:w,openapi:x,"meeting-notes":b,blank:p.FileText},A=function(e){let t=[],s=new Map;for(let n of e)s.has(n.category)||(t.push(n.category),s.set(n.category,[])),s.get(n.category).push(n);return t.map(e=>({category:e,displayName:C[e]??e,items:s.get(e)}))}(T.TEMPLATES);function R({selected:e,onChange:n,projectType:r}){let i,[l,a]=(0,s.useState)("recommended"),c=t=>e.some(e=>e.id===t),h=S.filter(e=>0===e.projectTypes.length||e.projectTypes.includes(r??""));return(0,t.jsxs)("div",{className:"space-y-6",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("h2",{className:"text-xl font-semibold text-txt mb-2",children:"Select Templates"}),(0,t.jsx)("p",{className:"text-muted",children:"Choose which documentation files to generate for your project."})]}),(0,t.jsxs)("div",{className:"flex gap-1 overflow-x-auto pb-2 border-b border-border",children:[(0,t.jsx)("button",{onClick:()=>a("recommended"),className:(0,d.cn)("px-3 py-1.5 text-sm rounded-md whitespace-nowrap transition-colors","recommended"===l?"bg-accent text-white":"text-muted hover:text-txt"),children:"⭐ Recommended"}),A.map(e=>(0,t.jsx)("button",{onClick:()=>a(e.category),className:(0,d.cn)("px-3 py-1.5 text-sm rounded-md whitespace-nowrap transition-colors",l===e.category?"bg-accent text-white":"text-muted hover:text-txt"),children:e.displayName},e.category))]}),"recommended"===l&&(0,t.jsxs)("div",{className:"space-y-4",children:[0===h.length&&(0,t.jsx)("p",{className:"text-muted text-sm",children:"No presets match your project type. Select templates manually from the tabs above."}),h.map(e=>{let s=e.templateIds.every(e=>c(e));return(0,t.jsx)("div",{className:"p-4 rounded-lg border border-border hover:border-accent/50 transition-colors",children:(0,t.jsxs)("div",{className:"flex items-start justify-between gap-3",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("div",{className:"font-medium text-txt",children:e.name}),(0,t.jsx)("div",{className:"text-sm text-muted mt-1",children:e.description}),(0,t.jsxs)("div",{className:"text-xs text-accent/70 mt-1",children:[e.templateIds.length," templates"]})]}),(0,t.jsx)("button",{onClick:()=>{n(e.templateIds.map(e=>T.TEMPLATES.find(t=>t.id===e)).filter(e=>void 0!==e).map(e=>({id:e.id,name:e.name,path:e.defaultPath})))},className:(0,d.cn)("shrink-0 px-3 py-1.5 text-sm rounded-lg border transition-colors",s?"border-accent bg-accent/10 text-accent":"border-border hover:border-accent text-txt"),children:s?"✓ Selected":"Select bundle"})]})},e.id)})]}),"recommended"!==l&&((i=A.find(e=>e.category===l))?(0,t.jsxs)("div",{className:"space-y-3",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[(0,t.jsx)("h3",{className:"text-sm font-medium text-muted uppercase tracking-wider",children:i.displayName}),(0,t.jsx)("button",{onClick:()=>(t=>{let s=A.find(e=>e.category===t);if(s)if(s.items.every(e=>c(e.id)))n(e.filter(e=>!s.items.some(t=>t.id===e.id)));else{let t=[...e];s.items.forEach(e=>{c(e.id)||t.push({id:e.id,name:e.name,path:e.defaultPath})}),n(t)}})(i.category),className:"text-xs text-accent hover:text-accent/80 transition-colors",children:i.items.every(e=>c(e.id))?"Deselect all":"Select all"})]}),(0,t.jsx)("div",{className:"grid grid-cols-2 sm:grid-cols-3 gap-3",children:i.items.map(s=>{let r=z[s.id]??$[s.category],i=c(s.id);return(0,t.jsx)("button",{onClick:()=>{c(s.id)?n(e.filter(e=>e.id!==s.id)):n([...e,{id:s.id,name:s.name,path:s.defaultPath}])},className:(0,d.cn)("p-3 rounded-lg border text-left transition-all",i?"border-accent bg-accent/10":"border-border hover:border-accent/50"),children:(0,t.jsxs)("div",{className:"flex items-start gap-2",children:[(0,t.jsx)("div",{className:(0,d.cn)("w-8 h-8 rounded-lg flex items-center justify-center shrink-0",i?"bg-accent/20":"bg-surface2"),children:(0,t.jsx)(r,{className:(0,d.cn)("w-4 h-4",i?"text-accent":"text-muted")})}),(0,t.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,t.jsx)("div",{className:"font-medium text-sm text-txt truncate",children:s.name}),(0,t.jsx)("div",{className:"text-xs text-muted truncate",children:s.description})]}),i&&(0,t.jsx)(o.Check,{className:"w-4 h-4 text-accent shrink-0"})]})},s.id)})})]}):null),(0,t.jsxs)("div",{className:"text-sm text-muted",children:[e.length," template",1!==e.length?"s":""," selected"]})]})}var I=e.i(93479);let M=[{value:"web-app",label:"Web Application"},{value:"api-backend",label:"API / Backend"},{value:"cli-tool",label:"CLI Tool"},{value:"library",label:"Library / SDK"},{value:"mobile-app",label:"Mobile App"},{value:"monorepo",label:"Monorepo"}];function P({answers:e,onChange:s}){let n=(t,n)=>{s({...e,[t]:n})};return(0,t.jsxs)("div",{className:"space-y-6",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("h2",{className:"text-xl font-semibold text-txt mb-2",children:"Basic Information"}),(0,t.jsx)("p",{className:"text-muted",children:"Tell us about your project to customize the documentation."})]}),(0,t.jsxs)("div",{className:"space-y-4",children:[(0,t.jsxs)("div",{children:[(0,t.jsxs)("label",{className:"block text-sm font-medium text-txt mb-1.5",children:["Project Name ",(0,t.jsx)("span",{className:"text-red-400",children:"*"})]}),(0,t.jsx)(I.Input,{value:e.projectName,onChange:e=>n("projectName",e.target.value),placeholder:"My Awesome Project",className:"bg-surface2"})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"block text-sm font-medium text-txt mb-1.5",children:"Project Type"}),(0,t.jsx)("select",{value:e.projectType,onChange:e=>n("projectType",e.target.value),className:"w-full h-10 px-3 rounded-md border border-border bg-surface2 text-txt text-sm focus:outline-none focus:ring-2 focus:ring-accent/50",children:M.map(e=>(0,t.jsx)("option",{value:e.value,children:e.label},e.value))})]}),(0,t.jsxs)("div",{children:[(0,t.jsxs)("label",{className:"block text-sm font-medium text-txt mb-1.5",children:["Repository URL ",(0,t.jsx)("span",{className:"text-muted",children:"(optional)"})]}),(0,t.jsx)(I.Input,{value:e.repoUrl,onChange:e=>n("repoUrl",e.target.value),placeholder:"https://github.com/org/repo",className:"bg-surface2"})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"block text-sm font-medium text-txt mb-1.5",children:"Description"}),(0,t.jsx)("textarea",{value:e.description,onChange:e=>n("description",e.target.value),placeholder:"A brief description of what your project does...",rows:3,className:"w-full px-3 py-2 rounded-md border border-border bg-surface2 text-txt text-sm resize-none focus:outline-none focus:ring-2 focus:ring-accent/50"})]}),(0,t.jsxs)("div",{children:[(0,t.jsxs)("label",{className:"block text-sm font-medium text-txt mb-1.5",children:["Key Features ",(0,t.jsx)("span",{className:"text-muted",children:"(optional)"})]}),(0,t.jsx)(I.Input,{value:e.keyFeatures,onChange:e=>n("keyFeatures",e.target.value),placeholder:"Auth, payments, real-time sync, etc.",className:"bg-surface2"}),(0,t.jsx)("p",{className:"text-xs text-muted mt-1",children:"Comma-separated list of main features"})]})]})]})}var L=e.i(6709),_=e.i(96710);let E=[{id:"language",label:"Language",techs:["TypeScript","JavaScript","Python","Go","Rust","Java","C#","Ruby","Kotlin","Swift","PHP","Elixir"]},{id:"frontend",label:"Frontend",techs:["React","Vue","Angular","Next.js","Nuxt","SvelteKit","Remix","Astro","Vite","Tailwind CSS","React Native","Expo"]},{id:"backend",label:"Backend",techs:["Node.js","Express","Fastify","NestJS","FastAPI","Django","Flask","Rails","Spring Boot","Go/Fiber","Rust/Actix","Hono","Bun"]},{id:"database",label:"Database",techs:["PostgreSQL","MySQL","MongoDB","Redis","SQLite","Supabase","PlanetScale","DynamoDB","Cassandra","Prisma","Drizzle","TypeORM"]},{id:"devops",label:"DevOps",techs:["Docker","Kubernetes","GitHub Actions","GitLab CI","CircleCI","Jenkins","Terraform","Pulumi","AWS","GCP","Azure","Vercel","Railway","Fly.io","Render"]},{id:"testing",label:"Testing",techs:["Jest","Vitest","Playwright","Cypress","Testing Library","pytest","RSpec","Mocha","k6"]},{id:"tools",label:"Tools",techs:["ESLint","Prettier","Husky","lint-staged","Storybook","Turborepo","pnpm","Nx","GraphQL","tRPC","Zod","Stripe"]}];E.flatMap(e=>e.techs);let q=[{id:"nextjs",label:"Next.js Full-Stack",techs:["TypeScript","Next.js","React","Tailwind CSS","PostgreSQL","Prisma"]},{id:"python-api",label:"Python API",techs:["Python","FastAPI","PostgreSQL","Redis","Docker"]},{id:"react-native",label:"React Native",techs:["TypeScript","React Native","Expo"]},{id:"go-service",label:"Go Microservice",techs:["Go","Go/Fiber","PostgreSQL","Docker","Kubernetes"]},{id:"sveltekit",label:"SvelteKit",techs:["TypeScript","SvelteKit","Tailwind CSS","SQLite"]}];function B({value:e,onChange:n}){let[r,i]=(0,s.useState)(""),[l,a]=(0,s.useState)("language"),o=r.trim().length>0,c=t=>{e.includes(t)?n(e.filter(e=>e!==t)):n([...e,t])},h=o?E.map(e=>({...e,items:e.techs.filter(e=>e.toLowerCase().includes(r.toLowerCase()))})).filter(e=>e.items.length>0):[],p=E.find(e=>e.id===l)?.techs??[],u=E.flatMap(e=>e.techs).some(e=>e.toLowerCase()===r.toLowerCase()),x=o&&!u&&r.trim().length>0;return(0,t.jsxs)("div",{className:"space-y-3",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("p",{className:"text-xs font-medium text-muted mb-2 uppercase tracking-wider",children:"Quick Presets"}),(0,t.jsx)("div",{className:"flex flex-wrap gap-2",children:q.map(s=>(0,t.jsx)("button",{type:"button",onClick:()=>{let t;(t=s.techs.filter(t=>!e.includes(t))).length>0&&n([...e,...t])},className:"px-3 py-1 rounded-md border border-border text-xs text-txt hover:border-accent hover:text-accent transition-colors",children:s.label},s.id))})]}),(0,t.jsxs)("div",{className:"relative",children:[(0,t.jsx)(L.Search,{className:"absolute left-3 top-1/2 -translate-y-1/2 w-4 h-4 text-muted pointer-events-none"}),(0,t.jsx)("input",{value:r,onChange:e=>i(e.target.value),onKeyDown:t=>{if("Enter"===t.key){let s;t.preventDefault(),!E.flatMap(e=>e.techs).some(e=>e.toLowerCase()===r.toLowerCase())&&r.trim()&&((s=r.trim())&&!e.includes(s)&&n([...e,s]),i(""))}else"Escape"===t.key&&i("")},placeholder:"Search technologies...",className:"w-full pl-9 pr-3 py-2 rounded-md border border-border bg-surface2 text-txt text-sm outline-none placeholder:text-muted focus:border-accent transition-colors"}),o&&(0,t.jsx)("button",{type:"button",onClick:()=>i(""),className:"absolute right-2 top-1/2 -translate-y-1/2 text-muted hover:text-txt transition-colors",children:(0,t.jsx)(_.X,{className:"w-4 h-4"})})]}),!o&&(0,t.jsx)("div",{className:"flex gap-1 overflow-x-auto pb-1 scrollbar-hide",children:E.map(e=>(0,t.jsx)("button",{type:"button",onClick:()=>a(e.id),className:(0,d.cn)("px-3 py-1 rounded-md text-xs font-medium whitespace-nowrap transition-colors flex-shrink-0",l===e.id?"bg-accent text-white":"bg-surface2 text-muted hover:text-txt hover:bg-surface"),children:e.label},e.id))}),o?(0,t.jsxs)("div",{className:"space-y-3",children:[h.map(s=>(0,t.jsxs)("div",{children:[(0,t.jsx)("p",{className:"text-xs font-medium text-muted uppercase tracking-wider mb-1.5",children:s.label}),(0,t.jsx)("div",{className:"flex flex-wrap gap-2",children:s.items.map(s=>(0,t.jsx)("button",{type:"button",onClick:()=>c(s),className:(0,d.cn)("px-3 py-1 rounded-full text-sm border transition-colors",e.includes(s)?"bg-accent/15 border-accent text-accent":"bg-surface2 border-border text-txt hover:border-accent/50 hover:text-accent/80"),children:s},s))})]},s.id)),x&&(0,t.jsxs)("p",{className:"text-xs text-muted",children:["Press ",(0,t.jsx)("kbd",{className:"px-1 py-0.5 rounded bg-surface border border-border text-xs",children:"Enter"}),' to add "',r,'"']})]}):(0,t.jsx)("div",{className:"flex flex-wrap gap-2",children:p.map(s=>(0,t.jsx)("button",{type:"button",onClick:()=>c(s),className:(0,d.cn)("px-3 py-1 rounded-full text-sm border transition-colors",e.includes(s)?"bg-accent/15 border-accent text-accent":"bg-surface2 border-border text-txt hover:border-accent/50 hover:text-accent/80"),children:s},s))}),e.length>0&&(0,t.jsxs)("div",{className:"pt-2 border-t border-border",children:[(0,t.jsxs)("p",{className:"text-xs font-medium text-muted mb-2",children:["Selected (",e.length,")"]}),(0,t.jsx)("div",{className:"flex flex-wrap gap-1.5",children:e.map(s=>(0,t.jsxs)("span",{className:"inline-flex items-center gap-1 px-2 py-0.5 rounded-md bg-accent/15 text-accent text-sm font-medium",children:[s,(0,t.jsx)("button",{type:"button",onClick:()=>n(e.filter(e=>e!==s)),className:"hover:text-accent/70 transition-colors",children:(0,t.jsx)(_.X,{className:"w-3 h-3"})})]},s))})]})]})}let D=[{value:"solo",label:"Solo"},{value:"2-5",label:"2–5"},{value:"6-15",label:"6–15"},{value:"15+",label:"15+"}],F=[{value:"",label:"Not sure / other"},{value:"Jest",label:"Jest"},{value:"Vitest",label:"Vitest"},{value:"pytest",label:"pytest"},{value:"RSpec",label:"RSpec"},{value:"Mocha",label:"Mocha"}],Q=[{value:"",label:"Not specified"},{value:"trunk-based",label:"Trunk-based"},{value:"gitflow",label:"Gitflow"},{value:"feature-branch",label:"Feature branches"}],O=["GitHub Actions","GitLab CI","CircleCI","Jenkins","Buildkite","Travis CI"],Z=["ESLint","Prettier","Biome","Stylelint","oxc","Rome"],G=["Vercel","AWS","GCP","Azure","Fly.io","Railway","Render","Docker","Kubernetes","Heroku"];function H({answers:e,onChange:s}){let n=(t,n)=>{s({...e,[t]:n})};return(0,t.jsxs)("div",{className:"space-y-6",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("h2",{className:"text-xl font-semibold text-txt mb-2",children:"Team & Conventions"}),(0,t.jsx)("p",{className:"text-muted",children:"Help us tailor documentation to your team. All fields are optional."})]}),(0,t.jsxs)("div",{className:"space-y-5",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"block text-sm font-medium text-txt mb-2",children:"Team Size"}),(0,t.jsx)("div",{className:"flex gap-2 flex-wrap",children:D.map(s=>(0,t.jsx)("button",{type:"button",onClick:()=>n("teamSize",e.teamSize===s.value?"":s.value),className:(0,d.cn)("px-4 py-2 rounded-lg border text-sm font-medium transition-all",e.teamSize===s.value?"border-accent bg-accent/10 text-accent":"border-border text-txt hover:border-accent/50"),children:s.label},s.value))})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"block text-sm font-medium text-txt mb-1.5",children:"Linting & Formatting"}),(0,t.jsx)("div",{className:"flex gap-2 flex-wrap mb-2",children:Z.map(s=>(0,t.jsx)("button",{type:"button",onClick:()=>{n("linting",e.linting.includes(s)?e.linting.filter(e=>e!==s):[...e.linting,s])},className:(0,d.cn)("px-3 py-1.5 rounded-md border text-sm transition-all",e.linting.includes(s)?"border-accent bg-accent/10 text-accent":"border-border text-txt hover:border-accent/50"),children:s},s))})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"block text-sm font-medium text-txt mb-1.5",children:"Test Framework"}),(0,t.jsx)("select",{value:e.testFramework,onChange:e=>n("testFramework",e.target.value),className:"w-full h-10 px-3 rounded-md border border-border bg-surface2 text-txt text-sm focus:outline-none focus:ring-2 focus:ring-accent/50",children:F.map(e=>(0,t.jsx)("option",{value:e.value,children:e.label},e.value))})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"block text-sm font-medium text-txt mb-1.5",children:"CI/CD"}),(0,t.jsx)("div",{className:"flex gap-2 flex-wrap mb-2",children:O.map(s=>(0,t.jsx)("button",{type:"button",onClick:()=>{n("ciCd",e.ciCd.includes(s)?e.ciCd.filter(e=>e!==s):[...e.ciCd,s])},className:(0,d.cn)("px-3 py-1.5 rounded-md border text-sm transition-all",e.ciCd.includes(s)?"border-accent bg-accent/10 text-accent":"border-border text-txt hover:border-accent/50"),children:s},s))})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"block text-sm font-medium text-txt mb-2",children:"Branch Strategy"}),(0,t.jsx)("div",{className:"flex gap-2 flex-wrap",children:Q.filter(e=>e.value).map(s=>(0,t.jsx)("button",{type:"button",onClick:()=>n("branchStrategy",e.branchStrategy===s.value?"":s.value),className:(0,d.cn)("px-4 py-2 rounded-lg border text-sm font-medium transition-all",e.branchStrategy===s.value?"border-accent bg-accent/10 text-accent":"border-border text-txt hover:border-accent/50"),children:s.label},s.value))})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"block text-sm font-medium text-txt mb-1.5",children:"Deployment Target"}),(0,t.jsx)("div",{className:"flex gap-2 flex-wrap",children:G.map(s=>(0,t.jsx)("button",{type:"button",onClick:()=>{n("deploymentTarget",e.deploymentTarget.includes(s)?e.deploymentTarget.filter(e=>e!==s):[...e.deploymentTarget,s])},className:(0,d.cn)("px-3 py-1.5 rounded-md border text-sm transition-all",e.deploymentTarget.includes(s)?"border-accent bg-accent/10 text-accent":"border-border text-txt hover:border-accent/50"),children:s},s))})]}),(0,t.jsxs)("div",{children:[(0,t.jsxs)("label",{className:"block text-sm font-medium text-txt mb-1.5",children:["Additional Conventions ",(0,t.jsx)("span",{className:"text-muted",children:"(optional)"})]}),(0,t.jsx)(I.Input,{value:e.conventions,onChange:e=>n("conventions",e.target.value),placeholder:"Conventional Commits, semantic versioning, etc.",className:"bg-surface2"})]})]})]})}let V=(0,r.default)("chevron-down",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]),K=(0,r.default)("circle-alert",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]]);var U=e.i(98822);function J({files:e,onWrite:n,isWriting:r,mode:i,onModeChange:a}){let[o,c]=(0,s.useState)(new Set),h=e.filter(e=>!e.skipped),u=e.filter(e=>e.skipped);return 0===e.length?(0,t.jsxs)("div",{className:"text-center py-12",children:[(0,t.jsx)(K,{className:"w-12 h-12 text-muted mx-auto mb-4"}),(0,t.jsx)("h3",{className:"text-lg font-medium text-txt mb-2",children:"No files generated"}),(0,t.jsx)("p",{className:"text-muted",children:"Something went wrong. Please go back and try again."})]}):(0,t.jsxs)("div",{className:"space-y-6",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("h2",{className:"text-xl font-semibold text-txt mb-2",children:"Preview"}),(0,t.jsx)("p",{className:"text-muted",children:"Review the files that will be created."})]}),(0,t.jsxs)("div",{className:"flex items-center gap-1 bg-surface2 rounded-lg p-1",children:[(0,t.jsx)("button",{onClick:()=>a("quick"),className:(0,d.cn)("px-3 py-1 text-sm rounded-md transition-colors","quick"===i?"bg-surface text-txt shadow-sm":"text-muted hover:text-txt"),children:"Quick"}),(0,t.jsx)("button",{onClick:()=>a("ai"),className:(0,d.cn)("px-3 py-1 text-sm rounded-md transition-colors","ai"===i?"bg-surface text-txt shadow-sm":"text-muted hover:text-txt"),children:"AI"})]})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsxs)("h3",{className:"text-sm font-medium text-muted uppercase tracking-wider",children:["Files to create (",h.length,")"]}),(0,t.jsx)("div",{className:"border border-border rounded-lg divide-y divide-border overflow-hidden",children:h.map(e=>{let s=o.has(e.path),n=e.path.endsWith(".md");return(0,t.jsxs)("div",{children:[(0,t.jsxs)("button",{onClick:()=>{var t;return t=e.path,void c(e=>{let s=new Set(e);return s.has(t)?s.delete(t):s.add(t),s})},className:"w-full flex items-center gap-3 p-3 hover:bg-surface2 transition-colors",children:[s?(0,t.jsx)(V,{className:"w-4 h-4 text-muted shrink-0"}):(0,t.jsx)(l.ChevronRight,{className:"w-4 h-4 text-muted shrink-0"}),(0,t.jsx)(p.FileText,{className:"w-4 h-4 text-accent shrink-0"}),(0,t.jsx)("span",{className:"text-sm font-mono text-txt",children:e.path})]}),s&&(0,t.jsx)("div",{className:"px-3 pb-3",children:n?(0,t.jsx)("div",{className:"prose prose-invert max-w-none p-3 bg-surface2 rounded-lg max-h-64 overflow-y-auto text-sm",children:(0,t.jsx)(U.MarkdownRenderer,{content:e.content.slice(0,3e3)})}):(0,t.jsxs)("pre",{className:"p-3 bg-surface2 rounded-lg text-xs text-muted overflow-x-auto max-h-64 overflow-y-auto",children:[e.content.slice(0,2e3),e.content.length>2e3&&"\n\n...(truncated)"]})})]},e.path)})})]}),u.length>0&&(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsxs)("h3",{className:"text-sm font-medium text-muted uppercase tracking-wider",children:["Skipped (",u.length,")"]}),(0,t.jsx)("div",{className:"bg-amber-500/10 border border-amber-500/30 rounded-lg p-3 space-y-1",children:u.map(e=>(0,t.jsxs)("div",{className:"flex items-center gap-2 text-sm",children:[(0,t.jsx)(K,{className:"w-4 h-4 text-amber-400 shrink-0"}),(0,t.jsx)("span",{className:"font-mono text-amber-400",children:e.path}),(0,t.jsxs)("span",{className:"text-amber-400/70",children:["— ",e.reason||"already exists"]})]},e.path))})]}),(0,t.jsxs)("div",{className:"text-sm text-muted",children:[h.length," file",1!==h.length?"s":""," will be created",u.length>0&&`, ${u.length} skipped`]})]})}let W=[{id:"welcome",title:"Welcome"},{id:"basic-info",title:"Basic Info"},{id:"templates",title:"Templates"},{id:"tech-stack",title:"Tech Stack"},{id:"team",title:"Team"},{id:"preview",title:"Preview"},{id:"complete",title:"Complete"}],X=W.length-1;function Y(){let{activeProject:e,rootParam:r,projects:h}=(0,n.useApp)(),p=h.find(t=>t.root===e),[u,x]=(0,s.useState)(0),[m,g]=(0,s.useState)([]),[b,f]=(0,s.useState)({projectName:"",projectType:"web-app",description:"",repoUrl:"",techStackTags:[],keyFeatures:"",teamSize:"",linting:[],testFramework:"",ciCd:[],branchStrategy:"",deploymentTarget:[],conventions:""}),[k,y]=(0,s.useState)("quick"),[w,v]=(0,s.useState)([]),[j,N]=(0,s.useState)(!1),[C,$]=(0,s.useState)([]);(0,s.useEffect)(()=>{!async function(){try{let e=await fetch(`/api/docs${r}`),t=(await e.json()).filter(e=>"CLAUDE.md"===e.path||"AGENTS.md"===e.path).map(e=>e.path);$(t)}catch{}}()},[r]);let z=async()=>{if(4===u){N(!0);try{let e=await fetch(`/api/setup/generate${r}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({templates:m,answers:b,mode:k})}),t=await e.json();v(t.files||[])}catch{v([])}N(!1)}x(e=>Math.min(e+1,X))},A=async()=>{N(!0);try{await fetch(`/api/setup/write${r}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({files:w})}),x(6)}catch{}N(!1)};return(0,t.jsxs)("div",{className:"min-h-screen bg-bg flex flex-col",children:[(0,t.jsx)("div",{className:"border-b border-border bg-surface",children:(0,t.jsxs)("div",{className:"max-w-3xl mx-auto px-6 py-4",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between mb-2",children:[(0,t.jsx)("h1",{className:"text-lg font-semibold text-txt",children:"Setup Wizard"}),(0,t.jsxs)("span",{className:"text-sm text-muted",children:["Step ",u+1," of ",W.length]})]}),(0,t.jsx)("div",{className:"flex gap-1",children:W.map((e,s)=>(0,t.jsx)("div",{className:(0,d.cn)("h-1 flex-1 rounded-full transition-colors",s<=u?"bg-accent":"bg-border")},e.id))}),(0,t.jsx)("div",{className:"flex gap-1 mt-1",children:W.map((e,s)=>(0,t.jsx)("div",{className:"flex-1 text-center",children:s===u&&(0,t.jsx)("span",{className:"text-xs text-accent",children:e.title})},e.id))})]})}),(0,t.jsx)("div",{className:"flex-1 overflow-y-auto",children:(0,t.jsxs)("div",{className:"max-w-3xl mx-auto px-6 py-8",children:[0===u&&(0,t.jsxs)("div",{className:"space-y-6",children:[(0,t.jsxs)("div",{className:"text-center space-y-4",children:[(0,t.jsx)("div",{className:"w-16 h-16 rounded-2xl bg-accent/10 flex items-center justify-center mx-auto",children:(0,t.jsx)(a,{className:"w-8 h-8 text-accent"})}),(0,t.jsx)("h2",{className:"text-2xl font-bold text-txt",children:"Welcome to VibeDoc"}),(0,t.jsx)("p",{className:"text-muted max-w-md mx-auto",children:"Let's set up your project documentation. You can generate AI-optimized docs like CLAUDE.md, architecture overviews, and more."})]}),p&&(0,t.jsxs)("div",{className:"bg-surface border border-border rounded-lg p-4",children:[(0,t.jsx)("div",{className:"text-sm text-muted mb-1",children:"Current Project"}),(0,t.jsx)("div",{className:"font-medium text-txt",children:p.name}),(0,t.jsx)("div",{className:"text-xs text-muted mt-1 font-mono",children:p.root})]}),C.length>0&&(0,t.jsxs)("div",{className:"bg-amber-500/10 border border-amber-500/30 rounded-lg p-4",children:[(0,t.jsx)("div",{className:"text-sm font-medium text-amber-400 mb-1",children:"Existing files detected"}),(0,t.jsxs)("div",{className:"text-sm text-amber-400/80",children:[C.join(", ")," already exist. They will be skipped during generation."]})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("div",{className:"text-sm font-medium text-txt mb-3",children:"Quick Start with a Preset"}),(0,t.jsx)("div",{className:"grid grid-cols-2 gap-3",children:["nextjs-production","api-backend","minimal","ai-first"].map(e=>{let s=S.find(t=>t.id===e);return s?(0,t.jsxs)("button",{onClick:()=>{g(s.templateIds.map(e=>T.TEMPLATES.find(t=>t.id===e)).filter(e=>void 0!==e).map(e=>({id:e.id,name:e.name,path:e.defaultPath}))),x(1)},className:"p-3 rounded-lg border border-border hover:border-accent/50 text-left transition-all",children:[(0,t.jsx)("div",{className:"font-medium text-sm text-txt",children:s.name}),(0,t.jsx)("div",{className:"text-xs text-muted mt-1",children:s.description})]},e):null})})]})]}),1===u&&(0,t.jsx)(P,{answers:b,onChange:f}),2===u&&(0,t.jsx)(R,{selected:m,onChange:g,projectType:b.projectType}),3===u&&(0,t.jsxs)("div",{className:"space-y-6",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("h2",{className:"text-xl font-semibold text-txt mb-2",children:"Tech Stack"}),(0,t.jsx)("p",{className:"text-muted",children:"Add the technologies your project uses. Search or type custom ones."})]}),(0,t.jsx)(B,{value:b.techStackTags,onChange:e=>f(t=>({...t,techStackTags:e}))}),b.techStackTags.length>0&&(0,t.jsxs)("p",{className:"text-sm text-muted",children:[b.techStackTags.length," technolog",1!==b.techStackTags.length?"ies":"y"," added"]})]}),4===u&&(0,t.jsx)(H,{answers:b,onChange:f}),5===u&&(0,t.jsx)(J,{files:w,onWrite:A,isWriting:j,mode:k,onModeChange:y}),6===u&&(0,t.jsxs)("div",{className:"text-center space-y-6",children:[(0,t.jsx)("div",{className:"w-16 h-16 rounded-full bg-green-500/10 flex items-center justify-center mx-auto",children:(0,t.jsx)(o.Check,{className:"w-8 h-8 text-green-500"})}),(0,t.jsx)("h2",{className:"text-2xl font-bold text-txt",children:"Setup Complete!"}),(0,t.jsx)("p",{className:"text-muted max-w-md mx-auto",children:"Your documentation files have been created. You can now view and edit them in the Docs tab."}),(0,t.jsxs)("div",{className:"bg-surface border border-border rounded-lg p-4 text-left max-w-md mx-auto",children:[(0,t.jsx)("div",{className:"text-sm font-medium text-txt mb-2",children:"Next steps:"}),(0,t.jsxs)("ul",{className:"text-sm text-muted space-y-2",children:[(0,t.jsx)("li",{children:"• Review generated files in the Docs tab"}),(0,t.jsx)("li",{children:"• Edit content to match your project specifics"}),(0,t.jsx)("li",{children:"• Connect your coding agent via MCP for AI assistance"})]})]}),(0,t.jsxs)("a",{href:"/docs",className:"inline-flex items-center gap-2 px-4 py-2 bg-accent text-white rounded-lg font-medium hover:bg-accent/90 transition-colors",children:["Go to Docs",(0,t.jsx)(l.ChevronRight,{className:"w-4 h-4"})]})]})]})}),u<X&&(0,t.jsx)("div",{className:"border-t border-border bg-surface",children:(0,t.jsxs)("div",{className:"max-w-3xl mx-auto px-6 py-4 flex items-center justify-between",children:[(0,t.jsxs)("button",{onClick:()=>{x(e=>Math.max(e-1,0))},disabled:0===u,className:(0,d.cn)("flex items-center gap-2 px-4 py-2 rounded-lg font-medium transition-colors",0===u?"text-muted cursor-not-allowed":"text-txt hover:bg-surface2"),children:[(0,t.jsx)(i,{className:"w-4 h-4"}),"Back"]}),5===u?(0,t.jsx)("button",{onClick:A,disabled:j||0===w.length,className:"flex items-center gap-2 px-4 py-2 bg-accent text-white rounded-lg font-medium hover:bg-accent/90 transition-colors disabled:opacity-50",children:j?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(c.Loader2,{className:"w-4 h-4 animate-spin"}),"Writing..."]}):(0,t.jsxs)(t.Fragment,{children:["Write Files",(0,t.jsx)(o.Check,{className:"w-4 h-4"})]})}):(0,t.jsx)("button",{onClick:z,disabled:!(()=>{switch(u){case 0:default:return!0;case 1:return""!==b.projectName.trim();case 2:return m.length>0}})()||j,className:"flex items-center gap-2 px-4 py-2 bg-accent text-white rounded-lg font-medium hover:bg-accent/90 transition-colors disabled:opacity-50",children:j?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(c.Loader2,{className:"w-4 h-4 animate-spin"}),"Generating..."]}):(0,t.jsxs)(t.Fragment,{children:[4===u?"Generate":"Next",(0,t.jsx)(l.ChevronRight,{className:"w-4 h-4"})]})})]})})]})}function ee(){return(0,t.jsx)(Y,{})}e.s(["default",()=>ee],94895)},4352,e=>{e.v(t=>Promise.all(["static/chunks/0352b3ee31ef4768.js","static/chunks/3d2df9cacb1964d0.js","static/chunks/bb2aa17541b130c8.js","static/chunks/f536c6a4d5d21cee.js","static/chunks/577b654cf1d60a78.js","static/chunks/e762848987aee22c.js","static/chunks/a05858143bd44bd5.js","static/chunks/1ef8bf79adc2568f.js"].map(t=>e.l(t))).then(()=>t(50619)))}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,55280,(e,o,r)=>{o.exports=e.r(18435)},63371,43668,7284,75157,e=>{"use strict";var o=e.i(76809),r=e.i(65773),t=e.i(55280);let n={theme:"dark",accentColor:"blue",fontSize:"medium",editor:{autoSave:10,wordWrap:!0,lineNumbers:!0,previewMode:"split"},project:{autoRefresh:10,showHidden:!1},mcp:{endpoint:"http://localhost:3000/api/mcp"}};e.s(["DEFAULT_AGENTS",0,[{id:"code-assistant",name:"Code Assistant",icon:"🤖",description:"General-purpose coding help",skills:["code-review","test-writer"],prompt:"You are a helpful coding assistant. Help the user with their coding tasks.",active:!0},{id:"doc-bot",name:"Documentation Bot",icon:"📚",description:"Focused on docs and comments",skills:["doc-generator"],prompt:"You are a documentation specialist. Focus on creating and improving documentation.",active:!0}],"DEFAULT_SETTINGS",0,n,"DEFAULT_SKILLS",0,[{id:"code-review",name:"Code Review",description:"Analyzes code for quality, security, and performance issues",trigger:"/review",prompt:"You are an expert code reviewer. Analyze the provided code for:\n- Code quality and best practices\n- Security vulnerabilities\n- Performance issues\n- Maintainability concerns\n\nProvide actionable feedback.",tools:["vibedoc_read_doc","vibedoc_search_docs"],icon:"🔧"},{id:"doc-generator",name:"Documentation Generator",description:"Creates documentation from code and comments",trigger:"/docs",prompt:"You are a technical documentation writer. Generate clear, comprehensive documentation for the provided code or feature.",tools:["vibedoc_read_doc","vibedoc_write_doc"],icon:"📝"},{id:"test-writer",name:"Test Writer",description:"Generates unit tests for functions and components",trigger:"/test",prompt:"You are a testing expert. Write comprehensive unit tests for the provided code, covering edge cases and ensuring good test coverage.",tools:["vibedoc_read_doc","vibedoc_search_docs"],icon:"🧪"}]],43668);let s=(0,r.createContext)(null);function a(){let e=(0,r.useContext)(s);if(!e)throw Error("useApp must be used inside AppProvider");return e}function l({children:e}){let a=(0,t.useRouter)(),[l,i]=(0,r.useState)([]),[c,d]=(0,r.useState)(""),[m,p]=(0,r.useState)(null),[u,b]=(0,r.useState)(null),[f,g]=(0,r.useState)([]),[h,k]=(0,r.useState)(!0),[w,v]=(0,r.useState)(!1),[x,y]=(0,r.useState)(null),[z,j]=(0,r.useState)(n.editor),[S,C]=(0,r.useState)(0),_=(0,r.useRef)(null),A=c?`?root=${encodeURIComponent(c)}`:"",G=(0,r.useCallback)(async e=>{let o=e||c;if(!o)return;let r=`?root=${encodeURIComponent(o)}`;try{let[e,o,t]=await Promise.all([fetch(`/api/summary${r}`).then(e=>e.json()),fetch(`/api/tasks${r}`).then(e=>e.json()),fetch(`/api/activity${r}&limit=30`).then(e=>e.json())]);p(e),b(o.board),g(Array.isArray(t)?t:[])}catch{}k(!1)},[c]);(0,r.useEffect)(()=>{fetch("/api/projects").then(e=>e.json()).then(e=>{i(e),e.length>0?(d(e[0].root),G(e[0].root)):k(!1)}).catch(()=>k(!1))},[]),(0,r.useEffect)(()=>{if(!c)return;let e=new EventSource("/api/events");return _.current=e,e.onmessage=e=>{try{let o=JSON.parse(e.data);if("connected"===o.type)return;v(!0),setTimeout(()=>v(!1),2e3),["task_updated","decision_logged","memory_updated","session_start"].includes(o.type)&&G()}catch{}},()=>{e.close()}},[c,G]);let T=(0,r.useCallback)(async(e,o)=>{b(r=>{let t;if(!r)return r;let n=structuredClone(r);for(let r of Object.keys(n)){let s=n[r].findIndex(o=>o.id===e);-1!==s&&(t={...n[r][s],status:o},n[r]=n[r].filter(o=>o.id!==e))}return t&&n[o]&&(n[o]=[t,...n[o]]),n});try{await fetch(`/api/tasks${A}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({taskId:e,status:o,actor:"human"})}),G()}catch{G()}},[A,G]),$=(0,r.useCallback)(async e=>{let o=await fetch(`/api/docs${A}&read=${encodeURIComponent(e)}`);y(await o.json()),a.push("/docs")},[A,a]);return(0,o.jsx)(s.Provider,{value:{projects:l,activeProject:c,summary:m,board:u,activity:f,liveIndicator:w,loading:h,selectedDoc:x,setSelectedDoc:y,rootParam:A,onProjectChange:function(e){d(e),G(e)},refresh:G,moveTask:T,openDoc:$,editorSettings:z,setEditorSettings:j,autoRefreshSeconds:S,setAutoRefreshSeconds:C},children:e})}function i(){for(var e,o,r=0,t="",n=arguments.length;r<n;r++)(e=arguments[r])&&(o=function e(o){var r,t,n="";if("string"==typeof o||"number"==typeof o)n+=o;else if("object"==typeof o)if(Array.isArray(o)){var s=o.length;for(r=0;r<s;r++)o[r]&&(t=e(o[r]))&&(n&&(n+=" "),n+=t)}else for(t in o)o[t]&&(n&&(n+=" "),n+=t);return n}(e))&&(t&&(t+=" "),t+=o);return t}e.s(["AppProvider",()=>l,"useApp",()=>a],63371),e.s(["clsx",()=>i],7284);let c=(e=new Map,o=null,r)=>({nextPart:e,validators:o,classGroupId:r}),d=[],m=(e,o,r)=>{if(0==e.length-o)return r.classGroupId;let t=e[o],n=r.nextPart.get(t);if(n){let r=m(e,o+1,n);if(r)return r}let s=r.validators;if(null===s)return;let a=0===o?e.join("-"):e.slice(o).join("-"),l=s.length;for(let e=0;e<l;e++){let o=s[e];if(o.validator(a))return o.classGroupId}},p=(e,o)=>{let r=c();for(let t in e)u(e[t],r,t,o);return r},u=(e,o,r,t)=>{let n=e.length;for(let s=0;s<n;s++)b(e[s],o,r,t)},b=(e,o,r,t)=>{"string"==typeof e?f(e,o,r):"function"==typeof e?g(e,o,r,t):h(e,o,r,t)},f=(e,o,r)=>{(""===e?o:k(o,e)).classGroupId=r},g=(e,o,r,t)=>{w(e)?u(e(t),o,r,t):(null===o.validators&&(o.validators=[]),o.validators.push({classGroupId:r,validator:e}))},h=(e,o,r,t)=>{let n=Object.entries(e),s=n.length;for(let e=0;e<s;e++){let[s,a]=n[e];u(a,k(o,s),r,t)}},k=(e,o)=>{let r=e,t=o.split("-"),n=t.length;for(let e=0;e<n;e++){let o=t[e],n=r.nextPart.get(o);n||(n=c(),r.nextPart.set(o,n)),r=n}return r},w=e=>"isThemeGetter"in e&&!0===e.isThemeGetter,v=[],x=(e,o,r,t,n)=>({modifiers:e,hasImportantModifier:o,baseClassName:r,maybePostfixModifierPosition:t,isExternal:n}),y=/\s+/,z=e=>{let o;if("string"==typeof e)return e;let r="";for(let t=0;t<e.length;t++)e[t]&&(o=z(e[t]))&&(r&&(r+=" "),r+=o);return r},j=[],S=e=>{let o=o=>o[e]||j;return o.isThemeGetter=!0,o},C=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,_=/^\((?:(\w[\w-]*):)?(.+)\)$/i,A=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,G=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,T=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,$=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,I=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,N=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,O=e=>A.test(e),P=e=>!!e&&!Number.isNaN(Number(e)),E=e=>!!e&&Number.isInteger(Number(e)),R=e=>e.endsWith("%")&&P(e.slice(0,-1)),W=e=>G.test(e),M=()=>!0,U=e=>T.test(e)&&!$.test(e),D=()=>!1,F=e=>I.test(e),L=e=>N.test(e),Y=e=>!B(e)&&!ee(e),q=e=>ei(e,ep,D),B=e=>C.test(e),K=e=>ei(e,eu,U),H=e=>ei(e,eb,P),J=e=>ei(e,eg,M),Q=e=>ei(e,ef,D),V=e=>ei(e,ed,D),X=e=>ei(e,em,L),Z=e=>ei(e,eh,F),ee=e=>_.test(e),eo=e=>ec(e,eu),er=e=>ec(e,ef),et=e=>ec(e,ed),en=e=>ec(e,ep),es=e=>ec(e,em),ea=e=>ec(e,eh,!0),el=e=>ec(e,eg,!0),ei=(e,o,r)=>{let t=C.exec(e);return!!t&&(t[1]?o(t[1]):r(t[2]))},ec=(e,o,r=!1)=>{let t=_.exec(e);return!!t&&(t[1]?o(t[1]):r)},ed=e=>"position"===e||"percentage"===e,em=e=>"image"===e||"url"===e,ep=e=>"length"===e||"size"===e||"bg-size"===e,eu=e=>"length"===e,eb=e=>"number"===e,ef=e=>"family-name"===e,eg=e=>"number"===e||"weight"===e,eh=e=>"shadow"===e,ek=((e,...o)=>{let r,t,n,s,a=e=>{let o=t(e);if(o)return o;let s=((e,o)=>{let{parseClassName:r,getClassGroupId:t,getConflictingClassGroupIds:n,sortModifiers:s}=o,a=[],l=e.trim().split(y),i="";for(let e=l.length-1;e>=0;e-=1){let o=l[e],{isExternal:c,modifiers:d,hasImportantModifier:m,baseClassName:p,maybePostfixModifierPosition:u}=r(o);if(c){i=o+(i.length>0?" "+i:i);continue}let b=!!u,f=t(b?p.substring(0,u):p);if(!f){if(!b||!(f=t(p))){i=o+(i.length>0?" "+i:i);continue}b=!1}let g=0===d.length?"":1===d.length?d[0]:s(d).join(":"),h=m?g+"!":g,k=h+f;if(a.indexOf(k)>-1)continue;a.push(k);let w=n(f,b);for(let e=0;e<w.length;++e){let o=w[e];a.push(h+o)}i=o+(i.length>0?" "+i:i)}return i})(e,r);return n(e,s),s};return s=l=>{var i;let c;return t=(r={cache:(e=>{if(e<1)return{get:()=>void 0,set:()=>{}};let o=0,r=Object.create(null),t=Object.create(null),n=(n,s)=>{r[n]=s,++o>e&&(o=0,t=r,r=Object.create(null))};return{get(e){let o=r[e];return void 0!==o?o:void 0!==(o=t[e])?(n(e,o),o):void 0},set(e,o){e in r?r[e]=o:n(e,o)}}})((i=o.reduce((e,o)=>o(e),e())).cacheSize),parseClassName:(e=>{let{prefix:o,experimentalParseClassName:r}=e,t=e=>{let o,r=[],t=0,n=0,s=0,a=e.length;for(let l=0;l<a;l++){let a=e[l];if(0===t&&0===n){if(":"===a){r.push(e.slice(s,l)),s=l+1;continue}if("/"===a){o=l;continue}}"["===a?t++:"]"===a?t--:"("===a?n++:")"===a&&n--}let l=0===r.length?e:e.slice(s),i=l,c=!1;return l.endsWith("!")?(i=l.slice(0,-1),c=!0):l.startsWith("!")&&(i=l.slice(1),c=!0),x(r,c,i,o&&o>s?o-s:void 0)};if(o){let e=o+":",r=t;t=o=>o.startsWith(e)?r(o.slice(e.length)):x(v,!1,o,void 0,!0)}if(r){let e=t;t=o=>r({className:o,parseClassName:e})}return t})(i),sortModifiers:(c=new Map,i.orderSensitiveModifiers.forEach((e,o)=>{c.set(e,1e6+o)}),e=>{let o=[],r=[];for(let t=0;t<e.length;t++){let n=e[t],s="["===n[0],a=c.has(n);s||a?(r.length>0&&(r.sort(),o.push(...r),r=[]),o.push(n)):r.push(n)}return r.length>0&&(r.sort(),o.push(...r)),o}),...(e=>{let o=(e=>{let{theme:o,classGroups:r}=e;return p(r,o)})(e),{conflictingClassGroups:r,conflictingClassGroupModifiers:t}=e;return{getClassGroupId:e=>{if(e.startsWith("[")&&e.endsWith("]")){var r;let o,t,n;return -1===(r=e).slice(1,-1).indexOf(":")?void 0:(t=(o=r.slice(1,-1)).indexOf(":"),(n=o.slice(0,t))?"arbitrary.."+n:void 0)}let t=e.split("-"),n=+(""===t[0]&&t.length>1);return m(t,n,o)},getConflictingClassGroupIds:(e,o)=>{if(o){let o=t[e],n=r[e];if(o){if(n){let e=Array(n.length+o.length);for(let o=0;o<n.length;o++)e[o]=n[o];for(let r=0;r<o.length;r++)e[n.length+r]=o[r];return e}return o}return n||d}return r[e]||d}}})(i)}).cache.get,n=r.cache.set,s=a,a(l)},(...e)=>s(((...e)=>{let o,r,t=0,n="";for(;t<e.length;)(o=e[t++])&&(r=z(o))&&(n&&(n+=" "),n+=r);return n})(...e))})(()=>{let e=S("color"),o=S("font"),r=S("text"),t=S("font-weight"),n=S("tracking"),s=S("leading"),a=S("breakpoint"),l=S("container"),i=S("spacing"),c=S("radius"),d=S("shadow"),m=S("inset-shadow"),p=S("text-shadow"),u=S("drop-shadow"),b=S("blur"),f=S("perspective"),g=S("aspect"),h=S("ease"),k=S("animate"),w=()=>["auto","avoid","all","avoid-page","page","left","right","column"],v=()=>["center","top","bottom","left","right","top-left","left-top","top-right","right-top","bottom-right","right-bottom","bottom-left","left-bottom"],x=()=>[...v(),ee,B],y=()=>["auto","hidden","clip","visible","scroll"],z=()=>["auto","contain","none"],j=()=>[ee,B,i],C=()=>[O,"full","auto",...j()],_=()=>[E,"none","subgrid",ee,B],A=()=>["auto",{span:["full",E,ee,B]},E,ee,B],G=()=>[E,"auto",ee,B],T=()=>["auto","min","max","fr",ee,B],$=()=>["start","end","center","between","around","evenly","stretch","baseline","center-safe","end-safe"],I=()=>["start","end","center","stretch","center-safe","end-safe"],N=()=>["auto",...j()],U=()=>[O,"auto","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",...j()],D=()=>[O,"screen","full","dvw","lvw","svw","min","max","fit",...j()],F=()=>[O,"screen","full","lh","dvh","lvh","svh","min","max","fit",...j()],L=()=>[e,ee,B],ei=()=>[...v(),et,V,{position:[ee,B]}],ec=()=>["no-repeat",{repeat:["","x","y","space","round"]}],ed=()=>["auto","cover","contain",en,q,{size:[ee,B]}],em=()=>[R,eo,K],ep=()=>["","none","full",c,ee,B],eu=()=>["",P,eo,K],eb=()=>["solid","dashed","dotted","double"],ef=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],eg=()=>[P,R,et,V],eh=()=>["","none",b,ee,B],ek=()=>["none",P,ee,B],ew=()=>["none",P,ee,B],ev=()=>[P,ee,B],ex=()=>[O,"full",...j()];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[W],breakpoint:[W],color:[M],container:[W],"drop-shadow":[W],ease:["in","out","in-out"],font:[Y],"font-weight":["thin","extralight","light","normal","medium","semibold","bold","extrabold","black"],"inset-shadow":[W],leading:["none","tight","snug","normal","relaxed","loose"],perspective:["dramatic","near","normal","midrange","distant","none"],radius:[W],shadow:[W],spacing:["px",P],text:[W],"text-shadow":[W],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",O,B,ee,g]}],container:["container"],columns:[{columns:[P,B,ee,l]}],"break-after":[{"break-after":w()}],"break-before":[{"break-before":w()}],"break-inside":[{"break-inside":["auto","avoid","avoid-page","avoid-column"]}],"box-decoration":[{"box-decoration":["slice","clone"]}],box:[{box:["border","content"]}],display:["block","inline-block","inline","flex","inline-flex","table","inline-table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row-group","table-row","flow-root","grid","inline-grid","contents","list-item","hidden"],sr:["sr-only","not-sr-only"],float:[{float:["right","left","none","start","end"]}],clear:[{clear:["left","right","both","none","start","end"]}],isolation:["isolate","isolation-auto"],"object-fit":[{object:["contain","cover","fill","none","scale-down"]}],"object-position":[{object:x()}],overflow:[{overflow:y()}],"overflow-x":[{"overflow-x":y()}],"overflow-y":[{"overflow-y":y()}],overscroll:[{overscroll:z()}],"overscroll-x":[{"overscroll-x":z()}],"overscroll-y":[{"overscroll-y":z()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:C()}],"inset-x":[{"inset-x":C()}],"inset-y":[{"inset-y":C()}],start:[{"inset-s":C(),start:C()}],end:[{"inset-e":C(),end:C()}],"inset-bs":[{"inset-bs":C()}],"inset-be":[{"inset-be":C()}],top:[{top:C()}],right:[{right:C()}],bottom:[{bottom:C()}],left:[{left:C()}],visibility:["visible","invisible","collapse"],z:[{z:[E,"auto",ee,B]}],basis:[{basis:[O,"full","auto",l,...j()]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[P,O,"auto","initial","none",B]}],grow:[{grow:["",P,ee,B]}],shrink:[{shrink:["",P,ee,B]}],order:[{order:[E,"first","last","none",ee,B]}],"grid-cols":[{"grid-cols":_()}],"col-start-end":[{col:A()}],"col-start":[{"col-start":G()}],"col-end":[{"col-end":G()}],"grid-rows":[{"grid-rows":_()}],"row-start-end":[{row:A()}],"row-start":[{"row-start":G()}],"row-end":[{"row-end":G()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":T()}],"auto-rows":[{"auto-rows":T()}],gap:[{gap:j()}],"gap-x":[{"gap-x":j()}],"gap-y":[{"gap-y":j()}],"justify-content":[{justify:[...$(),"normal"]}],"justify-items":[{"justify-items":[...I(),"normal"]}],"justify-self":[{"justify-self":["auto",...I()]}],"align-content":[{content:["normal",...$()]}],"align-items":[{items:[...I(),{baseline:["","last"]}]}],"align-self":[{self:["auto",...I(),{baseline:["","last"]}]}],"place-content":[{"place-content":$()}],"place-items":[{"place-items":[...I(),"baseline"]}],"place-self":[{"place-self":["auto",...I()]}],p:[{p:j()}],px:[{px:j()}],py:[{py:j()}],ps:[{ps:j()}],pe:[{pe:j()}],pbs:[{pbs:j()}],pbe:[{pbe:j()}],pt:[{pt:j()}],pr:[{pr:j()}],pb:[{pb:j()}],pl:[{pl:j()}],m:[{m:N()}],mx:[{mx:N()}],my:[{my:N()}],ms:[{ms:N()}],me:[{me:N()}],mbs:[{mbs:N()}],mbe:[{mbe:N()}],mt:[{mt:N()}],mr:[{mr:N()}],mb:[{mb:N()}],ml:[{ml:N()}],"space-x":[{"space-x":j()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":j()}],"space-y-reverse":["space-y-reverse"],size:[{size:U()}],"inline-size":[{inline:["auto",...D()]}],"min-inline-size":[{"min-inline":["auto",...D()]}],"max-inline-size":[{"max-inline":["none",...D()]}],"block-size":[{block:["auto",...F()]}],"min-block-size":[{"min-block":["auto",...F()]}],"max-block-size":[{"max-block":["none",...F()]}],w:[{w:[l,"screen",...U()]}],"min-w":[{"min-w":[l,"screen","none",...U()]}],"max-w":[{"max-w":[l,"screen","none","prose",{screen:[a]},...U()]}],h:[{h:["screen","lh",...U()]}],"min-h":[{"min-h":["screen","lh","none",...U()]}],"max-h":[{"max-h":["screen","lh",...U()]}],"font-size":[{text:["base",r,eo,K]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[t,el,J]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",R,B]}],"font-family":[{font:[er,Q,o]}],"font-features":[{"font-features":[B]}],"fvn-normal":["normal-nums"],"fvn-ordinal":["ordinal"],"fvn-slashed-zero":["slashed-zero"],"fvn-figure":["lining-nums","oldstyle-nums"],"fvn-spacing":["proportional-nums","tabular-nums"],"fvn-fraction":["diagonal-fractions","stacked-fractions"],tracking:[{tracking:[n,ee,B]}],"line-clamp":[{"line-clamp":[P,"none",ee,H]}],leading:[{leading:[s,...j()]}],"list-image":[{"list-image":["none",ee,B]}],"list-style-position":[{list:["inside","outside"]}],"list-style-type":[{list:["disc","decimal","none",ee,B]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"placeholder-color":[{placeholder:L()}],"text-color":[{text:L()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...eb(),"wavy"]}],"text-decoration-thickness":[{decoration:[P,"from-font","auto",ee,K]}],"text-decoration-color":[{decoration:L()}],"underline-offset":[{"underline-offset":[P,"auto",ee,B]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:j()}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",ee,B]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],wrap:[{wrap:["break-word","anywhere","normal"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",ee,B]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:ei()}],"bg-repeat":[{bg:ec()}],"bg-size":[{bg:ed()}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},E,ee,B],radial:["",ee,B],conic:[E,ee,B]},es,X]}],"bg-color":[{bg:L()}],"gradient-from-pos":[{from:em()}],"gradient-via-pos":[{via:em()}],"gradient-to-pos":[{to:em()}],"gradient-from":[{from:L()}],"gradient-via":[{via:L()}],"gradient-to":[{to:L()}],rounded:[{rounded:ep()}],"rounded-s":[{"rounded-s":ep()}],"rounded-e":[{"rounded-e":ep()}],"rounded-t":[{"rounded-t":ep()}],"rounded-r":[{"rounded-r":ep()}],"rounded-b":[{"rounded-b":ep()}],"rounded-l":[{"rounded-l":ep()}],"rounded-ss":[{"rounded-ss":ep()}],"rounded-se":[{"rounded-se":ep()}],"rounded-ee":[{"rounded-ee":ep()}],"rounded-es":[{"rounded-es":ep()}],"rounded-tl":[{"rounded-tl":ep()}],"rounded-tr":[{"rounded-tr":ep()}],"rounded-br":[{"rounded-br":ep()}],"rounded-bl":[{"rounded-bl":ep()}],"border-w":[{border:eu()}],"border-w-x":[{"border-x":eu()}],"border-w-y":[{"border-y":eu()}],"border-w-s":[{"border-s":eu()}],"border-w-e":[{"border-e":eu()}],"border-w-bs":[{"border-bs":eu()}],"border-w-be":[{"border-be":eu()}],"border-w-t":[{"border-t":eu()}],"border-w-r":[{"border-r":eu()}],"border-w-b":[{"border-b":eu()}],"border-w-l":[{"border-l":eu()}],"divide-x":[{"divide-x":eu()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":eu()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[...eb(),"hidden","none"]}],"divide-style":[{divide:[...eb(),"hidden","none"]}],"border-color":[{border:L()}],"border-color-x":[{"border-x":L()}],"border-color-y":[{"border-y":L()}],"border-color-s":[{"border-s":L()}],"border-color-e":[{"border-e":L()}],"border-color-bs":[{"border-bs":L()}],"border-color-be":[{"border-be":L()}],"border-color-t":[{"border-t":L()}],"border-color-r":[{"border-r":L()}],"border-color-b":[{"border-b":L()}],"border-color-l":[{"border-l":L()}],"divide-color":[{divide:L()}],"outline-style":[{outline:[...eb(),"none","hidden"]}],"outline-offset":[{"outline-offset":[P,ee,B]}],"outline-w":[{outline:["",P,eo,K]}],"outline-color":[{outline:L()}],shadow:[{shadow:["","none",d,ea,Z]}],"shadow-color":[{shadow:L()}],"inset-shadow":[{"inset-shadow":["none",m,ea,Z]}],"inset-shadow-color":[{"inset-shadow":L()}],"ring-w":[{ring:eu()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:L()}],"ring-offset-w":[{"ring-offset":[P,K]}],"ring-offset-color":[{"ring-offset":L()}],"inset-ring-w":[{"inset-ring":eu()}],"inset-ring-color":[{"inset-ring":L()}],"text-shadow":[{"text-shadow":["none",p,ea,Z]}],"text-shadow-color":[{"text-shadow":L()}],opacity:[{opacity:[P,ee,B]}],"mix-blend":[{"mix-blend":[...ef(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":ef()}],"mask-clip":[{"mask-clip":["border","padding","content","fill","stroke","view"]},"mask-no-clip"],"mask-composite":[{mask:["add","subtract","intersect","exclude"]}],"mask-image-linear-pos":[{"mask-linear":[P]}],"mask-image-linear-from-pos":[{"mask-linear-from":eg()}],"mask-image-linear-to-pos":[{"mask-linear-to":eg()}],"mask-image-linear-from-color":[{"mask-linear-from":L()}],"mask-image-linear-to-color":[{"mask-linear-to":L()}],"mask-image-t-from-pos":[{"mask-t-from":eg()}],"mask-image-t-to-pos":[{"mask-t-to":eg()}],"mask-image-t-from-color":[{"mask-t-from":L()}],"mask-image-t-to-color":[{"mask-t-to":L()}],"mask-image-r-from-pos":[{"mask-r-from":eg()}],"mask-image-r-to-pos":[{"mask-r-to":eg()}],"mask-image-r-from-color":[{"mask-r-from":L()}],"mask-image-r-to-color":[{"mask-r-to":L()}],"mask-image-b-from-pos":[{"mask-b-from":eg()}],"mask-image-b-to-pos":[{"mask-b-to":eg()}],"mask-image-b-from-color":[{"mask-b-from":L()}],"mask-image-b-to-color":[{"mask-b-to":L()}],"mask-image-l-from-pos":[{"mask-l-from":eg()}],"mask-image-l-to-pos":[{"mask-l-to":eg()}],"mask-image-l-from-color":[{"mask-l-from":L()}],"mask-image-l-to-color":[{"mask-l-to":L()}],"mask-image-x-from-pos":[{"mask-x-from":eg()}],"mask-image-x-to-pos":[{"mask-x-to":eg()}],"mask-image-x-from-color":[{"mask-x-from":L()}],"mask-image-x-to-color":[{"mask-x-to":L()}],"mask-image-y-from-pos":[{"mask-y-from":eg()}],"mask-image-y-to-pos":[{"mask-y-to":eg()}],"mask-image-y-from-color":[{"mask-y-from":L()}],"mask-image-y-to-color":[{"mask-y-to":L()}],"mask-image-radial":[{"mask-radial":[ee,B]}],"mask-image-radial-from-pos":[{"mask-radial-from":eg()}],"mask-image-radial-to-pos":[{"mask-radial-to":eg()}],"mask-image-radial-from-color":[{"mask-radial-from":L()}],"mask-image-radial-to-color":[{"mask-radial-to":L()}],"mask-image-radial-shape":[{"mask-radial":["circle","ellipse"]}],"mask-image-radial-size":[{"mask-radial":[{closest:["side","corner"],farthest:["side","corner"]}]}],"mask-image-radial-pos":[{"mask-radial-at":v()}],"mask-image-conic-pos":[{"mask-conic":[P]}],"mask-image-conic-from-pos":[{"mask-conic-from":eg()}],"mask-image-conic-to-pos":[{"mask-conic-to":eg()}],"mask-image-conic-from-color":[{"mask-conic-from":L()}],"mask-image-conic-to-color":[{"mask-conic-to":L()}],"mask-mode":[{mask:["alpha","luminance","match"]}],"mask-origin":[{"mask-origin":["border","padding","content","fill","stroke","view"]}],"mask-position":[{mask:ei()}],"mask-repeat":[{mask:ec()}],"mask-size":[{mask:ed()}],"mask-type":[{"mask-type":["alpha","luminance"]}],"mask-image":[{mask:["none",ee,B]}],filter:[{filter:["","none",ee,B]}],blur:[{blur:eh()}],brightness:[{brightness:[P,ee,B]}],contrast:[{contrast:[P,ee,B]}],"drop-shadow":[{"drop-shadow":["","none",u,ea,Z]}],"drop-shadow-color":[{"drop-shadow":L()}],grayscale:[{grayscale:["",P,ee,B]}],"hue-rotate":[{"hue-rotate":[P,ee,B]}],invert:[{invert:["",P,ee,B]}],saturate:[{saturate:[P,ee,B]}],sepia:[{sepia:["",P,ee,B]}],"backdrop-filter":[{"backdrop-filter":["","none",ee,B]}],"backdrop-blur":[{"backdrop-blur":eh()}],"backdrop-brightness":[{"backdrop-brightness":[P,ee,B]}],"backdrop-contrast":[{"backdrop-contrast":[P,ee,B]}],"backdrop-grayscale":[{"backdrop-grayscale":["",P,ee,B]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[P,ee,B]}],"backdrop-invert":[{"backdrop-invert":["",P,ee,B]}],"backdrop-opacity":[{"backdrop-opacity":[P,ee,B]}],"backdrop-saturate":[{"backdrop-saturate":[P,ee,B]}],"backdrop-sepia":[{"backdrop-sepia":["",P,ee,B]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":j()}],"border-spacing-x":[{"border-spacing-x":j()}],"border-spacing-y":[{"border-spacing-y":j()}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["","all","colors","opacity","shadow","transform","none",ee,B]}],"transition-behavior":[{transition:["normal","discrete"]}],duration:[{duration:[P,"initial",ee,B]}],ease:[{ease:["linear","initial",h,ee,B]}],delay:[{delay:[P,ee,B]}],animate:[{animate:["none",k,ee,B]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[f,ee,B]}],"perspective-origin":[{"perspective-origin":x()}],rotate:[{rotate:ek()}],"rotate-x":[{"rotate-x":ek()}],"rotate-y":[{"rotate-y":ek()}],"rotate-z":[{"rotate-z":ek()}],scale:[{scale:ew()}],"scale-x":[{"scale-x":ew()}],"scale-y":[{"scale-y":ew()}],"scale-z":[{"scale-z":ew()}],"scale-3d":["scale-3d"],skew:[{skew:ev()}],"skew-x":[{"skew-x":ev()}],"skew-y":[{"skew-y":ev()}],transform:[{transform:[ee,B,"","none","gpu","cpu"]}],"transform-origin":[{origin:x()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:ex()}],"translate-x":[{"translate-x":ex()}],"translate-y":[{"translate-y":ex()}],"translate-z":[{"translate-z":ex()}],"translate-none":["translate-none"],accent:[{accent:L()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:L()}],"color-scheme":[{scheme:["normal","dark","light","light-dark","only-dark","only-light"]}],cursor:[{cursor:["auto","default","pointer","wait","text","move","help","not-allowed","none","context-menu","progress","cell","crosshair","vertical-text","alias","copy","no-drop","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out",ee,B]}],"field-sizing":[{"field-sizing":["fixed","content"]}],"pointer-events":[{"pointer-events":["auto","none"]}],resize:[{resize:["none","","y","x"]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scroll-m":[{"scroll-m":j()}],"scroll-mx":[{"scroll-mx":j()}],"scroll-my":[{"scroll-my":j()}],"scroll-ms":[{"scroll-ms":j()}],"scroll-me":[{"scroll-me":j()}],"scroll-mbs":[{"scroll-mbs":j()}],"scroll-mbe":[{"scroll-mbe":j()}],"scroll-mt":[{"scroll-mt":j()}],"scroll-mr":[{"scroll-mr":j()}],"scroll-mb":[{"scroll-mb":j()}],"scroll-ml":[{"scroll-ml":j()}],"scroll-p":[{"scroll-p":j()}],"scroll-px":[{"scroll-px":j()}],"scroll-py":[{"scroll-py":j()}],"scroll-ps":[{"scroll-ps":j()}],"scroll-pe":[{"scroll-pe":j()}],"scroll-pbs":[{"scroll-pbs":j()}],"scroll-pbe":[{"scroll-pbe":j()}],"scroll-pt":[{"scroll-pt":j()}],"scroll-pr":[{"scroll-pr":j()}],"scroll-pb":[{"scroll-pb":j()}],"scroll-pl":[{"scroll-pl":j()}],"snap-align":[{snap:["start","end","center","align-none"]}],"snap-stop":[{snap:["normal","always"]}],"snap-type":[{snap:["none","x","y","both"]}],"snap-strictness":[{snap:["mandatory","proximity"]}],touch:[{touch:["auto","none","manipulation"]}],"touch-x":[{"touch-pan":["x","left","right"]}],"touch-y":[{"touch-pan":["y","up","down"]}],"touch-pz":["touch-pinch-zoom"],select:[{select:["none","text","all","auto"]}],"will-change":[{"will-change":["auto","scroll","contents","transform",ee,B]}],fill:[{fill:["none",...L()]}],"stroke-w":[{stroke:[P,eo,K,H]}],stroke:[{stroke:["none",...L()]}],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","inset-bs","inset-be","start","end","top","right","bottom","left"],"inset-x":["right","left"],"inset-y":["top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pbs","pbe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mbs","mbe","mt","mr","mb","ml"],mx:["mr","ml"],my:["mt","mb"],size:["w","h"],"font-size":["leading"],"fvn-normal":["fvn-ordinal","fvn-slashed-zero","fvn-figure","fvn-spacing","fvn-fraction"],"fvn-ordinal":["fvn-normal"],"fvn-slashed-zero":["fvn-normal"],"fvn-figure":["fvn-normal"],"fvn-spacing":["fvn-normal"],"fvn-fraction":["fvn-normal"],"line-clamp":["display","overflow"],rounded:["rounded-s","rounded-e","rounded-t","rounded-r","rounded-b","rounded-l","rounded-ss","rounded-se","rounded-ee","rounded-es","rounded-tl","rounded-tr","rounded-br","rounded-bl"],"rounded-s":["rounded-ss","rounded-es"],"rounded-e":["rounded-se","rounded-ee"],"rounded-t":["rounded-tl","rounded-tr"],"rounded-r":["rounded-tr","rounded-br"],"rounded-b":["rounded-br","rounded-bl"],"rounded-l":["rounded-tl","rounded-bl"],"border-spacing":["border-spacing-x","border-spacing-y"],"border-w":["border-w-x","border-w-y","border-w-s","border-w-e","border-w-bs","border-w-be","border-w-t","border-w-r","border-w-b","border-w-l"],"border-w-x":["border-w-r","border-w-l"],"border-w-y":["border-w-t","border-w-b"],"border-color":["border-color-x","border-color-y","border-color-s","border-color-e","border-color-bs","border-color-be","border-color-t","border-color-r","border-color-b","border-color-l"],"border-color-x":["border-color-r","border-color-l"],"border-color-y":["border-color-t","border-color-b"],translate:["translate-x","translate-y","translate-none"],"translate-none":["translate","translate-x","translate-y","translate-z"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","scroll-mbs","scroll-mbe","scroll-mt","scroll-mr","scroll-mb","scroll-ml"],"scroll-mx":["scroll-mr","scroll-ml"],"scroll-my":["scroll-mt","scroll-mb"],"scroll-p":["scroll-px","scroll-py","scroll-ps","scroll-pe","scroll-pbs","scroll-pbe","scroll-pt","scroll-pr","scroll-pb","scroll-pl"],"scroll-px":["scroll-pr","scroll-pl"],"scroll-py":["scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]},orderSensitiveModifiers:["*","**","after","backdrop","before","details-content","file","first-letter","first-line","marker","placeholder","selection"]}});function ew(...e){return ek(i(e))}e.s(["cn",()=>ew],75157)}]);
|
|
File without changes
|
/package/.next/static/{3qaTeSReklR4iA-D6kF9C → 5YfD8cBCzJoKPTXc-Q0s5}/_clientMiddlewareManifest.json
RENAMED
|
File without changes
|
|
File without changes
|