@ttt-productions/ttt-core 0.79.73 → 0.79.75
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/dist/doc-schemas/registry.d.ts +24 -0
- package/dist/doc-schemas/registry.d.ts.map +1 -1
- package/dist/media/domain-events-work.d.ts +7 -0
- package/dist/media/domain-events-work.d.ts.map +1 -1
- package/dist/media/domain-events-work.js +13 -0
- package/dist/media/domain-events-work.js.map +1 -1
- package/dist/media/domain-events.d.ts +6 -0
- package/dist/media/domain-events.d.ts.map +1 -1
- package/dist/media/domain-events.js +2 -1
- package/dist/media/domain-events.js.map +1 -1
- package/dist/media/pending-media.d.ts +66 -0
- package/dist/media/pending-media.d.ts.map +1 -1
- package/dist/permissions/work-project-permissions-data.d.ts +8 -12
- package/dist/permissions/work-project-permissions-data.d.ts.map +1 -1
- package/dist/permissions/work-project-permissions-data.js +6 -12
- package/dist/permissions/work-project-permissions-data.js.map +1 -1
- package/dist/utils/guild-chat-access.d.ts +0 -22
- package/dist/utils/guild-chat-access.d.ts.map +1 -1
- package/dist/utils/guild-chat-access.js +0 -22
- package/dist/utils/guild-chat-access.js.map +1 -1
- package/package.json +1 -1
|
@@ -2405,6 +2405,12 @@ export declare const COLLECTION_SCHEMAS: {
|
|
|
2405
2405
|
workProjectId: z.ZodString;
|
|
2406
2406
|
guildInviteId: z.ZodString;
|
|
2407
2407
|
}, z.core.$strict>;
|
|
2408
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
2409
|
+
type: z.ZodLiteral<"workProject.guildmateLeft">;
|
|
2410
|
+
ids: z.ZodObject<{
|
|
2411
|
+
workProjectId: z.ZodString;
|
|
2412
|
+
userId: z.ZodString;
|
|
2413
|
+
}, z.core.$strict>;
|
|
2408
2414
|
}, z.core.$strict>, z.ZodObject<{
|
|
2409
2415
|
type: z.ZodLiteral<"audition.entryVoted">;
|
|
2410
2416
|
ids: z.ZodObject<{
|
|
@@ -2908,6 +2914,12 @@ export declare const COLLECTION_SCHEMAS: {
|
|
|
2908
2914
|
workProjectId: z.ZodString;
|
|
2909
2915
|
guildInviteId: z.ZodString;
|
|
2910
2916
|
}, z.core.$strict>;
|
|
2917
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
2918
|
+
type: z.ZodLiteral<"workProject.guildmateLeft">;
|
|
2919
|
+
ids: z.ZodObject<{
|
|
2920
|
+
workProjectId: z.ZodString;
|
|
2921
|
+
userId: z.ZodString;
|
|
2922
|
+
}, z.core.$strict>;
|
|
2911
2923
|
}, z.core.$strict>, z.ZodObject<{
|
|
2912
2924
|
type: z.ZodLiteral<"audition.entryVoted">;
|
|
2913
2925
|
ids: z.ZodObject<{
|
|
@@ -3328,6 +3340,12 @@ export declare const COLLECTION_SCHEMAS: {
|
|
|
3328
3340
|
workProjectId: z.ZodString;
|
|
3329
3341
|
guildInviteId: z.ZodString;
|
|
3330
3342
|
}, z.core.$strict>;
|
|
3343
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
3344
|
+
type: z.ZodLiteral<"workProject.guildmateLeft">;
|
|
3345
|
+
ids: z.ZodObject<{
|
|
3346
|
+
workProjectId: z.ZodString;
|
|
3347
|
+
userId: z.ZodString;
|
|
3348
|
+
}, z.core.$strict>;
|
|
3331
3349
|
}, z.core.$strict>, z.ZodObject<{
|
|
3332
3350
|
type: z.ZodLiteral<"audition.entryVoted">;
|
|
3333
3351
|
ids: z.ZodObject<{
|
|
@@ -3833,6 +3851,12 @@ export declare const COLLECTION_SCHEMAS: {
|
|
|
3833
3851
|
workProjectId: z.ZodString;
|
|
3834
3852
|
guildInviteId: z.ZodString;
|
|
3835
3853
|
}, z.core.$strict>;
|
|
3854
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
3855
|
+
type: z.ZodLiteral<"workProject.guildmateLeft">;
|
|
3856
|
+
ids: z.ZodObject<{
|
|
3857
|
+
workProjectId: z.ZodString;
|
|
3858
|
+
userId: z.ZodString;
|
|
3859
|
+
}, z.core.$strict>;
|
|
3836
3860
|
}, z.core.$strict>, z.ZodObject<{
|
|
3837
3861
|
type: z.ZodLiteral<"audition.entryVoted">;
|
|
3838
3862
|
ids: z.ZodObject<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/doc-schemas/registry.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAqN7B,eAAO,MAAM,kBAAkB
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/doc-schemas/registry.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAqN7B,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuQkB,CAAC;AAElD,MAAM,MAAM,wBAAwB,GAAG,MAAM,OAAO,kBAAkB,CAAC;AAEvE;;;;;;;;;GASG;AACH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;CAmBiC,CAAC;AAEvE;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,mBAAmB,EAAE,SAAS,MAAM,EAOvC,CAAC"}
|
|
@@ -58,6 +58,13 @@ export declare const GuildInviteCancelledEventSchema: z.ZodObject<{
|
|
|
58
58
|
guildInviteId: z.ZodString;
|
|
59
59
|
}, z.core.$strict>;
|
|
60
60
|
}, z.core.$strict>;
|
|
61
|
+
export declare const WorkProjectGuildmateLeftEventSchema: z.ZodObject<{
|
|
62
|
+
type: z.ZodLiteral<"workProject.guildmateLeft">;
|
|
63
|
+
ids: z.ZodObject<{
|
|
64
|
+
workProjectId: z.ZodString;
|
|
65
|
+
userId: z.ZodString;
|
|
66
|
+
}, z.core.$strict>;
|
|
67
|
+
}, z.core.$strict>;
|
|
61
68
|
export declare const AuditionPromptCreatedEventSchema: z.ZodObject<{
|
|
62
69
|
type: z.ZodLiteral<"audition.promptCreated">;
|
|
63
70
|
ids: z.ZodObject<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"domain-events-work.d.ts","sourceRoot":"","sources":["../../src/media/domain-events-work.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAUxB,eAAO,MAAM,6BAA6B;;;;;;kBAU/B,CAAC;AAEZ,eAAO,MAAM,6BAA6B;;;;;kBAK/B,CAAC;AAEZ,eAAO,MAAM,+BAA+B;;;;;;;kBAWjC,CAAC;AAEZ,eAAO,MAAM,wCAAwC;;;;;kBAS1C,CAAC;AAEZ,eAAO,MAAM,0BAA0B;;;;;;;;kBAY5B,CAAC;AAEZ,eAAO,MAAM,8BAA8B;;;;;;;kBAWhC,CAAC;AAEZ,eAAO,MAAM,8BAA8B;;;;;;;kBAWhC,CAAC;AAEZ,eAAO,MAAM,+BAA+B;;;;;;kBAUjC,CAAC;AAEZ,eAAO,MAAM,gCAAgC;;;;;;;kBAWlC,CAAC;AAEZ,eAAO,MAAM,iCAAiC;;;;;;;;kBAYnC,CAAC;AAEZ,eAAO,MAAM,oCAAoC;;;;;;;;kBAYtC,CAAC;AAEZ,eAAO,MAAM,yBAAyB;;;;;;kBAU3B,CAAC;AAEZ,eAAO,MAAM,4BAA4B;;;;;;;kBAW9B,CAAC;AAEZ,eAAO,MAAM,sCAAsC;;;;;;;;kBAYxC,CAAC;AAKZ,eAAO,MAAM,2BAA2B;;;;;;kBAU7B,CAAC;AAEZ,eAAO,MAAM,kCAAkC;;;;;;;kBAWpC,CAAC;AAEZ,eAAO,MAAM,oCAAoC;;;;;;;kBAWtC,CAAC;AAEZ,eAAO,MAAM,kCAAkC;;;;;;;;;;;kBAWpC,CAAC;AAIZ,eAAO,MAAM,gCAAgC;;;;;kBASlC,CAAC;AAIZ,eAAO,MAAM,kCAAkC;;;;;kBASpC,CAAC;AAEZ,eAAO,MAAM,oCAAoC;;;;;;;;;;;;kBAYtC,CAAC;AAEZ,eAAO,MAAM,oCAAoC;;;;;kBAStC,CAAC"}
|
|
1
|
+
{"version":3,"file":"domain-events-work.d.ts","sourceRoot":"","sources":["../../src/media/domain-events-work.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAUxB,eAAO,MAAM,6BAA6B;;;;;;kBAU/B,CAAC;AAEZ,eAAO,MAAM,6BAA6B;;;;;kBAK/B,CAAC;AAEZ,eAAO,MAAM,+BAA+B;;;;;;;kBAWjC,CAAC;AAEZ,eAAO,MAAM,wCAAwC;;;;;kBAS1C,CAAC;AAEZ,eAAO,MAAM,0BAA0B;;;;;;;;kBAY5B,CAAC;AAEZ,eAAO,MAAM,8BAA8B;;;;;;;kBAWhC,CAAC;AAEZ,eAAO,MAAM,8BAA8B;;;;;;;kBAWhC,CAAC;AAEZ,eAAO,MAAM,+BAA+B;;;;;;kBAUjC,CAAC;AAIZ,eAAO,MAAM,mCAAmC;;;;;;kBAUrC,CAAC;AAEZ,eAAO,MAAM,gCAAgC;;;;;;;kBAWlC,CAAC;AAEZ,eAAO,MAAM,iCAAiC;;;;;;;;kBAYnC,CAAC;AAEZ,eAAO,MAAM,oCAAoC;;;;;;;;kBAYtC,CAAC;AAEZ,eAAO,MAAM,yBAAyB;;;;;;kBAU3B,CAAC;AAEZ,eAAO,MAAM,4BAA4B;;;;;;;kBAW9B,CAAC;AAEZ,eAAO,MAAM,sCAAsC;;;;;;;;kBAYxC,CAAC;AAKZ,eAAO,MAAM,2BAA2B;;;;;;kBAU7B,CAAC;AAEZ,eAAO,MAAM,kCAAkC;;;;;;;kBAWpC,CAAC;AAEZ,eAAO,MAAM,oCAAoC;;;;;;;kBAWtC,CAAC;AAEZ,eAAO,MAAM,kCAAkC;;;;;;;;;;;kBAWpC,CAAC;AAIZ,eAAO,MAAM,gCAAgC;;;;;kBASlC,CAAC;AAIZ,eAAO,MAAM,kCAAkC;;;;;kBASpC,CAAC;AAEZ,eAAO,MAAM,oCAAoC;;;;;;;;;;;;kBAYtC,CAAC;AAEZ,eAAO,MAAM,oCAAoC;;;;;kBAStC,CAAC"}
|
|
@@ -90,6 +90,19 @@ export const GuildInviteCancelledEventSchema = z
|
|
|
90
90
|
.strict(),
|
|
91
91
|
})
|
|
92
92
|
.strict();
|
|
93
|
+
// A guildmate left the Work — the leave callable's committed departure. Carries the departing
|
|
94
|
+
// user, whose own Works lose this one; the Work's member-only reads are no longer theirs.
|
|
95
|
+
export const WorkProjectGuildmateLeftEventSchema = z
|
|
96
|
+
.object({
|
|
97
|
+
type: z.literal('workProject.guildmateLeft'),
|
|
98
|
+
ids: z
|
|
99
|
+
.object({
|
|
100
|
+
workProjectId: z.string().min(1),
|
|
101
|
+
userId: z.string().min(1),
|
|
102
|
+
})
|
|
103
|
+
.strict(),
|
|
104
|
+
})
|
|
105
|
+
.strict();
|
|
93
106
|
export const AuditionPromptCreatedEventSchema = z
|
|
94
107
|
.object({
|
|
95
108
|
type: z.literal('audition.promptCreated'),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"domain-events-work.js","sourceRoot":"","sources":["../../src/media/domain-events-work.ts"],"names":[],"mappings":"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","sourcesContent":["import { z } from \"zod\";\nimport {\n HALL_CONTENT_DETAIL_SURFACES,\n HALL_CONTENT_SUB_ITEM_SURFACES,\n} from '../constants/hall-content-routing.js';\n\n// DomainEvent schemas for the work-project domain — work projects, guild\n// invites, auditions, commissions, hall library, and threshold-library\n// submission. Assembled into the discriminated union in ./domain-events.ts.\n\nexport const WorkProjectCreatedEventSchema = z\n .object({\n type: z.literal('workProject.created'),\n ids: z\n .object({\n userId: z.string().min(1),\n workProjectId: z.string().min(1),\n })\n .strict(),\n })\n .strict();\n\nexport const WorkProjectUpdatedEventSchema = z\n .object({\n type: z.literal('workProject.updated'),\n ids: z.object({ workProjectId: z.string().min(1) }).strict(),\n })\n .strict();\n\nexport const WorkProjectPublishedEventSchema = z\n .object({\n type: z.literal('workProject.published'),\n ids: z\n .object({\n workProjectId: z.string().min(1),\n userId: z.string().min(1),\n workRealmId: z.string().min(1).optional(),\n })\n .strict(),\n })\n .strict();\n\nexport const WorkProjectStakeSharesUpdatedEventSchema = z\n .object({\n type: z.literal('workProject.stakeSharesUpdated'),\n ids: z\n .object({\n workProjectId: z.string().min(1),\n })\n .strict(),\n })\n .strict();\n\nexport const GuildInviteSentEventSchema = z\n .object({\n type: z.literal('workProject.guildInviteSent'),\n ids: z\n .object({\n workProjectId: z.string().min(1),\n guildInviteId: z.string().min(1),\n inviterId: z.string().min(1),\n inviteeId: z.string().min(1),\n })\n .strict(),\n })\n .strict();\n\nexport const GuildInviteAcceptedEventSchema = z\n .object({\n type: z.literal('workProject.guildInviteAccepted'),\n ids: z\n .object({\n workProjectId: z.string().min(1),\n guildInviteId: z.string().min(1),\n userId: z.string().min(1),\n })\n .strict(),\n })\n .strict();\n\nexport const GuildInviteDeclinedEventSchema = z\n .object({\n type: z.literal('workProject.guildInviteDeclined'),\n ids: z\n .object({\n workProjectId: z.string().min(1),\n guildInviteId: z.string().min(1),\n userId: z.string().min(1),\n })\n .strict(),\n })\n .strict();\n\nexport const GuildInviteCancelledEventSchema = z\n .object({\n type: z.literal('workProject.guildInviteCancelled'),\n ids: z\n .object({\n workProjectId: z.string().min(1),\n guildInviteId: z.string().min(1),\n })\n .strict(),\n })\n .strict();\n\nexport const AuditionPromptCreatedEventSchema = z\n .object({\n type: z.literal('audition.promptCreated'),\n ids: z\n .object({\n userId: z.string().min(1),\n auditionId: z.string().min(1),\n workProjectId: z.string().min(1).optional(),\n })\n .strict(),\n })\n .strict();\n\nexport const AuditionEntrySubmittedEventSchema = z\n .object({\n type: z.literal('audition.entryCreated'),\n ids: z\n .object({\n userId: z.string().min(1),\n auditionId: z.string().min(1),\n auditionEntryId: z.string().min(1),\n workProjectId: z.string().min(1).optional(),\n })\n .strict(),\n })\n .strict();\n\nexport const AuditionEntryVoteRecordedEventSchema = z\n .object({\n type: z.literal('audition.entryVoted'),\n ids: z\n .object({\n userId: z.string().min(1),\n auditionId: z.string().min(1),\n auditionEntryId: z.string().min(1),\n workProjectId: z.string().min(1),\n })\n .strict(),\n })\n .strict();\n\nexport const AuditionClosedEventSchema = z\n .object({\n type: z.literal('audition.closed'),\n ids: z\n .object({\n auditionId: z.string().min(1),\n workProjectId: z.string().min(1).optional(),\n })\n .strict(),\n })\n .strict();\n\nexport const CommissionCreatedEventSchema = z\n .object({\n type: z.literal('commission.created'),\n ids: z\n .object({\n userId: z.string().min(1),\n commissionListingId: z.string().min(1),\n workProjectId: z.string().min(1),\n })\n .strict(),\n })\n .strict();\n\nexport const CommissionProposalSubmittedEventSchema = z\n .object({\n type: z.literal('commission.commissionProposalSubmitted'),\n ids: z\n .object({\n userId: z.string().min(1),\n commissionListingId: z.string().min(1),\n workProjectId: z.string().min(1),\n commissionProposalId: z.string().min(1),\n })\n .strict(),\n })\n .strict();\n\n// Commission closed — the closeCommission callable's terminal transition. A\n// commission listing is never deleted; closing is the only way it leaves the\n// board, so the event name says closed.\nexport const CommissionClosedEventSchema = z\n .object({\n type: z.literal('commission.closed'),\n ids: z\n .object({\n commissionListingId: z.string().min(1),\n workProjectId: z.string().min(1),\n })\n .strict(),\n })\n .strict();\n\nexport const CommissionProposalSavedEventSchema = z\n .object({\n type: z.literal('commission.commissionProposalSaved'),\n ids: z\n .object({\n commissionListingId: z.string().min(1),\n commissionProposalId: z.string().min(1),\n userId: z.string().min(1),\n })\n .strict(),\n })\n .strict();\n\nexport const CommissionProposalRemovedEventSchema = z\n .object({\n type: z.literal('commission.commissionProposalRemoved'),\n ids: z\n .object({\n commissionListingId: z.string().min(1),\n commissionProposalId: z.string().min(1),\n userId: z.string().min(1),\n })\n .strict(),\n })\n .strict();\n\nexport const HallLibraryCoverUpdatedEventSchema = z\n .object({\n type: z.literal('hallLibrary.coverUpdated'),\n ids: z\n .object({\n workProjectId: z.string().min(1),\n itemType: z.enum(HALL_CONTENT_DETAIL_SURFACES),\n itemId: z.string().min(1),\n })\n .strict(),\n })\n .strict();\n\n// Realm cover published — the 'realm-cover' upload origin's publication adapter\n// wrote `realmCoverAssetId` onto workRealms/{workRealmId}.\nexport const WorkRealmCoverUpdatedEventSchema = z\n .object({\n type: z.literal('workRealm.coverUpdated'),\n ids: z\n .object({\n workRealmId: z.string().min(1),\n })\n .strict(),\n })\n .strict();\n\n// Realm details edited — the realm doc's own text/detail fields, as opposed to\n// workRealm.coverUpdated's `realmCoverAssetId`.\nexport const WorkRealmDetailsUpdatedEventSchema = z\n .object({\n type: z.literal('workRealm.detailsUpdated'),\n ids: z\n .object({\n workRealmId: z.string().min(1),\n })\n .strict(),\n })\n .strict();\n\nexport const HallLibrarySubItemUpdatedEventSchema = z\n .object({\n type: z.literal('hallLibrary.subItemUpdated'),\n ids: z\n .object({\n workProjectId: z.string().min(1),\n itemType: z.enum(HALL_CONTENT_SUB_ITEM_SURFACES),\n parentId: z.string().min(1),\n itemId: z.string().min(1),\n })\n .strict(),\n })\n .strict();\n\nexport const ThresholdLibrarySubmittedEventSchema = z\n .object({\n type: z.literal('thresholdLibrary.submitted'),\n ids: z\n .object({\n workProjectId: z.string().min(1),\n })\n .strict(),\n })\n .strict();\n"]}
|
|
1
|
+
{"version":3,"file":"domain-events-work.js","sourceRoot":"","sources":["../../src/media/domain-events-work.ts"],"names":[],"mappings":"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","sourcesContent":["import { z } from \"zod\";\nimport {\n HALL_CONTENT_DETAIL_SURFACES,\n HALL_CONTENT_SUB_ITEM_SURFACES,\n} from '../constants/hall-content-routing.js';\n\n// DomainEvent schemas for the work-project domain — work projects, guild\n// invites, auditions, commissions, hall library, and threshold-library\n// submission. Assembled into the discriminated union in ./domain-events.ts.\n\nexport const WorkProjectCreatedEventSchema = z\n .object({\n type: z.literal('workProject.created'),\n ids: z\n .object({\n userId: z.string().min(1),\n workProjectId: z.string().min(1),\n })\n .strict(),\n })\n .strict();\n\nexport const WorkProjectUpdatedEventSchema = z\n .object({\n type: z.literal('workProject.updated'),\n ids: z.object({ workProjectId: z.string().min(1) }).strict(),\n })\n .strict();\n\nexport const WorkProjectPublishedEventSchema = z\n .object({\n type: z.literal('workProject.published'),\n ids: z\n .object({\n workProjectId: z.string().min(1),\n userId: z.string().min(1),\n workRealmId: z.string().min(1).optional(),\n })\n .strict(),\n })\n .strict();\n\nexport const WorkProjectStakeSharesUpdatedEventSchema = z\n .object({\n type: z.literal('workProject.stakeSharesUpdated'),\n ids: z\n .object({\n workProjectId: z.string().min(1),\n })\n .strict(),\n })\n .strict();\n\nexport const GuildInviteSentEventSchema = z\n .object({\n type: z.literal('workProject.guildInviteSent'),\n ids: z\n .object({\n workProjectId: z.string().min(1),\n guildInviteId: z.string().min(1),\n inviterId: z.string().min(1),\n inviteeId: z.string().min(1),\n })\n .strict(),\n })\n .strict();\n\nexport const GuildInviteAcceptedEventSchema = z\n .object({\n type: z.literal('workProject.guildInviteAccepted'),\n ids: z\n .object({\n workProjectId: z.string().min(1),\n guildInviteId: z.string().min(1),\n userId: z.string().min(1),\n })\n .strict(),\n })\n .strict();\n\nexport const GuildInviteDeclinedEventSchema = z\n .object({\n type: z.literal('workProject.guildInviteDeclined'),\n ids: z\n .object({\n workProjectId: z.string().min(1),\n guildInviteId: z.string().min(1),\n userId: z.string().min(1),\n })\n .strict(),\n })\n .strict();\n\nexport const GuildInviteCancelledEventSchema = z\n .object({\n type: z.literal('workProject.guildInviteCancelled'),\n ids: z\n .object({\n workProjectId: z.string().min(1),\n guildInviteId: z.string().min(1),\n })\n .strict(),\n })\n .strict();\n\n// A guildmate left the Work — the leave callable's committed departure. Carries the departing\n// user, whose own Works lose this one; the Work's member-only reads are no longer theirs.\nexport const WorkProjectGuildmateLeftEventSchema = z\n .object({\n type: z.literal('workProject.guildmateLeft'),\n ids: z\n .object({\n workProjectId: z.string().min(1),\n userId: z.string().min(1),\n })\n .strict(),\n })\n .strict();\n\nexport const AuditionPromptCreatedEventSchema = z\n .object({\n type: z.literal('audition.promptCreated'),\n ids: z\n .object({\n userId: z.string().min(1),\n auditionId: z.string().min(1),\n workProjectId: z.string().min(1).optional(),\n })\n .strict(),\n })\n .strict();\n\nexport const AuditionEntrySubmittedEventSchema = z\n .object({\n type: z.literal('audition.entryCreated'),\n ids: z\n .object({\n userId: z.string().min(1),\n auditionId: z.string().min(1),\n auditionEntryId: z.string().min(1),\n workProjectId: z.string().min(1).optional(),\n })\n .strict(),\n })\n .strict();\n\nexport const AuditionEntryVoteRecordedEventSchema = z\n .object({\n type: z.literal('audition.entryVoted'),\n ids: z\n .object({\n userId: z.string().min(1),\n auditionId: z.string().min(1),\n auditionEntryId: z.string().min(1),\n workProjectId: z.string().min(1),\n })\n .strict(),\n })\n .strict();\n\nexport const AuditionClosedEventSchema = z\n .object({\n type: z.literal('audition.closed'),\n ids: z\n .object({\n auditionId: z.string().min(1),\n workProjectId: z.string().min(1).optional(),\n })\n .strict(),\n })\n .strict();\n\nexport const CommissionCreatedEventSchema = z\n .object({\n type: z.literal('commission.created'),\n ids: z\n .object({\n userId: z.string().min(1),\n commissionListingId: z.string().min(1),\n workProjectId: z.string().min(1),\n })\n .strict(),\n })\n .strict();\n\nexport const CommissionProposalSubmittedEventSchema = z\n .object({\n type: z.literal('commission.commissionProposalSubmitted'),\n ids: z\n .object({\n userId: z.string().min(1),\n commissionListingId: z.string().min(1),\n workProjectId: z.string().min(1),\n commissionProposalId: z.string().min(1),\n })\n .strict(),\n })\n .strict();\n\n// Commission closed — the closeCommission callable's terminal transition. A\n// commission listing is never deleted; closing is the only way it leaves the\n// board, so the event name says closed.\nexport const CommissionClosedEventSchema = z\n .object({\n type: z.literal('commission.closed'),\n ids: z\n .object({\n commissionListingId: z.string().min(1),\n workProjectId: z.string().min(1),\n })\n .strict(),\n })\n .strict();\n\nexport const CommissionProposalSavedEventSchema = z\n .object({\n type: z.literal('commission.commissionProposalSaved'),\n ids: z\n .object({\n commissionListingId: z.string().min(1),\n commissionProposalId: z.string().min(1),\n userId: z.string().min(1),\n })\n .strict(),\n })\n .strict();\n\nexport const CommissionProposalRemovedEventSchema = z\n .object({\n type: z.literal('commission.commissionProposalRemoved'),\n ids: z\n .object({\n commissionListingId: z.string().min(1),\n commissionProposalId: z.string().min(1),\n userId: z.string().min(1),\n })\n .strict(),\n })\n .strict();\n\nexport const HallLibraryCoverUpdatedEventSchema = z\n .object({\n type: z.literal('hallLibrary.coverUpdated'),\n ids: z\n .object({\n workProjectId: z.string().min(1),\n itemType: z.enum(HALL_CONTENT_DETAIL_SURFACES),\n itemId: z.string().min(1),\n })\n .strict(),\n })\n .strict();\n\n// Realm cover published — the 'realm-cover' upload origin's publication adapter\n// wrote `realmCoverAssetId` onto workRealms/{workRealmId}.\nexport const WorkRealmCoverUpdatedEventSchema = z\n .object({\n type: z.literal('workRealm.coverUpdated'),\n ids: z\n .object({\n workRealmId: z.string().min(1),\n })\n .strict(),\n })\n .strict();\n\n// Realm details edited — the realm doc's own text/detail fields, as opposed to\n// workRealm.coverUpdated's `realmCoverAssetId`.\nexport const WorkRealmDetailsUpdatedEventSchema = z\n .object({\n type: z.literal('workRealm.detailsUpdated'),\n ids: z\n .object({\n workRealmId: z.string().min(1),\n })\n .strict(),\n })\n .strict();\n\nexport const HallLibrarySubItemUpdatedEventSchema = z\n .object({\n type: z.literal('hallLibrary.subItemUpdated'),\n ids: z\n .object({\n workProjectId: z.string().min(1),\n itemType: z.enum(HALL_CONTENT_SUB_ITEM_SURFACES),\n parentId: z.string().min(1),\n itemId: z.string().min(1),\n })\n .strict(),\n })\n .strict();\n\nexport const ThresholdLibrarySubmittedEventSchema = z\n .object({\n type: z.literal('thresholdLibrary.submitted'),\n ids: z\n .object({\n workProjectId: z.string().min(1),\n })\n .strict(),\n })\n .strict();\n"]}
|
|
@@ -212,6 +212,12 @@ export declare const DomainEventSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
|
212
212
|
workProjectId: z.ZodString;
|
|
213
213
|
guildInviteId: z.ZodString;
|
|
214
214
|
}, z.core.$strict>;
|
|
215
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
216
|
+
type: z.ZodLiteral<"workProject.guildmateLeft">;
|
|
217
|
+
ids: z.ZodObject<{
|
|
218
|
+
workProjectId: z.ZodString;
|
|
219
|
+
userId: z.ZodString;
|
|
220
|
+
}, z.core.$strict>;
|
|
215
221
|
}, z.core.$strict>, z.ZodObject<{
|
|
216
222
|
type: z.ZodLiteral<"audition.entryVoted">;
|
|
217
223
|
ids: z.ZodObject<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"domain-events.d.ts","sourceRoot":"","sources":["../../src/media/domain-events.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"domain-events.d.ts","sourceRoot":"","sources":["../../src/media/domain-events.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAyDxB,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,0BAA0B,CAAC;AAgBzC,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4BAgD5B,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAI5D,MAAM,MAAM,iBAAiB,CAAC,CAAC,SAAS,WAAW,CAAC,MAAM,CAAC,IAAI,OAAO,CACpE,WAAW,EACX;IAAE,IAAI,EAAE,CAAC,CAAA;CAAE,CACZ,CAAC,KAAK,CAAC,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
import { ProfilePictureUpdatedEventSchema, ProfilePreferencesUpdatedEventSchema, CraftSkillCreatedEventSchema, CraftSkillUpdatedEventSchema, CraftSkillDeletedEventSchema, FollowCreatedEventSchema, FollowRemovedEventSchema, MentionReadEventSchema, AuthStatusChangedEventSchema, ProfileDisplayNameChangedEventSchema, } from "./domain-events-user.js";
|
|
3
|
-
import { WorkProjectCreatedEventSchema, WorkProjectUpdatedEventSchema, WorkProjectPublishedEventSchema, WorkProjectStakeSharesUpdatedEventSchema, GuildInviteSentEventSchema, GuildInviteAcceptedEventSchema, GuildInviteDeclinedEventSchema, GuildInviteCancelledEventSchema, AuditionPromptCreatedEventSchema, AuditionEntrySubmittedEventSchema, AuditionEntryVoteRecordedEventSchema, AuditionClosedEventSchema, CommissionCreatedEventSchema, CommissionProposalSubmittedEventSchema, CommissionClosedEventSchema, CommissionProposalSavedEventSchema, CommissionProposalRemovedEventSchema, HallLibraryCoverUpdatedEventSchema, WorkRealmCoverUpdatedEventSchema, WorkRealmDetailsUpdatedEventSchema, HallLibrarySubItemUpdatedEventSchema, ThresholdLibrarySubmittedEventSchema, } from "./domain-events-work.js";
|
|
3
|
+
import { WorkProjectCreatedEventSchema, WorkProjectUpdatedEventSchema, WorkProjectPublishedEventSchema, WorkProjectStakeSharesUpdatedEventSchema, GuildInviteSentEventSchema, GuildInviteAcceptedEventSchema, GuildInviteDeclinedEventSchema, GuildInviteCancelledEventSchema, WorkProjectGuildmateLeftEventSchema, AuditionPromptCreatedEventSchema, AuditionEntrySubmittedEventSchema, AuditionEntryVoteRecordedEventSchema, AuditionClosedEventSchema, CommissionCreatedEventSchema, CommissionProposalSubmittedEventSchema, CommissionClosedEventSchema, CommissionProposalSavedEventSchema, CommissionProposalRemovedEventSchema, HallLibraryCoverUpdatedEventSchema, WorkRealmCoverUpdatedEventSchema, WorkRealmDetailsUpdatedEventSchema, HallLibrarySubItemUpdatedEventSchema, ThresholdLibrarySubmittedEventSchema, } from "./domain-events-work.js";
|
|
4
4
|
import { SquareStreetzPostCreatedEventSchema, SquareStreetzPostLikedEventSchema, SquareStreetzPostUnlikedEventSchema, } from "./domain-events-social.js";
|
|
5
5
|
import { ModerationViolationCreatedEventSchema, ThresholdLibraryApprovedEventSchema, ThresholdLibraryNeedsRevisionEventSchema, AdminDispatchThreadUpdatedEventSchema, AdminAppealReviewedEventSchema, AdminDispatchReviewedEventSchema, ViolationAppealSubmittedEventSchema, AdminDisplayNameResetForcedEventSchema, HallContentChangeRequestApprovedEventSchema, SystemSlotVideoUpdatedEventSchema, SystemSlotUidUpdatedEventSchema, } from "./domain-events-admin.js";
|
|
6
6
|
export * from "./domain-events-user.js";
|
|
@@ -47,6 +47,7 @@ export const DomainEventSchema = z.discriminatedUnion('type', [
|
|
|
47
47
|
GuildInviteAcceptedEventSchema,
|
|
48
48
|
GuildInviteDeclinedEventSchema,
|
|
49
49
|
GuildInviteCancelledEventSchema,
|
|
50
|
+
WorkProjectGuildmateLeftEventSchema,
|
|
50
51
|
AuditionEntryVoteRecordedEventSchema,
|
|
51
52
|
AuditionClosedEventSchema,
|
|
52
53
|
CommissionClosedEventSchema,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"domain-events.js","sourceRoot":"","sources":["../../src/media/domain-events.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACL,gCAAgC,EAChC,oCAAoC,EACpC,4BAA4B,EAC5B,4BAA4B,EAC5B,4BAA4B,EAC5B,wBAAwB,EACxB,wBAAwB,EACxB,sBAAsB,EACtB,4BAA4B,EAC5B,oCAAoC,GACrC,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,6BAA6B,EAC7B,6BAA6B,EAC7B,+BAA+B,EAC/B,wCAAwC,EACxC,0BAA0B,EAC1B,8BAA8B,EAC9B,8BAA8B,EAC9B,+BAA+B,EAC/B,gCAAgC,EAChC,iCAAiC,EACjC,oCAAoC,EACpC,yBAAyB,EACzB,4BAA4B,EAC5B,sCAAsC,EACtC,2BAA2B,EAC3B,kCAAkC,EAClC,oCAAoC,EACpC,kCAAkC,EAClC,gCAAgC,EAChC,kCAAkC,EAClC,oCAAoC,EACpC,oCAAoC,GACrC,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,mCAAmC,EACnC,iCAAiC,EACjC,mCAAmC,GACpC,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,qCAAqC,EACrC,mCAAmC,EACnC,wCAAwC,EACxC,qCAAqC,EACrC,8BAA8B,EAC9B,gCAAgC,EAChC,mCAAmC,EACnC,sCAAsC,EACtC,2CAA2C,EAC3C,iCAAiC,EACjC,+BAA+B,GAChC,MAAM,0BAA0B,CAAC;AAElC,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,0BAA0B,CAAC;AAEzC,+EAA+E;AAC/E,uEAAuE;AACvE,6EAA6E;AAC7E,gEAAgE;AAChE,EAAE;AACF,gDAAgD;AAChD,0CAA0C;AAC1C,iDAAiD;AACjD,mEAAmE;AACnE,EAAE;AACF,0EAA0E;AAC1E,mEAAmE;AACnE,+EAA+E;AAE/E,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE;IAC5D,gCAAgC;IAChC,4BAA4B;IAC5B,mCAAmC;IACnC,gCAAgC;IAChC,iCAAiC;IACjC,4BAA4B;IAC5B,sCAAsC;IACtC,6BAA6B;IAC7B,kCAAkC;IAClC,gCAAgC;IAChC,oCAAoC;IACpC,qCAAqC;IACrC,wBAAwB;IACxB,wBAAwB;IACxB,iCAAiC;IACjC,mCAAmC;IACnC,oCAAoC;IACpC,4BAA4B;IAC5B,4BAA4B;IAC5B,6BAA6B;IAC7B,+BAA+B;IAC/B,wCAAwC;IACxC,0BAA0B;IAC1B,8BAA8B;IAC9B,8BAA8B;IAC9B,+BAA+B;IAC/B,oCAAoC;IACpC,yBAAyB;IACzB,2BAA2B;IAC3B,kCAAkC;IAClC,oCAAoC;IACpC,oCAAoC;IACpC,mCAAmC;IACnC,wCAAwC;IACxC,qCAAqC;IACrC,8BAA8B;IAC9B,gCAAgC;IAChC,sBAAsB;IACtB,4BAA4B;IAC5B,mCAAmC;IACnC,oCAAoC;IACpC,sCAAsC;IACtC,kCAAkC;IAClC,2CAA2C;IAC3C,iCAAiC;IACjC,+BAA+B;CAChC,CAAC,CAAC","sourcesContent":["import { z } from \"zod\";\nimport {\n ProfilePictureUpdatedEventSchema,\n ProfilePreferencesUpdatedEventSchema,\n CraftSkillCreatedEventSchema,\n CraftSkillUpdatedEventSchema,\n CraftSkillDeletedEventSchema,\n FollowCreatedEventSchema,\n FollowRemovedEventSchema,\n MentionReadEventSchema,\n AuthStatusChangedEventSchema,\n ProfileDisplayNameChangedEventSchema,\n} from \"./domain-events-user.js\";\nimport {\n WorkProjectCreatedEventSchema,\n WorkProjectUpdatedEventSchema,\n WorkProjectPublishedEventSchema,\n WorkProjectStakeSharesUpdatedEventSchema,\n GuildInviteSentEventSchema,\n GuildInviteAcceptedEventSchema,\n GuildInviteDeclinedEventSchema,\n GuildInviteCancelledEventSchema,\n AuditionPromptCreatedEventSchema,\n AuditionEntrySubmittedEventSchema,\n AuditionEntryVoteRecordedEventSchema,\n AuditionClosedEventSchema,\n CommissionCreatedEventSchema,\n CommissionProposalSubmittedEventSchema,\n CommissionClosedEventSchema,\n CommissionProposalSavedEventSchema,\n CommissionProposalRemovedEventSchema,\n HallLibraryCoverUpdatedEventSchema,\n WorkRealmCoverUpdatedEventSchema,\n WorkRealmDetailsUpdatedEventSchema,\n HallLibrarySubItemUpdatedEventSchema,\n ThresholdLibrarySubmittedEventSchema,\n} from \"./domain-events-work.js\";\nimport {\n SquareStreetzPostCreatedEventSchema,\n SquareStreetzPostLikedEventSchema,\n SquareStreetzPostUnlikedEventSchema,\n} from \"./domain-events-social.js\";\nimport {\n ModerationViolationCreatedEventSchema,\n ThresholdLibraryApprovedEventSchema,\n ThresholdLibraryNeedsRevisionEventSchema,\n AdminDispatchThreadUpdatedEventSchema,\n AdminAppealReviewedEventSchema,\n AdminDispatchReviewedEventSchema,\n ViolationAppealSubmittedEventSchema,\n AdminDisplayNameResetForcedEventSchema,\n HallContentChangeRequestApprovedEventSchema,\n SystemSlotVideoUpdatedEventSchema,\n SystemSlotUidUpdatedEventSchema,\n} from \"./domain-events-admin.js\";\n\nexport * from \"./domain-events-user.js\";\nexport * from \"./domain-events-work.js\";\nexport * from \"./domain-events-social.js\";\nexport * from \"./domain-events-admin.js\";\n\n// ============================================================================\n// DomainEvent — typed business actions emitted by mutations and upload\n// processors. The frontend registry (ttt-prod/src/lib/domain-events.ts) maps\n// each variant to a list of TanStack Query cache invalidations.\n//\n// Adding a new variant is a coordinated deploy:\n// 1. Add it here. Publish this package.\n// 2. Add a registry entry in ttt-prod. Deploy.\n// 3. Update producers (mutation hooks or processors) to emit it.\n//\n// The schema is .strict() end-to-end — unknown event types fail parse and\n// the consuming hook in ttt-prod logs to Sentry and skips the doc.\n// ============================================================================\n\nexport const DomainEventSchema = z.discriminatedUnion('type', [\n ProfilePictureUpdatedEventSchema,\n CraftSkillCreatedEventSchema,\n SquareStreetzPostCreatedEventSchema,\n AuditionPromptCreatedEventSchema,\n AuditionEntrySubmittedEventSchema,\n CommissionCreatedEventSchema,\n CommissionProposalSubmittedEventSchema,\n WorkProjectUpdatedEventSchema,\n HallLibraryCoverUpdatedEventSchema,\n WorkRealmCoverUpdatedEventSchema,\n HallLibrarySubItemUpdatedEventSchema,\n ModerationViolationCreatedEventSchema,\n FollowCreatedEventSchema,\n FollowRemovedEventSchema,\n SquareStreetzPostLikedEventSchema,\n SquareStreetzPostUnlikedEventSchema,\n ProfilePreferencesUpdatedEventSchema,\n CraftSkillDeletedEventSchema,\n CraftSkillUpdatedEventSchema,\n WorkProjectCreatedEventSchema,\n WorkProjectPublishedEventSchema,\n WorkProjectStakeSharesUpdatedEventSchema,\n GuildInviteSentEventSchema,\n GuildInviteAcceptedEventSchema,\n GuildInviteDeclinedEventSchema,\n GuildInviteCancelledEventSchema,\n AuditionEntryVoteRecordedEventSchema,\n AuditionClosedEventSchema,\n CommissionClosedEventSchema,\n CommissionProposalSavedEventSchema,\n CommissionProposalRemovedEventSchema,\n ThresholdLibrarySubmittedEventSchema,\n ThresholdLibraryApprovedEventSchema,\n ThresholdLibraryNeedsRevisionEventSchema,\n AdminDispatchThreadUpdatedEventSchema,\n AdminAppealReviewedEventSchema,\n AdminDispatchReviewedEventSchema,\n MentionReadEventSchema,\n AuthStatusChangedEventSchema,\n ViolationAppealSubmittedEventSchema,\n ProfileDisplayNameChangedEventSchema,\n AdminDisplayNameResetForcedEventSchema,\n WorkRealmDetailsUpdatedEventSchema,\n HallContentChangeRequestApprovedEventSchema,\n SystemSlotVideoUpdatedEventSchema,\n SystemSlotUidUpdatedEventSchema,\n]);\n\nexport type DomainEvent = z.infer<typeof DomainEventSchema>;\n\n// Helper for callers that need to extract the ids type for a specific\n// event variant (e.g. registry entries in the consuming repo).\nexport type DomainEventIdsFor<T extends DomainEvent['type']> = Extract<\n DomainEvent,\n { type: T }\n>['ids'];\n\n\n\n\n\n"]}
|
|
1
|
+
{"version":3,"file":"domain-events.js","sourceRoot":"","sources":["../../src/media/domain-events.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACL,gCAAgC,EAChC,oCAAoC,EACpC,4BAA4B,EAC5B,4BAA4B,EAC5B,4BAA4B,EAC5B,wBAAwB,EACxB,wBAAwB,EACxB,sBAAsB,EACtB,4BAA4B,EAC5B,oCAAoC,GACrC,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,6BAA6B,EAC7B,6BAA6B,EAC7B,+BAA+B,EAC/B,wCAAwC,EACxC,0BAA0B,EAC1B,8BAA8B,EAC9B,8BAA8B,EAC9B,+BAA+B,EAC/B,mCAAmC,EACnC,gCAAgC,EAChC,iCAAiC,EACjC,oCAAoC,EACpC,yBAAyB,EACzB,4BAA4B,EAC5B,sCAAsC,EACtC,2BAA2B,EAC3B,kCAAkC,EAClC,oCAAoC,EACpC,kCAAkC,EAClC,gCAAgC,EAChC,kCAAkC,EAClC,oCAAoC,EACpC,oCAAoC,GACrC,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,mCAAmC,EACnC,iCAAiC,EACjC,mCAAmC,GACpC,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,qCAAqC,EACrC,mCAAmC,EACnC,wCAAwC,EACxC,qCAAqC,EACrC,8BAA8B,EAC9B,gCAAgC,EAChC,mCAAmC,EACnC,sCAAsC,EACtC,2CAA2C,EAC3C,iCAAiC,EACjC,+BAA+B,GAChC,MAAM,0BAA0B,CAAC;AAElC,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,0BAA0B,CAAC;AAEzC,+EAA+E;AAC/E,uEAAuE;AACvE,6EAA6E;AAC7E,gEAAgE;AAChE,EAAE;AACF,gDAAgD;AAChD,0CAA0C;AAC1C,iDAAiD;AACjD,mEAAmE;AACnE,EAAE;AACF,0EAA0E;AAC1E,mEAAmE;AACnE,+EAA+E;AAE/E,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE;IAC5D,gCAAgC;IAChC,4BAA4B;IAC5B,mCAAmC;IACnC,gCAAgC;IAChC,iCAAiC;IACjC,4BAA4B;IAC5B,sCAAsC;IACtC,6BAA6B;IAC7B,kCAAkC;IAClC,gCAAgC;IAChC,oCAAoC;IACpC,qCAAqC;IACrC,wBAAwB;IACxB,wBAAwB;IACxB,iCAAiC;IACjC,mCAAmC;IACnC,oCAAoC;IACpC,4BAA4B;IAC5B,4BAA4B;IAC5B,6BAA6B;IAC7B,+BAA+B;IAC/B,wCAAwC;IACxC,0BAA0B;IAC1B,8BAA8B;IAC9B,8BAA8B;IAC9B,+BAA+B;IAC/B,mCAAmC;IACnC,oCAAoC;IACpC,yBAAyB;IACzB,2BAA2B;IAC3B,kCAAkC;IAClC,oCAAoC;IACpC,oCAAoC;IACpC,mCAAmC;IACnC,wCAAwC;IACxC,qCAAqC;IACrC,8BAA8B;IAC9B,gCAAgC;IAChC,sBAAsB;IACtB,4BAA4B;IAC5B,mCAAmC;IACnC,oCAAoC;IACpC,sCAAsC;IACtC,kCAAkC;IAClC,2CAA2C;IAC3C,iCAAiC;IACjC,+BAA+B;CAChC,CAAC,CAAC","sourcesContent":["import { z } from \"zod\";\nimport {\n ProfilePictureUpdatedEventSchema,\n ProfilePreferencesUpdatedEventSchema,\n CraftSkillCreatedEventSchema,\n CraftSkillUpdatedEventSchema,\n CraftSkillDeletedEventSchema,\n FollowCreatedEventSchema,\n FollowRemovedEventSchema,\n MentionReadEventSchema,\n AuthStatusChangedEventSchema,\n ProfileDisplayNameChangedEventSchema,\n} from \"./domain-events-user.js\";\nimport {\n WorkProjectCreatedEventSchema,\n WorkProjectUpdatedEventSchema,\n WorkProjectPublishedEventSchema,\n WorkProjectStakeSharesUpdatedEventSchema,\n GuildInviteSentEventSchema,\n GuildInviteAcceptedEventSchema,\n GuildInviteDeclinedEventSchema,\n GuildInviteCancelledEventSchema,\n WorkProjectGuildmateLeftEventSchema,\n AuditionPromptCreatedEventSchema,\n AuditionEntrySubmittedEventSchema,\n AuditionEntryVoteRecordedEventSchema,\n AuditionClosedEventSchema,\n CommissionCreatedEventSchema,\n CommissionProposalSubmittedEventSchema,\n CommissionClosedEventSchema,\n CommissionProposalSavedEventSchema,\n CommissionProposalRemovedEventSchema,\n HallLibraryCoverUpdatedEventSchema,\n WorkRealmCoverUpdatedEventSchema,\n WorkRealmDetailsUpdatedEventSchema,\n HallLibrarySubItemUpdatedEventSchema,\n ThresholdLibrarySubmittedEventSchema,\n} from \"./domain-events-work.js\";\nimport {\n SquareStreetzPostCreatedEventSchema,\n SquareStreetzPostLikedEventSchema,\n SquareStreetzPostUnlikedEventSchema,\n} from \"./domain-events-social.js\";\nimport {\n ModerationViolationCreatedEventSchema,\n ThresholdLibraryApprovedEventSchema,\n ThresholdLibraryNeedsRevisionEventSchema,\n AdminDispatchThreadUpdatedEventSchema,\n AdminAppealReviewedEventSchema,\n AdminDispatchReviewedEventSchema,\n ViolationAppealSubmittedEventSchema,\n AdminDisplayNameResetForcedEventSchema,\n HallContentChangeRequestApprovedEventSchema,\n SystemSlotVideoUpdatedEventSchema,\n SystemSlotUidUpdatedEventSchema,\n} from \"./domain-events-admin.js\";\n\nexport * from \"./domain-events-user.js\";\nexport * from \"./domain-events-work.js\";\nexport * from \"./domain-events-social.js\";\nexport * from \"./domain-events-admin.js\";\n\n// ============================================================================\n// DomainEvent — typed business actions emitted by mutations and upload\n// processors. The frontend registry (ttt-prod/src/lib/domain-events.ts) maps\n// each variant to a list of TanStack Query cache invalidations.\n//\n// Adding a new variant is a coordinated deploy:\n// 1. Add it here. Publish this package.\n// 2. Add a registry entry in ttt-prod. Deploy.\n// 3. Update producers (mutation hooks or processors) to emit it.\n//\n// The schema is .strict() end-to-end — unknown event types fail parse and\n// the consuming hook in ttt-prod logs to Sentry and skips the doc.\n// ============================================================================\n\nexport const DomainEventSchema = z.discriminatedUnion('type', [\n ProfilePictureUpdatedEventSchema,\n CraftSkillCreatedEventSchema,\n SquareStreetzPostCreatedEventSchema,\n AuditionPromptCreatedEventSchema,\n AuditionEntrySubmittedEventSchema,\n CommissionCreatedEventSchema,\n CommissionProposalSubmittedEventSchema,\n WorkProjectUpdatedEventSchema,\n HallLibraryCoverUpdatedEventSchema,\n WorkRealmCoverUpdatedEventSchema,\n HallLibrarySubItemUpdatedEventSchema,\n ModerationViolationCreatedEventSchema,\n FollowCreatedEventSchema,\n FollowRemovedEventSchema,\n SquareStreetzPostLikedEventSchema,\n SquareStreetzPostUnlikedEventSchema,\n ProfilePreferencesUpdatedEventSchema,\n CraftSkillDeletedEventSchema,\n CraftSkillUpdatedEventSchema,\n WorkProjectCreatedEventSchema,\n WorkProjectPublishedEventSchema,\n WorkProjectStakeSharesUpdatedEventSchema,\n GuildInviteSentEventSchema,\n GuildInviteAcceptedEventSchema,\n GuildInviteDeclinedEventSchema,\n GuildInviteCancelledEventSchema,\n WorkProjectGuildmateLeftEventSchema,\n AuditionEntryVoteRecordedEventSchema,\n AuditionClosedEventSchema,\n CommissionClosedEventSchema,\n CommissionProposalSavedEventSchema,\n CommissionProposalRemovedEventSchema,\n ThresholdLibrarySubmittedEventSchema,\n ThresholdLibraryApprovedEventSchema,\n ThresholdLibraryNeedsRevisionEventSchema,\n AdminDispatchThreadUpdatedEventSchema,\n AdminAppealReviewedEventSchema,\n AdminDispatchReviewedEventSchema,\n MentionReadEventSchema,\n AuthStatusChangedEventSchema,\n ViolationAppealSubmittedEventSchema,\n ProfileDisplayNameChangedEventSchema,\n AdminDisplayNameResetForcedEventSchema,\n WorkRealmDetailsUpdatedEventSchema,\n HallContentChangeRequestApprovedEventSchema,\n SystemSlotVideoUpdatedEventSchema,\n SystemSlotUidUpdatedEventSchema,\n]);\n\nexport type DomainEvent = z.infer<typeof DomainEventSchema>;\n\n// Helper for callers that need to extract the ids type for a specific\n// event variant (e.g. registry entries in the consuming repo).\nexport type DomainEventIdsFor<T extends DomainEvent['type']> = Extract<\n DomainEvent,\n { type: T }\n>['ids'];\n\n\n\n\n\n"]}
|
|
@@ -217,6 +217,12 @@ export declare const PendingMediaResultSchema: z.ZodObject<{
|
|
|
217
217
|
workProjectId: z.ZodString;
|
|
218
218
|
guildInviteId: z.ZodString;
|
|
219
219
|
}, z.core.$strict>;
|
|
220
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
221
|
+
type: z.ZodLiteral<"workProject.guildmateLeft">;
|
|
222
|
+
ids: z.ZodObject<{
|
|
223
|
+
workProjectId: z.ZodString;
|
|
224
|
+
userId: z.ZodString;
|
|
225
|
+
}, z.core.$strict>;
|
|
220
226
|
}, z.core.$strict>, z.ZodObject<{
|
|
221
227
|
type: z.ZodLiteral<"audition.entryVoted">;
|
|
222
228
|
ids: z.ZodObject<{
|
|
@@ -705,6 +711,12 @@ export declare const PendingMediaCompletedSchema: z.ZodObject<{
|
|
|
705
711
|
workProjectId: z.ZodString;
|
|
706
712
|
guildInviteId: z.ZodString;
|
|
707
713
|
}, z.core.$strict>;
|
|
714
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
715
|
+
type: z.ZodLiteral<"workProject.guildmateLeft">;
|
|
716
|
+
ids: z.ZodObject<{
|
|
717
|
+
workProjectId: z.ZodString;
|
|
718
|
+
userId: z.ZodString;
|
|
719
|
+
}, z.core.$strict>;
|
|
708
720
|
}, z.core.$strict>, z.ZodObject<{
|
|
709
721
|
type: z.ZodLiteral<"audition.entryVoted">;
|
|
710
722
|
ids: z.ZodObject<{
|
|
@@ -1210,6 +1222,12 @@ export declare const PendingMediaRejectedSchema: z.ZodObject<{
|
|
|
1210
1222
|
workProjectId: z.ZodString;
|
|
1211
1223
|
guildInviteId: z.ZodString;
|
|
1212
1224
|
}, z.core.$strict>;
|
|
1225
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
1226
|
+
type: z.ZodLiteral<"workProject.guildmateLeft">;
|
|
1227
|
+
ids: z.ZodObject<{
|
|
1228
|
+
workProjectId: z.ZodString;
|
|
1229
|
+
userId: z.ZodString;
|
|
1230
|
+
}, z.core.$strict>;
|
|
1213
1231
|
}, z.core.$strict>, z.ZodObject<{
|
|
1214
1232
|
type: z.ZodLiteral<"audition.entryVoted">;
|
|
1215
1233
|
ids: z.ZodObject<{
|
|
@@ -1758,6 +1776,12 @@ export declare const PendingMediaSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
|
1758
1776
|
workProjectId: z.ZodString;
|
|
1759
1777
|
guildInviteId: z.ZodString;
|
|
1760
1778
|
}, z.core.$strict>;
|
|
1779
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
1780
|
+
type: z.ZodLiteral<"workProject.guildmateLeft">;
|
|
1781
|
+
ids: z.ZodObject<{
|
|
1782
|
+
workProjectId: z.ZodString;
|
|
1783
|
+
userId: z.ZodString;
|
|
1784
|
+
}, z.core.$strict>;
|
|
1761
1785
|
}, z.core.$strict>, z.ZodObject<{
|
|
1762
1786
|
type: z.ZodLiteral<"audition.entryVoted">;
|
|
1763
1787
|
ids: z.ZodObject<{
|
|
@@ -2261,6 +2285,12 @@ export declare const PendingMediaSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
|
2261
2285
|
workProjectId: z.ZodString;
|
|
2262
2286
|
guildInviteId: z.ZodString;
|
|
2263
2287
|
}, z.core.$strict>;
|
|
2288
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
2289
|
+
type: z.ZodLiteral<"workProject.guildmateLeft">;
|
|
2290
|
+
ids: z.ZodObject<{
|
|
2291
|
+
workProjectId: z.ZodString;
|
|
2292
|
+
userId: z.ZodString;
|
|
2293
|
+
}, z.core.$strict>;
|
|
2264
2294
|
}, z.core.$strict>, z.ZodObject<{
|
|
2265
2295
|
type: z.ZodLiteral<"audition.entryVoted">;
|
|
2266
2296
|
ids: z.ZodObject<{
|
|
@@ -2681,6 +2711,12 @@ export declare const ArchivedPendingMediaCompletedSchema: z.ZodObject<{
|
|
|
2681
2711
|
workProjectId: z.ZodString;
|
|
2682
2712
|
guildInviteId: z.ZodString;
|
|
2683
2713
|
}, z.core.$strict>;
|
|
2714
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
2715
|
+
type: z.ZodLiteral<"workProject.guildmateLeft">;
|
|
2716
|
+
ids: z.ZodObject<{
|
|
2717
|
+
workProjectId: z.ZodString;
|
|
2718
|
+
userId: z.ZodString;
|
|
2719
|
+
}, z.core.$strict>;
|
|
2684
2720
|
}, z.core.$strict>, z.ZodObject<{
|
|
2685
2721
|
type: z.ZodLiteral<"audition.entryVoted">;
|
|
2686
2722
|
ids: z.ZodObject<{
|
|
@@ -3188,6 +3224,12 @@ export declare const ArchivedPendingMediaRejectedSchema: z.ZodObject<{
|
|
|
3188
3224
|
workProjectId: z.ZodString;
|
|
3189
3225
|
guildInviteId: z.ZodString;
|
|
3190
3226
|
}, z.core.$strict>;
|
|
3227
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
3228
|
+
type: z.ZodLiteral<"workProject.guildmateLeft">;
|
|
3229
|
+
ids: z.ZodObject<{
|
|
3230
|
+
workProjectId: z.ZodString;
|
|
3231
|
+
userId: z.ZodString;
|
|
3232
|
+
}, z.core.$strict>;
|
|
3191
3233
|
}, z.core.$strict>, z.ZodObject<{
|
|
3192
3234
|
type: z.ZodLiteral<"audition.entryVoted">;
|
|
3193
3235
|
ids: z.ZodObject<{
|
|
@@ -3609,6 +3651,12 @@ export declare const ArchivedPendingMediaSchema: z.ZodDiscriminatedUnion<[z.ZodO
|
|
|
3609
3651
|
workProjectId: z.ZodString;
|
|
3610
3652
|
guildInviteId: z.ZodString;
|
|
3611
3653
|
}, z.core.$strict>;
|
|
3654
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
3655
|
+
type: z.ZodLiteral<"workProject.guildmateLeft">;
|
|
3656
|
+
ids: z.ZodObject<{
|
|
3657
|
+
workProjectId: z.ZodString;
|
|
3658
|
+
userId: z.ZodString;
|
|
3659
|
+
}, z.core.$strict>;
|
|
3612
3660
|
}, z.core.$strict>, z.ZodObject<{
|
|
3613
3661
|
type: z.ZodLiteral<"audition.entryVoted">;
|
|
3614
3662
|
ids: z.ZodObject<{
|
|
@@ -4114,6 +4162,12 @@ export declare const ArchivedPendingMediaSchema: z.ZodDiscriminatedUnion<[z.ZodO
|
|
|
4114
4162
|
workProjectId: z.ZodString;
|
|
4115
4163
|
guildInviteId: z.ZodString;
|
|
4116
4164
|
}, z.core.$strict>;
|
|
4165
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
4166
|
+
type: z.ZodLiteral<"workProject.guildmateLeft">;
|
|
4167
|
+
ids: z.ZodObject<{
|
|
4168
|
+
workProjectId: z.ZodString;
|
|
4169
|
+
userId: z.ZodString;
|
|
4170
|
+
}, z.core.$strict>;
|
|
4117
4171
|
}, z.core.$strict>, z.ZodObject<{
|
|
4118
4172
|
type: z.ZodLiteral<"audition.entryVoted">;
|
|
4119
4173
|
ids: z.ZodObject<{
|
|
@@ -4540,6 +4594,12 @@ export declare const ArchivedPendingMediaDocSchema: z.ZodUnion<readonly [z.ZodDi
|
|
|
4540
4594
|
workProjectId: z.ZodString;
|
|
4541
4595
|
guildInviteId: z.ZodString;
|
|
4542
4596
|
}, z.core.$strict>;
|
|
4597
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
4598
|
+
type: z.ZodLiteral<"workProject.guildmateLeft">;
|
|
4599
|
+
ids: z.ZodObject<{
|
|
4600
|
+
workProjectId: z.ZodString;
|
|
4601
|
+
userId: z.ZodString;
|
|
4602
|
+
}, z.core.$strict>;
|
|
4543
4603
|
}, z.core.$strict>, z.ZodObject<{
|
|
4544
4604
|
type: z.ZodLiteral<"audition.entryVoted">;
|
|
4545
4605
|
ids: z.ZodObject<{
|
|
@@ -5045,6 +5105,12 @@ export declare const ArchivedPendingMediaDocSchema: z.ZodUnion<readonly [z.ZodDi
|
|
|
5045
5105
|
workProjectId: z.ZodString;
|
|
5046
5106
|
guildInviteId: z.ZodString;
|
|
5047
5107
|
}, z.core.$strict>;
|
|
5108
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
5109
|
+
type: z.ZodLiteral<"workProject.guildmateLeft">;
|
|
5110
|
+
ids: z.ZodObject<{
|
|
5111
|
+
workProjectId: z.ZodString;
|
|
5112
|
+
userId: z.ZodString;
|
|
5113
|
+
}, z.core.$strict>;
|
|
5048
5114
|
}, z.core.$strict>, z.ZodObject<{
|
|
5049
5115
|
type: z.ZodLiteral<"audition.entryVoted">;
|
|
5050
5116
|
ids: z.ZodObject<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pending-media.d.ts","sourceRoot":"","sources":["../../src/media/pending-media.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAS7B,eAAO,MAAM,+BAA+B;;;;;;;EAA0C,CAAC;AACvF,eAAO,MAAM,wBAAwB
|
|
1
|
+
{"version":3,"file":"pending-media.d.ts","sourceRoot":"","sources":["../../src/media/pending-media.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAS7B,eAAO,MAAM,+BAA+B;;;;;;;EAA0C,CAAC;AACvF,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAAmC,CAAC;AACzE,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAAoC,CAAC;AAC3E,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAAuC,CAAC;AACjF,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAAsC,CAAC;AAC/E,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAAmC,CAAC;AACzE,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAAqC,CAAC;AAC7E,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8BAA6B,CAAC;AAE7D,eAAO,MAAM,mCAAmC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAA8C,CAAC;AAC/F,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAA2C,CAAC;AACzF,eAAO,MAAM,kCAAkC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAA6C,CAAC;AAC7F,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8BAAqC,CAAC;AAC7E,eAAO,MAAM,qCAAqC;;;;kBAAgD,CAAC;AACnG,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBAAwC,CAAC;AAEnF,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,+BAA+B,CAAC,CAAC;AACxF,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAC1E,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAC5E,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAClF,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAChF,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAC1E,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAC9E,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAC9D,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAC9E,MAAM,MAAM,+BAA+B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qCAAqC,CAAC,CAAC;AACpG,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAC;AAEpF,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,YAAY,CAE9D;AAED,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,OAAO,GAAG,oBAAoB,CAE9E"}
|
|
@@ -81,17 +81,13 @@ export declare const GUILD_STANDING_VALUES: GuildStandingValue[];
|
|
|
81
81
|
export declare const WORK_FILE_ADMIN_GUILD_STANDING_IDS: readonly ["StewardOwner", "WorkProjectManager", "WorkAssetAdmin"];
|
|
82
82
|
/**
|
|
83
83
|
* A Work's invite handlers: they send the Work's invites, list them, cancel them, and take the
|
|
84
|
-
* Work's side in every invite conversation — they see it, reply in it,
|
|
84
|
+
* Work's side in every invite conversation — they see it, reply in it, share files in it, and
|
|
85
|
+
* agree for the Work. A Stake Share Manager is one: it handles invites like an Invite Manager and
|
|
86
|
+
* also changes their offers.
|
|
85
87
|
*/
|
|
86
|
-
export declare const GUILD_INVITE_HANDLER_GUILD_STANDING_IDS: readonly ["StewardOwner", "WorkProjectManager", "InviteManager"];
|
|
88
|
+
export declare const GUILD_INVITE_HANDLER_GUILD_STANDING_IDS: readonly ["StewardOwner", "WorkProjectManager", "InviteManager", "StakeShareManager"];
|
|
87
89
|
/** The standings that change stake amounts — active Guildmates' stakes and pending invite offers. */
|
|
88
90
|
export declare const STAKE_SHARE_POWER_GUILD_STANDING_IDS: readonly ["StewardOwner", "WorkProjectManager", "StakeShareManager"];
|
|
89
|
-
/**
|
|
90
|
-
* The standings that open the Work's invites: the invite handlers, and the stake-power standings,
|
|
91
|
-
* which open an invite to change its offer. Opening an invite is not taking part in it — the
|
|
92
|
-
* conversation, its files, the Work's agreement, and cancelling stay the handlers'.
|
|
93
|
-
*/
|
|
94
|
-
export declare const GUILD_INVITE_VIEWER_GUILD_STANDING_IDS: readonly GuildStandingId[];
|
|
95
91
|
export declare const WORK_PROJECT_ACTIONS: {
|
|
96
92
|
readonly 'workProject.read': {
|
|
97
93
|
readonly label: "Read workProject";
|
|
@@ -121,17 +117,17 @@ export declare const WORK_PROJECT_ACTIONS: {
|
|
|
121
117
|
readonly 'guildInvite.send': {
|
|
122
118
|
readonly label: "Send invites";
|
|
123
119
|
readonly description: "Start a workProject invite conversation and reserve pending stakes.";
|
|
124
|
-
readonly grantedTo: readonly ["StewardOwner", "WorkProjectManager", "InviteManager"];
|
|
120
|
+
readonly grantedTo: readonly ["StewardOwner", "WorkProjectManager", "InviteManager", "StakeShareManager"];
|
|
125
121
|
};
|
|
126
122
|
readonly 'guildInvite.list': {
|
|
127
123
|
readonly label: "List invites";
|
|
128
|
-
readonly description:
|
|
129
|
-
readonly grantedTo: readonly
|
|
124
|
+
readonly description: "Open the Work's invites and see their state and offers.";
|
|
125
|
+
readonly grantedTo: readonly ["StewardOwner", "WorkProjectManager", "InviteManager", "StakeShareManager"];
|
|
130
126
|
};
|
|
131
127
|
readonly 'guildInvite.revokeAny': {
|
|
132
128
|
readonly label: "Revoke pending invites";
|
|
133
129
|
readonly description: "Cancel or revoke pending workProject invites.";
|
|
134
|
-
readonly grantedTo: readonly ["StewardOwner", "WorkProjectManager", "InviteManager"];
|
|
130
|
+
readonly grantedTo: readonly ["StewardOwner", "WorkProjectManager", "InviteManager", "StakeShareManager"];
|
|
135
131
|
};
|
|
136
132
|
readonly 'guildInvite.stakeShares.update': {
|
|
137
133
|
readonly label: "Update invite stakes";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"work-project-permissions-data.d.ts","sourceRoot":"","sources":["../../src/permissions/work-project-permissions-data.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiDlB,CAAC;AAEX,MAAM,MAAM,eAAe,GAAG,MAAM,OAAO,eAAe,CAAC;AAC3D,eAAO,MAAM,kBAAkB,EAAmC,eAAe,EAAE,CAAC;AAEpF;;;;;GAKG;AACH,eAAO,MAAM,+BAA+B,gBAAoD,CAAC;AACjG,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;CAaa,CAAC;AACrD,MAAM,MAAM,kBAAkB,GAAG,CAAC,OAAO,0BAA0B,CAAC,CAAC,eAAe,CAAC,CAAC;AACtF,eAAO,MAAM,qBAAqB,EAAgD,kBAAkB,EAAE,CAAC;AAEvG;;;;GAIG;AACH,eAAO,MAAM,kCAAkC,mEAIA,CAAC;AAEhD
|
|
1
|
+
{"version":3,"file":"work-project-permissions-data.d.ts","sourceRoot":"","sources":["../../src/permissions/work-project-permissions-data.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiDlB,CAAC;AAEX,MAAM,MAAM,eAAe,GAAG,MAAM,OAAO,eAAe,CAAC;AAC3D,eAAO,MAAM,kBAAkB,EAAmC,eAAe,EAAE,CAAC;AAEpF;;;;;GAKG;AACH,eAAO,MAAM,+BAA+B,gBAAoD,CAAC;AACjG,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;CAaa,CAAC;AACrD,MAAM,MAAM,kBAAkB,GAAG,CAAC,OAAO,0BAA0B,CAAC,CAAC,eAAe,CAAC,CAAC;AACtF,eAAO,MAAM,qBAAqB,EAAgD,kBAAkB,EAAE,CAAC;AAEvG;;;;GAIG;AACH,eAAO,MAAM,kCAAkC,mEAIA,CAAC;AAEhD;;;;;GAKG;AACH,eAAO,MAAM,uCAAuC,uFAKL,CAAC;AAEhD,qGAAqG;AACrG,eAAO,MAAM,oCAAoC,sEAIF,CAAC;AAEhD,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkN/B,CAAC;AAEH,MAAM,MAAM,mBAAmB,GAAG,MAAM,OAAO,oBAAoB,CAAC;AACpE,eAAO,MAAM,uBAAuB,EAAwC,mBAAmB,EAAE,CAAC"}
|
|
@@ -83,12 +83,15 @@ export const WORK_FILE_ADMIN_GUILD_STANDING_IDS = [
|
|
|
83
83
|
];
|
|
84
84
|
/**
|
|
85
85
|
* A Work's invite handlers: they send the Work's invites, list them, cancel them, and take the
|
|
86
|
-
* Work's side in every invite conversation — they see it, reply in it,
|
|
86
|
+
* Work's side in every invite conversation — they see it, reply in it, share files in it, and
|
|
87
|
+
* agree for the Work. A Stake Share Manager is one: it handles invites like an Invite Manager and
|
|
88
|
+
* also changes their offers.
|
|
87
89
|
*/
|
|
88
90
|
export const GUILD_INVITE_HANDLER_GUILD_STANDING_IDS = [
|
|
89
91
|
'StewardOwner',
|
|
90
92
|
'WorkProjectManager',
|
|
91
93
|
'InviteManager',
|
|
94
|
+
'StakeShareManager',
|
|
92
95
|
];
|
|
93
96
|
/** The standings that change stake amounts — active Guildmates' stakes and pending invite offers. */
|
|
94
97
|
export const STAKE_SHARE_POWER_GUILD_STANDING_IDS = [
|
|
@@ -96,14 +99,6 @@ export const STAKE_SHARE_POWER_GUILD_STANDING_IDS = [
|
|
|
96
99
|
'WorkProjectManager',
|
|
97
100
|
'StakeShareManager',
|
|
98
101
|
];
|
|
99
|
-
/**
|
|
100
|
-
* The standings that open the Work's invites: the invite handlers, and the stake-power standings,
|
|
101
|
-
* which open an invite to change its offer. Opening an invite is not taking part in it — the
|
|
102
|
-
* conversation, its files, the Work's agreement, and cancelling stay the handlers'.
|
|
103
|
-
*/
|
|
104
|
-
export const GUILD_INVITE_VIEWER_GUILD_STANDING_IDS = [
|
|
105
|
-
...new Set([...GUILD_INVITE_HANDLER_GUILD_STANDING_IDS, ...STAKE_SHARE_POWER_GUILD_STANDING_IDS]),
|
|
106
|
-
];
|
|
107
102
|
export const WORK_PROJECT_ACTIONS = {
|
|
108
103
|
'workProject.read': {
|
|
109
104
|
label: 'Read workProject',
|
|
@@ -141,9 +136,8 @@ export const WORK_PROJECT_ACTIONS = {
|
|
|
141
136
|
},
|
|
142
137
|
'guildInvite.list': {
|
|
143
138
|
label: 'List invites',
|
|
144
|
-
description: "Open the Work's invites and see their state and offers.
|
|
145
|
-
|
|
146
|
-
grantedTo: GUILD_INVITE_VIEWER_GUILD_STANDING_IDS,
|
|
139
|
+
description: "Open the Work's invites and see their state and offers.",
|
|
140
|
+
grantedTo: GUILD_INVITE_HANDLER_GUILD_STANDING_IDS,
|
|
147
141
|
},
|
|
148
142
|
'guildInvite.revokeAny': {
|
|
149
143
|
label: 'Revoke pending invites',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"work-project-permissions-data.js","sourceRoot":"","sources":["../../src/permissions/work-project-permissions-data.ts"],"names":[],"mappings":"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","sourcesContent":["export const GUILD_STANDINGS = {\n StewardOwner: {\n label: 'Steward',\n description: 'Work steward. Holds all workProject actions implicitly. Assigned automatically at workProject creation and non-assignable via guild standing management UIs.',\n },\n WorkProjectManager: {\n label: 'WorkProject Manager',\n description: 'Can perform every workProject action except granting Steward, WorkProjectManager, GuildStandingManager, or StakeShareManager.',\n },\n PublicWorkProjectEditor: {\n label: 'Public WorkProject Editor',\n description: 'Can edit public-facing workProject title, description, and copy.',\n },\n GuildStandingManager: {\n label: 'Guild Standing Manager',\n description: 'Can assign and remove ordinary workProject guild standings without escalating manager, stake-share, or trade-profession authority (tradeProfessions are folder/chat access keys, editable only by file-admin standings).',\n },\n StakeShareManager: {\n label: 'Stake Share Manager',\n description: 'Can adjust active Guildmate stakes and pending invite stake offers.',\n },\n InviteManager: {\n label: 'Invite Manager',\n description: 'Can send workProject invites, view invite state, and cancel or revoke pending invites.',\n },\n WorkAssetAdmin: {\n label: 'Work Asset Admin',\n description: 'Delegated file-system administration: create/rename file folders, assign folder trade-profession access, view every folder and file, and delete any file. Assignable only by the Steward.',\n },\n CommissionManager: {\n label: 'Commission Manager',\n description: 'Can open and close workProject commissions and manage proposals without starting invite conversations.',\n },\n AuditionManager: {\n label: 'Audition Manager',\n description: 'Can open and close workProject auditions without starting invite conversations.',\n },\n HallLibraryEditor: {\n label: 'Hall Editor',\n description: 'Can create and edit Tales, Tunes, Television content, Genres, and media assets.',\n },\n HallLibrarySubmitter: {\n label: 'Hall Submitter',\n description: 'Can submit workProject hall content for admin hall review.',\n },\n GuildChatChannelManager: {\n label: 'Guild Chat Channel Manager',\n description: 'Can create, update, archive, and delete workProject chat channels.',\n },\n} as const;\n\nexport type GuildStandingId = keyof typeof GUILD_STANDINGS;\nexport const GUILD_STANDING_IDS = Object.keys(GUILD_STANDINGS) as GuildStandingId[];\n\n/**\n * The work steward's standing id — the one standing that is never assignable and that\n * `GuildmateUser.guildStandings` carries (that array stores IDs, not display values;\n * this id's display value is 'Steward', so the two are not interchangeable).\n * Consumers branch on this rather than re-quoting the member.\n */\nexport const STEWARD_OWNER_GUILD_STANDING_ID = 'StewardOwner' as const satisfies GuildStandingId;\nexport const GUILD_STANDING_VALUE_BY_ID = {\n StewardOwner: 'Steward',\n WorkProjectManager: 'WorkProjectManager',\n PublicWorkProjectEditor: 'PublicWorkProjectEditor',\n GuildStandingManager: 'GuildStandingManager',\n StakeShareManager: 'StakeShareManager',\n InviteManager: 'InviteManager',\n WorkAssetAdmin: 'WorkAssetAdmin',\n CommissionManager: 'CommissionManager',\n AuditionManager: 'AuditionManager',\n HallLibraryEditor: 'HallLibraryEditor',\n HallLibrarySubmitter: 'HallLibrarySubmitter',\n GuildChatChannelManager: 'GuildChatChannelManager',\n} as const satisfies Record<GuildStandingId, string>;\nexport type GuildStandingValue = (typeof GUILD_STANDING_VALUE_BY_ID)[GuildStandingId];\nexport const GUILD_STANDING_VALUES = Object.values(GUILD_STANDING_VALUE_BY_ID) as GuildStandingValue[];\n\n/**\n * The standings that administer a Work's file system: create and manage folders, see every folder\n * and file, upload anywhere, delete any file, and request a file's share to the Realm. Every file\n * action's grant reads this list, and so does the file-admin check (`isWorkFileAdmin`).\n */\nexport const WORK_FILE_ADMIN_GUILD_STANDING_IDS = [\n 'StewardOwner',\n 'WorkProjectManager',\n 'WorkAssetAdmin',\n] as const satisfies readonly GuildStandingId[];\n\n/**\n * A Work's invite handlers: they send the Work's invites, list them, cancel them, and take the\n * Work's side in every invite conversation — they see it, reply in it, and accept for the Work.\n */\nexport const GUILD_INVITE_HANDLER_GUILD_STANDING_IDS = [\n 'StewardOwner',\n 'WorkProjectManager',\n 'InviteManager',\n] as const satisfies readonly GuildStandingId[];\n\n/** The standings that change stake amounts — active Guildmates' stakes and pending invite offers. */\nexport const STAKE_SHARE_POWER_GUILD_STANDING_IDS = [\n 'StewardOwner',\n 'WorkProjectManager',\n 'StakeShareManager',\n] as const satisfies readonly GuildStandingId[];\n\n/**\n * The standings that open the Work's invites: the invite handlers, and the stake-power standings,\n * which open an invite to change its offer. Opening an invite is not taking part in it — the\n * conversation, its files, the Work's agreement, and cancelling stay the handlers'.\n */\nexport const GUILD_INVITE_VIEWER_GUILD_STANDING_IDS: readonly GuildStandingId[] = [\n ...new Set<GuildStandingId>([...GUILD_INVITE_HANDLER_GUILD_STANDING_IDS, ...STAKE_SHARE_POWER_GUILD_STANDING_IDS]),\n];\n\nexport const WORK_PROJECT_ACTIONS = {\n 'workProject.read': {\n label: 'Read workProject',\n description: 'Baseline active-Guildmate read floor for internal workProject state.',\n grantedTo: GUILD_STANDING_IDS,\n },\n 'workProject.metadata.update': {\n label: 'Update workProject metadata',\n description: 'Edit working title, description, and public workProject copy.',\n grantedTo: ['StewardOwner', 'WorkProjectManager', 'PublicWorkProjectEditor'],\n },\n 'guildmateUser.guildStanding.update': {\n label: 'Update Guildmate guild standings',\n description: 'Assign or remove workProject guild standings on active Guildmates.',\n grantedTo: ['StewardOwner', 'WorkProjectManager', 'GuildStandingManager'],\n },\n 'guildmateUser.tradeProfession.update': {\n label: 'Update Guildmate tradeProfessions',\n description:\n 'Assign or remove Guildmate tradeProfessions. tradeProfessions gate custom-folder ' +\n 'visibility and chat-channel access targeting — they are access keys, not just staffing ' +\n 'labels — so this is restricted to file-admin standings (Steward + WorkProject Manager). ' +\n 'A trade edit can never grant the editor access they lack, since every grantee already ' +\n 'holds file-admin override.',\n grantedTo: ['StewardOwner', 'WorkProjectManager'],\n },\n 'workProject.stakeShares.addActive': {\n label: 'Add active Guildmate stakes',\n description: 'Increase stakes for an existing active workProject Guildmate.',\n grantedTo: STAKE_SHARE_POWER_GUILD_STANDING_IDS,\n },\n 'guildInvite.send': {\n label: 'Send invites',\n description: 'Start a workProject invite conversation and reserve pending stakes.',\n grantedTo: GUILD_INVITE_HANDLER_GUILD_STANDING_IDS,\n },\n 'guildInvite.list': {\n label: 'List invites',\n description:\n \"Open the Work's invites and see their state and offers. A stake-power standing opens an invite \" +\n 'to change its offer; replying, agreeing for the Work, and cancelling stay with the invite handlers.',\n grantedTo: GUILD_INVITE_VIEWER_GUILD_STANDING_IDS,\n },\n 'guildInvite.revokeAny': {\n label: 'Revoke pending invites',\n description: 'Cancel or revoke pending workProject invites.',\n grantedTo: GUILD_INVITE_HANDLER_GUILD_STANDING_IDS,\n },\n 'guildInvite.stakeShares.update': {\n label: 'Update invite stakes',\n description: 'Increase stakes offered on a pending invite.',\n grantedTo: STAKE_SHARE_POWER_GUILD_STANDING_IDS,\n },\n 'fileFolder.create': {\n label: 'Create file folders',\n description: 'Create workProject file folders and set their trade-profession access lists.',\n grantedTo: WORK_FILE_ADMIN_GUILD_STANDING_IDS,\n },\n 'fileFolder.manage': {\n label: 'Manage file folders',\n description: 'Rename folders, edit folder trade-profession access lists, and delete folders.',\n grantedTo: WORK_FILE_ADMIN_GUILD_STANDING_IDS,\n },\n 'fileFolder.viewAll': {\n label: 'View all file folders',\n description: 'View every folder and file regardless of folder trade-profession access (admin override).',\n grantedTo: WORK_FILE_ADMIN_GUILD_STANDING_IDS,\n },\n 'workFile.uploadAny': {\n label: 'Upload to any folder',\n description: 'Upload files to any folder regardless of folder trade-profession access (admin override).',\n grantedTo: WORK_FILE_ADMIN_GUILD_STANDING_IDS,\n },\n 'workFile.deleteAny': {\n label: 'Delete any file',\n description: 'Delete any file regardless of folder trade-profession access (admin override).',\n grantedTo: WORK_FILE_ADMIN_GUILD_STANDING_IDS,\n },\n 'workFile.promoteToRealm': {\n label: 'Request file sharing to realm',\n description: 'Submit a request to share a work file into its realm shared-file pool. ' +\n 'The realm steward approves the request and chooses the folder, or declines it; ' +\n 'nothing is shared to the realm until then. Canon promotion is a separate ' +\n 'realm-steward power, evaluated at the realm level, not here.',\n grantedTo: WORK_FILE_ADMIN_GUILD_STANDING_IDS,\n },\n 'commission.open': {\n label: 'Open commissions',\n description: 'Create workProject commission postings.',\n grantedTo: ['StewardOwner', 'WorkProjectManager', 'CommissionManager'],\n },\n 'commission.close': {\n label: 'Close commissions',\n description: 'Close workProject commission postings.',\n grantedTo: ['StewardOwner', 'WorkProjectManager', 'CommissionManager'],\n },\n 'commission.commissionProposal.save': {\n label: 'Save commission proposals',\n description: 'Save or unsave workProject commission proposals.',\n grantedTo: ['StewardOwner', 'WorkProjectManager', 'CommissionManager'],\n },\n 'commission.commissionProposal.reject': {\n label: 'Reject commission proposals',\n description: 'Reject workProject commission proposals.',\n grantedTo: ['StewardOwner', 'WorkProjectManager', 'CommissionManager'],\n },\n 'audition.open': {\n label: 'Open auditions',\n description: 'Create workProject audition prompts.',\n grantedTo: ['StewardOwner', 'WorkProjectManager', 'AuditionManager'],\n },\n 'audition.close': {\n label: 'Close auditions',\n description: 'Close workProject auditions.',\n grantedTo: ['StewardOwner', 'WorkProjectManager', 'AuditionManager'],\n },\n 'hallLibrary.chapter.create': {\n label: 'Create Tale chapters',\n description: 'Create Tale chapter content.',\n grantedTo: ['StewardOwner', 'WorkProjectManager', 'HallLibraryEditor'],\n },\n 'hallLibrary.tuneTrack.create': {\n label: 'Create Tune tracks',\n description: 'Create Tune track content.',\n grantedTo: ['StewardOwner', 'WorkProjectManager', 'HallLibraryEditor'],\n },\n 'hallLibrary.televisionEpisode.create': {\n label: 'Create Television episodes',\n description: 'Create Television episode content.',\n grantedTo: ['StewardOwner', 'WorkProjectManager', 'HallLibraryEditor'],\n },\n 'hallLibrary.chapter.details.update': {\n label: 'Update chapter details',\n description: 'Edit chapter details and body fields.',\n grantedTo: ['StewardOwner', 'WorkProjectManager', 'HallLibraryEditor'],\n },\n 'hallLibrary.tuneTrack.details.update': {\n label: 'Update track details',\n description: 'Edit track details and media metadata.',\n grantedTo: ['StewardOwner', 'WorkProjectManager', 'HallLibraryEditor'],\n },\n 'hallLibrary.televisionEpisode.details.update': {\n label: 'Update episode details',\n description: 'Edit episode details and media metadata.',\n grantedTo: ['StewardOwner', 'WorkProjectManager', 'HallLibraryEditor'],\n },\n 'hallLibrary.tale.workGenres.update': {\n label: 'Update Tale Genres',\n description: 'Edit Tale Genre assignments.',\n grantedTo: ['StewardOwner', 'WorkProjectManager', 'HallLibraryEditor'],\n },\n 'hallLibrary.tune.workGenres.update': {\n label: 'Update Tune Genres',\n description: 'Edit Tune Genre assignments.',\n grantedTo: ['StewardOwner', 'WorkProjectManager', 'HallLibraryEditor'],\n },\n 'hallLibrary.television.workGenres.update': {\n label: 'Update Television Genres',\n description: 'Edit Television Genre assignments.',\n grantedTo: ['StewardOwner', 'WorkProjectManager', 'HallLibraryEditor'],\n },\n 'hallLibrary.asset.upload': {\n label: 'Upload hallLibrary assets',\n description: 'Upload or replace covers and sub-item media assets.',\n grantedTo: ['StewardOwner', 'WorkProjectManager', 'HallLibraryEditor'],\n },\n 'hallLibrary.review.submit': {\n label: 'Submit hall review',\n description: 'Submit workProject content for admin hall review. Also gates withdrawing a still-pending submission.',\n grantedTo: ['StewardOwner', 'WorkProjectManager', 'HallLibrarySubmitter'],\n },\n 'hallLibrary.changeRequest.submit': {\n label: 'Request published changes',\n description: 'Propose text changes to a PUBLISHED hall item (reviewed by admins before anything changes).',\n grantedTo: ['StewardOwner', 'WorkProjectManager', 'HallLibrarySubmitter'],\n },\n 'guildChatChannel.create': {\n label: 'Create chat channels',\n description: 'Create workProject chat channels.',\n grantedTo: ['StewardOwner', 'WorkProjectManager', 'GuildChatChannelManager'],\n },\n 'guildChatChannel.update': {\n label: 'Update chat channels',\n description: 'Update workProject chat channel settings and access policy.',\n grantedTo: ['StewardOwner', 'WorkProjectManager', 'GuildChatChannelManager'],\n },\n 'guildChatChannel.archive': {\n label: 'Archive chat channels',\n description: 'Archive workProject chat channels.',\n grantedTo: ['StewardOwner', 'WorkProjectManager', 'GuildChatChannelManager'],\n },\n 'guildChatChannel.unarchive': {\n label: 'Restore archived chat channels',\n description: 'Restore workProject chat channels out of the archive.',\n grantedTo: ['StewardOwner', 'WorkProjectManager', 'GuildChatChannelManager'],\n },\n 'guildChatChannel.delete': {\n label: 'Delete chat channels',\n description: 'Delete (tombstone) workProject chat channels; storage is retained.',\n grantedTo: ['StewardOwner', 'WorkProjectManager', 'GuildChatChannelManager'],\n },\n 'adminDispatch.start': {\n label: 'Start admin correspondence',\n description:\n 'Open a platform correspondence thread with the admin team on behalf of the workProject. ' +\n 'Replying in an open workProject thread is any active Guildmate (not gated here).',\n grantedTo: ['StewardOwner', 'WorkProjectManager'],\n },\n} as const satisfies Record<string, {\n label: string;\n description: string;\n grantedTo: readonly GuildStandingId[];\n}>;\n\nexport type WorkProjectActionId = keyof typeof WORK_PROJECT_ACTIONS;\nexport const WORK_PROJECT_ACTION_IDS = Object.keys(WORK_PROJECT_ACTIONS) as WorkProjectActionId[];\n\n\n\n"]}
|
|
1
|
+
{"version":3,"file":"work-project-permissions-data.js","sourceRoot":"","sources":["../../src/permissions/work-project-permissions-data.ts"],"names":[],"mappings":"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","sourcesContent":["export const GUILD_STANDINGS = {\n StewardOwner: {\n label: 'Steward',\n description: 'Work steward. Holds all workProject actions implicitly. Assigned automatically at workProject creation and non-assignable via guild standing management UIs.',\n },\n WorkProjectManager: {\n label: 'WorkProject Manager',\n description: 'Can perform every workProject action except granting Steward, WorkProjectManager, GuildStandingManager, or StakeShareManager.',\n },\n PublicWorkProjectEditor: {\n label: 'Public WorkProject Editor',\n description: 'Can edit public-facing workProject title, description, and copy.',\n },\n GuildStandingManager: {\n label: 'Guild Standing Manager',\n description: 'Can assign and remove ordinary workProject guild standings without escalating manager, stake-share, or trade-profession authority (tradeProfessions are folder/chat access keys, editable only by file-admin standings).',\n },\n StakeShareManager: {\n label: 'Stake Share Manager',\n description: 'Can adjust active Guildmate stakes and pending invite stake offers.',\n },\n InviteManager: {\n label: 'Invite Manager',\n description: 'Can send workProject invites, view invite state, and cancel or revoke pending invites.',\n },\n WorkAssetAdmin: {\n label: 'Work Asset Admin',\n description: 'Delegated file-system administration: create/rename file folders, assign folder trade-profession access, view every folder and file, and delete any file. Assignable only by the Steward.',\n },\n CommissionManager: {\n label: 'Commission Manager',\n description: 'Can open and close workProject commissions and manage proposals without starting invite conversations.',\n },\n AuditionManager: {\n label: 'Audition Manager',\n description: 'Can open and close workProject auditions without starting invite conversations.',\n },\n HallLibraryEditor: {\n label: 'Hall Editor',\n description: 'Can create and edit Tales, Tunes, Television content, Genres, and media assets.',\n },\n HallLibrarySubmitter: {\n label: 'Hall Submitter',\n description: 'Can submit workProject hall content for admin hall review.',\n },\n GuildChatChannelManager: {\n label: 'Guild Chat Channel Manager',\n description: 'Can create, update, archive, and delete workProject chat channels.',\n },\n} as const;\n\nexport type GuildStandingId = keyof typeof GUILD_STANDINGS;\nexport const GUILD_STANDING_IDS = Object.keys(GUILD_STANDINGS) as GuildStandingId[];\n\n/**\n * The work steward's standing id — the one standing that is never assignable and that\n * `GuildmateUser.guildStandings` carries (that array stores IDs, not display values;\n * this id's display value is 'Steward', so the two are not interchangeable).\n * Consumers branch on this rather than re-quoting the member.\n */\nexport const STEWARD_OWNER_GUILD_STANDING_ID = 'StewardOwner' as const satisfies GuildStandingId;\nexport const GUILD_STANDING_VALUE_BY_ID = {\n StewardOwner: 'Steward',\n WorkProjectManager: 'WorkProjectManager',\n PublicWorkProjectEditor: 'PublicWorkProjectEditor',\n GuildStandingManager: 'GuildStandingManager',\n StakeShareManager: 'StakeShareManager',\n InviteManager: 'InviteManager',\n WorkAssetAdmin: 'WorkAssetAdmin',\n CommissionManager: 'CommissionManager',\n AuditionManager: 'AuditionManager',\n HallLibraryEditor: 'HallLibraryEditor',\n HallLibrarySubmitter: 'HallLibrarySubmitter',\n GuildChatChannelManager: 'GuildChatChannelManager',\n} as const satisfies Record<GuildStandingId, string>;\nexport type GuildStandingValue = (typeof GUILD_STANDING_VALUE_BY_ID)[GuildStandingId];\nexport const GUILD_STANDING_VALUES = Object.values(GUILD_STANDING_VALUE_BY_ID) as GuildStandingValue[];\n\n/**\n * The standings that administer a Work's file system: create and manage folders, see every folder\n * and file, upload anywhere, delete any file, and request a file's share to the Realm. Every file\n * action's grant reads this list, and so does the file-admin check (`isWorkFileAdmin`).\n */\nexport const WORK_FILE_ADMIN_GUILD_STANDING_IDS = [\n 'StewardOwner',\n 'WorkProjectManager',\n 'WorkAssetAdmin',\n] as const satisfies readonly GuildStandingId[];\n\n/**\n * A Work's invite handlers: they send the Work's invites, list them, cancel them, and take the\n * Work's side in every invite conversation — they see it, reply in it, share files in it, and\n * agree for the Work. A Stake Share Manager is one: it handles invites like an Invite Manager and\n * also changes their offers.\n */\nexport const GUILD_INVITE_HANDLER_GUILD_STANDING_IDS = [\n 'StewardOwner',\n 'WorkProjectManager',\n 'InviteManager',\n 'StakeShareManager',\n] as const satisfies readonly GuildStandingId[];\n\n/** The standings that change stake amounts — active Guildmates' stakes and pending invite offers. */\nexport const STAKE_SHARE_POWER_GUILD_STANDING_IDS = [\n 'StewardOwner',\n 'WorkProjectManager',\n 'StakeShareManager',\n] as const satisfies readonly GuildStandingId[];\n\nexport const WORK_PROJECT_ACTIONS = {\n 'workProject.read': {\n label: 'Read workProject',\n description: 'Baseline active-Guildmate read floor for internal workProject state.',\n grantedTo: GUILD_STANDING_IDS,\n },\n 'workProject.metadata.update': {\n label: 'Update workProject metadata',\n description: 'Edit working title, description, and public workProject copy.',\n grantedTo: ['StewardOwner', 'WorkProjectManager', 'PublicWorkProjectEditor'],\n },\n 'guildmateUser.guildStanding.update': {\n label: 'Update Guildmate guild standings',\n description: 'Assign or remove workProject guild standings on active Guildmates.',\n grantedTo: ['StewardOwner', 'WorkProjectManager', 'GuildStandingManager'],\n },\n 'guildmateUser.tradeProfession.update': {\n label: 'Update Guildmate tradeProfessions',\n description:\n 'Assign or remove Guildmate tradeProfessions. tradeProfessions gate custom-folder ' +\n 'visibility and chat-channel access targeting — they are access keys, not just staffing ' +\n 'labels — so this is restricted to file-admin standings (Steward + WorkProject Manager). ' +\n 'A trade edit can never grant the editor access they lack, since every grantee already ' +\n 'holds file-admin override.',\n grantedTo: ['StewardOwner', 'WorkProjectManager'],\n },\n 'workProject.stakeShares.addActive': {\n label: 'Add active Guildmate stakes',\n description: 'Increase stakes for an existing active workProject Guildmate.',\n grantedTo: STAKE_SHARE_POWER_GUILD_STANDING_IDS,\n },\n 'guildInvite.send': {\n label: 'Send invites',\n description: 'Start a workProject invite conversation and reserve pending stakes.',\n grantedTo: GUILD_INVITE_HANDLER_GUILD_STANDING_IDS,\n },\n 'guildInvite.list': {\n label: 'List invites',\n description: \"Open the Work's invites and see their state and offers.\",\n grantedTo: GUILD_INVITE_HANDLER_GUILD_STANDING_IDS,\n },\n 'guildInvite.revokeAny': {\n label: 'Revoke pending invites',\n description: 'Cancel or revoke pending workProject invites.',\n grantedTo: GUILD_INVITE_HANDLER_GUILD_STANDING_IDS,\n },\n 'guildInvite.stakeShares.update': {\n label: 'Update invite stakes',\n description: 'Increase stakes offered on a pending invite.',\n grantedTo: STAKE_SHARE_POWER_GUILD_STANDING_IDS,\n },\n 'fileFolder.create': {\n label: 'Create file folders',\n description: 'Create workProject file folders and set their trade-profession access lists.',\n grantedTo: WORK_FILE_ADMIN_GUILD_STANDING_IDS,\n },\n 'fileFolder.manage': {\n label: 'Manage file folders',\n description: 'Rename folders, edit folder trade-profession access lists, and delete folders.',\n grantedTo: WORK_FILE_ADMIN_GUILD_STANDING_IDS,\n },\n 'fileFolder.viewAll': {\n label: 'View all file folders',\n description: 'View every folder and file regardless of folder trade-profession access (admin override).',\n grantedTo: WORK_FILE_ADMIN_GUILD_STANDING_IDS,\n },\n 'workFile.uploadAny': {\n label: 'Upload to any folder',\n description: 'Upload files to any folder regardless of folder trade-profession access (admin override).',\n grantedTo: WORK_FILE_ADMIN_GUILD_STANDING_IDS,\n },\n 'workFile.deleteAny': {\n label: 'Delete any file',\n description: 'Delete any file regardless of folder trade-profession access (admin override).',\n grantedTo: WORK_FILE_ADMIN_GUILD_STANDING_IDS,\n },\n 'workFile.promoteToRealm': {\n label: 'Request file sharing to realm',\n description: 'Submit a request to share a work file into its realm shared-file pool. ' +\n 'The realm steward approves the request and chooses the folder, or declines it; ' +\n 'nothing is shared to the realm until then. Canon promotion is a separate ' +\n 'realm-steward power, evaluated at the realm level, not here.',\n grantedTo: WORK_FILE_ADMIN_GUILD_STANDING_IDS,\n },\n 'commission.open': {\n label: 'Open commissions',\n description: 'Create workProject commission postings.',\n grantedTo: ['StewardOwner', 'WorkProjectManager', 'CommissionManager'],\n },\n 'commission.close': {\n label: 'Close commissions',\n description: 'Close workProject commission postings.',\n grantedTo: ['StewardOwner', 'WorkProjectManager', 'CommissionManager'],\n },\n 'commission.commissionProposal.save': {\n label: 'Save commission proposals',\n description: 'Save or unsave workProject commission proposals.',\n grantedTo: ['StewardOwner', 'WorkProjectManager', 'CommissionManager'],\n },\n 'commission.commissionProposal.reject': {\n label: 'Reject commission proposals',\n description: 'Reject workProject commission proposals.',\n grantedTo: ['StewardOwner', 'WorkProjectManager', 'CommissionManager'],\n },\n 'audition.open': {\n label: 'Open auditions',\n description: 'Create workProject audition prompts.',\n grantedTo: ['StewardOwner', 'WorkProjectManager', 'AuditionManager'],\n },\n 'audition.close': {\n label: 'Close auditions',\n description: 'Close workProject auditions.',\n grantedTo: ['StewardOwner', 'WorkProjectManager', 'AuditionManager'],\n },\n 'hallLibrary.chapter.create': {\n label: 'Create Tale chapters',\n description: 'Create Tale chapter content.',\n grantedTo: ['StewardOwner', 'WorkProjectManager', 'HallLibraryEditor'],\n },\n 'hallLibrary.tuneTrack.create': {\n label: 'Create Tune tracks',\n description: 'Create Tune track content.',\n grantedTo: ['StewardOwner', 'WorkProjectManager', 'HallLibraryEditor'],\n },\n 'hallLibrary.televisionEpisode.create': {\n label: 'Create Television episodes',\n description: 'Create Television episode content.',\n grantedTo: ['StewardOwner', 'WorkProjectManager', 'HallLibraryEditor'],\n },\n 'hallLibrary.chapter.details.update': {\n label: 'Update chapter details',\n description: 'Edit chapter details and body fields.',\n grantedTo: ['StewardOwner', 'WorkProjectManager', 'HallLibraryEditor'],\n },\n 'hallLibrary.tuneTrack.details.update': {\n label: 'Update track details',\n description: 'Edit track details and media metadata.',\n grantedTo: ['StewardOwner', 'WorkProjectManager', 'HallLibraryEditor'],\n },\n 'hallLibrary.televisionEpisode.details.update': {\n label: 'Update episode details',\n description: 'Edit episode details and media metadata.',\n grantedTo: ['StewardOwner', 'WorkProjectManager', 'HallLibraryEditor'],\n },\n 'hallLibrary.tale.workGenres.update': {\n label: 'Update Tale Genres',\n description: 'Edit Tale Genre assignments.',\n grantedTo: ['StewardOwner', 'WorkProjectManager', 'HallLibraryEditor'],\n },\n 'hallLibrary.tune.workGenres.update': {\n label: 'Update Tune Genres',\n description: 'Edit Tune Genre assignments.',\n grantedTo: ['StewardOwner', 'WorkProjectManager', 'HallLibraryEditor'],\n },\n 'hallLibrary.television.workGenres.update': {\n label: 'Update Television Genres',\n description: 'Edit Television Genre assignments.',\n grantedTo: ['StewardOwner', 'WorkProjectManager', 'HallLibraryEditor'],\n },\n 'hallLibrary.asset.upload': {\n label: 'Upload hallLibrary assets',\n description: 'Upload or replace covers and sub-item media assets.',\n grantedTo: ['StewardOwner', 'WorkProjectManager', 'HallLibraryEditor'],\n },\n 'hallLibrary.review.submit': {\n label: 'Submit hall review',\n description: 'Submit workProject content for admin hall review. Also gates withdrawing a still-pending submission.',\n grantedTo: ['StewardOwner', 'WorkProjectManager', 'HallLibrarySubmitter'],\n },\n 'hallLibrary.changeRequest.submit': {\n label: 'Request published changes',\n description: 'Propose text changes to a PUBLISHED hall item (reviewed by admins before anything changes).',\n grantedTo: ['StewardOwner', 'WorkProjectManager', 'HallLibrarySubmitter'],\n },\n 'guildChatChannel.create': {\n label: 'Create chat channels',\n description: 'Create workProject chat channels.',\n grantedTo: ['StewardOwner', 'WorkProjectManager', 'GuildChatChannelManager'],\n },\n 'guildChatChannel.update': {\n label: 'Update chat channels',\n description: 'Update workProject chat channel settings and access policy.',\n grantedTo: ['StewardOwner', 'WorkProjectManager', 'GuildChatChannelManager'],\n },\n 'guildChatChannel.archive': {\n label: 'Archive chat channels',\n description: 'Archive workProject chat channels.',\n grantedTo: ['StewardOwner', 'WorkProjectManager', 'GuildChatChannelManager'],\n },\n 'guildChatChannel.unarchive': {\n label: 'Restore archived chat channels',\n description: 'Restore workProject chat channels out of the archive.',\n grantedTo: ['StewardOwner', 'WorkProjectManager', 'GuildChatChannelManager'],\n },\n 'guildChatChannel.delete': {\n label: 'Delete chat channels',\n description: 'Delete (tombstone) workProject chat channels; storage is retained.',\n grantedTo: ['StewardOwner', 'WorkProjectManager', 'GuildChatChannelManager'],\n },\n 'adminDispatch.start': {\n label: 'Start admin correspondence',\n description:\n 'Open a platform correspondence thread with the admin team on behalf of the workProject. ' +\n 'Replying in an open workProject thread is any active Guildmate (not gated here).',\n grantedTo: ['StewardOwner', 'WorkProjectManager'],\n },\n} as const satisfies Record<string, {\n label: string;\n description: string;\n grantedTo: readonly GuildStandingId[];\n}>;\n\nexport type WorkProjectActionId = keyof typeof WORK_PROJECT_ACTIONS;\nexport const WORK_PROJECT_ACTION_IDS = Object.keys(WORK_PROJECT_ACTIONS) as WorkProjectActionId[];\n\n\n\n"]}
|
|
@@ -32,28 +32,6 @@ export declare function guildInvitePartyOf(args: {
|
|
|
32
32
|
recipientUid: string;
|
|
33
33
|
member: GuildChatAccessMember | null;
|
|
34
34
|
}): GuildInviteParty | null;
|
|
35
|
-
/** How a person opens an invite: as one of its two sides, or as a stake editor of the inviting Work. */
|
|
36
|
-
export type GuildInviteViewerRole = GuildInviteParty | 'stakeEditor';
|
|
37
|
-
/**
|
|
38
|
-
* How a person may open an invite, or null when they may not. A party opens it on its own side
|
|
39
|
-
* (`guildInvitePartyOf`). Any other active person Guildmate of the inviting Work whose standings
|
|
40
|
-
* grant both `guildInvite.list` and `guildInvite.stakeShares.update` — a stake-power standing that
|
|
41
|
-
* handles no invites — opens it as a `stakeEditor`: they see the invite and its offer to change
|
|
42
|
-
* the offer, and take no part in the conversation, its files, the Work's agreement, or a cancel.
|
|
43
|
-
*/
|
|
44
|
-
export declare function guildInviteViewerRoleOf(args: {
|
|
45
|
-
uid: string;
|
|
46
|
-
senderUid: string;
|
|
47
|
-
recipientUid: string;
|
|
48
|
-
member: GuildChatAccessMember | null;
|
|
49
|
-
}): GuildInviteViewerRole | null;
|
|
50
|
-
/** Whether a person may open an invite (read the invite itself): a party, or a stake editor. */
|
|
51
|
-
export declare function canViewGuildInvite(args: {
|
|
52
|
-
uid: string;
|
|
53
|
-
senderUid: string;
|
|
54
|
-
recipientUid: string;
|
|
55
|
-
member: GuildChatAccessMember | null;
|
|
56
|
-
}): boolean;
|
|
57
35
|
/** Whether a person may use an invite's conversation now: a party to it, while it is open. */
|
|
58
36
|
export declare function canAccessGuildInviteConversation(args: {
|
|
59
37
|
uid: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"guild-chat-access.d.ts","sourceRoot":"","sources":["../../src/utils/guild-chat-access.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAEpE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAOpE,qDAAqD;AACrD,MAAM,MAAM,qBAAqB,GAAG,IAAI,CAAC,aAAa,EAAE,QAAQ,GAAG,YAAY,GAAG,gBAAgB,GAAG,kBAAkB,CAAC,CAAC;AAMzH;;;;;GAKG;AACH,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,qBAAqB,GAAG,IAAI,EACpC,OAAO,EAAE,IAAI,CAAC,gBAAgB,EAAE,wBAAwB,GAAG,WAAW,CAAC,GAAG,IAAI,GAC7E,OAAO,CAMT;AAED,oGAAoG;AACpG,eAAO,MAAM,uCAAuC,kCAGS,CAAC;AAE9D,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAErE;AAED,6EAA6E;AAC7E,MAAM,MAAM,gBAAgB,GAAG,WAAW,GAAG,MAAM,CAAC;AAEpD;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE;IACvC,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,qBAAqB,GAAG,IAAI,CAAC;CACtC,GAAG,gBAAgB,GAAG,IAAI,CAU1B;AAED,
|
|
1
|
+
{"version":3,"file":"guild-chat-access.d.ts","sourceRoot":"","sources":["../../src/utils/guild-chat-access.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAEpE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAOpE,qDAAqD;AACrD,MAAM,MAAM,qBAAqB,GAAG,IAAI,CAAC,aAAa,EAAE,QAAQ,GAAG,YAAY,GAAG,gBAAgB,GAAG,kBAAkB,CAAC,CAAC;AAMzH;;;;;GAKG;AACH,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,qBAAqB,GAAG,IAAI,EACpC,OAAO,EAAE,IAAI,CAAC,gBAAgB,EAAE,wBAAwB,GAAG,WAAW,CAAC,GAAG,IAAI,GAC7E,OAAO,CAMT;AAED,oGAAoG;AACpG,eAAO,MAAM,uCAAuC,kCAGS,CAAC;AAE9D,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAErE;AAED,6EAA6E;AAC7E,MAAM,MAAM,gBAAgB,GAAG,WAAW,GAAG,MAAM,CAAC;AAEpD;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE;IACvC,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,qBAAqB,GAAG,IAAI,CAAC;CACtC,GAAG,gBAAgB,GAAG,IAAI,CAU1B;AAED,8FAA8F;AAC9F,wBAAgB,gCAAgC,CAAC,IAAI,EAAE;IACrD,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,qBAAqB,GAAG,IAAI,CAAC;IACrC,MAAM,EAAE,MAAM,CAAC;CAChB,GAAG,OAAO,CAEV;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,qBAAqB,GAAG,IAAI,GAAG,OAAO,CAElF"}
|
|
@@ -52,28 +52,6 @@ export function guildInvitePartyOf(args) {
|
|
|
52
52
|
const handles = member.guildStandings.some((standing) => GUILD_INVITE_HANDLER_GUILD_STANDING_IDS.includes(standing));
|
|
53
53
|
return handles ? 'work' : null;
|
|
54
54
|
}
|
|
55
|
-
/**
|
|
56
|
-
* How a person may open an invite, or null when they may not. A party opens it on its own side
|
|
57
|
-
* (`guildInvitePartyOf`). Any other active person Guildmate of the inviting Work whose standings
|
|
58
|
-
* grant both `guildInvite.list` and `guildInvite.stakeShares.update` — a stake-power standing that
|
|
59
|
-
* handles no invites — opens it as a `stakeEditor`: they see the invite and its offer to change
|
|
60
|
-
* the offer, and take no part in the conversation, its files, the Work's agreement, or a cancel.
|
|
61
|
-
*/
|
|
62
|
-
export function guildInviteViewerRoleOf(args) {
|
|
63
|
-
const party = guildInvitePartyOf(args);
|
|
64
|
-
if (party !== null)
|
|
65
|
-
return party;
|
|
66
|
-
const { uid, member } = args;
|
|
67
|
-
if (!uid || !isActivePersonGuildmate(member))
|
|
68
|
-
return null;
|
|
69
|
-
const opensToChangeOffer = guildStandingsGrantAction(member.guildStandings, 'guildInvite.list') &&
|
|
70
|
-
guildStandingsGrantAction(member.guildStandings, 'guildInvite.stakeShares.update');
|
|
71
|
-
return opensToChangeOffer ? 'stakeEditor' : null;
|
|
72
|
-
}
|
|
73
|
-
/** Whether a person may open an invite (read the invite itself): a party, or a stake editor. */
|
|
74
|
-
export function canViewGuildInvite(args) {
|
|
75
|
-
return guildInviteViewerRoleOf(args) !== null;
|
|
76
|
-
}
|
|
77
55
|
/** Whether a person may use an invite's conversation now: a party to it, while it is open. */
|
|
78
56
|
export function canAccessGuildInviteConversation(args) {
|
|
79
57
|
return guildInvitePartyOf(args) !== null && isGuildInviteConversationLive(args.status);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"guild-chat-access.js","sourceRoot":"","sources":["../../src/utils/guild-chat-access.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAG3E,OAAO,EACL,uCAAuC,EACvC,yBAAyB,GAC1B,MAAM,4CAA4C,CAAC;AAKpD,SAAS,uBAAuB,CAAC,MAAoC;IACnE,OAAO,MAAM,KAAK,IAAI,IAAI,MAAM,CAAC,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,UAAU,KAAK,yBAAyB,CAAC;AAC1G,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,yBAAyB,CACvC,MAAoC,EACpC,OAA8E;IAE9E,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,SAAS,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IACzD,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC;QAAE,OAAO,KAAK,CAAC;IACnD,IAAI,OAAO,CAAC,sBAAsB,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAC7D,MAAM,IAAI,GAAG,IAAI,GAAG,CAAS,CAAC,GAAG,MAAM,CAAC,cAAc,EAAE,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC;IACrF,OAAO,OAAO,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;AAC/E,CAAC;AAED,oGAAoG;AACpG,MAAM,CAAC,MAAM,uCAAuC,GAAG;IACrD,SAAS;IACT,UAAU;CACiD,CAAC;AAE9D,MAAM,UAAU,6BAA6B,CAAC,MAAc;IAC1D,OAAQ,uCAA6D,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AACzF,CAAC;AAKD;;;;;;GAMG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAKlC;IACC,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IACtD,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;IACtB,IAAI,GAAG,KAAK,YAAY;QAAE,OAAO,WAAW,CAAC;IAC7C,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,MAAM,CAAC;IACrC,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC;QAAE,OAAO,IAAI,CAAC;IAClD,MAAM,OAAO,GAAG,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CACrD,uCAA6D,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAClF,CAAC;IACF,OAAO,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;AACjC,CAAC;
|
|
1
|
+
{"version":3,"file":"guild-chat-access.js","sourceRoot":"","sources":["../../src/utils/guild-chat-access.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAG3E,OAAO,EACL,uCAAuC,EACvC,yBAAyB,GAC1B,MAAM,4CAA4C,CAAC;AAKpD,SAAS,uBAAuB,CAAC,MAAoC;IACnE,OAAO,MAAM,KAAK,IAAI,IAAI,MAAM,CAAC,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,UAAU,KAAK,yBAAyB,CAAC;AAC1G,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,yBAAyB,CACvC,MAAoC,EACpC,OAA8E;IAE9E,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,SAAS,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IACzD,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC;QAAE,OAAO,KAAK,CAAC;IACnD,IAAI,OAAO,CAAC,sBAAsB,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAC7D,MAAM,IAAI,GAAG,IAAI,GAAG,CAAS,CAAC,GAAG,MAAM,CAAC,cAAc,EAAE,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC;IACrF,OAAO,OAAO,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;AAC/E,CAAC;AAED,oGAAoG;AACpG,MAAM,CAAC,MAAM,uCAAuC,GAAG;IACrD,SAAS;IACT,UAAU;CACiD,CAAC;AAE9D,MAAM,UAAU,6BAA6B,CAAC,MAAc;IAC1D,OAAQ,uCAA6D,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AACzF,CAAC;AAKD;;;;;;GAMG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAKlC;IACC,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IACtD,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;IACtB,IAAI,GAAG,KAAK,YAAY;QAAE,OAAO,WAAW,CAAC;IAC7C,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,MAAM,CAAC;IACrC,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC;QAAE,OAAO,IAAI,CAAC;IAClD,MAAM,OAAO,GAAG,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CACrD,uCAA6D,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAClF,CAAC;IACF,OAAO,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;AACjC,CAAC;AAED,8FAA8F;AAC9F,MAAM,UAAU,gCAAgC,CAAC,IAMhD;IACC,OAAO,kBAAkB,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,6BAA6B,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AACzF,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,oBAAoB,CAAC,MAAoC;IACvE,OAAO,uBAAuB,CAAC,MAAM,CAAC,IAAI,yBAAyB,CAAC,MAAM,CAAC,cAAc,EAAE,uBAAuB,CAAC,CAAC;AACtH,CAAC","sourcesContent":["/**\n * Who may take part in TTT's realtime conversations — ONE rule per conversation kind. The grant\n * minting, the access projection the chat rooms enforce, the conversation-file checks, and every\n * screen that lists or offers a conversation decide from these, never from a restatement.\n */\n\nimport type { GuildmateUser } from '../doc-schemas/work-project.js';\nimport { FOUNDING_WORK_HOLDER_TYPE } from '../doc-schemas/work-project.js';\nimport type { GuildChatChannel } from '../doc-schemas/messaging.js';\nimport type { GuildInviteConversationStatus } from '../schemas/atoms.js';\nimport {\n GUILD_INVITE_HANDLER_GUILD_STANDING_IDS,\n guildStandingsGrantAction,\n} from '../permissions/work-project-permissions.js';\n\n/** The Guildmate facts a conversation rule reads. */\nexport type GuildChatAccessMember = Pick<GuildmateUser, 'status' | 'holderType' | 'guildStandings' | 'tradeProfessions'>;\n\nfunction isActivePersonGuildmate(member: GuildChatAccessMember | null): member is GuildChatAccessMember {\n return member !== null && member.status === 'active' && member.holderType !== FOUNDING_WORK_HOLDER_TYPE;\n}\n\n/**\n * Whether a Guildmate may use a Work's guild chat channel: an active person Guildmate (never the\n * founding-Work stake holder) of a channel that exists and is not deleted, holding one of the\n * channel's required standings OR trade professions — an empty requirement admits every active\n * Guildmate.\n */\nexport function canAccessGuildChatChannel(\n member: GuildChatAccessMember | null,\n channel: Pick<GuildChatChannel, 'requiredGuildStandings' | 'isDeleted'> | null,\n): boolean {\n if (!channel || channel.isDeleted === true) return false;\n if (!isActivePersonGuildmate(member)) return false;\n if (channel.requiredGuildStandings.length === 0) return true;\n const held = new Set<string>([...member.guildStandings, ...member.tradeProfessions]);\n return channel.requiredGuildStandings.some((required) => held.has(required));\n}\n\n/** The invite statuses whose conversation is open: negotiating, or accepted and being confirmed. */\nexport const GUILD_INVITE_CONVERSATION_LIVE_STATUSES = [\n 'pending',\n 'accepted',\n] as const satisfies readonly GuildInviteConversationStatus[];\n\nexport function isGuildInviteConversationLive(status: string): boolean {\n return (GUILD_INVITE_CONVERSATION_LIVE_STATUSES as readonly string[]).includes(status);\n}\n\n/** The two sides of an invite: the person invited, and the inviting Work. */\nexport type GuildInviteParty = 'recipient' | 'work';\n\n/**\n * Which side of an invite a person takes part on, or null when they take no part. The recipient\n * is the `recipient` side. The Work's side is the sender, and every active person Guildmate of the\n * inviting Work who holds an invite-handling standing (`GUILD_INVITE_HANDLER_GUILD_STANDING_IDS`):\n * they see the conversation, reply in it, and accept for the Work. `member` is the person's\n * Guildmate record in the inviting Work, or null when they have none.\n */\nexport function guildInvitePartyOf(args: {\n uid: string;\n senderUid: string;\n recipientUid: string;\n member: GuildChatAccessMember | null;\n}): GuildInviteParty | null {\n const { uid, senderUid, recipientUid, member } = args;\n if (!uid) return null;\n if (uid === recipientUid) return 'recipient';\n if (uid === senderUid) return 'work';\n if (!isActivePersonGuildmate(member)) return null;\n const handles = member.guildStandings.some((standing) =>\n (GUILD_INVITE_HANDLER_GUILD_STANDING_IDS as readonly string[]).includes(standing),\n );\n return handles ? 'work' : null;\n}\n\n/** Whether a person may use an invite's conversation now: a party to it, while it is open. */\nexport function canAccessGuildInviteConversation(args: {\n uid: string;\n senderUid: string;\n recipientUid: string;\n member: GuildChatAccessMember | null;\n status: string;\n}): boolean {\n return guildInvitePartyOf(args) !== null && isGuildInviteConversationLive(args.status);\n}\n\n/**\n * Whether a Guildmate may cancel the Work's invites: an active person Guildmate whose standings\n * grant `guildInvite.revokeAny`. Sending an invite gives no power to cancel it — a sender cancels\n * only while holding one of those standings.\n */\nexport function canCancelGuildInvite(member: GuildChatAccessMember | null): boolean {\n return isActivePersonGuildmate(member) && guildStandingsGrantAction(member.guildStandings, 'guildInvite.revokeAny');\n}\n"]}
|