@semcore/base-trigger 16.4.5 → 16.4.6-prerelease.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (35) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/README.md +4 -4
  3. package/lib/cjs/BaseTrigger.js +108 -97
  4. package/lib/cjs/BaseTrigger.js.map +1 -1
  5. package/lib/cjs/ButtonTrigger.js +45 -60
  6. package/lib/cjs/ButtonTrigger.js.map +1 -1
  7. package/lib/cjs/FilterTrigger.js +173 -197
  8. package/lib/cjs/FilterTrigger.js.map +1 -1
  9. package/lib/cjs/LinkTrigger.js +89 -79
  10. package/lib/cjs/LinkTrigger.js.map +1 -1
  11. package/lib/cjs/index.d.js.map +1 -1
  12. package/lib/cjs/index.js +9 -9
  13. package/lib/cjs/style/filter-trigger.shadow.css +0 -4
  14. package/lib/cjs/translations/__intergalactic-dynamic-locales.js +16 -16
  15. package/lib/cjs/translations/__intergalactic-dynamic-locales.js.map +1 -1
  16. package/lib/es6/BaseTrigger.js +100 -89
  17. package/lib/es6/BaseTrigger.js.map +1 -1
  18. package/lib/es6/ButtonTrigger.js +34 -49
  19. package/lib/es6/ButtonTrigger.js.map +1 -1
  20. package/lib/es6/FilterTrigger.js +157 -181
  21. package/lib/es6/FilterTrigger.js.map +1 -1
  22. package/lib/es6/LinkTrigger.js +82 -72
  23. package/lib/es6/LinkTrigger.js.map +1 -1
  24. package/lib/es6/index.d.js.map +1 -1
  25. package/lib/es6/style/filter-trigger.shadow.css +0 -4
  26. package/lib/es6/translations/__intergalactic-dynamic-locales.js +15 -15
  27. package/lib/es6/translations/__intergalactic-dynamic-locales.js.map +1 -1
  28. package/lib/esm/BaseTrigger.mjs +100 -76
  29. package/lib/esm/ButtonTrigger.mjs +36 -46
  30. package/lib/esm/FilterTrigger.mjs +154 -143
  31. package/lib/esm/LinkTrigger.mjs +82 -59
  32. package/lib/esm/style/filter-trigger.shadow.css +0 -4
  33. package/lib/esm/translations/__intergalactic-dynamic-locales.mjs +1 -1
  34. package/lib/types/index.d.ts +6 -19
  35. package/package.json +9 -8
@@ -1,73 +1,77 @@
1
- import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
2
- import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
3
- import _createClass from "@babel/runtime/helpers/esm/createClass";
4
- import _callSuper from "@babel/runtime/helpers/esm/callSuper";
5
- import _inherits from "@babel/runtime/helpers/esm/inherits";
6
1
  import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
7
- import { createComponent, sstyled, assignProps, Component } from "@semcore/core";
2
+ import { createComponent, Component, sstyled, assignProps } from "@semcore/core";
3
+ import { Box } from "@semcore/base-components";
8
4
  import addonTextChildren from "@semcore/core/lib/utils/addonTextChildren";
9
5
  import resolveColorEnhance from "@semcore/core/lib/utils/enhances/resolveColorEnhance";
10
- import { Box } from "@semcore/flex-box";
11
6
  import ChevronDown from "@semcore/icon/ChevronDown/m";
12
7
  import Spin from "@semcore/spin";
8
+ import { Text as Text$1 } from "@semcore/typography";
13
9
  import React from "react";
14
10
  /*!__reshadow-styles__:"./style/link-trigger.shadow.css"*/
15
- var style = (
11
+ const style = (
16
12
  /*__reshadow_css_start__*/
17
13
  (sstyled.insert(
18
14
  /*__inner_css_start__*/
19
- ".___SLinkTrigger_o7hq8_gg_{display:inline-flex;align-items: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;-webkit-text-decoration:none;text-decoration:none;-webkit-tap-highlight-color:transparent;overflow:visible;outline:0;vertical-align:middle;font-family:inherit;cursor:pointer;color:var(--intergalactic-text-link, #006dca);background:0 0;transition:color .15s ease-in-out;border:0}.___SLinkTrigger_o7hq8_gg_.__active_o7hq8_gg_,.___SLinkTrigger_o7hq8_gg_:active{color:var(--intergalactic-text-link-hover-active, #044792)}@media (hover:hover){.___SLinkTrigger_o7hq8_gg_:hover{color:var(--intergalactic-text-link-hover-active, #044792)}}.___SLinkTrigger_o7hq8_gg_.__active_o7hq8_gg_ .___SText_o7hq8_gg_,.___SLinkTrigger_o7hq8_gg_:active .___SText_o7hq8_gg_{border-color:currentColor}@media (hover:hover){.___SLinkTrigger_o7hq8_gg_:hover .___SText_o7hq8_gg_{border-color:currentColor}}.___SLinkTrigger_o7hq8_gg_ .___SText_o7hq8_gg_{border-bottom-width:1px;border-bottom-style:solid;border-color:transparent;transition:border-bottom-color .15s ease-in-out;text-overflow:ellipsis;overflow:hidden}.___SLinkTrigger_o7hq8_gg_.__color_o7hq8_gg_{color:var(--color_o7hq8)}@media (hover:hover){.___SLinkTrigger_o7hq8_gg_.__color_o7hq8_gg_:hover{filter:brightness(.8)}}.___SLinkTrigger_o7hq8_gg_.__disabled_o7hq8_gg_{opacity:var(--intergalactic-disabled-opacity, 0.3);cursor:default;pointer-events:none}.___SAddon_o7hq8_gg_,.___SLinkAddon_o7hq8_gg_{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;margin-bottom:var(--intergalactic-spacing-05x, 2px)}.___SAddon_o7hq8_gg_:not(:only-child):first-child,.___SLinkAddon_o7hq8_gg_:not(:only-child):first-child{margin-right:var(--intergalactic-spacing-1x, 4px)}.___SAddon_o7hq8_gg_:not(:only-child):last-child,.___SLinkAddon_o7hq8_gg_:not(:only-child):last-child{margin-left:var(--intergalactic-spacing-1x, 4px)}.___SLinkAddon_o7hq8_gg_{width:16px;height:16px}.___SLinkTrigger_o7hq8_gg_._size_m_o7hq8_gg_{font-size:var(--intergalactic-fs-200, 14px)}.___SLinkTrigger_o7hq8_gg_._size_l_o7hq8_gg_{font-size:var(--intergalactic-fs-300, 16px)}@media (prefers-reduced-motion){.___SLinkTrigger_o7hq8_gg_,.___SLinkTrigger_o7hq8_gg_ .___SText_o7hq8_gg_{transition:none}}",
15
+ ".___SLinkTrigger_1mko8_gg_{display:inline-flex;align-items: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;-webkit-text-decoration:none;text-decoration:none;-webkit-tap-highlight-color:transparent;overflow:visible;outline:0;vertical-align:middle;font-family:inherit;cursor:pointer;color:var(--intergalactic-text-link, #006dca);background:0 0;transition:color .15s ease-in-out;border:0}.___SLinkTrigger_1mko8_gg_.__active_1mko8_gg_,.___SLinkTrigger_1mko8_gg_:active{color:var(--intergalactic-text-link-hover-active, #044792)}@media (hover:hover){.___SLinkTrigger_1mko8_gg_:hover{color:var(--intergalactic-text-link-hover-active, #044792)}}.___SLinkTrigger_1mko8_gg_.__active_1mko8_gg_ .___SText_1mko8_gg_,.___SLinkTrigger_1mko8_gg_:active .___SText_1mko8_gg_{border-color:currentColor}@media (hover:hover){.___SLinkTrigger_1mko8_gg_:hover .___SText_1mko8_gg_{border-color:currentColor}}.___SLinkTrigger_1mko8_gg_ .___SText_1mko8_gg_{border-bottom-width:1px;border-bottom-style:solid;border-color:transparent;transition:border-bottom-color .15s ease-in-out;text-overflow:ellipsis;overflow:hidden}.___SLinkTrigger_1mko8_gg_.__color_1mko8_gg_{color:var(--color_1mko8)}@media (hover:hover){.___SLinkTrigger_1mko8_gg_.__color_1mko8_gg_:hover{filter:brightness(.8)}}.___SLinkTrigger_1mko8_gg_.__disabled_1mko8_gg_{opacity:var(--intergalactic-disabled-opacity, 0.3);cursor:default;pointer-events:none}.___SAddon_1mko8_gg_,.___SLinkAddon_1mko8_gg_{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;margin-bottom:var(--intergalactic-spacing-05x, 2px)}.___SAddon_1mko8_gg_:not(:only-child):first-child,.___SLinkAddon_1mko8_gg_:not(:only-child):first-child{margin-right:var(--intergalactic-spacing-1x, 4px)}.___SAddon_1mko8_gg_:not(:only-child):last-child,.___SLinkAddon_1mko8_gg_:not(:only-child):last-child{margin-left:var(--intergalactic-spacing-1x, 4px)}.___SLinkAddon_1mko8_gg_{width:16px;height:16px}.___SLinkTrigger_1mko8_gg_._size_m_1mko8_gg_{font-size:var(--intergalactic-fs-200, 14px)}.___SLinkTrigger_1mko8_gg_._size_l_1mko8_gg_{font-size:var(--intergalactic-fs-300, 16px)}@media (prefers-reduced-motion){.___SLinkTrigger_1mko8_gg_,.___SLinkTrigger_1mko8_gg_ .___SText_1mko8_gg_{transition:none}}",
20
16
  /*__inner_css_end__*/
21
- "o7hq8_gg_"
17
+ "1mko8_gg_"
22
18
  ), /*__reshadow_css_end__*/
23
19
  {
24
- "__SLinkTrigger": "___SLinkTrigger_o7hq8_gg_",
25
- "_disabled": "__disabled_o7hq8_gg_",
26
- "__SLinkAddon": "___SLinkAddon_o7hq8_gg_",
27
- "_size_m": "_size_m_o7hq8_gg_",
28
- "_size_l": "_size_l_o7hq8_gg_",
29
- "_active": "__active_o7hq8_gg_",
30
- "__SText": "___SText_o7hq8_gg_",
31
- "_color": "__color_o7hq8_gg_",
32
- "--color": "--color_o7hq8",
33
- "__SAddon": "___SAddon_o7hq8_gg_"
20
+ "__SLinkTrigger": "___SLinkTrigger_1mko8_gg_",
21
+ "_disabled": "__disabled_1mko8_gg_",
22
+ "__SLinkAddon": "___SLinkAddon_1mko8_gg_",
23
+ "_size_m": "_size_m_1mko8_gg_",
24
+ "_size_l": "_size_l_1mko8_gg_",
25
+ "_active": "__active_1mko8_gg_",
26
+ "__SText": "___SText_1mko8_gg_",
27
+ "_color": "__color_1mko8_gg_",
28
+ "--color": "--color_1mko8",
29
+ "__SAddon": "___SAddon_1mko8_gg_"
34
30
  })
35
31
  );
36
- var RootLinkTrigger = /* @__PURE__ */ (function(_Component) {
37
- function RootLinkTrigger2() {
38
- _classCallCheck(this, RootLinkTrigger2);
39
- return _callSuper(this, RootLinkTrigger2, arguments);
32
+ class RootLinkTrigger extends Component {
33
+ constructor(...args) {
34
+ super(...args);
35
+ _defineProperty(this, "triggerRef", /* @__PURE__ */ React.createRef());
40
36
  }
41
- _inherits(RootLinkTrigger2, _Component);
42
- return _createClass(RootLinkTrigger2, [{
43
- key: "getTextProps",
44
- value: function getTextProps() {
45
- var _this$asProps = this.asProps, placeholder = _this$asProps.placeholder, empty = _this$asProps.empty;
46
- return {
47
- placeholder,
48
- empty
49
- };
50
- }
51
- }, {
52
- key: "render",
53
- value: function render() {
54
- var _ref = this.asProps, _ref4;
55
- var SLinkTrigger = Box;
56
- var SLinkAddon = LinkTrigger.Addon;
57
- var _this$asProps2 = this.asProps, Children = _this$asProps2.Children, loading = _this$asProps2.loading, styles = _this$asProps2.styles, empty = _this$asProps2.empty, providedColor = _this$asProps2.color, resolveColor = _this$asProps2.resolveColor;
58
- var color = resolveColor(providedColor);
59
- return _ref4 = sstyled(styles), /* @__PURE__ */ React.createElement(SLinkTrigger, _ref4.cn("SLinkTrigger", _objectSpread({}, assignProps({
37
+ getTextProps() {
38
+ const {
39
+ placeholder,
40
+ empty
41
+ } = this.asProps;
42
+ return {
43
+ placeholder,
44
+ empty,
45
+ triggerRef: this.triggerRef
46
+ };
47
+ }
48
+ render() {
49
+ var _ref = this.asProps, _ref4;
50
+ const SLinkTrigger = Box;
51
+ const SLinkAddon = LinkTrigger.Addon;
52
+ const {
53
+ Children,
54
+ loading,
55
+ styles,
56
+ empty,
57
+ color: providedColor,
58
+ resolveColor
59
+ } = this.asProps;
60
+ const color = resolveColor(providedColor);
61
+ return _ref4 = sstyled(styles), /* @__PURE__ */ React.createElement(SLinkTrigger, _ref4.cn("SLinkTrigger", {
62
+ ...assignProps({
60
63
  "tag": "button",
61
64
  "type": "button",
62
65
  "tabIndex": loading ? -1 : 0,
66
+ "ref": this.triggerRef,
63
67
  "use:color": color
64
- }, _ref))), addonTextChildren(Children, LinkTrigger.Text, LinkTrigger.Addon, empty), /* @__PURE__ */ React.createElement(SLinkAddon, _ref4.cn("SLinkAddon", {}), loading ? /* @__PURE__ */ React.createElement(Spin, _ref4.cn("Spin", {
65
- "size": "xs",
66
- "theme": "currentColor"
67
- })) : /* @__PURE__ */ React.createElement(ChevronDown, _ref4.cn("ChevronDown", {}))));
68
- }
69
- }]);
70
- })(Component);
68
+ }, _ref)
69
+ }), addonTextChildren(Children, LinkTrigger.Text, LinkTrigger.Addon, empty), /* @__PURE__ */ React.createElement(SLinkAddon, _ref4.cn("SLinkAddon", {}), loading ? /* @__PURE__ */ React.createElement(Spin, _ref4.cn("Spin", {
70
+ "size": "xs",
71
+ "theme": "currentColor"
72
+ })) : /* @__PURE__ */ React.createElement(ChevronDown, _ref4.cn("ChevronDown", {}))));
73
+ }
74
+ }
71
75
  _defineProperty(RootLinkTrigger, "displayName", "LinkTrigger");
72
76
  _defineProperty(RootLinkTrigger, "style", style);
73
77
  _defineProperty(RootLinkTrigger, "defaultProps", {
@@ -76,19 +80,38 @@ _defineProperty(RootLinkTrigger, "defaultProps", {
76
80
  _defineProperty(RootLinkTrigger, "enhance", [resolveColorEnhance()]);
77
81
  function Text(props) {
78
82
  var _ref2 = arguments[0], _ref5;
79
- var SText = Box;
80
- var children = props.children, styles = props.styles, empty = props.empty, placeholder = props.placeholder;
81
- return _ref5 = sstyled(styles), /* "use:" prefix was used for backward compatibility (by lsroman) */
82
- /* @__PURE__ */ React.createElement(SText, _ref5.cn("SText", _objectSpread({}, assignProps({
83
- "display-placeholder": empty
84
- }, _ref2))), empty ? placeholder : children);
83
+ const SText = Text$1;
84
+ const textRef = React.useRef();
85
+ const {
86
+ children,
87
+ styles,
88
+ empty,
89
+ placeholder,
90
+ triggerRef,
91
+ ellipsis = false,
92
+ hintProps
93
+ } = props;
94
+ const content = empty ? placeholder : children;
95
+ return _ref5 = sstyled(styles), /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(SText, _ref5.cn("SText", {
96
+ ...assignProps({
97
+ "display-placeholder": empty,
98
+ "ref": textRef,
99
+ "ellipsis": ellipsis,
100
+ "hintProps": {
101
+ ...hintProps,
102
+ triggerRef
103
+ }
104
+ }, _ref2)
105
+ }), content));
85
106
  }
86
107
  function Addon(props) {
87
108
  var _ref3 = arguments[0], _ref6;
88
- var SAddon = Box;
89
- return _ref6 = sstyled(props.styles), /* @__PURE__ */ React.createElement(SAddon, _ref6.cn("SAddon", _objectSpread({}, assignProps({}, _ref3))));
109
+ const SAddon = Box;
110
+ return _ref6 = sstyled(props.styles), /* @__PURE__ */ React.createElement(SAddon, _ref6.cn("SAddon", {
111
+ ...assignProps({}, _ref3)
112
+ }));
90
113
  }
91
- var LinkTrigger = createComponent(RootLinkTrigger, {
114
+ const LinkTrigger = createComponent(RootLinkTrigger, {
92
115
  Text,
93
116
  Addon
94
117
  });
@@ -20,7 +20,3 @@ SWrapper {
20
20
  outline: none;
21
21
  }
22
22
  }
23
-
24
- SCounter {
25
- background-color: var(--intergalactic-bg-primary-info, #008ff8);
26
- }
@@ -12,7 +12,7 @@ import sv from "./sv.json.mjs";
12
12
  import tr from "./tr.json.mjs";
13
13
  import vi from "./vi.json.mjs";
14
14
  import zh from "./zh.json.mjs";
15
- var localizedMessages = {
15
+ const localizedMessages = {
16
16
  de,
17
17
  en,
18
18
  es,
@@ -1,12 +1,10 @@
1
- import type { UnknownProperties, Intergalactic } from '@semcore/core';
1
+ import type { Box, BoxProps, NeighborItemProps } from '@semcore/base-components';
2
+ import type { Intergalactic } from '@semcore/core';
2
3
  import type { WithAnimatedSizeEnhanceProps } from '@semcore/core/lib/utils/enhances/animatedSizeEnhance';
3
- import type { DotProps } from '@semcore/dot';
4
- import type { Box, BoxProps } from '@semcore/flex-box';
5
- import type { NeighborItemProps } from '@semcore/neighbor-location';
4
+ import type { CounterProps } from '@semcore/counter';
5
+ import type { Text } from '@semcore/typography';
6
6
  import type React from 'react';
7
7
 
8
- /** @deprecated */
9
- export interface IBaseTriggerProps extends BaseTriggerProps, UnknownProperties {}
10
8
  export type BaseTriggerProps = BoxProps &
11
9
  NeighborItemProps &
12
10
  WithAnimatedSizeEnhanceProps & {
@@ -35,15 +33,8 @@ export type BaseTriggerProps = BoxProps &
35
33
  * Sets disabled state to trigger
36
34
  */
37
35
  disabled?: boolean;
38
- /** Trigger theme
39
- * @deprecated
40
- * @use IBaseTriggerProps.state
41
- * */
42
- theme?: 'normal' | 'valid' | 'invalid' | false;
43
36
  };
44
37
 
45
- /** @deprecated */
46
- export interface IButtonTriggerProps extends ButtonTriggerProps, UnknownProperties {}
47
38
  export type ButtonTriggerProps = Omit<BaseTriggerProps, 'theme'> & {
48
39
  /** Sets the loading state */
49
40
  loading?: boolean;
@@ -54,8 +45,6 @@ export type ButtonTriggerProps = Omit<BaseTriggerProps, 'theme'> & {
54
45
  chevron?: boolean;
55
46
  };
56
47
 
57
- /** @deprecated */
58
- export interface ILinkTriggerProps extends LinkTriggerProps, UnknownProperties {}
59
48
  export type LinkTriggerProps = Omit<BaseTriggerProps, 'theme'> & {
60
49
  /** Sets the loading state */
61
50
  loading?: boolean;
@@ -63,8 +52,6 @@ export type LinkTriggerProps = Omit<BaseTriggerProps, 'theme'> & {
63
52
  color?: string;
64
53
  };
65
54
 
66
- /** @deprecated */
67
- export interface IFilterTriggerProps extends FilterTriggerProps, UnknownProperties {}
68
55
  export type FilterTriggerProps = BaseTriggerProps & {
69
56
  /** Click on the filter cleaning cross */
70
57
  onClear?: (event: React.SyntheticEvent) => void;
@@ -82,7 +69,7 @@ export type FilterTriggerCounterProps = {
82
69
  };
83
70
 
84
71
  declare const BaseTrigger: Intergalactic.Component<'div', BaseTriggerProps> & {
85
- Text: typeof Box;
72
+ Text: typeof Text;
86
73
  Addon: typeof Box;
87
74
  };
88
75
 
@@ -99,7 +86,7 @@ declare const LinkTrigger: Intergalactic.Component<'div', LinkTriggerProps> & {
99
86
  declare const FilterTrigger: Intergalactic.Component<'div', FilterTriggerProps> & {
100
87
  Text: typeof BaseTrigger.Text;
101
88
  Addon: typeof BaseTrigger.Addon;
102
- Counter: Intergalactic.Component<'div', BoxProps & DotProps & FilterTriggerCounterProps>;
89
+ Counter: Intergalactic.Component<'div', CounterProps & FilterTriggerCounterProps>;
103
90
  TriggerButton: typeof BaseTrigger;
104
91
  ClearButton: typeof BaseTrigger;
105
92
  };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@semcore/base-trigger",
3
3
  "description": "Semrush BaseTrigger Component",
4
- "version": "16.4.5",
4
+ "version": "16.4.6-prerelease.12",
5
5
  "main": "lib/cjs/index.js",
6
6
  "module": "lib/es6/index.js",
7
7
  "typings": "lib/types/index.d.ts",
@@ -14,15 +14,14 @@
14
14
  "types": "./lib/types/index.d.ts"
15
15
  },
16
16
  "dependencies": {
17
- "@semcore/dot": "16.0.11",
18
- "@semcore/icon": "16.7.3",
17
+ "@semcore/counter": "16.0.12-prerelease.12",
19
18
  "@semcore/spin": "16.0.11",
20
- "@semcore/flex-box": "16.0.11",
21
- "@semcore/neighbor-location": "16.0.11",
22
- "@semcore/tooltip": "16.0.11"
19
+ "@semcore/tooltip": "16.0.11",
20
+ "@semcore/typography": "16.3.3-prerelease.12"
23
21
  },
24
22
  "peerDependencies": {
25
- "@semcore/base-components": "^16.0.0"
23
+ "@semcore/base-components": "^16.4.3-prerelease.12",
24
+ "@semcore/icon": "^16.7.2-prerelease.12"
26
25
  },
27
26
  "repository": {
28
27
  "type": "git",
@@ -31,8 +30,10 @@
31
30
  },
32
31
  "devDependencies": {
33
32
  "@semcore/core": "16.5.1",
33
+ "@semcore/base-components": "16.4.3-prerelease.12",
34
+ "@semcore/tooltip": "16.0.11",
34
35
  "@semcore/testing-utils": "1.0.0",
35
- "@semcore/tooltip": "16.0.11"
36
+ "@semcore/icon": "16.7.2-prerelease.12"
36
37
  },
37
38
  "scripts": {
38
39
  "build": "pnpm semcore-builder --source=js && pnpm vite build"