@focus-reactive/payload-plugin-comments 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +562 -0
- package/dist/collection/access/isAuth.d.ts +3 -0
- package/dist/collection/access/isAuth.d.ts.map +1 -0
- package/dist/collection/access/isAuth.js +8 -0
- package/dist/collection/access/isAuth.js.map +1 -0
- package/dist/collection/hooks/setAuthorBeforeCreate.d.ts +3 -0
- package/dist/collection/hooks/setAuthorBeforeCreate.d.ts.map +1 -0
- package/dist/collection/hooks/setAuthorBeforeCreate.js +10 -0
- package/dist/collection/hooks/setAuthorBeforeCreate.js.map +1 -0
- package/dist/collection/hooks/setTenantBeforeCreate.d.ts +3 -0
- package/dist/collection/hooks/setTenantBeforeCreate.d.ts.map +1 -0
- package/dist/collection/hooks/setTenantBeforeCreate.js +24 -0
- package/dist/collection/hooks/setTenantBeforeCreate.js.map +1 -0
- package/dist/collection/index.d.ts +4 -0
- package/dist/collection/index.d.ts.map +1 -0
- package/dist/collection/index.js +139 -0
- package/dist/collection/index.js.map +1 -0
- package/dist/components/Avatar/index.d.ts +11 -0
- package/dist/components/Avatar/index.d.ts.map +1 -0
- package/dist/components/Avatar/index.js +11 -0
- package/dist/components/Avatar/index.js.map +1 -0
- package/dist/components/CommentEditor/ActionPanel.d.ts +8 -0
- package/dist/components/CommentEditor/ActionPanel.d.ts.map +1 -0
- package/dist/components/CommentEditor/ActionPanel.js +17 -0
- package/dist/components/CommentEditor/ActionPanel.js.map +1 -0
- package/dist/components/CommentEditor/index.d.ts +23 -0
- package/dist/components/CommentEditor/index.d.ts.map +1 -0
- package/dist/components/CommentEditor/index.js +265 -0
- package/dist/components/CommentEditor/index.js.map +1 -0
- package/dist/components/CommentItem/ToolsPanel.d.ts +9 -0
- package/dist/components/CommentItem/ToolsPanel.d.ts.map +1 -0
- package/dist/components/CommentItem/ToolsPanel.js +22 -0
- package/dist/components/CommentItem/ToolsPanel.js.map +1 -0
- package/dist/components/CommentItem/index.d.ts +8 -0
- package/dist/components/CommentItem/index.d.ts.map +1 -0
- package/dist/components/CommentItem/index.js +65 -0
- package/dist/components/CommentItem/index.js.map +1 -0
- package/dist/components/CommentsDrawer/components/Header.d.ts +6 -0
- package/dist/components/CommentsDrawer/components/Header.d.ts.map +1 -0
- package/dist/components/CommentsDrawer/components/Header.js +46 -0
- package/dist/components/CommentsDrawer/components/Header.js.map +1 -0
- package/dist/components/CommentsDrawer/index.d.ts +6 -0
- package/dist/components/CommentsDrawer/index.d.ts.map +1 -0
- package/dist/components/CommentsDrawer/index.js +30 -0
- package/dist/components/CommentsDrawer/index.js.map +1 -0
- package/dist/components/CommentsHeaderButton/index.d.ts +2 -0
- package/dist/components/CommentsHeaderButton/index.d.ts.map +1 -0
- package/dist/components/CommentsHeaderButton/index.js +19 -0
- package/dist/components/CommentsHeaderButton/index.js.map +1 -0
- package/dist/components/CommentsPanel/components/CollapsibleGroup.d.ts +10 -0
- package/dist/components/CommentsPanel/components/CollapsibleGroup.d.ts.map +1 -0
- package/dist/components/CommentsPanel/components/CollapsibleGroup.js +68 -0
- package/dist/components/CommentsPanel/components/CollapsibleGroup.js.map +1 -0
- package/dist/components/CommentsPanel/components/DocumentView.d.ts +9 -0
- package/dist/components/CommentsPanel/components/DocumentView.d.ts.map +1 -0
- package/dist/components/CommentsPanel/components/DocumentView.js +20 -0
- package/dist/components/CommentsPanel/components/DocumentView.js.map +1 -0
- package/dist/components/CommentsPanel/components/FieldGroupSection.d.ts +11 -0
- package/dist/components/CommentsPanel/components/FieldGroupSection.d.ts.map +1 -0
- package/dist/components/CommentsPanel/components/FieldGroupSection.js +62 -0
- package/dist/components/CommentsPanel/components/FieldGroupSection.js.map +1 -0
- package/dist/components/CommentsPanel/components/GlobalDocumentView.d.ts +9 -0
- package/dist/components/CommentsPanel/components/GlobalDocumentView.d.ts.map +1 -0
- package/dist/components/CommentsPanel/components/GlobalDocumentView.js +20 -0
- package/dist/components/CommentsPanel/components/GlobalDocumentView.js.map +1 -0
- package/dist/components/CommentsPanel/components/GlobalView.d.ts +9 -0
- package/dist/components/CommentsPanel/components/GlobalView.d.ts.map +1 -0
- package/dist/components/CommentsPanel/components/GlobalView.js +62 -0
- package/dist/components/CommentsPanel/components/GlobalView.js.map +1 -0
- package/dist/components/CommentsPanel/constants.d.ts +3 -0
- package/dist/components/CommentsPanel/constants.d.ts.map +1 -0
- package/dist/components/CommentsPanel/constants.js +9 -0
- package/dist/components/CommentsPanel/constants.js.map +1 -0
- package/dist/components/CommentsPanel/hooks/useCollapseState.d.ts +2 -0
- package/dist/components/CommentsPanel/hooks/useCollapseState.d.ts.map +1 -0
- package/dist/components/CommentsPanel/hooks/useCollapseState.js +44 -0
- package/dist/components/CommentsPanel/hooks/useCollapseState.js.map +1 -0
- package/dist/components/CommentsPanel/hooks/useScrollToTargetFieldGroup.d.ts +2 -0
- package/dist/components/CommentsPanel/hooks/useScrollToTargetFieldGroup.d.ts.map +1 -0
- package/dist/components/CommentsPanel/hooks/useScrollToTargetFieldGroup.js +35 -0
- package/dist/components/CommentsPanel/hooks/useScrollToTargetFieldGroup.js.map +1 -0
- package/dist/components/CommentsPanel/index.d.ts +6 -0
- package/dist/components/CommentsPanel/index.d.ts.map +1 -0
- package/dist/components/CommentsPanel/index.js +32 -0
- package/dist/components/CommentsPanel/index.js.map +1 -0
- package/dist/components/CommentsPanel/types.d.ts +4 -0
- package/dist/components/CommentsPanel/types.d.ts.map +1 -0
- package/dist/components/CommentsPanel/types.js +1 -0
- package/dist/components/CommentsPanel/types.js.map +1 -0
- package/dist/components/CommentsPanel/utils/createCollapsibleGroupKey.d.ts +10 -0
- package/dist/components/CommentsPanel/utils/createCollapsibleGroupKey.d.ts.map +1 -0
- package/dist/components/CommentsPanel/utils/createCollapsibleGroupKey.js +15 -0
- package/dist/components/CommentsPanel/utils/createCollapsibleGroupKey.js.map +1 -0
- package/dist/components/CommentsPanel/utils/filterComments.d.ts +9 -0
- package/dist/components/CommentsPanel/utils/filterComments.d.ts.map +1 -0
- package/dist/components/CommentsPanel/utils/filterComments.js +17 -0
- package/dist/components/CommentsPanel/utils/filterComments.js.map +1 -0
- package/dist/components/CommentsPanel/utils/groupCommentsByFieldPath.d.ts +4 -0
- package/dist/components/CommentsPanel/utils/groupCommentsByFieldPath.d.ts.map +1 -0
- package/dist/components/CommentsPanel/utils/groupCommentsByFieldPath.js +14 -0
- package/dist/components/CommentsPanel/utils/groupCommentsByFieldPath.js.map +1 -0
- package/dist/components/CommentsPanel/utils/groupCommentsGlobally.d.ts +18 -0
- package/dist/components/CommentsPanel/utils/groupCommentsGlobally.d.ts.map +1 -0
- package/dist/components/CommentsPanel/utils/groupCommentsGlobally.js +58 -0
- package/dist/components/CommentsPanel/utils/groupCommentsGlobally.js.map +1 -0
- package/dist/components/CommentsPanel/utils/resolveEntityLabel.d.ts +3 -0
- package/dist/components/CommentsPanel/utils/resolveEntityLabel.d.ts.map +1 -0
- package/dist/components/CommentsPanel/utils/resolveEntityLabel.js +14 -0
- package/dist/components/CommentsPanel/utils/resolveEntityLabel.js.map +1 -0
- package/dist/components/CommentsPanel/utils/resolveFieldLabel.d.ts +11 -0
- package/dist/components/CommentsPanel/utils/resolveFieldLabel.d.ts.map +1 -0
- package/dist/components/CommentsPanel/utils/resolveFieldLabel.js +9 -0
- package/dist/components/CommentsPanel/utils/resolveFieldLabel.js.map +1 -0
- package/dist/components/CommentsPanel/utils/sortGroupsByCreatedAt.d.ts +4 -0
- package/dist/components/CommentsPanel/utils/sortGroupsByCreatedAt.d.ts.map +1 -0
- package/dist/components/CommentsPanel/utils/sortGroupsByCreatedAt.js +11 -0
- package/dist/components/CommentsPanel/utils/sortGroupsByCreatedAt.js.map +1 -0
- package/dist/components/FieldCommentLabel/AddCommentPopup.d.ts +8 -0
- package/dist/components/FieldCommentLabel/AddCommentPopup.d.ts.map +1 -0
- package/dist/components/FieldCommentLabel/AddCommentPopup.js +50 -0
- package/dist/components/FieldCommentLabel/AddCommentPopup.js.map +1 -0
- package/dist/components/FieldCommentLabel/hooks/useStablePath.d.ts +2 -0
- package/dist/components/FieldCommentLabel/hooks/useStablePath.d.ts.map +1 -0
- package/dist/components/FieldCommentLabel/hooks/useStablePath.js +12 -0
- package/dist/components/FieldCommentLabel/hooks/useStablePath.js.map +1 -0
- package/dist/components/FieldCommentLabel/index.d.ts +11 -0
- package/dist/components/FieldCommentLabel/index.d.ts.map +1 -0
- package/dist/components/FieldCommentLabel/index.js +64 -0
- package/dist/components/FieldCommentLabel/index.js.map +1 -0
- package/dist/components/FieldCommentLabel/types.d.ts +4 -0
- package/dist/components/FieldCommentLabel/types.d.ts.map +1 -0
- package/dist/components/FieldCommentLabel/types.js +1 -0
- package/dist/components/FieldCommentLabel/types.js.map +1 -0
- package/dist/components/FieldCommentLabel/utils/buildStablePath.d.ts +2 -0
- package/dist/components/FieldCommentLabel/utils/buildStablePath.d.ts.map +1 -0
- package/dist/components/FieldCommentLabel/utils/buildStablePath.js +19 -0
- package/dist/components/FieldCommentLabel/utils/buildStablePath.js.map +1 -0
- package/dist/components/FieldCommentLabel/utils/exludeComments.d.ts +3 -0
- package/dist/components/FieldCommentLabel/utils/exludeComments.d.ts.map +1 -0
- package/dist/components/FieldCommentLabel/utils/exludeComments.js +12 -0
- package/dist/components/FieldCommentLabel/utils/exludeComments.js.map +1 -0
- package/dist/components/FieldCommentLabel/utils/resolveLabel.d.ts +3 -0
- package/dist/components/FieldCommentLabel/utils/resolveLabel.d.ts.map +1 -0
- package/dist/components/FieldCommentLabel/utils/resolveLabel.js +9 -0
- package/dist/components/FieldCommentLabel/utils/resolveLabel.js.map +1 -0
- package/dist/components/IconButton/index.d.ts +12 -0
- package/dist/components/IconButton/index.d.ts.map +1 -0
- package/dist/components/IconButton/index.js +38 -0
- package/dist/components/IconButton/index.js.map +1 -0
- package/dist/components/MentionDropdown.d.ts +11 -0
- package/dist/components/MentionDropdown.d.ts.map +1 -0
- package/dist/components/MentionDropdown.js +53 -0
- package/dist/components/MentionDropdown.js.map +1 -0
- package/dist/components/MentionLabel/index.d.ts +7 -0
- package/dist/components/MentionLabel/index.d.ts.map +1 -0
- package/dist/components/MentionLabel/index.js +21 -0
- package/dist/components/MentionLabel/index.js.map +1 -0
- package/dist/config.d.ts +4 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +17 -0
- package/dist/config.js.map +1 -0
- package/dist/constants.d.ts +9 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +22 -0
- package/dist/constants.js.map +1 -0
- package/dist/hooks/useRelativeDate.d.ts +2 -0
- package/dist/hooks/useRelativeDate.d.ts.map +1 -0
- package/dist/hooks/useRelativeDate.js +11 -0
- package/dist/hooks/useRelativeDate.js.map +1 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +7 -0
- package/dist/index.js.map +1 -0
- package/dist/plugin.d.ts +4 -0
- package/dist/plugin.d.ts.map +1 -0
- package/dist/plugin.js +60 -0
- package/dist/plugin.js.map +1 -0
- package/dist/providers/CommentsDrawerProvider/index.d.ts +14 -0
- package/dist/providers/CommentsDrawerProvider/index.d.ts.map +1 -0
- package/dist/providers/CommentsDrawerProvider/index.js +28 -0
- package/dist/providers/CommentsDrawerProvider/index.js.map +1 -0
- package/dist/providers/CommentsProvider/index.d.ts +39 -0
- package/dist/providers/CommentsProvider/index.d.ts.map +1 -0
- package/dist/providers/CommentsProvider/index.js +237 -0
- package/dist/providers/CommentsProvider/index.js.map +1 -0
- package/dist/providers/CommentsProvider/mergeDocumentTitles.d.ts +3 -0
- package/dist/providers/CommentsProvider/mergeDocumentTitles.d.ts.map +1 -0
- package/dist/providers/CommentsProvider/mergeDocumentTitles.js +10 -0
- package/dist/providers/CommentsProvider/mergeDocumentTitles.js.map +1 -0
- package/dist/providers/CommentsProviderWrapper/index.d.ts +7 -0
- package/dist/providers/CommentsProviderWrapper/index.d.ts.map +1 -0
- package/dist/providers/CommentsProviderWrapper/index.js +16 -0
- package/dist/providers/CommentsProviderWrapper/index.js.map +1 -0
- package/dist/providers/GlobalCommentsLoader/GlobalCommentsHydrator.d.ts +13 -0
- package/dist/providers/GlobalCommentsLoader/GlobalCommentsHydrator.d.ts.map +1 -0
- package/dist/providers/GlobalCommentsLoader/GlobalCommentsHydrator.js +22 -0
- package/dist/providers/GlobalCommentsLoader/GlobalCommentsHydrator.js.map +1 -0
- package/dist/providers/GlobalCommentsLoader/index.d.ts +10 -0
- package/dist/providers/GlobalCommentsLoader/index.d.ts.map +1 -0
- package/dist/providers/GlobalCommentsLoader/index.js +31 -0
- package/dist/providers/GlobalCommentsLoader/index.js.map +1 -0
- package/dist/services/createComment.d.ts +12 -0
- package/dist/services/createComment.d.ts.map +1 -0
- package/dist/services/createComment.js +83 -0
- package/dist/services/createComment.js.map +1 -0
- package/dist/services/deleteComment.d.ts +3 -0
- package/dist/services/deleteComment.d.ts.map +1 -0
- package/dist/services/deleteComment.js +34 -0
- package/dist/services/deleteComment.js.map +1 -0
- package/dist/services/fetchMentionableUsers.d.ts +3 -0
- package/dist/services/fetchMentionableUsers.d.ts.map +1 -0
- package/dist/services/fetchMentionableUsers.js +46 -0
- package/dist/services/fetchMentionableUsers.js.map +1 -0
- package/dist/services/fieldLabels/fetchFieldLabels.d.ts +3 -0
- package/dist/services/fieldLabels/fetchFieldLabels.d.ts.map +1 -0
- package/dist/services/fieldLabels/fetchFieldLabels.js +74 -0
- package/dist/services/fieldLabels/fetchFieldLabels.js.map +1 -0
- package/dist/services/fieldLabels/utils/groupFieldPathsByDocument.d.ts +5 -0
- package/dist/services/fieldLabels/utils/groupFieldPathsByDocument.d.ts.map +1 -0
- package/dist/services/fieldLabels/utils/groupFieldPathsByDocument.js +21 -0
- package/dist/services/fieldLabels/utils/groupFieldPathsByDocument.js.map +1 -0
- package/dist/services/fieldLabels/utils/resolveFieldPath.d.ts +4 -0
- package/dist/services/fieldLabels/utils/resolveFieldPath.d.ts.map +1 -0
- package/dist/services/fieldLabels/utils/resolveFieldPath.js +66 -0
- package/dist/services/fieldLabels/utils/resolveFieldPath.js.map +1 -0
- package/dist/services/fieldLabels/utils/schemaUtils.d.ts +6 -0
- package/dist/services/fieldLabels/utils/schemaUtils.d.ts.map +1 -0
- package/dist/services/fieldLabels/utils/schemaUtils.js +60 -0
- package/dist/services/fieldLabels/utils/schemaUtils.js.map +1 -0
- package/dist/services/findAllComments.d.ts +11 -0
- package/dist/services/findAllComments.d.ts.map +1 -0
- package/dist/services/findAllComments.js +47 -0
- package/dist/services/findAllComments.js.map +1 -0
- package/dist/services/getCurrentTenantId.d.ts +3 -0
- package/dist/services/getCurrentTenantId.d.ts.map +1 -0
- package/dist/services/getCurrentTenantId.js +13 -0
- package/dist/services/getCurrentTenantId.js.map +1 -0
- package/dist/services/getDocumentTitles.d.ts +3 -0
- package/dist/services/getDocumentTitles.d.ts.map +1 -0
- package/dist/services/getDocumentTitles.js +61 -0
- package/dist/services/getDocumentTitles.js.map +1 -0
- package/dist/services/getEntitiesLabels.d.ts +3 -0
- package/dist/services/getEntitiesLabels.d.ts.map +1 -0
- package/dist/services/getEntitiesLabels.js +14 -0
- package/dist/services/getEntitiesLabels.js.map +1 -0
- package/dist/services/resolveComment.d.ts +3 -0
- package/dist/services/resolveComment.d.ts.map +1 -0
- package/dist/services/resolveComment.js +41 -0
- package/dist/services/resolveComment.js.map +1 -0
- package/dist/services/sendMentionEmails.d.ts +11 -0
- package/dist/services/sendMentionEmails.d.ts.map +1 -0
- package/dist/services/sendMentionEmails.js +73 -0
- package/dist/services/sendMentionEmails.js.map +1 -0
- package/dist/services/syncAllCommentsData.d.ts +12 -0
- package/dist/services/syncAllCommentsData.d.ts.map +1 -0
- package/dist/services/syncAllCommentsData.js +48 -0
- package/dist/services/syncAllCommentsData.js.map +1 -0
- package/dist/styles.css +2 -0
- package/dist/translations/en.d.ts +5 -0
- package/dist/translations/en.d.ts.map +1 -0
- package/dist/translations/en.js +36 -0
- package/dist/translations/en.js.map +1 -0
- package/dist/translations/types.d.ts +32 -0
- package/dist/translations/types.d.ts.map +1 -0
- package/dist/translations/types.js +1 -0
- package/dist/translations/types.js.map +1 -0
- package/dist/types/base.d.ts +10 -0
- package/dist/types/base.d.ts.map +1 -0
- package/dist/types/base.js +1 -0
- package/dist/types/base.js.map +1 -0
- package/dist/types/collection.d.ts +2 -0
- package/dist/types/collection.d.ts.map +1 -0
- package/dist/types/collection.js +1 -0
- package/dist/types/collection.js.map +1 -0
- package/dist/types/comment.d.ts +23 -0
- package/dist/types/comment.d.ts.map +1 -0
- package/dist/types/comment.js +1 -0
- package/dist/types/comment.js.map +1 -0
- package/dist/types/config.d.ts +112 -0
- package/dist/types/config.d.ts.map +1 -0
- package/dist/types/config.js +1 -0
- package/dist/types/config.js.map +1 -0
- package/dist/types/entity.d.ts +15 -0
- package/dist/types/entity.d.ts.map +1 -0
- package/dist/types/entity.js +1 -0
- package/dist/types/entity.js.map +1 -0
- package/dist/types/general.d.ts +10 -0
- package/dist/types/general.d.ts.map +1 -0
- package/dist/types/general.js +1 -0
- package/dist/types/general.js.map +1 -0
- package/dist/types/index.d.ts +8 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +1 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/user.d.ts +6 -0
- package/dist/types/user.d.ts.map +1 -0
- package/dist/types/user.js +1 -0
- package/dist/types/user.js.map +1 -0
- package/dist/utils/comment/extractVisibleComments.d.ts +13 -0
- package/dist/utils/comment/extractVisibleComments.d.ts.map +1 -0
- package/dist/utils/comment/extractVisibleComments.js +17 -0
- package/dist/utils/comment/extractVisibleComments.js.map +1 -0
- package/dist/utils/comment/filterCommentsByLocale.d.ts +3 -0
- package/dist/utils/comment/filterCommentsByLocale.d.ts.map +1 -0
- package/dist/utils/comment/filterCommentsByLocale.js +12 -0
- package/dist/utils/comment/filterCommentsByLocale.js.map +1 -0
- package/dist/utils/comment/renderCommentText.d.ts +12 -0
- package/dist/utils/comment/renderCommentText.d.ts.map +1 -0
- package/dist/utils/comment/renderCommentText.js +38 -0
- package/dist/utils/comment/renderCommentText.js.map +1 -0
- package/dist/utils/comment/serializeEditor.d.ts +2 -0
- package/dist/utils/comment/serializeEditor.d.ts.map +1 -0
- package/dist/utils/comment/serializeEditor.js +30 -0
- package/dist/utils/comment/serializeEditor.js.map +1 -0
- package/dist/utils/config/injectFieldCommentComponents.d.ts +4 -0
- package/dist/utils/config/injectFieldCommentComponents.d.ts.map +1 -0
- package/dist/utils/config/injectFieldCommentComponents.js +80 -0
- package/dist/utils/config/injectFieldCommentComponents.js.map +1 -0
- package/dist/utils/config/mergeTranslations.d.ts +3 -0
- package/dist/utils/config/mergeTranslations.d.ts.map +1 -0
- package/dist/utils/config/mergeTranslations.js +29 -0
- package/dist/utils/config/mergeTranslations.js.map +1 -0
- package/dist/utils/config/normalizeCollections.d.ts +7 -0
- package/dist/utils/config/normalizeCollections.d.ts.map +1 -0
- package/dist/utils/config/normalizeCollections.js +15 -0
- package/dist/utils/config/normalizeCollections.js.map +1 -0
- package/dist/utils/config/overrideCollections.d.ts +3 -0
- package/dist/utils/config/overrideCollections.d.ts.map +1 -0
- package/dist/utils/config/overrideCollections.js +38 -0
- package/dist/utils/config/overrideCollections.js.map +1 -0
- package/dist/utils/config/overrideCommentsCollection.d.ts +4 -0
- package/dist/utils/config/overrideCommentsCollection.d.ts.map +1 -0
- package/dist/utils/config/overrideCommentsCollection.js +14 -0
- package/dist/utils/config/overrideCommentsCollection.js.map +1 -0
- package/dist/utils/config/overrideGlobals.d.ts +3 -0
- package/dist/utils/config/overrideGlobals.d.ts.map +1 -0
- package/dist/utils/config/overrideGlobals.js +8 -0
- package/dist/utils/config/overrideGlobals.js.map +1 -0
- package/dist/utils/error/getDefaultErrorMessage.d.ts +2 -0
- package/dist/utils/error/getDefaultErrorMessage.d.ts.map +1 -0
- package/dist/utils/error/getDefaultErrorMessage.js +9 -0
- package/dist/utils/error/getDefaultErrorMessage.js.map +1 -0
- package/dist/utils/general/cn.d.ts +3 -0
- package/dist/utils/general/cn.d.ts.map +1 -0
- package/dist/utils/general/cn.js +9 -0
- package/dist/utils/general/cn.js.map +1 -0
- package/dist/utils/general/formatRelativeDate.d.ts +2 -0
- package/dist/utils/general/formatRelativeDate.d.ts.map +1 -0
- package/dist/utils/general/formatRelativeDate.js +28 -0
- package/dist/utils/general/formatRelativeDate.js.map +1 -0
- package/dist/utils/general/getURL.d.ts +2 -0
- package/dist/utils/general/getURL.d.ts.map +1 -0
- package/dist/utils/general/getURL.js +13 -0
- package/dist/utils/general/getURL.js.map +1 -0
- package/dist/utils/general/getValueByPath.d.ts +4 -0
- package/dist/utils/general/getValueByPath.d.ts.map +1 -0
- package/dist/utils/general/getValueByPath.js +19 -0
- package/dist/utils/general/getValueByPath.js.map +1 -0
- package/dist/utils/mention/isSelfMention.d.ts +4 -0
- package/dist/utils/mention/isSelfMention.d.ts.map +1 -0
- package/dist/utils/mention/isSelfMention.js +7 -0
- package/dist/utils/mention/isSelfMention.js.map +1 -0
- package/dist/utils/mention/parseMentionIds.d.ts +2 -0
- package/dist/utils/mention/parseMentionIds.d.ts.map +1 -0
- package/dist/utils/mention/parseMentionIds.js +13 -0
- package/dist/utils/mention/parseMentionIds.js.map +1 -0
- package/dist/utils/mode/defineModeByPathname.d.ts +11 -0
- package/dist/utils/mode/defineModeByPathname.d.ts.map +1 -0
- package/dist/utils/mode/defineModeByPathname.js +39 -0
- package/dist/utils/mode/defineModeByPathname.js.map +1 -0
- package/dist/utils/path/detectPluginBasePath.d.ts +2 -0
- package/dist/utils/path/detectPluginBasePath.d.ts.map +1 -0
- package/dist/utils/path/detectPluginBasePath.js +8 -0
- package/dist/utils/path/detectPluginBasePath.js.map +1 -0
- package/dist/utils/path/getComponentPath.d.ts +15 -0
- package/dist/utils/path/getComponentPath.d.ts.map +1 -0
- package/dist/utils/path/getComponentPath.js +22 -0
- package/dist/utils/path/getComponentPath.js.map +1 -0
- package/dist/utils/payload/extractPayload.d.ts +3 -0
- package/dist/utils/payload/extractPayload.d.ts.map +1 -0
- package/dist/utils/payload/extractPayload.js +9 -0
- package/dist/utils/payload/extractPayload.js.map +1 -0
- package/dist/utils/user/resolveUsername.d.ts +4 -0
- package/dist/utils/user/resolveUsername.d.ts.map +1 -0
- package/dist/utils/user/resolveUsername.js +14 -0
- package/dist/utils/user/resolveUsername.js.map +1 -0
- package/package.json +113 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/services/deleteComment.ts"],"sourcesContent":["\"use server\";\n\nimport { headers } from \"next/headers\";\nimport { DEFAULT_COLLECTION_SLUG } from \"../constants\";\nimport { getDefaultErrorMessage } from \"../utils/error/getDefaultErrorMessage\";\nimport type { BaseServiceOptions, Response, Comment } from \"../types\";\nimport { extractPayload } from \"../utils/payload/extractPayload\";\n\nexport async function deleteComment(id: number | string, options?: BaseServiceOptions): Promise<Response<Comment>> {\n try {\n const payload = await extractPayload(options?.payload);\n const { user } = await payload.auth({ headers: await headers() });\n\n if (!user) {\n return { success: false, error: \"Unauthorized\" };\n }\n\n const data = (await payload.delete({\n collection: DEFAULT_COLLECTION_SLUG,\n id,\n overrideAccess: false,\n user,\n })) as Comment;\n\n return {\n success: true,\n data,\n };\n } catch (e) {\n console.error(`Failed to delete ${id} comment`, e);\n\n return {\n success: false,\n error: getDefaultErrorMessage(e),\n };\n }\n}\n"],"mappings":";AAEA,SAAS,eAAe;AACxB,SAAS,+BAA+B;AACxC,SAAS,8BAA8B;AAEvC,SAAS,sBAAsB;AAE/B,eAAsB,cAAc,IAAqB,SAA0D;AACjH,MAAI;AACF,UAAM,UAAU,MAAM,eAAe,SAAS,OAAO;AACrD,UAAM,EAAE,KAAK,IAAI,MAAM,QAAQ,KAAK,EAAE,SAAS,MAAM,QAAQ,EAAE,CAAC;AAEhE,QAAI,CAAC,MAAM;AACT,aAAO,EAAE,SAAS,OAAO,OAAO,eAAe;AAAA,IACjD;AAEA,UAAM,OAAQ,MAAM,QAAQ,OAAO;AAAA,MACjC,YAAY;AAAA,MACZ;AAAA,MACA,gBAAgB;AAAA,MAChB;AAAA,IACF,CAAC;AAED,WAAO;AAAA,MACL,SAAS;AAAA,MACT;AAAA,IACF;AAAA,EACF,SAAS,GAAG;AACV,YAAQ,MAAM,oBAAoB,EAAE,YAAY,CAAC;AAEjD,WAAO;AAAA,MACL,SAAS;AAAA,MACT,OAAO,uBAAuB,CAAC;AAAA,IACjC;AAAA,EACF;AACF;","names":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fetchMentionableUsers.d.ts","sourceRoot":"","sources":["../../src/services/fetchMentionableUsers.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,kBAAkB,EAA+B,QAAQ,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAOhG,wBAAsB,qBAAqB,CAAC,OAAO,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CA6CnG"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"use server";
|
|
2
|
+
import { resolveUsername } from "../utils/user/resolveUsername";
|
|
3
|
+
import { getDefaultErrorMessage } from "../utils/error/getDefaultErrorMessage";
|
|
4
|
+
import { extractPayload } from "../utils/payload/extractPayload";
|
|
5
|
+
import { getCurrentTenantId } from "./getCurrentTenantId";
|
|
6
|
+
import { FALLBACK_USERNAME, USERNAME_DEFAULT_FIELD_PATH } from "../constants";
|
|
7
|
+
async function fetchMentionableUsers(options) {
|
|
8
|
+
try {
|
|
9
|
+
const payload = await extractPayload(options?.payload);
|
|
10
|
+
const pluginConfig = payload.config.admin?.custom?.commentsPlugin;
|
|
11
|
+
const usernameFieldPath = pluginConfig?.usernameFieldPath ?? USERNAME_DEFAULT_FIELD_PATH;
|
|
12
|
+
const tenantId = await getCurrentTenantId(payload);
|
|
13
|
+
const where = tenantId ? {
|
|
14
|
+
or: [{ tenant: { equals: tenantId } }, { tenant: { exists: false } }]
|
|
15
|
+
} : {};
|
|
16
|
+
const usersRes = await payload.find({
|
|
17
|
+
collection: "users",
|
|
18
|
+
overrideAccess: true,
|
|
19
|
+
limit: 200,
|
|
20
|
+
where: Object.keys(where).length ? where : void 0,
|
|
21
|
+
select: {
|
|
22
|
+
id: true,
|
|
23
|
+
email: true,
|
|
24
|
+
[usernameFieldPath]: true
|
|
25
|
+
}
|
|
26
|
+
});
|
|
27
|
+
const data = usersRes.docs.map((user) => ({
|
|
28
|
+
id: user.id,
|
|
29
|
+
[usernameFieldPath]: resolveUsername(user, usernameFieldPath, FALLBACK_USERNAME)
|
|
30
|
+
}));
|
|
31
|
+
return {
|
|
32
|
+
success: true,
|
|
33
|
+
data
|
|
34
|
+
};
|
|
35
|
+
} catch (e) {
|
|
36
|
+
console.error(`Failed to fetch mentionable users`, e);
|
|
37
|
+
return {
|
|
38
|
+
success: false,
|
|
39
|
+
error: getDefaultErrorMessage(e)
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
export {
|
|
44
|
+
fetchMentionableUsers
|
|
45
|
+
};
|
|
46
|
+
//# sourceMappingURL=fetchMentionableUsers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/services/fetchMentionableUsers.ts"],"sourcesContent":["\"use server\";\n\nimport type { Where } from \"payload\";\nimport type { BaseServiceOptions, CommentsPluginConfigStorage, Response, User } from \"../types\";\nimport { resolveUsername } from \"../utils/user/resolveUsername\";\nimport { getDefaultErrorMessage } from \"../utils/error/getDefaultErrorMessage\";\nimport { extractPayload } from \"../utils/payload/extractPayload\";\nimport { getCurrentTenantId } from \"./getCurrentTenantId\";\nimport { FALLBACK_USERNAME, USERNAME_DEFAULT_FIELD_PATH } from \"../constants\";\n\nexport async function fetchMentionableUsers(options?: BaseServiceOptions): Promise<Response<User[]>> {\n try {\n const payload = await extractPayload(options?.payload);\n\n const pluginConfig = payload.config.admin?.custom?.commentsPlugin as CommentsPluginConfigStorage | undefined;\n const usernameFieldPath = pluginConfig?.usernameFieldPath ?? USERNAME_DEFAULT_FIELD_PATH;\n\n const tenantId = await getCurrentTenantId(payload);\n\n const where: Where =\n tenantId ?\n {\n or: [{ tenant: { equals: tenantId } }, { tenant: { exists: false } }],\n }\n : {};\n\n const usersRes = await payload.find({\n collection: \"users\",\n overrideAccess: true,\n limit: 200,\n where: Object.keys(where).length ? where : undefined,\n select: {\n id: true,\n email: true,\n [usernameFieldPath]: true,\n },\n });\n\n const data = usersRes.docs.map((user) => ({\n id: user.id,\n [usernameFieldPath]: resolveUsername(user as User, usernameFieldPath, FALLBACK_USERNAME),\n })) as User[];\n\n return {\n success: true,\n data,\n };\n } catch (e) {\n console.error(`Failed to fetch mentionable users`, e);\n\n return {\n success: false,\n error: getDefaultErrorMessage(e),\n };\n }\n}\n"],"mappings":";AAIA,SAAS,uBAAuB;AAChC,SAAS,8BAA8B;AACvC,SAAS,sBAAsB;AAC/B,SAAS,0BAA0B;AACnC,SAAS,mBAAmB,mCAAmC;AAE/D,eAAsB,sBAAsB,SAAyD;AACnG,MAAI;AACF,UAAM,UAAU,MAAM,eAAe,SAAS,OAAO;AAErD,UAAM,eAAe,QAAQ,OAAO,OAAO,QAAQ;AACnD,UAAM,oBAAoB,cAAc,qBAAqB;AAE7D,UAAM,WAAW,MAAM,mBAAmB,OAAO;AAEjD,UAAM,QACJ,WACE;AAAA,MACE,IAAI,CAAC,EAAE,QAAQ,EAAE,QAAQ,SAAS,EAAE,GAAG,EAAE,QAAQ,EAAE,QAAQ,MAAM,EAAE,CAAC;AAAA,IACtE,IACA,CAAC;AAEL,UAAM,WAAW,MAAM,QAAQ,KAAK;AAAA,MAClC,YAAY;AAAA,MACZ,gBAAgB;AAAA,MAChB,OAAO;AAAA,MACP,OAAO,OAAO,KAAK,KAAK,EAAE,SAAS,QAAQ;AAAA,MAC3C,QAAQ;AAAA,QACN,IAAI;AAAA,QACJ,OAAO;AAAA,QACP,CAAC,iBAAiB,GAAG;AAAA,MACvB;AAAA,IACF,CAAC;AAED,UAAM,OAAO,SAAS,KAAK,IAAI,CAAC,UAAU;AAAA,MACxC,IAAI,KAAK;AAAA,MACT,CAAC,iBAAiB,GAAG,gBAAgB,MAAc,mBAAmB,iBAAiB;AAAA,IACzF,EAAE;AAEF,WAAO;AAAA,MACL,SAAS;AAAA,MACT;AAAA,IACF;AAAA,EACF,SAAS,GAAG;AACV,YAAQ,MAAM,qCAAqC,CAAC;AAEpD,WAAO;AAAA,MACL,SAAS;AAAA,MACT,OAAO,uBAAuB,CAAC;AAAA,IACjC;AAAA,EACF;AACF;","names":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fetchFieldLabels.d.ts","sourceRoot":"","sources":["../../../src/services/fieldLabels/fetchFieldLabels.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,kBAAkB,EAAE,OAAO,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AAmBzF,wBAAsB,gBAAgB,CACpC,QAAQ,EAAE,OAAO,EAAE,EACnB,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,CAAC,wBAAwB,CAAC,CAwFnC"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
"use server";
|
|
2
|
+
import { extractPayload } from "../../utils/payload/extractPayload";
|
|
3
|
+
import { groupFieldPathsByDocument } from "./utils/groupFieldPathsByDocument";
|
|
4
|
+
import { needsDocumentFetch } from "./utils/schemaUtils";
|
|
5
|
+
import { resolveFieldPath } from "./utils/resolveFieldPath";
|
|
6
|
+
async function fetchFieldLabels(comments, options) {
|
|
7
|
+
const registry = {};
|
|
8
|
+
const payload = await extractPayload(options?.payload);
|
|
9
|
+
const fieldPathsMap = groupFieldPathsByDocument(comments);
|
|
10
|
+
const collections = payload.collections;
|
|
11
|
+
for (const [slug, fieldPathsMapByDocument] of fieldPathsMap.entries()) {
|
|
12
|
+
const collectionConfig = collections[slug]?.config;
|
|
13
|
+
if (!collectionConfig) continue;
|
|
14
|
+
const schemaFields = collectionConfig.fields;
|
|
15
|
+
for (const [documentId, fieldPathsSet] of fieldPathsMapByDocument.entries()) {
|
|
16
|
+
const fieldPaths = Array.from(fieldPathsSet);
|
|
17
|
+
if (!fieldPaths.length) continue;
|
|
18
|
+
let docData = null;
|
|
19
|
+
if (needsDocumentFetch(fieldPaths, schemaFields)) {
|
|
20
|
+
try {
|
|
21
|
+
const doc = await payload.findByID({
|
|
22
|
+
collection: slug,
|
|
23
|
+
id: documentId,
|
|
24
|
+
overrideAccess: true,
|
|
25
|
+
depth: 5
|
|
26
|
+
});
|
|
27
|
+
docData = doc;
|
|
28
|
+
} catch {
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
registry[slug] ??= {};
|
|
32
|
+
registry[slug][documentId] ??= {};
|
|
33
|
+
const documentRegistry = registry[slug][documentId];
|
|
34
|
+
for (const fieldPath of fieldPaths) {
|
|
35
|
+
if (!fieldPath) continue;
|
|
36
|
+
documentRegistry[fieldPath] = resolveFieldPath(fieldPath.split("."), schemaFields, docData);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
const globalFieldPathsMap = /* @__PURE__ */ new Map();
|
|
41
|
+
for (const { globalSlug, fieldPath } of comments) {
|
|
42
|
+
if (!globalSlug || !fieldPath) continue;
|
|
43
|
+
if (!globalFieldPathsMap.has(globalSlug)) globalFieldPathsMap.set(globalSlug, /* @__PURE__ */ new Set());
|
|
44
|
+
globalFieldPathsMap.get(globalSlug).add(fieldPath);
|
|
45
|
+
}
|
|
46
|
+
const globals = payload.globals;
|
|
47
|
+
for (const [slug, fieldPathsSet] of globalFieldPathsMap.entries()) {
|
|
48
|
+
const globalConfig = globals?.[slug]?.config;
|
|
49
|
+
if (!globalConfig) continue;
|
|
50
|
+
const schemaFields = globalConfig.fields;
|
|
51
|
+
const fieldPaths = Array.from(fieldPathsSet);
|
|
52
|
+
if (!fieldPaths.length) continue;
|
|
53
|
+
let docData = null;
|
|
54
|
+
if (needsDocumentFetch(fieldPaths, schemaFields)) {
|
|
55
|
+
try {
|
|
56
|
+
const doc = await payload.findGlobal({ slug, overrideAccess: true, depth: 5 });
|
|
57
|
+
docData = doc;
|
|
58
|
+
} catch {
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
registry[slug] ??= {};
|
|
62
|
+
registry[slug][0] ??= {};
|
|
63
|
+
const documentRegistry = registry[slug][0];
|
|
64
|
+
for (const fieldPath of fieldPaths) {
|
|
65
|
+
if (!fieldPath) continue;
|
|
66
|
+
documentRegistry[fieldPath] = resolveFieldPath(fieldPath.split("."), schemaFields, docData);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
return registry;
|
|
70
|
+
}
|
|
71
|
+
export {
|
|
72
|
+
fetchFieldLabels
|
|
73
|
+
};
|
|
74
|
+
//# sourceMappingURL=fetchFieldLabels.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/services/fieldLabels/fetchFieldLabels.ts"],"sourcesContent":["\"use server\";\n\nimport type { CollectionSlug, Field } from \"payload\";\nimport type { BaseServiceOptions, Comment, GlobalFieldLabelRegistry } from \"../../types\";\nimport { extractPayload } from \"../../utils/payload/extractPayload\";\nimport { groupFieldPathsByDocument } from \"./utils/groupFieldPathsByDocument\";\nimport { needsDocumentFetch } from \"./utils/schemaUtils\";\nimport { resolveFieldPath } from \"./utils/resolveFieldPath\";\n\ntype BasePayloadCollections = Record<\n string,\n {\n config: {\n fields: Field[];\n };\n }\n>;\n\ntype BaseGlobals = Record<string, { config: { fields: Field[] } }>;\n\ntype BaseDocumentData = Record<string, unknown>;\n\nexport async function fetchFieldLabels(\n comments: Comment[],\n options?: BaseServiceOptions,\n): Promise<GlobalFieldLabelRegistry> {\n const registry: GlobalFieldLabelRegistry = {};\n\n const payload = await extractPayload(options?.payload);\n\n // --- Collections branch ---\n const fieldPathsMap = groupFieldPathsByDocument(comments);\n const collections = payload.collections as BasePayloadCollections;\n\n for (const [slug, fieldPathsMapByDocument] of fieldPathsMap.entries()) {\n const collectionConfig = collections[slug]?.config;\n if (!collectionConfig) continue;\n\n const schemaFields = collectionConfig.fields;\n\n for (const [documentId, fieldPathsSet] of fieldPathsMapByDocument.entries()) {\n const fieldPaths = Array.from(fieldPathsSet);\n if (!fieldPaths.length) continue;\n\n let docData: BaseDocumentData | null = null;\n\n if (needsDocumentFetch(fieldPaths, schemaFields)) {\n try {\n const doc = await payload.findByID({\n collection: slug as CollectionSlug,\n id: documentId,\n overrideAccess: true,\n depth: 5,\n });\n\n docData = doc as unknown as BaseDocumentData;\n } catch {}\n }\n\n registry[slug] ??= {};\n registry[slug][documentId] ??= {};\n\n const documentRegistry = registry[slug][documentId];\n\n for (const fieldPath of fieldPaths) {\n if (!fieldPath) continue;\n\n documentRegistry[fieldPath] = resolveFieldPath(fieldPath.split(\".\"), schemaFields, docData);\n }\n }\n }\n\n // --- Globals branch ---\n const globalFieldPathsMap = new Map<string, Set<string>>();\n\n for (const { globalSlug, fieldPath } of comments) {\n if (!globalSlug || !fieldPath) continue;\n if (!globalFieldPathsMap.has(globalSlug)) globalFieldPathsMap.set(globalSlug, new Set());\n globalFieldPathsMap.get(globalSlug)!.add(fieldPath);\n }\n\n const globals = (payload as any).globals as BaseGlobals;\n\n for (const [slug, fieldPathsSet] of globalFieldPathsMap.entries()) {\n const globalConfig = globals?.[slug]?.config;\n if (!globalConfig) continue;\n\n const schemaFields = globalConfig.fields;\n const fieldPaths = Array.from(fieldPathsSet);\n if (!fieldPaths.length) continue;\n\n let docData: BaseDocumentData | null = null;\n\n if (needsDocumentFetch(fieldPaths, schemaFields)) {\n try {\n const doc = await payload.findGlobal({ slug, overrideAccess: true, depth: 5 });\n docData = doc as unknown as BaseDocumentData;\n } catch {}\n }\n\n // Use globalSlug as the first key and sentinel 0 as documentId\n registry[slug] ??= {};\n registry[slug][0] ??= {};\n\n const documentRegistry = registry[slug][0];\n\n for (const fieldPath of fieldPaths) {\n if (!fieldPath) continue;\n documentRegistry[fieldPath] = resolveFieldPath(fieldPath.split(\".\"), schemaFields, docData);\n }\n }\n\n return registry;\n}\n"],"mappings":";AAIA,SAAS,sBAAsB;AAC/B,SAAS,iCAAiC;AAC1C,SAAS,0BAA0B;AACnC,SAAS,wBAAwB;AAejC,eAAsB,iBACpB,UACA,SACmC;AACnC,QAAM,WAAqC,CAAC;AAE5C,QAAM,UAAU,MAAM,eAAe,SAAS,OAAO;AAGrD,QAAM,gBAAgB,0BAA0B,QAAQ;AACxD,QAAM,cAAc,QAAQ;AAE5B,aAAW,CAAC,MAAM,uBAAuB,KAAK,cAAc,QAAQ,GAAG;AACrE,UAAM,mBAAmB,YAAY,IAAI,GAAG;AAC5C,QAAI,CAAC,iBAAkB;AAEvB,UAAM,eAAe,iBAAiB;AAEtC,eAAW,CAAC,YAAY,aAAa,KAAK,wBAAwB,QAAQ,GAAG;AAC3E,YAAM,aAAa,MAAM,KAAK,aAAa;AAC3C,UAAI,CAAC,WAAW,OAAQ;AAExB,UAAI,UAAmC;AAEvC,UAAI,mBAAmB,YAAY,YAAY,GAAG;AAChD,YAAI;AACF,gBAAM,MAAM,MAAM,QAAQ,SAAS;AAAA,YACjC,YAAY;AAAA,YACZ,IAAI;AAAA,YACJ,gBAAgB;AAAA,YAChB,OAAO;AAAA,UACT,CAAC;AAED,oBAAU;AAAA,QACZ,QAAQ;AAAA,QAAC;AAAA,MACX;AAEA,eAAS,IAAI,MAAM,CAAC;AACpB,eAAS,IAAI,EAAE,UAAU,MAAM,CAAC;AAEhC,YAAM,mBAAmB,SAAS,IAAI,EAAE,UAAU;AAElD,iBAAW,aAAa,YAAY;AAClC,YAAI,CAAC,UAAW;AAEhB,yBAAiB,SAAS,IAAI,iBAAiB,UAAU,MAAM,GAAG,GAAG,cAAc,OAAO;AAAA,MAC5F;AAAA,IACF;AAAA,EACF;AAGA,QAAM,sBAAsB,oBAAI,IAAyB;AAEzD,aAAW,EAAE,YAAY,UAAU,KAAK,UAAU;AAChD,QAAI,CAAC,cAAc,CAAC,UAAW;AAC/B,QAAI,CAAC,oBAAoB,IAAI,UAAU,EAAG,qBAAoB,IAAI,YAAY,oBAAI,IAAI,CAAC;AACvF,wBAAoB,IAAI,UAAU,EAAG,IAAI,SAAS;AAAA,EACpD;AAEA,QAAM,UAAW,QAAgB;AAEjC,aAAW,CAAC,MAAM,aAAa,KAAK,oBAAoB,QAAQ,GAAG;AACjE,UAAM,eAAe,UAAU,IAAI,GAAG;AACtC,QAAI,CAAC,aAAc;AAEnB,UAAM,eAAe,aAAa;AAClC,UAAM,aAAa,MAAM,KAAK,aAAa;AAC3C,QAAI,CAAC,WAAW,OAAQ;AAExB,QAAI,UAAmC;AAEvC,QAAI,mBAAmB,YAAY,YAAY,GAAG;AAChD,UAAI;AACF,cAAM,MAAM,MAAM,QAAQ,WAAW,EAAE,MAAM,gBAAgB,MAAM,OAAO,EAAE,CAAC;AAC7E,kBAAU;AAAA,MACZ,QAAQ;AAAA,MAAC;AAAA,IACX;AAGA,aAAS,IAAI,MAAM,CAAC;AACpB,aAAS,IAAI,EAAE,CAAC,MAAM,CAAC;AAEvB,UAAM,mBAAmB,SAAS,IAAI,EAAE,CAAC;AAEzC,eAAW,aAAa,YAAY;AAClC,UAAI,CAAC,UAAW;AAChB,uBAAiB,SAAS,IAAI,iBAAiB,UAAU,MAAM,GAAG,GAAG,cAAc,OAAO;AAAA,IAC5F;AAAA,EACF;AAEA,SAAO;AACT;","names":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"groupFieldPathsByDocument.d.ts","sourceRoot":"","sources":["../../../../src/services/fieldLabels/utils/groupFieldPathsByDocument.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAE9C,KAAK,aAAa,GAAG,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AAE3D,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,OAAO,EAAE,iBAwB5D"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
function groupFieldPathsByDocument(comments) {
|
|
2
|
+
const fieldPathsMap = /* @__PURE__ */ new Map();
|
|
3
|
+
for (const { collectionSlug, documentId, fieldPath } of comments) {
|
|
4
|
+
if (!collectionSlug || !documentId || !fieldPath) continue;
|
|
5
|
+
if (!fieldPathsMap.has(collectionSlug)) {
|
|
6
|
+
fieldPathsMap.set(collectionSlug, /* @__PURE__ */ new Map());
|
|
7
|
+
}
|
|
8
|
+
const fieldPathsMapByDocument = fieldPathsMap.get(collectionSlug);
|
|
9
|
+
const docId = Number(documentId);
|
|
10
|
+
if (!fieldPathsMapByDocument.has(docId)) {
|
|
11
|
+
fieldPathsMapByDocument.set(docId, /* @__PURE__ */ new Set());
|
|
12
|
+
}
|
|
13
|
+
const fieldPaths = fieldPathsMapByDocument.get(docId);
|
|
14
|
+
fieldPaths.add(fieldPath);
|
|
15
|
+
}
|
|
16
|
+
return fieldPathsMap;
|
|
17
|
+
}
|
|
18
|
+
export {
|
|
19
|
+
groupFieldPathsByDocument
|
|
20
|
+
};
|
|
21
|
+
//# sourceMappingURL=groupFieldPathsByDocument.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/services/fieldLabels/utils/groupFieldPathsByDocument.ts"],"sourcesContent":["import type { Comment } from \"../../../types\";\n\ntype FieldPathsMap = Map<string, Map<number, Set<string>>>;\n\nexport function groupFieldPathsByDocument(comments: Comment[]) {\n const fieldPathsMap: FieldPathsMap = new Map();\n\n for (const { collectionSlug, documentId, fieldPath } of comments) {\n if (!collectionSlug || !documentId || !fieldPath) continue;\n\n if (!fieldPathsMap.has(collectionSlug)) {\n fieldPathsMap.set(collectionSlug, new Map());\n }\n\n const fieldPathsMapByDocument = fieldPathsMap.get(collectionSlug)!;\n\n const docId = Number(documentId);\n\n if (!fieldPathsMapByDocument.has(docId)) {\n fieldPathsMapByDocument.set(docId, new Set());\n }\n\n const fieldPaths = fieldPathsMapByDocument.get(docId)!;\n\n fieldPaths.add(fieldPath);\n }\n\n return fieldPathsMap;\n}\n"],"mappings":"AAIO,SAAS,0BAA0B,UAAqB;AAC7D,QAAM,gBAA+B,oBAAI,IAAI;AAE7C,aAAW,EAAE,gBAAgB,YAAY,UAAU,KAAK,UAAU;AAChE,QAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,UAAW;AAElD,QAAI,CAAC,cAAc,IAAI,cAAc,GAAG;AACtC,oBAAc,IAAI,gBAAgB,oBAAI,IAAI,CAAC;AAAA,IAC7C;AAEA,UAAM,0BAA0B,cAAc,IAAI,cAAc;AAEhE,UAAM,QAAQ,OAAO,UAAU;AAE/B,QAAI,CAAC,wBAAwB,IAAI,KAAK,GAAG;AACvC,8BAAwB,IAAI,OAAO,oBAAI,IAAI,CAAC;AAAA,IAC9C;AAEA,UAAM,aAAa,wBAAwB,IAAI,KAAK;AAEpD,eAAW,IAAI,SAAS;AAAA,EAC1B;AAEA,SAAO;AACT;","names":[]}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { Field } from "payload";
|
|
2
|
+
import type { FieldLabelSegment } from "../../../types";
|
|
3
|
+
export declare function resolveFieldPath(segments: string[], schemaFields: Field[], docData: Record<string, unknown> | null): FieldLabelSegment[];
|
|
4
|
+
//# sourceMappingURL=resolveFieldPath.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resolveFieldPath.d.ts","sourceRoot":"","sources":["../../../../src/services/fieldLabels/utils/resolveFieldPath.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAA6C,KAAK,EAAmC,MAAM,SAAS,CAAC;AACjH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAGxD,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,MAAM,EAAE,EAClB,YAAY,EAAE,KAAK,EAAE,EACrB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GACtC,iBAAiB,EAAE,CAmErB"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { findFieldByName, getLabelString } from "./schemaUtils";
|
|
2
|
+
function resolveFieldPath(segments, schemaFields, docData) {
|
|
3
|
+
const result = [];
|
|
4
|
+
let currentFields = schemaFields;
|
|
5
|
+
let currentData = docData;
|
|
6
|
+
let awaitingRowForField = null;
|
|
7
|
+
for (const segment of segments) {
|
|
8
|
+
if (awaitingRowForField) {
|
|
9
|
+
const rowId = segment;
|
|
10
|
+
let position = 0;
|
|
11
|
+
const parentData = currentData;
|
|
12
|
+
const fieldName = awaitingRowForField.name;
|
|
13
|
+
const arrayData = parentData?.[fieldName];
|
|
14
|
+
if (Array.isArray(arrayData)) {
|
|
15
|
+
const idx = arrayData.findIndex((item) => String(item.id) === rowId);
|
|
16
|
+
if (idx >= 0) {
|
|
17
|
+
position = idx;
|
|
18
|
+
const rowItem = arrayData[idx];
|
|
19
|
+
currentData = rowItem;
|
|
20
|
+
if (awaitingRowForField.type === "blocks") {
|
|
21
|
+
const blockType = rowItem["blockType"];
|
|
22
|
+
if (blockType) {
|
|
23
|
+
const blockConfig = awaitingRowForField.blocks.find((b) => b.slug === blockType);
|
|
24
|
+
currentFields = blockConfig?.fields ?? [];
|
|
25
|
+
} else {
|
|
26
|
+
currentFields = [];
|
|
27
|
+
}
|
|
28
|
+
} else {
|
|
29
|
+
currentFields = awaitingRowForField.fields;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
result.push({ type: "row", id: rowId, position });
|
|
34
|
+
awaitingRowForField = null;
|
|
35
|
+
} else {
|
|
36
|
+
const field = findFieldByName(currentFields, segment);
|
|
37
|
+
if (!field) {
|
|
38
|
+
result.push({ type: "field", label: segment });
|
|
39
|
+
currentFields = [];
|
|
40
|
+
continue;
|
|
41
|
+
}
|
|
42
|
+
result.push({ type: "field", label: getLabelString(field) });
|
|
43
|
+
if (field.type === "array") {
|
|
44
|
+
awaitingRowForField = field;
|
|
45
|
+
} else if (field.type === "blocks") {
|
|
46
|
+
awaitingRowForField = field;
|
|
47
|
+
} else if (field.type === "group") {
|
|
48
|
+
currentFields = field.fields;
|
|
49
|
+
if (currentData && typeof currentData === "object") {
|
|
50
|
+
currentData = currentData[segment];
|
|
51
|
+
}
|
|
52
|
+
} else if (field.type === "tabs") {
|
|
53
|
+
currentFields = field.tabs.flatMap((t) => t.fields ?? []);
|
|
54
|
+
} else if (field.type === "collapsible" || field.type === "row") {
|
|
55
|
+
currentFields = field.fields;
|
|
56
|
+
} else {
|
|
57
|
+
currentFields = [];
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
return result;
|
|
62
|
+
}
|
|
63
|
+
export {
|
|
64
|
+
resolveFieldPath
|
|
65
|
+
};
|
|
66
|
+
//# sourceMappingURL=resolveFieldPath.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/services/fieldLabels/utils/resolveFieldPath.ts"],"sourcesContent":["import type { ArrayField, BlocksField, CollapsibleField, Field, GroupField, RowField, TabsField } from \"payload\";\nimport type { FieldLabelSegment } from \"../../../types\";\nimport { findFieldByName, getLabelString } from \"./schemaUtils\";\n\nexport function resolveFieldPath(\n segments: string[],\n schemaFields: Field[],\n docData: Record<string, unknown> | null,\n): FieldLabelSegment[] {\n const result: FieldLabelSegment[] = [];\n let currentFields: Field[] = schemaFields;\n let currentData: unknown = docData;\n let awaitingRowForField: (ArrayField | BlocksField) | null = null;\n\n for (const segment of segments) {\n if (awaitingRowForField) {\n const rowId = segment;\n let position = 0;\n const parentData = currentData as Record<string, unknown> | null;\n const fieldName = (awaitingRowForField as { name: string }).name;\n const arrayData = parentData?.[fieldName];\n\n if (Array.isArray(arrayData)) {\n const idx = arrayData.findIndex((item: unknown) => String((item as { id?: unknown }).id) === rowId);\n if (idx >= 0) {\n position = idx;\n const rowItem = arrayData[idx] as Record<string, unknown>;\n currentData = rowItem;\n\n if (awaitingRowForField.type === \"blocks\") {\n const blockType = rowItem[\"blockType\"] as string | undefined;\n if (blockType) {\n const blockConfig = (awaitingRowForField as BlocksField).blocks.find((b) => b.slug === blockType);\n currentFields = blockConfig?.fields ?? [];\n } else {\n currentFields = [];\n }\n } else {\n currentFields = (awaitingRowForField as ArrayField).fields;\n }\n }\n }\n\n result.push({ type: \"row\", id: rowId, position });\n awaitingRowForField = null;\n } else {\n const field = findFieldByName(currentFields, segment);\n if (!field) {\n result.push({ type: \"field\", label: segment });\n currentFields = [];\n continue;\n }\n\n result.push({ type: \"field\", label: getLabelString(field) });\n\n if (field.type === \"array\") {\n awaitingRowForField = field as ArrayField;\n } else if (field.type === \"blocks\") {\n awaitingRowForField = field as BlocksField;\n } else if (field.type === \"group\") {\n currentFields = (field as GroupField).fields;\n if (currentData && typeof currentData === \"object\") {\n currentData = (currentData as Record<string, unknown>)[segment];\n }\n } else if (field.type === \"tabs\") {\n currentFields = (field as TabsField).tabs.flatMap((t) => t.fields ?? []);\n } else if (field.type === \"collapsible\" || field.type === \"row\") {\n currentFields = (field as CollapsibleField | RowField).fields;\n } else {\n currentFields = [];\n }\n }\n }\n\n return result;\n}\n"],"mappings":"AAEA,SAAS,iBAAiB,sBAAsB;AAEzC,SAAS,iBACd,UACA,cACA,SACqB;AACrB,QAAM,SAA8B,CAAC;AACrC,MAAI,gBAAyB;AAC7B,MAAI,cAAuB;AAC3B,MAAI,sBAAyD;AAE7D,aAAW,WAAW,UAAU;AAC9B,QAAI,qBAAqB;AACvB,YAAM,QAAQ;AACd,UAAI,WAAW;AACf,YAAM,aAAa;AACnB,YAAM,YAAa,oBAAyC;AAC5D,YAAM,YAAY,aAAa,SAAS;AAExC,UAAI,MAAM,QAAQ,SAAS,GAAG;AAC5B,cAAM,MAAM,UAAU,UAAU,CAAC,SAAkB,OAAQ,KAA0B,EAAE,MAAM,KAAK;AAClG,YAAI,OAAO,GAAG;AACZ,qBAAW;AACX,gBAAM,UAAU,UAAU,GAAG;AAC7B,wBAAc;AAEd,cAAI,oBAAoB,SAAS,UAAU;AACzC,kBAAM,YAAY,QAAQ,WAAW;AACrC,gBAAI,WAAW;AACb,oBAAM,cAAe,oBAAoC,OAAO,KAAK,CAAC,MAAM,EAAE,SAAS,SAAS;AAChG,8BAAgB,aAAa,UAAU,CAAC;AAAA,YAC1C,OAAO;AACL,8BAAgB,CAAC;AAAA,YACnB;AAAA,UACF,OAAO;AACL,4BAAiB,oBAAmC;AAAA,UACtD;AAAA,QACF;AAAA,MACF;AAEA,aAAO,KAAK,EAAE,MAAM,OAAO,IAAI,OAAO,SAAS,CAAC;AAChD,4BAAsB;AAAA,IACxB,OAAO;AACL,YAAM,QAAQ,gBAAgB,eAAe,OAAO;AACpD,UAAI,CAAC,OAAO;AACV,eAAO,KAAK,EAAE,MAAM,SAAS,OAAO,QAAQ,CAAC;AAC7C,wBAAgB,CAAC;AACjB;AAAA,MACF;AAEA,aAAO,KAAK,EAAE,MAAM,SAAS,OAAO,eAAe,KAAK,EAAE,CAAC;AAE3D,UAAI,MAAM,SAAS,SAAS;AAC1B,8BAAsB;AAAA,MACxB,WAAW,MAAM,SAAS,UAAU;AAClC,8BAAsB;AAAA,MACxB,WAAW,MAAM,SAAS,SAAS;AACjC,wBAAiB,MAAqB;AACtC,YAAI,eAAe,OAAO,gBAAgB,UAAU;AAClD,wBAAe,YAAwC,OAAO;AAAA,QAChE;AAAA,MACF,WAAW,MAAM,SAAS,QAAQ;AAChC,wBAAiB,MAAoB,KAAK,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;AAAA,MACzE,WAAW,MAAM,SAAS,iBAAiB,MAAM,SAAS,OAAO;AAC/D,wBAAiB,MAAsC;AAAA,MACzD,OAAO;AACL,wBAAgB,CAAC;AAAA,MACnB;AAAA,IACF;AAAA,EACF;AAEA,SAAO;AACT;","names":[]}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { Field } from "payload";
|
|
2
|
+
export declare function flattenFields(fields: Field[]): Field[];
|
|
3
|
+
export declare function findFieldByName(fields: Field[], name: string): Field | undefined;
|
|
4
|
+
export declare function getLabelString(field: Field): string;
|
|
5
|
+
export declare function needsDocumentFetch(fieldPaths: string[], schemaFields: Field[]): boolean;
|
|
6
|
+
//# sourceMappingURL=schemaUtils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schemaUtils.d.ts","sourceRoot":"","sources":["../../../../src/services/fieldLabels/utils/schemaUtils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAgC,KAAK,EAAmC,MAAM,SAAS,CAAC;AAEpG,wBAAgB,aAAa,CAAC,MAAM,EAAE,KAAK,EAAE,WAc5C;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,KAAK,GAAG,SAAS,CAEhF;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,KAAK,UAgB1C;AAED,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,GAAG,OAAO,CA+BvF"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
function flattenFields(fields) {
|
|
2
|
+
const result = [];
|
|
3
|
+
for (const field of fields) {
|
|
4
|
+
if ("name" in field) {
|
|
5
|
+
result.push(field);
|
|
6
|
+
} else if (field.type === "tabs") {
|
|
7
|
+
result.push(...flattenFields(field.tabs.flatMap((t) => t.fields ?? [])));
|
|
8
|
+
} else if (field.type === "collapsible" || field.type === "row") {
|
|
9
|
+
result.push(...flattenFields(field.fields));
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
return result;
|
|
13
|
+
}
|
|
14
|
+
function findFieldByName(fields, name) {
|
|
15
|
+
return flattenFields(fields).find((field) => "name" in field && field.name === name);
|
|
16
|
+
}
|
|
17
|
+
function getLabelString(field) {
|
|
18
|
+
const f = field;
|
|
19
|
+
if (typeof f.label === "string") return f.label;
|
|
20
|
+
if (f.label && typeof f.label === "object") {
|
|
21
|
+
const loc = f.label;
|
|
22
|
+
const val = loc["en"] ?? Object.values(loc)[0];
|
|
23
|
+
if (typeof val === "string") return val;
|
|
24
|
+
}
|
|
25
|
+
return f.name ?? "";
|
|
26
|
+
}
|
|
27
|
+
function needsDocumentFetch(fieldPaths, schemaFields) {
|
|
28
|
+
for (const path of fieldPaths) {
|
|
29
|
+
let fields = schemaFields;
|
|
30
|
+
let expectingRowId = false;
|
|
31
|
+
for (const segment of path.split(".")) {
|
|
32
|
+
if (expectingRowId) return true;
|
|
33
|
+
const field = findFieldByName(fields, segment);
|
|
34
|
+
if (!field) break;
|
|
35
|
+
if (field.type === "array") {
|
|
36
|
+
expectingRowId = true;
|
|
37
|
+
fields = field.fields;
|
|
38
|
+
} else if (field.type === "blocks") {
|
|
39
|
+
expectingRowId = true;
|
|
40
|
+
fields = [];
|
|
41
|
+
} else if (field.type === "group") {
|
|
42
|
+
fields = field.fields;
|
|
43
|
+
} else if (field.type === "tabs") {
|
|
44
|
+
fields = field.tabs.flatMap((t) => t.fields ?? []);
|
|
45
|
+
} else if (field.type === "collapsible" || field.type === "row") {
|
|
46
|
+
fields = field.fields;
|
|
47
|
+
} else {
|
|
48
|
+
fields = [];
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
return false;
|
|
53
|
+
}
|
|
54
|
+
export {
|
|
55
|
+
findFieldByName,
|
|
56
|
+
flattenFields,
|
|
57
|
+
getLabelString,
|
|
58
|
+
needsDocumentFetch
|
|
59
|
+
};
|
|
60
|
+
//# sourceMappingURL=schemaUtils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/services/fieldLabels/utils/schemaUtils.ts"],"sourcesContent":["import type { ArrayField, CollapsibleField, Field, GroupField, RowField, TabsField } from \"payload\";\n\nexport function flattenFields(fields: Field[]) {\n const result: Field[] = [];\n\n for (const field of fields) {\n if (\"name\" in field) {\n result.push(field);\n } else if (field.type === \"tabs\") {\n result.push(...flattenFields((field as TabsField).tabs.flatMap((t) => t.fields ?? [])));\n } else if (field.type === \"collapsible\" || field.type === \"row\") {\n result.push(...flattenFields((field as CollapsibleField | RowField).fields));\n }\n }\n\n return result;\n}\n\nexport function findFieldByName(fields: Field[], name: string): Field | undefined {\n return flattenFields(fields).find((field) => \"name\" in field && (field as { name: string }).name === name);\n}\n\nexport function getLabelString(field: Field) {\n const f = field as {\n name?: string;\n label?: unknown;\n };\n\n if (typeof f.label === \"string\") return f.label;\n\n if (f.label && typeof f.label === \"object\") {\n const loc = f.label as Record<string, unknown>;\n const val = loc[\"en\"] ?? Object.values(loc)[0];\n\n if (typeof val === \"string\") return val;\n }\n\n return f.name ?? \"\";\n}\n\nexport function needsDocumentFetch(fieldPaths: string[], schemaFields: Field[]): boolean {\n for (const path of fieldPaths) {\n let fields = schemaFields;\n\n let expectingRowId = false;\n\n for (const segment of path.split(\".\")) {\n if (expectingRowId) return true;\n\n const field = findFieldByName(fields, segment);\n\n if (!field) break;\n\n if (field.type === \"array\") {\n expectingRowId = true;\n fields = (field as ArrayField).fields;\n } else if (field.type === \"blocks\") {\n expectingRowId = true;\n fields = [];\n } else if (field.type === \"group\") {\n fields = (field as GroupField).fields;\n } else if (field.type === \"tabs\") {\n fields = (field as TabsField).tabs.flatMap((t) => t.fields ?? []);\n } else if (field.type === \"collapsible\" || field.type === \"row\") {\n fields = (field as CollapsibleField | RowField).fields;\n } else {\n fields = [];\n }\n }\n }\n return false;\n}\n"],"mappings":"AAEO,SAAS,cAAc,QAAiB;AAC7C,QAAM,SAAkB,CAAC;AAEzB,aAAW,SAAS,QAAQ;AAC1B,QAAI,UAAU,OAAO;AACnB,aAAO,KAAK,KAAK;AAAA,IACnB,WAAW,MAAM,SAAS,QAAQ;AAChC,aAAO,KAAK,GAAG,cAAe,MAAoB,KAAK,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC;AAAA,IACxF,WAAW,MAAM,SAAS,iBAAiB,MAAM,SAAS,OAAO;AAC/D,aAAO,KAAK,GAAG,cAAe,MAAsC,MAAM,CAAC;AAAA,IAC7E;AAAA,EACF;AAEA,SAAO;AACT;AAEO,SAAS,gBAAgB,QAAiB,MAAiC;AAChF,SAAO,cAAc,MAAM,EAAE,KAAK,CAAC,UAAU,UAAU,SAAU,MAA2B,SAAS,IAAI;AAC3G;AAEO,SAAS,eAAe,OAAc;AAC3C,QAAM,IAAI;AAKV,MAAI,OAAO,EAAE,UAAU,SAAU,QAAO,EAAE;AAE1C,MAAI,EAAE,SAAS,OAAO,EAAE,UAAU,UAAU;AAC1C,UAAM,MAAM,EAAE;AACd,UAAM,MAAM,IAAI,IAAI,KAAK,OAAO,OAAO,GAAG,EAAE,CAAC;AAE7C,QAAI,OAAO,QAAQ,SAAU,QAAO;AAAA,EACtC;AAEA,SAAO,EAAE,QAAQ;AACnB;AAEO,SAAS,mBAAmB,YAAsB,cAAgC;AACvF,aAAW,QAAQ,YAAY;AAC7B,QAAI,SAAS;AAEb,QAAI,iBAAiB;AAErB,eAAW,WAAW,KAAK,MAAM,GAAG,GAAG;AACrC,UAAI,eAAgB,QAAO;AAE3B,YAAM,QAAQ,gBAAgB,QAAQ,OAAO;AAE7C,UAAI,CAAC,MAAO;AAEZ,UAAI,MAAM,SAAS,SAAS;AAC1B,yBAAiB;AACjB,iBAAU,MAAqB;AAAA,MACjC,WAAW,MAAM,SAAS,UAAU;AAClC,yBAAiB;AACjB,iBAAS,CAAC;AAAA,MACZ,WAAW,MAAM,SAAS,SAAS;AACjC,iBAAU,MAAqB;AAAA,MACjC,WAAW,MAAM,SAAS,QAAQ;AAChC,iBAAU,MAAoB,KAAK,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;AAAA,MAClE,WAAW,MAAM,SAAS,iBAAiB,MAAM,SAAS,OAAO;AAC/D,iBAAU,MAAsC;AAAA,MAClD,OAAO;AACL,iBAAS,CAAC;AAAA,MACZ;AAAA,IACF;AAAA,EACF;AACA,SAAO;AACT;","names":[]}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { TypedUser } from "payload";
|
|
2
|
+
import type { Response, Comment, BaseServiceOptions } from "../types";
|
|
3
|
+
interface Props {
|
|
4
|
+
enabledCollections?: string[];
|
|
5
|
+
enabledGlobals?: string[];
|
|
6
|
+
user?: TypedUser | null;
|
|
7
|
+
options?: BaseServiceOptions;
|
|
8
|
+
}
|
|
9
|
+
export declare function findAllComments({ enabledCollections, enabledGlobals, options }?: Props): Promise<Response<Comment[]>>;
|
|
10
|
+
export {};
|
|
11
|
+
//# sourceMappingURL=findAllComments.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"findAllComments.d.ts","sourceRoot":"","sources":["../../src/services/findAllComments.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAS,MAAM,SAAS,CAAC;AAIhD,OAAO,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAGtE,UAAU,KAAK;IACb,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC9B,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,IAAI,CAAC,EAAE,SAAS,GAAG,IAAI,CAAC;IACxB,OAAO,CAAC,EAAE,kBAAkB,CAAC;CAC9B;AAED,wBAAsB,eAAe,CAAC,EAAE,kBAAkB,EAAE,cAAc,EAAE,OAAO,EAAE,GAAE,KAAU,GAAG,OAAO,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,CA6C/H"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use server";
|
|
2
|
+
import { extractPayload } from "../utils/payload/extractPayload";
|
|
3
|
+
import { DEFAULT_COLLECTION_SLUG } from "../constants";
|
|
4
|
+
import { getDefaultErrorMessage } from "../utils/error/getDefaultErrorMessage";
|
|
5
|
+
import { getCurrentTenantId } from "./getCurrentTenantId";
|
|
6
|
+
async function findAllComments({ enabledCollections, enabledGlobals, options } = {}) {
|
|
7
|
+
try {
|
|
8
|
+
const payload = await extractPayload(options?.payload);
|
|
9
|
+
const tenantId = await getCurrentTenantId(payload);
|
|
10
|
+
const where = {};
|
|
11
|
+
const hasCollections = (enabledCollections?.length ?? 0) > 0;
|
|
12
|
+
const hasGlobals = (enabledGlobals?.length ?? 0) > 0;
|
|
13
|
+
if (hasCollections || hasGlobals) {
|
|
14
|
+
where.or = [
|
|
15
|
+
...hasCollections ? [{ collectionSlug: { in: enabledCollections } }] : [],
|
|
16
|
+
...hasGlobals ? [{ globalSlug: { in: enabledGlobals } }] : []
|
|
17
|
+
];
|
|
18
|
+
}
|
|
19
|
+
if (tenantId) {
|
|
20
|
+
where.tenant = {
|
|
21
|
+
equals: tenantId
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
const { docs: comments } = await payload.find({
|
|
25
|
+
collection: DEFAULT_COLLECTION_SLUG,
|
|
26
|
+
where: Object.keys(where).length ? where : void 0,
|
|
27
|
+
sort: "createdAt",
|
|
28
|
+
limit: 200,
|
|
29
|
+
depth: 1,
|
|
30
|
+
overrideAccess: true
|
|
31
|
+
});
|
|
32
|
+
return {
|
|
33
|
+
success: true,
|
|
34
|
+
data: comments
|
|
35
|
+
};
|
|
36
|
+
} catch (e) {
|
|
37
|
+
console.error("findAllComments failed:", e);
|
|
38
|
+
return {
|
|
39
|
+
success: false,
|
|
40
|
+
error: getDefaultErrorMessage(e)
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
export {
|
|
45
|
+
findAllComments
|
|
46
|
+
};
|
|
47
|
+
//# sourceMappingURL=findAllComments.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/services/findAllComments.ts"],"sourcesContent":["\"use server\";\n\nimport type { TypedUser, Where } from \"payload\";\nimport { extractPayload } from \"../utils/payload/extractPayload\";\nimport { DEFAULT_COLLECTION_SLUG } from \"../constants\";\nimport { getDefaultErrorMessage } from \"../utils/error/getDefaultErrorMessage\";\nimport type { Response, Comment, BaseServiceOptions } from \"../types\";\nimport { getCurrentTenantId } from \"./getCurrentTenantId\";\n\ninterface Props {\n enabledCollections?: string[];\n enabledGlobals?: string[];\n user?: TypedUser | null;\n options?: BaseServiceOptions;\n}\n\nexport async function findAllComments({ enabledCollections, enabledGlobals, options }: Props = {}): Promise<Response<Comment[]>> {\n try {\n const payload = await extractPayload(options?.payload);\n\n const tenantId = await getCurrentTenantId(payload);\n\n const where: Where = {};\n\n const hasCollections = (enabledCollections?.length ?? 0) > 0;\n const hasGlobals = (enabledGlobals?.length ?? 0) > 0;\n\n if (hasCollections || hasGlobals) {\n where.or = [\n ...(hasCollections ? [{ collectionSlug: { in: enabledCollections } }] : []),\n ...(hasGlobals ? [{ globalSlug: { in: enabledGlobals } }] : []),\n ];\n }\n\n if (tenantId) {\n where.tenant = {\n equals: tenantId,\n };\n }\n\n const { docs: comments } = await payload.find({\n collection: DEFAULT_COLLECTION_SLUG,\n where: Object.keys(where).length ? where : undefined,\n sort: \"createdAt\",\n limit: 200,\n depth: 1,\n overrideAccess: true,\n });\n\n return {\n success: true,\n data: comments as unknown as Comment[],\n };\n } catch (e) {\n console.error(\"findAllComments failed:\", e);\n\n return {\n success: false,\n error: getDefaultErrorMessage(e),\n };\n }\n}\n"],"mappings":";AAGA,SAAS,sBAAsB;AAC/B,SAAS,+BAA+B;AACxC,SAAS,8BAA8B;AAEvC,SAAS,0BAA0B;AASnC,eAAsB,gBAAgB,EAAE,oBAAoB,gBAAgB,QAAQ,IAAW,CAAC,GAAiC;AAC/H,MAAI;AACF,UAAM,UAAU,MAAM,eAAe,SAAS,OAAO;AAErD,UAAM,WAAW,MAAM,mBAAmB,OAAO;AAEjD,UAAM,QAAe,CAAC;AAEtB,UAAM,kBAAkB,oBAAoB,UAAU,KAAK;AAC3D,UAAM,cAAc,gBAAgB,UAAU,KAAK;AAEnD,QAAI,kBAAkB,YAAY;AAChC,YAAM,KAAK;AAAA,QACT,GAAI,iBAAiB,CAAC,EAAE,gBAAgB,EAAE,IAAI,mBAAmB,EAAE,CAAC,IAAI,CAAC;AAAA,QACzE,GAAI,aAAa,CAAC,EAAE,YAAY,EAAE,IAAI,eAAe,EAAE,CAAC,IAAI,CAAC;AAAA,MAC/D;AAAA,IACF;AAEA,QAAI,UAAU;AACZ,YAAM,SAAS;AAAA,QACb,QAAQ;AAAA,MACV;AAAA,IACF;AAEA,UAAM,EAAE,MAAM,SAAS,IAAI,MAAM,QAAQ,KAAK;AAAA,MAC5C,YAAY;AAAA,MACZ,OAAO,OAAO,KAAK,KAAK,EAAE,SAAS,QAAQ;AAAA,MAC3C,MAAM;AAAA,MACN,OAAO;AAAA,MACP,OAAO;AAAA,MACP,gBAAgB;AAAA,IAClB,CAAC;AAED,WAAO;AAAA,MACL,SAAS;AAAA,MACT,MAAM;AAAA,IACR;AAAA,EACF,SAAS,GAAG;AACV,YAAQ,MAAM,2BAA2B,CAAC;AAE1C,WAAO;AAAA,MACL,SAAS;AAAA,MACT,OAAO,uBAAuB,CAAC;AAAA,IACjC;AAAA,EACF;AACF;","names":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getCurrentTenantId.d.ts","sourceRoot":"","sources":["../../src/services/getCurrentTenantId.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAKvC,wBAAsB,kBAAkB,CAAC,OAAO,EAAE,OAAO,mCAQxD"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use server";
|
|
2
|
+
import { headers as getHeaders } from "next/headers";
|
|
3
|
+
import { getTenantFromCookie } from "@payloadcms/plugin-multi-tenant/utilities";
|
|
4
|
+
async function getCurrentTenantId(payload) {
|
|
5
|
+
const pluginConfig = payload.config.admin?.custom?.commentsPlugin;
|
|
6
|
+
const tenantConfig = pluginConfig?.tenant;
|
|
7
|
+
if (!tenantConfig?.enabled) return null;
|
|
8
|
+
return getTenantFromCookie(await getHeaders(), payload.db.defaultIDType);
|
|
9
|
+
}
|
|
10
|
+
export {
|
|
11
|
+
getCurrentTenantId
|
|
12
|
+
};
|
|
13
|
+
//# sourceMappingURL=getCurrentTenantId.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/services/getCurrentTenantId.ts"],"sourcesContent":["\"use server\";\n\nimport type { Payload } from \"payload\";\nimport { headers as getHeaders } from \"next/headers\";\nimport { getTenantFromCookie } from \"@payloadcms/plugin-multi-tenant/utilities\";\nimport type { CommentsPluginConfigStorage } from \"../types\";\n\nexport async function getCurrentTenantId(payload: Payload) {\n const pluginConfig = payload.config.admin?.custom?.commentsPlugin as CommentsPluginConfigStorage | undefined;\n\n const tenantConfig = pluginConfig?.tenant;\n\n if (!tenantConfig?.enabled) return null;\n\n return getTenantFromCookie(await getHeaders(), payload.db.defaultIDType);\n}\n"],"mappings":";AAGA,SAAS,WAAW,kBAAkB;AACtC,SAAS,2BAA2B;AAGpC,eAAsB,mBAAmB,SAAkB;AACzD,QAAM,eAAe,QAAQ,OAAO,OAAO,QAAQ;AAEnD,QAAM,eAAe,cAAc;AAEnC,MAAI,CAAC,cAAc,QAAS,QAAO;AAEnC,SAAO,oBAAoB,MAAM,WAAW,GAAG,QAAQ,GAAG,aAAa;AACzE;","names":[]}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import type { Response, Comment, DocumentTitles, BaseServiceOptions } from "../types";
|
|
2
|
+
export declare function getDocumentTitles(comments: Comment[], documentTitleFields: Record<string, string>, options?: BaseServiceOptions): Promise<Response<DocumentTitles>>;
|
|
3
|
+
//# sourceMappingURL=getDocumentTitles.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getDocumentTitles.d.ts","sourceRoot":"","sources":["../../src/services/getDocumentTitles.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAgB,cAAc,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAcpG,wBAAsB,iBAAiB,CACrC,QAAQ,EAAE,OAAO,EAAE,EACnB,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC3C,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAuDnC"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
"use server";
|
|
2
|
+
import { extractPayload } from "../utils/payload/extractPayload";
|
|
3
|
+
import { getDefaultErrorMessage } from "../utils/error/getDefaultErrorMessage";
|
|
4
|
+
function buildDocumentTitlesFromDocs(docs, titleField) {
|
|
5
|
+
const result = {};
|
|
6
|
+
for (const doc of docs) {
|
|
7
|
+
const key = String(doc.id);
|
|
8
|
+
result[key] = String(doc[titleField]);
|
|
9
|
+
}
|
|
10
|
+
return result;
|
|
11
|
+
}
|
|
12
|
+
async function getDocumentTitles(comments, documentTitleFields, options) {
|
|
13
|
+
try {
|
|
14
|
+
const payload = await extractPayload(options?.payload);
|
|
15
|
+
const documentIdsMap = /* @__PURE__ */ new Map();
|
|
16
|
+
for (const { collectionSlug, documentId } of comments) {
|
|
17
|
+
if (!collectionSlug || documentId == null) continue;
|
|
18
|
+
if (!documentIdsMap.has(collectionSlug)) {
|
|
19
|
+
documentIdsMap.set(collectionSlug, /* @__PURE__ */ new Set());
|
|
20
|
+
}
|
|
21
|
+
documentIdsMap.get(collectionSlug).add(documentId);
|
|
22
|
+
}
|
|
23
|
+
const documentTitles = {};
|
|
24
|
+
await Promise.all(
|
|
25
|
+
[...documentIdsMap.entries()].map(async ([slug, ids]) => {
|
|
26
|
+
const titleField = documentTitleFields[slug] ?? "id";
|
|
27
|
+
try {
|
|
28
|
+
const { docs } = await payload.find({
|
|
29
|
+
collection: slug,
|
|
30
|
+
where: {
|
|
31
|
+
id: {
|
|
32
|
+
in: [...ids]
|
|
33
|
+
}
|
|
34
|
+
},
|
|
35
|
+
limit: ids.size,
|
|
36
|
+
depth: 0,
|
|
37
|
+
overrideAccess: true,
|
|
38
|
+
locale: options?.locale
|
|
39
|
+
});
|
|
40
|
+
documentTitles[slug] = buildDocumentTitlesFromDocs(docs, titleField);
|
|
41
|
+
} catch {
|
|
42
|
+
documentTitles[slug] = Object.fromEntries([...ids].map((id) => [String(id), String(id)]));
|
|
43
|
+
}
|
|
44
|
+
})
|
|
45
|
+
);
|
|
46
|
+
return {
|
|
47
|
+
success: true,
|
|
48
|
+
data: documentTitles
|
|
49
|
+
};
|
|
50
|
+
} catch (e) {
|
|
51
|
+
console.error(`Failed to fetch document titles`, e);
|
|
52
|
+
return {
|
|
53
|
+
success: false,
|
|
54
|
+
error: getDefaultErrorMessage(e)
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
export {
|
|
59
|
+
getDocumentTitles
|
|
60
|
+
};
|
|
61
|
+
//# sourceMappingURL=getDocumentTitles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/services/getDocumentTitles.ts"],"sourcesContent":["\"use server\";\n\nimport type { CollectionSlug } from \"payload\";\nimport { extractPayload } from \"../utils/payload/extractPayload\";\nimport { getDefaultErrorMessage } from \"../utils/error/getDefaultErrorMessage\";\nimport type { Response, Comment, BaseDocument, DocumentTitles, BaseServiceOptions } from \"../types\";\n\nfunction buildDocumentTitlesFromDocs(docs: BaseDocument[], titleField: string): Record<string, string> {\n const result: Record<string, string> = {};\n\n for (const doc of docs) {\n const key = String(doc.id);\n\n result[key] = String(doc[titleField]);\n }\n\n return result;\n}\n\nexport async function getDocumentTitles(\n comments: Comment[],\n documentTitleFields: Record<string, string>,\n options?: BaseServiceOptions,\n): Promise<Response<DocumentTitles>> {\n try {\n const payload = await extractPayload(options?.payload);\n\n const documentIdsMap = new Map<string, Set<number>>();\n\n for (const { collectionSlug, documentId } of comments) {\n if (!collectionSlug || documentId == null) continue;\n\n if (!documentIdsMap.has(collectionSlug)) {\n documentIdsMap.set(collectionSlug, new Set());\n }\n\n documentIdsMap.get(collectionSlug)!.add(documentId);\n }\n\n const documentTitles: DocumentTitles = {};\n\n await Promise.all(\n [...documentIdsMap.entries()].map(async ([slug, ids]) => {\n const titleField = documentTitleFields[slug] ?? \"id\";\n\n try {\n const { docs } = await payload.find({\n collection: slug as CollectionSlug,\n where: {\n id: {\n in: [...ids],\n },\n },\n limit: ids.size,\n depth: 0,\n overrideAccess: true,\n locale: options?.locale,\n });\n\n documentTitles[slug] = buildDocumentTitlesFromDocs(docs as unknown as BaseDocument[], titleField);\n } catch {\n documentTitles[slug] = Object.fromEntries([...ids].map((id) => [String(id), String(id)]));\n }\n }),\n );\n\n return {\n success: true,\n data: documentTitles,\n };\n } catch (e) {\n console.error(`Failed to fetch document titles`, e);\n\n return {\n success: false,\n error: getDefaultErrorMessage(e),\n };\n }\n}\n"],"mappings":";AAGA,SAAS,sBAAsB;AAC/B,SAAS,8BAA8B;AAGvC,SAAS,4BAA4B,MAAsB,YAA4C;AACrG,QAAM,SAAiC,CAAC;AAExC,aAAW,OAAO,MAAM;AACtB,UAAM,MAAM,OAAO,IAAI,EAAE;AAEzB,WAAO,GAAG,IAAI,OAAO,IAAI,UAAU,CAAC;AAAA,EACtC;AAEA,SAAO;AACT;AAEA,eAAsB,kBACpB,UACA,qBACA,SACmC;AACnC,MAAI;AACF,UAAM,UAAU,MAAM,eAAe,SAAS,OAAO;AAErD,UAAM,iBAAiB,oBAAI,IAAyB;AAEpD,eAAW,EAAE,gBAAgB,WAAW,KAAK,UAAU;AACrD,UAAI,CAAC,kBAAkB,cAAc,KAAM;AAE3C,UAAI,CAAC,eAAe,IAAI,cAAc,GAAG;AACvC,uBAAe,IAAI,gBAAgB,oBAAI,IAAI,CAAC;AAAA,MAC9C;AAEA,qBAAe,IAAI,cAAc,EAAG,IAAI,UAAU;AAAA,IACpD;AAEA,UAAM,iBAAiC,CAAC;AAExC,UAAM,QAAQ;AAAA,MACZ,CAAC,GAAG,eAAe,QAAQ,CAAC,EAAE,IAAI,OAAO,CAAC,MAAM,GAAG,MAAM;AACvD,cAAM,aAAa,oBAAoB,IAAI,KAAK;AAEhD,YAAI;AACF,gBAAM,EAAE,KAAK,IAAI,MAAM,QAAQ,KAAK;AAAA,YAClC,YAAY;AAAA,YACZ,OAAO;AAAA,cACL,IAAI;AAAA,gBACF,IAAI,CAAC,GAAG,GAAG;AAAA,cACb;AAAA,YACF;AAAA,YACA,OAAO,IAAI;AAAA,YACX,OAAO;AAAA,YACP,gBAAgB;AAAA,YAChB,QAAQ,SAAS;AAAA,UACnB,CAAC;AAED,yBAAe,IAAI,IAAI,4BAA4B,MAAmC,UAAU;AAAA,QAClG,QAAQ;AACN,yBAAe,IAAI,IAAI,OAAO,YAAY,CAAC,GAAG,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC,CAAC;AAAA,QAC1F;AAAA,MACF,CAAC;AAAA,IACH;AAEA,WAAO;AAAA,MACL,SAAS;AAAA,MACT,MAAM;AAAA,IACR;AAAA,EACF,SAAS,GAAG;AACV,YAAQ,MAAM,mCAAmC,CAAC;AAElD,WAAO;AAAA,MACL,SAAS;AAAA,MACT,OAAO,uBAAuB,CAAC;AAAA,IACjC;AAAA,EACF;AACF;","names":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getEntitiesLabels.d.ts","sourceRoot":"","sources":["../../src/services/getEntitiesLabels.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAE9D,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,YAAY,EAAE,EAAE,YAAY,EAAE,MAAM,EAAE,mBAajF"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
function getEntitiesLabels(entities, enabledSlugs) {
|
|
2
|
+
const slugSet = new Set(enabledSlugs);
|
|
3
|
+
const result = {};
|
|
4
|
+
for (const entity of entities) {
|
|
5
|
+
if (!slugSet.has(entity.slug)) continue;
|
|
6
|
+
const rawLabel = "labels" in entity ? entity.labels?.plural : entity.label;
|
|
7
|
+
result[entity.slug] = typeof rawLabel === "function" || rawLabel === void 0 ? entity.slug : rawLabel;
|
|
8
|
+
}
|
|
9
|
+
return result;
|
|
10
|
+
}
|
|
11
|
+
export {
|
|
12
|
+
getEntitiesLabels
|
|
13
|
+
};
|
|
14
|
+
//# sourceMappingURL=getEntitiesLabels.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/services/getEntitiesLabels.ts"],"sourcesContent":["import type { EntityLabelsMap, EntityConfig } from \"../types\";\n\nexport function getEntitiesLabels(entities: EntityConfig[], enabledSlugs: string[]) {\n const slugSet = new Set(enabledSlugs);\n const result: EntityLabelsMap = {};\n\n for (const entity of entities) {\n if (!slugSet.has(entity.slug)) continue;\n\n const rawLabel = \"labels\" in entity ? entity.labels?.plural : entity.label;\n\n result[entity.slug] = typeof rawLabel === \"function\" || rawLabel === undefined ? entity.slug : rawLabel;\n }\n\n return result;\n}\n"],"mappings":"AAEO,SAAS,kBAAkB,UAA0B,cAAwB;AAClF,QAAM,UAAU,IAAI,IAAI,YAAY;AACpC,QAAM,SAA0B,CAAC;AAEjC,aAAW,UAAU,UAAU;AAC7B,QAAI,CAAC,QAAQ,IAAI,OAAO,IAAI,EAAG;AAE/B,UAAM,WAAW,YAAY,SAAS,OAAO,QAAQ,SAAS,OAAO;AAErE,WAAO,OAAO,IAAI,IAAI,OAAO,aAAa,cAAc,aAAa,SAAY,OAAO,OAAO;AAAA,EACjG;AAEA,SAAO;AACT;","names":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resolveComment.d.ts","sourceRoot":"","sources":["../../src/services/resolveComment.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAMtE,wBAAsB,cAAc,CAClC,EAAE,EAAE,MAAM,GAAG,MAAM,EACnB,QAAQ,EAAE,OAAO,EACjB,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAkC5B"}
|