MAKITTDocs

Static Policy Page

docs/hcs-asset/static-policy-page.md


id: 'static-policy-page' status: completed

Static Policy Page

Reference

React Component

  • Path: apps/makitt-standard-commerce/src/components/assets/static-policy-page/
  • Status: implemented
  • 반응형: 720px max-width article, 모바일 패딩/폰트 축소
  • Props: slug (직접 지정), pageKind (terms/privacy/refund-policy), shopIdOverride

HCS JSON Asset

  • Path: apps/builder/data/hcs-asset/static-policy-page.json
  • Status: implemented
  • Resource 바인딩:
    • staticPage.bySlug - slug로 정적 페이지 단건 조회
  • 핵심 바인딩:
    • page.title → heading
    • page.publishedAt → 최종 수정일 (date filter)
    • page.contentUrlblog-content renderer

Prerequisites

makitt-server (shop-api)

APIMethodEndpointStatus
정적 페이지 slug 조회GET/shop/{shopId}/pages/{slug}available
정적 페이지 목록GET/shop/{shopId}/pagesavailable
본문 로드GETpage.contentUrl (S3 presigned URL)available

makitt-server (admin-api)

APIMethodEndpointStatus
정적 페이지 CRUDGET/POST/PUT/DELETE/api/v1/shops/{shopId}/pages/*available
정적 페이지 발행PATCH/api/v1/shops/{shopId}/pages/{pageId}/publishavailable
정책 초기화POST/api/v1/shops/{shopId}/pages/policies/{marketCode}/initializeavailable

makitt-server (도메인/모델링)

항목내용Status
StaticPage Entitytitle, slug, type, contentS3Key, seo 포함available
StaticPageStatusDRAFT, PUBLISHED, ARCHIVEDavailable
S3 Content Storagedraft/published presigned URLavailable
PolicyTemplateService마켓별 정책 초기화available

makitt-web (셀러 어드민 UI)

기능설명Status
정적 페이지 관리목록/생성/편집/삭제available
Rich text 에디터Lexical 기반 본문 편집available

makitt-shop (HCS 렌더링)

항목설명Status
staticPage.bySlug resourceslug 기반 단건 fetch + schemaavailable
blog-content renderercontentUrl → Lexical JSON 렌더링available

HCS Conversion Notes

  • announcement-detail과 동일한 패턴 (resource → contentUrl → blog-content renderer)
  • 정책 페이지는 네비게이션(뒤로가기) 없이 독립적 콘텐츠 페이지로 동작
  • url.params.slug로 slug를 받아 동적 라우팅 지원
  • 페이지 라우트 예: /terms → slug=terms-of-service, /privacy → slug=privacy-policy