@ttt-productions/ttt-core 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/constants/business.d.ts +26 -0
- package/dist/constants/business.d.ts.map +1 -0
- package/dist/constants/business.js +29 -0
- package/dist/constants/business.js.map +1 -0
- package/dist/constants/index.d.ts +3 -0
- package/dist/constants/index.d.ts.map +1 -0
- package/dist/constants/index.js +3 -0
- package/dist/constants/index.js.map +1 -0
- package/dist/constants/moderation.d.ts +12 -0
- package/dist/constants/moderation.d.ts.map +1 -0
- package/dist/constants/moderation.js +13 -0
- package/dist/constants/moderation.js.map +1 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -0
- package/dist/paths/collection-groups.d.ts +16 -0
- package/dist/paths/collection-groups.d.ts.map +1 -0
- package/dist/paths/collection-groups.js +21 -0
- package/dist/paths/collection-groups.js.map +1 -0
- package/dist/paths/collection-refs.d.ts +24 -0
- package/dist/paths/collection-refs.d.ts.map +1 -0
- package/dist/paths/collection-refs.js +35 -0
- package/dist/paths/collection-refs.js.map +1 -0
- package/dist/paths/collections.d.ts +102 -0
- package/dist/paths/collections.d.ts.map +1 -0
- package/dist/paths/collections.js +116 -0
- package/dist/paths/collections.js.map +1 -0
- package/dist/paths/index.d.ts +6 -0
- package/dist/paths/index.d.ts.map +1 -0
- package/dist/paths/index.js +6 -0
- package/dist/paths/index.js.map +1 -0
- package/dist/paths/path-builders.d.ts +60 -0
- package/dist/paths/path-builders.d.ts.map +1 -0
- package/dist/paths/path-builders.js +76 -0
- package/dist/paths/path-builders.js.map +1 -0
- package/dist/paths/utils.d.ts +2 -0
- package/dist/paths/utils.d.ts.map +1 -0
- package/dist/paths/utils.js +7 -0
- package/dist/paths/utils.js.map +1 -0
- package/dist/types/admin.d.ts +54 -0
- package/dist/types/admin.d.ts.map +1 -0
- package/dist/types/admin.js +3 -0
- package/dist/types/admin.js.map +1 -0
- package/dist/types/content.d.ts +216 -0
- package/dist/types/content.d.ts.map +1 -0
- package/dist/types/content.js +5 -0
- package/dist/types/content.js.map +1 -0
- package/dist/types/index.d.ts +9 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +9 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/jobs.d.ts +71 -0
- package/dist/types/jobs.d.ts.map +1 -0
- package/dist/types/jobs.js +3 -0
- package/dist/types/jobs.js.map +1 -0
- package/dist/types/messaging.d.ts +99 -0
- package/dist/types/messaging.d.ts.map +1 -0
- package/dist/types/messaging.js +3 -0
- package/dist/types/messaging.js.map +1 -0
- package/dist/types/moderation.d.ts +72 -0
- package/dist/types/moderation.d.ts.map +1 -0
- package/dist/types/moderation.js +3 -0
- package/dist/types/moderation.js.map +1 -0
- package/dist/types/project.d.ts +110 -0
- package/dist/types/project.d.ts.map +1 -0
- package/dist/types/project.js +3 -0
- package/dist/types/project.js.map +1 -0
- package/dist/types/social.d.ts +72 -0
- package/dist/types/social.d.ts.map +1 -0
- package/dist/types/social.js +3 -0
- package/dist/types/social.js.map +1 -0
- package/dist/types/user.d.ts +65 -0
- package/dist/types/user.d.ts.map +1 -0
- package/dist/types/user.js +3 -0
- package/dist/types/user.js.map +1 -0
- package/package.json +47 -0
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/** The absolute maximum number of shares a project can have. */
|
|
2
|
+
export declare const MAX_PROJECT_SHARES = 1000;
|
|
3
|
+
/** The maximum character length for a Streetz post created on behalf of a project. */
|
|
4
|
+
export declare const MAX_STREETZ_DESCRIPTION_LENGTH = 150;
|
|
5
|
+
export declare const TASK_PRIORITY: {
|
|
6
|
+
readonly CRITICAL: 4;
|
|
7
|
+
readonly HIGH: 3;
|
|
8
|
+
readonly NORMAL: 2;
|
|
9
|
+
readonly LOW: 1;
|
|
10
|
+
};
|
|
11
|
+
export type TaskPriorityLevel = (typeof TASK_PRIORITY)[keyof typeof TASK_PRIORITY];
|
|
12
|
+
export declare const TASK_PRIORITY_LABELS: {
|
|
13
|
+
readonly 4: "CRITICAL";
|
|
14
|
+
readonly 3: "HIGH";
|
|
15
|
+
readonly 2: "NORMAL";
|
|
16
|
+
readonly 1: "LOW";
|
|
17
|
+
};
|
|
18
|
+
/** The length of the generated ID for short links. */
|
|
19
|
+
export declare const SHORT_LINK_LENGTH = 6;
|
|
20
|
+
/** The maximum number of attempts to generate a unique short link ID before failing. */
|
|
21
|
+
export declare const SHORT_LINK_MAX_ATTEMPTS = 5;
|
|
22
|
+
/** Character set for short link IDs. Excludes ambiguous characters (0, O, l, 1, I). */
|
|
23
|
+
export declare const SHORT_LINK_CHARS = "ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnpqrstuvwxyz23456789";
|
|
24
|
+
/** Maximum operations in a single Firestore write batch. */
|
|
25
|
+
export declare const FIRESTORE_BATCH_LIMIT = 500;
|
|
26
|
+
//# sourceMappingURL=business.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"business.d.ts","sourceRoot":"","sources":["../../src/constants/business.ts"],"names":[],"mappings":"AAEA,gEAAgE;AAChE,eAAO,MAAM,kBAAkB,OAAO,CAAC;AAEvC,sFAAsF;AACtF,eAAO,MAAM,8BAA8B,MAAM,CAAC;AAIlD,eAAO,MAAM,aAAa;;;;;CAKhB,CAAC;AAEX,MAAM,MAAM,iBAAiB,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,OAAO,aAAa,CAAC,CAAC;AAEnF,eAAO,MAAM,oBAAoB;;;;;CAKvB,CAAC;AAIX,sDAAsD;AACtD,eAAO,MAAM,iBAAiB,IAAI,CAAC;AAEnC,wFAAwF;AACxF,eAAO,MAAM,uBAAuB,IAAI,CAAC;AAEzC,uFAAuF;AACvF,eAAO,MAAM,gBAAgB,6DAA6D,CAAC;AAI3F,4DAA4D;AAC5D,eAAO,MAAM,qBAAqB,MAAM,CAAC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
// Business rule constants shared between frontend and backend
|
|
2
|
+
/** The absolute maximum number of shares a project can have. */
|
|
3
|
+
export const MAX_PROJECT_SHARES = 1000;
|
|
4
|
+
/** The maximum character length for a Streetz post created on behalf of a project. */
|
|
5
|
+
export const MAX_STREETZ_DESCRIPTION_LENGTH = 150;
|
|
6
|
+
// --- Admin Task Priority System ---
|
|
7
|
+
export const TASK_PRIORITY = {
|
|
8
|
+
CRITICAL: 4,
|
|
9
|
+
HIGH: 3,
|
|
10
|
+
NORMAL: 2,
|
|
11
|
+
LOW: 1,
|
|
12
|
+
};
|
|
13
|
+
export const TASK_PRIORITY_LABELS = {
|
|
14
|
+
4: 'CRITICAL',
|
|
15
|
+
3: 'HIGH',
|
|
16
|
+
2: 'NORMAL',
|
|
17
|
+
1: 'LOW',
|
|
18
|
+
};
|
|
19
|
+
// --- Short Links ---
|
|
20
|
+
/** The length of the generated ID for short links. */
|
|
21
|
+
export const SHORT_LINK_LENGTH = 6;
|
|
22
|
+
/** The maximum number of attempts to generate a unique short link ID before failing. */
|
|
23
|
+
export const SHORT_LINK_MAX_ATTEMPTS = 5;
|
|
24
|
+
/** Character set for short link IDs. Excludes ambiguous characters (0, O, l, 1, I). */
|
|
25
|
+
export const SHORT_LINK_CHARS = 'ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnpqrstuvwxyz23456789';
|
|
26
|
+
// --- Firestore Limits ---
|
|
27
|
+
/** Maximum operations in a single Firestore write batch. */
|
|
28
|
+
export const FIRESTORE_BATCH_LIMIT = 500;
|
|
29
|
+
//# sourceMappingURL=business.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"business.js","sourceRoot":"","sources":["../../src/constants/business.ts"],"names":[],"mappings":"AAAA,8DAA8D;AAE9D,gEAAgE;AAChE,MAAM,CAAC,MAAM,kBAAkB,GAAG,IAAI,CAAC;AAEvC,sFAAsF;AACtF,MAAM,CAAC,MAAM,8BAA8B,GAAG,GAAG,CAAC;AAElD,qCAAqC;AAErC,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,QAAQ,EAAE,CAAC;IACX,IAAI,EAAE,CAAC;IACP,MAAM,EAAE,CAAC;IACT,GAAG,EAAE,CAAC;CACE,CAAC;AAIX,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,CAAC,EAAE,UAAU;IACb,CAAC,EAAE,MAAM;IACT,CAAC,EAAE,QAAQ;IACX,CAAC,EAAE,KAAK;CACA,CAAC;AAEX,sBAAsB;AAEtB,sDAAsD;AACtD,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC;AAEnC,wFAAwF;AACxF,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC;AAEzC,uFAAuF;AACvF,MAAM,CAAC,MAAM,gBAAgB,GAAG,0DAA0D,CAAC;AAE3F,2BAA2B;AAE3B,4DAA4D;AAC5D,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAG,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/constants/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/constants/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/** Perspective API rejection thresholds. Scores above these trigger rejection. */
|
|
2
|
+
export declare const PERSPECTIVE_THRESHOLDS: {
|
|
3
|
+
readonly severeToxicity: 0.7;
|
|
4
|
+
readonly identityAttack: 0.7;
|
|
5
|
+
readonly threat: 0.7;
|
|
6
|
+
readonly toxicity: 0.85;
|
|
7
|
+
};
|
|
8
|
+
/** Cloud Vision SafeSearch likelihood values that trigger content rejection. */
|
|
9
|
+
export declare const REJECTION_LIKELIHOODS: Set<string>;
|
|
10
|
+
/** Minimum character length for text to be sent to the moderation service. */
|
|
11
|
+
export declare const TEXT_MODERATION_MIN_LENGTH = 3;
|
|
12
|
+
//# sourceMappingURL=moderation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"moderation.d.ts","sourceRoot":"","sources":["../../src/constants/moderation.ts"],"names":[],"mappings":"AAEA,kFAAkF;AAClF,eAAO,MAAM,sBAAsB;;;;;CAKzB,CAAC;AAEX,gFAAgF;AAChF,eAAO,MAAM,qBAAqB,aAAqC,CAAC;AAExE,8EAA8E;AAC9E,eAAO,MAAM,0BAA0B,IAAI,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
// Content moderation constants shared between frontend and backend
|
|
2
|
+
/** Perspective API rejection thresholds. Scores above these trigger rejection. */
|
|
3
|
+
export const PERSPECTIVE_THRESHOLDS = {
|
|
4
|
+
severeToxicity: 0.7,
|
|
5
|
+
identityAttack: 0.7,
|
|
6
|
+
threat: 0.7,
|
|
7
|
+
toxicity: 0.85,
|
|
8
|
+
};
|
|
9
|
+
/** Cloud Vision SafeSearch likelihood values that trigger content rejection. */
|
|
10
|
+
export const REJECTION_LIKELIHOODS = new Set(['LIKELY', 'VERY_LIKELY']);
|
|
11
|
+
/** Minimum character length for text to be sent to the moderation service. */
|
|
12
|
+
export const TEXT_MODERATION_MIN_LENGTH = 3;
|
|
13
|
+
//# sourceMappingURL=moderation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"moderation.js","sourceRoot":"","sources":["../../src/constants/moderation.ts"],"names":[],"mappings":"AAAA,mEAAmE;AAEnE,kFAAkF;AAClF,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACpC,cAAc,EAAE,GAAG;IACnB,cAAc,EAAE,GAAG;IACnB,MAAM,EAAE,GAAG;IACX,QAAQ,EAAE,IAAI;CACN,CAAC;AAEX,gFAAgF;AAChF,MAAM,CAAC,MAAM,qBAAqB,GAAG,IAAI,GAAG,CAAC,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC;AAExE,8EAA8E;AAC9E,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export declare const COLLECTION_GROUPS: {
|
|
2
|
+
readonly PROFILE_SKILLS: "profileSkills";
|
|
3
|
+
readonly SOCIAL_POSTS: "socialPosts";
|
|
4
|
+
readonly LIBRARY_ITEMS: "libraryItems";
|
|
5
|
+
readonly TALE_CHAPTERS: "taleChapters";
|
|
6
|
+
readonly TUNE_SONGS: "tuneSongs";
|
|
7
|
+
readonly TV_SHOWS: "tvShows";
|
|
8
|
+
readonly CHANNEL_MESSAGES: "channelMessages";
|
|
9
|
+
readonly APPLICATION_REPLIES: "applicationReplies";
|
|
10
|
+
readonly SUBMITTED_REPLIES: "submittedReplies";
|
|
11
|
+
readonly CONVERSATION_MESSAGES: "conversationMessages";
|
|
12
|
+
readonly INVITE_MESSAGES: "inviteMessages";
|
|
13
|
+
readonly TAGGED_SKILLS: "taggedSkills";
|
|
14
|
+
readonly USER_SUGGESTIONS: "userSuggestions";
|
|
15
|
+
};
|
|
16
|
+
//# sourceMappingURL=collection-groups.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"collection-groups.d.ts","sourceRoot":"","sources":["../../src/paths/collection-groups.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;CAcpB,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
// Collection group query constants
|
|
2
|
+
//
|
|
3
|
+
// Frontend: collectionGroup(db, COLLECTION_GROUPS.SOCIAL_POSTS)
|
|
4
|
+
// Backend: db.collectionGroup(COLLECTION_GROUPS.SOCIAL_POSTS)
|
|
5
|
+
import { USER_SUBCOLLECTIONS, NESTED_SUBCOLLECTIONS } from './collections.js';
|
|
6
|
+
export const COLLECTION_GROUPS = {
|
|
7
|
+
PROFILE_SKILLS: USER_SUBCOLLECTIONS.PROFILE_SKILLS,
|
|
8
|
+
SOCIAL_POSTS: NESTED_SUBCOLLECTIONS.SOCIAL_POSTS,
|
|
9
|
+
LIBRARY_ITEMS: NESTED_SUBCOLLECTIONS.LIBRARY_ITEMS,
|
|
10
|
+
TALE_CHAPTERS: NESTED_SUBCOLLECTIONS.TALE_CHAPTERS,
|
|
11
|
+
TUNE_SONGS: NESTED_SUBCOLLECTIONS.TUNE_SONGS,
|
|
12
|
+
TV_SHOWS: NESTED_SUBCOLLECTIONS.TV_SHOWS,
|
|
13
|
+
CHANNEL_MESSAGES: NESTED_SUBCOLLECTIONS.CHANNEL_MESSAGES,
|
|
14
|
+
APPLICATION_REPLIES: NESTED_SUBCOLLECTIONS.APPLICATION_REPLIES,
|
|
15
|
+
SUBMITTED_REPLIES: NESTED_SUBCOLLECTIONS.SUBMITTED_REPLIES,
|
|
16
|
+
CONVERSATION_MESSAGES: NESTED_SUBCOLLECTIONS.CONVERSATION_MESSAGES,
|
|
17
|
+
INVITE_MESSAGES: NESTED_SUBCOLLECTIONS.INVITE_MESSAGES,
|
|
18
|
+
TAGGED_SKILLS: NESTED_SUBCOLLECTIONS.TAGGED_SKILLS,
|
|
19
|
+
USER_SUGGESTIONS: NESTED_SUBCOLLECTIONS.USER_SUGGESTIONS,
|
|
20
|
+
};
|
|
21
|
+
//# sourceMappingURL=collection-groups.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"collection-groups.js","sourceRoot":"","sources":["../../src/paths/collection-groups.ts"],"names":[],"mappings":"AAAA,mCAAmC;AACnC,EAAE;AACF,gEAAgE;AAChE,+DAA+D;AAE/D,OAAO,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAE9E,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,cAAc,EAAE,mBAAmB,CAAC,cAAc;IAClD,YAAY,EAAE,qBAAqB,CAAC,YAAY;IAChD,aAAa,EAAE,qBAAqB,CAAC,aAAa;IAClD,aAAa,EAAE,qBAAqB,CAAC,aAAa;IAClD,UAAU,EAAE,qBAAqB,CAAC,UAAU;IAC5C,QAAQ,EAAE,qBAAqB,CAAC,QAAQ;IACxC,gBAAgB,EAAE,qBAAqB,CAAC,gBAAgB;IACxD,mBAAmB,EAAE,qBAAqB,CAAC,mBAAmB;IAC9D,iBAAiB,EAAE,qBAAqB,CAAC,iBAAiB;IAC1D,qBAAqB,EAAE,qBAAqB,CAAC,qBAAqB;IAClE,eAAe,EAAE,qBAAqB,CAAC,eAAe;IACtD,aAAa,EAAE,qBAAqB,CAAC,aAAa;IAClD,gBAAgB,EAAE,qBAAqB,CAAC,gBAAgB;CAChD,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export declare const COLLECTION_REFS: {
|
|
2
|
+
readonly userProfiles: () => [string];
|
|
3
|
+
readonly allProjects: () => [string];
|
|
4
|
+
readonly storyUniverses: () => [string];
|
|
5
|
+
readonly streetzFeed: () => [string];
|
|
6
|
+
readonly contentLibrary: () => [string];
|
|
7
|
+
readonly jobListings: () => [string];
|
|
8
|
+
readonly opportunityBoard: () => [string];
|
|
9
|
+
readonly userSkills: (userId: string) => [string, string, string];
|
|
10
|
+
readonly userFollows: (userId: string) => [string, string, string];
|
|
11
|
+
readonly projectTales: (projectId: string) => [string, string, string];
|
|
12
|
+
readonly projectTunes: (projectId: string) => [string, string, string];
|
|
13
|
+
readonly projectTelevision: (projectId: string) => [string, string, string];
|
|
14
|
+
readonly chatChannels: (projectId: string) => [string, string, string];
|
|
15
|
+
readonly channelMessages: (projectId: string, channelId: string) => [string, string, string, string, string];
|
|
16
|
+
readonly pendingPosts: () => [string, string, string];
|
|
17
|
+
readonly activePosts: () => [string, string, string];
|
|
18
|
+
readonly pendingLibraryItems: () => [string, string, string];
|
|
19
|
+
readonly publishedLibraryItems: () => [string, string, string];
|
|
20
|
+
readonly jobApplications: (jobId: string) => [string, string, string];
|
|
21
|
+
readonly opportunityReplies: (opportunityId: string) => [string, string, string];
|
|
22
|
+
readonly tuneSongs: (projectId: string, tuneId: string) => readonly [string, string, string, string, string];
|
|
23
|
+
};
|
|
24
|
+
//# sourceMappingURL=collection-refs.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"collection-refs.d.ts","sourceRoot":"","sources":["../../src/paths/collection-refs.ts"],"names":[],"mappings":"AAYA,eAAO,MAAM,eAAe;iCAER,CAAC,MAAM,CAAC;gCACT,CAAC,MAAM,CAAC;mCACL,CAAC,MAAM,CAAC;gCACX,CAAC,MAAM,CAAC;mCACL,CAAC,MAAM,CAAC;gCACX,CAAC,MAAM,CAAC;qCACH,CAAC,MAAM,CAAC;kCAGT,MAAM,KAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;mCAGhC,MAAM,KAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;uCAI7B,MAAM,KAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;uCAGjC,MAAM,KAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;4CAG5B,MAAM,KAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;uCAGtC,MAAM,KAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;0CAG9B,MAAM,aAAa,MAAM,KAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;iCAI/E,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;gCAGzB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;wCAIhB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;0CAGtB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;sCAI1B,MAAM,KAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;iDAGtB,MAAM,KAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;oCAG9C,MAAM,UAAU,MAAM,KAAG,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;CAEzF,CAAC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
// Collection reference builders — for collection-level operations.
|
|
2
|
+
//
|
|
3
|
+
// Frontend: collection(db, ...COLLECTION_REFS.userProfiles())
|
|
4
|
+
// Backend: db.collection(toPath(COLLECTION_REFS.userProfiles()))
|
|
5
|
+
import { COLLECTIONS, USER_SUBCOLLECTIONS, PROJECT_SUBCOLLECTIONS, NESTED_SUBCOLLECTIONS, } from './collections.js';
|
|
6
|
+
export const COLLECTION_REFS = {
|
|
7
|
+
// Top-level collections
|
|
8
|
+
userProfiles: () => [COLLECTIONS.USER_PROFILES],
|
|
9
|
+
allProjects: () => [COLLECTIONS.ALL_PROJECTS],
|
|
10
|
+
storyUniverses: () => [COLLECTIONS.STORY_UNIVERSES],
|
|
11
|
+
streetzFeed: () => [COLLECTIONS.STREETZ_FEED],
|
|
12
|
+
contentLibrary: () => [COLLECTIONS.CONTENT_LIBRARY],
|
|
13
|
+
jobListings: () => [COLLECTIONS.JOB_LISTINGS],
|
|
14
|
+
opportunityBoard: () => [COLLECTIONS.OPPORTUNITY_BOARD],
|
|
15
|
+
// User subcollections
|
|
16
|
+
userSkills: (userId) => [COLLECTIONS.USER_PROFILES, userId, USER_SUBCOLLECTIONS.PROFILE_SKILLS],
|
|
17
|
+
userFollows: (userId) => [COLLECTIONS.USER_PROFILES, userId, USER_SUBCOLLECTIONS.USER_FOLLOWS],
|
|
18
|
+
// Project subcollections
|
|
19
|
+
projectTales: (projectId) => [COLLECTIONS.ALL_PROJECTS, projectId, PROJECT_SUBCOLLECTIONS.PROJECT_TALES],
|
|
20
|
+
projectTunes: (projectId) => [COLLECTIONS.ALL_PROJECTS, projectId, PROJECT_SUBCOLLECTIONS.PROJECT_TUNES],
|
|
21
|
+
projectTelevision: (projectId) => [COLLECTIONS.ALL_PROJECTS, projectId, PROJECT_SUBCOLLECTIONS.PROJECT_TELEVISION],
|
|
22
|
+
chatChannels: (projectId) => [COLLECTIONS.ALL_PROJECTS, projectId, PROJECT_SUBCOLLECTIONS.CHAT_CHANNELS],
|
|
23
|
+
channelMessages: (projectId, channelId) => [COLLECTIONS.ALL_PROJECTS, projectId, PROJECT_SUBCOLLECTIONS.CHAT_CHANNELS, channelId, NESTED_SUBCOLLECTIONS.CHANNEL_MESSAGES],
|
|
24
|
+
// Streetz collections
|
|
25
|
+
pendingPosts: () => [COLLECTIONS.STREETZ_FEED, NESTED_SUBCOLLECTIONS.PENDING_POSTS, NESTED_SUBCOLLECTIONS.SOCIAL_POSTS],
|
|
26
|
+
activePosts: () => [COLLECTIONS.STREETZ_FEED, NESTED_SUBCOLLECTIONS.ACTIVE_POSTS, NESTED_SUBCOLLECTIONS.SOCIAL_POSTS],
|
|
27
|
+
// Library collections
|
|
28
|
+
pendingLibraryItems: () => [COLLECTIONS.CONTENT_LIBRARY, NESTED_SUBCOLLECTIONS.PENDING_ITEMS, NESTED_SUBCOLLECTIONS.LIBRARY_ITEMS],
|
|
29
|
+
publishedLibraryItems: () => [COLLECTIONS.CONTENT_LIBRARY, NESTED_SUBCOLLECTIONS.PUBLISHED_ITEMS, NESTED_SUBCOLLECTIONS.LIBRARY_ITEMS],
|
|
30
|
+
// Job/Opportunity collections
|
|
31
|
+
jobApplications: (jobId) => [COLLECTIONS.JOB_LISTINGS, jobId, NESTED_SUBCOLLECTIONS.APPLICATION_REPLIES],
|
|
32
|
+
opportunityReplies: (opportunityId) => [COLLECTIONS.OPPORTUNITY_BOARD, opportunityId, NESTED_SUBCOLLECTIONS.SUBMITTED_REPLIES],
|
|
33
|
+
tuneSongs: (projectId, tuneId) => [COLLECTIONS.ALL_PROJECTS, projectId, PROJECT_SUBCOLLECTIONS.PROJECT_TUNES, tuneId, NESTED_SUBCOLLECTIONS.TUNE_SONGS],
|
|
34
|
+
};
|
|
35
|
+
//# sourceMappingURL=collection-refs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"collection-refs.js","sourceRoot":"","sources":["../../src/paths/collection-refs.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* TOP-LEVEL COLLECTIONS
|
|
3
|
+
*/
|
|
4
|
+
export declare const COLLECTIONS: {
|
|
5
|
+
readonly USER_PROFILES: "userProfiles";
|
|
6
|
+
readonly ALL_PROJECTS: "allProjects";
|
|
7
|
+
readonly STORY_UNIVERSES: "storyUniverses";
|
|
8
|
+
readonly STREETZ_FEED: "streetzFeed";
|
|
9
|
+
readonly CONTENT_LIBRARY: "contentLibrary";
|
|
10
|
+
readonly JOB_LISTINGS: "jobListings";
|
|
11
|
+
readonly OPPORTUNITY_BOARD: "opportunityBoard";
|
|
12
|
+
readonly RESERVED_DISPLAY_NAMES: "reservedDisplayNames";
|
|
13
|
+
readonly DONATIONS_SUMMARY: "donationsSummary";
|
|
14
|
+
readonly CONTENT_REPORTS: "contentReports";
|
|
15
|
+
readonly PENDING_MEDIA: "pendingMedia";
|
|
16
|
+
readonly PENDING_ADMIN_MESSAGES: "pendingAdminMessages";
|
|
17
|
+
readonly ACTIVE_REPORT_GROUPS: "activeReportGroups";
|
|
18
|
+
readonly CONTENT_VIOLATIONS: "contentViolations";
|
|
19
|
+
readonly ADMIN_TASKS: "adminTasks";
|
|
20
|
+
readonly ADMIN_ACTIVITY_LOG: "adminActivityLog";
|
|
21
|
+
readonly SHORT_LINKS: "shortLinks";
|
|
22
|
+
readonly NOTIFICATION_QUEUE: "notificationQueue";
|
|
23
|
+
readonly PROJECT_INVITE_CONVERSATIONS: "projectInviteConversations";
|
|
24
|
+
readonly ACTIVE_USER_NOTIFICATIONS: "activeUserNotifications";
|
|
25
|
+
readonly ACTIVE_ADMIN_NOTIFICATIONS: "activeAdminNotifications";
|
|
26
|
+
readonly ADMIN_NOTIFICATION_HISTORY: "adminNotificationHistory";
|
|
27
|
+
readonly PENDING_NOTIFICATIONS: "pendingNotifications";
|
|
28
|
+
readonly FEEDBACK_SUBMISSIONS: "feedbackSubmissions";
|
|
29
|
+
readonly FEEDBACK_ALIASES: "feedbackAliases";
|
|
30
|
+
readonly FEEDBACK_DENYLIST: "feedbackDenylist";
|
|
31
|
+
readonly SKILLS_BY_TAG: "skillsByTag";
|
|
32
|
+
readonly SYSTEM_DATA: "systemData";
|
|
33
|
+
readonly RECENT_DONATIONS: "recentDonations";
|
|
34
|
+
readonly ARCHIVED_DONATIONS: "archivedDonations";
|
|
35
|
+
};
|
|
36
|
+
/**
|
|
37
|
+
* USER PROFILE SUBCOLLECTIONS
|
|
38
|
+
* Nested under userProfiles/{userId}/
|
|
39
|
+
*/
|
|
40
|
+
export declare const USER_SUBCOLLECTIONS: {
|
|
41
|
+
readonly PROFILE_SKILLS: "profileSkills";
|
|
42
|
+
readonly PRIVATE_DATA: "privateData";
|
|
43
|
+
readonly USER_METADATA: "userMetadata";
|
|
44
|
+
readonly USER_FOLLOWS: "userFollows";
|
|
45
|
+
readonly USER_LIKES: "userLikes";
|
|
46
|
+
readonly USER_DONATIONS: "userDonations";
|
|
47
|
+
readonly CHECKED_OUT_ITEMS: "checkedOutItems";
|
|
48
|
+
readonly MENTION_HISTORY: "mentionHistory";
|
|
49
|
+
readonly OPPORTUNITY_VOTES: "opportunityVotes";
|
|
50
|
+
};
|
|
51
|
+
/**
|
|
52
|
+
* PROJECT SUBCOLLECTIONS
|
|
53
|
+
* Nested under allProjects/{projectId}/
|
|
54
|
+
*/
|
|
55
|
+
export declare const PROJECT_SUBCOLLECTIONS: {
|
|
56
|
+
readonly PUBLIC_DATA: "publicData";
|
|
57
|
+
readonly PROJECT_POSTS: "projectPosts";
|
|
58
|
+
readonly PROJECT_TALES: "projectTales";
|
|
59
|
+
readonly PROJECT_TUNES: "projectTunes";
|
|
60
|
+
readonly PROJECT_TELEVISION: "projectTelevision";
|
|
61
|
+
readonly SHARE_HISTORY: "shareHistory";
|
|
62
|
+
readonly CHAT_CHANNELS: "chatChannels";
|
|
63
|
+
};
|
|
64
|
+
/**
|
|
65
|
+
* DEEPLY NESTED SUBCOLLECTIONS
|
|
66
|
+
* Third level and beyond
|
|
67
|
+
*/
|
|
68
|
+
export declare const NESTED_SUBCOLLECTIONS: {
|
|
69
|
+
readonly TALE_CHAPTERS: "taleChapters";
|
|
70
|
+
readonly TUNE_SONGS: "tuneSongs";
|
|
71
|
+
readonly TV_SHOWS: "tvShows";
|
|
72
|
+
readonly CHANNEL_MESSAGES: "channelMessages";
|
|
73
|
+
readonly CONVERSATION_MESSAGES: "conversationMessages";
|
|
74
|
+
readonly INVITE_MESSAGES: "inviteMessages";
|
|
75
|
+
readonly SOCIAL_POSTS: "socialPosts";
|
|
76
|
+
readonly PENDING_POSTS: "pendingPosts";
|
|
77
|
+
readonly ACTIVE_POSTS: "activePosts";
|
|
78
|
+
readonly TRENDING_POSTS: "trendingPosts";
|
|
79
|
+
readonly LIBRARY_ITEMS: "libraryItems";
|
|
80
|
+
readonly PENDING_ITEMS: "pendingItems";
|
|
81
|
+
readonly PUBLISHED_ITEMS: "publishedItems";
|
|
82
|
+
readonly APPLICATION_REPLIES: "applicationReplies";
|
|
83
|
+
readonly SUBMITTED_REPLIES: "submittedReplies";
|
|
84
|
+
readonly FOLLOW_HISTORY: "followHistory";
|
|
85
|
+
readonly FOLLOWED_USERS: "followedUsers";
|
|
86
|
+
readonly LIKE_HISTORY: "likeHistory";
|
|
87
|
+
readonly STREETZ_LIKES: "streetzLikes";
|
|
88
|
+
readonly TAGGED_SKILLS: "taggedSkills";
|
|
89
|
+
readonly USER_SUGGESTIONS: "userSuggestions";
|
|
90
|
+
};
|
|
91
|
+
/**
|
|
92
|
+
* SPECIAL DOCUMENT PATHS
|
|
93
|
+
* Static document IDs for singleton documents
|
|
94
|
+
*/
|
|
95
|
+
export declare const SPECIAL_DOCS: {
|
|
96
|
+
readonly ADMIN_LIST: "adminList";
|
|
97
|
+
readonly FUTURE_PLANS: "futurePlans";
|
|
98
|
+
readonly RULES_AND_AGREEMENTS: "rulesAndAgreements";
|
|
99
|
+
readonly SUMMARY: "summary";
|
|
100
|
+
readonly NOTIFICATION_SETTINGS: "notificationSettings";
|
|
101
|
+
};
|
|
102
|
+
//# sourceMappingURL=collections.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"collections.d.ts","sourceRoot":"","sources":["../../src/paths/collections.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwCd,CAAC;AAEX;;;GAGG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;;CAUtB,CAAC;AAEX;;;GAGG;AACH,eAAO,MAAM,sBAAsB;;;;;;;;CAQzB,CAAC;AAEX;;;GAGG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;CAmCxB,CAAC;AAEX;;;GAGG;AACH,eAAO,MAAM,YAAY;;;;;;CAMf,CAAC"}
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
// Firestore collection name constants — canonical source of truth
|
|
2
|
+
// Changes to these values require database migration.
|
|
3
|
+
/**
|
|
4
|
+
* TOP-LEVEL COLLECTIONS
|
|
5
|
+
*/
|
|
6
|
+
export const COLLECTIONS = {
|
|
7
|
+
// Core entities
|
|
8
|
+
USER_PROFILES: 'userProfiles',
|
|
9
|
+
ALL_PROJECTS: 'allProjects',
|
|
10
|
+
STORY_UNIVERSES: 'storyUniverses',
|
|
11
|
+
// Content & Social
|
|
12
|
+
STREETZ_FEED: 'streetzFeed',
|
|
13
|
+
CONTENT_LIBRARY: 'contentLibrary',
|
|
14
|
+
JOB_LISTINGS: 'jobListings',
|
|
15
|
+
OPPORTUNITY_BOARD: 'opportunityBoard',
|
|
16
|
+
// System & Utility
|
|
17
|
+
RESERVED_DISPLAY_NAMES: 'reservedDisplayNames',
|
|
18
|
+
DONATIONS_SUMMARY: 'donationsSummary',
|
|
19
|
+
CONTENT_REPORTS: 'contentReports',
|
|
20
|
+
PENDING_MEDIA: 'pendingMedia',
|
|
21
|
+
PENDING_ADMIN_MESSAGES: 'pendingAdminMessages',
|
|
22
|
+
ACTIVE_REPORT_GROUPS: 'activeReportGroups',
|
|
23
|
+
CONTENT_VIOLATIONS: 'contentViolations',
|
|
24
|
+
ADMIN_TASKS: 'adminTasks',
|
|
25
|
+
ADMIN_ACTIVITY_LOG: 'adminActivityLog',
|
|
26
|
+
SHORT_LINKS: 'shortLinks',
|
|
27
|
+
NOTIFICATION_QUEUE: 'notificationQueue',
|
|
28
|
+
PROJECT_INVITE_CONVERSATIONS: 'projectInviteConversations',
|
|
29
|
+
// Notification system
|
|
30
|
+
ACTIVE_USER_NOTIFICATIONS: 'activeUserNotifications',
|
|
31
|
+
ACTIVE_ADMIN_NOTIFICATIONS: 'activeAdminNotifications',
|
|
32
|
+
ADMIN_NOTIFICATION_HISTORY: 'adminNotificationHistory',
|
|
33
|
+
PENDING_NOTIFICATIONS: 'pendingNotifications',
|
|
34
|
+
// Feedback & Metadata
|
|
35
|
+
FEEDBACK_SUBMISSIONS: 'feedbackSubmissions',
|
|
36
|
+
FEEDBACK_ALIASES: 'feedbackAliases',
|
|
37
|
+
FEEDBACK_DENYLIST: 'feedbackDenylist',
|
|
38
|
+
SKILLS_BY_TAG: 'skillsByTag',
|
|
39
|
+
SYSTEM_DATA: 'systemData',
|
|
40
|
+
RECENT_DONATIONS: 'recentDonations',
|
|
41
|
+
ARCHIVED_DONATIONS: 'archivedDonations',
|
|
42
|
+
};
|
|
43
|
+
/**
|
|
44
|
+
* USER PROFILE SUBCOLLECTIONS
|
|
45
|
+
* Nested under userProfiles/{userId}/
|
|
46
|
+
*/
|
|
47
|
+
export const USER_SUBCOLLECTIONS = {
|
|
48
|
+
PROFILE_SKILLS: 'profileSkills',
|
|
49
|
+
PRIVATE_DATA: 'privateData',
|
|
50
|
+
USER_METADATA: 'userMetadata',
|
|
51
|
+
USER_FOLLOWS: 'userFollows',
|
|
52
|
+
USER_LIKES: 'userLikes',
|
|
53
|
+
USER_DONATIONS: 'userDonations',
|
|
54
|
+
CHECKED_OUT_ITEMS: 'checkedOutItems',
|
|
55
|
+
MENTION_HISTORY: 'mentionHistory',
|
|
56
|
+
OPPORTUNITY_VOTES: 'opportunityVotes',
|
|
57
|
+
};
|
|
58
|
+
/**
|
|
59
|
+
* PROJECT SUBCOLLECTIONS
|
|
60
|
+
* Nested under allProjects/{projectId}/
|
|
61
|
+
*/
|
|
62
|
+
export const PROJECT_SUBCOLLECTIONS = {
|
|
63
|
+
PUBLIC_DATA: 'publicData',
|
|
64
|
+
PROJECT_POSTS: 'projectPosts',
|
|
65
|
+
PROJECT_TALES: 'projectTales',
|
|
66
|
+
PROJECT_TUNES: 'projectTunes',
|
|
67
|
+
PROJECT_TELEVISION: 'projectTelevision',
|
|
68
|
+
SHARE_HISTORY: 'shareHistory',
|
|
69
|
+
CHAT_CHANNELS: 'chatChannels',
|
|
70
|
+
};
|
|
71
|
+
/**
|
|
72
|
+
* DEEPLY NESTED SUBCOLLECTIONS
|
|
73
|
+
* Third level and beyond
|
|
74
|
+
*/
|
|
75
|
+
export const NESTED_SUBCOLLECTIONS = {
|
|
76
|
+
// Content subcollections
|
|
77
|
+
TALE_CHAPTERS: 'taleChapters',
|
|
78
|
+
TUNE_SONGS: 'tuneSongs',
|
|
79
|
+
TV_SHOWS: 'tvShows',
|
|
80
|
+
// Communication
|
|
81
|
+
CHANNEL_MESSAGES: 'channelMessages',
|
|
82
|
+
CONVERSATION_MESSAGES: 'conversationMessages',
|
|
83
|
+
INVITE_MESSAGES: 'inviteMessages',
|
|
84
|
+
// Streetz & Social
|
|
85
|
+
SOCIAL_POSTS: 'socialPosts',
|
|
86
|
+
PENDING_POSTS: 'pendingPosts',
|
|
87
|
+
ACTIVE_POSTS: 'activePosts',
|
|
88
|
+
TRENDING_POSTS: 'trendingPosts',
|
|
89
|
+
// Library
|
|
90
|
+
LIBRARY_ITEMS: 'libraryItems',
|
|
91
|
+
PENDING_ITEMS: 'pendingItems',
|
|
92
|
+
PUBLISHED_ITEMS: 'publishedItems',
|
|
93
|
+
// Jobs & Opportunities
|
|
94
|
+
APPLICATION_REPLIES: 'applicationReplies',
|
|
95
|
+
SUBMITTED_REPLIES: 'submittedReplies',
|
|
96
|
+
// User history
|
|
97
|
+
FOLLOW_HISTORY: 'followHistory',
|
|
98
|
+
FOLLOWED_USERS: 'followedUsers',
|
|
99
|
+
LIKE_HISTORY: 'likeHistory',
|
|
100
|
+
STREETZ_LIKES: 'streetzLikes',
|
|
101
|
+
// Skills & Feedback
|
|
102
|
+
TAGGED_SKILLS: 'taggedSkills',
|
|
103
|
+
USER_SUGGESTIONS: 'userSuggestions',
|
|
104
|
+
};
|
|
105
|
+
/**
|
|
106
|
+
* SPECIAL DOCUMENT PATHS
|
|
107
|
+
* Static document IDs for singleton documents
|
|
108
|
+
*/
|
|
109
|
+
export const SPECIAL_DOCS = {
|
|
110
|
+
ADMIN_LIST: 'adminList',
|
|
111
|
+
FUTURE_PLANS: 'futurePlans',
|
|
112
|
+
RULES_AND_AGREEMENTS: 'rulesAndAgreements',
|
|
113
|
+
SUMMARY: 'summary',
|
|
114
|
+
NOTIFICATION_SETTINGS: 'notificationSettings',
|
|
115
|
+
};
|
|
116
|
+
//# sourceMappingURL=collections.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"collections.js","sourceRoot":"","sources":["../../src/paths/collections.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/paths/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,YAAY,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/paths/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,YAAY,CAAC"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
export declare const PATH_BUILDERS: {
|
|
2
|
+
readonly userProfile: (userId: string) => [string, string];
|
|
3
|
+
readonly userSkill: (userId: string, skillId: string) => [string, string, string, string];
|
|
4
|
+
readonly userPrivateData: (userId: string) => [string, string, string, string];
|
|
5
|
+
readonly userMetadata: (userId: string) => [string, string, string, string];
|
|
6
|
+
readonly userFollow: (userId: string, followDocId: string) => [string, string, string, string];
|
|
7
|
+
readonly followedUser: (userId: string, followedUserId: string) => [string, string, string, string, string, string];
|
|
8
|
+
readonly userLike: (userId: string, postId: string) => [string, string, string, string, string, string];
|
|
9
|
+
readonly userDonation: (userId: string, donationId: string) => [string, string, string, string];
|
|
10
|
+
readonly userOpportunityVote: (userId: string, opportunityId: string) => [string, string, string, string];
|
|
11
|
+
readonly project: (projectId: string) => [string, string];
|
|
12
|
+
readonly projectPublicData: (projectId: string, publicId: string) => [string, string, string, string];
|
|
13
|
+
readonly projectPost: (projectId: string, postId: string) => [string, string, string, string];
|
|
14
|
+
readonly projectTale: (projectId: string, taleId: string) => [string, string, string, string];
|
|
15
|
+
readonly taleChapter: (projectId: string, taleId: string, chapterId: string) => [string, string, string, string, string, string];
|
|
16
|
+
readonly projectTune: (projectId: string, tuneId: string) => [string, string, string, string];
|
|
17
|
+
readonly tuneSong: (projectId: string, tuneId: string, songId: string) => [string, string, string, string, string, string];
|
|
18
|
+
readonly projectTelevision: (projectId: string, televisionId: string) => [string, string, string, string];
|
|
19
|
+
readonly tvShow: (projectId: string, televisionId: string, showId: string) => [string, string, string, string, string, string];
|
|
20
|
+
readonly projectShare: (projectId: string, shareId: string) => [string, string, string, string];
|
|
21
|
+
readonly chatChannel: (projectId: string, channelId: string) => [string, string, string, string];
|
|
22
|
+
readonly channelMessage: (projectId: string, channelId: string, messageId: string) => [string, string, string, string, string, string];
|
|
23
|
+
readonly pendingPost: (postId: string) => [string, string, string, string];
|
|
24
|
+
readonly activePost: (postId: string) => [string, string, string, string];
|
|
25
|
+
readonly trendingPosts: () => [string, string];
|
|
26
|
+
readonly pendingLibraryItem: (libraryId: string) => [string, string, string, string];
|
|
27
|
+
readonly publishedLibraryItem: (libraryId: string) => [string, string, string, string];
|
|
28
|
+
readonly publishedLibraryItemType: (libraryId: string, projectType: string, itemId: string) => [string, string, string, string, string, string];
|
|
29
|
+
readonly jobListing: (jobId: string) => [string, string];
|
|
30
|
+
readonly jobApplication: (jobId: string, replyId: string) => [string, string, string, string];
|
|
31
|
+
readonly opportunity: (opportunityId: string) => [string, string];
|
|
32
|
+
readonly opportunityReply: (opportunityId: string, replyId: string) => [string, string, string, string];
|
|
33
|
+
readonly universe: (universeId: string) => [string, string];
|
|
34
|
+
readonly adminMessage: (messageId: string) => [string, string];
|
|
35
|
+
readonly adminConversationMessage: (messageId: string, individualMessageId: string) => [string, string, string, string];
|
|
36
|
+
readonly projectInvite: (inviteId: string) => [string, string];
|
|
37
|
+
readonly inviteMessage: (inviteId: string, messageId: string) => [string, string, string, string];
|
|
38
|
+
readonly contentReport: (reportId: string) => [string, string];
|
|
39
|
+
readonly activeReportGroup: (groupKey: string) => [string, string];
|
|
40
|
+
readonly contentViolation: (violationId: string) => [string, string];
|
|
41
|
+
readonly adminTask: (taskId: string) => [string, string];
|
|
42
|
+
readonly adminTaskForItem: (taskType: string, itemId: string) => [string, string];
|
|
43
|
+
readonly adminActivityLog: (logId: string) => [string, string];
|
|
44
|
+
readonly reservedDisplayName: (displayNameUppercase: string) => [string, string];
|
|
45
|
+
readonly shortLink: (shortId: string) => [string, string];
|
|
46
|
+
readonly pendingMedia: (docId: string) => [string, string];
|
|
47
|
+
readonly notificationQueue: (notificationId: string) => [string, string];
|
|
48
|
+
readonly donationsSummary: () => [string, string];
|
|
49
|
+
readonly recentDonation: (donationId: string) => [string, string];
|
|
50
|
+
readonly archivedDonation: (donationId: string) => [string, string];
|
|
51
|
+
readonly feedbackSubmission: (feedbackType: string) => [string, string];
|
|
52
|
+
readonly userSuggestion: (feedbackType: string, suggestionId: string) => [string, string, string, string];
|
|
53
|
+
readonly feedbackAlias: (aliasId: string) => [string, string];
|
|
54
|
+
readonly feedbackDenylist: (deniedWord: string) => [string, string];
|
|
55
|
+
readonly taggedSkill: (tag: string, compositeId: string) => [string, string, string, string];
|
|
56
|
+
readonly adminList: () => [string, string];
|
|
57
|
+
readonly futurePlans: () => [string, string];
|
|
58
|
+
readonly rulesAndAgreements: () => [string, string];
|
|
59
|
+
};
|
|
60
|
+
//# sourceMappingURL=path-builders.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"path-builders.d.ts","sourceRoot":"","sources":["../../src/paths/path-builders.ts"],"names":[],"mappings":"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"}
|