{"version":3,"file":"entityUtilities.mjs","names":["toTitleCase","BUSINESS_OBJECT_KEY_PROPERTIES","SYSTEM_ENTITY_PROPERTIES","getCommonEntityName","entityName","getSanitizedName","entityNameParts","split","length","getFullyQualifiedName","udpObjectInfo","modelNameSpace","namespaceStructure","model","sanitizedName"],"sources":["../../../src/utilities/entities/entityUtilities.js"],"sourcesContent":["import { toTitleCase } from '../input/StringUtilities';\n\n// Properties serialized on every generated model that describe the record's\n// identity rather than its data. UIs that build columns, form fields, diffs,\n// or property pickers from entity metadata should skip these.\nexport const BUSINESS_OBJECT_KEY_PROPERTIES = [\n  'businessObjectKey',\n  'businessObjectKeyFields'\n];\n\nexport const SYSTEM_ENTITY_PROPERTIES = [\n  ...BUSINESS_OBJECT_KEY_PROPERTIES,\n  'ignoreLoggingTransactions'\n];\n\nexport const getCommonEntityName = (entityName) => {\n  if (!entityName) return entityName;\n  return toTitleCase(getSanitizedName(entityName));\n};\n\nexport const getSanitizedName = (entityName) => {\n  if (!entityName) return '';\n  const entityNameParts = entityName.split('.');\n  return entityNameParts[entityNameParts.length - 1];\n};\n\nexport const getFullyQualifiedName = (udpObjectInfo) => {\n  if (!udpObjectInfo) return '';\n  const modelNameSpace = udpObjectInfo.namespaceStructure?.model;\n  if (modelNameSpace) {\n    return `${modelNameSpace}.Models.${udpObjectInfo.sanitizedName}`;\n  } else {\n    return '';\n  }\n};\n"],"mappings":";;AAKA,MAAaC,iCAAiC,CAC5C,qBACA,0BACD;AAED,MAAaC,2BAA2B,CACtC,GAAGD,gCACH,4BACD;AAED,MAAaE,uBAAuBC,eAAe;AACjD,KAAI,CAACA,WAAY,QAAOA;AACxB,QAAOJ,YAAYK,iBAAiBD,WAAW,CAAC;;AAGlD,MAAaC,oBAAoBD,eAAe;AAC9C,KAAI,CAACA,WAAY,QAAO;CACxB,MAAME,kBAAkBF,WAAWG,MAAM,IAAI;AAC7C,QAAOD,gBAAgBA,gBAAgBE,SAAS;;AAGlD,MAAaC,yBAAyBC,kBAAkB;AACtD,KAAI,CAACA,cAAe,QAAO;CAC3B,MAAMC,iBAAiBD,cAAcE,oBAAoBC;AACzD,KAAIF,eACF,QAAO,GAAGA,eAAc,UAAWD,cAAcI;KAEjD,QAAO"}