TMF

@tmf/projects-front (5.1.0)

Published 2026-07-17 17:54:12 -03:00 by tarcisio

Installation

@tmf:registry=
npm install @tmf/projects-front@5.1.0
"@tmf/projects-front": "5.1.0"

About this package

@tmf/projects-front

Módulo plug-and-play de Gestão de Projetos da plataforma TMF — o tracker de issues (board/backlog/sprints/workflow) mais as lentes de planejamento (planos, roadmap/Gantt, planejamento semanal, apontamento), como lib React instalável em Hub, TMF9, Dais, HelpCor e PriceShow.

Status: F0-F (EPIC PKG — TMFP-59804/59805). Shell de abas condicionadas por GET /meta + deep-link. As telas de domínio chegam nas fases F1–F11 (docs/modulos/projects/ROADMAP_EXTRACAO_PROJECTS.md).

Padrão A — instale 1 pacote e use

import { ProjectsApp } from '@tmf/projects-front'

<ProjectsApp
  baseUrl="" // raiz do host (Convenção A — ver docs/adr/ADR-002 e ADR-005)
  getToken={() => authToken}
  tenantId="tmf"
  can={(perm) => permissions.includes(perm)}
  locale="pt-BR"
  routing={{ basePath: '/projects' }}
/>

O <ProjectsApp> monta sozinho o ProjectsProvider (QueryClient + i18n internos, client derivado do HttpClient do @tmf/platform-core). O host não precisa montar AppContract nem QueryClientProvider.

Superfície pública (scaffold)

Export O que é
ProjectsApp Componente top-level (Padrão A).
ProjectsProvider / useProjectsContext Provider + hook de contexto.
createDefaultProjectsClient Fábrica do ProjectsApiClient a partir de baseUrl + getToken.
projectsQueryKeys / invalidateProjectsMeta Query keys canônicas.
getProjectsCatalog / PROJECTS_CATALOGS Catálogos i18n (projects.*).
ProjectsPlaceholder Estado vazio de uma aba do shell.
resolveVisibleTabs / resolveActiveTab / PROJECTS_TAB_DEFS Resolução pura das abas visíveis a partir de GET /meta.
useProjectsRouting Hook de deep-link ?tab=…&issue=<KEY> (History API, sem react-router).
PROJECTS_API_PREFIX Prefixo canônico do serviço (/api/projects, ADR-005).
tipos ProjectsApiClient / ProjectsMeta / ProjectsIntegrationsHealth / ProjectsTabKey / ProjectsRouting Contrato do módulo.

Empacotamento

  • Build com tsup (cjs + esm + dts). @tmf/platform-core é empacotado no dist (noExternal) — o consumidor instala só @tmf/projects-front.
  • react/react-dom são peerDependencies (singleton).
  • src/version.ts é auto-gerado pelo script prebuild a partir do package.json.

Desenvolvimento

npm ci                       # na raiz do monorepo
npm run build -w @tmf/platform-core
npm run build -w @tmf/projects-front
npm run lint  -w @tmf/projects-front
npm run test  -w @tmf/projects-front

Ver playground/ para um harness visual e INTEGRATION.md para o passo a passo de adoção no host.

Dependencies

Dependencies

ID Version
@dnd-kit/core ^6.0.0
@tanstack/react-query ^5.0.0
@tiptap/react ^2.11.5
@tiptap/starter-kit ^2.11.5
dompurify ^3.0.0
lucide-react ^0.400.0

Development dependencies

ID Version
@testing-library/jest-dom ^6.0.0
@testing-library/react ^16.0.0
@tmf/platform-core file:../../platform-core
@types/dompurify ^3.0.5
@types/react ^18.2.47
@types/react-dom ^18.2.18
jsdom ^25.0.0
tsup ^8.5.1
typescript ^5.3.3
vitest ^2.0.0

Peer dependencies

ID Version
react >=18.0.0
react-dom >=18.0.0

Keywords

tmf projects issues tracker roadmap react plug-and-play
Details
npm
2026-07-17 17:54:12 -03:00
1
Trade Marketing Force LTDA
UNLICENSED
360 KiB
Assets (1)
Versions (18) View all
6.7.0 2026-09-01
6.6.0 2026-08-20
6.5.1 2026-08-20
6.5.0 2026-08-07
6.4.0 2026-08-07