UNPKG

@bitrix24/b24jssdk

Version:

Bitrix24 REST API JavaScript SDK

1 lines 2.62 kB
{"version":3,"file":"abstract-formatter.mjs","sources":["../../../../src/logger/formatter/abstract-formatter.ts"],"sourcesContent":["import type { Formatter, LogRecord } from '../../types/logger'\nimport { DateTime } from 'luxon'\n\n/**\n * Support date format:\n * - `YYYY` - Full year (e.g., 2024)\n * - `YY` - Two-digit year (e.g., 24)\n * - `MMMM` - Full month name (e.g., \"January\")\n * - `MMM` - Abbreviated month name (e.g., \"Jan\")\n * - `MM` - Month with leading zero (01-12)\n * - `M` - Month without leading zero (1-12)\n * - `DD` - Day of month with leading zero (01-31)\n * - `D` - Day of month without leading zero (1-31)\n * - `HH` - Hour (24-hour) with leading zero (00-23)\n * - `H` - Hour (24-hour) without leading zero (0-23)\n * - `hh` - Hour (12-hour) with leading zero (00-11)\n * - `h` - Hour (12-hour) without leading zero (0-11)\n * - `mm` - Minutes with leading zero (00-59)\n * - `m` - Minutes without leading zero (0-59)\n * - `ss` - Seconds with leading zero (00-59)\n * - `s` - Seconds without leading zero (0-59)\n * - `SSS` - Milliseconds (000-999)\n * - `a` - AM/PM lowercase (am/pm)\n * - `A` - AM/PM uppercase (AM/PM)\n * - `ZZZ` - Timezone (e.g., UTC)\n * - `ZZ` - Timezone offset (e.g., +03:00)\n */\nexport abstract class AbstractFormatter implements Formatter {\n protected dateFormat: string\n\n constructor(\n dateFormat: string = 'YYYY-MM-DD HH:mm:ss'\n ) {\n this.dateFormat = dateFormat\n }\n\n public abstract format(record: LogRecord): string\n\n protected _formatTimestamp(date: Date): string {\n const dt = DateTime.fromJSDate(date)\n return Math.floor(dt.toSeconds()).toFixed(0)\n }\n\n protected _formatDate(date: Date): string {\n const dt = DateTime.fromJSDate(date)\n return dt.toFormat(this.dateFormat\n .replace(/YYYY/g, 'yyyy')\n .replace(/YY/g, 'yy')\n .replace(/DD/g, 'dd')\n .replace(/D/g, 'd')\n )\n }\n}\n"],"names":[],"mappings":";;;;;;;;;;;;AA2BO,MAAe,iBAAA,CAAuC;AAAA,EA3B7D;AA2B6D,IAAA,MAAA,CAAA,IAAA,EAAA,mBAAA,CAAA;AAAA;AAAA,EACjD,UAAA;AAAA,EAEV,WAAA,CACE,aAAqB,qBAAA,EACrB;AACA,IAAA,IAAA,CAAK,UAAA,GAAa,UAAA;AAAA,EACpB;AAAA,EAIU,iBAAiB,IAAA,EAAoB;AAC7C,IAAA,MAAM,EAAA,GAAK,QAAA,CAAS,UAAA,CAAW,IAAI,CAAA;AACnC,IAAA,OAAO,KAAK,KAAA,CAAM,EAAA,CAAG,WAAW,CAAA,CAAE,QAAQ,CAAC,CAAA;AAAA,EAC7C;AAAA,EAEU,YAAY,IAAA,EAAoB;AACxC,IAAA,MAAM,EAAA,GAAK,QAAA,CAAS,UAAA,CAAW,IAAI,CAAA;AACnC,IAAA,OAAO,EAAA,CAAG,QAAA;AAAA,MAAS,KAAK,UAAA,CACrB,OAAA,CAAQ,OAAA,EAAS,MAAM,EACvB,OAAA,CAAQ,KAAA,EAAO,IAAI,CAAA,CACnB,QAAQ,KAAA,EAAO,IAAI,CAAA,CACnB,OAAA,CAAQ,MAAM,GAAG;AAAA,KACpB;AAAA,EACF;AACF;;;;"}