{"version":3,"file":"count.cjs","names":["MySqlCountBuilder","entityKind","QueryPromise"],"sources":["../../../src/mysql-core/async/count.ts"],"sourcesContent":["import { entityKind } from '~/entity.ts';\nimport { QueryPromise } from '~/query-promise.ts';\nimport type { SQL, SQLWrapper } from '~/sql/sql.ts';\nimport { applyMixins } from '~/utils.ts';\nimport type { MySqlDialect } from '../dialect.ts';\nimport { MySqlCountBuilder } from '../query-builders/count.ts';\nimport type { MySqlTable } from '../table.ts';\nimport type { MySqlViewBase } from '../view-base.ts';\nimport type { MySqlAsyncSession } from './session.ts';\n\nexport interface MySqlAsyncCountBuilder extends MySqlCountBuilder, QueryPromise<number> {}\n\nexport class MySqlAsyncCountBuilder extends MySqlCountBuilder {\n\tstatic override readonly [entityKind]: string = 'MySqlAsyncCountBuilder';\n\n\tprotected session: MySqlAsyncSession;\n\n\tconstructor(\n\t\t{ source, dialect, filters, session }: {\n\t\t\tsource: MySqlTable | MySqlViewBase | SQL | SQLWrapper;\n\t\t\tfilters?: SQL<unknown>;\n\t\t\tdialect: MySqlDialect;\n\t\t\tsession: MySqlAsyncSession;\n\t\t},\n\t) {\n\t\tsuper({ source, dialect, filters });\n\t\tthis.session = session;\n\t}\n\n\texecute(placeholderValues?: Record<string, unknown>): Promise<number> {\n\t\treturn this.session.prepareQuery<{\n\t\t\texecute: number;\n\t\t\titerator: never;\n\t\t}>(\n\t\t\tthis.build(),\n\t\t\t'arrays',\n\t\t\t(rows) => {\n\t\t\t\tconst v = rows[0]?.[0];\n\t\t\t\tif (typeof v === 'number') return v;\n\t\t\t\treturn v ? Number(v) : 0;\n\t\t\t},\n\t\t).execute(placeholderValues);\n\t}\n}\n\napplyMixins(MySqlAsyncCountBuilder, [QueryPromise]);\n"],"mappings":";;;;;;;;AAYA,IAAa,yBAAb,cAA4CA,0DAAkB;CAC7D,QAA0BC,0BAAsB;CAEhD,AAAU;CAEV,YACC,EAAE,QAAQ,SAAS,SAAS,WAM3B;AACD,QAAM;GAAE;GAAQ;GAAS;GAAS,CAAC;AACnC,OAAK,UAAU;;CAGhB,QAAQ,mBAA8D;AACrE,SAAO,KAAK,QAAQ,aAInB,KAAK,OAAO,EACZ,WACC,SAAS;GACT,MAAM,IAAI,KAAK,KAAK;AACpB,OAAI,OAAO,MAAM,SAAU,QAAO;AAClC,UAAO,IAAI,OAAO,EAAE,GAAG;IAExB,CAAC,QAAQ,kBAAkB;;;4BAIlB,wBAAwB,CAACC,gCAAa,CAAC"}