@jetbrains/ring-ui-built 7.0.0-beta.1 → 7.0.0-beta.3

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 (241) hide show
  1. package/components/_helpers/_rollupPluginBabelHelpers.js +1 -504
  2. package/components/_helpers/anchor.js +7 -5
  3. package/components/_helpers/button__classes.js +15 -13
  4. package/components/_helpers/caption.js +11 -17
  5. package/components/_helpers/card.js +92 -96
  6. package/components/_helpers/dialog__body-scroll-preventer.js +10 -17
  7. package/components/_helpers/header.js +1 -1
  8. package/components/_helpers/icon__svg.js +27 -23
  9. package/components/_helpers/input.js +150 -171
  10. package/components/_helpers/query-assist__suggestions.js +78 -93
  11. package/components/_helpers/select__filter.js +56 -67
  12. package/components/_helpers/services-link.js +23 -29
  13. package/components/_helpers/sidebar.js +91 -93
  14. package/components/_helpers/tab-link.js +8 -6
  15. package/components/_helpers/theme.js +55 -51
  16. package/components/_helpers/title.js +59 -69
  17. package/components/alert/alert.js +112 -156
  18. package/components/alert/container.js +32 -39
  19. package/components/alert-service/alert-service.js +104 -161
  20. package/components/analytics/analytics.js +12 -20
  21. package/components/analytics/analytics__custom-plugin.js +52 -68
  22. package/components/auth/auth.js +2 -27
  23. package/components/auth/auth__core.d.ts +1 -1
  24. package/components/auth/auth__core.js +742 -1428
  25. package/components/auth/background-flow.js +84 -121
  26. package/components/auth/down-notification.js +31 -69
  27. package/components/auth/iframe-flow.js +70 -123
  28. package/components/auth/request-builder.js +46 -77
  29. package/components/auth/response-parser.js +84 -112
  30. package/components/auth/storage.js +160 -318
  31. package/components/auth/token-validator.js +132 -227
  32. package/components/auth/window-flow.js +84 -121
  33. package/components/auth-dialog/auth-dialog.js +99 -150
  34. package/components/auth-dialog-service/auth-dialog-service.js +6 -26
  35. package/components/avatar/avatar-example-datauri.js +1 -1
  36. package/components/avatar/avatar.js +94 -123
  37. package/components/avatar/fallback-avatar.js +20 -34
  38. package/components/badge/badge.js +32 -38
  39. package/components/breadcrumbs/breadcrumbs.js +13 -17
  40. package/components/button/button.js +67 -80
  41. package/components/button-group/button-group.js +27 -36
  42. package/components/button-set/button-set.js +19 -27
  43. package/components/button-toolbar/button-toolbar.js +17 -25
  44. package/components/caret/caret.js +184 -211
  45. package/components/checkbox/checkbox.js +69 -86
  46. package/components/clipboard/clipboard-fallback.js +7 -7
  47. package/components/clipboard/clipboard.js +36 -128
  48. package/components/code/code.js +83 -151
  49. package/components/collapse/collapse-content.js +42 -60
  50. package/components/collapse/collapse-context.js +2 -2
  51. package/components/collapse/collapse-control.js +12 -12
  52. package/components/collapse/collapse.js +12 -17
  53. package/components/collapse/consts.js +4 -4
  54. package/components/collapse/utils.js +1 -3
  55. package/components/confirm/confirm.js +57 -87
  56. package/components/confirm-service/confirm-service.js +23 -44
  57. package/components/content-layout/content-layout.js +41 -56
  58. package/components/content-layout/sidebar.js +1 -1
  59. package/components/contenteditable/contenteditable.js +38 -46
  60. package/components/control-help/control-help.js +5 -3
  61. package/components/control-label/control-label.js +9 -8
  62. package/components/data-list/data-list.js +113 -156
  63. package/components/data-list/data-list.mock.js +3 -5
  64. package/components/data-list/item.js +120 -140
  65. package/components/data-list/selection.js +77 -135
  66. package/components/data-list/title.js +2 -10
  67. package/components/date-picker/consts.js +16 -22
  68. package/components/date-picker/date-input.js +99 -124
  69. package/components/date-picker/date-picker.js +140 -184
  70. package/components/date-picker/date-popup.js +280 -327
  71. package/components/date-picker/day.js +71 -94
  72. package/components/date-picker/month-names.js +41 -59
  73. package/components/date-picker/month-slider.js +42 -61
  74. package/components/date-picker/month.js +17 -24
  75. package/components/date-picker/months.js +44 -49
  76. package/components/date-picker/weekdays.js +12 -21
  77. package/components/date-picker/years.js +77 -98
  78. package/components/dialog/dialog.js +151 -187
  79. package/components/dialog/dialog__body-scroll-preventer.js +0 -3
  80. package/components/dropdown/anchor.js +0 -6
  81. package/components/dropdown/dropdown.js +134 -154
  82. package/components/dropdown-menu/dropdown-menu.js +59 -87
  83. package/components/editable-heading/editable-heading.js +69 -116
  84. package/components/error-bubble/error-bubble.js +29 -54
  85. package/components/error-message/error-message.js +34 -49
  86. package/components/footer/footer.js +27 -28
  87. package/components/global/compose.js +1 -8
  88. package/components/global/composeRefs.d.ts +0 -3
  89. package/components/global/composeRefs.js +8 -15
  90. package/components/global/controls-height.js +2 -2
  91. package/components/global/create-stateful-context.js +14 -13
  92. package/components/global/data-tests.js +7 -12
  93. package/components/global/dom.js +49 -82
  94. package/components/global/focus-sensor-hoc.js +99 -106
  95. package/components/global/fuzzy-highlight.js +23 -34
  96. package/components/global/get-event-key.js +8 -8
  97. package/components/global/get-uid.js +3 -7
  98. package/components/global/inject-styles.js +7 -14
  99. package/components/global/listeners.js +28 -47
  100. package/components/global/memoize.js +6 -10
  101. package/components/global/normalize-indent.js +19 -46
  102. package/components/global/promise-with-timeout.js +6 -8
  103. package/components/global/prop-types.js +3 -5
  104. package/components/global/react-dom-renderer.js +29 -40
  105. package/components/global/rerender-hoc.js +16 -32
  106. package/components/global/schedule-raf.js +4 -4
  107. package/components/global/sniffer.js +1 -1
  108. package/components/global/theme.d.ts +3 -0
  109. package/components/global/theme.js +2 -19
  110. package/components/global/trivial-template-tag.js +4 -9
  111. package/components/global/typescript-utils.js +2 -6
  112. package/components/global/url.js +20 -23
  113. package/components/global/use-event-callback.js +7 -4
  114. package/components/grid/col.js +27 -39
  115. package/components/grid/grid.js +18 -27
  116. package/components/grid/row.js +23 -30
  117. package/components/group/group.js +16 -22
  118. package/components/header/header-icon.js +19 -31
  119. package/components/header/header.d.ts +0 -1
  120. package/components/header/header.js +30 -64
  121. package/components/header/links.d.ts +2 -0
  122. package/components/header/links.js +20 -0
  123. package/components/header/logo.js +15 -26
  124. package/components/header/profile.js +124 -150
  125. package/components/header/services-link.js +1 -3
  126. package/components/header/services.js +64 -97
  127. package/components/header/smart-profile.js +101 -178
  128. package/components/header/smart-services.js +55 -90
  129. package/components/header/tray.js +21 -30
  130. package/components/heading/heading.js +21 -20
  131. package/components/http/http.js +162 -319
  132. package/components/http/http.mock.js +50 -98
  133. package/components/hub-source/hub-source.js +77 -182
  134. package/components/hub-source/hub-source__user.js +9 -37
  135. package/components/hub-source/hub-source__users-groups.js +34 -60
  136. package/components/i18n/i18n-context.js +7 -8
  137. package/components/i18n/i18n.js +3 -6
  138. package/components/icon/icon.js +60 -74
  139. package/components/icon/icon__svg.js +0 -5
  140. package/components/icon/index.js +0 -5
  141. package/components/input/input.js +1 -11
  142. package/components/island/adaptive-island-hoc.js +29 -37
  143. package/components/island/content.js +100 -110
  144. package/components/island/header.js +56 -66
  145. package/components/island/island.js +25 -33
  146. package/components/island-legacy/content-legacy.js +16 -22
  147. package/components/island-legacy/header-legacy.js +19 -25
  148. package/components/island-legacy/island-legacy.js +16 -22
  149. package/components/link/clickableLink.js +33 -42
  150. package/components/link/link.js +47 -55
  151. package/components/list/consts.js +2 -2
  152. package/components/list/list.js +399 -486
  153. package/components/list/list__custom.js +51 -61
  154. package/components/list/list__hint.js +9 -17
  155. package/components/list/list__item.js +147 -178
  156. package/components/list/list__link.js +38 -47
  157. package/components/list/list__separator.js +15 -24
  158. package/components/list/list__title.js +25 -34
  159. package/components/list/list__users-groups-source.js +55 -121
  160. package/components/loader/loader.js +38 -60
  161. package/components/loader/loader__core.js +123 -184
  162. package/components/loader-inline/loader-inline.js +24 -32
  163. package/components/loader-screen/loader-screen.js +24 -40
  164. package/components/login-dialog/login-dialog.js +81 -121
  165. package/components/login-dialog/service.js +6 -29
  166. package/components/markdown/markdown.js +16 -24
  167. package/components/message/message.js +170 -201
  168. package/components/old-browsers-message/old-browsers-message.js +11 -14
  169. package/components/old-browsers-message/old-browsers-message__stop.js +1 -4
  170. package/components/old-browsers-message/white-list.js +8 -13
  171. package/components/pager/pager.js +212 -257
  172. package/components/panel/panel.js +16 -22
  173. package/components/permissions/permissions.js +118 -161
  174. package/components/permissions/permissions__cache.js +191 -218
  175. package/components/popup/popup.consts.js +1 -1
  176. package/components/popup/popup.js +237 -288
  177. package/components/popup/popup.target.js +9 -7
  178. package/components/popup/position.js +94 -101
  179. package/components/popup-menu/popup-menu.js +33 -67
  180. package/components/progress-bar/progress-bar.js +57 -68
  181. package/components/query-assist/query-assist.js +583 -652
  182. package/components/query-assist/query-assist__suggestions.js +2 -26
  183. package/components/radio/radio.js +15 -27
  184. package/components/radio/radio__item.js +52 -62
  185. package/components/scrollable-section/scrollable-section.js +53 -0
  186. package/components/select/select.js +701 -796
  187. package/components/select/select__filter.js +1 -26
  188. package/components/select/select__popup.js +316 -413
  189. package/components/shortcuts/core.js +147 -195
  190. package/components/shortcuts/shortcut-title.js +6 -10
  191. package/components/shortcuts/shortcuts-hoc.js +23 -41
  192. package/components/shortcuts/shortcuts.js +41 -64
  193. package/components/slider/slider.js +93 -112
  194. package/components/slider/slider.utils.js +16 -23
  195. package/components/storage/storage.js +3 -27
  196. package/components/storage/storage__fallback.js +137 -210
  197. package/components/storage/storage__local.js +89 -147
  198. package/components/style.css +1 -1
  199. package/components/tab-trap/tab-trap.js +35 -53
  200. package/components/table/cell.js +11 -21
  201. package/components/table/disable-hover-hoc.js +27 -42
  202. package/components/table/header-cell.js +59 -75
  203. package/components/table/header.js +89 -110
  204. package/components/table/multitable.js +83 -89
  205. package/components/table/row-with-focus-sensor.js +25 -57
  206. package/components/table/row.js +169 -200
  207. package/components/table/selection-adapter.js +2 -2
  208. package/components/table/selection-shortcuts-hoc.js +108 -113
  209. package/components/table/selection.js +150 -217
  210. package/components/table/simple-table.js +19 -55
  211. package/components/table/smart-table.js +42 -76
  212. package/components/table/table.js +267 -327
  213. package/components/tabs/collapsible-more.js +47 -73
  214. package/components/tabs/collapsible-tab.js +32 -36
  215. package/components/tabs/collapsible-tabs.js +89 -148
  216. package/components/tabs/custom-item.js +4 -2
  217. package/components/tabs/dumb-tabs.js +60 -92
  218. package/components/tabs/smart-tabs.js +29 -61
  219. package/components/tabs/tab-link.js +1 -3
  220. package/components/tabs/tab.js +15 -24
  221. package/components/tabs/tabs.js +1 -26
  222. package/components/tag/tag.d.ts +0 -2
  223. package/components/tag/tag.js +120 -162
  224. package/components/tags-input/tags-input.js +222 -304
  225. package/components/tags-list/tags-list.js +45 -61
  226. package/components/text/text.js +28 -37
  227. package/components/toggle/toggle.js +51 -61
  228. package/components/tooltip/tooltip.js +109 -141
  229. package/components/user-agreement/service.js +259 -400
  230. package/components/user-agreement/user-agreement.js +80 -108
  231. package/components/user-card/card.js +1 -25
  232. package/components/user-card/smart-user-card-tooltip.js +52 -103
  233. package/components/user-card/tooltip.js +35 -65
  234. package/components/user-card/user-card.js +1 -25
  235. package/package.json +1 -1
  236. package/components/global/react-render-adapter.d.ts +0 -1
  237. package/components/global/react-render-adapter.js +0 -6
  238. package/components/header/scrollable-section.js +0 -47
  239. package/components/header/tray-icon.d.ts +0 -1
  240. package/components/header/tray-icon.js +0 -26
  241. /package/components/{header → scrollable-section}/scrollable-section.d.ts +0 -0
@@ -1,8 +1,4 @@
1
- import { _ as _defineProperty, b as _createClass, e as _classCallCheck } from '../_helpers/_rollupPluginBabelHelpers.js';
2
- import 'core-js/modules/es.array.index-of.js';
3
- import 'core-js/modules/es.array.map.js';
4
- import 'core-js/modules/es.object.to-string.js';
5
- import 'core-js/modules/es.promise.js';
1
+ import { _ as _defineProperty } from '../_helpers/_rollupPluginBabelHelpers.js';
6
2
  import PermissionCache from './permissions__cache.js';
7
3
  import 'core-js/modules/es.array.reduce.js';
8
4
 
@@ -30,11 +26,9 @@ import 'core-js/modules/es.array.reduce.js';
30
26
  * <code>serviceId</code> if provided then permissions only for the service are loaded.
31
27
  * @constructor
32
28
  */
33
- var Permissions = /*#__PURE__*/function () {
34
- function Permissions(auth) {
35
- var _this = this;
36
- var config = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
37
- _classCallCheck(this, Permissions);
29
+ class Permissions {
30
+ constructor(auth) {
31
+ let config = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
38
32
  _defineProperty(this, "query", void 0);
39
33
  _defineProperty(this, "namesConverter", void 0);
40
34
  _defineProperty(this, "_auth", void 0);
@@ -42,14 +36,12 @@ var Permissions = /*#__PURE__*/function () {
42
36
  _defineProperty(this, "_promise", void 0);
43
37
  _defineProperty(this, "_subscribed", void 0);
44
38
  _defineProperty(this, "_permissionCache", void 0);
45
- _defineProperty(this, "_defaultDatasource", function (query) {
46
- return _this._auth.http.get(Permissions.API_PERMISSION_CACHE_PATH, {
47
- query: {
48
- fields: 'permission/key,global,projects(id)',
49
- query
50
- }
51
- });
52
- });
39
+ _defineProperty(this, "_defaultDatasource", query => this._auth.http.get(Permissions.API_PERMISSION_CACHE_PATH, {
40
+ query: {
41
+ fields: 'permission/key,global,projects(id)',
42
+ query
43
+ }
44
+ }));
53
45
  this.query = Permissions.getPermissionQuery(config.services);
54
46
  this.namesConverter = config.prefix ? Permissions.getDefaultNamesConverter(config.prefix) : config.namesConverter;
55
47
  if (!auth) {
@@ -61,157 +53,122 @@ var Permissions = /*#__PURE__*/function () {
61
53
  this._subscribed = false;
62
54
  this._permissionCache = new PermissionCache(null, this.namesConverter);
63
55
  }
64
- return _createClass(Permissions, [{
65
- key: "set",
66
- value: function set(cachedPermissions) {
67
- this._permissionCache.set(cachedPermissions);
68
- this._setCache(Promise.resolve(this._permissionCache));
69
- return this._permissionCache;
70
- }
71
- }, {
72
- key: "get",
73
- value: function get() {
74
- return this._permissionCache.get();
75
- }
76
- }, {
77
- key: "_setCache",
78
- value: function _setCache(value) {
79
- this._promise = value;
80
- }
81
- }, {
82
- key: "_getCache",
83
- value: function _getCache() {
84
- return this._promise;
85
- }
86
- }, {
87
- key: "_resetCache",
88
- value: function _resetCache() {
89
- this._setCache(null);
90
- }
91
- /**
92
- * Loads logged-in user permissions.
93
- * @param {object?} options
94
- * @return {Promise.<Permissions>} promise that is resolved when the permissions are loaded
95
- */
96
- }, {
97
- key: "load",
98
- value: function load(options) {
99
- var _this2 = this;
100
- if (this._subscribed === false) {
101
- this._auth.addListener('userChange', function () {
102
- _this2.reload();
103
- });
104
- this._subscribed = true;
105
- }
106
- var cache = this._getCache();
107
- if (!hasCacheControl('NO_CACHE', options) && cache) {
108
- return cache;
56
+ /**
57
+ * Returns function, which cuts off prefix from server-side permission name
58
+ *
59
+ * @param {string} prefix
60
+ * @returns {Function}
61
+ */
62
+ static getDefaultNamesConverter(prefix) {
63
+ return storedName => {
64
+ if (storedName.indexOf(prefix) !== 0) {
65
+ return storedName;
66
+ } else {
67
+ return storedName.substr(prefix.length);
109
68
  }
110
- if (hasCacheControl('NO_STORE', options)) {
111
- return this._loadPermissions().then(function (cachedPermissions) {
112
- return new PermissionCache(cachedPermissions, _this2.namesConverter);
113
- });
114
- }
115
- var permissions = this._loadPermissions().then(function (cachedPermissions) {
116
- return _this2.set(cachedPermissions);
117
- });
118
- this._setCache(permissions);
119
- return permissions;
120
- function hasCacheControl(value, _options) {
121
- if (_options && _options.cacheControl) {
122
- return _options.cacheControl[value];
123
- }
124
- return false;
125
- }
126
- }
127
- }, {
128
- key: "_loadPermissions",
129
- value: function _loadPermissions() {
130
- return this._datasource(this.query);
131
- }
132
- /**
133
- * Reloads permission cache from server
134
- * @returns {Promise.<Permissions>} promise that is resolved when the permissions are reloaded
135
- */
136
- }, {
137
- key: "reload",
138
- value: function reload() {
139
- this._resetCache();
140
- return this.load();
69
+ };
70
+ }
71
+ static getPermissionQuery(services) {
72
+ if (!services || !services.length) {
73
+ return undefined;
141
74
  }
142
- /**
143
- * Waits till the permission cache is loaded then checks if the current user has the
144
- * given permissions in the project with the given id.
145
- *
146
- * @param {string} permissions space separated list of permissions
147
- * @param {string=} projectId optional projectId. If absent the method checks
148
- * if the given permission is granted in any project.
149
- *
150
- * @return {Promise.<boolean>}
151
- */
152
- }, {
153
- key: "check",
154
- value: function check(permissions, projectId) {
155
- return this.load().then(function (permissionCache) {
156
- return permissionCache.has(permissions, projectId);
75
+ return services.map(service => "service:{".concat(service, "}")).join(' or ');
76
+ }
77
+ set(cachedPermissions) {
78
+ this._permissionCache.set(cachedPermissions);
79
+ this._setCache(Promise.resolve(this._permissionCache));
80
+ return this._permissionCache;
81
+ }
82
+ get() {
83
+ return this._permissionCache.get();
84
+ }
85
+ _setCache(value) {
86
+ this._promise = value;
87
+ }
88
+ _getCache() {
89
+ return this._promise;
90
+ }
91
+ _resetCache() {
92
+ this._setCache(null);
93
+ }
94
+ /**
95
+ * Loads logged-in user permissions.
96
+ * @param {object?} options
97
+ * @return {Promise.<Permissions>} promise that is resolved when the permissions are loaded
98
+ */
99
+ load(options) {
100
+ if (this._subscribed === false) {
101
+ this._auth.addListener('userChange', () => {
102
+ this.reload();
157
103
  });
104
+ this._subscribed = true;
158
105
  }
159
- /**
160
- * Binds a property with the name <code>propertyName</code> of the <code>object</code>
161
- * to a boolean value that is true if user has the permissions and false if she doesn't.
162
- *
163
- * @example
164
- * <code>
165
- * userPermissions.bindVariable($scope, 'canReadRole', 'role-read')
166
- * </code>
167
- *
168
- * @param {object} object an object which property should be bound
169
- * @param {string} propertyName a name of a property to bind
170
- * @param {string} permissions space separated list of permissions
171
- * @param {string=} projectId optional projectId. If absent the method checks
172
- * if the given permissions are granted in any project.
173
- *
174
- * @return {Promise.<boolean>}
175
- */
176
- }, {
177
- key: "bindVariable",
178
- value: function bindVariable(object, propertyName, permissions, projectId) {
179
- object[propertyName] = false;
180
- return this.check(permissions, projectId).then(function (permitted) {
181
- object[propertyName] = permitted;
182
- return permitted;
183
- });
106
+ const cache = this._getCache();
107
+ if (!hasCacheControl('NO_CACHE', options) && cache) {
108
+ return cache;
184
109
  }
185
- }], [{
186
- key: "getDefaultNamesConverter",
187
- value:
188
- /**
189
- * Returns function, which cuts off prefix from server-side permission name
190
- *
191
- * @param {string} prefix
192
- * @returns {Function}
193
- */
194
- function getDefaultNamesConverter(prefix) {
195
- return function (storedName) {
196
- if (storedName.indexOf(prefix) !== 0) {
197
- return storedName;
198
- } else {
199
- return storedName.substr(prefix.length);
200
- }
201
- };
110
+ if (hasCacheControl('NO_STORE', options)) {
111
+ return this._loadPermissions().then(cachedPermissions => new PermissionCache(cachedPermissions, this.namesConverter));
202
112
  }
203
- }, {
204
- key: "getPermissionQuery",
205
- value: function getPermissionQuery(services) {
206
- if (!services || !services.length) {
207
- return undefined;
113
+ const permissions = this._loadPermissions().then(cachedPermissions => this.set(cachedPermissions));
114
+ this._setCache(permissions);
115
+ return permissions;
116
+ function hasCacheControl(value, _options) {
117
+ if (_options && _options.cacheControl) {
118
+ return _options.cacheControl[value];
208
119
  }
209
- return services.map(function (service) {
210
- return "service:{".concat(service, "}");
211
- }).join(' or ');
120
+ return false;
212
121
  }
213
- }]);
214
- }();
122
+ }
123
+ _loadPermissions() {
124
+ return this._datasource(this.query);
125
+ }
126
+ /**
127
+ * Reloads permission cache from server
128
+ * @returns {Promise.<Permissions>} promise that is resolved when the permissions are reloaded
129
+ */
130
+ reload() {
131
+ this._resetCache();
132
+ return this.load();
133
+ }
134
+ /**
135
+ * Waits till the permission cache is loaded then checks if the current user has the
136
+ * given permissions in the project with the given id.
137
+ *
138
+ * @param {string} permissions space separated list of permissions
139
+ * @param {string=} projectId optional projectId. If absent the method checks
140
+ * if the given permission is granted in any project.
141
+ *
142
+ * @return {Promise.<boolean>}
143
+ */
144
+ check(permissions, projectId) {
145
+ return this.load().then(permissionCache => permissionCache.has(permissions, projectId));
146
+ }
147
+ /**
148
+ * Binds a property with the name <code>propertyName</code> of the <code>object</code>
149
+ * to a boolean value that is true if user has the permissions and false if she doesn't.
150
+ *
151
+ * @example
152
+ * <code>
153
+ * userPermissions.bindVariable($scope, 'canReadRole', 'role-read')
154
+ * </code>
155
+ *
156
+ * @param {object} object an object which property should be bound
157
+ * @param {string} propertyName a name of a property to bind
158
+ * @param {string} permissions space separated list of permissions
159
+ * @param {string=} projectId optional projectId. If absent the method checks
160
+ * if the given permissions are granted in any project.
161
+ *
162
+ * @return {Promise.<boolean>}
163
+ */
164
+ bindVariable(object, propertyName, permissions, projectId) {
165
+ object[propertyName] = false;
166
+ return this.check(permissions, projectId).then(permitted => {
167
+ object[propertyName] = permitted;
168
+ return permitted;
169
+ });
170
+ }
171
+ }
215
172
  /**
216
173
  * @const {string}
217
174
  */