{"version":3,"file":"strategyUtil.cjs","sources":["../../../../../../../packages/vue-components/vc-tree-select/src/utils/strategyUtil.ts"],"sourcesContent":["import type { Key } from '@antdv/types';\nimport type { DataEntity } from '../../../vc-tree/src/interface';\nimport type { RawValueType } from '../interface';\nimport type { InternalFieldName } from '../TreeSelect';\nimport { isCheckDisabled } from './valueUtil';\n\nexport const SHOW_ALL = 'SHOW_ALL';\nexport const SHOW_PARENT = 'SHOW_PARENT';\nexport const SHOW_CHILD = 'SHOW_CHILD';\n\nexport type CheckedStrategy = typeof SHOW_ALL | typeof SHOW_PARENT | typeof SHOW_CHILD;\n\nexport function formatStrategyValues(\n  values: Key[],\n  strategy: CheckedStrategy,\n  keyEntities: Record<Key, DataEntity>,\n  fieldNames: InternalFieldName,\n): RawValueType[] {\n  const valueSet = new Set(values);\n\n  if (strategy === SHOW_CHILD) {\n    return values.filter((key) => {\n      const entity = keyEntities[key];\n\n      if (\n        entity\n        && entity.children\n        && entity.children.some(({ node }) => valueSet.has(node[fieldNames.value]))\n        && entity.children.every(\n          ({ node }) => isCheckDisabled(node) || valueSet.has(node[fieldNames.value]),\n        )\n      ) {\n        return false;\n      }\n\n      return true;\n    });\n  }\n  if (strategy === SHOW_PARENT) {\n    return values.filter((key) => {\n      const entity = keyEntities[key];\n      const parent = entity ? entity.parent : null;\n      if (parent && !isCheckDisabled(parent.node) && valueSet.has(parent.key))\n        return false;\n\n      return true;\n    });\n  }\n  return values;\n}\n"],"names":["isCheckDisabled"],"mappings":";;;;AAMO,MAAM,QAAW,GAAA,WAAA;AACjB,MAAM,WAAc,GAAA,cAAA;AACpB,MAAM,UAAa,GAAA,aAAA;AAInB,SAAS,oBACd,CAAA,MAAA,EACA,QACA,EAAA,WAAA,EACA,UACgB,EAAA;AAChB,EAAM,MAAA,QAAA,GAAW,IAAI,GAAA,CAAI,MAAM,CAAA,CAAA;AAE/B,EAAA,IAAI,aAAa,UAAY,EAAA;AAC3B,IAAO,OAAA,MAAA,CAAO,MAAO,CAAA,CAAC,GAAQ,KAAA;AAC5B,MAAM,MAAA,MAAA,GAAS,YAAY,GAAG,CAAA,CAAA;AAE9B,MAAA,IACE,UACG,MAAO,CAAA,QAAA,IACP,OAAO,QAAS,CAAA,IAAA,CAAK,CAAC,EAAE,IAAA,OAAW,QAAS,CAAA,GAAA,CAAI,KAAK,UAAW,CAAA,KAAK,CAAC,CAAC,CAAA,IACvE,OAAO,QAAS,CAAA,KAAA;AAAA,QACjB,CAAC,EAAE,IAAK,EAAA,KAAMA,yBAAgB,CAAA,IAAI,CAAK,IAAA,QAAA,CAAS,GAAI,CAAA,IAAA,CAAK,UAAW,CAAA,KAAK,CAAC,CAAA;AAAA,OAE5E,EAAA;AACA,QAAO,OAAA,KAAA,CAAA;AAAA,OACT;AAEA,MAAO,OAAA,IAAA,CAAA;AAAA,KACR,CAAA,CAAA;AAAA,GACH;AACA,EAAA,IAAI,aAAa,WAAa,EAAA;AAC5B,IAAO,OAAA,MAAA,CAAO,MAAO,CAAA,CAAC,GAAQ,KAAA;AAC5B,MAAM,MAAA,MAAA,GAAS,YAAY,GAAG,CAAA,CAAA;AAC9B,MAAM,MAAA,MAAA,GAAS,MAAS,GAAA,MAAA,CAAO,MAAS,GAAA,IAAA,CAAA;AACxC,MAAI,IAAA,MAAA,IAAU,CAACA,yBAAgB,CAAA,MAAA,CAAO,IAAI,CAAK,IAAA,QAAA,CAAS,GAAI,CAAA,MAAA,CAAO,GAAG,CAAA;AACpE,QAAO,OAAA,KAAA,CAAA;AAET,MAAO,OAAA,IAAA,CAAA;AAAA,KACR,CAAA,CAAA;AAAA,GACH;AACA,EAAO,OAAA,MAAA,CAAA;AACT;;;;;;;"}