@jetbrains/ring-ui 5.0.36 → 5.0.38

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 (239) hide show
  1. package/components/editable-heading/editable-heading.d.ts +4 -2
  2. package/components/editable-heading/editable-heading.js +3 -3
  3. package/components/input/input.css +2 -0
  4. package/components/query-assist/query-assist.js +1 -1
  5. package/dist/_helpers/_rollupPluginBabelHelpers.js +0 -4
  6. package/dist/_helpers/anchor.js +0 -1
  7. package/dist/_helpers/card.js +0 -3
  8. package/dist/_helpers/dialog__body-scroll-preventer.js +0 -11
  9. package/dist/_helpers/footer.js +2 -13
  10. package/dist/_helpers/query-assist__suggestions.js +0 -10
  11. package/dist/_helpers/select__filter.js +0 -11
  12. package/dist/_helpers/services-link.js +0 -2
  13. package/dist/_helpers/sidebar.js +0 -12
  14. package/dist/_helpers/theme.js +0 -3
  15. package/dist/_helpers/title.js +0 -9
  16. package/dist/alert/alert.js +2 -32
  17. package/dist/alert/container.js +0 -5
  18. package/dist/alert-service/alert-service.js +0 -26
  19. package/dist/analytics/analytics.js +0 -22
  20. package/dist/analytics/analytics__custom-plugin.js +0 -38
  21. package/dist/analytics/analytics__fus-plugin.js +0 -20
  22. package/dist/analytics/analytics__ga-plugin.js +0 -13
  23. package/dist/analytics/analytics__plugin-utils.js +0 -8
  24. package/dist/analytics-ng/analytics-ng.js +3 -9
  25. package/dist/auth/auth.js +2 -3
  26. package/dist/auth/auth__core.js +30 -243
  27. package/dist/auth/background-flow.js +2 -25
  28. package/dist/auth/down-notification.js +0 -7
  29. package/dist/auth/iframe-flow.js +2 -26
  30. package/dist/auth/landing.js +2 -6
  31. package/dist/auth/request-builder.js +0 -11
  32. package/dist/auth/response-parser.js +4 -26
  33. package/dist/auth/storage.js +4 -60
  34. package/dist/auth/token-validator.js +6 -42
  35. package/dist/auth/window-flow.js +2 -34
  36. package/dist/auth-dialog/auth-dialog.js +2 -12
  37. package/dist/auth-dialog-service/auth-dialog-service.js +2 -4
  38. package/dist/auth-ng/auth-ng.js +6 -22
  39. package/dist/auth-ng/auth-ng.mock.js +0 -4
  40. package/dist/autofocus-ng/autofocus-ng.js +0 -5
  41. package/dist/avatar/avatar.js +4 -17
  42. package/dist/avatar/fallback-avatar.js +2 -9
  43. package/dist/avatar-editor-ng/avatar-editor-ng.js +1 -17
  44. package/dist/badge/badge.js +0 -3
  45. package/dist/button/button.js +0 -8
  46. package/dist/button-group/button-group.js +0 -3
  47. package/dist/button-group/caption.js +0 -2
  48. package/dist/button-group-ng/button-group-ng.js +0 -4
  49. package/dist/button-ng/button-ng.js +3 -21
  50. package/dist/button-set/button-set.js +0 -3
  51. package/dist/button-set-ng/button-set-ng.js +0 -2
  52. package/dist/button-toolbar/button-toolbar.js +0 -3
  53. package/dist/button-toolbar-ng/button-toolbar-ng.js +0 -2
  54. package/dist/caret/caret.js +2 -53
  55. package/dist/checkbox/checkbox.js +0 -12
  56. package/dist/code/code.js +3 -25
  57. package/dist/compiler-ng/compiler-ng.js +0 -5
  58. package/dist/confirm/confirm.js +0 -6
  59. package/dist/confirm-service/confirm-service.js +10 -8
  60. package/dist/content-layout/content-layout.js +0 -7
  61. package/dist/contenteditable/contenteditable.js +6 -13
  62. package/dist/data-list/data-list.js +4 -28
  63. package/dist/data-list/item.js +0 -15
  64. package/dist/data-list/selection.js +0 -27
  65. package/dist/date-picker/consts.js +0 -7
  66. package/dist/date-picker/date-input.js +0 -20
  67. package/dist/date-picker/date-picker.js +2 -36
  68. package/dist/date-picker/date-popup.js +18 -71
  69. package/dist/date-picker/day.js +0 -14
  70. package/dist/date-picker/month-names.js +0 -9
  71. package/dist/date-picker/month-slider.js +0 -10
  72. package/dist/date-picker/month.js +2 -4
  73. package/dist/date-picker/months.js +6 -13
  74. package/dist/date-picker/years.js +0 -14
  75. package/dist/dialog/dialog.js +0 -19
  76. package/dist/dialog-ng/dialog-ng.js +17 -105
  77. package/dist/docked-panel-ng/docked-panel-ng.js +6 -29
  78. package/dist/dropdown/dropdown.js +2 -33
  79. package/dist/dropdown-menu/dropdown-menu.js +4 -8
  80. package/dist/editable-heading/editable-heading.d.ts +4 -2
  81. package/dist/editable-heading/editable-heading.js +7 -6
  82. package/dist/error-bubble/error-bubble.js +2 -4
  83. package/dist/error-message/error-message.js +0 -3
  84. package/dist/footer-ng/footer-ng.js +0 -13
  85. package/dist/form-ng/form-ng.js +1 -21
  86. package/dist/global/angular-component-factory.js +0 -10
  87. package/dist/global/compose.js +0 -1
  88. package/dist/global/composeRefs.js +0 -1
  89. package/dist/global/controls-height.js +0 -2
  90. package/dist/global/create-stateful-context.js +0 -5
  91. package/dist/global/data-tests.js +0 -4
  92. package/dist/global/dom.js +2 -11
  93. package/dist/global/focus-sensor-hoc.js +4 -33
  94. package/dist/global/fuzzy-highlight.js +2 -16
  95. package/dist/global/get-event-key.js +8 -17
  96. package/dist/global/get-uid.js +0 -2
  97. package/dist/global/linear-function.js +0 -2
  98. package/dist/global/listeners.js +0 -13
  99. package/dist/global/memoize.js +0 -2
  100. package/dist/global/normalize-indent.js +2 -5
  101. package/dist/global/react-dom-renderer.js +0 -8
  102. package/dist/global/react-render-adapter.js +0 -7
  103. package/dist/global/rerender-hoc.js +0 -7
  104. package/dist/global/ring-angular-component.js +0 -5
  105. package/dist/global/schedule-raf.js +0 -5
  106. package/dist/global/trivial-template-tag.js +2 -3
  107. package/dist/global/url.js +0 -27
  108. package/dist/grid/col.js +0 -4
  109. package/dist/grid/grid.js +0 -3
  110. package/dist/grid/row.js +0 -5
  111. package/dist/group/group.js +0 -3
  112. package/dist/header/header.js +0 -5
  113. package/dist/header/logo.js +0 -4
  114. package/dist/header/profile.js +0 -7
  115. package/dist/header/services.js +0 -11
  116. package/dist/header/smart-profile.js +4 -18
  117. package/dist/header/smart-services.js +0 -17
  118. package/dist/header/tray-icon.js +2 -3
  119. package/dist/header/tray.js +0 -3
  120. package/dist/heading/heading.js +0 -5
  121. package/dist/http/http.js +20 -65
  122. package/dist/http/http.mock.js +2 -14
  123. package/dist/hub-source/hub-source.js +0 -32
  124. package/dist/hub-source/hub-source__user.js +0 -1
  125. package/dist/hub-source/hub-source__users-groups.js +0 -12
  126. package/dist/icon/icon.js +0 -13
  127. package/dist/icon/icon__constants.js +0 -4
  128. package/dist/icon/icon__svg.js +0 -10
  129. package/dist/icon-ng/icon-ng.js +2 -7
  130. package/dist/input/input.js +0 -30
  131. package/dist/input-ng/input-ng.js +0 -17
  132. package/dist/island/adaptive-island-hoc.js +0 -7
  133. package/dist/island/content.js +0 -25
  134. package/dist/island/header.js +0 -7
  135. package/dist/island/island.js +0 -4
  136. package/dist/island-legacy/content-legacy.js +0 -2
  137. package/dist/island-legacy/header-legacy.js +0 -2
  138. package/dist/island-legacy/island-legacy.js +0 -2
  139. package/dist/island-ng/island-content-ng.js +0 -3
  140. package/dist/link/clickableLink.js +2 -10
  141. package/dist/link/link.js +2 -9
  142. package/dist/link-ng/link-ng.js +0 -2
  143. package/dist/list/consts.js +0 -4
  144. package/dist/list/list.js +6 -128
  145. package/dist/list/list__custom.js +0 -4
  146. package/dist/list/list__hint.js +0 -3
  147. package/dist/list/list__item.js +0 -8
  148. package/dist/list/list__link.js +2 -3
  149. package/dist/list/list__separator.js +0 -1
  150. package/dist/list/list__title.js +0 -1
  151. package/dist/list/list__users-groups-source.js +4 -17
  152. package/dist/loader/loader.js +0 -10
  153. package/dist/loader/loader__core.js +6 -70
  154. package/dist/loader-inline/loader-inline.js +0 -3
  155. package/dist/loader-ng/loader-ng.js +0 -7
  156. package/dist/loader-screen/loader-screen.js +0 -3
  157. package/dist/loader-screen-ng/loader-screen-ng.js +2 -14
  158. package/dist/login-dialog/login-dialog.js +0 -15
  159. package/dist/login-dialog/service.js +2 -4
  160. package/dist/markdown/code.js +0 -2
  161. package/dist/markdown/heading.js +0 -1
  162. package/dist/markdown/link.js +0 -1
  163. package/dist/markdown/markdown.js +0 -2
  164. package/dist/message/message.js +0 -24
  165. package/dist/message-bundle-ng/message-bundle-ng.js +2 -45
  166. package/dist/old-browsers-message/old-browsers-message.js +2 -21
  167. package/dist/old-browsers-message/white-list.js +2 -6
  168. package/dist/pager/pager.js +2 -39
  169. package/dist/panel/panel.js +0 -3
  170. package/dist/permissions/permissions.js +1 -43
  171. package/dist/permissions/permissions__cache.js +12 -63
  172. package/dist/permissions-ng/permissions-ng.js +11 -19
  173. package/dist/place-under-ng/place-under-ng.js +0 -19
  174. package/dist/popup/popup.consts.js +0 -11
  175. package/dist/popup/popup.js +6 -68
  176. package/dist/popup/position.js +8 -30
  177. package/dist/popup-menu/popup-menu.js +4 -13
  178. package/dist/progress-bar/progress-bar.js +0 -14
  179. package/dist/promised-click-ng/promised-click-ng.js +3 -22
  180. package/dist/query-assist/query-assist.js +17 -201
  181. package/dist/radio/radio.js +0 -6
  182. package/dist/radio/radio__item.js +0 -9
  183. package/dist/radio-ng/radio-ng.js +0 -4
  184. package/dist/save-field-ng/save-field-ng.js +1 -37
  185. package/dist/select/select.js +18 -208
  186. package/dist/select/select__popup.js +4 -76
  187. package/dist/select-ng/select-ng.js +18 -74
  188. package/dist/select-ng/select-ng__lazy.js +2 -17
  189. package/dist/select-ng/select-ng__options.js +3 -29
  190. package/dist/shortcuts/core.js +4 -56
  191. package/dist/shortcuts/shortcuts-hoc.js +0 -4
  192. package/dist/shortcuts/shortcuts.js +0 -10
  193. package/dist/shortcuts-hint-ng/shortcuts-hint-ng.js +0 -13
  194. package/dist/shortcuts-ng/shortcuts-ng.js +16 -46
  195. package/dist/sidebar-ng/sidebar-ng.js +2 -12
  196. package/dist/storage/storage.js +2 -5
  197. package/dist/storage/storage__fallback.js +2 -48
  198. package/dist/storage/storage__local.js +0 -23
  199. package/dist/style.css +1 -1
  200. package/dist/tab-trap/tab-trap.js +0 -37
  201. package/dist/table/cell.js +0 -2
  202. package/dist/table/disable-hover-hoc.js +0 -9
  203. package/dist/table/header-cell.js +0 -8
  204. package/dist/table/header.js +0 -16
  205. package/dist/table/multitable.js +0 -23
  206. package/dist/table/row-with-focus-sensor.js +0 -12
  207. package/dist/table/row.js +0 -18
  208. package/dist/table/selection-adapter.js +0 -2
  209. package/dist/table/selection-shortcuts-hoc.js +8 -42
  210. package/dist/table/selection.js +0 -50
  211. package/dist/table/smart-table.js +0 -9
  212. package/dist/table/table.js +6 -37
  213. package/dist/table-legacy-ng/table-legacy-ng.js +12 -42
  214. package/dist/table-legacy-ng/table-legacy-ng__selection-navigate-actions.js +0 -31
  215. package/dist/table-legacy-ng/table-legacy-ng__selection.js +0 -32
  216. package/dist/table-legacy-ng/table-legacy-ng__toolbar.js +2 -5
  217. package/dist/tabs/collapsible-more.js +0 -5
  218. package/dist/tabs/collapsible-tab.js +0 -4
  219. package/dist/tabs/collapsible-tabs.js +8 -28
  220. package/dist/tabs/dumb-tabs.js +0 -8
  221. package/dist/tabs/smart-tabs.js +0 -6
  222. package/dist/tabs/tab-link.js +0 -1
  223. package/dist/tabs/tab.js +0 -2
  224. package/dist/tabs-ng/tabs-ng.js +13 -29
  225. package/dist/tag/tag.js +0 -24
  226. package/dist/tags-input/tags-input.js +0 -76
  227. package/dist/tags-list/tags-list.js +0 -6
  228. package/dist/template-ng/template-ng.js +0 -12
  229. package/dist/text/text.js +0 -3
  230. package/dist/theme-ng/theme-ng.js +0 -8
  231. package/dist/title-ng/title-ng.js +6 -17
  232. package/dist/toggle/toggle.js +0 -4
  233. package/dist/tooltip/tooltip.js +4 -35
  234. package/dist/tooltip-ng/tooltip-ng.js +2 -8
  235. package/dist/user-agreement/service.js +0 -62
  236. package/dist/user-agreement/user-agreement.js +0 -8
  237. package/dist/user-card/smart-user-card-tooltip.js +2 -8
  238. package/dist/user-card/tooltip.js +0 -3
  239. package/package.json +37 -37
@@ -9,14 +9,11 @@ import '../_helpers/radio.js';
9
9
  /**
10
10
  * @name Radio
11
11
  */
12
-
13
12
  class Radio extends Component {
14
13
  constructor() {
15
14
  super(...arguments);
16
-
17
15
  _defineProperty(this, "uid", getUID('ring-radio-'));
18
16
  }
19
-
20
17
  render() {
21
18
  return /*#__PURE__*/React.createElement(RadioContext.Provider, {
22
19
  value: {
@@ -25,9 +22,7 @@ class Radio extends Component {
25
22
  }
26
23
  }, this.props.children);
27
24
  }
28
-
29
25
  }
30
-
31
26
  _defineProperty(Radio, "propTypes", {
32
27
  name: PropTypes.string,
33
28
  disabled: PropTypes.bool,
@@ -35,7 +30,6 @@ _defineProperty(Radio, "propTypes", {
35
30
  onChange: PropTypes.func,
36
31
  children: PropTypes.node.isRequired
37
32
  });
38
-
39
33
  _defineProperty(Radio, "Item", RadioItem);
40
34
 
41
35
  export { Radio as default };
@@ -9,22 +9,16 @@ const RadioContext = /*#__PURE__*/createContext({});
9
9
  class Radio extends Component {
10
10
  constructor() {
11
11
  super(...arguments);
12
-
13
12
  _defineProperty(this, "uid", getUID('ring-radio-item-'));
14
-
15
13
  _defineProperty(this, "input", void 0);
16
-
17
14
  _defineProperty(this, "inputRef", el => {
18
15
  this.input = el;
19
16
  });
20
-
21
17
  _defineProperty(this, "label", void 0);
22
-
23
18
  _defineProperty(this, "labelRef", el => {
24
19
  this.label = el;
25
20
  });
26
21
  }
27
-
28
22
  render() {
29
23
  const {
30
24
  className,
@@ -48,9 +42,7 @@ class Radio extends Component {
48
42
  className: modules_df92307a.label
49
43
  }, children));
50
44
  }
51
-
52
45
  }
53
-
54
46
  _defineProperty(Radio, "propTypes", {
55
47
  className: PropTypes.string,
56
48
  children: PropTypes.node,
@@ -59,7 +51,6 @@ _defineProperty(Radio, "propTypes", {
59
51
  checked: PropTypes.bool,
60
52
  onChange: PropTypes.func
61
53
  });
62
-
63
54
  const RadioItem = /*#__PURE__*/forwardRef(function RadioItem(props, ref) {
64
55
  return /*#__PURE__*/React.createElement(RadioContext.Consumer, null, _ref => {
65
56
  let {
@@ -6,7 +6,6 @@ import getUID from '../global/get-uid.js';
6
6
  /**
7
7
  * @name Radio Ng
8
8
  */
9
-
10
9
  const angularModule = angular.module('Ring.radio', []);
11
10
  angularModule.directive('rgRadio', function rgCheckboxDirective() {
12
11
  return {
@@ -34,7 +33,6 @@ angularModule.directive('rgRadio', function rgCheckboxDirective() {
34
33
  link: function link(scope, iElement) {
35
34
  const element = iElement[0];
36
35
  const input = element.querySelector('input[type="radio"]');
37
-
38
36
  function applyPassedID() {
39
37
  const {
40
38
  id
@@ -43,13 +41,11 @@ angularModule.directive('rgRadio', function rgCheckboxDirective() {
43
41
  input.setAttribute('id', id);
44
42
  element.removeAttribute('id');
45
43
  }
46
-
47
44
  function generateID() {
48
45
  const id = getUID('ring-radio-item-');
49
46
  element.setAttribute('for', id);
50
47
  input.setAttribute('id', id);
51
48
  }
52
-
53
49
  if (element.id) {
54
50
  applyPassedID();
55
51
  } else {
@@ -83,27 +83,22 @@ angularModule.directive('rgSaveField', ["RingMessageBundle", "$timeout", "$q", "
83
83
  let isTextarea = false;
84
84
  const draftMode = iAttrs.workingValue;
85
85
  const valueField = draftMode ? 'workingValue' : 'value';
86
-
87
86
  function submitChanges() {
88
87
  if (!scope.saveFieldForm.$valid || scope.loading || angular.equals(scope.initial, scope[valueField])) {
89
88
  return false;
90
89
  }
91
-
92
90
  function afterSaveCall() {
93
91
  return $q.when(scope.afterSave({
94
92
  value: scope[valueField]
95
93
  }));
96
94
  }
97
-
98
95
  function success() {
99
96
  scope.initial = angular.copy(scope[valueField]);
100
97
  scope.saveFieldForm.$setPristine();
101
98
  scope.done = true;
102
-
103
99
  if (draftMode) {
104
100
  scope.value = scope.workingValue;
105
101
  }
106
-
107
102
  $timeout(() => {
108
103
  scope.done = false;
109
104
  }, 1000); //eslint-disable-line no-magic-numbers
@@ -115,28 +110,22 @@ angularModule.directive('rgSaveField', ["RingMessageBundle", "$timeout", "$q", "
115
110
  return afterSaveCall();
116
111
  }
117
112
  }
118
-
119
113
  return undefined;
120
114
  }
121
-
122
115
  function error(err) {
123
116
  let message;
124
-
125
117
  if (typeof err === 'string') {
126
118
  message = err;
127
119
  } else if (typeof err === 'object') {
128
120
  const errorData = err.data || err;
129
121
  message = errorData[ERROR_DESCRIPTION] || errorData[ERROR_DEVELOPER_MSG];
130
122
  }
131
-
132
123
  customError.message = message;
133
124
  scope.saveFieldForm.$setValidity(CUSTOM_ERROR_ID, false, customError);
134
125
  }
135
-
136
126
  scope.cancelBlur();
137
127
  scope.loading = true;
138
128
  let onsave = ctrl.getSave();
139
-
140
129
  if (onsave) {
141
130
  onsave = $q.when(onsave(scope[valueField]));
142
131
  } else {
@@ -144,37 +133,30 @@ angularModule.directive('rgSaveField', ["RingMessageBundle", "$timeout", "$q", "
144
133
  value: scope[valueField]
145
134
  }));
146
135
  }
147
-
148
136
  return onsave.then(success, error).then(() => {
149
137
  scope.loading = false;
150
138
  });
151
139
  }
152
-
153
140
  function resetValue() {
154
141
  if (scope.loading) {
155
142
  return;
156
143
  }
157
-
158
144
  scope.$evalAsync(() => {
159
145
  scope[valueField] = scope.initial ? scope.initial : '';
160
146
  scope.saveFieldForm.$setValidity(CUSTOM_ERROR_ID, true, customError);
161
147
  scope.saveFieldForm.$setPristine();
162
148
  });
163
149
  }
164
-
165
150
  function addMultilineProcessing(controlName) {
166
151
  const stopWatch = scope.$watch(`saveFieldForm.${controlName}`, control => {
167
152
  if (!control || !control.$formatters || !control.$parsers) {
168
153
  return;
169
154
  }
170
-
171
155
  control.$formatters.push(value => {
172
156
  if (!value) {
173
157
  return value;
174
158
  }
175
-
176
159
  let formattedValue;
177
-
178
160
  if (iAttrs.formatElement) {
179
161
  formattedValue = value.map(element => scope.formatElement({
180
162
  element
@@ -182,46 +164,37 @@ angularModule.directive('rgSaveField', ["RingMessageBundle", "$timeout", "$q", "
182
164
  } else {
183
165
  formattedValue = value;
184
166
  }
185
-
186
167
  return formattedValue.join('\n');
187
168
  });
188
169
  control.$parsers.push(value => {
189
170
  let array = value && value.split(MULTI_LINE_SPLIT_PATTERN) || [];
190
-
191
171
  function notEmpty(val) {
192
172
  return val && val.trim() && val !== '\n';
193
173
  }
194
-
195
174
  array = array.filter(notEmpty);
196
-
197
175
  if (iAttrs.parseElement) {
198
176
  array = array.map(element => scope.parseElement({
199
177
  element: element.trim()
200
178
  }));
201
179
  }
202
-
203
180
  return array;
204
181
  });
205
182
  stopWatch();
206
183
  });
207
184
  }
208
-
209
185
  scope.cancelBlur = () => {
210
186
  $timeout(() => {
211
-
187
+ // eslint-disable-next-line no-magic-numbers
212
188
  }, 10);
213
189
  };
214
-
215
190
  if (draftMode) {
216
191
  scope.$watch('value', value => {
217
192
  scope.workingValue = angular.copy(value);
218
193
  scope.initial = value;
219
194
  });
220
195
  }
221
-
222
196
  scope.$watch(valueField, value => {
223
197
  let promise = null;
224
-
225
198
  if (scope.saveFieldForm.$pristine) {
226
199
  scope.initial = value;
227
200
  } else if (scope.initial && angular.equals(scope.initial, value)) {
@@ -231,7 +204,6 @@ angularModule.directive('rgSaveField', ["RingMessageBundle", "$timeout", "$q", "
231
204
  value
232
205
  });
233
206
  }
234
-
235
207
  $q.when(promise).then(error => {
236
208
  if (error) {
237
209
  return $q.reject(error);
@@ -246,12 +218,10 @@ angularModule.directive('rgSaveField', ["RingMessageBundle", "$timeout", "$q", "
246
218
  });
247
219
  });
248
220
  let inputNode = iElem[0].querySelector('input, .ring-save-field__input');
249
-
250
221
  if (!inputNode) {
251
222
  inputNode = iElem[0].querySelector('textarea');
252
223
  isTextarea = !!inputNode;
253
224
  }
254
-
255
225
  if (inputNode) {
256
226
  inputNode.classList.add('ring-js-shortcuts');
257
227
  inputNode.addEventListener('focus', () => {
@@ -264,12 +234,10 @@ angularModule.directive('rgSaveField', ["RingMessageBundle", "$timeout", "$q", "
264
234
  scope.focus = false;
265
235
  });
266
236
  });
267
-
268
237
  if (isTextarea && scope.multiline === MULTI_LINE_LIST_MODE) {
269
238
  addMultilineProcessing(inputNode.name);
270
239
  }
271
240
  }
272
-
273
241
  scope.wording = {
274
242
  save: RingMessageBundle.form_save(),
275
243
  saved: RingMessageBundle.form_saved(),
@@ -309,17 +277,13 @@ angularModule.directive('rgSaveField', ["RingMessageBundle", "$timeout", "$q", "
309
277
  }
310
278
  });
311
279
  },
312
-
313
280
  controller() {
314
281
  let onSave = null;
315
-
316
282
  this.setSave = cb => {
317
283
  onSave = cb;
318
284
  };
319
-
320
285
  this.getSave = () => onSave;
321
286
  }
322
-
323
287
  };
324
288
  }]);
325
289
  var saveFieldNg = angularModule.name;