@blerp/design 1.2.74 → 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 (83) 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/package.json +1 -1
@@ -0,0 +1,357 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var _taggedTemplateLiteral = require('@babel/runtime/helpers/taggedTemplateLiteral');
6
+ var iconsMaterial = require('@mui/icons-material');
7
+ var BookmarkAddOutlinedIcon = require('@mui/icons-material/BookmarkAddOutlined');
8
+ var BookmarkOutlinedIcon = require('@mui/icons-material/BookmarkOutlined');
9
+ var MoreHorizRoundedIcon = require('@mui/icons-material/MoreHorizRounded');
10
+ require('prop-types');
11
+ var React = require('react');
12
+ var reactPalette = require('react-palette');
13
+ var styled = require('styled-components');
14
+ var ScreenSizeHook = require('./ScreenSizeHook.js');
15
+ var BlerpListViewPremium = require('./BlerpListViewPremium.js');
16
+ var Icons = require('./Icons/Icons.js');
17
+ var index = require('./index.js');
18
+
19
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
20
+
21
+ var _taggedTemplateLiteral__default = /*#__PURE__*/_interopDefaultLegacy(_taggedTemplateLiteral);
22
+ var BookmarkAddOutlinedIcon__default = /*#__PURE__*/_interopDefaultLegacy(BookmarkAddOutlinedIcon);
23
+ var BookmarkOutlinedIcon__default = /*#__PURE__*/_interopDefaultLegacy(BookmarkOutlinedIcon);
24
+ var MoreHorizRoundedIcon__default = /*#__PURE__*/_interopDefaultLegacy(MoreHorizRoundedIcon);
25
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
26
+ var styled__default = /*#__PURE__*/_interopDefaultLegacy(styled);
27
+
28
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6;
29
+ const BlerpImage = styled__default['default'].div(_templateObject || (_templateObject = _taggedTemplateLiteral__default['default'](["\n height: 150px;\n width: 150px;\n background-image: url(", ");\n background-size: cover;\n /* border-radius: 8px; */\n border-radius: 50%;\n position: relative;\n transition: 0.2s;\n\n &:hover {\n transform: scale(1.1);\n }\n"])), props => props.url);
30
+ const zoomIn = styled.keyframes(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral__default['default'](["\n 0% {\n transform: scale(0);\n }\n\n 100%{\n transform: scale(1);\n }\n"])));
31
+ styled__default['default'].div(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral__default['default'](["\n height: 100%;\n width: 100%;\n position: absolute;\n border-radius: 8px;\n transform: scale(0);\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: space-around;\n background-color: ", "D3;\n border: 2px solid ", "D3;\n backdrop-filter: blur(4px);\n animation: ", " 0.2s forwards;\n"])), props => props.theme.colors.notBlack, props => props.theme.colors.notBlack, zoomIn);
32
+ const SaveContainer = styled__default['default'].div(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral__default['default'](["\n position: absolute;\n top: 0;\n right: 0;\n width: 25px;\n height: 25px;\n opacity: 0;\n border-radius: 50%;\n display: flex;\n justify-content: center;\n align-items: center;\n padding: 5px;\n transition: 0.3s;\n background-color: ", ";\n"])), props => props.theme.colors.white);
33
+ const BlerpImageScrim = styled__default['default'].div(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral__default['default'](["\n height: 150px;\n width: 150px;\n background-color: ", "10;\n /* position: absolute; */\n display: flex;\n justify-content: center;\n align-items: center;\n border-radius: 50%;\n /* border-radius: 8px; */\n transition: 0.4s;\n\n &:hover {\n background-color: ", "98;\n }\n\n &:hover ", " {\n opacity: 1;\n }\n"])), props => props.theme.colors.notBlackOverride, props => props.theme.colors.notBlackOverride, SaveContainer);
34
+ styled__default['default'].div(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral__default['default'](["\n display: -webkit-box;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n overflow: hidden;\n margin: 5px 0;\n"])));
35
+ const BlerpListView = _ref => {
36
+ var _bite$image, _bite$image$original, _bite$image2, _bite$image2$original;
37
+
38
+ let {
39
+ bite,
40
+ variantSize,
41
+ isSelected,
42
+ playingState,
43
+ extraInfoComponent,
44
+ primaryActionButton,
45
+ secondaryActionButton,
46
+ handleClickBackground,
47
+ handleClickPlay,
48
+ handleClickSave,
49
+ handleClickThreeDot,
50
+ handleClickUnsave,
51
+ handleClickTitle,
52
+ handleSubtitleClick,
53
+ biteSubtitle,
54
+ isLinkTitle,
55
+ fluid,
56
+ backgroundColor,
57
+ hoverColor,
58
+ props,
59
+ isLocked,
60
+ isPremium,
61
+ handleClickLock,
62
+ handleClickPremium
63
+ } = _ref;
64
+ const [openSave, setOpenSave] = React.useState(false);
65
+ reactPalette.usePalette(bite === null || bite === void 0 ? void 0 : (_bite$image = bite.image) === null || _bite$image === void 0 ? void 0 : (_bite$image$original = _bite$image.original) === null || _bite$image$original === void 0 ? void 0 : _bite$image$original.url);
66
+ const theme = React.useContext(styled.ThemeContext);
67
+ const size = ScreenSizeHook.useWindowSize();
68
+
69
+ let sizeParams;
70
+ const smallSize = {
71
+ width: 300,
72
+ height: 52,
73
+ smallFontSize: "12px",
74
+ fontSize: "16px",
75
+ imageSize: "40px",
76
+ reactionSpacing: 1,
77
+ reactionPadding: "3px",
78
+ reactionSize: "20px",
79
+ buttonSize: "small"
80
+ };
81
+ const mediumSize = {
82
+ width: 375,
83
+ height: 60,
84
+ smallFontSize: "14px",
85
+ fontSize: "18px",
86
+ imageSize: "48px",
87
+ reactionSpacing: 1,
88
+ reactionPadding: "3px",
89
+ reactionSize: "23px",
90
+ buttonSize: "medium"
91
+ };
92
+ const largeSize = {
93
+ width: 440,
94
+ height: 72,
95
+ smallFontSize: "26px",
96
+ fontSize: "20px",
97
+ imageSize: "56px",
98
+ reactionSpacing: 1,
99
+ reactionPadding: "5px",
100
+ reactionSize: "30px",
101
+ buttonFontSize: "large"
102
+ };
103
+
104
+ if (!variantSize) {
105
+ if (fluid) {
106
+ sizeParams = {
107
+ width: "100%",
108
+ height: 52,
109
+ smallFontSize: "14px",
110
+ fontSize: "18px",
111
+ imageSize: "48px",
112
+ reactionSpacing: 1,
113
+ reactionPadding: "3px",
114
+ reactionSize: "23px",
115
+ buttonSize: "medium"
116
+ };
117
+ } else if (size.width <= 400) {
118
+ sizeParams = smallSize;
119
+ } else if (size.width <= 900) {
120
+ sizeParams = mediumSize;
121
+ } else if (size.width > 900) {
122
+ sizeParams = largeSize;
123
+ }
124
+ } else {
125
+ if (variantSize === "small") {
126
+ sizeParams = smallSize;
127
+ } else if (variantSize === "medium") {
128
+ sizeParams = mediumSize;
129
+ } else if (variantSize === "large") {
130
+ sizeParams = largeSize;
131
+ }
132
+ }
133
+
134
+ if (isPremium) {
135
+ return /*#__PURE__*/React__default['default'].createElement(BlerpListViewPremium.BlerpListViewPremium, {
136
+ bite: bite,
137
+ variantSize: variantSize,
138
+ isSelected: isSelected,
139
+ playingState: playingState,
140
+ extraInfoComponent: extraInfoComponent,
141
+ primaryActionButton: primaryActionButton,
142
+ secondaryActionButton: secondaryActionButton,
143
+ handleClickBackground: handleClickBackground,
144
+ handleClickPlay: handleClickPlay,
145
+ handleClickSave: handleClickSave,
146
+ handleClickThreeDot: handleClickThreeDot,
147
+ handleClickUnsave: handleClickUnsave,
148
+ handleClickTitle: handleClickTitle,
149
+ biteSubtitle: biteSubtitle,
150
+ handleSubtitleClick: handleSubtitleClick,
151
+ isLinkTitle: isLinkTitle,
152
+ fluid: fluid,
153
+ props: props,
154
+ isLocked: isLocked,
155
+ isPremium: isPremium,
156
+ handleClickLock: handleClickLock,
157
+ handleClickPremium: handleClickPremium,
158
+ backgroundColor: backgroundColor,
159
+ hoverColor: hoverColor
160
+ });
161
+ }
162
+
163
+ return /*#__PURE__*/React__default['default'].createElement(index.Box, {
164
+ sx: {
165
+ width: sizeParams.width,
166
+ minWidth: fluid && "300px",
167
+ borderRadius: "8px",
168
+ border: "2px transparent",
169
+ bgcolor: backgroundColor ? backgroundColor : "grey2.main",
170
+ backgroundOrigin: "border-box",
171
+ backgroundClip: "content-box, border-box",
172
+ boxShadow: "2px 2px 4px 0px #999999a1;",
173
+ transition: "0.3s",
174
+ "&:hover": {
175
+ bgcolor: hoverColor ? hoverColor : "grey3.main"
176
+ }
177
+ }
178
+ }, /*#__PURE__*/React__default['default'].createElement(index.Box, {
179
+ onClick: e => {
180
+ e.stopPropagation();
181
+ handleClickBackground();
182
+ },
183
+ sx: {
184
+ width: "calc(100% - 4px)",
185
+ height: sizeParams.height,
186
+ display: "flex",
187
+ flexDirection: "row",
188
+ alignItems: "center",
189
+ justifyContent: "space-between",
190
+ borderRadius: "8px",
191
+ border: "2px solid transparent",
192
+ borderRightWidth: "0px",
193
+ borderLeftWidth: "0px",
194
+ margin: "0 auto",
195
+ borderBottomColor: extraInfoComponent && theme.colors.grey3,
196
+ transition: "0.3s",
197
+ position: "relative"
198
+ }
199
+ }, /*#__PURE__*/React__default['default'].createElement(index.Stack, {
200
+ direction: "row",
201
+ width: "70%",
202
+ alignItems: "center",
203
+ sx: {
204
+ cursor: "pointer"
205
+ }
206
+ }, /*#__PURE__*/React__default['default'].createElement(BlerpImage, {
207
+ style: {
208
+ width: sizeParams.imageSize,
209
+ height: sizeParams.imageSize,
210
+ boxShadow: "0px 0px 0px 0px #999999a1;"
211
+ },
212
+ url: bite === null || bite === void 0 ? void 0 : (_bite$image2 = bite.image) === null || _bite$image2 === void 0 ? void 0 : (_bite$image2$original = _bite$image2.original) === null || _bite$image2$original === void 0 ? void 0 : _bite$image2$original.url
213
+ }, /*#__PURE__*/React__default['default'].createElement(BlerpImageScrim, {
214
+ style: {
215
+ width: sizeParams.imageSize,
216
+ height: sizeParams.imageSize
217
+ },
218
+ onClick: e => {
219
+ if (handleClickPlay) {
220
+ e.stopPropagation();
221
+ handleClickPlay();
222
+ }
223
+ }
224
+ }, playingState === "playing" ? /*#__PURE__*/React__default['default'].createElement(iconsMaterial.PauseCircleOutlineRounded, {
225
+ sx: {
226
+ width: "30px",
227
+ height: "30px",
228
+ color: "white.override"
229
+ }
230
+ }) : /*#__PURE__*/React__default['default'].createElement(Icons.PlayOutlineIcon, {
231
+ sx: {
232
+ width: "30px",
233
+ height: "30px",
234
+ color: "white.override"
235
+ }
236
+ }))), /*#__PURE__*/React__default['default'].createElement(index.Stack, {
237
+ direction: "column",
238
+ alignItems: "flex-start",
239
+ sx: {
240
+ width: "80%"
241
+ }
242
+ }, isLinkTitle ? /*#__PURE__*/React__default['default'].createElement("a", {
243
+ href: "/soundbites/".concat(bite._id),
244
+ style: {
245
+ textDecoration: "none",
246
+ width: "100%"
247
+ }
248
+ }, /*#__PURE__*/React__default['default'].createElement(index.Text, {
249
+ textAlign: "left",
250
+ fontSize: sizeParams.fontSize,
251
+ noWrap: true,
252
+ width: "100%",
253
+ marginLeft: "10px",
254
+ color: "white.override",
255
+ sx: {
256
+ ":hover": {
257
+ textDecoration: handleClickTitle ? "underline" : "none"
258
+ }
259
+ },
260
+ onClick: e => {
261
+ if (handleClickTitle) {
262
+ e.stopPropagation();
263
+ handleClickTitle();
264
+ }
265
+ }
266
+ }, bite.title)) : /*#__PURE__*/React__default['default'].createElement(index.Text, {
267
+ textAlign: "left",
268
+ fontSize: sizeParams.fontSize,
269
+ noWrap: true,
270
+ width: "100%",
271
+ marginLeft: "10px",
272
+ sx: {
273
+ ":hover": {
274
+ textDecoration: handleClickTitle ? "underline" : "none"
275
+ }
276
+ },
277
+ onClick: e => {
278
+ if (handleClickTitle) {
279
+ e.stopPropagation();
280
+ handleClickTitle();
281
+ }
282
+ }
283
+ }, bite.title), biteSubtitle && /*#__PURE__*/React__default['default'].createElement(index.Text, {
284
+ textAlign: "left",
285
+ fontSize: sizeParams.smallFontSize,
286
+ noWrap: true,
287
+ marginLeft: "10px",
288
+ width: "100%",
289
+ color: "white.override",
290
+ sx: {},
291
+ onClick: e => {
292
+ if (handleSubtitleClick) {
293
+ e.stopPropagation();
294
+ handleSubtitleClick();
295
+ }
296
+ }
297
+ }, biteSubtitle))), /*#__PURE__*/React__default['default'].createElement(index.Stack, {
298
+ direction: "row"
299
+ }, primaryActionButton ? primaryActionButton : bite !== null && bite !== void 0 && bite.saved ? /*#__PURE__*/React__default['default'].createElement(index.IconButton, {
300
+ onClick: e => {
301
+ e.stopPropagation();
302
+ handleClickUnsave();
303
+ setOpenSave(true);
304
+ },
305
+ sx: {
306
+ backgroundColor: "white.override",
307
+ color: "starling.main",
308
+ padding: "5px",
309
+ marginRight: "10px",
310
+ ":hover": {
311
+ backgroundColor: "grey3.main"
312
+ }
313
+ }
314
+ }, /*#__PURE__*/React__default['default'].createElement(BookmarkOutlinedIcon__default['default'], {
315
+ sx: {
316
+ color: "notBlack.override"
317
+ }
318
+ })) : /*#__PURE__*/React__default['default'].createElement(index.IconButton, {
319
+ onClick: e => {
320
+ e.stopPropagation();
321
+ handleClickSave();
322
+ setOpenSave(true);
323
+ },
324
+ sx: {
325
+ backgroundColor: "white.override",
326
+ color: "starling.main",
327
+ padding: "5px",
328
+ marginRight: "10px",
329
+ ":hover": {
330
+ backgroundColor: "grey3.main"
331
+ }
332
+ }
333
+ }, /*#__PURE__*/React__default['default'].createElement(BookmarkAddOutlinedIcon__default['default'], {
334
+ sx: {
335
+ color: "notBlack.override"
336
+ }
337
+ })), secondaryActionButton || /*#__PURE__*/React__default['default'].createElement(index.IconButton, {
338
+ onClick: e => {
339
+ handleClickThreeDot(e);
340
+ },
341
+ sx: {
342
+ backgroundColor: "white.override",
343
+ padding: "5px",
344
+ marginRight: "10px",
345
+ ":hover": {
346
+ backgroundColor: "grey3.main"
347
+ }
348
+ }
349
+ }, /*#__PURE__*/React__default['default'].createElement(MoreHorizRoundedIcon__default['default'], {
350
+ sx: {
351
+ color: "notBlack.override"
352
+ }
353
+ })))), extraInfoComponent && extraInfoComponent);
354
+ };
355
+
356
+ exports.BlerpListView = BlerpListView;
357
+ exports.default = BlerpListView;