@royaltics/ui 1.0.4 → 1.0.6

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 (161) hide show
  1. package/dist/buttons/Button.d.ts +14 -16
  2. package/dist/buttons/Button.d.ts.map +1 -1
  3. package/dist/buttons/Button.js +23 -8
  4. package/dist/buttons/Button.js.map +1 -1
  5. package/dist/buttons/Button.stories.d.ts +18 -0
  6. package/dist/buttons/Button.stories.d.ts.map +1 -0
  7. package/dist/buttons/Button.stories.js +41 -0
  8. package/dist/buttons/Button.stories.js.map +1 -0
  9. package/dist/buttons/LinkButton.d.ts +8 -0
  10. package/dist/buttons/LinkButton.d.ts.map +1 -0
  11. package/dist/buttons/LinkButton.js +9 -0
  12. package/dist/buttons/LinkButton.js.map +1 -0
  13. package/dist/buttons/LinkButton.stories.d.ts +7 -0
  14. package/dist/buttons/LinkButton.stories.d.ts.map +1 -0
  15. package/dist/buttons/LinkButton.stories.js +48 -0
  16. package/dist/buttons/LinkButton.stories.js.map +1 -0
  17. package/dist/buttons/index.d.ts +2 -1
  18. package/dist/buttons/index.d.ts.map +1 -1
  19. package/dist/buttons/index.js +1 -0
  20. package/dist/buttons/index.js.map +1 -1
  21. package/dist/components/CheckboxTree.d.ts +5 -0
  22. package/dist/components/CheckboxTree.d.ts.map +1 -0
  23. package/dist/components/CheckboxTree.js +131 -0
  24. package/dist/components/CheckboxTree.js.map +1 -0
  25. package/dist/components/CheckboxTree.stories.d.ts +18 -0
  26. package/dist/components/CheckboxTree.stories.d.ts.map +1 -0
  27. package/dist/components/CheckboxTree.stories.js +39 -0
  28. package/dist/components/CheckboxTree.stories.js.map +1 -0
  29. package/dist/components/GenericCard.d.ts +12 -0
  30. package/dist/components/GenericCard.d.ts.map +1 -0
  31. package/dist/components/GenericCard.js +19 -0
  32. package/dist/components/GenericCard.js.map +1 -0
  33. package/dist/components/checkboxtree/CheckBoxTreeButton.d.ts +8 -0
  34. package/dist/components/checkboxtree/CheckBoxTreeButton.d.ts.map +1 -0
  35. package/dist/components/checkboxtree/CheckBoxTreeButton.js +7 -0
  36. package/dist/components/checkboxtree/CheckBoxTreeButton.js.map +1 -0
  37. package/dist/components/checkboxtree/CheckboxTreeError.d.ts +5 -0
  38. package/dist/components/checkboxtree/CheckboxTreeError.d.ts.map +1 -0
  39. package/dist/components/checkboxtree/CheckboxTreeError.js +16 -0
  40. package/dist/components/checkboxtree/CheckboxTreeError.js.map +1 -0
  41. package/dist/components/checkboxtree/NativeCheckbox.d.ts +7 -0
  42. package/dist/components/checkboxtree/NativeCheckbox.d.ts.map +1 -0
  43. package/dist/components/checkboxtree/NativeCheckbox.js +17 -0
  44. package/dist/components/checkboxtree/NativeCheckbox.js.map +1 -0
  45. package/dist/components/checkboxtree/NodeModel.d.ts +30 -0
  46. package/dist/components/checkboxtree/NodeModel.d.ts.map +1 -0
  47. package/dist/components/checkboxtree/NodeModel.js +184 -0
  48. package/dist/components/checkboxtree/NodeModel.js.map +1 -0
  49. package/dist/components/checkboxtree/TreeNode.d.ts +44 -0
  50. package/dist/components/checkboxtree/TreeNode.d.ts.map +1 -0
  51. package/dist/components/checkboxtree/TreeNode.js +139 -0
  52. package/dist/components/checkboxtree/TreeNode.js.map +1 -0
  53. package/dist/components/checkboxtree/constants.d.ts +8 -0
  54. package/dist/components/checkboxtree/constants.d.ts.map +1 -0
  55. package/dist/components/checkboxtree/constants.js +46 -0
  56. package/dist/components/checkboxtree/constants.js.map +1 -0
  57. package/dist/components/checkboxtree/types/types.d.ts +70 -0
  58. package/dist/components/checkboxtree/types/types.d.ts.map +1 -0
  59. package/dist/components/checkboxtree/types/types.js +2 -0
  60. package/dist/components/checkboxtree/types/types.js.map +1 -0
  61. package/dist/components/checkboxtree/utils.d.ts +16 -0
  62. package/dist/components/checkboxtree/utils.d.ts.map +1 -0
  63. package/dist/components/checkboxtree/utils.js +28 -0
  64. package/dist/components/checkboxtree/utils.js.map +1 -0
  65. package/dist/components/index.d.ts +3 -0
  66. package/dist/components/index.d.ts.map +1 -0
  67. package/dist/components/index.js +3 -0
  68. package/dist/components/index.js.map +1 -0
  69. package/dist/constants/DataArrayNodes.d.ts +53 -0
  70. package/dist/constants/DataArrayNodes.d.ts.map +1 -0
  71. package/dist/constants/DataArrayNodes.js +162 -0
  72. package/dist/constants/DataArrayNodes.js.map +1 -0
  73. package/dist/constants/Variants.d.ts +26 -0
  74. package/dist/constants/Variants.d.ts.map +1 -0
  75. package/dist/constants/Variants.js +26 -0
  76. package/dist/constants/Variants.js.map +1 -0
  77. package/dist/forms/Checkbox.d.ts +13 -10
  78. package/dist/forms/Checkbox.d.ts.map +1 -1
  79. package/dist/forms/Checkbox.js +29 -4
  80. package/dist/forms/Checkbox.js.map +1 -1
  81. package/dist/forms/Checkbox.stories.d.ts +20 -0
  82. package/dist/forms/Checkbox.stories.d.ts.map +1 -0
  83. package/dist/forms/Checkbox.stories.js +65 -0
  84. package/dist/forms/Checkbox.stories.js.map +1 -0
  85. package/dist/forms/Input.d.ts +11 -22
  86. package/dist/forms/Input.d.ts.map +1 -1
  87. package/dist/forms/Input.js +27 -12
  88. package/dist/forms/Input.js.map +1 -1
  89. package/dist/forms/Input.stories.d.ts +22 -0
  90. package/dist/forms/Input.stories.d.ts.map +1 -0
  91. package/dist/forms/Input.stories.js +59 -0
  92. package/dist/forms/Input.stories.js.map +1 -0
  93. package/dist/forms/PhotoCard.d.ts.map +1 -1
  94. package/dist/forms/PlayerYoutube.d.ts.map +1 -1
  95. package/dist/forms/RadioButton.d.ts +2 -2
  96. package/dist/forms/RadioButton.d.ts.map +1 -1
  97. package/dist/forms/RadioButton.js +1 -1
  98. package/dist/forms/RadioButton.js.map +1 -1
  99. package/dist/forms/Select.d.ts +6 -13
  100. package/dist/forms/Select.d.ts.map +1 -1
  101. package/dist/forms/Select.js +25 -15
  102. package/dist/forms/Select.js.map +1 -1
  103. package/dist/forms/Select.stories.d.ts +17 -0
  104. package/dist/forms/Select.stories.d.ts.map +1 -0
  105. package/dist/forms/Select.stories.js +36 -0
  106. package/dist/forms/Select.stories.js.map +1 -0
  107. package/dist/forms/TextArea.d.ts.map +1 -1
  108. package/dist/forms/ToggleSwitch.d.ts.map +1 -1
  109. package/dist/hooks/index.d.ts +3 -3
  110. package/dist/hooks/index.d.ts.map +1 -1
  111. package/dist/hooks/index.js +3 -3
  112. package/dist/hooks/index.js.map +1 -1
  113. package/dist/hooks/useHttpState.d.ts.map +1 -1
  114. package/dist/hooks/useRouter.d.ts +2 -2
  115. package/dist/icons/index.d.ts +2 -0
  116. package/dist/icons/index.d.ts.map +1 -0
  117. package/dist/icons/index.js +3 -0
  118. package/dist/icons/index.js.map +1 -0
  119. package/dist/index.d.ts +2 -7
  120. package/dist/index.d.ts.map +1 -1
  121. package/dist/index.js +2 -12
  122. package/dist/index.js.map +1 -1
  123. package/dist/reducers/index.d.ts.map +1 -1
  124. package/dist/stories/Button.d.ts +17 -0
  125. package/dist/stories/Button.d.ts.map +1 -0
  126. package/dist/stories/Button.js +8 -0
  127. package/dist/stories/Button.js.map +1 -0
  128. package/dist/stories/Button.stories.d.ts +25 -0
  129. package/dist/stories/Button.stories.d.ts.map +1 -0
  130. package/dist/stories/Button.stories.js +51 -0
  131. package/dist/stories/Button.stories.js.map +1 -0
  132. package/dist/stories/Header.d.ts +14 -0
  133. package/dist/stories/Header.d.ts.map +1 -0
  134. package/dist/stories/Header.js +21 -0
  135. package/dist/stories/Header.js.map +1 -0
  136. package/dist/stories/Header.stories.d.ts +19 -0
  137. package/dist/stories/Header.stories.d.ts.map +1 -0
  138. package/dist/stories/Header.stories.js +27 -0
  139. package/dist/stories/Header.stories.js.map +1 -0
  140. package/dist/stories/Page.d.ts +4 -0
  141. package/dist/stories/Page.d.ts.map +1 -0
  142. package/dist/stories/Page.js +38 -0
  143. package/dist/stories/Page.js.map +1 -0
  144. package/dist/stories/Page.stories.d.ts +13 -0
  145. package/dist/stories/Page.stories.d.ts.map +1 -0
  146. package/dist/stories/Page.stories.js +25 -0
  147. package/dist/stories/Page.stories.js.map +1 -0
  148. package/dist/types/StoriesArguments.d.ts +4 -0
  149. package/dist/types/StoriesArguments.d.ts.map +1 -0
  150. package/dist/types/StoriesArguments.js +52 -0
  151. package/dist/types/StoriesArguments.js.map +1 -0
  152. package/dist/types/global.d.ts +31 -0
  153. package/dist/types/global.d.ts.map +1 -0
  154. package/dist/types/global.js +2 -0
  155. package/dist/types/global.js.map +1 -0
  156. package/dist/utils/cvmix.d.ts +23 -0
  157. package/dist/utils/cvmix.d.ts.map +1 -0
  158. package/dist/utils/cvmix.js +46 -0
  159. package/dist/utils/cvmix.js.map +1 -0
  160. package/dist/validators/index.d.ts.map +1 -1
  161. package/package.json +101 -74
@@ -1,19 +1,17 @@
1
- import React, { ReactNode } from "react";
2
- export type ButtonType = {
1
+ import React from 'react';
2
+ import { ComponentBase } from '../types/global.js';
3
+ export declare const classNamesProps: (mainProps: {
4
+ size?: string | undefined;
5
+ variant?: string | undefined;
6
+ }, keyProps?: {
7
+ [key: string]: string;
8
+ }) => string;
9
+ export interface ButtonProps extends ComponentBase {
3
10
  lb?: string;
4
- icon?: ReactNode;
5
- children?: ReactNode;
6
- IconNode?: any;
7
- inForm?: boolean;
8
- className?: any;
9
- theme?: 'primary' | 'secondary' | 'warn' | 'danger' | 'default';
10
- tabIndex?: number;
11
- disabled?: boolean;
12
- onClick?: any;
13
- wMax?: boolean;
14
- padding?: 'small' | 'medium' | 'large';
15
- wrap?: boolean;
16
- };
17
- declare const Button: ({ lb, padding, icon, children, IconNode, wMax, theme, className, onClick, inForm, disabled, tabIndex, wrap }: ButtonType) => React.JSX.Element;
11
+ Icon?: React.PropsWithRef<any>;
12
+ onClick?: (event: React.MouseEvent<HTMLButtonElement>) => void;
13
+ loading?: boolean;
14
+ }
15
+ declare const Button: ({ lb, theme, loading, Icon, variant, size, className, onClick, disabled, tabIndex, width }: ButtonProps) => React.JSX.Element;
18
16
  export default Button;
19
17
  //# sourceMappingURL=Button.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../src/buttons/Button.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGzC,MAAM,MAAM,UAAU,GAAG;IACvB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,QAAQ,CAAC,EAAC,SAAS,CAAC;IACpB,QAAQ,CAAC,EAAE,GAAG,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,GAAG,CAAC;IAChB,KAAK,CAAC,EAAE,SAAS,GAAG,WAAW,GAAG,MAAM,GAAG,QAAQ,GAAG,SAAS,CAAC;IAChE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,GAAG,CAAC;IACd,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAA;IACtC,IAAI,CAAC,EAAC,OAAO,CAAA;CACd,CAAA;AAED,QAAA,MAAM,MAAM,iHAA0I,UAAU,sBA0B/J,CAAC;AAEF,eAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../src/buttons/Button.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAKnD,eAAO,MAAM,eAAe;;;;;YAe3B,CAAC;AAEF,MAAM,WAAW,WAAY,SAAQ,aAAa;IACjD,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;IAC/B,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,KAAK,IAAI,CAAC;IAC/D,OAAO,CAAC,EAAE,OAAO,CAAA;CACjB;AAED,QAAA,MAAM,MAAM,GAAI,4FAA8I,WAAW,sBAgBxK,CAAC;AAEF,eAAe,MAAM,CAAC"}
@@ -1,12 +1,27 @@
1
- import React from "react";
1
+ import React from 'react';
2
2
  import cn from 'classnames';
3
- const Button = ({ lb = "", padding, icon, children, IconNode, wMax = false, theme = 'default', className, onClick, inForm, disabled, tabIndex, wrap }) => {
4
- return (React.createElement("div", { className: `flex flex-col items-stretch justify-end ${wMax ? 'w-max' : 'w-full'} ${className ?? ''}` },
5
- React.createElement("button", { className: cn('button text-white ', theme == 'default' && "bg-gray-500 hover:bg-gray-600 disabled:bg-slate-300", theme == 'primary' && "bg-sky-650 hover:bg-sky-750 disabled:bg-sky-300 ", theme == 'secondary' && "bg-green-500 hover:bg-green-650 disabled:bg-green-300 ", theme == 'danger' && "bg-red-600 hover:bg-red-700 disabled:bg-red-300 ", theme == 'warn' && "bg-yellow-600 hover:bg-yellow-700 disabled:bg-yellow-300 ", padding == 'small' && (inForm || icon || IconNode ? '!py-[0.45rem]' : '!py-1.5'), padding == 'medium' && '!py-2 !px-4', padding == 'large' && '!p-4'), onClick: onClick, title: lb, tabIndex: tabIndex, disabled: disabled },
6
- icon,
7
- children,
8
- IconNode && React.createElement(IconNode, { className: "h-5" }),
9
- lb && React.createElement("span", { className: wrap ? 'hidden md:block' : '' }, lb))));
3
+ import { ArrowPathIcon } from '@heroicons/react/16/solid';
4
+ import { cvaMix } from '../utils/cvmix.js';
5
+ import { Variants } from '../constants/Variants.js';
6
+ export const classNamesProps = cvaMix("flex items-center justify-between rounded-md cursor-pointer", {
7
+ size: Variants.size,
8
+ variant: {
9
+ __key: 'theme',
10
+ __base: 'disabled:opacity-70',
11
+ fill: Variants.fill,
12
+ outline: Variants.outline
13
+ }
14
+ }, {
15
+ size: 'xs',
16
+ filled: 'outline',
17
+ theme: 'primary',
18
+ });
19
+ ;
20
+ const Button = ({ lb = '', theme = 'primary', loading, Icon, variant = 'fill', size = 'md', className, onClick, disabled = false, tabIndex, width = 'full' }) => {
21
+ return (React.createElement("div", { className: cn('flex flex-col items-stretch justify-end', width == 'full' ? 'w-full' : 'w-max', className) },
22
+ React.createElement("button", { className: cn(classNamesProps({ variant, size }, { theme })), onClick: onClick, title: lb, tabIndex: tabIndex, disabled: disabled },
23
+ loading ? (React.createElement(ArrowPathIcon, { className: "animate-spin h-5" })) : (Icon ? React.createElement(Icon, { className: cn('h-5 w-5 shrink-0', { 'h-4 w-4': size === 'xs' || size === 'sm' }) }) : null),
24
+ lb && React.createElement("span", { className: cn({ 'hidden md:block': width == 'max' && Icon }) }, lb))));
10
25
  };
11
26
  export default Button;
12
27
  //# sourceMappingURL=Button.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Button.js","sourceRoot":"","sources":["../../src/buttons/Button.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAoB,MAAM,OAAO,CAAC;AACzC,OAAO,EAAE,MAAM,YAAY,CAAA;AAkB3B,MAAM,MAAM,GAAG,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,OAAO,EAAE,IAAI,EAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,GAAG,KAAK,EAAE,KAAK,GAAG,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAc,EAAE,EAAE;IAElK,OAAO,CACL,6BAAK,SAAS,EAAE,2CAA2C,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,IAAI,SAAS,IAAI,EAAE,EAAE;QACvG,gCACE,SAAS,EAAE,EAAE,CAAC,oBAAoB,EAChC,KAAK,IAAI,SAAS,IAAI,qDAAqD,EAC3E,KAAK,IAAI,SAAS,IAAI,kDAAkD,EACxE,KAAK,IAAI,WAAW,IAAI,wDAAwD,EAChF,KAAK,IAAI,QAAQ,IAAI,kDAAkD,EACvE,KAAK,IAAI,MAAM,IAAI,2DAA2D,EAC9E,OAAO,IAAI,OAAO,IAAI,CAAC,MAAM,IAAI,IAAI,IAAI,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,EAChF,OAAO,IAAI,QAAQ,IAAI,aAAa,EACpC,OAAO,IAAI,OAAO,IAAI,MAAM,CAC7B,EACD,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,EAAE,EACT,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ;YACjB,IAAI;YACJ,QAAQ;YACR,QAAQ,IAAI,oBAAC,QAAQ,IAAC,SAAS,EAAC,KAAK,GAAG;YACxC,EAAE,IAAI,8BAAM,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,iBAAiB,CAAA,CAAC,CAAA,EAAE,IAAG,EAAE,CAAQ,CACzD,CACL,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"Button.js","sourceRoot":"","sources":["../../src/buttons/Button.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,YAAY,CAAC;AAE5B,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAEpD,MAAM,CAAC,MAAM,eAAe,GAAG,MAAM,CAAC,6DAA6D,EAClG;IACC,IAAI,EAAE,QAAQ,CAAC,IAAI;IACnB,OAAO,EAAE;QACR,KAAK,EAAE,OAAO;QACd,MAAM,EAAE,qBAAqB;QAC7B,IAAI,EAAE,QAAQ,CAAC,IAAI;QACnB,OAAO,EAAE,QAAQ,CAAC,OAAO;KACzB;CACD,EACD;IACC,IAAI,EAAE,IAAI;IACV,MAAM,EAAE,SAAS;IACjB,KAAK,EAAE,SAAS;CAChB,CACD,CAAC;AAOD,CAAC;AAEF,MAAM,MAAM,GAAG,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,KAAK,GAAG,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,GAAG,MAAM,EAAE,IAAI,GAAG,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,GAAG,KAAK,EAAE,QAAQ,EAAE,KAAK,GAAG,MAAM,EAAe,EAAE,EAAE;IAE5K,OAAO,CACN,6BAAK,SAAS,EAAE,EAAE,CAAC,yCAAyC,EAAE,KAAK,IAAI,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,EAAE,SAAS,CAAC;QAC7G,gCACC,SAAS,EAAE,EAAE,CAAC,eAAe,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,EAC5D,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,EAAE,EACT,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ;YAEjB,OAAO,CAAC,CAAC,CAAC,CAAC,oBAAC,aAAa,IAAC,SAAS,EAAC,kBAAkB,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,oBAAC,IAAI,IAAC,SAAS,EAAE,EAAE,CAAC,kBAAkB,EAAE,EAAE,SAAS,EAAE,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC,GAAI,CAAC,CAAC,CAAC,IAAI,CAAC;YACvK,EAAE,IAAI,8BAAM,SAAS,EAAE,EAAE,CAAC,EAAE,iBAAiB,EAAE,KAAK,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC,IAAG,EAAE,CAAQ,CAC9E,CACJ,CACN,CAAC;AACH,CAAC,CAAC;AAEF,eAAe,MAAM,CAAC"}
@@ -0,0 +1,18 @@
1
+ import type { StoryObj } from '@storybook/react-vite';
2
+ import { ButtonProps } from './Button.js';
3
+ declare const meta: {
4
+ title: string;
5
+ component: ({ lb, theme, loading, Icon, variant, size, className, onClick, disabled, tabIndex, width }: ButtonProps) => import("react").JSX.Element;
6
+ parameters: {
7
+ layout: string;
8
+ };
9
+ tags: string[];
10
+ argTypes: {
11
+ disabled: any;
12
+ };
13
+ };
14
+ export default meta;
15
+ export declare const buttonPrimary: StoryObj<typeof meta>;
16
+ export declare const buttonSecondary: StoryObj<typeof meta>;
17
+ export declare const variantbuttonSize: StoryObj<typeof meta>;
18
+ //# sourceMappingURL=Button.stories.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Button.stories.d.ts","sourceRoot":"","sources":["../../src/buttons/Button.stories.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAQ,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAe,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAKlD,QAAA,MAAM,IAAI;;;;;;;;;;CAQmB,CAAC;AAE9B,eAAe,IAAI,CAAC;AAIpB,eAAO,MAAM,aAAa,EAAE,QAAQ,CAAC,OAAO,IAAI,CAO/C,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,QAAQ,CAAC,OAAO,IAAI,CASjD,CAAC;AAGF,eAAO,MAAM,iBAAiB,EAAE,QAAQ,CAAC,OAAO,IAAI,CAQnD,CAAC"}
@@ -0,0 +1,41 @@
1
+ import Button from './Button.js'; // Sin .js si usas la configuración por defecto de Webpack/Vite
2
+ import { ArgumentsBase, ArgumentsComponents } from '../types/StoriesArguments.js';
3
+ import { TrashIcon } from '@heroicons/react/16/solid';
4
+ // Configuración general para el componente en Storybook
5
+ const meta = {
6
+ title: 'UI/Buttons/Button', // Categoría y nombre en la barra lateral de Storybook
7
+ component: Button,
8
+ parameters: {
9
+ layout: 'centered', // Centra el componente en el lienzo
10
+ },
11
+ tags: ['autodocs'],
12
+ argTypes: { ...ArgumentsBase, disabled: ArgumentsComponents.disabled }
13
+ };
14
+ export default meta;
15
+ // Historias individuales
16
+ export const buttonPrimary = {
17
+ args: {
18
+ lb: 'Botón Primario',
19
+ variant: 'fill',
20
+ loading: true,
21
+ theme: 'primary'
22
+ },
23
+ };
24
+ export const buttonSecondary = {
25
+ args: {
26
+ lb: 'Botón Secundario',
27
+ theme: 'secondary',
28
+ size: 'xs',
29
+ variant: 'fill',
30
+ Icon: TrashIcon
31
+ },
32
+ };
33
+ export const variantbuttonSize = {
34
+ args: {
35
+ lb: 'Botón Variante primary',
36
+ theme: 'primary',
37
+ size: 'lg',
38
+ variant: 'outline',
39
+ },
40
+ };
41
+ //# sourceMappingURL=Button.stories.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Button.stories.js","sourceRoot":"","sources":["../../src/buttons/Button.stories.tsx"],"names":[],"mappings":"AAEA,OAAO,MAAuB,MAAM,aAAa,CAAC,CAAC,+DAA+D;AAClH,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AAClF,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAEtD,wDAAwD;AACxD,MAAM,IAAI,GAAG;IACX,KAAK,EAAE,mBAAmB,EAAE,sDAAsD;IAClF,SAAS,EAAE,MAAM;IACjB,UAAU,EAAE;QACV,MAAM,EAAE,UAAU,EAAE,oCAAoC;KACzD;IACD,IAAI,EAAE,CAAC,UAAU,CAAC;IAClB,QAAQ,EAAE,EAAE,GAAG,aAAa,EAAE,QAAQ,EAAE,mBAAmB,CAAC,QAAQ,EAAE;CAC3C,CAAC;AAE9B,eAAe,IAAI,CAAC;AAGpB,yBAAyB;AACzB,MAAM,CAAC,MAAM,aAAa,GAA0B;IAClD,IAAI,EAAE;QACJ,EAAE,EAAE,gBAAgB;QACpB,OAAO,EAAE,MAAM;QACf,OAAO,EAAE,IAAI;QACb,KAAK,EAAE,SAAS;KACjB;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAA0B;IACpD,IAAI,EAAE;QACJ,EAAE,EAAE,kBAAkB;QACtB,KAAK,EAAE,WAAW;QAClB,IAAI,EAAE,IAAI;QACV,OAAO,EAAE,MAAM;QACf,IAAI,EAAE,SAAS;KAEhB;CACF,CAAC;AAGF,MAAM,CAAC,MAAM,iBAAiB,GAA0B;IACtD,IAAI,EAAE;QACJ,EAAE,EAAE,wBAAwB;QAC5B,KAAK,EAAE,SAAS;QAChB,IAAI,EAAE,IAAI;QACV,OAAO,EAAE,SAAS;KAEnB;CACF,CAAC"}
@@ -0,0 +1,8 @@
1
+ import React from "react";
2
+ import { ButtonProps } from "./Button.js";
3
+ export interface LinkButtonProps extends ButtonProps {
4
+ to: string;
5
+ }
6
+ declare const LinkButton: (props: LinkButtonProps) => React.JSX.Element;
7
+ export default LinkButton;
8
+ //# sourceMappingURL=LinkButton.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LinkButton.d.ts","sourceRoot":"","sources":["../../src/buttons/LinkButton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAe,EAAE,WAAW,EAAC,MAAM,aAAa,CAAC;AACjD,MAAM,WAAW,eAAgB,SAAQ,WAAW;IAClD,EAAE,EAAE,MAAM,CAAA;CACX;AAED,QAAA,MAAM,UAAU,GAAI,OAAO,eAAe,sBASzC,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -0,0 +1,9 @@
1
+ import React from "react";
2
+ import { Link } from "react-router-dom";
3
+ import Button from "./Button.js";
4
+ const LinkButton = (props) => {
5
+ return (React.createElement(Link, { to: props.to, title: props.lb },
6
+ React.createElement(Button, { ...props })));
7
+ };
8
+ export default LinkButton;
9
+ //# sourceMappingURL=LinkButton.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LinkButton.js","sourceRoot":"","sources":["../../src/buttons/LinkButton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACxC,OAAO,MAAsB,MAAM,aAAa,CAAC;AAKjD,MAAM,UAAU,GAAG,CAAC,KAAsB,EAAE,EAAE;IAE5C,OAAO,CACL,oBAAC,IAAI,IACH,EAAE,EAAE,KAAK,CAAC,EAAE,EACZ,KAAK,EAAE,KAAK,CAAC,EAAE;QACf,oBAAC,MAAM,OAAK,KAAK,GAAI,CAChB,CACR,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -0,0 +1,7 @@
1
+ import type { StoryObj } from '@storybook/react-vite';
2
+ declare const meta: any;
3
+ export default meta;
4
+ export declare const LinkButtonPrimary: StoryObj<typeof meta>;
5
+ export declare const LinkButtonSecondary: StoryObj<typeof meta>;
6
+ export declare const variantLinkButtonSize: StoryObj<typeof meta>;
7
+ //# sourceMappingURL=LinkButton.stories.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LinkButton.stories.d.ts","sourceRoot":"","sources":["../../src/buttons/LinkButton.stories.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAQ,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAO5D,QAAA,MAAM,IAAI,EAAE,GAcqB,CAAC;AAGlC,eAAe,IAAI,CAAC;AAIpB,eAAO,MAAM,iBAAiB,EAAE,QAAQ,CAAC,OAAO,IAAI,CAQnD,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,QAAQ,CAAC,OAAO,IAAI,CAUrD,CAAC;AAGF,eAAO,MAAM,qBAAqB,EAAE,QAAQ,CAAC,OAAO,IAAI,CASvD,CAAC"}
@@ -0,0 +1,48 @@
1
+ import React from "react";
2
+ import LinkButton from './LinkButton.js'; // Sin .js si usas la configuración por defecto de Webpack/Vite
3
+ import { ArgumentsBase, ArgumentsComponents } from '../types/StoriesArguments.js';
4
+ import { TrashIcon } from '@heroicons/react/16/solid';
5
+ import { BrowserRouter } from 'react-router-dom';
6
+ // Configuración general para el componente en Storybook
7
+ const meta = {
8
+ title: 'UI/Buttons/LinkButton', // Categoría y nombre en la barra lateral de Storybook
9
+ component: LinkButton,
10
+ // Aplica el decorador solo a esta historia o a este archivo de historias
11
+ decorators: [
12
+ (Story) => (React.createElement(BrowserRouter, null,
13
+ React.createElement(Story, null))),
14
+ ],
15
+ tags: ['autodocs'],
16
+ argTypes: { ...ArgumentsBase, disabled: ArgumentsComponents.disabled }
17
+ };
18
+ export default meta;
19
+ // Historias individuales
20
+ export const LinkButtonPrimary = {
21
+ args: {
22
+ to: '',
23
+ lb: 'Botón Primario',
24
+ variant: 'fill',
25
+ loading: true,
26
+ theme: 'primary'
27
+ },
28
+ };
29
+ export const LinkButtonSecondary = {
30
+ args: {
31
+ to: '',
32
+ lb: 'Botón Secundario',
33
+ theme: 'secondary',
34
+ size: 'xs',
35
+ variant: 'fill',
36
+ Icon: TrashIcon
37
+ },
38
+ };
39
+ export const variantLinkButtonSize = {
40
+ args: {
41
+ to: '',
42
+ lb: 'Botón Variante primary',
43
+ theme: 'primary',
44
+ size: 'lg',
45
+ variant: 'outline',
46
+ },
47
+ };
48
+ //# sourceMappingURL=LinkButton.stories.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LinkButton.stories.js","sourceRoot":"","sources":["../../src/buttons/LinkButton.stories.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,UAA+B,MAAM,iBAAiB,CAAC,CAAC,+DAA+D;AAC9H,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AAClF,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD,wDAAwD;AACxD,MAAM,IAAI,GAAQ;IAChB,KAAK,EAAE,uBAAuB,EAAE,sDAAsD;IACtF,SAAS,EAAE,UAAU;IACrB,yEAAyE;IACzE,UAAU,EAAE;QACV,CAAC,KAAK,EAAE,EAAE,CAAC,CACT,oBAAC,aAAa;YACZ,oBAAC,KAAK,OAAG,CACK,CACjB;KACF;IAED,IAAI,EAAE,CAAC,UAAU,CAAC;IAClB,QAAQ,EAAE,EAAE,GAAG,aAAa,EAAE,QAAQ,EAAE,mBAAmB,CAAC,QAAQ,EAAE;CACvC,CAAC;AAGlC,eAAe,IAAI,CAAC;AAGpB,yBAAyB;AACzB,MAAM,CAAC,MAAM,iBAAiB,GAA0B;IACtD,IAAI,EAAE;QACJ,EAAE,EAAE,EAAE;QACN,EAAE,EAAE,gBAAgB;QACpB,OAAO,EAAE,MAAM;QACf,OAAO,EAAE,IAAI;QACb,KAAK,EAAE,SAAS;KACjB;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAA0B;IACxD,IAAI,EAAE;QACJ,EAAE,EAAE,EAAE;QACN,EAAE,EAAE,kBAAkB;QACtB,KAAK,EAAE,WAAW;QAClB,IAAI,EAAE,IAAI;QACV,OAAO,EAAE,MAAM;QACf,IAAI,EAAE,SAAS;KAEhB;CACF,CAAC;AAGF,MAAM,CAAC,MAAM,qBAAqB,GAA0B;IAC1D,IAAI,EAAE;QACJ,EAAE,EAAE,EAAE;QACN,EAAE,EAAE,wBAAwB;QAC5B,KAAK,EAAE,SAAS;QAChB,IAAI,EAAE,IAAI;QACV,OAAO,EAAE,SAAS;KAEnB;CACF,CAAC"}
@@ -1,3 +1,4 @@
1
1
  export { default as Button } from "./Button.js";
2
- export type { ButtonType } from './Button.js';
2
+ export { default as LinkButtonSmall } from "./LinkButton.js";
3
+ export type { ButtonProps } from './Button.js';
3
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/buttons/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,aAAa,CAAC;AAChD,YAAY,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/buttons/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAC7D,YAAY,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC"}
@@ -1,2 +1,3 @@
1
1
  export { default as Button } from "./Button.js";
2
+ export { default as LinkButtonSmall } from "./LinkButton.js";
2
3
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/buttons/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/buttons/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,iBAAiB,CAAC"}
@@ -0,0 +1,5 @@
1
+ import React from 'react';
2
+ import { CheckboxTreeProps } from './checkboxtree/types/types.js';
3
+ declare function CheckboxTree(props: CheckboxTreeProps): React.JSX.Element;
4
+ export default CheckboxTree;
5
+ //# sourceMappingURL=CheckboxTree.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CheckboxTree.d.ts","sourceRoot":"","sources":["../../src/components/CheckboxTree.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAyC,MAAM,OAAO,CAAC;AAO9D,OAAO,EAAoB,iBAAiB,EAAgB,MAAM,+BAA+B,CAAC;AAIlG,iBAAS,YAAY,CAAC,KAAK,EAAE,iBAAiB,qBAqM7C;AAED,eAAe,YAAY,CAAC"}
@@ -0,0 +1,131 @@
1
+ import classNames from 'classnames';
2
+ import React, { useState, useCallback, useMemo } from 'react';
3
+ import Button from './checkboxtree/CheckBoxTreeButton.js';
4
+ import { DefaultCheckBoxProps } from './checkboxtree/constants.js';
5
+ import NodeModel from './checkboxtree/NodeModel.js';
6
+ import TreeNode from './checkboxtree/TreeNode.js';
7
+ import memoize from 'memoize';
8
+ import { v4 as uuidv4 } from 'uuid';
9
+ const MemoizedTreeNode = React.memo(TreeNode);
10
+ function CheckboxTree(props) {
11
+ const mergedProps = { ...DefaultCheckBoxProps, ...props };
12
+ const { nodes, checked, expanded, id, disabled, checkModel, noCascade, onCheck, onExpand, onClick, expandDisabled, expandOnClick, icons, lang, onlyLeafCheckboxes, optimisticToggle, showNodeIcon, showNodeTitle, showExpandAllButtons, direction, nativeCheckboxes } = mergedProps;
13
+ const [componentId] = useState(id || `rct-${uuidv4()}`);
14
+ // UPDATE: Usamos useMemo para crear y actualizar el NodeModel y derivar flatNodesState
15
+ const [model, flatNodesState] = useMemo(() => {
16
+ // Crea una nueva instancia de NodeModel o re-usa la existente para evitar recrearla en cada render
17
+ // Siempre crea uno nuevo si hay cambio en mergedProps
18
+ const currentModel = new NodeModel(mergedProps);
19
+ // Asegura que el modelo se inicializa con los nodos y estados correctos
20
+ currentModel.flattenNodes(nodes);
21
+ currentModel.deserializeLists({ checked, expanded });
22
+ return [currentModel, currentModel.getNodes()];
23
+ }, [nodes, checked, expanded, disabled, mergedProps]); // Dependencias de useMemo
24
+ // UPDATE: Eliminamos el useEffect complejo. El estado ahora se deriva de las props directamente via useMemo.
25
+ // useEffect para actualizaciones, ya no es necesario el estado interno prevPropsRef o su lógica compleja.
26
+ // const prevPropsRef = useRef({ nodes, checked, expanded, disabled }); // REMOVED
27
+ const combineMemorizedIcons = useMemo(() => {
28
+ const defaultIcons = DefaultCheckBoxProps.icons;
29
+ return memoize((customIcons) => ({ ...defaultIcons, ...customIcons }));
30
+ }, []);
31
+ const combinedIcons = useMemo(() => combineMemorizedIcons(icons), [icons, combineMemorizedIcons]);
32
+ const onCheckHandler = useCallback((nodeInfo) => {
33
+ const newModel = model.clone();
34
+ newModel.toggleChecked(nodeInfo, nodeInfo.checked, checkModel, noCascade);
35
+ onCheck(newModel.serializeList('checked'), { ...newModel.getNode(nodeInfo.value), ...nodeInfo });
36
+ // UPDATE: Forzamos un re-render actualizando el estado, lo que disparará el useMemo
37
+ // que a su vez re-calcula el NodeModel y flatNodesState.
38
+ }, [checkModel, noCascade, onCheck, model]);
39
+ const onExpandHandler = useCallback((nodeInfo) => {
40
+ const newModel = model.clone();
41
+ newModel.toggleNode(nodeInfo.value, 'expanded', nodeInfo.expanded);
42
+ onExpand(newModel.serializeList('expanded'), { ...newModel.getNode(nodeInfo.value), ...nodeInfo });
43
+ // UPDATE: No es necesario setFlatNodesState aquí si las props son controladas.
44
+ }, [onExpand, model]);
45
+ const onNodeClickHandler = useCallback((nodeInfo) => {
46
+ if (onClick) {
47
+ const node = model.getNode(nodeInfo.value);
48
+ onClick({ ...node, ...nodeInfo });
49
+ }
50
+ }, [onClick, model]);
51
+ const expandAllNodes = useCallback((expand = true) => {
52
+ const newModel = model.clone();
53
+ onExpand(newModel.expandAllNodes(expand)
54
+ .serializeList('expanded'));
55
+ // UPDATE: No es necesario setFlatNodesState aquí si las props son controladas.
56
+ }, [onExpand, model]);
57
+ const onExpandAllHandler = useCallback(() => {
58
+ expandAllNodes(true);
59
+ }, [expandAllNodes]);
60
+ const onCollapseAllHandler = useCallback(() => {
61
+ expandAllNodes(false);
62
+ }, [expandAllNodes]);
63
+ const isEveryChildChecked = useCallback((node) => {
64
+ if (!node.children || node.children.length === 0)
65
+ return true;
66
+ return node.children.every((child) => flatNodesState[child.value]?.checked);
67
+ }, [flatNodesState]);
68
+ const isSomeChildChecked = useCallback((node) => {
69
+ if (!node.children || node.children.length === 0)
70
+ return false;
71
+ return node.children.some((child) => flatNodesState[child.value]?.checked);
72
+ }, [flatNodesState]);
73
+ const determineShallowCheckState = useCallback((node, noCascadeProp) => {
74
+ const flatNode = flatNodesState[node.value]; // UPDATE: Usar flatNodesState directamente
75
+ if (!flatNode)
76
+ return 0;
77
+ if (flatNode.isLeaf || noCascadeProp || (node.children && node.children.length === 0)) {
78
+ return flatNode.checked ? 1 : 0;
79
+ }
80
+ if (isEveryChildChecked(node))
81
+ return 1;
82
+ if (isSomeChildChecked(node))
83
+ return 2;
84
+ return 0;
85
+ }, [isEveryChildChecked, isSomeChildChecked, flatNodesState]); // UPDATE: Dependencia flatNodesState
86
+ const renderTreeNodes = useCallback((treeNodesToRender, parent) => {
87
+ return treeNodesToRender.map((node) => {
88
+ const key = node.value;
89
+ const flatNode = flatNodesState[node.value];
90
+ if (!flatNode)
91
+ return null;
92
+ const checkState = determineShallowCheckState(node, noCascade);
93
+ const children = flatNode.isParent && flatNode.expanded ? renderTreeNodes(node.children, node) : null;
94
+ const showCheckbox = onlyLeafCheckboxes ? flatNode.isLeaf : flatNode.showCheckbox;
95
+ const parentExpanded = parent?.value ? flatNodesState[parent.value]?.expanded : true;
96
+ if (!parentExpanded && parent?.value) {
97
+ return null;
98
+ }
99
+ return (React.createElement(MemoizedTreeNode, { key: key, checked: checkState, className: node.className, disabled: flatNode.disabled || disabled, expandDisabled: expandDisabled, expandOnClick: expandOnClick, expanded: flatNode.expanded, icon: node.icon, icons: combinedIcons, isLeaf: flatNode.isLeaf, isParent: flatNode.isParent, label: node.label, lang: lang, optimisticToggle: optimisticToggle, showCheckbox: showCheckbox, showNodeIcon: showNodeIcon, title: showNodeTitle ? node.title || node.label : flatNode.title, treeId: componentId, nativeCheckboxes: nativeCheckboxes, value: node.value, onCheck: onCheckHandler, onClick: onNodeClickHandler, onExpand: onExpandHandler }, children));
100
+ });
101
+ }, [
102
+ noCascade, onlyLeafCheckboxes, expandDisabled, expandOnClick, combinedIcons,
103
+ lang, optimisticToggle, showNodeIcon, showNodeTitle, componentId, disabled,
104
+ onCheckHandler, onNodeClickHandler, onExpandHandler,
105
+ determineShallowCheckState, flatNodesState
106
+ ]);
107
+ const renderExpandAll = useCallback(() => {
108
+ if (!showExpandAllButtons) {
109
+ return null;
110
+ }
111
+ return (React.createElement("div", { className: "rct-options" },
112
+ React.createElement(Button, { className: "rct-option rct-option-expand-all", title: lang.expandAll, onClick: onExpandAllHandler },
113
+ icons.expandAll,
114
+ " Expandir"),
115
+ React.createElement(Button, { className: "rct-option rct-option-collapse-all", title: lang.collapseAll, onClick: onCollapseAllHandler },
116
+ icons.collapseAll,
117
+ " Contraer")));
118
+ }, [showExpandAllButtons, lang, icons, onExpandAllHandler, onCollapseAllHandler]);
119
+ const treeNodes = useMemo(() => renderTreeNodes(nodes), [renderTreeNodes, nodes]);
120
+ const className = classNames({
121
+ 'react-checkbox-tree': true,
122
+ 'rct-disabled': disabled,
123
+ 'rct-native-display': nativeCheckboxes,
124
+ 'rct-direction-rtl': direction === 'rtl',
125
+ });
126
+ return (React.createElement("div", { className: className, id: componentId },
127
+ renderExpandAll(),
128
+ React.createElement("ol", null, treeNodes)));
129
+ }
130
+ export default CheckboxTree;
131
+ //# sourceMappingURL=CheckboxTree.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CheckboxTree.js","sourceRoot":"","sources":["../../src/components/CheckboxTree.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ import type { StoryObj } from '@storybook/react-vite';
2
+ import CheckboxTree from './CheckboxTree.js';
3
+ import "./checkboxtree/css/react-checkbox-tree.css";
4
+ declare const meta: {
5
+ title: string;
6
+ component: typeof CheckboxTree;
7
+ parameters: {
8
+ layout: string;
9
+ };
10
+ tags: string[];
11
+ argTypes: {
12
+ disabled: any;
13
+ };
14
+ };
15
+ export default meta;
16
+ export declare const CheckboxTreePrimary: StoryObj<typeof meta>;
17
+ export declare const buttonPrimary: StoryObj<typeof meta>;
18
+ //# sourceMappingURL=CheckboxTree.stories.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CheckboxTree.stories.d.ts","sourceRoot":"","sources":["../../src/components/CheckboxTree.stories.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAQ,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,YAAY,MAAM,mBAAmB,CAAC;AAK7C,OAAO,4CAA4C,CAAA;AAGnD,QAAA,MAAM,IAAI;;;;;;;;;;CAQyB,CAAC;AAEpC,eAAe,IAAI,CAAC;AAKpB,eAAO,MAAM,mBAAmB,EAAE,QAAQ,CAAC,OAAO,IAAI,CAwBrD,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,QAAQ,CAAC,OAAO,IAAI,CAM/C,CAAC"}
@@ -0,0 +1,39 @@
1
+ import CheckboxTree from './CheckboxTree.js'; // Sin .js si usas la configuración por defecto de Webpack/Vite
2
+ import { ArgumentsBase, ArgumentsComponents } from '../types/StoriesArguments.js';
3
+ import { EmpiresData } from '../constants/DataArrayNodes.js';
4
+ import React, { useState } from 'react';
5
+ import "./checkboxtree/css/react-checkbox-tree.css";
6
+ // Configuración general para el componente en Storybook
7
+ const meta = {
8
+ title: 'UI/Components/CheckboxTree', // Categoría y nombre en la barra lateral de Storybook
9
+ component: CheckboxTree,
10
+ parameters: {
11
+ layout: 'centered', // Centra el componente en el lienzo
12
+ },
13
+ tags: ['autodocs'],
14
+ argTypes: { ...ArgumentsBase, disabled: ArgumentsComponents.disabled }
15
+ };
16
+ export default meta;
17
+ // Puedes crear una historia que use el 'render' para un control más fino del estado
18
+ export const CheckboxTreePrimary = {
19
+ render: (args) => {
20
+ const [checked, setChecked] = useState([]);
21
+ const [expanded, setExpanded] = useState([]);
22
+ return (React.createElement(React.Fragment, null,
23
+ React.createElement(CheckboxTree, { id: "checktree", checked: checked, expanded: expanded, nodes: EmpiresData, showExpandAllButtons: true, onCheck: setChecked, onExpand: setExpanded })));
24
+ },
25
+ args: {
26
+ id: 'boxss',
27
+ nodes: EmpiresData,
28
+ showExpandAllButtons: true
29
+ },
30
+ };
31
+ // Historias individuales
32
+ export const buttonPrimary = {
33
+ args: {
34
+ id: "newElemetss",
35
+ nodes: EmpiresData,
36
+ showExpandAllButtons: true
37
+ },
38
+ };
39
+ //# sourceMappingURL=CheckboxTree.stories.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CheckboxTree.stories.js","sourceRoot":"","sources":["../../src/components/CheckboxTree.stories.tsx"],"names":[],"mappings":"AAEA,OAAO,YAAY,MAAM,mBAAmB,CAAC,CAAC,+DAA+D;AAC7G,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AAElF,OAAO,EAAE,WAAW,EAAkB,MAAM,gCAAgC,CAAC;AAC7E,OAAO,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACxC,OAAO,4CAA4C,CAAA;AAEnD,wDAAwD;AACxD,MAAM,IAAI,GAAG;IACX,KAAK,EAAE,4BAA4B,EAAE,sDAAsD;IAC3F,SAAS,EAAE,YAAY;IACvB,UAAU,EAAE;QACV,MAAM,EAAE,UAAU,EAAE,oCAAoC;KACzD;IACD,IAAI,EAAE,CAAC,UAAU,CAAC;IAClB,QAAQ,EAAE,EAAE,GAAG,aAAa,EAAE,QAAQ,EAAE,mBAAmB,CAAC,QAAQ,EAAE;CACrC,CAAC;AAEpC,eAAe,IAAI,CAAC;AAIpB,oFAAoF;AACpF,MAAM,CAAC,MAAM,mBAAmB,GAA0B;IACxD,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;QACf,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAQ,EAAE,CAAC,CAAC;QAClD,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAQ,EAAE,CAAC,CAAC;QACpD,OAAO,CACL;YACE,oBAAC,YAAY,IACX,EAAE,EAAE,WAAW,EACf,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,WAAW,EAClB,oBAAoB,EAAE,IAAI,EAC1B,OAAO,EAAE,UAAU,EACnB,QAAQ,EAAE,WAAW,GACrB,CAED,CACJ,CAAC;IACJ,CAAC;IACD,IAAI,EAAE;QACJ,EAAE,EAAE,OAAO;QACX,KAAK,EAAE,WAAW;QAClB,oBAAoB,EAAE,IAAI;KAC3B;CACF,CAAC;AACF,yBAAyB;AACzB,MAAM,CAAC,MAAM,aAAa,GAA0B;IAClD,IAAI,EAAE;QACJ,EAAE,EAAE,aAAa;QACjB,KAAK,EAAE,WAAW;QAClB,oBAAoB,EAAE,IAAI;KAC3B;CACF,CAAC"}
@@ -0,0 +1,12 @@
1
+ import React from 'react';
2
+ interface GenericCardProps {
3
+ imageUrl?: string;
4
+ title?: string;
5
+ description?: string;
6
+ children?: React.ReactNode;
7
+ theme?: 'light' | 'dark';
8
+ className?: string;
9
+ }
10
+ declare const GenericCard: React.FC<GenericCardProps>;
11
+ export default GenericCard;
12
+ //# sourceMappingURL=GenericCard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GenericCard.d.ts","sourceRoot":"","sources":["../../src/components/GenericCard.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,UAAU,gBAAgB;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AACD,QAAA,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAuC3C,CAAC;AAGF,eAAe,WAAW,CAAC"}
@@ -0,0 +1,19 @@
1
+ import React from 'react';
2
+ const GenericCard = ({ imageUrl, title, description, children, theme = 'light', // Tema por defecto 'light'
3
+ className = '', }) => {
4
+ // Clases base para el contenedor de la tarjeta
5
+ const baseClasses = 'rounded-lg shadow-md overflow-hidden';
6
+ // Clases condicionales para el tema (dark/light)
7
+ const themeClasses = theme === 'dark'
8
+ ? 'bg-gray-800 text-white'
9
+ : 'bg-white text-gray-900';
10
+ return (React.createElement("div", { className: `${baseClasses} ${themeClasses} ${className}` },
11
+ imageUrl && (React.createElement("img", { className: "w-full h-48 object-cover", src: imageUrl, alt: title || 'Card image' })),
12
+ React.createElement("div", { className: "p-6" },
13
+ title && (React.createElement("h2", { className: "font-bold text-xl mb-2" }, title)),
14
+ description && (React.createElement("p", { className: "text-base mb-4" }, description)),
15
+ children,
16
+ " ")));
17
+ };
18
+ export default GenericCard;
19
+ //# sourceMappingURL=GenericCard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GenericCard.js","sourceRoot":"","sources":["../../src/components/GenericCard.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAW1B,MAAM,WAAW,GAA+B,CAAC,EAC7C,QAAQ,EACR,KAAK,EACL,WAAW,EACX,QAAQ,EACR,KAAK,GAAG,OAAO,EAAE,2BAA2B;AAC5C,SAAS,GAAG,EAAE,GACjB,EAAE,EAAE;IACD,+CAA+C;IAC/C,MAAM,WAAW,GAAG,sCAAsC,CAAC;IAE3D,iDAAiD;IACjD,MAAM,YAAY,GAAG,KAAK,KAAK,MAAM;QACjC,CAAC,CAAC,wBAAwB;QAC1B,CAAC,CAAC,wBAAwB,CAAC;IAE/B,OAAO,CACH,6BAAK,SAAS,EAAE,GAAG,WAAW,IAAI,YAAY,IAAI,SAAS,EAAE;QAExD,QAAQ,IAAI,CACT,6BAAK,SAAS,EAAC,0BAA0B,EAAC,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,KAAK,IAAI,YAAY,GAAI,CAC1F;QACD,6BAAK,SAAS,EAAC,KAAK;YACf,KAAK,IAAI,CACN,4BAAI,SAAS,EAAC,wBAAwB,IACjC,KAAK,CACL,CACR;YAEG,WAAW,IAAI,CACX,2BAAG,SAAS,EAAC,gBAAgB,IACxB,WAAW,CACZ,CACP;YAEJ,QAAQ;gBACP,CACJ,CACT,CAAC;AACN,CAAC,CAAC;AAGF,eAAe,WAAW,CAAC"}
@@ -0,0 +1,8 @@
1
+ import React, { ButtonHTMLAttributes } from 'react';
2
+ interface ButtonProps extends ButtonHTMLAttributes<HTMLButtonElement> {
3
+ children?: React.ReactNode;
4
+ title?: string;
5
+ }
6
+ declare function CheckBoxTreeButton({ children, title, ...props }: ButtonProps): React.JSX.Element;
7
+ export default CheckBoxTreeButton;
8
+ //# sourceMappingURL=CheckBoxTreeButton.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CheckBoxTreeButton.d.ts","sourceRoot":"","sources":["../../../src/components/checkboxtree/CheckBoxTreeButton.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EAAE,oBAAoB,EAAE,MAAM,OAAO,CAAC;AAGpD,UAAU,WAAY,SAAQ,oBAAoB,CAAC,iBAAiB,CAAC;IACnE,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,iBAAS,kBAAkB,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE,EAAE,WAAW,qBAWrE;AAED,eAAe,kBAAkB,CAAC"}
@@ -0,0 +1,7 @@
1
+ // CheckBoxTreeButton.tsx
2
+ import React from 'react';
3
+ function CheckBoxTreeButton({ children, title, ...props }) {
4
+ return (React.createElement("button", { "aria-label": title, title: title, type: "button", ...props }, children));
5
+ }
6
+ export default CheckBoxTreeButton;
7
+ //# sourceMappingURL=CheckBoxTreeButton.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CheckBoxTreeButton.js","sourceRoot":"","sources":["../../../src/components/checkboxtree/CheckBoxTreeButton.tsx"],"names":[],"mappings":"AAAA,yBAAyB;AACzB,OAAO,KAA+B,MAAM,OAAO,CAAC;AAQpD,SAAS,kBAAkB,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,KAAK,EAAe;IACpE,OAAO,CACL,8CACc,KAAK,EACjB,KAAK,EAAE,KAAK,EACZ,IAAI,EAAC,QAAQ,KACT,KAAK,IAER,QAAQ,CACF,CACV,CAAC;AACJ,CAAC;AAED,eAAe,kBAAkB,CAAC"}
@@ -0,0 +1,5 @@
1
+ declare class CheckboxTreeError extends Error {
2
+ constructor(message: string);
3
+ }
4
+ export default CheckboxTreeError;
5
+ //# sourceMappingURL=CheckboxTreeError.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CheckboxTreeError.d.ts","sourceRoot":"","sources":["../../../src/components/checkboxtree/CheckboxTreeError.ts"],"names":[],"mappings":"AAAA,cAAM,iBAAkB,SAAQ,KAAK;gBACrB,OAAO,EAAE,MAAM;CAa9B;AAED,eAAe,iBAAiB,CAAC"}
@@ -0,0 +1,16 @@
1
+ class CheckboxTreeError extends Error {
2
+ constructor(message) {
3
+ super(message); // Llama al constructor de la clase base Error
4
+ this.name = 'CheckboxTreeError'; // Asigna un nombre específico para el error
5
+ // Opcional: Captura el stack trace. En entornos modernos, super(message) ya lo hace.
6
+ // Si necesitas un stack trace personalizado o para compatibilidad con navegadores antiguos:
7
+ if (Error.captureStackTrace) {
8
+ Error.captureStackTrace(this, CheckboxTreeError);
9
+ }
10
+ else {
11
+ this.stack = new Error(message).stack;
12
+ }
13
+ }
14
+ }
15
+ export default CheckboxTreeError;
16
+ //# sourceMappingURL=CheckboxTreeError.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CheckboxTreeError.js","sourceRoot":"","sources":["../../../src/components/checkboxtree/CheckboxTreeError.ts"],"names":[],"mappings":"AAAA,MAAM,iBAAkB,SAAQ,KAAK;IACjC,YAAY,OAAe;QACvB,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,8CAA8C;QAE9D,IAAI,CAAC,IAAI,GAAG,mBAAmB,CAAC,CAAC,4CAA4C;QAE7E,qFAAqF;QACrF,4FAA4F;QAC5F,IAAI,KAAK,CAAC,iBAAiB,EAAE,CAAC;YAC1B,KAAK,CAAC,iBAAiB,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAC;QACrD,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC;QAC1C,CAAC;IACL,CAAC;CACJ;AAED,eAAe,iBAAiB,CAAC"}