@synerise/ds-context-selector 0.16.14 → 0.17.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,24 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [0.17.0](https://github.com/Synerise/synerise-design/compare/@synerise/ds-context-selector@0.16.14...@synerise/ds-context-selector@0.17.0) (2023-05-23)
7
+
8
+
9
+ ### Bug Fixes
10
+
11
+ * types fix ([5f877b8](https://github.com/Synerise/synerise-design/commit/5f877b8d38c81a40f2c21d6e89795297f88407ea))
12
+ * **context-selector:** fix handling readOnly ([c88b710](https://github.com/Synerise/synerise-design/commit/c88b7108c52cd4e2c3192bddcecb81dac2b560fc))
13
+ * **factors:** reuse FactorsProps type ([5743065](https://github.com/Synerise/synerise-design/commit/574306564fb5c2b8f78f75a36a937960f0c7c609))
14
+
15
+
16
+ ### Features
17
+
18
+ * **factors:** allow changing tooltip ([6da9e97](https://github.com/Synerise/synerise-design/commit/6da9e979e972ca042fce6b2c79d05735257155d9))
19
+
20
+
21
+
22
+
23
+
6
24
  ## [0.16.14](https://github.com/Synerise/synerise-design/compare/@synerise/ds-context-selector@0.16.13...@synerise/ds-context-selector@0.16.14) (2023-05-20)
7
25
 
8
26
 
package/README.md CHANGED
@@ -97,6 +97,7 @@ import ContextSelector from '@synerise/ds-context-selector'
97
97
  | addMode | If true trigger doesn't change style when value is set | ContextItem \ undefined | undefined |
98
98
  | customTriggerComponent | Add custom trigger | React.ReactNode | undefined |
99
99
  | trigger | Add custom trigger to modal | 'click' \ 'hover' \ 'contextMenu' | 'click |
100
+ | getMenuEntryProps | Configure tooltip (information-card by default) | (arg: ParameterValueType) => MenuItemProps \ undefined | undefined |
100
101
  | dropdownWrapperStyles | Apply custom styles to dropdown wrapper | CSSProperties \ undefined | - |
101
102
  | onClickOutsideEvents | Overwrite default events for document listener | HandledEventsType[] \ undefined | - |
102
103
  | onClickOutside | Callback called when user click outside dropdown | () => void \ undefined | - |
@@ -1,5 +1,11 @@
1
1
  function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
2
 
3
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
4
+
5
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
6
+
7
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
8
+
3
9
  import * as React from 'react';
4
10
  import Button from '@synerise/ds-button';
5
11
  import Icon, { Add3M, AngleDownS } from '@synerise/ds-icon';
@@ -40,7 +46,8 @@ var ContextSelector = function ContextSelector(_ref) {
40
46
  disabled = _ref.disabled,
41
47
  errorText = _ref.errorText,
42
48
  _ref$readOnly = _ref.readOnly,
43
- readOnly = _ref$readOnly === void 0 ? false : _ref$readOnly;
49
+ readOnly = _ref$readOnly === void 0 ? false : _ref$readOnly,
50
+ getMenuEntryProps = _ref.getMenuEntryProps;
44
51
 
45
52
  var _React$useState = React.useState(defaultDropdownVisibility != null ? defaultDropdownVisibility : false),
46
53
  dropdownVisible = _React$useState[0],
@@ -84,21 +91,23 @@ var ContextSelector = function ContextSelector(_ref) {
84
91
  disabled: disabled,
85
92
  type: "primary",
86
93
  mode: "icon-label",
87
- onClick: !readOnly ? handleClick : undefined
94
+ onClick: !readOnly ? handleClick : undefined,
95
+ readOnly: readOnly
88
96
  }, /*#__PURE__*/React.createElement(Icon, {
89
97
  component: /*#__PURE__*/React.createElement(Add3M, null)
90
98
  }), buttonLabel)) : /*#__PURE__*/React.createElement(Menu, {
91
99
  asDropdownMenu: true,
92
100
  showTextTooltip: true,
93
101
  asInfoCardContainer: true,
94
- dataSource: [{
102
+ dataSource: [_objectSpread({
95
103
  text: /*#__PURE__*/React.createElement(Button, {
96
104
  error: hasError,
97
105
  disabled: disabled,
98
106
  type: "custom-color",
99
107
  color: triggerColor,
100
108
  mode: triggerMode,
101
- onClick: !readOnly ? handleClick : undefined
109
+ onClick: !readOnly ? handleClick : undefined,
110
+ readOnly: readOnly
102
111
  }, selectedItem ? /*#__PURE__*/React.createElement(Icon, {
103
112
  component: selectedItem.icon
104
113
  }) : null, /*#__PURE__*/React.createElement(ItemWrapper, null, selectedItem ? selectedItem.name : buttonLabel), !readOnly && /*#__PURE__*/React.createElement(Icon, {
@@ -120,9 +129,9 @@ var ContextSelector = function ContextSelector(_ref) {
120
129
  } : undefined
121
130
  });
122
131
  } : undefined
123
- }]
132
+ }, getMenuEntryProps == null ? void 0 : getMenuEntryProps(selectedItem))]
124
133
  });
125
- }, [texts, addMode, selectedItem, disabled, readOnly, handleClick, triggerColor, triggerMode, getPopupContainerOverride, errorText]);
134
+ }, [texts, addMode, selectedItem, disabled, readOnly, handleClick, triggerColor, triggerMode, getPopupContainerOverride, errorText, getMenuEntryProps]);
126
135
  var onDropdownVisibilityChange = React.useCallback(function (value) {
127
136
  if (value) {
128
137
  onActivate && onActivate('');
@@ -3,6 +3,7 @@ import { CSSProperties } from 'react';
3
3
  import { HandledEventsType } from '@synerise/ds-utils';
4
4
  import { ItemSize } from '@synerise/ds-menu';
5
5
  import { DropdownProps } from '@synerise/ds-dropdown/dist/Dropdown';
6
+ import type { FactorsProps } from '@synerise/ds-factors';
6
7
  export declare type ContextTexts = {
7
8
  buttonLabel: string;
8
9
  searchPlaceholder: string;
@@ -65,6 +66,7 @@ export declare type ContextProps = {
65
66
  type?: 'default' | 'attribute' | 'event';
66
67
  dropdownProps?: Omit<DropdownProps, 'trigger' | 'getPopupContainer' | 'onVisibleChange' | 'visible' | 'overlay'>;
67
68
  errorText?: React.ReactNode | string;
69
+ getMenuEntryProps?: FactorsProps['getMenuEntryProps'];
68
70
  };
69
71
  export declare type ContextDropdownProps = {
70
72
  setDropdownVisible: (show: boolean) => void;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@synerise/ds-context-selector",
3
- "version": "0.16.14",
3
+ "version": "0.17.0",
4
4
  "description": "ContextSelector UI Component for the Synerise Design System",
5
5
  "license": "ISC",
6
6
  "repository": "Synerise/synerise-design",
@@ -26,21 +26,22 @@
26
26
  "test:watch": "npm run test -- --watchAll",
27
27
  "types": "tsc --noEmit"
28
28
  },
29
- "gitHead": "5808615a55859820c255189f77977725ec79cd7d",
29
+ "gitHead": "9a0fe37374409f1830fa642965975a26a72116c8",
30
30
  "sideEffects": [
31
31
  "dist/style/*",
32
32
  "*.less"
33
33
  ],
34
34
  "types": "dist/index.d.ts",
35
35
  "dependencies": {
36
- "@synerise/ds-button": "^0.17.15",
37
- "@synerise/ds-dropdown": "^0.17.64",
36
+ "@synerise/ds-button": "^0.17.16",
37
+ "@synerise/ds-dropdown": "^0.17.65",
38
+ "@synerise/ds-factors": "^0.18.0",
38
39
  "@synerise/ds-icon": "^0.56.0",
39
- "@synerise/ds-information-card": "^0.3.14",
40
- "@synerise/ds-menu": "^0.17.8",
41
- "@synerise/ds-result": "^0.6.22",
40
+ "@synerise/ds-information-card": "^0.3.15",
41
+ "@synerise/ds-menu": "^0.17.9",
42
+ "@synerise/ds-result": "^0.6.23",
42
43
  "@synerise/ds-scrollbar": "^0.6.2",
43
- "@synerise/ds-tabs": "^0.13.60",
44
+ "@synerise/ds-tabs": "^0.13.61",
44
45
  "@synerise/ds-utils": "^0.19.0",
45
46
  "classnames": "^2.2.6",
46
47
  "react-window": "1.8.5"