@pingux/astro 2.17.0 → 2.18.0-alpha.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 (129) hide show
  1. package/lib/cjs/components/AccordionGridGroup/AccordionGridGroup.test.js +13 -15
  2. package/lib/cjs/components/ArrayField/ArrayField.stories.js +1 -3
  3. package/lib/cjs/components/Calendar/Calendar.test.js +13 -15
  4. package/lib/cjs/components/CodeView/CodeView.test.js +45 -53
  5. package/lib/cjs/components/ComboBoxField/ComboBoxField.stories.js +35 -37
  6. package/lib/cjs/components/ComboBoxField/ComboBoxField.test.js +122 -132
  7. package/lib/cjs/components/CopyText/CopyText.test.js +191 -223
  8. package/lib/cjs/components/DataTable/DataTable.stories.js +75 -79
  9. package/lib/cjs/components/DataTable/DataTable.test.js +569 -629
  10. package/lib/cjs/components/DatePicker/DateField.js +1 -1
  11. package/lib/cjs/components/DatePicker/DatePicker.test.js +81 -87
  12. package/lib/cjs/components/EnvironmentBreadcrumb/EnvironmentBreadcrumb.js +2 -2
  13. package/lib/cjs/components/EnvironmentBreadcrumb/EnvironmentBreadcrumb.test.js +19 -16
  14. package/lib/cjs/components/EnvironmentBreadcrumb/EnvironmentBreadcrumbAxe.test.js +7 -0
  15. package/lib/cjs/components/HelpHint/HelpHint.js +5 -2
  16. package/lib/cjs/components/HelpHint/HelpHint.stories.js +3 -2
  17. package/lib/cjs/components/HelpHint/HelpHint.styles.js +5 -1
  18. package/lib/cjs/components/HelpHint/HelpHint.test.js +145 -146
  19. package/lib/cjs/components/ImageUploadField/ImageUploadField.stories.js +73 -77
  20. package/lib/cjs/components/ImageUploadField/ImageUploadField.test.js +150 -162
  21. package/lib/cjs/components/LinkSelectField/LinkSelectField.stories.js +26 -28
  22. package/lib/cjs/components/LinkSelectField/LinkSelectField.test.js +13 -15
  23. package/lib/cjs/components/ListBox/ListBox.js +1 -1
  24. package/lib/cjs/components/ListBox/ListBox.test.js +13 -15
  25. package/lib/cjs/components/ListBox/Option.js +1 -1
  26. package/lib/cjs/components/ListView/ListView.stories.js +124 -95
  27. package/lib/cjs/components/ListView/ListView.test.js +119 -133
  28. package/lib/cjs/components/ListViewItem/ListViewItem.mdx +1 -0
  29. package/lib/cjs/components/ListViewItem/ListViewItem.stories.js +36 -2
  30. package/lib/cjs/components/ListViewItem/ListViewItem.styles.js +1 -1
  31. package/lib/cjs/components/ListViewItem/controls/ListViewItemMenu.test.js +23 -25
  32. package/lib/cjs/components/ListViewItem/controls/chart/ListViewItemChart.js +102 -0
  33. package/lib/cjs/components/ListViewItem/controls/chart/ListViewItemChart.mdx +11 -0
  34. package/lib/cjs/components/ListViewItem/controls/chart/ListViewItemChart.stories.js +50 -0
  35. package/lib/cjs/components/ListViewItem/controls/chart/ListViewItemChart.styles.js +112 -0
  36. package/lib/cjs/components/ListViewItem/controls/chart/ListViewItemChart.test.js +76 -0
  37. package/lib/cjs/components/ListViewItem/controls/chart/ListViewItemChartAttributes.js +127 -0
  38. package/lib/cjs/components/ListViewItem/controls/chart/chartData.js +45 -0
  39. package/lib/cjs/components/MultivaluesField/MultivaluesField.test.js +61 -72
  40. package/lib/cjs/components/PasswordField/PasswordField.test.js +44 -50
  41. package/lib/cjs/components/RadioGroupField/RadioGroupField.test.js +24 -26
  42. package/lib/cjs/components/ScrollBox/ScrollBox.js +2 -2
  43. package/lib/cjs/components/SelectField/SelectField.stories.js +26 -28
  44. package/lib/cjs/components/SelectFieldBase/SelectFieldBase.test.js +13 -15
  45. package/lib/cjs/components/Stepper/Stepper.test.js +53 -55
  46. package/lib/cjs/components/Tabs/Tabs.js +1 -1
  47. package/lib/cjs/components/Tabs/Tabs.test.js +37 -41
  48. package/lib/cjs/components/TextArea/TextArea.styles.js +7 -1
  49. package/lib/cjs/components/TooltipTrigger/TooltipTrigger.test.js +45 -29
  50. package/lib/cjs/experimental/PanelHeader/controls/PanelHeaderMenu.test.js +23 -25
  51. package/lib/cjs/hooks/useComponentToggle/useComponentToggle.test.js +22 -26
  52. package/lib/cjs/hooks/useCopyToClipboard/useCopyToClipboard.js +42 -44
  53. package/lib/cjs/hooks/useCopyToClipboard/useCopyToClipboard.test.js +12 -14
  54. package/lib/cjs/hooks/useField/useField.js +1 -1
  55. package/lib/cjs/hooks/useImageUploadState/useImageUploadState.js +5 -5
  56. package/lib/cjs/hooks/useLabelHeight/useLabelHeight.js +2 -2
  57. package/lib/cjs/hooks/useOverlappingMenuHoverState/useOverlappingMenuHoverState.test.js +98 -112
  58. package/lib/cjs/index.d.ts +1 -0
  59. package/lib/cjs/index.js +8 -0
  60. package/lib/cjs/styles/variants/variants.js +2 -0
  61. package/lib/cjs/types/index.d.ts +1 -0
  62. package/lib/cjs/types/index.js +17 -6
  63. package/lib/cjs/types/item.d.ts +29 -0
  64. package/lib/cjs/types/item.js +6 -0
  65. package/lib/cjs/utils/testUtils/testAxe.js +25 -28
  66. package/lib/components/AccordionGridGroup/AccordionGridGroup.test.js +13 -15
  67. package/lib/components/ArrayField/ArrayField.stories.js +1 -3
  68. package/lib/components/Box/Box.js +6 -6
  69. package/lib/components/Calendar/Calendar.test.js +13 -15
  70. package/lib/components/CodeView/CodeView.test.js +45 -53
  71. package/lib/components/ComboBoxField/ComboBoxField.stories.js +35 -37
  72. package/lib/components/ComboBoxField/ComboBoxField.test.js +122 -132
  73. package/lib/components/CopyText/CopyText.test.js +191 -223
  74. package/lib/components/DataTable/DataTable.stories.js +75 -79
  75. package/lib/components/DataTable/DataTable.test.js +569 -629
  76. package/lib/components/DatePicker/DateField.js +1 -1
  77. package/lib/components/DatePicker/DatePicker.test.js +81 -87
  78. package/lib/components/EnvironmentBreadcrumb/EnvironmentBreadcrumb.js +2 -2
  79. package/lib/components/EnvironmentBreadcrumb/EnvironmentBreadcrumb.test.js +15 -18
  80. package/lib/components/EnvironmentBreadcrumb/EnvironmentBreadcrumbAxe.test.js +4 -0
  81. package/lib/components/HelpHint/HelpHint.js +5 -2
  82. package/lib/components/HelpHint/HelpHint.stories.js +3 -2
  83. package/lib/components/HelpHint/HelpHint.styles.js +5 -1
  84. package/lib/components/HelpHint/HelpHint.test.js +145 -146
  85. package/lib/components/ImageUploadField/ImageUploadField.stories.js +73 -77
  86. package/lib/components/ImageUploadField/ImageUploadField.test.js +150 -162
  87. package/lib/components/LinkSelectField/LinkSelectField.stories.js +26 -28
  88. package/lib/components/LinkSelectField/LinkSelectField.test.js +13 -15
  89. package/lib/components/ListBox/ListBox.js +1 -1
  90. package/lib/components/ListBox/ListBox.test.js +13 -15
  91. package/lib/components/ListBox/Option.js +1 -1
  92. package/lib/components/ListView/ListView.stories.js +118 -94
  93. package/lib/components/ListView/ListView.test.js +119 -133
  94. package/lib/components/ListViewItem/ListViewItem.mdx +1 -0
  95. package/lib/components/ListViewItem/ListViewItem.stories.js +30 -2
  96. package/lib/components/ListViewItem/ListViewItem.styles.js +1 -1
  97. package/lib/components/ListViewItem/controls/ListViewItemMenu.test.js +23 -25
  98. package/lib/components/ListViewItem/controls/chart/ListViewItemChart.js +88 -0
  99. package/lib/components/ListViewItem/controls/chart/ListViewItemChart.mdx +11 -0
  100. package/lib/components/ListViewItem/controls/chart/ListViewItemChart.stories.js +35 -0
  101. package/lib/components/ListViewItem/controls/chart/ListViewItemChart.styles.js +104 -0
  102. package/lib/components/ListViewItem/controls/chart/ListViewItemChart.test.js +73 -0
  103. package/lib/components/ListViewItem/controls/chart/ListViewItemChartAttributes.js +118 -0
  104. package/lib/components/ListViewItem/controls/chart/chartData.js +37 -0
  105. package/lib/components/MultivaluesField/MultivaluesField.test.js +61 -72
  106. package/lib/components/PasswordField/PasswordField.test.js +44 -50
  107. package/lib/components/RadioGroupField/RadioGroupField.test.js +24 -26
  108. package/lib/components/ScrollBox/ScrollBox.js +2 -2
  109. package/lib/components/SelectField/SelectField.stories.js +26 -28
  110. package/lib/components/SelectFieldBase/SelectFieldBase.test.js +13 -15
  111. package/lib/components/Stepper/Stepper.test.js +53 -55
  112. package/lib/components/Tabs/Tabs.js +1 -1
  113. package/lib/components/Tabs/Tabs.test.js +37 -41
  114. package/lib/components/TextArea/TextArea.styles.js +7 -1
  115. package/lib/components/TooltipTrigger/TooltipTrigger.test.js +45 -29
  116. package/lib/experimental/PanelHeader/controls/PanelHeaderMenu.test.js +23 -25
  117. package/lib/hooks/useComponentToggle/useComponentToggle.test.js +22 -26
  118. package/lib/hooks/useCopyToClipboard/useCopyToClipboard.js +42 -44
  119. package/lib/hooks/useCopyToClipboard/useCopyToClipboard.test.js +12 -14
  120. package/lib/hooks/useField/useField.js +1 -1
  121. package/lib/hooks/useImageUploadState/useImageUploadState.js +5 -5
  122. package/lib/hooks/useLabelHeight/useLabelHeight.js +2 -2
  123. package/lib/hooks/useOverlappingMenuHoverState/useOverlappingMenuHoverState.test.js +98 -112
  124. package/lib/index.js +1 -0
  125. package/lib/styles/variants/variants.js +2 -0
  126. package/lib/types/index.js +1 -0
  127. package/lib/types/item.js +1 -0
  128. package/lib/utils/testUtils/testAxe.js +25 -28
  129. package/package.json +5 -4
@@ -19,14 +19,14 @@ import _typeof from "@babel/runtime-corejs3/helpers/esm/typeof";
19
19
  import _extends from "@babel/runtime-corejs3/helpers/esm/extends";
20
20
  import _asyncToGenerator from "@babel/runtime-corejs3/helpers/esm/asyncToGenerator";
21
21
  import _defineProperty from "@babel/runtime-corejs3/helpers/esm/defineProperty";
22
- 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 exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, defineProperty = _Object$defineProperty || function (obj, key, desc) { obj[key] = desc.value; }, $Symbol = "function" == typeof _Symbol ? _Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return _Object$defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = _Object$create(protoGenerator.prototype), context = new Context(tryLocsList || []); return defineProperty(generator, "_invoke", { value: makeInvokeMethod(innerFn, self, context) }), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = _Object$getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = _Object$create(IteratorPrototype); function defineIteratorMethods(prototype) { var _context38; _forEachInstanceProperty(_context38 = ["next", "throw", "return"]).call(_context38, function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; defineProperty(this, "_invoke", { value: function value(method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; } function maybeInvokeDelegate(delegate, context) { var methodName = context.method, method = delegate.iterator[methodName]; if (undefined === method) return context.delegate = null, "throw" === methodName && delegate.iterator["return"] && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method) || "return" !== methodName && (context.method = "throw", context.arg = new TypeError("The iterator does not provide a '" + methodName + "' method")), ContinueSentinel; var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], _forEachInstanceProperty(tryLocsList).call(tryLocsList, pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), defineProperty(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return _Object$setPrototypeOf ? _Object$setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = _Object$create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = _Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (val) { var object = Object(val), keys = []; for (var key in object) { keys.push(key); } return _reverseInstanceProperty(keys).call(keys), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { var _context39; if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, _forEachInstanceProperty(_context39 = this.tryEntries).call(_context39, resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+_sliceInstanceProperty(name).call(name, 1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, "catch": function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }
22
+ 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 exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, defineProperty = _Object$defineProperty || function (obj, key, desc) { obj[key] = desc.value; }, $Symbol = "function" == typeof _Symbol ? _Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return _Object$defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = _Object$create(protoGenerator.prototype), context = new Context(tryLocsList || []); return defineProperty(generator, "_invoke", { value: makeInvokeMethod(innerFn, self, context) }), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = _Object$getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = _Object$create(IteratorPrototype); function defineIteratorMethods(prototype) { var _context38; _forEachInstanceProperty(_context38 = ["next", "throw", "return"]).call(_context38, function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; defineProperty(this, "_invoke", { value: function value(method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; } function maybeInvokeDelegate(delegate, context) { var methodName = context.method, method = delegate.iterator[methodName]; if (undefined === method) return context.delegate = null, "throw" === methodName && delegate.iterator["return"] && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method) || "return" !== methodName && (context.method = "throw", context.arg = new TypeError("The iterator does not provide a '" + methodName + "' method")), ContinueSentinel; var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], _forEachInstanceProperty(tryLocsList).call(tryLocsList, pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), defineProperty(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return _Object$setPrototypeOf ? _Object$setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = _Object$create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = _Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (val) { var object = Object(val), keys = []; for (var key in object) keys.push(key); return _reverseInstanceProperty(keys).call(keys), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { var _context39; if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, _forEachInstanceProperty(_context39 = this.tryEntries).call(_context39, resetTryEntry), !skipTempReset) for (var name in this) "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+_sliceInstanceProperty(name).call(name, 1)) && (this[name] = undefined); }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, "catch": function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }
23
23
  import _Promise from "@babel/runtime-corejs3/core-js-stable/promise";
24
24
  import _setTimeout from "@babel/runtime-corejs3/core-js-stable/set-timeout";
25
25
  import _sortInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/sort";
26
26
  import _parseInt from "@babel/runtime-corejs3/core-js-stable/parse-int";
27
27
  function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof _Symbol !== "undefined" && _getIteratorMethod(o) || o["@@iterator"]; if (!it) { if (_Array$isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; }
28
28
  function _unsupportedIterableToArray(o, minLen) { var _context37; if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = _sliceInstanceProperty(_context37 = Object.prototype.toString.call(o)).call(_context37, 8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return _Array$from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
29
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
29
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
30
30
  function ownKeys(object, enumerableOnly) { var keys = _Object$keys(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); enumerableOnly && (symbols = _filterInstanceProperty(symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
31
31
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var _context35, _context36; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty(_context35 = ownKeys(Object(source), !0)).call(_context35, function (key) { _defineProperty(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source)) : _forEachInstanceProperty(_context36 = ownKeys(Object(source))).call(_context36, function (key) { _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } return target; }
32
32
  /* eslint-disable testing-library/no-node-access */
@@ -63,15 +63,15 @@ var columns = [{
63
63
  key: 'continent'
64
64
  }];
65
65
  var rows = [{
66
- id: 1,
67
- country: 'USA',
68
- population: 320000000,
69
- continent: 'North America'
70
- }, {
71
66
  id: 2,
72
67
  country: 'Canada',
73
68
  population: 37000000,
74
69
  continent: 'North America'
70
+ }, {
71
+ id: 1,
72
+ country: 'USA',
73
+ population: 320000000,
74
+ continent: 'North America'
75
75
  }, {
76
76
  id: 3,
77
77
  country: 'China',
@@ -163,10 +163,10 @@ describe('Static DataTable', function () {
163
163
  expect(headers[2]).toHaveTextContent(columns[2].name);
164
164
  var tRows = within(rowgroups[1]).getAllByRole('row');
165
165
  expect(tRows).toHaveLength(4);
166
- expect(tRows[0]).toHaveAttribute('aria-rowindex', '2');
167
- expect(tRows[1]).toHaveAttribute('aria-rowindex', '3');
168
- expect(tRows[2]).toHaveAttribute('aria-rowindex', '4');
169
- expect(tRows[3]).toHaveAttribute('aria-rowindex', '5');
166
+ expect(tRows[0]).toHaveAttribute('aria-rowindex', '1');
167
+ expect(tRows[1]).toHaveAttribute('aria-rowindex', '2');
168
+ expect(tRows[2]).toHaveAttribute('aria-rowindex', '3');
169
+ expect(tRows[3]).toHaveAttribute('aria-rowindex', '4');
170
170
  var rowheader = within(tRows[0]).getByRole('rowheader');
171
171
  expect(rowheader).toHaveTextContent(rows[0].country);
172
172
  expect(rowheader).toHaveAttribute('aria-colindex', '1');
@@ -208,7 +208,7 @@ describe('Static DataTable', function () {
208
208
  focusCell(view, 'China');
209
209
  moveFocus('ArrowUp');
210
210
  // eslint-disable-next-line jest-dom/prefer-focus
211
- expect(document.activeElement).toBe(getCell(view, 'Canada'));
211
+ expect(document.activeElement).toBe(getCell(view, 'USA'));
212
212
  });
213
213
  test('should move focus to the previous cell in a row with ArrowDown', function () {
214
214
  var view = staticDataTable();
@@ -435,121 +435,109 @@ describe('Sortable with useAsyncList', function () {
435
435
  test('should call load function', /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {
436
436
  var load, _renderHook, result;
437
437
  return _regeneratorRuntime().wrap(function _callee2$(_context2) {
438
- while (1) {
439
- switch (_context2.prev = _context2.next) {
440
- case 0:
441
- load = jest.fn().mockImplementation(getItems);
442
- _renderHook = renderHook(function () {
443
- return useAsyncList({
444
- load: load
445
- });
446
- }), result = _renderHook.result;
447
- expect(load).toHaveBeenCalledTimes(1);
448
- expect(result.current.items).toEqual([]);
449
- _context2.next = 6;
450
- return actHooks( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
451
- return _regeneratorRuntime().wrap(function _callee$(_context) {
452
- while (1) {
453
- switch (_context.prev = _context.next) {
454
- case 0:
455
- jest.runAllTimers();
456
- case 1:
457
- case "end":
458
- return _context.stop();
459
- }
460
- }
461
- }, _callee);
462
- })));
463
- case 6:
464
- expect(result.current.items).toEqual(ITEMS);
465
- case 7:
466
- case "end":
467
- return _context2.stop();
468
- }
438
+ while (1) switch (_context2.prev = _context2.next) {
439
+ case 0:
440
+ load = jest.fn().mockImplementation(getItems);
441
+ _renderHook = renderHook(function () {
442
+ return useAsyncList({
443
+ load: load
444
+ });
445
+ }), result = _renderHook.result;
446
+ expect(load).toHaveBeenCalledTimes(1);
447
+ expect(result.current.items).toEqual([]);
448
+ _context2.next = 6;
449
+ return actHooks( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
450
+ return _regeneratorRuntime().wrap(function _callee$(_context) {
451
+ while (1) switch (_context.prev = _context.next) {
452
+ case 0:
453
+ jest.runAllTimers();
454
+ case 1:
455
+ case "end":
456
+ return _context.stop();
457
+ }
458
+ }, _callee);
459
+ })));
460
+ case 6:
461
+ expect(result.current.items).toEqual(ITEMS);
462
+ case 7:
463
+ case "end":
464
+ return _context2.stop();
469
465
  }
470
466
  }, _callee2);
471
467
  })));
472
468
  test('should call sort function', /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee6() {
473
469
  var load, sort, _renderHook2, result, args;
474
470
  return _regeneratorRuntime().wrap(function _callee6$(_context7) {
475
- while (1) {
476
- switch (_context7.prev = _context7.next) {
477
- case 0:
478
- load = jest.fn().mockImplementation(getItems);
479
- sort = jest.fn().mockImplementation(getItems2);
480
- _renderHook2 = renderHook(function () {
481
- return useAsyncList({
482
- load: load,
483
- sort: sort,
484
- initialSortDescriptor: {
485
- direction: 'ASC'
486
- }
487
- });
488
- }), result = _renderHook2.result;
489
- expect(load).toHaveBeenCalledTimes(1);
490
- args = load.mock.calls[0][0];
491
- expect(args.sortDescriptor).toEqual({
492
- direction: 'ASC'
471
+ while (1) switch (_context7.prev = _context7.next) {
472
+ case 0:
473
+ load = jest.fn().mockImplementation(getItems);
474
+ sort = jest.fn().mockImplementation(getItems2);
475
+ _renderHook2 = renderHook(function () {
476
+ return useAsyncList({
477
+ load: load,
478
+ sort: sort,
479
+ initialSortDescriptor: {
480
+ direction: 'ASC'
481
+ }
493
482
  });
494
- expect(result.current.items).toEqual([]);
495
- _context7.next = 9;
496
- return actHooks( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3() {
497
- return _regeneratorRuntime().wrap(function _callee3$(_context3) {
498
- while (1) {
499
- switch (_context3.prev = _context3.next) {
500
- case 0:
501
- jest.runOnlyPendingTimers();
502
- case 1:
503
- case "end":
504
- return _context3.stop();
505
- }
506
- }
507
- }, _callee3);
508
- })));
509
- case 9:
510
- expect(result.current.items).toEqual(ITEMS);
511
- _context7.next = 12;
512
- return actHooks( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee4() {
513
- var _context4;
514
- return _regeneratorRuntime().wrap(function _callee4$(_context5) {
515
- while (1) {
516
- switch (_context5.prev = _context5.next) {
517
- case 0:
518
- _sortInstanceProperty(_context4 = result.current).call(_context4, {
519
- column: 'name'
520
- });
521
- case 1:
522
- case "end":
523
- return _context5.stop();
524
- }
525
- }
526
- }, _callee4);
527
- })));
528
- case 12:
529
- expect(result.current.items).toEqual(ITEMS);
530
- expect(sort).toHaveBeenCalledTimes(1);
531
- args = sort.mock.calls[0][0];
532
- expect(args.items).toStrictEqual(ITEMS);
533
- _context7.next = 18;
534
- return actHooks( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee5() {
535
- return _regeneratorRuntime().wrap(function _callee5$(_context6) {
536
- while (1) {
537
- switch (_context6.prev = _context6.next) {
538
- case 0:
539
- jest.runOnlyPendingTimers();
540
- case 1:
541
- case "end":
542
- return _context6.stop();
543
- }
544
- }
545
- }, _callee5);
546
- })));
547
- case 18:
548
- expect(result.current.items).toEqual(ITEMS2);
549
- case 19:
550
- case "end":
551
- return _context7.stop();
552
- }
483
+ }), result = _renderHook2.result;
484
+ expect(load).toHaveBeenCalledTimes(1);
485
+ args = load.mock.calls[0][0];
486
+ expect(args.sortDescriptor).toEqual({
487
+ direction: 'ASC'
488
+ });
489
+ expect(result.current.items).toEqual([]);
490
+ _context7.next = 9;
491
+ return actHooks( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3() {
492
+ return _regeneratorRuntime().wrap(function _callee3$(_context3) {
493
+ while (1) switch (_context3.prev = _context3.next) {
494
+ case 0:
495
+ jest.runOnlyPendingTimers();
496
+ case 1:
497
+ case "end":
498
+ return _context3.stop();
499
+ }
500
+ }, _callee3);
501
+ })));
502
+ case 9:
503
+ expect(result.current.items).toEqual(ITEMS);
504
+ _context7.next = 12;
505
+ return actHooks( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee4() {
506
+ var _context4;
507
+ return _regeneratorRuntime().wrap(function _callee4$(_context5) {
508
+ while (1) switch (_context5.prev = _context5.next) {
509
+ case 0:
510
+ _sortInstanceProperty(_context4 = result.current).call(_context4, {
511
+ column: 'name'
512
+ });
513
+ case 1:
514
+ case "end":
515
+ return _context5.stop();
516
+ }
517
+ }, _callee4);
518
+ })));
519
+ case 12:
520
+ expect(result.current.items).toEqual(ITEMS);
521
+ expect(sort).toHaveBeenCalledTimes(1);
522
+ args = sort.mock.calls[0][0];
523
+ expect(args.items).toStrictEqual(ITEMS);
524
+ _context7.next = 18;
525
+ return actHooks( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee5() {
526
+ return _regeneratorRuntime().wrap(function _callee5$(_context6) {
527
+ while (1) switch (_context6.prev = _context6.next) {
528
+ case 0:
529
+ jest.runOnlyPendingTimers();
530
+ case 1:
531
+ case "end":
532
+ return _context6.stop();
533
+ }
534
+ }, _callee5);
535
+ })));
536
+ case 18:
537
+ expect(result.current.items).toEqual(ITEMS2);
538
+ case 19:
539
+ case "end":
540
+ return _context7.stop();
553
541
  }
554
542
  }, _callee6);
555
543
  })));
@@ -569,16 +557,14 @@ describe('Sortable DataTable with useAsyncList', function () {
569
557
  function _load() {
570
558
  _load = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee15() {
571
559
  return _regeneratorRuntime().wrap(function _callee15$(_context18) {
572
- while (1) {
573
- switch (_context18.prev = _context18.next) {
574
- case 0:
575
- return _context18.abrupt("return", {
576
- items: rows
577
- });
578
- case 1:
579
- case "end":
580
- return _context18.stop();
581
- }
560
+ while (1) switch (_context18.prev = _context18.next) {
561
+ case 0:
562
+ return _context18.abrupt("return", {
563
+ items: rows
564
+ });
565
+ case 1:
566
+ case "end":
567
+ return _context18.stop();
582
568
  }
583
569
  }, _callee15);
584
570
  }));
@@ -591,25 +577,23 @@ describe('Sortable DataTable with useAsyncList', function () {
591
577
  _sort = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee16(list) {
592
578
  var _context19;
593
579
  return _regeneratorRuntime().wrap(function _callee16$(_context20) {
594
- while (1) {
595
- switch (_context20.prev = _context20.next) {
596
- case 0:
597
- // eslint-disable-next-line no-param-reassign
598
- list.items = _sortInstanceProperty(_context19 = list.items).call(_context19, function (a, b) {
599
- var first = a[list.sortDescriptor.column];
600
- var second = b[list.sortDescriptor.column];
601
- var cmp = (_parseInt(first) || first) < (_parseInt(second) || second) // eslint-disable-line
602
- ? -1 : 1;
603
- if (list.sortDescriptor.direction === 'descending') {
604
- cmp *= -1;
605
- }
606
- return cmp;
607
- });
608
- return _context20.abrupt("return", list);
609
- case 2:
610
- case "end":
611
- return _context20.stop();
612
- }
580
+ while (1) switch (_context20.prev = _context20.next) {
581
+ case 0:
582
+ // eslint-disable-next-line no-param-reassign
583
+ list.items = _sortInstanceProperty(_context19 = list.items).call(_context19, function (a, b) {
584
+ var first = a[list.sortDescriptor.column];
585
+ var second = b[list.sortDescriptor.column];
586
+ var cmp = (_parseInt(first) || first) < (_parseInt(second) || second) // eslint-disable-line
587
+ ? -1 : 1;
588
+ if (list.sortDescriptor.direction === 'descending') {
589
+ cmp *= -1;
590
+ }
591
+ return cmp;
592
+ });
593
+ return _context20.abrupt("return", list);
594
+ case 2:
595
+ case "end":
596
+ return _context20.stop();
613
597
  }
614
598
  }, _callee16);
615
599
  }));
@@ -635,180 +619,164 @@ describe('Sortable DataTable with useAsyncList', function () {
635
619
  test('sort by country column A => Z', /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee10() {
636
620
  var _renderHook3, result, sortableTable, rowgroups, tRows;
637
621
  return _regeneratorRuntime().wrap(function _callee10$(_context12) {
638
- while (1) {
639
- switch (_context12.prev = _context12.next) {
640
- case 0:
641
- _renderHook3 = renderHook(function () {
642
- return useAsyncList({
643
- load: load,
644
- sort: sort,
645
- initialSortDescriptor: {
646
- column: 'country',
647
- direction: 'ascending'
648
- }
649
- });
650
- }), result = _renderHook3.result;
651
- _context12.next = 3;
652
- return actHooks( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee7() {
653
- return _regeneratorRuntime().wrap(function _callee7$(_context8) {
654
- while (1) {
655
- switch (_context8.prev = _context8.next) {
656
- case 0:
657
- jest.runOnlyPendingTimers();
658
- case 1:
659
- case "end":
660
- return _context8.stop();
661
- }
662
- }
663
- }, _callee7);
664
- })));
665
- case 3:
666
- _context12.next = 5;
667
- return actHooks( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee8() {
668
- var _context9;
669
- return _regeneratorRuntime().wrap(function _callee8$(_context10) {
670
- while (1) {
671
- switch (_context10.prev = _context10.next) {
672
- case 0:
673
- _sortInstanceProperty(_context9 = result.current).call(_context9);
674
- case 1:
675
- case "end":
676
- return _context10.stop();
677
- }
678
- }
679
- }, _callee8);
680
- })));
681
- case 5:
682
- _context12.next = 7;
683
- return actHooks( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee9() {
684
- return _regeneratorRuntime().wrap(function _callee9$(_context11) {
685
- while (1) {
686
- switch (_context11.prev = _context11.next) {
687
- case 0:
688
- jest.runOnlyPendingTimers();
689
- case 1:
690
- case "end":
691
- return _context11.stop();
692
- }
693
- }
694
- }, _callee9);
695
- })));
696
- case 7:
697
- sortableDataTable({
698
- result: result
622
+ while (1) switch (_context12.prev = _context12.next) {
623
+ case 0:
624
+ _renderHook3 = renderHook(function () {
625
+ return useAsyncList({
626
+ load: load,
627
+ sort: sort,
628
+ initialSortDescriptor: {
629
+ column: 'country',
630
+ direction: 'ascending'
631
+ }
699
632
  });
700
- sortableTable = screen.getByTestId(testId);
701
- expect(sortableTable).toBeInTheDocument();
702
- expect(sortableTable).toBeVisible();
703
- expect(sortableTable).toHaveAttribute('aria-label', 'Custom table with sortable content');
704
- expect(sortableTable).toHaveAttribute('data-testid', testId);
705
- expect(sortableTable).toHaveAttribute('aria-rowcount', '5');
706
- expect(sortableTable).toHaveAttribute('aria-colcount', '3');
707
- rowgroups = within(sortableTable).getAllByRole('rowgroup');
708
- tRows = within(rowgroups[1]).getAllByRole('row'); // verify country column is sorted a -> z
709
- expect(tRows).toHaveLength(4);
710
- expect(tRows[0]).toHaveAttribute('aria-rowindex', '2');
711
- expect(tRows[0]).toHaveTextContent('Canada');
712
- expect(tRows[1]).toHaveAttribute('aria-rowindex', '3');
713
- expect(tRows[1]).toHaveTextContent('China');
714
- expect(tRows[2]).toHaveAttribute('aria-rowindex', '4');
715
- expect(tRows[2]).toHaveTextContent('France');
716
- expect(tRows[3]).toHaveAttribute('aria-rowindex', '5');
717
- expect(tRows[3]).toHaveTextContent('USA');
718
- case 26:
719
- case "end":
720
- return _context12.stop();
721
- }
633
+ }), result = _renderHook3.result;
634
+ _context12.next = 3;
635
+ return actHooks( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee7() {
636
+ return _regeneratorRuntime().wrap(function _callee7$(_context8) {
637
+ while (1) switch (_context8.prev = _context8.next) {
638
+ case 0:
639
+ jest.runOnlyPendingTimers();
640
+ case 1:
641
+ case "end":
642
+ return _context8.stop();
643
+ }
644
+ }, _callee7);
645
+ })));
646
+ case 3:
647
+ _context12.next = 5;
648
+ return actHooks( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee8() {
649
+ var _context9;
650
+ return _regeneratorRuntime().wrap(function _callee8$(_context10) {
651
+ while (1) switch (_context10.prev = _context10.next) {
652
+ case 0:
653
+ _sortInstanceProperty(_context9 = result.current).call(_context9);
654
+ case 1:
655
+ case "end":
656
+ return _context10.stop();
657
+ }
658
+ }, _callee8);
659
+ })));
660
+ case 5:
661
+ _context12.next = 7;
662
+ return actHooks( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee9() {
663
+ return _regeneratorRuntime().wrap(function _callee9$(_context11) {
664
+ while (1) switch (_context11.prev = _context11.next) {
665
+ case 0:
666
+ jest.runOnlyPendingTimers();
667
+ case 1:
668
+ case "end":
669
+ return _context11.stop();
670
+ }
671
+ }, _callee9);
672
+ })));
673
+ case 7:
674
+ sortableDataTable({
675
+ result: result
676
+ });
677
+ sortableTable = screen.getByTestId(testId);
678
+ expect(sortableTable).toBeInTheDocument();
679
+ expect(sortableTable).toBeVisible();
680
+ expect(sortableTable).toHaveAttribute('aria-label', 'Custom table with sortable content');
681
+ expect(sortableTable).toHaveAttribute('data-testid', testId);
682
+ expect(sortableTable).toHaveAttribute('aria-rowcount', '5');
683
+ expect(sortableTable).toHaveAttribute('aria-colcount', '3');
684
+ rowgroups = within(sortableTable).getAllByRole('rowgroup');
685
+ tRows = within(rowgroups[1]).getAllByRole('row'); // verify country column is sorted a -> z
686
+ expect(tRows).toHaveLength(4);
687
+ expect(tRows[0]).toHaveAttribute('aria-rowindex', '1');
688
+ expect(tRows[0]).toHaveTextContent('Canada');
689
+ expect(tRows[1]).toHaveAttribute('aria-rowindex', '2');
690
+ expect(tRows[1]).toHaveTextContent('China');
691
+ expect(tRows[2]).toHaveAttribute('aria-rowindex', '3');
692
+ expect(tRows[2]).toHaveTextContent('France');
693
+ expect(tRows[3]).toHaveAttribute('aria-rowindex', '4');
694
+ expect(tRows[3]).toHaveTextContent('USA');
695
+ case 26:
696
+ case "end":
697
+ return _context12.stop();
722
698
  }
723
699
  }, _callee10);
724
700
  })));
725
701
  test('sort by country column Z => A', /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee14() {
726
702
  var _renderHook4, result, sortableTable, rowgroups, tRows;
727
703
  return _regeneratorRuntime().wrap(function _callee14$(_context17) {
728
- while (1) {
729
- switch (_context17.prev = _context17.next) {
730
- case 0:
731
- _renderHook4 = renderHook(function () {
732
- return useAsyncList({
733
- load: load,
734
- sort: sort,
735
- initialSortDescriptor: {
736
- column: 'country',
737
- direction: 'descending'
738
- }
739
- });
740
- }), result = _renderHook4.result;
741
- _context17.next = 3;
742
- return actHooks( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee11() {
743
- return _regeneratorRuntime().wrap(function _callee11$(_context13) {
744
- while (1) {
745
- switch (_context13.prev = _context13.next) {
746
- case 0:
747
- jest.runOnlyPendingTimers();
748
- case 1:
749
- case "end":
750
- return _context13.stop();
751
- }
752
- }
753
- }, _callee11);
754
- })));
755
- case 3:
756
- _context17.next = 5;
757
- return actHooks( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee12() {
758
- var _context14;
759
- return _regeneratorRuntime().wrap(function _callee12$(_context15) {
760
- while (1) {
761
- switch (_context15.prev = _context15.next) {
762
- case 0:
763
- _sortInstanceProperty(_context14 = result.current).call(_context14);
764
- case 1:
765
- case "end":
766
- return _context15.stop();
767
- }
768
- }
769
- }, _callee12);
770
- })));
771
- case 5:
772
- _context17.next = 7;
773
- return actHooks( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee13() {
774
- return _regeneratorRuntime().wrap(function _callee13$(_context16) {
775
- while (1) {
776
- switch (_context16.prev = _context16.next) {
777
- case 0:
778
- jest.runOnlyPendingTimers();
779
- case 1:
780
- case "end":
781
- return _context16.stop();
782
- }
783
- }
784
- }, _callee13);
785
- })));
786
- case 7:
787
- sortableDataTable({
788
- result: result
704
+ while (1) switch (_context17.prev = _context17.next) {
705
+ case 0:
706
+ _renderHook4 = renderHook(function () {
707
+ return useAsyncList({
708
+ load: load,
709
+ sort: sort,
710
+ initialSortDescriptor: {
711
+ column: 'country',
712
+ direction: 'descending'
713
+ }
789
714
  });
790
- sortableTable = screen.getByTestId(testId);
791
- expect(sortableTable).toBeInTheDocument();
792
- expect(sortableTable).toBeVisible();
793
- expect(sortableTable).toHaveAttribute('aria-label', 'Custom table with sortable content');
794
- expect(sortableTable).toHaveAttribute('data-testid', testId);
795
- expect(sortableTable).toHaveAttribute('aria-rowcount', '5');
796
- expect(sortableTable).toHaveAttribute('aria-colcount', '3');
797
- rowgroups = within(sortableTable).getAllByRole('rowgroup');
798
- tRows = within(rowgroups[1]).getAllByRole('row'); // verify country column is sorted z -> a
799
- expect(tRows).toHaveLength(4);
800
- expect(tRows[0]).toHaveAttribute('aria-rowindex', '2');
801
- expect(tRows[0]).toHaveTextContent('USA');
802
- expect(tRows[1]).toHaveAttribute('aria-rowindex', '3');
803
- expect(tRows[1]).toHaveTextContent('France');
804
- expect(tRows[2]).toHaveAttribute('aria-rowindex', '4');
805
- expect(tRows[2]).toHaveTextContent('China');
806
- expect(tRows[3]).toHaveAttribute('aria-rowindex', '5');
807
- expect(tRows[3]).toHaveTextContent('Canada');
808
- case 26:
809
- case "end":
810
- return _context17.stop();
811
- }
715
+ }), result = _renderHook4.result;
716
+ _context17.next = 3;
717
+ return actHooks( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee11() {
718
+ return _regeneratorRuntime().wrap(function _callee11$(_context13) {
719
+ while (1) switch (_context13.prev = _context13.next) {
720
+ case 0:
721
+ jest.runOnlyPendingTimers();
722
+ case 1:
723
+ case "end":
724
+ return _context13.stop();
725
+ }
726
+ }, _callee11);
727
+ })));
728
+ case 3:
729
+ _context17.next = 5;
730
+ return actHooks( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee12() {
731
+ var _context14;
732
+ return _regeneratorRuntime().wrap(function _callee12$(_context15) {
733
+ while (1) switch (_context15.prev = _context15.next) {
734
+ case 0:
735
+ _sortInstanceProperty(_context14 = result.current).call(_context14);
736
+ case 1:
737
+ case "end":
738
+ return _context15.stop();
739
+ }
740
+ }, _callee12);
741
+ })));
742
+ case 5:
743
+ _context17.next = 7;
744
+ return actHooks( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee13() {
745
+ return _regeneratorRuntime().wrap(function _callee13$(_context16) {
746
+ while (1) switch (_context16.prev = _context16.next) {
747
+ case 0:
748
+ jest.runOnlyPendingTimers();
749
+ case 1:
750
+ case "end":
751
+ return _context16.stop();
752
+ }
753
+ }, _callee13);
754
+ })));
755
+ case 7:
756
+ sortableDataTable({
757
+ result: result
758
+ });
759
+ sortableTable = screen.getByTestId(testId);
760
+ expect(sortableTable).toBeInTheDocument();
761
+ expect(sortableTable).toBeVisible();
762
+ expect(sortableTable).toHaveAttribute('aria-label', 'Custom table with sortable content');
763
+ expect(sortableTable).toHaveAttribute('data-testid', testId);
764
+ expect(sortableTable).toHaveAttribute('aria-rowcount', '5');
765
+ expect(sortableTable).toHaveAttribute('aria-colcount', '3');
766
+ rowgroups = within(sortableTable).getAllByRole('rowgroup');
767
+ tRows = within(rowgroups[1]).getAllByRole('row'); // verify country column is sorted z -> a
768
+ expect(tRows).toHaveLength(4);
769
+ expect(tRows[0]).toHaveAttribute('aria-rowindex', '1');
770
+ expect(tRows[0]).toHaveTextContent('USA');
771
+ expect(tRows[1]).toHaveAttribute('aria-rowindex', '2');
772
+ expect(tRows[1]).toHaveTextContent('France');
773
+ expect(tRows[2]).toHaveAttribute('aria-rowindex', '3');
774
+ expect(tRows[2]).toHaveTextContent('China');
775
+ expect(tRows[3]).toHaveAttribute('aria-rowindex', '4');
776
+ expect(tRows[3]).toHaveTextContent('Canada');
777
+ case 26:
778
+ case "end":
779
+ return _context17.stop();
812
780
  }
813
781
  }, _callee14);
814
782
  })));
@@ -845,328 +813,300 @@ describe('Sortable DataTable with useAsyncList', function () {
845
813
  test('click on column header should sort column A => Z', /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee24() {
846
814
  var _renderHook5, result, sortableTable, headers;
847
815
  return _regeneratorRuntime().wrap(function _callee24$(_context28) {
848
- while (1) {
849
- switch (_context28.prev = _context28.next) {
850
- case 0:
851
- _renderHook5 = renderHook(function () {
852
- return useAsyncList({
853
- load: function load() {
854
- return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee17() {
855
- return _regeneratorRuntime().wrap(function _callee17$(_context21) {
856
- while (1) {
857
- switch (_context21.prev = _context21.next) {
858
- case 0:
859
- return _context21.abrupt("return", {
860
- items: rows
861
- });
862
- case 1:
863
- case "end":
864
- return _context21.stop();
865
- }
866
- }
867
- }, _callee17);
868
- }))();
869
- },
870
- sort: function sort(_ref18) {
871
- return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee18() {
872
- var items, sortDescriptor;
873
- return _regeneratorRuntime().wrap(function _callee18$(_context22) {
874
- while (1) {
875
- switch (_context22.prev = _context22.next) {
876
- case 0:
877
- items = _ref18.items, sortDescriptor = _ref18.sortDescriptor;
878
- return _context22.abrupt("return", {
879
- items: _sortInstanceProperty(items).call(items, function (a, b) {
880
- var first = a[sortDescriptor.column];
881
- var second = b[sortDescriptor.column];
882
- // eslint-disable-next-line radix
883
- var cmp = (_parseInt(first) || first) < (_parseInt(second) || second) ? -1 : 1;
884
- if (sortDescriptor.direction === 'descending') {
885
- cmp *= -1;
886
- }
887
- return cmp;
888
- })
889
- });
890
- case 2:
891
- case "end":
892
- return _context22.stop();
893
- }
894
- }
895
- }, _callee18);
896
- }))();
897
- },
898
- initialSortDescriptor: {
899
- column: 'country',
900
- direction: 'descending'
901
- }
902
- });
903
- }), result = _renderHook5.result;
904
- _context28.next = 3;
905
- return actHooks( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee19() {
906
- return _regeneratorRuntime().wrap(function _callee19$(_context23) {
907
- while (1) {
908
- switch (_context23.prev = _context23.next) {
909
- case 0:
910
- jest.runOnlyPendingTimers();
911
- case 1:
912
- case "end":
913
- return _context23.stop();
914
- }
915
- }
916
- }, _callee19);
917
- })));
918
- case 3:
919
- sortableDataTable({
920
- result: result
816
+ while (1) switch (_context28.prev = _context28.next) {
817
+ case 0:
818
+ _renderHook5 = renderHook(function () {
819
+ return useAsyncList({
820
+ load: function load() {
821
+ return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee17() {
822
+ return _regeneratorRuntime().wrap(function _callee17$(_context21) {
823
+ while (1) switch (_context21.prev = _context21.next) {
824
+ case 0:
825
+ return _context21.abrupt("return", {
826
+ items: rows
827
+ });
828
+ case 1:
829
+ case "end":
830
+ return _context21.stop();
831
+ }
832
+ }, _callee17);
833
+ }))();
834
+ },
835
+ sort: function sort(_ref18) {
836
+ return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee18() {
837
+ var items, sortDescriptor;
838
+ return _regeneratorRuntime().wrap(function _callee18$(_context22) {
839
+ while (1) switch (_context22.prev = _context22.next) {
840
+ case 0:
841
+ items = _ref18.items, sortDescriptor = _ref18.sortDescriptor;
842
+ return _context22.abrupt("return", {
843
+ items: _sortInstanceProperty(items).call(items, function (a, b) {
844
+ var first = a[sortDescriptor.column];
845
+ var second = b[sortDescriptor.column];
846
+ // eslint-disable-next-line radix
847
+ var cmp = (_parseInt(first) || first) < (_parseInt(second) || second) ? -1 : 1;
848
+ if (sortDescriptor.direction === 'descending') {
849
+ cmp *= -1;
850
+ }
851
+ return cmp;
852
+ })
853
+ });
854
+ case 2:
855
+ case "end":
856
+ return _context22.stop();
857
+ }
858
+ }, _callee18);
859
+ }))();
860
+ },
861
+ initialSortDescriptor: {
862
+ column: 'country',
863
+ direction: 'descending'
864
+ }
921
865
  });
922
- _context28.next = 6;
923
- return actHooks( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee20() {
924
- return _regeneratorRuntime().wrap(function _callee20$(_context24) {
925
- while (1) {
926
- switch (_context24.prev = _context24.next) {
927
- case 0:
928
- jest.runOnlyPendingTimers();
929
- case 1:
930
- case "end":
931
- return _context24.stop();
932
- }
933
- }
934
- }, _callee20);
935
- })));
936
- case 6:
937
- sortableTable = screen.getByTestId(testId);
938
- expect(sortableTable).toBeInTheDocument();
939
- expect(sortableTable).toBeVisible();
940
- headers = within(sortableTable).getAllByRole('columnheader');
941
- expect(headers).toHaveLength(3);
942
- expect(headers[0]).toHaveAttribute('aria-colindex', '1');
943
- expect(headers[1]).toHaveAttribute('aria-colindex', '2');
944
- expect(headers[2]).toHaveAttribute('aria-colindex', '3');
945
- expect(headers[0]).toHaveTextContent(columns[0].name);
946
- expect(headers[1]).toHaveTextContent(columns[1].name);
947
- expect(headers[2]).toHaveTextContent(columns[2].name);
948
- expect(result.current.items[0].country).toBe('USA');
949
- expect(result.current.items[1].country).toBe('Canada');
950
- expect(result.current.items[2].country).toBe('China');
951
- expect(result.current.items[3].country).toBe('France');
952
- expect(result.current.items[0].population).toBe(320000000);
953
- expect(result.current.items[1].population).toBe(37000000);
954
- expect(result.current.items[2].population).toBe(1398000000);
955
- expect(result.current.items[3].population).toBe(67000000);
956
- expect(result.current.items[0].continent).toBe('North America');
957
- expect(result.current.items[1].continent).toBe('North America');
958
- expect(result.current.items[2].continent).toBe('Asia');
959
- expect(result.current.items[3].continent).toBe('Europe');
960
- _context28.next = 31;
961
- return actHooks( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee21() {
962
- return _regeneratorRuntime().wrap(function _callee21$(_context25) {
963
- while (1) {
964
- switch (_context25.prev = _context25.next) {
965
- case 0:
966
- fireEvent.click(headers[0]);
967
- case 1:
968
- case "end":
969
- return _context25.stop();
970
- }
971
- }
972
- }, _callee21);
973
- })));
974
- case 31:
975
- expect(result.current.items[0].country).toBe('Canada');
976
- expect(result.current.items[1].country).toBe('China');
977
- expect(result.current.items[2].country).toBe('France');
978
- expect(result.current.items[3].country).toBe('USA');
979
- _context28.next = 37;
980
- return actHooks( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee22() {
981
- return _regeneratorRuntime().wrap(function _callee22$(_context26) {
982
- while (1) {
983
- switch (_context26.prev = _context26.next) {
984
- case 0:
985
- fireEvent.click(headers[1]);
986
- case 1:
987
- case "end":
988
- return _context26.stop();
989
- }
990
- }
991
- }, _callee22);
992
- })));
993
- case 37:
994
- expect(result.current.items[0].population).toBe(37000000);
995
- expect(result.current.items[1].population).toBe(67000000);
996
- expect(result.current.items[2].population).toBe(320000000);
997
- expect(result.current.items[3].population).toBe(1398000000);
998
- _context28.next = 43;
999
- return actHooks( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee23() {
1000
- return _regeneratorRuntime().wrap(function _callee23$(_context27) {
1001
- while (1) {
1002
- switch (_context27.prev = _context27.next) {
1003
- case 0:
1004
- fireEvent.click(headers[2]);
1005
- case 1:
1006
- case "end":
1007
- return _context27.stop();
1008
- }
1009
- }
1010
- }, _callee23);
1011
- })));
1012
- case 43:
1013
- expect(result.current.items[0].continent).toBe('Asia');
1014
- expect(result.current.items[1].continent).toBe('Europe');
1015
- expect(result.current.items[2].continent).toBe('North America');
1016
- expect(result.current.items[3].continent).toBe('North America');
1017
- case 47:
1018
- case "end":
1019
- return _context28.stop();
1020
- }
866
+ }), result = _renderHook5.result;
867
+ _context28.next = 3;
868
+ return actHooks( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee19() {
869
+ return _regeneratorRuntime().wrap(function _callee19$(_context23) {
870
+ while (1) switch (_context23.prev = _context23.next) {
871
+ case 0:
872
+ jest.runOnlyPendingTimers();
873
+ case 1:
874
+ case "end":
875
+ return _context23.stop();
876
+ }
877
+ }, _callee19);
878
+ })));
879
+ case 3:
880
+ sortableDataTable({
881
+ result: result
882
+ });
883
+ _context28.next = 6;
884
+ return actHooks( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee20() {
885
+ return _regeneratorRuntime().wrap(function _callee20$(_context24) {
886
+ while (1) switch (_context24.prev = _context24.next) {
887
+ case 0:
888
+ jest.runOnlyPendingTimers();
889
+ case 1:
890
+ case "end":
891
+ return _context24.stop();
892
+ }
893
+ }, _callee20);
894
+ })));
895
+ case 6:
896
+ sortableTable = screen.getByTestId(testId);
897
+ expect(sortableTable).toBeInTheDocument();
898
+ expect(sortableTable).toBeVisible();
899
+ headers = within(sortableTable).getAllByRole('columnheader');
900
+ expect(headers).toHaveLength(3);
901
+ expect(headers[0]).toHaveAttribute('aria-colindex', '1');
902
+ expect(headers[1]).toHaveAttribute('aria-colindex', '2');
903
+ expect(headers[2]).toHaveAttribute('aria-colindex', '3');
904
+ expect(headers[0]).toHaveTextContent(columns[0].name);
905
+ expect(headers[1]).toHaveTextContent(columns[1].name);
906
+ expect(headers[2]).toHaveTextContent(columns[2].name);
907
+ expect(result.current.items[0].country).toBe('Canada');
908
+ expect(result.current.items[1].country).toBe('USA');
909
+ expect(result.current.items[2].country).toBe('China');
910
+ expect(result.current.items[3].country).toBe('France');
911
+ expect(result.current.items[0].population).toBe(37000000);
912
+ expect(result.current.items[1].population).toBe(320000000);
913
+ expect(result.current.items[2].population).toBe(1398000000);
914
+ expect(result.current.items[3].population).toBe(67000000);
915
+ expect(result.current.items[0].continent).toBe('North America');
916
+ expect(result.current.items[1].continent).toBe('North America');
917
+ expect(result.current.items[2].continent).toBe('Asia');
918
+ expect(result.current.items[3].continent).toBe('Europe');
919
+ _context28.next = 31;
920
+ return actHooks( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee21() {
921
+ return _regeneratorRuntime().wrap(function _callee21$(_context25) {
922
+ while (1) switch (_context25.prev = _context25.next) {
923
+ case 0:
924
+ fireEvent.click(headers[0]);
925
+ case 1:
926
+ case "end":
927
+ return _context25.stop();
928
+ }
929
+ }, _callee21);
930
+ })));
931
+ case 31:
932
+ expect(result.current.items[0].country).toBe('Canada');
933
+ expect(result.current.items[1].country).toBe('China');
934
+ expect(result.current.items[2].country).toBe('France');
935
+ expect(result.current.items[3].country).toBe('USA');
936
+ _context28.next = 37;
937
+ return actHooks( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee22() {
938
+ return _regeneratorRuntime().wrap(function _callee22$(_context26) {
939
+ while (1) switch (_context26.prev = _context26.next) {
940
+ case 0:
941
+ fireEvent.click(headers[1]);
942
+ case 1:
943
+ case "end":
944
+ return _context26.stop();
945
+ }
946
+ }, _callee22);
947
+ })));
948
+ case 37:
949
+ expect(result.current.items[0].population).toBe(37000000);
950
+ expect(result.current.items[1].population).toBe(67000000);
951
+ expect(result.current.items[2].population).toBe(320000000);
952
+ expect(result.current.items[3].population).toBe(1398000000);
953
+ _context28.next = 43;
954
+ return actHooks( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee23() {
955
+ return _regeneratorRuntime().wrap(function _callee23$(_context27) {
956
+ while (1) switch (_context27.prev = _context27.next) {
957
+ case 0:
958
+ fireEvent.click(headers[2]);
959
+ case 1:
960
+ case "end":
961
+ return _context27.stop();
962
+ }
963
+ }, _callee23);
964
+ })));
965
+ case 43:
966
+ expect(result.current.items[0].continent).toBe('Asia');
967
+ expect(result.current.items[1].continent).toBe('Europe');
968
+ expect(result.current.items[2].continent).toBe('North America');
969
+ expect(result.current.items[3].continent).toBe('North America');
970
+ case 47:
971
+ case "end":
972
+ return _context28.stop();
1021
973
  }
1022
974
  }, _callee24);
1023
975
  })));
1024
976
  test('click on column header should sort column Z => A', /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee30() {
1025
977
  var _renderHook6, result, sortableTable, headers;
1026
978
  return _regeneratorRuntime().wrap(function _callee30$(_context34) {
1027
- while (1) {
1028
- switch (_context34.prev = _context34.next) {
1029
- case 0:
1030
- _renderHook6 = renderHook(function () {
1031
- return useAsyncList({
1032
- load: function load() {
1033
- return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee25() {
1034
- return _regeneratorRuntime().wrap(function _callee25$(_context29) {
1035
- while (1) {
1036
- switch (_context29.prev = _context29.next) {
1037
- case 0:
1038
- return _context29.abrupt("return", {
1039
- items: rows
1040
- });
1041
- case 1:
1042
- case "end":
1043
- return _context29.stop();
1044
- }
1045
- }
1046
- }, _callee25);
1047
- }))();
1048
- },
1049
- sort: function sort(_ref25) {
1050
- return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee26() {
1051
- var items, sortDescriptor;
1052
- return _regeneratorRuntime().wrap(function _callee26$(_context30) {
1053
- while (1) {
1054
- switch (_context30.prev = _context30.next) {
1055
- case 0:
1056
- items = _ref25.items, sortDescriptor = _ref25.sortDescriptor;
1057
- return _context30.abrupt("return", {
1058
- items: _sortInstanceProperty(items).call(items, function (a, b) {
1059
- var first = a[sortDescriptor.column];
1060
- var second = b[sortDescriptor.column];
1061
- // eslint-disable-next-line radix
1062
- var cmp = (_parseInt(first) || first) < (_parseInt(second) || second) ? -1 : 1;
1063
- if (sortDescriptor.direction === 'descending') {
1064
- cmp *= -1;
1065
- }
1066
- return cmp;
1067
- })
1068
- });
1069
- case 2:
1070
- case "end":
1071
- return _context30.stop();
1072
- }
1073
- }
1074
- }, _callee26);
1075
- }))();
1076
- },
1077
- initialSortDescriptor: {
1078
- column: 'country',
1079
- direction: 'ascending'
1080
- }
1081
- });
1082
- }), result = _renderHook6.result;
1083
- _context34.next = 3;
1084
- return actHooks( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee27() {
1085
- return _regeneratorRuntime().wrap(function _callee27$(_context31) {
1086
- while (1) {
1087
- switch (_context31.prev = _context31.next) {
1088
- case 0:
1089
- jest.runOnlyPendingTimers();
1090
- case 1:
1091
- case "end":
1092
- return _context31.stop();
1093
- }
1094
- }
1095
- }, _callee27);
1096
- })));
1097
- case 3:
1098
- sortableDataTable({
1099
- result: result
979
+ while (1) switch (_context34.prev = _context34.next) {
980
+ case 0:
981
+ _renderHook6 = renderHook(function () {
982
+ return useAsyncList({
983
+ load: function load() {
984
+ return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee25() {
985
+ return _regeneratorRuntime().wrap(function _callee25$(_context29) {
986
+ while (1) switch (_context29.prev = _context29.next) {
987
+ case 0:
988
+ return _context29.abrupt("return", {
989
+ items: rows
990
+ });
991
+ case 1:
992
+ case "end":
993
+ return _context29.stop();
994
+ }
995
+ }, _callee25);
996
+ }))();
997
+ },
998
+ sort: function sort(_ref25) {
999
+ return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee26() {
1000
+ var items, sortDescriptor;
1001
+ return _regeneratorRuntime().wrap(function _callee26$(_context30) {
1002
+ while (1) switch (_context30.prev = _context30.next) {
1003
+ case 0:
1004
+ items = _ref25.items, sortDescriptor = _ref25.sortDescriptor;
1005
+ return _context30.abrupt("return", {
1006
+ items: _sortInstanceProperty(items).call(items, function (a, b) {
1007
+ var first = a[sortDescriptor.column];
1008
+ var second = b[sortDescriptor.column];
1009
+ // eslint-disable-next-line radix
1010
+ var cmp = (_parseInt(first) || first) < (_parseInt(second) || second) ? -1 : 1;
1011
+ if (sortDescriptor.direction === 'descending') {
1012
+ cmp *= -1;
1013
+ }
1014
+ return cmp;
1015
+ })
1016
+ });
1017
+ case 2:
1018
+ case "end":
1019
+ return _context30.stop();
1020
+ }
1021
+ }, _callee26);
1022
+ }))();
1023
+ },
1024
+ initialSortDescriptor: {
1025
+ column: 'country',
1026
+ direction: 'ascending'
1027
+ }
1100
1028
  });
1101
- _context34.next = 6;
1102
- return actHooks( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee28() {
1103
- return _regeneratorRuntime().wrap(function _callee28$(_context32) {
1104
- while (1) {
1105
- switch (_context32.prev = _context32.next) {
1106
- case 0:
1107
- jest.runOnlyPendingTimers();
1108
- case 1:
1109
- case "end":
1110
- return _context32.stop();
1111
- }
1112
- }
1113
- }, _callee28);
1114
- })));
1115
- case 6:
1116
- sortableTable = screen.getByTestId(testId);
1117
- expect(sortableTable).toBeInTheDocument();
1118
- expect(sortableTable).toBeVisible();
1119
- headers = within(sortableTable).getAllByRole('columnheader');
1120
- expect(headers).toHaveLength(3);
1121
- expect(headers[0]).toHaveAttribute('aria-colindex', '1');
1122
- expect(headers[1]).toHaveAttribute('aria-colindex', '2');
1123
- expect(headers[2]).toHaveAttribute('aria-colindex', '3');
1124
- expect(headers[0]).toHaveTextContent(columns[0].name);
1125
- expect(headers[1]).toHaveTextContent(columns[1].name);
1126
- expect(headers[2]).toHaveTextContent(columns[2].name);
1127
- expect(result.current.items[0].country).toBe('USA');
1128
- expect(result.current.items[1].country).toBe('Canada');
1129
- expect(result.current.items[2].country).toBe('China');
1130
- expect(result.current.items[3].country).toBe('France');
1131
- expect(result.current.items[0].population).toBe(320000000);
1132
- expect(result.current.items[1].population).toBe(37000000);
1133
- expect(result.current.items[2].population).toBe(1398000000);
1134
- expect(result.current.items[3].population).toBe(67000000);
1135
- expect(result.current.items[0].continent).toBe('North America');
1136
- expect(result.current.items[1].continent).toBe('North America');
1137
- expect(result.current.items[2].continent).toBe('Asia');
1138
- expect(result.current.items[3].continent).toBe('Europe');
1139
- _context34.next = 31;
1140
- return actHooks( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee29() {
1141
- return _regeneratorRuntime().wrap(function _callee29$(_context33) {
1142
- while (1) {
1143
- switch (_context33.prev = _context33.next) {
1144
- case 0:
1145
- fireEvent.click(headers[0]);
1146
- case 1:
1147
- case "end":
1148
- return _context33.stop();
1149
- }
1150
- }
1151
- }, _callee29);
1152
- })));
1153
- case 31:
1154
- expect(result.current.items[0].country).toBe('Canada');
1155
- expect(result.current.items[1].country).toBe('China');
1156
- expect(result.current.items[2].country).toBe('France');
1157
- expect(result.current.items[3].country).toBe('USA');
1158
- expect(result.current.items[0].continent).toBe('North America');
1159
- expect(result.current.items[1].continent).toBe('Asia');
1160
- expect(result.current.items[2].continent).toBe('Europe');
1161
- expect(result.current.items[3].continent).toBe('North America');
1162
- expect(result.current.items[0].population).toBe(37000000);
1163
- expect(result.current.items[1].population).toBe(1398000000);
1164
- expect(result.current.items[2].population).toBe(67000000);
1165
- expect(result.current.items[3].population).toBe(320000000);
1166
- case 43:
1167
- case "end":
1168
- return _context34.stop();
1169
- }
1029
+ }), result = _renderHook6.result;
1030
+ _context34.next = 3;
1031
+ return actHooks( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee27() {
1032
+ return _regeneratorRuntime().wrap(function _callee27$(_context31) {
1033
+ while (1) switch (_context31.prev = _context31.next) {
1034
+ case 0:
1035
+ jest.runOnlyPendingTimers();
1036
+ case 1:
1037
+ case "end":
1038
+ return _context31.stop();
1039
+ }
1040
+ }, _callee27);
1041
+ })));
1042
+ case 3:
1043
+ sortableDataTable({
1044
+ result: result
1045
+ });
1046
+ _context34.next = 6;
1047
+ return actHooks( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee28() {
1048
+ return _regeneratorRuntime().wrap(function _callee28$(_context32) {
1049
+ while (1) switch (_context32.prev = _context32.next) {
1050
+ case 0:
1051
+ jest.runOnlyPendingTimers();
1052
+ case 1:
1053
+ case "end":
1054
+ return _context32.stop();
1055
+ }
1056
+ }, _callee28);
1057
+ })));
1058
+ case 6:
1059
+ sortableTable = screen.getByTestId(testId);
1060
+ expect(sortableTable).toBeInTheDocument();
1061
+ expect(sortableTable).toBeVisible();
1062
+ headers = within(sortableTable).getAllByRole('columnheader');
1063
+ expect(headers).toHaveLength(3);
1064
+ expect(headers[0]).toHaveAttribute('aria-colindex', '1');
1065
+ expect(headers[1]).toHaveAttribute('aria-colindex', '2');
1066
+ expect(headers[2]).toHaveAttribute('aria-colindex', '3');
1067
+ expect(headers[0]).toHaveTextContent(columns[0].name);
1068
+ expect(headers[1]).toHaveTextContent(columns[1].name);
1069
+ expect(headers[2]).toHaveTextContent(columns[2].name);
1070
+ expect(result.current.items[0].country).toBe('Canada');
1071
+ expect(result.current.items[1].country).toBe('USA');
1072
+ expect(result.current.items[2].country).toBe('China');
1073
+ expect(result.current.items[3].country).toBe('France');
1074
+ expect(result.current.items[0].population).toBe(37000000);
1075
+ expect(result.current.items[1].population).toBe(320000000);
1076
+ expect(result.current.items[2].population).toBe(1398000000);
1077
+ expect(result.current.items[3].population).toBe(67000000);
1078
+ expect(result.current.items[0].continent).toBe('North America');
1079
+ expect(result.current.items[1].continent).toBe('North America');
1080
+ expect(result.current.items[2].continent).toBe('Asia');
1081
+ expect(result.current.items[3].continent).toBe('Europe');
1082
+ _context34.next = 31;
1083
+ return actHooks( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee29() {
1084
+ return _regeneratorRuntime().wrap(function _callee29$(_context33) {
1085
+ while (1) switch (_context33.prev = _context33.next) {
1086
+ case 0:
1087
+ fireEvent.click(headers[0]);
1088
+ case 1:
1089
+ case "end":
1090
+ return _context33.stop();
1091
+ }
1092
+ }, _callee29);
1093
+ })));
1094
+ case 31:
1095
+ expect(result.current.items[0].country).toBe('Canada');
1096
+ expect(result.current.items[1].country).toBe('China');
1097
+ expect(result.current.items[2].country).toBe('France');
1098
+ expect(result.current.items[3].country).toBe('USA');
1099
+ expect(result.current.items[0].continent).toBe('North America');
1100
+ expect(result.current.items[1].continent).toBe('Asia');
1101
+ expect(result.current.items[2].continent).toBe('Europe');
1102
+ expect(result.current.items[3].continent).toBe('North America');
1103
+ expect(result.current.items[0].population).toBe(37000000);
1104
+ expect(result.current.items[1].population).toBe(1398000000);
1105
+ expect(result.current.items[2].population).toBe(67000000);
1106
+ expect(result.current.items[3].population).toBe(320000000);
1107
+ case 43:
1108
+ case "end":
1109
+ return _context34.stop();
1170
1110
  }
1171
1111
  }, _callee30);
1172
1112
  })));