@luxfi/core 4.4.10 → 4.4.11
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/components/access-code-input.tsx +71 -71
- package/components/auth/auth-listener.tsx +23 -41
- package/components/auth/auth-token/clear-auth-token.tsx +12 -0
- package/components/auth/auth-token/set-auth-token.tsx +16 -0
- package/components/auth/common-auth-domains.ts +16 -15
- package/components/auth/login-panel.tsx +104 -117
- package/components/chat-widget.tsx +77 -77
- package/components/commerce/bag-button.tsx +67 -67
- package/components/commerce/checkout-panel/close-button.tsx +26 -26
- package/components/commerce/checkout-panel/dt-bag-carousel.tsx +36 -36
- package/components/commerce/checkout-panel/dt-checkout-panel.tsx +66 -66
- package/components/commerce/checkout-panel/index.tsx +123 -123
- package/components/commerce/checkout-panel/links-row.tsx +21 -21
- package/components/commerce/checkout-panel/mb-checkout-panel.tsx +55 -55
- package/components/commerce/checkout-panel/steps-indicator.tsx +39 -39
- package/components/commerce/checkout-panel/thank-you.tsx +18 -18
- package/components/commerce/desktop-bag-popup.tsx +78 -78
- package/components/commerce/mobile-bag-drawer.tsx +51 -51
- package/components/commerce/mobile-menu-toggle-button.tsx +35 -35
- package/components/commerce/mobile-nav-menu.tsx +64 -64
- package/components/contact-dialog/contact-form.tsx +112 -112
- package/components/contact-dialog/disclaimer.tsx +13 -13
- package/components/contact-dialog/index.tsx +64 -64
- package/components/copyright.tsx +21 -21
- package/components/footer.tsx +77 -77
- package/components/header/desktop.tsx +54 -54
- package/components/header/index.tsx +26 -26
- package/components/header/mobile.tsx +161 -161
- package/components/header/theme-toggle.tsx +26 -26
- package/components/icons/bag-icon.tsx +10 -10
- package/components/icons/github.tsx +14 -14
- package/components/icons/index.tsx +35 -35
- package/components/icons/lux-logo.tsx +10 -10
- package/components/icons/secure-delivery.tsx +13 -13
- package/components/icons/social-icon.tsx +35 -35
- package/components/icons/social-svg.css +3 -3
- package/components/icons/youtube-logo.tsx +59 -59
- package/components/index.ts +27 -27
- package/components/logo.tsx +81 -81
- package/components/mini-chart/index.tsx +7 -7
- package/components/mini-chart/mini-chart-props.ts +43 -43
- package/components/mini-chart/mini-chart.tsx +85 -85
- package/components/mini-chart/wrapper.tsx +23 -23
- package/components/not-found/index.tsx +27 -27
- package/components/not-found/not-found-content.mdx +5 -5
- package/components/root-layout.tsx +71 -71
- package/components/scripts.tsx +23 -23
- package/conf/index.ts +50 -50
- package/environment.d.ts +5 -5
- package/next/analytics/fpixel.ts +15 -15
- package/next/analytics/google-analytics.ts +13 -13
- package/next/analytics/index.ts +3 -3
- package/next/analytics/pixel-analytics.tsx +54 -54
- package/next/determine-device-mw.ts +16 -16
- package/next/font/get-app-router-font-classes.ts +12 -12
- package/next/font/load-and-return-lux-next-fonts-on-import.ts +68 -68
- package/next/font/next-font-desc.ts +27 -27
- package/next/font/pages-router-font-vars.tsx +18 -18
- package/next/head-metadata/from-next/metadata-types.ts +158 -158
- package/next/head-metadata/from-next/opengraph-types.ts +267 -267
- package/next/head-metadata/from-next/twitter-types.ts +92 -92
- package/next/head-metadata/index.tsx +208 -208
- package/package.json +73 -73
- package/server-actions/firebase-app.ts +14 -14
- package/server-actions/index.ts +5 -5
- package/server-actions/store-contact.ts +51 -51
- package/site-def/footer/community.tsx +67 -67
- package/site-def/footer/company.ts +37 -37
- package/site-def/footer/ecosystem.ts +37 -37
- package/site-def/footer/index.tsx +26 -26
- package/site-def/footer/legal.ts +28 -28
- package/site-def/footer/network.ts +45 -45
- package/site-def/footer/svg/warpcast-logo.svg +11 -11
- package/site-def/index.ts +2 -2
- package/site-def/main-nav.ts +35 -35
- package/site-def/site-def.ts +36 -36
- package/style/lux-colors.css +85 -85
- package/style/lux-global.css +30 -30
- package/tailwind/fontFamily.tailwind.lux.ts +18 -18
- package/tailwind/index.ts +2 -2
- package/tailwind/lux-tw-fonts.ts +39 -39
- package/tailwind/tailwind.config.lux-preset.ts +10 -10
- package/tsconfig.json +10 -10
- package/types/contact-info.ts +10 -10
@@ -1,267 +1,267 @@
|
|
1
|
-
import type { AbsoluteTemplateString, TemplateString } from './metadata-types'
|
2
|
-
|
3
|
-
export type OpenGraphType =
|
4
|
-
| 'article'
|
5
|
-
| 'book'
|
6
|
-
| 'music.song'
|
7
|
-
| 'music.album'
|
8
|
-
| 'music.playlist'
|
9
|
-
| 'music.radio_station'
|
10
|
-
| 'profile'
|
11
|
-
| 'website'
|
12
|
-
| 'video.tv_show'
|
13
|
-
| 'video.other'
|
14
|
-
| 'video.movie'
|
15
|
-
| 'video.episode'
|
16
|
-
|
17
|
-
export type OpenGraph =
|
18
|
-
| OpenGraphWebsite
|
19
|
-
| OpenGraphArticle
|
20
|
-
| OpenGraphBook
|
21
|
-
| OpenGraphProfile
|
22
|
-
| OpenGraphMusicSong
|
23
|
-
| OpenGraphMusicAlbum
|
24
|
-
| OpenGraphMusicPlaylist
|
25
|
-
| OpenGraphRadioStation
|
26
|
-
| OpenGraphVideoMovie
|
27
|
-
| OpenGraphVideoEpisode
|
28
|
-
| OpenGraphVideoTVShow
|
29
|
-
| OpenGraphVideoOther
|
30
|
-
| OpenGraphMetadata
|
31
|
-
|
32
|
-
// update this type to reflect actual locales
|
33
|
-
type Locale = string
|
34
|
-
|
35
|
-
type OpenGraphMetadata = {
|
36
|
-
determiner?: 'a' | 'an' | 'the' | 'auto' | ''
|
37
|
-
title?: string | TemplateString
|
38
|
-
description?: string
|
39
|
-
emails?: string | Array<string>
|
40
|
-
phoneNumbers?: string | Array<string>
|
41
|
-
faxNumbers?: string | Array<string>
|
42
|
-
siteName?: string
|
43
|
-
locale?: Locale
|
44
|
-
alternateLocale?: Locale | Array<Locale>
|
45
|
-
images?: OGImage | Array<OGImage>
|
46
|
-
audio?: OGAudio | Array<OGAudio>
|
47
|
-
videos?: OGVideo | Array<OGVideo>
|
48
|
-
url?: string | URL
|
49
|
-
countryName?: string
|
50
|
-
ttl?: number
|
51
|
-
}
|
52
|
-
export type OpenGraphWebsite = OpenGraphMetadata & {
|
53
|
-
type: 'website'
|
54
|
-
}
|
55
|
-
type OpenGraphArticle = OpenGraphMetadata & {
|
56
|
-
type: 'article'
|
57
|
-
publishedTime?: string // datetime
|
58
|
-
modifiedTime?: string // datetime
|
59
|
-
expirationTime?: string // datetime
|
60
|
-
authors?: null | string | URL | Array<string | URL>
|
61
|
-
section?: null | string
|
62
|
-
tags?: null | string | Array<string>
|
63
|
-
}
|
64
|
-
type OpenGraphBook = OpenGraphMetadata & {
|
65
|
-
type: 'book'
|
66
|
-
isbn?: null | string
|
67
|
-
releaseDate?: null | string // datetime
|
68
|
-
authors?: null | string | URL | Array<string | URL>
|
69
|
-
tags?: null | string | Array<string>
|
70
|
-
}
|
71
|
-
type OpenGraphProfile = OpenGraphMetadata & {
|
72
|
-
type: 'profile'
|
73
|
-
firstName?: null | string
|
74
|
-
lastName?: null | string
|
75
|
-
username?: null | string
|
76
|
-
gender?: null | string
|
77
|
-
}
|
78
|
-
type OpenGraphMusicSong = OpenGraphMetadata & {
|
79
|
-
type: 'music.song'
|
80
|
-
duration?: null | number
|
81
|
-
albums?: null | string | URL | OGAlbum | Array<string | URL | OGAlbum>
|
82
|
-
musicians?: null | string | URL | Array<string | URL>
|
83
|
-
}
|
84
|
-
type OpenGraphMusicAlbum = OpenGraphMetadata & {
|
85
|
-
type: 'music.album'
|
86
|
-
songs?: null | string | URL | OGSong | Array<string | URL | OGSong>
|
87
|
-
musicians?: null | string | URL | Array<string | URL>
|
88
|
-
releaseDate?: null | string // datetime
|
89
|
-
}
|
90
|
-
type OpenGraphMusicPlaylist = OpenGraphMetadata & {
|
91
|
-
type: 'music.playlist'
|
92
|
-
songs?: null | string | URL | OGSong | Array<string | URL | OGSong>
|
93
|
-
creators?: null | string | URL | Array<string | URL>
|
94
|
-
}
|
95
|
-
type OpenGraphRadioStation = OpenGraphMetadata & {
|
96
|
-
type: 'music.radio_station'
|
97
|
-
creators?: null | string | URL | Array<string | URL>
|
98
|
-
}
|
99
|
-
type OpenGraphVideoMovie = OpenGraphMetadata & {
|
100
|
-
type: 'video.movie'
|
101
|
-
actors?: null | string | URL | OGActor | Array<string | URL | OGActor>
|
102
|
-
directors?: null | string | URL | Array<string | URL>
|
103
|
-
writers?: null | string | URL | Array<string | URL>
|
104
|
-
duration?: null | number
|
105
|
-
releaseDate?: null | string // datetime
|
106
|
-
tags?: null | string | Array<string>
|
107
|
-
}
|
108
|
-
type OpenGraphVideoEpisode = OpenGraphMetadata & {
|
109
|
-
type: 'video.episode'
|
110
|
-
actors?: null | string | URL | OGActor | Array<string | URL | OGActor>
|
111
|
-
directors?: null | string | URL | Array<string | URL>
|
112
|
-
writers?: null | string | URL | Array<string | URL>
|
113
|
-
duration?: null | number
|
114
|
-
releaseDate?: null | string // datetime
|
115
|
-
tags?: null | string | Array<string>
|
116
|
-
series?: null | string | URL
|
117
|
-
}
|
118
|
-
type OpenGraphVideoTVShow = OpenGraphMetadata & {
|
119
|
-
type: 'video.tv_show'
|
120
|
-
}
|
121
|
-
type OpenGraphVideoOther = OpenGraphMetadata & {
|
122
|
-
type: 'video.other'
|
123
|
-
}
|
124
|
-
|
125
|
-
export type OGImage = string | OGImageDescriptor | URL
|
126
|
-
type OGImageDescriptor = {
|
127
|
-
url: string | URL
|
128
|
-
secureUrl?: string | URL
|
129
|
-
alt?: string
|
130
|
-
type?: string
|
131
|
-
width?: string | number
|
132
|
-
height?: string | number
|
133
|
-
}
|
134
|
-
type OGAudio = string | OGAudioDescriptor | URL
|
135
|
-
type OGAudioDescriptor = {
|
136
|
-
url: string | URL
|
137
|
-
secureUrl?: string | URL
|
138
|
-
type?: string
|
139
|
-
}
|
140
|
-
type OGVideo = string | OGVideoDescriptor | URL
|
141
|
-
type OGVideoDescriptor = {
|
142
|
-
url: string | URL
|
143
|
-
secureUrl?: string | URL
|
144
|
-
type?: string
|
145
|
-
width?: string | number
|
146
|
-
height?: string | number
|
147
|
-
}
|
148
|
-
|
149
|
-
export type ResolvedOpenGraph =
|
150
|
-
| ResolvedOpenGraphWebsite
|
151
|
-
| ResolvedOpenGraphArticle
|
152
|
-
| ResolvedOpenGraphBook
|
153
|
-
| ResolvedOpenGraphProfile
|
154
|
-
| ResolvedOpenGraphMusicSong
|
155
|
-
| ResolvedOpenGraphMusicAlbum
|
156
|
-
| ResolvedOpenGraphMusicPlaylist
|
157
|
-
| ResolvedOpenGraphRadioStation
|
158
|
-
| ResolvedOpenGraphVideoMovie
|
159
|
-
| ResolvedOpenGraphVideoEpisode
|
160
|
-
| ResolvedOpenGraphVideoTVShow
|
161
|
-
| ResolvedOpenGraphVideoOther
|
162
|
-
| ResolvedOpenGraphMetadata
|
163
|
-
|
164
|
-
type ResolvedOpenGraphMetadata = {
|
165
|
-
determiner?: 'a' | 'an' | 'the' | 'auto' | ''
|
166
|
-
title: AbsoluteTemplateString
|
167
|
-
description?: string
|
168
|
-
emails?: Array<string>
|
169
|
-
phoneNumbers?: Array<string>
|
170
|
-
faxNumbers?: Array<string>
|
171
|
-
siteName?: string
|
172
|
-
locale?: Locale
|
173
|
-
alternateLocale?: Array<Locale>
|
174
|
-
images?: Array<OGImage>
|
175
|
-
audio?: Array<OGAudio>
|
176
|
-
videos?: Array<OGVideo>
|
177
|
-
url: null | URL | string
|
178
|
-
countryName?: string
|
179
|
-
ttl?: number
|
180
|
-
}
|
181
|
-
type ResolvedOpenGraphWebsite = ResolvedOpenGraphMetadata & {
|
182
|
-
type: 'website'
|
183
|
-
}
|
184
|
-
type ResolvedOpenGraphArticle = ResolvedOpenGraphMetadata & {
|
185
|
-
type: 'article'
|
186
|
-
publishedTime?: string // datetime
|
187
|
-
modifiedTime?: string // datetime
|
188
|
-
expirationTime?: string // datetime
|
189
|
-
authors?: Array<string>
|
190
|
-
section?: string
|
191
|
-
tags?: Array<string>
|
192
|
-
}
|
193
|
-
type ResolvedOpenGraphBook = ResolvedOpenGraphMetadata & {
|
194
|
-
type: 'book'
|
195
|
-
isbn?: string
|
196
|
-
releaseDate?: string // datetime
|
197
|
-
authors?: Array<string>
|
198
|
-
tags?: Array<string>
|
199
|
-
}
|
200
|
-
type ResolvedOpenGraphProfile = ResolvedOpenGraphMetadata & {
|
201
|
-
type: 'profile'
|
202
|
-
firstName?: string
|
203
|
-
lastName?: string
|
204
|
-
username?: string
|
205
|
-
gender?: string
|
206
|
-
}
|
207
|
-
type ResolvedOpenGraphMusicSong = ResolvedOpenGraphMetadata & {
|
208
|
-
type: 'music.song'
|
209
|
-
duration?: number
|
210
|
-
albums?: Array<OGAlbum>
|
211
|
-
musicians?: Array<string | URL>
|
212
|
-
}
|
213
|
-
type ResolvedOpenGraphMusicAlbum = ResolvedOpenGraphMetadata & {
|
214
|
-
type: 'music.album'
|
215
|
-
songs?: Array<string | URL | OGSong>
|
216
|
-
musicians?: Array<string | URL>
|
217
|
-
releaseDate?: string // datetime
|
218
|
-
}
|
219
|
-
type ResolvedOpenGraphMusicPlaylist = ResolvedOpenGraphMetadata & {
|
220
|
-
type: 'music.playlist'
|
221
|
-
songs?: Array<string | URL | OGSong>
|
222
|
-
creators?: Array<string | URL>
|
223
|
-
}
|
224
|
-
type ResolvedOpenGraphRadioStation = ResolvedOpenGraphMetadata & {
|
225
|
-
type: 'music.radio_station'
|
226
|
-
creators?: Array<string | URL>
|
227
|
-
}
|
228
|
-
type ResolvedOpenGraphVideoMovie = ResolvedOpenGraphMetadata & {
|
229
|
-
type: 'video.movie'
|
230
|
-
actors?: Array<string | URL | OGActor>
|
231
|
-
directors?: Array<string | URL>
|
232
|
-
writers?: Array<string | URL>
|
233
|
-
duration?: number
|
234
|
-
releaseDate?: string // datetime
|
235
|
-
tags?: Array<string>
|
236
|
-
}
|
237
|
-
type ResolvedOpenGraphVideoEpisode = ResolvedOpenGraphMetadata & {
|
238
|
-
type: 'video.episode'
|
239
|
-
actors?: Array<string | URL | OGActor>
|
240
|
-
directors?: Array<string | URL>
|
241
|
-
writers?: Array<string | URL>
|
242
|
-
duration?: number
|
243
|
-
releaseDate?: string // datetime
|
244
|
-
tags?: Array<string>
|
245
|
-
series?: string | URL
|
246
|
-
}
|
247
|
-
type ResolvedOpenGraphVideoTVShow = ResolvedOpenGraphMetadata & {
|
248
|
-
type: 'video.tv_show'
|
249
|
-
}
|
250
|
-
type ResolvedOpenGraphVideoOther = ResolvedOpenGraphMetadata & {
|
251
|
-
type: 'video.other'
|
252
|
-
}
|
253
|
-
|
254
|
-
type OGSong = {
|
255
|
-
url: string | URL
|
256
|
-
disc?: number
|
257
|
-
track?: number
|
258
|
-
}
|
259
|
-
type OGAlbum = {
|
260
|
-
url: string | URL
|
261
|
-
disc?: number
|
262
|
-
track?: number
|
263
|
-
}
|
264
|
-
type OGActor = {
|
265
|
-
url: string | URL
|
266
|
-
role?: string
|
267
|
-
}
|
1
|
+
import type { AbsoluteTemplateString, TemplateString } from './metadata-types'
|
2
|
+
|
3
|
+
export type OpenGraphType =
|
4
|
+
| 'article'
|
5
|
+
| 'book'
|
6
|
+
| 'music.song'
|
7
|
+
| 'music.album'
|
8
|
+
| 'music.playlist'
|
9
|
+
| 'music.radio_station'
|
10
|
+
| 'profile'
|
11
|
+
| 'website'
|
12
|
+
| 'video.tv_show'
|
13
|
+
| 'video.other'
|
14
|
+
| 'video.movie'
|
15
|
+
| 'video.episode'
|
16
|
+
|
17
|
+
export type OpenGraph =
|
18
|
+
| OpenGraphWebsite
|
19
|
+
| OpenGraphArticle
|
20
|
+
| OpenGraphBook
|
21
|
+
| OpenGraphProfile
|
22
|
+
| OpenGraphMusicSong
|
23
|
+
| OpenGraphMusicAlbum
|
24
|
+
| OpenGraphMusicPlaylist
|
25
|
+
| OpenGraphRadioStation
|
26
|
+
| OpenGraphVideoMovie
|
27
|
+
| OpenGraphVideoEpisode
|
28
|
+
| OpenGraphVideoTVShow
|
29
|
+
| OpenGraphVideoOther
|
30
|
+
| OpenGraphMetadata
|
31
|
+
|
32
|
+
// update this type to reflect actual locales
|
33
|
+
type Locale = string
|
34
|
+
|
35
|
+
type OpenGraphMetadata = {
|
36
|
+
determiner?: 'a' | 'an' | 'the' | 'auto' | ''
|
37
|
+
title?: string | TemplateString
|
38
|
+
description?: string
|
39
|
+
emails?: string | Array<string>
|
40
|
+
phoneNumbers?: string | Array<string>
|
41
|
+
faxNumbers?: string | Array<string>
|
42
|
+
siteName?: string
|
43
|
+
locale?: Locale
|
44
|
+
alternateLocale?: Locale | Array<Locale>
|
45
|
+
images?: OGImage | Array<OGImage>
|
46
|
+
audio?: OGAudio | Array<OGAudio>
|
47
|
+
videos?: OGVideo | Array<OGVideo>
|
48
|
+
url?: string | URL
|
49
|
+
countryName?: string
|
50
|
+
ttl?: number
|
51
|
+
}
|
52
|
+
export type OpenGraphWebsite = OpenGraphMetadata & {
|
53
|
+
type: 'website'
|
54
|
+
}
|
55
|
+
type OpenGraphArticle = OpenGraphMetadata & {
|
56
|
+
type: 'article'
|
57
|
+
publishedTime?: string // datetime
|
58
|
+
modifiedTime?: string // datetime
|
59
|
+
expirationTime?: string // datetime
|
60
|
+
authors?: null | string | URL | Array<string | URL>
|
61
|
+
section?: null | string
|
62
|
+
tags?: null | string | Array<string>
|
63
|
+
}
|
64
|
+
type OpenGraphBook = OpenGraphMetadata & {
|
65
|
+
type: 'book'
|
66
|
+
isbn?: null | string
|
67
|
+
releaseDate?: null | string // datetime
|
68
|
+
authors?: null | string | URL | Array<string | URL>
|
69
|
+
tags?: null | string | Array<string>
|
70
|
+
}
|
71
|
+
type OpenGraphProfile = OpenGraphMetadata & {
|
72
|
+
type: 'profile'
|
73
|
+
firstName?: null | string
|
74
|
+
lastName?: null | string
|
75
|
+
username?: null | string
|
76
|
+
gender?: null | string
|
77
|
+
}
|
78
|
+
type OpenGraphMusicSong = OpenGraphMetadata & {
|
79
|
+
type: 'music.song'
|
80
|
+
duration?: null | number
|
81
|
+
albums?: null | string | URL | OGAlbum | Array<string | URL | OGAlbum>
|
82
|
+
musicians?: null | string | URL | Array<string | URL>
|
83
|
+
}
|
84
|
+
type OpenGraphMusicAlbum = OpenGraphMetadata & {
|
85
|
+
type: 'music.album'
|
86
|
+
songs?: null | string | URL | OGSong | Array<string | URL | OGSong>
|
87
|
+
musicians?: null | string | URL | Array<string | URL>
|
88
|
+
releaseDate?: null | string // datetime
|
89
|
+
}
|
90
|
+
type OpenGraphMusicPlaylist = OpenGraphMetadata & {
|
91
|
+
type: 'music.playlist'
|
92
|
+
songs?: null | string | URL | OGSong | Array<string | URL | OGSong>
|
93
|
+
creators?: null | string | URL | Array<string | URL>
|
94
|
+
}
|
95
|
+
type OpenGraphRadioStation = OpenGraphMetadata & {
|
96
|
+
type: 'music.radio_station'
|
97
|
+
creators?: null | string | URL | Array<string | URL>
|
98
|
+
}
|
99
|
+
type OpenGraphVideoMovie = OpenGraphMetadata & {
|
100
|
+
type: 'video.movie'
|
101
|
+
actors?: null | string | URL | OGActor | Array<string | URL | OGActor>
|
102
|
+
directors?: null | string | URL | Array<string | URL>
|
103
|
+
writers?: null | string | URL | Array<string | URL>
|
104
|
+
duration?: null | number
|
105
|
+
releaseDate?: null | string // datetime
|
106
|
+
tags?: null | string | Array<string>
|
107
|
+
}
|
108
|
+
type OpenGraphVideoEpisode = OpenGraphMetadata & {
|
109
|
+
type: 'video.episode'
|
110
|
+
actors?: null | string | URL | OGActor | Array<string | URL | OGActor>
|
111
|
+
directors?: null | string | URL | Array<string | URL>
|
112
|
+
writers?: null | string | URL | Array<string | URL>
|
113
|
+
duration?: null | number
|
114
|
+
releaseDate?: null | string // datetime
|
115
|
+
tags?: null | string | Array<string>
|
116
|
+
series?: null | string | URL
|
117
|
+
}
|
118
|
+
type OpenGraphVideoTVShow = OpenGraphMetadata & {
|
119
|
+
type: 'video.tv_show'
|
120
|
+
}
|
121
|
+
type OpenGraphVideoOther = OpenGraphMetadata & {
|
122
|
+
type: 'video.other'
|
123
|
+
}
|
124
|
+
|
125
|
+
export type OGImage = string | OGImageDescriptor | URL
|
126
|
+
type OGImageDescriptor = {
|
127
|
+
url: string | URL
|
128
|
+
secureUrl?: string | URL
|
129
|
+
alt?: string
|
130
|
+
type?: string
|
131
|
+
width?: string | number
|
132
|
+
height?: string | number
|
133
|
+
}
|
134
|
+
type OGAudio = string | OGAudioDescriptor | URL
|
135
|
+
type OGAudioDescriptor = {
|
136
|
+
url: string | URL
|
137
|
+
secureUrl?: string | URL
|
138
|
+
type?: string
|
139
|
+
}
|
140
|
+
type OGVideo = string | OGVideoDescriptor | URL
|
141
|
+
type OGVideoDescriptor = {
|
142
|
+
url: string | URL
|
143
|
+
secureUrl?: string | URL
|
144
|
+
type?: string
|
145
|
+
width?: string | number
|
146
|
+
height?: string | number
|
147
|
+
}
|
148
|
+
|
149
|
+
export type ResolvedOpenGraph =
|
150
|
+
| ResolvedOpenGraphWebsite
|
151
|
+
| ResolvedOpenGraphArticle
|
152
|
+
| ResolvedOpenGraphBook
|
153
|
+
| ResolvedOpenGraphProfile
|
154
|
+
| ResolvedOpenGraphMusicSong
|
155
|
+
| ResolvedOpenGraphMusicAlbum
|
156
|
+
| ResolvedOpenGraphMusicPlaylist
|
157
|
+
| ResolvedOpenGraphRadioStation
|
158
|
+
| ResolvedOpenGraphVideoMovie
|
159
|
+
| ResolvedOpenGraphVideoEpisode
|
160
|
+
| ResolvedOpenGraphVideoTVShow
|
161
|
+
| ResolvedOpenGraphVideoOther
|
162
|
+
| ResolvedOpenGraphMetadata
|
163
|
+
|
164
|
+
type ResolvedOpenGraphMetadata = {
|
165
|
+
determiner?: 'a' | 'an' | 'the' | 'auto' | ''
|
166
|
+
title: AbsoluteTemplateString
|
167
|
+
description?: string
|
168
|
+
emails?: Array<string>
|
169
|
+
phoneNumbers?: Array<string>
|
170
|
+
faxNumbers?: Array<string>
|
171
|
+
siteName?: string
|
172
|
+
locale?: Locale
|
173
|
+
alternateLocale?: Array<Locale>
|
174
|
+
images?: Array<OGImage>
|
175
|
+
audio?: Array<OGAudio>
|
176
|
+
videos?: Array<OGVideo>
|
177
|
+
url: null | URL | string
|
178
|
+
countryName?: string
|
179
|
+
ttl?: number
|
180
|
+
}
|
181
|
+
type ResolvedOpenGraphWebsite = ResolvedOpenGraphMetadata & {
|
182
|
+
type: 'website'
|
183
|
+
}
|
184
|
+
type ResolvedOpenGraphArticle = ResolvedOpenGraphMetadata & {
|
185
|
+
type: 'article'
|
186
|
+
publishedTime?: string // datetime
|
187
|
+
modifiedTime?: string // datetime
|
188
|
+
expirationTime?: string // datetime
|
189
|
+
authors?: Array<string>
|
190
|
+
section?: string
|
191
|
+
tags?: Array<string>
|
192
|
+
}
|
193
|
+
type ResolvedOpenGraphBook = ResolvedOpenGraphMetadata & {
|
194
|
+
type: 'book'
|
195
|
+
isbn?: string
|
196
|
+
releaseDate?: string // datetime
|
197
|
+
authors?: Array<string>
|
198
|
+
tags?: Array<string>
|
199
|
+
}
|
200
|
+
type ResolvedOpenGraphProfile = ResolvedOpenGraphMetadata & {
|
201
|
+
type: 'profile'
|
202
|
+
firstName?: string
|
203
|
+
lastName?: string
|
204
|
+
username?: string
|
205
|
+
gender?: string
|
206
|
+
}
|
207
|
+
type ResolvedOpenGraphMusicSong = ResolvedOpenGraphMetadata & {
|
208
|
+
type: 'music.song'
|
209
|
+
duration?: number
|
210
|
+
albums?: Array<OGAlbum>
|
211
|
+
musicians?: Array<string | URL>
|
212
|
+
}
|
213
|
+
type ResolvedOpenGraphMusicAlbum = ResolvedOpenGraphMetadata & {
|
214
|
+
type: 'music.album'
|
215
|
+
songs?: Array<string | URL | OGSong>
|
216
|
+
musicians?: Array<string | URL>
|
217
|
+
releaseDate?: string // datetime
|
218
|
+
}
|
219
|
+
type ResolvedOpenGraphMusicPlaylist = ResolvedOpenGraphMetadata & {
|
220
|
+
type: 'music.playlist'
|
221
|
+
songs?: Array<string | URL | OGSong>
|
222
|
+
creators?: Array<string | URL>
|
223
|
+
}
|
224
|
+
type ResolvedOpenGraphRadioStation = ResolvedOpenGraphMetadata & {
|
225
|
+
type: 'music.radio_station'
|
226
|
+
creators?: Array<string | URL>
|
227
|
+
}
|
228
|
+
type ResolvedOpenGraphVideoMovie = ResolvedOpenGraphMetadata & {
|
229
|
+
type: 'video.movie'
|
230
|
+
actors?: Array<string | URL | OGActor>
|
231
|
+
directors?: Array<string | URL>
|
232
|
+
writers?: Array<string | URL>
|
233
|
+
duration?: number
|
234
|
+
releaseDate?: string // datetime
|
235
|
+
tags?: Array<string>
|
236
|
+
}
|
237
|
+
type ResolvedOpenGraphVideoEpisode = ResolvedOpenGraphMetadata & {
|
238
|
+
type: 'video.episode'
|
239
|
+
actors?: Array<string | URL | OGActor>
|
240
|
+
directors?: Array<string | URL>
|
241
|
+
writers?: Array<string | URL>
|
242
|
+
duration?: number
|
243
|
+
releaseDate?: string // datetime
|
244
|
+
tags?: Array<string>
|
245
|
+
series?: string | URL
|
246
|
+
}
|
247
|
+
type ResolvedOpenGraphVideoTVShow = ResolvedOpenGraphMetadata & {
|
248
|
+
type: 'video.tv_show'
|
249
|
+
}
|
250
|
+
type ResolvedOpenGraphVideoOther = ResolvedOpenGraphMetadata & {
|
251
|
+
type: 'video.other'
|
252
|
+
}
|
253
|
+
|
254
|
+
type OGSong = {
|
255
|
+
url: string | URL
|
256
|
+
disc?: number
|
257
|
+
track?: number
|
258
|
+
}
|
259
|
+
type OGAlbum = {
|
260
|
+
url: string | URL
|
261
|
+
disc?: number
|
262
|
+
track?: number
|
263
|
+
}
|
264
|
+
type OGActor = {
|
265
|
+
url: string | URL
|
266
|
+
role?: string
|
267
|
+
}
|