@procore/core-react 12.20.3 → 12.21.0-cdn.0

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 (232) hide show
  1. package/dist/@types/global.d.js.map +1 -1
  2. package/dist/AnchorNavigation/AnchorNavigation.styles.js +3 -3
  3. package/dist/Avatar/Avatar.styles.js +5 -5
  4. package/dist/AvatarStack/AvatarStack.styles.js +7 -7
  5. package/dist/Badge/Badge.styles.js +2 -2
  6. package/dist/Banner/Banner.js +34 -34
  7. package/dist/Banner/Banner.js.map +1 -1
  8. package/dist/Banner/Banner.styles.js +10 -10
  9. package/dist/Box/Box.styles.js +1 -1
  10. package/dist/Breadcrumbs/Breadcrumbs.styles.js +4 -4
  11. package/dist/Button/Button.styles.js +5 -5
  12. package/dist/Calendar/Calendar.styles.js +8 -8
  13. package/dist/Card/Card.styles.js +1 -1
  14. package/dist/Checkbox/Checkbox.styles.js +14 -14
  15. package/dist/Checkbox/Checkbox.styles.js.map +1 -1
  16. package/dist/Checkbox/CheckboxTooltip.js +1 -1
  17. package/dist/ContactItem/ContactItem.styles.js +5 -5
  18. package/dist/Content/Content.styles.js +2 -2
  19. package/dist/DateInput/DateInput.styles.js +6 -6
  20. package/dist/DetailPage/DetailPage.styles.js +7 -7
  21. package/dist/Dropdown/Dropdown.styles.js +3 -3
  22. package/dist/DropdownFlyout/DropdownFlyout.styles.js +4 -4
  23. package/dist/Dropzone/Dropzone.js +1 -1
  24. package/dist/Dropzone/Dropzone.styles.js +9 -9
  25. package/dist/EmptyState/EmptyState.styles.js +6 -6
  26. package/dist/Field/Field.styles.js +3 -3
  27. package/dist/FileList/FileList.styles.js +4 -4
  28. package/dist/FileSelect/FileExplorer/FileExplorer.styles.js +9 -9
  29. package/dist/FileSelect/FileExplorer/FileExplorerSidebar.styles.js +3 -3
  30. package/dist/FileSelect/FileSelect.js +8 -8
  31. package/dist/FileSelect/FileSelect.js.map +1 -1
  32. package/dist/FileSelect/FileSelect.styles.js +2 -2
  33. package/dist/FileSelect/FileSelectDropzone/FileSelectDropzone.styles.js +3 -3
  34. package/dist/FileSelect/FileTokenList/FileTokenList.styles.js +2 -2
  35. package/dist/FileSelect/GridSource/GridSource.js +1 -1
  36. package/dist/FileSelect/GridSource/GridSource.js.map +1 -1
  37. package/dist/FileSelect/GridSource/GridSource.styles.js +6 -6
  38. package/dist/FileSelect/LocalSource/LocalSource.js +8 -8
  39. package/dist/FileSelect/LocalSource/LocalSource.js.map +1 -1
  40. package/dist/FileSelect/LocalSource/LocalSource.styles.js +4 -4
  41. package/dist/FileSelect/SourceItem/SourceItem.styles.js +3 -3
  42. package/dist/FileSelect/ThumbnailList/ThumbnailList.styles.js +6 -6
  43. package/dist/FileSelect/TreeSource/TreeSource.js +1 -1
  44. package/dist/FileSelect/TreeSource/TreeSource.js.map +1 -1
  45. package/dist/FileSelect/TreeSource/TreeSource.styles.js +1 -1
  46. package/dist/FileSelect/storyHelpers.js +1 -1
  47. package/dist/FileSelect/storyHelpers.js.map +1 -1
  48. package/dist/FileToken/FileToken.styles.js +4 -4
  49. package/dist/FilterToken/FilterToken.styles.js +5 -5
  50. package/dist/FlexList/FlexList.styles.js +1 -1
  51. package/dist/Form/Form.js +339 -339
  52. package/dist/Form/Form.js.map +1 -1
  53. package/dist/Form/Form.styles.js +14 -14
  54. package/dist/Form/StyledFormikForm.styles.js +2 -2
  55. package/dist/GhostPlaceholder/GhostPlaceholder.styles.js +2 -2
  56. package/dist/Grid/Grid.styles.js +2 -2
  57. package/dist/GroupSelect/GroupSelect.styles.js +1 -1
  58. package/dist/Input/Input.styles.js +1 -1
  59. package/dist/Link/Link.styles.js +1 -1
  60. package/dist/ListPage/ListPage.styles.js +8 -8
  61. package/dist/Loader/Loader.styles.js +2 -2
  62. package/dist/MenuImperative/MenuImperative.d.ts +1 -0
  63. package/dist/MenuImperative/MenuImperative.js +1 -1
  64. package/dist/MenuImperative/MenuImperative.js.map +1 -1
  65. package/dist/MenuImperative/MenuImperative.styles.js +10 -10
  66. package/dist/Modal/Modal.styles.js +19 -19
  67. package/dist/Modal/Modal.styles.js.map +1 -1
  68. package/dist/MultiSelect/MultiSelect.styles.js +6 -6
  69. package/dist/NextMenu/NextMenu.styles.js +3 -3
  70. package/dist/Notation/Notation.js +1 -1
  71. package/dist/NumberInput/NumberInput.styles.js +7 -7
  72. package/dist/Overlay/OverlayArrow.styles.js +1 -1
  73. package/dist/PageLayout/PageLayout.js +12 -12
  74. package/dist/PageLayout/PageLayout.js.map +1 -1
  75. package/dist/PageLayout/PageLayout.styles.js +25 -25
  76. package/dist/PageLayout/PageLayout.styles.js.map +1 -1
  77. package/dist/PageTemplate/PageFooterTemplate/PageFooterTemplate.styles.js +1 -1
  78. package/dist/PageTemplate/PageHeaderTemplate/PageHeaderTemplate.styles.js +3 -3
  79. package/dist/PageTemplate/PagePaneTemplate/PagePaneTemplate.styles.js +2 -2
  80. package/dist/PageTemplate/PageTemplate/PageTemplate.styles.js +3 -3
  81. package/dist/Pagination/Pagination.styles.js +5 -5
  82. package/dist/Pagination/PaginationSelect.js +2 -2
  83. package/dist/Pagination/PaginationSelect.js.map +1 -1
  84. package/dist/Panel/Panel.js +15 -15
  85. package/dist/Panel/Panel.js.map +1 -1
  86. package/dist/Panel/Panel.styles.js +11 -11
  87. package/dist/Pill/Pill.styles.js +2 -2
  88. package/dist/PillSelect/PillSelect.styles.js +4 -4
  89. package/dist/Popover/Popover.styles.js +2 -2
  90. package/dist/Portal/Portal.styles.js +1 -1
  91. package/dist/ProgressBar/ProgressBar.styles.js +2 -2
  92. package/dist/RadioButton/RadioButton.styles.js +3 -3
  93. package/dist/Required/Required.styles.js +3 -3
  94. package/dist/Search/Search.styles.js +5 -5
  95. package/dist/Section/Section.styles.js +7 -7
  96. package/dist/SegmentedController/SegmentedController.styles.js +4 -4
  97. package/dist/Select/Select.styles.js +11 -11
  98. package/dist/Select/Select.styles.js.map +1 -1
  99. package/dist/Semantic/Semantic.styles.js +9 -9
  100. package/dist/Slider/Slider.styles.js +5 -5
  101. package/dist/Spinner/Spinner.styles.js +7 -7
  102. package/dist/SplitViewCard/SplitViewCard.styles.js +8 -8
  103. package/dist/SuperSelect/SuperSelect.presets.styles.js +1 -1
  104. package/dist/SuperSelect/SuperSelect.styles.js +66 -66
  105. package/dist/SuperSelect/SuperSelect.styles.js.map +1 -1
  106. package/dist/SuperSelect/useSuperSelect.js +30 -30
  107. package/dist/SuperSelect/useSuperSelect.js.map +1 -1
  108. package/dist/Switch/Switch.styles.js +4 -4
  109. package/dist/Table/Table.js +80 -80
  110. package/dist/Table/Table.js.map +1 -1
  111. package/dist/Table/Table.styles.js +56 -56
  112. package/dist/Table/Table.styles.js.map +1 -1
  113. package/dist/TableShelf/TableShelf.styles.js +5 -5
  114. package/dist/Tabs/Tabs.styles.js +15 -15
  115. package/dist/Tearsheet/Tearsheet.js +1 -1
  116. package/dist/Tearsheet/Tearsheet.js.map +1 -1
  117. package/dist/Tearsheet/Tearsheet.styles.js +9 -9
  118. package/dist/Tearsheet/Tearsheet.styles.js.map +1 -1
  119. package/dist/TextArea/TextArea.styles.js +1 -1
  120. package/dist/TextEditorOutput/TextEditorOutput.styles.js +1 -1
  121. package/dist/Thumbnail/Thumbnail.hooks.d.ts +6 -6
  122. package/dist/Thumbnail/Thumbnail.styles.js +55 -55
  123. package/dist/Thumbnail/Thumbnail.styles.js.map +1 -1
  124. package/dist/ThumbnailGrid/ThumbnailGrid.js +16 -16
  125. package/dist/ThumbnailGrid/ThumbnailGrid.js.map +1 -1
  126. package/dist/ThumbnailGrid/ThumbnailGrid.styles.js +7 -7
  127. package/dist/TieredSelect/TierSelectionTieredSelect.js +7 -7
  128. package/dist/TieredSelect/TierSelectionTieredSelect.js.map +1 -1
  129. package/dist/TieredSelect/TieredSelect.styles.js +9 -9
  130. package/dist/Tile/Tile.styles.js +8 -8
  131. package/dist/Title/Title.styles.js +7 -7
  132. package/dist/Toast/Toast.styles.js +3 -3
  133. package/dist/ToggleButton/ToggleButton.styles.js +1 -1
  134. package/dist/Token/Token.styles.js +3 -3
  135. package/dist/ToolHeader/ToolHeader.styles.js +6 -6
  136. package/dist/ToolLandingPage/ToolLandingPage.styles.js +3 -3
  137. package/dist/Tooltip/Tooltip.styles.js +2 -2
  138. package/dist/Tree/Tree.hooks.js +1 -1
  139. package/dist/Tree/Tree.hooks.js.map +1 -1
  140. package/dist/Tree/Tree.js +12 -12
  141. package/dist/Tree/Tree.js.map +1 -1
  142. package/dist/Tree/Tree.styles.js +9 -9
  143. package/dist/Typeahead/Typeahead.styles.js +3 -3
  144. package/dist/Typography/Typography.styles.js +1 -1
  145. package/dist/Typography/Typography.table.story.js +2 -2
  146. package/dist/_hooks/I18n.d.ts +26 -9
  147. package/dist/_hooks/I18n.js +44 -26
  148. package/dist/_hooks/I18n.js.map +1 -1
  149. package/dist/_hooks/useFileUploader.js +1 -1
  150. package/dist/_hooks/useFileUploader.js.map +1 -1
  151. package/dist/_typedoc/AnchorNavigation/AnchorNavigation.types.json +3 -3
  152. package/dist/_typedoc/Avatar/Avatar.types.json +20 -20
  153. package/dist/_typedoc/AvatarStack/AvatarStack.types.json +24 -24
  154. package/dist/_typedoc/Badge/Badge.types.json +6 -6
  155. package/dist/_typedoc/Banner/Banner.types.json +13 -13
  156. package/dist/_typedoc/Box/Box.types.json +68 -68
  157. package/dist/_typedoc/Breadcrumbs/Breadcrumbs.types.json +10 -10
  158. package/dist/_typedoc/Button/Button.types.json +13 -13
  159. package/dist/_typedoc/Calendar/Calendar.types.json +80 -80
  160. package/dist/_typedoc/Card/Card.types.json +6 -6
  161. package/dist/_typedoc/Checkbox/Checkbox.types.json +9 -9
  162. package/dist/_typedoc/ContactItem/ContactItem.types.json +9 -9
  163. package/dist/_typedoc/DateInput/DateInput.types.json +35 -35
  164. package/dist/_typedoc/DateSelect/DateSelect.types.json +13 -13
  165. package/dist/_typedoc/DetailPage/DetailPage.types.json +5 -5
  166. package/dist/_typedoc/Dropdown/Dropdown.types.json +37 -37
  167. package/dist/_typedoc/DropdownFlyout/DropdownFlyout.types.json +29 -29
  168. package/dist/_typedoc/Dropzone/Dropzone.types.json +44 -44
  169. package/dist/_typedoc/EmptyState/EmptyState.types.json +16 -16
  170. package/dist/_typedoc/FileList/FileList.types.json +9 -9
  171. package/dist/_typedoc/FileSelect/FileSelect.types.json +26 -26
  172. package/dist/_typedoc/FileSelect/GridSource/GridSource.types.json +20 -20
  173. package/dist/_typedoc/FileSelect/LocalSource/LocalSource.types.json +14 -14
  174. package/dist/_typedoc/FileSelect/TreeSource/TreeSource.types.json +9 -9
  175. package/dist/_typedoc/Flex/Flex.types.json +27 -27
  176. package/dist/_typedoc/FlexList/FlexList.types.json +30 -30
  177. package/dist/_typedoc/Form/Form.types.json +813 -813
  178. package/dist/_typedoc/GhostPlaceholder/GhostPlaceholder.types.json +12 -12
  179. package/dist/_typedoc/Grid/Grid.types.json +8 -8
  180. package/dist/_typedoc/GroupSelect/GroupSelect.types.json +52 -52
  181. package/dist/_typedoc/Input/Input.types.json +2 -2
  182. package/dist/_typedoc/Link/Link.types.json +4 -4
  183. package/dist/_typedoc/ListPage/ListPage.types.json +13 -13
  184. package/dist/_typedoc/Menu/Menu.types.json +62 -62
  185. package/dist/_typedoc/MenuImperative/MenuImperative.types.json +74 -74
  186. package/dist/_typedoc/Modal/Modal.types.json +46 -46
  187. package/dist/_typedoc/MultiSelect/MultiSelect.types.json +31 -31
  188. package/dist/_typedoc/Notation/Notation.types.json +4 -4
  189. package/dist/_typedoc/NumberInput/NumberInput.types.json +43 -43
  190. package/dist/_typedoc/OverlayTrigger/OverlayTrigger.types.json +31 -31
  191. package/dist/_typedoc/PageLayout/PageLayout.types.json +29 -29
  192. package/dist/_typedoc/Pagination/Pagination.types.json +7 -7
  193. package/dist/_typedoc/Panel/Panel.types.json +28 -28
  194. package/dist/_typedoc/Pill/Pill.types.json +2 -2
  195. package/dist/_typedoc/PillSelect/PillSelect.types.json +49 -49
  196. package/dist/_typedoc/Popover/Popover.types.json +15 -15
  197. package/dist/_typedoc/ProgressBar/ProgressBar.types.json +6 -6
  198. package/dist/_typedoc/RadioButton/RadioButton.types.json +6 -6
  199. package/dist/_typedoc/Required/Required.types.json +5 -5
  200. package/dist/_typedoc/Search/Search.types.json +19 -19
  201. package/dist/_typedoc/Section/Section.types.json +15 -15
  202. package/dist/_typedoc/SegmentedController/SegmentedController.types.json +21 -21
  203. package/dist/_typedoc/Select/Select.types.json +60 -60
  204. package/dist/_typedoc/SettingsPage/SettingsPage.types.json +10 -10
  205. package/dist/_typedoc/Slider/Slider.types.json +6 -6
  206. package/dist/_typedoc/Spinner/Spinner.types.json +9 -9
  207. package/dist/_typedoc/SplitViewCard/SplitViewCard.types.json +12 -12
  208. package/dist/_typedoc/Switch/Switch.types.json +3 -3
  209. package/dist/_typedoc/Table/Table.types.json +101 -101
  210. package/dist/_typedoc/Tabs/Tabs.types.json +20 -20
  211. package/dist/_typedoc/Tearsheet/Tearsheet.types.json +17 -17
  212. package/dist/_typedoc/TextArea/TextArea.types.json +3 -3
  213. package/dist/_typedoc/TextEditor/TextEditor.types.json +9 -9
  214. package/dist/_typedoc/TextEditorOutput/TextEditorOutput.types.json +4 -4
  215. package/dist/_typedoc/Thumbnail/Thumbnail.types.json +19 -19
  216. package/dist/_typedoc/TieredDropdown/TieredDropdown.types.json +42 -42
  217. package/dist/_typedoc/TieredSelect/TieredSelect.types.json +28 -28
  218. package/dist/_typedoc/Tile/Tile.types.json +30 -30
  219. package/dist/_typedoc/Title/Title.types.json +1 -1
  220. package/dist/_typedoc/Toast/Toast.types.json +4 -4
  221. package/dist/_typedoc/ToggleButton/ToggleButton.types.json +4 -4
  222. package/dist/_typedoc/Token/Token.types.json +4 -4
  223. package/dist/_typedoc/ToolHeader/ToolHeader.types.json +10 -10
  224. package/dist/_typedoc/ToolLandingPage/ToolLandingPage.types.json +7 -7
  225. package/dist/_typedoc/Tooltip/Tooltip.types.json +13 -13
  226. package/dist/_typedoc/Tree/Tree.types.json +86 -86
  227. package/dist/_typedoc/Typeahead/Typeahead.types.json +2 -2
  228. package/dist/_typedoc/Typography/Typography.types.json +9 -9
  229. package/dist/_typedoc/_utils/types.json +3 -3
  230. package/dist/_utils/runInQueue.js +1 -1
  231. package/dist/_utils/runInQueue.js.map +1 -1
  232. package/package.json +5 -2
@@ -4,7 +4,7 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
4
4
  function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
5
5
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
6
6
  function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
7
- function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return e; }; var t, e = {}, r = Object.prototype, n = r.hasOwnProperty, o = Object.defineProperty || function (t, e, r) { t[e] = r.value; }, i = "function" == typeof Symbol ? Symbol : {}, a = i.iterator || "@@iterator", c = i.asyncIterator || "@@asyncIterator", u = i.toStringTag || "@@toStringTag"; function define(t, e, r) { return Object.defineProperty(t, e, { value: r, enumerable: !0, configurable: !0, writable: !0 }), t[e]; } try { define({}, ""); } catch (t) { define = function define(t, e, r) { return t[e] = r; }; } function wrap(t, e, r, n) { var i = e && e.prototype instanceof Generator ? e : Generator, a = Object.create(i.prototype), c = new Context(n || []); return o(a, "_invoke", { value: makeInvokeMethod(t, r, c) }), a; } function tryCatch(t, e, r) { try { return { type: "normal", arg: t.call(e, r) }; } catch (t) { return { type: "throw", arg: t }; } } e.wrap = wrap; var h = "suspendedStart", l = "suspendedYield", f = "executing", s = "completed", y = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var p = {}; define(p, a, function () { return this; }); var d = Object.getPrototypeOf, v = d && d(d(values([]))); v && v !== r && n.call(v, a) && (p = v); var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); function defineIteratorMethods(t) { ["next", "throw", "return"].forEach(function (e) { define(t, e, function (t) { return this._invoke(e, t); }); }); } function AsyncIterator(t, e) { function invoke(r, o, i, a) { var c = tryCatch(t[r], t, o); if ("throw" !== c.type) { var u = c.arg, h = u.value; return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) { invoke("next", t, i, a); }, function (t) { invoke("throw", t, i, a); }) : e.resolve(h).then(function (t) { u.value = t, i(u); }, function (t) { return invoke("throw", t, i, a); }); } a(c.arg); } var r; o(this, "_invoke", { value: function value(t, n) { function callInvokeWithMethodAndArg() { return new e(function (e, r) { invoke(t, n, e, r); }); } return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(e, r, n) { var o = h; return function (i, a) { if (o === f) throw Error("Generator is already running"); if (o === s) { if ("throw" === i) throw a; return { value: t, done: !0 }; } for (n.method = i, n.arg = a;;) { var c = n.delegate; if (c) { var u = maybeInvokeDelegate(c, n); if (u) { if (u === y) continue; return u; } } if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) { if (o === h) throw o = s, n.arg; n.dispatchException(n.arg); } else "return" === n.method && n.abrupt("return", n.arg); o = f; var p = tryCatch(e, r, n); if ("normal" === p.type) { if (o = n.done ? s : l, p.arg === y) continue; return { value: p.arg, done: n.done }; } "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg); } }; } function maybeInvokeDelegate(e, r) { var n = r.method, o = e.iterator[n]; if (o === t) return r.delegate = null, "throw" === n && e.iterator["return"] && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y; var i = tryCatch(o, e.iterator, r.arg); if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y; var a = i.arg; return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y); } function pushTryEntry(t) { var e = { tryLoc: t[0] }; 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e); } function resetTryEntry(t) { var e = t.completion || {}; e.type = "normal", delete e.arg, t.completion = e; } function Context(t) { this.tryEntries = [{ tryLoc: "root" }], t.forEach(pushTryEntry, this), this.reset(!0); } function values(e) { if (e || "" === e) { var r = e[a]; if (r) return r.call(e); if ("function" == typeof e.next) return e; if (!isNaN(e.length)) { var o = -1, i = function next() { for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next; return next.value = t, next.done = !0, next; }; return i.next = i; } } throw new TypeError(_typeof(e) + " is not iterable"); } return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), o(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, "GeneratorFunction"), e.isGeneratorFunction = function (t) { var e = "function" == typeof t && t.constructor; return !!e && (e === GeneratorFunction || "GeneratorFunction" === (e.displayName || e.name)); }, e.mark = function (t) { return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, "GeneratorFunction")), t.prototype = Object.create(g), t; }, e.awrap = function (t) { return { __await: t }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () { return this; }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) { void 0 === i && (i = Promise); var a = new AsyncIterator(wrap(t, r, n, o), i); return e.isGeneratorFunction(r) ? a : a.next().then(function (t) { return t.done ? t.value : a.next(); }); }, defineIteratorMethods(g), define(g, u, "Generator"), define(g, a, function () { return this; }), define(g, "toString", function () { return "[object Generator]"; }), e.keys = function (t) { var e = Object(t), r = []; for (var n in e) r.push(n); return r.reverse(), function next() { for (; r.length;) { var t = r.pop(); if (t in e) return next.value = t, next.done = !1, next; } return next.done = !0, next; }; }, e.values = values, Context.prototype = { constructor: Context, reset: function reset(e) { if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = "next", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) "t" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t); }, stop: function stop() { this.done = !0; var t = this.tryEntries[0].completion; if ("throw" === t.type) throw t.arg; return this.rval; }, dispatchException: function dispatchException(e) { if (this.done) throw e; var r = this; function handle(n, o) { return a.type = "throw", a.arg = e, r.next = n, o && (r.method = "next", r.arg = t), !!o; } for (var o = this.tryEntries.length - 1; o >= 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc <= this.prev) { var c = n.call(i, "catchLoc"), u = n.call(i, "finallyLoc"); if (c && u) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } else if (c) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); } else { if (!u) throw Error("try statement without catch or finally"); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } } } }, abrupt: function abrupt(t, e) { for (var r = this.tryEntries.length - 1; r >= 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc <= this.prev && n.call(o, "finallyLoc") && this.prev < o.finallyLoc) { var i = o; break; } } i && ("break" === t || "continue" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null); var a = i ? i.completion : {}; return a.type = t, a.arg = e, i ? (this.method = "next", this.next = i.finallyLoc, y) : this.complete(a); }, complete: function complete(t, e) { if ("throw" === t.type) throw t.arg; return "break" === t.type || "continue" === t.type ? this.next = t.arg : "return" === t.type ? (this.rval = this.arg = t.arg, this.method = "return", this.next = "end") : "normal" === t.type && e && (this.next = e), y; }, finish: function finish(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, "catch": function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; }
7
+ function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return r; }; var t, r = {}, e = Object.prototype, n = e.hasOwnProperty, o = "function" == typeof Symbol ? Symbol : {}, i = o.iterator || "@@iterator", a = o.asyncIterator || "@@asyncIterator", u = o.toStringTag || "@@toStringTag"; function c(t, r, e, n) { Object.defineProperty(t, r, { value: e, enumerable: !n, configurable: !n, writable: !n }); } try { c({}, ""); } catch (t) { c = function c(t, r, e) { return t[r] = e; }; } function h(r, e, n, o) { var i = e && e.prototype instanceof Generator ? e : Generator, a = Object.create(i.prototype); return c(a, "_invoke", function (r, e, n) { var o = 1; return function (i, a) { if (3 === o) throw Error("Generator is already running"); if (4 === o) { if ("throw" === i) throw a; return { value: t, done: !0 }; } for (n.method = i, n.arg = a;;) { var u = n.delegate; if (u) { var c = d(u, n); if (c) { if (c === f) continue; return c; } } if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) { if (1 === o) throw o = 4, n.arg; n.dispatchException(n.arg); } else "return" === n.method && n.abrupt("return", n.arg); o = 3; var h = s(r, e, n); if ("normal" === h.type) { if (o = n.done ? 4 : 2, h.arg === f) continue; return { value: h.arg, done: n.done }; } "throw" === h.type && (o = 4, n.method = "throw", n.arg = h.arg); } }; }(r, n, new Context(o || [])), !0), a; } function s(t, r, e) { try { return { type: "normal", arg: t.call(r, e) }; } catch (t) { return { type: "throw", arg: t }; } } r.wrap = h; var f = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var l = {}; c(l, i, function () { return this; }); var p = Object.getPrototypeOf, y = p && p(p(x([]))); y && y !== e && n.call(y, i) && (l = y); var v = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(l); function g(t) { ["next", "throw", "return"].forEach(function (r) { c(t, r, function (t) { return this._invoke(r, t); }); }); } function AsyncIterator(t, r) { function e(o, i, a, u) { var c = s(t[o], t, i); if ("throw" !== c.type) { var h = c.arg, f = h.value; return f && "object" == _typeof(f) && n.call(f, "__await") ? r.resolve(f.__await).then(function (t) { e("next", t, a, u); }, function (t) { e("throw", t, a, u); }) : r.resolve(f).then(function (t) { h.value = t, a(h); }, function (t) { return e("throw", t, a, u); }); } u(c.arg); } var o; c(this, "_invoke", function (t, n) { function i() { return new r(function (r, o) { e(t, n, r, o); }); } return o = o ? o.then(i, i) : i(); }, !0); } function d(r, e) { var n = e.method, o = r.i[n]; if (o === t) return e.delegate = null, "throw" === n && r.i["return"] && (e.method = "return", e.arg = t, d(r, e), "throw" === e.method) || "return" !== n && (e.method = "throw", e.arg = new TypeError("The iterator does not provide a '" + n + "' method")), f; var i = s(o, r.i, e.arg); if ("throw" === i.type) return e.method = "throw", e.arg = i.arg, e.delegate = null, f; var a = i.arg; return a ? a.done ? (e[r.r] = a.value, e.next = r.n, "return" !== e.method && (e.method = "next", e.arg = t), e.delegate = null, f) : a : (e.method = "throw", e.arg = new TypeError("iterator result is not an object"), e.delegate = null, f); } function w(t) { this.tryEntries.push(t); } function m(r) { var e = r[4] || {}; e.type = "normal", e.arg = t, r[4] = e; } function Context(t) { this.tryEntries = [[-1]], t.forEach(w, this), this.reset(!0); } function x(r) { if (null != r) { var e = r[i]; if (e) return e.call(r); if ("function" == typeof r.next) return r; if (!isNaN(r.length)) { var o = -1, a = function e() { for (; ++o < r.length;) if (n.call(r, o)) return e.value = r[o], e.done = !1, e; return e.value = t, e.done = !0, e; }; return a.next = a; } } throw new TypeError(_typeof(r) + " is not iterable"); } return GeneratorFunction.prototype = GeneratorFunctionPrototype, c(v, "constructor", GeneratorFunctionPrototype), c(GeneratorFunctionPrototype, "constructor", GeneratorFunction), c(GeneratorFunctionPrototype, u, GeneratorFunction.displayName = "GeneratorFunction"), r.isGeneratorFunction = function (t) { var r = "function" == typeof t && t.constructor; return !!r && (r === GeneratorFunction || "GeneratorFunction" === (r.displayName || r.name)); }, r.mark = function (t) { return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, c(t, u, "GeneratorFunction")), t.prototype = Object.create(v), t; }, r.awrap = function (t) { return { __await: t }; }, g(AsyncIterator.prototype), c(AsyncIterator.prototype, a, function () { return this; }), r.AsyncIterator = AsyncIterator, r.async = function (t, e, n, o, i) { void 0 === i && (i = Promise); var a = new AsyncIterator(h(t, e, n, o), i); return r.isGeneratorFunction(e) ? a : a.next().then(function (t) { return t.done ? t.value : a.next(); }); }, g(v), c(v, u, "Generator"), c(v, i, function () { return this; }), c(v, "toString", function () { return "[object Generator]"; }), r.keys = function (t) { var r = Object(t), e = []; for (var n in r) e.unshift(n); return function t() { for (; e.length;) if ((n = e.pop()) in r) return t.value = n, t.done = !1, t; return t.done = !0, t; }; }, r.values = x, Context.prototype = { constructor: Context, reset: function reset(r) { if (this.prev = this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = "next", this.arg = t, this.tryEntries.forEach(m), !r) for (var e in this) "t" === e.charAt(0) && n.call(this, e) && !isNaN(+e.slice(1)) && (this[e] = t); }, stop: function stop() { this.done = !0; var t = this.tryEntries[0][4]; if ("throw" === t.type) throw t.arg; return this.rval; }, dispatchException: function dispatchException(r) { if (this.done) throw r; var e = this; function n(t) { a.type = "throw", a.arg = r, e.next = t; } for (var o = e.tryEntries.length - 1; o >= 0; --o) { var i = this.tryEntries[o], a = i[4], u = this.prev, c = i[1], h = i[2]; if (-1 === i[0]) return n("end"), !1; if (!c && !h) throw Error("try statement without catch or finally"); if (null != i[0] && i[0] <= u) { if (u < c) return this.method = "next", this.arg = t, n(c), !0; if (u < h) return n(h), !1; } } }, abrupt: function abrupt(t, r) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var n = this.tryEntries[e]; if (n[0] > -1 && n[0] <= this.prev && this.prev < n[2]) { var o = n; break; } } o && ("break" === t || "continue" === t) && o[0] <= r && r <= o[2] && (o = null); var i = o ? o[4] : {}; return i.type = t, i.arg = r, o ? (this.method = "next", this.next = o[2], f) : this.complete(i); }, complete: function complete(t, r) { if ("throw" === t.type) throw t.arg; return "break" === t.type || "continue" === t.type ? this.next = t.arg : "return" === t.type ? (this.rval = this.arg = t.arg, this.method = "return", this.next = "end") : "normal" === t.type && r && (this.next = r), f; }, finish: function finish(t) { for (var r = this.tryEntries.length - 1; r >= 0; --r) { var e = this.tryEntries[r]; if (e[2] === t) return this.complete(e[4], e[3]), m(e), f; } }, "catch": function _catch(t) { for (var r = this.tryEntries.length - 1; r >= 0; --r) { var e = this.tryEntries[r]; if (e[0] === t) { var n = e[4]; if ("throw" === n.type) { var o = n.arg; m(e); } return o; } } throw Error("illegal catch attempt"); }, delegateYield: function delegateYield(r, e, n) { return this.delegate = { i: x(r), r: e, n: n }, "next" === this.method && (this.arg = t), f; } }, r; }
8
8
  function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
9
9
  function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
10
10
  function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }
@@ -1 +1 @@
1
- {"version":3,"file":"Tree.hooks.js","names":["_regeneratorRuntime","e","t","r","Object","prototype","n","hasOwnProperty","o","defineProperty","value","i","Symbol","a","iterator","c","asyncIterator","u","toStringTag","define","enumerable","configurable","writable","wrap","Generator","create","Context","makeInvokeMethod","tryCatch","type","arg","call","h","l","f","s","y","GeneratorFunction","GeneratorFunctionPrototype","p","d","getPrototypeOf","v","values","g","defineIteratorMethods","forEach","_invoke","AsyncIterator","invoke","_typeof","resolve","__await","then","callInvokeWithMethodAndArg","Error","done","method","delegate","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","TypeError","resultName","next","nextLoc","pushTryEntry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","push","resetTryEntry","completion","reset","isNaN","length","displayName","isGeneratorFunction","constructor","name","mark","setPrototypeOf","__proto__","awrap","async","Promise","keys","reverse","pop","prev","charAt","slice","stop","rval","handle","complete","finish","_catch","delegateYield","asyncGeneratorStep","_asyncToGenerator","arguments","apply","_next","_throw","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","_arrayLikeToArray","toString","Array","from","test","isArray","React","useListNavigation","useSet","isRootNode","useTree","_ref","rootNodes","expanded","selected","selectionLimit","onSelect","multiple","autoExpandParent","getChildren","getParentId","onCollapse","onExpand","getNodes","useCallback","nodes","node","concat","reduce","useMemo","map","el","flat","getNodeById","nodeId","find","item","id","_useSet","isLoading","has","startLoading","add","stopLoading","remove","handleChange","selectedNodes","_useSet2","initialValue","Set","onChange","selectedIds","collection","isSelected","addSelected","removeSelected","setSelected","setCollection","toggleSingleSelected","toggleSelected","size","toggleSelection","handleSelection","useEffect","filter","includes","handleExpand","_ref2","_callee","_callee$","_context","_x","handleCollapse","getExpandedIds","nodeIds","currentNode","parentId","rootNode","expandedIds","_useSet3","onAdd","onRemove","addExpanded","isExpanded","toggleExpanded","toggle","setExpanded","listNavigation","circular","initialIndex","getSelectableItems","visibleNodes","visibleItems","items","getChildrenNodes","level","children","_objectSpread","acc","curr","nodesTree","highlight","index","findIndex","visibleNode","set","setSize","isHighlighted","highlightedNode","handleExpansion","isFileLimitReached"],"sources":["../../src/Tree/Tree.hooks.ts"],"sourcesContent":["import React from 'react'\nimport { useListNavigation } from '../_hooks/ListNavigation'\nimport { useSet } from '../_hooks/useSet'\nimport { isRootNode } from './Tree'\nimport type { LevelWise, Node, UseTreeProps } from './Tree.types'\n\nexport function useTree<T extends Node = Node>({\n rootNodes,\n expanded,\n selected,\n selectionLimit,\n onSelect,\n multiple,\n autoExpandParent,\n getChildren,\n getParentId,\n onCollapse,\n onExpand,\n}: UseTreeProps<T>) {\n type VisibleNode = T & LevelWise\n type TreeNode = VisibleNode & {\n items?: (TreeNode | VisibleNode)[]\n }\n\n const getNodes = React.useCallback(\n (nodes: T[], node: T): T[] => {\n return [...nodes, node, ...getChildren(node).reduce(getNodes, [])]\n },\n [getChildren]\n )\n\n const nodes = React.useMemo(() => {\n return rootNodes.map((el: T) => getNodes([], el)).flat()\n }, [rootNodes, getNodes])\n\n const getNodeById = React.useCallback(\n (nodeId: T['id']): T =>\n nodes.find((item: T) => {\n return item.id === nodeId\n }) as T,\n [nodes]\n )\n\n const {\n has: isLoading,\n add: startLoading,\n remove: stopLoading,\n } = useSet<T['id']>()\n\n const handleChange = React.useCallback(\n (selectedNodes: Set<T['id']>) =>\n onSelect(Array.from(selectedNodes).map(getNodeById)),\n [getNodeById, onSelect]\n )\n\n const {\n collection: selectedIds,\n has: isSelected,\n add: addSelected,\n remove: removeSelected,\n setCollection: setSelected,\n } = useSet<T['id']>({\n initialValue: new Set(selected),\n onChange: handleChange,\n })\n\n const toggleSingleSelected = React.useCallback(\n (nodeId: T['id']) => {\n setSelected(new Set([nodeId]))\n },\n [setSelected]\n )\n\n const toggleSelected = React.useCallback(\n (nodeId: T['id']) => {\n if (!isSelected(nodeId)) {\n if (selectedIds.size < selectionLimit) {\n addSelected(nodeId)\n }\n } else {\n removeSelected(nodeId)\n }\n },\n [addSelected, isSelected, removeSelected, selectedIds.size, selectionLimit]\n )\n\n const toggleSelection = React.useMemo(\n () => (multiple ? toggleSelected : toggleSingleSelected),\n [multiple, toggleSelected, toggleSingleSelected]\n )\n\n const handleSelection = React.useCallback(\n (node: T) => toggleSelection(node.id),\n [toggleSelection]\n )\n\n /* eslint-disable react-hooks/exhaustive-deps */\n React.useEffect(() => {\n Array.from(selectedIds)\n .filter((id) => !selected.includes(id))\n .forEach(removeSelected)\n selected.filter((id) => !isSelected(id)).forEach(addSelected)\n }, [selected])\n /* eslint-enable react-hooks/exhaustive-deps */\n\n const handleExpand = React.useCallback(\n async (nodeId: T['id']) => {\n try {\n startLoading(nodeId)\n await onExpand(getNodeById(nodeId))\n } finally {\n stopLoading(nodeId)\n }\n },\n [getNodeById, onExpand, startLoading, stopLoading]\n )\n\n const handleCollapse = React.useCallback(\n (nodeId: T['id']) => onCollapse(getNodeById(nodeId)),\n [getNodeById, onCollapse]\n )\n\n const getExpandedIds: (nodeIds: T['id'][], currentNode: T) => T['id'][] =\n React.useCallback(\n (nodeIds, currentNode) => {\n const parentId = getParentId(currentNode)\n if (\n rootNodes.find((rootNode) => parentId === rootNode.id) ||\n isRootNode(parentId)\n ) {\n return [...nodeIds, currentNode.id, parentId]\n } else {\n return getExpandedIds(\n [...nodeIds, currentNode.id],\n getNodeById(parentId)\n )\n }\n },\n [getNodeById, getParentId, rootNodes]\n )\n\n const expandedIds = React.useMemo(() => {\n if (autoExpandParent) {\n return nodes\n .filter((node) =>\n expanded.concat(Array.from(selectedIds)).includes(node.id)\n )\n .reduce(getExpandedIds, [])\n }\n return expanded\n }, [autoExpandParent, expanded, getExpandedIds, nodes, selectedIds])\n\n const {\n add: addExpanded,\n has: isExpanded,\n toggle: toggleExpanded,\n setCollection: setExpanded,\n } = useSet<T['id']>({\n initialValue: new Set(expandedIds),\n onAdd: handleExpand,\n onRemove: handleCollapse,\n })\n\n /* eslint-disable react-hooks/exhaustive-deps */\n React.useEffect(() => {\n expandedIds.filter((id) => !isExpanded(id)).forEach(addExpanded)\n }, [expandedIds])\n /* eslint-enable react-hooks/exhaustive-deps */\n\n const listNavigation = useListNavigation({\n circular: false,\n initialIndex: 0,\n size: 0,\n })\n\n const getSelectableItems = React.useCallback(\n (visibleNodes: TreeNode[], node: TreeNode): TreeNode[] => {\n const visibleItems =\n isExpanded(node.id) && !isLoading(node.id) && node.items\n ? node.items.reduce(getSelectableItems, [])\n : []\n return [...visibleNodes, node, ...visibleItems]\n },\n [isExpanded, isLoading]\n )\n\n const getChildrenNodes = React.useCallback(\n (nodes: TreeNode[], node: T, level: number): TreeNode[] => {\n const children = getChildren(node)\n\n if (children.length > 0) {\n return [\n ...nodes,\n {\n ...node,\n level,\n items: children.reduce(\n (acc, curr) => getChildrenNodes(acc, curr, level + 1),\n [] as TreeNode[]\n ),\n },\n ]\n } else {\n return [...nodes, { ...node, level }]\n }\n },\n [getChildren]\n )\n\n const nodesTree = React.useMemo(\n () =>\n Array.isArray(rootNodes)\n ? rootNodes.map((el: T) => getChildrenNodes([], el, 0)).flat()\n : [],\n [rootNodes, getChildrenNodes]\n )\n\n const visibleNodes = React.useMemo(\n () => nodesTree.reduce(getSelectableItems, []),\n [getSelectableItems, nodesTree]\n )\n\n const highlight = React.useCallback(\n (node: T) => {\n const index = visibleNodes.findIndex(\n (visibleNode: T) => visibleNode.id === node.id\n )\n if (index !== -1) {\n listNavigation.set(index)\n }\n },\n [listNavigation, visibleNodes]\n )\n\n React.useEffect(() => {\n listNavigation.setSize(visibleNodes.length)\n }, [listNavigation, visibleNodes.length])\n\n const isHighlighted = React.useCallback(\n (node: T) =>\n visibleNodes[listNavigation.index] &&\n visibleNodes[listNavigation.index].id === node.id,\n [listNavigation.index, visibleNodes]\n )\n\n const highlightedNode = React.useMemo(() => {\n return visibleNodes[listNavigation.index]\n }, [listNavigation.index, visibleNodes])\n\n return {\n nodes: visibleNodes,\n isExpanded: React.useCallback(\n (node: T) => isExpanded(node.id),\n [isExpanded]\n ),\n isSelected: React.useCallback(\n (node: T) => isSelected(node.id),\n [isSelected]\n ),\n isLoading: React.useCallback((node: T) => isLoading(node.id), [isLoading]),\n highlightedNode,\n isHighlighted,\n highlight,\n handleSelection,\n handleExpansion: React.useCallback(\n (node: T) => toggleExpanded(node.id),\n [toggleExpanded]\n ),\n setSelected,\n setExpanded,\n isFileLimitReached: selectedIds.size >= selectionLimit,\n listNavigation,\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"Tree.hooks.js","names":["_regeneratorRuntime","r","t","e","Object","prototype","n","hasOwnProperty","o","Symbol","i","iterator","a","asyncIterator","u","toStringTag","c","defineProperty","value","enumerable","configurable","writable","h","Generator","create","Error","done","method","arg","delegate","d","f","sent","_sent","dispatchException","abrupt","s","type","Context","call","wrap","GeneratorFunction","GeneratorFunctionPrototype","l","p","getPrototypeOf","y","x","v","g","forEach","_invoke","AsyncIterator","_typeof","resolve","__await","then","TypeError","next","w","tryEntries","push","m","reset","isNaN","length","displayName","isGeneratorFunction","constructor","name","mark","setPrototypeOf","__proto__","awrap","async","Promise","keys","unshift","pop","values","prev","charAt","slice","stop","rval","complete","finish","_catch","delegateYield","asyncGeneratorStep","_asyncToGenerator","arguments","apply","_next","_throw","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","_arrayLikeToArray","toString","Array","from","test","isArray","React","useListNavigation","useSet","isRootNode","useTree","_ref","rootNodes","expanded","selected","selectionLimit","onSelect","multiple","autoExpandParent","getChildren","getParentId","onCollapse","onExpand","getNodes","useCallback","nodes","node","concat","reduce","useMemo","map","el","flat","getNodeById","nodeId","find","item","id","_useSet","isLoading","has","startLoading","add","stopLoading","remove","handleChange","selectedNodes","_useSet2","initialValue","Set","onChange","selectedIds","collection","isSelected","addSelected","removeSelected","setSelected","setCollection","toggleSingleSelected","toggleSelected","size","toggleSelection","handleSelection","useEffect","filter","includes","handleExpand","_ref2","_callee","_callee$","_context","_x","handleCollapse","getExpandedIds","nodeIds","currentNode","parentId","rootNode","expandedIds","_useSet3","onAdd","onRemove","addExpanded","isExpanded","toggleExpanded","toggle","setExpanded","listNavigation","circular","initialIndex","getSelectableItems","visibleNodes","visibleItems","items","getChildrenNodes","level","children","_objectSpread","acc","curr","nodesTree","highlight","index","findIndex","visibleNode","set","setSize","isHighlighted","highlightedNode","handleExpansion","isFileLimitReached"],"sources":["../../src/Tree/Tree.hooks.ts"],"sourcesContent":["import React from 'react'\nimport { useListNavigation } from '../_hooks/ListNavigation'\nimport { useSet } from '../_hooks/useSet'\nimport { isRootNode } from './Tree'\nimport type { LevelWise, Node, UseTreeProps } from './Tree.types'\n\nexport function useTree<T extends Node = Node>({\n rootNodes,\n expanded,\n selected,\n selectionLimit,\n onSelect,\n multiple,\n autoExpandParent,\n getChildren,\n getParentId,\n onCollapse,\n onExpand,\n}: UseTreeProps<T>) {\n type VisibleNode = T & LevelWise\n type TreeNode = VisibleNode & {\n items?: (TreeNode | VisibleNode)[]\n }\n\n const getNodes = React.useCallback(\n (nodes: T[], node: T): T[] => {\n return [...nodes, node, ...getChildren(node).reduce(getNodes, [])]\n },\n [getChildren]\n )\n\n const nodes = React.useMemo(() => {\n return rootNodes.map((el: T) => getNodes([], el)).flat()\n }, [rootNodes, getNodes])\n\n const getNodeById = React.useCallback(\n (nodeId: T['id']): T =>\n nodes.find((item: T) => {\n return item.id === nodeId\n }) as T,\n [nodes]\n )\n\n const {\n has: isLoading,\n add: startLoading,\n remove: stopLoading,\n } = useSet<T['id']>()\n\n const handleChange = React.useCallback(\n (selectedNodes: Set<T['id']>) =>\n onSelect(Array.from(selectedNodes).map(getNodeById)),\n [getNodeById, onSelect]\n )\n\n const {\n collection: selectedIds,\n has: isSelected,\n add: addSelected,\n remove: removeSelected,\n setCollection: setSelected,\n } = useSet<T['id']>({\n initialValue: new Set(selected),\n onChange: handleChange,\n })\n\n const toggleSingleSelected = React.useCallback(\n (nodeId: T['id']) => {\n setSelected(new Set([nodeId]))\n },\n [setSelected]\n )\n\n const toggleSelected = React.useCallback(\n (nodeId: T['id']) => {\n if (!isSelected(nodeId)) {\n if (selectedIds.size < selectionLimit) {\n addSelected(nodeId)\n }\n } else {\n removeSelected(nodeId)\n }\n },\n [addSelected, isSelected, removeSelected, selectedIds.size, selectionLimit]\n )\n\n const toggleSelection = React.useMemo(\n () => (multiple ? toggleSelected : toggleSingleSelected),\n [multiple, toggleSelected, toggleSingleSelected]\n )\n\n const handleSelection = React.useCallback(\n (node: T) => toggleSelection(node.id),\n [toggleSelection]\n )\n\n /* eslint-disable react-hooks/exhaustive-deps */\n React.useEffect(() => {\n Array.from(selectedIds)\n .filter((id) => !selected.includes(id))\n .forEach(removeSelected)\n selected.filter((id) => !isSelected(id)).forEach(addSelected)\n }, [selected])\n /* eslint-enable react-hooks/exhaustive-deps */\n\n const handleExpand = React.useCallback(\n async (nodeId: T['id']) => {\n try {\n startLoading(nodeId)\n await onExpand(getNodeById(nodeId))\n } finally {\n stopLoading(nodeId)\n }\n },\n [getNodeById, onExpand, startLoading, stopLoading]\n )\n\n const handleCollapse = React.useCallback(\n (nodeId: T['id']) => onCollapse(getNodeById(nodeId)),\n [getNodeById, onCollapse]\n )\n\n const getExpandedIds: (nodeIds: T['id'][], currentNode: T) => T['id'][] =\n React.useCallback(\n (nodeIds, currentNode) => {\n const parentId = getParentId(currentNode)\n if (\n rootNodes.find((rootNode) => parentId === rootNode.id) ||\n isRootNode(parentId)\n ) {\n return [...nodeIds, currentNode.id, parentId]\n } else {\n return getExpandedIds(\n [...nodeIds, currentNode.id],\n getNodeById(parentId)\n )\n }\n },\n [getNodeById, getParentId, rootNodes]\n )\n\n const expandedIds = React.useMemo(() => {\n if (autoExpandParent) {\n return nodes\n .filter((node) =>\n expanded.concat(Array.from(selectedIds)).includes(node.id)\n )\n .reduce(getExpandedIds, [])\n }\n return expanded\n }, [autoExpandParent, expanded, getExpandedIds, nodes, selectedIds])\n\n const {\n add: addExpanded,\n has: isExpanded,\n toggle: toggleExpanded,\n setCollection: setExpanded,\n } = useSet<T['id']>({\n initialValue: new Set(expandedIds),\n onAdd: handleExpand,\n onRemove: handleCollapse,\n })\n\n /* eslint-disable react-hooks/exhaustive-deps */\n React.useEffect(() => {\n expandedIds.filter((id) => !isExpanded(id)).forEach(addExpanded)\n }, [expandedIds])\n /* eslint-enable react-hooks/exhaustive-deps */\n\n const listNavigation = useListNavigation({\n circular: false,\n initialIndex: 0,\n size: 0,\n })\n\n const getSelectableItems = React.useCallback(\n (visibleNodes: TreeNode[], node: TreeNode): TreeNode[] => {\n const visibleItems =\n isExpanded(node.id) && !isLoading(node.id) && node.items\n ? node.items.reduce(getSelectableItems, [])\n : []\n return [...visibleNodes, node, ...visibleItems]\n },\n [isExpanded, isLoading]\n )\n\n const getChildrenNodes = React.useCallback(\n (nodes: TreeNode[], node: T, level: number): TreeNode[] => {\n const children = getChildren(node)\n\n if (children.length > 0) {\n return [\n ...nodes,\n {\n ...node,\n level,\n items: children.reduce(\n (acc, curr) => getChildrenNodes(acc, curr, level + 1),\n [] as TreeNode[]\n ),\n },\n ]\n } else {\n return [...nodes, { ...node, level }]\n }\n },\n [getChildren]\n )\n\n const nodesTree = React.useMemo(\n () =>\n Array.isArray(rootNodes)\n ? rootNodes.map((el: T) => getChildrenNodes([], el, 0)).flat()\n : [],\n [rootNodes, getChildrenNodes]\n )\n\n const visibleNodes = React.useMemo(\n () => nodesTree.reduce(getSelectableItems, []),\n [getSelectableItems, nodesTree]\n )\n\n const highlight = React.useCallback(\n (node: T) => {\n const index = visibleNodes.findIndex(\n (visibleNode: T) => visibleNode.id === node.id\n )\n if (index !== -1) {\n listNavigation.set(index)\n }\n },\n [listNavigation, visibleNodes]\n )\n\n React.useEffect(() => {\n listNavigation.setSize(visibleNodes.length)\n }, [listNavigation, visibleNodes.length])\n\n const isHighlighted = React.useCallback(\n (node: T) =>\n visibleNodes[listNavigation.index] &&\n visibleNodes[listNavigation.index].id === node.id,\n [listNavigation.index, visibleNodes]\n )\n\n const highlightedNode = React.useMemo(() => {\n return visibleNodes[listNavigation.index]\n }, [listNavigation.index, visibleNodes])\n\n return {\n nodes: visibleNodes,\n isExpanded: React.useCallback(\n (node: T) => isExpanded(node.id),\n [isExpanded]\n ),\n isSelected: React.useCallback(\n (node: T) => isSelected(node.id),\n [isSelected]\n ),\n isLoading: React.useCallback((node: T) => isLoading(node.id), [isLoading]),\n highlightedNode,\n isHighlighted,\n highlight,\n handleSelection,\n handleExpansion: React.useCallback(\n (node: T) => toggleExpanded(node.id),\n [toggleExpanded]\n ),\n setSelected,\n setExpanded,\n isFileLimitReached: selectedIds.size >= selectionLimit,\n listNavigation,\n }\n}\n"],"mappings":"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"}
package/dist/Tree/Tree.js CHANGED
@@ -543,9 +543,9 @@ var TreeRowTooltip = function TreeRowTooltip(_ref9) {
543
543
  var isTooltipVisible = isUserInteracting && shouldShowTooltip && !isSelected;
544
544
  var isFile = nodeType === 'leaf';
545
545
  var _React$useState9 = React.useState(false),
546
- _React$useState10 = _slicedToArray(_React$useState9, 2),
547
- isCropped = _React$useState10[0],
548
- setCropped = _React$useState10[1];
546
+ _React$useState0 = _slicedToArray(_React$useState9, 2),
547
+ isCropped = _React$useState0[0],
548
+ setCropped = _React$useState0[1];
549
549
  var registerRowEl = useIntersectionObserver(function (entries) {
550
550
  entries.forEach(function (entry) {
551
551
  if (entry.rootBounds && entry.rootBounds.left - entry.boundingClientRect.left >= 0) {
@@ -571,15 +571,15 @@ var TreeRowTooltip = function TreeRowTooltip(_ref9) {
571
571
  ref: mergeRefs(rowRef, registerRowEl)
572
572
  }, children));
573
573
  };
574
- var TreeRowContainer = function TreeRowContainer(_ref10) {
575
- var children = _ref10.children,
576
- isHighlighted = _ref10.isHighlighted,
577
- isSelected = _ref10.isSelected,
578
- isSelectable = _ref10.isSelectable,
579
- isExpandable = _ref10.isExpandable,
580
- isFileLimitReached = _ref10.isFileLimitReached,
581
- level = _ref10.level,
582
- props = _objectWithoutProperties(_ref10, _excluded5);
574
+ var TreeRowContainer = function TreeRowContainer(_ref0) {
575
+ var children = _ref0.children,
576
+ isHighlighted = _ref0.isHighlighted,
577
+ isSelected = _ref0.isSelected,
578
+ isSelectable = _ref0.isSelectable,
579
+ isExpandable = _ref0.isExpandable,
580
+ isFileLimitReached = _ref0.isFileLimitReached,
581
+ level = _ref0.level,
582
+ props = _objectWithoutProperties(_ref0, _excluded5);
583
583
  return /*#__PURE__*/React.createElement(StyledTreeRowContainer, _extends({
584
584
  $isSelectable: isSelectable && (isFileLimitReached && isSelected || !isFileLimitReached) || isExpandable,
585
585
  $isHighlighted: isHighlighted,
@@ -1 +1 @@
1
- {"version":3,"file":"Tree.js","names":["File","Folder","React","areEqual","FixedSizeList","Spinner","Tooltip","useI18nContext","useIntersectionObserver","useResizeObserver","useTimer","useVisibility","parseFilename","mergeRefs","useTree","StyledChevron","StyledChevronContainer","StyledFilenameCaption","StyledIconContainer","StyledTree","StyledTreeRowContainer","StyledTreeRowContent","StyledTreeRowWrapper","spacing","rootSpacing","defaultRowHeight","rowRightPadding","scrollbarWidth","getPadding","level","intersectionThresholds","Array","from","length","map","_","index","tooltipDelay","UNSAFE_treeRootNodeId","defaultIsExpandable","node","defaultGetType","defaultIsSelectable","type","defaultGetParentId","parentId","defaultGetLabel","name","noop","isRootNode","rootValues","undefined","includes","Tree","forwardRef","_ref","ref","options","_ref$expanded","expanded","_ref$selected","selected","_ref$selectionLimit","selectionLimit","Infinity","getRoot_","getRoot","getChildren_","getChildren","getIconBase","getIcon","_ref$getLabel","getLabel","_ref$getParentId","getParentId","getParentId_","_ref$getType","getType","_ref$isExpandable","isExpandable","_ref$isSelectable","isSelectable","_ref$multiple","multiple","_ref$onSelect","onSelect","_ref$onCollapse","onCollapse","_ref$onExpand","onExpand","Promise","resolve","rowRendererBase","rowRenderer","_ref$maxVisibleNodes","maxVisibleNodes","visibleHeight","_ref$autoExpandParent","autoExpandParent","innerElementType","outerElementType","onKeyDown","children","props","_objectWithoutProperties","_excluded","rowHeight","wrapperRef","useRef","listRef","listInnerRef","listOuterRefRef","_React$useState","useState","_React$useState2","_slicedToArray","contentMaxWidth","setContentMaxWidth","useMemo","defaultGetRoot","useCallback","nodes","filter","rootNodes","roots","isArray","useEffect","console","warn","_React$useState3","_React$useState4","isTreeFocused","setIsTreeFocused","_React$useState5","width","height","_React$useState6","containerSize","setContainerSize","handleContainerResize","entries","_ref2","target","clientHeight","clientWidth","setResizeObserverTarget","defaultGetChildren","childNode","id","_useTree","isExpanded","isSelected","isLoading","highlightedNode","isNodeHighlighted","isHighlighted","highlight","handleSelection","handleExpansion","_setExpanded","setExpanded","_setSelected","setSelected","isFileLimitReached","listNavigation","Set","useImperativeHandle","rootEl","current","toggleSelected","toggleExpanded","defaultGetIcon","isFolder","createElement","handleAccessibility","e","key","preventDefault","increment","decrement","_listRef$current","scrollToItem","defaultRowRenderer","TreeRow","_listInnerRef$current","rowContentSizes","childNodes","forEach","child","rowContent","querySelector","_dataset$padding","leftPadding","dataset","padding","push","scrollWidth","parseInt","maxSizeRowContent","Math","max","apply","itemData","treeContainer","error","_extends","tabIndex","onFocus","onBlur","className","min","innerRef","outerRef","itemCount","itemSize","TreeNode","memo","_ref3","_ref3$data","data","_excluded2","style","_React$useState7","_React$useState8","isMouseOver","setMouseOver","timer","_useVisibility","shouldShowTooltip","isVisible","showTooltip","show","hideTooltip","hide","setTimer","onMouseEnter","onMouseLeave","cancel","_objectSpread","_ref4","_excluded3","expanderRef","nodeType","rowLabel","onClick","event","_expanderRef$current","contains","onMouseDown","focus","TreeRowContainer","TreeRowChevron","TreeRowIcon","icon","TreeRowTooltip","fileName","TreeRowName","value","IconContainer","_ref5","_excluded4","$isSelected","_ref6","$isExpanded","_ref7","marginLeft","marginRight","size","_ref8","getSelectionLimitMessage","count","getUnsupportedFileTypeMessage","_parseFilename","extension","isFilename","concat","fileType","toUpperCase","_ref9","isFocused","I18n","rowRef","isUserInteracting","isTooltipVisible","isFile","_React$useState9","_React$useState10","isCropped","setCropped","registerRowEl","entry","rootBounds","left","boundingClientRect","root","rootMargin","threshold","selectionLimitMessage","unsupportedFileTypeMessage","message","trigger","overlay","t","placement","_ref10","_excluded5","$isSelectable","$isHighlighted","paddingLeft"],"sources":["../../src/Tree/Tree.tsx"],"sourcesContent":["import { File, Folder } from '@procore/core-icons/dist'\nimport type { FunctionComponent, PropsWithChildren } from 'react'\nimport React from 'react'\nimport { areEqual, FixedSizeList } from 'react-window'\nimport { Spinner } from '../Spinner/Spinner'\nimport { Tooltip } from '../Tooltip'\nimport { useI18nContext } from '../_hooks/I18n'\nimport { useIntersectionObserver } from '../_hooks/IntersectionObserver'\nimport { useResizeObserver } from '../_hooks/ResizeObserver'\nimport { useTimer } from '../_hooks/Timer'\nimport { useVisibility } from '../_hooks/Visibility'\nimport { parseFilename } from '../_utils/filename'\nimport { mergeRefs } from '../_utils/mergeRefs'\nimport { useTree } from './Tree.hooks'\nimport {\n StyledChevron,\n StyledChevronContainer,\n StyledFilenameCaption,\n StyledIconContainer,\n StyledTree,\n StyledTreeRowContainer,\n StyledTreeRowContent,\n StyledTreeRowWrapper,\n} from './Tree.styles'\nimport type {\n CustomDataType,\n IconContainerProps,\n Node,\n TreeDefaultNode,\n TreeNodeId,\n TreeNodeProps,\n TreeProps,\n TreeRef,\n TreeRowContainerProps,\n TreeRowProps,\n TreeRowTooltipProps,\n} from './Tree.types'\n\nconst spacing = 32\nconst rootSpacing = 24\nconst defaultRowHeight = 36\n\n// Selected nodes have a bold text, and browsers occasionally miscalculate scrollWidth by one pixel down.\n// That situations might cause an issue when we get a second horizontal scrollbar.\n// This padding serves as compensation to prevent the described issue.\nconst rowRightPadding = 12\n// For most of browsers it usually varies between 12px and 20px.\n// To avoid tricky cross-browser calculations of scrollbar width. The maximum width is used.\nconst scrollbarWidth = 20\n\nfunction getPadding(level: number) {\n return rootSpacing + level * spacing\n}\n\nconst intersectionThresholds = Array.from({ length: 101 }).map(\n (_, index) => index / 100\n)\n\nconst tooltipDelay = 300\n\n// TODO refactor this to not be upper snake case\nexport const UNSAFE_treeRootNodeId = 'ROOT_ID'\n\nconst defaultIsExpandable: NonNullable<TreeProps['isExpandable']> = (\n node: TreeDefaultNode\n) => defaultGetType(node) === 'branch'\nconst defaultIsSelectable: NonNullable<TreeProps['isSelectable']> = (\n node: TreeDefaultNode\n) => node.type === 'leaf'\nconst defaultGetType: NonNullable<TreeProps['getType']> = (\n node: TreeDefaultNode\n) => node.type\nconst defaultGetParentId: NonNullable<TreeProps['getParentId']> = (\n node: TreeDefaultNode\n) => node.parentId\nconst defaultGetLabel: NonNullable<TreeProps['getLabel']> = (\n node: TreeDefaultNode\n) => node.name\nfunction noop() {}\n\nexport function isRootNode(parentId: TreeNodeId): boolean {\n const rootValues = [UNSAFE_treeRootNodeId, null, undefined] as TreeNodeId[]\n return rootValues.includes(parentId)\n}\n\n/**\n\n The tree allows users to navigate between folder / file directories,\n and optionally select those files.\n\n @since 10.19.0\n\n @see [Storybook](https://stories.core.procore.com/?path=/story/core-react_demos-tree--demo)\n\n @see [Design Guidelines](https://design.procore.com/tree)\n\n */\nexport const Tree = React.forwardRef(\n <T extends Node = Node, P extends CustomDataType<T> = Array<T>>(\n {\n options,\n expanded = [],\n selected = [],\n selectionLimit = Infinity,\n getRoot: getRoot_,\n getChildren: getChildren_,\n getIcon: getIconBase,\n getLabel = defaultGetLabel,\n getParentId: getParentId_ = defaultGetParentId,\n getType = defaultGetType,\n isExpandable = defaultIsExpandable,\n isSelectable = defaultIsSelectable,\n multiple = true,\n onSelect = noop,\n onCollapse = noop,\n onExpand = () => Promise.resolve(),\n rowRenderer: rowRendererBase,\n maxVisibleNodes = Infinity,\n visibleHeight,\n autoExpandParent = true,\n innerElementType,\n outerElementType,\n onKeyDown,\n children,\n ...props\n }: TreeProps<T, P>,\n ref: React.Ref<TreeRef<T>>\n ) => {\n const rowHeight = defaultRowHeight\n const wrapperRef = React.useRef<HTMLDivElement | null>(null)\n const listRef = React.useRef<FixedSizeList>(null)\n const listInnerRef = React.useRef<HTMLDivElement>(null)\n const listOuterRefRef = React.useRef<HTMLDivElement>(null)\n const [contentMaxWidth, setContentMaxWidth] = React.useState(0)\n\n const getParentId = React.useMemo(() => getParentId_, [])\n\n const defaultGetRoot = React.useCallback(\n (nodes: P): T | T[] =>\n nodes.filter((node: T) => {\n return isRootNode(getParentId(node))\n }),\n [getParentId]\n )\n\n const getRoot = React.useMemo(\n () => getRoot_ || defaultGetRoot,\n [defaultGetRoot]\n )\n\n const rootNodes = React.useMemo(() => {\n const roots = getRoot(options)\n return Array.isArray(roots) ? roots : [roots]\n }, [getRoot, options])\n\n React.useEffect(() => {\n if (!rootNodes.length) {\n console.warn(\n 'Tree must have at least one root node. Look up `Tree#getParentId` for details.'\n )\n }\n }, [rootNodes])\n\n const [isTreeFocused, setIsTreeFocused] = React.useState(false)\n const [containerSize, setContainerSize] = React.useState({\n width: 0,\n height: 0,\n })\n\n const handleContainerResize = React.useCallback(\n (entries: ResizeObserverEntry[]) => {\n if (entries[0]) {\n const { clientHeight: height, clientWidth: width } = entries[0]\n .target as HTMLElement\n setContainerSize({ width, height })\n }\n },\n [setContainerSize]\n )\n\n const setResizeObserverTarget = useResizeObserver(handleContainerResize)\n\n const defaultGetChildren = React.useCallback(\n (node: T) =>\n Array.isArray(options)\n ? options.filter((childNode: T) => getParentId(childNode) === node.id)\n : ([] as T[]),\n [getParentId, options]\n )\n\n const getChildren = getChildren_ || defaultGetChildren\n\n const {\n nodes,\n isExpanded,\n isSelected,\n isLoading,\n highlightedNode,\n isHighlighted: isNodeHighlighted,\n highlight,\n handleSelection,\n handleExpansion,\n setExpanded: _setExpanded,\n setSelected: _setSelected,\n isFileLimitReached,\n listNavigation,\n } = useTree<T>({\n rootNodes,\n expanded,\n selected,\n selectionLimit,\n multiple,\n autoExpandParent,\n onSelect,\n onCollapse,\n onExpand,\n getChildren,\n getParentId,\n })\n\n const setSelected = React.useCallback(\n (selected: T | T[]) => {\n const nodes = Array.isArray(selected) ? selected : [selected]\n\n _setSelected(new Set(nodes.map((node) => node.id)))\n },\n [_setSelected]\n )\n\n const setExpanded = React.useCallback(\n (expanded: T | T[]) => {\n const nodes = Array.isArray(expanded) ? expanded : [expanded]\n\n _setExpanded(new Set(nodes.map((node) => node.id)))\n },\n [_setExpanded]\n )\n\n React.useImperativeHandle(ref, () => ({\n rootEl: wrapperRef.current,\n setSelected,\n setExpanded,\n toggleSelected: (node: T) => handleSelection(node),\n toggleExpanded: (node: T) => handleExpansion(node),\n }))\n\n const defaultGetIcon = React.useCallback(\n (node: T): React.ReactNode => {\n const isFolder = getType(node) === 'branch'\n return isFolder ? <Folder /> : <File />\n },\n [getType]\n )\n\n const getIcon = getIconBase || defaultGetIcon\n\n const isHighlighted = React.useCallback(\n (node: T) => isTreeFocused && isNodeHighlighted(node),\n [isNodeHighlighted, isTreeFocused]\n )\n\n const handleAccessibility = (e: React.KeyboardEvent<HTMLDivElement>) => {\n onKeyDown?.(e)\n const { key } = e\n\n switch (key) {\n case 'Enter':\n e.preventDefault()\n isSelectable(highlightedNode) && handleSelection(highlightedNode)\n break\n case 'Space Bar':\n case ' ':\n e.preventDefault()\n isExpandable(highlightedNode) && handleExpansion(highlightedNode)\n break\n case 'ArrowDown':\n case 'Down':\n e.preventDefault()\n listNavigation.increment()\n break\n case 'ArrowUp':\n case 'Up':\n e.preventDefault()\n listNavigation.decrement()\n break\n }\n }\n\n React.useEffect(() => {\n if (isTreeFocused) {\n listRef.current?.scrollToItem(listNavigation.index)\n }\n }, [isTreeFocused, listNavigation.index])\n\n const defaultRowRenderer = React.useCallback(\n (props: TreeRowProps) => <TreeRow {...props} />,\n []\n )\n\n React.useEffect(() => {\n const rowContentSizes: number[] = []\n\n const childNodes = Array.from(listInnerRef.current?.childNodes || [])\n childNodes.forEach((child) => {\n const rowContent = (child as HTMLElement).querySelector(\n '[data-row-content]'\n )\n\n if (rowContent) {\n const leftPadding = (child as HTMLElement).dataset.padding ?? '0'\n rowContentSizes.push(\n rowContent.scrollWidth + parseInt(leftPadding, 10) + rowRightPadding\n )\n }\n })\n\n const maxSizeRowContent = Math.max(...rowContentSizes) + scrollbarWidth\n setContentMaxWidth(maxSizeRowContent)\n })\n\n const rowRenderer = rowRendererBase || defaultRowRenderer\n\n const itemData = React.useMemo(\n () => ({\n nodes,\n getIcon,\n getLabel,\n getType,\n isExpandable,\n isSelectable,\n isExpanded,\n isSelected,\n isLoading,\n highlight,\n isHighlighted,\n handleSelection,\n handleExpansion,\n rowRenderer,\n isFileLimitReached,\n selectionLimit,\n isTreeFocused,\n treeContainer: wrapperRef.current as HTMLDivElement,\n }),\n [\n getIcon,\n getLabel,\n getType,\n handleExpansion,\n handleSelection,\n highlight,\n isExpandable,\n isExpanded,\n isFileLimitReached,\n isHighlighted,\n isLoading,\n isSelectable,\n isSelected,\n isTreeFocused,\n nodes,\n rowRenderer,\n selectionLimit,\n ]\n )\n\n if (!rootNodes) {\n console.error('Tree must have a valid root node')\n return null\n }\n\n return (\n <StyledTree\n {...props}\n ref={mergeRefs(wrapperRef, setResizeObserverTarget)}\n tabIndex={0}\n onFocus={() => setIsTreeFocused(true)}\n onBlur={() => setIsTreeFocused(false)}\n onKeyDown={handleAccessibility}\n >\n <FixedSizeList\n className=\"size-list\"\n ref={listRef}\n height={\n visibleHeight ||\n Math.min(nodes.length * rowHeight, rowHeight * maxVisibleNodes)\n }\n innerRef={listInnerRef}\n outerRef={listOuterRefRef}\n itemCount={nodes.length}\n itemSize={rowHeight}\n innerElementType={innerElementType}\n outerElementType={outerElementType}\n itemData={itemData}\n width={Math.max(contentMaxWidth, containerSize.width)}\n >\n {TreeNode}\n </FixedSizeList>\n </StyledTree>\n )\n }\n)\n\nconst TreeNode: React.FC<TreeNodeProps> = React.memo(\n ({\n data: { nodes, rowRenderer, highlight, isTreeFocused, ...props },\n index,\n style,\n }) => {\n const node = nodes[index]\n\n const isHighlighted = props.isHighlighted(node)\n const [isMouseOver, setMouseOver] = React.useState(false)\n\n const timer = useTimer({})\n const {\n isVisible: shouldShowTooltip,\n show: showTooltip,\n hide: hideTooltip,\n } = useVisibility({})\n\n React.useEffect(() => {\n if (isHighlighted && !shouldShowTooltip) {\n timer.setTimer(showTooltip, tooltipDelay)\n }\n\n return () => {\n if (isTreeFocused && !isHighlighted && shouldShowTooltip) {\n hideTooltip()\n }\n }\n })\n\n const onMouseEnter = () => {\n setMouseOver(true)\n if (!shouldShowTooltip) {\n timer.setTimer(showTooltip, tooltipDelay)\n }\n highlight(node)\n }\n\n const onMouseLeave = () => {\n setMouseOver(false)\n timer.cancel()\n hideTooltip()\n }\n\n return (\n <StyledTreeRowWrapper\n tabIndex={-1}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n style={style}\n data-padding={getPadding(node.level)}\n >\n {rowRenderer({\n node,\n shouldShowTooltip,\n isMouseOver,\n ...props,\n })}\n </StyledTreeRowWrapper>\n )\n },\n areEqual\n)\n\nconst TreeRow: React.FC<TreeRowProps> = ({\n node,\n getIcon,\n getLabel,\n handleExpansion,\n handleSelection,\n selectionLimit,\n isFileLimitReached,\n shouldShowTooltip,\n isMouseOver,\n treeContainer,\n ...props\n}) => {\n const expanderRef = React.useRef<HTMLDivElement>(null)\n const isSelected = props.isSelected(node)\n const isSelectable = props.isSelectable(node)\n const isExpandable = props.isExpandable(node)\n const isExpanded = props.isExpanded(node)\n const isLoading = props.isLoading(node)\n const isHighlighted = props.isHighlighted(node)\n const nodeType = props.getType(node)\n const rowLabel = getLabel(node)\n\n const onClick = React.useCallback(\n (event: React.MouseEvent) => {\n if (isSelectable && isExpandable) {\n // @ts-ignore\n expanderRef?.current?.contains(event.target)\n ? handleExpansion(node)\n : handleSelection(node)\n } else if (isSelectable) {\n handleSelection(node)\n } else if (isExpandable) {\n handleExpansion(node)\n }\n },\n [handleExpansion, handleSelection, isExpandable, isSelectable, node]\n )\n\n const onMouseDown = React.useCallback(\n (e: React.MouseEvent) => {\n e.preventDefault()\n treeContainer.focus()\n },\n [treeContainer]\n )\n\n return (\n <TreeRowContainer\n level={node.level}\n onClick={onClick}\n onMouseDown={onMouseDown}\n isSelected={isSelected}\n isSelectable={isSelectable}\n isExpandable={isExpandable}\n isHighlighted={isHighlighted}\n isFileLimitReached={isFileLimitReached}\n data-qa=\"core-tree-row-container\"\n >\n {\n // WARNING!\n // Be aware that this data attribute is used for calculations, changing this data attribute will break its operability.\n }\n <StyledTreeRowContent data-row-content>\n <TreeRowChevron\n ref={expanderRef}\n isExpandable={isExpandable}\n isExpanded={isExpanded}\n />\n <TreeRowIcon\n isLoading={isLoading}\n isSelected={isSelected}\n icon={getIcon(node)}\n />\n <TreeRowTooltip\n isSelected={isSelected}\n isSelectable={isSelectable}\n isHighlighted={isHighlighted}\n selectionLimit={selectionLimit}\n isFileLimitReached={isFileLimitReached}\n shouldShowTooltip={shouldShowTooltip}\n isMouseOver={isMouseOver}\n fileName={rowLabel}\n nodeType={nodeType}\n treeContainer={treeContainer}\n >\n <TreeRowName value={rowLabel} />\n </TreeRowTooltip>\n </StyledTreeRowContent>\n </TreeRowContainer>\n )\n}\n\nconst IconContainer: React.FC<IconContainerProps> = ({\n children,\n isSelected,\n ...props\n}) => (\n <StyledIconContainer $isSelected={isSelected} {...props}>\n {children}\n </StyledIconContainer>\n)\n\nconst TreeRowChevron = React.forwardRef<\n HTMLDivElement,\n {\n isExpanded: boolean\n isExpandable: boolean\n }\n>(({ isExpanded, isExpandable }, ref) => {\n return (\n <StyledChevronContainer ref={ref}>\n {isExpandable ? <StyledChevron $isExpanded={isExpanded} /> : null}\n </StyledChevronContainer>\n )\n})\n\nconst TreeRowIcon: React.FC<{\n isSelected: boolean\n isLoading: boolean\n icon: React.ReactNode\n}> = ({ isSelected, isLoading, icon }) => (\n <IconContainer isSelected={isSelected} marginLeft=\"sm\" marginRight=\"sm\">\n {isLoading ? <Spinner size=\"sm\" /> : icon}\n </IconContainer>\n)\n\nconst TreeRowName: React.FC<{ value: string }> = ({ value }) => (\n <StyledFilenameCaption>{value}</StyledFilenameCaption>\n)\n\nconst getSelectionLimitMessage = (selectionLimit: number) => ({\n key: 'selectionLimit',\n options: {\n count: selectionLimit,\n },\n})\n\nconst getUnsupportedFileTypeMessage = (fileName: string) => {\n const { extension, isFilename } = parseFilename(fileName)\n const key = isFilename ? 'specific' : 'unspecific'\n\n return {\n key: `unsupportedFileType.${key}`,\n options: {\n fileType: `.${extension.toUpperCase()}`,\n },\n }\n}\n\nconst TreeRowTooltip: FunctionComponent<\n PropsWithChildren<TreeRowTooltipProps>\n> = ({\n children,\n isHighlighted: isFocused,\n isFileLimitReached,\n isSelectable,\n isSelected,\n nodeType,\n selectionLimit,\n shouldShowTooltip,\n isMouseOver,\n fileName,\n treeContainer,\n}) => {\n const I18n = useI18nContext()\n const rowRef = React.useRef<HTMLDivElement>(null)\n const isUserInteracting = isFocused || isMouseOver\n const isTooltipVisible = isUserInteracting && shouldShowTooltip && !isSelected\n const isFile = nodeType === 'leaf'\n const [isCropped, setCropped] = React.useState(false)\n\n const registerRowEl = useIntersectionObserver(\n (entries) => {\n entries.forEach((entry) => {\n if (\n entry.rootBounds &&\n entry.rootBounds.left - entry.boundingClientRect.left >= 0\n ) {\n setCropped(true)\n return\n }\n setCropped(false)\n })\n },\n {\n root: treeContainer,\n rootMargin: '0px',\n threshold: intersectionThresholds,\n }\n )\n\n const selectionLimitMessage = getSelectionLimitMessage(selectionLimit)\n const unsupportedFileTypeMessage = getUnsupportedFileTypeMessage(fileName)\n\n const message = isSelectable\n ? isFileLimitReached && selectionLimitMessage\n : isFile && unsupportedFileTypeMessage\n\n const trigger = isTooltipVisible && !isCropped && message ? 'always' : 'none'\n\n return (\n <Tooltip\n trigger={trigger}\n overlay={\n message ? I18n.t(`core.tree.${message.key}`, message.options) : null\n }\n placement=\"top-left\"\n >\n <div ref={mergeRefs(rowRef, registerRowEl)}>{children}</div>\n </Tooltip>\n )\n}\n\nconst TreeRowContainer: React.FC<TreeRowContainerProps> = ({\n children,\n isHighlighted,\n isSelected,\n isSelectable,\n isExpandable,\n isFileLimitReached,\n level,\n ...props\n}) => {\n return (\n <StyledTreeRowContainer\n $isSelectable={\n (isSelectable &&\n ((isFileLimitReached && isSelected) || !isFileLimitReached)) ||\n isExpandable\n }\n $isHighlighted={isHighlighted}\n $isSelected={isSelected}\n style={{ paddingLeft: getPadding(level) }}\n {...props}\n >\n {children}\n </StyledTreeRowContainer>\n )\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"Tree.js","names":["File","Folder","React","areEqual","FixedSizeList","Spinner","Tooltip","useI18nContext","useIntersectionObserver","useResizeObserver","useTimer","useVisibility","parseFilename","mergeRefs","useTree","StyledChevron","StyledChevronContainer","StyledFilenameCaption","StyledIconContainer","StyledTree","StyledTreeRowContainer","StyledTreeRowContent","StyledTreeRowWrapper","spacing","rootSpacing","defaultRowHeight","rowRightPadding","scrollbarWidth","getPadding","level","intersectionThresholds","Array","from","length","map","_","index","tooltipDelay","UNSAFE_treeRootNodeId","defaultIsExpandable","node","defaultGetType","defaultIsSelectable","type","defaultGetParentId","parentId","defaultGetLabel","name","noop","isRootNode","rootValues","undefined","includes","Tree","forwardRef","_ref","ref","options","_ref$expanded","expanded","_ref$selected","selected","_ref$selectionLimit","selectionLimit","Infinity","getRoot_","getRoot","getChildren_","getChildren","getIconBase","getIcon","_ref$getLabel","getLabel","_ref$getParentId","getParentId","getParentId_","_ref$getType","getType","_ref$isExpandable","isExpandable","_ref$isSelectable","isSelectable","_ref$multiple","multiple","_ref$onSelect","onSelect","_ref$onCollapse","onCollapse","_ref$onExpand","onExpand","Promise","resolve","rowRendererBase","rowRenderer","_ref$maxVisibleNodes","maxVisibleNodes","visibleHeight","_ref$autoExpandParent","autoExpandParent","innerElementType","outerElementType","onKeyDown","children","props","_objectWithoutProperties","_excluded","rowHeight","wrapperRef","useRef","listRef","listInnerRef","listOuterRefRef","_React$useState","useState","_React$useState2","_slicedToArray","contentMaxWidth","setContentMaxWidth","useMemo","defaultGetRoot","useCallback","nodes","filter","rootNodes","roots","isArray","useEffect","console","warn","_React$useState3","_React$useState4","isTreeFocused","setIsTreeFocused","_React$useState5","width","height","_React$useState6","containerSize","setContainerSize","handleContainerResize","entries","_ref2","target","clientHeight","clientWidth","setResizeObserverTarget","defaultGetChildren","childNode","id","_useTree","isExpanded","isSelected","isLoading","highlightedNode","isNodeHighlighted","isHighlighted","highlight","handleSelection","handleExpansion","_setExpanded","setExpanded","_setSelected","setSelected","isFileLimitReached","listNavigation","Set","useImperativeHandle","rootEl","current","toggleSelected","toggleExpanded","defaultGetIcon","isFolder","createElement","handleAccessibility","e","key","preventDefault","increment","decrement","_listRef$current","scrollToItem","defaultRowRenderer","TreeRow","_listInnerRef$current","rowContentSizes","childNodes","forEach","child","rowContent","querySelector","_dataset$padding","leftPadding","dataset","padding","push","scrollWidth","parseInt","maxSizeRowContent","Math","max","apply","itemData","treeContainer","error","_extends","tabIndex","onFocus","onBlur","className","min","innerRef","outerRef","itemCount","itemSize","TreeNode","memo","_ref3","_ref3$data","data","_excluded2","style","_React$useState7","_React$useState8","isMouseOver","setMouseOver","timer","_useVisibility","shouldShowTooltip","isVisible","showTooltip","show","hideTooltip","hide","setTimer","onMouseEnter","onMouseLeave","cancel","_objectSpread","_ref4","_excluded3","expanderRef","nodeType","rowLabel","onClick","event","_expanderRef$current","contains","onMouseDown","focus","TreeRowContainer","TreeRowChevron","TreeRowIcon","icon","TreeRowTooltip","fileName","TreeRowName","value","IconContainer","_ref5","_excluded4","$isSelected","_ref6","$isExpanded","_ref7","marginLeft","marginRight","size","_ref8","getSelectionLimitMessage","count","getUnsupportedFileTypeMessage","_parseFilename","extension","isFilename","concat","fileType","toUpperCase","_ref9","isFocused","I18n","rowRef","isUserInteracting","isTooltipVisible","isFile","_React$useState9","_React$useState0","isCropped","setCropped","registerRowEl","entry","rootBounds","left","boundingClientRect","root","rootMargin","threshold","selectionLimitMessage","unsupportedFileTypeMessage","message","trigger","overlay","t","placement","_ref0","_excluded5","$isSelectable","$isHighlighted","paddingLeft"],"sources":["../../src/Tree/Tree.tsx"],"sourcesContent":["import { File, Folder } from '@procore/core-icons/dist'\nimport type { FunctionComponent, PropsWithChildren } from 'react'\nimport React from 'react'\nimport { areEqual, FixedSizeList } from 'react-window'\nimport { Spinner } from '../Spinner/Spinner'\nimport { Tooltip } from '../Tooltip'\nimport { useI18nContext } from '../_hooks/I18n'\nimport { useIntersectionObserver } from '../_hooks/IntersectionObserver'\nimport { useResizeObserver } from '../_hooks/ResizeObserver'\nimport { useTimer } from '../_hooks/Timer'\nimport { useVisibility } from '../_hooks/Visibility'\nimport { parseFilename } from '../_utils/filename'\nimport { mergeRefs } from '../_utils/mergeRefs'\nimport { useTree } from './Tree.hooks'\nimport {\n StyledChevron,\n StyledChevronContainer,\n StyledFilenameCaption,\n StyledIconContainer,\n StyledTree,\n StyledTreeRowContainer,\n StyledTreeRowContent,\n StyledTreeRowWrapper,\n} from './Tree.styles'\nimport type {\n CustomDataType,\n IconContainerProps,\n Node,\n TreeDefaultNode,\n TreeNodeId,\n TreeNodeProps,\n TreeProps,\n TreeRef,\n TreeRowContainerProps,\n TreeRowProps,\n TreeRowTooltipProps,\n} from './Tree.types'\n\nconst spacing = 32\nconst rootSpacing = 24\nconst defaultRowHeight = 36\n\n// Selected nodes have a bold text, and browsers occasionally miscalculate scrollWidth by one pixel down.\n// That situations might cause an issue when we get a second horizontal scrollbar.\n// This padding serves as compensation to prevent the described issue.\nconst rowRightPadding = 12\n// For most of browsers it usually varies between 12px and 20px.\n// To avoid tricky cross-browser calculations of scrollbar width. The maximum width is used.\nconst scrollbarWidth = 20\n\nfunction getPadding(level: number) {\n return rootSpacing + level * spacing\n}\n\nconst intersectionThresholds = Array.from({ length: 101 }).map(\n (_, index) => index / 100\n)\n\nconst tooltipDelay = 300\n\n// TODO refactor this to not be upper snake case\nexport const UNSAFE_treeRootNodeId = 'ROOT_ID'\n\nconst defaultIsExpandable: NonNullable<TreeProps['isExpandable']> = (\n node: TreeDefaultNode\n) => defaultGetType(node) === 'branch'\nconst defaultIsSelectable: NonNullable<TreeProps['isSelectable']> = (\n node: TreeDefaultNode\n) => node.type === 'leaf'\nconst defaultGetType: NonNullable<TreeProps['getType']> = (\n node: TreeDefaultNode\n) => node.type\nconst defaultGetParentId: NonNullable<TreeProps['getParentId']> = (\n node: TreeDefaultNode\n) => node.parentId\nconst defaultGetLabel: NonNullable<TreeProps['getLabel']> = (\n node: TreeDefaultNode\n) => node.name\nfunction noop() {}\n\nexport function isRootNode(parentId: TreeNodeId): boolean {\n const rootValues = [UNSAFE_treeRootNodeId, null, undefined] as TreeNodeId[]\n return rootValues.includes(parentId)\n}\n\n/**\n\n The tree allows users to navigate between folder / file directories,\n and optionally select those files.\n\n @since 10.19.0\n\n @see [Storybook](https://stories.core.procore.com/?path=/story/core-react_demos-tree--demo)\n\n @see [Design Guidelines](https://design.procore.com/tree)\n\n */\nexport const Tree = React.forwardRef(\n <T extends Node = Node, P extends CustomDataType<T> = Array<T>>(\n {\n options,\n expanded = [],\n selected = [],\n selectionLimit = Infinity,\n getRoot: getRoot_,\n getChildren: getChildren_,\n getIcon: getIconBase,\n getLabel = defaultGetLabel,\n getParentId: getParentId_ = defaultGetParentId,\n getType = defaultGetType,\n isExpandable = defaultIsExpandable,\n isSelectable = defaultIsSelectable,\n multiple = true,\n onSelect = noop,\n onCollapse = noop,\n onExpand = () => Promise.resolve(),\n rowRenderer: rowRendererBase,\n maxVisibleNodes = Infinity,\n visibleHeight,\n autoExpandParent = true,\n innerElementType,\n outerElementType,\n onKeyDown,\n children,\n ...props\n }: TreeProps<T, P>,\n ref: React.Ref<TreeRef<T>>\n ) => {\n const rowHeight = defaultRowHeight\n const wrapperRef = React.useRef<HTMLDivElement | null>(null)\n const listRef = React.useRef<FixedSizeList>(null)\n const listInnerRef = React.useRef<HTMLDivElement>(null)\n const listOuterRefRef = React.useRef<HTMLDivElement>(null)\n const [contentMaxWidth, setContentMaxWidth] = React.useState(0)\n\n const getParentId = React.useMemo(() => getParentId_, [])\n\n const defaultGetRoot = React.useCallback(\n (nodes: P): T | T[] =>\n nodes.filter((node: T) => {\n return isRootNode(getParentId(node))\n }),\n [getParentId]\n )\n\n const getRoot = React.useMemo(\n () => getRoot_ || defaultGetRoot,\n [defaultGetRoot]\n )\n\n const rootNodes = React.useMemo(() => {\n const roots = getRoot(options)\n return Array.isArray(roots) ? roots : [roots]\n }, [getRoot, options])\n\n React.useEffect(() => {\n if (!rootNodes.length) {\n console.warn(\n 'Tree must have at least one root node. Look up `Tree#getParentId` for details.'\n )\n }\n }, [rootNodes])\n\n const [isTreeFocused, setIsTreeFocused] = React.useState(false)\n const [containerSize, setContainerSize] = React.useState({\n width: 0,\n height: 0,\n })\n\n const handleContainerResize = React.useCallback(\n (entries: ResizeObserverEntry[]) => {\n if (entries[0]) {\n const { clientHeight: height, clientWidth: width } = entries[0]\n .target as HTMLElement\n setContainerSize({ width, height })\n }\n },\n [setContainerSize]\n )\n\n const setResizeObserverTarget = useResizeObserver(handleContainerResize)\n\n const defaultGetChildren = React.useCallback(\n (node: T) =>\n Array.isArray(options)\n ? options.filter((childNode: T) => getParentId(childNode) === node.id)\n : ([] as T[]),\n [getParentId, options]\n )\n\n const getChildren = getChildren_ || defaultGetChildren\n\n const {\n nodes,\n isExpanded,\n isSelected,\n isLoading,\n highlightedNode,\n isHighlighted: isNodeHighlighted,\n highlight,\n handleSelection,\n handleExpansion,\n setExpanded: _setExpanded,\n setSelected: _setSelected,\n isFileLimitReached,\n listNavigation,\n } = useTree<T>({\n rootNodes,\n expanded,\n selected,\n selectionLimit,\n multiple,\n autoExpandParent,\n onSelect,\n onCollapse,\n onExpand,\n getChildren,\n getParentId,\n })\n\n const setSelected = React.useCallback(\n (selected: T | T[]) => {\n const nodes = Array.isArray(selected) ? selected : [selected]\n\n _setSelected(new Set(nodes.map((node) => node.id)))\n },\n [_setSelected]\n )\n\n const setExpanded = React.useCallback(\n (expanded: T | T[]) => {\n const nodes = Array.isArray(expanded) ? expanded : [expanded]\n\n _setExpanded(new Set(nodes.map((node) => node.id)))\n },\n [_setExpanded]\n )\n\n React.useImperativeHandle(ref, () => ({\n rootEl: wrapperRef.current,\n setSelected,\n setExpanded,\n toggleSelected: (node: T) => handleSelection(node),\n toggleExpanded: (node: T) => handleExpansion(node),\n }))\n\n const defaultGetIcon = React.useCallback(\n (node: T): React.ReactNode => {\n const isFolder = getType(node) === 'branch'\n return isFolder ? <Folder /> : <File />\n },\n [getType]\n )\n\n const getIcon = getIconBase || defaultGetIcon\n\n const isHighlighted = React.useCallback(\n (node: T) => isTreeFocused && isNodeHighlighted(node),\n [isNodeHighlighted, isTreeFocused]\n )\n\n const handleAccessibility = (e: React.KeyboardEvent<HTMLDivElement>) => {\n onKeyDown?.(e)\n const { key } = e\n\n switch (key) {\n case 'Enter':\n e.preventDefault()\n isSelectable(highlightedNode) && handleSelection(highlightedNode)\n break\n case 'Space Bar':\n case ' ':\n e.preventDefault()\n isExpandable(highlightedNode) && handleExpansion(highlightedNode)\n break\n case 'ArrowDown':\n case 'Down':\n e.preventDefault()\n listNavigation.increment()\n break\n case 'ArrowUp':\n case 'Up':\n e.preventDefault()\n listNavigation.decrement()\n break\n }\n }\n\n React.useEffect(() => {\n if (isTreeFocused) {\n listRef.current?.scrollToItem(listNavigation.index)\n }\n }, [isTreeFocused, listNavigation.index])\n\n const defaultRowRenderer = React.useCallback(\n (props: TreeRowProps) => <TreeRow {...props} />,\n []\n )\n\n React.useEffect(() => {\n const rowContentSizes: number[] = []\n\n const childNodes = Array.from(listInnerRef.current?.childNodes || [])\n childNodes.forEach((child) => {\n const rowContent = (child as HTMLElement).querySelector(\n '[data-row-content]'\n )\n\n if (rowContent) {\n const leftPadding = (child as HTMLElement).dataset.padding ?? '0'\n rowContentSizes.push(\n rowContent.scrollWidth + parseInt(leftPadding, 10) + rowRightPadding\n )\n }\n })\n\n const maxSizeRowContent = Math.max(...rowContentSizes) + scrollbarWidth\n setContentMaxWidth(maxSizeRowContent)\n })\n\n const rowRenderer = rowRendererBase || defaultRowRenderer\n\n const itemData = React.useMemo(\n () => ({\n nodes,\n getIcon,\n getLabel,\n getType,\n isExpandable,\n isSelectable,\n isExpanded,\n isSelected,\n isLoading,\n highlight,\n isHighlighted,\n handleSelection,\n handleExpansion,\n rowRenderer,\n isFileLimitReached,\n selectionLimit,\n isTreeFocused,\n treeContainer: wrapperRef.current as HTMLDivElement,\n }),\n [\n getIcon,\n getLabel,\n getType,\n handleExpansion,\n handleSelection,\n highlight,\n isExpandable,\n isExpanded,\n isFileLimitReached,\n isHighlighted,\n isLoading,\n isSelectable,\n isSelected,\n isTreeFocused,\n nodes,\n rowRenderer,\n selectionLimit,\n ]\n )\n\n if (!rootNodes) {\n console.error('Tree must have a valid root node')\n return null\n }\n\n return (\n <StyledTree\n {...props}\n ref={mergeRefs(wrapperRef, setResizeObserverTarget)}\n tabIndex={0}\n onFocus={() => setIsTreeFocused(true)}\n onBlur={() => setIsTreeFocused(false)}\n onKeyDown={handleAccessibility}\n >\n <FixedSizeList\n className=\"size-list\"\n ref={listRef}\n height={\n visibleHeight ||\n Math.min(nodes.length * rowHeight, rowHeight * maxVisibleNodes)\n }\n innerRef={listInnerRef}\n outerRef={listOuterRefRef}\n itemCount={nodes.length}\n itemSize={rowHeight}\n innerElementType={innerElementType}\n outerElementType={outerElementType}\n itemData={itemData}\n width={Math.max(contentMaxWidth, containerSize.width)}\n >\n {TreeNode}\n </FixedSizeList>\n </StyledTree>\n )\n }\n)\n\nconst TreeNode: React.FC<TreeNodeProps> = React.memo(\n ({\n data: { nodes, rowRenderer, highlight, isTreeFocused, ...props },\n index,\n style,\n }) => {\n const node = nodes[index]\n\n const isHighlighted = props.isHighlighted(node)\n const [isMouseOver, setMouseOver] = React.useState(false)\n\n const timer = useTimer({})\n const {\n isVisible: shouldShowTooltip,\n show: showTooltip,\n hide: hideTooltip,\n } = useVisibility({})\n\n React.useEffect(() => {\n if (isHighlighted && !shouldShowTooltip) {\n timer.setTimer(showTooltip, tooltipDelay)\n }\n\n return () => {\n if (isTreeFocused && !isHighlighted && shouldShowTooltip) {\n hideTooltip()\n }\n }\n })\n\n const onMouseEnter = () => {\n setMouseOver(true)\n if (!shouldShowTooltip) {\n timer.setTimer(showTooltip, tooltipDelay)\n }\n highlight(node)\n }\n\n const onMouseLeave = () => {\n setMouseOver(false)\n timer.cancel()\n hideTooltip()\n }\n\n return (\n <StyledTreeRowWrapper\n tabIndex={-1}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n style={style}\n data-padding={getPadding(node.level)}\n >\n {rowRenderer({\n node,\n shouldShowTooltip,\n isMouseOver,\n ...props,\n })}\n </StyledTreeRowWrapper>\n )\n },\n areEqual\n)\n\nconst TreeRow: React.FC<TreeRowProps> = ({\n node,\n getIcon,\n getLabel,\n handleExpansion,\n handleSelection,\n selectionLimit,\n isFileLimitReached,\n shouldShowTooltip,\n isMouseOver,\n treeContainer,\n ...props\n}) => {\n const expanderRef = React.useRef<HTMLDivElement>(null)\n const isSelected = props.isSelected(node)\n const isSelectable = props.isSelectable(node)\n const isExpandable = props.isExpandable(node)\n const isExpanded = props.isExpanded(node)\n const isLoading = props.isLoading(node)\n const isHighlighted = props.isHighlighted(node)\n const nodeType = props.getType(node)\n const rowLabel = getLabel(node)\n\n const onClick = React.useCallback(\n (event: React.MouseEvent) => {\n if (isSelectable && isExpandable) {\n // @ts-ignore\n expanderRef?.current?.contains(event.target)\n ? handleExpansion(node)\n : handleSelection(node)\n } else if (isSelectable) {\n handleSelection(node)\n } else if (isExpandable) {\n handleExpansion(node)\n }\n },\n [handleExpansion, handleSelection, isExpandable, isSelectable, node]\n )\n\n const onMouseDown = React.useCallback(\n (e: React.MouseEvent) => {\n e.preventDefault()\n treeContainer.focus()\n },\n [treeContainer]\n )\n\n return (\n <TreeRowContainer\n level={node.level}\n onClick={onClick}\n onMouseDown={onMouseDown}\n isSelected={isSelected}\n isSelectable={isSelectable}\n isExpandable={isExpandable}\n isHighlighted={isHighlighted}\n isFileLimitReached={isFileLimitReached}\n data-qa=\"core-tree-row-container\"\n >\n {\n // WARNING!\n // Be aware that this data attribute is used for calculations, changing this data attribute will break its operability.\n }\n <StyledTreeRowContent data-row-content>\n <TreeRowChevron\n ref={expanderRef}\n isExpandable={isExpandable}\n isExpanded={isExpanded}\n />\n <TreeRowIcon\n isLoading={isLoading}\n isSelected={isSelected}\n icon={getIcon(node)}\n />\n <TreeRowTooltip\n isSelected={isSelected}\n isSelectable={isSelectable}\n isHighlighted={isHighlighted}\n selectionLimit={selectionLimit}\n isFileLimitReached={isFileLimitReached}\n shouldShowTooltip={shouldShowTooltip}\n isMouseOver={isMouseOver}\n fileName={rowLabel}\n nodeType={nodeType}\n treeContainer={treeContainer}\n >\n <TreeRowName value={rowLabel} />\n </TreeRowTooltip>\n </StyledTreeRowContent>\n </TreeRowContainer>\n )\n}\n\nconst IconContainer: React.FC<IconContainerProps> = ({\n children,\n isSelected,\n ...props\n}) => (\n <StyledIconContainer $isSelected={isSelected} {...props}>\n {children}\n </StyledIconContainer>\n)\n\nconst TreeRowChevron = React.forwardRef<\n HTMLDivElement,\n {\n isExpanded: boolean\n isExpandable: boolean\n }\n>(({ isExpanded, isExpandable }, ref) => {\n return (\n <StyledChevronContainer ref={ref}>\n {isExpandable ? <StyledChevron $isExpanded={isExpanded} /> : null}\n </StyledChevronContainer>\n )\n})\n\nconst TreeRowIcon: React.FC<{\n isSelected: boolean\n isLoading: boolean\n icon: React.ReactNode\n}> = ({ isSelected, isLoading, icon }) => (\n <IconContainer isSelected={isSelected} marginLeft=\"sm\" marginRight=\"sm\">\n {isLoading ? <Spinner size=\"sm\" /> : icon}\n </IconContainer>\n)\n\nconst TreeRowName: React.FC<{ value: string }> = ({ value }) => (\n <StyledFilenameCaption>{value}</StyledFilenameCaption>\n)\n\nconst getSelectionLimitMessage = (selectionLimit: number) => ({\n key: 'selectionLimit',\n options: {\n count: selectionLimit,\n },\n})\n\nconst getUnsupportedFileTypeMessage = (fileName: string) => {\n const { extension, isFilename } = parseFilename(fileName)\n const key = isFilename ? 'specific' : 'unspecific'\n\n return {\n key: `unsupportedFileType.${key}`,\n options: {\n fileType: `.${extension.toUpperCase()}`,\n },\n }\n}\n\nconst TreeRowTooltip: FunctionComponent<\n PropsWithChildren<TreeRowTooltipProps>\n> = ({\n children,\n isHighlighted: isFocused,\n isFileLimitReached,\n isSelectable,\n isSelected,\n nodeType,\n selectionLimit,\n shouldShowTooltip,\n isMouseOver,\n fileName,\n treeContainer,\n}) => {\n const I18n = useI18nContext()\n const rowRef = React.useRef<HTMLDivElement>(null)\n const isUserInteracting = isFocused || isMouseOver\n const isTooltipVisible = isUserInteracting && shouldShowTooltip && !isSelected\n const isFile = nodeType === 'leaf'\n const [isCropped, setCropped] = React.useState(false)\n\n const registerRowEl = useIntersectionObserver(\n (entries) => {\n entries.forEach((entry) => {\n if (\n entry.rootBounds &&\n entry.rootBounds.left - entry.boundingClientRect.left >= 0\n ) {\n setCropped(true)\n return\n }\n setCropped(false)\n })\n },\n {\n root: treeContainer,\n rootMargin: '0px',\n threshold: intersectionThresholds,\n }\n )\n\n const selectionLimitMessage = getSelectionLimitMessage(selectionLimit)\n const unsupportedFileTypeMessage = getUnsupportedFileTypeMessage(fileName)\n\n const message = isSelectable\n ? isFileLimitReached && selectionLimitMessage\n : isFile && unsupportedFileTypeMessage\n\n const trigger = isTooltipVisible && !isCropped && message ? 'always' : 'none'\n\n return (\n <Tooltip\n trigger={trigger}\n overlay={\n message ? I18n.t(`core.tree.${message.key}`, message.options) : null\n }\n placement=\"top-left\"\n >\n <div ref={mergeRefs(rowRef, registerRowEl)}>{children}</div>\n </Tooltip>\n )\n}\n\nconst TreeRowContainer: React.FC<TreeRowContainerProps> = ({\n children,\n isHighlighted,\n isSelected,\n isSelectable,\n isExpandable,\n isFileLimitReached,\n level,\n ...props\n}) => {\n return (\n <StyledTreeRowContainer\n $isSelectable={\n (isSelectable &&\n ((isFileLimitReached && isSelected) || !isFileLimitReached)) ||\n isExpandable\n }\n $isHighlighted={isHighlighted}\n $isSelected={isSelected}\n style={{ paddingLeft: getPadding(level) }}\n {...props}\n >\n {children}\n </StyledTreeRowContainer>\n )\n}\n"],"mappings":"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"}
@@ -5,11 +5,11 @@ import { Typography } from '../Typography/Typography';
5
5
  import { colors } from '../_styles/colors';
6
6
  export var StyledFilenameCaption = /*#__PURE__*/styled(Typography).withConfig({
7
7
  displayName: "StyledFilenameCaption",
8
- componentId: "core-12_20_3__sc-2d45b5-0"
8
+ componentId: "core-12_21_0-cdn_0__sc-2d45b5-0"
9
9
  })(["display:flex;width:100%;"]);
10
10
  export var StyledTree = /*#__PURE__*/styled.div.withConfig({
11
11
  displayName: "StyledTree",
12
- componentId: "core-12_20_3__sc-2d45b5-1"
12
+ componentId: "core-12_21_0-cdn_0__sc-2d45b5-1"
13
13
  })(["width:100%;height:100%;min-height:36px;outline:none;overflow:auto;"]);
14
14
  export var StyledTreeRowContainer = /*#__PURE__*/styled(Typography).withConfig({
15
15
  shouldForwardProp: function shouldForwardProp(prop) {
@@ -17,7 +17,7 @@ export var StyledTreeRowContainer = /*#__PURE__*/styled(Typography).withConfig({
17
17
  }
18
18
  }).withConfig({
19
19
  displayName: "StyledTreeRowContainer",
20
- componentId: "core-12_20_3__sc-2d45b5-2"
20
+ componentId: "core-12_21_0-cdn_0__sc-2d45b5-2"
21
21
  })(["display:flex;align-items:center;height:36px;background:transparent;box-shadow:inset 4px 0px 0px transparent;cursor:default;outline:none;", " &:hover{background:", ";}", " ", ""], function (_ref) {
22
22
  var isSelectable = _ref.isSelectable,
23
23
  $isSelectable = _ref.$isSelectable;
@@ -35,30 +35,30 @@ export var StyledTreeRowContainer = /*#__PURE__*/styled(Typography).withConfig({
35
35
  });
36
36
  export var StyledTreeRowContent = /*#__PURE__*/styled.div.withConfig({
37
37
  displayName: "StyledTreeRowContent",
38
- componentId: "core-12_20_3__sc-2d45b5-3"
38
+ componentId: "core-12_21_0-cdn_0__sc-2d45b5-3"
39
39
  })(["display:flex;align-items:center;"]);
40
40
  export var StyledTreeRowWrapper = /*#__PURE__*/styled.div.withConfig({
41
41
  displayName: "StyledTreeRowWrapper",
42
- componentId: "core-12_20_3__sc-2d45b5-4"
42
+ componentId: "core-12_21_0-cdn_0__sc-2d45b5-4"
43
43
  })(["outline:none;"]);
44
44
  var StyledIconBase = /*#__PURE__*/styled(Box).withConfig({
45
45
  displayName: "StyledIconBase",
46
- componentId: "core-12_20_3__sc-2d45b5-5"
46
+ componentId: "core-12_21_0-cdn_0__sc-2d45b5-5"
47
47
  })(["display:flex;justify-content:center;align-items:center;width:24px;height:24px;min-width:24px;min-height:24px;"]);
48
48
  export var StyledChevronContainer = /*#__PURE__*/styled(StyledIconBase).withConfig({
49
49
  displayName: "StyledChevronContainer",
50
- componentId: "core-12_20_3__sc-2d45b5-6"
50
+ componentId: "core-12_21_0-cdn_0__sc-2d45b5-6"
51
51
  })([""]);
52
52
  export var StyledIconContainer = /*#__PURE__*/styled(StyledIconBase).withConfig({
53
53
  displayName: "StyledIconContainer",
54
- componentId: "core-12_20_3__sc-2d45b5-7"
54
+ componentId: "core-12_21_0-cdn_0__sc-2d45b5-7"
55
55
  })(["color:", ";"], function (_ref4) {
56
56
  var $isSelected = _ref4.$isSelected;
57
57
  return $isSelected ? colors.blue45 : colors.gray40;
58
58
  });
59
59
  export var StyledChevron = /*#__PURE__*/styled(ChevronRight).withConfig({
60
60
  displayName: "StyledChevron",
61
- componentId: "core-12_20_3__sc-2d45b5-8"
61
+ componentId: "core-12_21_0-cdn_0__sc-2d45b5-8"
62
62
  })(["transform:rotate(", "deg);transition:transform 150ms ease-out;"], function (_ref5) {
63
63
  var $isExpanded = _ref5.$isExpanded;
64
64
  return $isExpanded ? 90 : 0;
@@ -5,11 +5,11 @@ import { spacing } from '../_styles/spacing';
5
5
  var inputHeight = 36;
6
6
  export var StyledInput = /*#__PURE__*/styled.input.withConfig({
7
7
  displayName: "StyledInput",
8
- componentId: "core-12_20_3__sc-gpc39h-0"
8
+ componentId: "core-12_21_0-cdn_0__sc-gpc39h-0"
9
9
  })(["", " padding-right:", "px;"], getSearchInputStyles(), spacing.xxl);
10
10
  export var StyledIcon = /*#__PURE__*/styled.div.withConfig({
11
11
  displayName: "StyledIcon",
12
- componentId: "core-12_20_3__sc-gpc39h-1"
12
+ componentId: "core-12_21_0-cdn_0__sc-gpc39h-1"
13
13
  })(["align-items:center;color:", ";display:flex;height:", "px;justify-content:center;pointer-events:", ";position:absolute;right:0;top:0;width:", "px;"], function (p) {
14
14
  return p.disabled ? colors.gray70 : colors.gray45;
15
15
  }, inputHeight, function (p) {
@@ -17,6 +17,6 @@ export var StyledIcon = /*#__PURE__*/styled.div.withConfig({
17
17
  }, inputHeight);
18
18
  export var StyledTypeahead = /*#__PURE__*/styled.div.withConfig({
19
19
  displayName: "StyledTypeahead",
20
- componentId: "core-12_20_3__sc-gpc39h-2"
20
+ componentId: "core-12_21_0-cdn_0__sc-gpc39h-2"
21
21
  })(["position:relative;width:100%;"]);
22
22
  //# sourceMappingURL=Typeahead.styles.js.map
@@ -35,7 +35,7 @@ export var semiboldRules = function semiboldRules() {
35
35
  };
36
36
  export var StyledTypography = /*#__PURE__*/styled.span.withConfig({
37
37
  displayName: "StyledTypography",
38
- componentId: "core-12_20_3__sc-1c4583t-0"
38
+ componentId: "core-12_21_0-cdn_0__sc-1c4583t-0"
39
39
  })(["", " color:", ";font-style:", ";font-weight:", ";", " ", " em,i{font-style:italic;}"], function (_ref) {
40
40
  var _ref$$intent = _ref.$intent,
41
41
  $intent = _ref$$intent === void 0 ? 'body' : _ref$$intent;
@@ -5,11 +5,11 @@ import { colors } from '../_styles/colors';
5
5
  import { getTypographyIntent } from './Typography.styles';
6
6
  var StyledBodyCell = /*#__PURE__*/styled(Table.BodyCell).withConfig({
7
7
  displayName: "StyledBodyCell",
8
- componentId: "core-12_20_3__sc-p4v7d-0"
8
+ componentId: "core-12_21_0-cdn_0__sc-p4v7d-0"
9
9
  })([""]);
10
10
  var StyledTextCell = /*#__PURE__*/styled(Table.TextCell).withConfig({
11
11
  displayName: "StyledTextCell",
12
- componentId: "core-12_20_3__sc-p4v7d-1"
12
+ componentId: "core-12_21_0-cdn_0__sc-p4v7d-1"
13
13
  })(["", " color:", ";"], getTypographyIntent('body'), colors.blue50);
14
14
  function BodyCell() {
15
15
  return /*#__PURE__*/React.createElement(StyledBodyCell, {