@vtx/components 3.1.117 → 3.1.118

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.
@@ -17,6 +17,8 @@ var _icons = require("@ant-design/icons");
17
17
 
18
18
  var _utils = require("./utils");
19
19
 
20
+ var _ahooks = require("ahooks");
21
+
20
22
  var _excluded = ["prefixCls", "showSearch", "treeData", "searchPlaceholder", "renderMenuList", "fieldNames"];
21
23
 
22
24
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
@@ -77,7 +79,7 @@ var getParentKey = function getParentKey(key, tree) {
77
79
  return parentKey;
78
80
  };
79
81
 
80
- var VtxTree = function VtxTree(_ref) {
82
+ var VtxTree = function VtxTree(_ref, ref) {
81
83
  var _ref$prefixCls = _ref.prefixCls,
82
84
  prefixCls = _ref$prefixCls === void 0 ? 'vtx-tree' : _ref$prefixCls,
83
85
  _ref$showSearch = _ref.showSearch,
@@ -165,10 +167,9 @@ var VtxTree = function VtxTree(_ref) {
165
167
  }
166
168
  };
167
169
 
168
- var onChange = function onChange(e) {
170
+ var onSearch = (0, _ahooks.useMemoizedFn)(function (value) {
169
171
  var _props$onExpand2;
170
172
 
171
- var value = e.target.value;
172
173
  var newExpandedKeys = dataList.map(function (item) {
173
174
  if (item.title.indexOf(value) > -1) {
174
175
  return getParentKey(item.key, treeData);
@@ -185,8 +186,12 @@ var VtxTree = function VtxTree(_ref) {
185
186
  if (!('expandedKeys' in props)) {
186
187
  setExpandedKeys(newExpandedKeys);
187
188
  }
188
- };
189
-
189
+ });
190
+ (0, _react.useImperativeHandle)(ref, function () {
191
+ return {
192
+ onSearch: onSearch
193
+ };
194
+ });
190
195
  (0, _react.useEffect)(function () {
191
196
  var resizeObserver = new ResizeObserver(function () {
192
197
  setHeight(treeRef.current.offsetHeight);
@@ -288,7 +293,9 @@ var VtxTree = function VtxTree(_ref) {
288
293
  marginBottom: 8
289
294
  },
290
295
  placeholder: searchPlaceholder,
291
- onChange: onChange
296
+ onChange: function onChange(e) {
297
+ return onSearch(e.target.value);
298
+ }
292
299
  }), /*#__PURE__*/_react["default"].createElement("div", {
293
300
  className: prefixCls,
294
301
  ref: treeRef
@@ -352,6 +359,8 @@ VtxTree.propTypes = {
352
359
  renderMenuList: _propTypes["default"].func,
353
360
  fieldNames: _propTypes["default"].array
354
361
  };
355
- var _default = VtxTree;
362
+
363
+ var _default = /*#__PURE__*/(0, _react.forwardRef)(VtxTree);
364
+
356
365
  exports["default"] = _default;
357
366
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["getParentKey","key","tree","parentKey","i","length","node","children","some","item","VtxTree","prefixCls","showSearch","treeData","searchPlaceholder","renderMenuList","fieldNames","props","treeRef","useRef","useState","height","setHeight","searchValue","setSearchValue","expandedKeys","setExpandedKeys","autoExpandParent","setAutoExpandParent","selectedKeys","defaultSelectedKeys","setSelectedKeys","lastSelectedKey","React","cachedSelectedKeys","dataList","useMemo","titleKey","title","generateList","data","push","useEffect","onExpand","newExpandedKeys","info","onChange","e","value","target","map","indexOf","filter","self","resizeObserver","ResizeObserver","current","offsetHeight","observe","box","disconnect","onSelect","keys","event","multiple","nativeEvent","newEvent","selected","ctrlPick","ctrlKey","metaKey","shiftPick","shiftKey","newSelectedKeys","selectedNodes","convertDirectoryKeysToNodes","Array","from","Set","calcRangeKeys","startKey","endKey","newTreeData","loop","strTitle","index","beforeStr","substring","afterStr","slice","marginBottom","showLeafIcon","nodeData","menuList","visible","label","stopPropagation","onClick","icon","propTypes","PropTypes","bool","string","array","func"],"sources":["vtx-tree/index.jsx"],"sourcesContent":["import React, { useEffect, useMemo, useRef, useState } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { Input, Tooltip, Tree } from 'antd';\r\nimport { DownOutlined } from '@ant-design/icons';\r\nimport { calcRangeKeys, convertDirectoryKeysToNodes } from './utils';\r\n\r\nconst getParentKey = (key, tree) => {\r\n let parentKey;\r\n for (let i = 0; i < tree.length; i++) {\r\n const node = tree[i];\r\n if (node.children) {\r\n if (node.children.some(item => item.key === key)) {\r\n parentKey = node.key;\r\n } else if (getParentKey(key, node.children)) {\r\n parentKey = getParentKey(key, node.children);\r\n }\r\n }\r\n }\r\n return parentKey;\r\n};\r\n\r\nconst VtxTree = ({\r\n prefixCls = 'vtx-tree',\r\n showSearch = true,\r\n treeData = [],\r\n searchPlaceholder = '请输入要查询的关键字',\r\n renderMenuList,\r\n fieldNames,\r\n ...props\r\n}) => {\r\n const treeRef = useRef();\r\n const [height, setHeight] = useState(0);\r\n const [searchValue, setSearchValue] = useState('');\r\n const [expandedKeys, setExpandedKeys] = useState([]);\r\n const [autoExpandParent, setAutoExpandParent] = useState(props.autoExpandParent || false);\r\n const [selectedKeys, setSelectedKeys] = useState(\r\n props.selectedKeys || props.defaultSelectedKeys || [],\r\n );\r\n\r\n const lastSelectedKey = React.useRef();\r\n\r\n const cachedSelectedKeys = React.useRef();\r\n\r\n const dataList = useMemo(() => {\r\n let dataList = [];\r\n const titleKey = fieldNames?.title || 'title';\r\n const generateList = data => {\r\n for (let i = 0; i < data.length; i++) {\r\n const node = data[i];\r\n const { key } = node;\r\n dataList.push({ key, title: node[titleKey] });\r\n if (node.children) {\r\n generateList(node.children);\r\n }\r\n }\r\n };\r\n generateList(treeData);\r\n return dataList;\r\n }, [treeData]);\r\n\r\n useEffect(() => {\r\n if ('selectedKeys' in props) {\r\n setSelectedKeys(props.selectedKeys);\r\n }\r\n }, [props.selectedKeys]);\r\n\r\n useEffect(() => {\r\n if ('expandedKeys' in props) {\r\n setExpandedKeys(props.expandedKeys);\r\n }\r\n }, [props.expandedKeys]);\r\n\r\n const onExpand = (newExpandedKeys, info) => {\r\n setAutoExpandParent(false);\r\n props.onExpand?.(newExpandedKeys, info);\r\n if (!('expandedKeys' in props)) {\r\n setExpandedKeys(newExpandedKeys);\r\n }\r\n };\r\n\r\n const onChange = e => {\r\n const { value } = e.target;\r\n const newExpandedKeys = dataList\r\n .map(item => {\r\n if (item.title.indexOf(value) > -1) {\r\n return getParentKey(item.key, treeData);\r\n }\r\n return null;\r\n })\r\n .filter((item, i, self) => item && self.indexOf(item) === i);\r\n setSearchValue(value);\r\n setAutoExpandParent(true);\r\n props.onExpand?.(newExpandedKeys);\r\n if (!('expandedKeys' in props)) {\r\n setExpandedKeys(newExpandedKeys);\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n const resizeObserver = new ResizeObserver(() => {\r\n setHeight(treeRef.current.offsetHeight);\r\n });\r\n if (treeRef.current) {\r\n resizeObserver.observe(treeRef.current, {\r\n box: 'border-box',\r\n });\r\n }\r\n setHeight(treeRef.current.offsetHeight);\r\n return () => {\r\n resizeObserver.disconnect();\r\n }\r\n }, []);\r\n\r\n const onSelect = (keys, event) => {\r\n const { multiple } = props;\r\n const { node, nativeEvent } = event;\r\n const { key = '' } = node;\r\n // const newState: DirectoryTreeState = {};\r\n\r\n // We need wrap this event since some value is not same\r\n const newEvent = {\r\n ...event,\r\n selected: true, // Directory selected always true\r\n };\r\n\r\n // Windows / Mac single pick\r\n const ctrlPick = nativeEvent?.ctrlKey || nativeEvent?.metaKey;\r\n const shiftPick = nativeEvent?.shiftKey;\r\n\r\n // Generate new selected keys\r\n let newSelectedKeys;\r\n if (multiple && ctrlPick) {\r\n // Control click\r\n newSelectedKeys = keys;\r\n lastSelectedKey.current = key;\r\n cachedSelectedKeys.current = newSelectedKeys;\r\n newEvent.selectedNodes = convertDirectoryKeysToNodes(treeData, newSelectedKeys);\r\n } else if (multiple && shiftPick) {\r\n // Shift click\r\n newSelectedKeys = Array.from(\r\n new Set([\r\n ...(cachedSelectedKeys.current || []),\r\n ...calcRangeKeys({\r\n treeData,\r\n expandedKeys,\r\n startKey: key,\r\n endKey: lastSelectedKey.current,\r\n }),\r\n ]),\r\n );\r\n newEvent.selectedNodes = convertDirectoryKeysToNodes(treeData, newSelectedKeys);\r\n } else {\r\n // Single click\r\n newSelectedKeys = [key];\r\n lastSelectedKey.current = key;\r\n cachedSelectedKeys.current = newSelectedKeys;\r\n newEvent.selectedNodes = convertDirectoryKeysToNodes(treeData, newSelectedKeys);\r\n }\r\n\r\n props.onSelect?.(newSelectedKeys, newEvent);\r\n if (!('selectedKeys' in props)) {\r\n setSelectedKeys(newSelectedKeys);\r\n }\r\n };\r\n\r\n const newTreeData = useMemo(() => {\r\n const loop = data =>\r\n data.map(item => {\r\n const titleKey = fieldNames?.title || 'title';\r\n const strTitle = item[titleKey];\r\n const index = strTitle.indexOf(searchValue);\r\n const beforeStr = strTitle.substring(0, index);\r\n const afterStr = strTitle.slice(index + searchValue.length);\r\n const title =\r\n index > -1 ? (\r\n <span>\r\n {beforeStr}\r\n <span className={`${prefixCls}-search-value`}>{searchValue}</span>\r\n {afterStr}\r\n </span>\r\n ) : (\r\n <span>{strTitle}</span>\r\n );\r\n if (item.children) {\r\n return {\r\n ...item,\r\n [titleKey]: title,\r\n key: item.key,\r\n children: loop(item.children),\r\n };\r\n }\r\n\r\n return {\r\n ...item,\r\n [titleKey]: title,\r\n key: item.key,\r\n };\r\n });\r\n return loop(treeData);\r\n }, [treeData, searchValue]);\r\n return (\r\n <div className={`${prefixCls}-wraaper`}>\r\n {showSearch && (\r\n <Input\r\n style={{ marginBottom: 8 }}\r\n placeholder={searchPlaceholder}\r\n onChange={onChange}\r\n />\r\n )}\r\n <div className={prefixCls} ref={treeRef}>\r\n <Tree\r\n {...props}\r\n height={height}\r\n switcherIcon={<DownOutlined />}\r\n showLine={{ showLeafIcon: false }}\r\n blockNode\r\n treeData={newTreeData}\r\n onExpand={onExpand}\r\n expandedKeys={expandedKeys}\r\n autoExpandParent={autoExpandParent}\r\n selectedKeys={selectedKeys}\r\n onSelect={onSelect}\r\n expandAction=\"click\"\r\n titleRender={nodeData => {\r\n const titleKey = fieldNames?.title || 'title';\r\n const title = nodeData[titleKey];\r\n\r\n if (renderMenuList) {\r\n const menuList = renderMenuList(nodeData);\r\n return (\r\n <div className={`${prefixCls}-menu-wrap`}>\r\n <span>{title}</span>\r\n <div className={`${prefixCls}-menu-list`}>\r\n {menuList\r\n .filter(item => item.visible)\r\n .map(item => (\r\n <Tooltip key={item.label} title={item.label}>\r\n <span\r\n className={`${prefixCls}-menu-item-icon`}\r\n onClick={e => {\r\n e.stopPropagation();\r\n item.onClick && item.onClick(nodeData);\r\n }}\r\n >\r\n {item.icon}\r\n </span>\r\n </Tooltip>\r\n ))}\r\n </div>\r\n </div>\r\n );\r\n }\r\n return title;\r\n }}\r\n />\r\n </div>\r\n </div>\r\n );\r\n};\r\n\r\nVtxTree.propTypes = {\r\n showSearch: PropTypes.bool,\r\n prefixCls: PropTypes.string,\r\n treeData: PropTypes.array,\r\n selectedKeys: PropTypes.array,\r\n defaultSelectedKeys: PropTypes.array,\r\n expandedKeys: PropTypes.bool,\r\n onExpand: PropTypes.func,\r\n multiple: PropTypes.bool,\r\n autoExpandParent: PropTypes.bool,\r\n onSelect: PropTypes.func,\r\n searchPlaceholder: PropTypes.string,\r\n renderMenuList: PropTypes.func,\r\n fieldNames: PropTypes.array,\r\n};\r\n\r\nexport default VtxTree;\r\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["getParentKey","key","tree","parentKey","i","length","node","children","some","item","VtxTree","ref","prefixCls","showSearch","treeData","searchPlaceholder","renderMenuList","fieldNames","props","treeRef","useRef","useState","height","setHeight","searchValue","setSearchValue","expandedKeys","setExpandedKeys","autoExpandParent","setAutoExpandParent","selectedKeys","defaultSelectedKeys","setSelectedKeys","lastSelectedKey","React","cachedSelectedKeys","dataList","useMemo","titleKey","title","generateList","data","push","useEffect","onExpand","newExpandedKeys","info","onSearch","useMemoizedFn","value","map","indexOf","filter","self","useImperativeHandle","resizeObserver","ResizeObserver","current","offsetHeight","observe","box","disconnect","onSelect","keys","event","multiple","nativeEvent","newEvent","selected","ctrlPick","ctrlKey","metaKey","shiftPick","shiftKey","newSelectedKeys","selectedNodes","convertDirectoryKeysToNodes","Array","from","Set","calcRangeKeys","startKey","endKey","newTreeData","loop","strTitle","index","beforeStr","substring","afterStr","slice","marginBottom","e","target","showLeafIcon","nodeData","menuList","visible","label","stopPropagation","onClick","icon","propTypes","PropTypes","bool","string","array","func","forwardRef"],"sources":["vtx-tree/index.jsx"],"sourcesContent":["import React, { forwardRef, useEffect, useImperativeHandle, useMemo, useRef, useState } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { Input, Tooltip, Tree } from 'antd';\r\nimport { DownOutlined } from '@ant-design/icons';\r\nimport { calcRangeKeys, convertDirectoryKeysToNodes } from './utils';\r\nimport { useMemoizedFn } from 'ahooks';\r\n\r\nconst getParentKey = (key, tree) => {\r\n let parentKey;\r\n for (let i = 0; i < tree.length; i++) {\r\n const node = tree[i];\r\n if (node.children) {\r\n if (node.children.some(item => item.key === key)) {\r\n parentKey = node.key;\r\n } else if (getParentKey(key, node.children)) {\r\n parentKey = getParentKey(key, node.children);\r\n }\r\n }\r\n }\r\n return parentKey;\r\n};\r\n\r\nconst VtxTree = ({\r\n prefixCls = 'vtx-tree',\r\n showSearch = true,\r\n treeData = [],\r\n searchPlaceholder = '请输入要查询的关键字',\r\n renderMenuList,\r\n fieldNames,\r\n ...props\r\n}, ref) => {\r\n const treeRef = useRef();\r\n const [height, setHeight] = useState(0);\r\n const [searchValue, setSearchValue] = useState('');\r\n const [expandedKeys, setExpandedKeys] = useState([]);\r\n const [autoExpandParent, setAutoExpandParent] = useState(props.autoExpandParent || false);\r\n const [selectedKeys, setSelectedKeys] = useState(\r\n props.selectedKeys || props.defaultSelectedKeys || [],\r\n );\r\n\r\n const lastSelectedKey = React.useRef();\r\n\r\n const cachedSelectedKeys = React.useRef();\r\n\r\n const dataList = useMemo(() => {\r\n let dataList = [];\r\n const titleKey = fieldNames?.title || 'title';\r\n const generateList = data => {\r\n for (let i = 0; i < data.length; i++) {\r\n const node = data[i];\r\n const { key } = node;\r\n dataList.push({ key, title: node[titleKey] });\r\n if (node.children) {\r\n generateList(node.children);\r\n }\r\n }\r\n };\r\n generateList(treeData);\r\n return dataList;\r\n }, [treeData]);\r\n\r\n useEffect(() => {\r\n if ('selectedKeys' in props) {\r\n setSelectedKeys(props.selectedKeys);\r\n }\r\n }, [props.selectedKeys]);\r\n\r\n useEffect(() => {\r\n if ('expandedKeys' in props) {\r\n setExpandedKeys(props.expandedKeys);\r\n }\r\n }, [props.expandedKeys]);\r\n\r\n const onExpand = (newExpandedKeys, info) => {\r\n setAutoExpandParent(false);\r\n props.onExpand?.(newExpandedKeys, info);\r\n if (!('expandedKeys' in props)) {\r\n setExpandedKeys(newExpandedKeys);\r\n }\r\n };\r\n\r\n const onSearch = useMemoizedFn(value => {\r\n const newExpandedKeys = dataList\r\n .map(item => {\r\n if (item.title.indexOf(value) > -1) {\r\n return getParentKey(item.key, treeData);\r\n }\r\n return null;\r\n })\r\n .filter((item, i, self) => item && self.indexOf(item) === i);\r\n setSearchValue(value);\r\n setAutoExpandParent(true);\r\n props.onExpand?.(newExpandedKeys);\r\n if (!('expandedKeys' in props)) {\r\n setExpandedKeys(newExpandedKeys);\r\n }\r\n });\r\n\r\n useImperativeHandle(ref, () => ({\r\n onSearch,\r\n }));\r\n\r\n useEffect(() => {\r\n const resizeObserver = new ResizeObserver(() => {\r\n setHeight(treeRef.current.offsetHeight);\r\n });\r\n if (treeRef.current) {\r\n resizeObserver.observe(treeRef.current, {\r\n box: 'border-box',\r\n });\r\n }\r\n setHeight(treeRef.current.offsetHeight);\r\n return () => {\r\n resizeObserver.disconnect();\r\n }\r\n }, []);\r\n\r\n const onSelect = (keys, event) => {\r\n const { multiple } = props;\r\n const { node, nativeEvent } = event;\r\n const { key = '' } = node;\r\n // const newState: DirectoryTreeState = {};\r\n\r\n // We need wrap this event since some value is not same\r\n const newEvent = {\r\n ...event,\r\n selected: true, // Directory selected always true\r\n };\r\n\r\n // Windows / Mac single pick\r\n const ctrlPick = nativeEvent?.ctrlKey || nativeEvent?.metaKey;\r\n const shiftPick = nativeEvent?.shiftKey;\r\n\r\n // Generate new selected keys\r\n let newSelectedKeys;\r\n if (multiple && ctrlPick) {\r\n // Control click\r\n newSelectedKeys = keys;\r\n lastSelectedKey.current = key;\r\n cachedSelectedKeys.current = newSelectedKeys;\r\n newEvent.selectedNodes = convertDirectoryKeysToNodes(treeData, newSelectedKeys);\r\n } else if (multiple && shiftPick) {\r\n // Shift click\r\n newSelectedKeys = Array.from(\r\n new Set([\r\n ...(cachedSelectedKeys.current || []),\r\n ...calcRangeKeys({\r\n treeData,\r\n expandedKeys,\r\n startKey: key,\r\n endKey: lastSelectedKey.current,\r\n }),\r\n ]),\r\n );\r\n newEvent.selectedNodes = convertDirectoryKeysToNodes(treeData, newSelectedKeys);\r\n } else {\r\n // Single click\r\n newSelectedKeys = [key];\r\n lastSelectedKey.current = key;\r\n cachedSelectedKeys.current = newSelectedKeys;\r\n newEvent.selectedNodes = convertDirectoryKeysToNodes(treeData, newSelectedKeys);\r\n }\r\n\r\n props.onSelect?.(newSelectedKeys, newEvent);\r\n if (!('selectedKeys' in props)) {\r\n setSelectedKeys(newSelectedKeys);\r\n }\r\n };\r\n\r\n const newTreeData = useMemo(() => {\r\n const loop = data =>\r\n data.map(item => {\r\n const titleKey = fieldNames?.title || 'title';\r\n const strTitle = item[titleKey];\r\n const index = strTitle.indexOf(searchValue);\r\n const beforeStr = strTitle.substring(0, index);\r\n const afterStr = strTitle.slice(index + searchValue.length);\r\n const title =\r\n index > -1 ? (\r\n <span>\r\n {beforeStr}\r\n <span className={`${prefixCls}-search-value`}>{searchValue}</span>\r\n {afterStr}\r\n </span>\r\n ) : (\r\n <span>{strTitle}</span>\r\n );\r\n if (item.children) {\r\n return {\r\n ...item,\r\n [titleKey]: title,\r\n key: item.key,\r\n children: loop(item.children),\r\n };\r\n }\r\n\r\n return {\r\n ...item,\r\n [titleKey]: title,\r\n key: item.key,\r\n };\r\n });\r\n return loop(treeData);\r\n }, [treeData, searchValue]);\r\n return (\r\n <div className={`${prefixCls}-wraaper`}>\r\n {showSearch && (\r\n <Input\r\n style={{ marginBottom: 8 }}\r\n placeholder={searchPlaceholder}\r\n onChange={(e) => onSearch(e.target.value)}\r\n />\r\n )}\r\n <div className={prefixCls} ref={treeRef}>\r\n <Tree\r\n {...props}\r\n height={height}\r\n switcherIcon={<DownOutlined />}\r\n showLine={{ showLeafIcon: false }}\r\n blockNode\r\n treeData={newTreeData}\r\n onExpand={onExpand}\r\n expandedKeys={expandedKeys}\r\n autoExpandParent={autoExpandParent}\r\n selectedKeys={selectedKeys}\r\n onSelect={onSelect}\r\n expandAction=\"click\"\r\n titleRender={nodeData => {\r\n const titleKey = fieldNames?.title || 'title';\r\n const title = nodeData[titleKey];\r\n\r\n if (renderMenuList) {\r\n const menuList = renderMenuList(nodeData);\r\n return (\r\n <div className={`${prefixCls}-menu-wrap`}>\r\n <span>{title}</span>\r\n <div className={`${prefixCls}-menu-list`}>\r\n {menuList\r\n .filter(item => item.visible)\r\n .map(item => (\r\n <Tooltip key={item.label} title={item.label}>\r\n <span\r\n className={`${prefixCls}-menu-item-icon`}\r\n onClick={e => {\r\n e.stopPropagation();\r\n item.onClick && item.onClick(nodeData);\r\n }}\r\n >\r\n {item.icon}\r\n </span>\r\n </Tooltip>\r\n ))}\r\n </div>\r\n </div>\r\n );\r\n }\r\n return title;\r\n }}\r\n />\r\n </div>\r\n </div>\r\n );\r\n};\r\n\r\nVtxTree.propTypes = {\r\n showSearch: PropTypes.bool,\r\n prefixCls: PropTypes.string,\r\n treeData: PropTypes.array,\r\n selectedKeys: PropTypes.array,\r\n defaultSelectedKeys: PropTypes.array,\r\n expandedKeys: PropTypes.bool,\r\n onExpand: PropTypes.func,\r\n multiple: PropTypes.bool,\r\n autoExpandParent: PropTypes.bool,\r\n onSelect: PropTypes.func,\r\n searchPlaceholder: PropTypes.string,\r\n renderMenuList: PropTypes.func,\r\n fieldNames: PropTypes.array,\r\n};\r\n\r\nexport default forwardRef(VtxTree);\r\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vtx/components",
3
- "version": "3.1.117",
3
+ "version": "3.1.118",
4
4
  "description": "React components for Vortex",
5
5
  "keywords": [
6
6
  "react",