@blerp/design 1.2.73 → 1.2.75

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.
Files changed (86) hide show
  1. package/dist/cjs/Blerp/BlerpImageRow.js +167 -0
  2. package/dist/cjs/Blerp/BlerpSavePopup.js +157 -0
  3. package/dist/cjs/Blerp/BlerpTitleRow.js +116 -0
  4. package/dist/cjs/Blerp/BlerpTopRow.js +246 -0
  5. package/dist/cjs/Blerp.js +239 -0
  6. package/dist/cjs/BlerpAudioContextProvider.js +141 -0
  7. package/dist/cjs/BlerpListView.js +357 -0
  8. package/dist/cjs/BlerpListViewPremium.js +404 -0
  9. package/dist/cjs/BlerpListViewSkeleton.js +27 -0
  10. package/dist/cjs/BlerpSkeleton.js +23 -0
  11. package/dist/cjs/CollectionCard.js +402 -0
  12. package/dist/cjs/CollectionListViewPremium.js +368 -0
  13. package/dist/cjs/CollectionSkeleton.js +28 -0
  14. package/dist/cjs/Dropdown.js +283 -0
  15. package/dist/cjs/EllipsisLoader.js +51 -0
  16. package/dist/cjs/GroupCard.js +172 -0
  17. package/dist/cjs/Icons/Icons.js +606 -0
  18. package/dist/cjs/ImageUploadModal.js +278 -0
  19. package/dist/cjs/Lotties/JiggleLock.json.js +2762 -0
  20. package/dist/cjs/Lotties/LottieAnimation.js +32 -0
  21. package/dist/cjs/NewBlerp.js +740 -0
  22. package/dist/cjs/NewBlerpTest.js +808 -0
  23. package/dist/cjs/NewCollectionModal.js +403 -0
  24. package/dist/cjs/PremiumCollectionCard.js +511 -0
  25. package/dist/cjs/PurchaseModals/CheckoutModal.js +39 -0
  26. package/dist/cjs/PurchaseModals/PremiumBlerpCheckoutModal.js +39 -0
  27. package/dist/cjs/PurchaseModals/PremiumCollectionCheckoutModal.js +39 -0
  28. package/dist/cjs/PurchaseModals/PremiumSubscriptionCheckoutModal.js +39 -0
  29. package/dist/cjs/ReactionButtons.js +65 -0
  30. package/dist/cjs/ScreenSizeHook.js +34 -0
  31. package/dist/cjs/SnackbarContextProvider.js +166 -0
  32. package/dist/cjs/Theme.js +255 -0
  33. package/dist/cjs/Toggle.js +59 -0
  34. package/dist/cjs/UserCard.js +141 -0
  35. package/dist/cjs/UserPage/LibraryControls.js +315 -0
  36. package/dist/cjs/UserPage/UserLibraryHeader.js +93 -0
  37. package/dist/cjs/UserPage/UserProfileHeader.js +283 -0
  38. package/dist/cjs/UsernameWithPopout.js +93 -0
  39. package/dist/cjs/colors.js +368 -0
  40. package/dist/cjs/icons.js +161 -0
  41. package/dist/cjs/index.js +449 -0
  42. package/dist/esm/Blerp/BlerpImageRow.js +157 -0
  43. package/dist/esm/Blerp/BlerpSavePopup.js +147 -0
  44. package/dist/esm/Blerp/BlerpTitleRow.js +108 -0
  45. package/dist/esm/Blerp/BlerpTopRow.js +236 -0
  46. package/dist/esm/Blerp.js +230 -0
  47. package/dist/esm/BlerpAudioContextProvider.js +132 -0
  48. package/dist/esm/BlerpListView.js +344 -0
  49. package/dist/esm/BlerpListViewPremium.js +391 -0
  50. package/dist/esm/BlerpListViewSkeleton.js +17 -0
  51. package/dist/esm/BlerpSkeleton.js +13 -0
  52. package/dist/esm/CollectionCard.js +392 -0
  53. package/dist/esm/CollectionListViewPremium.js +354 -0
  54. package/dist/esm/CollectionSkeleton.js +18 -0
  55. package/dist/esm/Dropdown.js +273 -0
  56. package/dist/esm/EllipsisLoader.js +41 -0
  57. package/dist/esm/GroupCard.js +162 -0
  58. package/dist/esm/Icons/Icons.js +571 -0
  59. package/dist/esm/ImageUploadModal.js +265 -0
  60. package/dist/esm/Lotties/JiggleLock.json.js +2747 -0
  61. package/dist/esm/Lotties/LottieAnimation.js +25 -0
  62. package/dist/esm/NewBlerp.js +719 -0
  63. package/dist/esm/NewBlerpTest.js +787 -0
  64. package/dist/esm/NewCollectionModal.js +391 -0
  65. package/dist/esm/PremiumCollectionCard.js +498 -0
  66. package/dist/esm/PurchaseModals/CheckoutModal.js +33 -0
  67. package/dist/esm/PurchaseModals/PremiumBlerpCheckoutModal.js +33 -0
  68. package/dist/esm/PurchaseModals/PremiumCollectionCheckoutModal.js +33 -0
  69. package/dist/esm/PurchaseModals/PremiumSubscriptionCheckoutModal.js +33 -0
  70. package/dist/esm/ReactionButtons.js +57 -0
  71. package/dist/esm/ScreenSizeHook.js +30 -0
  72. package/dist/esm/SnackbarContextProvider.js +154 -0
  73. package/dist/esm/Theme.js +246 -0
  74. package/dist/esm/Toggle.js +49 -0
  75. package/dist/esm/UserCard.js +133 -0
  76. package/dist/esm/UserPage/LibraryControls.js +301 -0
  77. package/dist/esm/UserPage/UserLibraryHeader.js +87 -0
  78. package/dist/esm/UserPage/UserProfileHeader.js +268 -0
  79. package/dist/esm/UsernameWithPopout.js +85 -0
  80. package/dist/esm/colors.js +360 -0
  81. package/dist/esm/icons.js +159 -0
  82. package/dist/esm/index.js +336 -0
  83. package/dist/index.cjs.js +683 -662
  84. package/dist/index.esm.js +683 -661
  85. package/dist/index.umd.js +683 -665
  86. package/package.json +6 -5
@@ -0,0 +1,498 @@
1
+ import _taggedTemplateLiteral from '@babel/runtime/helpers/taggedTemplateLiteral';
2
+ import BookmarkRounded from '@mui/icons-material/BookmarkRounded';
3
+ import BookmarkAddOutlinedIcon from '@mui/icons-material/BookmarkAddOutlined';
4
+ import React, { useState } from 'react';
5
+ import { ColorExtractor } from 'react-color-extractor';
6
+ import { usePalette } from 'react-palette';
7
+ import { Box, Stack, Text, Button } from './index.js';
8
+ import styled from 'styled-components';
9
+ import LockRoundedIcon from '@mui/icons-material/LockRounded';
10
+ import LottieAnimation from './Lotties/LottieAnimation.js';
11
+ import JiggleLock from './Lotties/JiggleLock.json.js';
12
+ import { DiamondIcon, PresentGiftIcon } from './Icons/Icons.js';
13
+
14
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6;
15
+ //primary and secondary action buttons
16
+
17
+ const YellowHoverBorder = styled.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n position: absolute;\n height: 105%;\n width: 105%;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n border: 4px solid rgb(255, 225, 76);\n border-radius: 20px;\n transition: opacity 0.3s ease-in-out;\n /* Opacity should be changed to \"1\" onHover of this component's parent */\n opacity: 0;\n"])));
18
+ const LineClamp = styled.div(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n display: -webkit-box;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n overflow: hidden;\n margin: 5px 0;\n max-width: 92%;\n"])));
19
+ const TopPill = styled.div(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n display: flex;\n justify-content: center;\n align-items: center;\n height: 32px;\n width: ", ";\n position: absolute;\n top: 8px;\n left: 8px;\n border-radius: 20px;\n overflow: hidden;\n transition: width 0.3s ease-in-out;\n"])), props => props.isLocked ? props.collectionHovered ? "90%" : "70%" : "45%");
20
+ const TopPillBackground = styled.div(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n height: 32px;\n width: 100%;\n position: absolute;\n background-color: ", ";\n opacity: 0.5;\n"])), props => props.theme.colors.notBlackOverride);
21
+ const LockedScrim = styled.div(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["\n z-index: -1;\n padding-bottom: 8px;\n display: flex;\n flex-direction: column;\n justify-content: flex-end;\n align-items: center;\n z-index: 1;\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n overflow: \"hidden\";\n transition: backdrop-filter 0.4s, opacity 0.5s ease-in-out;\n opacity: ", ";\n backdrop-filter: ", ";\n"])), props => !props.collectionHovered ? "0" : "1", props => props.collectionHovered ? "blur(3px)" : "none");
22
+ const LockedScrimBackground = styled.div(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral(["\n position: absolute;\n height: 100%;\n width: 100%;\n top: 0;\n /* transition: opacity 0.3s ease-in-out; */\n\n background-color: ", ";\n\n opacity: ", ";\n"])), props => props.theme.colors.notBlackOverride, props => props.collectionHovered ? "0.5" : "0");
23
+ const PremiumCollectionCard = _ref => {
24
+ var _collection$image, _collection$image$ori, _collection$image2, _collection$image2$or, _collection$image3, _collection$image3$or, _collection$ownerObje, _collection$ownerObje2, _collection$ownerObje3, _collection$image4, _collection$image4$or;
25
+
26
+ let {
27
+ collection,
28
+ variantSize,
29
+ handleClickBackground,
30
+ handleClickSave,
31
+ handleClickView,
32
+ handleClickUnlock,
33
+ handleClickPrimaryAction,
34
+ handleClickSecondaryAction,
35
+ primaryActionButton,
36
+ secondaryActionButton,
37
+ bottomLeftIcon,
38
+ handleClickBottomLeftIcon,
39
+ premiumDiamondPill,
40
+ fluid,
41
+ fontSize,
42
+ isLink,
43
+ isLocked,
44
+ overrideViewText,
45
+ hideUnlockPlatformText,
46
+ hidePremiumLockIcon,
47
+ unlockPlatformText,
48
+ hideCollectionBackground
49
+ } = _ref;
50
+ const [cardColors, setCardColors] = useState(null);
51
+ const [collectionHovered, setCollectionHovered] = useState(false);
52
+ const {
53
+ data,
54
+ loading,
55
+ error
56
+ } = usePalette(collection === null || collection === void 0 ? void 0 : (_collection$image = collection.image) === null || _collection$image === void 0 ? void 0 : (_collection$image$ori = _collection$image.original) === null || _collection$image$ori === void 0 ? void 0 : _collection$image$ori.url);
57
+ const smallSize = {
58
+ size: "small",
59
+ width: "70px",
60
+ height: "70px"
61
+ };
62
+ const largeSize = {
63
+ size: "large",
64
+ width: "200px",
65
+ height: "200px"
66
+ };
67
+ let sizeParams = largeSize;
68
+
69
+ if (variantSize === "small") {
70
+ sizeParams = smallSize;
71
+ }
72
+
73
+ return /*#__PURE__*/React.createElement(Box, {
74
+ onMouseOver: () => setCollectionHovered(true),
75
+ onMouseLeave: () => setCollectionHovered(false),
76
+ sx: {
77
+ position: "relative",
78
+ display: "flex",
79
+ alignItems: "center",
80
+ width: fluid ? "80%" : sizeParams.width,
81
+ height: fluid ? "80%" : sizeParams.height
82
+ }
83
+ }, /*#__PURE__*/React.createElement(ColorExtractor, {
84
+ style: {
85
+ zIndex: "3"
86
+ },
87
+ src: collection === null || collection === void 0 ? void 0 : (_collection$image2 = collection.image) === null || _collection$image2 === void 0 ? void 0 : (_collection$image2$or = _collection$image2.original) === null || _collection$image2$or === void 0 ? void 0 : _collection$image2$or.url,
88
+ getColors: colors => setCardColors(colors)
89
+ }), /*#__PURE__*/React.createElement(Box, {
90
+ onClick: e => {
91
+ e.stopPropagation();
92
+ if (handleClickBackground) handleClickBackground();
93
+ },
94
+ sx: {
95
+ borderRadius: "8px",
96
+ position: "relative",
97
+ width: fluid ? "90%" : sizeParams.width,
98
+ height: fluid ? "90%" : sizeParams.height,
99
+ cursor: "pointer",
100
+ "& #collection-background-1,#collection-background-2": {
101
+ transform: isLocked ? "rotate(0deg)" : "",
102
+ right: isLocked ? "0" : ""
103
+ },
104
+ ":hover #collection-background-1": {
105
+ transform: isLocked ? "" : "rotate(7deg)",
106
+ height: isLocked ? "" : "91%",
107
+ right: isLocked ? "" : "-11px",
108
+ top: isLocked ? "" : "12px"
109
+ },
110
+ ":hover #collection-background-2": {
111
+ transform: isLocked ? "" : "rotate(14deg)",
112
+ height: isLocked ? "" : "84%",
113
+ right: isLocked ? "" : "-20px",
114
+ top: isLocked ? "" : "24px"
115
+ },
116
+ ":hover #yellow-border": {
117
+ opacity: "1"
118
+ }
119
+ }
120
+ }, variantSize !== "small" ? /*#__PURE__*/React.createElement(React.Fragment, null, isLocked && /*#__PURE__*/React.createElement(YellowHoverBorder, {
121
+ id: "yellow-border"
122
+ }), /*#__PURE__*/React.createElement(Box, {
123
+ sx: {
124
+ backgroundColor: "transparent",
125
+ borderRadius: "12px",
126
+ width: "100%",
127
+ height: "100%",
128
+ position: "absolute",
129
+ top: "0",
130
+ zIndex: "3"
131
+ }
132
+ }), !hideCollectionBackground && /*#__PURE__*/React.createElement(Box, {
133
+ id: "collection-background-1",
134
+ sx: {
135
+ backgroundImage: "linear-gradient(".concat(data.muted || "#444444", ", #444444)"),
136
+ borderRadius: "12px",
137
+ width: "50%",
138
+ height: "94%",
139
+ position: "absolute",
140
+ transform: "rotate(5deg) scale(1)",
141
+ right: "-8px",
142
+ top: "8px",
143
+ zIndex: "2",
144
+ transition: "0.2s ease-out"
145
+ }
146
+ }), !hideCollectionBackground && /*#__PURE__*/React.createElement(Box, {
147
+ id: "collection-background-2",
148
+ sx: {
149
+ backgroundImage: "linear-gradient(".concat(data.darkMuted || "#252525", ", #252525)"),
150
+ borderRadius: "12px",
151
+ width: "50%",
152
+ height: "89%",
153
+ position: "absolute",
154
+ transform: "rotate(10deg) scale(1)",
155
+ right: "-16px",
156
+ top: "16px",
157
+ zIndex: "1",
158
+ transition: "0.2s ease-out"
159
+ }
160
+ }), /*#__PURE__*/React.createElement(Box, {
161
+ sx: {
162
+ backgroundImage: "linear-gradient(".concat(data.vibrant || "#000000", "9a, #0000007a), url(").concat(collection === null || collection === void 0 ? void 0 : (_collection$image3 = collection.image) === null || _collection$image3 === void 0 ? void 0 : (_collection$image3$or = _collection$image3.original) === null || _collection$image3$or === void 0 ? void 0 : _collection$image3$or.url, ")"),
163
+ backgroundSize: "cover",
164
+ backgroundPosition: "center",
165
+ backgroundRepeat: "no-repeat",
166
+ width: "100%",
167
+ height: "100%",
168
+ borderRadius: "12px",
169
+ display: "flex",
170
+ justifyContent: "center",
171
+ alignItems: "center",
172
+ position: "absolute",
173
+ zIndex: "3",
174
+ overflow: "hidden"
175
+ }
176
+ }, !isLocked ? /*#__PURE__*/React.createElement(Box, {
177
+ sx: {
178
+ backgroundImage: "linear-gradient(".concat(data.muted || "#000000", "7a, #0000007a)"),
179
+ zIndex: "3",
180
+ paddingBottom: "8px",
181
+ display: "flex",
182
+ flexDirection: "column",
183
+ justifyContent: "flex-end",
184
+ alignItems: "center",
185
+ position: "absolute",
186
+ top: "0",
187
+ bottom: "0",
188
+ left: "0",
189
+ right: "0",
190
+ overflow: "hidden",
191
+ transition: "opacity .3s ease-in-out",
192
+ opacity: collectionHovered ? "1" : "0"
193
+ }
194
+ }) : /*#__PURE__*/React.createElement(React.Fragment, null), premiumDiamondPill ? premiumDiamondPill : /*#__PURE__*/React.createElement(TopPill, {
195
+ style: {
196
+ zIndex: "3"
197
+ },
198
+ collectionHovered: collectionHovered,
199
+ isLocked: isLocked
200
+ }, /*#__PURE__*/React.createElement(TopPillBackground, null), primaryActionButton ? primaryActionButton : collection !== null && collection !== void 0 && collection.saved ? /*#__PURE__*/React.createElement(Stack, {
201
+ sx: {
202
+ position: "absolute",
203
+ top: "2px",
204
+ left: "2px",
205
+ width: "28px",
206
+ height: "28px",
207
+ color: "white.override",
208
+ borderRadius: "50%",
209
+ alignItems: "center",
210
+ justifyContent: "center",
211
+ opacity: isLocked ? "1" : "0",
212
+ "&:hover": {
213
+ backgroundColor: "white.override"
214
+ },
215
+ ":hover svg": {
216
+ color: "starling.main"
217
+ }
218
+ }
219
+ }, /*#__PURE__*/React.createElement(BookmarkRounded, {
220
+ sx: {
221
+ height: ".6em",
222
+ color: "white.override",
223
+ opacity: isLocked ? "1" : "0"
224
+ },
225
+ onClick: e => {
226
+ e.stopPropagation();
227
+ handleClickSave(false);
228
+ }
229
+ })) : /*#__PURE__*/React.createElement(Stack, {
230
+ sx: {
231
+ position: "absolute",
232
+ top: "2px",
233
+ left: "2px",
234
+ width: "28px",
235
+ height: "28px",
236
+ color: "white.override",
237
+ borderRadius: "50%",
238
+ alignItems: "center",
239
+ justifyContent: "center",
240
+ opacity: isLocked ? "1" : "0",
241
+ "&:hover": {
242
+ backgroundColor: "white.override"
243
+ },
244
+ ":hover svg": {
245
+ color: "starling.main"
246
+ }
247
+ }
248
+ }, /*#__PURE__*/React.createElement(BookmarkAddOutlinedIcon, {
249
+ onClick: e => {
250
+ e.stopPropagation();
251
+ handleClickSave(true);
252
+ },
253
+ sx: {
254
+ height: ".6em",
255
+ color: "white.override",
256
+ opacity: isLocked ? "1" : "0"
257
+ }
258
+ })), /*#__PURE__*/React.createElement(Stack, {
259
+ sx: {
260
+ zIndex: "1",
261
+ position: "relative",
262
+ right: "4px"
263
+ },
264
+ direction: "row",
265
+ alignItems: "center"
266
+ }, /*#__PURE__*/React.createElement(DiamondIcon, {
267
+ sx: {
268
+ color: "white.override",
269
+ height: ".6em",
270
+ position: "relative",
271
+ left: "4px"
272
+ }
273
+ }), /*#__PURE__*/React.createElement(Text, {
274
+ sx: {
275
+ color: "white.override",
276
+ fontWeight: "lighter",
277
+ fontSize: ".8em"
278
+ }
279
+ }, "Premium")), !hidePremiumLockIcon && /*#__PURE__*/React.createElement(Stack, null, /*#__PURE__*/React.createElement(LockRoundedIcon, {
280
+ sx: {
281
+ position: "absolute",
282
+ top: "8px",
283
+ right: "5px",
284
+ height: ".6em",
285
+ color: "white.override",
286
+ paddingRight: "8px",
287
+ opacity: isLocked ? collectionHovered ? "0" : "1" : "0",
288
+ transition: "opacity .2s ease-in-out"
289
+ },
290
+ onClick: e => {
291
+ e.stopPropagation();
292
+ handleClickSave(false);
293
+ }
294
+ }))), secondaryActionButton ? secondaryActionButton : /*#__PURE__*/React.createElement(Stack, {
295
+ sx: {
296
+ zIndex: "4",
297
+ justifyContent: "center",
298
+ alignItems: "center",
299
+ position: "absolute",
300
+ width: "28px",
301
+ height: "28px",
302
+ borderRadius: "50%",
303
+ top: "8px",
304
+ right: "8px",
305
+ padding: "2px",
306
+ transition: "all .1s ease-in-out",
307
+ "&:hover": {
308
+ width: "30px",
309
+ height: "30px",
310
+ top: "7px",
311
+ right: "7px"
312
+ }
313
+ }
314
+ }, /*#__PURE__*/React.createElement(Stack, {
315
+ onClick: e => {
316
+ e.stopPropagation(); // NEEDS TO DIRECT TO CREATOR'S PROFILE
317
+
318
+ handleClickSecondaryAction();
319
+ },
320
+ sx: {
321
+ position: "absolute",
322
+ width: "100%",
323
+ height: "100%",
324
+ backgroundColor: "notBlack.override",
325
+ zIndex: "3",
326
+ borderRadius: "50%",
327
+ opacity: ".7",
328
+ "&:hover": {
329
+ backgroundColor: "ibisRed.main",
330
+ opacity: "1"
331
+ }
332
+ }
333
+ }), /*#__PURE__*/React.createElement("img", {
334
+ src: (collection === null || collection === void 0 ? void 0 : (_collection$ownerObje = collection.ownerObject) === null || _collection$ownerObje === void 0 ? void 0 : (_collection$ownerObje2 = _collection$ownerObje.profileImage) === null || _collection$ownerObje2 === void 0 ? void 0 : (_collection$ownerObje3 = _collection$ownerObje2.original) === null || _collection$ownerObje3 === void 0 ? void 0 : _collection$ownerObje3.url) || "https://cdn.blerp.com/design/web/account-white-check.svg",
335
+ style: {
336
+ width: "100%",
337
+ height: "100%",
338
+ zIndex: "5",
339
+ borderRadius: "50%",
340
+ pointerEvents: "none"
341
+ }
342
+ })), bottomLeftIcon ? bottomLeftIcon : /*#__PURE__*/React.createElement(Stack, {
343
+ sx: {
344
+ zIndex: "4",
345
+ justifyContent: "center",
346
+ alignItems: "center",
347
+ position: "absolute",
348
+ width: "20px",
349
+ height: "20px",
350
+ borderRadius: "50%",
351
+ bottom: "8px",
352
+ right: "8px",
353
+ padding: "2px",
354
+ transition: "all .1s ease-in-out",
355
+ "&:hover": {
356
+ width: "24px",
357
+ height: "24px",
358
+ bottom: "8px",
359
+ right: "8px"
360
+ }
361
+ },
362
+ onClick: e => {
363
+ e.stopPropagation();
364
+ handleClickBottomLeftIcon();
365
+ }
366
+ }, /*#__PURE__*/React.createElement(PresentGiftIcon, {
367
+ sx: {
368
+ position: "absolute",
369
+ width: "100%",
370
+ height: "100%",
371
+ color: "white.override",
372
+ // backgroundColor: "grey4.main",
373
+ zIndex: "4",
374
+ borderRadius: "50%",
375
+ opacity: "1",
376
+ "&:hover": {
377
+ padding: "4px",
378
+ backgroundColor: "grey7.override",
379
+ opacity: "1"
380
+ }
381
+ }
382
+ })), isLink ? /*#__PURE__*/React.createElement("a", {
383
+ href: "/sound-collection/".concat(collection._id),
384
+ style: {
385
+ color: "white",
386
+ textDecoration: "none"
387
+ }
388
+ }, /*#__PURE__*/React.createElement(LineClamp, null, /*#__PURE__*/React.createElement(Text, {
389
+ fontSize: fontSize ? fontSize : "22px",
390
+ color: "white.override",
391
+ textAlign: "center",
392
+ sx: {
393
+ zIndex: isLocked ? "1" : "3",
394
+ ":hover": {
395
+ textDecoration: "underline"
396
+ }
397
+ }
398
+ }, collection === null || collection === void 0 ? void 0 : collection.title))) : /*#__PURE__*/React.createElement(LineClamp, null, /*#__PURE__*/React.createElement(Text, {
399
+ sx: {
400
+ zIndex: isLocked ? "1" : "3"
401
+ },
402
+ fontSize: fontSize ? fontSize : "22px",
403
+ color: "white.override",
404
+ textAlign: "center"
405
+ }, collection === null || collection === void 0 ? void 0 : collection.title)), isLocked ? /*#__PURE__*/React.createElement(LockedScrim, {
406
+ collectionHovered: collectionHovered
407
+ }, /*#__PURE__*/React.createElement(LockedScrimBackground, {
408
+ collectionHovered: collectionHovered
409
+ }), /*#__PURE__*/React.createElement(Stack, {
410
+ sx: {
411
+ position: "absolute",
412
+ bottom: "104px"
413
+ }
414
+ }, /*#__PURE__*/React.createElement(LottieAnimation, {
415
+ lotti: JiggleLock,
416
+ height: 60,
417
+ width: 240,
418
+ style: {
419
+ margin: "0px -64px"
420
+ }
421
+ })), !hideUnlockPlatformText && (unlockPlatformText ? /*#__PURE__*/React.createElement(Text, {
422
+ sx: {
423
+ color: "white.override",
424
+ textAlign: "center",
425
+ lineHeight: "1",
426
+ margin: "4px 0",
427
+ zIndex: "3",
428
+ fontSize: ".8rem"
429
+ }
430
+ }, unlockPlatformText) : /*#__PURE__*/React.createElement(Text, {
431
+ sx: {
432
+ color: "white.override",
433
+ textAlign: "center",
434
+ lineHeight: "1",
435
+ margin: "4px 0",
436
+ zIndex: "3",
437
+ fontSize: ".8rem"
438
+ }
439
+ }, "Unlock to share ", /*#__PURE__*/React.createElement("br", null), "across platforms")), handleClickView && /*#__PURE__*/React.createElement(Button, {
440
+ disabled: !collectionHovered,
441
+ onClick: e => {
442
+ e.stopPropagation();
443
+ handleClickView();
444
+ },
445
+ variant: "contained",
446
+ sx: {
447
+ width: "70%",
448
+ fontSize: ".8rem",
449
+ padding: "4px 8px",
450
+ margin: "4px 0"
451
+ }
452
+ }, overrideViewText || "VIEW SOUNDPACK"), handleClickUnlock && /*#__PURE__*/React.createElement(Button, {
453
+ disabled: !collectionHovered,
454
+ onClick: e => {
455
+ e.stopPropagation();
456
+ handleClickUnlock();
457
+ },
458
+ variant: "outlined",
459
+ color: "whiteOverride",
460
+ sx: {
461
+ width: "50%",
462
+ margin: "6px 0",
463
+ padding: "2px 8px",
464
+ borderWidth: "2px !important",
465
+ overflow: "hidden"
466
+ }
467
+ }, /*#__PURE__*/React.createElement("div", {
468
+ id: "button-background"
469
+ }), /*#__PURE__*/React.createElement(LockRoundedIcon, {
470
+ sx: {
471
+ color: "white.override",
472
+ zIndex: "3",
473
+ height: ".8rem",
474
+ position: "relative",
475
+ bottom: "1px"
476
+ }
477
+ }), "UNLOCK")) : /*#__PURE__*/React.createElement(React.Fragment, null))) :
478
+ /*#__PURE__*/
479
+ // What to display when variantSize === "small":
480
+ React.createElement(Box, {
481
+ sx: {
482
+ backgroundImage: "linear-gradient(".concat(cardColors ? cardColors[0] : "#000000", "7a, #0000004a), url(").concat(collection === null || collection === void 0 ? void 0 : (_collection$image4 = collection.image) === null || _collection$image4 === void 0 ? void 0 : (_collection$image4$or = _collection$image4.original) === null || _collection$image4$or === void 0 ? void 0 : _collection$image4$or.url, ")"),
483
+ backgroundSize: "cover",
484
+ backgroundPosition: "center",
485
+ backgroundRepeat: "no-repeat",
486
+ width: "100%",
487
+ height: "100%",
488
+ borderRadius: "8px",
489
+ display: "flex",
490
+ justifyContent: "center",
491
+ alignItems: "center",
492
+ position: "relative"
493
+ }
494
+ })));
495
+ };
496
+
497
+ export default PremiumCollectionCard;
498
+ export { PremiumCollectionCard };
@@ -0,0 +1,33 @@
1
+ import { Stack } from '../index.js';
2
+ import React from 'react';
3
+
4
+ const NeedToReplace = props => {
5
+ return /*#__PURE__*/React.createElement(Stack, {
6
+ sx: {
7
+ backgroundColor: "white.main",
8
+ width: "900px",
9
+ height: "550px",
10
+ padding: "32px 56px",
11
+ borderRadius: "8px",
12
+ position: "absolute",
13
+ top: "50%",
14
+ left: "50%",
15
+ justifyContent: "space-between",
16
+ transform: "translate(-50%, -50%)",
17
+ "@media(max-width: 1100px)": {
18
+ overflowY: "scroll",
19
+ width: "550px",
20
+ height: "90vh",
21
+ maxHeight: "800px"
22
+ },
23
+ "@media(max-width: 900px)": {
24
+ width: "100%",
25
+ height: "100%",
26
+ maxHeight: "100vh",
27
+ padding: "32px 0px"
28
+ }
29
+ }
30
+ }, "Need to replace to remove payment dependencies");
31
+ };
32
+
33
+ export default NeedToReplace;
@@ -0,0 +1,33 @@
1
+ import { Stack } from '../index.js';
2
+ import React from 'react';
3
+
4
+ const NeedToReplace = props => {
5
+ return /*#__PURE__*/React.createElement(Stack, {
6
+ sx: {
7
+ backgroundColor: "white.main",
8
+ width: "900px",
9
+ height: "550px",
10
+ padding: "32px 56px",
11
+ borderRadius: "8px",
12
+ position: "absolute",
13
+ top: "50%",
14
+ left: "50%",
15
+ justifyContent: "space-between",
16
+ transform: "translate(-50%, -50%)",
17
+ "@media(max-width: 1100px)": {
18
+ overflowY: "scroll",
19
+ width: "550px",
20
+ height: "90vh",
21
+ maxHeight: "800px"
22
+ },
23
+ "@media(max-width: 900px)": {
24
+ width: "100%",
25
+ height: "100%",
26
+ maxHeight: "100vh",
27
+ padding: "32px 0px"
28
+ }
29
+ }
30
+ }, "Need to replace to remove payment dependencies");
31
+ };
32
+
33
+ export default NeedToReplace;
@@ -0,0 +1,33 @@
1
+ import { Stack } from '../index.js';
2
+ import React from 'react';
3
+
4
+ const NeedToReplace = props => {
5
+ return /*#__PURE__*/React.createElement(Stack, {
6
+ sx: {
7
+ backgroundColor: "white.main",
8
+ width: "900px",
9
+ height: "550px",
10
+ padding: "32px 56px",
11
+ borderRadius: "8px",
12
+ position: "absolute",
13
+ top: "50%",
14
+ left: "50%",
15
+ justifyContent: "space-between",
16
+ transform: "translate(-50%, -50%)",
17
+ "@media(max-width: 1100px)": {
18
+ overflowY: "scroll",
19
+ width: "550px",
20
+ height: "90vh",
21
+ maxHeight: "800px"
22
+ },
23
+ "@media(max-width: 900px)": {
24
+ width: "100%",
25
+ height: "100%",
26
+ maxHeight: "100vh",
27
+ padding: "32px 0px"
28
+ }
29
+ }
30
+ }, "Need to replace to remove payment dependencies");
31
+ };
32
+
33
+ export default NeedToReplace;
@@ -0,0 +1,33 @@
1
+ import { Stack } from '../index.js';
2
+ import React from 'react';
3
+
4
+ const NeedToReplace = props => {
5
+ return /*#__PURE__*/React.createElement(Stack, {
6
+ sx: {
7
+ backgroundColor: "white.main",
8
+ width: "900px",
9
+ height: "550px",
10
+ padding: "32px 56px",
11
+ borderRadius: "8px",
12
+ position: "absolute",
13
+ top: "50%",
14
+ left: "50%",
15
+ justifyContent: "space-between",
16
+ transform: "translate(-50%, -50%)",
17
+ "@media(max-width: 1100px)": {
18
+ overflowY: "scroll",
19
+ width: "550px",
20
+ height: "90vh",
21
+ maxHeight: "800px"
22
+ },
23
+ "@media(max-width: 900px)": {
24
+ width: "100%",
25
+ height: "100%",
26
+ maxHeight: "100vh",
27
+ padding: "32px 0px"
28
+ }
29
+ }
30
+ }, "Need to replace to remove payment dependencies");
31
+ };
32
+
33
+ export default NeedToReplace;
@@ -0,0 +1,57 @@
1
+ import _taggedTemplateLiteral from '@babel/runtime/helpers/taggedTemplateLiteral';
2
+ import React from 'react';
3
+ import styled from 'styled-components';
4
+ import { Grid, Tooltip } from './index.js';
5
+
6
+ var _templateObject;
7
+ const ReactionButton = styled.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n border-radius: 50%;\n width: 30px;\n height: 30px;\n display: flex;\n justify-content: center;\n align-items: center;\n padding: 8px;\n transition: 0.2s;\n margin-right: 0;\n cursor: pointer;\n background-color: ", ";\n\n &:hover {\n background-color: ", ";\n }\n"])), props => props.active ? props.theme.colors.ibisRed : props.theme.colors.grey5, props => props.theme.colors.ibisRed);
8
+ const reactionIconUrls = {
9
+ FUNNY: "https://cdn.blerp.com/blerp_products/Icons/Funny%403x.svg",
10
+ HAPPY: "https://cdn.blerp.com/blerp_products/Icons/Happy%403x.svg",
11
+ SCARY: "https://cdn.blerp.com/blerp_products/Icons/Scary%403x.svg",
12
+ SHOCKED: "https://cdn.blerp.com/blerp_products/Icons/Shock.svg",
13
+ TROLL: "https://cdn.blerp.com/blerp_products/Icons/Troll%403x.svg",
14
+ ANGRY: "https://cdn.blerp.com/blerp_products/Icons/Anger%403x.svg",
15
+ NSFW: "https://cdn.blerp.com/blerp_products/Icons/NSFW%403x.svg",
16
+ MUSIC: "https://cdn.blerp.com/blerp_products/Icons/Music%403x.svg"
17
+ };
18
+
19
+ const ReactionButtons = _ref => {
20
+ let {
21
+ bite,
22
+ handleClick
23
+ } = _ref;
24
+ return /*#__PURE__*/React.createElement(Grid, {
25
+ display: "grid",
26
+ gridTemplateColumns: "repeat(4, 1fr)",
27
+ alignItems: "center",
28
+ marginTop: "16px",
29
+ gap: 1
30
+ }, Object.keys(reactionIconUrls).map(reaction => {
31
+ var _bite$userReactions, _bite$userReactions$r;
32
+
33
+ return /*#__PURE__*/React.createElement(Grid, {
34
+ key: "".concat(reaction, "-button"),
35
+ gridColumn: "span 1",
36
+ display: "flex",
37
+ justifyContent: "center"
38
+ }, /*#__PURE__*/React.createElement(Tooltip, {
39
+ title: reaction
40
+ }, /*#__PURE__*/React.createElement(ReactionButton, {
41
+ active: bite === null || bite === void 0 ? void 0 : (_bite$userReactions = bite.userReactions) === null || _bite$userReactions === void 0 ? void 0 : (_bite$userReactions$r = _bite$userReactions.reactions) === null || _bite$userReactions$r === void 0 ? void 0 : _bite$userReactions$r.includes(reaction),
42
+ onClick: () => {
43
+ var _bite$userReactions2, _bite$userReactions2$;
44
+
45
+ let isRemove = bite === null || bite === void 0 ? void 0 : (_bite$userReactions2 = bite.userReactions) === null || _bite$userReactions2 === void 0 ? void 0 : (_bite$userReactions2$ = _bite$userReactions2.reactions) === null || _bite$userReactions2$ === void 0 ? void 0 : _bite$userReactions2$.includes(reaction);
46
+ handleClick(reaction, isRemove);
47
+ }
48
+ }, /*#__PURE__*/React.createElement("img", {
49
+ alt: "reaction-".concat(reaction),
50
+ width: "100%",
51
+ height: "100%",
52
+ src: reactionIconUrls[reaction]
53
+ }))));
54
+ }));
55
+ };
56
+
57
+ export default ReactionButtons;