@qrush/types 2.1.26 → 2.1.28
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/Artist.d.ts +43 -0
- package/dist/Artist.js +1 -0
- package/dist/Events.d.ts +5 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -0
- package/package.json +1 -1
package/dist/Artist.d.ts
ADDED
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import type { Timestamp } from "@firebase/firestore";
|
|
2
|
+
/**
|
|
3
|
+
* SEO links for schema.org structured data
|
|
4
|
+
* Used for artist/performer pages to improve discoverability
|
|
5
|
+
*/
|
|
6
|
+
export interface ArtistSameAs {
|
|
7
|
+
spotify?: string;
|
|
8
|
+
instagram?: string;
|
|
9
|
+
soundcloud?: string;
|
|
10
|
+
youtube?: string;
|
|
11
|
+
tiktok?: string;
|
|
12
|
+
website?: string;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Full artist document stored in the `artists` collection
|
|
16
|
+
* Admins can create full records; promoters create fallback (name-only) entries
|
|
17
|
+
*/
|
|
18
|
+
export interface IFireArtist {
|
|
19
|
+
id: string;
|
|
20
|
+
name: string;
|
|
21
|
+
nameSlug: string;
|
|
22
|
+
description?: string;
|
|
23
|
+
imageUrl?: string;
|
|
24
|
+
sameAs?: ArtistSameAs;
|
|
25
|
+
/** true if created by promoter (name-only, no SEO links) */
|
|
26
|
+
isFallback: boolean;
|
|
27
|
+
createdAt?: Timestamp;
|
|
28
|
+
createdBy: string;
|
|
29
|
+
lastModifiedAt?: Timestamp;
|
|
30
|
+
lastModifiedBy?: string;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Denormalized artist data embedded in events
|
|
34
|
+
* Uses *Snapshot pattern - data synced when artist is updated via cloud function
|
|
35
|
+
*/
|
|
36
|
+
export interface EventArtist {
|
|
37
|
+
artistId: string;
|
|
38
|
+
nameSnapshot: string;
|
|
39
|
+
imageUrlSnapshot?: string;
|
|
40
|
+
spotifySnapshot?: string;
|
|
41
|
+
instagramSnapshot?: string;
|
|
42
|
+
isFallbackSnapshot: boolean;
|
|
43
|
+
}
|
package/dist/Artist.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/dist/Events.d.ts
CHANGED
|
@@ -5,6 +5,7 @@ import musicGenres from "./Genres.js";
|
|
|
5
5
|
import { LocationTypeArray, LocationTypeSlugArray } from "./Location.js";
|
|
6
6
|
import { Features, Location, EventCategory, EventCategorySlug, TranslationMap, SupportedLanguage } from "./Common.js";
|
|
7
7
|
import { PromotionTeaser } from "./Promotion.js";
|
|
8
|
+
import { EventArtist } from "./Artist.js";
|
|
8
9
|
export { EventCategory, EventCategorySlug, eventCategories, Features, Location, } from "./Common.js";
|
|
9
10
|
export interface IFireEvent {
|
|
10
11
|
id: string;
|
|
@@ -56,6 +57,10 @@ export interface IFireEvent {
|
|
|
56
57
|
promotionTeasers?: PromotionTeaser[];
|
|
57
58
|
lastModifiedBy?: string;
|
|
58
59
|
lastModifiedAt?: Timestamp;
|
|
60
|
+
/** Denormalized artist data for event lineup */
|
|
61
|
+
artists?: EventArtist[];
|
|
62
|
+
/** Artist IDs for Firestore array-contains queries */
|
|
63
|
+
artistIds?: string[];
|
|
59
64
|
}
|
|
60
65
|
export declare const eventTagsIsNotString: (tags: string[] | IFireMetaPossibleTags["tags"]) => tags is IFireMetaPossibleTags["tags"];
|
|
61
66
|
export interface TicketType {
|
package/dist/index.d.ts
CHANGED
package/dist/index.js
CHANGED