@consta/uikit 4.13.0 → 4.14.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (114) hide show
  1. package/__internal__/src/components/Breadcrumbs/BreadcrumbsItem/BreadcrumbsItem.js +1 -1
  2. package/__internal__/src/components/Breadcrumbs/BreadcrumbsItem/BreadcrumbsItem.js.map +1 -1
  3. package/__internal__/src/components/Breadcrumbs/BreadcrumbsMore/BreadcrumbsMore.js +1 -1
  4. package/__internal__/src/components/Breadcrumbs/BreadcrumbsMore/BreadcrumbsMore.js.map +1 -1
  5. package/__internal__/src/components/BreadcrumbsDeprecated/BreadcrumbsDeprecated.js +1 -1
  6. package/__internal__/src/components/BreadcrumbsDeprecated/BreadcrumbsDeprecated.js.map +1 -1
  7. package/__internal__/src/components/CalendarDeprecated/CalendarMonthToggler/CalendarMonthToggler.js +1 -1
  8. package/__internal__/src/components/CalendarDeprecated/CalendarMonthToggler/CalendarMonthToggler.js.map +1 -1
  9. package/__internal__/src/components/CalendarDeprecated/CalendarSlider/CalendarSlider.js +1 -1
  10. package/__internal__/src/components/CalendarDeprecated/CalendarSlider/CalendarSlider.js.map +1 -1
  11. package/__internal__/src/components/ChoiceGroup/ChoiceGroup.css +1 -1
  12. package/__internal__/src/components/ChoiceGroupDeprecated/ChoiceGroup.css +1 -1
  13. package/__internal__/src/components/DatePicker/DatePickerDropdown/DatePickerDropdown.js +1 -1
  14. package/__internal__/src/components/DatePicker/DatePickerDropdown/DatePickerDropdown.js.map +1 -1
  15. package/__internal__/src/components/DatePicker/DatePickerTypeDate/DatePickerTypeDate.js +1 -1
  16. package/__internal__/src/components/DatePicker/DatePickerTypeDate/DatePickerTypeDate.js.map +1 -1
  17. package/__internal__/src/components/DatePicker/DatePickerTypeDateRange/DatePickerTypeDateRange.js +1 -1
  18. package/__internal__/src/components/DatePicker/DatePickerTypeDateRange/DatePickerTypeDateRange.js.map +1 -1
  19. package/__internal__/src/components/DatePicker/DatePickerTypeDateTime/DatePickerTypeDateTime.js +1 -1
  20. package/__internal__/src/components/DatePicker/DatePickerTypeDateTime/DatePickerTypeDateTime.js.map +1 -1
  21. package/__internal__/src/components/DatePicker/DatePickerTypeDateTimeRange/DatePickerTypeDateTimeRange.js +1 -1
  22. package/__internal__/src/components/DatePicker/DatePickerTypeDateTimeRange/DatePickerTypeDateTimeRange.js.map +1 -1
  23. package/__internal__/src/components/DatePicker/DatePickerTypeMonth/DatePickerTypeMonth.js +1 -1
  24. package/__internal__/src/components/DatePicker/DatePickerTypeMonth/DatePickerTypeMonth.js.map +1 -1
  25. package/__internal__/src/components/DatePicker/DatePickerTypeMonthRange/DatePickerTypeMonthRange.js +1 -1
  26. package/__internal__/src/components/DatePicker/DatePickerTypeMonthRange/DatePickerTypeMonthRange.js.map +1 -1
  27. package/__internal__/src/components/DatePicker/DatePickerTypeTime/DatePickerTypeTime.js +1 -1
  28. package/__internal__/src/components/DatePicker/DatePickerTypeTime/DatePickerTypeTime.js.map +1 -1
  29. package/__internal__/src/components/DatePicker/DatePickerTypeYear/DatePickerTypeYear.js +1 -1
  30. package/__internal__/src/components/DatePicker/DatePickerTypeYear/DatePickerTypeYear.js.map +1 -1
  31. package/__internal__/src/components/DatePicker/DatePickerTypeYearRange/DatePickerTypeYearRange.js +1 -1
  32. package/__internal__/src/components/DatePicker/DatePickerTypeYearRange/DatePickerTypeYearRange.js.map +1 -1
  33. package/__internal__/src/components/DateTime/DateTime.js +1 -1
  34. package/__internal__/src/components/DateTime/DateTime.js.map +1 -1
  35. package/__internal__/src/components/DateTime/DateTimeCell/DateTimeCell.css +1 -1
  36. package/__internal__/src/components/DateTime/DateTimeSlider/DateTimeSlider.js +1 -1
  37. package/__internal__/src/components/DateTime/DateTimeSlider/DateTimeSlider.js.map +1 -1
  38. package/__internal__/src/components/DateTime/DateTimeToggler/DateTimeToggler.js +1 -1
  39. package/__internal__/src/components/DateTime/DateTimeToggler/DateTimeToggler.js.map +1 -1
  40. package/__internal__/src/components/DragNDropField/DragNDropField.css +1 -1
  41. package/__internal__/src/components/Header/Menu/HeaderMenu.css +1 -1
  42. package/__internal__/src/components/ListCanary/ListItemGrid/ListItemGrid.css +1 -1
  43. package/__internal__/src/components/Loader/Loader.css +1 -1
  44. package/__internal__/src/components/Pagination/Pagination.css +1 -1
  45. package/__internal__/src/components/Pagination/Pagination.js +1 -1
  46. package/__internal__/src/components/Pagination/Pagination.js.map +1 -1
  47. package/__internal__/src/components/ProgressLine/ProgressLine.css +1 -1
  48. package/__internal__/src/components/ProgressSpin/ProgressSpin.css +1 -1
  49. package/__internal__/src/components/ProgressStepBar/ProgressStepBar.js +1 -1
  50. package/__internal__/src/components/ProgressStepBar/ProgressStepBar.js.map +1 -1
  51. package/__internal__/src/components/Radio/Radio.css +1 -1
  52. package/__internal__/src/components/Responses403/Responses403.js +1 -1
  53. package/__internal__/src/components/Responses403/Responses403.js.map +1 -1
  54. package/__internal__/src/components/Responses404/Responses404.js +1 -1
  55. package/__internal__/src/components/Responses404/Responses404.js.map +1 -1
  56. package/__internal__/src/components/ResponsesDeleted/ResponsesDeleted.js +1 -1
  57. package/__internal__/src/components/ResponsesDeleted/ResponsesDeleted.js.map +1 -1
  58. package/__internal__/src/components/ResponsesEmptyBox/ResponsesEmptyBox.js +1 -1
  59. package/__internal__/src/components/ResponsesEmptyBox/ResponsesEmptyBox.js.map +1 -1
  60. package/__internal__/src/components/ResponsesEmptyPockets/ResponsesEmptyPockets.js +1 -1
  61. package/__internal__/src/components/ResponsesEmptyPockets/ResponsesEmptyPockets.js.map +1 -1
  62. package/__internal__/src/components/ResponsesExit/ResponsesExit.js +1 -1
  63. package/__internal__/src/components/ResponsesExit/ResponsesExit.js.map +1 -1
  64. package/__internal__/src/components/ResponsesNothingFound/ResponsesNothingFound.js +1 -1
  65. package/__internal__/src/components/ResponsesNothingFound/ResponsesNothingFound.js.map +1 -1
  66. package/__internal__/src/components/Skeleton/Skeleton.css +1 -1
  67. package/__internal__/src/components/SnackBar/SnackBarActionButton/SnackBarActionButton.js +1 -1
  68. package/__internal__/src/components/SnackBar/SnackBarActionButton/SnackBarActionButton.js.map +1 -1
  69. package/__internal__/src/components/SnackBar/SnackBarItem/SnackBarItem.js +1 -1
  70. package/__internal__/src/components/SnackBar/SnackBarItem/SnackBarItem.js.map +1 -1
  71. package/__internal__/src/components/Steps/Steps.css +1 -1
  72. package/__internal__/src/components/Steps/Steps.js +1 -1
  73. package/__internal__/src/components/Steps/Steps.js.map +1 -1
  74. package/__internal__/src/components/Steps/StepsStep/StepsStep.css +1 -1
  75. package/__internal__/src/components/StepsDeprecated/Steps.css +1 -1
  76. package/__internal__/src/components/StepsDeprecated/StepsStep/StepsStep.css +1 -1
  77. package/__internal__/src/components/Table/Cell/TableCell.css +1 -1
  78. package/__internal__/src/components/Table/FilterContainer/TableFilterContainer.js +1 -1
  79. package/__internal__/src/components/Table/FilterContainer/TableFilterContainer.js.map +1 -1
  80. package/__internal__/src/components/Table/FilterTooltip/TableFilterTooltip.css +1 -1
  81. package/__internal__/src/components/Table/FilterTooltip/TableFilterTooltip.js +1 -1
  82. package/__internal__/src/components/Table/FilterTooltip/TableFilterTooltip.js.map +1 -1
  83. package/__internal__/src/components/Table/Header/TableHeader.css +1 -1
  84. package/__internal__/src/components/Table/Header/TableHeader.js +1 -1
  85. package/__internal__/src/components/Table/Header/TableHeader.js.map +1 -1
  86. package/__internal__/src/components/Table/RowsCollapse/TableRowsCollapse.js +1 -1
  87. package/__internal__/src/components/Table/RowsCollapse/TableRowsCollapse.js.map +1 -1
  88. package/__internal__/src/components/Table/Table.css +1 -1
  89. package/__internal__/src/components/Table/TextFilter/TableTextFilter.js +1 -1
  90. package/__internal__/src/components/Table/TextFilter/TableTextFilter.js.map +1 -1
  91. package/__internal__/src/components/Tabs/FitModeScrollWrapper/TabsFitModeScrollWrapper.js +1 -1
  92. package/__internal__/src/components/Tabs/FitModeScrollWrapper/TabsFitModeScrollWrapper.js.map +1 -1
  93. package/__internal__/src/components/Tabs/MoreItems/TabsMoreItems.js +1 -1
  94. package/__internal__/src/components/Tabs/MoreItems/TabsMoreItems.js.map +1 -1
  95. package/__internal__/src/components/TabsDeprecated/FitModeScrollWrapper/TabsFitModeScrollWrapper.js +1 -1
  96. package/__internal__/src/components/TabsDeprecated/FitModeScrollWrapper/TabsFitModeScrollWrapper.js.map +1 -1
  97. package/__internal__/src/components/TabsDeprecated/MoreItems/TabsMoreItems.js +1 -1
  98. package/__internal__/src/components/TabsDeprecated/MoreItems/TabsMoreItems.js.map +1 -1
  99. package/__internal__/src/components/TextField/TextField.css +1 -1
  100. package/__internal__/src/components/TextField/useIMask.js +1 -1
  101. package/__internal__/src/components/TextField/useIMask.js.map +1 -1
  102. package/__internal__/src/components/ThemeToggler/ThemeToggler.js +1 -1
  103. package/__internal__/src/components/ThemeToggler/ThemeToggler.js.map +1 -1
  104. package/__internal__/src/components/ThemeToggler/helpers.d.ts +1 -0
  105. package/__internal__/src/components/ThemeToggler/types.d.ts +4 -2
  106. package/__internal__/src/components/ThemeToggler/types.js.map +1 -1
  107. package/__internal__/src/components/User/User.js +1 -1
  108. package/__internal__/src/components/User/User.js.map +1 -1
  109. package/__internal__/src/mixs/MixFocus/MixFocus.css +1 -1
  110. package/__internal__/src/uiKit/components/ColorPreview/ColorPreview.css +1 -1
  111. package/package.json +2 -2
  112. package/__internal__/src/components/DatePicker/useDropdownVisible.d.ts +0 -24
  113. package/__internal__/src/components/DatePicker/useDropdownVisible.js +0 -2
  114. package/__internal__/src/components/DatePicker/useDropdownVisible.js.map +0 -1
@@ -1,2 +1,2 @@
1
- import React from"react";import{ResponsesImageDeleted}from"../../responsesImages/ResponsesImageDeleted/ResponsesImageDeleted";import{Button}from"../Button/Button";import{createResponses}from"../Responses/createResponses";export var ResponsesDeleted=createResponses({name:"ResponsesDeleted",image:ResponsesImageDeleted,title:"*\u0427\u0442\u043E-\u0442\u043E* \u0443\u0434\u0430\u043B\u0435\u043D\u043E",description:"*\u0427\u0442\u043E-\u0442\u043E* \u0443\u0441\u043F\u0435\u0448\u043D\u043E \u0443\u0434\u0430\u043B\u0435\u043D\u043E",actions:React.createElement(React.Fragment,null,React.createElement(Button,{label:"\u0412\u0435\u0440\u043D\u0443\u0442\u044C \u043D\u0430 \u043C\u0435\u0441\u0442\u043E",view:"ghost",style:{marginRight:"var(--space-m)"}}),React.createElement(Button,{label:"\u041E\u0442\u043B\u0438\u0447\u043D\u043E!",view:"ghost"}))});
1
+ import React from"react";import{ResponsesImageDeleted}from"../../responsesImages/ResponsesImageDeleted/ResponsesImageDeleted";import{Button}from"../Button/Button";import{createResponses}from"../Responses/createResponses";export var ResponsesDeleted=createResponses({name:"ResponsesDeleted",image:ResponsesImageDeleted,title:"*\u0427\u0442\u043E-\u0442\u043E* \u0443\u0434\u0430\u043B\u0435\u043D\u043E",description:"*\u0427\u0442\u043E-\u0442\u043E* \u0443\u0441\u043F\u0435\u0448\u043D\u043E \u0443\u0434\u0430\u043B\u0435\u043D\u043E",actions:React.createElement(React.Fragment,null,React.createElement(Button,{type:"button",label:"\u0412\u0435\u0440\u043D\u0443\u0442\u044C \u043D\u0430 \u043C\u0435\u0441\u0442\u043E",view:"ghost",style:{marginRight:"var(--space-m)"}}),React.createElement(Button,{type:"button",label:"\u041E\u0442\u043B\u0438\u0447\u043D\u043E!",view:"ghost"}))});
2
2
  //# sourceMappingURL=ResponsesDeleted.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ResponsesDeleted.js","names":["React","ResponsesImageDeleted","Button","createResponses","ResponsesDeleted","name","image","title","description","actions","marginRight"],"sources":["../../../../../src/components/ResponsesDeleted/ResponsesDeleted.tsx"],"sourcesContent":["import React from 'react';\n\nimport { ResponsesImageDeleted } from '../../responsesImages/ResponsesImageDeleted/ResponsesImageDeleted';\nimport { Button } from '../Button/Button';\nimport { createResponses } from '../Responses/createResponses';\n\nexport const ResponsesDeleted = createResponses({\n name: 'ResponsesDeleted',\n image: ResponsesImageDeleted,\n title: '*Что-то* удалено',\n description: '*Что-то* успешно удалено',\n actions: (\n <>\n <Button\n label=\"Вернуть на место\"\n view=\"ghost\"\n style={{ marginRight: 'var(--space-m)' }}\n />\n <Button label=\"Отлично!\" view=\"ghost\" />\n </>\n ),\n});\n"],"mappings":"AAAA,MAAOA,MAAP,KAAkB,OAAlB,CAEA,OAASC,qBAAT,yEACA,OAASC,MAAT,wBACA,OAASC,eAAT,oCAEA,MAAO,IAAMC,iBAAgB,CAAGD,eAAe,CAAC,CAC9CE,IAAI,CAAE,kBADwC,CAE9CC,KAAK,CAAEL,qBAFuC,CAG9CM,KAAK,CAAE,8EAHuC,CAI9CC,WAAW,CAAE,yHAJiC,CAK9CC,OAAO,CACL,wCACE,oBAAC,MAAD,EACE,KAAK,CAAC,wFADR,CAEE,IAAI,CAAC,OAFP,CAGE,KAAK,CAAE,CAAEC,WAAW,CAAE,gBAAf,CAHT,EADF,CAME,oBAAC,MAAD,EAAQ,KAAK,CAAC,6CAAd,CAAyB,IAAI,CAAC,OAA9B,EANF,CAN4C,CAAD,CAAxC"}
1
+ {"version":3,"file":"ResponsesDeleted.js","names":["React","ResponsesImageDeleted","Button","createResponses","ResponsesDeleted","name","image","title","description","actions","marginRight"],"sources":["../../../../../src/components/ResponsesDeleted/ResponsesDeleted.tsx"],"sourcesContent":["import React from 'react';\n\nimport { ResponsesImageDeleted } from '../../responsesImages/ResponsesImageDeleted/ResponsesImageDeleted';\nimport { Button } from '../Button/Button';\nimport { createResponses } from '../Responses/createResponses';\n\nexport const ResponsesDeleted = createResponses({\n name: 'ResponsesDeleted',\n image: ResponsesImageDeleted,\n title: '*Что-то* удалено',\n description: '*Что-то* успешно удалено',\n actions: (\n <>\n <Button\n type=\"button\"\n label=\"Вернуть на место\"\n view=\"ghost\"\n style={{ marginRight: 'var(--space-m)' }}\n />\n <Button type=\"button\" label=\"Отлично!\" view=\"ghost\" />\n </>\n ),\n});\n"],"mappings":"AAAA,MAAOA,MAAP,KAAkB,OAAlB,CAEA,OAASC,qBAAT,yEACA,OAASC,MAAT,wBACA,OAASC,eAAT,oCAEA,MAAO,IAAMC,iBAAgB,CAAGD,eAAe,CAAC,CAC9CE,IAAI,CAAE,kBADwC,CAE9CC,KAAK,CAAEL,qBAFuC,CAG9CM,KAAK,CAAE,8EAHuC,CAI9CC,WAAW,CAAE,yHAJiC,CAK9CC,OAAO,CACL,wCACE,oBAAC,MAAD,EACE,IAAI,CAAC,QADP,CAEE,KAAK,CAAC,wFAFR,CAGE,IAAI,CAAC,OAHP,CAIE,KAAK,CAAE,CAAEC,WAAW,CAAE,gBAAf,CAJT,EADF,CAOE,oBAAC,MAAD,EAAQ,IAAI,CAAC,QAAb,CAAsB,KAAK,CAAC,6CAA5B,CAAuC,IAAI,CAAC,OAA5C,EAPF,CAN4C,CAAD,CAAxC"}
@@ -1,2 +1,2 @@
1
- import React from"react";import{ResponsesImageEmptyBox}from"../../responsesImages/ResponsesImageEmptyBox/ResponsesImageEmptyBox";import{Button}from"../Button/Button";import{createResponses}from"../Responses/createResponses";export var ResponsesEmptyBox=createResponses({name:"ResponsesEmptyBox",image:ResponsesImageEmptyBox,title:"\u0417\u0434\u0435\u0441\u044C \u043F\u043E\u043A\u0430 \u043D\u0438\u0447\u0435\u0433\u043E \u043D\u0435\u0442",description:"\u0411\u0443\u0434\u044C\u0442\u0435 \u043F\u0435\u0440\u0432\u044B\u043C, \u0434\u043E\u0431\u0430\u0432\u044C\u0442\u0435 \u0447\u0442\u043E-\u043D\u0438\u0431\u0443\u0434\u044C \u043F\u043E\u043B\u0435\u0437\u043D\u043E\u0435",actions:React.createElement(Button,{label:"\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u0447\u0442\u043E-\u043D\u0438\u0431\u0443\u0434\u044C"})});
1
+ import React from"react";import{ResponsesImageEmptyBox}from"../../responsesImages/ResponsesImageEmptyBox/ResponsesImageEmptyBox";import{Button}from"../Button/Button";import{createResponses}from"../Responses/createResponses";export var ResponsesEmptyBox=createResponses({name:"ResponsesEmptyBox",image:ResponsesImageEmptyBox,title:"\u0417\u0434\u0435\u0441\u044C \u043F\u043E\u043A\u0430 \u043D\u0438\u0447\u0435\u0433\u043E \u043D\u0435\u0442",description:"\u0411\u0443\u0434\u044C\u0442\u0435 \u043F\u0435\u0440\u0432\u044B\u043C, \u0434\u043E\u0431\u0430\u0432\u044C\u0442\u0435 \u0447\u0442\u043E-\u043D\u0438\u0431\u0443\u0434\u044C \u043F\u043E\u043B\u0435\u0437\u043D\u043E\u0435",actions:React.createElement(Button,{type:"button",label:"\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u0447\u0442\u043E-\u043D\u0438\u0431\u0443\u0434\u044C"})});
2
2
  //# sourceMappingURL=ResponsesEmptyBox.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ResponsesEmptyBox.js","names":["React","ResponsesImageEmptyBox","Button","createResponses","ResponsesEmptyBox","name","image","title","description","actions"],"sources":["../../../../../src/components/ResponsesEmptyBox/ResponsesEmptyBox.tsx"],"sourcesContent":["import React from 'react';\n\nimport { ResponsesImageEmptyBox } from '../../responsesImages/ResponsesImageEmptyBox/ResponsesImageEmptyBox';\nimport { Button } from '../Button/Button';\nimport { createResponses } from '../Responses/createResponses';\n\nexport const ResponsesEmptyBox = createResponses({\n name: 'ResponsesEmptyBox',\n image: ResponsesImageEmptyBox,\n title: 'Здесь пока ничего нет',\n description: 'Будьте первым, добавьте что-нибудь полезное',\n actions: <Button label=\"Добавить что-нибудь\" />,\n});\n"],"mappings":"AAAA,MAAOA,MAAP,KAAkB,OAAlB,CAEA,OAASC,sBAAT,2EACA,OAASC,MAAT,wBACA,OAASC,eAAT,oCAEA,MAAO,IAAMC,kBAAiB,CAAGD,eAAe,CAAC,CAC/CE,IAAI,CAAE,mBADyC,CAE/CC,KAAK,CAAEL,sBAFwC,CAG/CM,KAAK,CAAE,iHAHwC,CAI/CC,WAAW,CAAE,sOAJkC,CAK/CC,OAAO,CAAE,oBAAC,MAAD,EAAQ,KAAK,CAAC,0GAAd,EALsC,CAAD,CAAzC"}
1
+ {"version":3,"file":"ResponsesEmptyBox.js","names":["React","ResponsesImageEmptyBox","Button","createResponses","ResponsesEmptyBox","name","image","title","description","actions"],"sources":["../../../../../src/components/ResponsesEmptyBox/ResponsesEmptyBox.tsx"],"sourcesContent":["import React from 'react';\n\nimport { ResponsesImageEmptyBox } from '../../responsesImages/ResponsesImageEmptyBox/ResponsesImageEmptyBox';\nimport { Button } from '../Button/Button';\nimport { createResponses } from '../Responses/createResponses';\n\nexport const ResponsesEmptyBox = createResponses({\n name: 'ResponsesEmptyBox',\n image: ResponsesImageEmptyBox,\n title: 'Здесь пока ничего нет',\n description: 'Будьте первым, добавьте что-нибудь полезное',\n actions: <Button type=\"button\" label=\"Добавить что-нибудь\" />,\n});\n"],"mappings":"AAAA,MAAOA,MAAP,KAAkB,OAAlB,CAEA,OAASC,sBAAT,2EACA,OAASC,MAAT,wBACA,OAASC,eAAT,oCAEA,MAAO,IAAMC,kBAAiB,CAAGD,eAAe,CAAC,CAC/CE,IAAI,CAAE,mBADyC,CAE/CC,KAAK,CAAEL,sBAFwC,CAG/CM,KAAK,CAAE,iHAHwC,CAI/CC,WAAW,CAAE,sOAJkC,CAK/CC,OAAO,CAAE,oBAAC,MAAD,EAAQ,IAAI,CAAC,QAAb,CAAsB,KAAK,CAAC,0GAA5B,EALsC,CAAD,CAAzC"}
@@ -1,2 +1,2 @@
1
- import React from"react";import{ResponsesImageEmptyPockets}from"../../responsesImages/ResponsesImageEmptyPockets/ResponsesImageEmptyPockets";import{Button}from"../Button/Button";import{createResponses}from"../Responses/createResponses";export var ResponsesEmptyPockets=createResponses({name:"ResponsesEmptyPockets",image:ResponsesImageEmptyPockets,title:"\u0417\u0434\u0435\u0441\u044C \u043F\u043E\u043A\u0430 \u043D\u0438\u0447\u0435\u0433\u043E \u043D\u0435\u0442",description:"\u0411\u0443\u0434\u044C\u0442\u0435 \u043F\u0435\u0440\u0432\u044B\u043C, \u0434\u043E\u0431\u0430\u0432\u044C\u0442\u0435 \u0447\u0442\u043E-\u043D\u0438\u0431\u0443\u0434\u044C \u043A\u0440\u0430\u0441\u0438\u0432\u043E\u0435",actions:React.createElement(Button,{label:"\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u0447\u0442\u043E-\u043D\u0438\u0431\u0443\u0434\u044C"})});
1
+ import React from"react";import{ResponsesImageEmptyPockets}from"../../responsesImages/ResponsesImageEmptyPockets/ResponsesImageEmptyPockets";import{Button}from"../Button/Button";import{createResponses}from"../Responses/createResponses";export var ResponsesEmptyPockets=createResponses({name:"ResponsesEmptyPockets",image:ResponsesImageEmptyPockets,title:"\u0417\u0434\u0435\u0441\u044C \u043F\u043E\u043A\u0430 \u043D\u0438\u0447\u0435\u0433\u043E \u043D\u0435\u0442",description:"\u0411\u0443\u0434\u044C\u0442\u0435 \u043F\u0435\u0440\u0432\u044B\u043C, \u0434\u043E\u0431\u0430\u0432\u044C\u0442\u0435 \u0447\u0442\u043E-\u043D\u0438\u0431\u0443\u0434\u044C \u043A\u0440\u0430\u0441\u0438\u0432\u043E\u0435",actions:React.createElement(Button,{type:"button",label:"\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u0447\u0442\u043E-\u043D\u0438\u0431\u0443\u0434\u044C"})});
2
2
  //# sourceMappingURL=ResponsesEmptyPockets.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ResponsesEmptyPockets.js","names":["React","ResponsesImageEmptyPockets","Button","createResponses","ResponsesEmptyPockets","name","image","title","description","actions"],"sources":["../../../../../src/components/ResponsesEmptyPockets/ResponsesEmptyPockets.tsx"],"sourcesContent":["import React from 'react';\n\nimport { ResponsesImageEmptyPockets } from '../../responsesImages/ResponsesImageEmptyPockets/ResponsesImageEmptyPockets';\nimport { Button } from '../Button/Button';\nimport { createResponses } from '../Responses/createResponses';\n\nexport const ResponsesEmptyPockets = createResponses({\n name: 'ResponsesEmptyPockets',\n image: ResponsesImageEmptyPockets,\n title: 'Здесь пока ничего нет',\n description: 'Будьте первым, добавьте что-нибудь красивое',\n actions: <Button label=\"Добавить что-нибудь\" />,\n});\n"],"mappings":"AAAA,MAAOA,MAAP,KAAkB,OAAlB,CAEA,OAASC,0BAAT,mFACA,OAASC,MAAT,wBACA,OAASC,eAAT,oCAEA,MAAO,IAAMC,sBAAqB,CAAGD,eAAe,CAAC,CACnDE,IAAI,CAAE,uBAD6C,CAEnDC,KAAK,CAAEL,0BAF4C,CAGnDM,KAAK,CAAE,iHAH4C,CAInDC,WAAW,CAAE,sOAJsC,CAKnDC,OAAO,CAAE,oBAAC,MAAD,EAAQ,KAAK,CAAC,0GAAd,EAL0C,CAAD,CAA7C"}
1
+ {"version":3,"file":"ResponsesEmptyPockets.js","names":["React","ResponsesImageEmptyPockets","Button","createResponses","ResponsesEmptyPockets","name","image","title","description","actions"],"sources":["../../../../../src/components/ResponsesEmptyPockets/ResponsesEmptyPockets.tsx"],"sourcesContent":["import React from 'react';\n\nimport { ResponsesImageEmptyPockets } from '../../responsesImages/ResponsesImageEmptyPockets/ResponsesImageEmptyPockets';\nimport { Button } from '../Button/Button';\nimport { createResponses } from '../Responses/createResponses';\n\nexport const ResponsesEmptyPockets = createResponses({\n name: 'ResponsesEmptyPockets',\n image: ResponsesImageEmptyPockets,\n title: 'Здесь пока ничего нет',\n description: 'Будьте первым, добавьте что-нибудь красивое',\n actions: <Button type=\"button\" label=\"Добавить что-нибудь\" />,\n});\n"],"mappings":"AAAA,MAAOA,MAAP,KAAkB,OAAlB,CAEA,OAASC,0BAAT,mFACA,OAASC,MAAT,wBACA,OAASC,eAAT,oCAEA,MAAO,IAAMC,sBAAqB,CAAGD,eAAe,CAAC,CACnDE,IAAI,CAAE,uBAD6C,CAEnDC,KAAK,CAAEL,0BAF4C,CAGnDM,KAAK,CAAE,iHAH4C,CAInDC,WAAW,CAAE,sOAJsC,CAKnDC,OAAO,CAAE,oBAAC,MAAD,EAAQ,IAAI,CAAC,QAAb,CAAsB,KAAK,CAAC,0GAA5B,EAL0C,CAAD,CAA7C"}
@@ -1,2 +1,2 @@
1
- import React from"react";import{ResponsesImageExit}from"../../responsesImages/ResponsesImageExit/ResponsesImageExit";import{Button}from"../Button/Button";import{createResponses}from"../Responses/createResponses";export var ResponsesExit=createResponses({name:"ResponsesExit",image:ResponsesImageExit,title:"\u0412\u044B \u0432\u044B\u0448\u043B\u0438 \u0438\u0437 \u0441\u0438\u0441\u0442\u0435\u043C\u044B ",description:"\u0425\u043E\u0442\u0438\u0442\u0435 \u0432\u0435\u0440\u043D\u0443\u0442\u044C\u0441\u044F?",actions:React.createElement(Button,{label:"\u0412\u043E\u0439\u0442\u0438 \u0441\u043D\u043E\u0432\u0430"})});
1
+ import React from"react";import{ResponsesImageExit}from"../../responsesImages/ResponsesImageExit/ResponsesImageExit";import{Button}from"../Button/Button";import{createResponses}from"../Responses/createResponses";export var ResponsesExit=createResponses({name:"ResponsesExit",image:ResponsesImageExit,title:"\u0412\u044B \u0432\u044B\u0448\u043B\u0438 \u0438\u0437 \u0441\u0438\u0441\u0442\u0435\u043C\u044B ",description:"\u0425\u043E\u0442\u0438\u0442\u0435 \u0432\u0435\u0440\u043D\u0443\u0442\u044C\u0441\u044F?",actions:React.createElement(Button,{type:"button",label:"\u0412\u043E\u0439\u0442\u0438 \u0441\u043D\u043E\u0432\u0430"})});
2
2
  //# sourceMappingURL=ResponsesExit.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ResponsesExit.js","names":["React","ResponsesImageExit","Button","createResponses","ResponsesExit","name","image","title","description","actions"],"sources":["../../../../../src/components/ResponsesExit/ResponsesExit.tsx"],"sourcesContent":["import React from 'react';\n\nimport { ResponsesImageExit } from '../../responsesImages/ResponsesImageExit/ResponsesImageExit';\nimport { Button } from '../Button/Button';\nimport { createResponses } from '../Responses/createResponses';\n\nexport const ResponsesExit = createResponses({\n name: 'ResponsesExit',\n image: ResponsesImageExit,\n title: 'Вы вышли из системы ',\n description: 'Хотите вернуться?',\n actions: <Button label=\"Войти снова\" />,\n});\n"],"mappings":"AAAA,MAAOA,MAAP,KAAkB,OAAlB,CAEA,OAASC,kBAAT,mEACA,OAASC,MAAT,wBACA,OAASC,eAAT,oCAEA,MAAO,IAAMC,cAAa,CAAGD,eAAe,CAAC,CAC3CE,IAAI,CAAE,eADqC,CAE3CC,KAAK,CAAEL,kBAFoC,CAG3CM,KAAK,CAAE,sGAHoC,CAI3CC,WAAW,CAAE,8FAJ8B,CAK3CC,OAAO,CAAE,oBAAC,MAAD,EAAQ,KAAK,CAAC,+DAAd,EALkC,CAAD,CAArC"}
1
+ {"version":3,"file":"ResponsesExit.js","names":["React","ResponsesImageExit","Button","createResponses","ResponsesExit","name","image","title","description","actions"],"sources":["../../../../../src/components/ResponsesExit/ResponsesExit.tsx"],"sourcesContent":["import React from 'react';\n\nimport { ResponsesImageExit } from '../../responsesImages/ResponsesImageExit/ResponsesImageExit';\nimport { Button } from '../Button/Button';\nimport { createResponses } from '../Responses/createResponses';\n\nexport const ResponsesExit = createResponses({\n name: 'ResponsesExit',\n image: ResponsesImageExit,\n title: 'Вы вышли из системы ',\n description: 'Хотите вернуться?',\n actions: <Button type=\"button\" label=\"Войти снова\" />,\n});\n"],"mappings":"AAAA,MAAOA,MAAP,KAAkB,OAAlB,CAEA,OAASC,kBAAT,mEACA,OAASC,MAAT,wBACA,OAASC,eAAT,oCAEA,MAAO,IAAMC,cAAa,CAAGD,eAAe,CAAC,CAC3CE,IAAI,CAAE,eADqC,CAE3CC,KAAK,CAAEL,kBAFoC,CAG3CM,KAAK,CAAE,sGAHoC,CAI3CC,WAAW,CAAE,8FAJ8B,CAK3CC,OAAO,CAAE,oBAAC,MAAD,EAAQ,IAAI,CAAC,QAAb,CAAsB,KAAK,CAAC,+DAA5B,EALkC,CAAD,CAArC"}
@@ -1,2 +1,2 @@
1
- import React from"react";import{ResponsesImageNothingFound}from"../../responsesImages/ResponsesImageNothingFound/ResponsesImageNothingFound";import{Button}from"../Button/Button";import{createResponses}from"../Responses/createResponses";export var ResponsesNothingFound=createResponses({name:"ResponsesNothingFound",image:ResponsesImageNothingFound,title:"\u041D\u0438\u0447\u0435\u0433\u043E \u043D\u0435 \u043D\u0430\u0439\u0434\u0435\u043D\u043E",description:"\u041F\u043E\u043F\u0440\u043E\u0431\u0443\u0439\u0442\u0435 \u0441\u0444\u043E\u0440\u043C\u0443\u043B\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u0437\u0430\u043F\u0440\u043E\u0441 \u043F\u043E-\u0434\u0440\u0443\u0433\u043E\u043C\u0443",actions:React.createElement(Button,{label:"\u0412\u0435\u0440\u043D\u0443\u0442\u044C\u0441\u044F \u043D\u0430\u0437\u0430\u0434",view:"ghost"})});
1
+ import React from"react";import{ResponsesImageNothingFound}from"../../responsesImages/ResponsesImageNothingFound/ResponsesImageNothingFound";import{Button}from"../Button/Button";import{createResponses}from"../Responses/createResponses";export var ResponsesNothingFound=createResponses({name:"ResponsesNothingFound",image:ResponsesImageNothingFound,title:"\u041D\u0438\u0447\u0435\u0433\u043E \u043D\u0435 \u043D\u0430\u0439\u0434\u0435\u043D\u043E",description:"\u041F\u043E\u043F\u0440\u043E\u0431\u0443\u0439\u0442\u0435 \u0441\u0444\u043E\u0440\u043C\u0443\u043B\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u0437\u0430\u043F\u0440\u043E\u0441 \u043F\u043E-\u0434\u0440\u0443\u0433\u043E\u043C\u0443",actions:React.createElement(Button,{type:"button",label:"\u0412\u0435\u0440\u043D\u0443\u0442\u044C\u0441\u044F \u043D\u0430\u0437\u0430\u0434",view:"ghost"})});
2
2
  //# sourceMappingURL=ResponsesNothingFound.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ResponsesNothingFound.js","names":["React","ResponsesImageNothingFound","Button","createResponses","ResponsesNothingFound","name","image","title","description","actions"],"sources":["../../../../../src/components/ResponsesNothingFound/ResponsesNothingFound.tsx"],"sourcesContent":["import React from 'react';\n\nimport { ResponsesImageNothingFound } from '../../responsesImages/ResponsesImageNothingFound/ResponsesImageNothingFound';\nimport { Button } from '../Button/Button';\nimport { createResponses } from '../Responses/createResponses';\n\nexport const ResponsesNothingFound = createResponses({\n name: 'ResponsesNothingFound',\n image: ResponsesImageNothingFound,\n title: 'Ничего не найдено',\n description: 'Попробуйте сформулировать запрос по-другому',\n actions: <Button label=\"Вернуться назад\" view=\"ghost\" />,\n});\n"],"mappings":"AAAA,MAAOA,MAAP,KAAkB,OAAlB,CAEA,OAASC,0BAAT,mFACA,OAASC,MAAT,wBACA,OAASC,eAAT,oCAEA,MAAO,IAAMC,sBAAqB,CAAGD,eAAe,CAAC,CACnDE,IAAI,CAAE,uBAD6C,CAEnDC,KAAK,CAAEL,0BAF4C,CAGnDM,KAAK,CAAE,8FAH4C,CAInDC,WAAW,CAAE,gPAJsC,CAKnDC,OAAO,CAAE,oBAAC,MAAD,EAAQ,KAAK,CAAC,uFAAd,CAAgC,IAAI,CAAC,OAArC,EAL0C,CAAD,CAA7C"}
1
+ {"version":3,"file":"ResponsesNothingFound.js","names":["React","ResponsesImageNothingFound","Button","createResponses","ResponsesNothingFound","name","image","title","description","actions"],"sources":["../../../../../src/components/ResponsesNothingFound/ResponsesNothingFound.tsx"],"sourcesContent":["import React from 'react';\n\nimport { ResponsesImageNothingFound } from '../../responsesImages/ResponsesImageNothingFound/ResponsesImageNothingFound';\nimport { Button } from '../Button/Button';\nimport { createResponses } from '../Responses/createResponses';\n\nexport const ResponsesNothingFound = createResponses({\n name: 'ResponsesNothingFound',\n image: ResponsesImageNothingFound,\n title: 'Ничего не найдено',\n description: 'Попробуйте сформулировать запрос по-другому',\n actions: <Button type=\"button\" label=\"Вернуться назад\" view=\"ghost\" />,\n});\n"],"mappings":"AAAA,MAAOA,MAAP,KAAkB,OAAlB,CAEA,OAASC,0BAAT,mFACA,OAASC,MAAT,wBACA,OAASC,eAAT,oCAEA,MAAO,IAAMC,sBAAqB,CAAGD,eAAe,CAAC,CACnDE,IAAI,CAAE,uBAD6C,CAEnDC,KAAK,CAAEL,0BAF4C,CAGnDM,KAAK,CAAE,8FAH4C,CAInDC,WAAW,CAAE,gPAJsC,CAKnDC,OAAO,CAAE,oBAAC,MAAD,EAAQ,IAAI,CAAC,QAAb,CAAsB,KAAK,CAAC,uFAA5B,CAA8C,IAAI,CAAC,OAAnD,EAL0C,CAAD,CAA7C"}
@@ -1 +1 @@
1
- .Skeleton{--loader-width:100px;-webkit-animation:Skeleton-Animation 1.5s linear infinite;animation:Skeleton-Animation 1.5s linear infinite;background-attachment:fixed;background-color:var(--color-bg-system);background-image:linear-gradient(to right,transparent 0,var(--color-bg-stripe) calc(var(--loader-width)*.2),var(--color-bg-ghost) calc(var(--loader-width)*.6),transparent var(--loader-width));background-repeat:no-repeat;box-sizing:border-box}@media (min-width:720px){.Skeleton{-webkit-animation-duration:2s;animation-duration:2s}}@media (min-width:1280px){.Skeleton{-webkit-animation-duration:2.5s;animation-duration:2.5s}}@-webkit-keyframes Skeleton-Animation{0%{background-position:calc(var(--loader-width)*-1) 0}75%,to{background-position:100vw 0}}@keyframes Skeleton-Animation{0%{background-position:calc(var(--loader-width)*-1) 0}75%,to{background-position:100vw 0}}
1
+ .Skeleton{--loader-width:100px;animation:Skeleton-Animation 1.5s linear infinite;background-attachment:fixed;background-color:var(--color-bg-system);background-image:linear-gradient(to right,transparent 0,var(--color-bg-stripe) calc(var(--loader-width)*.2),var(--color-bg-ghost) calc(var(--loader-width)*.6),transparent var(--loader-width));background-repeat:no-repeat;box-sizing:border-box}@media (min-width:720px){.Skeleton{animation-duration:2s}}@media (min-width:1280px){.Skeleton{animation-duration:2.5s}}@keyframes Skeleton-Animation{0%{background-position:calc(var(--loader-width)*-1) 0}75%,to{background-position:100vw 0}}
@@ -1,2 +1,2 @@
1
- import"./SnackBarActionButton.css";import React from"react";import{cn}from"../../../utils/bem";import{Button}from"../../Button/Button";var cnSnackBarActionButton=cn("SnackBarActionButton");export var SnackBarActionButton=function(a){var b=a.actions,c=a.className;return 1>b.length?null:React.createElement("div",{className:cnSnackBarActionButton("ActionButtonsWrapper",[c])},b.map(function(a,b){return React.createElement(Button,{className:cnSnackBarActionButton(),key:"".concat(cnSnackBarActionButton(),"-").concat(b),size:"s",view:"ghost",label:a.label,onClick:a.onClick})}))};
1
+ import"./SnackBarActionButton.css";import React from"react";import{cn}from"../../../utils/bem";import{Button}from"../../Button/Button";var cnSnackBarActionButton=cn("SnackBarActionButton");export var SnackBarActionButton=function(a){var b=a.actions,c=a.className;return 1>b.length?null:React.createElement("div",{className:cnSnackBarActionButton("ActionButtonsWrapper",[c])},b.map(function(a,b){return React.createElement(Button,{className:cnSnackBarActionButton(),key:"".concat(cnSnackBarActionButton(),"-").concat(b),size:"s",type:"button",view:"ghost",label:a.label,onClick:a.onClick})}))};
2
2
  //# sourceMappingURL=SnackBarActionButton.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SnackBarActionButton.js","names":["React","cn","Button","cnSnackBarActionButton","SnackBarActionButton","props","actions","className","length","map","item","index","label","onClick"],"sources":["../../../../../../src/components/SnackBar/SnackBarActionButton/SnackBarActionButton.tsx"],"sourcesContent":["import './SnackBarActionButton.css';\n\nimport React from 'react';\n\nimport { cn } from '../../../utils/bem';\nimport { Button } from '../../Button/Button';\nimport { SnackBarActionButtonProps } from '../types';\n\nconst cnSnackBarActionButton = cn('SnackBarActionButton');\n\nexport const SnackBarActionButton: React.FC<SnackBarActionButtonProps> = (\n props,\n) => {\n const { actions, className } = props;\n\n if (actions.length < 1) {\n return null;\n }\n\n return (\n <div\n className={cnSnackBarActionButton('ActionButtonsWrapper', [className])}\n >\n {actions.map((item, index) => (\n <Button\n className={cnSnackBarActionButton()}\n key={`${cnSnackBarActionButton()}-${index}`}\n size=\"s\"\n view=\"ghost\"\n label={item.label}\n onClick={item.onClick}\n />\n ))}\n </div>\n );\n};\n"],"mappings":"AAAA,mCAEA,MAAOA,MAAP,KAAkB,OAAlB,CAEA,OAASC,EAAT,0BACA,OAASC,MAAT,2BAGA,GAAMC,uBAAsB,CAAGF,EAAE,CAAC,sBAAD,CAAjC,CAEA,MAAO,IAAMG,qBAAyD,CAAG,SACvEC,CADuE,CAEpE,CACH,GAAQC,EAAR,CAA+BD,CAA/B,CAAQC,OAAR,CAAiBC,CAAjB,CAA+BF,CAA/B,CAAiBE,SAAjB,CADG,MAGkB,EAAjB,CAAAD,CAAO,CAACE,MAHT,CAIM,IAJN,CAQD,2BACE,SAAS,CAAEL,sBAAsB,CAAC,sBAAD,CAAyB,CAACI,CAAD,CAAzB,CADnC,EAGGD,CAAO,CAACG,GAAR,CAAY,SAACC,CAAD,CAAOC,CAAP,QACX,qBAAC,MAAD,EACE,SAAS,CAAER,sBAAsB,EADnC,CAEE,GAAG,WAAKA,sBAAsB,EAA3B,aAAiCQ,CAAjC,CAFL,CAGE,IAAI,CAAC,GAHP,CAIE,IAAI,CAAC,OAJP,CAKE,KAAK,CAAED,CAAI,CAACE,KALd,CAME,OAAO,CAAEF,CAAI,CAACG,OANhB,EADW,CAAZ,CAHH,CAeH,CAzBM"}
1
+ {"version":3,"file":"SnackBarActionButton.js","names":["React","cn","Button","cnSnackBarActionButton","SnackBarActionButton","props","actions","className","length","map","item","index","label","onClick"],"sources":["../../../../../../src/components/SnackBar/SnackBarActionButton/SnackBarActionButton.tsx"],"sourcesContent":["import './SnackBarActionButton.css';\n\nimport React from 'react';\n\nimport { cn } from '../../../utils/bem';\nimport { Button } from '../../Button/Button';\nimport { SnackBarActionButtonProps } from '../types';\n\nconst cnSnackBarActionButton = cn('SnackBarActionButton');\n\nexport const SnackBarActionButton: React.FC<SnackBarActionButtonProps> = (\n props,\n) => {\n const { actions, className } = props;\n\n if (actions.length < 1) {\n return null;\n }\n\n return (\n <div\n className={cnSnackBarActionButton('ActionButtonsWrapper', [className])}\n >\n {actions.map((item, index) => (\n <Button\n className={cnSnackBarActionButton()}\n key={`${cnSnackBarActionButton()}-${index}`}\n size=\"s\"\n type=\"button\"\n view=\"ghost\"\n label={item.label}\n onClick={item.onClick}\n />\n ))}\n </div>\n );\n};\n"],"mappings":"AAAA,mCAEA,MAAOA,MAAP,KAAkB,OAAlB,CAEA,OAASC,EAAT,0BACA,OAASC,MAAT,2BAGA,GAAMC,uBAAsB,CAAGF,EAAE,CAAC,sBAAD,CAAjC,CAEA,MAAO,IAAMG,qBAAyD,CAAG,SACvEC,CADuE,CAEpE,CACH,GAAQC,EAAR,CAA+BD,CAA/B,CAAQC,OAAR,CAAiBC,CAAjB,CAA+BF,CAA/B,CAAiBE,SAAjB,CADG,MAGkB,EAAjB,CAAAD,CAAO,CAACE,MAHT,CAIM,IAJN,CAQD,2BACE,SAAS,CAAEL,sBAAsB,CAAC,sBAAD,CAAyB,CAACI,CAAD,CAAzB,CADnC,EAGGD,CAAO,CAACG,GAAR,CAAY,SAACC,CAAD,CAAOC,CAAP,QACX,qBAAC,MAAD,EACE,SAAS,CAAER,sBAAsB,EADnC,CAEE,GAAG,WAAKA,sBAAsB,EAA3B,aAAiCQ,CAAjC,CAFL,CAGE,IAAI,CAAC,GAHP,CAIE,IAAI,CAAC,QAJP,CAKE,IAAI,CAAC,OALP,CAME,KAAK,CAAED,CAAI,CAACE,KANd,CAOE,OAAO,CAAEF,CAAI,CAACG,OAPhB,EADW,CAAZ,CAHH,CAgBH,CA1BM"}
@@ -1,2 +1,2 @@
1
- import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["onClose","autoClose","showProgress","icon","form","message","actions","status","onAutoClose","className"];import"../../Theme/_color/Theme_color_gpnDark.css";import"./SnackBarItem.css";import{IconClose}from"@consta/icons/IconClose";import React,{useEffect,useState}from"react";import{useFlag}from"../../../hooks/useFlag/useFlag";import{cn}from"../../../utils/bem";import{isNumber,isString}from"../../../utils/type-guards";import{Button}from"../../Button/Button";import{Text}from"../../Text/Text";import{cnTheme}from"../../Theme/Theme";import{SnackBarActionButton}from"../SnackBarActionButton/SnackBarActionButton";import{SnackBarLine}from"../SnackBarLine/SnackBarLine";import{SnackBarTimer}from"../SnackBarTimer/SnackBarTimer";import{snackBarItemStatusDefault,snackBarPropFormDefault}from"../types";var defaultInitialTimerTime=3;export var cnSnackBarItem=cn("SnackBarItem");var getAutoCloseTime=function(a){return!!a&&("number"==typeof a?a:defaultInitialTimerTime)};export var SnackBarItemRender=function(a,b){var c=a.onClose,d=a.autoClose,e=a.showProgress,f=a.icon,g=a.form,h=void 0===g?snackBarPropFormDefault:g,i=a.message,j=a.actions,k=a.status,l=void 0===k?snackBarItemStatusDefault:k,m=a.onAutoClose,n=a.className,o=_objectWithoutProperties(a,_excluded),p=useState(null),q=_slicedToArray(p,2),r=q[0],s=q[1],t=useFlag(!1),u=_slicedToArray(t,2),v=u[0],w=u[1],x=w.on,y=w.off,z=useFlag(!1),A=_slicedToArray(z,2),B=A[0],C=A[1].on,D=function(a){return s(a)},E=getAutoCloseTime(d),F=e===void 0||!(isNumber(E)&&0<E),G=function(){m?m():null===c||void 0===c?void 0:c()};useEffect(function(){B||(v?r&&r.pause():r&&r.start())},[v,B,r]);var H=function(){C(),G()},I=c?function(){return c()}:void 0;return React.createElement("div",Object.assign({ref:b,className:cnSnackBarItem({status:l,showProgress:e,form:h},[cnTheme({color:"gpnDark"}),n]),onMouseEnter:E?function handleMouseEnter(){return x()}:void 0,onMouseLeave:E?function handleMouseLeave(){return y()}:void 0},o),E&&"line"!==e&&React.createElement(SnackBarTimer,{className:cnSnackBarItem("Timer"),onMount:D,onTimeIsOver:H,startTime:E,hidden:F}),f&&(F&&"timer"===e||"timer"!==e)&&React.createElement(f,{className:cnSnackBarItem("Icon"),size:"m"}),React.createElement("div",{className:cnSnackBarItem("Content")},isString(i)||isNumber(i)?React.createElement(Text,{className:cnSnackBarItem("Message"),lineHeight:"s"},i):i,j&&React.createElement(SnackBarActionButton,{actions:j,className:cnSnackBarItem("ActionButton")})),c&&React.createElement(Button,{className:cnSnackBarItem("CloseButton"),view:"clear",iconLeft:IconClose,form:"round",size:"xs",onClick:I}),E&&"line"===e&&React.createElement(SnackBarLine,{className:cnSnackBarItem("Line"),onMount:D,onTimeIsOver:H,startTime:E}))};export var SnackBarItem=React.forwardRef(SnackBarItemRender);
1
+ import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["onClose","autoClose","showProgress","icon","form","message","actions","status","onAutoClose","className"];import"../../Theme/_color/Theme_color_gpnDark.css";import"./SnackBarItem.css";import{IconClose}from"@consta/icons/IconClose";import React,{useEffect,useState}from"react";import{useFlag}from"../../../hooks/useFlag/useFlag";import{cn}from"../../../utils/bem";import{isNumber,isString}from"../../../utils/type-guards";import{Button}from"../../Button/Button";import{Text}from"../../Text/Text";import{cnTheme}from"../../Theme/Theme";import{SnackBarActionButton}from"../SnackBarActionButton/SnackBarActionButton";import{SnackBarLine}from"../SnackBarLine/SnackBarLine";import{SnackBarTimer}from"../SnackBarTimer/SnackBarTimer";import{snackBarItemStatusDefault,snackBarPropFormDefault}from"../types";var defaultInitialTimerTime=3;export var cnSnackBarItem=cn("SnackBarItem");var getAutoCloseTime=function(a){return!!a&&("number"==typeof a?a:defaultInitialTimerTime)};export var SnackBarItemRender=function(a,b){var c=a.onClose,d=a.autoClose,e=a.showProgress,f=a.icon,g=a.form,h=void 0===g?snackBarPropFormDefault:g,i=a.message,j=a.actions,k=a.status,l=void 0===k?snackBarItemStatusDefault:k,m=a.onAutoClose,n=a.className,o=_objectWithoutProperties(a,_excluded),p=useState(null),q=_slicedToArray(p,2),r=q[0],s=q[1],t=useFlag(!1),u=_slicedToArray(t,2),v=u[0],w=u[1],x=w.on,y=w.off,z=useFlag(!1),A=_slicedToArray(z,2),B=A[0],C=A[1].on,D=function(a){return s(a)},E=getAutoCloseTime(d),F=e===void 0||!(isNumber(E)&&0<E),G=function(){m?m():null===c||void 0===c?void 0:c()};useEffect(function(){B||(v?r&&r.pause():r&&r.start())},[v,B,r]);var H=function(){C(),G()},I=c?function(){return c()}:void 0;return React.createElement("div",Object.assign({ref:b,className:cnSnackBarItem({status:l,showProgress:e,form:h},[cnTheme({color:"gpnDark"}),n]),onMouseEnter:E?function handleMouseEnter(){return x()}:void 0,onMouseLeave:E?function handleMouseLeave(){return y()}:void 0},o),E&&"line"!==e&&React.createElement(SnackBarTimer,{className:cnSnackBarItem("Timer"),onMount:D,onTimeIsOver:H,startTime:E,hidden:F}),f&&(F&&"timer"===e||"timer"!==e)&&React.createElement(f,{className:cnSnackBarItem("Icon"),size:"m"}),React.createElement("div",{className:cnSnackBarItem("Content")},isString(i)||isNumber(i)?React.createElement(Text,{className:cnSnackBarItem("Message"),lineHeight:"s"},i):i,j&&React.createElement(SnackBarActionButton,{actions:j,className:cnSnackBarItem("ActionButton")})),c&&React.createElement(Button,{className:cnSnackBarItem("CloseButton"),view:"clear",iconLeft:IconClose,form:"round",type:"button",size:"xs",onClick:I}),E&&"line"===e&&React.createElement(SnackBarLine,{className:cnSnackBarItem("Line"),onMount:D,onTimeIsOver:H,startTime:E}))};export var SnackBarItem=React.forwardRef(SnackBarItemRender);
2
2
  //# sourceMappingURL=SnackBarItem.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SnackBarItem.js","names":["IconClose","React","useEffect","useState","useFlag","cn","isNumber","isString","Button","Text","cnTheme","SnackBarActionButton","SnackBarLine","SnackBarTimer","snackBarItemStatusDefault","snackBarPropFormDefault","defaultInitialTimerTime","cnSnackBarItem","getAutoCloseTime","autoClose","SnackBarItemRender","props","ref","onClose","showProgress","Icon","icon","form","message","actions","status","onAutoCloseProp","onAutoClose","className","otherProps","timerFunctions","setTimerFunctions","hover","onHover","on","offHover","off","timeIsOver","onTimeIsOver","handleMountTimer","autoCloseTime","hideAutoCloseTimer","pause","start","handleTimeIsOver","handleClose","color","handleMouseEnter","handleMouseLeave","SnackBarItem","forwardRef"],"sources":["../../../../../../src/components/SnackBar/SnackBarItem/SnackBarItem.tsx"],"sourcesContent":["import '../../Theme/_color/Theme_color_gpnDark.css';\nimport './SnackBarItem.css';\n\nimport { IconClose } from '@consta/icons/IconClose';\nimport React, { useEffect, useState } from 'react';\n\nimport { useFlag } from '../../../hooks/useFlag/useFlag';\nimport { cn } from '../../../utils/bem';\nimport { isNumber, isString } from '../../../utils/type-guards';\nimport { Button } from '../../Button/Button';\nimport { Text } from '../../Text/Text';\nimport { cnTheme } from '../../Theme/Theme';\nimport { SnackBarActionButton } from '../SnackBarActionButton/SnackBarActionButton';\nimport { SnackBarLine } from '../SnackBarLine/SnackBarLine';\nimport { SnackBarTimer } from '../SnackBarTimer/SnackBarTimer';\nimport {\n SnackBarItemComponent,\n SnackBarItemProps,\n snackBarItemStatusDefault,\n snackBarPropFormDefault,\n SnackBarTimerPropOnMount,\n} from '../types';\n\nconst defaultInitialTimerTime = 3;\n\nexport const cnSnackBarItem = cn('SnackBarItem');\n\nconst getAutoCloseTime = (\n autoClose: boolean | number | undefined,\n): number | false => {\n if (autoClose) {\n if (typeof autoClose === 'number') {\n return autoClose;\n }\n return defaultInitialTimerTime;\n }\n return false;\n};\n\nexport const SnackBarItemRender = (\n props: SnackBarItemProps,\n ref: React.Ref<HTMLDivElement>,\n) => {\n const {\n onClose,\n autoClose,\n showProgress,\n icon: Icon,\n form = snackBarPropFormDefault,\n message,\n actions,\n status = snackBarItemStatusDefault,\n onAutoClose: onAutoCloseProp,\n className,\n ...otherProps\n } = props;\n\n const [timerFunctions, setTimerFunctions] = useState<{\n start: () => void;\n pause: () => void;\n } | null>(null);\n const [hover, { on: onHover, off: offHover }] = useFlag(false);\n const [timeIsOver, { on: onTimeIsOver }] = useFlag(false);\n const handleMountTimer: SnackBarTimerPropOnMount = (timerFunctions) =>\n setTimerFunctions(timerFunctions);\n const handleMouseEnter = () => onHover();\n const handleMouseLeave = () => offHover();\n const autoCloseTime = getAutoCloseTime(autoClose);\n const hideAutoCloseTimer =\n showProgress === undefined ||\n !(isNumber(autoCloseTime) && autoCloseTime > 0);\n const onAutoClose = () => {\n if (onAutoCloseProp) {\n onAutoCloseProp();\n } else {\n onClose?.();\n }\n };\n\n useEffect(() => {\n if (!timeIsOver) {\n if (hover) {\n timerFunctions && timerFunctions.pause();\n } else {\n timerFunctions && timerFunctions.start();\n }\n }\n }, [hover, timeIsOver, timerFunctions]);\n\n const handleTimeIsOver = () => {\n onTimeIsOver();\n onAutoClose();\n };\n\n const handleClose = onClose ? () => onClose() : undefined;\n\n return (\n <div\n ref={ref}\n className={cnSnackBarItem({ status, showProgress, form }, [\n cnTheme({ color: 'gpnDark' }),\n className,\n ])}\n onMouseEnter={autoCloseTime ? handleMouseEnter : undefined}\n onMouseLeave={autoCloseTime ? handleMouseLeave : undefined}\n {...otherProps}\n >\n {autoCloseTime && showProgress !== 'line' && (\n <SnackBarTimer\n className={cnSnackBarItem('Timer')}\n onMount={handleMountTimer}\n onTimeIsOver={handleTimeIsOver}\n startTime={autoCloseTime}\n hidden={hideAutoCloseTimer}\n />\n )}\n {Icon &&\n ((hideAutoCloseTimer && showProgress === 'timer') ||\n showProgress !== 'timer') && (\n <Icon className={cnSnackBarItem('Icon')} size=\"m\" />\n )}\n <div className={cnSnackBarItem('Content')}>\n {isString(message) || isNumber(message) ? (\n <Text className={cnSnackBarItem('Message')} lineHeight=\"s\">\n {message}\n </Text>\n ) : (\n message\n )}\n {actions && (\n <SnackBarActionButton\n actions={actions}\n className={cnSnackBarItem('ActionButton')}\n />\n )}\n </div>\n {onClose && (\n <Button\n className={cnSnackBarItem('CloseButton')}\n view=\"clear\"\n iconLeft={IconClose}\n form=\"round\"\n size=\"xs\"\n onClick={handleClose}\n />\n )}\n {autoCloseTime && showProgress === 'line' && (\n <SnackBarLine\n className={cnSnackBarItem('Line')}\n onMount={handleMountTimer}\n onTimeIsOver={handleTimeIsOver}\n startTime={autoCloseTime}\n />\n )}\n </div>\n );\n};\n\nexport const SnackBarItem = React.forwardRef(\n SnackBarItemRender,\n) as SnackBarItemComponent;\n"],"mappings":"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"}
1
+ {"version":3,"file":"SnackBarItem.js","names":["IconClose","React","useEffect","useState","useFlag","cn","isNumber","isString","Button","Text","cnTheme","SnackBarActionButton","SnackBarLine","SnackBarTimer","snackBarItemStatusDefault","snackBarPropFormDefault","defaultInitialTimerTime","cnSnackBarItem","getAutoCloseTime","autoClose","SnackBarItemRender","props","ref","onClose","showProgress","Icon","icon","form","message","actions","status","onAutoCloseProp","onAutoClose","className","otherProps","timerFunctions","setTimerFunctions","hover","onHover","on","offHover","off","timeIsOver","onTimeIsOver","handleMountTimer","autoCloseTime","hideAutoCloseTimer","pause","start","handleTimeIsOver","handleClose","color","handleMouseEnter","handleMouseLeave","SnackBarItem","forwardRef"],"sources":["../../../../../../src/components/SnackBar/SnackBarItem/SnackBarItem.tsx"],"sourcesContent":["import '../../Theme/_color/Theme_color_gpnDark.css';\nimport './SnackBarItem.css';\n\nimport { IconClose } from '@consta/icons/IconClose';\nimport React, { useEffect, useState } from 'react';\n\nimport { useFlag } from '../../../hooks/useFlag/useFlag';\nimport { cn } from '../../../utils/bem';\nimport { isNumber, isString } from '../../../utils/type-guards';\nimport { Button } from '../../Button/Button';\nimport { Text } from '../../Text/Text';\nimport { cnTheme } from '../../Theme/Theme';\nimport { SnackBarActionButton } from '../SnackBarActionButton/SnackBarActionButton';\nimport { SnackBarLine } from '../SnackBarLine/SnackBarLine';\nimport { SnackBarTimer } from '../SnackBarTimer/SnackBarTimer';\nimport {\n SnackBarItemComponent,\n SnackBarItemProps,\n snackBarItemStatusDefault,\n snackBarPropFormDefault,\n SnackBarTimerPropOnMount,\n} from '../types';\n\nconst defaultInitialTimerTime = 3;\n\nexport const cnSnackBarItem = cn('SnackBarItem');\n\nconst getAutoCloseTime = (\n autoClose: boolean | number | undefined,\n): number | false => {\n if (autoClose) {\n if (typeof autoClose === 'number') {\n return autoClose;\n }\n return defaultInitialTimerTime;\n }\n return false;\n};\n\nexport const SnackBarItemRender = (\n props: SnackBarItemProps,\n ref: React.Ref<HTMLDivElement>,\n) => {\n const {\n onClose,\n autoClose,\n showProgress,\n icon: Icon,\n form = snackBarPropFormDefault,\n message,\n actions,\n status = snackBarItemStatusDefault,\n onAutoClose: onAutoCloseProp,\n className,\n ...otherProps\n } = props;\n\n const [timerFunctions, setTimerFunctions] = useState<{\n start: () => void;\n pause: () => void;\n } | null>(null);\n const [hover, { on: onHover, off: offHover }] = useFlag(false);\n const [timeIsOver, { on: onTimeIsOver }] = useFlag(false);\n const handleMountTimer: SnackBarTimerPropOnMount = (timerFunctions) =>\n setTimerFunctions(timerFunctions);\n const handleMouseEnter = () => onHover();\n const handleMouseLeave = () => offHover();\n const autoCloseTime = getAutoCloseTime(autoClose);\n const hideAutoCloseTimer =\n showProgress === undefined ||\n !(isNumber(autoCloseTime) && autoCloseTime > 0);\n const onAutoClose = () => {\n if (onAutoCloseProp) {\n onAutoCloseProp();\n } else {\n onClose?.();\n }\n };\n\n useEffect(() => {\n if (!timeIsOver) {\n if (hover) {\n timerFunctions && timerFunctions.pause();\n } else {\n timerFunctions && timerFunctions.start();\n }\n }\n }, [hover, timeIsOver, timerFunctions]);\n\n const handleTimeIsOver = () => {\n onTimeIsOver();\n onAutoClose();\n };\n\n const handleClose = onClose ? () => onClose() : undefined;\n\n return (\n <div\n ref={ref}\n className={cnSnackBarItem({ status, showProgress, form }, [\n cnTheme({ color: 'gpnDark' }),\n className,\n ])}\n onMouseEnter={autoCloseTime ? handleMouseEnter : undefined}\n onMouseLeave={autoCloseTime ? handleMouseLeave : undefined}\n {...otherProps}\n >\n {autoCloseTime && showProgress !== 'line' && (\n <SnackBarTimer\n className={cnSnackBarItem('Timer')}\n onMount={handleMountTimer}\n onTimeIsOver={handleTimeIsOver}\n startTime={autoCloseTime}\n hidden={hideAutoCloseTimer}\n />\n )}\n {Icon &&\n ((hideAutoCloseTimer && showProgress === 'timer') ||\n showProgress !== 'timer') && (\n <Icon className={cnSnackBarItem('Icon')} size=\"m\" />\n )}\n <div className={cnSnackBarItem('Content')}>\n {isString(message) || isNumber(message) ? (\n <Text className={cnSnackBarItem('Message')} lineHeight=\"s\">\n {message}\n </Text>\n ) : (\n message\n )}\n {actions && (\n <SnackBarActionButton\n actions={actions}\n className={cnSnackBarItem('ActionButton')}\n />\n )}\n </div>\n {onClose && (\n <Button\n className={cnSnackBarItem('CloseButton')}\n view=\"clear\"\n iconLeft={IconClose}\n form=\"round\"\n type=\"button\"\n size=\"xs\"\n onClick={handleClose}\n />\n )}\n {autoCloseTime && showProgress === 'line' && (\n <SnackBarLine\n className={cnSnackBarItem('Line')}\n onMount={handleMountTimer}\n onTimeIsOver={handleTimeIsOver}\n startTime={autoCloseTime}\n />\n )}\n </div>\n );\n};\n\nexport const SnackBarItem = React.forwardRef(\n SnackBarItemRender,\n) as SnackBarItemComponent;\n"],"mappings":"gRAAA,mDACA,2BAEA,OAASA,SAAT,KAA0B,yBAA1B,CACA,MAAOC,MAAP,EAAgBC,SAAhB,CAA2BC,QAA3B,KAA2C,OAA3C,CAEA,OAASC,OAAT,sCACA,OAASC,EAAT,0BACA,OAASC,QAAT,CAAmBC,QAAnB,kCACA,OAASC,MAAT,2BACA,OAASC,IAAT,uBACA,OAASC,OAAT,yBACA,OAASC,oBAAT,oDACA,OAASC,YAAT,oCACA,OAASC,aAAT,sCACA,OAGEC,yBAHF,CAIEC,uBAJF,gBAQA,GAAMC,wBAAuB,CAAG,CAAhC,CAEA,MAAO,IAAMC,eAAc,CAAGZ,EAAE,CAAC,cAAD,CAAzB,CAEP,GAAMa,iBAAgB,CAAG,SACvBC,CADuB,CAEJ,SACfA,CADe,GAEQ,QAArB,QAAOA,EAFM,CAGRA,CAHQ,CAKVH,uBALU,CAQpB,CAVD,CAYA,MAAO,IAAMI,mBAAkB,CAAG,SAChCC,CADgC,CAEhCC,CAFgC,CAG7B,IAEDC,EAFC,CAaCF,CAbD,CAEDE,OAFC,CAGDJ,CAHC,CAaCE,CAbD,CAGDF,SAHC,CAIDK,CAJC,CAaCH,CAbD,CAIDG,YAJC,CAKKC,CALL,CAaCJ,CAbD,CAKDK,IALC,GAaCL,CAbD,CAMDM,IANC,CAMDA,CANC,YAMMZ,uBANN,GAODa,CAPC,CAaCP,CAbD,CAODO,OAPC,CAQDC,CARC,CAaCR,CAbD,CAQDQ,OARC,GAaCR,CAbD,CASDS,MATC,CASDA,CATC,YASQhB,yBATR,GAUYiB,CAVZ,CAaCV,CAbD,CAUDW,WAVC,CAWDC,CAXC,CAaCZ,CAbD,CAWDY,SAXC,CAYEC,CAZF,0BAaCb,CAbD,cAeyClB,QAAQ,CAG1C,IAH0C,CAfjD,uBAeIgC,CAfJ,MAeoBC,CAfpB,QAmB6ChC,OAAO,IAnBpD,uBAmBIiC,CAnBJ,aAmBiBC,CAnBjB,GAmBaC,EAnBb,CAmB+BC,CAnB/B,GAmB0BC,GAnB1B,GAoBwCrC,OAAO,IApB/C,uBAoBIsC,CApBJ,MAoBsBC,CApBtB,MAoBkBJ,EApBlB,CAqBGK,CAA0C,CAAG,SAACT,CAAD,QACjDC,EAAiB,CAACD,CAAD,CADgC,CArBhD,CAyBGU,CAAa,CAAG3B,gBAAgB,CAACC,CAAD,CAzBnC,CA0BG2B,CAAkB,CACtBtB,CAAY,SAAZ,EACA,EAAElB,QAAQ,CAACuC,CAAD,CAAR,EAA2C,CAAhB,CAAAA,CAA7B,CA5BC,CA6BGb,CAAW,CAAG,UAAM,CACpBD,CADoB,CAEtBA,CAAe,EAFO,QAItBR,CAJsB,WAItBA,CAJsB,QAItBA,CAAO,EAEV,CAnCE,CAqCHrB,SAAS,CAAC,UAAM,CACTwC,CADS,GAERL,CAFQ,CAGVF,CAAc,EAAIA,CAAc,CAACY,KAAf,EAHR,CAKVZ,CAAc,EAAIA,CAAc,CAACa,KAAf,EALR,CAQf,CARQ,CAQN,CAACX,CAAD,CAAQK,CAAR,CAAoBP,CAApB,CARM,CArCN,IA+CGc,EAAgB,CAAG,UAAM,CAC7BN,CAAY,EADiB,CAE7BX,CAAW,EACZ,CAlDE,CAoDGkB,CAAW,CAAG3B,CAAO,CAAG,iBAAMA,EAAO,EAAb,CAAH,OApDxB,CAsDH,MACE,0CACE,GAAG,CAAED,CADP,CAEE,SAAS,CAAEL,cAAc,CAAC,CAAEa,MAAM,CAANA,CAAF,CAAUN,YAAY,CAAZA,CAAV,CAAwBG,IAAI,CAAJA,CAAxB,CAAD,CAAiC,CACxDjB,OAAO,CAAC,CAAEyC,KAAK,CAAE,SAAT,CAAD,CADiD,CAExDlB,CAFwD,CAAjC,CAF3B,CAME,YAAY,CAAEY,CAAa,CAtCN,QAAnBO,iBAAmB,SAAMd,EAAO,EAAb,CAsCM,OAN7B,CAOE,YAAY,CAAEO,CAAa,CAtCN,QAAnBQ,iBAAmB,SAAMb,EAAQ,EAAd,CAsCM,OAP7B,EAQMN,CARN,EAUGW,CAAa,EAAqB,MAAjB,GAAArB,CAAjB,EACC,oBAAC,aAAD,EACE,SAAS,CAAEP,cAAc,CAAC,OAAD,CAD3B,CAEE,OAAO,CAAE2B,CAFX,CAGE,YAAY,CAAEK,CAHhB,CAIE,SAAS,CAAEJ,CAJb,CAKE,MAAM,CAAEC,CALV,EAXJ,CAmBGrB,CAAI,GACDqB,CAAkB,EAAqB,OAAjB,GAAAtB,CAAvB,EACkB,OAAjB,GAAAA,CAFC,CAAJ,EAGG,oBAAC,CAAD,EAAM,SAAS,CAAEP,cAAc,CAAC,MAAD,CAA/B,CAAyC,IAAI,CAAC,GAA9C,EAtBN,CAwBE,2BAAK,SAAS,CAAEA,cAAc,CAAC,SAAD,CAA9B,EACGV,QAAQ,CAACqB,CAAD,CAAR,EAAqBtB,QAAQ,CAACsB,CAAD,CAA7B,CACC,oBAAC,IAAD,EAAM,SAAS,CAAEX,cAAc,CAAC,SAAD,CAA/B,CAA4C,UAAU,CAAC,GAAvD,EACGW,CADH,CADD,CAKCA,CANJ,CAQGC,CAAO,EACN,oBAAC,oBAAD,EACE,OAAO,CAAEA,CADX,CAEE,SAAS,CAAEZ,cAAc,CAAC,cAAD,CAF3B,EATJ,CAxBF,CAuCGM,CAAO,EACN,oBAAC,MAAD,EACE,SAAS,CAAEN,cAAc,CAAC,aAAD,CAD3B,CAEE,IAAI,CAAC,OAFP,CAGE,QAAQ,CAAEjB,SAHZ,CAIE,IAAI,CAAC,OAJP,CAKE,IAAI,CAAC,QALP,CAME,IAAI,CAAC,IANP,CAOE,OAAO,CAAEkD,CAPX,EAxCJ,CAkDGL,CAAa,EAAqB,MAAjB,GAAArB,CAAjB,EACC,oBAAC,YAAD,EACE,SAAS,CAAEP,cAAc,CAAC,MAAD,CAD3B,CAEE,OAAO,CAAE2B,CAFX,CAGE,YAAY,CAAEK,CAHhB,CAIE,SAAS,CAAEJ,CAJb,EAnDJ,CA4DH,CAtHM,CAwHP,MAAO,IAAMS,aAAY,CAAGrD,KAAK,CAACsD,UAAN,CAC1BnC,kBAD0B,CAArB"}
@@ -1 +1 @@
1
- .Steps{align-items:center;display:inline-flex;max-width:100%;width:-webkit-max-content;width:-moz-max-content;width:max-content}.Steps-Item:not(:last-child){margin-right:var(--space-xs)}.Steps-List{-ms-overflow-style:none;display:flex;overflow-x:scroll;overflow-y:visible;padding-bottom:var(--space-2xs);scrollbar-width:none}.Steps-List::-webkit-scrollbar{display:none}.Steps-Button_side_left{margin-right:var(--space-xs)}.Steps-Button_side_right{margin-left:var(--space-xs)}
1
+ .Steps{align-items:center;display:inline-flex;max-width:100%;width:-moz-max-content;width:max-content}.Steps-Item:not(:last-child){margin-right:var(--space-xs)}.Steps-List{-ms-overflow-style:none;display:flex;overflow-x:scroll;overflow-y:visible;padding-bottom:var(--space-2xs);scrollbar-width:none}.Steps-List::-webkit-scrollbar{display:none}.Steps-Button_side_left{margin-right:var(--space-xs)}.Steps-Button_side_right{margin-left:var(--space-xs)}
@@ -1,2 +1,2 @@
1
- import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["size","items","value","getItemLabel","getItemDisabled","getItemCompleted","getItemSkipped","onChange","className"];import"./Steps.css";import{IconArrowLeft}from"@consta/icons/IconArrowLeft";import{IconArrowRight}from"@consta/icons/IconArrowRight";import React,{forwardRef,useMemo,useRef,useState}from"react";import{useChoiceGroup}from"../../hooks/useChoiceGroup/useChoiceGroup";import{useOverflow}from"../../hooks/useOverflow/useOverflow";import{useScrollElements}from"../../hooks/useScrollElements/useScrollElements";import{cn}from"../../utils/bem";import{Button}from"../Button/Button";import{withDefaultGetters}from"./helper";import{StepsStep}from"./StepsStep/StepsStep";import{stepsDefaultSize}from"./types";export var cnSteps=cn("Steps");var StepsRender=function(a,b){var c=withDefaultGetters(a),d=c.size,e=void 0===d?stepsDefaultSize:d,f=c.items,g=c.value,h=c.getItemLabel,i=c.getItemDisabled,j=c.getItemCompleted,k=c.getItemSkipped,l=c.onChange,m=c.className,n=_objectWithoutProperties(c,_excluded),o=useState(-1),p=_slicedToArray(o,2),q=p[0],r=p[1],s=useChoiceGroup({value:g,getKey:h,callBack:l,multiple:!1}),t=s.getOnChange,u=s.getChecked;useMemo(function(){f.forEach(function(a,b){u(a)&&r(b)})},[f,g]);var v=useScrollElements(f),w=v.refs,x=v.scrollTo,y=useRef(null),z=useOverflow({currentRef:y}),A=function(a,b){b&&0!==q&&(t(f[q-1])(a),x(q-1)),b||q===f.length-1||(t(f[q+1])(a),x(q+1))};return React.createElement("div",Object.assign({ref:b,className:cnSteps({size:e},[m])},n),z&&React.createElement(Button,{iconLeft:function iconLeft(){return React.createElement(IconArrowLeft,{size:"xs"})},view:"clear",onlyIcon:!0,size:"xs",className:cnSteps("Button",{side:"left"}),onClick:function onClick(a){return A(a,!0)}}),React.createElement("div",{ref:y,className:cnSteps("List")},f.map(function(a,b){return React.createElement(StepsStep,{key:b,ref:w[b],className:cnSteps("Item"),label:null!==j&&void 0!==j&&j(a)?h(a):"".concat(b+1," ").concat(h(a)),size:e,active:q===b,onChange:t(a),completed:null===j||void 0===j?void 0:j(a),skipped:null===k||void 0===k?void 0:k(a),disabled:null===i||void 0===i?void 0:i(a)})})),z&&React.createElement(Button,{iconLeft:function iconLeft(){return React.createElement(IconArrowRight,{size:"xs"})},view:"clear",onlyIcon:!0,size:"xs",className:cnSteps("Button",{side:"right"}),onClick:function onClick(a){return A(a,!1)}}))};export var Steps=forwardRef(StepsRender);export*from"./types";
1
+ import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["size","items","value","getItemLabel","getItemDisabled","getItemCompleted","getItemSkipped","onChange","className"];import"./Steps.css";import{IconArrowLeft}from"@consta/icons/IconArrowLeft";import{IconArrowRight}from"@consta/icons/IconArrowRight";import React,{forwardRef,useMemo,useRef,useState}from"react";import{useChoiceGroup}from"../../hooks/useChoiceGroup/useChoiceGroup";import{useOverflow}from"../../hooks/useOverflow/useOverflow";import{useScrollElements}from"../../hooks/useScrollElements/useScrollElements";import{cn}from"../../utils/bem";import{Button}from"../Button/Button";import{withDefaultGetters}from"./helper";import{StepsStep}from"./StepsStep/StepsStep";import{stepsDefaultSize}from"./types";export var cnSteps=cn("Steps");var StepsRender=function(a,b){var c=withDefaultGetters(a),d=c.size,e=void 0===d?stepsDefaultSize:d,f=c.items,g=c.value,h=c.getItemLabel,i=c.getItemDisabled,j=c.getItemCompleted,k=c.getItemSkipped,l=c.onChange,m=c.className,n=_objectWithoutProperties(c,_excluded),o=useState(-1),p=_slicedToArray(o,2),q=p[0],r=p[1],s=useChoiceGroup({value:g,getKey:h,callBack:l,multiple:!1}),t=s.getOnChange,u=s.getChecked;useMemo(function(){f.forEach(function(a,b){u(a)&&r(b)})},[f,g]);var v=useScrollElements(f),w=v.refs,x=v.scrollTo,y=useRef(null),z=useOverflow({currentRef:y}),A=function(a,b){b&&0!==q&&(t(f[q-1])(a),x(q-1)),b||q===f.length-1||(t(f[q+1])(a),x(q+1))};return React.createElement("div",Object.assign({ref:b,className:cnSteps({size:e},[m])},n),z&&React.createElement(Button,{iconLeft:function iconLeft(){return React.createElement(IconArrowLeft,{size:"xs"})},view:"clear",onlyIcon:!0,size:"xs",type:"button",className:cnSteps("Button",{side:"left"}),onClick:function onClick(a){return A(a,!0)}}),React.createElement("div",{ref:y,className:cnSteps("List")},f.map(function(a,b){return React.createElement(StepsStep,{key:b,ref:w[b],className:cnSteps("Item"),label:null!==j&&void 0!==j&&j(a)?h(a):"".concat(b+1," ").concat(h(a)),size:e,active:q===b,onChange:t(a),completed:null===j||void 0===j?void 0:j(a),skipped:null===k||void 0===k?void 0:k(a),disabled:null===i||void 0===i?void 0:i(a)})})),z&&React.createElement(Button,{iconLeft:function iconLeft(){return React.createElement(IconArrowRight,{size:"xs"})},view:"clear",onlyIcon:!0,size:"xs",type:"button",className:cnSteps("Button",{side:"right"}),onClick:function onClick(a){return A(a,!1)}}))};export var Steps=forwardRef(StepsRender);export*from"./types";
2
2
  //# sourceMappingURL=Steps.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Steps.js","names":["IconArrowLeft","IconArrowRight","React","forwardRef","useMemo","useRef","useState","useChoiceGroup","useOverflow","useScrollElements","cn","Button","withDefaultGetters","StepsStep","stepsDefaultSize","cnSteps","StepsRender","props","ref","size","items","value","getItemLabel","getItemDisabled","getItemCompleted","getItemSkipped","onChange","className","otherProps","activeStep","setActiveStep","getKey","callBack","multiple","getOnChange","getChecked","forEach","item","index","refs","scrollTo","stepsRef","isOverflow","currentRef","changeStep","e","prev","length","side","map","Steps"],"sources":["../../../../../src/components/Steps/Steps.tsx"],"sourcesContent":["import './Steps.css';\n\nimport { IconArrowLeft } from '@consta/icons/IconArrowLeft';\nimport { IconArrowRight } from '@consta/icons/IconArrowRight';\nimport React, { forwardRef, useMemo, useRef, useState } from 'react';\n\nimport { useChoiceGroup } from '../../hooks/useChoiceGroup/useChoiceGroup';\nimport { useOverflow } from '../../hooks/useOverflow/useOverflow';\nimport { useScrollElements } from '../../hooks/useScrollElements/useScrollElements';\nimport { cn } from '../../utils/bem';\nimport { Button } from '../Button/Button';\nimport { withDefaultGetters } from './helper';\nimport { StepsStep } from './StepsStep/StepsStep';\nimport { StepsCompnent, stepsDefaultSize, StepsProps } from './types';\n\nexport const cnSteps = cn('Steps');\n\nconst StepsRender = (props: StepsProps, ref: React.Ref<HTMLDivElement>) => {\n const {\n size = stepsDefaultSize,\n items,\n value,\n getItemLabel,\n getItemDisabled,\n getItemCompleted,\n getItemSkipped,\n onChange,\n className,\n ...otherProps\n } = withDefaultGetters(props);\n\n const [activeStep, setActiveStep] = useState<number>(-1);\n\n const { getOnChange, getChecked } = useChoiceGroup({\n value,\n getKey: getItemLabel,\n callBack: onChange,\n multiple: false,\n });\n\n useMemo(() => {\n items.forEach((item, index) => {\n if (getChecked(item)) {\n setActiveStep(index);\n }\n });\n }, [items, value]);\n\n const { refs, scrollTo } = useScrollElements(items);\n\n const stepsRef = useRef<HTMLDivElement>(null);\n\n const isOverflow = useOverflow({ currentRef: stepsRef });\n\n const changeStep = (e: React.MouseEvent, prev: boolean) => {\n if (prev && activeStep !== 0) {\n getOnChange(items[activeStep - 1])(e);\n scrollTo(activeStep - 1);\n }\n if (!prev && activeStep !== items.length - 1) {\n getOnChange(items[activeStep + 1])(e);\n scrollTo(activeStep + 1);\n }\n };\n\n return (\n <div ref={ref} className={cnSteps({ size }, [className])} {...otherProps}>\n {isOverflow && (\n <Button\n iconLeft={() => <IconArrowLeft size=\"xs\" />}\n view=\"clear\"\n onlyIcon\n size=\"xs\"\n className={cnSteps('Button', { side: 'left' })}\n onClick={(e) => changeStep(e, true)}\n />\n )}\n <div ref={stepsRef} className={cnSteps('List')}>\n {items.map((item, index) => (\n <StepsStep\n key={index}\n ref={refs[index] as React.RefObject<HTMLButtonElement>}\n className={cnSteps('Item')}\n label={\n getItemCompleted?.(item)\n ? getItemLabel(item)\n : `${index + 1} ${getItemLabel(item)}`\n }\n size={size}\n active={activeStep === index}\n onChange={getOnChange(item)}\n completed={getItemCompleted?.(item)}\n skipped={getItemSkipped?.(item)}\n disabled={getItemDisabled?.(item)}\n />\n ))}\n </div>\n {isOverflow && (\n <Button\n iconLeft={() => <IconArrowRight size=\"xs\" />}\n view=\"clear\"\n onlyIcon\n size=\"xs\"\n className={cnSteps('Button', { side: 'right' })}\n onClick={(e) => changeStep(e, false)}\n />\n )}\n </div>\n );\n};\n\nexport const Steps = forwardRef(StepsRender) as StepsCompnent;\n\nexport * from './types';\n"],"mappings":"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"}
1
+ {"version":3,"file":"Steps.js","names":["IconArrowLeft","IconArrowRight","React","forwardRef","useMemo","useRef","useState","useChoiceGroup","useOverflow","useScrollElements","cn","Button","withDefaultGetters","StepsStep","stepsDefaultSize","cnSteps","StepsRender","props","ref","size","items","value","getItemLabel","getItemDisabled","getItemCompleted","getItemSkipped","onChange","className","otherProps","activeStep","setActiveStep","getKey","callBack","multiple","getOnChange","getChecked","forEach","item","index","refs","scrollTo","stepsRef","isOverflow","currentRef","changeStep","e","prev","length","side","map","Steps"],"sources":["../../../../../src/components/Steps/Steps.tsx"],"sourcesContent":["import './Steps.css';\n\nimport { IconArrowLeft } from '@consta/icons/IconArrowLeft';\nimport { IconArrowRight } from '@consta/icons/IconArrowRight';\nimport React, { forwardRef, useMemo, useRef, useState } from 'react';\n\nimport { useChoiceGroup } from '../../hooks/useChoiceGroup/useChoiceGroup';\nimport { useOverflow } from '../../hooks/useOverflow/useOverflow';\nimport { useScrollElements } from '../../hooks/useScrollElements/useScrollElements';\nimport { cn } from '../../utils/bem';\nimport { Button } from '../Button/Button';\nimport { withDefaultGetters } from './helper';\nimport { StepsStep } from './StepsStep/StepsStep';\nimport { StepsCompnent, stepsDefaultSize, StepsProps } from './types';\n\nexport const cnSteps = cn('Steps');\n\nconst StepsRender = (props: StepsProps, ref: React.Ref<HTMLDivElement>) => {\n const {\n size = stepsDefaultSize,\n items,\n value,\n getItemLabel,\n getItemDisabled,\n getItemCompleted,\n getItemSkipped,\n onChange,\n className,\n ...otherProps\n } = withDefaultGetters(props);\n\n const [activeStep, setActiveStep] = useState<number>(-1);\n\n const { getOnChange, getChecked } = useChoiceGroup({\n value,\n getKey: getItemLabel,\n callBack: onChange,\n multiple: false,\n });\n\n useMemo(() => {\n items.forEach((item, index) => {\n if (getChecked(item)) {\n setActiveStep(index);\n }\n });\n }, [items, value]);\n\n const { refs, scrollTo } = useScrollElements(items);\n\n const stepsRef = useRef<HTMLDivElement>(null);\n\n const isOverflow = useOverflow({ currentRef: stepsRef });\n\n const changeStep = (e: React.MouseEvent, prev: boolean) => {\n if (prev && activeStep !== 0) {\n getOnChange(items[activeStep - 1])(e);\n scrollTo(activeStep - 1);\n }\n if (!prev && activeStep !== items.length - 1) {\n getOnChange(items[activeStep + 1])(e);\n scrollTo(activeStep + 1);\n }\n };\n\n return (\n <div ref={ref} className={cnSteps({ size }, [className])} {...otherProps}>\n {isOverflow && (\n <Button\n iconLeft={() => <IconArrowLeft size=\"xs\" />}\n view=\"clear\"\n onlyIcon\n size=\"xs\"\n type=\"button\"\n className={cnSteps('Button', { side: 'left' })}\n onClick={(e) => changeStep(e, true)}\n />\n )}\n <div ref={stepsRef} className={cnSteps('List')}>\n {items.map((item, index) => (\n <StepsStep\n key={index}\n ref={refs[index] as React.RefObject<HTMLButtonElement>}\n className={cnSteps('Item')}\n label={\n getItemCompleted?.(item)\n ? getItemLabel(item)\n : `${index + 1} ${getItemLabel(item)}`\n }\n size={size}\n active={activeStep === index}\n onChange={getOnChange(item)}\n completed={getItemCompleted?.(item)}\n skipped={getItemSkipped?.(item)}\n disabled={getItemDisabled?.(item)}\n />\n ))}\n </div>\n {isOverflow && (\n <Button\n iconLeft={() => <IconArrowRight size=\"xs\" />}\n view=\"clear\"\n onlyIcon\n size=\"xs\"\n type=\"button\"\n className={cnSteps('Button', { side: 'right' })}\n onClick={(e) => changeStep(e, false)}\n />\n )}\n </div>\n );\n};\n\nexport const Steps = forwardRef(StepsRender) as StepsCompnent;\n\nexport * from './types';\n"],"mappings":"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"}
@@ -1 +1 @@
1
- .StepsStep{align-items:center;background-color:transparent;border:none;color:var(--color-control-typo-ghost);cursor:pointer;display:inline-flex;flex:1;font-family:var(--font);line-height:var(--line-height-text-s);padding:var(--space-xs) 0;position:relative;text-align:left;transition:color .2s,font-weight .2s;white-space:nowrap}.StepsStep-Icon{margin-right:var(--space-2xs)}.StepsStep:after{background-color:var(--color-control-bg-ghost);border-radius:var(--control-radius);bottom:-2px;content:"";height:2px;position:absolute;transition:background-color .2s,opacity .2s;width:100%}.StepsStep:hover{color:var(--color-control-typo-ghost-hover)}.StepsStep:hover:after{background-color:var(--color-control-bg-ghost-hover)}.StepsStep:focus{outline:none}.StepsStep_size_m{font-size:var(--size-text-m)}.StepsStep_size_l{font-size:var(--size-text-l)}.StepsStep_active,.StepsStep_completed,.StepsStep_skipped{color:var(--color-control-typo-secondary)}.StepsStep_active:after,.StepsStep_completed:after,.StepsStep_skipped:after{background-color:var(--color-control-bg-border-secondary);opacity:.5}.StepsStep_active:hover,.StepsStep_completed:hover,.StepsStep_skipped:hover{color:var(--color-control-typo-secondary-hover)}.StepsStep_active:hover:after,.StepsStep_completed:hover:after,.StepsStep_skipped:hover:after{background-color:var(--color-control-bg-border-secondary-hover);opacity:.5}.StepsStep_active{font-weight:var(--font-weight-text-semibold)}.StepsStep_active:after,.StepsStep_active:hover:after{opacity:1}.StepsStep_disabled{color:var(--color-control-typo-disable);cursor:unset}.StepsStep_disabled:after{background-color:var(--color-control-bg-disable)}.StepsStep_disabled:hover{color:var(--color-control-typo-disable)}.StepsStep_disabled:hover:after{background-color:var(--color-control-bg-disable)}
1
+ .StepsStep{align-items:center;background-color:transparent;border:none;color:var(--color-control-typo-ghost);cursor:pointer;display:inline-flex;flex:1;font-family:var(--font);line-height:var(--line-height-text-s);padding:var(--space-xs) 0;position:relative;text-align:left;transition:color .2s,font-weight .2s;white-space:nowrap}.StepsStep-Icon{margin-right:var(--space-2xs)}.StepsStep:after{background-color:var(--color-control-bg-ghost);border-radius:var(--control-radius);bottom:-2px;content:"";height:2px;position:absolute;transition:background-color .2s,opacity .2s;width:100%}.StepsStep:hover{color:var(--color-control-typo-ghost-hover)}.StepsStep:hover:after{background-color:var(--color-control-bg-ghost-hover)}.StepsStep:focus{outline:none}.StepsStep_size_m{font-size:var(--size-text-m)}.StepsStep_size_l{font-size:var(--size-text-l)}.StepsStep_active,.StepsStep_completed,.StepsStep_skipped{color:var(--color-control-typo-secondary)}.StepsStep_active:after,.StepsStep_completed:after,.StepsStep_skipped:after{background-color:var(--color-control-bg-border-secondary);opacity:.5}.StepsStep_active:hover,.StepsStep_completed:hover,.StepsStep_skipped:hover{color:var(--color-control-typo-secondary-hover)}.StepsStep_active:hover:after,.StepsStep_completed:hover:after,.StepsStep_skipped:hover:after{background-color:var(--color-control-bg-border-secondary-hover);opacity:.5}.StepsStep_active{font-weight:var(--font-weight-text-semibold)}.StepsStep_active:after{opacity:1}.StepsStep_active:hover:after{opacity:1}.StepsStep_disabled{color:var(--color-control-typo-disable);cursor:unset}.StepsStep_disabled:after{background-color:var(--color-control-bg-disable)}.StepsStep_disabled:hover{color:var(--color-control-typo-disable)}.StepsStep_disabled:hover:after{background-color:var(--color-control-bg-disable)}
@@ -1 +1 @@
1
- .Steps{align-items:center;display:inline-flex;max-width:100%;width:-webkit-max-content;width:-moz-max-content;width:max-content}.Steps-Item:not(:last-child){margin-right:var(--space-xs)}.Steps-List{-ms-overflow-style:none;display:flex;overflow-x:scroll;overflow-y:visible;padding-bottom:var(--space-2xs);scrollbar-width:none}.Steps-List::-webkit-scrollbar{display:none}.Steps-Button_side_left{margin-right:var(--space-xs)}.Steps-Button_side_right{margin-left:var(--space-xs)}
1
+ .Steps{align-items:center;display:inline-flex;max-width:100%;width:-moz-max-content;width:max-content}.Steps-Item:not(:last-child){margin-right:var(--space-xs)}.Steps-List{-ms-overflow-style:none;display:flex;overflow-x:scroll;overflow-y:visible;padding-bottom:var(--space-2xs);scrollbar-width:none}.Steps-List::-webkit-scrollbar{display:none}.Steps-Button_side_left{margin-right:var(--space-xs)}.Steps-Button_side_right{margin-left:var(--space-xs)}
@@ -1 +1 @@
1
- .StepsStep{align-items:center;background-color:transparent;border:none;color:var(--color-control-typo-ghost);cursor:pointer;display:inline-flex;flex:1;font-family:var(--font);line-height:var(--line-height-text-s);padding:var(--space-xs) 0;position:relative;text-align:left;transition:color .2s,font-weight .2s;white-space:nowrap}.StepsStep-Icon{margin-right:var(--space-2xs)}.StepsStep:after{background-color:var(--color-control-bg-ghost);border-radius:var(--control-radius);bottom:-2px;content:"";height:2px;position:absolute;transition:background-color .2s,opacity .2s;width:100%}.StepsStep:hover{color:var(--color-control-typo-ghost-hover)}.StepsStep:hover:after{background-color:var(--color-control-bg-ghost-hover)}.StepsStep:focus{outline:none}.StepsStep_size_m{font-size:var(--size-text-m)}.StepsStep_size_l{font-size:var(--size-text-l)}.StepsStep_active,.StepsStep_completed,.StepsStep_skipped{color:var(--color-control-typo-secondary)}.StepsStep_active:after,.StepsStep_completed:after,.StepsStep_skipped:after{background-color:var(--color-control-bg-border-secondary);opacity:.5}.StepsStep_active:hover,.StepsStep_completed:hover,.StepsStep_skipped:hover{color:var(--color-control-typo-secondary-hover)}.StepsStep_active:hover:after,.StepsStep_completed:hover:after,.StepsStep_skipped:hover:after{background-color:var(--color-control-bg-border-secondary-hover);opacity:.5}.StepsStep_active{font-weight:var(--font-weight-text-semibold)}.StepsStep_active:after,.StepsStep_active:hover:after{opacity:1}.StepsStep_disabled{color:var(--color-control-typo-disable);cursor:unset}.StepsStep_disabled:after{background-color:var(--color-control-bg-disable)}.StepsStep_disabled:hover{color:var(--color-control-typo-disable)}.StepsStep_disabled:hover:after{background-color:var(--color-control-bg-disable)}
1
+ .StepsStep{align-items:center;background-color:transparent;border:none;color:var(--color-control-typo-ghost);cursor:pointer;display:inline-flex;flex:1;font-family:var(--font);line-height:var(--line-height-text-s);padding:var(--space-xs) 0;position:relative;text-align:left;transition:color .2s,font-weight .2s;white-space:nowrap}.StepsStep-Icon{margin-right:var(--space-2xs)}.StepsStep:after{background-color:var(--color-control-bg-ghost);border-radius:var(--control-radius);bottom:-2px;content:"";height:2px;position:absolute;transition:background-color .2s,opacity .2s;width:100%}.StepsStep:hover{color:var(--color-control-typo-ghost-hover)}.StepsStep:hover:after{background-color:var(--color-control-bg-ghost-hover)}.StepsStep:focus{outline:none}.StepsStep_size_m{font-size:var(--size-text-m)}.StepsStep_size_l{font-size:var(--size-text-l)}.StepsStep_active,.StepsStep_completed,.StepsStep_skipped{color:var(--color-control-typo-secondary)}.StepsStep_active:after,.StepsStep_completed:after,.StepsStep_skipped:after{background-color:var(--color-control-bg-border-secondary);opacity:.5}.StepsStep_active:hover,.StepsStep_completed:hover,.StepsStep_skipped:hover{color:var(--color-control-typo-secondary-hover)}.StepsStep_active:hover:after,.StepsStep_completed:hover:after,.StepsStep_skipped:hover:after{background-color:var(--color-control-bg-border-secondary-hover);opacity:.5}.StepsStep_active{font-weight:var(--font-weight-text-semibold)}.StepsStep_active:after{opacity:1}.StepsStep_active:hover:after{opacity:1}.StepsStep_disabled{color:var(--color-control-typo-disable);cursor:unset}.StepsStep_disabled:after{background-color:var(--color-control-bg-disable)}.StepsStep_disabled:hover{color:var(--color-control-typo-disable)}.StepsStep_disabled:hover:after{background-color:var(--color-control-bg-disable)}
@@ -1 +1 @@
1
- .TableCell{--buttons-wrapper-size:0px;background-color:var(--color-bg-default);box-sizing:border-box;color:var(--color-typo-primary);grid-column-end:var(--table-cell-col-end);grid-column-start:var(--table-cell-col-start);grid-row-end:var(--row-span);z-index:var(--table-z)}.TableCell_withoutBorder{border:none}.TableCell_isHeader{border-bottom:1px solid var(--color-bg-border);font-size:var(--size-text-xs);font-weight:var(--font-weight-text-bold);letter-spacing:.05em;line-height:var(--line-height-text-s);position:relative;text-transform:uppercase}.TableCell:not(.TableCell_isHeader){font-size:var(--size-text-s);line-height:var(--line-height-text-s)}.TableCell_isResized{word-break:break-word}.TableCell_isClickable{cursor:pointer}.TableCell_isControl,.TableCell_isFilterable,.TableCell_isSortable{--buttons-wrapper-size:var(--space-xl)}.TableCell_isFilterable.TableCell_isControl,.TableCell_isSortable.TableCell_isControl,.TableCell_isSortable.TableCell_isFilterable{--buttons-wrapper-size:var(--space-4xl)}.TableCell_isSortable.TableCell_isFilterable.TableCell_isControl{--buttons-wrapper-size:var(--space-5xl)}.TableCell_stickyOnLeft,.TableCell_stickyOnTop{position:-webkit-sticky;position:sticky}.TableCell_stickyOnLeft.TableCell_isResizer,.TableCell_stickyOnTop.TableCell_isResizer{z-index:calc(var(--sticky-top-and-left-z) + 1)}.TableCell_stickyOnTop{top:0;z-index:var(--sticky-top-z)}.TableCell_stickyOnLeft{left:0;z-index:var(--sticky-left-z)}.TableCell_stickyOnLeft.TableCell_isHeader{z-index:var(--sticky-top-and-left-z)}.TableCell_isBorderTop{border-top:var(--table-border)}.TableCell_isBorderLeft{border-left:var(--table-border)}.TableCell-Wrapper{box-sizing:border-box;display:flex;height:100%;padding:var(--cell-padding-vertical) var(--cell-padding-horizontal);padding-right:calc(var(--cell-padding-horizontal) + var(--resizer-width) + var(--buttons-wrapper-size));position:relative}.TableCell-Wrapper_wrap_truncate{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.TableCell-Wrapper_wrap_break{max-width:100%;white-space:pre-wrap;word-break:break-word}.TableCell-Wrapper_withoutPadding{padding:0}.TableCell-Wrapper_verticalAlign_top{align-items:flex-start}.TableCell-Wrapper_verticalAlign_center{align-items:center}.TableCell-Wrapper_verticalAlign_bottom{align-items:flex-end}.TableCell-Wrapper_horizontalAlign_left{justify-content:flex-start}.TableCell-Wrapper_horizontalAlign_center{justify-content:center;text-align:center}.TableCell-Wrapper_horizontalAlign_right{justify-content:flex-end;text-align:right}.TableCell_stickyOnLeft .TableCell-Wrapper:after{background:linear-gradient(90deg,var(--shadow-color),transparent);bottom:0;content:"";opacity:0;pointer-events:none;position:absolute;right:0;top:0;transform:translateX(100%);transition:opacity var(--fast-transition);width:var(--space-s)}.TableCell_stickyOnLeft.TableCell_showVerticalShadow .TableCell-Wrapper:after{opacity:1}.TableCell_isHeader:hover .TableCell-Wrapper{background:var(--color-bg-stripe)}
1
+ .TableCell{--buttons-wrapper-size:0px;background-color:var(--color-bg-default);box-sizing:border-box;color:var(--color-typo-primary);grid-column-end:var(--table-cell-col-end);grid-column-start:var(--table-cell-col-start);grid-row-end:var(--row-span);z-index:var(--table-z)}.TableCell_withoutBorder{border:none}.TableCell_isHeader{border-bottom:1px solid var(--color-bg-border);font-size:var(--size-text-xs);font-weight:var(--font-weight-text-bold);letter-spacing:.05em;line-height:var(--line-height-text-s);position:relative;text-transform:uppercase}.TableCell:not(.TableCell_isHeader){font-size:var(--size-text-s);line-height:var(--line-height-text-s)}.TableCell_isResized{word-break:break-word}.TableCell_isClickable{cursor:pointer}.TableCell_isControl,.TableCell_isFilterable,.TableCell_isSortable{--buttons-wrapper-size:var(--space-xl)}.TableCell_isFilterable.TableCell_isControl,.TableCell_isSortable.TableCell_isControl,.TableCell_isSortable.TableCell_isFilterable{--buttons-wrapper-size:var(--space-4xl)}.TableCell_isSortable.TableCell_isFilterable.TableCell_isControl{--buttons-wrapper-size:var(--space-5xl)}.TableCell_stickyOnLeft,.TableCell_stickyOnTop{position:sticky}.TableCell_stickyOnLeft.TableCell_isResizer,.TableCell_stickyOnTop.TableCell_isResizer{z-index:calc(var(--sticky-top-and-left-z) + 1)}.TableCell_stickyOnTop{top:0;z-index:var(--sticky-top-z)}.TableCell_stickyOnLeft{left:0;z-index:var(--sticky-left-z)}.TableCell_stickyOnLeft.TableCell_isHeader{z-index:var(--sticky-top-and-left-z)}.TableCell_isBorderTop{border-top:var(--table-border)}.TableCell_isBorderLeft{border-left:var(--table-border)}.TableCell-Wrapper{box-sizing:border-box;display:flex;height:100%;padding:var(--cell-padding-vertical) var(--cell-padding-horizontal);padding-right:calc(var(--cell-padding-horizontal) + var(--resizer-width) + var(--buttons-wrapper-size));position:relative}.TableCell-Wrapper_wrap_truncate{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.TableCell-Wrapper_wrap_break{max-width:100%;white-space:pre-wrap;word-break:break-word}.TableCell-Wrapper_withoutPadding{padding:0}.TableCell-Wrapper_verticalAlign_top{align-items:flex-start}.TableCell-Wrapper_verticalAlign_center{align-items:center}.TableCell-Wrapper_verticalAlign_bottom{align-items:flex-end}.TableCell-Wrapper_horizontalAlign_left{justify-content:flex-start}.TableCell-Wrapper_horizontalAlign_center{justify-content:center;text-align:center}.TableCell-Wrapper_horizontalAlign_right{justify-content:flex-end;text-align:right}.TableCell_stickyOnLeft .TableCell-Wrapper:after{background:linear-gradient(90deg,var(--shadow-color),transparent);bottom:0;content:"";opacity:0;pointer-events:none;position:absolute;right:0;top:0;transform:translateX(100%);transition:opacity var(--fast-transition);width:var(--space-s)}.TableCell_stickyOnLeft.TableCell_showVerticalShadow .TableCell-Wrapper:after{opacity:1}.TableCell_isHeader:hover .TableCell-Wrapper{background:var(--color-bg-stripe)}
@@ -1,2 +1,2 @@
1
- import"./TableFilterContainer.css";import React from"react";import{cn}from"../../../utils/bem";import{Button}from"../../Button/Button";import{Text}from"../../Text/Text";var cnTableFilterContainer=cn("TableFilterContainer");export var TableFilterContainer=function(a){var b=a.onConfirm,c=a.title,d=a.confirmButtonLabel,e=void 0===d?"\u041F\u0440\u0438\u043C\u0435\u043D\u0438\u0442\u044C":d,f=a.cancelButtonLabel,g=void 0===f?"\u041E\u0442\u043C\u0435\u043D\u0430":f,h=a.onCancel,i=a.children,j=a.className;return React.createElement("div",{className:cnTableFilterContainer(null,[j])},c&&React.createElement(Text,{view:"primary",size:"m",className:cnTableFilterContainer("Title"),lineHeight:"l"},c),i,React.createElement("div",{className:cnTableFilterContainer("Buttons")},React.createElement(Button,{label:g,size:"s",view:"ghost",onClick:h}),React.createElement(Button,{label:e,size:"s",view:"primary",onClick:b})))};
1
+ import"./TableFilterContainer.css";import React from"react";import{cn}from"../../../utils/bem";import{Button}from"../../Button/Button";import{Text}from"../../Text/Text";var cnTableFilterContainer=cn("TableFilterContainer");export var TableFilterContainer=function(a){var b=a.onConfirm,c=a.title,d=a.confirmButtonLabel,e=void 0===d?"\u041F\u0440\u0438\u043C\u0435\u043D\u0438\u0442\u044C":d,f=a.cancelButtonLabel,g=void 0===f?"\u041E\u0442\u043C\u0435\u043D\u0430":f,h=a.onCancel,i=a.children,j=a.className;return React.createElement("div",{className:cnTableFilterContainer(null,[j])},c&&React.createElement(Text,{view:"primary",size:"m",className:cnTableFilterContainer("Title"),lineHeight:"l"},c),i,React.createElement("div",{className:cnTableFilterContainer("Buttons")},React.createElement(Button,{type:"button",label:g,size:"s",view:"ghost",onClick:h}),React.createElement(Button,{type:"button",label:e,size:"s",view:"primary",onClick:b})))};
2
2
  //# sourceMappingURL=TableFilterContainer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TableFilterContainer.js","names":["React","cn","Button","Text","cnTableFilterContainer","TableFilterContainer","onConfirm","title","confirmButtonLabel","cancelButtonLabel","onCancel","children","className"],"sources":["../../../../../../src/components/Table/FilterContainer/TableFilterContainer.tsx"],"sourcesContent":["import './TableFilterContainer.css';\n\nimport React from 'react';\n\nimport { cn } from '../../../utils/bem';\nimport { Button } from '../../Button/Button';\nimport { Text } from '../../Text/Text';\n\nconst cnTableFilterContainer = cn('TableFilterContainer');\n\nexport type TableFilterContainerProps = {\n onCancel: () => void;\n onConfirm: () => void;\n title?: string;\n confirmButtonLabel?: string;\n cancelButtonLabel?: string;\n className?: string;\n children?: React.ReactNode;\n};\n\nexport const TableFilterContainer: React.FC<TableFilterContainerProps> = ({\n onConfirm,\n title,\n confirmButtonLabel = 'Применить',\n cancelButtonLabel = 'Отмена',\n onCancel,\n children,\n className,\n}) => {\n return (\n <div className={cnTableFilterContainer(null, [className])}>\n {title && (\n <Text\n view=\"primary\"\n size=\"m\"\n className={cnTableFilterContainer('Title')}\n lineHeight=\"l\"\n >\n {title}\n </Text>\n )}\n {children}\n <div className={cnTableFilterContainer('Buttons')}>\n <Button\n label={cancelButtonLabel}\n size=\"s\"\n view=\"ghost\"\n onClick={onCancel}\n />\n <Button\n label={confirmButtonLabel}\n size=\"s\"\n view=\"primary\"\n onClick={onConfirm}\n />\n </div>\n </div>\n );\n};\n"],"mappings":"AAAA,mCAEA,MAAOA,MAAP,KAAkB,OAAlB,CAEA,OAASC,EAAT,0BACA,OAASC,MAAT,2BACA,OAASC,IAAT,uBAEA,GAAMC,uBAAsB,CAAGH,EAAE,CAAC,sBAAD,CAAjC,CAYA,MAAO,IAAMI,qBAAyD,CAAG,WAQnE,IAPJC,EAOI,GAPJA,SAOI,CANJC,CAMI,GANJA,KAMI,KALJC,kBAKI,CALJA,CAKI,YALiB,wDAKjB,OAJJC,iBAII,CAJJA,CAII,YAJgB,sCAIhB,GAHJC,CAGI,GAHJA,QAGI,CAFJC,CAEI,GAFJA,QAEI,CADJC,CACI,GADJA,SACI,CACJ,MACE,4BAAK,SAAS,CAAER,sBAAsB,CAAC,IAAD,CAAO,CAACQ,CAAD,CAAP,CAAtC,EACGL,CAAK,EACJ,oBAAC,IAAD,EACE,IAAI,CAAC,SADP,CAEE,IAAI,CAAC,GAFP,CAGE,SAAS,CAAEH,sBAAsB,CAAC,OAAD,CAHnC,CAIE,UAAU,CAAC,GAJb,EAMGG,CANH,CAFJ,CAWGI,CAXH,CAYE,2BAAK,SAAS,CAAEP,sBAAsB,CAAC,SAAD,CAAtC,EACE,oBAAC,MAAD,EACE,KAAK,CAAEK,CADT,CAEE,IAAI,CAAC,GAFP,CAGE,IAAI,CAAC,OAHP,CAIE,OAAO,CAAEC,CAJX,EADF,CAOE,oBAAC,MAAD,EACE,KAAK,CAAEF,CADT,CAEE,IAAI,CAAC,GAFP,CAGE,IAAI,CAAC,SAHP,CAIE,OAAO,CAAEF,CAJX,EAPF,CAZF,CA4BH,CAtCM"}
1
+ {"version":3,"file":"TableFilterContainer.js","names":["React","cn","Button","Text","cnTableFilterContainer","TableFilterContainer","onConfirm","title","confirmButtonLabel","cancelButtonLabel","onCancel","children","className"],"sources":["../../../../../../src/components/Table/FilterContainer/TableFilterContainer.tsx"],"sourcesContent":["import './TableFilterContainer.css';\n\nimport React from 'react';\n\nimport { cn } from '../../../utils/bem';\nimport { Button } from '../../Button/Button';\nimport { Text } from '../../Text/Text';\n\nconst cnTableFilterContainer = cn('TableFilterContainer');\n\nexport type TableFilterContainerProps = {\n onCancel: () => void;\n onConfirm: () => void;\n title?: string;\n confirmButtonLabel?: string;\n cancelButtonLabel?: string;\n className?: string;\n children?: React.ReactNode;\n};\n\nexport const TableFilterContainer: React.FC<TableFilterContainerProps> = ({\n onConfirm,\n title,\n confirmButtonLabel = 'Применить',\n cancelButtonLabel = 'Отмена',\n onCancel,\n children,\n className,\n}) => {\n return (\n <div className={cnTableFilterContainer(null, [className])}>\n {title && (\n <Text\n view=\"primary\"\n size=\"m\"\n className={cnTableFilterContainer('Title')}\n lineHeight=\"l\"\n >\n {title}\n </Text>\n )}\n {children}\n <div className={cnTableFilterContainer('Buttons')}>\n <Button\n type=\"button\"\n label={cancelButtonLabel}\n size=\"s\"\n view=\"ghost\"\n onClick={onCancel}\n />\n <Button\n type=\"button\"\n label={confirmButtonLabel}\n size=\"s\"\n view=\"primary\"\n onClick={onConfirm}\n />\n </div>\n </div>\n );\n};\n"],"mappings":"AAAA,mCAEA,MAAOA,MAAP,KAAkB,OAAlB,CAEA,OAASC,EAAT,0BACA,OAASC,MAAT,2BACA,OAASC,IAAT,uBAEA,GAAMC,uBAAsB,CAAGH,EAAE,CAAC,sBAAD,CAAjC,CAYA,MAAO,IAAMI,qBAAyD,CAAG,WAQnE,IAPJC,EAOI,GAPJA,SAOI,CANJC,CAMI,GANJA,KAMI,KALJC,kBAKI,CALJA,CAKI,YALiB,wDAKjB,OAJJC,iBAII,CAJJA,CAII,YAJgB,sCAIhB,GAHJC,CAGI,GAHJA,QAGI,CAFJC,CAEI,GAFJA,QAEI,CADJC,CACI,GADJA,SACI,CACJ,MACE,4BAAK,SAAS,CAAER,sBAAsB,CAAC,IAAD,CAAO,CAACQ,CAAD,CAAP,CAAtC,EACGL,CAAK,EACJ,oBAAC,IAAD,EACE,IAAI,CAAC,SADP,CAEE,IAAI,CAAC,GAFP,CAGE,SAAS,CAAEH,sBAAsB,CAAC,OAAD,CAHnC,CAIE,UAAU,CAAC,GAJb,EAMGG,CANH,CAFJ,CAWGI,CAXH,CAYE,2BAAK,SAAS,CAAEP,sBAAsB,CAAC,SAAD,CAAtC,EACE,oBAAC,MAAD,EACE,IAAI,CAAC,QADP,CAEE,KAAK,CAAEK,CAFT,CAGE,IAAI,CAAC,GAHP,CAIE,IAAI,CAAC,OAJP,CAKE,OAAO,CAAEC,CALX,EADF,CAQE,oBAAC,MAAD,EACE,IAAI,CAAC,QADP,CAEE,KAAK,CAAEF,CAFT,CAGE,IAAI,CAAC,GAHP,CAIE,IAAI,CAAC,SAJP,CAKE,OAAO,CAAEF,CALX,EARF,CAZF,CA8BH,CAxCM"}
@@ -1 +1 @@
1
- .TableFilterTooltip-Button{opacity:0;transition:opacity var(--show-transition);z-index:1}.TableFilterTooltip-Button:hover,.TableFilterTooltip-Button_isOpened{opacity:1}.TableFilterTooltip-Title{margin-bottom:var(--space-xs);margin-top:var(--space-2xs)}.TableFilterTooltip-Content{background-color:var(--color-bg-default);border:var(--control-border-width) solid var(--color-bg-border);border-radius:var(--control-radius);box-shadow:var(--shadow-layer);padding:var(--space-s);width:312px}.TableFilterTooltip-Select{background:var(--color-control-bg-default);border-color:var(--color-bg-border);border-radius:var(--control-radius);color:var(--color-typo-primary);height:100px;width:100%}.TableFilterTooltip-Option{font-size:var(--size-text-s);padding:var(--space-xs)}
1
+ .TableFilterTooltip-Button{opacity:0;transition:opacity var(--show-transition);z-index:1}.TableFilterTooltip-Button:hover{opacity:1}.TableFilterTooltip-Button_isOpened{opacity:1}.TableFilterTooltip-Title{margin-bottom:var(--space-xs);margin-top:var(--space-2xs)}.TableFilterTooltip-Content{background-color:var(--color-bg-default);border:var(--control-border-width) solid var(--color-bg-border);border-radius:var(--control-radius);box-shadow:var(--shadow-layer);padding:var(--space-s);width:312px}.TableFilterTooltip-Select{background:var(--color-control-bg-default);border-color:var(--color-bg-border);border-radius:var(--control-radius);color:var(--color-typo-primary);height:100px;width:100%}.TableFilterTooltip-Option{font-size:var(--size-text-s);padding:var(--space-xs)}
@@ -1,2 +1,2 @@
1
- import _toConsumableArray from"@babel/runtime/helpers/toConsumableArray";import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import"./TableFilterTooltip.css";import{IconFunnel}from"@consta/icons/IconFunnel";import React,{useRef,useState}from"react";import{Transition}from"react-transition-group";import{animateTimeout,cnMixPopoverAnimate}from"../../../mixs/MixPopoverAnimate/MixPopoverAnimate";import{cn}from"../../../utils/bem";import{Button}from"../../Button/Button";import{Popover}from"../../Popover/Popover";import{Text}from"../../Text/Text";var cnTableFilterTooltip=cn("TableFilterTooltip");export var TableFilterTooltip=function(a){var b=a.field,c=a.isOpened,d=a.options,e=a.values,f=a.className,g=a.children,h=a.onChange,i=a.onToggle,j=useState("downRight"),k=_slicedToArray(j,2),l=k[0],m=k[1],n=useRef(null),o=useRef(null);return React.createElement(React.Fragment,null,React.createElement(Button,{ref:n,size:"xs",iconSize:"s",view:"clear",onlyIcon:!0,onClick:i,className:cnTableFilterTooltip("Button",{isOpened:c},[f]),iconLeft:IconFunnel}),React.createElement(Transition,{in:c,unmountOnExit:!0,nodeRef:o,timeout:animateTimeout},function(a){return React.createElement(Popover,{anchorRef:n,possibleDirections:["downRight","downLeft"],direction:"downRight",offset:4,arrowOffset:12,ref:o,onSetDirection:m,onClickOutside:i,className:cnTableFilterTooltip("Popover",[cnMixPopoverAnimate({animate:a,direction:l})])},g||React.createElement("div",{className:cnTableFilterTooltip("Content")},React.createElement(Text,{as:"div",size:"xs",view:"primary",className:cnTableFilterTooltip("Title")},"\u0424\u0438\u043B\u044C\u0442\u0440\u043E\u0432\u0430\u0442\u044C \u043F\u043E \u0443\u0441\u043B\u043E\u0432\u0438\u044E"),React.createElement("select",{className:cnTableFilterTooltip("Select"),value:_toConsumableArray(e),multiple:!0,onChange:function onChange(a){h(b,Array.from(a.target.selectedOptions).map(function(a){return a.value}))}},d.map(function(a){return React.createElement("option",{key:a.value,className:cnTableFilterTooltip("Option"),value:a.value,title:a.label},a.label)}))))}))};
1
+ import _toConsumableArray from"@babel/runtime/helpers/toConsumableArray";import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import"./TableFilterTooltip.css";import{IconFunnel}from"@consta/icons/IconFunnel";import React,{useRef,useState}from"react";import{Transition}from"react-transition-group";import{animateTimeout,cnMixPopoverAnimate}from"../../../mixs/MixPopoverAnimate/MixPopoverAnimate";import{cn}from"../../../utils/bem";import{Button}from"../../Button/Button";import{Popover}from"../../Popover/Popover";import{Text}from"../../Text/Text";var cnTableFilterTooltip=cn("TableFilterTooltip");export var TableFilterTooltip=function(a){var b=a.field,c=a.isOpened,d=a.options,e=a.values,f=a.className,g=a.children,h=a.onChange,i=a.onToggle,j=useState("downRight"),k=_slicedToArray(j,2),l=k[0],m=k[1],n=useRef(null),o=useRef(null);return React.createElement(React.Fragment,null,React.createElement(Button,{type:"button",ref:n,size:"xs",iconSize:"s",view:"clear",onlyIcon:!0,onClick:i,className:cnTableFilterTooltip("Button",{isOpened:c},[f]),iconLeft:IconFunnel}),React.createElement(Transition,{in:c,unmountOnExit:!0,nodeRef:o,timeout:animateTimeout},function(a){return React.createElement(Popover,{anchorRef:n,possibleDirections:["downRight","downLeft"],direction:"downRight",offset:4,arrowOffset:12,ref:o,onSetDirection:m,onClickOutside:i,className:cnTableFilterTooltip("Popover",[cnMixPopoverAnimate({animate:a,direction:l})])},g||React.createElement("div",{className:cnTableFilterTooltip("Content")},React.createElement(Text,{as:"div",size:"xs",view:"primary",className:cnTableFilterTooltip("Title")},"\u0424\u0438\u043B\u044C\u0442\u0440\u043E\u0432\u0430\u0442\u044C \u043F\u043E \u0443\u0441\u043B\u043E\u0432\u0438\u044E"),React.createElement("select",{className:cnTableFilterTooltip("Select"),value:_toConsumableArray(e),multiple:!0,onChange:function onChange(a){h(b,Array.from(a.target.selectedOptions).map(function(a){return a.value}))}},d.map(function(a){return React.createElement("option",{key:a.value,className:cnTableFilterTooltip("Option"),value:a.value,title:a.label},a.label)}))))}))};
2
2
  //# sourceMappingURL=TableFilterTooltip.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TableFilterTooltip.js","names":["IconFunnel","React","useRef","useState","Transition","animateTimeout","cnMixPopoverAnimate","cn","Button","Popover","Text","cnTableFilterTooltip","TableFilterTooltip","field","isOpened","options","values","className","children","onChange","onToggle","direction","setDirection","buttonRef","popoverRef","animate","e","Array","from","target","selectedOptions","map","option","value","label"],"sources":["../../../../../../src/components/Table/FilterTooltip/TableFilterTooltip.tsx"],"sourcesContent":["import './TableFilterTooltip.css';\n\nimport { IconFunnel } from '@consta/icons/IconFunnel';\nimport React, { useRef, useState } from 'react';\nimport { Transition } from 'react-transition-group';\n\nimport {\n animateTimeout,\n cnMixPopoverAnimate,\n} from '../../../mixs/MixPopoverAnimate/MixPopoverAnimate';\nimport { cn } from '../../../utils/bem';\nimport { Button } from '../../Button/Button';\nimport { Direction, Popover } from '../../Popover/Popover';\nimport { Text } from '../../Text/Text';\n\nconst cnTableFilterTooltip = cn('TableFilterTooltip');\n\ntype Values = string[];\n\ntype Props = {\n options: Array<{\n value: Values[number];\n label: string;\n }>;\n values: Values;\n field: string;\n isOpened: boolean;\n onChange: (field: string, values: Values) => void;\n onToggle: () => void;\n className?: string;\n children?: React.ReactNode;\n};\n\nexport const TableFilterTooltip: React.FC<Props> = ({\n field,\n isOpened,\n options,\n values,\n className,\n children,\n onChange,\n onToggle,\n}) => {\n const [direction, setDirection] = useState<Direction>('downRight');\n\n const buttonRef = useRef<HTMLButtonElement>(null);\n const popoverRef = useRef<HTMLDivElement>(null);\n\n return (\n <>\n <Button\n ref={buttonRef}\n size=\"xs\"\n iconSize=\"s\"\n view=\"clear\"\n onlyIcon\n onClick={onToggle}\n className={cnTableFilterTooltip('Button', { isOpened }, [className])}\n iconLeft={IconFunnel}\n />\n <Transition\n in={isOpened}\n unmountOnExit\n nodeRef={popoverRef}\n timeout={animateTimeout}\n >\n {(animate) => (\n <Popover\n anchorRef={buttonRef}\n possibleDirections={['downRight', 'downLeft']}\n direction=\"downRight\"\n offset={4}\n arrowOffset={12}\n ref={popoverRef}\n onSetDirection={setDirection}\n onClickOutside={onToggle}\n className={cnTableFilterTooltip('Popover', [\n cnMixPopoverAnimate({ animate, direction }),\n ])}\n >\n {children || (\n <div className={cnTableFilterTooltip('Content')}>\n <Text\n as=\"div\"\n size=\"xs\"\n view=\"primary\"\n className={cnTableFilterTooltip('Title')}\n >\n Фильтровать по условию\n </Text>\n <select\n className={cnTableFilterTooltip('Select')}\n value={[...values]}\n multiple\n onChange={(e): void => {\n onChange(\n field,\n Array.from(e.target.selectedOptions).map(\n (option) => option.value,\n ),\n );\n }}\n >\n {options.map((option) => (\n <option\n key={option.value}\n className={cnTableFilterTooltip('Option')}\n value={option.value}\n title={option.label}\n >\n {option.label}\n </option>\n ))}\n </select>\n </div>\n )}\n </Popover>\n )}\n </Transition>\n </>\n );\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"TableFilterTooltip.js","names":["IconFunnel","React","useRef","useState","Transition","animateTimeout","cnMixPopoverAnimate","cn","Button","Popover","Text","cnTableFilterTooltip","TableFilterTooltip","field","isOpened","options","values","className","children","onChange","onToggle","direction","setDirection","buttonRef","popoverRef","animate","e","Array","from","target","selectedOptions","map","option","value","label"],"sources":["../../../../../../src/components/Table/FilterTooltip/TableFilterTooltip.tsx"],"sourcesContent":["import './TableFilterTooltip.css';\n\nimport { IconFunnel } from '@consta/icons/IconFunnel';\nimport React, { useRef, useState } from 'react';\nimport { Transition } from 'react-transition-group';\n\nimport {\n animateTimeout,\n cnMixPopoverAnimate,\n} from '../../../mixs/MixPopoverAnimate/MixPopoverAnimate';\nimport { cn } from '../../../utils/bem';\nimport { Button } from '../../Button/Button';\nimport { Direction, Popover } from '../../Popover/Popover';\nimport { Text } from '../../Text/Text';\n\nconst cnTableFilterTooltip = cn('TableFilterTooltip');\n\ntype Values = string[];\n\ntype Props = {\n options: Array<{\n value: Values[number];\n label: string;\n }>;\n values: Values;\n field: string;\n isOpened: boolean;\n onChange: (field: string, values: Values) => void;\n onToggle: () => void;\n className?: string;\n children?: React.ReactNode;\n};\n\nexport const TableFilterTooltip: React.FC<Props> = ({\n field,\n isOpened,\n options,\n values,\n className,\n children,\n onChange,\n onToggle,\n}) => {\n const [direction, setDirection] = useState<Direction>('downRight');\n\n const buttonRef = useRef<HTMLButtonElement>(null);\n const popoverRef = useRef<HTMLDivElement>(null);\n\n return (\n <>\n <Button\n type=\"button\"\n ref={buttonRef}\n size=\"xs\"\n iconSize=\"s\"\n view=\"clear\"\n onlyIcon\n onClick={onToggle}\n className={cnTableFilterTooltip('Button', { isOpened }, [className])}\n iconLeft={IconFunnel}\n />\n <Transition\n in={isOpened}\n unmountOnExit\n nodeRef={popoverRef}\n timeout={animateTimeout}\n >\n {(animate) => (\n <Popover\n anchorRef={buttonRef}\n possibleDirections={['downRight', 'downLeft']}\n direction=\"downRight\"\n offset={4}\n arrowOffset={12}\n ref={popoverRef}\n onSetDirection={setDirection}\n onClickOutside={onToggle}\n className={cnTableFilterTooltip('Popover', [\n cnMixPopoverAnimate({ animate, direction }),\n ])}\n >\n {children || (\n <div className={cnTableFilterTooltip('Content')}>\n <Text\n as=\"div\"\n size=\"xs\"\n view=\"primary\"\n className={cnTableFilterTooltip('Title')}\n >\n Фильтровать по условию\n </Text>\n <select\n className={cnTableFilterTooltip('Select')}\n value={[...values]}\n multiple\n onChange={(e): void => {\n onChange(\n field,\n Array.from(e.target.selectedOptions).map(\n (option) => option.value,\n ),\n );\n }}\n >\n {options.map((option) => (\n <option\n key={option.value}\n className={cnTableFilterTooltip('Option')}\n value={option.value}\n title={option.label}\n >\n {option.label}\n </option>\n ))}\n </select>\n </div>\n )}\n </Popover>\n )}\n </Transition>\n </>\n );\n};\n"],"mappings":"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"}
@@ -1 +1 @@
1
- .TableHeader-Row{display:contents}.TableHeader-RemoveCell{height:0;position:relative;width:0}.TableHeader-Cell_level_high .TableCell-Wrapper{display:flex;justify-content:center}.TableHeader-Cell_level_high.TableCell_isHeader{border-bottom:none}.TableHeader-Cell_level_high:hover .TableCell-Wrapper{background:unset}.TableHeader-Cell_level_low{font-size:var(--size-text-2xs)}.TableHeader-Cell:not(.TableHeader-Cell_isFirstColumn):after{background:var(--color-bg-border);bottom:0;content:"";left:0;opacity:0;position:absolute;top:0;transition:opacity var(--fast-transition);width:1px}.TableHeader-Row:hover .TableHeader-Cell:not(.TableHeader-Cell_isFirstColumn):after,.TableHeader-Row_withVerticalBorder .TableHeader-Cell:not(.TableHeader-Cell_isFirstColumn):after{opacity:1}.TableHeader-Buttons{--half-cell-padding-horizontal:calc(var(--cell-padding-horizontal)*0.5);display:flex;position:absolute;right:calc(var(--half-cell-padding-horizontal) + var(--resizer-width))}.TableHeader-Buttons_verticalAlign_bottom{bottom:var(--cell-padding-vertical);transform:translateY(calc((var(--control-height-xs) - var(--graphics-size-s))/2))}.TableHeader-Buttons_verticalAlign_center{top:50%;transform:translateY(-50%)}.TableHeader-Icon{opacity:0;transition:opacity var(--fast-transition)}.TableHeader-Row:hover .TableHeader-Icon{opacity:.4}.TableHeader-Cell:hover .TableHeader-Icon{opacity:1}.TableHeader-Buttons_isSortingActive .TableHeader-Icon_type_sort{color:var(--color-control-typo-secondary);opacity:1}.TableHeader-Buttons:hover:not(.TableHeader-Buttons_isFilterOpened) .TableHeader-Icon_type_filter,.TableHeader-Buttons_isFilterActive .TableHeader-Icon_type_filter{opacity:1}.TableHeader-Buttons_isFilterActive .TableHeader-Icon_type_filter{color:var(--color-control-typo-secondary)}.TableHeader-ShadowWrapper{grid-column:1/-1;left:0;position:-webkit-sticky;position:sticky;top:var(--table-header-height);z-index:var(--sticky-top-and-left-z)}.TableHeader-Shadow{position:relative}.TableHeader-Shadow:before{background:linear-gradient(180deg,var(--shadow-color),transparent);bottom:0;content:"";height:var(--space-s);left:0;opacity:0;pointer-events:none;position:absolute;right:0;transform:translateY(100%);transition:opacity var(--fast-transition)}.TableHeader-Shadow_show:before{opacity:1}
1
+ .TableHeader-Row{display:contents}.TableHeader-RemoveCell{height:0;position:relative;width:0}.TableHeader-Cell_level_high .TableCell-Wrapper{display:flex;justify-content:center}.TableHeader-Cell_level_high.TableCell_isHeader{border-bottom:none}.TableHeader-Cell_level_high:hover .TableCell-Wrapper{background:unset}.TableHeader-Cell_level_low{font-size:var(--size-text-2xs)}.TableHeader-Cell:not(.TableHeader-Cell_isFirstColumn):after{background:var(--color-bg-border);bottom:0;content:"";left:0;opacity:0;position:absolute;top:0;transition:opacity var(--fast-transition);width:1px}.TableHeader-Row:hover .TableHeader-Cell:not(.TableHeader-Cell_isFirstColumn):after,.TableHeader-Row_withVerticalBorder .TableHeader-Cell:not(.TableHeader-Cell_isFirstColumn):after{opacity:1}.TableHeader-Buttons{--half-cell-padding-horizontal:calc(var(--cell-padding-horizontal)*0.5);display:flex;position:absolute;right:calc(var(--half-cell-padding-horizontal) + var(--resizer-width))}.TableHeader-Buttons_verticalAlign_bottom{bottom:var(--cell-padding-vertical);transform:translateY(calc((var(--control-height-xs) - var(--graphics-size-s))/2))}.TableHeader-Buttons_verticalAlign_center{top:50%;transform:translateY(-50%)}.TableHeader-Icon{opacity:0;transition:opacity var(--fast-transition)}.TableHeader-Row:hover .TableHeader-Icon{opacity:.4}.TableHeader-Cell:hover .TableHeader-Icon{opacity:1}.TableHeader-Buttons_isSortingActive .TableHeader-Icon_type_sort{color:var(--color-control-typo-secondary);opacity:1}.TableHeader-Buttons:hover:not(.TableHeader-Buttons_isFilterOpened) .TableHeader-Icon_type_filter,.TableHeader-Buttons_isFilterActive .TableHeader-Icon_type_filter{opacity:1}.TableHeader-Buttons_isFilterActive .TableHeader-Icon_type_filter{color:var(--color-control-typo-secondary)}.TableHeader-ShadowWrapper{grid-column:1/-1;left:0;position:sticky;top:var(--table-header-height);z-index:var(--sticky-top-and-left-z)}.TableHeader-Shadow{position:relative}.TableHeader-Shadow:before{background:linear-gradient(180deg,var(--shadow-color),transparent);bottom:0;content:"";height:var(--space-s);left:0;opacity:0;pointer-events:none;position:absolute;right:0;transform:translateY(100%);transition:opacity var(--fast-transition)}.TableHeader-Shadow_show:before{opacity:1}
@@ -1,2 +1,2 @@
1
- import _defineProperty from"@babel/runtime/helpers/defineProperty";function ownKeys(a,b){var c=Object.keys(a);if(Object.getOwnPropertySymbols){var d=Object.getOwnPropertySymbols(a);b&&(d=d.filter(function(b){return Object.getOwnPropertyDescriptor(a,b).enumerable})),c.push.apply(c,d)}return c}function _objectSpread(a){for(var b,c=1;c<arguments.length;c++)b=null==arguments[c]?{}:arguments[c],c%2?ownKeys(Object(b),!0).forEach(function(c){_defineProperty(a,c,b[c])}):Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(b)):ownKeys(Object(b)).forEach(function(c){Object.defineProperty(a,c,Object.getOwnPropertyDescriptor(b,c))});return a}import"./TableHeader.css";import React from"react";import{cn}from"../../../utils/bem";import{Button}from"../../Button/Button";import{TableCell}from"../Cell/TableCell";import{getOptionsForFilters}from"../filtering";import{TableFilterTooltip}from"../FilterTooltip/TableFilterTooltip";var cnTableHeader=cn("TableHeader");export var levelTypes=["high","low","default"];export var TableHeader=function(a){var b=a.isStickyHeader,c=a.headersWithMetaData,d=a.headerRowsHeights,f=a.headerRowsRefs,g=a.getStickyLeftOffset,h=a.stickyColumnsGrid,i=a.showVerticalCellShadow,j=a.headerVerticalAlign,k=a.getSortIcon,l=a.handleSortClick,m=a.handleFilterTogglerClick,n=a.handleCellClick,o=a.handleTooltipSave,p=a.filters,q=a.visibleFilter,r=a.selectedFilters,s=a.showHorizontalCellShadow,t=a.borderBetweenColumns,u=d.reduce(function(c,a){return c+a},0),v={"--table-header-height":"".concat(u,"px")},w=function(a){var b;return 1<=+a.position.colSpan?"high":null!==(b=a.position)&&void 0!==b&&b.smallTextSize?"low":"default"},x=function(a){var b=[],d=function(a){a.columns?a.columns.forEach(function(a){return d(c.find(function(b){return b.title===a.title}))}):b.push(a)};return d(a),b.some(function(a){return a.isResized})},y=function(a){var b,c,d,e;if(!p||!a.accessor)return null;var f=p.find(function(b){var c=b.field;return c===a.accessor}),g=null===f||void 0===f||null===(b=f.component)||void 0===b?void 0:b.name,h=null!==(c=null===f||void 0===f||null===(d=f.component)||void 0===d?void 0:d.props)&&void 0!==c?c:{},i=m(a.accessor),j=null===f||void 0===f?void 0:f.id;return a.filterable?React.createElement(TableFilterTooltip,{field:a.accessor,isOpened:q===a.accessor,options:getOptionsForFilters(p,a.accessor),values:r[a.accessor].selected||[],onChange:o,onToggle:m(a.accessor),className:cnTableHeader("Icon",{type:"filter"})},g&&React.createElement(g,Object.assign({},h,{onConfirm:function handleFilterSave(b){j&&o(a.accessor,[j],b),i()},filterValue:null===(e=r[a.accessor])||void 0===e?void 0:e.value,onCancel:m(a.accessor)}))):null},z=function(a){return a.control?React.createElement("div",{className:cnTableHeader("\u0421ontrol")},a.control({column:a})):null};return React.createElement(React.Fragment,null,React.createElement("div",{className:cnTableHeader("Row",{withVerticalBorder:t})},c.map(function(a,m){var o,p,q,r,s={};return a.position.colSpan&&(s.gridColumnEnd="span ".concat(a.position.colSpan)),a.position.rowSpan&&(s.gridRowEnd="span ".concat(a.position.rowSpan)),b&&(s.top=d.slice(0,a.position.level).reduce(function(c,a){return c+a},0)),React.createElement(TableCell,{type:"header",key:m,ref:function ref(a){f.current[m]=a},style:_objectSpread(_objectSpread({},s),{},{left:g(a.position.gridIndex,a.position.topHeaderGridIndex)}),isSticky:b,isResized:x(a),column:a,verticalAlign:j,onContextMenu:function onContextMenu(a){return n({e:a,type:"contextMenu",columnIdx:m,ref:{current:f.current[m]}})},onClick:function onClick(a){return n({e:a,type:"click",columnIdx:m,ref:{current:f.current[m]}})},className:cnTableHeader("Cell",{isFirstColumn:null===(o=a.position)||void 0===o?void 0:o.isFirst,isFirstRow:0===a.position.level,isLastInColumn:(null===(p=a.position)||void 0===p?void 0:p.topHeaderGridIndex)!==(null===(q=c[m+1])||void 0===q||null===(r=q.position)||void 0===r?void 0:r.topHeaderGridIndex),level:w(a)}),showVerticalShadow:i&&a.position.gridIndex+((null===a||void 0===a?void 0:a.position.colSpan)||1)===h},a.title,React.createElement("div",{className:cnTableHeader("Buttons",{isSortingActive:a.isSortingActive,isFilterActive:a.isFilterActive,verticalAlign:j})},a.sortable&&React.createElement(Button,{size:"xs",iconSize:"s",view:"clear",onlyIcon:!0,onClick:function onClick(){return l(a)},iconLeft:k(a),className:cnTableHeader("Icon",{type:"sort"})}),y(a),z(a)))})),React.createElement("div",{className:cnTableHeader("ShadowWrapper"),style:v},React.createElement("div",{className:cnTableHeader("Shadow",{show:s&&b})})))};
1
+ import _defineProperty from"@babel/runtime/helpers/defineProperty";function ownKeys(a,b){var c=Object.keys(a);if(Object.getOwnPropertySymbols){var d=Object.getOwnPropertySymbols(a);b&&(d=d.filter(function(b){return Object.getOwnPropertyDescriptor(a,b).enumerable})),c.push.apply(c,d)}return c}function _objectSpread(a){for(var b,c=1;c<arguments.length;c++)b=null==arguments[c]?{}:arguments[c],c%2?ownKeys(Object(b),!0).forEach(function(c){_defineProperty(a,c,b[c])}):Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(b)):ownKeys(Object(b)).forEach(function(c){Object.defineProperty(a,c,Object.getOwnPropertyDescriptor(b,c))});return a}import"./TableHeader.css";import React from"react";import{cn}from"../../../utils/bem";import{Button}from"../../Button/Button";import{TableCell}from"../Cell/TableCell";import{getOptionsForFilters}from"../filtering";import{TableFilterTooltip}from"../FilterTooltip/TableFilterTooltip";var cnTableHeader=cn("TableHeader");export var levelTypes=["high","low","default"];export var TableHeader=function(a){var b=a.isStickyHeader,c=a.headersWithMetaData,d=a.headerRowsHeights,f=a.headerRowsRefs,g=a.getStickyLeftOffset,h=a.stickyColumnsGrid,i=a.showVerticalCellShadow,j=a.headerVerticalAlign,k=a.getSortIcon,l=a.handleSortClick,m=a.handleFilterTogglerClick,n=a.handleCellClick,o=a.handleTooltipSave,p=a.filters,q=a.visibleFilter,r=a.selectedFilters,s=a.showHorizontalCellShadow,t=a.borderBetweenColumns,u=d.reduce(function(c,a){return c+a},0),v={"--table-header-height":"".concat(u,"px")},w=function(a){var b;return 1<=+a.position.colSpan?"high":null!==(b=a.position)&&void 0!==b&&b.smallTextSize?"low":"default"},x=function(a){var b=[],d=function(a){a.columns?a.columns.forEach(function(a){return d(c.find(function(b){return b.title===a.title}))}):b.push(a)};return d(a),b.some(function(a){return a.isResized})},y=function(a){var b,c,d,e;if(!p||!a.accessor)return null;var f=p.find(function(b){var c=b.field;return c===a.accessor}),g=null===f||void 0===f||null===(b=f.component)||void 0===b?void 0:b.name,h=null!==(c=null===f||void 0===f||null===(d=f.component)||void 0===d?void 0:d.props)&&void 0!==c?c:{},i=m(a.accessor),j=null===f||void 0===f?void 0:f.id;return a.filterable?React.createElement(TableFilterTooltip,{field:a.accessor,isOpened:q===a.accessor,options:getOptionsForFilters(p,a.accessor),values:r[a.accessor].selected||[],onChange:o,onToggle:m(a.accessor),className:cnTableHeader("Icon",{type:"filter"})},g&&React.createElement(g,Object.assign({},h,{onConfirm:function handleFilterSave(b){j&&o(a.accessor,[j],b),i()},filterValue:null===(e=r[a.accessor])||void 0===e?void 0:e.value,onCancel:m(a.accessor)}))):null},z=function(a){return a.control?React.createElement("div",{className:cnTableHeader("\u0421ontrol")},a.control({column:a})):null};return React.createElement(React.Fragment,null,React.createElement("div",{className:cnTableHeader("Row",{withVerticalBorder:t})},c.map(function(a,m){var o,p,q,r,s={};return a.position.colSpan&&(s.gridColumnEnd="span ".concat(a.position.colSpan)),a.position.rowSpan&&(s.gridRowEnd="span ".concat(a.position.rowSpan)),b&&(s.top=d.slice(0,a.position.level).reduce(function(c,a){return c+a},0)),React.createElement(TableCell,{type:"header",key:m,ref:function ref(a){f.current[m]=a},style:_objectSpread(_objectSpread({},s),{},{left:g(a.position.gridIndex,a.position.topHeaderGridIndex)}),isSticky:b,isResized:x(a),column:a,verticalAlign:j,onContextMenu:function onContextMenu(a){return n({e:a,type:"contextMenu",columnIdx:m,ref:{current:f.current[m]}})},onClick:function onClick(a){return n({e:a,type:"click",columnIdx:m,ref:{current:f.current[m]}})},className:cnTableHeader("Cell",{isFirstColumn:null===(o=a.position)||void 0===o?void 0:o.isFirst,isFirstRow:0===a.position.level,isLastInColumn:(null===(p=a.position)||void 0===p?void 0:p.topHeaderGridIndex)!==(null===(q=c[m+1])||void 0===q||null===(r=q.position)||void 0===r?void 0:r.topHeaderGridIndex),level:w(a)}),showVerticalShadow:i&&a.position.gridIndex+((null===a||void 0===a?void 0:a.position.colSpan)||1)===h},a.title,React.createElement("div",{className:cnTableHeader("Buttons",{isSortingActive:a.isSortingActive,isFilterActive:a.isFilterActive,verticalAlign:j})},a.sortable&&React.createElement(Button,{type:"button",size:"xs",iconSize:"s",view:"clear",onlyIcon:!0,onClick:function onClick(){return l(a)},iconLeft:k(a),className:cnTableHeader("Icon",{type:"sort"})}),y(a),z(a)))})),React.createElement("div",{className:cnTableHeader("ShadowWrapper"),style:v},React.createElement("div",{className:cnTableHeader("Shadow",{show:s&&b})})))};
2
2
  //# sourceMappingURL=TableHeader.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TableHeader.js","names":["React","cn","Button","TableCell","getOptionsForFilters","TableFilterTooltip","cnTableHeader","levelTypes","TableHeader","isStickyHeader","headersWithMetaData","headerRowsHeights","headerRowsRefs","getStickyLeftOffset","stickyColumnsGrid","showVerticalCellShadow","headerVerticalAlign","getSortIcon","handleSortClick","handleFilterTogglerClick","handleCellClick","handleTooltipSave","filters","visibleFilter","selectedFilters","showHorizontalCellShadow","borderBetweenColumns","tableHeaderHeight","reduce","a","b","tableHeaderStyle","getLevelType","column","position","colSpan","smallTextSize","isColumnResized","headers","build","header","columns","forEach","col","find","head","title","push","some","isResized","getFilterPopover","accessor","curFilter","field","FilterComponent","component","name","filterComponentProps","props","onToggle","filterId","id","filterable","selected","type","handleFilterSave","filterValue","value","control","withVerticalBorder","map","columnIdx","style","gridColumnEnd","rowSpan","gridRowEnd","top","slice","level","ref","current","left","gridIndex","topHeaderGridIndex","e","isFirstColumn","isFirst","isFirstRow","isLastInColumn","isSortingActive","isFilterActive","verticalAlign","sortable","show"],"sources":["../../../../../../src/components/Table/Header/TableHeader.tsx"],"sourcesContent":["import './TableHeader.css';\n\nimport React from 'react';\n\nimport { cn } from '../../../utils/bem';\nimport { Button } from '../../Button/Button';\nimport { TableCell } from '../Cell/TableCell';\nimport {\n FieldSelectedValues,\n Filters,\n getOptionsForFilters,\n SelectedFilters,\n} from '../filtering';\nimport { TableFilterTooltip } from '../FilterTooltip/TableFilterTooltip';\nimport { Header } from '../helpers';\nimport {\n ColumnMetaData,\n HeaderVerticalAlign,\n onCellClick,\n TableColumn,\n TableRow,\n} from '../Table';\n\nconst cnTableHeader = cn('TableHeader');\n\ntype TableCSSCustomProperty = {\n '--table-header-height': string;\n};\n\nexport const levelTypes = ['high', 'low', 'default'] as const;\nexport type LevelType = typeof levelTypes[number];\n\ntype Props<T extends TableRow> = {\n isStickyHeader: boolean;\n headersWithMetaData: Array<Header<T> & ColumnMetaData>;\n headerRowsHeights: Array<number>;\n headerRowsRefs: React.MutableRefObject<Record<number, HTMLDivElement | null>>;\n getStickyLeftOffset: (\n columnIndex: number,\n topHeaderGridIndex: number,\n ) => number | undefined;\n stickyColumnsGrid: number;\n showVerticalCellShadow: boolean;\n headerVerticalAlign: HeaderVerticalAlign;\n getSortIcon: (column: Header<T>) => React.FC;\n handleSortClick: (column: TableColumn<T>) => void;\n handleFilterTogglerClick: (id: string) => () => void;\n handleCellClick: onCellClick;\n handleTooltipSave: (\n field: string,\n tooltipSelectedFilters: FieldSelectedValues,\n value?: unknown,\n ) => void;\n filters: Filters<T> | undefined;\n visibleFilter: string | null;\n selectedFilters: SelectedFilters;\n showHorizontalCellShadow: boolean;\n borderBetweenColumns: boolean;\n};\n\nexport const TableHeader = <T extends TableRow>({\n isStickyHeader,\n headersWithMetaData,\n headerRowsHeights,\n headerRowsRefs,\n getStickyLeftOffset,\n stickyColumnsGrid,\n showVerticalCellShadow,\n headerVerticalAlign,\n getSortIcon,\n handleSortClick,\n handleFilterTogglerClick,\n handleCellClick,\n handleTooltipSave,\n filters,\n visibleFilter,\n selectedFilters,\n showHorizontalCellShadow,\n borderBetweenColumns,\n}: Props<T>): React.ReactElement => {\n const tableHeaderHeight = headerRowsHeights.reduce(\n (a: number, b: number) => a + b,\n 0,\n );\n const tableHeaderStyle: React.CSSProperties & TableCSSCustomProperty = {\n '--table-header-height': `${tableHeaderHeight}px`,\n };\n const getLevelType = (column: Header<T> & ColumnMetaData): LevelType => {\n if (Number(column.position!.colSpan) >= 1) return 'high';\n if (column.position?.smallTextSize) return 'low';\n return 'default';\n };\n const isColumnResized = (column: Header<T> & ColumnMetaData): boolean => {\n const headers: Array<Header<T> & ColumnMetaData> = [];\n const build = (header: Header<T> & ColumnMetaData) => {\n if (!header.columns) {\n headers.push(header);\n } else {\n header.columns.forEach((col) =>\n build(\n headersWithMetaData.find(\n (head) => head.title === col.title,\n ) as Header<T> & ColumnMetaData,\n ),\n );\n }\n };\n build(column);\n return headers.some((header) => header.isResized);\n };\n\n const getFilterPopover = (\n column: Header<T> & ColumnMetaData,\n ): React.ReactNode => {\n if (!filters || !column.accessor) {\n return null;\n }\n const curFilter = filters.find(({ field }) => field === column.accessor);\n const FilterComponent = curFilter?.component?.name;\n const filterComponentProps = curFilter?.component?.props ?? {};\n const onToggle = handleFilterTogglerClick(column.accessor);\n const filterId = curFilter?.id;\n const handleFilterSave = (filterValue?: unknown) => {\n if (filterId) {\n handleTooltipSave(column.accessor!, [filterId], filterValue);\n }\n onToggle();\n };\n\n return column.filterable ? (\n <TableFilterTooltip\n field={column.accessor}\n isOpened={visibleFilter === column.accessor}\n options={getOptionsForFilters(filters, column.accessor)}\n values={selectedFilters[column.accessor].selected || []}\n onChange={handleTooltipSave}\n onToggle={handleFilterTogglerClick(column.accessor)}\n className={cnTableHeader('Icon', { type: 'filter' })}\n >\n {FilterComponent && (\n <FilterComponent\n {...filterComponentProps}\n onConfirm={handleFilterSave}\n filterValue={selectedFilters[column.accessor]?.value}\n onCancel={handleFilterTogglerClick(column.accessor)}\n />\n )}\n </TableFilterTooltip>\n ) : null;\n };\n\n const control = (column: Header<T> & ColumnMetaData): React.ReactNode => {\n if (column.control) {\n return (\n <div className={cnTableHeader('Сontrol')}>\n {column.control({ column })}\n </div>\n );\n }\n\n return null;\n };\n\n return (\n <>\n <div\n className={cnTableHeader('Row', {\n withVerticalBorder: borderBetweenColumns,\n })}\n >\n {headersWithMetaData.map(\n (column: Header<T> & ColumnMetaData, columnIdx: number) => {\n const style: React.CSSProperties = {};\n if (column.position!.colSpan) {\n style.gridColumnEnd = `span ${column.position!.colSpan}`;\n }\n if (column.position!.rowSpan) {\n style.gridRowEnd = `span ${column.position!.rowSpan}`;\n }\n if (isStickyHeader) {\n style.top = headerRowsHeights\n .slice(0, column.position!.level)\n .reduce((a: number, b: number) => a + b, 0);\n }\n return (\n <TableCell\n type=\"header\"\n key={columnIdx}\n ref={(ref: HTMLDivElement | null): void => {\n /* eslint-disable-next-line no-param-reassign */\n headerRowsRefs.current[columnIdx] = ref;\n }}\n style={{\n ...style,\n left: getStickyLeftOffset(\n column.position!.gridIndex,\n column.position!.topHeaderGridIndex,\n ),\n }}\n isSticky={isStickyHeader}\n isResized={isColumnResized(column)}\n column={column}\n verticalAlign={headerVerticalAlign}\n onContextMenu={(e: React.SyntheticEvent) =>\n handleCellClick({\n e,\n type: 'contextMenu',\n columnIdx,\n ref: { current: headerRowsRefs.current[columnIdx] },\n })\n }\n onClick={(e: React.SyntheticEvent) =>\n handleCellClick({\n e,\n type: 'click',\n columnIdx,\n ref: { current: headerRowsRefs.current[columnIdx] },\n })\n }\n className={cnTableHeader('Cell', {\n isFirstColumn: column.position?.isFirst,\n isFirstRow: column.position!.level === 0,\n isLastInColumn:\n column.position?.topHeaderGridIndex !==\n headersWithMetaData[columnIdx + 1]?.position\n ?.topHeaderGridIndex,\n level: getLevelType(column),\n })}\n showVerticalShadow={\n showVerticalCellShadow &&\n column.position!.gridIndex! +\n (column?.position!.colSpan || 1) ===\n stickyColumnsGrid\n }\n >\n {column.title}\n\n <div\n className={cnTableHeader('Buttons', {\n isSortingActive: column.isSortingActive,\n isFilterActive: column.isFilterActive,\n verticalAlign: headerVerticalAlign,\n })}\n >\n {column.sortable && (\n <Button\n size=\"xs\"\n iconSize=\"s\"\n view=\"clear\"\n onlyIcon\n onClick={(): void => handleSortClick(column)}\n iconLeft={getSortIcon(column)}\n className={cnTableHeader('Icon', { type: 'sort' })}\n />\n )}\n\n {getFilterPopover(column)}\n\n {control(column)}\n </div>\n </TableCell>\n );\n },\n )}\n </div>\n {/*\n Рендерим тень заголовка отдельно чтобы избежать возможных наложений\n теней для ячеек заголовка и ячеек прикрепленных слева.\n */}\n <div className={cnTableHeader('ShadowWrapper')} style={tableHeaderStyle}>\n <div\n className={cnTableHeader('Shadow', {\n show: showHorizontalCellShadow && isStickyHeader,\n })}\n />\n </div>\n </>\n );\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"TableHeader.js","names":["React","cn","Button","TableCell","getOptionsForFilters","TableFilterTooltip","cnTableHeader","levelTypes","TableHeader","isStickyHeader","headersWithMetaData","headerRowsHeights","headerRowsRefs","getStickyLeftOffset","stickyColumnsGrid","showVerticalCellShadow","headerVerticalAlign","getSortIcon","handleSortClick","handleFilterTogglerClick","handleCellClick","handleTooltipSave","filters","visibleFilter","selectedFilters","showHorizontalCellShadow","borderBetweenColumns","tableHeaderHeight","reduce","a","b","tableHeaderStyle","getLevelType","column","position","colSpan","smallTextSize","isColumnResized","headers","build","header","columns","forEach","col","find","head","title","push","some","isResized","getFilterPopover","accessor","curFilter","field","FilterComponent","component","name","filterComponentProps","props","onToggle","filterId","id","filterable","selected","type","handleFilterSave","filterValue","value","control","withVerticalBorder","map","columnIdx","style","gridColumnEnd","rowSpan","gridRowEnd","top","slice","level","ref","current","left","gridIndex","topHeaderGridIndex","e","isFirstColumn","isFirst","isFirstRow","isLastInColumn","isSortingActive","isFilterActive","verticalAlign","sortable","show"],"sources":["../../../../../../src/components/Table/Header/TableHeader.tsx"],"sourcesContent":["import './TableHeader.css';\n\nimport React from 'react';\n\nimport { cn } from '../../../utils/bem';\nimport { Button } from '../../Button/Button';\nimport { TableCell } from '../Cell/TableCell';\nimport {\n FieldSelectedValues,\n Filters,\n getOptionsForFilters,\n SelectedFilters,\n} from '../filtering';\nimport { TableFilterTooltip } from '../FilterTooltip/TableFilterTooltip';\nimport { Header } from '../helpers';\nimport {\n ColumnMetaData,\n HeaderVerticalAlign,\n onCellClick,\n TableColumn,\n TableRow,\n} from '../Table';\n\nconst cnTableHeader = cn('TableHeader');\n\ntype TableCSSCustomProperty = {\n '--table-header-height': string;\n};\n\nexport const levelTypes = ['high', 'low', 'default'] as const;\nexport type LevelType = typeof levelTypes[number];\n\ntype Props<T extends TableRow> = {\n isStickyHeader: boolean;\n headersWithMetaData: Array<Header<T> & ColumnMetaData>;\n headerRowsHeights: Array<number>;\n headerRowsRefs: React.MutableRefObject<Record<number, HTMLDivElement | null>>;\n getStickyLeftOffset: (\n columnIndex: number,\n topHeaderGridIndex: number,\n ) => number | undefined;\n stickyColumnsGrid: number;\n showVerticalCellShadow: boolean;\n headerVerticalAlign: HeaderVerticalAlign;\n getSortIcon: (column: Header<T>) => React.FC;\n handleSortClick: (column: TableColumn<T>) => void;\n handleFilterTogglerClick: (id: string) => () => void;\n handleCellClick: onCellClick;\n handleTooltipSave: (\n field: string,\n tooltipSelectedFilters: FieldSelectedValues,\n value?: unknown,\n ) => void;\n filters: Filters<T> | undefined;\n visibleFilter: string | null;\n selectedFilters: SelectedFilters;\n showHorizontalCellShadow: boolean;\n borderBetweenColumns: boolean;\n};\n\nexport const TableHeader = <T extends TableRow>({\n isStickyHeader,\n headersWithMetaData,\n headerRowsHeights,\n headerRowsRefs,\n getStickyLeftOffset,\n stickyColumnsGrid,\n showVerticalCellShadow,\n headerVerticalAlign,\n getSortIcon,\n handleSortClick,\n handleFilterTogglerClick,\n handleCellClick,\n handleTooltipSave,\n filters,\n visibleFilter,\n selectedFilters,\n showHorizontalCellShadow,\n borderBetweenColumns,\n}: Props<T>): React.ReactElement => {\n const tableHeaderHeight = headerRowsHeights.reduce(\n (a: number, b: number) => a + b,\n 0,\n );\n const tableHeaderStyle: React.CSSProperties & TableCSSCustomProperty = {\n '--table-header-height': `${tableHeaderHeight}px`,\n };\n const getLevelType = (column: Header<T> & ColumnMetaData): LevelType => {\n if (Number(column.position!.colSpan) >= 1) return 'high';\n if (column.position?.smallTextSize) return 'low';\n return 'default';\n };\n const isColumnResized = (column: Header<T> & ColumnMetaData): boolean => {\n const headers: Array<Header<T> & ColumnMetaData> = [];\n const build = (header: Header<T> & ColumnMetaData) => {\n if (!header.columns) {\n headers.push(header);\n } else {\n header.columns.forEach((col) =>\n build(\n headersWithMetaData.find(\n (head) => head.title === col.title,\n ) as Header<T> & ColumnMetaData,\n ),\n );\n }\n };\n build(column);\n return headers.some((header) => header.isResized);\n };\n\n const getFilterPopover = (\n column: Header<T> & ColumnMetaData,\n ): React.ReactNode => {\n if (!filters || !column.accessor) {\n return null;\n }\n const curFilter = filters.find(({ field }) => field === column.accessor);\n const FilterComponent = curFilter?.component?.name;\n const filterComponentProps = curFilter?.component?.props ?? {};\n const onToggle = handleFilterTogglerClick(column.accessor);\n const filterId = curFilter?.id;\n const handleFilterSave = (filterValue?: unknown) => {\n if (filterId) {\n handleTooltipSave(column.accessor!, [filterId], filterValue);\n }\n onToggle();\n };\n\n return column.filterable ? (\n <TableFilterTooltip\n field={column.accessor}\n isOpened={visibleFilter === column.accessor}\n options={getOptionsForFilters(filters, column.accessor)}\n values={selectedFilters[column.accessor].selected || []}\n onChange={handleTooltipSave}\n onToggle={handleFilterTogglerClick(column.accessor)}\n className={cnTableHeader('Icon', { type: 'filter' })}\n >\n {FilterComponent && (\n <FilterComponent\n {...filterComponentProps}\n onConfirm={handleFilterSave}\n filterValue={selectedFilters[column.accessor]?.value}\n onCancel={handleFilterTogglerClick(column.accessor)}\n />\n )}\n </TableFilterTooltip>\n ) : null;\n };\n\n const control = (column: Header<T> & ColumnMetaData): React.ReactNode => {\n if (column.control) {\n return (\n <div className={cnTableHeader('Сontrol')}>\n {column.control({ column })}\n </div>\n );\n }\n\n return null;\n };\n\n return (\n <>\n <div\n className={cnTableHeader('Row', {\n withVerticalBorder: borderBetweenColumns,\n })}\n >\n {headersWithMetaData.map(\n (column: Header<T> & ColumnMetaData, columnIdx: number) => {\n const style: React.CSSProperties = {};\n if (column.position!.colSpan) {\n style.gridColumnEnd = `span ${column.position!.colSpan}`;\n }\n if (column.position!.rowSpan) {\n style.gridRowEnd = `span ${column.position!.rowSpan}`;\n }\n if (isStickyHeader) {\n style.top = headerRowsHeights\n .slice(0, column.position!.level)\n .reduce((a: number, b: number) => a + b, 0);\n }\n return (\n <TableCell\n type=\"header\"\n key={columnIdx}\n ref={(ref: HTMLDivElement | null): void => {\n /* eslint-disable-next-line no-param-reassign */\n headerRowsRefs.current[columnIdx] = ref;\n }}\n style={{\n ...style,\n left: getStickyLeftOffset(\n column.position!.gridIndex,\n column.position!.topHeaderGridIndex,\n ),\n }}\n isSticky={isStickyHeader}\n isResized={isColumnResized(column)}\n column={column}\n verticalAlign={headerVerticalAlign}\n onContextMenu={(e: React.SyntheticEvent) =>\n handleCellClick({\n e,\n type: 'contextMenu',\n columnIdx,\n ref: { current: headerRowsRefs.current[columnIdx] },\n })\n }\n onClick={(e: React.SyntheticEvent) =>\n handleCellClick({\n e,\n type: 'click',\n columnIdx,\n ref: { current: headerRowsRefs.current[columnIdx] },\n })\n }\n className={cnTableHeader('Cell', {\n isFirstColumn: column.position?.isFirst,\n isFirstRow: column.position!.level === 0,\n isLastInColumn:\n column.position?.topHeaderGridIndex !==\n headersWithMetaData[columnIdx + 1]?.position\n ?.topHeaderGridIndex,\n level: getLevelType(column),\n })}\n showVerticalShadow={\n showVerticalCellShadow &&\n column.position!.gridIndex! +\n (column?.position!.colSpan || 1) ===\n stickyColumnsGrid\n }\n >\n {column.title}\n\n <div\n className={cnTableHeader('Buttons', {\n isSortingActive: column.isSortingActive,\n isFilterActive: column.isFilterActive,\n verticalAlign: headerVerticalAlign,\n })}\n >\n {column.sortable && (\n <Button\n type=\"button\"\n size=\"xs\"\n iconSize=\"s\"\n view=\"clear\"\n onlyIcon\n onClick={(): void => handleSortClick(column)}\n iconLeft={getSortIcon(column)}\n className={cnTableHeader('Icon', { type: 'sort' })}\n />\n )}\n\n {getFilterPopover(column)}\n\n {control(column)}\n </div>\n </TableCell>\n );\n },\n )}\n </div>\n {/*\n Рендерим тень заголовка отдельно чтобы избежать возможных наложений\n теней для ячеек заголовка и ячеек прикрепленных слева.\n */}\n <div className={cnTableHeader('ShadowWrapper')} style={tableHeaderStyle}>\n <div\n className={cnTableHeader('Shadow', {\n show: showHorizontalCellShadow && isStickyHeader,\n })}\n />\n </div>\n </>\n );\n};\n"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import"./TableRowsCollapse.css";import{IconArrowDown}from"@consta/icons/IconArrowDown";import{IconArrowUp}from"@consta/icons/IconArrowUp";import React from"react";import{cn}from"../../../utils/bem";import{Button}from"../../Button/Button";export var cnTableRowsCollapse=cn("TableRowsCollapse");export var TableRowsCollapse=function(a){var b=a.level,c=a.children,d=a.isExpanded,e=a.toggleCollapse,f=a.withCollapseButton,g=a.isExpandedByDefault;return React.createElement("div",{style:{"--nesting-level":b},className:cnTableRowsCollapse()},!g&&f&&React.createElement("div",{className:cnTableRowsCollapse("buttonContainer")},React.createElement(Button,{"aria-expanded":d,iconLeft:d?IconArrowUp:IconArrowDown,iconSize:"s",onClick:e,size:"xs",onlyIcon:!0,view:"clear"})),React.createElement("div",{className:cnTableRowsCollapse("cellContainer",{withExpanderPadding:!g})},c))};
1
+ import"./TableRowsCollapse.css";import{IconArrowDown}from"@consta/icons/IconArrowDown";import{IconArrowUp}from"@consta/icons/IconArrowUp";import React from"react";import{cn}from"../../../utils/bem";import{Button}from"../../Button/Button";export var cnTableRowsCollapse=cn("TableRowsCollapse");export var TableRowsCollapse=function(a){var b=a.level,c=a.children,d=a.isExpanded,e=a.toggleCollapse,f=a.withCollapseButton,g=a.isExpandedByDefault;return React.createElement("div",{style:{"--nesting-level":b},className:cnTableRowsCollapse()},!g&&f&&React.createElement("div",{className:cnTableRowsCollapse("buttonContainer")},React.createElement(Button,{type:"button","aria-expanded":d,iconLeft:d?IconArrowUp:IconArrowDown,iconSize:"s",onClick:e,size:"xs",onlyIcon:!0,view:"clear"})),React.createElement("div",{className:cnTableRowsCollapse("cellContainer",{withExpanderPadding:!g})},c))};
2
2
  //# sourceMappingURL=TableRowsCollapse.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TableRowsCollapse.js","names":["IconArrowDown","IconArrowUp","React","cn","Button","cnTableRowsCollapse","TableRowsCollapse","props","level","children","isExpanded","toggleCollapse","withCollapseButton","isExpandedByDefault","withExpanderPadding"],"sources":["../../../../../../src/components/Table/RowsCollapse/TableRowsCollapse.tsx"],"sourcesContent":["import './TableRowsCollapse.css';\n\nimport { IconArrowDown } from '@consta/icons/IconArrowDown';\nimport { IconArrowUp } from '@consta/icons/IconArrowUp';\nimport React from 'react';\n\nimport { cn } from '../../../utils/bem';\nimport { Button } from '../../Button/Button';\n\nexport type Props = {\n level: number;\n isExpandedByDefault?: boolean;\n toggleCollapse?: (e: React.SyntheticEvent) => void;\n isExpanded?: boolean;\n withCollapseButton?: boolean;\n children?: React.ReactNode;\n};\n\nexport const cnTableRowsCollapse = cn('TableRowsCollapse');\n\nexport const TableRowsCollapse: React.FC<Props> = (props) => {\n const {\n level,\n children,\n isExpanded,\n toggleCollapse,\n withCollapseButton,\n isExpandedByDefault,\n } = props;\n\n const style: React.CSSProperties & {\n '--nesting-level': number;\n } = { '--nesting-level': level };\n\n return (\n <div style={style} className={cnTableRowsCollapse()}>\n {!isExpandedByDefault && withCollapseButton && (\n <div className={cnTableRowsCollapse('buttonContainer')}>\n <Button\n aria-expanded={isExpanded}\n iconLeft={isExpanded ? IconArrowUp : IconArrowDown}\n iconSize=\"s\"\n onClick={toggleCollapse}\n size=\"xs\"\n onlyIcon\n view=\"clear\"\n />\n </div>\n )}\n <div\n className={cnTableRowsCollapse('cellContainer', {\n withExpanderPadding: !isExpandedByDefault,\n })}\n >\n {children}\n </div>\n </div>\n );\n};\n"],"mappings":"AAAA,gCAEA,OAASA,aAAT,KAA8B,6BAA9B,CACA,OAASC,WAAT,KAA4B,2BAA5B,CACA,MAAOC,MAAP,KAAkB,OAAlB,CAEA,OAASC,EAAT,0BACA,OAASC,MAAT,2BAWA,MAAO,IAAMC,oBAAmB,CAAGF,EAAE,CAAC,mBAAD,CAA9B,CAEP,MAAO,IAAMG,kBAAkC,CAAG,SAACC,CAAD,CAAW,IAEzDC,EAFyD,CAQvDD,CARuD,CAEzDC,KAFyD,CAGzDC,CAHyD,CAQvDF,CARuD,CAGzDE,QAHyD,CAIzDC,CAJyD,CAQvDH,CARuD,CAIzDG,UAJyD,CAKzDC,CALyD,CAQvDJ,CARuD,CAKzDI,cALyD,CAMzDC,CANyD,CAQvDL,CARuD,CAMzDK,kBANyD,CAOzDC,CAPyD,CAQvDN,CARuD,CAOzDM,mBAPyD,CAc3D,MACE,4BAAK,KAAK,CAHR,CAAE,kBAAmBL,CAArB,CAGF,CAAmB,SAAS,CAAEH,mBAAmB,EAAjD,EACG,CAACQ,CAAD,EAAwBD,CAAxB,EACC,2BAAK,SAAS,CAAEP,mBAAmB,CAAC,iBAAD,CAAnC,EACE,oBAAC,MAAD,EACE,gBAAeK,CADjB,CAEE,QAAQ,CAAEA,CAAU,CAAGT,WAAH,CAAiBD,aAFvC,CAGE,QAAQ,CAAC,GAHX,CAIE,OAAO,CAAEW,CAJX,CAKE,IAAI,CAAC,IALP,CAME,QAAQ,GANV,CAOE,IAAI,CAAC,OAPP,EADF,CAFJ,CAcE,2BACE,SAAS,CAAEN,mBAAmB,CAAC,eAAD,CAAkB,CAC9CS,mBAAmB,CAAE,CAACD,CADwB,CAAlB,CADhC,EAKGJ,CALH,CAdF,CAuBH,CAtCM"}
1
+ {"version":3,"file":"TableRowsCollapse.js","names":["IconArrowDown","IconArrowUp","React","cn","Button","cnTableRowsCollapse","TableRowsCollapse","props","level","children","isExpanded","toggleCollapse","withCollapseButton","isExpandedByDefault","withExpanderPadding"],"sources":["../../../../../../src/components/Table/RowsCollapse/TableRowsCollapse.tsx"],"sourcesContent":["import './TableRowsCollapse.css';\n\nimport { IconArrowDown } from '@consta/icons/IconArrowDown';\nimport { IconArrowUp } from '@consta/icons/IconArrowUp';\nimport React from 'react';\n\nimport { cn } from '../../../utils/bem';\nimport { Button } from '../../Button/Button';\n\nexport type Props = {\n level: number;\n isExpandedByDefault?: boolean;\n toggleCollapse?: (e: React.SyntheticEvent) => void;\n isExpanded?: boolean;\n withCollapseButton?: boolean;\n children?: React.ReactNode;\n};\n\nexport const cnTableRowsCollapse = cn('TableRowsCollapse');\n\nexport const TableRowsCollapse: React.FC<Props> = (props) => {\n const {\n level,\n children,\n isExpanded,\n toggleCollapse,\n withCollapseButton,\n isExpandedByDefault,\n } = props;\n\n const style: React.CSSProperties & {\n '--nesting-level': number;\n } = { '--nesting-level': level };\n\n return (\n <div style={style} className={cnTableRowsCollapse()}>\n {!isExpandedByDefault && withCollapseButton && (\n <div className={cnTableRowsCollapse('buttonContainer')}>\n <Button\n type=\"button\"\n aria-expanded={isExpanded}\n iconLeft={isExpanded ? IconArrowUp : IconArrowDown}\n iconSize=\"s\"\n onClick={toggleCollapse}\n size=\"xs\"\n onlyIcon\n view=\"clear\"\n />\n </div>\n )}\n <div\n className={cnTableRowsCollapse('cellContainer', {\n withExpanderPadding: !isExpandedByDefault,\n })}\n >\n {children}\n </div>\n </div>\n );\n};\n"],"mappings":"AAAA,gCAEA,OAASA,aAAT,KAA8B,6BAA9B,CACA,OAASC,WAAT,KAA4B,2BAA5B,CACA,MAAOC,MAAP,KAAkB,OAAlB,CAEA,OAASC,EAAT,0BACA,OAASC,MAAT,2BAWA,MAAO,IAAMC,oBAAmB,CAAGF,EAAE,CAAC,mBAAD,CAA9B,CAEP,MAAO,IAAMG,kBAAkC,CAAG,SAACC,CAAD,CAAW,IAEzDC,EAFyD,CAQvDD,CARuD,CAEzDC,KAFyD,CAGzDC,CAHyD,CAQvDF,CARuD,CAGzDE,QAHyD,CAIzDC,CAJyD,CAQvDH,CARuD,CAIzDG,UAJyD,CAKzDC,CALyD,CAQvDJ,CARuD,CAKzDI,cALyD,CAMzDC,CANyD,CAQvDL,CARuD,CAMzDK,kBANyD,CAOzDC,CAPyD,CAQvDN,CARuD,CAOzDM,mBAPyD,CAc3D,MACE,4BAAK,KAAK,CAHR,CAAE,kBAAmBL,CAArB,CAGF,CAAmB,SAAS,CAAEH,mBAAmB,EAAjD,EACG,CAACQ,CAAD,EAAwBD,CAAxB,EACC,2BAAK,SAAS,CAAEP,mBAAmB,CAAC,iBAAD,CAAnC,EACE,oBAAC,MAAD,EACE,IAAI,CAAC,QADP,CAEE,gBAAeK,CAFjB,CAGE,QAAQ,CAAEA,CAAU,CAAGT,WAAH,CAAiBD,aAHvC,CAIE,QAAQ,CAAC,GAJX,CAKE,OAAO,CAAEW,CALX,CAME,IAAI,CAAC,IANP,CAOE,QAAQ,GAPV,CAQE,IAAI,CAAC,OARP,EADF,CAFJ,CAeE,2BACE,SAAS,CAAEN,mBAAmB,CAAC,eAAD,CAAkB,CAC9CS,mBAAmB,CAAE,CAACD,CADwB,CAAlB,CADhC,EAKGJ,CALH,CAfF,CAwBH,CAvCM"}