@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,367 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports["default"] = void 0;
7
- var 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'];
8
- var viewPort = {
9
- frameRelativeRects: function frameRelativeRects(el, customFrame, documentEle) {
10
- if (!el) {
11
- return;
12
- }
13
-
14
- var rectTemp = el.getBoundingClientRect();
15
- var rect = {
16
- height: rectTemp.height || el.clientHeight,
17
- width: rectTemp.width || el.clientWidth,
18
- top: rectTemp.top,
19
- bottom: rectTemp.bottom,
20
- left: rectTemp.left,
21
- right: rectTemp.right,
22
- x: rectTemp.x,
23
- y: rectTemp.y
24
- };
25
- documentEle = documentEle ? documentEle : document.documentElement;
26
- var customFrameRect = {
27
- top: 0,
28
- left: 0,
29
- right: documentEle.clientWidth,
30
- bottom: documentEle.clientHeight,
31
- height: documentEle.clientHeight,
32
- width: documentEle.clientWidth,
33
- x: 0,
34
- y: 0
35
- };
36
-
37
- if (customFrame) {
38
- customFrameRect = customFrame.getBoundingClientRect();
39
- }
40
-
41
- var newRect = {
42
- top: rect.top - customFrameRect.top,
43
- left: rect.left - customFrameRect.left,
44
- height: rect.height,
45
- width: rect.width
46
- };
47
- newRect.bottom = newRect.top + newRect.height;
48
- newRect.right = newRect.left + newRect.width;
49
- newRect.x = newRect.left;
50
- newRect.y = newRect.top;
51
- var rectGap = {
52
- top: newRect.top,
53
- left: newRect.left,
54
- bottom: customFrameRect.height - newRect.bottom,
55
- right: customFrameRect.width - newRect.right
56
- };
57
- rectGap.center = {
58
- top: rectGap.top + newRect.height / 2,
59
- left: rectGap.left + newRect.width / 2,
60
- bottom: rectGap.bottom + newRect.height / 2,
61
- right: rectGap.right + newRect.width / 2
62
- };
63
- return {
64
- frameRect: customFrameRect,
65
- rect: newRect,
66
- rectGap: rectGap
67
- };
68
- },
69
- isInViewPort: function isInViewPort(el, customFrame) {
70
- if (!el) {
71
- return;
72
- }
73
-
74
- var elRects = viewPort.frameRelativeRects(el, customFrame);
75
- var rect = elRects.rect;
76
- var frameRect = elRects.frameRect;
77
- return rect.top >= 0 && rect.left >= 0 && rect.bottom <= frameRect.height && rect.right <= frameRect.width;
78
- },
79
- getViewPortEle: function getViewPortEle(el) {
80
- return el.closest('[data-viewport-container=true]') ? el.closest('[data-viewport-container=true]') : document.documentElement;
81
- },
82
- possibilities: function possibilities(el, relativeBox, customFrame) {
83
- var _ref = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {},
84
- needArrow = _ref.needArrow,
85
- isAbsolute = _ref.isAbsolute;
86
-
87
- if (!el) {
88
- return;
89
- }
90
-
91
- var elViewPortEle = viewPort.getViewPortEle(el);
92
- var elRects = viewPort.frameRelativeRects(el, customFrame, elViewPortEle);
93
- var rect = elRects.rect;
94
- var relativeBoxViewPortEle = viewPort.getViewPortEle(relativeBox);
95
- var relativeBoxRects = viewPort.frameRelativeRects(relativeBox, customFrame, relativeBoxViewPortEle);
96
- var relativeBoxGap = relativeBoxRects.rectGap,
97
- relativeBoxRect = relativeBoxRects.rect;
98
- var relativeBoxDocumentRects = viewPort.frameRelativeRects(relativeBox, customFrame);
99
- var documentGap = relativeBoxDocumentRects.rectGap; //rect => PopOverContainer, relativeBoxGap => PopOverTarget
100
- //Horizontal ~ ----- X axis
101
- //Vertical ~ ||||||| Y axis
102
-
103
- var paddingSpace = 5; // space between target and relative element
104
-
105
- var arrowSize = needArrow ? 10 : 0;
106
- var padding = needArrow ? arrowSize : paddingSpace;
107
- var arrowHorizontalBalancePx = !isAbsolute && needArrow ? 30 : 0;
108
- var arrowVerticalBalancePx = !isAbsolute && needArrow ? 27 : 0;
109
- var bottomOverFlow = rect.height + padding > relativeBoxGap.bottom;
110
- var topOverFlow = rect.height + padding > relativeBoxGap.top;
111
- var rightOverFlow = rect.width + padding > relativeBoxGap.right;
112
- var leftOverFlow = rect.width + padding > relativeBoxGap.left;
113
- var horizontalCenterOverFlow = rect.width / 2 + padding > relativeBoxGap.center.right || rect.width / 2 + padding > relativeBoxGap.center.left;
114
- var verticalCenterOverFlow = rect.height / 2 + padding > relativeBoxGap.center.top || rect.height / 2 + padding > relativeBoxGap.center.bottom;
115
- var horizontalLeftToRightOverFlow = rect.width + padding > relativeBoxRect.width + relativeBoxGap.right;
116
- var horizontalCenterToRightOverFlow = rect.width + padding > relativeBoxGap.center.right || arrowHorizontalBalancePx > relativeBoxGap.center.left;
117
- var horizontalRightToLeft = rect.width + padding > relativeBoxRect.width + relativeBoxGap.left;
118
- var horizontalCenterToLeft = rect.width + padding > relativeBoxGap.center.left || arrowHorizontalBalancePx > relativeBoxGap.center.right;
119
- var verticalTopToBottomOverFlow = rect.height + padding > relativeBoxRect.height + relativeBoxGap.bottom;
120
- var verticalCenterToBottomOverFlow = rect.height + padding > relativeBoxGap.center.bottom || arrowVerticalBalancePx > relativeBoxGap.center.top;
121
- var verticalBottomToTopOverFlow = rect.height + padding > relativeBoxRect.height + relativeBoxGap.top;
122
- var verticalCenterToTopOverFlow = rect.height + padding > relativeBoxGap.center.top || arrowVerticalBalancePx > relativeBoxGap.center.bottom;
123
- var views = {
124
- bottomCenter: !(bottomOverFlow || horizontalCenterOverFlow),
125
- bottomLeftToRight: !(bottomOverFlow || horizontalLeftToRightOverFlow),
126
- bottomCenterToRight: !(bottomOverFlow || horizontalCenterToRightOverFlow),
127
- bottomRight: !(bottomOverFlow || rightOverFlow || arrowHorizontalBalancePx > relativeBoxRect.right),
128
- bottomRightToLeft: !(bottomOverFlow || horizontalRightToLeft),
129
- bottomCenterToLeft: !(bottomOverFlow || horizontalCenterToLeft),
130
- bottomLeft: !(bottomOverFlow || leftOverFlow || arrowHorizontalBalancePx > relativeBoxGap.right + relativeBoxRect.width),
131
- topCenter: !(topOverFlow || horizontalCenterOverFlow),
132
- topLeftToRight: !(topOverFlow || horizontalLeftToRightOverFlow),
133
- topCenterToRight: !(topOverFlow || horizontalCenterToRightOverFlow),
134
- topRight: !(topOverFlow || rightOverFlow || arrowHorizontalBalancePx > relativeBoxRect.right),
135
- topRightToLeft: !(topOverFlow || horizontalRightToLeft),
136
- topCenterToLeft: !(topOverFlow || horizontalCenterToLeft),
137
- topLeft: !(topOverFlow || leftOverFlow || arrowHorizontalBalancePx > relativeBoxGap.right + relativeBoxRect.width),
138
- rightCenter: !(rightOverFlow || verticalCenterOverFlow),
139
- rightTopToBottom: !(rightOverFlow || verticalTopToBottomOverFlow),
140
- rightCenterToBottom: !(rightOverFlow || verticalCenterToBottomOverFlow),
141
- rightBottom: !(rightOverFlow || bottomOverFlow || arrowVerticalBalancePx > relativeBoxRect.bottom),
142
- rightBottomToTop: !(rightOverFlow || verticalBottomToTopOverFlow),
143
- rightCenterToTop: !(rightOverFlow || verticalCenterToTopOverFlow),
144
- rightTop: !(rightOverFlow || topOverFlow || arrowVerticalBalancePx > relativeBoxGap.bottom + relativeBoxRect.height),
145
- leftCenter: !(leftOverFlow || verticalCenterOverFlow),
146
- leftTopToBottom: !(leftOverFlow || verticalTopToBottomOverFlow),
147
- leftCenterToBottom: !(leftOverFlow || verticalCenterToBottomOverFlow),
148
- leftBottom: !(leftOverFlow || bottomOverFlow || arrowVerticalBalancePx > relativeBoxRect.bottom),
149
- leftBottomToTop: !(leftOverFlow || verticalBottomToTopOverFlow),
150
- leftCenterToTop: !(leftOverFlow || verticalCenterToTopOverFlow),
151
- leftTop: !(leftOverFlow || topOverFlow || arrowVerticalBalancePx > relativeBoxGap.bottom + relativeBoxRect.height)
152
- };
153
- var horizontalCenter = relativeBoxGap.left + relativeBoxRect.width / 2;
154
- var horizontalLeft = relativeBoxGap.left;
155
- var horizontalRight = relativeBoxGap.left + relativeBoxRect.width;
156
- var verticalBottom = relativeBoxGap.top + relativeBoxRect.height;
157
- var verticalTop = relativeBoxGap.top;
158
- var verticalCenter = relativeBoxGap.top + relativeBoxRect.height / 2;
159
- var horizontalTop = documentGap.bottom + relativeBoxRect.height;
160
- var verticalCenterToTop = documentGap.bottom + relativeBoxRect.height / 2;
161
- var viewsOffset = {
162
- bottomCenter: {
163
- left: horizontalCenter - rect.width / 2,
164
- top: verticalBottom + arrowSize
165
- },
166
- bottomLeftToRight: {
167
- left: horizontalLeft,
168
- top: verticalBottom + arrowSize
169
- },
170
- bottomCenterToRight: {
171
- left: horizontalCenter - arrowHorizontalBalancePx,
172
- top: verticalBottom + arrowSize
173
- },
174
- bottomRight: {
175
- left: horizontalRight - arrowHorizontalBalancePx,
176
- top: verticalBottom + arrowSize
177
- },
178
- bottomRightToLeft: {
179
- left: horizontalRight - rect.width,
180
- top: verticalBottom + arrowSize
181
- },
182
- bottomCenterToLeft: {
183
- left: horizontalCenter - rect.width + arrowHorizontalBalancePx,
184
- top: verticalBottom + arrowSize
185
- },
186
- bottomLeft: {
187
- left: horizontalLeft - rect.width + arrowHorizontalBalancePx,
188
- top: verticalBottom + arrowSize
189
- },
190
- topCenter: {
191
- left: horizontalCenter - rect.width / 2,
192
- bottom: horizontalTop + arrowSize
193
- },
194
- topLeftToRight: {
195
- left: horizontalLeft,
196
- bottom: horizontalTop + arrowSize
197
- },
198
- topCenterToRight: {
199
- left: horizontalCenter - arrowHorizontalBalancePx,
200
- bottom: horizontalTop + arrowSize
201
- },
202
- topRight: {
203
- left: horizontalRight - arrowHorizontalBalancePx,
204
- bottom: horizontalTop + arrowSize
205
- },
206
- topRightToLeft: {
207
- left: horizontalRight - rect.width,
208
- bottom: horizontalTop + arrowSize
209
- },
210
- topCenterToLeft: {
211
- left: horizontalCenter - rect.width + arrowHorizontalBalancePx,
212
- bottom: horizontalTop + arrowSize
213
- },
214
- topLeft: {
215
- left: horizontalLeft - rect.width + arrowHorizontalBalancePx,
216
- top: verticalTop - (rect.height + arrowSize)
217
- },
218
- rightCenter: {
219
- left: horizontalRight + arrowSize,
220
- top: verticalCenter - rect.height / 2
221
- },
222
- rightTopToBottom: {
223
- left: horizontalRight + arrowSize,
224
- top: verticalTop
225
- },
226
- rightCenterToBottom: {
227
- left: horizontalRight + arrowSize,
228
- top: verticalCenter - arrowVerticalBalancePx
229
- },
230
- rightBottom: {
231
- left: horizontalRight + arrowSize,
232
- top: verticalBottom - arrowVerticalBalancePx
233
- },
234
- rightBottomToTop: {
235
- left: horizontalRight + arrowSize,
236
- bottom: documentGap.bottom
237
- },
238
- rightCenterToTop: {
239
- left: horizontalRight + arrowSize,
240
- bottom: verticalCenterToTop - arrowVerticalBalancePx
241
- },
242
- rightTop: {
243
- left: horizontalRight + arrowSize,
244
- bottom: horizontalTop - arrowVerticalBalancePx
245
- },
246
- leftCenter: {
247
- left: horizontalLeft - (rect.width + arrowSize),
248
- top: verticalCenter - rect.height / 2
249
- },
250
- leftTopToBottom: {
251
- left: horizontalLeft - (rect.width + arrowSize),
252
- top: verticalTop
253
- },
254
- leftCenterToBottom: {
255
- left: horizontalLeft - (rect.width + arrowSize),
256
- top: verticalCenter - arrowVerticalBalancePx
257
- },
258
- leftBottom: {
259
- left: horizontalLeft - (rect.width + arrowSize),
260
- top: verticalBottom - arrowVerticalBalancePx
261
- },
262
- leftBottomToTop: {
263
- left: horizontalLeft - (rect.width + arrowSize),
264
- bottom: documentGap.bottom
265
- },
266
- leftCenterToTop: {
267
- left: horizontalLeft - (rect.width + arrowSize),
268
- bottom: verticalCenterToTop - arrowVerticalBalancePx
269
- },
270
- leftTop: {
271
- left: horizontalLeft - (rect.width + arrowSize),
272
- bottom: horizontalTop - arrowVerticalBalancePx
273
- }
274
- };
275
- return {
276
- views: views,
277
- viewsOffset: viewsOffset,
278
- targetOffset: relativeBoxRect,
279
- popupOffset: rect
280
- };
281
- },
282
- getArrowAdjustments: function getArrowAdjustments(el, relativeBox, customFrame) {
283
- if (!el) {
284
- return;
285
- }
286
-
287
- var elRects = viewPort.frameRelativeRects(el, customFrame);
288
- var rectGap = elRects.rectGap;
289
- var relativeBoxRects = viewPort.frameRelativeRects(relativeBox, customFrame);
290
- var relativeBoxGap = relativeBoxRects.rectGap;
291
- return {
292
- left: relativeBoxGap.center.left - rectGap.left,
293
- right: relativeBoxGap.center.right - rectGap.right,
294
- top: relativeBoxGap.center.top - rectGap.top,
295
- bottom: relativeBoxGap.center.bottom - rectGap.bottom
296
- };
297
- },
298
- betterView: function betterView(popup, relativeBox) {
299
- var defaultView = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '';
300
- var customFrame = arguments.length > 3 ? arguments[3] : undefined;
301
-
302
- var _ref2 = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : {},
303
- needArrow = _ref2.needArrow,
304
- isAbsolute = _ref2.isAbsolute,
305
- _ref2$customOrder = _ref2.customOrder,
306
- customOrder = _ref2$customOrder === void 0 ? [] : _ref2$customOrder;
307
-
308
- var customScrollFrame = isAbsolute ? customFrame : '';
309
- var viewPortPossibilities = viewPort.possibilities(popup, relativeBox, customScrollFrame, {
310
- needArrow: needArrow,
311
- isAbsolute: isAbsolute
312
- });
313
-
314
- if (!viewPortPossibilities) {
315
- return;
316
- }
317
-
318
- var views = viewPortPossibilities.views,
319
- viewsOffset = viewPortPossibilities.viewsOffset,
320
- targetOffset = viewPortPossibilities.targetOffset,
321
- popupOffset = viewPortPossibilities.popupOffset;
322
- var view = null;
323
- var isViewFound = false;
324
-
325
- if (!isViewFound && defaultView && views[defaultView]) {
326
- view = defaultView;
327
- isViewFound = true;
328
- }
329
-
330
- if (!isViewFound) {
331
- if (customOrder.length > 0) {
332
- isViewFound = customOrder.some(function (position) {
333
- if (views[position]) {
334
- view = position;
335
- return true;
336
- }
337
- });
338
- } else {
339
- isViewFound = defaultOrder.some(function (position) {
340
- if (views[position]) {
341
- view = position;
342
- return true;
343
- }
344
- });
345
- }
346
- }
347
-
348
- if (!isViewFound) {
349
- view = defaultView;
350
- }
351
-
352
- return {
353
- view: view,
354
- views: views,
355
- viewsOffset: viewsOffset,
356
- targetOffset: targetOffset,
357
- popupOffset: popupOffset
358
- };
359
- }
360
- };
361
- var _default = {
362
- betterView: viewPort.betterView,
363
- frameRelativeRects: viewPort.frameRelativeRects,
364
- getArrowAdjustments: viewPort.getArrowAdjustments,
365
- isInViewPort: viewPort.isInViewPort
366
- };
367
- exports["default"] = _default;