{"version":3,"sources":["../../src/facade/serialization-constants.ts"],"sourcesContent":["/**\r\n * Constants and configurations for Internet Object serialization.\r\n * Centralizes magic strings, standard properties, and format markers\r\n * to ensure consistency across serialization modules.\r\n */\r\n\r\n/**\r\n * Standard MemberDef properties that should NOT be treated as constraints.\r\n * These are structural/metadata properties inherent to the MemberDef type.\r\n */\r\nexport const STANDARD_MEMBERDEF_PROPS = new Set([\r\n  'type',\r\n  'optional',\r\n  'null',\r\n  'path',\r\n  'name',\r\n  'schema',\r\n  'schemaRef',    // Schema reference for nested types\r\n  // Type-specific internal properties\r\n  're',          // Compiled regex for pattern validation\r\n  '__memberdef', // Internal marker\r\n  'of'           // Array element type (handled specially)\r\n]);\r\n\r\n/**\r\n * Wildcard key for open schema additional properties\r\n */\r\nexport const WILDCARD_KEY = '*';\r\n\r\n/**\r\n * IO format markers and delimiters\r\n */\r\nexport const IO_MARKERS = {\r\n  /** Collection item prefix */\r\n  COLLECTION_ITEM: '~',\r\n\r\n  /** Section separator */\r\n  SECTION_SEPARATOR: '---',\r\n\r\n  /** Optional field marker (suffix) */\r\n  OPTIONAL: '?',\r\n\r\n  /** Nullable field marker (suffix) */\r\n  NULLABLE: '*',\r\n\r\n  /** Date marker prefix */\r\n  DATE: 'd',\r\n\r\n  /** Time marker prefix */\r\n  TIME: 't',\r\n\r\n  /** DateTime marker prefix */\r\n  DATETIME: 'dt',\r\n\r\n  /** True boolean */\r\n  TRUE: 'T',\r\n\r\n  /** False boolean */\r\n  FALSE: 'F',\r\n\r\n  /** Null value */\r\n  NULL: 'N'\r\n} as const;\r\n\r\n/**\r\n * Default string enclosers for different formats\r\n */\r\nexport const STRING_ENCLOSERS = {\r\n  REGULAR: '\"',\r\n  RAW: '\\'',\r\n  MULTILINE: '`'\r\n} as const;\r\n\r\n/**\r\n * Schema reference prefix for named schemas\r\n */\r\nexport const SCHEMA_PREFIX = '$';\r\n\r\n/**\r\n * Definition prefix for variables\r\n */\r\nexport const DEFINITION_PREFIX = '~';\r\n\r\n/**\r\n * Reserved section names that should not appear in output\r\n */\r\nexport const RESERVED_SECTION_NAMES = new Set([\r\n  'unnamed',\r\n  '$schema',\r\n  'schema'\r\n]);\r\n\r\n/**\r\n * Union type operator for anyOf formatting\r\n */\r\nexport const UNION_OPERATOR = '|';\r\n\r\n/**\r\n * Maximum nesting depth for recursive schema serialization\r\n * to prevent stack overflow\r\n */\r\nexport const MAX_NESTING_DEPTH = 100;\r\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAUO,MAAM,2BAA2B,oBAAI,IAAI;AAAA,EAC9C;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA;AAAA,EAEA;AAAA;AAAA,EACA;AAAA;AAAA,EACA;AAAA;AACF,CAAC;AAKM,MAAM,eAAe;AAKrB,MAAM,aAAa;AAAA;AAAA,EAExB,iBAAiB;AAAA;AAAA,EAGjB,mBAAmB;AAAA;AAAA,EAGnB,UAAU;AAAA;AAAA,EAGV,UAAU;AAAA;AAAA,EAGV,MAAM;AAAA;AAAA,EAGN,MAAM;AAAA;AAAA,EAGN,UAAU;AAAA;AAAA,EAGV,MAAM;AAAA;AAAA,EAGN,OAAO;AAAA;AAAA,EAGP,MAAM;AACR;AAKO,MAAM,mBAAmB;AAAA,EAC9B,SAAS;AAAA,EACT,KAAK;AAAA,EACL,WAAW;AACb;AAKO,MAAM,gBAAgB;AAKtB,MAAM,oBAAoB;AAK1B,MAAM,yBAAyB,oBAAI,IAAI;AAAA,EAC5C;AAAA,EACA;AAAA,EACA;AACF,CAAC;AAKM,MAAM,iBAAiB;AAMvB,MAAM,oBAAoB;","names":[]}