2026/02/18
Think-AI 企業向けの機能強化

最近2B向けに次の機能を開発、強化しました。

  • グループ Gallery機能
    Group毎の記事だけではなく、アップロードした資料のGalleryを分けて、グループ内のみ見える。
    資料は記事と同様なタグ分類して、ページ表示できる
  • グループページ機能
    Group毎のページを作成し、表示できる。グループメンバーのみ閲覧できる
  • グループメニュー機能
    Super編集者がGroupのメニューが作成できる、自分のグループ表示したいページを設定できる
  • セキュリティ
    セキュリティ許可は、主にアップロードファイルのダウンロードと共有に制限(一部実施)
  • ユーザGallery機能
    ユーザ事のGalleryも分けて管理する。
  • 編集者にページ作成権限を付与する(作成者ではない)

Frontend Functional Report (Last 2 Weeks)

Date: 2026-02-18
Range: 2026-02-04 to 2026-02-18
Project: 01-jibunsee-react

1) Panel / Pages Management

Functional Changes

  • Extended panel dashboard for page-builder pages:
    • creator-owned pages listing in panel
    • group context pages list
    • page/post toggle in group panel with tab-state restore (tab=pages)
  • Added page count badge in panel sidebar from session count.
  • Added page actions parity in panel list flows:
    • preview/edit/copy/delete/meta-edit patterns aligned with page list UX.
  • Mobile panel UX refined for page controls and filters.

API Caller Spec

  • Session bootstrap:
    • GET /ghost/api/admin/users/me/?include=count.follow,roles,count.followed,count.posts,count.groups,count.pages,...
  • Page list/read/edit via host API:
    • GET /api/pages/<id>?group_id=<groupId?>
    • GET /api/pages-public
    • GET /api/pages-public/<id>
  • Tag data for page metadata/filter:
    • GET /api/tags

2) Public Pages (pages-public) Refinement

Functional Changes

  • Public list and public view rewritten for no-auth browsing.
  • Metadata displayed in list:
    • status, creator, published_at, group (if any), tag, category
  • Added list filters:
    • tag filter
    • public group filter
  • Tag chips now navigate with URL query params for filtering.

API Caller Spec

  • Public list:
    • GET /api/pages-public?tag=<slug>&group_id=<id>&...
  • Public view:
    • GET /api/pages-public/<pageId>?group_id=<id?>

Functional Changes

  • Introduced reusable gallery card components and gallery page.
  • User/group gallery display, type filtering, tag chips, copy/open actions.
  • Media card behavior updates:
    • image/video/audio/file cards
    • duration display for video/audio
    • file extension/type display
  • Responsive and page-builder-resizable CSS adjustments.
  • Added gallery picker integration in editor flow.

API Caller Spec

  • User gallery fetch:
    • GET /ghost/api/admin/social/gallery/user?type=<...>&limit=...
  • Group gallery fetch:
    • GET /ghost/api/admin/social/gallery/group/?group_id=<id>&type=<...>&limit=...

Functional Changes

  • Added gallery-tag sync trigger in publish/tag-change flows.
  • Prevented sync on autosave to reduce backend load.
  • Scheduled publish path also triggers sync.
  • Added comments in code around sync timing/guard behavior.

API Caller Spec

  • Sync call from editor/panel publish actions:
    • POST /ghost/api/admin/social/gallery/sync-tags
    • body: post_id, mode, optional urls.

5) Site Menu / Group Event Menu / Account Menu

Functional Changes

  • Added group event panel in settings, backed by group optional settings.
  • Site event menu + group event menu item types expanded:
    • custom URL
    • public page type
    • group/page/tag related options
  • Account menu/login redirect settings expanded with page/group options.
  • Save-result inline feedback added for settings cards (success/error/info).
  • Fixed related infinite loops in settings/panel effects.

API Caller Spec

  • Settings:
    • GET /api/settings
    • PUT /ghost/api/admin/settings/ (via ghostApi wrapper)
  • Group menu persistence:
    • PUT /ghost/api/admin/social/groups/:id with optional_settings.

6) Role Management UX

Functional Changes

  • Added role management visibility in panel user tab (admin-facing flow).
  • Role dropdown normalized order:
    • Author → Editor → Super Editor → Administrator
  • Profile dialog now shows current role text for self.

API Caller Spec

  • User list:
    • GET /ghost/api/admin/users/?limit=all&include=roles
  • User role/profile update:
    • PUT /ghost/api/admin/users/:id/?include=roles

7) Home Page Media UX

Functional Changes

  • Desktop home filter aligned to media type:
    • all, image, video, audio, file
  • Card rendering changed:
    • text-only posts show text/HTML card (no placeholder logo image)
    • same behavior applied on mobile cards.

API Caller Spec

  • Host post feed:
    • POST /api/posts with paging/order/filter payload.

8) Article Share / Internal Forward (MVP)

Functional Changes

  • Replaced direct share button with share dialog:
    • External Share tab:
      • Web Share API
      • copy link
      • X/Facebook/LINE/WeChat/WhatsApp/Email actions
    • Share to Users tab:
      • user picker + multi-send internal forward
  • Mobile share actions adjusted to compact small text-button layout.

API Caller Spec

  • Internal user lookup:
    • GET /ghost/api/admin/users/?limit=all
  • Internal forward send:
    • POST /ghost/api/admin/social/forwards/
    • body:
      {
        "socialforwards": [
          {
            "post_id": "<postId>",
            "sender_id": "<senderUserId>",
            "receiver_id": "<receiverUserId>"
          }
        ]
      }
      

9) Comments UI Package Runtime Fixes

Functional Changes

  • Fixed React runtime warnings originating from packages/comments-ui:
    • removed invalid global prop leakage from <style>
    • removed invalid innerRef prop leakage to native <iframe>
  • Rebuilt comments package dist after source patch so host consumes fixes.

Caller/Build Spec

  • Package build command:
    • yarn --cwd packages/comments-ui build
  • Host consumes package:
    • import @tryghost/comments-ui in apps/host/src/components/CommentArea.jsx.

10) Stability / Build

Functional Changes

  • Multiple loop/guard fixes in ClientLayout and panel/settings effect dependencies.
  • Removed floating button from ClientLayout entirely.
  • Added mobile-web-app-capable metadata key to silence browser warning.

Verification Commands Used

  • yarn --cwd 01-jibunsee-react/apps/host build
  • yarn --cwd 01-jibunsee-react/apps/host tsc --noEmit
    (note: in some states, .next/types include can require prior build)