@blerp/design 1.2.74 → 1.2.76

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 +2 -1
@@ -0,0 +1,368 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var _taggedTemplateLiteral = require('@babel/runtime/helpers/taggedTemplateLiteral');
6
+ var BookmarkAddOutlinedIcon = require('@mui/icons-material/BookmarkAddOutlined');
7
+ var BookmarkOutlinedIcon = require('@mui/icons-material/BookmarkOutlined');
8
+ var KeyboardArrowRightRoundedIcon = require('@mui/icons-material/KeyboardArrowRightRounded');
9
+ var LockRoundedIcon = require('@mui/icons-material/LockRounded');
10
+ require('prop-types');
11
+ var React = require('react');
12
+ var reactPalette = require('react-palette');
13
+ var styled = require('styled-components');
14
+ var index = require('./index.js');
15
+ var ScreenSizeHook = require('./ScreenSizeHook.js');
16
+ var Icons = require('./Icons/Icons.js');
17
+
18
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
19
+
20
+ var _taggedTemplateLiteral__default = /*#__PURE__*/_interopDefaultLegacy(_taggedTemplateLiteral);
21
+ var BookmarkAddOutlinedIcon__default = /*#__PURE__*/_interopDefaultLegacy(BookmarkAddOutlinedIcon);
22
+ var BookmarkOutlinedIcon__default = /*#__PURE__*/_interopDefaultLegacy(BookmarkOutlinedIcon);
23
+ var KeyboardArrowRightRoundedIcon__default = /*#__PURE__*/_interopDefaultLegacy(KeyboardArrowRightRoundedIcon);
24
+ var LockRoundedIcon__default = /*#__PURE__*/_interopDefaultLegacy(LockRoundedIcon);
25
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
26
+ var styled__default = /*#__PURE__*/_interopDefaultLegacy(styled);
27
+
28
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13;
29
+ const MasterContainer = styled__default['default'].div(_templateObject || (_templateObject = _taggedTemplateLiteral__default['default'](["\n display: flex;\n /* The extra 4 pixels accounts for the width of the border in the transparent BlerpListView border */\n height: ", ";\n width: ", ";\n min-width: ", ";\n border-radius: 8px;\n background-origin: border-box;\n background-clip: content-box, border-box;\n box-shadow: 2px 2px 4px 0px #999999a1;\n position: relative;\n\n #second-button {\n opacity: 0;\n margin-left: 0px;\n margin-right: 15px;\n }\n\n :hover #yellow-border {\n opacity: 1;\n }\n :hover #second-button {\n opacity: 1;\n margin-left: 5px;\n margin-right: 10px;\n }\n :hover #mid-box {\n width: 96%;\n }\n :hover #back-box {\n width: ", ";\n }\n"])), _ref => {
30
+ let {
31
+ sizeParams
32
+ } = _ref;
33
+ return (sizeParams.height += 2) + "px";
34
+ }, _ref2 => {
35
+ let {
36
+ sizeParams
37
+ } = _ref2;
38
+ return sizeParams.width;
39
+ }, _ref3 => {
40
+ let {
41
+ fluid
42
+ } = _ref3;
43
+ return fluid ? "300px" : "0";
44
+ }, props => props.owned ? "102%" : "100%");
45
+ const YellowHoverBorder = styled__default['default'].div(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral__default['default'](["\n position: absolute;\n height: 113%;\n width: 102%;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n border: 3px solid rgb(255, 225, 76);\n border-radius: 14px;\n transition: opacity 0.2s ease-in-out;\n opacity: 0;\n"])));
46
+ const TopBox = styled__default['default'].div(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral__default['default'](["\n z-index: 3;\n border: 2px transparent;\n display: flex;\n justify-content: center;\n align-items: center;\n background-color: ", ";\n height: 100%;\n border-radius: 8px;\n border-right-width: 0px;\n border-left-width: 0px;\n transition: 0.2s;\n position: relative;\n overflow: hidden;\n"])), props => props.theme.colors.white);
47
+ const MidBox = styled__default['default'].div(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral__default['default'](["\n z-index: 2;\n position: absolute;\n background-color: ", ";\n width: 95%;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n height: 100%;\n border-radius: 8px;\n border-right-width: 0px;\n border-left-width: 0px;\n transition: 0.2s;\n overflow: hidden;\n"])), props => props.theme.colors.grey5);
48
+ const BackBox = styled__default['default'].div(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral__default['default'](["\n background-color: blue;\n background-color: ", ";\n position: absolute;\n width: 100%;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n height: 100%;\n border-radius: 8px;\n border-right-width: 0px;\n border-left-width: 0px;\n transition: 0.2s;\n overflow: hidden;\n"])), props => props.theme.colors.grey7);
49
+ const PhotoBackground = styled__default['default'].div(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral__default['default'](["\n position: absolute;\n width: 100%;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n background-image: url(", ");\n background-size: cover;\n border-radius: 8px;\n overflow: hidden;\n background-position: center;\n"])), props => props.url);
50
+ const BlurBackground = styled__default['default'].div(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral__default['default'](["\n position: absolute;\n width: 100%;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n border-radius: 8px;\n backdrop-filter: blur(4px);\n"])));
51
+ const GradientBackground = styled__default['default'].div(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral__default['default'](["\n width: 100%;\n opacity: 0.7;\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n border-radius: 8px;\n width: 100%;\n height: 100%;\n"])));
52
+ const InteractionBox = styled__default['default'].div(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral__default['default'](["\n display: flex;\n justify-content: space-between;\n align-items: center;\n width: calc(100% - 4px);\n height: 100%;\n border-radius: 8px;\n border-right-width: 0px;\n border-left-width: 0px;\n margin: 0 auto;\n transition: 0.2s;\n position: relative;\n"]))); // Box on the left of the Collection that is clicked to save/unsave
53
+
54
+ const SaveBox = styled__default['default'].div(_templateObject10 || (_templateObject10 = _taggedTemplateLiteral__default['default'](["\n position: relative;\n border-radius: 4px;\n transition: 0.2s;\n box-shadow: 0px 0px 0px 0px #999999a1;\n cursor: pointer;\n\n &:hover {\n transform: scale(1.05);\n }\n"])));
55
+ const SaveBoxTop = styled__default['default'].div(_templateObject11 || (_templateObject11 = _taggedTemplateLiteral__default['default'](["\n z-index: 5;\n width: 100%;\n position: relative;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n display: flex;\n justify-content: center;\n align-items: center;\n border-radius: 4px;\n transition: 0.4s;\n\n &:hover {\n background-color: ", "98;\n }\n"])), props => props.theme.colors.notBlackOverride);
56
+ const SaveBoxTopDarken = styled__default['default'].div(_templateObject12 || (_templateObject12 = _taggedTemplateLiteral__default['default'](["\n opacity: 1;\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n border-radius: 4px;\n"])));
57
+ const SaveBoxShadowSquare = styled__default['default'].div(_templateObject13 || (_templateObject13 = _taggedTemplateLiteral__default['default'](["\n position: absolute;\n height: 100%;\n width: 100%;\n border-radius: 4px;\n ", ";\n"])), props => props.depth === "1" ? "\n transform: skewX(-5deg); \n left: 2px; \n height: 94%; \n bottom: 0" : props.depth === "2" ? "\n transform: skewX(-12deg); \n left: 5px; \n height: 83%; \n width:97%;\n bottom: 0" : "");
58
+ const CollectionListViewPremium = _ref4 => {
59
+ var _collection$image, _collection$image$ori, _collection$image2, _collection$image2$or;
60
+
61
+ let {
62
+ collection,
63
+ variantSize,
64
+ extraInfoComponent,
65
+ primaryActionButton,
66
+ secondaryActionButton,
67
+ handleClickBackground,
68
+ handleClickTitle,
69
+ isLinkTitle,
70
+ fluid
71
+ } = _ref4;
72
+ React.useState(false); // Will use this exclusively for picking colors from image...no ColorExtractor
73
+
74
+ const {
75
+ loading,
76
+ data,
77
+ error
78
+ } = reactPalette.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);
79
+ const theme = React.useContext(styled.ThemeContext);
80
+ const size = ScreenSizeHook.useWindowSize();
81
+ console.log("Collleeeeection", collection);
82
+ let sizeParams;
83
+ const smallSize = {
84
+ width: "300px",
85
+ height: 40,
86
+ fontSize: "16px",
87
+ saveBoxSize: "36px",
88
+ reactionSpacing: 1,
89
+ reactionPadding: "3px",
90
+ reactionSize: "20px",
91
+ buttonSize: "small"
92
+ };
93
+ const mediumSize = {
94
+ width: "375px",
95
+ height: 48,
96
+ fontSize: "18px",
97
+ saveBoxSize: "44px",
98
+ reactionSpacing: 1,
99
+ reactionPadding: "3px",
100
+ reactionSize: "23px",
101
+ buttonSize: "medium"
102
+ };
103
+ const largeSize = {
104
+ width: "440px",
105
+ height: 56,
106
+ fontSize: "20px",
107
+ saveBoxSize: "52px",
108
+ reactionSpacing: 1,
109
+ reactionPadding: "5px",
110
+ reactionSize: "30px",
111
+ buttonFontSize: "large"
112
+ };
113
+
114
+ if (!variantSize) {
115
+ if (fluid) {
116
+ sizeParams = {
117
+ width: "100%",
118
+ height: 48,
119
+ fontSize: "18px",
120
+ saveBoxSize: "44px",
121
+ reactionSpacing: 1,
122
+ reactionPadding: "3px",
123
+ reactionSize: "23px",
124
+ buttonSize: "medium"
125
+ };
126
+ } else if (size.width <= 400) {
127
+ sizeParams = smallSize;
128
+ } else if (size.width <= 900) {
129
+ sizeParams = mediumSize;
130
+ } else if (size.width > 900) {
131
+ sizeParams = largeSize;
132
+ }
133
+ } else {
134
+ if (variantSize === "small") {
135
+ sizeParams = smallSize;
136
+ } else if (variantSize === "medium") {
137
+ console.log(variantSize);
138
+ sizeParams = mediumSize;
139
+ } else if (variantSize === "large") {
140
+ sizeParams = largeSize;
141
+ }
142
+ }
143
+
144
+ return (
145
+ /*#__PURE__*/
146
+ // This is the master container. All children's size should be in relation to this box. This box's should not be dependent on its children, but should be dependent on either screen size or the variantSize prop ONLY.
147
+
148
+ /* BIG PICTURE OF COMPONENT:
149
+ Master Container
150
+ - TopBox (solid white background)
151
+ - PhotoBackground (if collection has photo)
152
+ - BlurBackground (always applied)
153
+ - Gradient Background (default is photo color --> black, fall back is white --> black)
154
+ - Interaction Box (holds clickable elements)
155
+ - MidBox (first "shadow")
156
+ - BackBox (second "shadow")
157
+ */
158
+ React__default['default'].createElement(MasterContainer, {
159
+ owned: collection === null || collection === void 0 ? void 0 : collection.owned,
160
+ sizeParams: sizeParams,
161
+ fluid: fluid
162
+ }, !(collection !== null && collection !== void 0 && collection.owned) && /*#__PURE__*/React__default['default'].createElement(YellowHoverBorder, {
163
+ id: "yellow-border"
164
+ }), /*#__PURE__*/React__default['default'].createElement(TopBox, {
165
+ onClick: e => {
166
+ e.stopPropagation();
167
+ handleClickBackground();
168
+ },
169
+ style: {
170
+ borderBottomColor: extraInfoComponent && theme.colors.grey3,
171
+ width: !(collection !== null && collection !== void 0 && collection.owned) ? "100%" : "90%"
172
+ }
173
+ }, /*#__PURE__*/React__default['default'].createElement(PhotoBackground, {
174
+ url: 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
175
+ }), /*#__PURE__*/React__default['default'].createElement(BlurBackground, null), /*#__PURE__*/React__default['default'].createElement(GradientBackground, {
176
+ style: {
177
+ background: "linear-gradient(135deg,".concat(data.vibrant || "rgb(204,204,204)", ", #444444)")
178
+ }
179
+ }), /*#__PURE__*/React__default['default'].createElement(InteractionBox, {
180
+ style: {
181
+ borderBottomColor: extraInfoComponent && theme.colors.grey3
182
+ }
183
+ }, /*#__PURE__*/React__default['default'].createElement(index.Stack, {
184
+ direction: "row",
185
+ justifyContent: "flex-start",
186
+ alignItems: "center",
187
+ sx: {
188
+ position: "relative",
189
+ width: "calc(100% - 180px)",
190
+ left: "2px"
191
+ }
192
+ }, /*#__PURE__*/React__default['default'].createElement(SaveBox, {
193
+ style: {
194
+ width: sizeParams.saveBoxSize,
195
+ height: sizeParams.saveBoxSize
196
+ },
197
+ onClick: e => {
198
+ console.log("handle save/unsave here");
199
+ }
200
+ }, /*#__PURE__*/React__default['default'].createElement(SaveBoxTop, {
201
+ style: {
202
+ width: sizeParams.saveBoxSize,
203
+ height: sizeParams.saveBoxSize,
204
+ background: data.darkVibrant || "#999999"
205
+ }
206
+ }, /*#__PURE__*/React__default['default'].createElement(SaveBoxTopDarken, {
207
+ style: {
208
+ background: "linear-gradient(".concat("rgba(0,0,0,0)", ", #000000)")
209
+ }
210
+ }), collection !== null && collection !== void 0 && collection.saved ? /*#__PURE__*/React__default['default'].createElement(BookmarkOutlinedIcon__default['default'], {
211
+ sx: {
212
+ width: "30px",
213
+ height: "30px",
214
+ color: "white.override",
215
+ position: "relative",
216
+ bottom: "1px"
217
+ }
218
+ }) : /*#__PURE__*/React__default['default'].createElement(BookmarkAddOutlinedIcon__default['default'], {
219
+ sx: {
220
+ width: "30px",
221
+ height: "30px",
222
+ color: "white.override",
223
+ position: "relative",
224
+ bottom: "1px"
225
+ }
226
+ })), !(collection !== null && collection !== void 0 && collection.owned) && /*#__PURE__*/React__default['default'].createElement(SaveBoxShadowSquare, {
227
+ depth: "2",
228
+ style: {
229
+ background: "linear-gradient(".concat(data.darkVibrant || "rgba(180,180,180,1)", ", rgba(0,0,0,1))")
230
+ }
231
+ }), !(collection !== null && collection !== void 0 && collection.owned) && /*#__PURE__*/React__default['default'].createElement(SaveBoxShadowSquare, {
232
+ depth: "1",
233
+ style: {
234
+ background: "linear-gradient(".concat(data.darkVibrant || "rgba(230,230,230,1)", ", rgba(0,0,0,0))")
235
+ }
236
+ })), isLinkTitle ? /*#__PURE__*/React__default['default'].createElement("a", {
237
+ href: "/sound-collection/".concat(collection._id),
238
+ style: {
239
+ textDecoration: "none",
240
+ width: "calc(95% - ".concat(sizeParams.saveBoxSize, ")"),
241
+ position: "relative",
242
+ left: "12px"
243
+ }
244
+ }, /*#__PURE__*/React__default['default'].createElement(index.Text, {
245
+ textAlign: "left",
246
+ fontSize: sizeParams.fontSize,
247
+ noWrap: true,
248
+ color: collection !== null && collection !== void 0 && collection.image ? "white.override" : "notBlack",
249
+ sx: {
250
+ ":hover": {
251
+ textDecoration: handleClickTitle ? "underline" : "none"
252
+ },
253
+ "@media (max-width: 600px)": {
254
+ maxWidth: "133px"
255
+ }
256
+ },
257
+ onClick: e => {
258
+ if (handleClickTitle) {
259
+ e.stopPropagation();
260
+ handleClickTitle();
261
+ }
262
+ }
263
+ }, collection.title)) : /*#__PURE__*/React__default['default'].createElement(index.Text, {
264
+ textAlign: "left",
265
+ fontSize: sizeParams.fontSize,
266
+ noWrap: true,
267
+ color: collection !== null && collection !== void 0 && collection.image ? "white.override" : "notBlack",
268
+ sx: {
269
+ position: "relative",
270
+ left: "12px",
271
+ ":hover": {
272
+ textDecoration: handleClickTitle ? "underline" : "none"
273
+ },
274
+ "@media (max-width: 600px)": {
275
+ maxWidth: "133px"
276
+ }
277
+ },
278
+ onClick: e => {
279
+ console.log("handle non-linkTitle click here");
280
+ }
281
+ }, collection.title)), /*#__PURE__*/React__default['default'].createElement(index.Stack, {
282
+ direction: "row",
283
+ justifyContent: "flex-end",
284
+ alignItems: "center",
285
+ sx: {
286
+ height: "70%"
287
+ }
288
+ }, primaryActionButton ? primaryActionButton : /*#__PURE__*/React__default['default'].createElement(index.Stack, {
289
+ direction: "row",
290
+ justifyContent: "space-around",
291
+ alignItems: "center",
292
+ sx: {
293
+ height: "100%",
294
+ width: "102px",
295
+ position: "relative"
296
+ }
297
+ }, /*#__PURE__*/React__default['default'].createElement(index.Stack, {
298
+ sx: {
299
+ borderRadius: "20px",
300
+ position: "absolute",
301
+ top: "0",
302
+ bottom: "0",
303
+ left: "0",
304
+ right: "0",
305
+ backgroundColor: "notBlack.main",
306
+ opacity: ".5"
307
+ }
308
+ }), /*#__PURE__*/React__default['default'].createElement(Icons.DiamondIcon, {
309
+ sx: {
310
+ opacity: "1",
311
+ zIndex: "2",
312
+ color: "white.override",
313
+ height: "18px"
314
+ }
315
+ }), /*#__PURE__*/React__default['default'].createElement(index.Text, {
316
+ sx: {
317
+ zIndex: "2",
318
+ color: "white.override",
319
+ fontWeight: "lighter",
320
+ fontSize: "14px",
321
+ cursor: "default",
322
+ position: "relative",
323
+ right: !(collection !== null && collection !== void 0 && collection.owned) ? "-2px" : "6px"
324
+ }
325
+ }, "Premium"), !(collection !== null && collection !== void 0 && collection.owned) && /*#__PURE__*/React__default['default'].createElement(LockRoundedIcon__default['default'], {
326
+ sx: {
327
+ zIndex: "2",
328
+ color: "white.override",
329
+ height: "14px"
330
+ }
331
+ })), secondaryActionButton || /*#__PURE__*/React__default['default'].createElement(index.IconButton, {
332
+ id: "second-button",
333
+ onClick: e => {
334
+ console.log("handle secondary button click here");
335
+ },
336
+ sx: {
337
+ padding: "5px",
338
+ transition: "opacity .4s ease-in-out, margin-left .4s ease-in-out, margin-right .4s ease-in-out",
339
+ "&:hover": {
340
+ backgroundColor: "grey6.main"
341
+ }
342
+ }
343
+ }, /*#__PURE__*/React__default['default'].createElement(index.Stack, {
344
+ sx: {
345
+ borderRadius: "20px",
346
+ position: "absolute",
347
+ top: "0",
348
+ bottom: "0",
349
+ left: "0",
350
+ right: "0",
351
+ backgroundColor: "notBlack.main",
352
+ opacity: ".5"
353
+ }
354
+ }), /*#__PURE__*/React__default['default'].createElement(KeyboardArrowRightRoundedIcon__default['default'], {
355
+ sx: {
356
+ zIndex: "2",
357
+ color: "white.override"
358
+ }
359
+ }))))), (collection === null || collection === void 0 ? void 0 : collection.owned) && /*#__PURE__*/React__default['default'].createElement(MidBox, {
360
+ id: "mid-box"
361
+ }), (collection === null || collection === void 0 ? void 0 : collection.owned) && /*#__PURE__*/React__default['default'].createElement(BackBox, {
362
+ id: "back-box"
363
+ }), extraInfoComponent && extraInfoComponent)
364
+ );
365
+ };
366
+
367
+ exports.CollectionListViewPremium = CollectionListViewPremium;
368
+ exports.default = CollectionListViewPremium;
@@ -0,0 +1,28 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var _taggedTemplateLiteral = require('@babel/runtime/helpers/taggedTemplateLiteral');
6
+ var React = require('react');
7
+ var styled = require('styled-components');
8
+
9
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
10
+
11
+ var _taggedTemplateLiteral__default = /*#__PURE__*/_interopDefaultLegacy(_taggedTemplateLiteral);
12
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
13
+ var styled__default = /*#__PURE__*/_interopDefaultLegacy(styled);
14
+
15
+ var _templateObject, _templateObject2;
16
+ const FeaturedCollectionSkeleton = styled__default['default'].div(_templateObject || (_templateObject = _taggedTemplateLiteral__default['default'](["\n position: relative;\n height: 200px;\n width: 200px;\n animation: pulse 3s ease-in-out infinite;\n @keyframes pulse {\n 0% {\n opacity: 0.7;\n }\n 50% {\n opacity: 1;\n }\n 100% {\n opacity: 0.7;\n }\n }\n"])));
17
+ const FeaturedCollectionSquare = styled__default['default'].div(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral__default['default'](["\n position: absolute;\n height: 100%;\n width: 100%;\n border-radius: 8px;\n\n ", ";\n"])), props => props.depth === "1" ? "z-index: 5; background: ".concat(props.theme.colors.grey4, "; ") : props.depth === "2" ? "z-index: 4; \n background: ".concat(props.theme.colors.grey6, "; \n transform: skewX(-5deg); \n left: 8px; \n height: 94%; \n bottom: 0") : props.depth === "3" ? "background: ".concat(props.theme.colors.grey7, ";\n transform: skewX(-10deg); \n left: 15px; \n height: 87%; \n bottom: 0") : "background: ".concat(props.theme.colors.ibisRed));
18
+ const CollectionSkeleton = () => {
19
+ return /*#__PURE__*/React__default['default'].createElement(FeaturedCollectionSkeleton, null, /*#__PURE__*/React__default['default'].createElement(FeaturedCollectionSquare, {
20
+ depth: "1"
21
+ }), /*#__PURE__*/React__default['default'].createElement(FeaturedCollectionSquare, {
22
+ depth: "2"
23
+ }), /*#__PURE__*/React__default['default'].createElement(FeaturedCollectionSquare, {
24
+ depth: "3"
25
+ }));
26
+ };
27
+
28
+ exports.CollectionSkeleton = CollectionSkeleton;
@@ -0,0 +1,283 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var React = require('react');
6
+ var index = require('./index.js');
7
+ var KeyboardArrowDownRoundedIcon = require('@mui/icons-material/KeyboardArrowDownRounded');
8
+
9
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
10
+
11
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
12
+ var KeyboardArrowDownRoundedIcon__default = /*#__PURE__*/_interopDefaultLegacy(KeyboardArrowDownRoundedIcon);
13
+
14
+ // box-shadow: 0px 0px 20px #0000001a;
15
+ // div:focus {
16
+ // border: none !important;
17
+ // box-shadow: 0px 0px 20px #0000001a;
18
+ // }
19
+ // & .MuiPaper-root {
20
+ // background-color: ${(props) => props.theme.colors.grey3};
21
+ // }
22
+ // `;
23
+
24
+ const NewDropdown = _ref => {
25
+ let {
26
+ buttonTitle,
27
+ buttonLabel,
28
+ buttonStyle,
29
+ paperStyle,
30
+ buttonVariant,
31
+ handleOptionClicked,
32
+ startIcon,
33
+ endIcon,
34
+ options
35
+ } = _ref;
36
+ const [anchorEl, setAnchorEl] = React.useState(null);
37
+ const open = Boolean(anchorEl);
38
+
39
+ const handleClick = event => {
40
+ // console.log(options);
41
+ setAnchorEl(event.currentTarget);
42
+ };
43
+
44
+ const handleClose = () => {
45
+ setAnchorEl(null);
46
+ };
47
+
48
+ return /*#__PURE__*/React__default['default'].createElement(React__default['default'].Fragment, null, /*#__PURE__*/React__default['default'].createElement(index.Button, {
49
+ onClick: e => handleClick(e),
50
+ variant: "contained",
51
+ color: "waxwing",
52
+ icon: true,
53
+ disableElevation: true,
54
+ sx: {
55
+ borderRadius: "4px",
56
+ color: "notBlack.main",
57
+ padding: "14px",
58
+ position: "relative",
59
+ ...buttonStyle
60
+ }
61
+ }, buttonLabel && /*#__PURE__*/React__default['default'].createElement(index.Text, {
62
+ noWrap: true,
63
+ fontSize: "0.75em",
64
+ color: "grey4.main",
65
+ fontWeight: "400",
66
+ sx: {
67
+ position: "absolute",
68
+ top: "-9px",
69
+ left: "10px",
70
+ padding: "0 5px",
71
+ backgroundColor: "inherit"
72
+ }
73
+ }, buttonLabel), /*#__PURE__*/React__default['default'].createElement(index.Stack, {
74
+ direction: "row",
75
+ justifyContent: "space-between",
76
+ alignItems: "center",
77
+ width: "100%"
78
+ }, /*#__PURE__*/React__default['default'].createElement(index.Stack, {
79
+ direction: "row",
80
+ alignItems: "center",
81
+ overflow: "hidden",
82
+ width: "".concat(anchorEl === null || anchorEl === void 0 ? void 0 : anchorEl.getBoundingClientRect().width, "px")
83
+ }, startIcon, /*#__PURE__*/React__default['default'].createElement(index.Stack, {
84
+ alignItems: "flex-start"
85
+ }, /*#__PURE__*/React__default['default'].createElement(index.Text, {
86
+ noWrap: true,
87
+ fontSize: "1rem",
88
+ color: "grey5.main",
89
+ marginRight: "16px"
90
+ }, buttonTitle))), endIcon ? endIcon : /*#__PURE__*/React__default['default'].createElement(KeyboardArrowDownRoundedIcon__default['default'], {
91
+ sx: {
92
+ color: "grey5.main"
93
+ },
94
+ fontSize: "medium"
95
+ }))), /*#__PURE__*/React__default['default'].createElement(index.Menu, {
96
+ id: "demo-customized-menu",
97
+ MenuListProps: {
98
+ "aria-labelledby": "demo-customized-button"
99
+ },
100
+ anchorEl: anchorEl,
101
+ open: open,
102
+ onClose: handleClose,
103
+ elevation: 0,
104
+ sx: {
105
+ top: "10px"
106
+ },
107
+ anchorOrigin: {
108
+ vertical: "bottom",
109
+ horizontal: "left"
110
+ },
111
+ transformOrigin: {
112
+ vertical: "top",
113
+ horizontal: "left"
114
+ },
115
+ PaperProps: {
116
+ sx: {
117
+ "& ul": {
118
+ padding: "0"
119
+ },
120
+ width: anchorEl === null || anchorEl === void 0 ? void 0 : anchorEl.getBoundingClientRect().width,
121
+ backgroundColor: "waxwing.main",
122
+ boxShadow: "0px 0px 20px #0000001a;",
123
+ ...paperStyle
124
+ }
125
+ }
126
+ }, options === null || options === void 0 ? void 0 : options.map(option => /*#__PURE__*/React__default['default'].createElement(index.MenuItem, {
127
+ key: "dropdown-".concat(option.name),
128
+ selected: buttonTitle === option.name,
129
+ sx: {
130
+ borderRadius: "4px",
131
+ "&.Mui-selected": {
132
+ backgroundColor: "ibisRed.main"
133
+ },
134
+ ":hover": {
135
+ backgroundColor: "ibisRed.main"
136
+ },
137
+ ":hover p": {
138
+ color: "white.override"
139
+ },
140
+ "&.Mui-selected:hover": {
141
+ backgroundColor: "ibisRed.main"
142
+ },
143
+ "&.Mui-selected p": {
144
+ color: "white.override"
145
+ }
146
+ },
147
+ onClick: () => {
148
+ handleOptionClicked(option);
149
+ handleClose();
150
+ }
151
+ }, option.startImageIcon ? option.startImageIcon : /*#__PURE__*/React__default['default'].createElement(React__default['default'].Fragment, null), /*#__PURE__*/React__default['default'].createElement(index.Text, {
152
+ noWrap: true
153
+ }, option.name), option.endImageIcon ? option.endImageIcon : /*#__PURE__*/React__default['default'].createElement(React__default['default'].Fragment, null)))));
154
+ };
155
+ const Dropdown = _ref2 => {
156
+ let {
157
+ buttonTitle,
158
+ buttonLabel,
159
+ buttonStyle,
160
+ paperStyle,
161
+ buttonVariant,
162
+ handleOptionClicked,
163
+ startIcon,
164
+ endIcon,
165
+ options
166
+ } = _ref2;
167
+ const [anchorEl, setAnchorEl] = React.useState(null);
168
+ const open = Boolean(anchorEl);
169
+
170
+ const handleClick = event => {
171
+ // console.log(options);
172
+ setAnchorEl(event.currentTarget);
173
+ };
174
+
175
+ const handleClose = () => {
176
+ setAnchorEl(null);
177
+ };
178
+
179
+ return /*#__PURE__*/React__default['default'].createElement(React__default['default'].Fragment, null, /*#__PURE__*/React__default['default'].createElement(index.Button, {
180
+ onClick: e => handleClick(e),
181
+ variant: "contained",
182
+ color: "waxwing",
183
+ icon: true,
184
+ disableElevation: true,
185
+ sx: {
186
+ borderRadius: "4px",
187
+ color: "notBlack.main",
188
+ paddingRight: "4px",
189
+ paddingLeft: "4px",
190
+ ...buttonStyle
191
+ }
192
+ }, /*#__PURE__*/React__default['default'].createElement(index.Stack, {
193
+ direction: "row",
194
+ justifyContent: "space-between",
195
+ alignItems: "center",
196
+ width: "100%"
197
+ }, /*#__PURE__*/React__default['default'].createElement(index.Stack, {
198
+ direction: "row",
199
+ alignItems: "center",
200
+ overflow: "hidden",
201
+ width: "".concat(anchorEl === null || anchorEl === void 0 ? void 0 : anchorEl.getBoundingClientRect().width, "px")
202
+ }, startIcon, /*#__PURE__*/React__default['default'].createElement(index.Stack, {
203
+ alignItems: "flex-start",
204
+ marginLeft: "12px"
205
+ }, buttonLabel && /*#__PURE__*/React__default['default'].createElement(index.Text, {
206
+ noWrap: true,
207
+ fontSize: "8px",
208
+ color: "grey4.main",
209
+ fontWeight: "light"
210
+ }, buttonLabel), /*#__PURE__*/React__default['default'].createElement(index.Text, {
211
+ noWrap: true,
212
+ fontSize: "14px",
213
+ color: "grey5.main",
214
+ marginRight: "16px"
215
+ }, buttonTitle))), endIcon ? endIcon : /*#__PURE__*/React__default['default'].createElement(KeyboardArrowDownRoundedIcon__default['default'], {
216
+ sx: {
217
+ color: "grey5.main"
218
+ },
219
+ fontSize: "medium"
220
+ }))), /*#__PURE__*/React__default['default'].createElement(index.Menu, {
221
+ id: "demo-customized-menu",
222
+ MenuListProps: {
223
+ "aria-labelledby": "demo-customized-button"
224
+ },
225
+ anchorEl: anchorEl,
226
+ open: open,
227
+ onClose: handleClose,
228
+ elevation: 0,
229
+ sx: {
230
+ top: "10px"
231
+ },
232
+ anchorOrigin: {
233
+ vertical: "bottom",
234
+ horizontal: "left"
235
+ },
236
+ transformOrigin: {
237
+ vertical: "top",
238
+ horizontal: "left"
239
+ },
240
+ PaperProps: {
241
+ sx: {
242
+ "& ul": {
243
+ padding: "0"
244
+ },
245
+ width: anchorEl === null || anchorEl === void 0 ? void 0 : anchorEl.getBoundingClientRect().width,
246
+ backgroundColor: "waxwing.main",
247
+ boxShadow: "0px 0px 20px #0000001a;",
248
+ ...paperStyle
249
+ }
250
+ }
251
+ }, options === null || options === void 0 ? void 0 : options.map(option => /*#__PURE__*/React__default['default'].createElement(index.MenuItem, {
252
+ key: "dropdown-".concat(option.name),
253
+ selected: buttonTitle === option.name,
254
+ sx: {
255
+ borderRadius: "4px",
256
+ "&.Mui-selected": {
257
+ backgroundColor: "ibisRed.main"
258
+ },
259
+ ":hover": {
260
+ backgroundColor: "ibisRed.main"
261
+ },
262
+ ":hover p": {
263
+ color: "white.override"
264
+ },
265
+ "&.Mui-selected:hover": {
266
+ backgroundColor: "ibisRed.main"
267
+ },
268
+ "&.Mui-selected p": {
269
+ color: "white.override"
270
+ }
271
+ },
272
+ onClick: () => {
273
+ handleOptionClicked(option);
274
+ handleClose();
275
+ }
276
+ }, option.startImageIcon ? option.startImageIcon : /*#__PURE__*/React__default['default'].createElement(React__default['default'].Fragment, null), /*#__PURE__*/React__default['default'].createElement(index.Text, {
277
+ noWrap: true
278
+ }, option.name), option.endImageIcon ? option.endImageIcon : /*#__PURE__*/React__default['default'].createElement(React__default['default'].Fragment, null)))));
279
+ };
280
+
281
+ exports.Dropdown = Dropdown;
282
+ exports.NewDropdown = NewDropdown;
283
+ exports.default = Dropdown;