zerosync-mcp 0.1.0 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,116 +1,119 @@
1
- # zerosync-mcp
2
-
3
- Servidor [MCP](https://modelcontextprotocol.io) (stdio) que expõe as ações do **ZeroSync** como ferramentas para assistentes de IA (Claude Desktop, n8n, código próprio, etc.).
4
-
5
- Ele é um wrapper fino sobre a **API REST pública v1** do ZeroSync (`https://app.zerosync.com.br/api/v1`), autenticado por um **Personal Access Token (PAT)**. O servidor não acessa o banco diretamente — todo o isolamento por usuário é garantido pela própria API.
6
-
7
- ## Ferramentas disponíveis
8
-
9
- | Tool | O que faz | Endpoint v1 |
10
- | --- | --- | --- |
11
- | `criar_tarefa` | Cria tarefa/compromisso na agenda | `POST /tasks` |
12
- | `listar_agenda` | Lista tarefas de um dia | `GET /tasks` |
13
- | `lancar_despesa` | Lança uma despesa | `POST /transactions` (type=expense) |
14
- | `lancar_receita` | Lança uma receita | `POST /transactions` (type=income) |
15
- | `resumo_financeiro` | Resumo do mês (entradas/saídas/saldo) | `GET /finance/summary` |
16
- | `marcar_habito` | Marca um hábito como feito | `POST /habits/log` |
17
- | `listar_habitos` | Lista hábitos e status do dia | `GET /habits` |
18
- | `add_compra` | Adiciona item à lista de compras | `POST /shopping` |
19
- | `criar_objetivo` | Cria um objetivo/meta | `POST /goals` |
20
- | `add_nota` | Adiciona nota de diário | `POST /notes` |
21
-
22
- Cada ferramenta retorna o texto de resumo (`summary`) devolvido pela API.
23
-
24
- ## Pré-requisitos
25
-
26
- - Node.js 18+ (testado em 20/22/24; usa o `fetch` global).
27
- - Um **Personal Access Token** do ZeroSync. Gere em `https://app.zerosync.com.br` (seção de API/tokens).
28
-
29
- ## Variáveis de ambiente
30
-
31
- | Variável | Obrigatória | Default | Descrição |
32
- | --- | --- | --- | --- |
33
- | `ZEROSYNC_API_KEY` | **Sim** | — | Seu Personal Access Token (PAT). |
34
- | `ZEROSYNC_API_URL` | Não | `https://app.zerosync.com.br/api/v1` | Base da API v1 (útil para apontar para um ambiente local/staging). |
35
-
36
- Se `ZEROSYNC_API_KEY` não estiver definida, o servidor encerra com uma mensagem clara.
37
-
38
- ## Instalação e build
39
-
40
- ```bash
41
- cd packages/zerosync-mcp
42
- npm install
43
- npm run build # compila TypeScript para dist/
44
- ```
45
-
46
- Para desenvolvimento sem build, use `npm run dev` (executa via `tsx`).
47
-
48
- ## Conectar no Claude Desktop
49
-
50
- Edite o arquivo de configuração do Claude Desktop:
51
-
52
- - **macOS**: `~/Library/Application Support/Claude/claude_desktop_config.json`
53
- - **Windows**: `%APPDATA%\Claude\claude_desktop_config.json`
54
-
55
- Adicione o servidor em `mcpServers`. A forma recomendada é via `npx` (quando o pacote estiver publicado no npm):
56
-
57
- ```json
58
- {
59
- "mcpServers": {
60
- "zerosync": {
61
- "command": "npx",
62
- "args": ["-y", "zerosync-mcp"],
63
- "env": {
64
- "ZEROSYNC_API_KEY": "seu_personal_access_token_aqui"
65
- }
66
- }
67
- }
68
- }
69
- ```
70
-
71
- ### Rodando a partir do código local (sem publicar no npm)
72
-
73
- Aponte diretamente para o `dist/index.js` gerado pelo build:
74
-
75
- ```json
76
- {
77
- "mcpServers": {
78
- "zerosync": {
79
- "command": "node",
80
- "args": ["C:\\Users\\voce\\Apps\\ZeroSync\\packages\\zerosync-mcp\\dist\\index.js"],
81
- "env": {
82
- "ZEROSYNC_API_KEY": "seu_personal_access_token_aqui"
83
- }
84
- }
85
- }
86
- }
87
- ```
88
-
89
- Para apontar para um ambiente local da API, adicione `"ZEROSYNC_API_URL": "http://localhost:3000/api/v1"` ao bloco `env`.
90
-
91
- Depois de salvar, reinicie o Claude Desktop. As ferramentas `criar_tarefa`, `lancar_despesa`, etc. ficarão disponíveis.
92
-
93
- ## Usar com n8n / código próprio
94
-
95
- Qualquer cliente MCP que fale stdio funciona. Inicie o processo com a env definida:
96
-
97
- ```bash
98
- ZEROSYNC_API_KEY=seu_token npx -y zerosync-mcp
99
- # ou, a partir do build local:
100
- ZEROSYNC_API_KEY=seu_token node dist/index.js
101
- ```
102
-
103
- No Windows (PowerShell):
104
-
105
- ```powershell
106
- $env:ZEROSYNC_API_KEY = "seu_token"; node dist/index.js
107
- ```
108
-
109
- ## Erros comuns
110
-
111
- | Mensagem | Causa | Solução |
112
- | --- | --- | --- |
113
- | `ZEROSYNC_API_KEY não definida` | Env ausente | Defina a variável com seu PAT. |
114
- | `Token inválido ou revogado` | Token errado/revogado | Gere um novo PAT no ZeroSync. |
115
- | `Seu token não tem permissão (escopo)` | PAT sem o escopo necessário (read/write) | Gere um token com o escopo adequado. |
116
- | `Não consegui falar com o ZeroSync` | Rede/URL incorreta | Verifique conexão e `ZEROSYNC_API_URL`. |
1
+ # zerosync-mcp
2
+
3
+ Servidor [MCP](https://modelcontextprotocol.io) (stdio) que expõe as ações do **ZeroSync** como ferramentas para assistentes de IA (Claude Desktop, n8n, código próprio, etc.).
4
+
5
+ Ele é um wrapper fino sobre a **API REST pública v1** do ZeroSync (`https://app.zerosync.com.br/api/v1`), autenticado por um **Personal Access Token (PAT)**. O servidor não acessa o banco diretamente — todo o isolamento por usuário é garantido pela própria API.
6
+
7
+ ## Ferramentas disponíveis
8
+
9
+ | Tool | O que faz | Endpoint v1 |
10
+ | --- | --- | --- |
11
+ | `criar_tarefa` | Cria tarefa/compromisso na agenda | `POST /tasks` |
12
+ | `listar_agenda` | Lista tarefas de um dia | `GET /tasks` |
13
+ | `lancar_despesa` | Lança uma despesa | `POST /transactions` (type=expense) |
14
+ | `lancar_receita` | Lança uma receita | `POST /transactions` (type=income) |
15
+ | `resumo_financeiro` | Resumo do mês (entradas/saídas/saldo) | `GET /finance/summary` |
16
+ | `marcar_habito` | Marca um hábito como feito | `POST /habits/log` |
17
+ | `listar_habitos` | Lista hábitos e status do dia | `GET /habits` |
18
+ | `add_compra` | Adiciona item à lista de compras | `POST /shopping` |
19
+ | `criar_objetivo` | Cria um objetivo/meta | `POST /goals` |
20
+ | `add_nota` | Adiciona nota de diário | `POST /notes` |
21
+ | `anotar_tarefa` | Anota um afazer no backlog (sem horário) | `POST /todos` |
22
+ | `listar_tarefas` | Lista afazeres pendentes agrupados | `GET /todos` |
23
+ | `concluir_tarefa` | Conclui um afazer por título | `POST /todos/complete` |
24
+
25
+ Cada ferramenta retorna o texto de resumo (`summary`) devolvido pela API.
26
+
27
+ ## Pré-requisitos
28
+
29
+ - Node.js 18+ (testado em 20/22/24; usa o `fetch` global).
30
+ - Um **Personal Access Token** do ZeroSync. Gere em `https://app.zerosync.com.br` (seção de API/tokens).
31
+
32
+ ## Variáveis de ambiente
33
+
34
+ | Variável | Obrigatória | Default | Descrição |
35
+ | --- | --- | --- | --- |
36
+ | `ZEROSYNC_API_KEY` | **Sim** | | Seu Personal Access Token (PAT). |
37
+ | `ZEROSYNC_API_URL` | Não | `https://app.zerosync.com.br/api/v1` | Base da API v1 (útil para apontar para um ambiente local/staging). |
38
+
39
+ Se `ZEROSYNC_API_KEY` não estiver definida, o servidor encerra com uma mensagem clara.
40
+
41
+ ## Instalação e build
42
+
43
+ ```bash
44
+ cd packages/zerosync-mcp
45
+ npm install
46
+ npm run build # compila TypeScript para dist/
47
+ ```
48
+
49
+ Para desenvolvimento sem build, use `npm run dev` (executa via `tsx`).
50
+
51
+ ## Conectar no Claude Desktop
52
+
53
+ Edite o arquivo de configuração do Claude Desktop:
54
+
55
+ - **macOS**: `~/Library/Application Support/Claude/claude_desktop_config.json`
56
+ - **Windows**: `%APPDATA%\Claude\claude_desktop_config.json`
57
+
58
+ Adicione o servidor em `mcpServers`. A forma recomendada é via `npx` (quando o pacote estiver publicado no npm):
59
+
60
+ ```json
61
+ {
62
+ "mcpServers": {
63
+ "zerosync": {
64
+ "command": "npx",
65
+ "args": ["-y", "zerosync-mcp"],
66
+ "env": {
67
+ "ZEROSYNC_API_KEY": "seu_personal_access_token_aqui"
68
+ }
69
+ }
70
+ }
71
+ }
72
+ ```
73
+
74
+ ### Rodando a partir do código local (sem publicar no npm)
75
+
76
+ Aponte diretamente para o `dist/index.js` gerado pelo build:
77
+
78
+ ```json
79
+ {
80
+ "mcpServers": {
81
+ "zerosync": {
82
+ "command": "node",
83
+ "args": ["C:\\Users\\voce\\Apps\\ZeroSync\\packages\\zerosync-mcp\\dist\\index.js"],
84
+ "env": {
85
+ "ZEROSYNC_API_KEY": "seu_personal_access_token_aqui"
86
+ }
87
+ }
88
+ }
89
+ }
90
+ ```
91
+
92
+ Para apontar para um ambiente local da API, adicione `"ZEROSYNC_API_URL": "http://localhost:3000/api/v1"` ao bloco `env`.
93
+
94
+ Depois de salvar, reinicie o Claude Desktop. As ferramentas `criar_tarefa`, `lancar_despesa`, etc. ficarão disponíveis.
95
+
96
+ ## Usar com n8n / código próprio
97
+
98
+ Qualquer cliente MCP que fale stdio funciona. Inicie o processo com a env definida:
99
+
100
+ ```bash
101
+ ZEROSYNC_API_KEY=seu_token npx -y zerosync-mcp
102
+ # ou, a partir do build local:
103
+ ZEROSYNC_API_KEY=seu_token node dist/index.js
104
+ ```
105
+
106
+ No Windows (PowerShell):
107
+
108
+ ```powershell
109
+ $env:ZEROSYNC_API_KEY = "seu_token"; node dist/index.js
110
+ ```
111
+
112
+ ## Erros comuns
113
+
114
+ | Mensagem | Causa | Solução |
115
+ | --- | --- | --- |
116
+ | `ZEROSYNC_API_KEY não definida` | Env ausente | Defina a variável com seu PAT. |
117
+ | `Token inválido ou revogado` | Token errado/revogado | Gere um novo PAT no ZeroSync. |
118
+ | `Seu token não tem permissão (escopo)` | PAT sem o escopo necessário (read/write) | Gere um token com o escopo adequado. |
119
+ | `Não consegui falar com o ZeroSync` | Rede/URL incorreta | Verifique conexão e `ZEROSYNC_API_URL`. |
package/dist/index.js CHANGED
@@ -113,7 +113,7 @@ function humanizeError(status, code) {
113
113
  }
114
114
  async function main() {
115
115
  const config = loadConfig();
116
- const server = new Server({ name: "zerosync-mcp", version: "0.1.0" }, { capabilities: { tools: {} } });
116
+ const server = new Server({ name: "zerosync-mcp", version: "0.3.0" }, { capabilities: { tools: {} } });
117
117
  const byName = new Map(tools.map((t) => [t.name, t]));
118
118
  server.setRequestHandler(ListToolsRequestSchema, async () => ({
119
119
  tools: tools.map((t) => ({
package/dist/tools.js CHANGED
@@ -129,6 +129,15 @@ const criarObjetivoSchema = z.object({
129
129
  description: z.string().optional(),
130
130
  horizon: z.enum(["short", "medium", "long"]).optional(),
131
131
  target_date: YMD.optional(),
132
+ milestones: z.array(z.string().min(1)).optional(),
133
+ });
134
+ const adicionarMarcoSchema = z.object({
135
+ goal: z.string().min(1, "Objetivo obrigatório."),
136
+ title: z.string().min(1, "Título do marco obrigatório."),
137
+ });
138
+ const consultarObjetivosSchema = z.object({
139
+ horizon: z.enum(["short", "medium", "long"]).optional(),
140
+ status: z.enum(["active", "done", "paused", "cancelled"]).optional(),
132
141
  });
133
142
  const addNotaSchema = z.object({
134
143
  content: z.string().min(1, "Conteúdo obrigatório."),
@@ -138,11 +147,29 @@ const addNotaSchema = z.object({
138
147
  mood: z.number().int().min(1).max(5).optional(),
139
148
  tags: z.array(z.string()).optional(),
140
149
  });
150
+ const anotarTarefaSchema = z.object({
151
+ title: z.string().min(1, "Título obrigatório."),
152
+ due_date: YMD.optional(),
153
+ priority: z.number().int().min(1).max(4).optional(),
154
+ area: z.string().optional(),
155
+ estimated_minutes: z.number().int().positive().optional(),
156
+ goal: z.string().optional(),
157
+ description: z.string().optional(),
158
+ });
159
+ const listarTarefasSchema = z.object({
160
+ status: z.enum(["open", "done", "archived", "all"]).optional(),
161
+ priority: z.number().int().min(1).max(4).optional(),
162
+ });
163
+ const concluirTarefaSchema = z.object({
164
+ title: z.string().min(1, "Título obrigatório."),
165
+ });
141
166
  // ----------------------------------------------------------------- tools
142
167
  export const tools = [
143
168
  defineTool({
144
169
  name: "criar_tarefa",
145
- description: "Cria uma tarefa/compromisso na agenda do ZeroSync. Use para agendar algo num dia e horário.",
170
+ description: "Agenda um compromisso COM horário (start_time) na agenda do ZeroSync " +
171
+ "ele também aparece na lista de tarefas. SEM horário, use anotar_tarefa " +
172
+ "(vai só pro backlog). Use para algo com dia e hora marcados.",
146
173
  schema: criarTarefaSchema,
147
174
  inputSchema: {
148
175
  type: "object",
@@ -347,7 +374,8 @@ export const tools = [
347
374
  }),
348
375
  defineTool({
349
376
  name: "criar_objetivo",
350
- description: "Cria um objetivo/meta no ZeroSync (com horizonte e data alvo opcional).",
377
+ description: "Cria um objetivo/meta no ZeroSync (com horizonte, data alvo e marcos " +
378
+ "iniciais opcionais).",
351
379
  schema: criarObjetivoSchema,
352
380
  inputSchema: {
353
381
  type: "object",
@@ -363,6 +391,11 @@ export const tools = [
363
391
  type: "string",
364
392
  description: "Data alvo AAAA-MM-DD. Opcional.",
365
393
  },
394
+ milestones: {
395
+ type: "array",
396
+ items: { type: "string" },
397
+ description: "Marcos iniciais (títulos). Opcional.",
398
+ },
366
399
  },
367
400
  required: ["title"],
368
401
  additionalProperties: false,
@@ -372,6 +405,58 @@ export const tools = [
372
405
  return textFrom(res, `Objetivo "${args.title}" criado.`);
373
406
  },
374
407
  }),
408
+ defineTool({
409
+ name: "adicionar_marco",
410
+ description: "Adiciona um marco (etapa) a um objetivo existente, identificado pelo " +
411
+ "nome aproximado. O progresso do objetivo é recalculado.",
412
+ schema: adicionarMarcoSchema,
413
+ inputSchema: {
414
+ type: "object",
415
+ properties: {
416
+ goal: { type: "string", description: "Nome do objetivo (aproximado)." },
417
+ title: { type: "string", description: "Título do marco." },
418
+ },
419
+ required: ["goal", "title"],
420
+ additionalProperties: false,
421
+ },
422
+ handler: async (call, args) => {
423
+ const res = await call("POST", "/goals/milestones", clean(args));
424
+ return textFrom(res, `Marco "${args.title}" adicionado.`);
425
+ },
426
+ }),
427
+ defineTool({
428
+ name: "consultar_objetivos",
429
+ description: "Lista os objetivos com horizonte, status e progresso. Aceita filtro " +
430
+ "por horizonte e status (opcionais).",
431
+ schema: consultarObjetivosSchema,
432
+ inputSchema: {
433
+ type: "object",
434
+ properties: {
435
+ horizon: {
436
+ type: "string",
437
+ enum: ["short", "medium", "long"],
438
+ description: "Filtrar por horizonte. Opcional.",
439
+ },
440
+ status: {
441
+ type: "string",
442
+ enum: ["active", "done", "paused", "cancelled"],
443
+ description: "Filtrar por status. Opcional.",
444
+ },
445
+ },
446
+ additionalProperties: false,
447
+ },
448
+ handler: async (call, args) => {
449
+ const res = await call("GET", `/goals${qs({ horizon: args.horizon, status: args.status })}`);
450
+ const goals = res?.goals ?? [];
451
+ if (goals.length === 0)
452
+ return "Nenhum objetivo encontrado.";
453
+ const lines = goals.map((g) => {
454
+ const date = g.target_date ? ` — até ${g.target_date}` : "";
455
+ return `• ${g.title} [${g.horizon}] ${g.progress}% (${g.status})${date}`;
456
+ });
457
+ return lines.join("\n");
458
+ },
459
+ }),
375
460
  defineTool({
376
461
  name: "add_nota",
377
462
  description: "Adiciona uma nota/registro de diário (journal, gratidão ou reflexão) no ZeroSync.",
@@ -405,5 +490,93 @@ export const tools = [
405
490
  return textFrom(res, "Nota adicionada.");
406
491
  },
407
492
  }),
493
+ defineTool({
494
+ name: "anotar_tarefa",
495
+ description: "Anota um afazer no backlog do ZeroSync (lista de tarefas a fazer), SEM " +
496
+ "horário. Use para insights e pendências; aceita prazo, prioridade (1-4), " +
497
+ "área e esforço estimado. Para agendar algo com hora marcada, use criar_tarefa.",
498
+ schema: anotarTarefaSchema,
499
+ inputSchema: {
500
+ type: "object",
501
+ properties: {
502
+ title: { type: "string", description: "O que precisa ser feito." },
503
+ due_date: {
504
+ type: "string",
505
+ description: "Prazo AAAA-MM-DD. Opcional (pode não ter data).",
506
+ },
507
+ priority: {
508
+ type: "integer",
509
+ description: "1=urgente, 2=alta, 3=média, 4=nenhuma. Default 4.",
510
+ },
511
+ area: {
512
+ type: "string",
513
+ description: "Área: Trabalho, Pessoal, Saúde, Estudo, Descanso ou Rotina. Opcional.",
514
+ },
515
+ estimated_minutes: {
516
+ type: "integer",
517
+ description: "Esforço estimado em minutos. Opcional.",
518
+ },
519
+ goal: {
520
+ type: "string",
521
+ description: "Objetivo relacionado (nome aproximado). Opcional.",
522
+ },
523
+ description: { type: "string", description: "Detalhes. Opcional." },
524
+ },
525
+ required: ["title"],
526
+ additionalProperties: false,
527
+ },
528
+ handler: async (call, args) => {
529
+ const res = await call("POST", "/todos", clean(args));
530
+ return textFrom(res, `Tarefa "${args.title}" anotada.`);
531
+ },
532
+ }),
533
+ defineTool({
534
+ name: "listar_tarefas",
535
+ description: "Lista os afazeres pendentes do backlog do ZeroSync, agrupados por " +
536
+ "Atrasadas/Hoje/Próximas/Sem data.",
537
+ schema: listarTarefasSchema,
538
+ inputSchema: {
539
+ type: "object",
540
+ properties: {
541
+ status: {
542
+ type: "string",
543
+ enum: ["open", "done", "archived", "all"],
544
+ description: "Filtra por status. Default: open (pendentes).",
545
+ },
546
+ priority: {
547
+ type: "integer",
548
+ description: "Filtra por prioridade 1–4. Opcional.",
549
+ },
550
+ },
551
+ additionalProperties: false,
552
+ },
553
+ handler: async (call, args) => {
554
+ const res = await call("GET", `/todos${qs({
555
+ status: args.status,
556
+ priority: args.priority !== undefined ? String(args.priority) : undefined,
557
+ })}`);
558
+ return textFrom(res, "Nenhuma tarefa pendente.");
559
+ },
560
+ }),
561
+ defineTool({
562
+ name: "concluir_tarefa",
563
+ description: "Marca um afazer do backlog do ZeroSync como concluído (por título aproximado).",
564
+ schema: concluirTarefaSchema,
565
+ inputSchema: {
566
+ type: "object",
567
+ properties: {
568
+ title: {
569
+ type: "string",
570
+ description: "Título do afazer a concluir (aproximado; será resolvido).",
571
+ },
572
+ },
573
+ required: ["title"],
574
+ additionalProperties: false,
575
+ },
576
+ handler: async (call, args) => {
577
+ const res = await call("POST", "/todos/complete", clean(args));
578
+ return textFrom(res, `Tarefa "${args.title}" concluída.`);
579
+ },
580
+ }),
408
581
  ];
409
582
  //# sourceMappingURL=tools.js.map
package/dist/tools.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAwBxB,4EAA4E;AAC5E,MAAM,GAAG,GAAG,CAAC;KACV,MAAM,EAAE;KACR,KAAK,CAAC,qBAAqB,EAAE,sCAAsC,CAAC,CAAC;AACxE,MAAM,IAAI,GAAG,CAAC;KACX,MAAM,EAAE;KACR,KAAK,CAAC,eAAe,EAAE,iCAAiC,CAAC,CAAC;AAC7D,MAAM,EAAE,GAAG,CAAC;KACT,MAAM,EAAE;KACR,KAAK,CAAC,eAAe,EAAE,kCAAkC,CAAC,CAAC;AAE9D,8EAA8E;AAC9E,SAAS,UAAU,CAAsB,IAMxC;IACC,OAAO;QACL,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE;YACvB,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;YAC1C,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpB,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM;qBAC5B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,QAAQ,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC;qBAC3D,IAAI,CAAC,IAAI,CAAC,CAAC;gBACd,MAAM,IAAI,KAAK,CAAC,0BAA0B,GAAG,EAAE,CAAC,CAAC;YACnD,CAAC;YACD,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;QACzC,CAAC;KACF,CAAC;AACJ,CAAC;AAED,iEAAiE;AACjE,SAAS,KAAK,CAAoC,GAAM;IACtD,MAAM,GAAG,GAA4B,EAAE,CAAC;IACxC,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACzC,IAAI,CAAC,KAAK,SAAS;YAAE,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAClC,CAAC;IACD,OAAO,GAAiB,CAAC;AAC3B,CAAC;AAED,yDAAyD;AACzD,SAAS,EAAE,CAAC,MAA0C;IACpD,MAAM,EAAE,GAAG,IAAI,eAAe,EAAE,CAAC;IACjC,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAC5C,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,EAAE;YAAE,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAChD,CAAC;IACD,MAAM,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC;IACxB,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAC1B,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,QAAQ,CAAC,GAAY,EAAE,QAAQ,GAAG,qBAAqB;IAC9D,IAAI,GAAG,IAAI,IAAI;QAAE,OAAO,QAAQ,CAAC;IACjC,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,GAAG,CAAC;IACxC,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC5B,MAAM,CAAC,GAAG,GAA8B,CAAC;QACzC,KAAK,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC;YAC3D,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;YACjB,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,EAAE;gBAAE,OAAO,CAAC,CAAC;QAClD,CAAC;IACH,CAAC;IACD,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IACtC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,QAAQ,CAAC;IAClB,CAAC;AACH,CAAC;AAED,4EAA4E;AAC5E,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACjC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,qBAAqB,CAAC;IAC/C,IAAI,EAAE,GAAG,CAAC,QAAQ,EAAE;IACpB,UAAU,EAAE,IAAI,CAAC,QAAQ,EAAE;IAC3B,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACxD,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAClC,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAChC,CAAC,CAAC;AAEH,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IAClC,IAAI,EAAE,GAAG,CAAC,QAAQ,EAAE;CACrB,CAAC,CAAC;AAEH,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/B,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;IAC/D,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,wBAAwB,CAAC;IACxD,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC9B,IAAI,EAAE,GAAG,CAAC,QAAQ,EAAE;CACrB,CAAC,CAAC;AAEH,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IACtC,KAAK,EAAE,EAAE,CAAC,QAAQ,EAAE;CACrB,CAAC,CAAC;AAEH,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IAClC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,6BAA6B,CAAC;IAC5D,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC1C,IAAI,EAAE,GAAG,CAAC,QAAQ,EAAE;CACrB,CAAC,CAAC;AAEH,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,IAAI,EAAE,GAAG,CAAC,QAAQ,EAAE;CACrB,CAAC,CAAC;AAEH,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/B,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,qBAAqB,CAAC;IAC/C,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE;IACvD,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAChD,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE;IACpD,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC7B,CAAC,CAAC;AAEH,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,qBAAqB,CAAC;IAC/C,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAClC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE;IACvD,WAAW,EAAE,GAAG,CAAC,QAAQ,EAAE;IAC3B,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;CAClD,CAAC,CAAC;AAEH,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IACpC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,uBAAuB,CAAC;IAChD,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,8BAA8B,CAAC;CACzD,CAAC,CAAC;AAEH,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE;IACvD,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC,QAAQ,EAAE;CACrE,CAAC,CAAC;AAEH,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7B,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,uBAAuB,CAAC;IACnD,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC5B,IAAI,EAAE,GAAG,CAAC,QAAQ,EAAE;IACpB,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC,QAAQ,EAAE;IAC5D,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IAC/C,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;CACrC,CAAC,CAAC;AAEH,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IAClC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,qBAAqB,CAAC;IAC/C,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE;IACxB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACnD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC3B,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACzD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC3B,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACnC,CAAC,CAAC;AAEH,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC,QAAQ,EAAE;IAC9D,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;CACpD,CAAC,CAAC;AAEH,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IACpC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,qBAAqB,CAAC;CAChD,CAAC,CAAC;AAEH,0EAA0E;AAC1E,MAAM,CAAC,MAAM,KAAK,GAAc;IAC9B,UAAU,CAAC;QACT,IAAI,EAAE,cAAc;QACpB,WAAW,EACT,yEAAyE;YACzE,yEAAyE;YACzE,8DAA8D;QAChE,MAAM,EAAE,iBAAiB;QACzB,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,mBAAmB,EAAE;gBAC3D,IAAI,EAAE;oBACJ,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,4CAA4C;iBAC1D;gBACD,UAAU,EAAE;oBACV,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,uCAAuC;iBACrD;gBACD,gBAAgB,EAAE;oBAChB,IAAI,EAAE,SAAS;oBACf,WAAW,EAAE,kCAAkC;iBAChD;gBACD,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,qBAAqB,EAAE;gBACnE,QAAQ,EAAE;oBACR,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,iDAAiD;iBAC/D;aACF;YACD,QAAQ,EAAE,CAAC,OAAO,CAAC;YACnB,oBAAoB,EAAE,KAAK;SAC5B;QACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;YAC5B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;YACtD,OAAO,QAAQ,CAAC,GAAG,EAAE,WAAW,IAAI,CAAC,KAAK,WAAW,CAAC,CAAC;QACzD,CAAC;KACF,CAAC;IAEF,UAAU,CAAC;QACT,IAAI,EAAE,eAAe;QACrB,WAAW,EACT,0EAA0E;QAC5E,MAAM,EAAE,kBAAkB;QAC1B,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,IAAI,EAAE;oBACJ,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,iCAAiC;iBAC/C;aACF;YACD,oBAAoB,EAAE,KAAK;SAC5B;QACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;YAC5B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,KAAK,EAAE,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;YAClE,OAAO,QAAQ,CAAC,GAAG,EAAE,4BAA4B,CAAC,CAAC;QACrD,CAAC;KACF,CAAC;IAEF,UAAU,CAAC;QACT,IAAI,EAAE,gBAAgB;QACtB,WAAW,EACT,iEAAiE;QACnE,MAAM,EAAE,eAAe;QACvB,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,8BAA8B,EAAE;gBACvE,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,uBAAuB,EAAE;gBACrE,QAAQ,EAAE;oBACR,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,yCAAyC;iBACvD;gBACD,OAAO,EAAE;oBACP,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,+CAA+C;iBAC7D;gBACD,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,iCAAiC,EAAE;aACzE;YACD,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC;YACnC,oBAAoB,EAAE,KAAK;SAC5B;QACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;YAC5B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,EAAE,eAAe,EAAE;gBAC9C,IAAI,EAAE,SAAS;gBACf,GAAG,KAAK,CAAC,IAAI,CAAC;aACf,CAAC,CAAC;YACH,OAAO,QAAQ,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC;QAC3C,CAAC;KACF,CAAC;IAEF,UAAU,CAAC;QACT,IAAI,EAAE,gBAAgB;QACtB,WAAW,EACT,mEAAmE;QACrE,MAAM,EAAE,eAAe;QACvB,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,8BAA8B,EAAE;gBACvE,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,uBAAuB,EAAE;gBACrE,QAAQ,EAAE;oBACR,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,yCAAyC;iBACvD;gBACD,OAAO,EAAE;oBACP,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,gDAAgD;iBAC9D;gBACD,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,iCAAiC,EAAE;aACzE;YACD,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC;YACnC,oBAAoB,EAAE,KAAK;SAC5B;QACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;YAC5B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,EAAE,eAAe,EAAE;gBAC9C,IAAI,EAAE,QAAQ;gBACd,GAAG,KAAK,CAAC,IAAI,CAAC;aACf,CAAC,CAAC;YACH,OAAO,QAAQ,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC;QAC3C,CAAC;KACF,CAAC;IAEF,UAAU,CAAC;QACT,IAAI,EAAE,mBAAmB;QACzB,WAAW,EACT,yEAAyE;QAC3E,MAAM,EAAE,sBAAsB;QAC9B,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,KAAK,EAAE;oBACL,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,kCAAkC;iBAChD;aACF;YACD,oBAAoB,EAAE,KAAK;SAC5B;QACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;YAC5B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,KAAK,EAAE,mBAAmB,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;YAC9E,OAAO,QAAQ,CAAC,GAAG,EAAE,uCAAuC,CAAC,CAAC;QAChE,CAAC;KACF,CAAC;IAEF,UAAU,CAAC;QACT,IAAI,EAAE,eAAe;QACrB,WAAW,EACT,yEAAyE;QAC3E,MAAM,EAAE,kBAAkB;QAC1B,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,UAAU,EAAE;oBACV,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,8CAA8C;iBAC5D;gBACD,QAAQ,EAAE;oBACR,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,gDAAgD;iBAC9D;gBACD,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,iCAAiC,EAAE;aACzE;YACD,QAAQ,EAAE,CAAC,YAAY,CAAC;YACxB,oBAAoB,EAAE,KAAK;SAC5B;QACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;YAC5B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,EAAE,aAAa,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;YAC3D,OAAO,QAAQ,CAAC,GAAG,EAAE,WAAW,IAAI,CAAC,UAAU,YAAY,CAAC,CAAC;QAC/D,CAAC;KACF,CAAC;IAEF,UAAU,CAAC;QACT,IAAI,EAAE,gBAAgB;QACtB,WAAW,EACT,iEAAiE;QACnE,MAAM,EAAE,mBAAmB;QAC3B,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,IAAI,EAAE;oBACJ,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,sDAAsD;iBACpE;aACF;YACD,oBAAoB,EAAE,KAAK;SAC5B;QACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;YAC5B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,KAAK,EAAE,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;YACnE,OAAO,QAAQ,CAAC,GAAG,EAAE,2BAA2B,CAAC,CAAC;QACpD,CAAC;KACF,CAAC;IAEF,UAAU,CAAC;QACT,IAAI,EAAE,YAAY;QAClB,WAAW,EACT,mFAAmF;QACrF,MAAM,EAAE,eAAe;QACvB,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,gBAAgB,EAAE;gBACxD,OAAO,EAAE;oBACP,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC;oBACjC,WAAW,EAAE,yDAAyD;iBACvE;gBACD,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,uBAAuB,EAAE;gBACnE,eAAe,EAAE;oBACf,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,2BAA2B;iBACzC;gBACD,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,sBAAsB,EAAE;gBACjE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,wBAAwB,EAAE;aACjE;YACD,QAAQ,EAAE,CAAC,OAAO,CAAC;YACnB,oBAAoB,EAAE,KAAK;SAC5B;QACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;YAC5B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;YACzD,OAAO,QAAQ,CAAC,GAAG,EAAE,WAAW,IAAI,CAAC,KAAK,uBAAuB,CAAC,CAAC;QACrE,CAAC;KACF,CAAC;IAEF,UAAU,CAAC;QACT,IAAI,EAAE,gBAAgB;QACtB,WAAW,EACT,uEAAuE;YACvE,sBAAsB;QACxB,MAAM,EAAE,mBAAmB;QAC3B,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,qBAAqB,EAAE;gBAC7D,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,sBAAsB,EAAE;gBACpE,OAAO,EAAE;oBACP,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC;oBACjC,WAAW,EAAE,6BAA6B;iBAC3C;gBACD,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,iCAAiC;iBAC/C;gBACD,UAAU,EAAE;oBACV,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACzB,WAAW,EAAE,sCAAsC;iBACpD;aACF;YACD,QAAQ,EAAE,CAAC,OAAO,CAAC;YACnB,oBAAoB,EAAE,KAAK;SAC5B;QACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;YAC5B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;YACtD,OAAO,QAAQ,CAAC,GAAG,EAAE,aAAa,IAAI,CAAC,KAAK,WAAW,CAAC,CAAC;QAC3D,CAAC;KACF,CAAC;IAEF,UAAU,CAAC;QACT,IAAI,EAAE,iBAAiB;QACvB,WAAW,EACT,uEAAuE;YACvE,yDAAyD;QAC3D,MAAM,EAAE,oBAAoB;QAC5B,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,gCAAgC,EAAE;gBACvE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,kBAAkB,EAAE;aAC3D;YACD,QAAQ,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC;YAC3B,oBAAoB,EAAE,KAAK;SAC5B;QACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;YAC5B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,EAAE,mBAAmB,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;YACjE,OAAO,QAAQ,CAAC,GAAG,EAAE,UAAU,IAAI,CAAC,KAAK,eAAe,CAAC,CAAC;QAC5D,CAAC;KACF,CAAC;IAEF,UAAU,CAAC;QACT,IAAI,EAAE,qBAAqB;QAC3B,WAAW,EACT,sEAAsE;YACtE,qCAAqC;QACvC,MAAM,EAAE,wBAAwB;QAChC,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,OAAO,EAAE;oBACP,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC;oBACjC,WAAW,EAAE,kCAAkC;iBAChD;gBACD,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,CAAC;oBAC/C,WAAW,EAAE,+BAA+B;iBAC7C;aACF;YACD,oBAAoB,EAAE,KAAK;SAC5B;QACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;YAC5B,MAAM,GAAG,GAAG,MAAM,IAAI,CACpB,KAAK,EACL,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,CAC9D,CAAC;YACF,MAAM,KAAK,GAAG,GAAG,EAAE,KAAK,IAAI,EAAE,CAAC;YAC/B,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,6BAA6B,CAAC;YAC7D,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;gBAC5B,MAAM,IAAI,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC5D,OAAO,KAAK,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,OAAO,KAAK,CAAC,CAAC,QAAQ,MAAM,CAAC,CAAC,MAAM,IAAI,IAAI,EAAE,CAAC;YAC3E,CAAC,CAAC,CAAC;YACH,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1B,CAAC;KACF,CAAC;IAEF,UAAU,CAAC;QACT,IAAI,EAAE,UAAU;QAChB,WAAW,EACT,mFAAmF;QACrF,MAAM,EAAE,aAAa;QACrB,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,mBAAmB,EAAE;gBAC7D,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,mBAAmB,EAAE;gBAC3D,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,iCAAiC,EAAE;gBACxE,IAAI,EAAE;oBACJ,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,SAAS,EAAE,UAAU,EAAE,UAAU,CAAC;oBACzC,WAAW,EAAE,iCAAiC;iBAC/C;gBACD,IAAI,EAAE;oBACJ,IAAI,EAAE,SAAS;oBACf,WAAW,EAAE,2BAA2B;iBACzC;gBACD,IAAI,EAAE;oBACJ,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACzB,WAAW,EAAE,iBAAiB;iBAC/B;aACF;YACD,QAAQ,EAAE,CAAC,SAAS,CAAC;YACrB,oBAAoB,EAAE,KAAK;SAC5B;QACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;YAC5B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;YACtD,OAAO,QAAQ,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC;QAC3C,CAAC;KACF,CAAC;IAEF,UAAU,CAAC;QACT,IAAI,EAAE,eAAe;QACrB,WAAW,EACT,yEAAyE;YACzE,2EAA2E;YAC3E,gFAAgF;QAClF,MAAM,EAAE,kBAAkB;QAC1B,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,0BAA0B,EAAE;gBAClE,QAAQ,EAAE;oBACR,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,iDAAiD;iBAC/D;gBACD,QAAQ,EAAE;oBACR,IAAI,EAAE,SAAS;oBACf,WAAW,EAAE,mDAAmD;iBACjE;gBACD,IAAI,EAAE;oBACJ,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,uEAAuE;iBAC1E;gBACD,iBAAiB,EAAE;oBACjB,IAAI,EAAE,SAAS;oBACf,WAAW,EAAE,wCAAwC;iBACtD;gBACD,IAAI,EAAE;oBACJ,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,mDAAmD;iBACjE;gBACD,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,qBAAqB,EAAE;aACpE;YACD,QAAQ,EAAE,CAAC,OAAO,CAAC;YACnB,oBAAoB,EAAE,KAAK;SAC5B;QACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;YAC5B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;YACtD,OAAO,QAAQ,CAAC,GAAG,EAAE,WAAW,IAAI,CAAC,KAAK,YAAY,CAAC,CAAC;QAC1D,CAAC;KACF,CAAC;IAEF,UAAU,CAAC;QACT,IAAI,EAAE,gBAAgB;QACtB,WAAW,EACT,oEAAoE;YACpE,mCAAmC;QACrC,MAAM,EAAE,mBAAmB;QAC3B,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,CAAC;oBACzC,WAAW,EAAE,+CAA+C;iBAC7D;gBACD,QAAQ,EAAE;oBACR,IAAI,EAAE,SAAS;oBACf,WAAW,EAAE,sCAAsC;iBACpD;aACF;YACD,oBAAoB,EAAE,KAAK;SAC5B;QACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;YAC5B,MAAM,GAAG,GAAG,MAAM,IAAI,CACpB,KAAK,EACL,SAAS,EAAE,CAAC;gBACV,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,QAAQ,EACN,IAAI,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS;aAClE,CAAC,EAAE,CACL,CAAC;YACF,OAAO,QAAQ,CAAC,GAAG,EAAE,0BAA0B,CAAC,CAAC;QACnD,CAAC;KACF,CAAC;IAEF,UAAU,CAAC;QACT,IAAI,EAAE,iBAAiB;QACvB,WAAW,EACT,gFAAgF;QAClF,MAAM,EAAE,oBAAoB;QAC5B,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,KAAK,EAAE;oBACL,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,2DAA2D;iBACzE;aACF;YACD,QAAQ,EAAE,CAAC,OAAO,CAAC;YACnB,oBAAoB,EAAE,KAAK;SAC5B;QACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;YAC5B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,EAAE,iBAAiB,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;YAC/D,OAAO,QAAQ,CAAC,GAAG,EAAE,WAAW,IAAI,CAAC,KAAK,cAAc,CAAC,CAAC;QAC5D,CAAC;KACF,CAAC;CACH,CAAC"}
package/package.json CHANGED
@@ -1,48 +1,48 @@
1
- {
2
- "name": "zerosync-mcp",
3
- "version": "0.1.0",
4
- "description": "MCP server (stdio) que expõe as ações do ZeroSync via API REST v1. Autentica com um Personal Access Token (PAT).",
5
- "license": "MIT",
6
- "type": "module",
7
- "keywords": [
8
- "mcp",
9
- "model-context-protocol",
10
- "zerosync",
11
- "agenda",
12
- "finance",
13
- "habits",
14
- "assistant"
15
- ],
16
- "homepage": "https://app.zerosync.com.br/docs",
17
- "repository": {
18
- "type": "git",
19
- "url": "git+https://github.com/pablosantosia/ZeroSync.git",
20
- "directory": "packages/zerosync-mcp"
21
- },
22
- "bin": {
23
- "zerosync-mcp": "dist/index.js"
24
- },
25
- "files": [
26
- "dist",
27
- "README.md"
28
- ],
29
- "engines": {
30
- "node": ">=18"
31
- },
32
- "scripts": {
33
- "build": "tsc",
34
- "start": "node dist/index.js",
35
- "dev": "tsx src/index.ts",
36
- "typecheck": "tsc --noEmit",
37
- "prepublishOnly": "npm run build"
38
- },
39
- "dependencies": {
40
- "@modelcontextprotocol/sdk": "^1.0.0",
41
- "zod": "^3.24.1"
42
- },
43
- "devDependencies": {
44
- "@types/node": "^22.10.0",
45
- "tsx": "^4.19.0",
46
- "typescript": "^5.7.3"
47
- }
48
- }
1
+ {
2
+ "name": "zerosync-mcp",
3
+ "version": "0.3.0",
4
+ "description": "MCP server (stdio) que expõe as ações do ZeroSync via API REST v1. Autentica com um Personal Access Token (PAT).",
5
+ "license": "MIT",
6
+ "type": "module",
7
+ "keywords": [
8
+ "mcp",
9
+ "model-context-protocol",
10
+ "zerosync",
11
+ "agenda",
12
+ "finance",
13
+ "habits",
14
+ "assistant"
15
+ ],
16
+ "homepage": "https://app.zerosync.com.br/docs",
17
+ "repository": {
18
+ "type": "git",
19
+ "url": "git+https://github.com/pablosantosia/ZeroSync.git",
20
+ "directory": "packages/zerosync-mcp"
21
+ },
22
+ "bin": {
23
+ "zerosync-mcp": "dist/index.js"
24
+ },
25
+ "files": [
26
+ "dist",
27
+ "README.md"
28
+ ],
29
+ "engines": {
30
+ "node": ">=18"
31
+ },
32
+ "scripts": {
33
+ "build": "tsc",
34
+ "start": "node dist/index.js",
35
+ "dev": "tsx src/index.ts",
36
+ "typecheck": "tsc --noEmit",
37
+ "prepublishOnly": "npm run build"
38
+ },
39
+ "dependencies": {
40
+ "@modelcontextprotocol/sdk": "^1.0.0",
41
+ "zod": "^3.24.1"
42
+ },
43
+ "devDependencies": {
44
+ "@types/node": "^22.10.0",
45
+ "tsx": "^4.19.0",
46
+ "typescript": "^5.7.3"
47
+ }
48
+ }