{"version":3,"sources":["../../src/utilities/formatName.spec.ts"],"sourcesContent":["import { describe, it, expect } from 'vitest'\nimport { formatName } from './formatName'\n\ndescribe('formatName', () => {\n it.each`\n char | expected\n ${'á'} | ${'a'}\n ${'è'} | ${'e'}\n ${'í'} | ${'i'}\n ${'ó'} | ${'o'}\n ${'ú'} | ${'u'}\n ${'ñ'} | ${'n'}\n ${'ü'} | ${'u'}\n `('should convert accented character: $char', ({ char, expected }) => {\n expect(formatName(char)).toEqual(expected)\n })\n\n describe('UTC offset handling', () => {\n it.each`\n offset | expected\n ${'+00:00'} | ${'_TZOFFSET_PLUS_00_00'}\n ${'+05:30'} | ${'_TZOFFSET_PLUS_05_30'}\n ${'+05:45'} | ${'_TZOFFSET_PLUS_05_45'}\n ${'+08:00'} | ${'_TZOFFSET_PLUS_08_00'}\n ${'+12:00'} | ${'_TZOFFSET_PLUS_12_00'}\n ${'+14:00'} | ${'_TZOFFSET_PLUS_14_00'}\n ${'-00:00'} | ${'_TZOFFSET_MINUS_00_00'}\n ${'-03:30'} | ${'_TZOFFSET_MINUS_03_30'}\n ${'-05:00'} | ${'_TZOFFSET_MINUS_05_00'}\n ${'-08:00'} | ${'_TZOFFSET_MINUS_08_00'}\n ${'-12:00'} | ${'_TZOFFSET_MINUS_12_00'}\n `('should convert UTC offset $offset to $expected', ({ offset, expected }) => {\n expect(formatName(offset)).toEqual(expected)\n })\n\n it('should not collide between positive and negative offsets', () => {\n const plusFive = formatName('+05:00')\n const minusFive = formatName('-05:00')\n expect(plusFive).not.toEqual(minusFive)\n expect(plusFive).toEqual('_TZOFFSET_PLUS_05_00')\n expect(minusFive).toEqual('_TZOFFSET_MINUS_05_00')\n })\n\n it('should not treat IANA timezone names as offsets', () => {\n // These should use standard formatting, not UTC offset formatting\n expect(formatName('America/New_York')).toEqual('America_New_York')\n expect(formatName('Europe/London')).toEqual('Europe_London')\n expect(formatName('Asia/Tokyo')).toEqual('Asia_Tokyo')\n })\n\n it('should not treat partial offset patterns as offsets', () => {\n // These don't match the strict ±HH:mm pattern, so they use standard formatting\n expect(formatName('+5')).toEqual('_5')\n expect(formatName('+05')).toEqual('_05')\n expect(formatName('+0530')).toEqual('_0530')\n // 05:30 without sign is not a UTC offset, starts with number so gets _ prefix\n expect(formatName('05:30')).toEqual('_05:30')\n })\n })\n})\n"],"names":["describe","it","expect","formatName","each","char","expected","toEqual","offset","plusFive","minusFive","not"],"mappings":"AAAA,SAASA,QAAQ,EAAEC,EAAE,EAAEC,MAAM,QAAQ,SAAQ;AAC7C,SAASC,UAAU,QAAQ,eAAc;AAEzCH,SAAS,cAAc;IACrBC,GAAGG,IAAI,CAAC;;IAEN,EAAE,IAAI,GAAG,EAAE,IAAI;IACf,EAAE,IAAI,GAAG,EAAE,IAAI;IACf,EAAE,IAAI,GAAG,EAAE,IAAI;IACf,EAAE,IAAI,GAAG,EAAE,IAAI;IACf,EAAE,IAAI,GAAG,EAAE,IAAI;IACf,EAAE,IAAI,GAAG,EAAE,IAAI;IACf,EAAE,IAAI,GAAG,EAAE,IAAI;EACjB,CAAC,CAAC,4CAA4C,CAAC,EAAEC,IAAI,EAAEC,QAAQ,EAAE;QAC/DJ,OAAOC,WAAWE,OAAOE,OAAO,CAACD;IACnC;IAEAN,SAAS,uBAAuB;QAC9BC,GAAGG,IAAI,CAAC;;MAEN,EAAE,SAAS,GAAG,EAAE,uBAAuB;MACvC,EAAE,SAAS,GAAG,EAAE,uBAAuB;MACvC,EAAE,SAAS,GAAG,EAAE,uBAAuB;MACvC,EAAE,SAAS,GAAG,EAAE,uBAAuB;MACvC,EAAE,SAAS,GAAG,EAAE,uBAAuB;MACvC,EAAE,SAAS,GAAG,EAAE,uBAAuB;MACvC,EAAE,SAAS,GAAG,EAAE,wBAAwB;MACxC,EAAE,SAAS,GAAG,EAAE,wBAAwB;MACxC,EAAE,SAAS,GAAG,EAAE,wBAAwB;MACxC,EAAE,SAAS,GAAG,EAAE,wBAAwB;MACxC,EAAE,SAAS,GAAG,EAAE,wBAAwB;IAC1C,CAAC,CAAC,kDAAkD,CAAC,EAAEI,MAAM,EAAEF,QAAQ,EAAE;YACvEJ,OAAOC,WAAWK,SAASD,OAAO,CAACD;QACrC;QAEAL,GAAG,4DAA4D;YAC7D,MAAMQ,WAAWN,WAAW;YAC5B,MAAMO,YAAYP,WAAW;YAC7BD,OAAOO,UAAUE,GAAG,CAACJ,OAAO,CAACG;YAC7BR,OAAOO,UAAUF,OAAO,CAAC;YACzBL,OAAOQ,WAAWH,OAAO,CAAC;QAC5B;QAEAN,GAAG,mDAAmD;YACpD,kEAAkE;YAClEC,OAAOC,WAAW,qBAAqBI,OAAO,CAAC;YAC/CL,OAAOC,WAAW,kBAAkBI,OAAO,CAAC;YAC5CL,OAAOC,WAAW,eAAeI,OAAO,CAAC;QAC3C;QAEAN,GAAG,uDAAuD;YACxD,+EAA+E;YAC/EC,OAAOC,WAAW,OAAOI,OAAO,CAAC;YACjCL,OAAOC,WAAW,QAAQI,OAAO,CAAC;YAClCL,OAAOC,WAAW,UAAUI,OAAO,CAAC;YACpC,8EAA8E;YAC9EL,OAAOC,WAAW,UAAUI,OAAO,CAAC;QACtC;IACF;AACF"}