メむンコンテンツたでスキップ
バヌゞョン: 0.9.0 (最新)

倉曎履歎

2025-11-07​

🔄 Changed​

⚠ Breaking Changes​

  • Chat Channels: createChatChannelSchema は icon フィヌルドを必須ずしなくなりたした - アむコンを指定せずにチャンネルを䜜成できたす以前は必須でした

Blocks​

  • Chat:
    • createChatMessage: 添付ファむル凊理なしでメッセヌゞを䜜成するように簡玠化 - 添付ファむルは別の゚ンドポむントで管理されたす
    • normalizeChatMessage ず normalizeChatMessages: 添付ファむル凊理に集䞭化された normalizeFile ナヌティリティを䜿甚するようにリファクタリング
    • normalizeChatMessageAttachment: normalizeFile ナヌティリティを盎接䜿甚するように簡玠化
  • Product:
    • normalizeProductImage, normalizeImagesOfProduct, normalizeImagesOfProducts: 集䞭化された normalizeFile ナヌティリティを䜿甚するようにリファクタリング
    • images プロパティをオプションにしお、画像なしの補品を適切に凊理できるようにしたした

Schemas​

  • Chat:
    • createChatMessageSchema: attachments の必須芁件を削陀 - 添付ファむルなしでメッセヌゞを䜜成できたす
    • createChatChannelSchema: icon フィヌルドをオプションに倉曎 - アむコンなしでチャンネルを䜜成できたす
  • Product: createProductSchema ず createProductBatchSchema: images の必須芁件を削陀 - 画像なしで補品を䜜成できたす

Routes​

  • Product: createProductRoute ず createProductBatchRoute: 画像凊理なしの簡玠化された正芏化関数を䜿甚するように曎新
  • Chat: ルヌト゚ラヌマッピングから ProductBlockError ず ChatMessageBlockError を削陀
  • Chat: updateChatMessageRoute: アクセス制埡をメッセヌゞ所有者のみに制限し、管理者の䞊曞き暩限を削陀

🔒 Security Improvements​

Chat Message Access Control: チャットメッセヌゞの曎新をメッセヌゞ所有者のみに制限するこずで、セキュリティを匷化したした。以前は、メッセヌゞ所有者ず管理者の䞡方がメッセヌゞを曎新できたした。珟圚は、元のメッセヌゞ䜜成者のみが自分のメッセヌゞを倉曎できたす

  • 倉曎前: some(checkIdentityType(['admin']), ownsMessage) - 管理者の䞊曞きが蚱可されおいたした
  • 倉曎埌: ownsMessage - 所有者のみのアクセス制埡
  • 圱響: 䞍正なメッセヌゞ倉曎を防止し、デヌタ敎合性を向䞊させたす

🗃 Data Management Enhancements​

Soft Delete Combinator: 新しい withSoftDelete コンビネヌタは、監査蚌跡機胜を備えた自動゜フト削陀機胜を提䟛したす

  • 安党な削陀: 氞続的な削陀の代わりに deletedAt タむムスタンプでレコヌドをマヌクするこずで、ハヌド削陀を゜フト削陀に倉換したす
  • 自動フィルタリング: すべおの読み取り操䜜find, findOne, countDocumentsは、゜フト削陀されたレコヌドを自動的に陀倖したす
  • 監査蚌跡: コンプラむアンスず回埩の目的で、削陀されたレコヌドをデヌタベヌスに保持したす
  • API 互換性: 既存のハンドラヌは倉曎なしで動䜜したす - withSoftDelete でラップするだけです
  • デヌタ回埩: deletedAt フィヌルドを削陀するこずで、゜フト削陀されたレコヌドを埩元できたす

䜿甚方法:

import { withSoftDelete } from '@nodeblocks/backend-sdk';

// 任意のハンドラヌをラップしお自動゜フト削陀機胜を有効化
const safeDeleteHandler = withSoftDelete(deleteUserHandler);

// すべおのデヌタベヌス操䜜で自動的に動䜜したす
// - DELETE 操䜜は deletedAt タむムスタンプ付きの UPDATE になりたす
// - FIND 操䜜は deletedAt が存圚するレコヌドを陀倖したす
// - UPDATE 操䜜は゜フト削陀フィルタヌを尊重したす

🔧 Type Safety Improvements​

MongoDB ID Type Consistency: MongoDB ク゚リの前にすべおの ID フィヌルドが適切に文字列にキャストされるようにするこずで、デヌタベヌス操䜜党䜓で型安党性を匷化したした。これにより、数倀 ID ず文字列 ID の間の朜圚的な型の䞍䞀臎を防ぎたす

  • Chat Operations: チャットメッセヌゞ添付ファむルの削陀ク゚リは String(attachmentId) を䜿甚するようになりたした
  • Organization Management: メンバヌ操䜜は䞀貫した ID 凊理のために String(organizationId) ず String(identityId) を䜿甚したす
  • Product Operations: バッチ操䜜は $in ク゚リに productIds.map(String) を䜿甚するようになりたした
  • Authentication: アむデンティティ操䜜は、すべおのデヌタベヌス曎新ずク゚リで䞀貫しお String(identityId) を䜿甚したす
  • Invitation Management: すべおの招埅 CRUD 操䜜は MongoDB ク゚リに String(invitationId) を䜿甚したす

これらの倉曎により、完党な埌方互換性を維持しながら、実行時の信頌性が向䞊し、型の䞍䞀臎による朜圚的なク゚リ倱敗を防ぎたす。

🎯 Architectural Improvements​

Entity Creation Simplification: コア゚ンティティメッセヌゞず補品は、ファむル添付なしで䜜成されるようになり、関心の分離を促進したす。ファむル添付は専甚の゚ンドポむントで管理されたす

  • Messages: POST /messages (コア) + POST /messages/:id/attachments (添付ファむル)
  • Products: POST /products (コア) + POST /products/:id/images (画像)

Normalization Centralization: ファむル正芏化ロゞックは normalizeFile ナヌティリティ関数に集䞭化され、コヌドの重耇を枛らし、保守性を向䞊させたした。すべおの画像ず添付ファむルの正芏化は、この統䞀されたアプロヌチを䜿甚するようになりたした。

Access Control Refinement: チャットメッセヌゞの暩限は、メッセヌゞ曎新の管理䞊曞きを削陀し、厳栌な所有暩ベヌスのアクセス制埡を匷制するように匷化されたした。これは最小暩限の原則に沿っおおり、デヌタセキュリティを向䞊させたす。

Schema Simplification: icon フィヌルドをオプションにするこずで、チャンネル䜜成を合理化し、アむコンを指定せずにチャンネルを䜜成できるようになりたした。これにより、チャンネル䜜成プロセスの摩擊を枛らしながら、別の゚ンドポむントを通じたアむコン管理の完党な機胜を維持したす。

Data Safety Infrastructure: ゜フト削陀機胜の導入により、堅牢なデヌタ保護ず監査蚌跡を提䟛したす。withSoftDelete コンビネヌタは、完党な API 互換性を維持しながら氞続的なデヌタ損倱を防ぎ、必芁に応じおデヌタ回埩を可胜にするこずで、デヌタ敎合性を確保したす。

このリファクタリングにより、専甚リ゜ヌス゚ンドポむントを通じお完党な機胜を維持しながら゚ンティティ䜜成を簡玠化するこずで API 蚭蚈を改善し、集䞭化されたファむル凊理ナヌティリティを通じおコヌドの保守性を向䞊させ、现かいアクセス制埡を通じおセキュリティを匷化し、包括的な゜フト削陀機胜でデヌタ安党性を確保したす。


2025-11-06​

main

✹ Added​

Profile Follow Management​

  • Delete Profile Follow: プロフィヌルフォロヌ関係を削陀する機胜を远加フォロヌ解陀

    • deleteProfileFollowRoute を远加 - フォロヌ関係を削陀する DELETE ゚ンドポむント
    • deleteProfileFollowFeature を远加 - 怜蚌ずルヌティングを含む完党な機胜
    • deleteProfileFollowSchema を远加 - プロフィヌルフォロヌ削陀のパスパラメヌタ怜蚌
    • User Service を曎新しお DELETE /profiles/:profileId/profile-follows/:followProfileId ゚ンドポむントを含める
    • 認可: 管理者ロヌルたたはプロフィヌル所有暩が必芁
    • 削陀成功時に 204 No Content を返す
    • プロフィヌルたたはフォロヌ関係が存圚しない堎合、404 Not Found を返す
    • マヌゞリク゚スト nodeblocks/nodeblocks-backend-sdk!261 を参照
  • Get Profile Followers: プロフィヌルのフォロワヌのペヌゞネヌション付きリストを取埗する機胜を远加

    • getProfileFollowersRoute を远加 - ペヌゞネヌション付きでフォロワヌを取埗する GET ゚ンドポむント
    • getProfileFollowersFeature を远加 - 怜蚌、ペヌゞネヌション、ルヌティングを含む完党な機胜
    • getProfileFollowersSchema を远加 - フォロワヌ取埗のパスパラメヌタ怜蚌
    • normalizeFollowers を远加 - アバタヌ URL でフォロワヌデヌタを正芏化するブロック関数
    • buildProfileFollowersByFollowProfileIdQuery を远加 - MongoDB フォロワヌク゚リを構築するブロック関数
    • User Service を曎新しお GET /profiles/:profileId/followers ゚ンドポむントを含める
    • 認可: 管理者ロヌルたたはプロフィヌル所有暩が必芁
    • ペヌゞネヌション付きフォロワヌリストず正芏化されたアバタヌ URL で 200 OK を返す
    • ク゚リパラメヌタpage, limitによるペヌゞネヌションをサポヌト
    • プロフィヌルが存圚しない堎合、404 Not Found を返す
    • マヌゞリク゚スト nodeblocks/nodeblocks-backend-sdk!232 を参照
  • Create Organization Follow: 組織フォロヌ関係を䜜成する機胜を远加

    • createOrganizationFollowRoute を远加 - 組織フォロヌ関係を䜜成する PUT ゚ンドポむント
    • createOrganizationFollowFeature を远加 - 怜蚌ずルヌティングを含む完党な機胜
    • createOrganizationFollowSchema を远加 - 組織フォロヌ䜜成のパスパラメヌタ怜蚌
    • createOrganizationFollow を远加 - 組織フォロヌ関係を䜜成するブロック関数
    • OrganizationAlreadyFollowedBlockError を远加 - 重耇する組織フォロヌの゚ラヌ
    • OrganizationNotFoundError を远加 - 組織レコヌドが芋぀からない堎合の゚ラヌ
    • User Service を曎新しお PUT /profiles/:profileId/organization-follows/:followOrganizationId ゚ンドポむントを含める
    • 認可: 管理者ロヌルたたはプロフィヌル所有暩が必芁
    • 䜜成成功時に 204 No Content を返す
    • 組織が既にフォロヌされおいる堎合、409 Conflict を返す
    • プロフィヌルたたは組織が存圚しない堎合、404 Not Found を返す
    • マヌゞリク゚スト nodeblocks/nodeblocks-backend-sdk!233 を参照
  • Delete Organization Follow: 組織フォロヌ関係を削陀する機胜を远加

    • deleteOrganizationFollowRoute を远加 - 組織フォロヌ関係を削陀する DELETE ゚ンドポむント
    • deleteOrganizationFollowFeature を远加 - 怜蚌ずルヌティングを含む完党な機胜
    • deleteOrganizationFollowSchema を远加 - 組織フォロヌ削陀のパスパラメヌタ怜蚌
    • deleteOrganizationFollow を远加 - 組織フォロヌ関係を削陀するブロック関数
    • OrganizationFollowNotFoundBlockError を远加 - 組織フォロヌ関係が芋぀からない堎合の゚ラヌ
    • User Service を曎新しお DELETE /profiles/:profileId/organization-follows/:followOrganizationId ゚ンドポむントを含める
    • 認可: 管理者ロヌルたたはプロフィヌル所有暩が必芁
    • 削陀成功時に 204 No Content を返す
    • プロフィヌル、組織、たたはフォロヌ関係が存圚しない堎合、404 Not Found を返す
    • 存圚怜蚌: 存圚しない関係に察しおサむレント成功の代わりに 404 を返す
    • マヌゞリク゚スト nodeblocks/nodeblocks-backend-sdk!236 を参照
  • Get Organization Followers: 組織フォロワヌのペヌゞネヌション付きリストを取埗する機胜を远加

    • getOrganizationFollowersRoute を远加 - ペヌゞネヌション付きで組織フォロワヌを取埗する GET ゚ンドポむント
    • getOrganizationFollowersFeature を远加 - 怜蚌、ペヌゞネヌション、ルヌティングを含む完党な機胜
    • getOrganizationFollowersSchema を远加 - フォロワヌ取埗のパスパラメヌタ怜蚌
    • buildOrganizationFollowersByFollowOrganizationIdQuery を远加 - MongoDB フォロワヌク゚リを構築するブロック関数
    • Organization Service を曎新しお、フォロワヌデヌタアクセスに users コレクションを必芁ずするようにしたした
    • 認可: 管理者ロヌルたたは組織所有暩が必芁
    • ペヌゞネヌション付きフォロワヌリストず正芏化されたアバタヌ URL で 200 OK を返す
    • ク゚リパラメヌタpage, limitによるペヌゞネヌションをサポヌト
    • 組織が存圚しない堎合、404 Not Found を返す
    • 䞀貫性のためにプロフィヌルブロックfindProfiles, normalizeFollowersを再利甚
    • マヌゞリク゚スト nodeblocks/nodeblocks-backend-sdk!246 を参照

Product Like Management​

  • Create Product Like: 補品いいね関係を䜜成する機胜を远加補品をお気に入りに远加

    • createProductLikeRoute を远加 - 補品いいね関係を䜜成する PUT ゚ンドポむント
    • createProductLikeFeature を远加 - 怜蚌ずルヌティングを含む完党な機胜
    • createProductLikeSchema を远加 - 補品いいね䜜成のパスパラメヌタ怜蚌
    • createProductLike を远加 - 補品いいね関係を䜜成するブロック関数
    • ProductAlreadyLikedBlockError を远加 - 重耇する補品いいねの゚ラヌ
    • User Service を曎新しお PUT /profiles/:profileId/product-likes/:likeProductId ゚ンドポむントを含める
    • User Service を曎新しお、補品怜蚌に products コレクションを必芁ずするようにしたした
    • 認可: 管理者ロヌルたたはプロフィヌル所有暩が必芁
    • 䜜成成功時に 201 Created を返す
    • 補品が既にいいねされおいる堎合、409 Conflict を返す
    • プロフィヌルたたは補品が存圚しない堎合、404 Not Found を返す
    • MongoDB $ne 挔算子を䜿甚した重耇防止
    • マヌゞリク゚スト nodeblocks/nodeblocks-backend-sdk!240 を参照
  • Delete Product Like: 補品いいね関係を削陀する機胜を远加補品のお気に入りを解陀

    • deleteProductLikeRoute を远加 - 補品いいね関係を削陀する DELETE ゚ンドポむント
    • deleteProductLikeFeature を远加 - 怜蚌ずルヌティングを含む完党な機胜
    • deleteProductLikeSchema を远加 - 補品いいね削陀のパスパラメヌタ怜蚌
    • deleteProductLike を远加 - 補品いいね関係を削陀するブロック関数
    • ProductLikeNotFoundBlockError を远加 - 補品いいね関係が芋぀からない堎合の゚ラヌ
    • User Service を曎新しお DELETE /profiles/:profileId/product-likes/:likeProductId ゚ンドポむントを含める
    • 認可: 管理者ロヌルたたはプロフィヌル所有暩が必芁
    • 削陀成功時に 204 No Content を返す
    • プロフィヌル、補品、たたはいいね関係が存圚しない堎合、404 Not Found を返す
    • 存圚怜蚌: 存圚しない関係に察しおサむレント成功の代わりに 404 を返す
    • マヌゞリク゚スト nodeblocks/nodeblocks-backend-sdk!241 を参照

🐞 Fixed​

Security​

  • Identity Service: セキュリティ匷化のため、アむデンティティ゚ンドポむントのレスポンスからパスワヌドフィヌルドを削陀
    • GET /identities/:identityId を曎新しお、レスポンスからパスワヌドを陀倖
    • GET /identities を曎新しお、レスポンスからパスワヌドを陀倖
    • PATCH /identities/:identityId を曎新しお、レスポンスからパスワヌドを陀倖
    • パスワヌドフィヌルドは、クラむアントにレスポンスを送信する前にフィルタリングされるようになりたした
    • マヌゞリク゚スト nodeblocks/nodeblocks-backend-sdk!254 を参照

Blocks​

  • MongoDB: デヌタベヌスナヌティリティ関数を含む新しい MongoDB ブロックモゞュヌル
    • findResources: ゚ラヌハンドリング付きで MongoDB コレクションから耇数のドキュメントを取埗
    • buildWithoutMongoIdFindOptions: ク゚リ結果から _id フィヌルドを陀倖する投圱オプションを䜜成
  • Identity: buildIdentityIdFilter: デヌタベヌスク゚リ甚のアむデンティティ ID フィルタヌオブゞェクトを構築
  • Profile: ProfileDbBlockError: プロフィヌル関連のデヌタベヌス倱敗甚のデヌタベヌス操䜜゚ラヌクラス
  • User: findProfiles: 暙準化された゚ラヌハンドリングで MongoDB から耇数のプロフィヌルドキュメントを取埗

Features​

  • User: findProfilesByIdentityIdFeature: スキヌマ怜蚌ずルヌティングを含むアむデンティティ ID によるナヌザヌプロフィヌル取埗

Routes​

  • User: findProfilesByIdentityIdRoute: プロフィヌル取埗ずアバタヌ凊理を含む GET /profiles/identities/:identityId

Schemas​

  • Identity: findByIdentityIdSchema: パスパラメヌタずペヌゞネヌション怜蚌を含む ID によるアむデンティティ取埗スキヌマ

Services​

  • User: アむデンティティ ID によるプロフィヌル取埗のため、user service に findProfilesByIdentityIdFeature を远加
  • Product: ペヌゞネヌションず画像正芏化を含む組織スコヌプの補品取埗のため、product service に findProductsByOrganizationIdFeature を远加
  • Product: アバタヌ正芏化ず管理者認可を含む特定の補品をいいねしたナヌザヌを取埗するため、product service に getProductLikersFeature を远加

Primitives​

  • Error: 䞀貫した゚ラヌハンドリングのための ErrorConstructor ず BlockErrorConstructor 型定矩を远加

Chat​

  • Message Templates: チャットメッセヌゞテンプレヌトの新しいリスト機胜
    • findChatMessageTemplates: デヌタベヌス゚ラヌハンドリング付きでフィルタヌに䞀臎するチャットメッセヌゞテンプレヌトを怜玢
    • buildFilterToGetChatMessageTemplatesByOrganizationId: テンプレヌトク゚リ甚の組織固有フィルタヌを構築
    • findChatMessageTemplatesFeature: ペヌゞネヌションずデヌタ正芏化を含むチャットメッセヌゞテンプレヌトをリストする完党な機胜
    • findChatMessageTemplatesForOrganizationFeature: ロヌルベヌスのアクセス制埡を含む組織スコヌプのメッセヌゞテンプレヌトリスト
    • findChatMessageTemplatesRoute: 管理者専甚アクセス制埡を含む GET /message-templates ルヌト
    • findChatMessageTemplatesForOrganizationRoute: 組織ロヌル怜蚌を含む GET /organizations/:organizationId/message-templates ルヌト
    • findChatMessageTemplatesSchema: ペヌゞネヌションパラメヌタのスキヌマ怜蚌
    • findChatMessageTemplatesForOrganizationSchema: 組織スコヌプのテンプレヌト取埗のスキヌマ怜蚌
  • Chat Service: 包括的なメッセヌゞテンプレヌト管理のため、chat service に findChatMessageTemplatesFeature ず findChatMessageTemplatesForOrganizationFeature を远加

Order Management​

  • Order Blocks: デヌタベヌス操䜜ず゚ラヌハンドリングを含む新しい泚文管理モゞュヌル
    • OrderBlockError: 泚文関連操䜜のベヌス゚ラヌクラス
    • OrderDbBlockError: 泚文操䜜甚のデヌタベヌス固有゚ラヌクラス
    • findOrders: MongoDB コレクションからフィルタリングずペヌゞネヌション付きで泚文を取埗
  • Organization Integration: 組織スコヌプの泚文管理
    • buildOrganizationIdFilter: デヌタベヌスク゚リ甚の組織 ID フィルタヌオブゞェクトを構築
    • findByOrganizationIdSchema: ペヌゞネヌションを含む組織リ゜ヌス取埗のスキヌマ怜蚌
  • Order Features: 新しい組織スコヌプの泚文取埗機胜
    • findOrdersByOrganizationIdFeature: ロヌルベヌスのアクセス制埡を含む組織スコヌプの泚文取埗の完党な機胜
    • findOrdersByOrganizationIdRoute: 組織ロヌル怜蚌を含む GET /orders/organizations/:organizationId ルヌト
  • Order Service: 組織スコヌプの泚文取埗で匷化
    • order service の構成に findOrdersByOrganizationIdFeature を远加
    • 組織メンバヌowner/admin/member ロヌル甚の新しい゚ンドポむント: GET /orders/organizations/:organizationId
    • マルチテナント泚文管理の包括的なロヌルベヌスアクセス制埡

Development​

  • REPL: TypeScript 開発䜓隓を向䞊させるため、ts-node ベヌスの REPL を远加
  • Rules: 自動テストガむダンスのための Test-Author Agent Prompt を远加

Blocks​

  • Common:
    • normalizeRawDocument: API レスポンス甚に MongoDB _id フィヌルドを削陀する生ドキュメント正芏化ナヌティリティ
    • normalizeDocuments: 各ドキュメントから MongoDB _id フィヌルドを削陀しお生ドキュメントの配列を正芏化
  • Organization:
    • findChangeRequests: デヌタベヌスから特定の組織の倉曎リク゚ストを取埗
    • normalizeChangeRequest: ファむル URL ゚ンリッチメント付きで単䞀の倉曎リク゚ストを正芏化
    • normalizeChangeRequests: ファむル凊理付きで倉曎リク゚ストの配列を正芏化
    • Error Class: OrganizationChangeRequestError: 倉曎リク゚スト操䜜の倱敗
  • Product:
    • createProductVariant: 既存の補品の MongoDB コレクションに補品バリアントを䜜成
    • createProductVariantBulk: デヌタベヌスコレクション内で耇数の補品バリアントを䞀括䜜成
    • buildFilterToGetProductVariantsByIds: MongoDB $in 挔算子を䜿甚しお ID で補品バリアントを取埗するデヌタベヌスフィルタヌを構築
    • findProductVariants: MongoDB コレクションからフィルタヌ条件付きで補品バリアントを取埗
    • buildFilterToGetProductVariantsByProductId: 補品 ID で既存の補品バリアントを取埗するデヌタベヌスフィルタヌを構築
    • getProductVariantById: オプションの補品スコヌプ付きで ID で補品バリアントを取埗
    • updateProductVariant: オプションの制玄付きで補品バリアントフィヌルドを曎新
    • deleteProductVariant: MongoDB コレクションから ID で補品バリアントを削陀
    • deleteImagesOfProduct: ファむルストレヌゞから補品に関連付けられたすべおの画像を削陀
  • Chat:
    • generateChatChannelIconUploadUrl: チャットチャンネルアむコン画像甚の眲名付きアップロヌド URL を生成
    • normalizeChatChannel: API レスポンス甚にアむコンファむル凊理付きでチャットチャンネルデヌタを正芏化
  • File Storage:
    • normalizeFile: API レスポンス甚に眲名付きダりンロヌド URL 生成付きでファむルデヌタを正芏化
  • User:
    • deleteAvatar: ストレヌゞシステムからナヌザヌアバタヌファむルを削陀

main

  • Authentication:

    • normalizeIdentityWithoutPassword を normalizeIdentity にリネヌム
    • 戻り倀の型を object から Result<Record<string, unknown>, never> に曎新
    • バッチ正芏化甚の normalizeIdentitiesWithoutPassword 関数を远加
    • API レスポンスでパスワヌドフィヌルドが公開されないようにセキュリティを匷化
  • OAuth:

    • Google OAuth サむンアップ 䞭にメヌル䞀意性怜蚌を远加
    • サむンアップフロヌ䞭にメヌルが既に存圚する堎合、409 Conflict ゚ラヌを返す
    • アむデンティティが芋぀からないシナリオの゚ラヌメッセヌゞを改善
    • マヌゞリク゚スト nodeblocks/nodeblocks-backend-sdk!258 を参照
    • generateRedirectURL を曎新: ワンタむムトヌクンパラメヌタ付きで OAuth リダむレクト URL 生成を簡玠化
  • Identity:

    • buildLockIdentityPayload: アむデンティティセキュリティ甚の暙準化されたロックペむロヌドを䜜成
    • buildUnlockIdentityPayload: アむデンティティアクセス埩元甚の暙準化されたアンロックペむロヌドを䜜成

Schemas​

  • Organization:
  • Identity:
    • lockIdentitySchema: パスパラメヌタ付きのアむデンティティロックリク゚スト怜蚌
    • unlockIdentitySchema: パスパラメヌタ付きのアむデンティティアンロックリク゚スト怜蚌
  • Product:
    • createProductVariantBulkSchema: 配列怜蚌ず補品関連付けを含む補品バリアント䞀括䜜成スキヌマ
    • createProductVariantSchema: 必須タむトル怜蚌付きの補品バリアント䜜成
    • findProductVariantsSchema: ペヌゞネヌションず補品 ID 怜蚌を含む補品バリアント取埗スキヌマ
    • getProductVariantSchema: パスパラメヌタ付きの補品バリアント取埗
    • updateProductVariantSchema: オプションフィヌルド付きの補品バリアント曎新
    • deleteProductVariantSchema: パスパラメヌタ付きの補品バリアント削陀
  • Chat:
    • ChatChannelIcon: チャットチャンネルアむコンメタデヌタの TypeScript 型
    • chatChannelSchema を曎新: ベヌスチャンネルスキヌマに icon フィヌルドを远加
    • createChatChannelSchema を曎新: チャンネル䜜成に icon フィヌルドを必須に
    • updateChatChannelSchema を曎新: チャンネル曎新に icon フィヌルドサポヌトを远加

Routes​

  • Organization:
    • findChangeRequestsForOrganizationRoute: ペヌゞネヌションずファむル URL ゚ンリッチメントを含む GET /organizations/:organizationId/change-requests
  • Product:
    • createProductVariantBulkRoute: 補品バリアントを䞀括䜜成するための POST /product/:productId/variants/bulk
    • createProductVariantRoute: バリアント䜜成甚の POST /products/:productId/variants
    • findProductVariantsRoute: ペヌゞネヌション付きで補品バリアントをリストするための GET /products/:productId/variants
    • getProductVariantRoute: バリアント取埗甚の GET /products/:productId/variants/:productVariantId
    • updateProductVariantRoute: バリアント曎新甚の PATCH /products/:productId/variants/:productVariantId
    • deleteProductVariantRoute: バリアント削陀甚の DELETE /products/:productId/variants/:productVariantId
  • Chat:
    • getChatChannelIconUploadUrlRoute: チャンネルアむコン甚の眲名付きアップロヌド URL を生成するための GET /channels/:channelId/icon-upload-url

Features​

  • Organization:
    • findChangeRequestsForOrganizationFeature: ペヌゞネヌションずファむル URL ゚ンリッチメントを含む倉曎リク゚スト取埗
  • Product:
    • createProductVariantBulkFeature: スキヌマ怜蚌ずルヌティングを含む補品バリアント䞀括䜜成
    • createProductVariantFeature: 怜蚌ず正芏化を含む補品バリアント䜜成
    • findProductVariantsFeature: ペヌゞネヌションずデヌタ正芏化を含む補品バリアント取埗
    • getProductVariantFeature: 怜蚌ず正芏化を含む補品バリアント取埗
    • updateProductVariantFeature: 郚分フィヌルドサポヌト付きの補品バリアント曎新
    • deleteProductVariantFeature: 怜蚌付きの補品バリアント削陀
  • Chat:
    • getChannelIconUploadUrlFeature: スキヌマ怜蚌ずルヌティングを含むチャットチャンネルアむコンアップロヌド URL 生成
    • updateChatMessageTemplateFeature: 郚分デヌタサポヌト付きで既存のチャットメッセヌゞテンプレヌトを曎新
    • updateChatMessageTemplate: 適切な怜蚌付きでチャットメッセヌゞテンプレヌトを曎新するデヌタベヌスブロック
    • deleteChatMessageTemplateFeature: 認可制埡付きでチャットメッセヌゞテンプレヌトを削陀
    • deleteChatMessageTemplate: 適切な怜蚌付きでチャットメッセヌゞテンプレヌトを削陀するデヌタベヌスブロック
  • Identity:
    • lockIdentityFeature: 管理者認可ずセキュリティ制埡を含むアむデンティティロック
    • unlockIdentityFeature: アクセス埩元甚の管理者認可付きアむデンティティアンロック

🔄 Changed​

Development​

  • REPL: TypeScript サポヌトを向䞊させるため、Babel ベヌスの REPL を ts-node に眮き換え
  • Dependencies: Babel 䟝存関係@babel/cli, @babel/core, @babel/node, @babel/plugin-proposal-pipeline-operator, @babel/preset-envず babel.config.json を削陀
  • Build: パッケヌゞスクリプトを babel-node の代わりに ts-node を䜿甚するように曎新

Handlers​

  • Chat: チャンネルハンドラヌupdateChatChannel, deleteChatChannel, terminatorsを曎新しお、アむコンファむルのクリヌンアップず正芏化をサポヌト

OAuth​

  • OAuth Callback Routes: すべおの OAuth プロバむダヌコヌルバックルヌトGoogle, LINE, Twitterをワンタむムトヌクンを䜿甚した簡玠化されたフロヌにリファクタリング
    • oauthCallbackTokenBehavior 蚭定オプションを削陀
    • コヌルバックルヌトを曎新しお、ワンタむムトヌクンを䞀貫しお生成および保存
    • generateRedirectURL ナヌティリティを、ワンタむムトヌクンリダむレクトのみを凊理するように簡玠化

Services​

  • Authentication Service: OAuth コヌルバックトヌクンの動䜜を削陀し、より長いデフォルトのワンタむムトヌクン有効期限を蚭定するように蚭定を曎新
    • oauth.oauthCallbackTokenBehavior 蚭定オプションを削陀
    • onetimeTokenExpireTime のデフォルトを '2h' から '48h' に曎新
  • Identity Service: ロック/アンロック機胜を含む完党なアむデンティティラむフサむクル管理で匷化
    • アカりントセキュリティ管理のための lockIdentityFeature ず unlockIdentityFeature を远加
    • 䞀貫性のため、機胜名を耇数圢から単数圢に曎新䟋: getIdentityFeatures → getIdentityFeature

Removed​

  • User Service: ロック/アンロック機胜を Identity Service に移動
    • lockUser, unlockUser, lockUserTerminator, unlockUserTerminator ハンドラヌを削陀
    • lockUserRoute, unlockUserRoute ルヌトを削陀
    • lockUserSchema, unlockUserSchema スキヌマを削陀
    • lockUserFeatures, unlockUserFeatures 機胜を削陀
    • 移行: Identity Service ゚ンドポむント POST /identities/:identityId/lock ず POST /identities/:identityId/unlock を䜿甚しおください
  • Chat: メッセヌゞ正芏化関数をリファクタリング
    • normalizeAttachmentsOfChatMessage を削陀 - 機胜は normalizeChatMessage に統合されたした
    • normalizeAttachmentsOfChatMessages を削陀 - 機胜は normalizeChatMessages に統合されたした
    • 移行: 非同期添付ファむル凊理を含む曎新された normalizeChatMessage ず normalizeChatMessages 関数を䜿甚しおください

Blocks​

  • Product: createProductVariantBulk を匷化しお、自動補品関連付けのための productId パラメヌタを受け入れるようにしたした
  • Product: 単䞀のデヌタベヌス操䜜で耇数の補品バリアントを䞀括曎新するための updateProductVariantBulk を远加
  • Product: 怜蚌付きで耇数の補品バリアントを䞀括削陀するための deleteProductVariantBulk を远加
  • Product: オプショナルチェヌンを䜿甚しお buildFilterToGetProductVariantsByIds の null 安党性を修正
  • Product: findResources ナヌティリティを䜿甚しお柔軟なフィルタリングで補品コレクションをク゚リするための findProductResources を远加
  • Product: 特定の補品をいいねしたナヌザヌを芋぀けるための MongoDB フィルタヌを構築する buildProductLikersByLikeProductIdQuery を远加
  • Chat: normalizeChatMessage ず normalizeChatMessages を匷化しお、眲名付き URL 生成を含む非同期添付ファむル凊理を含めるようにしたした
  • Chat: normalizeChatMessageStream を曎新しお、新しい非同期正芏化関数で動䜜するようにしたした
  • Location: 階局関係管理を含む完党な location ブロックモゞュヌルを远加:
  • Location: 削陀サポヌトず階局怜蚌を含む location ブロックモゞュヌルを匷化:
    • LocationConflictError で階局制玄の競合を凊理
    • buildDescendantsFilter で階局内の子孫ロケヌションを怜玢
    • assertNoDescendantLocations で子ロケヌションが存圚しないこずを怜蚌
    • deleteLocation で怜蚌付きでロケヌションを削陀
    • findLocations で自動フィヌルド投圱付きで柔軟なロケヌションク゚リ
    • normalizeLocation で内郚 MongoDB フィヌルドを API フレンドリヌな圢匏に倉換

Routes​

  • Product: deleteProductRoute を曎新しお、補品が削陀されたずきに自動的に画像をクリヌンアップするようにしたした
  • Product: createProductVariantBulkRoute を曎新しお、リク゚ストボディではなくパスパラメヌタずしお productId を受け入れるようにしたした
  • Product: PATCH /product/:productId/variants/bulk 䞀括曎新゚ンドポむント甚の updateProductVariantBulkRoute を远加
  • Product: POST /product/:productId/variants/bulk-delete 䞀括削陀゚ンドポむント甚の deleteProductVariantBulkRoute を远加
  • Product: GET /products/organizations/:organizationId 組織スコヌプの補品取埗甚の findProductsByOrganizationIdRoute を远加
  • Product: アバタヌ正芏化付きで GET /products/:productId/likers 補品いいねナヌザヌ取埗甚の getProductLikersRoute を远加
  • Location: 階局的な芪サポヌトず祖先構築を含む POST /locations 甚の createLocationRoute を远加
  • Location: パブリックアクセスずロケヌション怜玢を含む GET /locations/:locationId 甚の getLocationRoute を远加
  • Location: 階局怜蚌ず管理者認蚌を含む DELETE /locations/:locationId 甚の deleteLocationRoute を远加
  • Location: ペヌゞネヌションサポヌトずパブリックアクセスを含む GET /locations 甚の findLocationsRoute を远加
  • Location: 管理者認蚌ず郚分曎新を含む PATCH /locations/:locationId 甚の updateLocationRoute を远加

Schemas​

  • Product: createProductVariantBulkSchema を曎新しお、productId パスパラメヌタを怜蚌し、個別のバリアントアむテムから productId を削陀するようにしたした
  • Product: 䞀括補品バリアント曎新怜蚌甚の updateProductVariantBulkSchema を远加
  • Product: 䞀括補品バリアント削陀怜蚌甚の deleteProductVariantBulkSchema を远加
  • Product: 補品 ID パスパラメヌタ怜蚌付きで補品いいねナヌザヌ取埗甚の getProductLikersSchema を远加
  • Location: 完党な location スキヌマモゞュヌルを远加:
    • locationSchema コアロケヌションプロパティを含むベヌススキヌマ
    • createLocationSchema 芪サポヌト付きのロケヌション䜜成怜蚌
    • getLocationSchema パスパラメヌタ付きのロケヌション取埗怜蚌
    • updateLocationSchema オプションフィヌルド付きのロケヌション曎新怜蚌
    • deleteLocationSchema パスパラメヌタ付きのロケヌション削陀怜蚌
    • findLocationsSchema ペヌゞネヌションパラメヌタ付きのロケヌション怜玢怜蚌

Features​

  • Product: createProductVariantBulkFeature を曎新しお、補品関連付けにパスパラメヌタを䜿甚するようにしたした
  • Product: 怜蚌ずルヌティングを含む䞀括補品バリアント曎新甚の updateProductVariantBulkFeature を远加
  • Product: 怜蚌ずルヌティングを含む䞀括補品バリアント削陀甚の deleteProductVariantBulkFeature を远加
  • Product: 画像正芏化ずペヌゞネヌションを含む組織スコヌプの補品取埗甚の findProductsByOrganizationIdFeature を远加
  • Product: アバタヌ正芏化ずペヌゞネヌションを含む特定の補品をいいねしたナヌザヌを取埗するための getProductLikersFeature を远加
  • Location: 芪子関係を含む階局的ロケヌション䜜成甚の createLocationFeature を远加
  • Location: スキヌマ怜蚌ずパブリックルヌティングを含むロケヌション取埗甚の getLocationFeature を远加
  • Location: スキヌマ怜蚌ず管理者ルヌティングを含むロケヌション曎新甚の updateLocationFeature を远加
  • Location: スキヌマ怜蚌ず階局怜蚌ルヌティングを含むロケヌション削陀甚の deleteLocationFeature を远加
  • Location: スキヌマ怜蚌ずペヌゞネヌションルヌティングを含むロケヌション怜玢甚の findLocationsFeature を远加
  • User: deleteUserRoute を曎新しお、ナヌザヌが削陀されたずきに自動的にアバタヌをクリヌンアップするようにしたした

Services​

  • Organization Service: 倉曎リク゚スト取埗機胜で匷化
    • 組織倉曎リク゚ストを取埗するための findChangeRequestsForOrganizationFeature を远加
    • 倉曎リク゚ストストレヌゞ甚の organizationChangeRequests コレクションオプションを远加
  • Location Service: 新しい階局的ロケヌション管理サヌビスを远加
    • 芪子関係ず祖先远跡を含む完党なロケヌション CRUD
    • 耇数のロケヌションタむプORGANIZATION, REGION, CITY, BUILDINGのサポヌト
    • 包括的な゚ラヌハンドリングを含む管理者専甚アクセス制埡
    • ペヌゞネヌション付きの GET /organizations/:organizationId/change-requests ゚ンドポむントを远加
    • 倉曎リク゚ストには自動蚌明曞画像 URL 生成が含たれたす
  • Product Service: 完党な補品バリアント管理で匷化
    • 補品バリアントを䜜成するための createProductVariantFeature を远加
    • 個別のバリアントを取埗するための getProductVariantFeature を远加
    • 郚分的なバリアント曎新のための updateProductVariantFeature を远加
    • バリアント削陀のための deleteProductVariantFeature を远加
    • バリアントストレヌゞ甚の productVariants コレクションオプションを远加
    • バリアント䜜成甚の POST /products/:productId/variants を远加
    • バリアント取埗甚の GET /products/:productId/variants/:productVariantId を远加
    • バリアント曎新甚の PATCH /products/:productId/variants/:productVariantId を远加
    • バリアント削陀甚の DELETE /products/:productId/variants/:productVariantId を远加
    • バリアントにはレスポンスで自動 MongoDB _id フィヌルド削陀が含たれたす

Blocks​

  • Product:
    • createProductVariant を曎新しお、䞀貫した゚ンティティ䜜成のために createBaseEntityWithDelFlg を䜿甚するようにしたした
    • 適切な゚ラヌハンドリングず怜蚌を含むバリアント CRUD 操䜜を匷化

2025-10-24​

🐞 Fixed​

Timestamp Consistency​

  • デヌタベヌス操䜜に䞍足しおいたタむムスタンプを远加: createdAt ず updatedAt タむムスタンプがすべおのデヌタベヌス曞き蟌み操䜜で自動的に远加/曎新されおいなかった䞍敎合を修正
    • createChatMessageAttachment を曎新しお、メッセヌゞ配列に添付ファむルを远加するずきに updatedAt タむムスタンプを含めるようにしたした
    • createProductImage を曎新しお、補品配列に画像を远加するずきに updatedAt タむムスタンプを含めるようにしたした
    • deleteOrganizationMember を曎新しお、組織からメンバヌを削陀するずきに updatedAt タむムスタンプを含めるようにしたした
    • すべおの䜜成操䜜は、自動タむムスタンプ生成のために createBaseEntity() ヘルパヌを䞀貫しお䜿甚するようになりたした
    • すべおの曎新操䜜は、自動タむムスタンプ曎新のために updateBaseEntity() ヘルパヌを䞀貫しお䜿甚するようになりたした
    • すべおの゚ンティティ倉曎のデヌタ敎合性ず適切な監査蚌跡を確保したす
    • マヌゞリク゚スト nodeblocks/nodeblocks-backend-sdk!276 を参照

🍱 Refactor​

File Deletion Error Handling​

  • deleteFile ゚ラヌハンドリングをリファクタリング: モゞュヌル固有の゚ラヌでラップする代わりに、FileStorageServiceError を盎接返すこずで゚ラヌ䌝播を簡玠化
    • Avatar Blocks を曎新:
      • deleteAvatarIfReplaced - AvatarBlockError の代わりに Result<T, FileStorageServiceError> を返すようになりたした
    • User Blocks を曎新:
      • deleteAvatar - UserBlockError の代わりに Result<true, FileStorageServiceError> を返すようになりたした
    • Organization Blocks を曎新:
      • deleteLogoIfReplaced 関数を削陀ハンドラヌで盎接 deleteFile を䜿甚するように眮き換え
      • deleteLogoOfOwner - OrganizationBlockError の代わりに Result<true, FileStorageServiceError> を返すようになりたした
    • Product Blocks を曎新:
      • deleteImagesOfProduct - Result<true, FileStorageServiceError | ProductNotFoundBlockError | ProductUnexpectedDBError> を返すようになり、䞊列ファむル削陀゚ラヌハンドリングに Result.combine を䜿甚したす
    • Chat Channel Handlers を曎新:
      • updateChatChannel - よりクリヌンな゚ラヌ構成のために Result 型ず map を䜿甚するようにリファクタリング
      • deleteChatChannel - よりクリヌンな゚ラヌ構成のために Result 型ず map を䜿甚するようにリファクタリング
    • User Routes を曎新:
      • updateUserRoute - ゚ラヌレスポンス500 ステヌタスに FileStorageServiceError を远加
    • Product Routes を曎新:
      • deleteProductRoute - ゚ラヌレスポンス500 ステヌタスに FileStorageServiceError を含める
    • 理由: よりクリヌンな゚ラヌ䌝播、より良い型安党性、SDK 党䜓でより䞀貫した゚ラヌハンドリングパタヌン
    • 利点: 呌び出し偎は䞍芁なラッピングなしでストレヌゞ固有の゚ラヌを盎接受け取り、より良い゚ラヌハンドリングの決定を可胜にしたす
    • マヌゞリク゚スト nodeblocks/nodeblocks-backend-sdk!279 を参照

2025-10-15​

🍱 Refactor​

Logger Parameter Removal​


2025-10-10​


2025-09-11​

🎥 Demo Video​

📹 NodeBlocks Backend SDK v0.6.0 Demo - すべおの新機胜ず機胜の完党なりォヌクスルヌ


✹ Added​

Blocks​

  • Chat:
    • createChatMessageTemplate: 組織アクセス制埡付きで新しいチャットメッセヌゞテンプレヌトを䜜成
    • getChatMessageTemplateById: 怜蚌付きで ID で特定のメッセヌゞテンプレヌトを取埗
    • createChatChannelReadState: デヌタベヌスにチャットチャンネル読み取り状態゚ンティティを䜜成
    • updateChatChannelReadState: 既存のチャットチャンネル読み取り状態を曎新
    • findChatChannelReadStates: フィルタヌ条件付きでチャットチャンネル読み取り状態を怜玢
    • buildChatChannelReadStateQuery: チャンネルずアむデンティティで読み取り状態を怜玢するク゚リオブゞェクトを構築
    • buildLastReadMessageQuery: 最埌に読んだメッセヌゞを怜玢するク゚リオブゞェクトを構築
    • buildCreateChatChannelReadStatePayload: 読み取り状態゚ンティティを䜜成するペむロヌドを構築
    • buildUpdateChatChannelReadStatePayload: 読み取り状態゚ンティティを曎新するペむロヌドを構築
    • Error Classes: ChatMessageBlockError, ChatMessageDbError, ChatMessageUnauthorizedError, ChatMessageForbiddenError, ChatMessageNotFoundError, ChatMessageInvalidMessageError, ChatMessageUnknownError, ChatMessageBadRequestError, ChatChannelReadStateBlockError, ChatChannelReadStateNotFoundError, ChatChannelReadStateDatabaseError, ChatChannelReadStateUnknownError
  • Chat:
    • createChatMessage: 添付ファむルず自動ベヌス゚ンティティ生成を含む新しいチャットメッセヌゞを䜜成
    • getChatMessageById: 䞀意の識別子でチャットメッセヌゞを取埗
    • normalizeChatMessage: MongoDB _id フィヌルドを削陀し、眲名付き URL で添付ファむルを凊理しお単䞀のメッセヌゞを正芏化
    • normalizeChatMessages: MongoDB _id フィヌルドを削陀し、添付ファむルを凊理しお耇数のメッセヌゞを正芏化
    • normalizeChatMessageAttachment: 眲名付きダりンロヌド URL で添付ファむルを正芏化
    • generateChatMessageAttachmentUploadUrl: セキュリティフィルタリング付きでチャットメッセヌゞ添付ファむル甚の眲名付きアップロヌド URL を生成
    • createChatMessageAttachment: 自動ベヌス゚ンティティ生成付きで既存のメッセヌゞに添付ファむルを远加
    • getChatMessageAttachmentById: ID でメッセヌゞから特定の添付ファむルを取埗
    • deleteChatMessageAttachment: メッセヌゞから添付ファむルを削陀し、ストレヌゞからファむルを削陀
    • Error Classes: ChatMessageNotFoundBlockError, ChatMessageUnexpectedDBError, ChatMessageAttachmentNotFoundBlockError
  • Product:
    • getProductById: ゚ラヌハンドリング付きで products コレクションから ID で補品を取埗
    • findProducts: フィルタヌ条件に基づいおデヌタベヌスコレクションから補品を取埗
    • normalizeProduct: 補品゚ンティティから _id フィヌルドを削陀しお単䞀の補品を正芏化
    • normalizeProducts: 各補品゚ンティティから _id フィヌルドを削陀しお耇数の補品を正芏化
    • normalizeProductImage: 眲名付きダりンロヌド URL を生成しお単䞀の補品画像を正芏化
    • normalizeImagesOfProduct: 眲名付き URL で単䞀の補品の画像を正芏化
    • normalizeImagesOfProducts: 眲名付き URL で耇数の補品の画像を正芏化
  • OAuth:
    • requestLineOAuth: ステヌトトヌクン生成付きで LINE OAuth 認蚌フロヌを開始
    • authenticateLineOAuth: プロバむダヌコヌルバックを呌び出しお LINE ナヌザヌを認蚌
    • verifyLineOAuth: LINE OAuth プロフィヌルを怜蚌し、アむデンティティを解決たたは䜜成
  • Utils:
    • BaseEntity: id、createdAt、updatedAt フィヌルドを含む TypeScript 型定矩

Schemas​

Routes​

  • Chat:

Features​

Drivers​

Validators​

Utilities​

  • RxJS:
    • notFromEmitter: 特定の゚ミッタヌむンスタンスからのメッセヌゞをフィルタリングする RxJS 述語
    • markAsFromEmitter: 特定の゚ミッタヌむンスタンスから発信されたメッセヌゞずしおマヌク

🔄 Changed​

Services​

  • Authentication Service: Twitter OAuth サポヌトずリフレッシュトヌクン機胜を远加
    • サヌビス蚭定に twitterOAuthDriver パラメヌタを远加
    • ルヌト構成に Twitter OAuth ゚ンドポむントを远加
    • ゜フト削陀機胜を含むリフレッシュトヌクンシステムを匷化
    • デヌタストア蚭定を曎新しお chatMessageTemplates コレクションを含める

Primitives​

  • Service Infrastructure:
    • defService を匷化しお WebSocket サヌバヌ統合をサポヌト
    • リアルタむム通信のための RxJS ブリッゞング付き WebSocket ルヌト凊理を远加
    • ゚ミッタヌベヌスのメッセヌゞフィルタリングを含む WebSocket 接続管理を実装
    • HTTP ルヌトず䞊行しお protocol: 'ws' ルヌトのサポヌトを远加

Route Definitions:​

  • WebSocket Routing:
    • withRoute サポヌトを WebSocket プロトコルルヌトに远加
    • WebSocket ゚ンドポむントを定矩するための protocol: 'ws' オプションを有効化
    • 既存のルヌト構成システムに WebSocket ハンドラヌを統合

Blocks​

  • Chat:
    • 組織ベヌスのアクセス制埡を含むメッセヌゞテンプレヌトブロックを匷化
    • テンプレヌト管理のための゜フト削陀機胜を远加
    • テンプレヌト操䜜の怜蚌ず゚ラヌハンドリングを改善

Drivers​

  • OAuth:
    • createGoogleOAuthDriver: マルチプロバむダヌサポヌトで匷化
    • Twitter OAuth ドラむバヌ統合を远加
    • OAuth フロヌのセッションベヌスの状態管理を改善

Validators​

  • Chat:
    • メッセヌゞテンプレヌトの組織アクセス怜蚌を匷化
    • ゚ラヌハンドリングず怜蚌メッセヌゞを改善

🐞 Fixed​

Services​

  • Authentication Service:
    • リフレッシュトヌクンルヌト怜蚌を修正isAuthenticated 怜蚌を削陀
    • 蚭定プロパティ名を修正user.typeIds → identity.typeIds
    • 型定矩を修正user?: string → regular?: string
    • すべおのサヌビスクむックスタヌト䟋を正しいプロパティ名で曎新

Drivers​

  • File Storage:
    • Google Cloud ストレヌゞテストモック実装を修正
    • テスト環境のクロスプラットフォヌム互換性を改善

Blocks​

  • Organization:
    • 組織ブロック゚クスポヌトの問題を修正
    • モゞュヌルの敎理ず゚クスポヌトを改善

Configuration​

  • すべおのサヌビスでプロパティ名の䞍敎合を修正:
    • 蚭定むンタヌフェヌスで user.typeIds → identity.typeIds
    • 型定矩で user?: string → regular?: string
    • すべおの䟋の蚭定ずドキュメントを曎新