@ttt-productions/ttt-core 0.6.0 → 0.6.1

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.
@@ -393,4 +393,94 @@ export declare const ManageProjectSharesInputSchema: z.ZodObject<{
393
393
  };
394
394
  }>;
395
395
  export type ManageProjectSharesInput = z.infer<typeof ManageProjectSharesInputSchema>;
396
+ export declare const PublicShareOperationSchema: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
397
+ type: z.ZodLiteral<"add-active">;
398
+ amount: z.ZodOptional<z.ZodNumber>;
399
+ user: z.ZodOptional<z.ZodObject<{
400
+ uid: z.ZodString;
401
+ displayName: z.ZodOptional<z.ZodString>;
402
+ }, "strict", z.ZodTypeAny, {
403
+ uid: string;
404
+ displayName?: string | undefined;
405
+ }, {
406
+ uid: string;
407
+ displayName?: string | undefined;
408
+ }>>;
409
+ sourceId: z.ZodOptional<z.ZodString>;
410
+ }, "strict", z.ZodTypeAny, {
411
+ type: "add-active";
412
+ user?: {
413
+ uid: string;
414
+ displayName?: string | undefined;
415
+ } | undefined;
416
+ amount?: number | undefined;
417
+ sourceId?: string | undefined;
418
+ }, {
419
+ type: "add-active";
420
+ user?: {
421
+ uid: string;
422
+ displayName?: string | undefined;
423
+ } | undefined;
424
+ amount?: number | undefined;
425
+ sourceId?: string | undefined;
426
+ }>]>;
427
+ export type PublicShareOperation = z.infer<typeof PublicShareOperationSchema>;
428
+ export type PublicShareOperationType = PublicShareOperation['type'];
429
+ export declare const PublicManageProjectSharesInputSchema: z.ZodObject<{
430
+ projectId: z.ZodString;
431
+ operation: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
432
+ type: z.ZodLiteral<"add-active">;
433
+ amount: z.ZodOptional<z.ZodNumber>;
434
+ user: z.ZodOptional<z.ZodObject<{
435
+ uid: z.ZodString;
436
+ displayName: z.ZodOptional<z.ZodString>;
437
+ }, "strict", z.ZodTypeAny, {
438
+ uid: string;
439
+ displayName?: string | undefined;
440
+ }, {
441
+ uid: string;
442
+ displayName?: string | undefined;
443
+ }>>;
444
+ sourceId: z.ZodOptional<z.ZodString>;
445
+ }, "strict", z.ZodTypeAny, {
446
+ type: "add-active";
447
+ user?: {
448
+ uid: string;
449
+ displayName?: string | undefined;
450
+ } | undefined;
451
+ amount?: number | undefined;
452
+ sourceId?: string | undefined;
453
+ }, {
454
+ type: "add-active";
455
+ user?: {
456
+ uid: string;
457
+ displayName?: string | undefined;
458
+ } | undefined;
459
+ amount?: number | undefined;
460
+ sourceId?: string | undefined;
461
+ }>]>;
462
+ }, "strict", z.ZodTypeAny, {
463
+ projectId: string;
464
+ operation: {
465
+ type: "add-active";
466
+ user?: {
467
+ uid: string;
468
+ displayName?: string | undefined;
469
+ } | undefined;
470
+ amount?: number | undefined;
471
+ sourceId?: string | undefined;
472
+ };
473
+ }, {
474
+ projectId: string;
475
+ operation: {
476
+ type: "add-active";
477
+ user?: {
478
+ uid: string;
479
+ displayName?: string | undefined;
480
+ } | undefined;
481
+ amount?: number | undefined;
482
+ sourceId?: string | undefined;
483
+ };
484
+ }>;
485
+ export type PublicManageProjectSharesInput = z.infer<typeof PublicManageProjectSharesInputSchema>;
396
486
  //# sourceMappingURL=share-operation.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"share-operation.d.ts","sourceRoot":"","sources":["../../src/schemas/share-operation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAyBxB,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA+B/B,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAClE,MAAM,MAAM,kBAAkB,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;AAGxD,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAGhC,CAAC;AAEZ,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC"}
1
+ {"version":3,"file":"share-operation.d.ts","sourceRoot":"","sources":["../../src/schemas/share-operation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAyBxB,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA+B/B,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAClE,MAAM,MAAM,kBAAkB,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;AAGxD,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAGhC,CAAC;AAEZ,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC;AAwBtF,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAOrC,CAAC;AAEH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAC9E,MAAM,MAAM,wBAAwB,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAC;AAEpE,eAAO,MAAM,oCAAoC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAGtC,CAAC;AAEZ,MAAM,MAAM,8BAA8B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oCAAoC,CAAC,CAAC"}
@@ -54,4 +54,38 @@ export const ManageProjectSharesInputSchema = z.object({
54
54
  projectId: projectIdSchema,
55
55
  operation: ShareOperationSchema,
56
56
  }).strict();
57
+ // ───────────────────────────────────────────────────────────────────
58
+ // PUBLIC SHARE OPERATION SCHEMA
59
+ //
60
+ // The `manageProjectShares` callable is exposed to authenticated
61
+ // creators. Only `add-active` is safe to invoke from a public surface —
62
+ // every other operation type is an internal/trusted-path concern:
63
+ //
64
+ // - 'add-pending' → only inviteUserToProject + runUpdateInviteShares
65
+ // - 'remove-pending' → only handleInviteDeclined + handleInviteCancelled
66
+ // - 'create-project' → only createProject
67
+ // - 'convert-invite' → only handleInviteAccepted
68
+ //
69
+ // Each of those internal callers performs its own project-action auth
70
+ // (invite.send, invite.shares.update, etc.) BEFORE composing into
71
+ // executeShareOperation. Allowing those operation types through the
72
+ // public callable bypasses the action layer — a creator could chain
73
+ // add-pending → convert-invite → create-project to grant themselves
74
+ // membership on any project.
75
+ //
76
+ // Keep this as a discriminated union so adding a second public-allowed
77
+ // type later is mechanical.
78
+ // ───────────────────────────────────────────────────────────────────
79
+ export const PublicShareOperationSchema = z.discriminatedUnion('type', [
80
+ z.object({
81
+ type: z.literal('add-active'),
82
+ amount: z.number().int().positive().optional(),
83
+ user: userRefSchema.optional(),
84
+ sourceId: z.string().min(1).optional(),
85
+ }).strict(),
86
+ ]);
87
+ export const PublicManageProjectSharesInputSchema = z.object({
88
+ projectId: projectIdSchema,
89
+ operation: PublicShareOperationSchema,
90
+ }).strict();
57
91
  //# sourceMappingURL=share-operation.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"share-operation.js","sourceRoot":"","sources":["../../src/schemas/share-operation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"share-operation.js","sourceRoot":"","sources":["../../src/schemas/share-operation.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ttt-productions/ttt-core",
3
- "version": "0.6.0",
3
+ "version": "0.6.1",
4
4
  "description": "Core types, Firestore path constants, and shared constants for TTT Productions",
5
5
  "repository": {
6
6
  "type": "git",