@pidrang/strapi: Strapi DataProvider

オープン
#11 コメント 0 件 リアクション 0 件 担当者 1 名 GitHub で見る

メンテナーはふだん 1 日以内に返信

@spefalex がすでに取り組んでいます。

2026年9月25日 から。

評価

この issue はまだ評価されていません。

説明

enhancement layer: library pkg: new

Context

Existing #11 only names Strapi. libs/core/src/lib/data-provider.ts:4 requires record-returning mutations and list-params.ts:13 requires total; Strapi-specific envelopes, pagination and identity need explicit translation.

Scope

  • Target a pinned, supported Strapi 5 fixture and document that major explicitly, verifying its documentId/REST response semantics against official docs during implementation.
  • Implement @pidrang/strapi using fetch and core only, with configurable URL/headers, collection mapping, pagination/filter/sort/populate mapping and documentId normalization.
  • Handle validation/auth/not-found/server failures and delete response shape through the agreed contract; provide explicit configuration where core expectations cannot be inferred.
  • Reuse #59 conformance scenarios and provide a seeded example consumer plus release metadata/install docs.

Out of scope

Strapi admin UI plugins, Strapi 4 compatibility, implementing all media/upload/publication workflows, dependency on @pidrang/rest.

Acceptance criteria

  • Pinned Strapi fixture passes CRUD, pagination totals, filters/sort and error scenarios.
  • documentId round-trips through list/routes/getOne/update/delete without assuming numeric id.
  • Unsupported semantics are documented and rejected explicitly.
  • Independent install and a provider-swapped demo pass compile/browser checks.

Notes for the dev

Depends on #59, #60 and #9 harness experience. Touch libs/strapi, test fixtures/docs and release config. Verify current official API while implementing; this audit does not assert live Strapi details.

Rules: no code comments, no any/$any; standalone components, signals and inject(). Core production imports only @angular/core and local core modules, never router/common/forms/UI. Other Pidrang libraries depend only on core, except @pidrang/cli-supabase which depends on @pidrang/cli as per the package graph in CLAUDE.md; apps compose adapters. Use conventional commits. For UI changes, validate with Playwright against pnpm exec nx serve demo-material and pnpm exec nx serve demo-tailwind; record tested paths and failures. Also validate generated UI in an external consumer fixture when affected.

Original description

ROADMAP.md Phase 7, later without core changes. Implements DataProvider against a Strapi backend. Depends on @pidrang/core only.

主要言語
TypeScript
スター
2
フォーク
2
平均マージ
9時間 17分
マージ済み PR(30日)
48

環境構築

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

pidrang/pidrang のほかの issue

pidrang/pidrang の issue をすべて見る

似ている issue

TypeScript の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。