@zohodesk/components 1.0.0-temp-220.11 → 1.0.0-temp-230

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 (161) hide show
  1. package/.cli/propValidation_report.html +1 -1
  2. package/README.md +33 -1
  3. package/assets/Appearance/dark/mode/Component_DarkMode.module.css +8 -0
  4. package/assets/Appearance/light/mode/Component_LightMode.module.css +8 -0
  5. package/assets/Appearance/pureDark/mode/Component_PureDarkMode.module.css +8 -0
  6. package/es/Accordion/Accordion.js +1 -1
  7. package/es/AppContainer/AppContainer.js +1 -1
  8. package/es/Card/Card.js +48 -14
  9. package/es/Card/__tests__/Card.spec.js +81 -2
  10. package/es/Card/__tests__/__snapshots__/Card.spec.js.snap +44 -0
  11. package/es/Card/props/defaultProps.js +2 -1
  12. package/es/Card/props/propTypes.js +2 -1
  13. package/es/ColorSelect/ColorMultiSelect.js +36 -0
  14. package/es/ColorSelect/ColorSingleSelect.js +50 -0
  15. package/es/ColorSelect/__tests__/ColorMultiSelect.spec.js +59 -0
  16. package/es/ColorSelect/__tests__/ColorSingleSelect.spec.js +59 -0
  17. package/es/ColorSelect/__tests__/__snapshots__/ColorMultiSelect.spec.js.snap +547 -0
  18. package/es/ColorSelect/__tests__/__snapshots__/ColorSingleSelect.spec.js.snap +178 -0
  19. package/es/ColorSelect/common/ColorIndicator/ColorIndicator.js +27 -0
  20. package/es/ColorSelect/common/ColorIndicator/ColorIndicator.module.css +18 -0
  21. package/es/ColorSelect/common/ColorIndicator/__tests__/ColorSingleSelect.spec.js +60 -0
  22. package/es/ColorSelect/common/ColorIndicator/__tests__/__snapshots__/ColorSingleSelect.spec.js.snap +95 -0
  23. package/es/ColorSelect/common/ColorIndicator/props/defaultProps.js +7 -0
  24. package/es/ColorSelect/common/ColorIndicator/props/propTypes.js +9 -0
  25. package/es/ColorSelect/common/ColoredTag/ColoredTag.js +33 -0
  26. package/es/ColorSelect/common/ColoredTag/__tests__/ColoredTag.spec.js +50 -0
  27. package/es/ColorSelect/common/ColoredTag/__tests__/__snapshots__/ColoredTag.spec.js.snap +101 -0
  28. package/es/ColorSelect/common/ColoredTag/props/propTypes.js +9 -0
  29. package/es/ColorSelect/common/helpers.js +35 -0
  30. package/es/ColorSelect/props/defaultProps.js +13 -0
  31. package/es/ColorSelect/props/propTypes.js +14 -0
  32. package/es/DateTime/__tests__/__snapshots__/DateTime.spec.js.snap +9 -18
  33. package/es/DateTime/__tests__/__snapshots__/DateWidget.spec.js.snap +3 -6
  34. package/es/DateTime/__tests__/__snapshots__/Time.spec.js.snap +9 -18
  35. package/es/DropBox/DropBoxElement/css/DropBoxElement.module.css +7 -0
  36. package/es/InputFieldLine/InputFieldLine.js +39 -0
  37. package/es/InputFieldLine/InputFieldLine.module.css +90 -0
  38. package/es/InputFieldLine/__tests__/InputFieldLine.spec.js +114 -0
  39. package/es/InputFieldLine/__tests__/__snapshots__/InputFieldLine.spec.js.snap +194 -0
  40. package/es/InputFieldLine/props/defaultProps.js +14 -0
  41. package/es/InputFieldLine/props/propTypes.js +19 -0
  42. package/es/ListItem/ListItem.js +7 -2
  43. package/es/ListItem/ListItem.module.css +6 -0
  44. package/es/ListItem/__tests__/ListItem.spec.js +8 -0
  45. package/es/ListItem/__tests__/__snapshots__/ListItem.spec.js.snap +47 -0
  46. package/es/ListItem/props/propTypes.js +2 -1
  47. package/es/MultiSelect/MultiSelect.js +14 -4
  48. package/es/MultiSelect/SelectedOptions.js +24 -1
  49. package/es/MultiSelect/Suggestions.js +3 -1
  50. package/es/MultiSelect/__tests__/MultiSelect.spec.js +38 -0
  51. package/es/MultiSelect/__tests__/SelectedOptions.spec.js +13 -0
  52. package/es/MultiSelect/__tests__/Suggestions.spec.js +12 -0
  53. package/es/MultiSelect/__tests__/__snapshots__/AdvancedGroupMultiSelect.spec.js.snap +3 -3
  54. package/es/MultiSelect/__tests__/__snapshots__/AdvancedMultiSelect.spec.js.snap +9 -9
  55. package/es/MultiSelect/__tests__/__snapshots__/MultiSelect.spec.js.snap +88 -3
  56. package/es/MultiSelect/__tests__/__snapshots__/MultiSelectWithAvatar.spec.js.snap +3 -3
  57. package/es/MultiSelect/__tests__/__snapshots__/SelectedOptions.spec.js.snap +15 -0
  58. package/es/MultiSelect/__tests__/__snapshots__/Suggestions.spec.js.snap +66 -0
  59. package/es/MultiSelect/props/propTypes.js +9 -3
  60. package/es/Popup/Popup.js +3 -3
  61. package/es/Select/ArrowIcon/ArrowIcon.js +48 -0
  62. package/es/Select/ArrowIcon/ArrowIcon.module.css +22 -0
  63. package/es/Select/Select.js +33 -4
  64. package/es/Select/__tests__/Select.spec.js +25 -0
  65. package/es/Select/__tests__/__snapshots__/GroupSelect.spec.js.snap +3 -6
  66. package/es/Select/__tests__/__snapshots__/Select.spec.js.snap +516 -419
  67. package/es/Select/__tests__/__snapshots__/SelectWithIcon.spec.js.snap +3 -6
  68. package/es/Select/props/propTypes.js +2 -1
  69. package/es/TextBoxIcon/TextBoxIcon.js +18 -12
  70. package/es/TextBoxIcon/TextBoxIcon.module.css +3 -38
  71. package/es/TextBoxIcon/__tests__/TextBoxIcon.spec.js +1 -2
  72. package/es/TextBoxIcon/__tests__/__snapshots__/TextBoxIcon.spec.js.snap +116 -225
  73. package/es/TextBoxIcon/props/propTypes.js +1 -2
  74. package/es/common/basic.module.css +0 -2
  75. package/es/components_layer.module.css +1 -0
  76. package/es/utils/Common.js +3 -1
  77. package/es/utils/dropDownUtils.js +8 -2
  78. package/es/v1/Popup/Popup.js +1 -1
  79. package/es/v1/Select/Select.js +1 -1
  80. package/lib/Accordion/Accordion.js +2 -2
  81. package/lib/AppContainer/AppContainer.js +1 -1
  82. package/lib/Card/Card.js +64 -30
  83. package/lib/Card/__tests__/Card.spec.js +118 -1
  84. package/lib/Card/__tests__/__snapshots__/Card.spec.js.snap +44 -0
  85. package/lib/Card/props/defaultProps.js +2 -1
  86. package/lib/Card/props/propTypes.js +2 -1
  87. package/lib/ColorSelect/ColorMultiSelect.js +65 -0
  88. package/lib/ColorSelect/ColorSingleSelect.js +78 -0
  89. package/lib/ColorSelect/__tests__/ColorMultiSelect.spec.js +70 -0
  90. package/lib/ColorSelect/__tests__/ColorSingleSelect.spec.js +70 -0
  91. package/lib/ColorSelect/__tests__/__snapshots__/ColorMultiSelect.spec.js.snap +547 -0
  92. package/lib/ColorSelect/__tests__/__snapshots__/ColorSingleSelect.spec.js.snap +178 -0
  93. package/lib/ColorSelect/common/ColorIndicator/ColorIndicator.js +40 -0
  94. package/lib/ColorSelect/common/ColorIndicator/ColorIndicator.module.css +18 -0
  95. package/lib/ColorSelect/common/ColorIndicator/__tests__/ColorSingleSelect.spec.js +67 -0
  96. package/lib/ColorSelect/common/ColorIndicator/__tests__/__snapshots__/ColorSingleSelect.spec.js.snap +95 -0
  97. package/lib/ColorSelect/common/ColorIndicator/props/defaultProps.js +14 -0
  98. package/lib/ColorSelect/common/ColorIndicator/props/propTypes.js +20 -0
  99. package/lib/ColorSelect/common/ColoredTag/ColoredTag.js +61 -0
  100. package/lib/ColorSelect/common/ColoredTag/__tests__/ColoredTag.spec.js +58 -0
  101. package/lib/ColorSelect/common/ColoredTag/__tests__/__snapshots__/ColoredTag.spec.js.snap +101 -0
  102. package/lib/ColorSelect/common/ColoredTag/props/propTypes.js +28 -0
  103. package/lib/ColorSelect/common/helpers.js +53 -0
  104. package/lib/ColorSelect/props/defaultProps.js +31 -0
  105. package/lib/ColorSelect/props/propTypes.js +35 -0
  106. package/lib/DateTime/__tests__/__snapshots__/DateTime.spec.js.snap +9 -18
  107. package/lib/DateTime/__tests__/__snapshots__/DateWidget.spec.js.snap +3 -6
  108. package/lib/DateTime/__tests__/__snapshots__/Time.spec.js.snap +9 -18
  109. package/lib/DropBox/DropBoxElement/css/DropBoxElement.module.css +7 -0
  110. package/lib/InputFieldLine/InputFieldLine.js +53 -0
  111. package/lib/InputFieldLine/InputFieldLine.module.css +90 -0
  112. package/lib/InputFieldLine/__tests__/InputFieldLine.spec.js +122 -0
  113. package/lib/InputFieldLine/__tests__/__snapshots__/InputFieldLine.spec.js.snap +194 -0
  114. package/lib/InputFieldLine/props/defaultProps.js +21 -0
  115. package/lib/InputFieldLine/props/propTypes.js +36 -0
  116. package/lib/ListItem/ListItem.js +7 -2
  117. package/lib/ListItem/ListItem.module.css +6 -0
  118. package/lib/ListItem/__tests__/ListItem.spec.js +8 -0
  119. package/lib/ListItem/__tests__/__snapshots__/ListItem.spec.js.snap +47 -0
  120. package/lib/ListItem/props/propTypes.js +2 -1
  121. package/lib/MultiSelect/MultiSelect.js +14 -6
  122. package/lib/MultiSelect/SelectedOptions.js +24 -1
  123. package/lib/MultiSelect/Suggestions.js +3 -1
  124. package/lib/MultiSelect/__tests__/MultiSelect.spec.js +40 -0
  125. package/lib/MultiSelect/__tests__/SelectedOptions.spec.js +15 -0
  126. package/lib/MultiSelect/__tests__/Suggestions.spec.js +14 -0
  127. package/lib/MultiSelect/__tests__/__snapshots__/AdvancedGroupMultiSelect.spec.js.snap +3 -3
  128. package/lib/MultiSelect/__tests__/__snapshots__/AdvancedMultiSelect.spec.js.snap +9 -9
  129. package/lib/MultiSelect/__tests__/__snapshots__/MultiSelect.spec.js.snap +88 -3
  130. package/lib/MultiSelect/__tests__/__snapshots__/MultiSelectWithAvatar.spec.js.snap +3 -3
  131. package/lib/MultiSelect/__tests__/__snapshots__/SelectedOptions.spec.js.snap +15 -0
  132. package/lib/MultiSelect/__tests__/__snapshots__/Suggestions.spec.js.snap +66 -0
  133. package/lib/MultiSelect/props/propTypes.js +9 -3
  134. package/lib/Popup/Popup.js +4 -4
  135. package/lib/Select/ArrowIcon/ArrowIcon.js +62 -0
  136. package/lib/Select/ArrowIcon/ArrowIcon.module.css +22 -0
  137. package/lib/Select/Select.js +34 -4
  138. package/lib/Select/__tests__/Select.spec.js +177 -148
  139. package/lib/Select/__tests__/__snapshots__/GroupSelect.spec.js.snap +3 -6
  140. package/lib/Select/__tests__/__snapshots__/Select.spec.js.snap +516 -419
  141. package/lib/Select/__tests__/__snapshots__/SelectWithIcon.spec.js.snap +3 -6
  142. package/lib/Select/props/propTypes.js +2 -1
  143. package/lib/TextBoxIcon/TextBoxIcon.js +19 -13
  144. package/lib/TextBoxIcon/TextBoxIcon.module.css +3 -38
  145. package/lib/TextBoxIcon/__tests__/TextBoxIcon.spec.js +1 -2
  146. package/lib/TextBoxIcon/__tests__/__snapshots__/TextBoxIcon.spec.js.snap +116 -225
  147. package/lib/TextBoxIcon/props/propTypes.js +1 -2
  148. package/lib/common/basic.module.css +0 -2
  149. package/lib/components_layer.module.css +1 -0
  150. package/lib/utils/Common.js +9 -3
  151. package/lib/utils/dropDownUtils.js +10 -1
  152. package/lib/v1/Popup/Popup.js +2 -2
  153. package/lib/v1/Select/Select.js +2 -2
  154. package/package.json +24 -14
  155. package/css_error.log +0 -1
  156. package/install.md +0 -10
  157. package/postPublish.js +0 -8
  158. package/prePublish.js +0 -70
  159. package/react-cli.config.js +0 -24
  160. package/result.json +0 -1
  161. /package/.cli/{stringContains.js → themeValidate/stringContains.js} +0 -0
@@ -0,0 +1,178 @@
1
+ // Jest Snapshot v1, https://goo.gl/fbAQLP
2
+
3
+ exports[`ColorSingleSelect Should render the default selected value 1`] = `
4
+ <DocumentFragment>
5
+ <div
6
+ class="container box_medium "
7
+ data-selector-id="select"
8
+ >
9
+ <div
10
+ class=""
11
+ data-id="selectComponent"
12
+ data-test-id="selectComponent"
13
+ >
14
+ <div
15
+ class="varClass customContainer medium border_bottom effect borderColor_default hasBorder flex rowdir"
16
+ data-selector-id="container"
17
+ data-title=""
18
+ >
19
+ <div
20
+ aria-labelledby="6"
21
+ class="container effect medium lgRadius default "
22
+ data-id="tag_Tag"
23
+ data-selector-id="tag"
24
+ data-test-id="tag_Tag"
25
+ data-title="Red"
26
+ style="--tag_bg_color: rgba(255, 110, 110, 0.2); --tag_text_color: #ff6e6e; --tag_border_color: #ff6e6e;"
27
+ tabindex="0"
28
+ >
29
+ <div
30
+ aria-hidden="true"
31
+ class="text mediumtext"
32
+ id="6"
33
+ >
34
+ Red
35
+ </div>
36
+ </div>
37
+ </div>
38
+ </div>
39
+ </div>
40
+ </DocumentFragment>
41
+ `;
42
+
43
+ exports[`ColorSingleSelect Should render the selected value 1`] = `
44
+ <DocumentFragment>
45
+ <div
46
+ class="container box_medium "
47
+ data-selector-id="select"
48
+ >
49
+ <div
50
+ class=""
51
+ data-id="selectComponent"
52
+ data-test-id="selectComponent"
53
+ >
54
+ <div
55
+ class="varClass customContainer medium border_bottom effect borderColor_default hasBorder flex rowdir"
56
+ data-selector-id="container"
57
+ data-title=""
58
+ >
59
+ <div
60
+ aria-labelledby="9"
61
+ class="container effect medium lgRadius default "
62
+ data-id="tag_Tag"
63
+ data-selector-id="tag"
64
+ data-test-id="tag_Tag"
65
+ tabindex="0"
66
+ >
67
+ <div
68
+ aria-hidden="true"
69
+ class="text mediumtext"
70
+ id="9"
71
+ />
72
+ </div>
73
+ </div>
74
+ </div>
75
+ </div>
76
+ </DocumentFragment>
77
+ `;
78
+
79
+ exports[`ColorSingleSelect rendering the defult props 1`] = `
80
+ <DocumentFragment>
81
+ <div
82
+ class="container box_medium "
83
+ data-selector-id="select"
84
+ >
85
+ <div
86
+ class=""
87
+ data-id="selectComponent"
88
+ data-test-id="selectComponent"
89
+ >
90
+ <div
91
+ class="varClass customContainer medium border_bottom effect borderColor_default hasBorder flex rowdir"
92
+ data-selector-id="container"
93
+ data-title=""
94
+ >
95
+ <div
96
+ aria-labelledby="3"
97
+ class="container effect medium lgRadius default "
98
+ data-id="tag_Tag"
99
+ data-selector-id="tag"
100
+ data-test-id="tag_Tag"
101
+ tabindex="0"
102
+ >
103
+ <div
104
+ aria-hidden="true"
105
+ class="text mediumtext"
106
+ id="3"
107
+ />
108
+ </div>
109
+ </div>
110
+ </div>
111
+ </div>
112
+ </DocumentFragment>
113
+ `;
114
+
115
+ exports[`ColorSingleSelect renders with renderCustomColorIndicator 1`] = `
116
+ <DocumentFragment>
117
+ <div
118
+ class="container box_medium "
119
+ data-selector-id="select"
120
+ >
121
+ <div
122
+ class=""
123
+ data-id="selectComponent"
124
+ data-test-id="selectComponent"
125
+ >
126
+ <div
127
+ class="varClass customContainer medium border_bottom effect borderColor_default hasBorder flex rowdir"
128
+ data-selector-id="container"
129
+ data-title=""
130
+ >
131
+ <div
132
+ aria-labelledby="12"
133
+ class="container effect medium lgRadius default "
134
+ data-id="tag_Tag"
135
+ data-selector-id="tag"
136
+ data-test-id="tag_Tag"
137
+ data-title="Red"
138
+ style="--tag_bg_color: rgba(255, 110, 110, 0.2); --tag_text_color: #ff6e6e; --tag_border_color: #ff6e6e;"
139
+ tabindex="0"
140
+ >
141
+ <div
142
+ aria-hidden="true"
143
+ class="text mediumtext"
144
+ id="12"
145
+ >
146
+ Red
147
+ </div>
148
+ </div>
149
+ </div>
150
+ </div>
151
+ </div>
152
+ </DocumentFragment>
153
+ `;
154
+
155
+ exports[`ColorSingleSelect renders with renderCustomSelectedValue 1`] = `
156
+ <DocumentFragment>
157
+ <div
158
+ class="container box_medium "
159
+ data-selector-id="select"
160
+ >
161
+ <div
162
+ class=""
163
+ data-id="selectComponent"
164
+ data-test-id="selectComponent"
165
+ >
166
+ <div
167
+ class="varClass customContainer medium border_bottom effect borderColor_default hasBorder flex rowdir"
168
+ data-selector-id="container"
169
+ data-title=""
170
+ >
171
+ <span>
172
+ custom selected value
173
+ </span>
174
+ </div>
175
+ </div>
176
+ </div>
177
+ </DocumentFragment>
178
+ `;
@@ -0,0 +1,27 @@
1
+ import React from 'react';
2
+ import style from "./ColorIndicator.module.css";
3
+ import { defaultProps } from "./props/defaultProps";
4
+ import { propTypes } from "./props/propTypes";
5
+
6
+ function ColorIndicator(props) {
7
+ const {
8
+ colorCode,
9
+ shape,
10
+ customClass,
11
+ customId,
12
+ testId,
13
+ customAttributes
14
+ } = props;
15
+ return /*#__PURE__*/React.createElement("div", { ...customAttributes,
16
+ className: `${style.varClass} ${style.indicator} ${style[shape]} ${customClass}`,
17
+ style: {
18
+ backgroundColor: colorCode
19
+ },
20
+ "data-id": customId,
21
+ "data-test-id": testId
22
+ });
23
+ }
24
+
25
+ ColorIndicator.propTypes = propTypes;
26
+ ColorIndicator.defaultProps = defaultProps;
27
+ export default ColorIndicator;
@@ -0,0 +1,18 @@
1
+ .varClass {
2
+ --height: var(--zd_size10);
3
+ --width: var(--zd_size10);
4
+ }
5
+
6
+ .circle {
7
+ --border-radius: 10px;
8
+ }
9
+
10
+ .square {
11
+ --border-radius: 2px;
12
+ }
13
+
14
+ .indicator {
15
+ height: var(--height);
16
+ width: var(--width);
17
+ border-radius: var(--border-radius);
18
+ }
@@ -0,0 +1,60 @@
1
+ import React from 'react';
2
+ import { render } from '@testing-library/react';
3
+ import ColorIndicator from "../ColorIndicator";
4
+ describe('ColorIndicator', () => {
5
+ test('rendering the defult props', () => {
6
+ const {
7
+ asFragment
8
+ } = render( /*#__PURE__*/React.createElement(ColorIndicator, null));
9
+ expect(asFragment()).toMatchSnapshot();
10
+ });
11
+ test('rendering with custom id and test id', () => {
12
+ const {
13
+ asFragment
14
+ } = render( /*#__PURE__*/React.createElement(ColorIndicator, {
15
+ customId: "custom-id",
16
+ testId: "test-id"
17
+ }));
18
+ expect(asFragment()).toMatchSnapshot();
19
+ });
20
+ test('rendering with custom attributes', () => {
21
+ const {
22
+ asFragment
23
+ } = render( /*#__PURE__*/React.createElement(ColorIndicator, {
24
+ customAttributes: {
25
+ 'data-custom-attribute': 'true'
26
+ }
27
+ }));
28
+ expect(asFragment()).toMatchSnapshot();
29
+ });
30
+ test('rendering with different color codes', () => {
31
+ const colors = ['#ff0000', '#00ff00', '#0000ff'];
32
+ colors.forEach(color => {
33
+ const {
34
+ asFragment
35
+ } = render( /*#__PURE__*/React.createElement(ColorIndicator, {
36
+ colorCode: color
37
+ }));
38
+ expect(asFragment()).toMatchSnapshot();
39
+ });
40
+ });
41
+ test('rendering with different shapes', () => {
42
+ const shapes = ['circle', 'square'];
43
+ shapes.forEach(shape => {
44
+ const {
45
+ asFragment
46
+ } = render( /*#__PURE__*/React.createElement(ColorIndicator, {
47
+ shape: shape
48
+ }));
49
+ expect(asFragment()).toMatchSnapshot();
50
+ });
51
+ });
52
+ test('rendering with custom class', () => {
53
+ const {
54
+ asFragment
55
+ } = render( /*#__PURE__*/React.createElement(ColorIndicator, {
56
+ customClass: "color-indicator-test-class"
57
+ }));
58
+ expect(asFragment()).toMatchSnapshot();
59
+ });
60
+ });
@@ -0,0 +1,95 @@
1
+ // Jest Snapshot v1, https://goo.gl/fbAQLP
2
+
3
+ exports[`ColorIndicator rendering the defult props 1`] = `
4
+ <DocumentFragment>
5
+ <div
6
+ class="varClass indicator circle "
7
+ data-id=""
8
+ data-test-id=""
9
+ />
10
+ </DocumentFragment>
11
+ `;
12
+
13
+ exports[`ColorIndicator rendering with custom attributes 1`] = `
14
+ <DocumentFragment>
15
+ <div
16
+ class="varClass indicator circle "
17
+ data-custom-attribute="true"
18
+ data-id=""
19
+ data-test-id=""
20
+ />
21
+ </DocumentFragment>
22
+ `;
23
+
24
+ exports[`ColorIndicator rendering with custom class 1`] = `
25
+ <DocumentFragment>
26
+ <div
27
+ class="varClass indicator circle color-indicator-test-class"
28
+ data-id=""
29
+ data-test-id=""
30
+ />
31
+ </DocumentFragment>
32
+ `;
33
+
34
+ exports[`ColorIndicator rendering with custom id and test id 1`] = `
35
+ <DocumentFragment>
36
+ <div
37
+ class="varClass indicator circle "
38
+ data-id="custom-id"
39
+ data-test-id="test-id"
40
+ />
41
+ </DocumentFragment>
42
+ `;
43
+
44
+ exports[`ColorIndicator rendering with different color codes 1`] = `
45
+ <DocumentFragment>
46
+ <div
47
+ class="varClass indicator circle "
48
+ data-id=""
49
+ data-test-id=""
50
+ style="background-color: rgb(255, 0, 0);"
51
+ />
52
+ </DocumentFragment>
53
+ `;
54
+
55
+ exports[`ColorIndicator rendering with different color codes 2`] = `
56
+ <DocumentFragment>
57
+ <div
58
+ class="varClass indicator circle "
59
+ data-id=""
60
+ data-test-id=""
61
+ style="background-color: rgb(0, 255, 0);"
62
+ />
63
+ </DocumentFragment>
64
+ `;
65
+
66
+ exports[`ColorIndicator rendering with different color codes 3`] = `
67
+ <DocumentFragment>
68
+ <div
69
+ class="varClass indicator circle "
70
+ data-id=""
71
+ data-test-id=""
72
+ style="background-color: rgb(0, 0, 255);"
73
+ />
74
+ </DocumentFragment>
75
+ `;
76
+
77
+ exports[`ColorIndicator rendering with different shapes 1`] = `
78
+ <DocumentFragment>
79
+ <div
80
+ class="varClass indicator circle "
81
+ data-id=""
82
+ data-test-id=""
83
+ />
84
+ </DocumentFragment>
85
+ `;
86
+
87
+ exports[`ColorIndicator rendering with different shapes 2`] = `
88
+ <DocumentFragment>
89
+ <div
90
+ class="varClass indicator square "
91
+ data-id=""
92
+ data-test-id=""
93
+ />
94
+ </DocumentFragment>
95
+ `;
@@ -0,0 +1,7 @@
1
+ export const defaultProps = {
2
+ shape: 'circle',
3
+ customId: '',
4
+ testId: '',
5
+ customClass: '',
6
+ customAttributes: {}
7
+ };
@@ -0,0 +1,9 @@
1
+ import PropTypes from 'prop-types';
2
+ export const propTypes = {
3
+ colorCode: PropTypes.string,
4
+ shape: PropTypes.oneOf(['circle', 'square']),
5
+ customClass: PropTypes.string,
6
+ customId: PropTypes.string,
7
+ testId: PropTypes.string,
8
+ customAttributes: PropTypes.object
9
+ };
@@ -0,0 +1,33 @@
1
+ import React from 'react';
2
+ import { propTypes } from "./props/propTypes";
3
+ import Tag from "../../../Tag/Tag";
4
+ import { DUMMY_OBJECT } from "../../../utils/Common.js";
5
+
6
+ function ColoredTag(props) {
7
+ const {
8
+ colorConfig,
9
+ customAttributes,
10
+ isActive,
11
+ ...rest
12
+ } = props;
13
+ const {
14
+ textColor,
15
+ backgroundColor,
16
+ borderColor
17
+ } = colorConfig || DUMMY_OBJECT;
18
+ const style = {
19
+ '--tag_bg_color': backgroundColor,
20
+ '--tag_text_color': textColor,
21
+ '--tag_border_color': borderColor
22
+ };
23
+ const composedAttributes = { ...customAttributes,
24
+ style: style
25
+ };
26
+ return /*#__PURE__*/React.createElement(Tag, { ...rest,
27
+ active: isActive,
28
+ customAttributes: composedAttributes
29
+ });
30
+ }
31
+
32
+ ColoredTag.propTypes = propTypes;
33
+ export default ColoredTag;
@@ -0,0 +1,50 @@
1
+ import React from 'react';
2
+ import { render } from '@testing-library/react';
3
+ import ColoredTag from "../ColoredTag";
4
+ describe('ColoredTag', () => {
5
+ test('rendering the defult props', () => {
6
+ const {
7
+ asFragment
8
+ } = render( /*#__PURE__*/React.createElement(ColoredTag, null));
9
+ expect(asFragment()).toMatchSnapshot();
10
+ });
11
+ test('rendering with isActive true', () => {
12
+ const {
13
+ asFragment
14
+ } = render( /*#__PURE__*/React.createElement(ColoredTag, {
15
+ isActive: true
16
+ }));
17
+ expect(asFragment()).toMatchSnapshot();
18
+ });
19
+ test('rendering with colorConfig', () => {
20
+ const colorConfig = {
21
+ backgroundColor: 'lightsteelblue',
22
+ textColor: 'dodgerblue',
23
+ borderColor: 'dodgerblue'
24
+ };
25
+ const {
26
+ asFragment
27
+ } = render( /*#__PURE__*/React.createElement(ColoredTag, {
28
+ colorConfig: colorConfig
29
+ }));
30
+ expect(asFragment()).toMatchSnapshot();
31
+ });
32
+ test('rendering with customAttributes', () => {
33
+ const {
34
+ asFragment
35
+ } = render( /*#__PURE__*/React.createElement(ColoredTag, {
36
+ customAttributes: {
37
+ 'data-custom-attribute': 'true'
38
+ }
39
+ }));
40
+ expect(asFragment()).toMatchSnapshot();
41
+ });
42
+ test('rendering with text', () => {
43
+ const {
44
+ asFragment
45
+ } = render( /*#__PURE__*/React.createElement(ColoredTag, {
46
+ text: 'Colored Tag'
47
+ }));
48
+ expect(asFragment()).toMatchSnapshot();
49
+ });
50
+ });
@@ -0,0 +1,101 @@
1
+ // Jest Snapshot v1, https://goo.gl/fbAQLP
2
+
3
+ exports[`ColoredTag rendering the defult props 1`] = `
4
+ <DocumentFragment>
5
+ <div
6
+ aria-labelledby="1"
7
+ class="container effect medium lgRadius default "
8
+ data-id="tag_Tag"
9
+ data-selector-id="tag"
10
+ data-test-id="tag_Tag"
11
+ tabindex="0"
12
+ >
13
+ <div
14
+ aria-hidden="true"
15
+ class="text mediumtext"
16
+ id="1"
17
+ />
18
+ </div>
19
+ </DocumentFragment>
20
+ `;
21
+
22
+ exports[`ColoredTag rendering with colorConfig 1`] = `
23
+ <DocumentFragment>
24
+ <div
25
+ aria-labelledby="3"
26
+ class="container effect medium lgRadius default "
27
+ data-id="tag_Tag"
28
+ data-selector-id="tag"
29
+ data-test-id="tag_Tag"
30
+ style="--tag_bg_color: lightsteelblue; --tag_text_color: dodgerblue; --tag_border_color: dodgerblue;"
31
+ tabindex="0"
32
+ >
33
+ <div
34
+ aria-hidden="true"
35
+ class="text mediumtext"
36
+ id="3"
37
+ />
38
+ </div>
39
+ </DocumentFragment>
40
+ `;
41
+
42
+ exports[`ColoredTag rendering with customAttributes 1`] = `
43
+ <DocumentFragment>
44
+ <div
45
+ aria-labelledby="4"
46
+ class="container effect medium lgRadius default "
47
+ data-custom-attribute="true"
48
+ data-id="tag_Tag"
49
+ data-selector-id="tag"
50
+ data-test-id="tag_Tag"
51
+ tabindex="0"
52
+ >
53
+ <div
54
+ aria-hidden="true"
55
+ class="text mediumtext"
56
+ id="4"
57
+ />
58
+ </div>
59
+ </DocumentFragment>
60
+ `;
61
+
62
+ exports[`ColoredTag rendering with isActive true 1`] = `
63
+ <DocumentFragment>
64
+ <div
65
+ aria-labelledby="2"
66
+ class="container effect selected activedefault medium lgRadius default "
67
+ data-id="tag_TagSelected"
68
+ data-selector-id="tag"
69
+ data-test-id="tag_TagSelected"
70
+ tabindex="0"
71
+ >
72
+ <div
73
+ aria-hidden="true"
74
+ class="text mediumtext"
75
+ id="2"
76
+ />
77
+ </div>
78
+ </DocumentFragment>
79
+ `;
80
+
81
+ exports[`ColoredTag rendering with text 1`] = `
82
+ <DocumentFragment>
83
+ <div
84
+ aria-labelledby="5"
85
+ class="container effect medium lgRadius default "
86
+ data-id="tag_Tag"
87
+ data-selector-id="tag"
88
+ data-test-id="tag_Tag"
89
+ data-title="Colored Tag"
90
+ tabindex="0"
91
+ >
92
+ <div
93
+ aria-hidden="true"
94
+ class="text mediumtext"
95
+ id="5"
96
+ >
97
+ Colored Tag
98
+ </div>
99
+ </div>
100
+ </DocumentFragment>
101
+ `;
@@ -0,0 +1,9 @@
1
+ import PropTypes from 'prop-types';
2
+ import { propTypes as tagPropTypes } from "../../../../Tag/props/propTypes";
3
+ export const propTypes = { ...tagPropTypes,
4
+ colorConfig: PropTypes.shape({
5
+ textColor: PropTypes.string,
6
+ backgroundColor: PropTypes.string,
7
+ borderColor: PropTypes.string
8
+ })
9
+ };
@@ -0,0 +1,35 @@
1
+ import React from 'react';
2
+ import Color from 'color';
3
+ import ColoredTag from "./ColoredTag/ColoredTag";
4
+ import ColorIndicator from "./ColorIndicator/ColorIndicator";
5
+ export function renderColoredTag(data) {
6
+ const {
7
+ option,
8
+ ...otherData
9
+ } = data;
10
+ const {
11
+ colorCode,
12
+ value,
13
+ id
14
+ } = option;
15
+ const getBgColorValue = colorCode ? Color(colorCode).alpha(0.2).toString() : '';
16
+ const colorConfig = {
17
+ backgroundColor: getBgColorValue,
18
+ textColor: colorCode,
19
+ borderColor: colorCode
20
+ };
21
+ return /*#__PURE__*/React.createElement(ColoredTag, {
22
+ text: value,
23
+ id: id,
24
+ ...otherData,
25
+ colorConfig: colorConfig
26
+ });
27
+ }
28
+ export function renderColorIndicator(data) {
29
+ const {
30
+ colorCode
31
+ } = data;
32
+ return /*#__PURE__*/React.createElement(ColorIndicator, {
33
+ colorCode: colorCode
34
+ });
35
+ }
@@ -0,0 +1,13 @@
1
+ import { MultiSelect_defaultProps } from "../../MultiSelect/props/defaultProps";
2
+ import { Select_defaultProps } from "../../Select/props/defaultProps";
3
+ export const ColorSingleSelect_defaultProps = {
4
+ className: '',
5
+ options: [],
6
+ customProps: {},
7
+ ...Select_defaultProps
8
+ };
9
+ export const ColorMultiSelect_defaultProps = {
10
+ options: [],
11
+ customProps: {},
12
+ ...MultiSelect_defaultProps
13
+ };
@@ -0,0 +1,14 @@
1
+ import PropTypes from 'prop-types';
2
+ import { Select_propTypes } from "../../Select/props/propTypes";
3
+ import { MultiSelect_propTypes } from "../../MultiSelect/props/propTypes";
4
+ export const propTypes = {
5
+ renderCustomColorIndicator: PropTypes.element
6
+ };
7
+ export const ColorSingleSelect_propTypes = {
8
+ customClass: PropTypes.string,
9
+ ...propTypes,
10
+ ...Select_propTypes
11
+ };
12
+ export const ColorMultiSelect_propTypes = { ...propTypes,
13
+ ...MultiSelect_propTypes
14
+ };