{"version":3,"file":"objects.mjs","sources":["../../../../packages/utils/objects.ts"],"sourcesContent":["import { get, set } from 'lodash'\r\nimport type { Entries } from 'type-fest'\r\nimport type { Arrayable } from './types'\r\n\r\nexport const keysOf = <T extends Object>(arr: T) => Object.keys(arr) as Array<keyof T>\r\nexport const entriesOf = <T extends Object>(arr: T) => Object.entries(arr) as Entries<T>\r\nexport { hasOwn } from '@vue/shared'\r\n\r\nexport const getProp = <T = any>(\r\n  obj: Record<string, any>,\r\n  path: Arrayable<string>,\r\n  defaultValue?: any\r\n): { value: T } => {\r\n  return {\r\n    get value() {\r\n      return get(obj, path, defaultValue)\r\n    },\r\n    set value(val: any) {\r\n      set(obj, path, val)\r\n    },\r\n  }\r\n}\r\n"],"names":[],"mappings":";;;AACY,MAAC,MAAM,GAAG,CAAC,GAAG,KAAK,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE;AACpC,MAAC,SAAS,GAAG,CAAC,GAAG,KAAK,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE;AAE1C,MAAC,OAAO,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,YAAY,KAAK;AACpD,EAAE,OAAO;AACT,IAAI,IAAI,KAAK,GAAG;AAChB,MAAM,OAAO,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;AAC1C,KAAK;AACL,IAAI,IAAI,KAAK,CAAC,GAAG,EAAE;AACnB,MAAM,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;AAC1B,KAAK;AACL,GAAG,CAAC;AACJ;;;;"}