sameSchema

tcmts.dev.lexicons.sameSchema · #qptqngto · term · runs anywhere

Whether a published schema record (its value, $type and all) says what a lexicon document does.

import { canonicalJson } from "#codebase/tcmts/dev/lexicons";

export const sameSchema = (published: unknown, doc: Record<string, unknown>): boolean => {
  if (!published || typeof published !== "object") return false;
  const { $type: _, ...rest } = published as Record<string, unknown>;
  return canonicalJson(rest) === canonicalJson(doc);
}

uses

used by