UNPKG

@langchain/core

Version:
1 lines 1.39 kB
{"version":3,"file":"map_keys.cjs","names":["key: string","map?: SerializedKeyAlias","fields: SerializedFields","mapper: typeof keyToJson","mapped: SerializedFields"],"sources":["../../src/load/map_keys.ts"],"sourcesContent":["import snakeCase from \"decamelize\";\nimport camelCase from \"camelcase\";\n\nexport interface SerializedFields {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n [key: string]: any;\n}\n\nexport interface SerializedKeyAlias {\n [key: string]: string;\n}\n\nexport function keyToJson(key: string, map?: SerializedKeyAlias): string {\n return map?.[key] || snakeCase(key);\n}\n\nexport function keyFromJson(key: string, map?: SerializedKeyAlias): string {\n return map?.[key] || camelCase(key);\n}\n\nexport function mapKeys(\n fields: SerializedFields,\n mapper: typeof keyToJson,\n map?: SerializedKeyAlias\n): SerializedFields {\n const mapped: SerializedFields = {};\n\n for (const key in fields) {\n if (Object.hasOwn(fields, key)) {\n mapped[mapper(key, map)] = fields[key];\n }\n }\n\n return mapped;\n}\n"],"mappings":";;;;;AAYA,SAAgB,UAAUA,KAAaC,KAAkC;AACvE,QAAO,MAAM,gCAAkB,IAAI;AACpC;AAED,SAAgB,YAAYD,KAAaC,KAAkC;AACzE,QAAO,MAAM,+BAAkB,IAAI;AACpC;AAED,SAAgB,QACdC,QACAC,QACAF,KACkB;CAClB,MAAMG,SAA2B,CAAE;AAEnC,MAAK,MAAM,OAAO,OAChB,KAAI,OAAO,OAAO,QAAQ,IAAI,EAC5B,OAAO,OAAO,KAAK,IAAI,IAAI,OAAO;AAItC,QAAO;AACR"}