{"version":3,"file":"getOpenValues.mjs","sources":["../../../../../admin/src/components/SelectTree/utils/getOpenValues.ts"],"sourcesContent":["interface Option {\n  value: number | string | null;\n  parent?: number | string | null;\n}\n\ninterface DefaultValue {\n  value?: number | string | null;\n}\n\nexport function getOpenValues(options: Option[], defaultValue: DefaultValue = {}) {\n  const values: Option['value'][] = [];\n  const { value } = defaultValue;\n  const option = options.find((option) => option.value === value);\n\n  if (!option) {\n    return values;\n  }\n\n  values.push(option.value);\n\n  let { parent } = option;\n\n  while (parent !== undefined) {\n    const option = options.find(({ value }) => value === parent);\n\n    if (!option) {\n      break;\n    }\n\n    values.push(option.value);\n    parent = option.parent;\n  }\n\n  return values.reverse();\n}\n"],"names":["getOpenValues","options","defaultValue","values","value","option","find","push","parent","undefined","reverse"],"mappings":"AASO,SAASA,aAAAA,CAAcC,OAAiB,EAAEC,YAAAA,GAA6B,EAAE,EAAA;AAC9E,IAAA,MAAMC,SAA4B,EAAE;IACpC,MAAM,EAAEC,KAAK,EAAE,GAAGF,YAAAA;IAClB,MAAMG,MAAAA,GAASJ,QAAQK,IAAI,CAAC,CAACD,MAAAA,GAAWA,MAAAA,CAAOD,KAAK,KAAKA,KAAAA,CAAAA;AAEzD,IAAA,IAAI,CAACC,MAAAA,EAAQ;QACX,OAAOF,MAAAA;AACT,IAAA;IAEAA,MAAAA,CAAOI,IAAI,CAACF,MAAAA,CAAOD,KAAK,CAAA;IAExB,IAAI,EAAEI,MAAM,EAAE,GAAGH,MAAAA;AAEjB,IAAA,MAAOG,WAAWC,SAAAA,CAAW;QAC3B,MAAMJ,MAAAA,GAASJ,QAAQK,IAAI,CAAC,CAAC,EAAEF,KAAK,EAAE,GAAKA,KAAAA,KAAUI,MAAAA,CAAAA;AAErD,QAAA,IAAI,CAACH,MAAAA,EAAQ;AACX,YAAA;AACF,QAAA;QAEAF,MAAAA,CAAOI,IAAI,CAACF,MAAAA,CAAOD,KAAK,CAAA;AACxBI,QAAAA,MAAAA,GAASH,OAAOG,MAAM;AACxB,IAAA;AAEA,IAAA,OAAOL,OAAOO,OAAO,EAAA;AACvB;;;;"}