@ttt-productions/ttt-core 0.78.14 → 0.78.16
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/capabilities/capability-registry.js.map +1 -1
- package/dist/capabilities/index.js.map +1 -1
- package/dist/capabilities/messaging-surfaces.js.map +1 -1
- package/dist/constants/admin-labels.js.map +1 -1
- package/dist/constants/app-mode.js.map +1 -1
- package/dist/constants/business-admin.js.map +1 -1
- package/dist/constants/business-content.js.map +1 -1
- package/dist/constants/business-platform.js.map +1 -1
- package/dist/constants/business-user.js.map +1 -1
- package/dist/constants/business-work-project.js.map +1 -1
- package/dist/constants/business.js.map +1 -1
- package/dist/constants/center-stage-rooms.d.ts +12 -0
- package/dist/constants/center-stage-rooms.d.ts.map +1 -0
- package/dist/constants/center-stage-rooms.js +32 -0
- package/dist/constants/center-stage-rooms.js.map +1 -0
- package/dist/constants/chat.js.map +1 -1
- package/dist/constants/company-mascots.d.ts +115 -0
- package/dist/constants/company-mascots.d.ts.map +1 -0
- package/dist/constants/company-mascots.js +272 -0
- package/dist/constants/company-mascots.js.map +1 -0
- package/dist/constants/craft-skill-statements.js.map +1 -1
- package/dist/constants/index.d.ts +2 -0
- package/dist/constants/index.d.ts.map +1 -1
- package/dist/constants/index.js +2 -0
- package/dist/constants/index.js.map +1 -1
- package/dist/constants/moderation.js.map +1 -1
- package/dist/constants/options.js.map +1 -1
- package/dist/constants/pagination.js.map +1 -1
- package/dist/constants/publish-attestations.js.map +1 -1
- package/dist/constants/release-flags.js.map +1 -1
- package/dist/constants/retention.js.map +1 -1
- package/dist/constants/safety-confirmation-phrases.js.map +1 -1
- package/dist/constants/safety-telemetry-patterns.js.map +1 -1
- package/dist/constants/scheduled-jobs.js.map +1 -1
- package/dist/constants/storage-keys.d.ts +15 -0
- package/dist/constants/storage-keys.d.ts.map +1 -1
- package/dist/constants/storage-keys.js +18 -0
- package/dist/constants/storage-keys.js.map +1 -1
- package/dist/doc-schemas/account-deletion.js.map +1 -1
- package/dist/doc-schemas/audit.js.map +1 -1
- package/dist/doc-schemas/chat-sync.js.map +1 -1
- package/dist/doc-schemas/commissions.js.map +1 -1
- package/dist/doc-schemas/content.js.map +1 -1
- package/dist/doc-schemas/firestore-primitives.js.map +1 -1
- package/dist/doc-schemas/index.js.map +1 -1
- package/dist/doc-schemas/media-activation-jobs.js.map +1 -1
- package/dist/doc-schemas/media-assets.js.map +1 -1
- package/dist/doc-schemas/messaging.js.map +1 -1
- package/dist/doc-schemas/moderation.js.map +1 -1
- package/dist/doc-schemas/ncii/allegations.js.map +1 -1
- package/dist/doc-schemas/ncii/cases.js.map +1 -1
- package/dist/doc-schemas/ncii/config.js.map +1 -1
- package/dist/doc-schemas/ncii/holds.js.map +1 -1
- package/dist/doc-schemas/ncii/removal.js.map +1 -1
- package/dist/doc-schemas/ncii/requests.js.map +1 -1
- package/dist/doc-schemas/notification-ledger.js.map +1 -1
- package/dist/doc-schemas/notifications.js.map +1 -1
- package/dist/doc-schemas/operational.js.map +1 -1
- package/dist/doc-schemas/payments.js.map +1 -1
- package/dist/doc-schemas/publicUser.js.map +1 -1
- package/dist/doc-schemas/registry.js.map +1 -1
- package/dist/doc-schemas/report-docs.js.map +1 -1
- package/dist/doc-schemas/safety/age.js.map +1 -1
- package/dist/doc-schemas/safety/case-alert.js.map +1 -1
- package/dist/doc-schemas/safety/case-aliases.js.map +1 -1
- package/dist/doc-schemas/safety/case.js.map +1 -1
- package/dist/doc-schemas/safety/evidence.js.map +1 -1
- package/dist/doc-schemas/safety/foundation.js.map +1 -1
- package/dist/doc-schemas/safety/holds.js.map +1 -1
- package/dist/doc-schemas/safety/monitors.js.map +1 -1
- package/dist/doc-schemas/safety/provenance.js.map +1 -1
- package/dist/doc-schemas/safety/report.js.map +1 -1
- package/dist/doc-schemas/safety/reviewer-security.js.map +1 -1
- package/dist/doc-schemas/safety/sagas.js.map +1 -1
- package/dist/doc-schemas/social.js.map +1 -1
- package/dist/doc-schemas/square-announcement-jobs.js.map +1 -1
- package/dist/doc-schemas/system.js.map +1 -1
- package/dist/doc-schemas/user.js.map +1 -1
- package/dist/doc-schemas/work-project.js.map +1 -1
- package/dist/ids/chat-ids.js.map +1 -1
- package/dist/ids/index.js.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/media/atoms.js.map +1 -1
- package/dist/media/domain-events-admin.js.map +1 -1
- package/dist/media/domain-events-social.js.map +1 -1
- package/dist/media/domain-events-user.js.map +1 -1
- package/dist/media/domain-events-work.js.map +1 -1
- package/dist/media/domain-events.js.map +1 -1
- package/dist/media/edge-serving-contract.js.map +1 -1
- package/dist/media/file-origin.js.map +1 -1
- package/dist/media/hall-library-target-fields.js.map +1 -1
- package/dist/media/index.js.map +1 -1
- package/dist/media/media-asset-url.js.map +1 -1
- package/dist/media/pending-media.js.map +1 -1
- package/dist/media/photodna-coverage.js.map +1 -1
- package/dist/media/start-upload.js.map +1 -1
- package/dist/media/target-info.js.map +1 -1
- package/dist/media/ttt-media-specs.js.map +1 -1
- package/dist/media/upload-tray-display.js.map +1 -1
- package/dist/notifications/index.js.map +1 -1
- package/dist/paths/collection-groups.js.map +1 -1
- package/dist/paths/collection-refs.js.map +1 -1
- package/dist/paths/collections.js.map +1 -1
- package/dist/paths/index.js.map +1 -1
- package/dist/paths/path-builders.js.map +1 -1
- package/dist/paths/related-ids.js.map +1 -1
- package/dist/paths/storage-paths.js.map +1 -1
- package/dist/paths/utils.js.map +1 -1
- package/dist/permissions/guild-standing-assignment-policy.js.map +1 -1
- package/dist/permissions/index.js.map +1 -1
- package/dist/permissions/work-project-permissions-data.js.map +1 -1
- package/dist/permissions/work-project-permissions.js.map +1 -1
- package/dist/report/chat-report-channel-ref.js.map +1 -1
- package/dist/report/index.js.map +1 -1
- package/dist/report/report-config-values.js.map +1 -1
- package/dist/safety/active-safety-case-alert.js.map +1 -1
- package/dist/safety/index.js.map +1 -1
- package/dist/safety/ncii-intake-derivations.js.map +1 -1
- package/dist/safety/resource-keys.js.map +1 -1
- package/dist/schemas/admin-dispatch-actions.js.map +1 -1
- package/dist/schemas/admin.js.map +1 -1
- package/dist/schemas/atoms.js.map +1 -1
- package/dist/schemas/auditions.js.map +1 -1
- package/dist/schemas/chat.js.map +1 -1
- package/dist/schemas/commissions.js.map +1 -1
- package/dist/schemas/craft-skills.js.map +1 -1
- package/dist/schemas/hall-library.js.map +1 -1
- package/dist/schemas/index.js.map +1 -1
- package/dist/schemas/media.js.map +1 -1
- package/dist/schemas/ncii.js.map +1 -1
- package/dist/schemas/notification.js.map +1 -1
- package/dist/schemas/payments.js.map +1 -1
- package/dist/schemas/safety.js.map +1 -1
- package/dist/schemas/social.js.map +1 -1
- package/dist/schemas/stake-share-operation.js.map +1 -1
- package/dist/schemas/uploads.js.map +1 -1
- package/dist/schemas/users.js.map +1 -1
- package/dist/schemas/utility.js.map +1 -1
- package/dist/schemas/voting.js.map +1 -1
- package/dist/schemas/work-project-management.js.map +1 -1
- package/dist/types/admin-ops.js.map +1 -1
- package/dist/types/admin-users.js.map +1 -1
- package/dist/types/admin.js.map +1 -1
- package/dist/types/audit.js.map +1 -1
- package/dist/types/commissions.js.map +1 -1
- package/dist/types/content.js.map +1 -1
- package/dist/types/index.js.map +1 -1
- package/dist/types/messaging.js.map +1 -1
- package/dist/types/moderation.js.map +1 -1
- package/dist/types/payments.js.map +1 -1
- package/dist/types/publicUser.js.map +1 -1
- package/dist/types/social.js.map +1 -1
- package/dist/types/system.js.map +1 -1
- package/dist/types/user.js.map +1 -1
- package/dist/types/work-project.js.map +1 -1
- package/dist/upload-variables/apply-to-commission-variables.js.map +1 -1
- package/dist/upload-variables/create-admin-audition-variables.js.map +1 -1
- package/dist/upload-variables/create-audition-entry-variables.js.map +1 -1
- package/dist/upload-variables/create-commission-variables.js.map +1 -1
- package/dist/upload-variables/create-work-project-audition-variables.js.map +1 -1
- package/dist/upload-variables/index.js.map +1 -1
- package/dist/upload-variables/on-progress.js.map +1 -1
- package/dist/upload-variables/square-streetz-post-variables.js.map +1 -1
- package/dist/upload-variables/update-chapter-media-variables.js.map +1 -1
- package/dist/upload-variables/update-episode-media-variables.js.map +1 -1
- package/dist/upload-variables/update-tale-cover-photo-variables.js.map +1 -1
- package/dist/upload-variables/update-television-cover-photo-variables.js.map +1 -1
- package/dist/upload-variables/update-track-media-variables.js.map +1 -1
- package/dist/upload-variables/update-tune-cover-photo-variables.js.map +1 -1
- package/dist/upload-variables/upload-craft-skill-variables.js.map +1 -1
- package/dist/upload-variables/upload-profile-picture-variables.js.map +1 -1
- package/dist/utils/format.js.map +1 -1
- package/dist/utils/index.js.map +1 -1
- package/package.json +15 -7
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"commissions.js","sourceRoot":"","sources":["../../src/schemas/commissions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,yBAAyB,EAAE,0BAA0B,EAAE,MAAM,YAAY,CAAC;AACnF,OAAO,EAAE,iCAAiC,EAAE,MAAM,0BAA0B,CAAC;AAE7E,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAC,IAAI,CAAC;IACnD,MAAM;IACN,SAAS;IACT,UAAU;IACV,UAAU;CACX,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IACjD,mBAAmB,EAAE,yBAAyB;CAC/C,CAAC,CAAC,MAAM,EAAE,CAAC;AAGZ,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC,MAAM,CAAC;IAClD,mBAAmB,EAAE,yBAAyB;CAC/C,CAAC,CAAC,MAAM,EAAE,CAAC;AAGZ,MAAM,CAAC,MAAM,mCAAmC,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1D,mBAAmB,EAAE,yBAAyB;IAC9C,oBAAoB,EAAE,0BAA0B;CACjD,CAAC,CAAC,MAAM,EAAE,CAAC;AAGZ,MAAM,CAAC,MAAM,qCAAqC,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5D,mBAAmB,EAAE,yBAAyB;IAC9C,oBAAoB,EAAE,0BAA0B;IAChD,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE;CACnB,CAAC,CAAC,MAAM,EAAE,CAAC;AAGZ,MAAM,CAAC,MAAM,uCAAuC,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9D,mBAAmB,EAAE,yBAAyB;IAC9C,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,iCAAiC,CAAC;CAC1E,CAAC,CAAC,MAAM,EAAE,CAAC;AAGZ,uFAAuF;AACvF,sFAAsF;AACtF,8EAA8E;AAC9E,uFAAuF;AACvF,6EAA6E;AAC7E,wFAAwF;AACxF,oFAAoF;AACpF,+EAA+E;AAC/E,kDAAkD;AAClD,MAAM,CAAC,MAAM,qCAAqC,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5D,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;IACxB,mBAAmB,EAAE,yBAAyB;IAC9C,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACjC,+EAA+E;IAC/E,oBAAoB,EAAE,0BAA0B;CACjD,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"commissions.js","sourceRoot":"","sources":["../../src/schemas/commissions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,yBAAyB,EAAE,0BAA0B,EAAE,MAAM,YAAY,CAAC;AACnF,OAAO,EAAE,iCAAiC,EAAE,MAAM,0BAA0B,CAAC;AAE7E,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAC,IAAI,CAAC;IACnD,MAAM;IACN,SAAS;IACT,UAAU;IACV,UAAU;CACX,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IACjD,mBAAmB,EAAE,yBAAyB;CAC/C,CAAC,CAAC,MAAM,EAAE,CAAC;AAGZ,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC,MAAM,CAAC;IAClD,mBAAmB,EAAE,yBAAyB;CAC/C,CAAC,CAAC,MAAM,EAAE,CAAC;AAGZ,MAAM,CAAC,MAAM,mCAAmC,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1D,mBAAmB,EAAE,yBAAyB;IAC9C,oBAAoB,EAAE,0BAA0B;CACjD,CAAC,CAAC,MAAM,EAAE,CAAC;AAGZ,MAAM,CAAC,MAAM,qCAAqC,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5D,mBAAmB,EAAE,yBAAyB;IAC9C,oBAAoB,EAAE,0BAA0B;IAChD,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE;CACnB,CAAC,CAAC,MAAM,EAAE,CAAC;AAGZ,MAAM,CAAC,MAAM,uCAAuC,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9D,mBAAmB,EAAE,yBAAyB;IAC9C,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,iCAAiC,CAAC;CAC1E,CAAC,CAAC,MAAM,EAAE,CAAC;AAGZ,uFAAuF;AACvF,sFAAsF;AACtF,8EAA8E;AAC9E,uFAAuF;AACvF,6EAA6E;AAC7E,wFAAwF;AACxF,oFAAoF;AACpF,+EAA+E;AAC/E,kDAAkD;AAClD,MAAM,CAAC,MAAM,qCAAqC,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5D,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;IACxB,mBAAmB,EAAE,yBAAyB;IAC9C,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACjC,+EAA+E;IAC/E,oBAAoB,EAAE,0BAA0B;CACjD,CAAC,CAAC","sourcesContent":["import { z } from 'zod';\nimport { commissionListingIdSchema, commissionProposalIdSchema } from './atoms.js';\nimport { MAX_COMMISSION_DESCRIPTION_LENGTH } from '../constants/business.js';\n\nexport const CommissionProposalStatusSchema = z.enum([\n 'open',\n 'invited',\n 'accepted',\n 'rejected',\n]);\nexport type CommissionProposalStatus = z.infer<typeof CommissionProposalStatusSchema>;\n\nexport const CloseCommissionInputSchema = z.object({\n commissionListingId: commissionListingIdSchema,\n}).strict();\nexport type CloseCommissionInput = z.infer<typeof CloseCommissionInputSchema>;\n\nexport const DeleteCommissionInputSchema = z.object({\n commissionListingId: commissionListingIdSchema,\n}).strict();\nexport type DeleteCommissionInput = z.infer<typeof DeleteCommissionInputSchema>;\n\nexport const RejectCommissionProposalInputSchema = z.object({\n commissionListingId: commissionListingIdSchema,\n commissionProposalId: commissionProposalIdSchema,\n}).strict();\nexport type RejectCommissionProposalInput = z.infer<typeof RejectCommissionProposalInputSchema>;\n\nexport const SetCommissionProposalSavedInputSchema = z.object({\n commissionListingId: commissionListingIdSchema,\n commissionProposalId: commissionProposalIdSchema,\n saved: z.boolean(),\n}).strict();\nexport type SetCommissionProposalSavedInput = z.infer<typeof SetCommissionProposalSavedInputSchema>;\n\nexport const CreateCommissionProposalTextInputSchema = z.object({\n commissionListingId: commissionListingIdSchema,\n coverLetterText: z.string().min(1).max(MAX_COMMISSION_DESCRIPTION_LENGTH),\n}).strict();\nexport type CreateCommissionProposalTextInput = z.infer<typeof CreateCommissionProposalTextInputSchema>;\n\n// Acceptance result of the commission-proposal MEDIA path (startUpload with fileOrigin\n// 'commission-proposal'). Creation itself is asynchronous via the media pipeline; the\n// proposal doc id is the CALLER's uid (one proposal per user per commission —\n// runCreateCommissionProposal: commissionProposalId = callerUid), so it is knowable at\n// accept time without any read. Non-strict (server → client result posture).\n// (The TEXT path's created-item result, CreateCommissionProposalTextResultSchema, lives\n// in ../doc-schemas/commissions.ts — it composes CommissionProposalSchema, and that\n// module imports THIS one, so declaring it here would be a module cycle. It is\n// re-exported on ./schemas via schemas/index.ts.)\nexport const ApplyToCommissionAcceptedResultSchema = z.object({\n success: z.literal(true),\n commissionListingId: commissionListingIdSchema,\n pendingMediaId: z.string().min(1),\n /** The eventual proposal doc id — the caller's uid (one proposal per user). */\n commissionProposalId: commissionProposalIdSchema,\n});\nexport type ApplyToCommissionAcceptedResult = z.infer<typeof ApplyToCommissionAcceptedResultSchema>;\n\n\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"craft-skills.js","sourceRoot":"","sources":["../../src/schemas/craft-skills.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AACvE,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AAEjE,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC,MAAM,CAAC;IAClD,YAAY,EAAE,kBAAkB;CACjC,CAAC,CAAC,MAAM,EAAE,CAAC;AAGZ,wFAAwF;AACxF,4FAA4F;AAC5F,gGAAgG;AAChG,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAAC,CAAC,MAAM,CAAC;IACtD,YAAY,EAAE,kBAAkB;IAChC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC;IACnC,MAAM,EAAE,qBAAqB;CAC9B,CAAC,CAAC,MAAM,EAAE,CAAC;AAGZ,8EAA8E;AAE9E,gFAAgF;AAChF,oFAAoF;AACpF,gFAAgF;AAChF,qFAAqF;AACrF,MAAM,CAAC,MAAM,oCAAoC,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3D,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;IACxB,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACjC,oDAAoD;IACpD,YAAY,EAAE,kBAAkB;CACjC,CAAC,CAAC;AAGH,sFAAsF;AACtF,mFAAmF;AACnF,qFAAqF;AACrF,2DAA2D;AAC3D,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC,MAAM,CAAC;IACnD,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;IACxB,YAAY,EAAE,kBAAkB;CACjC,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC,CAAC,MAAM,CAAC;IACvD,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;IACxB,YAAY,EAAE,kBAAkB;IAChC,+EAA+E;IAC/E,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;IAChD,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE;IACpB,qEAAqE;IACrE,MAAM,EAAE,qBAAqB;CAC9B,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"craft-skills.js","sourceRoot":"","sources":["../../src/schemas/craft-skills.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AACvE,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AAEjE,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC,MAAM,CAAC;IAClD,YAAY,EAAE,kBAAkB;CACjC,CAAC,CAAC,MAAM,EAAE,CAAC;AAGZ,wFAAwF;AACxF,4FAA4F;AAC5F,gGAAgG;AAChG,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAAC,CAAC,MAAM,CAAC;IACtD,YAAY,EAAE,kBAAkB;IAChC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC;IACnC,MAAM,EAAE,qBAAqB;CAC9B,CAAC,CAAC,MAAM,EAAE,CAAC;AAGZ,8EAA8E;AAE9E,gFAAgF;AAChF,oFAAoF;AACpF,gFAAgF;AAChF,qFAAqF;AACrF,MAAM,CAAC,MAAM,oCAAoC,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3D,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;IACxB,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACjC,oDAAoD;IACpD,YAAY,EAAE,kBAAkB;CACjC,CAAC,CAAC;AAGH,sFAAsF;AACtF,mFAAmF;AACnF,qFAAqF;AACrF,2DAA2D;AAC3D,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC,MAAM,CAAC;IACnD,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;IACxB,YAAY,EAAE,kBAAkB;CACjC,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC,CAAC,MAAM,CAAC;IACvD,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;IACxB,YAAY,EAAE,kBAAkB;IAChC,+EAA+E;IAC/E,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;IAChD,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE;IACpB,qEAAqE;IACrE,MAAM,EAAE,qBAAqB;CAC9B,CAAC,CAAC","sourcesContent":["import { z } from 'zod';\nimport { craftSkillIdSchema, addRemoveActionSchema } from './atoms.js';\nimport { CRAFT_SKILL_TAG_VALUES } from '../constants/options.js';\n\nexport const DeleteCraftSkillInputSchema = z.object({\n craftSkillId: craftSkillIdSchema,\n}).strict();\nexport type DeleteCraftSkillInput = z.infer<typeof DeleteCraftSkillInputSchema>;\n\n// `tag` is constrained to the canonical option list — the wire schema is the moderation\n// boundary (Invariant 12). A free-text tag would put unmoderated public text on the profile\n// badge + pollute the craftSkillsByTag index with junk doc IDs (and could break path builders).\nexport const UpdateCraftSkillTagsInputSchema = z.object({\n craftSkillId: craftSkillIdSchema,\n tag: z.enum(CRAFT_SKILL_TAG_VALUES),\n action: addRemoveActionSchema,\n}).strict();\nexport type UpdateCraftSkillTagsInput = z.infer<typeof UpdateCraftSkillTagsInputSchema>;\n\n// --- Authoritative mutation RESULTS (non-strict server → client posture) ---\n\n// Acceptance result of the craft-skill CREATE flow (startUpload with fileOrigin\n// 'craft-skill-media'). Creation itself is asynchronous via the media pipeline; the\n// skill doc id is minted server-side AS the pendingMedia id (processCraftSkill:\n// craftSkillId = pendingFile.id), so it is knowable at accept time without any read.\nexport const UploadCraftSkillAcceptedResultSchema = z.object({\n success: z.literal(true),\n pendingMediaId: z.string().min(1),\n /** Equal to pendingMediaId by pipeline contract. */\n craftSkillId: craftSkillIdSchema,\n});\nexport type UploadCraftSkillAcceptedResult = z.infer<typeof UploadCraftSkillAcceptedResultSchema>;\n\n// deleteCraftSkill: the skill doc + tag-index mirrors are gone at commit. The Streetz\n// feed patch (updatedPostIds/updates) deliberately does NOT ride this result — the\n// DELETE_CRAFT_SKILL post update is enqueued to the squareAnnouncementJobs outbox in\n// the delete transaction and applied by the outbox worker.\nexport const DeleteCraftSkillResultSchema = z.object({\n success: z.literal(true),\n craftSkillId: craftSkillIdSchema,\n});\nexport type DeleteCraftSkillResult = z.infer<typeof DeleteCraftSkillResultSchema>;\n\nexport const UpdateCraftSkillTagsResultSchema = z.object({\n success: z.literal(true),\n craftSkillId: craftSkillIdSchema,\n /** Authoritative tag list after commit (unchanged when `changed` is false). */\n newTags: z.array(z.enum(CRAFT_SKILL_TAG_VALUES)),\n changed: z.boolean(),\n /** Echo of the requested action (always known — it is the input). */\n action: addRemoveActionSchema,\n});\nexport type UpdateCraftSkillTagsResult = z.infer<typeof UpdateCraftSkillTagsResultSchema>;\n\n\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hall-library.js","sourceRoot":"","sources":["../../src/schemas/hall-library.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"hall-library.js","sourceRoot":"","sources":["../../src/schemas/hall-library.ts"],"names":[],"mappings":"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","sourcesContent":["import { z } from 'zod';\nimport {\n workProjectIdSchema,\n workProjectTypeSchema,\n taleIdSchema,\n tuneIdSchema,\n televisionIdSchema,\n chapterIdSchema,\n trackIdSchema,\n episodeIdSchema,\n titleSchema,\n addRemoveActionSchema,\n thresholdItemIdSchema,\n hallItemIdSchema,\n itemIdSchema,\n changeRequestIdSchema,\n} from './atoms.js';\nimport {\n MAX_HALL_LIBRARY_SUBMIT_BATCH,\n MAX_CHAPTER_CONTENT_LENGTH,\n MAX_TALE_DESCRIPTION_LENGTH,\n MAX_TUNE_DESCRIPTION_LENGTH,\n MAX_TELEVISION_DESCRIPTION_LENGTH,\n MAX_TUNE_TRACK_DESCRIPTION_LENGTH,\n MAX_TELEVISION_EPISODE_DESCRIPTION_LENGTH,\n MAX_THRESHOLD_REVIEW_NOTES_LENGTH,\n MAX_HALL_CHANGE_REQUEST_REASON_LENGTH,\n} from '../constants/business.js';\nimport { WORK_PROJECT_SPECIFIC_GENRES } from '../constants/options.js';\n\n// Canonical per-type genre enums. `WORK_PROJECT_SPECIFIC_GENRES.<type>` is a readonly\n// tuple of the exact genre strings the UI offers; the schema is the cross-boundary\n// contract, so a crafted callable can no longer put arbitrary/unmoderated text (or an\n// unbounded array of distinct strings) onto the public hall parent.\nconst TALE_GENRE_VALUES = WORK_PROJECT_SPECIFIC_GENRES.Tales as unknown as [string, ...string[]];\nconst TUNE_GENRE_VALUES = WORK_PROJECT_SPECIFIC_GENRES.Tunes as unknown as [string, ...string[]];\nconst TELEVISION_GENRE_VALUES = WORK_PROJECT_SPECIFIC_GENRES.Television as unknown as [string, ...string[]];\n\nexport const CreateChapterInputSchema = z.object({\n workProjectId: workProjectIdSchema,\n taleId: taleIdSchema,\n title: titleSchema,\n}).strict();\nexport type CreateChapterInput = z.infer<typeof CreateChapterInputSchema>;\n\nexport const CreateTelevisionEpisodeInputSchema = z.object({\n workProjectId: workProjectIdSchema,\n televisionId: televisionIdSchema,\n title: titleSchema,\n}).strict();\nexport type CreateTelevisionEpisodeInput = z.infer<typeof CreateTelevisionEpisodeInputSchema>;\n\nexport const CreateTuneTrackInputSchema = z.object({\n workProjectId: workProjectIdSchema,\n tuneId: tuneIdSchema,\n title: titleSchema,\n}).strict();\nexport type CreateTuneTrackInput = z.infer<typeof CreateTuneTrackInputSchema>;\n\nexport const ReviewThresholdItemInputSchema = z.object({\n thresholdItemId: thresholdItemIdSchema,\n decision: z.enum(['approved', 'needs_revision']),\n adminNotes: z.string().max(MAX_THRESHOLD_REVIEW_NOTES_LENGTH).nullable().optional(),\n // Reviewer checklist confirmations, recorded on the review (mirrors `teachesSomething`).\n // Optional here so a `needs_revision` decision still validates; the callable REQUIRES all\n // true on an `approved` decision. First two: no-begging-for-bouquets, no-credits-in-content.\n confirmedNoBegging: z.boolean().optional(),\n confirmedNoCredits: z.boolean().optional(),\n // Reviewer verified the AUTHOR's real-people/parody attestation sits in the correct\n // position for the content they reviewed — checked if the work depicts real people,\n // unchecked if it does not (R3, DJ 2026-07-12). A wrong position is a needs-revision\n // send-back, never an admin edit.\n confirmedRealPeopleAttestation: z.boolean().optional(),\n}).strict();\nexport type ReviewThresholdItemInput = z.infer<typeof ReviewThresholdItemInputSchema>;\n\nexport const SubmitForThresholdLibraryReviewInputSchema = z.object({\n workProjectId: workProjectIdSchema,\n workProjectType: workProjectTypeSchema,\n selectedItemIds: z.array(z.string().min(1)).min(1).max(MAX_HALL_LIBRARY_SUBMIT_BATCH),\n // AUTHOR attestation (R3, 2026-07-12): the submitting artisan attests this work\n // depicts real people (parody / satire / commentary). Stored on the threshold\n // item as `hasRealPeople`; the reviewer sees it READ-ONLY. When true, published\n // surfaces render the ONE standard platform disclaimer\n // (REAL_PEOPLE_DISCLAIMER_MESSAGE) — no free-text disclaimer input exists.\n depictsRealPeople: z.boolean(),\n}).strict();\nexport type SubmitForThresholdLibraryReviewInput = z.infer<typeof SubmitForThresholdLibraryReviewInputSchema>;\n\n// Member-initiated pull-back of a still-pending threshold submission. The runner derives\n// everything else from the threshold doc; rejects unless reviewStatus === 'pending'.\nexport const WithdrawFromThresholdLibraryReviewInputSchema = z.object({\n thresholdItemId: thresholdItemIdSchema,\n}).strict();\nexport type WithdrawFromThresholdLibraryReviewInput = z.infer<typeof WithdrawFromThresholdLibraryReviewInputSchema>;\n\n// Published change request (text-only at launch): the member proposes new values for TEXT\n// fields on a PUBLISHED surface — one pipeline, three grains (R1, 2026-07-12):\n// - hall grains: `hallItemId` set (+ `workProjectType`); the hall parent detail when\n// `subItemId` is absent, else the chapter/track/episode sub-item.\n// - realm grain: `workRealmId` set; targets the `workRealms/{id}` doc once the realm\n// counts as published. `workProjectType`/`subItemId` do not apply.\n// Exactly one of `hallItemId` / `workRealmId` must be set. Field names are validated by\n// the runner against the per-surface HALL_CONTENT_TEXT_FIELDS allowlist +\n// HALL_CONTENT_TEXT_FIELD_MAX caps; the schema-level cap is the largest field cap\n// anywhere (chapter content), derived from the same owning constant.\nexport const SubmitHallContentChangeRequestInputSchema = z.object({\n hallItemId: hallItemIdSchema.nullish(),\n workProjectType: workProjectTypeSchema.nullish(),\n workRealmId: z.string().min(1).nullish(),\n subItemId: z.string().min(1).nullish(),\n proposedFields: z.record(z.string().min(1).max(64), z.string().trim().min(1).max(MAX_CHAPTER_CONTENT_LENGTH))\n .refine((fields) => Object.keys(fields).length > 0, { message: 'Propose at least one field change.' }),\n}).strict().superRefine((val, ctx) => {\n const hasHallItem = typeof val.hallItemId === 'string' && val.hallItemId.length > 0;\n const hasRealm = typeof val.workRealmId === 'string' && val.workRealmId.length > 0;\n if (hasHallItem === hasRealm) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: 'Provide exactly one of hallItemId or workRealmId.',\n path: [hasRealm ? 'workRealmId' : 'hallItemId'],\n });\n return;\n }\n if (hasHallItem && (val.workProjectType === null || val.workProjectType === undefined)) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: 'workProjectType is required for a hall-item change request.',\n path: ['workProjectType'],\n });\n }\n if (hasRealm && (val.workProjectType !== null && val.workProjectType !== undefined)) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: 'workProjectType does not apply to a realm change request.',\n path: ['workProjectType'],\n });\n }\n if (hasRealm && typeof val.subItemId === 'string' && val.subItemId.length > 0) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: 'subItemId does not apply to a realm change request.',\n path: ['subItemId'],\n });\n }\n});\nexport type SubmitHallContentChangeRequestInput = z.infer<typeof SubmitHallContentChangeRequestInputSchema>;\n\n// Admin decision on a published change request. `resolutionReason` is REQUIRED on a deny\n// (the member is shown why); optional note on approve.\nexport const ReviewHallContentChangeRequestInputSchema = z.object({\n changeRequestId: changeRequestIdSchema,\n decision: z.enum(['approved', 'denied']),\n resolutionReason: z.string().trim().max(MAX_HALL_CHANGE_REQUEST_REASON_LENGTH).optional(),\n}).strict().superRefine((val, ctx) => {\n if (val.decision === 'denied' && (!val.resolutionReason || val.resolutionReason.length === 0)) {\n ctx.addIssue({ code: z.ZodIssueCode.custom, message: 'A reason is required when denying a change request.', path: ['resolutionReason'] });\n }\n});\nexport type ReviewHallContentChangeRequestInput = z.infer<typeof ReviewHallContentChangeRequestInputSchema>;\n\nexport const UpdateChapterDetailsInputSchema = z.object({\n workProjectId: workProjectIdSchema,\n taleId: taleIdSchema,\n chapterId: chapterIdSchema,\n title: titleSchema.optional(),\n content: z.string().max(MAX_CHAPTER_CONTENT_LENGTH).optional(),\n}).strict();\nexport type UpdateChapterDetailsInput = z.infer<typeof UpdateChapterDetailsInputSchema>;\n\nexport const UpdateTelevisionEpisodeDetailsInputSchema = z.object({\n workProjectId: workProjectIdSchema,\n televisionId: televisionIdSchema,\n episodeId: episodeIdSchema,\n title: titleSchema.optional(),\n description: z.string().max(MAX_TELEVISION_EPISODE_DESCRIPTION_LENGTH).optional(),\n}).strict();\nexport type UpdateTelevisionEpisodeDetailsInput = z.infer<typeof UpdateTelevisionEpisodeDetailsInputSchema>;\n\nexport const UpdateTuneTrackDetailsInputSchema = z.object({\n workProjectId: workProjectIdSchema,\n tuneId: tuneIdSchema,\n trackId: trackIdSchema,\n title: titleSchema.optional(),\n description: z.string().max(MAX_TUNE_TRACK_DESCRIPTION_LENGTH).optional(),\n}).strict();\nexport type UpdateTuneTrackDetailsInput = z.infer<typeof UpdateTuneTrackDetailsInputSchema>;\n\nexport const UpdateTaleWorkGenresInputSchema = z.object({\n workProjectId: workProjectIdSchema,\n taleId: taleIdSchema,\n workGenre: z.enum(TALE_GENRE_VALUES),\n action: addRemoveActionSchema,\n}).strict();\nexport type UpdateTaleWorkGenresInput = z.infer<typeof UpdateTaleWorkGenresInputSchema>;\n\nexport const UpdateTaleDetailsInputSchema = z.object({\n workProjectId: workProjectIdSchema,\n taleId: taleIdSchema,\n title: titleSchema.optional(),\n description: z.string().max(MAX_TALE_DESCRIPTION_LENGTH).optional(),\n}).strict();\nexport type UpdateTaleDetailsInput = z.infer<typeof UpdateTaleDetailsInputSchema>;\n\nexport const UpdateTelevisionWorkGenresInputSchema = z.object({\n workProjectId: workProjectIdSchema,\n televisionId: televisionIdSchema,\n workGenre: z.enum(TELEVISION_GENRE_VALUES),\n action: addRemoveActionSchema,\n}).strict();\nexport type UpdateTelevisionWorkGenresInput = z.infer<typeof UpdateTelevisionWorkGenresInputSchema>;\n\nexport const UpdateTelevisionDetailsInputSchema = z.object({\n workProjectId: workProjectIdSchema,\n televisionId: televisionIdSchema,\n title: titleSchema.optional(),\n description: z.string().max(MAX_TELEVISION_DESCRIPTION_LENGTH).optional(),\n}).strict();\nexport type UpdateTelevisionDetailsInput = z.infer<typeof UpdateTelevisionDetailsInputSchema>;\n\nexport const UpdateTuneWorkGenresInputSchema = z.object({\n workProjectId: workProjectIdSchema,\n tuneId: tuneIdSchema,\n workGenre: z.enum(TUNE_GENRE_VALUES),\n action: addRemoveActionSchema,\n}).strict();\nexport type UpdateTuneWorkGenresInput = z.infer<typeof UpdateTuneWorkGenresInputSchema>;\n\nexport const UpdateTuneDetailsInputSchema = z.object({\n workProjectId: workProjectIdSchema,\n tuneId: tuneIdSchema,\n title: titleSchema.optional(),\n description: z.string().max(MAX_TUNE_DESCRIPTION_LENGTH).optional(),\n}).strict();\nexport type UpdateTuneDetailsInput = z.infer<typeof UpdateTuneDetailsInputSchema>;\n\n// --- Per-user Hall viewing-state doc (hall-viewing-experience Area 2, ruled 2026-07-04) ---\n// One core (`runX`) owns the single privateData doc per Rule 3; writes are CALLABLE-ONLY —\n// no direct client Firestore writes anywhere in this system. Every list on the doc is capped\n// (HALL_LIBRARY_PREFS_CAPS in ../constants/business.js); cap enforcement is the backend\n// core's job, not this input-validation layer.\n\nexport const UpdateHallWorkHiddenInputSchema = z.object({\n hallItemId: hallItemIdSchema,\n hidden: z.boolean(),\n}).strict();\nexport type UpdateHallWorkHiddenInput = z.infer<typeof UpdateHallWorkHiddenInputSchema>;\n\n// \"Inked\" save-for-later watchlist toggle (My Playbill Area 7) — deliberately separate from\n// follows (Inked is private organization; follow is semi-public with a counter + notifications).\nexport const UpdateHallInkedWorkInputSchema = z.object({\n hallItemId: hallItemIdSchema,\n inked: z.boolean(),\n}).strict();\nexport type UpdateHallInkedWorkInput = z.infer<typeof UpdateHallInkedWorkInputSchema>;\n\n// Playback-progress heartbeat (throttled client-side to ~60s during playback, plus writes on\n// pause / pane-exit / media-end). `durationSeconds` is optional — not always known up front.\nexport const UpdateHallPlaybackProgressInputSchema = z.object({\n hallItemId: hallItemIdSchema,\n itemId: itemIdSchema,\n positionSeconds: z.number().min(0),\n durationSeconds: z.number().min(0).optional(),\n}).strict();\nexport type UpdateHallPlaybackProgressInput = z.infer<typeof UpdateHallPlaybackProgressInputSchema>;\n\n// Recently-viewed / History rail record. `itemId` is optional — a work-level view (no\n// sub-item selected yet) still records History.\nexport const UpdateHallRecentlyViewedInputSchema = z.object({\n hallItemId: hallItemIdSchema,\n itemId: itemIdSchema.nullish(),\n}).strict();\nexport type UpdateHallRecentlyViewedInput = z.infer<typeof UpdateHallRecentlyViewedInputSchema>;\n\nexport const UpdateHallLibrarySettingsInputSchema = z.object({\n tunesAutoplay: z.boolean(),\n}).strict();\nexport type UpdateHallLibrarySettingsInput = z.infer<typeof UpdateHallLibrarySettingsInputSchema>;\n\n\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/schemas/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,4BAA4B,CAAC;AAC3C,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,8BAA8B,CAAC;AAC7C,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,6BAA6B,CAAC;AAC5C,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC;AAElC,qFAAqF;AACrF,sFAAsF;AACtF,qFAAqF;AACrF,yBAAyB;AACzB,OAAO,EACL,+BAA+B,GAEhC,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,wCAAwC,GAEzC,MAAM,+BAA+B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/schemas/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,4BAA4B,CAAC;AAC3C,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,8BAA8B,CAAC;AAC7C,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,6BAA6B,CAAC;AAC5C,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC;AAElC,qFAAqF;AACrF,sFAAsF;AACtF,qFAAqF;AACrF,yBAAyB;AACzB,OAAO,EACL,+BAA+B,GAEhC,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,wCAAwC,GAEzC,MAAM,+BAA+B,CAAC","sourcesContent":["export * from './atoms.js';\nexport * from './stake-share-operation.js';\nexport * from './admin.js';\nexport * from './safety.js';\nexport * from './ncii.js';\nexport * from './uploads.js';\nexport * from './chat.js';\nexport * from './media.js';\nexport * from './commissions.js';\nexport * from './hall-library.js';\nexport * from './auditions.js';\nexport * from './payments.js';\nexport * from './work-project-management.js';\nexport * from './craft-skills.js';\nexport * from './social.js';\nexport * from './admin-dispatch-actions.js';\nexport * from './users.js';\nexport * from './utility.js';\nexport * from './voting.js';\nexport * from './notification.js';\n\n// Authoritative mutation results homed in ../doc-schemas (each composes a doc schema\n// whose module already imports from ./schemas — the reverse runtime import would be a\n// module cycle). Surfaced here so callables/hooks import ALL wire contracts from the\n// one ./schemas subpath.\nexport {\n AddToMentionHistoryResultSchema,\n type AddToMentionHistoryResult,\n} from '../doc-schemas/social.js';\nexport {\n CreateCommissionProposalTextResultSchema,\n type CreateCommissionProposalTextResult,\n} from '../doc-schemas/commissions.js';\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"media.js","sourceRoot":"","sources":["../../src/schemas/media.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACL,mBAAmB,EACnB,wBAAwB,EACxB,mBAAmB,EACnB,sBAAsB,EACtB,yBAAyB,EACzB,0BAA0B,EAC1B,qBAAqB,EACrB,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,YAAY,CAAC;AAEpB,+EAA+E;AAC/E,8EAA8E;AAC9E,gFAAgF;AAChF,kFAAkF;AAClF,iFAAiF;AACjF,+EAA+E;AAC/E,kFAAkF;AAClF,yEAAyE;AACzE,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC,kBAAkB,CAAC,WAAW,EAAE;IAC3E,+EAA+E;IAC/E,qFAAqF;IACrF,CAAC,CAAC,MAAM,CAAC;QACP,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC;QACnC,aAAa,EAAE,mBAAmB;KACnC,CAAC,CAAC,MAAM,EAAE;IACX,mFAAmF;IACnF,CAAC,CAAC,MAAM,CAAC;QACP,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC;QACtC,aAAa,EAAE,mBAAmB;QAClC,gBAAgB,EAAE,sBAAsB;KACzC,CAAC,CAAC,MAAM,EAAE;IACX,6EAA6E;IAC7E,CAAC,CAAC,MAAM,CAAC;QACP,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,oBAAoB,CAAC;QAC1C,mBAAmB,EAAE,yBAAyB;QAC9C,oBAAoB,EAAE,0BAA0B;KACjD,CAAC,CAAC,MAAM,EAAE;IACX,uFAAuF;IACvF,CAAC,CAAC,MAAM,CAAC;QACP,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC;QACpC,aAAa,EAAE,mBAAmB;QAClC,kBAAkB,EAAE,wBAAwB;KAC7C,CAAC,CAAC,MAAM,EAAE;IACX,wEAAwE;IACxE,CAAC,CAAC,MAAM,CAAC;QACP,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC;QACnC,aAAa,EAAE,mBAAmB;KACnC,CAAC,CAAC,MAAM,EAAE;IACX,sFAAsF;IACtF,oFAAoF;IACpF,6BAA6B;IAC7B,CAAC,CAAC,MAAM,CAAC;QACP,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC;QACpC,eAAe,EAAE,qBAAqB;KACvC,CAAC,CAAC,MAAM,EAAE;IACX,kFAAkF;IAClF,wFAAwF;IACxF,uFAAuF;IACvF,wFAAwF;IACxF,uFAAuF;IACvF,4BAA4B;IAC5B,CAAC,CAAC,MAAM,CAAC;QACP,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC;QACnC,aAAa,EAAE,mBAAmB;QAClC,YAAY,EAAE,kBAAkB;KACjC,CAAC,CAAC,MAAM,EAAE;CACZ,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"media.js","sourceRoot":"","sources":["../../src/schemas/media.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACL,mBAAmB,EACnB,wBAAwB,EACxB,mBAAmB,EACnB,sBAAsB,EACtB,yBAAyB,EACzB,0BAA0B,EAC1B,qBAAqB,EACrB,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,YAAY,CAAC;AAEpB,+EAA+E;AAC/E,8EAA8E;AAC9E,gFAAgF;AAChF,kFAAkF;AAClF,iFAAiF;AACjF,+EAA+E;AAC/E,kFAAkF;AAClF,yEAAyE;AACzE,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC,kBAAkB,CAAC,WAAW,EAAE;IAC3E,+EAA+E;IAC/E,qFAAqF;IACrF,CAAC,CAAC,MAAM,CAAC;QACP,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC;QACnC,aAAa,EAAE,mBAAmB;KACnC,CAAC,CAAC,MAAM,EAAE;IACX,mFAAmF;IACnF,CAAC,CAAC,MAAM,CAAC;QACP,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC;QACtC,aAAa,EAAE,mBAAmB;QAClC,gBAAgB,EAAE,sBAAsB;KACzC,CAAC,CAAC,MAAM,EAAE;IACX,6EAA6E;IAC7E,CAAC,CAAC,MAAM,CAAC;QACP,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,oBAAoB,CAAC;QAC1C,mBAAmB,EAAE,yBAAyB;QAC9C,oBAAoB,EAAE,0BAA0B;KACjD,CAAC,CAAC,MAAM,EAAE;IACX,uFAAuF;IACvF,CAAC,CAAC,MAAM,CAAC;QACP,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC;QACpC,aAAa,EAAE,mBAAmB;QAClC,kBAAkB,EAAE,wBAAwB;KAC7C,CAAC,CAAC,MAAM,EAAE;IACX,wEAAwE;IACxE,CAAC,CAAC,MAAM,CAAC;QACP,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC;QACnC,aAAa,EAAE,mBAAmB;KACnC,CAAC,CAAC,MAAM,EAAE;IACX,sFAAsF;IACtF,oFAAoF;IACpF,6BAA6B;IAC7B,CAAC,CAAC,MAAM,CAAC;QACP,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC;QACpC,eAAe,EAAE,qBAAqB;KACvC,CAAC,CAAC,MAAM,EAAE;IACX,kFAAkF;IAClF,wFAAwF;IACxF,uFAAuF;IACvF,wFAAwF;IACxF,uFAAuF;IACvF,4BAA4B;IAC5B,CAAC,CAAC,MAAM,CAAC;QACP,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC;QACnC,aAAa,EAAE,mBAAmB;QAClC,YAAY,EAAE,kBAAkB;KACjC,CAAC,CAAC,MAAM,EAAE;CACZ,CAAC,CAAC","sourcesContent":["import { z } from 'zod';\nimport {\n workProjectIdSchema,\n guildChatChannelIdSchema,\n guildInviteIdSchema,\n workFileFolderIdSchema,\n commissionListingIdSchema,\n commissionProposalIdSchema,\n adminDispatchIdSchema,\n reportGroupIdSchema,\n mediaAssetIdSchema,\n} from './atoms.js';\n\n// Scoped-media grant request for the gateway Worker (design doc: scoped tier =\n// cookie + user-bound grant). This is the CLIENT-CALLED wire contract for the\n// `createMediaGrant` callable — it crosses the backend↔frontend boundary, so it\n// lives here (callable-validation convention), not locally in the functions repo.\n// The EXACT Firestore permission check happens in the callable; this schema only\n// pins the shape. A custom folder's bytes must be unreachable outside its view\n// trade-professions, so `workFileFolder` is the EXACT folder scope (not the whole\n// Work grant); guildChannel / guildInvite are per-channel/thread scopes.\nexport const CreateMediaGrantInputSchema = z.discriminatedUnion('scopeKind', [\n // Pre-publish content media of a work project (hall covers / sub-item media) —\n // requires project read membership. Work FILES use the tighter workFileFolder scope.\n z.object({\n scopeKind: z.literal('workProject'),\n workProjectId: workProjectIdSchema,\n }).strict(),\n // One work-project FILE FOLDER — the EXACT folder scope, NOT the whole-Work grant.\n z.object({\n scopeKind: z.literal('workFileFolder'),\n workProjectId: workProjectIdSchema,\n workFileFolderId: workFileFolderIdSchema,\n }).strict(),\n // One commission proposal's media — proposal author or listing-side manager.\n z.object({\n scopeKind: z.literal('commissionProposal'),\n commissionListingId: commissionListingIdSchema,\n commissionProposalId: commissionProposalIdSchema,\n }).strict(),\n // A guild-CHANNEL chat attachment — the EXACT channel scope, NOT the whole-Work grant.\n z.object({\n scopeKind: z.literal('guildChannel'),\n workProjectId: workProjectIdSchema,\n guildChatChannelId: guildChatChannelIdSchema,\n }).strict(),\n // A guild-INVITE-thread chat attachment (no workProjectId to match on).\n z.object({\n scopeKind: z.literal('guildInvite'),\n guildInviteId: guildInviteIdSchema,\n }).strict(),\n // An admin-support THREAD chat attachment — per-thread scope keyed by adminDispatchId\n // (thread owner or admin authority; the callable runs the same checks startUpload's\n // adminSupport branch does).\n z.object({\n scopeKind: z.literal('adminSupport'),\n adminDispatchId: adminDispatchIdSchema,\n }).strict(),\n // Moderation reveal of ONE reported asset, bound to its report group — full or jr\n // admin only (the callable's explicit secure check, matching getReportedContentDetail's\n // gate). The callable verifies the asset belongs to the group's derived target (or its\n // frozen report-time snapshot) before minting; the grant is bound to exactly that asset\n // id, short TTL. Admins see reported things BECAUSE they were reported — this is never\n // a browse-any-asset scope.\n z.object({\n scopeKind: z.literal('adminReview'),\n reportGroupId: reportGroupIdSchema,\n mediaAssetId: mediaAssetIdSchema,\n }).strict(),\n]);\nexport type CreateMediaGrantInput = z.infer<typeof CreateMediaGrantInputSchema>;\n"]}
|
package/dist/schemas/ncii.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ncii.js","sourceRoot":"","sources":["../../src/schemas/ncii.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ncii.js","sourceRoot":"","sources":["../../src/schemas/ncii.ts"],"names":[],"mappings":"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","sourcesContent":["import { z } from 'zod';\nimport { ReportableItemTypeSchema, NciiMinorAssessmentSchema } from '../doc-schemas/safety/foundation.js';\nimport {\n MAX_NCII_EVIDENCE_REASON_LENGTH,\n MAX_NCII_RATIONALE_LENGTH,\n MAX_NCII_NONCONSENT_STATEMENT_LENGTH,\n MAX_NCII_SIGNED_NAME_LENGTH,\n MAX_NCII_SUPPORTING_FACTS_LENGTH,\n} from '../constants/business.js';\nimport { TAKE_IT_DOWN_VALIDITY_CONFIRMATION } from '../constants/safety-confirmation-phrases.js';\n\n// NCII / TAKE IT DOWN callable-input schemas. Cross-boundary contracts for the\n// `functions/src/ncii/` callables — moved here from local `functions/` definitions so the\n// callable-validation standard (parse `request.data` with a `.strict()` ttt-core schema before any\n// auth check) is met from one authoritative place. See docs/design/callable-validation.md.\n\n// Operator sets the child-safety crossover minorAssessment on an NCII case (CSAM possible-minor\n// crossover — DECISION 2026-07-01: operator-only, no automated age signal). A routing action: it\n// opens/links a PARALLEL child-safety review + deny-serving + PhotoDNA, WITHOUT touching the NCII\n// removal clock and WITHOUT auto-NCMEC (that still needs a validated hash or explicit human\n// confirmApparentViolation). Writes the `ncii.minorAssessmentSet` audit event.\nexport const SetNciiMinorAssessmentInputSchema = z.object({\n caseId: z.string().min(1),\n minorAssessment: NciiMinorAssessmentSchema,\n}).strict();\nexport type SetNciiMinorAssessmentInput = z.infer<typeof SetNciiMinorAssessmentInputSchema>;\n\n// ===========================================================================\n// listNciiEvidencePool — admin-only pool read for the find-&-link flow.\n// Optional caseId selects the currently-linked evidence to also return.\n// ===========================================================================\nexport const ListNciiEvidencePoolInputSchema = z.object({\n caseId: z.string().min(1).optional(),\n}).strict();\nexport type ListNciiEvidencePoolInput = z.infer<typeof ListNciiEvidencePoolInputSchema>;\n\n// ===========================================================================\n// linkNciiEvidenceToCase / unlinkNciiEvidenceFromCase — find-&-link step 2 (+ reverse).\n// ===========================================================================\nexport const LinkNciiEvidenceToCaseInputSchema = z.object({\n allegationId: z.string().min(1),\n caseId: z.string().min(1),\n}).strict();\nexport type LinkNciiEvidenceToCaseInput = z.infer<typeof LinkNciiEvidenceToCaseInputSchema>;\n\nexport const UnlinkNciiEvidenceFromCaseInputSchema = z.object({\n allegationId: z.string().min(1),\n caseId: z.string().min(1),\n}).strict();\nexport type UnlinkNciiEvidenceFromCaseInput = z.infer<typeof UnlinkNciiEvidenceFromCaseInputSchema>;\n\n// ===========================================================================\n// markNciiEvidence — admin-only \"NCII linked evidence\" intake (find-&-link step 1).\n// Client ids are HINTS; the target is re-resolved server-side.\n// ===========================================================================\nexport const MarkNciiEvidenceInputSchema = z.object({\n itemType: ReportableItemTypeSchema,\n reportedItemId: z.string().min(1),\n parentItemId: z.string().min(1).optional(),\n reportedUserId: z.string().min(1).optional(),\n reason: z.string().trim().max(MAX_NCII_EVIDENCE_REASON_LENGTH).optional(),\n}).strict();\nexport type MarkNciiEvidenceInput = z.infer<typeof MarkNciiEvidenceInputSchema>;\n\n// ===========================================================================\n// decideTakeItDownValidity — the nciiRequestReviewer-gated validity determination.\n// ===========================================================================\n\n/** Enumerated invalid-ruling reasons (never free-form). */\nexport const TakeItDownInvalidReasonCodeSchema = z.enum([\n 'missingSignature',\n 'missingLocator',\n 'missingNonconsentStatement',\n 'missingContactInformation',\n 'requesterNotDepictedPersonOrAuthorizedRepresentative',\n 'authorityNotEstablished',\n 'locatorNotResolvableAfterReasonableEffort',\n 'requestOutsideCoveredDepiction',\n 'duplicateSuperseded',\n 'fraudulentOrBadFaith',\n 'otherCounselApproved',\n]);\nexport type TakeItDownInvalidReasonCodeInput = z.infer<typeof TakeItDownInvalidReasonCodeSchema>;\n\nexport const DecideTakeItDownValidityInputSchema = z.object({\n requestId: z.string().min(1),\n result: z.enum(['valid', 'invalid', 'unableToLocate']),\n /** Required for an 'invalid' result; an enumerated reason (never free-form). */\n reasonCode: TakeItDownInvalidReasonCodeSchema.optional(),\n /** [EUAS-010] The operator's written rationale for this ruling. Persisted as an IMMUTABLE\n * restricted rationale row that `rationaleRef` then points at — the UI no longer fabricates a\n * `rationale:<requestId>` pointer. Required + substantive (non-placeholder). */\n rationaleText: z\n .string()\n .trim()\n .min(10, 'A substantive rationale is required for a validity decision.')\n .max(MAX_NCII_RATIONALE_LENGTH),\n /** Explicit typed confirmation (interim control until the passkey profile lands). */\n confirmation: z.literal(TAKE_IT_DOWN_VALIDITY_CONFIRMATION),\n}).strict();\nexport type DecideTakeItDownValidityInput = z.infer<typeof DecideTakeItDownValidityInputSchema>;\n\n// ===========================================================================\n// submitInAppNciiRequest — logged-in entry to the one NCII statutory intake core.\n// Client ids are HINTS; the target is re-resolved server-side.\n// ===========================================================================\nexport const SubmitInAppNciiRequestInputSchema = z\n .object({\n idempotencyKey: z.string().min(8).max(256),\n itemType: ReportableItemTypeSchema,\n reportedItemId: z.string().min(1).max(256),\n parentItemId: z.string().min(1).max(256).optional(),\n nonconsentStatement: z.string().min(1).max(MAX_NCII_NONCONSENT_STATEMENT_LENGTH),\n /** Typed-name electronic signature. */\n signedName: z.string().min(1).max(MAX_NCII_SIGNED_NAME_LENGTH),\n goodFaithCertification: z.literal(true),\n contactEmail: z.string().email().max(320).optional(),\n contactPhone: z.string().min(3).max(64).optional(),\n supportingFacts: z.string().max(MAX_NCII_SUPPORTING_FACTS_LENGTH).default(''),\n })\n .strict()\n // At least one contact method — the form prefills the account email but allows an override.\n .refine((b) => Boolean(b.contactEmail) || Boolean(b.contactPhone), {\n message: 'At least one contact method (email or phone) is required.',\n path: ['contactEmail'],\n });\nexport type SubmitInAppNciiRequestInput = z.infer<typeof SubmitInAppNciiRequestInputSchema>;\n\n// ===========================================================================\n// resolveNciiReportPreview — logged-in read resolving a reported item to a previewable asset.\n// Client ids are HINTS; the target is re-resolved server-side.\n// ===========================================================================\nexport const ResolveNciiReportPreviewInputSchema = z.object({\n itemType: ReportableItemTypeSchema,\n reportedItemId: z.string().min(1).max(256),\n parentItemId: z.string().min(1).max(256).optional(),\n}).strict();\nexport type ResolveNciiReportPreviewInput = z.infer<typeof ResolveNciiReportPreviewInputSchema>;\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"notification.js","sourceRoot":"","sources":["../../src/schemas/notification.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"notification.js","sourceRoot":"","sources":["../../src/schemas/notification.ts"],"names":[],"mappings":"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","sourcesContent":["// TTT notification contracts.\n//\n// `@ttt-productions/notification-core` is generic — at its package boundary a\n// notification's `metadata` is `Record<string, unknown>`. All TTT notification\n// policy lives here: the canonical type catalog (category / delivery / default\n// channels), the per-type typed `metadata` discriminated union, the broadcast\n// audience selector, and the callable input schemas. `runSendNotification`\n// (ttt-prod) validates `metadata` against the per-type schema before any write.\n//\n// The two notification audit-event payload shapes live here too (the\n// `AuditEventType` union members `notification.broadcastSent` /\n// `notification.adminArchived` are added in ../types/audit.ts; their actor is\n// always an admin mode — `adminReview` / `adminOverride`).\n\nimport { z } from 'zod';\nimport {\n userIdSchema,\n workProjectIdSchema,\n guildInviteIdSchema,\n adminDispatchIdSchema,\n hallItemIdSchema,\n thresholdItemIdSchema,\n changeRequestIdSchema,\n workProjectTypeSchema,\n notificationFanoutJobIdSchema,\n titleSchema,\n reportGroupIdSchema,\n} from './atoms.js';\nimport {\n MAX_THRESHOLD_REVIEW_NOTES_LENGTH,\n MAX_HALL_CHANGE_REQUEST_REASON_LENGTH,\n MAX_NOTIFICATION_MESSAGE_LENGTH,\n MAX_BROADCAST_EXPLICIT_UIDS,\n} from '../constants/business.js';\nimport { HallSubItemTypeSchema } from '../doc-schemas/content.js';\nimport { ReportableItemTypeSchema } from '../doc-schemas/safety/foundation.js';\n\n// String shape atoms specific to notifications.\nconst notificationMessageSchema = z.string().min(1).max(MAX_NOTIFICATION_MESSAGE_LENGTH);\n// The canonical reportable-item enum — never an open string (Rule 36).\nconst reportedItemTypeSchema = ReportableItemTypeSchema;\nconst reportedItemIdSchema = z.string().min(1).max(128);\nconst reportIdSchema = z.string().min(1);\nconst appealIdSchema = z.string().min(1);\nconst workRealmIdSchema = z.string().min(1);\n\n// ============================================================================\n// TYPE + CHANNEL CATALOG\n// ============================================================================\n\nexport const NOTIFICATION_TYPE_VALUES = [\n 'content_report',\n 'guild_invite',\n 'admin_dispatch_reply',\n 'threshold_library_submission',\n // Author feedback for a Threshold Library review decision (only needs_revision is\n // delivered today — an approval reaches the author via the publish member fanout).\n 'threshold_library_reviewed',\n // Proposer feedback for a PUBLISHED change-request decision (approve/deny).\n 'hall_content_change_request_resolved',\n 'admin_announcement',\n 'followed_content_published',\n // chat-edge-rebuild P7 — the two new fanout triggers (NOTIFICATIONS_REDESIGN \"Triggers\").\n // `member_content_published`: the Hall-publish MEMBER job (\"your work was published!\") — same\n // `thresholdItemId` eventId as the follower job, different type so `deliveryId` stays distinct.\n // `followed_craft_skill_published`: craft-skill publish → the artisan's followers\n // (`staticRelight` strategy — count 1 forever, static copy, no count shown).\n 'member_content_published',\n 'followed_craft_skill_published',\n // Reporter feedback (DJ ruling 2026-07-06): when a report a user submitted is\n // closed as a REAL case WITH action (ordinary report root flips to `actioned`),\n // the reporter gets one light informational card. Never sent on dismissals.\n // Generic copy only — the card must not reveal the reported user, reason, or\n // remedy (a bad-faith reporter must not be able to probe moderation outcomes).\n 'report_action_taken',\n // Appellant feedback for a content-appeal decision (DJ ruling 2026-07-10 —\n // gap found by the hosted E2E build: reviewContentAppeal decided appeals with\n // NO channel reporting the outcome to the appellant). Fired on BOTH approve\n // and deny. It is the appellant's OWN appeal, so unlike report_action_taken\n // there is no privacy ceiling: the card states the outcome plainly and\n // targets My Uploads, where the resulting upload state lives.\n 'content_appeal_reviewed',\n] as const;\n\nexport const NotificationTypeSchema = z.enum(NOTIFICATION_TYPE_VALUES);\nexport type NotificationType = z.infer<typeof NotificationTypeSchema>;\n\n/** Delivery channels. Only `inApp` is implemented at launch; `email`/`push`\n * are future channel handlers dispatched from the `runSendNotification`\n * chokepoint. */\nexport const NOTIFICATION_CHANNEL_VALUES = ['inApp', 'email', 'push'] as const;\nexport const NotificationChannelSchema = z.enum(NOTIFICATION_CHANNEL_VALUES);\nexport type NotificationChannel = z.infer<typeof NotificationChannelSchema>;\n\nexport type NotificationCategory = 'user' | 'admin';\nexport const NotificationCategorySchema = z.enum(['user', 'admin']);\n\nexport interface NotificationTypeCatalogEntry {\n /** Which active collection / audience this type writes to. */\n category: NotificationCategory;\n /** `realtime` writes straight to active; `queued` goes through the batch processor. */\n delivery: 'realtime' | 'queued';\n /** Default channel list applied when a send omits `channels`. All `['inApp']` at launch. */\n defaultChannels: NotificationChannel[];\n}\n\n/**\n * The canonical TTT notification type catalog. `runSendNotification` resolves a\n * type's category/delivery here and carries `defaultChannels` through when a\n * send omits `channels`.\n */\nexport const NOTIFICATION_TYPE_CATALOG: Record<NotificationType, NotificationTypeCatalogEntry> = {\n content_report: { category: 'admin', delivery: 'realtime', defaultChannels: ['inApp'] },\n guild_invite: { category: 'user', delivery: 'queued', defaultChannels: ['inApp'] },\n admin_dispatch_reply: { category: 'user', delivery: 'realtime', defaultChannels: ['inApp'] },\n threshold_library_submission: { category: 'admin', delivery: 'queued', defaultChannels: ['inApp'] },\n threshold_library_reviewed: { category: 'user', delivery: 'queued', defaultChannels: ['inApp'] },\n hall_content_change_request_resolved: { category: 'user', delivery: 'queued', defaultChannels: ['inApp'] },\n admin_announcement: { category: 'user', delivery: 'queued', defaultChannels: ['inApp'] },\n followed_content_published: { category: 'user', delivery: 'queued', defaultChannels: ['inApp'] },\n member_content_published: { category: 'user', delivery: 'queued', defaultChannels: ['inApp'] },\n followed_craft_skill_published: { category: 'user', delivery: 'queued', defaultChannels: ['inApp'] },\n report_action_taken: { category: 'user', delivery: 'queued', defaultChannels: ['inApp'] },\n content_appeal_reviewed: { category: 'user', delivery: 'queued', defaultChannels: ['inApp'] },\n};\n\n// ============================================================================\n// PER-TYPE METADATA (discriminated union, keyed by `type`)\n// ============================================================================\n\n/**\n * Typed `metadata` payload for each notification type. The generic package\n * boundary takes `Record<string, unknown>`; the app validates against this\n * before sending so each type's payload is checked like every other callable\n * schema.\n */\nexport const NotificationMetadataByTypeSchema = z.discriminatedUnion('type', [\n z.object({\n type: z.literal('content_report'),\n reportGroupId: reportGroupIdSchema,\n reportedItemType: reportedItemTypeSchema,\n reportedItemId: reportedItemIdSchema,\n }).strict(),\n z.object({\n type: z.literal('guild_invite'),\n workProjectId: workProjectIdSchema,\n guildInviteId: guildInviteIdSchema,\n workTitle: titleSchema,\n }).strict(),\n z.object({\n type: z.literal('admin_dispatch_reply'),\n adminDispatchId: adminDispatchIdSchema,\n // Party-generic dispatch: present on workProject-party threads so the card routes\n // to the Work's correspondence surface. Absent on user-party threads (legacy shape).\n partyKind: z.enum(['user', 'workProject']).optional(),\n workProjectId: workProjectIdSchema.optional(),\n }).strict(),\n z.object({\n type: z.literal('threshold_library_submission'),\n thresholdItemId: thresholdItemIdSchema,\n hallItemId: hallItemIdSchema,\n workProjectId: workProjectIdSchema,\n }).strict(),\n // Author feedback for a review decision. Mirrors what runReviewThresholdItem\n // (ttt-prod) sends: only `needs_revision` is delivered today; `adminNotes` is\n // the reviewer's note, sent as null when the reviewer left none.\n z.object({\n type: z.literal('threshold_library_reviewed'),\n thresholdItemId: thresholdItemIdSchema,\n hallItemId: hallItemIdSchema,\n workProjectId: workProjectIdSchema,\n workProjectType: workProjectTypeSchema,\n itemId: z.string().min(1),\n decision: z.literal('needs_revision'),\n adminNotes: z.string().max(MAX_THRESHOLD_REVIEW_NOTES_LENGTH).nullable(),\n }).strict(),\n // Proposer feedback for a published change-request decision. Mirrors what\n // runReviewHallContentChangeRequest (ttt-prod) sends: `resolutionReason` is\n // required on a deny, optional on an approve — null when absent. The realm\n // grain (R1) sends `workRealmId` with `hallItemId` null; hall grains the\n // reverse.\n z.object({\n type: z.literal('hall_content_change_request_resolved'),\n changeRequestId: changeRequestIdSchema,\n hallItemId: hallItemIdSchema.nullable(),\n workRealmId: z.string().min(1).nullish(),\n workProjectId: workProjectIdSchema,\n decision: z.enum(['approved', 'denied']),\n resolutionReason: z.string().max(MAX_HALL_CHANGE_REQUEST_REASON_LENGTH).nullable(),\n }).strict(),\n z.object({\n type: z.literal('admin_announcement'),\n title: titleSchema,\n message: notificationMessageSchema,\n }).strict(),\n z.object({\n type: z.literal('followed_content_published'),\n workProjectId: workProjectIdSchema,\n workTitle: titleSchema,\n hallItemId: hallItemIdSchema,\n hallItemTitle: titleSchema,\n hallSubItemType: HallSubItemTypeSchema,\n }).strict(),\n // P7 Hall-publish MEMBER job — same Hall-publication fields as the follower type (it describes\n // the SAME publication to the work's members; the work route + \"your work was published!\" copy\n // are set by the emitter via targetPath/title, not metadata).\n z.object({\n type: z.literal('member_content_published'),\n workProjectId: workProjectIdSchema,\n workTitle: titleSchema,\n hallItemId: hallItemIdSchema,\n hallItemTitle: titleSchema,\n hallSubItemType: HallSubItemTypeSchema,\n }).strict(),\n // P7 craft-skill publish — points at the artisan whose skills updated. The actor name\n // (\"X uploaded new craft skills\") + the profile/skills route resolve from `artisanUid` at\n // render time (Display Identity Invariant); `staticRelight` shows no count.\n z.object({\n type: z.literal('followed_craft_skill_published'),\n artisanUid: userIdSchema,\n }).strict(),\n // Reporter feedback — metadata is deliberately minimal: `reportId` is the\n // reporter's OWN report-root doc id (deterministic per reporterUid + target,\n // see writeOrdinaryReport), used only as the dedup/aggregation key so a\n // reporter gets at most one card per report they filed. NO fields that\n // identify the reported user/content/remedy may ever be added here.\n z.object({\n type: z.literal('report_action_taken'),\n reportId: reportIdSchema,\n }).strict(),\n // Appellant feedback for a content-appeal decision. `appealId` is the\n // appellant's OWN appeal doc id (the dedup/aggregation key — one card per\n // appeal, a re-decision coalesces); `decision` drives the card copy.\n z.object({\n type: z.literal('content_appeal_reviewed'),\n appealId: appealIdSchema,\n decision: z.enum(['approved', 'denied']),\n }).strict(),\n]);\nexport type NotificationMetadataByType = z.infer<typeof NotificationMetadataByTypeSchema>;\n\n// ============================================================================\n// BROADCAST AUDIENCE SELECTOR\n// ============================================================================\n\n/**\n * Admin broadcast audience selector. Stored on a broadcast job; the scheduled\n * fan-out worker resolves a page of it into uids (domain-aware queries live in\n * ttt-prod — the package only ever receives uids).\n */\nexport const BroadcastAudienceSelectorSchema = z.discriminatedUnion('kind', [\n z.object({ kind: z.literal('allActiveUsers') }).strict(),\n z.object({\n kind: z.literal('explicitUids'),\n // The selector's documented audience cap (dedup + serialized-byte enforcement\n // for work/realm snapshots is app-side). Derives from the ONE named constant.\n uids: z.array(userIdSchema).min(1).max(MAX_BROADCAST_EXPLICIT_UIDS),\n }).strict(),\n z.object({\n kind: z.literal('workMembers'),\n workProjectId: workProjectIdSchema,\n }).strict(),\n z.object({\n kind: z.literal('realmMembers'),\n workRealmId: workRealmIdSchema,\n }).strict(),\n z.object({ kind: z.literal('allArtisans') }).strict(),\n]);\nexport type BroadcastAudienceSelector = z.infer<typeof BroadcastAudienceSelectorSchema>;\n\n// ============================================================================\n// CALLABLE INPUT SCHEMAS\n// ============================================================================\n\nexport const CreateNotificationBroadcastInputSchema = z.object({\n // Client-generated idempotency key — the app derives the broadcast eventId\n // deterministically from (actorUid, requestId) so a lost-ack retry is idempotent.\n requestId: z.string().min(1),\n selector: BroadcastAudienceSelectorSchema,\n title: titleSchema,\n message: notificationMessageSchema,\n}).strict();\nexport type CreateNotificationBroadcastInput = z.infer<typeof CreateNotificationBroadcastInputSchema>;\n\n/** Archive scope: a single notification, or the caller's whole category. */\nexport const ArchiveNotificationScopeSchema = z.discriminatedUnion('kind', [\n z.object({ kind: z.literal('single'), notificationId: z.string().min(1) }).strict(),\n z.object({ kind: z.literal('all') }).strict(),\n]);\nexport type ArchiveNotificationScope = z.infer<typeof ArchiveNotificationScopeSchema>;\n\n// No `device` field on the archive input — archive metadata is server-derived (A1).\nexport const ArchiveNotificationInputSchema = z.object({\n category: NotificationCategorySchema,\n scope: ArchiveNotificationScopeSchema,\n}).strict();\nexport type ArchiveNotificationInput = z.infer<typeof ArchiveNotificationInputSchema>;\n\n// Shared admin notifications have no per-admin seen state, so only the personal\n// `user` category can be marked seen.\nexport const MarkNotificationsSeenInputSchema = z.object({\n category: z.literal('user'),\n}).strict();\nexport type MarkNotificationsSeenInput = z.infer<typeof MarkNotificationsSeenInputSchema>;\n\n// ============================================================================\n// OBSERVED-GENERATION CALLABLE INPUT SCHEMAS (P6 tray)\n//\n// These are for the NEW observed-generation callables the P6 notification tray\n// will invoke. The LEGACY schemas above (MarkNotificationsSeenInputSchema /\n// ArchiveNotificationInputSchema) remain intact — the legacy callables still use\n// them.\n// ============================================================================\n\n// Max items per mark-seen call matches a sane notification tray page size.\nconst MARK_SEEN_MAX_ITEMS = 50;\n\n/**\n * A single rendered notification row and the generation the UI observed.\n * `activeId` is the Firestore active-notification document id;\n * `observedActivityGeneration` is the opaque token from that document.\n */\nconst SeenItemSchema = z.object({\n activeId: z.string().min(1),\n observedActivityGeneration: z.string().min(1),\n}).strict();\n\n/**\n * Input for the new observed-generation mark-seen callable (P6 tray).\n *\n * The UI sends only the rows it actually rendered plus their observed\n * `activityGeneration` tokens. The server sets `seenAt = now` ONLY when the\n * card's current `activityGeneration` matches `observedActivityGeneration`;\n * otherwise it is a no-op for that row (activity arrived after render, or a\n * delete+recreate rotated the token).\n *\n * category is always `'user'` — shared admin notifications have no per-admin\n * seen state.\n */\nexport const MarkNotificationsSeenObservedInputSchema = z.object({\n category: z.literal('user'),\n items: z.array(SeenItemSchema).min(1).max(MARK_SEEN_MAX_ITEMS),\n}).strict();\nexport type MarkNotificationsSeenObservedInput = z.infer<typeof MarkNotificationsSeenObservedInputSchema>;\n\n/**\n * Archive scope for the observed-generation callable.\n *\n * `single` — archive one notification card. Carries `notificationId` (the\n * active-card doc id) and `observedActivityGeneration` (the precondition:\n * the server archives only if the card's current generation matches).\n *\n * `all` — archive every card in the category. The per-card generation\n * precondition is applied server-side per card during bounded-page sweeps;\n * the caller supplies no single generation token here because there is no\n * single observed generation for the whole category. (Design choice: archive-all\n * carries no observedActivityGeneration at the top level; the server reads each\n * card's current generation as its own precondition. This is consistent with the\n * NOTIFICATIONS_REDESIGN \"mark-all/archive-all run bounded pages with stable\n * cursors until exhausted\" protocol and the archive-history identity formula\n * which keys each occurrence on requestId independently.)\n */\nexport const ArchiveNotificationObservedScopeSchema = z.discriminatedUnion('kind', [\n z.object({\n kind: z.literal('single'),\n notificationId: z.string().min(1),\n observedActivityGeneration: z.string().min(1),\n }).strict(),\n z.object({\n kind: z.literal('all'),\n }).strict(),\n]);\nexport type ArchiveNotificationObservedScope = z.infer<typeof ArchiveNotificationObservedScopeSchema>;\n\n/**\n * Input for the observed-generation archive callable (P6 tray).\n *\n * `requestId` is a per-call nonce — the tray mints a fresh uuid on every archive /\n * clear-all click, so it is NOT a replay-stability token (R39). Idempotency is provided\n * by ACTIVE-DOC DELETION: a replay finds the card already gone and no-ops, so an archive\n * never double-applies. The server combines `requestId` with the card's `activeId` to\n * form the deterministic history doc id (`hash('notification-archive', category,\n * audienceScope, requestId:activeId)`), so a single archive can never collide on another\n * card's history doc (R35).\n *\n * `category` scopes which active-notification collection is archived\n * (`activeUserNotifications` vs `activeAdminNotifications`) and forms part of\n * the history doc path.\n */\nexport const ArchiveNotificationObservedInputSchema = z.object({\n requestId: z.string().min(1),\n category: NotificationCategorySchema,\n scope: ArchiveNotificationObservedScopeSchema,\n}).strict();\nexport type ArchiveNotificationObservedInput = z.infer<typeof ArchiveNotificationObservedInputSchema>;\n\n// ============================================================================\n// SERVER-OWNED ARCHIVE-ALL JOB (replaces the browser clear-all loop)\n//\n// `enqueueArchiveAll` enqueues ONE durable archive-all job scoped to the tab's\n// category (idempotent per user+category+requestId) and returns { jobId }; the\n// bounded server worker drains that category's active cards each in its own\n// atomic archive+audit txn (per-card observed-generation precondition preserved).\n// `getArchiveAllStatus` is polled by the thin client hook. Per-tab scoping is\n// REQUIRED — a job only ever archives its own category, never all tabs.\n// ============================================================================\n\nexport const EnqueueArchiveAllInputSchema = z.object({\n requestId: z.string().min(1),\n category: NotificationCategorySchema,\n}).strict();\nexport type EnqueueArchiveAllInput = z.infer<typeof EnqueueArchiveAllInputSchema>;\n\nexport const GetArchiveAllStatusInputSchema = z.object({\n jobId: z.string().min(1),\n}).strict();\nexport type GetArchiveAllStatusInput = z.infer<typeof GetArchiveAllStatusInputSchema>;\n\n// Wire contract for the `resumeFanoutJob` callable — the admin console re-arms a\n// dead-lettered notification fanout job by id. Admin console-invoked, but still a\n// wire contract, so it lives here (callable-validation convention) rather than as a\n// local schema in the functions repo.\nexport const ResumeFanoutJobInputSchema = z.object({\n jobId: notificationFanoutJobIdSchema,\n}).strict();\nexport type ResumeFanoutJobInput = z.infer<typeof ResumeFanoutJobInputSchema>;\n\n// ============================================================================\n// AUDIT EVENT PAYLOADS (admin-only)\n// ============================================================================\n\n/**\n * Payload of a `notification.broadcastSent` audit event — written when an admin\n * enqueues a broadcast. Actor mode is `adminReview` / `adminOverride`. Records\n * the selector (never a pre-resolved uid list) + the job it created.\n */\nexport interface NotificationBroadcastSentAuditMetadata {\n jobId: string;\n selector: BroadcastAudienceSelector;\n title: string;\n}\n\n/**\n * Payload of a `notification.adminArchived` audit event — written when an admin\n * clears a shared admin notification (the `handledBy` action). Actor mode is\n * `adminReview` / `adminOverride`.\n */\nexport interface NotificationAdminArchivedAuditMetadata {\n scope: 'single' | 'all';\n /** Present for single-archive; absent for a category-wide `all` archive. */\n notificationId?: string;\n handledBy: string;\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"payments.js","sourceRoot":"","sources":["../../src/schemas/payments.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACL,+BAA+B,EAC/B,+BAA+B,GAChC,MAAM,0BAA0B,CAAC;AAElC,MAAM,CAAC,MAAM,sCAAsC,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7D,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC,GAAG,CAAC,+BAA+B,CAAC;IAClG,2EAA2E;IAC3E,6EAA6E;IAC7E,6EAA6E;IAC7E,oDAAoD;IACpD,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE;IACpC,4FAA4F;IAC5F,8FAA8F;IAC9F,wFAAwF;IACxF,WAAW,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;CAC7B,CAAC,CAAC,MAAM,EAAE,CAAC;AAGZ,iGAAiG;AACjG,+FAA+F;AAC/F,wCAAwC;AACxC,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAC,MAAM,CAAC;IACrD,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE;CAC5B,CAAC,CAAC,MAAM,EAAE,CAAC;AAGZ,qGAAqG;AACrG,2EAA2E;AAC3E,MAAM,CAAC,MAAM,0CAA0C,GAAG,CAAC,CAAC,MAAM,CAAC;IACjE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IACrC,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACpC,CAAC,CAAC,MAAM,EAAE,CAAC,MAAM,CAChB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,MAAM,IAAI,CAAC,OAAO,CAAC,CAAC,YAAY,KAAK,QAAQ,IAAI,CAAC,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,EACjG,EAAE,OAAO,EAAE,kDAAkD,EAAE,IAAI,EAAE,CAAC,cAAc,CAAC,EAAE,CACxF,CAAC"}
|
|
1
|
+
{"version":3,"file":"payments.js","sourceRoot":"","sources":["../../src/schemas/payments.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACL,+BAA+B,EAC/B,+BAA+B,GAChC,MAAM,0BAA0B,CAAC;AAElC,MAAM,CAAC,MAAM,sCAAsC,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7D,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC,GAAG,CAAC,+BAA+B,CAAC;IAClG,2EAA2E;IAC3E,6EAA6E;IAC7E,6EAA6E;IAC7E,oDAAoD;IACpD,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE;IACpC,4FAA4F;IAC5F,8FAA8F;IAC9F,wFAAwF;IACxF,WAAW,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;CAC7B,CAAC,CAAC,MAAM,EAAE,CAAC;AAGZ,iGAAiG;AACjG,+FAA+F;AAC/F,wCAAwC;AACxC,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAC,MAAM,CAAC;IACrD,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE;CAC5B,CAAC,CAAC,MAAM,EAAE,CAAC;AAGZ,qGAAqG;AACrG,2EAA2E;AAC3E,MAAM,CAAC,MAAM,0CAA0C,GAAG,CAAC,CAAC,MAAM,CAAC;IACjE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IACrC,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACpC,CAAC,CAAC,MAAM,EAAE,CAAC,MAAM,CAChB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,MAAM,IAAI,CAAC,OAAO,CAAC,CAAC,YAAY,KAAK,QAAQ,IAAI,CAAC,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,EACjG,EAAE,OAAO,EAAE,kDAAkD,EAAE,IAAI,EAAE,CAAC,cAAc,CAAC,EAAE,CACxF,CAAC","sourcesContent":["import { z } from 'zod';\nimport {\n MIN_PLEDGE_PAYMENT_AMOUNT_CENTS,\n MAX_PLEDGE_PAYMENT_AMOUNT_CENTS,\n} from '../constants/business.js';\n\nexport const CreateStripeCheckoutSessionInputSchema = z.object({\n amount: z.number().int().min(MIN_PLEDGE_PAYMENT_AMOUNT_CENTS).max(MAX_PLEDGE_PAYMENT_AMOUNT_CENTS),\n // One-time attempt id, generated client-side per payment intent and stable\n // across retries of the same submit. The server derives pledgePaymentId from\n // it and passes a Stripe idempotency key so a double-submit returns the SAME\n // Checkout Session instead of creating a duplicate.\n checkoutAttemptId: z.string().uuid(),\n // Payments are 18+ (site policy: 13+ to use, 18+ to pay). The checkout checkbox carries the\n // age attestation AND the public-pledge transparency disclosure; the callable rejects when it\n // is absent and stamps ageAttestedAt onto the pledge record so the consent is provable.\n ageAttested: z.literal(true),\n}).strict();\nexport type CreateStripeCheckoutSessionInput = z.infer<typeof CreateStripeCheckoutSessionInputSchema>;\n\n// User-initiated pledge refund request (post-launch). The callable resolves userId from auth and\n// enforces the PLEDGE_REFUND_REQUEST_WINDOW_MS eligibility window server-side; the client only\n// names which pledge it wants refunded.\nexport const RequestPledgeRefundInputSchema = z.object({\n pledgePaymentId: z.string(),\n}).strict();\nexport type RequestPledgeRefundInput = z.infer<typeof RequestPledgeRefundInputSchema>;\n\n// Admin resolution of a pending pledge refund request: approve (initiate the Stripe refund) or deny.\n// `denialReason` is REQUIRED when denying and forbidden/ignored otherwise.\nexport const AdminResolvePledgeRefundRequestInputSchema = z.object({\n requestId: z.string(),\n decision: z.enum(['approve', 'deny']),\n denialReason: z.string().optional(),\n}).strict().refine(\n (v) => v.decision !== 'deny' || (typeof v.denialReason === 'string' && v.denialReason.length > 0),\n { message: 'denialReason is required when decision is \"deny\"', path: ['denialReason'] },\n);\nexport type AdminResolvePledgeRefundRequestInput = z.infer<typeof AdminResolvePledgeRefundRequestInputSchema>;\n\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"safety.js","sourceRoot":"","sources":["../../src/schemas/safety.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"safety.js","sourceRoot":"","sources":["../../src/schemas/safety.ts"],"names":[],"mappings":"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","sourcesContent":["// TTT safety-domain callable input schemas.\n//\n// The Trust & Safety operator surface (safety case console, evidence reveal, NCMEC\n// manual-portal completion, per-account safety actions, operator TOTP step-up, retained-\n// evidence inventory, party panel, TAKE IT DOWN request detail, protected-context re-fetch)\n// crosses the backend↔frontend boundary, so its callable input contracts live here — the\n// single source of truth — instead of being redefined locally in `functions/src/safety/`.\n//\n// Every object schema is `.strict()` so an unknown field on a privileged operator/admin\n// action is REJECTED rather than silently accepted (defense-in-depth on the highest-risk\n// callables). `caseId` / `targetUid` / `requestId` / `submissionId` and similar identifiers\n// are plain `z.string().min(1)` — matching the shapes the callables accept today; do not\n// broaden or weaken them.\n\nimport { z } from 'zod';\nimport {\n MAX_INTERNAL_REASON_LENGTH,\n MAX_USER_FACING_REASON_LENGTH,\n MAX_SAFETY_ARTIFACT_DESCRIPTION_LENGTH,\n MAX_NCMEC_PORTAL_PROOF_TEXT_LENGTH,\n} from '../constants/business.js';\nimport {\n SAFETY_ACCOUNT_ACTION_CONFIRMATION,\n NCMEC_PORTAL_RECEIPT_CONFIRMATION,\n NCMEC_MANUAL_PORTAL_FILED_CONFIRMATION,\n REVEAL_CASE_EVIDENCE_CONFIRMATION,\n NCMEC_PORTAL_CORRECTION_CONFIRMATION,\n} from '../constants/safety-confirmation-phrases.js';\nimport { AccountActionSchema } from '../doc-schemas/safety/sagas.js';\nimport {\n ChildSafetyAccountRoleSchema,\n ChildSafetyAccountSubjectDispositionSchema,\n} from '../doc-schemas/safety/case.js';\nimport { SafetyEvidenceExternalFactKindSchema } from '../doc-schemas/safety/evidence.js';\n\n// ---------------------------------------------------------------------------\n// commandAccountAction — apply a per-account safety action on a child-safety case.\n// ---------------------------------------------------------------------------\n\n/**\n * The per-account safety action the operator command applies — an ALIAS of the ONE\n * canonical `AccountActionSchema` (../doc-schemas/safety/sagas.ts), re-exported under\n * the callable-input name. Never a re-declared literal (Rule 36).\n */\nexport const CommandAccountActionSchema = AccountActionSchema;\nexport type CommandAccountActionValue = z.infer<typeof CommandAccountActionSchema>;\n\nexport const CommandAccountActionInputSchema = z\n .object({\n caseId: z.string().min(1),\n targetUid: z.string().min(1),\n action: CommandAccountActionSchema,\n /** Operator-facing internal rationale (LE-loggable). */\n reasonInternal: z.string().min(4, 'An internal reason is required.').max(MAX_INTERNAL_REASON_LENGTH),\n /** The generic owner-readable reason (no detail leaks). */\n reasonUserFacing: z.string().min(1).max(MAX_USER_FACING_REASON_LENGTH),\n /** Per-account case role (A1b) — the canonical case enums, never re-declared. */\n role: ChildSafetyAccountRoleSchema,\n subjectDisposition: ChildSafetyAccountSubjectDispositionSchema,\n confirmation: z.literal(SAFETY_ACCOUNT_ACTION_CONFIRMATION),\n })\n .strict();\nexport type CommandAccountActionInput = z.infer<typeof CommandAccountActionInputSchema>;\n\n// ---------------------------------------------------------------------------\n// getSafetyCaseConsole — paginated read of the active safety-case console.\n// ---------------------------------------------------------------------------\n\n/** Cursor for the next page of a paginated console source — the last row's `(orderField value, docId)`. */\nexport const SafetyCaseConsoleCursorSchema = z\n .object({ v: z.number(), id: z.string().min(1) })\n .strict();\nexport type SafetyCaseConsoleCursor = z.infer<typeof SafetyCaseConsoleCursorSchema>;\n\nconst SAFETY_CONSOLE_MAX_PAGE_SIZE = 200;\n\nexport const GetSafetyCaseConsoleInputSchema = z\n .object({\n pageSize: z.number().int().min(1).max(SAFETY_CONSOLE_MAX_PAGE_SIZE).optional(),\n childSafetyCursor: SafetyCaseConsoleCursorSchema.nullish(),\n nciiCursor: SafetyCaseConsoleCursorSchema.nullish(),\n takeItDownCursor: SafetyCaseConsoleCursorSchema.nullish(),\n })\n .strict()\n .nullish();\nexport type GetSafetyCaseConsoleInput = z.infer<typeof GetSafetyCaseConsoleInputSchema>;\n\n// ---------------------------------------------------------------------------\n// getSafetyCaseById — full-admin read of a terminal safety case by id.\n// ---------------------------------------------------------------------------\n\nexport const GetSafetyCaseByIdInputSchema = z\n .object({\n caseType: z.enum(['csam', 'ncii']),\n caseId: z.string().min(1).max(200),\n })\n .strict();\nexport type GetSafetyCaseByIdInput = z.infer<typeof GetSafetyCaseByIdInputSchema>;\n\n// ---------------------------------------------------------------------------\n// getSafetyCaseParties — server-resolved party panel for a safety case.\n// ---------------------------------------------------------------------------\n\nexport const GetSafetyCasePartiesInputSchema = z\n .object({\n caseType: z.enum(['csam', 'ncii']),\n caseId: z.string().min(1),\n })\n .strict();\nexport type GetSafetyCasePartiesInput = z.infer<typeof GetSafetyCasePartiesInputSchema>;\n\n// ---------------------------------------------------------------------------\n// getTakeItDownRequestDetail — operator detail read for one public TAKE IT DOWN request.\n// ---------------------------------------------------------------------------\n\nexport const GetTakeItDownRequestDetailInputSchema = z\n .object({\n requestId: z.string().min(1),\n })\n .strict();\nexport type GetTakeItDownRequestDetailInput = z.infer<typeof GetTakeItDownRequestDetailInputSchema>;\n\n// ---------------------------------------------------------------------------\n// listRetainedEvidenceInventory — paginated retained-evidence inventory read.\n// ---------------------------------------------------------------------------\n\n/** Cursor for the retained-evidence inventory — the last row's `(createdAt, docId)`. */\nexport const RetainedEvidenceInventoryCursorSchema = z\n .object({ createdAt: z.number(), id: z.string().min(1) })\n .strict();\nexport type RetainedEvidenceInventoryCursor = z.infer<typeof RetainedEvidenceInventoryCursorSchema>;\n\nconst RETAINED_EVIDENCE_MAX_PAGE_SIZE = 200;\n\nexport const ListRetainedEvidenceInventoryInputSchema = z\n .object({\n pageSize: z.number().int().min(1).max(RETAINED_EVIDENCE_MAX_PAGE_SIZE).optional(),\n cursor: RetainedEvidenceInventoryCursorSchema.nullish(),\n /** Exact inventoryId lookup — returns just that row (or none), ignoring the cursor. */\n exactId: z.string().min(1).optional(),\n })\n .strict()\n .nullish();\nexport type ListRetainedEvidenceInventoryInput = z.infer<typeof ListRetainedEvidenceInventoryInputSchema>;\n\n// ---------------------------------------------------------------------------\n// ncmecOperatorCommands — NCMEC manual-portal completion path.\n// ---------------------------------------------------------------------------\n\nexport const RecordNcmecPortalReceiptArtifactInputSchema = z\n .object({\n caseId: z.string().min(1),\n submissionId: z.string().min(1),\n /** The key of an object already in the restricted evidence vault (verified via statObject). */\n evidenceVaultKey: z.string().min(1, 'An evidence vault object key is required.'),\n /** Optional operator description of what the artifact is (e.g. \"NCMEC portal screenshot\"). */\n description: z.string().min(1).max(MAX_SAFETY_ARTIFACT_DESCRIPTION_LENGTH).optional(),\n /** Explicit typed confirmation (interim control until the passkey profile lands). */\n confirmation: z.literal(NCMEC_PORTAL_RECEIPT_CONFIRMATION),\n })\n .strict();\nexport type RecordNcmecPortalReceiptArtifactInput = z.infer<\n typeof RecordNcmecPortalReceiptArtifactInputSchema\n>;\n\nexport const MarkNcmecPortalCompleteInputSchema = z\n .object({\n caseId: z.string().min(1),\n submissionId: z.string().min(1),\n /** [Q13/H-06] The ID of an existing NcmecPortalReceiptArtifactV1 record bound to this (caseId, submissionId). */\n artifactId: z.string().min(1, 'A valid portal-receipt artifact id is required.'),\n /** [Q13/H-06] The object generation recorded on the artifact at registration time (immutable-object peg). */\n artifactObjectGeneration: z.string().min(1, 'The artifact object generation is required.'),\n /** [Q13/H-06] The sha256 hex digest recorded on the artifact at registration time (content-integrity check). */\n artifactSha256: z.string().regex(/^[0-9a-f]{64}$/, 'artifactSha256 must be a 64-character hex string.'),\n /** Optional operator free-text note describing the portal confirmation. */\n proofText: z.string().min(1).max(MAX_NCMEC_PORTAL_PROOF_TEXT_LENGTH).optional(),\n /** The NCMEC-assigned report id — REQUIRED (it IS the proof; no \"filed, number pending\" grace). */\n ncmecReportId: z.string().min(1, 'The NCMEC report id is required to mark the report complete.'),\n /** Explicit typed confirmation (interim control until the passkey profile lands). */\n confirmation: z.literal(NCMEC_MANUAL_PORTAL_FILED_CONFIRMATION),\n })\n .strict();\nexport type MarkNcmecPortalCompleteInput = z.infer<typeof MarkNcmecPortalCompleteInputSchema>;\n\n// ---------------------------------------------------------------------------\n// operatorStepUp — app-level TOTP step-up (confirm / verify a 6-digit code).\n// ---------------------------------------------------------------------------\n\nexport const OperatorStepUpCodeInputSchema = z\n .object({\n code: z.string().trim().regex(/^\\d{6}$/u, 'Enter the 6-digit code.'),\n })\n .strict();\nexport type OperatorStepUpCodeInput = z.infer<typeof OperatorStepUpCodeInputSchema>;\n\n// ---------------------------------------------------------------------------\n// revealCaseEvidence — metadata→evidence reveal under reauth.\n// ---------------------------------------------------------------------------\n\nexport const RevealCaseEvidenceInputSchema = z\n .object({\n caseId: z.string().min(1),\n /** Explicit typed confirmation (interim control until the passkey profile lands). */\n confirmation: z.literal(REVEAL_CASE_EVIDENCE_CONFIRMATION),\n /** The operator's child-safety warning acknowledgement, carried so the backend can persist it\n * in the reveal audit trail. This schema serves ONLY the safety-console reveal-under-reauth\n * flow (its sibling `confirmation` literal gates the same surface), so the acknowledgement is a\n * required `true` — consistent with the existing explicit-confirmation style. Server-side\n * enforcement + audit persistence land app-side. */\n warningAcknowledged: z.literal(true),\n })\n .strict();\nexport type RevealCaseEvidenceInput = z.infer<typeof RevealCaseEvidenceInputSchema>;\n\n// ---------------------------------------------------------------------------\n// refetchProtectedCaseContext — operator manual re-fetch of protected chat context.\n// ---------------------------------------------------------------------------\n\nexport const RefetchProtectedCaseContextInputSchema = z\n .object({\n caseId: z.string().min(1),\n lane: z.enum(['csam', 'ncii']),\n })\n .strict();\nexport type RefetchProtectedCaseContextInput = z.infer<typeof RefetchProtectedCaseContextInputSchema>;\n\n// ---------------------------------------------------------------------------\n// preserveAsEvidence — general-purpose ADMIN \"Preserve as Evidence\" callable.\n// ---------------------------------------------------------------------------\n\n/**\n * A target to preserve, discriminated by surface. Non-strict members are carried faithfully\n * from the source callable. The id / path / ref bounds are opaque structural caps (not user\n * text), and the augmentation `factKind` REUSES the canonical evidence external-fact enum\n * (`SafetyEvidenceExternalFactKindSchema`) rather than re-declaring its members.\n */\nexport const PreserveTargetSchema = z.discriminatedUnion('targetKind', [\n z.object({\n targetKind: z.literal('media'),\n mediaAssetId: z.string().min(1).max(256),\n }),\n z.object({\n targetKind: z.literal('post'),\n postDocPath: z.string().min(1).max(1024),\n revision: z.number().int().nonnegative().optional(),\n }),\n z.object({\n targetKind: z.literal('profile'),\n uid: z.string().min(1).max(256),\n revision: z.number().int().nonnegative().optional(),\n }),\n z.object({\n targetKind: z.literal('chat'),\n channelId: z.string().min(1).max(256),\n messageSeqStart: z.number().int().nonnegative(),\n messageSeqEnd: z.number().int().nonnegative(),\n transcriptObjectRef: z.string().min(1).max(1024),\n attachmentItemIds: z.array(z.string().min(1)).max(256).optional(),\n }),\n]);\nexport type PreserveTarget = z.infer<typeof PreserveTargetSchema>;\n\nexport const PreserveAsEvidenceInputSchema = z\n .object({\n /** Attach to an existing case; absent → open a standalone preservation case. */\n caseId: z.string().min(1).max(256).optional(),\n target: PreserveTargetSchema,\n /** Operator note recorded on the case (internal). */\n reasonInternal: z.string().min(1).max(MAX_INTERNAL_REASON_LENGTH),\n /** Optional admin AUGMENTATION — extra externalFact refs preserved alongside the baseline. */\n augmentations: z\n .array(\n z.object({\n factKind: SafetyEvidenceExternalFactKindSchema,\n narrativeRef: z.string().min(1).max(1024),\n }),\n )\n .max(32)\n .optional(),\n })\n .strict();\nexport type PreserveAsEvidenceInput = z.infer<typeof PreserveAsEvidenceInputSchema>;\n\n// ---------------------------------------------------------------------------\n// recordNcmecPortalCorrection — record an operator's NCMEC manual-portal correction filing.\n// ---------------------------------------------------------------------------\n\nexport const RecordNcmecPortalCorrectionInputSchema = z\n .object({\n caseId: z.string().min(1),\n ncmecReportId: z.string().min(1),\n correctionFiledAt: z.number(),\n reason: z.string().min(1).max(MAX_INTERNAL_REASON_LENGTH),\n confirmation: z.literal(NCMEC_PORTAL_CORRECTION_CONFIRMATION),\n })\n .strict();\nexport type RecordNcmecPortalCorrectionInput = z.infer<typeof RecordNcmecPortalCorrectionInputSchema>;\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"social.js","sourceRoot":"","sources":["../../src/schemas/social.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"social.js","sourceRoot":"","sources":["../../src/schemas/social.ts"],"names":[],"mappings":"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","sourcesContent":["import { z } from 'zod';\nimport { MentionSchema, rejectDuplicateMentionPlaceholders } from '../media/atoms.js';\nimport { MAX_POST_LENGTH, MAX_MENTIONS } from '../constants/business.js';\n\nexport const LikeSquareStreetzPostInputSchema = z.object({\n postId: z.string().min(1),\n}).strict();\nexport type LikeSquareStreetzPostInput = z.infer<typeof LikeSquareStreetzPostInputSchema>;\n\nexport const UnlikeSquareStreetzPostInputSchema = z.object({\n postId: z.string().min(1),\n}).strict();\nexport type UnlikeSquareStreetzPostInput = z.infer<typeof UnlikeSquareStreetzPostInputSchema>;\n\n/** The entity kinds a user can follow. Subset of MentionType (commissions/auditions are not followable). */\nexport const FollowableTargetTypeSchema = z.enum(['user', 'workProject', 'workRealm']);\nexport type FollowableTargetType = z.infer<typeof FollowableTargetTypeSchema>;\n\nexport const FollowTargetInputSchema = z.object({\n targetType: FollowableTargetTypeSchema,\n targetId: z.string().min(1).max(128),\n}).strict();\nexport type FollowTargetInput = z.infer<typeof FollowTargetInputSchema>;\n\nexport const UnfollowTargetInputSchema = z.object({\n targetType: FollowableTargetTypeSchema,\n targetId: z.string().min(1).max(128),\n}).strict();\nexport type UnfollowTargetInput = z.infer<typeof UnfollowTargetInputSchema>;\n\nexport const AddToMentionHistoryInputSchema = z.object({\n mention: MentionSchema,\n}).strict();\nexport type AddToMentionHistoryInput = z.infer<typeof AddToMentionHistoryInputSchema>;\n\nexport const CreateSquareStreetzTextPostInputSchema = z.object({\n textContent: z.string().min(1).max(MAX_POST_LENGTH),\n mentions: z\n .array(MentionSchema)\n .max(MAX_MENTIONS)\n .superRefine(rejectDuplicateMentionPlaceholders)\n .optional(),\n}).strict();\nexport type CreateSquareStreetzTextPostInput = z.infer<typeof CreateSquareStreetzTextPostInputSchema>;\n\n// --- Authoritative mutation RESULTS -----------------------------------------\n// The no-optimistic-updates client patches these straight into its React Query\n// cache. Every field is something the callable's transaction ALREADY knows at\n// commit time — never a value that would force a new read. Result schemas are\n// deliberately NON-strict (server → client posture: the backend may append\n// fields without breaking older clients — same as SendGuildChatMessageResultSchema).\n// (The addToMentionHistory result lives in ../doc-schemas/social.ts — it composes\n// MentionHistoryItemSchema, and that module imports THIS one, so declaring it here\n// would be a module cycle. It is re-exported on ./schemas via schemas/index.ts.)\n\nexport const LikeSquareStreetzPostResultSchema = z.object({\n success: z.literal(true),\n postId: z.string().min(1),\n /** Final caller like-state after commit (an idempotent re-like stays true). */\n isLiked: z.literal(true),\n /** Authoritative post like count at commit — the like transaction reads the\n * post doc, so this is the committed count, not a client guess. */\n likeCount: z.number().int().nonnegative(),\n /** Post author uid — the liked post lives in the AUTHOR's post-list caches. */\n authorId: z.string().min(1),\n});\nexport type LikeSquareStreetzPostResult = z.infer<typeof LikeSquareStreetzPostResultSchema>;\n\nexport const UnlikeSquareStreetzPostResultSchema = z.object({\n success: z.literal(true),\n postId: z.string().min(1),\n isLiked: z.literal(false),\n likeCount: z.number().int().nonnegative(),\n authorId: z.string().min(1),\n});\nexport type UnlikeSquareStreetzPostResult = z.infer<typeof UnlikeSquareStreetzPostResultSchema>;\n\nexport const FollowTargetResultSchema = z.object({\n success: z.literal(true),\n targetType: FollowableTargetTypeSchema,\n targetId: z.string().min(1),\n /** Final caller follow-state after commit. NOTE: deliberately NO follower count —\n * the counter is a blind FieldValue.increment the transaction never reads. */\n isFollowing: z.literal(true),\n /** True when the edge already existed (idempotent re-follow). */\n alreadyFollowing: z.boolean(),\n});\nexport type FollowTargetResult = z.infer<typeof FollowTargetResultSchema>;\n\nexport const UnfollowTargetResultSchema = z.object({\n success: z.literal(true),\n targetType: FollowableTargetTypeSchema,\n targetId: z.string().min(1),\n isFollowing: z.literal(false),\n /** False when there was no edge to remove (idempotent unfollow). */\n wasFollowing: z.boolean(),\n});\nexport type UnfollowTargetResult = z.infer<typeof UnfollowTargetResultSchema>;\n\n\n\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stake-share-operation.js","sourceRoot":"","sources":["../../src/schemas/stake-share-operation.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"stake-share-operation.js","sourceRoot":"","sources":["../../src/schemas/stake-share-operation.ts"],"names":[],"mappings":"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","sourcesContent":["import { z } from 'zod';\nimport {\n workProjectIdSchema,\n userIdSchema,\n} from './atoms.js';\n\n// Mirrors the StakeShareOperation TS type in packages/ttt-core/src/types/work-project.ts.\n// Each branch is .strict() so unknown keys are a contract violation.\n//\n// NOTE: The original StakeShareOperation type had an optional `workProjectData: FullWorkProject`\n// field. It was dead: no call site in ttt-prod populated it and the\n// stake-share operation handler never read it. Removed during the Zod migration.\n//\n// Per-branch shape decisions:\n// - All branches accept optional `amount`, `user`, `sourceId` to match the\n// existing TS type. Business-logic checks (for example, \"add-pending requires\n// user OR sourceId\") live in stake-share-operations.ts, not in this schema.\n// - The accept-proposalArtisan operation has been removed; acceptance now flows\n// through guild-invite handling.\n\nconst userRefSchema = z.object({\n uid: userIdSchema,\n displayName: z.string().optional(),\n}).strict();\n\nexport const StakeShareOperationSchema = z.discriminatedUnion('type', [\n z.object({\n type: z.literal('add-pending'),\n amount: z.number().int().positive().optional(),\n user: userRefSchema.optional(),\n sourceId: z.string().min(1).optional(),\n }).strict(),\n z.object({\n type: z.literal('remove-pending'),\n amount: z.number().int().positive().optional(),\n user: userRefSchema.optional(),\n sourceId: z.string().min(1).optional(),\n }).strict(),\n z.object({\n type: z.literal('add-active'),\n amount: z.number().int().positive().optional(),\n user: userRefSchema.optional(),\n sourceId: z.string().min(1).optional(),\n }).strict(),\n z.object({\n type: z.literal('create-workProject'),\n amount: z.number().int().positive().optional(),\n user: userRefSchema.optional(),\n sourceId: z.string().min(1).optional(),\n }).strict(),\n z.object({\n type: z.literal('convert-invite'),\n amount: z.number().int().positive().optional(),\n user: userRefSchema.optional(),\n sourceId: z.string().min(1).optional(),\n }).strict(),\n // Member self-leave (leaveWorkProject). Pre-publish only; forfeits the leaver's\n // shares back to the pool. `user` is the leaver (server sets it to request.auth.uid).\n z.object({\n type: z.literal('depart'),\n user: userRefSchema,\n reason: z.literal('selfLeave'),\n }).strict(),\n]);\n\nexport type StakeShareOperation = z.infer<typeof StakeShareOperationSchema>;\nexport type StakeShareOperationType = StakeShareOperation['type'];\n\nexport const ManageWorkProjectStakeSharesInputSchema = z.object({\n workProjectId: workProjectIdSchema,\n operation: StakeShareOperationSchema,\n}).strict();\n\nexport type ManageWorkProjectStakeSharesInput = z.infer<typeof ManageWorkProjectStakeSharesInputSchema>;\n\n// PUBLIC STAKE-SHARE OPERATION SCHEMA\n//\n// The `manageWorkProjectStakeShares` callable is exposed to authenticated\n// artisans. Only `add-active` is safe to invoke from a public surface.\n//\n// Internal-only operation types:\n// - add-pending: inviteUserToGuild + runUpdateGuildInviteStakeShares\n// - remove-pending: handleInviteDeclined + handleInviteCancelled\n// - create-workProject: createWorkProject\n// - convert-invite: handleInviteAccepted\n// - depart: leaveWorkProject (member self-leave; forfeits shares to the pool)\n//\n// Internal callers run workProject-action auth (invite.send,\n// guildInvite.stakeShares.update, and related checks) before composing into\n// executeStakeShareOperation. Allowing these operation types publicly would\n// bypass that action layer.\n\nexport const PublicStakeShareOperationSchema = z.discriminatedUnion('type', [\n z.object({\n type: z.literal('add-active'),\n amount: z.number().int().positive().optional(),\n user: userRefSchema.optional(),\n sourceId: z.string().min(1).optional(),\n }).strict(),\n]);\n\nexport type PublicStakeShareOperation = z.infer<typeof PublicStakeShareOperationSchema>;\nexport type PublicStakeShareOperationType = PublicStakeShareOperation['type'];\n\nexport const PublicManageWorkProjectStakeSharesInputSchema = z.object({\n workProjectId: workProjectIdSchema,\n operation: PublicStakeShareOperationSchema,\n}).strict();\n\nexport type PublicManageWorkProjectStakeSharesInput = z.infer<typeof PublicManageWorkProjectStakeSharesInputSchema>;\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"uploads.js","sourceRoot":"","sources":["../../src/schemas/uploads.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,mFAAmF;AACnF,sFAAsF;AACtF,kFAAkF;AAClF,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC;KAC9C,MAAM,CAAC;IACN,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CAClC,CAAC;KACD,MAAM,EAAE,CAAC;AAGZ,gFAAgF;AAChF,6EAA6E;AAC7E,+EAA+E;AAC/E,6CAA6C;AAC7C,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC;KAC1C,MAAM,CAAC;IACN,eAAe,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC;CAC5D,CAAC;KACD,MAAM,EAAE,CAAC"}
|
|
1
|
+
{"version":3,"file":"uploads.js","sourceRoot":"","sources":["../../src/schemas/uploads.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,mFAAmF;AACnF,sFAAsF;AACtF,kFAAkF;AAClF,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC;KAC9C,MAAM,CAAC;IACN,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CAClC,CAAC;KACD,MAAM,EAAE,CAAC;AAGZ,gFAAgF;AAChF,6EAA6E;AAC7E,+EAA+E;AAC/E,6CAA6C;AAC7C,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC;KAC1C,MAAM,CAAC;IACN,eAAe,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC;CAC5D,CAAC;KACD,MAAM,EAAE,CAAC","sourcesContent":["import { z } from 'zod';\n\n// Clears a single finished (completed/failed/rejected) upload from the File-status\n// tray. The callable derives ownership + terminal-status from the stored pendingMedia\n// doc; this input only carries which one. Tray UX state — not a sensitive action.\nexport const ClearUploadActivityRequestSchema = z\n .object({\n pendingMediaId: z.string().min(1),\n })\n .strict();\nexport type ClearUploadActivityRequest = z.infer<typeof ClearUploadActivityRequestSchema>;\n\n// Marks terminal pendingMedia docs as seen in the File-status tray (parity with\n// notification `seenAt`). The frontend sends every currently-unseen terminal\n// pendingMediaId when the File-status tab opens; the callable owns the per-doc\n// ownership/terminal/already-seen filtering.\nexport const MarkUploadsSeenRequestSchema = z\n .object({\n pendingMediaIds: z.array(z.string().min(1)).min(1).max(200),\n })\n .strict();\nexport type MarkUploadsSeenRequest = z.infer<typeof MarkUploadsSeenRequestSchema>;\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"users.js","sourceRoot":"","sources":["../../src/schemas/users.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,cAAc,EACd,2BAA2B,EAC3B,0BAA0B,EAC1B,4BAA4B,GAC7B,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAEjE;gFACgF;AAChF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC;KAC/B,MAAM,EAAE;KACR,GAAG,CAAC,mBAAmB,CAAC;KACxB,GAAG,CAAC,mBAAmB,CAAC;KACxB,KAAK,CAAC,cAAc,CAAC,CAAC;AAEzB,MAAM,CAAC,MAAM,wCAAwC,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;AAG9E,qFAAqF;AACrF,oFAAoF;AACpF,kEAAkE;AAClE,8EAA8E;AAC9E,MAAM,CAAC,MAAM,4CAA4C,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;AAGlF,gGAAgG;AAChG,8EAA8E;AAC9E,mGAAmG;AACnG,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAAC,CAAC,MAAM,CAAC;IACtD,WAAW,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;IAC5B,+FAA+F;IAC/F,8FAA8F;IAC9F,kFAAkF;IAClF,gBAAgB,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;IACjC,6FAA6F;IAC7F,8FAA8F;IAC9F,+FAA+F;IAC/F,8FAA8F;IAC9F,6FAA6F;IAC7F,2EAA2E;IAC3E,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC;QACZ,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE;QACtB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;QACtC,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;KACrC,CAAC,CAAC,MAAM,EAAE;CACZ,CAAC,CAAC,MAAM,EAAE,CAAC;AAGZ,MAAM,CAAC,MAAM,qCAAqC,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;AAG3E,wFAAwF;AACxF,gGAAgG;AAChG,8FAA8F;AAC9F,6CAA6C;AAC7C,MAAM,CAAC,MAAM,mCAAmC,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1D,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,2BAA2B,CAAC;IAC3D,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC,QAAQ,EAAE;CAC/D,CAAC,CAAC,MAAM,EAAE,CAAC;AAGZ,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9C,WAAW,EAAE,iBAAiB;IAC9B,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC;QACnB,GAAG,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;QACpB,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;QACvB,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;QACrB,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;QACxB,KAAK,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;KACvB,CAAC,CAAC,MAAM,EAAE;CACZ,CAAC,CAAC,MAAM,EAAE,CAAC;AAGZ,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,MAAM,EAAE,YAAY;IACpB,MAAM,EAAE,uBAAuB;IAC/B,gFAAgF;IAChF,gFAAgF;IAChF,0EAA0E;IAC1E,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC,QAAQ,EAAE;CAC5E,CAAC,CAAC,MAAM,EAAE,CAAC;AAGZ,oFAAoF;AACpF,qFAAqF;AACrF,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC,CAAC,MAAM,CAAC;IACvD,MAAM,EAAE,YAAY;IACpB,mDAAmD;IACnD,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC,QAAQ,EAAE;CAC5E,CAAC,CAAC,MAAM,EAAE,CAAC;AAGZ,wFAAwF;AACxF,yEAAyE;AACzE,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC,MAAM,CAAC;IAClD,WAAW,EAAE,iBAAiB;CAC/B,CAAC,CAAC,MAAM,EAAE,CAAC;AAGZ,uFAAuF;AACvF,0FAA0F;AAC1F,oFAAoF;AACpF,MAAM,CAAC,MAAM,oCAAoC,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3D,WAAW,EAAE,iBAAiB;CAC/B,CAAC,CAAC,MAAM,EAAE,CAAC;AAGZ,sFAAsF;AACtF,wFAAwF;AACxF,iEAAiE;AACjE,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC,CAAC,MAAM,CAAC;IACvD,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC;QACZ,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE;QACtB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;QACtC,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;KACrC,CAAC,CAAC,MAAM,EAAE;CACZ,CAAC,CAAC,MAAM,EAAE,CAAC;AAGZ,uFAAuF;AACvF,wFAAwF;AACxF,yBAAyB;AACzB,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC,MAAM,CAAC;IACnD,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,4BAA4B,CAAC;CAClE,CAAC,CAAC,MAAM,EAAE,CAAC;AAGZ,yFAAyF;AACzF,uFAAuF;AACvF,0FAA0F;AAC1F,0FAA0F;AAC1F,4DAA4D;AAC5D,MAAM,CAAC,MAAM,iCAAiC,GAAG,CAAC,CAAC,MAAM,CAAC;IACxD,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,4BAA4B,CAAC;CAClE,CAAC,CAAC,MAAM,EAAE,CAAC"}
|
|
1
|
+
{"version":3,"file":"users.js","sourceRoot":"","sources":["../../src/schemas/users.ts"],"names":[],"mappings":"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","sourcesContent":["import { z } from 'zod';\nimport { userIdSchema } from './atoms.js';\nimport {\n USERNAME_MIN_LENGTH,\n USERNAME_MAX_LENGTH,\n USERNAME_REGEX,\n MAX_ARTISAN_LOCATION_LENGTH,\n MAX_INTERNAL_REASON_LENGTH,\n MAX_USER_SEARCH_QUERY_LENGTH,\n} from '../constants/business.js';\nimport { UserAccountStatusSchema } from '../doc-schemas/user.js';\n\n/** The ONE composed display-name field validator (length bounds + charset). Every\n * callable accepting a display name spreads this — never a re-composed copy. */\nexport const displayNameSchema = z\n .string()\n .min(USERNAME_MIN_LENGTH)\n .max(USERNAME_MAX_LENGTH)\n .regex(USERNAME_REGEX);\n\nexport const AcceptSquareStreetzAgreementsInputSchema = z.object({}).strict();\nexport type AcceptSquareStreetzAgreementsInput = z.infer<typeof AcceptSquareStreetzAgreementsInputSchema>;\n\n// One-time acknowledgement gate before a user may download Hall content for personal\n// offline use (final wording owned by the legal-and-content step). No payload — the\n// callable records the timestamp in the caller's privateData. See\n// docs/design/media-assets-and-protected-serving.md (Hall/Library downloads).\nexport const AcceptHallDownloadAcknowledgementInputSchema = z.object({}).strict();\nexport type AcceptHallDownloadAcknowledgementInput = z.infer<typeof AcceptHallDownloadAcknowledgementInputSchema>;\n\n// The become-creator dialog's \"I confirm I am 18 years of age or older\" checkbox must reach the\n// server: the callable rejects when absent and records the attestation on the\n// artisanCreator.grantedToUser audit event (immutable, timestamped, with IP/UA) so it is provable.\nexport const BecomeArtisanCreatorInputSchema = z.object({\n ageAttested: z.literal(true),\n // \"I confirm I am a person located in the United States\" — required for now (only U.S. persons\n // may become artisans). Mirrors ageAttested: the callable rejects when absent and records the\n // attestation timestamp (privateData.usPersonAttestedAt) + the grant audit event.\n usPersonAttested: z.literal(true),\n // [Q21.5 REVISED — DJ 2026-07-06] The artisan's date of birth — the ONLY point in the system\n // where a DOB is collected for persistence (registration/upgrade derive the bracket and store\n // nothing). The dialog copy tells the user this must be THEIR birthday: when the payout system\n // ships, it has to match their payout (KYC) identity. The callable re-derives 18+ server-side\n // from this value; an under-18 derivation rejects (failure audit, nothing stored). Stored as\n // privateData attestedDateOfBirth + attestedDobSource 'artisanOnboarding'.\n dob: z.object({\n year: z.number().int(),\n month: z.number().int().min(1).max(12),\n day: z.number().int().min(1).max(31),\n }).strict(),\n}).strict();\nexport type BecomeArtisanCreatorInput = z.infer<typeof BecomeArtisanCreatorInputSchema>;\n\nexport const MarkWaitingForNewsApprovalInputSchema = z.object({}).strict();\nexport type MarkWaitingForNewsApprovalInput = z.infer<typeof MarkWaitingForNewsApprovalInputSchema>;\n\n// Non-U.S. artisan-interest signup (the FCFS \"waitlist\" fields on privateData). Mirrors\n// MarkWaitingForNewsApproval but carries the applicant's country (+ optional region) so signups\n// can be opened by jurisdiction as each region's laws clear. The callable records it ONLY for\n// adult accounts (never a minor's location).\nexport const MarkNonUsArtisanInterestInputSchema = z.object({\n country: z.string().min(1).max(MAX_ARTISAN_LOCATION_LENGTH),\n region: z.string().max(MAX_ARTISAN_LOCATION_LENGTH).optional(),\n}).strict();\nexport type MarkNonUsArtisanInterestInput = z.infer<typeof MarkNonUsArtisanInterestInputSchema>;\n\nexport const RegisterUserInputSchema = z.object({\n displayName: displayNameSchema,\n agreements: z.object({\n age: z.literal(true),\n nudity: z.literal(true),\n meet: z.literal(true),\n cookies: z.literal(true),\n terms: z.literal(true),\n }).strict(),\n}).strict();\nexport type RegisterUserInput = z.infer<typeof RegisterUserInputSchema>;\n\nexport const SetUserStatusInputSchema = z.object({\n userId: userIdSchema,\n status: UserAccountStatusSchema,\n // Required by the callable when status is 'suspended' or 'banned' (shown to the\n // user in their restricted view and recorded on the audit event). Optional here\n // so reinstating to 'active' can omit it; the callable enforces presence.\n reason: z.string().trim().min(1).max(MAX_INTERNAL_REASON_LENGTH).optional(),\n}).strict();\nexport type SetUserStatusInput = z.infer<typeof SetUserStatusInputSchema>;\n\n// Admin forces an abusive display name off a user: the name is swapped to a neutral\n// placeholder, the old name is blocked from reuse, and the user must pick a new one.\nexport const ForceDisplayNameResetInputSchema = z.object({\n userId: userIdSchema,\n // Optional admin note recorded on the audit event.\n reason: z.string().trim().min(1).max(MAX_INTERNAL_REASON_LENGTH).optional(),\n}).strict();\nexport type ForceDisplayNameResetInput = z.infer<typeof ForceDisplayNameResetInputSchema>;\n\n// User completes a forced display-name reset by choosing a new name. Only honored while\n// the caller's userProfiles doc has `displayNameResetRequired === true`.\nexport const SetMyDisplayNameInputSchema = z.object({\n displayName: displayNameSchema,\n}).strict();\nexport type SetMyDisplayNameInput = z.infer<typeof SetMyDisplayNameInputSchema>;\n\n// Unauthenticated soft-check the register page runs BEFORE creating the Auth user so a\n// taken name never orphans an auth account. Mirrors the RegisterUser displayName contract\n// (same length + regex). The authoritative claim still happens inside registerUser.\nexport const CheckDisplayNameAvailableInputSchema = z.object({\n displayName: displayNameSchema,\n}).strict();\nexport type CheckDisplayNameAvailableInput = z.infer<typeof CheckDisplayNameAvailableInputSchema>;\n\n// Teen→adult upgrade: a transient DOB (never persisted) the callable re-derives adult\n// eligibility from server-side against a fresh attestation. Only the shape is validated\n// here; the age math + attestation binding live in the callable.\nexport const UpgradeAccountToAdultInputSchema = z.object({\n dob: z.object({\n year: z.number().int(),\n month: z.number().int().min(1).max(12),\n day: z.number().int().min(1).max(31),\n }).strict(),\n}).strict();\nexport type UpgradeAccountToAdultInput = z.infer<typeof UpgradeAccountToAdultInputSchema>;\n\n// Admin-only user lookup for the User Management view (prefix search on publicUsers by\n// displayName). Only the trimmed query string is validated here; authz (admin/jr-admin)\n// lives in the callable.\nexport const SearchPublicUsersInputSchema = z.object({\n query: z.string().trim().min(1).max(MAX_USER_SEARCH_QUERY_LENGTH),\n}).strict();\nexport type SearchPublicUsersInput = z.infer<typeof SearchPublicUsersInputSchema>;\n\n// Admin exact-account lookup (\"look up by email or uid\" in User Management): a solo full\n// admin resolves ONE account by its exact email, uid, or display name. The app detects\n// email-vs-uid-vs-name both client- and server-side, so there is ONE query field (mirrors\n// SearchPublicUsersInput's single trimmed-query shape + bound). Only the trimmed query is\n// validated here; authz (full admin) lives in the callable.\nexport const LookupUserByEmailOrUidInputSchema = z.object({\n query: z.string().trim().min(1).max(MAX_USER_SEARCH_QUERY_LENGTH),\n}).strict();\nexport type LookupUserByEmailOrUidInput = z.infer<typeof LookupUserByEmailOrUidInputSchema>;\n\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utility.js","sourceRoot":"","sources":["../../src/schemas/utility.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,qBAAqB,EACrB,yBAAyB,GAC1B,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,yBAAyB,EAAE,8BAA8B,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAErH,MAAM,CAAC,MAAM,kCAAkC,GAAG,CAAC,CAAC,MAAM,CAAC;IACzD,WAAW,EAAE,iBAAiB;CAC/B,CAAC,CAAC,MAAM,EAAE,CAAC;AAGZ,0FAA0F;AAC1F,0FAA0F;AAC1F,4FAA4F;AAC5F,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,gBAAgB,EAAE,YAAY,CAAC,CAAC,CAAC;AAG9F,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,kBAAkB,CAAC,YAAY,EAAE;IAC3E,CAAC,CAAC,MAAM,CAAC;QACP,UAAU,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC;QACjC,UAAU,EAAE,gBAAgB;KAC7B,CAAC,CAAC,MAAM,EAAE;IACX,CAAC,CAAC,MAAM,CAAC;QACP,UAAU,EAAE,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC;QACvC,UAAU,EAAE,gBAAgB;QAC5B,eAAe,EAAE,qBAAqB;KACvC,CAAC,CAAC,MAAM,EAAE;IACX,CAAC,CAAC,MAAM,CAAC;QACP,UAAU,EAAE,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC;QACnC,mBAAmB,EAAE,yBAAyB;KAC/C,CAAC,CAAC,MAAM,EAAE;CACZ,CAAC,CAAC;AAGH,+EAA+E;AAC/E,+EAA+E;AAC/E,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;AAGlE,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;AAGtE,MAAM,CAAC,MAAM,oCAAoC,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;AAG1E,MAAM,CAAC,MAAM,iCAAiC,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;AAGvE,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;AAGhE,+EAA+E;AAC/E,gFAAgF;AAChF,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;AAG9D,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;AAGhE,MAAM,CAAC,MAAM,iCAAiC,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;AAGvE,0FAA0F;AAC1F,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC;KAC5C,MAAM,CAAC;IACN,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;IAC3D,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;CAC/D,CAAC;KACD,MAAM,EAAE;KACR,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE;IACjE,OAAO,EAAE,6CAA6C;CACvD,CAAC,CAAC;AAGL,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAC,MAAM,CAAC;IACrD,WAAW,EAAE,iBAAiB;IAC9B,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,yBAAyB,CAAC;CAChE,CAAC,CAAC,MAAM,EAAE,CAAC;AAGZ,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChD,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC;IACpC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC;CACpF,CAAC,CAAC,MAAM,EAAE,CAAC;AAGZ,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAC,MAAM,CAAC;IACrD,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;CACnC,CAAC,CAAC,MAAM,EAAE,CAAC;AAGZ,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC,CAAC,MAAM,CAAC;IACvD,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC;CAC5C,CAAC,CAAC,MAAM,EAAE,CAAC;AAGZ,yFAAyF;AACzF,uCAAuC;AACvC,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IACjD,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,qBAAqB,CAAC;CAClD,CAAC,CAAC;AAGH,8EAA8E;AAE9E,MAAM,CAAC,MAAM,iCAAiC,GAAG,CAAC,CAAC,MAAM,CAAC;IACxD,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;CACzB,CAAC,CAAC;AAGH,0FAA0F;AAC1F,wFAAwF;AACxF,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAAC,CAAC,MAAM,CAAC;IACtD,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;IACxB,WAAW,EAAE,iBAAiB;IAC9B,iDAAiD;IACjD,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;IAClC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;IACtB;iGAC6F;IAC7F,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;CAC3C,CAAC,CAAC;AAGH,yFAAyF;AACzF,wFAAwF;AACxF,MAAM,CAAC,MAAM,mCAAmC,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1D,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;IACxB,WAAW,EAAE,iBAAiB;IAC9B,iEAAiE;IACjE,cAAc,EAAE,CAAC,CAAC,OAAO,EAAE;IAC3B;iGAC6F;IAC7F,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;CAC3C,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"utility.js","sourceRoot":"","sources":["../../src/schemas/utility.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,qBAAqB,EACrB,yBAAyB,GAC1B,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,yBAAyB,EAAE,8BAA8B,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAErH,MAAM,CAAC,MAAM,kCAAkC,GAAG,CAAC,CAAC,MAAM,CAAC;IACzD,WAAW,EAAE,iBAAiB;CAC/B,CAAC,CAAC,MAAM,EAAE,CAAC;AAGZ,0FAA0F;AAC1F,0FAA0F;AAC1F,4FAA4F;AAC5F,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,gBAAgB,EAAE,YAAY,CAAC,CAAC,CAAC;AAG9F,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,kBAAkB,CAAC,YAAY,EAAE;IAC3E,CAAC,CAAC,MAAM,CAAC;QACP,UAAU,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC;QACjC,UAAU,EAAE,gBAAgB;KAC7B,CAAC,CAAC,MAAM,EAAE;IACX,CAAC,CAAC,MAAM,CAAC;QACP,UAAU,EAAE,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC;QACvC,UAAU,EAAE,gBAAgB;QAC5B,eAAe,EAAE,qBAAqB;KACvC,CAAC,CAAC,MAAM,EAAE;IACX,CAAC,CAAC,MAAM,CAAC;QACP,UAAU,EAAE,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC;QACnC,mBAAmB,EAAE,yBAAyB;KAC/C,CAAC,CAAC,MAAM,EAAE;CACZ,CAAC,CAAC;AAGH,+EAA+E;AAC/E,+EAA+E;AAC/E,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;AAGlE,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;AAGtE,MAAM,CAAC,MAAM,oCAAoC,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;AAG1E,MAAM,CAAC,MAAM,iCAAiC,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;AAGvE,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;AAGhE,+EAA+E;AAC/E,gFAAgF;AAChF,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;AAG9D,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;AAGhE,MAAM,CAAC,MAAM,iCAAiC,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;AAGvE,0FAA0F;AAC1F,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC;KAC5C,MAAM,CAAC;IACN,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;IAC3D,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;CAC/D,CAAC;KACD,MAAM,EAAE;KACR,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE;IACjE,OAAO,EAAE,6CAA6C;CACvD,CAAC,CAAC;AAGL,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAC,MAAM,CAAC;IACrD,WAAW,EAAE,iBAAiB;IAC9B,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,yBAAyB,CAAC;CAChE,CAAC,CAAC,MAAM,EAAE,CAAC;AAGZ,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChD,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC;IACpC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC;CACpF,CAAC,CAAC,MAAM,EAAE,CAAC;AAGZ,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAC,MAAM,CAAC;IACrD,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;CACnC,CAAC,CAAC,MAAM,EAAE,CAAC;AAGZ,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC,CAAC,MAAM,CAAC;IACvD,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC;CAC5C,CAAC,CAAC,MAAM,EAAE,CAAC;AAGZ,yFAAyF;AACzF,uCAAuC;AACvC,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IACjD,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,qBAAqB,CAAC;CAClD,CAAC,CAAC;AAGH,8EAA8E;AAE9E,MAAM,CAAC,MAAM,iCAAiC,GAAG,CAAC,CAAC,MAAM,CAAC;IACxD,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;CACzB,CAAC,CAAC;AAGH,0FAA0F;AAC1F,wFAAwF;AACxF,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAAC,CAAC,MAAM,CAAC;IACtD,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;IACxB,WAAW,EAAE,iBAAiB;IAC9B,iDAAiD;IACjD,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;IAClC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;IACtB;iGAC6F;IAC7F,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;CAC3C,CAAC,CAAC;AAGH,yFAAyF;AACzF,wFAAwF;AACxF,MAAM,CAAC,MAAM,mCAAmC,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1D,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;IACxB,WAAW,EAAE,iBAAiB;IAC9B,iEAAiE;IACjE,cAAc,EAAE,CAAC,CAAC,OAAO,EAAE;IAC3B;iGAC6F;IAC7F,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;CAC3C,CAAC,CAAC","sourcesContent":["import { z } from 'zod';\nimport {\n violationIdSchema,\n auditionIdSchema,\n auditionEntryIdSchema,\n commissionListingIdSchema,\n} from './atoms.js';\nimport { MAX_APPEAL_MESSAGE_LENGTH, MAX_FEEDBACK_SUGGESTION_LENGTH, FEEDBACK_TYPES } from '../constants/business.js';\n\nexport const AcceptViolationDecisionInputSchema = z.object({\n violationId: violationIdSchema,\n}).strict();\nexport type AcceptViolationDecisionInput = z.infer<typeof AcceptViolationDecisionInputSchema>;\n\n// Share-target types the short-link system can point at. New system entities (hall items,\n// etc.) slot in by adding a `targetType` literal + its own union member below — no rework\n// of the existing members. Each member carries exactly the id(s) its destination URL needs.\nexport const ShortLinkTargetTypeSchema = z.enum(['audition', 'audition-entry', 'commission']);\nexport type ShortLinkTargetType = z.infer<typeof ShortLinkTargetTypeSchema>;\n\nexport const CreateShortLinkInputSchema = z.discriminatedUnion('targetType', [\n z.object({\n targetType: z.literal('audition'),\n auditionId: auditionIdSchema,\n }).strict(),\n z.object({\n targetType: z.literal('audition-entry'),\n auditionId: auditionIdSchema,\n auditionEntryId: auditionEntryIdSchema,\n }).strict(),\n z.object({\n targetType: z.literal('commission'),\n commissionListingId: commissionListingIdSchema,\n }).strict(),\n]);\nexport type CreateShortLinkInput = z.infer<typeof CreateShortLinkInputSchema>;\n\n// No-input seed callables (Ready for Launch tab). Each prepopulates one system\n// dataset from a canonical backend constant; the input is intentionally empty.\nexport const SeedProfanityListInputSchema = z.object({}).strict();\nexport type SeedProfanityListInput = z.infer<typeof SeedProfanityListInputSchema>;\n\nexport const SeedReservedUsernamesInputSchema = z.object({}).strict();\nexport type SeedReservedUsernamesInput = z.infer<typeof SeedReservedUsernamesInputSchema>;\n\nexport const SeedBlockedFranchiseNamesInputSchema = z.object({}).strict();\nexport type SeedBlockedFranchiseNamesInput = z.infer<typeof SeedBlockedFranchiseNamesInputSchema>;\n\nexport const SeedRulesAndAgreementsInputSchema = z.object({}).strict();\nexport type SeedRulesAndAgreementsInput = z.infer<typeof SeedRulesAndAgreementsInputSchema>;\n\nexport const SeedFuturePlansInputSchema = z.object({}).strict();\nexport type SeedFuturePlansInput = z.infer<typeof SeedFuturePlansInputSchema>;\n\n// Content-pages migration (DJ ruling 2026-07-06): seed callables for the three\n// editable content-page singletons (strict seed-if-empty — doc exists ⇒ no-op).\nexport const SeedTermsPageInputSchema = z.object({}).strict();\nexport type SeedTermsPageInput = z.infer<typeof SeedTermsPageInputSchema>;\n\nexport const SeedPrivacyPageInputSchema = z.object({}).strict();\nexport type SeedPrivacyPageInput = z.infer<typeof SeedPrivacyPageInputSchema>;\n\nexport const SeedTakeItDownPageCopyInputSchema = z.object({}).strict();\nexport type SeedTakeItDownPageCopyInput = z.infer<typeof SeedTakeItDownPageCopyInputSchema>;\n\n/** Admin add/remove words on the self-owned curated profanity list (no external sync). */\nexport const CurateProfanityListInputSchema = z\n .object({\n add: z.array(z.string().min(1).max(64)).max(500).optional(),\n remove: z.array(z.string().min(1).max(64)).max(500).optional(),\n })\n .strict()\n .refine((v) => (v.add?.length ?? 0) + (v.remove?.length ?? 0) > 0, {\n message: 'Provide at least one word to add or remove.',\n });\nexport type CurateProfanityListInput = z.infer<typeof CurateProfanityListInputSchema>;\n\nexport const SubmitContentAppealInputSchema = z.object({\n violationId: violationIdSchema,\n appealMessage: z.string().min(1).max(MAX_APPEAL_MESSAGE_LENGTH),\n}).strict();\nexport type SubmitContentAppealInput = z.infer<typeof SubmitContentAppealInputSchema>;\n\nexport const SubmitFeedbackInputSchema = z.object({\n feedbackType: z.enum(FEEDBACK_TYPES),\n suggestion: z.string().min(1).max(MAX_FEEDBACK_SUGGESTION_LENGTH).regex(/^[a-z]+$/),\n}).strict();\nexport type SubmitFeedbackInput = z.infer<typeof SubmitFeedbackInputSchema>;\n\nexport const TrackShortLinkClickInputSchema = z.object({\n shortId: z.string().min(1).max(64),\n}).strict();\nexport type TrackShortLinkClickInput = z.infer<typeof TrackShortLinkClickInputSchema>;\n\nexport const MarkAdminDispatchReadInputSchema = z.object({\n adminDispatchId: z.string().min(1).max(128),\n}).strict();\nexport type MarkAdminDispatchReadInput = z.infer<typeof MarkAdminDispatchReadInputSchema>;\n\n// Admin/jr-admin deletes a short link (`deleteShortLink`). Non-strict posture is carried\n// faithfully from the source callable.\nexport const DeleteShortLinkInputSchema = z.object({\n shortId: z.string().min(1, 'shortId is required'),\n});\nexport type DeleteShortLinkInput = z.infer<typeof DeleteShortLinkInputSchema>;\n\n// --- Authoritative mutation RESULTS (non-strict server → client posture) ---\n\nexport const MarkAdminDispatchReadResultSchema = z.object({\n success: z.literal(true),\n});\nexport type MarkAdminDispatchReadResult = z.infer<typeof MarkAdminDispatchReadResultSchema>;\n\n// submitContentAppeal — the transaction sets appealStatus 'pending' + appealedAt = now on\n// the violation; both are known at commit and let the client patch its violations list.\nexport const SubmitContentAppealResultSchema = z.object({\n success: z.literal(true),\n violationId: violationIdSchema,\n /** The violation's appeal state after commit. */\n appealStatus: z.literal('pending'),\n appealedAt: z.number(),\n /** Operation-receipt audit id — the `content.appealSubmitted` event written in the same\n * transaction. Optional/additive; the domain id (`violationId`) is already carried above. */\n auditEventId: z.string().min(1).optional(),\n});\nexport type SubmitContentAppealResult = z.infer<typeof SubmitContentAppealResultSchema>;\n\n// acceptViolationDecision — the violation record (and its pendingMedia/archive docs) are\n// removed at commit; the client drops the row from its violation + pendingMedia caches.\nexport const AcceptViolationDecisionResultSchema = z.object({\n success: z.literal(true),\n violationId: violationIdSchema,\n /** True when the record was already gone (idempotent accept). */\n alreadyRemoved: z.boolean(),\n /** Operation-receipt audit id — the `content.violationAccepted` event written in the same\n * transaction. Optional/additive; the domain id (`violationId`) is already carried above. */\n auditEventId: z.string().min(1).optional(),\n});\nexport type AcceptViolationDecisionResult = z.infer<typeof AcceptViolationDecisionResultSchema>;\n\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"voting.js","sourceRoot":"","sources":["../../src/schemas/voting.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAErE,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAAC,CAAC,MAAM,CAAC;IACtD,UAAU,EAAE,gBAAgB;IAC5B,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC;QAChB,eAAe,EAAE,qBAAqB;KACvC,CAAC,CAAC,MAAM,EAAE;IACX,2FAA2F;IAC3F,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;CAChD,CAAC,CAAC,MAAM,EAAE,CAAC;AAGZ;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC,CAAC,MAAM,CAAC;IACvD,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;IACxB,UAAU,EAAE,gBAAgB;IAC5B,gDAAgD;IAChD,eAAe,EAAE,qBAAqB;IACtC,iFAAiF;IACjF,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;IACxB,iFAAiF;IACjF,YAAY,EAAE,CAAC,CAAC,OAAO,EAAE;IACzB,+CAA+C;IAC/C,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE;IACzC,sFAAsF;IACtF,uBAAuB,EAAE,qBAAqB,CAAC,QAAQ,EAAE;IACzD;2FACuF;IACvF,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE;CAC7D,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"voting.js","sourceRoot":"","sources":["../../src/schemas/voting.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAErE,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAAC,CAAC,MAAM,CAAC;IACtD,UAAU,EAAE,gBAAgB;IAC5B,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC;QAChB,eAAe,EAAE,qBAAqB;KACvC,CAAC,CAAC,MAAM,EAAE;IACX,2FAA2F;IAC3F,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;CAChD,CAAC,CAAC,MAAM,EAAE,CAAC;AAGZ;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC,CAAC,MAAM,CAAC;IACvD,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;IACxB,UAAU,EAAE,gBAAgB;IAC5B,gDAAgD;IAChD,eAAe,EAAE,qBAAqB;IACtC,iFAAiF;IACjF,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;IACxB,iFAAiF;IACjF,YAAY,EAAE,CAAC,CAAC,OAAO,EAAE;IACzB,+CAA+C;IAC/C,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE;IACzC,sFAAsF;IACtF,uBAAuB,EAAE,qBAAqB,CAAC,QAAQ,EAAE;IACzD;2FACuF;IACvF,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE;CAC7D,CAAC,CAAC","sourcesContent":["import { z } from 'zod';\nimport { auditionIdSchema, auditionEntryIdSchema } from './atoms.js';\n\nexport const VoteForAuditionEntryInputSchema = z.object({\n auditionId: auditionIdSchema,\n newVote: z.object({\n auditionEntryId: auditionEntryIdSchema,\n }).strict(),\n // Accepted for backwards compatibility but ignored server-side; see runtime comment below.\n currentVoteId: z.string().nullable().optional(),\n}).strict();\nexport type VoteForAuditionEntryInput = z.infer<typeof VoteForAuditionEntryInputSchema>;\n\n/**\n * Authoritative result of voteForAuditionEntry — the committed final vote state the\n * transaction already knows (it READS both entry docs: the new entry for the\n * existence/hidden checks, and on a vote switch the old entry for the clamped\n * decrement — so both committed counts cost no extra read; the like/unlike precedent).\n *\n * This callable only CASTS or MOVES a vote — there is no unvote path (the input\n * requires `newVote.auditionEntryId`; `currentVoteId` is ignored server-side), so\n * `isVoted` is always true.\n *\n * Path semantics:\n * - First vote: `alreadyVoted: false`, `voteCount` = read count + 1,\n * `previousAuditionEntryId: null`, no `previousVoteCount`.\n * - Vote switch: `alreadyVoted: false`, `voteCount` = read count + 1,\n * `previousAuditionEntryId` = the entry the vote moved off; `previousVoteCount` =\n * its clamped post-decrement count — ABSENT when that entry no longer exists\n * (deleted entries skip the decrement).\n * - Idempotent no-op (already voting for this entry): `alreadyVoted: true`,\n * `voteCount` = the UNCHANGED read count, `previousAuditionEntryId: null`.\n *\n * Non-strict (server → client result posture).\n */\nexport const VoteForAuditionEntryResultSchema = z.object({\n success: z.literal(true),\n auditionId: auditionIdSchema,\n /** The entry the caller's vote now rests on. */\n auditionEntryId: auditionEntryIdSchema,\n /** Final caller vote-state — always true; this callable never removes a vote. */\n isVoted: z.literal(true),\n /** True when the caller was already voting for this entry (idempotent no-op). */\n alreadyVoted: z.boolean(),\n /** Committed vote count of the voted entry. */\n voteCount: z.number().int().nonnegative(),\n /** Entry the vote moved OFF on a switch; null on a first vote or idempotent no-op. */\n previousAuditionEntryId: auditionEntryIdSchema.nullable(),\n /** Committed post-decrement count of the previous entry — absent when\n * previousAuditionEntryId is null or that entry was deleted (no decrement applied). */\n previousVoteCount: z.number().int().nonnegative().optional(),\n});\nexport type VoteForAuditionEntryResult = z.infer<typeof VoteForAuditionEntryResultSchema>;\n\n\n"]}
|