28 lines
915 B
Python
28 lines
915 B
Python
# Copyright (c) 2023-present Plane Software, Inc. and contributors
|
|
# SPDX-License-Identifier: AGPL-3.0-only
|
|
# See the LICENSE file for details.
|
|
|
|
# Module imports
|
|
from .base import BaseSerializer
|
|
from .user import UserLiteSerializer
|
|
from plane.db.models import Notification, UserNotificationPreference
|
|
|
|
# Third Party imports
|
|
from rest_framework import serializers
|
|
|
|
|
|
class NotificationSerializer(BaseSerializer):
|
|
triggered_by_details = UserLiteSerializer(read_only=True, source="triggered_by")
|
|
is_inbox_issue = serializers.BooleanField(read_only=True)
|
|
is_intake_issue = serializers.BooleanField(read_only=True)
|
|
is_mentioned_notification = serializers.BooleanField(read_only=True)
|
|
|
|
class Meta:
|
|
model = Notification
|
|
fields = "__all__"
|
|
|
|
|
|
class UserNotificationPreferenceSerializer(BaseSerializer):
|
|
class Meta:
|
|
model = UserNotificationPreference
|
|
fields = "__all__"
|