@semcore/tag 17.0.0-prerelease.30 → 17.0.0-prerelease.31

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.
package/CHANGELOG.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  CHANGELOG.md standards are inspired by [keepachangelog.com](https://keepachangelog.com/en/1.0.0/).
4
4
 
5
- ## [17.0.0] - 2026-03-09
5
+ ## [17.0.0] - 2026-03-27
6
6
 
7
7
  ### BREAK
8
8
 
package/lib/cjs/Tag.js CHANGED
@@ -317,17 +317,11 @@ function Text(props) {
317
317
  const SText = _typography.Text;
318
318
  const {
319
319
  styles,
320
- tagRef,
321
- ellipsis = false,
322
- hintProps
320
+ tagRef
323
321
  } = props;
324
322
  return _ref10 = (0, _core.sstyled)(styles), /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(SText, _ref10.cn("SText", {
325
323
  ...(0, _core.assignProps)({
326
- "ellipsis": ellipsis,
327
- "hintProps": {
328
- ...hintProps,
329
- triggerRef: tagRef
330
- }
324
+ "hint:triggerRef": tagRef
331
325
  }, _ref5)
332
326
  })));
333
327
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Tag.js","names":["_core","require","_baseComponents","_addonTextChildren","_interopRequireDefault","_i18nEnhance","_resolveColorEnhance","_findComponent","_isFocusInside","_setFocus","_uniqueID","_m","_typography","_react","_intergalacticDynamicLocales","style","sstyled","insert","RootTag","Component","constructor","args","_defineProperty2","default","React","createRef","event","key","asProps","onClick","preventDefault","getCircleProps","size","color","resolveColor","getTextProps","id","uid","tabIndex","role","undefined","tagRef","render","_ref","_ref8","STag","Box","Children","styles","interactive","disabled","addonLeft","addonRight","outerId","isInteractiveView","isInteractive","createElement","Fragment","cn","assignProps","handleKeyDown","Tag","Addon","tag","addonTextChildren","Text","TagContainer","Circle","i18nEnhance","localizedMessages","uniqueIDEnhancement","resolveColorEnhance","theme","i18n","locale","RootTagContainer","componentWillUnmount","tagElement","current","isFocusInside","nextTagElement","nextElementSibling","setFocus","parentElement","getTagProps","active","getAddonProps","getCloseProps","getI18nText","_ref2","_ref9","STagContainer","forcedAdvancedMode","advancedMode","isAdvanceMode","displayName","Close","RootCloseTagContainer","onKeyDown","_ref3","_ref0","STagContainerClose","children","CloseTagContainer","TagContainerCircle","props","_ref4","arguments[0]","_ref1","SAddon","SCircle","_ref5","_ref10","SText","TypographyText","ellipsis","hintProps","triggerRef","_ref6","_ref11","tagColor","useMemo","_ref7","_ref12","createComponent","CloseM","exports","_default"],"sources":["../../src/Tag.jsx"],"sourcesContent":["import { Box } from '@semcore/base-components';\nimport { createComponent, Component, sstyled, Root } from '@semcore/core';\nimport addonTextChildren from '@semcore/core/lib/utils/addonTextChildren';\nimport i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';\nimport resolveColorEnhance from '@semcore/core/lib/utils/enhances/resolveColorEnhance';\nimport { isAdvanceMode } from '@semcore/core/lib/utils/findComponent';\nimport { isFocusInside } from '@semcore/core/lib/utils/focus-lock/isFocusInside';\nimport { setFocus } from '@semcore/core/lib/utils/focus-lock/setFocus';\nimport uniqueIDEnhancement from '@semcore/core/lib/utils/uniqueID';\nimport CloseM from '@semcore/icon/Close/m';\nimport { Text as TypographyText } from '@semcore/typography';\nimport React from 'react';\n\nimport style from './style/tag.shadow.css';\nimport { localizedMessages } from './translations/__intergalactic-dynamic-locales';\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 tagRef = React.createRef();\n\n getCircleProps() {\n const { size, color, resolveColor } = this.asProps;\n return { size, color, resolveColor };\n }\n\n getTextProps() {\n const id = this.asProps.id || `igc-${this.asProps.uid}-tag`;\n\n return {\n tabIndex: -1,\n id: `${id}-text`,\n role: undefined,\n tagRef: this.tagRef,\n };\n }\n\n handleKeyDown = (event) => {\n switch (event.key) {\n case ' ':\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 } = this.asProps;\n const id = outerId || `igc-${uid}-tag`;\n const isInteractiveView = !disabled && interactive;\n const isInteractive = !disabled && interactive;\n\n return sstyled(styles)(\n <>\n <STag\n render={Box}\n id={id}\n use:interactive={isInteractive}\n use:interactiveView={isInteractiveView}\n tag-color={resolveColor(color)}\n onKeyDown={this.handleKeyDown}\n use:tabIndex={isInteractive ? 0 : -1}\n role={isInteractive ? 'button' : undefined}\n ref={this.tagRef}\n >\n {addonLeft ? <Tag.Addon tag={addonLeft} /> : null}\n {addonTextChildren(Children, Tag.Text, [Tag.Addon, TagContainer.Circle])}\n {addonRight ? <Tag.Addon tag={addonRight} /> : null}\n </STag>\n </>,\n );\n }\n}\n\nclass RootTagContainer extends Component {\n static displayName = 'TagContainer';\n static style = style;\n static enhance = [i18nEnhance(localizedMessages), uniqueIDEnhancement(), resolveColorEnhance()];\n static defaultProps = {\n color: 'gray-500',\n theme: 'primary',\n };\n\n tagRef = React.createRef();\n\n componentWillUnmount() {\n const tagElement = this.tagRef.current;\n\n if (isFocusInside(tagElement)) {\n const nextTagElement = tagElement.nextElementSibling;\n if (nextTagElement) {\n setFocus(nextTagElement);\n } else {\n setFocus(tagElement.parentElement?.nextElementSibling);\n }\n }\n }\n\n getTagProps() {\n const {\n size,\n theme,\n color,\n disabled,\n uid,\n id: outerId,\n interactive,\n resolveColor,\n addonLeft,\n addonRight,\n active,\n } = this.asProps;\n const id = outerId || `igc-${uid}-tag`;\n\n return {\n id: `${id}-text`,\n disabled,\n size,\n theme,\n color,\n tag: interactive ? 'button' : undefined,\n interactive,\n resolveColor,\n addonLeft,\n addonRight,\n active,\n };\n }\n\n getCircleProps() {\n const { color, resolveColor, size } = this.asProps;\n return { color, resolveColor, size };\n }\n\n getAddonProps() {\n const { color, resolveColor } = this.asProps;\n\n return { color, resolveColor };\n }\n\n getCloseProps() {\n const {\n size,\n theme,\n color,\n disabled,\n uid,\n id: outerId,\n getI18nText,\n resolveColor,\n } = this.asProps;\n const id = outerId || `igc-${uid}-tag`;\n\n return {\n disabled,\n size,\n theme,\n color,\n 'id': `${id}-clear`,\n 'aria-labelledby': `${id}-clear ${id}-text`,\n 'aria-label': getI18nText('remove'),\n resolveColor,\n };\n }\n\n render() {\n const STagContainer = Root;\n const { styles, Children, forcedAdvancedMode } = this.asProps;\n const advancedMode =\n forcedAdvancedMode ||\n isAdvanceMode(\n Children,\n [\n 'InputTags.' + Tag.Text.displayName,\n 'InputTags.' + Tag.Addon.displayName,\n 'InputTags.' + Tag.Circle.displayName,\n TagContainer.Tag.displayName,\n TagContainer.Addon.displayName,\n TagContainer.Close.displayName,\n TagContainer.Circle.displayName,\n ],\n true,\n );\n\n return sstyled(styles)(\n <STagContainer render={Box} ref={this.tagRef}>\n {advancedMode\n ? (\n <Children />\n )\n : (\n <TagContainer.Tag>\n <Children />\n </TagContainer.Tag>\n )}\n </STagContainer>,\n );\n }\n}\n\nclass RootCloseTagContainer extends Component {\n static displayName = 'CloseTagContainer';\n static style = style;\n\n static defaultProps = () => {\n return {\n theme: 'primary',\n color: 'gray-500',\n size: 'm',\n i18n: localizedMessages,\n locale: 'en',\n children: <CloseTagContainer.Close />,\n };\n };\n\n static enhance = [resolveColorEnhance()];\n\n handleKeyDown = (event) => {\n const { onKeyDown, onClick } = this.asProps;\n\n if (onKeyDown) {\n return onKeyDown(event);\n }\n\n if (onClick && (event.key === 'Enter' || event.key === ' ')) {\n event.preventDefault();\n onClick(event);\n }\n };\n\n render() {\n const STagContainerClose = Root;\n const { Children, styles, color, resolveColor } = this.asProps;\n\n return sstyled(styles)(\n <STagContainerClose\n render={Box}\n tag='button'\n type='button'\n interactive={true}\n interactiveView={true}\n tag-color={resolveColor(color)}\n onKeyDown={this.handleKeyDown}\n >\n <Children />\n </STagContainerClose>,\n );\n }\n}\n\nfunction TagContainerCircle(props) {\n const SAddon = Box;\n const SCircle = Root;\n const { styles, color, resolveColor } = props;\n return sstyled(styles)(\n <SAddon tag-color={resolveColor(color)}>\n <SCircle render={Box} />\n </SAddon>,\n );\n}\n\nfunction Text(props) {\n const SText = Root;\n const { styles, tagRef, ellipsis = false, hintProps } = props;\n\n return sstyled(styles)(\n <>\n <SText\n render={TypographyText}\n ellipsis={ellipsis}\n hintProps={{\n ...hintProps,\n triggerRef: tagRef,\n }}\n />\n </>,\n );\n}\n\nfunction Addon(props) {\n const SAddon = Root;\n const { styles, color, resolveColor } = props;\n\n const tagColor = React.useMemo(() => {\n if (typeof resolveColor !== 'function') return;\n return resolveColor(color);\n }, [color, resolveColor]);\n\n return sstyled(styles)(<SAddon render={Box} tag='div' tag-color={tagColor} />);\n}\n\nfunction Circle(props) {\n const SCircle = Root;\n const { styles, color, resolveColor } = props;\n const tagColor = React.useMemo(() => {\n if (typeof resolveColor !== 'function') return;\n return resolveColor(color);\n }, [color, resolveColor]);\n return sstyled(styles)(<SCircle render={Box} tag='span' tag-color={tagColor} />);\n}\n\nconst Tag = createComponent(RootTag, {\n Text,\n Addon,\n Circle,\n});\n\nconst CloseTagContainer = createComponent(RootCloseTagContainer, {\n Close: CloseM,\n});\n\nexport const TagContainer = createComponent(RootTagContainer, {\n Tag,\n Addon,\n Close: CloseTagContainer,\n Circle: TagContainerCircle,\n});\n\nexport default Tag;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Tag.js","names":["_core","require","_baseComponents","_addonTextChildren","_interopRequireDefault","_i18nEnhance","_resolveColorEnhance","_findComponent","_isFocusInside","_setFocus","_uniqueID","_m","_typography","_react","_intergalacticDynamicLocales","style","sstyled","insert","RootTag","Component","constructor","args","_defineProperty2","default","React","createRef","event","key","asProps","onClick","preventDefault","getCircleProps","size","color","resolveColor","getTextProps","id","uid","tabIndex","role","undefined","tagRef","render","_ref","_ref8","STag","Box","Children","styles","interactive","disabled","addonLeft","addonRight","outerId","isInteractiveView","isInteractive","createElement","Fragment","cn","assignProps","handleKeyDown","Tag","Addon","tag","addonTextChildren","Text","TagContainer","Circle","i18nEnhance","localizedMessages","uniqueIDEnhancement","resolveColorEnhance","theme","i18n","locale","RootTagContainer","componentWillUnmount","tagElement","current","isFocusInside","nextTagElement","nextElementSibling","setFocus","parentElement","getTagProps","active","getAddonProps","getCloseProps","getI18nText","_ref2","_ref9","STagContainer","forcedAdvancedMode","advancedMode","isAdvanceMode","displayName","Close","RootCloseTagContainer","onKeyDown","_ref3","_ref0","STagContainerClose","children","CloseTagContainer","TagContainerCircle","props","_ref4","arguments[0]","_ref1","SAddon","SCircle","_ref5","_ref10","SText","TypographyText","_ref6","_ref11","tagColor","useMemo","_ref7","_ref12","createComponent","CloseM","exports","_default"],"sources":["../../src/Tag.jsx"],"sourcesContent":["import { Box } from '@semcore/base-components';\nimport { createComponent, Component, sstyled, Root } from '@semcore/core';\nimport addonTextChildren from '@semcore/core/lib/utils/addonTextChildren';\nimport i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';\nimport resolveColorEnhance from '@semcore/core/lib/utils/enhances/resolveColorEnhance';\nimport { isAdvanceMode } from '@semcore/core/lib/utils/findComponent';\nimport { isFocusInside } from '@semcore/core/lib/utils/focus-lock/isFocusInside';\nimport { setFocus } from '@semcore/core/lib/utils/focus-lock/setFocus';\nimport uniqueIDEnhancement from '@semcore/core/lib/utils/uniqueID';\nimport CloseM from '@semcore/icon/Close/m';\nimport { Text as TypographyText } from '@semcore/typography';\nimport React from 'react';\n\nimport style from './style/tag.shadow.css';\nimport { localizedMessages } from './translations/__intergalactic-dynamic-locales';\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 tagRef = React.createRef();\n\n getCircleProps() {\n const { size, color, resolveColor } = this.asProps;\n return { size, color, resolveColor };\n }\n\n getTextProps() {\n const id = this.asProps.id || `igc-${this.asProps.uid}-tag`;\n\n return {\n tabIndex: -1,\n id: `${id}-text`,\n role: undefined,\n tagRef: this.tagRef,\n };\n }\n\n handleKeyDown = (event) => {\n switch (event.key) {\n case ' ':\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 } = this.asProps;\n const id = outerId || `igc-${uid}-tag`;\n const isInteractiveView = !disabled && interactive;\n const isInteractive = !disabled && interactive;\n\n return sstyled(styles)(\n <>\n <STag\n render={Box}\n id={id}\n use:interactive={isInteractive}\n use:interactiveView={isInteractiveView}\n tag-color={resolveColor(color)}\n onKeyDown={this.handleKeyDown}\n use:tabIndex={isInteractive ? 0 : -1}\n role={isInteractive ? 'button' : undefined}\n ref={this.tagRef}\n >\n {addonLeft ? <Tag.Addon tag={addonLeft} /> : null}\n {addonTextChildren(Children, Tag.Text, [Tag.Addon, TagContainer.Circle])}\n {addonRight ? <Tag.Addon tag={addonRight} /> : null}\n </STag>\n </>,\n );\n }\n}\n\nclass RootTagContainer extends Component {\n static displayName = 'TagContainer';\n static style = style;\n static enhance = [i18nEnhance(localizedMessages), uniqueIDEnhancement(), resolveColorEnhance()];\n static defaultProps = {\n color: 'gray-500',\n theme: 'primary',\n };\n\n tagRef = React.createRef();\n\n componentWillUnmount() {\n const tagElement = this.tagRef.current;\n\n if (isFocusInside(tagElement)) {\n const nextTagElement = tagElement.nextElementSibling;\n if (nextTagElement) {\n setFocus(nextTagElement);\n } else {\n setFocus(tagElement.parentElement?.nextElementSibling);\n }\n }\n }\n\n getTagProps() {\n const {\n size,\n theme,\n color,\n disabled,\n uid,\n id: outerId,\n interactive,\n resolveColor,\n addonLeft,\n addonRight,\n active,\n } = this.asProps;\n const id = outerId || `igc-${uid}-tag`;\n\n return {\n id: `${id}-text`,\n disabled,\n size,\n theme,\n color,\n tag: interactive ? 'button' : undefined,\n interactive,\n resolveColor,\n addonLeft,\n addonRight,\n active,\n };\n }\n\n getCircleProps() {\n const { color, resolveColor, size } = this.asProps;\n return { color, resolveColor, size };\n }\n\n getAddonProps() {\n const { color, resolveColor } = this.asProps;\n\n return { color, resolveColor };\n }\n\n getCloseProps() {\n const {\n size,\n theme,\n color,\n disabled,\n uid,\n id: outerId,\n getI18nText,\n resolveColor,\n } = this.asProps;\n const id = outerId || `igc-${uid}-tag`;\n\n return {\n disabled,\n size,\n theme,\n color,\n 'id': `${id}-clear`,\n 'aria-labelledby': `${id}-clear ${id}-text`,\n 'aria-label': getI18nText('remove'),\n resolveColor,\n };\n }\n\n render() {\n const STagContainer = Root;\n const { styles, Children, forcedAdvancedMode } = this.asProps;\n const advancedMode =\n forcedAdvancedMode ||\n isAdvanceMode(\n Children,\n [\n 'InputTags.' + Tag.Text.displayName,\n 'InputTags.' + Tag.Addon.displayName,\n 'InputTags.' + Tag.Circle.displayName,\n TagContainer.Tag.displayName,\n TagContainer.Addon.displayName,\n TagContainer.Close.displayName,\n TagContainer.Circle.displayName,\n ],\n true,\n );\n\n return sstyled(styles)(\n <STagContainer render={Box} ref={this.tagRef}>\n {advancedMode\n ? (\n <Children />\n )\n : (\n <TagContainer.Tag>\n <Children />\n </TagContainer.Tag>\n )}\n </STagContainer>,\n );\n }\n}\n\nclass RootCloseTagContainer extends Component {\n static displayName = 'CloseTagContainer';\n static style = style;\n\n static defaultProps = () => {\n return {\n theme: 'primary',\n color: 'gray-500',\n size: 'm',\n i18n: localizedMessages,\n locale: 'en',\n children: <CloseTagContainer.Close />,\n };\n };\n\n static enhance = [resolveColorEnhance()];\n\n handleKeyDown = (event) => {\n const { onKeyDown, onClick } = this.asProps;\n\n if (onKeyDown) {\n return onKeyDown(event);\n }\n\n if (onClick && (event.key === 'Enter' || event.key === ' ')) {\n event.preventDefault();\n onClick(event);\n }\n };\n\n render() {\n const STagContainerClose = Root;\n const { Children, styles, color, resolveColor } = this.asProps;\n\n return sstyled(styles)(\n <STagContainerClose\n render={Box}\n tag='button'\n type='button'\n interactive={true}\n interactiveView={true}\n tag-color={resolveColor(color)}\n onKeyDown={this.handleKeyDown}\n >\n <Children />\n </STagContainerClose>,\n );\n }\n}\n\nfunction TagContainerCircle(props) {\n const SAddon = Box;\n const SCircle = Root;\n const { styles, color, resolveColor } = props;\n return sstyled(styles)(\n <SAddon tag-color={resolveColor(color)}>\n <SCircle render={Box} />\n </SAddon>,\n );\n}\n\nfunction Text(props) {\n const SText = Root;\n const { styles, tagRef } = props;\n\n return sstyled(styles)(\n <>\n <SText\n render={TypographyText}\n hint:triggerRef={tagRef}\n />\n </>,\n );\n}\n\nfunction Addon(props) {\n const SAddon = Root;\n const { styles, color, resolveColor } = props;\n\n const tagColor = React.useMemo(() => {\n if (typeof resolveColor !== 'function') return;\n return resolveColor(color);\n }, [color, resolveColor]);\n\n return sstyled(styles)(<SAddon render={Box} tag='div' tag-color={tagColor} />);\n}\n\nfunction Circle(props) {\n const SCircle = Root;\n const { styles, color, resolveColor } = props;\n const tagColor = React.useMemo(() => {\n if (typeof resolveColor !== 'function') return;\n return resolveColor(color);\n }, [color, resolveColor]);\n return sstyled(styles)(<SCircle render={Box} tag='span' tag-color={tagColor} />);\n}\n\nconst Tag = createComponent(RootTag, {\n Text,\n Addon,\n Circle,\n});\n\nconst CloseTagContainer = createComponent(RootCloseTagContainer, {\n Close: CloseM,\n});\n\nexport const TagContainer = createComponent(RootTagContainer, {\n Tag,\n Addon,\n Close: CloseTagContainer,\n Circle: TagContainerCircle,\n});\n\nexport default Tag;\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.js","names":[],"sources":["../../src/index.d.ts"],"sourcesContent":["import type { EllipsisSettings, SimpleHintPopperProps, BoxProps } from '@semcore/base-components';\nimport type { PropGetterFn, Intergalactic } from '@semcore/core';\nimport type { IconProps } from '@semcore/icon';\nimport type React from 'react';\n\nexport type TagSize = 'xl' | 'l' | 'm';\n\nexport type TagTheme = 'primary' | 'secondary' | 'additional';\nexport type TagUse = 'primary' | 'secondary';\n\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 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 /** Specifies the locale for i18n support */\n locale?: string;\n};\n\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\nexport type TagContext = TagProps & {\n getCloseProps?: PropGetterFn;\n};\n\nexport type TagAddonProps = BoxProps & {};\n\nexport type TagTextProps = BoxProps & {\n /**\n * Ellipsis settings\n * @default false\n */\n ellipsis?: boolean | EllipsisSettings;\n hintProps?: SimpleHintPopperProps | false;\n};\n\ndeclare const Tag: Intergalactic.Component<'div', TagProps, TagContext> & {\n Text: Intergalactic.Component<'div', TagTextProps>;\n Addon: Intergalactic.Component<'div', TagAddonProps>;\n Circle: Intergalactic.Component<'div', TagAddonProps>;\n};\n\ndeclare const TagContainer: Intergalactic.Component<'div', TagProps, TagContext> & {\n Tag: typeof Tag;\n Close: Intergalactic.Component<'button'>;\n Addon: Intergalactic.Component<'div', TagAddonProps>;\n Circle: Intergalactic.Component<'div', TagAddonProps>;\n};\n\nexport default Tag;\nexport { TagContainer };\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"file":"index.d.js","names":[],"sources":["../../src/index.d.ts"],"sourcesContent":["import type { BoxProps } from '@semcore/base-components';\nimport type { PropGetterFn, Intergalactic } from '@semcore/core';\nimport type { IconProps } from '@semcore/icon';\nimport type { TextProps } from '@semcore/typography';\nimport type React from 'react';\n\nexport type TagSize = 'xl' | 'l' | 'm';\n\nexport type TagTheme = 'primary' | 'secondary' | 'additional';\nexport type TagUse = 'primary' | 'secondary';\n\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 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 /** Specifies the locale for i18n support */\n locale?: string;\n};\n\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\nexport type TagContext = TagProps & {\n getCloseProps?: PropGetterFn;\n};\n\nexport type TagAddonProps = BoxProps & {};\n\nexport type TagTextProps = TextProps;\n\ndeclare const Tag: Intergalactic.Component<'div', TagProps, TagContext> & {\n Text: Intergalactic.Component<'div', TagTextProps>;\n Addon: Intergalactic.Component<'div', TagAddonProps>;\n Circle: Intergalactic.Component<'div', TagAddonProps>;\n};\n\ndeclare const TagContainer: Intergalactic.Component<'div', TagProps, TagContext> & {\n Tag: typeof Tag;\n Close: Intergalactic.Component<'button'>;\n Addon: Intergalactic.Component<'div', TagAddonProps>;\n Circle: Intergalactic.Component<'div', TagAddonProps>;\n};\n\nexport default Tag;\nexport { TagContainer };\n"],"mappings":"","ignoreList":[]}
package/lib/es6/Tag.js CHANGED
@@ -318,17 +318,11 @@ function Text(props) {
318
318
  const SText = TypographyText;
319
319
  const {
320
320
  styles,
321
- tagRef,
322
- ellipsis = false,
323
- hintProps
321
+ tagRef
324
322
  } = props;
325
323
  return _ref10 = sstyled(styles), /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(SText, _ref10.cn("SText", {
326
324
  ..._assignProps5({
327
- "ellipsis": ellipsis,
328
- "hintProps": {
329
- ...hintProps,
330
- triggerRef: tagRef
331
- }
325
+ "hint:triggerRef": tagRef
332
326
  }, _ref5)
333
327
  })));
334
328
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Tag.js","names":["Box","createComponent","Component","sstyled","Root","addonTextChildren","i18nEnhance","resolveColorEnhance","isAdvanceMode","isFocusInside","setFocus","uniqueIDEnhancement","CloseM","Text","TypographyText","React","style","_sstyled","insert","localizedMessages","RootTag","constructor","args","_defineProperty","createRef","event","key","asProps","onClick","preventDefault","getCircleProps","size","color","resolveColor","getTextProps","id","uid","tabIndex","role","undefined","tagRef","render","_ref","_ref8","STag","Children","styles","interactive","disabled","addonLeft","addonRight","outerId","isInteractiveView","isInteractive","createElement","Fragment","cn","_assignProps","handleKeyDown","Tag","Addon","tag","TagContainer","Circle","theme","i18n","locale","RootTagContainer","componentWillUnmount","tagElement","current","nextTagElement","nextElementSibling","parentElement","getTagProps","active","getAddonProps","getCloseProps","getI18nText","_ref2","_ref9","STagContainer","forcedAdvancedMode","advancedMode","displayName","Close","_assignProps2","RootCloseTagContainer","onKeyDown","_ref3","_ref0","STagContainerClose","_assignProps3","children","CloseTagContainer","TagContainerCircle","props","_ref4","arguments[0]","_ref1","SAddon","SCircle","_assignProps4","_ref5","_ref10","SText","ellipsis","hintProps","_assignProps5","triggerRef","_ref6","_ref11","tagColor","useMemo","_assignProps6","_ref7","_ref12","_assignProps7"],"sources":["../../src/Tag.jsx"],"sourcesContent":["import { Box } from '@semcore/base-components';\nimport { createComponent, Component, sstyled, Root } from '@semcore/core';\nimport addonTextChildren from '@semcore/core/lib/utils/addonTextChildren';\nimport i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';\nimport resolveColorEnhance from '@semcore/core/lib/utils/enhances/resolveColorEnhance';\nimport { isAdvanceMode } from '@semcore/core/lib/utils/findComponent';\nimport { isFocusInside } from '@semcore/core/lib/utils/focus-lock/isFocusInside';\nimport { setFocus } from '@semcore/core/lib/utils/focus-lock/setFocus';\nimport uniqueIDEnhancement from '@semcore/core/lib/utils/uniqueID';\nimport CloseM from '@semcore/icon/Close/m';\nimport { Text as TypographyText } from '@semcore/typography';\nimport React from 'react';\n\nimport style from './style/tag.shadow.css';\nimport { localizedMessages } from './translations/__intergalactic-dynamic-locales';\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 tagRef = React.createRef();\n\n getCircleProps() {\n const { size, color, resolveColor } = this.asProps;\n return { size, color, resolveColor };\n }\n\n getTextProps() {\n const id = this.asProps.id || `igc-${this.asProps.uid}-tag`;\n\n return {\n tabIndex: -1,\n id: `${id}-text`,\n role: undefined,\n tagRef: this.tagRef,\n };\n }\n\n handleKeyDown = (event) => {\n switch (event.key) {\n case ' ':\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 } = this.asProps;\n const id = outerId || `igc-${uid}-tag`;\n const isInteractiveView = !disabled && interactive;\n const isInteractive = !disabled && interactive;\n\n return sstyled(styles)(\n <>\n <STag\n render={Box}\n id={id}\n use:interactive={isInteractive}\n use:interactiveView={isInteractiveView}\n tag-color={resolveColor(color)}\n onKeyDown={this.handleKeyDown}\n use:tabIndex={isInteractive ? 0 : -1}\n role={isInteractive ? 'button' : undefined}\n ref={this.tagRef}\n >\n {addonLeft ? <Tag.Addon tag={addonLeft} /> : null}\n {addonTextChildren(Children, Tag.Text, [Tag.Addon, TagContainer.Circle])}\n {addonRight ? <Tag.Addon tag={addonRight} /> : null}\n </STag>\n </>,\n );\n }\n}\n\nclass RootTagContainer extends Component {\n static displayName = 'TagContainer';\n static style = style;\n static enhance = [i18nEnhance(localizedMessages), uniqueIDEnhancement(), resolveColorEnhance()];\n static defaultProps = {\n color: 'gray-500',\n theme: 'primary',\n };\n\n tagRef = React.createRef();\n\n componentWillUnmount() {\n const tagElement = this.tagRef.current;\n\n if (isFocusInside(tagElement)) {\n const nextTagElement = tagElement.nextElementSibling;\n if (nextTagElement) {\n setFocus(nextTagElement);\n } else {\n setFocus(tagElement.parentElement?.nextElementSibling);\n }\n }\n }\n\n getTagProps() {\n const {\n size,\n theme,\n color,\n disabled,\n uid,\n id: outerId,\n interactive,\n resolveColor,\n addonLeft,\n addonRight,\n active,\n } = this.asProps;\n const id = outerId || `igc-${uid}-tag`;\n\n return {\n id: `${id}-text`,\n disabled,\n size,\n theme,\n color,\n tag: interactive ? 'button' : undefined,\n interactive,\n resolveColor,\n addonLeft,\n addonRight,\n active,\n };\n }\n\n getCircleProps() {\n const { color, resolveColor, size } = this.asProps;\n return { color, resolveColor, size };\n }\n\n getAddonProps() {\n const { color, resolveColor } = this.asProps;\n\n return { color, resolveColor };\n }\n\n getCloseProps() {\n const {\n size,\n theme,\n color,\n disabled,\n uid,\n id: outerId,\n getI18nText,\n resolveColor,\n } = this.asProps;\n const id = outerId || `igc-${uid}-tag`;\n\n return {\n disabled,\n size,\n theme,\n color,\n 'id': `${id}-clear`,\n 'aria-labelledby': `${id}-clear ${id}-text`,\n 'aria-label': getI18nText('remove'),\n resolveColor,\n };\n }\n\n render() {\n const STagContainer = Root;\n const { styles, Children, forcedAdvancedMode } = this.asProps;\n const advancedMode =\n forcedAdvancedMode ||\n isAdvanceMode(\n Children,\n [\n 'InputTags.' + Tag.Text.displayName,\n 'InputTags.' + Tag.Addon.displayName,\n 'InputTags.' + Tag.Circle.displayName,\n TagContainer.Tag.displayName,\n TagContainer.Addon.displayName,\n TagContainer.Close.displayName,\n TagContainer.Circle.displayName,\n ],\n true,\n );\n\n return sstyled(styles)(\n <STagContainer render={Box} ref={this.tagRef}>\n {advancedMode\n ? (\n <Children />\n )\n : (\n <TagContainer.Tag>\n <Children />\n </TagContainer.Tag>\n )}\n </STagContainer>,\n );\n }\n}\n\nclass RootCloseTagContainer extends Component {\n static displayName = 'CloseTagContainer';\n static style = style;\n\n static defaultProps = () => {\n return {\n theme: 'primary',\n color: 'gray-500',\n size: 'm',\n i18n: localizedMessages,\n locale: 'en',\n children: <CloseTagContainer.Close />,\n };\n };\n\n static enhance = [resolveColorEnhance()];\n\n handleKeyDown = (event) => {\n const { onKeyDown, onClick } = this.asProps;\n\n if (onKeyDown) {\n return onKeyDown(event);\n }\n\n if (onClick && (event.key === 'Enter' || event.key === ' ')) {\n event.preventDefault();\n onClick(event);\n }\n };\n\n render() {\n const STagContainerClose = Root;\n const { Children, styles, color, resolveColor } = this.asProps;\n\n return sstyled(styles)(\n <STagContainerClose\n render={Box}\n tag='button'\n type='button'\n interactive={true}\n interactiveView={true}\n tag-color={resolveColor(color)}\n onKeyDown={this.handleKeyDown}\n >\n <Children />\n </STagContainerClose>,\n );\n }\n}\n\nfunction TagContainerCircle(props) {\n const SAddon = Box;\n const SCircle = Root;\n const { styles, color, resolveColor } = props;\n return sstyled(styles)(\n <SAddon tag-color={resolveColor(color)}>\n <SCircle render={Box} />\n </SAddon>,\n );\n}\n\nfunction Text(props) {\n const SText = Root;\n const { styles, tagRef, ellipsis = false, hintProps } = props;\n\n return sstyled(styles)(\n <>\n <SText\n render={TypographyText}\n ellipsis={ellipsis}\n hintProps={{\n ...hintProps,\n triggerRef: tagRef,\n }}\n />\n </>,\n );\n}\n\nfunction Addon(props) {\n const SAddon = Root;\n const { styles, color, resolveColor } = props;\n\n const tagColor = React.useMemo(() => {\n if (typeof resolveColor !== 'function') return;\n return resolveColor(color);\n }, [color, resolveColor]);\n\n return sstyled(styles)(<SAddon render={Box} tag='div' tag-color={tagColor} />);\n}\n\nfunction Circle(props) {\n const SCircle = Root;\n const { styles, color, resolveColor } = props;\n const tagColor = React.useMemo(() => {\n if (typeof resolveColor !== 'function') return;\n return resolveColor(color);\n }, [color, resolveColor]);\n return sstyled(styles)(<SCircle render={Box} tag='span' tag-color={tagColor} />);\n}\n\nconst Tag = createComponent(RootTag, {\n Text,\n Addon,\n Circle,\n});\n\nconst CloseTagContainer = createComponent(RootCloseTagContainer, {\n Close: CloseM,\n});\n\nexport const TagContainer = createComponent(RootTagContainer, {\n Tag,\n Addon,\n Close: CloseTagContainer,\n Circle: TagContainerCircle,\n});\n\nexport default Tag;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Tag.js","names":["Box","createComponent","Component","sstyled","Root","addonTextChildren","i18nEnhance","resolveColorEnhance","isAdvanceMode","isFocusInside","setFocus","uniqueIDEnhancement","CloseM","Text","TypographyText","React","style","_sstyled","insert","localizedMessages","RootTag","constructor","args","_defineProperty","createRef","event","key","asProps","onClick","preventDefault","getCircleProps","size","color","resolveColor","getTextProps","id","uid","tabIndex","role","undefined","tagRef","render","_ref","_ref8","STag","Children","styles","interactive","disabled","addonLeft","addonRight","outerId","isInteractiveView","isInteractive","createElement","Fragment","cn","_assignProps","handleKeyDown","Tag","Addon","tag","TagContainer","Circle","theme","i18n","locale","RootTagContainer","componentWillUnmount","tagElement","current","nextTagElement","nextElementSibling","parentElement","getTagProps","active","getAddonProps","getCloseProps","getI18nText","_ref2","_ref9","STagContainer","forcedAdvancedMode","advancedMode","displayName","Close","_assignProps2","RootCloseTagContainer","onKeyDown","_ref3","_ref0","STagContainerClose","_assignProps3","children","CloseTagContainer","TagContainerCircle","props","_ref4","arguments[0]","_ref1","SAddon","SCircle","_assignProps4","_ref5","_ref10","SText","_assignProps5","_ref6","_ref11","tagColor","useMemo","_assignProps6","_ref7","_ref12","_assignProps7"],"sources":["../../src/Tag.jsx"],"sourcesContent":["import { Box } from '@semcore/base-components';\nimport { createComponent, Component, sstyled, Root } from '@semcore/core';\nimport addonTextChildren from '@semcore/core/lib/utils/addonTextChildren';\nimport i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';\nimport resolveColorEnhance from '@semcore/core/lib/utils/enhances/resolveColorEnhance';\nimport { isAdvanceMode } from '@semcore/core/lib/utils/findComponent';\nimport { isFocusInside } from '@semcore/core/lib/utils/focus-lock/isFocusInside';\nimport { setFocus } from '@semcore/core/lib/utils/focus-lock/setFocus';\nimport uniqueIDEnhancement from '@semcore/core/lib/utils/uniqueID';\nimport CloseM from '@semcore/icon/Close/m';\nimport { Text as TypographyText } from '@semcore/typography';\nimport React from 'react';\n\nimport style from './style/tag.shadow.css';\nimport { localizedMessages } from './translations/__intergalactic-dynamic-locales';\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 tagRef = React.createRef();\n\n getCircleProps() {\n const { size, color, resolveColor } = this.asProps;\n return { size, color, resolveColor };\n }\n\n getTextProps() {\n const id = this.asProps.id || `igc-${this.asProps.uid}-tag`;\n\n return {\n tabIndex: -1,\n id: `${id}-text`,\n role: undefined,\n tagRef: this.tagRef,\n };\n }\n\n handleKeyDown = (event) => {\n switch (event.key) {\n case ' ':\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 } = this.asProps;\n const id = outerId || `igc-${uid}-tag`;\n const isInteractiveView = !disabled && interactive;\n const isInteractive = !disabled && interactive;\n\n return sstyled(styles)(\n <>\n <STag\n render={Box}\n id={id}\n use:interactive={isInteractive}\n use:interactiveView={isInteractiveView}\n tag-color={resolveColor(color)}\n onKeyDown={this.handleKeyDown}\n use:tabIndex={isInteractive ? 0 : -1}\n role={isInteractive ? 'button' : undefined}\n ref={this.tagRef}\n >\n {addonLeft ? <Tag.Addon tag={addonLeft} /> : null}\n {addonTextChildren(Children, Tag.Text, [Tag.Addon, TagContainer.Circle])}\n {addonRight ? <Tag.Addon tag={addonRight} /> : null}\n </STag>\n </>,\n );\n }\n}\n\nclass RootTagContainer extends Component {\n static displayName = 'TagContainer';\n static style = style;\n static enhance = [i18nEnhance(localizedMessages), uniqueIDEnhancement(), resolveColorEnhance()];\n static defaultProps = {\n color: 'gray-500',\n theme: 'primary',\n };\n\n tagRef = React.createRef();\n\n componentWillUnmount() {\n const tagElement = this.tagRef.current;\n\n if (isFocusInside(tagElement)) {\n const nextTagElement = tagElement.nextElementSibling;\n if (nextTagElement) {\n setFocus(nextTagElement);\n } else {\n setFocus(tagElement.parentElement?.nextElementSibling);\n }\n }\n }\n\n getTagProps() {\n const {\n size,\n theme,\n color,\n disabled,\n uid,\n id: outerId,\n interactive,\n resolveColor,\n addonLeft,\n addonRight,\n active,\n } = this.asProps;\n const id = outerId || `igc-${uid}-tag`;\n\n return {\n id: `${id}-text`,\n disabled,\n size,\n theme,\n color,\n tag: interactive ? 'button' : undefined,\n interactive,\n resolveColor,\n addonLeft,\n addonRight,\n active,\n };\n }\n\n getCircleProps() {\n const { color, resolveColor, size } = this.asProps;\n return { color, resolveColor, size };\n }\n\n getAddonProps() {\n const { color, resolveColor } = this.asProps;\n\n return { color, resolveColor };\n }\n\n getCloseProps() {\n const {\n size,\n theme,\n color,\n disabled,\n uid,\n id: outerId,\n getI18nText,\n resolveColor,\n } = this.asProps;\n const id = outerId || `igc-${uid}-tag`;\n\n return {\n disabled,\n size,\n theme,\n color,\n 'id': `${id}-clear`,\n 'aria-labelledby': `${id}-clear ${id}-text`,\n 'aria-label': getI18nText('remove'),\n resolveColor,\n };\n }\n\n render() {\n const STagContainer = Root;\n const { styles, Children, forcedAdvancedMode } = this.asProps;\n const advancedMode =\n forcedAdvancedMode ||\n isAdvanceMode(\n Children,\n [\n 'InputTags.' + Tag.Text.displayName,\n 'InputTags.' + Tag.Addon.displayName,\n 'InputTags.' + Tag.Circle.displayName,\n TagContainer.Tag.displayName,\n TagContainer.Addon.displayName,\n TagContainer.Close.displayName,\n TagContainer.Circle.displayName,\n ],\n true,\n );\n\n return sstyled(styles)(\n <STagContainer render={Box} ref={this.tagRef}>\n {advancedMode\n ? (\n <Children />\n )\n : (\n <TagContainer.Tag>\n <Children />\n </TagContainer.Tag>\n )}\n </STagContainer>,\n );\n }\n}\n\nclass RootCloseTagContainer extends Component {\n static displayName = 'CloseTagContainer';\n static style = style;\n\n static defaultProps = () => {\n return {\n theme: 'primary',\n color: 'gray-500',\n size: 'm',\n i18n: localizedMessages,\n locale: 'en',\n children: <CloseTagContainer.Close />,\n };\n };\n\n static enhance = [resolveColorEnhance()];\n\n handleKeyDown = (event) => {\n const { onKeyDown, onClick } = this.asProps;\n\n if (onKeyDown) {\n return onKeyDown(event);\n }\n\n if (onClick && (event.key === 'Enter' || event.key === ' ')) {\n event.preventDefault();\n onClick(event);\n }\n };\n\n render() {\n const STagContainerClose = Root;\n const { Children, styles, color, resolveColor } = this.asProps;\n\n return sstyled(styles)(\n <STagContainerClose\n render={Box}\n tag='button'\n type='button'\n interactive={true}\n interactiveView={true}\n tag-color={resolveColor(color)}\n onKeyDown={this.handleKeyDown}\n >\n <Children />\n </STagContainerClose>,\n );\n }\n}\n\nfunction TagContainerCircle(props) {\n const SAddon = Box;\n const SCircle = Root;\n const { styles, color, resolveColor } = props;\n return sstyled(styles)(\n <SAddon tag-color={resolveColor(color)}>\n <SCircle render={Box} />\n </SAddon>,\n );\n}\n\nfunction Text(props) {\n const SText = Root;\n const { styles, tagRef } = props;\n\n return sstyled(styles)(\n <>\n <SText\n render={TypographyText}\n hint:triggerRef={tagRef}\n />\n </>,\n );\n}\n\nfunction Addon(props) {\n const SAddon = Root;\n const { styles, color, resolveColor } = props;\n\n const tagColor = React.useMemo(() => {\n if (typeof resolveColor !== 'function') return;\n return resolveColor(color);\n }, [color, resolveColor]);\n\n return sstyled(styles)(<SAddon render={Box} tag='div' tag-color={tagColor} />);\n}\n\nfunction Circle(props) {\n const SCircle = Root;\n const { styles, color, resolveColor } = props;\n const tagColor = React.useMemo(() => {\n if (typeof resolveColor !== 'function') return;\n return resolveColor(color);\n }, [color, resolveColor]);\n return sstyled(styles)(<SCircle render={Box} tag='span' tag-color={tagColor} />);\n}\n\nconst Tag = createComponent(RootTag, {\n Text,\n Addon,\n Circle,\n});\n\nconst CloseTagContainer = createComponent(RootCloseTagContainer, {\n Close: CloseM,\n});\n\nexport const TagContainer = createComponent(RootTagContainer, {\n Tag,\n Addon,\n Close: CloseTagContainer,\n Circle: TagContainerCircle,\n});\n\nexport default Tag;\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.js","names":[],"sources":["../../src/index.d.ts"],"sourcesContent":["import type { EllipsisSettings, SimpleHintPopperProps, BoxProps } from '@semcore/base-components';\nimport type { PropGetterFn, Intergalactic } from '@semcore/core';\nimport type { IconProps } from '@semcore/icon';\nimport type React from 'react';\n\nexport type TagSize = 'xl' | 'l' | 'm';\n\nexport type TagTheme = 'primary' | 'secondary' | 'additional';\nexport type TagUse = 'primary' | 'secondary';\n\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 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 /** Specifies the locale for i18n support */\n locale?: string;\n};\n\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\nexport type TagContext = TagProps & {\n getCloseProps?: PropGetterFn;\n};\n\nexport type TagAddonProps = BoxProps & {};\n\nexport type TagTextProps = BoxProps & {\n /**\n * Ellipsis settings\n * @default false\n */\n ellipsis?: boolean | EllipsisSettings;\n hintProps?: SimpleHintPopperProps | false;\n};\n\ndeclare const Tag: Intergalactic.Component<'div', TagProps, TagContext> & {\n Text: Intergalactic.Component<'div', TagTextProps>;\n Addon: Intergalactic.Component<'div', TagAddonProps>;\n Circle: Intergalactic.Component<'div', TagAddonProps>;\n};\n\ndeclare const TagContainer: Intergalactic.Component<'div', TagProps, TagContext> & {\n Tag: typeof Tag;\n Close: Intergalactic.Component<'button'>;\n Addon: Intergalactic.Component<'div', TagAddonProps>;\n Circle: Intergalactic.Component<'div', TagAddonProps>;\n};\n\nexport default Tag;\nexport { TagContainer };\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"file":"index.d.js","names":[],"sources":["../../src/index.d.ts"],"sourcesContent":["import type { BoxProps } from '@semcore/base-components';\nimport type { PropGetterFn, Intergalactic } from '@semcore/core';\nimport type { IconProps } from '@semcore/icon';\nimport type { TextProps } from '@semcore/typography';\nimport type React from 'react';\n\nexport type TagSize = 'xl' | 'l' | 'm';\n\nexport type TagTheme = 'primary' | 'secondary' | 'additional';\nexport type TagUse = 'primary' | 'secondary';\n\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 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 /** Specifies the locale for i18n support */\n locale?: string;\n};\n\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\nexport type TagContext = TagProps & {\n getCloseProps?: PropGetterFn;\n};\n\nexport type TagAddonProps = BoxProps & {};\n\nexport type TagTextProps = TextProps;\n\ndeclare const Tag: Intergalactic.Component<'div', TagProps, TagContext> & {\n Text: Intergalactic.Component<'div', TagTextProps>;\n Addon: Intergalactic.Component<'div', TagAddonProps>;\n Circle: Intergalactic.Component<'div', TagAddonProps>;\n};\n\ndeclare const TagContainer: Intergalactic.Component<'div', TagProps, TagContext> & {\n Tag: typeof Tag;\n Close: Intergalactic.Component<'button'>;\n Addon: Intergalactic.Component<'div', TagAddonProps>;\n Circle: Intergalactic.Component<'div', TagAddonProps>;\n};\n\nexport default Tag;\nexport { TagContainer };\n"],"mappings":"","ignoreList":[]}
package/lib/esm/Tag.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
2
- import { createComponent, sstyled, Component, assignProps } from "@semcore/core";
2
+ import { sstyled, createComponent, Component, assignProps } from "@semcore/core";
3
3
  import { Box } from "@semcore/base-components";
4
4
  import addonTextChildren from "@semcore/core/lib/utils/addonTextChildren";
5
5
  import i18nEnhance from "@semcore/core/lib/utils/enhances/i18nEnhance";
@@ -313,17 +313,11 @@ function Text(props) {
313
313
  const SText = Text$1;
314
314
  const {
315
315
  styles,
316
- tagRef,
317
- ellipsis = false,
318
- hintProps
316
+ tagRef
319
317
  } = props;
320
318
  return _ref10 = sstyled(styles), /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(SText, _ref10.cn("SText", {
321
319
  ...assignProps({
322
- "ellipsis": ellipsis,
323
- "hintProps": {
324
- ...hintProps,
325
- triggerRef: tagRef
326
- }
320
+ "hint:triggerRef": tagRef
327
321
  }, _ref5)
328
322
  })));
329
323
  }
@@ -1,6 +1,7 @@
1
- import type { EllipsisSettings, SimpleHintPopperProps, BoxProps } from '@semcore/base-components';
1
+ import type { BoxProps } from '@semcore/base-components';
2
2
  import type { PropGetterFn, Intergalactic } from '@semcore/core';
3
3
  import type { IconProps } from '@semcore/icon';
4
+ import type { TextProps } from '@semcore/typography';
4
5
  import type React from 'react';
5
6
 
6
7
  export type TagSize = 'xl' | 'l' | 'm';
@@ -53,14 +54,7 @@ export type TagContext = TagProps & {
53
54
 
54
55
  export type TagAddonProps = BoxProps & {};
55
56
 
56
- export type TagTextProps = BoxProps & {
57
- /**
58
- * Ellipsis settings
59
- * @default false
60
- */
61
- ellipsis?: boolean | EllipsisSettings;
62
- hintProps?: SimpleHintPopperProps | false;
63
- };
57
+ export type TagTextProps = TextProps;
64
58
 
65
59
  declare const Tag: Intergalactic.Component<'div', TagProps, TagContext> & {
66
60
  Text: Intergalactic.Component<'div', TagTextProps>;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@semcore/tag",
3
3
  "description": "Semrush Tag Component",
4
- "version": "17.0.0-prerelease.30",
4
+ "version": "17.0.0-prerelease.31",
5
5
  "main": "lib/cjs/index.js",
6
6
  "module": "lib/es6/index.js",
7
7
  "typings": "lib/types/index.d.ts",
@@ -14,7 +14,7 @@
14
14
  "types": "./lib/types/index.d.ts"
15
15
  },
16
16
  "dependencies": {
17
- "@semcore/typography": "^17.0.0-prerelease.30"
17
+ "@semcore/typography": "^17.0.0-prerelease.31"
18
18
  },
19
19
  "peerDependencies": {
20
20
  "@semcore/base-components": "^17.0.0 || ^17.0.0-0",
@@ -26,10 +26,10 @@
26
26
  "directory": "semcore/tag"
27
27
  },
28
28
  "devDependencies": {
29
- "@semcore/core": "17.0.0-prerelease.30",
29
+ "@semcore/core": "17.0.0-prerelease.31",
30
+ "@semcore/base-components": "17.0.0-prerelease.31",
30
31
  "@semcore/testing-utils": "1.0.0",
31
- "@semcore/base-components": "17.0.0-prerelease.30",
32
- "@semcore/icon": "16.7.2-prerelease.30"
32
+ "@semcore/icon": "16.7.2-prerelease.31"
33
33
  },
34
34
  "scripts": {
35
35
  "build": "pnpm semcore-builder --source=js && pnpm vite build"