@semcore/base-trigger 17.1.0-prerelease.3 → 17.2.0-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/BaseTrigger.js +23 -17
- package/lib/cjs/BaseTrigger.js.map +1 -1
- package/lib/cjs/ButtonTrigger.js +9 -3
- package/lib/cjs/ButtonTrigger.js.map +1 -1
- package/lib/cjs/FilterTrigger.js +11 -5
- package/lib/cjs/FilterTrigger.js.map +1 -1
- package/lib/cjs/LinkTrigger.js +8 -7
- package/lib/cjs/LinkTrigger.js.map +1 -1
- package/lib/cjs/index.d.js.map +1 -1
- package/lib/es6/BaseTrigger.js +23 -17
- package/lib/es6/BaseTrigger.js.map +1 -1
- package/lib/es6/ButtonTrigger.js +9 -3
- package/lib/es6/ButtonTrigger.js.map +1 -1
- package/lib/es6/FilterTrigger.js +11 -5
- package/lib/es6/FilterTrigger.js.map +1 -1
- package/lib/es6/LinkTrigger.js +8 -7
- package/lib/es6/LinkTrigger.js.map +1 -1
- package/lib/es6/index.d.js.map +1 -1
- package/lib/esm/BaseTrigger.mjs +19 -19
- package/lib/esm/ButtonTrigger.mjs +5 -5
- package/lib/esm/FilterTrigger.mjs +7 -7
- package/lib/esm/LinkTrigger.mjs +4 -9
- package/lib/types/index.d.ts +5 -2
- package/package.json +10 -10
package/CHANGELOG.md
CHANGED
package/lib/cjs/BaseTrigger.js
CHANGED
|
@@ -14,25 +14,25 @@ var _useCssVariable = require("@semcore/core/lib/utils/useCssVariable");
|
|
|
14
14
|
var _typography = require("@semcore/typography");
|
|
15
15
|
var _react = _interopRequireDefault(require("react"));
|
|
16
16
|
/*!__reshadow-styles__:"./style/base-trigger.shadow.css"*/
|
|
17
|
-
const style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".
|
|
17
|
+
const style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".___SBaseTrigger_19nw9_gg_{display:inline-block;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,#fff);font-weight:var(--intergalactic-regular,400);border:1px solid var(--intergalactic-border-primary,#000c0829);color:var(--intergalactic-text-primary,#010500e5)}@supports (color:color(display-p3 0 0 0%)){.___SBaseTrigger_19nw9_gg_{border:1px solid var(--intergalactic-border-primary,#000c0829)}@media (color-gamut:p3){.___SBaseTrigger_19nw9_gg_{border:1px solid var(--intergalactic-border-primary,color(display-p3 .00798 .04498 .03219/.161))}}}.___SBaseTrigger_19nw9_gg_::-moz-focus-inner{border:none;padding:0}.___SBaseTrigger_19nw9_gg_:active{-webkit-text-decoration:none;text-decoration:none}@media (hover:hover){.___SBaseTrigger_19nw9_gg_:hover{-webkit-text-decoration:none;text-decoration:none}}.___SBaseTrigger_19nw9_gg_:focus-visible{border:1px solid var(--intergalactic-border-info-active,#8796ef)}@media (hover:hover){.___SBaseTrigger_19nw9_gg_:hover{background-color:var(--intergalactic-bg-primary-neutral-hover,#f8f9f8)}}.___SBaseTrigger_19nw9_gg_.__active_19nw9_gg_,.___SBaseTrigger_19nw9_gg_:active{border-color:var(--intergalactic-border-info-active,#8796ef);background-color:var(--intergalactic-bg-primary-neutral,#fff)}.___SBaseTrigger_19nw9_gg_.__disabled_19nw9_gg_{opacity:var(--intergalactic-disabled-opacity,.4);cursor:default;pointer-events:none}.___SInner_19nw9_gg_{display:inline-flex;align-items:center;justify-content:center;height:100%;width:100%}.___SText_19nw9_gg_{display:inline;padding:1px 0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;line-height:var(--intergalactic-lh-200,142%);flex-grow:1;text-align:left}.___SAddon_19nw9_gg_{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;pointer-events:none}.___SBaseAddon_19nw9_gg_{width:12px;height:12px}.___SBaseTrigger_19nw9_gg_._size_m_19nw9_gg_{min-width:26px;height:28px;border-radius:var(--intergalactic-control-rounded,6px);padding:0 var(--intergalactic-spacing-2x,8px);font-size:var(--intergalactic-fs-200,14px)}.___SBaseTrigger_19nw9_gg_._size_m_19nw9_gg_ .___SAddon_19nw9_gg_:not(:only-child):first-child{margin-right:var(--intergalactic-spacing-2x,8px)}.___SBaseTrigger_19nw9_gg_._size_m_19nw9_gg_ .___SAddon_19nw9_gg_:not(:only-child):last-child{margin-left:var(--intergalactic-spacing-2x,8px)}.___SBaseTrigger_19nw9_gg_._size_m_19nw9_gg_ .___SAddon_19nw9_gg_:only-child{margin-left:calc(var(--intergalactic-spacing-1x, 4px)*-1);margin-right:calc(var(--intergalactic-spacing-1x, 4px)*-1)}.___SBaseTrigger_19nw9_gg_._size_l_19nw9_gg_{min-width:32px;height:40px;border-radius:var(--intergalactic-control-rounded,6px);padding:0 var(--intergalactic-spacing-3x,12px);font-size:var(--intergalactic-fs-300,16px)}.___SBaseTrigger_19nw9_gg_._size_l_19nw9_gg_ .___SAddon_19nw9_gg_:not(:only-child):first-child{margin-right:var(--intergalactic-spacing-2x,8px)}.___SBaseTrigger_19nw9_gg_._size_l_19nw9_gg_ .___SAddon_19nw9_gg_:not(:only-child):last-child{margin-left:var(--intergalactic-spacing-2x,8px)}.___SBaseTrigger_19nw9_gg_._size_l_19nw9_gg_ .___SAddon_19nw9_gg_:only-child{margin-left:calc(var(--intergalactic-spacing-1x, 4px)*-1);margin-right:calc(var(--intergalactic-spacing-1x, 4px)*-1)}.___SBaseTrigger_19nw9_gg_._neighborLocation_right_19nw9_gg_{border-top-right-radius:0;border-bottom-right-radius:0}.___SBaseTrigger_19nw9_gg_._neighborLocation_both_19nw9_gg_{border-radius:0;margin-left:-1px}.___SBaseTrigger_19nw9_gg_._neighborLocation_left_19nw9_gg_{border-top-left-radius:0;border-bottom-left-radius:0;margin-left:-1px}.___SBaseTrigger_19nw9_gg_._neighborLocation_left_19nw9_gg_.__disabled_19nw9_gg_{border-left:none;margin-left:0}.___SText_19nw9_gg_.__display-placeholder_19nw9_gg_{color:var(--intergalactic-text-placeholder,#00050275)}.___SBaseTrigger_19nw9_gg_._state_valid_19nw9_gg_{border-color:var(--intergalactic-border-success-active,#00b991)}@supports (color:color(display-p3 0 0 0%)){.___SBaseTrigger_19nw9_gg_._state_valid_19nw9_gg_{border-color:var(--intergalactic-border-success-active,#00b991)}@media (color-gamut:p3){.___SBaseTrigger_19nw9_gg_._state_valid_19nw9_gg_{border-color:var(--intergalactic-border-success-active,color(display-p3 .21847 .73243 .56937))}}}.___SBaseTrigger_19nw9_gg_._state_invalid_19nw9_gg_{border-color:var(--intergalactic-border-critical-active,#ff6364)}@supports (color:color(display-p3 0 0 0%)){.___SBaseTrigger_19nw9_gg_._state_invalid_19nw9_gg_{border-color:var(--intergalactic-border-critical-active,#ff6364)}@media (color-gamut:p3){.___SBaseTrigger_19nw9_gg_._state_invalid_19nw9_gg_{border-color:var(--intergalactic-border-critical-active,color(display-p3 .95478 .398 .38923))}}}.___SBaseTrigger_19nw9_gg_._state_invalid_19nw9_gg_:focus-visible{outline-color:var(--intergalactic-keyboard-focus-invalid-outline,#ff0207a6)}.___SInvalidPattern_19nw9_gg_._size_m_19nw9_gg_{margin-left:calc(var(--intergalactic-spacing-2x, 8px)*-1)}.___SInvalidPattern_19nw9_gg_._size_l_19nw9_gg_{margin-left:calc(var(--intergalactic-spacing-3x, 12px)*-1)}", /*__inner_css_end__*/"19nw9_gg_"),
|
|
18
18
|
/*__reshadow_css_end__*/
|
|
19
19
|
{
|
|
20
|
-
"__SBaseTrigger": "
|
|
21
|
-
"_disabled": "
|
|
22
|
-
"__SInner": "
|
|
23
|
-
"__SText": "
|
|
24
|
-
"__SAddon": "
|
|
25
|
-
"__SBaseAddon": "
|
|
26
|
-
"_neighborLocation_right": "
|
|
27
|
-
"_neighborLocation_both": "
|
|
28
|
-
"_display-placeholder": "__display-
|
|
29
|
-
"_state_valid": "
|
|
30
|
-
"__SInvalidPattern": "
|
|
31
|
-
"_size_m": "
|
|
32
|
-
"_size_l": "
|
|
33
|
-
"_active": "
|
|
34
|
-
"_neighborLocation_left": "
|
|
35
|
-
"_state_invalid": "
|
|
20
|
+
"__SBaseTrigger": "___SBaseTrigger_19nw9_gg_",
|
|
21
|
+
"_disabled": "__disabled_19nw9_gg_",
|
|
22
|
+
"__SInner": "___SInner_19nw9_gg_",
|
|
23
|
+
"__SText": "___SText_19nw9_gg_",
|
|
24
|
+
"__SAddon": "___SAddon_19nw9_gg_",
|
|
25
|
+
"__SBaseAddon": "___SBaseAddon_19nw9_gg_",
|
|
26
|
+
"_neighborLocation_right": "_neighborLocation_right_19nw9_gg_",
|
|
27
|
+
"_neighborLocation_both": "_neighborLocation_both_19nw9_gg_",
|
|
28
|
+
"_display-placeholder": "__display-placeholder_19nw9_gg_",
|
|
29
|
+
"_state_valid": "_state_valid_19nw9_gg_",
|
|
30
|
+
"__SInvalidPattern": "___SInvalidPattern_19nw9_gg_",
|
|
31
|
+
"_size_m": "_size_m_19nw9_gg_",
|
|
32
|
+
"_size_l": "_size_l_19nw9_gg_",
|
|
33
|
+
"_active": "__active_19nw9_gg_",
|
|
34
|
+
"_neighborLocation_left": "_neighborLocation_left_19nw9_gg_",
|
|
35
|
+
"_state_invalid": "_state_invalid_19nw9_gg_"
|
|
36
36
|
});
|
|
37
37
|
class RootBaseTrigger extends _core.Component {
|
|
38
38
|
constructor(...args) {
|
|
@@ -137,6 +137,12 @@ function Addon(props) {
|
|
|
137
137
|
...(0, _core.assignProps)({}, _ref3)
|
|
138
138
|
}));
|
|
139
139
|
}
|
|
140
|
+
|
|
141
|
+
/**
|
|
142
|
+
* BaseTrigger
|
|
143
|
+
*
|
|
144
|
+
* {@link https://developer.semrush.com/intergalactic/components/base-trigger/base-trigger-api/|API} | {@link https://developer.semrush.com/intergalactic/components/base-trigger/base-trigger-code/|Examples}
|
|
145
|
+
*/
|
|
140
146
|
const BaseTrigger = (0, _core.createComponent)(RootBaseTrigger, {
|
|
141
147
|
Text,
|
|
142
148
|
Addon
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseTrigger.js","names":["_core","require","_baseComponents","_addonTextChildren","_interopRequireDefault","_animatedSizeEnhance","_useCssVariable","_typography","_react","style","sstyled","insert","RootBaseTrigger","Component","constructor","args","_defineProperty2","default","React","createRef","getTextProps","placeholder","empty","asProps","triggerRef","render","_ref","SBaseTrigger","Box","SInner","SInvalidPattern","InvalidStateBox","Children","styles","theme","neighborLocation","state","size","createElement","NeighborLocation","Detect","_ref4","cn","assignProps","addonTextChildren","BaseTrigger","Text","Addon","cssVariableEnhance","variable","fallback","map","Number","parseInt","prop","animatedSizeEnhance","animateProps","onChangeOf","props","_ref2","arguments[0]","_ref5","SText","TextKit","textRef","useRef","children","ellipsis","content","Fragment","_ref3","_ref6","SAddon","createComponent","_default","exports"],"sources":["../../src/BaseTrigger.jsx"],"sourcesContent":["import { NeighborLocation, Box, InvalidStateBox } from '@semcore/base-components';\nimport { createComponent, Component, Root, sstyled } from '@semcore/core';\nimport addonTextChildren from '@semcore/core/lib/utils/addonTextChildren';\nimport animatedSizeEnhance from '@semcore/core/lib/utils/enhances/animatedSizeEnhance';\nimport { cssVariableEnhance } from '@semcore/core/lib/utils/useCssVariable';\nimport { Text as TextKit } from '@semcore/typography';\nimport React from 'react';\n\nimport style from './style/base-trigger.shadow.css';\n\nclass RootBaseTrigger extends Component {\n static displayName = 'BaseTrigger';\n static enhance = [\n cssVariableEnhance({\n variable: '--intergalactic-duration-control',\n fallback: '200',\n map: Number.parseInt,\n prop: 'duration',\n }),\n animatedSizeEnhance({\n animateProps: ['width'],\n onChangeOf: ['value'],\n }),\n ];\n\n static style = style;\n static defaultProps = {\n size: 'm',\n empty: false,\n };\n\n triggerRef = React.createRef();\n\n getTextProps() {\n const { placeholder, empty } = this.asProps;\n return {\n placeholder,\n empty,\n triggerRef: this.triggerRef,\n };\n }\n\n render() {\n const SBaseTrigger = Root;\n const SInner = 'span';\n const SInvalidPattern = InvalidStateBox;\n const { Children, styles, theme, neighborLocation, empty, state, size } = this.asProps;\n\n // TODO: add aria\n return (\n <NeighborLocation.Detect neighborLocation={neighborLocation}>\n {(neighborLocation) =>\n sstyled(styles)(\n <SBaseTrigger\n render={Box}\n tag='button'\n type='button'\n tabIndex={0}\n neighborLocation={neighborLocation}\n state={theme}\n ref={this.triggerRef}\n >\n {state === 'invalid' && <SInvalidPattern size={size} />}\n <SInner data-ui-name={`${this.asProps['data-ui-name']}.InnerTriggerWrapper`}>\n {addonTextChildren(Children, BaseTrigger.Text, BaseTrigger.Addon, empty)}\n </SInner>\n </SBaseTrigger>,\n )}\n </NeighborLocation.Detect>\n );\n }\n}\n\nfunction Text(props) {\n const SText = Root;\n const textRef = React.useRef();\n const { children, styles, empty, placeholder, triggerRef, ellipsis = false } = props;\n const content = empty ? placeholder : children;\n\n return sstyled(styles)(\n <>\n <SText\n render={TextKit}\n display-placeholder={empty}\n aria-hidden={empty}\n ref={textRef}\n ellipsis={ellipsis}\n hint:triggerRef={triggerRef}\n >\n {content}\n </SText>\n </>,\n );\n}\n\nfunction Addon(props) {\n const SAddon = Root;\n const { styles } = props;\n return sstyled(styles)(<SAddon render={Box} />);\n}\n\nconst BaseTrigger = createComponent(RootBaseTrigger, {\n Text,\n Addon,\n});\n\nexport default BaseTrigger;\n"],"mappings":"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
|
|
1
|
+
{"version":3,"file":"BaseTrigger.js","names":["_core","require","_baseComponents","_addonTextChildren","_interopRequireDefault","_animatedSizeEnhance","_useCssVariable","_typography","_react","style","sstyled","insert","RootBaseTrigger","Component","constructor","args","_defineProperty2","default","React","createRef","getTextProps","placeholder","empty","asProps","triggerRef","render","_ref","SBaseTrigger","Box","SInner","SInvalidPattern","InvalidStateBox","Children","styles","theme","neighborLocation","state","size","createElement","NeighborLocation","Detect","_ref4","cn","assignProps","addonTextChildren","BaseTrigger","Text","Addon","cssVariableEnhance","variable","fallback","map","Number","parseInt","prop","animatedSizeEnhance","animateProps","onChangeOf","props","_ref2","arguments[0]","_ref5","SText","TextKit","textRef","useRef","children","ellipsis","content","Fragment","_ref3","_ref6","SAddon","createComponent","_default","exports"],"sources":["../../src/BaseTrigger.jsx"],"sourcesContent":["import { NeighborLocation, Box, InvalidStateBox } from '@semcore/base-components';\nimport { createComponent, Component, Root, sstyled } from '@semcore/core';\nimport addonTextChildren from '@semcore/core/lib/utils/addonTextChildren';\nimport animatedSizeEnhance from '@semcore/core/lib/utils/enhances/animatedSizeEnhance';\nimport { cssVariableEnhance } from '@semcore/core/lib/utils/useCssVariable';\nimport { Text as TextKit } from '@semcore/typography';\nimport React from 'react';\n\nimport style from './style/base-trigger.shadow.css';\n\nclass RootBaseTrigger extends Component {\n static displayName = 'BaseTrigger';\n static enhance = [\n cssVariableEnhance({\n variable: '--intergalactic-duration-control',\n fallback: '200',\n map: Number.parseInt,\n prop: 'duration',\n }),\n animatedSizeEnhance({\n animateProps: ['width'],\n onChangeOf: ['value'],\n }),\n ];\n\n static style = style;\n static defaultProps = {\n size: 'm',\n empty: false,\n };\n\n triggerRef = React.createRef();\n\n getTextProps() {\n const { placeholder, empty } = this.asProps;\n return {\n placeholder,\n empty,\n triggerRef: this.triggerRef,\n };\n }\n\n render() {\n const SBaseTrigger = Root;\n const SInner = 'span';\n const SInvalidPattern = InvalidStateBox;\n const { Children, styles, theme, neighborLocation, empty, state, size } = this.asProps;\n\n // TODO: add aria\n return (\n <NeighborLocation.Detect neighborLocation={neighborLocation}>\n {(neighborLocation) =>\n sstyled(styles)(\n <SBaseTrigger\n render={Box}\n tag='button'\n type='button'\n tabIndex={0}\n neighborLocation={neighborLocation}\n state={theme}\n ref={this.triggerRef}\n >\n {state === 'invalid' && <SInvalidPattern size={size} />}\n <SInner data-ui-name={`${this.asProps['data-ui-name']}.InnerTriggerWrapper`}>\n {addonTextChildren(Children, BaseTrigger.Text, BaseTrigger.Addon, empty)}\n </SInner>\n </SBaseTrigger>,\n )}\n </NeighborLocation.Detect>\n );\n }\n}\n\nfunction Text(props) {\n const SText = Root;\n const textRef = React.useRef();\n const { children, styles, empty, placeholder, triggerRef, ellipsis = false } = props;\n const content = empty ? placeholder : children;\n\n return sstyled(styles)(\n <>\n <SText\n render={TextKit}\n display-placeholder={empty}\n aria-hidden={empty}\n ref={textRef}\n ellipsis={ellipsis}\n hint:triggerRef={triggerRef}\n >\n {content}\n </SText>\n </>,\n );\n}\n\nfunction Addon(props) {\n const SAddon = Root;\n const { styles } = props;\n return sstyled(styles)(<SAddon render={Box} />);\n}\n\n/**\n * BaseTrigger\n *\n * {@link https://developer.semrush.com/intergalactic/components/base-trigger/base-trigger-api/|API} | {@link https://developer.semrush.com/intergalactic/components/base-trigger/base-trigger-code/|Examples}\n */\nconst BaseTrigger = createComponent(RootBaseTrigger, {\n Text,\n Addon,\n});\n\nexport default BaseTrigger;\n"],"mappings":"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","ignoreList":[]}
|
package/lib/cjs/ButtonTrigger.js
CHANGED
|
@@ -15,11 +15,11 @@ var _spin = _interopRequireDefault(require("@semcore/spin"));
|
|
|
15
15
|
var _react = _interopRequireDefault(require("react"));
|
|
16
16
|
var _BaseTrigger = _interopRequireDefault(require("./BaseTrigger"));
|
|
17
17
|
/*!__reshadow-styles__:"./style/button-trigger.shadow.css"*/
|
|
18
|
-
const style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".
|
|
18
|
+
const style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".___SButtonAddon_qly44_gg_{width:12px;height:12px}.___SButtonTriggerSpin_qly44_gg_{fill:var(--intergalactic-icon-primary-neutral,#00040186)}", /*__inner_css_end__*/"qly44_gg_"),
|
|
19
19
|
/*__reshadow_css_end__*/
|
|
20
20
|
{
|
|
21
|
-
"__SButtonAddon": "
|
|
22
|
-
"__SButtonTriggerSpin": "
|
|
21
|
+
"__SButtonAddon": "___SButtonAddon_qly44_gg_",
|
|
22
|
+
"__SButtonTriggerSpin": "___SButtonTriggerSpin_qly44_gg_"
|
|
23
23
|
});
|
|
24
24
|
class RootButtonTrigger extends _core.Component {
|
|
25
25
|
getTextProps() {
|
|
@@ -53,6 +53,12 @@ class RootButtonTrigger extends _core.Component {
|
|
|
53
53
|
})) : /*#__PURE__*/_react.default.createElement(_m.default, _ref2.cn("ChevronDown", {}))));
|
|
54
54
|
}
|
|
55
55
|
}
|
|
56
|
+
|
|
57
|
+
/**
|
|
58
|
+
* ButtonTrigger
|
|
59
|
+
*
|
|
60
|
+
* {@link https://developer.semrush.com/intergalactic/components/base-trigger/base-trigger-api#buttontrigger|API} | {@link https://developer.semrush.com/intergalactic/components/base-trigger/base-trigger-code#buttontrigger|Examples}
|
|
61
|
+
*/
|
|
56
62
|
(0, _defineProperty2.default)(RootButtonTrigger, "displayName", 'ButtonTrigger');
|
|
57
63
|
(0, _defineProperty2.default)(RootButtonTrigger, "style", style);
|
|
58
64
|
(0, _defineProperty2.default)(RootButtonTrigger, "enhance", [(0, _useCssVariable.cssVariableEnhance)({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ButtonTrigger.js","names":["_core","require","_addonTextChildren","_interopRequireDefault","_animatedSizeEnhance","_useCssVariable","_m","_spin","_react","_BaseTrigger","style","sstyled","insert","RootButtonTrigger","Component","getTextProps","tag","getAddonProps","render","_ref","asProps","_ref2","SButtonAddon","ButtonTrigger","Addon","SButtonTriggerSpin","Spin","Children","styles","loading","disabled","chevron","empty","default","createElement","BaseTrigger","assignProps","addonTextChildren","Text","cn","_defineProperty2","cssVariableEnhance","variable","fallback","map","Number","parseInt","prop","animatedSizeEnhance","animateProps","onChangeOf","createComponent","parent","_default","exports"],"sources":["../../src/ButtonTrigger.jsx"],"sourcesContent":["import { createComponent, Component, Root, sstyled } from '@semcore/core';\nimport addonTextChildren from '@semcore/core/lib/utils/addonTextChildren';\nimport animatedSizeEnhance from '@semcore/core/lib/utils/enhances/animatedSizeEnhance';\nimport { cssVariableEnhance } from '@semcore/core/lib/utils/useCssVariable';\nimport ChevronDown from '@semcore/icon/ChevronDown/m';\nimport Spin from '@semcore/spin';\nimport React from 'react';\n\nimport BaseTrigger from './BaseTrigger';\nimport style from './style/button-trigger.shadow.css';\n\nclass RootButtonTrigger extends Component {\n static displayName = 'ButtonTrigger';\n static style = style;\n static enhance = [\n cssVariableEnhance({\n variable: '--intergalactic-duration-control',\n fallback: '200',\n map: Number.parseInt,\n prop: 'duration',\n }),\n animatedSizeEnhance({\n animateProps: ['width'],\n onChangeOf: ['value'],\n }),\n ];\n\n static defaultProps = {\n chevron: true,\n };\n\n getTextProps() {\n return {\n tag: 'span',\n };\n }\n\n getAddonProps() {\n return {\n tag: 'span',\n };\n }\n\n render() {\n const SButtonAddon = ButtonTrigger.Addon;\n const SButtonTriggerSpin = Spin;\n const { Children, styles, loading, disabled, chevron, empty } = this.asProps;\n\n return sstyled(styles)(\n <Root render={BaseTrigger} use:disabled={disabled || loading}>\n {addonTextChildren(Children, ButtonTrigger.Text, ButtonTrigger.Addon, empty)}\n {(chevron || loading) && (\n <SButtonAddon>\n {loading ? <SButtonTriggerSpin size='xs' theme={false} /> : <ChevronDown />}\n </SButtonAddon>\n )}\n </Root>,\n );\n }\n}\n\nconst ButtonTrigger = createComponent(\n RootButtonTrigger,\n {\n Text: BaseTrigger.Text,\n Addon: BaseTrigger.Addon,\n },\n {\n parent: BaseTrigger,\n },\n);\n\nexport default ButtonTrigger;\n"],"mappings":";;;;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,kBAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,oBAAA,GAAAD,sBAAA,CAAAF,OAAA;AACA,IAAAI,eAAA,GAAAJ,OAAA;AACA,IAAAK,EAAA,GAAAH,sBAAA,CAAAF,OAAA;AACA,IAAAM,KAAA,GAAAJ,sBAAA,CAAAF,OAAA;AACA,IAAAO,MAAA,GAAAL,sBAAA,CAAAF,OAAA;AAEA,IAAAQ,YAAA,GAAAN,sBAAA,CAAAF,OAAA;AAAwC;AAAA,MAAAS,KAAA,8BAAAV,KAAA,CAAAW,OAAA,CAAAC,MAAA;AAAA;AAAA;EAAA;EAAA;AAAA;AAGxC,MAAMC,iBAAiB,SAASC,eAAS,CAAC;EAoBxCC,YAAYA,CAAA,EAAG;IACb,OAAO;MACLC,GAAG,EAAE;IACP,CAAC;EACH;EAEAC,aAAaA,CAAA,EAAG;IACd,OAAO;MACLD,GAAG,EAAE;IACP,CAAC;EACH;EAEAE,MAAMA,CAAA,EAAG;IAAA,IAAAC,IAAA,QAAAC,OAAA;MAAAC,KAAA;IACP,MAAMC,YAAY,GAAGC,aAAa,CAACC,KAAK;IACxC,MAAMC,kBAAkB,GAAGC,aAAI;IAC/B,MAAM;MAAEC,QAAQ;MAAEC,MAAM;MAAEC,OAAO;MAAEC,QAAQ;MAAEC,OAAO;MAAEC;IAAM,CAAC,GAAG,IAAI,CAACZ,OAAO;IAE5E,OAAAC,KAAA,GAAO,IAAAV,aAAO,EAACiB,MAAM,CAAC,eACpBpB,MAAA,CAAAyB,OAAA,CAAAC,aAAA,CAAcC,oBAAW,MAAAnC,KAAA,CAAAoC,WAAA;MAAA,gBAAgBN,QAAQ,IAAID;IAAO,GAAAV,IAAA,GACzD,IAAAkB,0BAAiB,EAACV,QAAQ,EAAEJ,aAAa,CAACe,IAAI,EAAEf,aAAa,CAACC,KAAK,EAAEQ,KAAK,CAAC,EAC3E,CAACD,OAAO,IAAIF,OAAO,kBAClBrB,MAAA,CAAAyB,OAAA,CAAAC,aAAA,CAACZ,YAAY,EAAAD,KAAA,CAAAkB,EAAA,sBACVV,OAAO,gBAAGrB,MAAA,CAAAyB,OAAA,CAAAC,aAAA,CAACT,kBAAkB,EAAAJ,KAAA,CAAAkB,EAAA;MAAA,QAAM,IAAI;MAAA,SAAQ;IAAK,EAAG,CAAC,gBAAG/B,MAAA,CAAAyB,OAAA,CAAAC,aAAA,CAAC5B,EAAA,CAAA2B,OAAW,EAAAZ,KAAA,CAAAkB,EAAA,mBAAE,CAC9D,CAEZ,CAAC;EAEX;AACF;
|
|
1
|
+
{"version":3,"file":"ButtonTrigger.js","names":["_core","require","_addonTextChildren","_interopRequireDefault","_animatedSizeEnhance","_useCssVariable","_m","_spin","_react","_BaseTrigger","style","sstyled","insert","RootButtonTrigger","Component","getTextProps","tag","getAddonProps","render","_ref","asProps","_ref2","SButtonAddon","ButtonTrigger","Addon","SButtonTriggerSpin","Spin","Children","styles","loading","disabled","chevron","empty","default","createElement","BaseTrigger","assignProps","addonTextChildren","Text","cn","_defineProperty2","cssVariableEnhance","variable","fallback","map","Number","parseInt","prop","animatedSizeEnhance","animateProps","onChangeOf","createComponent","parent","_default","exports"],"sources":["../../src/ButtonTrigger.jsx"],"sourcesContent":["import { createComponent, Component, Root, sstyled } from '@semcore/core';\nimport addonTextChildren from '@semcore/core/lib/utils/addonTextChildren';\nimport animatedSizeEnhance from '@semcore/core/lib/utils/enhances/animatedSizeEnhance';\nimport { cssVariableEnhance } from '@semcore/core/lib/utils/useCssVariable';\nimport ChevronDown from '@semcore/icon/ChevronDown/m';\nimport Spin from '@semcore/spin';\nimport React from 'react';\n\nimport BaseTrigger from './BaseTrigger';\nimport style from './style/button-trigger.shadow.css';\n\nclass RootButtonTrigger extends Component {\n static displayName = 'ButtonTrigger';\n static style = style;\n static enhance = [\n cssVariableEnhance({\n variable: '--intergalactic-duration-control',\n fallback: '200',\n map: Number.parseInt,\n prop: 'duration',\n }),\n animatedSizeEnhance({\n animateProps: ['width'],\n onChangeOf: ['value'],\n }),\n ];\n\n static defaultProps = {\n chevron: true,\n };\n\n getTextProps() {\n return {\n tag: 'span',\n };\n }\n\n getAddonProps() {\n return {\n tag: 'span',\n };\n }\n\n render() {\n const SButtonAddon = ButtonTrigger.Addon;\n const SButtonTriggerSpin = Spin;\n const { Children, styles, loading, disabled, chevron, empty } = this.asProps;\n\n return sstyled(styles)(\n <Root render={BaseTrigger} use:disabled={disabled || loading}>\n {addonTextChildren(Children, ButtonTrigger.Text, ButtonTrigger.Addon, empty)}\n {(chevron || loading) && (\n <SButtonAddon>\n {loading ? <SButtonTriggerSpin size='xs' theme={false} /> : <ChevronDown />}\n </SButtonAddon>\n )}\n </Root>,\n );\n }\n}\n\n/**\n * ButtonTrigger\n *\n * {@link https://developer.semrush.com/intergalactic/components/base-trigger/base-trigger-api#buttontrigger|API} | {@link https://developer.semrush.com/intergalactic/components/base-trigger/base-trigger-code#buttontrigger|Examples}\n */\nconst ButtonTrigger = createComponent(\n RootButtonTrigger,\n {\n Text: BaseTrigger.Text,\n Addon: BaseTrigger.Addon,\n },\n {\n parent: BaseTrigger,\n },\n);\n\nexport default ButtonTrigger;\n"],"mappings":";;;;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,kBAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,oBAAA,GAAAD,sBAAA,CAAAF,OAAA;AACA,IAAAI,eAAA,GAAAJ,OAAA;AACA,IAAAK,EAAA,GAAAH,sBAAA,CAAAF,OAAA;AACA,IAAAM,KAAA,GAAAJ,sBAAA,CAAAF,OAAA;AACA,IAAAO,MAAA,GAAAL,sBAAA,CAAAF,OAAA;AAEA,IAAAQ,YAAA,GAAAN,sBAAA,CAAAF,OAAA;AAAwC;AAAA,MAAAS,KAAA,8BAAAV,KAAA,CAAAW,OAAA,CAAAC,MAAA;AAAA;AAAA;EAAA;EAAA;AAAA;AAGxC,MAAMC,iBAAiB,SAASC,eAAS,CAAC;EAoBxCC,YAAYA,CAAA,EAAG;IACb,OAAO;MACLC,GAAG,EAAE;IACP,CAAC;EACH;EAEAC,aAAaA,CAAA,EAAG;IACd,OAAO;MACLD,GAAG,EAAE;IACP,CAAC;EACH;EAEAE,MAAMA,CAAA,EAAG;IAAA,IAAAC,IAAA,QAAAC,OAAA;MAAAC,KAAA;IACP,MAAMC,YAAY,GAAGC,aAAa,CAACC,KAAK;IACxC,MAAMC,kBAAkB,GAAGC,aAAI;IAC/B,MAAM;MAAEC,QAAQ;MAAEC,MAAM;MAAEC,OAAO;MAAEC,QAAQ;MAAEC,OAAO;MAAEC;IAAM,CAAC,GAAG,IAAI,CAACZ,OAAO;IAE5E,OAAAC,KAAA,GAAO,IAAAV,aAAO,EAACiB,MAAM,CAAC,eACpBpB,MAAA,CAAAyB,OAAA,CAAAC,aAAA,CAAcC,oBAAW,MAAAnC,KAAA,CAAAoC,WAAA;MAAA,gBAAgBN,QAAQ,IAAID;IAAO,GAAAV,IAAA,GACzD,IAAAkB,0BAAiB,EAACV,QAAQ,EAAEJ,aAAa,CAACe,IAAI,EAAEf,aAAa,CAACC,KAAK,EAAEQ,KAAK,CAAC,EAC3E,CAACD,OAAO,IAAIF,OAAO,kBAClBrB,MAAA,CAAAyB,OAAA,CAAAC,aAAA,CAACZ,YAAY,EAAAD,KAAA,CAAAkB,EAAA,sBACVV,OAAO,gBAAGrB,MAAA,CAAAyB,OAAA,CAAAC,aAAA,CAACT,kBAAkB,EAAAJ,KAAA,CAAAkB,EAAA;MAAA,QAAM,IAAI;MAAA,SAAQ;IAAK,EAAG,CAAC,gBAAG/B,MAAA,CAAAyB,OAAA,CAAAC,aAAA,CAAC5B,EAAA,CAAA2B,OAAW,EAAAZ,KAAA,CAAAkB,EAAA,mBAAE,CAC9D,CAEZ,CAAC;EAEX;AACF;;AAEA;AACA;AACA;AACA;AACA;AAJA,IAAAC,gBAAA,CAAAP,OAAA,EAlDMpB,iBAAiB,iBACA,eAAe;AAAA,IAAA2B,gBAAA,CAAAP,OAAA,EADhCpB,iBAAiB,WAENH,KAAK;AAAA,IAAA8B,gBAAA,CAAAP,OAAA,EAFhBpB,iBAAiB,aAGJ,CACf,IAAA4B,kCAAkB,EAAC;EACjBC,QAAQ,EAAE,kCAAkC;EAC5CC,QAAQ,EAAE,KAAK;EACfC,GAAG,EAAEC,MAAM,CAACC,QAAQ;EACpBC,IAAI,EAAE;AACR,CAAC,CAAC,EACF,IAAAC,4BAAmB,EAAC;EAClBC,YAAY,EAAE,CAAC,OAAO,CAAC;EACvBC,UAAU,EAAE,CAAC,OAAO;AACtB,CAAC,CAAC,CACH;AAAA,IAAAV,gBAAA,CAAAP,OAAA,EAdGpB,iBAAiB,kBAgBC;EACpBkB,OAAO,EAAE;AACX,CAAC;AAqCH,MAAMR,aAAa,GAAG,IAAA4B,qBAAe,EACnCtC,iBAAiB,EACjB;EACEyB,IAAI,EAAEH,oBAAW,CAACG,IAAI;EACtBd,KAAK,EAAEW,oBAAW,CAACX;AACrB,CAAC,EACD;EACE4B,MAAM,EAAEjB;AACV,CACF,CAAC;AAAC,IAAAkB,QAAA,GAAAC,OAAA,CAAArB,OAAA,GAEaV,aAAa","ignoreList":[]}
|
package/lib/cjs/FilterTrigger.js
CHANGED
|
@@ -25,13 +25,13 @@ var _react = _interopRequireDefault(require("react"));
|
|
|
25
25
|
var _BaseTrigger = _interopRequireDefault(require("./BaseTrigger"));
|
|
26
26
|
var _intergalacticDynamicLocales = require("./translations/__intergalactic-dynamic-locales");
|
|
27
27
|
/*!__reshadow-styles__:"./style/filter-trigger.shadow.css"*/
|
|
28
|
-
const style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".
|
|
28
|
+
const style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".___SFilterTrigger_4mfzu_gg_.__selected_4mfzu_gg_{border-color:var(--intergalactic-border-info-active,#8796ef);background-color:var(--intergalactic-control-secondary-info,#0051ff0a);color:var(--intergalactic-text-primary,#010500e5)}@supports (color:color(display-p3 0 0 0%)){.___SFilterTrigger_4mfzu_gg_.__selected_4mfzu_gg_{background-color:var(--intergalactic-control-secondary-info,#0051ff0a)}@media (color-gamut:p3){.___SFilterTrigger_4mfzu_gg_.__selected_4mfzu_gg_{background-color:var(--intergalactic-control-secondary-info,color(display-p3 .12567 .31309 .96324/.039))}}}@media (hover:hover){.___SFilterTrigger_4mfzu_gg_.__selected_4mfzu_gg_:hover{background-color:var(--intergalactic-control-secondary-info-hover,#0050ff14)}@supports (color:color(display-p3 0 0 0%)){.___SFilterTrigger_4mfzu_gg_.__selected_4mfzu_gg_:hover{background-color:var(--intergalactic-control-secondary-info-hover,#0050ff14)}@media (color-gamut:p3){.___SFilterTrigger_4mfzu_gg_.__selected_4mfzu_gg_:hover{background-color:var(--intergalactic-control-secondary-info-hover,color(display-p3 .12402 .30857 .96259/.077))}}}}.___SFilterTrigger_4mfzu_gg_.__selected_4mfzu_gg_.__active_4mfzu_gg_,.___SFilterTrigger_4mfzu_gg_.__selected_4mfzu_gg_:active{background-color:var(--intergalactic-control-secondary-info-active,#014fff1e)}@supports (color:color(display-p3 0 0 0%)){.___SFilterTrigger_4mfzu_gg_.__selected_4mfzu_gg_.__active_4mfzu_gg_,.___SFilterTrigger_4mfzu_gg_.__selected_4mfzu_gg_:active{background-color:var(--intergalactic-control-secondary-info-active,#014fff1e)}@media (color-gamut:p3){.___SFilterTrigger_4mfzu_gg_.__selected_4mfzu_gg_.__active_4mfzu_gg_,.___SFilterTrigger_4mfzu_gg_.__selected_4mfzu_gg_:active{background-color:var(--intergalactic-control-secondary-info-active,color(display-p3 .12361 .30547 .96332/.116))}}}.___SWrapper_4mfzu_gg_{display:inline-flex}.___SWrapper_4mfzu_gg_:focus{outline:none}", /*__inner_css_end__*/"4mfzu_gg_"),
|
|
29
29
|
/*__reshadow_css_end__*/
|
|
30
30
|
{
|
|
31
|
-
"__SFilterTrigger": "
|
|
32
|
-
"_selected": "
|
|
33
|
-
"_active": "
|
|
34
|
-
"__SWrapper": "
|
|
31
|
+
"__SFilterTrigger": "___SFilterTrigger_4mfzu_gg_",
|
|
32
|
+
"_selected": "__selected_4mfzu_gg_",
|
|
33
|
+
"_active": "__active_4mfzu_gg_",
|
|
34
|
+
"__SWrapper": "___SWrapper_4mfzu_gg_"
|
|
35
35
|
});
|
|
36
36
|
const filterTriggerInputProps = [..._inputProps.inputProps, 'aria-controls', 'aria-haspopup', 'aria-expanded', 'aria-disabled', 'aria-activedescendant', 'aria-label', 'aria-labelledby', 'role'];
|
|
37
37
|
class RootFilterTrigger extends _core.Component {
|
|
@@ -226,6 +226,12 @@ function Counter({
|
|
|
226
226
|
}, _ref4)
|
|
227
227
|
}), count !== undefined ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, count, /*#__PURE__*/_react.default.createElement(_baseComponents.ScreenReaderOnly, _ref8.cn("ScreenReaderOnly", {}), getI18nText('BaseTrigger.FilterTrigger.Counter.selected:aria-label'))) : /*#__PURE__*/_react.default.createElement(Children, _ref8.cn("Children", {})));
|
|
228
228
|
}
|
|
229
|
+
|
|
230
|
+
/**
|
|
231
|
+
* FilterTrigger
|
|
232
|
+
*
|
|
233
|
+
* {@link https://developer.semrush.com/intergalactic/components/base-trigger/base-trigger-api#filtertrigger|API} | {@link https://developer.semrush.com/intergalactic/components/base-trigger/base-trigger-code#filtertrigger|Examples}
|
|
234
|
+
*/
|
|
229
235
|
const FilterTrigger = (0, _core.createComponent)(RootFilterTrigger, {
|
|
230
236
|
Text: _BaseTrigger.default.Text,
|
|
231
237
|
Addon: _BaseTrigger.default.Addon,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FilterTrigger.js","names":["_core","require","_baseComponents","_addonTextChildren","_interopRequireDefault","_assignProps5","_animatedSizeEnhance","_i18nEnhance","_findComponent","_inputProps","_interopRequireWildcard","_uniqueID","_useFocusLock","_useCssVariable","_counter","_m","_m2","_react","_BaseTrigger","_intergalacticDynamicLocales","style","sstyled","insert","filterTriggerInputProps","inputProps","RootFilterTrigger","Component","constructor","args","_defineProperty2","default","e","key","stopPropagation","requestAnimationFrame","setFocus","asProps","triggerRef","current","getTriggerButtonProps","empty","size","placeholder","active","disabled","includeInputProps","_dataUiName","other","controlProps","getInputProps","selected","getClearButtonProps","onClear","getI18nText","onClick","callAllEventHandlers","handleClear","handleStopPropagation","onKeyDown","getCounterProps","render","_ref","_ref5","SWrapper","Box","Children","styles","forcedAdvancedMode","advancedMode","isAdvanceMode","FilterTrigger","TriggerButton","displayName","ClearButton","createElement","cn","assignProps","undefined","NeighborLocation","Fragment","i18nEnhance","localizedMessages","cssVariableEnhance","variable","fallback","map","Number","parseInt","prop","animatedSizeEnhance","animateProps","onChangeOf","uniqueIDEnhancement","i18n","locale","React","createRef","role","_ref2","_ref6","SFilterTrigger","BaseTrigger","addonTextChildren","Text","Addon","Counter","tag","ChevronDown","_ref3","_ref7","ariaLabel","title","Close","Hint","count","_ref4","arguments[0]","_ref8","SCounter","SemcoreCounter","ScreenReaderOnly","createComponent","parent","_default","exports"],"sources":["../../src/FilterTrigger.jsx"],"sourcesContent":["import { NeighborLocation, Box, ScreenReaderOnly, Hint } from '@semcore/base-components';\nimport { createComponent, Component, Root, sstyled } from '@semcore/core';\nimport addonTextChildren from '@semcore/core/lib/utils/addonTextChildren';\nimport { callAllEventHandlers } from '@semcore/core/lib/utils/assignProps';\nimport animatedSizeEnhance from '@semcore/core/lib/utils/enhances/animatedSizeEnhance';\nimport i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';\nimport { isAdvanceMode } from '@semcore/core/lib/utils/findComponent';\nimport getInputProps, { inputProps } from '@semcore/core/lib/utils/inputProps';\nimport uniqueIDEnhancement from '@semcore/core/lib/utils/uniqueID';\nimport { setFocus } from '@semcore/core/lib/utils/use/useFocusLock';\nimport { cssVariableEnhance } from '@semcore/core/lib/utils/useCssVariable';\nimport { default as SemcoreCounter } from '@semcore/counter';\nimport ChevronDown from '@semcore/icon/ChevronDown/m';\nimport Close from '@semcore/icon/Close/m';\nimport React from 'react';\n\nimport BaseTrigger from './BaseTrigger';\nimport style from './style/filter-trigger.shadow.css';\nimport { localizedMessages } from './translations/__intergalactic-dynamic-locales';\n\nconst filterTriggerInputProps = [\n ...inputProps,\n 'aria-controls',\n 'aria-haspopup',\n 'aria-expanded',\n 'aria-disabled',\n 'aria-activedescendant',\n 'aria-label',\n 'aria-labelledby',\n 'role',\n];\n\nclass RootFilterTrigger extends Component {\n static displayName = 'FilterTrigger';\n static style = style;\n static enhance = [\n i18nEnhance(localizedMessages),\n cssVariableEnhance({\n variable: '--intergalactic-duration-control',\n fallback: '200',\n map: Number.parseInt,\n prop: 'duration',\n }),\n animatedSizeEnhance({\n animateProps: ['width'],\n onChangeOf: ['value'],\n }),\n uniqueIDEnhancement(),\n ];\n\n static defaultProps = () => ({\n includeInputProps: filterTriggerInputProps,\n i18n: localizedMessages,\n locale: 'en',\n triggerRef: React.createRef(),\n role: 'group',\n });\n\n handleStopPropagation = (e) => {\n if (e.key === 'Escape') return;\n\n e.stopPropagation();\n };\n\n handleClear = () => {\n requestAnimationFrame(() => {\n setFocus(this.asProps.triggerRef.current);\n });\n };\n\n getTriggerButtonProps() {\n const {\n empty,\n size,\n placeholder,\n active,\n disabled,\n includeInputProps,\n triggerRef,\n 'data-ui-name': _dataUiName,\n ...other\n } = this.asProps;\n\n const [controlProps] = getInputProps(other, includeInputProps);\n\n return {\n size,\n placeholder,\n empty,\n selected: !empty,\n active,\n disabled,\n triggerRef,\n ...controlProps,\n };\n }\n\n getClearButtonProps() {\n const { empty, onClear, size, disabled, getI18nText } = this.asProps;\n\n return {\n size,\n empty,\n onClick: callAllEventHandlers(onClear, this.handleClear, this.handleStopPropagation),\n onKeyDown: this.handleStopPropagation,\n disabled,\n getI18nText,\n };\n }\n\n getCounterProps() {\n const { getI18nText, size } = this.asProps;\n\n return {\n getI18nText,\n size,\n };\n }\n\n render() {\n const SWrapper = Root;\n const { Children, styles, getI18nText, empty, forcedAdvancedMode } = this.asProps;\n\n const advancedMode =\n forcedAdvancedMode ||\n isAdvanceMode(\n Children,\n [FilterTrigger.TriggerButton.displayName, FilterTrigger.ClearButton.displayName],\n true,\n );\n\n return sstyled(styles)(\n <SWrapper\n render={Box}\n aria-label={getI18nText('filter')}\n __excludeProps={['id']}\n use:role={undefined}\n use:aria-controls={undefined}\n use:aria-owns={undefined}\n use:aria-haspopup={undefined}\n use:aria-expanded={undefined}\n use:aria-disabled={undefined}\n use:aria-activedescendant={undefined}\n use:aria-label={undefined}\n use:aria-labelledby={undefined}\n >\n <NeighborLocation>\n {advancedMode\n ? (\n <Children />\n )\n : (\n <>\n <FilterTrigger.TriggerButton>\n <Children />\n </FilterTrigger.TriggerButton>\n {!empty && <FilterTrigger.ClearButton />}\n </>\n )}\n </NeighborLocation>\n </SWrapper>,\n );\n }\n}\n\nclass TriggerButton extends Component {\n static displayName = 'TriggerButton';\n static style = style;\n\n render() {\n const SFilterTrigger = Root;\n const { Children, styles, empty, triggerRef } = this.asProps;\n\n return sstyled(styles)(\n <SFilterTrigger\n render={BaseTrigger}\n use:role='combobox'\n w='100%'\n empty={empty}\n selected={!empty}\n ref={triggerRef}\n animationsDisabled\n >\n {addonTextChildren(\n Children,\n FilterTrigger.Text,\n [FilterTrigger.Addon, FilterTrigger.Counter],\n empty,\n )}\n {empty && <FilterTrigger.Addon tag={ChevronDown} />}\n </SFilterTrigger>,\n );\n }\n}\n\nclass ClearButton extends Component {\n static displayName = 'ClearButton';\n static style = style;\n\n triggerRef = React.createRef();\n\n render() {\n const SFilterTrigger = Root;\n const {\n styles,\n empty,\n size,\n disabled,\n getI18nText,\n 'aria-label': ariaLabel,\n title,\n } = this.asProps;\n\n if (empty) return null;\n\n return sstyled(styles)(\n <>\n <SFilterTrigger\n ref={this.triggerRef}\n render={BaseTrigger}\n size={size}\n empty={empty}\n selected\n disabled={disabled}\n aria-label={title ?? ariaLabel ?? getI18nText('clear')}\n __excludeProps={['title']}\n >\n <FilterTrigger.Addon tag={Close} />\n </SFilterTrigger>\n\n <Hint triggerRef={this.triggerRef}>{title ?? ariaLabel ?? getI18nText('clear')}</Hint>\n </>,\n );\n }\n}\n\nfunction Counter({ styles, Children, count, getI18nText }) {\n const SCounter = Root;\n return sstyled(styles)(\n <SCounter render={BaseTrigger.Addon} tag={SemcoreCounter} theme='info'>\n {count !== undefined\n ? (\n <>\n {count}\n <ScreenReaderOnly>\n {getI18nText('BaseTrigger.FilterTrigger.Counter.selected:aria-label')}\n </ScreenReaderOnly>\n </>\n )\n : (\n <Children />\n )}\n </SCounter>,\n );\n}\n\nconst FilterTrigger = createComponent(\n RootFilterTrigger,\n {\n Text: BaseTrigger.Text,\n Addon: BaseTrigger.Addon,\n Counter,\n TriggerButton,\n ClearButton,\n },\n {\n parent: BaseTrigger,\n },\n);\n\nexport default FilterTrigger;\n"],"mappings":";;;;;;;;;AACA,IAAAA,KAAA,GAAAC,OAAA;AADA,IAAAC,eAAA,GAAAD,OAAA;AAEA,IAAAE,kBAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,aAAA,GAAAJ,OAAA;AACA,IAAAK,oBAAA,GAAAF,sBAAA,CAAAH,OAAA;AACA,IAAAM,YAAA,GAAAH,sBAAA,CAAAH,OAAA;AACA,IAAAO,cAAA,GAAAP,OAAA;AACA,IAAAQ,WAAA,GAAAC,uBAAA,CAAAT,OAAA;AACA,IAAAU,SAAA,GAAAP,sBAAA,CAAAH,OAAA;AACA,IAAAW,aAAA,GAAAX,OAAA;AACA,IAAAY,eAAA,GAAAZ,OAAA;AACA,IAAAa,QAAA,GAAAV,sBAAA,CAAAH,OAAA;AACA,IAAAc,EAAA,GAAAX,sBAAA,CAAAH,OAAA;AACA,IAAAe,GAAA,GAAAZ,sBAAA,CAAAH,OAAA;AACA,IAAAgB,MAAA,GAAAb,sBAAA,CAAAH,OAAA;AAEA,IAAAiB,YAAA,GAAAd,sBAAA,CAAAH,OAAA;AAEA,IAAAkB,4BAAA,GAAAlB,OAAA;AAAmF;AAAA,MAAAmB,KAAA,8BAAApB,KAAA,CAAAqB,OAAA,CAAAC,MAAA;AAAA;AAAA;EAAA;EAAA;EAAA;EAAA;AAAA;AAEnF,MAAMC,uBAAuB,GAAG,CAC9B,GAAGC,sBAAU,EACb,eAAe,EACf,eAAe,EACf,eAAe,EACf,eAAe,EACf,uBAAuB,EACvB,YAAY,EACZ,iBAAiB,EACjB,MAAM,CACP;AAED,MAAMC,iBAAiB,SAASC,eAAS,CAAC;EAAAC,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAA,IAAAC,gBAAA,CAAAC,OAAA,iCA0BfC,CAAC,IAAK;MAC7B,IAAIA,CAAC,CAACC,GAAG,KAAK,QAAQ,EAAE;MAExBD,CAAC,CAACE,eAAe,CAAC,CAAC;IACrB,CAAC;IAAA,IAAAJ,gBAAA,CAAAC,OAAA,uBAEa,MAAM;MAClBI,qBAAqB,CAAC,MAAM;QAC1B,IAAAC,sBAAQ,EAAC,IAAI,CAACC,OAAO,CAACC,UAAU,CAACC,OAAO,CAAC;MAC3C,CAAC,CAAC;IACJ,CAAC;EAAA;EAEDC,qBAAqBA,CAAA,EAAG;IACtB,MAAM;MACJC,KAAK;MACLC,IAAI;MACJC,WAAW;MACXC,MAAM;MACNC,QAAQ;MACRC,iBAAiB;MACjBR,UAAU;MACV,cAAc,EAAES,WAAW;MAC3B,GAAGC;IACL,CAAC,GAAG,IAAI,CAACX,OAAO;IAEhB,MAAM,CAACY,YAAY,CAAC,GAAG,IAAAC,mBAAa,EAACF,KAAK,EAAEF,iBAAiB,CAAC;IAE9D,OAAO;MACLJ,IAAI;MACJC,WAAW;MACXF,KAAK;MACLU,QAAQ,EAAE,CAACV,KAAK;MAChBG,MAAM;MACNC,QAAQ;MACRP,UAAU;MACV,GAAGW;IACL,CAAC;EACH;EAEAG,mBAAmBA,CAAA,EAAG;IACpB,MAAM;MAAEX,KAAK;MAAEY,OAAO;MAAEX,IAAI;MAAEG,QAAQ;MAAES;IAAY,CAAC,GAAG,IAAI,CAACjB,OAAO;IAEpE,OAAO;MACLK,IAAI;MACJD,KAAK;MACLc,OAAO,EAAE,IAAAC,kCAAoB,EAACH,OAAO,EAAE,IAAI,CAACI,WAAW,EAAE,IAAI,CAACC,qBAAqB,CAAC;MACpFC,SAAS,EAAE,IAAI,CAACD,qBAAqB;MACrCb,QAAQ;MACRS;IACF,CAAC;EACH;EAEAM,eAAeA,CAAA,EAAG;IAChB,MAAM;MAAEN,WAAW;MAAEZ;IAAK,CAAC,GAAG,IAAI,CAACL,OAAO;IAE1C,OAAO;MACLiB,WAAW;MACXZ;IACF,CAAC;EACH;EAEAmB,MAAMA,CAAA,EAAG;IAAA,IAAAC,IAAA,QAAAzB,OAAA;MAAA0B,KAAA;IACP,MAAMC,QAAQ,GAaFC,mBAAG;IAZf,MAAM;MAAEC,QAAQ;MAAEC,MAAM;MAAEb,WAAW;MAAEb,KAAK;MAAE2B;IAAmB,CAAC,GAAG,IAAI,CAAC/B,OAAO;IAEjF,MAAMgC,YAAY,GAChBD,kBAAkB,IAClB,IAAAE,4BAAa,EACXJ,QAAQ,EACR,CAACK,aAAa,CAACC,aAAa,CAACC,WAAW,EAAEF,aAAa,CAACG,WAAW,CAACD,WAAW,CAAC,EAChF,IACF,CAAC;IAEH,OAAAV,KAAA,GAAO,IAAAzC,aAAO,EAAC6C,MAAM,CAAC,eACpBjD,MAAA,CAAAa,OAAA,CAAA4C,aAAA,CAACX,QAAQ,EAAAD,KAAA,CAAAa,EAAA;MAAA,OAAA3E,KAAA,CAAA4E,WAAA;QAAA,cAEKvB,WAAW,CAAC,QAAQ,CAAC;QAAA,kBACjB,CAAC,IAAI,CAAC;QAAA,YACZwB,SAAS;QAAA,qBACAA,SAAS;QAAA,iBACbA,SAAS;QAAA,qBACLA,SAAS;QAAA,qBACTA,SAAS;QAAA,qBACTA,SAAS;QAAA,6BACDA,SAAS;QAAA,kBACpBA,SAAS;QAAA,uBACJA;MAAS,GAAAhB,IAAA;IAAA,iBAE9B5C,MAAA,CAAAa,OAAA,CAAA4C,aAAA,CAACxE,eAAA,CAAA4E,gBAAgB,EAAAhB,KAAA,CAAAa,EAAA,0BACdP,YAAY,gBAEPnD,MAAA,CAAAa,OAAA,CAAA4C,aAAA,CAACT,QAAQ,EAAAH,KAAA,CAAAa,EAAA,gBAAE,CAAC,gBAGZ1D,MAAA,CAAAa,OAAA,CAAA4C,aAAA,CAAAzD,MAAA,CAAAa,OAAA,CAAAiD,QAAA,qBACE9D,MAAA,CAAAa,OAAA,CAAA4C,aAAA,CAACJ,aAAa,CAACC,aAAa,qBAC1BtD,MAAA,CAAAa,OAAA,CAAA4C,aAAA,CAACT,QAAQ,EAAAH,KAAA,CAAAa,EAAA,gBAAE,CACgB,CAAC,EAC7B,CAACnC,KAAK,iBAAIvB,MAAA,CAAAa,OAAA,CAAA4C,aAAA,CAACJ,aAAa,CAACG,WAAW,MAAE,CACvC,CAEQ,CACV,CAAC;EAEf;AACF;AAAC,IAAA5C,gBAAA,CAAAC,OAAA,EAnIKL,iBAAiB,iBACA,eAAe;AAAA,IAAAI,gBAAA,CAAAC,OAAA,EADhCL,iBAAiB,WAENL,KAAK;AAAA,IAAAS,gBAAA,CAAAC,OAAA,EAFhBL,iBAAiB,aAGJ,CACf,IAAAuD,oBAAW,EAACC,8CAAiB,CAAC,EAC9B,IAAAC,kCAAkB,EAAC;EACjBC,QAAQ,EAAE,kCAAkC;EAC5CC,QAAQ,EAAE,KAAK;EACfC,GAAG,EAAEC,MAAM,CAACC,QAAQ;EACpBC,IAAI,EAAE;AACR,CAAC,CAAC,EACF,IAAAC,4BAAmB,EAAC;EAClBC,YAAY,EAAE,CAAC,OAAO,CAAC;EACvBC,UAAU,EAAE,CAAC,OAAO;AACtB,CAAC,CAAC,EACF,IAAAC,iBAAmB,EAAC,CAAC,CACtB;AAAA,IAAA/D,gBAAA,CAAAC,OAAA,EAhBGL,iBAAiB,kBAkBC,OAAO;EAC3BoB,iBAAiB,EAAEtB,uBAAuB;EAC1CsE,IAAI,EAAEZ,8CAAiB;EACvBa,MAAM,EAAE,IAAI;EACZzD,UAAU,eAAE0D,cAAK,CAACC,SAAS,CAAC,CAAC;EAC7BC,IAAI,EAAE;AACR,CAAC,CAAC;AA6GJ,MAAM1B,aAAa,SAAS7C,eAAS,CAAC;EAIpCkC,MAAMA,CAAA,EAAG;IAAA,IAAAsC,KAAA,QAAA9D,OAAA;MAAA+D,KAAA;IACP,MAAMC,cAAc,GAKRC,oBAAW;IAJvB,MAAM;MAAEpC,QAAQ;MAAEC,MAAM;MAAE1B,KAAK;MAAEH;IAAW,CAAC,GAAG,IAAI,CAACD,OAAO;IAE5D,OAAA+D,KAAA,GAAO,IAAA9E,aAAO,EAAC6C,MAAM,CAAC,eACpBjD,MAAA,CAAAa,OAAA,CAAA4C,aAAA,CAAC0B,cAAc,EAAAD,KAAA,CAAAxB,EAAA;MAAA,OAAA3E,KAAA,CAAA4E,WAAA;QAAA,YAEJ,UAAU;QAAA,KACjB,MAAM;QAAA,SACDpC,KAAK;QAAA,YACF,CAACA,KAAK;QAAA,OACXH,UAAU;QAAA;MAAA,GAAA6D,KAAA;IAAA,IAGd,IAAAI,0BAAiB,EAChBrC,QAAQ,EACRK,aAAa,CAACiC,IAAI,EAClB,CAACjC,aAAa,CAACkC,KAAK,EAAElC,aAAa,CAACmC,OAAO,CAAC,EAC5CjE,KACF,CAAC,EACAA,KAAK,iBAAIvB,MAAA,CAAAa,OAAA,CAAA4C,aAAA,CAACJ,aAAa,CAACkC,KAAK;MAACE,GAAG,EAAEC;IAAY,CAAE,CACpC,CAAC;EAErB;AACF;AAAC,IAAA9E,gBAAA,CAAAC,OAAA,EA5BKyC,aAAa,iBACI,eAAe;AAAA,IAAA1C,gBAAA,CAAAC,OAAA,EADhCyC,aAAa,WAEFnD,KAAK;AA4BtB,MAAMqD,WAAW,SAAS/C,eAAS,CAAC;EAAAC,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAA,IAAAC,gBAAA,CAAAC,OAAA,mCAIrBiE,cAAK,CAACC,SAAS,CAAC,CAAC;EAAA;EAE9BpC,MAAMA,CAAA,EAAG;IAAA,IAAAgD,KAAA,QAAAxE,OAAA;MAAAyE,KAAA;IACP,MAAMT,cAAc,GAiBNC,oBAAW;IAhBzB,MAAM;MACJnC,MAAM;MACN1B,KAAK;MACLC,IAAI;MACJG,QAAQ;MACRS,WAAW;MACX,YAAY,EAAEyD,SAAS;MACvBC;IACF,CAAC,GAAG,IAAI,CAAC3E,OAAO;IAEhB,IAAII,KAAK,EAAE,OAAO,IAAI;IAEtB,OAAAqE,KAAA,GAAO,IAAAxF,aAAO,EAAC6C,MAAM,CAAC,eACpBjD,MAAA,CAAAa,OAAA,CAAA4C,aAAA,CAAAzD,MAAA,CAAAa,OAAA,CAAAiD,QAAA,qBACE9D,MAAA,CAAAa,OAAA,CAAA4C,aAAA,CAAC0B,cAAc,EAAAS,KAAA,CAAAlC,EAAA;MAAA,OAAA3E,KAAA,CAAA4E,WAAA;QAAA,OACR,IAAI,CAACvC,UAAU;QAAA,QAEdI,IAAI;QAAA,SACHD,KAAK;QAAA;QAAA,YAEFI,QAAQ;QAAA,cACNmE,KAAK,IAAID,SAAS,IAAIzD,WAAW,CAAC,OAAO,CAAC;QAAA,kBACtC,CAAC,OAAO;MAAC,GAAAuD,KAAA;IAAA,iBAEzB3F,MAAA,CAAAa,OAAA,CAAA4C,aAAA,CAACJ,aAAa,CAACkC,KAAK;MAACE,GAAG,EAAEM;IAAM,CAAE,CACpB,CAAC,eAEjB/F,MAAA,CAAAa,OAAA,CAAA4C,aAAA,CAACxE,eAAA,CAAA+G,IAAI,EAAAJ,KAAA,CAAAlC,EAAA;MAAA,cAAa,IAAI,CAACtC;IAAU,IAAG0E,KAAK,IAAID,SAAS,IAAIzD,WAAW,CAAC,OAAO,CAAQ,CACrF,CAAC;EAEP;AACF;AAAC,IAAAxB,gBAAA,CAAAC,OAAA,EAvCK2C,WAAW,iBACM,aAAa;AAAA,IAAA5C,gBAAA,CAAAC,OAAA,EAD9B2C,WAAW,WAEArD,KAAK;AAuCtB,SAASqF,OAAOA,CAAC;EAAEvC,MAAM;EAAED,QAAQ;EAAEiD,KAAK;EAAE7D;AAAY,CAAC,EAAE;EAAA,IAAA8D,KAAA,GAAAC,YAAA;IAAAC,KAAA;EACzD,MAAMC,QAAQ,GAEMjB,oBAAW,CAACG,KAAK;EADrC,OAAAa,KAAA,GAAO,IAAAhG,aAAO,EAAC6C,MAAM,CAAC,eACpBjD,MAAA,CAAAa,OAAA,CAAA4C,aAAA,CAAC4C,QAAQ,EAAAD,KAAA,CAAA1C,EAAA;IAAA,OAAA3E,KAAA,CAAA4E,WAAA;MAAA,OAAiC2C,gBAAc;MAAA,SAAQ;IAAM,GAAAJ,KAAA;EAAA,IACnED,KAAK,KAAKrC,SAAS,gBAEd5D,MAAA,CAAAa,OAAA,CAAA4C,aAAA,CAAAzD,MAAA,CAAAa,OAAA,CAAAiD,QAAA,QACGmC,KAAK,eACNjG,MAAA,CAAAa,OAAA,CAAA4C,aAAA,CAACxE,eAAA,CAAAsH,gBAAgB,EAAAH,KAAA,CAAA1C,EAAA,0BACdtB,WAAW,CAAC,uDAAuD,CACpD,CAClB,CAAC,gBAGHpC,MAAA,CAAAa,OAAA,CAAA4C,aAAA,CAACT,QAAQ,EAAAoD,KAAA,CAAA1C,EAAA,gBAAE,CAET,CAAC;AAEf;AAEA,MAAML,aAAa,GAAG,IAAAmD,qBAAe,EACnChG,iBAAiB,EACjB;EACE8E,IAAI,EAAEF,oBAAW,CAACE,IAAI;EACtBC,KAAK,EAAEH,oBAAW,CAACG,KAAK;EACxBC,OAAO;EACPlC,aAAa;EACbE;AACF,CAAC,EACD;EACEiD,MAAM,EAAErB;AACV,CACF,CAAC;AAAC,IAAAsB,QAAA,GAAAC,OAAA,CAAA9F,OAAA,GAEawC,aAAa","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"FilterTrigger.js","names":["_core","require","_baseComponents","_addonTextChildren","_interopRequireDefault","_assignProps5","_animatedSizeEnhance","_i18nEnhance","_findComponent","_inputProps","_interopRequireWildcard","_uniqueID","_useFocusLock","_useCssVariable","_counter","_m","_m2","_react","_BaseTrigger","_intergalacticDynamicLocales","style","sstyled","insert","filterTriggerInputProps","inputProps","RootFilterTrigger","Component","constructor","args","_defineProperty2","default","e","key","stopPropagation","requestAnimationFrame","setFocus","asProps","triggerRef","current","getTriggerButtonProps","empty","size","placeholder","active","disabled","includeInputProps","_dataUiName","other","controlProps","getInputProps","selected","getClearButtonProps","onClear","getI18nText","onClick","callAllEventHandlers","handleClear","handleStopPropagation","onKeyDown","getCounterProps","render","_ref","_ref5","SWrapper","Box","Children","styles","forcedAdvancedMode","advancedMode","isAdvanceMode","FilterTrigger","TriggerButton","displayName","ClearButton","createElement","cn","assignProps","undefined","NeighborLocation","Fragment","i18nEnhance","localizedMessages","cssVariableEnhance","variable","fallback","map","Number","parseInt","prop","animatedSizeEnhance","animateProps","onChangeOf","uniqueIDEnhancement","i18n","locale","React","createRef","role","_ref2","_ref6","SFilterTrigger","BaseTrigger","addonTextChildren","Text","Addon","Counter","tag","ChevronDown","_ref3","_ref7","ariaLabel","title","Close","Hint","count","_ref4","arguments[0]","_ref8","SCounter","SemcoreCounter","ScreenReaderOnly","createComponent","parent","_default","exports"],"sources":["../../src/FilterTrigger.jsx"],"sourcesContent":["import { NeighborLocation, Box, ScreenReaderOnly, Hint } from '@semcore/base-components';\nimport { createComponent, Component, Root, sstyled } from '@semcore/core';\nimport addonTextChildren from '@semcore/core/lib/utils/addonTextChildren';\nimport { callAllEventHandlers } from '@semcore/core/lib/utils/assignProps';\nimport animatedSizeEnhance from '@semcore/core/lib/utils/enhances/animatedSizeEnhance';\nimport i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';\nimport { isAdvanceMode } from '@semcore/core/lib/utils/findComponent';\nimport getInputProps, { inputProps } from '@semcore/core/lib/utils/inputProps';\nimport uniqueIDEnhancement from '@semcore/core/lib/utils/uniqueID';\nimport { setFocus } from '@semcore/core/lib/utils/use/useFocusLock';\nimport { cssVariableEnhance } from '@semcore/core/lib/utils/useCssVariable';\nimport { default as SemcoreCounter } from '@semcore/counter';\nimport ChevronDown from '@semcore/icon/ChevronDown/m';\nimport Close from '@semcore/icon/Close/m';\nimport React from 'react';\n\nimport BaseTrigger from './BaseTrigger';\nimport style from './style/filter-trigger.shadow.css';\nimport { localizedMessages } from './translations/__intergalactic-dynamic-locales';\n\nconst filterTriggerInputProps = [\n ...inputProps,\n 'aria-controls',\n 'aria-haspopup',\n 'aria-expanded',\n 'aria-disabled',\n 'aria-activedescendant',\n 'aria-label',\n 'aria-labelledby',\n 'role',\n];\n\nclass RootFilterTrigger extends Component {\n static displayName = 'FilterTrigger';\n static style = style;\n static enhance = [\n i18nEnhance(localizedMessages),\n cssVariableEnhance({\n variable: '--intergalactic-duration-control',\n fallback: '200',\n map: Number.parseInt,\n prop: 'duration',\n }),\n animatedSizeEnhance({\n animateProps: ['width'],\n onChangeOf: ['value'],\n }),\n uniqueIDEnhancement(),\n ];\n\n static defaultProps = () => ({\n includeInputProps: filterTriggerInputProps,\n i18n: localizedMessages,\n locale: 'en',\n triggerRef: React.createRef(),\n role: 'group',\n });\n\n handleStopPropagation = (e) => {\n if (e.key === 'Escape') return;\n\n e.stopPropagation();\n };\n\n handleClear = () => {\n requestAnimationFrame(() => {\n setFocus(this.asProps.triggerRef.current);\n });\n };\n\n getTriggerButtonProps() {\n const {\n empty,\n size,\n placeholder,\n active,\n disabled,\n includeInputProps,\n triggerRef,\n 'data-ui-name': _dataUiName,\n ...other\n } = this.asProps;\n\n const [controlProps] = getInputProps(other, includeInputProps);\n\n return {\n size,\n placeholder,\n empty,\n selected: !empty,\n active,\n disabled,\n triggerRef,\n ...controlProps,\n };\n }\n\n getClearButtonProps() {\n const { empty, onClear, size, disabled, getI18nText } = this.asProps;\n\n return {\n size,\n empty,\n onClick: callAllEventHandlers(onClear, this.handleClear, this.handleStopPropagation),\n onKeyDown: this.handleStopPropagation,\n disabled,\n getI18nText,\n };\n }\n\n getCounterProps() {\n const { getI18nText, size } = this.asProps;\n\n return {\n getI18nText,\n size,\n };\n }\n\n render() {\n const SWrapper = Root;\n const { Children, styles, getI18nText, empty, forcedAdvancedMode } = this.asProps;\n\n const advancedMode =\n forcedAdvancedMode ||\n isAdvanceMode(\n Children,\n [FilterTrigger.TriggerButton.displayName, FilterTrigger.ClearButton.displayName],\n true,\n );\n\n return sstyled(styles)(\n <SWrapper\n render={Box}\n aria-label={getI18nText('filter')}\n __excludeProps={['id']}\n use:role={undefined}\n use:aria-controls={undefined}\n use:aria-owns={undefined}\n use:aria-haspopup={undefined}\n use:aria-expanded={undefined}\n use:aria-disabled={undefined}\n use:aria-activedescendant={undefined}\n use:aria-label={undefined}\n use:aria-labelledby={undefined}\n >\n <NeighborLocation>\n {advancedMode\n ? (\n <Children />\n )\n : (\n <>\n <FilterTrigger.TriggerButton>\n <Children />\n </FilterTrigger.TriggerButton>\n {!empty && <FilterTrigger.ClearButton />}\n </>\n )}\n </NeighborLocation>\n </SWrapper>,\n );\n }\n}\n\nclass TriggerButton extends Component {\n static displayName = 'TriggerButton';\n static style = style;\n\n render() {\n const SFilterTrigger = Root;\n const { Children, styles, empty, triggerRef } = this.asProps;\n\n return sstyled(styles)(\n <SFilterTrigger\n render={BaseTrigger}\n use:role='combobox'\n w='100%'\n empty={empty}\n selected={!empty}\n ref={triggerRef}\n animationsDisabled\n >\n {addonTextChildren(\n Children,\n FilterTrigger.Text,\n [FilterTrigger.Addon, FilterTrigger.Counter],\n empty,\n )}\n {empty && <FilterTrigger.Addon tag={ChevronDown} />}\n </SFilterTrigger>,\n );\n }\n}\n\nclass ClearButton extends Component {\n static displayName = 'ClearButton';\n static style = style;\n\n triggerRef = React.createRef();\n\n render() {\n const SFilterTrigger = Root;\n const {\n styles,\n empty,\n size,\n disabled,\n getI18nText,\n 'aria-label': ariaLabel,\n title,\n } = this.asProps;\n\n if (empty) return null;\n\n return sstyled(styles)(\n <>\n <SFilterTrigger\n ref={this.triggerRef}\n render={BaseTrigger}\n size={size}\n empty={empty}\n selected\n disabled={disabled}\n aria-label={title ?? ariaLabel ?? getI18nText('clear')}\n __excludeProps={['title']}\n >\n <FilterTrigger.Addon tag={Close} />\n </SFilterTrigger>\n\n <Hint triggerRef={this.triggerRef}>{title ?? ariaLabel ?? getI18nText('clear')}</Hint>\n </>,\n );\n }\n}\n\nfunction Counter({ styles, Children, count, getI18nText }) {\n const SCounter = Root;\n return sstyled(styles)(\n <SCounter render={BaseTrigger.Addon} tag={SemcoreCounter} theme='info'>\n {count !== undefined\n ? (\n <>\n {count}\n <ScreenReaderOnly>\n {getI18nText('BaseTrigger.FilterTrigger.Counter.selected:aria-label')}\n </ScreenReaderOnly>\n </>\n )\n : (\n <Children />\n )}\n </SCounter>,\n );\n}\n\n/**\n * FilterTrigger\n *\n * {@link https://developer.semrush.com/intergalactic/components/base-trigger/base-trigger-api#filtertrigger|API} | {@link https://developer.semrush.com/intergalactic/components/base-trigger/base-trigger-code#filtertrigger|Examples}\n */\nconst FilterTrigger = createComponent(\n RootFilterTrigger,\n {\n Text: BaseTrigger.Text,\n Addon: BaseTrigger.Addon,\n Counter,\n TriggerButton,\n ClearButton,\n },\n {\n parent: BaseTrigger,\n },\n);\n\nexport default FilterTrigger;\n"],"mappings":"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","ignoreList":[]}
|
package/lib/cjs/LinkTrigger.js
CHANGED
|
@@ -18,17 +18,12 @@ class RootLinkTrigger extends _core.Component {
|
|
|
18
18
|
getTextProps(props) {
|
|
19
19
|
const {
|
|
20
20
|
placeholder,
|
|
21
|
-
empty
|
|
22
|
-
Children,
|
|
23
|
-
size
|
|
21
|
+
empty
|
|
24
22
|
} = this.asProps;
|
|
25
23
|
const content = empty ? placeholder : props.children;
|
|
26
|
-
const addons = (0, _findComponent.findAllComponents)(Children, [LinkTrigger.Addon.displayName]);
|
|
27
|
-
const addonWidth = size >= 600 ? 28 : 20;
|
|
28
24
|
return {
|
|
29
25
|
'use:children': content,
|
|
30
|
-
empty
|
|
31
|
-
'w': `calc(100% - ${addonWidth * (addons.length + 1)}px)`
|
|
26
|
+
empty
|
|
32
27
|
};
|
|
33
28
|
}
|
|
34
29
|
render() {
|
|
@@ -50,6 +45,12 @@ class RootLinkTrigger extends _core.Component {
|
|
|
50
45
|
}) : size >= 600 ? /*#__PURE__*/_react.default.createElement(_l.default, null) : /*#__PURE__*/_react.default.createElement(_m.default, null)));
|
|
51
46
|
}
|
|
52
47
|
}
|
|
48
|
+
|
|
49
|
+
/**
|
|
50
|
+
* LinkTrigger
|
|
51
|
+
*
|
|
52
|
+
* {@link https://developer.semrush.com/intergalactic/components/base-trigger/base-trigger-api#linktrigger|API} | {@link https://developer.semrush.com/intergalactic/components/base-trigger/base-trigger-code#linktrigger|Examples}
|
|
53
|
+
*/
|
|
53
54
|
(0, _defineProperty2.default)(RootLinkTrigger, "displayName", 'LinkTrigger');
|
|
54
55
|
const LinkTrigger = (0, _core.createComponent)(RootLinkTrigger, {
|
|
55
56
|
Text: _button.ButtonLink.Text,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LinkTrigger.js","names":["_core","require","_button","_addonTextChildren","_interopRequireDefault","_findComponent","_l","_m","_spin","_react","RootLinkTrigger","Component","getTextProps","props","placeholder","empty","
|
|
1
|
+
{"version":3,"file":"LinkTrigger.js","names":["_core","require","_button","_addonTextChildren","_interopRequireDefault","_findComponent","_l","_m","_spin","_react","RootLinkTrigger","Component","getTextProps","props","placeholder","empty","asProps","content","children","render","_ref","SLinkTrigger","ButtonLink","SLinkAddon","LinkTrigger","Addon","Children","loading","disabled","size","default","createElement","assignProps","addonTextChildren","Text","theme","_defineProperty2","createComponent","parent","_default","exports"],"sources":["../../src/LinkTrigger.jsx"],"sourcesContent":["import { ButtonLink } from '@semcore/button';\nimport { createComponent, Component, Root } from '@semcore/core';\nimport addonTextChildren from '@semcore/core/lib/utils/addonTextChildren';\nimport { findAllComponents } from '@semcore/core/lib/utils/findComponent';\nimport ChevronDownL from '@semcore/icon/ChevronDown/l';\nimport ChevronDownM from '@semcore/icon/ChevronDown/m';\nimport Spin from '@semcore/spin';\nimport React from 'react';\n\nclass RootLinkTrigger extends Component {\n static displayName = 'LinkTrigger';\n\n getTextProps(props) {\n const { placeholder, empty } = this.asProps;\n const content = empty ? placeholder : props.children;\n\n return {\n 'use:children': content,\n empty,\n };\n }\n\n render() {\n const SLinkTrigger = Root;\n const SLinkAddon = LinkTrigger.Addon;\n const { Children, loading, empty, disabled, size } = this.asProps;\n\n return (\n <SLinkTrigger\n render={ButtonLink}\n use:disabled={disabled || loading}\n >\n {addonTextChildren(Children, LinkTrigger.Text, LinkTrigger.Addon, empty)}\n <SLinkAddon>\n {loading\n ? <Spin size={size >= 600 ? 's' : 'xs'} theme='currentColor' />\n : size >= 600 ? <ChevronDownL /> : <ChevronDownM />}\n </SLinkAddon>\n </SLinkTrigger>\n );\n }\n}\n\n/**\n * LinkTrigger\n *\n * {@link https://developer.semrush.com/intergalactic/components/base-trigger/base-trigger-api#linktrigger|API} | {@link https://developer.semrush.com/intergalactic/components/base-trigger/base-trigger-code#linktrigger|Examples}\n */\nconst LinkTrigger = createComponent(RootLinkTrigger, {\n Text: ButtonLink.Text,\n Addon: ButtonLink.Addon,\n}, {\n parent: ButtonLink,\n});\n\nexport default LinkTrigger;\n"],"mappings":";;;;;;;;AACA,IAAAA,KAAA,GAAAC,OAAA;AADA,IAAAC,OAAA,GAAAD,OAAA;AAEA,IAAAE,kBAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,cAAA,GAAAJ,OAAA;AACA,IAAAK,EAAA,GAAAF,sBAAA,CAAAH,OAAA;AACA,IAAAM,EAAA,GAAAH,sBAAA,CAAAH,OAAA;AACA,IAAAO,KAAA,GAAAJ,sBAAA,CAAAH,OAAA;AACA,IAAAQ,MAAA,GAAAL,sBAAA,CAAAH,OAAA;AAEA,MAAMS,eAAe,SAASC,eAAS,CAAC;EAGtCC,YAAYA,CAACC,KAAK,EAAE;IAClB,MAAM;MAAEC,WAAW;MAAEC;IAAM,CAAC,GAAG,IAAI,CAACC,OAAO;IAC3C,MAAMC,OAAO,GAAGF,KAAK,GAAGD,WAAW,GAAGD,KAAK,CAACK,QAAQ;IAEpD,OAAO;MACL,cAAc,EAAED,OAAO;MACvBF;IACF,CAAC;EACH;EAEAI,MAAMA,CAAA,EAAG;IAAA,IAAAC,IAAA,QAAAJ,OAAA;IACP,MAAMK,YAAY,GAMNC,kBAAU;IALtB,MAAMC,UAAU,GAAGC,WAAW,CAACC,KAAK;IACpC,MAAM;MAAEC,QAAQ;MAAEC,OAAO;MAAEZ,KAAK;MAAEa,QAAQ;MAAEC;IAAK,CAAC,GAAG,IAAI,CAACb,OAAO;IAEjE,oBACEP,MAAA,CAAAqB,OAAA,CAAAC,aAAA,CAACV,YAAY,MAAArB,KAAA,CAAAgC,WAAA;MAAA,gBAEGJ,QAAQ,IAAID;IAAO,GAAAP,IAAA,GAEhC,IAAAa,0BAAiB,EAACP,QAAQ,EAAEF,WAAW,CAACU,IAAI,EAAEV,WAAW,CAACC,KAAK,EAAEV,KAAK,CAAC,eACxEN,MAAA,CAAAqB,OAAA,CAAAC,aAAA,CAACR,UAAU,QACRI,OAAO,gBACJlB,MAAA,CAAAqB,OAAA,CAAAC,aAAA,CAACvB,KAAA,CAAAsB,OAAI;MAACD,IAAI,EAAEA,IAAI,IAAI,GAAG,GAAG,GAAG,GAAG,IAAK;MAACM,KAAK,EAAC;IAAc,CAAE,CAAC,GAC7DN,IAAI,IAAI,GAAG,gBAAGpB,MAAA,CAAAqB,OAAA,CAAAC,aAAA,CAACzB,EAAA,CAAAwB,OAAY,MAAE,CAAC,gBAAGrB,MAAA,CAAAqB,OAAA,CAAAC,aAAA,CAACxB,EAAA,CAAAuB,OAAY,MAAE,CAC1C,CACA,CAAC;EAEnB;AACF;;AAEA;AACA;AACA;AACA;AACA;AAJA,IAAAM,gBAAA,CAAAN,OAAA,EAlCMpB,eAAe,iBACE,aAAa;AAsCpC,MAAMc,WAAW,GAAG,IAAAa,qBAAe,EAAC3B,eAAe,EAAE;EACnDwB,IAAI,EAAEZ,kBAAU,CAACY,IAAI;EACrBT,KAAK,EAAEH,kBAAU,CAACG;AACpB,CAAC,EAAE;EACDa,MAAM,EAAEhB;AACV,CAAC,CAAC;AAAC,IAAAiB,QAAA,GAAAC,OAAA,CAAAV,OAAA,GAEYN,WAAW","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 { Box, BoxProps, NeighborItemProps } from '@semcore/base-components';\nimport type { ButtonLinkProps, ButtonLink } from '@semcore/button';\nimport type { Intergalactic } from '@semcore/core';\nimport type { WithAnimatedSizeEnhanceProps } from '@semcore/core/lib/utils/enhances/animatedSizeEnhance';\nimport type {
|
|
1
|
+
{"version":3,"file":"index.d.js","names":[],"sources":["../../src/index.d.ts"],"sourcesContent":["import type { Box, BoxProps, NeighborItemProps } from '@semcore/base-components';\nimport type { ButtonLinkProps, ButtonLink } from '@semcore/button';\nimport type { Intergalactic } from '@semcore/core';\nimport type { WithAnimatedSizeEnhanceProps } from '@semcore/core/lib/utils/enhances/animatedSizeEnhance';\nimport type { NSCounter } from '@semcore/counter';\nimport type { Text } from '@semcore/typography';\nimport type React from 'react';\n\nexport type BaseTriggerProps = BoxProps &\n NeighborItemProps &\n WithAnimatedSizeEnhanceProps & {\n /**\n * Trigger size\n * @default m\n */\n size?: 'm' | 'l';\n /**\n * Trigger state\n */\n state?: 'normal' | 'valid' | 'invalid';\n /**\n * Sets active state to trigger\n */\n active?: boolean;\n /**\n * Responsible for placeholder displaying\n */\n empty?: boolean;\n /**\n * Placeholder text\n */\n placeholder?: React.ReactNode;\n /**\n * Sets disabled state to trigger\n */\n disabled?: boolean;\n };\n\nexport type ButtonTriggerProps = Omit<BaseTriggerProps, 'theme'> & {\n /** Sets the loading state */\n loading?: boolean;\n /**\n * Display the dropdowns chevron icon\n * @default true\n */\n chevron?: boolean;\n};\n\nexport type LinkTriggerProps = ButtonLinkProps & {\n /** Sets the loading state */\n loading?: boolean;\n /** Placeholder text */\n placeholder?: React.ReactNode;\n /** Responsible for placeholder displaying */\n empty?: boolean;\n};\n\nexport type FilterTriggerProps = BaseTriggerProps & {\n /** Click on the filter cleaning cross */\n onClear?: (event: React.SyntheticEvent) => void;\n /** Specifies the locale for i18n support */\n locale?: string;\n /** List of props that will be added to the select inside of filter */\n includeInputProps?: string[];\n /** Normal `ref` prop refers to FilterTrigger wrapper while `triggerRef` refers explicitly to trigger button */\n triggerRef?: React.Ref<HTMLButtonElement>;\n};\n\nexport type FilterTriggerCounterProps = {\n /** Count for render */\n count?: number;\n};\n\ndeclare const BaseTrigger: Intergalactic.Component<'div', BaseTriggerProps> & {\n Text: typeof Text;\n Addon: typeof Box;\n};\n\ndeclare const ButtonTrigger: Intergalactic.Component<'div', ButtonTriggerProps> & {\n Text: typeof BaseTrigger.Text;\n Addon: typeof BaseTrigger.Addon;\n};\n\ndeclare const LinkTrigger: Intergalactic.Component<'div', LinkTriggerProps> & {\n Text: typeof ButtonLink.Text;\n Addon: typeof ButtonLink.Addon;\n};\n\ndeclare const FilterTrigger: Intergalactic.Component<'div', FilterTriggerProps> & {\n Text: typeof BaseTrigger.Text;\n Addon: typeof BaseTrigger.Addon;\n Counter: Intergalactic.Component<'div', NSCounter.Props & FilterTriggerCounterProps>;\n TriggerButton: typeof BaseTrigger;\n ClearButton: typeof BaseTrigger;\n};\n\n/**\n * @deprecated. Use one this: ButtonTrigger, FilterTrigger, LinkTrigger.\n */\nexport default BaseTrigger;\nexport { ButtonTrigger, LinkTrigger, FilterTrigger };\n"],"mappings":"","ignoreList":[]}
|
package/lib/es6/BaseTrigger.js
CHANGED
|
@@ -11,25 +11,25 @@ import { cssVariableEnhance } from '@semcore/core/lib/utils/useCssVariable';
|
|
|
11
11
|
import { Text as TextKit } from '@semcore/typography';
|
|
12
12
|
import React from 'react';
|
|
13
13
|
/*!__reshadow-styles__:"./style/base-trigger.shadow.css"*/
|
|
14
|
-
const style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".
|
|
14
|
+
const style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".___SBaseTrigger_19nw9_gg_{display:inline-block;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,#fff);font-weight:var(--intergalactic-regular,400);border:1px solid var(--intergalactic-border-primary,#000c0829);color:var(--intergalactic-text-primary,#010500e5)}@supports (color:color(display-p3 0 0 0%)){.___SBaseTrigger_19nw9_gg_{border:1px solid var(--intergalactic-border-primary,#000c0829)}@media (color-gamut:p3){.___SBaseTrigger_19nw9_gg_{border:1px solid var(--intergalactic-border-primary,color(display-p3 .00798 .04498 .03219/.161))}}}.___SBaseTrigger_19nw9_gg_::-moz-focus-inner{border:none;padding:0}.___SBaseTrigger_19nw9_gg_:active{-webkit-text-decoration:none;text-decoration:none}@media (hover:hover){.___SBaseTrigger_19nw9_gg_:hover{-webkit-text-decoration:none;text-decoration:none}}.___SBaseTrigger_19nw9_gg_:focus-visible{border:1px solid var(--intergalactic-border-info-active,#8796ef)}@media (hover:hover){.___SBaseTrigger_19nw9_gg_:hover{background-color:var(--intergalactic-bg-primary-neutral-hover,#f8f9f8)}}.___SBaseTrigger_19nw9_gg_.__active_19nw9_gg_,.___SBaseTrigger_19nw9_gg_:active{border-color:var(--intergalactic-border-info-active,#8796ef);background-color:var(--intergalactic-bg-primary-neutral,#fff)}.___SBaseTrigger_19nw9_gg_.__disabled_19nw9_gg_{opacity:var(--intergalactic-disabled-opacity,.4);cursor:default;pointer-events:none}.___SInner_19nw9_gg_{display:inline-flex;align-items:center;justify-content:center;height:100%;width:100%}.___SText_19nw9_gg_{display:inline;padding:1px 0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;line-height:var(--intergalactic-lh-200,142%);flex-grow:1;text-align:left}.___SAddon_19nw9_gg_{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;pointer-events:none}.___SBaseAddon_19nw9_gg_{width:12px;height:12px}.___SBaseTrigger_19nw9_gg_._size_m_19nw9_gg_{min-width:26px;height:28px;border-radius:var(--intergalactic-control-rounded,6px);padding:0 var(--intergalactic-spacing-2x,8px);font-size:var(--intergalactic-fs-200,14px)}.___SBaseTrigger_19nw9_gg_._size_m_19nw9_gg_ .___SAddon_19nw9_gg_:not(:only-child):first-child{margin-right:var(--intergalactic-spacing-2x,8px)}.___SBaseTrigger_19nw9_gg_._size_m_19nw9_gg_ .___SAddon_19nw9_gg_:not(:only-child):last-child{margin-left:var(--intergalactic-spacing-2x,8px)}.___SBaseTrigger_19nw9_gg_._size_m_19nw9_gg_ .___SAddon_19nw9_gg_:only-child{margin-left:calc(var(--intergalactic-spacing-1x, 4px)*-1);margin-right:calc(var(--intergalactic-spacing-1x, 4px)*-1)}.___SBaseTrigger_19nw9_gg_._size_l_19nw9_gg_{min-width:32px;height:40px;border-radius:var(--intergalactic-control-rounded,6px);padding:0 var(--intergalactic-spacing-3x,12px);font-size:var(--intergalactic-fs-300,16px)}.___SBaseTrigger_19nw9_gg_._size_l_19nw9_gg_ .___SAddon_19nw9_gg_:not(:only-child):first-child{margin-right:var(--intergalactic-spacing-2x,8px)}.___SBaseTrigger_19nw9_gg_._size_l_19nw9_gg_ .___SAddon_19nw9_gg_:not(:only-child):last-child{margin-left:var(--intergalactic-spacing-2x,8px)}.___SBaseTrigger_19nw9_gg_._size_l_19nw9_gg_ .___SAddon_19nw9_gg_:only-child{margin-left:calc(var(--intergalactic-spacing-1x, 4px)*-1);margin-right:calc(var(--intergalactic-spacing-1x, 4px)*-1)}.___SBaseTrigger_19nw9_gg_._neighborLocation_right_19nw9_gg_{border-top-right-radius:0;border-bottom-right-radius:0}.___SBaseTrigger_19nw9_gg_._neighborLocation_both_19nw9_gg_{border-radius:0;margin-left:-1px}.___SBaseTrigger_19nw9_gg_._neighborLocation_left_19nw9_gg_{border-top-left-radius:0;border-bottom-left-radius:0;margin-left:-1px}.___SBaseTrigger_19nw9_gg_._neighborLocation_left_19nw9_gg_.__disabled_19nw9_gg_{border-left:none;margin-left:0}.___SText_19nw9_gg_.__display-placeholder_19nw9_gg_{color:var(--intergalactic-text-placeholder,#00050275)}.___SBaseTrigger_19nw9_gg_._state_valid_19nw9_gg_{border-color:var(--intergalactic-border-success-active,#00b991)}@supports (color:color(display-p3 0 0 0%)){.___SBaseTrigger_19nw9_gg_._state_valid_19nw9_gg_{border-color:var(--intergalactic-border-success-active,#00b991)}@media (color-gamut:p3){.___SBaseTrigger_19nw9_gg_._state_valid_19nw9_gg_{border-color:var(--intergalactic-border-success-active,color(display-p3 .21847 .73243 .56937))}}}.___SBaseTrigger_19nw9_gg_._state_invalid_19nw9_gg_{border-color:var(--intergalactic-border-critical-active,#ff6364)}@supports (color:color(display-p3 0 0 0%)){.___SBaseTrigger_19nw9_gg_._state_invalid_19nw9_gg_{border-color:var(--intergalactic-border-critical-active,#ff6364)}@media (color-gamut:p3){.___SBaseTrigger_19nw9_gg_._state_invalid_19nw9_gg_{border-color:var(--intergalactic-border-critical-active,color(display-p3 .95478 .398 .38923))}}}.___SBaseTrigger_19nw9_gg_._state_invalid_19nw9_gg_:focus-visible{outline-color:var(--intergalactic-keyboard-focus-invalid-outline,#ff0207a6)}.___SInvalidPattern_19nw9_gg_._size_m_19nw9_gg_{margin-left:calc(var(--intergalactic-spacing-2x, 8px)*-1)}.___SInvalidPattern_19nw9_gg_._size_l_19nw9_gg_{margin-left:calc(var(--intergalactic-spacing-3x, 12px)*-1)}", /*__inner_css_end__*/"19nw9_gg_"),
|
|
15
15
|
/*__reshadow_css_end__*/
|
|
16
16
|
{
|
|
17
|
-
"__SBaseTrigger": "
|
|
18
|
-
"_disabled": "
|
|
19
|
-
"__SInner": "
|
|
20
|
-
"__SText": "
|
|
21
|
-
"__SAddon": "
|
|
22
|
-
"__SBaseAddon": "
|
|
23
|
-
"_neighborLocation_right": "
|
|
24
|
-
"_neighborLocation_both": "
|
|
25
|
-
"_display-placeholder": "__display-
|
|
26
|
-
"_state_valid": "
|
|
27
|
-
"__SInvalidPattern": "
|
|
28
|
-
"_size_m": "
|
|
29
|
-
"_size_l": "
|
|
30
|
-
"_active": "
|
|
31
|
-
"_neighborLocation_left": "
|
|
32
|
-
"_state_invalid": "
|
|
17
|
+
"__SBaseTrigger": "___SBaseTrigger_19nw9_gg_",
|
|
18
|
+
"_disabled": "__disabled_19nw9_gg_",
|
|
19
|
+
"__SInner": "___SInner_19nw9_gg_",
|
|
20
|
+
"__SText": "___SText_19nw9_gg_",
|
|
21
|
+
"__SAddon": "___SAddon_19nw9_gg_",
|
|
22
|
+
"__SBaseAddon": "___SBaseAddon_19nw9_gg_",
|
|
23
|
+
"_neighborLocation_right": "_neighborLocation_right_19nw9_gg_",
|
|
24
|
+
"_neighborLocation_both": "_neighborLocation_both_19nw9_gg_",
|
|
25
|
+
"_display-placeholder": "__display-placeholder_19nw9_gg_",
|
|
26
|
+
"_state_valid": "_state_valid_19nw9_gg_",
|
|
27
|
+
"__SInvalidPattern": "___SInvalidPattern_19nw9_gg_",
|
|
28
|
+
"_size_m": "_size_m_19nw9_gg_",
|
|
29
|
+
"_size_l": "_size_l_19nw9_gg_",
|
|
30
|
+
"_active": "__active_19nw9_gg_",
|
|
31
|
+
"_neighborLocation_left": "_neighborLocation_left_19nw9_gg_",
|
|
32
|
+
"_state_invalid": "_state_invalid_19nw9_gg_"
|
|
33
33
|
});
|
|
34
34
|
class RootBaseTrigger extends Component {
|
|
35
35
|
constructor(...args) {
|
|
@@ -134,6 +134,12 @@ function Addon(props) {
|
|
|
134
134
|
..._assignProps3({}, _ref3)
|
|
135
135
|
}));
|
|
136
136
|
}
|
|
137
|
+
|
|
138
|
+
/**
|
|
139
|
+
* BaseTrigger
|
|
140
|
+
*
|
|
141
|
+
* {@link https://developer.semrush.com/intergalactic/components/base-trigger/base-trigger-api/|API} | {@link https://developer.semrush.com/intergalactic/components/base-trigger/base-trigger-code/|Examples}
|
|
142
|
+
*/
|
|
137
143
|
const BaseTrigger = createComponent(RootBaseTrigger, {
|
|
138
144
|
Text,
|
|
139
145
|
Addon
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseTrigger.js","names":["NeighborLocation","Box","InvalidStateBox","createComponent","Component","Root","sstyled","addonTextChildren","animatedSizeEnhance","cssVariableEnhance","Text","TextKit","React","style","_sstyled","insert","RootBaseTrigger","constructor","args","_defineProperty","createRef","getTextProps","placeholder","empty","asProps","triggerRef","render","_ref","SBaseTrigger","SInner","SInvalidPattern","Children","styles","theme","neighborLocation","state","size","createElement","Detect","_ref4","cn","_assignProps","BaseTrigger","Addon","variable","fallback","map","Number","parseInt","prop","animateProps","onChangeOf","props","_ref2","arguments[0]","_ref5","SText","textRef","useRef","children","ellipsis","content","Fragment","_assignProps2","_ref3","_ref6","SAddon","_assignProps3"],"sources":["../../src/BaseTrigger.jsx"],"sourcesContent":["import { NeighborLocation, Box, InvalidStateBox } from '@semcore/base-components';\nimport { createComponent, Component, Root, sstyled } from '@semcore/core';\nimport addonTextChildren from '@semcore/core/lib/utils/addonTextChildren';\nimport animatedSizeEnhance from '@semcore/core/lib/utils/enhances/animatedSizeEnhance';\nimport { cssVariableEnhance } from '@semcore/core/lib/utils/useCssVariable';\nimport { Text as TextKit } from '@semcore/typography';\nimport React from 'react';\n\nimport style from './style/base-trigger.shadow.css';\n\nclass RootBaseTrigger extends Component {\n static displayName = 'BaseTrigger';\n static enhance = [\n cssVariableEnhance({\n variable: '--intergalactic-duration-control',\n fallback: '200',\n map: Number.parseInt,\n prop: 'duration',\n }),\n animatedSizeEnhance({\n animateProps: ['width'],\n onChangeOf: ['value'],\n }),\n ];\n\n static style = style;\n static defaultProps = {\n size: 'm',\n empty: false,\n };\n\n triggerRef = React.createRef();\n\n getTextProps() {\n const { placeholder, empty } = this.asProps;\n return {\n placeholder,\n empty,\n triggerRef: this.triggerRef,\n };\n }\n\n render() {\n const SBaseTrigger = Root;\n const SInner = 'span';\n const SInvalidPattern = InvalidStateBox;\n const { Children, styles, theme, neighborLocation, empty, state, size } = this.asProps;\n\n // TODO: add aria\n return (\n <NeighborLocation.Detect neighborLocation={neighborLocation}>\n {(neighborLocation) =>\n sstyled(styles)(\n <SBaseTrigger\n render={Box}\n tag='button'\n type='button'\n tabIndex={0}\n neighborLocation={neighborLocation}\n state={theme}\n ref={this.triggerRef}\n >\n {state === 'invalid' && <SInvalidPattern size={size} />}\n <SInner data-ui-name={`${this.asProps['data-ui-name']}.InnerTriggerWrapper`}>\n {addonTextChildren(Children, BaseTrigger.Text, BaseTrigger.Addon, empty)}\n </SInner>\n </SBaseTrigger>,\n )}\n </NeighborLocation.Detect>\n );\n }\n}\n\nfunction Text(props) {\n const SText = Root;\n const textRef = React.useRef();\n const { children, styles, empty, placeholder, triggerRef, ellipsis = false } = props;\n const content = empty ? placeholder : children;\n\n return sstyled(styles)(\n <>\n <SText\n render={TextKit}\n display-placeholder={empty}\n aria-hidden={empty}\n ref={textRef}\n ellipsis={ellipsis}\n hint:triggerRef={triggerRef}\n >\n {content}\n </SText>\n </>,\n );\n}\n\nfunction Addon(props) {\n const SAddon = Root;\n const { styles } = props;\n return sstyled(styles)(<SAddon render={Box} />);\n}\n\nconst BaseTrigger = createComponent(RootBaseTrigger, {\n Text,\n Addon,\n});\n\nexport default BaseTrigger;\n"],"mappings":"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
|
|
1
|
+
{"version":3,"file":"BaseTrigger.js","names":["NeighborLocation","Box","InvalidStateBox","createComponent","Component","Root","sstyled","addonTextChildren","animatedSizeEnhance","cssVariableEnhance","Text","TextKit","React","style","_sstyled","insert","RootBaseTrigger","constructor","args","_defineProperty","createRef","getTextProps","placeholder","empty","asProps","triggerRef","render","_ref","SBaseTrigger","SInner","SInvalidPattern","Children","styles","theme","neighborLocation","state","size","createElement","Detect","_ref4","cn","_assignProps","BaseTrigger","Addon","variable","fallback","map","Number","parseInt","prop","animateProps","onChangeOf","props","_ref2","arguments[0]","_ref5","SText","textRef","useRef","children","ellipsis","content","Fragment","_assignProps2","_ref3","_ref6","SAddon","_assignProps3"],"sources":["../../src/BaseTrigger.jsx"],"sourcesContent":["import { NeighborLocation, Box, InvalidStateBox } from '@semcore/base-components';\nimport { createComponent, Component, Root, sstyled } from '@semcore/core';\nimport addonTextChildren from '@semcore/core/lib/utils/addonTextChildren';\nimport animatedSizeEnhance from '@semcore/core/lib/utils/enhances/animatedSizeEnhance';\nimport { cssVariableEnhance } from '@semcore/core/lib/utils/useCssVariable';\nimport { Text as TextKit } from '@semcore/typography';\nimport React from 'react';\n\nimport style from './style/base-trigger.shadow.css';\n\nclass RootBaseTrigger extends Component {\n static displayName = 'BaseTrigger';\n static enhance = [\n cssVariableEnhance({\n variable: '--intergalactic-duration-control',\n fallback: '200',\n map: Number.parseInt,\n prop: 'duration',\n }),\n animatedSizeEnhance({\n animateProps: ['width'],\n onChangeOf: ['value'],\n }),\n ];\n\n static style = style;\n static defaultProps = {\n size: 'm',\n empty: false,\n };\n\n triggerRef = React.createRef();\n\n getTextProps() {\n const { placeholder, empty } = this.asProps;\n return {\n placeholder,\n empty,\n triggerRef: this.triggerRef,\n };\n }\n\n render() {\n const SBaseTrigger = Root;\n const SInner = 'span';\n const SInvalidPattern = InvalidStateBox;\n const { Children, styles, theme, neighborLocation, empty, state, size } = this.asProps;\n\n // TODO: add aria\n return (\n <NeighborLocation.Detect neighborLocation={neighborLocation}>\n {(neighborLocation) =>\n sstyled(styles)(\n <SBaseTrigger\n render={Box}\n tag='button'\n type='button'\n tabIndex={0}\n neighborLocation={neighborLocation}\n state={theme}\n ref={this.triggerRef}\n >\n {state === 'invalid' && <SInvalidPattern size={size} />}\n <SInner data-ui-name={`${this.asProps['data-ui-name']}.InnerTriggerWrapper`}>\n {addonTextChildren(Children, BaseTrigger.Text, BaseTrigger.Addon, empty)}\n </SInner>\n </SBaseTrigger>,\n )}\n </NeighborLocation.Detect>\n );\n }\n}\n\nfunction Text(props) {\n const SText = Root;\n const textRef = React.useRef();\n const { children, styles, empty, placeholder, triggerRef, ellipsis = false } = props;\n const content = empty ? placeholder : children;\n\n return sstyled(styles)(\n <>\n <SText\n render={TextKit}\n display-placeholder={empty}\n aria-hidden={empty}\n ref={textRef}\n ellipsis={ellipsis}\n hint:triggerRef={triggerRef}\n >\n {content}\n </SText>\n </>,\n );\n}\n\nfunction Addon(props) {\n const SAddon = Root;\n const { styles } = props;\n return sstyled(styles)(<SAddon render={Box} />);\n}\n\n/**\n * BaseTrigger\n *\n * {@link https://developer.semrush.com/intergalactic/components/base-trigger/base-trigger-api/|API} | {@link https://developer.semrush.com/intergalactic/components/base-trigger/base-trigger-code/|Examples}\n */\nconst BaseTrigger = createComponent(RootBaseTrigger, {\n Text,\n Addon,\n});\n\nexport default BaseTrigger;\n"],"mappings":";;;;;AAAA,SAASA,gBAAgB,EAAEC,GAAG,EAAEC,eAAe,QAAQ,0BAA0B;AACjF,SAASC,eAAe,EAAEC,SAAS,EAAEC,IAAI,EAAEC,OAAO,QAAQ,eAAe;AACzE,OAAOC,iBAAiB,MAAM,2CAA2C;AACzE,OAAOC,mBAAmB,MAAM,sDAAsD;AACtF,SAASC,kBAAkB,QAAQ,wCAAwC;AAC3E,SAASC,IAAI,IAAIC,OAAO,QAAQ,qBAAqB;AACrD,OAAOC,KAAK,MAAM,OAAO;AAAC;AAAA,MAAAC,KAAA,8BAAAC,QAAA,CAAAC,MAAA;AAAA;AAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;AAAA;AAI1B,MAAMC,eAAe,SAASZ,SAAS,CAAC;EAAAa,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA,kCAqBzBP,KAAK,CAACQ,SAAS,CAAC,CAAC;EAAA;EAE9BC,YAAYA,CAAA,EAAG;IACb,MAAM;MAAEC,WAAW;MAAEC;IAAM,CAAC,GAAG,IAAI,CAACC,OAAO;IAC3C,OAAO;MACLF,WAAW;MACXC,KAAK;MACLE,UAAU,EAAE,IAAI,CAACA;IACnB,CAAC;EACH;EAEAC,MAAMA,CAAA,EAAG;IAAA,IAAAC,IAAA,QAAAH,OAAA;IACP,MAAMI,YAAY,GAWA3B,GAAG;IAVrB,MAAM4B,MAAM,GAAG,MAAM;IACrB,MAAMC,eAAe,GAAG5B,eAAe;IACvC,MAAM;MAAE6B,QAAQ;MAAEC,MAAM;MAAEC,KAAK;MAAEC,gBAAgB;MAAEX,KAAK;MAAEY,KAAK;MAAEC;IAAK,CAAC,GAAG,IAAI,CAACZ,OAAO;;IAEtF;IACA,oBACEZ,KAAA,CAAAyB,aAAA,CAACrC,gBAAgB,CAACsC,MAAM;MAACJ,gBAAgB,EAAEA;IAAiB,GACxDA,gBAAgB;MAAA,IAAAK,KAAA;MAAA,OAAAA,KAAA,GAChBjC,OAAO,CAAC0B,MAAM,CAAC,eACbpB,KAAA,CAAAyB,aAAA,CAACT,YAAY,EAAAW,KAAA,CAAAC,EAAA;QAAA,GAAAC,YAAA;UAAA,OAEP,QAAQ;UAAA,QACP,QAAQ;UAAA,YACH,CAAC;UAAA,oBACOP,gBAAgB;UAAA,SAC3BD,KAAK;UAAA,OACP,IAAI,CAACR;QAAU,GAAAE,IAAA;MAAA,IAEnBQ,KAAK,KAAK,SAAS,iBAAIvB,KAAA,CAAAyB,aAAA,CAACP,eAAe,EAAAS,KAAA,CAAAC,EAAA;QAAA,QAAOJ;MAAI,EAAG,CAAC,eACvDxB,KAAA,CAAAyB,aAAA,CAACR,MAAM,EAAAU,KAAA,CAAAC,EAAA;QAAA,gBAAe,GAAG,IAAI,CAAChB,OAAO,CAAC,cAAc,CAAC;MAAsB,IACxEjB,iBAAiB,CAACwB,QAAQ,EAAEW,WAAW,CAAChC,IAAI,EAAEgC,WAAW,CAACC,KAAK,EAAEpB,KAAK,CACjE,CACI,CAAC;IAAA,CAEI,CAAC;EAE9B;AACF;AAACJ,eAAA,CA7DKH,eAAe,iBACE,aAAa;AAAAG,eAAA,CAD9BH,eAAe,aAEF,CACfP,kBAAkB,CAAC;EACjBmC,QAAQ,EAAE,kCAAkC;EAC5CC,QAAQ,EAAE,KAAK;EACfC,GAAG,EAAEC,MAAM,CAACC,QAAQ;EACpBC,IAAI,EAAE;AACR,CAAC,CAAC,EACFzC,mBAAmB,CAAC;EAClB0C,YAAY,EAAE,CAAC,OAAO,CAAC;EACvBC,UAAU,EAAE,CAAC,OAAO;AACtB,CAAC,CAAC,CACH;AAAAhC,eAAA,CAbGH,eAAe,WAeJH,KAAK;AAAAM,eAAA,CAfhBH,eAAe,kBAgBG;EACpBoB,IAAI,EAAE,GAAG;EACTb,KAAK,EAAE;AACT,CAAC;AA4CH,SAASb,IAAIA,CAAC0C,KAAK,EAAE;EAAA,IAAAC,KAAA,GAAAC,YAAA;IAAAC,KAAA;EACnB,MAAMC,KAAK,GAQG7C,OAAO;EAPrB,MAAM8C,OAAO,GAAG7C,KAAK,CAAC8C,MAAM,CAAC,CAAC;EAC9B,MAAM;IAAEC,QAAQ;IAAE3B,MAAM;IAAET,KAAK;IAAED,WAAW;IAAEG,UAAU;IAAEmC,QAAQ,GAAG;EAAM,CAAC,GAAGR,KAAK;EACpF,MAAMS,OAAO,GAAGtC,KAAK,GAAGD,WAAW,GAAGqC,QAAQ;EAE9C,OAAAJ,KAAA,GAAOjD,OAAO,CAAC0B,MAAM,CAAC,eACpBpB,KAAA,CAAAyB,aAAA,CAAAzB,KAAA,CAAAkD,QAAA,qBACElD,KAAA,CAAAyB,aAAA,CAACmB,KAAK,EAAAD,KAAA,CAAAf,EAAA;IAAA,GAAAuB,aAAA;MAAA,uBAEiBxC,KAAK;MAAA,eACbA,KAAK;MAAA,OACbkC,OAAO;MAAA,YACFG,QAAQ;MAAA,mBACDnC;IAAU,GAAA4B,KAAA;EAAA,IAE1BQ,OACI,CACP,CAAC;AAEP;AAEA,SAASlB,KAAKA,CAACS,KAAK,EAAE;EAAA,IAAAY,KAAA,GAAAV,YAAA;IAAAW,KAAA;EACpB,MAAMC,MAAM,GAE2BjE,GAAG;EAD1C,MAAM;IAAE+B;EAAO,CAAC,GAAGoB,KAAK;EACxB,OAAAa,KAAA,GAAO3D,OAAO,CAAC0B,MAAM,CAAC,eAACpB,KAAA,CAAAyB,aAAA,CAAC6B,MAAM,EAAAD,KAAA,CAAAzB,EAAA;IAAA,GAAA2B,aAAA,KAAAH,KAAA;EAAA,EAAe,CAAC;AAChD;;AAEA;AACA;AACA;AACA;AACA;AACA,MAAMtB,WAAW,GAAGvC,eAAe,CAACa,eAAe,EAAE;EACnDN,IAAI;EACJiC;AACF,CAAC,CAAC;AAEF,eAAeD,WAAW","ignoreList":[]}
|
package/lib/es6/ButtonTrigger.js
CHANGED
|
@@ -10,11 +10,11 @@ import Spin from '@semcore/spin';
|
|
|
10
10
|
import React from 'react';
|
|
11
11
|
import BaseTrigger from './BaseTrigger';
|
|
12
12
|
/*!__reshadow-styles__:"./style/button-trigger.shadow.css"*/
|
|
13
|
-
const style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".
|
|
13
|
+
const style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".___SButtonAddon_qly44_gg_{width:12px;height:12px}.___SButtonTriggerSpin_qly44_gg_{fill:var(--intergalactic-icon-primary-neutral,#00040186)}", /*__inner_css_end__*/"qly44_gg_"),
|
|
14
14
|
/*__reshadow_css_end__*/
|
|
15
15
|
{
|
|
16
|
-
"__SButtonAddon": "
|
|
17
|
-
"__SButtonTriggerSpin": "
|
|
16
|
+
"__SButtonAddon": "___SButtonAddon_qly44_gg_",
|
|
17
|
+
"__SButtonTriggerSpin": "___SButtonTriggerSpin_qly44_gg_"
|
|
18
18
|
});
|
|
19
19
|
class RootButtonTrigger extends Component {
|
|
20
20
|
getTextProps() {
|
|
@@ -48,6 +48,12 @@ class RootButtonTrigger extends Component {
|
|
|
48
48
|
})) : /*#__PURE__*/React.createElement(ChevronDown, _ref2.cn("ChevronDown", {}))));
|
|
49
49
|
}
|
|
50
50
|
}
|
|
51
|
+
|
|
52
|
+
/**
|
|
53
|
+
* ButtonTrigger
|
|
54
|
+
*
|
|
55
|
+
* {@link https://developer.semrush.com/intergalactic/components/base-trigger/base-trigger-api#buttontrigger|API} | {@link https://developer.semrush.com/intergalactic/components/base-trigger/base-trigger-code#buttontrigger|Examples}
|
|
56
|
+
*/
|
|
51
57
|
_defineProperty(RootButtonTrigger, "displayName", 'ButtonTrigger');
|
|
52
58
|
_defineProperty(RootButtonTrigger, "style", style);
|
|
53
59
|
_defineProperty(RootButtonTrigger, "enhance", [cssVariableEnhance({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ButtonTrigger.js","names":["createComponent","Component","Root","sstyled","addonTextChildren","animatedSizeEnhance","cssVariableEnhance","ChevronDown","Spin","React","BaseTrigger","style","_sstyled","insert","RootButtonTrigger","getTextProps","tag","getAddonProps","render","_ref","asProps","_ref2","SButtonAddon","ButtonTrigger","Addon","SButtonTriggerSpin","Children","styles","loading","disabled","chevron","empty","createElement","_assignProps","Text","cn","_defineProperty","variable","fallback","map","Number","parseInt","prop","animateProps","onChangeOf","parent"],"sources":["../../src/ButtonTrigger.jsx"],"sourcesContent":["import { createComponent, Component, Root, sstyled } from '@semcore/core';\nimport addonTextChildren from '@semcore/core/lib/utils/addonTextChildren';\nimport animatedSizeEnhance from '@semcore/core/lib/utils/enhances/animatedSizeEnhance';\nimport { cssVariableEnhance } from '@semcore/core/lib/utils/useCssVariable';\nimport ChevronDown from '@semcore/icon/ChevronDown/m';\nimport Spin from '@semcore/spin';\nimport React from 'react';\n\nimport BaseTrigger from './BaseTrigger';\nimport style from './style/button-trigger.shadow.css';\n\nclass RootButtonTrigger extends Component {\n static displayName = 'ButtonTrigger';\n static style = style;\n static enhance = [\n cssVariableEnhance({\n variable: '--intergalactic-duration-control',\n fallback: '200',\n map: Number.parseInt,\n prop: 'duration',\n }),\n animatedSizeEnhance({\n animateProps: ['width'],\n onChangeOf: ['value'],\n }),\n ];\n\n static defaultProps = {\n chevron: true,\n };\n\n getTextProps() {\n return {\n tag: 'span',\n };\n }\n\n getAddonProps() {\n return {\n tag: 'span',\n };\n }\n\n render() {\n const SButtonAddon = ButtonTrigger.Addon;\n const SButtonTriggerSpin = Spin;\n const { Children, styles, loading, disabled, chevron, empty } = this.asProps;\n\n return sstyled(styles)(\n <Root render={BaseTrigger} use:disabled={disabled || loading}>\n {addonTextChildren(Children, ButtonTrigger.Text, ButtonTrigger.Addon, empty)}\n {(chevron || loading) && (\n <SButtonAddon>\n {loading ? <SButtonTriggerSpin size='xs' theme={false} /> : <ChevronDown />}\n </SButtonAddon>\n )}\n </Root>,\n );\n }\n}\n\nconst ButtonTrigger = createComponent(\n RootButtonTrigger,\n {\n Text: BaseTrigger.Text,\n Addon: BaseTrigger.Addon,\n },\n {\n parent: BaseTrigger,\n },\n);\n\nexport default ButtonTrigger;\n"],"mappings":";;;AAAA,SAASA,eAAe,EAAEC,SAAS,EAAEC,IAAI,EAAEC,OAAO,QAAQ,eAAe;AACzE,OAAOC,iBAAiB,MAAM,2CAA2C;AACzE,OAAOC,mBAAmB,MAAM,sDAAsD;AACtF,SAASC,kBAAkB,QAAQ,wCAAwC;AAC3E,OAAOC,WAAW,MAAM,6BAA6B;AACrD,OAAOC,IAAI,MAAM,eAAe;AAChC,OAAOC,KAAK,MAAM,OAAO;AAEzB,OAAOC,WAAW,MAAM,eAAe;AAAC;AAAA,MAAAC,KAAA,8BAAAC,QAAA,CAAAC,MAAA;AAAA;AAAA;EAAA;EAAA;AAAA;AAGxC,MAAMC,iBAAiB,SAASb,SAAS,CAAC;EAoBxCc,YAAYA,CAAA,EAAG;IACb,OAAO;MACLC,GAAG,EAAE;IACP,CAAC;EACH;EAEAC,aAAaA,CAAA,EAAG;IACd,OAAO;MACLD,GAAG,EAAE;IACP,CAAC;EACH;EAEAE,MAAMA,CAAA,EAAG;IAAA,IAAAC,IAAA,QAAAC,OAAA;MAAAC,KAAA;IACP,MAAMC,YAAY,GAAGC,aAAa,CAACC,KAAK;IACxC,MAAMC,kBAAkB,GAAGjB,IAAI;IAC/B,MAAM;MAAEkB,QAAQ;MAAEC,MAAM;MAAEC,OAAO;MAAEC,QAAQ;MAAEC,OAAO;MAAEC;IAAM,CAAC,GAAG,IAAI,CAACX,OAAO;IAE5E,OAAAC,KAAA,GAAOlB,OAAO,CAACwB,MAAM,CAAC,eACpBlB,KAAA,CAAAuB,aAAA,CAActB,WAAW,EAAAuB,YAAA;MAAA,gBAAgBJ,QAAQ,IAAID;IAAO,GAAAT,IAAA,GACzDf,iBAAiB,CAACsB,QAAQ,EAAEH,aAAa,CAACW,IAAI,EAAEX,aAAa,CAACC,KAAK,EAAEO,KAAK,CAAC,EAC3E,CAACD,OAAO,IAAIF,OAAO,kBAClBnB,KAAA,CAAAuB,aAAA,CAACV,YAAY,EAAAD,KAAA,CAAAc,EAAA,sBACVP,OAAO,gBAAGnB,KAAA,CAAAuB,aAAA,CAACP,kBAAkB,EAAAJ,KAAA,CAAAc,EAAA;MAAA,QAAM,IAAI;MAAA,SAAQ;IAAK,EAAG,CAAC,gBAAG1B,KAAA,CAAAuB,aAAA,CAACzB,WAAW,EAAAc,KAAA,CAAAc,EAAA,mBAAE,CAC9D,CAEZ,CAAC;EAEX;AACF;
|
|
1
|
+
{"version":3,"file":"ButtonTrigger.js","names":["createComponent","Component","Root","sstyled","addonTextChildren","animatedSizeEnhance","cssVariableEnhance","ChevronDown","Spin","React","BaseTrigger","style","_sstyled","insert","RootButtonTrigger","getTextProps","tag","getAddonProps","render","_ref","asProps","_ref2","SButtonAddon","ButtonTrigger","Addon","SButtonTriggerSpin","Children","styles","loading","disabled","chevron","empty","createElement","_assignProps","Text","cn","_defineProperty","variable","fallback","map","Number","parseInt","prop","animateProps","onChangeOf","parent"],"sources":["../../src/ButtonTrigger.jsx"],"sourcesContent":["import { createComponent, Component, Root, sstyled } from '@semcore/core';\nimport addonTextChildren from '@semcore/core/lib/utils/addonTextChildren';\nimport animatedSizeEnhance from '@semcore/core/lib/utils/enhances/animatedSizeEnhance';\nimport { cssVariableEnhance } from '@semcore/core/lib/utils/useCssVariable';\nimport ChevronDown from '@semcore/icon/ChevronDown/m';\nimport Spin from '@semcore/spin';\nimport React from 'react';\n\nimport BaseTrigger from './BaseTrigger';\nimport style from './style/button-trigger.shadow.css';\n\nclass RootButtonTrigger extends Component {\n static displayName = 'ButtonTrigger';\n static style = style;\n static enhance = [\n cssVariableEnhance({\n variable: '--intergalactic-duration-control',\n fallback: '200',\n map: Number.parseInt,\n prop: 'duration',\n }),\n animatedSizeEnhance({\n animateProps: ['width'],\n onChangeOf: ['value'],\n }),\n ];\n\n static defaultProps = {\n chevron: true,\n };\n\n getTextProps() {\n return {\n tag: 'span',\n };\n }\n\n getAddonProps() {\n return {\n tag: 'span',\n };\n }\n\n render() {\n const SButtonAddon = ButtonTrigger.Addon;\n const SButtonTriggerSpin = Spin;\n const { Children, styles, loading, disabled, chevron, empty } = this.asProps;\n\n return sstyled(styles)(\n <Root render={BaseTrigger} use:disabled={disabled || loading}>\n {addonTextChildren(Children, ButtonTrigger.Text, ButtonTrigger.Addon, empty)}\n {(chevron || loading) && (\n <SButtonAddon>\n {loading ? <SButtonTriggerSpin size='xs' theme={false} /> : <ChevronDown />}\n </SButtonAddon>\n )}\n </Root>,\n );\n }\n}\n\n/**\n * ButtonTrigger\n *\n * {@link https://developer.semrush.com/intergalactic/components/base-trigger/base-trigger-api#buttontrigger|API} | {@link https://developer.semrush.com/intergalactic/components/base-trigger/base-trigger-code#buttontrigger|Examples}\n */\nconst ButtonTrigger = createComponent(\n RootButtonTrigger,\n {\n Text: BaseTrigger.Text,\n Addon: BaseTrigger.Addon,\n },\n {\n parent: BaseTrigger,\n },\n);\n\nexport default ButtonTrigger;\n"],"mappings":";;;AAAA,SAASA,eAAe,EAAEC,SAAS,EAAEC,IAAI,EAAEC,OAAO,QAAQ,eAAe;AACzE,OAAOC,iBAAiB,MAAM,2CAA2C;AACzE,OAAOC,mBAAmB,MAAM,sDAAsD;AACtF,SAASC,kBAAkB,QAAQ,wCAAwC;AAC3E,OAAOC,WAAW,MAAM,6BAA6B;AACrD,OAAOC,IAAI,MAAM,eAAe;AAChC,OAAOC,KAAK,MAAM,OAAO;AAEzB,OAAOC,WAAW,MAAM,eAAe;AAAC;AAAA,MAAAC,KAAA,8BAAAC,QAAA,CAAAC,MAAA;AAAA;AAAA;EAAA;EAAA;AAAA;AAGxC,MAAMC,iBAAiB,SAASb,SAAS,CAAC;EAoBxCc,YAAYA,CAAA,EAAG;IACb,OAAO;MACLC,GAAG,EAAE;IACP,CAAC;EACH;EAEAC,aAAaA,CAAA,EAAG;IACd,OAAO;MACLD,GAAG,EAAE;IACP,CAAC;EACH;EAEAE,MAAMA,CAAA,EAAG;IAAA,IAAAC,IAAA,QAAAC,OAAA;MAAAC,KAAA;IACP,MAAMC,YAAY,GAAGC,aAAa,CAACC,KAAK;IACxC,MAAMC,kBAAkB,GAAGjB,IAAI;IAC/B,MAAM;MAAEkB,QAAQ;MAAEC,MAAM;MAAEC,OAAO;MAAEC,QAAQ;MAAEC,OAAO;MAAEC;IAAM,CAAC,GAAG,IAAI,CAACX,OAAO;IAE5E,OAAAC,KAAA,GAAOlB,OAAO,CAACwB,MAAM,CAAC,eACpBlB,KAAA,CAAAuB,aAAA,CAActB,WAAW,EAAAuB,YAAA;MAAA,gBAAgBJ,QAAQ,IAAID;IAAO,GAAAT,IAAA,GACzDf,iBAAiB,CAACsB,QAAQ,EAAEH,aAAa,CAACW,IAAI,EAAEX,aAAa,CAACC,KAAK,EAAEO,KAAK,CAAC,EAC3E,CAACD,OAAO,IAAIF,OAAO,kBAClBnB,KAAA,CAAAuB,aAAA,CAACV,YAAY,EAAAD,KAAA,CAAAc,EAAA,sBACVP,OAAO,gBAAGnB,KAAA,CAAAuB,aAAA,CAACP,kBAAkB,EAAAJ,KAAA,CAAAc,EAAA;MAAA,QAAM,IAAI;MAAA,SAAQ;IAAK,EAAG,CAAC,gBAAG1B,KAAA,CAAAuB,aAAA,CAACzB,WAAW,EAAAc,KAAA,CAAAc,EAAA,mBAAE,CAC9D,CAEZ,CAAC;EAEX;AACF;;AAEA;AACA;AACA;AACA;AACA;AAJAC,eAAA,CAlDMtB,iBAAiB,iBACA,eAAe;AAAAsB,eAAA,CADhCtB,iBAAiB,WAENH,KAAK;AAAAyB,eAAA,CAFhBtB,iBAAiB,aAGJ,CACfR,kBAAkB,CAAC;EACjB+B,QAAQ,EAAE,kCAAkC;EAC5CC,QAAQ,EAAE,KAAK;EACfC,GAAG,EAAEC,MAAM,CAACC,QAAQ;EACpBC,IAAI,EAAE;AACR,CAAC,CAAC,EACFrC,mBAAmB,CAAC;EAClBsC,YAAY,EAAE,CAAC,OAAO,CAAC;EACvBC,UAAU,EAAE,CAAC,OAAO;AACtB,CAAC,CAAC,CACH;AAAAR,eAAA,CAdGtB,iBAAiB,kBAgBC;EACpBgB,OAAO,EAAE;AACX,CAAC;AAqCH,MAAMP,aAAa,GAAGvB,eAAe,CACnCc,iBAAiB,EACjB;EACEoB,IAAI,EAAExB,WAAW,CAACwB,IAAI;EACtBV,KAAK,EAAEd,WAAW,CAACc;AACrB,CAAC,EACD;EACEqB,MAAM,EAAEnC;AACV,CACF,CAAC;AAED,eAAea,aAAa","ignoreList":[]}
|
package/lib/es6/FilterTrigger.js
CHANGED
|
@@ -21,13 +21,13 @@ import Close from '@semcore/icon/Close/m';
|
|
|
21
21
|
import React from 'react';
|
|
22
22
|
import BaseTrigger from './BaseTrigger';
|
|
23
23
|
/*!__reshadow-styles__:"./style/filter-trigger.shadow.css"*/
|
|
24
|
-
const style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".
|
|
24
|
+
const style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".___SFilterTrigger_4mfzu_gg_.__selected_4mfzu_gg_{border-color:var(--intergalactic-border-info-active,#8796ef);background-color:var(--intergalactic-control-secondary-info,#0051ff0a);color:var(--intergalactic-text-primary,#010500e5)}@supports (color:color(display-p3 0 0 0%)){.___SFilterTrigger_4mfzu_gg_.__selected_4mfzu_gg_{background-color:var(--intergalactic-control-secondary-info,#0051ff0a)}@media (color-gamut:p3){.___SFilterTrigger_4mfzu_gg_.__selected_4mfzu_gg_{background-color:var(--intergalactic-control-secondary-info,color(display-p3 .12567 .31309 .96324/.039))}}}@media (hover:hover){.___SFilterTrigger_4mfzu_gg_.__selected_4mfzu_gg_:hover{background-color:var(--intergalactic-control-secondary-info-hover,#0050ff14)}@supports (color:color(display-p3 0 0 0%)){.___SFilterTrigger_4mfzu_gg_.__selected_4mfzu_gg_:hover{background-color:var(--intergalactic-control-secondary-info-hover,#0050ff14)}@media (color-gamut:p3){.___SFilterTrigger_4mfzu_gg_.__selected_4mfzu_gg_:hover{background-color:var(--intergalactic-control-secondary-info-hover,color(display-p3 .12402 .30857 .96259/.077))}}}}.___SFilterTrigger_4mfzu_gg_.__selected_4mfzu_gg_.__active_4mfzu_gg_,.___SFilterTrigger_4mfzu_gg_.__selected_4mfzu_gg_:active{background-color:var(--intergalactic-control-secondary-info-active,#014fff1e)}@supports (color:color(display-p3 0 0 0%)){.___SFilterTrigger_4mfzu_gg_.__selected_4mfzu_gg_.__active_4mfzu_gg_,.___SFilterTrigger_4mfzu_gg_.__selected_4mfzu_gg_:active{background-color:var(--intergalactic-control-secondary-info-active,#014fff1e)}@media (color-gamut:p3){.___SFilterTrigger_4mfzu_gg_.__selected_4mfzu_gg_.__active_4mfzu_gg_,.___SFilterTrigger_4mfzu_gg_.__selected_4mfzu_gg_:active{background-color:var(--intergalactic-control-secondary-info-active,color(display-p3 .12361 .30547 .96332/.116))}}}.___SWrapper_4mfzu_gg_{display:inline-flex}.___SWrapper_4mfzu_gg_:focus{outline:none}", /*__inner_css_end__*/"4mfzu_gg_"),
|
|
25
25
|
/*__reshadow_css_end__*/
|
|
26
26
|
{
|
|
27
|
-
"__SFilterTrigger": "
|
|
28
|
-
"_selected": "
|
|
29
|
-
"_active": "
|
|
30
|
-
"__SWrapper": "
|
|
27
|
+
"__SFilterTrigger": "___SFilterTrigger_4mfzu_gg_",
|
|
28
|
+
"_selected": "__selected_4mfzu_gg_",
|
|
29
|
+
"_active": "__active_4mfzu_gg_",
|
|
30
|
+
"__SWrapper": "___SWrapper_4mfzu_gg_"
|
|
31
31
|
});
|
|
32
32
|
import { localizedMessages } from './translations/__intergalactic-dynamic-locales';
|
|
33
33
|
const filterTriggerInputProps = [...inputProps, 'aria-controls', 'aria-haspopup', 'aria-expanded', 'aria-disabled', 'aria-activedescendant', 'aria-label', 'aria-labelledby', 'role'];
|
|
@@ -223,6 +223,12 @@ function Counter({
|
|
|
223
223
|
}, _ref4)
|
|
224
224
|
}), count !== undefined ? /*#__PURE__*/React.createElement(React.Fragment, null, count, /*#__PURE__*/React.createElement(ScreenReaderOnly, _ref8.cn("ScreenReaderOnly", {}), getI18nText('BaseTrigger.FilterTrigger.Counter.selected:aria-label'))) : /*#__PURE__*/React.createElement(Children, _ref8.cn("Children", {})));
|
|
225
225
|
}
|
|
226
|
+
|
|
227
|
+
/**
|
|
228
|
+
* FilterTrigger
|
|
229
|
+
*
|
|
230
|
+
* {@link https://developer.semrush.com/intergalactic/components/base-trigger/base-trigger-api#filtertrigger|API} | {@link https://developer.semrush.com/intergalactic/components/base-trigger/base-trigger-code#filtertrigger|Examples}
|
|
231
|
+
*/
|
|
226
232
|
const FilterTrigger = createComponent(RootFilterTrigger, {
|
|
227
233
|
Text: BaseTrigger.Text,
|
|
228
234
|
Addon: BaseTrigger.Addon,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FilterTrigger.js","names":["NeighborLocation","Box","ScreenReaderOnly","Hint","createComponent","Component","Root","sstyled","addonTextChildren","callAllEventHandlers","animatedSizeEnhance","i18nEnhance","isAdvanceMode","getInputProps","inputProps","uniqueIDEnhancement","setFocus","cssVariableEnhance","default","SemcoreCounter","ChevronDown","Close","React","BaseTrigger","style","_sstyled","insert","localizedMessages","filterTriggerInputProps","RootFilterTrigger","constructor","args","_defineProperty","e","key","stopPropagation","requestAnimationFrame","asProps","triggerRef","current","getTriggerButtonProps","empty","size","placeholder","active","disabled","includeInputProps","_dataUiName","other","controlProps","selected","getClearButtonProps","onClear","getI18nText","onClick","handleClear","handleStopPropagation","onKeyDown","getCounterProps","render","_ref","_ref5","SWrapper","Children","styles","forcedAdvancedMode","advancedMode","FilterTrigger","TriggerButton","displayName","ClearButton","createElement","cn","_assignProps","undefined","Fragment","variable","fallback","map","Number","parseInt","prop","animateProps","onChangeOf","i18n","locale","createRef","role","_ref2","_ref6","SFilterTrigger","_assignProps2","Text","Addon","Counter","tag","_ref3","_ref7","ariaLabel","title","_assignProps3","count","_ref4","arguments[0]","_ref8","SCounter","_assignProps4","parent"],"sources":["../../src/FilterTrigger.jsx"],"sourcesContent":["import { NeighborLocation, Box, ScreenReaderOnly, Hint } from '@semcore/base-components';\nimport { createComponent, Component, Root, sstyled } from '@semcore/core';\nimport addonTextChildren from '@semcore/core/lib/utils/addonTextChildren';\nimport { callAllEventHandlers } from '@semcore/core/lib/utils/assignProps';\nimport animatedSizeEnhance from '@semcore/core/lib/utils/enhances/animatedSizeEnhance';\nimport i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';\nimport { isAdvanceMode } from '@semcore/core/lib/utils/findComponent';\nimport getInputProps, { inputProps } from '@semcore/core/lib/utils/inputProps';\nimport uniqueIDEnhancement from '@semcore/core/lib/utils/uniqueID';\nimport { setFocus } from '@semcore/core/lib/utils/use/useFocusLock';\nimport { cssVariableEnhance } from '@semcore/core/lib/utils/useCssVariable';\nimport { default as SemcoreCounter } from '@semcore/counter';\nimport ChevronDown from '@semcore/icon/ChevronDown/m';\nimport Close from '@semcore/icon/Close/m';\nimport React from 'react';\n\nimport BaseTrigger from './BaseTrigger';\nimport style from './style/filter-trigger.shadow.css';\nimport { localizedMessages } from './translations/__intergalactic-dynamic-locales';\n\nconst filterTriggerInputProps = [\n ...inputProps,\n 'aria-controls',\n 'aria-haspopup',\n 'aria-expanded',\n 'aria-disabled',\n 'aria-activedescendant',\n 'aria-label',\n 'aria-labelledby',\n 'role',\n];\n\nclass RootFilterTrigger extends Component {\n static displayName = 'FilterTrigger';\n static style = style;\n static enhance = [\n i18nEnhance(localizedMessages),\n cssVariableEnhance({\n variable: '--intergalactic-duration-control',\n fallback: '200',\n map: Number.parseInt,\n prop: 'duration',\n }),\n animatedSizeEnhance({\n animateProps: ['width'],\n onChangeOf: ['value'],\n }),\n uniqueIDEnhancement(),\n ];\n\n static defaultProps = () => ({\n includeInputProps: filterTriggerInputProps,\n i18n: localizedMessages,\n locale: 'en',\n triggerRef: React.createRef(),\n role: 'group',\n });\n\n handleStopPropagation = (e) => {\n if (e.key === 'Escape') return;\n\n e.stopPropagation();\n };\n\n handleClear = () => {\n requestAnimationFrame(() => {\n setFocus(this.asProps.triggerRef.current);\n });\n };\n\n getTriggerButtonProps() {\n const {\n empty,\n size,\n placeholder,\n active,\n disabled,\n includeInputProps,\n triggerRef,\n 'data-ui-name': _dataUiName,\n ...other\n } = this.asProps;\n\n const [controlProps] = getInputProps(other, includeInputProps);\n\n return {\n size,\n placeholder,\n empty,\n selected: !empty,\n active,\n disabled,\n triggerRef,\n ...controlProps,\n };\n }\n\n getClearButtonProps() {\n const { empty, onClear, size, disabled, getI18nText } = this.asProps;\n\n return {\n size,\n empty,\n onClick: callAllEventHandlers(onClear, this.handleClear, this.handleStopPropagation),\n onKeyDown: this.handleStopPropagation,\n disabled,\n getI18nText,\n };\n }\n\n getCounterProps() {\n const { getI18nText, size } = this.asProps;\n\n return {\n getI18nText,\n size,\n };\n }\n\n render() {\n const SWrapper = Root;\n const { Children, styles, getI18nText, empty, forcedAdvancedMode } = this.asProps;\n\n const advancedMode =\n forcedAdvancedMode ||\n isAdvanceMode(\n Children,\n [FilterTrigger.TriggerButton.displayName, FilterTrigger.ClearButton.displayName],\n true,\n );\n\n return sstyled(styles)(\n <SWrapper\n render={Box}\n aria-label={getI18nText('filter')}\n __excludeProps={['id']}\n use:role={undefined}\n use:aria-controls={undefined}\n use:aria-owns={undefined}\n use:aria-haspopup={undefined}\n use:aria-expanded={undefined}\n use:aria-disabled={undefined}\n use:aria-activedescendant={undefined}\n use:aria-label={undefined}\n use:aria-labelledby={undefined}\n >\n <NeighborLocation>\n {advancedMode\n ? (\n <Children />\n )\n : (\n <>\n <FilterTrigger.TriggerButton>\n <Children />\n </FilterTrigger.TriggerButton>\n {!empty && <FilterTrigger.ClearButton />}\n </>\n )}\n </NeighborLocation>\n </SWrapper>,\n );\n }\n}\n\nclass TriggerButton extends Component {\n static displayName = 'TriggerButton';\n static style = style;\n\n render() {\n const SFilterTrigger = Root;\n const { Children, styles, empty, triggerRef } = this.asProps;\n\n return sstyled(styles)(\n <SFilterTrigger\n render={BaseTrigger}\n use:role='combobox'\n w='100%'\n empty={empty}\n selected={!empty}\n ref={triggerRef}\n animationsDisabled\n >\n {addonTextChildren(\n Children,\n FilterTrigger.Text,\n [FilterTrigger.Addon, FilterTrigger.Counter],\n empty,\n )}\n {empty && <FilterTrigger.Addon tag={ChevronDown} />}\n </SFilterTrigger>,\n );\n }\n}\n\nclass ClearButton extends Component {\n static displayName = 'ClearButton';\n static style = style;\n\n triggerRef = React.createRef();\n\n render() {\n const SFilterTrigger = Root;\n const {\n styles,\n empty,\n size,\n disabled,\n getI18nText,\n 'aria-label': ariaLabel,\n title,\n } = this.asProps;\n\n if (empty) return null;\n\n return sstyled(styles)(\n <>\n <SFilterTrigger\n ref={this.triggerRef}\n render={BaseTrigger}\n size={size}\n empty={empty}\n selected\n disabled={disabled}\n aria-label={title ?? ariaLabel ?? getI18nText('clear')}\n __excludeProps={['title']}\n >\n <FilterTrigger.Addon tag={Close} />\n </SFilterTrigger>\n\n <Hint triggerRef={this.triggerRef}>{title ?? ariaLabel ?? getI18nText('clear')}</Hint>\n </>,\n );\n }\n}\n\nfunction Counter({ styles, Children, count, getI18nText }) {\n const SCounter = Root;\n return sstyled(styles)(\n <SCounter render={BaseTrigger.Addon} tag={SemcoreCounter} theme='info'>\n {count !== undefined\n ? (\n <>\n {count}\n <ScreenReaderOnly>\n {getI18nText('BaseTrigger.FilterTrigger.Counter.selected:aria-label')}\n </ScreenReaderOnly>\n </>\n )\n : (\n <Children />\n )}\n </SCounter>,\n );\n}\n\nconst FilterTrigger = createComponent(\n RootFilterTrigger,\n {\n Text: BaseTrigger.Text,\n Addon: BaseTrigger.Addon,\n Counter,\n TriggerButton,\n ClearButton,\n },\n {\n parent: BaseTrigger,\n },\n);\n\nexport default FilterTrigger;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"FilterTrigger.js","names":["NeighborLocation","Box","ScreenReaderOnly","Hint","createComponent","Component","Root","sstyled","addonTextChildren","callAllEventHandlers","animatedSizeEnhance","i18nEnhance","isAdvanceMode","getInputProps","inputProps","uniqueIDEnhancement","setFocus","cssVariableEnhance","default","SemcoreCounter","ChevronDown","Close","React","BaseTrigger","style","_sstyled","insert","localizedMessages","filterTriggerInputProps","RootFilterTrigger","constructor","args","_defineProperty","e","key","stopPropagation","requestAnimationFrame","asProps","triggerRef","current","getTriggerButtonProps","empty","size","placeholder","active","disabled","includeInputProps","_dataUiName","other","controlProps","selected","getClearButtonProps","onClear","getI18nText","onClick","handleClear","handleStopPropagation","onKeyDown","getCounterProps","render","_ref","_ref5","SWrapper","Children","styles","forcedAdvancedMode","advancedMode","FilterTrigger","TriggerButton","displayName","ClearButton","createElement","cn","_assignProps","undefined","Fragment","variable","fallback","map","Number","parseInt","prop","animateProps","onChangeOf","i18n","locale","createRef","role","_ref2","_ref6","SFilterTrigger","_assignProps2","Text","Addon","Counter","tag","_ref3","_ref7","ariaLabel","title","_assignProps3","count","_ref4","arguments[0]","_ref8","SCounter","_assignProps4","parent"],"sources":["../../src/FilterTrigger.jsx"],"sourcesContent":["import { NeighborLocation, Box, ScreenReaderOnly, Hint } from '@semcore/base-components';\nimport { createComponent, Component, Root, sstyled } from '@semcore/core';\nimport addonTextChildren from '@semcore/core/lib/utils/addonTextChildren';\nimport { callAllEventHandlers } from '@semcore/core/lib/utils/assignProps';\nimport animatedSizeEnhance from '@semcore/core/lib/utils/enhances/animatedSizeEnhance';\nimport i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';\nimport { isAdvanceMode } from '@semcore/core/lib/utils/findComponent';\nimport getInputProps, { inputProps } from '@semcore/core/lib/utils/inputProps';\nimport uniqueIDEnhancement from '@semcore/core/lib/utils/uniqueID';\nimport { setFocus } from '@semcore/core/lib/utils/use/useFocusLock';\nimport { cssVariableEnhance } from '@semcore/core/lib/utils/useCssVariable';\nimport { default as SemcoreCounter } from '@semcore/counter';\nimport ChevronDown from '@semcore/icon/ChevronDown/m';\nimport Close from '@semcore/icon/Close/m';\nimport React from 'react';\n\nimport BaseTrigger from './BaseTrigger';\nimport style from './style/filter-trigger.shadow.css';\nimport { localizedMessages } from './translations/__intergalactic-dynamic-locales';\n\nconst filterTriggerInputProps = [\n ...inputProps,\n 'aria-controls',\n 'aria-haspopup',\n 'aria-expanded',\n 'aria-disabled',\n 'aria-activedescendant',\n 'aria-label',\n 'aria-labelledby',\n 'role',\n];\n\nclass RootFilterTrigger extends Component {\n static displayName = 'FilterTrigger';\n static style = style;\n static enhance = [\n i18nEnhance(localizedMessages),\n cssVariableEnhance({\n variable: '--intergalactic-duration-control',\n fallback: '200',\n map: Number.parseInt,\n prop: 'duration',\n }),\n animatedSizeEnhance({\n animateProps: ['width'],\n onChangeOf: ['value'],\n }),\n uniqueIDEnhancement(),\n ];\n\n static defaultProps = () => ({\n includeInputProps: filterTriggerInputProps,\n i18n: localizedMessages,\n locale: 'en',\n triggerRef: React.createRef(),\n role: 'group',\n });\n\n handleStopPropagation = (e) => {\n if (e.key === 'Escape') return;\n\n e.stopPropagation();\n };\n\n handleClear = () => {\n requestAnimationFrame(() => {\n setFocus(this.asProps.triggerRef.current);\n });\n };\n\n getTriggerButtonProps() {\n const {\n empty,\n size,\n placeholder,\n active,\n disabled,\n includeInputProps,\n triggerRef,\n 'data-ui-name': _dataUiName,\n ...other\n } = this.asProps;\n\n const [controlProps] = getInputProps(other, includeInputProps);\n\n return {\n size,\n placeholder,\n empty,\n selected: !empty,\n active,\n disabled,\n triggerRef,\n ...controlProps,\n };\n }\n\n getClearButtonProps() {\n const { empty, onClear, size, disabled, getI18nText } = this.asProps;\n\n return {\n size,\n empty,\n onClick: callAllEventHandlers(onClear, this.handleClear, this.handleStopPropagation),\n onKeyDown: this.handleStopPropagation,\n disabled,\n getI18nText,\n };\n }\n\n getCounterProps() {\n const { getI18nText, size } = this.asProps;\n\n return {\n getI18nText,\n size,\n };\n }\n\n render() {\n const SWrapper = Root;\n const { Children, styles, getI18nText, empty, forcedAdvancedMode } = this.asProps;\n\n const advancedMode =\n forcedAdvancedMode ||\n isAdvanceMode(\n Children,\n [FilterTrigger.TriggerButton.displayName, FilterTrigger.ClearButton.displayName],\n true,\n );\n\n return sstyled(styles)(\n <SWrapper\n render={Box}\n aria-label={getI18nText('filter')}\n __excludeProps={['id']}\n use:role={undefined}\n use:aria-controls={undefined}\n use:aria-owns={undefined}\n use:aria-haspopup={undefined}\n use:aria-expanded={undefined}\n use:aria-disabled={undefined}\n use:aria-activedescendant={undefined}\n use:aria-label={undefined}\n use:aria-labelledby={undefined}\n >\n <NeighborLocation>\n {advancedMode\n ? (\n <Children />\n )\n : (\n <>\n <FilterTrigger.TriggerButton>\n <Children />\n </FilterTrigger.TriggerButton>\n {!empty && <FilterTrigger.ClearButton />}\n </>\n )}\n </NeighborLocation>\n </SWrapper>,\n );\n }\n}\n\nclass TriggerButton extends Component {\n static displayName = 'TriggerButton';\n static style = style;\n\n render() {\n const SFilterTrigger = Root;\n const { Children, styles, empty, triggerRef } = this.asProps;\n\n return sstyled(styles)(\n <SFilterTrigger\n render={BaseTrigger}\n use:role='combobox'\n w='100%'\n empty={empty}\n selected={!empty}\n ref={triggerRef}\n animationsDisabled\n >\n {addonTextChildren(\n Children,\n FilterTrigger.Text,\n [FilterTrigger.Addon, FilterTrigger.Counter],\n empty,\n )}\n {empty && <FilterTrigger.Addon tag={ChevronDown} />}\n </SFilterTrigger>,\n );\n }\n}\n\nclass ClearButton extends Component {\n static displayName = 'ClearButton';\n static style = style;\n\n triggerRef = React.createRef();\n\n render() {\n const SFilterTrigger = Root;\n const {\n styles,\n empty,\n size,\n disabled,\n getI18nText,\n 'aria-label': ariaLabel,\n title,\n } = this.asProps;\n\n if (empty) return null;\n\n return sstyled(styles)(\n <>\n <SFilterTrigger\n ref={this.triggerRef}\n render={BaseTrigger}\n size={size}\n empty={empty}\n selected\n disabled={disabled}\n aria-label={title ?? ariaLabel ?? getI18nText('clear')}\n __excludeProps={['title']}\n >\n <FilterTrigger.Addon tag={Close} />\n </SFilterTrigger>\n\n <Hint triggerRef={this.triggerRef}>{title ?? ariaLabel ?? getI18nText('clear')}</Hint>\n </>,\n );\n }\n}\n\nfunction Counter({ styles, Children, count, getI18nText }) {\n const SCounter = Root;\n return sstyled(styles)(\n <SCounter render={BaseTrigger.Addon} tag={SemcoreCounter} theme='info'>\n {count !== undefined\n ? (\n <>\n {count}\n <ScreenReaderOnly>\n {getI18nText('BaseTrigger.FilterTrigger.Counter.selected:aria-label')}\n </ScreenReaderOnly>\n </>\n )\n : (\n <Children />\n )}\n </SCounter>,\n );\n}\n\n/**\n * FilterTrigger\n *\n * {@link https://developer.semrush.com/intergalactic/components/base-trigger/base-trigger-api#filtertrigger|API} | {@link https://developer.semrush.com/intergalactic/components/base-trigger/base-trigger-code#filtertrigger|Examples}\n */\nconst FilterTrigger = createComponent(\n RootFilterTrigger,\n {\n Text: BaseTrigger.Text,\n Addon: BaseTrigger.Addon,\n Counter,\n TriggerButton,\n ClearButton,\n },\n {\n parent: BaseTrigger,\n },\n);\n\nexport default FilterTrigger;\n"],"mappings":"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","ignoreList":[]}
|
package/lib/es6/LinkTrigger.js
CHANGED
|
@@ -12,17 +12,12 @@ class RootLinkTrigger extends Component {
|
|
|
12
12
|
getTextProps(props) {
|
|
13
13
|
const {
|
|
14
14
|
placeholder,
|
|
15
|
-
empty
|
|
16
|
-
Children,
|
|
17
|
-
size
|
|
15
|
+
empty
|
|
18
16
|
} = this.asProps;
|
|
19
17
|
const content = empty ? placeholder : props.children;
|
|
20
|
-
const addons = findAllComponents(Children, [LinkTrigger.Addon.displayName]);
|
|
21
|
-
const addonWidth = size >= 600 ? 28 : 20;
|
|
22
18
|
return {
|
|
23
19
|
'use:children': content,
|
|
24
|
-
empty
|
|
25
|
-
'w': `calc(100% - ${addonWidth * (addons.length + 1)}px)`
|
|
20
|
+
empty
|
|
26
21
|
};
|
|
27
22
|
}
|
|
28
23
|
render() {
|
|
@@ -44,6 +39,12 @@ class RootLinkTrigger extends Component {
|
|
|
44
39
|
}) : size >= 600 ? /*#__PURE__*/React.createElement(ChevronDownL, null) : /*#__PURE__*/React.createElement(ChevronDownM, null)));
|
|
45
40
|
}
|
|
46
41
|
}
|
|
42
|
+
|
|
43
|
+
/**
|
|
44
|
+
* LinkTrigger
|
|
45
|
+
*
|
|
46
|
+
* {@link https://developer.semrush.com/intergalactic/components/base-trigger/base-trigger-api#linktrigger|API} | {@link https://developer.semrush.com/intergalactic/components/base-trigger/base-trigger-code#linktrigger|Examples}
|
|
47
|
+
*/
|
|
47
48
|
_defineProperty(RootLinkTrigger, "displayName", 'LinkTrigger');
|
|
48
49
|
const LinkTrigger = createComponent(RootLinkTrigger, {
|
|
49
50
|
Text: ButtonLink.Text,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LinkTrigger.js","names":["ButtonLink","createComponent","Component","Root","addonTextChildren","findAllComponents","ChevronDownL","ChevronDownM","Spin","React","RootLinkTrigger","getTextProps","props","placeholder","empty","
|
|
1
|
+
{"version":3,"file":"LinkTrigger.js","names":["ButtonLink","createComponent","Component","Root","addonTextChildren","findAllComponents","ChevronDownL","ChevronDownM","Spin","React","RootLinkTrigger","getTextProps","props","placeholder","empty","asProps","content","children","render","_ref","SLinkTrigger","SLinkAddon","LinkTrigger","Addon","Children","loading","disabled","size","createElement","_assignProps","Text","theme","_defineProperty","parent"],"sources":["../../src/LinkTrigger.jsx"],"sourcesContent":["import { ButtonLink } from '@semcore/button';\nimport { createComponent, Component, Root } from '@semcore/core';\nimport addonTextChildren from '@semcore/core/lib/utils/addonTextChildren';\nimport { findAllComponents } from '@semcore/core/lib/utils/findComponent';\nimport ChevronDownL from '@semcore/icon/ChevronDown/l';\nimport ChevronDownM from '@semcore/icon/ChevronDown/m';\nimport Spin from '@semcore/spin';\nimport React from 'react';\n\nclass RootLinkTrigger extends Component {\n static displayName = 'LinkTrigger';\n\n getTextProps(props) {\n const { placeholder, empty } = this.asProps;\n const content = empty ? placeholder : props.children;\n\n return {\n 'use:children': content,\n empty,\n };\n }\n\n render() {\n const SLinkTrigger = Root;\n const SLinkAddon = LinkTrigger.Addon;\n const { Children, loading, empty, disabled, size } = this.asProps;\n\n return (\n <SLinkTrigger\n render={ButtonLink}\n use:disabled={disabled || loading}\n >\n {addonTextChildren(Children, LinkTrigger.Text, LinkTrigger.Addon, empty)}\n <SLinkAddon>\n {loading\n ? <Spin size={size >= 600 ? 's' : 'xs'} theme='currentColor' />\n : size >= 600 ? <ChevronDownL /> : <ChevronDownM />}\n </SLinkAddon>\n </SLinkTrigger>\n );\n }\n}\n\n/**\n * LinkTrigger\n *\n * {@link https://developer.semrush.com/intergalactic/components/base-trigger/base-trigger-api#linktrigger|API} | {@link https://developer.semrush.com/intergalactic/components/base-trigger/base-trigger-code#linktrigger|Examples}\n */\nconst LinkTrigger = createComponent(RootLinkTrigger, {\n Text: ButtonLink.Text,\n Addon: ButtonLink.Addon,\n}, {\n parent: ButtonLink,\n});\n\nexport default LinkTrigger;\n"],"mappings":";;AAAA,SAASA,UAAU,QAAQ,iBAAiB;AAC5C,SAASC,eAAe,EAAEC,SAAS,EAAEC,IAAI,QAAQ,eAAe;AAChE,OAAOC,iBAAiB,MAAM,2CAA2C;AACzE,SAASC,iBAAiB,QAAQ,uCAAuC;AACzE,OAAOC,YAAY,MAAM,6BAA6B;AACtD,OAAOC,YAAY,MAAM,6BAA6B;AACtD,OAAOC,IAAI,MAAM,eAAe;AAChC,OAAOC,KAAK,MAAM,OAAO;AAEzB,MAAMC,eAAe,SAASR,SAAS,CAAC;EAGtCS,YAAYA,CAACC,KAAK,EAAE;IAClB,MAAM;MAAEC,WAAW;MAAEC;IAAM,CAAC,GAAG,IAAI,CAACC,OAAO;IAC3C,MAAMC,OAAO,GAAGF,KAAK,GAAGD,WAAW,GAAGD,KAAK,CAACK,QAAQ;IAEpD,OAAO;MACL,cAAc,EAAED,OAAO;MACvBF;IACF,CAAC;EACH;EAEAI,MAAMA,CAAA,EAAG;IAAA,IAAAC,IAAA,QAAAJ,OAAA;IACP,MAAMK,YAAY,GAMNpB,UAAU;IALtB,MAAMqB,UAAU,GAAGC,WAAW,CAACC,KAAK;IACpC,MAAM;MAAEC,QAAQ;MAAEC,OAAO;MAAEX,KAAK;MAAEY,QAAQ;MAAEC;IAAK,CAAC,GAAG,IAAI,CAACZ,OAAO;IAEjE,oBACEN,KAAA,CAAAmB,aAAA,CAACR,YAAY,EAAAS,YAAA;MAAA,gBAEGH,QAAQ,IAAID;IAAO,GAAAN,IAAA,GAEhCf,iBAAiB,CAACoB,QAAQ,EAAEF,WAAW,CAACQ,IAAI,EAAER,WAAW,CAACC,KAAK,EAAET,KAAK,CAAC,eACxEL,KAAA,CAAAmB,aAAA,CAACP,UAAU,QACRI,OAAO,gBACJhB,KAAA,CAAAmB,aAAA,CAACpB,IAAI;MAACmB,IAAI,EAAEA,IAAI,IAAI,GAAG,GAAG,GAAG,GAAG,IAAK;MAACI,KAAK,EAAC;IAAc,CAAE,CAAC,GAC7DJ,IAAI,IAAI,GAAG,gBAAGlB,KAAA,CAAAmB,aAAA,CAACtB,YAAY,MAAE,CAAC,gBAAGG,KAAA,CAAAmB,aAAA,CAACrB,YAAY,MAAE,CAC1C,CACA,CAAC;EAEnB;AACF;;AAEA;AACA;AACA;AACA;AACA;AAJAyB,eAAA,CAlCMtB,eAAe,iBACE,aAAa;AAsCpC,MAAMY,WAAW,GAAGrB,eAAe,CAACS,eAAe,EAAE;EACnDoB,IAAI,EAAE9B,UAAU,CAAC8B,IAAI;EACrBP,KAAK,EAAEvB,UAAU,CAACuB;AACpB,CAAC,EAAE;EACDU,MAAM,EAAEjC;AACV,CAAC,CAAC;AAEF,eAAesB,WAAW","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 { Box, BoxProps, NeighborItemProps } from '@semcore/base-components';\nimport type { ButtonLinkProps, ButtonLink } from '@semcore/button';\nimport type { Intergalactic } from '@semcore/core';\nimport type { WithAnimatedSizeEnhanceProps } from '@semcore/core/lib/utils/enhances/animatedSizeEnhance';\nimport type {
|
|
1
|
+
{"version":3,"file":"index.d.js","names":[],"sources":["../../src/index.d.ts"],"sourcesContent":["import type { Box, BoxProps, NeighborItemProps } from '@semcore/base-components';\nimport type { ButtonLinkProps, ButtonLink } from '@semcore/button';\nimport type { Intergalactic } from '@semcore/core';\nimport type { WithAnimatedSizeEnhanceProps } from '@semcore/core/lib/utils/enhances/animatedSizeEnhance';\nimport type { NSCounter } from '@semcore/counter';\nimport type { Text } from '@semcore/typography';\nimport type React from 'react';\n\nexport type BaseTriggerProps = BoxProps &\n NeighborItemProps &\n WithAnimatedSizeEnhanceProps & {\n /**\n * Trigger size\n * @default m\n */\n size?: 'm' | 'l';\n /**\n * Trigger state\n */\n state?: 'normal' | 'valid' | 'invalid';\n /**\n * Sets active state to trigger\n */\n active?: boolean;\n /**\n * Responsible for placeholder displaying\n */\n empty?: boolean;\n /**\n * Placeholder text\n */\n placeholder?: React.ReactNode;\n /**\n * Sets disabled state to trigger\n */\n disabled?: boolean;\n };\n\nexport type ButtonTriggerProps = Omit<BaseTriggerProps, 'theme'> & {\n /** Sets the loading state */\n loading?: boolean;\n /**\n * Display the dropdowns chevron icon\n * @default true\n */\n chevron?: boolean;\n};\n\nexport type LinkTriggerProps = ButtonLinkProps & {\n /** Sets the loading state */\n loading?: boolean;\n /** Placeholder text */\n placeholder?: React.ReactNode;\n /** Responsible for placeholder displaying */\n empty?: boolean;\n};\n\nexport type FilterTriggerProps = BaseTriggerProps & {\n /** Click on the filter cleaning cross */\n onClear?: (event: React.SyntheticEvent) => void;\n /** Specifies the locale for i18n support */\n locale?: string;\n /** List of props that will be added to the select inside of filter */\n includeInputProps?: string[];\n /** Normal `ref` prop refers to FilterTrigger wrapper while `triggerRef` refers explicitly to trigger button */\n triggerRef?: React.Ref<HTMLButtonElement>;\n};\n\nexport type FilterTriggerCounterProps = {\n /** Count for render */\n count?: number;\n};\n\ndeclare const BaseTrigger: Intergalactic.Component<'div', BaseTriggerProps> & {\n Text: typeof Text;\n Addon: typeof Box;\n};\n\ndeclare const ButtonTrigger: Intergalactic.Component<'div', ButtonTriggerProps> & {\n Text: typeof BaseTrigger.Text;\n Addon: typeof BaseTrigger.Addon;\n};\n\ndeclare const LinkTrigger: Intergalactic.Component<'div', LinkTriggerProps> & {\n Text: typeof ButtonLink.Text;\n Addon: typeof ButtonLink.Addon;\n};\n\ndeclare const FilterTrigger: Intergalactic.Component<'div', FilterTriggerProps> & {\n Text: typeof BaseTrigger.Text;\n Addon: typeof BaseTrigger.Addon;\n Counter: Intergalactic.Component<'div', NSCounter.Props & FilterTriggerCounterProps>;\n TriggerButton: typeof BaseTrigger;\n ClearButton: typeof BaseTrigger;\n};\n\n/**\n * @deprecated. Use one this: ButtonTrigger, FilterTrigger, LinkTrigger.\n */\nexport default BaseTrigger;\nexport { ButtonTrigger, LinkTrigger, FilterTrigger };\n"],"mappings":"","ignoreList":[]}
|
package/lib/esm/BaseTrigger.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import _defineProperty from "@babel/runtime/helpers/
|
|
1
|
+
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
2
2
|
import { sstyled, Component, assignProps, createComponent } from "@semcore/core";
|
|
3
3
|
import { Box, InvalidStateBox, NeighborLocation } from "@semcore/base-components";
|
|
4
4
|
import addonTextChildren from "@semcore/core/lib/utils/addonTextChildren";
|
|
@@ -11,27 +11,27 @@ const style = (
|
|
|
11
11
|
/*__reshadow_css_start__*/
|
|
12
12
|
(sstyled.insert(
|
|
13
13
|
/*__inner_css_start__*/
|
|
14
|
-
".
|
|
14
|
+
".___SBaseTrigger_19nw9_gg_{display:inline-block;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,#fff);font-weight:var(--intergalactic-regular,400);border:1px solid var(--intergalactic-border-primary,#000c0829);color:var(--intergalactic-text-primary,#010500e5)}@supports (color:color(display-p3 0 0 0%)){.___SBaseTrigger_19nw9_gg_{border:1px solid var(--intergalactic-border-primary,#000c0829)}@media (color-gamut:p3){.___SBaseTrigger_19nw9_gg_{border:1px solid var(--intergalactic-border-primary,color(display-p3 .00798 .04498 .03219/.161))}}}.___SBaseTrigger_19nw9_gg_::-moz-focus-inner{border:none;padding:0}.___SBaseTrigger_19nw9_gg_:active{-webkit-text-decoration:none;text-decoration:none}@media (hover:hover){.___SBaseTrigger_19nw9_gg_:hover{-webkit-text-decoration:none;text-decoration:none}}.___SBaseTrigger_19nw9_gg_:focus-visible{border:1px solid var(--intergalactic-border-info-active,#8796ef)}@media (hover:hover){.___SBaseTrigger_19nw9_gg_:hover{background-color:var(--intergalactic-bg-primary-neutral-hover,#f8f9f8)}}.___SBaseTrigger_19nw9_gg_.__active_19nw9_gg_,.___SBaseTrigger_19nw9_gg_:active{border-color:var(--intergalactic-border-info-active,#8796ef);background-color:var(--intergalactic-bg-primary-neutral,#fff)}.___SBaseTrigger_19nw9_gg_.__disabled_19nw9_gg_{opacity:var(--intergalactic-disabled-opacity,.4);cursor:default;pointer-events:none}.___SInner_19nw9_gg_{display:inline-flex;align-items:center;justify-content:center;height:100%;width:100%}.___SText_19nw9_gg_{display:inline;padding:1px 0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;line-height:var(--intergalactic-lh-200,142%);flex-grow:1;text-align:left}.___SAddon_19nw9_gg_{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;pointer-events:none}.___SBaseAddon_19nw9_gg_{width:12px;height:12px}.___SBaseTrigger_19nw9_gg_._size_m_19nw9_gg_{min-width:26px;height:28px;border-radius:var(--intergalactic-control-rounded,6px);padding:0 var(--intergalactic-spacing-2x,8px);font-size:var(--intergalactic-fs-200,14px)}.___SBaseTrigger_19nw9_gg_._size_m_19nw9_gg_ .___SAddon_19nw9_gg_:not(:only-child):first-child{margin-right:var(--intergalactic-spacing-2x,8px)}.___SBaseTrigger_19nw9_gg_._size_m_19nw9_gg_ .___SAddon_19nw9_gg_:not(:only-child):last-child{margin-left:var(--intergalactic-spacing-2x,8px)}.___SBaseTrigger_19nw9_gg_._size_m_19nw9_gg_ .___SAddon_19nw9_gg_:only-child{margin-left:calc(var(--intergalactic-spacing-1x, 4px)*-1);margin-right:calc(var(--intergalactic-spacing-1x, 4px)*-1)}.___SBaseTrigger_19nw9_gg_._size_l_19nw9_gg_{min-width:32px;height:40px;border-radius:var(--intergalactic-control-rounded,6px);padding:0 var(--intergalactic-spacing-3x,12px);font-size:var(--intergalactic-fs-300,16px)}.___SBaseTrigger_19nw9_gg_._size_l_19nw9_gg_ .___SAddon_19nw9_gg_:not(:only-child):first-child{margin-right:var(--intergalactic-spacing-2x,8px)}.___SBaseTrigger_19nw9_gg_._size_l_19nw9_gg_ .___SAddon_19nw9_gg_:not(:only-child):last-child{margin-left:var(--intergalactic-spacing-2x,8px)}.___SBaseTrigger_19nw9_gg_._size_l_19nw9_gg_ .___SAddon_19nw9_gg_:only-child{margin-left:calc(var(--intergalactic-spacing-1x, 4px)*-1);margin-right:calc(var(--intergalactic-spacing-1x, 4px)*-1)}.___SBaseTrigger_19nw9_gg_._neighborLocation_right_19nw9_gg_{border-top-right-radius:0;border-bottom-right-radius:0}.___SBaseTrigger_19nw9_gg_._neighborLocation_both_19nw9_gg_{border-radius:0;margin-left:-1px}.___SBaseTrigger_19nw9_gg_._neighborLocation_left_19nw9_gg_{border-top-left-radius:0;border-bottom-left-radius:0;margin-left:-1px}.___SBaseTrigger_19nw9_gg_._neighborLocation_left_19nw9_gg_.__disabled_19nw9_gg_{border-left:none;margin-left:0}.___SText_19nw9_gg_.__display-placeholder_19nw9_gg_{color:var(--intergalactic-text-placeholder,#00050275)}.___SBaseTrigger_19nw9_gg_._state_valid_19nw9_gg_{border-color:var(--intergalactic-border-success-active,#00b991)}@supports (color:color(display-p3 0 0 0%)){.___SBaseTrigger_19nw9_gg_._state_valid_19nw9_gg_{border-color:var(--intergalactic-border-success-active,#00b991)}@media (color-gamut:p3){.___SBaseTrigger_19nw9_gg_._state_valid_19nw9_gg_{border-color:var(--intergalactic-border-success-active,color(display-p3 .21847 .73243 .56937))}}}.___SBaseTrigger_19nw9_gg_._state_invalid_19nw9_gg_{border-color:var(--intergalactic-border-critical-active,#ff6364)}@supports (color:color(display-p3 0 0 0%)){.___SBaseTrigger_19nw9_gg_._state_invalid_19nw9_gg_{border-color:var(--intergalactic-border-critical-active,#ff6364)}@media (color-gamut:p3){.___SBaseTrigger_19nw9_gg_._state_invalid_19nw9_gg_{border-color:var(--intergalactic-border-critical-active,color(display-p3 .95478 .398 .38923))}}}.___SBaseTrigger_19nw9_gg_._state_invalid_19nw9_gg_:focus-visible{outline-color:var(--intergalactic-keyboard-focus-invalid-outline,#ff0207a6)}.___SInvalidPattern_19nw9_gg_._size_m_19nw9_gg_{margin-left:calc(var(--intergalactic-spacing-2x, 8px)*-1)}.___SInvalidPattern_19nw9_gg_._size_l_19nw9_gg_{margin-left:calc(var(--intergalactic-spacing-3x, 12px)*-1)}",
|
|
15
15
|
/*__inner_css_end__*/
|
|
16
|
-
"
|
|
16
|
+
"19nw9_gg_"
|
|
17
17
|
), /*__reshadow_css_end__*/
|
|
18
18
|
{
|
|
19
|
-
"__SBaseTrigger": "
|
|
20
|
-
"_disabled": "
|
|
21
|
-
"__SInner": "
|
|
22
|
-
"__SText": "
|
|
23
|
-
"__SAddon": "
|
|
24
|
-
"__SBaseAddon": "
|
|
25
|
-
"_neighborLocation_right": "
|
|
26
|
-
"_neighborLocation_both": "
|
|
27
|
-
"_display-placeholder": "__display-
|
|
28
|
-
"_state_valid": "
|
|
29
|
-
"__SInvalidPattern": "
|
|
30
|
-
"_size_m": "
|
|
31
|
-
"_size_l": "
|
|
32
|
-
"_active": "
|
|
33
|
-
"_neighborLocation_left": "
|
|
34
|
-
"_state_invalid": "
|
|
19
|
+
"__SBaseTrigger": "___SBaseTrigger_19nw9_gg_",
|
|
20
|
+
"_disabled": "__disabled_19nw9_gg_",
|
|
21
|
+
"__SInner": "___SInner_19nw9_gg_",
|
|
22
|
+
"__SText": "___SText_19nw9_gg_",
|
|
23
|
+
"__SAddon": "___SAddon_19nw9_gg_",
|
|
24
|
+
"__SBaseAddon": "___SBaseAddon_19nw9_gg_",
|
|
25
|
+
"_neighborLocation_right": "_neighborLocation_right_19nw9_gg_",
|
|
26
|
+
"_neighborLocation_both": "_neighborLocation_both_19nw9_gg_",
|
|
27
|
+
"_display-placeholder": "__display-placeholder_19nw9_gg_",
|
|
28
|
+
"_state_valid": "_state_valid_19nw9_gg_",
|
|
29
|
+
"__SInvalidPattern": "___SInvalidPattern_19nw9_gg_",
|
|
30
|
+
"_size_m": "_size_m_19nw9_gg_",
|
|
31
|
+
"_size_l": "_size_l_19nw9_gg_",
|
|
32
|
+
"_active": "__active_19nw9_gg_",
|
|
33
|
+
"_neighborLocation_left": "_neighborLocation_left_19nw9_gg_",
|
|
34
|
+
"_state_invalid": "_state_invalid_19nw9_gg_"
|
|
35
35
|
})
|
|
36
36
|
);
|
|
37
37
|
class RootBaseTrigger extends Component {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import _defineProperty from "@babel/runtime/helpers/
|
|
1
|
+
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
2
2
|
import { sstyled, Component, assignProps, createComponent } from "@semcore/core";
|
|
3
3
|
import addonTextChildren from "@semcore/core/lib/utils/addonTextChildren";
|
|
4
4
|
import animatedSizeEnhance from "@semcore/core/lib/utils/enhances/animatedSizeEnhance";
|
|
@@ -12,13 +12,13 @@ const style = (
|
|
|
12
12
|
/*__reshadow_css_start__*/
|
|
13
13
|
(sstyled.insert(
|
|
14
14
|
/*__inner_css_start__*/
|
|
15
|
-
".
|
|
15
|
+
".___SButtonAddon_qly44_gg_{width:12px;height:12px}.___SButtonTriggerSpin_qly44_gg_{fill:var(--intergalactic-icon-primary-neutral,#00040186)}",
|
|
16
16
|
/*__inner_css_end__*/
|
|
17
|
-
"
|
|
17
|
+
"qly44_gg_"
|
|
18
18
|
), /*__reshadow_css_end__*/
|
|
19
19
|
{
|
|
20
|
-
"__SButtonAddon": "
|
|
21
|
-
"__SButtonTriggerSpin": "
|
|
20
|
+
"__SButtonAddon": "___SButtonAddon_qly44_gg_",
|
|
21
|
+
"__SButtonTriggerSpin": "___SButtonTriggerSpin_qly44_gg_"
|
|
22
22
|
})
|
|
23
23
|
);
|
|
24
24
|
class RootButtonTrigger extends Component {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import _defineProperty from "@babel/runtime/helpers/
|
|
1
|
+
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
2
2
|
import { sstyled, Component, assignProps, createComponent } from "@semcore/core";
|
|
3
3
|
import { Box, NeighborLocation, Hint, ScreenReaderOnly } from "@semcore/base-components";
|
|
4
4
|
import addonTextChildren from "@semcore/core/lib/utils/addonTextChildren";
|
|
@@ -21,15 +21,15 @@ const style = (
|
|
|
21
21
|
/*__reshadow_css_start__*/
|
|
22
22
|
(sstyled.insert(
|
|
23
23
|
/*__inner_css_start__*/
|
|
24
|
-
".
|
|
24
|
+
".___SFilterTrigger_4mfzu_gg_.__selected_4mfzu_gg_{border-color:var(--intergalactic-border-info-active,#8796ef);background-color:var(--intergalactic-control-secondary-info,#0051ff0a);color:var(--intergalactic-text-primary,#010500e5)}@supports (color:color(display-p3 0 0 0%)){.___SFilterTrigger_4mfzu_gg_.__selected_4mfzu_gg_{background-color:var(--intergalactic-control-secondary-info,#0051ff0a)}@media (color-gamut:p3){.___SFilterTrigger_4mfzu_gg_.__selected_4mfzu_gg_{background-color:var(--intergalactic-control-secondary-info,color(display-p3 .12567 .31309 .96324/.039))}}}@media (hover:hover){.___SFilterTrigger_4mfzu_gg_.__selected_4mfzu_gg_:hover{background-color:var(--intergalactic-control-secondary-info-hover,#0050ff14)}@supports (color:color(display-p3 0 0 0%)){.___SFilterTrigger_4mfzu_gg_.__selected_4mfzu_gg_:hover{background-color:var(--intergalactic-control-secondary-info-hover,#0050ff14)}@media (color-gamut:p3){.___SFilterTrigger_4mfzu_gg_.__selected_4mfzu_gg_:hover{background-color:var(--intergalactic-control-secondary-info-hover,color(display-p3 .12402 .30857 .96259/.077))}}}}.___SFilterTrigger_4mfzu_gg_.__selected_4mfzu_gg_.__active_4mfzu_gg_,.___SFilterTrigger_4mfzu_gg_.__selected_4mfzu_gg_:active{background-color:var(--intergalactic-control-secondary-info-active,#014fff1e)}@supports (color:color(display-p3 0 0 0%)){.___SFilterTrigger_4mfzu_gg_.__selected_4mfzu_gg_.__active_4mfzu_gg_,.___SFilterTrigger_4mfzu_gg_.__selected_4mfzu_gg_:active{background-color:var(--intergalactic-control-secondary-info-active,#014fff1e)}@media (color-gamut:p3){.___SFilterTrigger_4mfzu_gg_.__selected_4mfzu_gg_.__active_4mfzu_gg_,.___SFilterTrigger_4mfzu_gg_.__selected_4mfzu_gg_:active{background-color:var(--intergalactic-control-secondary-info-active,color(display-p3 .12361 .30547 .96332/.116))}}}.___SWrapper_4mfzu_gg_{display:inline-flex}.___SWrapper_4mfzu_gg_:focus{outline:none}",
|
|
25
25
|
/*__inner_css_end__*/
|
|
26
|
-
"
|
|
26
|
+
"4mfzu_gg_"
|
|
27
27
|
), /*__reshadow_css_end__*/
|
|
28
28
|
{
|
|
29
|
-
"__SFilterTrigger": "
|
|
30
|
-
"_selected": "
|
|
31
|
-
"_active": "
|
|
32
|
-
"__SWrapper": "
|
|
29
|
+
"__SFilterTrigger": "___SFilterTrigger_4mfzu_gg_",
|
|
30
|
+
"_selected": "__selected_4mfzu_gg_",
|
|
31
|
+
"_active": "__active_4mfzu_gg_",
|
|
32
|
+
"__SWrapper": "___SWrapper_4mfzu_gg_"
|
|
33
33
|
})
|
|
34
34
|
);
|
|
35
35
|
const filterTriggerInputProps = [...inputProps, "aria-controls", "aria-haspopup", "aria-expanded", "aria-disabled", "aria-activedescendant", "aria-label", "aria-labelledby", "role"];
|
package/lib/esm/LinkTrigger.mjs
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import _defineProperty from "@babel/runtime/helpers/
|
|
1
|
+
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
2
2
|
import { Component, assignProps, createComponent } from "@semcore/core";
|
|
3
3
|
import { ButtonLink } from "@semcore/button";
|
|
4
4
|
import addonTextChildren from "@semcore/core/lib/utils/addonTextChildren";
|
|
5
|
-
import
|
|
5
|
+
import "@semcore/core/lib/utils/findComponent";
|
|
6
6
|
import ChevronDownL from "@semcore/icon/ChevronDown/l";
|
|
7
7
|
import ChevronDown from "@semcore/icon/ChevronDown/m";
|
|
8
8
|
import Spin from "@semcore/spin";
|
|
@@ -11,17 +11,12 @@ class RootLinkTrigger extends Component {
|
|
|
11
11
|
getTextProps(props) {
|
|
12
12
|
const {
|
|
13
13
|
placeholder,
|
|
14
|
-
empty
|
|
15
|
-
Children,
|
|
16
|
-
size
|
|
14
|
+
empty
|
|
17
15
|
} = this.asProps;
|
|
18
16
|
const content = empty ? placeholder : props.children;
|
|
19
|
-
const addons = findAllComponents(Children, [LinkTrigger.Addon.displayName]);
|
|
20
|
-
const addonWidth = size >= 600 ? 28 : 20;
|
|
21
17
|
return {
|
|
22
18
|
"use:children": content,
|
|
23
|
-
empty
|
|
24
|
-
"w": `calc(100% - ${addonWidth * (addons.length + 1)}px)`
|
|
19
|
+
empty
|
|
25
20
|
};
|
|
26
21
|
}
|
|
27
22
|
render() {
|
package/lib/types/index.d.ts
CHANGED
|
@@ -2,7 +2,7 @@ import type { Box, BoxProps, NeighborItemProps } from '@semcore/base-components'
|
|
|
2
2
|
import type { ButtonLinkProps, ButtonLink } from '@semcore/button';
|
|
3
3
|
import type { Intergalactic } from '@semcore/core';
|
|
4
4
|
import type { WithAnimatedSizeEnhanceProps } from '@semcore/core/lib/utils/enhances/animatedSizeEnhance';
|
|
5
|
-
import type {
|
|
5
|
+
import type { NSCounter } from '@semcore/counter';
|
|
6
6
|
import type { Text } from '@semcore/typography';
|
|
7
7
|
import type React from 'react';
|
|
8
8
|
|
|
@@ -89,10 +89,13 @@ declare const LinkTrigger: Intergalactic.Component<'div', LinkTriggerProps> & {
|
|
|
89
89
|
declare const FilterTrigger: Intergalactic.Component<'div', FilterTriggerProps> & {
|
|
90
90
|
Text: typeof BaseTrigger.Text;
|
|
91
91
|
Addon: typeof BaseTrigger.Addon;
|
|
92
|
-
Counter: Intergalactic.Component<'div',
|
|
92
|
+
Counter: Intergalactic.Component<'div', NSCounter.Props & FilterTriggerCounterProps>;
|
|
93
93
|
TriggerButton: typeof BaseTrigger;
|
|
94
94
|
ClearButton: typeof BaseTrigger;
|
|
95
95
|
};
|
|
96
96
|
|
|
97
|
+
/**
|
|
98
|
+
* @deprecated. Use one this: ButtonTrigger, FilterTrigger, LinkTrigger.
|
|
99
|
+
*/
|
|
97
100
|
export default BaseTrigger;
|
|
98
101
|
export { ButtonTrigger, LinkTrigger, FilterTrigger };
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@semcore/base-trigger",
|
|
3
3
|
"description": "Semrush BaseTrigger Component",
|
|
4
|
-
"version": "17.
|
|
4
|
+
"version": "17.2.0-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,14 +14,14 @@
|
|
|
14
14
|
"require": "./lib/cjs/index.js"
|
|
15
15
|
},
|
|
16
16
|
"dependencies": {
|
|
17
|
-
"@semcore/counter": "^17.
|
|
18
|
-
"@semcore/spin": "^17.
|
|
19
|
-
"@semcore/tooltip": "^17.
|
|
20
|
-
"@semcore/typography": "^17.
|
|
21
|
-
"@semcore/button": "^17.
|
|
17
|
+
"@semcore/counter": "^17.2.0-prerelease.3",
|
|
18
|
+
"@semcore/spin": "^17.2.0-prerelease.3",
|
|
19
|
+
"@semcore/tooltip": "^17.2.0-prerelease.3",
|
|
20
|
+
"@semcore/typography": "^17.2.0-prerelease.3",
|
|
21
|
+
"@semcore/button": "^17.2.0-prerelease.3"
|
|
22
22
|
},
|
|
23
23
|
"peerDependencies": {
|
|
24
|
-
"@semcore/base-components": "^17.0
|
|
24
|
+
"@semcore/base-components": "^17.2.0",
|
|
25
25
|
"@semcore/icon": "^17.0.1"
|
|
26
26
|
},
|
|
27
27
|
"repository": {
|
|
@@ -30,10 +30,10 @@
|
|
|
30
30
|
"directory": "semcore/base-trigger"
|
|
31
31
|
},
|
|
32
32
|
"devDependencies": {
|
|
33
|
-
"@semcore/
|
|
34
|
-
"@semcore/
|
|
33
|
+
"@semcore/core": "17.2.0-prerelease.3",
|
|
34
|
+
"@semcore/base-components": "17.2.0-prerelease.3",
|
|
35
|
+
"@semcore/tooltip": "17.2.0-prerelease.3",
|
|
35
36
|
"@semcore/testing-utils": "1.0.0",
|
|
36
|
-
"@semcore/tooltip": "17.1.0-prerelease.3",
|
|
37
37
|
"@semcore/icon": "17.1.0"
|
|
38
38
|
},
|
|
39
39
|
"scripts": {
|