{"ast":null,"code":"\"use client\";\n\nimport DownOutlined from \"@ant-design/icons/es/icons/DownOutlined\";\nimport classNames from 'classnames';\nimport omit from \"rc-util/es/omit\";\nimport React, { useMemo, useRef, useState } from 'react';\nimport { isValidElement } from '../_util/reactNode';\nimport { groupKeysMap } from '../_util/transKeys';\nimport Checkbox from '../checkbox';\nimport Dropdown from '../dropdown';\nimport DefaultListBody, { OmitProps } from './ListBody';\nimport Search from './search';\nconst defaultRender = () => null;\nfunction isRenderResultPlainObject(result) {\n  return !!(result && !isValidElement(result) && Object.prototype.toString.call(result) === '[object Object]');\n}\nfunction getEnabledItemKeys(items) {\n  return items.filter(data => !data.disabled).map(data => data.key);\n}\nconst isValidIcon = icon => icon !== undefined;\nconst TransferList = props => {\n  const {\n    prefixCls,\n    dataSource = [],\n    titleText = '',\n    checkedKeys,\n    disabled,\n    showSearch = false,\n    style,\n    searchPlaceholder,\n    notFoundContent,\n    selectAll,\n    selectCurrent,\n    selectInvert,\n    removeAll,\n    removeCurrent,\n    showSelectAll = true,\n    showRemove,\n    pagination,\n    direction,\n    itemsUnit,\n    itemUnit,\n    selectAllLabel,\n    selectionsIcon,\n    footer,\n    renderList,\n    onItemSelectAll,\n    onItemRemove,\n    handleFilter,\n    handleClear,\n    filterOption,\n    render = defaultRender\n  } = props;\n  const [filterValue, setFilterValue] = useState('');\n  const listBodyRef = useRef({});\n  const internalHandleFilter = e => {\n    setFilterValue(e.target.value);\n    handleFilter(e);\n  };\n  const internalHandleClear = () => {\n    setFilterValue('');\n    handleClear();\n  };\n  const matchFilter = (text, item) => {\n    if (filterOption) {\n      return filterOption(filterValue, item, direction);\n    }\n    return text.includes(filterValue);\n  };\n  const renderListBody = listProps => {\n    let bodyContent = renderList ? renderList(listProps) : null;\n    const customize = !!bodyContent;\n    if (!customize) {\n      bodyContent = /*#__PURE__*/React.createElement(DefaultListBody, Object.assign({\n        ref: listBodyRef\n      }, listProps));\n    }\n    return {\n      customize,\n      bodyContent\n    };\n  };\n  const renderItem = item => {\n    const renderResult = render(item);\n    const isRenderResultPlain = isRenderResultPlainObject(renderResult);\n    return {\n      item,\n      renderedEl: isRenderResultPlain ? renderResult.label : renderResult,\n      renderedText: isRenderResultPlain ? renderResult.value : renderResult\n    };\n  };\n  const notFoundContentEle = useMemo(() => Array.isArray(notFoundContent) ? notFoundContent[direction === 'left' ? 0 : 1] : notFoundContent, [notFoundContent, direction]);\n  const [filteredItems, filteredRenderItems] = useMemo(() => {\n    const filterItems = [];\n    const filterRenderItems = [];\n    dataSource.forEach(item => {\n      const renderedItem = renderItem(item);\n      if (filterValue && !matchFilter(renderedItem.renderedText, item)) {\n        return;\n      }\n      filterItems.push(item);\n      filterRenderItems.push(renderedItem);\n    });\n    return [filterItems, filterRenderItems];\n  }, [dataSource, filterValue]);\n  const checkStatus = useMemo(() => {\n    if (checkedKeys.length === 0) {\n      return 'none';\n    }\n    const checkedKeysMap = groupKeysMap(checkedKeys);\n    if (filteredItems.every(item => checkedKeysMap.has(item.key) || !!item.disabled)) {\n      return 'all';\n    }\n    return 'part';\n  }, [checkedKeys, filteredItems]);\n  const listBody = useMemo(() => {\n    const search = showSearch ? /*#__PURE__*/React.createElement(\"div\", {\n      className: `${prefixCls}-body-search-wrapper`\n    }, /*#__PURE__*/React.createElement(Search, {\n      prefixCls: `${prefixCls}-search`,\n      onChange: internalHandleFilter,\n      handleClear: internalHandleClear,\n      placeholder: searchPlaceholder,\n      value: filterValue,\n      disabled: disabled\n    })) : null;\n    const {\n      customize,\n      bodyContent\n    } = renderListBody(Object.assign(Object.assign({}, omit(props, OmitProps)), {\n      filteredItems,\n      filteredRenderItems,\n      selectedKeys: checkedKeys\n    }));\n    let bodyNode;\n    // We should wrap customize list body in a classNamed div to use flex layout.\n    if (customize) {\n      bodyNode = /*#__PURE__*/React.createElement(\"div\", {\n        className: `${prefixCls}-body-customize-wrapper`\n      }, bodyContent);\n    } else {\n      bodyNode = filteredItems.length ? bodyContent : /*#__PURE__*/React.createElement(\"div\", {\n        className: `${prefixCls}-body-not-found`\n      }, notFoundContentEle);\n    }\n    return /*#__PURE__*/React.createElement(\"div\", {\n      className: classNames(showSearch ? `${prefixCls}-body ${prefixCls}-body-with-search` : `${prefixCls}-body`)\n    }, search, bodyNode);\n  }, [showSearch, prefixCls, searchPlaceholder, filterValue, disabled, checkedKeys, filteredItems, filteredRenderItems, notFoundContentEle]);\n  const checkBox = /*#__PURE__*/React.createElement(Checkbox, {\n    disabled: dataSource.length === 0 || disabled,\n    checked: checkStatus === 'all',\n    indeterminate: checkStatus === 'part',\n    className: `${prefixCls}-checkbox`,\n    onChange: () => {\n      // Only select enabled items\n      onItemSelectAll === null || onItemSelectAll === void 0 ? void 0 : onItemSelectAll(filteredItems.filter(item => !item.disabled).map(_ref => {\n        let {\n          key\n        } = _ref;\n        return key;\n      }), checkStatus !== 'all');\n    }\n  });\n  const getSelectAllLabel = (selectedCount, totalCount) => {\n    if (selectAllLabel) {\n      return typeof selectAllLabel === 'function' ? selectAllLabel({\n        selectedCount,\n        totalCount\n      }) : selectAllLabel;\n    }\n    const unit = totalCount > 1 ? itemsUnit : itemUnit;\n    return /*#__PURE__*/React.createElement(React.Fragment, null, (selectedCount > 0 ? `${selectedCount}/` : '') + totalCount, \" \", unit);\n  };\n  // Custom Layout\n  const footerDom = footer && (footer.length < 2 ? footer(props) : footer(props, {\n    direction\n  }));\n  const listCls = classNames(prefixCls, {\n    [`${prefixCls}-with-pagination`]: !!pagination,\n    [`${prefixCls}-with-footer`]: !!footerDom\n  });\n  // ====================== Get filtered, checked item list ======================\n  const listFooter = footerDom ? /*#__PURE__*/React.createElement(\"div\", {\n    className: `${prefixCls}-footer`\n  }, footerDom) : null;\n  const checkAllCheckbox = !showRemove && !pagination && checkBox;\n  let items;\n  if (showRemove) {\n    items = [/* Remove Current Page */\n    pagination ? {\n      key: 'removeCurrent',\n      label: removeCurrent,\n      onClick() {\n        var _a;\n        const pageKeys = getEnabledItemKeys((((_a = listBodyRef.current) === null || _a === void 0 ? void 0 : _a.items) || []).map(entity => entity.item));\n        onItemRemove === null || onItemRemove === void 0 ? void 0 : onItemRemove(pageKeys);\n      }\n    } : null, /* Remove All */\n    {\n      key: 'removeAll',\n      label: removeAll,\n      onClick() {\n        onItemRemove === null || onItemRemove === void 0 ? void 0 : onItemRemove(getEnabledItemKeys(filteredItems));\n      }\n    }].filter(Boolean);\n  } else {\n    items = [{\n      key: 'selectAll',\n      label: selectAll,\n      onClick() {\n        const keys = getEnabledItemKeys(filteredItems);\n        onItemSelectAll === null || onItemSelectAll === void 0 ? void 0 : onItemSelectAll(keys, keys.length !== checkedKeys.length);\n      }\n    }, pagination ? {\n      key: 'selectCurrent',\n      label: selectCurrent,\n      onClick() {\n        var _a;\n        const pageItems = ((_a = listBodyRef.current) === null || _a === void 0 ? void 0 : _a.items) || [];\n        onItemSelectAll === null || onItemSelectAll === void 0 ? void 0 : onItemSelectAll(getEnabledItemKeys(pageItems.map(entity => entity.item)), true);\n      }\n    } : null, {\n      key: 'selectInvert',\n      label: selectInvert,\n      onClick() {\n        var _a;\n        const availableKeys = getEnabledItemKeys(pagination ? (((_a = listBodyRef.current) === null || _a === void 0 ? void 0 : _a.items) || []).map(entity => entity.item) : filteredItems);\n        const checkedKeySet = new Set(checkedKeys);\n        const newCheckedKeys = [];\n        const newUnCheckedKeys = [];\n        availableKeys.forEach(key => {\n          if (checkedKeySet.has(key)) {\n            newUnCheckedKeys.push(key);\n          } else {\n            newCheckedKeys.push(key);\n          }\n        });\n        onItemSelectAll === null || onItemSelectAll === void 0 ? void 0 : onItemSelectAll(newCheckedKeys, 'replace');\n      }\n    }];\n  }\n  const dropdown = /*#__PURE__*/React.createElement(Dropdown, {\n    className: `${prefixCls}-header-dropdown`,\n    menu: {\n      items\n    },\n    disabled: disabled\n  }, isValidIcon(selectionsIcon) ? selectionsIcon : /*#__PURE__*/React.createElement(DownOutlined, null));\n  return /*#__PURE__*/React.createElement(\"div\", {\n    className: listCls,\n    style: style\n  }, /*#__PURE__*/React.createElement(\"div\", {\n    className: `${prefixCls}-header`\n  }, showSelectAll ? /*#__PURE__*/React.createElement(React.Fragment, null, checkAllCheckbox, dropdown) : null, /*#__PURE__*/React.createElement(\"span\", {\n    className: `${prefixCls}-header-selected`\n  }, getSelectAllLabel(checkedKeys.length, filteredItems.length)), /*#__PURE__*/React.createElement(\"span\", {\n    className: `${prefixCls}-header-title`\n  }, titleText)), listBody, listFooter);\n};\nif (process.env.NODE_ENV !== 'production') {\n  TransferList.displayName = 'TransferList';\n}\nexport default TransferList;","map":{"version":3,"names":["DownOutlined","classNames","omit","React","useMemo","useRef","useState","isValidElement","groupKeysMap","Checkbox","Dropdown","DefaultListBody","OmitProps","Search","defaultRender","isRenderResultPlainObject","result","Object","prototype","toString","call","getEnabledItemKeys","items","filter","data","disabled","map","key","isValidIcon","icon","undefined","TransferList","props","prefixCls","dataSource","titleText","checkedKeys","showSearch","style","searchPlaceholder","notFoundContent","selectAll","selectCurrent","selectInvert","removeAll","removeCurrent","showSelectAll","showRemove","pagination","direction","itemsUnit","itemUnit","selectAllLabel","selectionsIcon","footer","renderList","onItemSelectAll","onItemRemove","handleFilter","handleClear","filterOption","render","filterValue","setFilterValue","listBodyRef","internalHandleFilter","e","target","value","internalHandleClear","matchFilter","text","item","includes","renderListBody","listProps","bodyContent","customize","createElement","assign","ref","renderItem","renderResult","isRenderResultPlain","renderedEl","label","renderedText","notFoundContentEle","Array","isArray","filteredItems","filteredRenderItems","filterItems","filterRenderItems","forEach","renderedItem","push","checkStatus","length","checkedKeysMap","every","has","listBody","search","className","onChange","placeholder","selectedKeys","bodyNode","checkBox","checked","indeterminate","_ref","getSelectAllLabel","selectedCount","totalCount","unit","Fragment","footerDom","listCls","listFooter","checkAllCheckbox","onClick","_a","pageKeys","current","entity","Boolean","keys","pageItems","availableKeys","checkedKeySet","Set","newCheckedKeys","newUnCheckedKeys","dropdown","menu","process","env","NODE_ENV","displayName"],"sources":["/Users/chrishaack/UC_Trains_Voice/react-demo/node_modules/antd/es/transfer/list.js"],"sourcesContent":["\"use client\";\n\nimport DownOutlined from \"@ant-design/icons/es/icons/DownOutlined\";\nimport classNames from 'classnames';\nimport omit from \"rc-util/es/omit\";\nimport React, { useMemo, useRef, useState } from 'react';\nimport { isValidElement } from '../_util/reactNode';\nimport { groupKeysMap } from '../_util/transKeys';\nimport Checkbox from '../checkbox';\nimport Dropdown from '../dropdown';\nimport DefaultListBody, { OmitProps } from './ListBody';\nimport Search from './search';\nconst defaultRender = () => null;\nfunction isRenderResultPlainObject(result) {\n  return !!(result && !isValidElement(result) && Object.prototype.toString.call(result) === '[object Object]');\n}\nfunction getEnabledItemKeys(items) {\n  return items.filter(data => !data.disabled).map(data => data.key);\n}\nconst isValidIcon = icon => icon !== undefined;\nconst TransferList = props => {\n  const {\n    prefixCls,\n    dataSource = [],\n    titleText = '',\n    checkedKeys,\n    disabled,\n    showSearch = false,\n    style,\n    searchPlaceholder,\n    notFoundContent,\n    selectAll,\n    selectCurrent,\n    selectInvert,\n    removeAll,\n    removeCurrent,\n    showSelectAll = true,\n    showRemove,\n    pagination,\n    direction,\n    itemsUnit,\n    itemUnit,\n    selectAllLabel,\n    selectionsIcon,\n    footer,\n    renderList,\n    onItemSelectAll,\n    onItemRemove,\n    handleFilter,\n    handleClear,\n    filterOption,\n    render = defaultRender\n  } = props;\n  const [filterValue, setFilterValue] = useState('');\n  const listBodyRef = useRef({});\n  const internalHandleFilter = e => {\n    setFilterValue(e.target.value);\n    handleFilter(e);\n  };\n  const internalHandleClear = () => {\n    setFilterValue('');\n    handleClear();\n  };\n  const matchFilter = (text, item) => {\n    if (filterOption) {\n      return filterOption(filterValue, item, direction);\n    }\n    return text.includes(filterValue);\n  };\n  const renderListBody = listProps => {\n    let bodyContent = renderList ? renderList(listProps) : null;\n    const customize = !!bodyContent;\n    if (!customize) {\n      bodyContent = /*#__PURE__*/React.createElement(DefaultListBody, Object.assign({\n        ref: listBodyRef\n      }, listProps));\n    }\n    return {\n      customize,\n      bodyContent\n    };\n  };\n  const renderItem = item => {\n    const renderResult = render(item);\n    const isRenderResultPlain = isRenderResultPlainObject(renderResult);\n    return {\n      item,\n      renderedEl: isRenderResultPlain ? renderResult.label : renderResult,\n      renderedText: isRenderResultPlain ? renderResult.value : renderResult\n    };\n  };\n  const notFoundContentEle = useMemo(() => Array.isArray(notFoundContent) ? notFoundContent[direction === 'left' ? 0 : 1] : notFoundContent, [notFoundContent, direction]);\n  const [filteredItems, filteredRenderItems] = useMemo(() => {\n    const filterItems = [];\n    const filterRenderItems = [];\n    dataSource.forEach(item => {\n      const renderedItem = renderItem(item);\n      if (filterValue && !matchFilter(renderedItem.renderedText, item)) {\n        return;\n      }\n      filterItems.push(item);\n      filterRenderItems.push(renderedItem);\n    });\n    return [filterItems, filterRenderItems];\n  }, [dataSource, filterValue]);\n  const checkStatus = useMemo(() => {\n    if (checkedKeys.length === 0) {\n      return 'none';\n    }\n    const checkedKeysMap = groupKeysMap(checkedKeys);\n    if (filteredItems.every(item => checkedKeysMap.has(item.key) || !!item.disabled)) {\n      return 'all';\n    }\n    return 'part';\n  }, [checkedKeys, filteredItems]);\n  const listBody = useMemo(() => {\n    const search = showSearch ? /*#__PURE__*/React.createElement(\"div\", {\n      className: `${prefixCls}-body-search-wrapper`\n    }, /*#__PURE__*/React.createElement(Search, {\n      prefixCls: `${prefixCls}-search`,\n      onChange: internalHandleFilter,\n      handleClear: internalHandleClear,\n      placeholder: searchPlaceholder,\n      value: filterValue,\n      disabled: disabled\n    })) : null;\n    const {\n      customize,\n      bodyContent\n    } = renderListBody(Object.assign(Object.assign({}, omit(props, OmitProps)), {\n      filteredItems,\n      filteredRenderItems,\n      selectedKeys: checkedKeys\n    }));\n    let bodyNode;\n    // We should wrap customize list body in a classNamed div to use flex layout.\n    if (customize) {\n      bodyNode = /*#__PURE__*/React.createElement(\"div\", {\n        className: `${prefixCls}-body-customize-wrapper`\n      }, bodyContent);\n    } else {\n      bodyNode = filteredItems.length ? bodyContent : /*#__PURE__*/React.createElement(\"div\", {\n        className: `${prefixCls}-body-not-found`\n      }, notFoundContentEle);\n    }\n    return /*#__PURE__*/React.createElement(\"div\", {\n      className: classNames(showSearch ? `${prefixCls}-body ${prefixCls}-body-with-search` : `${prefixCls}-body`)\n    }, search, bodyNode);\n  }, [showSearch, prefixCls, searchPlaceholder, filterValue, disabled, checkedKeys, filteredItems, filteredRenderItems, notFoundContentEle]);\n  const checkBox = /*#__PURE__*/React.createElement(Checkbox, {\n    disabled: dataSource.length === 0 || disabled,\n    checked: checkStatus === 'all',\n    indeterminate: checkStatus === 'part',\n    className: `${prefixCls}-checkbox`,\n    onChange: () => {\n      // Only select enabled items\n      onItemSelectAll === null || onItemSelectAll === void 0 ? void 0 : onItemSelectAll(filteredItems.filter(item => !item.disabled).map(_ref => {\n        let {\n          key\n        } = _ref;\n        return key;\n      }), checkStatus !== 'all');\n    }\n  });\n  const getSelectAllLabel = (selectedCount, totalCount) => {\n    if (selectAllLabel) {\n      return typeof selectAllLabel === 'function' ? selectAllLabel({\n        selectedCount,\n        totalCount\n      }) : selectAllLabel;\n    }\n    const unit = totalCount > 1 ? itemsUnit : itemUnit;\n    return /*#__PURE__*/React.createElement(React.Fragment, null, (selectedCount > 0 ? `${selectedCount}/` : '') + totalCount, \" \", unit);\n  };\n  // Custom Layout\n  const footerDom = footer && (footer.length < 2 ? footer(props) : footer(props, {\n    direction\n  }));\n  const listCls = classNames(prefixCls, {\n    [`${prefixCls}-with-pagination`]: !!pagination,\n    [`${prefixCls}-with-footer`]: !!footerDom\n  });\n  // ====================== Get filtered, checked item list ======================\n  const listFooter = footerDom ? /*#__PURE__*/React.createElement(\"div\", {\n    className: `${prefixCls}-footer`\n  }, footerDom) : null;\n  const checkAllCheckbox = !showRemove && !pagination && checkBox;\n  let items;\n  if (showRemove) {\n    items = [/* Remove Current Page */\n    pagination ? {\n      key: 'removeCurrent',\n      label: removeCurrent,\n      onClick() {\n        var _a;\n        const pageKeys = getEnabledItemKeys((((_a = listBodyRef.current) === null || _a === void 0 ? void 0 : _a.items) || []).map(entity => entity.item));\n        onItemRemove === null || onItemRemove === void 0 ? void 0 : onItemRemove(pageKeys);\n      }\n    } : null, /* Remove All */\n    {\n      key: 'removeAll',\n      label: removeAll,\n      onClick() {\n        onItemRemove === null || onItemRemove === void 0 ? void 0 : onItemRemove(getEnabledItemKeys(filteredItems));\n      }\n    }].filter(Boolean);\n  } else {\n    items = [{\n      key: 'selectAll',\n      label: selectAll,\n      onClick() {\n        const keys = getEnabledItemKeys(filteredItems);\n        onItemSelectAll === null || onItemSelectAll === void 0 ? void 0 : onItemSelectAll(keys, keys.length !== checkedKeys.length);\n      }\n    }, pagination ? {\n      key: 'selectCurrent',\n      label: selectCurrent,\n      onClick() {\n        var _a;\n        const pageItems = ((_a = listBodyRef.current) === null || _a === void 0 ? void 0 : _a.items) || [];\n        onItemSelectAll === null || onItemSelectAll === void 0 ? void 0 : onItemSelectAll(getEnabledItemKeys(pageItems.map(entity => entity.item)), true);\n      }\n    } : null, {\n      key: 'selectInvert',\n      label: selectInvert,\n      onClick() {\n        var _a;\n        const availableKeys = getEnabledItemKeys(pagination ? (((_a = listBodyRef.current) === null || _a === void 0 ? void 0 : _a.items) || []).map(entity => entity.item) : filteredItems);\n        const checkedKeySet = new Set(checkedKeys);\n        const newCheckedKeys = [];\n        const newUnCheckedKeys = [];\n        availableKeys.forEach(key => {\n          if (checkedKeySet.has(key)) {\n            newUnCheckedKeys.push(key);\n          } else {\n            newCheckedKeys.push(key);\n          }\n        });\n        onItemSelectAll === null || onItemSelectAll === void 0 ? void 0 : onItemSelectAll(newCheckedKeys, 'replace');\n      }\n    }];\n  }\n  const dropdown = /*#__PURE__*/React.createElement(Dropdown, {\n    className: `${prefixCls}-header-dropdown`,\n    menu: {\n      items\n    },\n    disabled: disabled\n  }, isValidIcon(selectionsIcon) ? selectionsIcon : /*#__PURE__*/React.createElement(DownOutlined, null));\n  return /*#__PURE__*/React.createElement(\"div\", {\n    className: listCls,\n    style: style\n  }, /*#__PURE__*/React.createElement(\"div\", {\n    className: `${prefixCls}-header`\n  }, showSelectAll ? /*#__PURE__*/React.createElement(React.Fragment, null, checkAllCheckbox, dropdown) : null, /*#__PURE__*/React.createElement(\"span\", {\n    className: `${prefixCls}-header-selected`\n  }, getSelectAllLabel(checkedKeys.length, filteredItems.length)), /*#__PURE__*/React.createElement(\"span\", {\n    className: `${prefixCls}-header-title`\n  }, titleText)), listBody, listFooter);\n};\nif (process.env.NODE_ENV !== 'production') {\n  TransferList.displayName = 'TransferList';\n}\nexport default TransferList;"],"mappings":"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"},"metadata":{},"sourceType":"module","externalDependencies":[]}