chop-logic-components 4.0.1 → 4.1.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 (250) hide show
  1. package/README.md +16 -7
  2. package/dist/components/atoms/button/Button.css +1 -1
  3. package/dist/components/atoms/button/Button2.js +51 -0
  4. package/dist/components/atoms/button/icon-button/IconButton.css +1 -1
  5. package/dist/components/atoms/button/icon-button/IconButton2.js +18 -0
  6. package/dist/components/atoms/button/inner-button/InnerButton.css +1 -1
  7. package/dist/components/atoms/button/inner-button/InnerButton2.js +21 -0
  8. package/dist/components/atoms/button/primary-button/PrimaryButton.css +1 -1
  9. package/dist/components/atoms/button/primary-button/PrimaryButton2.js +20 -0
  10. package/dist/components/atoms/button/secondary-button/SecondaryButton.css +1 -1
  11. package/dist/components/atoms/button/secondary-button/SecondaryButton2.js +20 -0
  12. package/dist/components/atoms/editable-text/EditView.js +18 -37
  13. package/dist/components/atoms/editable-text/EditableText.css +1 -1
  14. package/dist/components/atoms/editable-text/EditableText2.js +53 -0
  15. package/dist/components/atoms/editable-text/ReadView.js +16 -25
  16. package/dist/components/atoms/editable-text/useEditModeState.js +16 -16
  17. package/dist/components/atoms/editable-text/useInputFocus.js +13 -8
  18. package/dist/components/atoms/editable-text/useValueState.js +20 -20
  19. package/dist/components/atoms/error-message/ErrorMessage.css +1 -1
  20. package/dist/components/atoms/error-message/ErrorMessage2.js +18 -0
  21. package/dist/components/atoms/header/Header.css +1 -1
  22. package/dist/components/atoms/header/Header2.js +23 -0
  23. package/dist/components/atoms/icon/Icon.css +1 -1
  24. package/dist/components/atoms/icon/Icon2.js +25 -0
  25. package/dist/components/atoms/image/BasicImage.js +15 -27
  26. package/dist/components/atoms/image/FallBackImage.js +16 -10
  27. package/dist/components/atoms/image/Image.css +1 -1
  28. package/dist/components/atoms/image/Image2.js +28 -0
  29. package/dist/components/atoms/image/ResponsivePicture.js +13 -17
  30. package/dist/components/atoms/input/Input.css +1 -1
  31. package/dist/components/atoms/input/Input2.js +13 -0
  32. package/dist/components/atoms/label/Label.css +1 -1
  33. package/dist/components/atoms/label/Label2.js +35 -0
  34. package/dist/components/atoms/link/Link.css +1 -1
  35. package/dist/components/atoms/link/Link2.js +36 -0
  36. package/dist/components/atoms/portal/Portal.js +10 -10
  37. package/dist/components/atoms/tooltip/Tooltip.controller.js +42 -34
  38. package/dist/components/atoms/tooltip/Tooltip.css +1 -1
  39. package/dist/components/atoms/tooltip/Tooltip2.js +49 -0
  40. package/dist/components/contexts/form/FormContext.js +5 -5
  41. package/dist/components/contexts/theme/ThemeContext.js +6 -9
  42. package/dist/components/contexts/theme/ThemeProvider.js +23 -20
  43. package/dist/components/hocs/with-error-boundary/index.js +2 -0
  44. package/dist/components/hocs/with-error-boundary/with-error-boundary.js +32 -0
  45. package/dist/components/hocs/with-figure-caption/Figure.css +1 -1
  46. package/dist/components/hocs/with-figure-caption/with-figure-caption.js +13 -10
  47. package/dist/components/hocs/with-tooltip/with-tooltip.js +10 -6
  48. package/dist/components/molecules/accordion/Accordion.css +1 -1
  49. package/dist/components/molecules/accordion/Accordion2.js +11 -0
  50. package/dist/components/molecules/accordion/AccordionItem.css +1 -1
  51. package/dist/components/molecules/accordion/AccordionItem2.js +24 -0
  52. package/dist/components/molecules/alert/Alert.css +1 -1
  53. package/dist/components/molecules/alert/Alert.helpers.js +24 -38
  54. package/dist/components/molecules/alert/Alert2.js +63 -0
  55. package/dist/components/molecules/alert/AlertProgressBar.js +10 -13
  56. package/dist/components/molecules/breadcrumbs/BreadcrumbItem.js +29 -27
  57. package/dist/components/molecules/breadcrumbs/BreadcrumbList.js +12 -6
  58. package/dist/components/molecules/breadcrumbs/Breadcrumbs.css +1 -1
  59. package/dist/components/molecules/breadcrumbs/Breadcrumbs2.js +20 -0
  60. package/dist/components/molecules/checkbox/Checkbox.controller.js +28 -24
  61. package/dist/components/molecules/checkbox/Checkbox.css +1 -1
  62. package/dist/components/molecules/checkbox/Checkbox.helpers.js +5 -9
  63. package/dist/components/molecules/checkbox/Checkbox2.js +7 -0
  64. package/dist/components/molecules/checkbox/CheckboxStateful.js +46 -59
  65. package/dist/components/molecules/checkbox/CheckboxStateless.js +41 -58
  66. package/dist/components/molecules/multi-select/MultiSelect.Combobox.js +34 -46
  67. package/dist/components/molecules/multi-select/MultiSelect.Dropdown.js +22 -30
  68. package/dist/components/molecules/multi-select/MultiSelect.controller.js +32 -36
  69. package/dist/components/molecules/multi-select/MultiSelect.helpers.js +17 -20
  70. package/dist/components/molecules/multi-select/MultiSelect.js +59 -60
  71. package/dist/components/molecules/multi-select/MultiSelectComboboxSelectedValues.js +7 -7
  72. package/dist/components/molecules/multi-select/Option.js +40 -39
  73. package/dist/components/molecules/numeric-input/NumericInput.controller.js +50 -44
  74. package/dist/components/molecules/numeric-input/NumericInput.css +1 -1
  75. package/dist/components/molecules/numeric-input/NumericInput.helpers.js +7 -18
  76. package/dist/components/molecules/numeric-input/NumericInput2.js +7 -0
  77. package/dist/components/molecules/numeric-input/NumericInputStateful.js +72 -107
  78. package/dist/components/molecules/numeric-input/NumericInputStateless.js +60 -95
  79. package/dist/components/molecules/search/Search.controller.js +31 -41
  80. package/dist/components/molecules/search/Search.css +1 -1
  81. package/dist/components/molecules/search/Search2.js +67 -0
  82. package/dist/components/molecules/select/Select.controller.js +35 -31
  83. package/dist/components/molecules/select/Select.css +1 -1
  84. package/dist/components/molecules/select/Select.helpers.js +10 -15
  85. package/dist/components/molecules/select/Select2.js +62 -0
  86. package/dist/components/molecules/select/combobox/Combobox.css +1 -1
  87. package/dist/components/molecules/select/combobox/Combobox2.js +31 -0
  88. package/dist/components/molecules/select/dropdown/Dropdown.css +1 -1
  89. package/dist/components/molecules/select/dropdown/Dropdown2.js +31 -0
  90. package/dist/components/molecules/select/option/Option.css +1 -1
  91. package/dist/components/molecules/select/option/Option2.js +36 -0
  92. package/dist/components/molecules/switch/Switch.controller.js +32 -32
  93. package/dist/components/molecules/switch/Switch.css +1 -1
  94. package/dist/components/molecules/switch/Switch.helpers.js +5 -9
  95. package/dist/components/molecules/switch/Switch2.js +58 -0
  96. package/dist/components/molecules/text-input/TextInput.controller.js +46 -35
  97. package/dist/components/molecules/text-input/TextInput.css +1 -1
  98. package/dist/components/molecules/text-input/TextInput.helpers.js +7 -16
  99. package/dist/components/molecules/text-input/TextInput2.js +7 -0
  100. package/dist/components/molecules/text-input/TextInputButtons.js +20 -37
  101. package/dist/components/molecules/text-input/TextInputStateful.js +62 -91
  102. package/dist/components/molecules/text-input/TextInputStateless.js +59 -88
  103. package/dist/components/organisms/dialog/Dialog.css +1 -1
  104. package/dist/components/organisms/dialog/Dialog2.js +50 -0
  105. package/dist/components/organisms/form/Form.controller.js +28 -28
  106. package/dist/components/organisms/form/Form.css +1 -1
  107. package/dist/components/organisms/form/Form.helpers.js +9 -11
  108. package/dist/components/organisms/form/Form2.js +52 -0
  109. package/dist/components/organisms/grid/Grid.controller.js +27 -33
  110. package/dist/components/organisms/grid/Grid.css +1 -1
  111. package/dist/components/organisms/grid/Grid.helpers.js +13 -14
  112. package/dist/components/organisms/grid/Grid2.js +52 -0
  113. package/dist/components/organisms/grid/body/GridBody.css +1 -1
  114. package/dist/components/organisms/grid/body/GridBody2.js +26 -0
  115. package/dist/components/organisms/grid/checkbox/GridCheckbox.css +1 -1
  116. package/dist/components/organisms/grid/checkbox/GridCheckbox2.js +35 -0
  117. package/dist/components/organisms/grid/column-group/GridColumnGroup2.js +14 -0
  118. package/dist/components/organisms/grid/data-cell/GridDataCell.js +5 -5
  119. package/dist/components/organisms/grid/grid-row/GridRow2.js +24 -0
  120. package/dist/components/organisms/grid/head/GridHead.css +1 -1
  121. package/dist/components/organisms/grid/head/GridHead2.js +23 -0
  122. package/dist/components/organisms/grid/header-cell/HeaderCell.js +5 -8
  123. package/dist/components/organisms/grid/select-all-grid-rows-cell/SelectAllGridRowsCell.js +15 -24
  124. package/dist/components/organisms/grid/select-grid-row-cell/SelectGridRowCell.js +14 -23
  125. package/dist/components/organisms/menu/Menu.css +1 -1
  126. package/dist/components/organisms/menu/Menu2.js +24 -0
  127. package/dist/components/organisms/menu/leaf/MenuLeaf.css +1 -1
  128. package/dist/components/organisms/menu/leaf/MenuLeaf2.js +31 -0
  129. package/dist/components/organisms/menu/list-item/MenuListItem.css +1 -1
  130. package/dist/components/organisms/menu/list-item/MenuListItem2.js +38 -0
  131. package/dist/components/organisms/menu/sub-menu/SubMenu.css +1 -1
  132. package/dist/components/organisms/menu/sub-menu/SubMenu2.js +56 -0
  133. package/dist/components/organisms/tabs/Tabs.css +1 -1
  134. package/dist/components/organisms/tabs/Tabs2.js +60 -0
  135. package/dist/components/organisms/tabs/button/TabButton.css +1 -1
  136. package/dist/components/organisms/tabs/button/TabButton2.js +83 -0
  137. package/dist/components/organisms/tabs/content/TabContent.css +1 -1
  138. package/dist/components/organisms/tabs/content/TabContent2.js +16 -0
  139. package/dist/components/organisms/tabs/edit-input/TabEditInput.css +1 -1
  140. package/dist/components/organisms/tabs/edit-input/TabEditInput2.js +45 -0
  141. package/dist/components/organisms/tabs/list/TabList.css +1 -1
  142. package/dist/components/organisms/tabs/list/TabList2.js +51 -0
  143. package/dist/enums/alert-mode.js +6 -4
  144. package/dist/enums/button-view.js +6 -4
  145. package/dist/enums/element-size.js +6 -4
  146. package/dist/enums/icon-name.js +6 -4
  147. package/dist/enums/loader-view.js +6 -4
  148. package/dist/enums/orientation-mode.js +6 -4
  149. package/dist/enums/semantic-color.js +6 -4
  150. package/dist/enums/tooltip-container.js +6 -4
  151. package/dist/hooks/use-auto-close/use-auto-close.js +17 -17
  152. package/dist/hooks/use-click-outside/use-click-outside.js +18 -18
  153. package/dist/hooks/use-container-dimensions/use-container-dimensions.js +15 -15
  154. package/dist/hooks/use-debounce/use-debounce.js +14 -14
  155. package/dist/hooks/use-element-ids/use-element-ids.js +11 -11
  156. package/dist/hooks/use-is-hovered/use-is-hovered.js +14 -14
  157. package/dist/hooks/use-is-mounted/use-is-mounted.js +14 -14
  158. package/dist/hooks/use-is-overflow/use-is-overflow.js +26 -26
  159. package/dist/hooks/use-key-press/use-key-press.js +17 -13
  160. package/dist/hooks/use-modal-focus-trap/use-modal-focus-trap.js +15 -19
  161. package/dist/hooks/use-remaining-timer/use-remaining-timer.js +35 -37
  162. package/dist/hooks/use-reset-form-input/use-reset-form-input.js +10 -10
  163. package/dist/hooks/use-theme/use-theme.js +6 -6
  164. package/dist/hooks/use-tooltip-position/use-tooltip-position.js +36 -30
  165. package/dist/hooks/use-window-dimensions/use-window-dimensions.js +18 -15
  166. package/dist/index.d.ts +7 -0
  167. package/dist/index.es.js +56 -112
  168. package/dist/styles/icons.css +1 -1
  169. package/dist/styles/main.css +1 -1
  170. package/dist/utils/get-class-name.js +13 -15
  171. package/dist/utils/handle-dropdown-list-key-press.js +26 -31
  172. package/dist/utils/move-focus-on-element-by-id.js +6 -6
  173. package/package.json +20 -22
  174. package/dist/components/atoms/button/Button.js +0 -66
  175. package/dist/components/atoms/button/icon-button/IconButton.js +0 -15
  176. package/dist/components/atoms/button/icon-button/index.js +0 -3
  177. package/dist/components/atoms/button/index.js +0 -3
  178. package/dist/components/atoms/button/inner-button/InnerButton.js +0 -28
  179. package/dist/components/atoms/button/inner-button/index.js +0 -3
  180. package/dist/components/atoms/button/primary-button/PrimaryButton.js +0 -18
  181. package/dist/components/atoms/button/primary-button/index.js +0 -3
  182. package/dist/components/atoms/button/secondary-button/SecondaryButton.js +0 -18
  183. package/dist/components/atoms/button/secondary-button/index.js +0 -3
  184. package/dist/components/atoms/editable-text/EditableText.js +0 -71
  185. package/dist/components/atoms/editable-text/index.js +0 -3
  186. package/dist/components/atoms/error-message/ErrorMessage.js +0 -30
  187. package/dist/components/atoms/error-message/index.js +0 -3
  188. package/dist/components/atoms/header/Header.js +0 -22
  189. package/dist/components/atoms/header/index.js +0 -3
  190. package/dist/components/atoms/icon/Icon.js +0 -31
  191. package/dist/components/atoms/icon/index.js +0 -3
  192. package/dist/components/atoms/image/Image.js +0 -24
  193. package/dist/components/atoms/image/index.js +0 -3
  194. package/dist/components/atoms/input/Input.js +0 -10
  195. package/dist/components/atoms/input/index.js +0 -3
  196. package/dist/components/atoms/label/Label.js +0 -30
  197. package/dist/components/atoms/label/index.js +0 -3
  198. package/dist/components/atoms/link/Link.js +0 -39
  199. package/dist/components/atoms/link/index.js +0 -3
  200. package/dist/components/atoms/tooltip/Tooltip.js +0 -70
  201. package/dist/components/atoms/tooltip/index.js +0 -3
  202. package/dist/components/molecules/accordion/Accordion.js +0 -11
  203. package/dist/components/molecules/accordion/AccordionItem.js +0 -24
  204. package/dist/components/molecules/accordion/index.js +0 -3
  205. package/dist/components/molecules/alert/Alert.js +0 -60
  206. package/dist/components/molecules/alert/index.js +0 -3
  207. package/dist/components/molecules/breadcrumbs/Breadcrumbs.js +0 -31
  208. package/dist/components/molecules/breadcrumbs/index.js +0 -3
  209. package/dist/components/molecules/checkbox/Checkbox.js +0 -7
  210. package/dist/components/molecules/checkbox/index.js +0 -3
  211. package/dist/components/molecules/numeric-input/NumericInput.js +0 -7
  212. package/dist/components/molecules/numeric-input/index.js +0 -3
  213. package/dist/components/molecules/search/Search.js +0 -112
  214. package/dist/components/molecules/search/index.js +0 -3
  215. package/dist/components/molecules/select/Select.js +0 -64
  216. package/dist/components/molecules/select/combobox/Combobox.js +0 -46
  217. package/dist/components/molecules/select/combobox/index.js +0 -3
  218. package/dist/components/molecules/select/dropdown/Dropdown.js +0 -46
  219. package/dist/components/molecules/select/dropdown/index.js +0 -3
  220. package/dist/components/molecules/select/index.js +0 -3
  221. package/dist/components/molecules/select/option/Option.js +0 -38
  222. package/dist/components/molecules/select/option/index.js +0 -3
  223. package/dist/components/molecules/switch/Switch.js +0 -68
  224. package/dist/components/molecules/switch/index.js +0 -3
  225. package/dist/components/molecules/text-input/TextInput.js +0 -7
  226. package/dist/components/molecules/text-input/index.js +0 -3
  227. package/dist/components/organisms/dialog/Dialog.js +0 -32
  228. package/dist/components/organisms/dialog/index.js +0 -3
  229. package/dist/components/organisms/form/Form.js +0 -48
  230. package/dist/components/organisms/form/index.js +0 -3
  231. package/dist/components/organisms/grid/Grid.js +0 -60
  232. package/dist/components/organisms/grid/body/GridBody.js +0 -31
  233. package/dist/components/organisms/grid/checkbox/GridCheckbox.js +0 -52
  234. package/dist/components/organisms/grid/column-group/GridColumnGroup.js +0 -26
  235. package/dist/components/organisms/grid/grid-row/GridRow.js +0 -35
  236. package/dist/components/organisms/grid/grid-row/index.js +0 -3
  237. package/dist/components/organisms/grid/head/GridHead.js +0 -35
  238. package/dist/components/organisms/grid/index.js +0 -3
  239. package/dist/components/organisms/menu/Menu.js +0 -22
  240. package/dist/components/organisms/menu/index.js +0 -3
  241. package/dist/components/organisms/menu/leaf/MenuLeaf.js +0 -28
  242. package/dist/components/organisms/menu/list-item/MenuListItem.js +0 -35
  243. package/dist/components/organisms/menu/sub-menu/SubMenu.js +0 -67
  244. package/dist/components/organisms/menu/sub-menu/index.js +0 -3
  245. package/dist/components/organisms/tabs/Tabs.js +0 -80
  246. package/dist/components/organisms/tabs/button/TabButton.js +0 -111
  247. package/dist/components/organisms/tabs/content/TabContent.js +0 -19
  248. package/dist/components/organisms/tabs/edit-input/TabEditInput.js +0 -64
  249. package/dist/components/organisms/tabs/index.js +0 -3
  250. package/dist/components/organisms/tabs/list/TabList.js +0 -67
@@ -1,80 +0,0 @@
1
- import { jsxs as H, jsx as b } from "react/jsx-runtime";
2
- import { getClassName as L } from "../../../utils/get-class-name.js";
3
- import { useState as r } from "react";
4
- import { TabContent as M } from "./content/TabContent.js";
5
- import { TabList as P } from "./list/TabList.js";
6
- import './Tabs.css';/* empty css */
7
- import { OrientationMode as C } from "../../../enums/orientation-mode.js";
8
- const Q = ({
9
- tabs: T,
10
- defaultTabId: o,
11
- className: g,
12
- mode: m = C.Horizontal,
13
- stretched: u = !1,
14
- editable: S = !1,
15
- extendable: f = !1,
16
- extendedTabLabel: v = "New Tab",
17
- extendedTabContent: h,
18
- onTabTitleChange: w,
19
- onTabAdd: x,
20
- onTabSelect: A,
21
- onTabDelete: D,
22
- ...N
23
- }) => {
24
- const [l, i] = r(T), $ = T.length, [p, j] = r($ + 1), n = l.map((e) => e.id), I = n.map((e) => `tabpanel_${e}`), O = o && n.includes(o) ? o : n[0], [c, _] = r(O), z = L([
25
- "cl-tabs",
26
- g,
27
- { "cl-tabs_vertical": m === C.Vertical }
28
- ]), d = (e) => {
29
- _(e), A?.(e);
30
- };
31
- return /* @__PURE__ */ H("div", { ...N, className: z, children: [
32
- /* @__PURE__ */ b(
33
- P,
34
- {
35
- tabs: l,
36
- selectedTabId: c,
37
- tabPanelIds: I,
38
- onTabSelect: d,
39
- onTabTitleChange: (e, a) => {
40
- i(
41
- (t) => t.map((s) => s.id === e ? { ...s, title: a } : s)
42
- ), w?.(e, a);
43
- },
44
- mode: m,
45
- tabIds: n,
46
- stretched: u,
47
- editable: S,
48
- extendable: f,
49
- onTabAdd: () => {
50
- const e = `added-tab-${p}`, a = v || `Tab ${p}`, t = {
51
- id: e,
52
- title: a,
53
- content: h || /* @__PURE__ */ b("div", {})
54
- };
55
- i((s) => [...s, t]), j((s) => s + 1), x?.(), d(e);
56
- },
57
- onTabDelete: (e) => {
58
- if (i((a) => a.filter((t) => t.id !== e)), c === e) {
59
- const a = n.indexOf(e);
60
- let t;
61
- a > 0 ? t = n[a - 1] : n.length > 1 ? t = n[1] : t = void 0, t && d(t);
62
- }
63
- D?.(e);
64
- }
65
- }
66
- ),
67
- /* @__PURE__ */ b(
68
- M,
69
- {
70
- tabs: l,
71
- selectedTabId: c,
72
- extendedTabContent: h,
73
- extendable: f
74
- }
75
- )
76
- ] });
77
- };
78
- export {
79
- Q as default
80
- };
@@ -1,111 +0,0 @@
1
- import { jsx as l, jsxs as B, Fragment as A } from "react/jsx-runtime";
2
- import { getClassName as F } from "../../../../utils/get-class-name.js";
3
- import { useState as E, useRef as O, useId as q, useEffect as g } from "react";
4
- import { TabEditInput as G } from "../edit-input/TabEditInput.js";
5
- import './TabButton.css';/* empty css */
6
- import { OrientationMode as H } from "../../../../enums/orientation-mode.js";
7
- import w from "../../../atoms/button/Button.js";
8
- import { ElementSize as C } from "../../../../enums/element-size.js";
9
- import { IconName as I } from "../../../../enums/icon-name.js";
10
- import { ButtonView as v } from "../../../../enums/button-view.js";
11
- const nt = ({
12
- title: e,
13
- onTabSelect: T,
14
- onTabTitleChange: k,
15
- onTabDelete: d,
16
- tabId: c,
17
- isSelected: a,
18
- isDisabled: o = !1,
19
- stretched: y = !1,
20
- editable: f = !1,
21
- extendable: V = !1,
22
- tabPanelId: N,
23
- mode: M
24
- }) => {
25
- const [n, i] = E(!1), [r, s] = E(e), p = O(null), m = q(), _ = f && !o && a, b = V && !o && !!d && a, x = _ || b, z = F([
26
- "cl-tab__wrapper",
27
- {
28
- "cl-tab__wrapper_disabled": o,
29
- "cl-tab__wrapper_vertical": M === H.Vertical,
30
- "cl-tab__wrapper_selected": a,
31
- "cl-tab__wrapper_stretched": y,
32
- "cl-tab__wrapper_editable": f,
33
- "cl-tab__wrapper_inactive": !a
34
- }
35
- ]);
36
- g(() => {
37
- n && p.current && (p.current.focus(), p.current.select());
38
- }, [n]), g(() => {
39
- s(e);
40
- }, [e]);
41
- const S = () => {
42
- o || i(!n);
43
- }, j = () => {
44
- n || T(c);
45
- }, D = (t) => {
46
- s(t.target.value);
47
- }, K = (t) => {
48
- t.relatedTarget?.id === m || u();
49
- }, R = (t) => {
50
- t.key === "Enter" ? (t.preventDefault(), u()) : t.key === "Escape" && (t.preventDefault(), h());
51
- }, u = () => {
52
- r.trim() && r !== e ? k?.(r.trim()) : s(e), i(!1);
53
- }, h = () => {
54
- s(e), i(!1);
55
- };
56
- return /* @__PURE__ */ l("span", { className: z, children: n ? /* @__PURE__ */ l(
57
- G,
58
- {
59
- tabId: c,
60
- editValue: r,
61
- isEditMode: n,
62
- onInputChange: D,
63
- onInputBlur: K,
64
- onInputKeyDown: R,
65
- onSave: u,
66
- onCancel: h,
67
- cancelButtonId: m
68
- }
69
- ) : /* @__PURE__ */ B(A, { children: [
70
- /* @__PURE__ */ l(
71
- "button",
72
- {
73
- role: "tab",
74
- id: c,
75
- onClick: j,
76
- "aria-selected": a,
77
- "aria-controls": N,
78
- className: "cl-tab",
79
- disabled: o,
80
- children: r
81
- }
82
- ),
83
- x && /* @__PURE__ */ B("span", { className: "cl-tab__buttons", children: [
84
- _ && /* @__PURE__ */ l(
85
- w,
86
- {
87
- view: v.Icon,
88
- icon: I.Edit3,
89
- onClick: S,
90
- label: "Edit tab",
91
- tooltip: "Edit tab",
92
- iconSize: C.Small
93
- }
94
- ),
95
- b && /* @__PURE__ */ l(
96
- w,
97
- {
98
- view: v.Icon,
99
- icon: I.Trash2,
100
- onClick: () => d?.(c),
101
- label: "Delete tab",
102
- tooltip: "Delete tab",
103
- iconSize: C.Small
104
- }
105
- )
106
- ] })
107
- ] }) });
108
- };
109
- export {
110
- nt as TabButton
111
- };
@@ -1,19 +0,0 @@
1
- import { jsx as d } from "react/jsx-runtime";
2
- import './TabContent.css';/* empty css */
3
- const l = ({ tabs: o, selectedTabId: t, extendable: a, extendedTabContent: e }) => {
4
- const n = o.find((c) => c.id === t)?.content, i = `tabpanel_${t}`;
5
- return /* @__PURE__ */ d(
6
- "div",
7
- {
8
- role: "tabpanel",
9
- "data-testid": "tab-content",
10
- "aria-labelledby": t,
11
- id: i,
12
- className: "cl-tab-content",
13
- children: a && !n ? e : n
14
- }
15
- );
16
- };
17
- export {
18
- l as TabContent
19
- };
@@ -1,64 +0,0 @@
1
- import { jsxs as i, jsx as e } from "react/jsx-runtime";
2
- import { useRef as h, useEffect as S } from "react";
3
- import './TabEditInput.css';/* empty css */
4
- import o from "../../../atoms/button/Button.js";
5
- import { ElementSize as c } from "../../../../enums/element-size.js";
6
- import { IconName as r } from "../../../../enums/icon-name.js";
7
- import { ButtonView as a } from "../../../../enums/button-view.js";
8
- const g = ({
9
- tabId: l,
10
- isEditMode: n,
11
- editValue: m,
12
- onInputChange: u,
13
- onInputBlur: s,
14
- onInputKeyDown: p,
15
- onSave: f,
16
- onCancel: b,
17
- cancelButtonId: d
18
- }) => {
19
- const t = h(null);
20
- return S(() => {
21
- n && t.current && (t.current.focus(), t.current.select());
22
- }, [n]), /* @__PURE__ */ i("div", { className: "cl-tab-edit-container", children: [
23
- /* @__PURE__ */ e(
24
- "input",
25
- {
26
- ref: t,
27
- id: `${l}-input`,
28
- type: "text",
29
- value: m,
30
- onChange: u,
31
- onBlur: s,
32
- onKeyDown: p,
33
- className: "cl-tab-edit-container__input",
34
- maxLength: 50
35
- }
36
- ),
37
- /* @__PURE__ */ i("span", { className: "cl-tab-edit-container__buttons", children: [
38
- /* @__PURE__ */ e(
39
- o,
40
- {
41
- view: a.Icon,
42
- icon: r.Check,
43
- onClick: f,
44
- label: "Save tab title",
45
- iconSize: c.Small
46
- }
47
- ),
48
- /* @__PURE__ */ e(
49
- o,
50
- {
51
- view: a.Icon,
52
- icon: r.X,
53
- onClick: b,
54
- label: "Cancel tab title change",
55
- id: d,
56
- iconSize: c.Small
57
- }
58
- )
59
- ] })
60
- ] });
61
- };
62
- export {
63
- g as TabEditInput
64
- };
@@ -1,3 +0,0 @@
1
- export { default } from './Tabs.js';
2
- export * from './Tabs.js';
3
- import './Tabs.css';
@@ -1,67 +0,0 @@
1
- import { jsxs as h, jsx as p } from "react/jsx-runtime";
2
- import { getClassName as D } from "../../../../utils/get-class-name.js";
3
- import { moveFocusOnElementById as L } from "../../../../utils/move-focus-on-element-by-id.js";
4
- import { TabButton as P } from "../button/TabButton.js";
5
- import './TabList.css';/* empty css */
6
- import { OrientationMode as s } from "../../../../enums/orientation-mode.js";
7
- import B from "../../../atoms/button/Button.js";
8
- import { IconName as C } from "../../../../enums/icon-name.js";
9
- import { ButtonView as I } from "../../../../enums/button-view.js";
10
- const E = ({
11
- tabs: u,
12
- onTabSelect: l,
13
- onTabTitleChange: a,
14
- selectedTabId: c,
15
- tabPanelIds: w,
16
- mode: e,
17
- tabIds: i,
18
- stretched: d,
19
- editable: A = !1,
20
- extendable: m = !1,
21
- onTabAdd: v,
22
- onTabDelete: b
23
- }) => {
24
- const y = D([
25
- "cl-tab-list",
26
- { "cl-tab-list_vertical": e === s.Vertical }
27
- ]), g = (t) => {
28
- const o = i.indexOf(c);
29
- if (!["ArrowLeft", "ArrowUp", "ArrowRight", "ArrowDown"].includes(t.key) || (t.preventDefault(), t.key === "ArrowUp" && e === s.Horizontal || t.key === "ArrowLeft" && e === s.Vertical))
30
- return;
31
- const n = t.key === "ArrowLeft" || t.key === "ArrowUp" ? k(o, i.length) : x(o, i.length), r = i[n];
32
- r && (L(r), l(r));
33
- }, k = (t, o) => t - 1 >= 0 ? t - 1 : o - 1, x = (t, o) => t === o - 1 ? 0 : t + 1;
34
- return /* @__PURE__ */ h("div", { role: "tablist", "data-testid": "tab-list", onKeyDown: g, className: y, children: [
35
- u.map(({ id: t, title: o, disabled: f }, n) => /* @__PURE__ */ p(
36
- P,
37
- {
38
- title: o,
39
- onTabSelect: l,
40
- onTabTitleChange: a ? (r) => a(t, r) : void 0,
41
- tabId: t,
42
- isSelected: t === c,
43
- isDisabled: f,
44
- tabPanelId: w[n],
45
- mode: e,
46
- stretched: d,
47
- editable: A,
48
- extendable: m,
49
- onTabDelete: b
50
- },
51
- t
52
- )),
53
- m && /* @__PURE__ */ p(
54
- B,
55
- {
56
- label: "Add Tab",
57
- tooltip: "Add Tab",
58
- view: I.Icon,
59
- icon: C.PlusCircle,
60
- onClick: v
61
- }
62
- )
63
- ] });
64
- };
65
- export {
66
- E as TabList
67
- };