logo

pleroma

My custom branche(s) on git.pleroma.social/pleroma/pleroma git clone https://hacktivis.me/git/pleroma.git

constants.ex (2213B)


  1. # Pleroma: A lightweight social networking server
  2. # Copyright © 2017-2022 Pleroma Authors <https://pleroma.social/>
  3. # SPDX-License-Identifier: AGPL-3.0-only
  4. defmodule Pleroma.Constants do
  5. use Const
  6. const(as_public, do: "https://www.w3.org/ns/activitystreams#Public")
  7. const(object_internal_fields,
  8. do: [
  9. "reactions",
  10. "reaction_count",
  11. "likes",
  12. "like_count",
  13. "announcements",
  14. "announcement_count",
  15. "emoji",
  16. "context_id",
  17. "deleted_activity_id",
  18. "pleroma_internal",
  19. "generator"
  20. ]
  21. )
  22. const(static_only_files,
  23. do:
  24. ~w(index.html robots.txt static static-fe finmoji emoji packs sounds images instance sw.js sw-pleroma.js favicon.png schemas doc embed.js embed.css)
  25. )
  26. const(status_updatable_fields,
  27. do: [
  28. "source",
  29. "tag",
  30. "updated",
  31. "emoji",
  32. "content",
  33. "summary",
  34. "sensitive",
  35. "attachment",
  36. "generator"
  37. ]
  38. )
  39. const(status_object_types,
  40. do: [
  41. "Note",
  42. "Question",
  43. "Audio",
  44. "Video",
  45. "Event",
  46. "Article",
  47. "Page"
  48. ]
  49. )
  50. const(updatable_object_types,
  51. do: [
  52. "Note",
  53. "Question",
  54. "Audio",
  55. "Video",
  56. "Event",
  57. "Article",
  58. "Page"
  59. ]
  60. )
  61. const(actor_types,
  62. do: [
  63. "Application",
  64. "Group",
  65. "Organization",
  66. "Person",
  67. "Service"
  68. ]
  69. )
  70. const(allowed_user_actor_types,
  71. do: [
  72. "Person",
  73. "Service",
  74. "Group"
  75. ]
  76. )
  77. # basic regex, just there to weed out potential mistakes
  78. # https://datatracker.ietf.org/doc/html/rfc2045#section-5.1
  79. const(mime_regex,
  80. do: ~r/^[^[:cntrl:] ()<>@,;:\\"\/\[\]?=]+\/[^[:cntrl:] ()<>@,;:\\"\/\[\]?=]+(; .*)?$/
  81. )
  82. const(upload_object_types, do: ["Document", "Image"])
  83. const(activity_json_canonical_mime_type,
  84. do: "application/ld+json; profile=\"https://www.w3.org/ns/activitystreams\""
  85. )
  86. const(activity_json_mime_types,
  87. do: [
  88. "application/ld+json; profile=\"https://www.w3.org/ns/activitystreams\"",
  89. "application/activity+json"
  90. ]
  91. )
  92. const(public_streams,
  93. do: ["public", "public:local", "public:media", "public:local:media"]
  94. )
  95. end