@pareto-engineering/design-system 2.0.0-alpha.2 → 2.0.0-alpha.20

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 (181) hide show
  1. package/dist/cjs/a/AnimatedCounter/AnimatedCounter.js +16 -29
  2. package/dist/cjs/a/AnimatedCounter/styles.scss +3 -11
  3. package/dist/cjs/a/{RatingsInput/common/Rating/Rating.js → BackgroundGradient/BackgroundGradient.js} +22 -65
  4. package/dist/cjs/a/BackgroundGradient/index.js +15 -0
  5. package/dist/cjs/a/BackgroundGradient/styles.scss +16 -0
  6. package/dist/cjs/a/Conversation/Conversation.js +15 -8
  7. package/dist/cjs/a/Conversation/common/Message/Message.js +33 -6
  8. package/dist/cjs/a/Conversation/styles.scss +129 -32
  9. package/dist/cjs/a/GradientBackground/GradientBackground.js +140 -0
  10. package/dist/cjs/a/GradientBackground/index.js +15 -0
  11. package/dist/cjs/a/GradientBackground/styles.scss +191 -0
  12. package/dist/cjs/a/OvalIllustration/OvalIllustration.js +133 -0
  13. package/dist/cjs/a/OvalIllustration/index.js +15 -0
  14. package/dist/cjs/a/OvalIllustration/styles.scss +102 -0
  15. package/dist/cjs/a/People/People.js +15 -7
  16. package/dist/cjs/a/People/common/Person/Person.js +11 -4
  17. package/dist/cjs/a/People/styles.scss +13 -15
  18. package/dist/cjs/a/Shapes/Shapes.js +171 -0
  19. package/dist/cjs/a/{RatingsInput/common/Rating → Shapes}/index.js +3 -3
  20. package/dist/cjs/a/Shapes/styles.scss +255 -0
  21. package/dist/cjs/a/{RatingsInput/RatingsInput.js → SnapScroller/SnapScroller.js} +15 -26
  22. package/dist/cjs/a/{RatingsInput → SnapScroller}/index.js +3 -3
  23. package/dist/cjs/a/SnapScroller/styles.scss +38 -0
  24. package/dist/cjs/a/TeamInfo/styles.scss +2 -2
  25. package/dist/cjs/a/index.js +33 -1
  26. package/dist/cjs/b/Button/Button.js +10 -4
  27. package/dist/cjs/b/Button/styles.scss +82 -18
  28. package/dist/cjs/b/Metrics/Metrics.js +89 -0
  29. package/dist/cjs/b/Metrics/index.js +15 -0
  30. package/dist/cjs/b/Metrics/styles.scss +91 -0
  31. package/dist/cjs/b/Page/common/Section/Section.js +56 -5
  32. package/dist/cjs/b/Page/styles.scss +8 -2
  33. package/dist/cjs/b/QuestionDropdown/styles.scss +1 -1
  34. package/dist/cjs/b/index.js +9 -1
  35. package/dist/cjs/c/ContentSlides/common/HorizontalMenu/HorizontalMenu.js +1 -1
  36. package/dist/cjs/c/ContentSlides/common/Navigator/Navigator.js +4 -3
  37. package/dist/cjs/experimental/GradientBackground/GradientBackground.js +98 -0
  38. package/dist/cjs/experimental/GradientBackground/index.js +15 -0
  39. package/dist/cjs/experimental/GradientBackground/styles.scss +64 -0
  40. package/dist/cjs/experimental/index.js +13 -0
  41. package/dist/cjs/f/common/Debugger/Debugger.js +1 -1
  42. package/dist/cjs/f/common/Label/Label.js +1 -1
  43. package/dist/cjs/f/fields/ChoicesInput/ChoicesInput.js +2 -2
  44. package/dist/cjs/f/fields/RatingsInput/common/Rating/Rating.js +2 -2
  45. package/dist/cjs/f/fields/SelectInput/SelectInput.js +25 -6
  46. package/dist/cjs/f/fields/SelectInput/styles.scss +4 -4
  47. package/dist/cjs/f/fields/TaskRecommendationInput/TaskRecommendationInput.js +1 -1
  48. package/dist/cjs/f/fields/TaskRecommendationInput/styles.scss +4 -0
  49. package/dist/cjs/f/fields/TextInput/TextInput.js +19 -5
  50. package/dist/cjs/f/fields/TextInput/styles.scss +3 -7
  51. package/dist/cjs/f/fields/TextareaInput/TextareaInput.js +14 -7
  52. package/dist/cjs/form.scss +1 -1
  53. package/dist/es/a/AnimatedCounter/AnimatedCounter.js +17 -30
  54. package/dist/es/a/AnimatedCounter/styles.scss +3 -11
  55. package/dist/es/a/BackgroundGradient/BackgroundGradient.js +55 -0
  56. package/dist/es/a/BackgroundGradient/index.js +2 -0
  57. package/dist/es/a/BackgroundGradient/styles.scss +16 -0
  58. package/dist/es/a/Conversation/Conversation.js +15 -8
  59. package/dist/es/a/Conversation/common/Message/Message.js +33 -6
  60. package/dist/es/a/Conversation/styles.scss +129 -32
  61. package/dist/es/a/GradientBackground/GradientBackground.js +118 -0
  62. package/dist/es/a/GradientBackground/index.js +2 -0
  63. package/dist/es/a/GradientBackground/styles.scss +191 -0
  64. package/dist/es/a/OvalIllustration/OvalIllustration.js +111 -0
  65. package/dist/es/a/OvalIllustration/index.js +2 -0
  66. package/dist/es/a/OvalIllustration/styles.scss +102 -0
  67. package/dist/es/a/People/People.js +14 -7
  68. package/dist/es/a/People/common/Person/Person.js +11 -4
  69. package/dist/es/a/People/styles.scss +13 -15
  70. package/dist/es/a/Shapes/Shapes.js +149 -0
  71. package/dist/es/a/{RatingsInput/common/Rating → Shapes}/index.js +1 -1
  72. package/dist/es/a/Shapes/styles.scss +255 -0
  73. package/dist/es/a/{RatingsInput/RatingsInput.js → SnapScroller/SnapScroller.js} +15 -26
  74. package/dist/es/a/SnapScroller/index.js +2 -0
  75. package/dist/es/a/SnapScroller/styles.scss +38 -0
  76. package/dist/es/a/TeamInfo/styles.scss +2 -2
  77. package/dist/es/a/index.js +5 -1
  78. package/dist/es/b/Button/Button.js +8 -2
  79. package/dist/es/b/Button/styles.scss +82 -18
  80. package/dist/es/b/Metrics/Metrics.js +72 -0
  81. package/dist/es/b/Metrics/index.js +2 -0
  82. package/dist/es/b/Metrics/styles.scss +91 -0
  83. package/dist/es/b/Page/common/Section/Section.js +55 -4
  84. package/dist/es/b/Page/styles.scss +8 -2
  85. package/dist/es/b/QuestionDropdown/styles.scss +1 -1
  86. package/dist/es/b/index.js +2 -1
  87. package/dist/es/c/ContentSlides/common/HorizontalMenu/HorizontalMenu.js +1 -1
  88. package/dist/es/c/ContentSlides/common/Navigator/Navigator.js +4 -3
  89. package/dist/es/experimental/GradientBackground/GradientBackground.js +76 -0
  90. package/dist/es/experimental/GradientBackground/index.js +2 -0
  91. package/dist/es/experimental/GradientBackground/styles.scss +64 -0
  92. package/dist/es/experimental/index.js +1 -0
  93. package/dist/es/f/common/Debugger/Debugger.js +1 -1
  94. package/dist/es/f/common/Label/Label.js +1 -1
  95. package/dist/es/f/fields/ChoicesInput/ChoicesInput.js +2 -2
  96. package/dist/es/f/fields/RatingsInput/common/Rating/Rating.js +2 -2
  97. package/dist/es/f/fields/SelectInput/SelectInput.js +25 -6
  98. package/dist/es/f/fields/SelectInput/styles.scss +4 -4
  99. package/dist/es/f/fields/TaskRecommendationInput/TaskRecommendationInput.js +1 -1
  100. package/dist/es/f/fields/TaskRecommendationInput/styles.scss +4 -0
  101. package/dist/es/f/fields/TextInput/TextInput.js +19 -5
  102. package/dist/es/f/fields/TextInput/styles.scss +3 -7
  103. package/dist/es/f/fields/TextareaInput/TextareaInput.js +14 -7
  104. package/dist/es/form.scss +1 -1
  105. package/package.json +3 -3
  106. package/src/__snapshots__/Storyshots.test.js.snap +5662 -449
  107. package/src/local.scss +4 -0
  108. package/src/stories/a/AnimatedCounter.stories.jsx +9 -5
  109. package/src/stories/a/BackgroundGradient.stories.jsx +38 -0
  110. package/src/stories/a/ContentCard.stories.jsx +1 -1
  111. package/src/stories/a/Conversation.stories.jsx +78 -1
  112. package/src/stories/a/OvalIllustration.stories.jsx +59 -0
  113. package/src/stories/a/People.stories.jsx +25 -1
  114. package/src/stories/a/ProgressBar.stories.jsx +1 -1
  115. package/src/stories/a/Quote.stories.jsx +1 -1
  116. package/src/stories/a/Shapes.stories.jsx +143 -0
  117. package/src/stories/a/SnapScroller.stories.jsx +98 -0
  118. package/src/stories/a/Spinner.stories.jsx +1 -1
  119. package/src/stories/b/Button.stories.jsx +83 -54
  120. package/src/stories/b/Metrics.stories.jsx +62 -0
  121. package/src/stories/b/Page.stories.jsx +51 -1
  122. package/src/stories/b/ThemeSelector.stories.jsx +1 -1
  123. package/src/stories/b/Title.stories.jsx +1 -1
  124. package/src/stories/c/ContentSlides.stories.jsx +2 -2
  125. package/src/stories/colors.js +5 -3
  126. package/src/stories/f/CheckboxInput.stories.jsx +1 -1
  127. package/src/stories/f/SelectInput.stories.jsx +29 -0
  128. package/src/stories/f/TaskRecommendationInput.stories.jsx +1 -1
  129. package/src/stories/f/TextInput.stories.jsx +14 -4
  130. package/src/stories/f/TextareaInput.stories.jsx +42 -6
  131. package/src/ui/a/AnimatedCounter/AnimatedCounter.jsx +21 -27
  132. package/src/ui/a/AnimatedCounter/styles.scss +3 -11
  133. package/src/ui/a/BackgroundGradient/BackgroundGradient.jsx +76 -0
  134. package/src/ui/a/BackgroundGradient/index.js +2 -0
  135. package/src/ui/a/BackgroundGradient/styles.scss +16 -0
  136. package/src/ui/a/Conversation/Conversation.jsx +15 -7
  137. package/src/ui/a/Conversation/common/Message/Message.jsx +40 -7
  138. package/src/ui/a/Conversation/styles.scss +129 -32
  139. package/src/ui/a/OvalIllustration/OvalIllustration.jsx +134 -0
  140. package/src/ui/a/OvalIllustration/index.js +2 -0
  141. package/src/ui/a/OvalIllustration/styles.scss +102 -0
  142. package/src/ui/a/People/People.jsx +12 -4
  143. package/src/ui/a/People/common/Person/Person.jsx +7 -1
  144. package/src/ui/a/People/styles.scss +13 -15
  145. package/src/ui/a/Shapes/Shapes.jsx +191 -0
  146. package/src/ui/a/Shapes/index.js +2 -0
  147. package/src/ui/a/Shapes/styles.scss +255 -0
  148. package/src/ui/a/SnapScroller/SnapScroller.jsx +83 -0
  149. package/src/ui/a/SnapScroller/index.js +2 -0
  150. package/src/ui/a/SnapScroller/styles.scss +38 -0
  151. package/src/ui/a/TeamInfo/styles.scss +2 -2
  152. package/src/ui/a/index.js +4 -0
  153. package/src/ui/b/Button/Button.jsx +9 -1
  154. package/src/ui/b/Button/styles.scss +82 -18
  155. package/src/ui/b/Metrics/Metrics.jsx +93 -0
  156. package/src/ui/b/Metrics/index.js +2 -0
  157. package/src/ui/b/Metrics/styles.scss +91 -0
  158. package/src/ui/b/Page/common/Section/Section.jsx +68 -2
  159. package/src/ui/b/Page/styles.scss +8 -2
  160. package/src/ui/b/QuestionDropdown/styles.scss +1 -1
  161. package/src/ui/b/index.js +1 -0
  162. package/src/ui/c/ContentSlides/common/HorizontalMenu/HorizontalMenu.jsx +1 -1
  163. package/src/ui/c/ContentSlides/common/Navigator/Navigator.jsx +3 -2
  164. package/src/ui/f/common/Debugger/Debugger.jsx +1 -1
  165. package/src/ui/f/common/Label/Label.jsx +1 -1
  166. package/src/ui/f/fields/ChoicesInput/ChoicesInput.jsx +2 -2
  167. package/src/ui/f/fields/RatingsInput/common/Rating/Rating.jsx +2 -2
  168. package/src/ui/f/fields/SelectInput/SelectInput.jsx +35 -5
  169. package/src/ui/f/fields/SelectInput/styles.scss +4 -4
  170. package/src/ui/f/fields/TaskRecommendationInput/TaskRecommendationInput.jsx +1 -1
  171. package/src/ui/f/fields/TaskRecommendationInput/styles.scss +4 -0
  172. package/src/ui/f/fields/TextInput/TextInput.jsx +15 -2
  173. package/src/ui/f/fields/TextInput/styles.scss +3 -7
  174. package/src/ui/f/fields/TextareaInput/TextareaInput.jsx +22 -11
  175. package/src/ui/form.scss +1 -1
  176. package/dist/cjs/a/RatingsInput/common/index.js +0 -13
  177. package/dist/cjs/a/RatingsInput/styles.scss +0 -35
  178. package/dist/es/a/RatingsInput/common/Rating/Rating.js +0 -102
  179. package/dist/es/a/RatingsInput/common/index.js +0 -1
  180. package/dist/es/a/RatingsInput/index.js +0 -2
  181. package/dist/es/a/RatingsInput/styles.scss +0 -35
@@ -0,0 +1,255 @@
1
+ /* @pareto-engineering/generator-front 1.0.12 */
2
+
3
+ @use "@pareto-engineering/bem";
4
+
5
+ $default-ellipse-height:50em;
6
+ $default-diamond-height:40em;
7
+ $default-circle-height:50em;
8
+ $default-triangle-height:40em;
9
+ $default-rectangle-height:50em;
10
+ $default-shapes-opacity:.8;
11
+
12
+ .#{bem.$base}.shapes {
13
+ position: absolute;
14
+ top: 0;
15
+ left: 0;
16
+ display: flex;
17
+ flex-direction: column;
18
+ overflow: var(--overflow);
19
+ justify-content: var(--vertical-align);
20
+ align-items: var(--horizontal-align);
21
+ height: 100%;
22
+ width: 100%;
23
+
24
+ .triangle {
25
+ background-image: linear-gradient(transparent, var(--dark-y));
26
+ clip-path: polygon(0 0, 50% 100%, 100% 0);
27
+ height: calc(var(--shape-height, #{$default-triangle-height}) * 0.86);
28
+ opacity: $default-shapes-opacity;
29
+ width: var(--shape-height, #{$default-triangle-height});
30
+ }
31
+
32
+ .inverted-triangle {
33
+ background-image: linear-gradient(var(--dark-y), transparent);
34
+ clip-path: polygon(50% 0, 0 100%, 100% 100%);
35
+ height: calc(var(--shape-height, #{$default-triangle-height}) * 0.86);
36
+ opacity: $default-shapes-opacity;
37
+ width: var(--shape-height, #{$default-triangle-height});
38
+ }
39
+
40
+ .half-ellipses {
41
+ height: var(--shape-height, #{$default-ellipse-height});
42
+ opacity: $default-shapes-opacity;
43
+ width: calc(var(--shape-height, #{$default-ellipse-height}) * 2);
44
+
45
+ .up {
46
+ background-image: radial-gradient(ellipse at center bottom, var(--y) 5%, transparent 65%);
47
+ clip-path: ellipse(35% 100% at 50% 0%);
48
+ height: 50%;
49
+ }
50
+
51
+ .down {
52
+ background-image: radial-gradient(ellipse at center top, var(--y) 5%, transparent 65%);
53
+ clip-path: ellipse(35% 100% at 50% 100%);
54
+ height: 50%;
55
+ }
56
+ }
57
+
58
+ .ellipse {
59
+ background-image: linear-gradient(var(--dark-y), var(--light-y));
60
+ clip-path: ellipse(50% 50% at 50% 50%);
61
+ height: var(--shape-height, #{$default-ellipse-height});
62
+ opacity: $default-shapes-opacity;
63
+ width: calc(var(--shape-height, #{$default-ellipse-height}) * 2);
64
+ }
65
+
66
+ .diamonds {
67
+ height: var(--shape-height, #{$default-diamond-height});
68
+ opacity: $default-shapes-opacity;
69
+ position: relative;
70
+ width: var(--shape-height, #{$default-diamond-height});
71
+
72
+ .top-right {
73
+ background-image: linear-gradient(to right, var(--dark-y), var(--y));
74
+ clip-path: polygon(100% 100%, 0 0, 100% 0);
75
+ height: 100%;
76
+ position: absolute;
77
+ width: 100%;
78
+ }
79
+
80
+ .bottom-left {
81
+ background-image: linear-gradient(to left, var(--dark-y), var(--y));
82
+ clip-path: polygon(0 100%, 0 0, 100% 100%);
83
+ height: 100%;
84
+ opacity: .95;
85
+ position: absolute;
86
+ width: 100%;
87
+ z-index: 1;
88
+ }
89
+
90
+ .bottom-right {
91
+ background-image: linear-gradient(to bottom, var(--dark-y), var(--y));
92
+ clip-path: polygon(100% 100%, 100% 0, 0 100%);
93
+ height: 100%;
94
+ position: absolute;
95
+ width: 100%;
96
+ }
97
+ }
98
+
99
+ .rectangles {
100
+ display: grid;
101
+ grid-template-rows: repeat(3, 1fr);
102
+ height: var(--shape-height, #{$default-rectangle-height});
103
+ opacity: $default-shapes-opacity;
104
+ width: var(--shape-height, #{$default-rectangle-height});
105
+
106
+ .top {
107
+ background-image: linear-gradient(to right, var(--dark-y), var(--y));
108
+ }
109
+
110
+ .center {
111
+ background-image: linear-gradient(to left, var(--dark-y), var(--y));
112
+ }
113
+
114
+ .bottom {
115
+ background-image: linear-gradient(to right, var(--dark-y), var(--y));
116
+ }
117
+ }
118
+
119
+ .half-ellipse {
120
+ background-image: radial-gradient(ellipse at center bottom, var(--y) 10%, transparent 65%);
121
+ clip-path: ellipse(60% 100% at 50% 0%);
122
+ height: var(--shape-height, #{$default-ellipse-height});
123
+ opacity: $default-shapes-opacity;
124
+ width: calc(var(--shape-height, #{$default-ellipse-height}) * 2);
125
+ }
126
+
127
+ .circle {
128
+ background-image: linear-gradient(var(--light-y), var(--dark-y));
129
+ clip-path: circle(50% at 50% 50%);
130
+ height: var(--shape-height, #{$default-circle-height});
131
+ opacity: $default-shapes-opacity;
132
+ width: var(--shape-height, #{$default-circle-height});
133
+ }
134
+
135
+ .half-circle {
136
+ background: linear-gradient(var(--light-y) 30%, var(--dark-y) 100%);
137
+ clip-path: circle(50% at 50% 100%);
138
+ height: var(--shape-height, #{$default-circle-height});
139
+ opacity: $default-shapes-opacity;
140
+ width: calc(var(--shape-height, #{$default-circle-height}) * 2);
141
+ }
142
+
143
+ .ellipses {
144
+ height: var(--shape-height, #{$default-ellipse-height});
145
+ opacity: $default-shapes-opacity;
146
+ position: relative;
147
+ width: var(--shape-height, #{$default-ellipse-height});
148
+
149
+ .first {
150
+ background-image: linear-gradient(to top, var(--dark-y), var(--y), var(--light-y) 50%, transparent);
151
+ clip-path: ellipse(50% 20% at 50% 60%);
152
+ height: 100%;
153
+ position: absolute;
154
+ width: 100%;
155
+ z-index: 1;
156
+ }
157
+
158
+ .second {
159
+ background-image: linear-gradient(to bottom,var(--dark-y), var(--y), var(--light-y) 45%, transparent);
160
+ clip-path: ellipse(50% 20% at 50% 40%);
161
+ height: 100%;
162
+ position: absolute;
163
+ width: 100%;
164
+ }
165
+ }
166
+
167
+ .spiral {
168
+ height: var(--shape-height, #{$default-ellipse-height});
169
+ width: var(--shape-height, #{$default-ellipse-height});
170
+ opacity: $default-shapes-opacity;
171
+ position: relative;
172
+ display: flex;
173
+ justify-content: center;
174
+ align-items: center;
175
+
176
+ > * {
177
+ border-radius: 50%;
178
+ background: radial-gradient(ellipse at center bottom ,var(--dark-y) 10%, transparent 60%);
179
+ position: absolute;
180
+ opacity: .5;
181
+ }
182
+
183
+ .circle-one {
184
+ transform: rotate(45deg);
185
+ height:calc(var(--shape-height, #{$default-ellipse-height})* 0.4);
186
+ width: calc(var(--shape-height, #{$default-ellipse-height})* 0.4);
187
+ }
188
+
189
+ .circle-two {
190
+ height: calc(var(--shape-height, #{$default-ellipse-height})* 0.6);
191
+ width: calc(var(--shape-height, #{$default-ellipse-height})* 0.6);
192
+ }
193
+
194
+ .circle-three {
195
+ transform: rotate(-45deg);
196
+ height: calc(var(--shape-height, #{$default-ellipse-height})* 0.8);
197
+ width: calc(var(--shape-height, #{$default-ellipse-height})* 0.8);
198
+ }
199
+
200
+ .circle-four {
201
+ transform: rotate(-90deg);
202
+ height: calc(var(--shape-height, #{$default-ellipse-height})* 1);
203
+ width: calc(var(--shape-height, #{$default-ellipse-height})* 1);
204
+ }
205
+ }
206
+ .rotated-ellipses {
207
+ height: var(--shape-height, #{$default-ellipse-height});
208
+ opacity: $default-shapes-opacity;
209
+ width: var(--shape-height, #{$default-ellipse-height});
210
+ display: flex;
211
+
212
+ > *{
213
+ width: 100%;
214
+ height: 100%;
215
+ }
216
+
217
+ .ellipse-one {
218
+ background-image: radial-gradient(ellipse at bottom left, var(--y) 30%, transparent 65%);
219
+ transform: rotate(-15deg);
220
+ clip-path: ellipse(50% 35% at 50% 50%);
221
+ }
222
+
223
+ .ellipse-two {
224
+ background-image: radial-gradient(ellipse at top right, var(--y) 30%, transparent 65%);
225
+ transform: rotate(-15deg);
226
+ clip-path: ellipse(50% 35% at 50% 50%);
227
+ }
228
+ }
229
+
230
+ .intersecting-circles {
231
+ height: var(--shape-height, #{$default-circle-height});
232
+ opacity: $default-shapes-opacity;
233
+ width: calc(var(--shape-height, #{$default-circle-height}) * 2);
234
+ display: grid;
235
+ grid-template-columns: repeat(7, 1fr);
236
+ position: relative;
237
+
238
+ > * {
239
+ border-radius: 50%;
240
+ height: 100%;
241
+ width: 100%;
242
+ position: absolute;
243
+ opacity: .8;
244
+ }
245
+
246
+ .left {
247
+ background-image: linear-gradient(to right ,var(--dark-y),var(--y), transparent);
248
+ grid-column: 1 / 5;
249
+ }
250
+ .right {
251
+ background-image: linear-gradient(to left, var(--dark-y), var(--y), transparent);
252
+ grid-column: 4 / 8;
253
+ }
254
+ }
255
+ }
@@ -1,47 +1,35 @@
1
1
  /* @pareto-engineering/generator-front 1.0.12 */
2
2
  import * as React from 'react';
3
- import { useState, useLayoutEffect } from 'react';
3
+ import { useLayoutEffect } from 'react';
4
4
  import PropTypes from 'prop-types';
5
5
  import styleNames from '@pareto-engineering/bem'; // Local Definitions
6
6
 
7
- import { Rating } from "./common";
8
7
  const baseClassName = styleNames.base;
9
- const componentClassName = 'ratings-input';
8
+ const componentClassName = 'snap-scroller';
10
9
  /**
11
10
  * This is the component description.
12
11
  */
13
12
 
14
- const RatingsInput = ({
13
+ const SnapScroller = ({
15
14
  id,
16
15
  className: userClassName,
17
16
  style,
18
- name,
19
- ratingCount // ...otherProps
17
+ children,
18
+ noScrollOnDesktop // ...otherProps
20
19
 
21
20
  }) => {
22
21
  useLayoutEffect(() => {
23
22
  import("./styles.scss");
24
23
  }, []);
25
- const [hover, setHover] = useState(null);
26
24
  return /*#__PURE__*/React.createElement("div", {
27
25
  id: id,
28
- className: [baseClassName, componentClassName, userClassName].filter(e => e).join(' '),
26
+ className: [baseClassName, componentClassName, userClassName, noScrollOnDesktop && 'desktop-no-scroll'].filter(e => e).join(' '),
29
27
  style: style // {...otherProps}
30
28
 
31
- }, [...Array(ratingCount)].map((_, index) => {
32
- const ratingValue = index + 1;
33
- return /*#__PURE__*/React.createElement(Rating, {
34
- key: ratingValue,
35
- ratingId: `${name}-${ratingValue}`,
36
- value: ratingValue,
37
- name: name,
38
- hover: hover,
39
- setHover: setHover
40
- });
41
- }));
29
+ }, children);
42
30
  };
43
31
 
44
- RatingsInput.propTypes = {
32
+ SnapScroller.propTypes = {
45
33
  /**
46
34
  * The HTML id for this element
47
35
  */
@@ -58,15 +46,16 @@ RatingsInput.propTypes = {
58
46
  style: PropTypes.objectOf(PropTypes.string),
59
47
 
60
48
  /**
61
- * The number of ratings input stars to be displayed
49
+ * The children JSX
62
50
  */
63
- ratingCount: PropTypes.number,
51
+ children: PropTypes.node,
64
52
 
65
53
  /**
66
- * Name of the rating input
54
+ * Whether to snap scroll on desktop (false will enable a flexbox)
67
55
  */
68
- name: PropTypes.string
56
+ noScrollOnDesktop: PropTypes.bool
69
57
  };
70
- RatingsInput.defaultProps = {// someProp:false
58
+ SnapScroller.defaultProps = {
59
+ noScrollOnDesktop: false
71
60
  };
72
- export default RatingsInput;
61
+ export default SnapScroller;
@@ -0,0 +1,2 @@
1
+ /* @pareto-engineering/generator-front 1.0.12 */
2
+ export { default as SnapScroller } from "./SnapScroller";
@@ -0,0 +1,38 @@
1
+ /* @pareto-engineering/generator-front 1.0.12 */
2
+
3
+ @use "@pareto-engineering/bem";
4
+ @use "@aztlan/stylebook/src/mixins";
5
+ @use "@aztlan/stylebook/src/globals" as *;
6
+
7
+ $default-spacing:var(--spacing, var(--u));
8
+
9
+ .#{bem.$base}.snap-scroller {
10
+ display: flex;
11
+ -ms-overflow-style: none; /* for Internet Explorer, Edge */
12
+ overflow-x: auto;
13
+ scroll-padding: calc(#{$default-spacing} *2);
14
+ scroll-snap-type: x mandatory;
15
+ scrollbar-width: none;
16
+
17
+
18
+ > * {
19
+ &:first-child {
20
+ margin-left: $default-spacing;
21
+ }
22
+ display: inline-block;
23
+ margin-right: $default-spacing;
24
+ scroll-snap-align: start;
25
+ }
26
+
27
+
28
+ @include mixins.media($from:$sm-md) {
29
+ &.desktop-no-scroll {
30
+ overflow: auto;
31
+ -ms-overflow-style: unset; /* for Internet Explorer, Edge */
32
+ scroll-snap-type: none;
33
+ scrollbar-width: unset;
34
+ }
35
+ }
36
+ }
37
+
38
+
@@ -10,11 +10,11 @@ $img-border-radius: var(--theme-border-radius);
10
10
  $p-h4-color:var(--subtitle);
11
11
  $role-color:var(--metadata);
12
12
  $default-name-color:var(--main1);
13
- $box-shadow:0 .45em 1em 0 var(--background);
13
+ $box-shadow:0 .45em 1em 0 var(--background1);
14
14
 
15
15
  .#{bem.$base}.team-info {
16
16
  align-items: flex-start;
17
- background: var(--light-y, var(--light-background));
17
+ background: var(--light-y, var(--light-background1));
18
18
  box-shadow: $box-shadow;
19
19
  display: flex;
20
20
  flex-direction: column;
@@ -17,4 +17,8 @@ export { CustomerStat } from "./CustomerStat";
17
17
  export { Quote } from "./Quote";
18
18
  export { ContentCard } from "./ContentCard";
19
19
  export { DotInfo } from "./DotInfo";
20
- export { Timestamp } from "./Timestamp";
20
+ export { Timestamp } from "./Timestamp";
21
+ export { Shapes } from "./Shapes";
22
+ export { OvalIllustration } from "./OvalIllustration";
23
+ export { SnapScroller } from "./SnapScroller";
24
+ export { BackgroundGradient } from "./BackgroundGradient";
@@ -23,6 +23,7 @@ const Button = ({
23
23
  isCompact,
24
24
  isGhost,
25
25
  isSimple,
26
+ arrowDirection,
26
27
  ...otherProps
27
28
  }) => {
28
29
  useLayoutEffect(() => {
@@ -30,7 +31,7 @@ const Button = ({
30
31
  }, []);
31
32
  return /*#__PURE__*/React.createElement("button", _extends({
32
33
  id: id,
33
- className: [baseClassName, componentClassName, userClassName, `x-${color}`, isGhost && styleNames.modifierGhost, isCompact && styleNames.modifierCompact, isSimple && styleNames.modifierSimple].filter(e => e).join(' '),
34
+ className: [baseClassName, componentClassName, userClassName, `x-${color}`, isGhost && styleNames.modifierGhost, isCompact && styleNames.modifierCompact, isSimple && styleNames.modifierSimple, arrowDirection && `arrow-${arrowDirection}`].filter(e => e).join(' '),
34
35
  style: style,
35
36
  type: "button"
36
37
  }, otherProps), isLoading ? /*#__PURE__*/React.createElement(LoadingCircle, {
@@ -85,7 +86,12 @@ Button.propTypes = {
85
86
  /**
86
87
  * Button loading state
87
88
  */
88
- isLoading: PropTypes.bool
89
+ isLoading: PropTypes.bool,
90
+
91
+ /**
92
+ * The direction of the arrow if the button has one
93
+ */
94
+ arrowDirection: PropTypes.string
89
95
  };
90
96
  Button.defaultProps = {
91
97
  color: 'main1'
@@ -4,28 +4,64 @@
4
4
 
5
5
  $default-padding: 1em 1em .84em;
6
6
  $compact-padding: .6em .6em .48em;
7
- $default-border-radius:2em;
8
7
  $default-color:primary;
9
8
  $font-weight:bold;
9
+ $default-margin:.5em;
10
+ $default-animation-time: .3s;
10
11
 
11
12
  .#{bem.$base}.button {
12
13
  background: var(--x, var(--#{$default-color}));
13
14
  border: transparent;
14
- //border-radius: var(--theme-border-radius);
15
- border-radius: $default-border-radius;
15
+ border-radius: var(--theme-border-radius);
16
16
  color: var(--on-x, var(--on-#{$default-color}));
17
+ display: inline-flex;
18
+ font-family: var(--theme-default-paragraph);
17
19
  font-weight: 600;
20
+ justify-content: space-between;
18
21
  padding: $default-padding;
19
22
  transition: all .25s;
20
23
 
24
+ &.arrow-right {
25
+ &::after {
26
+ content: "-->";
27
+ margin-left: $default-margin;
28
+ vertical-align: middle;
29
+ }
30
+
31
+ &:hover {
32
+ &::after {
33
+ --final-position: 50%;
34
+ animation: animateArrow $default-animation-time forwards;
35
+ }
36
+ }
37
+ }
38
+
39
+ &.arrow-left {
40
+ &::before {
41
+ content: "<--";
42
+ margin-right: $default-margin;
43
+ vertical-align: middle;
44
+ }
45
+
46
+ &:hover {
47
+ &::before {
48
+ --final-position: -50%;
49
+ animation: animateArrow $default-animation-time forwards;
50
+ }
51
+ }
52
+ }
53
+
21
54
  &:not(:disabled) {
22
55
  cursor: pointer;
23
56
 
24
57
  &:hover {
25
58
  background: var(--light-x, var(--light-#{$default-color}));
26
59
  }
27
- }
28
60
 
61
+ &:focus {
62
+ background: var(--dark-x, var(--dark-#{$default-color}));
63
+ }
64
+ }
29
65
 
30
66
  &.#{bem.$modifier-compact} {
31
67
  padding: $compact-padding;
@@ -36,42 +72,70 @@ $font-weight:bold;
36
72
  border: 1px solid var(--x, var(--#{$default-color}));
37
73
  color: var(--x, var(--#{$default-color}));
38
74
 
39
- &:not(:disabled) {
40
- &:hover,
41
- &:focus {
42
- border: 1px solid transparent;
43
- color: var(--on-x, var(--on-#{$default-color}));
44
- }
75
+ &:hover,
76
+ &:focus,
77
+ &:disabled {
78
+ background: transparent;
79
+ }
45
80
 
81
+ &:not(:disabled) {
46
82
  &:hover {
47
- background: var(--x, var(--#{$default-color}));
83
+ border: 1px solid var(--light-x, var(--light-#{$default-color}));
84
+ color: var(--light-x, var(--light-#{$default-color}));
48
85
  }
49
86
 
50
87
  &:focus {
51
- background: var(--dark-x, var(--#{$default-color}));
88
+ border: 1px solid var(--dark-x, var(--dark-#{$default-color}));
89
+ color: var(--dark-x, var(--dark-#{$default-color}));
52
90
  }
53
91
  }
92
+
93
+ &:disabled {
94
+ border: 1px solid var(--x, var(--#{$default-color}));
95
+ color: var(--x, var(--#{$default-color}));
96
+ }
54
97
  }
55
98
 
56
99
  &.#{bem.$modifier-simple} {
57
100
  background: transparent;
58
101
  border: 1px solid transparent;
59
102
  color: var(--x, var(--#{$default-color}));
103
+ padding: 0;
104
+
105
+ &:disabled,
106
+ &:hover,
107
+ &:focus {
108
+ background: transparent;
109
+ }
60
110
 
61
111
  &:not(:disabled) {
62
- &:hover,
112
+ &:hover {
113
+ color: var(--light-x, var(--light-#{$default-color}));
114
+ }
115
+
63
116
  &:focus {
64
- background:transparent;
65
- border: 1px solid transparent;
66
- color: var(--dark-x, var(--on-#{$default-color}));
117
+ color: var(--dark-x, var(--dark-#{$default-color}));
67
118
  }
68
119
  }
120
+
121
+ &:disabled {
122
+ color: var(--x, var(--#{$default-color}));
123
+ }
69
124
  }
70
125
 
71
126
  &:disabled {
72
- background: var(--light-x);
73
- filter: brightness(150%);
127
+ background: var(--x);
128
+ filter: brightness(125%);
74
129
  }
75
130
  }
76
131
 
77
132
 
133
+ @keyframes animateArrow {
134
+ from {
135
+ transform: translateX(0);
136
+ }
137
+
138
+ to {
139
+ transform: translateX(var(--final-position));
140
+ }
141
+ }
@@ -0,0 +1,72 @@
1
+ /* @pareto-engineering/generator-front 1.0.12 */
2
+ import * as React from 'react';
3
+ import { useLayoutEffect } from 'react';
4
+ import { AnimatedCounter } from "../..";
5
+ import PropTypes from 'prop-types';
6
+ import styleNames from '@pareto-engineering/bem'; // Local Definitions
7
+
8
+ const baseClassName = styleNames.base;
9
+ const componentClassName = 'metrics';
10
+ /**
11
+ * This is the component description.
12
+ */
13
+
14
+ const Metrics = ({
15
+ id,
16
+ className: userClassName,
17
+ style,
18
+ items // ...otherProps
19
+
20
+ }) => {
21
+ useLayoutEffect(() => {
22
+ import("./styles.scss");
23
+ }, []);
24
+ return /*#__PURE__*/React.createElement("div", {
25
+ id: id,
26
+ className: [baseClassName, componentClassName, userClassName].filter(e => e).join(' '),
27
+ style: style // {...otherProps}
28
+
29
+ }, items.map(counter => /*#__PURE__*/React.createElement("div", {
30
+ className: "metric"
31
+ }, /*#__PURE__*/React.createElement("div", {
32
+ className: `circle y-${counter.circleColor}`
33
+ }, /*#__PURE__*/React.createElement(AnimatedCounter, {
34
+ color: counter.color,
35
+ delay: counter.delay,
36
+ number: counter.number,
37
+ before: counter.before,
38
+ after: counter.after
39
+ }), /*#__PURE__*/React.createElement("p", {
40
+ className: "description-md sm-h xs-h md-s1"
41
+ }, counter.description)), /*#__PURE__*/React.createElement("p", {
42
+ className: "description-sm md-h lg-h sm-s-2"
43
+ }, counter.description))));
44
+ };
45
+
46
+ Metrics.propTypes = {
47
+ /**
48
+ * The HTML id for this element
49
+ */
50
+ id: PropTypes.string,
51
+
52
+ /**
53
+ * The HTML class names for this element
54
+ */
55
+ className: PropTypes.string,
56
+
57
+ /**
58
+ * The React-written, css properties for this element.
59
+ */
60
+ style: PropTypes.objectOf(PropTypes.string),
61
+
62
+ /**
63
+ * The array of details
64
+ */
65
+ items: PropTypes.node
66
+ };
67
+ /*
68
+ Metrics.defaultProps = {
69
+ }
70
+ */
71
+
72
+ export default Metrics;
@@ -0,0 +1,2 @@
1
+ /* @pareto-engineering/generator-front 1.0.12 */
2
+ export { default as Metrics } from "./Metrics";