@semcore/pills 16.0.9 → 16.0.10-prerelease.3
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 +6 -0
- package/lib/cjs/Pills.js +14 -17
- package/lib/cjs/Pills.js.map +1 -1
- package/lib/cjs/index.d.js.map +1 -1
- package/lib/cjs/style/pills.shadow.css +13 -13
- package/lib/es6/Pills.js +13 -16
- package/lib/es6/Pills.js.map +1 -1
- package/lib/es6/index.d.js.map +1 -1
- package/lib/es6/style/pills.shadow.css +13 -13
- package/lib/esm/Pills.mjs +14 -19
- package/lib/esm/style/pills.shadow.css +13 -13
- package/lib/types/index.d.ts +13 -4
- package/package.json +7 -7
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,12 @@
|
|
|
2
2
|
|
|
3
3
|
CHANGELOG.md standards are inspired by [keepachangelog.com](https://keepachangelog.com/en/1.0.0/).
|
|
4
4
|
|
|
5
|
+
## [16.0.10] - 2025-10-06
|
|
6
|
+
|
|
7
|
+
### Changed
|
|
8
|
+
|
|
9
|
+
- Version patch update due to children dependencies update (`@semcore/flex-box` [16.0.9 ~> 16.0.10], `@semcore/neighbor-location` [16.0.9 ~> 16.0.10], `@semcore/base-components` [16.2.3 ~> 16.4.0]).
|
|
10
|
+
|
|
5
11
|
## [16.0.9] - 2025-09-17
|
|
6
12
|
|
|
7
13
|
### Changed
|
package/lib/cjs/Pills.js
CHANGED
|
@@ -9,9 +9,7 @@ exports.wrapPills = exports["default"] = void 0;
|
|
|
9
9
|
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
|
10
10
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
11
11
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
12
|
-
var
|
|
13
|
-
var _isNativeReflectConstruct2 = _interopRequireDefault(require("@babel/runtime/helpers/isNativeReflectConstruct"));
|
|
14
|
-
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
12
|
+
var _callSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/callSuper"));
|
|
15
13
|
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
16
14
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
17
15
|
var _core = require("@semcore/core");
|
|
@@ -21,22 +19,21 @@ var _logger = _interopRequireDefault(require("@semcore/core/lib/utils/logger"));
|
|
|
21
19
|
var _flexBox = require("@semcore/flex-box");
|
|
22
20
|
var _neighborLocation = _interopRequireWildcard(require("@semcore/neighbor-location"));
|
|
23
21
|
var _react = _interopRequireDefault(require("react"));
|
|
24
|
-
function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, (0, _isNativeReflectConstruct2["default"])() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
|
|
25
22
|
/*!__reshadow-styles__:"./style/pills.shadow.css"*/
|
|
26
|
-
var style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".
|
|
23
|
+
var style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".___SPills_1dybo_gg_{display:inline-flex;align-items:center;justify-content:center;isolation:isolate;border-radius:var(--intergalactic-control-rounded, 6px)}.___SPills_1dybo_gg_ .___SPill_1dybo_gg_.__selected_1dybo_gg_{background:var(--intergalactic-control-secondary-info, rgba(0, 143, 248, 0.1));border-color:var(--intergalactic-border-info-active, #006dca);z-index:3}.___SPills_1dybo_gg_ .___SPill_1dybo_gg_.__selected_1dybo_gg_,.___SPills_1dybo_gg_ .___SPill_1dybo_gg_:focus-visible{z-index:3}.___SPills_1dybo_gg_ .___SPill_1dybo_gg_:active{z-index:2}@media (hover:hover){.___SPills_1dybo_gg_ .___SPill_1dybo_gg_:hover{z-index:2}}.___SPill_1dybo_gg_{display:inline-flex;align-items:center;justify-content:center;line-height:normal;position:relative;touch-action:manipulation;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none;box-sizing:border-box;padding:0;margin:0;box-shadow:none;-webkit-text-decoration:none;text-decoration:none;-webkit-tap-highlight-color:transparent;overflow:visible;text-align:center;vertical-align:middle;font-family:inherit;cursor:pointer;background:var(--intergalactic-bg-primary-neutral, #ffffff);border:1px solid var(--intergalactic-border-primary, #c4c7cf);border-radius:var(--intergalactic-control-rounded, 6px)}.___SPill_1dybo_gg_::-moz-focus-inner{border:0;padding:0}.___SPill_1dybo_gg_:active{outline:0;-webkit-text-decoration:none;text-decoration:none}@media (hover:hover){.___SPill_1dybo_gg_:hover{background:var(--intergalactic-bg-primary-neutral-hover, #f4f5f9)}}.___SPill_1dybo_gg_.__disabled_1dybo_gg_{cursor:default;pointer-events:none}.___SPill_1dybo_gg_.__disabled_1dybo_gg_>*{opacity:var(--intergalactic-disabled-opacity, 0.3)}.___SText_1dybo_gg_{color:var(--intergalactic-text-primary, #191b23);display:inline-flex}.___SAddon_1dybo_gg_{color:var(--intergalactic-text-secondary, #6c6e79);display:inline-flex;align-items:center;justify-content:center}.___SPill_1dybo_gg_._size_m_1dybo_gg_{height:var(--intergalactic-form-control-m, 28px);min-width:var(--intergalactic-form-control-m, 28px);font-size:var(--intergalactic-fs-200, 14px)}.___SPill_1dybo_gg_._size_l_1dybo_gg_ .___SText_1dybo_gg_,.___SPill_1dybo_gg_._size_m_1dybo_gg_ .___SText_1dybo_gg_{margin-left:var(--intergalactic-spacing-2x, 8px);margin-right:var(--intergalactic-spacing-2x, 8px)}.___SPill_1dybo_gg_._size_m_1dybo_gg_ .___SAddon_1dybo_gg_:not(:only-child):first-child{margin-left:var(--intergalactic-spacing-2x, 8px)}.___SPill_1dybo_gg_._size_m_1dybo_gg_ .___SAddon_1dybo_gg_:not(:only-child):last-child{margin-right:var(--intergalactic-spacing-2x, 8px)}.___SPill_1dybo_gg_._size_m_1dybo_gg_ .___SAddon_1dybo_gg_:only-child{margin-left:var(--intergalactic-spacing-2x, 8px);margin-right:var(--intergalactic-spacing-2x, 8px)}.___SPill_1dybo_gg_._size_l_1dybo_gg_{height:var(--intergalactic-form-control-l, 40px);min-width:var(--intergalactic-form-control-l, 40px);font-size:var(--intergalactic-fs-300, 16px)}.___SPill_1dybo_gg_._size_l_1dybo_gg_ .___SAddon_1dybo_gg_:only-child,.___SPill_1dybo_gg_._size_l_1dybo_gg_ .___SText_1dybo_gg_:only-child{margin-left:var(--intergalactic-spacing-3x, 12px);margin-right:var(--intergalactic-spacing-3x, 12px)}.___SPill_1dybo_gg_._size_l_1dybo_gg_ .___SAddon_1dybo_gg_:not(:only-child):first-child{margin-left:var(--intergalactic-spacing-3x, 12px)}.___SPill_1dybo_gg_._size_l_1dybo_gg_ .___SAddon_1dybo_gg_:not(:only-child):last-child{margin-right:var(--intergalactic-spacing-3x, 12px)}.___SPill_1dybo_gg_._neighborLocation_right_1dybo_gg_{border-top-right-radius:0;border-bottom-right-radius:0}.___SPill_1dybo_gg_._neighborLocation_both_1dybo_gg_{border-radius:0;margin-left:-1px}.___SPill_1dybo_gg_._neighborLocation_left_1dybo_gg_{border-top-left-radius:0;border-bottom-left-radius:0;margin-left:-1px}", /*__inner_css_end__*/"1dybo_gg_"),
|
|
27
24
|
/*__reshadow_css_end__*/
|
|
28
25
|
{
|
|
29
|
-
"
|
|
30
|
-
"
|
|
31
|
-
"
|
|
32
|
-
"
|
|
33
|
-
"
|
|
34
|
-
"
|
|
35
|
-
"
|
|
36
|
-
"
|
|
37
|
-
"_disabled": "
|
|
38
|
-
"_size_m": "
|
|
39
|
-
"_size_l": "
|
|
26
|
+
"__SText": "___SText_1dybo_gg_",
|
|
27
|
+
"__SAddon": "___SAddon_1dybo_gg_",
|
|
28
|
+
"__SPill": "___SPill_1dybo_gg_",
|
|
29
|
+
"_neighborLocation_right": "_neighborLocation_right_1dybo_gg_",
|
|
30
|
+
"_neighborLocation_both": "_neighborLocation_both_1dybo_gg_",
|
|
31
|
+
"_neighborLocation_left": "_neighborLocation_left_1dybo_gg_",
|
|
32
|
+
"__SPills": "___SPills_1dybo_gg_",
|
|
33
|
+
"_selected": "__selected_1dybo_gg_",
|
|
34
|
+
"_disabled": "__disabled_1dybo_gg_",
|
|
35
|
+
"_size_m": "_size_m_1dybo_gg_",
|
|
36
|
+
"_size_l": "_size_l_1dybo_gg_"
|
|
40
37
|
});
|
|
41
38
|
var optionsA11yEnhance = {
|
|
42
39
|
onNeighborChange: function onNeighborChange(neighborElement, props) {
|
|
@@ -58,7 +55,7 @@ var RootPills = /*#__PURE__*/function (_Component) {
|
|
|
58
55
|
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
59
56
|
args[_key] = arguments[_key];
|
|
60
57
|
}
|
|
61
|
-
_this =
|
|
58
|
+
_this = (0, _callSuper2["default"])(this, RootPills, [].concat(args));
|
|
62
59
|
(0, _defineProperty2["default"])(_this, "itemValues", []);
|
|
63
60
|
(0, _defineProperty2["default"])(_this, "bindHandlerClick", function (value) {
|
|
64
61
|
return function (e) {
|
package/lib/cjs/Pills.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Pills.js","names":["_core","require","_addonTextChildren","_interopRequireDefault","_a11yEnhance","_logger","_flexBox","_neighborLocation","_interopRequireWildcard","_react","_callSuper","t","o","e","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct2","Reflect","construct","constructor","apply","style","sstyled","insert","optionsA11yEnhance","onNeighborChange","neighborElement","props","focus","behavior","click","childSelector","RootPills","_Component","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","concat","_defineProperty2","value","handlers","event","key","preventDefault","startIndex","type","selectable","itemValues","element","itemRefs","disabled","undefined","_inherits2","_createClass2","componentDidMount","log","warn","asProps","uncontrolledProps","getItemProps","index","_this$asProps","size","isSelected","selected","tabIndex","onClick","bindHandlerClick","onKeyDown","bindHandleKeyDown","render","_ref","_ref5","SPills","Box","_this$asProps2","Children","styles","controlsLength","createElement","cn","_objectSpread2","assignProps","Component","_ref9","defaultValue","a11yEnhance","Pill","_ref2","arguments[0]","_ref6","SPill","addonLeft","addonRight","neighborLocation","useNeighborLocationDetect","roleAreaProps","role","Pills","Item","Addon","tag","addonTextChildren","Text","_ref3","_ref7","SText","_ref4","_ref8","SAddon","createComponent","wrapPills","exports","wrapper","_default"],"sources":["../../src/Pills.jsx"],"sourcesContent":["import { createComponent, Component, sstyled, Root } from '@semcore/core';\nimport addonTextChildren from '@semcore/core/lib/utils/addonTextChildren';\nimport a11yEnhance from '@semcore/core/lib/utils/enhances/a11yEnhance';\nimport log from '@semcore/core/lib/utils/logger';\nimport { Box } from '@semcore/flex-box';\nimport NeighborLocation, { useNeighborLocationDetect } from '@semcore/neighbor-location';\nimport React from 'react';\n\nimport style from './style/pills.shadow.css';\n\nconst optionsA11yEnhance = {\n onNeighborChange: (neighborElement, props) => {\n if (neighborElement) {\n neighborElement.focus();\n if (props.behavior === 'auto' || props.behavior === 'radio') {\n neighborElement.click();\n }\n }\n },\n childSelector: (props) =>\n props.behavior === 'auto' || props.behavior === 'radio' ? ['role', 'radio'] : ['role', 'tab'],\n};\n\nclass RootPills extends Component {\n static displayName = 'Pills';\n static style = style;\n static defaultProps = ({ behavior }) => ({\n size: 'm',\n defaultValue: null,\n behavior: behavior ?? 'auto',\n });\n\n itemValues = [];\n static enhance = [a11yEnhance(optionsA11yEnhance)];\n\n componentDidMount() {\n log.warn(\n this.asProps.behavior === 'tabs',\n 'Use behavior `manual` instead of `tabs`. \\n`tabs` is deprecated and will be removed in the next major release.',\n 'Pills',\n );\n\n log.warn(\n this.asProps.behavior === 'radio',\n 'Use behavior `auto` (or nothing, it is default value) instead of `radio`. \\n`radio` is deprecated and will be removed in the next major release.',\n 'Pills',\n );\n }\n\n uncontrolledProps() {\n return {\n value: null,\n };\n }\n\n bindHandlerClick = (value) => (e) => {\n this.handlers.value(value, e);\n };\n\n bindHandleKeyDown = (value) => (event) => {\n if (event.key === 'Enter' || event.key === ' ') {\n event.preventDefault();\n this.handlers.value(value, event);\n }\n };\n\n getItemProps(props, index) {\n const { value, size, disabled, behavior } = this.asProps;\n const isSelected = value === props.value;\n\n this.itemValues[index] = props.value;\n return {\n index: index,\n size,\n disabled,\n selected: isSelected,\n behavior,\n tabIndex: isSelected ? 0 : -1,\n onClick: this.bindHandlerClick(props.value),\n onKeyDown: this.bindHandleKeyDown(props.value),\n };\n }\n\n changeIndex = (startIndex, type) => {\n let selectable = false;\n\n while (!selectable && startIndex >= 0 && startIndex < this.itemValues.length) {\n if (type === 'increment') startIndex++;\n if (type === 'decrement') startIndex--;\n\n const element = this.itemRefs[startIndex];\n\n if (element?.disabled === false) {\n selectable = true;\n }\n }\n\n return startIndex >= 0 && startIndex < this.itemValues.length ? startIndex : undefined;\n };\n\n render() {\n const SPills = Root;\n const { Children, styles, controlsLength, disabled, behavior, value } = this.asProps;\n\n return sstyled(styles)(\n <SPills\n render={Box}\n role={behavior === 'radio' || behavior === 'auto' ? 'radiogroup' : 'tablist'}\n aria-disabled={disabled}\n use:tabIndex={value !== null ? -1 : 0}\n >\n <NeighborLocation controlsLength={controlsLength}>\n <Children />\n </NeighborLocation>\n </SPills>,\n );\n }\n}\n\nfunction Pill(props) {\n const SPill = Root;\n const { Children, styles, addonLeft, addonRight, selected, disabled, index, behavior } = props;\n const neighborLocation = useNeighborLocationDetect(index);\n const roleAreaProps = {};\n if (behavior === 'radio' || behavior === 'auto') {\n roleAreaProps.role = 'radio';\n roleAreaProps['aria-checked'] = selected;\n } else {\n roleAreaProps.role = 'tab';\n roleAreaProps['aria-selected'] = selected;\n }\n return sstyled(styles)(\n <SPill\n render={Box}\n tag='button'\n type='button'\n tabIndex={0}\n neighborLocation={neighborLocation}\n aria-disabled={disabled}\n {...roleAreaProps}\n >\n {addonLeft ? <Pills.Item.Addon tag={addonLeft} /> : null}\n {addonTextChildren(Children, Pills.Item.Text, Pills.Item.Addon)}\n {addonRight ? <Pills.Item.Addon tag={addonRight} /> : null}\n </SPill>,\n );\n}\n\nfunction Text(props) {\n const SText = Root;\n return sstyled(props.styles)(<SText render={Box} tag='span' />);\n}\n\nfunction Addon(props) {\n const SAddon = Root;\n return sstyled(props.styles)(<SAddon render={Box} tag='span' />);\n}\n\nconst Pills = createComponent(RootPills, {\n Item: [Pill, { Text, Addon }],\n});\n\nexport const wrapPills = (wrapper) => wrapper;\n\nexport default Pills;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"Pills.js","names":["_core","require","_addonTextChildren","_interopRequireDefault","_a11yEnhance","_logger","_flexBox","_neighborLocation","_interopRequireWildcard","_react","style","sstyled","insert","optionsA11yEnhance","onNeighborChange","neighborElement","props","focus","behavior","click","childSelector","RootPills","_Component","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","_callSuper2","concat","_defineProperty2","value","e","handlers","event","key","preventDefault","startIndex","type","selectable","itemValues","element","itemRefs","disabled","undefined","_inherits2","_createClass2","componentDidMount","log","warn","asProps","uncontrolledProps","getItemProps","index","_this$asProps","size","isSelected","selected","tabIndex","onClick","bindHandlerClick","onKeyDown","bindHandleKeyDown","render","_ref","_ref5","SPills","Box","_this$asProps2","Children","styles","controlsLength","createElement","cn","_objectSpread2","assignProps","Component","_ref9","defaultValue","a11yEnhance","Pill","_ref2","arguments[0]","_ref6","SPill","addonLeft","addonRight","neighborLocation","useNeighborLocationDetect","roleAreaProps","role","Pills","Item","Addon","tag","addonTextChildren","Text","_ref3","_ref7","SText","_ref4","_ref8","SAddon","createComponent","wrapPills","exports","wrapper","_default"],"sources":["../../src/Pills.jsx"],"sourcesContent":["import { createComponent, Component, sstyled, Root } from '@semcore/core';\nimport addonTextChildren from '@semcore/core/lib/utils/addonTextChildren';\nimport a11yEnhance from '@semcore/core/lib/utils/enhances/a11yEnhance';\nimport log from '@semcore/core/lib/utils/logger';\nimport { Box } from '@semcore/flex-box';\nimport NeighborLocation, { useNeighborLocationDetect } from '@semcore/neighbor-location';\nimport React from 'react';\n\nimport style from './style/pills.shadow.css';\n\nconst optionsA11yEnhance = {\n onNeighborChange: (neighborElement, props) => {\n if (neighborElement) {\n neighborElement.focus();\n if (props.behavior === 'auto' || props.behavior === 'radio') {\n neighborElement.click();\n }\n }\n },\n childSelector: (props) =>\n props.behavior === 'auto' || props.behavior === 'radio' ? ['role', 'radio'] : ['role', 'tab'],\n};\n\nclass RootPills extends Component {\n static displayName = 'Pills';\n static style = style;\n static defaultProps = ({ behavior }) => ({\n size: 'm',\n defaultValue: null,\n behavior: behavior ?? 'auto',\n });\n\n itemValues = [];\n static enhance = [a11yEnhance(optionsA11yEnhance)];\n\n componentDidMount() {\n log.warn(\n this.asProps.behavior === 'tabs',\n 'Use behavior `manual` instead of `tabs`. \\n`tabs` is deprecated and will be removed in the next major release.',\n 'Pills',\n );\n\n log.warn(\n this.asProps.behavior === 'radio',\n 'Use behavior `auto` (or nothing, it is default value) instead of `radio`. \\n`radio` is deprecated and will be removed in the next major release.',\n 'Pills',\n );\n }\n\n uncontrolledProps() {\n return {\n value: null,\n };\n }\n\n bindHandlerClick = (value) => (e) => {\n this.handlers.value(value, e);\n };\n\n bindHandleKeyDown = (value) => (event) => {\n if (event.key === 'Enter' || event.key === ' ') {\n event.preventDefault();\n this.handlers.value(value, event);\n }\n };\n\n getItemProps(props, index) {\n const { value, size, disabled, behavior } = this.asProps;\n const isSelected = value === props.value;\n\n this.itemValues[index] = props.value;\n return {\n index: index,\n size,\n disabled,\n selected: isSelected,\n behavior,\n tabIndex: isSelected ? 0 : -1,\n onClick: this.bindHandlerClick(props.value),\n onKeyDown: this.bindHandleKeyDown(props.value),\n };\n }\n\n changeIndex = (startIndex, type) => {\n let selectable = false;\n\n while (!selectable && startIndex >= 0 && startIndex < this.itemValues.length) {\n if (type === 'increment') startIndex++;\n if (type === 'decrement') startIndex--;\n\n const element = this.itemRefs[startIndex];\n\n if (element?.disabled === false) {\n selectable = true;\n }\n }\n\n return startIndex >= 0 && startIndex < this.itemValues.length ? startIndex : undefined;\n };\n\n render() {\n const SPills = Root;\n const { Children, styles, controlsLength, disabled, behavior, value } = this.asProps;\n\n return sstyled(styles)(\n <SPills\n render={Box}\n role={behavior === 'radio' || behavior === 'auto' ? 'radiogroup' : 'tablist'}\n aria-disabled={disabled}\n use:tabIndex={value !== null ? -1 : 0}\n >\n <NeighborLocation controlsLength={controlsLength}>\n <Children />\n </NeighborLocation>\n </SPills>,\n );\n }\n}\n\nfunction Pill(props) {\n const SPill = Root;\n const { Children, styles, addonLeft, addonRight, selected, disabled, index, behavior } = props;\n const neighborLocation = useNeighborLocationDetect(index);\n const roleAreaProps = {};\n if (behavior === 'radio' || behavior === 'auto') {\n roleAreaProps.role = 'radio';\n roleAreaProps['aria-checked'] = selected;\n } else {\n roleAreaProps.role = 'tab';\n roleAreaProps['aria-selected'] = selected;\n }\n return sstyled(styles)(\n <SPill\n render={Box}\n tag='button'\n type='button'\n tabIndex={0}\n neighborLocation={neighborLocation}\n aria-disabled={disabled}\n {...roleAreaProps}\n >\n {addonLeft ? <Pills.Item.Addon tag={addonLeft} /> : null}\n {addonTextChildren(Children, Pills.Item.Text, Pills.Item.Addon)}\n {addonRight ? <Pills.Item.Addon tag={addonRight} /> : null}\n </SPill>,\n );\n}\n\nfunction Text(props) {\n const SText = Root;\n return sstyled(props.styles)(<SText render={Box} tag='span' />);\n}\n\nfunction Addon(props) {\n const SAddon = Root;\n return sstyled(props.styles)(<SAddon render={Box} tag='span' />);\n}\n\nconst Pills = createComponent(RootPills, {\n Item: [Pill, { Text, Addon }],\n});\n\nexport const wrapPills = (wrapper) => wrapper;\n\nexport default Pills;\n"],"mappings":";;;;;;;;;;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,kBAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,YAAA,GAAAD,sBAAA,CAAAF,OAAA;AACA,IAAAI,OAAA,GAAAF,sBAAA,CAAAF,OAAA;AACA,IAAAK,QAAA,GAAAL,OAAA;AACA,IAAAM,iBAAA,GAAAC,uBAAA,CAAAP,OAAA;AACA,IAAAQ,MAAA,GAAAN,sBAAA,CAAAF,OAAA;AAA0B;AAAA,IAAAS,KAAA,8BAAAV,KAAA,CAAAW,OAAA,CAAAC,MAAA;AAAA;AAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;AAAA;AAI1B,IAAMC,kBAAkB,GAAG;EACzBC,gBAAgB,EAAE,SAAlBA,gBAAgBA,CAAGC,eAAe,EAAEC,KAAK,EAAK;IAC5C,IAAID,eAAe,EAAE;MACnBA,eAAe,CAACE,KAAK,CAAC,CAAC;MACvB,IAAID,KAAK,CAACE,QAAQ,KAAK,MAAM,IAAIF,KAAK,CAACE,QAAQ,KAAK,OAAO,EAAE;QAC3DH,eAAe,CAACI,KAAK,CAAC,CAAC;MACzB;IACF;EACF,CAAC;EACDC,aAAa,EAAE,SAAfA,aAAaA,CAAGJ,KAAK;IAAA,OACnBA,KAAK,CAACE,QAAQ,KAAK,MAAM,IAAIF,KAAK,CAACE,QAAQ,KAAK,OAAO,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC;EAAA;AACjG,CAAC;AAAC,IAEIG,SAAS,0BAAAC,UAAA;EAAA,SAAAD,UAAA;IAAA,IAAAE,KAAA;IAAA,IAAAC,gBAAA,mBAAAH,SAAA;IAAA,SAAAI,IAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAC,IAAA,OAAAC,KAAA,CAAAJ,IAAA,GAAAK,IAAA,MAAAA,IAAA,GAAAL,IAAA,EAAAK,IAAA;MAAAF,IAAA,CAAAE,IAAA,IAAAJ,SAAA,CAAAI,IAAA;IAAA;IAAAP,KAAA,OAAAQ,WAAA,mBAAAV,SAAA,KAAAW,MAAA,CAAAJ,IAAA;IAAA,IAAAK,gBAAA,aAAAV,KAAA,gBASA,EAAE;IAAA,IAAAU,gBAAA,aAAAV,KAAA,sBAuBI,UAACW,KAAK;MAAA,OAAK,UAACC,CAAC,EAAK;QACnCZ,KAAA,CAAKa,QAAQ,CAACF,KAAK,CAACA,KAAK,EAAEC,CAAC,CAAC;MAC/B,CAAC;IAAA;IAAA,IAAAF,gBAAA,aAAAV,KAAA,uBAEmB,UAACW,KAAK;MAAA,OAAK,UAACG,KAAK,EAAK;QACxC,IAAIA,KAAK,CAACC,GAAG,KAAK,OAAO,IAAID,KAAK,CAACC,GAAG,KAAK,GAAG,EAAE;UAC9CD,KAAK,CAACE,cAAc,CAAC,CAAC;UACtBhB,KAAA,CAAKa,QAAQ,CAACF,KAAK,CAACA,KAAK,EAAEG,KAAK,CAAC;QACnC;MACF,CAAC;IAAA;IAAA,IAAAJ,gBAAA,aAAAV,KAAA,iBAmBa,UAACiB,UAAU,EAAEC,IAAI,EAAK;MAClC,IAAIC,UAAU,GAAG,KAAK;MAEtB,OAAO,CAACA,UAAU,IAAIF,UAAU,IAAI,CAAC,IAAIA,UAAU,GAAGjB,KAAA,CAAKoB,UAAU,CAAChB,MAAM,EAAE;QAC5E,IAAIc,IAAI,KAAK,WAAW,EAAED,UAAU,EAAE;QACtC,IAAIC,IAAI,KAAK,WAAW,EAAED,UAAU,EAAE;QAEtC,IAAMI,OAAO,GAAGrB,KAAA,CAAKsB,QAAQ,CAACL,UAAU,CAAC;QAEzC,IAAI,CAAAI,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEE,QAAQ,MAAK,KAAK,EAAE;UAC/BJ,UAAU,GAAG,IAAI;QACnB;MACF;MAEA,OAAOF,UAAU,IAAI,CAAC,IAAIA,UAAU,GAAGjB,KAAA,CAAKoB,UAAU,CAAChB,MAAM,GAAGa,UAAU,GAAGO,SAAS;IACxF,CAAC;IAAA,OAAAxB,KAAA;EAAA;EAAA,IAAAyB,UAAA,aAAA3B,SAAA,EAAAC,UAAA;EAAA,WAAA2B,aAAA,aAAA5B,SAAA;IAAAiB,GAAA;IAAAJ,KAAA,EA/DD,SAAAgB,iBAAiBA,CAAA,EAAG;MAClBC,kBAAG,CAACC,IAAI,CACN,IAAI,CAACC,OAAO,CAACnC,QAAQ,KAAK,MAAM,EAChC,gHAAgH,EAChH,OACF,CAAC;MAEDiC,kBAAG,CAACC,IAAI,CACN,IAAI,CAACC,OAAO,CAACnC,QAAQ,KAAK,OAAO,EACjC,kJAAkJ,EAClJ,OACF,CAAC;IACH;EAAC;IAAAoB,GAAA;IAAAJ,KAAA,EAED,SAAAoB,iBAAiBA,CAAA,EAAG;MAClB,OAAO;QACLpB,KAAK,EAAE;MACT,CAAC;IACH;EAAC;IAAAI,GAAA;IAAAJ,KAAA,EAaD,SAAAqB,YAAYA,CAACvC,KAAK,EAAEwC,KAAK,EAAE;MACzB,IAAAC,aAAA,GAA4C,IAAI,CAACJ,OAAO;QAAhDnB,KAAK,GAAAuB,aAAA,CAALvB,KAAK;QAAEwB,IAAI,GAAAD,aAAA,CAAJC,IAAI;QAAEZ,QAAQ,GAAAW,aAAA,CAARX,QAAQ;QAAE5B,QAAQ,GAAAuC,aAAA,CAARvC,QAAQ;MACvC,IAAMyC,UAAU,GAAGzB,KAAK,KAAKlB,KAAK,CAACkB,KAAK;MAExC,IAAI,CAACS,UAAU,CAACa,KAAK,CAAC,GAAGxC,KAAK,CAACkB,KAAK;MACpC,OAAO;QACLsB,KAAK,EAAEA,KAAK;QACZE,IAAI,EAAJA,IAAI;QACJZ,QAAQ,EAARA,QAAQ;QACRc,QAAQ,EAAED,UAAU;QACpBzC,QAAQ,EAARA,QAAQ;QACR2C,QAAQ,EAAEF,UAAU,GAAG,CAAC,GAAG,CAAC,CAAC;QAC7BG,OAAO,EAAE,IAAI,CAACC,gBAAgB,CAAC/C,KAAK,CAACkB,KAAK,CAAC;QAC3C8B,SAAS,EAAE,IAAI,CAACC,iBAAiB,CAACjD,KAAK,CAACkB,KAAK;MAC/C,CAAC;IACH;EAAC;IAAAI,GAAA;IAAAJ,KAAA,EAmBD,SAAAgC,MAAMA,CAAA,EAAG;MAAA,IAAAC,IAAA,QAAAd,OAAA;QAAAe,KAAA;MACP,IAAMC,MAAM,GAKAC,YAAG;MAJf,IAAAC,cAAA,GAAwE,IAAI,CAAClB,OAAO;QAA5EmB,QAAQ,GAAAD,cAAA,CAARC,QAAQ;QAAEC,MAAM,GAAAF,cAAA,CAANE,MAAM;QAAEC,cAAc,GAAAH,cAAA,CAAdG,cAAc;QAAE5B,QAAQ,GAAAyB,cAAA,CAARzB,QAAQ;QAAE5B,QAAQ,GAAAqD,cAAA,CAARrD,QAAQ;QAAEgB,KAAK,GAAAqC,cAAA,CAALrC,KAAK;MAEnE,OAAAkC,KAAA,GAAO,IAAAzD,aAAO,EAAC8D,MAAM,CAAC,eACpBhE,MAAA,YAAAkE,aAAA,CAACN,MAAM,EAAAD,KAAA,CAAAQ,EAAA,eAAAC,cAAA,qBAAA7E,KAAA,CAAA8E,WAAA;QAAA,QAEC5D,QAAQ,KAAK,OAAO,IAAIA,QAAQ,KAAK,MAAM,GAAG,YAAY,GAAG,SAAS;QAAA,iBAC7D4B,QAAQ;QAAA,gBACTZ,KAAK,KAAK,IAAI,GAAG,CAAC,CAAC,GAAG;MAAC,GAAAiC,IAAA,kBAErC1D,MAAA,YAAAkE,aAAA,CAACpE,iBAAA,WAAgB,EAAA6D,KAAA,CAAAQ,EAAA;QAAA,kBAAiBF;MAAc,iBAC9CjE,MAAA,YAAAkE,aAAA,CAACH,QAAQ,EAAAJ,KAAA,CAAAQ,EAAA,gBAAE,CACK,CACZ,CAAC;IAEb;EAAC;AAAA,EA7FqBG,eAAS;AAAA,IAAA9C,gBAAA,aAA3BZ,SAAS,iBACQ,OAAO;AAAA,IAAAY,gBAAA,aADxBZ,SAAS,WAEEX,KAAK;AAAA,IAAAuB,gBAAA,aAFhBZ,SAAS,kBAGS,UAAA2D,KAAA;EAAA,IAAG9D,QAAQ,GAAA8D,KAAA,CAAR9D,QAAQ;EAAA,OAAQ;IACvCwC,IAAI,EAAE,GAAG;IACTuB,YAAY,EAAE,IAAI;IAClB/D,QAAQ,EAAEA,QAAQ,aAARA,QAAQ,cAARA,QAAQ,GAAI;EACxB,CAAC;AAAA,CAAC;AAAA,IAAAe,gBAAA,aAPEZ,SAAS,aAUI,CAAC,IAAA6D,uBAAW,EAACrE,kBAAkB,CAAC,CAAC;AAsFpD,SAASsE,IAAIA,CAACnE,KAAK,EAAE;EAAA,IAAAoE,KAAA,GAAAC,YAAA;IAAAC,KAAA;EACnB,IAAMC,KAAK,GAaCjB,YAAG;EAZf,IAAQE,QAAQ,GAAyExD,KAAK,CAAtFwD,QAAQ;IAAEC,MAAM,GAAiEzD,KAAK,CAA5EyD,MAAM;IAAEe,SAAS,GAAsDxE,KAAK,CAApEwE,SAAS;IAAEC,UAAU,GAA0CzE,KAAK,CAAzDyE,UAAU;IAAE7B,QAAQ,GAAgC5C,KAAK,CAA7C4C,QAAQ;IAAEd,QAAQ,GAAsB9B,KAAK,CAAnC8B,QAAQ;IAAEU,KAAK,GAAexC,KAAK,CAAzBwC,KAAK;IAAEtC,QAAQ,GAAKF,KAAK,CAAlBE,QAAQ;EACpF,IAAMwE,gBAAgB,GAAG,IAAAC,2CAAyB,EAACnC,KAAK,CAAC;EACzD,IAAMoC,aAAa,GAAG,CAAC,CAAC;EACxB,IAAI1E,QAAQ,KAAK,OAAO,IAAIA,QAAQ,KAAK,MAAM,EAAE;IAC/C0E,aAAa,CAACC,IAAI,GAAG,OAAO;IAC5BD,aAAa,CAAC,cAAc,CAAC,GAAGhC,QAAQ;EAC1C,CAAC,MAAM;IACLgC,aAAa,CAACC,IAAI,GAAG,KAAK;IAC1BD,aAAa,CAAC,eAAe,CAAC,GAAGhC,QAAQ;EAC3C;EACA,OAAA0B,KAAA,GAAO,IAAA3E,aAAO,EAAC8D,MAAM,CAAC,eACpBhE,MAAA,YAAAkE,aAAA,CAACY,KAAK,EAAAD,KAAA,CAAAV,EAAA,cAAAC,cAAA,qBAAA7E,KAAA,CAAA8E,WAAA,MAAAD,cAAA;IAAA,OAEA,QAAQ;IAAA,QACP,QAAQ;IAAA,YACH,CAAC;IAAA,oBACOa,gBAAgB;IAAA,iBACnB5C;EAAQ,GACnB8C,aAAa,GAAAR,KAAA,KAEhBI,SAAS,gBAAG/E,MAAA,YAAAkE,aAAA,CAACmB,KAAK,CAACC,IAAI,CAACC,KAAK;IAACC,GAAG,EAAET;EAAU,CAAE,CAAC,GAAG,IAAI,EACvD,IAAAU,6BAAiB,EAAC1B,QAAQ,EAAEsB,KAAK,CAACC,IAAI,CAACI,IAAI,EAAEL,KAAK,CAACC,IAAI,CAACC,KAAK,CAAC,EAC9DP,UAAU,gBAAGhF,MAAA,YAAAkE,aAAA,CAACmB,KAAK,CAACC,IAAI,CAACC,KAAK;IAACC,GAAG,EAAER;EAAW,CAAE,CAAC,GAAG,IACjD,CAAC;AAEZ;AAEA,SAASU,IAAIA,CAACnF,KAAK,EAAE;EAAA,IAAAoF,KAAA,GAAAf,YAAA;IAAAgB,KAAA;EACnB,IAAMC,KAAK,GACiChC,YAAG;EAA/C,OAAA+B,KAAA,GAAO,IAAA1F,aAAO,EAACK,KAAK,CAACyD,MAAM,CAAC,eAAChE,MAAA,YAAAkE,aAAA,CAAC2B,KAAK,EAAAD,KAAA,CAAAzB,EAAA,cAAAC,cAAA,qBAAA7E,KAAA,CAAA8E,WAAA;IAAA,OAAkB;EAAM,GAAAsB,KAAA,GAAE,CAAC;AAChE;AAEA,SAASJ,KAAKA,CAAChF,KAAK,EAAE;EAAA,IAAAuF,KAAA,GAAAlB,YAAA;IAAAmB,KAAA;EACpB,IAAMC,MAAM,GACiCnC,YAAG;EAAhD,OAAAkC,KAAA,GAAO,IAAA7F,aAAO,EAACK,KAAK,CAACyD,MAAM,CAAC,eAAChE,MAAA,YAAAkE,aAAA,CAAC8B,MAAM,EAAAD,KAAA,CAAA5B,EAAA,eAAAC,cAAA,qBAAA7E,KAAA,CAAA8E,WAAA;IAAA,OAAkB;EAAM,GAAAyB,KAAA,GAAE,CAAC;AACjE;AAEA,IAAMT,KAAK,GAAG,IAAAY,qBAAe,EAACrF,SAAS,EAAE;EACvC0E,IAAI,EAAE,CAACZ,IAAI,EAAE;IAAEgB,IAAI,EAAJA,IAAI;IAAEH,KAAK,EAALA;EAAM,CAAC;AAC9B,CAAC,CAAC;AAEK,IAAMW,SAAS,GAAAC,OAAA,CAAAD,SAAA,GAAG,SAAZA,SAASA,CAAIE,OAAO;EAAA,OAAKA,OAAO;AAAA;AAAC,IAAAC,QAAA,GAAAF,OAAA,cAE/Bd,KAAK","ignoreList":[]}
|
package/lib/cjs/index.d.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.js","names":[],"sources":["../../src/index.d.ts"],"sourcesContent":["import type { PropGetterFn, UnknownProperties, Intergalactic } from '@semcore/core';\nimport type { Box, BoxProps } from '@semcore/flex-box';\nimport type { NeighborItemProps, NeighborLocationProps } from '@semcore/neighbor-location';\nimport type React from 'react';\n\nexport type PillsValue = string | number | boolean | null;\n\n/** @deprecated */\nexport interface IPillsProps<T extends PillsValue = PillsValue>\n extends PillsProps<T>,\n UnknownProperties {}\nexport type PillsProps<T extends PillsValue = PillsValue> = NeighborLocationProps &\n BoxProps & {\n /** Pills size */\n size?: 'l' | 'm';\n /** Disabled state */\n disabled?: boolean;\n /** Called when the selection is changed */\n onChange?:\n | ((value: T, e?: React.SyntheticEvent<HTMLSpanElement>) => void)\n | React.Dispatch<React.SetStateAction<T>>;\n /** Value for the selected pill */\n value?: T;\n /** Default value for the selected pill */\n defaultValue?: T;\n /** Sets semantic role for corresponding behavior,\n * when set to `auto` pressing left and right arrows\n * selects corresponding sibling pill.\n *\n * It's recommended to use `auto` behavior in forms\n * while `manual` behavior for navigation and layout.\n * @default tabs\n */\n behavior
|
|
1
|
+
{"version":3,"file":"index.d.js","names":[],"sources":["../../src/index.d.ts"],"sourcesContent":["import type { PropGetterFn, UnknownProperties, Intergalactic } from '@semcore/core';\nimport type { Box, BoxProps } from '@semcore/flex-box';\nimport type { NeighborItemProps, NeighborLocationProps } from '@semcore/neighbor-location';\nimport type React from 'react';\n\nexport type PillsValue = string | number | boolean | null;\n\n/**\n * @deprecated\n * use `manual`\n */\nexport type DeprecatedBehaviorTabs = 'tabs';\n/**\n * @deprecated\n * use `auto`\n */\nexport type DeprecatedBehaviorRadio = 'radio';\n\n/** @deprecated */\nexport interface IPillsProps<T extends PillsValue = PillsValue>\n extends PillsProps<T>,\n UnknownProperties {}\nexport type PillsProps<T extends PillsValue = PillsValue> = NeighborLocationProps &\n BoxProps & {\n /** Pills size */\n size?: 'l' | 'm';\n /** Disabled state */\n disabled?: boolean;\n /** Called when the selection is changed */\n onChange?:\n | ((value: T, e?: React.SyntheticEvent<HTMLSpanElement>) => void)\n | React.Dispatch<React.SetStateAction<T>>;\n /** Value for the selected pill */\n value?: T;\n /** Default value for the selected pill */\n defaultValue?: T;\n /** Sets semantic role for corresponding behavior,\n * when set to `auto` pressing left and right arrows\n * selects corresponding sibling pill.\n *\n * It's recommended to use `auto` behavior in forms\n * while `manual` behavior for navigation and layout.\n * @default tabs\n */\n behavior?:\n DeprecatedBehaviorTabs | DeprecatedBehaviorRadio\n | 'auto'\n | 'manual';\n };\n\n/** @deprecated */\nexport interface IPillProps extends PillProps, UnknownProperties {}\nexport type PillProps = BoxProps &\n NeighborItemProps & {\n /** Pill value */\n value?: PillsValue;\n /** Disabled state */\n disabled?: boolean;\n /** Selected state */\n selected?: boolean;\n /** Left addon text */\n addonLeft?: React.ElementType;\n /** Right addon tag */\n addonRight?: React.ElementType;\n };\n\n/** @deprecated */\nexport interface IPillsContext extends PillsContext, UnknownProperties {}\nexport type PillsContext = {\n getItemProps: PropGetterFn;\n};\n\n/** @deprecated */\nexport interface IPillsHandlers extends PillsHandlers, UnknownProperties {}\nexport type PillsHandlers = {\n value: (value: PillsValue) => void;\n};\n\ntype IntergalacticPillsComponent<PropsExtending = {}> = (<\n Value extends PillsValue,\n Tag extends Intergalactic.Tag = 'div',\n>(\n props: Intergalactic.InternalTypings.ComponentProps<\n Tag,\n 'div',\n PillsProps<Value>,\n PillsContext,\n [handlers: PillsHandlers]\n > &\n PropsExtending,\n) => Intergalactic.InternalTypings.ComponentRenderingResults) &\nIntergalactic.InternalTypings.ComponentAdditive<'div', 'div', PillsProps>;\n\ndeclare const Pills: IntergalacticPillsComponent & {\n Item: Intergalactic.Component<'button', PillProps, [handlers: PillsHandlers]> & {\n Text: typeof Box;\n Addon: typeof Box;\n };\n};\n\ndeclare const wrapPills: <PropsExtending extends {}>(\n wrapper: (\n props: Intergalactic.InternalTypings.UntypeRefAndTag<\n Intergalactic.InternalTypings.ComponentPropsNesting<IntergalacticPillsComponent>\n > &\n PropsExtending,\n ) => React.ReactNode,\n) => IntergalacticPillsComponent<PropsExtending>;\nexport { wrapPills };\n\nexport default Pills;\n"],"mappings":"","ignoreList":[]}
|
|
@@ -4,6 +4,19 @@ SPills {
|
|
|
4
4
|
justify-content: center;
|
|
5
5
|
isolation: isolate;
|
|
6
6
|
border-radius: var(--intergalactic-control-rounded, 6px);
|
|
7
|
+
|
|
8
|
+
SPill[selected] {
|
|
9
|
+
background: var(--intergalactic-control-secondary-info, rgba(0, 143, 248, 0.1));
|
|
10
|
+
border-color: var(--intergalactic-border-info-active, #006dca);
|
|
11
|
+
z-index: 3;
|
|
12
|
+
}
|
|
13
|
+
SPill:focus-visible, SPill[selected] {
|
|
14
|
+
z-index: 3;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
SPill:hover, SPill:active {
|
|
18
|
+
z-index: 2;
|
|
19
|
+
}
|
|
7
20
|
}
|
|
8
21
|
|
|
9
22
|
SPill {
|
|
@@ -45,19 +58,6 @@ SPill {
|
|
|
45
58
|
}
|
|
46
59
|
}
|
|
47
60
|
|
|
48
|
-
SPill[selected] {
|
|
49
|
-
background: var(--intergalactic-control-secondary-info, rgba(0, 143, 248, 0.1));
|
|
50
|
-
border-color: var(--intergalactic-border-info-active, #006dca);
|
|
51
|
-
z-index: 3;
|
|
52
|
-
}
|
|
53
|
-
SPill:focus-visible, SPill[selected] {
|
|
54
|
-
z-index: 3;
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
SPill:hover, SPill:active {
|
|
58
|
-
z-index: 2;
|
|
59
|
-
}
|
|
60
|
-
|
|
61
61
|
SPill[disabled] {
|
|
62
62
|
cursor: default;
|
|
63
63
|
/* Disable link interactions */
|
package/lib/es6/Pills.js
CHANGED
|
@@ -1,9 +1,7 @@
|
|
|
1
1
|
import _objectSpread from "@babel/runtime/helpers/objectSpread2";
|
|
2
2
|
import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
|
|
3
3
|
import _createClass from "@babel/runtime/helpers/createClass";
|
|
4
|
-
import
|
|
5
|
-
import _isNativeReflectConstruct from "@babel/runtime/helpers/isNativeReflectConstruct";
|
|
6
|
-
import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
|
|
4
|
+
import _callSuper from "@babel/runtime/helpers/callSuper";
|
|
7
5
|
import _inherits from "@babel/runtime/helpers/inherits";
|
|
8
6
|
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
9
7
|
import { sstyled as _sstyled } from "@semcore/core";
|
|
@@ -11,7 +9,6 @@ import { assignProps as _assignProps4 } from "@semcore/core";
|
|
|
11
9
|
import { assignProps as _assignProps3 } from "@semcore/core";
|
|
12
10
|
import { assignProps as _assignProps2 } from "@semcore/core";
|
|
13
11
|
import { assignProps as _assignProps } from "@semcore/core";
|
|
14
|
-
function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }
|
|
15
12
|
import { createComponent, Component, sstyled, Root } from '@semcore/core';
|
|
16
13
|
import addonTextChildren from '@semcore/core/lib/utils/addonTextChildren';
|
|
17
14
|
import a11yEnhance from '@semcore/core/lib/utils/enhances/a11yEnhance';
|
|
@@ -20,20 +17,20 @@ import { Box } from '@semcore/flex-box';
|
|
|
20
17
|
import NeighborLocation, { useNeighborLocationDetect } from '@semcore/neighbor-location';
|
|
21
18
|
import React from 'react';
|
|
22
19
|
/*!__reshadow-styles__:"./style/pills.shadow.css"*/
|
|
23
|
-
var style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".
|
|
20
|
+
var style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".___SPills_1dybo_gg_{display:inline-flex;align-items:center;justify-content:center;isolation:isolate;border-radius:var(--intergalactic-control-rounded, 6px)}.___SPills_1dybo_gg_ .___SPill_1dybo_gg_.__selected_1dybo_gg_{background:var(--intergalactic-control-secondary-info, rgba(0, 143, 248, 0.1));border-color:var(--intergalactic-border-info-active, #006dca);z-index:3}.___SPills_1dybo_gg_ .___SPill_1dybo_gg_.__selected_1dybo_gg_,.___SPills_1dybo_gg_ .___SPill_1dybo_gg_:focus-visible{z-index:3}.___SPills_1dybo_gg_ .___SPill_1dybo_gg_:active{z-index:2}@media (hover:hover){.___SPills_1dybo_gg_ .___SPill_1dybo_gg_:hover{z-index:2}}.___SPill_1dybo_gg_{display:inline-flex;align-items:center;justify-content:center;line-height:normal;position:relative;touch-action:manipulation;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none;box-sizing:border-box;padding:0;margin:0;box-shadow:none;-webkit-text-decoration:none;text-decoration:none;-webkit-tap-highlight-color:transparent;overflow:visible;text-align:center;vertical-align:middle;font-family:inherit;cursor:pointer;background:var(--intergalactic-bg-primary-neutral, #ffffff);border:1px solid var(--intergalactic-border-primary, #c4c7cf);border-radius:var(--intergalactic-control-rounded, 6px)}.___SPill_1dybo_gg_::-moz-focus-inner{border:0;padding:0}.___SPill_1dybo_gg_:active{outline:0;-webkit-text-decoration:none;text-decoration:none}@media (hover:hover){.___SPill_1dybo_gg_:hover{background:var(--intergalactic-bg-primary-neutral-hover, #f4f5f9)}}.___SPill_1dybo_gg_.__disabled_1dybo_gg_{cursor:default;pointer-events:none}.___SPill_1dybo_gg_.__disabled_1dybo_gg_>*{opacity:var(--intergalactic-disabled-opacity, 0.3)}.___SText_1dybo_gg_{color:var(--intergalactic-text-primary, #191b23);display:inline-flex}.___SAddon_1dybo_gg_{color:var(--intergalactic-text-secondary, #6c6e79);display:inline-flex;align-items:center;justify-content:center}.___SPill_1dybo_gg_._size_m_1dybo_gg_{height:var(--intergalactic-form-control-m, 28px);min-width:var(--intergalactic-form-control-m, 28px);font-size:var(--intergalactic-fs-200, 14px)}.___SPill_1dybo_gg_._size_l_1dybo_gg_ .___SText_1dybo_gg_,.___SPill_1dybo_gg_._size_m_1dybo_gg_ .___SText_1dybo_gg_{margin-left:var(--intergalactic-spacing-2x, 8px);margin-right:var(--intergalactic-spacing-2x, 8px)}.___SPill_1dybo_gg_._size_m_1dybo_gg_ .___SAddon_1dybo_gg_:not(:only-child):first-child{margin-left:var(--intergalactic-spacing-2x, 8px)}.___SPill_1dybo_gg_._size_m_1dybo_gg_ .___SAddon_1dybo_gg_:not(:only-child):last-child{margin-right:var(--intergalactic-spacing-2x, 8px)}.___SPill_1dybo_gg_._size_m_1dybo_gg_ .___SAddon_1dybo_gg_:only-child{margin-left:var(--intergalactic-spacing-2x, 8px);margin-right:var(--intergalactic-spacing-2x, 8px)}.___SPill_1dybo_gg_._size_l_1dybo_gg_{height:var(--intergalactic-form-control-l, 40px);min-width:var(--intergalactic-form-control-l, 40px);font-size:var(--intergalactic-fs-300, 16px)}.___SPill_1dybo_gg_._size_l_1dybo_gg_ .___SAddon_1dybo_gg_:only-child,.___SPill_1dybo_gg_._size_l_1dybo_gg_ .___SText_1dybo_gg_:only-child{margin-left:var(--intergalactic-spacing-3x, 12px);margin-right:var(--intergalactic-spacing-3x, 12px)}.___SPill_1dybo_gg_._size_l_1dybo_gg_ .___SAddon_1dybo_gg_:not(:only-child):first-child{margin-left:var(--intergalactic-spacing-3x, 12px)}.___SPill_1dybo_gg_._size_l_1dybo_gg_ .___SAddon_1dybo_gg_:not(:only-child):last-child{margin-right:var(--intergalactic-spacing-3x, 12px)}.___SPill_1dybo_gg_._neighborLocation_right_1dybo_gg_{border-top-right-radius:0;border-bottom-right-radius:0}.___SPill_1dybo_gg_._neighborLocation_both_1dybo_gg_{border-radius:0;margin-left:-1px}.___SPill_1dybo_gg_._neighborLocation_left_1dybo_gg_{border-top-left-radius:0;border-bottom-left-radius:0;margin-left:-1px}", /*__inner_css_end__*/"1dybo_gg_"),
|
|
24
21
|
/*__reshadow_css_end__*/
|
|
25
22
|
{
|
|
26
|
-
"
|
|
27
|
-
"
|
|
28
|
-
"
|
|
29
|
-
"
|
|
30
|
-
"
|
|
31
|
-
"
|
|
32
|
-
"
|
|
33
|
-
"
|
|
34
|
-
"_disabled": "
|
|
35
|
-
"_size_m": "
|
|
36
|
-
"_size_l": "
|
|
23
|
+
"__SText": "___SText_1dybo_gg_",
|
|
24
|
+
"__SAddon": "___SAddon_1dybo_gg_",
|
|
25
|
+
"__SPill": "___SPill_1dybo_gg_",
|
|
26
|
+
"_neighborLocation_right": "_neighborLocation_right_1dybo_gg_",
|
|
27
|
+
"_neighborLocation_both": "_neighborLocation_both_1dybo_gg_",
|
|
28
|
+
"_neighborLocation_left": "_neighborLocation_left_1dybo_gg_",
|
|
29
|
+
"__SPills": "___SPills_1dybo_gg_",
|
|
30
|
+
"_selected": "__selected_1dybo_gg_",
|
|
31
|
+
"_disabled": "__disabled_1dybo_gg_",
|
|
32
|
+
"_size_m": "_size_m_1dybo_gg_",
|
|
33
|
+
"_size_l": "_size_l_1dybo_gg_"
|
|
37
34
|
});
|
|
38
35
|
var optionsA11yEnhance = {
|
|
39
36
|
onNeighborChange: function onNeighborChange(neighborElement, props) {
|
package/lib/es6/Pills.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Pills.js","names":["createComponent","Component","sstyled","Root","addonTextChildren","a11yEnhance","log","Box","NeighborLocation","useNeighborLocationDetect","React","style","_sstyled","insert","optionsA11yEnhance","onNeighborChange","neighborElement","props","focus","behavior","click","childSelector","RootPills","_Component","_this","_classCallCheck","_len","arguments","length","args","Array","_key","_callSuper","concat","_defineProperty","value","e","handlers","event","key","preventDefault","startIndex","type","selectable","itemValues","element","itemRefs","disabled","undefined","_inherits","_createClass","componentDidMount","warn","asProps","uncontrolledProps","getItemProps","index","_this$asProps","size","isSelected","selected","tabIndex","onClick","bindHandlerClick","onKeyDown","bindHandleKeyDown","render","_ref","_ref5","SPills","_this$asProps2","Children","styles","controlsLength","createElement","cn","_objectSpread","_assignProps","_ref9","defaultValue","Pill","_ref2","arguments[0]","_ref6","SPill","addonLeft","addonRight","neighborLocation","roleAreaProps","role","_assignProps2","Pills","Item","Addon","tag","Text","_ref3","_ref7","SText","_assignProps3","_ref4","_ref8","SAddon","_assignProps4","wrapPills","wrapper"],"sources":["../../src/Pills.jsx"],"sourcesContent":["import { createComponent, Component, sstyled, Root } from '@semcore/core';\nimport addonTextChildren from '@semcore/core/lib/utils/addonTextChildren';\nimport a11yEnhance from '@semcore/core/lib/utils/enhances/a11yEnhance';\nimport log from '@semcore/core/lib/utils/logger';\nimport { Box } from '@semcore/flex-box';\nimport NeighborLocation, { useNeighborLocationDetect } from '@semcore/neighbor-location';\nimport React from 'react';\n\nimport style from './style/pills.shadow.css';\n\nconst optionsA11yEnhance = {\n onNeighborChange: (neighborElement, props) => {\n if (neighborElement) {\n neighborElement.focus();\n if (props.behavior === 'auto' || props.behavior === 'radio') {\n neighborElement.click();\n }\n }\n },\n childSelector: (props) =>\n props.behavior === 'auto' || props.behavior === 'radio' ? ['role', 'radio'] : ['role', 'tab'],\n};\n\nclass RootPills extends Component {\n static displayName = 'Pills';\n static style = style;\n static defaultProps = ({ behavior }) => ({\n size: 'm',\n defaultValue: null,\n behavior: behavior ?? 'auto',\n });\n\n itemValues = [];\n static enhance = [a11yEnhance(optionsA11yEnhance)];\n\n componentDidMount() {\n log.warn(\n this.asProps.behavior === 'tabs',\n 'Use behavior `manual` instead of `tabs`. \\n`tabs` is deprecated and will be removed in the next major release.',\n 'Pills',\n );\n\n log.warn(\n this.asProps.behavior === 'radio',\n 'Use behavior `auto` (or nothing, it is default value) instead of `radio`. \\n`radio` is deprecated and will be removed in the next major release.',\n 'Pills',\n );\n }\n\n uncontrolledProps() {\n return {\n value: null,\n };\n }\n\n bindHandlerClick = (value) => (e) => {\n this.handlers.value(value, e);\n };\n\n bindHandleKeyDown = (value) => (event) => {\n if (event.key === 'Enter' || event.key === ' ') {\n event.preventDefault();\n this.handlers.value(value, event);\n }\n };\n\n getItemProps(props, index) {\n const { value, size, disabled, behavior } = this.asProps;\n const isSelected = value === props.value;\n\n this.itemValues[index] = props.value;\n return {\n index: index,\n size,\n disabled,\n selected: isSelected,\n behavior,\n tabIndex: isSelected ? 0 : -1,\n onClick: this.bindHandlerClick(props.value),\n onKeyDown: this.bindHandleKeyDown(props.value),\n };\n }\n\n changeIndex = (startIndex, type) => {\n let selectable = false;\n\n while (!selectable && startIndex >= 0 && startIndex < this.itemValues.length) {\n if (type === 'increment') startIndex++;\n if (type === 'decrement') startIndex--;\n\n const element = this.itemRefs[startIndex];\n\n if (element?.disabled === false) {\n selectable = true;\n }\n }\n\n return startIndex >= 0 && startIndex < this.itemValues.length ? startIndex : undefined;\n };\n\n render() {\n const SPills = Root;\n const { Children, styles, controlsLength, disabled, behavior, value } = this.asProps;\n\n return sstyled(styles)(\n <SPills\n render={Box}\n role={behavior === 'radio' || behavior === 'auto' ? 'radiogroup' : 'tablist'}\n aria-disabled={disabled}\n use:tabIndex={value !== null ? -1 : 0}\n >\n <NeighborLocation controlsLength={controlsLength}>\n <Children />\n </NeighborLocation>\n </SPills>,\n );\n }\n}\n\nfunction Pill(props) {\n const SPill = Root;\n const { Children, styles, addonLeft, addonRight, selected, disabled, index, behavior } = props;\n const neighborLocation = useNeighborLocationDetect(index);\n const roleAreaProps = {};\n if (behavior === 'radio' || behavior === 'auto') {\n roleAreaProps.role = 'radio';\n roleAreaProps['aria-checked'] = selected;\n } else {\n roleAreaProps.role = 'tab';\n roleAreaProps['aria-selected'] = selected;\n }\n return sstyled(styles)(\n <SPill\n render={Box}\n tag='button'\n type='button'\n tabIndex={0}\n neighborLocation={neighborLocation}\n aria-disabled={disabled}\n {...roleAreaProps}\n >\n {addonLeft ? <Pills.Item.Addon tag={addonLeft} /> : null}\n {addonTextChildren(Children, Pills.Item.Text, Pills.Item.Addon)}\n {addonRight ? <Pills.Item.Addon tag={addonRight} /> : null}\n </SPill>,\n );\n}\n\nfunction Text(props) {\n const SText = Root;\n return sstyled(props.styles)(<SText render={Box} tag='span' />);\n}\n\nfunction Addon(props) {\n const SAddon = Root;\n return sstyled(props.styles)(<SAddon render={Box} tag='span' />);\n}\n\nconst Pills = createComponent(RootPills, {\n Item: [Pill, { Text, Addon }],\n});\n\nexport const wrapPills = (wrapper) => wrapper;\n\nexport default Pills;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"Pills.js","names":["createComponent","Component","sstyled","Root","addonTextChildren","a11yEnhance","log","Box","NeighborLocation","useNeighborLocationDetect","React","style","_sstyled","insert","optionsA11yEnhance","onNeighborChange","neighborElement","props","focus","behavior","click","childSelector","RootPills","_Component","_this","_classCallCheck","_len","arguments","length","args","Array","_key","_callSuper","concat","_defineProperty","value","e","handlers","event","key","preventDefault","startIndex","type","selectable","itemValues","element","itemRefs","disabled","undefined","_inherits","_createClass","componentDidMount","warn","asProps","uncontrolledProps","getItemProps","index","_this$asProps","size","isSelected","selected","tabIndex","onClick","bindHandlerClick","onKeyDown","bindHandleKeyDown","render","_ref","_ref5","SPills","_this$asProps2","Children","styles","controlsLength","createElement","cn","_objectSpread","_assignProps","_ref9","defaultValue","Pill","_ref2","arguments[0]","_ref6","SPill","addonLeft","addonRight","neighborLocation","roleAreaProps","role","_assignProps2","Pills","Item","Addon","tag","Text","_ref3","_ref7","SText","_assignProps3","_ref4","_ref8","SAddon","_assignProps4","wrapPills","wrapper"],"sources":["../../src/Pills.jsx"],"sourcesContent":["import { createComponent, Component, sstyled, Root } from '@semcore/core';\nimport addonTextChildren from '@semcore/core/lib/utils/addonTextChildren';\nimport a11yEnhance from '@semcore/core/lib/utils/enhances/a11yEnhance';\nimport log from '@semcore/core/lib/utils/logger';\nimport { Box } from '@semcore/flex-box';\nimport NeighborLocation, { useNeighborLocationDetect } from '@semcore/neighbor-location';\nimport React from 'react';\n\nimport style from './style/pills.shadow.css';\n\nconst optionsA11yEnhance = {\n onNeighborChange: (neighborElement, props) => {\n if (neighborElement) {\n neighborElement.focus();\n if (props.behavior === 'auto' || props.behavior === 'radio') {\n neighborElement.click();\n }\n }\n },\n childSelector: (props) =>\n props.behavior === 'auto' || props.behavior === 'radio' ? ['role', 'radio'] : ['role', 'tab'],\n};\n\nclass RootPills extends Component {\n static displayName = 'Pills';\n static style = style;\n static defaultProps = ({ behavior }) => ({\n size: 'm',\n defaultValue: null,\n behavior: behavior ?? 'auto',\n });\n\n itemValues = [];\n static enhance = [a11yEnhance(optionsA11yEnhance)];\n\n componentDidMount() {\n log.warn(\n this.asProps.behavior === 'tabs',\n 'Use behavior `manual` instead of `tabs`. \\n`tabs` is deprecated and will be removed in the next major release.',\n 'Pills',\n );\n\n log.warn(\n this.asProps.behavior === 'radio',\n 'Use behavior `auto` (or nothing, it is default value) instead of `radio`. \\n`radio` is deprecated and will be removed in the next major release.',\n 'Pills',\n );\n }\n\n uncontrolledProps() {\n return {\n value: null,\n };\n }\n\n bindHandlerClick = (value) => (e) => {\n this.handlers.value(value, e);\n };\n\n bindHandleKeyDown = (value) => (event) => {\n if (event.key === 'Enter' || event.key === ' ') {\n event.preventDefault();\n this.handlers.value(value, event);\n }\n };\n\n getItemProps(props, index) {\n const { value, size, disabled, behavior } = this.asProps;\n const isSelected = value === props.value;\n\n this.itemValues[index] = props.value;\n return {\n index: index,\n size,\n disabled,\n selected: isSelected,\n behavior,\n tabIndex: isSelected ? 0 : -1,\n onClick: this.bindHandlerClick(props.value),\n onKeyDown: this.bindHandleKeyDown(props.value),\n };\n }\n\n changeIndex = (startIndex, type) => {\n let selectable = false;\n\n while (!selectable && startIndex >= 0 && startIndex < this.itemValues.length) {\n if (type === 'increment') startIndex++;\n if (type === 'decrement') startIndex--;\n\n const element = this.itemRefs[startIndex];\n\n if (element?.disabled === false) {\n selectable = true;\n }\n }\n\n return startIndex >= 0 && startIndex < this.itemValues.length ? startIndex : undefined;\n };\n\n render() {\n const SPills = Root;\n const { Children, styles, controlsLength, disabled, behavior, value } = this.asProps;\n\n return sstyled(styles)(\n <SPills\n render={Box}\n role={behavior === 'radio' || behavior === 'auto' ? 'radiogroup' : 'tablist'}\n aria-disabled={disabled}\n use:tabIndex={value !== null ? -1 : 0}\n >\n <NeighborLocation controlsLength={controlsLength}>\n <Children />\n </NeighborLocation>\n </SPills>,\n );\n }\n}\n\nfunction Pill(props) {\n const SPill = Root;\n const { Children, styles, addonLeft, addonRight, selected, disabled, index, behavior } = props;\n const neighborLocation = useNeighborLocationDetect(index);\n const roleAreaProps = {};\n if (behavior === 'radio' || behavior === 'auto') {\n roleAreaProps.role = 'radio';\n roleAreaProps['aria-checked'] = selected;\n } else {\n roleAreaProps.role = 'tab';\n roleAreaProps['aria-selected'] = selected;\n }\n return sstyled(styles)(\n <SPill\n render={Box}\n tag='button'\n type='button'\n tabIndex={0}\n neighborLocation={neighborLocation}\n aria-disabled={disabled}\n {...roleAreaProps}\n >\n {addonLeft ? <Pills.Item.Addon tag={addonLeft} /> : null}\n {addonTextChildren(Children, Pills.Item.Text, Pills.Item.Addon)}\n {addonRight ? <Pills.Item.Addon tag={addonRight} /> : null}\n </SPill>,\n );\n}\n\nfunction Text(props) {\n const SText = Root;\n return sstyled(props.styles)(<SText render={Box} tag='span' />);\n}\n\nfunction Addon(props) {\n const SAddon = Root;\n return sstyled(props.styles)(<SAddon render={Box} tag='span' />);\n}\n\nconst Pills = createComponent(RootPills, {\n Item: [Pill, { Text, Addon }],\n});\n\nexport const wrapPills = (wrapper) => wrapper;\n\nexport default Pills;\n"],"mappings":"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","ignoreList":[]}
|
package/lib/es6/index.d.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.js","names":[],"sources":["../../src/index.d.ts"],"sourcesContent":["import type { PropGetterFn, UnknownProperties, Intergalactic } from '@semcore/core';\nimport type { Box, BoxProps } from '@semcore/flex-box';\nimport type { NeighborItemProps, NeighborLocationProps } from '@semcore/neighbor-location';\nimport type React from 'react';\n\nexport type PillsValue = string | number | boolean | null;\n\n/** @deprecated */\nexport interface IPillsProps<T extends PillsValue = PillsValue>\n extends PillsProps<T>,\n UnknownProperties {}\nexport type PillsProps<T extends PillsValue = PillsValue> = NeighborLocationProps &\n BoxProps & {\n /** Pills size */\n size?: 'l' | 'm';\n /** Disabled state */\n disabled?: boolean;\n /** Called when the selection is changed */\n onChange?:\n | ((value: T, e?: React.SyntheticEvent<HTMLSpanElement>) => void)\n | React.Dispatch<React.SetStateAction<T>>;\n /** Value for the selected pill */\n value?: T;\n /** Default value for the selected pill */\n defaultValue?: T;\n /** Sets semantic role for corresponding behavior,\n * when set to `auto` pressing left and right arrows\n * selects corresponding sibling pill.\n *\n * It's recommended to use `auto` behavior in forms\n * while `manual` behavior for navigation and layout.\n * @default tabs\n */\n behavior
|
|
1
|
+
{"version":3,"file":"index.d.js","names":[],"sources":["../../src/index.d.ts"],"sourcesContent":["import type { PropGetterFn, UnknownProperties, Intergalactic } from '@semcore/core';\nimport type { Box, BoxProps } from '@semcore/flex-box';\nimport type { NeighborItemProps, NeighborLocationProps } from '@semcore/neighbor-location';\nimport type React from 'react';\n\nexport type PillsValue = string | number | boolean | null;\n\n/**\n * @deprecated\n * use `manual`\n */\nexport type DeprecatedBehaviorTabs = 'tabs';\n/**\n * @deprecated\n * use `auto`\n */\nexport type DeprecatedBehaviorRadio = 'radio';\n\n/** @deprecated */\nexport interface IPillsProps<T extends PillsValue = PillsValue>\n extends PillsProps<T>,\n UnknownProperties {}\nexport type PillsProps<T extends PillsValue = PillsValue> = NeighborLocationProps &\n BoxProps & {\n /** Pills size */\n size?: 'l' | 'm';\n /** Disabled state */\n disabled?: boolean;\n /** Called when the selection is changed */\n onChange?:\n | ((value: T, e?: React.SyntheticEvent<HTMLSpanElement>) => void)\n | React.Dispatch<React.SetStateAction<T>>;\n /** Value for the selected pill */\n value?: T;\n /** Default value for the selected pill */\n defaultValue?: T;\n /** Sets semantic role for corresponding behavior,\n * when set to `auto` pressing left and right arrows\n * selects corresponding sibling pill.\n *\n * It's recommended to use `auto` behavior in forms\n * while `manual` behavior for navigation and layout.\n * @default tabs\n */\n behavior?:\n DeprecatedBehaviorTabs | DeprecatedBehaviorRadio\n | 'auto'\n | 'manual';\n };\n\n/** @deprecated */\nexport interface IPillProps extends PillProps, UnknownProperties {}\nexport type PillProps = BoxProps &\n NeighborItemProps & {\n /** Pill value */\n value?: PillsValue;\n /** Disabled state */\n disabled?: boolean;\n /** Selected state */\n selected?: boolean;\n /** Left addon text */\n addonLeft?: React.ElementType;\n /** Right addon tag */\n addonRight?: React.ElementType;\n };\n\n/** @deprecated */\nexport interface IPillsContext extends PillsContext, UnknownProperties {}\nexport type PillsContext = {\n getItemProps: PropGetterFn;\n};\n\n/** @deprecated */\nexport interface IPillsHandlers extends PillsHandlers, UnknownProperties {}\nexport type PillsHandlers = {\n value: (value: PillsValue) => void;\n};\n\ntype IntergalacticPillsComponent<PropsExtending = {}> = (<\n Value extends PillsValue,\n Tag extends Intergalactic.Tag = 'div',\n>(\n props: Intergalactic.InternalTypings.ComponentProps<\n Tag,\n 'div',\n PillsProps<Value>,\n PillsContext,\n [handlers: PillsHandlers]\n > &\n PropsExtending,\n) => Intergalactic.InternalTypings.ComponentRenderingResults) &\nIntergalactic.InternalTypings.ComponentAdditive<'div', 'div', PillsProps>;\n\ndeclare const Pills: IntergalacticPillsComponent & {\n Item: Intergalactic.Component<'button', PillProps, [handlers: PillsHandlers]> & {\n Text: typeof Box;\n Addon: typeof Box;\n };\n};\n\ndeclare const wrapPills: <PropsExtending extends {}>(\n wrapper: (\n props: Intergalactic.InternalTypings.UntypeRefAndTag<\n Intergalactic.InternalTypings.ComponentPropsNesting<IntergalacticPillsComponent>\n > &\n PropsExtending,\n ) => React.ReactNode,\n) => IntergalacticPillsComponent<PropsExtending>;\nexport { wrapPills };\n\nexport default Pills;\n"],"mappings":"","ignoreList":[]}
|
|
@@ -4,6 +4,19 @@ SPills {
|
|
|
4
4
|
justify-content: center;
|
|
5
5
|
isolation: isolate;
|
|
6
6
|
border-radius: var(--intergalactic-control-rounded, 6px);
|
|
7
|
+
|
|
8
|
+
SPill[selected] {
|
|
9
|
+
background: var(--intergalactic-control-secondary-info, rgba(0, 143, 248, 0.1));
|
|
10
|
+
border-color: var(--intergalactic-border-info-active, #006dca);
|
|
11
|
+
z-index: 3;
|
|
12
|
+
}
|
|
13
|
+
SPill:focus-visible, SPill[selected] {
|
|
14
|
+
z-index: 3;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
SPill:hover, SPill:active {
|
|
18
|
+
z-index: 2;
|
|
19
|
+
}
|
|
7
20
|
}
|
|
8
21
|
|
|
9
22
|
SPill {
|
|
@@ -45,19 +58,6 @@ SPill {
|
|
|
45
58
|
}
|
|
46
59
|
}
|
|
47
60
|
|
|
48
|
-
SPill[selected] {
|
|
49
|
-
background: var(--intergalactic-control-secondary-info, rgba(0, 143, 248, 0.1));
|
|
50
|
-
border-color: var(--intergalactic-border-info-active, #006dca);
|
|
51
|
-
z-index: 3;
|
|
52
|
-
}
|
|
53
|
-
SPill:focus-visible, SPill[selected] {
|
|
54
|
-
z-index: 3;
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
SPill:hover, SPill:active {
|
|
58
|
-
z-index: 2;
|
|
59
|
-
}
|
|
60
|
-
|
|
61
61
|
SPill[disabled] {
|
|
62
62
|
cursor: default;
|
|
63
63
|
/* Disable link interactions */
|
package/lib/esm/Pills.mjs
CHANGED
|
@@ -1,9 +1,7 @@
|
|
|
1
1
|
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
|
|
2
2
|
import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
|
|
3
3
|
import _createClass from "@babel/runtime/helpers/esm/createClass";
|
|
4
|
-
import
|
|
5
|
-
import _isNativeReflectConstruct from "@babel/runtime/helpers/esm/isNativeReflectConstruct";
|
|
6
|
-
import _getPrototypeOf from "@babel/runtime/helpers/esm/getPrototypeOf";
|
|
4
|
+
import _callSuper from "@babel/runtime/helpers/esm/callSuper";
|
|
7
5
|
import _inherits from "@babel/runtime/helpers/esm/inherits";
|
|
8
6
|
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
|
9
7
|
import { createComponent, sstyled, assignProps, Component } from "@semcore/core";
|
|
@@ -13,30 +11,27 @@ import log from "@semcore/core/lib/utils/logger";
|
|
|
13
11
|
import { Box } from "@semcore/flex-box";
|
|
14
12
|
import NeighborLocation, { useNeighborLocationDetect } from "@semcore/neighbor-location";
|
|
15
13
|
import React from "react";
|
|
16
|
-
function _callSuper(t, o, e) {
|
|
17
|
-
return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
|
|
18
|
-
}
|
|
19
14
|
/*!__reshadow-styles__:"./style/pills.shadow.css"*/
|
|
20
15
|
var style = (
|
|
21
16
|
/*__reshadow_css_start__*/
|
|
22
17
|
(sstyled.insert(
|
|
23
18
|
/*__inner_css_start__*/
|
|
24
|
-
".
|
|
19
|
+
".___SPills_1dybo_gg_{display:inline-flex;align-items:center;justify-content:center;isolation:isolate;border-radius:var(--intergalactic-control-rounded, 6px)}.___SPills_1dybo_gg_ .___SPill_1dybo_gg_.__selected_1dybo_gg_{background:var(--intergalactic-control-secondary-info, rgba(0, 143, 248, 0.1));border-color:var(--intergalactic-border-info-active, #006dca);z-index:3}.___SPills_1dybo_gg_ .___SPill_1dybo_gg_.__selected_1dybo_gg_,.___SPills_1dybo_gg_ .___SPill_1dybo_gg_:focus-visible{z-index:3}.___SPills_1dybo_gg_ .___SPill_1dybo_gg_:active{z-index:2}@media (hover:hover){.___SPills_1dybo_gg_ .___SPill_1dybo_gg_:hover{z-index:2}}.___SPill_1dybo_gg_{display:inline-flex;align-items:center;justify-content:center;line-height:normal;position:relative;touch-action:manipulation;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none;box-sizing:border-box;padding:0;margin:0;box-shadow:none;-webkit-text-decoration:none;text-decoration:none;-webkit-tap-highlight-color:transparent;overflow:visible;text-align:center;vertical-align:middle;font-family:inherit;cursor:pointer;background:var(--intergalactic-bg-primary-neutral, #ffffff);border:1px solid var(--intergalactic-border-primary, #c4c7cf);border-radius:var(--intergalactic-control-rounded, 6px)}.___SPill_1dybo_gg_::-moz-focus-inner{border:0;padding:0}.___SPill_1dybo_gg_:active{outline:0;-webkit-text-decoration:none;text-decoration:none}@media (hover:hover){.___SPill_1dybo_gg_:hover{background:var(--intergalactic-bg-primary-neutral-hover, #f4f5f9)}}.___SPill_1dybo_gg_.__disabled_1dybo_gg_{cursor:default;pointer-events:none}.___SPill_1dybo_gg_.__disabled_1dybo_gg_>*{opacity:var(--intergalactic-disabled-opacity, 0.3)}.___SText_1dybo_gg_{color:var(--intergalactic-text-primary, #191b23);display:inline-flex}.___SAddon_1dybo_gg_{color:var(--intergalactic-text-secondary, #6c6e79);display:inline-flex;align-items:center;justify-content:center}.___SPill_1dybo_gg_._size_m_1dybo_gg_{height:var(--intergalactic-form-control-m, 28px);min-width:var(--intergalactic-form-control-m, 28px);font-size:var(--intergalactic-fs-200, 14px)}.___SPill_1dybo_gg_._size_l_1dybo_gg_ .___SText_1dybo_gg_,.___SPill_1dybo_gg_._size_m_1dybo_gg_ .___SText_1dybo_gg_{margin-left:var(--intergalactic-spacing-2x, 8px);margin-right:var(--intergalactic-spacing-2x, 8px)}.___SPill_1dybo_gg_._size_m_1dybo_gg_ .___SAddon_1dybo_gg_:not(:only-child):first-child{margin-left:var(--intergalactic-spacing-2x, 8px)}.___SPill_1dybo_gg_._size_m_1dybo_gg_ .___SAddon_1dybo_gg_:not(:only-child):last-child{margin-right:var(--intergalactic-spacing-2x, 8px)}.___SPill_1dybo_gg_._size_m_1dybo_gg_ .___SAddon_1dybo_gg_:only-child{margin-left:var(--intergalactic-spacing-2x, 8px);margin-right:var(--intergalactic-spacing-2x, 8px)}.___SPill_1dybo_gg_._size_l_1dybo_gg_{height:var(--intergalactic-form-control-l, 40px);min-width:var(--intergalactic-form-control-l, 40px);font-size:var(--intergalactic-fs-300, 16px)}.___SPill_1dybo_gg_._size_l_1dybo_gg_ .___SAddon_1dybo_gg_:only-child,.___SPill_1dybo_gg_._size_l_1dybo_gg_ .___SText_1dybo_gg_:only-child{margin-left:var(--intergalactic-spacing-3x, 12px);margin-right:var(--intergalactic-spacing-3x, 12px)}.___SPill_1dybo_gg_._size_l_1dybo_gg_ .___SAddon_1dybo_gg_:not(:only-child):first-child{margin-left:var(--intergalactic-spacing-3x, 12px)}.___SPill_1dybo_gg_._size_l_1dybo_gg_ .___SAddon_1dybo_gg_:not(:only-child):last-child{margin-right:var(--intergalactic-spacing-3x, 12px)}.___SPill_1dybo_gg_._neighborLocation_right_1dybo_gg_{border-top-right-radius:0;border-bottom-right-radius:0}.___SPill_1dybo_gg_._neighborLocation_both_1dybo_gg_{border-radius:0;margin-left:-1px}.___SPill_1dybo_gg_._neighborLocation_left_1dybo_gg_{border-top-left-radius:0;border-bottom-left-radius:0;margin-left:-1px}",
|
|
25
20
|
/*__inner_css_end__*/
|
|
26
|
-
"
|
|
21
|
+
"1dybo_gg_"
|
|
27
22
|
), /*__reshadow_css_end__*/
|
|
28
23
|
{
|
|
29
|
-
"
|
|
30
|
-
"
|
|
31
|
-
"
|
|
32
|
-
"
|
|
33
|
-
"
|
|
34
|
-
"
|
|
35
|
-
"
|
|
36
|
-
"
|
|
37
|
-
"_disabled": "
|
|
38
|
-
"_size_m": "
|
|
39
|
-
"_size_l": "
|
|
24
|
+
"__SText": "___SText_1dybo_gg_",
|
|
25
|
+
"__SAddon": "___SAddon_1dybo_gg_",
|
|
26
|
+
"__SPill": "___SPill_1dybo_gg_",
|
|
27
|
+
"_neighborLocation_right": "_neighborLocation_right_1dybo_gg_",
|
|
28
|
+
"_neighborLocation_both": "_neighborLocation_both_1dybo_gg_",
|
|
29
|
+
"_neighborLocation_left": "_neighborLocation_left_1dybo_gg_",
|
|
30
|
+
"__SPills": "___SPills_1dybo_gg_",
|
|
31
|
+
"_selected": "__selected_1dybo_gg_",
|
|
32
|
+
"_disabled": "__disabled_1dybo_gg_",
|
|
33
|
+
"_size_m": "_size_m_1dybo_gg_",
|
|
34
|
+
"_size_l": "_size_l_1dybo_gg_"
|
|
40
35
|
})
|
|
41
36
|
);
|
|
42
37
|
var optionsA11yEnhance = {
|
|
@@ -4,6 +4,19 @@ SPills {
|
|
|
4
4
|
justify-content: center;
|
|
5
5
|
isolation: isolate;
|
|
6
6
|
border-radius: var(--intergalactic-control-rounded, 6px);
|
|
7
|
+
|
|
8
|
+
SPill[selected] {
|
|
9
|
+
background: var(--intergalactic-control-secondary-info, rgba(0, 143, 248, 0.1));
|
|
10
|
+
border-color: var(--intergalactic-border-info-active, #006dca);
|
|
11
|
+
z-index: 3;
|
|
12
|
+
}
|
|
13
|
+
SPill:focus-visible, SPill[selected] {
|
|
14
|
+
z-index: 3;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
SPill:hover, SPill:active {
|
|
18
|
+
z-index: 2;
|
|
19
|
+
}
|
|
7
20
|
}
|
|
8
21
|
|
|
9
22
|
SPill {
|
|
@@ -45,19 +58,6 @@ SPill {
|
|
|
45
58
|
}
|
|
46
59
|
}
|
|
47
60
|
|
|
48
|
-
SPill[selected] {
|
|
49
|
-
background: var(--intergalactic-control-secondary-info, rgba(0, 143, 248, 0.1));
|
|
50
|
-
border-color: var(--intergalactic-border-info-active, #006dca);
|
|
51
|
-
z-index: 3;
|
|
52
|
-
}
|
|
53
|
-
SPill:focus-visible, SPill[selected] {
|
|
54
|
-
z-index: 3;
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
SPill:hover, SPill:active {
|
|
58
|
-
z-index: 2;
|
|
59
|
-
}
|
|
60
|
-
|
|
61
61
|
SPill[disabled] {
|
|
62
62
|
cursor: default;
|
|
63
63
|
/* Disable link interactions */
|
package/lib/types/index.d.ts
CHANGED
|
@@ -5,6 +5,17 @@ import type React from 'react';
|
|
|
5
5
|
|
|
6
6
|
export type PillsValue = string | number | boolean | null;
|
|
7
7
|
|
|
8
|
+
/**
|
|
9
|
+
* @deprecated
|
|
10
|
+
* use `manual`
|
|
11
|
+
*/
|
|
12
|
+
export type DeprecatedBehaviorTabs = 'tabs';
|
|
13
|
+
/**
|
|
14
|
+
* @deprecated
|
|
15
|
+
* use `auto`
|
|
16
|
+
*/
|
|
17
|
+
export type DeprecatedBehaviorRadio = 'radio';
|
|
18
|
+
|
|
8
19
|
/** @deprecated */
|
|
9
20
|
export interface IPillsProps<T extends PillsValue = PillsValue>
|
|
10
21
|
extends PillsProps<T>,
|
|
@@ -31,10 +42,8 @@ export type PillsProps<T extends PillsValue = PillsValue> = NeighborLocationProp
|
|
|
31
42
|
* while `manual` behavior for navigation and layout.
|
|
32
43
|
* @default tabs
|
|
33
44
|
*/
|
|
34
|
-
behavior?:
|
|
35
|
-
|
|
|
36
|
-
/** @deprecated use `auto` */
|
|
37
|
-
| 'radio'
|
|
45
|
+
behavior?:
|
|
46
|
+
DeprecatedBehaviorTabs | DeprecatedBehaviorRadio
|
|
38
47
|
| 'auto'
|
|
39
48
|
| 'manual';
|
|
40
49
|
};
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@semcore/pills",
|
|
3
3
|
"description": "Semrush Pills Component",
|
|
4
|
-
"version": "16.0.
|
|
4
|
+
"version": "16.0.10-prerelease.3",
|
|
5
5
|
"main": "lib/cjs/index.js",
|
|
6
6
|
"module": "lib/es6/index.js",
|
|
7
7
|
"typings": "lib/types/index.d.ts",
|
|
@@ -14,11 +14,11 @@
|
|
|
14
14
|
"types": "./lib/types/index.d.ts"
|
|
15
15
|
},
|
|
16
16
|
"dependencies": {
|
|
17
|
-
"@semcore/flex-box": "16.0.
|
|
18
|
-
"@semcore/neighbor-location": "16.0.
|
|
17
|
+
"@semcore/flex-box": "16.0.10-prerelease.3",
|
|
18
|
+
"@semcore/neighbor-location": "16.0.10-prerelease.3"
|
|
19
19
|
},
|
|
20
20
|
"peerDependencies": {
|
|
21
|
-
"@semcore/base-components": "^16.0.
|
|
21
|
+
"@semcore/base-components": "^16.4.0-prerelease.3"
|
|
22
22
|
},
|
|
23
23
|
"repository": {
|
|
24
24
|
"type": "git",
|
|
@@ -26,10 +26,10 @@
|
|
|
26
26
|
"directory": "semcore/pills"
|
|
27
27
|
},
|
|
28
28
|
"devDependencies": {
|
|
29
|
-
"@semcore/
|
|
30
|
-
"@semcore/
|
|
29
|
+
"@semcore/core": "16.5.0-prerelease.3",
|
|
30
|
+
"@semcore/badge": "16.0.6-prerelease.3",
|
|
31
31
|
"@semcore/testing-utils": "1.0.0",
|
|
32
|
-
"@semcore/icon": "16.
|
|
32
|
+
"@semcore/icon": "16.5.1-prerelease.3"
|
|
33
33
|
},
|
|
34
34
|
"scripts": {
|
|
35
35
|
"build": "pnpm semcore-builder --source=js && pnpm vite build"
|