@itcase/ui 1.0.1

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 (233) hide show
  1. package/README.md +2 -0
  2. package/dist/SelectContainer-e2544642.js +7717 -0
  3. package/dist/components/Accordion.js +249 -0
  4. package/dist/components/Avatar.js +94 -0
  5. package/dist/components/Background.js +90 -0
  6. package/dist/components/Breadcrumbs.js +239 -0
  7. package/dist/components/Button.js +215 -0
  8. package/dist/components/Caption.js +65 -0
  9. package/dist/components/Card.js +112 -0
  10. package/dist/components/Cell.js +180 -0
  11. package/dist/components/Checkbox.js +68 -0
  12. package/dist/components/Chips.js +135 -0
  13. package/dist/components/ContextMenu.js +149 -0
  14. package/dist/components/CookiesWarning.js +133 -0
  15. package/dist/components/Counter.js +99 -0
  16. package/dist/components/Divider.js +73 -0
  17. package/dist/components/Dropdown.js +139 -0
  18. package/dist/components/Emoji.js +124 -0
  19. package/dist/components/Fader.js +66 -0
  20. package/dist/components/Flex.js +264 -0
  21. package/dist/components/FormField.js +289 -0
  22. package/dist/components/Grid.js +329 -0
  23. package/dist/components/Group.js +132 -0
  24. package/dist/components/Icon.js +184 -0
  25. package/dist/components/Image.js +143 -0
  26. package/dist/components/Input.js +94 -0
  27. package/dist/components/Label.js +125 -0
  28. package/dist/components/LanguageSelector.js +86 -0
  29. package/dist/components/Link.js +172 -0
  30. package/dist/components/List.js +143 -0
  31. package/dist/components/Loader.js +66 -0
  32. package/dist/components/Logo.js +55 -0
  33. package/dist/components/Menu.js +86 -0
  34. package/dist/components/MenuItem.js +209 -0
  35. package/dist/components/Modal.js +69 -0
  36. package/dist/components/Notification.js +131 -0
  37. package/dist/components/Pagination.js +93 -0
  38. package/dist/components/Popup.js +254 -0
  39. package/dist/components/Profile.js +99 -0
  40. package/dist/components/RadioButton.js +71 -0
  41. package/dist/components/RangeSlider.js +2086 -0
  42. package/dist/components/Scrollbar.js +3872 -0
  43. package/dist/components/Search.js +260 -0
  44. package/dist/components/Segmented.js +77 -0
  45. package/dist/components/Select.js +49 -0
  46. package/dist/components/SiteMenu.js +137 -0
  47. package/dist/components/Swiper.js +927 -0
  48. package/dist/components/Switch.js +29 -0
  49. package/dist/components/Text.js +121 -0
  50. package/dist/components/Textarea.js +90 -0
  51. package/dist/components/Tile.js +252 -0
  52. package/dist/components/Title.js +146 -0
  53. package/dist/components/Tooltip.js +115 -0
  54. package/dist/components/Video.js +74 -0
  55. package/dist/components/Wrapper.js +119 -0
  56. package/dist/constants/componentProps/align.js +5 -0
  57. package/dist/constants/componentProps/alignDirection.js +5 -0
  58. package/dist/constants/componentProps/borderColor.js +5 -0
  59. package/dist/constants/componentProps/borderType.js +5 -0
  60. package/dist/constants/componentProps/captionPosition.js +5 -0
  61. package/dist/constants/componentProps/direction.js +5 -0
  62. package/dist/constants/componentProps/emojiSize.js +5 -0
  63. package/dist/constants/componentProps/fill.js +5 -0
  64. package/dist/constants/componentProps/fillGradient.js +5 -0
  65. package/dist/constants/componentProps/fillType.js +5 -0
  66. package/dist/constants/componentProps/flexAlign.js +5 -0
  67. package/dist/constants/componentProps/flexJustifyContent.js +5 -0
  68. package/dist/constants/componentProps/flexWrap.js +5 -0
  69. package/dist/constants/componentProps/gridAlign.js +5 -0
  70. package/dist/constants/componentProps/gridAlignSelf.js +5 -0
  71. package/dist/constants/componentProps/gridJustifyItems.js +5 -0
  72. package/dist/constants/componentProps/gridJustifySelf.js +5 -0
  73. package/dist/constants/componentProps/horizontalContentAlign.js +5 -0
  74. package/dist/constants/componentProps/horizontalResizeMode.js +5 -0
  75. package/dist/constants/componentProps/iconSize.js +5 -0
  76. package/dist/constants/componentProps/position.js +5 -0
  77. package/dist/constants/componentProps/resizeMode.js +5 -0
  78. package/dist/constants/componentProps/shape.js +5 -0
  79. package/dist/constants/componentProps/size.js +5 -0
  80. package/dist/constants/componentProps/stacking.js +5 -0
  81. package/dist/constants/componentProps/strokeColor.js +5 -0
  82. package/dist/constants/componentProps/textAlign.js +5 -0
  83. package/dist/constants/componentProps/textColor.js +5 -0
  84. package/dist/constants/componentProps/textColorActive.js +5 -0
  85. package/dist/constants/componentProps/textColorHover.js +5 -0
  86. package/dist/constants/componentProps/textGradient.js +5 -0
  87. package/dist/constants/componentProps/textStyle.js +5 -0
  88. package/dist/constants/componentProps/textTag.js +5 -0
  89. package/dist/constants/componentProps/textWeight.js +5 -0
  90. package/dist/constants/componentProps/titleSize.js +5 -0
  91. package/dist/constants/componentProps/type.js +5 -0
  92. package/dist/constants/componentProps/underline.js +5 -0
  93. package/dist/constants/componentProps/verticalContentAlign.js +5 -0
  94. package/dist/constants/componentProps/verticalResizeMode.js +5 -0
  95. package/dist/constants/componentProps/width.js +5 -0
  96. package/dist/constants/componentProps/wrap.js +5 -0
  97. package/dist/constants.js +87 -0
  98. package/dist/context/Notifications.js +121 -0
  99. package/dist/context/UIContext.js +59 -0
  100. package/dist/css/components/Accordion/Accordion.css +65 -0
  101. package/dist/css/components/Avatar/Avatar.css +28 -0
  102. package/dist/css/components/Background/Background.css +11 -0
  103. package/dist/css/components/Button/Button.css +362 -0
  104. package/dist/css/components/Caption/Caption.css +22 -0
  105. package/dist/css/components/Card/Card.css +19 -0
  106. package/dist/css/components/Cell/Cell.css +89 -0
  107. package/dist/css/components/Cell/css/__wrapper/cell__wrapper.css +7 -0
  108. package/dist/css/components/Cell/css/__wrapper/cell__wrapper_shape.css +15 -0
  109. package/dist/css/components/Checkbox/Checkbox.css +97 -0
  110. package/dist/css/components/Chips/Chips.css +47 -0
  111. package/dist/css/components/ContextMenu/ContextMenu.css +43 -0
  112. package/dist/css/components/ContextMenu/css/__item/context-menu__item.css +10 -0
  113. package/dist/css/components/CookiesWarning/CookiesWarning.css +37 -0
  114. package/dist/css/components/Counter/Counter.css +55 -0
  115. package/dist/css/components/Divider/Divider.css +78 -0
  116. package/dist/css/components/Dropdown/Dropdown.css +58 -0
  117. package/dist/css/components/Emoji/Emoji.css +104 -0
  118. package/dist/css/components/Emoji/css/__icon/emoji__icon-shape.css +12 -0
  119. package/dist/css/components/Emoji/css/__icon/emoji__icon.css +5 -0
  120. package/dist/css/components/Fader/Fader.css +55 -0
  121. package/dist/css/components/Flex/Flex.css +179 -0
  122. package/dist/css/components/Flex/css/__item/flex__item.css +5 -0
  123. package/dist/css/components/Flex/css/__item/flex__item_align.css +15 -0
  124. package/dist/css/components/Flex/css/__item/flex__item_direction.css +17 -0
  125. package/dist/css/components/Flex/css/__item/flex__item_grow.css +9 -0
  126. package/dist/css/components/Flex/css/__item/flex__item_justify-content.css +9 -0
  127. package/dist/css/components/Flex/css/__item/flex__item_shape.css +12 -0
  128. package/dist/css/components/Flex/css/__item/flex__item_wrap.css +9 -0
  129. package/dist/css/components/Grid/Grid.css +208 -0
  130. package/dist/css/components/Grid/css/__item/grid__item.css +4 -0
  131. package/dist/css/components/Grid/css/__item/grid__item_align-self.css +9 -0
  132. package/dist/css/components/Grid/css/__item/grid__item_column.css +17 -0
  133. package/dist/css/components/Grid/css/__item/grid__item_justify-self.css +9 -0
  134. package/dist/css/components/Grid/css/__item/grid__item_row.css +17 -0
  135. package/dist/css/components/Group/Group.css +106 -0
  136. package/dist/css/components/Icon/Icon.css +149 -0
  137. package/dist/css/components/Image/Image.css +106 -0
  138. package/dist/css/components/Input/Input.css +41 -0
  139. package/dist/css/components/Label/Label.css +33 -0
  140. package/dist/css/components/Link/Link.css +10 -0
  141. package/dist/css/components/List/List.css +112 -0
  142. package/dist/css/components/Loader/Loader.css +42 -0
  143. package/dist/css/components/Logo/Logo.css +17 -0
  144. package/dist/css/components/Menu/Menu.css +56 -0
  145. package/dist/css/components/MenuItem/MenuItem.css +56 -0
  146. package/dist/css/components/Notification/Notification.css +18 -0
  147. package/dist/css/components/Pagination/Pagination.css +80 -0
  148. package/dist/css/components/Pagination/css/__item/pagination__item.css +31 -0
  149. package/dist/css/components/Pagination/css/__item/pagination__item_state_active.css +16 -0
  150. package/dist/css/components/Pagination/css/__item/pagination__item_state_disabled.css +19 -0
  151. package/dist/css/components/Popup/Popup.css +49 -0
  152. package/dist/css/components/Profile/Profile.css +19 -0
  153. package/dist/css/components/RadioButton/RadioButton.css +98 -0
  154. package/dist/css/components/RangeSlider/RangeSlider.css +396 -0
  155. package/dist/css/components/Scrollbar/Scrollbar.css +2 -0
  156. package/dist/css/components/Search/Search.css +113 -0
  157. package/dist/css/components/Search/css/search-input/search-input.css +81 -0
  158. package/dist/css/components/Search/css/search-input/search-input_shape.css +8 -0
  159. package/dist/css/components/Search/css/search-result/search-result.css +6 -0
  160. package/dist/css/components/Search/css/search-result/search-result_shape.css +8 -0
  161. package/dist/css/components/Select/Select.css +236 -0
  162. package/dist/css/components/Select/css/__control/select__control.css +11 -0
  163. package/dist/css/components/Select/css/__control/select__control_fill.css +15 -0
  164. package/dist/css/components/Select/css/__control/select__control_shape.css +12 -0
  165. package/dist/css/components/Select/css/__indicators/select__indicators.css +18 -0
  166. package/dist/css/components/Select/css/__input-container/select__input-container.css +24 -0
  167. package/dist/css/components/Select/css/__menu/select__menu-notice.css +7 -0
  168. package/dist/css/components/Select/css/__menu/select__menu.css +36 -0
  169. package/dist/css/components/Select/css/__option/select__option.css +56 -0
  170. package/dist/css/components/Select/css/__single-value/select__single-value.css +5 -0
  171. package/dist/css/components/Select/css/__value-container/select__value-container.css +12 -0
  172. package/dist/css/components/SiteMenu/SiteMenu.css +37 -0
  173. package/dist/css/components/Swiper/Swiper.css +839 -0
  174. package/dist/css/components/Switch/Switch.css +53 -0
  175. package/dist/css/components/Text/Text.css +33 -0
  176. package/dist/css/components/Textarea/Textarea.css +40 -0
  177. package/dist/css/components/Tile/Tile.css +23 -0
  178. package/dist/css/components/Title/Title.css +71 -0
  179. package/dist/css/components/Tooltip/Tooltip.css +4 -0
  180. package/dist/css/components/Video/Video.css +37 -0
  181. package/dist/css/components/Wrapper/Wrapper.css +36 -0
  182. package/dist/css/styles/align/align_horizontal-reverse.css +50 -0
  183. package/dist/css/styles/align/align_horizontal.css +67 -0
  184. package/dist/css/styles/align/align_vertical-reverse.css +49 -0
  185. package/dist/css/styles/align/align_vertical.css +64 -0
  186. package/dist/css/styles/border/border.css +13 -0
  187. package/dist/css/styles/border-color/border-color.css +28 -0
  188. package/dist/css/styles/caret-color/caret-color.css +13 -0
  189. package/dist/css/styles/constraints/constraints.css +59 -0
  190. package/dist/css/styles/cursor/cursor.css +9 -0
  191. package/dist/css/styles/direction/direction.css +10 -0
  192. package/dist/css/styles/elevation/elevation.css +7 -0
  193. package/dist/css/styles/elevation/elevation_hover.css +11 -0
  194. package/dist/css/styles/fill/fill.css +28 -0
  195. package/dist/css/styles/fill/fill_active.css +22 -0
  196. package/dist/css/styles/fill/fill_active_hover.css +24 -0
  197. package/dist/css/styles/fill/fill_disabled.css +22 -0
  198. package/dist/css/styles/fill/fill_hover.css +34 -0
  199. package/dist/css/styles/fill-gradient/fill-gradient.css +15 -0
  200. package/dist/css/styles/height/height.css +9 -0
  201. package/dist/css/styles/hover/hover-fill-color.css +13 -0
  202. package/dist/css/styles/hover/hover-item-color.css +15 -0
  203. package/dist/css/styles/hover/hover-text-color.css +15 -0
  204. package/dist/css/styles/mediaqueries.css +66 -0
  205. package/dist/css/styles/mixin_elevation.css +33 -0
  206. package/dist/css/styles/mixin_fill-gradient.css +23 -0
  207. package/dist/css/styles/mixin_global.css +54 -0
  208. package/dist/css/styles/opacity/opacity.css +7 -0
  209. package/dist/css/styles/placeholder-text-color/placeholder-text-color.css +15 -0
  210. package/dist/css/styles/position/position.css +14 -0
  211. package/dist/css/styles/resize-horizontal/resize-horizontal.css +12 -0
  212. package/dist/css/styles/resize-vertical/resize-vertical.css +10 -0
  213. package/dist/css/styles/shape/shape.css +8 -0
  214. package/dist/css/styles/text-align/text-align.css +7 -0
  215. package/dist/css/styles/text-color/text-color.css +13 -0
  216. package/dist/css/styles/text-color/text-color_active.css +15 -0
  217. package/dist/css/styles/text-color/text-color_hover.css +17 -0
  218. package/dist/css/styles/text-color-hover/text-color-hover.css +15 -0
  219. package/dist/css/styles/text-decoration/text-decoration.css +9 -0
  220. package/dist/css/styles/text-gradient/text-gradient.css +24 -0
  221. package/dist/css/styles/text-style/text-style.css +9 -0
  222. package/dist/css/styles/text-truncate/text-truncate.css +7 -0
  223. package/dist/css/styles/text-weight/text-weight.css +40 -0
  224. package/dist/css/styles/width/width.css +9 -0
  225. package/dist/css/styles/word-wrap/word-wrap.css +8 -0
  226. package/dist/hooks/styleAttributes.js +33 -0
  227. package/dist/hooks/useDeviceTargetClass.js +60 -0
  228. package/dist/hooks/useMediaQueries.js +134 -0
  229. package/dist/hooks/useStyles.js +16 -0
  230. package/dist/index-f1505c84.js +86 -0
  231. package/dist/objectWithoutProperties-ea190611.js +188 -0
  232. package/dist/useStyles-77c3b520.js +153 -0
  233. package/package.json +123 -0
@@ -0,0 +1,289 @@
1
+ 'use strict';
2
+
3
+ var React = require('react');
4
+ var PropTypes = require('prop-types');
5
+ var clsx = require('clsx');
6
+ var direction = require('../constants/componentProps/direction.js');
7
+ var size = require('../constants/componentProps/size.js');
8
+ var index$2 = require('./Divider.js');
9
+ var index = require('./Text.js');
10
+ var index$1 = require('./Icon.js');
11
+ var useStyles = require('../useStyles-77c3b520.js');
12
+ var useDeviceTargetClass = require('../hooks/useDeviceTargetClass.js');
13
+ var index$3 = require('./RadioButton.js');
14
+ require('lodash/castArray');
15
+ require('lodash/camelCase');
16
+ require('../context/UIContext.js');
17
+ var index$4 = require('./Switch.js');
18
+ var SelectContainer = require('../SelectContainer-e2544642.js');
19
+ require('../constants/componentProps/fill.js');
20
+ require('../constants/componentProps/width.js');
21
+ require('../constants/componentProps/textColor.js');
22
+ require('../constants/componentProps/textColorActive.js');
23
+ require('../constants/componentProps/textColorHover.js');
24
+ require('../constants/componentProps/textStyle.js');
25
+ require('../constants/componentProps/textWeight.js');
26
+ require('react-inlinesvg');
27
+ require('../constants/componentProps/iconSize.js');
28
+ require('../constants/componentProps/shape.js');
29
+ require('../constants/componentProps/strokeColor.js');
30
+ require('./Link.js');
31
+ require('../constants/componentProps/textGradient.js');
32
+ require('../constants/componentProps/type.js');
33
+ require('../constants/componentProps/underline.js');
34
+ require('lodash/maxBy');
35
+ require('lodash/upperFirst');
36
+ require('../hooks/styleAttributes.js');
37
+ require('../hooks/useMediaQueries.js');
38
+ require('react-responsive');
39
+ require('react-select');
40
+ require('../objectWithoutProperties-ea190611.js');
41
+ require('react-dom');
42
+
43
+ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
44
+
45
+ var React__default = /*#__PURE__*/_interopDefault(React);
46
+ var PropTypes__default = /*#__PURE__*/_interopDefault(PropTypes);
47
+ var clsx__default = /*#__PURE__*/_interopDefault(clsx);
48
+
49
+ function FormField(props) {
50
+ var id = props.id,
51
+ children = props.children,
52
+ afterItem = props.afterItem,
53
+ beforeItem = props.beforeItem,
54
+ dividerWidth = props.dividerWidth,
55
+ dividerDirection = props.dividerDirection,
56
+ set = props.set,
57
+ className = props.className,
58
+ dividerSize = props.dividerSize,
59
+ dividerFill = props.dividerFill,
60
+ descSize = props.descSize,
61
+ descTextWidth = props.descTextWidth,
62
+ descTextColor = props.descTextColor,
63
+ desc = props.desc,
64
+ label = props.label,
65
+ labelSize = props.labelSize,
66
+ labelTextWidth = props.labelTextWidth,
67
+ labelTextColor = props.labelTextColor,
68
+ clearIconFill = props.clearIconFill,
69
+ clearIcon = props.clearIcon,
70
+ clearIconSize = props.clearIconSize,
71
+ messageSize = props.messageSize,
72
+ messageTextWidth = props.messageTextWidth,
73
+ messageTextColor = props.messageTextColor,
74
+ message = props.message;
75
+ var sizeClass = useDeviceTargetClass.useDeviceTargetClass(props, {
76
+ prefix: 'form-field_size_',
77
+ propsKey: 'size'
78
+ });
79
+ var fillClass = useDeviceTargetClass.useDeviceTargetClass(props, {
80
+ prefix: 'fill_',
81
+ propsKey: 'fill'
82
+ });
83
+ var inputFillClass = useDeviceTargetClass.useDeviceTargetClass(props, {
84
+ prefix: 'fill_',
85
+ propsKey: 'inputFill'
86
+ });
87
+ var shapeClass = useDeviceTargetClass.useDeviceTargetClass(props, {
88
+ prefix: 'form-field_shape_',
89
+ propsKey: 'shape'
90
+ });
91
+ var inputShapeClass = useDeviceTargetClass.useDeviceTargetClass(props, {
92
+ prefix: 'form-field__item-value_shape_',
93
+ propsKey: 'inputShape'
94
+ });
95
+ var directionClass = useDeviceTargetClass.useDeviceTargetClass(props, {
96
+ prefix: 'direction_',
97
+ propsKey: 'direction'
98
+ });
99
+ var _useStyles = useStyles.useStyles(props),
100
+ formFieldStyles = _useStyles.styles;
101
+ return /*#__PURE__*/React__default.default.createElement("div", {
102
+ className: clsx__default.default(className, 'form-field', set && "form-field_set_" + set, sizeClass, fillClass, shapeClass, directionClass),
103
+ style: formFieldStyles
104
+ }, label && /*#__PURE__*/React__default.default.createElement("label", {
105
+ htmlFor: id,
106
+ className: "form-field__label"
107
+ }, /*#__PURE__*/React__default.default.createElement(index.Text, {
108
+ size: labelSize,
109
+ textWeight: labelTextWidth,
110
+ textColor: labelTextColor
111
+ }, label)), desc && /*#__PURE__*/React__default.default.createElement("div", {
112
+ className: "form-field__desc"
113
+ }, /*#__PURE__*/React__default.default.createElement(index.Text, {
114
+ size: descSize,
115
+ textWeight: descTextWidth,
116
+ textColor: descTextColor
117
+ }, desc)), /*#__PURE__*/React__default.default.createElement("div", {
118
+ className: clsx__default.default('form-field__item', inputFillClass, inputShapeClass)
119
+ }, /*#__PURE__*/React__default.default.createElement("div", {
120
+ className: clsx__default.default('form-field__item-wrapper')
121
+ }, beforeItem, children, clearIcon && /*#__PURE__*/React__default.default.createElement(index$1.Icon, {
122
+ fill: clearIconFill,
123
+ SvgImage: clearIcon,
124
+ size: clearIconSize
125
+ }), afterItem), /*#__PURE__*/React__default.default.createElement(index$2.Divider, {
126
+ className: "form-field__item-divider",
127
+ width: dividerWidth,
128
+ direction: dividerDirection,
129
+ size: dividerSize,
130
+ fill: dividerFill
131
+ })), message && /*#__PURE__*/React__default.default.createElement("div", {
132
+ className: "form-field__message"
133
+ }, /*#__PURE__*/React__default.default.createElement(index.Text, {
134
+ size: messageSize,
135
+ textWeight: messageTextWidth,
136
+ textColor: messageTextColor
137
+ }, message)));
138
+ }
139
+ FormField.propTypes = {
140
+ id: PropTypes__default.default.string,
141
+ children: PropTypes__default.default.any,
142
+ className: PropTypes__default.default.string,
143
+ direction: PropTypes__default.default.oneOf(direction.default),
144
+ directionDesktop: PropTypes__default.default.oneOf(direction.default),
145
+ directionMobile: PropTypes__default.default.oneOf(direction.default),
146
+ directionTablet: PropTypes__default.default.oneOf(direction.default),
147
+ size: PropTypes__default.default.oneOf(size.default),
148
+ sizeDesktop: PropTypes__default.default.oneOf(size.default),
149
+ sizeMobile: PropTypes__default.default.oneOf(size.default),
150
+ sizeTablet: PropTypes__default.default.oneOf(size.default),
151
+ dividerSize: PropTypes__default.default.string,
152
+ dividerFill: PropTypes__default.default.string,
153
+ style: PropTypes__default.default.string,
154
+ type: PropTypes__default.default.string,
155
+ onClick: PropTypes__default.default.func
156
+ };
157
+ FormField.defaultProps = {
158
+ dividerWidth: 'fill',
159
+ dividerDirection: 'horizontal'
160
+ };
161
+
162
+ function ChoiceField(props) {
163
+ var radioButtonId = props.radioButtonId,
164
+ radioButtonClassName = props.radioButtonClassName,
165
+ radioButtonFillCheckmark = props.radioButtonFillCheckmark,
166
+ radioButtonFillChecked = props.radioButtonFillChecked,
167
+ radioButtonFill = props.radioButtonFill,
168
+ radioButtonFillDisable = props.radioButtonFillDisable,
169
+ radioButtonShape = props.radioButtonShape,
170
+ radioButtonBorder = props.radioButtonBorder;
171
+ return /*#__PURE__*/React__default.default.createElement(FormField, props, /*#__PURE__*/React__default.default.createElement(index$3.RadioButton, {
172
+ id: radioButtonId,
173
+ className: radioButtonClassName,
174
+ fillCheckmark: radioButtonFillCheckmark,
175
+ fillChecked: radioButtonFillChecked,
176
+ fill: radioButtonFill,
177
+ fillDisable: radioButtonFillDisable,
178
+ shape: radioButtonShape,
179
+ border: radioButtonBorder
180
+ }));
181
+ }
182
+ ChoiceField.propTypes = {
183
+ radioButtonClassName: PropTypes__default.default.string
184
+ };
185
+ ChoiceField.defaultProps = {
186
+ radioButtonClassName: 'form-field__item-radio-button'
187
+ };
188
+
189
+ function PasswordField(props) {
190
+ var placeholder = props.placeholder,
191
+ passwordClassName = props.passwordClassName,
192
+ value = props.value;
193
+ var placeholderColorClass = useDeviceTargetClass.useDeviceTargetClass(props, {
194
+ prefix: 'placeholder-text-color_',
195
+ propsKey: 'placeholderColor'
196
+ });
197
+ var valueTextColorClass = useDeviceTargetClass.useDeviceTargetClass(props, {
198
+ prefix: 'text text-color_',
199
+ propsKey: 'valueTextColor'
200
+ });
201
+ var valueTextSizeClass = useDeviceTargetClass.useDeviceTargetClass(props, {
202
+ prefix: 'text_size_',
203
+ propsKey: 'valueTextSize'
204
+ });
205
+ return /*#__PURE__*/React__default.default.createElement(FormField, props, /*#__PURE__*/React__default.default.createElement("input", {
206
+ type: "text",
207
+ value: value,
208
+ placeholder: placeholder,
209
+ className: clsx__default.default(passwordClassName, valueTextSizeClass, valueTextColorClass, placeholderColorClass)
210
+ }));
211
+ }
212
+ PasswordField.propTypes = {
213
+ children: PropTypes__default.default.any,
214
+ passwordClassName: PropTypes__default.default.string,
215
+ placeholder: PropTypes__default.default.string,
216
+ value: PropTypes__default.default.string
217
+ };
218
+ PasswordField.defaultProps = {
219
+ set: 'password',
220
+ passwordClassName: 'form-field__item-password'
221
+ };
222
+
223
+ function SwitchField(props) {
224
+ var className = props.className;
225
+ return /*#__PURE__*/React__default.default.createElement(FormField, props, /*#__PURE__*/React__default.default.createElement(index$4.Switch, {
226
+ className: clsx__default.default('form-field__item-switch', className)
227
+ }));
228
+ }
229
+ SwitchField.propTypes = {
230
+ children: PropTypes__default.default.any,
231
+ className: PropTypes__default.default.string,
232
+ placeholder: PropTypes__default.default.string,
233
+ value: PropTypes__default.default.string
234
+ };
235
+ SwitchField.defaultProps = {
236
+ set: 'switch'
237
+ };
238
+
239
+ function SelectField(props) {
240
+ var className = props.className,
241
+ selectInputClass = props.selectInputClass,
242
+ selectFill = props.selectFill,
243
+ selectShape = props.selectShape,
244
+ selectBorder = props.selectBorder,
245
+ selectSize = props.selectSize,
246
+ selectOptionFill = props.selectOptionFill,
247
+ selectOptionTextSize = props.selectOptionTextSize,
248
+ selectOptionTextColor = props.selectOptionTextColor,
249
+ selectOptionBefore = props.selectOptionBefore,
250
+ selectOptionAfter = props.selectOptionAfter,
251
+ selectInputBefore = props.selectInputBefore,
252
+ selectInputAfter = props.selectInputAfter,
253
+ selectInputFill = props.selectInputFill,
254
+ selectInputTextSize = props.selectInputTextSize,
255
+ selectInputTextColor = props.selectInputTextColor;
256
+ return /*#__PURE__*/React__default.default.createElement(FormField, props, /*#__PURE__*/React__default.default.createElement(SelectContainer.SelectInput, {
257
+ className: clsx__default.default(selectInputClass, className),
258
+ fill: selectFill,
259
+ shape: selectShape,
260
+ borderColor: selectBorder,
261
+ size: selectSize,
262
+ optionFill: selectOptionFill,
263
+ optionTextSize: selectOptionTextSize,
264
+ optionTextColor: selectOptionTextColor,
265
+ optionBefore: selectOptionBefore,
266
+ optionAfter: selectOptionAfter,
267
+ inputBefore: selectInputBefore,
268
+ inputAfter: selectInputAfter,
269
+ inputFill: selectInputFill,
270
+ inputTextSize: selectInputTextSize,
271
+ inputTextColor: selectInputTextColor
272
+ }));
273
+ }
274
+ SelectField.propTypes = {
275
+ children: PropTypes__default.default.any,
276
+ textInputClass: PropTypes__default.default.string,
277
+ placeholder: PropTypes__default.default.string,
278
+ value: PropTypes__default.default.string
279
+ };
280
+ SelectField.defaultProps = {
281
+ set: 'select',
282
+ selectInputClass: 'form-field__item-select'
283
+ };
284
+
285
+ exports.ChoiceField = ChoiceField;
286
+ exports.FormField = FormField;
287
+ exports.PasswordField = PasswordField;
288
+ exports.SelectField = SelectField;
289
+ exports.SwitchField = SwitchField;
@@ -0,0 +1,329 @@
1
+ 'use strict';
2
+
3
+ var React = require('react');
4
+ var PropTypes = require('prop-types');
5
+ var clsx = require('clsx');
6
+ var fill = require('../constants/componentProps/fill.js');
7
+ var gridJustifyItems = require('../constants/componentProps/gridJustifyItems.js');
8
+ var gridAlign = require('../constants/componentProps/gridAlign.js');
9
+ var shape = require('../constants/componentProps/shape.js');
10
+ var horizontalResizeMode = require('../constants/componentProps/horizontalResizeMode.js');
11
+ var verticalResizeMode = require('../constants/componentProps/verticalResizeMode.js');
12
+ var useDeviceTargetClass = require('../hooks/useDeviceTargetClass.js');
13
+ var useStyles = require('../useStyles-77c3b520.js');
14
+ var UIContext = require('../context/UIContext.js');
15
+ var gridAlignSelf = require('../constants/componentProps/gridAlignSelf.js');
16
+ var gridJustifySelf = require('../constants/componentProps/gridJustifySelf.js');
17
+ require('lodash/castArray');
18
+ require('lodash/camelCase');
19
+ require('lodash/maxBy');
20
+ require('lodash/upperFirst');
21
+ require('../hooks/styleAttributes.js');
22
+ require('../hooks/useMediaQueries.js');
23
+ require('react-responsive');
24
+
25
+ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
26
+
27
+ var React__default = /*#__PURE__*/_interopDefault(React);
28
+ var PropTypes__default = /*#__PURE__*/_interopDefault(PropTypes);
29
+ var clsx__default = /*#__PURE__*/_interopDefault(clsx);
30
+
31
+ function Grid(props) {
32
+ var id = props.id,
33
+ after = props.after,
34
+ before = props.before,
35
+ children = props.children,
36
+ className = props.className,
37
+ gridBackground = props.gridBackground,
38
+ gridBackgroundDesktop = props.gridBackgroundDesktop,
39
+ gridBackgroundMobile = props.gridBackgroundMobile,
40
+ gridBackgroundTablet = props.gridBackgroundTablet,
41
+ horizontalResizing = props.horizontalResizing,
42
+ onClick = props.onClick,
43
+ type = props.type,
44
+ useGridSystem = props.useGridSystem,
45
+ Tag = props.tag,
46
+ verticalResizing = props.verticalResizing;
47
+ var _useUserDeviceContext = UIContext.useUserDeviceContext(),
48
+ isMobile = _useUserDeviceContext.isMobile,
49
+ isTablet = _useUserDeviceContext.isTablet,
50
+ isDesktop = _useUserDeviceContext.isDesktop;
51
+ var columnsClass = useDeviceTargetClass.useDeviceTargetClass(props, {
52
+ prefix: 'grid_columns_',
53
+ propsKey: 'columns'
54
+ });
55
+ var rowsClass = useDeviceTargetClass.useDeviceTargetClass(props, {
56
+ prefix: 'grid_rows_',
57
+ propsKey: 'rows'
58
+ });
59
+ var rowGapClass = useDeviceTargetClass.useDeviceTargetClass(props, {
60
+ prefix: 'grid_row-gap_',
61
+ propsKey: 'rowGap'
62
+ });
63
+ var columnGapClass = useDeviceTargetClass.useDeviceTargetClass(props, {
64
+ prefix: 'grid_column-gap_',
65
+ propsKey: 'columnGap'
66
+ });
67
+ var alignContentClass = useDeviceTargetClass.useDeviceTargetClass(props, {
68
+ prefix: 'grid_align-content_',
69
+ propsKey: 'alignContent'
70
+ });
71
+ var alignItemsClass = useDeviceTargetClass.useDeviceTargetClass(props, {
72
+ prefix: 'grid_align-items_',
73
+ propsKey: 'alignItems'
74
+ });
75
+ var justifyContentClass = useDeviceTargetClass.useDeviceTargetClass(props, {
76
+ prefix: 'grid_justify-content_',
77
+ propsKey: 'justifyContent'
78
+ });
79
+ var justifyItemsClass = useDeviceTargetClass.useDeviceTargetClass(props, {
80
+ prefix: 'grid_justify-items_',
81
+ propsKey: 'justifyItems'
82
+ });
83
+ var fillClass = useDeviceTargetClass.useDeviceTargetClass(props, {
84
+ prefix: 'fill_',
85
+ propsKey: 'fill'
86
+ });
87
+ var fillWrapperClass = useDeviceTargetClass.useDeviceTargetClass(props, {
88
+ prefix: 'fill_',
89
+ propsKey: 'fillWrapper'
90
+ });
91
+ var fillWrapperInnerClass = useDeviceTargetClass.useDeviceTargetClass(props, {
92
+ prefix: 'fill_',
93
+ propsKey: 'fillWrapperInner'
94
+ });
95
+ var shapeWrapperClass = useDeviceTargetClass.useDeviceTargetClass(props, {
96
+ prefix: 'grid_shape_',
97
+ propsKey: 'shapeWrapper'
98
+ });
99
+ var shapeWrapperInnerClass = useDeviceTargetClass.useDeviceTargetClass(props, {
100
+ prefix: 'grid_shape_',
101
+ propsKey: 'shapeWrapperInner'
102
+ });
103
+ var gridTargetBackground = React.useMemo(function () {
104
+ if (isMobile && gridBackgroundMobile) {
105
+ return gridBackgroundMobile;
106
+ }
107
+ if (isTablet && gridBackgroundTablet) {
108
+ return gridBackgroundTablet;
109
+ }
110
+ if (isDesktop && gridBackgroundDesktop) {
111
+ return gridBackgroundDesktop;
112
+ }
113
+ return gridBackground;
114
+ }, [isMobile, isTablet, isDesktop, gridBackgroundMobile, gridBackgroundTablet, gridBackgroundDesktop, gridBackground]);
115
+ var gridTargetBackgroundWrapper = useDeviceTargetClass.useDeviceTargetClass(props, {
116
+ prefix: 'fill_',
117
+ propsKey: 'gridBackgroundWrapper'
118
+ });
119
+ var _useStyles = useStyles.useStyles(props),
120
+ gridStyles = _useStyles.styles,
121
+ gridWrapperStyles = _useStyles.gridWrapper,
122
+ gridWrapperInnerStyles = _useStyles.gridWrapperInner;
123
+ return /*#__PURE__*/React__default.default.createElement(Tag, {
124
+ className: clsx__default.default(className, 'grid', useGridSystem && "grid_state_system", type && "grid_type_" + type, columnsClass, rowsClass, rowGapClass, columnGapClass, alignContentClass, alignItemsClass, justifyContentClass, justifyItemsClass, fillClass, horizontalResizing && "grid_horizontal-resizing_" + horizontalResizing, verticalResizing && "grid_vertical-resizing_" + verticalResizing),
125
+ id: id,
126
+ style: gridStyles,
127
+ onClick: onClick
128
+ }, before && /*#__PURE__*/React__default.default.createElement("div", {
129
+ className: "grid__before"
130
+ }, before), typeof gridTargetBackground === 'string' ? /*#__PURE__*/React__default.default.createElement("div", {
131
+ className: clsx__default.default('grid__background', gridTargetBackground && "fill_" + gridTargetBackground.replace(/([A-Z])/g, '-$1').toLowerCase())
132
+ }, "\xA0") : gridTargetBackground && /*#__PURE__*/React__default.default.createElement("div", {
133
+ className: "grid__background"
134
+ }, gridTargetBackground), /*#__PURE__*/React__default.default.createElement("div", {
135
+ className: clsx__default.default('grid__wrapper', fillWrapperClass, shapeWrapperClass),
136
+ style: gridWrapperStyles
137
+ }, /*#__PURE__*/React__default.default.createElement("div", {
138
+ className: clsx__default.default('grid__wrapper-inner', fillWrapperInnerClass, shapeWrapperInnerClass),
139
+ style: gridWrapperInnerStyles
140
+ }, children, gridTargetBackgroundWrapper && /*#__PURE__*/React__default.default.createElement("div", {
141
+ className: clsx__default.default('grid__wrapper-background', gridTargetBackgroundWrapper)
142
+ }, "\xA0"))), after && /*#__PURE__*/React__default.default.createElement("div", {
143
+ className: "grid__after"
144
+ }, after));
145
+ }
146
+ Grid.propTypes = {
147
+ id: PropTypes__default.default.string,
148
+ after: PropTypes__default.default.any,
149
+ alignContent: PropTypes__default.default.oneOf(gridAlign.default),
150
+ alignContentDesktop: PropTypes__default.default.oneOf(gridAlign.default),
151
+ alignContentMobile: PropTypes__default.default.oneOf(gridAlign.default),
152
+ alignContentTablet: PropTypes__default.default.oneOf(gridAlign.default),
153
+ alignItems: PropTypes__default.default.oneOf(gridAlign.default),
154
+ alignItemsDesktop: PropTypes__default.default.oneOf(gridAlign.default),
155
+ alignItemsMobile: PropTypes__default.default.oneOf(gridAlign.default),
156
+ alignItemsTablet: PropTypes__default.default.oneOf(gridAlign.default),
157
+ before: PropTypes__default.default.any,
158
+ children: PropTypes__default.default.any,
159
+ className: PropTypes__default.default.string,
160
+ columnGap: PropTypes__default.default.number,
161
+ columnGapDesktop: PropTypes__default.default.number,
162
+ columnGapMobile: PropTypes__default.default.number,
163
+ columnGapTablet: PropTypes__default.default.number,
164
+ columns: PropTypes__default.default.number,
165
+ columnsDesktop: PropTypes__default.default.number,
166
+ columnsMobile: PropTypes__default.default.number,
167
+ columnsTablet: PropTypes__default.default.number,
168
+ useGridSystem: PropTypes__default.default.bool,
169
+ fill: PropTypes__default.default.oneOf(fill.default),
170
+ fillDesktop: PropTypes__default.default.oneOf(fill.default),
171
+ fillMobile: PropTypes__default.default.oneOf(fill.default),
172
+ fillTablet: PropTypes__default.default.oneOf(fill.default),
173
+ fillWrapper: PropTypes__default.default.oneOf(fill.default),
174
+ fillWrapperDesktop: PropTypes__default.default.oneOf(fill.default),
175
+ fillWrapperInner: PropTypes__default.default.oneOf(fill.default),
176
+ fillWrapperInnerDesktop: PropTypes__default.default.oneOf(fill.default),
177
+ fillWrapperInnerMobile: PropTypes__default.default.oneOf(fill.default),
178
+ fillWrapperInnerTablet: PropTypes__default.default.oneOf(fill.default),
179
+ fillWrapperMobile: PropTypes__default.default.oneOf(fill.default),
180
+ fillWrapperTablet: PropTypes__default.default.oneOf(fill.default),
181
+ gridBackground: PropTypes__default.default.any,
182
+ gridBackgroundDesktop: PropTypes__default.default.any,
183
+ gridBackgroundMobile: PropTypes__default.default.any,
184
+ gridBackgroundTablet: PropTypes__default.default.any,
185
+ gridBackgroundWrapper: PropTypes__default.default.any,
186
+ gridBackgroundWrapperDesktop: PropTypes__default.default.any,
187
+ gridBackgroundWrapperMobile: PropTypes__default.default.any,
188
+ gridBackgroundWrapperTablet: PropTypes__default.default.any,
189
+ horizontalResizing: PropTypes__default.default.oneOf(horizontalResizeMode.default),
190
+ justifyContent: PropTypes__default.default.string,
191
+ justifyContentDesktop: PropTypes__default.default.string,
192
+ justifyContentMobile: PropTypes__default.default.string,
193
+ justifyContentTablet: PropTypes__default.default.string,
194
+ justifyItems: PropTypes__default.default.oneOf(gridJustifyItems.default),
195
+ justifyItemsDesktop: PropTypes__default.default.oneOf(gridJustifyItems.default),
196
+ justifyItemsMobile: PropTypes__default.default.oneOf(gridJustifyItems.default),
197
+ justifyItemsTablet: PropTypes__default.default.oneOf(gridJustifyItems.default),
198
+ rowGap: PropTypes__default.default.string,
199
+ rowGapDesktop: PropTypes__default.default.string,
200
+ rowGapMobile: PropTypes__default.default.string,
201
+ rowGapTablet: PropTypes__default.default.string,
202
+ rows: PropTypes__default.default.number,
203
+ rowsDesktop: PropTypes__default.default.number,
204
+ rowsMobile: PropTypes__default.default.number,
205
+ rowsTablet: PropTypes__default.default.number,
206
+ shapeWrapper: PropTypes__default.default.oneOf(shape.default),
207
+ shapeWrapperDesktop: PropTypes__default.default.oneOf(shape.default),
208
+ shapeWrapperInner: PropTypes__default.default.oneOf(shape.default),
209
+ shapeWrapperInnerDesktop: PropTypes__default.default.oneOf(shape.default),
210
+ shapeWrapperInnerMobile: PropTypes__default.default.oneOf(shape.default),
211
+ shapeWrapperInnerTablet: PropTypes__default.default.oneOf(shape.default),
212
+ shapeWrapperMobile: PropTypes__default.default.oneOf(shape.default),
213
+ shapeWrapperTablet: PropTypes__default.default.oneOf(shape.default),
214
+ type: PropTypes__default.default.string,
215
+ verticalResizing: PropTypes__default.default.oneOf(verticalResizeMode.default),
216
+ onClick: PropTypes__default.default.func
217
+ };
218
+ Grid.defaultProps = {
219
+ tag: 'div'
220
+ };
221
+
222
+ function GridItem(props) {
223
+ var id = props.id,
224
+ children = props.children,
225
+ className = props.className;
226
+ var orderClass = useDeviceTargetClass.useDeviceTargetClass(props, {
227
+ prefix: 'order_',
228
+ propsKey: 'order'
229
+ });
230
+ var alignSelfClass = useDeviceTargetClass.useDeviceTargetClass(props, {
231
+ prefix: 'grid__item_align-self_',
232
+ propsKey: 'alignSelf'
233
+ });
234
+ var justifySelfClass = useDeviceTargetClass.useDeviceTargetClass(props, {
235
+ prefix: 'grid__item_justify-self_',
236
+ propsKey: 'justifySelf'
237
+ });
238
+ var columnStartClass = useDeviceTargetClass.useDeviceTargetClass(props, {
239
+ prefix: 'grid__item_column-start_',
240
+ propsKey: 'columnStart'
241
+ });
242
+ var columnEndClass = useDeviceTargetClass.useDeviceTargetClass(props, {
243
+ prefix: 'grid__item_column-end_',
244
+ propsKey: 'columnEnd'
245
+ });
246
+ var columnSpanClass = useDeviceTargetClass.useDeviceTargetClass(props, {
247
+ prefix: 'grid__item_column-span_',
248
+ propsKey: 'columnSpan'
249
+ });
250
+ var rowStartClass = useDeviceTargetClass.useDeviceTargetClass(props, {
251
+ prefix: 'grid__item_row-start_',
252
+ propsKey: 'rowStart'
253
+ });
254
+ var rowEndClass = useDeviceTargetClass.useDeviceTargetClass(props, {
255
+ prefix: 'grid__item_row-end_',
256
+ propsKey: 'rowEnd'
257
+ });
258
+ var rowSpanClass = useDeviceTargetClass.useDeviceTargetClass(props, {
259
+ prefix: 'grid__item_row-span_',
260
+ propsKey: 'rowSpan'
261
+ });
262
+ var fillClass = useDeviceTargetClass.useDeviceTargetClass(props, {
263
+ prefix: 'fill_',
264
+ propsKey: 'fill'
265
+ });
266
+ var directionClass = useDeviceTargetClass.useDeviceTargetClass(props, {
267
+ prefix: 'direction_',
268
+ propsKey: 'direction'
269
+ });
270
+ var _useStyles = useStyles.useStyles(props),
271
+ gridItemStyles = _useStyles.styles;
272
+ return /*#__PURE__*/React__default.default.createElement("div", {
273
+ className: clsx__default.default(className, 'grid__item', orderClass, fillClass, alignSelfClass, justifySelfClass, columnStartClass, columnEndClass, columnSpanClass, rowStartClass, rowEndClass, rowSpanClass, directionClass),
274
+ id: id,
275
+ style: gridItemStyles
276
+ }, children);
277
+ }
278
+ GridItem.propTypes = {
279
+ id: PropTypes__default.default.string,
280
+ alignSelf: PropTypes__default.default.oneOf(gridAlignSelf.default),
281
+ alignSelfDesktop: PropTypes__default.default.oneOf(gridAlignSelf.default),
282
+ alignSelfMobile: PropTypes__default.default.oneOf(gridAlignSelf.default),
283
+ alignSelfTablet: PropTypes__default.default.oneOf(gridAlignSelf.default),
284
+ children: PropTypes__default.default.any,
285
+ className: PropTypes__default.default.string,
286
+ fill: PropTypes__default.default.oneOf(PropTypes__default.default.oneOf(fill.default)),
287
+ fillMobile: PropTypes__default.default.oneOf(fill.default),
288
+ fillTablet: PropTypes__default.default.oneOf(fill.default),
289
+ fillDesktop: PropTypes__default.default.oneOf(fill.default),
290
+ columnEnd: PropTypes__default.default.number,
291
+ columnEndDesktop: PropTypes__default.default.number,
292
+ columnEndMobile: PropTypes__default.default.number,
293
+ columnEndTablet: PropTypes__default.default.number,
294
+ columnSpan: PropTypes__default.default.number,
295
+ columnSpanDesktop: PropTypes__default.default.number,
296
+ columnSpanMobile: PropTypes__default.default.number,
297
+ columnSpanTablet: PropTypes__default.default.number,
298
+ columnStart: PropTypes__default.default.number,
299
+ columnStartDesktop: PropTypes__default.default.number,
300
+ columnStartMobile: PropTypes__default.default.number,
301
+ columnStartTablet: PropTypes__default.default.number,
302
+ rowEnd: PropTypes__default.default.number,
303
+ rowEndDesktop: PropTypes__default.default.number,
304
+ rowEndMobile: PropTypes__default.default.number,
305
+ rowEndTablet: PropTypes__default.default.number,
306
+ rowSpan: PropTypes__default.default.number,
307
+ rowSpanDesktop: PropTypes__default.default.number,
308
+ rowSpanMobile: PropTypes__default.default.number,
309
+ rowSpanTablet: PropTypes__default.default.number,
310
+ rowStart: PropTypes__default.default.number,
311
+ rowStartDesktop: PropTypes__default.default.number,
312
+ rowStartMobile: PropTypes__default.default.number,
313
+ rowStartTablet: PropTypes__default.default.number,
314
+ justifySelf: PropTypes__default.default.oneOf(gridJustifySelf.default),
315
+ justifySelfDesktop: PropTypes__default.default.oneOf(gridJustifySelf.default),
316
+ justifySelfMobile: PropTypes__default.default.oneOf(gridJustifySelf.default),
317
+ justifySelfTablet: PropTypes__default.default.oneOf(gridJustifySelf.default),
318
+ order: PropTypes__default.default.number,
319
+ orderDesktop: PropTypes__default.default.number,
320
+ orderMobile: PropTypes__default.default.number,
321
+ orderTablet: PropTypes__default.default.number,
322
+ zIndex: PropTypes__default.default.number,
323
+ zIndexMobile: PropTypes__default.default.number,
324
+ zIndexTablet: PropTypes__default.default.number,
325
+ zIndexDesktop: PropTypes__default.default.number
326
+ };
327
+
328
+ exports.Grid = Grid;
329
+ exports.GridItem = GridItem;