{"version":3,"file":"block_id.cjs","names":["z","SemVer"],"sources":["../../src/block_meta/block_id.ts"],"sourcesContent":["import { z } from \"zod\";\nimport { SemVer } from \"./semver\";\n\n/** Global identifier of the block */\nexport const BlockPackId = z\n  .object({\n    organization: z.string(),\n    name: z.string(),\n    version: SemVer,\n  })\n  .strict();\nexport type BlockPackId = z.infer<typeof BlockPackId>;\n\nexport const BlockPackIdNoVersion = BlockPackId.omit({ version: true });\nexport type BlockPackIdNoVersion = z.infer<typeof BlockPackIdNoVersion>;\n\nexport function blockPackIdToString(bp: BlockPackId): string;\nexport function blockPackIdToString(bp: BlockPackId | undefined): string | undefined;\nexport function blockPackIdToString(bp: BlockPackId | undefined): string | undefined {\n  if (bp === undefined) return undefined;\n  return `${bp.organization}:${bp.name}:${bp.version}`;\n}\n\nexport function blockPackIdNoVersionToString(bp: BlockPackIdNoVersion): string;\nexport function blockPackIdNoVersionToString(\n  bp: BlockPackIdNoVersion | undefined,\n): string | undefined;\nexport function blockPackIdNoVersionToString(\n  bp: BlockPackIdNoVersion | undefined,\n): string | undefined {\n  if (bp === undefined) return undefined;\n  return `${bp.organization}:${bp.name}`;\n}\n\nexport function blockPackIdEquals(\n  bp1: BlockPackId | undefined,\n  bp2: BlockPackId | undefined,\n): boolean {\n  if (bp1 === undefined && bp2 === undefined) return true;\n  if (bp1 === undefined || bp2 === undefined) return false;\n  return (\n    bp1.name === bp2.name && bp1.organization === bp2.organization && bp1.version === bp2.version\n  );\n}\n\nexport function blockPackIdNoVersionEquals(\n  bp1: BlockPackIdNoVersion | undefined,\n  bp2: BlockPackIdNoVersion | undefined,\n): boolean {\n  if (bp1 === undefined && bp2 === undefined) return true;\n  if (bp1 === undefined || bp2 === undefined) return false;\n  return bp1.name === bp2.name && bp1.organization === bp2.organization;\n}\n"],"mappings":";;;;AAIA,MAAa,cAAcA,IAAAA,EACxB,OAAO;CACN,cAAcA,IAAAA,EAAE,OAAO;CACvB,MAAMA,IAAAA,EAAE,OAAO;CACf,SAASC,eAAAA;AACX,CAAC,CAAC,CACD,OAAO;AAGV,MAAa,uBAAuB,YAAY,KAAK,EAAE,SAAS,KAAK,CAAC;AAKtE,SAAgB,oBAAoB,IAAiD;CACnF,IAAI,OAAO,KAAA,GAAW,OAAO,KAAA;CAC7B,OAAO,GAAG,GAAG,aAAa,GAAG,GAAG,KAAK,GAAG,GAAG;AAC7C;AAMA,SAAgB,6BACd,IACoB;CACpB,IAAI,OAAO,KAAA,GAAW,OAAO,KAAA;CAC7B,OAAO,GAAG,GAAG,aAAa,GAAG,GAAG;AAClC;AAEA,SAAgB,kBACd,KACA,KACS;CACT,IAAI,QAAQ,KAAA,KAAa,QAAQ,KAAA,GAAW,OAAO;CACnD,IAAI,QAAQ,KAAA,KAAa,QAAQ,KAAA,GAAW,OAAO;CACnD,OACE,IAAI,SAAS,IAAI,QAAQ,IAAI,iBAAiB,IAAI,gBAAgB,IAAI,YAAY,IAAI;AAE1F;AAEA,SAAgB,2BACd,KACA,KACS;CACT,IAAI,QAAQ,KAAA,KAAa,QAAQ,KAAA,GAAW,OAAO;CACnD,IAAI,QAAQ,KAAA,KAAa,QAAQ,KAAA,GAAW,OAAO;CACnD,OAAO,IAAI,SAAS,IAAI,QAAQ,IAAI,iBAAiB,IAAI;AAC3D"}