triafly-ui-kit 1.0.23 → 1.0.25

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 (181) hide show
  1. package/dist/_virtual/_commonjsHelpers.js +6 -0
  2. package/dist/_virtual/index.js +7 -0
  3. package/dist/_virtual/index2.js +7 -0
  4. package/dist/_virtual/index3.js +4 -0
  5. package/dist/_virtual/papaparse.min.js +7 -0
  6. package/dist/_virtual/papaparse.min2.js +4 -0
  7. package/dist/_virtual/react-paginate.js +7 -0
  8. package/dist/_virtual/react-paginate2.js +4 -0
  9. package/dist/assets/fonts/FiraCode-Regular.ttf +0 -0
  10. package/dist/assets/fonts/Manrope-Bold.ttf +0 -0
  11. package/dist/assets/fonts/Manrope-Regular.ttf +0 -0
  12. package/dist/assets/fonts/Manrope-SemiBold.ttf +0 -0
  13. package/dist/assets/fonts/RobotoSlab-SemiBold.ttf +0 -0
  14. package/dist/assets/src/components/Ui/Accordeon/Accordeon.css +1 -0
  15. package/dist/assets/src/components/Ui/Alert/Alert.css +1 -0
  16. package/dist/assets/src/components/Ui/Avatar/Avatar.css +1 -0
  17. package/dist/assets/src/components/Ui/Badge/Badge.module.css +1 -0
  18. package/dist/assets/src/components/Ui/Button/Button.css +1 -0
  19. package/dist/assets/src/components/Ui/ButtonsArray/ButtonsArray.css +1 -0
  20. package/dist/assets/src/components/Ui/Checkbox/Checkbox.css +1 -0
  21. package/dist/assets/src/components/Ui/CliTextareaInput/CliTextareaInput.css +1 -0
  22. package/dist/assets/src/components/Ui/CustomLink/CustomLink.css +1 -0
  23. package/dist/assets/src/components/Ui/DatePicker/DatePicker.css +1 -0
  24. package/dist/assets/src/components/Ui/DropdownInput/DropdownInput.css +1 -0
  25. package/dist/assets/src/components/Ui/DropdownMenu/DropdownMenu.css +1 -0
  26. package/dist/assets/src/components/Ui/FileUpload/FileUpload.css +1 -0
  27. package/dist/assets/src/components/Ui/Form/FormRoot/Form.css +1 -0
  28. package/dist/assets/src/components/Ui/Loader/Loader.css +1 -0
  29. package/dist/assets/src/components/Ui/ModalWindow/ModalWindow.css +1 -0
  30. package/dist/assets/src/components/Ui/Pagination/Pagination.css +1 -0
  31. package/dist/assets/src/components/Ui/Radio/Radio.css +1 -0
  32. package/dist/assets/src/components/Ui/SearchInput/SearchInput.css +1 -0
  33. package/dist/assets/src/components/Ui/Skeleton/Skeleton.module.css +1 -0
  34. package/dist/assets/src/components/Ui/Switch/Switch.css +1 -0
  35. package/dist/assets/src/components/Ui/Table/Table.css +1 -0
  36. package/dist/assets/src/components/Ui/Tabs/Tabs.css +1 -0
  37. package/dist/assets/src/components/Ui/TextInput/TextInput.css +1 -0
  38. package/dist/assets/src/components/Ui/TextareaInput/TextareaInput.css +1 -0
  39. package/dist/assets/src/components/Ui/Tooltip/Tooltip.css +1 -0
  40. package/dist/assets/src/components/Ui/Tooltip/Tooltip.stories.module.css +1 -0
  41. package/dist/assets/src/context/ToastContext/ToastContext.module.css +1 -0
  42. package/dist/components/Ui/Accordeon/Accordeon.js +34 -0
  43. package/dist/components/Ui/Accordeon/Accordeon.stories.js +72 -0
  44. package/dist/components/Ui/Accordeon/index.js +4 -0
  45. package/dist/components/Ui/Alert/Alert.js +15 -0
  46. package/dist/components/Ui/Alert/index.js +4 -0
  47. package/dist/components/Ui/Avatar/Avatar.js +11 -0
  48. package/dist/components/Ui/Avatar/index.js +4 -0
  49. package/dist/components/Ui/Badge/Badge.js +30 -0
  50. package/dist/components/Ui/Badge/index.js +4 -0
  51. package/dist/components/Ui/Button/Button.js +50 -0
  52. package/dist/components/Ui/Button/index.js +4 -0
  53. package/dist/components/Ui/ButtonsArray/ButtonsArray.js +29 -0
  54. package/dist/components/Ui/ButtonsArray/ButtonsArray.stories.js +78 -0
  55. package/dist/components/Ui/ButtonsArray/index.js +4 -0
  56. package/dist/components/Ui/Checkbox/Checkbox.js +40 -0
  57. package/dist/components/Ui/Checkbox/Checkbox.stories.js +120 -0
  58. package/dist/components/Ui/Checkbox/index.js +4 -0
  59. package/dist/components/Ui/CliTextareaInput/CliTextareaInput.js +122 -0
  60. package/dist/components/Ui/CliTextareaInput/index.js +23 -0
  61. package/dist/components/Ui/CliTextareaInput/utils/escapeHtml/escapeHtml.js +4 -0
  62. package/dist/components/Ui/CliTextareaInput/utils/fixJson/fixJson.js +12 -0
  63. package/dist/components/Ui/CliTextareaInput/utils/highlightSyntax/highlightSyntax.js +20 -0
  64. package/dist/components/Ui/CliTextareaInput/utils/highlightSyntax/index.js +4 -0
  65. package/dist/components/Ui/CliTextareaInput/utils/hooks/index.js +17 -0
  66. package/dist/components/Ui/CliTextareaInput/utils/hooks/useFixFormat/index.js +4 -0
  67. package/dist/components/Ui/CliTextareaInput/utils/hooks/useFixFormat/useFixFormat.js +29 -0
  68. package/dist/components/Ui/CliTextareaInput/utils/hooks/useHistoryNavigation/index.js +4 -0
  69. package/dist/components/Ui/CliTextareaInput/utils/hooks/useHistoryNavigation/useHistoryNavigation.js +34 -0
  70. package/dist/components/Ui/CliTextareaInput/utils/hooks/useKeyHandlers/index.js +4 -0
  71. package/dist/components/Ui/CliTextareaInput/utils/hooks/useKeyHandlers/useKeyHandlers.js +45 -0
  72. package/dist/components/Ui/CliTextareaInput/utils/hooks/useLineNumbers/index.js +5 -0
  73. package/dist/components/Ui/CliTextareaInput/utils/hooks/useLineNumbers/useLineNumbers.js +17 -0
  74. package/dist/components/Ui/CliTextareaInput/utils/hooks/useScrollSync/index.js +4 -0
  75. package/dist/components/Ui/CliTextareaInput/utils/hooks/useScrollSync/useScrollSync.js +13 -0
  76. package/dist/components/Ui/CliTextareaInput/utils/hooks/useTextActions/index.js +4 -0
  77. package/dist/components/Ui/CliTextareaInput/utils/hooks/useTextActions/useTextActions.js +37 -0
  78. package/dist/components/Ui/CliTextareaInput/utils/hooks/useTextCoursore/index.js +4 -0
  79. package/dist/components/Ui/CliTextareaInput/utils/hooks/useTextCoursore/useTextCoursore.js +14 -0
  80. package/dist/components/Ui/CliTextareaInput/utils/index.js +21 -0
  81. package/dist/components/Ui/CliTextareaInput/utils/processJson/index.js +4 -0
  82. package/dist/components/Ui/CliTextareaInput/utils/processJson/processJson.js +11 -0
  83. package/dist/components/Ui/CliTextareaInput/utils/processXml/processXml.js +8 -0
  84. package/dist/components/Ui/CliTextareaInput/utils/processYml/processYml.js +27 -0
  85. package/dist/components/Ui/CliTextareaInput/utils/types.js +1 -0
  86. package/dist/components/Ui/CustomLink/CustomLink.js +50 -0
  87. package/dist/components/Ui/CustomLink/index.js +4 -0
  88. package/dist/components/Ui/DatePicker/DatePicker.js +183 -0
  89. package/dist/components/Ui/DatePicker/DatePicker.stories.js +120 -0
  90. package/dist/components/Ui/DropdownInput/DropdownInput.js +92 -0
  91. package/dist/components/Ui/DropdownInput/DropdownInput.stories.js +77 -0
  92. package/dist/components/Ui/DropdownInput/index.js +4 -0
  93. package/dist/components/Ui/DropdownMenu/DropdownMenu.js +84 -0
  94. package/dist/components/Ui/DropdownMenu/DropdownMenu.stories.js +50 -0
  95. package/dist/components/Ui/DropdownMenu/index.js +4 -0
  96. package/dist/components/Ui/FileUpload/FileUpload.js +197 -0
  97. package/dist/components/Ui/FileUpload/fn.js +10 -0
  98. package/dist/components/Ui/FileUpload/index.js +4 -0
  99. package/dist/components/Ui/FileUpload/types.js +1 -0
  100. package/dist/components/Ui/Form/FormContext/FormContext.js +5 -0
  101. package/dist/components/Ui/Form/FormItem/FormItem.js +107 -0
  102. package/dist/components/Ui/Form/FormItem/fn.js +25 -0
  103. package/dist/components/Ui/Form/FormItem/types.js +1 -0
  104. package/dist/components/Ui/Form/FormRoot/FormRoot.js +26 -0
  105. package/dist/components/Ui/Form/FormRoot/index.js +4 -0
  106. package/dist/components/Ui/Form/FormRoot/types.js +1 -0
  107. package/dist/components/Ui/Form/index.js +6 -0
  108. package/dist/components/Ui/Form/useForm/index.js +4 -0
  109. package/dist/components/Ui/Form/useForm/useForm.js +111 -0
  110. package/dist/components/Ui/Form/utils/fn.js +31 -0
  111. package/dist/components/Ui/Form/utils/types.js +1 -0
  112. package/dist/components/Ui/Icons/Icons.js +577 -0
  113. package/dist/components/Ui/Icons/index.js +97 -0
  114. package/dist/components/Ui/Icons/utils/CreateIcon.js +23 -0
  115. package/dist/components/Ui/Loader/Loader.js +7 -0
  116. package/dist/components/Ui/Loader/index.js +4 -0
  117. package/dist/components/Ui/ModalWindow/ModalWindow.js +51 -0
  118. package/dist/components/Ui/ModalWindow/index.js +4 -0
  119. package/dist/components/Ui/Pagination/Pagination.js +39 -0
  120. package/dist/components/Ui/Pagination/index.js +4 -0
  121. package/dist/components/Ui/Radio/Radio.js +31 -0
  122. package/dist/components/Ui/Radio/Radio.stories.js +42 -0
  123. package/dist/components/Ui/Radio/index.js +4 -0
  124. package/dist/components/Ui/SearchInput/SearchData.js +30 -0
  125. package/dist/components/Ui/SearchInput/SearchInput.js +110 -0
  126. package/dist/components/Ui/Skeleton/Skeleton.js +26 -0
  127. package/dist/components/Ui/Skeleton/index.js +4 -0
  128. package/dist/components/Ui/Switch/Switch.js +26 -0
  129. package/dist/components/Ui/Switch/index.js +4 -0
  130. package/dist/components/Ui/Table/MemoizedRow/MemoizedRow.js +50 -0
  131. package/dist/components/Ui/Table/Table.js +161 -0
  132. package/dist/components/Ui/Table/TableTypes.js +1 -0
  133. package/dist/components/Ui/Table/index.js +4 -0
  134. package/dist/components/Ui/Tabs/Tabs.js +25 -0
  135. package/dist/components/Ui/Tabs/Tabs.stories.js +67 -0
  136. package/dist/components/Ui/Tabs/index.js +4 -0
  137. package/dist/components/Ui/TextInput/TextInput.js +86 -0
  138. package/dist/components/Ui/TextInput/TextInput.stories.js +225 -0
  139. package/dist/components/Ui/TextInput/index.js +4 -0
  140. package/dist/components/Ui/TextareaInput/TextareaInput.js +69 -0
  141. package/dist/components/Ui/TextareaInput/TextareaInput.stories.js +19 -0
  142. package/dist/components/Ui/TextareaInput/index.js +4 -0
  143. package/dist/components/Ui/Tooltip/Tooltip.js +93 -0
  144. package/dist/components/Ui/Tooltip/Tooltip.stories.js +87 -0
  145. package/dist/components/Ui/Tooltip/index.js +4 -0
  146. package/dist/context/ToastContext/ToastContext.js +38 -0
  147. package/dist/context/ToastContext/index.js +5 -0
  148. package/dist/context/TriaflyContext/TriaflyContext.types.js +1 -0
  149. package/dist/context/TriaflyContext/TriaflyProvider.js +27 -0
  150. package/dist/context/TriaflyContext/hooks/index.js +8 -0
  151. package/dist/context/TriaflyContext/hooks/useBreakpointValue/index.js +4 -0
  152. package/dist/context/TriaflyContext/hooks/useBreakpointValue/useBreakpointValue.js +11 -0
  153. package/dist/context/TriaflyContext/hooks/useModal/index.js +4 -0
  154. package/dist/context/TriaflyContext/hooks/useModal/useModal.js +16 -0
  155. package/dist/context/TriaflyContext/hooks/useTheme/index.js +4 -0
  156. package/dist/context/TriaflyContext/hooks/useTheme/useTheme.js +17 -0
  157. package/dist/context/TriaflyContext/index.js +12 -0
  158. package/dist/main.d.ts +1229 -0
  159. package/dist/main.js +162 -0
  160. package/dist/node_modules/classnames/index.js +42 -0
  161. package/dist/node_modules/fast-deep-equal/index.js +31 -0
  162. package/dist/node_modules/papaparse/papaparse.min.js +421 -0
  163. package/dist/node_modules/react-paginate/dist/react-paginate.js +259 -0
  164. package/dist/src/components/Ui/Badge/Badge.module.scss.js +30 -0
  165. package/dist/src/components/Ui/Skeleton/Skeleton.module.scss.js +9 -0
  166. package/dist/src/components/Ui/Tooltip/Tooltip.stories.module.css.js +15 -0
  167. package/dist/src/context/ToastContext/ToastContext.module.scss.js +9 -0
  168. package/dist/styles/_mixins.scss +22 -0
  169. package/dist/styles/fix.scss +4 -0
  170. package/dist/styles/main.scss +27 -0
  171. package/dist/styles/reset.scss +106 -0
  172. package/dist/styles/typography.scss +102 -0
  173. package/dist/styles/variables.scss +278 -0
  174. package/dist/vite-env.d.js +1 -0
  175. package/package.json +6 -2
  176. package/src/styles/_mixins.scss +22 -0
  177. package/src/styles/fix.scss +4 -0
  178. package/src/styles/main.scss +27 -0
  179. package/src/styles/reset.scss +106 -0
  180. package/src/styles/typography.scss +102 -0
  181. package/src/styles/variables.scss +278 -0
@@ -0,0 +1 @@
1
+ .Pagination__Wrap{display:flex;align-items:center;justify-content:center}.pagination{display:flex;list-style:none;padding:0}.page-item{margin:0 8px 0 0}.page-item:last-of-type{margin:0}.page-link{cursor:pointer;border-radius:6px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;color:var(--color-text-primary-default)}.page-link:hover{background-color:var(--color-bg-brand-lightest-default);color:var(--color-text-brand-default)}.active .page-link{background-color:var(--color-bg-brand-default);color:var(--light-color-static)}.page-toggler.disabled .page-link{pointer-events:none}.page-toggler.disabled .page-link svg *{fill:var(--color-icon-secondary-default)}.page-toggler .page-link:hover{background-color:transparent}.page-toggler .page-link:hover svg *{fill:var(--color-icon-brand-default)}
@@ -0,0 +1 @@
1
+ .radio{display:flex;align-items:center}.radio:not(:last-child){margin:0 0 8px}.radio.disabled{cursor:default;opacity:40%}.radio input[type=radio]{display:none}.radio input[type=radio]:checked+.checkmark{border:5px solid var(--color-bg-brand-default)}.radio .radio-label{display:flex;align-items:center;cursor:pointer}.radio .radio-label .test{line-height:16.8px}.radio .checkmark{box-sizing:border-box;position:relative;display:block;width:20px;height:20px;border-radius:50%;border:1px solid var(--color-border-primary-default);background-color:var(--color-bg-neutral-basic-default);margin-right:8px;transition:.04s;-webkit-user-select:none;user-select:none}
@@ -0,0 +1 @@
1
+ .search-input{border:1px solid var(--color-border-primary-default);border-radius:22px;margin:0 12px 0 0}.search-input:focus-within{border:2px solid var(--color-border-primary-default);margin:0 11px 0 -1px}.search-input:focus-within .text-input .input-container input{margin:-1px}.search-input .text-input .input-container input{border:none}.search-input .text-input .input-container input:focus{outline:none}.search-input__label{margin:0 0 8px}.search-input .guess-box{padding:0 12px 12px}.search-input .guess-box ul{border-top:1px solid var(--color-border-primary-default);padding:12px 0 0}.search-input .guess-box ul li{min-height:36px;display:flex;align-items:center;padding:0 8px;cursor:pointer}.search-input .guess-box ul li:hover{background-color:var(--color-bg-innerisland-default)}.dropdown-input-test{position:relative}.dropdown-input-test .caret{fill:var(--color-icon-secondary-default);position:absolute;bottom:9px;right:10px}.dropdown-input-test .input-box{position:relative;cursor:pointer;display:flex;justify-content:space-between;align-items:center;outline:none;background-color:var(--color-bg-neutral-basic-default)}.dropdown-input-test .input-box.disabled{background-color:var(--color-bg-island-disabled);pointer-events:none}.dropdown-input-test .input-box.invalid{border-color:var(--color-border-error-default)}.dropdown-input-test .input-box.invalid>span{color:var(--color-border-error-default)}.dropdown-input-test .input-box.invalid svg *{fill:var(--color-border-error-default)}.dropdown-input-test .input-box .placeholder{color:var(--color-text-secondary-default)}.dropdown-input-test .options{position:absolute;top:100%;bottom:auto;left:1%;right:1%;max-height:304px;overflow-y:auto;overflow-x:hidden;background-color:var(--color-bg-neutral-basic-default);border-radius:8px;border:1px solid var(--color-border-primary-default);margin:1px -1px 0;z-index:21}.dropdown-input-test .options.above{bottom:calc(100% + 1px);top:auto}.dropdown-input-test .options li{padding:0 8px;min-height:36px;cursor:pointer;display:flex;align-items:center}.dropdown-input-test .options li:hover,.dropdown-input-test .options li.dropdown-input__option--selected{background-color:var(--color-bg-neutral-lightest-default)}
@@ -0,0 +1 @@
1
+ ._skeleton_yatxz_1{display:inline-block;background-color:var(--color-bg-island-selected)}._animated_yatxz_6{background:linear-gradient(90deg,var(--color-bg-island-selected) 25%,var(--color-bg-island-selected) 50%,var(--color-bg-island-selected) 75%);background-size:200% 100%;animation:_skeleton-loading_yatxz_1 1.5s infinite linear}@keyframes _skeleton-loading_yatxz_1{0%{background-position:200% 0}to{background-position:-200% 0}}
@@ -0,0 +1 @@
1
+ .switch-container:not(:last-child){margin:0 0 12px}.switch-container label{display:flex;align-items:center;justify-content:space-between}.switch input[type=checkbox]{position:absolute;opacity:0;cursor:pointer}.switch{display:inline-flex;align-items:center;line-height:16.8px;cursor:pointer;-webkit-user-select:none;user-select:none}.switch.disabled{opacity:50%;cursor:default}.switch input[type=checkbox]+.slider{display:flex;align-items:center;width:43px;height:24px;border:1px solid var(--color-bg-brand-default);border-radius:12px;transition:all .2s;margin:0 0 0 8px}.switch input[type=checkbox]+.slider:after{content:"";display:block;width:18px;height:18px;border-radius:50%;background-color:var(--color-bg-brand-default);margin:0 2px;transition:all .2s}.switch input[type=checkbox]:checked+.slider{background-color:var(--color-bg-brand-default);border-color:var(--color-bg-brand-default)}.switch input[type=checkbox]:checked+.slider:after{background-color:var(--light-color-static);margin:0 0 0 20px}
@@ -0,0 +1 @@
1
+ .table-component{width:100%;overflow:auto;position:relative}.table-component__wrapper{width:100%}.table-component__wrapper.bordered{border:1px solid var(--color-border-primary-default);border-radius:8px}.table-component__wrapper__table{width:100%;border-collapse:separate;border-spacing:0}.table-component__wrapper__table.bordered{border:none}.table-component__wrapper__table__thead{background-color:var(--color-bg-innerisland-default);height:41px}.table-component__wrapper__table__thead.stickyHeader{position:sticky;top:0;z-index:10}.table-component__wrapper__table__thead__tr:hover{background-color:var(--color-bg-island-selected)}.table-component__wrapper__table__thead__th{padding:12px;text-align:left;position:relative}.table-component__wrapper__table__thead__th.bordered{border-left:1px solid var(--color-border-primary-default);border-bottom:none}.table-component__wrapper__table__thead__th.bordered:first-child{border-left:none}.table-component__wrapper__table__thead__th.stickyLeft{position:sticky;left:0;background-color:inherit;z-index:9}.table-component__wrapper__table__thead__th .th-content{display:flex;align-items:center;gap:4px}.table-component__wrapper__table__thead__th .sort-icon{display:inline-flex}.table-component__wrapper__table__tbody__tr:hover{background-color:var(--color-bg-island-selected)}.table-component__wrapper__table__tbody--hoverable{cursor:pointer}.table-component__wrapper__table__tbody__td{padding:12px}.table-component__wrapper__table__tbody__td--bordered{border-top:1px solid var(--color-border-primary-default);border-left:1px solid var(--color-border-primary-default)}.table-component__wrapper__table__tbody__td--bordered:first-child{border-left:none}.table-component__wrapper__table__tbody__td--sticky-left{position:sticky;left:0;background-color:inherit;z-index:8}.table-component__wrapper.borderBottom .table-component__wrapper__table__tbody td{border-bottom:1px solid var(--color-border-primary-default)}
@@ -0,0 +1 @@
1
+ .tabs .tabs-bar{display:flex}.tabs .tab-button{padding:0 8px 4px;display:flex;justify-content:center;align-items:center;border:none;border-bottom:1px solid var(--color-border-primary-default);background-color:transparent;cursor:pointer}.tabs .tab-button:first-of-type{padding:0 8px 4px 0}.tabs .tab-button:last-of-type{padding:0 0 4px 8px}.tabs .tab-button:hover,.tabs .tab-button.active{color:var(--color-border-brand-default);border-bottom:1px solid var(--color-border-brand-default)}.tabs .tab-button.disabled{pointer-events:none}
@@ -0,0 +1 @@
1
+ .text-input{display:flex;flex-direction:column}.text-input label{margin:0 0 8px}.text-input .input-container{display:flex;position:relative;z-index:0}.text-input .input-container.has-icon input{padding:10px 8px 10px 36px}.text-input .input-container.has-icon input:active,.text-input .input-container.has-icon input:focus{padding:9px 7px 9px 35px}.text-input .input-container.has-icon .icon{position:absolute;left:8px;top:calc(50% - 10px);z-index:2}.text-input .input-container.has-icon .icon *{fill:var(--color-icon-secondary-default)}.text-input .input-container input{border:1px solid var(--color-border-primary-default);border-radius:8px;height:44px;padding:10px 8px;outline:none;background-color:var(--color-bg-neutral-basic-default);z-index:1;flex-grow:1;color:var(--color-text-primary-default)}.text-input .input-container input[disabled]{background-color:var(--color-bg-island-disabled);pointer-events:none}.text-input .input-container input::placeholder{color:var(--color-text-secondary-default)}.text-input .input-container input:active,.text-input .input-container input:focus{border:2px solid var(--color-border-primary-default);padding:9px 7px}.text-input .input-container input.has-icon{padding:10px 8px 10px 36px}.text-input.sm.rounded input{border-radius:18px}.text-input.sm .input-container input{height:36px}.text-input.rounded input{border-radius:22px}.text-input.invalid input,.text-input.invalid input:active,.text-input.invalid input:focus{border-color:var(--color-border-error-default);color:var(--color-border-error-default)}.text-input.invalid .icon *{fill:var(--color-border-error-default)!important}.text-input.invalid .helper-text{color:var(--color-border-error-default)}.text-input.clearable input{padding-right:36px!important}.text-input.clearable .clear-value{position:absolute;right:8px;top:calc(50% - 10px);cursor:pointer;z-index:1;height:20px}.text-input.clearable .clear-value *{fill:var(--color-icon-secondary-default)}.text-input .helper-text{font-size:12px;color:var(--color-text-secondary-default);margin:8px 0 0}.text-input .loader{position:absolute;right:8px;top:calc(50% - 10px)}.text-input .loader *{fill:var(--color-icon-secondary-default)}
@@ -0,0 +1 @@
1
+ @font-face{font-family:Roboto Slab;src:url(../assets/fonts/RobotoSlab-SemiBold.ttf) format("truetype");font-weight:600}@font-face{font-family:Manrope;src:url(../assets/fonts/Manrope-Regular.ttf) format("truetype");font-weight:400}@font-face{font-family:Manrope;src:url(../assets/fonts/Manrope-Semibold.ttf) format("truetype");font-weight:600}@font-face{font-family:Manrope;src:url(../assets/fonts/Manrope-Bold.ttf) format("truetype");font-weight:700}@font-face{font-family:Fira Code;src:url(../assets/fonts/FiraCode-Regular.ttf) format("truetype");font-weight:400}*{font-family:Manrope,sans-serif;font-size:14px;line-height:1.2em;letter-spacing:.02em;font-weight:400;color:var(--color-text-primary-default)}h1,h2,h3,h4,h5,h6{margin:0}a{color:var(--color-text-brand-default);text-decoration:none}a:hover{color:var(--color-text-brand-hover)}a[href=""]{opacity:40%;cursor:default;pointer-events:none}p:not(:last-child){margin:0 0 8px}.textarea-input{display:flex;flex-direction:column;resize:none}.textarea-input label{margin:0 0 8px}.textarea-input .char-limit{text-align:right;margin-top:8px;font-size:12px;font-weight:400;color:var(--color-text-secondary-default)}.textarea-input .textarea-wrapper{position:relative}.textarea-input textarea{border:1px solid var(--color-border-primary-default);border-radius:8px;padding:10.5px 8px;color:var(--color-text-primary-default);max-width:100%;min-width:100%;min-height:64px;resize:both;background-color:var(--color-bg-neutral-basic-default);font-size:14px;font-weight:400}.textarea-input textarea[disabled]{background-color:var(--color-bg-island-disabled);pointer-events:none}.textarea-input textarea::placeholder{color:var(--color-text-secondary-default)}.textarea-input textarea:focus{border:2px solid var(--color-border-primary-default);padding:9.5px 7px}.textarea-input textarea.no-resize{resize:none}.textarea-input .helper-text{font-size:12px;color:var(--color-text-secondary-default);margin:8px 0 0}.textarea-input.invalid textarea{border-color:var(--color-border-error-default);color:var(--color-border-error-default)}.textarea-input.invalid svg *{fill:var(--color-border-error-default)}.textarea-input.invalid .helper-text{color:var(--color-border-error-default)}.textarea-input.clearable textarea{padding-right:36px!important}.textarea-input.clearable .clear-value{position:absolute;right:8px;top:8px;cursor:pointer;z-index:1;height:20px}.textarea-input.clearable .clear-value *{fill:var(--color-icon-secondary-default)}
@@ -0,0 +1 @@
1
+ .tooltip-wrapper{position:relative;display:inline-block;cursor:pointer}.tooltip-content{position:absolute;background-color:var(--color-bg-brand-default);color:var(--light-color-static);padding:12px 16px;border-radius:8px;z-index:9999;width:max-content;max-width:300px;white-space:normal;text-align:center}.tooltip-content:after{content:"";position:absolute;border-width:5px;border-style:solid}.tooltip-content.white{background-color:var(--color-bg-neutral-basic-default);color:var(--color-text-primary-default);box-shadow:0 0 10px -2px var(--effects-effect-shadow-XL, rgba(18, 18, 18, .15))}.tooltip-content.white.tooltip-top:after{border-color:var(--color-bg-neutral-basic-default) transparent transparent transparent}.tooltip-content.white.tooltip-bottom:after{border-color:transparent transparent var(--color-bg-neutral-basic-default) transparent}.tooltip-content.white.tooltip-left:after{border-color:transparent transparent transparent var(--color-bg-neutral-basic-default)}.tooltip-content.white.tooltip-right:after{border-color:transparent var(--color-bg-neutral-basic-default) transparent transparent}.tooltip-top{bottom:calc(100% + 8px);left:50%;transform:translate(-50%)}.tooltip-top:after{top:100%;left:50%;transform:translate(-50%);border-color:var(--color-bg-brand-default) transparent transparent transparent}.tooltip-bottom{top:calc(100% + 8px);left:50%;transform:translate(-50%)}.tooltip-bottom:after{bottom:100%;left:50%;transform:translate(-50%);border-color:transparent transparent var(--color-bg-brand-default) transparent}.tooltip-left{top:50%;right:calc(100% + 8px);transform:translateY(-50%)}.tooltip-left:after{top:50%;left:100%;transform:translateY(-50%);border-color:transparent transparent transparent var(--color-bg-brand-default)}.tooltip-right{top:50%;left:calc(100% + 8px);transform:translateY(-50%)}.tooltip-right:after{top:50%;right:100%;transform:translateY(-50%);border-color:transparent var(--color-bg-brand-default) transparent transparent}
@@ -0,0 +1 @@
1
+ ._container_x4z3a_1{position:relative;width:100%;height:100vh;padding:20px;display:flex;flex-wrap:wrap;justify-content:space-between;align-content:space-between;border:1px dashed #ccc;box-sizing:border-box}._trigger_x4z3a_27{padding:8px 16px;background-color:#1976d2;color:#fff;border-radius:4px;font-size:14px;cursor:pointer;transition:background-color .2s;text-align:center}._trigger_x4z3a_27:hover{background-color:#1565c0}._clickTrigger_x4z3a_57{background-color:#388e3c}._clickTrigger_x4z3a_57:hover{background-color:#2e7d32}._positionsContainer_x4z3a_75{padding:20px}._positionGroup_x4z3a_83{display:flex;gap:20px;margin-bottom:30px;justify-content:center;flex-wrap:wrap}
@@ -0,0 +1 @@
1
+ ._Wrapper_12sk9_1{position:fixed;bottom:20px;right:20px;z-index:101;display:flex;flex-direction:column;gap:10px}._Toast_12sk9_11{color:var(--color-text-primary-inversed);padding:20px 24px;border-radius:8px;display:flex;justify-content:space-between;align-items:center;min-width:250px;max-width:400px;font-size:16px;box-shadow:0 6px 15px -2px var(--effect-shadow-L, rgba(18, 18, 18, .08));animation:_fadeIn_12sk9_1 .5s ease-in-out;background-color:var(--color-bg-neutral-basic-inversed)}@keyframes _fadeIn_12sk9_1{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@@ -0,0 +1,34 @@
1
+ import { jsxs as s, jsx as o } from "react/jsx-runtime";
2
+ import { useState as d, useRef as p } from "react";
3
+ import '../../../assets/src/components/Ui/Accordeon/Accordeon.css';/* empty css */
4
+ const u = ({
5
+ title: c,
6
+ content: r,
7
+ openTitle: i,
8
+ closeTitle: l
9
+ }) => {
10
+ var n;
11
+ const [e, a] = d(!1), t = p(null), m = () => {
12
+ a(!e);
13
+ };
14
+ return /* @__PURE__ */ s("div", { className: "accordeon", children: [
15
+ /* @__PURE__ */ o(
16
+ "div",
17
+ {
18
+ className: "content-wrapper",
19
+ style: {
20
+ maxHeight: e ? `${(n = t.current) == null ? void 0 : n.scrollHeight}px` : "0px",
21
+ transition: "max-height 0.3s ease-out"
22
+ },
23
+ children: /* @__PURE__ */ o("div", { className: "content", ref: t, children: r })
24
+ }
25
+ ),
26
+ /* @__PURE__ */ s("div", { className: "title", onClick: m, children: [
27
+ c,
28
+ e ? l : i
29
+ ] })
30
+ ] });
31
+ };
32
+ export {
33
+ u as Accordeon
34
+ };
@@ -0,0 +1,72 @@
1
+ import { jsxs as e, jsx as t } from "react/jsx-runtime";
2
+ import { Accordeon as r } from "./Accordeon.js";
3
+ const s = {
4
+ title: "UIKit/Accordeon",
5
+ // Название группы историй
6
+ component: r,
7
+ // Компонент, для которого создаются истории
8
+ tags: ["autodocs"],
9
+ // Автоматическая генерация документации
10
+ argTypes: {
11
+ title: {
12
+ control: "text",
13
+ // Позволяет редактировать заголовок в интерфейсе Storybook
14
+ description: "Заголовок аккордеона"
15
+ },
16
+ content: {
17
+ control: "text",
18
+ // Позволяет редактировать контент в интерфейсе Storybook
19
+ description: "Контент аккордеона"
20
+ }
21
+ }
22
+ }, c = {
23
+ args: {
24
+ title: "Заголовок аккордеона!",
25
+ content: "Это контент аккордеона. Он может быть текстом, компонентом или чем угодно."
26
+ }
27
+ }, d = {
28
+ args: {
29
+ ...c.args
30
+ // Используем аргументы из Default
31
+ },
32
+ decorators: [
33
+ (n) => /* @__PURE__ */ t("div", { style: { width: "300px" }, children: /* @__PURE__ */ t(n, {}) })
34
+ ],
35
+ parameters: {
36
+ // Открываем аккордеон по умолчанию
37
+ docs: {
38
+ source: {
39
+ code: "<Accordeon title='Заголовок' content='Контент аккордеона' isOpen={true} />"
40
+ }
41
+ }
42
+ }
43
+ }, a = {
44
+ args: {
45
+ title: "Аккордеон с HTML",
46
+ content: /* @__PURE__ */ e("div", { children: [
47
+ /* @__PURE__ */ t("h3", { children: "Заголовок внутри контента" }),
48
+ /* @__PURE__ */ t("p", { children: "Этот аккордеон содержит HTML-контент." }),
49
+ /* @__PURE__ */ e("ul", { children: [
50
+ /* @__PURE__ */ t("li", { children: "Пункт 1" }),
51
+ /* @__PURE__ */ t("li", { children: "Пункт 2" }),
52
+ /* @__PURE__ */ t("li", { children: "Пункт 3" })
53
+ ] })
54
+ ] })
55
+ }
56
+ }, h = {
57
+ args: {
58
+ title: "Аккордеон с длинным контентом",
59
+ content: Array.from({ length: 10 }, (n, o) => /* @__PURE__ */ e("p", { children: [
60
+ "Это строка номер ",
61
+ o + 1,
62
+ " в длинном контенте."
63
+ ] }, o))
64
+ }
65
+ };
66
+ export {
67
+ c as Default,
68
+ d as Opened,
69
+ a as WithHTMLContent,
70
+ h as WithLongContent,
71
+ s as default
72
+ };
@@ -0,0 +1,4 @@
1
+ import { Accordeon as c } from "./Accordeon.js";
2
+ export {
3
+ c as Accordeon
4
+ };
@@ -0,0 +1,15 @@
1
+ import { jsx as m, Fragment as n, jsxs as s } from "react/jsx-runtime";
2
+ import '../../../assets/src/components/Ui/Alert/Alert.css';/* empty css */
3
+ const c = ({
4
+ text: r,
5
+ icon: t,
6
+ status: e,
7
+ isMultiline: i,
8
+ isOpen: l
9
+ }) => l ? /* @__PURE__ */ s("div", { className: `alert ${e} ${i ? "multiline" : ""}`, children: [
10
+ t,
11
+ r
12
+ ] }) : /* @__PURE__ */ m(n, {});
13
+ export {
14
+ c as Alert
15
+ };
@@ -0,0 +1,4 @@
1
+ import { Alert as o } from "./Alert.js";
2
+ export {
3
+ o as Alert
4
+ };
@@ -0,0 +1,11 @@
1
+ import { jsx as a } from "react/jsx-runtime";
2
+ import '../../../assets/src/components/Ui/Avatar/Avatar.css';/* empty css */
3
+ const o = ({ imageUrl: i, username: s }) => /* @__PURE__ */ a("div", { className: "avatar", children: i ? /* @__PURE__ */ a("img", { src: i, alt: s, className: "avatar-image" }) : /* @__PURE__ */ a("div", { className: "avatar-initials", children: ((r) => {
4
+ if (!r) return "";
5
+ const t = r.split(" ");
6
+ let e = t[0].substring(0, 1).toUpperCase();
7
+ return t.length > 1 && (e += t[t.length - 1].substring(0, 1).toUpperCase()), e;
8
+ })(s) }) });
9
+ export {
10
+ o as Avatar
11
+ };
@@ -0,0 +1,4 @@
1
+ import { Avatar as o } from "./Avatar.js";
2
+ export {
3
+ o as Avatar
4
+ };
@@ -0,0 +1,30 @@
1
+ import { jsxs as i, jsx as o } from "react/jsx-runtime";
2
+ import p from "../../../_virtual/index.js";
3
+ import s from "../../../src/components/Ui/Badge/Badge.module.scss.js";
4
+ const x = ({
5
+ children: c,
6
+ variant: m = "outline",
7
+ status: r = "default",
8
+ iconLeft: a,
9
+ iconRight: e,
10
+ isClickable: l = !1,
11
+ onClick: n,
12
+ borderRadius: d
13
+ }) => /* @__PURE__ */ i(
14
+ "span",
15
+ {
16
+ className: p(s.badge, s[m], s[r], {
17
+ [s.clickable]: l
18
+ }),
19
+ onClick: l ? n : void 0,
20
+ style: { borderRadius: d },
21
+ children: [
22
+ a && /* @__PURE__ */ o("span", { className: s.icon, children: a }),
23
+ c,
24
+ e && /* @__PURE__ */ o("span", { className: s.icon, children: e })
25
+ ]
26
+ }
27
+ );
28
+ export {
29
+ x as Badge
30
+ };
@@ -0,0 +1,4 @@
1
+ import { Badge as r } from "./Badge.js";
2
+ export {
3
+ r as Badge
4
+ };
@@ -0,0 +1,50 @@
1
+ import { jsxs as u, jsx as t } from "react/jsx-runtime";
2
+ import '../../../assets/src/components/Ui/Button/Button.css';/* empty css */
3
+ import { useNavigate as N } from "react-router-dom";
4
+ import { Loader as v } from "../Loader/Loader.js";
5
+ const i = () => /* @__PURE__ */ t("svg", { className: "arrow", width: "12", height: "10", fill: "none", children: /* @__PURE__ */ t(
6
+ "path",
7
+ {
8
+ d: "M11.9999 5c0 .13261-.0527.25979-.1464.35356-.0938.09376-.221.14644-.3536.14644H1.70678l3.64688 3.64625c.04645.04646.0833.10161.10844.1623.02514.0607.03808.12576.03808.19145 0 .0657-.01294.13075-.03808.19145-.02514.0607-.06199.11585-.10844.1623-.04646.04646-.10161.08331-.16231.10845-.06069.02514-.12575.0381-.19144.0381-.0657 0-.13076-.01296-.19145-.0381-.0607-.02514-.11585-.06199-.16231-.10845l-4.499995-4.5c-.0464882-.04643-.0833677-.10158-.1085298-.16228C.012463 5.13077-.00048828 5.06571-.00048828 5c0-.0657.01295128-.13077.03811348-.19147.0251621-.0607.0620416-.11584.1085298-.16228L4.64615.146253c.09382-.09382.22107-.14652766.35376-.14652766.13268 0 .25993.05270766.35375.14652766.09382.093821.14652.221068.14652.35375 0 .132682-.0527.25993-.14652.35375L1.70678 4.5h9.79312c.1326 0 .2598.05268.3536.14645.0937.09377.1464.22094.1464.35355Z",
9
+ fill: "#fff"
10
+ }
11
+ ) }), j = ({
12
+ label: c,
13
+ style: o,
14
+ onClick: e,
15
+ isDisabled: d,
16
+ title: m,
17
+ className: h = "",
18
+ isLoading: l,
19
+ navigation: n,
20
+ type: f = "button",
21
+ icon: r,
22
+ iconTail: s,
23
+ to: a
24
+ }) => {
25
+ const p = N(), b = () => {
26
+ e && e(), a && p(`${a}`);
27
+ };
28
+ return /* @__PURE__ */ u(
29
+ "button",
30
+ {
31
+ style: o,
32
+ className: `btn ${h} ${l ? "loading" : ""}`,
33
+ title: m,
34
+ onClick: b,
35
+ disabled: d,
36
+ type: f,
37
+ children: [
38
+ r && /* @__PURE__ */ t("div", { className: "icon", children: r }),
39
+ n === "back" && /* @__PURE__ */ t(i, {}),
40
+ c && /* @__PURE__ */ t("span", { className: "btn-label", children: c }),
41
+ l && /* @__PURE__ */ t(v, {}),
42
+ s && /* @__PURE__ */ t("div", { className: "icon-tail", children: s }),
43
+ n === "next" && /* @__PURE__ */ t(i, {})
44
+ ]
45
+ }
46
+ );
47
+ };
48
+ export {
49
+ j as Button
50
+ };
@@ -0,0 +1,4 @@
1
+ import { Button as r } from "./Button.js";
2
+ export {
3
+ r as Button
4
+ };
@@ -0,0 +1,29 @@
1
+ import { jsxs as d, jsx as e } from "react/jsx-runtime";
2
+ import { useState as m } from "react";
3
+ import '../../../assets/src/components/Ui/ButtonsArray/ButtonsArray.css';/* empty css */
4
+ const v = ({
5
+ tabs: i,
6
+ label: a,
7
+ initialActiveTab: l = 0,
8
+ onChange: c
9
+ }) => {
10
+ const [o, r] = m(l), n = (s, t) => {
11
+ r(s), c && c(t);
12
+ };
13
+ return /* @__PURE__ */ d("div", { className: "buttons", children: [
14
+ a && /* @__PURE__ */ e("span", { className: "buttons-label", children: a }),
15
+ /* @__PURE__ */ e("div", { className: "buttons-bar", children: i.map((s, t) => /* @__PURE__ */ e(
16
+ "button",
17
+ {
18
+ disabled: s.disabled,
19
+ onClick: () => n(t, s.key),
20
+ className: `button ${t === o ? "active" : ""} status-${s.status}`,
21
+ children: s.label
22
+ },
23
+ s.key
24
+ )) })
25
+ ] });
26
+ };
27
+ export {
28
+ v as ButtonsArray
29
+ };
@@ -0,0 +1,78 @@
1
+ import { ButtonsArray as e } from "./ButtonsArray.js";
2
+ const a = {
3
+ title: "UIKit/ButtonsArray",
4
+ component: e,
5
+ tags: ["autodocs"],
6
+ argTypes: {
7
+ initialActiveTab: {
8
+ control: { type: "number", min: 0 }
9
+ },
10
+ onChange: { action: "tabChanged" }
11
+ }
12
+ }, l = {
13
+ args: {
14
+ tabs: [
15
+ { label: "All", key: "all" },
16
+ { label: "Active", key: "active" },
17
+ { label: "Completed", key: "completed" }
18
+ ],
19
+ label: "Filter tasks:"
20
+ }
21
+ }, s = {
22
+ args: {
23
+ label: "Document status:",
24
+ tabs: [
25
+ { label: "Draft", key: "draft", status: "none" },
26
+ { label: "In Review", key: "review", status: "warning" },
27
+ { label: "Rejected", key: "rejected", status: "error" },
28
+ { label: "Approved", key: "approved", status: "success" }
29
+ ]
30
+ }
31
+ }, o = {
32
+ args: {
33
+ tabs: [
34
+ { label: "First", key: "first" },
35
+ { label: "Second", key: "second" },
36
+ { label: "Third", key: "third" }
37
+ ],
38
+ initialActiveTab: 1
39
+ }
40
+ }, b = {
41
+ args: {
42
+ label: "Account type:",
43
+ tabs: [
44
+ { label: "Basic", key: "basic" },
45
+ { label: "Premium", key: "premium", disabled: !0 },
46
+ { label: "Enterprise", key: "enterprise" }
47
+ ]
48
+ }
49
+ }, r = {
50
+ args: {
51
+ tabs: [
52
+ { label: "Yes", key: "yes" },
53
+ { label: "No", key: "no" }
54
+ ]
55
+ }
56
+ }, i = {
57
+ args: {
58
+ label: "Categories:",
59
+ tabs: [
60
+ { label: "Electronics", key: "electronics" },
61
+ { label: "Clothing", key: "clothing" },
62
+ { label: "Home", key: "home" },
63
+ { label: "Sports", key: "sports" },
64
+ { label: "Books", key: "books" },
65
+ { label: "Toys", key: "toys" },
66
+ { label: "Beauty", key: "beauty" }
67
+ ]
68
+ }
69
+ };
70
+ export {
71
+ l as Default,
72
+ b as DisabledTabs,
73
+ i as ManyTabs,
74
+ r as SmallSelection,
75
+ o as WithInitialActiveTab,
76
+ s as WithStatusIndicators,
77
+ a as default
78
+ };
@@ -0,0 +1,4 @@
1
+ import { ButtonsArray as t } from "./ButtonsArray.js";
2
+ export {
3
+ t as ButtonsArray
4
+ };
@@ -0,0 +1,40 @@
1
+ import { jsx as r, jsxs as n } from "react/jsx-runtime";
2
+ import '../../../assets/src/components/Ui/Checkbox/Checkbox.css';/* empty css */
3
+ import { useRef as i, useEffect as f } from "react";
4
+ const h = ({
5
+ label: o,
6
+ isDisabled: a,
7
+ isChecked: s = !1,
8
+ isIndeterminate: e = !1,
9
+ onChange: t,
10
+ name: l = "Checkbox"
11
+ }) => {
12
+ const c = i(null);
13
+ return f(() => {
14
+ c.current && (c.current.indeterminate = e);
15
+ }, [e]), /* @__PURE__ */ r("div", { className: "checkbox-container", children: /* @__PURE__ */ n(
16
+ "label",
17
+ {
18
+ className: `checkbox ${a ? "disabled" : ""} ${e ? "indeterminate" : ""}`,
19
+ children: [
20
+ /* @__PURE__ */ r(
21
+ "input",
22
+ {
23
+ ref: c,
24
+ name: l,
25
+ type: "checkbox",
26
+ checked: s,
27
+ onChange: t,
28
+ disabled: a
29
+ }
30
+ ),
31
+ /* @__PURE__ */ r("span", { className: "checkmark" }),
32
+ o
33
+ ]
34
+ }
35
+ ) });
36
+ };
37
+ h.displayName = "Checkbox";
38
+ export {
39
+ h as Checkbox
40
+ };
@@ -0,0 +1,120 @@
1
+ import { jsxs as s, jsx as e } from "react/jsx-runtime";
2
+ import { useState as p } from "react";
3
+ import { Checkbox as i } from "./Checkbox.js";
4
+ const k = {
5
+ title: "UIKit/Checkbox",
6
+ component: i,
7
+ tags: ["autodocs"],
8
+ argTypes: {
9
+ isChecked: {
10
+ control: "boolean",
11
+ description: "Состояние чекбокса (выбран/не выбран)"
12
+ },
13
+ isDisabled: {
14
+ control: "boolean",
15
+ description: "Отключен ли чекбокс"
16
+ },
17
+ label: {
18
+ control: "text",
19
+ description: "Текстовая метка чекбокса"
20
+ },
21
+ name: {
22
+ control: "text",
23
+ description: "Атрибут name для input элемента"
24
+ },
25
+ onChange: {
26
+ action: "changed",
27
+ description: "Обработчик изменения состояния"
28
+ }
29
+ }
30
+ }, g = {
31
+ args: {
32
+ label: "Чекбокс"
33
+ }
34
+ }, C = {
35
+ args: {
36
+ label: "Выбранный чекбокс",
37
+ isChecked: !0
38
+ }
39
+ }, f = {
40
+ args: {
41
+ label: "Отключенный чекбокс",
42
+ isDisabled: !0
43
+ }
44
+ }, D = {
45
+ args: {
46
+ label: "Выбранный и отключенный",
47
+ isChecked: !0,
48
+ isDisabled: !0
49
+ }
50
+ }, y = {
51
+ args: {}
52
+ }, I = {
53
+ args: {
54
+ label: "Неопределённое состояние",
55
+ isIndeterminate: !0
56
+ }
57
+ }, v = {
58
+ args: {
59
+ label: "Неопределённое и отключенное",
60
+ isIndeterminate: !0,
61
+ isDisabled: !0
62
+ }
63
+ }, b = () => {
64
+ const [a, c] = p([
65
+ { id: 1, checked: !1 },
66
+ { id: 2, checked: !0 },
67
+ { id: 3, checked: !1 }
68
+ ]), d = a.every((t) => t.checked), r = a.some((t) => t.checked);
69
+ let n = !1;
70
+ d ? n = !0 : r && (n = "indeterminate");
71
+ const o = () => {
72
+ const t = !d;
73
+ c(a.map((l) => ({ ...l, checked: t })));
74
+ }, h = (t) => {
75
+ c(a.map((l) => l.id === t ? { ...l, checked: !l.checked } : l));
76
+ };
77
+ return /* @__PURE__ */ s("div", { style: { display: "flex", flexDirection: "column", gap: "8px" }, children: [
78
+ /* @__PURE__ */ e(
79
+ i,
80
+ {
81
+ label: "Выбрать все",
82
+ isChecked: n === !0,
83
+ isIndeterminate: n === "indeterminate",
84
+ onChange: o
85
+ }
86
+ ),
87
+ /* @__PURE__ */ e("div", { style: { marginLeft: "24px", display: "flex", flexDirection: "column", gap: "8px" }, children: a.map((t) => /* @__PURE__ */ e(
88
+ i,
89
+ {
90
+ label: `Элемент ${t.id}`,
91
+ isChecked: t.checked,
92
+ onChange: () => h(t.id)
93
+ },
94
+ t.id
95
+ )) })
96
+ ] });
97
+ }, S = () => /* @__PURE__ */ s("div", { style: { display: "flex", flexDirection: "column", gap: "12px" }, children: [
98
+ /* @__PURE__ */ e(i, { label: "Обычный чекбокс" }),
99
+ /* @__PURE__ */ e(i, { label: "Выбранный чекбокс", isChecked: !0 }),
100
+ /* @__PURE__ */ e(i, { label: "Отключенный чекбокс", isDisabled: !0 }),
101
+ /* @__PURE__ */ e(i, { label: "Выбранный и отключенный", isChecked: !0, isDisabled: !0 }),
102
+ /* @__PURE__ */ e(i, { label: "Неопределённое состояние", isIndeterminate: !0 }),
103
+ /* @__PURE__ */ e(i, { label: "Неопределённое и отключенное", isIndeterminate: !0, isDisabled: !0 }),
104
+ /* @__PURE__ */ e(i, {})
105
+ ] }), P = () => /* @__PURE__ */ e("div", { style: { display: "flex", flexDirection: "column", gap: "24px" }, children: /* @__PURE__ */ s("div", { children: [
106
+ /* @__PURE__ */ e("h1", { style: { fontSize: "24px", marginBottom: "24px" }, children: "Эмуляция родительского чекбокса с дочерними" }),
107
+ /* @__PURE__ */ e(b, {})
108
+ ] }) });
109
+ export {
110
+ C as Checked,
111
+ D as CheckedDisabled,
112
+ g as Default,
113
+ f as Disabled,
114
+ I as Indeterminate,
115
+ v as IndeterminateDisabled,
116
+ P as InteractivePlayground,
117
+ S as States,
118
+ y as WithoutLabel,
119
+ k as default
120
+ };
@@ -0,0 +1,4 @@
1
+ import { Checkbox as r } from "./Checkbox.js";
2
+ export {
3
+ r as Checkbox
4
+ };