linear-react-components-ui 1.0.2 → 1.0.3-beta.1

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 (331) hide show
  1. package/lib/@types/Align.d.ts +1 -1
  2. package/lib/@types/ButtonTypes.d.ts +1 -1
  3. package/lib/@types/ColorStyles.d.ts +1 -1
  4. package/lib/@types/DataCombo.d.ts +1 -1
  5. package/lib/@types/Icon.d.ts +1 -1
  6. package/lib/@types/LabelStyles.d.ts +1 -1
  7. package/lib/@types/Period.d.ts +1 -1
  8. package/lib/@types/PermissionAttr.d.ts +2 -2
  9. package/lib/@types/PointerEvents.d.ts +1 -1
  10. package/lib/@types/Position.d.ts +1 -1
  11. package/lib/@types/PositionAlert.d.ts +1 -1
  12. package/lib/@types/Size.d.ts +1 -1
  13. package/lib/@types/SizePixels.d.ts +1 -1
  14. package/lib/alerts/AlertContainer.js +21 -5
  15. package/lib/alerts/AlertProvider.js +45 -15
  16. package/lib/alerts/BaseAlert.js +20 -4
  17. package/lib/alerts/Message.js +32 -21
  18. package/lib/alerts/alert.spec.js +133 -0
  19. package/lib/alerts/helpers.js +2 -0
  20. package/lib/alerts/index.d.ts +1 -4
  21. package/lib/alerts/index.js +4 -0
  22. package/lib/alerts/types.d.ts +4 -4
  23. package/lib/alerts/withAlert.js +12 -1
  24. package/lib/avatar/avatar.spec.js +190 -0
  25. package/lib/avatar/index.js +35 -20
  26. package/lib/badge/badge.spec.js +127 -0
  27. package/lib/badge/index.js +14 -9
  28. package/lib/buttons/ActivateButton.js +6 -0
  29. package/lib/buttons/AddButton.js +7 -0
  30. package/lib/buttons/Button.js +15 -2
  31. package/lib/buttons/ButtonGroups.js +4 -0
  32. package/lib/buttons/CancelButton.js +11 -1
  33. package/lib/buttons/DangerButton.js +11 -1
  34. package/lib/buttons/DefaultButton.js +81 -45
  35. package/lib/buttons/DestroyButton.js +12 -1
  36. package/lib/buttons/EditButton.js +6 -0
  37. package/lib/buttons/InactivateButton.js +6 -0
  38. package/lib/buttons/InfoButton.js +11 -1
  39. package/lib/buttons/PrimaryButton.js +11 -1
  40. package/lib/buttons/RestoreButton.js +6 -0
  41. package/lib/buttons/SaveButton.js +11 -1
  42. package/lib/buttons/SpinnerLoading.js +230 -0
  43. package/lib/buttons/SuccessButton.js +11 -1
  44. package/lib/buttons/WarningButton.js +11 -1
  45. package/lib/buttons/button_container/index.js +11 -5
  46. package/lib/buttons/buttons.spec.js +504 -0
  47. package/lib/buttons/index.d.ts +1 -4
  48. package/lib/buttons/index.js +18 -0
  49. package/lib/buttons/split_button/index.js +17 -11
  50. package/lib/calendar/DangerCalendar.js +11 -1
  51. package/lib/calendar/InfoCalendar.js +11 -1
  52. package/lib/calendar/PrimaryCalendar.js +11 -1
  53. package/lib/calendar/SuccessCalendar.js +11 -1
  54. package/lib/calendar/WarningCalendar.js +11 -1
  55. package/lib/calendar/base/Day.js +13 -2
  56. package/lib/calendar/base/Month.js +18 -1
  57. package/lib/calendar/base/Week.js +18 -2
  58. package/lib/calendar/base/helpers.js +24 -8
  59. package/lib/calendar/base/index.js +37 -13
  60. package/lib/calendar/calendar.spec.js +171 -0
  61. package/lib/calendar/index.d.ts +1 -4
  62. package/lib/calendar/index.js +8 -0
  63. package/lib/checkbox/Label.js +7 -1
  64. package/lib/checkbox/checkbox.spec.js +215 -0
  65. package/lib/checkbox/index.js +53 -28
  66. package/lib/checkbox/types.d.ts +2 -2
  67. package/lib/dialog/Alert.js +8 -0
  68. package/lib/dialog/Custom.js +17 -5
  69. package/lib/dialog/Error.js +8 -0
  70. package/lib/dialog/Information.js +8 -0
  71. package/lib/dialog/Question.js +15 -4
  72. package/lib/dialog/Warning.js +8 -0
  73. package/lib/dialog/base/Content.js +6 -1
  74. package/lib/dialog/base/Footer.js +4 -0
  75. package/lib/dialog/base/Header.js +13 -5
  76. package/lib/dialog/base/index.js +28 -7
  77. package/lib/dialog/base/style.js +2 -0
  78. package/lib/dialog/dialog.spec.js +488 -0
  79. package/lib/dialog/form/index.js +29 -9
  80. package/lib/dialog/index.d.ts +1 -4
  81. package/lib/dialog/index.js +9 -0
  82. package/lib/drawer/Content.d.ts +0 -1
  83. package/lib/drawer/Content.js +13 -2
  84. package/lib/drawer/Drawer.d.ts +0 -1
  85. package/lib/drawer/Drawer.js +55 -22
  86. package/lib/drawer/Drawer.spec.js +258 -0
  87. package/lib/drawer/Header.d.ts +0 -1
  88. package/lib/drawer/Header.js +27 -10
  89. package/lib/drawer/helpers.d.ts +0 -1
  90. package/lib/drawer/helpers.js +4 -0
  91. package/lib/drawer/index.d.ts +0 -1
  92. package/lib/drawer/index.js +8 -0
  93. package/lib/drawer/types.d.ts +1 -2
  94. package/lib/dropdown/Popup.js +32 -19
  95. package/lib/dropdown/dropdown.spec.js +169 -0
  96. package/lib/dropdown/helper.js +4 -0
  97. package/lib/dropdown/withDropdown.js +47 -18
  98. package/lib/fieldset/fieldset.spec.js +329 -0
  99. package/lib/fieldset/index.js +46 -21
  100. package/lib/form/Field.js +42 -16
  101. package/lib/form/FieldArray.js +32 -15
  102. package/lib/form/FieldNumber.js +20 -6
  103. package/lib/form/FieldPeriod.js +21 -9
  104. package/lib/form/form.spec.js +293 -0
  105. package/lib/form/helpers.js +30 -5
  106. package/lib/form/index.js +91 -36
  107. package/lib/form/types.d.ts +6 -6
  108. package/lib/form/withFieldHOC.js +34 -15
  109. package/lib/form/withFormSecurity.js +28 -5
  110. package/lib/gridlayout/GridCol.js +11 -5
  111. package/lib/gridlayout/GridRow.js +9 -3
  112. package/lib/gridlayout/gridLayout.spec.js +169 -0
  113. package/lib/gridlayout/index.d.ts +1 -4
  114. package/lib/gridlayout/index.js +4 -0
  115. package/lib/icons/icons.spec.js +86 -0
  116. package/lib/icons/index.js +26 -16
  117. package/lib/icons/types.d.ts +1 -1
  118. package/lib/index.d.ts +1 -1
  119. package/lib/index.js +10 -0
  120. package/lib/inputs/base/InputTextBase.js +75 -50
  121. package/lib/inputs/base/base.spec.js +690 -0
  122. package/lib/inputs/base/helpers.d.ts +1 -1
  123. package/lib/inputs/base/helpers.js +40 -7
  124. package/lib/inputs/base/index.js +1 -0
  125. package/lib/inputs/base/types.d.ts +1 -0
  126. package/lib/inputs/color/color_input.spec.js +174 -0
  127. package/lib/inputs/color/index.js +38 -11
  128. package/lib/inputs/date/Dialog.js +7 -2
  129. package/lib/inputs/date/Dropdown.js +8 -1
  130. package/lib/inputs/date/date.spec.js +354 -0
  131. package/lib/inputs/date/helpers.js +11 -2
  132. package/lib/inputs/date/index.js +101 -48
  133. package/lib/inputs/file/DefaultFile.js +42 -13
  134. package/lib/inputs/file/DragDropFile.js +90 -37
  135. package/lib/inputs/file/File.js +25 -4
  136. package/lib/inputs/file/FileButtonSettings.js +11 -5
  137. package/lib/inputs/file/helpers.js +5 -0
  138. package/lib/inputs/file/index.d.ts +1 -4
  139. package/lib/inputs/file/index.js +6 -0
  140. package/lib/inputs/file/types.d.ts +1 -1
  141. package/lib/inputs/inputHOC.d.ts +1 -2
  142. package/lib/inputs/inputHOC.js +34 -10
  143. package/lib/inputs/mask/BaseMask.js +17 -1
  144. package/lib/inputs/mask/Cnpj.js +37 -12
  145. package/lib/inputs/mask/Cpf.js +33 -10
  146. package/lib/inputs/mask/Phone.js +6 -0
  147. package/lib/inputs/mask/ZipCode.js +6 -0
  148. package/lib/inputs/mask/helpers.d.ts +1 -2
  149. package/lib/inputs/mask/helpers.js +20 -8
  150. package/lib/inputs/mask/imaskHOC.d.ts +1 -2
  151. package/lib/inputs/mask/imaskHOC.js +83 -52
  152. package/lib/inputs/mask/index.d.ts +1 -4
  153. package/lib/inputs/mask/index.js +7 -0
  154. package/lib/inputs/mask/input_mask.spec.js +607 -0
  155. package/lib/inputs/multiSelect/ActionButtons.js +13 -4
  156. package/lib/inputs/multiSelect/Dropdown.js +45 -22
  157. package/lib/inputs/multiSelect/helper.js +4 -2
  158. package/lib/inputs/multiSelect/index.js +104 -40
  159. package/lib/inputs/number/BaseNumber.d.ts +1 -2
  160. package/lib/inputs/number/BaseNumber.js +16 -3
  161. package/lib/inputs/number/Currency.d.ts +1 -2
  162. package/lib/inputs/number/Currency.js +7 -1
  163. package/lib/inputs/number/Decimal.d.ts +1 -2
  164. package/lib/inputs/number/Decimal.js +5 -0
  165. package/lib/inputs/number/format_number.js +7 -0
  166. package/lib/inputs/number/index.d.ts +1 -2
  167. package/lib/inputs/number/index.js +13 -3
  168. package/lib/inputs/number/numberfield.spec.js +215 -0
  169. package/lib/inputs/number/types.d.ts +1 -2
  170. package/lib/inputs/period/Dialog.js +7 -2
  171. package/lib/inputs/period/Dropdown.js +7 -0
  172. package/lib/inputs/period/PeriodList.js +7 -1
  173. package/lib/inputs/period/helper.js +12 -2
  174. package/lib/inputs/period/index.js +114 -43
  175. package/lib/inputs/period/types.d.ts +1 -1
  176. package/lib/inputs/search/index.d.ts +1 -2
  177. package/lib/inputs/search/index.js +68 -27
  178. package/lib/inputs/search/search_input.spec.js +209 -0
  179. package/lib/inputs/select/ActionButtons.d.ts +1 -2
  180. package/lib/inputs/select/ActionButtons.js +12 -4
  181. package/lib/inputs/select/Dropdown.d.ts +1 -2
  182. package/lib/inputs/select/Dropdown.js +48 -28
  183. package/lib/inputs/select/helper.d.ts +1 -2
  184. package/lib/inputs/select/helper.js +25 -9
  185. package/lib/inputs/select/index.d.ts +1 -1
  186. package/lib/inputs/select/index.js +18 -3
  187. package/lib/inputs/select/multiple/Selecteds.d.ts +1 -1
  188. package/lib/inputs/select/multiple/Selecteds.js +7 -3
  189. package/lib/inputs/select/multiple/index.d.ts +1 -1
  190. package/lib/inputs/select/multiple/index.js +96 -37
  191. package/lib/inputs/select/select.spec.js +395 -0
  192. package/lib/inputs/select/simple/index.d.ts +1 -1
  193. package/lib/inputs/select/simple/index.js +118 -54
  194. package/lib/inputs/select/types.d.ts +7 -2
  195. package/lib/inputs/text/index.js +5 -1
  196. package/lib/inputs/text/textfield.spec.js +215 -0
  197. package/lib/inputs/text/types.d.ts +1 -1
  198. package/lib/inputs/textarea/index.js +10 -4
  199. package/lib/inputs/textarea/textarea.spec.js +59 -0
  200. package/lib/inputs/types.d.ts +3 -9
  201. package/lib/internals/withTooltip.js +70 -25
  202. package/lib/labelMessages/index.js +45 -25
  203. package/lib/labelMessages/labelMessages.spec.js +176 -0
  204. package/lib/labels/DangerLabel.js +11 -1
  205. package/lib/labels/DefaultLabel.js +41 -19
  206. package/lib/labels/InfoLabel.js +11 -1
  207. package/lib/labels/PrimaryLabel.js +11 -1
  208. package/lib/labels/SuccessLabel.js +11 -1
  209. package/lib/labels/WarningLabel.js +11 -1
  210. package/lib/labels/index.d.ts +1 -4
  211. package/lib/labels/index.js +10 -0
  212. package/lib/labels/label.spec.js +162 -0
  213. package/lib/labels/label_container/index.js +7 -3
  214. package/lib/list/Header.js +7 -3
  215. package/lib/list/Item.js +68 -33
  216. package/lib/list/Separator.js +4 -0
  217. package/lib/list/helpers.js +4 -0
  218. package/lib/list/index.js +60 -25
  219. package/lib/list/list.spec.js +769 -0
  220. package/lib/list/types.d.ts +1 -1
  221. package/lib/menus/float/MenuItem.js +26 -9
  222. package/lib/menus/float/SubMenuContainer.js +17 -5
  223. package/lib/menus/float/float-menu.spec.js +221 -0
  224. package/lib/menus/float/helpers.js +4 -0
  225. package/lib/menus/float/index.js +21 -8
  226. package/lib/menus/index.d.ts +1 -4
  227. package/lib/menus/index.js +3 -0
  228. package/lib/menus/sidenav/ExpandMenu.js +7 -2
  229. package/lib/menus/sidenav/MenuLink.js +12 -3
  230. package/lib/menus/sidenav/NavMenuGroup.js +12 -3
  231. package/lib/menus/sidenav/NavMenuItem.js +56 -27
  232. package/lib/menus/sidenav/NavSubMenuItem.js +27 -8
  233. package/lib/menus/sidenav/helpers.js +9 -0
  234. package/lib/menus/sidenav/index.js +75 -26
  235. package/lib/menus/sidenav/popup_menu_search/EmptyList.js +7 -2
  236. package/lib/menus/sidenav/popup_menu_search/index.js +45 -15
  237. package/lib/menus/sidenav/sidenav.spec.js +379 -0
  238. package/lib/menus/sidenav/types.d.ts +1 -1
  239. package/lib/noPermission/index.js +6 -0
  240. package/lib/panel/Content.d.ts +1 -1
  241. package/lib/panel/Content.js +22 -7
  242. package/lib/panel/DangerPanel.d.ts +1 -1
  243. package/lib/panel/DangerPanel.js +7 -0
  244. package/lib/panel/Default.d.ts +1 -1
  245. package/lib/panel/Default.js +44 -20
  246. package/lib/panel/Header.d.ts +1 -1
  247. package/lib/panel/Header.js +27 -12
  248. package/lib/panel/InfoPanel.d.ts +1 -1
  249. package/lib/panel/InfoPanel.js +7 -0
  250. package/lib/panel/PrimaryPanel.d.ts +1 -1
  251. package/lib/panel/PrimaryPanel.js +7 -0
  252. package/lib/panel/SuccessPanel.d.ts +1 -1
  253. package/lib/panel/SuccessPanel.js +7 -0
  254. package/lib/panel/ToolBar.d.ts +1 -1
  255. package/lib/panel/ToolBar.js +5 -0
  256. package/lib/panel/WarningPanel.d.ts +1 -1
  257. package/lib/panel/WarningPanel.js +7 -0
  258. package/lib/panel/helpers.d.ts +1 -1
  259. package/lib/panel/helpers.js +10 -2
  260. package/lib/panel/index.d.ts +2 -5
  261. package/lib/panel/index.js +11 -0
  262. package/lib/panel/panel.spec.js +216 -0
  263. package/lib/panel/types.d.ts +1 -1
  264. package/lib/permissionValidations.js +15 -3
  265. package/lib/popover/PopoverText.js +4 -0
  266. package/lib/popover/PopoverTitle.js +4 -0
  267. package/lib/popover/index.js +29 -16
  268. package/lib/popover/popover.spec.js +146 -0
  269. package/lib/popover/types.d.ts +2 -1
  270. package/lib/progress/Bar.js +33 -20
  271. package/lib/progress/index.js +14 -5
  272. package/lib/progress/progress.spec.js +94 -0
  273. package/lib/radio/index.js +46 -23
  274. package/lib/radio/radio.spec.js +189 -0
  275. package/lib/skeleton/SkeletonContainer.js +9 -3
  276. package/lib/skeleton/index.js +22 -10
  277. package/lib/spinner/SpinnerLoading.js +7 -3
  278. package/lib/spinner/index.js +40 -18
  279. package/lib/spinner/spinner.spec.js +152 -0
  280. package/lib/split/Split.js +83 -32
  281. package/lib/split/SplitSide.js +18 -6
  282. package/lib/split/helpers.d.ts +1 -1
  283. package/lib/split/helpers.js +4 -0
  284. package/lib/split/index.d.ts +1 -4
  285. package/lib/split/index.js +5 -0
  286. package/lib/split/split.spec.js +163 -0
  287. package/lib/table/Body.js +29 -15
  288. package/lib/table/Header.js +28 -5
  289. package/lib/table/HeaderColumn.js +21 -10
  290. package/lib/table/Row.js +28 -18
  291. package/lib/table/RowColumn.js +29 -12
  292. package/lib/table/helpers.js +7 -0
  293. package/lib/table/index.js +62 -32
  294. package/lib/table/table.spec.js +352 -0
  295. package/lib/table/types.d.ts +1 -1
  296. package/lib/tabs/DropdownItems.js +21 -12
  297. package/lib/tabs/Menu.js +15 -5
  298. package/lib/tabs/MenuItems.js +33 -23
  299. package/lib/tabs/Panel.js +39 -14
  300. package/lib/tabs/index.js +113 -46
  301. package/lib/tabs/tabHelpers.js +16 -3
  302. package/lib/tabs/tabs.spec.js +321 -0
  303. package/lib/toolbar/ButtonBar.js +29 -13
  304. package/lib/toolbar/LabelBar.js +28 -11
  305. package/lib/toolbar/Separator.js +4 -0
  306. package/lib/toolbar/ToolBarGroup.js +6 -2
  307. package/lib/toolbar/helpers.js +2 -0
  308. package/lib/toolbar/index.js +23 -7
  309. package/lib/toolbar/toolbar.spec.js +394 -0
  310. package/lib/tooltip/index.js +25 -10
  311. package/lib/tooltip/tooltip.spec.js +215 -0
  312. package/lib/tooltip/types.d.ts +1 -1
  313. package/lib/treetable/Body.js +27 -9
  314. package/lib/treetable/Header.js +11 -1
  315. package/lib/treetable/Row.js +113 -58
  316. package/lib/treetable/helpers.js +10 -0
  317. package/lib/treetable/index.js +11 -0
  318. package/lib/treeview/Header.js +6 -2
  319. package/lib/treeview/Node.js +111 -47
  320. package/lib/treeview/constants.js +4 -0
  321. package/lib/treeview/index.js +134 -54
  322. package/lib/treeview/treeview.spec.js +279 -0
  323. package/lib/treeview/types.d.ts +2 -2
  324. package/lib/treeview_old/Header.js +6 -1
  325. package/lib/treeview_old/Node.js +32 -5
  326. package/lib/treeview_old/index.js +9 -1
  327. package/lib/{types-90c43ae1.d.ts → types-3c6f1c20.d.ts} +1 -1
  328. package/lib/uitour/index.js +73 -33
  329. package/lib/uitour/types.d.ts +1 -1
  330. package/lib/uitour/uitour.spec.js +176 -0
  331. package/package.json +1 -1
@@ -1,65 +1,89 @@
1
1
  "use strict";
2
2
 
3
3
  function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
4
+
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
7
8
  exports.default = void 0;
9
+
8
10
  var _react = _interopRequireWildcard(require("react"));
11
+
9
12
  var _buttons = _interopRequireWildcard(require("../buttons"));
13
+
10
14
  require("../assets/styles/uitour.scss");
15
+
11
16
  var _helpers = require("./helpers");
17
+
12
18
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
19
+
13
20
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
21
+
14
22
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
23
+
15
24
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
25
+
16
26
  function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
27
+
17
28
  function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(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); }
18
- 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; }
19
- function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }
29
+
30
+ 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; }
31
+
32
+ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
33
+
20
34
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
35
+
21
36
  var UiTour = function UiTour(props) {
22
37
  var data = props.data,
23
- nextButtonLabel = props.nextButtonLabel,
24
- backButtonLabel = props.backButtonLabel,
25
- finishButtonLabel = props.finishButtonLabel,
26
- _props$showCloseButto = props.showCloseButton,
27
- showCloseButton = _props$showCloseButto === void 0 ? true : _props$showCloseButto,
28
- _props$showBackButton = props.showBackButton,
29
- showBackButton = _props$showBackButton === void 0 ? true : _props$showBackButton,
30
- _props$visible = props.visible,
31
- visible = _props$visible === void 0 ? true : _props$visible,
32
- onFinish = props.onFinish;
38
+ nextButtonLabel = props.nextButtonLabel,
39
+ backButtonLabel = props.backButtonLabel,
40
+ finishButtonLabel = props.finishButtonLabel,
41
+ _props$showCloseButto = props.showCloseButton,
42
+ showCloseButton = _props$showCloseButto === void 0 ? true : _props$showCloseButto,
43
+ _props$showBackButton = props.showBackButton,
44
+ showBackButton = _props$showBackButton === void 0 ? true : _props$showBackButton,
45
+ _props$visible = props.visible,
46
+ visible = _props$visible === void 0 ? true : _props$visible,
47
+ onFinish = props.onFinish;
48
+
33
49
  var _useState = (0, _react.useState)(undefined),
34
- _useState2 = _slicedToArray(_useState, 2),
35
- currentStep = _useState2[0],
36
- setCurrentStep = _useState2[1];
50
+ _useState2 = _slicedToArray(_useState, 2),
51
+ currentStep = _useState2[0],
52
+ setCurrentStep = _useState2[1];
53
+
37
54
  var _useState3 = (0, _react.useState)(false),
38
- _useState4 = _slicedToArray(_useState3, 2),
39
- hasNextStep = _useState4[0],
40
- setHasNextStep = _useState4[1];
55
+ _useState4 = _slicedToArray(_useState3, 2),
56
+ hasNextStep = _useState4[0],
57
+ setHasNextStep = _useState4[1];
58
+
41
59
  var _useState5 = (0, _react.useState)(false),
42
- _useState6 = _slicedToArray(_useState5, 2),
43
- hasBackStep = _useState6[0],
44
- setHasBackStep = _useState6[1];
60
+ _useState6 = _slicedToArray(_useState5, 2),
61
+ hasBackStep = _useState6[0],
62
+ setHasBackStep = _useState6[1];
63
+
45
64
  var _useState7 = (0, _react.useState)(false),
46
- _useState8 = _slicedToArray(_useState7, 2),
47
- isLastStep = _useState8[0],
48
- setIsLastStep = _useState8[1];
65
+ _useState8 = _slicedToArray(_useState7, 2),
66
+ isLastStep = _useState8[0],
67
+ setIsLastStep = _useState8[1];
68
+
49
69
  var _useState9 = (0, _react.useState)(null),
50
- _useState10 = _slicedToArray(_useState9, 2),
51
- stepDimensions = _useState10[0],
52
- setStepDimensions = _useState10[1];
70
+ _useState10 = _slicedToArray(_useState9, 2),
71
+ stepDimensions = _useState10[0],
72
+ setStepDimensions = _useState10[1];
73
+
53
74
  var _useState11 = (0, _react.useState)(visible),
54
- _useState12 = _slicedToArray(_useState11, 2),
55
- showTour = _useState12[0],
56
- setShowTour = _useState12[1];
75
+ _useState12 = _slicedToArray(_useState11, 2),
76
+ showTour = _useState12[0],
77
+ setShowTour = _useState12[1];
78
+
57
79
  var _useState13 = (0, _react.useState)(_helpers.STEP_POSITIONS.left),
58
- _useState14 = _slicedToArray(_useState13, 2),
59
- stepPosition = _useState14[0],
60
- setStepPosition = _useState14[1];
80
+ _useState14 = _slicedToArray(_useState13, 2),
81
+ stepPosition = _useState14[0],
82
+ setStepPosition = _useState14[1];
83
+
61
84
  var stepRef = (0, _react.useRef)(null);
62
85
  var descriptionRef = (0, _react.useRef)(null);
86
+
63
87
  var handleNextStep = function handleNextStep() {
64
88
  if (hasNextStep) {
65
89
  var currentStepIndex = data.findIndex(function (item) {
@@ -70,6 +94,7 @@ var UiTour = function UiTour(props) {
70
94
  return item.id === nextStep.id;
71
95
  });
72
96
  var target = document.getElementById(nextStep.targetId);
97
+
73
98
  if (target) {
74
99
  setCurrentStep(_extends({}, nextStep, {
75
100
  number: nextStepIndex + 1
@@ -77,6 +102,7 @@ var UiTour = function UiTour(props) {
77
102
  }
78
103
  }
79
104
  };
105
+
80
106
  var handleBackStep = function handleBackStep() {
81
107
  if (hasBackStep) {
82
108
  var currentStepIndex = data.findIndex(function (item) {
@@ -87,6 +113,7 @@ var UiTour = function UiTour(props) {
87
113
  return item.id === backStep.id;
88
114
  });
89
115
  var target = document.getElementById(backStep.targetId);
116
+
90
117
  if (target) {
91
118
  setCurrentStep(_extends({}, backStep, {
92
119
  number: backStepIndex + 1
@@ -94,14 +121,17 @@ var UiTour = function UiTour(props) {
94
121
  }
95
122
  }
96
123
  };
124
+
97
125
  var onCloseTour = function onCloseTour() {
98
126
  setShowTour(false);
99
127
  if (onFinish) onFinish(true);
100
128
  };
129
+
101
130
  var getStepPosition = function getStepPosition(target) {
102
131
  if (stepRef.current) {
103
132
  var stepRect = stepRef.current.getBoundingClientRect();
104
133
  var windowWidth = window.innerWidth;
134
+
105
135
  if (stepRect.right >= windowWidth || (currentStep === null || currentStep === void 0 ? void 0 : currentStep.position) === _helpers.STEP_POSITIONS.right) {
106
136
  setStepPosition(_helpers.STEP_POSITIONS.right);
107
137
  setStepDimensions({
@@ -117,9 +147,11 @@ var UiTour = function UiTour(props) {
117
147
  }
118
148
  }
119
149
  };
150
+
120
151
  (0, _react.useEffect)(function () {
121
152
  if (currentStep) {
122
153
  var target = document.getElementById(currentStep.targetId);
154
+
123
155
  if (target) {
124
156
  var targetRect = target.getBoundingClientRect();
125
157
  var currentStepIndex = data.findIndex(function (item) {
@@ -127,24 +159,29 @@ var UiTour = function UiTour(props) {
127
159
  });
128
160
  var lastDataIndex = data.length - 1;
129
161
  var initialDataIndex = 0;
162
+
130
163
  switch (currentStepIndex) {
131
164
  case lastDataIndex:
132
165
  setHasNextStep(false);
133
166
  setHasBackStep(true);
134
167
  setIsLastStep(true);
135
168
  break;
169
+
136
170
  case initialDataIndex:
137
171
  setHasNextStep(true);
138
172
  setIsLastStep(false);
139
173
  setHasBackStep(false);
140
174
  break;
175
+
141
176
  default:
142
177
  setHasNextStep(true);
143
178
  setHasBackStep(true);
144
179
  setIsLastStep(false);
145
180
  }
181
+
146
182
  getStepPosition(targetRect);
147
183
  }
184
+
148
185
  if (descriptionRef.current) {
149
186
  descriptionRef.current.innerHTML = currentStep.description;
150
187
  }
@@ -153,9 +190,11 @@ var UiTour = function UiTour(props) {
153
190
  (0, _react.useEffect)(function () {
154
191
  if (data && visible) {
155
192
  var initialNumber = 1;
193
+
156
194
  var initialStep = _extends({}, data[0], {
157
195
  number: initialNumber
158
196
  });
197
+
159
198
  setShowTour(visible);
160
199
  setCurrentStep(initialStep);
161
200
  }
@@ -210,5 +249,6 @@ var UiTour = function UiTour(props) {
210
249
  customClass: "finish-button"
211
250
  }))));
212
251
  };
252
+
213
253
  var _default = UiTour;
214
254
  exports.default = _default;
@@ -1,6 +1,6 @@
1
1
  import { STEP_POSITIONS } from './helpers.js';
2
2
 
3
- type UITourData = {
3
+ declare type UITourData = {
4
4
  id: string | number;
5
5
  targetId: string;
6
6
  title: string;
@@ -0,0 +1,176 @@
1
+ "use strict";
2
+
3
+ var _react = _interopRequireDefault(require("react"));
4
+
5
+ var _propTypes = _interopRequireDefault(require("prop-types"));
6
+
7
+ require("@testing-library/jest-dom");
8
+
9
+ require("babel-polyfill");
10
+
11
+ var _react2 = require("@testing-library/react");
12
+
13
+ var _ = _interopRequireDefault(require("."));
14
+
15
+ var _helpers = require("./helpers");
16
+
17
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
18
+
19
+ var data = [{
20
+ id: '1',
21
+ targetId: 'uitour-teste',
22
+ title: 'Título',
23
+ description: 'Lorem ipsum dolor sit <strong>amet</strong> consectetur adipisicing elit.'
24
+ }, {
25
+ id: '2',
26
+ targetId: 'uitour-button',
27
+ title: 'Botão',
28
+ description: 'Lorem ipsum, dolor sit adipisicing elit. Repellendus, fuga.'
29
+ }];
30
+ var backButtonLabel = 'Voltar';
31
+ var nextButtonLabel = 'Avançar';
32
+ var finishButtonLabel = 'Finalizar';
33
+
34
+ var UiTourMock = function UiTourMock(_ref) {
35
+ var onFinish = _ref.onFinish,
36
+ visible = _ref.visible,
37
+ showCloseButton = _ref.showCloseButton,
38
+ showBackButton = _ref.showBackButton;
39
+ return /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("h1", {
40
+ style: {
41
+ width: 100
42
+ },
43
+ id: "uitour-teste"
44
+ }, "Teste UiTour"), /*#__PURE__*/_react.default.createElement("button", {
45
+ id: "uitour-button"
46
+ }, "Teste button"), /*#__PURE__*/_react.default.createElement(_.default, {
47
+ data: data,
48
+ backButtonLabel: backButtonLabel,
49
+ nextButtonLabel: nextButtonLabel,
50
+ finishButtonLabel: finishButtonLabel,
51
+ onFinish: onFinish,
52
+ showCloseButton: showCloseButton,
53
+ showBackButton: showBackButton,
54
+ visible: visible
55
+ }));
56
+ };
57
+
58
+ UiTourMock.propTypes = {
59
+ onFinish: _propTypes.default.func,
60
+ visible: _propTypes.default.bool,
61
+ showCloseButton: _propTypes.default.bool,
62
+ showBackButton: _propTypes.default.bool
63
+ };
64
+ UiTourMock.defaultProps = {
65
+ onFinish: undefined,
66
+ visible: true,
67
+ showCloseButton: true,
68
+ showBackButton: true
69
+ };
70
+ describe('UiTour', function () {
71
+ it('should render correctly', function () {
72
+ var _render = (0, _react2.render)( /*#__PURE__*/_react.default.createElement(UiTourMock, null)),
73
+ container = _render.container;
74
+
75
+ var uitourComponent = container.querySelector('.uitour-component');
76
+ expect(container.firstChild).toContainElement(uitourComponent);
77
+ });
78
+ it('should go to next step', function () {
79
+ var _render2 = (0, _react2.render)( /*#__PURE__*/_react.default.createElement(UiTourMock, null)),
80
+ container = _render2.container;
81
+
82
+ var nextButton = container.querySelector('.next-button');
83
+
84
+ _react2.fireEvent.click(nextButton);
85
+
86
+ expect(container.querySelector('.content .number')).toHaveTextContent('2');
87
+ });
88
+ it('should execute callback on finish and close', function () {
89
+ var mockFinish = jest.fn();
90
+
91
+ var _render3 = (0, _react2.render)( /*#__PURE__*/_react.default.createElement(UiTourMock, {
92
+ onFinish: mockFinish
93
+ })),
94
+ container = _render3.container;
95
+
96
+ var nextButton = container.querySelector('.next-button');
97
+
98
+ _react2.fireEvent.click(nextButton);
99
+
100
+ var finishButton = container.querySelector('.finish-button');
101
+
102
+ _react2.fireEvent.click(finishButton);
103
+
104
+ expect(mockFinish).toHaveBeenCalledTimes(1);
105
+ expect(container.querySelector('.uitour-component')).not.toBeInTheDocument();
106
+ });
107
+ it('should step render aside target position', function () {
108
+ var _render4 = (0, _react2.render)( /*#__PURE__*/_react.default.createElement(UiTourMock, null)),
109
+ container = _render4.container;
110
+
111
+ var targetRect = container.querySelector('#uitour-teste');
112
+ var targetDimensions = targetRect.getBoundingClientRect();
113
+ var stepDimensions = container.querySelector('.uitour-component .step');
114
+ expect(stepDimensions.style.left).toBe("".concat(targetDimensions.left + targetDimensions.width + _helpers.ARROW_WIDTH, "px"));
115
+ expect(stepDimensions.style.top).toBe("".concat(targetDimensions.top - _helpers.ARROW_HEIGHT, "px"));
116
+ });
117
+ it('should render with backButtonLabel', function () {
118
+ var _render5 = (0, _react2.render)( /*#__PURE__*/_react.default.createElement(UiTourMock, null)),
119
+ getByText = _render5.getByText;
120
+
121
+ expect(getByText(backButtonLabel)).toBeInTheDocument();
122
+ });
123
+ it('should render with nextButtonLabel', function () {
124
+ var _render6 = (0, _react2.render)( /*#__PURE__*/_react.default.createElement(UiTourMock, null)),
125
+ getByText = _render6.getByText;
126
+
127
+ expect(getByText(nextButtonLabel)).toBeInTheDocument();
128
+ });
129
+ it('should render with finishButtonLabel', function () {
130
+ var _render7 = (0, _react2.render)( /*#__PURE__*/_react.default.createElement(UiTourMock, null)),
131
+ container = _render7.container,
132
+ getByText = _render7.getByText;
133
+
134
+ var nextButton = container.querySelector('.next-button');
135
+
136
+ _react2.fireEvent.click(nextButton);
137
+
138
+ expect(getByText(finishButtonLabel)).toBeInTheDocument();
139
+ });
140
+ it('should render close button', function () {
141
+ var _render8 = (0, _react2.render)( /*#__PURE__*/_react.default.createElement(UiTourMock, null)),
142
+ container = _render8.container;
143
+
144
+ expect(container.querySelector('.close-button')).toBeInTheDocument();
145
+ });
146
+ it('should not render close button', function () {
147
+ var _render9 = (0, _react2.render)( /*#__PURE__*/_react.default.createElement(UiTourMock, {
148
+ showCloseButton: false
149
+ })),
150
+ container = _render9.container;
151
+
152
+ expect(container.querySelector('.close-button')).not.toBeInTheDocument();
153
+ });
154
+ it('should render back button', function () {
155
+ var _render10 = (0, _react2.render)( /*#__PURE__*/_react.default.createElement(UiTourMock, null)),
156
+ getByText = _render10.getByText;
157
+
158
+ expect(getByText(backButtonLabel)).toBeInTheDocument();
159
+ });
160
+ it('should not render back button', function () {
161
+ var _render11 = (0, _react2.render)( /*#__PURE__*/_react.default.createElement(UiTourMock, {
162
+ showBackButton: false
163
+ })),
164
+ container = _render11.container;
165
+
166
+ expect(container.querySelector('.back-button')).not.toBeInTheDocument();
167
+ });
168
+ it('should not visible', function () {
169
+ var _render12 = (0, _react2.render)( /*#__PURE__*/_react.default.createElement(UiTourMock, {
170
+ visible: false
171
+ })),
172
+ container = _render12.container;
173
+
174
+ expect(container.querySelector('.uitour-component')).not.toBeInTheDocument();
175
+ });
176
+ });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "linear-react-components-ui",
3
- "version": "1.0.2",
3
+ "version": "1.0.3-beta.1",
4
4
  "description": "Linear Sistemas ReactJs Components",
5
5
  "main": "lib/index.js",
6
6
  "module": "lib/index.cjs",