@jetbrains/ring-ui 5.0.155 → 5.0.157

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 (299) hide show
  1. package/components/checkbox/checkbox.css +1 -1
  2. package/components/global/variables_dark.css +2 -2
  3. package/components/radio/radio.css +1 -1
  4. package/dist/_helpers/_rollupPluginBabelHelpers.js +642 -1
  5. package/dist/_helpers/anchor.js +6 -7
  6. package/dist/_helpers/button__classes.js +16 -28
  7. package/dist/_helpers/card.js +107 -95
  8. package/dist/_helpers/dialog__body-scroll-preventer.js +20 -11
  9. package/dist/_helpers/footer.js +29 -34
  10. package/dist/_helpers/query-assist__suggestions.js +91 -74
  11. package/dist/_helpers/select__filter.js +71 -48
  12. package/dist/_helpers/services-link.js +41 -29
  13. package/dist/_helpers/sidebar.js +103 -99
  14. package/dist/_helpers/theme.js +42 -35
  15. package/dist/_helpers/title.js +71 -57
  16. package/dist/alert/alert.js +199 -158
  17. package/dist/alert/container.js +43 -32
  18. package/dist/alert-service/alert-service.js +172 -104
  19. package/dist/analytics/analytics.js +92 -68
  20. package/dist/analytics/analytics__custom-plugin.js +84 -60
  21. package/dist/analytics/analytics__fus-plugin.js +28 -15
  22. package/dist/analytics/analytics__ga-plugin.js +60 -43
  23. package/dist/analytics/analytics__plugin-utils.js +28 -22
  24. package/dist/auth/auth.js +36 -4
  25. package/dist/auth/auth__core.js +1458 -732
  26. package/dist/auth/background-flow.js +129 -87
  27. package/dist/auth/down-notification.js +75 -30
  28. package/dist/auth/iframe-flow.js +136 -75
  29. package/dist/auth/landing.js +90 -30
  30. package/dist/auth/request-builder.js +82 -46
  31. package/dist/auth/response-parser.js +119 -86
  32. package/dist/auth/storage.js +333 -171
  33. package/dist/auth/token-validator.js +244 -137
  34. package/dist/auth/window-flow.js +136 -92
  35. package/dist/auth-dialog/auth-dialog.js +176 -114
  36. package/dist/auth-dialog-service/auth-dialog-service.js +32 -7
  37. package/dist/auth-ng/auth-ng.js +70 -34
  38. package/dist/auth-ng/auth-ng.mock.js +6 -6
  39. package/dist/autofocus-ng/autofocus-ng.js +23 -8
  40. package/dist/avatar/avatar-example-datauri.js +1 -23
  41. package/dist/avatar/avatar.js +155 -119
  42. package/dist/avatar/fallback-avatar.js +41 -22
  43. package/dist/avatar-editor-ng/avatar-editor-ng.js +56 -23
  44. package/dist/avatar-editor-ng/avatar-editor-ng__template.js +1 -28
  45. package/dist/avatar-ng/avatar-ng.js +23 -1
  46. package/dist/badge/badge.js +43 -35
  47. package/dist/badge-ng/badge-ng.js +13 -1
  48. package/dist/breadcrumb-ng/breadcrumb-ng.js +15 -29
  49. package/dist/button/button.js +111 -87
  50. package/dist/button/button__classes.js +1 -0
  51. package/dist/button-group/button-group.js +35 -19
  52. package/dist/button-group/caption.js +22 -14
  53. package/dist/button-group-ng/button-group-ng.js +13 -7
  54. package/dist/button-ng/button-ng.js +154 -133
  55. package/dist/button-set/button-set.js +34 -20
  56. package/dist/button-set-ng/button-set-ng.js +2 -2
  57. package/dist/button-toolbar/button-toolbar.js +33 -19
  58. package/dist/button-toolbar-ng/button-toolbar-ng.js +5 -3
  59. package/dist/caret/caret.js +225 -188
  60. package/dist/checkbox/checkbox.js +104 -76
  61. package/dist/checkbox-ng/checkbox-ng.js +18 -27
  62. package/dist/clipboard/clipboard-fallback.js +10 -10
  63. package/dist/clipboard/clipboard.js +131 -34
  64. package/dist/code/code.js +168 -92
  65. package/dist/compiler-ng/compiler-ng.js +18 -15
  66. package/dist/confirm/confirm.js +108 -66
  67. package/dist/confirm-ng/confirm-ng.js +33 -4
  68. package/dist/confirm-service/confirm-service.js +66 -42
  69. package/dist/content-layout/content-layout.js +64 -43
  70. package/dist/content-layout/sidebar.js +1 -0
  71. package/dist/contenteditable/contenteditable.js +61 -50
  72. package/dist/control-label/control-label.js +11 -15
  73. package/dist/data-list/data-list.js +184 -128
  74. package/dist/data-list/data-list.mock.js +11 -2
  75. package/dist/data-list/item.js +174 -143
  76. package/dist/data-list/selection.js +139 -76
  77. package/dist/data-list/title.js +13 -1
  78. package/dist/data-list-ng/data-list-ng.js +31 -1
  79. package/dist/date-picker/consts.js +18 -15
  80. package/dist/date-picker/date-input.js +147 -115
  81. package/dist/date-picker/date-picker.js +285 -228
  82. package/dist/date-picker/date-popup.js +397 -356
  83. package/dist/date-picker/day.js +98 -84
  84. package/dist/date-picker/month-names.js +64 -43
  85. package/dist/date-picker/month-slider.js +74 -51
  86. package/dist/date-picker/month.js +21 -15
  87. package/dist/date-picker/months.js +48 -43
  88. package/dist/date-picker/weekdays.js +18 -12
  89. package/dist/date-picker/years.js +109 -84
  90. package/dist/dialog/dialog.js +189 -141
  91. package/dist/dialog/dialog__body-scroll-preventer.js +5 -0
  92. package/dist/dialog-ng/dialog-ng.js +401 -287
  93. package/dist/dialog-ng/dialog-ng__template.js +1 -70
  94. package/dist/docked-panel-ng/docked-panel-ng.js +33 -18
  95. package/dist/dropdown/anchor.js +10 -0
  96. package/dist/dropdown/dropdown.js +214 -182
  97. package/dist/dropdown-menu/dropdown-menu.js +102 -72
  98. package/dist/editable-heading/editable-heading.js +100 -58
  99. package/dist/error-bubble/error-bubble.js +64 -31
  100. package/dist/error-message/error-message.js +61 -38
  101. package/dist/error-message-ng/error-message-ng.js +11 -22
  102. package/dist/footer/footer.js +11 -1
  103. package/dist/footer-ng/footer-ng.js +64 -36
  104. package/dist/form-ng/form-ng.js +66 -56
  105. package/dist/global/angular-component-factory.js +76 -53
  106. package/dist/global/compose.js +10 -1
  107. package/dist/global/composeRefs.js +12 -7
  108. package/dist/global/controls-height.js +2 -2
  109. package/dist/global/create-stateful-context.js +19 -19
  110. package/dist/global/data-tests.js +15 -7
  111. package/dist/global/dom.js +95 -53
  112. package/dist/global/focus-sensor-hoc.js +134 -122
  113. package/dist/global/fuzzy-highlight.js +41 -27
  114. package/dist/global/get-event-key.js +8 -8
  115. package/dist/global/get-uid.js +8 -4
  116. package/dist/global/inject-styles.js +15 -10
  117. package/dist/global/linear-function.js +2 -2
  118. package/dist/global/listeners.js +53 -27
  119. package/dist/global/memoize.js +13 -6
  120. package/dist/global/normalize-indent.js +51 -19
  121. package/dist/global/promise-with-timeout.js +8 -6
  122. package/dist/global/prop-types.js +5 -3
  123. package/dist/global/react-dom-renderer.js +47 -28
  124. package/dist/global/react-render-adapter.js +19 -13
  125. package/dist/global/rerender-hoc.js +41 -16
  126. package/dist/global/ring-angular-component.js +20 -10
  127. package/dist/global/schedule-raf.js +6 -5
  128. package/dist/global/sniffer.js +1 -1
  129. package/dist/global/theme.js +24 -0
  130. package/dist/global/trivial-template-tag.js +10 -3
  131. package/dist/global/typescript-utils.js +6 -2
  132. package/dist/global/url.js +27 -21
  133. package/dist/global/use-event-callback.js +4 -6
  134. package/dist/grid/col.js +55 -35
  135. package/dist/grid/grid.js +36 -17
  136. package/dist/grid/row.js +48 -35
  137. package/dist/group/group.js +27 -17
  138. package/dist/group-ng/group-ng.js +2 -2
  139. package/dist/header/header.js +80 -33
  140. package/dist/header/logo.js +39 -20
  141. package/dist/header/profile.js +188 -150
  142. package/dist/header/services-link.js +9 -0
  143. package/dist/header/services.js +118 -73
  144. package/dist/header/smart-profile.js +207 -111
  145. package/dist/header/smart-services.js +115 -62
  146. package/dist/header/tray-icon.js +38 -21
  147. package/dist/header/tray.js +34 -21
  148. package/dist/heading/heading.js +25 -26
  149. package/dist/heading-ng/heading-ng.js +11 -1
  150. package/dist/http/http.js +368 -215
  151. package/dist/http/http.mock.js +104 -49
  152. package/dist/hub-source/hub-source.js +191 -83
  153. package/dist/hub-source/hub-source__user.js +45 -11
  154. package/dist/hub-source/hub-source__users-groups.js +67 -37
  155. package/dist/i18n/i18n-context.js +14 -10
  156. package/dist/i18n/i18n.js +11 -7
  157. package/dist/icon/icon.js +94 -76
  158. package/dist/icon/icon__svg.js +31 -24
  159. package/dist/icon/index.js +9 -0
  160. package/dist/icon-ng/icon-ng.js +27 -15
  161. package/dist/input/input.js +184 -145
  162. package/dist/input-ng/input-ng.js +96 -118
  163. package/dist/island/adaptive-island-hoc.js +45 -30
  164. package/dist/island/content.js +130 -115
  165. package/dist/island/header.js +69 -56
  166. package/dist/island/island.js +40 -28
  167. package/dist/island-legacy/content-legacy.js +27 -17
  168. package/dist/island-legacy/header-legacy.js +29 -19
  169. package/dist/island-legacy/island-legacy.js +27 -17
  170. package/dist/island-ng/island-content-ng.js +17 -26
  171. package/dist/island-ng/island-header-ng.js +9 -12
  172. package/dist/island-ng/island-ng-class-fixer.js +3 -0
  173. package/dist/island-ng/island-ng.js +6 -10
  174. package/dist/link/clickableLink.js +61 -44
  175. package/dist/link/link.js +85 -74
  176. package/dist/link-ng/link-ng.js +3 -5
  177. package/dist/list/consts.js +1 -1
  178. package/dist/list/list.js +696 -602
  179. package/dist/list/list__custom.js +61 -44
  180. package/dist/list/list__hint.js +21 -10
  181. package/dist/list/list__item.js +167 -129
  182. package/dist/list/list__link.js +54 -37
  183. package/dist/list/list__separator.js +24 -14
  184. package/dist/list/list__title.js +32 -22
  185. package/dist/list/list__users-groups-source.js +131 -54
  186. package/dist/loader/loader.js +78 -43
  187. package/dist/loader/loader__core.js +257 -189
  188. package/dist/loader-inline/loader-inline.js +37 -23
  189. package/dist/loader-inline-ng/loader-inline-ng.js +2 -2
  190. package/dist/loader-ng/loader-ng.js +46 -19
  191. package/dist/loader-screen/loader-screen.js +48 -25
  192. package/dist/loader-screen-ng/loader-screen-ng.js +46 -30
  193. package/dist/login-dialog/login-dialog.js +162 -111
  194. package/dist/login-dialog/service.js +35 -7
  195. package/dist/markdown/code.js +31 -9
  196. package/dist/markdown/heading.js +3 -5
  197. package/dist/markdown/link.js +13 -6
  198. package/dist/markdown/markdown.js +66 -33
  199. package/dist/message/message.js +157 -125
  200. package/dist/message-bundle-ng/message-bundle-ng.js +128 -44
  201. package/dist/old-browsers-message/old-browsers-message.js +19 -11
  202. package/dist/old-browsers-message/old-browsers-message__stop.js +8 -0
  203. package/dist/old-browsers-message/white-list.js +16 -9
  204. package/dist/pager/pager.js +275 -210
  205. package/dist/pager-ng/pager-ng.js +36 -1
  206. package/dist/panel/panel.js +27 -17
  207. package/dist/panel-ng/panel-ng.js +14 -1
  208. package/dist/permissions/permissions.js +173 -127
  209. package/dist/permissions/permissions__cache.js +225 -194
  210. package/dist/permissions-ng/permissions-ng.js +86 -35
  211. package/dist/place-under-ng/place-under-ng.js +68 -45
  212. package/dist/popup/popup.consts.js +1 -1
  213. package/dist/popup/popup.js +342 -280
  214. package/dist/popup/popup.target.js +8 -9
  215. package/dist/popup/position.js +153 -153
  216. package/dist/popup-menu/popup-menu.js +86 -44
  217. package/dist/progress-bar/progress-bar.js +97 -80
  218. package/dist/progress-bar-ng/progress-bar-ng.js +11 -1
  219. package/dist/promised-click-ng/promised-click-ng.js +92 -58
  220. package/dist/proxy-attrs/proxy-attrs.js +18 -9
  221. package/dist/query-assist/query-assist.js +903 -832
  222. package/dist/query-assist/query-assist__suggestions.js +33 -1
  223. package/dist/query-assist-ng/query-assist-ng.js +38 -1
  224. package/dist/radio/radio.js +36 -19
  225. package/dist/radio/radio__item.js +71 -52
  226. package/dist/radio-ng/radio-ng.js +14 -25
  227. package/dist/save-field-ng/save-field-ng.js +86 -52
  228. package/dist/save-field-ng/save-field-ng__template.js +1 -32
  229. package/dist/select/select.js +937 -835
  230. package/dist/select/select__filter.js +33 -0
  231. package/dist/select/select__popup.js +472 -359
  232. package/dist/select-ng/select-ng.js +125 -74
  233. package/dist/select-ng/select-ng__lazy.js +101 -50
  234. package/dist/select-ng/select-ng__options.js +107 -81
  235. package/dist/shortcuts/core.js +218 -166
  236. package/dist/shortcuts/shortcut-title.js +11 -6
  237. package/dist/shortcuts/shortcuts-hoc.js +47 -19
  238. package/dist/shortcuts/shortcuts.js +77 -50
  239. package/dist/shortcuts-hint-ng/shortcuts-hint-ng.js +104 -53
  240. package/dist/shortcuts-hint-ng/shortcuts-hint-ng__template.js +1 -48
  241. package/dist/shortcuts-ng/shortcuts-ng.js +86 -51
  242. package/dist/sidebar-ng/sidebar-ng.js +53 -22
  243. package/dist/sidebar-ng/sidebar-ng__button-template.js +1 -18
  244. package/dist/sidebar-ng/sidebar-ng__template.js +1 -10
  245. package/dist/storage/storage.js +35 -4
  246. package/dist/storage/storage__fallback.js +224 -149
  247. package/dist/storage/storage__local.js +156 -90
  248. package/dist/style.css +1 -1
  249. package/dist/tab-trap/tab-trap.js +157 -122
  250. package/dist/table/cell.js +28 -14
  251. package/dist/table/disable-hover-hoc.js +53 -33
  252. package/dist/table/header-cell.js +87 -64
  253. package/dist/table/header.js +126 -98
  254. package/dist/table/multitable.js +127 -107
  255. package/dist/table/row-with-focus-sensor.js +73 -25
  256. package/dist/table/row.js +208 -170
  257. package/dist/table/selection-adapter.js +3 -1
  258. package/dist/table/selection-shortcuts-hoc.js +184 -181
  259. package/dist/table/selection.js +228 -156
  260. package/dist/table/smart-table.js +93 -51
  261. package/dist/table/table.js +348 -281
  262. package/dist/table-legacy-ng/table-legacy-ng.js +117 -102
  263. package/dist/table-legacy-ng/table-legacy-ng__pager.js +42 -10
  264. package/dist/table-legacy-ng/table-legacy-ng__selection-navigate-actions.js +92 -69
  265. package/dist/table-legacy-ng/table-legacy-ng__selection.js +169 -119
  266. package/dist/table-legacy-ng/table-legacy-ng__toolbar.js +36 -21
  267. package/dist/table-ng/smart-table-ng.js +31 -1
  268. package/dist/table-ng/table-ng.js +31 -1
  269. package/dist/tabs/collapsible-more.js +87 -50
  270. package/dist/tabs/collapsible-tab.js +45 -38
  271. package/dist/tabs/collapsible-tabs.js +161 -94
  272. package/dist/tabs/custom-item.js +2 -4
  273. package/dist/tabs/dumb-tabs.js +122 -75
  274. package/dist/tabs/smart-tabs.js +75 -29
  275. package/dist/tabs/tab-link.js +29 -19
  276. package/dist/tabs/tab.js +33 -19
  277. package/dist/tabs/tabs.js +35 -0
  278. package/dist/tabs-ng/tabs-ng.js +38 -24
  279. package/dist/tabs-ng/tabs-ng__template.js +1 -38
  280. package/dist/tag/tag.js +170 -133
  281. package/dist/tags-input/tags-input.js +428 -327
  282. package/dist/tags-input-ng/tags-input-ng.js +37 -1
  283. package/dist/tags-list/tags-list.js +80 -56
  284. package/dist/template-ng/template-ng.js +50 -39
  285. package/dist/text/text.js +38 -28
  286. package/dist/title-ng/title-ng.js +28 -23
  287. package/dist/toggle/toggle.js +72 -56
  288. package/dist/toggle-ng/toggle-ng.js +14 -1
  289. package/dist/tooltip/tooltip.js +192 -146
  290. package/dist/tooltip-ng/tooltip-ng.js +51 -25
  291. package/dist/user-agreement/service.js +374 -227
  292. package/dist/user-agreement/toolbox.eula.js +1 -160
  293. package/dist/user-agreement/user-agreement.js +128 -86
  294. package/dist/user-card/card.js +32 -0
  295. package/dist/user-card/smart-user-card-tooltip.js +116 -51
  296. package/dist/user-card/tooltip.js +90 -48
  297. package/dist/user-card/user-card.js +32 -0
  298. package/dist/user-card-ng/user-card-ng.js +34 -2
  299. package/package.json +13 -13
@@ -1,9 +1,28 @@
1
- import { _ as _extends } from '../_helpers/_rollupPluginBabelHelpers.js';
1
+ import { _ as _createClass, i as _extends, b as _classCallCheck, c as _defineProperty } from '../_helpers/_rollupPluginBabelHelpers.js';
2
+ import 'core-js/modules/es.object.assign.js';
2
3
  import angular from 'angular';
3
4
  import React, { cloneElement } from 'react';
4
5
  import { render, hydrate } from '../global/react-render-adapter.js';
5
6
  import { RerenderableSelect } from '../select/select.js';
7
+ import 'core-js/modules/es.array.iterator.js';
8
+ import 'core-js/modules/es.object.to-string.js';
9
+ import 'core-js/modules/es.string.iterator.js';
10
+ import 'core-js/modules/es.weak-map.js';
11
+ import 'core-js/modules/web.dom-collections.iterator.js';
6
12
  import 'react-dom';
13
+ import 'core-js/modules/es.array.index-of.js';
14
+ import 'core-js/modules/es.array.reduce.js';
15
+ import 'core-js/modules/es.string.trim.js';
16
+ import 'core-js/modules/es.array.filter.js';
17
+ import 'core-js/modules/es.regexp.exec.js';
18
+ import 'core-js/modules/es.array.find.js';
19
+ import 'core-js/modules/es.array.concat.js';
20
+ import 'core-js/modules/es.string.replace.js';
21
+ import 'core-js/modules/es.array.map.js';
22
+ import 'core-js/modules/web.dom-collections.for-each.js';
23
+ import 'core-js/modules/es.array.slice.js';
24
+ import 'core-js/modules/es.object.keys.js';
25
+ import 'core-js/modules/es.object.values.js';
7
26
  import 'classnames';
8
27
  import 'prop-types';
9
28
  import '@jetbrains/icons/chevron-down';
@@ -11,6 +30,7 @@ import '@jetbrains/icons/close-12px';
11
30
  import 'deep-equal';
12
31
  import '../dropdown/dropdown.js';
13
32
  import '../global/data-tests.js';
33
+ import 'core-js/modules/es.object.entries.js';
14
34
  import '../global/typescript-utils.js';
15
35
  import '../_helpers/anchor.js';
16
36
  import '@jetbrains/icons/chevron-10px';
@@ -19,28 +39,43 @@ import 'util-deprecate';
19
39
  import '../icon/icon__constants.js';
20
40
  import '../_helpers/icon.js';
21
41
  import '../icon/icon__svg.js';
42
+ import 'core-js/modules/es.string.starts-with.js';
22
43
  import '../global/memoize.js';
44
+ import 'core-js/modules/es.map.js';
23
45
  import '../button/button.js';
24
46
  import '../link/clickableLink.js';
25
47
  import '../global/controls-height.js';
26
48
  import '../_helpers/button__classes.js';
27
49
  import '../avatar/avatar.js';
28
50
  import '../global/url.js';
51
+ import 'core-js/modules/es.string.match.js';
29
52
  import '../global/dom.js';
53
+ import 'core-js/modules/es.string.split.js';
54
+ import 'core-js/modules/es.set.js';
30
55
  import '../avatar/fallback-avatar.js';
56
+ import 'core-js/modules/es.number.constructor.js';
57
+ import 'core-js/modules/es.array.from.js';
31
58
  import '../global/get-uid.js';
59
+ import 'core-js/modules/es.regexp.to-string.js';
32
60
  import '../popup/popup.js';
33
61
  import '../global/schedule-raf.js';
34
62
  import '../shortcuts/shortcuts.js';
35
63
  import '../shortcuts/core.js';
64
+ import 'core-js/modules/es.array.includes.js';
65
+ import 'core-js/modules/es.string.includes.js';
66
+ import 'core-js/modules/es.array.splice.js';
67
+ import 'core-js/modules/es.array.find-index.js';
36
68
  import 'combokeys';
37
69
  import '../global/sniffer.js';
38
70
  import 'sniffr';
39
71
  import '../tab-trap/tab-trap.js';
40
72
  import '../popup/position.js';
73
+ import 'core-js/modules/es.array.sort.js';
41
74
  import '../popup/popup.consts.js';
42
75
  import '../popup/popup.target.js';
43
76
  import '../list/list.js';
77
+ import 'core-js/modules/es.symbol.js';
78
+ import 'core-js/modules/es.symbol.description.js';
44
79
  import 'react-virtualized/dist/es/List';
45
80
  import 'react-virtualized/dist/es/AutoSizer';
46
81
  import 'react-virtualized/dist/es/WindowScroller';
@@ -83,16 +118,21 @@ import '../caret/caret.js';
83
118
  import '../text/text.js';
84
119
  import '../_helpers/select__filter.js';
85
120
 
86
- class SelectLazy {
87
- constructor(container, props, ctrl, type, selectRef) {
121
+ var SelectLazy = /*#__PURE__*/function () {
122
+ function SelectLazy(container, props, ctrl, type, selectRef) {
123
+ var _this = this;
124
+ _classCallCheck(this, SelectLazy);
125
+ _defineProperty(this, "onClick", function () {
126
+ _this._clickHandler();
127
+ });
88
128
  this.container = container;
89
129
  this.ctrl = ctrl;
90
130
  this.props = props || {};
91
131
  this.type = type;
92
132
  this.node = container;
93
133
  this.selectInstance = null;
94
- this.selectRef = node => {
95
- this.selectInstance = node;
134
+ this.selectRef = function (node) {
135
+ _this.selectInstance = node;
96
136
  selectRef(node);
97
137
  };
98
138
  this._popup = {
@@ -101,55 +141,66 @@ class SelectLazy {
101
141
  this.attachEvents();
102
142
  this.render();
103
143
  }
104
- onClick = () => {
105
- this._clickHandler();
106
- };
107
- rerender() {
108
- let props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
109
- for (const prop in props) {
110
- if (props.hasOwnProperty(prop)) {
111
- if (props[prop] == this.props[prop]) {
112
- //eslint-disable-line eqeqeq
113
- break;
144
+ _createClass(SelectLazy, [{
145
+ key: "rerender",
146
+ value: function rerender() {
147
+ var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
148
+ for (var prop in props) {
149
+ if (props.hasOwnProperty(prop)) {
150
+ if (props[prop] == this.props[prop]) {
151
+ //eslint-disable-line eqeqeq
152
+ break;
153
+ }
154
+ this.render(props);
155
+ return;
114
156
  }
115
- this.render(props);
116
- return;
117
157
  }
118
158
  }
119
- }
120
- attachEvents() {
121
- this.container.addEventListener('click', this.onClick, {
122
- capture: true
123
- });
124
- }
125
- detachEvents() {
126
- this.container.removeEventListener('click', this.onClick, {
127
- capture: true
128
- });
129
- }
130
- render(props) {
131
- this.reactSelect = /*#__PURE__*/React.createElement(RerenderableSelect, _extends({}, Object.assign({}, this.props, props || {}), {
132
- ref: this.selectRef
133
- }));
134
- this.props = this.reactSelect.props;
135
- if (this.type !== 'dropdown') {
136
- const ReactDOMServer = require('react-dom/server');
137
- this.container.innerHTML = ReactDOMServer.renderToString(this.reactSelect);
159
+ }, {
160
+ key: "attachEvents",
161
+ value: function attachEvents() {
162
+ this.container.addEventListener('click', this.onClick, {
163
+ capture: true
164
+ });
138
165
  }
139
- }
140
- _clickHandler() {
141
- this.detachEvents();
142
- if (this.type === 'dropdown') {
143
- render( /*#__PURE__*/cloneElement(this.reactSelect, {
144
- ref: node => {
145
- this.selectRef(node);
146
- node?._openPopupIfClosed?.();
147
- }
148
- }), this.container);
149
- } else {
150
- hydrate(this.reactSelect, this.container);
166
+ }, {
167
+ key: "detachEvents",
168
+ value: function detachEvents() {
169
+ this.container.removeEventListener('click', this.onClick, {
170
+ capture: true
171
+ });
151
172
  }
152
- }
153
- }
173
+ }, {
174
+ key: "render",
175
+ value: function render(props) {
176
+ this.reactSelect = /*#__PURE__*/React.createElement(RerenderableSelect, _extends({}, Object.assign({}, this.props, props || {}), {
177
+ ref: this.selectRef
178
+ }));
179
+ this.props = this.reactSelect.props;
180
+ if (this.type !== 'dropdown') {
181
+ var ReactDOMServer = require('react-dom/server');
182
+ this.container.innerHTML = ReactDOMServer.renderToString(this.reactSelect);
183
+ }
184
+ }
185
+ }, {
186
+ key: "_clickHandler",
187
+ value: function _clickHandler() {
188
+ var _this2 = this;
189
+ this.detachEvents();
190
+ if (this.type === 'dropdown') {
191
+ render( /*#__PURE__*/cloneElement(this.reactSelect, {
192
+ ref: function ref(node) {
193
+ var _node$_openPopupIfClo;
194
+ _this2.selectRef(node);
195
+ node === null || node === void 0 ? void 0 : (_node$_openPopupIfClo = node._openPopupIfClosed) === null || _node$_openPopupIfClo === void 0 ? void 0 : _node$_openPopupIfClo.call(node);
196
+ }
197
+ }), this.container);
198
+ } else {
199
+ hydrate(this.reactSelect, this.container);
200
+ }
201
+ }
202
+ }]);
203
+ return SelectLazy;
204
+ }();
154
205
 
155
206
  export { SelectLazy as default };
@@ -1,28 +1,21 @@
1
+ import { c as _defineProperty, _ as _createClass, d as _typeof, b as _classCallCheck } from '../_helpers/_rollupPluginBabelHelpers.js';
2
+ import 'core-js/modules/es.regexp.exec.js';
3
+ import 'core-js/modules/es.string.match.js';
4
+ import 'core-js/modules/es.array.index-of.js';
5
+ import 'core-js/modules/es.array.filter.js';
6
+ import 'core-js/modules/es.object.to-string.js';
1
7
  import angular from 'angular';
2
8
  import deepEqual from 'deep-equal';
3
9
 
4
- class Options {
5
- static OPTIONS_REGEXP = /^\s*(.*?)(?:\s+as\s+(.*?))?(?:\s+select\s+as\s+(.*?))?(?:\s+describe\sas\s+(.*?))?(?:\s+for\s+)?([$\w]+)\s+in\s+(.*?)(?:\s+track\sby\s+(.*?))?$/;
6
- static MATCHES = {
7
- ITEM: 1,
8
- LABEL: 2,
9
- SELECTED_LABEL: 3,
10
- DESCRIPTION: 4,
11
- OPTION: 5,
12
- ITEMS: 6,
13
- TRACK: 7
14
- };
15
- static defaultKeyField = 'key';
16
- static defaultLabelField = 'label';
17
- static defaultSelectedLabelField = 'selectedLabel';
18
- static defaultDescriptionField = 'description';
19
- constructor(scope, optionsString) {
10
+ var Options = /*#__PURE__*/function () {
11
+ function Options(scope, optionsString) {
12
+ _classCallCheck(this, Options);
20
13
  this.scope = scope;
21
- const $parse = this.constructor.$parse;
22
- const MATCHES = this.constructor.MATCHES;
23
- let match;
14
+ var $parse = this.constructor.$parse;
15
+ var MATCHES = this.constructor.MATCHES;
16
+ var match;
24
17
  if (!(match = optionsString.match(this.constructor.OPTIONS_REGEXP))) {
25
- throw new Error('Bad rgSelect expression format. Expected: [{item}] [[as] item.text] [select as item.selectLabel]' + ` [describe as {item.description}] [for] {item} in {items|dataSource(query)} [track by item.id], Received: ${optionsString}`);
18
+ throw new Error('Bad rgSelect expression format. Expected: [{item}] [[as] item.text] [select as item.selectLabel]' + " [describe as {item.description}] [for] {item} in {items|dataSource(query)} [track by item.id], Received: ".concat(optionsString));
26
19
  }
27
20
 
28
21
  /**
@@ -39,76 +32,109 @@ class Options {
39
32
  this.trackByGetter = match[MATCHES.TRACK] && $parse(match[MATCHES.TRACK]);
40
33
  this.datasourceIsFunction = match[MATCHES.ITEMS].indexOf('(') > 0;
41
34
  }
42
- getProperty(option, getter) {
43
- if (getter) {
44
- const locals = {};
45
- locals[this.optionVariableName] = option;
46
- return getter.call(this, this.scope, locals);
35
+ _createClass(Options, [{
36
+ key: "getProperty",
37
+ value: function getProperty(option, getter) {
38
+ if (getter) {
39
+ var locals = {};
40
+ locals[this.optionVariableName] = option;
41
+ return getter.call(this, this.scope, locals);
42
+ }
43
+ return undefined;
47
44
  }
48
- return undefined;
49
- }
50
45
 
51
- /**
52
- * @param {Object} option The item from options collection
53
- * @return {any} The option value
54
- */
55
- getValue(option) {
56
- if (!this.hasItemGetter) {
57
- return option;
46
+ /**
47
+ * @param {Object} option The item from options collection
48
+ * @return {any} The option value
49
+ */
50
+ }, {
51
+ key: "getValue",
52
+ value: function getValue(option) {
53
+ if (!this.hasItemGetter) {
54
+ return option;
55
+ }
56
+ var value = this.getProperty(option, this.itemGetter);
57
+ return value === undefined ? option : value;
58
58
  }
59
- const value = this.getProperty(option, this.itemGetter);
60
- return value === undefined ? option : value;
61
- }
62
59
 
63
- /**
64
- * @param {any} value The option value
65
- * @param {Array} options The list of options
66
- * @return {Object|undefined} The option object
67
- */
68
- getOptionByValue(value, options) {
69
60
  /**
70
- * @param {any} it
71
- * @return {string} The string representation of the value
61
+ * @param {any} value The option value
62
+ * @param {Array} options The list of options
63
+ * @return {Object|undefined} The option object
72
64
  */
73
- function toString(it) {
74
- return typeof it === 'object' ? JSON.stringify(it) : String(it);
65
+ }, {
66
+ key: "getOptionByValue",
67
+ value: function getOptionByValue(value, options) {
68
+ var _this = this;
69
+ /**
70
+ * @param {any} it
71
+ * @return {string} The string representation of the value
72
+ */
73
+ function toString(it) {
74
+ return _typeof(it) === 'object' ? JSON.stringify(it) : String(it);
75
+ }
76
+ if (!this.hasItemGetter) {
77
+ return value;
78
+ }
79
+ var matchedOptions = options.filter(function (option) {
80
+ var optionValue = _this.getValue(option);
81
+ if (_typeof(value) === 'object') {
82
+ return deepEqual(optionValue, value);
83
+ }
84
+ return optionValue === value;
85
+ });
86
+ if (matchedOptions.length > 1) {
87
+ throw new Error("Error(rg-select): You can not have two options with same value(".concat(toString(value), ")"));
88
+ }
89
+ return matchedOptions[0];
75
90
  }
76
- if (!this.hasItemGetter) {
77
- return value;
91
+ }, {
92
+ key: "getKey",
93
+ value: function getKey(option) {
94
+ return this.getProperty(option, this.trackByGetter) || option[this.constructor.defaultKeyField] || option;
78
95
  }
79
- const matchedOptions = options.filter(option => {
80
- const optionValue = this.getValue(option);
81
- if (typeof value === 'object') {
82
- return deepEqual(optionValue, value);
83
- }
84
- return optionValue === value;
85
- });
86
- if (matchedOptions.length > 1) {
87
- throw new Error(`Error(rg-select): You can not have two options with same value(${toString(value)})`);
96
+ }, {
97
+ key: "getLabel",
98
+ value: function getLabel(option) {
99
+ var optionStringValue = typeof option === 'string' ? option : null;
100
+ return this.getProperty(option, this.labelGetter) || option[this.constructor.defaultLabelField] || optionStringValue;
88
101
  }
89
- return matchedOptions[0];
90
- }
91
- getKey(option) {
92
- return this.getProperty(option, this.trackByGetter) || option[this.constructor.defaultKeyField] || option;
93
- }
94
- getLabel(option) {
95
- const optionStringValue = typeof option === 'string' ? option : null;
96
- return this.getProperty(option, this.labelGetter) || option[this.constructor.defaultLabelField] || optionStringValue;
97
- }
98
- getSelectedLabel(option) {
99
- return this.getProperty(option, this.selectedLabelGetter) || option[this.constructor.defaultSelectedLabelField];
100
- }
101
- getDescription(option) {
102
- return this.getProperty(option, this.descriptionGetter) || option[this.constructor.defaultDescriptionField];
103
- }
104
- getOptions(query, skip) {
105
- return this.datasourceGetter(this.scope, {
106
- query,
107
- skip
108
- });
109
- }
110
- }
111
- const angularModule = angular.module('Ring.select.options', []);
102
+ }, {
103
+ key: "getSelectedLabel",
104
+ value: function getSelectedLabel(option) {
105
+ return this.getProperty(option, this.selectedLabelGetter) || option[this.constructor.defaultSelectedLabelField];
106
+ }
107
+ }, {
108
+ key: "getDescription",
109
+ value: function getDescription(option) {
110
+ return this.getProperty(option, this.descriptionGetter) || option[this.constructor.defaultDescriptionField];
111
+ }
112
+ }, {
113
+ key: "getOptions",
114
+ value: function getOptions(query, skip) {
115
+ return this.datasourceGetter(this.scope, {
116
+ query: query,
117
+ skip: skip
118
+ });
119
+ }
120
+ }]);
121
+ return Options;
122
+ }();
123
+ _defineProperty(Options, "OPTIONS_REGEXP", /^\s*(.*?)(?:\s+as\s+(.*?))?(?:\s+select\s+as\s+(.*?))?(?:\s+describe\sas\s+(.*?))?(?:\s+for\s+)?([$\w]+)\s+in\s+(.*?)(?:\s+track\sby\s+(.*?))?$/);
124
+ _defineProperty(Options, "MATCHES", {
125
+ ITEM: 1,
126
+ LABEL: 2,
127
+ SELECTED_LABEL: 3,
128
+ DESCRIPTION: 4,
129
+ OPTION: 5,
130
+ ITEMS: 6,
131
+ TRACK: 7
132
+ });
133
+ _defineProperty(Options, "defaultKeyField", 'key');
134
+ _defineProperty(Options, "defaultLabelField", 'label');
135
+ _defineProperty(Options, "defaultSelectedLabelField", 'selectedLabel');
136
+ _defineProperty(Options, "defaultDescriptionField", 'description');
137
+ var angularModule = angular.module('Ring.select.options', []);
112
138
  angularModule.factory('SelectOptions', ["$parse", function SelectOptionsFactory($parse) {
113
139
  Options.$parse = $parse;
114
140
  return Options;