a tool for shared writing and social publishing
298
fork

Configure Feed

Select the types of activity you want to include in your feed.

at main 399 lines 15 kB view raw
1import { relations } from "drizzle-orm/relations"; 2import { identities, notifications, publications, documents, comments_on_documents, bsky_profiles, entity_sets, entities, facts, email_auth_tokens, recommends_on_documents, poll_votes_on_entity, permission_tokens, user_subscriptions, phone_rsvps_to_entity, site_standard_publications, custom_domains, custom_domain_routes, site_standard_documents, email_subscriptions_to_entity, atp_poll_records, atp_poll_votes, bsky_follows, subscribers_to_publications, site_standard_documents_in_publications, documents_in_publications, document_mentions_in_bsky, bsky_posts, permission_token_on_homepage, publication_domains, publication_subscriptions, site_standard_subscriptions, user_entitlements, permission_token_rights, leaflets_to_documents, leaflets_in_publications } from "./schema"; 3 4export const notificationsRelations = relations(notifications, ({one}) => ({ 5 identity: one(identities, { 6 fields: [notifications.recipient], 7 references: [identities.atp_did] 8 }), 9})); 10 11export const identitiesRelations = relations(identities, ({one, many}) => ({ 12 notifications: many(notifications), 13 publications: many(publications), 14 email_auth_tokens: many(email_auth_tokens), 15 recommends_on_documents: many(recommends_on_documents), 16 bsky_profiles: many(bsky_profiles), 17 user_subscriptions: many(user_subscriptions), 18 permission_token: one(permission_tokens, { 19 fields: [identities.home_page], 20 references: [permission_tokens.id] 21 }), 22 site_standard_publications: many(site_standard_publications), 23 site_standard_documents: many(site_standard_documents), 24 custom_domains_identity: many(custom_domains, { 25 relationName: "custom_domains_identity_identities_email" 26 }), 27 custom_domains_identity_id: many(custom_domains, { 28 relationName: "custom_domains_identity_id_identities_id" 29 }), 30 bsky_follows_follows: many(bsky_follows, { 31 relationName: "bsky_follows_follows_identities_atp_did" 32 }), 33 bsky_follows_identity: many(bsky_follows, { 34 relationName: "bsky_follows_identity_identities_atp_did" 35 }), 36 subscribers_to_publications: many(subscribers_to_publications), 37 permission_token_on_homepages: many(permission_token_on_homepage), 38 publication_domains: many(publication_domains), 39 publication_subscriptions: many(publication_subscriptions), 40 site_standard_subscriptions: many(site_standard_subscriptions), 41 user_entitlements: many(user_entitlements), 42})); 43 44export const publicationsRelations = relations(publications, ({one, many}) => ({ 45 identity: one(identities, { 46 fields: [publications.identity_did], 47 references: [identities.atp_did] 48 }), 49 subscribers_to_publications: many(subscribers_to_publications), 50 documents_in_publications: many(documents_in_publications), 51 publication_domains: many(publication_domains), 52 publication_subscriptions: many(publication_subscriptions), 53 leaflets_in_publications: many(leaflets_in_publications), 54})); 55 56export const comments_on_documentsRelations = relations(comments_on_documents, ({one}) => ({ 57 document: one(documents, { 58 fields: [comments_on_documents.document], 59 references: [documents.uri] 60 }), 61 bsky_profile: one(bsky_profiles, { 62 fields: [comments_on_documents.profile], 63 references: [bsky_profiles.did] 64 }), 65})); 66 67export const documentsRelations = relations(documents, ({many}) => ({ 68 comments_on_documents: many(comments_on_documents), 69 recommends_on_documents: many(recommends_on_documents), 70 documents_in_publications: many(documents_in_publications), 71 document_mentions_in_bskies: many(document_mentions_in_bsky), 72 leaflets_to_documents: many(leaflets_to_documents), 73 leaflets_in_publications: many(leaflets_in_publications), 74})); 75 76export const bsky_profilesRelations = relations(bsky_profiles, ({one, many}) => ({ 77 comments_on_documents: many(comments_on_documents), 78 identity: one(identities, { 79 fields: [bsky_profiles.did], 80 references: [identities.atp_did] 81 }), 82})); 83 84export const entitiesRelations = relations(entities, ({one, many}) => ({ 85 entity_set: one(entity_sets, { 86 fields: [entities.set], 87 references: [entity_sets.id] 88 }), 89 facts: many(facts), 90 poll_votes_on_entities_option_entity: many(poll_votes_on_entity, { 91 relationName: "poll_votes_on_entity_option_entity_entities_id" 92 }), 93 poll_votes_on_entities_poll_entity: many(poll_votes_on_entity, { 94 relationName: "poll_votes_on_entity_poll_entity_entities_id" 95 }), 96 permission_tokens: many(permission_tokens), 97 phone_rsvps_to_entities: many(phone_rsvps_to_entity), 98 email_subscriptions_to_entities: many(email_subscriptions_to_entity), 99})); 100 101export const entity_setsRelations = relations(entity_sets, ({many}) => ({ 102 entities: many(entities), 103 permission_token_rights: many(permission_token_rights), 104})); 105 106export const factsRelations = relations(facts, ({one}) => ({ 107 entity: one(entities, { 108 fields: [facts.entity], 109 references: [entities.id] 110 }), 111})); 112 113export const email_auth_tokensRelations = relations(email_auth_tokens, ({one}) => ({ 114 identity: one(identities, { 115 fields: [email_auth_tokens.identity], 116 references: [identities.id] 117 }), 118})); 119 120export const recommends_on_documentsRelations = relations(recommends_on_documents, ({one}) => ({ 121 document: one(documents, { 122 fields: [recommends_on_documents.document], 123 references: [documents.uri] 124 }), 125 identity: one(identities, { 126 fields: [recommends_on_documents.recommender_did], 127 references: [identities.atp_did] 128 }), 129})); 130 131export const poll_votes_on_entityRelations = relations(poll_votes_on_entity, ({one}) => ({ 132 entity_option_entity: one(entities, { 133 fields: [poll_votes_on_entity.option_entity], 134 references: [entities.id], 135 relationName: "poll_votes_on_entity_option_entity_entities_id" 136 }), 137 entity_poll_entity: one(entities, { 138 fields: [poll_votes_on_entity.poll_entity], 139 references: [entities.id], 140 relationName: "poll_votes_on_entity_poll_entity_entities_id" 141 }), 142})); 143 144export const permission_tokensRelations = relations(permission_tokens, ({one, many}) => ({ 145 entity: one(entities, { 146 fields: [permission_tokens.root_entity], 147 references: [entities.id] 148 }), 149 identities: many(identities), 150 custom_domain_routes_edit_permission_token: many(custom_domain_routes, { 151 relationName: "custom_domain_routes_edit_permission_token_permission_tokens_id" 152 }), 153 custom_domain_routes_view_permission_token: many(custom_domain_routes, { 154 relationName: "custom_domain_routes_view_permission_token_permission_tokens_id" 155 }), 156 email_subscriptions_to_entities: many(email_subscriptions_to_entity), 157 permission_token_on_homepages: many(permission_token_on_homepage), 158 permission_token_rights: many(permission_token_rights), 159 leaflets_to_documents: many(leaflets_to_documents), 160 leaflets_in_publications: many(leaflets_in_publications), 161})); 162 163export const user_subscriptionsRelations = relations(user_subscriptions, ({one}) => ({ 164 identity: one(identities, { 165 fields: [user_subscriptions.identity_id], 166 references: [identities.id] 167 }), 168})); 169 170export const phone_rsvps_to_entityRelations = relations(phone_rsvps_to_entity, ({one}) => ({ 171 entity: one(entities, { 172 fields: [phone_rsvps_to_entity.entity], 173 references: [entities.id] 174 }), 175})); 176 177export const site_standard_publicationsRelations = relations(site_standard_publications, ({one, many}) => ({ 178 identity: one(identities, { 179 fields: [site_standard_publications.identity_did], 180 references: [identities.atp_did] 181 }), 182 site_standard_documents_in_publications: many(site_standard_documents_in_publications), 183 site_standard_subscriptions: many(site_standard_subscriptions), 184})); 185 186export const custom_domain_routesRelations = relations(custom_domain_routes, ({one}) => ({ 187 custom_domain: one(custom_domains, { 188 fields: [custom_domain_routes.domain], 189 references: [custom_domains.domain] 190 }), 191 permission_token_edit_permission_token: one(permission_tokens, { 192 fields: [custom_domain_routes.edit_permission_token], 193 references: [permission_tokens.id], 194 relationName: "custom_domain_routes_edit_permission_token_permission_tokens_id" 195 }), 196 permission_token_view_permission_token: one(permission_tokens, { 197 fields: [custom_domain_routes.view_permission_token], 198 references: [permission_tokens.id], 199 relationName: "custom_domain_routes_view_permission_token_permission_tokens_id" 200 }), 201})); 202 203export const custom_domainsRelations = relations(custom_domains, ({one, many}) => ({ 204 custom_domain_routes: many(custom_domain_routes), 205 identity_identity: one(identities, { 206 fields: [custom_domains.identity], 207 references: [identities.email], 208 relationName: "custom_domains_identity_identities_email" 209 }), 210 identity_identity_id: one(identities, { 211 fields: [custom_domains.identity_id], 212 references: [identities.id], 213 relationName: "custom_domains_identity_id_identities_id" 214 }), 215 publication_domains: many(publication_domains), 216})); 217 218export const site_standard_documentsRelations = relations(site_standard_documents, ({one, many}) => ({ 219 identity: one(identities, { 220 fields: [site_standard_documents.identity_did], 221 references: [identities.atp_did] 222 }), 223 site_standard_documents_in_publications: many(site_standard_documents_in_publications), 224})); 225 226export const email_subscriptions_to_entityRelations = relations(email_subscriptions_to_entity, ({one}) => ({ 227 entity: one(entities, { 228 fields: [email_subscriptions_to_entity.entity], 229 references: [entities.id] 230 }), 231 permission_token: one(permission_tokens, { 232 fields: [email_subscriptions_to_entity.token], 233 references: [permission_tokens.id] 234 }), 235})); 236 237export const atp_poll_votesRelations = relations(atp_poll_votes, ({one}) => ({ 238 atp_poll_record: one(atp_poll_records, { 239 fields: [atp_poll_votes.poll_uri], 240 references: [atp_poll_records.uri] 241 }), 242})); 243 244export const atp_poll_recordsRelations = relations(atp_poll_records, ({many}) => ({ 245 atp_poll_votes: many(atp_poll_votes), 246})); 247 248export const bsky_followsRelations = relations(bsky_follows, ({one}) => ({ 249 identity_follows: one(identities, { 250 fields: [bsky_follows.follows], 251 references: [identities.atp_did], 252 relationName: "bsky_follows_follows_identities_atp_did" 253 }), 254 identity_identity: one(identities, { 255 fields: [bsky_follows.identity], 256 references: [identities.atp_did], 257 relationName: "bsky_follows_identity_identities_atp_did" 258 }), 259})); 260 261export const subscribers_to_publicationsRelations = relations(subscribers_to_publications, ({one}) => ({ 262 identity: one(identities, { 263 fields: [subscribers_to_publications.identity], 264 references: [identities.email] 265 }), 266 publication: one(publications, { 267 fields: [subscribers_to_publications.publication], 268 references: [publications.uri] 269 }), 270})); 271 272export const site_standard_documents_in_publicationsRelations = relations(site_standard_documents_in_publications, ({one}) => ({ 273 site_standard_document: one(site_standard_documents, { 274 fields: [site_standard_documents_in_publications.document], 275 references: [site_standard_documents.uri] 276 }), 277 site_standard_publication: one(site_standard_publications, { 278 fields: [site_standard_documents_in_publications.publication], 279 references: [site_standard_publications.uri] 280 }), 281})); 282 283export const documents_in_publicationsRelations = relations(documents_in_publications, ({one}) => ({ 284 document: one(documents, { 285 fields: [documents_in_publications.document], 286 references: [documents.uri] 287 }), 288 publication: one(publications, { 289 fields: [documents_in_publications.publication], 290 references: [publications.uri] 291 }), 292})); 293 294export const document_mentions_in_bskyRelations = relations(document_mentions_in_bsky, ({one}) => ({ 295 document: one(documents, { 296 fields: [document_mentions_in_bsky.document], 297 references: [documents.uri] 298 }), 299 bsky_post: one(bsky_posts, { 300 fields: [document_mentions_in_bsky.uri], 301 references: [bsky_posts.uri] 302 }), 303})); 304 305export const bsky_postsRelations = relations(bsky_posts, ({many}) => ({ 306 document_mentions_in_bskies: many(document_mentions_in_bsky), 307})); 308 309export const permission_token_on_homepageRelations = relations(permission_token_on_homepage, ({one}) => ({ 310 identity: one(identities, { 311 fields: [permission_token_on_homepage.identity], 312 references: [identities.id] 313 }), 314 permission_token: one(permission_tokens, { 315 fields: [permission_token_on_homepage.token], 316 references: [permission_tokens.id] 317 }), 318})); 319 320export const publication_domainsRelations = relations(publication_domains, ({one}) => ({ 321 custom_domain: one(custom_domains, { 322 fields: [publication_domains.domain], 323 references: [custom_domains.domain] 324 }), 325 identity: one(identities, { 326 fields: [publication_domains.identity], 327 references: [identities.atp_did] 328 }), 329 publication: one(publications, { 330 fields: [publication_domains.publication], 331 references: [publications.uri] 332 }), 333})); 334 335export const publication_subscriptionsRelations = relations(publication_subscriptions, ({one}) => ({ 336 identity: one(identities, { 337 fields: [publication_subscriptions.identity], 338 references: [identities.atp_did] 339 }), 340 publication: one(publications, { 341 fields: [publication_subscriptions.publication], 342 references: [publications.uri] 343 }), 344})); 345 346export const site_standard_subscriptionsRelations = relations(site_standard_subscriptions, ({one}) => ({ 347 identity: one(identities, { 348 fields: [site_standard_subscriptions.identity], 349 references: [identities.atp_did] 350 }), 351 site_standard_publication: one(site_standard_publications, { 352 fields: [site_standard_subscriptions.publication], 353 references: [site_standard_publications.uri] 354 }), 355})); 356 357export const user_entitlementsRelations = relations(user_entitlements, ({one}) => ({ 358 identity: one(identities, { 359 fields: [user_entitlements.identity_id], 360 references: [identities.id] 361 }), 362})); 363 364export const permission_token_rightsRelations = relations(permission_token_rights, ({one}) => ({ 365 entity_set: one(entity_sets, { 366 fields: [permission_token_rights.entity_set], 367 references: [entity_sets.id] 368 }), 369 permission_token: one(permission_tokens, { 370 fields: [permission_token_rights.token], 371 references: [permission_tokens.id] 372 }), 373})); 374 375export const leaflets_to_documentsRelations = relations(leaflets_to_documents, ({one}) => ({ 376 document: one(documents, { 377 fields: [leaflets_to_documents.document], 378 references: [documents.uri] 379 }), 380 permission_token: one(permission_tokens, { 381 fields: [leaflets_to_documents.leaflet], 382 references: [permission_tokens.id] 383 }), 384})); 385 386export const leaflets_in_publicationsRelations = relations(leaflets_in_publications, ({one}) => ({ 387 document: one(documents, { 388 fields: [leaflets_in_publications.doc], 389 references: [documents.uri] 390 }), 391 permission_token: one(permission_tokens, { 392 fields: [leaflets_in_publications.leaflet], 393 references: [permission_tokens.id] 394 }), 395 publication: one(publications, { 396 fields: [leaflets_in_publications.publication], 397 references: [publications.uri] 398 }), 399}));