intergalactic 15.60.1 → 15.61.0-prerelease-5e9c09fb

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 (117) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/base-trigger/lib/cjs/BaseTrigger.js +18 -18
  3. package/base-trigger/lib/cjs/ButtonTrigger.js +3 -3
  4. package/base-trigger/lib/cjs/FilterTrigger.js +7 -7
  5. package/base-trigger/lib/cjs/LinkTrigger.js +12 -12
  6. package/base-trigger/lib/es6/BaseTrigger.js +18 -18
  7. package/base-trigger/lib/es6/ButtonTrigger.js +3 -3
  8. package/base-trigger/lib/es6/FilterTrigger.js +7 -7
  9. package/base-trigger/lib/es6/LinkTrigger.js +12 -12
  10. package/d3-chart/lib/cjs/Area.js +11 -11
  11. package/d3-chart/lib/cjs/Axis.js +14 -14
  12. package/d3-chart/lib/cjs/Bar.js +10 -10
  13. package/d3-chart/lib/cjs/Bubble.js +12 -12
  14. package/d3-chart/lib/cjs/Donut.js +9 -9
  15. package/d3-chart/lib/cjs/Dots.js +8 -8
  16. package/d3-chart/lib/cjs/HorizontalBar.js +10 -10
  17. package/d3-chart/lib/cjs/Hover.js +3 -3
  18. package/d3-chart/lib/cjs/Line.js +9 -9
  19. package/d3-chart/lib/cjs/Plot.js +3 -3
  20. package/d3-chart/lib/cjs/Radar.js +19 -19
  21. package/d3-chart/lib/cjs/RadialTree.js +11 -11
  22. package/d3-chart/lib/cjs/ReferenceLine.js +9 -9
  23. package/d3-chart/lib/cjs/ScatterPlot.js +9 -9
  24. package/d3-chart/lib/cjs/Tooltip.js +9 -9
  25. package/d3-chart/lib/cjs/Venn.js +9 -9
  26. package/d3-chart/lib/cjs/a11y/PlotA11yModule.js +2 -2
  27. package/d3-chart/lib/cjs/a11y/PlotA11yView.js +2 -2
  28. package/d3-chart/lib/cjs/component/ChartLegend/LegendFlex/LegendFlex.js +4 -4
  29. package/d3-chart/lib/cjs/component/ChartLegend/LegendItem/LegendItem.js +17 -17
  30. package/d3-chart/lib/cjs/component/ChartLegend/LegendTable/LegendTable.js +6 -6
  31. package/d3-chart/lib/es6/Area.js +11 -11
  32. package/d3-chart/lib/es6/Axis.js +14 -14
  33. package/d3-chart/lib/es6/Bar.js +10 -10
  34. package/d3-chart/lib/es6/Bubble.js +12 -12
  35. package/d3-chart/lib/es6/Donut.js +9 -9
  36. package/d3-chart/lib/es6/Dots.js +8 -8
  37. package/d3-chart/lib/es6/HorizontalBar.js +10 -10
  38. package/d3-chart/lib/es6/Hover.js +3 -3
  39. package/d3-chart/lib/es6/Line.js +9 -9
  40. package/d3-chart/lib/es6/Plot.js +3 -3
  41. package/d3-chart/lib/es6/Radar.js +19 -19
  42. package/d3-chart/lib/es6/RadialTree.js +11 -11
  43. package/d3-chart/lib/es6/ReferenceLine.js +9 -9
  44. package/d3-chart/lib/es6/ScatterPlot.js +9 -9
  45. package/d3-chart/lib/es6/Tooltip.js +9 -9
  46. package/d3-chart/lib/es6/Venn.js +9 -9
  47. package/d3-chart/lib/es6/a11y/PlotA11yModule.js +2 -2
  48. package/d3-chart/lib/es6/a11y/PlotA11yView.js +2 -2
  49. package/d3-chart/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.js +4 -4
  50. package/d3-chart/lib/es6/component/ChartLegend/LegendItem/LegendItem.js +17 -17
  51. package/d3-chart/lib/es6/component/ChartLegend/LegendTable/LegendTable.js +6 -6
  52. package/date-picker/lib/cjs/components/Calendar.js +21 -21
  53. package/date-picker/lib/cjs/components/DateRangeComparatorAbstract.js +26 -26
  54. package/date-picker/lib/cjs/components/InputTrigger.js +26 -26
  55. package/date-picker/lib/cjs/components/PickerAbstract.js +26 -26
  56. package/date-picker/lib/cjs/components/RangePickerAbstract.js +26 -26
  57. package/date-picker/lib/es6/components/Calendar.js +21 -21
  58. package/date-picker/lib/es6/components/DateRangeComparatorAbstract.js +26 -26
  59. package/date-picker/lib/es6/components/InputTrigger.js +26 -26
  60. package/date-picker/lib/es6/components/PickerAbstract.js +26 -26
  61. package/date-picker/lib/es6/components/RangePickerAbstract.js +26 -26
  62. package/dropdown/lib/cjs/Dropdown.js +2 -2
  63. package/dropdown/lib/es6/Dropdown.js +2 -2
  64. package/dropdown-menu/index.d.ts +9 -0
  65. package/dropdown-menu/lib/cjs/DropdownMenu.js +311 -95
  66. package/dropdown-menu/lib/cjs/DropdownMenu.js.map +1 -1
  67. package/dropdown-menu/lib/cjs/index.d.js.map +1 -1
  68. package/dropdown-menu/lib/cjs/style/dropdown-menu.shadow.css +20 -1
  69. package/dropdown-menu/lib/cjs/styleScrollArea.js +6 -6
  70. package/dropdown-menu/lib/es6/DropdownMenu.js +316 -97
  71. package/dropdown-menu/lib/es6/DropdownMenu.js.map +1 -1
  72. package/dropdown-menu/lib/es6/index.d.js.map +1 -1
  73. package/dropdown-menu/lib/es6/style/dropdown-menu.shadow.css +20 -1
  74. package/dropdown-menu/lib/es6/styleScrollArea.js +6 -6
  75. package/dropdown-menu/lib/types/index.d.ts +9 -0
  76. package/feature-popover/lib/cjs/FeaturePopover.js +10 -10
  77. package/feature-popover/lib/es6/FeaturePopover.js +10 -10
  78. package/format-text/lib/cjs/FormatText.js +5 -5
  79. package/format-text/lib/cjs/style/format-text.shadow.css +3 -1
  80. package/format-text/lib/es6/FormatText.js +5 -5
  81. package/format-text/lib/es6/style/format-text.shadow.css +3 -1
  82. package/link/lib/cjs/Link.js +12 -12
  83. package/link/lib/cjs/style/link.shadow.css +4 -6
  84. package/link/lib/es6/Link.js +12 -12
  85. package/link/lib/es6/style/link.shadow.css +4 -6
  86. package/package.json +3 -3
  87. package/popper/lib/cjs/Popper.js +6 -6
  88. package/popper/lib/es6/Popper.js +6 -6
  89. package/select/lib/cjs/InputSearch.js +6 -6
  90. package/select/lib/cjs/Select.js +9 -9
  91. package/select/lib/es6/InputSearch.js +6 -6
  92. package/select/lib/es6/Select.js +9 -9
  93. package/tag/index.d.ts +35 -33
  94. package/tag/lib/cjs/Tag.js +89 -56
  95. package/tag/lib/cjs/Tag.js.map +1 -1
  96. package/tag/lib/cjs/index.d.js.map +1 -1
  97. package/tag/lib/cjs/style/tag.shadow.css +27 -2
  98. package/tag/lib/es6/Tag.js +89 -56
  99. package/tag/lib/es6/Tag.js.map +1 -1
  100. package/tag/lib/es6/index.d.js.map +1 -1
  101. package/tag/lib/es6/style/tag.shadow.css +27 -2
  102. package/tag/lib/types/index.d.ts +35 -33
  103. package/time-picker/lib/cjs/TimePicker.js +12 -12
  104. package/time-picker/lib/es6/TimePicker.js +12 -12
  105. package/tooltip/lib/cjs/Tooltip.js +7 -7
  106. package/tooltip/lib/es6/Tooltip.js +7 -7
  107. package/utils/lib/themes/auto.css +6 -6
  108. package/utils/lib/themes/dark.css +0 -2
  109. package/utils/lib/themes/dark.json +0 -1
  110. package/utils/lib/themes/default.css +6 -4
  111. package/utils/lib/themes/default.json +3 -2
  112. package/utils/lib/themes/light.css +6 -4
  113. package/utils/lib/themes/light.json +3 -2
  114. package/utils/lib/use/useFocusLock.js +5 -0
  115. package/utils/lib/use/useFocusLock.js.map +1 -1
  116. package/utils/lib/use/useFocusLock.mjs +5 -0
  117. package/utils/lib/use/useFocusLock.mjs.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Tag.js","names":["_core","_interopRequireWildcard","require","_react","_interopRequireDefault","_flexBox","_addonTextChildren","_logger","_m","_intergalacticDynamicLocales","_i18nEnhance","_resolveColorEnhance","_uniqueID","_assignProps6","style","sstyled","insert","legacyThemeRecommendedMigration","primary","muted","info","success","warning","danger","secondary","RootTag","_Component","_inherits2","_super","_createSuper2","props","_legacyThemeRecommend","_this","_classCallCheck2","call","_defineProperty2","_assertThisInitialized2","e","_this$asProps$onClick","_this$asProps","key","preventDefault","asProps","onClick","logger","warn","use","concat","theme","Tag","displayName","_createClass2","value","getCircleProps","size","getCloseProps","_this$asProps2","getI18nText","id","uid","tagId","render","_ref","_ref6","STag","Box","_this$asProps3","Children","styles","color","interactive","disabled","addonLeft","addonRight","resolveColor","outerId","onKeyDown","createElement","cn","_objectSpread2","assignProps","undefined","callAllEventHandlers","handleKeyDown","Addon","tag","addonTextChildren","Text","Component","i18nEnhance","localizedMessages","uniqueIDEnhancement","resolveColorEnhance","i18n","locale","_ref2","arguments[0]","_ref7","SText","Close","_ref3","_ref8","SClose","event","code","CloseM","_ref4","_ref9","SAddon","Circle","_ref5","_ref10","SCircle","createComponent","_default","exports"],"sources":["../../src/Tag.jsx"],"sourcesContent":["import React from 'react';\nimport createComponent, { Component, sstyled, Root } from '@semcore/core';\nimport { Box } from '@semcore/flex-box';\nimport addonTextChildren from '@semcore/utils/lib/addonTextChildren';\nimport logger from '@semcore/utils/lib/logger';\nimport CloseM from '@semcore/icon/Close/m';\nimport { localizedMessages } from './translations/__intergalactic-dynamic-locales';\nimport i18nEnhance from '@semcore/utils/lib/enhances/i18nEnhance';\nimport resolveColorEnhance from '@semcore/utils/lib/enhances/resolveColorEnhance';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\n\nimport style from './style/tag.shadow.css';\nimport { callAllEventHandlers } from '@semcore/utils/lib/assignProps';\n\nconst legacyThemeRecommendedMigration = {\n primary: {\n muted: 'gray-500',\n info: 'blue-500',\n success: 'green-500',\n warning: 'orange-500',\n danger: 'red-500',\n },\n secondary: {\n muted: 'gray-50',\n },\n};\n\nclass RootTag extends Component {\n static displayName = 'Tag';\n static style = style;\n static enhance = [i18nEnhance(localizedMessages), uniqueIDEnhancement(), resolveColorEnhance()];\n static defaultProps = {\n theme: 'primary',\n color: 'gray-500',\n size: 'm',\n i18n: localizedMessages,\n locale: 'en',\n };\n\n constructor(props) {\n super(props);\n\n logger.warn(\n props.use,\n `Property 'use' is deprecated, replace property to \"theme='${props.use}' color='${\n legacyThemeRecommendedMigration[props.use]?.[props.theme]\n }'\"`,\n props['data-ui-name'] || Tag.displayName,\n );\n }\n\n getCircleProps() {\n const { size } = this.asProps;\n return { size };\n }\n\n getCloseProps() {\n const { getI18nText, id, uid } = this.asProps;\n\n return { getI18nText, tagId: id || `igc-${uid}-tag`, uid };\n }\n\n handleKeyDown = (e) => {\n switch (e.key) {\n case ' ':\n case 'Enter':\n e.preventDefault();\n this.asProps.onClick?.(e);\n break;\n }\n };\n\n render() {\n const STag = Root;\n const {\n Children,\n styles,\n color,\n interactive,\n disabled,\n addonLeft,\n addonRight,\n resolveColor,\n onClick,\n id: outerId,\n uid,\n onKeyDown,\n } = this.asProps;\n const id = outerId || `igc-${uid}-tag`;\n\n return sstyled(styles)(\n <STag\n render={Box}\n id={id}\n use:interactive={!disabled && interactive}\n tabIndex={interactive && onClick ? 0 : undefined}\n tag-color={resolveColor(color)}\n onKeyDown={callAllEventHandlers(onKeyDown, this.handleKeyDown)}\n >\n {addonLeft ? <Tag.Addon tag={addonLeft} /> : null}\n {addonTextChildren(Children, Tag.Text, Tag.Addon)}\n {addonRight ? <Tag.Addon tag={addonRight} /> : null}\n </STag>,\n );\n }\n}\n\nfunction Text(props) {\n const SText = Root;\n const { styles } = props;\n return sstyled(styles)(<SText render={Box} tag='span' />);\n}\n\nfunction Close(props) {\n const SClose = Root;\n const { styles, getI18nText, tagId, uid } = props;\n\n function onKeyDown(event) {\n if (props.onKeyDown) {\n return props.onKeyDown(event);\n }\n\n if (props.onClick && (event.code === 'Enter' || event.code === 'Space')) {\n event.preventDefault();\n props.onClick(event);\n }\n }\n\n return sstyled(styles)(\n <SClose\n render={Box}\n tag={CloseM}\n interactive\n id={`igc-${uid}-tag-clear`}\n aria-labelledby={`igc-${uid}-tag-clear ${tagId}`}\n aria-label={getI18nText('remove')}\n onKeyDown={onKeyDown}\n />,\n );\n}\n\nfunction Addon(props) {\n const SAddon = Root;\n const { styles } = props;\n return sstyled(styles)(<SAddon render={Box} tag='span' />);\n}\n\nfunction Circle(props) {\n const SCircle = Root;\n const { styles } = props;\n return sstyled(styles)(<SCircle render={Box} tag='span' />);\n}\n\nconst Tag = createComponent(RootTag, {\n Text,\n Addon,\n Close,\n Circle,\n});\n\nexport default Tag;\n"],"mappings":"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"}
1
+ {"version":3,"file":"Tag.js","names":["_core","_interopRequireWildcard","require","_react","_interopRequireDefault","_flexBox","_addonTextChildren","_logger","_m","_intergalacticDynamicLocales","_i18nEnhance","_resolveColorEnhance","_uniqueID","_keyboardFocusEnhance","_assignProps6","style","sstyled","insert","legacyThemeRecommendedMigration","primary","muted","info","success","warning","danger","secondary","RootTag","_Component","_inherits2","_super","_createSuper2","props","_legacyThemeRecommend","_this","_classCallCheck2","call","_defineProperty2","_assertThisInitialized2","focusable","setState","event","code","asProps","onClick","preventDefault","logger","warn","use","concat","theme","Tag","displayName","_createClass2","key","value","getCircleProps","size","getTextProps","interactive","id","uid","state","tabIndex","getCloseProps","getI18nText","onMount","handleCloseMount","onUnmount","handleCloseUnmount","render","_ref","_ref6","STag","Box","_this$asProps","Children","styles","color","disabled","addonLeft","addonRight","resolveColor","outerId","onKeyDown","createElement","cn","_objectSpread2","assignProps","undefined","callAllEventHandlers","handleKeyDown","Addon","tag","addonTextChildren","Text","Component","i18nEnhance","localizedMessages","uniqueIDEnhancement","resolveColorEnhance","keyboardFocusEnhance","i18n","locale","_ref2","arguments[0]","_ref7","SText","enhance","Close","_ref3","_ref8","SClose","React","useEffect","_props$onMount","_props$onUnmount","useCallback","CloseM","_ref4","_ref9","SAddon","Circle","_ref5","_ref10","SCircle","createComponent","_default","exports"],"sources":["../../src/Tag.jsx"],"sourcesContent":["import React from 'react';\nimport createComponent, { Component, sstyled, Root } from '@semcore/core';\nimport { Box } from '@semcore/flex-box';\nimport addonTextChildren from '@semcore/utils/lib/addonTextChildren';\nimport logger from '@semcore/utils/lib/logger';\nimport CloseM from '@semcore/icon/Close/m';\nimport { localizedMessages } from './translations/__intergalactic-dynamic-locales';\nimport i18nEnhance from '@semcore/utils/lib/enhances/i18nEnhance';\nimport resolveColorEnhance from '@semcore/utils/lib/enhances/resolveColorEnhance';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\nimport keyboardFocusEnhance from '@semcore/utils/lib/enhances/keyboardFocusEnhance';\n\nimport style from './style/tag.shadow.css';\nimport { callAllEventHandlers } from '@semcore/utils/lib/assignProps';\n\nconst legacyThemeRecommendedMigration = {\n primary: {\n muted: 'gray-500',\n info: 'blue-500',\n success: 'green-500',\n warning: 'orange-500',\n danger: 'red-500',\n },\n secondary: {\n muted: 'gray-50',\n },\n};\n\nclass RootTag extends Component {\n static displayName = 'Tag';\n static style = style;\n static enhance = [\n i18nEnhance(localizedMessages),\n uniqueIDEnhancement(),\n resolveColorEnhance(),\n keyboardFocusEnhance(),\n ];\n static defaultProps = {\n theme: 'primary',\n color: 'gray-500',\n size: 'm',\n i18n: localizedMessages,\n locale: 'en',\n };\n state = {\n focusable: 'container',\n };\n\n constructor(props) {\n super(props);\n\n logger.warn(\n props.use,\n `Property 'use' is deprecated, replace property to \"theme='${props.use}' color='${\n legacyThemeRecommendedMigration[props.use]?.[props.theme]\n }'\"`,\n props['data-ui-name'] || Tag.displayName,\n );\n }\n\n getCircleProps() {\n const { size } = this.asProps;\n return { size };\n }\n\n getTextProps() {\n const { interactive } = this.asProps;\n const id = this.asProps.id || `igc-${this.asProps.uid}-tag`;\n const { focusable } = this.state;\n\n return {\n tabIndex: focusable === 'text' && interactive ? 0 : -1,\n id: `${id}-text`,\n };\n }\n handleCloseMount = () => {\n this.setState({ focusable: 'text' });\n };\n handleCloseUnmount = () => {\n this.setState({ focusable: 'container' });\n };\n getCloseProps() {\n const { getI18nText } = this.asProps;\n const id = this.asProps.id || `igc-${this.asProps.uid}-tag`;\n\n return {\n getI18nText,\n id: `${id}-clear`,\n 'aria-labelledby': `${id}-clear ${id}-text`,\n 'aria-label': getI18nText('remove'),\n 'aria-hidden': 'true',\n onMount: this.handleCloseMount,\n onUnmount: this.handleCloseUnmount,\n };\n }\n\n handleKeyDown = (event) => {\n switch (event.code) {\n case 'Space':\n case 'Enter':\n if (this.asProps.onClick) {\n event.preventDefault();\n this.asProps.onClick(event);\n }\n break;\n }\n };\n\n render() {\n const STag = Root;\n const {\n Children,\n styles,\n color,\n interactive,\n disabled,\n addonLeft,\n addonRight,\n resolveColor,\n id: outerId,\n uid,\n onKeyDown,\n } = this.asProps;\n const { focusable } = this.state;\n const id = outerId || `igc-${uid}-tag`;\n\n return sstyled(styles)(\n <STag\n render={Box}\n id={id}\n use:interactive={!disabled && interactive}\n role={interactive ? 'button' : undefined}\n tag-color={resolveColor(color)}\n onKeyDown={callAllEventHandlers(onKeyDown, this.handleKeyDown)}\n use:tabIndex={interactive && focusable === 'container' ? 0 : -1}\n >\n {addonLeft ? <Tag.Addon tag={addonLeft} /> : null}\n {addonTextChildren(Children, Tag.Text, Tag.Addon)}\n {addonRight ? <Tag.Addon tag={addonRight} /> : null}\n </STag>,\n );\n }\n}\n\nfunction Text(props) {\n const SText = Root;\n const { styles } = props;\n return sstyled(styles)(<SText render={Box} tag='span' />);\n}\nText.enhance = [keyboardFocusEnhance()];\n\nfunction Close(props) {\n const SClose = Root;\n const { styles } = props;\n\n React.useEffect(() => {\n props.onMount?.();\n return () => props.onUnmount?.();\n }, []);\n\n const onKeyDown = React.useCallback(\n (event) => {\n if (props.onKeyDown) {\n return props.onKeyDown(event);\n }\n\n if (props.onClick && (event.code === 'Enter' || event.code === 'Space')) {\n event.preventDefault();\n props.onClick(event);\n }\n },\n [props.onKeyDown, props.onClick],\n );\n\n return sstyled(styles)(<SClose render={Box} tag={CloseM} interactive onKeyDown={onKeyDown} />);\n}\n\nfunction Addon(props) {\n const SAddon = Root;\n const { styles } = props;\n return sstyled(styles)(<SAddon render={Box} tag='span' />);\n}\n\nfunction Circle(props) {\n const SCircle = Root;\n const { styles } = props;\n return sstyled(styles)(<SCircle render={Box} tag='span' />);\n}\n\nconst Tag = createComponent(RootTag, {\n Text,\n Addon,\n Close,\n Circle,\n});\n\nexport default Tag;\n"],"mappings":";;;;;;;;;;;;;;;AACA,IAAAA,KAAA,GAAAC,uBAAA,CAAAC,OAAA;AADA,IAAAC,MAAA,GAAAC,sBAAA,CAAAF,OAAA;AAEA,IAAAG,QAAA,GAAAH,OAAA;AACA,IAAAI,kBAAA,GAAAF,sBAAA,CAAAF,OAAA;AACA,IAAAK,OAAA,GAAAH,sBAAA,CAAAF,OAAA;AACA,IAAAM,EAAA,GAAAJ,sBAAA,CAAAF,OAAA;AACA,IAAAO,4BAAA,GAAAP,OAAA;AACA,IAAAQ,YAAA,GAAAN,sBAAA,CAAAF,OAAA;AACA,IAAAS,oBAAA,GAAAP,sBAAA,CAAAF,OAAA;AACA,IAAAU,SAAA,GAAAR,sBAAA,CAAAF,OAAA;AACA,IAAAW,qBAAA,GAAAT,sBAAA,CAAAF,OAAA;AAGA,IAAAY,aAAA,GAAAZ,OAAA;AAAsE;AAAA,IAAAa,KAAA,+BAAAf,KAAA,CAAAgB,OAAA,CAAAC,MAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;AAAA;AAEtE,IAAMC,+BAA+B,GAAG;EACtCC,OAAO,EAAE;IACPC,KAAK,EAAE,UAAU;IACjBC,IAAI,EAAE,UAAU;IAChBC,OAAO,EAAE,WAAW;IACpBC,OAAO,EAAE,YAAY;IACrBC,MAAM,EAAE;EACV,CAAC;EACDC,SAAS,EAAE;IACTL,KAAK,EAAE;EACT;AACF,CAAC;AAAC,IAEIM,OAAO,0BAAAC,UAAA;EAAA,IAAAC,UAAA,aAAAF,OAAA,EAAAC,UAAA;EAAA,IAAAE,MAAA,OAAAC,aAAA,aAAAJ,OAAA;EAoBX,SAAAA,QAAYK,KAAK,EAAE;IAAA,IAAAC,qBAAA;IAAA,IAAAC,KAAA;IAAA,IAAAC,gBAAA,mBAAAR,OAAA;IACjBO,KAAA,GAAAJ,MAAA,CAAAM,IAAA,OAAMJ,KAAK;IAAE,IAAAK,gBAAA,iBAAAC,uBAAA,aAAAJ,KAAA,YALP;MACNK,SAAS,EAAE;IACb,CAAC;IAAA,IAAAF,gBAAA,iBAAAC,uBAAA,aAAAJ,KAAA,uBA6BkB,YAAM;MACvBA,KAAA,CAAKM,QAAQ,CAAC;QAAED,SAAS,EAAE;MAAO,CAAC,CAAC;IACtC,CAAC;IAAA,IAAAF,gBAAA,iBAAAC,uBAAA,aAAAJ,KAAA,yBACoB,YAAM;MACzBA,KAAA,CAAKM,QAAQ,CAAC;QAAED,SAAS,EAAE;MAAY,CAAC,CAAC;IAC3C,CAAC;IAAA,IAAAF,gBAAA,iBAAAC,uBAAA,aAAAJ,KAAA,oBAgBe,UAACO,KAAK,EAAK;MACzB,QAAQA,KAAK,CAACC,IAAI;QAChB,KAAK,OAAO;QACZ,KAAK,OAAO;UACV,IAAIR,KAAA,CAAKS,OAAO,CAACC,OAAO,EAAE;YACxBH,KAAK,CAACI,cAAc,EAAE;YACtBX,KAAA,CAAKS,OAAO,CAACC,OAAO,CAACH,KAAK,CAAC;UAC7B;UACA;MAAM;IAEZ,CAAC;IAvDCK,kBAAM,CAACC,IAAI,CACTf,KAAK,CAACgB,GAAG,gEAAAC,MAAA,CACoDjB,KAAK,CAACgB,GAAG,eAAAC,MAAA,EAAAhB,qBAAA,GACpEd,+BAA+B,CAACa,KAAK,CAACgB,GAAG,CAAC,cAAAf,qBAAA,uBAA1CA,qBAAA,CAA6CD,KAAK,CAACkB,KAAK,CAAC,UAE3DlB,KAAK,CAAC,cAAc,CAAC,IAAImB,GAAG,CAACC,WAAW,CACzC;IAAC,OAAAlB,KAAA;EACJ;EAAC,IAAAmB,aAAA,aAAA1B,OAAA;IAAA2B,GAAA;IAAAC,KAAA,EAED,SAAAC,eAAA,EAAiB;MACf,IAAQC,IAAI,GAAK,IAAI,CAACd,OAAO,CAArBc,IAAI;MACZ,OAAO;QAAEA,IAAI,EAAJA;MAAK,CAAC;IACjB;EAAC;IAAAH,GAAA;IAAAC,KAAA,EAED,SAAAG,aAAA,EAAe;MACb,IAAQC,WAAW,GAAK,IAAI,CAAChB,OAAO,CAA5BgB,WAAW;MACnB,IAAMC,EAAE,GAAG,IAAI,CAACjB,OAAO,CAACiB,EAAE,WAAAX,MAAA,CAAW,IAAI,CAACN,OAAO,CAACkB,GAAG,SAAM;MAC3D,IAAQtB,SAAS,GAAK,IAAI,CAACuB,KAAK,CAAxBvB,SAAS;MAEjB,OAAO;QACLwB,QAAQ,EAAExB,SAAS,KAAK,MAAM,IAAIoB,WAAW,GAAG,CAAC,GAAG,CAAC,CAAC;QACtDC,EAAE,KAAAX,MAAA,CAAKW,EAAE;MACX,CAAC;IACH;EAAC;IAAAN,GAAA;IAAAC,KAAA,EAOD,SAAAS,cAAA,EAAgB;MACd,IAAQC,WAAW,GAAK,IAAI,CAACtB,OAAO,CAA5BsB,WAAW;MACnB,IAAML,EAAE,GAAG,IAAI,CAACjB,OAAO,CAACiB,EAAE,WAAAX,MAAA,CAAW,IAAI,CAACN,OAAO,CAACkB,GAAG,SAAM;MAE3D,OAAO;QACLI,WAAW,EAAXA,WAAW;QACXL,EAAE,KAAAX,MAAA,CAAKW,EAAE,WAAQ;QACjB,iBAAiB,KAAAX,MAAA,CAAKW,EAAE,aAAAX,MAAA,CAAUW,EAAE,UAAO;QAC3C,YAAY,EAAEK,WAAW,CAAC,QAAQ,CAAC;QACnC,aAAa,EAAE,MAAM;QACrBC,OAAO,EAAE,IAAI,CAACC,gBAAgB;QAC9BC,SAAS,EAAE,IAAI,CAACC;MAClB,CAAC;IACH;EAAC;IAAAf,GAAA;IAAAC,KAAA,EAcD,SAAAe,OAAA,EAAS;MAAA,IAAAC,IAAA,QAAA5B,OAAA;QAAA6B,KAAA;MACP,IAAMC,IAAI,GAmBEC,YAAG;MAlBf,IAAAC,aAAA,GAYI,IAAI,CAAChC,OAAO;QAXdiC,QAAQ,GAAAD,aAAA,CAARC,QAAQ;QACRC,MAAM,GAAAF,aAAA,CAANE,MAAM;QACNC,KAAK,GAAAH,aAAA,CAALG,KAAK;QACLnB,WAAW,GAAAgB,aAAA,CAAXhB,WAAW;QACXoB,QAAQ,GAAAJ,aAAA,CAARI,QAAQ;QACRC,SAAS,GAAAL,aAAA,CAATK,SAAS;QACTC,UAAU,GAAAN,aAAA,CAAVM,UAAU;QACVC,YAAY,GAAAP,aAAA,CAAZO,YAAY;QACRC,OAAO,GAAAR,aAAA,CAAXf,EAAE;QACFC,GAAG,GAAAc,aAAA,CAAHd,GAAG;QACHuB,SAAS,GAAAT,aAAA,CAATS,SAAS;MAEX,IAAQ7C,SAAS,GAAK,IAAI,CAACuB,KAAK,CAAxBvB,SAAS;MACjB,IAAMqB,EAAE,GAAGuB,OAAO,WAAAlC,MAAA,CAAWY,GAAG,SAAM;MAEtC,OAAAW,KAAA,GAAO,IAAAvD,aAAO,EAAC4D,MAAM,CAAC,eACpBzE,MAAA,YAAAiF,aAAA,CAACZ,IAAI,EAAAD,KAAA,CAAAc,EAAA,aAAAC,cAAA,qBAAAtF,KAAA,CAAAuF,WAAA;QAAA,MAEC5B,EAAE;QAAA,mBACW,CAACmB,QAAQ,IAAIpB,WAAW;QAAA,QACnCA,WAAW,GAAG,QAAQ,GAAG8B,SAAS;QAAA,aAC7BP,YAAY,CAACJ,KAAK,CAAC;QAAA,aACnB,IAAAY,kCAAoB,EAACN,SAAS,EAAE,IAAI,CAACO,aAAa,CAAC;QAAA,gBAChDhC,WAAW,IAAIpB,SAAS,KAAK,WAAW,GAAG,CAAC,GAAG,CAAC;MAAC,GAAAgC,IAAA,KAE9DS,SAAS,gBAAG5E,MAAA,YAAAiF,aAAA,CAAClC,GAAG,CAACyC,KAAK;QAACC,GAAG,EAAEb;MAAU,EAAG,GAAG,IAAI,EAChD,IAAAc,6BAAiB,EAAClB,QAAQ,EAAEzB,GAAG,CAAC4C,IAAI,EAAE5C,GAAG,CAACyC,KAAK,CAAC,EAChDX,UAAU,gBAAG7E,MAAA,YAAAiF,aAAA,CAAClC,GAAG,CAACyC,KAAK;QAACC,GAAG,EAAEZ;MAAW,EAAG,GAAG,IAAI,CAC9C;IAEX;EAAC;EAAA,OAAAtD,OAAA;AAAA,EAjHmBqE,eAAS;AAAA,IAAA3D,gBAAA,aAAzBV,OAAO,iBACU,KAAK;AAAA,IAAAU,gBAAA,aADtBV,OAAO,WAEIX,KAAK;AAAA,IAAAqB,gBAAA,aAFhBV,OAAO,aAGM,CACf,IAAAsE,uBAAW,EAACC,8CAAiB,CAAC,EAC9B,IAAAC,oBAAmB,GAAE,EACrB,IAAAC,+BAAmB,GAAE,EACrB,IAAAC,gCAAoB,GAAE,CACvB;AAAA,IAAAhE,gBAAA,aARGV,OAAO,kBASW;EACpBuB,KAAK,EAAE,SAAS;EAChB4B,KAAK,EAAE,UAAU;EACjBrB,IAAI,EAAE,GAAG;EACT6C,IAAI,EAAEJ,8CAAiB;EACvBK,MAAM,EAAE;AACV,CAAC;AAqGH,SAASR,IAAIA,CAAC/D,KAAK,EAAE;EAAA,IAAAwE,KAAA,GAAAC,YAAA;IAAAC,KAAA;EACnB,IAAMC,KAAK,GAE2BjC,YAAG;EADzC,IAAQG,MAAM,GAAK7C,KAAK,CAAhB6C,MAAM;EACd,OAAA6B,KAAA,GAAO,IAAAzF,aAAO,EAAC4D,MAAM,CAAC,eAACzE,MAAA,YAAAiF,aAAA,CAACsB,KAAK,EAAAD,KAAA,CAAApB,EAAA,cAAAC,cAAA,qBAAAtF,KAAA,CAAAuF,WAAA;IAAA,OAAkB;EAAM,GAAAgB,KAAA,IAAG;AAC1D;AACAT,IAAI,CAACa,OAAO,GAAG,CAAC,IAAAP,gCAAoB,GAAE,CAAC;AAEvC,SAASQ,KAAKA,CAAC7E,KAAK,EAAE;EAAA,IAAA8E,KAAA,GAAAL,YAAA;IAAAM,KAAA;EACpB,IAAMC,MAAM,GAsB2BtC,YAAG;EArB1C,IAAQG,MAAM,GAAK7C,KAAK,CAAhB6C,MAAM;EAEdoC,iBAAK,CAACC,SAAS,CAAC,YAAM;IAAA,IAAAC,cAAA;IACpB,CAAAA,cAAA,GAAAnF,KAAK,CAACkC,OAAO,cAAAiD,cAAA,uBAAbA,cAAA,CAAA/E,IAAA,CAAAJ,KAAK,CAAY;IACjB,OAAO;MAAA,IAAAoF,gBAAA;MAAA,QAAAA,gBAAA,GAAMpF,KAAK,CAACoC,SAAS,cAAAgD,gBAAA,uBAAfA,gBAAA,CAAAhF,IAAA,CAAAJ,KAAK,CAAc;IAAA;EAClC,CAAC,EAAE,EAAE,CAAC;EAEN,IAAMoD,SAAS,GAAG6B,iBAAK,CAACI,WAAW,CACjC,UAAC5E,KAAK,EAAK;IACT,IAAIT,KAAK,CAACoD,SAAS,EAAE;MACnB,OAAOpD,KAAK,CAACoD,SAAS,CAAC3C,KAAK,CAAC;IAC/B;IAEA,IAAIT,KAAK,CAACY,OAAO,KAAKH,KAAK,CAACC,IAAI,KAAK,OAAO,IAAID,KAAK,CAACC,IAAI,KAAK,OAAO,CAAC,EAAE;MACvED,KAAK,CAACI,cAAc,EAAE;MACtBb,KAAK,CAACY,OAAO,CAACH,KAAK,CAAC;IACtB;EACF,CAAC,EACD,CAACT,KAAK,CAACoD,SAAS,EAAEpD,KAAK,CAACY,OAAO,CAAC,CACjC;EAED,OAAAmE,KAAA,GAAO,IAAA9F,aAAO,EAAC4D,MAAM,CAAC,eAACzE,MAAA,YAAAiF,aAAA,CAAC2B,MAAM,EAAAD,KAAA,CAAAzB,EAAA,eAAAC,cAAA,qBAAAtF,KAAA,CAAAuF,WAAA;IAAA,OAAmB8B,aAAM;IAAA;IAAA,aAAyBlC;EAAS,GAAA0B,KAAA,IAAI;AAC/F;AAEA,SAASlB,KAAKA,CAAC5D,KAAK,EAAE;EAAA,IAAAuF,KAAA,GAAAd,YAAA;IAAAe,KAAA;EACpB,IAAMC,MAAM,GAE2B/C,YAAG;EAD1C,IAAQG,MAAM,GAAK7C,KAAK,CAAhB6C,MAAM;EACd,OAAA2C,KAAA,GAAO,IAAAvG,aAAO,EAAC4D,MAAM,CAAC,eAACzE,MAAA,YAAAiF,aAAA,CAACoC,MAAM,EAAAD,KAAA,CAAAlC,EAAA,eAAAC,cAAA,qBAAAtF,KAAA,CAAAuF,WAAA;IAAA,OAAkB;EAAM,GAAA+B,KAAA,IAAG;AAC3D;AAEA,SAASG,MAAMA,CAAC1F,KAAK,EAAE;EAAA,IAAA2F,KAAA,GAAAlB,YAAA;IAAAmB,MAAA;EACrB,IAAMC,OAAO,GAE2BnD,YAAG;EAD3C,IAAQG,MAAM,GAAK7C,KAAK,CAAhB6C,MAAM;EACd,OAAA+C,MAAA,GAAO,IAAA3G,aAAO,EAAC4D,MAAM,CAAC,eAACzE,MAAA,YAAAiF,aAAA,CAACwC,OAAO,EAAAD,MAAA,CAAAtC,EAAA,gBAAAC,cAAA,qBAAAtF,KAAA,CAAAuF,WAAA;IAAA,OAAkB;EAAM,GAAAmC,KAAA,IAAG;AAC5D;AAEA,IAAMxE,GAAG,GAAG,IAAA2E,gBAAe,EAACnG,OAAO,EAAE;EACnCoE,IAAI,EAAJA,IAAI;EACJH,KAAK,EAALA,KAAK;EACLiB,KAAK,EAALA,KAAK;EACLa,MAAM,EAANA;AACF,CAAC,CAAC;AAAC,IAAAK,QAAA,GAEY5E,GAAG;AAAA6E,OAAA,cAAAD,QAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.js","names":[],"sources":["../../src/index.d.ts"],"sourcesContent":["import React from 'react';\nimport { PropGetterFn, UnknownProperties, Intergalactic } from '@semcore/core';\nimport { BoxProps } from '@semcore/flex-box';\nimport { IconProps } from '@semcore/icon';\n\nexport type TagSize = 'xl' | 'l' | 'm';\n/** @deprecated */\nexport type TagThemeOld =\n | 'muted'\n | 'info'\n | 'success'\n | 'warning'\n | 'danger'\n | 'invert'\n | 'additional';\nexport type TagTheme = 'primary' | 'secondary' | TagThemeOld;\nexport type TagUse = 'primary' | 'secondary';\n\n/** @deprecated */\nexport interface ITagProps extends TagProps, UnknownProperties {}\nexport type TagProps = BoxProps & {\n /** Value responsible for tag availability\n */\n disabled?: boolean;\n /** Value responsible for tag activity\n */\n active?: boolean;\n /** Interactive tag\n */\n interactive?: boolean;\n /** Tag type\n * @default secondary\n * @deprecated v4.0.0\n * @use ITagProps.theme\n */\n use?: TagUse;\n /** Tag theme, there are several default themes or you can use your color\n * @default primary\n */\n theme?: TagTheme;\n /** Tag color text */\n color?: string;\n /** Tag size\n * @default m\n */\n size?: TagSize;\n /** Left addon tag */\n addonLeft?: React.ElementType;\n /** Right addon tag */\n addonRight?: React.ElementType;\n locale?: string;\n};\n\n/** @deprecated */\nexport interface ITagCloseProps extends TagCloseProps, UnknownProperties {}\nexport type TagCloseProps = IconProps & {\n /** Tag type\n * @default secondary\n */\n use?: TagUse;\n /** Tag theme, there are several default themes or you can use your color\n * @default muted\n */\n theme?: TagTheme;\n};\n\n/** @deprecated */\nexport interface ITagContext extends TagContext, UnknownProperties {}\nexport type TagContext = TagProps & {\n getCloseProps?: PropGetterFn;\n};\n\n/** @deprecated */\nexport interface ITagAddonProps extends TagAddonProps, UnknownProperties {}\nexport type TagAddonProps = BoxProps & {};\n\n/** @deprecated */\nexport interface ITagTextProps extends TagTextProps, UnknownProperties {}\nexport type TagTextProps = BoxProps & {};\n\ndeclare const Tag: Intergalactic.Component<'div', TagProps, TagContext> & {\n Text: Intergalactic.Component<'div', TagTextProps>;\n Addon: Intergalactic.Component<'div', TagAddonProps>;\n Close: Intergalactic.Component<'div', TagCloseProps>;\n Circle: Intergalactic.Component<'div', TagAddonProps>;\n};\n\nexport default Tag;\n"],"mappings":""}
1
+ {"version":3,"file":"index.d.js","names":[],"sources":["../../src/index.d.ts"],"sourcesContent":["import React from 'react';\nimport { PropGetterFn, UnknownProperties, Intergalactic } from '@semcore/core';\nimport { BoxProps } from '@semcore/flex-box';\nimport { IconProps } from '@semcore/icon';\nimport { KeyboardFocusProps } from '@semcore/utils/lib/enhances/keyboardFocusEnhance';\n\nexport type TagSize = 'xl' | 'l' | 'm';\n/** @deprecated */\nexport type TagThemeOld =\n | 'muted'\n | 'info'\n | 'success'\n | 'warning'\n | 'danger'\n | 'invert'\n | 'additional';\nexport type TagTheme = 'primary' | 'secondary' | TagThemeOld;\nexport type TagUse = 'primary' | 'secondary';\n\n/** @deprecated */\nexport interface ITagProps extends TagProps, UnknownProperties {}\nexport type TagProps = BoxProps &\n KeyboardFocusProps & {\n /** Value responsible for tag availability\n */\n disabled?: boolean;\n /** Value responsible for tag activity\n */\n active?: boolean;\n /** Interactive tag\n */\n interactive?: boolean;\n /** Tag type\n * @default secondary\n * @deprecated v4.0.0\n * @use ITagProps.theme\n */\n use?: TagUse;\n /** Tag theme, there are several default themes or you can use your color\n * @default primary\n */\n theme?: TagTheme;\n /** Tag color text */\n color?: string;\n /** Tag size\n * @default m\n */\n size?: TagSize;\n /** Left addon tag */\n addonLeft?: React.ElementType;\n /** Right addon tag */\n addonRight?: React.ElementType;\n locale?: string;\n };\n\n/** @deprecated */\nexport interface ITagCloseProps extends TagCloseProps, UnknownProperties {}\nexport type TagCloseProps = IconProps & {\n /** Tag type\n * @default secondary\n */\n use?: TagUse;\n /** Tag theme, there are several default themes or you can use your color\n * @default muted\n */\n theme?: TagTheme;\n};\n\n/** @deprecated */\nexport interface ITagContext extends TagContext, UnknownProperties {}\nexport type TagContext = TagProps & {\n getCloseProps?: PropGetterFn;\n};\n\n/** @deprecated */\nexport interface ITagAddonProps extends TagAddonProps, UnknownProperties {}\nexport type TagAddonProps = BoxProps & {};\n\n/** @deprecated */\nexport interface ITagTextProps extends TagTextProps, UnknownProperties {}\nexport type TagTextProps = BoxProps & KeyboardFocusProps & {};\n\ndeclare const Tag: Intergalactic.Component<'div', TagProps, TagContext> & {\n Text: Intergalactic.Component<'div', TagTextProps>;\n Addon: Intergalactic.Component<'div', TagAddonProps>;\n Close: Intergalactic.Component<'div', TagCloseProps>;\n Circle: Intergalactic.Component<'div', TagAddonProps>;\n};\n\nexport default Tag;\n"],"mappings":""}
@@ -43,8 +43,25 @@ STag {
43
43
  opacity: 0.1;
44
44
  filter: brightness(150%);
45
45
  }
46
+
47
+ &:active,
48
+ &:hover,
49
+ &:focus {
50
+ outline: 0;
51
+ text-decoration: none;
52
+ }
53
+ }
54
+
55
+ STag[keyboardFocused] {
56
+ box-shadow: var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5));
57
+ z-index: 1;
58
+ }
59
+
60
+ STag[keyboardFocused]:has(:focus) {
61
+ box-shadow: none;
46
62
  }
47
63
 
64
+
48
65
  STag[disabled] {
49
66
  opacity: var(--intergalactic-disabled-opacity, 0.3);
50
67
  cursor: default;
@@ -165,6 +182,11 @@ SText {
165
182
  position: relative;
166
183
  }
167
184
 
185
+ SText[keyboardFocused] {
186
+ box-shadow: var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5));
187
+ z-index: 1;
188
+ }
189
+
168
190
  SText:not(:only-child):first-child {
169
191
  padding-right: 0;
170
192
  }
@@ -227,9 +249,12 @@ SClose {
227
249
  align-items: center;
228
250
  justify-content: center;
229
251
  padding: var(--intergalactic-spacing-1x, 4px);
230
- opacity: 0.5;
231
252
 
232
- &:hover {
253
+ & path {
254
+ opacity: 0.5;
255
+ }
256
+
257
+ &:hover path {
233
258
  opacity: 1;
234
259
  }
235
260
  }
@@ -21,26 +21,28 @@ import { localizedMessages } from './translations/__intergalactic-dynamic-locale
21
21
  import i18nEnhance from 'intergalactic/utils/lib/enhances/i18nEnhance';
22
22
  import resolveColorEnhance from 'intergalactic/utils/lib/enhances/resolveColorEnhance';
23
23
  import uniqueIDEnhancement from 'intergalactic/utils/lib/uniqueID';
24
+ import keyboardFocusEnhance from 'intergalactic/utils/lib/enhances/keyboardFocusEnhance';
24
25
  /*__reshadow-styles__:"./style/tag.shadow.css"*/
25
- var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___STag_m3zdm_gg_{position:relative;display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;border:1px solid var(--intergalactic-bg-primary-neutral, #ffffff);box-sizing:border-box;background-color:var(--intergalactic-bg-primary-neutral, #ffffff);border-radius:var(--intergalactic-tag-rounded, 24px);padding-left:var(--intergalactic-spacing-1x, 4px);padding-right:var(--intergalactic-spacing-1x, 4px);font-weight:var(--intergalactic-medium, 500);color:var(--tag-color_m3zdm)}.___STag_m3zdm_gg_:has(.___SText_m3zdm_gg_:focus){box-shadow:var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5))}.___STag_m3zdm_gg_::after,.___STag_m3zdm_gg_::before{content:\"\";position:absolute;border-radius:var(--intergalactic-tag-rounded, 24px);filter:brightness(150%)}.___STag_m3zdm_gg_::before{top:0;left:0;right:0;bottom:0;background-color:var(--tag-color_m3zdm);opacity:.2}.___STag_m3zdm_gg_::after{top:-1px;left:-1px;right:-1px;bottom:-1px;pointer-events:none;border:1px solid var(--tag-color_m3zdm);opacity:.1}.___STag_m3zdm_gg_.__disabled_m3zdm_gg_{opacity:var(--intergalactic-disabled-opacity, 0.3);cursor:default;pointer-events:none}.___STag_m3zdm_gg_.__interactive_m3zdm_gg_{cursor:pointer}.___STag_m3zdm_gg_._size_m_m3zdm_gg_{height:20px;min-width:20px}.___STag_m3zdm_gg_._size_m_m3zdm_gg_ .___SCircle_m3zdm_gg_:first-child{margin-left:calc(-1*var(--intergalactic-spacing-05x, 2px))}.___STag_m3zdm_gg_._size_m_m3zdm_gg_ .___SCircle_m3zdm_gg_:last-child{margin-right:calc(-1*var(--intergalactic-spacing-05x, 2px))}.___STag_m3zdm_gg_._size_m_m3zdm_gg_ .___SText_m3zdm_gg_{font-size:var(--intergalactic-fs-100, 12px);line-height:var(--intergalactic-lh-100, 133%)}.___STag_m3zdm_gg_._size_l_m3zdm_gg_{height:28px;min-width:28px}.___STag_m3zdm_gg_._size_l_m3zdm_gg_ .___SText_m3zdm_gg_{font-size:var(--intergalactic-fs-200, 14px);line-height:var(--intergalactic-lh-200, 142%)}.___STag_m3zdm_gg_._size_xl_m3zdm_gg_{height:40px;min-width:40px}.___STag_m3zdm_gg_._size_xl_m3zdm_gg_ .___SText_m3zdm_gg_{font-size:var(--intergalactic-fs-300, 16px);line-height:var(--intergalactic-lh-300, 150%)}.___STag_m3zdm_gg_._theme_primary_m3zdm_gg_::before{top:-1px;left:-1px;right:-1px;bottom:-1px}.___STag_m3zdm_gg_._theme_primary_m3zdm_gg_:after{display:none}.___STag_m3zdm_gg_._theme_primary_m3zdm_gg_.__active_m3zdm_gg_:before,.___STag_m3zdm_gg_._theme_primary_m3zdm_gg_.__interactive_m3zdm_gg_:active:before{opacity:.3}@media (hover:hover){.___STag_m3zdm_gg_._theme_primary_m3zdm_gg_.__interactive_m3zdm_gg_:hover:before{opacity:.3}}.___STag_m3zdm_gg_._theme_additional_m3zdm_gg_::before,.___STag_m3zdm_gg_._theme_secondary_m3zdm_gg_::before{opacity:.01}.___STag_m3zdm_gg_._theme_additional_m3zdm_gg_.__active_m3zdm_gg_:before,.___STag_m3zdm_gg_._theme_additional_m3zdm_gg_.__interactive_m3zdm_gg_:active:before,.___STag_m3zdm_gg_._theme_secondary_m3zdm_gg_.__active_m3zdm_gg_:before,.___STag_m3zdm_gg_._theme_secondary_m3zdm_gg_.__interactive_m3zdm_gg_:active:before{opacity:.1}@media (hover:hover){.___STag_m3zdm_gg_._theme_additional_m3zdm_gg_.__interactive_m3zdm_gg_:hover:before,.___STag_m3zdm_gg_._theme_secondary_m3zdm_gg_.__interactive_m3zdm_gg_:hover:before{opacity:.1}}.___STag_m3zdm_gg_._theme_additional-invert_m3zdm_gg_::after,.___STag_m3zdm_gg_._theme_additional_m3zdm_gg_::after,.___STag_m3zdm_gg_._theme_secondary-invert_m3zdm_gg_::after,.___STag_m3zdm_gg_._theme_secondary_m3zdm_gg_::after{opacity:.5}.___STag_m3zdm_gg_._theme_primary-invert_m3zdm_gg_{background-color:var(--intergalactic-tag-primary-white-normal, rgba(255, 255, 255, 0.15))}.___STag_m3zdm_gg_._theme_additional-invert_m3zdm_gg_,.___STag_m3zdm_gg_._theme_primary-invert_m3zdm_gg_,.___STag_m3zdm_gg_._theme_secondary-invert_m3zdm_gg_{color:var(--intergalactic-text-primary-invert, #ffffff)}.___STag_m3zdm_gg_._theme_additional_m3zdm_gg_::after{border-style:dashed}.___SText_m3zdm_gg_{display:inline-block;padding-left:var(--intergalactic-spacing-1x, 4px);padding-right:var(--intergalactic-spacing-1x, 4px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;outline:0;position:relative}.___SText_m3zdm_gg_:not(:only-child):first-child{padding-right:0}.___SText_m3zdm_gg_:not(:first-child):not(:last-child){padding-left:0;padding-right:0}.___SText_m3zdm_gg_:not(:only-child):last-child{padding-left:0}.___SAddon_m3zdm_gg_,.___SCircle_m3zdm_gg_{display:inline-flex;align-items:center;justify-content:center}.___SAddon_m3zdm_gg_{flex-shrink:0;padding-left:var(--intergalactic-spacing-1x, 4px);padding-right:var(--intergalactic-spacing-1x, 4px);position:relative}.___SCircle_m3zdm_gg_{overflow:hidden;border-radius:50%;margin:0 var(--intergalactic-spacing-1x, 4px)}.___SCircle_m3zdm_gg_:first-child{margin-left:0}.___SCircle_m3zdm_gg_:last-child{margin-right:0}.___SCircle_m3zdm_gg_._size_m_m3zdm_gg_{width:16px;height:16px}.___SCircle_m3zdm_gg_._size_l_m3zdm_gg_,.___SCircle_m3zdm_gg_._size_xl_m3zdm_gg_{width:20px;height:20px}.___SClose_m3zdm_gg_{cursor:pointer;display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;padding:var(--intergalactic-spacing-1x, 4px);opacity:.5}@media (hover:hover){.___SClose_m3zdm_gg_:hover{opacity:1}}" /*__inner_css_end__*/, "m3zdm_gg_") /*__reshadow_css_end__*/, {
26
- "__STag": "___STag_m3zdm_gg_",
27
- "_disabled": "__disabled_m3zdm_gg_",
28
- "_interactive": "__interactive_m3zdm_gg_",
29
- "_theme_primary-invert": "_theme_primary-invert_m3zdm_gg_",
30
- "_theme_secondary-invert": "_theme_secondary-invert_m3zdm_gg_",
31
- "_theme_additional-invert": "_theme_additional-invert_m3zdm_gg_",
32
- "__SText": "___SText_m3zdm_gg_",
33
- "__SAddon": "___SAddon_m3zdm_gg_",
34
- "__SCircle": "___SCircle_m3zdm_gg_",
35
- "_size_m": "_size_m_m3zdm_gg_",
36
- "_size_l": "_size_l_m3zdm_gg_",
37
- "_size_xl": "_size_xl_m3zdm_gg_",
38
- "--tag-color": "--tag-color_m3zdm",
39
- "_theme_primary": "_theme_primary_m3zdm_gg_",
40
- "_active": "__active_m3zdm_gg_",
41
- "_theme_secondary": "_theme_secondary_m3zdm_gg_",
42
- "_theme_additional": "_theme_additional_m3zdm_gg_",
43
- "__SClose": "___SClose_m3zdm_gg_"
26
+ var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___STag_1egau_gg_{position:relative;display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;border:1px solid var(--intergalactic-bg-primary-neutral, #ffffff);box-sizing:border-box;background-color:var(--intergalactic-bg-primary-neutral, #ffffff);border-radius:var(--intergalactic-tag-rounded, 24px);padding-left:var(--intergalactic-spacing-1x, 4px);padding-right:var(--intergalactic-spacing-1x, 4px);font-weight:var(--intergalactic-medium, 500);color:var(--tag-color_1egau)}.___STag_1egau_gg_:has(.___SText_1egau_gg_:focus){box-shadow:var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5))}.___STag_1egau_gg_::after,.___STag_1egau_gg_::before{content:\"\";position:absolute;border-radius:var(--intergalactic-tag-rounded, 24px);filter:brightness(150%)}.___STag_1egau_gg_::before{top:0;left:0;right:0;bottom:0;background-color:var(--tag-color_1egau);opacity:.2}.___STag_1egau_gg_::after{top:-1px;left:-1px;right:-1px;bottom:-1px;pointer-events:none;border:1px solid var(--tag-color_1egau);opacity:.1}.___STag_1egau_gg_:active,.___STag_1egau_gg_:focus{outline:0;-webkit-text-decoration:none;text-decoration:none}@media (hover:hover){.___STag_1egau_gg_:hover{outline:0;-webkit-text-decoration:none;text-decoration:none}}.___STag_1egau_gg_.__keyboardFocused_1egau_gg_{box-shadow:var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5));z-index:1}.___STag_1egau_gg_.__keyboardFocused_1egau_gg_:has(:focus){box-shadow:none}.___STag_1egau_gg_.__disabled_1egau_gg_{opacity:var(--intergalactic-disabled-opacity, 0.3);cursor:default;pointer-events:none}.___STag_1egau_gg_.__interactive_1egau_gg_{cursor:pointer}.___STag_1egau_gg_._size_m_1egau_gg_{height:20px;min-width:20px}.___STag_1egau_gg_._size_m_1egau_gg_ .___SCircle_1egau_gg_:first-child{margin-left:calc(-1*var(--intergalactic-spacing-05x, 2px))}.___STag_1egau_gg_._size_m_1egau_gg_ .___SCircle_1egau_gg_:last-child{margin-right:calc(-1*var(--intergalactic-spacing-05x, 2px))}.___STag_1egau_gg_._size_m_1egau_gg_ .___SText_1egau_gg_{font-size:var(--intergalactic-fs-100, 12px);line-height:var(--intergalactic-lh-100, 133%)}.___STag_1egau_gg_._size_l_1egau_gg_{height:28px;min-width:28px}.___STag_1egau_gg_._size_l_1egau_gg_ .___SText_1egau_gg_{font-size:var(--intergalactic-fs-200, 14px);line-height:var(--intergalactic-lh-200, 142%)}.___STag_1egau_gg_._size_xl_1egau_gg_{height:40px;min-width:40px}.___STag_1egau_gg_._size_xl_1egau_gg_ .___SText_1egau_gg_{font-size:var(--intergalactic-fs-300, 16px);line-height:var(--intergalactic-lh-300, 150%)}.___STag_1egau_gg_._theme_primary_1egau_gg_::before{top:-1px;left:-1px;right:-1px;bottom:-1px}.___STag_1egau_gg_._theme_primary_1egau_gg_:after{display:none}.___STag_1egau_gg_._theme_primary_1egau_gg_.__active_1egau_gg_:before,.___STag_1egau_gg_._theme_primary_1egau_gg_.__interactive_1egau_gg_:active:before{opacity:.3}@media (hover:hover){.___STag_1egau_gg_._theme_primary_1egau_gg_.__interactive_1egau_gg_:hover:before{opacity:.3}}.___STag_1egau_gg_._theme_additional_1egau_gg_::before,.___STag_1egau_gg_._theme_secondary_1egau_gg_::before{opacity:.01}.___STag_1egau_gg_._theme_additional_1egau_gg_.__active_1egau_gg_:before,.___STag_1egau_gg_._theme_additional_1egau_gg_.__interactive_1egau_gg_:active:before,.___STag_1egau_gg_._theme_secondary_1egau_gg_.__active_1egau_gg_:before,.___STag_1egau_gg_._theme_secondary_1egau_gg_.__interactive_1egau_gg_:active:before{opacity:.1}@media (hover:hover){.___STag_1egau_gg_._theme_additional_1egau_gg_.__interactive_1egau_gg_:hover:before,.___STag_1egau_gg_._theme_secondary_1egau_gg_.__interactive_1egau_gg_:hover:before{opacity:.1}}.___SClose_1egau_gg_ path,.___STag_1egau_gg_._theme_additional-invert_1egau_gg_::after,.___STag_1egau_gg_._theme_additional_1egau_gg_::after,.___STag_1egau_gg_._theme_secondary-invert_1egau_gg_::after,.___STag_1egau_gg_._theme_secondary_1egau_gg_::after{opacity:.5}.___STag_1egau_gg_._theme_primary-invert_1egau_gg_{background-color:var(--intergalactic-tag-primary-white-normal, rgba(255, 255, 255, 0.15))}.___STag_1egau_gg_._theme_additional-invert_1egau_gg_,.___STag_1egau_gg_._theme_primary-invert_1egau_gg_,.___STag_1egau_gg_._theme_secondary-invert_1egau_gg_{color:var(--intergalactic-text-primary-invert, #ffffff)}.___STag_1egau_gg_._theme_additional_1egau_gg_::after{border-style:dashed}.___SText_1egau_gg_{display:inline-block;padding-left:var(--intergalactic-spacing-1x, 4px);padding-right:var(--intergalactic-spacing-1x, 4px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;outline:0;position:relative}.___SText_1egau_gg_.__keyboardFocused_1egau_gg_{box-shadow:var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5));z-index:1}.___SText_1egau_gg_:not(:only-child):first-child{padding-right:0}.___SText_1egau_gg_:not(:first-child):not(:last-child){padding-left:0;padding-right:0}.___SText_1egau_gg_:not(:only-child):last-child{padding-left:0}.___SAddon_1egau_gg_,.___SCircle_1egau_gg_{display:inline-flex;align-items:center;justify-content:center}.___SAddon_1egau_gg_{flex-shrink:0;padding-left:var(--intergalactic-spacing-1x, 4px);padding-right:var(--intergalactic-spacing-1x, 4px);position:relative}.___SCircle_1egau_gg_{overflow:hidden;border-radius:50%;margin:0 var(--intergalactic-spacing-1x, 4px)}.___SCircle_1egau_gg_:first-child{margin-left:0}.___SCircle_1egau_gg_:last-child{margin-right:0}.___SCircle_1egau_gg_._size_m_1egau_gg_{width:16px;height:16px}.___SCircle_1egau_gg_._size_l_1egau_gg_,.___SCircle_1egau_gg_._size_xl_1egau_gg_{width:20px;height:20px}.___SClose_1egau_gg_{cursor:pointer;display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;padding:var(--intergalactic-spacing-1x, 4px)}@media (hover:hover){.___SClose_1egau_gg_:hover path{opacity:1}}" /*__inner_css_end__*/, "1egau_gg_") /*__reshadow_css_end__*/, {
27
+ "__STag": "___STag_1egau_gg_",
28
+ "_keyboardFocused": "__keyboardFocused_1egau_gg_",
29
+ "_disabled": "__disabled_1egau_gg_",
30
+ "_interactive": "__interactive_1egau_gg_",
31
+ "_theme_primary-invert": "_theme_primary-invert_1egau_gg_",
32
+ "_theme_secondary-invert": "_theme_secondary-invert_1egau_gg_",
33
+ "_theme_additional-invert": "_theme_additional-invert_1egau_gg_",
34
+ "__SText": "___SText_1egau_gg_",
35
+ "__SAddon": "___SAddon_1egau_gg_",
36
+ "__SCircle": "___SCircle_1egau_gg_",
37
+ "_size_m": "_size_m_1egau_gg_",
38
+ "_size_l": "_size_l_1egau_gg_",
39
+ "_size_xl": "_size_xl_1egau_gg_",
40
+ "--tag-color": "--tag-color_1egau",
41
+ "_theme_primary": "_theme_primary_1egau_gg_",
42
+ "_active": "__active_1egau_gg_",
43
+ "_theme_secondary": "_theme_secondary_1egau_gg_",
44
+ "_theme_additional": "_theme_additional_1egau_gg_",
45
+ "__SClose": "___SClose_1egau_gg_"
44
46
  });
45
47
  import { callAllEventHandlers } from 'intergalactic/utils/lib/assignProps';
46
48
  var legacyThemeRecommendedMigration = {
@@ -63,13 +65,27 @@ var RootTag = /*#__PURE__*/function (_Component) {
63
65
  var _this;
64
66
  _classCallCheck(this, RootTag);
65
67
  _this = _super.call(this, props);
66
- _defineProperty(_assertThisInitialized(_this), "handleKeyDown", function (e) {
67
- var _this$asProps$onClick, _this$asProps;
68
- switch (e.key) {
69
- case ' ':
68
+ _defineProperty(_assertThisInitialized(_this), "state", {
69
+ focusable: 'container'
70
+ });
71
+ _defineProperty(_assertThisInitialized(_this), "handleCloseMount", function () {
72
+ _this.setState({
73
+ focusable: 'text'
74
+ });
75
+ });
76
+ _defineProperty(_assertThisInitialized(_this), "handleCloseUnmount", function () {
77
+ _this.setState({
78
+ focusable: 'container'
79
+ });
80
+ });
81
+ _defineProperty(_assertThisInitialized(_this), "handleKeyDown", function (event) {
82
+ switch (event.code) {
83
+ case 'Space':
70
84
  case 'Enter':
71
- e.preventDefault();
72
- (_this$asProps$onClick = (_this$asProps = _this.asProps).onClick) === null || _this$asProps$onClick === void 0 ? void 0 : _this$asProps$onClick.call(_this$asProps, e);
85
+ if (_this.asProps.onClick) {
86
+ event.preventDefault();
87
+ _this.asProps.onClick(event);
88
+ }
73
89
  break;
74
90
  }
75
91
  });
@@ -84,17 +100,30 @@ var RootTag = /*#__PURE__*/function (_Component) {
84
100
  size: size
85
101
  };
86
102
  }
103
+ }, {
104
+ key: "getTextProps",
105
+ value: function getTextProps() {
106
+ var interactive = this.asProps.interactive;
107
+ var id = this.asProps.id || "igc-".concat(this.asProps.uid, "-tag");
108
+ var focusable = this.state.focusable;
109
+ return {
110
+ tabIndex: focusable === 'text' && interactive ? 0 : -1,
111
+ id: "".concat(id, "-text")
112
+ };
113
+ }
87
114
  }, {
88
115
  key: "getCloseProps",
89
116
  value: function getCloseProps() {
90
- var _this$asProps2 = this.asProps,
91
- getI18nText = _this$asProps2.getI18nText,
92
- id = _this$asProps2.id,
93
- uid = _this$asProps2.uid;
117
+ var getI18nText = this.asProps.getI18nText;
118
+ var id = this.asProps.id || "igc-".concat(this.asProps.uid, "-tag");
94
119
  return {
95
120
  getI18nText: getI18nText,
96
- tagId: id || "igc-".concat(uid, "-tag"),
97
- uid: uid
121
+ id: "".concat(id, "-clear"),
122
+ 'aria-labelledby': "".concat(id, "-clear ").concat(id, "-text"),
123
+ 'aria-label': getI18nText('remove'),
124
+ 'aria-hidden': 'true',
125
+ onMount: this.handleCloseMount,
126
+ onUnmount: this.handleCloseUnmount
98
127
  };
99
128
  }
100
129
  }, {
@@ -103,26 +132,27 @@ var RootTag = /*#__PURE__*/function (_Component) {
103
132
  var _ref = this.asProps,
104
133
  _ref6;
105
134
  var STag = Box;
106
- var _this$asProps3 = this.asProps,
107
- Children = _this$asProps3.Children,
108
- styles = _this$asProps3.styles,
109
- color = _this$asProps3.color,
110
- interactive = _this$asProps3.interactive,
111
- disabled = _this$asProps3.disabled,
112
- addonLeft = _this$asProps3.addonLeft,
113
- addonRight = _this$asProps3.addonRight,
114
- resolveColor = _this$asProps3.resolveColor,
115
- onClick = _this$asProps3.onClick,
116
- outerId = _this$asProps3.id,
117
- uid = _this$asProps3.uid,
118
- onKeyDown = _this$asProps3.onKeyDown;
135
+ var _this$asProps = this.asProps,
136
+ Children = _this$asProps.Children,
137
+ styles = _this$asProps.styles,
138
+ color = _this$asProps.color,
139
+ interactive = _this$asProps.interactive,
140
+ disabled = _this$asProps.disabled,
141
+ addonLeft = _this$asProps.addonLeft,
142
+ addonRight = _this$asProps.addonRight,
143
+ resolveColor = _this$asProps.resolveColor,
144
+ outerId = _this$asProps.id,
145
+ uid = _this$asProps.uid,
146
+ onKeyDown = _this$asProps.onKeyDown;
147
+ var focusable = this.state.focusable;
119
148
  var id = outerId || "igc-".concat(uid, "-tag");
120
149
  return _ref6 = sstyled(styles), /*#__PURE__*/React.createElement(STag, _ref6.cn("STag", _objectSpread({}, _assignProps({
121
150
  "id": id,
122
151
  "use:interactive": !disabled && interactive,
123
- "tabIndex": interactive && onClick ? 0 : undefined,
152
+ "role": interactive ? 'button' : undefined,
124
153
  "tag-color": resolveColor(color),
125
- "onKeyDown": callAllEventHandlers(onKeyDown, this.handleKeyDown)
154
+ "onKeyDown": callAllEventHandlers(onKeyDown, this.handleKeyDown),
155
+ "use:tabIndex": interactive && focusable === 'container' ? 0 : -1
126
156
  }, _ref))), addonLeft ? /*#__PURE__*/React.createElement(Tag.Addon, {
127
157
  tag: addonLeft
128
158
  }) : null, addonTextChildren(Children, Tag.Text, Tag.Addon), addonRight ? /*#__PURE__*/React.createElement(Tag.Addon, {
@@ -134,7 +164,7 @@ var RootTag = /*#__PURE__*/function (_Component) {
134
164
  }(Component);
135
165
  _defineProperty(RootTag, "displayName", 'Tag');
136
166
  _defineProperty(RootTag, "style", style);
137
- _defineProperty(RootTag, "enhance", [i18nEnhance(localizedMessages), uniqueIDEnhancement(), resolveColorEnhance()]);
167
+ _defineProperty(RootTag, "enhance", [i18nEnhance(localizedMessages), uniqueIDEnhancement(), resolveColorEnhance(), keyboardFocusEnhance()]);
138
168
  _defineProperty(RootTag, "defaultProps", {
139
169
  theme: 'primary',
140
170
  color: 'gray-500',
@@ -151,15 +181,21 @@ function Text(props) {
151
181
  "tag": 'span'
152
182
  }, _ref2))));
153
183
  }
184
+ Text.enhance = [keyboardFocusEnhance()];
154
185
  function Close(props) {
155
186
  var _ref3 = arguments[0],
156
187
  _ref8;
157
188
  var SClose = Box;
158
- var styles = props.styles,
159
- getI18nText = props.getI18nText,
160
- tagId = props.tagId,
161
- uid = props.uid;
162
- function onKeyDown(event) {
189
+ var styles = props.styles;
190
+ React.useEffect(function () {
191
+ var _props$onMount;
192
+ (_props$onMount = props.onMount) === null || _props$onMount === void 0 ? void 0 : _props$onMount.call(props);
193
+ return function () {
194
+ var _props$onUnmount;
195
+ return (_props$onUnmount = props.onUnmount) === null || _props$onUnmount === void 0 ? void 0 : _props$onUnmount.call(props);
196
+ };
197
+ }, []);
198
+ var onKeyDown = React.useCallback(function (event) {
163
199
  if (props.onKeyDown) {
164
200
  return props.onKeyDown(event);
165
201
  }
@@ -167,13 +203,10 @@ function Close(props) {
167
203
  event.preventDefault();
168
204
  props.onClick(event);
169
205
  }
170
- }
206
+ }, [props.onKeyDown, props.onClick]);
171
207
  return _ref8 = sstyled(styles), /*#__PURE__*/React.createElement(SClose, _ref8.cn("SClose", _objectSpread({}, _assignProps3({
172
208
  "tag": CloseM,
173
209
  "interactive": true,
174
- "id": "igc-".concat(uid, "-tag-clear"),
175
- "aria-labelledby": "igc-".concat(uid, "-tag-clear ").concat(tagId),
176
- "aria-label": getI18nText('remove'),
177
210
  "onKeyDown": onKeyDown
178
211
  }, _ref3))));
179
212
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Tag.js","names":["React","createComponent","Component","sstyled","Root","Box","addonTextChildren","logger","CloseM","localizedMessages","i18nEnhance","resolveColorEnhance","uniqueIDEnhancement","style","_sstyled","insert","callAllEventHandlers","legacyThemeRecommendedMigration","primary","muted","info","success","warning","danger","secondary","RootTag","_Component","_inherits","_super","_createSuper","props","_legacyThemeRecommend","_this","_classCallCheck","call","_defineProperty","_assertThisInitialized","e","_this$asProps$onClick","_this$asProps","key","preventDefault","asProps","onClick","warn","use","concat","theme","Tag","displayName","_createClass","value","getCircleProps","size","getCloseProps","_this$asProps2","getI18nText","id","uid","tagId","render","_ref","_ref6","STag","_this$asProps3","Children","styles","color","interactive","disabled","addonLeft","addonRight","resolveColor","outerId","onKeyDown","createElement","cn","_objectSpread","_assignProps","undefined","handleKeyDown","Addon","tag","Text","i18n","locale","_ref2","arguments[0]","_ref7","SText","_assignProps2","Close","_ref3","_ref8","SClose","event","code","_assignProps3","_ref4","_ref9","SAddon","_assignProps4","Circle","_ref5","_ref10","SCircle","_assignProps5"],"sources":["../../src/Tag.jsx"],"sourcesContent":["import React from 'react';\nimport createComponent, { Component, sstyled, Root } from '@semcore/core';\nimport { Box } from '@semcore/flex-box';\nimport addonTextChildren from '@semcore/utils/lib/addonTextChildren';\nimport logger from '@semcore/utils/lib/logger';\nimport CloseM from '@semcore/icon/Close/m';\nimport { localizedMessages } from './translations/__intergalactic-dynamic-locales';\nimport i18nEnhance from '@semcore/utils/lib/enhances/i18nEnhance';\nimport resolveColorEnhance from '@semcore/utils/lib/enhances/resolveColorEnhance';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\n\nimport style from './style/tag.shadow.css';\nimport { callAllEventHandlers } from '@semcore/utils/lib/assignProps';\n\nconst legacyThemeRecommendedMigration = {\n primary: {\n muted: 'gray-500',\n info: 'blue-500',\n success: 'green-500',\n warning: 'orange-500',\n danger: 'red-500',\n },\n secondary: {\n muted: 'gray-50',\n },\n};\n\nclass RootTag extends Component {\n static displayName = 'Tag';\n static style = style;\n static enhance = [i18nEnhance(localizedMessages), uniqueIDEnhancement(), resolveColorEnhance()];\n static defaultProps = {\n theme: 'primary',\n color: 'gray-500',\n size: 'm',\n i18n: localizedMessages,\n locale: 'en',\n };\n\n constructor(props) {\n super(props);\n\n logger.warn(\n props.use,\n `Property 'use' is deprecated, replace property to \"theme='${props.use}' color='${\n legacyThemeRecommendedMigration[props.use]?.[props.theme]\n }'\"`,\n props['data-ui-name'] || Tag.displayName,\n );\n }\n\n getCircleProps() {\n const { size } = this.asProps;\n return { size };\n }\n\n getCloseProps() {\n const { getI18nText, id, uid } = this.asProps;\n\n return { getI18nText, tagId: id || `igc-${uid}-tag`, uid };\n }\n\n handleKeyDown = (e) => {\n switch (e.key) {\n case ' ':\n case 'Enter':\n e.preventDefault();\n this.asProps.onClick?.(e);\n break;\n }\n };\n\n render() {\n const STag = Root;\n const {\n Children,\n styles,\n color,\n interactive,\n disabled,\n addonLeft,\n addonRight,\n resolveColor,\n onClick,\n id: outerId,\n uid,\n onKeyDown,\n } = this.asProps;\n const id = outerId || `igc-${uid}-tag`;\n\n return sstyled(styles)(\n <STag\n render={Box}\n id={id}\n use:interactive={!disabled && interactive}\n tabIndex={interactive && onClick ? 0 : undefined}\n tag-color={resolveColor(color)}\n onKeyDown={callAllEventHandlers(onKeyDown, this.handleKeyDown)}\n >\n {addonLeft ? <Tag.Addon tag={addonLeft} /> : null}\n {addonTextChildren(Children, Tag.Text, Tag.Addon)}\n {addonRight ? <Tag.Addon tag={addonRight} /> : null}\n </STag>,\n );\n }\n}\n\nfunction Text(props) {\n const SText = Root;\n const { styles } = props;\n return sstyled(styles)(<SText render={Box} tag='span' />);\n}\n\nfunction Close(props) {\n const SClose = Root;\n const { styles, getI18nText, tagId, uid } = props;\n\n function onKeyDown(event) {\n if (props.onKeyDown) {\n return props.onKeyDown(event);\n }\n\n if (props.onClick && (event.code === 'Enter' || event.code === 'Space')) {\n event.preventDefault();\n props.onClick(event);\n }\n }\n\n return sstyled(styles)(\n <SClose\n render={Box}\n tag={CloseM}\n interactive\n id={`igc-${uid}-tag-clear`}\n aria-labelledby={`igc-${uid}-tag-clear ${tagId}`}\n aria-label={getI18nText('remove')}\n onKeyDown={onKeyDown}\n />,\n );\n}\n\nfunction Addon(props) {\n const SAddon = Root;\n const { styles } = props;\n return sstyled(styles)(<SAddon render={Box} tag='span' />);\n}\n\nfunction Circle(props) {\n const SCircle = Root;\n const { styles } = props;\n return sstyled(styles)(<SCircle render={Box} tag='span' />);\n}\n\nconst Tag = createComponent(RootTag, {\n Text,\n Addon,\n Close,\n Circle,\n});\n\nexport default Tag;\n"],"mappings":"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"}
1
+ {"version":3,"file":"Tag.js","names":["React","createComponent","Component","sstyled","Root","Box","addonTextChildren","logger","CloseM","localizedMessages","i18nEnhance","resolveColorEnhance","uniqueIDEnhancement","keyboardFocusEnhance","style","_sstyled","insert","callAllEventHandlers","legacyThemeRecommendedMigration","primary","muted","info","success","warning","danger","secondary","RootTag","_Component","_inherits","_super","_createSuper","props","_legacyThemeRecommend","_this","_classCallCheck","call","_defineProperty","_assertThisInitialized","focusable","setState","event","code","asProps","onClick","preventDefault","warn","use","concat","theme","Tag","displayName","_createClass","key","value","getCircleProps","size","getTextProps","interactive","id","uid","state","tabIndex","getCloseProps","getI18nText","onMount","handleCloseMount","onUnmount","handleCloseUnmount","render","_ref","_ref6","STag","_this$asProps","Children","styles","color","disabled","addonLeft","addonRight","resolveColor","outerId","onKeyDown","createElement","cn","_objectSpread","_assignProps","undefined","handleKeyDown","Addon","tag","Text","i18n","locale","_ref2","arguments[0]","_ref7","SText","_assignProps2","enhance","Close","_ref3","_ref8","SClose","useEffect","_props$onMount","_props$onUnmount","useCallback","_assignProps3","_ref4","_ref9","SAddon","_assignProps4","Circle","_ref5","_ref10","SCircle","_assignProps5"],"sources":["../../src/Tag.jsx"],"sourcesContent":["import React from 'react';\nimport createComponent, { Component, sstyled, Root } from '@semcore/core';\nimport { Box } from '@semcore/flex-box';\nimport addonTextChildren from '@semcore/utils/lib/addonTextChildren';\nimport logger from '@semcore/utils/lib/logger';\nimport CloseM from '@semcore/icon/Close/m';\nimport { localizedMessages } from './translations/__intergalactic-dynamic-locales';\nimport i18nEnhance from '@semcore/utils/lib/enhances/i18nEnhance';\nimport resolveColorEnhance from '@semcore/utils/lib/enhances/resolveColorEnhance';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\nimport keyboardFocusEnhance from '@semcore/utils/lib/enhances/keyboardFocusEnhance';\n\nimport style from './style/tag.shadow.css';\nimport { callAllEventHandlers } from '@semcore/utils/lib/assignProps';\n\nconst legacyThemeRecommendedMigration = {\n primary: {\n muted: 'gray-500',\n info: 'blue-500',\n success: 'green-500',\n warning: 'orange-500',\n danger: 'red-500',\n },\n secondary: {\n muted: 'gray-50',\n },\n};\n\nclass RootTag extends Component {\n static displayName = 'Tag';\n static style = style;\n static enhance = [\n i18nEnhance(localizedMessages),\n uniqueIDEnhancement(),\n resolveColorEnhance(),\n keyboardFocusEnhance(),\n ];\n static defaultProps = {\n theme: 'primary',\n color: 'gray-500',\n size: 'm',\n i18n: localizedMessages,\n locale: 'en',\n };\n state = {\n focusable: 'container',\n };\n\n constructor(props) {\n super(props);\n\n logger.warn(\n props.use,\n `Property 'use' is deprecated, replace property to \"theme='${props.use}' color='${\n legacyThemeRecommendedMigration[props.use]?.[props.theme]\n }'\"`,\n props['data-ui-name'] || Tag.displayName,\n );\n }\n\n getCircleProps() {\n const { size } = this.asProps;\n return { size };\n }\n\n getTextProps() {\n const { interactive } = this.asProps;\n const id = this.asProps.id || `igc-${this.asProps.uid}-tag`;\n const { focusable } = this.state;\n\n return {\n tabIndex: focusable === 'text' && interactive ? 0 : -1,\n id: `${id}-text`,\n };\n }\n handleCloseMount = () => {\n this.setState({ focusable: 'text' });\n };\n handleCloseUnmount = () => {\n this.setState({ focusable: 'container' });\n };\n getCloseProps() {\n const { getI18nText } = this.asProps;\n const id = this.asProps.id || `igc-${this.asProps.uid}-tag`;\n\n return {\n getI18nText,\n id: `${id}-clear`,\n 'aria-labelledby': `${id}-clear ${id}-text`,\n 'aria-label': getI18nText('remove'),\n 'aria-hidden': 'true',\n onMount: this.handleCloseMount,\n onUnmount: this.handleCloseUnmount,\n };\n }\n\n handleKeyDown = (event) => {\n switch (event.code) {\n case 'Space':\n case 'Enter':\n if (this.asProps.onClick) {\n event.preventDefault();\n this.asProps.onClick(event);\n }\n break;\n }\n };\n\n render() {\n const STag = Root;\n const {\n Children,\n styles,\n color,\n interactive,\n disabled,\n addonLeft,\n addonRight,\n resolveColor,\n id: outerId,\n uid,\n onKeyDown,\n } = this.asProps;\n const { focusable } = this.state;\n const id = outerId || `igc-${uid}-tag`;\n\n return sstyled(styles)(\n <STag\n render={Box}\n id={id}\n use:interactive={!disabled && interactive}\n role={interactive ? 'button' : undefined}\n tag-color={resolveColor(color)}\n onKeyDown={callAllEventHandlers(onKeyDown, this.handleKeyDown)}\n use:tabIndex={interactive && focusable === 'container' ? 0 : -1}\n >\n {addonLeft ? <Tag.Addon tag={addonLeft} /> : null}\n {addonTextChildren(Children, Tag.Text, Tag.Addon)}\n {addonRight ? <Tag.Addon tag={addonRight} /> : null}\n </STag>,\n );\n }\n}\n\nfunction Text(props) {\n const SText = Root;\n const { styles } = props;\n return sstyled(styles)(<SText render={Box} tag='span' />);\n}\nText.enhance = [keyboardFocusEnhance()];\n\nfunction Close(props) {\n const SClose = Root;\n const { styles } = props;\n\n React.useEffect(() => {\n props.onMount?.();\n return () => props.onUnmount?.();\n }, []);\n\n const onKeyDown = React.useCallback(\n (event) => {\n if (props.onKeyDown) {\n return props.onKeyDown(event);\n }\n\n if (props.onClick && (event.code === 'Enter' || event.code === 'Space')) {\n event.preventDefault();\n props.onClick(event);\n }\n },\n [props.onKeyDown, props.onClick],\n );\n\n return sstyled(styles)(<SClose render={Box} tag={CloseM} interactive onKeyDown={onKeyDown} />);\n}\n\nfunction Addon(props) {\n const SAddon = Root;\n const { styles } = props;\n return sstyled(styles)(<SAddon render={Box} tag='span' />);\n}\n\nfunction Circle(props) {\n const SCircle = Root;\n const { styles } = props;\n return sstyled(styles)(<SCircle render={Box} tag='span' />);\n}\n\nconst Tag = createComponent(RootTag, {\n Text,\n Addon,\n Close,\n Circle,\n});\n\nexport default Tag;\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.js","names":[],"sources":["../../src/index.d.ts"],"sourcesContent":["import React from 'react';\nimport { PropGetterFn, UnknownProperties, Intergalactic } from '@semcore/core';\nimport { BoxProps } from '@semcore/flex-box';\nimport { IconProps } from '@semcore/icon';\n\nexport type TagSize = 'xl' | 'l' | 'm';\n/** @deprecated */\nexport type TagThemeOld =\n | 'muted'\n | 'info'\n | 'success'\n | 'warning'\n | 'danger'\n | 'invert'\n | 'additional';\nexport type TagTheme = 'primary' | 'secondary' | TagThemeOld;\nexport type TagUse = 'primary' | 'secondary';\n\n/** @deprecated */\nexport interface ITagProps extends TagProps, UnknownProperties {}\nexport type TagProps = BoxProps & {\n /** Value responsible for tag availability\n */\n disabled?: boolean;\n /** Value responsible for tag activity\n */\n active?: boolean;\n /** Interactive tag\n */\n interactive?: boolean;\n /** Tag type\n * @default secondary\n * @deprecated v4.0.0\n * @use ITagProps.theme\n */\n use?: TagUse;\n /** Tag theme, there are several default themes or you can use your color\n * @default primary\n */\n theme?: TagTheme;\n /** Tag color text */\n color?: string;\n /** Tag size\n * @default m\n */\n size?: TagSize;\n /** Left addon tag */\n addonLeft?: React.ElementType;\n /** Right addon tag */\n addonRight?: React.ElementType;\n locale?: string;\n};\n\n/** @deprecated */\nexport interface ITagCloseProps extends TagCloseProps, UnknownProperties {}\nexport type TagCloseProps = IconProps & {\n /** Tag type\n * @default secondary\n */\n use?: TagUse;\n /** Tag theme, there are several default themes or you can use your color\n * @default muted\n */\n theme?: TagTheme;\n};\n\n/** @deprecated */\nexport interface ITagContext extends TagContext, UnknownProperties {}\nexport type TagContext = TagProps & {\n getCloseProps?: PropGetterFn;\n};\n\n/** @deprecated */\nexport interface ITagAddonProps extends TagAddonProps, UnknownProperties {}\nexport type TagAddonProps = BoxProps & {};\n\n/** @deprecated */\nexport interface ITagTextProps extends TagTextProps, UnknownProperties {}\nexport type TagTextProps = BoxProps & {};\n\ndeclare const Tag: Intergalactic.Component<'div', TagProps, TagContext> & {\n Text: Intergalactic.Component<'div', TagTextProps>;\n Addon: Intergalactic.Component<'div', TagAddonProps>;\n Close: Intergalactic.Component<'div', TagCloseProps>;\n Circle: Intergalactic.Component<'div', TagAddonProps>;\n};\n\nexport default Tag;\n"],"mappings":""}
1
+ {"version":3,"file":"index.d.js","names":[],"sources":["../../src/index.d.ts"],"sourcesContent":["import React from 'react';\nimport { PropGetterFn, UnknownProperties, Intergalactic } from '@semcore/core';\nimport { BoxProps } from '@semcore/flex-box';\nimport { IconProps } from '@semcore/icon';\nimport { KeyboardFocusProps } from '@semcore/utils/lib/enhances/keyboardFocusEnhance';\n\nexport type TagSize = 'xl' | 'l' | 'm';\n/** @deprecated */\nexport type TagThemeOld =\n | 'muted'\n | 'info'\n | 'success'\n | 'warning'\n | 'danger'\n | 'invert'\n | 'additional';\nexport type TagTheme = 'primary' | 'secondary' | TagThemeOld;\nexport type TagUse = 'primary' | 'secondary';\n\n/** @deprecated */\nexport interface ITagProps extends TagProps, UnknownProperties {}\nexport type TagProps = BoxProps &\n KeyboardFocusProps & {\n /** Value responsible for tag availability\n */\n disabled?: boolean;\n /** Value responsible for tag activity\n */\n active?: boolean;\n /** Interactive tag\n */\n interactive?: boolean;\n /** Tag type\n * @default secondary\n * @deprecated v4.0.0\n * @use ITagProps.theme\n */\n use?: TagUse;\n /** Tag theme, there are several default themes or you can use your color\n * @default primary\n */\n theme?: TagTheme;\n /** Tag color text */\n color?: string;\n /** Tag size\n * @default m\n */\n size?: TagSize;\n /** Left addon tag */\n addonLeft?: React.ElementType;\n /** Right addon tag */\n addonRight?: React.ElementType;\n locale?: string;\n };\n\n/** @deprecated */\nexport interface ITagCloseProps extends TagCloseProps, UnknownProperties {}\nexport type TagCloseProps = IconProps & {\n /** Tag type\n * @default secondary\n */\n use?: TagUse;\n /** Tag theme, there are several default themes or you can use your color\n * @default muted\n */\n theme?: TagTheme;\n};\n\n/** @deprecated */\nexport interface ITagContext extends TagContext, UnknownProperties {}\nexport type TagContext = TagProps & {\n getCloseProps?: PropGetterFn;\n};\n\n/** @deprecated */\nexport interface ITagAddonProps extends TagAddonProps, UnknownProperties {}\nexport type TagAddonProps = BoxProps & {};\n\n/** @deprecated */\nexport interface ITagTextProps extends TagTextProps, UnknownProperties {}\nexport type TagTextProps = BoxProps & KeyboardFocusProps & {};\n\ndeclare const Tag: Intergalactic.Component<'div', TagProps, TagContext> & {\n Text: Intergalactic.Component<'div', TagTextProps>;\n Addon: Intergalactic.Component<'div', TagAddonProps>;\n Close: Intergalactic.Component<'div', TagCloseProps>;\n Circle: Intergalactic.Component<'div', TagAddonProps>;\n};\n\nexport default Tag;\n"],"mappings":""}
@@ -43,8 +43,25 @@ STag {
43
43
  opacity: 0.1;
44
44
  filter: brightness(150%);
45
45
  }
46
+
47
+ &:active,
48
+ &:hover,
49
+ &:focus {
50
+ outline: 0;
51
+ text-decoration: none;
52
+ }
53
+ }
54
+
55
+ STag[keyboardFocused] {
56
+ box-shadow: var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5));
57
+ z-index: 1;
58
+ }
59
+
60
+ STag[keyboardFocused]:has(:focus) {
61
+ box-shadow: none;
46
62
  }
47
63
 
64
+
48
65
  STag[disabled] {
49
66
  opacity: var(--intergalactic-disabled-opacity, 0.3);
50
67
  cursor: default;
@@ -165,6 +182,11 @@ SText {
165
182
  position: relative;
166
183
  }
167
184
 
185
+ SText[keyboardFocused] {
186
+ box-shadow: var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5));
187
+ z-index: 1;
188
+ }
189
+
168
190
  SText:not(:only-child):first-child {
169
191
  padding-right: 0;
170
192
  }
@@ -227,9 +249,12 @@ SClose {
227
249
  align-items: center;
228
250
  justify-content: center;
229
251
  padding: var(--intergalactic-spacing-1x, 4px);
230
- opacity: 0.5;
231
252
 
232
- &:hover {
253
+ & path {
254
+ opacity: 0.5;
255
+ }
256
+
257
+ &:hover path {
233
258
  opacity: 1;
234
259
  }
235
260
  }
@@ -2,6 +2,7 @@ import React from 'react';
2
2
  import { PropGetterFn, UnknownProperties, Intergalactic } from 'intergalactic/core';
3
3
  import { BoxProps } from 'intergalactic/flex-box';
4
4
  import { IconProps } from 'intergalactic/icon';
5
+ import { KeyboardFocusProps } from 'intergalactic/utils/lib/enhances/keyboardFocusEnhance';
5
6
 
6
7
  export type TagSize = 'xl' | 'l' | 'm';
7
8
  /** @deprecated */
@@ -18,38 +19,39 @@ export type TagUse = 'primary' | 'secondary';
18
19
 
19
20
  /** @deprecated */
20
21
  export interface ITagProps extends TagProps, UnknownProperties {}
21
- export type TagProps = BoxProps & {
22
- /** Value responsible for tag availability
23
- */
24
- disabled?: boolean;
25
- /** Value responsible for tag activity
26
- */
27
- active?: boolean;
28
- /** Interactive tag
29
- */
30
- interactive?: boolean;
31
- /** Tag type
32
- * @default secondary
33
- * @deprecated v4.0.0
34
- * @use ITagProps.theme
35
- */
36
- use?: TagUse;
37
- /** Tag theme, there are several default themes or you can use your color
38
- * @default primary
39
- */
40
- theme?: TagTheme;
41
- /** Tag color text */
42
- color?: string;
43
- /** Tag size
44
- * @default m
45
- */
46
- size?: TagSize;
47
- /** Left addon tag */
48
- addonLeft?: React.ElementType;
49
- /** Right addon tag */
50
- addonRight?: React.ElementType;
51
- locale?: string;
52
- };
22
+ export type TagProps = BoxProps &
23
+ KeyboardFocusProps & {
24
+ /** Value responsible for tag availability
25
+ */
26
+ disabled?: boolean;
27
+ /** Value responsible for tag activity
28
+ */
29
+ active?: boolean;
30
+ /** Interactive tag
31
+ */
32
+ interactive?: boolean;
33
+ /** Tag type
34
+ * @default secondary
35
+ * @deprecated v4.0.0
36
+ * @use ITagProps.theme
37
+ */
38
+ use?: TagUse;
39
+ /** Tag theme, there are several default themes or you can use your color
40
+ * @default primary
41
+ */
42
+ theme?: TagTheme;
43
+ /** Tag color text */
44
+ color?: string;
45
+ /** Tag size
46
+ * @default m
47
+ */
48
+ size?: TagSize;
49
+ /** Left addon tag */
50
+ addonLeft?: React.ElementType;
51
+ /** Right addon tag */
52
+ addonRight?: React.ElementType;
53
+ locale?: string;
54
+ };
53
55
 
54
56
  /** @deprecated */
55
57
  export interface ITagCloseProps extends TagCloseProps, UnknownProperties {}
@@ -76,7 +78,7 @@ export type TagAddonProps = BoxProps & {};
76
78
 
77
79
  /** @deprecated */
78
80
  export interface ITagTextProps extends TagTextProps, UnknownProperties {}
79
- export type TagTextProps = BoxProps & {};
81
+ export type TagTextProps = BoxProps & KeyboardFocusProps & {};
80
82
 
81
83
  declare const Tag: Intergalactic.Component<'div', TagProps, TagContext> & {
82
84
  Text: Intergalactic.Component<'div', TagTextProps>;