@zohodesk/components 1.0.0-temp-241 → 1.0.0-temp-242

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 (149) hide show
  1. package/README.md +48 -0
  2. package/assets/Appearance/dark/mode/Component_DarkMode.module.css +172 -168
  3. package/assets/Appearance/dark/mode/Component_v1_DarkMode.module.css +8 -8
  4. package/assets/Appearance/dark/themes/blue/blue_CTA_DarkModifyCategory.module.css +465 -465
  5. package/assets/Appearance/dark/themes/blue/blue_CTA_DarkTheme.module.css +31 -31
  6. package/assets/Appearance/dark/themes/blue/blue_ComponentTheme_DarkTheme.module.css +7 -4
  7. package/assets/Appearance/dark/themes/green/green_CTA_DarkModifyCategory.module.css +465 -465
  8. package/assets/Appearance/dark/themes/green/green_CTA_DarkTheme.module.css +31 -31
  9. package/assets/Appearance/dark/themes/green/green_ComponentTheme_DarkTheme.module.css +7 -4
  10. package/assets/Appearance/dark/themes/orange/orange_CTA_DarkModifyCategory.module.css +465 -465
  11. package/assets/Appearance/dark/themes/orange/orange_CTA_DarkTheme.module.css +31 -31
  12. package/assets/Appearance/dark/themes/orange/orange_ComponentTheme_DarkTheme.module.css +7 -4
  13. package/assets/Appearance/dark/themes/red/red_CTA_DarkModifyCategory.module.css +465 -465
  14. package/assets/Appearance/dark/themes/red/red_CTA_DarkTheme.module.css +31 -31
  15. package/assets/Appearance/dark/themes/red/red_ComponentTheme_DarkTheme.module.css +7 -4
  16. package/assets/Appearance/dark/themes/yellow/yellow_CTA_DarkModifyCategory.module.css +465 -465
  17. package/assets/Appearance/dark/themes/yellow/yellow_CTA_DarkTheme.module.css +31 -31
  18. package/assets/Appearance/dark/themes/yellow/yellow_ComponentTheme_DarkTheme.module.css +7 -4
  19. package/assets/Appearance/light/mode/Component_LightMode.module.css +169 -165
  20. package/assets/Appearance/light/mode/Component_v1_LightMode.module.css +8 -8
  21. package/assets/Appearance/light/themes/blue/blue_CTA_LightModifyCategory.module.css +465 -465
  22. package/assets/Appearance/light/themes/blue/blue_CTA_LightTheme.module.css +31 -31
  23. package/assets/Appearance/light/themes/blue/blue_ComponentTheme_LightTheme.module.css +7 -4
  24. package/assets/Appearance/light/themes/green/green_CTA_LightModifyCategory.module.css +465 -465
  25. package/assets/Appearance/light/themes/green/green_CTA_LightTheme.module.css +31 -31
  26. package/assets/Appearance/light/themes/green/green_ComponentTheme_LightTheme.module.css +7 -4
  27. package/assets/Appearance/light/themes/orange/orange_CTA_LightModifyCategory.module.css +465 -465
  28. package/assets/Appearance/light/themes/orange/orange_CTA_LightTheme.module.css +31 -31
  29. package/assets/Appearance/light/themes/orange/orange_ComponentTheme_LightTheme.module.css +7 -4
  30. package/assets/Appearance/light/themes/red/red_CTA_LightModifyCategory.module.css +465 -465
  31. package/assets/Appearance/light/themes/red/red_CTA_LightTheme.module.css +31 -31
  32. package/assets/Appearance/light/themes/red/red_ComponentTheme_LightTheme.module.css +7 -4
  33. package/assets/Appearance/light/themes/yellow/yellow_CTA_LightModifyCategory.module.css +465 -465
  34. package/assets/Appearance/light/themes/yellow/yellow_CTA_LightTheme.module.css +31 -31
  35. package/assets/Appearance/light/themes/yellow/yellow_ComponentTheme_LightTheme.module.css +7 -4
  36. package/assets/Appearance/pureDark/mode/Component_PureDarkMode.module.css +174 -170
  37. package/assets/Appearance/pureDark/mode/Component_v1_PureDarkMode.module.css +8 -8
  38. package/assets/Appearance/pureDark/themes/blue/blue_CTA_PureDarkModifyCategory.module.css +465 -465
  39. package/assets/Appearance/pureDark/themes/blue/blue_CTA_PureDarkTheme.module.css +31 -31
  40. package/assets/Appearance/pureDark/themes/blue/blue_ComponentTheme_PureDarkTheme.module.css +7 -4
  41. package/assets/Appearance/pureDark/themes/green/green_CTA_PureDarkModifyCategory.module.css +465 -465
  42. package/assets/Appearance/pureDark/themes/green/green_CTA_PureDarkTheme.module.css +31 -31
  43. package/assets/Appearance/pureDark/themes/green/green_ComponentTheme_PureDarkTheme.module.css +7 -4
  44. package/assets/Appearance/pureDark/themes/orange/orange_CTA_PureDarkModifyCategory.module.css +465 -465
  45. package/assets/Appearance/pureDark/themes/orange/orange_CTA_PureDarkTheme.module.css +31 -31
  46. package/assets/Appearance/pureDark/themes/orange/orange_ComponentTheme_PureDarkTheme.module.css +7 -4
  47. package/assets/Appearance/pureDark/themes/red/red_CTA_PureDarkModifyCategory.module.css +465 -465
  48. package/assets/Appearance/pureDark/themes/red/red_CTA_PureDarkTheme.module.css +31 -31
  49. package/assets/Appearance/pureDark/themes/red/red_ComponentTheme_PureDarkTheme.module.css +7 -4
  50. package/assets/Appearance/pureDark/themes/yellow/yellow_CTA_PureDarkModifyCategory.module.css +465 -465
  51. package/assets/Appearance/pureDark/themes/yellow/yellow_CTA_PureDarkTheme.module.css +31 -31
  52. package/assets/Appearance/pureDark/themes/yellow/yellow_ComponentTheme_PureDarkTheme.module.css +7 -4
  53. package/es/Button/__tests__/__snapshots__/Button.spec.js.snap +2 -2
  54. package/es/Button/css/Button.module.css +60 -6
  55. package/es/Button/css/cssJSLogic.js +2 -2
  56. package/es/Card/__tests__/Card.spec.js +48 -0
  57. package/es/Card/__tests__/CardContent.spec.js +61 -0
  58. package/es/Card/__tests__/CardHeader.spec.js +33 -0
  59. package/es/Card/__tests__/__snapshots__/Card.spec.js.snap +125 -0
  60. package/es/Card/__tests__/__snapshots__/CardContent.spec.js.snap +177 -0
  61. package/es/Card/__tests__/__snapshots__/CardHeader.spec.js.snap +51 -0
  62. package/es/ListItem/ListItem.js +10 -3
  63. package/es/ListItem/ListItemWithAvatar.js +15 -6
  64. package/es/ListItem/ListItemWithCheckBox.js +13 -6
  65. package/es/ListItem/ListItemWithIcon.js +14 -5
  66. package/es/ListItem/ListItemWithRadio.js +13 -6
  67. package/es/ListItem/__tests__/ListItem.spec.js +19 -0
  68. package/es/ListItem/__tests__/ListItemWithAvatar.spec.js +19 -0
  69. package/es/ListItem/__tests__/ListItemWithCheckBox.spec.js +19 -0
  70. package/es/ListItem/__tests__/ListItemWithIcon.spec.js +17 -0
  71. package/es/ListItem/__tests__/ListItemWithRadio.spec.js +19 -0
  72. package/es/ListItem/__tests__/__snapshots__/ListItem.spec.js.snap +78 -0
  73. package/es/ListItem/__tests__/__snapshots__/ListItemWithAvatar.spec.js.snap +140 -46
  74. package/es/ListItem/__tests__/__snapshots__/ListItemWithCheckBox.spec.js.snap +251 -49
  75. package/es/ListItem/__tests__/__snapshots__/ListItemWithIcon.spec.js.snap +144 -50
  76. package/es/ListItem/__tests__/__snapshots__/ListItemWithRadio.spec.js.snap +252 -52
  77. package/es/ListItem/props/propTypes.js +15 -5
  78. package/es/MultiSelect/MultiSelect.js +8 -1
  79. package/es/MultiSelect/Suggestions.js +2 -1
  80. package/es/MultiSelect/__tests__/__snapshots__/MultiSelectHeader.spec.js.snap +6 -6
  81. package/es/MultiSelect/props/propTypes.js +2 -3
  82. package/es/Popup/Popup.js +21 -1041
  83. package/es/Select/GroupSelect.js +4 -2
  84. package/es/Select/Select.js +7 -1
  85. package/es/Select/SelectWithAvatar.js +17 -4
  86. package/es/Select/SelectWithIcon.js +15 -5
  87. package/es/Select/props/defaultProps.js +2 -0
  88. package/es/Select/props/propTypes.js +5 -0
  89. package/es/Typography/__tests__/Typography.spec.js +225 -0
  90. package/es/Typography/__tests__/__snapshots__/Typography.spec.js.snap +1226 -0
  91. package/es/common/common.module.css +1 -1
  92. package/es/utils/Common.js +1 -1
  93. package/es/utils/dropDownUtils.js +13 -4
  94. package/es/v1/Popup/Popup.js +1 -1
  95. package/es/v1/Switch/__tests__/Switch.spec.js +41 -6
  96. package/es/v1/Switch/__tests__/__snapshots__/Switch.spec.js.snap +176 -5
  97. package/lib/Button/__tests__/__snapshots__/Button.spec.js.snap +2 -2
  98. package/lib/Button/css/Button.module.css +60 -6
  99. package/lib/Button/css/cssJSLogic.js +1 -1
  100. package/lib/Card/__tests__/Card.spec.js +54 -6
  101. package/lib/Card/__tests__/CardContent.spec.js +68 -0
  102. package/lib/Card/__tests__/CardHeader.spec.js +40 -0
  103. package/lib/Card/__tests__/__snapshots__/Card.spec.js.snap +125 -0
  104. package/lib/Card/__tests__/__snapshots__/CardContent.spec.js.snap +177 -0
  105. package/lib/Card/__tests__/__snapshots__/CardHeader.spec.js.snap +51 -0
  106. package/lib/ListItem/ListItem.js +10 -3
  107. package/lib/ListItem/ListItemWithAvatar.js +15 -6
  108. package/lib/ListItem/ListItemWithCheckBox.js +15 -6
  109. package/lib/ListItem/ListItemWithIcon.js +13 -5
  110. package/lib/ListItem/ListItemWithRadio.js +15 -6
  111. package/lib/ListItem/__tests__/ListItem.spec.js +23 -0
  112. package/lib/ListItem/__tests__/ListItemWithAvatar.spec.js +23 -0
  113. package/lib/ListItem/__tests__/ListItemWithCheckBox.spec.js +23 -0
  114. package/lib/ListItem/__tests__/ListItemWithIcon.spec.js +21 -0
  115. package/lib/ListItem/__tests__/ListItemWithRadio.spec.js +23 -0
  116. package/lib/ListItem/__tests__/__snapshots__/ListItem.spec.js.snap +78 -0
  117. package/lib/ListItem/__tests__/__snapshots__/ListItemWithAvatar.spec.js.snap +140 -46
  118. package/lib/ListItem/__tests__/__snapshots__/ListItemWithCheckBox.spec.js.snap +251 -49
  119. package/lib/ListItem/__tests__/__snapshots__/ListItemWithIcon.spec.js.snap +144 -50
  120. package/lib/ListItem/__tests__/__snapshots__/ListItemWithRadio.spec.js.snap +252 -52
  121. package/lib/ListItem/props/propTypes.js +15 -6
  122. package/lib/MultiSelect/MultiSelect.js +6 -2
  123. package/lib/MultiSelect/Suggestions.js +2 -1
  124. package/lib/MultiSelect/__tests__/__snapshots__/MultiSelectHeader.spec.js.snap +6 -6
  125. package/lib/MultiSelect/props/propTypes.js +3 -4
  126. package/lib/Popup/Popup.js +25 -1149
  127. package/lib/Select/GroupSelect.js +4 -3
  128. package/lib/Select/Select.js +7 -1
  129. package/lib/Select/SelectWithAvatar.js +17 -7
  130. package/lib/Select/SelectWithIcon.js +15 -5
  131. package/lib/Select/props/defaultProps.js +2 -1
  132. package/lib/Select/props/propTypes.js +5 -0
  133. package/lib/Typography/__tests__/Typography.spec.js +232 -0
  134. package/lib/Typography/__tests__/__snapshots__/Typography.spec.js.snap +1226 -0
  135. package/lib/common/common.module.css +1 -1
  136. package/lib/utils/Common.js +1 -1
  137. package/lib/utils/dropDownUtils.js +17 -4
  138. package/lib/v1/Popup/Popup.js +1 -1
  139. package/lib/v1/Switch/__tests__/Switch.spec.js +41 -6
  140. package/lib/v1/Switch/__tests__/__snapshots__/Switch.spec.js.snap +176 -5
  141. package/package.json +13 -13
  142. package/es/Popup/PositionMapping.js +0 -72
  143. package/es/Popup/Registry.js +0 -36
  144. package/es/Popup/intersectionObserver.js +0 -49
  145. package/es/Popup/viewPort.js +0 -373
  146. package/lib/Popup/PositionMapping.js +0 -81
  147. package/lib/Popup/Registry.js +0 -46
  148. package/lib/Popup/intersectionObserver.js +0 -72
  149. package/lib/Popup/viewPort.js +0 -367
@@ -1,373 +0,0 @@
1
- const defaultOrder = ['bottomCenter', 'bottomLeftToRight', 'bottomCenterToRight', 'bottomRightToLeft', 'bottomCenterToLeft', 'topCenter', 'topLeftToRight', 'topCenterToRight', 'topRightToLeft', 'topCenterToLeft', 'rightTopToBottom', 'rightCenterToBottom', 'rightCenter', 'rightBottomToTop', 'rightCenterToTop', 'leftTopToBottom', 'leftCenterToBottom', 'leftCenter', 'leftBottomToTop', 'leftCenterToTop', 'bottomRight', 'bottomLeft', 'topRight', 'topLeft', 'rightBottom', 'rightTop', 'leftBottom', 'leftTop'];
2
- let viewPort = {
3
- frameRelativeRects: (el, customFrame, documentEle) => {
4
- if (!el) {
5
- return;
6
- }
7
-
8
- let rectTemp = el.getBoundingClientRect();
9
- let rect = {
10
- height: rectTemp.height || el.clientHeight,
11
- width: rectTemp.width || el.clientWidth,
12
- top: rectTemp.top,
13
- bottom: rectTemp.bottom,
14
- left: rectTemp.left,
15
- right: rectTemp.right,
16
- x: rectTemp.x,
17
- y: rectTemp.y
18
- };
19
- documentEle = documentEle ? documentEle : document.documentElement;
20
- let customFrameRect = {
21
- top: 0,
22
- left: 0,
23
- right: documentEle.clientWidth,
24
- bottom: documentEle.clientHeight,
25
- height: documentEle.clientHeight,
26
- width: documentEle.clientWidth,
27
- x: 0,
28
- y: 0
29
- };
30
-
31
- if (customFrame) {
32
- customFrameRect = customFrame.getBoundingClientRect();
33
- }
34
-
35
- let newRect = {
36
- top: rect.top - customFrameRect.top,
37
- left: rect.left - customFrameRect.left,
38
- height: rect.height,
39
- width: rect.width
40
- };
41
- newRect.bottom = newRect.top + newRect.height;
42
- newRect.right = newRect.left + newRect.width;
43
- newRect.x = newRect.left;
44
- newRect.y = newRect.top;
45
- let rectGap = {
46
- top: newRect.top,
47
- left: newRect.left,
48
- bottom: customFrameRect.height - newRect.bottom,
49
- right: customFrameRect.width - newRect.right
50
- };
51
- rectGap.center = {
52
- top: rectGap.top + newRect.height / 2,
53
- left: rectGap.left + newRect.width / 2,
54
- bottom: rectGap.bottom + newRect.height / 2,
55
- right: rectGap.right + newRect.width / 2
56
- };
57
- return {
58
- frameRect: customFrameRect,
59
- rect: newRect,
60
- rectGap
61
- };
62
- },
63
- isInViewPort: (el, customFrame) => {
64
- if (!el) {
65
- return;
66
- }
67
-
68
- let elRects = viewPort.frameRelativeRects(el, customFrame);
69
- let {
70
- rect
71
- } = elRects;
72
- let {
73
- frameRect
74
- } = elRects;
75
- return rect.top >= 0 && rect.left >= 0 && rect.bottom <= frameRect.height && rect.right <= frameRect.width;
76
- },
77
- getViewPortEle: el => {
78
- return el.closest('[data-viewport-container=true]') ? el.closest('[data-viewport-container=true]') : document.documentElement;
79
- },
80
- possibilities: function (el, relativeBox, customFrame) {
81
- let {
82
- needArrow,
83
- isAbsolute
84
- } = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};
85
-
86
- if (!el) {
87
- return;
88
- }
89
-
90
- let elViewPortEle = viewPort.getViewPortEle(el);
91
- let elRects = viewPort.frameRelativeRects(el, customFrame, elViewPortEle);
92
- let {
93
- rect
94
- } = elRects;
95
- let relativeBoxViewPortEle = viewPort.getViewPortEle(relativeBox);
96
- let relativeBoxRects = viewPort.frameRelativeRects(relativeBox, customFrame, relativeBoxViewPortEle);
97
- let {
98
- rectGap: relativeBoxGap,
99
- rect: relativeBoxRect
100
- } = relativeBoxRects;
101
- let relativeBoxDocumentRects = viewPort.frameRelativeRects(relativeBox, customFrame);
102
- let {
103
- rectGap: documentGap
104
- } = relativeBoxDocumentRects; //rect => PopOverContainer, relativeBoxGap => PopOverTarget
105
- //Horizontal ~ ----- X axis
106
- //Vertical ~ ||||||| Y axis
107
-
108
- let paddingSpace = 5; // space between target and relative element
109
-
110
- let arrowSize = needArrow ? 10 : 0;
111
- let padding = needArrow ? arrowSize : paddingSpace;
112
- let arrowHorizontalBalancePx = !isAbsolute && needArrow ? 30 : 0;
113
- let arrowVerticalBalancePx = !isAbsolute && needArrow ? 27 : 0;
114
- let bottomOverFlow = rect.height + padding > relativeBoxGap.bottom;
115
- let topOverFlow = rect.height + padding > relativeBoxGap.top;
116
- let rightOverFlow = rect.width + padding > relativeBoxGap.right;
117
- let leftOverFlow = rect.width + padding > relativeBoxGap.left;
118
- let horizontalCenterOverFlow = rect.width / 2 + padding > relativeBoxGap.center.right || rect.width / 2 + padding > relativeBoxGap.center.left;
119
- let verticalCenterOverFlow = rect.height / 2 + padding > relativeBoxGap.center.top || rect.height / 2 + padding > relativeBoxGap.center.bottom;
120
- let horizontalLeftToRightOverFlow = rect.width + padding > relativeBoxRect.width + relativeBoxGap.right;
121
- let horizontalCenterToRightOverFlow = rect.width + padding > relativeBoxGap.center.right || arrowHorizontalBalancePx > relativeBoxGap.center.left;
122
- let horizontalRightToLeft = rect.width + padding > relativeBoxRect.width + relativeBoxGap.left;
123
- let horizontalCenterToLeft = rect.width + padding > relativeBoxGap.center.left || arrowHorizontalBalancePx > relativeBoxGap.center.right;
124
- let verticalTopToBottomOverFlow = rect.height + padding > relativeBoxRect.height + relativeBoxGap.bottom;
125
- let verticalCenterToBottomOverFlow = rect.height + padding > relativeBoxGap.center.bottom || arrowVerticalBalancePx > relativeBoxGap.center.top;
126
- let verticalBottomToTopOverFlow = rect.height + padding > relativeBoxRect.height + relativeBoxGap.top;
127
- let verticalCenterToTopOverFlow = rect.height + padding > relativeBoxGap.center.top || arrowVerticalBalancePx > relativeBoxGap.center.bottom;
128
- let views = {
129
- bottomCenter: !(bottomOverFlow || horizontalCenterOverFlow),
130
- bottomLeftToRight: !(bottomOverFlow || horizontalLeftToRightOverFlow),
131
- bottomCenterToRight: !(bottomOverFlow || horizontalCenterToRightOverFlow),
132
- bottomRight: !(bottomOverFlow || rightOverFlow || arrowHorizontalBalancePx > relativeBoxRect.right),
133
- bottomRightToLeft: !(bottomOverFlow || horizontalRightToLeft),
134
- bottomCenterToLeft: !(bottomOverFlow || horizontalCenterToLeft),
135
- bottomLeft: !(bottomOverFlow || leftOverFlow || arrowHorizontalBalancePx > relativeBoxGap.right + relativeBoxRect.width),
136
- topCenter: !(topOverFlow || horizontalCenterOverFlow),
137
- topLeftToRight: !(topOverFlow || horizontalLeftToRightOverFlow),
138
- topCenterToRight: !(topOverFlow || horizontalCenterToRightOverFlow),
139
- topRight: !(topOverFlow || rightOverFlow || arrowHorizontalBalancePx > relativeBoxRect.right),
140
- topRightToLeft: !(topOverFlow || horizontalRightToLeft),
141
- topCenterToLeft: !(topOverFlow || horizontalCenterToLeft),
142
- topLeft: !(topOverFlow || leftOverFlow || arrowHorizontalBalancePx > relativeBoxGap.right + relativeBoxRect.width),
143
- rightCenter: !(rightOverFlow || verticalCenterOverFlow),
144
- rightTopToBottom: !(rightOverFlow || verticalTopToBottomOverFlow),
145
- rightCenterToBottom: !(rightOverFlow || verticalCenterToBottomOverFlow),
146
- rightBottom: !(rightOverFlow || bottomOverFlow || arrowVerticalBalancePx > relativeBoxRect.bottom),
147
- rightBottomToTop: !(rightOverFlow || verticalBottomToTopOverFlow),
148
- rightCenterToTop: !(rightOverFlow || verticalCenterToTopOverFlow),
149
- rightTop: !(rightOverFlow || topOverFlow || arrowVerticalBalancePx > relativeBoxGap.bottom + relativeBoxRect.height),
150
- leftCenter: !(leftOverFlow || verticalCenterOverFlow),
151
- leftTopToBottom: !(leftOverFlow || verticalTopToBottomOverFlow),
152
- leftCenterToBottom: !(leftOverFlow || verticalCenterToBottomOverFlow),
153
- leftBottom: !(leftOverFlow || bottomOverFlow || arrowVerticalBalancePx > relativeBoxRect.bottom),
154
- leftBottomToTop: !(leftOverFlow || verticalBottomToTopOverFlow),
155
- leftCenterToTop: !(leftOverFlow || verticalCenterToTopOverFlow),
156
- leftTop: !(leftOverFlow || topOverFlow || arrowVerticalBalancePx > relativeBoxGap.bottom + relativeBoxRect.height)
157
- };
158
- let horizontalCenter = relativeBoxGap.left + relativeBoxRect.width / 2;
159
- let horizontalLeft = relativeBoxGap.left;
160
- let horizontalRight = relativeBoxGap.left + relativeBoxRect.width;
161
- let verticalBottom = relativeBoxGap.top + relativeBoxRect.height;
162
- let verticalTop = relativeBoxGap.top;
163
- let verticalCenter = relativeBoxGap.top + relativeBoxRect.height / 2;
164
- let horizontalTop = documentGap.bottom + relativeBoxRect.height;
165
- let verticalCenterToTop = documentGap.bottom + relativeBoxRect.height / 2;
166
- let viewsOffset = {
167
- bottomCenter: {
168
- left: horizontalCenter - rect.width / 2,
169
- top: verticalBottom + arrowSize
170
- },
171
- bottomLeftToRight: {
172
- left: horizontalLeft,
173
- top: verticalBottom + arrowSize
174
- },
175
- bottomCenterToRight: {
176
- left: horizontalCenter - arrowHorizontalBalancePx,
177
- top: verticalBottom + arrowSize
178
- },
179
- bottomRight: {
180
- left: horizontalRight - arrowHorizontalBalancePx,
181
- top: verticalBottom + arrowSize
182
- },
183
- bottomRightToLeft: {
184
- left: horizontalRight - rect.width,
185
- top: verticalBottom + arrowSize
186
- },
187
- bottomCenterToLeft: {
188
- left: horizontalCenter - rect.width + arrowHorizontalBalancePx,
189
- top: verticalBottom + arrowSize
190
- },
191
- bottomLeft: {
192
- left: horizontalLeft - rect.width + arrowHorizontalBalancePx,
193
- top: verticalBottom + arrowSize
194
- },
195
- topCenter: {
196
- left: horizontalCenter - rect.width / 2,
197
- bottom: horizontalTop + arrowSize
198
- },
199
- topLeftToRight: {
200
- left: horizontalLeft,
201
- bottom: horizontalTop + arrowSize
202
- },
203
- topCenterToRight: {
204
- left: horizontalCenter - arrowHorizontalBalancePx,
205
- bottom: horizontalTop + arrowSize
206
- },
207
- topRight: {
208
- left: horizontalRight - arrowHorizontalBalancePx,
209
- bottom: horizontalTop + arrowSize
210
- },
211
- topRightToLeft: {
212
- left: horizontalRight - rect.width,
213
- bottom: horizontalTop + arrowSize
214
- },
215
- topCenterToLeft: {
216
- left: horizontalCenter - rect.width + arrowHorizontalBalancePx,
217
- bottom: horizontalTop + arrowSize
218
- },
219
- topLeft: {
220
- left: horizontalLeft - rect.width + arrowHorizontalBalancePx,
221
- top: verticalTop - (rect.height + arrowSize)
222
- },
223
- rightCenter: {
224
- left: horizontalRight + arrowSize,
225
- top: verticalCenter - rect.height / 2
226
- },
227
- rightTopToBottom: {
228
- left: horizontalRight + arrowSize,
229
- top: verticalTop
230
- },
231
- rightCenterToBottom: {
232
- left: horizontalRight + arrowSize,
233
- top: verticalCenter - arrowVerticalBalancePx
234
- },
235
- rightBottom: {
236
- left: horizontalRight + arrowSize,
237
- top: verticalBottom - arrowVerticalBalancePx
238
- },
239
- rightBottomToTop: {
240
- left: horizontalRight + arrowSize,
241
- bottom: documentGap.bottom
242
- },
243
- rightCenterToTop: {
244
- left: horizontalRight + arrowSize,
245
- bottom: verticalCenterToTop - arrowVerticalBalancePx
246
- },
247
- rightTop: {
248
- left: horizontalRight + arrowSize,
249
- bottom: horizontalTop - arrowVerticalBalancePx
250
- },
251
- leftCenter: {
252
- left: horizontalLeft - (rect.width + arrowSize),
253
- top: verticalCenter - rect.height / 2
254
- },
255
- leftTopToBottom: {
256
- left: horizontalLeft - (rect.width + arrowSize),
257
- top: verticalTop
258
- },
259
- leftCenterToBottom: {
260
- left: horizontalLeft - (rect.width + arrowSize),
261
- top: verticalCenter - arrowVerticalBalancePx
262
- },
263
- leftBottom: {
264
- left: horizontalLeft - (rect.width + arrowSize),
265
- top: verticalBottom - arrowVerticalBalancePx
266
- },
267
- leftBottomToTop: {
268
- left: horizontalLeft - (rect.width + arrowSize),
269
- bottom: documentGap.bottom
270
- },
271
- leftCenterToTop: {
272
- left: horizontalLeft - (rect.width + arrowSize),
273
- bottom: verticalCenterToTop - arrowVerticalBalancePx
274
- },
275
- leftTop: {
276
- left: horizontalLeft - (rect.width + arrowSize),
277
- bottom: horizontalTop - arrowVerticalBalancePx
278
- }
279
- };
280
- return {
281
- views,
282
- viewsOffset,
283
- targetOffset: relativeBoxRect,
284
- popupOffset: rect
285
- };
286
- },
287
- getArrowAdjustments: (el, relativeBox, customFrame) => {
288
- if (!el) {
289
- return;
290
- }
291
-
292
- let elRects = viewPort.frameRelativeRects(el, customFrame);
293
- let {
294
- rectGap
295
- } = elRects;
296
- let relativeBoxRects = viewPort.frameRelativeRects(relativeBox, customFrame);
297
- let relativeBoxGap = relativeBoxRects.rectGap;
298
- return {
299
- left: relativeBoxGap.center.left - rectGap.left,
300
- right: relativeBoxGap.center.right - rectGap.right,
301
- top: relativeBoxGap.center.top - rectGap.top,
302
- bottom: relativeBoxGap.center.bottom - rectGap.bottom
303
- };
304
- },
305
- betterView: function (popup, relativeBox) {
306
- let defaultView = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '';
307
- let customFrame = arguments.length > 3 ? arguments[3] : undefined;
308
- let {
309
- needArrow,
310
- isAbsolute,
311
- customOrder = []
312
- } = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : {};
313
- let customScrollFrame = isAbsolute ? customFrame : '';
314
- let viewPortPossibilities = viewPort.possibilities(popup, relativeBox, customScrollFrame, {
315
- needArrow,
316
- isAbsolute
317
- });
318
-
319
- if (!viewPortPossibilities) {
320
- return;
321
- }
322
-
323
- let {
324
- views,
325
- viewsOffset,
326
- targetOffset,
327
- popupOffset
328
- } = viewPortPossibilities;
329
- let view = null;
330
- let isViewFound = false;
331
-
332
- if (!isViewFound && defaultView && views[defaultView]) {
333
- view = defaultView;
334
- isViewFound = true;
335
- }
336
-
337
- if (!isViewFound) {
338
- if (customOrder.length > 0) {
339
- isViewFound = customOrder.some(position => {
340
- if (views[position]) {
341
- view = position;
342
- return true;
343
- }
344
- });
345
- } else {
346
- isViewFound = defaultOrder.some(position => {
347
- if (views[position]) {
348
- view = position;
349
- return true;
350
- }
351
- });
352
- }
353
- }
354
-
355
- if (!isViewFound) {
356
- view = defaultView;
357
- }
358
-
359
- return {
360
- view,
361
- views,
362
- viewsOffset,
363
- targetOffset,
364
- popupOffset
365
- };
366
- }
367
- };
368
- export default {
369
- betterView: viewPort.betterView,
370
- frameRelativeRects: viewPort.frameRelativeRects,
371
- getArrowAdjustments: viewPort.getArrowAdjustments,
372
- isInViewPort: viewPort.isInViewPort
373
- };
@@ -1,81 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.rtlFixedPositionMapping = exports.rtlAbsolutePositionMapping = exports.absolutePositionMapping = void 0;
7
- var absolutePositionMapping = {
8
- "bottomCenter": "bottomCenter",
9
- "bottomRight": "bottomLeftToRight",
10
- "bottomLeft": "bottomRightToLeft",
11
- "topCenter": "topCenter",
12
- "topRight": "topLeftToRight",
13
- "topLeft": "topRightToLeft",
14
- "rightCenter": "rightCenter",
15
- "rightBottom": "rightTopToBottom",
16
- "rightTop": "rightBottomToTop",
17
- "leftCenter": "leftCenter",
18
- "leftBottom": "leftTopToBottom",
19
- "leftTop": "leftBottomToTop",
20
- "bottomLeftToRight": "bottomLeftToRight",
21
- "bottomRightToLeft": "bottomRightToLeft",
22
- "topLeftToRight": "topLeftToRight",
23
- "topRightToLeft": "topRightToLeft",
24
- "rightTopToBottom": "rightTopToBottom",
25
- "rightBottomToTop": "rightBottomToTop",
26
- "leftTopToBottom": "leftTopToBottom"
27
- };
28
- exports.absolutePositionMapping = absolutePositionMapping;
29
- var rtlAbsolutePositionMapping = {
30
- "bottomCenter": "bottomCenter",
31
- "bottomRight": "bottomRightToLeft",
32
- "bottomLeft": "bottomLeftToRight",
33
- "topCenter": "topCenter",
34
- "topRight": "topRightToLeft",
35
- "topLeft": "topLeftToRight",
36
- "rightCenter": "leftCenter",
37
- "rightBottom": "leftTopToBottom",
38
- "rightTop": "leftBottomToTop",
39
- "leftCenter": "rightCenter",
40
- "leftBottom": "rightTopToBottom",
41
- "leftTop": "rightBottomToTop",
42
- "bottomLeftToRight": "bottomLeftToRight",
43
- "bottomRightToLeft": "bottomRightToLeft",
44
- "topLeftToRight": "topLeftToRight",
45
- "topRightToLeft": "topRightToLeft",
46
- "rightTopToBottom": "rightTopToBottom",
47
- "rightBottomToTop": "rightBottomToTop",
48
- "leftTopToBottom": "leftTopToBottom"
49
- };
50
- exports.rtlAbsolutePositionMapping = rtlAbsolutePositionMapping;
51
- var rtlFixedPositionMapping = {
52
- "bottomCenter": "bottomCenter",
53
- "bottomLeftToRight": "bottomRightToLeft",
54
- "bottomCenterToRight": "bottomCenterToLeft",
55
- "bottomRightToLeft": "bottomLeftToRight",
56
- "bottomCenterToLeft": "bottomCenterToRight",
57
- "topCenter": "topCenter",
58
- "topLeftToRight": "topRightToLeft",
59
- "topCenterToRight": "topCenterToLeft",
60
- "topRightToLeft": "topLeftToRight",
61
- "topCenterToLeft": "topCenterToRight",
62
- "rightTopToBottom": "leftTopToBottom",
63
- "rightCenterToBottom": "leftCenterToBottom",
64
- "rightCenter": "leftCenter",
65
- "rightBottomToTop": "leftBottomToTop",
66
- "rightCenterToTop": "leftCenterToTop",
67
- "leftTopToBottom": "rightTopToBottom",
68
- "leftCenterToBottom": "rightCenterToBottom",
69
- "leftCenter": "rightCenter",
70
- "leftBottomToTop": "rightBottomToTop",
71
- "leftCenterToTop": "rightCenterToTop",
72
- "bottomRight": "bottomLeft",
73
- "bottomLeft": "bottomRight",
74
- "topRight": "topLeft",
75
- "topLeft": "topRight",
76
- "rightBottom": "leftBottom",
77
- "rightTop": "leftTop",
78
- "leftBottom": "rightBottom",
79
- "leftTop": "rightTop"
80
- };
81
- exports.rtlFixedPositionMapping = rtlFixedPositionMapping;
@@ -1,46 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports["default"] = void 0;
7
-
8
- var _Config = require("../Provider/Config.js");
9
-
10
- var Registry = {
11
- lastOpenedGroup: [],
12
- popups: {},
13
- listenerPopupRef: undefined,
14
- scrollBlockedListenerPopupRef: undefined,
15
- scrollableListenerPopupRef: undefined,
16
- getOpenedPopups: function getOpenedPopups() {
17
- return Object.values(Registry.popups).flat().filter(function (popup) {
18
- return popup.state.isPopupOpen;
19
- });
20
- },
21
- getOpenedScrollBlockedFixedPopups: function getOpenedScrollBlockedFixedPopups() {
22
- return Registry.getOpenedPopups().filter(function (popup) {
23
- return popup.getIsOutsideScrollBlocked(popup) && !popup.getIsAbsolutePopup(popup);
24
- });
25
- },
26
- getOpenedScrollableFixedPopups: function getOpenedScrollableFixedPopups() {
27
- return Registry.getOpenedPopups().filter(function (popup) {
28
- return !popup.getIsOutsideScrollBlocked(popup) && !popup.getIsAbsolutePopup(popup);
29
- });
30
- },
31
- getRootElement: function getRootElement() {
32
- var getRootElement = (0, _Config.getLibraryConfig)('getRootElement');
33
-
34
- if (getRootElement && typeof getRootElement === 'function') {
35
- var parent = getRootElement();
36
-
37
- if (parent) {
38
- return parent;
39
- }
40
- }
41
-
42
- return document;
43
- }
44
- };
45
- var _default = Registry;
46
- exports["default"] = _default;
@@ -1,72 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.addIntersectionObserver = addIntersectionObserver;
7
- exports.removeIntersectionObserver = removeIntersectionObserver;
8
-
9
- function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
10
-
11
- function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
12
-
13
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
14
-
15
- function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
16
-
17
- function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
18
-
19
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
20
-
21
- var observerCallbacks = null;
22
- var intersectionObserver = null;
23
-
24
- function handleObserverCallbacks(entries) {
25
- entries.forEach(function (entry) {
26
- var oldCallbacks = observerCallbacks.get(entry.target);
27
-
28
- if (Array.isArray(oldCallbacks) && oldCallbacks.length) {
29
- oldCallbacks.forEach(function (callback) {
30
- callback && callback(entry);
31
- });
32
- }
33
- });
34
- }
35
-
36
- function addIntersectionObserver(element, callback, options) {
37
- if (!!element && typeof callback == 'function') {
38
- if (intersectionObserver === null && observerCallbacks === null) {
39
- intersectionObserver = new IntersectionObserver(function (entries) {
40
- handleObserverCallbacks(entries);
41
- }, options);
42
- observerCallbacks = new Map();
43
- }
44
-
45
- intersectionObserver.observe(element);
46
- var oldCallbacks = observerCallbacks.get(element) || [];
47
- observerCallbacks.set(element, [].concat(_toConsumableArray(oldCallbacks), [callback]));
48
- }
49
- }
50
-
51
- function removeIntersectionObserver(element, callback) {
52
- if (!!element && typeof callback == 'function') {
53
- var oldCallbacks = observerCallbacks ? observerCallbacks.get(element) : null;
54
-
55
- if (Array.isArray(oldCallbacks)) {
56
- var callbacks = oldCallbacks.filter(function (handler) {
57
- return handler !== callback;
58
- });
59
-
60
- if (intersectionObserver && callbacks.length === 0) {
61
- observerCallbacks["delete"](element);
62
- intersectionObserver.unobserve(element);
63
- }
64
- }
65
-
66
- if (intersectionObserver && observerCallbacks && observerCallbacks.size === 0) {
67
- intersectionObserver.disconnect();
68
- intersectionObserver = null;
69
- observerCallbacks = null;
70
- }
71
- }
72
- }