{"version":3,"file":"useSqlChange.mjs","sources":["../../../src/utils/useSqlChange.ts"],"sourcesContent":["import { useCallback } from 'react';\n\nimport { type DB, type SQLExpression, type SQLQuery } from '../types';\n\ninterface UseSqlChange {\n  db: DB;\n  query: SQLQuery;\n  onQueryChange: (query: SQLQuery) => void;\n}\n\nexport function useSqlChange({ query, onQueryChange, db }: UseSqlChange) {\n  const onSqlChange = useCallback(\n    (sql: SQLExpression) => {\n      const toRawSql = db.toRawSql;\n      const rawSql = toRawSql({ sql, dataset: query.dataset, table: query.table, refId: query.refId });\n      const newQuery: SQLQuery = { ...query, sql, rawSql };\n      onQueryChange(newQuery);\n    },\n    [db, onQueryChange, query]\n  );\n\n  return { onSqlChange };\n}\n"],"names":[],"mappings":";;;AAUO,SAAS,YAAA,CAAa,EAAE,KAAA,EAAO,aAAA,EAAe,IAAG,EAAiB;AACvE,EAAA,MAAM,WAAA,GAAc,WAAA;AAAA,IAClB,CAAC,GAAA,KAAuB;AACtB,MAAA,MAAM,WAAW,EAAA,CAAG,QAAA;AACpB,MAAA,MAAM,MAAA,GAAS,QAAA,CAAS,EAAE,GAAA,EAAK,OAAA,EAAS,KAAA,CAAM,OAAA,EAAS,KAAA,EAAO,KAAA,CAAM,KAAA,EAAO,KAAA,EAAO,KAAA,CAAM,OAAO,CAAA;AAC/F,MAAA,MAAM,QAAA,GAAqB,EAAE,GAAG,KAAA,EAAO,KAAK,MAAA,EAAO;AACnD,MAAA,aAAA,CAAc,QAAQ,CAAA;AAAA,IACxB,CAAA;AAAA,IACA,CAAC,EAAA,EAAI,aAAA,EAAe,KAAK;AAAA,GAC3B;AAEA,EAAA,OAAO,EAAE,WAAA,EAAY;AACvB;;;;"}