intergalactic 15.52.0-prerelease.0-prerelease-15fe9f5e → 15.53.0-prerelease-dfe34e97

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 (215) hide show
  1. package/CHANGELOG.md +31 -4
  2. package/accordion/lib/cjs/Accordion.js +7 -6
  3. package/accordion/lib/cjs/Accordion.js.map +1 -1
  4. package/accordion/lib/cjs/style/accordion.shadow.css +2 -2
  5. package/accordion/lib/es6/Accordion.js +7 -6
  6. package/accordion/lib/es6/Accordion.js.map +1 -1
  7. package/accordion/lib/es6/style/accordion.shadow.css +2 -2
  8. package/components.json +12 -12
  9. package/d3-chart/Pattern.d.ts +336 -0
  10. package/d3-chart/Plot.d.ts +4 -0
  11. package/d3-chart/RadialTree.d.ts +7 -2
  12. package/d3-chart/component/Chart/AbstractChart.type.d.ts +3 -0
  13. package/d3-chart/component/ChartLegend/BaseLegend.type.d.ts +3 -0
  14. package/d3-chart/component/ChartLegend/LegendItem/LegendItem.type.d.ts +7 -1
  15. package/d3-chart/index.d.ts +3 -0
  16. package/d3-chart/lib/cjs/Area.js +25 -13
  17. package/d3-chart/lib/cjs/Area.js.map +1 -1
  18. package/d3-chart/lib/cjs/Axis.js +14 -14
  19. package/d3-chart/lib/cjs/Bar.js +23 -12
  20. package/d3-chart/lib/cjs/Bar.js.map +1 -1
  21. package/d3-chart/lib/cjs/Bubble.js +25 -13
  22. package/d3-chart/lib/cjs/Bubble.js.map +1 -1
  23. package/d3-chart/lib/cjs/Donut.js +28 -12
  24. package/d3-chart/lib/cjs/Donut.js.map +1 -1
  25. package/d3-chart/lib/cjs/Dots.js +55 -28
  26. package/d3-chart/lib/cjs/Dots.js.map +1 -1
  27. package/d3-chart/lib/cjs/GroupBar.js +4 -2
  28. package/d3-chart/lib/cjs/GroupBar.js.map +1 -1
  29. package/d3-chart/lib/cjs/HorizontalBar.js +23 -12
  30. package/d3-chart/lib/cjs/HorizontalBar.js.map +1 -1
  31. package/d3-chart/lib/cjs/Hover.js +9 -6
  32. package/d3-chart/lib/cjs/Hover.js.map +1 -1
  33. package/d3-chart/lib/cjs/Line.js +23 -15
  34. package/d3-chart/lib/cjs/Line.js.map +1 -1
  35. package/d3-chart/lib/cjs/Pattern.js +540 -0
  36. package/d3-chart/lib/cjs/Pattern.js.map +1 -0
  37. package/d3-chart/lib/cjs/Plot.js +7 -5
  38. package/d3-chart/lib/cjs/Plot.js.map +1 -1
  39. package/d3-chart/lib/cjs/Radar.js +126 -83
  40. package/d3-chart/lib/cjs/Radar.js.map +1 -1
  41. package/d3-chart/lib/cjs/RadialTree.js +126 -100
  42. package/d3-chart/lib/cjs/RadialTree.js.map +1 -1
  43. package/d3-chart/lib/cjs/ReferenceLine.js +9 -9
  44. package/d3-chart/lib/cjs/ScatterPlot.js +22 -10
  45. package/d3-chart/lib/cjs/ScatterPlot.js.map +1 -1
  46. package/d3-chart/lib/cjs/StackBar.js +8 -4
  47. package/d3-chart/lib/cjs/StackBar.js.map +1 -1
  48. package/d3-chart/lib/cjs/StackedArea.js +4 -1
  49. package/d3-chart/lib/cjs/StackedArea.js.map +1 -1
  50. package/d3-chart/lib/cjs/Tooltip.js +21 -11
  51. package/d3-chart/lib/cjs/Tooltip.js.map +1 -1
  52. package/d3-chart/lib/cjs/Venn.js +28 -12
  53. package/d3-chart/lib/cjs/Venn.js.map +1 -1
  54. package/d3-chart/lib/cjs/a11y/PlotA11yModule.js +2 -2
  55. package/d3-chart/lib/cjs/a11y/PlotA11yView.js +2 -2
  56. package/d3-chart/lib/cjs/component/Chart/AbstractChart.js +7 -3
  57. package/d3-chart/lib/cjs/component/Chart/AbstractChart.js.map +1 -1
  58. package/d3-chart/lib/cjs/component/Chart/AbstractChart.type.js.map +1 -1
  59. package/d3-chart/lib/cjs/component/ChartLegend/BaseLegend.js +4 -2
  60. package/d3-chart/lib/cjs/component/ChartLegend/BaseLegend.js.map +1 -1
  61. package/d3-chart/lib/cjs/component/ChartLegend/BaseLegend.type.js.map +1 -1
  62. package/d3-chart/lib/cjs/component/ChartLegend/LegendFlex/LegendFlex.js +4 -4
  63. package/d3-chart/lib/cjs/component/ChartLegend/LegendItem/LegendItem.js +80 -53
  64. package/d3-chart/lib/cjs/component/ChartLegend/LegendItem/LegendItem.js.map +1 -1
  65. package/d3-chart/lib/cjs/component/ChartLegend/LegendItem/LegendItem.type.js +1 -1
  66. package/d3-chart/lib/cjs/component/ChartLegend/LegendItem/LegendItem.type.js.map +1 -1
  67. package/d3-chart/lib/cjs/component/ChartLegend/LegendItem/legend-item.shadow.css +17 -3
  68. package/d3-chart/lib/cjs/component/ChartLegend/LegendTable/LegendTable.js +6 -6
  69. package/d3-chart/lib/cjs/index.js +19 -0
  70. package/d3-chart/lib/cjs/index.js.map +1 -1
  71. package/d3-chart/lib/cjs/style/area.shadow.css +6 -1
  72. package/d3-chart/lib/cjs/style/bar.shadow.css +7 -1
  73. package/d3-chart/lib/cjs/style/bubble.shadow.css +8 -1
  74. package/d3-chart/lib/cjs/style/donut.shadow.css +7 -1
  75. package/d3-chart/lib/cjs/style/dot.shadow.css +2 -2
  76. package/d3-chart/lib/cjs/style/radar.shadow.css +7 -1
  77. package/d3-chart/lib/cjs/style/radial-tree.shadow.css +5 -0
  78. package/d3-chart/lib/cjs/style/scatterplot.shadow.css +8 -1
  79. package/d3-chart/lib/cjs/style/tooltip.shadow.css +6 -6
  80. package/d3-chart/lib/cjs/style/venn.shadow.css +11 -0
  81. package/d3-chart/lib/cjs/types/Plot.d.js.map +1 -1
  82. package/d3-chart/lib/cjs/types/index.d.js +12 -0
  83. package/d3-chart/lib/cjs/types/index.d.js.map +1 -1
  84. package/d3-chart/lib/es6/Area.js +25 -13
  85. package/d3-chart/lib/es6/Area.js.map +1 -1
  86. package/d3-chart/lib/es6/Axis.js +14 -14
  87. package/d3-chart/lib/es6/Bar.js +23 -12
  88. package/d3-chart/lib/es6/Bar.js.map +1 -1
  89. package/d3-chart/lib/es6/Bubble.js +25 -13
  90. package/d3-chart/lib/es6/Bubble.js.map +1 -1
  91. package/d3-chart/lib/es6/Donut.js +28 -12
  92. package/d3-chart/lib/es6/Donut.js.map +1 -1
  93. package/d3-chart/lib/es6/Dots.js +56 -29
  94. package/d3-chart/lib/es6/Dots.js.map +1 -1
  95. package/d3-chart/lib/es6/GroupBar.js +4 -2
  96. package/d3-chart/lib/es6/GroupBar.js.map +1 -1
  97. package/d3-chart/lib/es6/HorizontalBar.js +23 -12
  98. package/d3-chart/lib/es6/HorizontalBar.js.map +1 -1
  99. package/d3-chart/lib/es6/Hover.js +9 -6
  100. package/d3-chart/lib/es6/Hover.js.map +1 -1
  101. package/d3-chart/lib/es6/Line.js +24 -16
  102. package/d3-chart/lib/es6/Line.js.map +1 -1
  103. package/d3-chart/lib/es6/Pattern.js +534 -0
  104. package/d3-chart/lib/es6/Pattern.js.map +1 -0
  105. package/d3-chart/lib/es6/Plot.js +7 -5
  106. package/d3-chart/lib/es6/Plot.js.map +1 -1
  107. package/d3-chart/lib/es6/Radar.js +126 -83
  108. package/d3-chart/lib/es6/Radar.js.map +1 -1
  109. package/d3-chart/lib/es6/RadialTree.js +127 -101
  110. package/d3-chart/lib/es6/RadialTree.js.map +1 -1
  111. package/d3-chart/lib/es6/ReferenceLine.js +9 -9
  112. package/d3-chart/lib/es6/ScatterPlot.js +22 -10
  113. package/d3-chart/lib/es6/ScatterPlot.js.map +1 -1
  114. package/d3-chart/lib/es6/StackBar.js +8 -4
  115. package/d3-chart/lib/es6/StackBar.js.map +1 -1
  116. package/d3-chart/lib/es6/StackedArea.js +4 -1
  117. package/d3-chart/lib/es6/StackedArea.js.map +1 -1
  118. package/d3-chart/lib/es6/Tooltip.js +22 -11
  119. package/d3-chart/lib/es6/Tooltip.js.map +1 -1
  120. package/d3-chart/lib/es6/Venn.js +28 -12
  121. package/d3-chart/lib/es6/Venn.js.map +1 -1
  122. package/d3-chart/lib/es6/a11y/PlotA11yModule.js +2 -2
  123. package/d3-chart/lib/es6/a11y/PlotA11yView.js +2 -2
  124. package/d3-chart/lib/es6/component/Chart/AbstractChart.js +7 -3
  125. package/d3-chart/lib/es6/component/Chart/AbstractChart.js.map +1 -1
  126. package/d3-chart/lib/es6/component/Chart/AbstractChart.type.js.map +1 -1
  127. package/d3-chart/lib/es6/component/ChartLegend/BaseLegend.js +4 -2
  128. package/d3-chart/lib/es6/component/ChartLegend/BaseLegend.js.map +1 -1
  129. package/d3-chart/lib/es6/component/ChartLegend/BaseLegend.type.js.map +1 -1
  130. package/d3-chart/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.js +4 -4
  131. package/d3-chart/lib/es6/component/ChartLegend/LegendItem/LegendItem.js +80 -53
  132. package/d3-chart/lib/es6/component/ChartLegend/LegendItem/LegendItem.js.map +1 -1
  133. package/d3-chart/lib/es6/component/ChartLegend/LegendItem/LegendItem.type.js +1 -1
  134. package/d3-chart/lib/es6/component/ChartLegend/LegendItem/LegendItem.type.js.map +1 -1
  135. package/d3-chart/lib/es6/component/ChartLegend/LegendItem/legend-item.shadow.css +17 -3
  136. package/d3-chart/lib/es6/component/ChartLegend/LegendTable/LegendTable.js +6 -6
  137. package/d3-chart/lib/es6/index.js +1 -0
  138. package/d3-chart/lib/es6/index.js.map +1 -1
  139. package/d3-chart/lib/es6/style/area.shadow.css +6 -1
  140. package/d3-chart/lib/es6/style/bar.shadow.css +7 -1
  141. package/d3-chart/lib/es6/style/bubble.shadow.css +8 -1
  142. package/d3-chart/lib/es6/style/donut.shadow.css +7 -1
  143. package/d3-chart/lib/es6/style/dot.shadow.css +2 -2
  144. package/d3-chart/lib/es6/style/radar.shadow.css +7 -1
  145. package/d3-chart/lib/es6/style/radial-tree.shadow.css +5 -0
  146. package/d3-chart/lib/es6/style/scatterplot.shadow.css +8 -1
  147. package/d3-chart/lib/es6/style/tooltip.shadow.css +6 -6
  148. package/d3-chart/lib/es6/style/venn.shadow.css +11 -0
  149. package/d3-chart/lib/es6/types/Plot.d.js.map +1 -1
  150. package/d3-chart/lib/es6/types/index.d.js +3 -0
  151. package/d3-chart/lib/es6/types/index.d.js.map +1 -1
  152. package/d3-chart/lib/types/Pattern.d.ts +336 -0
  153. package/d3-chart/lib/types/Plot.d.ts +4 -0
  154. package/d3-chart/lib/types/RadialTree.d.ts +7 -2
  155. package/d3-chart/lib/types/component/Chart/AbstractChart.type.d.ts +3 -0
  156. package/d3-chart/lib/types/component/ChartLegend/BaseLegend.type.d.ts +3 -0
  157. package/d3-chart/lib/types/component/ChartLegend/LegendItem/LegendItem.type.d.ts +7 -1
  158. package/d3-chart/lib/types/index.d.ts +3 -0
  159. package/date-picker/lib/cjs/components/RangePickerAbstract.js +8 -4
  160. package/date-picker/lib/cjs/components/RangePickerAbstract.js.map +1 -1
  161. package/date-picker/lib/es6/components/RangePickerAbstract.js +8 -4
  162. package/date-picker/lib/es6/components/RangePickerAbstract.js.map +1 -1
  163. package/drag-and-drop/index.d.ts +13 -2
  164. package/drag-and-drop/lib/cjs/DragAndDrop.js +96 -44
  165. package/drag-and-drop/lib/cjs/DragAndDrop.js.map +1 -1
  166. package/drag-and-drop/lib/cjs/index.d.js.map +1 -1
  167. package/drag-and-drop/lib/cjs/translations/de.json +5 -0
  168. package/drag-and-drop/lib/cjs/translations/en.json +5 -0
  169. package/drag-and-drop/lib/cjs/translations/es.json +5 -0
  170. package/drag-and-drop/lib/cjs/translations/fr.json +5 -0
  171. package/drag-and-drop/lib/cjs/translations/it.json +5 -0
  172. package/drag-and-drop/lib/cjs/translations/ja.json +5 -0
  173. package/drag-and-drop/lib/cjs/translations/ko.json +5 -0
  174. package/drag-and-drop/lib/cjs/translations/nl.json +5 -0
  175. package/drag-and-drop/lib/cjs/translations/pl.json +5 -0
  176. package/drag-and-drop/lib/cjs/translations/pt.json +5 -0
  177. package/drag-and-drop/lib/cjs/translations/sv.json +5 -0
  178. package/drag-and-drop/lib/cjs/translations/tr.json +5 -0
  179. package/drag-and-drop/lib/cjs/translations/vi.json +5 -0
  180. package/drag-and-drop/lib/cjs/translations/zh.json +5 -0
  181. package/drag-and-drop/lib/es6/DragAndDrop.js +96 -44
  182. package/drag-and-drop/lib/es6/DragAndDrop.js.map +1 -1
  183. package/drag-and-drop/lib/es6/index.d.js.map +1 -1
  184. package/drag-and-drop/lib/es6/translations/de.json +5 -0
  185. package/drag-and-drop/lib/es6/translations/en.json +5 -0
  186. package/drag-and-drop/lib/es6/translations/es.json +5 -0
  187. package/drag-and-drop/lib/es6/translations/fr.json +5 -0
  188. package/drag-and-drop/lib/es6/translations/it.json +5 -0
  189. package/drag-and-drop/lib/es6/translations/ja.json +5 -0
  190. package/drag-and-drop/lib/es6/translations/ko.json +5 -0
  191. package/drag-and-drop/lib/es6/translations/nl.json +5 -0
  192. package/drag-and-drop/lib/es6/translations/pl.json +5 -0
  193. package/drag-and-drop/lib/es6/translations/pt.json +5 -0
  194. package/drag-and-drop/lib/es6/translations/sv.json +5 -0
  195. package/drag-and-drop/lib/es6/translations/tr.json +5 -0
  196. package/drag-and-drop/lib/es6/translations/vi.json +5 -0
  197. package/drag-and-drop/lib/es6/translations/zh.json +5 -0
  198. package/drag-and-drop/lib/types/index.d.ts +13 -2
  199. package/package.json +3 -3
  200. package/pills/lib/cjs/Pills.js +44 -57
  201. package/pills/lib/cjs/Pills.js.map +1 -1
  202. package/pills/lib/cjs/style/pills.shadow.css +3 -9
  203. package/pills/lib/es6/Pills.js +44 -57
  204. package/pills/lib/es6/Pills.js.map +1 -1
  205. package/pills/lib/es6/style/pills.shadow.css +3 -9
  206. package/utils/lib/enhances/a11yEnhance.d.ts +9 -3
  207. package/utils/lib/enhances/a11yEnhance.js +11 -11
  208. package/utils/lib/enhances/a11yEnhance.js.map +1 -1
  209. package/utils/lib/enhances/a11yEnhance.mjs +11 -11
  210. package/utils/lib/enhances/a11yEnhance.mjs.map +1 -1
  211. package/utils/lib/themes/auto.css +3 -3
  212. package/utils/lib/themes/dark.css +2 -2
  213. package/utils/lib/themes/dark.json +1 -1
  214. package/utils/lib/themes/default.css +1 -1
  215. package/utils/lib/themes/light.css +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"DragAndDrop.js","names":["React","createComponent","sstyled","Component","Root","Box","localizedMessages","i18nEnhance","useEnhancedEffect","style","_sstyled","insert","noop","DragAndDropContext","createContext","attach","detach","DragAndDropRoot","_Component","_inherits","_super","_createSuper","_this","_classCallCheck","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty","_assertThisInitialized","items","dragging","previewSwap","hideHoverEffect","a11yHint","index","_this$state$items$ind","_this$state$items$ind2","_this$state$items$ind3","_this$state$items$ind4","itemText","state","node","getAttribute","textContent","getI18nText","asProps","itemsCount","itemPosition","setState","prevState","initialItemsRects","map","item","getBoundingClientRect","event","preventDefault","_this$state$dragging","_this$state$items$ite","_this$state$items$ite2","_this$state$items$ite3","_this$state$items$ite4","_this$state$dragging2","itemIndex","findIndex","rect","clientX","x","width","clientY","y","height","_this$state$items$_th","_this$state$items$_th2","_this$state$items$_th3","draggingAllowed","children","_this$state$items$ind5","_this$state$items$ind6","_this$state$items$ind7","_this$state$items$ind8","_items$index","_items$index2","_this$asProps","onDnD","_this$state","fromId","id","fromIndex","toId","toIndex","_this$asProps$onInser","_this$asProps2","_items$index3","onInsertDroppable","_this$asProps$onSwapD","_this$asProps3","_items$index4","onSwapDraggable","key","stopPropagation","handleItemDrop","setTimeout","_this$state$items","focus","handleItemDragStart","handleItemFocus","handleItemKeyDown","customFocus","undefined","getCustomFocusItemIndex","_ref7","_prevState$items$inde","_prevState$items$inde2","_toConsumableArray","_createClass","value","getDraggableProps","_","onDragStart","makeItemDragStartHandler","onDragEnd","handleItemDragEnd","onDragOver","handleItemDragOver","onDragEnter","handleItemDragEnter","onDrop","makeItemDropHandler","onMouseMove","handleItemMouseMove","onKeyDown","makeItemKeyDownHandler","onFocus","makeItemFocusHandler","dropPreview","dark","theme","swapPreview","getSwapPreview","componentDidMount","document","addEventListener","handlePageKeyDown","capture","componentWillUnmount","removeEventListener","componentDidUpdate","prevProps","render","_ref","_ref4","SA11yHint","context","styles","createElement","Provider","cn","_assignProps","i18n","locale","Draggable","props","_ref2","arguments[0]","_ref5","SDraggable","ref","useRef","_React$useContext","useContext","_props$placement","placement","_props$noDrag","noDrag","Children","resolvedChildren","useMemo","current","_objectSpread","_assignProps2","DropZone","_ref3","_ref6","SDropZone","DragAndDrop","_assignProps3","Dropable"],"sources":["../../src/DragAndDrop.tsx"],"sourcesContent":["import React from 'react';\nimport createComponent, { sstyled, Component, Root } from '@semcore/core';\nimport { Box } from '@semcore/flex-box';\nimport { localizedMessages } from './translations/__intergalactic-dynamic-locales';\nimport i18nEnhance from '@semcore/utils/lib/enhances/i18nEnhance';\nimport useEnhancedEffect from '@semcore/utils/lib/use/useEnhancedEffect';\n\nimport style from './style/drag-and-drop.shadow.css';\n\ntype AsProps = {\n /**\n * @deprecated don't use this prop\n */\n theme?: 'dark' | 'default';\n /**\n * @deprecated use `onDnD` instead\n */\n onSwapDraggable?: (draggableNode: React.ReactNode, droppableNode: React.ReactNode) => void;\n /**\n * @deprecated use `onDnD` instead\n */\n onInsertDroppable?: (draggableNode: React.ReactNode, droppableNode: React.ReactNode) => void;\n /**\n * Contolled drag and drop handler\n */\n onDnD: (dndData: { fromIndex: number; fromId: string; toIndex: number; toId: string }) => void;\n /**\n * Index of id that indicates item that is currently under the user focus in case of real browser focus cannot be used.\n * When provided, drag and drop listens to whole page keyboard events. Doesn't provide `onCustomFocusChange` callback.\n */\n customFocus?: number | string;\n getI18nText: (messageId: string, values?: { [key: string]: string | number }) => string;\n};\n\nconst noop: (...args: any[]) => any = () => {\n /* do nothing */\n};\nconst DragAndDropContext = React.createContext<{\n attach: (details: {\n index: number;\n children: React.ReactNode;\n node: HTMLElement;\n id: string;\n draggingAllowed: boolean;\n }) => void;\n detach: (index: number) => void;\n}>({\n attach: noop,\n detach: noop,\n});\n\ntype State = {\n items: {\n children: React.ReactNode;\n node: HTMLElement;\n id: string;\n draggingAllowed: boolean;\n }[];\n dragging: null | {\n index: number;\n initialItemsRects?: { x: number; y: number; width: number; height: number }[];\n };\n previewSwap: number | null;\n hideHoverEffect: boolean;\n a11yHint: string | null;\n};\n\nclass DragAndDropRoot extends Component<AsProps, {}, State> {\n static displayName = 'DragAndDrop';\n static enhance = [i18nEnhance(localizedMessages)];\n static defaultProps = {\n theme: 'default',\n i18n: localizedMessages,\n locale: 'en',\n };\n static style = style;\n\n state: State = {\n items: [],\n dragging: null,\n previewSwap: null,\n hideHoverEffect: false, // https://stackoverflow.com/questions/67118739/hover-effect-reset-when-hovering-over-other-letters\n a11yHint: null,\n };\n\n handleItemDragStart = (index: number) => {\n const itemText =\n this.state.items[index]?.node?.getAttribute('aria-label') ||\n this.state.items[index]?.node?.textContent ||\n `${index + 1}`;\n\n const { getI18nText } = this.asProps;\n const itemsCount = this.state.items.length;\n const a11yHint = getI18nText('grabbed', {\n itemText,\n itemPosition: index + 1,\n itemsCount,\n });\n\n this.setState((prevState: State) => ({\n a11yHint: a11yHint,\n dragging: {\n index,\n initialItemsRects: prevState.items.map((item) => item?.node.getBoundingClientRect()),\n },\n }));\n };\n handleItemDragEnd = (event: DragEvent) => {\n event.preventDefault();\n this.setState({\n dragging: null,\n previewSwap: null,\n // hideHoverEffect: true\n });\n };\n handleItemDragOver = (event: DragEvent) => {\n event.preventDefault();\n if (!this.state.dragging?.initialItemsRects) return;\n const itemIndex = this.state.dragging.initialItemsRects.findIndex(\n (rect) =>\n rect &&\n event.clientX > rect.x &&\n event.clientX < rect.x + rect.width &&\n event.clientY > rect.y &&\n event.clientY < rect.y + rect.height,\n );\n const itemText =\n this.state.items[itemIndex]?.node?.getAttribute('aria-label') ||\n this.state.items[itemIndex]?.node?.textContent ||\n `${itemIndex + 1}`;\n const itemsCount = this.state.items.length;\n const { getI18nText } = this.asProps;\n const a11yHint = getI18nText('grabbing', {\n itemText,\n itemPosition: itemIndex + 1,\n itemsCount,\n });\n\n if (itemIndex === this.state.dragging?.index) this.setState({ previewSwap: null, a11yHint });\n else this.setState({ previewSwap: itemIndex, a11yHint });\n };\n getSwapPreview = (index: number) => {\n if (!this.state.dragging) return null;\n if (this.state.previewSwap === null) return null;\n if (this.state.items[this.state.previewSwap]?.draggingAllowed === false) return null;\n if (this.state.previewSwap === index)\n return this.state.items[this.state.dragging.index]?.children;\n if (this.state.previewSwap !== null && index === this.state.dragging.index)\n return this.state.items[this.state.previewSwap]?.children;\n };\n handleItemDrop = (index: number) => {\n const { onDnD, getI18nText } = this.asProps;\n if (!onDnD) return;\n const { items, dragging } = this.state;\n const itemText =\n this.state.items[index]?.node?.getAttribute('aria-label') ||\n this.state.items[index]?.node?.textContent ||\n `${index + 1}`;\n const itemsCount = this.state.items.length;\n const a11yHint = getI18nText('dropped', {\n itemText,\n itemPosition: index + 1,\n itemsCount,\n });\n\n this.setState({ a11yHint, dragging: null, previewSwap: null, hideHoverEffect: true });\n onDnD({\n fromId: items[dragging!.index]?.id,\n fromIndex: dragging!.index,\n toId: items[index]?.id,\n toIndex: index,\n });\n if (items[index]) {\n if (!items[index].draggingAllowed) {\n this.asProps.onInsertDroppable?.(items[dragging!.index]?.children, items[index].children);\n } else {\n this.asProps.onSwapDraggable?.(items[dragging!.index]?.children, items[index].children);\n }\n }\n };\n handleItemDragEnter = (event: DragEvent) => {\n event.preventDefault();\n };\n handleItemMouseMove = () => {\n if (!this.state.hideHoverEffect) return;\n this.setState({ hideHoverEffect: false });\n };\n handleItemKeyDown = (event: KeyboardEvent, index: number) => {\n if (event.key === ' ') {\n event.preventDefault();\n event.stopPropagation();\n if (this.state.dragging) {\n const previewSwap = this.state.previewSwap;\n this.handleItemDrop(index);\n this.setState({ dragging: null, previewSwap: null, hideHoverEffect: true });\n setTimeout(() => {\n this.state.items[previewSwap as any]?.node.focus();\n }, 0);\n } else {\n this.handleItemDragStart(index);\n }\n return false;\n } else if (event.key === 'Escape' && this.state.dragging) {\n event.preventDefault();\n event.stopPropagation();\n const { getI18nText } = this.asProps;\n const a11yHint = getI18nText('discarded');\n this.setState({ a11yHint, dragging: null, previewSwap: null, hideHoverEffect: true });\n return false;\n }\n };\n handleItemFocus = (index: number) => {\n if (!this.state.dragging) return;\n this.setState({ previewSwap: index });\n };\n\n makeItemDragStartHandler = (index: number) => () => this.handleItemDragStart(index);\n makeItemDropHandler = (index: number) => () => this.handleItemDrop(index);\n makeItemFocusHandler = (index: number) => () => this.handleItemFocus(index);\n makeItemKeyDownHandler = (index: number) => (event: KeyboardEvent) =>\n this.handleItemKeyDown(event, index);\n\n getDraggableProps(_: any, index: number) {\n return {\n index,\n onDragStart: this.makeItemDragStartHandler(index),\n onDragEnd: this.handleItemDragEnd,\n onDragOver: this.handleItemDragOver,\n onDragEnter: this.handleItemDragEnter,\n onDrop: this.makeItemDropHandler(index),\n onMouseMove: this.handleItemMouseMove,\n onKeyDown: this.makeItemKeyDownHandler(index),\n onFocus: this.makeItemFocusHandler(index),\n dropPreview: index === this.state.previewSwap,\n dark: this.asProps.theme === 'dark',\n swapPreview: this.getSwapPreview(index),\n hideHoverEffect: this.state.hideHoverEffect,\n };\n }\n\n handlePageKeyDown = (event: KeyboardEvent) => {\n if (this.asProps.customFocus !== undefined) {\n const itemIndex = this.getCustomFocusItemIndex(this.asProps.customFocus);\n if (this.state.items[itemIndex!]) {\n this.handleItemKeyDown(event, itemIndex!);\n }\n }\n };\n\n attach = ({\n index,\n children,\n node,\n id,\n draggingAllowed,\n }: {\n index: number;\n children: React.ReactNode;\n node: HTMLElement;\n id: string;\n draggingAllowed: boolean;\n }) => {\n this.setState((prevState: State) => {\n if (prevState.items[index]?.children === children && prevState.items[index]?.node === node)\n return prevState;\n const { items } = prevState;\n items[index] = { children, node, id, draggingAllowed };\n return { items: [...items] };\n });\n };\n detach = (index: number) => {\n this.setState((prevState: State) => {\n if (!prevState.items[index]) return prevState;\n const { items } = prevState;\n (items as any)[index] = undefined;\n return { items: [...items] };\n });\n };\n\n getCustomFocusItemIndex = (customFocus: string | number | undefined) => {\n if (customFocus === undefined) return undefined;\n let itemIndex = customFocus;\n if (typeof itemIndex === 'string') {\n itemIndex = this.state.items.findIndex((item) => item.id === itemIndex);\n }\n if (itemIndex === -1 || typeof itemIndex !== 'number') return undefined;\n return itemIndex;\n };\n\n componentDidMount() {\n document.addEventListener('keydown', this.handlePageKeyDown, { capture: true });\n }\n\n componentWillUnmount() {\n document.removeEventListener('keydown', this.handlePageKeyDown, { capture: true });\n }\n\n componentDidUpdate(prevProps: AsProps) {\n if (prevProps.customFocus !== this.asProps.customFocus) {\n const itemIndex = this.getCustomFocusItemIndex(this.asProps.customFocus);\n if (this.state.items[itemIndex!]) this.handleItemFocus(itemIndex!);\n }\n }\n\n render() {\n const { attach, detach } = this;\n const SA11yHint = 'div';\n const { a11yHint } = this.state;\n const context = { attach, detach };\n\n return sstyled(this.asProps.styles)(\n <DragAndDropContext.Provider value={context}>\n {a11yHint && (\n <SA11yHint role='alert' aria-live='assertive'>\n {a11yHint}\n </SA11yHint>\n )}\n <Root render={Box} />\n </DragAndDropContext.Provider>,\n );\n }\n}\n\nconst Draggable = (props: any) => {\n const SDraggable = Root;\n const ref = React.useRef();\n const { attach, detach } = React.useContext(DragAndDropContext);\n const {\n styles,\n placement = 'right',\n noDrag = false,\n index,\n children,\n swapPreview,\n Children,\n id,\n } = props;\n const resolvedChildren = React.useMemo(\n () => (typeof children === 'function' ? children(props) : children),\n [children, props],\n );\n\n useEnhancedEffect(() => {\n attach({ index, children: resolvedChildren, node: ref.current!, id, draggingAllowed: !noDrag });\n return () => detach(index);\n }, [index, resolvedChildren, attach, detach, id]);\n\n return sstyled(styles)(\n <SDraggable render={Box} ref={ref} draggable={!noDrag} tabIndex={0} placement={placement}>\n {swapPreview ? swapPreview : <Children />}\n </SDraggable>,\n );\n};\n\nconst DropZone = (props: any) => {\n const SDropZone = Root;\n const { styles } = props;\n\n return sstyled(styles)(<SDropZone render={DragAndDrop.Draggable} noDrag />);\n};\n\nconst DragAndDrop = createComponent(DragAndDropRoot, {\n Draggable,\n DropZone,\n Dropable: DropZone,\n}) as any;\n\nexport default DragAndDrop;\n"],"mappings":"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"}
1
+ {"version":3,"file":"DragAndDrop.js","names":["React","createComponent","sstyled","Component","Root","Box","localizedMessages","i18nEnhance","useEnhancedEffect","style","_sstyled","insert","noop","DragAndDropContext","createContext","attach","detach","DragAndDropRoot","_Component","_inherits","_super","_createSuper","_this","_classCallCheck","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty","_assertThisInitialized","items","dragging","previewSwap","hideHoverEffect","a11yHint","index","state","currentItem","itemText","node","getAttribute","textContent","getI18nText","asProps","zoneName","zonedItems","filter","i","itemsCount","itemPosition","findIndex","id","setState","prevState","initialItemsRects","map","item","getBoundingClientRect","event","preventDefault","_this$state$dragging","_this$state","itemIndex","rect","clientX","x","width","clientY","y","height","draggingItem","isDropZone","i18nKey","_this$state$items$_th","_this$state$items$_th2","_this$state$items$_th3","draggingAllowed","children","_this$asProps","onDnD","_this$state2","fromNode","fromId","fromIndex","toId","toIndex","_this$asProps$onInser","_this$asProps2","_items$index","onInsertDroppable","_this$asProps$onSwapD","_this$asProps3","_items$index2","onSwapDraggable","key","stopPropagation","handleItemDrop","setTimeout","_this$state$items","focus","handleItemDragStart","handleItemFocus","handleItemKeyDown","customFocus","undefined","getCustomFocusItemIndex","_ref7","_prevState$items$inde","_prevState$items$inde2","_toConsumableArray","_createClass","value","getDraggableProps","_","onDragStart","makeItemDragStartHandler","onDragEnd","handleItemDragEnd","onDragOver","handleItemDragOver","onDragEnter","handleItemDragEnter","onDrop","makeItemDropHandler","onMouseMove","handleItemMouseMove","onKeyDown","makeItemKeyDownHandler","onFocus","makeItemFocusHandler","dropPreview","dark","theme","swapPreview","getSwapPreview","componentDidMount","document","addEventListener","handlePageKeyDown","capture","componentWillUnmount","removeEventListener","componentDidUpdate","prevProps","render","_ref","_ref4","SA11yHint","context","styles","createElement","Provider","cn","_assignProps","i18n","locale","Draggable","props","_ref2","arguments[0]","_ref5","SDraggable","ref","useRef","_React$useContext","useContext","_props$placement","placement","_props$noDrag","noDrag","Children","_props$isDropZone","resolvedChildren","useMemo","current","_objectSpread","_assignProps2","DropZone","_ref3","_ref6","SDropZone","DragAndDrop","_assignProps3","Dropable"],"sources":["../../src/DragAndDrop.tsx"],"sourcesContent":["import React from 'react';\nimport createComponent, { sstyled, Component, Root } from '@semcore/core';\nimport { Box } from '@semcore/flex-box';\nimport { localizedMessages } from './translations/__intergalactic-dynamic-locales';\nimport i18nEnhance from '@semcore/utils/lib/enhances/i18nEnhance';\nimport useEnhancedEffect from '@semcore/utils/lib/use/useEnhancedEffect';\n\nimport style from './style/drag-and-drop.shadow.css';\nimport { DropZoneProps } from './index';\n\ntype AsProps = {\n /**\n * @deprecated don't use this prop\n */\n theme?: 'dark' | 'default';\n /**\n * @deprecated use `onDnD` instead\n */\n onSwapDraggable?: (draggableNode: React.ReactNode, droppableNode: React.ReactNode) => void;\n /**\n * @deprecated use `onDnD` instead\n */\n onInsertDroppable?: (draggableNode: React.ReactNode, droppableNode: React.ReactNode) => void;\n /**\n * Contolled drag and drop handler\n */\n onDnD: (dndData: { fromIndex: number; fromId: string; toIndex: number; toId: string }) => void;\n /**\n * Index of id that indicates item that is currently under the user focus in case of real browser focus cannot be used.\n * When provided, drag and drop listens to whole page keyboard events. Doesn't provide `onCustomFocusChange` callback.\n */\n customFocus?: number | string;\n getI18nText: (messageId: string, values?: { [key: string]: string | number }) => string;\n};\n\ntype AttachDetails = {\n index: number;\n children: React.ReactNode;\n node: HTMLElement;\n id: string;\n draggingAllowed: boolean;\n isDropZone?: boolean;\n zoneName?: string;\n};\n\nconst noop: (...args: any[]) => any = () => {\n /* do nothing */\n};\nconst DragAndDropContext = React.createContext<{\n attach: (details: AttachDetails) => void;\n detach: (index: number) => void;\n}>({\n attach: noop,\n detach: noop,\n});\n\ntype State = {\n items: Array<Omit<AttachDetails, 'index'> | undefined>;\n dragging: null | {\n index: number;\n initialItemsRects: Array<{ x: number; y: number; width: number; height: number } | undefined>;\n };\n previewSwap: number | null;\n hideHoverEffect: boolean;\n a11yHint: string | null;\n};\n\nclass DragAndDropRoot extends Component<AsProps, {}, State> {\n static displayName = 'DragAndDrop';\n static enhance = [i18nEnhance(localizedMessages)];\n static defaultProps = {\n theme: 'default',\n i18n: localizedMessages,\n locale: 'en',\n };\n static style = style;\n\n state: State = {\n items: [],\n dragging: null,\n previewSwap: null,\n hideHoverEffect: false, // https://stackoverflow.com/questions/67118739/hover-effect-reset-when-hovering-over-other-letters\n a11yHint: null,\n };\n\n handleItemDragStart = (index: number) => {\n const { items } = this.state;\n const currentItem = items[index];\n if (!currentItem) return;\n\n const itemText =\n currentItem.node.getAttribute('aria-label') || currentItem.node.textContent || `${index + 1}`;\n\n const { getI18nText } = this.asProps;\n const zoneName = currentItem.zoneName;\n const zonedItems = !zoneName ? items : items.filter((i) => i?.zoneName === zoneName);\n const itemsCount = zonedItems.length;\n const itemPosition = zonedItems.findIndex((i) => i?.id === currentItem.id);\n const a11yHint = getI18nText(zoneName ? 'grabbedWithZone' : 'grabbed', {\n itemText,\n itemPosition: itemPosition + 1,\n itemsCount,\n zoneName: zoneName || '',\n });\n\n this.setState((prevState: State) => ({\n a11yHint: a11yHint,\n dragging: {\n index,\n initialItemsRects: prevState.items.map((item) => item?.node.getBoundingClientRect()),\n },\n }));\n };\n handleItemDragEnd = (event: DragEvent) => {\n event.preventDefault();\n this.setState({\n dragging: null,\n previewSwap: null,\n // hideHoverEffect: true\n });\n };\n handleItemDragOver = (event: DragEvent) => {\n event.preventDefault();\n const { getI18nText } = this.asProps;\n const { items, dragging } = this.state;\n if (!dragging) return;\n const itemIndex = dragging.initialItemsRects.findIndex(\n (rect) =>\n rect &&\n event.clientX > rect.x &&\n event.clientX < rect.x + rect.width &&\n event.clientY > rect.y &&\n event.clientY < rect.y + rect.height,\n );\n const currentItem = items[itemIndex];\n const draggingItem = items[dragging.index];\n if (!currentItem || !draggingItem) return;\n\n const node = currentItem.isDropZone ? draggingItem.node : currentItem.node;\n\n const itemText = node.getAttribute('aria-label') || node.textContent || `${itemIndex + 1}`;\n const zoneName = currentItem.zoneName;\n const zonedItems = !zoneName ? items : items.filter((i) => i?.zoneName === zoneName);\n const itemsCount = zonedItems.length;\n const itemPosition = zonedItems.findIndex((i) => i?.id === currentItem.id);\n\n const i18nKey = !zoneName\n ? 'grabbing'\n : currentItem.isDropZone\n ? 'grabbingJustWithZone'\n : 'grabbingFullWithZone';\n\n const a11yHint = getI18nText(i18nKey, {\n itemText,\n itemPosition: itemPosition + 1,\n itemsCount,\n zoneName: zoneName || '',\n });\n\n if (itemIndex === this.state.dragging?.index) this.setState({ previewSwap: null, a11yHint });\n else this.setState({ previewSwap: itemIndex, a11yHint });\n };\n getSwapPreview = (index: number) => {\n if (!this.state.dragging) return null;\n if (this.state.previewSwap === null) return null;\n if (this.state.items[this.state.previewSwap]?.draggingAllowed === false) return null;\n if (this.state.previewSwap === index)\n return this.state.items[this.state.dragging.index]?.children;\n if (this.state.previewSwap !== null && index === this.state.dragging.index)\n return this.state.items[this.state.previewSwap]?.children;\n };\n handleItemDrop = (index: number) => {\n const { onDnD, getI18nText } = this.asProps;\n if (!onDnD) return;\n\n const { items, dragging } = this.state;\n if (!dragging) return;\n const currentItem = items[index];\n const draggingItem = items[dragging.index];\n if (!currentItem || !draggingItem) return;\n\n const node = currentItem.isDropZone ? draggingItem.node : currentItem.node;\n const itemText = node.getAttribute('aria-label') || node.textContent || `${index + 1}`;\n const zoneName = currentItem.zoneName;\n const zonedItems = !zoneName ? items : items.filter((i) => i?.zoneName === zoneName);\n const itemsCount = zonedItems.length;\n const itemPosition = zonedItems.findIndex((i) => i?.id === currentItem.id);\n\n const i18nKey = !zoneName\n ? 'dropped'\n : currentItem.isDropZone\n ? 'droppedJustWithZone'\n : 'droppedFullWithZone';\n\n const a11yHint = getI18nText(i18nKey, {\n itemText,\n itemPosition: itemPosition + 1,\n itemsCount,\n zoneName: zoneName || '',\n });\n\n this.setState({ a11yHint, dragging: null, previewSwap: null, hideHoverEffect: true });\n if (dragging && items[dragging.index]) {\n const fromNode = items[dragging.index];\n if (fromNode) {\n onDnD({\n fromId: fromNode.id,\n fromIndex: dragging!.index,\n toId: currentItem.id,\n toIndex: index,\n });\n }\n }\n if (!currentItem.draggingAllowed) {\n this.asProps.onInsertDroppable?.(items[dragging!.index]?.children, currentItem.children);\n } else {\n this.asProps.onSwapDraggable?.(items[dragging!.index]?.children, currentItem.children);\n }\n };\n handleItemDragEnter = (event: DragEvent) => {\n event.preventDefault();\n };\n handleItemMouseMove = () => {\n if (!this.state.hideHoverEffect) return;\n this.setState({ hideHoverEffect: false });\n };\n handleItemKeyDown = (event: KeyboardEvent, index: number) => {\n if (event.key === ' ') {\n event.preventDefault();\n event.stopPropagation();\n if (this.state.dragging) {\n const previewSwap = this.state.previewSwap;\n this.handleItemDrop(index);\n this.setState({ dragging: null, previewSwap: null, hideHoverEffect: true });\n setTimeout(() => {\n this.state.items[previewSwap as any]?.node.focus();\n }, 0);\n } else {\n this.handleItemDragStart(index);\n }\n return false;\n } else if (event.key === 'Escape' && this.state.dragging) {\n event.preventDefault();\n event.stopPropagation();\n const { getI18nText } = this.asProps;\n const a11yHint = getI18nText('discarded');\n this.setState({ a11yHint, dragging: null, previewSwap: null, hideHoverEffect: true });\n return false;\n }\n };\n handleItemFocus = (index: number) => {\n if (!this.state.dragging) return;\n this.setState({ previewSwap: index });\n };\n\n makeItemDragStartHandler = (index: number) => () => this.handleItemDragStart(index);\n makeItemDropHandler = (index: number) => () => this.handleItemDrop(index);\n makeItemFocusHandler = (index: number) => () => this.handleItemFocus(index);\n makeItemKeyDownHandler = (index: number) => (event: KeyboardEvent) =>\n this.handleItemKeyDown(event, index);\n\n getDraggableProps(_: any, index: number) {\n return {\n index,\n onDragStart: this.makeItemDragStartHandler(index),\n onDragEnd: this.handleItemDragEnd,\n onDragOver: this.handleItemDragOver,\n onDragEnter: this.handleItemDragEnter,\n onDrop: this.makeItemDropHandler(index),\n onMouseMove: this.handleItemMouseMove,\n onKeyDown: this.makeItemKeyDownHandler(index),\n onFocus: this.makeItemFocusHandler(index),\n dropPreview: index === this.state.previewSwap,\n dark: this.asProps.theme === 'dark',\n swapPreview: this.getSwapPreview(index),\n hideHoverEffect: this.state.hideHoverEffect,\n };\n }\n\n handlePageKeyDown = (event: KeyboardEvent) => {\n if (this.asProps.customFocus !== undefined) {\n const itemIndex = this.getCustomFocusItemIndex(this.asProps.customFocus);\n if (this.state.items[itemIndex!]) {\n this.handleItemKeyDown(event, itemIndex!);\n }\n }\n };\n\n attach = ({\n index,\n children,\n node,\n id,\n draggingAllowed,\n zoneName,\n isDropZone,\n }: AttachDetails) => {\n this.setState((prevState: State) => {\n if (prevState.items[index]?.children === children && prevState.items[index]?.node === node)\n return prevState;\n const { items } = prevState;\n items[index] = { children, node, id, draggingAllowed, zoneName, isDropZone };\n return { items: [...items] };\n });\n };\n detach = (index: number) => {\n this.setState((prevState: State) => {\n if (!prevState.items[index]) return prevState;\n const { items } = prevState;\n items[index] = undefined;\n return { items: [...items] };\n });\n };\n\n getCustomFocusItemIndex = (customFocus: string | number | undefined) => {\n if (customFocus === undefined) return undefined;\n let itemIndex = customFocus;\n if (typeof itemIndex === 'string') {\n itemIndex = this.state.items.findIndex((item) => item?.id === itemIndex);\n }\n if (itemIndex === -1 || typeof itemIndex !== 'number') return undefined;\n return itemIndex;\n };\n\n componentDidMount() {\n document.addEventListener('keydown', this.handlePageKeyDown, { capture: true });\n }\n\n componentWillUnmount() {\n document.removeEventListener('keydown', this.handlePageKeyDown, { capture: true });\n }\n\n componentDidUpdate(prevProps: AsProps) {\n if (prevProps.customFocus !== this.asProps.customFocus) {\n const itemIndex = this.getCustomFocusItemIndex(this.asProps.customFocus);\n if (this.state.items[itemIndex!]) this.handleItemFocus(itemIndex!);\n }\n }\n\n render() {\n const { attach, detach } = this;\n const SA11yHint = 'div';\n const { a11yHint } = this.state;\n const context = { attach, detach };\n\n return sstyled(this.asProps.styles)(\n <DragAndDropContext.Provider value={context}>\n {a11yHint && (\n <SA11yHint role='alert' aria-live='assertive'>\n {a11yHint}\n </SA11yHint>\n )}\n <Root render={Box} />\n </DragAndDropContext.Provider>,\n );\n }\n}\n\nconst Draggable = (props: any) => {\n const SDraggable = Root;\n const ref = React.useRef();\n const { attach, detach } = React.useContext(DragAndDropContext);\n const {\n styles,\n placement = 'right',\n noDrag = false,\n index,\n children,\n swapPreview,\n Children,\n id,\n zoneName,\n isDropZone = false,\n } = props;\n const resolvedChildren = React.useMemo(\n () => (typeof children === 'function' ? children(props) : children),\n [children, props],\n );\n\n useEnhancedEffect(() => {\n attach({\n index,\n children: resolvedChildren,\n node: ref.current!,\n id,\n draggingAllowed: !noDrag,\n zoneName,\n isDropZone,\n });\n return () => detach(index);\n }, [index, resolvedChildren, attach, detach, id]);\n\n return sstyled(styles)(\n <SDraggable render={Box} ref={ref} draggable={!noDrag} tabIndex={0} placement={placement}>\n {swapPreview ? swapPreview : <Children />}\n </SDraggable>,\n );\n};\n\nconst DropZone = (props: DropZoneProps) => {\n const SDropZone = Root;\n const { styles } = props;\n\n return sstyled(styles)(<SDropZone render={DragAndDrop.Draggable} noDrag isDropZone />);\n};\n\nconst DragAndDrop = createComponent(DragAndDropRoot, {\n Draggable,\n DropZone,\n Dropable: DropZone,\n}) as any;\n\nexport default DragAndDrop;\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.js","names":[],"sources":["../../src/index.d.ts"],"sourcesContent":["import { PropGetterFn, UnknownProperties, Intergalactic } from '@semcore/core';\nimport { Box, BoxProps } from '@semcore/flex-box';\n\n/** @deprecated */\nexport interface IDragAndDropProps extends DragAndDropProps, UnknownProperties {}\nexport type DragAndDropProps = BoxProps & {\n /**\n * @deprecated don't use this prop\n */\n theme?: 'dark' | 'default';\n /**\n * @deprecated use `onDnD` instead\n */\n onSwapDraggable?: (draggableNode: React.ReactNode, droppableNode: React.ReactNode) => void;\n /**\n * @deprecated use `onDnD` instead\n */\n onInsertDroppable?: (draggableNode: React.ReactNode, droppableNode: React.ReactNode) => void;\n /**\n * Controlled drag and drop handler\n */\n onDnD: (dndData: { fromIndex: number; fromId: string; toIndex: number; toId: string }) => void;\n /**\n * Index of id that indicates item that is currently under the user focus in case of real browser focus cannot be used.\n * When provided, drag and drop listens to whole page keyboard events. Doesn't provide `onCustomFocusChange` callback.\n */\n customFocus?: number | string;\n locale?: string;\n};\n\n/** @deprecated */\nexport interface IDraggableProps extends DraggableProps, UnknownProperties {}\nexport type DraggableProps = BoxProps & {\n /** Placement of visual drag-and-drop marker\n * @default right\n * */\n placement?: 'top' | 'right' | 'bottom' | 'left' | false;\n /** Disabled DropZone abilities of component\n * @default false\n * */\n noDrop?: boolean;\n /**\n * Used as `fromId` or `toId` in `onDnD` handler.\n */\n id?: string;\n};\n\n/** @deprecated */\nexport interface IDragAndDropContext extends DragAndDropContext, UnknownProperties {}\nexport type DragAndDropContext = {\n getDraggableProps: PropGetterFn;\n getDroppableProps: PropGetterFn;\n};\n\ndeclare const DragAndDrop: Intergalactic.Component<'div', DragAndDropProps, DragAndDropContext> & {\n Draggable: Intergalactic.Component<'div', DraggableProps>;\n DropZone: typeof Box;\n /** @deprecated use `DragAndDrop.DropZone` instead */\n Droppable: typeof Box;\n};\n\nexport default DragAndDrop;\n"],"mappings":""}
1
+ {"version":3,"file":"index.d.js","names":[],"sources":["../../src/index.d.ts"],"sourcesContent":["import { PropGetterFn, UnknownProperties, Intergalactic } from '@semcore/core';\nimport { Box, BoxProps } from '@semcore/flex-box';\n\n/** @deprecated */\nexport interface IDragAndDropProps extends DragAndDropProps, UnknownProperties {}\nexport type DragAndDropProps = BoxProps & {\n /**\n * @deprecated don't use this prop\n */\n theme?: 'dark' | 'default';\n /**\n * @deprecated use `onDnD` instead\n */\n onSwapDraggable?: (draggableNode: React.ReactNode, droppableNode: React.ReactNode) => void;\n /**\n * @deprecated use `onDnD` instead\n */\n onInsertDroppable?: (draggableNode: React.ReactNode, droppableNode: React.ReactNode) => void;\n /**\n * Controlled drag and drop handler\n */\n onDnD: (dndData: { fromIndex: number; fromId: string; toIndex: number; toId: string }) => void;\n /**\n * Index of id that indicates item that is currently under the user focus in case of real browser focus cannot be used.\n * When provided, drag and drop listens to whole page keyboard events. Doesn't provide `onCustomFocusChange` callback.\n */\n customFocus?: number | string;\n locale?: string;\n};\n\n/** @deprecated */\nexport interface IDraggableProps extends DraggableProps, UnknownProperties {}\nexport type DraggableProps = BoxProps & {\n /** Placement of visual drag-and-drop marker\n * @default right\n * */\n placement?: 'top' | 'right' | 'bottom' | 'left' | false;\n /** Disabled DropZone abilities of component\n * @default false\n * */\n noDrop?: boolean;\n /**\n * Used as `fromId` or `toId` in `onDnD` handler.\n */\n id?: string;\n /**\n * Used for add zoneName in a11y hints\n */\n zoneName?: string;\n};\n\n/** @deprecated */\nexport interface IDragAndDropContext extends DragAndDropContext, UnknownProperties {}\nexport type DragAndDropContext = {\n getDraggableProps: PropGetterFn;\n getDroppableProps: PropGetterFn;\n};\n\nexport type DropZoneProps = BoxProps & {\n /**\n * Used for add zoneName in a11y hints\n */\n zoneName?: string;\n};\n\ndeclare const DragAndDrop: Intergalactic.Component<'div', DragAndDropProps, DragAndDropContext> & {\n Draggable: Intergalactic.Component<'div', DraggableProps>;\n DropZone: Intergalactic.Component<typeof Box, DropZoneProps>;\n /** @deprecated use `DragAndDrop.DropZone` instead */\n Droppable: Intergalactic.Component<typeof Box, DropZoneProps>;\n};\n\nexport default DragAndDrop;\n"],"mappings":""}
@@ -2,5 +2,10 @@
2
2
  "grabbed": "{itemText} erfasst, aktuelle Position ist {itemPosition} von {itemsCount}",
3
3
  "grabbing": "Erfasse {itemText}, Ablageposition ist {itemPosition} von {itemsCount}",
4
4
  "dropped": "{itemText} abgelegt, finale Position ist {itemPosition} von {itemsCount}",
5
+ "grabbedWithZone": "{itemText} erfasst, aktuelle Position ist {itemPosition} von {itemsCount} in {zoneName}",
6
+ "grabbingFullWithZone": "Erfasse {itemText}, Ablageposition ist {itemPosition} von {itemsCount} in {zoneName}",
7
+ "grabbingJustWithZone": "Erfasse {itemText}, Ablegen in {zoneName}",
8
+ "droppedFullWithZone": "{itemText} abgelegt, finale Position ist {itemPosition} von {itemsCount} in {zoneName}",
9
+ "droppedJustWithZone": "{itemText} abgelegt in {zoneName}",
5
10
  "discarded": "Ziehen wurde abgebrochen"
6
11
  }
@@ -2,5 +2,10 @@
2
2
  "grabbed": "{itemText} grabbed, current position is {itemPosition} of {itemsCount}",
3
3
  "grabbing": "Grabbing {itemText}, drop position is {itemPosition} of {itemsCount}",
4
4
  "dropped": "{itemText} dropped, final position is {itemPosition} of {itemsCount}",
5
+ "grabbedWithZone": "{itemText} grabbed, current position is {itemPosition} of {itemsCount} in {zoneName}",
6
+ "grabbingFullWithZone": "Grabbing {itemText}, drop position is {itemPosition} of {itemsCount} in {zoneName}",
7
+ "grabbingJustWithZone": "Grabbing {itemText}, drop in {zoneName}",
8
+ "droppedFullWithZone": "{itemText} dropped, final position is {itemPosition} of {itemsCount} in {zoneName}",
9
+ "droppedJustWithZone": "{itemText} dropped in {zoneName}",
5
10
  "discarded": "Dragging was discarded"
6
11
  }
@@ -2,5 +2,10 @@
2
2
  "grabbed": "Ítem {itemText} capturado, la posición actual es {itemPosition} de {itemsCount}",
3
3
  "grabbing": "Ítem {itemText} capturado, la posición para soltar es {itemPosition} de {itemsCount}",
4
4
  "dropped": "Ítem {itemText} soltado, la posición final es {itemPosition} de {itemsCount}",
5
+ "grabbedWithZone": "{itemText} capturado, la posición actual es {itemPosition} de {itemsCount} en {zoneName}",
6
+ "grabbingFullWithZone": "Capturando {itemText}, la posición para soltar es {itemPosition} de {itemsCount} en {zoneName}",
7
+ "grabbingJustWithZone": "Capturando {itemText}, soltar en {zoneName}",
8
+ "droppedFullWithZone": "{itemText} soltado, la posición final es {itemPosition} de {itemsCount} en {zoneName}",
9
+ "droppedJustWithZone": "{itemText} soltado en {zoneName}",
5
10
  "discarded": "Se descartó el arrastre"
6
11
  }
@@ -2,5 +2,10 @@
2
2
  "grabbed": "L’élément « {itemText} » est saisi, la position actuelle est de {itemPosition} sur {itemsCount}",
3
3
  "grabbing": "Saisie de l’élément « {itemText} », dépôt en position {itemPosition} sur {itemsCount}",
4
4
  "dropped": "L’élément « {itemText} » est déposé, la position finale est de {itemPosition} sur {itemsCount}",
5
+ "grabbedWithZone": "L’élément « {itemText} » est saisi, la position actuelle est de {itemPosition} sur {itemsCount} dans {zoneName}",
6
+ "grabbingFullWithZone": "Saisie de l’élément « {itemText} », dépôt en position {itemPosition} sur {itemsCount} dans {zoneName}",
7
+ "grabbingJustWithZone": "L’élement « {itemText} » est saisi et déposé dans {zoneName}",
8
+ "droppedFullWithZone": "L’élément « {itemText} » est déposé, la position finale est de {itemPosition} sur {itemsCount} dans {zoneName}",
9
+ "droppedJustWithZone": "L’élement « {itemText} » est déposé dans {zoneName}",
5
10
  "discarded": "Le glissement a été abandonné"
6
11
  }
@@ -2,5 +2,10 @@
2
2
  "grabbed": "Elemento {itemText} preso, la posizione attuale è {itemPosition} di {itemsCount}",
3
3
  "grabbing": "Stai prendendo l'elemento {itemText}, la posizione di rilascio è {itemPosition} di {itemsCount}",
4
4
  "dropped": "Elemento {itemText} rilasciato, la posizione finale è {itemPosition} di {itemsCount}",
5
+ "grabbedWithZone": "Elemento {itemText} preso, la posizione attuale è {itemPosition} di {itemsCount} nel {zoneName}",
6
+ "grabbingFullWithZone": "Stai prendendo l'elemento {itemText}, la posizione di rilascio è {itemPosition} di {itemsCount} nel {zoneName}",
7
+ "grabbingJustWithZone": "Stai prendendo l'elemento {itemText}, deposito in {zoneName}",
8
+ "droppedFullWithZone": "Elemento {itemText} depositato, la posizione finale è {itemPosition} di {itemsCount} nel {zoneName}",
9
+ "droppedJustWithZone": "{itemText} depositato in {zoneName}",
5
10
  "discarded": "Il trascinamento è stato scartato"
6
11
  }
@@ -2,5 +2,10 @@
2
2
  "grabbed": "{itemText}が選択されており、現在位置は{itemsCount}の{itemPosition}です",
3
3
  "grabbing": "{itemText}が選択されており、ドロップ位置は{itemsCount}の{itemPosition}です",
4
4
  "dropped": "{itemText}がドロップされ、最終位置は{itemsCount}の{itemPosition}になりました",
5
+ "grabbedWithZone": "{itemText} を入手しました。現在の位置は{zoneName} の{itemsCount} の{itemPosition} です。",
6
+ "grabbingFullWithZone": "{itemText} を入手し、ドロップ位置は{zoneName} の{itemsCount} の{itemPosition} です",
7
+ "grabbingJustWithZone": "{itemText} を入手し、{zoneName} にドロップします",
8
+ "droppedFullWithZone": "{itemText} を入手しました。最終位置は{zoneName} の{itemsCount} の{itemPosition} です",
9
+ "droppedJustWithZone": "{itemText} が {zoneName} にドロップしました",
5
10
  "discarded": "ドラッグは破棄されました"
6
11
  }
@@ -2,5 +2,10 @@
2
2
  "grabbed": "'{itemText}' 부분이 선택되었으며 현재 위치는 {itemsCount}개 단어 중 {itemPosition}번째입니다",
3
3
  "grabbing": "선택한 '{itemText}' 부분을 이동할 위치는 {itemsCount}개 단어 중 {itemPosition}번째입니다",
4
4
  "dropped": "'{itemText}' 부분을 이동했으며 최종 위치는 {itemsCount}개 단어 중 {itemPosition}번째입니다",
5
+ "grabbedWithZone": "{itemText} 링크가 확보되었으며, 현재 순위는 {zoneName}에서 {itemsCount}개 중 {itemPosition}위입니다.",
6
+ "grabbingFullWithZone": "확보한 {itemText} 링크의 순위가 하락하여 {zoneName}에서 {itemsCount}개 중 {itemPosition}위입니다.",
7
+ "grabbingJustWithZone": "확보한 {itemText} 링크의 순위가 {zoneName}에서 하락했습니다.",
8
+ "droppedFullWithZone": "{itemText} 링크가 손실되었으며 최종 순위는 {zoneName}에서 {itemsCount}개 중 {itemPosition}위입니다.",
9
+ "droppedJustWithZone": "{itemText} 링크가 {zoneName}에서 손실되었습니다.",
5
10
  "discarded": "드래그에 실패했습니다"
6
11
  }
@@ -2,5 +2,10 @@
2
2
  "grabbed": "{itemText} vastgepakt, huidige positie is {itemPosition} van {itemsCount}",
3
3
  "grabbing": "{itemText} is vastgepakt, nieuwe positie is {itemPosition} van {itemsCount}",
4
4
  "dropped": "{itemText} losgelaten, eindpositie is {itemPosition} van {itemsCount}",
5
+ "grabbedWithZone": "{itemText} vastgepakt, huidige positie is {itemPosition} van {itemsCount} in {zoneName}",
6
+ "grabbingFullWithZone": "{itemText} is vastgepakt, nieuwe positie is {itemPosition} van {itemsCount} in {zoneName}",
7
+ "grabbingJustWithZone": "{itemText} is vastgepakt, nieuwe positie in {zoneName}",
8
+ "droppedFullWithZone": "{itemText} losgelaten, eindpositie is {itemPosition} van {itemsCount} in {zoneName}",
9
+ "droppedJustWithZone": "{itemText} heeft nieuwe positie in {zoneName}",
5
10
  "discarded": "Verslepen genegeerd"
6
11
  }
@@ -2,5 +2,10 @@
2
2
  "grabbed": "Chwycono element {itemText}, bieżąca pozycja to {itemPosition} z {itemsCount}",
3
3
  "grabbing": "Chwytanie elementu {itemText}, pozycja upuszczenia to {itemPosition} z {itemsCount}",
4
4
  "dropped": "Upuszczono element {itemText}, ostateczna pozycja to {itemPosition} z {itemsCount}",
5
+ "grabbedWithZone": "Chwycono element {itemText}, bieżąca pozycja to {itemPosition} z {itemsCount} w strefie {zoneName}",
6
+ "grabbingFullWithZone": "Chwytanie elementu {itemText}, pozycja upuszczenia to {itemPosition} z {itemsCount} w strefie {zoneName}",
7
+ "grabbingJustWithZone": "Chwytanie elementu {itemText}, upuszczenie w strefie {zoneName}",
8
+ "droppedFullWithZone": "Upuszczono element {itemText}, ostateczna pozycja to {itemPosition} z {itemsCount} w strefie {zoneName}",
9
+ "droppedJustWithZone": "Upuszczono element {itemText} w strefie {zoneName}",
5
10
  "discarded": "Przeciąganie zostało odrzucone"
6
11
  }
@@ -2,5 +2,10 @@
2
2
  "grabbed": "Item capturado: {itemText}. Posição atual: {itemPosition} de {itemsCount}.",
3
3
  "grabbing": "Capturando item: {itemText}. Posição para soltar: {itemPosition} de {itemsCount}.",
4
4
  "dropped": "Item solto: {itemText}. Posição final: {itemPosition} de {itemsCount}.",
5
+ "grabbedWithZone": "{itemText} capturado, a posição atual é {itemPosition} de {itemsCount} em {zoneName}",
6
+ "grabbingFullWithZone": "Capturando {itemText}, a posição para soltar é {itemPosition} de {itemsCount} em {zoneName}",
7
+ "grabbingJustWithZone": "Capturando {itemText}, soltar em {zoneName}",
8
+ "droppedFullWithZone": "{itemText} solto, a posição final é {itemPosition} de {itemsCount} em {zoneName}",
9
+ "droppedJustWithZone": "{itemText} solto em {zoneName}",
5
10
  "discarded": "A ação de arrastar foi descartada"
6
11
  }
@@ -2,5 +2,10 @@
2
2
  "grabbed": "{itemText} valdes, nuvarande position är {itemPosition} av {itemsCount}",
3
3
  "grabbing": "Väljer {itemText}, släppt position är {itemPosition} av {itemsCount}",
4
4
  "dropped": "{itemText} släppdes, slutlig position är {itemPosition} av {itemsCount}",
5
+ "grabbedWithZone": "{itemText} valdes, nuvarande position är {itemPosition} av {itemsCount} i {zoneName}",
6
+ "grabbingFullWithZone": "Väljer {itemText}, släppt position är {itemPosition} av {itemsCount} i {zoneName}",
7
+ "grabbingJustWithZone": "Väljer {itemText}, släpp i {zoneName}",
8
+ "droppedFullWithZone": "{itemText} släpptes, slutgiltig position är {itemPosition} av {itemsCount} i {zoneName}",
9
+ "droppedJustWithZone": "{itemText} släpptes i {zoneName}",
5
10
  "discarded": "Dragningen avvisades"
6
11
  }
@@ -2,5 +2,10 @@
2
2
  "grabbed": "{itemText} alındı, mevcut konum {itemPosition}/{itemsCount}",
3
3
  "grabbing": "{itemText} alınıyor, bırakma konumu {itemPosition}/{itemsCount}",
4
4
  "dropped": "{itemText} bırakıldı, son konum {itemPosition}/{itemsCount}",
5
+ "grabbedWithZone": "{itemText} alındı, mevcut konum {zoneName} içinde {itemPosition}/{itemsCount}",
6
+ "grabbingFullWithZone": "{itemText} alınıyor, bırakma konumu {zoneName} içinde {itemPosition}/{itemsCount}",
7
+ "grabbingJustWithZone": "{itemText} alınıyor, {zoneName} içine bırakın",
8
+ "droppedFullWithZone": "{itemText} bırakıldı, son konum {zoneName} içinde {itemPosition}/{itemsCount}",
9
+ "droppedJustWithZone": "{itemText} {zoneName} içine bırakıldı",
5
10
  "discarded": "Sürükleme iptal edildi"
6
11
  }
@@ -2,5 +2,10 @@
2
2
  "grabbed": "Đã chọn {itemText}, vị trí hiện tại là {itemPosition} thuộc {itemsCount}",
3
3
  "grabbing": "Chọn {itemText}, vị trí thả là {itemPosition} thuộc {itemsCount}",
4
4
  "dropped": "Đã thả {itemText}, vị trí cuối cùng là {itemPosition} thuộc {itemsCount}",
5
+ "grabbedWithZone": "Đã chọn {itemText}, vị trí hiện tại là {itemPosition} thuộc {itemsCount} trong {zoneName}",
6
+ "grabbingFullWithZone": "Chọn {itemText}, vị trí thả là {itemPosition} thuộc {itemsCount} trong {zoneName}",
7
+ "grabbingJustWithZone": "Chọn {itemText}, thả vào {zoneName}",
8
+ "droppedFullWithZone": "Đã thả {itemText}, vị trí cuối cùng là {itemPosition} thuộc {itemsCount} trong {zoneName}",
9
+ "droppedJustWithZone": "Đã thả {itemText} vào {zoneName}",
5
10
  "discarded": "Thao tác kéo đã bị loại bỏ"
6
11
  }
@@ -2,5 +2,10 @@
2
2
  "grabbed": "“{itemText}”已抓取,当前位置是 {itemPosition} / {itemsCount}",
3
3
  "grabbing": "正在抓取 {itemText},掉落位置是 {itemPosition} / {itemsCount}",
4
4
  "dropped": "“{itemText}”已掉落,最终位置是 {itemPosition} / {itemsCount}",
5
+ "grabbedWithZone": "“{itemText}”已抓取,当前位置是 {itemPosition} / {itemsCount},在 {zoneName}",
6
+ "grabbingFullWithZone": "正在抓取 {itemText},掉落位置是 {itemPosition} / {itemsCount},在 {zoneName}",
7
+ "grabbingJustWithZone": "正在抓取 {itemText},掉落于 {zoneName}",
8
+ "droppedFullWithZone": "“{itemText}”已抓取,最终位置是 {itemPosition} / {itemsCount},在 {zoneName}",
9
+ "droppedJustWithZone": "{itemText} 掉落于 {zoneName}",
5
10
  "discarded": "拖动已被丢弃"
6
11
  }
@@ -43,6 +43,10 @@ export type DraggableProps = BoxProps & {
43
43
  * Used as `fromId` or `toId` in `onDnD` handler.
44
44
  */
45
45
  id?: string;
46
+ /**
47
+ * Used for add zoneName in a11y hints
48
+ */
49
+ zoneName?: string;
46
50
  };
47
51
 
48
52
  /** @deprecated */
@@ -52,11 +56,18 @@ export type DragAndDropContext = {
52
56
  getDroppableProps: PropGetterFn;
53
57
  };
54
58
 
59
+ export type DropZoneProps = BoxProps & {
60
+ /**
61
+ * Used for add zoneName in a11y hints
62
+ */
63
+ zoneName?: string;
64
+ };
65
+
55
66
  declare const DragAndDrop: Intergalactic.Component<'div', DragAndDropProps, DragAndDropContext> & {
56
67
  Draggable: Intergalactic.Component<'div', DraggableProps>;
57
- DropZone: typeof Box;
68
+ DropZone: Intergalactic.Component<typeof Box, DropZoneProps>;
58
69
  /** @deprecated use `DragAndDrop.DropZone` instead */
59
- Droppable: typeof Box;
70
+ Droppable: Intergalactic.Component<typeof Box, DropZoneProps>;
60
71
  };
61
72
 
62
73
  export default DragAndDrop;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "intergalactic",
3
- "version": "15.52.0-prerelease.0-prerelease-15fe9f5e",
3
+ "version": "15.53.0-prerelease-dfe34e97",
4
4
  "license": "MIT",
5
5
  "dependencies": {
6
6
  "intergalactic-migrate": "0.0.0",
@@ -26,9 +26,9 @@
26
26
  "@babel/runtime": "^7.17.9",
27
27
  "text-mask-core": "5.1.2",
28
28
  "@popperjs/core": "2.11.5",
29
- "unplugin": "1.2.0",
30
29
  "focus-lock": "0.11.3",
31
- "@phytonmk/nano-css": "5.3.7"
30
+ "@phytonmk/nano-css": "5.3.7",
31
+ "unplugin": "1.2.0"
32
32
  },
33
33
  "peerDependencies": {
34
34
  "react": "16.8 - 18",
@@ -19,26 +19,36 @@ var _flexBox = require("intergalactic/flex-box");
19
19
  var _neighborLocation = _interopRequireWildcard(require("intergalactic/neighbor-location"));
20
20
  var _keyboardFocusEnhance = _interopRequireDefault(require("intergalactic/utils/lib/enhances/keyboardFocusEnhance"));
21
21
  var _addonTextChildren = _interopRequireDefault(require("intergalactic/utils/lib/addonTextChildren"));
22
+ var _a11yEnhance = _interopRequireDefault(require("intergalactic/utils/lib/enhances/a11yEnhance"));
22
23
  var _logger = _interopRequireDefault(require("intergalactic/utils/lib/logger"));
23
24
  /*__reshadow-styles__:"./style/pills.shadow.css"*/
24
- var style = ( /*__reshadow_css_start__*/_core.sstyled.insert( /*__inner_css_start__*/".___SPill_u05bj_gg_,.___SPills_u05bj_gg_{display:inline-flex;align-items:center;justify-content:center;outline:0}.___SPills_u05bj_gg_{isolation:isolate}.___SPill_u05bj_gg_{line-height:normal;position:relative;touch-action:manipulation;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none;box-sizing:border-box;padding:0;margin:0;box-shadow:none;-webkit-text-decoration:none;text-decoration:none;-webkit-tap-highlight-color:transparent;overflow:visible;text-align:center;vertical-align:middle;font-family:inherit;cursor:pointer;background:var(--intergalactic-bg-primary-neutral, #ffffff);border:1px solid var(--intergalactic-border-primary, #c4c7cf);border-radius:var(--intergalactic-control-rounded, 6px)}.___SPill_u05bj_gg_::-moz-focus-inner{border:0;padding:0}.___SPill_u05bj_gg_:active,.___SPill_u05bj_gg_:focus{outline:0;-webkit-text-decoration:none;text-decoration:none}@media (hover:hover){.___SPill_u05bj_gg_:hover{outline:0;-webkit-text-decoration:none;text-decoration:none;background:var(--intergalactic-bg-primary-neutral-hover, #f4f5f9)}}.___SPill_u05bj_gg_.__selected_u05bj_gg_{background:var(--intergalactic-control-secondary-info, rgba(0, 143, 248, 0.1));border-color:var(--intergalactic-border-info-active, #006dca);z-index:1}.___SPill_u05bj_gg_.__disabled_u05bj_gg_{cursor:default;pointer-events:none}.___SPill_u05bj_gg_.__disabled_u05bj_gg_>*{opacity:var(--intergalactic-disabled-opacity, 0.3)}.___SPills_u05bj_gg_.__keyboardFocused_u05bj_gg_._behavior_auto_u05bj_gg_,.___SPills_u05bj_gg_.__keyboardFocused_u05bj_gg_._behavior_radio_u05bj_gg_{box-shadow:var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5))}.___SPills_u05bj_gg_.__keyboardFocused_u05bj_gg_._behavior_manual_u05bj_gg_>.___SPill_u05bj_gg_.__keyboardFocused_u05bj_gg_,.___SPills_u05bj_gg_.__keyboardFocused_u05bj_gg_._behavior_tabs_u05bj_gg_>.___SPill_u05bj_gg_.__keyboardFocused_u05bj_gg_{box-shadow:var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5));z-index:1}.___SText_u05bj_gg_{color:var(--intergalactic-text-primary, #191b23);display:inline-flex}.___SAddon_u05bj_gg_{color:var(--intergalactic-text-secondary, #6c6e79);display:inline-flex;align-items:center;justify-content:center}.___SPill_u05bj_gg_._size_m_u05bj_gg_{height:var(--intergalactic-form-control-m, 28px);min-width:var(--intergalactic-form-control-m, 28px);font-size:var(--intergalactic-fs-200, 14px)}.___SPill_u05bj_gg_._size_l_u05bj_gg_ .___SText_u05bj_gg_,.___SPill_u05bj_gg_._size_m_u05bj_gg_ .___SText_u05bj_gg_{margin-left:var(--intergalactic-spacing-2x, 8px);margin-right:var(--intergalactic-spacing-2x, 8px)}.___SPill_u05bj_gg_._size_m_u05bj_gg_ .___SAddon_u05bj_gg_:not(:only-child):first-child{margin-left:var(--intergalactic-spacing-2x, 8px)}.___SPill_u05bj_gg_._size_m_u05bj_gg_ .___SAddon_u05bj_gg_:not(:only-child):last-child{margin-right:var(--intergalactic-spacing-2x, 8px)}.___SPill_u05bj_gg_._size_m_u05bj_gg_ .___SAddon_u05bj_gg_:only-child{margin-left:var(--intergalactic-spacing-2x, 8px);margin-right:var(--intergalactic-spacing-2x, 8px)}.___SPill_u05bj_gg_._size_l_u05bj_gg_{height:var(--intergalactic-form-control-l, 40px);min-width:var(--intergalactic-form-control-l, 40px);font-size:var(--intergalactic-fs-300, 16px)}.___SPill_u05bj_gg_._size_l_u05bj_gg_ .___SAddon_u05bj_gg_:only-child,.___SPill_u05bj_gg_._size_l_u05bj_gg_ .___SText_u05bj_gg_:only-child{margin-left:var(--intergalactic-spacing-3x, 12px);margin-right:var(--intergalactic-spacing-3x, 12px)}.___SPill_u05bj_gg_._size_l_u05bj_gg_ .___SAddon_u05bj_gg_:not(:only-child):first-child{margin-left:var(--intergalactic-spacing-3x, 12px)}.___SPill_u05bj_gg_._size_l_u05bj_gg_ .___SAddon_u05bj_gg_:not(:only-child):last-child{margin-right:var(--intergalactic-spacing-3x, 12px)}.___SPill_u05bj_gg_._neighborLocation_right_u05bj_gg_{border-top-right-radius:0;border-bottom-right-radius:0}.___SPill_u05bj_gg_._neighborLocation_both_u05bj_gg_{border-radius:0;margin-left:-1px}.___SPill_u05bj_gg_._neighborLocation_left_u05bj_gg_{border-top-left-radius:0;border-bottom-left-radius:0;margin-left:-1px}" /*__inner_css_end__*/, "u05bj_gg_") /*__reshadow_css_end__*/, {
25
- "__SPills": "___SPills_u05bj_gg_",
26
- "__SPill": "___SPill_u05bj_gg_",
27
- "_selected": "__selected_u05bj_gg_",
28
- "_keyboardFocused": "__keyboardFocused_u05bj_gg_",
29
- "_behavior_auto": "_behavior_auto_u05bj_gg_",
30
- "_behavior_radio": "_behavior_radio_u05bj_gg_",
31
- "__SText": "___SText_u05bj_gg_",
32
- "__SAddon": "___SAddon_u05bj_gg_",
33
- "_neighborLocation_right": "_neighborLocation_right_u05bj_gg_",
34
- "_neighborLocation_both": "_neighborLocation_both_u05bj_gg_",
35
- "_neighborLocation_left": "_neighborLocation_left_u05bj_gg_",
36
- "_disabled": "__disabled_u05bj_gg_",
37
- "_behavior_manual": "_behavior_manual_u05bj_gg_",
38
- "_behavior_tabs": "_behavior_tabs_u05bj_gg_",
39
- "_size_m": "_size_m_u05bj_gg_",
40
- "_size_l": "_size_l_u05bj_gg_"
25
+ var style = ( /*__reshadow_css_start__*/_core.sstyled.insert( /*__inner_css_start__*/".___SPill_2trc3_gg_,.___SPills_2trc3_gg_{display:inline-flex;align-items:center;justify-content:center;outline:0}.___SPills_2trc3_gg_{isolation:isolate}.___SPill_2trc3_gg_{line-height:normal;position:relative;touch-action:manipulation;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none;box-sizing:border-box;padding:0;margin:0;box-shadow:none;-webkit-text-decoration:none;text-decoration:none;-webkit-tap-highlight-color:transparent;overflow:visible;text-align:center;vertical-align:middle;font-family:inherit;cursor:pointer;background:var(--intergalactic-bg-primary-neutral, #ffffff);border:1px solid var(--intergalactic-border-primary, #c4c7cf);border-radius:var(--intergalactic-control-rounded, 6px)}.___SPill_2trc3_gg_::-moz-focus-inner{border:0;padding:0}.___SPill_2trc3_gg_:active,.___SPill_2trc3_gg_:focus{outline:0;-webkit-text-decoration:none;text-decoration:none}@media (hover:hover){.___SPill_2trc3_gg_:hover{outline:0;-webkit-text-decoration:none;text-decoration:none;background:var(--intergalactic-bg-primary-neutral-hover, #f4f5f9)}}.___SPill_2trc3_gg_.__selected_2trc3_gg_{background:var(--intergalactic-control-secondary-info, rgba(0, 143, 248, 0.1));border-color:var(--intergalactic-border-info-active, #006dca);z-index:1}.___SPill_2trc3_gg_.__disabled_2trc3_gg_{cursor:default;pointer-events:none}.___SPill_2trc3_gg_.__disabled_2trc3_gg_>*{opacity:var(--intergalactic-disabled-opacity, 0.3)}.___SPills_2trc3_gg_>.___SPill_2trc3_gg_.__keyboardFocused_2trc3_gg_{box-shadow:var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5));z-index:1}.___SText_2trc3_gg_{color:var(--intergalactic-text-primary, #191b23);display:inline-flex}.___SAddon_2trc3_gg_{color:var(--intergalactic-text-secondary, #6c6e79);display:inline-flex;align-items:center;justify-content:center}.___SPill_2trc3_gg_._size_m_2trc3_gg_{height:var(--intergalactic-form-control-m, 28px);min-width:var(--intergalactic-form-control-m, 28px);font-size:var(--intergalactic-fs-200, 14px)}.___SPill_2trc3_gg_._size_l_2trc3_gg_ .___SText_2trc3_gg_,.___SPill_2trc3_gg_._size_m_2trc3_gg_ .___SText_2trc3_gg_{margin-left:var(--intergalactic-spacing-2x, 8px);margin-right:var(--intergalactic-spacing-2x, 8px)}.___SPill_2trc3_gg_._size_m_2trc3_gg_ .___SAddon_2trc3_gg_:not(:only-child):first-child{margin-left:var(--intergalactic-spacing-2x, 8px)}.___SPill_2trc3_gg_._size_m_2trc3_gg_ .___SAddon_2trc3_gg_:not(:only-child):last-child{margin-right:var(--intergalactic-spacing-2x, 8px)}.___SPill_2trc3_gg_._size_m_2trc3_gg_ .___SAddon_2trc3_gg_:only-child{margin-left:var(--intergalactic-spacing-2x, 8px);margin-right:var(--intergalactic-spacing-2x, 8px)}.___SPill_2trc3_gg_._size_l_2trc3_gg_{height:var(--intergalactic-form-control-l, 40px);min-width:var(--intergalactic-form-control-l, 40px);font-size:var(--intergalactic-fs-300, 16px)}.___SPill_2trc3_gg_._size_l_2trc3_gg_ .___SAddon_2trc3_gg_:only-child,.___SPill_2trc3_gg_._size_l_2trc3_gg_ .___SText_2trc3_gg_:only-child{margin-left:var(--intergalactic-spacing-3x, 12px);margin-right:var(--intergalactic-spacing-3x, 12px)}.___SPill_2trc3_gg_._size_l_2trc3_gg_ .___SAddon_2trc3_gg_:not(:only-child):first-child{margin-left:var(--intergalactic-spacing-3x, 12px)}.___SPill_2trc3_gg_._size_l_2trc3_gg_ .___SAddon_2trc3_gg_:not(:only-child):last-child{margin-right:var(--intergalactic-spacing-3x, 12px)}.___SPill_2trc3_gg_._neighborLocation_right_2trc3_gg_{border-top-right-radius:0;border-bottom-right-radius:0}.___SPill_2trc3_gg_._neighborLocation_both_2trc3_gg_{border-radius:0;margin-left:-1px}.___SPill_2trc3_gg_._neighborLocation_left_2trc3_gg_{border-top-left-radius:0;border-bottom-left-radius:0;margin-left:-1px}" /*__inner_css_end__*/, "2trc3_gg_") /*__reshadow_css_end__*/, {
26
+ "__SPills": "___SPills_2trc3_gg_",
27
+ "__SPill": "___SPill_2trc3_gg_",
28
+ "_selected": "__selected_2trc3_gg_",
29
+ "_keyboardFocused": "__keyboardFocused_2trc3_gg_",
30
+ "__SText": "___SText_2trc3_gg_",
31
+ "__SAddon": "___SAddon_2trc3_gg_",
32
+ "_neighborLocation_right": "_neighborLocation_right_2trc3_gg_",
33
+ "_neighborLocation_both": "_neighborLocation_both_2trc3_gg_",
34
+ "_neighborLocation_left": "_neighborLocation_left_2trc3_gg_",
35
+ "_disabled": "__disabled_2trc3_gg_",
36
+ "_size_m": "_size_m_2trc3_gg_",
37
+ "_size_l": "_size_l_2trc3_gg_"
41
38
  });
39
+ var optionsA11yEnhance = {
40
+ onNeighborChange: function onNeighborChange(neighborElement, props) {
41
+ if (neighborElement) {
42
+ neighborElement.focus();
43
+ if (props.behavior === 'auto' || props.behavior === 'radio') {
44
+ neighborElement.click();
45
+ }
46
+ }
47
+ },
48
+ childSelector: function childSelector(props) {
49
+ return props.behavior === 'auto' || props.behavior === 'radio' ? ['role', 'radio'] : ['role', 'tab'];
50
+ }
51
+ };
42
52
  var RootPills = /*#__PURE__*/function (_Component) {
43
53
  (0, _inherits2["default"])(RootPills, _Component);
44
54
  var _super = (0, _createSuper2["default"])(RootPills);
@@ -49,13 +59,19 @@ var RootPills = /*#__PURE__*/function (_Component) {
49
59
  args[_key] = arguments[_key];
50
60
  }
51
61
  _this = _super.call.apply(_super, [this].concat(args));
52
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "itemRefs", []);
53
62
  (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "itemValues", []);
54
63
  (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "bindHandlerClick", function (value) {
55
64
  return function (e) {
56
65
  _this.handlers.value(value, e);
57
66
  };
58
67
  });
68
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "bindHandleKeyDown", function (value) {
69
+ return function (event) {
70
+ if (event.key === 'Enter' || event.key === 'Space') {
71
+ _this.handlers.value(value, event);
72
+ }
73
+ };
74
+ });
59
75
  (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "changeIndex", function (startIndex, type) {
60
76
  var selectable = false;
61
77
  while (!selectable && startIndex >= 0 && startIndex < _this.itemValues.length) {
@@ -68,32 +84,6 @@ var RootPills = /*#__PURE__*/function (_Component) {
68
84
  }
69
85
  return startIndex >= 0 && startIndex < _this.itemValues.length ? startIndex : undefined;
70
86
  });
71
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleKeyDown", function (event) {
72
- if (event.key !== 'ArrowLeft' && event.key !== 'ArrowRight') return;
73
- var behavior = _this.asProps.behavior;
74
- if (behavior === 'radio' || behavior === 'auto') {
75
- var selectedIndex = _this.itemValues.findIndex(function (value) {
76
- return value === _this.asProps.value;
77
- });
78
- if (selectedIndex === -1) return;
79
- selectedIndex = _this.changeIndex(selectedIndex, event.key === 'ArrowLeft' ? 'decrement' : 'increment');
80
- if (selectedIndex !== undefined) {
81
- var _this$itemRefs$select;
82
- _this.handlers.value(_this.itemValues[selectedIndex], event);
83
- (_this$itemRefs$select = _this.itemRefs[selectedIndex]) === null || _this$itemRefs$select === void 0 ? void 0 : _this$itemRefs$select.focus();
84
- }
85
- } else {
86
- var focusedIndex = _this.itemRefs.findIndex(function (item) {
87
- return item === document.activeElement;
88
- });
89
- if (focusedIndex === -1) return;
90
- focusedIndex = _this.changeIndex(focusedIndex, event.key === 'ArrowLeft' ? 'decrement' : 'increment');
91
- if (focusedIndex !== undefined) {
92
- var _this$itemRefs$focuse;
93
- (_this$itemRefs$focuse = _this.itemRefs[focusedIndex]) === null || _this$itemRefs$focuse === void 0 ? void 0 : _this$itemRefs$focuse.focus();
94
- }
95
- }
96
- });
97
87
  return _this;
98
88
  }
99
89
  (0, _createClass2["default"])(RootPills, [{
@@ -112,24 +102,23 @@ var RootPills = /*#__PURE__*/function (_Component) {
112
102
  }, {
113
103
  key: "getItemProps",
114
104
  value: function getItemProps(props, index) {
115
- var _this2 = this;
116
105
  var _this$asProps = this.asProps,
117
106
  value = _this$asProps.value,
118
107
  size = _this$asProps.size,
119
108
  disabled = _this$asProps.disabled,
120
- behavior = _this$asProps.behavior;
109
+ behavior = _this$asProps.behavior,
110
+ keyboardFocused = _this$asProps.keyboardFocused;
111
+ var isSelected = value === props.value;
121
112
  this.itemValues[index] = props.value;
122
113
  return {
123
- ref: function ref(node) {
124
- _this2.itemRefs[index] = node;
125
- },
126
114
  index: index,
127
115
  size: size,
128
116
  disabled: disabled,
129
- selected: value === props.value,
117
+ selected: isSelected,
130
118
  behavior: behavior,
131
- tabIndex: behavior === 'tabs' || behavior === 'manual' ? 0 : -1,
132
- onClick: this.bindHandlerClick(props.value)
119
+ tabIndex: isSelected ? 0 : -1,
120
+ onClick: this.bindHandlerClick(props.value),
121
+ onKeyDown: this.bindHandleKeyDown(props.value)
133
122
  };
134
123
  }
135
124
  }, {
@@ -146,8 +135,7 @@ var RootPills = /*#__PURE__*/function (_Component) {
146
135
  behavior = _this$asProps2.behavior;
147
136
  return _ref5 = (0, _core.sstyled)(styles), /*#__PURE__*/_react["default"].createElement(SPills, _ref5.cn("SPills", (0, _objectSpread2["default"])({}, (0, _core.assignProps)({
148
137
  "role": behavior === 'radio' || behavior === 'auto' ? 'radiogroup' : 'tablist',
149
- "aria-disabled": disabled,
150
- "onKeyDown": this.handleKeyDown
138
+ "aria-disabled": disabled
151
139
  }, _ref))), /*#__PURE__*/_react["default"].createElement(_neighborLocation["default"], _ref5.cn("NeighborLocation", {
152
140
  "controlsLength": controlsLength
153
141
  }), /*#__PURE__*/_react["default"].createElement(Children, _ref5.cn("Children", {}))));
@@ -162,11 +150,10 @@ var RootPills = /*#__PURE__*/function (_Component) {
162
150
  return {
163
151
  size: 'm',
164
152
  defaultValue: null,
165
- behavior: behavior !== null && behavior !== void 0 ? behavior : 'auto',
166
- tabIndex: behavior === 'tabs' || behavior === 'manual' ? -1 : 0
153
+ behavior: behavior !== null && behavior !== void 0 ? behavior : 'auto'
167
154
  };
168
155
  });
169
- (0, _defineProperty2["default"])(RootPills, "enhance", [(0, _keyboardFocusEnhance["default"])()]);
156
+ (0, _defineProperty2["default"])(RootPills, "enhance", [(0, _a11yEnhance["default"])(optionsA11yEnhance)]);
170
157
  function Pill(props) {
171
158
  var _ref2 = arguments[0],
172
159
  _ref6;